@limetech/lime-elements 40.5.4 → 40.6.1

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 (451) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/cjs/{adapt-color-contrast-Beo1IEl_.js → adapt-color-contrast-h6iwOfZd.js} +1 -1
  3. package/dist/cjs/{checkbox.template-BPk8WkQF.js → checkbox.template-CoNVC4Nf.js} +2 -2
  4. package/dist/cjs/{files-DI4jItxi.js → files-DpGigQ8k.js} +1 -1
  5. package/dist/cjs/{format-bytes-CpUKKU86.js → format-bytes-WTHVI718.js} +1 -4
  6. package/dist/cjs/{hotkeys-BtR8uxvl.js → hotkeys-D761KWnZ.js} +1 -0
  7. package/dist/cjs/{image-resize-CG2fitJT.js → image-resize-JlRLB97I.js} +1 -0
  8. package/dist/cjs/{image.template-DY7qwbuy.js → image.template-DlF-f23b.js} +1 -1
  9. package/dist/cjs/{index--B6-r0uo.js → index-BlsqxTB1.js} +1 -7
  10. package/dist/cjs/{index-ETPz91V5.js → index-zZvs6xK-.js} +9382 -9504
  11. package/dist/cjs/index.cjs.js +1 -1
  12. package/dist/cjs/{isArrayLikeObject-U2Ddbw4n.js → isArrayLikeObject-BhSkOTkw.js} +17 -0
  13. package/dist/cjs/{language-CaqPKPyW.js → language-v-MMS6ym.js} +1 -1
  14. package/dist/cjs/lime-elements.cjs.js +2 -2
  15. package/dist/cjs/limel-3d-hover-effect-glow.cjs.entry.js +2 -2
  16. package/dist/cjs/limel-action-bar_3.cjs.entry.js +20 -18
  17. package/dist/cjs/limel-ai-avatar.cjs.entry.js +5 -5
  18. package/dist/cjs/limel-badge.cjs.entry.js +3 -3
  19. package/dist/cjs/limel-banner.cjs.entry.js +2 -2
  20. package/dist/cjs/limel-breadcrumbs_6.cjs.entry.js +80 -80
  21. package/dist/cjs/limel-button-group.cjs.entry.js +3 -3
  22. package/dist/cjs/limel-button.cjs.entry.js +4 -4
  23. package/dist/cjs/limel-callout.cjs.entry.js +6 -6
  24. package/dist/cjs/limel-card.cjs.entry.js +8 -7
  25. package/dist/cjs/limel-chart.cjs.entry.js +5 -5
  26. package/dist/cjs/limel-checkbox.cjs.entry.js +12 -10
  27. package/dist/cjs/limel-chip-set.cjs.entry.js +30 -39
  28. package/dist/cjs/limel-chip_2.cjs.entry.js +9 -9
  29. package/dist/cjs/limel-circular-progress.cjs.entry.js +2 -2
  30. package/dist/cjs/limel-code-diff.cjs.entry.js +25 -28
  31. package/dist/cjs/limel-code-editor.cjs.entry.js +17 -12
  32. package/dist/cjs/limel-collapsible-section.cjs.entry.js +8 -8
  33. package/dist/cjs/limel-color-picker-palette.cjs.entry.js +3 -3
  34. package/dist/cjs/limel-color-picker.cjs.entry.js +6 -5
  35. package/dist/cjs/limel-config.cjs.entry.js +3 -3
  36. package/dist/cjs/limel-date-picker.cjs.entry.js +8 -11
  37. package/dist/cjs/limel-dialog.cjs.entry.js +6 -9
  38. package/dist/cjs/limel-dock-button.cjs.entry.js +6 -11
  39. package/dist/cjs/limel-dock.cjs.entry.js +3 -3
  40. package/dist/cjs/limel-drag-handle.cjs.entry.js +6 -6
  41. package/dist/cjs/limel-dynamic-label.cjs.entry.js +1 -1
  42. package/dist/cjs/limel-email-viewer.cjs.entry.js +11 -17
  43. package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +11 -12
  44. package/dist/cjs/limel-file-viewer.cjs.entry.js +1099 -1147
  45. package/dist/cjs/limel-file.cjs.entry.js +17 -16
  46. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +100 -94
  47. package/dist/cjs/limel-flex-container.cjs.entry.js +2 -2
  48. package/dist/cjs/limel-form.cjs.entry.js +67 -68
  49. package/dist/cjs/limel-grid.cjs.entry.js +2 -2
  50. package/dist/cjs/limel-header.cjs.entry.js +2 -2
  51. package/dist/cjs/limel-help-content.cjs.entry.js +2 -2
  52. package/dist/cjs/limel-help.cjs.entry.js +3 -3
  53. package/dist/cjs/limel-helper-line_3.cjs.entry.js +12 -14
  54. package/dist/cjs/limel-hotkey_4.cjs.entry.js +23 -23
  55. package/dist/cjs/limel-icon-button.cjs.entry.js +4 -4
  56. package/dist/cjs/limel-icon.cjs.entry.js +15 -13
  57. package/dist/cjs/limel-info-tile.cjs.entry.js +10 -10
  58. package/dist/cjs/limel-list-item.cjs.entry.js +10 -10
  59. package/dist/cjs/limel-markdown.cjs.entry.js +50 -23
  60. package/dist/cjs/limel-masonry-layout.cjs.entry.js +6 -5
  61. package/dist/cjs/limel-menu-item-meta.cjs.entry.js +3 -3
  62. package/dist/cjs/limel-pagination-jump.cjs.entry.js +17 -15
  63. package/dist/cjs/limel-pagination.cjs.entry.js +10 -9
  64. package/dist/cjs/limel-picker.cjs.entry.js +31 -29
  65. package/dist/cjs/limel-popover_2.cjs.entry.js +25 -21
  66. package/dist/cjs/limel-profile-picture.cjs.entry.js +12 -11
  67. package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
  68. package/dist/cjs/limel-progress-flow.cjs.entry.js +11 -10
  69. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +476 -408
  70. package/dist/cjs/limel-radio-button-group.cjs.entry.js +2 -2
  71. package/dist/cjs/limel-radio-button.cjs.entry.js +3 -3
  72. package/dist/cjs/limel-scroller.cjs.entry.js +180 -0
  73. package/dist/cjs/limel-select.cjs.entry.js +17 -17
  74. package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
  75. package/dist/cjs/limel-slider.cjs.entry.js +18 -27
  76. package/dist/cjs/limel-snackbar.cjs.entry.js +5 -5
  77. package/dist/cjs/limel-split-button.cjs.entry.js +1 -1
  78. package/dist/cjs/limel-switch.cjs.entry.js +3 -3
  79. package/dist/cjs/limel-tab-bar.cjs.entry.js +66 -97
  80. package/dist/cjs/limel-tab-panel.cjs.entry.js +12 -9
  81. package/dist/cjs/limel-table.cjs.entry.js +527 -106
  82. package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +15 -14
  83. package/dist/cjs/limel-text-editor.cjs.entry.js +3 -3
  84. package/dist/cjs/loader.cjs.js +2 -2
  85. package/dist/cjs/{make-enter-clickable-NuTMC9MU.js → make-enter-clickable-BZHEWIJD.js} +19 -12
  86. package/dist/cjs/markdown-exporter-C-UW43FF.js +6210 -0
  87. package/dist/cjs/{markdown-parser-YH5HSSgF.js → markdown-parser-ssDij8_l.js} +603 -870
  88. package/dist/cjs/{moment-CqRdiK10.js → moment-Cfsz2WF1.js} +1062 -833
  89. package/dist/cjs/{random-string-BTzDB2ee.js → random-string-CFCtFh5l.js} +1 -0
  90. package/dist/cjs/{render-list-component-5ZKWpCnM.js → render-list-component-BtAliHQp.js} +3 -5
  91. package/dist/cjs/{sv-BSR4W58y.js → sv-Co78RX70.js} +31 -3
  92. package/dist/cjs/{translations-DFFpR6AZ.js → translations-CNTWud2a.js} +5 -8
  93. package/dist/collection/collection-manifest.json +1 -0
  94. package/dist/collection/components/3d-hover-effect-glow/3d-hover-effect-glow.js +1 -1
  95. package/dist/collection/components/action-bar/action-bar-item/action-bar-item.js +8 -7
  96. package/dist/collection/components/action-bar/action-bar-item/action-bar-overflow-menu.js +1 -1
  97. package/dist/collection/components/action-bar/action-bar.js +6 -5
  98. package/dist/collection/components/ai-avatar/ai-avatar.js +1 -1
  99. package/dist/collection/components/badge/badge.js +2 -2
  100. package/dist/collection/components/banner/banner.js +1 -1
  101. package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -2
  102. package/dist/collection/components/button/button.js +2 -2
  103. package/dist/collection/components/button-group/button-group.js +1 -1
  104. package/dist/collection/components/callout/callout.js +1 -1
  105. package/dist/collection/components/card/card.js +6 -5
  106. package/dist/collection/components/checkbox/checkbox.js +9 -7
  107. package/dist/collection/components/checkbox/checkbox.template.js +1 -1
  108. package/dist/collection/components/chip/chip.js +1 -1
  109. package/dist/collection/components/chip-set/chip-set-input-helpers.js +18 -21
  110. package/dist/collection/components/chip-set/chip-set.js +7 -13
  111. package/dist/collection/components/circular-progress/circular-progress.js +1 -1
  112. package/dist/collection/components/code-diff/code-diff.js +19 -22
  113. package/dist/collection/components/code-diff/diff-engine.js +2 -2
  114. package/dist/collection/components/code-editor/code-editor.js +8 -3
  115. package/dist/collection/components/collapsible-section/collapsible-section.js +1 -1
  116. package/dist/collection/components/color-picker/color-picker-palette.js +2 -2
  117. package/dist/collection/components/color-picker/color-picker.js +5 -4
  118. package/dist/collection/components/config/config.js +2 -2
  119. package/dist/collection/components/date-picker/date-picker.js +3 -6
  120. package/dist/collection/components/date-picker/flatpickr-adapter/deferred-destroy.js +4 -3
  121. package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.js +1 -1
  122. package/dist/collection/components/date-picker/pickers/month-picker.js +40 -36
  123. package/dist/collection/components/date-picker/pickers/quarter-picker.js +35 -30
  124. package/dist/collection/components/date-picker/pickers/year-picker.js +16 -20
  125. package/dist/collection/components/dialog/dialog.js +4 -7
  126. package/dist/collection/components/dock/dock-button/dock-button.js +4 -9
  127. package/dist/collection/components/dock/dock.js +2 -2
  128. package/dist/collection/components/drag-handle/drag-handle.js +1 -1
  129. package/dist/collection/components/email-viewer/email-loader.js +14 -10
  130. package/dist/collection/components/email-viewer/email-viewer.js +1 -1
  131. package/dist/collection/components/email-viewer/sanitize-email-html.js +1 -4
  132. package/dist/collection/components/email-viewer/split-email-address-list.js +4 -10
  133. package/dist/collection/components/file/file.js +11 -10
  134. package/dist/collection/components/file-dropzone/file-dropzone.js +1 -1
  135. package/dist/collection/components/file-input/file-input.js +7 -8
  136. package/dist/collection/components/file-viewer/file-viewer.js +12 -9
  137. package/dist/collection/components/flex-container/flex-container.js +1 -1
  138. package/dist/collection/components/form/fields/schema-field.js +1 -1
  139. package/dist/collection/components/form/form.js +2 -5
  140. package/dist/collection/components/form/form.test-schemas.js +8 -10
  141. package/dist/collection/components/form/templates/array-field.js +7 -9
  142. package/dist/collection/components/form/templates/common.js +19 -19
  143. package/dist/collection/components/form/templates/object-field.js +1 -1
  144. package/dist/collection/components/form/validation-display.js +2 -2
  145. package/dist/collection/components/form/validators/format.js +1 -0
  146. package/dist/collection/components/form/widgets/code-editor.js +6 -9
  147. package/dist/collection/components/form/widgets/date-picker.js +1 -3
  148. package/dist/collection/components/grid/grid.js +1 -1
  149. package/dist/collection/components/header/header.js +1 -1
  150. package/dist/collection/components/help/help-content.js +1 -1
  151. package/dist/collection/components/help/help.js +2 -2
  152. package/dist/collection/components/helper-line/helper-line.js +3 -3
  153. package/dist/collection/components/hotkey/hotkey.js +1 -1
  154. package/dist/collection/components/icon/icon.js +11 -9
  155. package/dist/collection/components/icon-button/icon-button.js +1 -1
  156. package/dist/collection/components/info-tile/info-tile.js +9 -9
  157. package/dist/collection/components/input-field/input-field.js +11 -11
  158. package/dist/collection/components/list/list-renderer.js +5 -7
  159. package/dist/collection/components/list/list.js +2 -2
  160. package/dist/collection/components/list-item/list-item.js +2 -2
  161. package/dist/collection/components/list-item/menu-item-meta/menu-item-meta.js +1 -1
  162. package/dist/collection/components/markdown/hydrate-custom-elements.js +6 -5
  163. package/dist/collection/components/markdown/image-intersection-observer.js +9 -8
  164. package/dist/collection/components/markdown/image-markdown-plugin.js +9 -7
  165. package/dist/collection/components/markdown/link-markdown-plugin.js +11 -10
  166. package/dist/collection/components/markdown/markdown-exporter.js +186 -0
  167. package/dist/collection/components/markdown/markdown-parser.js +2 -3
  168. package/dist/collection/components/markdown/markdown.js +59 -6
  169. package/dist/collection/components/markdown/remove-empty-paragraphs-plugin.js +4 -5
  170. package/dist/collection/components/masonry-layout/masonry-layout.js +5 -4
  171. package/dist/collection/components/menu/menu.js +48 -46
  172. package/dist/collection/components/menu-list/menu-list-renderer.js +8 -8
  173. package/dist/collection/components/menu-list/menu-list.js +1 -1
  174. package/dist/collection/components/menu-surface/menu-surface.js +6 -8
  175. package/dist/collection/components/notched-outline/notched-outline.js +1 -1
  176. package/dist/collection/components/pagination/jump/pagination-jump.js +13 -11
  177. package/dist/collection/components/pagination/pagination.js +5 -4
  178. package/dist/collection/components/picker/picker.js +25 -23
  179. package/dist/collection/components/popover/popover.js +13 -10
  180. package/dist/collection/components/popover-surface/popover-surface.js +1 -1
  181. package/dist/collection/components/portal/contains.js +9 -8
  182. package/dist/collection/components/portal/portal.js +16 -16
  183. package/dist/collection/components/profile-picture/profile-picture.js +4 -3
  184. package/dist/collection/components/progress-flow/progress-flow.js +10 -9
  185. package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
  186. package/dist/collection/components/radio-button-group/radio-button.js +2 -2
  187. package/dist/collection/components/scroller/scroller.css +317 -0
  188. package/dist/collection/components/scroller/scroller.js +284 -0
  189. package/dist/collection/components/select/select.js +13 -11
  190. package/dist/collection/components/select/select.template.js +1 -3
  191. package/dist/collection/components/slider/get-percentage-class.js +9 -18
  192. package/dist/collection/components/slider/slider.js +2 -2
  193. package/dist/collection/components/tab-bar/tab-bar.css +7 -289
  194. package/dist/collection/components/tab-bar/tab-bar.js +59 -104
  195. package/dist/collection/components/tab-panel/tab-panel.js +11 -8
  196. package/dist/collection/components/table/columns.js +1 -3
  197. package/dist/collection/components/table/element-pool.js +1 -1
  198. package/dist/collection/components/table/table-selection.js +6 -5
  199. package/dist/collection/components/table/table.css +15 -17
  200. package/dist/collection/components/table/table.js +44 -39
  201. package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +11 -10
  202. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-command-utils/list-utils.js +1 -1
  203. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js +6 -10
  204. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/inserter.js +37 -40
  205. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/node.js +2 -1
  206. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link/link-plugin.js +21 -20
  207. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/menu-state-tracking-plugin.js +6 -5
  208. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/trigger/factory-helpers/detect-trigger-removal.js +15 -14
  209. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +40 -34
  210. package/dist/collection/components/text-editor/text-editor.js +1 -1
  211. package/dist/collection/components/text-editor/utils/metadata-utils.js +1 -1
  212. package/dist/collection/components/text-editor/utils/plugin-factory.js +3 -3
  213. package/dist/collection/components/tooltip/tooltip-content.js +1 -1
  214. package/dist/collection/components/tooltip/tooltip.js +2 -2
  215. package/dist/collection/global/icon-cache/factory.js +2 -3
  216. package/dist/collection/global/icon-cache/in-memory-icon-cache.js +2 -0
  217. package/dist/collection/global/translations.js +1 -3
  218. package/dist/collection/translations/fr.js +3 -3
  219. package/dist/collection/util/adapt-color-contrast.js +1 -1
  220. package/dist/collection/util/files.js +1 -1
  221. package/dist/collection/util/format-bytes.js +1 -4
  222. package/dist/collection/util/hotkeys.js +1 -0
  223. package/dist/collection/util/image-resize.js +1 -0
  224. package/dist/collection/util/language.js +1 -1
  225. package/dist/collection/util/make-enter-clickable.js +19 -12
  226. package/dist/collection/util/random-string.js +1 -0
  227. package/dist/collection/util/render-list-component.js +2 -4
  228. package/dist/esm/{adapt-color-contrast-Dgcw_h7C.js → adapt-color-contrast-BQoih_t0.js} +1 -1
  229. package/dist/esm/{checkbox.template-Cx_3u92S.js → checkbox.template-IDyv2bgn.js} +2 -2
  230. package/dist/esm/{files-DnkFEKoB.js → files-CKnLqPDj.js} +1 -1
  231. package/dist/esm/{format-bytes-u_sd2HMb.js → format-bytes-24yUSW40.js} +1 -4
  232. package/dist/esm/{hotkeys-BxrRWYts.js → hotkeys-DjmlD0Mw.js} +1 -0
  233. package/dist/esm/{image-resize-BTSG--2-.js → image-resize-Dv2HOgWN.js} +1 -0
  234. package/dist/esm/{image.template-wqMwmOF-.js → image.template-BGjw97m_.js} +1 -1
  235. package/dist/esm/{index-CbciMfiU.js → index-BN64nlbO.js} +9369 -9505
  236. package/dist/esm/{index-Bnc9lzk2.js → index-BU9IJqli.js} +1 -7
  237. package/dist/esm/index.js +1 -1
  238. package/dist/esm/{isArrayLikeObject-CJB8HbtH.js → isArrayLikeObject-tmUOLOWr.js} +17 -1
  239. package/dist/esm/{language-C3hECvXE.js → language-ChagAaNf.js} +1 -1
  240. package/dist/esm/lime-elements.js +3 -3
  241. package/dist/esm/limel-3d-hover-effect-glow.entry.js +2 -2
  242. package/dist/esm/limel-action-bar_3.entry.js +20 -18
  243. package/dist/esm/limel-ai-avatar.entry.js +5 -5
  244. package/dist/esm/limel-badge.entry.js +3 -3
  245. package/dist/esm/limel-banner.entry.js +2 -2
  246. package/dist/esm/limel-breadcrumbs_6.entry.js +80 -80
  247. package/dist/esm/limel-button-group.entry.js +3 -3
  248. package/dist/esm/limel-button.entry.js +4 -4
  249. package/dist/esm/limel-callout.entry.js +6 -6
  250. package/dist/esm/limel-card.entry.js +8 -7
  251. package/dist/esm/limel-chart.entry.js +5 -5
  252. package/dist/esm/limel-checkbox.entry.js +12 -10
  253. package/dist/esm/limel-chip-set.entry.js +30 -39
  254. package/dist/esm/limel-chip_2.entry.js +9 -9
  255. package/dist/esm/limel-circular-progress.entry.js +2 -2
  256. package/dist/esm/limel-code-diff.entry.js +25 -28
  257. package/dist/esm/limel-code-editor.entry.js +17 -12
  258. package/dist/esm/limel-collapsible-section.entry.js +8 -8
  259. package/dist/esm/limel-color-picker-palette.entry.js +3 -3
  260. package/dist/esm/limel-color-picker.entry.js +6 -5
  261. package/dist/esm/limel-config.entry.js +3 -3
  262. package/dist/esm/limel-date-picker.entry.js +8 -11
  263. package/dist/esm/limel-dialog.entry.js +6 -9
  264. package/dist/esm/limel-dock-button.entry.js +6 -11
  265. package/dist/esm/limel-dock.entry.js +3 -3
  266. package/dist/esm/limel-drag-handle.entry.js +6 -6
  267. package/dist/esm/limel-dynamic-label.entry.js +1 -1
  268. package/dist/esm/limel-email-viewer.entry.js +11 -17
  269. package/dist/esm/limel-file-dropzone_2.entry.js +11 -12
  270. package/dist/esm/limel-file-viewer.entry.js +1099 -1147
  271. package/dist/esm/limel-file.entry.js +17 -16
  272. package/dist/esm/limel-flatpickr-adapter.entry.js +100 -94
  273. package/dist/esm/limel-flex-container.entry.js +2 -2
  274. package/dist/esm/limel-form.entry.js +66 -67
  275. package/dist/esm/limel-grid.entry.js +2 -2
  276. package/dist/esm/limel-header.entry.js +2 -2
  277. package/dist/esm/limel-help-content.entry.js +2 -2
  278. package/dist/esm/limel-help.entry.js +3 -3
  279. package/dist/esm/limel-helper-line_3.entry.js +12 -14
  280. package/dist/esm/limel-hotkey_4.entry.js +23 -23
  281. package/dist/esm/limel-icon-button.entry.js +4 -4
  282. package/dist/esm/limel-icon.entry.js +15 -13
  283. package/dist/esm/limel-info-tile.entry.js +10 -10
  284. package/dist/esm/limel-list-item.entry.js +10 -10
  285. package/dist/esm/limel-markdown.entry.js +50 -23
  286. package/dist/esm/limel-masonry-layout.entry.js +6 -5
  287. package/dist/esm/limel-menu-item-meta.entry.js +3 -3
  288. package/dist/esm/limel-pagination-jump.entry.js +17 -15
  289. package/dist/esm/limel-pagination.entry.js +10 -9
  290. package/dist/esm/limel-picker.entry.js +31 -29
  291. package/dist/esm/limel-popover_2.entry.js +25 -21
  292. package/dist/esm/limel-profile-picture.entry.js +12 -11
  293. package/dist/esm/limel-progress-flow-item.entry.js +1 -1
  294. package/dist/esm/limel-progress-flow.entry.js +11 -10
  295. package/dist/esm/limel-prosemirror-adapter.entry.js +476 -408
  296. package/dist/esm/limel-radio-button-group.entry.js +2 -2
  297. package/dist/esm/limel-radio-button.entry.js +3 -3
  298. package/dist/esm/limel-scroller.entry.js +178 -0
  299. package/dist/esm/limel-select.entry.js +17 -17
  300. package/dist/esm/limel-shortcut.entry.js +1 -1
  301. package/dist/esm/limel-slider.entry.js +18 -27
  302. package/dist/esm/limel-snackbar.entry.js +5 -5
  303. package/dist/esm/limel-split-button.entry.js +1 -1
  304. package/dist/esm/limel-switch.entry.js +3 -3
  305. package/dist/esm/limel-tab-bar.entry.js +66 -97
  306. package/dist/esm/limel-tab-panel.entry.js +12 -9
  307. package/dist/esm/limel-table.entry.js +527 -106
  308. package/dist/esm/limel-text-editor-link-menu.entry.js +15 -14
  309. package/dist/esm/limel-text-editor.entry.js +3 -3
  310. package/dist/esm/loader.js +3 -3
  311. package/dist/esm/{make-enter-clickable-BgTwPGeH.js → make-enter-clickable-CIf8aGSd.js} +19 -12
  312. package/dist/esm/markdown-exporter-DblYRMhY.js +6208 -0
  313. package/dist/esm/{markdown-parser-DrxxGLF5.js → markdown-parser-CAPDx7i8.js} +530 -813
  314. package/dist/esm/{moment-DQRNe8qq.js → moment-_DadZLWp.js} +1062 -833
  315. package/dist/esm/{random-string-JbKhhoXs.js → random-string-BrjD-ITe.js} +1 -0
  316. package/dist/esm/{render-list-component-cicbMp0l.js → render-list-component-J1IzNpbv.js} +3 -5
  317. package/dist/esm/{sv-CY-6-yEp.js → sv-DpsDSi7k.js} +31 -3
  318. package/dist/esm/{translations-DMtX4tTX.js → translations-Y4i8PVc9.js} +5 -8
  319. package/dist/lime-elements/index.esm.js +1 -1
  320. package/dist/lime-elements/lime-elements.esm.js +1 -1
  321. package/dist/lime-elements/{p-3916b316.entry.js → p-03cb609e.entry.js} +1 -1
  322. package/dist/lime-elements/p-05038bbb.entry.js +1 -0
  323. package/dist/lime-elements/{p-835149c4.entry.js → p-0d6925f4.entry.js} +1 -1
  324. package/dist/lime-elements/p-0e13ec91.entry.js +1 -0
  325. package/dist/lime-elements/p-159603cf.entry.js +159 -0
  326. package/dist/lime-elements/p-22fd1c87.entry.js +1 -0
  327. package/dist/lime-elements/p-24yUSW40.js +1 -0
  328. package/dist/lime-elements/{p-f717cd7a.entry.js → p-271662d4.entry.js} +1 -1
  329. package/dist/lime-elements/{p-c2a60508.entry.js → p-29c73bdf.entry.js} +1 -1
  330. package/dist/lime-elements/{p-deceda00.entry.js → p-2a902e77.entry.js} +1 -1
  331. package/dist/lime-elements/{p-d0cec424.entry.js → p-2b033dfa.entry.js} +1 -1
  332. package/dist/lime-elements/{p-acba5700.entry.js → p-2b2253d4.entry.js} +1 -1
  333. package/dist/lime-elements/p-2e33d2a4.entry.js +1 -0
  334. package/dist/lime-elements/p-31226737.entry.js +13 -0
  335. package/dist/lime-elements/{p-36ce4fbc.entry.js → p-31f314e6.entry.js} +1 -1
  336. package/dist/lime-elements/p-32a050a3.entry.js +1 -0
  337. package/dist/lime-elements/{p-3735111e.entry.js → p-3cfe0eaf.entry.js} +1 -1
  338. package/dist/lime-elements/{p-fbcd99a3.entry.js → p-3d3bdf45.entry.js} +1 -1
  339. package/dist/lime-elements/p-440a0b43.entry.js +1 -0
  340. package/dist/lime-elements/p-45c39fb4.entry.js +1 -0
  341. package/dist/lime-elements/p-45fde7a1.entry.js +1 -0
  342. package/dist/lime-elements/p-48afa6b7.entry.js +1 -0
  343. package/dist/lime-elements/{p-f04f7c8e.entry.js → p-4a88d365.entry.js} +1 -1
  344. package/dist/lime-elements/p-4b75e653.entry.js +1 -0
  345. package/dist/lime-elements/p-4dfd1962.entry.js +67 -0
  346. package/dist/lime-elements/{p-5698e493.entry.js → p-4ecbc9f4.entry.js} +1 -1
  347. package/dist/lime-elements/p-5386c629.entry.js +1 -0
  348. package/dist/lime-elements/{p-2e568c56.entry.js → p-54a9f48f.entry.js} +1 -1
  349. package/dist/lime-elements/{p-0fba64eb.entry.js → p-5df21b25.entry.js} +2 -2
  350. package/dist/lime-elements/{p-408c4dcb.entry.js → p-5f5c6e7d.entry.js} +1 -1
  351. package/dist/lime-elements/{p-052c3bc6.entry.js → p-681cb6de.entry.js} +1 -1
  352. package/dist/lime-elements/p-6adc7c88.entry.js +1 -0
  353. package/dist/lime-elements/{p-90df3e1b.entry.js → p-6d9961f7.entry.js} +1 -1
  354. package/dist/lime-elements/{p-74bd0c1a.entry.js → p-7b4351f6.entry.js} +1 -1
  355. package/dist/lime-elements/{p-3fd7e8aa.entry.js → p-7eab1341.entry.js} +1 -1
  356. package/dist/lime-elements/p-80153f45.entry.js +1 -0
  357. package/dist/lime-elements/{p-35fa1063.entry.js → p-85318636.entry.js} +1 -1
  358. package/dist/lime-elements/p-8988b7e1.entry.js +1 -0
  359. package/dist/lime-elements/{p-4ffbfc79.entry.js → p-8ac79ef5.entry.js} +1 -1
  360. package/dist/lime-elements/{p-4902fb3f.entry.js → p-9218fa6a.entry.js} +1 -1
  361. package/dist/lime-elements/p-92669910.entry.js +1 -0
  362. package/dist/lime-elements/{p-38b09f87.entry.js → p-9415411e.entry.js} +1 -1
  363. package/dist/lime-elements/p-95ccd9e7.entry.js +1 -0
  364. package/dist/lime-elements/{p-cb407bef.entry.js → p-9afa4721.entry.js} +1 -1
  365. package/dist/lime-elements/{p-54dcf46f.entry.js → p-9c8c2fb7.entry.js} +1 -1
  366. package/dist/lime-elements/{p-B8hoCfhT.js → p-B3YP9GOq.js} +1 -1
  367. package/dist/lime-elements/{p-Dgcw_h7C.js → p-BQoih_t0.js} +1 -1
  368. package/dist/lime-elements/{p-Bnc9lzk2.js → p-BU9IJqli.js} +1 -1
  369. package/dist/lime-elements/{p-CGVVDGcv.js → p-Bkvc4sus.js} +1 -1
  370. package/dist/lime-elements/p-Bvyt2bmV.js +1 -0
  371. package/dist/lime-elements/{p-BgTwPGeH.js → p-CIf8aGSd.js} +1 -1
  372. package/dist/lime-elements/{p-C3hECvXE.js → p-ChagAaNf.js} +1 -1
  373. package/dist/lime-elements/p-DTcfed02.js +3 -0
  374. package/dist/lime-elements/p-DWMfAkOE.js +1 -0
  375. package/dist/lime-elements/{p-BY85K-4J.js → p-DqQOawxc.js} +1 -1
  376. package/dist/lime-elements/p-I0PrvthC.js +7 -0
  377. package/dist/lime-elements/p-N9vxZMhe.js +1 -0
  378. package/dist/lime-elements/{p-DsDkl4Sy.js → p-ZDFVISfu.js} +3 -3
  379. package/dist/lime-elements/p-_UXAljNc.js +1 -0
  380. package/dist/lime-elements/p-a1c69e0c.entry.js +1 -0
  381. package/dist/lime-elements/{p-2daf0482.entry.js → p-a1d1470c.entry.js} +1 -1
  382. package/dist/lime-elements/{p-cef66e53.entry.js → p-a2e6f16e.entry.js} +1 -1
  383. package/dist/lime-elements/p-a550ba18.entry.js +1 -0
  384. package/dist/lime-elements/{p-d146feda.entry.js → p-a65eb58e.entry.js} +1 -1
  385. package/dist/lime-elements/p-ab8021b9.entry.js +1 -0
  386. package/dist/lime-elements/{p-03fb2603.entry.js → p-b22b52a1.entry.js} +1 -1
  387. package/dist/lime-elements/p-b6c0dc91.entry.js +23 -0
  388. package/dist/lime-elements/{p-c2a3ca7c.entry.js → p-b6d39581.entry.js} +1 -1
  389. package/dist/lime-elements/{p-8475a3b8.entry.js → p-c439b68b.entry.js} +1 -1
  390. package/dist/lime-elements/p-d19c7a3a.entry.js +1 -0
  391. package/dist/lime-elements/{p-7cbf50fc.entry.js → p-d1e5dd12.entry.js} +1 -1
  392. package/dist/lime-elements/p-de4719a6.entry.js +1 -0
  393. package/dist/lime-elements/{p-b81a2728.entry.js → p-e02e2c5f.entry.js} +1 -1
  394. package/dist/lime-elements/{p-d351b9ae.entry.js → p-e6a34047.entry.js} +1 -1
  395. package/dist/lime-elements/p-eF09GxA_.js +1 -0
  396. package/dist/lime-elements/{p-8fa9c9ea.entry.js → p-ee719744.entry.js} +1 -1
  397. package/dist/lime-elements/{p-d3bd4b80.entry.js → p-f04e2897.entry.js} +3 -3
  398. package/dist/lime-elements/p-f3cae1e7.entry.js +1 -0
  399. package/dist/lime-elements/{p-8115da75.entry.js → p-f4a0b1bc.entry.js} +1 -1
  400. package/dist/lime-elements/{p-4855dc9b.entry.js → p-f82f72e7.entry.js} +1 -1
  401. package/dist/lime-elements/{p-2d84ea04.entry.js → p-f97ec7a5.entry.js} +1 -1
  402. package/dist/lime-elements/{p-21109d9b.entry.js → p-fdd674fc.entry.js} +1 -1
  403. package/dist/lime-elements/{p-459eea13.entry.js → p-fdec09e9.entry.js} +1 -1
  404. package/dist/lime-elements/{p-2f57c3fa.entry.js → p-fe492ff3.entry.js} +1 -1
  405. package/dist/lime-elements/{p-65cded0e.entry.js → p-ff1a8b2e.entry.js} +1 -1
  406. package/dist/types/components/chip-set/chip-set-input-helpers.d.ts +1 -1
  407. package/dist/types/components/markdown/markdown-exporter.d.ts +15 -0
  408. package/dist/types/components/markdown/markdown.d.ts +19 -0
  409. package/dist/types/components/pagination/jump/pagination-jump.d.ts +1 -1
  410. package/dist/types/components/scroller/scroller.d.ts +67 -0
  411. package/dist/types/components/tab-bar/tab-bar.d.ts +13 -16
  412. package/dist/types/components.d.ts +138 -0
  413. package/dist/types/global/icon-cache/factory.d.ts +2 -2
  414. package/dist/types/global/shared-types/custom-element.types.d.ts +25 -0
  415. package/dist/types/global/translations.d.ts +2 -2
  416. package/package.json +18 -12
  417. package/dist/lime-elements/p-05afb316.entry.js +0 -1
  418. package/dist/lime-elements/p-10594468.entry.js +0 -1
  419. package/dist/lime-elements/p-19344984.entry.js +0 -13
  420. package/dist/lime-elements/p-1e93473a.entry.js +0 -1
  421. package/dist/lime-elements/p-26c5c6b9.entry.js +0 -1
  422. package/dist/lime-elements/p-452b9b01.entry.js +0 -1
  423. package/dist/lime-elements/p-4aae63bd.entry.js +0 -1
  424. package/dist/lime-elements/p-507cc8a1.entry.js +0 -159
  425. package/dist/lime-elements/p-531b6a64.entry.js +0 -1
  426. package/dist/lime-elements/p-54793c06.entry.js +0 -1
  427. package/dist/lime-elements/p-5d974afa.entry.js +0 -1
  428. package/dist/lime-elements/p-66b125f2.entry.js +0 -1
  429. package/dist/lime-elements/p-6d5b23ad.entry.js +0 -1
  430. package/dist/lime-elements/p-7e212fa7.entry.js +0 -1
  431. package/dist/lime-elements/p-82696d24.entry.js +0 -1
  432. package/dist/lime-elements/p-9ac39039.entry.js +0 -1
  433. package/dist/lime-elements/p-9b631363.entry.js +0 -1
  434. package/dist/lime-elements/p-C9xHOCE_.js +0 -7
  435. package/dist/lime-elements/p-DMNtoJ8I.js +0 -1
  436. package/dist/lime-elements/p-DQJU9gzh.js +0 -1
  437. package/dist/lime-elements/p-DpJgXIWf.js +0 -1
  438. package/dist/lime-elements/p-a1de9bbe.entry.js +0 -1
  439. package/dist/lime-elements/p-a71f6e87.entry.js +0 -67
  440. package/dist/lime-elements/p-bd7b3f8e.entry.js +0 -1
  441. package/dist/lime-elements/p-be8610ff.entry.js +0 -1
  442. package/dist/lime-elements/p-c72e5007.entry.js +0 -1
  443. package/dist/lime-elements/p-cafec335.entry.js +0 -1
  444. package/dist/lime-elements/p-d6dadc61.entry.js +0 -1
  445. package/dist/lime-elements/p-d93b7b9f.entry.js +0 -23
  446. package/dist/lime-elements/p-pk5KIdKH.js +0 -1
  447. package/dist/lime-elements/p-u_sd2HMb.js +0 -1
  448. package/dist/lime-elements/p-zo6O9LC9.js +0 -3
  449. /package/dist/lime-elements/{p-JbKhhoXs.js → p-BrjD-ITe.js} +0 -0
  450. /package/dist/lime-elements/{p-BxrRWYts.js → p-DjmlD0Mw.js} +0 -0
  451. /package/dist/lime-elements/{p-BTSG--2-.js → p-Dv2HOgWN.js} +0 -0
