@3t-transform/threeteeui 1.9.56 → 1.9.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/dist/cjs/{index-992a9fb3.js → index-ec367fa3.js} +28 -2
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/{tttx-action-dropdown_1_9_56.cjs.entry.js → tttx-action-dropdown_1_9_58.cjs.entry.js} +3 -3
  4. package/dist/cjs/{tttx-button_1_9_56.cjs.entry.js → tttx-button_1_9_58.cjs.entry.js} +3 -3
  5. package/dist/cjs/{tttx-checkbox-group-caption_1_9_56.cjs.entry.js → tttx-checkbox-group-caption_1_9_58.cjs.entry.js} +2 -2
  6. package/dist/cjs/{tttx-checkbox-group-heading_1_9_56.cjs.entry.js → tttx-checkbox-group-heading_1_9_58.cjs.entry.js} +2 -2
  7. package/dist/cjs/{tttx-checkbox-group_1_9_56.cjs.entry.js → tttx-checkbox-group_1_9_58.cjs.entry.js} +2 -2
  8. package/dist/cjs/{tttx-checkbox_1_9_56.cjs.entry.js → tttx-checkbox_1_9_58.cjs.entry.js} +3 -3
  9. package/dist/cjs/{tttx-comments_1_9_56.cjs.entry.js → tttx-comments_1_9_58.cjs.entry.js} +3 -3
  10. package/dist/cjs/{tttx-data-pattern_1_9_56.cjs.entry.js → tttx-data-pattern_1_9_58.cjs.entry.js} +6 -6
  11. package/dist/cjs/{tttx-datacard_1_9_56.cjs.entry.js → tttx-datacard_1_9_58.cjs.entry.js} +5 -5
  12. package/dist/cjs/tttx-date-range-picker.cjs.entry.js +45 -41
  13. package/dist/cjs/{tttx-dialog-box_1_9_56.cjs.entry.js → tttx-dialog-box_1_9_58.cjs.entry.js} +4 -4
  14. package/dist/cjs/{tttx-dialog_1_9_56.cjs.entry.js → tttx-dialog_1_9_58.cjs.entry.js} +3 -3
  15. package/dist/cjs/{tttx-expander_1_9_56.cjs.entry.js → tttx-expander_1_9_58.cjs.entry.js} +3 -3
  16. package/dist/cjs/{tttx-filter_1_9_56_4.cjs.entry.js → tttx-filter_1_9_58_4.cjs.entry.js} +10 -10
  17. package/dist/cjs/{tttx-form_1_9_56.cjs.entry.js → tttx-form_1_9_58.cjs.entry.js} +3 -3
  18. package/dist/cjs/{tttx-graph_1_9_56.cjs.entry.js → tttx-graph_1_9_58.cjs.entry.js} +2 -2
  19. package/dist/cjs/{tttx-icon_1_9_56.cjs.entry.js → tttx-icon_1_9_58.cjs.entry.js} +2 -2
  20. package/dist/cjs/{tttx-keyvalue-block_1_9_56.cjs.entry.js → tttx-keyvalue-block_1_9_58.cjs.entry.js} +2 -2
  21. package/dist/cjs/{tttx-loading-spinner_1_9_56_3.cjs.entry.js → tttx-loading-spinner_1_9_58_3.cjs.entry.js} +7 -7
  22. package/dist/cjs/{tttx-multiselect-box_1_9_56.cjs.entry.js → tttx-multiselect-box_1_9_58.cjs.entry.js} +8 -8
  23. package/dist/cjs/{tttx-percentage-bar_1_9_56.cjs.entry.js → tttx-percentage-bar_1_9_58.cjs.entry.js} +3 -3
  24. package/dist/cjs/{tttx-qrcode_1_9_56.cjs.entry.js → tttx-qrcode_1_9_58.cjs.entry.js} +2 -2
  25. package/dist/cjs/{tttx-select-box_1_9_56.cjs.entry.js → tttx-select-box_1_9_58.cjs.entry.js} +7 -7
  26. package/dist/cjs/{tttx-skeleton_loader_1_9_56.cjs.entry.js → tttx-skeleton_loader_1_9_58.cjs.entry.js} +2 -2
  27. package/dist/cjs/{tttx-table_1_9_56.cjs.entry.js → tttx-table_1_9_58.cjs.entry.js} +2 -2
  28. package/dist/cjs/{tttx-tabs_1_9_56.cjs.entry.js → tttx-tabs_1_9_58.cjs.entry.js} +5 -5
  29. package/dist/cjs/{tttx-textarea_1_9_56.cjs.entry.js → tttx-textarea_1_9_58.cjs.entry.js} +3 -3
  30. package/dist/cjs/{tttx-toggle_1_9_56.cjs.entry.js → tttx-toggle_1_9_58.cjs.entry.js} +2 -2
  31. package/dist/cjs/{tttx-tree-view_1_9_56.cjs.entry.js → tttx-tree-view_1_9_58.cjs.entry.js} +93 -19
  32. package/dist/cjs/tttx.cjs.js +2 -2
  33. package/dist/collection/assets/img/drag-icon.svg +3 -0
  34. package/dist/collection/components/assets/drag-icon.svg +3 -0
  35. package/dist/collection/components/atoms/tttx-button/tttx-button.js +2 -2
  36. package/dist/collection/components/atoms/tttx-button/tttx-button.stories.js +24 -24
  37. package/dist/collection/components/atoms/tttx-checkbox/tttx-checkbox.js +2 -2
  38. package/dist/collection/components/atoms/tttx-checkbox/tttx-checkbox.stories.js +1 -1
  39. package/dist/collection/components/atoms/tttx-datacard/tttx-datacard.js +4 -4
  40. package/dist/collection/components/atoms/tttx-datacard/tttx-datacard.stories.js +10 -10
  41. package/dist/collection/components/atoms/tttx-icon/tttx-icon.js +1 -1
  42. package/dist/collection/components/atoms/tttx-icon/tttx-icon.stories.js +1 -1
  43. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.js +1 -1
  44. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.js +6 -6
  45. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.js +1 -1
  46. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.js +2 -2
  47. package/dist/collection/components/atoms/tttx-percentage-bar/tttx-percentage-bar.js +1 -1
  48. package/dist/collection/components/atoms/tttx-percentage-bar/tttx-percentage-bar.stories.js +5 -5
  49. package/dist/collection/components/atoms/tttx-qrcode/tttx-qrcode.js +1 -1
  50. package/dist/collection/components/atoms/tttx-qrcode/tttx-qrcode.stories.js +1 -1
  51. package/dist/collection/components/atoms/tttx-skeleton-loader/tttx-skeleton-loader.js +1 -1
  52. package/dist/collection/components/atoms/tttx-tag/tttx-tag.js +2 -2
  53. package/dist/collection/components/atoms/tttx-tag/tttx-tag.stories.js +6 -6
  54. package/dist/collection/components/atoms/tttx-toggle/tttx-toggle.js +1 -1
  55. package/dist/collection/components/atoms/tttx-toggle/tttx-toggle.stories.js +2 -2
  56. package/dist/collection/components/domsanitiser.options.js +14 -0
  57. package/dist/collection/components/molecules/tttx-action-dropdown/tttx-action-dropdown.js +2 -2
  58. package/dist/collection/components/molecules/tttx-action-dropdown/tttx-action-dropdown.stories.js +1 -1
  59. package/dist/collection/components/molecules/tttx-checkbox-group/components/tttx-checkbox-group-caption.js +1 -1
  60. package/dist/collection/components/molecules/tttx-checkbox-group/components/tttx-checkbox-group-heading.js +1 -1
  61. package/dist/collection/components/molecules/tttx-checkbox-group/tttx-checkbox-group.js +1 -1
  62. package/dist/collection/components/molecules/tttx-checkbox-group/tttx-checkbox-group.stories.js +10 -10
  63. package/dist/collection/components/molecules/tttx-comments/tttx-comments.js +2 -2
  64. package/dist/collection/components/molecules/tttx-comments/tttx-comments.stories.js +2 -2
  65. package/dist/collection/components/molecules/tttx-date-range-picker/tttx-date-range-picker.css +53 -4
  66. package/dist/collection/components/molecules/tttx-date-range-picker/tttx-date-range-picker.js +48 -45
  67. package/dist/collection/components/molecules/tttx-date-range-picker/tttx-date-range-picker.stories.js +1 -1
  68. package/dist/collection/components/molecules/tttx-dialog/tttx-dialog.js +2 -2
  69. package/dist/collection/components/molecules/tttx-dialog/tttx-dialog.stories.js +6 -6
  70. package/dist/collection/components/molecules/tttx-dialog-box/tttx-dialog-box.js +3 -3
  71. package/dist/collection/components/molecules/tttx-dialog-box/tttx-dialog-box.stories.js +24 -24
  72. package/dist/collection/components/molecules/tttx-expander/tttx-expander.js +2 -2
  73. package/dist/collection/components/molecules/tttx-expander/tttx-expander.stories.js +9 -9
  74. package/dist/collection/components/molecules/tttx-filter/tttx-filter.js +3 -3
  75. package/dist/collection/components/molecules/tttx-filter/tttx-filter.stories.js +2 -2
  76. package/dist/collection/components/molecules/tttx-form/tttx-form.js +2 -2
  77. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +8 -8
  78. package/dist/collection/components/molecules/tttx-graph/tttx-graph.js +1 -1
  79. package/dist/collection/components/molecules/tttx-graph/tttx-graph.stories.js +1 -1
  80. package/dist/collection/components/molecules/tttx-list/tttx-list.js +3 -3
  81. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +47 -47
  82. package/dist/collection/components/molecules/tttx-multiselect-box/tttx-multiselect-box.js +7 -7
  83. package/dist/collection/components/molecules/tttx-multiselect-box/tttx-multiselect-box.stories.js +37 -37
  84. package/dist/collection/components/molecules/tttx-select-box/tttx-select-box.js +6 -6
  85. package/dist/collection/components/molecules/tttx-select-box/tttx-select-box.stories.js +22 -22
  86. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.js +2 -2
  87. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.stories.js +1 -1
  88. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.js +4 -4
  89. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.js +1 -1
  90. package/dist/collection/components/molecules/tttx-table/tttx-table.js +1 -1
  91. package/dist/collection/components/molecules/tttx-table/tttx-table.stories.js +6 -6
  92. package/dist/collection/components/molecules/tttx-tabs/tttx-tabs.js +3 -3
  93. package/dist/collection/components/molecules/tttx-tabs/tttx-tabs.stories.js +4 -4
  94. package/dist/collection/components/molecules/tttx-textarea/tttx-textarea.js +3 -3
  95. package/dist/collection/components/molecules/tttx-textarea/tttx-textarea.stories.js +1 -1
  96. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.js +1 -1
  97. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.stories.js +37 -37
  98. package/dist/collection/components/molecules/tttx-tree-view/tttx-tree-view.css +9 -0
  99. package/dist/collection/components/molecules/tttx-tree-view/tttx-tree-view.js +111 -18
  100. package/dist/collection/components/molecules/tttx-tree-view/tttx-tree-view.stories.js +35 -532
  101. package/dist/collection/components/organisms/tttx-data-pattern/tttx-data-pattern.js +5 -5
  102. package/dist/collection/components/organisms/tttx-data-pattern/tttx-data-pattern.stories.js +5 -5
  103. package/dist/components/index.d.ts +33 -33
  104. package/dist/components/index.js +33 -33
  105. package/dist/components/tttx-action-dropdown_1_9_58.d.ts +11 -0
  106. package/dist/components/{tttx-action-dropdown_1_9_56.js → tttx-action-dropdown_1_9_58.js} +7 -7
  107. package/dist/components/tttx-button.js +5 -5
  108. package/dist/components/{tttx-dialog_1_9_56.d.ts → tttx-button_1_9_58.d.ts} +4 -4
  109. package/dist/components/{tttx-button_1_9_56.js → tttx-button_1_9_58.js} +2 -2
  110. package/dist/components/tttx-checkbox-group-caption_1_9_58.d.ts +11 -0
  111. package/dist/components/{tttx-checkbox-group-caption_1_9_56.js → tttx-checkbox-group-caption_1_9_58.js} +5 -5
  112. package/dist/components/tttx-checkbox-group-heading_1_9_58.d.ts +11 -0
  113. package/dist/components/{tttx-checkbox-group-heading_1_9_56.js → tttx-checkbox-group-heading_1_9_58.js} +5 -5
  114. package/dist/components/tttx-checkbox-group_1_9_58.d.ts +11 -0
  115. package/dist/components/{tttx-checkbox-group_1_9_56.js → tttx-checkbox-group_1_9_58.js} +5 -5
  116. package/dist/components/{tttx-comments_1_9_56.d.ts → tttx-checkbox_1_9_58.d.ts} +4 -4
  117. package/dist/components/{tttx-checkbox_1_9_56.js → tttx-checkbox_1_9_58.js} +7 -7
  118. package/dist/components/{tttx-datacard_1_9_56.d.ts → tttx-comments_1_9_58.d.ts} +4 -4
  119. package/dist/components/{tttx-comments_1_9_56.js → tttx-comments_1_9_58.js} +7 -7
  120. package/dist/components/tttx-data-pattern_1_9_58.d.ts +11 -0
  121. package/dist/components/{tttx-data-pattern_1_9_56.js → tttx-data-pattern_1_9_58.js} +16 -16
  122. package/dist/components/{tttx-checkbox_1_9_56.d.ts → tttx-datacard_1_9_58.d.ts} +4 -4
  123. package/dist/components/{tttx-datacard_1_9_56.js → tttx-datacard_1_9_58.js} +10 -10
  124. package/dist/components/tttx-date-range-picker.js +50 -47
  125. package/dist/components/tttx-dialog-box_1_9_58.d.ts +11 -0
  126. package/dist/components/{tttx-dialog-box_1_9_56.js → tttx-dialog-box_1_9_58.js} +9 -9
  127. package/dist/components/{tttx-button_1_9_56.d.ts → tttx-dialog_1_9_58.d.ts} +4 -4
  128. package/dist/components/{tttx-dialog_1_9_56.js → tttx-dialog_1_9_58.js} +8 -8
  129. package/dist/components/tttx-expander_1_9_58.d.ts +11 -0
  130. package/dist/components/{tttx-expander_1_9_56.js → tttx-expander_1_9_58.js} +7 -7
  131. package/dist/components/tttx-filter.js +6 -6
  132. package/dist/components/{tttx-filter_1_9_56.d.ts → tttx-filter_1_9_58.d.ts} +4 -4
  133. package/dist/components/{tttx-filter_1_9_56.js → tttx-filter_1_9_58.js} +2 -2
  134. package/dist/components/{tttx-tabs_1_9_56.d.ts → tttx-form_1_9_58.d.ts} +4 -4
  135. package/dist/components/{tttx-form_1_9_56.js → tttx-form_1_9_58.js} +11 -11
  136. package/dist/components/tttx-graph.js +3 -3
  137. package/dist/components/{tttx-graph_1_9_56.d.ts → tttx-graph_1_9_58.d.ts} +4 -4
  138. package/dist/components/{tttx-graph_1_9_56.js → tttx-graph_1_9_58.js} +2 -2
  139. package/dist/components/tttx-icon.js +3 -3
  140. package/dist/components/{tttx-icon_1_9_56.d.ts → tttx-icon_1_9_58.d.ts} +4 -4
  141. package/dist/components/{tttx-icon_1_9_56.js → tttx-icon_1_9_58.js} +2 -2
  142. package/dist/components/tttx-keyvalue-block_1_9_58.d.ts +11 -0
  143. package/dist/components/{tttx-keyvalue-block_1_9_56.js → tttx-keyvalue-block_1_9_58.js} +5 -5
  144. package/dist/components/tttx-list.js +6 -6
  145. package/dist/components/{tttx-list_1_9_56.d.ts → tttx-list_1_9_58.d.ts} +4 -4
  146. package/dist/components/{tttx-list_1_9_56.js → tttx-list_1_9_58.js} +2 -2
  147. package/dist/components/tttx-loading-spinner.js +3 -3
  148. package/dist/components/tttx-loading-spinner_1_9_58.d.ts +11 -0
  149. package/dist/components/{tttx-loading-spinner_1_9_56.js → tttx-loading-spinner_1_9_58.js} +2 -2
  150. package/dist/components/tttx-multiselect-box_1_9_58.d.ts +11 -0
  151. package/dist/components/{tttx-multiselect-box_1_9_56.js → tttx-multiselect-box_1_9_58.js} +16 -16
  152. package/dist/components/tttx-percentage-bar_1_9_58.d.ts +11 -0
  153. package/dist/components/{tttx-percentage-bar_1_9_56.js → tttx-percentage-bar_1_9_58.js} +6 -6
  154. package/dist/components/{tttx-qrcode_1_9_56.d.ts → tttx-qrcode_1_9_58.d.ts} +4 -4
  155. package/dist/components/{tttx-qrcode_1_9_56.js → tttx-qrcode_1_9_58.js} +5 -5
  156. package/dist/components/tttx-select-box.js +12 -12
  157. package/dist/components/tttx-select-box_1_9_58.d.ts +11 -0
  158. package/dist/components/{tttx-select-box_1_9_56.js → tttx-select-box_1_9_58.js} +2 -2
  159. package/dist/components/tttx-skeleton_loader_1_9_58.d.ts +11 -0
  160. package/dist/components/{tttx-skeleton_loader_1_9_56.js → tttx-skeleton_loader_1_9_58.js} +5 -5
  161. package/dist/components/tttx-sorter.js +5 -5
  162. package/dist/components/tttx-sorter_1_9_58.d.ts +11 -0
  163. package/dist/components/{tttx-sorter_1_9_56.js → tttx-sorter_1_9_58.js} +2 -2
  164. package/dist/components/tttx-standalone-input.js +6 -6
  165. package/dist/components/tttx-standalone-input_1_9_58.d.ts +11 -0
  166. package/dist/components/{tttx-standalone-input_1_9_56.js → tttx-standalone-input_1_9_58.js} +2 -2
  167. package/dist/components/{tttx-table_1_9_56.d.ts → tttx-table_1_9_58.d.ts} +4 -4
  168. package/dist/components/{tttx-table_1_9_56.js → tttx-table_1_9_58.js} +5 -5
  169. package/dist/components/{tttx-form_1_9_56.d.ts → tttx-tabs_1_9_58.d.ts} +4 -4
  170. package/dist/components/{tttx-tabs_1_9_56.js → tttx-tabs_1_9_58.js} +9 -9
  171. package/dist/components/tttx-tag.js +5 -5
  172. package/dist/components/{tttx-tag_1_9_56.d.ts → tttx-tag_1_9_58.d.ts} +4 -4
  173. package/dist/components/{tttx-tag_1_9_56.js → tttx-tag_1_9_58.js} +2 -2
  174. package/dist/components/tttx-textarea_1_9_58.d.ts +11 -0
  175. package/dist/components/{tttx-textarea_1_9_56.js → tttx-textarea_1_9_58.js} +6 -6
  176. package/dist/components/tttx-toggle_1_9_58.d.ts +11 -0
  177. package/dist/components/{tttx-toggle_1_9_56.js → tttx-toggle_1_9_58.js} +5 -5
  178. package/dist/components/tttx-toolbar.js +3 -3
  179. package/dist/components/tttx-toolbar_1_9_58.d.ts +11 -0
  180. package/dist/components/{tttx-toolbar_1_9_56.js → tttx-toolbar_1_9_58.js} +2 -2
  181. package/dist/components/tttx-tree-view_1_9_58.d.ts +11 -0
  182. package/dist/components/{tttx-tree-view_1_9_56.js → tttx-tree-view_1_9_58.js} +99 -25
  183. package/dist/esm/{index-b11965d8.js → index-3d473f8b.js} +28 -3
  184. package/dist/esm/loader.js +3 -3
  185. package/dist/esm/{tttx-action-dropdown_1_9_56.entry.js → tttx-action-dropdown_1_9_58.entry.js} +3 -3
  186. package/dist/esm/{tttx-button_1_9_56.entry.js → tttx-button_1_9_58.entry.js} +3 -3
  187. package/dist/esm/{tttx-checkbox-group-caption_1_9_56.entry.js → tttx-checkbox-group-caption_1_9_58.entry.js} +2 -2
  188. package/dist/esm/{tttx-checkbox-group-heading_1_9_56.entry.js → tttx-checkbox-group-heading_1_9_58.entry.js} +2 -2
  189. package/dist/esm/{tttx-checkbox-group_1_9_56.entry.js → tttx-checkbox-group_1_9_58.entry.js} +2 -2
  190. package/dist/esm/{tttx-checkbox_1_9_56.entry.js → tttx-checkbox_1_9_58.entry.js} +3 -3
  191. package/dist/esm/{tttx-comments_1_9_56.entry.js → tttx-comments_1_9_58.entry.js} +3 -3
  192. package/dist/esm/{tttx-data-pattern_1_9_56.entry.js → tttx-data-pattern_1_9_58.entry.js} +6 -6
  193. package/dist/esm/{tttx-datacard_1_9_56.entry.js → tttx-datacard_1_9_58.entry.js} +5 -5
  194. package/dist/esm/tttx-date-range-picker.entry.js +45 -41
  195. package/dist/esm/{tttx-dialog-box_1_9_56.entry.js → tttx-dialog-box_1_9_58.entry.js} +4 -4
  196. package/dist/esm/{tttx-dialog_1_9_56.entry.js → tttx-dialog_1_9_58.entry.js} +3 -3
  197. package/dist/esm/{tttx-expander_1_9_56.entry.js → tttx-expander_1_9_58.entry.js} +3 -3
  198. package/dist/esm/{tttx-filter_1_9_56_4.entry.js → tttx-filter_1_9_58_4.entry.js} +7 -7
  199. package/dist/esm/{tttx-form_1_9_56.entry.js → tttx-form_1_9_58.entry.js} +3 -3
  200. package/dist/esm/{tttx-graph_1_9_56.entry.js → tttx-graph_1_9_58.entry.js} +2 -2
  201. package/dist/esm/{tttx-icon_1_9_56.entry.js → tttx-icon_1_9_58.entry.js} +2 -2
  202. package/dist/esm/{tttx-keyvalue-block_1_9_56.entry.js → tttx-keyvalue-block_1_9_58.entry.js} +2 -2
  203. package/dist/esm/{tttx-loading-spinner_1_9_56_3.entry.js → tttx-loading-spinner_1_9_58_3.entry.js} +5 -5
  204. package/dist/esm/{tttx-multiselect-box_1_9_56.entry.js → tttx-multiselect-box_1_9_58.entry.js} +8 -8
  205. package/dist/esm/{tttx-percentage-bar_1_9_56.entry.js → tttx-percentage-bar_1_9_58.entry.js} +3 -3
  206. package/dist/esm/{tttx-qrcode_1_9_56.entry.js → tttx-qrcode_1_9_58.entry.js} +2 -2
  207. package/dist/esm/{tttx-select-box_1_9_56.entry.js → tttx-select-box_1_9_58.entry.js} +7 -7
  208. package/dist/esm/{tttx-skeleton_loader_1_9_56.entry.js → tttx-skeleton_loader_1_9_58.entry.js} +2 -2
  209. package/dist/esm/{tttx-table_1_9_56.entry.js → tttx-table_1_9_58.entry.js} +2 -2
  210. package/dist/esm/{tttx-tabs_1_9_56.entry.js → tttx-tabs_1_9_58.entry.js} +5 -5
  211. package/dist/esm/{tttx-textarea_1_9_56.entry.js → tttx-textarea_1_9_58.entry.js} +3 -3
  212. package/dist/esm/{tttx-toggle_1_9_56.entry.js → tttx-toggle_1_9_58.entry.js} +2 -2
  213. package/dist/esm/tttx-tree-view_1_9_58.entry.js +203 -0
  214. package/dist/esm/tttx.js +3 -3
  215. package/dist/tttx/{p-b077aa45.entry.js → p-079da884.entry.js} +1 -1
  216. package/dist/tttx/{p-e8b9acb8.entry.js → p-13d3d63c.entry.js} +1 -1
  217. package/dist/tttx/{p-e23f0843.entry.js → p-1814eb61.entry.js} +1 -1
  218. package/dist/tttx/{p-80c3103a.entry.js → p-19294325.entry.js} +1 -1
  219. package/dist/tttx/{p-22150380.entry.js → p-218f3309.entry.js} +1 -1
  220. package/dist/tttx/{p-652aaf6c.entry.js → p-24eef142.entry.js} +1 -1
  221. package/dist/tttx/{p-e5f97b02.entry.js → p-2636cba4.entry.js} +1 -1
  222. package/dist/tttx/p-2b0fc913.js +2 -0
  223. package/dist/tttx/{p-222b7f89.entry.js → p-477b66de.entry.js} +1 -1
  224. package/dist/tttx/{p-1d8210d3.entry.js → p-54060e46.entry.js} +1 -1
  225. package/dist/tttx/{p-7ff42357.entry.js → p-5f35edd8.entry.js} +1 -1
  226. package/dist/tttx/{p-49bae603.entry.js → p-61af5028.entry.js} +1 -1
  227. package/dist/tttx/{p-4560cb86.entry.js → p-67f75171.entry.js} +1 -1
  228. package/dist/tttx/{p-e4b36835.entry.js → p-7bfa4e1e.entry.js} +1 -1
  229. package/dist/tttx/p-7c7e8951.entry.js +1 -0
  230. package/dist/tttx/{p-3f2f039d.entry.js → p-972b7449.entry.js} +1 -1
  231. package/dist/tttx/{p-21bb99dd.entry.js → p-a1ba99fb.entry.js} +1 -1
  232. package/dist/tttx/{p-61df30c5.entry.js → p-a474dc05.entry.js} +1 -1
  233. package/dist/tttx/{p-98bee16c.entry.js → p-a800aa5d.entry.js} +1 -1
  234. package/dist/tttx/{p-555885cc.entry.js → p-acb9e007.entry.js} +1 -1
  235. package/dist/tttx/{p-9262d276.entry.js → p-b44ddcb7.entry.js} +1 -1
  236. package/dist/tttx/{p-65da8c2a.entry.js → p-b4b5e1e1.entry.js} +1 -1
  237. package/dist/tttx/{p-354fc8d4.entry.js → p-bbecd0d9.entry.js} +2 -2
  238. package/dist/tttx/{p-6343251b.entry.js → p-bc8c1d08.entry.js} +1 -1
  239. package/dist/tttx/{p-9426547c.entry.js → p-cb3b393b.entry.js} +1 -1
  240. package/dist/tttx/p-cbae4bf1.entry.js +1 -0
  241. package/dist/tttx/{p-c7ff1887.entry.js → p-d62c8ed2.entry.js} +1 -1
  242. package/dist/tttx/{p-8aeb43df.entry.js → p-e84965f0.entry.js} +1 -1
  243. package/dist/tttx/{p-03c3c654.entry.js → p-edf27c73.entry.js} +1 -1
  244. package/dist/tttx/{p-71372d3a.entry.js → p-f1e945ba.entry.js} +1 -1
  245. package/dist/tttx/tttx.esm.js +1 -1
  246. package/dist/types/components/domsanitiser.options.d.ts +10 -0
  247. package/dist/types/components/molecules/tttx-date-range-picker/tttx-date-range-picker.d.ts +6 -7
  248. package/dist/types/components/molecules/tttx-select-box/tttx-select-box.d.ts +1 -1
  249. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.d.ts +2 -2
  250. package/dist/types/components/molecules/tttx-textarea/tttx-textarea.d.ts +2 -2
  251. package/dist/types/components/molecules/tttx-tree-view/helper/helper.d.ts +1 -0
  252. package/dist/types/components/molecules/tttx-tree-view/tttx-tree-view.d.ts +14 -2
  253. package/dist/types/components.d.ts +396 -395
  254. package/package.json +2 -2
  255. package/dist/components/tttx-action-dropdown_1_9_56.d.ts +0 -11
  256. package/dist/components/tttx-checkbox-group-caption_1_9_56.d.ts +0 -11
  257. package/dist/components/tttx-checkbox-group-heading_1_9_56.d.ts +0 -11
  258. package/dist/components/tttx-checkbox-group_1_9_56.d.ts +0 -11
  259. package/dist/components/tttx-data-pattern_1_9_56.d.ts +0 -11
  260. package/dist/components/tttx-dialog-box_1_9_56.d.ts +0 -11
  261. package/dist/components/tttx-expander_1_9_56.d.ts +0 -11
  262. package/dist/components/tttx-keyvalue-block_1_9_56.d.ts +0 -11
  263. package/dist/components/tttx-loading-spinner_1_9_56.d.ts +0 -11
  264. package/dist/components/tttx-multiselect-box_1_9_56.d.ts +0 -11
  265. package/dist/components/tttx-percentage-bar_1_9_56.d.ts +0 -11
  266. package/dist/components/tttx-select-box_1_9_56.d.ts +0 -11
  267. package/dist/components/tttx-skeleton_loader_1_9_56.d.ts +0 -11
  268. package/dist/components/tttx-sorter_1_9_56.d.ts +0 -11
  269. package/dist/components/tttx-standalone-input_1_9_56.d.ts +0 -11
  270. package/dist/components/tttx-textarea_1_9_56.d.ts +0 -11
  271. package/dist/components/tttx-toggle_1_9_56.d.ts +0 -11
  272. package/dist/components/tttx-toolbar_1_9_56.d.ts +0 -11
  273. package/dist/components/tttx-tree-view_1_9_56.d.ts +0 -11
  274. package/dist/esm/tttx-tree-view_1_9_56.entry.js +0 -129
  275. package/dist/tttx/p-65bb4035.js +0 -2
  276. package/dist/tttx/p-9896a083.entry.js +0 -1
  277. package/dist/tttx/p-b2a7e078.entry.js +0 -1
