@limetech/lime-elements 40.9.0 → 40.10.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 (296) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/cjs/lime-elements.cjs.js +1 -1
  3. package/dist/cjs/limel-3d-hover-effect-glow.cjs.entry.js +1 -1
  4. package/dist/cjs/limel-action-bar_3.cjs.entry.js +3 -3
  5. package/dist/cjs/limel-ai-avatar.cjs.entry.js +1 -1
  6. package/dist/cjs/limel-badge.cjs.entry.js +2 -2
  7. package/dist/cjs/limel-banner.cjs.entry.js +1 -1
  8. package/dist/cjs/limel-breadcrumbs_6.cjs.entry.js +6 -6
  9. package/dist/cjs/limel-button-group.cjs.entry.js +1 -1
  10. package/dist/cjs/limel-button.cjs.entry.js +2 -2
  11. package/dist/cjs/limel-callout.cjs.entry.js +1 -1
  12. package/dist/cjs/limel-card.cjs.entry.js +1 -1
  13. package/dist/cjs/limel-checkbox.cjs.entry.js +1 -1
  14. package/dist/cjs/limel-chip-set.cjs.entry.js +1 -1
  15. package/dist/cjs/limel-chip_2.cjs.entry.js +1 -1
  16. package/dist/cjs/limel-circular-progress.cjs.entry.js +1 -1
  17. package/dist/cjs/limel-code-diff.cjs.entry.js +1 -1
  18. package/dist/cjs/limel-code-editor.cjs.entry.js +1 -1
  19. package/dist/cjs/limel-collapsible-section.cjs.entry.js +1 -1
  20. package/dist/cjs/limel-color-picker-palette.cjs.entry.js +2 -2
  21. package/dist/cjs/limel-color-picker.cjs.entry.js +1 -1
  22. package/dist/cjs/limel-dialog.cjs.entry.js +2 -2
  23. package/dist/cjs/limel-dock.cjs.entry.js +2 -2
  24. package/dist/cjs/limel-drag-handle.cjs.entry.js +1 -1
  25. package/dist/cjs/limel-email-viewer.cjs.entry.js +1 -1
  26. package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +2 -2
  27. package/dist/cjs/limel-file.cjs.entry.js +1 -1
  28. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
  29. package/dist/cjs/limel-flex-container.cjs.entry.js +1 -1
  30. package/dist/cjs/limel-form.cjs.entry.js +1 -1
  31. package/dist/cjs/limel-grid.cjs.entry.js +1 -1
  32. package/dist/cjs/limel-header.cjs.entry.js +1 -1
  33. package/dist/cjs/limel-help-content.cjs.entry.js +1 -1
  34. package/dist/cjs/limel-help.cjs.entry.js +2 -2
  35. package/dist/cjs/limel-helper-line_3.cjs.entry.js +4 -4
  36. package/dist/cjs/limel-hotkey_4.cjs.entry.js +231 -15
  37. package/dist/cjs/limel-icon-button.cjs.entry.js +1 -1
  38. package/dist/cjs/limel-icon.cjs.entry.js +1 -1
  39. package/dist/cjs/limel-info-tile.cjs.entry.js +2 -2
  40. package/dist/cjs/limel-list-item.cjs.entry.js +2 -2
  41. package/dist/cjs/limel-markdown.cjs.entry.js +1 -1
  42. package/dist/cjs/limel-masonry-layout.cjs.entry.js +1 -1
  43. package/dist/cjs/limel-menu-item-meta.cjs.entry.js +1 -1
  44. package/dist/cjs/limel-pagination.cjs.entry.js +1 -1
  45. package/dist/cjs/limel-picker.cjs.entry.js +1 -1
  46. package/dist/cjs/limel-popover_2.cjs.entry.js +2 -2
  47. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +1 -1
  48. package/dist/cjs/limel-radio-button-group.cjs.entry.js +1 -1
  49. package/dist/cjs/limel-radio-button.cjs.entry.js +2 -2
  50. package/dist/cjs/limel-resize-handle.cjs.entry.js +240 -0
  51. package/dist/cjs/limel-scroller.cjs.entry.js +2 -2
  52. package/dist/cjs/limel-select.cjs.entry.js +1 -1
  53. package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
  54. package/dist/cjs/limel-side-panel.cjs.entry.js +283 -0
  55. package/dist/cjs/limel-slider.cjs.entry.js +3 -3
  56. package/dist/cjs/limel-snackbar.cjs.entry.js +2 -2
  57. package/dist/cjs/limel-split-button.cjs.entry.js +2 -2
  58. package/dist/cjs/limel-switch.cjs.entry.js +1 -1
  59. package/dist/cjs/limel-tab-bar.cjs.entry.js +1 -1
  60. package/dist/cjs/limel-tab-panel.cjs.entry.js +1 -1
  61. package/dist/cjs/limel-table.cjs.entry.js +2 -2
  62. package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +3 -3
  63. package/dist/cjs/limel-text-editor.cjs.entry.js +1 -1
  64. package/dist/cjs/loader.cjs.js +1 -1
  65. package/dist/collection/collection-manifest.json +2 -0
  66. package/dist/collection/components/3d-hover-effect-glow/3d-hover-effect-glow.js +1 -1
  67. package/dist/collection/components/action-bar/action-bar-item/action-bar-overflow-menu.js +1 -1
  68. package/dist/collection/components/action-bar/action-bar.js +2 -2
  69. package/dist/collection/components/ai-avatar/ai-avatar.js +1 -1
  70. package/dist/collection/components/badge/badge.js +2 -2
  71. package/dist/collection/components/banner/banner.js +1 -1
  72. package/dist/collection/components/breadcrumbs/breadcrumbs.js +1 -1
  73. package/dist/collection/components/button/button.js +2 -2
  74. package/dist/collection/components/button-group/button-group.js +1 -1
  75. package/dist/collection/components/callout/callout.js +1 -1
  76. package/dist/collection/components/card/card.js +1 -1
  77. package/dist/collection/components/checkbox/checkbox.js +1 -1
  78. package/dist/collection/components/chip/chip.js +1 -1
  79. package/dist/collection/components/chip-set/chip-set.js +1 -1
  80. package/dist/collection/components/circular-progress/circular-progress.js +1 -1
  81. package/dist/collection/components/code-diff/code-diff.js +1 -1
  82. package/dist/collection/components/code-editor/code-editor.js +1 -1
  83. package/dist/collection/components/collapsible-section/collapsible-section.js +1 -1
  84. package/dist/collection/components/color-picker/color-picker-palette.js +2 -2
  85. package/dist/collection/components/color-picker/color-picker.js +1 -1
  86. package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.js +1 -1
  87. package/dist/collection/components/dialog/dialog.js +2 -2
  88. package/dist/collection/components/dock/dock.js +2 -2
  89. package/dist/collection/components/drag-handle/drag-handle.js +1 -1
  90. package/dist/collection/components/email-viewer/email-viewer.js +1 -1
  91. package/dist/collection/components/file/file.js +1 -1
  92. package/dist/collection/components/file-dropzone/file-dropzone.js +1 -1
  93. package/dist/collection/components/file-input/file-input.js +1 -1
  94. package/dist/collection/components/flex-container/flex-container.js +1 -1
  95. package/dist/collection/components/form/form.js +1 -1
  96. package/dist/collection/components/grid/grid.js +1 -1
  97. package/dist/collection/components/header/header.js +1 -1
  98. package/dist/collection/components/help/help-content.js +1 -1
  99. package/dist/collection/components/help/help.js +2 -2
  100. package/dist/collection/components/helper-line/helper-line.js +2 -2
  101. package/dist/collection/components/hotkey/get-hotkey-aria-label.js +14 -0
  102. package/dist/collection/components/hotkey/hotkey.js +3 -5
  103. package/dist/collection/components/icon/icon.js +1 -1
  104. package/dist/collection/components/icon-button/icon-button.js +1 -1
  105. package/dist/collection/components/info-tile/info-tile.js +2 -2
  106. package/dist/collection/components/input-field/input-field.js +1 -1
  107. package/dist/collection/components/list/list.js +1 -1
  108. package/dist/collection/components/list-item/list-item.js +2 -2
  109. package/dist/collection/components/list-item/menu-item-meta/menu-item-meta.js +1 -1
  110. package/dist/collection/components/markdown/markdown.js +1 -1
  111. package/dist/collection/components/masonry-layout/masonry-layout.js +1 -1
  112. package/dist/collection/components/menu/menu.js +1 -1
  113. package/dist/collection/components/menu-list/menu-list.js +1 -1
  114. package/dist/collection/components/menu-surface/menu-surface.js +1 -1
  115. package/dist/collection/components/notched-outline/notched-outline.js +1 -1
  116. package/dist/collection/components/pagination/pagination.js +1 -1
  117. package/dist/collection/components/picker/picker.js +1 -1
  118. package/dist/collection/components/popover/popover.js +1 -1
  119. package/dist/collection/components/popover-surface/popover-surface.js +1 -1
  120. package/dist/collection/components/portal/portal.js +1 -1
  121. package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
  122. package/dist/collection/components/radio-button-group/radio-button.js +2 -2
  123. package/dist/collection/components/resize-handle/resize-handle.css +274 -0
  124. package/dist/collection/components/resize-handle/resize-handle.js +210 -0
  125. package/dist/collection/components/scroller/scroller.js +2 -2
  126. package/dist/collection/components/select/select.js +1 -1
  127. package/dist/collection/components/shortcut/shortcut.js +1 -1
  128. package/dist/collection/components/side-panel/side-panel.css +300 -0
  129. package/dist/collection/components/side-panel/side-panel.js +433 -0
  130. package/dist/collection/components/slider/slider.js +3 -3
  131. package/dist/collection/components/snackbar/snackbar.js +2 -2
  132. package/dist/collection/components/spinner/spinner.js +1 -1
  133. package/dist/collection/components/split-button/split-button.js +2 -2
  134. package/dist/collection/components/switch/switch.js +1 -1
  135. package/dist/collection/components/tab-bar/tab-bar.js +1 -1
  136. package/dist/collection/components/tab-panel/tab-panel.js +1 -1
  137. package/dist/collection/components/table/table.js +2 -2
  138. package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +3 -3
  139. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +1 -1
  140. package/dist/collection/components/text-editor/text-editor.js +1 -1
  141. package/dist/collection/components/tooltip/description-registry.js +57 -0
  142. package/dist/collection/components/tooltip/get-description.js +42 -0
  143. package/dist/collection/components/tooltip/tooltip-content.js +1 -1
  144. package/dist/collection/components/tooltip/tooltip.js +53 -11
  145. package/dist/collection/util/drag-to-resize.js +108 -0
  146. package/dist/collection/util/get-deep-active-element.js +15 -0
  147. package/dist/collection/util/get-focus-target.js +69 -0
  148. package/dist/collection/util/resize-location.js +76 -0
  149. package/dist/esm/{keycodes-DQ5DmW_Y.js → keycodes-Bu6-QXrA.js} +1 -1
  150. package/dist/esm/lime-elements.js +1 -1
  151. package/dist/esm/limel-3d-hover-effect-glow.entry.js +1 -1
  152. package/dist/esm/limel-action-bar_3.entry.js +3 -3
  153. package/dist/esm/limel-ai-avatar.entry.js +1 -1
  154. package/dist/esm/limel-badge.entry.js +2 -2
  155. package/dist/esm/limel-banner.entry.js +1 -1
  156. package/dist/esm/limel-breadcrumbs_6.entry.js +7 -7
  157. package/dist/esm/limel-button-group.entry.js +1 -1
  158. package/dist/esm/limel-button.entry.js +2 -2
  159. package/dist/esm/limel-callout.entry.js +1 -1
  160. package/dist/esm/limel-card.entry.js +1 -1
  161. package/dist/esm/limel-checkbox.entry.js +1 -1
  162. package/dist/esm/limel-chip-set.entry.js +2 -2
  163. package/dist/esm/limel-chip_2.entry.js +2 -2
  164. package/dist/esm/limel-circular-progress.entry.js +1 -1
  165. package/dist/esm/limel-code-diff.entry.js +1 -1
  166. package/dist/esm/limel-code-editor.entry.js +1 -1
  167. package/dist/esm/limel-collapsible-section.entry.js +1 -1
  168. package/dist/esm/limel-color-picker-palette.entry.js +2 -2
  169. package/dist/esm/limel-color-picker.entry.js +1 -1
  170. package/dist/esm/limel-dialog.entry.js +2 -2
  171. package/dist/esm/limel-dock.entry.js +2 -2
  172. package/dist/esm/limel-drag-handle.entry.js +1 -1
  173. package/dist/esm/limel-email-viewer.entry.js +1 -1
  174. package/dist/esm/limel-file-dropzone_2.entry.js +2 -2
  175. package/dist/esm/limel-file.entry.js +1 -1
  176. package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
  177. package/dist/esm/limel-flex-container.entry.js +1 -1
  178. package/dist/esm/limel-form.entry.js +1 -1
  179. package/dist/esm/limel-grid.entry.js +1 -1
  180. package/dist/esm/limel-header.entry.js +1 -1
  181. package/dist/esm/limel-help-content.entry.js +1 -1
  182. package/dist/esm/limel-help.entry.js +2 -2
  183. package/dist/esm/limel-helper-line_3.entry.js +4 -4
  184. package/dist/esm/limel-hotkey_4.entry.js +231 -15
  185. package/dist/esm/limel-icon-button.entry.js +1 -1
  186. package/dist/esm/limel-icon.entry.js +1 -1
  187. package/dist/esm/limel-info-tile.entry.js +2 -2
  188. package/dist/esm/limel-list-item.entry.js +2 -2
  189. package/dist/esm/limel-markdown.entry.js +1 -1
  190. package/dist/esm/limel-masonry-layout.entry.js +1 -1
  191. package/dist/esm/limel-menu-item-meta.entry.js +1 -1
  192. package/dist/esm/limel-pagination-jump.entry.js +1 -1
  193. package/dist/esm/limel-pagination.entry.js +1 -1
  194. package/dist/esm/limel-picker.entry.js +2 -2
  195. package/dist/esm/limel-popover_2.entry.js +3 -3
  196. package/dist/esm/limel-prosemirror-adapter.entry.js +1 -1
  197. package/dist/esm/limel-radio-button-group.entry.js +1 -1
  198. package/dist/esm/limel-radio-button.entry.js +2 -2
  199. package/dist/esm/limel-resize-handle.entry.js +238 -0
  200. package/dist/esm/limel-scroller.entry.js +2 -2
  201. package/dist/esm/limel-select.entry.js +2 -2
  202. package/dist/esm/limel-shortcut.entry.js +1 -1
  203. package/dist/esm/limel-side-panel.entry.js +281 -0
  204. package/dist/esm/limel-slider.entry.js +3 -3
  205. package/dist/esm/limel-snackbar.entry.js +2 -2
  206. package/dist/esm/limel-split-button.entry.js +2 -2
  207. package/dist/esm/limel-switch.entry.js +1 -1
  208. package/dist/esm/limel-tab-bar.entry.js +2 -2
  209. package/dist/esm/limel-tab-panel.entry.js +1 -1
  210. package/dist/esm/limel-table.entry.js +2 -2
  211. package/dist/esm/limel-text-editor-link-menu.entry.js +4 -4
  212. package/dist/esm/limel-text-editor.entry.js +1 -1
  213. package/dist/esm/loader.js +1 -1
  214. package/dist/lime-elements/lime-elements.esm.js +1 -1
  215. package/dist/lime-elements/{p-5da47a8a.entry.js → p-065f1635.entry.js} +1 -1
  216. package/dist/lime-elements/{p-0e13ec91.entry.js → p-06cd9512.entry.js} +1 -1
  217. package/dist/lime-elements/{p-96246494.entry.js → p-07916acc.entry.js} +1 -1
  218. package/dist/lime-elements/{p-fdec09e9.entry.js → p-0c2ce99b.entry.js} +1 -1
  219. package/dist/lime-elements/{p-00c36c9e.entry.js → p-1020ca20.entry.js} +1 -1
  220. package/dist/lime-elements/{p-288ef79a.entry.js → p-14aff731.entry.js} +1 -1
  221. package/dist/lime-elements/p-1a5478e3.entry.js +1 -0
  222. package/dist/lime-elements/{p-2b033dfa.entry.js → p-24e5d420.entry.js} +1 -1
  223. package/dist/lime-elements/{p-9afa4721.entry.js → p-262a3d66.entry.js} +1 -1
  224. package/dist/lime-elements/{p-45461ec5.entry.js → p-29b2a176.entry.js} +1 -1
  225. package/dist/lime-elements/{p-e752dc7f.entry.js → p-2ba9d62f.entry.js} +1 -1
  226. package/dist/lime-elements/{p-a1c69e0c.entry.js → p-33ed0c68.entry.js} +1 -1
  227. package/dist/lime-elements/{p-efaf2616.entry.js → p-35bc5ed2.entry.js} +1 -1
  228. package/dist/lime-elements/{p-d37fbbd2.entry.js → p-3ee121fa.entry.js} +1 -1
  229. package/dist/lime-elements/{p-d1b7cc55.entry.js → p-458c131f.entry.js} +3 -3
  230. package/dist/lime-elements/{p-c439b68b.entry.js → p-46bf8b22.entry.js} +1 -1
  231. package/dist/lime-elements/{p-303edb1a.entry.js → p-4882acaa.entry.js} +1 -1
  232. package/dist/lime-elements/{p-7b4351f6.entry.js → p-4a7df81a.entry.js} +1 -1
  233. package/dist/lime-elements/{p-982a0f10.entry.js → p-527e9c95.entry.js} +1 -1
  234. package/dist/lime-elements/{p-5f5c6e7d.entry.js → p-54631dbf.entry.js} +1 -1
  235. package/dist/lime-elements/{p-d5800180.entry.js → p-5473eb74.entry.js} +1 -1
  236. package/dist/lime-elements/p-566750e5.entry.js +1 -0
  237. package/dist/lime-elements/{p-f4a0b1bc.entry.js → p-622660dd.entry.js} +1 -1
  238. package/dist/lime-elements/{p-d19c7a3a.entry.js → p-646731b6.entry.js} +1 -1
  239. package/dist/lime-elements/{p-7eab1341.entry.js → p-68542e00.entry.js} +1 -1
  240. package/dist/lime-elements/p-780dae0b.entry.js +1 -0
  241. package/dist/lime-elements/{p-8ac79ef5.entry.js → p-7a290372.entry.js} +1 -1
  242. package/dist/lime-elements/{p-ff1a8b2e.entry.js → p-7a2e0e18.entry.js} +1 -1
  243. package/dist/lime-elements/{p-7fa85785.entry.js → p-7cdbbffe.entry.js} +2 -2
  244. package/dist/lime-elements/{p-b6d39581.entry.js → p-887eea11.entry.js} +1 -1
  245. package/dist/lime-elements/{p-9c8c2fb7.entry.js → p-8a59698f.entry.js} +1 -1
  246. package/dist/lime-elements/p-8d567e42.entry.js +1 -0
  247. package/dist/lime-elements/{p-b22b52a1.entry.js → p-910807cb.entry.js} +1 -1
  248. package/dist/lime-elements/p-9168793f.entry.js +1 -0
  249. package/dist/lime-elements/{p-58b7c634.entry.js → p-9461c6bb.entry.js} +1 -1
  250. package/dist/lime-elements/{p-a98cbd1f.entry.js → p-9b1934fb.entry.js} +1 -1
  251. package/dist/lime-elements/p-9b384d62.entry.js +1 -0
  252. package/dist/lime-elements/{p-ee719744.entry.js → p-9ca18ba5.entry.js} +1 -1
  253. package/dist/lime-elements/{p-DQ5DmW_Y.js → p-Bu6-QXrA.js} +1 -1
  254. package/dist/lime-elements/{p-ab91cfff.entry.js → p-a317f2fa.entry.js} +1 -1
  255. package/dist/lime-elements/{p-32a050a3.entry.js → p-a449ca04.entry.js} +1 -1
  256. package/dist/lime-elements/p-a5246373.entry.js +1 -0
  257. package/dist/lime-elements/{p-9992b5f9.entry.js → p-a78aaf37.entry.js} +1 -1
  258. package/dist/lime-elements/p-abcc451a.entry.js +1 -0
  259. package/dist/lime-elements/{p-9e016212.entry.js → p-abed5afd.entry.js} +1 -1
  260. package/dist/lime-elements/{p-107654bb.entry.js → p-ae2e5e87.entry.js} +1 -1
  261. package/dist/lime-elements/{p-fdd674fc.entry.js → p-b69af611.entry.js} +1 -1
  262. package/dist/lime-elements/{p-74060535.entry.js → p-b9da0108.entry.js} +2 -2
  263. package/dist/lime-elements/{p-4cbcafae.entry.js → p-bf849dc9.entry.js} +1 -1
  264. package/dist/lime-elements/{p-0d6925f4.entry.js → p-c12fbc91.entry.js} +1 -1
  265. package/dist/lime-elements/{p-03cb609e.entry.js → p-cf6fab84.entry.js} +1 -1
  266. package/dist/lime-elements/{p-29c73bdf.entry.js → p-d3475514.entry.js} +1 -1
  267. package/dist/lime-elements/{p-006cfb3d.entry.js → p-d5144955.entry.js} +1 -1
  268. package/dist/lime-elements/{p-91a572c8.entry.js → p-d79d777e.entry.js} +1 -1
  269. package/dist/lime-elements/p-d7e5a4a7.entry.js +1 -0
  270. package/dist/lime-elements/{p-9415411e.entry.js → p-db1f9eba.entry.js} +1 -1
  271. package/dist/lime-elements/{p-a736ea08.entry.js → p-dd075353.entry.js} +1 -1
  272. package/dist/lime-elements/{p-526ede01.entry.js → p-de4d261a.entry.js} +1 -1
  273. package/dist/lime-elements/{p-e6a34047.entry.js → p-def7b38f.entry.js} +1 -1
  274. package/dist/lime-elements/{p-bc70090d.entry.js → p-e247e9fe.entry.js} +1 -1
  275. package/dist/lime-elements/{p-e2b074aa.entry.js → p-e25bfb2c.entry.js} +1 -1
  276. package/dist/lime-elements/{p-727b6c11.entry.js → p-ec74a07a.entry.js} +1 -1
  277. package/dist/lime-elements/{p-d1e5dd12.entry.js → p-ecded772.entry.js} +1 -1
  278. package/dist/types/components/hotkey/get-hotkey-aria-label.d.ts +8 -0
  279. package/dist/types/components/resize-handle/resize-handle.d.ts +64 -0
  280. package/dist/types/components/side-panel/side-panel.d.ts +134 -0
  281. package/dist/types/components/tooltip/description-registry.d.ts +21 -0
  282. package/dist/types/components/tooltip/get-description.d.ts +13 -0
  283. package/dist/types/components/tooltip/tooltip.d.ts +11 -3
  284. package/dist/types/components.d.ts +325 -6
  285. package/dist/types/util/drag-to-resize.d.ts +33 -0
  286. package/dist/types/util/get-deep-active-element.d.ts +9 -0
  287. package/dist/types/util/get-focus-target.d.ts +14 -0
  288. package/dist/types/util/resize-location.d.ts +59 -0
  289. package/package.json +4 -4
  290. package/dist/lime-elements/p-14a28a08.entry.js +0 -1
  291. package/dist/lime-elements/p-3d05e21f.entry.js +0 -1
  292. package/dist/lime-elements/p-681cb6de.entry.js +0 -1
  293. package/dist/lime-elements/p-a1d1470c.entry.js +0 -1
  294. package/dist/lime-elements/p-a2e6f16e.entry.js +0 -1
  295. package/dist/lime-elements/p-aa897903.entry.js +0 -1
  296. package/dist/lime-elements/p-de4719a6.entry.js +0 -1
