Represents a microfrontend that can be loaded into a using the OutletRouter.

Hierarchy

Properties

description?: string

A short description to explain the capability.

params?: ParamDefinition[]

Specifies parameters which the intent issuer can/must pass along with the intent.

Parameters are part of the contract between the intent publisher and the capability provider. They do not affect the intent routing, unlike the qualifier.

private?: boolean

Controls if this capability is visible to other micro applications. If private, which is by default, the capability is not visible to other micro applications; thus, it can only be invoked or looked up by the providing micro application.

properties: {
    outlet?: string;
    path: string;
    showSplash?: boolean;
    [key: string]: any;
}

Arbitrary metadata to be associated with the capability.

Type declaration

  • [key: string]: any

    Arbitrary metadata to be associated with the capability.

  • Optional outlet?: string

    Specifies the preferred outlet to load this microfrontend into. Note that this preference is only a hint that will be ignored if the navigator specifies an outlet for navigation.

    The precedence is as follows:

    • Outlet as specified by navigator via NavigationOptions#outlet.
    • Preferred outlet as specified in the microfrontend capability.
    • Current outlet if navigating in the context of an outlet.
    • primary outlet.
  • path: string

    Specifies the path of the microfrontend.

    The path is relative to the base URL, as specified in the application manifest. If the application does not declare a base URL, it is relative to the origin of the manifest file.

    The path allows the use of navigational symbols and named parameters to reference qualifier and parameter values. A named parameter begins with a colon (:) followed by the qualifier or parameter name, and is allowed in path segments, query parameters, matrix parameters and the fragment part. Named query and matrix parameters without a replacement are removed, e.g., if referencing an optional parameter.

    Usage of named parameters in the path:

    {
    "type": "microfrontend",
    "qualifier": {
    "entity": "product"
    },
    "params": [
    {"name": "id", "required": true}
    ]
    "properties": {
    "path": "product/:id",
    }
    }

    Path parameter example:

    segment/:param1/segment/:param2

    Matrix parameter example:

    segment/segment;matrixParam1=:param1;matrixParam2=:param2

    Query parameter example:

    segment/segment?queryParam1=:param1&queryParam2=:param2

  • Optional showSplash?: boolean

    Instructs the router outlet to show a splash, such as a skeleton or loading indicator, until the microfrontend signals readiness. The splash is the markup between the opening and closing tags of the router outlet element.

    See

    • SciRouterOutletElement
    • MicrofrontendPlatformClient.signalReady
qualifier?: Qualifier

The qualifier is a dictionary of arbitrary key-value pairs to differentiate capabilities of the same type and is like an abstract description of the capability. It should include enough information to uniquely identify the capability.

Intents must exactly match the qualifier of the capability, if any.

Categorizes the capability in terms of its functional semantics (e.g., microfrontend if providing a microfrontend). It can be an arbitrary string literal and has no meaning to the platform.

Generated using TypeDoc