le-kit 0.1.14 → 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 (568) hide show
  1. package/dist/{core/cjs/index-B0mg71He.js → cjs/index-CHzu3ydp.js} +10 -3
  2. package/dist/cjs/index-CHzu3ydp.js.map +1 -0
  3. package/dist/{core/cjs → cjs}/index.cjs.js +4 -3
  4. package/dist/cjs/index.cjs.js.map +1 -0
  5. package/dist/{core/cjs → cjs}/le-box.cjs.entry.js +3 -3
  6. package/dist/cjs/le-box.entry.cjs.js.map +1 -0
  7. 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
  8. package/dist/cjs/le-button_13.cjs.entry.js +2579 -0
  9. package/dist/cjs/le-card.cjs.entry.js +29 -0
  10. package/dist/cjs/le-card.entry.cjs.js.map +1 -0
  11. package/dist/cjs/le-combobox.cjs.entry.js +237 -0
  12. package/dist/cjs/le-combobox.entry.cjs.js.map +1 -0
  13. package/dist/cjs/le-header-placeholder.cjs.entry.js +18 -0
  14. package/dist/cjs/le-header-placeholder.entry.cjs.js.map +1 -0
  15. package/dist/cjs/le-kit.cjs.js +25 -0
  16. package/dist/cjs/le-multiselect.cjs.entry.js +306 -0
  17. package/dist/cjs/le-multiselect.entry.cjs.js.map +1 -0
  18. package/dist/{core/cjs → cjs}/le-number-input.cjs.entry.js +3 -3
  19. package/dist/cjs/le-number-input.entry.cjs.js.map +1 -0
  20. package/dist/{core/cjs → cjs}/le-round-progress.cjs.entry.js +2 -2
  21. package/dist/cjs/le-round-progress.entry.cjs.js.map +1 -0
  22. package/dist/cjs/le-segmented-control.cjs.entry.js +245 -0
  23. package/dist/cjs/le-segmented-control.entry.cjs.js.map +1 -0
  24. package/dist/{core/cjs → cjs}/le-stack.cjs.entry.js +4 -4
  25. package/dist/cjs/le-stack.entry.cjs.js.map +1 -0
  26. package/dist/cjs/le-tab-bar.cjs.entry.js +242 -0
  27. package/dist/cjs/le-tab-bar.entry.cjs.js.map +1 -0
  28. package/dist/cjs/le-tab-panel.cjs.entry.js +100 -0
  29. package/dist/cjs/le-tab-panel.entry.cjs.js.map +1 -0
  30. package/dist/cjs/le-tab.cjs.entry.js +133 -0
  31. package/dist/cjs/le-tab.entry.cjs.js.map +1 -0
  32. package/dist/cjs/le-tabs.cjs.entry.js +307 -0
  33. package/dist/cjs/le-tabs.entry.cjs.js.map +1 -0
  34. package/dist/cjs/le-tag.cjs.entry.js +68 -0
  35. package/dist/cjs/le-tag.entry.cjs.js.map +1 -0
  36. package/dist/{core/cjs → cjs}/le-text.cjs.entry.js +3 -3
  37. package/dist/cjs/le-text.entry.cjs.js.map +1 -0
  38. package/dist/{core/cjs → cjs}/le-turntable.cjs.entry.js +2 -2
  39. package/dist/cjs/le-turntable.entry.cjs.js.map +1 -0
  40. package/dist/cjs/loader.cjs.js +13 -0
  41. package/dist/{core/cjs/utils-jdqP71LP.js → cjs/utils-CYOKcOW8.js} +3 -3
  42. package/dist/cjs/utils-CYOKcOW8.js.map +1 -0
  43. package/dist/collection/collection-manifest.json +41 -0
  44. package/dist/{core/collection → collection}/components/le-box/le-box.js +1 -1
  45. package/dist/collection/components/le-box/le-box.js.map +1 -0
  46. package/dist/{core/collection/components/le-button/le-button.default.css → collection/components/le-button/le-button.css} +65 -38
  47. package/dist/{core/collection → collection}/components/le-button/le-button.js +106 -16
  48. package/dist/collection/components/le-button/le-button.js.map +1 -0
  49. package/dist/{core/collection → collection}/components/le-card/le-card.default.css +6 -6
  50. package/dist/{core/collection → collection}/components/le-card/le-card.js +2 -2
  51. package/dist/collection/components/le-card/le-card.js.map +1 -0
  52. package/dist/{core/collection → collection}/components/le-checkbox/le-checkbox.js +2 -2
  53. package/dist/collection/components/le-checkbox/le-checkbox.js.map +1 -0
  54. package/dist/collection/components/le-collapse/le-collapse.css +31 -0
  55. package/dist/collection/components/le-collapse/le-collapse.js +188 -0
  56. package/dist/collection/components/le-collapse/le-collapse.js.map +1 -0
  57. package/dist/collection/components/le-combobox/le-combobox.css +144 -0
  58. package/dist/collection/components/le-combobox/le-combobox.js +659 -0
  59. package/dist/collection/components/le-combobox/le-combobox.js.map +1 -0
  60. package/dist/collection/components/le-component/le-component.css +189 -0
  61. package/dist/{le-kit/le-component.entry.js → collection/components/le-component/le-component.js} +137 -17
  62. package/dist/collection/components/le-component/le-component.js.map +1 -0
  63. package/dist/collection/components/le-current-heading/le-current-heading.css +12 -0
  64. package/dist/collection/components/le-current-heading/le-current-heading.js +130 -0
  65. package/dist/collection/components/le-current-heading/le-current-heading.js.map +1 -0
  66. package/dist/collection/components/le-dropdown-base/le-dropdown-base.css +167 -0
  67. package/dist/collection/components/le-dropdown-base/le-dropdown-base.js +761 -0
  68. package/dist/collection/components/le-dropdown-base/le-dropdown-base.js.map +1 -0
  69. package/dist/collection/components/le-header/le-header.css +120 -0
  70. package/dist/collection/components/le-header/le-header.js +508 -0
  71. package/dist/collection/components/le-header/le-header.js.map +1 -0
  72. package/dist/collection/components/le-header-placeholder/le-header-placeholder.js +21 -0
  73. package/dist/collection/components/le-header-placeholder/le-header-placeholder.js.map +1 -0
  74. package/dist/collection/components/le-multiselect/le-multiselect.css +163 -0
  75. package/dist/collection/components/le-multiselect/le-multiselect.js +734 -0
  76. package/dist/collection/components/le-multiselect/le-multiselect.js.map +1 -0
  77. package/dist/{core/collection → collection}/components/le-number-input/le-number-input.js +2 -2
  78. package/dist/collection/components/le-number-input/le-number-input.js.map +1 -0
  79. package/dist/{core/collection → collection}/components/le-popover/le-popover.css +20 -0
  80. package/dist/{core/collection → collection}/components/le-popover/le-popover.js +180 -20
  81. package/dist/collection/components/le-popover/le-popover.js.map +1 -0
  82. package/dist/{core/collection → collection}/components/le-popup/le-popup.api.js +2 -1
  83. package/dist/collection/components/le-popup/le-popup.api.js.map +1 -0
  84. package/dist/{core/collection → collection}/components/le-popup/le-popup.js +49 -19
  85. package/dist/collection/components/le-popup/le-popup.js.map +1 -0
  86. package/dist/{core/collection → collection}/components/le-round-progress/le-round-progress.js +1 -1
  87. package/dist/collection/components/le-round-progress/le-round-progress.js.map +1 -0
  88. package/dist/collection/components/le-scroll-progress/le-scroll-progress.css +29 -0
  89. package/dist/collection/components/le-scroll-progress/le-scroll-progress.js +186 -0
  90. package/dist/collection/components/le-scroll-progress/le-scroll-progress.js.map +1 -0
  91. package/dist/collection/components/le-segmented-control/le-segmented-control.css +78 -0
  92. package/dist/collection/components/le-segmented-control/le-segmented-control.js +445 -0
  93. package/dist/collection/components/le-segmented-control/le-segmented-control.js.map +1 -0
  94. package/dist/collection/components/le-select/le-select.css +121 -0
  95. package/dist/collection/components/le-select/le-select.js +578 -0
  96. package/dist/collection/components/le-select/le-select.js.map +1 -0
  97. package/dist/collection/components/le-slot/le-slot.default.css +222 -0
  98. package/dist/{le-kit/le-slot.entry.js → collection/components/le-slot/le-slot.js} +268 -17
  99. package/dist/collection/components/le-slot/le-slot.js.map +1 -0
  100. package/dist/{core/collection → collection}/components/le-stack/le-stack.js +2 -2
  101. package/dist/collection/components/le-stack/le-stack.js.map +1 -0
  102. package/dist/{core/collection → collection}/components/le-string-input/le-string-input.css +1 -1
  103. package/dist/{core/collection → collection}/components/le-string-input/le-string-input.js +60 -6
  104. package/dist/collection/components/le-string-input/le-string-input.js.map +1 -0
  105. package/dist/collection/components/le-tab/le-tab.css +289 -0
  106. package/dist/collection/components/le-tab/le-tab.js +565 -0
  107. package/dist/collection/components/le-tab/le-tab.js.map +1 -0
  108. package/dist/collection/components/le-tab-bar/le-tab-bar.css +89 -0
  109. package/dist/collection/components/le-tab-bar/le-tab-bar.js +467 -0
  110. package/dist/collection/components/le-tab-bar/le-tab-bar.js.map +1 -0
  111. package/dist/collection/components/le-tab-panel/le-tab-panel.css +30 -0
  112. package/dist/collection/components/le-tab-panel/le-tab-panel.js +302 -0
  113. package/dist/collection/components/le-tab-panel/le-tab-panel.js.map +1 -0
  114. package/dist/collection/components/le-tabs/le-tabs.css +146 -0
  115. package/dist/collection/components/le-tabs/le-tabs.js +588 -0
  116. package/dist/collection/components/le-tabs/le-tabs.js.map +1 -0
  117. package/dist/collection/components/le-tag/le-tag.css +139 -0
  118. package/dist/collection/components/le-tag/le-tag.js +266 -0
  119. package/dist/collection/components/le-tag/le-tag.js.map +1 -0
  120. package/dist/{core/collection → collection}/components/le-text/le-text.js +1 -1
  121. package/dist/collection/components/le-text/le-text.js.map +1 -0
  122. package/dist/{core/collection → collection}/components/le-turntable/le-turntable.js +1 -1
  123. package/dist/collection/components/le-turntable/le-turntable.js.map +1 -0
  124. package/dist/collection/dist/components/assets/.gitkeep +1 -0
  125. package/dist/collection/dist/components/assets/custom-elements.json +9234 -0
  126. package/dist/collection/dist/components/themes/base.css +89 -0
  127. package/dist/collection/dist/components/themes/dark.css +103 -0
  128. package/dist/collection/dist/components/themes/default.css +111 -0
  129. package/dist/collection/dist/components/themes/gradient.css +103 -0
  130. package/dist/collection/dist/components/themes/index.css +76 -0
  131. package/dist/collection/dist/components/themes/minimal.css +103 -0
  132. package/dist/collection/dist/components/themes/warm.css +103 -0
  133. package/dist/collection/global/app.js.map +1 -0
  134. package/dist/collection/index.js.map +1 -0
  135. package/dist/collection/types/blocks.js.map +1 -0
  136. package/dist/collection/types/options.js.map +1 -0
  137. package/dist/collection/utils/utils.js.map +1 -0
  138. package/dist/components/assets/.gitkeep +1 -0
  139. package/dist/components/assets/custom-elements.json +9234 -0
  140. package/dist/components/index.js +11 -0
  141. package/dist/components/index.js.map +1 -0
  142. package/dist/{core/components → components}/le-box.js +22 -6
  143. package/dist/components/le-box.js.map +1 -0
  144. package/dist/{core/components → components}/le-button.js +1 -1
  145. package/dist/{core/components → components}/le-button2.js +671 -35
  146. package/dist/components/le-button2.js.map +1 -0
  147. package/dist/{core/components → components}/le-card.js +22 -6
  148. package/dist/components/le-card.js.map +1 -0
  149. package/dist/{core/components → components}/le-checkbox.js +1 -1
  150. package/dist/components/le-collapse.d.ts +11 -0
  151. package/dist/components/le-collapse.js +144 -0
  152. package/dist/components/le-collapse.js.map +1 -0
  153. package/dist/components/le-combobox.d.ts +11 -0
  154. package/dist/components/le-combobox.js +326 -0
  155. package/dist/components/le-combobox.js.map +1 -0
  156. package/dist/{core/components → components}/le-component.js +1 -1
  157. package/dist/components/le-current-heading.d.ts +11 -0
  158. package/dist/components/le-current-heading.js +93 -0
  159. package/dist/components/le-current-heading.js.map +1 -0
  160. package/dist/components/le-dropdown-base.d.ts +11 -0
  161. package/dist/components/le-dropdown-base.js +9 -0
  162. package/dist/components/le-dropdown-base.js.map +1 -0
  163. package/dist/components/le-dropdown-base2.js +393 -0
  164. package/dist/components/le-dropdown-base2.js.map +1 -0
  165. package/dist/components/le-header-placeholder.d.ts +11 -0
  166. package/dist/components/le-header-placeholder.js +37 -0
  167. package/dist/components/le-header-placeholder.js.map +1 -0
  168. package/dist/components/le-header.d.ts +11 -0
  169. package/dist/components/le-header.js +347 -0
  170. package/dist/components/le-header.js.map +1 -0
  171. package/dist/components/le-multiselect.d.ts +11 -0
  172. package/dist/components/le-multiselect.js +405 -0
  173. package/dist/components/le-multiselect.js.map +1 -0
  174. package/dist/{core/components → components}/le-number-input.js +23 -7
  175. package/dist/components/le-number-input.js.map +1 -0
  176. package/dist/{core/components → components}/le-popover2.js +143 -21
  177. package/dist/components/le-popover2.js.map +1 -0
  178. package/dist/{core/components/index.js → components/le-popup.api.js} +5 -12
  179. package/dist/components/le-popup.api.js.map +1 -0
  180. package/dist/components/le-popup.js +9 -0
  181. package/dist/components/le-popup.js.map +1 -0
  182. package/dist/{core/components → components}/le-round-progress.js +1 -1
  183. package/dist/components/le-scroll-progress.d.ts +11 -0
  184. package/dist/components/le-scroll-progress.js +142 -0
  185. package/dist/components/le-scroll-progress.js.map +1 -0
  186. package/dist/components/le-segmented-control.d.ts +11 -0
  187. package/dist/components/le-segmented-control.js +331 -0
  188. package/dist/components/le-segmented-control.js.map +1 -0
  189. package/dist/components/le-select.d.ts +11 -0
  190. package/dist/components/le-select.js +9 -0
  191. package/dist/components/le-select.js.map +1 -0
  192. package/dist/{core/components → components}/le-slot.js +1 -1
  193. package/dist/{core/components → components}/le-stack.js +23 -7
  194. package/dist/components/le-stack.js.map +1 -0
  195. package/dist/{core/components → components}/le-string-input.js +1 -1
  196. package/dist/components/le-tab-bar.d.ts +11 -0
  197. package/dist/components/le-tab-bar.js +330 -0
  198. package/dist/components/le-tab-bar.js.map +1 -0
  199. package/dist/components/le-tab-panel.d.ts +11 -0
  200. package/dist/components/le-tab-panel.js +182 -0
  201. package/dist/components/le-tab-panel.js.map +1 -0
  202. package/dist/components/le-tab.d.ts +11 -0
  203. package/dist/components/le-tab.js +9 -0
  204. package/dist/components/le-tab.js.map +1 -0
  205. package/dist/components/le-tab2.js +217 -0
  206. package/dist/components/le-tab2.js.map +1 -0
  207. package/dist/components/le-tabs.d.ts +11 -0
  208. package/dist/components/le-tabs.js +397 -0
  209. package/dist/components/le-tabs.js.map +1 -0
  210. package/dist/components/le-tag.d.ts +11 -0
  211. package/dist/components/le-tag.js +9 -0
  212. package/dist/components/le-tag.js.map +1 -0
  213. package/dist/components/le-tag2.js +141 -0
  214. package/dist/components/le-tag2.js.map +1 -0
  215. package/dist/{core/components → components}/le-text.js +22 -6
  216. package/dist/components/le-text.js.map +1 -0
  217. package/dist/{core/components → components}/le-turntable.js +1 -1
  218. package/dist/components/themes/base.css +4 -4
  219. package/dist/components/themes/dark.css +4 -1
  220. package/dist/components/themes/default.css +4 -1
  221. package/dist/components/themes/gradient.css +4 -1
  222. package/dist/components/themes/index.css +4 -341
  223. package/dist/components/themes/minimal.css +4 -1
  224. package/dist/components/themes/warm.css +4 -1
  225. package/dist/docs.d.ts +443 -0
  226. package/dist/docs.json +11547 -0
  227. package/dist/{core/esm/index-SKsXnjWI.js → esm/index-hmBwv43R.js} +10 -4
  228. package/dist/esm/index-hmBwv43R.js.map +1 -0
  229. package/dist/{core/esm → esm}/index.js +4 -3
  230. package/dist/esm/index.js.map +1 -0
  231. package/dist/{le-kit → esm}/le-box.entry.js +3 -3
  232. package/dist/esm/le-box.entry.js.map +1 -0
  233. 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
  234. package/dist/esm/le-button_13.entry.js +2565 -0
  235. package/dist/{le-kit → esm}/le-card.entry.js +3 -3
  236. package/dist/esm/le-card.entry.js.map +1 -0
  237. package/dist/esm/le-combobox.entry.js +235 -0
  238. package/dist/esm/le-combobox.entry.js.map +1 -0
  239. package/dist/esm/le-header-placeholder.entry.js +16 -0
  240. package/dist/esm/le-header-placeholder.entry.js.map +1 -0
  241. package/dist/esm/le-kit.js +21 -0
  242. package/dist/esm/le-multiselect.entry.js +304 -0
  243. package/dist/esm/le-multiselect.entry.js.map +1 -0
  244. package/dist/{le-kit → esm}/le-number-input.entry.js +6 -6
  245. package/dist/esm/le-number-input.entry.js.map +1 -0
  246. package/dist/{core/esm → esm}/le-round-progress.entry.js +2 -2
  247. package/dist/esm/le-round-progress.entry.js.map +1 -0
  248. package/dist/esm/le-segmented-control.entry.js +243 -0
  249. package/dist/esm/le-segmented-control.entry.js.map +1 -0
  250. package/dist/{le-kit → esm}/le-stack.entry.js +4 -4
  251. package/dist/esm/le-stack.entry.js.map +1 -0
  252. package/dist/esm/le-tab-bar.entry.js +240 -0
  253. package/dist/esm/le-tab-bar.entry.js.map +1 -0
  254. package/dist/esm/le-tab-panel.entry.js +98 -0
  255. package/dist/esm/le-tab-panel.entry.js.map +1 -0
  256. package/dist/esm/le-tab.entry.js +131 -0
  257. package/dist/esm/le-tab.entry.js.map +1 -0
  258. package/dist/esm/le-tabs.entry.js +305 -0
  259. package/dist/esm/le-tabs.entry.js.map +1 -0
  260. package/dist/esm/le-tag.entry.js +66 -0
  261. package/dist/esm/le-tag.entry.js.map +1 -0
  262. package/dist/{le-kit → esm}/le-text.entry.js +3 -3
  263. package/dist/esm/le-text.entry.js.map +1 -0
  264. package/dist/{core/esm → esm}/le-turntable.entry.js +2 -2
  265. package/dist/esm/le-turntable.entry.js.map +1 -0
  266. package/dist/esm/loader.js +11 -0
  267. package/dist/{le-kit/utils-cwSNy7ZS.js → esm/utils-DRTFlnxz.js} +3 -3
  268. package/dist/{le-kit/utils-cwSNy7ZS.js.map → esm/utils-DRTFlnxz.js.map} +1 -1
  269. package/dist/le-kit/dist/components/assets/.gitkeep +1 -0
  270. package/dist/le-kit/dist/components/assets/custom-elements.json +9234 -0
  271. package/dist/le-kit/dist/components/themes/base.css +4 -4
  272. package/dist/le-kit/dist/components/themes/dark.css +4 -1
  273. package/dist/le-kit/dist/components/themes/default.css +4 -1
  274. package/dist/le-kit/dist/components/themes/gradient.css +4 -1
  275. package/dist/le-kit/dist/components/themes/index.css +4 -341
  276. package/dist/le-kit/dist/components/themes/minimal.css +4 -1
  277. package/dist/le-kit/dist/components/themes/warm.css +4 -1
  278. package/dist/le-kit/index.esm.js +2 -116
  279. package/dist/le-kit/index.esm.js.map +1 -1
  280. 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
  281. package/dist/le-kit/le-combobox.entry.esm.js.map +1 -0
  282. package/dist/le-kit/le-header-placeholder.entry.esm.js.map +1 -0
  283. package/dist/le-kit/le-kit.css +1 -1010
  284. package/dist/le-kit/le-kit.esm.js +2 -48
  285. package/dist/le-kit/le-kit.esm.js.map +1 -1
  286. package/dist/le-kit/le-multiselect.entry.esm.js.map +1 -0
  287. package/dist/le-kit/le-segmented-control.entry.esm.js.map +1 -0
  288. package/dist/le-kit/le-tab-bar.entry.esm.js.map +1 -0
  289. package/dist/le-kit/le-tab-panel.entry.esm.js.map +1 -0
  290. package/dist/le-kit/le-tab.entry.esm.js.map +1 -0
  291. package/dist/le-kit/le-tabs.entry.esm.js.map +1 -0
  292. package/dist/le-kit/le-tag.entry.esm.js.map +1 -0
  293. package/dist/le-kit/p-13a4dc1d.entry.js +2 -0
  294. package/dist/le-kit/p-13a4dc1d.entry.js.map +1 -0
  295. package/dist/{core/le-kit/p-55f70091.entry.js → le-kit/p-1a9e65d0.entry.js} +2 -2
  296. package/dist/le-kit/p-1a9e65d0.entry.js.map +1 -0
  297. package/dist/le-kit/p-2708dc65.entry.js +2 -0
  298. package/dist/le-kit/p-2708dc65.entry.js.map +1 -0
  299. package/dist/le-kit/p-2b96a5bd.entry.js +2 -0
  300. package/dist/le-kit/p-2b96a5bd.entry.js.map +1 -0
  301. package/dist/le-kit/p-32cbb683.entry.js +2 -0
  302. package/dist/le-kit/p-32cbb683.entry.js.map +1 -0
  303. package/dist/le-kit/p-476e1886.entry.js +2 -0
  304. package/dist/le-kit/p-476e1886.entry.js.map +1 -0
  305. package/dist/le-kit/p-67d702f9.entry.js +2 -0
  306. package/dist/le-kit/p-67d702f9.entry.js.map +1 -0
  307. package/dist/{core/le-kit/p-6e414a5c.entry.js → le-kit/p-6884e3e8.entry.js} +2 -2
  308. package/dist/le-kit/p-6884e3e8.entry.js.map +1 -0
  309. package/dist/le-kit/p-704ad5e0.entry.js +2 -0
  310. package/dist/le-kit/p-704ad5e0.entry.js.map +1 -0
  311. package/dist/le-kit/p-88f9aa40.entry.js +2 -0
  312. package/dist/le-kit/p-88f9aa40.entry.js.map +1 -0
  313. package/dist/le-kit/p-8dd8a487.entry.js +2 -0
  314. package/dist/le-kit/p-8dd8a487.entry.js.map +1 -0
  315. package/dist/le-kit/p-97b7658a.entry.js +2 -0
  316. package/dist/le-kit/p-97b7658a.entry.js.map +1 -0
  317. package/dist/le-kit/p-c0925e92.entry.js +2 -0
  318. package/dist/le-kit/p-c0925e92.entry.js.map +1 -0
  319. package/dist/le-kit/p-c2494a0d.entry.js +2 -0
  320. package/dist/le-kit/p-c2494a0d.entry.js.map +1 -0
  321. package/dist/le-kit/p-ded51018.entry.js +2 -0
  322. package/dist/le-kit/p-ded51018.entry.js.map +1 -0
  323. package/dist/{core/le-kit/p-a9d05ef6.entry.js → le-kit/p-e3db7974.entry.js} +2 -2
  324. package/dist/le-kit/p-e3db7974.entry.js.map +1 -0
  325. package/dist/{core/le-kit/p-4f133e72.entry.js → le-kit/p-f9b03aec.entry.js} +2 -2
  326. package/dist/le-kit/p-f9b03aec.entry.js.map +1 -0
  327. package/dist/le-kit/p-hmBwv43R.js +3 -0
  328. package/dist/le-kit/p-hmBwv43R.js.map +1 -0
  329. package/dist/le-kit/p-txKmCJHv.js +2 -0
  330. package/dist/le-kit/p-txKmCJHv.js.map +1 -0
  331. package/dist/themes/base.css +89 -0
  332. package/dist/themes/dark.css +103 -0
  333. package/dist/themes/default.css +111 -0
  334. package/dist/themes/gradient.css +103 -0
  335. package/dist/themes/index.css +76 -0
  336. package/dist/themes/minimal.css +103 -0
  337. package/dist/themes/warm.css +103 -0
  338. package/dist/types/components/le-button/le-button.d.ts +19 -4
  339. package/dist/types/components/le-collapse/le-collapse.d.ts +41 -0
  340. package/dist/types/components/le-combobox/le-combobox.d.ts +128 -0
  341. package/dist/types/components/le-current-heading/le-current-heading.d.ts +25 -0
  342. package/dist/types/components/le-dropdown-base/le-dropdown-base.d.ts +118 -0
  343. package/dist/types/components/le-header/le-header.d.ts +115 -0
  344. package/dist/types/components/le-header-placeholder/le-header-placeholder.d.ts +13 -0
  345. package/dist/types/components/le-multiselect/le-multiselect.d.ts +143 -0
  346. package/dist/types/components/le-popover/le-popover.d.ts +22 -2
  347. package/dist/types/components/le-popup/le-popup.d.ts +5 -0
  348. package/dist/types/components/le-scroll-progress/le-scroll-progress.d.ts +40 -0
  349. package/dist/types/components/le-segmented-control/le-segmented-control.d.ts +82 -0
  350. package/dist/types/components/le-select/le-select.d.ts +125 -0
  351. package/dist/types/components/le-string-input/le-string-input.d.ts +8 -0
  352. package/dist/types/components/le-tab/le-tab.d.ts +116 -0
  353. package/dist/types/components/le-tab-bar/le-tab-bar.d.ts +88 -0
  354. package/dist/types/components/le-tab-panel/le-tab-panel.d.ts +75 -0
  355. package/dist/types/components/le-tabs/le-tabs.d.ts +108 -0
  356. package/dist/types/components/le-tag/le-tag.d.ts +78 -0
  357. package/dist/types/components.d.ts +3061 -273
  358. package/dist/types/types/options.d.ts +9 -0
  359. package/package.json +3 -18
  360. package/dist/core/cjs/index-B0mg71He.js.map +0 -1
  361. package/dist/core/cjs/index.cjs.js.map +0 -1
  362. package/dist/core/cjs/le-box.entry.cjs.js.map +0 -1
  363. package/dist/core/cjs/le-button.cjs.entry.js +0 -92
  364. package/dist/core/cjs/le-button.entry.cjs.js.map +0 -1
  365. package/dist/core/cjs/le-card.cjs.entry.js +0 -29
  366. package/dist/core/cjs/le-card.entry.cjs.js.map +0 -1
  367. package/dist/core/cjs/le-checkbox.cjs.entry.js +0 -61
  368. package/dist/core/cjs/le-checkbox.entry.cjs.js.map +0 -1
  369. package/dist/core/cjs/le-kit.cjs.js +0 -25
  370. package/dist/core/cjs/le-number-input.entry.cjs.js.map +0 -1
  371. package/dist/core/cjs/le-popover.cjs.entry.js +0 -348
  372. package/dist/core/cjs/le-popover.entry.cjs.js.map +0 -1
  373. package/dist/core/cjs/le-popup.cjs.entry.js +0 -212
  374. package/dist/core/cjs/le-popup.entry.cjs.js.map +0 -1
  375. package/dist/core/cjs/le-round-progress.entry.cjs.js.map +0 -1
  376. package/dist/core/cjs/le-stack.entry.cjs.js.map +0 -1
  377. package/dist/core/cjs/le-string-input.cjs.entry.js +0 -95
  378. package/dist/core/cjs/le-string-input.entry.cjs.js.map +0 -1
  379. package/dist/core/cjs/le-text.entry.cjs.js.map +0 -1
  380. package/dist/core/cjs/le-turntable.entry.cjs.js.map +0 -1
  381. package/dist/core/cjs/loader.cjs.js +0 -13
  382. package/dist/core/cjs/utils-jdqP71LP.js.map +0 -1
  383. package/dist/core/collection/collection-manifest.json +0 -24
  384. package/dist/core/collection/components/le-box/le-box.js.map +0 -1
  385. package/dist/core/collection/components/le-button/le-button.js.map +0 -1
  386. package/dist/core/collection/components/le-card/le-card.js.map +0 -1
  387. package/dist/core/collection/components/le-checkbox/le-checkbox.js.map +0 -1
  388. package/dist/core/collection/components/le-number-input/le-number-input.js.map +0 -1
  389. package/dist/core/collection/components/le-popover/le-popover.js.map +0 -1
  390. package/dist/core/collection/components/le-popup/le-popup.api.js.map +0 -1
  391. package/dist/core/collection/components/le-popup/le-popup.js.map +0 -1
  392. package/dist/core/collection/components/le-round-progress/le-round-progress.js.map +0 -1
  393. package/dist/core/collection/components/le-stack/le-stack.js.map +0 -1
  394. package/dist/core/collection/components/le-string-input/le-string-input.js.map +0 -1
  395. package/dist/core/collection/components/le-text/le-text.js.map +0 -1
  396. package/dist/core/collection/components/le-turntable/le-turntable.js.map +0 -1
  397. package/dist/core/collection/global/app.js.map +0 -1
  398. package/dist/core/collection/index.js.map +0 -1
  399. package/dist/core/collection/types/blocks.js.map +0 -1
  400. package/dist/core/collection/types/options.js.map +0 -1
  401. package/dist/core/collection/utils/utils.js.map +0 -1
  402. package/dist/core/components/index.d.ts +0 -33
  403. package/dist/core/components/index.js.map +0 -1
  404. package/dist/core/components/le-box.d.ts +0 -11
  405. package/dist/core/components/le-box.js.map +0 -1
  406. package/dist/core/components/le-button.d.ts +0 -11
  407. package/dist/core/components/le-button2.js.map +0 -1
  408. package/dist/core/components/le-card.d.ts +0 -11
  409. package/dist/core/components/le-card.js.map +0 -1
  410. package/dist/core/components/le-checkbox.d.ts +0 -11
  411. package/dist/core/components/le-component.d.ts +0 -11
  412. package/dist/core/components/le-number-input.d.ts +0 -11
  413. package/dist/core/components/le-number-input.js.map +0 -1
  414. package/dist/core/components/le-popover.d.ts +0 -11
  415. package/dist/core/components/le-popover2.js.map +0 -1
  416. package/dist/core/components/le-popup.d.ts +0 -11
  417. package/dist/core/components/le-popup.js +0 -279
  418. package/dist/core/components/le-popup.js.map +0 -1
  419. package/dist/core/components/le-round-progress.d.ts +0 -11
  420. package/dist/core/components/le-slot.d.ts +0 -11
  421. package/dist/core/components/le-stack.d.ts +0 -11
  422. package/dist/core/components/le-stack.js.map +0 -1
  423. package/dist/core/components/le-string-input.d.ts +0 -11
  424. package/dist/core/components/le-text.d.ts +0 -11
  425. package/dist/core/components/le-text.js.map +0 -1
  426. package/dist/core/components/le-turntable.d.ts +0 -11
  427. package/dist/core/esm/index-SKsXnjWI.js.map +0 -1
  428. package/dist/core/esm/index.js.map +0 -1
  429. package/dist/core/esm/le-box.entry.js +0 -182
  430. package/dist/core/esm/le-box.entry.js.map +0 -1
  431. package/dist/core/esm/le-button.entry.js +0 -90
  432. package/dist/core/esm/le-button.entry.js.map +0 -1
  433. package/dist/core/esm/le-card.entry.js +0 -27
  434. package/dist/core/esm/le-card.entry.js.map +0 -1
  435. package/dist/core/esm/le-checkbox.entry.js +0 -59
  436. package/dist/core/esm/le-checkbox.entry.js.map +0 -1
  437. package/dist/core/esm/le-kit.js +0 -21
  438. package/dist/core/esm/le-number-input.entry.js +0 -200
  439. package/dist/core/esm/le-number-input.entry.js.map +0 -1
  440. package/dist/core/esm/le-popover.entry.js +0 -346
  441. package/dist/core/esm/le-popover.entry.js.map +0 -1
  442. package/dist/core/esm/le-popup.entry.js +0 -210
  443. package/dist/core/esm/le-popup.entry.js.map +0 -1
  444. package/dist/core/esm/le-round-progress.entry.js.map +0 -1
  445. package/dist/core/esm/le-stack.entry.js +0 -133
  446. package/dist/core/esm/le-stack.entry.js.map +0 -1
  447. package/dist/core/esm/le-string-input.entry.js +0 -93
  448. package/dist/core/esm/le-string-input.entry.js.map +0 -1
  449. package/dist/core/esm/le-text.entry.js +0 -333
  450. package/dist/core/esm/le-text.entry.js.map +0 -1
  451. package/dist/core/esm/le-turntable.entry.js.map +0 -1
  452. package/dist/core/esm/loader.js +0 -11
  453. package/dist/core/esm/utils-DZdP1JiG.js +0 -146
  454. package/dist/core/esm/utils-DZdP1JiG.js.map +0 -1
  455. package/dist/core/le-kit/index.esm.js +0 -2
  456. package/dist/core/le-kit/index.esm.js.map +0 -1
  457. package/dist/core/le-kit/le-box.entry.esm.js.map +0 -1
  458. package/dist/core/le-kit/le-button.entry.esm.js.map +0 -1
  459. package/dist/core/le-kit/le-card.entry.esm.js.map +0 -1
  460. package/dist/core/le-kit/le-checkbox.entry.esm.js.map +0 -1
  461. package/dist/core/le-kit/le-kit.css +0 -1
  462. package/dist/core/le-kit/le-kit.esm.js +0 -2
  463. package/dist/core/le-kit/le-kit.esm.js.map +0 -1
  464. package/dist/core/le-kit/le-number-input.entry.esm.js.map +0 -1
  465. package/dist/core/le-kit/le-popover.entry.esm.js.map +0 -1
  466. package/dist/core/le-kit/le-popup.entry.esm.js.map +0 -1
  467. package/dist/core/le-kit/le-round-progress.entry.esm.js.map +0 -1
  468. package/dist/core/le-kit/le-stack.entry.esm.js.map +0 -1
  469. package/dist/core/le-kit/le-string-input.entry.esm.js.map +0 -1
  470. package/dist/core/le-kit/le-text.entry.esm.js.map +0 -1
  471. package/dist/core/le-kit/le-turntable.entry.esm.js.map +0 -1
  472. package/dist/core/le-kit/loader.esm.js.map +0 -1
  473. package/dist/core/le-kit/p--VxUdzYV.js +0 -2
  474. package/dist/core/le-kit/p--VxUdzYV.js.map +0 -1
  475. package/dist/core/le-kit/p-189cb775.entry.js +0 -2
  476. package/dist/core/le-kit/p-189cb775.entry.js.map +0 -1
  477. package/dist/core/le-kit/p-35c1d413.entry.js +0 -2
  478. package/dist/core/le-kit/p-35c1d413.entry.js.map +0 -1
  479. package/dist/core/le-kit/p-4f133e72.entry.js.map +0 -1
  480. package/dist/core/le-kit/p-55f70091.entry.js.map +0 -1
  481. package/dist/core/le-kit/p-5fd7b23a.entry.js +0 -2
  482. package/dist/core/le-kit/p-5fd7b23a.entry.js.map +0 -1
  483. package/dist/core/le-kit/p-6e414a5c.entry.js.map +0 -1
  484. package/dist/core/le-kit/p-7b121ca7.entry.js +0 -2
  485. package/dist/core/le-kit/p-7b121ca7.entry.js.map +0 -1
  486. package/dist/core/le-kit/p-8c81fa95.entry.js +0 -2
  487. package/dist/core/le-kit/p-8c81fa95.entry.js.map +0 -1
  488. package/dist/core/le-kit/p-9aa81442.entry.js +0 -2
  489. package/dist/core/le-kit/p-9aa81442.entry.js.map +0 -1
  490. package/dist/core/le-kit/p-SKsXnjWI.js +0 -3
  491. package/dist/core/le-kit/p-SKsXnjWI.js.map +0 -1
  492. package/dist/core/le-kit/p-a9d05ef6.entry.js.map +0 -1
  493. package/dist/core/le-kit/p-b2bd2a80.entry.js +0 -2
  494. package/dist/core/le-kit/p-b2bd2a80.entry.js.map +0 -1
  495. package/dist/core/le-kit/p-ccac9611.entry.js +0 -2
  496. package/dist/core/le-kit/p-ccac9611.entry.js.map +0 -1
  497. package/dist/core/loader/cdn.js +0 -1
  498. package/dist/core/loader/index.cjs.js +0 -1
  499. package/dist/core/loader/index.d.ts +0 -24
  500. package/dist/core/loader/index.es2017.js +0 -1
  501. package/dist/core/loader/index.js +0 -2
  502. package/dist/core/types/components/le-box/le-box.d.ts +0 -111
  503. package/dist/core/types/components/le-button/le-button.d.ts +0 -78
  504. package/dist/core/types/components/le-card/le-card.d.ts +0 -37
  505. package/dist/core/types/components/le-checkbox/le-checkbox.d.ts +0 -46
  506. package/dist/core/types/components/le-number-input/le-number-input.d.ts +0 -106
  507. package/dist/core/types/components/le-popover/le-popover.d.ts +0 -109
  508. package/dist/core/types/components/le-popup/le-popup.api.d.ts +0 -73
  509. package/dist/core/types/components/le-popup/le-popup.d.ts +0 -122
  510. package/dist/core/types/components/le-round-progress/le-round-progress.d.ts +0 -37
  511. package/dist/core/types/components/le-stack/le-stack.d.ts +0 -73
  512. package/dist/core/types/components/le-string-input/le-string-input.d.ts +0 -83
  513. package/dist/core/types/components/le-text/le-text.d.ts +0 -141
  514. package/dist/core/types/components/le-turntable/le-turntable.d.ts +0 -55
  515. package/dist/core/types/components.d.ts +0 -1752
  516. package/dist/core/types/global/app.d.ts +0 -73
  517. package/dist/core/types/index.d.ts +0 -15
  518. package/dist/core/types/stencil-public-runtime.d.ts +0 -1756
  519. package/dist/core/types/types/blocks.d.ts +0 -136
  520. package/dist/core/types/types/options.d.ts +0 -124
  521. package/dist/core/types/utils/utils.d.ts +0 -54
  522. package/dist/le-kit/assets/custom-elements.json +0 -4305
  523. package/dist/le-kit/index-CAY3Hk_i.js +0 -4559
  524. package/dist/le-kit/index-CAY3Hk_i.js.map +0 -1
  525. package/dist/le-kit/le-button.entry.esm.js.map +0 -1
  526. package/dist/le-kit/le-button.entry.js +0 -90
  527. package/dist/le-kit/le-checkbox.entry.esm.js.map +0 -1
  528. package/dist/le-kit/le-checkbox.entry.js +0 -59
  529. package/dist/le-kit/le-component.entry.esm.js.map +0 -1
  530. package/dist/le-kit/le-popover.entry.esm.js.map +0 -1
  531. package/dist/le-kit/le-popover.entry.js +0 -346
  532. package/dist/le-kit/le-popup.entry.esm.js.map +0 -1
  533. package/dist/le-kit/le-popup.entry.js +0 -210
  534. package/dist/le-kit/le-round-progress.entry.js +0 -104
  535. package/dist/le-kit/le-slot.entry.esm.js.map +0 -1
  536. package/dist/le-kit/le-string-input.entry.esm.js.map +0 -1
  537. package/dist/le-kit/le-string-input.entry.js +0 -93
  538. package/dist/le-kit/le-turntable.entry.js +0 -137
  539. /package/dist/{core/cjs → cjs}/le-kit.cjs.js.map +0 -0
  540. /package/dist/{core/cjs → cjs}/loader.cjs.js.map +0 -0
  541. /package/dist/{core/collection → collection}/components/le-box/le-box.default.css +0 -0
  542. /package/dist/{core/collection → collection}/components/le-checkbox/le-checkbox.css +0 -0
  543. /package/dist/{core/collection → collection}/components/le-number-input/le-number-input.css +0 -0
  544. /package/dist/{core/collection → collection}/components/le-popup/le-popup.css +0 -0
  545. /package/dist/{core/collection → collection}/components/le-round-progress/le-round-progress.css +0 -0
  546. /package/dist/{core/collection → collection}/components/le-stack/le-stack.default.css +0 -0
  547. /package/dist/{core/collection → collection}/components/le-text/le-text.default.css +0 -0
  548. /package/dist/{core/collection → collection}/components/le-turntable/le-turntable.css +0 -0
  549. /package/dist/{core/collection → collection}/global/app.js +0 -0
  550. /package/dist/{core/collection → collection}/index.js +0 -0
  551. /package/dist/{core/collection → collection}/types/blocks.js +0 -0
  552. /package/dist/{core/collection → collection}/types/options.js +0 -0
  553. /package/dist/{core/collection → collection}/utils/utils.js +0 -0
  554. /package/dist/{core/components → components}/le-button.js.map +0 -0
  555. /package/dist/{core/components → components}/le-checkbox.js.map +0 -0
  556. /package/dist/{core/components → components}/le-component.js.map +0 -0
  557. /package/dist/{core/components → components}/le-popover.js +0 -0
  558. /package/dist/{core/components → components}/le-popover.js.map +0 -0
  559. /package/dist/{core/components → components}/le-round-progress.js.map +0 -0
  560. /package/dist/{core/components → components}/le-slot.js.map +0 -0
  561. /package/dist/{core/components → components}/le-string-input.js.map +0 -0
  562. /package/dist/{core/components → components}/le-turntable.js.map +0 -0
  563. /package/dist/{core/components → components}/utils.js +0 -0
  564. /package/dist/{core/components → components}/utils.js.map +0 -0
  565. /package/dist/{core/esm → esm}/le-kit.js.map +0 -0
  566. /package/dist/{core/esm → esm}/loader.js.map +0 -0
  567. /package/dist/{core/index.cjs.js → index.cjs.js} +0 -0
  568. /package/dist/{core/index.js → index.js} +0 -0