@@ -0,0 +1,210 @@
1
+ import { h, Host, } from "@stencil/core";
2
+ import { dragToResize } from "../../util/drag-to-resize";
3
+ import { getKeyboardSizeChange, getOrientation, measureSize, } from "../../util/resize-location";
4
+ /**
5
+ * A handle on an edge of an element. The user drags the handle, or presses an
6
+ * arrow key while the handle has focus, to resize the element.
7
+ *
8
+ * The handle does not resize the element. It emits `changeSize` with the size
9
+ * that the user asks for, and the consumer applies it.
10
+ *
11
+ * The handle must be a direct child of the element that it resizes. When the
12
+ * handle is placed directly in a shadow root, it resizes the element that has
13
+ * the shadow root. It has `position: absolute` and `z-index: 1`, and sits on
14
+ * the edge that `location` names. Give the element a `position` other than
15
+ * `static`. If other content covers the handle, also give the element
16
+ * `isolation: isolate`.
17
+ *
18
+ * @exampleComponent limel-example-resize-handle-basic
19
+ * @exampleComponent limel-example-resize-handle-locations
20
+ * @exampleComponent limel-example-resize-handle-grab-area
21
+ * @private
22
+ */
23
+ export class ResizeHandle {
24
+ constructor() {
25
+ /**
26
+ * The location of the handle relative to the resizable element.
27
+ */
28
+ this.location = 'left';
29
+ this.handleKeyDown = (event) => {
30
+ const change = getKeyboardSizeChange(this.location, event.key);
31
+ if (change === undefined) {
32
+ return;
33
+ }
34
+ event.preventDefault();
35
+ this.changeSize.emit(this.elementSize() + change);
36
+ this.endResize.emit();
37
+ };
38
+ this.elementSize = () => {
39
+ return measureSize(this.resizableElement(), this.location);
40
+ };
41
+ }
42
+ connectedCallback() {
43
+ this.stopResizing = dragToResize(this.host, {
44
+ getLocation: () => this.location,
45
+ getSize: this.elementSize,
46
+ resize: (size) => this.changeSize.emit(size),
47
+ end: () => this.endResize.emit(),
48
+ });
49
+ }
50
+ disconnectedCallback() {
51
+ var _a;
52
+ (_a = this.stopResizing) === null || _a === void 0 ? void 0 : _a.call(this);
53
+ this.stopResizing = undefined;
54
+ }
55
+ render() {
56
+ return (h(Host, { key: 'b4f84fff38ded8d6493be55685fbe1c8d27affdb', role: "separator", "aria-orientation": getOrientation(this.location), "aria-label": this.label, "aria-valuenow": this.value, "aria-valuemin": this.min, "aria-valuemax": this.max, tabindex: "0", onKeyDown: this.handleKeyDown }, h("div", { key: '02b4abbc61b0dd571ceda1d69de057605523e29a', role: "presentation" }, h("span", { key: 'ea5083fca722c11df72f4b0f647f087732a28033' }), h("span", { key: '81a176e0594f20572dbc94aea0e5dc7709a21d96' }), h("span", { key: '4c39fcd49f2ad087f16a032dfa085d3a8630c41e' }))));
57
+ }
58
+ resizableElement() {
59
+ if (this.host.parentElement) {
60
+ return this.host.parentElement;
61
+ }
62
+ return this.host.getRootNode().host;
63
+ }
64
+ static get is() { return "limel-resize-handle"; }
65
+ static get encapsulation() { return "shadow"; }
66
+ static get originalStyleUrls() {
67
+ return {
68
+ "$": ["resize-handle.scss"]
69
+ };
70
+ }
71
+ static get styleUrls() {
72
+ return {
73
+ "$": ["resize-handle.css"]
74
+ };
75
+ }
76
+ static get properties() {
77
+ return {
78
+ "location": {
79
+ "type": "string",
80
+ "mutable": false,
81
+ "complexType": {
82
+ "original": "'left' | 'right' | 'top' | 'bottom'",
83
+ "resolved": "\"bottom\" | \"left\" | \"right\" | \"top\"",
84
+ "references": {}
85
+ },
86
+ "required": false,
87
+ "optional": false,
88
+ "docs": {
89
+ "tags": [],
90
+ "text": "The location of the handle relative to the resizable element."
91
+ },
92
+ "getter": false,
93
+ "setter": false,
94
+ "reflect": true,
95
+ "attribute": "location",
96
+ "defaultValue": "'left'"
97
+ },
98
+ "label": {
99
+ "type": "string",
100
+ "mutable": false,
101
+ "complexType": {
102
+ "original": "string",
103
+ "resolved": "string",
104
+ "references": {}
105
+ },
106
+ "required": false,
107
+ "optional": false,
108
+ "docs": {
109
+ "tags": [],
110
+ "text": "The accessible name of the handle."
111
+ },
112
+ "getter": false,
113
+ "setter": false,
114
+ "reflect": true,
115
+ "attribute": "label"
116
+ },
117
+ "value": {
118
+ "type": "number",
119
+ "mutable": false,
120
+ "complexType": {
121
+ "original": "number",
122
+ "resolved": "number",
123
+ "references": {}
124
+ },
125
+ "required": false,
126
+ "optional": true,
127
+ "docs": {
128
+ "tags": [],
129
+ "text": "The size of the element, in pixels: the width when `location` is `left`\nor `right`, and the height when it is `top` or `bottom`."
130
+ },
131
+ "getter": false,
132
+ "setter": false,
133
+ "reflect": false,
134
+ "attribute": "value"
135
+ },
136
+ "min": {
137
+ "type": "number",
138
+ "mutable": false,
139
+ "complexType": {
140
+ "original": "number",
141
+ "resolved": "number",
142
+ "references": {}
143
+ },
144
+ "required": false,
145
+ "optional": true,
146
+ "docs": {
147
+ "tags": [],
148
+ "text": "The smallest size that the element can have, in pixels."
149
+ },
150
+ "getter": false,
151
+ "setter": false,
152
+ "reflect": false,
153
+ "attribute": "min"
154
+ },
155
+ "max": {
156
+ "type": "number",
157
+ "mutable": false,
158
+ "complexType": {
159
+ "original": "number",
160
+ "resolved": "number",
161
+ "references": {}
162
+ },
163
+ "required": false,
164
+ "optional": true,
165
+ "docs": {
166
+ "tags": [],
167
+ "text": "The largest size that the element can have, in pixels."
168
+ },
169
+ "getter": false,
170
+ "setter": false,
171
+ "reflect": false,
172
+ "attribute": "max"
173
+ }
174
+ };
175
+ }
176
+ static get events() {
177
+ return [{
178
+ "method": "changeSize",
179
+ "name": "changeSize",
180
+ "bubbles": false,
181
+ "cancelable": true,
182
+ "composed": false,
183
+ "docs": {
184
+ "tags": [],
185
+ "text": "Emitted on each pointer move during a drag, and on each arrow key press.\nThe detail is the size that the user asks for, in pixels. The consumer\nlimits it, uses it, and sets the result as `value`."
186
+ },
187
+ "complexType": {
188
+ "original": "number",
189
+ "resolved": "number",
190
+ "references": {}
191
+ }
192
+ }, {
193
+ "method": "endResize",
194
+ "name": "endResize",
195
+ "bubbles": false,
196
+ "cancelable": true,
197
+ "composed": false,
198
+ "docs": {
199
+ "tags": [],
200
+ "text": "Emitted after the last `changeSize` when the user has finished a resize:\nwhen the pointer is released after it has moved, and after each arrow key\npress. Pressing and releasing the handle without moving it emits nothing."
201
+ },
202
+ "complexType": {
203
+ "original": "void",
204
+ "resolved": "void",
205
+ "references": {}
206
+ }
207
+ }];
208
+ }
209
+ static get elementRef() { return "host"; }
210
+ }
@@ -87,12 +87,12 @@ export class Scroller {
87
87
  (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
88
88
  }
89
89
  render() {
90
- return (h(Host, { key: 'e84ebfb819a65ec4b655155c88fae8d3163f81e5' }, h("div", { key: '5de2d4b4ea1f5f423d69195fb66e2a9e83bd5b3f', class: {
90
+ return (h(Host, { key: 'c208de7a73b1d3d040a0a76b2bdc7bad3d5ab739' }, h("div", { key: '5e69255f710a5f5f439553fa1f9b183e9dc5a9bd', class: {
91
91
  scroller: true,
92
92
  [this.orientation]: true,
93
93
  'can-scroll-to-start': this.canScrollToStart,
94
94
  'can-scroll-to-end': this.canScrollToEnd,
95
- } }, h("div", { key: 'e6b6d2832c6d8eecd18f5b653ee39d1f107d212a', class: "scroll-area", ref: (element) => (this.scrollArea = element), onScroll: this.updateScrollability, onFocusin: this.revealFocusedItem }, h("div", { key: '696a605e2478ea31b256631df195cb3e0e64d07a', class: "scroll-content", ref: (element) => (this.scrollContent = element) }, h("slot", { key: 'c32bfe0c61b93c794e2837563ea081ffccf33440', ref: (element) => (this.slotElement = element) }))), this.renderEdge('start'), this.renderEdge('end'))));
95
+ } }, h("div", { key: 'fc1b91baa65f317ae7bad667cba13813400ac546', class: "scroll-area", ref: (element) => (this.scrollArea = element), onScroll: this.updateScrollability, onFocusin: this.revealFocusedItem }, h("div", { key: '43c02c4acba2ba647aaf6a7516a0326ffc0f16b1', class: "scroll-content", ref: (element) => (this.scrollContent = element) }, h("slot", { key: '3d2e82f50748410b5370741c8e8b1f44117adc35', ref: (element) => (this.slotElement = element) }))), this.renderEdge('start'), this.renderEdge('end'))));
96
96
  }
97
97
  renderEdge(edge) {
98
98
  return [
@@ -175,7 +175,7 @@ export class Select {
175
175
  }
176
176
  render() {
177
177
  const dropdownZIndex = getComputedStyle(this.host).getPropertyValue('--dropdown-z-index');
178
- return (h(SelectTemplate, { key: '0def26ad84ac6317b6f5fa0c18bd4b66f320dff1', id: this.portalId, disabled: this.disabled || this.readonly, readonly: this.readonly, required: this.required, invalid: this.invalid, label: this.label, helperText: this.helperText, value: this.value, options: this.options, onMenuChange: this.handleMenuChange, onNativeChange: this.handleNativeChange, onTriggerKeyDown: this.handleMenuTriggerKeyDown, listRef: this.setListElement, multiple: this.multiple, isOpen: this.menuOpen, open: this.openMenu, close: this.closeMenu, checkValid: this.checkValid, native: this.shouldRenderNative(), dropdownZIndex: dropdownZIndex, anchor: this.getAnchorElement() }));
178
+ return (h(SelectTemplate, { key: 'dd610ca15d4efd4ebc6bc52dae88625dcbca241f', id: this.portalId, disabled: this.disabled || this.readonly, readonly: this.readonly, required: this.required, invalid: this.invalid, label: this.label, helperText: this.helperText, value: this.value, options: this.options, onMenuChange: this.handleMenuChange, onNativeChange: this.handleNativeChange, onTriggerKeyDown: this.handleMenuTriggerKeyDown, listRef: this.setListElement, multiple: this.multiple, isOpen: this.menuOpen, open: this.openMenu, close: this.closeMenu, checkValid: this.checkValid, native: this.shouldRenderNative(), dropdownZIndex: dropdownZIndex, anchor: this.getAnchorElement() }));
179
179
  }
180
180
  watchOpen(newValue, oldValue) {
181
181
  if (this.checkValid) {
@@ -61,7 +61,7 @@ export class Shortcut {
61
61
  render() {
62
62
  var _a, _b, _c, _d, _e;
63
63
  const rel = getRel((_a = this.link) === null || _a === void 0 ? void 0 : _a.target, (_b = this.link) === null || _b === void 0 ? void 0 : _b.rel);
64
- return (h(Host, { key: '69f27974df1fd3fea7b9822714c0a3d59b6a7fab', onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, h("a", { key: '9f8c7b9dc8e2f27007cb46687cb7bf10314e2a8a', "aria-disabled": this.disabled, href: (_c = this.link) === null || _c === void 0 ? void 0 : _c.href, target: (_d = this.link) === null || _d === void 0 ? void 0 : _d.target, rel: rel, tabindex: "0", "aria-label": this.getAriaLabel(), title: (_e = this.link) === null || _e === void 0 ? void 0 : _e.title }, h("limel-icon", { key: '3c10a0091ad0e1549b2765ad429ed2966220246e', name: this.icon }), h("limel-3d-hover-effect-glow", { key: '17011ca6b7d73130b73b85fd30d54921bd07ec54' })), this.renderLabel(), this.renderNotification()));
64
+ return (h(Host, { key: 'a5b5f21fa6c27511357c3fdf498384ad7b8c3f6e', onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, h("a", { key: '74496e167864c94b9169fe2d5ed1aea82c4e2d20', "aria-disabled": this.disabled, href: (_c = this.link) === null || _c === void 0 ? void 0 : _c.href, target: (_d = this.link) === null || _d === void 0 ? void 0 : _d.target, rel: rel, tabindex: "0", "aria-label": this.getAriaLabel(), title: (_e = this.link) === null || _e === void 0 ? void 0 : _e.title }, h("limel-icon", { key: '7ba30c4e1f4aae41ad2626228f238979bcce1405', name: this.icon }), h("limel-3d-hover-effect-glow", { key: 'f6dd1cedf07c7bce7eba7d8b8eb44f948ab4ce25' })), this.renderLabel(), this.renderNotification()));
65
65
  }
66
66
  static get is() { return "limel-shortcut"; }
67
67
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,300 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ * Note! This file is forwarded via `src/style/exports.scss`
4
+ * and exposed to consumers through the root `index.scss`.
5
+ *
6
+ * Consumers import it using:
7
+ * `@use '@limetech/lime-elements' as lime-elements;`
8
+ *
9
+ * Legacy import paths (`dist/scss/mixins`) are maintained
10
+ * for backward compatibility via copy rules in the Stencil config.
11
+ */
12
+ /**
13
+ * Neutralizes the user-agent styles that browsers apply to `<button>` elements
14
+ * (their default background, border, padding, font, etc.), without stripping
15
+ * the useful defaults that `all: unset;` would also remove
16
+ * (such as `display`, `cursor`, and focus behavior).
17
+ *
18
+ * Prefer this mixin over `all: unset;` on `<button>` elements, then layer
19
+ * the styling you want on top — often one of the `is-*-clickable` mixins.
20
+ */
21
+ /**
22
+ * This can be used on a trigger element that opens a dropdown menu or a popover.
23
+ */
24
+ /**
25
+ * This mixin will mask out the content that is close to
26
+ * the edges of a scrollable area.
27
+ * - If the scrollable content has `overflow-y`, use `vertically`
28
+ * as an argument for `$direction`.
29
+ - If the scrollable content has `overflow-x`, use `horizontally`
30
+ * as an argument for `$direction`.
31
+ *
32
+ * For the visual effect to work smoothly, we need to make sure that
33
+ * the size of the fade-out edge effect is the same as the
34
+ * internal paddings of the scrollable area. Otherwise, content of a
35
+ * scrollable area that does not have a padding will fade out before
36
+ * any scrolling has been done.
37
+ * This is why this mixin already adds paddings, which automatically
38
+ * default to the size of the fade-out effect.
39
+ * This size defaults to `1rem`, but to override the size use
40
+ * `--limel-top-edge-fade-height` & `--limel-bottom-edge-fade-height`
41
+ * when `vertically` argument is set, and use
42
+ * `--limel-left-edge-fade-width` & `--limel-right-edge-fade-width`
43
+ * when `horizontally` argument is set.
44
+ * Of course you can also programmatically increase and decrease the
45
+ * size of these variables for each edge, based on the amount of
46
+ * scrolling that has been done by the user. In this case, make sure
47
+ * to add a custom padding where the mixin is used, to override
48
+ * the paddings that are automatically added by the mixin in the
49
+ * compiled CSS code.
50
+ */
51
+ /**
52
+ * This mixin will add an animated underline to the bottom of an `a` elements.
53
+ * Note that you may need to add `all: unset;` –depending on your use case–
54
+ * before using this mixin.
55
+ */
56
+ /**
57
+ * This mixin creates a cross-browser font stack.
58
+ * - `sans-serif` can be used for the UI of the components.
59
+ * - `monospace` can be used for code.
60
+ *
61
+ * ⚠️ If we change the font stacks, we need to update
62
+ * 1. the consumer documentation in `README.md`, and
63
+ * 2. the CSS variables of `--kompendium-example-font-family`
64
+ * in the `<style>` tag of `index.html`.
65
+ */
66
+ /**
67
+ * This mixin is a hack, using old CSS syntax
68
+ * to enable you to truncate a piece of text,
69
+ * after a certain number of lines.
70
+ */
71
+ /**
72
+ * This mixin will add a chessboard background pattern,
73
+ * typically used to visualize transparency.
74
+ */
75
+ /**
76
+ * Make a container resizable by the user.
77
+ * This is used in the documentations and examples
78
+ * of some components, to demonstrate how the component
79
+ * behaves in a resizable container.
80
+ */
81
+ /**
82
+ * Drag to reorder mixins
83
+ */
84
+ /**
85
+ * The breakpoints below are used to create responsive designs
86
+ * in Lime's products. Therefore, they are here to get distributed
87
+ * to all components in other private repos, which rely on this `mixins`
88
+ * file, to create consistent styles.
89
+ *
90
+ * :::important
91
+ * In very rare cases you should used media queries!
92
+ * Nowadays, there are many better ways of achieving responsive design
93
+ * without media queries. For example, using CSS Grid, Flexbox, and their features.
94
+ * :::
95
+ */
96
+ /**
97
+ * Media query mixins for responsive design based on screen width.
98
+ * Note that these mixins do not detect the device type!
99
+ */
100
+ /**
101
+ * @prop --side-panel-width: Start width of the panel. Defaults to `37.5rem`. To restore a width that the user resized to, set this to the stored value from `changeWidth` before the panel opens. After the user resizes the panel, the panel keeps the new width and this property no longer has an effect while the panel exists.
102
+ * @prop --side-panel-min-width: Minimum width of the panel. Defaults to `25rem`.
103
+ * @prop --side-panel-top-inset: Distance from the top of the positioned ancestor. Defaults to `0px`.
104
+ * @prop --side-panel-right-inset: Distance from the right of the positioned ancestor. Defaults to `0px`.
105
+ * @prop --side-panel-bottom-inset: Distance from the bottom of the positioned ancestor. Defaults to `0px`.
106
+ * @prop --side-panel-z-index: z-index of the panel. Defaults to `6`. Set `--dropdown-z-index` and `--popover-z-index` to higher values, so that dropdowns and popovers inside the panel are displayed on top of it.
107
+ */
108
+ :host(limel-side-panel) {
109
+ --_side-panel-width: var(--side-panel-width, 37.5rem);
110
+ --_side-panel-min-width: var(--side-panel-min-width, 25rem);
111
+ --_side-panel-top-inset: var(--side-panel-top-inset, 0px);
112
+ --_side-panel-right-inset: var(--side-panel-right-inset, 0px);
113
+ --_side-panel-bottom-inset: var(--side-panel-bottom-inset, 0px);
114
+ --_side-panel-z-index: var(--side-panel-z-index, 6);
115
+ }
116
+
117
+ @keyframes show-side-panel {
118
+ 0% {
119
+ transform: translate3d(12.5rem, 0, 0) scale(0.95);
120
+ opacity: 0;
121
+ }
122
+ 60% {
123
+ opacity: 1;
124
+ }
125
+ 100% {
126
+ transform: translate3d(0, 0, 0) scale(1);
127
+ }
128
+ }
129
+ section {
130
+ position: absolute;
131
+ z-index: var(--_side-panel-z-index);
132
+ top: var(--_side-panel-top-inset);
133
+ right: var(--_side-panel-right-inset);
134
+ bottom: var(--_side-panel-bottom-inset);
135
+ margin: 0.5rem;
136
+ display: flex;
137
+ flex-direction: column;
138
+ isolation: isolate;
139
+ width: var(--_side-panel-width);
140
+ min-width: min(var(--_side-panel-min-width), 100% - 1rem);
141
+ max-width: min(100% - 1rem - 3rem, 60%);
142
+ max-height: 100%;
143
+ border-radius: 1rem;
144
+ box-shadow: var(--shadow-depth-64);
145
+ transform-origin: left center;
146
+ transition: background-color 0.5s ease, transform 0.3s ease, opacity 0.2s ease, right 0.2s ease;
147
+ animation: show-side-panel 0.46s cubic-bezier(0.08, 0.54, 0.06, 1.11) forwards;
148
+ }
149
+ section:focus {
150
+ outline: none;
151
+ }
152
+ @media (prefers-reduced-motion) {
153
+ section {
154
+ animation: none;
155
+ transition: none;
156
+ }
157
+ }
158
+
159
+ .content {
160
+ display: flex;
161
+ flex-direction: column;
162
+ flex-grow: 1;
163
+ min-height: 0;
164
+ overflow: hidden;
165
+ border-radius: 1rem;
166
+ background-color: rgb(var(--contrast-100));
167
+ }
168
+
169
+ .toolbar {
170
+ flex-shrink: 0;
171
+ display: flex;
172
+ align-items: center;
173
+ gap: 0.25rem;
174
+ box-sizing: border-box;
175
+ min-height: 2.375rem;
176
+ padding: 0.25rem 0.125rem;
177
+ background-color: rgb(var(--contrast-300));
178
+ }
179
+
180
+ .close {
181
+ appearance: none;
182
+ background: none;
183
+ border: none;
184
+ padding: 0;
185
+ margin: 0;
186
+ font: inherit;
187
+ color: inherit;
188
+ text-align: inherit;
189
+ 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);
190
+ cursor: pointer;
191
+ color: var(--limel-theme-on-surface-color);
192
+ background-color: transparent;
193
+ }
194
+ .close:hover, .close:focus, .close:focus-visible {
195
+ will-change: color, background-color, box-shadow, transform;
196
+ }
197
+ .close:hover, .close:focus-visible {
198
+ transform: translate3d(0, 0.01rem, 0);
199
+ color: var(--limel-theme-on-surface-color);
200
+ background-color: var(--lime-elevated-surface-background-color);
201
+ }
202
+ .close:hover {
203
+ box-shadow: var(--button-shadow-hovered);
204
+ }
205
+ .close:active {
206
+ --limel-clickable-transform-timing-function: cubic-bezier(
207
+ 0.83,
208
+ -0.15,
209
+ 0.49,
210
+ 1.16
211
+ );
212
+ transform: translate3d(0, 0.05rem, 0);
213
+ box-shadow: var(--button-shadow-pressed);
214
+ }
215
+ .close:hover, .close:active {
216
+ --limel-clickable-transition-speed: 0.2s;
217
+ --limel-clickable-transform-speed: 0.16s;
218
+ }
219
+ .close:focus {
220
+ outline: none;
221
+ }
222
+ .close:focus-visible {
223
+ outline: none;
224
+ box-shadow: var(--shadow-depth-8-focused);
225
+ }
226
+ .close {
227
+ isolation: isolate;
228
+ position: relative;
229
+ display: flex;
230
+ justify-content: center;
231
+ align-items: center;
232
+ width: 1.875rem;
233
+ height: 1.875rem;
234
+ border-radius: 50%;
235
+ }
236
+ .close limel-icon {
237
+ width: 1.25rem;
238
+ transition: transform 0.2s ease, color 0.2s ease;
239
+ }
240
+ .close:before, .close:after {
241
+ content: "";
242
+ position: absolute;
243
+ z-index: -1;
244
+ inset: 0;
245
+ border-radius: 50%;
246
+ opacity: 0;
247
+ transition-delay: 0.1s;
248
+ }
249
+ .close:before {
250
+ transition: transform 0.3s ease, opacity 0.3s ease;
251
+ background-color: rgb(var(--color-orange-dark));
252
+ }
253
+ .close:after {
254
+ transition: transform 0.6s ease, opacity 0.6s ease;
255
+ background-color: rgb(var(--color-orange-light));
256
+ }
257
+ .close:hover limel-icon {
258
+ color: rgb(var(--color-white));
259
+ transform: scale(0.7) rotate(90deg);
260
+ }
261
+ .close:hover:before {
262
+ opacity: 1;
263
+ transform: scale(0.4);
264
+ }
265
+ .close:hover:after {
266
+ opacity: 0.4;
267
+ transform: scale(0.6);
268
+ }
269
+
270
+ .body {
271
+ flex-grow: 1;
272
+ min-height: 0;
273
+ display: flex;
274
+ flex-direction: column;
275
+ overflow: hidden auto;
276
+ }
277
+
278
+ .handle {
279
+ position: absolute;
280
+ z-index: 1;
281
+ top: calc(2.375rem + 0.5rem);
282
+ bottom: 1rem;
283
+ left: calc(0.5rem / -2);
284
+ width: 0.5rem;
285
+ }
286
+
287
+ [data-limit] {
288
+ position: absolute;
289
+ visibility: hidden;
290
+ pointer-events: none;
291
+ height: 0;
292
+ }
293
+
294
+ [data-limit=min] {
295
+ width: min(var(--_side-panel-min-width), 100% - 1rem);
296
+ }
297
+
298
+ [data-limit=max] {
299
+ width: min(100% - 1rem - 3rem, 60%);
300
+ }