@genexus/genexus-ide-ui 0.0.141 → 0.0.143
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-import-gxpm.cjs.entry.js +47 -3
- package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js.map +1 -1
- 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-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/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/import-gxpm/gx-ide-assets/bpm-import-gxpm/langs/bpm-import-gxpm.lang.en.json +9 -2
- package/dist/collection/components/bpm/import-gxpm/import-gxpm.css +4 -0
- package/dist/collection/components/bpm/import-gxpm/import-gxpm.js +103 -2
- package/dist/collection/components/bpm/import-gxpm/import-gxpm.js.map +1 -1
- 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/bpm/timer-duration/gx-ide-assets/bpm-timer-duration/langs/timer-duration.lang.zh.json +3 -0
- 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-import-gxpm.js +58 -28
- package/dist/components/gx-ide-bpm-import-gxpm.js.map +1 -1
- 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/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-import-gxpm.entry.js +47 -3
- package/dist/esm/gx-ide-bpm-import-gxpm.entry.js.map +1 -1
- 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-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.ja.json +3 -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-import-gxpm/langs/bpm-import-gxpm.lang.en.json +9 -2
- 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/{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-049a370c.entry.js → p-58cb7bbb.entry.js} +78 -29
- package/dist/genexus-ide-ui/p-58cb7bbb.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/types/components/bpm/export-xpdl/export-xpdl.d.ts +66 -0
- package/dist/types/components/bpm/import-gxpm/import-gxpm.d.ts +30 -1
- 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.d.ts +237 -52
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-049a370c.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-972b18a0.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/{genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.zh.json → collection/components/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/{genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.ja.json → collection/components/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.en.json → timer-duration.lang.en.json} +0 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { r as t, c as e, h as r, H as a, g as o } from "./p-48217969.js";
|
|
2
|
+
|
|
3
|
+
import { c as i } from "./p-9c1b4eb9.js";
|
|
4
|
+
|
|
5
|
+
import { L as s } from "./p-74d59062.js";
|
|
6
|
+
|
|
7
|
+
import { r as l } from "./p-6c2ecbac.js";
|
|
8
|
+
|
|
9
|
+
const objectsToListItemData = t => {
|
|
10
|
+
const e = [];
|
|
11
|
+
t.forEach((t => {
|
|
12
|
+
const r = t.id;
|
|
13
|
+
const a = t.name;
|
|
14
|
+
const o = t.icon;
|
|
15
|
+
const i = false;
|
|
16
|
+
e.push({
|
|
17
|
+
itemId: r,
|
|
18
|
+
itemValue: a,
|
|
19
|
+
itemIcon: o,
|
|
20
|
+
itemChecked: i
|
|
21
|
+
});
|
|
22
|
+
}));
|
|
23
|
+
return e;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const n = ':root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-container{display:flex;height:100%;width:100%;box-sizing:border-box}p{margin:0;font-size:var(--mer-font__size--xxs)}.control-wrapper{display:flex;gap:var(--mer-spacing--xs);align-items:center}.control-wrapper--vertical{flex-direction:column;align-items:start}.controls-wrapper{display:flex;gap:var(--mer-spacing--xs)}.controls-wrapper--vertical{flex-direction:column;align-items:start}.input-text{box-sizing:border-box;background-color:transparent;border:var(--mer-border__width--sm) solid var(--mer-border-color__dim);border-radius:var(--mer-border__width--lg);height:26px;color:var(--mer-text__bright);font-size:var(--mer-font__size--xxs)}.input-text--full-width{align-self:stretch}:host{display:block}.header{display:grid;grid-template-columns:1fr min-content min-content;grid-template-areas:"label label label" "input cancel export";grid-gap:var(--gx-ide-grid-column-gap)}.header .label{grid-area:label}.header .input{grid-area:input}.header .cancel{grid-area:cancel}.header .export{grid-area:export}';
|
|
27
|
+
|
|
28
|
+
const g = class {
|
|
29
|
+
constructor(r) {
|
|
30
|
+
t(this, r);
|
|
31
|
+
this.componentDidRenderFirstTime = e(this, "componentDidRenderFirstTime", 7);
|
|
32
|
+
this.selectionChanged = e(this, "selectionChanged", 7);
|
|
33
|
+
this.renderedFirstTime = false;
|
|
34
|
+
this.includeAll = false;
|
|
35
|
+
// 7.LISTENERS //
|
|
36
|
+
// 8.PUBLIC METHODS API //
|
|
37
|
+
// 9.LOCAL METHODS //
|
|
38
|
+
this.objectSelectionChangedHandler = t => {
|
|
39
|
+
const e = Array.isArray(t.detail) ? t.detail : [ t.detail ];
|
|
40
|
+
this.selectedObjects = e.map((t => t.itemId));
|
|
41
|
+
};
|
|
42
|
+
this.removeObjectsHandler = () => {
|
|
43
|
+
this.objects = this.objects.filter((t => !this.selectedObjects.includes(t.id)));
|
|
44
|
+
this.selectedObjects = [];
|
|
45
|
+
this.updateSelection(false);
|
|
46
|
+
};
|
|
47
|
+
this.removeAllObjectsHandler = () => {
|
|
48
|
+
this.objects = [];
|
|
49
|
+
this.selectedObjects = [];
|
|
50
|
+
this.updateSelection(false);
|
|
51
|
+
};
|
|
52
|
+
this.includeAllHandler = () => {
|
|
53
|
+
this.includeAll = this.includeAllCheckboxEl.checked;
|
|
54
|
+
if (this.includeAll) {
|
|
55
|
+
this.selectedObjects = this.objects.map((t => t.id));
|
|
56
|
+
this.objects = [];
|
|
57
|
+
this.updateSelection(true);
|
|
58
|
+
} else {
|
|
59
|
+
this.selectedObjects = [];
|
|
60
|
+
this.updateSelection(false);
|
|
61
|
+
}
|
|
62
|
+
this.selectionChanged.emit();
|
|
63
|
+
};
|
|
64
|
+
this.addCallbackHandler = async () => {
|
|
65
|
+
if (this.addCallback) {
|
|
66
|
+
const t = await this.addCallback();
|
|
67
|
+
const e = t.filter((t => !this.objects.some((e => e.id === t.id))));
|
|
68
|
+
this.objects = [ ...this.objects, ...e ];
|
|
69
|
+
this.updateSelection(false);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
this.referencesCallbackHandler = async () => {
|
|
73
|
+
if (this.referencesCallback && this.objects.length > 0) {
|
|
74
|
+
const t = this.objects.map((t => t.id));
|
|
75
|
+
const e = await this.referencesCallback(t);
|
|
76
|
+
const r = e.filter((t => !this.objects.some((e => e.id === t.id))));
|
|
77
|
+
this.objects = [ ...this.objects, ...r ];
|
|
78
|
+
this.updateSelection(false);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
this.updateSelection = t => {
|
|
82
|
+
const e = {
|
|
83
|
+
includeAll: this.includeAllCheckboxEl.checked,
|
|
84
|
+
objectIds: t ? this.selectedObjects : this.objects.map((t => t.id))
|
|
85
|
+
};
|
|
86
|
+
this.selection = e;
|
|
87
|
+
this.selectionChanged.emit();
|
|
88
|
+
};
|
|
89
|
+
this.objects = [];
|
|
90
|
+
this.selectedObjects = [];
|
|
91
|
+
this.displayTitle = false;
|
|
92
|
+
this.selection = undefined;
|
|
93
|
+
this.addCallback = undefined;
|
|
94
|
+
this.referencesCallback = undefined;
|
|
95
|
+
}
|
|
96
|
+
// 6.COMPONENT LIFECYCLE METHODS //
|
|
97
|
+
async componentWillLoad() {
|
|
98
|
+
this._componentLocale = await s.getComponentStrings(this.el);
|
|
99
|
+
}
|
|
100
|
+
componentDidRender() {
|
|
101
|
+
if (!this.renderedFirstTime) {
|
|
102
|
+
this.componentDidRenderFirstTime.emit(this.el);
|
|
103
|
+
this.renderedFirstTime = true;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// 10.RENDER() FUNCTION //
|
|
107
|
+
render() {
|
|
108
|
+
return r(a, {
|
|
109
|
+
class: "gx-ide-component gx-ide-bpm-objects-selector"
|
|
110
|
+
}, r("div", {
|
|
111
|
+
class: "gx-ide-main-wrapper"
|
|
112
|
+
}, r("gx-ide-container", {
|
|
113
|
+
containerTitle: this.displayTitle ? this._componentLocale.componentName : null,
|
|
114
|
+
slimmerFooter: i.gxIdeContainer.slimmerFooter
|
|
115
|
+
}, r("gx-ide-list-selector", {
|
|
116
|
+
id: "path-list",
|
|
117
|
+
type: "multi-selection",
|
|
118
|
+
listName: "path-list",
|
|
119
|
+
ordered: true,
|
|
120
|
+
onSelectionChanged: this.objectSelectionChangedHandler,
|
|
121
|
+
class: "path-list"
|
|
122
|
+
}, l(objectsToListItemData(this.objects))), r("div", {
|
|
123
|
+
class: "controls-wrapper"
|
|
124
|
+
}, r("label", {
|
|
125
|
+
htmlFor: "include-all"
|
|
126
|
+
}, this._componentLocale.main.includeAllLabel), r("ch-checkbox", {
|
|
127
|
+
id: "include-all",
|
|
128
|
+
accessibleName: this._componentLocale.main.includeAllLabel,
|
|
129
|
+
checkedValue: "true",
|
|
130
|
+
unCheckedValue: "false",
|
|
131
|
+
value: "checked",
|
|
132
|
+
onInput: this.includeAllHandler,
|
|
133
|
+
ref: t => this.includeAllCheckboxEl = t
|
|
134
|
+
}), r("button", {
|
|
135
|
+
onClick: this.addCallbackHandler,
|
|
136
|
+
disabled: this.includeAll
|
|
137
|
+
}, this._componentLocale.main.addButton), r("button", {
|
|
138
|
+
onClick: this.referencesCallbackHandler,
|
|
139
|
+
disabled: this.objects.length === 0
|
|
140
|
+
}, this._componentLocale.main.referencesButton), r("button", {
|
|
141
|
+
onClick: this.removeObjectsHandler,
|
|
142
|
+
disabled: this.selectedObjects.length === 0 || this.includeAll
|
|
143
|
+
}, this._componentLocale.main.removeButton, " (", this.selectedObjects.length, ")")), r("button", {
|
|
144
|
+
slot: "footer-end",
|
|
145
|
+
onClick: this.removeAllObjectsHandler,
|
|
146
|
+
disabled: this.includeAll
|
|
147
|
+
}, this._componentLocale.main.clearButton))));
|
|
148
|
+
}
|
|
149
|
+
static get assetsDirs() {
|
|
150
|
+
return [ "gx-ide-assets/bpm-objects-selector" ];
|
|
151
|
+
}
|
|
152
|
+
get el() {
|
|
153
|
+
return o(this);
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
g.style = n;
|
|
158
|
+
|
|
159
|
+
export { g as gx_ide_bpm_objects_selector };
|
|
160
|
+
//# sourceMappingURL=p-832a8a94.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["objectsToListItemData","objects","itemsData","forEach","object","itemId","id","itemValue","name","itemIcon","icon","itemChecked","push","objectsSelectorCss","GxIdeBpmExportXpdl","this","renderedFirstTime","includeAll","objectSelectionChangedHandler","selectedItem","selectedObjects","Array","isArray","detail","map","item","removeObjectsHandler","filter","includes","updateSelection","removeAllObjectsHandler","includeAllHandler","includeAllCheckboxEl","checked","selectionChanged","emit","addCallbackHandler","async","addCallback","resultObjects","newObjects","resultObj","some","existingObj","referencesCallbackHandler","referencesCallback","length","ids","obj","data","objectIds","selection","componentWillLoad","_componentLocale","Locale","getComponentStrings","el","componentDidRender","componentDidRenderFirstTime","render","h","Host","class","containerTitle","displayTitle","componentName","slimmerFooter","config","gxIdeContainer","type","listName","ordered","onSelectionChanged","renderListItems","htmlFor","main","includeAllLabel","accessibleName","checkedValue","unCheckedValue","value","onInput","ref","onClick","disabled","addButton","referencesButton","removeButton","slot","clearButton"],"sources":["src/components/bpm/objects-selector/helpers.ts","src/components/bpm/objects-selector/objects-selector.scss?tag=gx-ide-bpm-objects-selector&encapsulation=shadow","src/components/bpm/objects-selector/objects-selector.tsx"],"sourcesContent":["import { ItemData } from \"../../_helpers/list-selector/list-selector-item/list-selector-item\";\n\nexport type ObjectData = {\n id: string;\n icon: string;\n name: string;\n};\n\nexport const objectsToListItemData = (objects: ObjectData[]): ItemData[] => {\n const itemsData: ItemData[] = [];\n objects.forEach(object => {\n const itemId = object.id;\n const itemValue = object.name;\n const itemIcon: string = object.icon;\n const itemChecked: boolean = false;\n itemsData.push({\n itemId: itemId,\n itemValue: itemValue,\n itemIcon: itemIcon,\n itemChecked: itemChecked\n });\n });\n return itemsData;\n};\n","@import \"../../../global/gx-ide-common.scss\";\n@import \"../../../global/gx-ide-mixins.scss\";\n@import \"../../../global/temporary-tokens-chameleon.scss\";\n\n:host {\n display: block;\n}\n\n.header {\n display: grid;\n grid-template-columns: 1fr min-content min-content;\n grid-template-areas:\n \"label label label\"\n \"input cancel export\";\n grid-gap: var(--gx-ide-grid-column-gap);\n\n .label {\n grid-area: label;\n }\n .input {\n grid-area: input;\n }\n .cancel {\n grid-area: cancel;\n }\n .export {\n grid-area: export;\n }\n}\n","/* 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"],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { EventEmitter } from "../../../stencil-public-runtime";
|
|
2
|
+
import { ObjectData } from "../objects-selector/helpers";
|
|
3
|
+
export declare class GxIdeBpmExportXpdl {
|
|
4
|
+
/**
|
|
5
|
+
* The component hard-coded strings translations.
|
|
6
|
+
*/
|
|
7
|
+
private _componentLocale;
|
|
8
|
+
private renderedFirstTime;
|
|
9
|
+
el: HTMLGxIdeBpmExportXpdlElement;
|
|
10
|
+
private exportInputEl;
|
|
11
|
+
private bpmObjectSelectorEl;
|
|
12
|
+
emptyInput: boolean;
|
|
13
|
+
emptyObjects: boolean;
|
|
14
|
+
notExporting: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* If true it displays the component title on the header
|
|
17
|
+
*/
|
|
18
|
+
readonly displayTitle = false;
|
|
19
|
+
/**
|
|
20
|
+
* Callback function invoked when the user presses the 'Create' button.
|
|
21
|
+
* This function is expected to handle the export process based on the provided export data.
|
|
22
|
+
*
|
|
23
|
+
* @param {ExportData} exportData - The data required for the export process.
|
|
24
|
+
* @returns {Promise<boolean>} A promise that resolves to a boolean indicating the success of the export operation.
|
|
25
|
+
* Returns `true` if the export was successful, and `false` otherwise.
|
|
26
|
+
*/
|
|
27
|
+
readonly exportCallback: ExportCallback;
|
|
28
|
+
/**
|
|
29
|
+
* Callback invoked when user press 'Cancel' button
|
|
30
|
+
*/
|
|
31
|
+
readonly cancelCallback: CancelCallback;
|
|
32
|
+
/**
|
|
33
|
+
* Callback invoked when the user presses the 'Add' button. associated with gx-ide-bpm-objects-selector
|
|
34
|
+
* This function is expected to return a list of selected objects' basic information.
|
|
35
|
+
* @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.
|
|
36
|
+
*/
|
|
37
|
+
readonly addCallback: () => Promise<ObjectData[]>;
|
|
38
|
+
/**
|
|
39
|
+
* Callback invoked when the user presses the 'References' button. associated with gx-ide-bpm-objects-selector
|
|
40
|
+
* Receives a parameter which is an array of IDs of the objects currently added to the list.
|
|
41
|
+
* Returns a Promise that resolves to an array of ObjectData, where each ObjectData contains the ID, icon, and name of an object.
|
|
42
|
+
* @param {string[]} ids - An array of IDs of the objects currently added to the list.
|
|
43
|
+
* @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.
|
|
44
|
+
*/
|
|
45
|
+
readonly referencesCallback: (ids: string[]) => Promise<ObjectData[]>;
|
|
46
|
+
/**
|
|
47
|
+
* @description Gets fired when the component has rendered for the first time.
|
|
48
|
+
*/
|
|
49
|
+
componentDidRenderFirstTime: EventEmitter<string>;
|
|
50
|
+
componentWillLoad(): Promise<void>;
|
|
51
|
+
componentDidRender(): void;
|
|
52
|
+
private exportHandler;
|
|
53
|
+
private inputHandle;
|
|
54
|
+
private handleSelectionChanged;
|
|
55
|
+
render(): any;
|
|
56
|
+
}
|
|
57
|
+
export type ExportCallback = (exportData: ExportData) => Promise<boolean>;
|
|
58
|
+
export type CancelCallback = () => Promise<void>;
|
|
59
|
+
export type ExportData = {
|
|
60
|
+
directoryName: string;
|
|
61
|
+
Objects: SelectionData;
|
|
62
|
+
};
|
|
63
|
+
export type SelectionData = {
|
|
64
|
+
includeAll: boolean;
|
|
65
|
+
objectIds: string[];
|
|
66
|
+
};
|
|
@@ -6,16 +6,45 @@ export declare class GxIdeTemplate {
|
|
|
6
6
|
private _componentLocale;
|
|
7
7
|
private renderedFirstTime;
|
|
8
8
|
el: HTMLGxIdeBpmImportGxpmElement;
|
|
9
|
+
private fileInput;
|
|
10
|
+
private automaticBackupEl;
|
|
11
|
+
/**
|
|
12
|
+
* Contains the list of files
|
|
13
|
+
*/
|
|
14
|
+
selectedFile: File;
|
|
15
|
+
/**
|
|
16
|
+
* Contains the path input value
|
|
17
|
+
*/
|
|
18
|
+
pathValue: string;
|
|
9
19
|
/**
|
|
10
20
|
* If true it displays the component title on the header
|
|
11
21
|
*/
|
|
12
22
|
readonly displayTitle = false;
|
|
23
|
+
/**
|
|
24
|
+
* Callback function to be executed when OK button is pressed.
|
|
25
|
+
* This callback is expected to handle the file or string input and return a Promise that resolves when is completed.
|
|
26
|
+
*
|
|
27
|
+
* @param {ImportData} data - The data to be processed. This can be a string or a File object.
|
|
28
|
+
* @returns {Promise<void>} A Promise that resolves to void, indicating the completion of the operation.
|
|
29
|
+
*/
|
|
30
|
+
readonly confirmCallback: (data: ImportData) => Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Callback invoked when user press 'Cancel' button.
|
|
33
|
+
*/
|
|
34
|
+
readonly cancelCallback: () => Promise<void>;
|
|
13
35
|
/**
|
|
14
36
|
* @description Gets fired when the component has rendered for the first time.
|
|
15
37
|
*/
|
|
16
38
|
componentDidRenderFirstTime: EventEmitter<string>;
|
|
17
39
|
componentWillLoad(): Promise<void>;
|
|
18
40
|
componentDidRender(): void;
|
|
19
|
-
private
|
|
41
|
+
private loadFileHandle;
|
|
42
|
+
private handleFileInputChange;
|
|
43
|
+
private handlePathInputChange;
|
|
44
|
+
private confirmCallbackHandle;
|
|
20
45
|
render(): any;
|
|
21
46
|
}
|
|
47
|
+
export type ImportData = {
|
|
48
|
+
file: File;
|
|
49
|
+
automaticBackup: boolean;
|
|
50
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { EventEmitter } from "../../../stencil-public-runtime";
|
|
2
|
+
import { ObjectData } from "./helpers";
|
|
3
|
+
export declare class GxIdeBpmExportXpdl {
|
|
4
|
+
/**
|
|
5
|
+
* The component hard-coded strings translations.
|
|
6
|
+
*/
|
|
7
|
+
private _componentLocale;
|
|
8
|
+
private renderedFirstTime;
|
|
9
|
+
private includeAll;
|
|
10
|
+
el: HTMLGxIdeBpmObjectsSelectorElement;
|
|
11
|
+
private includeAllCheckboxEl;
|
|
12
|
+
objects: ObjectData[];
|
|
13
|
+
/**
|
|
14
|
+
* Contains the list of selected object ids
|
|
15
|
+
*/
|
|
16
|
+
selectedObjects: string[];
|
|
17
|
+
/**
|
|
18
|
+
* If true it displays the component title on the header
|
|
19
|
+
*/
|
|
20
|
+
readonly displayTitle = false;
|
|
21
|
+
/**
|
|
22
|
+
*The current selection in the list of objects
|
|
23
|
+
*/
|
|
24
|
+
selection: SelectionData;
|
|
25
|
+
/**
|
|
26
|
+
* Callback invoked when the user presses the 'Add' button.
|
|
27
|
+
* This function is expected to return a list of selected objects' basic information.
|
|
28
|
+
* @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.
|
|
29
|
+
*/
|
|
30
|
+
readonly addCallback: () => Promise<ObjectData[]>;
|
|
31
|
+
/**
|
|
32
|
+
* Callback invoked when the user presses the 'References' button.
|
|
33
|
+
* Receives a parameter which is an array of IDs of the objects currently added to the list.
|
|
34
|
+
* Returns a Promise that resolves to an array of ObjectData, where each ObjectData contains the ID, icon, and name of an object.
|
|
35
|
+
* @param {string[]} ids - An array of IDs of the objects currently added to the list.
|
|
36
|
+
* @returns {Promise<ObjectData[]>} A Promise that resolves to an array of ObjectData. Each ObjectData contains the ID, icon, and name of an object.
|
|
37
|
+
*/
|
|
38
|
+
readonly referencesCallback: (ids: string[]) => Promise<ObjectData[]>;
|
|
39
|
+
/**
|
|
40
|
+
* @description Gets fired when the component has rendered for the first time.
|
|
41
|
+
*/
|
|
42
|
+
componentDidRenderFirstTime: EventEmitter<HTMLGxIdeBpmObjectsSelectorElement>;
|
|
43
|
+
/**
|
|
44
|
+
* @description Gets fired when the objects selection list change or when 'Select All' checkbox state changes.
|
|
45
|
+
*/
|
|
46
|
+
selectionChanged: EventEmitter<string>;
|
|
47
|
+
componentWillLoad(): Promise<void>;
|
|
48
|
+
componentDidRender(): void;
|
|
49
|
+
private objectSelectionChangedHandler;
|
|
50
|
+
private removeObjectsHandler;
|
|
51
|
+
private removeAllObjectsHandler;
|
|
52
|
+
private includeAllHandler;
|
|
53
|
+
private addCallbackHandler;
|
|
54
|
+
private referencesCallbackHandler;
|
|
55
|
+
private updateSelection;
|
|
56
|
+
render(): any;
|
|
57
|
+
}
|
|
58
|
+
export type SelectionData = {
|
|
59
|
+
includeAll: boolean;
|
|
60
|
+
objectIds: string[];
|
|
61
|
+
};
|