@genexus/genexus-ide-ui 0.0.82 → 0.0.84

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.
Files changed (208) hide show
  1. package/dist/cjs/{ch-checkbox_4.cjs.entry.js → ch-checkbox_3.cjs.entry.js} +0 -768
  2. package/dist/cjs/ch-tree-view-render_2.cjs.entry.js +942 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  5. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +1 -1
  6. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-card.cjs.entry.js +41 -0
  8. package/dist/cjs/gx-ide-container_3.cjs.entry.js +2 -2
  9. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  10. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +3 -3
  11. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  12. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +2 -2
  13. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +2 -2
  14. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  16. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +2 -2
  17. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +112 -0
  18. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
  20. package/dist/cjs/gx-ide-start-page.cjs.entry.js +111 -0
  21. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +2 -2
  22. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  24. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +2 -2
  26. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  28. package/dist/cjs/gxg-button-group.cjs.entry.js +190 -0
  29. package/dist/cjs/gxg-card_2.cjs.entry.js +196 -52
  30. package/dist/cjs/gxg-ide-loader.cjs.entry.js +112 -0
  31. package/dist/cjs/gxg-pill.cjs.entry.js +86 -0
  32. package/dist/cjs/gxg-tab_4.cjs.entry.js +1 -1
  33. package/dist/cjs/{helpers-8d026db9.js → helpers-cd8bd90a.js} +80 -6
  34. package/dist/cjs/loader.cjs.js +1 -1
  35. package/dist/collection/collection-manifest.json +4 -1
  36. package/dist/collection/common/helpers.js +80 -9
  37. package/dist/collection/components/_helpers/card/card.css +213 -0
  38. package/dist/collection/components/_helpers/card/card.js +120 -0
  39. package/dist/collection/components/_helpers/card/gx-ide-assets/card/langs/card.lang.en.json +10 -0
  40. package/dist/collection/components/_helpers/card/gx-ide-assets/card/langs/card.lang.ja.json +3 -0
  41. package/dist/collection/components/_helpers/card/gx-ide-assets/card/langs/card.lang.zh.json +3 -0
  42. package/dist/collection/components/_helpers/title/title.js +1 -1
  43. package/dist/collection/components/_starting-template/template.css +14 -1
  44. package/dist/collection/components/ai-assistant/ai-assistant.css +15 -3
  45. package/dist/collection/components/bpm-application-declaration/bpm-app-declaration.css +14 -1
  46. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +14 -1
  47. package/dist/collection/components/dashboard-home/dashboard-home.css +14 -1
  48. package/dist/collection/components/dashboard-home/dashboard-home.js +1 -1
  49. package/dist/collection/components/kb-manager-export/kb-manager-export.css +14 -1
  50. package/dist/collection/components/kb-manager-import/kb-manager-import.css +14 -1
  51. package/dist/collection/components/new-environment/new-environment.css +14 -1
  52. package/dist/collection/components/new-kb/new-kb.css +14 -1
  53. package/dist/collection/components/new-object/new-object.css +14 -1
  54. package/dist/collection/components/object-selector/object-selector.css +14 -1
  55. package/dist/collection/components/references/references.css +14 -1
  56. package/dist/collection/components/share-kb/share-kb.css +14 -1
  57. package/dist/collection/components/start-page/gx-ide-assets/recent-news/langs/recent-news.lang.en.json +14 -0
  58. package/dist/collection/components/start-page/gx-ide-assets/recent-news/langs/recent-news.lang.ja.json +3 -0
  59. package/dist/collection/components/start-page/gx-ide-assets/recent-news/langs/recent-news.lang.zh.json +3 -0
  60. package/dist/collection/components/start-page/gx-ide-assets/start-page/langs/start-page.lang.en.json +23 -0
  61. package/dist/collection/components/start-page/gx-ide-assets/start-page/langs/start-page.lang.ja.json +3 -0
  62. package/dist/collection/components/start-page/gx-ide-assets/start-page/langs/start-page.lang.zh.json +3 -0
  63. package/dist/collection/components/start-page/recent-news.css +270 -0
  64. package/dist/collection/components/start-page/recent-news.js +169 -0
  65. package/dist/collection/components/start-page/start-page.css +256 -0
  66. package/dist/collection/components/start-page/start-page.js +240 -0
  67. package/dist/collection/components/team-dev/commit/commit.css +14 -1
  68. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +14 -1
  69. package/dist/collection/components/team-dev/update/update.css +14 -1
  70. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +14 -1
  71. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +14 -1
  72. package/dist/collection/components/ww-images/ww-images.css +14 -1
  73. package/dist/components/card.js +85 -3
  74. package/dist/components/gx-ide-ai-assistant.js +1 -1
  75. package/dist/components/gx-ide-bpm-app-declaration.js +1 -1
  76. package/dist/components/gx-ide-card.d.ts +11 -0
  77. package/dist/components/gx-ide-card.js +59 -0
  78. package/dist/components/gx-ide-create-kb-from-server.js +1 -1
  79. package/dist/components/gx-ide-dashboard-home.js +2 -2
  80. package/dist/components/gx-ide-kb-manager-export.js +1 -1
  81. package/dist/components/gx-ide-kb-manager-import.js +1 -1
  82. package/dist/components/gx-ide-new-environment.js +1 -1
  83. package/dist/components/gx-ide-new-kb.js +1 -1
  84. package/dist/components/gx-ide-new-object.js +1 -1
  85. package/dist/components/gx-ide-object-selector.js +1 -1
  86. package/dist/components/gx-ide-recent-news.d.ts +11 -0
  87. package/dist/components/gx-ide-recent-news.js +6 -0
  88. package/dist/components/gx-ide-references.js +1 -1
  89. package/dist/components/gx-ide-share-kb.js +1 -1
  90. package/dist/components/gx-ide-start-page.d.ts +11 -0
  91. package/dist/components/gx-ide-start-page.js +247 -0
  92. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  93. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  94. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  95. package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
  96. package/dist/components/gx-ide-team-dev-update.js +1 -1
  97. package/dist/components/gx-ide-template.js +1 -1
  98. package/dist/components/gx-ide-ww-images.js +1 -1
  99. package/dist/components/helpers2.js +80 -6
  100. package/dist/components/ide-loader.js +5 -4
  101. package/dist/components/index.d.ts +3 -0
  102. package/dist/components/index.js +3 -0
  103. package/dist/components/recent-news.js +194 -0
  104. package/dist/components/tab-bar.js +1 -1
  105. package/dist/components/title.js +1 -1
  106. package/dist/components/title2.js +1 -1
  107. package/dist/esm/{ch-checkbox_4.entry.js → ch-checkbox_3.entry.js} +2 -769
  108. package/dist/esm/ch-tree-view-render_2.entry.js +937 -0
  109. package/dist/esm/genexus-ide-ui.js +1 -1
  110. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  111. package/dist/esm/gx-ide-ai-message.entry.js +1 -1
  112. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  113. package/dist/esm/gx-ide-card.entry.js +37 -0
  114. package/dist/esm/gx-ide-container_3.entry.js +2 -2
  115. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  116. package/dist/esm/gx-ide-dashboard-home.entry.js +3 -3
  117. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  118. package/dist/esm/gx-ide-kb-manager-import.entry.js +2 -2
  119. package/dist/esm/gx-ide-new-environment.entry.js +2 -2
  120. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  121. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  122. package/dist/esm/gx-ide-object-selector.entry.js +2 -2
  123. package/dist/esm/gx-ide-recent-news.entry.js +108 -0
  124. package/dist/esm/gx-ide-references.entry.js +1 -1
  125. package/dist/esm/gx-ide-share-kb.entry.js +1 -1
  126. package/dist/esm/gx-ide-start-page.entry.js +107 -0
  127. package/dist/esm/gx-ide-team-dev-commit.entry.js +2 -2
  128. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  129. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  130. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  131. package/dist/esm/gx-ide-team-dev-update.entry.js +2 -2
  132. package/dist/esm/gx-ide-template.entry.js +1 -1
  133. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  134. package/dist/esm/gxg-button-group.entry.js +186 -0
  135. package/dist/esm/gxg-card_2.entry.js +197 -53
  136. package/dist/esm/gxg-ide-loader.entry.js +108 -0
  137. package/dist/{genexus-ide-ui/p-ca28bfdf.entry.js → esm/gxg-pill.entry.js} +82 -1
  138. package/dist/esm/gxg-tab_4.entry.js +1 -1
  139. package/dist/esm/{helpers-2607df78.js → helpers-810132db.js} +80 -6
  140. package/dist/esm/loader.js +1 -1
  141. package/dist/genexus-ide-ui/genexus-ide-ui.css +3 -3
  142. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  143. package/dist/genexus-ide-ui/gx-ide-assets/card/langs/card.lang.en.json +10 -0
  144. package/dist/genexus-ide-ui/gx-ide-assets/card/langs/card.lang.ja.json +3 -0
  145. package/dist/genexus-ide-ui/gx-ide-assets/card/langs/card.lang.zh.json +3 -0
  146. package/dist/genexus-ide-ui/gx-ide-assets/recent-news/langs/recent-news.lang.en.json +14 -0
  147. package/dist/genexus-ide-ui/gx-ide-assets/recent-news/langs/recent-news.lang.ja.json +3 -0
  148. package/dist/genexus-ide-ui/gx-ide-assets/recent-news/langs/recent-news.lang.zh.json +3 -0
  149. package/dist/genexus-ide-ui/gx-ide-assets/start-page/langs/start-page.lang.en.json +23 -0
  150. package/dist/genexus-ide-ui/gx-ide-assets/start-page/langs/start-page.lang.ja.json +3 -0
  151. package/dist/genexus-ide-ui/gx-ide-assets/start-page/langs/start-page.lang.zh.json +3 -0
  152. package/dist/genexus-ide-ui/p-005970ac.entry.js +1 -0
  153. package/dist/genexus-ide-ui/{p-399217ed.entry.js → p-16b40d12.entry.js} +1 -1
  154. package/dist/genexus-ide-ui/{p-2e599385.entry.js → p-20978da8.entry.js} +1 -1
  155. package/dist/genexus-ide-ui/{p-382a461c.entry.js → p-20fab805.entry.js} +1 -1
  156. package/dist/genexus-ide-ui/{p-26c275b5.entry.js → p-37ddc5f6.entry.js} +1 -1
  157. package/dist/genexus-ide-ui/{p-cf72f115.entry.js → p-3d2a89d2.entry.js} +1 -1
  158. package/dist/genexus-ide-ui/p-49ae7773.entry.js +1 -0
  159. package/dist/genexus-ide-ui/p-4de6b0f4.entry.js +1 -0
  160. package/dist/genexus-ide-ui/p-4f631c2a.entry.js +1 -0
  161. package/dist/genexus-ide-ui/p-5757e203.entry.js +1 -0
  162. package/dist/genexus-ide-ui/p-59355863.entry.js +1 -0
  163. package/dist/genexus-ide-ui/p-5ce9c310.entry.js +1 -0
  164. package/dist/genexus-ide-ui/p-67869d00.entry.js +1 -0
  165. package/dist/genexus-ide-ui/p-67b0f211.entry.js +1 -0
  166. package/dist/genexus-ide-ui/p-76d27117.entry.js +1 -0
  167. package/dist/genexus-ide-ui/{p-16532b36.entry.js → p-7745e8fb.entry.js} +1 -1
  168. package/dist/genexus-ide-ui/{p-40cba1ef.entry.js → p-7a03aa05.entry.js} +1 -1
  169. package/dist/genexus-ide-ui/{p-31a0baf1.entry.js → p-85b78e25.entry.js} +1 -1
  170. package/dist/genexus-ide-ui/{p-7e3f439e.entry.js → p-86d30386.entry.js} +1 -1
  171. package/dist/genexus-ide-ui/p-893efb21.entry.js +1 -0
  172. package/dist/genexus-ide-ui/{p-e43f7f5f.entry.js → p-9f08b2a4.entry.js} +1 -1
  173. package/dist/genexus-ide-ui/{p-00b9fa56.entry.js → p-a1cce7b8.entry.js} +1 -1
  174. package/dist/genexus-ide-ui/p-a5d4e357.entry.js +1 -0
  175. package/dist/genexus-ide-ui/p-bf54ee78.entry.js +1 -0
  176. package/dist/genexus-ide-ui/p-bf672a51.entry.js +1 -0
  177. package/dist/genexus-ide-ui/{p-df8b9e5f.entry.js → p-d02372e0.entry.js} +1 -1
  178. package/dist/genexus-ide-ui/{p-bb842602.entry.js → p-d3428456.entry.js} +1 -1
  179. package/dist/genexus-ide-ui/{p-2c384ea8.entry.js → p-d9910218.entry.js} +1 -1
  180. package/dist/genexus-ide-ui/p-da8ad725.entry.js +1 -0
  181. package/dist/genexus-ide-ui/p-e00411a8.entry.js +1 -0
  182. package/dist/genexus-ide-ui/p-e79f34d7.js +1 -0
  183. package/dist/genexus-ide-ui/{p-a2a856d8.entry.js → p-fd18305d.entry.js} +1 -1
  184. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +189 -56
  185. package/dist/node_modules/@genexus/gemini/dist/collection/components/ide-loader/ide-loader.css +1 -1
  186. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +0 -1
  187. package/dist/node_modules/@genexus/gemini/dist/collection/components/title/title.css +1 -0
  188. package/dist/types/common/helpers.d.ts +1 -2
  189. package/dist/types/components/_helpers/card/card.d.ts +28 -0
  190. package/dist/types/components/start-page/recent-news.d.ts +39 -0
  191. package/dist/types/components/start-page/start-page.d.ts +59 -0
  192. package/dist/types/components.d.ts +137 -0
  193. package/package.json +3 -3
  194. package/dist/cjs/gxg-button-group_3.cjs.entry.js +0 -463
  195. package/dist/cjs/gxg-title-editable.cjs.entry.js +0 -157
  196. package/dist/esm/gxg-button-group_3.entry.js +0 -457
  197. package/dist/esm/gxg-title-editable.entry.js +0 -153
  198. package/dist/genexus-ide-ui/p-3e713453.entry.js +0 -1
  199. package/dist/genexus-ide-ui/p-4a337d35.entry.js +0 -1
  200. package/dist/genexus-ide-ui/p-68f2bdb2.entry.js +0 -1
  201. package/dist/genexus-ide-ui/p-99bdb8f7.entry.js +0 -1
  202. package/dist/genexus-ide-ui/p-acea5e0c.entry.js +0 -1
  203. package/dist/genexus-ide-ui/p-ae32c83c.entry.js +0 -1
  204. package/dist/genexus-ide-ui/p-b600039f.entry.js +0 -1
  205. package/dist/genexus-ide-ui/p-b71f6a1f.entry.js +0 -1
  206. package/dist/genexus-ide-ui/p-ce98ad84.entry.js +0 -1
  207. package/dist/genexus-ide-ui/p-d410aa15.js +0 -1
  208. package/dist/genexus-ide-ui/p-f1922c2f.entry.js +0 -1
