le-kit 0.1.15 → 0.1.16

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 (235) hide show
  1. package/dist/cjs/{index-C3iQZ-Ja.js → index-CHzu3ydp.js} +3 -3
  2. package/dist/cjs/index-CHzu3ydp.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +2 -2
  4. package/dist/cjs/le-box.cjs.entry.js +2 -2
  5. package/dist/cjs/le-button.le-checkbox.le-collapse.le-component.le-current-heading.le-dropdown-base.le-header.le-popover.le-popup.le-scroll-progress.le-select.le-slot.le-string-input.entry.cjs.js.map +1 -0
  6. package/dist/cjs/{le-button_7.cjs.entry.js → le-button_13.cjs.entry.js} +1148 -21
  7. package/dist/cjs/le-card.cjs.entry.js +2 -2
  8. package/dist/cjs/le-combobox.cjs.entry.js +2 -2
  9. package/dist/cjs/le-header-placeholder.cjs.entry.js +18 -0
  10. package/dist/cjs/le-header-placeholder.entry.cjs.js.map +1 -0
  11. package/dist/cjs/le-kit.cjs.js +2 -2
  12. package/dist/cjs/le-multiselect.cjs.entry.js +4 -4
  13. package/dist/cjs/le-number-input.cjs.entry.js +3 -3
  14. package/dist/cjs/le-round-progress.cjs.entry.js +2 -2
  15. package/dist/cjs/le-segmented-control.cjs.entry.js +2 -2
  16. package/dist/cjs/le-stack.cjs.entry.js +3 -3
  17. package/dist/cjs/le-tab-bar.cjs.entry.js +2 -2
  18. package/dist/cjs/le-tab-panel.cjs.entry.js +3 -3
  19. package/dist/cjs/le-tab.cjs.entry.js +3 -3
  20. package/dist/cjs/le-tabs.cjs.entry.js +4 -4
  21. package/dist/cjs/le-tag.cjs.entry.js +2 -2
  22. package/dist/cjs/le-text.cjs.entry.js +2 -2
  23. package/dist/cjs/le-turntable.cjs.entry.js +2 -2
  24. package/dist/cjs/loader.cjs.js +2 -2
  25. package/dist/cjs/{utils-DjPcLPN9.js → utils-CYOKcOW8.js} +3 -3
  26. package/dist/cjs/{utils-DjPcLPN9.js.map → utils-CYOKcOW8.js.map} +1 -1
  27. package/dist/collection/collection-manifest.json +5 -0
  28. package/dist/collection/components/le-collapse/le-collapse.css +31 -0
  29. package/dist/collection/components/le-collapse/le-collapse.js +188 -0
  30. package/dist/collection/components/le-collapse/le-collapse.js.map +1 -0
  31. package/dist/collection/components/le-combobox/le-combobox.js +1 -1
  32. package/dist/collection/components/le-component/le-component.js +1 -1
  33. package/dist/collection/components/le-component/le-component.js.map +1 -1
  34. package/dist/collection/components/le-current-heading/le-current-heading.css +12 -0
  35. package/dist/collection/components/le-current-heading/le-current-heading.js +130 -0
  36. package/dist/collection/components/le-current-heading/le-current-heading.js.map +1 -0
  37. package/dist/collection/components/le-dropdown-base/le-dropdown-base.css +4 -0
  38. package/dist/collection/components/le-dropdown-base/le-dropdown-base.js +1 -1
  39. package/dist/collection/components/le-header/le-header.css +120 -0
  40. package/dist/collection/components/le-header/le-header.js +508 -0
  41. package/dist/collection/components/le-header/le-header.js.map +1 -0
  42. package/dist/collection/components/le-header-placeholder/le-header-placeholder.js +21 -0
  43. package/dist/collection/components/le-header-placeholder/le-header-placeholder.js.map +1 -0
  44. package/dist/collection/components/le-multiselect/le-multiselect.js +3 -3
  45. package/dist/collection/components/le-number-input/le-number-input.js +1 -1
  46. package/dist/collection/components/le-popover/le-popover.css +10 -0
  47. package/dist/collection/components/le-popover/le-popover.js +122 -13
  48. package/dist/collection/components/le-popover/le-popover.js.map +1 -1
  49. package/dist/collection/components/le-round-progress/le-round-progress.js +1 -1
  50. package/dist/collection/components/le-scroll-progress/le-scroll-progress.css +29 -0
  51. package/dist/collection/components/le-scroll-progress/le-scroll-progress.js +186 -0
  52. package/dist/collection/components/le-scroll-progress/le-scroll-progress.js.map +1 -0
  53. package/dist/collection/components/le-segmented-control/le-segmented-control.js +1 -1
  54. package/dist/collection/components/le-select/le-select.js +2 -2
  55. package/dist/collection/components/le-slot/le-slot.js +1 -1
  56. package/dist/collection/components/le-stack/le-stack.js +1 -1
  57. package/dist/collection/components/le-string-input/le-string-input.js +2 -2
  58. package/dist/collection/components/le-tab/le-tab.js +1 -1
  59. package/dist/collection/components/le-tab-bar/le-tab-bar.js +1 -1
  60. package/dist/collection/components/le-tab-panel/le-tab-panel.js +2 -2
  61. package/dist/collection/components/le-tabs/le-tabs.js +2 -2
  62. package/dist/collection/components/le-tag/le-tag.js +1 -1
  63. package/dist/collection/components/le-turntable/le-turntable.js +1 -1
  64. package/dist/collection/dist/components/assets/custom-elements.json +2029 -965
  65. package/dist/collection/dist/components/themes/base.css +4 -48
  66. package/dist/collection/dist/components/themes/index.css +3 -342
  67. package/dist/components/assets/custom-elements.json +2029 -965
  68. package/dist/components/index.js.map +1 -1
  69. package/dist/components/le-box.js +18 -7
  70. package/dist/components/le-box.js.map +1 -1
  71. package/dist/components/le-button.js +1 -1
  72. package/dist/components/le-button2.js +331 -31
  73. package/dist/components/le-button2.js.map +1 -1
  74. package/dist/components/le-card.js +18 -7
  75. package/dist/components/le-card.js.map +1 -1
  76. package/dist/components/le-checkbox.js +1 -1
  77. package/dist/components/le-collapse.d.ts +11 -0
  78. package/dist/components/le-collapse.js +144 -0
  79. package/dist/components/le-collapse.js.map +1 -0
  80. package/dist/components/le-combobox.js +15 -10
  81. package/dist/components/le-combobox.js.map +1 -1
  82. package/dist/components/le-component.js +1 -1
  83. package/dist/components/le-current-heading.d.ts +11 -0
  84. package/dist/components/le-current-heading.js +93 -0
  85. package/dist/components/le-current-heading.js.map +1 -0
  86. package/dist/components/le-dropdown-base2.js +2 -2
  87. package/dist/components/le-dropdown-base2.js.map +1 -1
  88. package/dist/components/le-header-placeholder.d.ts +11 -0
  89. package/dist/components/le-header-placeholder.js +37 -0
  90. package/dist/components/le-header-placeholder.js.map +1 -0
  91. package/dist/components/le-header.d.ts +11 -0
  92. package/dist/components/le-header.js +347 -0
  93. package/dist/components/le-header.js.map +1 -0
  94. package/dist/components/le-multiselect.js +17 -12
  95. package/dist/components/le-multiselect.js.map +1 -1
  96. package/dist/components/le-number-input.js +19 -8
  97. package/dist/components/le-number-input.js.map +1 -1
  98. package/dist/components/le-popover2.js +123 -14
  99. package/dist/components/le-popover2.js.map +1 -1
  100. package/dist/components/le-popup.js +1 -1
  101. package/dist/components/le-round-progress.js +1 -1
  102. package/dist/components/le-scroll-progress.d.ts +11 -0
  103. package/dist/components/le-scroll-progress.js +142 -0
  104. package/dist/components/le-scroll-progress.js.map +1 -0
  105. package/dist/components/le-segmented-control.js +19 -8
  106. package/dist/components/le-segmented-control.js.map +1 -1
  107. package/dist/components/le-select.js +1 -263
  108. package/dist/components/le-select.js.map +1 -1
  109. package/dist/components/le-slot.js +1 -1
  110. package/dist/components/le-stack.js +19 -8
  111. package/dist/components/le-stack.js.map +1 -1
  112. package/dist/components/le-string-input.js +1 -1
  113. package/dist/components/le-tab-bar.js +19 -8
  114. package/dist/components/le-tab-bar.js.map +1 -1
  115. package/dist/components/le-tab-panel.js +20 -9
  116. package/dist/components/le-tab-panel.js.map +1 -1
  117. package/dist/components/le-tab2.js +19 -8
  118. package/dist/components/le-tab2.js.map +1 -1
  119. package/dist/components/le-tabs.js +20 -9
  120. package/dist/components/le-tabs.js.map +1 -1
  121. package/dist/components/le-tag2.js +19 -8
  122. package/dist/components/le-tag2.js.map +1 -1
  123. package/dist/components/le-text.js +18 -7
  124. package/dist/components/le-text.js.map +1 -1
  125. package/dist/components/le-turntable.js +1 -1
  126. package/dist/components/themes/base.css +4 -48
  127. package/dist/components/themes/index.css +3 -342
  128. package/dist/docs.json +1089 -30
  129. package/dist/esm/{index-DzgCnDLJ.js → index-hmBwv43R.js} +3 -3
  130. package/dist/esm/index-hmBwv43R.js.map +1 -0
  131. package/dist/esm/index.js +2 -2
  132. package/dist/esm/le-box.entry.js +2 -2
  133. package/dist/esm/le-button.le-checkbox.le-collapse.le-component.le-current-heading.le-dropdown-base.le-header.le-popover.le-popup.le-scroll-progress.le-select.le-slot.le-string-input.entry.js.map +1 -0
  134. package/dist/esm/{le-button_7.entry.js → le-button_13.entry.js} +1143 -22
  135. package/dist/esm/le-card.entry.js +2 -2
  136. package/dist/esm/le-combobox.entry.js +2 -2
  137. package/dist/esm/le-header-placeholder.entry.js +16 -0
  138. package/dist/esm/le-header-placeholder.entry.js.map +1 -0
  139. package/dist/esm/le-kit.js +3 -3
  140. package/dist/esm/le-multiselect.entry.js +4 -4
  141. package/dist/esm/le-number-input.entry.js +3 -3
  142. package/dist/esm/le-round-progress.entry.js +2 -2
  143. package/dist/esm/le-segmented-control.entry.js +2 -2
  144. package/dist/esm/le-stack.entry.js +3 -3
  145. package/dist/esm/le-tab-bar.entry.js +2 -2
  146. package/dist/esm/le-tab-panel.entry.js +3 -3
  147. package/dist/esm/le-tab.entry.js +3 -3
  148. package/dist/esm/le-tabs.entry.js +4 -4
  149. package/dist/esm/le-tag.entry.js +2 -2
  150. package/dist/esm/le-text.entry.js +2 -2
  151. package/dist/esm/le-turntable.entry.js +2 -2
  152. package/dist/esm/loader.js +3 -3
  153. package/dist/esm/{utils-Dp5xFMCl.js → utils-DRTFlnxz.js} +3 -3
  154. package/dist/esm/{utils-Dp5xFMCl.js.map → utils-DRTFlnxz.js.map} +1 -1
  155. package/dist/le-kit/dist/components/assets/custom-elements.json +2029 -965
  156. package/dist/le-kit/dist/components/themes/base.css +4 -48
  157. package/dist/le-kit/dist/components/themes/index.css +3 -342
  158. package/dist/le-kit/index.esm.js +1 -1
  159. package/dist/le-kit/le-button.le-checkbox.le-collapse.le-component.le-current-heading.le-dropdown-base.le-header.le-popover.le-popup.le-scroll-progress.le-select.le-slot.le-string-input.entry.esm.js.map +1 -0
  160. package/dist/le-kit/le-header-placeholder.entry.esm.js.map +1 -0
  161. package/dist/le-kit/le-kit.css +1 -1
  162. package/dist/le-kit/le-kit.esm.js +1 -1
  163. package/dist/le-kit/{p-1f55a4a2.entry.js → p-13a4dc1d.entry.js} +2 -2
  164. package/dist/le-kit/{p-0bd7803f.entry.js → p-1a9e65d0.entry.js} +2 -2
  165. package/dist/le-kit/p-2708dc65.entry.js +2 -0
  166. package/dist/le-kit/p-2708dc65.entry.js.map +1 -0
  167. package/dist/le-kit/p-2b96a5bd.entry.js +2 -0
  168. package/dist/le-kit/p-2b96a5bd.entry.js.map +1 -0
  169. package/dist/le-kit/{p-7b180d58.entry.js → p-32cbb683.entry.js} +2 -2
  170. package/dist/le-kit/{p-71c78784.entry.js → p-476e1886.entry.js} +2 -2
  171. package/dist/le-kit/p-67d702f9.entry.js +2 -0
  172. package/dist/le-kit/{p-33612923.entry.js → p-6884e3e8.entry.js} +2 -2
  173. package/dist/le-kit/{p-6ecdad85.entry.js → p-704ad5e0.entry.js} +2 -2
  174. package/dist/le-kit/{p-432e8231.entry.js → p-88f9aa40.entry.js} +2 -2
  175. package/dist/le-kit/{p-91993261.entry.js → p-8dd8a487.entry.js} +2 -2
  176. package/dist/le-kit/{p-6ee06c44.entry.js → p-97b7658a.entry.js} +2 -2
  177. package/dist/le-kit/{p-a5d31d40.entry.js → p-c0925e92.entry.js} +2 -2
  178. package/dist/le-kit/{p-548d130b.entry.js → p-c2494a0d.entry.js} +2 -2
  179. package/dist/le-kit/{p-3a52c4de.entry.js → p-ded51018.entry.js} +2 -2
  180. package/dist/le-kit/{p-2c37f174.entry.js → p-e3db7974.entry.js} +2 -2
  181. package/dist/le-kit/{p-b66fd9e1.entry.js → p-f9b03aec.entry.js} +2 -2
  182. package/dist/le-kit/p-hmBwv43R.js +3 -0
  183. package/dist/le-kit/p-hmBwv43R.js.map +1 -0
  184. package/dist/le-kit/p-txKmCJHv.js +2 -0
  185. package/dist/le-kit/{p-DaA5gINj.js.map → p-txKmCJHv.js.map} +1 -1
  186. package/dist/themes/base.css +4 -48
  187. package/dist/themes/index.css +3 -342
  188. package/dist/types/components/le-collapse/le-collapse.d.ts +41 -0
  189. package/dist/types/components/le-current-heading/le-current-heading.d.ts +25 -0
  190. package/dist/types/components/le-header/le-header.d.ts +115 -0
  191. package/dist/types/components/le-header-placeholder/le-header-placeholder.d.ts +13 -0
  192. package/dist/types/components/le-popover/le-popover.d.ts +9 -0
  193. package/dist/types/components/le-scroll-progress/le-scroll-progress.d.ts +40 -0
  194. package/dist/types/components.d.ts +518 -0
  195. package/package.json +1 -1
  196. package/dist/cjs/index-C3iQZ-Ja.js.map +0 -1
  197. package/dist/cjs/le-button.le-checkbox.le-component.le-popover.le-popup.le-slot.le-string-input.entry.cjs.js.map +0 -1
  198. package/dist/cjs/le-dropdown-base.cjs.entry.js +0 -348
  199. package/dist/cjs/le-dropdown-base.entry.cjs.js.map +0 -1
  200. package/dist/cjs/le-select.cjs.entry.js +0 -188
  201. package/dist/cjs/le-select.entry.cjs.js.map +0 -1
  202. package/dist/esm/index-DzgCnDLJ.js.map +0 -1
  203. package/dist/esm/le-button.le-checkbox.le-component.le-popover.le-popup.le-slot.le-string-input.entry.js.map +0 -1
  204. package/dist/esm/le-dropdown-base.entry.js +0 -346
  205. package/dist/esm/le-dropdown-base.entry.js.map +0 -1
  206. package/dist/esm/le-select.entry.js +0 -186
  207. package/dist/esm/le-select.entry.js.map +0 -1
  208. package/dist/le-kit/le-button.le-checkbox.le-component.le-popover.le-popup.le-slot.le-string-input.entry.esm.js.map +0 -1
  209. package/dist/le-kit/le-dropdown-base.entry.esm.js.map +0 -1
  210. package/dist/le-kit/le-select.entry.esm.js.map +0 -1
  211. package/dist/le-kit/p-4130c60b.entry.js +0 -2
  212. package/dist/le-kit/p-4130c60b.entry.js.map +0 -1
  213. package/dist/le-kit/p-DaA5gINj.js +0 -2
  214. package/dist/le-kit/p-DzgCnDLJ.js +0 -3
  215. package/dist/le-kit/p-DzgCnDLJ.js.map +0 -1
  216. package/dist/le-kit/p-beb87e61.entry.js +0 -2
  217. package/dist/le-kit/p-cc0797b0.entry.js +0 -2
  218. package/dist/le-kit/p-cc0797b0.entry.js.map +0 -1
  219. package/dist/le-kit/p-d504a369.entry.js +0 -2
  220. package/dist/le-kit/p-d504a369.entry.js.map +0 -1
  221. /package/dist/le-kit/{p-1f55a4a2.entry.js.map → p-13a4dc1d.entry.js.map} +0 -0
  222. /package/dist/le-kit/{p-0bd7803f.entry.js.map → p-1a9e65d0.entry.js.map} +0 -0
  223. /package/dist/le-kit/{p-7b180d58.entry.js.map → p-32cbb683.entry.js.map} +0 -0
  224. /package/dist/le-kit/{p-71c78784.entry.js.map → p-476e1886.entry.js.map} +0 -0
  225. /package/dist/le-kit/{p-beb87e61.entry.js.map → p-67d702f9.entry.js.map} +0 -0
  226. /package/dist/le-kit/{p-33612923.entry.js.map → p-6884e3e8.entry.js.map} +0 -0
  227. /package/dist/le-kit/{p-6ecdad85.entry.js.map → p-704ad5e0.entry.js.map} +0 -0
  228. /package/dist/le-kit/{p-432e8231.entry.js.map → p-88f9aa40.entry.js.map} +0 -0
  229. /package/dist/le-kit/{p-91993261.entry.js.map → p-8dd8a487.entry.js.map} +0 -0
  230. /package/dist/le-kit/{p-6ee06c44.entry.js.map → p-97b7658a.entry.js.map} +0 -0
  231. /package/dist/le-kit/{p-a5d31d40.entry.js.map → p-c0925e92.entry.js.map} +0 -0
  232. /package/dist/le-kit/{p-548d130b.entry.js.map → p-c2494a0d.entry.js.map} +0 -0
  233. /package/dist/le-kit/{p-3a52c4de.entry.js.map → p-ded51018.entry.js.map} +0 -0
  234. /package/dist/le-kit/{p-2c37f174.entry.js.map → p-e3db7974.entry.js.map} +0 -0
  235. /package/dist/le-kit/{p-b66fd9e1.entry.js.map → p-f9b03aec.entry.js.map} +0 -0
