Allowed Context
An app must declare the context (assets, location items, custom types) it can open.
Use config
> allowedContext
to describe the allowed context.
It must be specified both in the package.json
app config and application config
.
package.json
:
"features": {
"provides": {
"apps": [
{
"name": "search",
"config": {
...,
"allowedContext": "none",
application config
:
factory: config => new SearchApp(config),
config: {
isMultiInstance: true,
allowedContext: 'none',
...
The property is used to define the list of apps in the Open in context menu.
Also, double-clicking an asset in the Search or Browse App opens the asset in the most specific app (the specificity is defined by the allowedContext
).
allowedContext property description
Possible values: 'none'
| 'all'
| Context | Array<Context>
Default: Before MediaCentral Cloud UX 2022 'all'
, starting with the first release of MediaCentral Cloud UX in 2022 'none'
.
Value | Description |
---|---|
all |
An application with this allowedContext can work with any mime-type. It is always shown in the Open in context menu. |
none |
An application does not support any mime-type for opening. It is excluded from the Open in context menu. |
Context | An application is opened by the described Context. |
Context
The allowed context is described by the allowed mime-type.
Example:
{ mimeType: "text/x.avid.asset-list" }
Some mime-types may have additional properties.
See Asset and location item mime-types for details.
Array<Context>
The allowed context can be described as array of allowed contexts.
Example:
[{ mimeType: "text/x.avid.asset-list" }, { mimeType: "text/x.avid.location-item-list" }]
Asset and location item mime-types
The following mime-types
text/x.avid.asset-list
text/x.avid.asset-list+json
text/x.avid.location-item-list
have additional properties to narrow down the allowed context.
Additional properties: systemType
, types
, excludeTypes
systemType (optional)
Type: {String|Array<String>}
If not specified, the app can open assets from all systems.
Examples:
systemType: ['interplay-pam', 'interplay-mam']
systemType: 'queue'
types (optional)
Type: {String|Array<String>}
Examples:
types: ['masterclip', 'sequence']
types: 'inews'
excludeTypes (optional)
Type: {String|Array<String>}
If not specified, the app can open all type of assets.
Examples:
excludeTypes: ['masterclip', 'sequence']
excludeTypes: 'queue'
Specificity rules
If an asset is double-clicked and there are several applications that can open it,
MediaCentral Cloud UX chooses the most specific app to open the asset.
The specificity is defined by the allowedContext
.
If the context mimeType matches the allowedContext mimeType
, the app is added to the specific apps for the current context.
If the allowed context has additional properties like systemType
or type
, it is more specific than an allowed context with mimeType
only.
If the context is acceptable by the Asset Editor, Asset Editor has the highest priority.
Examples of allowedContext in ascending order:
allowedContext: { mimeType: "text/x.avid.asset-list" }
allowedContext: { mimeType: "text/x.avid.asset-list", systemType: "inews" }
allowedContext: { mimeType: "text/x.avid.asset-list", types: "queue" }
allowedContext: { mimeType: "text/x.avid.asset-list", systemType: "inews", types: "queue" }
Asset Editor (if context is acceptable by this app)
Examples
Example of an allowedContext
for the Rundown App (opens iNEWS assets with type queue and story):
config: {
allowedContext: {
mimeType: "text/x.avid.asset-list",
systemType: "inews",
types: ['queue', 'story']
}
}