@operato/process 1.5.25 → 1.5.26
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/CHANGELOG.md +9 -0
- package/dist/src/ox-process-list.js +4 -3
- package/dist/src/ox-process-list.js.map +1 -1
- package/dist/src/ox-process-template-list.d.ts +108 -0
- package/dist/src/ox-process-template-list.js +242 -0
- package/dist/src/ox-process-template-list.js.map +1 -0
- package/dist/src/selector/ox-process-creation-card.js +4 -2
- package/dist/src/selector/ox-process-creation-card.js.map +1 -1
- package/dist/src/selector/ox-process-selector.d.ts +1 -1
- package/dist/src/selector/ox-process-selector.js +4 -4
- package/dist/src/selector/ox-process-selector.js.map +1 -1
- package/dist/src/selector/process-creation-popup.d.ts +4 -1
- package/dist/src/selector/process-creation-popup.js +62 -24
- package/dist/src/selector/process-creation-popup.js.map +1 -1
- package/dist/src/types.d.ts +1 -0
- package/dist/src/types.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/ox-process-list.ts +5 -3
- package/src/ox-process-template-list.ts +265 -0
- package/src/selector/ox-process-creation-card.ts +4 -2
- package/src/selector/ox-process-selector.ts +10 -8
- package/src/selector/process-creation-popup.ts +65 -26
- package/src/types.ts +1 -0
|
@@ -3,7 +3,9 @@ import '@material/mwc-textarea';
|
|
|
3
3
|
import '@material/mwc-select';
|
|
4
4
|
import '@material/mwc-list/mwc-list-item';
|
|
5
5
|
import '@material/mwc-button';
|
|
6
|
+
import '../ox-process-template-list';
|
|
6
7
|
import { LitElement } from 'lit';
|
|
8
|
+
import { OxProcessTemplateList } from '../ox-process-template-list';
|
|
7
9
|
declare const ProcessCreationPopup_base: (new (...args: any[]) => LitElement) & typeof LitElement;
|
|
8
10
|
export declare class ProcessCreationPopup extends ProcessCreationPopup_base {
|
|
9
11
|
static get styles(): import("lit").CSSResult[];
|
|
@@ -12,8 +14,9 @@ export declare class ProcessCreationPopup extends ProcessCreationPopup_base {
|
|
|
12
14
|
id: string;
|
|
13
15
|
name: string;
|
|
14
16
|
}[];
|
|
17
|
+
processTemplateList: OxProcessTemplateList;
|
|
15
18
|
render(): import("lit-html").TemplateResult<1>;
|
|
16
19
|
firstUpdated(): void;
|
|
17
|
-
onClickSubmit(): void
|
|
20
|
+
onClickSubmit(): Promise<void>;
|
|
18
21
|
}
|
|
19
22
|
export {};
|
|
@@ -4,8 +4,9 @@ import '@material/mwc-textarea';
|
|
|
4
4
|
import '@material/mwc-select';
|
|
5
5
|
import '@material/mwc-list/mwc-list-item';
|
|
6
6
|
import '@material/mwc-button';
|
|
7
|
+
import '../ox-process-template-list';
|
|
7
8
|
import { css, html, LitElement } from 'lit';
|
|
8
|
-
import { customElement, property } from 'lit/decorators.js';
|
|
9
|
+
import { customElement, property, query } from 'lit/decorators.js';
|
|
9
10
|
import { i18next, localize } from '@operato/i18n';
|
|
10
11
|
let ProcessCreationPopup = class ProcessCreationPopup extends localize(i18next)(LitElement) {
|
|
11
12
|
static get styles() {
|
|
@@ -14,24 +15,46 @@ let ProcessCreationPopup = class ProcessCreationPopup extends localize(i18next)(
|
|
|
14
15
|
:host {
|
|
15
16
|
display: flex;
|
|
16
17
|
flex-direction: column;
|
|
17
|
-
|
|
18
|
+
gap: 10px;
|
|
18
19
|
padding: 10px;
|
|
20
|
+
|
|
19
21
|
background-color: white;
|
|
20
22
|
}
|
|
21
23
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
[body] {
|
|
25
|
+
flex: 1;
|
|
26
|
+
|
|
27
|
+
display: flex;
|
|
28
|
+
flex-direction: row;
|
|
29
|
+
gap: 10px;
|
|
30
|
+
|
|
31
|
+
overflow: hidden;
|
|
24
32
|
}
|
|
25
33
|
|
|
26
34
|
[content] {
|
|
27
35
|
flex: 1;
|
|
36
|
+
|
|
28
37
|
display: flex;
|
|
29
38
|
flex-direction: column;
|
|
39
|
+
gap: 10px;
|
|
40
|
+
|
|
30
41
|
overflow: auto;
|
|
31
42
|
}
|
|
32
43
|
|
|
33
|
-
[content] >
|
|
34
|
-
|
|
44
|
+
[content] > mwc-textarea {
|
|
45
|
+
flex: 1;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
[templates] {
|
|
49
|
+
flex: 2;
|
|
50
|
+
display: flex;
|
|
51
|
+
flex-direction: column;
|
|
52
|
+
overflow: hidden;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
[templates] > ox-process-template-list {
|
|
56
|
+
flex: 1;
|
|
57
|
+
overflow: hidden;
|
|
35
58
|
}
|
|
36
59
|
`
|
|
37
60
|
];
|
|
@@ -39,22 +62,31 @@ let ProcessCreationPopup = class ProcessCreationPopup extends localize(i18next)(
|
|
|
39
62
|
render() {
|
|
40
63
|
var groups = this.groups || [];
|
|
41
64
|
return html `
|
|
42
|
-
<div
|
|
43
|
-
<
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
65
|
+
<div body>
|
|
66
|
+
<div content>
|
|
67
|
+
<mwc-textfield label=${String(i18next.t('label.name'))} name="name" required field-name></mwc-textfield>
|
|
68
|
+
<mwc-textarea
|
|
69
|
+
label=${String(i18next.t('label.description'))}
|
|
70
|
+
name="description"
|
|
71
|
+
field-description
|
|
72
|
+
></mwc-textarea>
|
|
73
|
+
<mwc-select
|
|
74
|
+
label=${String(i18next.t('label.group'))}
|
|
75
|
+
field-group
|
|
76
|
+
helper="If there is no group to choose, you can leave it empty."
|
|
77
|
+
>
|
|
78
|
+
${groups.map(group => html `
|
|
79
|
+
<mwc-list-item value=${group.id} ?selected=${this.defaultGroup == group.id}
|
|
80
|
+
>${group.name}</mwc-list-item
|
|
81
|
+
>
|
|
82
|
+
`)}
|
|
83
|
+
</mwc-select>
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<div templates>
|
|
87
|
+
<div>${i18next.t('label.process-template')}</div>
|
|
88
|
+
<ox-process-template-list></ox-process-template-list>
|
|
89
|
+
</div>
|
|
58
90
|
</div>
|
|
59
91
|
|
|
60
92
|
<mwc-button
|
|
@@ -71,7 +103,7 @@ let ProcessCreationPopup = class ProcessCreationPopup extends localize(i18next)(
|
|
|
71
103
|
(_a = this.renderRoot.querySelector('mwc-textfield')) === null || _a === void 0 ? void 0 : _a.focus();
|
|
72
104
|
}, 100);
|
|
73
105
|
}
|
|
74
|
-
onClickSubmit() {
|
|
106
|
+
async onClickSubmit() {
|
|
75
107
|
var [name, description, groupId] = ['name', 'description', 'group'].map(attr => {
|
|
76
108
|
var _a;
|
|
77
109
|
return (_a = this.renderRoot.querySelector(`[field-${attr}]`)) === null || _a === void 0 ? void 0 : _a.value;
|
|
@@ -79,11 +111,14 @@ let ProcessCreationPopup = class ProcessCreationPopup extends localize(i18next)(
|
|
|
79
111
|
if (!name) {
|
|
80
112
|
return;
|
|
81
113
|
}
|
|
114
|
+
const template = await this.processTemplateList.getSelected();
|
|
82
115
|
this.dispatchEvent(new CustomEvent('create-process', {
|
|
83
116
|
detail: {
|
|
84
117
|
name,
|
|
85
118
|
description,
|
|
86
|
-
groupId
|
|
119
|
+
groupId,
|
|
120
|
+
model: template === null || template === void 0 ? void 0 : template.model,
|
|
121
|
+
thumbnail: template === null || template === void 0 ? void 0 : template.thumbnail
|
|
87
122
|
}
|
|
88
123
|
}));
|
|
89
124
|
}
|
|
@@ -94,6 +129,9 @@ __decorate([
|
|
|
94
129
|
__decorate([
|
|
95
130
|
property({ type: Array })
|
|
96
131
|
], ProcessCreationPopup.prototype, "groups", void 0);
|
|
132
|
+
__decorate([
|
|
133
|
+
query('ox-process-template-list')
|
|
134
|
+
], ProcessCreationPopup.prototype, "processTemplateList", void 0);
|
|
97
135
|
ProcessCreationPopup = __decorate([
|
|
98
136
|
customElement('process-creation-popup')
|
|
99
137
|
], ProcessCreationPopup);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-creation-popup.js","sourceRoot":"","sources":["../../../src/selector/process-creation-popup.ts"],"names":[],"mappings":";AAAA,OAAO,yBAAyB,CAAA;AAChC,OAAO,wBAAwB,CAAA;AAC/B,OAAO,sBAAsB,CAAA;AAC7B,OAAO,kCAAkC,CAAA;AACzC,OAAO,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"process-creation-popup.js","sourceRoot":"","sources":["../../../src/selector/process-creation-popup.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/mwc-textfield'\nimport '@material/mwc-textarea'\nimport '@material/mwc-select'\nimport '@material/mwc-list/mwc-list-item'\nimport '@material/mwc-button'\nimport '../ox-process-template-list'\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { OxProcessTemplateList } from '../ox-process-template-list'\n\n@customElement('process-creation-popup')\nexport class ProcessCreationPopup extends localize(i18next)(LitElement) {\n static get styles() {\n return [\n css`\n :host {\n display: flex;\n flex-direction: column;\n gap: 10px;\n padding: 10px;\n\n background-color: white;\n }\n\n [body] {\n flex: 1;\n\n display: flex;\n flex-direction: row;\n gap: 10px;\n\n overflow: hidden;\n }\n\n [content] {\n flex: 1;\n\n display: flex;\n flex-direction: column;\n gap: 10px;\n\n overflow: auto;\n }\n\n [content] > mwc-textarea {\n flex: 1;\n }\n\n [templates] {\n flex: 2;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n }\n\n [templates] > ox-process-template-list {\n flex: 1;\n overflow: hidden;\n }\n `\n ]\n }\n\n @property({ type: String }) defaultGroup?: string\n @property({ type: Array }) groups?: { id: string; name: string }[]\n\n @query('ox-process-template-list') processTemplateList!: OxProcessTemplateList\n\n render() {\n var groups = this.groups || []\n\n return html`\n <div body>\n <div content>\n <mwc-textfield label=${String(i18next.t('label.name'))} name=\"name\" required field-name></mwc-textfield>\n <mwc-textarea\n label=${String(i18next.t('label.description'))}\n name=\"description\"\n field-description\n ></mwc-textarea>\n <mwc-select\n label=${String(i18next.t('label.group'))}\n field-group\n helper=\"If there is no group to choose, you can leave it empty.\"\n >\n ${groups.map(\n group => html`\n <mwc-list-item value=${group.id} ?selected=${this.defaultGroup == group.id}\n >${group.name}</mwc-list-item\n >\n `\n )}\n </mwc-select>\n </div>\n\n <div templates>\n <div>${i18next.t('label.process-template')}</div>\n <ox-process-template-list></ox-process-template-list>\n </div>\n </div>\n\n <mwc-button\n raised\n label=${String(i18next.t('button.create'))}\n @click=${(e: MouseEvent) => this.onClickSubmit()}\n ></mwc-button>\n `\n }\n\n firstUpdated() {\n setTimeout(() => {\n ;(this.renderRoot.querySelector('mwc-textfield') as any)?.focus()\n }, 100)\n }\n\n async onClickSubmit() {\n var [name, description, groupId] = ['name', 'description', 'group'].map(attr => {\n return (this.renderRoot.querySelector(`[field-${attr}]`) as any)?.value\n })\n\n if (!name) {\n return\n }\n\n const template = await this.processTemplateList.getSelected()\n\n this.dispatchEvent(\n new CustomEvent('create-process', {\n detail: {\n name,\n description,\n groupId,\n model: template?.model,\n thumbnail: template?.thumbnail\n }\n })\n )\n }\n}\n"]}
|
package/dist/src/types.d.ts
CHANGED
package/dist/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import { Model } from '@hatiolab/things-scene'\n\nexport interface PalletItem {\n type: string\n description: string\n icon: HTMLImageElement\n group: string | string[]\n model: Model\n}\n\nexport interface Pallet {\n name: string\n templates: PalletItem[]\n}\n\nexport type ComponentTemplate = {\n type: string\n description: string\n group:\n | 'line'\n | 'shape'\n | 'textAndMedia'\n | 'chartAndGauge'\n | 'table'\n | 'container'\n | 'dataSource'\n | 'IoT'\n | '3D'\n | 'warehouse'\n | 'form'\n | 'etc'\n | string\n icon: any\n model: Model\n}\n\nexport type ComponentGroup = {\n name: string\n description: string\n icon: string\n templates: ComponentTemplate[]\n}\n\nexport type Process = {\n id?: string\n name?: string\n description?: string\n model?: any\n groupId?: string\n}\n\nexport type ProcessGroup = {\n id?: string\n name?: string\n description?: string\n}\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import { Model } from '@hatiolab/things-scene'\n\nexport interface PalletItem {\n type: string\n description: string\n icon: HTMLImageElement\n group: string | string[]\n model: Model\n}\n\nexport interface Pallet {\n name: string\n templates: PalletItem[]\n}\n\nexport type ComponentTemplate = {\n type: string\n description: string\n group:\n | 'line'\n | 'shape'\n | 'textAndMedia'\n | 'chartAndGauge'\n | 'table'\n | 'container'\n | 'dataSource'\n | 'IoT'\n | '3D'\n | 'warehouse'\n | 'form'\n | 'etc'\n | string\n icon: any\n model: Model\n}\n\nexport type ComponentGroup = {\n name: string\n description: string\n icon: string\n templates: ComponentTemplate[]\n}\n\nexport type Process = {\n id?: string\n name?: string\n description?: string\n model?: any\n groupId?: string\n thumbnail?: string\n}\n\nexport type ProcessGroup = {\n id?: string\n name?: string\n description?: string\n}\n"]}
|