@@ -265,6 +265,38 @@ export namespace Components {
265
265
  */
266
266
  "value": string;
267
267
  }
268
+ /**
269
+ * Animated show/hide wrapper.
270
+ * Supports height collapse (auto->0) and/or fading.
271
+ * Can optionally listen to the nearest `le-header` shrink events.
272
+ * @cssprop --le-collapse-duration - Transition duration
273
+ * @csspart region - Collapsible region
274
+ * @csspart content - Inner content
275
+ * @cmsEditable true
276
+ * @cmsCategory Layout
277
+ */
278
+ interface LeCollapse {
279
+ /**
280
+ * If true, collapse/expand based on the nearest header shrink event.
281
+ * @default false
282
+ */
283
+ "collapseOnHeaderShrink": boolean;
284
+ /**
285
+ * Stop fading the content when collapsing/expanding.
286
+ * @default false
287
+ */
288
+ "noFading": boolean;
289
+ /**
290
+ * Whether the content should be shown.
291
+ * @default true
292
+ */
293
+ "open": boolean;
294
+ /**
295
+ * Whether the content should scroll down from the top when open.
296
+ * @default false
297
+ */
298
+ "scrollDown": boolean;
299
+ }
268
300
  /**
269
301
  * A combobox component with searchable dropdown.
270
302
  * Combines a text input with a dropdown list, allowing users to
@@ -398,6 +430,21 @@ export namespace Components {
398
430
  */
