@limetech/lime-elements 40.6.0 → 40.6.2

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 (457) hide show
  1. package/CHANGELOG.md +15 -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/{component-CFk7Dfoi.js → component-Cz24PdGy.js} +3 -3
  5. package/dist/cjs/{component-BrNWuGdj.js → component-DNiVfYHV.js} +1 -1
  6. package/dist/cjs/{component-y8swlNNR.js → component-GW2n79GH.js} +1 -1
  7. package/dist/cjs/{component-UyqdiWGc.js → component-xiw46M1b.js} +1 -1
  8. package/dist/cjs/{files-DI4jItxi.js → files-DpGigQ8k.js} +1 -1
  9. package/dist/cjs/{format-bytes-CpUKKU86.js → format-bytes-WTHVI718.js} +1 -4
  10. package/dist/cjs/{hotkeys-BtR8uxvl.js → hotkeys-D761KWnZ.js} +1 -0
  11. package/dist/cjs/{image-resize-CG2fitJT.js → image-resize-JlRLB97I.js} +1 -0
  12. package/dist/cjs/{image.template-DY7qwbuy.js → image.template-DlF-f23b.js} +1 -1
  13. package/dist/cjs/{index--B6-r0uo.js → index-BlsqxTB1.js} +1 -7
  14. package/dist/cjs/index.cjs.js +1 -1
  15. package/dist/cjs/{keycodes-k-EdzcMX.js → keycodes-BQ_AERli.js} +4 -0
  16. package/dist/cjs/{language-CaqPKPyW.js → language-v-MMS6ym.js} +1 -1
  17. package/dist/cjs/lime-elements.cjs.js +2 -2
  18. package/dist/cjs/limel-3d-hover-effect-glow.cjs.entry.js +2 -2
  19. package/dist/cjs/limel-action-bar_3.cjs.entry.js +20 -18
  20. package/dist/cjs/limel-ai-avatar.cjs.entry.js +5 -5
  21. package/dist/cjs/limel-badge.cjs.entry.js +3 -3
  22. package/dist/cjs/limel-banner.cjs.entry.js +2 -2
  23. package/dist/cjs/limel-breadcrumbs_6.cjs.entry.js +86 -86
  24. package/dist/cjs/limel-button-group.cjs.entry.js +3 -3
  25. package/dist/cjs/limel-button.cjs.entry.js +4 -4
  26. package/dist/cjs/limel-callout.cjs.entry.js +6 -6
  27. package/dist/cjs/limel-card.cjs.entry.js +8 -7
  28. package/dist/cjs/limel-chart.cjs.entry.js +5 -5
  29. package/dist/cjs/limel-checkbox.cjs.entry.js +12 -10
  30. package/dist/cjs/limel-chip-set.cjs.entry.js +35 -44
  31. package/dist/cjs/limel-chip_2.cjs.entry.js +10 -10
  32. package/dist/cjs/limel-circular-progress.cjs.entry.js +2 -2
  33. package/dist/cjs/limel-code-diff.cjs.entry.js +25 -28
  34. package/dist/cjs/limel-code-editor.cjs.entry.js +17 -12
  35. package/dist/cjs/limel-collapsible-section.cjs.entry.js +8 -8
  36. package/dist/cjs/limel-color-picker-palette.cjs.entry.js +3 -3
  37. package/dist/cjs/limel-color-picker.cjs.entry.js +6 -5
  38. package/dist/cjs/limel-config.cjs.entry.js +3 -3
  39. package/dist/cjs/limel-date-picker.cjs.entry.js +12 -15
  40. package/dist/cjs/limel-dialog.cjs.entry.js +8 -11
  41. package/dist/cjs/limel-dock-button.cjs.entry.js +6 -11
  42. package/dist/cjs/limel-dock.cjs.entry.js +3 -3
  43. package/dist/cjs/limel-drag-handle.cjs.entry.js +6 -6
  44. package/dist/cjs/limel-dynamic-label.cjs.entry.js +1 -1
  45. package/dist/cjs/limel-email-viewer.cjs.entry.js +11 -17
  46. package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +11 -12
  47. package/dist/cjs/limel-file-viewer.cjs.entry.js +1098 -1146
  48. package/dist/cjs/limel-file.cjs.entry.js +17 -16
  49. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +100 -94
  50. package/dist/cjs/limel-flex-container.cjs.entry.js +2 -2
  51. package/dist/cjs/limel-form.cjs.entry.js +65 -50
  52. package/dist/cjs/limel-grid.cjs.entry.js +2 -2
  53. package/dist/cjs/limel-header.cjs.entry.js +2 -2
  54. package/dist/cjs/limel-help-content.cjs.entry.js +2 -2
  55. package/dist/cjs/limel-help.cjs.entry.js +3 -3
  56. package/dist/cjs/limel-helper-line_3.cjs.entry.js +14 -16
  57. package/dist/cjs/limel-hotkey_4.cjs.entry.js +23 -23
  58. package/dist/cjs/limel-icon-button.cjs.entry.js +4 -4
  59. package/dist/cjs/limel-icon.cjs.entry.js +15 -13
  60. package/dist/cjs/limel-info-tile.cjs.entry.js +10 -10
  61. package/dist/cjs/limel-list-item.cjs.entry.js +10 -10
  62. package/dist/cjs/limel-markdown.cjs.entry.js +25 -22
  63. package/dist/cjs/limel-masonry-layout.cjs.entry.js +6 -5
  64. package/dist/cjs/limel-menu-item-meta.cjs.entry.js +3 -3
  65. package/dist/cjs/limel-pagination-jump.cjs.entry.js +18 -16
  66. package/dist/cjs/limel-pagination.cjs.entry.js +10 -9
  67. package/dist/cjs/limel-picker.cjs.entry.js +32 -30
  68. package/dist/cjs/limel-popover_2.cjs.entry.js +26 -22
  69. package/dist/cjs/limel-profile-picture.cjs.entry.js +12 -11
  70. package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
  71. package/dist/cjs/limel-progress-flow.cjs.entry.js +11 -10
  72. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +475 -407
  73. package/dist/cjs/limel-radio-button-group.cjs.entry.js +2 -2
  74. package/dist/cjs/limel-radio-button.cjs.entry.js +3 -3
  75. package/dist/cjs/limel-scroller.cjs.entry.js +180 -0
  76. package/dist/cjs/limel-select.cjs.entry.js +20 -20
  77. package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
  78. package/dist/cjs/limel-slider.cjs.entry.js +18 -27
  79. package/dist/cjs/limel-snackbar.cjs.entry.js +5 -5
  80. package/dist/cjs/limel-split-button.cjs.entry.js +1 -1
  81. package/dist/cjs/limel-switch.cjs.entry.js +3 -3
  82. package/dist/cjs/limel-tab-bar.cjs.entry.js +235 -2036
  83. package/dist/cjs/limel-tab-panel.cjs.entry.js +12 -9
  84. package/dist/cjs/limel-table.cjs.entry.js +527 -106
  85. package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +16 -15
  86. package/dist/cjs/limel-text-editor.cjs.entry.js +3 -3
  87. package/dist/cjs/loader.cjs.js +2 -2
  88. package/dist/cjs/{make-enter-clickable-NuTMC9MU.js → make-enter-clickable-BZHEWIJD.js} +19 -12
  89. package/dist/cjs/{markdown-exporter-9p7d3Q76.js → markdown-exporter-C-UW43FF.js} +1 -1
  90. package/dist/cjs/{markdown-parser-Cgv5Y9Z4.js → markdown-parser-ssDij8_l.js} +24 -22
  91. package/dist/cjs/{moment-CqRdiK10.js → moment-Cfsz2WF1.js} +1062 -833
  92. package/dist/cjs/{ponyfill-BgIFyUG5.js → ponyfill-CHp7Zocr.js} +0 -1
  93. package/dist/cjs/{random-string-BTzDB2ee.js → random-string-CFCtFh5l.js} +1 -0
  94. package/dist/cjs/{render-list-component-5ZKWpCnM.js → render-list-component-BtAliHQp.js} +3 -5
  95. package/dist/cjs/{sv-BSR4W58y.js → sv-Co78RX70.js} +31 -3
  96. package/dist/cjs/{translations-DFFpR6AZ.js → translations-CNTWud2a.js} +5 -8
  97. package/dist/collection/collection-manifest.json +1 -0
  98. package/dist/collection/components/3d-hover-effect-glow/3d-hover-effect-glow.js +1 -1
  99. package/dist/collection/components/action-bar/action-bar-item/action-bar-item.js +8 -7
  100. package/dist/collection/components/action-bar/action-bar-item/action-bar-overflow-menu.js +1 -1
  101. package/dist/collection/components/action-bar/action-bar.js +6 -5
  102. package/dist/collection/components/ai-avatar/ai-avatar.js +1 -1
  103. package/dist/collection/components/badge/badge.js +2 -2
  104. package/dist/collection/components/banner/banner.js +1 -1
  105. package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -2
  106. package/dist/collection/components/button/button.js +2 -2
  107. package/dist/collection/components/button-group/button-group.js +1 -1
  108. package/dist/collection/components/callout/callout.js +1 -1
  109. package/dist/collection/components/card/card.js +6 -5
  110. package/dist/collection/components/checkbox/checkbox.js +9 -7
  111. package/dist/collection/components/checkbox/checkbox.template.js +1 -1
  112. package/dist/collection/components/chip/chip.js +1 -1
  113. package/dist/collection/components/chip-set/chip-set-input-helpers.js +18 -21
  114. package/dist/collection/components/chip-set/chip-set.js +7 -13
  115. package/dist/collection/components/circular-progress/circular-progress.js +1 -1
  116. package/dist/collection/components/code-diff/code-diff.js +19 -22
  117. package/dist/collection/components/code-diff/diff-engine.js +2 -2
  118. package/dist/collection/components/code-editor/code-editor.js +8 -3
  119. package/dist/collection/components/collapsible-section/collapsible-section.js +1 -1
  120. package/dist/collection/components/color-picker/color-picker-palette.js +2 -2
  121. package/dist/collection/components/color-picker/color-picker.js +5 -4
  122. package/dist/collection/components/config/config.js +2 -2
  123. package/dist/collection/components/date-picker/date-picker.js +3 -6
  124. package/dist/collection/components/date-picker/flatpickr-adapter/deferred-destroy.js +4 -3
  125. package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.js +1 -1
  126. package/dist/collection/components/date-picker/pickers/month-picker.js +40 -36
  127. package/dist/collection/components/date-picker/pickers/quarter-picker.js +35 -30
  128. package/dist/collection/components/date-picker/pickers/year-picker.js +16 -20
  129. package/dist/collection/components/dialog/dialog.js +4 -7
  130. package/dist/collection/components/dock/dock-button/dock-button.js +4 -9
  131. package/dist/collection/components/dock/dock.js +2 -2
  132. package/dist/collection/components/drag-handle/drag-handle.js +1 -1
  133. package/dist/collection/components/email-viewer/email-loader.js +14 -10
  134. package/dist/collection/components/email-viewer/email-viewer.js +1 -1
  135. package/dist/collection/components/email-viewer/sanitize-email-html.js +1 -4
  136. package/dist/collection/components/email-viewer/split-email-address-list.js +4 -10
  137. package/dist/collection/components/file/file.js +11 -10
  138. package/dist/collection/components/file-dropzone/file-dropzone.js +1 -1
  139. package/dist/collection/components/file-input/file-input.js +7 -8
  140. package/dist/collection/components/file-viewer/file-viewer.js +12 -9
  141. package/dist/collection/components/flex-container/flex-container.js +1 -1
  142. package/dist/collection/components/form/fields/schema-field.js +1 -1
  143. package/dist/collection/components/form/form.js +2 -5
  144. package/dist/collection/components/form/form.test-schemas.js +8 -10
  145. package/dist/collection/components/form/templates/array-field.js +7 -9
  146. package/dist/collection/components/form/templates/common.js +19 -19
  147. package/dist/collection/components/form/templates/object-field.js +1 -1
  148. package/dist/collection/components/form/validation-display.js +2 -2
  149. package/dist/collection/components/form/validators/format.js +1 -0
  150. package/dist/collection/components/form/widgets/code-editor.js +6 -9
  151. package/dist/collection/components/form/widgets/date-picker.js +1 -3
  152. package/dist/collection/components/grid/grid.js +1 -1
  153. package/dist/collection/components/header/header.js +1 -1
  154. package/dist/collection/components/help/help-content.js +1 -1
  155. package/dist/collection/components/help/help.js +2 -2
  156. package/dist/collection/components/helper-line/helper-line.js +3 -3
  157. package/dist/collection/components/hotkey/hotkey.js +1 -1
  158. package/dist/collection/components/icon/icon.js +11 -9
  159. package/dist/collection/components/icon-button/icon-button.js +1 -1
  160. package/dist/collection/components/info-tile/info-tile.js +9 -9
  161. package/dist/collection/components/input-field/input-field.js +11 -11
  162. package/dist/collection/components/list/list-renderer.js +5 -7
  163. package/dist/collection/components/list/list.js +2 -2
  164. package/dist/collection/components/list-item/list-item.js +2 -2
  165. package/dist/collection/components/list-item/menu-item-meta/menu-item-meta.js +1 -1
  166. package/dist/collection/components/markdown/hydrate-custom-elements.js +6 -5
  167. package/dist/collection/components/markdown/image-intersection-observer.js +9 -8
  168. package/dist/collection/components/markdown/image-markdown-plugin.js +9 -7
  169. package/dist/collection/components/markdown/link-markdown-plugin.js +11 -10
  170. package/dist/collection/components/markdown/markdown.js +6 -5
  171. package/dist/collection/components/markdown/remove-empty-paragraphs-plugin.js +4 -5
  172. package/dist/collection/components/masonry-layout/masonry-layout.js +5 -4
  173. package/dist/collection/components/menu/menu.js +48 -46
  174. package/dist/collection/components/menu-list/menu-list-renderer.js +8 -8
  175. package/dist/collection/components/menu-list/menu-list.js +1 -1
  176. package/dist/collection/components/menu-surface/menu-surface.js +6 -8
  177. package/dist/collection/components/notched-outline/notched-outline.js +1 -1
  178. package/dist/collection/components/pagination/jump/pagination-jump.js +13 -11
  179. package/dist/collection/components/pagination/pagination.js +5 -4
  180. package/dist/collection/components/picker/picker.js +25 -23
  181. package/dist/collection/components/popover/popover.js +13 -10
  182. package/dist/collection/components/popover-surface/popover-surface.js +1 -1
  183. package/dist/collection/components/portal/contains.js +9 -8
  184. package/dist/collection/components/portal/portal.js +16 -16
  185. package/dist/collection/components/profile-picture/profile-picture.js +4 -3
  186. package/dist/collection/components/progress-flow/progress-flow.js +10 -9
  187. package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
  188. package/dist/collection/components/radio-button-group/radio-button.js +2 -2
  189. package/dist/collection/components/scroller/scroller.css +317 -0
  190. package/dist/collection/components/scroller/scroller.js +284 -0
  191. package/dist/collection/components/select/select.js +13 -11
  192. package/dist/collection/components/select/select.template.js +1 -3
  193. package/dist/collection/components/slider/get-percentage-class.js +9 -18
  194. package/dist/collection/components/slider/slider.js +2 -2
  195. package/dist/collection/components/tab-bar/tab-bar.css +7 -289
  196. package/dist/collection/components/tab-bar/tab-bar.js +98 -128
  197. package/dist/collection/components/tab-panel/tab-panel.js +11 -8
  198. package/dist/collection/components/table/columns.js +1 -3
  199. package/dist/collection/components/table/element-pool.js +1 -1
  200. package/dist/collection/components/table/table-selection.js +6 -5
  201. package/dist/collection/components/table/table.css +15 -17
  202. package/dist/collection/components/table/table.js +44 -39
  203. package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +11 -10
  204. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-command-utils/list-utils.js +1 -1
  205. package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js +6 -10
  206. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/inserter.js +37 -40
  207. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/node.js +2 -1
  208. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link/link-plugin.js +21 -20
  209. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/menu-state-tracking-plugin.js +6 -5
  210. package/dist/collection/components/text-editor/prosemirror-adapter/plugins/trigger/factory-helpers/detect-trigger-removal.js +15 -14
  211. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +40 -34
  212. package/dist/collection/components/text-editor/text-editor.js +1 -1
  213. package/dist/collection/components/text-editor/utils/metadata-utils.js +1 -1
  214. package/dist/collection/components/text-editor/utils/plugin-factory.js +3 -3
  215. package/dist/collection/components/tooltip/tooltip-content.js +1 -1
  216. package/dist/collection/components/tooltip/tooltip.js +2 -2
  217. package/dist/collection/global/icon-cache/factory.js +2 -3
  218. package/dist/collection/global/icon-cache/in-memory-icon-cache.js +2 -0
  219. package/dist/collection/global/translations.js +1 -3
  220. package/dist/collection/translations/fr.js +3 -3
  221. package/dist/collection/util/adapt-color-contrast.js +1 -1
  222. package/dist/collection/util/files.js +1 -1
  223. package/dist/collection/util/format-bytes.js +1 -4
  224. package/dist/collection/util/hotkeys.js +1 -0
  225. package/dist/collection/util/image-resize.js +1 -0
  226. package/dist/collection/util/keyboard-navigation.js +144 -0
  227. package/dist/collection/util/keycodes.js +2 -0
  228. package/dist/collection/util/language.js +1 -1
  229. package/dist/collection/util/make-enter-clickable.js +19 -12
  230. package/dist/collection/util/random-string.js +1 -0
  231. package/dist/collection/util/render-list-component.js +2 -4
  232. package/dist/esm/{adapt-color-contrast-Dgcw_h7C.js → adapt-color-contrast-BQoih_t0.js} +1 -1
  233. package/dist/esm/{checkbox.template-Cx_3u92S.js → checkbox.template-IDyv2bgn.js} +2 -2
  234. package/dist/esm/{component-wGVqvUmL.js → component-CVihTrav.js} +3 -3
  235. package/dist/esm/{component-7QB0OUSF.js → component-CrjPGt1I.js} +1 -1
  236. package/dist/esm/{component-D4qgwaTf.js → component-CyFeUQ0l.js} +1 -1
  237. package/dist/esm/{component-B2Vy44Z3.js → component-kP1jCDLp.js} +1 -1
  238. package/dist/esm/{files-DnkFEKoB.js → files-CKnLqPDj.js} +1 -1
  239. package/dist/esm/{format-bytes-u_sd2HMb.js → format-bytes-24yUSW40.js} +1 -4
  240. package/dist/esm/{hotkeys-BxrRWYts.js → hotkeys-DjmlD0Mw.js} +1 -0
  241. package/dist/esm/{image-resize-BTSG--2-.js → image-resize-Dv2HOgWN.js} +1 -0
  242. package/dist/esm/{image.template-wqMwmOF-.js → image.template-BGjw97m_.js} +1 -1
  243. package/dist/esm/{index-Bnc9lzk2.js → index-BU9IJqli.js} +1 -7
  244. package/dist/esm/index.js +1 -1
  245. package/dist/esm/{keycodes-C4_9qUMP.js → keycodes-DQ5DmW_Y.js} +3 -1
  246. package/dist/esm/{language-C3hECvXE.js → language-ChagAaNf.js} +1 -1
  247. package/dist/esm/lime-elements.js +3 -3
  248. package/dist/esm/limel-3d-hover-effect-glow.entry.js +2 -2
  249. package/dist/esm/limel-action-bar_3.entry.js +20 -18
  250. package/dist/esm/limel-ai-avatar.entry.js +5 -5
  251. package/dist/esm/limel-badge.entry.js +3 -3
  252. package/dist/esm/limel-banner.entry.js +2 -2
  253. package/dist/esm/limel-breadcrumbs_6.entry.js +86 -86
  254. package/dist/esm/limel-button-group.entry.js +3 -3
  255. package/dist/esm/limel-button.entry.js +4 -4
  256. package/dist/esm/limel-callout.entry.js +6 -6
  257. package/dist/esm/limel-card.entry.js +8 -7
  258. package/dist/esm/limel-chart.entry.js +5 -5
  259. package/dist/esm/limel-checkbox.entry.js +12 -10
  260. package/dist/esm/limel-chip-set.entry.js +35 -44
  261. package/dist/esm/limel-chip_2.entry.js +10 -10
  262. package/dist/esm/limel-circular-progress.entry.js +2 -2
  263. package/dist/esm/limel-code-diff.entry.js +25 -28
  264. package/dist/esm/limel-code-editor.entry.js +17 -12
  265. package/dist/esm/limel-collapsible-section.entry.js +8 -8
  266. package/dist/esm/limel-color-picker-palette.entry.js +3 -3
  267. package/dist/esm/limel-color-picker.entry.js +6 -5
  268. package/dist/esm/limel-config.entry.js +3 -3
  269. package/dist/esm/limel-date-picker.entry.js +12 -15
  270. package/dist/esm/limel-dialog.entry.js +8 -11
  271. package/dist/esm/limel-dock-button.entry.js +6 -11
  272. package/dist/esm/limel-dock.entry.js +3 -3
  273. package/dist/esm/limel-drag-handle.entry.js +6 -6
  274. package/dist/esm/limel-dynamic-label.entry.js +1 -1
  275. package/dist/esm/limel-email-viewer.entry.js +11 -17
  276. package/dist/esm/limel-file-dropzone_2.entry.js +11 -12
  277. package/dist/esm/limel-file-viewer.entry.js +1098 -1146
  278. package/dist/esm/limel-file.entry.js +17 -16
  279. package/dist/esm/limel-flatpickr-adapter.entry.js +100 -94
  280. package/dist/esm/limel-flex-container.entry.js +2 -2
  281. package/dist/esm/limel-form.entry.js +65 -50
  282. package/dist/esm/limel-grid.entry.js +2 -2
  283. package/dist/esm/limel-header.entry.js +2 -2
  284. package/dist/esm/limel-help-content.entry.js +2 -2
  285. package/dist/esm/limel-help.entry.js +3 -3
  286. package/dist/esm/limel-helper-line_3.entry.js +14 -16
  287. package/dist/esm/limel-hotkey_4.entry.js +23 -23
  288. package/dist/esm/limel-icon-button.entry.js +4 -4
  289. package/dist/esm/limel-icon.entry.js +15 -13
  290. package/dist/esm/limel-info-tile.entry.js +10 -10
  291. package/dist/esm/limel-list-item.entry.js +10 -10
  292. package/dist/esm/limel-markdown.entry.js +25 -22
  293. package/dist/esm/limel-masonry-layout.entry.js +6 -5
  294. package/dist/esm/limel-menu-item-meta.entry.js +3 -3
  295. package/dist/esm/limel-pagination-jump.entry.js +18 -16
  296. package/dist/esm/limel-pagination.entry.js +10 -9
  297. package/dist/esm/limel-picker.entry.js +32 -30
  298. package/dist/esm/limel-popover_2.entry.js +26 -22
  299. package/dist/esm/limel-profile-picture.entry.js +12 -11
  300. package/dist/esm/limel-progress-flow-item.entry.js +1 -1
  301. package/dist/esm/limel-progress-flow.entry.js +11 -10
  302. package/dist/esm/limel-prosemirror-adapter.entry.js +475 -407
  303. package/dist/esm/limel-radio-button-group.entry.js +2 -2
  304. package/dist/esm/limel-radio-button.entry.js +3 -3
  305. package/dist/esm/limel-scroller.entry.js +178 -0
  306. package/dist/esm/limel-select.entry.js +20 -20
  307. package/dist/esm/limel-shortcut.entry.js +1 -1
  308. package/dist/esm/limel-slider.entry.js +18 -27
  309. package/dist/esm/limel-snackbar.entry.js +5 -5
  310. package/dist/esm/limel-split-button.entry.js +1 -1
  311. package/dist/esm/limel-switch.entry.js +3 -3
  312. package/dist/esm/limel-tab-bar.entry.js +235 -2036
  313. package/dist/esm/limel-tab-panel.entry.js +12 -9
  314. package/dist/esm/limel-table.entry.js +527 -106
  315. package/dist/esm/limel-text-editor-link-menu.entry.js +16 -15
  316. package/dist/esm/limel-text-editor.entry.js +3 -3
  317. package/dist/esm/loader.js +3 -3
  318. package/dist/esm/{make-enter-clickable-BgTwPGeH.js → make-enter-clickable-CIf8aGSd.js} +19 -12
  319. package/dist/esm/{markdown-exporter--3_MaqwD.js → markdown-exporter-DblYRMhY.js} +1 -1
  320. package/dist/esm/{markdown-parser-DCf-3dKZ.js → markdown-parser-CAPDx7i8.js} +24 -22
  321. package/dist/esm/{moment-DQRNe8qq.js → moment-_DadZLWp.js} +1062 -833
  322. package/dist/esm/{ponyfill-ChRGk668.js → ponyfill-6YuZiAPi.js} +1 -1
  323. package/dist/esm/{random-string-JbKhhoXs.js → random-string-BrjD-ITe.js} +1 -0
  324. package/dist/esm/{render-list-component-cicbMp0l.js → render-list-component-J1IzNpbv.js} +3 -5
  325. package/dist/esm/{sv-CY-6-yEp.js → sv-DpsDSi7k.js} +31 -3
  326. package/dist/esm/{translations-DMtX4tTX.js → translations-Y4i8PVc9.js} +5 -8
  327. package/dist/lime-elements/index.esm.js +1 -1
  328. package/dist/lime-elements/lime-elements.esm.js +1 -1
  329. package/dist/lime-elements/p-02a06cf7.entry.js +1 -0
  330. package/dist/lime-elements/{p-3916b316.entry.js → p-03cb609e.entry.js} +1 -1
  331. package/dist/lime-elements/p-05038bbb.entry.js +1 -0
  332. package/dist/lime-elements/{p-835149c4.entry.js → p-0d6925f4.entry.js} +1 -1
  333. package/dist/lime-elements/p-0e13ec91.entry.js +1 -0
  334. package/dist/lime-elements/p-0ece667e.entry.js +1 -0
  335. package/dist/lime-elements/{p-19344984.entry.js → p-107654bb.entry.js} +4 -4
  336. package/dist/lime-elements/p-120ca628.entry.js +1 -0
  337. package/dist/lime-elements/{p-BwJGg-WI.js → p-1CgnIGyd.js} +4 -4
  338. package/dist/lime-elements/p-22fd1c87.entry.js +1 -0
  339. package/dist/lime-elements/p-24yUSW40.js +1 -0
  340. package/dist/lime-elements/{p-f717cd7a.entry.js → p-271662d4.entry.js} +1 -1
  341. package/dist/lime-elements/{p-c2a60508.entry.js → p-29c73bdf.entry.js} +1 -1
  342. package/dist/lime-elements/{p-deceda00.entry.js → p-2a902e77.entry.js} +1 -1
  343. package/dist/lime-elements/{p-d0cec424.entry.js → p-2b033dfa.entry.js} +1 -1
  344. package/dist/lime-elements/{p-acba5700.entry.js → p-2b2253d4.entry.js} +1 -1
  345. package/dist/lime-elements/p-2e33d2a4.entry.js +1 -0
  346. package/dist/lime-elements/p-32a050a3.entry.js +1 -0
  347. package/dist/lime-elements/{p-3735111e.entry.js → p-3cfe0eaf.entry.js} +1 -1
  348. package/dist/lime-elements/{p-fbcd99a3.entry.js → p-3d3bdf45.entry.js} +1 -1
  349. package/dist/lime-elements/p-45461ec5.entry.js +1 -0
  350. package/dist/lime-elements/p-45c39fb4.entry.js +1 -0
  351. package/dist/lime-elements/p-45fde7a1.entry.js +1 -0
  352. package/dist/lime-elements/p-48afa6b7.entry.js +1 -0
  353. package/dist/lime-elements/{p-f04f7c8e.entry.js → p-4a88d365.entry.js} +1 -1
  354. package/dist/lime-elements/p-4b75e653.entry.js +1 -0
  355. package/dist/lime-elements/{p-5698e493.entry.js → p-4ecbc9f4.entry.js} +1 -1
  356. package/dist/lime-elements/{p-2e568c56.entry.js → p-54a9f48f.entry.js} +1 -1
  357. package/dist/lime-elements/{p-0fba64eb.entry.js → p-5df21b25.entry.js} +2 -2
  358. package/dist/lime-elements/p-5e448070.entry.js +1 -0
  359. package/dist/lime-elements/{p-408c4dcb.entry.js → p-5f5c6e7d.entry.js} +1 -1
  360. package/dist/lime-elements/{p-052c3bc6.entry.js → p-681cb6de.entry.js} +1 -1
  361. package/dist/lime-elements/{p-ChRGk668.js → p-6YuZiAPi.js} +3 -3
  362. package/dist/lime-elements/{p-90df3e1b.entry.js → p-6d9961f7.entry.js} +1 -1
  363. package/dist/lime-elements/p-74060535.entry.js +159 -0
  364. package/dist/lime-elements/{p-74bd0c1a.entry.js → p-7b4351f6.entry.js} +1 -1
  365. package/dist/lime-elements/{p-3fd7e8aa.entry.js → p-7eab1341.entry.js} +1 -1
  366. package/dist/lime-elements/p-7fa85785.entry.js +23 -0
  367. package/dist/lime-elements/{p-35fa1063.entry.js → p-85318636.entry.js} +1 -1
  368. package/dist/lime-elements/{p-4ffbfc79.entry.js → p-8ac79ef5.entry.js} +1 -1
  369. package/dist/lime-elements/{p-4902fb3f.entry.js → p-9218fa6a.entry.js} +1 -1
  370. package/dist/lime-elements/{p-38b09f87.entry.js → p-9415411e.entry.js} +1 -1
  371. package/dist/lime-elements/{p-be8610ff.entry.js → p-958396b5.entry.js} +1 -1
  372. package/dist/lime-elements/p-95ccd9e7.entry.js +1 -0
  373. package/dist/lime-elements/p-970e0810.entry.js +1 -0
  374. package/dist/lime-elements/{p-cb407bef.entry.js → p-9afa4721.entry.js} +1 -1
  375. package/dist/lime-elements/{p-54dcf46f.entry.js → p-9c8c2fb7.entry.js} +1 -1
  376. package/dist/lime-elements/p-9e084e7c.entry.js +1 -0
  377. package/dist/lime-elements/{p-B8hoCfhT.js → p-B3YP9GOq.js} +1 -1
  378. package/dist/lime-elements/{p-Dgcw_h7C.js → p-BQoih_t0.js} +1 -1
  379. package/dist/lime-elements/{p-Bnc9lzk2.js → p-BU9IJqli.js} +1 -1
  380. package/dist/lime-elements/{p-BN1-aIOw.js → p-BZXGwiAr.js} +1 -1
  381. package/dist/lime-elements/{p-CGVVDGcv.js → p-Bkvc4sus.js} +1 -1
  382. package/dist/lime-elements/{p-BPzhuHcl.js → p-Bvyt2bmV.js} +1 -1
  383. package/dist/lime-elements/{p-DZkKQUDM.js → p-C1FFnUvf.js} +3 -3
  384. package/dist/lime-elements/{p-BgTwPGeH.js → p-CIf8aGSd.js} +1 -1
  385. package/dist/lime-elements/{p-C3hECvXE.js → p-ChagAaNf.js} +1 -1
  386. package/dist/lime-elements/{p-C9yTLqR8.js → p-CmtleG1y.js} +1 -1
  387. package/dist/lime-elements/{p-C4_9qUMP.js → p-DQ5DmW_Y.js} +1 -1
  388. package/dist/lime-elements/p-DTcfed02.js +3 -0
  389. package/dist/lime-elements/{p-BY85K-4J.js → p-DqQOawxc.js} +1 -1
  390. package/dist/lime-elements/{p-CC4Usa-Q.js → p-I0PrvthC.js} +1 -1
  391. package/dist/lime-elements/p-N9vxZMhe.js +1 -0
  392. package/dist/lime-elements/{p-DsDkl4Sy.js → p-ZDFVISfu.js} +3 -3
  393. package/dist/lime-elements/p-a1c69e0c.entry.js +1 -0
  394. package/dist/lime-elements/{p-2daf0482.entry.js → p-a1d1470c.entry.js} +1 -1
  395. package/dist/lime-elements/{p-cef66e53.entry.js → p-a2e6f16e.entry.js} +1 -1
  396. package/dist/lime-elements/{p-36ce4fbc.entry.js → p-a42f8c2d.entry.js} +1 -1
  397. package/dist/lime-elements/p-a550ba18.entry.js +1 -0
  398. package/dist/lime-elements/{p-d146feda.entry.js → p-a65eb58e.entry.js} +1 -1
  399. package/dist/lime-elements/{p-03fb2603.entry.js → p-b22b52a1.entry.js} +1 -1
  400. package/dist/lime-elements/{p-c2a3ca7c.entry.js → p-b6d39581.entry.js} +1 -1
  401. package/dist/lime-elements/{p-8475a3b8.entry.js → p-c439b68b.entry.js} +1 -1
  402. package/dist/lime-elements/p-d19c7a3a.entry.js +1 -0
  403. package/dist/lime-elements/{p-d3bd4b80.entry.js → p-d1b7cc55.entry.js} +3 -3
  404. package/dist/lime-elements/{p-7cbf50fc.entry.js → p-d1e5dd12.entry.js} +1 -1
  405. package/dist/lime-elements/p-de4719a6.entry.js +1 -0
  406. package/dist/lime-elements/{p-b81a2728.entry.js → p-e02e2c5f.entry.js} +1 -1
  407. package/dist/lime-elements/{p-d351b9ae.entry.js → p-e6a34047.entry.js} +1 -1
  408. package/dist/lime-elements/p-eF09GxA_.js +1 -0
  409. package/dist/lime-elements/{p-8fa9c9ea.entry.js → p-ee719744.entry.js} +1 -1
  410. package/dist/lime-elements/p-f3cae1e7.entry.js +1 -0
  411. package/dist/lime-elements/{p-8115da75.entry.js → p-f4a0b1bc.entry.js} +1 -1
  412. package/dist/lime-elements/{p-4855dc9b.entry.js → p-f82f72e7.entry.js} +1 -1
  413. package/dist/lime-elements/{p-2d84ea04.entry.js → p-f97ec7a5.entry.js} +1 -1
  414. package/dist/lime-elements/{p-21109d9b.entry.js → p-fdd674fc.entry.js} +1 -1
  415. package/dist/lime-elements/{p-459eea13.entry.js → p-fdec09e9.entry.js} +1 -1
  416. package/dist/lime-elements/{p-2f57c3fa.entry.js → p-fe492ff3.entry.js} +1 -1
  417. package/dist/lime-elements/{p-65cded0e.entry.js → p-ff1a8b2e.entry.js} +1 -1
  418. package/dist/types/components/chip-set/chip-set-input-helpers.d.ts +1 -1
  419. package/dist/types/components/pagination/jump/pagination-jump.d.ts +1 -1
  420. package/dist/types/components/scroller/scroller.d.ts +67 -0
  421. package/dist/types/components/tab-bar/tab-bar.d.ts +23 -21
  422. package/dist/types/components.d.ts +132 -0
  423. package/dist/types/global/icon-cache/factory.d.ts +2 -2
  424. package/dist/types/global/translations.d.ts +2 -2
  425. package/dist/types/util/keyboard-navigation.d.ts +105 -0
  426. package/dist/types/util/keycodes.d.ts +2 -0
  427. package/package.json +12 -12
  428. package/dist/lime-elements/p-1e93473a.entry.js +0 -1
  429. package/dist/lime-elements/p-20658306.entry.js +0 -1
  430. package/dist/lime-elements/p-26c5c6b9.entry.js +0 -1
  431. package/dist/lime-elements/p-452b9b01.entry.js +0 -1
  432. package/dist/lime-elements/p-4aae63bd.entry.js +0 -1
  433. package/dist/lime-elements/p-507cc8a1.entry.js +0 -159
  434. package/dist/lime-elements/p-531b6a64.entry.js +0 -1
  435. package/dist/lime-elements/p-54793c06.entry.js +0 -1
  436. package/dist/lime-elements/p-5d974afa.entry.js +0 -1
  437. package/dist/lime-elements/p-66b125f2.entry.js +0 -1
  438. package/dist/lime-elements/p-7e212fa7.entry.js +0 -1
  439. package/dist/lime-elements/p-82696d24.entry.js +0 -1
  440. package/dist/lime-elements/p-9ac39039.entry.js +0 -1
  441. package/dist/lime-elements/p-9b631363.entry.js +0 -1
  442. package/dist/lime-elements/p-DQJU9gzh.js +0 -1
  443. package/dist/lime-elements/p-DpJgXIWf.js +0 -1
  444. package/dist/lime-elements/p-a1de9bbe.entry.js +0 -1
  445. package/dist/lime-elements/p-a71f6e87.entry.js +0 -67
  446. package/dist/lime-elements/p-bd7b3f8e.entry.js +0 -1
  447. package/dist/lime-elements/p-c72e5007.entry.js +0 -1
  448. package/dist/lime-elements/p-cafec335.entry.js +0 -1
  449. package/dist/lime-elements/p-d6dadc61.entry.js +0 -1
  450. package/dist/lime-elements/p-d93b7b9f.entry.js +0 -23
  451. package/dist/lime-elements/p-dc9cd793.entry.js +0 -1
  452. package/dist/lime-elements/p-dd62042a.entry.js +0 -1
  453. package/dist/lime-elements/p-u_sd2HMb.js +0 -1
  454. package/dist/lime-elements/p-zo6O9LC9.js +0 -3
  455. /package/dist/lime-elements/{p-JbKhhoXs.js → p-BrjD-ITe.js} +0 -0
  456. /package/dist/lime-elements/{p-BxrRWYts.js → p-DjmlD0Mw.js} +0 -0
  457. /package/dist/lime-elements/{p-BTSG--2-.js → p-Dv2HOgWN.js} +0 -0
