@things-factory/integration-ui 9.0.0-beta.8 → 9.0.0-beta.80
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/client/analysis/graph-viewer.ts +1 -1
- package/client/analysis/node.ts +2 -2
- package/client/analysis/relationship.ts +1 -1
- package/client/bootstrap.ts +10 -6
- package/client/editors/entity-editor.ts +2 -2
- package/client/editors/property-editor.ts +5 -5
- package/client/editors/things-editor-entity-selector.ts +1 -1
- package/client/grist/connection-selector.ts +1 -1
- package/client/grist/connector-selector.ts +1 -1
- package/client/pages/connection.ts +2 -2
- package/client/pages/integration-analysis.ts +3 -3
- package/client/pages/integration-monitor.ts +4 -4
- package/client/pages/scenario-detail.ts +1 -1
- package/client/pages/scenario.ts +3 -3
- package/client/pages/state-register.ts +1 -1
- package/client/viewparts/scenario-instance-log-view.ts +1 -1
- package/client/viewparts/scenario-instance-monitor.ts +7 -5
- package/client/viewparts/scenario-instance-view.ts +2 -2
- package/client/viewparts/scenario-monitor.ts +5 -3
- package/client/viewparts/scenarios-monitor.ts +1 -1
- package/dist-client/analysis/graph-viewer.d.ts +1 -1
- package/dist-client/analysis/graph-viewer.js +16 -1
- package/dist-client/analysis/graph-viewer.js.map +1 -1
- package/dist-client/analysis/node.d.ts +1 -1
- package/dist-client/analysis/node.js +1 -1
- package/dist-client/analysis/node.js.map +1 -1
- package/dist-client/analysis/relationship.d.ts +1 -1
- package/dist-client/analysis/relationship.js.map +1 -1
- package/dist-client/bootstrap.d.ts +2 -2
- package/dist-client/bootstrap.js +5 -5
- package/dist-client/bootstrap.js.map +1 -1
- package/dist-client/editors/entity-editor.d.ts +1 -1
- package/dist-client/editors/entity-editor.js +3 -4
- package/dist-client/editors/entity-editor.js.map +1 -1
- package/dist-client/editors/entity-selector.js +53 -33
- package/dist-client/editors/entity-selector.js.map +1 -1
- package/dist-client/editors/property-editor.d.ts +5 -5
- package/dist-client/editors/property-editor.js +8 -8
- package/dist-client/editors/property-editor.js.map +1 -1
- package/dist-client/editors/things-editor-db-procedure.js +98 -95
- package/dist-client/editors/things-editor-db-procedure.js.map +1 -1
- package/dist-client/editors/things-editor-entity-selector.d.ts +1 -1
- package/dist-client/editors/things-editor-entity-selector.js +28 -28
- package/dist-client/editors/things-editor-entity-selector.js.map +1 -1
- package/dist-client/editors/things-editor-http-body.js +50 -47
- package/dist-client/editors/things-editor-http-body.js.map +1 -1
- package/dist-client/editors/things-editor-http-headers.js +47 -47
- package/dist-client/editors/things-editor-http-headers.js.map +1 -1
- package/dist-client/editors/things-editor-http-parameters.js +47 -47
- package/dist-client/editors/things-editor-http-parameters.js.map +1 -1
- package/dist-client/editors/things-editor-tag-scenarios.js +63 -63
- package/dist-client/editors/things-editor-tag-scenarios.js.map +1 -1
- package/dist-client/grist/connection-selector.d.ts +1 -1
- package/dist-client/grist/connection-selector.js +1 -1
- package/dist-client/grist/connection-selector.js.map +1 -1
- package/dist-client/grist/connector-selector.d.ts +1 -1
- package/dist-client/grist/connector-selector.js +1 -1
- package/dist-client/grist/connector-selector.js.map +1 -1
- package/dist-client/grist/task-type-selector.js +1 -2
- package/dist-client/grist/task-type-selector.js.map +1 -1
- package/dist-client/pages/connection-importer.js +17 -18
- package/dist-client/pages/connection-importer.js.map +1 -1
- package/dist-client/pages/connection.d.ts +1 -1
- package/dist-client/pages/connection.js +32 -26
- package/dist-client/pages/connection.js.map +1 -1
- package/dist-client/pages/integration-analysis.d.ts +1 -1
- package/dist-client/pages/integration-analysis.js +33 -34
- package/dist-client/pages/integration-analysis.js.map +1 -1
- package/dist-client/pages/integration-monitor.d.ts +4 -4
- package/dist-client/pages/integration-monitor.js +67 -65
- package/dist-client/pages/integration-monitor.js.map +1 -1
- package/dist-client/pages/scenario-detail.js +20 -21
- package/dist-client/pages/scenario-detail.js.map +1 -1
- package/dist-client/pages/scenario-importer.js +17 -18
- package/dist-client/pages/scenario-importer.js.map +1 -1
- package/dist-client/pages/scenario.d.ts +2 -2
- package/dist-client/pages/scenario.js +25 -10
- package/dist-client/pages/scenario.js.map +1 -1
- package/dist-client/pages/state-register.js +31 -23
- package/dist-client/pages/state-register.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-client/viewparts/connections-monitor.js +77 -77
- package/dist-client/viewparts/connections-monitor.js.map +1 -1
- package/dist-client/viewparts/monitoring-summary.js +55 -55
- package/dist-client/viewparts/monitoring-summary.js.map +1 -1
- package/dist-client/viewparts/pending-q-monitor.js +110 -113
- package/dist-client/viewparts/pending-q-monitor.js.map +1 -1
- package/dist-client/viewparts/scenario-instance-log-view.js +46 -47
- package/dist-client/viewparts/scenario-instance-log-view.js.map +1 -1
- package/dist-client/viewparts/scenario-instance-monitor.d.ts +1 -1
- package/dist-client/viewparts/scenario-instance-monitor.js +77 -75
- package/dist-client/viewparts/scenario-instance-monitor.js.map +1 -1
- package/dist-client/viewparts/scenario-instance-view.d.ts +1 -1
- package/dist-client/viewparts/scenario-instance-view.js +109 -110
- package/dist-client/viewparts/scenario-instance-view.js.map +1 -1
- package/dist-client/viewparts/scenario-monitor.d.ts +1 -1
- package/dist-client/viewparts/scenario-monitor.js +102 -100
- package/dist-client/viewparts/scenario-monitor.js.map +1 -1
- package/dist-client/viewparts/scenarios-monitor.d.ts +1 -1
- package/dist-client/viewparts/scenarios-monitor.js +37 -37
- package/dist-client/viewparts/scenarios-monitor.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/client/analysis/graph-viewer-old.ts +0 -1097
- package/dist-client/analysis/graph-viewer-old.d.ts +0 -110
- package/dist-client/analysis/graph-viewer-old.js +0 -808
- package/dist-client/analysis/graph-viewer-old.js.map +0 -1
@@ -4,7 +4,7 @@ import '@material/web/fab/fab.js';
|
|
4
4
|
import gql from 'graphql-tag';
|
5
5
|
import { css, html, LitElement, nothing } from 'lit';
|
6
6
|
import { customElement, property } from 'lit/decorators.js';
|
7
|
-
import { connect } from 'pwa-helpers/connect-mixin';
|
7
|
+
import { connect } from 'pwa-helpers/connect-mixin.js';
|
8
8
|
import { subscribe } from '@operato/graphql';
|
9
9
|
import { store } from '@operato/shell';
|
10
10
|
import { ScrollbarStyles } from '@operato/styles';
|
@@ -13,6 +13,50 @@ let ScenarioInstanceLogView = class ScenarioInstanceLogView extends connect(stor
|
|
13
13
|
super(...arguments);
|
14
14
|
this.startable = false;
|
15
15
|
}
|
16
|
+
static { this.styles = [
|
17
|
+
ScrollbarStyles,
|
18
|
+
css `
|
19
|
+
:host {
|
20
|
+
display: flex;
|
21
|
+
flex-direction: column;
|
22
|
+
background-color: var(--md-sys-color-surface);
|
23
|
+
padding: var(--spacing-large);
|
24
|
+
}
|
25
|
+
|
26
|
+
:host([active]) {
|
27
|
+
padding: 0;
|
28
|
+
}
|
29
|
+
|
30
|
+
[content] {
|
31
|
+
flex: 1;
|
32
|
+
|
33
|
+
display: flex;
|
34
|
+
flex-direction: column;
|
35
|
+
overflow: auto;
|
36
|
+
|
37
|
+
font-size: var(--fontsize-small);
|
38
|
+
}
|
39
|
+
|
40
|
+
div.error {
|
41
|
+
color: #8b0000;
|
42
|
+
}
|
43
|
+
|
44
|
+
div.warn {
|
45
|
+
color: #ff6b6b;
|
46
|
+
}
|
47
|
+
|
48
|
+
span {
|
49
|
+
color: var(--md-sys-color-primary);
|
50
|
+
}
|
51
|
+
|
52
|
+
#start {
|
53
|
+
position: absolute;
|
54
|
+
bottom: 15px;
|
55
|
+
right: 16px;
|
56
|
+
text-decoration: auto;
|
57
|
+
}
|
58
|
+
`
|
59
|
+
]; }
|
16
60
|
firstUpdated() {
|
17
61
|
this.logs = [];
|
18
62
|
this.startSubscribe();
|
@@ -69,55 +113,10 @@ let ScenarioInstanceLogView = class ScenarioInstanceLogView extends connect(stor
|
|
69
113
|
});
|
70
114
|
}
|
71
115
|
async stopSubscribe() {
|
72
|
-
|
73
|
-
await ((_a = this.subscription) === null || _a === void 0 ? void 0 : _a.unsubscribe());
|
116
|
+
await this.subscription?.unsubscribe();
|
74
117
|
delete this.subscription;
|
75
118
|
}
|
76
119
|
};
|
77
|
-
ScenarioInstanceLogView.styles = [
|
78
|
-
ScrollbarStyles,
|
79
|
-
css `
|
80
|
-
:host {
|
81
|
-
display: flex;
|
82
|
-
flex-direction: column;
|
83
|
-
background-color: var(--md-sys-color-surface);
|
84
|
-
padding: var(--spacing-large);
|
85
|
-
}
|
86
|
-
|
87
|
-
:host([active]) {
|
88
|
-
padding: 0;
|
89
|
-
}
|
90
|
-
|
91
|
-
[content] {
|
92
|
-
flex: 1;
|
93
|
-
|
94
|
-
display: flex;
|
95
|
-
flex-direction: column;
|
96
|
-
overflow: auto;
|
97
|
-
|
98
|
-
font-size: var(--fontsize-small);
|
99
|
-
}
|
100
|
-
|
101
|
-
div.error {
|
102
|
-
color: #8b0000;
|
103
|
-
}
|
104
|
-
|
105
|
-
div.warn {
|
106
|
-
color: #ff6b6b;
|
107
|
-
}
|
108
|
-
|
109
|
-
span {
|
110
|
-
color: var(--md-sys-color-primary);
|
111
|
-
}
|
112
|
-
|
113
|
-
#start {
|
114
|
-
position: absolute;
|
115
|
-
bottom: 15px;
|
116
|
-
right: 16px;
|
117
|
-
text-decoration: auto;
|
118
|
-
}
|
119
|
-
`
|
120
|
-
];
|
121
120
|
__decorate([
|
122
121
|
property({ type: String }),
|
123
122
|
__metadata("design:type", String)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"scenario-instance-log-view.js","sourceRoot":"","sources":["../../client/viewparts/scenario-instance-log-view.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,0BAA0B,CAAA;AAEjC,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"scenario-instance-log-view.js","sourceRoot":"","sources":["../../client/viewparts/scenario-instance-log-view.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@material/web/fab/fab.js'\n\nimport gql from 'graphql-tag'\n\nimport { css, html, LitElement, nothing } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\nimport { connect } from 'pwa-helpers/connect-mixin.js'\n\nimport { subscribe } from '@operato/graphql'\nimport { store } from '@operato/shell'\nimport { ScrollbarStyles } from '@operato/styles'\n\n@customElement('scenario-instance-log-view')\nexport class ScenarioInstanceLogView extends connect(store)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n background-color: var(--md-sys-color-surface);\n padding: var(--spacing-large);\n }\n\n :host([active]) {\n padding: 0;\n }\n\n [content] {\n flex: 1;\n\n display: flex;\n flex-direction: column;\n overflow: auto;\n\n font-size: var(--fontsize-small);\n }\n\n div.error {\n color: #8b0000;\n }\n\n div.warn {\n color: #ff6b6b;\n }\n\n span {\n color: var(--md-sys-color-primary);\n }\n\n #start {\n position: absolute;\n bottom: 15px;\n right: 16px;\n text-decoration: auto;\n }\n `\n ]\n\n @property({ type: String }) scenarioName?: string\n @property({ type: String }) instanceName?: string\n @property({ type: Array }) logs: any\n @property({ type: Boolean }) startable: boolean = false\n\n subscription: any\n\n firstUpdated() {\n this.logs = []\n this.startSubscribe()\n }\n\n disconnectedCallback() {\n super.disconnectedCallback()\n this.stopSubscribe()\n }\n\n render() {\n const logs = this.logs || []\n\n return html`\n <div options></div>\n <div content>\n ${logs.map(\n ({ timestamp, message, level }) => html`\n <div class=\"${level}\">\n <span>${new Date(timestamp).toLocaleString()}</span> <strong>${level}</strong> ${message}\n </div>\n `\n )}\n </div>\n ${this.startable\n ? html`<md-fab id=\"start\" title=\"start\" @click=${() => this.dispatchEvent(new CustomEvent('start'))}>\n <md-icon slot=\"icon\">play_arrow</md-icon>\n </md-fab>`\n : nothing}\n `\n }\n\n async startSubscribe() {\n this.subscription = await subscribe(\n {\n query: gql`\n subscription ($instanceName: String, $scenarioName: String, $level: String) {\n log: scenarioInstanceLog(instanceName: $instanceName, scenarioName: $scenarioName, level: $level) {\n level\n message\n timestamp\n }\n }\n `,\n variables: {\n instanceName: this.instanceName,\n scenarioName: this.scenarioName\n }\n },\n {\n next: async ({ data }) => {\n var wasBottom = this.scrollHeight - this.scrollTop === this.clientHeight\n\n this.logs.push(data.log)\n this.logs.length > 100 && this.logs.shift()\n this.requestUpdate()\n\n if (wasBottom) {\n /* this is not proved yet - to keep bottom scroll position */\n await this.updateComplete\n this.scrollTop = this.scrollHeight - this.clientHeight\n }\n }\n }\n )\n }\n\n async stopSubscribe() {\n await this.subscription?.unsubscribe()\n delete this.subscription\n }\n}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import '@material/web/icon/icon.js';
|
2
2
|
import '@operato/data-grist';
|
3
|
-
import './scenario-instance-view';
|
3
|
+
import './scenario-instance-view.js';
|
4
4
|
import { LitElement } from 'lit';
|
5
5
|
declare const ScenarioInstanceMonitor_base: (new (...args: any[]) => LitElement) & typeof LitElement;
|
6
6
|
export declare class ScenarioInstanceMonitor extends ScenarioInstanceMonitor_base {
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
2
2
|
import '@material/web/icon/icon.js';
|
3
3
|
import '@operato/data-grist';
|
4
|
-
import './scenario-instance-view';
|
4
|
+
import './scenario-instance-view.js';
|
5
5
|
import gql from 'graphql-tag';
|
6
6
|
import { css, html, LitElement } from 'lit';
|
7
7
|
import { customElement, property } from 'lit/decorators.js';
|
@@ -13,78 +13,9 @@ function IS_SCENARIO_RUNNING(state) {
|
|
13
13
|
return state && state !== 'UNLOADED';
|
14
14
|
}
|
15
15
|
let ScenarioInstanceMonitor = class ScenarioInstanceMonitor extends localize(i18next)(LitElement) {
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
const { rate = 0, steps = 0, step = 0, rounds = 0 } = progress || {};
|
20
|
-
const running = IS_SCENARIO_RUNNING(state);
|
21
|
-
return html `
|
22
|
-
<div name>${instanceName}</div>
|
23
|
-
<div progress-wrap>
|
24
|
-
<div progress>
|
25
|
-
<div id="progressbar" .style="width:${rate}%;background-color:${this.color};"></div>
|
26
|
-
</div>
|
27
|
-
<div steps>${step}/${steps}</div>
|
28
|
-
</div>
|
29
|
-
<div buttons>
|
30
|
-
<span><strong>${rounds}</strong> round</span>
|
31
|
-
<md-icon @click=${e => this.showInstanceDetail()}>wysiwyg</md-icon>
|
32
|
-
<md-icon @click=${e => (running ? this.stopScenario(instance) : this.startScenario(instance))}
|
33
|
-
>${running ? 'pause' : 'play_arrow'}</md-icon
|
34
|
-
>
|
35
|
-
</div>
|
36
|
-
`;
|
37
|
-
}
|
38
|
-
async startScenario(instance) {
|
39
|
-
var response = await client.mutate({
|
40
|
-
mutation: gql `
|
41
|
-
mutation ($scenarioName: String!, $instanceName: String) {
|
42
|
-
startScenario(scenarioName: $scenarioName, instanceName: $instanceName) {
|
43
|
-
state
|
44
|
-
}
|
45
|
-
}
|
46
|
-
`,
|
47
|
-
variables: {
|
48
|
-
scenarioName: instance.scenarioName,
|
49
|
-
instanceName: instance.instanceName
|
50
|
-
}
|
51
|
-
});
|
52
|
-
notify({
|
53
|
-
level: 'info',
|
54
|
-
message: `${IS_SCENARIO_RUNNING(response.data.startScenario.state) ? 'success' : 'fail'} to start scenario : ${instance.scenarioName}`
|
55
|
-
});
|
56
|
-
}
|
57
|
-
async stopScenario(instance) {
|
58
|
-
var response = await client.mutate({
|
59
|
-
mutation: gql `
|
60
|
-
mutation ($instanceName: String!) {
|
61
|
-
stopScenario(instanceName: $instanceName) {
|
62
|
-
state
|
63
|
-
}
|
64
|
-
}
|
65
|
-
`,
|
66
|
-
variables: {
|
67
|
-
instanceName: instance.instanceName
|
68
|
-
}
|
69
|
-
});
|
70
|
-
notify({
|
71
|
-
level: 'info',
|
72
|
-
message: `${IS_SCENARIO_RUNNING(response.data.stopScenario.state) ? 'fail' : 'success'} to stop instance : ${instance.instanceName}`
|
73
|
-
});
|
74
|
-
}
|
75
|
-
async showInstanceDetail() {
|
76
|
-
const { instanceName, scenarioName } = this.instance;
|
77
|
-
openPopup(html `
|
78
|
-
<scenario-instance-view .instanceName=${instanceName} .scenarioName=${scenarioName}></scenario-instance-view>
|
79
|
-
`, {
|
80
|
-
size: 'large',
|
81
|
-
title: `${i18next.t('title.scenario-instance')}`
|
82
|
-
});
|
83
|
-
}
|
84
|
-
};
|
85
|
-
ScenarioInstanceMonitor.styles = [
|
86
|
-
ScrollbarStyles,
|
87
|
-
css `
|
16
|
+
static { this.styles = [
|
17
|
+
ScrollbarStyles,
|
18
|
+
css `
|
88
19
|
:host {
|
89
20
|
display: block;
|
90
21
|
overflow: hidden;
|
@@ -137,10 +68,12 @@ ScenarioInstanceMonitor.styles = [
|
|
137
68
|
}
|
138
69
|
|
139
70
|
[buttons] {
|
71
|
+
display: flex;
|
72
|
+
flex-direction: row-reverse;
|
140
73
|
--md-icon-size: 18px;
|
141
74
|
|
142
75
|
border-top: var(--border-dim-color);
|
143
|
-
padding: var(--spacing-
|
76
|
+
padding: var(--spacing-medium) 0 0 0;
|
144
77
|
text-align: right;
|
145
78
|
}
|
146
79
|
|
@@ -157,7 +90,76 @@ ScenarioInstanceMonitor.styles = [
|
|
157
90
|
}
|
158
91
|
}
|
159
92
|
`
|
160
|
-
];
|
93
|
+
]; }
|
94
|
+
render() {
|
95
|
+
var instance = this.instance;
|
96
|
+
const { instanceName, progress, message, state } = instance;
|
97
|
+
const { rate = 0, steps = 0, step = 0, rounds = 0 } = progress || {};
|
98
|
+
const running = IS_SCENARIO_RUNNING(state);
|
99
|
+
return html `
|
100
|
+
<div name>${instanceName}</div>
|
101
|
+
<div progress-wrap>
|
102
|
+
<div progress>
|
103
|
+
<div id="progressbar" style="width:${rate}%;background-color:${this.color};"></div>
|
104
|
+
</div>
|
105
|
+
<div steps>${step}/${steps}</div>
|
106
|
+
</div>
|
107
|
+
<div buttons>
|
108
|
+
<md-icon @click=${e => (running ? this.stopScenario(instance) : this.startScenario(instance))}
|
109
|
+
>${running ? 'pause' : 'play_arrow'}</md-icon
|
110
|
+
>
|
111
|
+
<md-icon @click=${e => this.showInstanceDetail()}>wysiwyg</md-icon>
|
112
|
+
<span><strong>${rounds}</strong> round</span>
|
113
|
+
</div>
|
114
|
+
`;
|
115
|
+
}
|
116
|
+
async startScenario(instance) {
|
117
|
+
var response = await client.mutate({
|
118
|
+
mutation: gql `
|
119
|
+
mutation ($scenarioName: String!, $instanceName: String) {
|
120
|
+
startScenario(scenarioName: $scenarioName, instanceName: $instanceName) {
|
121
|
+
state
|
122
|
+
}
|
123
|
+
}
|
124
|
+
`,
|
125
|
+
variables: {
|
126
|
+
scenarioName: instance.scenarioName,
|
127
|
+
instanceName: instance.instanceName
|
128
|
+
}
|
129
|
+
});
|
130
|
+
notify({
|
131
|
+
level: 'info',
|
132
|
+
message: `${IS_SCENARIO_RUNNING(response.data.startScenario.state) ? 'success' : 'fail'} to start scenario : ${instance.scenarioName}`
|
133
|
+
});
|
134
|
+
}
|
135
|
+
async stopScenario(instance) {
|
136
|
+
var response = await client.mutate({
|
137
|
+
mutation: gql `
|
138
|
+
mutation ($instanceName: String!) {
|
139
|
+
stopScenario(instanceName: $instanceName) {
|
140
|
+
state
|
141
|
+
}
|
142
|
+
}
|
143
|
+
`,
|
144
|
+
variables: {
|
145
|
+
instanceName: instance.instanceName
|
146
|
+
}
|
147
|
+
});
|
148
|
+
notify({
|
149
|
+
level: 'info',
|
150
|
+
message: `${IS_SCENARIO_RUNNING(response.data.stopScenario.state) ? 'fail' : 'success'} to stop instance : ${instance.instanceName}`
|
151
|
+
});
|
152
|
+
}
|
153
|
+
async showInstanceDetail() {
|
154
|
+
const { instanceName, scenarioName } = this.instance;
|
155
|
+
openPopup(html `
|
156
|
+
<scenario-instance-view .instanceName=${instanceName} .scenarioName=${scenarioName}></scenario-instance-view>
|
157
|
+
`, {
|
158
|
+
size: 'large',
|
159
|
+
title: `${i18next.t('title.scenario-instance')}`
|
160
|
+
});
|
161
|
+
}
|
162
|
+
};
|
161
163
|
__decorate([
|
162
164
|
property({ type: Object }),
|
163
165
|
__metadata("design:type", Object)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"scenario-instance-monitor.js","sourceRoot":"","sources":["../../client/viewparts/scenario-instance-monitor.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,qBAAqB,CAAA;AAC5B,OAAO,
|
1
|
+
{"version":3,"file":"scenario-instance-monitor.js","sourceRoot":"","sources":["../../client/viewparts/scenario-instance-monitor.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/data-grist'\nimport './scenario-instance-view.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { notify, openPopup } from '@operato/layout'\nimport { ScrollbarStyles } from '@operato/styles'\n\nfunction IS_SCENARIO_RUNNING(state) {\n return state && state !== 'UNLOADED'\n}\n\n@customElement('scenario-instance-monitor')\nexport class ScenarioInstanceMonitor extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: block;\n overflow: hidden;\n position: relative;\n padding: var(--spacing-small);\n color: var(--md-sys-color-secondary);\n }\n\n [running] {\n background-color: lightgreen;\n }\n\n [name] {\n font-size: var(--fontsize-default);\n font-weight: bold;\n }\n\n [progress] {\n display: block;\n position: relative;\n\n width: 100%;\n margin: 2px;\n padding: 2px;\n box-sizing: border-box;\n\n border: var(--border-dim-color);\n border-radius: 10px;\n background-color: var(--md-sys-color-surface);\n }\n [progress-wrap] {\n display: flex;\n flex-direction: row;\n margin: 4px 0;\n }\n\n [running] [progress] {\n background-color: var(--md-sys-color-surface-variant);\n }\n\n [steps] {\n padding: 0 0 0 var(--spacing-small);\n }\n\n #progressbar {\n height: 100%;\n text-align: left;\n border-radius: 5px;\n animation: width 1s linear ease-out;\n }\n\n [buttons] {\n display: flex;\n flex-direction: row-reverse;\n --md-icon-size: 18px;\n\n border-top: var(--border-dim-color);\n padding: var(--spacing-medium) 0 0 0;\n text-align: right;\n }\n\n [buttons] md-icon {\n color: var(--md-sys-color-primary);\n }\n\n @keyframes width {\n 0% {\n width: 0;\n }\n 100% {\n width: auto;\n }\n }\n `\n ]\n\n @property({ type: Object }) instance: any\n @property({ type: String }) color?: string\n\n render() {\n var instance = this.instance\n const { instanceName, progress, message, state } = instance\n const { rate = 0, steps = 0, step = 0, rounds = 0 } = progress || {}\n\n const running = IS_SCENARIO_RUNNING(state)\n\n return html`\n <div name>${instanceName}</div>\n <div progress-wrap>\n <div progress>\n <div id=\"progressbar\" style=\"width:${rate}%;background-color:${this.color};\"></div>\n </div>\n <div steps>${step}/${steps}</div>\n </div>\n <div buttons>\n <md-icon @click=${e => (running ? this.stopScenario(instance) : this.startScenario(instance))}\n >${running ? 'pause' : 'play_arrow'}</md-icon\n >\n <md-icon @click=${e => this.showInstanceDetail()}>wysiwyg</md-icon>\n <span><strong>${rounds}</strong> round</span>\n </div>\n `\n }\n\n async startScenario(instance) {\n var response = await client.mutate({\n mutation: gql`\n mutation ($scenarioName: String!, $instanceName: String) {\n startScenario(scenarioName: $scenarioName, instanceName: $instanceName) {\n state\n }\n }\n `,\n variables: {\n scenarioName: instance.scenarioName,\n instanceName: instance.instanceName\n }\n })\n\n notify({\n level: 'info',\n message: `${IS_SCENARIO_RUNNING(response.data.startScenario.state) ? 'success' : 'fail'} to start scenario : ${instance.scenarioName}`\n })\n }\n\n async stopScenario(instance) {\n var response = await client.mutate({\n mutation: gql`\n mutation ($instanceName: String!) {\n stopScenario(instanceName: $instanceName) {\n state\n }\n }\n `,\n variables: {\n instanceName: instance.instanceName\n }\n })\n\n notify({\n level: 'info',\n message: `${IS_SCENARIO_RUNNING(response.data.stopScenario.state) ? 'fail' : 'success'} to stop instance : ${instance.instanceName}`\n })\n }\n\n async showInstanceDetail() {\n const { instanceName, scenarioName } = this.instance\n openPopup(\n html`\n <scenario-instance-view .instanceName=${instanceName} .scenarioName=${scenarioName}></scenario-instance-view>\n `,\n {\n size: 'large',\n title: `${i18next.t('title.scenario-instance')}`\n }\n )\n }\n}\n"]}
|
@@ -1,13 +1,119 @@
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
2
|
-
import './scenario-instance-log-view';
|
2
|
+
import './scenario-instance-log-view.js';
|
3
3
|
import gql from 'graphql-tag';
|
4
4
|
import { css, html, LitElement } from 'lit';
|
5
5
|
import { customElement, property } from 'lit/decorators.js';
|
6
|
-
import { connect } from 'pwa-helpers/connect-mixin';
|
6
|
+
import { connect } from 'pwa-helpers/connect-mixin.js';
|
7
7
|
import { subscribe } from '@operato/graphql';
|
8
8
|
import { store } from '@operato/shell';
|
9
9
|
import { ScrollbarStyles } from '@operato/styles';
|
10
10
|
let ScenarioInstanceView = class ScenarioInstanceView extends connect(store)(LitElement) {
|
11
|
+
static { this.styles = [
|
12
|
+
ScrollbarStyles,
|
13
|
+
css `
|
14
|
+
:host {
|
15
|
+
display: flex;
|
16
|
+
flex-direction: column;
|
17
|
+
background-color: var(--md-sys-color-background);
|
18
|
+
}
|
19
|
+
|
20
|
+
[diagram] {
|
21
|
+
flex: 1;
|
22
|
+
height: 100%;
|
23
|
+
border: none;
|
24
|
+
}
|
25
|
+
|
26
|
+
[content] {
|
27
|
+
flex: 1;
|
28
|
+
|
29
|
+
display: flex;
|
30
|
+
flex-direction: column;
|
31
|
+
overflow: hidden;
|
32
|
+
}
|
33
|
+
|
34
|
+
[tab] {
|
35
|
+
display: flex;
|
36
|
+
}
|
37
|
+
|
38
|
+
[tab] span {
|
39
|
+
display: inline;
|
40
|
+
padding: var(--spacing-large) var(--spacing-large) var(--spacing-small) var(--spacing-large);
|
41
|
+
border-bottom: 3px solid transparent;
|
42
|
+
color: var(--md-sys-color-secondary);
|
43
|
+
text-transform: capitalize;
|
44
|
+
}
|
45
|
+
|
46
|
+
[tab] span[active] {
|
47
|
+
border-color: var(--md-sys-color-primary);
|
48
|
+
font-weight: bold;
|
49
|
+
}
|
50
|
+
|
51
|
+
[detail] {
|
52
|
+
flex: 1;
|
53
|
+
background-color: var(--md-sys-color-surface);
|
54
|
+
border-top: var(--border-dim-color);
|
55
|
+
overflow: hidden;
|
56
|
+
padding: var(--spacing-large);
|
57
|
+
}
|
58
|
+
|
59
|
+
[detail] > * {
|
60
|
+
display: none;
|
61
|
+
width: 100%;
|
62
|
+
height: 100%;
|
63
|
+
color: var(--md-sys-color-secondary);
|
64
|
+
}
|
65
|
+
|
66
|
+
[detail] > [active] {
|
67
|
+
display: flex;
|
68
|
+
overflow: auto;
|
69
|
+
}
|
70
|
+
|
71
|
+
pre {
|
72
|
+
margin: 0;
|
73
|
+
}
|
74
|
+
|
75
|
+
[detail] ul {
|
76
|
+
margin: 0;
|
77
|
+
padding: 0;
|
78
|
+
flex: 1;
|
79
|
+
list-style: inside '- ';
|
80
|
+
}
|
81
|
+
[detail] li {
|
82
|
+
padding: var(--spacing-medium) var(--spacing-small) var(--spacing-small) var(--spacing-small);
|
83
|
+
border-bottom: var(--border-dim-color);
|
84
|
+
}
|
85
|
+
|
86
|
+
li[active] {
|
87
|
+
font-weight: bold;
|
88
|
+
}
|
89
|
+
|
90
|
+
[value] {
|
91
|
+
flex: 1;
|
92
|
+
overflow: auto;
|
93
|
+
padding: var(--spacing-large);
|
94
|
+
}
|
95
|
+
scenario-instance-log-view [active] {
|
96
|
+
padding: 0;
|
97
|
+
}
|
98
|
+
|
99
|
+
@media only screen and (max-width: 460px) {
|
100
|
+
[info][active] {
|
101
|
+
display: block;
|
102
|
+
}
|
103
|
+
[detail] {
|
104
|
+
padding: var(--spacing-medium);
|
105
|
+
overflow: auto;
|
106
|
+
}
|
107
|
+
[detail] > * {
|
108
|
+
height: auto;
|
109
|
+
}
|
110
|
+
[diagram] {
|
111
|
+
width: 100%;
|
112
|
+
min-height: 500px;
|
113
|
+
}
|
114
|
+
}
|
115
|
+
`
|
116
|
+
]; }
|
11
117
|
render() {
|
12
118
|
const tab = this.tab || 'info';
|
13
119
|
const { scenarioName, instanceName, description, state, progress, variables, data, message } = this.instance || {};
|
@@ -117,117 +223,10 @@ let ScenarioInstanceView = class ScenarioInstanceView extends connect(store)(Lit
|
|
117
223
|
});
|
118
224
|
}
|
119
225
|
async stopSubscribe() {
|
120
|
-
|
121
|
-
await ((_a = this.subscription) === null || _a === void 0 ? void 0 : _a.unsubscribe());
|
226
|
+
await this.subscription?.unsubscribe();
|
122
227
|
delete this.subscription;
|
123
228
|
}
|
124
229
|
};
|
125
|
-
ScenarioInstanceView.styles = [
|
126
|
-
ScrollbarStyles,
|
127
|
-
css `
|
128
|
-
:host {
|
129
|
-
display: flex;
|
130
|
-
flex-direction: column;
|
131
|
-
background-color: var(--md-sys-color-background);
|
132
|
-
}
|
133
|
-
|
134
|
-
[diagram] {
|
135
|
-
flex: 1;
|
136
|
-
height: 100%;
|
137
|
-
border: none;
|
138
|
-
}
|
139
|
-
|
140
|
-
[content] {
|
141
|
-
flex: 1;
|
142
|
-
|
143
|
-
display: flex;
|
144
|
-
flex-direction: column;
|
145
|
-
overflow: hidden;
|
146
|
-
}
|
147
|
-
|
148
|
-
[tab] {
|
149
|
-
display: flex;
|
150
|
-
}
|
151
|
-
|
152
|
-
[tab] span {
|
153
|
-
display: inline;
|
154
|
-
padding: var(--spacing-large) var(--spacing-large) var(--spacing-small) var(--spacing-large);
|
155
|
-
border-bottom: 3px solid transparent;
|
156
|
-
color: var(--md-sys-color-secondary);
|
157
|
-
text-transform: capitalize;
|
158
|
-
}
|
159
|
-
|
160
|
-
[tab] span[active] {
|
161
|
-
border-color: var(--md-sys-color-primary);
|
162
|
-
font-weight: bold;
|
163
|
-
}
|
164
|
-
|
165
|
-
[detail] {
|
166
|
-
flex: 1;
|
167
|
-
background-color: var(--md-sys-color-surface);
|
168
|
-
border-top: var(--border-dim-color);
|
169
|
-
overflow: hidden;
|
170
|
-
padding: var(--spacing-large);
|
171
|
-
}
|
172
|
-
|
173
|
-
[detail] > * {
|
174
|
-
display: none;
|
175
|
-
width: 100%;
|
176
|
-
height: 100%;
|
177
|
-
color: var(--md-sys-color-secondary);
|
178
|
-
}
|
179
|
-
|
180
|
-
[detail] > [active] {
|
181
|
-
display: flex;
|
182
|
-
overflow: auto;
|
183
|
-
}
|
184
|
-
|
185
|
-
pre {
|
186
|
-
margin: 0;
|
187
|
-
}
|
188
|
-
|
189
|
-
[detail] ul {
|
190
|
-
margin: 0;
|
191
|
-
padding: 0;
|
192
|
-
flex: 1;
|
193
|
-
list-style: inside '- ';
|
194
|
-
}
|
195
|
-
[detail] li {
|
196
|
-
padding: var(--spacing-medium) var(--spacing-small) var(--spacing-small) var(--spacing-small);
|
197
|
-
border-bottom: var(--border-dim-color);
|
198
|
-
}
|
199
|
-
|
200
|
-
li[active] {
|
201
|
-
font-weight: bold;
|
202
|
-
}
|
203
|
-
|
204
|
-
[value] {
|
205
|
-
flex: 1;
|
206
|
-
overflow: auto;
|
207
|
-
padding: var(--spacing-large);
|
208
|
-
}
|
209
|
-
scenario-instance-log-view [active] {
|
210
|
-
padding: 0;
|
211
|
-
}
|
212
|
-
|
213
|
-
@media only screen and (max-width: 460px) {
|
214
|
-
[info][active] {
|
215
|
-
display: block;
|
216
|
-
}
|
217
|
-
[detail] {
|
218
|
-
padding: var(--spacing-medium);
|
219
|
-
overflow: auto;
|
220
|
-
}
|
221
|
-
[detail] > * {
|
222
|
-
height: auto;
|
223
|
-
}
|
224
|
-
[diagram] {
|
225
|
-
width: 100%;
|
226
|
-
min-height: 500px;
|
227
|
-
}
|
228
|
-
}
|
229
|
-
`
|
230
|
-
];
|
231
230
|
__decorate([
|
232
231
|
property({ type: String }),
|
233
232
|
__metadata("design:type", String)
|