399
431
  "hostStyle"?: { [key: string]: string };
400
432
  }
433
+ /**
434
+ * Shows a "smart" header title based on what has scrolled out of view.
435
+ * When `selector` matches multiple elements, the title becomes the last element
436
+ * (top-to-bottom) that has fully scrolled out above the viewport.
437
+ * @csspart title - The rendered title
438
+ * @cmsEditable true
439
+ * @cmsCategory Layout
440
+ */
441
+ interface LeCurrentHeading {
442
+ /**
443
+ * CSS selector for page title/headings to watch (e.g. `.page-title`, `main h2`).
444
+ * @default ''
445
+ */
446
+ "selector": string;
447
+ }
401
448
  /**
402
449
  * Internal dropdown base component that provides shared functionality
403
450
  * for select, combobox, and multiselect components.
@@ -485,6 +532,78 @@ export namespace Components {
485
532
  */
486
533
  "width"?: string;
487
534
  }
535
+ /**
536
+ * A functional page header with scroll-aware behaviors.
537
+ * Features:
538
+ * - Static (default), sticky, or fixed positioning
539
+ * - Optional shrink-on-scroll behavior via `shrink-offset`
540
+ * - Optional reveal-on-scroll-up via `reveal-on-scroll` (sticky only)
541
+ * Slots:
542
+ * - `start`: left side (logo/back button)
543
+ * - `title`: centered/primary title content
544
+ * - `end`: right side actions
545
+ * - default: extra content row (e.g., tabs/search) rendered below main row
546
+ * @cssprop --le-header-bg - Background (color/gradient)
547
+ * @cssprop --le-header-color - Text color
548
+ * @cssprop --le-header-border - Border (e.g. 1px solid ...)
549
+ * @cssprop --le-header-shadow - Shadow/elevation
550
+ * @cssprop --le-header-max-width - Inner content max width
551
+ * @cssprop --le-header-padding-x - Horizontal padding
552
+ * @cssprop --le-header-padding-y - Vertical padding
553
+ * @cssprop --le-header-gap - Gap between zones
554
+ * @cssprop --le-header-height - Base height (main row)
555
+ * @cssprop --le-header-height-condensed - Condensed height when shrunk
556
+ * @cssprop --le-header-transition - Transition timing
557
+ * @cssprop --le-header-z - Z-index (fixed mode)
558
+ * @csspart header - The header container
559
+ * @csspart inner - Inner max-width container
560
+ * @csspart row - Main row
561
+ * @csspart start - Start zone
562
+ * @csspart title - Title zone
563
+ * @csspart end - End zone
564
+ * @csspart secondary - Secondary row
565
+ * @cmsEditable true
566
+ * @cmsCategory Layout
567
+ */
568
+ interface LeHeader {
569
+ /**
570
+ * If true, expand the header when hovered
571
+ * @default false
572
+ */
573
+ "expandOnHover": boolean;
574
+ /**
575
+ * Fixed positioning (out-of-flow). Takes precedence over `sticky`/`static`.
576
+ * @default false
577
+ */
578
+ "fixed": boolean;
579
+ /**
580
+ * Force static positioning (default). Ignored if `sticky` or `fixed` are true.
581
+ * @default false
582
+ */
583
+ "isStatic": boolean;
584
+ /**
585
+ * Sticky-only reveal behavior (hide on scroll down, show on scroll up). - missing/false: disabled - true/empty attribute: enabled with default threshold (16) - number (as string): enabled and used as threshold
586
+ */
587
+ "revealOnScroll"?: string;
588
+ /**
589
+ * Shrink trigger. - missing/0: disabled - number (px): shrink when scrollY >= that value (but never before header height) - css var name (e.g. --foo): shrink when scrollY >= resolved var value - selector (e.g. .page-title): shrink when that element scrolls out of view above the viewport
590
+ */
591
+ "shrinkOffset"?: string;
592
+ /**
593
+ * Sticky positioning (in-flow). Ignored if `fixed` is true.
594
+ * @default false
595
+ */
596
+ "sticky": boolean;
597
+ }
598
+ /**
599
+ * Placeholder for `le-header`.
600
+ * Reserves space using the global CSS variable `--le-header-height`.
601
+ * The header component updates that variable when it renders.
602
+ * @cssprop --le-header-height - Published header height (px)
603
+ * @cmsInternal true
604
+ */
605
+ interface LeHeaderPlaceholder {
606
+ }
488
607
  /**
489
608
  * A multiselect component for selecting multiple options.
490
609
  * Displays selected items as tags with optional search filtering.
@@ -834,6 +953,29 @@ export namespace Components {
834
953
  */
