@xompass/sdk-cloud-api
Version:
Xompass Client for cloud-api
463 lines • 15.8 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Asset = void 0;
var Asset = /** @class */ (function () {
function Asset(data) {
this.path = [];
this.tags = [];
Object.assign(this, data);
}
/**
* The name of the model represented by this $resource,
* i.e. `Asset`.
*/
Asset.getModelName = function () {
return 'Asset';
};
/**
* @method factory
* @author Jonathan Casarrubias
* @license MIT
* This method creates an instance of Asset for dynamic purposes.
*/
Asset.factory = function (data) {
return new Asset(data);
};
/**
* @method getModelDefinition
* @author Julien Ledun
* @license MIT
* This method returns an object that represents some of the model
* definitions.
*/
Asset.getModelDefinition = function () {
return {
name: 'Asset',
plural: 'Assets',
path: 'Assets',
idName: 'id',
properties: {
type: {
name: 'type',
type: 'string'
},
name: {
name: 'name',
type: 'string'
},
icon: {
name: 'icon',
type: 'string'
},
description: {
name: 'description',
type: 'string'
},
referenceId: {
name: 'referenceId',
type: 'string'
},
uri: {
name: 'uri',
type: 'string'
},
path: {
name: 'path',
type: 'Array<any>',
default: []
},
requested: {
name: 'requested',
type: 'Date'
},
settingsType: {
name: 'settingsType',
type: 'string'
},
healthcheckEventsEnabled: {
name: 'healthcheckEventsEnabled',
type: 'boolean'
},
currentHealthStatus: {
name: 'currentHealthStatus',
type: 'string'
},
currentHealthStatusDetails: {
name: 'currentHealthStatusDetails',
type: 'any'
},
tags: {
name: 'tags',
type: 'Array<any>',
default: []
},
created: {
name: 'created',
type: 'Date'
},
modified: {
name: 'modified',
type: 'Date'
},
deleted: {
name: 'deleted',
type: 'Date',
default: undefined
},
id: {
name: 'id',
type: 'any'
},
assetId: {
name: 'assetId',
type: 'any'
},
_config: {
name: '_config',
type: 'any'
},
currentStateId: {
name: 'currentStateId',
type: 'any'
},
templateId: {
name: 'templateId',
type: 'any'
},
assetWizardTypeId: {
name: 'assetWizardTypeId',
type: 'any'
},
customerId: {
name: 'customerId',
type: 'any'
},
projectId: {
name: 'projectId',
type: 'any'
},
_rateLimit: {
name: '_rateLimit',
type: 'any'
},
responseProtocolId: {
name: 'responseProtocolId',
type: 'any'
},
_token: {
name: '_token',
type: 'any'
},
},
relations: {
assets: {
name: 'assets',
type: 'Asset[]',
model: 'Asset',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
asset: {
name: 'asset',
type: 'Asset',
model: 'Asset',
relationType: 'belongsTo',
keyFrom: 'assetId',
keyTo: 'id'
},
alerts: {
name: 'alerts',
type: 'Alert[]',
model: 'Alert',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
alertHistory: {
name: 'alertHistory',
type: 'AlertHistory[]',
model: 'AlertHistory',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
config: {
name: 'config',
type: 'any[]',
model: '',
relationType: 'embedsOne',
keyFrom: '_config',
keyTo: 'id'
},
milestone: {
name: 'milestone',
type: 'AssetMilestone',
model: 'AssetMilestone',
relationType: 'hasOne',
keyFrom: 'id',
keyTo: 'assetId'
},
operabilitySummaries: {
name: 'operabilitySummaries',
type: 'AssetOperabilitySummary[]',
model: 'AssetOperabilitySummary',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
restrictionTable: {
name: 'restrictionTable',
type: 'AssetRestrictionTable',
model: 'AssetRestrictionTable',
relationType: 'hasOne',
keyFrom: 'id',
keyTo: 'assetId'
},
staffs: {
name: 'staffs',
type: 'AssetStaff[]',
model: 'AssetStaff',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
assetStates: {
name: 'assetStates',
type: 'AssetState[]',
model: 'AssetState',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
currentState: {
name: 'currentState',
type: 'AssetState',
model: 'AssetState',
relationType: 'belongsTo',
keyFrom: 'currentStateId',
keyTo: 'id'
},
nextState: {
name: 'nextState',
type: 'AssetStateChange',
model: 'AssetStateChange',
relationType: 'hasOne',
keyFrom: 'id',
keyTo: 'assetId'
},
container: {
name: 'container',
type: 'any',
model: '',
relationType: 'hasOne',
keyFrom: 'id',
keyTo: 'assetId'
},
template: {
name: 'template',
type: 'AssetTemplate',
model: 'AssetTemplate',
relationType: 'belongsTo',
keyFrom: 'templateId',
keyTo: 'id'
},
assetWizardType: {
name: 'assetWizardType',
type: 'AssetWizardType',
model: 'AssetWizardType',
relationType: 'belongsTo',
keyFrom: 'assetWizardTypeId',
keyTo: 'id'
},
credentials: {
name: 'credentials',
type: 'Credential[]',
model: 'Credential',
relationType: 'hasMany',
modelThrough: 'CredentialAsset',
keyThrough: 'credentialId',
keyFrom: 'id',
keyTo: 'assetId'
},
admins: {
name: 'admins',
type: 'Admin[]',
model: 'Admin',
relationType: 'hasMany',
modelThrough: 'AdminAsset',
keyThrough: 'adminId',
keyFrom: 'id',
keyTo: 'assetId'
},
customer: {
name: 'customer',
type: 'Customer',
model: 'Customer',
relationType: 'belongsTo',
keyFrom: 'customerId',
keyTo: 'id'
},
datasets: {
name: 'datasets',
type: 'Dataset[]',
model: 'Dataset',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
edgeAgents: {
name: 'edgeAgents',
type: 'EdgeAgent[]',
model: 'EdgeAgent',
relationType: 'hasMany',
modelThrough: 'EdgeAgentAsset',
keyThrough: 'edgeAgentId',
keyFrom: 'id',
keyTo: 'assetId'
},
events: {
name: 'events',
type: 'Event[]',
model: 'Event',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
eventGroups: {
name: 'eventGroups',
type: 'EventGroup[]',
model: 'EventGroup',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
eventSummaries: {
name: 'eventSummaries',
type: 'EventSummary[]',
model: 'EventSummary',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
eventSummaryForAssets: {
name: 'eventSummaryForAssets',
type: 'EventSummaryForAsset[]',
model: 'EventSummaryForAsset',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
eventTriggers: {
name: 'eventTriggers',
type: 'EventTrigger[]',
model: 'EventTrigger',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
features: {
name: 'features',
type: 'any[]',
model: '',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
healthcheckEvents: {
name: 'healthcheckEvents',
type: 'HealthcheckEvent[]',
model: 'HealthcheckEvent',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
trackingLogs: {
name: 'trackingLogs',
type: 'Log[]',
model: 'Log',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'trackingModelId'
},
managers: {
name: 'managers',
type: 'Manager[]',
model: 'Manager',
relationType: 'hasMany',
modelThrough: 'ManagerAsset',
keyThrough: 'managerId',
keyFrom: 'id',
keyTo: 'assetId'
},
project: {
name: 'project',
type: 'Project',
model: 'Project',
relationType: 'belongsTo',
keyFrom: 'projectId',
keyTo: 'id'
},
rateLimit: {
name: 'rateLimit',
type: 'RateLimit[]',
model: 'RateLimit',
relationType: 'embedsOne',
keyFrom: '_rateLimit',
keyTo: 'id'
},
responseProtocol: {
name: 'responseProtocol',
type: 'ResponseProtocol',
model: 'ResponseProtocol',
relationType: 'belongsTo',
keyFrom: 'responseProtocolId',
keyTo: 'id'
},
sensors: {
name: 'sensors',
type: 'Sensor[]',
model: 'Sensor',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
sensorUptimes: {
name: 'sensorUptimes',
type: 'SensorUptime[]',
model: 'SensorUptime',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
sensorUptimeCollectors: {
name: 'sensorUptimeCollectors',
type: 'SensorUptimeCollector[]',
model: 'SensorUptimeCollector',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
summaries: {
name: 'summaries',
type: 'Summary[]',
model: 'Summary',
relationType: 'hasMany',
keyFrom: 'id',
keyTo: 'assetId'
},
token: {
name: 'token',
type: 'any[]',
model: '',
relationType: 'embedsOne',
keyFrom: '_token',
keyTo: 'id'
},
}
};
};
return Asset;
}());
exports.Asset = Asset;
//# sourceMappingURL=Asset.js.map