mirror of
https://github.com/nasa/openmct.git
synced 2024-12-22 22:42:24 +00:00
f5a4a370f9
...to any domain object models loaded from persistence which do not have one. The presence of this timestamp is necessary for the persistence capability to determine whether an object should be created or updated when a request to persist is made. nasa/openmctweb#139.
241 lines
7.8 KiB
JSON
241 lines
7.8 KiB
JSON
{
|
|
"name": "Open MCT Web Core",
|
|
"description": "Defines core concepts of Open MCT Web.",
|
|
"sources": "src",
|
|
"extensions": {
|
|
"versions": [
|
|
{
|
|
"name": "Version",
|
|
"value": "${project.version}",
|
|
"priority": 999
|
|
},
|
|
{
|
|
"name": "Built",
|
|
"value": "${timestamp}",
|
|
"description": "The date on which this version of the client was built.",
|
|
"priority": 990
|
|
},
|
|
{
|
|
"name": "Revision",
|
|
"value": "${buildNumber}",
|
|
"description": "A unique revision identifier for the client sources.",
|
|
"priority": 995
|
|
},
|
|
{
|
|
"name": "Branch",
|
|
"value": "${scmBranch}",
|
|
"description": "The date on which this version of the client was built.",
|
|
"priority": 994
|
|
}
|
|
],
|
|
"components": [
|
|
{
|
|
"provides": "objectService",
|
|
"type": "provider",
|
|
"implementation": "objects/DomainObjectProvider.js",
|
|
"depends": [ "modelService", "capabilityService", "$q" ]
|
|
},
|
|
{
|
|
"provides": "capabilityService",
|
|
"type": "provider",
|
|
"implementation": "capabilities/CoreCapabilityProvider.js",
|
|
"depends": [ "capabilities[]", "$log" ]
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "provider",
|
|
"implementation": "models/StaticModelProvider",
|
|
"depends": [ "models[]", "$q", "$log" ]
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "provider",
|
|
"implementation": "models/RootModelProvider.js",
|
|
"depends": [ "roots[]", "$q", "$log" ]
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "aggregator",
|
|
"implementation": "models/ModelAggregator.js",
|
|
"depends": [ "$q" ]
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "provider",
|
|
"implementation": "models/PersistedModelProvider.js",
|
|
"depends": [
|
|
"persistenceService",
|
|
"$q",
|
|
"now",
|
|
"PERSISTENCE_SPACE",
|
|
"ADDITIONAL_PERSISTENCE_SPACES"
|
|
]
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "decorator",
|
|
"implementation": "models/CachingModelDecorator.js"
|
|
},
|
|
{
|
|
"provides": "modelService",
|
|
"type": "decorator",
|
|
"priority": "fallback",
|
|
"implementation": "models/MissingModelDecorator.js"
|
|
},
|
|
{
|
|
"provides": "typeService",
|
|
"type": "provider",
|
|
"implementation": "types/TypeProvider.js",
|
|
"depends": [ "types[]" ]
|
|
},
|
|
{
|
|
"provides": "actionService",
|
|
"type": "provider",
|
|
"implementation": "actions/ActionProvider.js",
|
|
"depends": [ "actions[]" ]
|
|
},
|
|
{
|
|
"provides": "actionService",
|
|
"type": "aggregator",
|
|
"implementation": "actions/ActionAggregator.js"
|
|
},
|
|
{
|
|
"provides": "actionService",
|
|
"type": "decorator",
|
|
"implementation": "actions/LoggingActionDecorator.js",
|
|
"depends": [ "$log" ]
|
|
},
|
|
{
|
|
"provides": "viewService",
|
|
"type": "provider",
|
|
"implementation": "views/ViewProvider.js",
|
|
"depends": [ "views[]", "$log" ]
|
|
}
|
|
],
|
|
"types": [
|
|
{
|
|
"properties": [
|
|
{
|
|
"control": "textfield",
|
|
"name": "Title",
|
|
"key": "name",
|
|
"property": "name",
|
|
"pattern": "\\S+",
|
|
"required": true,
|
|
"cssclass": "l-med"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "root",
|
|
"name": "Root",
|
|
"glyph": "F"
|
|
},
|
|
{
|
|
"key": "folder",
|
|
"name": "Folder",
|
|
"glyph": "F",
|
|
"features": "creation",
|
|
"description": "Useful for storing and organizing domain objects.",
|
|
"model": { "composition": [] }
|
|
},
|
|
{
|
|
"key": "unknown",
|
|
"name": "Unknown Type",
|
|
"glyph": "\u003f"
|
|
},
|
|
{
|
|
"name": "Unknown Type",
|
|
"glyph": "\u003f"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"key": "composition",
|
|
"implementation": "capabilities/CompositionCapability.js",
|
|
"depends": [ "$injector", "contextualize" ]
|
|
},
|
|
{
|
|
"key": "relationship",
|
|
"implementation": "capabilities/RelationshipCapability.js",
|
|
"depends": [ "$injector" ]
|
|
},
|
|
{
|
|
"key": "type",
|
|
"implementation": "types/TypeCapability.js",
|
|
"depends": [ "typeService" ]
|
|
},
|
|
{
|
|
"key": "action",
|
|
"implementation": "actions/ActionCapability.js",
|
|
"depends": [ "$q", "actionService" ]
|
|
},
|
|
{
|
|
"key": "view",
|
|
"implementation": "views/ViewCapability.js",
|
|
"depends": [ "viewService" ]
|
|
},
|
|
{
|
|
"key": "persistence",
|
|
"implementation": "capabilities/PersistenceCapability.js",
|
|
"depends": [ "persistenceService", "PERSISTENCE_SPACE" ]
|
|
},
|
|
{
|
|
"key": "metadata",
|
|
"implementation": "capabilities/MetadataCapability.js"
|
|
},
|
|
{
|
|
"key": "mutation",
|
|
"implementation": "capabilities/MutationCapability.js",
|
|
"depends": [ "topic", "now" ]
|
|
},
|
|
{
|
|
"key": "delegation",
|
|
"implementation": "capabilities/DelegationCapability.js",
|
|
"depends": [ "$q" ]
|
|
}
|
|
],
|
|
"services": [
|
|
{
|
|
"key": "now",
|
|
"implementation": "services/Now.js"
|
|
},
|
|
{
|
|
"key": "throttle",
|
|
"implementation": "services/Throttle.js",
|
|
"depends": [ "$timeout" ]
|
|
},
|
|
{
|
|
"key": "topic",
|
|
"implementation": "services/Topic.js"
|
|
},
|
|
{
|
|
"key": "contextualize",
|
|
"implementation": "services/Contextualize.js",
|
|
"depends": [ "$log" ]
|
|
}
|
|
],
|
|
"roots": [
|
|
{
|
|
"id": "mine",
|
|
"model": {
|
|
"name": "My Items",
|
|
"type": "folder",
|
|
"composition": []
|
|
}
|
|
}
|
|
],
|
|
"constants": [
|
|
{
|
|
"key": "PERSISTENCE_SPACE",
|
|
"value": "mct"
|
|
},
|
|
{
|
|
"key": "ADDITIONAL_PERSISTENCE_SPACES",
|
|
"value": [],
|
|
"description": "An array of additional persistence spaces to load models from."
|
|
}
|
|
]
|
|
}
|
|
}
|