835
954
  "value": number;
836
955
  }
956
+ /**
957
+ * Displays scroll progress as a simple bar.
958
+ * If `track-scroll-progress` is present without a value, tracks the full document.
959
+ * If it is a selector string, tracks progress within the matched element.
960
+ * @cssprop --le-scroll-progress-height - Bar height
961
+ * @cssprop --le-scroll-progress-bg - Track background
962
+ * @cssprop --le-scroll-progress-fill - Fill color
963
+ * @cssprop --le-scroll-progress-sticky-top - If sticky, stop position to parent top
964
+ * @cssprop --le-scroll-progress-fixed-top - If fixed, distance from window top
965
+ * @cssprop --le-scroll-progress-fixed-left - If fixed, distance from window left
966
+ * @cssprop --le-scroll-progress-fixed-right - If fixed, distance from window right
967
+ * @cssprop --le-scroll-progress-z - Z-index of the progress bar (1001 by default, above header)
968
+ * @csspart track - Outer track
969
+ * @csspart fill - Inner fill
970
+ * @cmsEditable true
971
+ * @cmsCategory Layout
972
+ */
973
+ interface LeScrollProgress {
974
+ /**
975
+ * Boolean or selector string.
976
+ */
977
+ "trackScrollProgress"?: string;
978
+ }
837
979
  /**
838
980
  * A segmented control component (iOS-style toggle buttons).
839
981
  * Perfect for toggling between a small set of related options.
@@ -1576,6 +1718,10 @@ export interface LeDropdownBaseCustomEvent<T> extends CustomEvent<T> {
1576
1718
  detail: T;
1577
1719
  target: HTMLLeDropdownBaseElement;
1578
1720
  }
1721
+ export interface LeHeaderCustomEvent<T> extends CustomEvent<T> {
1722
+ detail: T;
1723
+ target: HTMLLeHeaderElement;
1724
+ }
1579
1725
  export interface LeMultiselectCustomEvent<T> extends CustomEvent<T> {
1580
1726
  detail: T;
1581
1727
  target: HTMLLeMultiselectElement;
@@ -1720,6 +1866,22 @@ declare global {
1720
1866
  prototype: HTMLLeCheckboxElement;
1721
1867
  new (): HTMLLeCheckboxElement;
1722
1868
  };
1869
+ /**
1870
+ * Animated show/hide wrapper.
1871
+ * Supports height collapse (auto->0) and/or fading.
1872
+ * Can optionally listen to the nearest `le-header` shrink events.
1873
+ * @cssprop --le-collapse-duration - Transition duration
1874
+ * @csspart region - Collapsible region
1875
+ * @csspart content - Inner content
1876
+ * @cmsEditable true
1877
+ * @cmsCategory Layout
1878
+ */
1879
+ interface HTMLLeCollapseElement extends Components.LeCollapse, HTMLStencilElement {
1880
+ }
1881
+ var HTMLLeCollapseElement: {
1882
+ prototype: HTMLLeCollapseElement;
1883
+ new (): HTMLLeCollapseElement;
1884
+ };
1723
1885
  interface HTMLLeComboboxElementEventMap {
1724
1886
  "leChange": LeOptionSelectDetail;
1725
1887
  "leInput": { value: string };
@@ -1789,6 +1951,20 @@ declare global {
1789
1951
  prototype: HTMLLeComponentElement;
1790
1952
  new (): HTMLLeComponentElement;
1791
1953
  };
1954
+ /**
1955
+ * Shows a "smart" header title based on what has scrolled out of view.
1956
+ * When `selector` matches multiple elements, the title becomes the last element
1957
+ * (top-to-bottom) that has fully scrolled out above the viewport.
1958
+ * @csspart title - The rendered title
1959
+ * @cmsEditable true
1960
+ * @cmsCategory Layout
1961
+ */
1962
+ interface HTMLLeCurrentHeadingElement extends Components.LeCurrentHeading, HTMLStencilElement {
1963
+ }
1964
+ var HTMLLeCurrentHeadingElement: {
1965
+ prototype: HTMLLeCurrentHeadingElement;
1966
+ new (): HTMLLeCurrentHeadingElement;
1967
+ };
1792
1968
  interface HTMLLeDropdownBaseElementEventMap {
1793
1969
  "leOptionSelect": LeOptionSelectDetail;
1794
1970
  "leDropdownOpen": void;
@@ -1819,6 +1995,76 @@ declare global {
1819
1995
  prototype: HTMLLeDropdownBaseElement;
1820
1996
  new (): HTMLLeDropdownBaseElement;
1821
1997
  };
1998
+ interface HTMLLeHeaderElementEventMap {
1999
+ "leHeaderState": {
2000
+ y: number;
2001
+ direction: 'up' | 'down';
2002
+ revealed: boolean;
2003
+ shrunk: boolean;
2004
+ };
2005
+ "leHeaderShrinkChange": { shrunk: boolean; y: number };
2006
+ "leHeaderVisibilityChange": { visible: boolean; y: number };
2007
+ }
2008
+ /**
2009
+ * A functional page header with scroll-aware behaviors.
2010
+ * Features:
2011
+ * - Static (default), sticky, or fixed positioning
2012
+ * - Optional shrink-on-scroll behavior via `shrink-offset`
2013
+ * - Optional reveal-on-scroll-up via `reveal-on-scroll` (sticky only)
2014
+ * Slots:
2015
+ * - `start`: left side (logo/back button)
2016
+ * - `title`: centered/primary title content
2017
+ * - `end`: right side actions
2018
+ * - default: extra content row (e.g., tabs/search) rendered below main row
2019
+ * @cssprop --le-header-bg - Background (color/gradient)
2020
+ * @cssprop --le-header-color - Text color
2021
+ * @cssprop --le-header-border - Border (e.g. 1px solid ...)
2022
+ * @cssprop --le-header-shadow - Shadow/elevation
2023
+ * @cssprop --le-header-max-width - Inner content max width
2024
+ * @cssprop --le-header-padding-x - Horizontal padding
2025
+ * @cssprop --le-header-padding-y - Vertical padding
2026
+ * @cssprop --le-header-gap - Gap between zones
2027
+ * @cssprop --le-header-height - Base height (main row)
2028
+ * @cssprop --le-header-height-condensed - Condensed height when shrunk
2029
+ * @cssprop --le-header-transition - Transition timing
2030
+ * @cssprop --le-header-z - Z-index (fixed mode)
2031
+ * @csspart header - The header container
2032
+ * @csspart inner - Inner max-width container
2033
+ * @csspart row - Main row
2034
+ * @csspart start - Start zone
2035
+ * @csspart title - Title zone
2036
+ * @csspart end - End zone
2037
+ * @csspart secondary - Secondary row
2038
+ * @cmsEditable true
2039
+ * @cmsCategory Layout
2040
+ */
2041
+ interface HTMLLeHeaderElement extends Components.LeHeader, HTMLStencilElement {
2042
+ addEventListener<K extends keyof HTMLLeHeaderElementEventMap>(type: K, listener: (this: HTMLLeHeaderElement, ev: LeHeaderCustomEvent<HTMLLeHeaderElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2043
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2044
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2045
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2046
+ removeEventListener<K extends keyof HTMLLeHeaderElementEventMap>(type: K, listener: (this: HTMLLeHeaderElement, ev: LeHeaderCustomEvent<HTMLLeHeaderElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2047
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2048
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2049
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2050
+ }
2051
+ var HTMLLeHeaderElement: {
2052
+ prototype: HTMLLeHeaderElement;
2053
+ new (): HTMLLeHeaderElement;
2054
+ };
2055
+ /**
2056
+ * Placeholder for `le-header`.
2057
+ * Reserves space using the global CSS variable `--le-header-height`.
2058
+ * The header component updates that variable when it renders.
2059
+ * @cssprop --le-header-height - Published header height (px)
2060
+ * @cmsInternal true
2061
+ */
2062
+ interface HTMLLeHeaderPlaceholderElement extends Components.LeHeaderPlaceholder, HTMLStencilElement {
2063
+ }
2064
+ var HTMLLeHeaderPlaceholderElement: {
2065
+ prototype: HTMLLeHeaderPlaceholderElement;
2066
+ new (): HTMLLeHeaderPlaceholderElement;
2067
+ };
1822
2068
  interface HTMLLeMultiselectElementEventMap {
1823
2069
  "leChange": LeMultiOptionSelectDetail;
1824
2070
  "leOpen": void;
@@ -1955,6 +2201,29 @@ declare global {
1955
2201
  prototype: HTMLLeRoundProgressElement;
1956
2202
  new (): HTMLLeRoundProgressElement;
1957
2203
  };
2204
+ /**
2205
+ * Displays scroll progress as a simple bar.
2206
+ * If `track-scroll-progress` is present without a value, tracks the full document.
2207
+ * If it is a selector string, tracks progress within the matched element.
2208
+ * @cssprop --le-scroll-progress-height - Bar height
2209
+ * @cssprop --le-scroll-progress-bg - Track background
2210
+ * @cssprop --le-scroll-progress-fill - Fill color
2211
+ * @cssprop --le-scroll-progress-sticky-top - If sticky, stop position to parent top
2212
+ * @cssprop --le-scroll-progress-fixed-top - If fixed, distance from window top
2213
+ * @cssprop --le-scroll-progress-fixed-left - If fixed, distance from window left
2214
+ * @cssprop --le-scroll-progress-fixed-right - If fixed, distance from window right
2215
+ * @cssprop --le-scroll-progress-z - Z-index of the progress bar (1001 by default, above header)
2216
+ * @csspart track - Outer track
2217
+ * @csspart fill - Inner fill
2218
+ * @cmsEditable true
2219
+ * @cmsCategory Layout
2220
+ */
2221
+ interface HTMLLeScrollProgressElement extends Components.LeScrollProgress, HTMLStencilElement {
2222
+ }
2223
+ var HTMLLeScrollProgressElement: {
2224
+ prototype: HTMLLeScrollProgressElement;
2225
+ new (): HTMLLeScrollProgressElement;
2226
+ };
1958
2227
  interface HTMLLeSegmentedControlElementEventMap {
1959
2228
  "leChange": LeOptionSelectDetail;
1960
2229
  }
@@ -2302,14 +2571,19 @@ declare global {
2302
2571
  "le-button": HTMLLeButtonElement;
2303
2572
  "le-card": HTMLLeCardElement;
2304
2573
  "le-checkbox": HTMLLeCheckboxElement;
2574
+ "le-collapse": HTMLLeCollapseElement;
2305
2575
  "le-combobox": HTMLLeComboboxElement;
2306
2576
  "le-component": HTMLLeComponentElement;
2577
+ "le-current-heading": HTMLLeCurrentHeadingElement;
2307
2578
  "le-dropdown-base": HTMLLeDropdownBaseElement;
2579
+ "le-header": HTMLLeHeaderElement;
2580
+ "le-header-placeholder": HTMLLeHeaderPlaceholderElement;
2308
2581
  "le-multiselect": HTMLLeMultiselectElement;
2309
2582
  "le-number-input": HTMLLeNumberInputElement;
2310
2583
  "le-popover": HTMLLePopoverElement;
2311
2584
  "le-popup": HTMLLePopupElement;
2312
2585
  "le-round-progress": HTMLLeRoundProgressElement;
2586
+ "le-scroll-progress": HTMLLeScrollProgressElement;
2313
2587
  "le-segmented-control": HTMLLeSegmentedControlElement;
2314
2588
  "le-select": HTMLLeSelectElement;
2315
2589
  "le-slot": HTMLLeSlotElement;
@@ -2586,6 +2860,38 @@ declare namespace LocalJSX {
2586
2860
  */
2587
2861
  "value"?: string;
2588
2862
  }
2863
+ /**
2864
+ * Animated show/hide wrapper.
2865
+ * Supports height collapse (auto->0) and/or fading.
2866
+ * Can optionally listen to the nearest `le-header` shrink events.
2867
+ * @cssprop --le-collapse-duration - Transition duration
2868
+ * @csspart region - Collapsible region
2869
+ * @csspart content - Inner content
2870
+ * @cmsEditable true
2871
+ * @cmsCategory Layout
2872
+ */
2873
+ interface LeCollapse {
2874
+ /**
2875
+ * If true, collapse/expand based on the nearest header shrink event.
2876
+ * @default false
2877
+ */
2878
+ "collapseOnHeaderShrink"?: boolean;
2879
+ /**
2880
+ * Stop fading the content when collapsing/expanding.
2881
+ * @default false
2882
+ */
2883
+ "noFading"?: boolean;
2884
+ /**
2885
+ * Whether the content should be shown.
2886
+ * @default true
2887
+ */
2888
+ "open"?: boolean;
2889
+ /**
2890
+ * Whether the content should scroll down from the top when open.
2891
+ * @default false
2892
+ */
2893
+ "scrollDown"?: boolean;
2894
+ }
2589
2895
  /**
2590
2896
  * A combobox component with searchable dropdown.
2591
2897
  * Combines a text input with a dropdown list, allowing users to
@@ -2723,6 +3029,21 @@ declare namespace LocalJSX {
2723
3029
  */
2724
3030
  "hostStyle"?: { [key: string]: string };
2725
3031
  }
3032
+ /**
3033
+ * Shows a "smart" header title based on what has scrolled out of view.
3034
+ * When `selector` matches multiple elements, the title becomes the last element
3035
+ * (top-to-bottom) that has fully scrolled out above the viewport.
3036
+ * @csspart title - The rendered title
3037
+ * @cmsEditable true
3038
+ * @cmsCategory Layout
3039
+ */
3040
+ interface LeCurrentHeading {
3041
+ /**
3042
+ * CSS selector for page title/headings to watch (e.g. `.page-title`, `main h2`).
3043
+ * @default ''
3044
+ */
3045
+ "selector"?: string;
3046
+ }
2726
3047
  /**
2727
3048
  * Internal dropdown base component that provides shared functionality
2728
3049
  * for select, combobox, and multiselect components.
@@ -2810,6 +3131,95 @@ declare namespace LocalJSX {
2810
3131
  */
2811
3132
  "width"?: string;
2812
3133
  }
3134
+ /**
3135
+ * A functional page header with scroll-aware behaviors.
3136
+ * Features:
3137
+ * - Static (default), sticky, or fixed positioning
3138
+ * - Optional shrink-on-scroll behavior via `shrink-offset`
3139
+ * - Optional reveal-on-scroll-up via `reveal-on-scroll` (sticky only)
3140
+ * Slots:
3141
+ * - `start`: left side (logo/back button)
3142
+ * - `title`: centered/primary title content
3143
+ * - `end`: right side actions
3144
+ * - default: extra content row (e.g., tabs/search) rendered below main row
3145
+ * @cssprop --le-header-bg - Background (color/gradient)
3146
+ * @cssprop --le-header-color - Text color
3147
+ * @cssprop --le-header-border - Border (e.g. 1px solid ...)
3148
+ * @cssprop --le-header-shadow - Shadow/elevation
3149
+ * @cssprop --le-header-max-width - Inner content max width
3150
+ * @cssprop --le-header-padding-x - Horizontal padding
3151
+ * @cssprop --le-header-padding-y - Vertical padding
3152
+ * @cssprop --le-header-gap - Gap between zones
3153
+ * @cssprop --le-header-height - Base height (main row)
3154
+ * @cssprop --le-header-height-condensed - Condensed height when shrunk
3155
+ * @cssprop --le-header-transition - Transition timing
3156
+ * @cssprop --le-header-z - Z-index (fixed mode)
3157
+ * @csspart header - The header container
3158
+ * @csspart inner - Inner max-width container
3159
+ * @csspart row - Main row
3160
+ * @csspart start - Start zone
3161
+ * @csspart title - Title zone
3162
+ * @csspart end - End zone
3163
+ * @csspart secondary - Secondary row
3164
+ * @cmsEditable true
3165
+ * @cmsCategory Layout
3166
+ */
3167
+ interface LeHeader {
3168
+ /**
3169
+ * If true, expand the header when hovered
3170
+ * @default false
3171
+ */
3172
+ "expandOnHover"?: boolean;
3173
+ /**
3174
+ * Fixed positioning (out-of-flow). Takes precedence over `sticky`/`static`.
3175
+ * @default false
3176
+ */
3177
+ "fixed"?: boolean;
3178
+ /**
3179
+ * Force static positioning (default). Ignored if `sticky` or `fixed` are true.
3180
+ * @default false
3181
+ */
3182
+ "isStatic"?: boolean;
3183
+ /**
3184
+ * Emits when the header shrinks/expands (only on change).
3185
+ */
3186
+ "onLeHeaderShrinkChange"?: (event: LeHeaderCustomEvent<{ shrunk: boolean; y: number }>) => void;
3187
+ /**
3188
+ * Emits whenever scroll-driven state changes.
3189
+ */
3190
+ "onLeHeaderState"?: (event: LeHeaderCustomEvent<{
3191
+ y: number;
3192
+ direction: 'up' | 'down';
3193
+ revealed: boolean;
3194
+ shrunk: boolean;
3195
+ }>) => void;
3196
+ /**
3197
+ * Emits when the header hides/shows (only on change).
3198
+ */
3199
+ "onLeHeaderVisibilityChange"?: (event: LeHeaderCustomEvent<{ visible: boolean; y: number }>) => void;
3200
+ /**
3201
+ * Sticky-only reveal behavior (hide on scroll down, show on scroll up). - missing/false: disabled - true/empty attribute: enabled with default threshold (16) - number (as string): enabled and used as threshold
3202
+ */
3203
+ "revealOnScroll"?: string;
3204
+ /**
3205
+ * Shrink trigger. - missing/0: disabled - number (px): shrink when scrollY >= that value (but never before header height) - css var name (e.g. --foo): shrink when scrollY >= resolved var value - selector (e.g. .page-title): shrink when that element scrolls out of view above the viewport
3206
+ */
3207
+ "shrinkOffset"?: string;
3208
+ /**
3209
+ * Sticky positioning (in-flow). Ignored if `fixed` is true.
3210
+ * @default false
3211
+ */
3212
+ "sticky"?: boolean;
3213
+ }
3214
+ /**
3215
+ * Placeholder for `le-header`.
3216
+ * Reserves space using the global CSS variable `--le-header-height`.
3217
+ * The header component updates that variable when it renders.
3218
+ * @cssprop --le-header-height - Published header height (px)
3219
+ * @cmsInternal true
3220
+ */
3221
+ interface LeHeaderPlaceholder {
3222
+ }
2813
3223
  /**
2814
3224
  * A multiselect component for selecting multiple options.
2815
3225
  * Displays selected items as tags with optional search filtering.
@@ -3167,6 +3577,29 @@ declare namespace LocalJSX {
3167
3577
  */
3168
3578
  "value"?: number;
3169
3579
  }
3580
+ /**
3581
+ * Displays scroll progress as a simple bar.
3582
+ * If `track-scroll-progress` is present without a value, tracks the full document.
3583
+ * If it is a selector string, tracks progress within the matched element.
3584
+ * @cssprop --le-scroll-progress-height - Bar height
3585
+ * @cssprop --le-scroll-progress-bg - Track background
3586
+ * @cssprop --le-scroll-progress-fill - Fill color
3587
+ * @cssprop --le-scroll-progress-sticky-top - If sticky, stop position to parent top
3588
+ * @cssprop --le-scroll-progress-fixed-top - If fixed, distance from window top
3589
+ * @cssprop --le-scroll-progress-fixed-left - If fixed, distance from window left
3590
+ * @cssprop --le-scroll-progress-fixed-right - If fixed, distance from window right
3591
+ * @cssprop --le-scroll-progress-z - Z-index of the progress bar (1001 by default, above header)
3592
+ * @csspart track - Outer track
3593
+ * @csspart fill - Inner fill
3594
+ * @cmsEditable true
3595
+ * @cmsCategory Layout
3596
+ */
3597
+ interface LeScrollProgress {
3598
+ /**
3599
+ * Boolean or selector string.
3600
+ */
3601
+ "trackScrollProgress"?: string;
3602
+ }
3170
3603
  /**
3171
3604
  * A segmented control component (iOS-style toggle buttons).
3172
3605
  * Perfect for toggling between a small set of related options.
@@ -3925,14 +4358,19 @@ declare namespace LocalJSX {
3925
4358
  "le-button": LeButton;
3926
4359
  "le-card": LeCard;
3927
4360
  "le-checkbox": LeCheckbox;
4361
+ "le-collapse": LeCollapse;
3928
4362
  "le-combobox": LeCombobox;
3929
4363
  "le-component": LeComponent;
4364
+ "le-current-heading": LeCurrentHeading;
3930
4365
  "le-dropdown-base": LeDropdownBase;
4366
+ "le-header": LeHeader;
4367
+ "le-header-placeholder": LeHeaderPlaceholder;
3931
4368
  "le-multiselect": LeMultiselect;
3932
4369
  "le-number-input": LeNumberInput;
3933
4370
  "le-popover": LePopover;
3934
4371
  "le-popup": LePopup;
3935
4372
  "le-round-progress": LeRoundProgress;
4373
+ "le-scroll-progress": LeScrollProgress;
3936
4374
  "le-segmented-control": LeSegmentedControl;
3937
4375
  "le-select": LeSelect;
3938
4376
  "le-slot": LeSlot;
@@ -4004,6 +4442,17 @@ declare module "@stencil/core" {
4004
4442
  * @cssprop --le-checkbox-desc-color - Color of the description text
4005
4443
  */
4006
4444
  "le-checkbox": LocalJSX.LeCheckbox & JSXBase.HTMLAttributes<HTMLLeCheckboxElement>;
4445
+ /**
4446
+ * Animated show/hide wrapper.
4447
+ * Supports height collapse (auto->0) and/or fading.
4448
+ * Can optionally listen to the nearest `le-header` shrink events.
4449
+ * @cssprop --le-collapse-duration - Transition duration
4450
+ * @csspart region - Collapsible region
4451
+ * @csspart content - Inner content
4452
+ * @cmsEditable true
4453
+ * @cmsCategory Layout
4454
+ */
4455
+ "le-collapse": LocalJSX.LeCollapse & JSXBase.HTMLAttributes<HTMLLeCollapseElement>;
4007
4456
  /**
4008
4457
  * A combobox component with searchable dropdown.
4009
4458
  * Combines a text input with a dropdown list, allowing users to
@@ -4049,6 +4498,15 @@ declare module "@stencil/core" {
4049
4498
  * @cmsCategory System
4050
4499
  */
4051
4500
  "le-component": LocalJSX.LeComponent & JSXBase.HTMLAttributes<HTMLLeComponentElement>;
4501
+ /**
4502
+ * Shows a "smart" header title based on what has scrolled out of view.
4503
+ * When `selector` matches multiple elements, the title becomes the last element
4504
+ * (top-to-bottom) that has fully scrolled out above the viewport.
4505
+ * @csspart title - The rendered title
4506
+ * @cmsEditable true
4507
+ * @cmsCategory Layout
4508
+ */
4509
+ "le-current-heading": LocalJSX.LeCurrentHeading & JSXBase.HTMLAttributes<HTMLLeCurrentHeadingElement>;
4052
4510
  /**
4053
4511
  * Internal dropdown base component that provides shared functionality
4054
4512
  * for select, combobox, and multiselect components.
@@ -4061,6 +4519,48 @@ declare module "@stencil/core" {
4061
4519
  * @cmsCategory System
4062
4520
  */
4063
4521
  "le-dropdown-base": LocalJSX.LeDropdownBase & JSXBase.HTMLAttributes<HTMLLeDropdownBaseElement>;
4522
+ /**
4523
+ * A functional page header with scroll-aware behaviors.
4524
+ * Features:
4525
+ * - Static (default), sticky, or fixed positioning
4526
+ * - Optional shrink-on-scroll behavior via `shrink-offset`
4527
+ * - Optional reveal-on-scroll-up via `reveal-on-scroll` (sticky only)
4528
+ * Slots:
4529
+ * - `start`: left side (logo/back button)
4530
+ * - `title`: centered/primary title content
4531
+ * - `end`: right side actions
4532
+ * - default: extra content row (e.g., tabs/search) rendered below main row
4533
+ * @cssprop --le-header-bg - Background (color/gradient)
4534
+ * @cssprop --le-header-color - Text color
4535
+ * @cssprop --le-header-border - Border (e.g. 1px solid ...)
4536
+ * @cssprop --le-header-shadow - Shadow/elevation
4537
+ * @cssprop --le-header-max-width - Inner content max width
4538
+ * @cssprop --le-header-padding-x - Horizontal padding
4539
+ * @cssprop --le-header-padding-y - Vertical padding
4540
+ * @cssprop --le-header-gap - Gap between zones
4541
+ * @cssprop --le-header-height - Base height (main row)
4542
+ * @cssprop --le-header-height-condensed - Condensed height when shrunk
4543
+ * @cssprop --le-header-transition - Transition timing
4544
+ * @cssprop --le-header-z - Z-index (fixed mode)
4545
+ * @csspart header - The header container
4546
+ * @csspart inner - Inner max-width container
4547
+ * @csspart row - Main row
4548
+ * @csspart start - Start zone
4549
+ * @csspart title - Title zone
4550
+ * @csspart end - End zone
4551
+ * @csspart secondary - Secondary row
4552
+ * @cmsEditable true
4553
+ * @cmsCategory Layout
4554
+ */
4555
+ "le-header": LocalJSX.LeHeader & JSXBase.HTMLAttributes<HTMLLeHeaderElement>;
4556
+ /**
4557
+ * Placeholder for `le-header`.
4558
+ * Reserves space using the global CSS variable `--le-header-height`.
4559
+ * The header component updates that variable when it renders.
4560
+ * @cssprop --le-header-height - Published header height (px)
4561
+ * @cmsInternal true
4562
+ */
4563
+ "le-header-placeholder": LocalJSX.LeHeaderPlaceholder & JSXBase.HTMLAttributes<HTMLLeHeaderPlaceholderElement>;
4064
4564
  /**
4065
4565
  * A multiselect component for selecting multiple options.
4066
4566
  * Displays selected items as tags with optional search filtering.
@@ -4121,6 +4621,24 @@ declare module "@stencil/core" {
4121
4621
  */
4122
4622
  "le-popup": LocalJSX.LePopup & JSXBase.HTMLAttributes<HTMLLePopupElement>;
4123
4623
  "le-round-progress": LocalJSX.LeRoundProgress & JSXBase.HTMLAttributes<HTMLLeRoundProgressElement>;
4624
+ /**
4625
+ * Displays scroll progress as a simple bar.
4626
+ * If `track-scroll-progress` is present without a value, tracks the full document.
4627
+ * If it is a selector string, tracks progress within the matched element.
4628
+ * @cssprop --le-scroll-progress-height - Bar height
4629
+ * @cssprop --le-scroll-progress-bg - Track background
4630
+ * @cssprop --le-scroll-progress-fill - Fill color
4631
+ * @cssprop --le-scroll-progress-sticky-top - If sticky, stop position to parent top
4632
+ * @cssprop --le-scroll-progress-fixed-top - If fixed, distance from window top
4633
+ * @cssprop --le-scroll-progress-fixed-left - If fixed, distance from window left
4634
+ * @cssprop --le-scroll-progress-fixed-right - If fixed, distance from window right
4635
+ * @cssprop --le-scroll-progress-z - Z-index of the progress bar (1001 by default, above header)
4636
+ * @csspart track - Outer track
4637
+ * @csspart fill - Inner fill
4638
+ * @cmsEditable true
4639
+ * @cmsCategory Layout
4640
+ */
4641
+ "le-scroll-progress": LocalJSX.LeScrollProgress & JSXBase.HTMLAttributes<HTMLLeScrollProgressElement>;
4124
4642
  /**
4125
4643
  * A segmented control component (iOS-style toggle buttons).
4126
4644
  * Perfect for toggling between a small set of related options.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "le-kit",
3
- "version": "0.1.15",
3
+ "version": "0.1.16",
4
4
  "description": "Themable web components library with CMS admin mode support",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",