@@ -51,7 +51,7 @@ export class TttxPercentageBar {
51
51
  render() {
52
52
  return (h(Host, null, h("div", { class: "progress" }, h("div", { class: "bar", style: { 'background-color': this.getColour(), 'width': `${this.getWidth()}%` }, role: "progressbar", "aria-valuemin": this._min, "aria-valuemax": "100", "aria-valuenow": this._percentage, "aria-labelledby": this.labelid }))));
53
53
  }
54
- static get is() { return "tttx-percentage-bar_1_9_56"; }
54
+ static get is() { return "tttx-percentage-bar_1_9_58"; }
55
55
  static get encapsulation() { return "scoped"; }
56
56
  static get originalStyleUrls() {
57
57
  return {
@@ -2,7 +2,7 @@ export default {
2
2
  title: 'atoms/Percentage Bar',
3
3
  component: 'tttx-percentage-bar',
4
4
  };
5
- const TemplatePercentageBar = ({ percentage, thresholds }) => `<tttx-percentage-bar_1_9_56 percentage='${percentage}' thresholds='${JSON.stringify(thresholds)}'></tttx-percentage-bar_1_9_56>`;
5
+ const TemplatePercentageBar = ({ percentage, thresholds }) => `<tttx-percentage-bar_1_9_58 percentage='${percentage}' thresholds='${JSON.stringify(thresholds)}'></tttx-percentage-bar_1_9_58>`;
6
6
  export const PercentageBar = TemplatePercentageBar.bind({});
7
7
  PercentageBar.args = {
8
8
  percentage: 20,
@@ -21,13 +21,13 @@ PercentageBar.args = {
21
21
  },
22
22
  ],
23
23
  };
24
- const TemplatePercentageBarWithoutThresholds = ({ percentage, color }) => `<tttx-percentage-bar_1_9_56 percentage='${percentage}' color='${color}'></tttx-percentage-bar_1_9_56>`;
24
+ const TemplatePercentageBarWithoutThresholds = ({ percentage, color }) => `<tttx-percentage-bar_1_9_58 percentage='${percentage}' color='${color}'></tttx-percentage-bar_1_9_58>`;
25
25
  export const PercentageBarWithoutThresholds = TemplatePercentageBarWithoutThresholds.bind({});
26
26
  PercentageBarWithoutThresholds.args = {
27
27
  percentage: 20,
28
28
  color: '#397a4c',
29
29
  };
30
- const TemplatePercentageBarWithoutMinimum = ({ percentage, color, min }) => `<tttx-percentage-bar_1_9_56 percentage='${percentage}' color='${color}' min='${min}'></tttx-percentage-bar_1_9_56>`;
30
+ const TemplatePercentageBarWithoutMinimum = ({ percentage, color, min }) => `<tttx-percentage-bar_1_9_58 percentage='${percentage}' color='${color}' min='${min}'></tttx-percentage-bar_1_9_58>`;
31
31
  export const PercentageBarWithoutMinimum = TemplatePercentageBarWithoutMinimum.bind({});
32
32
  PercentageBarWithoutMinimum.args = {
33
33
  percentage: 0,
@@ -37,7 +37,7 @@ PercentageBarWithoutMinimum.args = {
37
37
  const TemplatePercentageBarLabeled = ({ percentage, color, labelid }) => `
38
38
  <label id="someLabel">
39
39
  ${percentage}%
40
- <tttx-percentage-bar_1_9_56 style='width: 100px;' percentage='${percentage}' color='${color}' labelid='${labelid}'></tttx-percentage-bar_1_9_56>
40
+ <tttx-percentage-bar_1_9_58 style='width: 100px;' percentage='${percentage}' color='${color}' labelid='${labelid}'></tttx-percentage-bar_1_9_58>
41
41
  </label>
42
42
  `;
43
43
  export const PercentageBarLabeled = TemplatePercentageBarLabeled.bind({});
@@ -47,7 +47,7 @@ PercentageBarLabeled.args = {
47
47
  labelid: 'someLabel',
48
48
  };
49
49
  const TemplatePercentageBarLabeledInline = ({ percentage, color, labelid }) => `
50
- <label id="someLabel" style='display: flex;'>${percentage}%&emsp;<tttx-percentage-bar_1_9_56 style='width: 100px;' percentage='${percentage}' color='${color}' labelid='${labelid}'></tttx-percentage-bar_1_9_56>
50
+ <label id="someLabel" style='display: flex;'>${percentage}%&emsp;<tttx-percentage-bar_1_9_58 style='width: 100px;' percentage='${percentage}' color='${color}' labelid='${labelid}'></tttx-percentage-bar_1_9_58>
51
51
  </label>
52
52
  `;
53
53
  export const PercentageBarLabeledInline = TemplatePercentageBarLabeledInline.bind({});
@@ -25,7 +25,7 @@ export class TttxQrCode {
25
25
  render() {
26
26
  return h("div", { id: "qrcode" });
27
27
  }
28
- static get is() { return "tttx-qrcode_1_9_56"; }
28
+ static get is() { return "tttx-qrcode_1_9_58"; }
29
29
  static get encapsulation() { return "shadow"; }
30
30
  static get originalStyleUrls() {
31
31
  return {
@@ -14,7 +14,7 @@ export default {
14
14
  export const basicQRCode = args => {
15
15
  const url = args.url;
16
16
  const size = args.size;
17
- return `<tttx-qrcode_1_9_56 link='${url}' size='${size}'></tttx-qrcode_1_9_56>`;
17
+ return `<tttx-qrcode_1_9_58 link='${url}' size='${size}'></tttx-qrcode_1_9_58>`;
18
18
  };
19
19
  basicQRCode.args = {
20
20
  url: 'https://example.com',
@@ -26,7 +26,7 @@ export class TttxSkeletonLoader {
26
26
  const skeletons = Array.from({ length: this.count });
27
27
  return (h(Host, null, h("div", { class: `skeleton-wrapper ${this.direction} ${this.customClass}`, style: { gap: this.gap, width: '100%' } }, skeletons.map((_, index) => (h("div", { key: index, class: `skeleton ${this.animation} ${this.variant}`, style: skeletonStyle }))))));
28
28
  }
29
- static get is() { return "tttx-skeleton_loader_1_9_56"; }
29
+ static get is() { return "tttx-skeleton_loader_1_9_58"; }
30
30
  static get encapsulation() { return "shadow"; }
31
31
  static get originalStyleUrls() {
32
32
  return {
@@ -11,9 +11,9 @@ export class TttxTag {
11
11
  }
12
12
  render() {
13
13
  return (h(Host, null, h("div", { class: "tag", style: { 'background-color': this.color, color: this.textColor } }, this.hasIcon &&
14
- h("tttx-icon_1_9_56", { role: "icon", class: "tag_icon", "aria-label": this.text, icon: this.icon, color: this.iconColor, size: this.iconSize }), h("span", null, this.text))));
14
+ h("tttx-icon_1_9_58", { role: "icon", class: "tag_icon", "aria-label": this.text, icon: this.icon, color: this.iconColor, size: this.iconSize }), h("span", null, this.text))));
15
15
  }
16
- static get is() { return "tttx-tag_1_9_56"; }
16
+ static get is() { return "tttx-tag_1_9_58"; }
17
17
  static get encapsulation() { return "shadow"; }
18
18
  static get originalStyleUrls() {
19
19
  return {
@@ -33,7 +33,7 @@ export default {
33
33
  },
34
34
  };
35
35
  const Template = ({ text, color, textColor, hasIcon, icon, iconColor, iconSize }) => {
36
- return `<tttx-tag_1_9_56 text="${text}" color="${color}" text-color="${textColor}" has-icon=${hasIcon} icon="${icon}" icon-color="${iconColor}" icon-size="${iconSize}"></tttx-tag_1_9_56>`;
36
+ return `<tttx-tag_1_9_58 text="${text}" color="${color}" text-color="${textColor}" has-icon=${hasIcon} icon="${icon}" icon-color="${iconColor}" icon-size="${iconSize}"></tttx-tag_1_9_58>`;
37
37
  };
38
38
  export const tag = Template.bind({});
39
39
  tag.args = {
@@ -46,18 +46,18 @@ tag.args = {
46
46
  };
47
47
  const tagTemplates = () => `
48
48
  <h2>Default</h2>
49
- <tttx-tag_1_9_56 text="Default" color="#d5d5d5" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_56>
49
+ <tttx-tag_1_9_58 text="Default" color="#d5d5d5" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_58>
50
50
  <hr />
51
51
  <h2>Critical</h2>
52
- <tttx-tag_1_9_56 text="Critical" color="#f2bebe" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_56>
52
+ <tttx-tag_1_9_58 text="Critical" color="#f2bebe" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_58>
53
53
  <hr />
54
54
  <h2>Warning</h2>
55
- <tttx-tag_1_9_56 text="Warning" color="#f9e1be" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_56>
55
+ <tttx-tag_1_9_58 text="Warning" color="#f9e1be" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_58>
56
56
  <hr />
57
57
  <h2>Success</h2>
58
- <tttx-tag_1_9_56 text="Success" color="#e4ebc9" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_56>
58
+ <tttx-tag_1_9_58 text="Success" color="#e4ebc9" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_58>
59
59
  <hr />
60
60
  <h2>Info</h2>
61
- <tttx-tag_1_9_56 text="Info" color="#c2daee" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_56>
61
+ <tttx-tag_1_9_58 text="Info" color="#c2daee" has-icon=true icon="check_circle" icon-color="#397A4C"></tttx-tag_1_9_58>
62
62
  `;
63
63
  export const tags = tagTemplates.bind({});
@@ -25,7 +25,7 @@ export class TttxToggle {
25
25
  }
26
26
  return (h("div", { id: 'toggle-switch' }, checkbox, h("div", { id: 'toggle-body' })));
27
27
  }
28
- static get is() { return "tttx-toggle_1_9_56"; }
28
+ static get is() { return "tttx-toggle_1_9_58"; }
29
29
  static get encapsulation() { return "shadow"; }
30
30
  static get originalStyleUrls() {
31
31
  return {
@@ -3,8 +3,8 @@ export default {
3
3
  component: 'tttx-toggle',
4
4
  };
5
5
  const DefaultStory = () => `
6
- <div><div>Off by default</div><tttx-toggle_1_9_56 id="off" title="Off by default"></tttx-toggle_1_9_56></div>
7
- <div><div>On by default</div><tttx-toggle_1_9_56 id="on" initialstate="true" title="True by default"></tttx-toggle_1_9_56></div>
6
+ <div><div>Off by default</div><tttx-toggle_1_9_58 id="off" title="Off by default"></tttx-toggle_1_9_58></div>
7
+ <div><div>On by default</div><tttx-toggle_1_9_58 id="on" initialstate="true" title="True by default"></tttx-toggle_1_9_58></div>
8
8
  <script>
9
9
  off.addEventListener('toggleSwitchEvent', (ev) => { console.log(ev) });
10
10
  on.addEventListener('toggleSwitchEvent', (ev) => { console.log(ev) });
@@ -0,0 +1,14 @@
1
+ function tagRegXp(tagName) {
2
+ return RegExp(/^tttx-/).exec(tagName);
3
+ }
4
+ function attributeNameCheck() {
5
+ return true;
6
+ }
7
+ const domSanitiserOptions = {
8
+ CUSTOM_ELEMENT_HANDLING: {
9
+ tagNameCheck: tagRegXp,
10
+ attributeNameCheck: attributeNameCheck,
11
+ allowCustomizedBuiltInElements: false, // customized built-ins are not allowed
12
+ },
13
+ };
14
+ export default domSanitiserOptions;
@@ -41,11 +41,11 @@ export class TttxActionDropdown {
41
41
  return;
42
42
  const actionKey = `action-dropdown__${this.actionKey}`;
43
43
  const chevronIcon = this.dropdownExpand ? 'keyboard_arrow_up' : 'keyboard_arrow_down';
44
- return (h(Host, { id: actionKey }, h("div", { tabindex: 0, class: `action-dropdown-container ${this.dropdownExpand ? '--expanded' : ''}` }, h("button", { class: "action-button", type: "button", onClick: this.onActionClick.bind(this) }, h("div", { class: "button-content" }, this.isIconVisible && (h("tttx-icon_1_9_56", { icon: this.icon, color: "black" })), h("span", { class: "action-text" }, this.selectedField)), h("div", { class: "dropdown-arrow" }, h("tttx-icon_1_9_56", { icon: chevronIcon, color: "black" }))), this.dropdownExpand && (h("div", { class: "dropdown-options-list" }, parsedFieldOptionsData.actionOptions.map(option => {
44
+ return (h(Host, { id: actionKey }, h("div", { tabindex: 0, class: `action-dropdown-container ${this.dropdownExpand ? '--expanded' : ''}` }, h("button", { class: "action-button", type: "button", onClick: this.onActionClick.bind(this) }, h("div", { class: "button-content" }, this.isIconVisible && (h("tttx-icon_1_9_58", { icon: this.icon, color: "black" })), h("span", { class: "action-text" }, this.selectedField)), h("div", { class: "dropdown-arrow" }, h("tttx-icon_1_9_58", { icon: chevronIcon, color: "black" }))), this.dropdownExpand && (h("div", { class: "dropdown-options-list" }, parsedFieldOptionsData.actionOptions.map(option => {
45
45
  return (h("div", { class: "dropdown-option", tabIndex: -1, onClick: this.onDropdownSelected.bind(this), key: option.optionLabel }, option.optionLabel));
46
46
  }))))));
47
47
  }
48
- static get is() { return "tttx-action-dropdown_1_9_56"; }
48
+ static get is() { return "tttx-action-dropdown_1_9_58"; }
49
49
  static get encapsulation() { return "shadow"; }
50
50
  static get originalStyleUrls() {
51
51
  return {
@@ -26,7 +26,7 @@ export default {
26
26
  const TemplateActionDropdown = ({ fieldOptionsData, actionKey, icon, isIconVisible }) => {
27
27
  return `
28
28
  <div style='width: 250px;'>
29
- <tttx-action-dropdown_1_9_56
29
+ <tttx-action-dropdown_1_9_58
30
30
  field-options-data='${JSON.stringify(fieldOptionsData)}'
31
31
  action-key='${actionKey}'
32
32
  icon='${icon}'
@@ -3,7 +3,7 @@ export class TttxCheckboxGroupCaption {
3
3
  render() {
4
4
  return (h(Host, null, h("div", { class: 'tttx-checkbox-group__caption' }, h("slot", null))));
5
5
  }
6
- static get is() { return "tttx-checkbox-group-caption_1_9_56"; }
6
+ static get is() { return "tttx-checkbox-group-caption_1_9_58"; }
7
7
  static get originalStyleUrls() {
8
8
  return {
9
9
  "$": ["../tttx-checkbox-group.scss"]
@@ -3,7 +3,7 @@ export class TttxCheckboxGroupHeading {
3
3
  render() {
4
4
  return (h(Host, null, h("div", { class: 'tttx-checkbox-group__heading' }, h("slot", null))));
5
5
  }
6
- static get is() { return "tttx-checkbox-group-heading_1_9_56"; }
6
+ static get is() { return "tttx-checkbox-group-heading_1_9_58"; }
7
7
  static get originalStyleUrls() {
8
8
  return {
9
9
  "$": ["../tttx-checkbox-group.scss"]
@@ -3,7 +3,7 @@ export class TttxCheckboxGroup {
3
3
  render() {
4
4
  return (h(Host, null, h("div", { class: 'tttx-checkbox-group' }, h("slot", null))));
5
5
  }
6
- static get is() { return "tttx-checkbox-group_1_9_56"; }
6
+ static get is() { return "tttx-checkbox-group_1_9_58"; }
7
7
  static get encapsulation() { return "shadow"; }
8
8
  static get originalStyleUrls() {
9
9
  return {
@@ -10,38 +10,38 @@ export default {
10
10
  };
11
11
  const CheckboxGroupTemplate = ({ heading, checkboxData, captionTop, captionBottom }) => {
12
12
  return `
13
- <tttx-checkbox-group_1_9_56 >
13
+ <tttx-checkbox-group_1_9_58 >
14
14
  ${heading ? `
15
- <tttx-checkbox-group-heading_1_9_56>
15
+ <tttx-checkbox-group-heading_1_9_58>
16
16
  ${heading}
17
- </tttx-checkbox-group-heading_1_9_56>
17
+ </tttx-checkbox-group-heading_1_9_58>
18
18
  ` : ''}
19
19
 
20
20
  ${captionTop ? `
21
- <tttx-checkbox-group-caption_1_9_56>
21
+ <tttx-checkbox-group-caption_1_9_58>
22
22
  ${captionTop}
23
- </tttx-checkbox-group-caption_1_9_56>
23
+ </tttx-checkbox-group-caption_1_9_58>
24
24
  ` : ''}
25
25
 
26
26
  ${checkboxData.map(checkboxInfo => {
27
27
  const { label, checked, inline, indeterminate } = checkboxInfo;
28
28
  return `
29
- <tttx-checkbox_1_9_56
29
+ <tttx-checkbox_1_9_58
30
30
  checkbox-id="checkbox"
31
31
  label="${label}"
32
32
  ${inline && 'inline'}
33
33
  ${indeterminate && 'indeterminate'}
34
34
  ${checked && 'checked'}
35
35
  >
36
- </tttx-checkbox_1_9_56> `;
36
+ </tttx-checkbox_1_9_58> `;
37
37
  }).join('')}
38
38
 
39
39
  ${captionBottom ? `
40
- <tttx-checkbox-group-caption_1_9_56>
40
+ <tttx-checkbox-group-caption_1_9_58>
41
41
  ${captionBottom}
42
- </tttx-checkbox-group-caption_1_9_56>
42
+ </tttx-checkbox-group-caption_1_9_58>
43
43
  ` : ''}
44
- </tttx-checkbox-group_1_9_56>
44
+ </tttx-checkbox-group_1_9_58>
45
45
  `;
46
46
  };
47
47
  export const singleCheckbox = CheckboxGroupTemplate.bind({});
@@ -152,9 +152,9 @@ export class TttxComments {
152
152
  this.requestCommentRemoval.emit(comment);
153
153
  }
154
154
  render() {
155
- return (h(Host, null, h("article", { id: "comment-container" }, (!Array.isArray(this._comments) || this._comments.length === 0) && (h("div", { class: "no-comments" }, h("tttx-icon_1_9_56", { class: 'mt-s', icon: "chat_bubble_outline", color: "grey" }), h("span", null, "No comments have been added"))), h("section", { id: "comment-bubbles-section" }, h("div", { id: "scroll-container", ref: el => this._scrollContainer = el }, this.renderCommentBubble())), h("section", { id: "input-section" }, !this.readonly && h("form", { onSubmit: this.onFormSubmit.bind(this) }, this.editingComment && (h("div", { class: "cancel-edit-container" }, h("span", { class: "cancel-edit-button clickable", onClick: this.onFinishEdit.bind(this) }, "x"))), h("fieldset", null, h("textarea", { ref: el => this.textInput = el, name: "commentText", required: true, maxlength: `${this.messageLimit}`, placeholder: this.placeholder, onInput: (e) => this.onCommentFieldChange(e), style: { '--textarea-max-height': `${this.inputBoxHeight}px` }, class: "comment-textarea", value: this.value, onBlur: this.handleBlur.bind(this) })), this.showError && (h("span", { class: 'errorBubble visible' }, h("span", { class: "material-symbols-rounded" }, "warning"), " ", `${this.messageLimit} character limit is reached.`)), h("fieldset", null, this.editingComment && (h("span", { class: 'editing-sub-text' }, "Editing comment")), !this.disableFile && (h("button", { id: "attach-file", class: "flex-right-align clickable", type: "button", value: "File", onClick: this.onFileUploadRequest.bind(this) }, h("tttx-icon_1_9_56", { color: "black", icon: "attach_file" }))), h("input", { class: (this.disableFile ? 'flex-right-align ' : '') + 'clickable', style: { width: 'fit-content' }, type: "submit", value: this._saveButtonText })))))));
155
+ return (h(Host, null, h("article", { id: "comment-container" }, (!Array.isArray(this._comments) || this._comments.length === 0) && (h("div", { class: "no-comments" }, h("tttx-icon_1_9_58", { class: 'mt-s', icon: "chat_bubble_outline", color: "grey" }), h("span", null, "No comments have been added"))), h("section", { id: "comment-bubbles-section" }, h("div", { id: "scroll-container", ref: el => this._scrollContainer = el }, this.renderCommentBubble())), h("section", { id: "input-section" }, !this.readonly && h("form", { onSubmit: this.onFormSubmit.bind(this) }, this.editingComment && (h("div", { class: "cancel-edit-container" }, h("span", { class: "cancel-edit-button clickable", onClick: this.onFinishEdit.bind(this) }, "x"))), h("fieldset", null, h("textarea", { ref: el => this.textInput = el, name: "commentText", required: true, maxlength: `${this.messageLimit}`, placeholder: this.placeholder, onInput: (e) => this.onCommentFieldChange(e), style: { '--textarea-max-height': `${this.inputBoxHeight}px` }, class: "comment-textarea", value: this.value, onBlur: this.handleBlur.bind(this) })), this.showError && (h("span", { class: 'errorBubble visible' }, h("span", { class: "material-symbols-rounded" }, "warning"), " ", `${this.messageLimit} character limit is reached.`)), h("fieldset", null, this.editingComment && (h("span", { class: 'editing-sub-text' }, "Editing comment")), !this.disableFile && (h("button", { id: "attach-file", class: "flex-right-align clickable", type: "button", value: "File", onClick: this.onFileUploadRequest.bind(this) }, h("tttx-icon_1_9_58", { color: "black", icon: "attach_file" }))), h("input", { class: (this.disableFile ? 'flex-right-align ' : '') + 'clickable', style: { width: 'fit-content' }, type: "submit", value: this._saveButtonText })))))));
156
156
  }
157
- static get is() { return "tttx-comments_1_9_56"; }
157
+ static get is() { return "tttx-comments_1_9_58"; }
158
158
  static get encapsulation() { return "shadow"; }
159
159
  static get originalStyleUrls() {
160
160
  return {
@@ -6,12 +6,12 @@ export default {
6
6
  };
7
7
  const Default = ({ currentUser, comments, allowEditing }) => `
8
8
  <section style="width: 300px; display: inline-block; height: calc(100vh - 50px)">
9
- <tttx-comments_1_9_56
9
+ <tttx-comments_1_9_58
10
10
  currentuser="${currentUser}"
11
11
  comments='${JSON.stringify(comments)}'
12
12
  allow-editing=${allowEditing}
13
13
  >
14
- </tttx-comments_1_9_56>
14
+ </tttx-comments_1_9_58>
15
15
  </section>
16
16
  `;
17
17
  export const DefaultComments = Default.bind({});
@@ -19,6 +19,9 @@
19
19
  .date-range-input .range-text {
20
20
  flex: 1;
21
21
  color: #333;
22
+ white-space: nowrap;
23
+ overflow: hidden;
24
+ text-overflow: ellipsis;
22
25
  }
23
26
  .date-range-input .clear-btn {
24
27
  background: none;
@@ -28,29 +31,37 @@
28
31
  margin-left: 8px;
29
32
  cursor: pointer;
30
33
  }
34
+ .date-range-input .clear-btn:hover {
35
+ color: #333;
36
+ }
31
37
  .date-range-input .calendar-icon {
32
38
  margin-left: 8px;
39
+ display: flex;
40
+ align-items: center;
33
41
  }
34
42
 
35
43
  .calendar-popup {
36
44
  position: absolute;
37
45
  z-index: 1000;
38
46
  top: calc(100% + 4px);
47
+ left: 0;
39
48
  background: white;
40
49
  border: 1px solid #ccc;
41
- display: flex;
42
50
  padding: 1em;
43
51
  border-radius: 4px;
44
52
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
53
+ width: auto;
54
+ min-width: 260px;
45
55
  }
46
- .calendar-popup.double {
47
- gap: 1em;
56
+ .calendar-popup.single {
57
+ display: flex;
58
+ flex-direction: column;
48
59
  }
49
60
 
50
61
  .calendar {
51
62
  display: flex;
52
63
  flex-direction: column;
53
- width: 240px;
64
+ width: 100%;
54
65
  }
55
66
  .calendar .calendar-header {
56
67
  display: flex;
@@ -64,10 +75,15 @@
64
75
  cursor: pointer;
65
76
  font-size: 16px;
66
77
  padding: 0 8px;
78
+ color: #333;
79
+ }
80
+ .calendar .calendar-header .nav-btn:hover {
81
+ color: #1479c6;
67
82
  }
68
83
  .calendar .calendar-header .month-label {
69
84
  font-weight: bold;
70
85
  font-size: 14px;
86
+ color: #333;
71
87
  }
72
88
  .calendar .calendar-grid {
73
89
  display: grid;
@@ -79,6 +95,7 @@
79
95
  text-align: center;
80
96
  font-size: 12px;
81
97
  padding-bottom: 4px;
98
+ color: #666;
82
99
  }
83
100
  .calendar .calendar-grid .calendar-date {
84
101
  text-align: center;
@@ -87,6 +104,7 @@
87
104
  font-size: 14px;
88
105
  cursor: pointer;
89
106
  transition: background 0.2s ease;
107
+ color: #333;
90
108
  }
91
109
  .calendar .calendar-grid .calendar-date:hover {
92
110
  background-color: #f0f0f0;
@@ -99,4 +117,35 @@
99
117
  .calendar .calendar-grid .calendar-date.empty {
100
118
  background: transparent;
101
119
  cursor: default;
120
+ }
121
+ .calendar .calendar-date.hoverrange {
122
+ position: relative;
123
+ z-index: 1;
124
+ }
125
+ .calendar .calendar-date.hoverrange::before {
126
+ content: "";
127
+ position: absolute;
128
+ inset: 0;
129
+ border: 1px dotted #bdbdbd;
130
+ background-color: white;
131
+ z-index: -1;
132
+ pointer-events: none;
133
+ }
134
+ .calendar .calendar-date.hoverrange.range-hover-start::before {
135
+ border-top-left-radius: 999px;
136
+ border-bottom-left-radius: 999px;
137
+ left: 0;
138
+ }
139
+ .calendar .calendar-date.hoverrange.range-hover-end::before {
140
+ border-top-right-radius: 999px;
141
+ border-bottom-right-radius: 999px;
142
+ right: 0;
143
+ }
144
+ .calendar .calendar-date.hoverrange:first-child {
145
+ border-top-left-radius: 50%;
146
+ border-bottom-left-radius: 50%;
147
+ }
148
+ .calendar .calendar-date.hoverrange:last-child {
149
+ border-top-right-radius: 50%;
150
+ border-bottom-right-radius: 50%;
102
151
  }
@@ -22,11 +22,10 @@ export class TttxDateRangePicker {
22
22
  this.showCalendar = false;
23
23
  this.startDate = '';
24
24
  this.endDate = '';
25
- this.leftMonth = new Date().getMonth();
26
- this.leftYear = new Date().getFullYear();
27
- this.rightMonth = (new Date().getMonth() + 1) % 12;
28
- this.rightYear = new Date().getMonth() === 11 ? new Date().getFullYear() + 1 : new Date().getFullYear();
25
+ this.currentMonth = new Date().getMonth();
26
+ this.currentYear = new Date().getFullYear();
29
27
  this.isSelecting = true;
28
+ this.hoverDate = '';
30
29
  }
31
30
  componentDidLoad() {
32
31
  document.addEventListener('click', this.handleOutsideClick);
@@ -43,7 +42,6 @@ export class TttxDateRangePicker {
43
42
  initializeRangeFromProp() {
44
43
  let start = '';
45
44
  let end = '';
46
- // Extract from prop
47
45
  if (typeof this.initialValue === 'string') {
48
46
  try {
49
47
  const parsed = JSON.parse(this.initialValue);
@@ -58,12 +56,10 @@ export class TttxDateRangePicker {
58
56
  start = this.initialValue.start;
59
57
  end = this.initialValue.end;
60
58
  }
61
- // Convert from dd/mm/yyyy to ISO if needed
62
59
  if (start && start.includes('/'))
63
60
  start = this.parseDDMMYYYYToISO(start);
64
61
  if (end && end.includes('/'))
65
62
  end = this.parseDDMMYYYYToISO(end);
66
- // Set state
67
63
  if (start)
68
64
  this.startDate = start;
69
65
  if (end)
@@ -88,6 +84,7 @@ export class TttxDateRangePicker {
88
84
  if (this.isSelecting) {
89
85
  this.startDate = date;
90
86
  this.endDate = '';
87
+ this.hoverDate = ''; // Reset hover
91
88
  this.emitRangeChange(this.startDate, '');
92
89
  this.isSelecting = false;
93
90
  }
@@ -98,40 +95,24 @@ export class TttxDateRangePicker {
98
95
  this.emitRangeChange(this.startDate, this.endDate);
99
96
  this.showCalendar = false;
100
97
  this.isSelecting = true;
98
+ this.hoverDate = ''; // Reset hover
101
99
  }
102
100
  else {
103
101
  this.startDate = date;
104
102
  this.endDate = '';
103
+ this.hoverDate = ''; // Reset hover
105
104
  this.emitRangeChange(this.startDate, '');
106
105
  }
107
106
  }
108
107
  }
109
- changeMonth(direction, calendar) {
110
- let month = calendar === 'left' ? this.leftMonth : this.rightMonth;
111
- let year = calendar === 'left' ? this.leftYear : this.rightYear;
108
+ changeMonth(direction) {
112
109
  if (direction === 'prev') {
113
- month = month === 0 ? 11 : month - 1;
114
- year = month === 11 ? year - 1 : year;
110
+ this.currentMonth = this.currentMonth === 0 ? 11 : this.currentMonth - 1;
111
+ this.currentYear = this.currentMonth === 11 ? this.currentYear - 1 : this.currentYear;
115
112
  }
116
113
  else {
117
- month = month === 11 ? 0 : month + 1;
118
- year = month === 0 ? year + 1 : year;
119
- }
120
- if (calendar === 'left') {
121
- this.leftMonth = month;
122
- this.leftYear = year;
123
- if (year > this.rightYear || (year === this.rightYear && month >= this.rightMonth)) {
124
- this.rightMonth = (month + 1) % 12;
125
- this.rightYear = month === 11 ? year + 1 : year;
126
- }
127
- }
128
- else {
129
- this.rightMonth = month;
130
- this.rightYear = year;
131
- if (year < this.leftYear || (year === this.leftYear && month <= this.leftMonth)) {
132
- this.leftMonth = month === 0 ? 11 : month - 1;
133
- this.leftYear = month === 0 ? year - 1 : year;
134
- }
114
+ this.currentMonth = this.currentMonth === 11 ? 0 : this.currentMonth + 1;
115
+ this.currentYear = this.currentMonth === 0 ? this.currentYear + 1 : this.currentYear;
135
116
  }
136
117
  }
137
118
  formatToDDMMYYYY(dateStr) {
@@ -141,6 +122,10 @@ export class TttxDateRangePicker {
141
122
  const year = date.getFullYear();
142
123
  return `${day}/${month}/${year}`;
143
124
  }
125
+ parseDDMMYYYYToISO(dateStr) {
126
+ const [dd, mm, yyyy] = dateStr.split('/');
127
+ return new Date(`${yyyy}-${mm}-${dd}`).toISOString().split('T')[0];
128
+ }
144
129
  generateCalendarGrid(year, month) {
145
130
  const firstDay = new Date(year, month, 1).getDay();
146
131
  const daysInMonth = new Date(year, month + 1, 0).getDate();
@@ -153,7 +138,7 @@ export class TttxDateRangePicker {
153
138
  const yyyy = dateObj.getFullYear();
154
139
  const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
155
140
  const dd = String(dateObj.getDate()).padStart(2, '0');
156
- const formattedDate = `${yyyy}-${mm}-${dd}`; // ISO local date (safe)
141
+ const formattedDate = `${yyyy}-${mm}-${dd}`;
157
142
  grid.push({ date: formattedDate, isCurrentMonth: true });
158
143
  }
159
144
  while (grid.length < 42) {
@@ -164,14 +149,11 @@ export class TttxDateRangePicker {
164
149
  getMonthName(month) {
165
150
  return new Date(2000, month).toLocaleString('default', { month: 'long' });
166
151
  }
167
- parseDDMMYYYYToISO(dateStr) {
168
- const [dd, mm, yyyy] = dateStr.split('/');
169
- return new Date(`${yyyy}-${mm}-${dd}`).toISOString().split('T')[0]; // ISO string
170
- }
171
- renderCalendar(year, month, selectDate, isStart) {
152
+ renderCalendar(year, month, selectDate) {
172
153
  const grid = this.generateCalendarGrid(year, month);
173
154
  const weekDays = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];
174
- return (h("div", { class: "calendar" }, h("div", { class: "calendar-header" }, h("button", { class: "nav-btn", onClick: e => { e.stopPropagation(); this.changeMonth('prev', isStart ? 'left' : 'right'); } }, "<"), h("span", { class: "month-label" }, this.getMonthName(month), " ", year), h("button", { class: "nav-btn", onClick: e => { e.stopPropagation(); this.changeMonth('next', isStart ? 'left' : 'right'); } }, ">")), h("div", { class: "calendar-grid" }, weekDays.map(day => h("div", { class: "calendar-weekday", key: day }, day)), grid.map((cell, i) => {
155
+ return (h("div", { class: "calendar" }, h("div", { class: "calendar-header" }, h("button", { class: "nav-btn", onClick: e => { e.stopPropagation(); this.changeMonth('prev'); } }, "<"), h("span", { class: "month-label" }, this.getMonthName(month), " ", year), h("button", { class: "nav-btn", onClick: e => { e.stopPropagation(); this.changeMonth('next'); } }, ">")), h("div", { class: "calendar-grid" }, weekDays.map(day => h("div", { class: "calendar-weekday", key: day }, day)), grid.map((cell, i) => {
156
+ var _a;
175
157
  if (!cell.isCurrentMonth || !cell.date) {
176
158
  return h("div", { class: "calendar-date empty", key: `empty-${i}` });
177
159
  }
@@ -182,12 +164,34 @@ export class TttxDateRangePicker {
182
164
  this.endDate &&
183
165
  new Date(date) > new Date(this.startDate) &&
184
166
  new Date(date) < new Date(this.endDate);
167
+ const isHoverRange = this.startDate &&
168
+ !this.endDate &&
169
+ this.hoverDate &&
170
+ new Date(date) > new Date(this.startDate) &&
171
+ new Date(date) <= new Date(this.hoverDate);
172
+ const prevDate = (_a = grid[i - 1]) === null || _a === void 0 ? void 0 : _a.date;
173
+ const isHoverStart = isHoverRange && (i === 0 ||
174
+ !prevDate ||
175
+ (this.startDate && new Date(prevDate) < new Date(this.startDate)));
176
+ const isHoverEnd = isHoverRange && date === this.hoverDate;
185
177
  return (h("div", { class: {
186
178
  'calendar-date': true,
187
179
  'range-start': isRangeStart,
188
180
  'range-end': isRangeEnd,
189
181
  'inrange': isInRange,
190
- }, onClick: e => { e.stopPropagation(); selectDate(date); }, key: date }, new Date(date).getDate()));
182
+ 'hoverrange': isHoverRange,
183
+ 'range-hover-start': isHoverStart,
184
+ 'range-hover-end': isHoverEnd,
185
+ }, onClick: e => {
186
+ e.stopPropagation();
187
+ selectDate(date);
188
+ }, onMouseEnter: () => {
189
+ if (!this.isSelecting && this.startDate) {
190
+ this.hoverDate = date;
191
+ }
192
+ }, onMouseLeave: () => {
193
+ this.hoverDate = '';
194
+ }, key: date }, new Date(date).getDate()));
191
195
  }))));
192
196
  }
193
197
  render() {
@@ -196,7 +200,7 @@ export class TttxDateRangePicker {
196
200
  : this.startDate
197
201
  ? `${this.formatToDDMMYYYY(this.startDate)} –`
198
202
  : this.placeholderText;
199
- return (h(Host, null, h("div", { class: "date-range-input", tabIndex: 0, "aria-haspopup": "dialog", "aria-expanded": this.showCalendar ? 'true' : 'false', ref: el => (this.inputRef = el), onClick: this.handleInputClick }, h("span", { class: "range-text" }, rangeText), (this.startDate || this.endDate) && (h("button", { class: "clear-btn", "aria-label": "Clear", onClick: this.handleClear }, "\u00D7")), h("span", { class: "calendar-icon", "aria-hidden": "true" }, h("tttx-icon_1_9_56", { icon: 'calendar_month' }))), this.showCalendar && (h("div", { class: "calendar-popup double" }, this.renderCalendar(this.leftYear, this.leftMonth, this.handleDateClick.bind(this), true), this.renderCalendar(this.rightYear, this.rightMonth, this.handleDateClick.bind(this), false)))));
203
+ return (h(Host, null, h("div", { class: "date-range-input", tabIndex: 0, "aria-haspopup": "dialog", "aria-expanded": this.showCalendar ? 'true' : 'false', ref: el => (this.inputRef = el), onClick: this.handleInputClick }, h("span", { class: "range-text" }, rangeText), (this.startDate || this.endDate) && (h("button", { class: "clear-btn", "aria-label": "Clear", onClick: this.handleClear }, "\u00D7")), h("span", { class: "calendar-icon", "aria-hidden": "true" }, h("tttx-icon_1_9_58", { icon: 'calendar_month' }))), this.showCalendar && (h("div", { class: "calendar-popup single" }, this.renderCalendar(this.currentYear, this.currentMonth, this.handleDateClick.bind(this))))));
200
204
  }
201
205
  static get is() { return "tttx-date-range-picker"; }
202
206
  static get encapsulation() { return "shadow"; }
@@ -252,11 +256,10 @@ export class TttxDateRangePicker {
252
256
  "showCalendar": {},
253
257
  "startDate": {},
254
258
  "endDate": {},
255
- "leftMonth": {},
256
- "leftYear": {},
257
- "rightMonth": {},
258
- "rightYear": {},
259
- "isSelecting": {}
259
+ "currentMonth": {},
260
+ "currentYear": {},
261
+ "isSelecting": {},
262
+ "hoverDate": {}
260
263
  };
261
264
  }
262
265
  static get events() {
@@ -271,7 +274,7 @@ export class TttxDateRangePicker {
271
274
  "text": ""
272
275
  },
273
276
  "complexType": {
274
- "original": "{ name: string; value: { start: string, end: string } }",
277
+ "original": "{ name: string; value: { start: string; end: string } }",
275
278
  "resolved": "{ name: string; value: { start: string; end: string; }; }",
276
279
  "references": {}
277
280
  }
@@ -9,7 +9,7 @@ export default {
9
9
  },
10
10
  docs: {
11
11
  description: {
12
- component: 'A custom date range picker with two calendars (start and end), emitting `dateRangeChanged` events for both dates. No external dependencies.',
12
+ component: 'custom date range picker with a single calendar UI, allowing start and end date selection in sequence. Emits `dateRangeChanged` event with formatted `dd/mm/yyyy` values.',
13
13
  },
14
14
  },
15
15
  },