@genexus/genexus-ide-ui 0.0.140 → 0.0.142
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/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +78 -0
- package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +123 -0
- package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +567 -0
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +3 -1
- package/dist/collection/components/_helpers/entity-selector/entity-selector.css +2 -2
- package/dist/collection/components/_helpers/entity-selector/entity-selector.js.map +1 -1
- package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.css +8 -10
- package/dist/collection/components/bpm/export-xpdl/export-xpdl.css +574 -0
- package/dist/collection/components/bpm/export-xpdl/export-xpdl.js +238 -0
- package/dist/collection/components/bpm/export-xpdl/export-xpdl.js.map +1 -0
- package/dist/collection/components/bpm/export-xpdl/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.en.json +19 -0
- package/dist/collection/components/bpm/objects-selector/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.en.json +17 -0
- package/dist/collection/components/bpm/objects-selector/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.ja.json +3 -0
- package/dist/collection/components/bpm/objects-selector/helpers.js +17 -0
- package/dist/collection/components/bpm/objects-selector/helpers.js.map +1 -0
- package/dist/collection/components/bpm/objects-selector/objects-selector.css +574 -0
- package/dist/collection/components/bpm/objects-selector/objects-selector.js +259 -0
- package/dist/collection/components/bpm/objects-selector/objects-selector.js.map +1 -0
- package/dist/collection/components/{import-from-design/import-from-design.js → design-import/design-import.js} +115 -64
- package/dist/collection/components/design-import/design-import.js.map +1 -0
- package/dist/collection/components/{import-from-design/gx-ide-assets/import-from-design/langs/import-from-design.lang.en.json → design-import/gx-ide-assets/design-import/langs/design-import.lang.en.json} +2 -1
- package/dist/components/entity-selector.js +1 -1
- package/dist/components/entity-selector.js.map +1 -1
- package/dist/components/gx-ide-bpm-export-xpdl.d.ts +11 -0
- package/dist/components/gx-ide-bpm-export-xpdl.js +155 -0
- package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -0
- package/dist/components/gx-ide-bpm-objects-selector.d.ts +11 -0
- package/dist/components/gx-ide-bpm-objects-selector.js +8 -0
- package/dist/components/gx-ide-bpm-objects-selector.js.map +1 -0
- package/dist/components/gx-ide-design-import.d.ts +11 -0
- package/dist/components/{gx-ide-import-from-design.js → gx-ide-design-import.js} +95 -49
- package/dist/components/gx-ide-design-import.js.map +1 -0
- package/dist/components/list-selector-item.js +1 -1
- package/dist/components/list-selector-item.js.map +1 -1
- package/dist/components/objects-selector.js +189 -0
- package/dist/components/objects-selector.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +74 -0
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -0
- package/dist/esm/gx-ide-bpm-objects-selector.entry.js +119 -0
- package/dist/esm/gx-ide-bpm-objects-selector.entry.js.map +1 -0
- package/dist/esm/gx-ide-design-import.entry.js +563 -0
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -0
- package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
- package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.en.json +19 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.zh.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.en.json +17 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.ja.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.zh.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/timer-duration.lang.ja.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/timer-duration.lang.zh.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/{import-from-design/langs/import-from-design.lang.en.json → design-import/langs/design-import.lang.en.json} +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.ja.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.zh.json +3 -0
- package/dist/genexus-ide-ui/{p-972b18a0.entry.js → p-0e47720b.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-0e47720b.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-7364d5d1.entry.js +109 -0
- package/dist/genexus-ide-ui/p-7364d5d1.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-832a8a94.entry.js +160 -0
- package/dist/genexus-ide-ui/p-832a8a94.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9bf62c5c.entry.js → p-c46c7974.entry.js} +244 -175
- package/dist/genexus-ide-ui/p-c46c7974.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-3345a1bc.entry.js → p-e07809d0.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-e07809d0.entry.js.map +1 -0
- package/dist/types/components/bpm/export-xpdl/export-xpdl.d.ts +66 -0
- package/dist/types/components/bpm/import-gxpm/import-gxpm.d.ts +21 -0
- package/dist/types/components/bpm/objects-selector/helpers.d.ts +7 -0
- package/dist/types/components/bpm/objects-selector/objects-selector.d.ts +61 -0
- package/dist/types/components/{import-from-design/import-from-design.d.ts → design-import/design-import.d.ts} +24 -10
- package/dist/types/components.d.ts +371 -208
- package/package.json +1 -1
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +0 -522
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +0 -1
- package/dist/collection/components/import-from-design/import-from-design.js.map +0 -1
- package/dist/components/gx-ide-import-from-design.d.ts +0 -11
- package/dist/components/gx-ide-import-from-design.js.map +0 -1
- package/dist/esm/gx-ide-import-from-design.entry.js +0 -518
- package/dist/esm/gx-ide-import-from-design.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-3345a1bc.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-972b18a0.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9bf62c5c.entry.js.map +0 -1
- /package/dist/collection/components/bpm/{timer-duration/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.ja.json → export-xpdl/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.ja.json} +0 -0
- /package/dist/collection/components/bpm/{timer-duration/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.zh.json → export-xpdl/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.zh.json} +0 -0
- /package/dist/collection/components/{import-from-design/gx-ide-assets/import-from-design/langs/import-from-design.lang.zh.json → bpm/objects-selector/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.zh.json} +0 -0
- /package/dist/collection/components/bpm/timer-duration/gx-ide-assets/bpm-timer-duration/langs/{bpm-timer-duration.lang.en.json → timer-duration.lang.en.json} +0 -0
- /package/dist/collection/components/{import-from-design/gx-ide-assets/import-from-design/langs/import-from-design.lang.ja.json → bpm/timer-duration/gx-ide-assets/bpm-timer-duration/langs/timer-duration.lang.ja.json} +0 -0
- /package/dist/{genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.zh.json → collection/components/bpm/timer-duration/gx-ide-assets/bpm-timer-duration/langs/timer-duration.lang.zh.json} +0 -0
- /package/dist/collection/components/{import-from-design/import-from-design.css → design-import/design-import.css} +0 -0
- /package/dist/{genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.ja.json → collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.ja.json} +0 -0
- /package/dist/{genexus-ide-ui/gx-ide-assets/import-from-design/langs/import-from-design.lang.zh.json → collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.zh.json} +0 -0
- /package/dist/genexus-ide-ui/gx-ide-assets/{import-from-design/langs/import-from-design.lang.ja.json → bpm-export-xpdl/langs/bpm-export-xpdl.lang.ja.json} +0 -0
- /package/dist/genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/{bpm-timer-duration.lang.en.json → timer-duration.lang.en.json} +0 -0
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
/* STENCIL IMPORTS */
|
|
2
|
+
import { Host, h } from "@stencil/core";
|
|
3
|
+
/* CUSTOM IMPORTS */
|
|
4
|
+
import { config } from "../../../common/config";
|
|
5
|
+
import { Locale } from "../../../common/locale";
|
|
6
|
+
import { renderListItems } from "../../../common/render-list-item";
|
|
7
|
+
import { objectsToListItemData } from "./helpers";
|
|
8
|
+
export class GxIdeBpmExportXpdl {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.renderedFirstTime = false;
|
|
11
|
+
this.includeAll = false;
|
|
12
|
+
// 7.LISTENERS //
|
|
13
|
+
// 8.PUBLIC METHODS API //
|
|
14
|
+
// 9.LOCAL METHODS //
|
|
15
|
+
this.objectSelectionChangedHandler = (selectedItem) => {
|
|
16
|
+
const selectedObjects = Array.isArray(selectedItem.detail)
|
|
17
|
+
? selectedItem.detail
|
|
18
|
+
: [selectedItem.detail];
|
|
19
|
+
this.selectedObjects = selectedObjects.map(item => item.itemId);
|
|
20
|
+
};
|
|
21
|
+
this.removeObjectsHandler = () => {
|
|
22
|
+
this.objects = this.objects.filter(object => !this.selectedObjects.includes(object.id));
|
|
23
|
+
this.selectedObjects = [];
|
|
24
|
+
this.updateSelection(false);
|
|
25
|
+
};
|
|
26
|
+
this.removeAllObjectsHandler = () => {
|
|
27
|
+
this.objects = [];
|
|
28
|
+
this.selectedObjects = [];
|
|
29
|
+
this.updateSelection(false);
|
|
30
|
+
};
|
|
31
|
+
this.includeAllHandler = () => {
|
|
32
|
+
this.includeAll = this.includeAllCheckboxEl.checked;
|
|
33
|
+
if (this.includeAll) {
|
|
34
|
+
this.selectedObjects = this.objects.map(object => object.id);
|
|
35
|
+
this.objects = [];
|
|
36
|
+
this.updateSelection(true);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
this.selectedObjects = [];
|
|
40
|
+
this.updateSelection(false);
|
|
41
|
+
}
|
|
42
|
+
this.selectionChanged.emit();
|
|
43
|
+
};
|
|
44
|
+
this.addCallbackHandler = async () => {
|
|
45
|
+
if (this.addCallback) {
|
|
46
|
+
const resultObjects = await this.addCallback();
|
|
47
|
+
const newObjects = resultObjects.filter(resultObj => !this.objects.some(existingObj => existingObj.id === resultObj.id));
|
|
48
|
+
this.objects = [...this.objects, ...newObjects];
|
|
49
|
+
this.updateSelection(false);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
this.referencesCallbackHandler = async () => {
|
|
53
|
+
if (this.referencesCallback && this.objects.length > 0) {
|
|
54
|
+
const ids = this.objects.map(obj => obj.id);
|
|
55
|
+
const resultObjects = await this.referencesCallback(ids);
|
|
56
|
+
const newObjects = resultObjects.filter(resultObj => !this.objects.some(existingObj => existingObj.id === resultObj.id));
|
|
57
|
+
this.objects = [...this.objects, ...newObjects];
|
|
58
|
+
this.updateSelection(false);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
this.updateSelection = (includeAll) => {
|
|
62
|
+
const data = {
|
|
63
|
+
includeAll: this.includeAllCheckboxEl.checked,
|
|
64
|
+
objectIds: includeAll
|
|
65
|
+
? this.selectedObjects
|
|
66
|
+
: this.objects.map(object => object.id)
|
|
67
|
+
};
|
|
68
|
+
this.selection = data;
|
|
69
|
+
this.selectionChanged.emit();
|
|
70
|
+
};
|
|
71
|
+
this.objects = [];
|
|
72
|
+
this.selectedObjects = [];
|
|
73
|
+
this.displayTitle = false;
|
|
74
|
+
this.selection = undefined;
|
|
75
|
+
this.addCallback = undefined;
|
|
76
|
+
this.referencesCallback = undefined;
|
|
77
|
+
}
|
|
78
|
+
// 6.COMPONENT LIFECYCLE METHODS //
|
|
79
|
+
async componentWillLoad() {
|
|
80
|
+
this._componentLocale = await Locale.getComponentStrings(this.el);
|
|
81
|
+
}
|
|
82
|
+
componentDidRender() {
|
|
83
|
+
if (!this.renderedFirstTime) {
|
|
84
|
+
this.componentDidRenderFirstTime.emit(this.el);
|
|
85
|
+
this.renderedFirstTime = true;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// 10.RENDER() FUNCTION //
|
|
89
|
+
render() {
|
|
90
|
+
return (h(Host, { class: "gx-ide-component gx-ide-bpm-objects-selector" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { containerTitle: this.displayTitle ? this._componentLocale.componentName : null, slimmerFooter: config.gxIdeContainer.slimmerFooter }, h("gx-ide-list-selector", { id: "path-list", type: "multi-selection", listName: "path-list", ordered: true, onSelectionChanged: this.objectSelectionChangedHandler, class: "path-list" }, renderListItems(objectsToListItemData(this.objects))), h("div", { class: "controls-wrapper" }, h("label", { htmlFor: "include-all" }, this._componentLocale.main.includeAllLabel), h("ch-checkbox", { id: "include-all", accessibleName: this._componentLocale.main.includeAllLabel, checkedValue: "true", unCheckedValue: "false", value: "checked", onInput: this.includeAllHandler, ref: el => (this.includeAllCheckboxEl = el) }), h("button", { onClick: this.addCallbackHandler, disabled: this.includeAll }, this._componentLocale.main.addButton), h("button", { onClick: this.referencesCallbackHandler, disabled: this.objects.length === 0 }, this._componentLocale.main.referencesButton), h("button", { onClick: this.removeObjectsHandler, disabled: this.selectedObjects.length === 0 || this.includeAll }, this._componentLocale.main.removeButton, " (", this.selectedObjects.length, ")")), h("button", { slot: "footer-end", onClick: this.removeAllObjectsHandler, disabled: this.includeAll }, this._componentLocale.main.clearButton)))));
|
|
91
|
+
}
|
|
92
|
+
static get is() { return "gx-ide-bpm-objects-selector"; }
|
|
93
|
+
static get encapsulation() { return "shadow"; }
|
|
94
|
+
static get originalStyleUrls() {
|
|
95
|
+
return {
|
|
96
|
+
"$": ["objects-selector.scss"]
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
static get styleUrls() {
|
|
100
|
+
return {
|
|
101
|
+
"$": ["objects-selector.css"]
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
static get assetsDirs() { return ["gx-ide-assets/bpm-objects-selector"]; }
|
|
105
|
+
static get properties() {
|
|
106
|
+
return {
|
|
107
|
+
"displayTitle": {
|
|
108
|
+
"type": "boolean",
|
|
109
|
+
"mutable": false,
|
|
110
|
+
"complexType": {
|
|
111
|
+
"original": "false",
|
|
112
|
+
"resolved": "boolean",
|
|
113
|
+
"references": {}
|
|
114
|
+
},
|
|
115
|
+
"required": false,
|
|
116
|
+
"optional": false,
|
|
117
|
+
"docs": {
|
|
118
|
+
"tags": [],
|
|
119
|
+
"text": "If true it displays the component title on the header"
|
|
120
|
+
},
|
|
121
|
+
"attribute": "display-title",
|
|
122
|
+
"reflect": false,
|
|
123
|
+
"defaultValue": "false"
|
|
124
|
+
},
|
|
125
|
+
"selection": {
|
|
126
|
+
"type": "unknown",
|
|
127
|
+
"mutable": true,
|
|
128
|
+
"complexType": {
|
|
129
|
+
"original": "SelectionData",
|
|
130
|
+
"resolved": "{ includeAll: boolean; objectIds: string[]; }",
|
|
131
|
+
"references": {
|
|
132
|
+
"SelectionData": {
|
|
133
|
+
"location": "local",
|
|
134
|
+
"path": "/home/runner/work/genexus-ide-ui/genexus-ide-ui/src/components/bpm/objects-selector/objects-selector.tsx",
|
|
135
|
+
"id": "src/components/bpm/objects-selector/objects-selector.tsx::SelectionData"
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
"required": false,
|
|
140
|
+
"optional": false,
|
|
141
|
+
"docs": {
|
|
142
|
+
"tags": [],
|
|
143
|
+
"text": "The current selection in the list of objects"
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"addCallback": {
|
|
147
|
+
"type": "unknown",
|
|
148
|
+
"mutable": false,
|
|
149
|
+
"complexType": {
|
|
150
|
+
"original": "() => Promise<ObjectData[]>",
|
|
151
|
+
"resolved": "() => Promise<ObjectData[]>",
|
|
152
|
+
"references": {
|
|
153
|
+
"Promise": {
|
|
154
|
+
"location": "global",
|
|
155
|
+
"id": "global::Promise"
|
|
156
|
+
},
|
|
157
|
+
"ObjectData": {
|
|
158
|
+
"location": "import",
|
|
159
|
+
"path": "./helpers",
|
|
160
|
+
"id": "src/components/bpm/objects-selector/helpers.ts::ObjectData"
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"required": false,
|
|
165
|
+
"optional": false,
|
|
166
|
+
"docs": {
|
|
167
|
+
"tags": [{
|
|
168
|
+
"name": "returns",
|
|
169
|
+
"text": "A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object."
|
|
170
|
+
}],
|
|
171
|
+
"text": "Callback invoked when the user presses the 'Add' button.\nThis function is expected to return a list of selected objects' basic information."
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
"referencesCallback": {
|
|
175
|
+
"type": "unknown",
|
|
176
|
+
"mutable": false,
|
|
177
|
+
"complexType": {
|
|
178
|
+
"original": "(ids: string[]) => Promise<ObjectData[]>",
|
|
179
|
+
"resolved": "(ids: string[]) => Promise<ObjectData[]>",
|
|
180
|
+
"references": {
|
|
181
|
+
"Promise": {
|
|
182
|
+
"location": "global",
|
|
183
|
+
"id": "global::Promise"
|
|
184
|
+
},
|
|
185
|
+
"ObjectData": {
|
|
186
|
+
"location": "import",
|
|
187
|
+
"path": "./helpers",
|
|
188
|
+
"id": "src/components/bpm/objects-selector/helpers.ts::ObjectData"
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
"required": false,
|
|
193
|
+
"optional": false,
|
|
194
|
+
"docs": {
|
|
195
|
+
"tags": [{
|
|
196
|
+
"name": "param",
|
|
197
|
+
"text": "ids - An array of IDs of the objects currently added to the list."
|
|
198
|
+
}, {
|
|
199
|
+
"name": "returns",
|
|
200
|
+
"text": "A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object."
|
|
201
|
+
}],
|
|
202
|
+
"text": "Callback invoked when the user presses the 'References' button.\nReceives a parameter which is an array of IDs of the objects currently added to the list.\nReturns a Promise that resolves to an array of ObjectData, where each ObjectData contains the ID, icon, and name of an object."
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
static get states() {
|
|
208
|
+
return {
|
|
209
|
+
"objects": {},
|
|
210
|
+
"selectedObjects": {}
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
static get events() {
|
|
214
|
+
return [{
|
|
215
|
+
"method": "componentDidRenderFirstTime",
|
|
216
|
+
"name": "componentDidRenderFirstTime",
|
|
217
|
+
"bubbles": true,
|
|
218
|
+
"cancelable": true,
|
|
219
|
+
"composed": true,
|
|
220
|
+
"docs": {
|
|
221
|
+
"tags": [{
|
|
222
|
+
"name": "description",
|
|
223
|
+
"text": "Gets fired when the component has rendered for the first time."
|
|
224
|
+
}],
|
|
225
|
+
"text": ""
|
|
226
|
+
},
|
|
227
|
+
"complexType": {
|
|
228
|
+
"original": "HTMLGxIdeBpmObjectsSelectorElement",
|
|
229
|
+
"resolved": "HTMLGxIdeBpmObjectsSelectorElement",
|
|
230
|
+
"references": {
|
|
231
|
+
"HTMLGxIdeBpmObjectsSelectorElement": {
|
|
232
|
+
"location": "global",
|
|
233
|
+
"id": "global::HTMLGxIdeBpmObjectsSelectorElement"
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}, {
|
|
238
|
+
"method": "selectionChanged",
|
|
239
|
+
"name": "selectionChanged",
|
|
240
|
+
"bubbles": true,
|
|
241
|
+
"cancelable": true,
|
|
242
|
+
"composed": true,
|
|
243
|
+
"docs": {
|
|
244
|
+
"tags": [{
|
|
245
|
+
"name": "description",
|
|
246
|
+
"text": "Gets fired when the objects selection list change or when 'Select All' checkbox state changes."
|
|
247
|
+
}],
|
|
248
|
+
"text": ""
|
|
249
|
+
},
|
|
250
|
+
"complexType": {
|
|
251
|
+
"original": "string",
|
|
252
|
+
"resolved": "string",
|
|
253
|
+
"references": {}
|
|
254
|
+
}
|
|
255
|
+
}];
|
|
256
|
+
}
|
|
257
|
+
static get elementRef() { return "el"; }
|
|
258
|
+
}
|
|
259
|
+
//# sourceMappingURL=objects-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects-selector.js","sourceRoot":"","sources":["../../../../src/components/bpm/objects-selector/objects-selector.tsx"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,OAAO,EACP,KAAK,EAEL,KAAK,EACN,MAAM,eAAe,CAAC;AAIvB,oBAAoB;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAc,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAQ9D,MAAM,OAAO,kBAAkB;;QAOrB,sBAAiB,GAAG,KAAK,CAAC;QAE1B,eAAU,GAAG,KAAK,CAAC;QAsE3B,iBAAiB;QAEjB,0BAA0B;QAE1B,qBAAqB;QAEb,kCAA6B,GAAG,CACtC,YAA2C,EAC3C,EAAE;YACF,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;gBACxD,CAAC,CAAC,YAAY,CAAC,MAAM;gBACrB,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAE1B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC,CAAC;QAEM,yBAAoB,GAAG,GAAG,EAAE;YAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAChC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CACpD,CAAC;YAEF,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEM,4BAAuB,GAAG,GAAG,EAAE;YACrC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEM,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;YACpD,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAC5B;iBAAM;gBACL,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;gBAC1B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aAC7B;YAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC;QACM,uBAAkB,GAAG,KAAK,IAAI,EAAE;YACtC,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CACrC,SAAS,CAAC,EAAE,CACV,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC,CACrE,CAAC;gBACF,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBAChD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aAC7B;QACH,CAAC,CAAC;QAEM,8BAAyB,GAAG,KAAK,IAAI,EAAE;YAC7C,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAE5C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBAEzD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CACrC,SAAS,CAAC,EAAE,CACV,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC,CACrE,CAAC;gBAEF,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBAChD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aAC7B;QACH,CAAC,CAAC;QAEM,oBAAe,GAAG,CAAC,UAAmB,EAAE,EAAE;YAChD,MAAM,IAAI,GAAkB;gBAC1B,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO;gBAC7C,SAAS,EAAE,UAAU;oBACnB,CAAC,CAAC,IAAI,CAAC,eAAe;oBACtB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;aAC1C,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC;uBA/I+B,EAAE;+BAKE,EAAE;4BAOP,KAAK;;;;;IAoCrC,mCAAmC;IAEnC,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,gBAAgB,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;IACH,CAAC;IAsFD,0BAA0B;IAE1B,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAC,8CAA8C;YACxD,WAAK,KAAK,EAAC,qBAAqB;gBAC9B,wBACE,cAAc,EACZ,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAEhE,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,aAAa;oBAElD,4BACE,EAAE,EAAC,WAAW,EACd,IAAI,EAAC,iBAAiB,EACtB,QAAQ,EAAC,WAAW,EACpB,OAAO,QACP,kBAAkB,EAAE,IAAI,CAAC,6BAA6B,EACtD,KAAK,EAAC,WAAW,IAEhB,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAChC;oBAEvB,WAAK,KAAK,EAAC,kBAAkB;wBAC3B,aAAO,OAAO,EAAC,aAAa,IACzB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CACrC;wBACR,mBACE,EAAE,EAAC,aAAa,EAChB,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,EAC1D,YAAY,EAAC,MAAM,EACnB,cAAc,EAAC,OAAO,EACtB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,GAAG,EAAE,EAAE,CAAC,EAAE,CACR,CAAC,IAAI,CAAC,oBAAoB,GAAG,EAA2B,CAAC,GAE9C;wBACf,cACE,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAChC,QAAQ,EAAE,IAAI,CAAC,UAAU,IAExB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAC9B;wBACT,cACE,OAAO,EAAE,IAAI,CAAC,yBAAyB,EACvC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAElC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CACrC;wBACT,cACE,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAClC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU;4BAE7D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY;;4BACvC,IAAI,CAAC,eAAe,CAAC,MAAM;gCACrB,CACL;oBAEN,cACE,IAAI,EAAC,YAAY,EACjB,OAAO,EAAE,IAAI,CAAC,uBAAuB,EACrC,QAAQ,EAAE,IAAI,CAAC,UAAU,IAExB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAChC,CACQ,CACf,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { CheckedItemsInfo } from \"../../_helpers/list-selector/list-selector\";\n\n/* CUSTOM IMPORTS */\nimport { config } from \"../../../common/config\";\nimport { Locale } from \"../../../common/locale\";\nimport { renderListItems } from \"../../../common/render-list-item\";\nimport { ObjectData, objectsToListItemData } from \"./helpers\";\n\n@Component({\n tag: \"gx-ide-bpm-objects-selector\",\n styleUrl: \"objects-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/bpm-objects-selector\"]\n})\nexport class GxIdeBpmExportXpdl {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n private includeAll = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeBpmObjectsSelectorElement;\n private includeAllCheckboxEl: HTMLChCheckboxElement;\n\n // 3.STATE() VARIABLES //\n\n @State() objects: ObjectData[] = [];\n\n /**\n * Contains the list of selected object ids\n */\n @State() selectedObjects: string[] = [];\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n *The current selection in the list of objects\n */\n @Prop({ mutable: true }) selection: SelectionData;\n\n /**\n * Callback invoked when the user presses the 'Add' button.\n * This function is expected to return a list of selected objects' basic information.\n * @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.\n */\n @Prop() readonly addCallback: () => Promise<ObjectData[]>;\n\n /**\n * Callback invoked when the user presses the 'References' button.\n * Receives a parameter which is an array of IDs of the objects currently added to the list.\n * Returns a Promise that resolves to an array of ObjectData, where each ObjectData contains the ID, icon, and name of an object.\n * @param {string[]} ids - An array of IDs of the objects currently added to the list.\n * @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.\n */\n @Prop() readonly referencesCallback: (ids: string[]) => Promise<ObjectData[]>;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event()\n componentDidRenderFirstTime: EventEmitter<HTMLGxIdeBpmObjectsSelectorElement>;\n\n /**\n * @description Gets fired when the objects selection list change or when 'Select All' checkbox state changes.\n */\n @Event() selectionChanged: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(this.el);\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private objectSelectionChangedHandler = (\n selectedItem: CustomEvent<CheckedItemsInfo>\n ) => {\n const selectedObjects = Array.isArray(selectedItem.detail)\n ? selectedItem.detail\n : [selectedItem.detail];\n\n this.selectedObjects = selectedObjects.map(item => item.itemId);\n };\n\n private removeObjectsHandler = () => {\n this.objects = this.objects.filter(\n object => !this.selectedObjects.includes(object.id)\n );\n\n this.selectedObjects = [];\n this.updateSelection(false);\n };\n\n private removeAllObjectsHandler = () => {\n this.objects = [];\n this.selectedObjects = [];\n this.updateSelection(false);\n };\n\n private includeAllHandler = () => {\n this.includeAll = this.includeAllCheckboxEl.checked;\n if (this.includeAll) {\n this.selectedObjects = this.objects.map(object => object.id);\n this.objects = [];\n this.updateSelection(true);\n } else {\n this.selectedObjects = [];\n this.updateSelection(false);\n }\n\n this.selectionChanged.emit();\n };\n private addCallbackHandler = async () => {\n if (this.addCallback) {\n const resultObjects = await this.addCallback();\n const newObjects = resultObjects.filter(\n resultObj =>\n !this.objects.some(existingObj => existingObj.id === resultObj.id)\n );\n this.objects = [...this.objects, ...newObjects];\n this.updateSelection(false);\n }\n };\n\n private referencesCallbackHandler = async () => {\n if (this.referencesCallback && this.objects.length > 0) {\n const ids = this.objects.map(obj => obj.id);\n\n const resultObjects = await this.referencesCallback(ids);\n\n const newObjects = resultObjects.filter(\n resultObj =>\n !this.objects.some(existingObj => existingObj.id === resultObj.id)\n );\n\n this.objects = [...this.objects, ...newObjects];\n this.updateSelection(false);\n }\n };\n\n private updateSelection = (includeAll: boolean) => {\n const data: SelectionData = {\n includeAll: this.includeAllCheckboxEl.checked,\n objectIds: includeAll\n ? this.selectedObjects\n : this.objects.map(object => object.id)\n };\n\n this.selection = data;\n this.selectionChanged.emit();\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component gx-ide-bpm-objects-selector\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <gx-ide-list-selector\n id=\"path-list\"\n type=\"multi-selection\"\n listName=\"path-list\"\n ordered\n onSelectionChanged={this.objectSelectionChangedHandler}\n class=\"path-list\"\n >\n {renderListItems(objectsToListItemData(this.objects))}\n </gx-ide-list-selector>\n\n <div class=\"controls-wrapper\">\n <label htmlFor=\"include-all\">\n {this._componentLocale.main.includeAllLabel}\n </label>\n <ch-checkbox\n id=\"include-all\"\n accessibleName={this._componentLocale.main.includeAllLabel}\n checkedValue=\"true\"\n unCheckedValue=\"false\"\n value=\"checked\"\n onInput={this.includeAllHandler}\n ref={el =>\n (this.includeAllCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n <button\n onClick={this.addCallbackHandler}\n disabled={this.includeAll}\n >\n {this._componentLocale.main.addButton}\n </button>\n <button\n onClick={this.referencesCallbackHandler}\n disabled={this.objects.length === 0}\n >\n {this._componentLocale.main.referencesButton}\n </button>\n <button\n onClick={this.removeObjectsHandler}\n disabled={this.selectedObjects.length === 0 || this.includeAll}\n >\n {this._componentLocale.main.removeButton} (\n {this.selectedObjects.length})\n </button>\n </div>\n\n <button\n slot=\"footer-end\"\n onClick={this.removeAllObjectsHandler}\n disabled={this.includeAll}\n >\n {this._componentLocale.main.clearButton}\n </button>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type SelectionData = {\n includeAll: boolean;\n objectIds: string[];\n};\n"]}
|