@@ -0,0 +1,347 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { h as classnames } from './utils.js';
3
+ import { d as defineCustomElement$2, a as defineCustomElement$3, b as defineCustomElement$4, c as defineCustomElement$5, e as defineCustomElement$8, f as defineCustomElement$9, g as defineCustomElement$a } from './le-button2.js';
4
+ import { d as defineCustomElement$7 } from './le-dropdown-base2.js';
5
+ import { d as defineCustomElement$6 } from './le-popover2.js';
6
+
7
+ const leHeaderCss = ":host{display:block;width:100%;--le-header-top-offset:0;--le-header-bg:var(--le-color-surface);--le-header-max-width:var(--le-header-max-width, auto);--le-header-margin:0 auto;--le-header-border:1px solid var(--le-color-border);--le-header-border-radius:0px;--le-header-shadow:var(--le-header-shadow, none);--le-header-color:var(--le-color-text);--le-header-content-max-width:800px;--le-header-padding-x:var(--le-space-md);--le-header-padding-y:var(--le-space-sm);--le-header-gap:var(--le-space-sm);--le-header-transition:var(--le-transition-normal);--le-header-z:1000}.header{width:100%;max-width:var(--le-header-max-width);margin:var(--le-header-margin);background:var(--le-header-bg);color:var(--le-header-color);border-bottom:var(--le-header-border);border-radius:var(--le-header-border-radius);box-shadow:var(--le-header-shadow)}:host(.is-fixed){position:fixed;top:var(--le-header-top-offset);left:0;right:0;z-index:var(--le-header-z)}:host(.is-sticky){position:sticky;top:var(--le-header-top-offset);z-index:var(--le-header-z)}:host(.is-static){position:relative}.inner{max-width:var(--le-header-content-max-width);margin:0 auto;padding:var(--le-header-padding-y) var(--le-header-padding-x)}.row{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr);align-items:center;gap:var(--le-header-gap);transition:height var(--le-header-transition),\n padding var(--le-header-transition),\n transform var(--le-header-transition)}:host(.is-shrunk) .row{height:var(--le-header-height-condensed)}:host(.is-sticky.is-hidden){transform:translateY(-150%);transition:transform var(--le-header-transition)}:host(.is-sticky.is-revealed){transform:translateY(0);transition:transform var(--le-header-transition)}.start,.title,.end{min-width:0;display:flex;align-items:center}.start{justify-content:flex-start}.end{justify-content:flex-end}.title{justify-content:center;text-align:center}.title-slot ::slotted(*){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-title{font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}";
8
+
9
+ const LeHeader$1 = /*@__PURE__*/ proxyCustomElement(class LeHeader extends HTMLElement {
10
+ constructor(registerHost) {
11
+ super();
12
+ if (registerHost !== false) {
13
+ this.__registerHost();
14
+ }
15
+ this.__attachShadow();
16
+ this.leHeaderState = createEvent(this, "leHeaderState", 7);
17
+ this.leHeaderShrinkChange = createEvent(this, "leHeaderShrinkChange", 7);
18
+ this.leHeaderVisibilityChange = createEvent(this, "leHeaderVisibilityChange", 7);
19
+ }
20
+ get el() { return this; }
21
+ /** Force static positioning (default). Ignored if `sticky` or `fixed` are true. */
22
+ isStatic = false;
23
+ /** Sticky positioning (in-flow). Ignored if `fixed` is true. */
24
+ sticky = false;
25
+ /** Fixed positioning (out-of-flow). Takes precedence over `sticky`/`static`. */
26
+ fixed = false;
27
+ /**
28
+ * Sticky-only reveal behavior (hide on scroll down, show on scroll up).
29
+ * - missing/false: disabled
30
+ * - true/empty attribute: enabled with default threshold (16)
31
+ * - number (as string): enabled and used as threshold
32
+ */
33
+ revealOnScroll;
34
+ /**
35
+ * Shrink trigger.
36
+ * - missing/0: disabled
37
+ * - number (px): shrink when scrollY >= that value (but never before header height)
38
+ * - css var name (e.g. --foo): shrink when scrollY >= resolved var value
39
+ * - selector (e.g. .page-title): shrink when that element scrolls out of view above the viewport
40
+ */
41
+ shrinkOffset;
42
+ /**
43
+ * If true, expand the header when hovered
44
+ */
45
+ expandOnHover = false;
46
+ /** Emits whenever scroll-driven state changes. */
47
+ leHeaderState;
48
+ /** Emits when the header shrinks/expands (only on change). */
49
+ leHeaderShrinkChange;
50
+ /** Emits when the header hides/shows (only on change). */
51
+ leHeaderVisibilityChange;
52
+ revealed = true;
53
+ shrunk = false;
54
+ placeholderHeight = null;
55
+ hoverActive = false;
56
+ disconnectModeObserver;
57
+ rafId = null;
58
+ measureRafId = null;
59
+ lastY = 0;
60
+ lastEmittedDirection = 'down';
61
+ headerEl;
62
+ shrinkSelectorEl;
63
+ setShrunk(next, y) {
64
+ if (next === this.shrunk)
65
+ return;
66
+ this.shrunk = next;
67
+ this.leHeaderShrinkChange.emit({ shrunk: this.shrunk, y });
68
+ }
69
+ componentDidLoad() {
70
+ if (typeof window === 'undefined')
71
+ return;
72
+ this.lastY = window.scrollY || 0;
73
+ this.scheduleMeasure(true);
74
+ this.scheduleUpdate(true);
75
+ }
76
+ disconnectedCallback() {
77
+ this.disconnectModeObserver?.();
78
+ if (this.rafId != null) {
79
+ cancelAnimationFrame(this.rafId);
80
+ this.rafId = null;
81
+ }
82
+ if (this.measureRafId != null) {
83
+ cancelAnimationFrame(this.measureRafId);
84
+ this.measureRafId = null;
85
+ }
86
+ }
87
+ onBehaviorPropsChange() {
88
+ this.scheduleUpdate(true);
89
+ this.scheduleMeasure(true);
90
+ }
91
+ onWindowScroll() {
92
+ this.scheduleUpdate();
93
+ }
94
+ onWindowResize() {
95
+ this.scheduleMeasure(true);
96
+ this.scheduleUpdate(true);
97
+ }
98
+ getPosition() {
99
+ if (this.fixed)
100
+ return 'fixed';
101
+ if (this.sticky)
102
+ return 'sticky';
103
+ return 'static';
104
+ }
105
+ parseRevealThreshold() {
106
+ // Only applies in sticky mode.
107
+ if (!this.sticky || this.fixed)
108
+ return null;
109
+ if (this.revealOnScroll == null)
110
+ return null;
111
+ const raw = String(this.revealOnScroll).trim();
112
+ if (raw === '' || raw === 'true')
113
+ return 16;
114
+ if (raw === 'false')
115
+ return null;
116
+ const n = Number(raw);
117
+ return Number.isFinite(n) ? Math.max(0, n) : 16;
118
+ }
119
+ resolveShrinkStartPx() {
120
+ const raw = (this.shrinkOffset ?? '').trim();
121
+ if (!raw || raw === '0')
122
+ return null;
123
+ // Numeric
124
+ const numeric = Number(raw);
125
+ if (Number.isFinite(numeric))
126
+ return Math.max(0, numeric);
127
+ // CSS variable name
128
+ if (raw.startsWith('--')) {
129
+ const value = getComputedStyle(document.documentElement).getPropertyValue(raw).trim();
130
+ const v = Number(value.replace('px', '').trim());
131
+ return Number.isFinite(v) ? Math.max(0, v) : null;
132
+ }
133
+ // Selector
134
+ try {
135
+ const el = document.querySelector(raw);
136
+ this.shrinkSelectorEl = el;
137
+ return null;
138
+ }
139
+ catch {
140
+ this.shrinkSelectorEl = null;
141
+ return null;
142
+ }
143
+ }
144
+ scheduleUpdate(force = false) {
145
+ if (this.rafId != null) {
146
+ if (!force)
147
+ return;
148
+ cancelAnimationFrame(this.rafId);
149
+ this.rafId = null;
150
+ }
151
+ this.rafId = requestAnimationFrame(() => {
152
+ this.rafId = null;
153
+ this.updateFromScroll();
154
+ });
155
+ }
156
+ scheduleMeasure(force = false) {
157
+ if (this.measureRafId != null && !force)
158
+ return;
159
+ this.measureRafId = requestAnimationFrame(() => {
160
+ this.measureRafId = null;
161
+ this.measurePlaceholderHeight();
162
+ });
163
+ }
164
+ measurePlaceholderHeight() {
165
+ // Measure the rendered header height once (and on resize/mode change).
166
+ // This intentionally ignores scroll/shrink behavior; it should reserve the full header height.
167
+ if (!this.headerEl)
168
+ return;
169
+ const next = Math.ceil(this.headerEl.getBoundingClientRect().height);
170
+ if (!Number.isFinite(next) || next <= 0)
171
+ return;
172
+ if (next !== this.placeholderHeight) {
173
+ this.placeholderHeight = next;
174
+ // Publish to global root so placeholders anywhere can read it.
175
+ if (typeof document !== 'undefined') {
176
+ document.documentElement.style.setProperty('--le-header-height', `${next}px`);
177
+ }
178
+ }
179
+ }
180
+ updateFromScroll() {
181
+ const y = typeof window !== 'undefined' ? window.scrollY || 0 : 0;
182
+ const delta = y - this.lastY;
183
+ const direction = delta < 0 ? 'up' : 'down';
184
+ // Shrink behavior
185
+ let computedShrunk = false;
186
+ const headerHeight = Math.max(0, this.placeholderHeight ?? 0);
187
+ const shrinkStartPx = typeof window !== 'undefined' ? this.resolveShrinkStartPx() : null;
188
+ if (this.shrinkSelectorEl) {
189
+ const rect = this.shrinkSelectorEl.getBoundingClientRect();
190
+ computedShrunk = rect.bottom <= 0;
191
+ }
192
+ else if (shrinkStartPx != null) {
193
+ const effectiveStart = Math.max(shrinkStartPx, headerHeight);
194
+ computedShrunk = y >= effectiveStart;
195
+ }
196
+ // Hover override: when enabled and hovered, force expanded.
197
+ const nextShrunk = this.expandOnHover && this.hoverActive ? false : computedShrunk;
198
+ this.setShrunk(nextShrunk, y);
199
+ // Reveal-on-scroll (sticky-only)
200
+ const revealThreshold = this.parseRevealThreshold();
201
+ if (revealThreshold != null) {
202
+ // Always show the header near the top of the page.
203
+ const topLock = Math.max(0, this.placeholderHeight ?? 0);
204
+ if (y <= topLock) {
205
+ if (!this.revealed) {
206
+ this.revealed = true;
207
+ this.leHeaderVisibilityChange.emit({ visible: true, y });
208
+ }
209
+ }
210
+ else if (Math.abs(delta) >= revealThreshold) {
211
+ const nextRevealed = direction === 'up' || y <= 0;
212
+ if (nextRevealed !== this.revealed) {
213
+ this.revealed = nextRevealed;
214
+ this.leHeaderVisibilityChange.emit({ visible: this.revealed, y });
215
+ }
216
+ this.lastEmittedDirection = direction;
217
+ }
218
+ }
219
+ else {
220
+ if (!this.revealed) {
221
+ this.revealed = true;
222
+ this.leHeaderVisibilityChange.emit({ visible: true, y });
223
+ }
224
+ }
225
+ this.lastY = y;
226
+ this.leHeaderState.emit({
227
+ y,
228
+ direction: this.lastEmittedDirection,
229
+ revealed: this.revealed,
230
+ shrunk: this.shrunk,
231
+ });
232
+ }
233
+ render() {
234
+ const position = this.getPosition();
235
+ const hostClass = classnames('le-header', {
236
+ 'header-is-shrunk': this.shrunk,
237
+ 'is-fixed': position === 'fixed',
238
+ 'is-sticky': position === 'sticky',
239
+ 'is-static': position === 'static',
240
+ 'is-revealed': this.revealed,
241
+ 'is-hidden': !this.revealed,
242
+ 'is-shrunk': this.shrunk,
243
+ });
244
+ return (h(Host, { key: '3fc823975a0ebcae3cb799bf94e35a289813cd35', class: hostClass, onMouseEnter: () => {
245
+ if (!this.expandOnHover)
246
+ return;
247
+ this.hoverActive = true;
248
+ this.scheduleUpdate(true);
249
+ }, onMouseLeave: () => {
250
+ if (!this.expandOnHover)
251
+ return;
252
+ this.hoverActive = false;
253
+ this.scheduleUpdate(true);
254
+ } }, h("le-component", { key: 'bb8e3c5717112e427fd86a6af4231b33147769e7', component: "le-header" }, h("header", { key: 'da96d6a1eb91a85ea8050870895fcd13bdb28391', class: "header", part: "header", role: "banner", ref: el => (this.headerEl = el) }, h("div", { key: '04386a3d535189012655ee352822812349d386d7', class: "inner", part: "inner" }, h("div", { key: '4b1fc43ca08e981f3dc810a23c14e6ed3200a1de', class: "row", part: "row" }, h("div", { key: '8fad255865a0d2e2662f3ad1030d48f8586ae8c7', class: "start", part: "start" }, h("le-slot", { key: '702eeebfe3133dae44e5268848ce5cac81f3b306', name: "start", label: "Start", description: "Logo / back button / nav", "allowed-components": "le-button,le-text,le-tag,le-box,le-stack" }, h("slot", { key: 'bdd3478abbdcd46143ce8a79d096baab84d12588', name: "start" }))), h("div", { key: 'e5b7d3d42e28d80b2df89a3ab365a29b39544f14', class: "title", part: "title" }, h("le-slot", { key: 'b5a68c8baaf05769ea838ca0482fa1db52b03b3a', name: "title", label: "Title", description: "Header title", type: "text", tag: "span" }, h("span", { key: '91763f968886e052a637959253863e583da51b76', class: "title-slot", part: "title" }, h("slot", { key: '060be7c91cca50c26db56cd15ad5d38962c8003f', name: "title" })))), h("div", { key: '938222741cbe15e531ff355185c4f599a3d26147', class: "end", part: "end" }, h("le-slot", { key: '8e1c91426dc87f1bdcb98d33b7da4cc6988781cf', name: "end", label: "End", description: "Actions", "allowed-components": "le-button,le-text,le-tag,le-box,le-stack" }, h("slot", { key: '67e4bda7e7c754dda5a7d9505a9b451f2487f47b', name: "end" })))), h("div", { key: '84dfedd30ec9bd49b668b2e1676ce3712b9d2faf', class: "secondary", part: "secondary" }, h("le-slot", { key: '95c56a8e3dbaaf284b03d72f1d9ec01d24c148d2', name: "", label: "Secondary", description: "Secondary row content", "allowed-components": "le-tabs,le-tab-bar,le-select,le-combobox,le-text,le-stack,le-box" }, h("slot", { key: '240df8fc23a9bc4e7aa294c52b229c7abf7c427d' }))))))));
255
+ }
256
+ static get watchers() { return {
257
+ "revealOnScroll": ["onBehaviorPropsChange"],
258
+ "shrinkOffset": ["onBehaviorPropsChange"],
259
+ "fixed": ["onBehaviorPropsChange"],
260
+ "sticky": ["onBehaviorPropsChange"],
261
+ "isStatic": ["onBehaviorPropsChange"]
262
+ }; }
263
+ static get style() { return leHeaderCss; }
264
+ }, [769, "le-header", {
265
+ "isStatic": [516, "static"],
266
+ "sticky": [516],
267
+ "fixed": [516],
268
+ "revealOnScroll": [513, "reveal-on-scroll"],
269
+ "shrinkOffset": [513, "shrink-offset"],
270
+ "expandOnHover": [516, "expand-on-hover"],
271
+ "revealed": [32],
272
+ "shrunk": [32],
273
+ "placeholderHeight": [32],
274
+ "hoverActive": [32]
275
+ }, [[9, "scroll", "onWindowScroll"], [9, "resize", "onWindowResize"]], {
276
+ "revealOnScroll": ["onBehaviorPropsChange"],
277
+ "shrinkOffset": ["onBehaviorPropsChange"],
278
+ "fixed": ["onBehaviorPropsChange"],
279
+ "sticky": ["onBehaviorPropsChange"],
280
+ "isStatic": ["onBehaviorPropsChange"]
281
+ }]);
282
+ function defineCustomElement$1() {
283
+ if (typeof customElements === "undefined") {
284
+ return;
285
+ }
286
+ const components = ["le-header", "le-button", "le-checkbox", "le-component", "le-dropdown-base", "le-popover", "le-popup", "le-select", "le-slot", "le-string-input"];
287
+ components.forEach(tagName => { switch (tagName) {
288
+ case "le-header":
289
+ if (!customElements.get(tagName)) {
290
+ customElements.define(tagName, LeHeader$1);
291
+ }
292
+ break;
293
+ case "le-button":
294
+ if (!customElements.get(tagName)) {
295
+ defineCustomElement$a();
296
+ }
297
+ break;
298
+ case "le-checkbox":
299
+ if (!customElements.get(tagName)) {
300
+ defineCustomElement$9();
301
+ }
302
+ break;
303
+ case "le-component":
304
+ if (!customElements.get(tagName)) {
305
+ defineCustomElement$8();
306
+ }
307
+ break;
308
+ case "le-dropdown-base":
309
+ if (!customElements.get(tagName)) {
310
+ defineCustomElement$7();
311
+ }
312
+ break;
313
+ case "le-popover":
314
+ if (!customElements.get(tagName)) {
315
+ defineCustomElement$6();
316
+ }
317
+ break;
318
+ case "le-popup":
319
+ if (!customElements.get(tagName)) {
320
+ defineCustomElement$5();
321
+ }
322
+ break;
323
+ case "le-select":
324
+ if (!customElements.get(tagName)) {
325
+ defineCustomElement$4();
326
+ }
327
+ break;
328
+ case "le-slot":
329
+ if (!customElements.get(tagName)) {
330
+ defineCustomElement$3();
331
+ }
332
+ break;
333
+ case "le-string-input":
334
+ if (!customElements.get(tagName)) {
335
+ defineCustomElement$2();
336
+ }
337
+ break;
338
+ } });
339
+ }
340
+
341
+ const LeHeader = LeHeader$1;
342
+ const defineCustomElement = defineCustomElement$1;
343
+
344
+ export { LeHeader, defineCustomElement };
345
+ //# sourceMappingURL=le-header.js.map
346
+
347
+ //# sourceMappingURL=le-header.js.map
@@ -0,0 +1 @@
1
+ {"file":"le-header.js","mappings":"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","names":["LeHeader","__stencil_proxyCustomElement"],"sources":["src/components/le-header/le-header.css?tag=le-header&encapsulation=shadow","src/components/le-header/le-header.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n\n /* Container styles */\n /* Offset from the top of the page (e.g. if page has top padding or another fixed bar). */\n --le-header-top-offset: 0;\n\n --le-header-bg: var(--le-color-surface);\n --le-header-max-width: var(--le-header-max-width, auto);\n --le-header-margin: 0 auto;\n --le-header-border: 1px solid var(--le-color-border);\n --le-header-border-radius: 0px;\n --le-header-shadow: var(--le-header-shadow, none);\n\n /* Content styles */\n --le-header-color: var(--le-color-text);\n --le-header-content-max-width: 800px;\n --le-header-padding-x: var(--le-space-md);\n --le-header-padding-y: var(--le-space-sm);\n --le-header-gap: var(--le-space-sm);\n\n --le-header-transition: var(--le-transition-normal);\n --le-header-z: 1000;\n}\n\n.header {\n width: 100%;\n max-width: var(--le-header-max-width);\n margin: var(--le-header-margin);\n background: var(--le-header-bg);\n color: var(--le-header-color);\n border-bottom: var(--le-header-border);\n border-radius: var(--le-header-border-radius);\n box-shadow: var(--le-header-shadow);\n}\n\n:host(.is-fixed) {\n position: fixed;\n top: var(--le-header-top-offset);\n left: 0;\n right: 0;\n z-index: var(--le-header-z);\n}\n\n:host(.is-sticky) {\n position: sticky;\n top: var(--le-header-top-offset);\n z-index: var(--le-header-z);\n}\n\n:host(.is-static) {\n position: relative;\n}\n\n.inner {\n max-width: var(--le-header-content-max-width);\n margin: 0 auto;\n padding: var(--le-header-padding-y) var(--le-header-padding-x);\n}\n\n.row {\n display: grid;\n grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr);\n align-items: center;\n gap: var(--le-header-gap);\n transition:\n height var(--le-header-transition),\n padding var(--le-header-transition),\n transform var(--le-header-transition);\n}\n\n:host(.is-shrunk) .row {\n height: var(--le-header-height-condensed);\n}\n\n/* reveal behavior (sticky only) */\n:host(.is-sticky.is-hidden) {\n transform: translateY(-150%);\n transition: transform var(--le-header-transition);\n}\n\n:host(.is-sticky.is-revealed) {\n transform: translateY(0);\n transition: transform var(--le-header-transition);\n}\n\n.start,\n.title,\n.end {\n min-width: 0;\n display: flex;\n align-items: center;\n}\n\n.start {\n justify-content: flex-start;\n}\n\n.end {\n justify-content: flex-end;\n}\n\n.title {\n justify-content: center;\n text-align: center;\n}\n\n.title-slot ::slotted(*) {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.compact-title {\n font: inherit;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { classnames } from '../../utils/utils';\n\nexport type LeHeaderPosition = 'static' | 'sticky' | 'fixed';\n\n/**\n * A functional page header with scroll-aware behaviors.\n *\n * Features:\n * - Static (default), sticky, or fixed positioning\n * - Optional shrink-on-scroll behavior via `shrink-offset`\n * - Optional reveal-on-scroll-up via `reveal-on-scroll` (sticky only)\n *\n * Slots:\n * - `start`: left side (logo/back button)\n * - `title`: centered/primary title content\n * - `end`: right side actions\n * - default: extra content row (e.g., tabs/search) rendered below main row\n *\n * @slot start - Start area content\n * @slot title - Title content\n * @slot end - End area content\n * @slot - Optional secondary row content\n *\n * @cssprop --le-header-bg - Background (color/gradient)\n * @cssprop --le-header-color - Text color\n * @cssprop --le-header-border - Border (e.g. 1px solid ...)\n * @cssprop --le-header-shadow - Shadow/elevation\n * @cssprop --le-header-max-width - Inner content max width\n * @cssprop --le-header-padding-x - Horizontal padding\n * @cssprop --le-header-padding-y - Vertical padding\n * @cssprop --le-header-gap - Gap between zones\n * @cssprop --le-header-height - Base height (main row)\n * @cssprop --le-header-height-condensed - Condensed height when shrunk\n * @cssprop --le-header-transition - Transition timing\n * @cssprop --le-header-z - Z-index (fixed mode)\n *\n * @csspart header - The header container\n * @csspart inner - Inner max-width container\n * @csspart row - Main row\n * @csspart start - Start zone\n * @csspart title - Title zone\n * @csspart end - End zone\n * @csspart secondary - Secondary row\n *\n * @cmsEditable true\n * @cmsCategory Layout\n */\n@Component({\n tag: 'le-header',\n styleUrl: 'le-header.css',\n shadow: true,\n})\nexport class LeHeader {\n @Element() el: HTMLElement;\n\n /** Force static positioning (default). Ignored if `sticky` or `fixed` are true. */\n @Prop({ attribute: 'static', reflect: true }) isStatic: boolean = false;\n\n /** Sticky positioning (in-flow). Ignored if `fixed` is true. */\n @Prop({ reflect: true }) sticky: boolean = false;\n\n /** Fixed positioning (out-of-flow). Takes precedence over `sticky`/`static`. */\n @Prop({ reflect: true }) fixed: boolean = false;\n\n /**\n * Sticky-only reveal behavior (hide on scroll down, show on scroll up).\n * - missing/false: disabled\n * - true/empty attribute: enabled with default threshold (16)\n * - number (as string): enabled and used as threshold\n */\n @Prop({ attribute: 'reveal-on-scroll', reflect: true }) revealOnScroll?: string;\n\n /**\n * Shrink trigger.\n * - missing/0: disabled\n * - number (px): shrink when scrollY >= that value (but never before header height)\n * - css var name (e.g. --foo): shrink when scrollY >= resolved var value\n * - selector (e.g. .page-title): shrink when that element scrolls out of view above the viewport\n */\n @Prop({ attribute: 'shrink-offset', reflect: true }) shrinkOffset?: string;\n\n /**\n * If true, expand the header when hovered\n */\n @Prop({ attribute: 'expand-on-hover', reflect: true }) expandOnHover: boolean = false;\n\n /** Emits whenever scroll-driven state changes. */\n @Event() leHeaderState: EventEmitter<{\n y: number;\n direction: 'up' | 'down';\n revealed: boolean;\n shrunk: boolean;\n }>;\n\n /** Emits when the header shrinks/expands (only on change). */\n @Event({ bubbles: true, composed: true })\n leHeaderShrinkChange: EventEmitter<{ shrunk: boolean; y: number }>;\n\n /** Emits when the header hides/shows (only on change). */\n @Event({ bubbles: true, composed: true })\n leHeaderVisibilityChange: EventEmitter<{ visible: boolean; y: number }>;\n\n @State() private revealed: boolean = true;\n @State() private shrunk: boolean = false;\n @State() private placeholderHeight: number | null = null;\n @State() private hoverActive: boolean = false;\n\n private disconnectModeObserver?: () => void;\n private rafId: number | null = null;\n private measureRafId: number | null = null;\n private lastY: number = 0;\n private lastEmittedDirection: 'up' | 'down' = 'down';\n private headerEl?: HTMLElement;\n private shrinkSelectorEl?: Element | null;\n\n private setShrunk(next: boolean, y: number) {\n if (next === this.shrunk) return;\n this.shrunk = next;\n this.leHeaderShrinkChange.emit({ shrunk: this.shrunk, y });\n }\n\n componentDidLoad() {\n if (typeof window === 'undefined') return;\n this.lastY = window.scrollY || 0;\n this.scheduleMeasure(true);\n this.scheduleUpdate(true);\n }\n\n disconnectedCallback() {\n this.disconnectModeObserver?.();\n if (this.rafId != null) {\n cancelAnimationFrame(this.rafId);\n this.rafId = null;\n }\n\n if (this.measureRafId != null) {\n cancelAnimationFrame(this.measureRafId);\n this.measureRafId = null;\n }\n }\n\n @Watch('revealOnScroll')\n @Watch('shrinkOffset')\n @Watch('fixed')\n @Watch('sticky')\n @Watch('isStatic')\n protected onBehaviorPropsChange() {\n this.scheduleUpdate(true);\n this.scheduleMeasure(true);\n }\n\n @Listen('scroll', { target: 'window', passive: true })\n protected onWindowScroll() {\n this.scheduleUpdate();\n }\n\n @Listen('resize', { target: 'window', passive: true })\n protected onWindowResize() {\n this.scheduleMeasure(true);\n this.scheduleUpdate(true);\n }\n\n private getPosition(): LeHeaderPosition {\n if (this.fixed) return 'fixed';\n if (this.sticky) return 'sticky';\n return 'static';\n }\n\n private parseRevealThreshold(): number | null {\n // Only applies in sticky mode.\n if (!this.sticky || this.fixed) return null;\n if (this.revealOnScroll == null) return null;\n const raw = String(this.revealOnScroll).trim();\n if (raw === '' || raw === 'true') return 16;\n if (raw === 'false') return null;\n const n = Number(raw);\n return Number.isFinite(n) ? Math.max(0, n) : 16;\n }\n\n private resolveShrinkStartPx(): number | null {\n const raw = (this.shrinkOffset ?? '').trim();\n if (!raw || raw === '0') return null;\n\n // Numeric\n const numeric = Number(raw);\n if (Number.isFinite(numeric)) return Math.max(0, numeric);\n\n // CSS variable name\n if (raw.startsWith('--')) {\n const value = getComputedStyle(document.documentElement).getPropertyValue(raw).trim();\n const v = Number(value.replace('px', '').trim());\n return Number.isFinite(v) ? Math.max(0, v) : null;\n }\n\n // Selector\n try {\n const el = document.querySelector(raw);\n this.shrinkSelectorEl = el;\n return null;\n } catch {\n this.shrinkSelectorEl = null;\n return null;\n }\n }\n\n private scheduleUpdate(force: boolean = false) {\n if (this.rafId != null) {\n if (!force) return;\n cancelAnimationFrame(this.rafId);\n this.rafId = null;\n }\n this.rafId = requestAnimationFrame(() => {\n this.rafId = null;\n this.updateFromScroll();\n });\n }\n\n private scheduleMeasure(force: boolean = false) {\n if (this.measureRafId != null && !force) return;\n this.measureRafId = requestAnimationFrame(() => {\n this.measureRafId = null;\n this.measurePlaceholderHeight();\n });\n }\n\n private measurePlaceholderHeight() {\n // Measure the rendered header height once (and on resize/mode change).\n // This intentionally ignores scroll/shrink behavior; it should reserve the full header height.\n if (!this.headerEl) return;\n\n const next = Math.ceil(this.headerEl.getBoundingClientRect().height);\n if (!Number.isFinite(next) || next <= 0) return;\n\n if (next !== this.placeholderHeight) {\n this.placeholderHeight = next;\n // Publish to global root so placeholders anywhere can read it.\n if (typeof document !== 'undefined') {\n document.documentElement.style.setProperty('--le-header-height', `${next}px`);\n }\n }\n }\n\n private updateFromScroll() {\n const y = typeof window !== 'undefined' ? window.scrollY || 0 : 0;\n const delta = y - this.lastY;\n\n const direction: 'up' | 'down' = delta < 0 ? 'up' : 'down';\n\n // Shrink behavior\n let computedShrunk = false;\n const headerHeight = Math.max(0, this.placeholderHeight ?? 0);\n const shrinkStartPx = typeof window !== 'undefined' ? this.resolveShrinkStartPx() : null;\n\n if (this.shrinkSelectorEl) {\n const rect = (this.shrinkSelectorEl as HTMLElement).getBoundingClientRect();\n computedShrunk = rect.bottom <= 0;\n } else if (shrinkStartPx != null) {\n const effectiveStart = Math.max(shrinkStartPx, headerHeight);\n computedShrunk = y >= effectiveStart;\n }\n\n // Hover override: when enabled and hovered, force expanded.\n const nextShrunk = this.expandOnHover && this.hoverActive ? false : computedShrunk;\n this.setShrunk(nextShrunk, y);\n\n // Reveal-on-scroll (sticky-only)\n const revealThreshold = this.parseRevealThreshold();\n if (revealThreshold != null) {\n // Always show the header near the top of the page.\n const topLock = Math.max(0, this.placeholderHeight ?? 0);\n if (y <= topLock) {\n if (!this.revealed) {\n this.revealed = true;\n this.leHeaderVisibilityChange.emit({ visible: true, y });\n }\n } else if (Math.abs(delta) >= revealThreshold) {\n const nextRevealed = direction === 'up' || y <= 0;\n if (nextRevealed !== this.revealed) {\n this.revealed = nextRevealed;\n this.leHeaderVisibilityChange.emit({ visible: this.revealed, y });\n }\n this.lastEmittedDirection = direction;\n }\n } else {\n if (!this.revealed) {\n this.revealed = true;\n this.leHeaderVisibilityChange.emit({ visible: true, y });\n }\n }\n\n this.lastY = y;\n\n this.leHeaderState.emit({\n y,\n direction: this.lastEmittedDirection,\n revealed: this.revealed,\n shrunk: this.shrunk,\n });\n }\n\n render() {\n const position = this.getPosition();\n\n const hostClass = classnames('le-header', {\n 'header-is-shrunk': this.shrunk,\n 'is-fixed': position === 'fixed',\n 'is-sticky': position === 'sticky',\n 'is-static': position === 'static',\n 'is-revealed': this.revealed,\n 'is-hidden': !this.revealed,\n 'is-shrunk': this.shrunk,\n });\n\n return (\n <Host\n class={hostClass}\n onMouseEnter={() => {\n if (!this.expandOnHover) return;\n this.hoverActive = true;\n this.scheduleUpdate(true);\n }}\n onMouseLeave={() => {\n if (!this.expandOnHover) return;\n this.hoverActive = false;\n this.scheduleUpdate(true);\n }}\n >\n <le-component component=\"le-header\">\n <header\n class=\"header\"\n part=\"header\"\n role=\"banner\"\n ref={el => (this.headerEl = el as HTMLElement)}\n >\n <div class=\"inner\" part=\"inner\">\n <div class=\"row\" part=\"row\">\n <div class=\"start\" part=\"start\">\n <le-slot\n name=\"start\"\n label=\"Start\"\n description=\"Logo / back button / nav\"\n allowed-components=\"le-button,le-text,le-tag,le-box,le-stack\"\n >\n <slot name=\"start\"></slot>\n </le-slot>\n </div>\n\n <div class=\"title\" part=\"title\">\n <le-slot\n name=\"title\"\n label=\"Title\"\n description=\"Header title\"\n type=\"text\"\n tag=\"span\"\n >\n <span class=\"title-slot\" part=\"title\">\n <slot name=\"title\"></slot>\n </span>\n </le-slot>\n </div>\n\n <div class=\"end\" part=\"end\">\n <le-slot\n name=\"end\"\n label=\"End\"\n description=\"Actions\"\n allowed-components=\"le-button,le-text,le-tag,le-box,le-stack\"\n >\n <slot name=\"end\"></slot>\n </le-slot>\n </div>\n </div>\n\n <div class=\"secondary\" part=\"secondary\">\n <le-slot\n name=\"\"\n label=\"Secondary\"\n description=\"Secondary row content\"\n allowed-components=\"le-tabs,le-tab-bar,le-select,le-combobox,le-text,le-stack,le-box\"\n >\n <slot></slot>\n </le-slot>\n </div>\n </div>\n </header>\n </le-component>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface LeMultiselect extends Components.LeMultiselect, HTMLElement {}
4
+ export const LeMultiselect: {
5
+ prototype: LeMultiselect;
6
+ new (): LeMultiselect;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;