@@ -91,7 +91,9 @@ export class ProsemirrorAdapter {
91
91
  .map(this.getTranslatedItem)
92
92
  .map((item) => {
93
93
  if (isItem(item)) {
94
- return Object.assign(Object.assign({}, item), { selected: activeTypes[item.value], disabled: !allowedTypes[item.value] });
94
+ return Object.assign(Object.assign({}, item), { selected: activeTypes[item.value],
95
+ // eslint-disable-next-line unicorn/no-computed-property-existence-check -- reads a boolean value, not key existence
96
+ disabled: !allowedTypes[item.value] });
95
97
  }
96
98
  return item;
97
99
  });
@@ -148,35 +150,38 @@ export class ProsemirrorAdapter {
148
150
  };
149
151
  this.handleFocus = () => {
150
152
  var _a;
151
- if (!this.disabled) {
152
- (_a = this.view) === null || _a === void 0 ? void 0 : _a.focus();
153
- // Workaround: On some focus interactions (especially clicking the first line and the last line),
154
- // ProseMirror does not dispatch a transaction or update the selection. This can cause
155
- // the cursor to fall back to the end of the document instead of placing it where the user clicked.
156
- //
157
- // To detect this, we wait one tick after focus. If no transaction has fired by then,
158
- // we assume the selection is unresolved and manually move the cursor to the last clicked position.
159
- //
160
- // The clicked position is only meaningful for the focus event that the
161
- // click itself triggered, so it is consumed here and cleared on blur.
162
- // Focus regained without a click (e.g. switching back to the window)
163
- // must leave the selection untouched.
164
- this.transactionFired = false;
165
- this.focusRestoreTimeout = setTimeout(() => {
166
- const clickedPos = this.lastClickedPos;
167
- this.lastClickedPos = null;
168
- if (!this.transactionFired &&
169
- clickedPos !== null &&
170
- clickedPos <= this.view.state.doc.content.size) {
171
- const { doc, tr } = this.view.state;
172
- const resolvedPos = doc.resolve(clickedPos);
173
- const selection = Selection.near(resolvedPos);
174
- tr.setMeta('pointer', true);
175
- this.view.dispatch(tr.setSelection(selection));
176
- }
177
- }, 0);
153
+ if (this.disabled) {
154
+ return;
178
155
  }
156
+ (_a = this.view) === null || _a === void 0 ? void 0 : _a.focus();
157
+ // Workaround: On some focus interactions (especially clicking the first line and the last line),
158
+ // ProseMirror does not dispatch a transaction or update the selection. This can cause
159
+ // the cursor to fall back to the end of the document instead of placing it where the user clicked.
160
+ //
161
+ // To detect this, we wait one tick after focus. If no transaction has fired by then,
162
+ // we assume the selection is unresolved and manually move the cursor to the last clicked position.
163
+ //
164
+ // The clicked position is only meaningful for the focus event that the
165
+ // click itself triggered, so it is consumed here and cleared on blur.
166
+ // Focus regained without a click (e.g. switching back to the window)
167
+ // must leave the selection untouched.
168
+ this.transactionFired = false;
169
+ this.focusRestoreTimeout = setTimeout(() => {
170
+ const clickedPos = this.lastClickedPos;
171
+ this.lastClickedPos = null;
172
+ if (this.transactionFired ||
173
+ clickedPos === null ||
174
+ clickedPos > this.view.state.doc.content.size) {
175
+ return;
176
+ }
177
+ const { doc, tr } = this.view.state;
178
+ const resolvedPos = doc.resolve(clickedPos);
179
+ const selection = Selection.near(resolvedPos);
180
+ tr.setMeta('pointer', true);
181
+ this.view.dispatch(tr.setSelection(selection));
182
+ }, 0);
179
183
  };
184
+ // eslint-disable-next-line unicorn/prefer-default-parameters -- a default parameter would not cover an empty string
180
185
  this.handleNewLinkSelection = (text, href) => {
181
186
  this.link.text = text;
182
187
  this.link.href = href || 'https://';
@@ -303,7 +308,7 @@ export class ProsemirrorAdapter {
303
308
  (_e = this.view) === null || _e === void 0 ? void 0 : _e.destroy();
304
309
  }
305
310
  render() {
306
- return (h(Host, { key: '19a2071a0e50b4c9e95006ae12e44ec14df7460b', onFocus: this.handleFocus }, h("div", { key: 'f1215347c7eaf79cd16c9219c124ace3ebb22fc7', id: "editor" }), this.renderToolbar(), this.renderLinkMenu()));
311
+ return (h(Host, { key: '16ef71481dea1fcefa1735e5a6350f47bf1d78ca', onFocus: this.handleFocus }, h("div", { key: '3b6598d8efd561afb6191d3d650f3a32e86f6904', id: "editor" }), this.renderToolbar(), this.renderLinkMenu()));
307
312
  }
308
313
  renderToolbar() {
309
314
  if (this.actionBarItems.length === 0 || this.ui === 'no-toolbar') {
@@ -422,17 +427,18 @@ export class ProsemirrorAdapter {
422
427
  }
423
428
  }
424
429
  metadataEmitter(metadata) {
425
- if (hasMetadataChanged(this.metadata, metadata)) {
426
- this.removeImagesFromCache(this.metadata, metadata);
427
- this.metadata = metadata;
428
- this.metadataChange.emit(metadata);
430
+ if (!hasMetadataChanged(this.metadata, metadata)) {
431
+ return;
429
432
  }
433
+ this.removeImagesFromCache(this.metadata, metadata);
434
+ this.metadata = metadata;
435
+ this.metadataChange.emit(metadata);
430
436
  }
431
437
  // When the deprecated metadata events are removed, this cache eviction
432
438
  // must be kept: re-derive the removed fileInfoIds from the node attrs so
433
439
  // pasted images still get evicted from `imageCache` when deleted.
434
440
  removeImagesFromCache(oldMetadata, newMetadata) {
435
- const removedImages = oldMetadata.images.filter((oldImage) => !newMetadata.images.some((newImage) => newImage.fileInfoId === oldImage.fileInfoId));
441
+ const removedImages = oldMetadata.images.filter((oldImage) => newMetadata.images.every((newImage) => newImage.fileInfoId !== oldImage.fileInfoId));
436
442
  for (const image of removedImages) {
437
443
  imageCache.delete(image.fileInfoId);
438
444
  this.imageRemoved.emit(image);
@@ -176,7 +176,7 @@ export class TextEditor {
176
176
  await ((_a = this.adapterElement) === null || _a === void 0 ? void 0 : _a.clear());
177
177
  }
178
178
  render() {
179
- return (h(Host, { key: '2e0b7080b8d75fc35a24a5da3bc6838da2637fc1' }, h("limel-notched-outline", { key: '2918c3a68d3ebc228ee1bbf7cced3df5278fa5cb', labelId: this.editorId, label: this.label, required: this.required, invalid: this.invalid, disabled: this.disabled, readonly: this.readonly, hasValue: !!this.value, hasFloatingLabel: true }, this.renderEditor(), this.renderPlaceholder()), this.renderHelperLine()));
179
+ return (h(Host, { key: '67cb756a0010effb1b4cbfeeb56e50cd86cbfbe0' }, h("limel-notched-outline", { key: '9b3f5891318c69d557c0cb7af7d19d8f14e0ff9c', labelId: this.editorId, label: this.label, required: this.required, invalid: this.invalid, disabled: this.disabled, readonly: this.readonly, hasValue: !!this.value, hasFloatingLabel: true }, this.renderEditor(), this.renderPlaceholder()), this.renderHelperLine()));
180
180
  }
181
181
  renderEditor() {
182
182
  if (this.readonly) {
@@ -103,7 +103,7 @@ function areFrequencyMapsEqual(map1, map2) {
103
103
  if (map1.size !== map2.size) {
104
104
  return false;
105
105
  }
106
- for (const [key, count] of map1.entries()) {
106
+ for (const [key, count] of map1) {
107
107
  if (map2.get(key) !== count) {
108
108
  return false;
109
109
  }
@@ -16,9 +16,9 @@ export const createNodeSpec = (config) => {
16
16
  tag: tag,
17
17
  getAttrs: (dom) => {
18
18
  const attributes = {};
19
- // eslint-disable-next-line unicorn/no-array-for-each
20
- config.attributes.forEach((attribute) => (attributes[attribute] =
21
- dom.getAttribute(attribute)));
19
+ for (const attribute of config.attributes) {
20
+ attributes[attribute] = dom.getAttribute(attribute);
21
+ }
22
22
  return attributes;
23
23
  },
24
24
  },
@@ -15,7 +15,7 @@ export class TooltipContent {
15
15
  const style = this.maxlength
16
16
  ? { '--tooltip-max-width-of-text': `${this.maxlength}ch` }
17
17
  : undefined;
18
- return (h(Host, { key: '2761aea2a0cc3ccc7796b7dab93f2375656603f4', class: { 'has-column-layout': isLabelsTextLong }, style: style }, h("div", { key: '2bfe8a9766ff7ab2b9a5211b08107b7f2f28ef7b', class: "label" }, this.label), this.renderHelperLabel(), this.renderHotkey()));
18
+ return (h(Host, { key: 'e8299e2c990753eafd08af063a7828a11ea77cec', class: { 'has-column-layout': isLabelsTextLong }, style: style }, h("div", { key: '634f141ede25c9a3faa7ca7ce4f79b59c3c7ec8d', class: "label" }, this.label), this.renderHelperLabel(), this.renderHotkey()));
19
19
  }
20
20
  renderHelperLabel() {
21
21
  if (!this.helperLabel) {
@@ -68,10 +68,10 @@ export class Tooltip {
68
68
  }
69
69
  render() {
70
70
  const tooltipZIndex = getComputedStyle(this.host).getPropertyValue('--tooltip-z-index');
71
- return (h("div", { key: 'cdc5602abcc2911c6429e386f37c6dc1e2100cd8', class: "trigger-anchor" }, h("limel-portal", { key: 'f61db13bb5bc3657e330c7475f0c7bd2e7eb9b2f', openDirection: this.openDirection, visible: this.open, containerId: this.portalId, containerStyle: {
71
+ return (h("div", { key: '970ce406a2209065f744d124c28d486dfa169164', class: "trigger-anchor" }, h("limel-portal", { key: 'bfe825d0261a452c207077e8fe37ddce5b10d477', openDirection: this.openDirection, visible: this.open, containerId: this.portalId, containerStyle: {
72
72
  'z-index': tooltipZIndex,
73
73
  'pointer-events': 'none',
74
- }, anchor: this.ownerElement }, h("limel-tooltip-content", { key: 'f9acf5955b68639c3b56fba75977ddd783e97cd0', label: this.label, helperLabel: this.helperLabel, hotkey: this.hotkey, maxlength: this.maxlength, role: "tooltip", "aria-hidden": !this.open, id: this.tooltipId }))));
74
+ }, anchor: this.ownerElement }, h("limel-tooltip-content", { key: '07003cc2b868b8320b97e4a75f3cb2e71b50efb9', label: this.label, helperLabel: this.helperLabel, hotkey: this.hotkey, maxlength: this.maxlength, role: "tooltip", "aria-hidden": !this.open, id: this.tooltipId }))));
75
75
  }
76
76
  setOwnerAriaDescribedby() {
77
77
  var _a;
@@ -10,6 +10,5 @@ function createIconCache() {
10
10
  return new InMemoryIconCache();
11
11
  }
12
12
  }
13
- export default (() => {
14
- return createIconCache();
15
- })();
13
+ const iconCache = createIconCache();
14
+ export default iconCache;
@@ -17,6 +17,7 @@ export class InMemoryIconCache {
17
17
  * @returns SVG markup
18
18
  */
19
19
  async get(name, path = '') {
20
+ // eslint-disable-next-line unicorn/no-computed-property-existence-check -- truthiness check, not existence: a falsy entry must be refetched
20
21
  if (!this.cache[name]) {
21
22
  this.cache[name] = await this.getIcon(name, path);
22
23
  }
@@ -27,6 +28,7 @@ export class InMemoryIconCache {
27
28
  */
28
29
  getIcon(name, path) {
29
30
  return new Promise((resolve) => {
31
+ // eslint-disable-next-line unicorn/no-computed-property-existence-check -- truthiness check, not existence: entries are reset to `null`
30
32
  if (!this.resolveFunctions[name]) {
31
33
  this.resolveFunctions[name] = [];
32
34
  this.fetchData(name, path);
@@ -45,6 +45,4 @@ export class Translations {
45
45
  }
46
46
  }
47
47
  const translations = new Translations();
48
- export default (() => {
49
- return translations;
50
- })();
48
+ export default translations;
@@ -87,10 +87,10 @@ Vous pouvez laisser les images bloquées (l'e-mail peut sembler incomplet) ou le
87
87
  'code-diff.table-label': 'Comparaison de code',
88
88
  'code-diff.no-differences': 'Aucune différence',
89
89
  'code-diff.no-differences-found': 'Aucune différence trouvée',
90
- 'code-diff.copy-old-version': 'Copier l\u2019ancienne version dans le presse-papiers',
90
+ 'code-diff.copy-old-version': 'Copier l\u{2019}ancienne version dans le presse-papiers',
91
91
  'code-diff.copied': 'Copié !',
92
92
  'code-diff.copied-to-clipboard': 'Copié dans le presse-papiers',
93
- 'code-diff.copy-change': 'Copier l\u2019ancienne version de cette modification',
93
+ 'code-diff.copy-change': 'Copier l\u{2019}ancienne version de cette modification',
94
94
  'code-diff.search': 'Rechercher dans les lignes supprimées',
95
95
  'code-diff.previous-match': 'Correspondance précédente',
96
96
  'code-diff.next-match': 'Correspondance suivante',
@@ -113,7 +113,7 @@ Vous pouvez laisser les images bloquées (l'e-mail peut sembler incomplet) ou le
113
113
  'code-diff.old-heading': 'Original',
114
114
  'code-diff.new-heading': 'Modifié',
115
115
  'code-diff.diff-summary': 'Diff : { parts }. Utilisez les touches fléchées pour naviguer.',
116
- 'profile-picture.remove': 'Supprimer l\u2019image sélectionnée',
116
+ 'profile-picture.remove': 'Supprimer l\u{2019}image sélectionnée',
117
117
  'profile-picture.unsupported-preview.title': "Format d'image non pris en charge",
118
118
  'profile-picture.unsupported-preview.description': "Nous ne pouvons pas afficher l'image sélectionnée dans ce navigateur. Veuillez sélectionner un autre fichier image.",
119
119
  'picker.results-matching': 'Résultats correspondant à « { query } »',
@@ -40,7 +40,7 @@ function evaluateAndMaybeStrip(el) {
40
40
  }
41
41
  function isInheritKeyword(value) {
42
42
  const v = value.trim().toLowerCase();
43
- return v === 'inherit' || v === 'currentcolor' || v === 'unset';
43
+ return ['inherit', 'currentcolor', 'unset'].includes(v);
44
44
  }
45
45
  function resolveBackground(start) {
46
46
  let current = start;
@@ -34,7 +34,7 @@ export function isTypeAccepted(file, accept) {
34
34
  return true;
35
35
  }
36
36
  if (acceptedType.endsWith('/*')) {
37
- const baseType = acceptedType.split('/')[0];
37
+ const baseType = acceptedType.split('/', 1)[0];
38
38
  return file.contentType.startsWith(`${baseType}/`);
39
39
  }
40
40
  if (acceptedType.startsWith('.')) {
@@ -18,10 +18,7 @@
18
18
  * @returns formatted size string
19
19
  */
20
20
  export function formatBytes(bytes, decimals = 1) {
21
- if (bytes == null || Number.isNaN(bytes)) {
22
- return '';
23
- }
24
- if (bytes < 0) {
21
+ if (bytes == null || Number.isNaN(bytes) || bytes < 0) {
25
22
  return '';
26
23
  }
27
24
  if (bytes === 0) {
@@ -36,6 +36,7 @@ const KEY_ALIASES = {
36
36
  right: 'arrowright',
37
37
  spacebar: 'space',
38
38
  };
39
+ // eslint-disable-next-line unicorn/prefer-default-parameters -- a default parameter would not cover `null`
39
40
  export const tokenizeHotkeyString = (hotkey) => {
40
41
  var _a;
41
42
  const raw = (hotkey !== null && hotkey !== void 0 ? hotkey : '').trim();
@@ -283,6 +283,7 @@ async function loadImageElement(file) {
283
283
  const img = new Image();
284
284
  img.decoding = 'sync';
285
285
  img.src = url;
286
+ // eslint-disable-next-line unicorn/prefer-await -- swallows the rejection inline; a try/catch would need an empty block
286
287
  await ((_a = img.decode) === null || _a === void 0 ? void 0 : _a.call(img).catch(() => undefined));
287
288
  if (!img.complete) {
288
289
  await new Promise((resolve, reject) => {
@@ -20,5 +20,5 @@ export function getPrimarySubtag(language) {
20
20
  if (typeof language !== 'string') {
21
21
  return '';
22
22
  }
23
- return language.toLowerCase().split('-')[0];
23
+ return language.toLowerCase().split('-', 1)[0];
24
24
  }
@@ -10,10 +10,11 @@ class EnterClickable {
10
10
  }
11
11
  };
12
12
  this.handleKeyUp = (event) => {
13
- if (event.key === 'Enter' && this.isActive) {
14
- this.isActive = false;
15
- this.hasJustReleasedEnter = true;
13
+ if (!(event.key === 'Enter' && this.isActive)) {
14
+ return;
16
15
  }
16
+ this.isActive = false;
17
+ this.hasJustReleasedEnter = true;
17
18
  };
18
19
  this.handleBlur = () => {
19
20
  this.isActive = false;
@@ -40,13 +41,17 @@ class EnterClickable {
40
41
  this.element.addEventListener('keydown', this.callbacks.keydownHandler);
41
42
  this.element.addEventListener('keyup', this.callbacks.keyupHandler);
42
43
  this.element.addEventListener('blur', this.callbacks.blurHandler);
43
- this.element.addEventListener('click', this.callbacks.clickHandler, true);
44
+ this.element.addEventListener('click', this.callbacks.clickHandler, {
45
+ capture: true,
46
+ });
44
47
  }
45
48
  disable() {
46
49
  this.element.removeEventListener('keydown', this.callbacks.keydownHandler);
47
50
  this.element.removeEventListener('keyup', this.callbacks.keyupHandler);
48
51
  this.element.removeEventListener('blur', this.callbacks.blurHandler);
49
- this.element.removeEventListener('click', this.callbacks.clickHandler, true);
52
+ this.element.removeEventListener('click', this.callbacks.clickHandler, {
53
+ capture: true,
54
+ });
50
55
  }
51
56
  }
52
57
  /**
@@ -69,11 +74,12 @@ class EnterClickable {
69
74
  * @param element - The clickable element
70
75
  */
71
76
  export function makeEnterClickable(element) {
72
- if (!eventHandlers.has(element)) {
73
- const enterClickable = new EnterClickable(element);
74
- enterClickable.enable();
75
- eventHandlers.set(element, enterClickable);
77
+ if (eventHandlers.has(element)) {
78
+ return;
76
79
  }
80
+ const enterClickable = new EnterClickable(element);
81
+ enterClickable.enable();
82
+ eventHandlers.set(element, enterClickable);
77
83
  }
78
84
  /**
79
85
  * Removes the keyboard-enter click override behavior from an element.
@@ -84,8 +90,9 @@ export function makeEnterClickable(element) {
84
90
  */
85
91
  export function removeEnterClickable(element) {
86
92
  const enterClickable = eventHandlers.get(element);
87
- if (enterClickable) {
88
- enterClickable.disable();
89
- eventHandlers.delete(element);
93
+ if (!enterClickable) {
94
+ return;
90
95
  }
96
+ enterClickable.disable();
97
+ eventHandlers.delete(element);
91
98
  }
@@ -1,6 +1,7 @@
1
1
  export const createRandomString = () => {
2
2
  var _a;
3
3
  if (!('crypto' in window) ||
4
+ // eslint-disable-next-line unicorn/no-optional-chaining-on-undeclared-variable -- `'crypto' in window` above already requires `window`; the `?.` guards a nullish `window.crypto`
4
5
  typeof ((_a = window.crypto) === null || _a === void 0 ? void 0 : _a.randomUUID) !== 'function') {
5
6
  return legacyCreateRandomString();
6
7
  }
@@ -18,10 +18,8 @@ import { h } from "@stencil/core";
18
18
  * merged with any consumer-supplied `class` in `props`
19
19
  */
20
20
  export function renderListComponent(component, extraClass) {
21
- if (!(component === null || component === void 0 ? void 0 : component.name)) {
22
- return;
23
- }
24
- if (!component.name.includes('-')) {
21
+ var _a;
22
+ if (!((_a = component === null || component === void 0 ? void 0 : component.name) === null || _a === void 0 ? void 0 : _a.includes('-'))) {
25
23
  return;
26
24
  }
27
25
  const Tag = component.name;
@@ -40,7 +40,7 @@ function evaluateAndMaybeStrip(el) {
40
40
  }
41
41
  function isInheritKeyword(value) {
42
42
  const v = value.trim().toLowerCase();
43
- return v === 'inherit' || v === 'currentcolor' || v === 'unset';
43
+ return ['inherit', 'currentcolor', 'unset'].includes(v);
44
44
  }
45
45
  function resolveBackground(start) {
46
46
  let current = start;
@@ -1,7 +1,6 @@
1
- import { h } from './index-Bnc9lzk2.js';
1
+ import { h } from './index-BU9IJqli.js';
2
2
 
3
3
  const CheckboxTemplate = (props) => {
4
- const inputProps = {};
5
4
  if (props.readonly) {
6
5
  let icon = 'minus';
7
6
  if (props.checked) {
@@ -15,6 +14,7 @@ const CheckboxTemplate = (props) => {
15
14
  h(HelperText, { text: props.helperText, helperTextId: props.helperTextId, invalid: props.invalid }),
16
15
  ];
17
16
  }
17
+ const inputProps = {};
18
18
  if (props.indeterminate) {
19
19
  inputProps['data-indeterminate'] = 'true';
20
20
  inputProps['aria-checked'] = 'mixed';
@@ -35,7 +35,7 @@ function isTypeAccepted(file, accept) {
35
35
  return true;
36
36
  }
37
37
  if (acceptedType.endsWith('/*')) {
38
- const baseType = acceptedType.split('/')[0];
38
+ const baseType = acceptedType.split('/', 1)[0];
39
39
  return file.contentType.startsWith(`${baseType}/`);
40
40
  }
41
41
  if (acceptedType.startsWith('.')) {
@@ -18,10 +18,7 @@
18
18
  * @returns formatted size string
19
19
  */
20
20
  function formatBytes(bytes, decimals = 1) {
21
- if (bytes == null || Number.isNaN(bytes)) {
22
- return '';
23
- }
24
- if (bytes < 0) {
21
+ if (bytes == null || Number.isNaN(bytes) || bytes < 0) {
25
22
  return '';
26
23
  }
27
24
  if (bytes === 0) {
@@ -36,6 +36,7 @@ const KEY_ALIASES = {
36
36
  right: 'arrowright',
37
37
  spacebar: 'space',
38
38
  };
39
+ // eslint-disable-next-line unicorn/prefer-default-parameters -- a default parameter would not cover `null`
39
40
  const tokenizeHotkeyString = (hotkey) => {
40
41
  var _a;
41
42
  const raw = (hotkey !== null && hotkey !== void 0 ? hotkey : '').trim();
@@ -283,6 +283,7 @@ async function loadImageElement(file) {
283
283
  const img = new Image();
284
284
  img.decoding = 'sync';
285
285
  img.src = url;
286
+ // eslint-disable-next-line unicorn/prefer-await -- swallows the rejection inline; a try/catch would need an empty block
286
287
  await ((_a = img.decode) === null || _a === void 0 ? void 0 : _a.call(img).catch(() => undefined));
287
288
  if (!img.complete) {
288
289
  await new Promise((resolve, reject) => {
@@ -1,4 +1,4 @@
1
- import { h } from './index-Bnc9lzk2.js';
1
+ import { h } from './index-BU9IJqli.js';
2
2
 
3
3
  /**
4
4
  * Renders an `Image` as a plain `<img>` element. Centralises the