wj-elements 0.1.136 → 0.1.138

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 (422) hide show
  1. package/dist/dark.css +223 -0
  2. package/dist/infinite-scroll.element-XVJukzjy.js +272 -0
  3. package/dist/infinite-scroll.element-XVJukzjy.js.map +1 -0
  4. package/dist/light.css +534 -0
  5. package/dist/list.element-Ce1vIm1O.js +50 -0
  6. package/dist/list.element-Ce1vIm1O.js.map +1 -0
  7. package/dist/localize.js +70 -0
  8. package/dist/localize.js.map +1 -0
  9. package/dist/packages/index.d.ts +102 -0
  10. package/dist/packages/localize/localize.d.ts +17 -0
  11. package/dist/packages/translations/en-gb.d.ts +13 -0
  12. package/dist/packages/translations/sk-sk.d.ts +13 -0
  13. package/dist/packages/utils/animations.d.ts +2 -0
  14. package/dist/packages/utils/date.d.ts +1 -0
  15. package/dist/packages/utils/element-utils.d.ts +46 -0
  16. package/dist/packages/utils/event.d.ts +67 -0
  17. package/dist/packages/utils/localize.d.ts +4 -0
  18. package/dist/packages/utils/permissions-api.d.ts +34 -0
  19. package/dist/packages/utils/utils.d.ts +1 -0
  20. package/dist/packages/utils/wje-import-firefox.d.ts +0 -0
  21. package/dist/packages/utils/wje-import.d.ts +0 -0
  22. package/dist/packages/wje-accordion/accordion.d.ts +2 -0
  23. package/dist/packages/wje-accordion/accordion.element.d.ts +72 -0
  24. package/dist/packages/wje-accordion-item/accordion-item.d.ts +2 -0
  25. package/dist/packages/wje-accordion-item/accordion-item.element.d.ts +40 -0
  26. package/dist/packages/wje-animation/animation.d.ts +2 -0
  27. package/dist/packages/wje-animation/animation.element.d.ts +153 -0
  28. package/dist/packages/wje-animation/animation.test.d.ts +1 -0
  29. package/dist/packages/wje-aside/aside.d.ts +2 -0
  30. package/dist/packages/wje-aside/aside.element.d.ts +31 -0
  31. package/dist/packages/wje-avatar/avatar.d.ts +2 -0
  32. package/dist/packages/wje-avatar/avatar.element.d.ts +37 -0
  33. package/dist/packages/wje-avatar/service/service.d.ts +40 -0
  34. package/dist/packages/wje-badge/badge.d.ts +2 -0
  35. package/dist/packages/wje-badge/badge.element.d.ts +35 -0
  36. package/dist/packages/wje-badge/badge.test.d.ts +1 -0
  37. package/dist/packages/wje-breadcrumb/breadcrumb.d.ts +2 -0
  38. package/dist/packages/wje-breadcrumb/breadcrumb.element.d.ts +80 -0
  39. package/dist/packages/wje-breadcrumbs/breadcrumbs.d.ts +2 -0
  40. package/dist/packages/wje-breadcrumbs/breadcrumbs.element.d.ts +97 -0
  41. package/dist/packages/wje-breadcrumbs/breadcrumbs.test.d.ts +1 -0
  42. package/dist/packages/wje-button/button.d.ts +2 -0
  43. package/dist/packages/wje-button/button.element.d.ts +173 -0
  44. package/dist/packages/wje-button/button.test.d.ts +1 -0
  45. package/dist/packages/wje-button-group/button-group.d.ts +2 -0
  46. package/dist/packages/wje-button-group/button-group.element.d.ts +39 -0
  47. package/dist/packages/wje-card/card.d.ts +2 -0
  48. package/dist/packages/wje-card/card.element.d.ts +29 -0
  49. package/dist/packages/wje-card-content/card-content.d.ts +2 -0
  50. package/dist/packages/wje-card-content/card-content.element.d.ts +22 -0
  51. package/dist/packages/wje-card-controls/card-controls.d.ts +2 -0
  52. package/dist/packages/wje-card-controls/card-controls.element.d.ts +23 -0
  53. package/dist/packages/wje-card-header/card-header.d.ts +2 -0
  54. package/dist/packages/wje-card-header/card-header.element.d.ts +22 -0
  55. package/dist/packages/wje-card-subtitle/card-subtitle.d.ts +2 -0
  56. package/dist/packages/wje-card-subtitle/card-subtitle.element.d.ts +30 -0
  57. package/dist/packages/wje-card-title/card-title.d.ts +2 -0
  58. package/dist/packages/wje-card-title/card-title.element.d.ts +32 -0
  59. package/dist/packages/wje-carousel/carousel.d.ts +2 -0
  60. package/dist/packages/wje-carousel/carousel.element.d.ts +146 -0
  61. package/dist/packages/wje-carousel-item/carousel-item.d.ts +2 -0
  62. package/dist/packages/wje-carousel-item/carousel-item.element.d.ts +38 -0
  63. package/dist/packages/wje-checkbox/checkbox.d.ts +2 -0
  64. package/dist/packages/wje-checkbox/checkbox.element.d.ts +171 -0
  65. package/dist/packages/wje-chip/chip.d.ts +2 -0
  66. package/dist/packages/wje-chip/chip.element.d.ts +29 -0
  67. package/dist/packages/wje-col/col.d.ts +2 -0
  68. package/dist/packages/wje-col/col.element.d.ts +16 -0
  69. package/dist/packages/wje-color-picker/color-picker.d.ts +2 -0
  70. package/dist/packages/wje-color-picker/color-picker.element.d.ts +187 -0
  71. package/dist/packages/wje-container/container.d.ts +2 -0
  72. package/dist/packages/wje-container/container.element.d.ts +31 -0
  73. package/dist/packages/wje-copy-button/copy-button.d.ts +2 -0
  74. package/dist/packages/wje-copy-button/copy-button.element.d.ts +89 -0
  75. package/dist/packages/wje-copy-button/service/service.d.ts +12 -0
  76. package/dist/packages/wje-dialog/dialog.d.ts +2 -0
  77. package/dist/packages/wje-dialog/dialog.element.d.ts +116 -0
  78. package/dist/packages/wje-divider/divider.d.ts +2 -0
  79. package/dist/packages/wje-divider/divider.element.d.ts +32 -0
  80. package/dist/packages/wje-dropdown/dropdown.d.ts +2 -0
  81. package/dist/packages/wje-dropdown/dropdown.element.d.ts +85 -0
  82. package/dist/packages/wje-element/element.d.ts +313 -0
  83. package/dist/packages/wje-element/service/universal-service.d.ts +18 -0
  84. package/dist/packages/wje-file-upload/file-upload.d.ts +2 -0
  85. package/dist/packages/wje-file-upload/file-upload.element.d.ts +191 -0
  86. package/dist/packages/wje-file-upload/service/service.d.ts +70 -0
  87. package/dist/packages/wje-file-upload-item/file-upload-item.d.ts +2 -0
  88. package/dist/packages/wje-file-upload-item/file-upload-item.element.d.ts +64 -0
  89. package/dist/packages/wje-footer/footer.d.ts +2 -0
  90. package/dist/packages/wje-footer/footer.element.d.ts +28 -0
  91. package/dist/packages/wje-form/form.d.ts +2 -0
  92. package/dist/packages/wje-form/form.element.d.ts +28 -0
  93. package/dist/packages/wje-format-digital/format-digital.d.ts +2 -0
  94. package/dist/packages/wje-format-digital/format-digital.element.d.ts +87 -0
  95. package/dist/packages/wje-format-digital/format-digital.test.d.ts +1 -0
  96. package/dist/packages/wje-grid/grid.d.ts +2 -0
  97. package/dist/packages/wje-grid/grid.element.d.ts +26 -0
  98. package/dist/packages/wje-header/header.d.ts +2 -0
  99. package/dist/packages/wje-header/header.element.d.ts +35 -0
  100. package/dist/packages/wje-icon/icon.d.ts +2 -0
  101. package/dist/packages/wje-icon/icon.element.d.ts +40 -0
  102. package/dist/packages/wje-icon/service/service.d.ts +11 -0
  103. package/dist/packages/wje-icon-picker/icon-picker.d.ts +2 -0
  104. package/dist/packages/wje-icon-picker/icon-picker.element.d.ts +197 -0
  105. package/dist/packages/wje-img/img.d.ts +2 -0
  106. package/dist/packages/wje-img/img.element.d.ts +36 -0
  107. package/dist/packages/wje-img-comparer/img-comparer.d.ts +2 -0
  108. package/dist/packages/wje-img-comparer/img-comparer.element.d.ts +60 -0
  109. package/dist/packages/wje-img-comparer/service/service.d.ts +1 -0
  110. package/dist/packages/wje-infinite-scroll/infinite-scroll.d.ts +2 -0
  111. package/dist/packages/wje-infinite-scroll/infinite-scroll.element.d.ts +134 -0
  112. package/dist/packages/wje-input/input.d.ts +2 -0
  113. package/dist/packages/wje-input/input.element.d.ts +204 -0
  114. package/dist/packages/wje-input-file/input-file.d.ts +2 -0
  115. package/dist/packages/wje-input-file/input-file.element.d.ts +50 -0
  116. package/dist/packages/wje-item/item.d.ts +2 -0
  117. package/dist/packages/wje-item/item.element.d.ts +68 -0
  118. package/dist/packages/wje-kanban/kanban.d.ts +2 -0
  119. package/dist/packages/wje-kanban/kanban.element.d.ts +183 -0
  120. package/dist/packages/wje-label/label.d.ts +2 -0
  121. package/dist/packages/wje-label/label.element.d.ts +34 -0
  122. package/dist/packages/wje-list/list.d.ts +2 -0
  123. package/dist/packages/wje-list/list.element.d.ts +31 -0
  124. package/dist/packages/wje-main/main.d.ts +2 -0
  125. package/dist/packages/wje-main/main.element.d.ts +30 -0
  126. package/dist/packages/wje-masonry/masonry.d.ts +2 -0
  127. package/dist/packages/wje-masonry/masonry.element.d.ts +114 -0
  128. package/dist/packages/wje-masonry/service/service.d.ts +32 -0
  129. package/dist/packages/wje-menu/menu.d.ts +2 -0
  130. package/dist/packages/wje-menu/menu.element.d.ts +47 -0
  131. package/dist/packages/wje-menu-button/menu-button.d.ts +2 -0
  132. package/dist/packages/wje-menu-button/menu-button.element.d.ts +34 -0
  133. package/dist/packages/wje-menu-item/menu-item.d.ts +2 -0
  134. package/dist/packages/wje-menu-item/menu-item.element.d.ts +139 -0
  135. package/dist/packages/wje-menu-label/menu-label.d.ts +2 -0
  136. package/dist/packages/wje-menu-label/menu-label.element.d.ts +39 -0
  137. package/dist/packages/wje-option/option.d.ts +2 -0
  138. package/dist/packages/wje-option/option.element.d.ts +59 -0
  139. package/dist/packages/wje-options/options.d.ts +2 -0
  140. package/dist/packages/wje-options/options.element.d.ts +183 -0
  141. package/dist/packages/wje-orgchart/orgchart.d.ts +2 -0
  142. package/dist/packages/wje-orgchart/orgchart.element.d.ts +24 -0
  143. package/dist/packages/wje-orgchart-group/orgchart-group.d.ts +2 -0
  144. package/dist/packages/wje-orgchart-group/orgchart-group.element.d.ts +28 -0
  145. package/dist/packages/wje-orgchart-item/orgchart-item.d.ts +2 -0
  146. package/dist/packages/wje-orgchart-item/orgchart-item.element.d.ts +49 -0
  147. package/dist/packages/wje-panel/panel.d.ts +2 -0
  148. package/dist/packages/wje-panel/panel.element.d.ts +34 -0
  149. package/dist/packages/wje-popup/popup.d.ts +2 -0
  150. package/dist/packages/wje-popup/popup.element.d.ts +93 -0
  151. package/dist/packages/wje-progress-bar/progress-bar.d.ts +2 -0
  152. package/dist/packages/wje-progress-bar/progress-bar.element.d.ts +96 -0
  153. package/dist/packages/wje-qr-code/qr-code.d.ts +2 -0
  154. package/dist/packages/wje-qr-code/qr-code.element.d.ts +33 -0
  155. package/dist/packages/wje-radio/radio.d.ts +2 -0
  156. package/dist/packages/wje-radio/radio.element.d.ts +53 -0
  157. package/dist/packages/wje-radio-group/radio-group.d.ts +2 -0
  158. package/dist/packages/wje-radio-group/radio-group.element.d.ts +137 -0
  159. package/dist/packages/wje-rate/rate.d.ts +2 -0
  160. package/dist/packages/wje-rate/rate.element.d.ts +156 -0
  161. package/dist/packages/wje-relative-time/relative-time.d.ts +2 -0
  162. package/dist/packages/wje-relative-time/relative-time.element.d.ts +55 -0
  163. package/dist/packages/wje-relative-time/relative-time.test.d.ts +1 -0
  164. package/dist/packages/wje-reorder/reorder.d.ts +2 -0
  165. package/dist/packages/wje-reorder/reorder.element.d.ts +119 -0
  166. package/dist/packages/wje-reorder-dropzone/reorder-dropzone.d.ts +2 -0
  167. package/dist/packages/wje-reorder-dropzone/reorder-dropzone.element.d.ts +23 -0
  168. package/dist/packages/wje-reorder-handle/reorder-handle.d.ts +2 -0
  169. package/dist/packages/wje-reorder-handle/reorder-handle.element.d.ts +75 -0
  170. package/dist/packages/wje-reorder-item/reorder-item.d.ts +2 -0
  171. package/dist/packages/wje-reorder-item/reorder-item.element.d.ts +24 -0
  172. package/dist/packages/wje-route/route.d.ts +2 -0
  173. package/dist/packages/wje-route/route.element.d.ts +22 -0
  174. package/dist/packages/wje-router/router.d.ts +2 -0
  175. package/dist/packages/wje-router/router.element.d.ts +39 -0
  176. package/dist/packages/wje-router-link/router-link.d.ts +2 -0
  177. package/dist/packages/wje-router-link/router-link.element.d.ts +31 -0
  178. package/dist/packages/wje-router-outlet/router-outlet.d.ts +2 -0
  179. package/dist/packages/wje-router-outlet/router-outlet.element.d.ts +15 -0
  180. package/dist/packages/wje-row/row.d.ts +2 -0
  181. package/dist/packages/wje-row/row.element.d.ts +23 -0
  182. package/dist/packages/wje-select/select.d.ts +2 -0
  183. package/dist/packages/wje-select/select.element.d.ts +315 -0
  184. package/dist/packages/wje-slider/slider.d.ts +2 -0
  185. package/dist/packages/wje-slider/slider.element.d.ts +103 -0
  186. package/dist/packages/wje-split-view/service/service.d.ts +1 -0
  187. package/dist/packages/wje-split-view/split-view.d.ts +2 -0
  188. package/dist/packages/wje-split-view/split-view.element.d.ts +66 -0
  189. package/dist/packages/wje-status/status.d.ts +2 -0
  190. package/dist/packages/wje-status/status.element.d.ts +26 -0
  191. package/dist/packages/wje-step/step.d.ts +2 -0
  192. package/dist/packages/wje-step/step.element.d.ts +23 -0
  193. package/dist/packages/wje-stepper/stepper.d.ts +2 -0
  194. package/dist/packages/wje-stepper/stepper.element.d.ts +78 -0
  195. package/dist/packages/wje-store/default-store-actions.d.ts +25 -0
  196. package/dist/packages/wje-store/pubsub.d.ts +21 -0
  197. package/dist/packages/wje-store/store.d.ts +153 -0
  198. package/dist/packages/wje-tab/tab.d.ts +2 -0
  199. package/dist/packages/wje-tab/tab.element.d.ts +41 -0
  200. package/dist/packages/wje-tab-group/tab-group.d.ts +2 -0
  201. package/dist/packages/wje-tab-group/tab-group.element.d.ts +67 -0
  202. package/dist/packages/wje-tab-panel/tab-panel.d.ts +2 -0
  203. package/dist/packages/wje-tab-panel/tab-panel.element.d.ts +23 -0
  204. package/dist/packages/wje-textarea/textarea.d.ts +2 -0
  205. package/dist/packages/wje-textarea/textarea.element.d.ts +176 -0
  206. package/dist/packages/wje-thumbnail/thumbnail.d.ts +2 -0
  207. package/dist/packages/wje-thumbnail/thumbnail.element.d.ts +31 -0
  208. package/dist/packages/wje-timeline/timeline.d.ts +2 -0
  209. package/dist/packages/wje-timeline/timeline.element.d.ts +25 -0
  210. package/dist/packages/wje-timeline-item/timeline-item.d.ts +2 -0
  211. package/dist/packages/wje-timeline-item/timeline-item.element.d.ts +27 -0
  212. package/dist/packages/wje-toast/toast.d.ts +2 -0
  213. package/dist/packages/wje-toast/toast.element.d.ts +173 -0
  214. package/dist/packages/wje-toast/toast.test.d.ts +1 -0
  215. package/dist/packages/wje-toggle/toggle.d.ts +2 -0
  216. package/dist/packages/wje-toggle/toggle.element.d.ts +65 -0
  217. package/dist/packages/wje-toolbar/toolbar.d.ts +2 -0
  218. package/dist/packages/wje-toolbar/toolbar.element.d.ts +39 -0
  219. package/dist/packages/wje-toolbar-action/toolbar-action.d.ts +2 -0
  220. package/dist/packages/wje-toolbar-action/toolbar-action.element.d.ts +35 -0
  221. package/dist/packages/wje-tooltip/tooltip.d.ts +2 -0
  222. package/dist/packages/wje-tooltip/tooltip.element.d.ts +71 -0
  223. package/dist/packages/wje-tree/tree.d.ts +2 -0
  224. package/dist/packages/wje-tree/tree.element.d.ts +48 -0
  225. package/dist/packages/wje-tree-item/tree-item.d.ts +2 -0
  226. package/dist/packages/wje-tree-item/tree-item.element.d.ts +48 -0
  227. package/dist/packages/wje-visually-hidden/visually-hidden.d.ts +2 -0
  228. package/dist/packages/wje-visually-hidden/visually-hidden.element.d.ts +29 -0
  229. package/dist/popup.element-tyYxow0p.js +1623 -0
  230. package/dist/popup.element-tyYxow0p.js.map +1 -0
  231. package/dist/router-links-CJnOdbas.js +150 -0
  232. package/dist/router-links-CJnOdbas.js.map +1 -0
  233. package/dist/styles.css +849 -0
  234. package/dist/wje-accordion-item.js +113 -0
  235. package/dist/wje-accordion-item.js.map +1 -0
  236. package/dist/wje-accordion.js +122 -0
  237. package/dist/wje-accordion.js.map +1 -0
  238. package/dist/wje-animation.js +4324 -0
  239. package/dist/wje-animation.js.map +1 -0
  240. package/dist/wje-aside.js +55 -0
  241. package/dist/wje-aside.js.map +1 -0
  242. package/dist/wje-avatar.js +90 -0
  243. package/dist/wje-avatar.js.map +1 -0
  244. package/dist/wje-badge.js +71 -0
  245. package/dist/wje-badge.js.map +1 -0
  246. package/dist/wje-breadcrumb.js +195 -0
  247. package/dist/wje-breadcrumb.js.map +1 -0
  248. package/dist/wje-breadcrumbs.js +140 -0
  249. package/dist/wje-breadcrumbs.js.map +1 -0
  250. package/dist/wje-button-group.js +85 -0
  251. package/dist/wje-button-group.js.map +1 -0
  252. package/dist/wje-button.js +352 -0
  253. package/dist/wje-button.js.map +1 -0
  254. package/dist/wje-card-content.js +48 -0
  255. package/dist/wje-card-content.js.map +1 -0
  256. package/dist/wje-card-controls.js +48 -0
  257. package/dist/wje-card-controls.js.map +1 -0
  258. package/dist/wje-card-header.js +48 -0
  259. package/dist/wje-card-header.js.map +1 -0
  260. package/dist/wje-card-subtitle.js +55 -0
  261. package/dist/wje-card-subtitle.js.map +1 -0
  262. package/dist/wje-card-title.js +55 -0
  263. package/dist/wje-card-title.js.map +1 -0
  264. package/dist/wje-card.js +56 -0
  265. package/dist/wje-card.js.map +1 -0
  266. package/dist/wje-carousel-item.js +63 -0
  267. package/dist/wje-carousel-item.js.map +1 -0
  268. package/dist/wje-carousel.js +380 -0
  269. package/dist/wje-carousel.js.map +1 -0
  270. package/dist/wje-checkbox.js +540 -0
  271. package/dist/wje-checkbox.js.map +1 -0
  272. package/dist/wje-chip.js +76 -0
  273. package/dist/wje-chip.js.map +1 -0
  274. package/dist/wje-col.js +38 -0
  275. package/dist/wje-col.js.map +1 -0
  276. package/dist/wje-color-picker.js +1339 -0
  277. package/dist/wje-color-picker.js.map +1 -0
  278. package/dist/wje-container.js +56 -0
  279. package/dist/wje-container.js.map +1 -0
  280. package/dist/wje-copy-button.js +218 -0
  281. package/dist/wje-copy-button.js.map +1 -0
  282. package/dist/wje-dialog.js +249 -0
  283. package/dist/wje-dialog.js.map +1 -0
  284. package/dist/wje-divider.js +55 -0
  285. package/dist/wje-divider.js.map +1 -0
  286. package/dist/wje-dropdown.js +194 -0
  287. package/dist/wje-dropdown.js.map +1 -0
  288. package/dist/wje-element.js +967 -0
  289. package/dist/wje-element.js.map +1 -0
  290. package/dist/wje-fetchAndParseCSS.js +60 -0
  291. package/dist/wje-fetchAndParseCSS.js.map +1 -0
  292. package/dist/wje-file-upload-item.js +140 -0
  293. package/dist/wje-file-upload-item.js.map +1 -0
  294. package/dist/wje-file-upload.js +552 -0
  295. package/dist/wje-file-upload.js.map +1 -0
  296. package/dist/wje-footer.js +52 -0
  297. package/dist/wje-footer.js.map +1 -0
  298. package/dist/wje-form.js +53 -0
  299. package/dist/wje-form.js.map +1 -0
  300. package/dist/wje-format-digital.js +146 -0
  301. package/dist/wje-format-digital.js.map +1 -0
  302. package/dist/wje-grid.js +54 -0
  303. package/dist/wje-grid.js.map +1 -0
  304. package/dist/wje-header.js +56 -0
  305. package/dist/wje-header.js.map +1 -0
  306. package/dist/wje-icon-picker.js +349 -0
  307. package/dist/wje-icon-picker.js.map +1 -0
  308. package/dist/wje-icon.js +191 -0
  309. package/dist/wje-icon.js.map +1 -0
  310. package/dist/wje-img-comparer.js +131 -0
  311. package/dist/wje-img-comparer.js.map +1 -0
  312. package/dist/wje-img.js +80 -0
  313. package/dist/wje-img.js.map +1 -0
  314. package/dist/wje-infinite-scroll.js +6 -0
  315. package/dist/wje-infinite-scroll.js.map +1 -0
  316. package/dist/wje-input-file.js +111 -0
  317. package/dist/wje-input-file.js.map +1 -0
  318. package/dist/wje-input.js +452 -0
  319. package/dist/wje-input.js.map +1 -0
  320. package/dist/wje-item.js +88 -0
  321. package/dist/wje-item.js.map +1 -0
  322. package/dist/wje-kanban.js +462 -0
  323. package/dist/wje-kanban.js.map +1 -0
  324. package/dist/wje-label.js +53 -0
  325. package/dist/wje-label.js.map +1 -0
  326. package/dist/wje-list.js +6 -0
  327. package/dist/wje-list.js.map +1 -0
  328. package/dist/wje-main.js +52 -0
  329. package/dist/wje-main.js.map +1 -0
  330. package/dist/wje-masonry.js +267 -0
  331. package/dist/wje-masonry.js.map +1 -0
  332. package/dist/wje-master.js +622 -0
  333. package/dist/wje-master.js.map +1 -0
  334. package/dist/wje-menu-button.js +60 -0
  335. package/dist/wje-menu-button.js.map +1 -0
  336. package/dist/wje-menu-item.js +545 -0
  337. package/dist/wje-menu-item.js.map +1 -0
  338. package/dist/wje-menu-label.js +55 -0
  339. package/dist/wje-menu-label.js.map +1 -0
  340. package/dist/wje-menu.js +72 -0
  341. package/dist/wje-menu.js.map +1 -0
  342. package/dist/wje-option.js +112 -0
  343. package/dist/wje-option.js.map +1 -0
  344. package/dist/wje-options.js +355 -0
  345. package/dist/wje-options.js.map +1 -0
  346. package/dist/wje-orgchart-group.js +72 -0
  347. package/dist/wje-orgchart-group.js.map +1 -0
  348. package/dist/wje-orgchart-item.js +98 -0
  349. package/dist/wje-orgchart-item.js.map +1 -0
  350. package/dist/wje-orgchart.js +49 -0
  351. package/dist/wje-orgchart.js.map +1 -0
  352. package/dist/wje-popup.js +6 -0
  353. package/dist/wje-popup.js.map +1 -0
  354. package/dist/wje-progress-bar.js +213 -0
  355. package/dist/wje-progress-bar.js.map +1 -0
  356. package/dist/wje-qr-code.js +2892 -0
  357. package/dist/wje-qr-code.js.map +1 -0
  358. package/dist/wje-radio-group.js +228 -0
  359. package/dist/wje-radio-group.js.map +1 -0
  360. package/dist/wje-radio.js +106 -0
  361. package/dist/wje-radio.js.map +1 -0
  362. package/dist/wje-rate.js +300 -0
  363. package/dist/wje-rate.js.map +1 -0
  364. package/dist/wje-relative-time.js +115 -0
  365. package/dist/wje-relative-time.js.map +1 -0
  366. package/dist/wje-reorder-dropzone.js +49 -0
  367. package/dist/wje-reorder-dropzone.js.map +1 -0
  368. package/dist/wje-reorder-handle.js +218 -0
  369. package/dist/wje-reorder-handle.js.map +1 -0
  370. package/dist/wje-reorder-item.js +61 -0
  371. package/dist/wje-reorder-item.js.map +1 -0
  372. package/dist/wje-reorder.js +281 -0
  373. package/dist/wje-reorder.js.map +1 -0
  374. package/dist/wje-route.js +43 -0
  375. package/dist/wje-route.js.map +1 -0
  376. package/dist/wje-router-link.js +64 -0
  377. package/dist/wje-router-link.js.map +1 -0
  378. package/dist/wje-router-outlet.js +192 -0
  379. package/dist/wje-router-outlet.js.map +1 -0
  380. package/dist/wje-routerx.js +1437 -0
  381. package/dist/wje-routerx.js.map +1 -0
  382. package/dist/wje-row.js +49 -0
  383. package/dist/wje-row.js.map +1 -0
  384. package/dist/wje-select.js +630 -0
  385. package/dist/wje-select.js.map +1 -0
  386. package/dist/wje-slider.js +221 -0
  387. package/dist/wje-slider.js.map +1 -0
  388. package/dist/wje-sliding-container.js +474 -0
  389. package/dist/wje-sliding-container.js.map +1 -0
  390. package/dist/wje-split-view.js +153 -0
  391. package/dist/wje-split-view.js.map +1 -0
  392. package/dist/wje-status.js +61 -0
  393. package/dist/wje-status.js.map +1 -0
  394. package/dist/wje-step.js +50 -0
  395. package/dist/wje-step.js.map +1 -0
  396. package/dist/wje-stepper.js +231 -0
  397. package/dist/wje-stepper.js.map +1 -0
  398. package/dist/wje-store.js +401 -0
  399. package/dist/wje-store.js.map +1 -0
  400. package/dist/wje-tab-group.js +137 -0
  401. package/dist/wje-tab-group.js.map +1 -0
  402. package/dist/wje-tab-panel.js +46 -0
  403. package/dist/wje-tab-panel.js.map +1 -0
  404. package/dist/wje-tab.js +59 -0
  405. package/dist/wje-tab.js.map +1 -0
  406. package/dist/wje-textarea.js +376 -0
  407. package/dist/wje-textarea.js.map +1 -0
  408. package/dist/wje-thumbnail.js +54 -0
  409. package/dist/wje-thumbnail.js.map +1 -0
  410. package/dist/wje-toast.js +334 -0
  411. package/dist/wje-toast.js.map +1 -0
  412. package/dist/wje-toggle.js +125 -0
  413. package/dist/wje-toggle.js.map +1 -0
  414. package/dist/wje-toolbar-action.js +72 -0
  415. package/dist/wje-toolbar-action.js.map +1 -0
  416. package/dist/wje-toolbar.js +63 -0
  417. package/dist/wje-toolbar.js.map +1 -0
  418. package/dist/wje-tooltip.js +166 -0
  419. package/dist/wje-tooltip.js.map +1 -0
  420. package/dist/wje-visually-hidden.js +55 -0
  421. package/dist/wje-visually-hidden.js.map +1 -0
  422. package/package.json +1 -1