@@ -1 +1 @@
1
- import{r as e,h as a,H as r}from"./p-Bnc9lzk2.js";import{t as l}from"./p-B8hoCfhT.js";import"./p-C3hECvXE.js";const n=class{constructor(a){e(this,a),this.dragDirection="vertical",this.tooltipOpenDirection="left",this.language="en",this.dragHandleId="drag-handle-"+crypto.randomUUID(),this.handleClick=e=>{e.preventDefault(),e.stopPropagation()}}render(){const e=l.get("drag-handle.drag-to-reorder",this.language),n=l.get("drag-handle.drag-handle",this.language);return a(r,{key:"c4e4c6c6b1890b711d4c4f20d4eef49c0054111a"},a("button",{key:"2211831df4cf0c9a7ed81e4d1e1019f7163bca75","data-drag-handle":!0,type:"button",class:"limel-drag-handle",tabindex:-1,"aria-label":n,id:this.dragHandleId,onClick:this.handleClick},a("div",{key:"251510f5cfcc5ab4d7bd7074282ef3578abf6ce2",class:"drag-icon",role:"presentation","aria-hidden":"true"},a("div",{key:"1"}),a("div",{key:"2"}),a("div",{key:"3"}),a("div",{key:"4"}),a("div",{key:"5"}),a("div",{key:"6"})),a("limel-tooltip",{key:"0b451cff9079ca5ccbbd4fc6826f735ab96ccd15",openDirection:this.tooltipOpenDirection,elementId:this.dragHandleId,label:e})))}};n.style='@charset "UTF-8";limel-drag-handle{display:inline-flex;align-items:center;justify-content:center}button.limel-drag-handle{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit}button.limel-drag-handle:focus{outline:none}button.limel-drag-handle:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button.limel-drag-handle{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:transparent}button.limel-drag-handle:hover,button.limel-drag-handle:focus,button.limel-drag-handle:focus-visible{will-change:color, background-color, box-shadow, transform}button.limel-drag-handle:hover,button.limel-drag-handle:focus-visible{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-primary);background-color:transparent}button.limel-drag-handle:hover{box-shadow:var(--button-shadow-hovered)}button.limel-drag-handle:active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button.limel-drag-handle:hover,button.limel-drag-handle:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button.limel-drag-handle{touch-action:none;cursor:grab}button.limel-drag-handle:active{cursor:grabbing}button.limel-drag-handle:active,button.limel-drag-handle:hover{box-shadow:none !important}button.limel-drag-handle{display:inline-flex;align-items:center;justify-content:center;border-radius:0.4rem;padding:0.5rem;max-height:2.25rem;max-width:2.25rem;color:rgb(var(--contrast-900))}button.limel-drag-handle .drag-icon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0.2rem}limel-drag-handle[drag-direction=horizontal] button.limel-drag-handle .drag-icon{grid-template-columns:1fr 1fr}button.limel-drag-handle .drag-icon div{transition:transform 0.2s ease, background-color 0.2s ease;height:0.125rem;width:0.125rem;border-radius:1rem;background-color:currentColor;transform:scale(1)}.is-being-dragged button.limel-drag-handle .drag-icon div,button.limel-drag-handle:active .drag-icon div,button.limel-drag-handle:focus .drag-icon div,button.limel-drag-handle:hover .drag-icon div,button.limel-drag-handle:focus-visible .drag-icon div{background-color:var(--mdc-theme-primary);transform:scale(1.5)}';export{n as limel_drag_handle}
1
+ import{r as e,h as a,H as r}from"./p-BU9IJqli.js";import{t as l}from"./p-B3YP9GOq.js";import"./p-ChagAaNf.js";const n=class{constructor(a){e(this,a),this.dragDirection="vertical",this.tooltipOpenDirection="left",this.language="en",this.dragHandleId="drag-handle-"+crypto.randomUUID(),this.handleClick=e=>{e.preventDefault(),e.stopPropagation()}}render(){const e=l.get("drag-handle.drag-to-reorder",this.language),n=l.get("drag-handle.drag-handle",this.language);return a(r,{key:"c315460d24dc77db9aa84d6c7db94b0aff0d04fa"},a("button",{key:"4b1b29c9937bf15335ad67c99b14b40ff0c11c94","data-drag-handle":!0,type:"button",class:"limel-drag-handle",tabindex:-1,"aria-label":n,id:this.dragHandleId,onClick:this.handleClick},a("div",{key:"920d6d0d09d81908e98db8624da6a9bc34e09bd7",class:"drag-icon",role:"presentation","aria-hidden":"true"},a("div",{key:"1"}),a("div",{key:"2"}),a("div",{key:"3"}),a("div",{key:"4"}),a("div",{key:"5"}),a("div",{key:"6"})),a("limel-tooltip",{key:"fa9e84778a57dbb6186de4a18c66d30b8c711417",openDirection:this.tooltipOpenDirection,elementId:this.dragHandleId,label:e})))}};n.style='@charset "UTF-8";limel-drag-handle{display:inline-flex;align-items:center;justify-content:center}button.limel-drag-handle{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit}button.limel-drag-handle:focus{outline:none}button.limel-drag-handle:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button.limel-drag-handle{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:transparent}button.limel-drag-handle:hover,button.limel-drag-handle:focus,button.limel-drag-handle:focus-visible{will-change:color, background-color, box-shadow, transform}button.limel-drag-handle:hover,button.limel-drag-handle:focus-visible{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-primary);background-color:transparent}button.limel-drag-handle:hover{box-shadow:var(--button-shadow-hovered)}button.limel-drag-handle:active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button.limel-drag-handle:hover,button.limel-drag-handle:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button.limel-drag-handle{touch-action:none;cursor:grab}button.limel-drag-handle:active{cursor:grabbing}button.limel-drag-handle:active,button.limel-drag-handle:hover{box-shadow:none !important}button.limel-drag-handle{display:inline-flex;align-items:center;justify-content:center;border-radius:0.4rem;padding:0.5rem;max-height:2.25rem;max-width:2.25rem;color:rgb(var(--contrast-900))}button.limel-drag-handle .drag-icon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0.2rem}limel-drag-handle[drag-direction=horizontal] button.limel-drag-handle .drag-icon{grid-template-columns:1fr 1fr}button.limel-drag-handle .drag-icon div{transition:transform 0.2s ease, background-color 0.2s ease;height:0.125rem;width:0.125rem;border-radius:1rem;background-color:currentColor;transform:scale(1)}.is-being-dragged button.limel-drag-handle .drag-icon div,button.limel-drag-handle:active .drag-icon div,button.limel-drag-handle:focus .drag-icon div,button.limel-drag-handle:hover .drag-icon div,button.limel-drag-handle:focus-visible .drag-icon div{background-color:var(--mdc-theme-primary);transform:scale(1.5)}';export{n as limel_drag_handle}
@@ -1 +1 @@
1
- import{r as e,c as t,h as r,H as o}from"./p-Bnc9lzk2.js";const i=class{constructor(o){e(this,o),this.change=t(this,"change",7),this.disabled=!1,this.readonly=!1,this.invalid=!1,this.manualInput=!0,this.isOpen=!1,this.shouldFocus=!1,this.renderTooltip=()=>{if(!this.readonly&&this.tooltipLabel)return r("limel-tooltip",{label:this.tooltipLabel,elementId:"tooltip-button"})},this.renderPickerPalette=()=>this.readonly?this.renderPickerTrigger():r("limel-popover",{open:this.isOpen,openDirection:"bottom-start",onClose:this.onPopoverClose},this.renderPickerTrigger(),r("limel-color-picker-palette",{ref:this.setColorPickerPaletteElement,value:this.value,label:this.label,helperText:this.helperText,placeholder:this.placeholder,invalid:this.invalid,onChange:this.handleChange,required:this.required,palette:this.palette,columnCount:this.paletteColumnCount,manualInput:this.manualInput})),this.renderPickerTrigger=()=>r("button",{slot:"trigger",style:this.value?{"--background":this.value}:{},role:"button",onClick:this.openPopover,id:"tooltip-button",disabled:this.readonly||this.disabled}),this.setColorPickerPaletteElement=e=>{this.contentElement=e},this.openPopover=e=>{e.stopPropagation(),this.isOpen=!0,this.shouldFocus=this.isOpen},this.onPopoverClose=e=>{e.stopPropagation(),this.isOpen=!1},this.handleChange=e=>{e.stopPropagation(),this.change.emit(e.detail)}}disconnectedCallback(){this.isOpen=!1}componentDidRender(){var e;this.shouldFocus&&this.isOpen&&(this.shouldFocus=!1,null===(e=this.contentElement)||void 0===e||e.focus())}render(){return r(o,{key:"cd29fbc1a30475f3b90a435f929e80c148a1d481"},this.renderTooltip(),this.renderPickerPalette(),r("limel-input-field",{key:"ecc60031f0b99e4cc02d5e22cc8675d7a0c231a0",label:this.label,helperText:this.helperText,value:this.value,onChange:this.handleChange,required:this.required,readonly:this.readonly,disabled:this.disabled||!this.manualInput,invalid:this.invalid,placeholder:this.placeholder}))}};i.style='@charset "UTF-8";.picker-trigger[style="--background:lime-magenta;"]:after,.chosen-color-preview[style="--background:lime-magenta;"]:after{background-color:var(--lime-magenta)}.picker-trigger[style="--background:lime-blue;"]:after,.chosen-color-preview[style="--background:lime-blue;"]:after{background-color:var(--lime-blue)}.picker-trigger[style="--background:lime-orange;"]:after,.chosen-color-preview[style="--background:lime-orange;"]:after{background-color:var(--lime-orange)}.picker-trigger[style="--background:lime-green;"]:after,.chosen-color-preview[style="--background:lime-green;"]:after{background-color:var(--lime-green)}.picker-trigger[style="--background:lime-red;"]:after,.chosen-color-preview[style="--background:lime-red;"]:after{background-color:var(--lime-red)}.picker-trigger[style="--background:lime-dark-blue;"]:after,.chosen-color-preview[style="--background:lime-dark-blue;"]:after{background-color:var(--lime-dark-blue)}.picker-trigger[style="--background:lime-turquoise;"]:after,.chosen-color-preview[style="--background:lime-turquoise;"]:after{background-color:var(--lime-turquoise)}.picker-trigger[style="--background:lime-yellow;"]:after,.chosen-color-preview[style="--background:lime-yellow;"]:after{background-color:var(--lime-yellow)}.picker-trigger[style="--background:lime-light-grey;"]:after,.chosen-color-preview[style="--background:lime-light-grey;"]:after{background-color:var(--lime-light-grey)}:host(limel-color-picker){display:grid;gap:0.25rem;grid-template-columns:auto 1fr}button[slot=trigger]{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;box-sizing:border-box;position:relative;isolation:isolate;width:2.5rem;height:2.5rem;border-radius:0.5rem}button[slot=trigger]:not([disabled]):not([disabled=true]){transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-normal)}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):focus,button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{will-change:color, background-color, box-shadow, transform}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{transform:translate3d(0, -0.04rem, 0);color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}button[slot=trigger]:not([disabled]):not([disabled=true]):active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button[slot=trigger]:not([disabled]):not([disabled=true]):focus{outline:none}button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button[slot=trigger]:before,button[slot=trigger]:after{content:"";position:absolute;inset:0;border-radius:inherit}button[slot=trigger]:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns=\'http://www.w3.org/2000/svg\'%20viewBox=\'0%200%208%208\'%20style=\'fill-rule:evenodd;\'%3E%3Cpath%20fill=\'rgba(186,186,192,0.16)\'%20d=\'M0%200h4v4H0zM4%204h4v4H4z\'/%3E%3C/svg%3E");background-size:0.5rem;z-index:0}button[slot=trigger]:after{z-index:1;box-shadow:0 0 0 0.25rem rgb(var(--contrast-100)) inset;background:var(--background)}:host([readonly]:not([readonly=false])) limel-input-field{transform:translateX(calc(2.5rem / 4 * -1)) translateY(calc(2.5rem / 4))}:host([readonly]:not([readonly=false])) button[slot=trigger],:host([disabled]:not([disabled=false])) button[slot=trigger]{border:1px solid rgba(var(--contrast-700), 0.65)}';export{i as limel_color_picker}
1
+ import{r as e,c as t,h as r,H as o}from"./p-BU9IJqli.js";const i=class{constructor(o){e(this,o),this.change=t(this,"change",7),this.disabled=!1,this.readonly=!1,this.invalid=!1,this.manualInput=!0,this.isOpen=!1,this.shouldFocus=!1,this.renderTooltip=()=>{if(!this.readonly&&this.tooltipLabel)return r("limel-tooltip",{label:this.tooltipLabel,elementId:"tooltip-button"})},this.renderPickerPalette=()=>this.readonly?this.renderPickerTrigger():r("limel-popover",{open:this.isOpen,openDirection:"bottom-start",onClose:this.onPopoverClose},this.renderPickerTrigger(),r("limel-color-picker-palette",{ref:this.setColorPickerPaletteElement,value:this.value,label:this.label,helperText:this.helperText,placeholder:this.placeholder,invalid:this.invalid,onChange:this.handleChange,required:this.required,palette:this.palette,columnCount:this.paletteColumnCount,manualInput:this.manualInput})),this.renderPickerTrigger=()=>r("button",{slot:"trigger",style:this.value?{"--background":this.value}:{},role:"button",onClick:this.openPopover,id:"tooltip-button",disabled:this.readonly||this.disabled}),this.setColorPickerPaletteElement=e=>{this.contentElement=e},this.openPopover=e=>{e.stopPropagation(),this.isOpen=!0,this.shouldFocus=this.isOpen},this.onPopoverClose=e=>{e.stopPropagation(),this.isOpen=!1},this.handleChange=e=>{e.stopPropagation(),this.change.emit(e.detail)}}disconnectedCallback(){this.isOpen=!1}componentDidRender(){var e;this.shouldFocus&&this.isOpen&&(this.shouldFocus=!1,null===(e=this.contentElement)||void 0===e||e.focus())}render(){return r(o,{key:"21a178b66e44ec92e371d45c83eb92ba449252b1"},this.renderTooltip(),this.renderPickerPalette(),r("limel-input-field",{key:"3cd84c7f4db763047cc3fdf7497a3de5290238d7",label:this.label,helperText:this.helperText,value:this.value,onChange:this.handleChange,required:this.required,readonly:this.readonly,disabled:this.disabled||!this.manualInput,invalid:this.invalid,placeholder:this.placeholder}))}};i.style='@charset "UTF-8";.picker-trigger[style="--background:lime-magenta;"]:after,.chosen-color-preview[style="--background:lime-magenta;"]:after{background-color:var(--lime-magenta)}.picker-trigger[style="--background:lime-blue;"]:after,.chosen-color-preview[style="--background:lime-blue;"]:after{background-color:var(--lime-blue)}.picker-trigger[style="--background:lime-orange;"]:after,.chosen-color-preview[style="--background:lime-orange;"]:after{background-color:var(--lime-orange)}.picker-trigger[style="--background:lime-green;"]:after,.chosen-color-preview[style="--background:lime-green;"]:after{background-color:var(--lime-green)}.picker-trigger[style="--background:lime-red;"]:after,.chosen-color-preview[style="--background:lime-red;"]:after{background-color:var(--lime-red)}.picker-trigger[style="--background:lime-dark-blue;"]:after,.chosen-color-preview[style="--background:lime-dark-blue;"]:after{background-color:var(--lime-dark-blue)}.picker-trigger[style="--background:lime-turquoise;"]:after,.chosen-color-preview[style="--background:lime-turquoise;"]:after{background-color:var(--lime-turquoise)}.picker-trigger[style="--background:lime-yellow;"]:after,.chosen-color-preview[style="--background:lime-yellow;"]:after{background-color:var(--lime-yellow)}.picker-trigger[style="--background:lime-light-grey;"]:after,.chosen-color-preview[style="--background:lime-light-grey;"]:after{background-color:var(--lime-light-grey)}:host(limel-color-picker){display:grid;gap:0.25rem;grid-template-columns:auto 1fr}button[slot=trigger]{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;box-sizing:border-box;position:relative;isolation:isolate;width:2.5rem;height:2.5rem;border-radius:0.5rem}button[slot=trigger]:not([disabled]):not([disabled=true]){transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-normal)}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):focus,button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{will-change:color, background-color, box-shadow, transform}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{transform:translate3d(0, -0.04rem, 0);color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}button[slot=trigger]:not([disabled]):not([disabled=true]):active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button[slot=trigger]:not([disabled]):not([disabled=true]):hover,button[slot=trigger]:not([disabled]):not([disabled=true]):active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button[slot=trigger]:not([disabled]):not([disabled=true]):focus{outline:none}button[slot=trigger]:not([disabled]):not([disabled=true]):focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button[slot=trigger]:before,button[slot=trigger]:after{content:"";position:absolute;inset:0;border-radius:inherit}button[slot=trigger]:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns=\'http://www.w3.org/2000/svg\'%20viewBox=\'0%200%208%208\'%20style=\'fill-rule:evenodd;\'%3E%3Cpath%20fill=\'rgba(186,186,192,0.16)\'%20d=\'M0%200h4v4H0zM4%204h4v4H4z\'/%3E%3C/svg%3E");background-size:0.5rem;z-index:0}button[slot=trigger]:after{z-index:1;box-shadow:0 0 0 0.25rem rgb(var(--contrast-100)) inset;background:var(--background)}:host([readonly]:not([readonly=false])) limel-input-field{transform:translateX(calc(2.5rem / 4 * -1)) translateY(calc(2.5rem / 4))}:host([readonly]:not([readonly=false])) button[slot=trigger],:host([disabled]:not([disabled=false])) button[slot=trigger]{border:1px solid rgba(var(--contrast-700), 0.65)}';export{i as limel_color_picker}
@@ -5,5 +5,5 @@
5
5
  * @param event - event
