@genexus/genexus-ide-ui 1.0.70 → 1.0.72
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-data-selector.cjs.entry.js +24 -11
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +85 -19
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/data-selector/data-selector.js +26 -13
- package/dist/collection/components/data-selector/data-selector.js.map +1 -1
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +2 -1
- package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +2 -1
- package/dist/collection/components/select-kb-items/helpers.js +68 -15
- package/dist/collection/components/select-kb-items/helpers.js.map +1 -1
- package/dist/collection/components/select-kb-items/select-kb-items.css +49 -0
- package/dist/collection/components/select-kb-items/select-kb-items.js +40 -4
- package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
- package/dist/components/gx-ide-data-selector.js +24 -11
- package/dist/components/gx-ide-data-selector.js.map +1 -1
- package/dist/components/gx-ide-select-kb-items.js +87 -19
- package/dist/components/gx-ide-select-kb-items.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +24 -11
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js +85 -19
- package/dist/esm/gx-ide-select-kb-items.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/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +2 -1
- package/dist/genexus-ide-ui/p-526a7c54.entry.js +552 -0
- package/dist/genexus-ide-ui/p-526a7c54.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-c624a8da.entry.js → p-eee8a8a9.entry.js} +61 -47
- package/dist/genexus-ide-ui/p-eee8a8a9.entry.js.map +1 -0
- package/dist/types/components/data-selector/data-selector.d.ts +2 -2
- package/dist/types/components/select-kb-items/helpers.d.ts +8 -1
- package/dist/types/components/select-kb-items/select-kb-items.d.ts +15 -0
- package/dist/types/components.d.ts +10 -2
- package/package.json +1 -1
- package/dist/genexus-ide-ui/p-72d32141.entry.js +0 -478
- package/dist/genexus-ide-ui/p-72d32141.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-c624a8da.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-select-kb-items.entry.cjs.js","mappings":"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","names":["getIconPath","getAssetPath","h","Locale","Host"],"sources":["src/components/select-kb-items/helpers.tsx","src/components/select-kb-items/select-kb-items.scss?tag=gx-ide-select-kb-items&encapsulation=shadow","src/components/select-kb-items/select-kb-items.tsx"],"sourcesContent":["import { ItemNode, CheckboxType } from \"./select-kb-items\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\n\nexport const convertItemsNodeListToFlattenedTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListFlattenedTreeViewModel: TreeViewItemModel[] = [];\n\n const processNode = (item: ItemNode) => {\n const leaf = !item.nodes?.length;\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListFlattenedTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checked: item.checked,\n checkbox: checkbox,\n expanded: item.expanded,\n startImgSrc: item.iconStart,\n endImgSrc: item.iconEnd,\n items: null,\n leaf: leaf,\n selected: item.selected\n });\n\n if (item.nodes) {\n item.nodes.forEach(childNode => processNode(childNode));\n }\n };\n\n itemsList.forEach(item => processNode(item));\n return itemsListFlattenedTreeViewModel;\n};\n\nexport const convertItemsListToTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListTreeViewModel: TreeViewItemModel[] = [];\n itemsList.forEach(item => {\n const leaf = !item.nodes?.length;\n const expanded = item.expanded;\n const iconStart = item.iconStart;\n const iconEnd = item.iconEnd;\n const order = parseInt(item.id);\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checkbox: checkbox,\n checked: item.checked,\n order: order,\n selected: item.selected,\n expanded: expanded,\n startImgSrc: iconStart,\n endImgSrc: iconEnd,\n items: !leaf\n ? convertItemsListToTreeViewModel(item.nodes, checkboxType)\n : null,\n leaf: leaf\n });\n });\n\n return itemsListTreeViewModel;\n};\n\nconst findItemNode = (id: string, item: ItemNode): ItemNode | null => {\n if (item.id === id) {\n return item;\n }\n\n if (item.nodes) {\n for (const itemNode of item.nodes) {\n const result = findItemNode(id, itemNode);\n if (result) {\n return result;\n }\n }\n }\n return null;\n};\n\nfunction findItemInArray(itemsNodes: ItemNode[], id: string): ItemNode | null {\n for (const item of itemsNodes) {\n const result = findItemNode(id, item);\n if (result) {\n return result;\n }\n }\n return null;\n}\nconst setAllLeafsCheckedFalse = (itemsList: ItemNode[]): ItemNode[] => {\n const uncheck = (itemNode: ItemNode) => {\n itemNode.checked = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => uncheck(childNode));\n }\n };\n\n itemsList.forEach(item => uncheck(item));\n return itemsList;\n};\n\nexport const unselectAllNodes = (itemsList: ItemNode[]) => {\n const unselect = (itemNode: ItemNode) => {\n itemNode.selected = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => unselect(childNode));\n }\n };\n\n itemsList.forEach(item => unselect(item));\n};\n\nexport const checkItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n setAllLeafsCheckedFalse(itemsList);\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.checked = true;\n }\n });\n\n return itemsList;\n};\n\nexport const expandItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.expanded = true;\n }\n });\n\n return itemsList;\n};\n\nexport const selectItems = (\n itemsList: ItemNode[],\n idsSelected: string[]\n): ItemNode[] => {\n idsSelected.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.selected = true;\n }\n });\n return itemsList;\n};\n\nfunction searchInNode(item: ItemNode, id: string): string[] | null {\n // If the current node is the searched node, we return an empty list (it has no parents in this branch)\n if (item.id === id) {\n return [];\n }\n\n // We traverse each child looking for the target node\n if (item.nodes?.length) {\n for (const node of item.nodes) {\n const parents = searchInNode(node, id);\n if (parents !== null) {\n // If we find it, we include the current node at the beginning of the path and return\n return [item.id, ...parents];\n }\n }\n }\n return null;\n}\n\nexport const searchParentsItems = (\n items: ItemNode[],\n ids: string[]\n): string[] | null => {\n const parents: string[] = [];\n for (const id of ids) {\n for (const rootItem of items) {\n const results = searchInNode(rootItem, id);\n if (results !== null) {\n results.forEach(result => {\n parents.push(result);\n });\n }\n }\n }\n return parents;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// header\n.view-mode__toggle-checkboxes {\n grid-template-columns: max-content max-content;\n}\n.field__items-view-type {\n align-items: center;\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n.field__toggle-checkboxes {\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n\n.trees {\n position: relative;\n}\n","import {\n Component,\n Element,\n getAssetPath,\n Host,\n h,\n Prop,\n State,\n Watch,\n Method\n} from \"@stencil/core\";\n\nimport {\n ChCheckboxCustomEvent,\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library\";\n\nimport {\n checkItems,\n convertItemsListToTreeViewModel,\n convertItemsNodeListToFlattenedTreeViewModel,\n expandItems,\n searchParentsItems,\n selectItems,\n unselectAllNodes\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { ContextMenuInfo } from \"../../common/types\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"chameleon/scrollbar\",\n \"components/tooltip\",\n \"components/tree-view\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst SYSTEM_SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst VIEW_AS_TREE_ID: NodesVersionsViewType = \"tree\";\nconst VIEW_AS_LIST_ID: NodesVersionsViewType = \"list\";\n\nconst TOGGLE_CHECKBOXES_CHECKED_VALUE = \"on\";\n\n@Component({\n tag: \"gx-ide-select-kb-items\",\n styleUrl: \"select-kb-items.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/select-kb-items\"]\n})\nexport class GxIdeSelectKbItems {\n #_componentLocale: any;\n\n #checkedNodesIds: string[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #selectedNodesIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/select-kb-items/shortcuts.json`\n );\n #updatedModelList: ItemNode[] = [];\n\n #viewItemsAsModel: RadioGroupItemModel[];\n\n @Element() el: HTMLGxIdeSelectKbItemsElement;\n #treeViewRenderEl: HTMLChTreeViewRenderElement;\n\n /**\n * Represents the nodes list model\n */\n @State() nodeListFlattenedTreeModel: TreeViewItemModel[] = [];\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * View type for the nodes.\n */\n @State() nodesVersionsViewType: NodesVersionsViewType = \"tree\";\n\n /**\n * Represents the nodes tree model\n */\n @State() nodeVersionsListTreeModel: TreeViewItemModel[] = [];\n\n /**\n * \"Search Pattern\" input value, used to filter the nodes tree/list.\n */\n @State() searchPatternValue: string = null;\n\n /**\n * It maps to the ch-tree-view-render \"toggleCheckboxes\" property.\n */\n @State() toggleCheckboxes: boolean = true;\n\n /**\n * Callback emitted when the 'cancel' button is pressed\n */\n @Prop() readonly cancelCallback?: () => Promise<void>;\n\n /**\n * Defines which nodes of the component have checkboxes.\n */\n @Prop() readonly checkboxType: CheckboxType;\n\n /**\n * Define if a item node is expanded on click interaction. If false item-node will only be expanded on double click.\n */\n @Prop() readonly expandOnClick: boolean = true;\n\n /**\n * Callback emitted when the items checked items change\n */\n @Prop() readonly checkedChanged?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Callback emitted when the 'select' button is pressed\n */\n @Prop() readonly confirmCallback?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Set of additional actions (callbacks) to those already provided by default by the selector (cancelCallback and selectCallback)\n */\n @Prop() readonly dialogActions: DialogAction[] = [];\n\n /**\n * Callback emitted when the user right click on an item\n */\n @Prop() readonly itemContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * Represents the itemLis list model\n */\n @Prop() readonly itemsList: ItemNode[] = [];\n\n @Watch(\"itemsList\")\n watchNodeListHandler(newItemsList: ItemNode[]) {\n if (newItemsList.length > 0) {\n this.loading = false;\n }\n this.#updateViews(newItemsList);\n }\n\n /**\n * This define if the selection is unique or not\n */\n @Prop() readonly multiSelection?: boolean = false;\n\n /**\n * Callback emitted when the items selection change\n */\n @Prop() readonly selectionChanged?: (selectedItem: string[]) => Promise<void>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#viewItemsAsModel = [\n { value: VIEW_AS_TREE_ID, caption: this.#_componentLocale.main.tree },\n { value: VIEW_AS_LIST_ID, caption: \"List\" }\n ];\n this.watchNodeListHandler(this.itemsList);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Allow to update the selected items\n */\n @Method()\n async updateSelection(selectedItemsIds: string[]) {\n // first clear selected\n this.#treeViewRenderEl.updateItemsProperties(this.#selectedNodesIds, {\n selected: false\n });\n // then select\n this.#treeViewRenderEl.updateItemsProperties(selectedItemsIds, {\n selected: true\n });\n }\n\n #cancelHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #checkedItemsChangeHandler = async (\n e: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const checkedNodesIds: string[] = [];\n e.detail.forEach(node => {\n node.item.checked && checkedNodesIds.push(node.item.id);\n });\n this.#checkedNodesIds = checkedNodesIds;\n this.#updatedModelList = checkItems(this.itemsList, this.#checkedNodesIds);\n\n if (this.checkedChanged) {\n this.checkedChanged(this.#checkedNodesIds);\n }\n };\n\n #confirmHandler = () => {\n if (this.confirmCallback) {\n this.confirmCallback(this.#checkedNodesIds);\n }\n };\n\n #contextMenuHandler = async (\n e: CustomEvent<{\n id: string;\n itemRef: HTMLChTreeViewItemElement;\n metadata: string;\n contextmenuEvent: PointerEvent;\n }>\n ) => {\n if (this.itemContextMenuCallback) {\n let info: ContextMenuInfo;\n const isSelected = this.#selectedNodesIds.find(id => id === e.detail.id);\n if (!this.#selectedNodesIds.length || !isSelected) {\n await this.#treeViewRenderEl.updateItemsProperties(\n this.#selectedNodesIds,\n { selected: false }\n );\n await this.#treeViewRenderEl.updateItemsProperties([e.detail.id], {\n selected: true\n });\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: [e.detail.id]\n };\n } else {\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: this.#selectedNodesIds\n };\n }\n this.itemContextMenuCallback(info);\n }\n };\n\n #executeDialogAction = (\n callback: (checkedNodesIds: string[], selectedNodesIds: string[]) => void\n ) => {\n return () => {\n callback(this.#checkedNodesIds, this.#selectedNodesIds);\n };\n };\n\n #patternSearchValueChangedHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.searchPatternValue = event.detail.toString();\n };\n\n #renderActionButtons = (): HTMLElement[] => {\n return (\n <div>\n {this.dialogActions.map(action => {\n return (\n <button\n class={\"button-tertiary\"}\n part={`button button-${action.name}`}\n onClick={this.#executeDialogAction(action.callback)}\n disabled={this.loading}\n >\n {action.name}\n </button>\n );\n })}\n </div>\n );\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end control-footer-space-between\">\n {this.#renderActionButtons()}\n <div class=\"buttons-spacer \">\n {this.cancelCallback && (\n <button\n class={\"button-secondary\"}\n part={\"cancel-button\"}\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n )}\n {this.confirmCallback && (\n <button\n class={\"button-primary\"}\n part={\"confirm-button\"}\n onClick={this.#confirmHandler}\n disabled={this.loading}\n >\n {this.#_componentLocale.footer.select}\n </button>\n )}\n </div>\n </footer>\n );\n };\n\n #selectedItemsChangeHandler = (\n e: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n const selectedNodesIds: string[] = [];\n unselectAllNodes(this.itemsList);\n e.detail.forEach(node => {\n selectedNodesIds.push(node.item.id);\n });\n this.#selectedNodesIds = selectedNodesIds;\n if (this.selectionChanged) {\n this.selectionChanged(this.#selectedNodesIds);\n }\n\n this.#updatedModelList = selectItems(this.itemsList, selectedNodesIds);\n };\n\n #toggleAndSelectNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsSelected = selectItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(newItemsSelected, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #toggleCheckedNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(this.itemsList, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #updateViews = (newItemsList: ItemNode[]) => {\n this.nodeVersionsListTreeModel = convertItemsListToTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n\n this.nodeListFlattenedTreeModel =\n convertItemsNodeListToFlattenedTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n };\n\n #viewItemsAsChangedHandler = async (event: CustomEvent<string>) => {\n const selectedViewType = event.detail as NodesVersionsViewType;\n this.nodesVersionsViewType = selectedViewType;\n if (this.nodesVersionsViewType === \"tree\") {\n await this.#toggleAndSelectNodesInModelItems(this.#selectedNodesIds);\n await this.#toggleCheckedNodesInModelItems(this.#checkedNodesIds);\n }\n this.#updateViews(this.#updatedModelList);\n };\n\n #toggleCheckboxesChangedHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n this.toggleCheckboxes = event.detail === TOGGLE_CHECKBOXES_CHECKED_VALUE;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <header class=\"control-header field-group spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group view-mode__toggle-checkboxes\">\n <div class=\"field field-inline field__items-view-type\">\n <label class=\"label\" htmlFor=\"view-mode\">\n Select view mode:\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"view-mode\"\n model={this.#viewItemsAsModel}\n onChange={this.#viewItemsAsChangedHandler}\n value={this.#viewItemsAsModel[0].value}\n ></ch-radio-group-render>\n </div>\n\n {this.checkboxType !== \"none\" && (\n <div class=\"field field-inline field__toggle-checkboxes\">\n <label class=\"label\" htmlFor=\"toggle-checkboxes\">\n Toggle Checkboxes\n </label>\n <ch-checkbox\n class=\"checkbox\"\n id=\"toggle-checkboxes\"\n checkedValue={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n value={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n onInput={this.#toggleCheckboxesChangedHandler}\n ></ch-checkbox>\n </div>\n )}\n </div>\n\n <ch-edit\n class=\"input pattern-filter\"\n placeholder={\n this.#_componentLocale.header.searchPatternPlaceholder\n }\n startImgSrc={SYSTEM_SEARCH_ICON}\n onInput={this.#patternSearchValueChangedHandler}\n ></ch-edit>\n </header>\n\n <div class=\"spacing-body-inline-start trees\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <ch-tree-view-render\n class=\"tree-view\"\n model={\n this.nodesVersionsViewType === \"tree\"\n ? this.nodeVersionsListTreeModel\n : this.nodeListFlattenedTreeModel\n }\n show-lines={\n this.nodesVersionsViewType === \"tree\" ? \"all\" : \"none\"\n }\n expandableButton={\n this.nodesVersionsViewType === \"tree\" ? \"decorative\" : \"no\"\n }\n onItemContextmenu={this.#contextMenuHandler}\n onCheckedItemsChange={this.#checkedItemsChangeHandler}\n onSelectedItemsChange={this.#selectedItemsChangeHandler}\n expandOnClick={this.expandOnClick}\n multiSelection={this.multiSelection}\n filter={this.searchPatternValue}\n filterType=\"caption\"\n toggleCheckboxes={this.toggleCheckboxes}\n ref={(el: HTMLChTreeViewRenderElement) => {\n this.#treeViewRenderEl = el as HTMLChTreeViewRenderElement;\n }}\n ></ch-tree-view-render>\n )}\n </div>\n {(this.dialogActions.length > 0 ||\n this.cancelCallback ||\n this.confirmCallback) &&\n this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type CheckboxType = \"none\" | \"all\" | \"leaf\" | \"custom\";\n\nexport type DialogAction = {\n name: string;\n callback: DialogActionCallback;\n};\n\nexport type DialogActionCallback = (...args: any[]) => void;\n\nexport type ItemCommon = {\n icon: string;\n expanded: boolean;\n};\n\nexport type ItemNode = {\n checkbox?: boolean;\n checked?: boolean;\n expanded?: boolean;\n iconStart?: string;\n iconEnd?: string;\n id: string;\n name: string;\n nodes?: ItemNode[];\n selected?: boolean;\n type: ItemType;\n};\n\nexport type ItemType = {\n id: string;\n name: string;\n};\n\ntype NodesVersionsViewType = \"tree\" | \"list\";\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-select-kb-items.entry.cjs.js","mappings":"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","names":["getIconPath","getAssetPath","h","Locale","Host"],"sources":["src/components/select-kb-items/helpers.tsx","src/components/select-kb-items/select-kb-items.scss?tag=gx-ide-select-kb-items&encapsulation=shadow","src/components/select-kb-items/select-kb-items.tsx"],"sourcesContent":["import { ItemNode, CheckboxType, ActiveNode } from \"./select-kb-items\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\nimport { getIconPath } from \"@genexus/mercury\";\n\nexport const ACTIVE_ITEM_DEFAULT_ICON = getIconPath({\n category: \"system\",\n name: \"check-circle\",\n colorType: \"primary\"\n});\n\nexport const convertItemsNodeListToFlattenedTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListFlattenedTreeViewModel: TreeViewItemModel[] = [];\n\n const processNode = (item: ItemNode) => {\n const startImgSrc =\n item.active && !item.iconStart\n ? ACTIVE_ITEM_DEFAULT_ICON\n : item.iconStart;\n const leaf = !item.nodes?.length;\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListFlattenedTreeViewModel.push({\n caption: item.name,\n checkbox: checkbox,\n checked: item.checked,\n startImgSrc: startImgSrc,\n endImgSrc: item.iconEnd,\n expanded: item.expanded,\n id: item.id.toString(),\n items: null,\n leaf: leaf,\n metadata: metaData,\n parts: item.parts,\n selected: item.selected\n });\n\n if (item.nodes) {\n item.nodes.forEach(childNode => processNode(childNode));\n }\n };\n\n itemsList.forEach(item => processNode(item));\n return itemsListFlattenedTreeViewModel;\n};\n\nexport const convertItemsListToTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListTreeViewModel: TreeViewItemModel[] = [];\n itemsList.forEach(item => {\n const startImgSrc =\n item.active && !item.iconStart\n ? ACTIVE_ITEM_DEFAULT_ICON\n : item.iconStart;\n const leaf = !item.nodes?.length;\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const expanded = item.expanded;\n const iconStart = startImgSrc;\n const iconEnd = item.iconEnd;\n const metaData = JSON.stringify({\n versionType: item.type\n });\n const order = parseInt(item.id);\n itemsListTreeViewModel.push({\n caption: item.name,\n checkbox: checkbox,\n checked: item.checked,\n startImgSrc: iconStart,\n endImgSrc: iconEnd,\n expanded: expanded,\n id: item.id.toString(),\n items: !leaf\n ? convertItemsListToTreeViewModel(item.nodes, checkboxType)\n : null,\n leaf: leaf,\n metadata: metaData,\n parts: item.parts,\n order: order,\n selected: item.selected\n });\n });\n\n return itemsListTreeViewModel;\n};\n\nconst findItemNode = (id: string, item: ItemNode): ItemNode | null => {\n if (item.id === id) {\n return item;\n }\n\n if (item.nodes) {\n for (const itemNode of item.nodes) {\n const result = findItemNode(id, itemNode);\n if (result) {\n return result;\n }\n }\n }\n return null;\n};\n\nfunction findItemInArray(itemsNodes: ItemNode[], id: string): ItemNode | null {\n for (const item of itemsNodes) {\n const result = findItemNode(id, item);\n if (result) {\n return result;\n }\n }\n return null;\n}\nconst setAllLeafsCheckedFalse = (itemsList: ItemNode[]): ItemNode[] => {\n const uncheck = (itemNode: ItemNode) => {\n itemNode.checked = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => uncheck(childNode));\n }\n };\n\n itemsList.forEach(item => uncheck(item));\n return itemsList;\n};\n\nexport const unselectAllNodes = (itemsList: ItemNode[]) => {\n const unselect = (itemNode: ItemNode) => {\n itemNode.selected = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => unselect(childNode));\n }\n };\n\n itemsList.forEach(item => unselect(item));\n};\n\nexport const checkItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n setAllLeafsCheckedFalse(itemsList);\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.checked = true;\n }\n });\n\n return itemsList;\n};\n\nexport const expandItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.expanded = true;\n }\n });\n\n return itemsList;\n};\n\nexport const selectItems = (\n itemsList: ItemNode[],\n idsSelected: string[]\n): ItemNode[] => {\n idsSelected.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.selected = true;\n }\n });\n return itemsList;\n};\n\nfunction searchInNode(item: ItemNode, id: string): string[] | null {\n // If the current node is the searched node, we return an empty list (it has no parents in this branch)\n if (item.id === id) {\n return [];\n }\n\n // We traverse each child looking for the target node\n if (item.nodes?.length) {\n for (const node of item.nodes) {\n const parents = searchInNode(node, id);\n if (parents !== null) {\n // If we find it, we include the current node at the beginning of the path and return\n return [item.id, ...parents];\n }\n }\n }\n return null;\n}\n\nexport const searchParentsItems = (\n items: ItemNode[],\n ids: string[]\n): string[] | null => {\n const parents: string[] = [];\n for (const id of ids) {\n for (const rootItem of items) {\n const results = searchInNode(rootItem, id);\n if (results !== null) {\n results.forEach(result => {\n parents.push(result);\n });\n }\n }\n }\n return parents;\n};\n\n/**\n * Recursively searches for the first node with the active=true property\n * @param nodes Array of nodes to search through\n * @returns An object with caption, iconStart, and path to the first active node found, or null if none is found\n */\nexport const findFirstActiveNode = (nodes: ItemNode[]): ActiveNode | null => {\n // Helper function that keeps track of the path during recursion\n const findActiveWithPath = (\n nodeList: ItemNode[],\n currentPath: string[] = []\n ): ActiveNode | null => {\n // Base case: if nodes is undefined or empty\n if (!nodeList || nodeList.length === 0) {\n return null;\n }\n\n // Iterate through each node in the array\n for (const node of nodeList) {\n // Create a new path that includes the current node\n const nodePath = [...currentPath, node.id];\n\n // Check if the current node is active\n if (node.active === true) {\n return {\n caption: node.name,\n iconStart: node.iconStart,\n path: nodePath\n };\n }\n\n // If the node has children, search through them with the updated path\n if (node.nodes && node.nodes.length > 0) {\n const result = findActiveWithPath(node.nodes, nodePath);\n // If we find an active node in this subtree, return it immediately\n if (result !== null) {\n return result;\n }\n }\n }\n\n // No active node found in any of the nodes\n return null;\n };\n\n // Start the search with an empty path\n return findActiveWithPath(nodes);\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.header.has-active-item {\n grid-area: header;\n}\n\n.section {\n display: contents;\n}\n\n// header\n.header {\n grid-template-areas:\n \"view-mode view-mode\"\n \"pattern-filter active-item\";\n grid-template-columns: minmax(150px, 350px) max-content;\n --field-group__column-gap: var(\n --mer-spacing--md\n ); // WA: OVerriding this variable is not a good approeach to reduce the gap.TODO: Think about the right solution.\n}\n.view-mode__toggle-checkboxes {\n grid-area: view-mode;\n}\n.pattern-filter {\n grid-area: pattern-filter;\n max-inline-size: 350px;\n}\n\n.active-item {\n grid-area: active-item;\n background-color: var(--mer-surface__elevation--01);\n border-radius: var(--mer-border__radius--sm);\n padding: var(--mer-spacing--xs) var(--mer-spacing--sm);\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--xs);\n}\n.active-item {\n &__icon-container {\n display: contents;\n }\n &__icon {\n pointer-events: none; // We do not want the icon to change the colors, since the clickable area is the caption only\n }\n &__link {\n text-decoration: underline;\n // TODO: There should be a class in Merucry to apply link styles\n color: var(--mer-text__primary);\n cursor: pointer;\n &:hover {\n color: var(--mer-text__primary--hover);\n }\n &:active {\n color: var(--mer-text__primary--active);\n }\n }\n}\n\n.view-mode__toggle-checkboxes {\n grid-template-columns: max-content max-content;\n}\n.field__items-view-type {\n align-items: center;\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n.field__toggle-checkboxes {\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n\n.trees {\n position: relative;\n}\n","import {\n Component,\n Element,\n getAssetPath,\n Host,\n h,\n Prop,\n State,\n Watch,\n Method\n} from \"@stencil/core\";\n\nimport {\n ChCheckboxCustomEvent,\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library\";\n\nimport {\n checkItems,\n convertItemsListToTreeViewModel,\n convertItemsNodeListToFlattenedTreeViewModel,\n expandItems,\n searchParentsItems,\n selectItems,\n unselectAllNodes,\n findFirstActiveNode\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { ContextMenuInfo } from \"../../common/types\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nimport { ACTIVE_ITEM_DEFAULT_ICON } from \"./helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"chameleon/scrollbar\",\n \"components/tooltip\",\n \"components/tree-view\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst SYSTEM_SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst VIEW_AS_TREE_ID: NodesVersionsViewType = \"tree\";\nconst VIEW_AS_LIST_ID: NodesVersionsViewType = \"list\";\n\nconst TOGGLE_CHECKBOXES_CHECKED_VALUE = \"on\";\n\n@Component({\n tag: \"gx-ide-select-kb-items\",\n styleUrl: \"select-kb-items.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/select-kb-items\"]\n})\nexport class GxIdeSelectKbItems {\n #_componentLocale: any;\n\n #checkedNodesIds: string[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #selectedNodesIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/select-kb-items/shortcuts.json`\n );\n #updatedModelList: ItemNode[] = [];\n\n #viewItemsAsModel: RadioGroupItemModel[];\n\n @Element() el: HTMLGxIdeSelectKbItemsElement;\n #treeViewRenderEl: HTMLChTreeViewRenderElement;\n\n /**\n * Represents the active version node caption and icon (if any)\n */\n @State() activeItemNode: ActiveNode;\n\n /**\n * Represents the nodes list model\n */\n @State() nodeListFlattenedTreeModel: TreeViewItemModel[] = [];\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * View type for the nodes.\n */\n @State() nodesVersionsViewType: NodesVersionsViewType = \"tree\";\n\n /**\n * Represents the nodes tree model\n */\n @State() nodeVersionsListTreeModel: TreeViewItemModel[] = [];\n\n /**\n * \"Search Pattern\" input value, used to filter the nodes tree/list.\n */\n @State() searchPatternValue: string = null;\n\n /**\n * It maps to the ch-tree-view-render \"toggleCheckboxes\" property.\n */\n @State() toggleCheckboxes: boolean = true;\n\n /**\n * Callback emitted when the user clicks on the \"Active item\"\n */\n @Prop() readonly activeItemCallback?: () => Promise<void>;\n\n /**\n * Callback emitted when the 'cancel' button is pressed\n */\n @Prop() readonly cancelCallback?: () => Promise<void>;\n\n /**\n * Defines which nodes of the component have checkboxes.\n */\n @Prop() readonly checkboxType: CheckboxType;\n\n /**\n * Define if a item node is expanded on click interaction. If false item-node will only be expanded on double click.\n */\n @Prop() readonly expandOnClick: boolean = true;\n\n /**\n * Callback emitted when the items checked items change\n */\n @Prop() readonly checkedChanged?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Callback emitted when the 'select' button is pressed\n */\n @Prop() readonly confirmCallback?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Set of additional actions (callbacks) to those already provided by default by the selector (cancelCallback and selectCallback)\n */\n @Prop() readonly dialogActions: DialogAction[] = [];\n\n /**\n * Callback emitted when the user right click on an item\n */\n @Prop() readonly itemContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * Represents the itemLis list model\n */\n @Prop() readonly itemsList: ItemNode[] = [];\n\n @Watch(\"itemsList\")\n watchNodeListHandler(newItemsList: ItemNode[]) {\n if (newItemsList.length > 0) {\n this.loading = false;\n }\n this.#updateViews(newItemsList);\n\n // Check and update activeItem\n this.activeItemNode = findFirstActiveNode(newItemsList);\n }\n\n /**\n * This define if the selection is unique or not\n */\n @Prop() readonly multiSelection?: boolean = false;\n\n /**\n * Callback emitted when the items selection change\n */\n @Prop() readonly selectionChanged?: (selectedItem: string[]) => Promise<void>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#viewItemsAsModel = [\n { value: VIEW_AS_TREE_ID, caption: this.#_componentLocale.main.tree },\n { value: VIEW_AS_LIST_ID, caption: \"List\" }\n ];\n this.watchNodeListHandler(this.itemsList);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Allow to update the selected items\n */\n @Method()\n async updateSelection(selectedItemsIds: string[]) {\n // first clear selected\n this.#treeViewRenderEl.updateItemsProperties(this.#selectedNodesIds, {\n selected: false\n });\n // then select\n this.#treeViewRenderEl.updateItemsProperties(selectedItemsIds, {\n selected: true\n });\n }\n\n #cancelHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #checkedItemsChangeHandler = async (\n e: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const checkedNodesIds: string[] = [];\n e.detail.forEach(node => {\n node.item.checked && checkedNodesIds.push(node.item.id);\n });\n this.#checkedNodesIds = checkedNodesIds;\n this.#updatedModelList = checkItems(this.itemsList, this.#checkedNodesIds);\n\n if (this.checkedChanged) {\n this.checkedChanged(this.#checkedNodesIds);\n }\n };\n\n #confirmHandler = () => {\n if (this.confirmCallback) {\n this.confirmCallback(this.#checkedNodesIds);\n }\n };\n\n #contextMenuHandler = async (\n e: CustomEvent<{\n id: string;\n itemRef: HTMLChTreeViewItemElement;\n metadata: string;\n contextmenuEvent: PointerEvent;\n }>\n ) => {\n if (this.itemContextMenuCallback) {\n let info: ContextMenuInfo;\n const isSelected = this.#selectedNodesIds.find(id => id === e.detail.id);\n if (!this.#selectedNodesIds.length || !isSelected) {\n await this.#treeViewRenderEl.updateItemsProperties(\n this.#selectedNodesIds,\n { selected: false }\n );\n await this.#treeViewRenderEl.updateItemsProperties([e.detail.id], {\n selected: true\n });\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: [e.detail.id]\n };\n } else {\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: this.#selectedNodesIds\n };\n }\n this.itemContextMenuCallback(info);\n }\n };\n\n #executeDialogAction = (\n callback: (checkedNodesIds: string[], selectedNodesIds: string[]) => void\n ) => {\n return () => {\n callback(this.#checkedNodesIds, this.#selectedNodesIds);\n };\n };\n\n #patternSearchValueChangedHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.searchPatternValue = event.detail.toString();\n };\n\n #renderActionButtons = (): HTMLElement[] => {\n return (\n <div>\n {this.dialogActions.map(action => {\n return (\n <button\n class={\"button-tertiary\"}\n part={`button button-${action.name}`}\n onClick={this.#executeDialogAction(action.callback)}\n disabled={this.loading}\n >\n {action.name}\n </button>\n );\n })}\n </div>\n );\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end control-footer-space-between\">\n {this.#renderActionButtons()}\n <div class=\"buttons-spacer \">\n {this.cancelCallback && (\n <button\n class={\"button-secondary\"}\n part={\"cancel-button\"}\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n )}\n {this.confirmCallback && (\n <button\n class={\"button-primary\"}\n part={\"confirm-button\"}\n onClick={this.#confirmHandler}\n disabled={this.loading}\n >\n {this.#_componentLocale.footer.select}\n </button>\n )}\n </div>\n </footer>\n );\n };\n\n #selectedItemsChangeHandler = (\n e: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n const selectedNodesIds: string[] = [];\n unselectAllNodes(this.itemsList);\n e.detail.forEach(node => {\n selectedNodesIds.push(node.item.id);\n });\n this.#selectedNodesIds = selectedNodesIds;\n if (this.selectionChanged) {\n this.selectionChanged(this.#selectedNodesIds);\n }\n\n this.#updatedModelList = selectItems(this.itemsList, selectedNodesIds);\n };\n\n #toggleAndSelectNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsSelected = selectItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(newItemsSelected, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #toggleCheckedNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(this.itemsList, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #updateViews = (newItemsList: ItemNode[]) => {\n this.nodeVersionsListTreeModel = convertItemsListToTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n\n this.nodeListFlattenedTreeModel =\n convertItemsNodeListToFlattenedTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n };\n\n #viewItemsAsChangedHandler = async (event: CustomEvent<string>) => {\n const selectedViewType = event.detail as NodesVersionsViewType;\n this.nodesVersionsViewType = selectedViewType;\n if (this.nodesVersionsViewType === \"tree\") {\n await this.#toggleAndSelectNodesInModelItems(this.#selectedNodesIds);\n await this.#toggleCheckedNodesInModelItems(this.#checkedNodesIds);\n }\n this.#updateViews(this.#updatedModelList);\n };\n\n #toggleCheckboxesChangedHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n this.toggleCheckboxes = event.detail === TOGGLE_CHECKBOXES_CHECKED_VALUE;\n };\n\n #scrollIntoActiveVersionNode = () => {\n const doScrollIntoView =\n this.#treeViewRenderEl && this.activeItemNode?.path;\n if (doScrollIntoView) {\n this.#treeViewRenderEl.scrollIntoVisible(this.activeItemNode.path);\n }\n\n if (this.activeItemCallback) {\n this.activeItemCallback();\n }\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <header class=\"header control-header field-group spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group view-mode__toggle-checkboxes\">\n <div class=\"field field-inline field__items-view-type\">\n <label class=\"label\" htmlFor=\"view-mode\">\n Select view mode:\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"view-mode\"\n model={this.#viewItemsAsModel}\n onChange={this.#viewItemsAsChangedHandler}\n value={this.#viewItemsAsModel[0].value}\n ></ch-radio-group-render>\n </div>\n\n {this.checkboxType !== \"none\" && (\n <div class=\"field field-inline field__toggle-checkboxes\">\n <label class=\"label\" htmlFor=\"toggle-checkboxes\">\n Toggle Checkboxes\n </label>\n <ch-checkbox\n class=\"checkbox\"\n id=\"toggle-checkboxes\"\n checkedValue={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n value={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n onInput={this.#toggleCheckboxesChangedHandler}\n ></ch-checkbox>\n </div>\n )}\n </div>\n\n <ch-edit\n class=\"input pattern-filter\"\n placeholder={\n this.#_componentLocale.header.searchPatternPlaceholder\n }\n startImgSrc={SYSTEM_SEARCH_ICON}\n onInput={this.#patternSearchValueChangedHandler}\n ></ch-edit>\n {this.activeItemNode && (\n <div class=\"active-item\">\n <span\n class=\"active-item__icon-container\"\n // make this span the icon container, to prevent icon state changes when\n // interacting with div.active-item\n >\n <ch-image\n class=\"icon-md active-item__icon\"\n src={\n this.activeItemNode.iconStart || ACTIVE_ITEM_DEFAULT_ICON\n }\n containerRef={null}\n ></ch-image>\n </span>\n {this.#_componentLocale.header.activeItem}\n <button\n class=\"active-item__link\"\n onClick={this.#scrollIntoActiveVersionNode}\n >\n {this.activeItemNode.caption}\n </button>\n </div>\n )}\n </header>\n\n <div class=\"spacing-body-inline-start trees\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <ch-tree-view-render\n class=\"tree-view\"\n model={\n this.nodesVersionsViewType === \"tree\"\n ? this.nodeVersionsListTreeModel\n : this.nodeListFlattenedTreeModel\n }\n show-lines={\n this.nodesVersionsViewType === \"tree\" ? \"all\" : \"none\"\n }\n expandableButton={\n this.nodesVersionsViewType === \"tree\" ? \"decorative\" : \"no\"\n }\n onItemContextmenu={this.#contextMenuHandler}\n onCheckedItemsChange={this.#checkedItemsChangeHandler}\n onSelectedItemsChange={this.#selectedItemsChangeHandler}\n expandOnClick={this.expandOnClick}\n multiSelection={this.multiSelection}\n filter={this.searchPatternValue}\n filterType=\"caption\"\n toggleCheckboxes={this.toggleCheckboxes}\n ref={(el: HTMLChTreeViewRenderElement) => {\n this.#treeViewRenderEl = el as HTMLChTreeViewRenderElement;\n }}\n ></ch-tree-view-render>\n )}\n </div>\n {(this.dialogActions.length > 0 ||\n this.cancelCallback ||\n this.confirmCallback) &&\n this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type CheckboxType = \"none\" | \"all\" | \"leaf\" | \"custom\";\n\nexport type DialogAction = {\n name: string;\n callback: DialogActionCallback;\n};\n\nexport type DialogActionCallback = (...args: any[]) => void;\n\nexport type ItemCommon = {\n icon: string;\n expanded: boolean;\n};\n\nexport type ItemNode = {\n active?: boolean;\n checkbox?: boolean;\n checked?: boolean;\n expanded?: boolean;\n iconStart?: string;\n iconEnd?: string;\n id: string;\n name: string;\n nodes?: ItemNode[];\n parts?: string;\n selected?: boolean;\n type: ItemType;\n};\n\nexport type ActiveNode = {\n caption: string;\n iconStart?: string;\n path: string[]; // for using the scrollIntoVisible method of the tree-view-render\n};\n\nexport type ItemType = {\n id: string;\n name: string;\n};\n\ntype NodesVersionsViewType = \"tree\" | \"list\";\n"],"version":3}
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -6,7 +6,7 @@ const index = require('./index-e227aefb.js');
|
|
|
6
6
|
|
|
7
7
|
const defineCustomElements = (win, options) => {
|
|
8
8
|
if (typeof window === 'undefined') return undefined;
|
|
9
|
-
return index.bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl.cjs\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files.cjs\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import.cjs\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment.cjs\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update.cjs\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector.cjs\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references.cjs\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2.cjs\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report.cjs\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector.cjs\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes.cjs\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images.cjs\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration.cjs\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles.cjs\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm.cjs\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration.cjs\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import.cjs\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server.cjs\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-kb-manager-export.cjs\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-start-page.cjs\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit.cjs\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection.cjs\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision.cjs\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template.cjs\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings.cjs\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant.cjs\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home.cjs\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector.cjs\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-entity-selector.cjs\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-new-object.cjs\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"suggestNameCallback\":[16],\"suggestDescriptionCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-empty-state.cjs\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-references.cjs\",[[1,\"gx-ide-references\",{\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"selectorSourceCallback\":[16],\"selectedObject\":[1040],\"barHidden\":[32],\"objectsSuggestions\":[32],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32]},null,{\"selectedObject\":[\"selectedObjectChanged\"]}]]],[\"gx-ide-sc-chat-container.cjs\",[[1,\"gx-ide-sc-chat-container\",{\"showAdditionalContent\":[32],\"conversationCopied\":[32],\"assistantStatus\":[32]}]]],[\"gx-ide-select-kb-items.cjs\",[[1,\"gx-ide-select-kb-items\",{\"cancelCallback\":[16],\"checkboxType\":[1,\"checkbox-type\"],\"expandOnClick\":[4,\"expand-on-click\"],\"checkedChanged\":[16],\"confirmCallback\":[16],\"dialogActions\":[16],\"itemContextMenuCallback\":[16],\"itemsList\":[16],\"multiSelection\":[4,\"multi-selection\"],\"selectionChanged\":[16],\"nodeListFlattenedTreeModel\":[32],\"loading\":[32],\"nodesVersionsViewType\":[32],\"nodeVersionsListTreeModel\":[32],\"searchPatternValue\":[32],\"toggleCheckboxes\":[32],\"suspendShortcuts\":[64],\"updateSelection\":[64]},null,{\"itemsList\":[\"watchNodeListHandler\"]}]]],[\"gx-ide-select-user-team.cjs\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team.cjs\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-ww-files.cjs\",[[1,\"gx-ide-ww-files\",{\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"filterModules\":[16],\"types\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"newFileCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionChangeCallback\":[16],\"showSearchContents\":[4,\"show-search-contents\"],\"showDescription\":[4,\"show-description\"],\"showModifiedDate\":[4,\"show-modified-date\"],\"showLastUser\":[4,\"show-last-user\"],\"showImportDate\":[4,\"show-import-date\"],\"showType\":[4,\"show-type\"],\"showLastBuildDate\":[4,\"show-last-build-date\"],\"categoriesComboBoxModel\":[32],\"afterCurrentValue\":[32],\"filterAfterOptions\":[32],\"enabledModifiedControls\":[32],\"filterModified\":[32],\"filterMore\":[32],\"objects\":[32],\"filterFilesInputValue\":[32],\"filteredFiles\":[32],\"selectedObjectsIds\":[32],\"advancedFilterAccordionExpanded\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"categories\":[\"categoriesChanged\"]}]]],[\"gx-ide-about.cjs\",[[1,\"gx-ide-about\",{\"version\":[1],\"ideVersion\":[1,\"ide-version\"],\"blVersion\":[1,\"bl-version\"],\"detailsCallback\":[16],\"privacyPolicyCallback\":[16],\"termsAndConditionsCallback\":[16]}]]],[\"gx-ide-card.cjs\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server.cjs\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server.cjs\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info.cjs\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector.cjs\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-gam-installation-settings.cjs\",[[1,\"gx-ide-gam-installation-settings\",{\"cancelCallback\":[16],\"canSelectPanels\":[4,\"can-select-panels\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"repairCallback\":[16],\"saveCallback\":[16]}]]],[\"gx-ide-new-environment.cjs\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb.cjs\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-new-version.cjs\",[[1,\"gx-ide-new-version\",{\"cancelCallback\":[16],\"createCallback\":[16],\"defaultInputValues\":[16],\"versionName\":[32],\"versionDescription\":[32],\"setNewVersionAsActive\":[32]},null,{\"defaultInputValues\":[\"defaultInputValuesChanged\"]}]]],[\"gx-ide-share-kb.cjs\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in.cjs\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash.cjs\",[[1,\"gx-ide-splash\",{\"downloadDockerCallback\":[16],\"quitCallback\":[16],\"messages\":[16],\"openLogCallback\":[16],\"showQuitButton\":[4,\"show-quit-button\"],\"showOpenLogLink\":[4,\"show-open-log-link\"],\"showDockerMissingError\":[4,\"show-docker-missing-error\"],\"ariaBusy\":[32]}]]],[\"gx-ide-switch-panel.cjs\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher.cjs\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test.cjs\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar.cjs\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page.cjs\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-bpm-objects-selector.cjs\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message.cjs\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-chat-container.cjs\",[[4,\"gx-ide-chat-container\",{\"chatTitle\":[1,\"chat-title\"],\"copyConversationCallback\":[16],\"deleteConversationCallback\":[16],\"displayConversationCopiedMessage\":[32],\"showCopyConversationMessage\":[64]}]]],[\"gx-ide-list-selector_2.cjs\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]],[\"gx-ide-status-buttons.cjs\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-loader.cjs\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-container_2.cjs\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]]]"), options);
|
|
9
|
+
return index.bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl.cjs\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files.cjs\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import.cjs\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment.cjs\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update.cjs\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector.cjs\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references.cjs\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2.cjs\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report.cjs\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector.cjs\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes.cjs\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images.cjs\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration.cjs\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles.cjs\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm.cjs\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration.cjs\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import.cjs\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server.cjs\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-kb-manager-export.cjs\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-start-page.cjs\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit.cjs\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection.cjs\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision.cjs\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template.cjs\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings.cjs\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant.cjs\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home.cjs\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector.cjs\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-entity-selector.cjs\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-new-object.cjs\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"suggestNameCallback\":[16],\"suggestDescriptionCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-empty-state.cjs\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-references.cjs\",[[1,\"gx-ide-references\",{\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"selectorSourceCallback\":[16],\"selectedObject\":[1040],\"barHidden\":[32],\"objectsSuggestions\":[32],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32]},null,{\"selectedObject\":[\"selectedObjectChanged\"]}]]],[\"gx-ide-sc-chat-container.cjs\",[[1,\"gx-ide-sc-chat-container\",{\"showAdditionalContent\":[32],\"conversationCopied\":[32],\"assistantStatus\":[32]}]]],[\"gx-ide-select-kb-items.cjs\",[[1,\"gx-ide-select-kb-items\",{\"activeItemCallback\":[16],\"cancelCallback\":[16],\"checkboxType\":[1,\"checkbox-type\"],\"expandOnClick\":[4,\"expand-on-click\"],\"checkedChanged\":[16],\"confirmCallback\":[16],\"dialogActions\":[16],\"itemContextMenuCallback\":[16],\"itemsList\":[16],\"multiSelection\":[4,\"multi-selection\"],\"selectionChanged\":[16],\"activeItemNode\":[32],\"nodeListFlattenedTreeModel\":[32],\"loading\":[32],\"nodesVersionsViewType\":[32],\"nodeVersionsListTreeModel\":[32],\"searchPatternValue\":[32],\"toggleCheckboxes\":[32],\"suspendShortcuts\":[64],\"updateSelection\":[64]},null,{\"itemsList\":[\"watchNodeListHandler\"]}]]],[\"gx-ide-select-user-team.cjs\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team.cjs\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-ww-files.cjs\",[[1,\"gx-ide-ww-files\",{\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"filterModules\":[16],\"types\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"newFileCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionChangeCallback\":[16],\"showSearchContents\":[4,\"show-search-contents\"],\"showDescription\":[4,\"show-description\"],\"showModifiedDate\":[4,\"show-modified-date\"],\"showLastUser\":[4,\"show-last-user\"],\"showImportDate\":[4,\"show-import-date\"],\"showType\":[4,\"show-type\"],\"showLastBuildDate\":[4,\"show-last-build-date\"],\"categoriesComboBoxModel\":[32],\"afterCurrentValue\":[32],\"filterAfterOptions\":[32],\"enabledModifiedControls\":[32],\"filterModified\":[32],\"filterMore\":[32],\"objects\":[32],\"filterFilesInputValue\":[32],\"filteredFiles\":[32],\"selectedObjectsIds\":[32],\"advancedFilterAccordionExpanded\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"categories\":[\"categoriesChanged\"]}]]],[\"gx-ide-about.cjs\",[[1,\"gx-ide-about\",{\"version\":[1],\"ideVersion\":[1,\"ide-version\"],\"blVersion\":[1,\"bl-version\"],\"detailsCallback\":[16],\"privacyPolicyCallback\":[16],\"termsAndConditionsCallback\":[16]}]]],[\"gx-ide-card.cjs\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server.cjs\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server.cjs\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info.cjs\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector.cjs\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-gam-installation-settings.cjs\",[[1,\"gx-ide-gam-installation-settings\",{\"cancelCallback\":[16],\"canSelectPanels\":[4,\"can-select-panels\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"repairCallback\":[16],\"saveCallback\":[16]}]]],[\"gx-ide-new-environment.cjs\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb.cjs\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-new-version.cjs\",[[1,\"gx-ide-new-version\",{\"cancelCallback\":[16],\"createCallback\":[16],\"defaultInputValues\":[16],\"versionName\":[32],\"versionDescription\":[32],\"setNewVersionAsActive\":[32]},null,{\"defaultInputValues\":[\"defaultInputValuesChanged\"]}]]],[\"gx-ide-share-kb.cjs\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in.cjs\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash.cjs\",[[1,\"gx-ide-splash\",{\"downloadDockerCallback\":[16],\"quitCallback\":[16],\"messages\":[16],\"openLogCallback\":[16],\"showQuitButton\":[4,\"show-quit-button\"],\"showOpenLogLink\":[4,\"show-open-log-link\"],\"showDockerMissingError\":[4,\"show-docker-missing-error\"],\"ariaBusy\":[32]}]]],[\"gx-ide-switch-panel.cjs\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher.cjs\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test.cjs\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar.cjs\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page.cjs\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-bpm-objects-selector.cjs\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message.cjs\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-chat-container.cjs\",[[4,\"gx-ide-chat-container\",{\"chatTitle\":[1,\"chat-title\"],\"copyConversationCallback\":[16],\"deleteConversationCallback\":[16],\"displayConversationCopiedMessage\":[32],\"showCopyConversationMessage\":[64]}]]],[\"gx-ide-list-selector_2.cjs\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]],[\"gx-ide-status-buttons.cjs\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-loader.cjs\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-container_2.cjs\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]]]"), options);
|
|
10
10
|
};
|
|
11
11
|
|
|
12
12
|
exports.setNonce = index.setNonce;
|
|
@@ -14,7 +14,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
14
14
|
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
15
15
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
16
16
|
};
|
|
17
|
-
var _GxIdeDataSelector_firstGridObjectId, _GxIdeDataSelector_loadItemsCallbackJustCalled, _GxIdeDataSelector_componentLocale, _GxIdeDataSelector_animateEmptyState, _GxIdeDataSelector_shortcutsSrc, _GxIdeDataSelector_filterPatternEl, _GxIdeDataSelector_filterObjectEl, _GxIdeDataSelector_chShortcutsEl, _GxIdeDataSelector_chTabularGridObjectsEl, _GxIdeDataSelector_evaluateFirstRowSelection, _GxIdeDataSelector_chGridKeyDownHandler, _GxIdeDataSelector_confirmCallbackHandler, _GxIdeDataSelector_editCallbackHandler, _GxIdeDataSelector_hostKeyPressHandler, _GxIdeDataSelector_objectsSelectionChangedHandler, _GxIdeDataSelector_newVariableCallbackHandler, _GxIdeDataSelector_refreshUIWithNewConfiguration, _GxIdeDataSelector_renderFilter, _GxIdeDataSelector_renderObjects, _GxIdeDataSelector_sortObjectsByName;
|
|
17
|
+
var _GxIdeDataSelector_firstGridObjectId, _GxIdeDataSelector_loadItemsCallbackJustCalled, _GxIdeDataSelector_componentLocale, _GxIdeDataSelector_animateEmptyState, _GxIdeDataSelector_shortcutsSrc, _GxIdeDataSelector_filterPatternEl, _GxIdeDataSelector_filterObjectEl, _GxIdeDataSelector_chShortcutsEl, _GxIdeDataSelector_chTabularGridObjectsEl, _GxIdeDataSelector_evaluateFirstRowSelection, _GxIdeDataSelector_chGridKeyDownHandler, _GxIdeDataSelector_confirmCallbackHandler, _GxIdeDataSelector_editCallbackHandler, _GxIdeDataSelector_hostKeyPressHandler, _GxIdeDataSelector_objectsSelectionChangedHandler, _GxIdeDataSelector_newVariableCallbackHandler, _GxIdeDataSelector_refreshUIWithNewConfiguration, _GxIdeDataSelector_renderFilter, _GxIdeDataSelector_renderObjects, _GxIdeDataSelector_renderEditButtons, _GxIdeDataSelector_sortObjectsByName;
|
|
18
18
|
/* eslint-disable @stencil-community/own-props-must-be-private */
|
|
19
19
|
import { Host, h, getAssetPath } from "@stencil/core";
|
|
20
20
|
import { Locale } from "../../common/locale";
|
|
@@ -129,6 +129,20 @@ export class GxIdeDataSelector {
|
|
|
129
129
|
? "objects/attribute"
|
|
130
130
|
: "objects-parts/variables", class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.dataType), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description)))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", null, displayLoader ? (h("gx-ide-loader", { loaderTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").loader.title, show: true })) : (h("gx-ide-empty-state", { isAnimated: __classPrivateFieldGet(this, _GxIdeDataSelector_animateEmptyState, "f"), stateIconSrc: FILTER_ICON, stateTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").emptyState.title })))))));
|
|
131
131
|
});
|
|
132
|
+
_GxIdeDataSelector_renderEditButtons.set(this, () => {
|
|
133
|
+
if (!this.editCallback && !this.newVariableCallback) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
const newVariableButtonEnabled = this.newVariableCallback && !this.loading;
|
|
137
|
+
const editButtonEnabled = this.editCallback && !this.loading && this.selectedObjectsIds.length;
|
|
138
|
+
return (h("div", { class: "buttons-spacer" }, this.newVariableCallback ? (h("button", {
|
|
139
|
+
// New Variable Button
|
|
140
|
+
class: "button-secondary", disabled: !newVariableButtonEnabled, part: "button button-new", type: "button", onClick: __classPrivateFieldGet(this, _GxIdeDataSelector_newVariableCallbackHandler, "f")
|
|
141
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnNew)) : ([]), this.editCallback ? (h("button", {
|
|
142
|
+
// Edit Button
|
|
143
|
+
class: "button-secondary", disabled: !editButtonEnabled, part: "button button-edit", type: "button", onClick: editButtonEnabled && __classPrivateFieldGet(this, _GxIdeDataSelector_editCallbackHandler, "f")
|
|
144
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnEdit)) : ([])));
|
|
145
|
+
});
|
|
132
146
|
_GxIdeDataSelector_sortObjectsByName.set(this, (objects) =>
|
|
133
147
|
// TODO (make this a common helper function
|
|
134
148
|
// and use it in other dialog grids that
|
|
@@ -188,16 +202,15 @@ export class GxIdeDataSelector {
|
|
|
188
202
|
return isValid;
|
|
189
203
|
}
|
|
190
204
|
render() {
|
|
191
|
-
const newVariableButtonEnabled = !this.loading;
|
|
192
|
-
const editButtonEnabled = !this.loading && this.selectedObjectsIds.length;
|
|
193
205
|
const okButtonEnabled = !this.loading;
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
206
|
+
const footerJustifySpaceBetween = !!this.newVariableCallback || !!this.editCallback;
|
|
207
|
+
return (h(Host, { onKeyPress: __classPrivateFieldGet(this, _GxIdeDataSelector_hostKeyPressHandler, "f"), class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeDataSelector_shortcutsSrc, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_chShortcutsEl, el, "f")) }), h("section", { class: "section" }, h("header", { class: "header control-header-with-border spacing-body-block-start spacing-body-inline" }, __classPrivateFieldGet(this, _GxIdeDataSelector_renderFilter, "f").call(this)), __classPrivateFieldGet(this, _GxIdeDataSelector_renderObjects, "f").call(this), h("footer", { class: {
|
|
208
|
+
"footer": true,
|
|
209
|
+
"control-footer-with-border": true,
|
|
210
|
+
"control-footer-space-between": footerJustifySpaceBetween,
|
|
211
|
+
"spacing-body-inline": true,
|
|
212
|
+
"spacing-body-block-end": true
|
|
213
|
+
} }, __classPrivateFieldGet(this, _GxIdeDataSelector_renderEditButtons, "f").call(this), h("div", { class: "buttons-spacer" }, h("button", {
|
|
201
214
|
// Cancel Button
|
|
202
215
|
class: "button-secondary", part: "button button-cancel", type: "button", onClick: this.cancelCallback
|
|
203
216
|
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnCancel), h("button", {
|
|
@@ -316,7 +329,7 @@ export class GxIdeDataSelector {
|
|
|
316
329
|
}
|
|
317
330
|
}
|
|
318
331
|
},
|
|
319
|
-
"required":
|
|
332
|
+
"required": false,
|
|
320
333
|
"optional": false,
|
|
321
334
|
"docs": {
|
|
322
335
|
"tags": [],
|
|
@@ -376,7 +389,7 @@ export class GxIdeDataSelector {
|
|
|
376
389
|
}
|
|
377
390
|
}
|
|
378
391
|
},
|
|
379
|
-
"required":
|
|
392
|
+
"required": false,
|
|
380
393
|
"optional": false,
|
|
381
394
|
"docs": {
|
|
382
395
|
"tags": [],
|
|
@@ -475,5 +488,5 @@ export class GxIdeDataSelector {
|
|
|
475
488
|
}
|
|
476
489
|
static get elementRef() { return "el"; }
|
|
477
490
|
}
|
|
478
|
-
_GxIdeDataSelector_firstGridObjectId = new WeakMap(), _GxIdeDataSelector_loadItemsCallbackJustCalled = new WeakMap(), _GxIdeDataSelector_componentLocale = new WeakMap(), _GxIdeDataSelector_animateEmptyState = new WeakMap(), _GxIdeDataSelector_shortcutsSrc = new WeakMap(), _GxIdeDataSelector_filterPatternEl = new WeakMap(), _GxIdeDataSelector_filterObjectEl = new WeakMap(), _GxIdeDataSelector_chShortcutsEl = new WeakMap(), _GxIdeDataSelector_chTabularGridObjectsEl = new WeakMap(), _GxIdeDataSelector_evaluateFirstRowSelection = new WeakMap(), _GxIdeDataSelector_chGridKeyDownHandler = new WeakMap(), _GxIdeDataSelector_confirmCallbackHandler = new WeakMap(), _GxIdeDataSelector_editCallbackHandler = new WeakMap(), _GxIdeDataSelector_hostKeyPressHandler = new WeakMap(), _GxIdeDataSelector_objectsSelectionChangedHandler = new WeakMap(), _GxIdeDataSelector_newVariableCallbackHandler = new WeakMap(), _GxIdeDataSelector_refreshUIWithNewConfiguration = new WeakMap(), _GxIdeDataSelector_renderFilter = new WeakMap(), _GxIdeDataSelector_renderObjects = new WeakMap(), _GxIdeDataSelector_sortObjectsByName = new WeakMap();
|
|
491
|
+
_GxIdeDataSelector_firstGridObjectId = new WeakMap(), _GxIdeDataSelector_loadItemsCallbackJustCalled = new WeakMap(), _GxIdeDataSelector_componentLocale = new WeakMap(), _GxIdeDataSelector_animateEmptyState = new WeakMap(), _GxIdeDataSelector_shortcutsSrc = new WeakMap(), _GxIdeDataSelector_filterPatternEl = new WeakMap(), _GxIdeDataSelector_filterObjectEl = new WeakMap(), _GxIdeDataSelector_chShortcutsEl = new WeakMap(), _GxIdeDataSelector_chTabularGridObjectsEl = new WeakMap(), _GxIdeDataSelector_evaluateFirstRowSelection = new WeakMap(), _GxIdeDataSelector_chGridKeyDownHandler = new WeakMap(), _GxIdeDataSelector_confirmCallbackHandler = new WeakMap(), _GxIdeDataSelector_editCallbackHandler = new WeakMap(), _GxIdeDataSelector_hostKeyPressHandler = new WeakMap(), _GxIdeDataSelector_objectsSelectionChangedHandler = new WeakMap(), _GxIdeDataSelector_newVariableCallbackHandler = new WeakMap(), _GxIdeDataSelector_refreshUIWithNewConfiguration = new WeakMap(), _GxIdeDataSelector_renderFilter = new WeakMap(), _GxIdeDataSelector_renderObjects = new WeakMap(), _GxIdeDataSelector_renderEditButtons = new WeakMap(), _GxIdeDataSelector_sortObjectsByName = new WeakMap();
|
|
479
492
|
//# sourceMappingURL=data-selector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAAiE;AACjE,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,OAAO,EACP,KAAK,EACL,MAAM,EACN,YAAY,EACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAkB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/D,0BAA0B;AAC1B,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,yBAAyB;IACzB,iBAAiB;IACjB,YAAY;IACZ,cAAc;IACd,eAAe;IACf,qBAAqB;CACtB,CAAC;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,QAAQ,EAAE,cAAc;IACxB,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,cAAc;CAC1B,CAAC,CAAC;AAQH,MAAM,OAAO,iBAAiB;;QAC5B,uDAA2B,CAAC,0DAA0D;QACtF,yDAAwC,KAAK,EAAC,CAAC,0DAA0D;QAEzG,qDAAsB;QACtB,+CAA8B,KAAK,EAAC;QACpC,0CAAgB,YAAY,CAAC,8CAA8C,CAAC,EAAC;QAC7E,uCAAuC;QACvC,qDAAqC;QACrC,oDAAiD;QACjD,mDAAuC;QACvC,4DAAkD;QA6GlD;;WAEG;QACH,uDAA6B,GAAG,EAAE;YAChC,IAAI,uBAAA,IAAI,sDAA6B,EAAE;gBACrC,uBAAA,IAAI,iDAAwB,CAAC,SAAS,CAAC,uBAAA,IAAI,4CAAmB,CAAC,CAAC;aACjE;YACD,uBAAA,IAAI,kDAAgC,KAAK,MAAA,CAAC;QAC5C,CAAC,EAAC;QAEF,kDAAwB,CAAC,CAAgB,EAAE,EAAE;YAC3C,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;gBACrB,uBAAA,IAAI,iDAAwB,MAA5B,IAAI,EAAyB,CAAC,CAAC,CAAC;aACjC;QACH,CAAC,EAAC;QAEF,oDAA0B,CAAC,CAA6B,EAAQ,EAAE;YAChE,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChD,CAAC,EAAC;QAEF,iDAAuB,KAAK,EAAE,CAAa,EAAiB,EAAE;YAC5D,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;gBAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,IAAI,MAAM,EAAE;oBACV,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;iBACvC;aACF;QACH,CAAC,EAAC;QAEF,iDAAuB,CAAC,CAAgB,EAAE,EAAE;YAC1C,sCAAsC;YACtC,oCAAoC;YACpC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;gBACrB,CAAC,CAAC,eAAe,EAAE,CAAC;aACrB;QACH,CAAC,EAAC;QAEF,4DAAkC,CAChC,KAAoD,EACpD,EAAE;YACF,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAChD,CAAC,EAAC;QAEF,wDAA8B,KAAK,IAAI,EAAE;YACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClD,IAAI,QAAQ,EAAE;gBACZ,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;aACvC;QACH,CAAC,EAAC;QACF,2DAAiC,GAAS,EAAE;;YAC1C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,MAAM,OAAO,GAAgB;gBAC3B,OAAO,EAAE,MAAA,uBAAA,IAAI,0CAAiB,0CAAE,KAAK;gBACrC,MAAM,EAAE,MAAA,MAAA,uBAAA,IAAI,yCAAgB,0CAAE,KAAK,0CAAE,EAAE;aACxC,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAiB,EAAE,EAAE;gBACzD,IAAI,KAAK,CAAC,MAAM,EAAE;oBAChB,IAAI,CAAC,OAAO,GAAG,uBAAA,IAAI,4CAAmB,MAAvB,IAAI,EAAoB,KAAK,CAAC,CAAC;oBAC9C,uBAAA,IAAI,wCAAsB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,MAAA,CAAC;oBAC7C,uBAAA,IAAI,kDAAgC,IAAI,MAAA,CAAC;iBAC1C;gBACD,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC,EAAC;QAEF,0CAAgB,GAAc,EAAE;YAC9B,OAAO;gBACL,WAAK,KAAK,EAAC,iCAAiC;oBAC1C,WAAK,KAAK,EAAC,iCAAiC;wBAC1C,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,gBAAgB,IAC1C,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,OAAO,CAC/B;wBACR,eACE,SAAS,QACT,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,qBAAqB,EAC3B,IAAI,EAAC,gBAAgB,EACrB,QAAQ,EAAE,MAAM,CAAC,aAAa,EAC9B,OAAO,EAAE,uBAAA,IAAI,wDAA+B,EAC5C,GAAG,EAAE,CAAC,EAAqB,EAAE,EAAE,CAC7B,CAAC,uBAAA,IAAI,sCAAoB,EAAuB,MAAA,CAAC,GAE1C,CACP;oBACN,8BACE,EAAE,EAAC,iBAAiB,EACpB,KAAK,EAAE,IAAI,CAAC,aAAa,EACzB,YAAY,EAAE,IAAI,CAAC,aAAa,EAChC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,GAAG,EAAE,CAAC,EAAkC,EAAE,EAAE,CAC1C,CAAC,uBAAA,IAAI,qCAAmB,EAAoC,MAAA,CAAC,EAE/D,KAAK,EAAC,QAAQ,EACd,cAAc,EAAE,uBAAA,IAAI,wDAA+B,GAC3B,CACtB;aACP,CAAC;QACJ,CAAC,EAAC;QAEF,2CAAiB,GAAY,EAAE;YAC7B,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACzC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC;YAClD,IAAI,CAAC,WAAW,IAAI,aAAa,EAAE;gBACjC,uBAAA,IAAI,wCAAsB,IAAI,MAAA,CAAC,CAAC,yCAAyC;aAC1E;YACD,OAAO,CACL,uBACE,KAAK,EAAE;oBACL,cAAc,EAAE,IAAI;oBACpB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;oBACzC,MAAM,EAAE,IAAI;iBACb,EACD,gBAAgB,EAAE,IAAI,CAAC,aAAa,EACpC,SAAS,EAAE,uBAAA,IAAI,+CAAsB,EACrC,IAAI,EAAC,iBAAiB,EACtB,kBAAkB,EAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAA,IAAI,yDAAgC,CAAC,CAAC,CAAC,SAAS,EAExE,GAAG,EAAE,CAAC,EAA4B,EAAE,EAAE,CACpC,CAAC,uBAAA,IAAI,6CAA2B,EAA8B,MAAA,CAAC;gBAGjE,iCAA2B,KAAK,EAAC,yBAAyB;oBACxD,sDACuB,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAC3C,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,IAAI,0BAC5B,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,QAAQ,0BAChC,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,WAAW,0BACnC,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH,CACA;gBAE3B,CAAC,WAAW,CAAC,CAAC,CAAC,CACd,8BAAwB,KAAK,EAAC,qBAAqB,IAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAa,EAAE,EAAE,CAAC,CACnC,2BACE,KAAK,EAAE,GAAG,CAAC,EAAE,EACb,UAAU,EAAE,uBAAA,IAAI,iDAAwB,EACxC,KAAK,EAAC,kBAAkB;oBAExB,4BAAsB,KAAK,EAAC,mBAAmB;wBAC7C,gBACE,GAAG,EACD,GAAG,CAAC,IAAI,KAAK,WAAW;gCACtB,CAAC,CAAC,mBAAmB;gCACrB,CAAC,CAAC,yBAAyB,EAE/B,KAAK,EAAC,SAAS,GACL,CACS;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,IAAI,CACY;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,QAAQ,CACQ;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,WAAW,CACK,CACH,CACvB,CAAC,CACqB,CAC1B,CAAC,CAAC,CAAC,CACF,8BAAwB,KAAK,EAAC,qBAAqB;oBACjD,wCACG,aAAa,CAAC,CAAC,CAAC,CACf,qBACE,WAAW,EAAE,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,KAAK,EAC/C,IAAI,SACW,CAClB,CAAC,CAAC,CAAC,CACF,0BACE,UAAU,EAAE,uBAAA,IAAI,4CAAmB,EACnC,YAAY,EAAE,WAAW,EACzB,UAAU,EAAE,uBAAA,IAAI,0CAAiB,CAAC,UAAU,CAAC,KAAK,GAC9B,CACvB,CAC4B,CACR,CAC1B,CACe,CACnB,CAAC;QACJ,CAAC,EAAC;QAEF,+CAAqB,CAAC,OAAmB,EAAc,EAAE;QACvD,2CAA2C;QAC3C,wCAAwC;QACxC,2BAA2B;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAChC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,IAAI,KAAK,GAAG,KAAK,EAAE;gBACjB,OAAO,CAAC,CAAC,CAAC;aACX;YACD,IAAI,KAAK,GAAG,KAAK,EAAE;gBACjB,OAAO,CAAC,CAAC;aACV;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,EAAC;uBArUuB,IAAI;uBAKD,EAAE;kCAKO,EAAE;;;;4BAoBV,KAAK;;;sBAgBX,KAAK;;;6BAiByB,UAAU;;IAElE,KAAK,CAAC,iBAAiB;QACrB,uBAAA,IAAI,sCAAoB,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAA,CAAC;IACpE,CAAC;IAED,iBAAiB;QACf,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;IACxC,CAAC;IAED,gBAAgB;QACd,uBAAA,IAAI,0CAAiB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,uBAAA,IAAI,oDAA2B,MAA/B,IAAI,CAA6B,CAAC;IACpC,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,gBAAgB,CAAC,gBAAyB;QAC9C,IAAI,gBAAgB,EAAE;YACpB,uBAAA,IAAI,wCAAe,CAAC,OAAO,GAAG,IAAI,CAAC;SACpC;aAAM;YACL,uBAAA,IAAI,wCAAe,CAAC,OAAO,GAAG,KAAK,CAAC;SACrC;IACH,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,QAAQ;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,OAAO,OAAO,CAAC;IACjB,CAAC;IAmOD,MAAM;QACJ,MAAM,wBAAwB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;QAC/C,MAAM,iBAAiB,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAC1E,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;QAEtC,OAAO,CACL,EAAC,IAAI,IAAC,UAAU,EAAE,uBAAA,IAAI,8CAAqB,EAAE,KAAK,EAAC,QAAQ;YACzD,gBAAU,KAAK,EAAE,WAAW,GAAa;YACzC,oBACE,GAAG,EAAE,uBAAA,IAAI,uCAAc,EACvB,GAAG,EAAE,CAAC,EAA0B,EAAE,EAAE,CAClC,CAAC,uBAAA,IAAI,oCAAkB,EAA4B,MAAA,CAAC,GAExC;YAEhB,eAAS,KAAK,EAAC,SAAS;gBACtB,cAAQ,KAAK,EAAC,gFAAgF,IAC3F,uBAAA,IAAI,uCAAc,MAAlB,IAAI,CAAgB,CACd;gBACR,uBAAA,IAAI,wCAAe,MAAnB,IAAI,CAAiB;gBACtB,cAAQ,KAAK,EAAC,2GAA2G;oBACvH,WAAK,KAAK,EAAC,gBAAgB;wBACzB;4BACE,sBAAsB;4BACtB,KAAK,EAAC,kBAAkB,EACxB,QAAQ,EAAE,CAAC,wBAAwB,EACnC,IAAI,EAAC,mBAAmB,EACxB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,uBAAA,IAAI,qDAA4B,IAExC,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,MAAM,CAC7B;wBACT;4BACE,cAAc;4BACd,KAAK,EAAC,kBAAkB,EACxB,QAAQ,EAAE,CAAC,iBAAiB,EAC5B,IAAI,EAAC,oBAAoB,EACzB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,iBAAiB,IAAI,uBAAA,IAAI,8CAAqB,IAEtD,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,OAAO,CAC9B,CACL;oBAEN,WAAK,KAAK,EAAC,gBAAgB;wBACzB;4BACE,gBAAgB;4BAChB,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAC,sBAAsB,EAC3B,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,IAAI,CAAC,cAAc,IAE3B,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,SAAS,CAChC;wBACT;4BACE,iBAAiB;4BACjB,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAC,kBAAkB,EACvB,QAAQ,EAAE,CAAC,eAAe,EAC1B,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,eAAe,IAAI,uBAAA,IAAI,iDAAwB,IAEvD,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,UAAU,CACjC,CACL,CACC,CACD,CACL,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback!: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback!: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const newVariableButtonEnabled = !this.loading;\n const editButtonEnabled = !this.loading && this.selectedObjectsIds.length;\n const okButtonEnabled = !this.loading;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header control-header-with-border spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer class=\"footer control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n </div>\n\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n type=\"button\"\n onClick={this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean>;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
|
|
1
|
+
{"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath,\n JSX\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderEditButtons = (): JSX.Element | null => {\n if (!this.editCallback && !this.newVariableCallback) {\n return null;\n }\n\n const newVariableButtonEnabled = this.newVariableCallback && !this.loading;\n const editButtonEnabled =\n this.editCallback && !this.loading && this.selectedObjectsIds.length;\n\n return (\n <div class=\"buttons-spacer\">\n {this.newVariableCallback ? (\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n ) : (\n []\n )}\n {this.editCallback ? (\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n ) : (\n []\n )}\n </div>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const okButtonEnabled = !this.loading;\n const footerJustifySpaceBetween: boolean =\n !!this.newVariableCallback || !!this.editCallback;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header control-header-with-border spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer\n class={{\n \"footer\": true,\n \"control-footer-with-border\": true,\n \"control-footer-space-between\": footerJustifySpaceBetween,\n \"spacing-body-inline\": true,\n \"spacing-body-block-end\": true\n }}\n >\n {this.#renderEditButtons()}\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n type=\"button\"\n onClick={this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean> | undefined;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean> | undefined;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
|