@genexus/genexus-ide-ui 0.0.57 → 0.0.58
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/{ch-checkbox_4.cjs.entry.js → ch-checkbox_3.cjs.entry.js} +54 -43
- package/dist/cjs/ch-suggest_4.cjs.entry.js +2 -2
- package/dist/cjs/ch-test-suggest.cjs.entry.js +84 -0
- package/dist/cjs/ch-test-tree-x.cjs.entry.js +31 -16
- package/dist/cjs/ch-tooltip.cjs.entry.js +85 -0
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +76 -116
- package/dist/cjs/gx-ide-test.cjs.entry.js +51 -5
- package/dist/cjs/gxg-label_2.cjs.entry.js +15 -2
- package/dist/cjs/gxg-tree-view.cjs.entry.js +36 -14
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/common/helpers.js +3 -0
- package/dist/collection/components/references/helpers.js +16 -19
- package/dist/collection/components/references/references.css +8 -0
- package/dist/collection/components/references/references.js +60 -98
- package/dist/components/ch-suggest2.js +2 -2
- package/dist/components/ch-test-suggest.js +119 -0
- package/dist/components/ch-test-tree-x.js +38 -28
- package/dist/components/ch-tooltip.js +115 -0
- package/dist/components/gx-ide-references.js +122 -150
- package/dist/components/gx-ide-test.js +48 -2
- package/dist/components/gxg-tree-view.js +1 -434
- package/dist/components/index.js +2 -1
- package/dist/components/tooltip.js +17 -3
- package/dist/components/tree-view.js +453 -0
- package/dist/components/tree-x-list-item.js +35 -23
- package/dist/components/tree-x.js +21 -7
- package/dist/esm/{ch-checkbox_4.entry.js → ch-checkbox_3.entry.js} +55 -43
- package/dist/esm/ch-suggest_4.entry.js +2 -2
- package/dist/esm/ch-test-suggest.entry.js +80 -0
- package/dist/esm/ch-test-tree-x.entry.js +32 -17
- package/dist/esm/ch-tooltip.entry.js +81 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-references.entry.js +76 -116
- package/dist/esm/gx-ide-test.entry.js +48 -2
- package/dist/esm/gxg-label_2.entry.js +15 -2
- package/dist/esm/gxg-tree-view.entry.js +37 -15
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/p-109209dc.entry.js +1 -0
- package/dist/genexus-ide-ui/p-123b8351.entry.js +1 -0
- package/dist/genexus-ide-ui/p-71c6da54.entry.js +1 -0
- package/dist/genexus-ide-ui/p-86b98a99.entry.js +1 -0
- package/dist/genexus-ide-ui/p-cd00ba19.entry.js +1 -0
- package/dist/genexus-ide-ui/p-ce9fef1a.entry.js +1 -0
- package/dist/genexus-ide-ui/p-d47ed4e3.entry.js +1 -0
- package/dist/genexus-ide-ui/p-d7b452ef.entry.js +1 -0
- package/dist/genexus-ide-ui/p-f62d9b6d.entry.js +1 -0
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-suggest/test-suggest.css +114 -0
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tooltip/tooltip.css +120 -0
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/{tree-x → tree-view/tree-x}/tree-x.css +2 -3
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/{tree-x-list-item → tree-view/tree-x-list-item}/tree-x-list-item.css +3 -6
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tooltip/tooltip.css +11 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-view/tree-view.css +58 -12
- package/dist/types/common/helpers.d.ts +1 -0
- package/dist/types/components/references/helpers.d.ts +3 -3
- package/dist/types/components/references/references.d.ts +7 -19
- package/package.json +3 -3
- package/dist/cjs/update-tree-model-8b154db1.js +0 -53
- package/dist/components/ch-tree-x-list.js +0 -6
- package/dist/components/tree-x-list.js +0 -31
- package/dist/components/update-tree-model.js +0 -50
- package/dist/esm/update-tree-model-6c612f05.js +0 -50
- package/dist/genexus-ide-ui/p-1f3a81e3.entry.js +0 -1
- package/dist/genexus-ide-ui/p-46d393f5.entry.js +0 -1
- package/dist/genexus-ide-ui/p-5669baf5.entry.js +0 -1
- package/dist/genexus-ide-ui/p-60b2bd2f.entry.js +0 -1
- package/dist/genexus-ide-ui/p-71ecc7fd.js +0 -1
- package/dist/genexus-ide-ui/p-c7425416.entry.js +0 -1
- package/dist/genexus-ide-ui/p-dd2e0590.entry.js +0 -1
- package/dist/genexus-ide-ui/p-ed5cf480.entry.js +0 -1
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x-list/tree-x-list.css +0 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,c as t,h as i,H as r,g as o}from"./p-976c3a09.js";import{L as a}from"./p-26957490.js";import{r as s}from"./p-90416fc8.js";const n=e=>{var t;return{caption:e.description,id:e.id,items:(null!==(t=e.items)&&void 0!==t?t:[]).map(n),lazy:e.hasChildren&&(null==e.items||0===e.items.length),leaf:!1===e.hasChildren,leftImgSrc:e.icon}},d=e=>{const t=[];return e?(e.forEach((e=>{t.push(n(e))})),t):t},l=class{constructor(i){e(this,i),this.componentDidRenderEvent=t(this,"componentDidRenderEvent",7),this.referencesMessagesMaxWidth="200px",this.selectorCategoryData=[],this.attachTreeEvents=()=>{},this.selectObjectSelectionChanged=e=>{this.selectedObject=this.selectorCategoryData[e.detail.indexes.listIndex].items[e.detail.indexes.itemIndex]},this.selectObjectValueChangedHandler=async e=>{this.selectorSourceCallback(e.detail).then((e=>{this.selectorCategoryData=e,this.objectsSuggestions=(e=>{const t={suggestItems:null,suggestLists:[]};return e.length&&e.forEach((e=>{const i={label:e.name,items:[]};e.items.forEach((e=>{i.items.push({value:e.id,description:e.description,icon:e.icon})})),t.suggestLists.push(i)})),t})(e)})).catch((()=>{}))},this.openObjectCallbackHandler=async()=>{this.openObjectCallback(this.selectedObject.id)},this.openSelectorDialogCallbackHandler=async()=>{this.openSelectorDialogCallback().then((e=>{this.selectedObject=e})).catch((()=>{}))},this.evaluateInitialReferenceData=()=>{this.selectedObject&&this.selectedObjectHandler(this.selectedObject)},this.loadReferencesHandler=async(e,t=!1)=>{this.loadReferencesCallback&&this.loadReferencesCallback(e,t).then((e=>{t?this.referencesToTreeData=d(e):this.referencedByTreeData=d(e)}))},this.hideBarButtonClickedHandler=()=>{this.barHidden=!this.barHidden},this.referencesLazyLoadCallbackHandler=e=>async t=>{if(this.loadReferencesCallback){const i="references-to"===e,r=await this.loadReferencesCallback(t,i),o=d(r);return new Promise((e=>{e(o)}))}return new Promise((e=>{e([])}))},this.referenceSelectedHandler=e=>{if(this.selectReferenceCallback){const t=[];e.detail.forEach((e=>{t.push(e.id)})),this.selectReferenceCallback(t[0])}},this.referencedByTreeData=void 0,this.referencesToTreeData=void 0,this.barHidden=!1,this.objectsSuggestions=void 0,this.referencedBy=void 0,this.referencesTo=void 0,this.selectedObject=void 0,this.selectorSourceCallback=void 0,this.loadReferencesCallback=void 0,this.openObjectCallback=void 0,this.openSelectorDialogCallback=void 0,this.selectReferenceCallback=void 0}selectedObjectHandler(e){e.id&&(this.loadReferencesHandler(e.id,!1),this.loadReferencesHandler(e.id,!0))}async componentWillLoad(){this._componentLocale=await a.getComponentStrings(this.el),this.evaluateInitialReferenceData()}componentDidLoad(){this.attachTreeEvents()}componentDidRender(){this.componentDidRenderEvent.emit(this._componentLocale.componentName)}render(){var e,t,o,a,n,d,l,g;return i(r,{class:"gx-ide-component"},i("div",{class:"gx-ide-main-wrapper"},i("gx-ide-container",{displayBorderBottom:!0},i("header",{class:"header"},i("div",{class:"header__top grid"},i("gxg-button",{icon:"navigation/arrow-down",type:"secondary-icon-only",class:"hide-bar-button",onClick:this.hideBarButtonClickedHandler,part:"toggle-bar-button"}),i("gxg-label",{labelPosition:"start",class:"suggest-label",part:"select-object-label"},this._componentLocale.header.selectObject),i("gxg-suggest",null,i("ch-suggest",{value:this.selectedObject.name,onValueChanged:this.selectObjectValueChangedHandler,onSelectionChanged:this.selectObjectSelectionChanged,part:"object-selector-suggest",exportparts:"dropdown:select-object-dropdown"},s(this.objectsSuggestions))),i("gxg-button",{type:"secondary-icon-only",icon:"gemini-tools/show-more-horizontal",onClick:this.openSelectorDialogCallbackHandler,class:"selector-dialog-button",part:"open-selector-dialog-button"})),i("div",{class:{header__bottom:!0,"header__bottom--hidden":this.barHidden}},i("div",{class:"outer-wrapper"},i("div",{class:"inner-wrapper"},i("div",{class:"inner-wrapper__left"},i("gxg-icon",{type:this.selectedObject.icon,color:"auto"}),i("gxg-text",{padding:"s",type:"text-link",part:"open-object-text-link",onClick:this.openObjectCallbackHandler},`${this.selectedObject.name} : ${this.selectedObject.description}`)),i("div",{class:"inner-wrapper__right gxi-hidden"},i("gxg-form-checkbox",{id:"references-by-type",label:"Group references by type",required:!0,"display-validation-styles":!0,part:"references-type-checkbox"}))))))),i("main",{class:"main grid gxi-full-height gxi-overflow-auto"},i("gx-ide-container",{containerTitle:this._componentLocale.main.isReferencedBy,fullHeight:!0,class:"gxi-overflow-auto",part:"referenced-by-container"},i("div",{class:{"reference-container":!0,"reference-container--no-references":!(null===(e=this.referencedByTreeData)||void 0===e?void 0:e.length)}},i("gxg-tree-view",{class:{"gxi-hidden":!(null===(t=this.referencedByTreeData)||void 0===t?void 0:t.length)},part:"referenced-by-tree",treeModel:this.referencedByTreeData,lazyLoadTreeItemsCallback:this.referencesLazyLoadCallbackHandler("referenced-by"),onSelectedItemsChange:this.referenceSelectedHandler,dragDisabled:!0,dropDisabled:!0}),!(null===(o=this.referencedByTreeData)||void 0===o?void 0:o.length)&&i("gxg-text",{textAlign:"center",padding:"m",type:"text-regular",maxWidth:this.referencesMessagesMaxWidth,part:"referenced-by-text"},0===(null===(a=this.referencedByTreeData)||void 0===a?void 0:a.length)?this._componentLocale.main.isReferencedByEmpty:this._componentLocale.main.isReferencedByError))),i("gx-ide-container",{containerTitle:this._componentLocale.main.hasReferencesTo,fullHeight:!0,class:"gxi-overflow-auto",part:"references-to-container"},i("div",{class:{"reference-container":!0,"reference-container--no-references":!(null===(n=this.referencesToTreeData)||void 0===n?void 0:n.length)}},i("gxg-tree-view",{class:{"gxi-hidden":!(null===(d=this.referencesToTreeData)||void 0===d?void 0:d.length)},part:"referenced-to-tree",treeModel:this.referencesToTreeData,lazyLoadTreeItemsCallback:this.referencesLazyLoadCallbackHandler("references-to"),onSelectedItemsChange:this.referenceSelectedHandler}),!(null===(l=this.referencesToTreeData)||void 0===l?void 0:l.length)&&i("gxg-text",{textAlign:"center",padding:"m",type:"text-regular",maxWidth:this.referencesMessagesMaxWidth,part:"references-to-text"},0===(null===(g=this.referencesToTreeData)||void 0===g?void 0:g.length)?this._componentLocale.main.hasReferencesEmpty:this._componentLocale.main.hasReferencesToError))))))}static get assetsDirs(){return["gx-ide-assets/references"]}get el(){return o(this)}static get watchers(){return{selectedObject:["selectedObjectHandler"]}}};l.style='.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--gray-01)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){box-shadow:var(--box-shadow-01) !important;height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--font-weight-regular);font-size:var(--font-size-lg);line-height:1.6em;height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:6px;height:6px}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gx-ide-main::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gx-ide-main::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}.gx-ide-main .gxg-scroll{display:block;overflow-y:auto;padding-inline-end:2px}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:6px;height:6px}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gx-ide-overflow::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}.gx-ide-overflow .gxg-scroll{display:block;overflow-y:auto;padding-inline-end:2px}:host{display:block}.header{}.header__top{grid-template-columns:min-content auto 1fr min-content;grid-template-rows:1fr;grid-template-areas:"hide-bar-button suggest-label gxg-suggest selector-dialog-button"}.header__top .hide-bar-button{grid-area:hide-bar-button}.header__top .suggest-label{grid-area:suggest-label}.header__top gxg-suggest{grid-area:gxg-suggest}.header__top .selector-dialog-button{grid-area:selector-dialog-button}.header__bottom{display:grid;grid-template-rows:1fr;transition:var(--gx-ide-timing-super-fast-ms) grid-template-rows}.header__bottom--hidden{grid-template-rows:0fr}.header__bottom .outer-wrapper{overflow:hidden}.header__bottom .inner-wrapper{padding-top:var(--gx-ide-grid-row-gap);display:flex;flex-direction:row;align-items:center;justify-content:space-between}.header__bottom .inner-wrapper__left{display:flex;align-items:center;gap:var(--gx-ide-grid-row-gap)}.header-hidden .first-row{grid-template-columns:auto 1fr auto}.header-hidden .first-row>:nth-child(3){align-self:end}.header-hidden .second-row{display:none}.main{grid-template-columns:1fr 1fr;grid-template-rows:1fr;grid-template-areas:"is-referenced has-references";height:100%;gap:0}.main .reference-container{min-height:300px}.main .reference-container--no-references{display:flex;align-items:center;justify-content:center}.main>*:first-child{border-right:1px solid var(--gx-ide-container-border-color)}.main .is-referenced{grid-area:is-referenced}.main .has-references{grid-area:has-references}';export{l as gx_ide_references}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: block;
|
|
3
|
+
}
|
|
4
|
+
/*general*/
|
|
5
|
+
:root {
|
|
6
|
+
--highlight-color: rgb(163, 25, 161);
|
|
7
|
+
}
|
|
8
|
+
/*ch-suggest*/
|
|
9
|
+
ch-suggest {
|
|
10
|
+
display: block;
|
|
11
|
+
}
|
|
12
|
+
ch-suggest::part(title) {
|
|
13
|
+
display: block;
|
|
14
|
+
font-weight: bold;
|
|
15
|
+
}
|
|
16
|
+
ch-suggest::part(label) {
|
|
17
|
+
font-weight: 500;
|
|
18
|
+
}
|
|
19
|
+
ch-suggest[label-position="start"]::part(label) {
|
|
20
|
+
margin-inline-end: 8px;
|
|
21
|
+
display: flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
}
|
|
24
|
+
ch-suggest[label-position="above"]::part(label) {
|
|
25
|
+
margin-block-end: 4px;
|
|
26
|
+
}
|
|
27
|
+
ch-suggest::part(close-button) {
|
|
28
|
+
display: block;
|
|
29
|
+
width: 16px;
|
|
30
|
+
height: 16px;
|
|
31
|
+
}
|
|
32
|
+
ch-suggest::part(close-button)::after {
|
|
33
|
+
content: "✖";
|
|
34
|
+
line-height: 8px;
|
|
35
|
+
height: 100%;
|
|
36
|
+
display: block;
|
|
37
|
+
border: 1px solid black;
|
|
38
|
+
cursor: pointer;
|
|
39
|
+
text-align: center;
|
|
40
|
+
line-height: 16px;
|
|
41
|
+
}
|
|
42
|
+
ch-suggest::part(header) {
|
|
43
|
+
display: flex;
|
|
44
|
+
justify-content: space-between;
|
|
45
|
+
align-items: center;
|
|
46
|
+
margin-block-end: 8px;
|
|
47
|
+
}
|
|
48
|
+
ch-suggest::part(ch-window-close) {
|
|
49
|
+
width: 10px;
|
|
50
|
+
height: 10px;
|
|
51
|
+
}
|
|
52
|
+
ch-suggest::part(input) {
|
|
53
|
+
padding: 4px 8px;
|
|
54
|
+
border: 1px solid black;
|
|
55
|
+
}
|
|
56
|
+
ch-suggest::part(input):focus {
|
|
57
|
+
outline: 2px solid var(--highlight-color);
|
|
58
|
+
border-color: var(--highlight-color);
|
|
59
|
+
}
|
|
60
|
+
/*ch-suggest-list*/
|
|
61
|
+
ch-suggest-list {
|
|
62
|
+
background-color: rgba(234, 234, 234, 0.224);
|
|
63
|
+
border: 1px solid rgba(128, 128, 128, 0.275);
|
|
64
|
+
border-radius: 4px;
|
|
65
|
+
padding: 8px;
|
|
66
|
+
margin-block-end: 4px;
|
|
67
|
+
}
|
|
68
|
+
ch-suggest-list::part(title) {
|
|
69
|
+
font-size: 14px;
|
|
70
|
+
font-weight: bold;
|
|
71
|
+
text-transform: uppercase;
|
|
72
|
+
margin: 4px 0 8px 0;
|
|
73
|
+
}
|
|
74
|
+
/*ch-suggest-list-item*/
|
|
75
|
+
ch-suggest-list-item::part(button) {
|
|
76
|
+
padding: 4px 8px;
|
|
77
|
+
cursor: pointer;
|
|
78
|
+
gap: 4px;
|
|
79
|
+
}
|
|
80
|
+
ch-suggest-list-item ch-icon {
|
|
81
|
+
--icon-size: 16px;
|
|
82
|
+
margin-inline-end: 2px;
|
|
83
|
+
}
|
|
84
|
+
ch-suggest-list-item:hover {
|
|
85
|
+
background-color: var(--ch-color--violet-100);
|
|
86
|
+
}
|
|
87
|
+
ch-suggest-list-item:focus,
|
|
88
|
+
ch-suggest-list-item[selected]:focus {
|
|
89
|
+
outline: 2px solid var(--highlight-color);
|
|
90
|
+
}
|
|
91
|
+
ch-suggest-list-item[selected] {
|
|
92
|
+
background-color: rgba(241, 184, 243, 0.42);
|
|
93
|
+
outline: none;
|
|
94
|
+
}
|
|
95
|
+
ch-suggest-list-item::part(button):focus {
|
|
96
|
+
outline: 2px solid var(--highlight-color);
|
|
97
|
+
border-color: var(--highlight-color);
|
|
98
|
+
}
|
|
99
|
+
/*content-wrapper*/
|
|
100
|
+
ch-suggest-list-item::part(content-wrapper) {
|
|
101
|
+
display: flex;
|
|
102
|
+
gap: 8px;
|
|
103
|
+
}
|
|
104
|
+
/*ch-window*/
|
|
105
|
+
ch-suggest::part(dropdown) {
|
|
106
|
+
margin-block-start: 4px;
|
|
107
|
+
border: 1px solid black;
|
|
108
|
+
background-color: white;
|
|
109
|
+
padding: 8px;
|
|
110
|
+
}
|
|
111
|
+
/*focus*/
|
|
112
|
+
:focus {
|
|
113
|
+
outline-style: none !important;
|
|
114
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
*,
|
|
2
|
+
::after,
|
|
3
|
+
::before {
|
|
4
|
+
box-sizing: border-box;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
ch-tooltip {
|
|
8
|
+
--ch-tooltip-separation: 12px;
|
|
9
|
+
--ch-tooltip-separation-x: var(--ch-tooltip-separation);
|
|
10
|
+
--ch-tooltip-separation-y: var(--ch-tooltip-separation);
|
|
11
|
+
--ch-tooltip-arrow-size: 10px;
|
|
12
|
+
--ch-tooltip-based: calc( 1px - var(--ch-tooltip-arrow-size));
|
|
13
|
+
--ch-tooltip-centered: calc( 50% - var(--ch-tooltip-arrow-size) / 2);
|
|
14
|
+
--ch-tooltip-75: calc( 75% - var(--ch-tooltip-arrow-size) / 2);
|
|
15
|
+
--ch-tooltip-25: calc( 25% - var(--ch-tooltip-arrow-size) / 2);
|
|
16
|
+
display: flex;
|
|
17
|
+
position: relative;
|
|
18
|
+
width: 100%;
|
|
19
|
+
height: 100%;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
ch-tooltip:not([hidden]) {
|
|
23
|
+
display: contents;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
ch-window[y-align=outside-start] {
|
|
27
|
+
--ch-window-separation: var(--ch-tooltip-separation-y);
|
|
28
|
+
--ch-window-separation-y: calc(var(--ch-tooltip-separation-y) * -1);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
ch-window[y-align=outside-end] {
|
|
32
|
+
--ch-window-separation: var(--ch-tooltip-separation-y);
|
|
33
|
+
--ch-window-separation-y: var(--ch-tooltip-separation-y);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
ch-window[x-align=outside-start] + :not(ch-window[y-align=outside-start], ch-window[y-align=outside-end]) {
|
|
37
|
+
--ch-window-separation: var(--ch-tooltip-separation-x);
|
|
38
|
+
--ch-window-separation-x: calc(var(--ch-tooltip-separation-x) * -1);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
ch-window[x-align=outside-end] + :not(ch-window[y-align=outside-start], ch-window[y-align=outside-end]) {
|
|
42
|
+
--ch-window-separation: var(--ch-tooltip-separation-x);
|
|
43
|
+
--ch-window-separation-x: var(--ch-tooltip-separation-x);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
ch-window[y-align=outside-start] .tooltip-content::after,
|
|
47
|
+
ch-window[y-align=outside-start][x-align=outside-start] .tooltip-content::after,
|
|
48
|
+
ch-window[y-align=outside-start][x-align=outside-end] .tooltip-content::after {
|
|
49
|
+
clip-path: polygon(0 0, 50% 100%, 100% 0);
|
|
50
|
+
inset-block-end: var(--ch-tooltip-based);
|
|
51
|
+
}
|
|
52
|
+
ch-window[y-align=outside-start][x-align=outside-start] .tooltip-content::after,
|
|
53
|
+
ch-window[y-align=outside-start][x-align=outside-start][x-align=outside-start] .tooltip-content::after,
|
|
54
|
+
ch-window[y-align=outside-start][x-align=outside-end][x-align=outside-start] .tooltip-content::after {
|
|
55
|
+
inset-inline-end: 0;
|
|
56
|
+
}
|
|
57
|
+
ch-window[y-align=outside-start][x-align=outside-end] .tooltip-content::after,
|
|
58
|
+
ch-window[y-align=outside-start][x-align=outside-start][x-align=outside-end] .tooltip-content::after,
|
|
59
|
+
ch-window[y-align=outside-start][x-align=outside-end][x-align=outside-end] .tooltip-content::after {
|
|
60
|
+
inset-inline-start: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
ch-window[y-align=outside-end] .tooltip-content::after,
|
|
64
|
+
ch-window[y-align=outside-end][x-align=outside-end] .tooltip-content::after,
|
|
65
|
+
ch-window[y-align=outside-end][x-align=outside-start] .tooltip-content::after {
|
|
66
|
+
clip-path: polygon(50% 0, 100% 100%, 0 100%);
|
|
67
|
+
inset-block-start: var(--ch-tooltip-based);
|
|
68
|
+
}
|
|
69
|
+
ch-window[y-align=outside-end][x-align=outside-start] .tooltip-content::after,
|
|
70
|
+
ch-window[y-align=outside-end][x-align=outside-end][x-align=outside-start] .tooltip-content::after,
|
|
71
|
+
ch-window[y-align=outside-end][x-align=outside-start][x-align=outside-start] .tooltip-content::after {
|
|
72
|
+
inset-inline-end: 0;
|
|
73
|
+
}
|
|
74
|
+
ch-window[y-align=outside-end][x-align=outside-end] .tooltip-content::after,
|
|
75
|
+
ch-window[y-align=outside-end][x-align=outside-end][x-align=outside-end] .tooltip-content::after,
|
|
76
|
+
ch-window[y-align=outside-end][x-align=outside-start][x-align=outside-end] .tooltip-content::after {
|
|
77
|
+
inset-inline-start: 0;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
ch-window[x-align=outside-start] .tooltip-content::after {
|
|
81
|
+
clip-path: polygon(100% 50%, 0 0, 0 100%);
|
|
82
|
+
inset-inline-end: var(--ch-tooltip-based);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
ch-window[x-align=outside-end] .tooltip-content::after {
|
|
86
|
+
clip-path: polygon(100% 0, 0 50%, 100% 100%);
|
|
87
|
+
inset-inline-start: var(--ch-tooltip-based);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
ch-window[x-align=center] .tooltip-content::after {
|
|
91
|
+
inset-inline-start: var(--ch-tooltip-centered);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
ch-window[x-align=inside-start] .tooltip-content::after {
|
|
95
|
+
inset-inline-start: var(--ch-tooltip-75);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
ch-window[x-align=inside-end] .tooltip-content::after {
|
|
99
|
+
inset-inline-start: var(--ch-tooltip-25);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
ch-window[y-align=inside-start] .tooltip-content::after {
|
|
103
|
+
inset-block-start: var(--ch-tooltip-75);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
ch-window[y-align=center] .tooltip-content::after {
|
|
107
|
+
inset-block-start: var(--ch-tooltip-centered);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
ch-window[y-align=inside-end] .tooltip-content::after {
|
|
111
|
+
inset-block-start: var(--ch-tooltip-25);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.tooltip-content::after {
|
|
115
|
+
content: " ";
|
|
116
|
+
position: absolute;
|
|
117
|
+
background-color: inherit;
|
|
118
|
+
width: var(--ch-tooltip-arrow-size);
|
|
119
|
+
height: var(--ch-tooltip-arrow-size);
|
|
120
|
+
}
|
|
@@ -11,8 +11,7 @@ ch-tree-x > .ch-tree-x-container {
|
|
|
11
11
|
ch-tree-x.ch-tree-x-dragging-item ch-tree-x-list-item {
|
|
12
12
|
pointer-events: var(--ch-tree-x-pointer-events, all);
|
|
13
13
|
}
|
|
14
|
-
ch-tree-x.ch-tree-x-dragging-item .ch-tree-x-list-item--deny-drop
|
|
15
|
-
ch-tree-x.ch-tree-x-dragging-item ch-tree-x-list {
|
|
14
|
+
ch-tree-x.ch-tree-x-dragging-item .ch-tree-x-list-item--deny-drop {
|
|
16
15
|
pointer-events: none;
|
|
17
16
|
}
|
|
18
17
|
ch-tree-x.ch-tree-x--dragging-selected-items ch-tree-x-list-item[selected] {
|
|
@@ -21,7 +20,7 @@ ch-tree-x.ch-tree-x--dragging-selected-items ch-tree-x-list-item[selected] {
|
|
|
21
20
|
ch-tree-x.ch-tree-x-waiting-drop-processing {
|
|
22
21
|
cursor: wait;
|
|
23
22
|
}
|
|
24
|
-
ch-tree-x.ch-tree-x-waiting-drop-processing > ch-tree-x-
|
|
23
|
+
ch-tree-x.ch-tree-x-waiting-drop-processing > .ch-tree-x-container {
|
|
25
24
|
pointer-events: none;
|
|
26
25
|
}
|
|
27
26
|
|
|
@@ -247,16 +247,13 @@
|
|
|
247
247
|
--parent-negative-checkbox-offset: 0px;
|
|
248
248
|
--parent-checkbox-offset: 0px;
|
|
249
249
|
display: grid;
|
|
250
|
-
grid-
|
|
250
|
+
grid-auto-rows: min-content;
|
|
251
|
+
position: relative;
|
|
251
252
|
content-visibility: auto;
|
|
252
253
|
contain-intrinsic-size: auto 100px;
|
|
253
254
|
}
|
|
254
255
|
|
|
255
|
-
.
|
|
256
|
-
grid-template-rows: 1fr;
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
:not(.expanded) ::slotted([slot=tree]) {
|
|
256
|
+
.expandable--collapsed {
|
|
260
257
|
display: none;
|
|
261
258
|
overflow: hidden;
|
|
262
259
|
content-visibility: hidden;
|
|
@@ -799,6 +799,13 @@ FORM ELEMENTS
|
|
|
799
799
|
display: flex;
|
|
800
800
|
}
|
|
801
801
|
|
|
802
|
+
:host([fixed]) {
|
|
803
|
+
border: 1px solid black;
|
|
804
|
+
}
|
|
805
|
+
:host([fixed]) .tooltip:hover .tooltiptext {
|
|
806
|
+
visibility: hidden;
|
|
807
|
+
opacity: 0;
|
|
808
|
+
}
|
|
802
809
|
:host([fixed]) .tooltip .tooltiptext {
|
|
803
810
|
position: fixed;
|
|
804
811
|
height: 0;
|
|
@@ -820,4 +827,8 @@ FORM ELEMENTS
|
|
|
820
827
|
}
|
|
821
828
|
:host([fixed]) .tooltip .tooltiptext:after {
|
|
822
829
|
display: none;
|
|
830
|
+
}
|
|
831
|
+
:host([fixed]) .tooltip--visible .tooltiptext {
|
|
832
|
+
visibility: visible !important;
|
|
833
|
+
opacity: 1 !important;
|
|
823
834
|
}
|
package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-view/tree-view.css
CHANGED
|
@@ -341,20 +341,37 @@ FORM ELEMENTS
|
|
|
341
341
|
gxg-tree-view
|
|
342
342
|
---------------------------*/
|
|
343
343
|
gxg-tree-view {
|
|
344
|
-
display: grid;
|
|
345
|
-
grid-template-columns: 1fr;
|
|
346
|
-
grid-template-rows: 1fr;
|
|
347
|
-
height: 100%;
|
|
348
344
|
font-family: var(--font-family-primary);
|
|
349
345
|
font-size: var(--font-size-lg);
|
|
350
346
|
font-weight: var(--font-weight-regular);
|
|
351
347
|
color: var(--color-on-background);
|
|
348
|
+
display: contents;
|
|
352
349
|
}
|
|
353
350
|
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
351
|
+
ch-tree-x {
|
|
352
|
+
/* Track */
|
|
353
|
+
/* Handle */
|
|
354
|
+
/* Handle on hover */
|
|
355
|
+
}
|
|
356
|
+
ch-tree-x::-webkit-scrollbar {
|
|
357
|
+
width: 6px;
|
|
358
|
+
height: 6px;
|
|
359
|
+
}
|
|
360
|
+
ch-tree-x::-webkit-scrollbar-track {
|
|
361
|
+
background-color: var(--gray-02);
|
|
362
|
+
border-radius: 10px;
|
|
363
|
+
}
|
|
364
|
+
ch-tree-x::-webkit-scrollbar-thumb {
|
|
365
|
+
background: var(--gray-05);
|
|
366
|
+
border-radius: 10px;
|
|
367
|
+
}
|
|
368
|
+
ch-tree-x::-webkit-scrollbar-thumb:hover {
|
|
369
|
+
background: var(--gray-04);
|
|
370
|
+
cursor: pointer;
|
|
371
|
+
}
|
|
372
|
+
ch-tree-x > div.ch-tree-x-container {
|
|
373
|
+
position: relative;
|
|
374
|
+
width: 100%;
|
|
358
375
|
}
|
|
359
376
|
|
|
360
377
|
/*---------------------------
|
|
@@ -363,6 +380,39 @@ ch-tree-x-list-item
|
|
|
363
380
|
ch-tree-x-list-item {
|
|
364
381
|
--expandable-button-width: var(--spacing-comp-04);
|
|
365
382
|
}
|
|
383
|
+
ch-tree-x-list-item.tree-view-item--folder::part(action)::before, ch-tree-x-list-item.tree-view-item--module::part(action)::before {
|
|
384
|
+
grid-area: left-img;
|
|
385
|
+
content: "";
|
|
386
|
+
width: 14px;
|
|
387
|
+
height: 14px;
|
|
388
|
+
margin-inline-end: 4px;
|
|
389
|
+
background-repeat: no-repeat;
|
|
390
|
+
}
|
|
391
|
+
ch-tree-x-list-item.tree-view-item--folder::part(action)::before {
|
|
392
|
+
background-image: url("/build/icon-assets/objects/folder.svg");
|
|
393
|
+
}
|
|
394
|
+
ch-tree-x-list-item.tree-view-item--folder::part(action expanded)::before {
|
|
395
|
+
background-image: url("/build/icon-assets/objects/folder-open.svg");
|
|
396
|
+
}
|
|
397
|
+
ch-tree-x-list-item.tree-view-item--module::part(action)::before {
|
|
398
|
+
background-image: url("/build/icon-assets/objects/module.svg");
|
|
399
|
+
}
|
|
400
|
+
ch-tree-x-list-item.tree-view-item--module::part(action expanded)::before {
|
|
401
|
+
background-image: url("/build/icon-assets/objects/module-open.svg");
|
|
402
|
+
}
|
|
403
|
+
ch-tree-x-list-item .tree-view-item--pending-commit::part(action)::before {
|
|
404
|
+
content: "";
|
|
405
|
+
position: relative;
|
|
406
|
+
z-index: 1;
|
|
407
|
+
grid-area: left-img;
|
|
408
|
+
width: 5px;
|
|
409
|
+
height: 5px;
|
|
410
|
+
align-self: end;
|
|
411
|
+
margin-block-end: 3px;
|
|
412
|
+
margin-inline-start: 1px;
|
|
413
|
+
background-color: #2c3b92;
|
|
414
|
+
border-radius: 50%;
|
|
415
|
+
}
|
|
366
416
|
ch-tree-x-list-item::part(header) {
|
|
367
417
|
padding-inline-end: calc(var(--spacing-comp-02) * 0.65);
|
|
368
418
|
border: 1px solid transparent;
|
|
@@ -376,10 +426,6 @@ ch-tree-x-list-item::part(header):focus {
|
|
|
376
426
|
}
|
|
377
427
|
ch-tree-x-list-item[selected]::part(header) {
|
|
378
428
|
background-color: var(--gxg-background-color--selected);
|
|
379
|
-
outline-style: solid;
|
|
380
|
-
outline-color: var(--gxg-border-color--focused);
|
|
381
|
-
outline-width: var(--border-width-md);
|
|
382
|
-
outline-offset: -2px;
|
|
383
429
|
}
|
|
384
430
|
ch-tree-x-list-item[selected]::part(header):hover {
|
|
385
431
|
background-color: var(--gxg-background-color--selected-hover);
|
|
@@ -10,3 +10,4 @@ export declare const getElementSelectorParts: (element: HTMLElement) => string[]
|
|
|
10
10
|
export declare const querySelectorPart: (selector: string) => HTMLElement;
|
|
11
11
|
export declare const formatDate: (date: Date, type?: FormatDateType) => string;
|
|
12
12
|
export type FormatDateType = "date" | "date-time";
|
|
13
|
+
export declare const resolveGxgIconPath: (gxgIconName: string) => string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SuggestData } from "@genexus/chameleon-controls-library/dist/types/components/suggest/ch-suggest";
|
|
2
|
-
import {
|
|
2
|
+
import { TreeXItemModel } from "@genexus/chameleon-controls-library/dist/types/components/tree-view/tree-x/types";
|
|
3
3
|
import { SelectorCategoryData } from "./references";
|
|
4
4
|
import { ReferenceData } from "./references";
|
|
5
5
|
/**
|
|
@@ -7,6 +7,6 @@ import { ReferenceData } from "./references";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare const convertObjectDataToSuggestData: (selectorCategoriesData: SelectorCategoryData[]) => SuggestData;
|
|
9
9
|
/**
|
|
10
|
-
* @description This function converts ReferenceData[] data to
|
|
10
|
+
* @description This function converts ReferenceData[] data to TreeItemData[]
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const convertReferenceDataToTreeViewData: (referenceData: ReferenceData[] | undefined) => TreeXItemModel[];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EventEmitter } from "../../stencil-public-runtime";
|
|
2
2
|
import { GxgTreeItemData } from "@genexus/gemini/dist/types/components/tree-item/gxg-tree-item";
|
|
3
|
+
import { TreeXItemModel } from "@genexus/chameleon-controls-library/dist/types/components/tree-view/tree-x/types";
|
|
3
4
|
import { SuggestData } from "@genexus/chameleon-controls-library/dist/types/components/suggest/ch-suggest";
|
|
4
5
|
export declare class GxIdeReferences {
|
|
5
6
|
/**
|
|
@@ -15,9 +16,8 @@ export declare class GxIdeReferences {
|
|
|
15
16
|
*/
|
|
16
17
|
private selectorCategoryData;
|
|
17
18
|
el: HTMLGxIdeReferencesElement;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
referencesToTreeData: GxgTreeItemData[];
|
|
19
|
+
referencedByTreeData: TreeXItemModel[];
|
|
20
|
+
referencesToTreeData: TreeXItemModel[];
|
|
21
21
|
/**
|
|
22
22
|
* Displays or hides the header-bottom section
|
|
23
23
|
*/
|
|
@@ -66,10 +66,11 @@ export declare class GxIdeReferences {
|
|
|
66
66
|
componentWillLoad(): Promise<void>;
|
|
67
67
|
componentDidLoad(): void;
|
|
68
68
|
componentDidRender(): void;
|
|
69
|
+
private attachTreeEvents;
|
|
69
70
|
/**
|
|
70
71
|
* It attaches on the ch-suggest, the "itemSelected" event triggered by the ch-suggest-list-item. This helps set the new 'selectedObject'.
|
|
71
72
|
*/
|
|
72
|
-
private
|
|
73
|
+
private selectObjectSelectionChanged;
|
|
73
74
|
/**
|
|
74
75
|
* This handler gets fired every time the value of the 'Select Object' ch-suggest changes.
|
|
75
76
|
*/
|
|
@@ -91,21 +92,8 @@ export declare class GxIdeReferences {
|
|
|
91
92
|
* It hides/show the bar (The header bottom section).
|
|
92
93
|
*/
|
|
93
94
|
private hideBarButtonClickedHandler;
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
*/
|
|
97
|
-
private getRef;
|
|
98
|
-
/**
|
|
99
|
-
* Simple helper function to update 'this.referencedByTreeData' or 'this.referencesToTreeData'
|
|
100
|
-
*/
|
|
101
|
-
private updateRef;
|
|
102
|
-
/**
|
|
103
|
-
* Handles changes on any of the references (by or to). Used to:
|
|
104
|
-
* 1) Keep the models updated.
|
|
105
|
-
* 2) call the openObjectCallback.
|
|
106
|
-
* 3) call the loadReferencesCallback if a lazy node was toggled.
|
|
107
|
-
*/
|
|
108
|
-
private referencesPanelStateChangedHandler;
|
|
95
|
+
private referencesLazyLoadCallbackHandler;
|
|
96
|
+
private referenceSelectedHandler;
|
|
109
97
|
render(): any;
|
|
110
98
|
}
|
|
111
99
|
export type SelectorCategoryData = {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genexus/genexus-ide-ui",
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.58",
|
|
5
5
|
"description": "GeneXus IDE UI components",
|
|
6
6
|
"main": "dist/index.cjs.js",
|
|
7
7
|
"module": "dist/index.js",
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
"@types/react": "^18.2.8"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"@genexus/gemini": "*0.1.
|
|
39
|
+
"@genexus/gemini": "*0.1.494"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@genexus/gemini": "*0.1.
|
|
42
|
+
"@genexus/gemini": "*0.1.494",
|
|
43
43
|
"@stencil-community/eslint-plugin": "^0.5.0",
|
|
44
44
|
"@stencil/core": "^2.17.0",
|
|
45
45
|
"@stencil/sass": "^2.0.1",
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const index = require('./index-5a32426a.js');
|
|
4
|
-
|
|
5
|
-
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
6
|
-
const renderTreeItems = (treeItemsModel, firstCall = true) => {
|
|
7
|
-
if (treeItemsModel === null || treeItemsModel === void 0 ? void 0 : treeItemsModel.length) {
|
|
8
|
-
if (firstCall) {
|
|
9
|
-
return treeItemsModel.map((item) => {
|
|
10
|
-
return renderTreeItem(item);
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
return (index.h("gxg-tree", { slot: "tree" }, treeItemsModel.map((item) => {
|
|
15
|
-
return renderTreeItem(item);
|
|
16
|
-
})));
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return [];
|
|
20
|
-
};
|
|
21
|
-
const renderTreeItem = (item) => {
|
|
22
|
-
var _a;
|
|
23
|
-
const childrenLength = item.items ? item.items.length : 0;
|
|
24
|
-
const isLeaf = !!(childrenLength === 0 || item.leaf);
|
|
25
|
-
const lazy = !!item.lazy;
|
|
26
|
-
return (index.h("gxg-tree-item", { checkbox: item.checkbox, checked: item.checked, description: item.description, disabled: item.disabled, icon: item.icon, indeterminate: item.indeterminate, id: item.id, key: `tree-item-${item.id}`, label: item.label, leaf: isLeaf && !lazy, numberOfChildren: childrenLength, opened: item.opened, selected: item.selected }, [item.label, ((_a = item.items) === null || _a === void 0 ? void 0 : _a.length) && renderTreeItems(item.items, false)]));
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
const updateNodeById = (actualModel, nodeUpdatedState, updatedNodeId) => {
|
|
30
|
-
return actualModel.map(nodeActualState => {
|
|
31
|
-
if (nodeActualState.id === updatedNodeId) {
|
|
32
|
-
return Object.assign(Object.assign({}, nodeActualState), nodeUpdatedState);
|
|
33
|
-
}
|
|
34
|
-
else if (nodeActualState.items) {
|
|
35
|
-
return Object.assign(Object.assign({}, nodeActualState), { items: updateNodeById(nodeActualState.items, nodeUpdatedState, updatedNodeId) });
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
return nodeActualState;
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
};
|
|
42
|
-
const updateTreeModel = (actualModel, updatedNodeModel, updatedNodeId) => {
|
|
43
|
-
if (actualModel.length && updatedNodeModel && updatedNodeId) {
|
|
44
|
-
return updateNodeById(actualModel, updatedNodeModel, updatedNodeId);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
/* If no newItemModel was passed, at least return the actualModel, to avoid having an updated empty tree */
|
|
48
|
-
return actualModel;
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
exports.renderTreeItems = renderTreeItems;
|
|
53
|
-
exports.updateTreeModel = updateTreeModel;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
|
|
3
|
-
const treeXListCss = ":host{display:grid;grid-auto-rows:min-content;position:relative;width:100%}";
|
|
4
|
-
|
|
5
|
-
const ChTreeListX = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
|
-
this.__registerHost();
|
|
9
|
-
this.__attachShadow();
|
|
10
|
-
}
|
|
11
|
-
render() {
|
|
12
|
-
return (h(Host, { role: "group" }, h("slot", null)));
|
|
13
|
-
}
|
|
14
|
-
get el() { return this; }
|
|
15
|
-
static get style() { return treeXListCss; }
|
|
16
|
-
}, [1, "ch-tree-x-list"]);
|
|
17
|
-
function defineCustomElement() {
|
|
18
|
-
if (typeof customElements === "undefined") {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
const components = ["ch-tree-x-list"];
|
|
22
|
-
components.forEach(tagName => { switch (tagName) {
|
|
23
|
-
case "ch-tree-x-list":
|
|
24
|
-
if (!customElements.get(tagName)) {
|
|
25
|
-
customElements.define(tagName, ChTreeListX);
|
|
26
|
-
}
|
|
27
|
-
break;
|
|
28
|
-
} });
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export { ChTreeListX as C, defineCustomElement as d };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { h } from '@stencil/core/internal/client';
|
|
2
|
-
|
|
3
|
-
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
4
|
-
const renderTreeItems = (treeItemsModel, firstCall = true) => {
|
|
5
|
-
if (treeItemsModel === null || treeItemsModel === void 0 ? void 0 : treeItemsModel.length) {
|
|
6
|
-
if (firstCall) {
|
|
7
|
-
return treeItemsModel.map((item) => {
|
|
8
|
-
return renderTreeItem(item);
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
return (h("gxg-tree", { slot: "tree" }, treeItemsModel.map((item) => {
|
|
13
|
-
return renderTreeItem(item);
|
|
14
|
-
})));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return [];
|
|
18
|
-
};
|
|
19
|
-
const renderTreeItem = (item) => {
|
|
20
|
-
var _a;
|
|
21
|
-
const childrenLength = item.items ? item.items.length : 0;
|
|
22
|
-
const isLeaf = !!(childrenLength === 0 || item.leaf);
|
|
23
|
-
const lazy = !!item.lazy;
|
|
24
|
-
return (h("gxg-tree-item", { checkbox: item.checkbox, checked: item.checked, description: item.description, disabled: item.disabled, icon: item.icon, indeterminate: item.indeterminate, id: item.id, key: `tree-item-${item.id}`, label: item.label, leaf: isLeaf && !lazy, numberOfChildren: childrenLength, opened: item.opened, selected: item.selected }, [item.label, ((_a = item.items) === null || _a === void 0 ? void 0 : _a.length) && renderTreeItems(item.items, false)]));
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const updateNodeById = (actualModel, nodeUpdatedState, updatedNodeId) => {
|
|
28
|
-
return actualModel.map(nodeActualState => {
|
|
29
|
-
if (nodeActualState.id === updatedNodeId) {
|
|
30
|
-
return Object.assign(Object.assign({}, nodeActualState), nodeUpdatedState);
|
|
31
|
-
}
|
|
32
|
-
else if (nodeActualState.items) {
|
|
33
|
-
return Object.assign(Object.assign({}, nodeActualState), { items: updateNodeById(nodeActualState.items, nodeUpdatedState, updatedNodeId) });
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
return nodeActualState;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
const updateTreeModel = (actualModel, updatedNodeModel, updatedNodeId) => {
|
|
41
|
-
if (actualModel.length && updatedNodeModel && updatedNodeId) {
|
|
42
|
-
return updateNodeById(actualModel, updatedNodeModel, updatedNodeId);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
/* If no newItemModel was passed, at least return the actualModel, to avoid having an updated empty tree */
|
|
46
|
-
return actualModel;
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
export { renderTreeItems as r, updateTreeModel as u };
|