6
6
 
7
7
  */
8
- export declare function handleKeyboardEvent(event: KeyboardEvent): void;
8
+ export declare function handleKeyboardEvent(this: any, event: KeyboardEvent): void;
9
9
  //# sourceMappingURL=chip-set-input-helpers.d.ts.map
@@ -50,7 +50,7 @@ export declare class PaginationJump {
50
50
  * so it always offers the page the user is on now.
51
51
  */
52
52
  protected handleOpenChange(): void;
53
- componentDidRender(): void;
53
+ componentDidRender(): Promise<void>;
54
54
  render(): any;
55
55
  /**
56
56
  * Only to keep what is on screen honest. `limel-input-field` draws an
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Makes content that is larger than its container scrollable, along one axis.
3
+ *
4
+ * The native scrollbar is hidden. Instead, an edge that has more to reveal
5
+ * fades out, and an arrow appears on it. Clicking the arrow scrolls almost a
6
+ * page, and leaves the last part of the previous page in view, as a reference
7
+ * for how far the user has scrolled. For people who have asked their system to
8
+ * reduce motion, the scroller jumps instead of gliding.
9
+ *
10
+ * When something inside the scroller receives focus, the scroller reveals the
11
+ * item that holds it, together with a glimpse of whatever is next to it. An
12
+ * item can control how much of its neighbors gets revealed, by setting its
13
+ * `scroll-margin`. An item that becomes selected without receiving focus is up
14
+ * to the consumer to reveal, using the `reveal()` method.
15
+ *
16
+ * :::note Accessibility
17
+ * The arrows are only a shortcut for people who use a mouse or a touch screen.
18
+ * They are not real buttons. Screen readers do not announce them, and the Tab
19
+ * key skips them. Therefore, the content must contain something that can
20
+ * receive focus, such as a button, a link or a tab. Without it, there is no way
21
+ * to scroll with a keyboard. The examples explain the reasoning.
22
+ * :::
23
+ *
24
+ * @slot - The content to scroll. Each child is treated as an item.
25
+ * @exampleComponent limel-example-scroller-horizontal
26
+ * @exampleComponent limel-example-scroller-vertical
27
+ * @private
28
+ */
29
+ export declare class Scroller {
30
+ /**
31
+ * The axis along which the content scrolls.
32
+ */
33
+ orientation: 'horizontal' | 'vertical';
34
+ private canScrollToStart;
35
+ private canScrollToEnd;
36
+ private scrollArea?;
37
+ private scrollContent?;
38
+ private slotElement?;
39
+ private readonly fades;
40
+ private resizeObserver?;
41
+ private pendingReveal?;
42
+ connectedCallback(): void;
43
+ componentDidLoad(): void;
44
+ disconnectedCallback(): void;
45
+ render(): any;
46
+ private renderEdge;
47
+ private observeSize;
48
+ private readonly handleResize;
49
+ private readonly updateScrollability;
50
+ private scrollOnePage;
51
+ private findItem;
52
+ private readonly revealFocusedItem;
53
+ /**
54
+ * Scrolls an item into view, together with a glimpse of its neighbors.
55
+ * Whatever receives focus is revealed without being asked to. This is for
56
+ * an item that becomes selected without receiving focus. If the scroller
57
+ * is hidden, in a dialog that is closed for instance, the item is revealed
58
+ * when the scroller is shown.
59
+ *
60
+ * @param item - one of the items of the scroller, or something inside one
61
+ * @param behavior - `auto` jumps to the item, and `smooth` glides there.
62
+ * Defaults to `smooth`, unless the user has asked to reduce motion.
63
+ */
64
+ reveal(item: HTMLElement, behavior?: ScrollBehavior): Promise<void>;
65
+ private revealItem;
66
+ }
67
+ //# sourceMappingURL=scroller.d.ts.map
@@ -7,6 +7,8 @@ import { Tab } from './tab.types';
7
7
  * :::
8
8
  * An exception for using tab bars in a high level of hierarchy is their usage in modals. This is because modals are perceived as a separate place and not a part of the current context. Therefore you can use tab bars in a modal to group and organize its content.
9
9
  * A tab bar can contain an unlimited number of tabs. However, depending on the device width and width of the tabs, the number of tabs that are visible at the same time will vary. When there is limited horizontal space, the component shows a left-arrow and/or right-arrow button, which scrolls and reveals the additional tabs. The tab bar can also be swiped left and right on a touch-device.
10
+ * The arrows are only a shortcut for people who use a mouse or a touch screen. Screen readers do not announce them, and the Tab key skips them. People who use a keyboard or a screen reader move between the tabs, and the tab bar keeps the selected tab in view.
11
+ * The left and right arrow keys move to the previous and the next tab, and select it. Home and End move to the first and the last tab. Moving past the last tab continues at the first one, and the other way around. The Tab key moves on to what comes after the tab bar, and moving back with Shift and Tab lands on the selected tab, or on the first tab when none is selected.
10
12
  * :::tip Other things to consider
11
13
  * Never divide the content of a tab using a nested tab bar.
12
14
  * Never place two tab bars within the same screen.
@@ -29,34 +31,34 @@ export declare class TabBar {
29
31
  */
30
32
  private changeTab;
31
33
  private host;
32
- private canScrollLeft;
33
- private canScrollRight;
34
- private mdcTabBar;
35
- private setupMdc;
36
- private scrollArea;
37
- private scrollContent;
34
+ private ripples;
35
+ private revealedTabId?;
36
+ private hasLoaded;
38
37
  constructor();
39
- connectedCallback(): void;
38
+ connectedCallback(): Promise<void>;
40
39
  componentDidLoad(): void;
41
- componentDidUpdate(): void;
40
+ componentDidRender(): Promise<void>;
42
41
  disconnectedCallback(): void;
43
42
  render(): any;
44
43
  protected tabsChanged(newTabs?: Tab[], oldTabs?: Tab[]): void;
45
- protected handleWindowResize(): void;
46
- private setup;
47
- private tearDown;
48
- private setupListeners;
49
- private handleTabActivated;
50
- private sortByInactive;
51
- private handleScroll;
52
- private handleLeftScrollClick;
53
- private handleRightScrollClick;
44
+ private getTabElements;
45
+ /**
46
+ * Gives every tab MDC's ripple, which is the feedback when a tab is
47
+ * pressed. Tabs that are gone lose theirs.
48
+ */
49
+ private updateRipples;
50
+ private destroyRipples;
54
51
  /**
55
- * Calculates how far to scroll when navigation buttons are clicked.
56
- * Returns the visible width minus an overlap percentage to maintain context.
57
- * Falls back to the constant value if something goes wrong.
52
+ * A tab that is activated by the user has focus, and the scroller reveals
53
+ * what has focus. This is for a tab that becomes active without it.
54
+ *
55
+ * @param behavior - `auto` to jump to the tab. Leave it out to let the
56
+ * scroller glide there.
58
57
  */
59
- private getScrollDistance;
58
+ private revealActiveTab;
59
+ private handleKeyDown;
60
+ private activateTab;
61
+ private sortByInactive;
60
62
  private renderIcon;
61
63
  private renderTab;
62
64
  private triggerIconColorWarning;
@@ -3422,6 +3422,42 @@ export namespace Components {
3422
3422
  */
3423
3423
  "selectedItem"?: ListItem<string | number>;
3424
3424
  }
3425
+ /**
3426
+ * Makes content that is larger than its container scrollable, along one axis.
3427
+ * The native scrollbar is hidden. Instead, an edge that has more to reveal
3428
+ * fades out, and an arrow appears on it. Clicking the arrow scrolls almost a
3429
+ * page, and leaves the last part of the previous page in view, as a reference
3430
+ * for how far the user has scrolled. For people who have asked their system to
3431
+ * reduce motion, the scroller jumps instead of gliding.
3432
+ * When something inside the scroller receives focus, the scroller reveals the
3433
+ * item that holds it, together with a glimpse of whatever is next to it. An
3434
+ * item can control how much of its neighbors gets revealed, by setting its
3435
+ * `scroll-margin`. An item that becomes selected without receiving focus is up
3436
+ * to the consumer to reveal, using the `reveal()` method.
3437
+ * :::note Accessibility
3438
+ * The arrows are only a shortcut for people who use a mouse or a touch screen.
3439
+ * They are not real buttons. Screen readers do not announce them, and the Tab
3440
+ * key skips them. Therefore, the content must contain something that can
3441
+ * receive focus, such as a button, a link or a tab. Without it, there is no way
3442
+ * to scroll with a keyboard. The examples explain the reasoning.
3443
+ * :::
3444
+ * @exampleComponent limel-example-scroller-horizontal
3445
+ * @exampleComponent limel-example-scroller-vertical
3446
+ * @private
3447
+ */
3448
+ interface LimelScroller {
3449
+ /**
3450
+ * The axis along which the content scrolls.
3451
+ * @default 'horizontal'
3452
+ */
3453
+ "orientation": 'horizontal' | 'vertical';
3454
+ /**
3455
+ * Scrolls an item into view, together with a glimpse of its neighbors. Whatever receives focus is revealed without being asked to. This is for an item that becomes selected without receiving focus. If the scroller is hidden, in a dialog that is closed for instance, the item is revealed when the scroller is shown.
3456
+ * @param item - one of the items of the scroller, or something inside one
3457
+ * @param behavior - `auto` jumps to the item, and `smooth` glides there. Defaults to `smooth`, unless the user has asked to reduce motion.
3458
+ */
3459
+ "reveal": (item: HTMLElement, behavior?: ScrollBehavior) => Promise<void>;
3460
+ }
3425
3461
  /**
3426
3462
  * ## Keyboard
3427
3463
  * Typing characters jumps to the option whose text starts with them, the way
@@ -3788,6 +3824,8 @@ export namespace Components {
3788
3824
  * :::
3789
3825
  * An exception for using tab bars in a high level of hierarchy is their usage in modals. This is because modals are perceived as a separate place and not a part of the current context. Therefore you can use tab bars in a modal to group and organize its content.
3790
3826
  * A tab bar can contain an unlimited number of tabs. However, depending on the device width and width of the tabs, the number of tabs that are visible at the same time will vary. When there is limited horizontal space, the component shows a left-arrow and/or right-arrow button, which scrolls and reveals the additional tabs. The tab bar can also be swiped left and right on a touch-device.
3827
+ * The arrows are only a shortcut for people who use a mouse or a touch screen. Screen readers do not announce them, and the Tab key skips them. People who use a keyboard or a screen reader move between the tabs, and the tab bar keeps the selected tab in view.
3828
+ * The left and right arrow keys move to the previous and the next tab, and select it. Home and End move to the first and the last tab. Moving past the last tab continues at the first one, and the other way around. The Tab key moves on to what comes after the tab bar, and moving back with Shift and Tab lands on the selected tab, or on the first tab when none is selected.
3791
3829
  * :::tip Other things to consider
3792
3830
  * Never divide the content of a tab using a nested tab bar.
3793
3831
  * Never place two tab bars within the same screen.
@@ -6322,6 +6360,35 @@ declare global {
6322
6360
  prototype: HTMLLimelRadioButtonGroupElement;
6323
6361
  new (): HTMLLimelRadioButtonGroupElement;
6324
6362
  };
6363
+ /**
6364
+ * Makes content that is larger than its container scrollable, along one axis.
6365
+ * The native scrollbar is hidden. Instead, an edge that has more to reveal
6366
+ * fades out, and an arrow appears on it. Clicking the arrow scrolls almost a
6367
+ * page, and leaves the last part of the previous page in view, as a reference
6368
+ * for how far the user has scrolled. For people who have asked their system to
6369
+ * reduce motion, the scroller jumps instead of gliding.
6370
+ * When something inside the scroller receives focus, the scroller reveals the
6371
+ * item that holds it, together with a glimpse of whatever is next to it. An
6372
+ * item can control how much of its neighbors gets revealed, by setting its
6373
+ * `scroll-margin`. An item that becomes selected without receiving focus is up
6374
+ * to the consumer to reveal, using the `reveal()` method.
6375
+ * :::note Accessibility
6376
+ * The arrows are only a shortcut for people who use a mouse or a touch screen.
6377
+ * They are not real buttons. Screen readers do not announce them, and the Tab
6378
+ * key skips them. Therefore, the content must contain something that can
6379
+ * receive focus, such as a button, a link or a tab. Without it, there is no way
6380
+ * to scroll with a keyboard. The examples explain the reasoning.
6381
+ * :::
6382
+ * @exampleComponent limel-example-scroller-horizontal
6383
+ * @exampleComponent limel-example-scroller-vertical
6384
+ * @private
6385
+ */
6386
+ interface HTMLLimelScrollerElement extends Components.LimelScroller, HTMLStencilElement {
6387
+ }
6388
+ var HTMLLimelScrollerElement: {
6389
+ prototype: HTMLLimelScrollerElement;
6390
+ new (): HTMLLimelScrollerElement;
6391
+ };
6325
6392
  interface HTMLLimelSelectElementEventMap {
6326
6393
  "change": Option | Option[];
6327
6394
  }
@@ -6533,6 +6600,8 @@ declare global {
6533
6600
  * :::
6534
6601
  * An exception for using tab bars in a high level of hierarchy is their usage in modals. This is because modals are perceived as a separate place and not a part of the current context. Therefore you can use tab bars in a modal to group and organize its content.
6535
6602
  * A tab bar can contain an unlimited number of tabs. However, depending on the device width and width of the tabs, the number of tabs that are visible at the same time will vary. When there is limited horizontal space, the component shows a left-arrow and/or right-arrow button, which scrolls and reveals the additional tabs. The tab bar can also be swiped left and right on a touch-device.
6603
+ * The arrows are only a shortcut for people who use a mouse or a touch screen. Screen readers do not announce them, and the Tab key skips them. People who use a keyboard or a screen reader move between the tabs, and the tab bar keeps the selected tab in view.
6604
+ * The left and right arrow keys move to the previous and the next tab, and select it. Home and End move to the first and the last tab. Moving past the last tab continues at the first one, and the other way around. The Tab key moves on to what comes after the tab bar, and moving back with Shift and Tab lands on the selected tab, or on the first tab when none is selected.
6536
6605
  * :::tip Other things to consider
6537
6606
  * Never divide the content of a tab using a nested tab bar.
6538
6607
  * Never place two tab bars within the same screen.
@@ -6820,6 +6889,7 @@ declare global {
6820
6889
  "limel-prosemirror-adapter": HTMLLimelProsemirrorAdapterElement;
6821
6890
  "limel-radio-button": HTMLLimelRadioButtonElement;
6822
6891
  "limel-radio-button-group": HTMLLimelRadioButtonGroupElement;
6892
+ "limel-scroller": HTMLLimelScrollerElement;
6823
6893
  "limel-select": HTMLLimelSelectElement;
6824
6894
  "limel-shortcut": HTMLLimelShortcutElement;
6825
6895
  "limel-slider": HTMLLimelSliderElement;
@@ -10372,6 +10442,36 @@ declare namespace LocalJSX {
10372
10442
  */
10373
10443
  "selectedItem"?: ListItem<string | number>;
10374
10444
  }
10445
+ /**
10446
+ * Makes content that is larger than its container scrollable, along one axis.
10447
+ * The native scrollbar is hidden. Instead, an edge that has more to reveal
10448
+ * fades out, and an arrow appears on it. Clicking the arrow scrolls almost a
10449
+ * page, and leaves the last part of the previous page in view, as a reference
10450
+ * for how far the user has scrolled. For people who have asked their system to
10451
+ * reduce motion, the scroller jumps instead of gliding.
10452
+ * When something inside the scroller receives focus, the scroller reveals the
10453
+ * item that holds it, together with a glimpse of whatever is next to it. An
10454
+ * item can control how much of its neighbors gets revealed, by setting its
10455
+ * `scroll-margin`. An item that becomes selected without receiving focus is up
10456
+ * to the consumer to reveal, using the `reveal()` method.
10457
+ * :::note Accessibility
10458
+ * The arrows are only a shortcut for people who use a mouse or a touch screen.
10459
+ * They are not real buttons. Screen readers do not announce them, and the Tab
10460
+ * key skips them. Therefore, the content must contain something that can
10461
+ * receive focus, such as a button, a link or a tab. Without it, there is no way
10462
+ * to scroll with a keyboard. The examples explain the reasoning.
10463
+ * :::
10464
+ * @exampleComponent limel-example-scroller-horizontal
10465
+ * @exampleComponent limel-example-scroller-vertical
10466
+ * @private
10467
+ */
10468
+ interface LimelScroller {
10469
+ /**
10470
+ * The axis along which the content scrolls.
10471
+ * @default 'horizontal'
10472
+ */
10473
+ "orientation"?: 'horizontal' | 'vertical';
10474
+ }
10375
10475
  /**
10376
10476
  * ## Keyboard
10377
10477
  * Typing characters jumps to the option whose text starts with them, the way
@@ -10757,6 +10857,8 @@ declare namespace LocalJSX {
10757
10857
  * :::
10758
10858
  * An exception for using tab bars in a high level of hierarchy is their usage in modals. This is because modals are perceived as a separate place and not a part of the current context. Therefore you can use tab bars in a modal to group and organize its content.
10759
10859
  * A tab bar can contain an unlimited number of tabs. However, depending on the device width and width of the tabs, the number of tabs that are visible at the same time will vary. When there is limited horizontal space, the component shows a left-arrow and/or right-arrow button, which scrolls and reveals the additional tabs. The tab bar can also be swiped left and right on a touch-device.
10860
+ * The arrows are only a shortcut for people who use a mouse or a touch screen. Screen readers do not announce them, and the Tab key skips them. People who use a keyboard or a screen reader move between the tabs, and the tab bar keeps the selected tab in view.
10861
+ * The left and right arrow keys move to the previous and the next tab, and select it. Home and End move to the first and the last tab. Moving past the last tab continues at the first one, and the other way around. The Tab key moves on to what comes after the tab bar, and moving back with Shift and Tab lands on the selected tab, or on the first tab when none is selected.
10760
10862
  * :::tip Other things to consider
10761
10863
  * Never divide the content of a tab using a nested tab bar.
10762
10864
  * Never place two tab bars within the same screen.
@@ -11710,6 +11812,9 @@ declare namespace LocalJSX {
11710
11812
  "badgeIcons": boolean;
11711
11813
  "maxLinesSecondaryText": number;
11712
11814
  }
11815
+ interface LimelScrollerAttributes {
11816
+ "orientation": 'horizontal' | 'vertical';
11817
+ }
11713
11818
  interface LimelSelectAttributes {
11714
11819
  "disabled": boolean;
11715
11820
  "readonly": boolean;
@@ -11888,6 +11993,7 @@ declare namespace LocalJSX {
11888
11993
  "limel-prosemirror-adapter": Omit<LimelProsemirrorAdapter, keyof LimelProsemirrorAdapterAttributes> & { [K in keyof LimelProsemirrorAdapter & keyof LimelProsemirrorAdapterAttributes]?: LimelProsemirrorAdapter[K] } & { [K in keyof LimelProsemirrorAdapter & keyof LimelProsemirrorAdapterAttributes as `attr:${K}`]?: LimelProsemirrorAdapterAttributes[K] } & { [K in keyof LimelProsemirrorAdapter & keyof LimelProsemirrorAdapterAttributes as `prop:${K}`]?: LimelProsemirrorAdapter[K] };
11889
11994
  "limel-radio-button": Omit<LimelRadioButton, keyof LimelRadioButtonAttributes> & { [K in keyof LimelRadioButton & keyof LimelRadioButtonAttributes]?: LimelRadioButton[K] } & { [K in keyof LimelRadioButton & keyof LimelRadioButtonAttributes as `attr:${K}`]?: LimelRadioButtonAttributes[K] } & { [K in keyof LimelRadioButton & keyof LimelRadioButtonAttributes as `prop:${K}`]?: LimelRadioButton[K] } & OneOf<"id", LimelRadioButton["id"], LimelRadioButtonAttributes["id"]>;
11890
11995
  "limel-radio-button-group": Omit<LimelRadioButtonGroup, keyof LimelRadioButtonGroupAttributes> & { [K in keyof LimelRadioButtonGroup & keyof LimelRadioButtonGroupAttributes]?: LimelRadioButtonGroup[K] } & { [K in keyof LimelRadioButtonGroup & keyof LimelRadioButtonGroupAttributes as `attr:${K}`]?: LimelRadioButtonGroupAttributes[K] } & { [K in keyof LimelRadioButtonGroup & keyof LimelRadioButtonGroupAttributes as `prop:${K}`]?: LimelRadioButtonGroup[K] };
11996
+ "limel-scroller": Omit<LimelScroller, keyof LimelScrollerAttributes> & { [K in keyof LimelScroller & keyof LimelScrollerAttributes]?: LimelScroller[K] } & { [K in keyof LimelScroller & keyof LimelScrollerAttributes as `attr:${K}`]?: LimelScrollerAttributes[K] } & { [K in keyof LimelScroller & keyof LimelScrollerAttributes as `prop:${K}`]?: LimelScroller[K] };
11891
11997
  "limel-select": Omit<LimelSelect, keyof LimelSelectAttributes> & { [K in keyof LimelSelect & keyof LimelSelectAttributes]?: LimelSelect[K] } & { [K in keyof LimelSelect & keyof LimelSelectAttributes as `attr:${K}`]?: LimelSelectAttributes[K] } & { [K in keyof LimelSelect & keyof LimelSelectAttributes as `prop:${K}`]?: LimelSelect[K] };
11892
11998
  "limel-shortcut": Omit<LimelShortcut, keyof LimelShortcutAttributes> & { [K in keyof LimelShortcut & keyof LimelShortcutAttributes]?: LimelShortcut[K] } & { [K in keyof LimelShortcut & keyof LimelShortcutAttributes as `attr:${K}`]?: LimelShortcutAttributes[K] } & { [K in keyof LimelShortcut & keyof LimelShortcutAttributes as `prop:${K}`]?: LimelShortcut[K] };
11893
11999
  "limel-slider": Omit<LimelSlider, keyof LimelSliderAttributes> & { [K in keyof LimelSlider & keyof LimelSliderAttributes]?: LimelSlider[K] } & { [K in keyof LimelSlider & keyof LimelSliderAttributes as `attr:${K}`]?: LimelSliderAttributes[K] } & { [K in keyof LimelSlider & keyof LimelSliderAttributes as `prop:${K}`]?: LimelSlider[K] };
@@ -13085,6 +13191,30 @@ declare module "@stencil/core" {
13085
13191
  * @beta
13086
13192
  */
13087
13193
  "limel-radio-button-group": LocalJSX.IntrinsicElements["limel-radio-button-group"] & JSXBase.HTMLAttributes<HTMLLimelRadioButtonGroupElement>;
13194
+ /**
13195
+ * Makes content that is larger than its container scrollable, along one axis.
13196
+ * The native scrollbar is hidden. Instead, an edge that has more to reveal
13197
+ * fades out, and an arrow appears on it. Clicking the arrow scrolls almost a
13198
+ * page, and leaves the last part of the previous page in view, as a reference
13199
+ * for how far the user has scrolled. For people who have asked their system to
13200
+ * reduce motion, the scroller jumps instead of gliding.
13201
+ * When something inside the scroller receives focus, the scroller reveals the
13202
+ * item that holds it, together with a glimpse of whatever is next to it. An
13203
+ * item can control how much of its neighbors gets revealed, by setting its
13204
+ * `scroll-margin`. An item that becomes selected without receiving focus is up
13205
+ * to the consumer to reveal, using the `reveal()` method.
13206
+ * :::note Accessibility
13207
+ * The arrows are only a shortcut for people who use a mouse or a touch screen.
13208
+ * They are not real buttons. Screen readers do not announce them, and the Tab
13209
+ * key skips them. Therefore, the content must contain something that can
13210
+ * receive focus, such as a button, a link or a tab. Without it, there is no way
13211
+ * to scroll with a keyboard. The examples explain the reasoning.
13212
+ * :::
13213
+ * @exampleComponent limel-example-scroller-horizontal
13214
+ * @exampleComponent limel-example-scroller-vertical
13215
+ * @private
13216
+ */
13217
+ "limel-scroller": LocalJSX.IntrinsicElements["limel-scroller"] & JSXBase.HTMLAttributes<HTMLLimelScrollerElement>;
13088
13218
  /**
13089
13219
  * ## Keyboard
13090
13220
  * Typing characters jumps to the option whose text starts with them, the way
@@ -13202,6 +13332,8 @@ declare module "@stencil/core" {
13202
13332
  * :::
13203
13333
  * An exception for using tab bars in a high level of hierarchy is their usage in modals. This is because modals are perceived as a separate place and not a part of the current context. Therefore you can use tab bars in a modal to group and organize its content.
13204
13334
  * A tab bar can contain an unlimited number of tabs. However, depending on the device width and width of the tabs, the number of tabs that are visible at the same time will vary. When there is limited horizontal space, the component shows a left-arrow and/or right-arrow button, which scrolls and reveals the additional tabs. The tab bar can also be swiped left and right on a touch-device.
13335
+ * The arrows are only a shortcut for people who use a mouse or a touch screen. Screen readers do not announce them, and the Tab key skips them. People who use a keyboard or a screen reader move between the tabs, and the tab bar keeps the selected tab in view.
13336
+ * The left and right arrow keys move to the previous and the next tab, and select it. Home and End move to the first and the last tab. Moving past the last tab continues at the first one, and the other way around. The Tab key moves on to what comes after the tab bar, and moving back with Shift and Tab lands on the selected tab, or on the first tab when none is selected.
13205
13337
  * :::tip Other things to consider
13206
13338
  * Never divide the content of a tab using a nested tab bar.
13207
13339
  * Never place two tab bars within the same screen.
@@ -1,5 +1,5 @@
1
1
  import { CacheStorageIconCache } from './cache-storage-icon-cache';
2
2
  import { InMemoryIconCache } from './in-memory-icon-cache';
3
- declare const _default: CacheStorageIconCache | InMemoryIconCache;
4
- export default _default;
3
+ declare const iconCache: CacheStorageIconCache | InMemoryIconCache;
4
+ export default iconCache;
5
5
  //# sourceMappingURL=factory.d.ts.map
@@ -2,6 +2,6 @@ export declare class Translations {
2
2
  get(key: string, language?: string, params?: object): string;
3
3
  private getTranslationsFor;
4
4
  }
5
- declare const _default: Translations;
6
- export default _default;
5
+ declare const translations: Translations;
6
+ export default translations;
7
7
  //# sourceMappingURL=translations.d.ts.map
@@ -0,0 +1,105 @@
1
+ /**
2
+ * These helpers implement the keyboard navigation of a row or a column of
3
+ * items, of which only one at a time is in the tab order. That is known as a
4
+ * "roving tabindex": the arrow keys move between the items, Home and End jump
5
+ * to the first and the last one, and Tab leaves the whole group. Tabbing back
6
+ * in lands on the item that was left, since that is the one that is in the tab
7
+ * order.
8
+ *
9
+ * Like the helpers in `typeahead.ts`, everything here is pure and stateless.
10
+ * The component keeps the state, and does the moving itself, since what moving
11
+ * means is not the same everywhere: moving between tabs selects the tab, while
12
+ * moving in a list only moves the focus. The component asks
13
+ * - whether a key press moves at all, with `isNavigationKey`
14
+ * - where it moves to, with `findNavigationTarget`
15
+ * - which item to put in the tab order, with `findTabStop`
16
+ */
17
+ /**
18
+ * The direction in which the items are laid out. A row is navigated with the
19
+ * left and right arrow keys, and a column with the up and down ones.
20
+ */
21
+ export type NavigationOrientation = 'horizontal' | 'vertical';
22
+ /**
23
+ * Returned when there is no item to move to.
24
+ */
25
+ export declare const NO_NAVIGATION_TARGET = -1;
26
+ export interface NavigationOptions<T> {
27
+ /**
28
+ * The direction in which the items are laid out.
29
+ */
30
+ orientation: NavigationOrientation;
31
+ /**
32
+ * Whether moving past the last item continues at the first one, and
33
+ * moving back from the first item continues at the last one. Without it,
34
+ * moving stops at the ends.
35
+ */
36
+ wrap?: boolean;
37
+ /**
38
+ * Tells whether an item cannot be moved to, because it is disabled or is
39
+ * not an item at all, like a separator. Such an item is skipped, but still
40
+ * has its place among the items.
41
+ */
42
+ isDisabled?: (item: T) => boolean;
43
+ }
44
+ /**
45
+ * Whether a keyboard event is one that moves between the items: an arrow key
46
+ * that goes along the orientation, or Home or End.
47
+ *
48
+ * A key that is pressed with Alt, Ctrl or Cmd is not, since the browser puts
49
+ * those to its own use, such as going back with Alt and the left arrow. Shift
50
+ * is allowed.
51
+ *
52
+ * When this returns `true`, the component should prevent the default action
53
+ * of the event, so that the page does not scroll. Also when there turns out to
54
+ * be nowhere to move to.
55
+ *
56
+ * @param event - the keyboard event to inspect
57
+ * @param options - the same options that are used to move between the items.
58
+ * Only the orientation matters here.
59
+ * @returns `true` when the event is for moving between the items
60
+ */
61
+ export declare function isNavigationKey(event: KeyboardEvent, options: Pick<NavigationOptions<unknown>, 'orientation'>): boolean;
62
+ /**
63
+ * Find the item that a key press moves to.
64
+ *
65
+ * - The arrow keys that go along the orientation move to the next and the
66
+ * previous item. At the ends they stop, or continue at the other end when
67
+ * `options.wrap` is set.
68
+ * - Home and End move to the first and the last item.
69
+ * - Items that cannot be moved to are skipped.
70
+ * - Without a current item, moving forward starts at the first item, and
71
+ * moving back at the last one.
72
+ *
73
+ * @param items - the items, in the order that they are laid out in. Only their
74
+ * number matters, unless `options.isDisabled` is given.
75
+ * @param key - the `key` of the keyboard event
76
+ * @param currentIndex - the index of the item to move from, usually the one
77
+ * that has focus. Anything outside `items` is treated as "no current item".
78
+ * @param options - which keys move, and how
79
+ * @returns the index of the item to move to. That is `currentIndex` itself
80
+ * when there is nowhere to go from there, since the end is reached and it does
81
+ * not wrap, or since it is the only item that can be moved to. It is
82
+ * `NO_NAVIGATION_TARGET` when the key does not move in this orientation, and
83
+ * when none of the items can be moved to.
84
+ */
85
+ export declare function findNavigationTarget<T>(items: ReadonlyArray<T>, key: string, currentIndex: number, options: NavigationOptions<T>): number;
86
+ /**
87
+ * Find the item that should be in the tab order, which is the one that Tab
88
+ * lands on when it enters the group. The rest of the items are left out of the
89
+ * tab order, and are reached with the arrow keys.
90
+ *
91
+ * That is the preferred item, if it can be moved to. Otherwise the first item
92
+ * that can.
93
+ *
94
+ * @param items - the items, in the order that they are laid out in. Only their
95
+ * number matters, unless `options.isDisabled` is given.
96
+ * @param preferredIndex - the index of the item that should be in the tab
97
+ * order if possible. For a group with a selection that is the selected item,
98
+ * and otherwise the item that last had focus, which the component has to keep
99
+ * track of. Anything outside `items` means that there is no preference.
100
+ * @param options - the same options that are used to move between the items
101
+ * @returns the index of the item to put in the tab order, or
102
+ * `NO_NAVIGATION_TARGET` when none of the items can be moved to
103
+ */
104
+ export declare function findTabStop<T>(items: ReadonlyArray<T>, preferredIndex: number, options?: Pick<NavigationOptions<T>, 'isDisabled'>): number;
105
+ //# sourceMappingURL=keyboard-navigation.d.ts.map
@@ -11,4 +11,6 @@ export declare const ARROW_UP = "ArrowUp";
11
11
  export declare const ARROW_DOWN = "ArrowDown";
12
12
  export declare const ARROW_LEFT = "ArrowLeft";
13
13
  export declare const ARROW_RIGHT = "ArrowRight";
14
+ export declare const HOME = "Home";
15
+ export declare const END = "End";
14
16
  //# sourceMappingURL=keycodes.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limetech/lime-elements",
3
- "version": "40.6.0",
3
+ "version": "40.6.2",
4
4
  "description": "Lime Elements",
5
5
  "author": "Lime Technologies",
6
6
  "license": "Apache-2.0",
@@ -52,15 +52,15 @@
52
52
  "generate": "stencil generate"
53
53
  },
54
54
  "devDependencies": {
55
+ "@commitlint/cli": "^21.2.3",
55
56
  "@commitlint/config-conventional": "^21.2.3",
56
- "@limetech/eslint-config": "^4.1.0",
57
- "@microsoft/api-extractor": "^7.59.2",
58
- "@playwright/test": "1.62.1",
57
+ "@limetech/eslint-config": "^5.0.1",
58
+ "@microsoft/api-extractor": "^7.59.3",
59
+ "@playwright/test": "1.63.0",
59
60
  "@popperjs/core": "^2.11.8",
60
61
  "@rjsf/core": "^6.11.0",
61
62
  "@rjsf/utils": "^6.11.0",
62
63
  "@rjsf/validator-ajv8": "^6.11.0",
63
- "@rollup/plugin-node-resolve": "^13.3.0",
64
64
  "@stencil/core": "^4.43.5",
65
65
  "@stencil/sass": "^3.3.3",
66
66
  "@stencil/vitest": "^1.15.1",
@@ -76,10 +76,10 @@
76
76
  "cross-env": "^10.1.0",
77
77
  "dayjs": "^1.11.23",
78
78
  "diff": "^9.0.0",
79
- "eslint": "^9.39.4",
79
+ "eslint": "^10.11.0",
80
80
  "flatpickr": "^4.6.13",
81
81
  "glob": "^13.0.6",
82
- "globals": "^17.12.0",
82
+ "globals": "^17.13.0",
83
83
  "hast-util-from-dom": "^5.0.1",
84
84
  "hast-util-to-mdast": "^10.1.2",
85
85
  "html-escaper": "^3.0.3",
@@ -89,12 +89,12 @@
89
89
  "lodash-es": "^4.17.23",
90
90
  "material-components-web": "^13.0.0",
91
91
  "mdast-util-to-markdown": "^2.1.3",
92
- "moment": "^2.30.1",
92
+ "moment": "^2.31.0",
93
93
  "morphdom": "^2.7.8",
94
94
  "number-abbreviate": "^2.0.0",
95
95
  "parse-css-color": "^0.2.1",
96
- "postal-mime": "^3.0.1",
97
- "prettier": "^3.8.3",
96
+ "postal-mime": "^4.0.2",
97
+ "prettier": "^3.9.9",
98
98
  "prosemirror-example-setup": "^1.2.3",
99
99
  "prosemirror-markdown": "^1.13.8",
100
100
  "prosemirror-model": ">=1.25.12",
@@ -119,11 +119,11 @@
119
119
  "sirv": "^3.0.2",
120
120
  "sortablejs": "^1.15.7",
121
121
  "style-to-object": "^2.0.2",
122
- "tabulator-tables": "^6.5.3",
122
+ "tabulator-tables": "^6.6.1",
123
123
  "typescript": "^4.9.5",
124
124
  "unified": "^11.0.5",
125
125
  "unist-util-visit": "^5.0.0",
126
- "yargs": "^17.7.2"
126
+ "yargs": "^18.2.0"
127
127
  },
128
128
  "overrides": {
129
129
  "prosemirror-model": "$prosemirror-model"
@@ -1 +0,0 @@
1
- import{r as t,c as i,h as s,H as n}from"./p-Bnc9lzk2.js";import{t as e}from"./p-B8hoCfhT.js";import{a as h}from"./p-C4_9qUMP.js";import{p as a}from"./p-CSC2LJ7P.js";import"./p-C3hECvXE.js";const r=class{constructor(s){t(this,s),this.jump=i(this,"jump",7),this.open=!1,this.page=1,this.pageCount=1,this.loading=!1,this.language="en",this.value="",this.shouldFocusField=!1,this.handleChange=t=>{var i;t.stopPropagation(),this.value=String(null!==(i=t.detail)&&void 0!==i?i:"")},this.handleKeyDown=t=>{t.key===h&&(t.preventDefault(),this.commit())},this.commit=()=>{const t=this.target;null===t||this.loading||this.jump.emit(t)},this.setField=t=>{this.field=t},this.translate=(t,i)=>e.get(t,this.language,i)}componentWillLoad(){this.handleOpenChange()}handleLanguageChange(){this.numberFormat=void 0}handleOpenChange(){this.open&&(this.value=String(this.page),this.shouldFocusField=!0)}componentDidRender(){this.shouldFocusField&&(this.shouldFocusField=!1,this.focusField())}render(){if(this.open)return s(n,{onKeyDown:this.handleKeyDown},s("limel-input-field",{type:"number",label:this.translate("pagination.page-number"),placeholder:this.pageRange,value:this.value,onChange:this.handleChange,min:1,max:this.pageCount,step:1,ref:this.setField}),s("limel-button",{primary:!0,label:this.translate("pagination.go"),disabled:this.loading,onClick:this.commit}))}get target(){var t,i;const s=null!==(i=null===(t=this.nativeField)||void 0===t?void 0:t.value)&&void 0!==i?i:this.value;return a(s,this.pageCount)}get pageRange(){return this.translate("pagination.page-range",{first:this.formatNumber(1),last:this.formatNumber(this.pageCount)})}get nativeField(){var t,i;return null===(i=null===(t=this.field)||void 0===t?void 0:t.shadowRoot)||void 0===i?void 0:i.querySelector("input")}focusField(){const t=this.field;null==t||t.componentOnReady().then((()=>{requestAnimationFrame((()=>{var i,s;t.focus(),null===(s=null===(i=t.shadowRoot)||void 0===i?void 0:i.querySelector("input"))||void 0===s||s.select()}))}))}formatNumber(t){var i;return null!==(i=this.numberFormat)&&void 0!==i||(this.numberFormat=this.createNumberFormat()),this.numberFormat.format(t)}createNumberFormat(){try{return new Intl.NumberFormat(this.language)}catch(t){return new Intl.NumberFormat("en")}}static get watchers(){return{language:[{handleLanguageChange:0}],open:[{handleOpenChange:0}]}}};r.style=":host{display:flex;flex-direction:column;gap:0.75rem;padding:0.75rem;min-width:12rem}:host(:not([open])){display:none}";export{r as limel_pagination_jump}