// Copyright 2022 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{
    include: [ "syslog/client.shard.cml" ],
    program: {
        runner: "elf",
        binary: "bin/element_manager",
    },
    capabilities: [
        {
            protocol: [ "fuchsia.element.Manager" ],
        },
    ],
    use: [
        {
            protocol: [ "fuchsia.element.GraphicalPresenter" ],
        },
        {
            protocol: "fuchsia.component.Realm",
            from: "parent",
        },
        {
            storage: "data",
            path: "/data",
            availability: "optional",
        },
    ],
    expose: [
        {
            protocol: [ "fuchsia.element.Manager" ],
            from: "self",
        },
    ],
    config: {
        // A list of mappings from component URL to collection in which components with that URL
        // should run. The URL and capability are separated by a | character.
        //
        // For instance, one entry might be:
        //     "fuchsia-pkg://chromium.org/chrome#meta/chrome.cm|chrome_collection"
        url_to_collection: {
            type: "vector",
            max_count: 100,
            element: {
                type: "string",
                max_size: 512,
            },
        },

        // The collection in which any components not listed in `url_to_collection` should be run.
        default_collection: {
            type: "string",
            max_size: 512,
        },
    },
}
