@operato/scene-integration 9.0.0-beta.0 → 9.0.0-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/connection-control.js +14 -9
- package/dist/connection-control.js.map +1 -1
- package/dist/connection-state-subscription.js +14 -9
- package/dist/connection-state-subscription.js.map +1 -1
- package/dist/data-subscription.js +14 -9
- package/dist/data-subscription.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +9 -9
- package/dist/index.js.map +1 -1
- package/dist/scenario-control.js +15 -10
- package/dist/scenario-control.js.map +1 -1
- package/dist/scenario-instance-subscription.js +15 -10
- package/dist/scenario-instance-subscription.js.map +1 -1
- package/dist/scenario-queue-subscription.js +14 -9
- package/dist/scenario-queue-subscription.js.map +1 -1
- package/dist/scenario-run.js +15 -10
- package/dist/scenario-run.js.map +1 -1
- package/dist/scenario-start.js +15 -10
- package/dist/scenario-start.js.map +1 -1
- package/dist/scenario-stop.js +15 -10
- package/dist/scenario-stop.js.map +1 -1
- package/dist/templates/index.js +9 -9
- package/dist/templates/index.js.map +1 -1
- package/package.json +7 -6
- package/things-scene.config.js +2 -2
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
var ConnectionControl_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client } from '@operato/graphql';
|
|
4
6
|
const NATURE = {
|
|
5
7
|
mutable: false,
|
|
@@ -55,18 +57,18 @@ const NATURE = {
|
|
|
55
57
|
'value-property': 'controlType',
|
|
56
58
|
help: 'scene/component/connection-control'
|
|
57
59
|
};
|
|
58
|
-
|
|
60
|
+
let ConnectionControl = ConnectionControl_1 = class ConnectionControl extends RectPath(Shape) {
|
|
59
61
|
static get image() {
|
|
60
|
-
if (!
|
|
61
|
-
|
|
62
|
-
|
|
62
|
+
if (!ConnectionControl_1._image) {
|
|
63
|
+
ConnectionControl_1._image = new Image();
|
|
64
|
+
ConnectionControl_1._image.src = new URL('../icons/symbol-connection-control.png', import.meta.url).href;
|
|
63
65
|
}
|
|
64
|
-
return
|
|
66
|
+
return ConnectionControl_1._image;
|
|
65
67
|
}
|
|
66
68
|
render(context) {
|
|
67
69
|
var { left, top, width, height } = this.bounds;
|
|
68
70
|
context.beginPath();
|
|
69
|
-
this.drawImage(context,
|
|
71
|
+
this.drawImage(context, ConnectionControl_1.image, left, top, width, height);
|
|
70
72
|
}
|
|
71
73
|
get nature() {
|
|
72
74
|
return NATURE;
|
|
@@ -106,6 +108,9 @@ export default class ConnectionControl extends RectPath(Shape) {
|
|
|
106
108
|
this.data = response;
|
|
107
109
|
}
|
|
108
110
|
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
+
};
|
|
112
|
+
ConnectionControl = ConnectionControl_1 = __decorate([
|
|
113
|
+
sceneComponent('connection-control')
|
|
114
|
+
], ConnectionControl);
|
|
115
|
+
export default ConnectionControl;
|
|
111
116
|
//# sourceMappingURL=connection-control.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-control.js","sourceRoot":"","sources":["../src/connection-control.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"connection-control.js","sourceRoot":"","sources":["../src/connection-control.ts"],"names":[],"mappings":"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","sourcesContent":["import gql from 'graphql-tag'\n\nimport { Component, ComponentNature, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene'\nimport { client } from '@operato/graphql'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'connection-name',\n name: 'connectionName',\n property: {\n options: async () => {\n var response = await client.query({\n query: gql`\n query {\n connections {\n items {\n name\n }\n }\n }\n `\n })\n if (response.errors) {\n return ['']\n }\n\n return [''].concat(response.data.connections.items.map((item: any) => item.name))\n }\n }\n },\n {\n type: 'select',\n label: 'control-type',\n name: 'controlType',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'connect',\n value: 'connect'\n },\n {\n display: 'disconnect',\n value: 'disconnect'\n }\n ]\n }\n }\n ],\n 'value-property': 'controlType',\n help: 'scene/component/connection-control'\n}\n\n@sceneComponent('connection-control')\nexport default class ConnectionControl extends RectPath(Shape) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ConnectionControl._image) {\n ConnectionControl._image = new Image()\n ConnectionControl._image.src = new URL('../icons/symbol-connection-control.png', import.meta.url).href\n }\n return ConnectionControl._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n context.beginPath()\n this.drawImage(context, ConnectionControl.image, left, top, width, height)\n }\n\n get nature() {\n return NATURE\n }\n\n get controlType() {\n return this.getState('controlType')\n }\n\n set controlType(controlType: string) {\n this.setState('controlType', controlType)\n this.controlConnect()\n }\n\n async controlConnect() {\n let { controlType, connectionName } = this.state\n\n if (!connectionName || !this.app.isViewMode) return\n\n switch (controlType) {\n case 'connect':\n case true:\n case 1:\n controlType = 'connect'\n break\n default:\n controlType = 'disconnect'\n }\n\n var query = ''\n\n query = `mutation{\n ${controlType}Connection(name: \"${connectionName}\") {\n status\n }\n }`\n\n if (client) {\n var response = await client.query({\n query: gql`\n ${query}\n `\n })\n\n this.data = response\n }\n }\n}\n"]}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
var ConnectionStateSubscription_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client, subscribe } from '@operato/graphql';
|
|
4
6
|
const NATURE = {
|
|
5
7
|
mutable: false,
|
|
@@ -33,13 +35,13 @@ const NATURE = {
|
|
|
33
35
|
],
|
|
34
36
|
help: 'scene/component/connection-state-subscription'
|
|
35
37
|
};
|
|
36
|
-
|
|
38
|
+
let ConnectionStateSubscription = ConnectionStateSubscription_1 = class ConnectionStateSubscription extends DataSource(RectPath(Shape)) {
|
|
37
39
|
static get image() {
|
|
38
|
-
if (!
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
if (!ConnectionStateSubscription_1._image) {
|
|
41
|
+
ConnectionStateSubscription_1._image = new Image();
|
|
42
|
+
ConnectionStateSubscription_1._image.src = new URL('../icons/symbol-connection-state-subscription.png', import.meta.url).href;
|
|
41
43
|
}
|
|
42
|
-
return
|
|
44
|
+
return ConnectionStateSubscription_1._image;
|
|
43
45
|
}
|
|
44
46
|
dispose() {
|
|
45
47
|
var _a;
|
|
@@ -50,7 +52,7 @@ export default class ConnectionStateSubscription extends DataSource(RectPath(Sha
|
|
|
50
52
|
render(context) {
|
|
51
53
|
var { left, top, width, height } = this.bounds;
|
|
52
54
|
context.beginPath();
|
|
53
|
-
this.drawImage(context,
|
|
55
|
+
this.drawImage(context, ConnectionStateSubscription_1.image, left, top, width, height);
|
|
54
56
|
}
|
|
55
57
|
ready() {
|
|
56
58
|
if (!this.app.isViewMode)
|
|
@@ -83,6 +85,9 @@ export default class ConnectionStateSubscription extends DataSource(RectPath(Sha
|
|
|
83
85
|
}
|
|
84
86
|
});
|
|
85
87
|
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
+
};
|
|
89
|
+
ConnectionStateSubscription = ConnectionStateSubscription_1 = __decorate([
|
|
90
|
+
sceneComponent('connection-state-subscription')
|
|
91
|
+
], ConnectionStateSubscription);
|
|
92
|
+
export default ConnectionStateSubscription;
|
|
88
93
|
//# sourceMappingURL=connection-state-subscription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-state-subscription.js","sourceRoot":"","sources":["../src/connection-state-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"connection-state-subscription.js","sourceRoot":"","sources":["../src/connection-state-subscription.ts"],"names":[],"mappings":"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","sourcesContent":["import gql from 'graphql-tag'\n\nimport { Component, ComponentNature, DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene'\nimport { client, subscribe } from '@operato/graphql'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'connection-name',\n name: 'connectionName',\n property: {\n options: async () => {\n var response = await client.query({\n query: gql`\n query {\n connections {\n items {\n name\n }\n }\n }\n `\n })\n if (response.errors) {\n return ['']\n }\n\n return [''].concat(response.data.connections.items.map((item: any) => item.name))\n }\n }\n }\n ],\n help: 'scene/component/connection-state-subscription'\n}\n\n@sceneComponent('connection-state-subscription')\nexport default class ConnectionStateSubscription extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n static get image() {\n if (!ConnectionStateSubscription._image) {\n ConnectionStateSubscription._image = new Image()\n ConnectionStateSubscription._image.src = new URL(\n '../icons/symbol-connection-state-subscription.png',\n import.meta.url\n ).href\n }\n\n return ConnectionStateSubscription._image\n }\n\n private subscription?: {\n unsubscribe(): void\n }\n\n dispose() {\n super.dispose()\n\n this.subscription?.unsubscribe()\n delete this.subscription\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, ConnectionStateSubscription.image, left, top, width, height)\n }\n\n ready() {\n if (!this.app.isViewMode) return\n this._initConnectionStateSubscription()\n }\n\n get nature() {\n return NATURE\n }\n\n _initConnectionStateSubscription() {\n if (!this.app.isViewMode) return\n this.startSubscribe()\n }\n\n async startSubscribe() {\n var { connectionName } = this.state\n\n this.subscription = await subscribe(\n {\n query: gql`subscription {\n connectionState(name: \"${connectionName}\") {\n name\n state\n timestamp\n }\n }`\n },\n {\n next: async ({ data }: { data: any }) => {\n if (data) {\n this.data = data.connectionState\n }\n }\n }\n )\n }\n}\n"]}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
var DataSubscription_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
2
4
|
const NATURE = {
|
|
3
5
|
mutable: false,
|
|
4
6
|
resizable: true,
|
|
@@ -13,22 +15,25 @@ const NATURE = {
|
|
|
13
15
|
'value-property': 'tag',
|
|
14
16
|
help: 'scene/component/data-subscription'
|
|
15
17
|
};
|
|
16
|
-
|
|
18
|
+
let DataSubscription = DataSubscription_1 = class DataSubscription extends DataSource(RectPath(Shape)) {
|
|
17
19
|
static get image() {
|
|
18
|
-
if (!
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
if (!DataSubscription_1._image) {
|
|
21
|
+
DataSubscription_1._image = new Image();
|
|
22
|
+
DataSubscription_1._image.src = new URL('../icons/symbol-data-subscription.png', import.meta.url).href;
|
|
21
23
|
}
|
|
22
|
-
return
|
|
24
|
+
return DataSubscription_1._image;
|
|
23
25
|
}
|
|
24
26
|
render(context) {
|
|
25
27
|
var { left, top, width, height } = this.bounds;
|
|
26
28
|
context.beginPath();
|
|
27
|
-
this.drawImage(context,
|
|
29
|
+
this.drawImage(context, DataSubscription_1.image, left, top, width, height);
|
|
28
30
|
}
|
|
29
31
|
get nature() {
|
|
30
32
|
return NATURE;
|
|
31
33
|
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
+
};
|
|
35
|
+
DataSubscription = DataSubscription_1 = __decorate([
|
|
36
|
+
sceneComponent('data-subscription')
|
|
37
|
+
], DataSubscription);
|
|
38
|
+
export default DataSubscription;
|
|
34
39
|
//# sourceMappingURL=data-subscription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-subscription.js","sourceRoot":"","sources":["../src/data-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"data-subscription.js","sourceRoot":"","sources":["../src/data-subscription.ts"],"names":[],"mappings":";;AAAA,OAAO,EAA8B,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEhH,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,KAAK;SACZ;KACF;IACD,gBAAgB,EAAE,KAAK;IACvB,IAAI,EAAE,mCAAmC;CAC1C,CAAA;AAGc,IAAM,gBAAgB,wBAAtB,MAAM,gBAAiB,SAAQ,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEvE,MAAM,KAAK,KAAK;QACd,IAAI,CAAC,kBAAgB,CAAC,MAAM,EAAE,CAAC;YAC7B,kBAAgB,CAAC,MAAM,GAAG,IAAI,KAAK,EAAE,CAAA;YACrC,kBAAgB,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;QACtG,CAAC;QAED,OAAO,kBAAgB,CAAC,MAAM,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAE9C,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAC3E,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;CACF,CAAA;AArBoB,gBAAgB;IADpC,cAAc,CAAC,mBAAmB,CAAC;GACf,gBAAgB,CAqBpC;eArBoB,gBAAgB","sourcesContent":["import { Component, ComponentNature, DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'string',\n label: 'tag',\n name: 'tag'\n }\n ],\n 'value-property': 'tag',\n help: 'scene/component/data-subscription'\n}\n\n@sceneComponent('data-subscription')\nexport default class DataSubscription extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n static get image() {\n if (!DataSubscription._image) {\n DataSubscription._image = new Image()\n DataSubscription._image.src = new URL('../icons/symbol-data-subscription.png', import.meta.url).href\n }\n\n return DataSubscription._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, DataSubscription.image, left, top, width, height)\n }\n\n get nature() {\n return NATURE\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import DataSubscription from './data-subscription';
|
|
2
|
-
import ConnectionControl from './connection-control';
|
|
1
|
+
import DataSubscription from './data-subscription.js';
|
|
2
|
+
import ConnectionControl from './connection-control.js';
|
|
3
3
|
declare const _default: (typeof ConnectionControl | typeof DataSubscription)[];
|
|
4
4
|
export default _default;
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import DataSubscription from './data-subscription';
|
|
2
|
-
import ScenarioControl from './scenario-control';
|
|
3
|
-
import ScenarioRun from './scenario-run';
|
|
4
|
-
import ScenarioStart from './scenario-start';
|
|
5
|
-
import ScenarioStop from './scenario-stop';
|
|
6
|
-
import ScenarioInstanceSubscription from './scenario-instance-subscription';
|
|
7
|
-
import ScenarioQueueSubscription from './scenario-queue-subscription';
|
|
8
|
-
import ConnectionStateSubscription from './connection-state-subscription';
|
|
9
|
-
import ConnectionControl from './connection-control';
|
|
1
|
+
import DataSubscription from './data-subscription.js';
|
|
2
|
+
import ScenarioControl from './scenario-control.js';
|
|
3
|
+
import ScenarioRun from './scenario-run.js';
|
|
4
|
+
import ScenarioStart from './scenario-start.js';
|
|
5
|
+
import ScenarioStop from './scenario-stop.js';
|
|
6
|
+
import ScenarioInstanceSubscription from './scenario-instance-subscription.js';
|
|
7
|
+
import ScenarioQueueSubscription from './scenario-queue-subscription.js';
|
|
8
|
+
import ConnectionStateSubscription from './connection-state-subscription.js';
|
|
9
|
+
import ConnectionControl from './connection-control.js';
|
|
10
10
|
export default [
|
|
11
11
|
DataSubscription,
|
|
12
12
|
ScenarioControl,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,wBAAwB,CAAA;AACrD,OAAO,eAAe,MAAM,uBAAuB,CAAA;AACnD,OAAO,WAAW,MAAM,mBAAmB,CAAA;AAC3C,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,YAAY,MAAM,oBAAoB,CAAA;AAC7C,OAAO,4BAA4B,MAAM,qCAAqC,CAAA;AAC9E,OAAO,yBAAyB,MAAM,kCAAkC,CAAA;AACxE,OAAO,2BAA2B,MAAM,oCAAoC,CAAA;AAC5E,OAAO,iBAAiB,MAAM,yBAAyB,CAAA;AAEvD,eAAe;IACb,gBAAgB;IAChB,eAAe;IACf,WAAW;IACX,aAAa;IACb,YAAY;IACZ,4BAA4B;IAC5B,yBAAyB;IACzB,2BAA2B;IAC3B,iBAAiB;CAClB,CAAA","sourcesContent":["import DataSubscription from './data-subscription.js'\nimport ScenarioControl from './scenario-control.js'\nimport ScenarioRun from './scenario-run.js'\nimport ScenarioStart from './scenario-start.js'\nimport ScenarioStop from './scenario-stop.js'\nimport ScenarioInstanceSubscription from './scenario-instance-subscription.js'\nimport ScenarioQueueSubscription from './scenario-queue-subscription.js'\nimport ConnectionStateSubscription from './connection-state-subscription.js'\nimport ConnectionControl from './connection-control.js'\n\nexport default [\n DataSubscription,\n ScenarioControl,\n ScenarioRun,\n ScenarioStart,\n ScenarioStop,\n ScenarioInstanceSubscription,\n ScenarioQueueSubscription,\n ConnectionStateSubscription,\n ConnectionControl\n]\n"]}
|
package/dist/scenario-control.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var ScenarioControl_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client } from '@operato/graphql';
|
|
4
|
-
import { scenarios } from './client-api';
|
|
6
|
+
import { scenarios } from './client-api.js';
|
|
5
7
|
const NATURE = {
|
|
6
8
|
mutable: false,
|
|
7
9
|
resizable: true,
|
|
@@ -40,18 +42,18 @@ const NATURE = {
|
|
|
40
42
|
'value-property': 'controlType',
|
|
41
43
|
help: 'scene/component/scenario-control'
|
|
42
44
|
};
|
|
43
|
-
|
|
45
|
+
let ScenarioControl = ScenarioControl_1 = class ScenarioControl extends DataSource(RectPath(Shape)) {
|
|
44
46
|
static get image() {
|
|
45
|
-
if (!
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
if (!ScenarioControl_1._image) {
|
|
48
|
+
ScenarioControl_1._image = new Image();
|
|
49
|
+
ScenarioControl_1._image.src = new URL('../icons/symbol-scenario-control.png', import.meta.url).href;
|
|
48
50
|
}
|
|
49
|
-
return
|
|
51
|
+
return ScenarioControl_1._image;
|
|
50
52
|
}
|
|
51
53
|
render(context) {
|
|
52
54
|
var { left, top, width, height } = this.bounds;
|
|
53
55
|
context.beginPath();
|
|
54
|
-
this.drawImage(context,
|
|
56
|
+
this.drawImage(context, ScenarioControl_1.image, left, top, width, height);
|
|
55
57
|
}
|
|
56
58
|
ready() {
|
|
57
59
|
super.ready();
|
|
@@ -100,6 +102,9 @@ export default class ScenarioControl extends DataSource(RectPath(Shape)) {
|
|
|
100
102
|
});
|
|
101
103
|
this.data = response;
|
|
102
104
|
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
+
};
|
|
106
|
+
ScenarioControl = ScenarioControl_1 = __decorate([
|
|
107
|
+
sceneComponent('scenario-control')
|
|
108
|
+
], ScenarioControl);
|
|
109
|
+
export default ScenarioControl;
|
|
105
110
|
//# sourceMappingURL=scenario-control.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-control.js","sourceRoot":"","sources":["../src/scenario-control.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-control.js","sourceRoot":"","sources":["../src/scenario-control.ts"],"names":[],"mappings":"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","sourcesContent":["import gql from 'graphql-tag'\n\nimport {\n Component,\n ComponentNature,\n DataSource,\n Properties,\n RectPath,\n Shape,\n sceneComponent\n} from '@hatiolab/things-scene'\nimport { client } from '@operato/graphql'\n\nimport { scenarios } from './client-api.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'scenario-name',\n name: 'scenarioName',\n property: {\n options: scenarios\n }\n },\n {\n type: 'select',\n label: 'control-type',\n name: 'controlType',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'start',\n value: 'start'\n },\n {\n display: 'stop',\n value: 'stop'\n }\n ]\n }\n }\n ],\n 'value-property': 'controlType',\n help: 'scene/component/scenario-control'\n}\n\n@sceneComponent('scenario-control')\nexport default class ScenarioControl extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioControl._image) {\n ScenarioControl._image = new Image()\n ScenarioControl._image.src = new URL('../icons/symbol-scenario-control.png', import.meta.url).href\n }\n return ScenarioControl._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n context.beginPath()\n this.drawImage(context, ScenarioControl.image, left, top, width, height)\n }\n\n ready() {\n super.ready()\n\n if (this.app.isViewMode) {\n this.requestData()\n }\n }\n\n get nature() {\n return NATURE\n }\n\n onchange(after: Properties) {\n if ('controlType' in after) {\n this.requestData()\n }\n }\n\n get controlType() {\n return this.getState('controlType')\n }\n\n set controlType(controlType) {\n this.setState('controlType', controlType)\n }\n\n async requestData() {\n let { controlType, scenarioName } = this.state\n if (!controlType || !scenarioName || !this.app.isViewMode) {\n return\n }\n\n var query = ''\n if (controlType == 'start') {\n query = `mutation{\n ${controlType}Scenario(instanceName: \"${scenarioName}\", scenarioName: \"${scenarioName}\", variables: {}) {\n state\n }\n }`\n } else {\n query = `mutation{\n ${controlType}Scenario(instanceName: \"${scenarioName}\") {\n state\n }\n }`\n }\n\n var response = await client.query({\n query: gql`\n ${query}\n `\n })\n\n this.data = response\n }\n}\n"]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var ScenarioInstanceSubscription_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { subscribe } from '@operato/graphql';
|
|
4
|
-
import { scenarios } from './client-api';
|
|
6
|
+
import { scenarios } from './client-api.js';
|
|
5
7
|
const NATURE = {
|
|
6
8
|
mutable: false,
|
|
7
9
|
resizable: true,
|
|
@@ -23,13 +25,13 @@ const NATURE = {
|
|
|
23
25
|
],
|
|
24
26
|
help: 'scene/component/scenario-instance-subscription'
|
|
25
27
|
};
|
|
26
|
-
|
|
28
|
+
let ScenarioInstanceSubscription = ScenarioInstanceSubscription_1 = class ScenarioInstanceSubscription extends DataSource(RectPath(Shape)) {
|
|
27
29
|
static get image() {
|
|
28
|
-
if (!
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
if (!ScenarioInstanceSubscription_1._image) {
|
|
31
|
+
ScenarioInstanceSubscription_1._image = new Image();
|
|
32
|
+
ScenarioInstanceSubscription_1._image.src = new URL('../icons/symbol-scenario-instance-subscription.png', import.meta.url).href;
|
|
31
33
|
}
|
|
32
|
-
return
|
|
34
|
+
return ScenarioInstanceSubscription_1._image;
|
|
33
35
|
}
|
|
34
36
|
dispose() {
|
|
35
37
|
var _a;
|
|
@@ -40,7 +42,7 @@ export default class ScenarioInstanceSubscription extends DataSource(RectPath(Sh
|
|
|
40
42
|
render(context) {
|
|
41
43
|
var { left, top, width, height } = this.bounds;
|
|
42
44
|
context.beginPath();
|
|
43
|
-
this.drawImage(context,
|
|
45
|
+
this.drawImage(context, ScenarioInstanceSubscription_1.image, left, top, width, height);
|
|
44
46
|
}
|
|
45
47
|
ready() {
|
|
46
48
|
if (!this.app.isViewMode)
|
|
@@ -86,6 +88,9 @@ export default class ScenarioInstanceSubscription extends DataSource(RectPath(Sh
|
|
|
86
88
|
}
|
|
87
89
|
});
|
|
88
90
|
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
+
};
|
|
92
|
+
ScenarioInstanceSubscription = ScenarioInstanceSubscription_1 = __decorate([
|
|
93
|
+
sceneComponent('scenario-instance-subscription')
|
|
94
|
+
], ScenarioInstanceSubscription);
|
|
95
|
+
export default ScenarioInstanceSubscription;
|
|
91
96
|
//# sourceMappingURL=scenario-instance-subscription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-instance-subscription.js","sourceRoot":"","sources":["../src/scenario-instance-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-instance-subscription.js","sourceRoot":"","sources":["../src/scenario-instance-subscription.ts"],"names":[],"mappings":"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","sourcesContent":["import gql from 'graphql-tag'\n\nimport { Component, ComponentNature, DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene'\nimport { subscribe } from '@operato/graphql'\n\nimport { scenarios } from './client-api.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'scenario-name',\n name: 'scenarioName',\n property: {\n options: scenarios\n }\n },\n {\n type: 'string',\n label: 'instance-name',\n name: 'instanceName'\n }\n ],\n help: 'scene/component/scenario-instance-subscription'\n}\n\n@sceneComponent('scenario-instance-subscription')\nexport default class ScenarioInstanceSubscription extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioInstanceSubscription._image) {\n ScenarioInstanceSubscription._image = new Image()\n ScenarioInstanceSubscription._image.src = new URL(\n '../icons/symbol-scenario-instance-subscription.png',\n import.meta.url\n ).href\n }\n\n return ScenarioInstanceSubscription._image\n }\n\n private subscription?: {\n unsubscribe(): void\n }\n\n dispose() {\n super.dispose()\n\n this.subscription?.unsubscribe()\n delete this.subscription\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, ScenarioInstanceSubscription.image, left, top, width, height)\n }\n\n ready() {\n if (!this.app.isViewMode) return\n this._initScenarioInstanceSubscription()\n }\n\n get nature() {\n return NATURE\n }\n\n _initScenarioInstanceSubscription() {\n if (!this.app.isViewMode) return\n this.startSubscribe()\n }\n\n async startSubscribe() {\n var { instanceName, scenarioName = '' } = this.state\n\n instanceName = instanceName || scenarioName\n\n this.subscription = await subscribe(\n {\n query: gql`\n subscription {\n scenarioInstanceState(instanceName: \"${instanceName}\", scenarioName: \"${scenarioName}\") {\n instanceName\n scenarioName\n state\n variables\n progress{\n rounds\n rate\n steps\n step\n }\n data\n message\n timestamp\n }\n }\n `\n },\n {\n next: async ({ data }: { data: any }) => {\n if (data) {\n this.data = data.scenarioInstanceState\n }\n }\n }\n )\n }\n}\n"]}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
var ScenarioQueueSubscription_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { subscribe } from '@operato/graphql';
|
|
4
6
|
const NATURE = {
|
|
5
7
|
mutable: false,
|
|
@@ -8,13 +10,13 @@ const NATURE = {
|
|
|
8
10
|
properties: [],
|
|
9
11
|
help: 'scene/component/scenario-queue-subscription'
|
|
10
12
|
};
|
|
11
|
-
|
|
13
|
+
let ScenarioQueueSubscription = ScenarioQueueSubscription_1 = class ScenarioQueueSubscription extends DataSource(RectPath(Shape)) {
|
|
12
14
|
static get image() {
|
|
13
|
-
if (!
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
if (!ScenarioQueueSubscription_1._image) {
|
|
16
|
+
ScenarioQueueSubscription_1._image = new Image();
|
|
17
|
+
ScenarioQueueSubscription_1._image.src = new URL('../icons/symbol-scenario-queue-subscription.png', import.meta.url).href;
|
|
16
18
|
}
|
|
17
|
-
return
|
|
19
|
+
return ScenarioQueueSubscription_1._image;
|
|
18
20
|
}
|
|
19
21
|
dispose() {
|
|
20
22
|
var _a;
|
|
@@ -25,7 +27,7 @@ export default class ScenarioQueueSubscription extends DataSource(RectPath(Shape
|
|
|
25
27
|
render(context) {
|
|
26
28
|
var { left, top, width, height } = this.bounds;
|
|
27
29
|
context.beginPath();
|
|
28
|
-
this.drawImage(context,
|
|
30
|
+
this.drawImage(context, ScenarioQueueSubscription_1.image, left, top, width, height);
|
|
29
31
|
}
|
|
30
32
|
ready() {
|
|
31
33
|
if (!this.app.isViewMode)
|
|
@@ -62,6 +64,9 @@ export default class ScenarioQueueSubscription extends DataSource(RectPath(Shape
|
|
|
62
64
|
}
|
|
63
65
|
});
|
|
64
66
|
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
+
};
|
|
68
|
+
ScenarioQueueSubscription = ScenarioQueueSubscription_1 = __decorate([
|
|
69
|
+
sceneComponent('scenario-queue-subscription')
|
|
70
|
+
], ScenarioQueueSubscription);
|
|
71
|
+
export default ScenarioQueueSubscription;
|
|
67
72
|
//# sourceMappingURL=scenario-queue-subscription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-queue-subscription.js","sourceRoot":"","sources":["../src/scenario-queue-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-queue-subscription.js","sourceRoot":"","sources":["../src/scenario-queue-subscription.ts"],"names":[],"mappings":";;AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAA8B,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAChH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,6CAA6C;CACpD,CAAA;AAGc,IAAM,yBAAyB,iCAA/B,MAAM,yBAA0B,SAAQ,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAGhF,MAAM,KAAK,KAAK;QACd,IAAI,CAAC,2BAAyB,CAAC,MAAM,EAAE,CAAC;YACtC,2BAAyB,CAAC,MAAM,GAAG,IAAI,KAAK,EAAE,CAAA;YAC9C,2BAAyB,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAC5C,iDAAiD,EACjD,MAAM,CAAC,IAAI,CAAC,GAAG,CAChB,CAAC,IAAI,CAAA;QACR,CAAC;QAED,OAAO,2BAAyB,CAAC,MAAM,CAAA;IACzC,CAAC;IAMD,OAAO;;QACL,KAAK,CAAC,OAAO,EAAE,CAAA;QAEf,MAAA,IAAI,CAAC,YAAY,0CAAE,WAAW,EAAE,CAAA;QAChC,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAE9C,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,2BAAyB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACpF,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU;YAAE,OAAM;QAChC,IAAI,CAAC,8BAA8B,EAAE,CAAA;IACvC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,8BAA8B;QAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU;YAAE,OAAM;QAChC,IAAI,CAAC,cAAc,EAAE,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,YAAY,GAAG,MAAM,SAAS,CACjC;YACE,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;SAWT;SACF,EACD;YACE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAiB,EAAE,EAAE;gBACtC,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAA;gBACrC,CAAC;YACH,CAAC;SACF,CACF,CAAA;IACH,CAAC;CACF,CAAA;AAxEoB,yBAAyB;IAD7C,cAAc,CAAC,6BAA6B,CAAC;GACzB,yBAAyB,CAwE7C;eAxEoB,yBAAyB","sourcesContent":["import gql from 'graphql-tag'\n\nimport { Component, ComponentNature, DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene'\nimport { subscribe } from '@operato/graphql'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [],\n help: 'scene/component/scenario-queue-subscription'\n}\n\n@sceneComponent('scenario-queue-subscription')\nexport default class ScenarioQueueSubscription extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioQueueSubscription._image) {\n ScenarioQueueSubscription._image = new Image()\n ScenarioQueueSubscription._image.src = new URL(\n '../icons/symbol-scenario-queue-subscription.png',\n import.meta.url\n ).href\n }\n\n return ScenarioQueueSubscription._image\n }\n\n private subscription?: {\n unsubscribe(): void\n }\n\n dispose() {\n super.dispose()\n\n this.subscription?.unsubscribe()\n delete this.subscription\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, ScenarioQueueSubscription.image, left, top, width, height)\n }\n\n ready() {\n if (!this.app.isViewMode) return\n this._initScenarioQueueSubscription()\n }\n\n get nature() {\n return NATURE\n }\n\n _initScenarioQueueSubscription() {\n if (!this.app.isViewMode) return\n this.startSubscribe()\n }\n\n async startSubscribe() {\n this.subscription = await subscribe(\n {\n query: gql`\n subscription {\n scenarioQueueState {\n queue {\n stuff\n due\n priority\n tag\n }\n }\n }\n `\n },\n {\n next: async ({ data }: { data: any }) => {\n if (data) {\n this.data = data.scenarioQueueState\n }\n }\n }\n )\n }\n}\n"]}
|
package/dist/scenario-run.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var ScenarioRun_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client } from '@operato/graphql';
|
|
4
|
-
import { scenarios } from './client-api';
|
|
6
|
+
import { scenarios } from './client-api.js';
|
|
5
7
|
const NATURE = {
|
|
6
8
|
mutable: false,
|
|
7
9
|
resizable: true,
|
|
@@ -60,7 +62,7 @@ const NATURE = {
|
|
|
60
62
|
'value-property': 'variables',
|
|
61
63
|
help: 'scene/component/scenario-run'
|
|
62
64
|
};
|
|
63
|
-
|
|
65
|
+
let ScenarioRun = ScenarioRun_1 = class ScenarioRun extends DataSource(RectPath(Shape)) {
|
|
64
66
|
constructor() {
|
|
65
67
|
super(...arguments);
|
|
66
68
|
this._started = false;
|
|
@@ -68,16 +70,16 @@ export default class ScenarioRun extends DataSource(RectPath(Shape)) {
|
|
|
68
70
|
this._timeout = null;
|
|
69
71
|
}
|
|
70
72
|
static get image() {
|
|
71
|
-
if (!
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
if (!ScenarioRun_1._image) {
|
|
74
|
+
ScenarioRun_1._image = new Image();
|
|
75
|
+
ScenarioRun_1._image.src = new URL('../icons/symbol-scenario-run.png', import.meta.url).href;
|
|
74
76
|
}
|
|
75
|
-
return
|
|
77
|
+
return ScenarioRun_1._image;
|
|
76
78
|
}
|
|
77
79
|
render(context) {
|
|
78
80
|
var { left, top, width, height } = this.bounds;
|
|
79
81
|
context.beginPath();
|
|
80
|
-
this.drawImage(context,
|
|
82
|
+
this.drawImage(context, ScenarioRun_1.image, left, top, width, height);
|
|
81
83
|
}
|
|
82
84
|
ready() {
|
|
83
85
|
super.ready();
|
|
@@ -194,6 +196,9 @@ export default class ScenarioRun extends DataSource(RectPath(Shape)) {
|
|
|
194
196
|
//@ts-ignore
|
|
195
197
|
(_b = (_a = this.root) === null || _a === void 0 ? void 0 : _a.target_element) === null || _b === void 0 ? void 0 : _b.style.filter = 'none';
|
|
196
198
|
}
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
+
};
|
|
200
|
+
ScenarioRun = ScenarioRun_1 = __decorate([
|
|
201
|
+
sceneComponent('scenario-run')
|
|
202
|
+
], ScenarioRun);
|
|
203
|
+
export default ScenarioRun;
|
|
199
204
|
//# sourceMappingURL=scenario-run.js.map
|
package/dist/scenario-run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-run.js","sourceRoot":"","sources":["../src/scenario-run.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-run.js","sourceRoot":"","sources":["../src/scenario-run.ts"],"names":[],"mappings":";;AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAGL,UAAU,EAEV,QAAQ,EACR,KAAK,EACL,cAAc,EACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE;gBACR,OAAO,EAAE,SAAS;aACnB;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,eAAe;SAC7B;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,YAAY;SACnB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE;oBACP;wBACE,OAAO,EAAE,MAAM;wBACf,KAAK,EAAE,EAAE;qBACV;oBACD;wBACE,OAAO,EAAE,aAAa;wBACtB,KAAK,EAAE,WAAW;qBACnB;oBACD;wBACE,OAAO,EAAE,WAAW;wBACpB,KAAK,EAAE,WAAW;qBACnB;oBACD;wBACE,OAAO,EAAE,WAAW;wBACpB,KAAK,EAAE,cAAc;qBACtB;iBACF;aACF;SACF;KACF;IACD,gBAAgB,EAAE,WAAW;IAC7B,IAAI,EAAE,8BAA8B;CACrC,CAAA;AAGc,IAAM,WAAW,mBAAjB,MAAM,WAAY,SAAQ,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAArD;;QAWL,aAAQ,GAAY,KAAK,CAAA;QACzB,SAAI,GAAW,CAAC,CAAA;QAChB,aAAQ,GAA0B,IAAI,CAAA;IAyIhD,CAAC;IAnJC,MAAM,KAAK,KAAK;QACd,IAAI,CAAC,aAAW,CAAC,MAAM,EAAE,CAAC;YACxB,aAAW,CAAC,MAAM,GAAG,IAAI,KAAK,EAAE,CAAA;YAChC,aAAW,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;QAC5F,CAAC;QACD,OAAO,aAAW,CAAC,MAAM,CAAA;IAC3B,CAAC;IAMD,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAC9C,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,aAAW,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACtE,CAAC;IAED,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAA;QAEb,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,KAAiB;QACxB,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,EAAE,CAAA;YACX,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,OAAgB;QAC1B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAExB,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,EAAE,CAAA;QACb,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA;IAC3B,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QAEpB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QAErB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;QACf,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;IAC7B,CAAC;IAED,IAAI,SAAS,CAAC,SAAS;QACrB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACvC,CAAC;IAED,KAAK,CAAC,WAAW;;QACf,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACzD,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAC1C,OAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,SAAS,GAAG,OAAO,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;oBAChC,KAAK,EAAE,GAAG,CAAA;;;;;;;WAOT;oBACD,SAAS,EAAE;wBACT,YAAY,EAAE,YAAY;wBAC1B,SAAS;qBACV;iBACF,CAAC,CAAA;gBAEF,IAAI,CAAC,IAAI,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,0CAAE,MAAM,CAAA;gBAC/C,IAAI,CAAC,MAAM,EAAE,CAAA;YACf,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,uCAAuC,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,mCAAI,CAAC,EAAE,CAAC,CAAA;gBACvE,IAAI,CAAC,IAAI,EAAE,CAAA;YACb,CAAC;oBAAS,CAAC;gBACT,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC7C,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI;;QACF,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAClC,IAAI,WAAW,EAAE,CAAC;YAChB,YAAY;YACZ,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,cAAc,0CAAE,KAAK,CAAC,MAAM,GAAG,WAAW,CAAA;QACvD,CAAC;IACH,CAAC;IAED,MAAM;;QACJ,YAAY;QACZ,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,cAAc,0CAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;IAClD,CAAC;CACF,CAAA;AAtJoB,WAAW;IAD/B,cAAc,CAAC,cAAc,CAAC;GACV,WAAW,CAsJ/B;eAtJoB,WAAW","sourcesContent":["import gql from 'graphql-tag'\n\nimport {\n Component,\n ComponentNature,\n DataSource,\n Properties,\n RectPath,\n Shape,\n sceneComponent\n} from '@hatiolab/things-scene'\nimport { client } from '@operato/graphql'\n\nimport { scenarios } from './client-api.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'scenario-name',\n name: 'scenarioName',\n property: {\n options: scenarios\n }\n },\n {\n type: 'data',\n label: 'variables',\n name: 'variables'\n },\n {\n type: 'number',\n label: 'repeat-interval',\n name: 'interval',\n placeholder: 'milli-seconds'\n },\n {\n type: 'checkbox',\n label: 'run-on-start',\n name: 'runOnStart'\n },\n {\n type: 'select',\n label: 'mask-on-error',\n name: 'maskOnError',\n property: {\n options: [\n {\n display: 'none',\n value: ''\n },\n {\n display: 'strong-blur',\n value: 'blur(4px)'\n },\n {\n display: 'weak-blur',\n value: 'blur(2px)'\n },\n {\n display: 'grayscale',\n value: 'grayscale(1)'\n }\n ]\n }\n }\n ],\n 'value-property': 'variables',\n help: 'scene/component/scenario-run'\n}\n\n@sceneComponent('scenario-run')\nexport default class ScenarioRun extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioRun._image) {\n ScenarioRun._image = new Image()\n ScenarioRun._image.src = new URL('../icons/symbol-scenario-run.png', import.meta.url).href\n }\n return ScenarioRun._image\n }\n\n private _started: boolean = false\n private _raf: number = 0\n private _timeout: NodeJS.Timeout | null = null\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n context.beginPath()\n this.drawImage(context, ScenarioRun.image, left, top, width, height)\n }\n\n ready() {\n super.ready()\n\n if (this.app.isViewMode) {\n if (this.state.runOnStart) {\n this.started = true\n }\n }\n }\n\n dispose(): void {\n this.stop()\n super.dispose()\n }\n\n get nature() {\n return NATURE\n }\n\n onchange(after: Properties) {\n if ('variables' in after) {\n this.stop()\n this.start()\n }\n }\n\n set started(started: boolean) {\n this.setState('started')\n\n if (started) {\n this.start()\n } else {\n this.stop()\n }\n }\n\n get started() {\n return this.state.started\n }\n\n start() {\n if (this._started) {\n return\n }\n\n this._started = true\n\n this._raf = requestAnimationFrame(() => this.requestData())\n }\n\n stop() {\n if (!this._started) {\n return\n }\n\n this._started = false\n\n if (this._raf) {\n cancelAnimationFrame(this._raf)\n this._raf = 0\n }\n if (this._timeout) {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n }\n\n get variables() {\n return this.state.variables\n }\n\n set variables(variables) {\n this.setState('variables', variables)\n }\n\n async requestData() {\n let { scenarioName, variables, maskOnError } = this.state\n if (!scenarioName || !this.app.isViewMode) {\n return\n }\n\n try {\n variables = typeof variables == 'string' ? JSON.parse(variables) : variables\n } catch (e) {\n console.warn('runScenario mutation variable is not an object')\n }\n\n if (client) {\n try {\n var response = await client.query({\n query: gql`\n mutation ($scenarioName: String!, $variables: Object) {\n runScenario(scenarioName: $scenarioName, variables: $variables) {\n message\n result\n }\n }\n `,\n variables: {\n scenarioName: scenarioName,\n variables\n }\n })\n\n this.data = response?.data?.runScenario?.result\n this.demask()\n } catch (e: any) {\n console.error(`calling runScenario mutation error: ${e?.message ?? e}`)\n this.mask()\n } finally {\n if (this._started && this.state.interval > 0) {\n this._timeout = setTimeout(() => this.requestData(), this.state.interval)\n }\n }\n }\n }\n\n mask() {\n const { maskOnError } = this.state\n if (maskOnError) {\n //@ts-ignore\n this.root?.target_element?.style.filter = maskOnError\n }\n }\n\n demask() {\n //@ts-ignore\n this.root?.target_element?.style.filter = 'none'\n }\n}\n"]}
|
package/dist/scenario-start.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var ScenarioStart_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client } from '@operato/graphql';
|
|
4
|
-
import { scenarios } from './client-api';
|
|
6
|
+
import { scenarios } from './client-api.js';
|
|
5
7
|
const NATURE = {
|
|
6
8
|
mutable: false,
|
|
7
9
|
resizable: true,
|
|
@@ -29,18 +31,18 @@ const NATURE = {
|
|
|
29
31
|
'value-property': 'variables',
|
|
30
32
|
help: 'scene/component/scenario-start'
|
|
31
33
|
};
|
|
32
|
-
|
|
34
|
+
let ScenarioStart = ScenarioStart_1 = class ScenarioStart extends DataSource(RectPath(Shape)) {
|
|
33
35
|
static get image() {
|
|
34
|
-
if (!
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
if (!ScenarioStart_1._image) {
|
|
37
|
+
ScenarioStart_1._image = new Image();
|
|
38
|
+
ScenarioStart_1._image.src = new URL('../icons/symbol-scenario-start.png', import.meta.url).href;
|
|
37
39
|
}
|
|
38
|
-
return
|
|
40
|
+
return ScenarioStart_1._image;
|
|
39
41
|
}
|
|
40
42
|
render(context) {
|
|
41
43
|
var { left, top, width, height } = this.bounds;
|
|
42
44
|
context.beginPath();
|
|
43
|
-
this.drawImage(context,
|
|
45
|
+
this.drawImage(context, ScenarioStart_1.image, left, top, width, height);
|
|
44
46
|
}
|
|
45
47
|
get nature() {
|
|
46
48
|
return NATURE;
|
|
@@ -85,6 +87,9 @@ export default class ScenarioStart extends DataSource(RectPath(Shape)) {
|
|
|
85
87
|
this.data = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.startScenario) === null || _b === void 0 ? void 0 : _b.state;
|
|
86
88
|
}
|
|
87
89
|
}
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
+
};
|
|
91
|
+
ScenarioStart = ScenarioStart_1 = __decorate([
|
|
92
|
+
sceneComponent('scenario-start')
|
|
93
|
+
], ScenarioStart);
|
|
94
|
+
export default ScenarioStart;
|
|
90
95
|
//# sourceMappingURL=scenario-start.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-start.js","sourceRoot":"","sources":["../src/scenario-start.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-start.js","sourceRoot":"","sources":["../src/scenario-start.ts"],"names":[],"mappings":"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","sourcesContent":["import gql from 'graphql-tag'\n\nimport {\n Component,\n ComponentNature,\n DataSource,\n Properties,\n RectPath,\n Shape,\n sceneComponent\n} from '@hatiolab/things-scene'\nimport { client } from '@operato/graphql'\n\nimport { scenarios } from './client-api.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'string',\n label: 'instance-name',\n name: 'instanceName'\n },\n {\n type: 'select',\n label: 'scenario-name',\n name: 'scenarioName',\n property: {\n options: scenarios\n }\n },\n {\n type: 'data',\n label: 'variables',\n name: 'variables'\n }\n ],\n 'value-property': 'variables',\n help: 'scene/component/scenario-start'\n}\n\n@sceneComponent('scenario-start')\nexport default class ScenarioStart extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioStart._image) {\n ScenarioStart._image = new Image()\n ScenarioStart._image.src = new URL('../icons/symbol-scenario-start.png', import.meta.url).href\n }\n return ScenarioStart._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n context.beginPath()\n this.drawImage(context, ScenarioStart.image, left, top, width, height)\n }\n\n get nature() {\n return NATURE\n }\n\n async onchange(after: Properties) {\n if ('variables' in after) {\n this.requestData()\n }\n }\n\n get variables() {\n return this.state.variables\n }\n\n set variables(variables) {\n this.setState('variables', variables)\n }\n\n async requestData() {\n let { instanceName, scenarioName, variables } = this.state\n if (!scenarioName || !this.app.isViewMode) return\n\n try {\n variables = typeof variables == 'string' ? JSON.parse(variables) : variables\n } catch (e) {\n console.error(e)\n }\n\n if (client) {\n var response = await client.query({\n query: gql`\n mutation ($instanceName: String, $scenarioName: String!, $variables: Object) {\n startScenario(instanceName: $instanceName, scenarioName: $scenarioName, variables: $variables) {\n state\n }\n }\n `,\n variables: {\n instanceName: instanceName,\n scenarioName: scenarioName,\n variables\n }\n })\n\n this.data = response?.data?.startScenario?.state\n }\n }\n}\n"]}
|
package/dist/scenario-stop.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var ScenarioStop_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
1
3
|
import gql from 'graphql-tag';
|
|
2
|
-
import {
|
|
4
|
+
import { DataSource, RectPath, Shape, sceneComponent } from '@hatiolab/things-scene';
|
|
3
5
|
import { client } from '@operato/graphql';
|
|
4
|
-
import { scenarios } from './client-api';
|
|
6
|
+
import { scenarios } from './client-api.js';
|
|
5
7
|
const NATURE = {
|
|
6
8
|
mutable: false,
|
|
7
9
|
resizable: true,
|
|
@@ -24,18 +26,18 @@ const NATURE = {
|
|
|
24
26
|
'value-property': 'nothing',
|
|
25
27
|
help: 'scene/component/scenario-stop'
|
|
26
28
|
};
|
|
27
|
-
|
|
29
|
+
let ScenarioStop = ScenarioStop_1 = class ScenarioStop extends DataSource(RectPath(Shape)) {
|
|
28
30
|
static get image() {
|
|
29
|
-
if (!
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
if (!ScenarioStop_1._image) {
|
|
32
|
+
ScenarioStop_1._image = new Image();
|
|
33
|
+
ScenarioStop_1._image.src = new URL('../icons/symbol-scenario-stop.png', import.meta.url).href;
|
|
32
34
|
}
|
|
33
|
-
return
|
|
35
|
+
return ScenarioStop_1._image;
|
|
34
36
|
}
|
|
35
37
|
render(context) {
|
|
36
38
|
var { left, top, width, height } = this.bounds;
|
|
37
39
|
context.beginPath();
|
|
38
|
-
this.drawImage(context,
|
|
40
|
+
this.drawImage(context, ScenarioStop_1.image, left, top, width, height);
|
|
39
41
|
}
|
|
40
42
|
get nature() {
|
|
41
43
|
return NATURE;
|
|
@@ -73,6 +75,9 @@ export default class ScenarioStop extends DataSource(RectPath(Shape)) {
|
|
|
73
75
|
this.data = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.stopScenario) === null || _b === void 0 ? void 0 : _b.state;
|
|
74
76
|
}
|
|
75
77
|
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
+
};
|
|
79
|
+
ScenarioStop = ScenarioStop_1 = __decorate([
|
|
80
|
+
sceneComponent('scenario-stop')
|
|
81
|
+
], ScenarioStop);
|
|
82
|
+
export default ScenarioStop;
|
|
78
83
|
//# sourceMappingURL=scenario-stop.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-stop.js","sourceRoot":"","sources":["../src/scenario-stop.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,
|
|
1
|
+
{"version":3,"file":"scenario-stop.js","sourceRoot":"","sources":["../src/scenario-stop.ts"],"names":[],"mappings":";;AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAGL,UAAU,EAEV,QAAQ,EACR,KAAK,EACL,cAAc,EACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE;gBACR,OAAO,EAAE,SAAS;aACnB;SACF;KACF;IACD,gBAAgB,EAAE,SAAS;IAC3B,IAAI,EAAE,+BAA+B;CACtC,CAAA;AAGc,IAAM,YAAY,oBAAlB,MAAM,YAAa,SAAQ,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAGnE,MAAM,KAAK,KAAK;QACd,IAAI,CAAC,cAAY,CAAC,MAAM,EAAE,CAAC;YACzB,cAAY,CAAC,MAAM,GAAG,IAAI,KAAK,EAAE,CAAA;YACjC,cAAY,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,mCAAmC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;QAC9F,CAAC;QACD,OAAO,cAAY,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,OAAiC;QACtC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAC9C,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,cAAY,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,KAAiB;QACxB,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAA;QACpB,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA;IAC3B,CAAC;IAED,IAAI,OAAO,CAAC,OAAO;QACjB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACnC,CAAC;IAED,KAAK,CAAC,WAAW;;QACf,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/C,YAAY,GAAG,YAAY,IAAI,YAAY,CAAA;QAC3C,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU;YAAE,OAAM;QAEjD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAChC,KAAK,EAAE,GAAG,CAAA;;;;;;SAMT;gBACD,SAAS,EAAE;oBACT,YAAY,EAAE,YAAY;iBAC3B;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,IAAI,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,YAAY,0CAAE,KAAK,CAAA;QACjD,CAAC;IACH,CAAC;CACF,CAAA;AAzDoB,YAAY;IADhC,cAAc,CAAC,eAAe,CAAC;GACX,YAAY,CAyDhC;eAzDoB,YAAY","sourcesContent":["import gql from 'graphql-tag'\n\nimport {\n Component,\n ComponentNature,\n DataSource,\n Properties,\n RectPath,\n Shape,\n sceneComponent\n} from '@hatiolab/things-scene'\nimport { client } from '@operato/graphql'\n\nimport { scenarios } from './client-api.js'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'string',\n label: 'instance-name',\n name: 'instanceName'\n },\n {\n type: 'select',\n label: 'scenario-name',\n name: 'scenarioName',\n property: {\n options: scenarios\n }\n }\n ],\n 'value-property': 'nothing',\n help: 'scene/component/scenario-stop'\n}\n\n@sceneComponent('scenario-stop')\nexport default class ScenarioStop extends DataSource(RectPath(Shape)) {\n static _image: HTMLImageElement\n\n static get image() {\n if (!ScenarioStop._image) {\n ScenarioStop._image = new Image()\n ScenarioStop._image.src = new URL('../icons/symbol-scenario-stop.png', import.meta.url).href\n }\n return ScenarioStop._image\n }\n\n render(context: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n context.beginPath()\n this.drawImage(context, ScenarioStop.image, left, top, width, height)\n }\n\n get nature() {\n return NATURE\n }\n\n onchange(after: Properties) {\n if ('nothing' in after) {\n this.requestData()\n }\n }\n\n get nothing() {\n return this.state.nothing\n }\n\n set nothing(nothing) {\n this.setState('nothing', nothing)\n }\n\n async requestData() {\n let { instanceName, scenarioName } = this.state\n instanceName = instanceName || scenarioName\n if (!instanceName || !this.app.isViewMode) return\n\n if (client) {\n var response = await client.query({\n query: gql`\n mutation ($instanceName: String!) {\n stopScenario(instanceName: $instanceName) {\n state\n }\n }\n `,\n variables: {\n instanceName: instanceName\n }\n })\n\n this.data = response?.data?.stopScenario?.state\n }\n }\n}\n"]}
|
package/dist/templates/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import dataSubscription from './data-subscription';
|
|
2
|
-
import scenarioControl from './scenario-control';
|
|
3
|
-
import scenarioRun from './scenario-run';
|
|
4
|
-
import scenarioStart from './scenario-start';
|
|
5
|
-
import scenarioStop from './scenario-stop';
|
|
6
|
-
import scenarioInstanceSubscription from './scenario-instance-subscription';
|
|
7
|
-
import scenarioQueueSubscription from './scenario-queue-subscription';
|
|
8
|
-
import connectionStateSubscription from './connection-state-subscription';
|
|
9
|
-
import connectionControl from './connection-control';
|
|
1
|
+
import dataSubscription from './data-subscription.js';
|
|
2
|
+
import scenarioControl from './scenario-control.js';
|
|
3
|
+
import scenarioRun from './scenario-run.js';
|
|
4
|
+
import scenarioStart from './scenario-start.js';
|
|
5
|
+
import scenarioStop from './scenario-stop.js';
|
|
6
|
+
import scenarioInstanceSubscription from './scenario-instance-subscription.js';
|
|
7
|
+
import scenarioQueueSubscription from './scenario-queue-subscription.js';
|
|
8
|
+
import connectionStateSubscription from './connection-state-subscription.js';
|
|
9
|
+
import connectionControl from './connection-control.js';
|
|
10
10
|
export default [
|
|
11
11
|
dataSubscription,
|
|
12
12
|
scenarioControl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,wBAAwB,CAAA;AACrD,OAAO,eAAe,MAAM,uBAAuB,CAAA;AACnD,OAAO,WAAW,MAAM,mBAAmB,CAAA;AAC3C,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,YAAY,MAAM,oBAAoB,CAAA;AAC7C,OAAO,4BAA4B,MAAM,qCAAqC,CAAA;AAC9E,OAAO,yBAAyB,MAAM,kCAAkC,CAAA;AACxE,OAAO,2BAA2B,MAAM,oCAAoC,CAAA;AAC5E,OAAO,iBAAiB,MAAM,yBAAyB,CAAA;AAEvD,eAAe;IACb,gBAAgB;IAChB,eAAe;IACf,WAAW;IACX,aAAa;IACb,YAAY;IACZ,4BAA4B;IAC5B,yBAAyB;IACzB,2BAA2B;IAC3B,iBAAiB;CAClB,CAAA","sourcesContent":["import dataSubscription from './data-subscription.js'\nimport scenarioControl from './scenario-control.js'\nimport scenarioRun from './scenario-run.js'\nimport scenarioStart from './scenario-start.js'\nimport scenarioStop from './scenario-stop.js'\nimport scenarioInstanceSubscription from './scenario-instance-subscription.js'\nimport scenarioQueueSubscription from './scenario-queue-subscription.js'\nimport connectionStateSubscription from './connection-state-subscription.js'\nimport connectionControl from './connection-control.js'\n\nexport default [\n dataSubscription,\n scenarioControl,\n scenarioRun,\n scenarioStart,\n scenarioStop,\n scenarioInstanceSubscription,\n scenarioQueueSubscription,\n connectionStateSubscription,\n connectionControl\n]\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@operato/scene-integration",
|
|
3
3
|
"description": "Things factory integration component for things-scene",
|
|
4
|
-
"version": "9.0.0-beta.
|
|
4
|
+
"version": "9.0.0-beta.15",
|
|
5
|
+
"type": "module",
|
|
5
6
|
"author": "heartyoh",
|
|
6
7
|
"main": "dist/index.js",
|
|
7
8
|
"module": "dist/index.js",
|
|
@@ -33,14 +34,14 @@
|
|
|
33
34
|
},
|
|
34
35
|
"devDependencies": {
|
|
35
36
|
"@hatiolab/prettier-config": "^1.0.0",
|
|
36
|
-
"@things-factory/builder": "^
|
|
37
|
-
"@things-factory/operato-board": "^
|
|
37
|
+
"@things-factory/builder": "^9.0.0-beta",
|
|
38
|
+
"@things-factory/operato-board": "^9.0.0-beta",
|
|
38
39
|
"@typescript-eslint/eslint-plugin": "^4.33.0",
|
|
39
40
|
"@typescript-eslint/parser": "^4.33.0",
|
|
40
41
|
"@web/dev-server": "^0.1.28",
|
|
41
42
|
"concurrently": "^8.0.1",
|
|
42
|
-
"eslint": "^
|
|
43
|
-
"eslint-config-prettier": "^
|
|
43
|
+
"eslint": "^9.18.0",
|
|
44
|
+
"eslint-config-prettier": "^10.0.1",
|
|
44
45
|
"husky": "^8.0.3",
|
|
45
46
|
"lint-staged": "^13.2.2",
|
|
46
47
|
"prettier": "^2.4.1",
|
|
@@ -59,5 +60,5 @@
|
|
|
59
60
|
"prettier --write"
|
|
60
61
|
]
|
|
61
62
|
},
|
|
62
|
-
"gitHead": "
|
|
63
|
+
"gitHead": "3a94a8a9ee8cb8de82ad331cb08b9e48d6625d31"
|
|
63
64
|
}
|
package/things-scene.config.js
CHANGED