@@ -1 +0,0 @@
1
- import{r as t,c as e,h as i,H as s,g as n,w as h,f as a}from"./p-0906fb46.js";import{D as r}from"./p-bac6580b.js";import{f as l,m as d}from"./p-b374d112.js";const o="checkbox",c=class{constructor(i){t(this,i),this.click=e(this,"click",7),this.input=e(this,"input",7),this.disabled=!1,this.highlightable=!1,this.indeterminate=!1,this.readonly=!1,this.getValue=t=>t?this.checkedValue:this.unCheckedValue,this.handleClick=t=>{this.readonly||this.disabled||t.stopPropagation()},this.handleChange=t=>{t.stopPropagation();const e=t.target,i=e.checked,s=this.getValue(i);this.checked=i,this.value=s,e.value=s,this.input.emit(t),this.highlightable&&this.click.emit()}}valueChanged(){this.checked=this.value===this.checkedValue}componentWillLoad(){this.checked=this.value===this.checkedValue}render(){var t;const e=`${this.checked?" checked":""}${this.indeterminate?" indeterminate":""}`;return i(s,{class:{[r]:this.disabled,"ch-checkbox--actionable":!this.readonly&&!this.disabled||this.readonly&&this.highlightable}},i("div",{class:{container:!0,"container--checked":this.checked},part:`container${e}`},i("input",{"aria-label":""!==(null===(t=this.accessibleName)||void 0===t?void 0:t.trim())&&this.accessibleName!==this.caption?this.accessibleName:null,id:this.caption?o:null,class:"input",part:"input",type:"checkbox",checked:this.checked,disabled:this.disabled||this.readonly,indeterminate:this.indeterminate,value:this.value,onClick:this.handleClick,onInput:this.handleChange}),i("div",{class:{option:!0,"option--checked":this.checked&&!this.indeterminate,"option--indeterminate":this.indeterminate},part:`option${e}`,"aria-hidden":"true"})),this.caption&&i("label",{class:"label",part:"label",htmlFor:o,onClick:this.handleClick},this.caption))}get element(){return n(this)}static get watchers(){return{value:["valueChanged"]}}};c.style="*,::before,::after{box-sizing:border-box}:host{display:flex;align-items:center;align-self:stretch;outline:unset;touch-action:manipulation;user-select:none}:host(.ch-checkbox--actionable) :is(.input,.label){cursor:pointer}.container{position:relative;width:min(1em, 20px);height:min(1em, 20px);border:1px solid var(--option-border-color, currentColor);border-radius:18.75%}.container--checked{background-color:var(--option-checked-color, #ffffff00)}.container:focus-within{box-shadow:0 0 1px 1px color-mix(in srgb, currentColor 25%, transparent)}.input{display:flex;width:100%;height:100%;opacity:0;margin:0;padding:0}.option{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);width:50%;height:50%;background-color:currentColor;opacity:0;pointer-events:none}.option--checked{opacity:1;-webkit-mask:url(\"data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' %3E%3Cpath fill='currentColor' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z' /%3E%3C/svg%3E\")}.option--indeterminate{opacity:1}.label{margin-inline-start:min(0.35em, 7px)}";const p="ch-tree-view-item",v="text/plain",u=t=>t.tagName.toLowerCase()===p,g=()=>l().find(u),m=t=>t&&!t.editing,b=(t,e)=>`"newContainerId":"${t}","metadata":"${JSON.stringify(e)}"`,w=class{constructor(i){t(this,i),this.droppableZoneEnter=e(this,"droppableZoneEnter",7),this.expandedItemChange=e(this,"expandedItemChange",7),this.itemContextmenu=e(this,"itemContextmenu",7),this.itemsDropped=e(this,"itemsDropped",7),this.selectedItemsChange=e(this,"selectedItemsChange",7),this.keyDownEvents={ArrowDown:t=>{const e=g();m(e)&&(t.preventDefault(),e.focusNextItem(d(t)))},ArrowUp:t=>{const e=g();m(e)&&(t.preventDefault(),e.focusPreviousItem(d(t)))},F2:t=>{const e=g();e&&e.editable&&(t.preventDefault(),e.editing=!0)}},this.draggingSelectedItems=!1,this.needForRAF=!0,this.selectedItemsInfo=new Map,this.validDroppableZoneCache=new Map,this.draggedIds=[],this.draggedParentIds=[],this.draggingInTheDocument=!1,this.draggingInTree=!1,this.multiSelection=!1,this.openSubTreeCountdown=750,this.scrollToEdgeOnDrag=!0,this.waitDropProcessing=!1,this.trackItemDrag=t=>{t.preventDefault(),this.lastDragEvent=t,this.updateDropEffect(t),this.needForRAF&&(this.needForRAF=!1,requestAnimationFrame((()=>{this.needForRAF=!0,this.el.style.setProperty("--ch-tree-view-dragging-item-x",`${this.lastDragEvent.clientX}px`),this.el.style.setProperty("--ch-tree-view-dragging-item-y",`${this.lastDragEvent.clientY}px`)})))},this.fixScrollPositionOnDrag=()=>{this.draggingInTree&&this.lastDragEvent&&requestAnimationFrame((()=>{((t,e)=>{const i=this.lastDragEvent.clientY-e.getBoundingClientRect().top,s=e.clientHeight,n=i<=30;(n||i>s-30)&&(e.scrollTop+=(n?i-30:i-(s-30))/10)})(0,this.el),requestAnimationFrame(this.fixScrollPositionOnDrag)}))}}handleContextMenuEvent(t){const e=t.target.closest(p);e&&(t.preventDefault(),this.itemContextmenu.emit({id:e.id,itemRef:e,metadata:e.metadata,contextmenuEvent:t}))}handleKeyDownEvents(t){const e=this.keyDownEvents[t.key];e&&e(t)}handleDragStart(t){this.validDroppableZoneCache.clear(),this.draggingInTheDocument=!0,this.dragStartTimestamp=(new Date).getTime(),this.draggedItems=JSON.parse(t.dataTransfer.getData(v))}handleDragEnd(){this.draggingInTheDocument=!1}handleDragEnter(t){this.cancelSubTreeOpening(null,!0),t.stopPropagation();const e=t.target;e.tagName.toLowerCase()===p&&(this.lastOpenSubTreeItem=e,this.openSubTreeAfterCountdown(e),"valid"===this.validDroppableZone(t)&&(e.dragState="enter"))}handleDragLeave(t){const e=t.target;if(e.tagName.toLowerCase()!==p)return;const i=e;i.dragState="none",this.cancelSubTreeOpening(i)}cancelSubTreeOpening(t,e=!1){(this.lastOpenSubTreeItem===t||e)&&(clearTimeout(this.openSubTreeTimeout),this.lastOpenSubTreeItem=null)}handleItemDrop(t){t.stopPropagation(),this.cancelSubTreeOpening(null,!0);const e=t.target,i=JSON.parse(t.dataTransfer.getData(v));"valid"===this.validDroppableZone(t)&&this.itemsDropped.emit({newContainer:{id:e.id,metadata:e.metadata},draggingSelectedItems:this.draggingSelectedItems,draggedItems:i,dropInTheSameTree:this.draggingInTree})}handleItemDragStart(t){document.body.addEventListener("dragover",this.trackItemDrag,{capture:!0}),this.currentDraggedItem=t.target,this.checkDragValidityAndUpdateDragInfo(t.detail)?(this.draggingInTree=!0,this.scrollToEdgeOnDrag&&this.fixScrollPositionOnDrag()):t.detail.dragEvent.dataTransfer.effectAllowed="none"}handleItemDragEnd(){this.draggingInTree=!1,document.body.removeEventListener("dragover",this.trackItemDrag,{capture:!0}),this.resetVariables()}handleSelectedItemSync(t){t.stopPropagation();const e=t.detail;e.selected?this.selectedItemsInfo.set(e.id,e):this.selectedItemsInfo.delete(e.id)}handleSelectedItemChange(t){t.stopPropagation(),this.handleItemSelection(t.target,t.detail)}async clearSelectedItemsInfo(){this.clearSelectedItems()}async scrollIntoVisible(t){const e=this.el.querySelector(`${p}#${t}`);if(!e)return;let i=e.parentElement;for(;i.tagName.toLowerCase()===p;)i.expanded=!0,i=i.parentElement;requestAnimationFrame((()=>{e.scrollIntoView()}))}async updateValidDropZone(t,e,i,s){var n;if(!this.draggingInTheDocument||t<=this.dragStartTimestamp)return;const h=b(e,i);this.validDroppableZoneCache.set(h,s?"valid":"invalid"),(null===(n=this.lastOpenSubTreeItem)||void 0===n?void 0:n.id)===e&&(this.lastOpenSubTreeItem.dragState="enter")}validDroppableZone(t){const e=t.target,i=b(e.id,this.draggedItems);let s=this.validDroppableZoneCache.get(i);return"temporal-invalid"!==s||e.lazyLoad||e.downloading||(s=null),null!=s?s:"none"===t.dataTransfer.effectAllowed||e.dropDisabled||this.draggingInTree&&(this.draggedIds.includes(e.id)||this.draggedParentIds.includes(e.id))?(this.validDroppableZoneCache.set(i,"invalid"),"invalid"):e.lazyLoad||e.downloading?(this.validDroppableZoneCache.set(i,"temporal-invalid"),"temporal-invalid"):(this.validDroppableZoneCache.set(i,"checking"),this.droppableZoneEnter.emit({newContainer:{id:e.id,metadata:e.metadata},draggedItems:this.draggedItems}),"checking")}openSubTreeAfterCountdown(t){t.leaf||t.expanded||(this.openSubTreeTimeout=setTimeout((()=>{t.expanded=!0,this.expandedItemChange.emit({id:t.id,expanded:!0})}),this.openSubTreeCountdown))}updateDropEffect(t){const e=t.target;if(e.tagName.toLowerCase()!==p||e.closest("ch-tree-view")!==this.el)return;const i=this.validDroppableZone(t);"invalid"!==i&&"temporal-invalid"!==i||(t.dataTransfer.dropEffect="none")}resetVariables(){this.draggedIds=[],this.draggedParentIds=[]}checkDragValidityAndUpdateDragInfo(t){const e=t.elem,i=this.selectedItemsInfo.has(e.id);this.draggingSelectedItems=i;let s,n=[];if(i){const t=[...this.selectedItemsInfo.keys()],i=[...this.selectedItemsInfo.values()],h=t.length;s=i.every((t=>!t.itemRef.dragDisabled)),this.draggedIds=t,n=i.map((t=>({id:t.id,metadata:t.metadata}))),this.dragInfo=1===h?e.caption:h.toString()}else s=!e.dragDisabled,n=[{id:e.id,metadata:e.metadata}],this.draggedIds=[e.id],this.dragInfo=e.caption;this.getDirectParentsOfDraggableItems(i);const h=JSON.stringify(n);return t.dragEvent.dataTransfer.setData(v,h),s}getDirectParentsOfDraggableItems(t){if(t)this.selectedItemsInfo.forEach((t=>{const e=t.parentId;""!==e&&this.draggedParentIds.push(e)}));else{const t=this.currentDraggedItem.parentElement;t.tagName.toLowerCase()===p&&this.draggedParentIds.push(t.id)}}handleItemSelection(t,e){e.ctrlKeyPressed&&this.multiSelection||(this.selectedItemsInfo.delete(e.id),this.selectedItemsInfo.forEach((t=>{t.itemRef.selected=!1})),this.clearSelectedItems(),t.selected=e.selected),e.selected&&this.selectedItemsInfo.set(e.id,e),this.selectedItemsChange.emit(this.selectedItemsInfo)}clearSelectedItems(){this.selectedItemsInfo.clear()}disconnectedCallback(){this.resetVariables(),this.handleItemDragEnd()}render(){return i(s,{class:{"ch-tree-view-dragging-item":this.draggingInTheDocument,"ch-tree-view-not-dragging-item":!this.draggingInTheDocument,"ch-tree-view--dragging-selected-items":this.draggingInTree&&this.draggingSelectedItems,"ch-tree-view-waiting-drop-processing":this.waitDropProcessing}},i("div",{role:"tree",part:"tree-x-container","aria-multiselectable":this.multiSelection.toString(),class:"ch-tree-view-container"},i("slot",null)),this.draggingInTree&&i("span",{"aria-hidden":"true",class:"ch-tree-view-drag-info"},this.dragInfo))}get el(){return n(this)}};w.style="ch-tree-view{display:flex;position:relative;width:100%;overflow:auto}ch-tree-view>.ch-tree-view-container{position:absolute;inset:0}ch-tree-view.ch-tree-view-dragging-item ch-tree-view-item{pointer-events:var(--ch-tree-view-pointer-events, all)}ch-tree-view.ch-tree-view-dragging-item .ch-tree-view-list-item--deny-drop{pointer-events:none}ch-tree-view.ch-tree-view--dragging-selected-items ch-tree-view-item[selected]{--ch-tree-view-pointer-events:none}ch-tree-view.ch-tree-view-waiting-drop-processing{cursor:wait}ch-tree-view.ch-tree-view-waiting-drop-processing>.ch-tree-view-container{pointer-events:none}.ch-tree-view-drag-info{--rtl-offset:16px;position:fixed;left:0;top:0;transform:translate(calc(var(--ch-tree-view-dragging-item-x) + var(--rtl-offset)), calc(var(--ch-tree-view-dragging-item-y) + 8px));pointer-events:none;z-index:1;animation:ch-tree-view-drag-info-fade-in 10ms}@keyframes ch-tree-view-drag-info-fade-in{0%,100%{opacity:0}}html[dir=rtl] .ch-tree-view-drag-info{--rtl-offset:-100%}";const x=new Image,f="ch-tree-view-item",k=`:scope>${f}`,y=`${f}:not([disabled])`,C=`:scope>${f}:last-child`,_="expandable",I="Enter",D=["container","input","option","checked","indeterminate"].map((t=>`${t}:checkbox__${t}`)).join(","),S=class{constructor(s){t(this,s),this.checkboxChange=e(this,"checkboxChange",7),this.checkboxToggleChange=e(this,"checkboxToggleChange",7),this.itemDragStart=e(this,"itemDragStart",7),this.itemDragEnd=e(this,"itemDragEnd",7),this.loadLazyContent=e(this,"loadLazyContent",7),this.modifyCaption=e(this,"modifyCaption",7),this.openReference=e(this,"openReference",7),this.selectedItemChange=e(this,"selectedItemChange",7),this.selectedItemSync=e(this,"selectedItemSync",7),this.ignoreCheckboxChange=!1,this.checkbox=!1,this.checked=!1,this.customRender=!1,this.disabled=!1,this.dragDisabled=!1,this.dropDisabled=!1,this.dragState="none",this.downloading=!1,this.editing=!1,this.expanded=!1,this.lastItem=!1,this.lazyLoad=!1,this.leaf=!1,this.level=0,this.indeterminate=!1,this.selected=!1,this.showDownloadingSpinner=!0,this.showExpandableButton=!0,this.showLines="none",this.toggleCheckboxes=!1,this.checkIfShouldRemoveEditMode=t=>{t.stopPropagation(),(t.code===I||"Escape"===t.code)&&(t.preventDefault(),this.removeEditMode(!0,t.code===I)())},this.removeEditModeOnClick=t=>{!t.composedPath().includes(this.inputRef)&&t.pointerType&&this.removeEditMode(!1)()},this.removeEditMode=(t,e=!1)=>()=>{if(!this.editing)return;this.editing=!1,document.body.removeEventListener("click",this.removeEditModeOnClick,{capture:!0});const i=this.inputRef.value;e&&""!==i.trim()&&this.modifyCaption.emit({id:this.el.id,caption:i}),t&&this.headerRef.focus()},this.toggleExpand=t=>{t.stopPropagation(),this.leaf||(this.expanded=!this.expanded),this.selected=!0,this.selectedItemChange.emit(this.getSelectedInfo(d(t),!0))},this.getSelectedInfo=(t,e)=>({ctrlKeyPressed:t,expanded:this.expanded,id:this.el.id,itemRef:this.el,metadata:this.metadata,parentId:this.el.parentElement.id,selected:e}),this.handleActionDblClick=t=>{t.stopPropagation(),d(t)?this.toggleSelected():(this.emitOpenReference(),this.leaf||this.toggleExpand(t))},this.handleActionClick=t=>{t.stopPropagation(),this.editing||(t.preventDefault(),t.pointerType?this.toggleOrSelect(t):(this.emitOpenReference(),this.toggleExpand(t)))},this.handleActionKeyDown=t=>{d(t)&&t.code===I&&(t.stopPropagation(),this.toggleSelected())},this.handleCheckedChange=t=>{t.stopPropagation(),this.checked=t.target.checked,this.indeterminate=!1,this.checkboxChange.emit({id:this.el.id,checked:this.checked,indeterminate:!1})},this.renderImg=(t,e)=>i("img",{"aria-hidden":"true",class:t,part:t,alt:"",src:e,loading:"lazy"}),this.handleDragStart=t=>{if(this.editing)return t.preventDefault(),void t.stopPropagation();t.dataTransfer.setDragImage(x,0,0),t.dataTransfer.effectAllowed="move",this.dragState="start",this.itemDragStart.emit({elem:this.el,dragEvent:t})},this.handleDragEnd=()=>{this.dragState="none",this.itemDragEnd.emit()},this.handleDrop=()=>{this.dragState="none"}}updateChildrenCheckedValue(t){!this.toggleCheckboxes||this.leaf||this.ignoreCheckboxChange?this.ignoreCheckboxChange=!1:this.getDirectTreeItems().forEach((e=>{e.checked===t&&!1===e.indeterminate||e.updateChecked(t,!1)}))}handleEditingChange(t){t&&(document.body.addEventListener("click",this.removeEditModeOnClick,{capture:!0}),h((()=>{requestAnimationFrame((()=>{this.inputRef&&this.inputRef.focus()}))})))}handleExpandedChange(t){this.lazyLoadItems(t)}handleLasItemChange(t){t&&this.showLines?this.setResizeObserver():this.disconnectObserver()}handleSelectedChange(t){this.selectedItemSync.emit(this.getSelectedInfo(!0,t))}handleShowLinesChange(t){t&&this.lastItem?this.setResizeObserver():this.disconnectObserver()}updateCheckboxValue(t){if(!this.toggleCheckboxes||this.el===t.target)return;const e=t.detail.checked,i=this.getDirectTreeItems().every((t=>t.checked===e)),s=this.checked!==e||this.indeterminate!==!i;this.ignoreCheckboxChange=this.checked!==e,this.checked=e,this.indeterminate=!i,s&&this.checkboxToggleChange.emit({id:this.el.id,checked:e,indeterminate:!i})}async focusNextItem(t){if(!this.leaf&&this.expanded){const e=this.el.querySelector(y);if(e)return void e.setFocus(t)}this.focusNextSibling(t)}async focusNextSibling(t){const e=this.el.nextElementSibling;e?e.disabled?e.focusNextItem(t):e.setFocus(t):0!==this.level&&this.el.parentElement.focusNextSibling(t)}async focusPreviousItem(t){const e=this.el.previousElementSibling;if(e)return void e.focusLastItem(t);if(0===this.level)return;const i=this.el.parentElement;i.disabled?i.focusPreviousItem(t):i.setFocus(t)}async focusLastItem(t){if(!this.leaf&&this.expanded){const e=this.el.querySelector(C);if(e)return void e.focusLastItem(t)}this.disabled?this.focusPreviousItem(t):this.setFocus(t)}async setFocus(t){this.headerRef.focus(),t||this.setSelected()}async updateChecked(t,e){this.checked=t,this.indeterminate=e,this.checkboxToggleChange.emit({id:this.el.id,checked:t,indeterminate:e})}getDirectTreeItems(){return Array.from(this.el.querySelectorAll(k))}setResizeObserver(){this.watcher=new ResizeObserver((()=>{const t=this.el.getBoundingClientRect().height-this.headerRef.getBoundingClientRect().height/2;this.el.style.setProperty("--ch-tree-view-item-distance-to-checkbox",t+"px")})),this.watcher.observe(this.el),this.watcher.observe(this.headerRef)}disconnectObserver(){this.watcher&&(this.watcher.disconnect(),this.watcher=null)}lazyLoadItems(t){this.lazyLoad&&t&&(this.lazyLoad=!1,this.downloading=!0,this.loadLazyContent.emit(this.el.id))}toggleSelected(){const t=!this.selected;this.selected=t,this.selectedItemChange.emit(this.getSelectedInfo(!0,t))}setSelected(){this.selected=!0,this.selectedItemChange.emit(this.getSelectedInfo(!1,!0))}toggleOrSelect(t){d(t)?this.toggleSelected():this.setSelected()}emitOpenReference(){this.openReference.emit({id:this.el.id,leaf:this.leaf,metadata:this.metadata})}componentWillLoad(){this.lazyLoadItems(this.expanded),this.selected&&this.selectedItemChange.emit(this.getSelectedInfo(!0,!0))}componentDidLoad(){this.lastItem&&this.showLines&&this.setResizeObserver()}disconnectedCallback(){this.editing&&this.removeEditMode(!1),this.disconnectObserver()}render(){const t=this.level%2==0,e=!this.leaf&&this.showExpandableButton,n=!this.leaf&&!this.showExpandableButton,h=!this.leaf&&!this.lazyLoad,a="all"===this.showLines&&0!==this.level,r="last"===this.showLines&&0!==this.level&&this.lastItem;return i(s,{role:"treeitem","aria-level":this.level+1,"aria-selected":this.selected?"true":null,class:{[f+"--downloading"]:this.downloading,[f+"--editing"]:this.editing,[f+"--not-editing"]:!this.editing,[f+"--drag-"+this.dragState]:"none"!==this.dragState&&"start"!==this.dragState,[f+"--deny-drop"]:this.leaf},style:{"--level":`${this.level}`},onDrop:this.dropDisabled||this.leaf||"start"===this.dragState?null:this.handleDrop},i("button",{"aria-controls":h?_:null,"aria-expanded":h?this.expanded.toString():null,class:{header:!0,"header--selected":this.selected,"header--disabled":this.disabled,"header--expandable-offset":e,"header--checkbox-offset":n&&this.checkbox,"header--even":t,"header--odd":!t,"header--even-expandable":t&&e,"header--odd-expandable":!t&&e,"header--level-0":0===this.level},part:`header${this.disabled?" disabled":""}${this.selected?" selected":""}${0===this.level?" level-0":""}`,type:"button",disabled:this.disabled,onClick:this.handleActionClick,onKeyDown:this.editing?null:this.handleActionKeyDown,draggable:!this.dragDisabled,onDragStart:this.handleDragStart,onDragEnd:this.dragDisabled?null:this.handleDragEnd,ref:t=>this.headerRef=t},!this.leaf&&this.showExpandableButton&&i("button",{type:"button",class:{"expandable-button":!0,"expandable-button--expanded":this.expanded,"expandable-button--collapsed":!this.expanded},part:`expandable-button${this.disabled?" disabled":""}${this.expanded?" expanded":" collapsed"}`,disabled:this.disabled,onClick:this.toggleExpand}),this.checkbox&&i("ch-checkbox",{accessibleName:this.caption,class:"checkbox",exportparts:D,part:`checkbox${this.disabled?" disabled":""}${this.checked?" checked":""}${this.indeterminate?" indeterminate":""}`,checkedValue:"true",disabled:this.disabled,indeterminate:this.indeterminate,unCheckedValue:"false",value:`${this.checked}`,onInput:this.handleCheckedChange}),this.customRender?i("slot",{name:"custom-content"}):[i("div",{class:{action:!0,"readonly-mode":!this.editing},part:`action${this.editing?"":" readonly-mode"}${!this.leaf&&this.expanded?" expanded":""}`,onDblClick:this.editing?null:this.handleActionDblClick},this.leftImgSrc&&this.renderImg("left-img",this.leftImgSrc),this.editable&&this.editing?i("input",{class:"edit-name",part:"edit-name",disabled:this.disabled,type:"text",value:this.caption,onBlur:this.removeEditMode(!1),onKeyDown:this.checkIfShouldRemoveEditMode,ref:t=>this.inputRef=t}):this.caption,this.rightImgSrc&&this.renderImg("right-img",this.rightImgSrc)),this.showDownloadingSpinner&&!this.leaf&&this.downloading&&i("div",{class:"downloading",part:"downloading"})],(a||r)&&i("div",{class:{"dashed-line":!0,"last-all-line":a&&this.lastItem,"last-line":r},part:"dashed-line"+(this.lastItem?" last-all-line":"")})),h&&i("div",{role:"group","aria-busy":(!!this.downloading).toString(),"aria-live":this.downloading?"polite":null,id:_,class:{expandable:!0,"expandable--collapsed":!this.expanded,"expandable--lazy-loaded":!this.downloading},part:`expandable${this.expanded?" expanded":" collapsed"}${this.downloading?"":" lazy-loaded"}`},i("slot",null)))}get el(){return n(this)}static get watchers(){return{checked:["updateChildrenCheckedValue"],editing:["handleEditingChange"],expanded:["handleExpandedChange"],lastItem:["handleLasItemChange"],selected:["handleSelectedChange"],showLines:["handleShowLinesChange"]}}};S.style=':where(button){all:unset;display:flex;user-select:none;touch-action:manipulation;-webkit-user-drag:element}*,::before,::after{box-sizing:border-box}:host{--ch-tree-view-view__checkbox-size:1em;--ch-tree-view-view__expandable-button-width:0.75em;--ch-tree-view-item__dashed-line--inset-inline-start:0px;--ch-tree-view-item__dashed-line--inset-inline-end:4px;--ch-tree-view-item-gap:5px;--ch-tree-view-item-custom-padding-inline-start:0px;--ch-tree-tab-width:calc(\n var(--ch-tree-view-view__checkbox-size) +\n var(--ch-tree-view-view__expandable-button-width) +\n (var(--ch-tree-view-item-gap) * 2)\n );display:grid;grid-template-rows:min-content}.header{--own-offset:0px;display:flex;align-items:center;min-height:calc(1em + 6px);padding-inline-start:calc( var(--padding-inline-start) + var(--ch-tree-view-item-custom-padding-inline-start) )}.header--disabled{opacity:0.5;pointer-events:none}.header--even{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width)\n )}.header--even+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width)\n )}.header--even .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--even-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--even-expandable+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--odd{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width)\n )}.header--odd+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width)\n )}.header--odd .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--odd-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--odd-expandable+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--level-0{--padding-inline-start:0px}.header--level-0+.expandable{--parent-padding-inline-start--even:0px}.header--expandable-offset{--own-offset:calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )}.header--expandable-offset+.expandable{--parent-expandable-offset:calc(\n var(--ch-tree-view-view__expandable-button-width) / 2\n )}.header--checkbox-offset+.expandable{--parent-checkbox-offset:calc(\n var(--ch-tree-view-view__checkbox-size) / 2\n );--parent-negative-checkbox-offset:calc(\n var(--ch-tree-view-view__checkbox-size) / 2\n )}.dashed-line{position:absolute;inset-inline-start:calc( var(--inset-inline-start) + var(--ch-tree-view-item__dashed-line--inset-inline-start) + var(--ch-tree-view-item-custom-padding-inline-start) );height:1px;width:calc( var(--ch-tree-tab-width) - var(--parent-checkbox-offset) - var(--parent-expandable-offset) - var(--own-offset) - var(--ch-tree-view-item__dashed-line--inset-inline-start) - var(--ch-tree-view-item__dashed-line--inset-inline-end) );border:0 dashed color-mix(in srgb, currentColor 65%, transparent);border-block-end-width:1px;pointer-events:none;content-visibility:hidden;z-index:1}.last-all-line{inset-block-start:0;height:calc(100% - var(--ch-tree-view-item-distance-to-checkbox));border-inline-start-width:1px;border-end-start-radius:2px}.last-line{inset-block-start:0;height:100%;border-inline-start-width:1px;border-style:solid;border-block-end:unset}.expandable-button{display:grid;place-items:center;width:var(--ch-tree-view-view__expandable-button-width);height:var(--ch-tree-view-view__expandable-button-width);margin-inline-end:var(--ch-tree-view-item-gap);z-index:1;cursor:pointer;content-visibility:auto;contain-intrinsic-size:auto var(--ch-tree-view-view__expandable-button-width)}.expandable-button::before{content:"";width:calc(100% - 2px);height:calc(100% - 2px);background-color:currentColor;-webkit-mask-size:calc( var(--ch-tree-view-view__expandable-button-width) - 2px )}.expandable-button--collapsed::before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M14.15,8.5H8.54v5.61h-1V8.5H1.93v-1H7.54V1.89h1V7.5h5.61Z"/></svg>\')}.expandable-button--expanded::before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M14.15,8.5H1.93v-1H14.15Z"/></svg>\')}.expandable-button:focus-visible{outline:1px solid #000}.checkbox{width:var(--ch-tree-view-view__checkbox-size);margin-inline-end:var(--ch-tree-view-item-gap)}.checkbox::part(container){width:var(--ch-tree-view-view__checkbox-size);height:var(--ch-tree-view-view__checkbox-size)}.action{display:grid;grid-template:"left-img text right-img"/max-content 1fr max-content;align-items:center;height:100%;flex:1;cursor:pointer}.readonly-mode{padding-block:0.75px}.left-img,.right-img{display:block;width:0.875em;height:0.875em;content-visibility:auto;contain-intrinsic-size:auto 0.875em}.left-img{grid-area:left-img;margin-inline-end:var(--ch-tree-view-item-gap)}.right-img{grid-area:right-img;margin-inline-start:var(--ch-tree-view-item-gap)}.edit-name{grid-area:text;width:100%;height:100%;padding:0;margin:0;background-color:unset;color:unset;border:1px solid currentColor;font:unset;outline:unset}.downloading{width:0.75em;height:0.75em;margin-inline-start:8px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:50%;opacity:0.75;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.expandable{--parent-expandable-offset:0px;--parent-negative-checkbox-offset:0px;--parent-checkbox-offset:0px;display:grid;grid-auto-rows:min-content;position:relative}.expandable--lazy-loaded{content-visibility:auto;contain-intrinsic-size:auto 100px}.expandable--collapsed{display:none;overflow:hidden;content-visibility:hidden}';const $=(t,e,i)=>(null==i?void 0:i.regularExpression)?null!==t.match(e):((t,e,i)=>i?t.includes(e):t.toLowerCase().includes(e.toLowerCase()))(t,e,null==i?void 0:i.matchCase),z={caption:(t,e)=>{var i;return!e.filter||$(null!==(i=t.caption)&&void 0!==i?i:"",e.filter,e.filterOptions)},checked:(t,e)=>{var i,s;return(null!==(i=t.checkbox)&&void 0!==i?i:e.defaultCheckbox)&&!t.indeterminate&&(null!==(s=t.checked)&&void 0!==s?s:e.defaultChecked)},"id-list":(t,e)=>e.filterList.includes(t.id),metadata:(t,e)=>{var i;return!e.filter||$(null!==(i=t.metadata)&&void 0!==i?i:"",e.filter,e.filterOptions)},none:()=>!0,unchecked:(t,e)=>{var i,s;return(null!==(i=t.checkbox)&&void 0!==i?i:e.defaultCheckbox)&&!t.indeterminate&&!(null!==(s=t.checked)&&void 0!==s?s:e.defaultChecked)}},L=/url\((["']?)([^\)]*)\)(?:\s+([\d.]+)x)?/i;let E;const F=(t,e,i)=>{if(!t)return;let s="";if(s=t.id?function(t,e){E||(E=getComputedStyle(document.documentElement));let i=E.getPropertyValue(`--gx-image_${t}`);if(i){let n;const h=e(t);for(;n=i.match(L);)h.densitySet.push({uri:(s=n[1]?n[2].slice(0,-1):n[2],s.startsWith("data:image/svg+xml;utf8,")&&(s=`data:image/svg+xml;base64,${btoa(s.slice(24).replace(/\\"/g,'"'))}`),s=(s=s.replace(/\\/g,"")).replace(/\s/g,"%20")),density:n[3]?parseFloat(n[3]):1}),i=i.slice(n[0].length);return h.densitySet.length>0&&(h.uri=h.densitySet.reduce(((t,e)=>1===t.density||t.density<e.density?t:e)).uri),h}var s}(t.id,i).uri:t.uri,!s)return"";const n=e.WEBAPP_BASE,h=s.toLowerCase();return h.startsWith("assets/")||h.startsWith("http://")||h.startsWith("https://")||h.startsWith("blob:")||h.startsWith("file:")||h.startsWith("data:")?s:h.startsWith(e.BASE_PATH.toLowerCase())?n+s.substring(e.BASE_PATH.length):n+s},O=(t,e,s,n,h)=>{var a,r,l,d,o,c;return("none"===e.filterType||!1!==t.render)&&i("ch-tree-view-item",{id:t.id,caption:t.caption,checkbox:null!==(a=t.checkbox)&&void 0!==a?a:e.checkbox,checked:null!==(r=t.checked)&&void 0!==r?r:e.checked,class:t.class,disabled:t.disabled,downloading:t.downloading,dragDisabled:null!==(l=t.dragDisabled)&&void 0!==l?l:e.dragDisabled,dropDisabled:null!==(d=t.dropDisabled)&&void 0!==d?d:e.dropDisabled,editable:null!==(o=t.editable)&&void 0!==o?o:e.editableItems,expanded:t.expanded,indeterminate:t.indeterminate,lastItem:n,lazyLoad:t.lazy,leaf:t.leaf,leftImgSrc:t.leftImgSrc,level:h,metadata:t.metadata,rightImgSrc:t.rightImgSrc,selected:t.selected,showExpandableButton:t.showExpandableButton,showLines:e.showLines,toggleCheckboxes:null!==(c=t.toggleCheckboxes)&&void 0!==c?c:e.toggleCheckboxes},!t.leaf&&null!=t.items&&t.items.map(((i,n)=>O(i,e,s,"none"!==e.showLines&&(s&&""!==t.lastItemId?i.id===t.lastItemId:n===t.items.length-1),h+1))))},M=(t,e,s,n,h)=>{var a,r,l,d;return("none"===e.filterType||!1!==t.render)&&i("ch-tree-view-item",{id:t.id,caption:t.caption,checkbox:null!==(a=t.checkbox)&&void 0!==a?a:e.checkbox,checked:null!==(r=t.checked)&&void 0!==r?r:e.checked,class:t.class,downloading:t.downloading,dragDisabled:null!=t.dragEnabled?!t.dragEnabled:e.dragDisabled,dropDisabled:null!=t.dropEnabled?!t.dropEnabled:e.dropDisabled,editable:null!==(l=t.editable)&&void 0!==l?l:e.editableItems,expanded:t.expanded,indeterminate:t.indeterminate,lastItem:n,lazyLoad:t.lazy,leaf:t.leaf,leftImgSrc:F(t.leftImage,e.gxSettings,e.gxImageConstructor),level:h,metadata:t.metadata,selected:t.selected,showLines:e.showLines,toggleCheckboxes:null!==(d=t.toggleCheckboxes)&&void 0!==d?d:e.toggleCheckboxes},!t.leaf&&null!=t.items&&t.items.map(((i,n)=>M(i,e,s,"none"!==e.showLines&&(s&&""!==t.lastItemId?i.id===t.lastItemId:n===t.items.length-1),h+1))))},T=t=>{t.sort(((t,e)=>t.order<e.order?-1:t.order>e.order?0:t.caption<=e.caption?-1:0))},V=class{constructor(i){t(this,i),this.checkedItemsChange=e(this,"checkedItemsChange",7),this.itemContextmenu=e(this,"itemContextmenu",7),this.itemOpenReference=e(this,"itemOpenReference",7),this.selectedItemsChange=e(this,"selectedItemsChange",7),this.flattenedTreeModel=new Map,this.flattenedCheckboxTreeModel=new Map,this.selectedItems=new Set,this.applyFilters=!1,this.emitCheckedChange=!1,this.waitDropProcessing=!1,this.checkbox=!1,this.checked=!1,this.cssClass="tree-view",this.dragDisabled=!1,this.dropDisabled=!1,this.editableItems=!0,this.filterDebounce=250,this.filterList=[],this.filterOptions={},this.filterType="none",this.multiSelection=!1,this.renderItem=O,this.showLines="none",this.sortItemsCallback=T,this.toggleCheckboxes=!1,this.treeModel=[],this.useGxRender=!1,this.handleDroppableZoneEnter=t=>{if(!this.checkDroppableZoneCallback)return;t.stopPropagation();const e=(new Date).getTime(),i=t.detail;this.checkDroppableZoneCallback(i).then((t=>{this.updateValidDropZone(e,i.newContainer.id,i.draggedItems,t)}))},this.handleSelectedItemsChange=t=>{t.stopPropagation();const e=new Map(t.detail);this.selectedItems.forEach((t=>{const i=this.flattenedTreeModel.get(t).item,s=e.get(t);s?(i.expanded=s.expanded,e.delete(t)):(i.selected=!1,this.selectedItems.delete(t))})),e.forEach(((t,e)=>{const i=this.flattenedTreeModel.get(e).item;i.selected=!0,i.expanded=t.expanded,this.selectedItems.add(e)})),this.selectedItemsChange.emit(t.detail)},this.handleExpandedItemChange=t=>{const e=t.detail;this.flattenedTreeModel.get(e.id).item.expanded=e.expanded},this.handleItemContextmenu=t=>{t.stopPropagation(),this.itemContextmenu.emit(t.detail)},this.handleItemsDropped=t=>{const e=t.detail;if(!this.flattenedTreeModel.get(e.newContainer.id))return;if(0===e.draggedItems.length||!this.dropItemsCallback)return;t.stopPropagation();const i=this.dropItemsCallback(e);this.waitDropProcessing=!0,i.then((async t=>{this.dropItems(t.acceptDrop,e,t.items),this.waitDropProcessing=!1}))},this.moveItemToNewParent=t=>e=>{const i=this.flattenedTreeModel.get(e.id),s=i.item,n=i.parentItem;n.items.splice(n.items.findIndex((t=>t.id===s.id)),1),t.items.push(s),i.parentItem=t},this.flattenItemUIModel=t=>e=>{var i,s,n,h,a,r;this.flattenedTreeModel.set(e.id,{parentItem:t,item:e}),(null!==(i=e.checkbox)&&void 0!==i?i:this.checkbox)&&this.flattenedCheckboxTreeModel.set(e.id,{parentItem:t,item:e}),e.class||(e.class="tree-view-item"),null!==(s=e.expanded)&&void 0!==s||(e.expanded=!1),null!==(n=e.indeterminate)&&void 0!==n||(e.indeterminate=!1),null!==(h=e.lazy)&&void 0!==h||(e.lazy=!1),null!==(a=e.order)&&void 0!==a||(e.order=0),null!==(r=e.selected)&&void 0!==r||(e.selected=!1),e.selected&&this.selectedItems.add(e.id),this.flattenSubModel(e)}}handleFilterChange(){"caption"!==this.filterType&&"metadata"!==this.filterType||this.processFilters()}handleFilterDebounceChange(){"caption"!==this.filterType&&"metadata"!==this.filterType||this.processFilters()}handleFilterListChange(){"id-list"===this.filterType&&this.processFilters()}handleFilterOptionsChange(){"caption"!==this.filterType&&"metadata"!==this.filterType||this.processFilters()}handleFilterTypeChange(){this.processFilters()}handleTreeModelChange(){this.flattenModel()}async dropItems(t,e,i){if(!t)return;const s=this.flattenedTreeModel.get(e.newContainer.id).item;if(e.dropInTheSameTree)e.draggedItems.forEach(this.moveItemToNewParent(s)),e.draggingSelectedItems&&await this.treeRef.clearSelectedItemsInfo();else{if(null==i)return;s.items.push(...i),i.forEach(this.flattenItemUIModel(s))}this.sortItems(s.items),s.expanded=!0,this.emitCheckedItemsChange(),this.processFilters(),a(this)}async loadLazyContent(t,e,i=!1,s=!1){const n=this.flattenedTreeModel.get(t).item;n.downloading=i,n.lazy=s,null!=e&&(n.items=e,this.sortItems(n.items),this.flattenSubModel(n),this.emitCheckedItemsChange(),this.processFilters(),a(this))}async scrollIntoVisible(t){const e=this.flattenedTreeModel.get(t);if(!e)return;let i=e.parentItem;for(;i&&null!=i.id;)i.expanded=!0,i=this.flattenedTreeModel.get(i.id).parentItem;a(this),this.treeRef.scrollIntoVisible(t)}async toggleItems(t,e){if(!t)return[];const i=[];return t.forEach((t=>{const s=this.flattenedTreeModel.get(t).item;s&&(s.expanded=null!=e?e:!s.expanded,i.push({id:s.id,expanded:s.expanded}))})),a(this),i}async updateAllItemsProperties(t){[...this.flattenedTreeModel.values()].forEach((e=>{null!=t.expanded&&(e.item.expanded=t.expanded),null!=t.checked&&(e.item.checked=t.checked,e.item.indeterminate=!1)})),null!=t.checked&&this.processFilters(),a(this)}async updateItemsProperties(t,e){t.forEach((t=>{const i=this.flattenedTreeModel.get(t);this.updateItemProperty(i,e)})),this.processFilters(),a(this)}async updateValidDropZone(t,e,i,s){this.treeRef.updateValidDropZone(t,e,i,s)}updateItemProperty(t,e){if(!t)return;const i=t.item;Object.keys(e).forEach((t=>{i[t]=e[t]}))}updateCheckboxValue(t){t.stopPropagation();const e=t.detail,i=this.flattenedCheckboxTreeModel.get(e.id);if(!i)return;const s=i.item;s.checked=e.checked,s.indeterminate=e.indeterminate,this.emitCheckedItemsChange(),"checked"!==this.filterType&&"unchecked"!==this.filterType||this.processFilters(),a(this)}loadLazyChildrenHandler(t){if(!this.lazyLoadTreeItemsCallback)return;t.stopPropagation();const e=t.detail,i=this.lazyLoadTreeItemsCallback(e);t.target.downloading=!0,i.then((t=>{this.loadLazyContent(e,t)}))}handleCaptionModification(t){if(!this.modifyItemCaptionCallback)return;t.stopPropagation();const e=t.target,i=t.detail.id,s=this.flattenedTreeModel.get(i),n=s.item,h=t.detail.caption,r=n.caption;n.caption=h,e.caption=h,this.modifyItemCaptionCallback(i,h).then((t=>{t.success?(this.sortItems(s.parentItem.items),this.processFilters(),a(this)):(e.caption=r,n.caption=r)}))}handleOpenReference(t){t.stopPropagation(),this.itemOpenReference.emit(t.detail)}flattenSubModel(t){const e=t.items;e?(this.sortItems(e),e.forEach(this.flattenItemUIModel(t))):!0!==t.leaf&&(t.items=[])}sortItems(t){this.sortItemsCallback&&this.sortItemsCallback(t)}flattenModel(){this.flattenedTreeModel.clear(),this.flattenedCheckboxTreeModel.clear(),this.selectedItems.clear(),this.treeRef&&this.treeRef.clearSelectedItemsInfo(),this.flattenSubModel({id:null,caption:null,items:this.treeModel}),this.emitCheckedItemsChange()}filterSubModel(t,e){let i=!1;if(!0!==t.leaf&&null!=t.items){let s="";t.items.forEach((t=>{const n=this.filterSubModel(t,e);i||(i=n),n&&(s=t.id)})),t.lastItemId=s}const s=z[this.filterType](t,e)||i;return t.render=s,s}emitCheckedItemsChange(){this.emitCheckedChange=!0}updateCheckedItems(){const t=new Map(this.flattenedCheckboxTreeModel);t.forEach((t=>{var e,i;null!==(e=(i=t.item).checked)&&void 0!==e||(i.checked=this.checked)})),this.checkedItemsChange.emit(t)}processFilters(){this.applyFilters=!0}updateFilters(){if("none"===this.filterType)return;clearTimeout(this.filterTimeout);const t=()=>this.filterSubModel({id:null,caption:null,items:this.treeModel},{defaultCheckbox:this.checkbox,defaultChecked:this.checked,filter:this.filter,filterList:this.filterList,filterOptions:this.filterOptions});this.filterDebounce>0&&("caption"===this.filterType||"metadata"===this.filterType)?this.filterTimeout=setTimeout((()=>{t(),a(this)}),this.filterDebounce):t()}componentWillLoad(){this.useGxRender&&(this.renderItem=M),this.flattenModel(),this.updateCheckedItems(),this.updateFilters()}componentWillUpdate(){this.emitCheckedChange&&(this.updateCheckedItems(),this.emitCheckedChange=!1),this.applyFilters&&(this.updateFilters(),this.applyFilters=!1)}render(){return i("ch-tree-view",{class:this.cssClass||null,multiSelection:this.multiSelection,waitDropProcessing:this.waitDropProcessing,onDroppableZoneEnter:this.handleDroppableZoneEnter,onExpandedItemChange:this.handleExpandedItemChange,onItemContextmenu:this.handleItemContextmenu,onItemsDropped:this.handleItemsDropped,onSelectedItemsChange:this.handleSelectedItemsChange,ref:t=>this.treeRef=t},this.treeModel.map(((t,e)=>this.renderItem(t,this,("caption"===this.filterType||"metadata"===this.filterType)&&null!=this.filter,"none"!==this.showLines&&e===this.treeModel.length-1,0))))}static get watchers(){return{filter:["handleFilterChange"],filterDebounce:["handleFilterDebounceChange"],filterList:["handleFilterListChange"],filterOptions:["handleFilterOptionsChange"],filterType:["handleFilterTypeChange"],treeModel:["handleTreeModelChange"]}}};V.style="ch-tree-view-render{display:contents}";export{c as ch_checkbox,w as ch_tree_view,S as ch_tree_view_item,V as ch_tree_view_render}