@@ -0,0 +1,967 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __typeError = (msg) => {
3
+ throw TypeError(msg);
4
+ };
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
7
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
8
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
9
+ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
10
+ var _Event_instances, dispatch_fn;
11
+ import { store, defaultStoreActions } from "./wje-store.js";
12
+ class UniversalService {
13
+ constructor(props = {}) {
14
+ __publicField(this, "findByKey", (attrName, key, keyValue) => {
15
+ if (this._store.getState()[attrName] instanceof Array) {
16
+ return this._store.getState()[attrName].find((item) => item[key] === keyValue);
17
+ } else {
18
+ console.warn(` Attribute ${attrName} is not array`);
19
+ return null;
20
+ }
21
+ });
22
+ __publicField(this, "findById", (attrName, id) => {
23
+ if (this._store.getState()[attrName] instanceof Array) {
24
+ return this._store.getState()[attrName].find((item) => item.id === id);
25
+ } else {
26
+ console.warn(` Attribute ${attrName} is not array`);
27
+ return null;
28
+ }
29
+ });
30
+ __publicField(this, "findAttributeValue", (attrName) => {
31
+ return this._store.getState()[attrName];
32
+ });
33
+ __publicField(this, "update", (data, action) => {
34
+ this._store.dispatch(action(data));
35
+ });
36
+ __publicField(this, "add", (data, action) => {
37
+ this._store.dispatch(action(data));
38
+ });
39
+ __publicField(this, "loadPromise", (url, action, method = "GET", data = "", permissionCallBack = () => {
40
+ }) => {
41
+ return fetch(url, {
42
+ method,
43
+ body: data,
44
+ headers: {
45
+ "Content-Type": "application/json"
46
+ },
47
+ async: true
48
+ }).then((response, e) => {
49
+ var _a;
50
+ let permissions = (_a = response.headers.get("permissions")) == null ? void 0 : _a.split(",");
51
+ permissionCallBack(permissions);
52
+ if (response.ok) {
53
+ return response.json();
54
+ } else {
55
+ throw response.json();
56
+ }
57
+ }).then((responseData) => {
58
+ this._store.dispatch(action(responseData));
59
+ return responseData;
60
+ });
61
+ });
62
+ __publicField(this, "loadOnePromise", (url, action) => {
63
+ return fetch(url, {
64
+ headers: {
65
+ "Content-Type": "application/json"
66
+ }
67
+ }).then((response) => {
68
+ const responseData = response.json();
69
+ if (action) {
70
+ this._store.dispatch(action(responseData));
71
+ }
72
+ return responseData;
73
+ });
74
+ });
75
+ this._store = props.store;
76
+ }
77
+ _save(url, data, action, dispatchMethod, method) {
78
+ let promise = fetch(url, {
79
+ method,
80
+ body: JSON.stringify(data),
81
+ headers: {
82
+ "Content-Type": "application/json"
83
+ }
84
+ }).then((response) => {
85
+ if (response.ok) {
86
+ return response.json();
87
+ } else {
88
+ return response.json();
89
+ }
90
+ });
91
+ return this.dispatch(promise, dispatchMethod, action);
92
+ }
93
+ _get(url, action, dispatchMethod, signal) {
94
+ let promise = fetch(url, {
95
+ method: "GET",
96
+ headers: {
97
+ "Content-Type": "application/json"
98
+ },
99
+ ...signal ? { signal } : {}
100
+ }).then(async (response) => {
101
+ let responseText;
102
+ try {
103
+ responseText = await response.text();
104
+ return JSON.parse(responseText);
105
+ } catch (err) {
106
+ console.error(err);
107
+ return responseText;
108
+ }
109
+ });
110
+ return this.dispatch(promise, dispatchMethod, action);
111
+ }
112
+ put(url, data, action, dispatchMethod = true) {
113
+ return this._save(url, data, action, dispatchMethod, "PUT");
114
+ }
115
+ post(url, data, action, dispatchMethod = true) {
116
+ return this._save(url, data, action, dispatchMethod, "POST");
117
+ }
118
+ delete(url, data, action, dispatchMethod = true) {
119
+ return this._save(url, data, action, dispatchMethod, "DELETE");
120
+ }
121
+ get(url, action, dispatchMethod = true) {
122
+ return this._get(url, action, dispatchMethod);
123
+ }
124
+ dispatch(promise, dispatchMethod, action) {
125
+ if (dispatchMethod) {
126
+ return promise.then((data) => {
127
+ this._store.dispatch(action(data.data));
128
+ return data;
129
+ }).catch((error) => {
130
+ console.error(error);
131
+ });
132
+ }
133
+ return promise;
134
+ }
135
+ }
136
+ const _WjePermissionsApi = class _WjePermissionsApi {
137
+ /**
138
+ * Sets the permission key.
139
+ * @param value
140
+ */
141
+ static set permissionKey(value) {
142
+ _WjePermissionsApi._permissionKey = value || "permissions";
143
+ }
144
+ /**
145
+ * Returns the permission key.
146
+ * @returns {*|string}
147
+ */
148
+ static get permissionKey() {
149
+ return _WjePermissionsApi._permissionKey;
150
+ }
151
+ /**
152
+ * Sets the permissions.
153
+ * @param value
154
+ */
155
+ static set permissions(value) {
156
+ window.localStorage.setItem(_WjePermissionsApi.permissionKey, JSON.stringify(value));
157
+ }
158
+ /**
159
+ * Returns the permissions.
160
+ * @returns {string[]}
161
+ */
162
+ static get permissions() {
163
+ return JSON.parse(window.localStorage.getItem(_WjePermissionsApi.permissionKey)) || [];
164
+ }
165
+ /**
166
+ * Checks if the permission is included.
167
+ * @param key
168
+ * @returns {boolean}
169
+ */
170
+ static includesKey(key) {
171
+ return _WjePermissionsApi.permissions.includes(key);
172
+ }
173
+ /**
174
+ * Checks if the permission is fulfilled.
175
+ * @returns {boolean}
176
+ */
177
+ static isPermissionFulfilled(permissions) {
178
+ return permissions.some((perm) => _WjePermissionsApi.permissions.includes(perm));
179
+ }
180
+ };
181
+ __publicField(_WjePermissionsApi, "_permissionKey", "permissions");
182
+ let WjePermissionsApi = _WjePermissionsApi;
183
+ class WjElementUtils {
184
+ /**
185
+ * This function creates an element.
186
+ * @param element : HTMLElement - The element value.
187
+ * @param object : Object - The object value.
188
+ */
189
+ static setAttributesToElement(element, object) {
190
+ Object.entries(object).forEach(([key, value]) => {
191
+ element.setAttribute(key, value);
192
+ });
193
+ }
194
+ /**
195
+ * This function gets the attributes from an element.
196
+ * @param {string|HTMLElement} el The element or selector to retrieve attributes from.
197
+ * @returns {object} - An object containing the element's attributes as key-value pairs.
198
+ */
199
+ static getAttributes(el) {
200
+ if (typeof el === "string") el = document.querySelector(el);
201
+ return Array.from(el.attributes).filter((a) => !a.name.startsWith("@")).map((a) => [
202
+ a.name.split("-").map((s, i) => {
203
+ if (i !== 0) {
204
+ return s.charAt(0).toUpperCase() + s.slice(1);
205
+ } else {
206
+ return s;
207
+ }
208
+ }).join(""),
209
+ a.value
210
+ ]).reduce((acc, attr) => {
211
+ acc[attr[0]] = attr[1];
212
+ return acc;
213
+ }, {});
214
+ }
215
+ /**
216
+ * This function gets the events from an element.
217
+ * @param {string|HTMLElement} el The element or selector to retrieve events from.
218
+ * @returns {Map<any, any>} - The map value.
219
+ */
220
+ static getEvents(el) {
221
+ if (typeof el === "string") el = document.querySelector(el);
222
+ return Array.from(el.attributes).filter((a) => a.name.startsWith("@wje")).map((a) => [a.name.substring(3).split("-").join(""), a.value]).reduce((acc, attr) => {
223
+ acc.set(attr[0], attr[1]);
224
+ return acc;
225
+ }, /* @__PURE__ */ new Map());
226
+ }
227
+ /**
228
+ * This function converts an object to a string.
229
+ * @param {object} object The object to convert.
230
+ * @returns {string} - The string value.
231
+ */
232
+ static attributesToString(object) {
233
+ return Object.entries(object).map(([key, value]) => {
234
+ return `${key}="${value}"`;
235
+ }).join(" ");
236
+ }
237
+ /**
238
+ * This function checks if the slot exists.
239
+ * @param {string|HTMLElement} el The element or selector to check for slots.
240
+ * @param slotName The slot name to check for.
241
+ * @returns {boolean} - The boolean value.
242
+ */
243
+ static hasSlot(el, slotName = null) {
244
+ let selector = slotName ? `[slot="${slotName}"]` : "[slot]";
245
+ return el.querySelectorAll(selector).length > 0 ? true : false;
246
+ }
247
+ /**
248
+ * This function checks if the slot has content.
249
+ * @param {string|HTMLElement} el The element or selector to check for slot content
250
+ * @param slotName The slot name to check for.
251
+ * @returns {boolean} - The boolean value.
252
+ */
253
+ static hasSlotContent(el, slotName = null) {
254
+ let slotElement = el.querySelector(`slot`);
255
+ if (slotName) {
256
+ slotElement = el.querySelector(`slot[name="${slotName}"]`);
257
+ }
258
+ if (slotElement) {
259
+ const assignedElements = slotElement.assignedElements();
260
+ return assignedElements.length > 0;
261
+ }
262
+ return false;
263
+ }
264
+ /**
265
+ * This function converts a string to a boolean.
266
+ * @param {string | object} value The value to convert to a boolean. If the value is a boolean, it will be returned as is.
267
+ * @returns {boolean} - The boolean value.
268
+ */
269
+ static stringToBoolean(value) {
270
+ if (typeof value === "boolean") return value;
271
+ return !["false", "0", 0].includes(value);
272
+ }
273
+ }
274
+ var self;
275
+ class Event {
276
+ constructor() {
277
+ __privateAdd(this, _Event_instances);
278
+ this.customEventStorage = [];
279
+ self = this;
280
+ }
281
+ /**
282
+ * Dispatch custom event to the element with the specified event name and detail.
283
+ * @param element
284
+ * @param event
285
+ * @param detail
286
+ */
287
+ dispatchCustomEvent(element, event2, detail) {
288
+ element.dispatchEvent(
289
+ new CustomEvent(event2, {
290
+ detail: detail || {
291
+ context: element,
292
+ event: self
293
+ },
294
+ bubbles: true,
295
+ composed: true,
296
+ cancelable: true
297
+ })
298
+ );
299
+ }
300
+ /**
301
+ * Find record by element in the storage.
302
+ * @param element
303
+ * @returns {*}
304
+ */
305
+ findRecordByElement(element) {
306
+ for (let index = 0, length = this.customEventStorage.length; index < length; index++) {
307
+ let record = this.customEventStorage[index];
308
+ if (element === record.element) {
309
+ return record;
310
+ }
311
+ }
312
+ return false;
313
+ }
314
+ /**
315
+ * Add listener to the element. If the element is an array, the listener will be added to all elements in the array.
316
+ * @param element
317
+ * @param originalEvent
318
+ * @param event
319
+ * @param listener
320
+ * @param options
321
+ */
322
+ addListener(element, originalEvent, event2, listener, options) {
323
+ if (!element) return;
324
+ if (!Array.isArray(element)) element = [element];
325
+ element.forEach((el) => {
326
+ this.writeRecord(el, originalEvent, event2, listener, options);
327
+ });
328
+ }
329
+ /**
330
+ * Write record to the storage.
331
+ * @param element
332
+ * @param originalEvent
333
+ * @param event
334
+ * @param listener
335
+ * @param options
336
+ */
337
+ writeRecord(element, originalEvent, event2, listener, options) {
338
+ let record = this.findRecordByElement(element);
339
+ if (record) {
340
+ record.listeners[originalEvent] = record.listeners[originalEvent] || [];
341
+ } else {
342
+ record = {
343
+ element,
344
+ listeners: {}
345
+ };
346
+ record.listeners[originalEvent] = [];
347
+ this.customEventStorage.push(record);
348
+ }
349
+ listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
350
+ let obj = {
351
+ listener,
352
+ options,
353
+ event: event2
354
+ };
355
+ if (!this.listenerExists(element, originalEvent, obj)) {
356
+ record.listeners[originalEvent].push(obj);
357
+ element.addEventListener(originalEvent, listener, options);
358
+ }
359
+ }
360
+ /**
361
+ * Performs a deep equality check between two objects.
362
+ * @param x The first object to compare.
363
+ * @param y The second object to compare.
364
+ * @returns - Returns `true` if the objects are deeply equal, `false` otherwise.
365
+ */
366
+ deepEqual(x, y) {
367
+ return x && y && typeof x === "object" && typeof x === typeof y ? Object.keys(x).length === Object.keys(y).length && Object.keys(x).every((key) => this.deepEqual(x[key], y[key])) : x === y;
368
+ }
369
+ /**
370
+ * Check if the listener already exists on the element.
371
+ * @param element
372
+ * @param event
373
+ * @param listener
374
+ * @returns
375
+ */
376
+ listenerExists(element, event2, listener) {
377
+ let record = this.findRecordByElement(element);
378
+ return record.listeners[event2].some((e) => this.deepEqual(e, listener));
379
+ }
380
+ /**
381
+ * Remove listener from the element and delete the listener from the custom event storage.
382
+ * @param element
383
+ * @param originalEvent
384
+ * @param event
385
+ * @param listener
386
+ * @param options
387
+ */
388
+ removeListener(element, originalEvent, event2, listener, options) {
389
+ let record = this.findRecordByElement(element);
390
+ if (record && originalEvent in record.listeners) {
391
+ let index = record.listeners[originalEvent].indexOf(listener);
392
+ if (index !== -1) {
393
+ record.listeners[originalEvent].splice(index, 1);
394
+ }
395
+ if (!record.listeners[originalEvent].length) {
396
+ delete record.listeners[originalEvent];
397
+ }
398
+ }
399
+ listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
400
+ element.removeEventListener(originalEvent, listener, options);
401
+ }
402
+ /**
403
+ * Remove all event listeners from the specified element and delete the element from the custom event storage.
404
+ * @param {HTMLElement} element The element from which all listeners will be removed.
405
+ */
406
+ removeElement(element) {
407
+ this.customEventStorage = this.customEventStorage.filter((e) => {
408
+ return e.element !== element;
409
+ });
410
+ }
411
+ // TODO
412
+ createPromiseFromEvent(element, event2) {
413
+ return new Promise((resolve) => {
414
+ let success = () => {
415
+ element.removeEventListener(event2, success);
416
+ resolve();
417
+ };
418
+ element.addEventListener(event2, success);
419
+ });
420
+ }
421
+ }
422
+ _Event_instances = new WeakSet();
423
+ /**
424
+ * Dispatch event to the element and trigger the listener.
425
+ * @param e
426
+ */
427
+ dispatch_fn = function(e) {
428
+ let element = this;
429
+ let record = self.findRecordByElement(element);
430
+ let listeners = record.listeners[e.type];
431
+ listeners.forEach((listener) => {
432
+ self.dispatchCustomEvent(element, listener.event, {
433
+ originalEvent: (e == null ? void 0 : e.type) || null,
434
+ context: element,
435
+ event: self
436
+ });
437
+ if (listener.options && listener.options.stopPropagation === true) e.stopPropagation();
438
+ });
439
+ };
440
+ let event = new Event();
441
+ const template = document.createElement("template");
442
+ template.innerHTML = ``;
443
+ const _WJElement = class _WJElement extends HTMLElement {
444
+ /**
445
+ * Initializes a new instance of the WJElement class.
446
+ */
447
+ constructor() {
448
+ super();
449
+ /**
450
+ * Initializes the component, setting up attributes and rendering.
451
+ * @param [force] Whether to force initialization.
452
+ * @returns A promise that resolves when initialization is complete.
453
+ */
454
+ __publicField(this, "initWjElement", (force = false) => {
455
+ return new Promise(async (resolve, reject) => {
456
+ var _a;
457
+ this.drawingStatus = this.drawingStatuses.BEGINING;
458
+ (_a = this.setupAttributes) == null ? void 0 : _a.call(this);
459
+ if (this.hasShadowRoot) {
460
+ if (!this.shadowRoot) this.attachShadow({ mode: this.shadowType || "open" });
461
+ }
462
+ this.setUpAccessors();
463
+ this.drawingStatus = this.drawingStatuses.START;
464
+ await this.display(force);
465
+ const sheet = new CSSStyleSheet();
466
+ sheet.replaceSync(this.constructor.cssStyleSheet);
467
+ this.context.adoptedStyleSheets = [sheet];
468
+ resolve();
469
+ });
470
+ });
471
+ this.isAttached = false;
472
+ this.service = new UniversalService({
473
+ store
474
+ });
475
+ this.defineDependencies();
476
+ this.rendering = false;
477
+ this._dependencies = {};
478
+ this.drawingStatuses = {
479
+ CREATED: 0,
480
+ ATTACHED: 1,
481
+ BEGINING: 2,
482
+ START: 3,
483
+ DRAWING: 4,
484
+ DONE: 5,
485
+ DISCONNECTED: 6
486
+ };
487
+ this.drawingStatus = this.drawingStatuses.CREATED;
488
+ }
489
+ /**
490
+ * Sets the value of the 'permission' attribute.
491
+ * @param {string[]} value The value to set for the 'permission' attribute.
492
+ */
493
+ set permission(value) {
494
+ this.setAttribute("permission", value.join(","));
495
+ }
496
+ /**
497
+ * Gets the value of the 'permission-check' attribute.
498
+ * @returns {string[]} The value of the 'permission' attribute.
499
+ */
500
+ get permission() {
501
+ var _a;
502
+ return ((_a = this.getAttribute("permission")) == null ? void 0 : _a.split(",")) || [];
503
+ }
504
+ /**
505
+ * Sets the 'permission-check' attribute.
506
+ * @param {boolean} value The value to set for the 'permission-check' attribute.
507
+ */
508
+ set isPermissionCheck(value) {
509
+ if (value) this.setAttribute("permission-check", "");
510
+ else this.removeAttribute("permission-check");
511
+ }
512
+ /**
513
+ * Checks if the 'permission-check' attribute is present.
514
+ * @returns {boolean} True if the 'permission-check' attribute is present.
515
+ */
516
+ get isPermissionCheck() {
517
+ return this.hasAttribute("permission-check");
518
+ }
519
+ set noShow(value) {
520
+ if (value) this.setAttribute("no-show", "");
521
+ else this.removeAttribute("no-show");
522
+ }
523
+ /**
524
+ * Checks if the 'show' attribute is present.
525
+ * @returns {boolean} True if the 'show' attribute is present.
526
+ */
527
+ get noShow() {
528
+ return this.hasAttribute("no-show");
529
+ }
530
+ /**
531
+ * Sets the 'shadow' attribute.
532
+ * @param {string} value The value to set for the 'shadow' attribute.
533
+ */
534
+ set isShadowRoot(value) {
535
+ return this.setAttribute("shadow", value);
536
+ }
537
+ get isShadowRoot() {
538
+ return this.getAttribute("shadow");
539
+ }
540
+ /**
541
+ * Checks if the 'shadow' attribute is present.
542
+ * @returns {boolean} True if the 'shadow' attribute is present.
543
+ */
544
+ get hasShadowRoot() {
545
+ return this.hasAttribute("shadow");
546
+ }
547
+ /**
548
+ * Gets the value of the 'shadow' attribute or 'open' if not set.
549
+ * @returns {string} The value of the 'shadow' attribute or 'open'.
550
+ */
551
+ get shadowType() {
552
+ return this.getAttribute("shadow") || "open";
553
+ }
554
+ /**
555
+ * Gets the rendering context, either the shadow root or the component itself.
556
+ * @returns The rendering context.
557
+ */
558
+ get context() {
559
+ if (this.hasShadowRoot) {
560
+ return this.shadowRoot;
561
+ } else {
562
+ return this;
563
+ }
564
+ }
565
+ /**
566
+ * Gets the store instance.
567
+ * @returns {object} The store instance.
568
+ */
569
+ get store() {
570
+ return store;
571
+ }
572
+ /**
573
+ * @typedef {object} ArrayActions
574
+ * @property {Function} addAction - Adds an item to the array.
575
+ * @property {Function} deleteAction - Deletes an item from the array.
576
+ * @property {Function} loadAction - Loads an array.
577
+ * @property {Function} updateAction - Updates an item in the array.
578
+ * @property {Function} addManyAction - Adds many items to the array.
579
+ */
580
+ /**
581
+ * @typedef {object} ObjectActions
582
+ * @property {Function} addAction - Replace old object with new object
583
+ * @property {Function} deleteAction - Delete item based on key
584
+ * @property {Function} updateAction - Update item based on key
585
+ */
586
+ /**
587
+ * Gets the default store actions.
588
+ * @returns The default store actions for arrays and objects.
589
+ */
590
+ get defaultStoreActions() {
591
+ return defaultStoreActions;
592
+ }
593
+ /**
594
+ * Gets the classes to be removed after the component is connected.
595
+ * @returns An array of class names to remove.
596
+ */
597
+ get removeClassAfterConnect() {
598
+ var _a;
599
+ return (_a = this.getAttribute("remove-class-after-connect")) == null ? void 0 : _a.split(" ");
600
+ }
601
+ /**
602
+ * Sets the component dependencies.
603
+ * @param value The dependencies to set.
604
+ */
605
+ set dependencies(value) {
606
+ this._dependencies = value;
607
+ }
608
+ /**
609
+ * Gets the component dependencies.
610
+ * @returns The component dependencies.
611
+ */
612
+ get dependencies() {
613
+ return this._dependencies;
614
+ }
615
+ /**
616
+ * Defines a custom element if not already defined.
617
+ * @param name The name of the custom element.
618
+ * @param [elementConstructor] The constructor for the custom element.
619
+ * @param [options] Additional options for defining the element.
620
+ */
621
+ static define(name, elementConstructor = this, options = {}) {
622
+ const definedElement = customElements.get(name);
623
+ if (!definedElement) {
624
+ customElements.define(name, elementConstructor, options);
625
+ }
626
+ }
627
+ /**
628
+ * Defines component dependencies by registering custom elements.
629
+ */
630
+ defineDependencies() {
631
+ if (this.dependencies)
632
+ Object.entries(this.dependencies).forEach((name, component) => _WJElement.define(name, component));
633
+ }
634
+ /**
635
+ * Hook for extending behavior before drawing the component.
636
+ * @param context The rendering context, usually the element's shadow root or main DOM element.
637
+ * @param appStoreObj The global application store for managing state.
638
+ * @param params Additional parameters or attributes for rendering the component.
639
+ */
640
+ beforeDraw(context, appStoreObj, params) {
641
+ }
642
+ /**
643
+ * Renders the component within the provided context.
644
+ * @param context The rendering context, usually the element's shadow root or main DOM element.
645
+ * @param appStoreObj
646
+ * @param params Additional parameters or attributes for rendering the component.
647
+ * @returns This implementation does not render anything and returns `null`.
648
+ * @description
649
+ * The `draw` method is responsible for rendering the component's content.
650
+ * Override this method in subclasses to define custom rendering logic.
651
+ * @example
652
+ * class MyComponent extends WJElement {
653
+ * draw(context, appStoreObj, params) {
654
+ * const div = document.createElement('div');
655
+ * div.textContent = 'Hello, world!';
656
+ * context.appendChild(div);
657
+ * }
658
+ * }
659
+ */
660
+ draw(context, appStoreObj, params) {
661
+ return null;
662
+ }
663
+ /**
664
+ * Hook for extending behavior after drawing the component.
665
+ * @param context The rendering context, usually the element's shadow root or main DOM element.
666
+ * @param appStoreObj The global application store for managing state.
667
+ * @param params Additional parameters or attributes for rendering the component.
668
+ */
669
+ afterDraw(context, appStoreObj, params) {
670
+ }
671
+ /**
672
+ * Refreshes the update promise for rendering lifecycle management.
673
+ */
674
+ refreshUpdatePromise() {
675
+ this.updateComplete = new Promise((resolve, reject) => {
676
+ this.finisPromise = resolve;
677
+ this.rejectPromise = reject;
678
+ });
679
+ }
680
+ /**
681
+ * Lifecycle method invoked when the component is connected to the DOM.
682
+ */
683
+ connectedCallback() {
684
+ this.drawingStatus = this.drawingStatuses.ATTACHED;
685
+ this.finisPromise = (resolve) => {
686
+ resolve();
687
+ };
688
+ this.rejectPromise = (reject) => {
689
+ reject();
690
+ };
691
+ this.refreshUpdatePromise();
692
+ this.renderPromise = this.initWjElement(true);
693
+ }
694
+ /**
695
+ * Sets up attributes and event listeners for the component.
696
+ * This method retrieves all custom events defined for the component
697
+ * and adds event listeners for each of them. When an event is triggered,
698
+ * it calls the corresponding method on the host element.
699
+ */
700
+ setupAttributes() {
701
+ let allEvents = WjElementUtils.getEvents(this);
702
+ allEvents.forEach((customEvent, domEvent) => {
703
+ this.addEventListener(domEvent, (e) => {
704
+ var _a, _b;
705
+ (_b = (_a = this.getRootNode().host)[customEvent]) == null ? void 0 : _b.call(_a);
706
+ });
707
+ });
708
+ }
709
+ /**
710
+ * Hook for extending behavior before disconnecting the component.
711
+ */
712
+ beforeDisconnect() {
713
+ }
714
+ /**
715
+ * Hook for extending behavior after disconnecting the component.
716
+ */
717
+ afterDisconnect() {
718
+ }
719
+ /**
720
+ * Hook for extending behavior before redrawing the component.
721
+ */
722
+ beforeRedraw() {
723
+ }
724
+ /**
725
+ * Cleans up resources and event listeners for the component.
726
+ */
727
+ componentCleanup() {
728
+ }
729
+ /**
730
+ * Lifecycle method invoked when the component is disconnected from the DOM.
731
+ */
732
+ disconnectedCallback() {
733
+ var _a, _b;
734
+ (_a = this.beforeDisconnect) == null ? void 0 : _a.call(this);
735
+ if (this.isAttached) this.context.innerHTML = "";
736
+ this.isAttached = false;
737
+ (_b = this.afterDisconnect) == null ? void 0 : _b.call(this);
738
+ this.drawingStatus = this.drawingStatuses.DISCONNECTED;
739
+ this.componentCleanup();
740
+ }
741
+ /**
742
+ * Enqueues an update to the component.
743
+ * @returns A promise that resolves when the update is complete.
744
+ */
745
+ async enqueueUpdate() {
746
+ try {
747
+ if (this.renderPromise && this.renderPromise instanceof Promise) {
748
+ await this.renderPromise;
749
+ }
750
+ } catch (e) {
751
+ console.error("An error occurred:", e);
752
+ Promise.reject(e);
753
+ }
754
+ const result = this.refresh();
755
+ if (result !== null) {
756
+ await result;
757
+ }
758
+ this.renderPromise = null;
759
+ }
760
+ /**
761
+ * Lifecycle method invoked when an observed attribute changes.
762
+ * @param name The name of the attribute that changed.
763
+ * @param old The old value of the attribute.
764
+ * @param newName The new value of the attribute.
765
+ */
766
+ attributeChangedCallback(name, old, newName) {
767
+ if (old !== newName) {
768
+ this.renderPromise = this.enqueueUpdate();
769
+ }
770
+ }
771
+ /**
772
+ * Refreshes the component by reinitializing it if it is in a drawing state.
773
+ * This method checks if the component's drawing status is at least in the START state.
774
+ * If so, it performs the following steps:
775
+ * 1. Calls the `beforeRedraw` hook if defined.
776
+ * 2. Calls the `beforeDisconnect` hook if defined.
777
+ * 3. Refreshes the update promise to manage the rendering lifecycle.
778
+ * 4. Calls the `afterDisconnect` hook if defined.
779
+ * 5. Reinitializes the component by calling `initWjElement` with `true` to force initialization.
780
+ * If the component is not in a drawing state, it simply returns a resolved promise.
781
+ * @returns {Promise<void>} A promise that resolves when the refresh is complete.
782
+ */
783
+ refresh() {
784
+ var _a, _b, _c;
785
+ if (this.drawingStatus && this.drawingStatus >= this.drawingStatuses.START) {
786
+ (_a = this.beforeRedraw) == null ? void 0 : _a.call(this);
787
+ (_b = this.beforeDisconnect) == null ? void 0 : _b.call(this);
788
+ this.refreshUpdatePromise();
789
+ (_c = this.afterDisconnect) == null ? void 0 : _c.call(this);
790
+ return this.initWjElement(true);
791
+ }
792
+ return Promise.resolve();
793
+ }
794
+ /**
795
+ * Renders the component within the provided context.
796
+ * @param context The rendering context, usually the element's shadow root or main DOM element.
797
+ * @param appStore The global application store for managing state.
798
+ * @param params Additional parameters or attributes for rendering the component.
799
+ * @returns This implementation does not render anything and returns `null`.
800
+ * @description
801
+ * The `draw` method is responsible for rendering the component's content.
802
+ * Override this method in subclasses to define custom rendering logic.
803
+ * @example
804
+ * class MyComponent extends WJElement {
805
+ * draw(context, appStore, params) {
806
+ * const div = document.createElement('div');
807
+ * div.textContent = 'Hello, world!';
808
+ * context.appendChild(div);
809
+ * }
810
+ * }
811
+ */
812
+ draw(context, appStore, params) {
813
+ return null;
814
+ }
815
+ /**
816
+ * Displays the component's content, optionally forcing a re-render.
817
+ * @param [force] Whether to force a re-render.
818
+ * @returns A promise that resolves when the display is complete.
819
+ */
820
+ display(force = false) {
821
+ this.template = this.constructor.customTemplate || document.createElement("template");
822
+ if (force) {
823
+ [...this.context.childNodes].forEach(this.context.removeChild.bind(this.context));
824
+ this.isAttached = false;
825
+ }
826
+ this.context.append(this.template.content.cloneNode(true));
827
+ if (this.noShow || this.isPermissionCheck && !WjePermissionsApi.isPermissionFulfilled(this.permission)) {
828
+ this.remove();
829
+ return Promise.resolve();
830
+ }
831
+ return this._resolveRender();
832
+ }
833
+ /**
834
+ * Renders the component's content.
835
+ */
836
+ async render() {
837
+ this.drawingStatus = this.drawingStatuses.DRAWING;
838
+ let _draw = this.draw(this.context, this.store, WjElementUtils.getAttributes(this));
839
+ if (_draw instanceof Promise) {
840
+ _draw = await _draw;
841
+ }
842
+ let rend = _draw;
843
+ let element;
844
+ if (rend instanceof HTMLElement || rend instanceof DocumentFragment) {
845
+ element = rend;
846
+ } else {
847
+ let inputTemplate = document.createElement("template");
848
+ inputTemplate.innerHTML = rend;
849
+ element = inputTemplate.content.cloneNode(true);
850
+ }
851
+ let rendered = element;
852
+ this.context.appendChild(rendered);
853
+ }
854
+ /**
855
+ * Sanitizes a given name by converting it from kebab-case to camelCase.
856
+ * @param {string} name The name in kebab-case format (e.g., "example-name").
857
+ * @returns {string} The sanitized name in camelCase format (e.g., "exampleName").
858
+ * @example
859
+ * // Returns 'exampleName'
860
+ * sanitizeName('example-name');
861
+ * @example
862
+ * // Returns 'myCustomComponent'
863
+ * sanitizeName('my-custom-component');
864
+ */
865
+ sanitizeName(name) {
866
+ let parts = name.split("-");
867
+ return [parts.shift(), ...parts.map((n) => n[0].toUpperCase() + n.slice(1))].join("");
868
+ }
869
+ /**
870
+ * Checks if a property on an object has a getter or setter method defined.
871
+ * @param {object} obj The object on which the property is defined.
872
+ * @param {string} property The name of the property to check.
873
+ * @returns {object} An object indicating the presence of getter and setter methods.
874
+ * @property {Function|null} hasGetter The getter function if it exists, otherwise `null`.
875
+ * @property {Function|null} hasSetter The setter function if it exists, otherwise `null`.
876
+ * @example
877
+ * const obj = {
878
+ * get name() { return 'value'; },
879
+ * set name(val) { console.log(val); }
880
+ * };
881
+ * // Returns { hasGetter: [Function: get name], hasSetter: [Function: set name] }
882
+ * checkGetterSetter(obj, 'name');
883
+ * @example
884
+ * const obj = { prop: 42 };
885
+ * // Returns { hasGetter: null, hasSetter: null }
886
+ * checkGetterSetter(obj, 'prop');
887
+ */
888
+ checkGetterSetter(obj, property) {
889
+ let descriptor = Object.getOwnPropertyDescriptor(obj, property);
890
+ if (descriptor) {
891
+ return {
892
+ hasGetter: typeof descriptor.get === "function" ? descriptor.get : null,
893
+ hasSetter: typeof descriptor.set === "function" ? descriptor.set : null
894
+ };
895
+ }
896
+ let proto = Object.getPrototypeOf(obj);
897
+ if (proto) {
898
+ return this.checkGetterSetter(proto, property);
899
+ }
900
+ return { hasGetter: null, hasSetter: null };
901
+ }
902
+ /**
903
+ * Sets up property accessors for the component's attributes.
904
+ */
905
+ setUpAccessors() {
906
+ let attrs = this.getAttributeNames();
907
+ attrs.forEach((name) => {
908
+ const sanitizedName = this.sanitizeName(name);
909
+ const { hasGetter, hasSetter } = this.checkGetterSetter(this, sanitizedName);
910
+ Object.defineProperty(this, sanitizedName, {
911
+ set: hasSetter ?? ((value) => this.setAttribute(name, value)),
912
+ get: hasGetter ?? (() => this.getAttribute(name))
913
+ });
914
+ });
915
+ }
916
+ /**
917
+ * Resolves the rendering process of the component.
918
+ * @returns A promise that resolves when rendering is complete.
919
+ * @private
920
+ */
921
+ _resolveRender() {
922
+ this.params = WjElementUtils.getAttributes(this);
923
+ return new Promise(async (resolve, reject) => {
924
+ var _a;
925
+ const __beforeDraw = this.beforeDraw(this.context, this.store, WjElementUtils.getAttributes(this));
926
+ if (__beforeDraw instanceof Promise) {
927
+ await __beforeDraw;
928
+ }
929
+ await this.render();
930
+ const __afterDraw = (_a = this.afterDraw) == null ? void 0 : _a.call(this, this.context, this.store, WjElementUtils.getAttributes(this));
931
+ if (__afterDraw instanceof Promise) {
932
+ await __afterDraw;
933
+ }
934
+ this.finisPromise();
935
+ this.rendering = false;
936
+ this.isAttached = true;
937
+ if (this.removeClassAfterConnect) {
938
+ this.classList.remove(...this.removeClassAfterConnect);
939
+ }
940
+ this.drawingStatus = this.drawingStatuses.DONE;
941
+ resolve();
942
+ }).catch((e) => {
943
+ console.log(e);
944
+ });
945
+ }
946
+ };
947
+ /**
948
+ * Processes and combines two templates into one.
949
+ * @param pTemplate The primary template.
950
+ * @param inputTemplate The secondary template.
951
+ * @returns The combined template.
952
+ */
953
+ __publicField(_WJElement, "processTemplates", (pTemplate, inputTemplate) => {
954
+ const newTemplate = document.createElement("template");
955
+ newTemplate.innerHTML = [inputTemplate.innerHTML, (pTemplate == null ? void 0 : pTemplate.innerHTML) || ""].join("");
956
+ return newTemplate;
957
+ });
958
+ let WJElement = _WJElement;
959
+ let __esModule = "true";
960
+ export {
961
+ WjElementUtils,
962
+ WjePermissionsApi,
963
+ __esModule,
964
+ WJElement as default,
965
+ event
966
+ };
967
+ //# sourceMappingURL=wje-element.js.map