le-kit 0.0.3 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/LICENSE +1 -1
  2. package/dist/admin/index.d.ts +25 -0
  3. package/dist/admin/index.js +80 -0
  4. package/dist/cjs/index-CO4npcak.js +1796 -0
  5. package/dist/cjs/index-CO4npcak.js.map +1 -0
  6. package/dist/cjs/index.cjs.js +117 -0
  7. package/dist/cjs/index.cjs.js.map +1 -0
  8. package/dist/cjs/le-box.cjs.entry.js +184 -0
  9. package/dist/cjs/le-box.entry.cjs.js.map +1 -0
  10. package/dist/cjs/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.cjs.js.map +1 -0
  11. package/dist/cjs/le-button_6.cjs.entry.js +1199 -0
  12. package/dist/cjs/le-card.cjs.entry.js +29 -0
  13. package/dist/cjs/le-card.entry.cjs.js.map +1 -0
  14. package/dist/cjs/le-kit.cjs.js +25 -0
  15. package/dist/cjs/le-kit.cjs.js.map +1 -0
  16. package/dist/cjs/le-number-input.cjs.entry.js +202 -0
  17. package/dist/cjs/le-number-input.entry.cjs.js.map +1 -0
  18. package/dist/cjs/le-popup.cjs.entry.js +212 -0
  19. package/dist/cjs/le-popup.entry.cjs.js.map +1 -0
  20. package/dist/cjs/le-round-progress.cjs.entry.js +106 -0
  21. package/dist/cjs/le-round-progress.entry.cjs.js.map +1 -0
  22. package/dist/cjs/le-stack.cjs.entry.js +135 -0
  23. package/dist/cjs/le-stack.entry.cjs.js.map +1 -0
  24. package/dist/cjs/le-text.cjs.entry.js +335 -0
  25. package/dist/cjs/le-text.entry.cjs.js.map +1 -0
  26. package/dist/cjs/le-turntable.cjs.entry.js +139 -0
  27. package/dist/cjs/le-turntable.entry.cjs.js.map +1 -0
  28. package/dist/cjs/loader.cjs.js +13 -0
  29. package/dist/cjs/loader.cjs.js.map +1 -0
  30. package/dist/cjs/utils-BeT0iyCQ.js +152 -0
  31. package/dist/cjs/utils-BeT0iyCQ.js.map +1 -0
  32. package/dist/collection/collection-manifest.json +20 -102
  33. package/dist/collection/components/le-box/le-box.default.css +37 -0
  34. package/dist/collection/components/le-box/le-box.js +614 -0
  35. package/dist/collection/components/le-box/le-box.js.map +1 -0
  36. package/dist/collection/components/le-button/le-button.default.css +263 -0
  37. package/dist/collection/components/le-button/le-button.js +368 -0
  38. package/dist/collection/components/le-button/le-button.js.map +1 -0
  39. package/dist/collection/components/le-card/le-card.default.css +74 -0
  40. package/dist/collection/components/le-card/le-card.js +102 -0
  41. package/dist/collection/components/le-card/le-card.js.map +1 -0
  42. package/dist/collection/components/le-checkbox/le-checkbox.css +93 -0
  43. package/dist/collection/components/le-checkbox/le-checkbox.js +192 -0
  44. package/dist/collection/components/le-checkbox/le-checkbox.js.map +1 -0
  45. package/dist/collection/components/le-component/le-component.css +189 -0
  46. package/dist/collection/components/le-component/le-component.js +359 -0
  47. package/dist/collection/components/le-component/le-component.js.map +1 -0
  48. package/dist/collection/components/le-number-input/le-number-input.css +135 -0
  49. package/dist/collection/components/le-number-input/le-number-input.js +515 -0
  50. package/dist/collection/components/le-number-input/le-number-input.js.map +1 -0
  51. package/dist/collection/components/le-popover/le-popover.css +143 -0
  52. package/dist/collection/components/le-popover/le-popover.js +693 -0
  53. package/dist/collection/components/le-popover/le-popover.js.map +1 -0
  54. package/dist/collection/components/le-popup/le-popup.api.js +101 -0
  55. package/dist/collection/components/le-popup/le-popup.api.js.map +1 -0
  56. package/dist/collection/components/le-popup/le-popup.css +222 -0
  57. package/dist/collection/components/le-popup/le-popup.js +596 -0
  58. package/dist/collection/components/le-popup/le-popup.js.map +1 -0
  59. package/dist/collection/components/le-round-progress/le-round-progress.js +184 -84
  60. package/dist/collection/components/le-round-progress/le-round-progress.js.map +1 -0
  61. package/dist/collection/components/le-slot/le-slot.default.css +222 -0
  62. package/dist/collection/components/le-slot/le-slot.js +636 -0
  63. package/dist/collection/components/le-slot/le-slot.js.map +1 -0
  64. package/dist/collection/components/le-stack/le-stack.default.css +37 -0
  65. package/dist/collection/components/le-stack/le-stack.js +389 -0
  66. package/dist/collection/components/le-stack/le-stack.js.map +1 -0
  67. package/dist/collection/components/le-string-input/le-string-input.css +83 -0
  68. package/dist/collection/components/le-string-input/le-string-input.js +359 -0
  69. package/dist/collection/components/le-string-input/le-string-input.js.map +1 -0
  70. package/dist/collection/components/le-text/le-text.default.css +169 -0
  71. package/dist/collection/components/le-text/le-text.js +475 -0
  72. package/dist/collection/components/le-text/le-text.js.map +1 -0
  73. package/dist/collection/components/le-turntable/le-turntable.js +210 -102
  74. package/dist/collection/components/le-turntable/le-turntable.js.map +1 -0
  75. package/dist/collection/global/app.js +130 -0
  76. package/dist/collection/global/app.js.map +1 -0
  77. package/dist/collection/index-admin.js +27 -0
  78. package/dist/collection/index-admin.js.map +1 -0
  79. package/dist/collection/index-core.js +25 -0
  80. package/dist/collection/index-core.js.map +1 -0
  81. package/dist/collection/index.js +15 -0
  82. package/dist/collection/index.js.map +1 -0
  83. package/dist/collection/types/blocks.js +115 -0
  84. package/dist/collection/types/blocks.js.map +1 -0
  85. package/dist/collection/types/options.js +2 -0
  86. package/dist/collection/types/options.js.map +1 -0
  87. package/dist/collection/utils/utils.js +141 -5
  88. package/dist/collection/utils/utils.js.map +1 -0
  89. package/dist/components/index.d.ts +64 -0
  90. package/dist/components/index.js +127 -0
  91. package/dist/components/index.js.map +1 -0
  92. package/dist/components/le-box.d.ts +11 -0
  93. package/dist/components/le-box.js +256 -0
  94. package/dist/components/le-box.js.map +1 -0
  95. package/dist/components/le-button.d.ts +11 -0
  96. package/dist/components/le-button.js +9 -0
  97. package/dist/components/le-button.js.map +1 -0
  98. package/dist/components/le-button2.js +1408 -0
  99. package/dist/components/le-button2.js.map +1 -0
  100. package/dist/components/le-card.d.ts +11 -0
  101. package/dist/components/le-card.js +83 -0
  102. package/dist/components/le-card.js.map +1 -0
  103. package/dist/components/le-checkbox.d.ts +11 -0
  104. package/dist/components/le-checkbox.js +9 -0
  105. package/dist/components/le-checkbox.js.map +1 -0
  106. package/dist/components/le-component.d.ts +11 -0
  107. package/dist/components/le-component.js +9 -0
  108. package/dist/components/le-component.js.map +1 -0
  109. package/dist/components/le-number-input.d.ts +11 -0
  110. package/dist/components/le-number-input.js +271 -0
  111. package/dist/components/le-number-input.js.map +1 -0
  112. package/dist/components/le-popover.d.ts +11 -0
  113. package/dist/components/le-popover.js +9 -0
  114. package/dist/components/le-popover.js.map +1 -0
  115. package/dist/components/le-popover2.js +382 -0
  116. package/dist/components/le-popover2.js.map +1 -0
  117. package/dist/components/le-popup.d.ts +11 -0
  118. package/dist/components/le-popup.js +279 -0
  119. package/dist/components/le-popup.js.map +1 -0
  120. package/dist/components/le-round-progress.d.ts +11 -0
  121. package/dist/components/le-round-progress.js +135 -0
  122. package/dist/components/le-round-progress.js.map +1 -0
  123. package/dist/components/le-slot.d.ts +11 -0
  124. package/dist/components/le-slot.js +9 -0
  125. package/dist/components/le-slot.js.map +1 -0
  126. package/dist/components/le-stack.d.ts +11 -0
  127. package/dist/components/le-stack.js +198 -0
  128. package/dist/components/le-stack.js.map +1 -0
  129. package/dist/components/le-string-input.d.ts +11 -0
  130. package/dist/components/le-string-input.js +9 -0
  131. package/dist/components/le-string-input.js.map +1 -0
  132. package/dist/components/le-text.d.ts +11 -0
  133. package/dist/components/le-text.js +398 -0
  134. package/dist/components/le-text.js.map +1 -0
  135. package/dist/components/le-turntable.d.ts +11 -0
  136. package/dist/components/le-turntable.js +164 -0
  137. package/dist/components/le-turntable.js.map +1 -0
  138. package/dist/core/components/index.d.ts +64 -0
  139. package/dist/core/components/index.js +127 -0
  140. package/dist/core/components/index.js.map +1 -0
  141. package/dist/core/components/le-box.d.ts +11 -0
  142. package/dist/core/components/le-box.js +246 -0
  143. package/dist/core/components/le-box.js.map +1 -0
  144. package/dist/core/components/le-button.d.ts +11 -0
  145. package/dist/core/components/le-button.js +9 -0
  146. package/dist/core/components/le-button.js.map +1 -0
  147. package/dist/core/components/le-button2.js +1358 -0
  148. package/dist/core/components/le-button2.js.map +1 -0
  149. package/dist/core/components/le-card.d.ts +11 -0
  150. package/dist/core/components/le-card.js +73 -0
  151. package/dist/core/components/le-card.js.map +1 -0
  152. package/dist/core/components/le-checkbox.d.ts +11 -0
  153. package/dist/core/components/le-checkbox.js +9 -0
  154. package/dist/core/components/le-checkbox.js.map +1 -0
  155. package/dist/core/components/le-component.js.map +1 -0
  156. package/dist/core/components/le-number-input.d.ts +11 -0
  157. package/dist/core/components/le-number-input.js +261 -0
  158. package/dist/core/components/le-number-input.js.map +1 -0
  159. package/dist/core/components/le-popover.d.ts +11 -0
  160. package/dist/core/components/le-popover.js +9 -0
  161. package/dist/core/components/le-popover.js.map +1 -0
  162. package/dist/core/components/le-popover2.js +382 -0
  163. package/dist/core/components/le-popover2.js.map +1 -0
  164. package/dist/core/components/le-popup.d.ts +11 -0
  165. package/dist/core/components/le-popup.js +269 -0
  166. package/dist/core/components/le-popup.js.map +1 -0
  167. package/dist/core/components/le-round-progress.d.ts +11 -0
  168. package/dist/core/components/le-round-progress.js +135 -0
  169. package/dist/core/components/le-round-progress.js.map +1 -0
  170. package/dist/core/components/le-slot.js.map +1 -0
  171. package/dist/core/components/le-stack.d.ts +11 -0
  172. package/dist/core/components/le-stack.js +188 -0
  173. package/dist/core/components/le-stack.js.map +1 -0
  174. package/dist/core/components/le-string-input.d.ts +11 -0
  175. package/dist/core/components/le-string-input.js +9 -0
  176. package/dist/core/components/le-string-input.js.map +1 -0
  177. package/dist/core/components/le-text.d.ts +11 -0
  178. package/dist/core/components/le-text.js +388 -0
  179. package/dist/core/components/le-text.js.map +1 -0
  180. package/dist/core/components/le-turntable.d.ts +11 -0
  181. package/dist/core/components/le-turntable.js +164 -0
  182. package/dist/core/components/le-turntable.js.map +1 -0
  183. package/dist/core/index.d.ts +23 -0
  184. package/dist/core/index.js +74 -0
  185. package/dist/core/stencil-runtime.js +1 -0
  186. package/dist/docs.d.ts +443 -0
  187. package/dist/docs.json +5185 -0
  188. package/dist/esm/index-D71TXvJa.js +1781 -0
  189. package/dist/esm/index-D71TXvJa.js.map +1 -0
  190. package/dist/esm/index.js +105 -5
  191. package/dist/esm/index.js.map +1 -0
  192. package/dist/esm/le-box.entry.js +182 -0
  193. package/dist/esm/le-box.entry.js.map +1 -0
  194. package/dist/esm/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.js.map +1 -0
  195. package/dist/esm/le-button_6.entry.js +1192 -0
  196. package/dist/esm/le-card.entry.js +27 -0
  197. package/dist/esm/le-card.entry.js.map +1 -0
  198. package/dist/esm/le-kit.js +21 -0
  199. package/dist/esm/le-kit.js.map +1 -0
  200. package/dist/esm/le-number-input.entry.js +200 -0
  201. package/dist/esm/le-number-input.entry.js.map +1 -0
  202. package/dist/esm/le-popup.entry.js +210 -0
  203. package/dist/esm/le-popup.entry.js.map +1 -0
  204. package/dist/esm/le-round-progress.entry.js +104 -0
  205. package/dist/esm/le-round-progress.entry.js.map +1 -0
  206. package/dist/esm/le-stack.entry.js +133 -0
  207. package/dist/esm/le-stack.entry.js.map +1 -0
  208. package/dist/esm/le-text.entry.js +333 -0
  209. package/dist/esm/le-text.entry.js.map +1 -0
  210. package/dist/esm/le-turntable.entry.js +137 -0
  211. package/dist/esm/le-turntable.entry.js.map +1 -0
  212. package/dist/esm/loader.js +11 -0
  213. package/dist/esm/loader.js.map +1 -0
  214. package/dist/esm/utils-CJLZrrdC.js +146 -0
  215. package/dist/esm/utils-CJLZrrdC.js.map +1 -0
  216. package/dist/index.cjs.js +1 -0
  217. package/dist/index.js +1 -2
  218. package/dist/le-kit/index-D21JjI31.js.map +1 -0
  219. package/dist/le-kit/index.esm.js +2 -0
  220. package/dist/le-kit/index.esm.js.map +1 -0
  221. package/dist/le-kit/le-box.entry.esm.js.map +1 -0
  222. package/dist/le-kit/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.esm.js.map +1 -0
  223. package/dist/le-kit/le-card.entry.esm.js.map +1 -0
  224. package/dist/le-kit/le-kit.css +1 -0
  225. package/dist/le-kit/le-kit.esm.js +2 -0
  226. package/dist/le-kit/le-kit.esm.js.map +1 -0
  227. package/dist/le-kit/le-number-input.entry.esm.js.map +1 -0
  228. package/dist/le-kit/le-popup.entry.esm.js.map +1 -0
  229. package/dist/le-kit/le-round-progress.entry.esm.js.map +1 -0
  230. package/dist/le-kit/le-stack.entry.esm.js.map +1 -0
  231. package/dist/le-kit/le-text.entry.esm.js.map +1 -0
  232. package/dist/le-kit/le-turntable.entry.esm.js.map +1 -0
  233. package/dist/le-kit/loader.esm.js.map +1 -0
  234. package/dist/le-kit/p-024a764e.entry.js +2 -0
  235. package/dist/le-kit/p-024a764e.entry.js.map +1 -0
  236. package/dist/le-kit/p-073cf0b9.entry.js +2 -0
  237. package/dist/le-kit/p-073cf0b9.entry.js.map +1 -0
  238. package/dist/le-kit/p-0955b105.entry.js +2 -0
  239. package/dist/le-kit/p-0955b105.entry.js.map +1 -0
  240. package/dist/le-kit/p-18d79ee2.entry.js +2 -0
  241. package/dist/le-kit/p-18d79ee2.entry.js.map +1 -0
  242. package/dist/le-kit/p-4b1d3b6d.entry.js +2 -0
  243. package/dist/le-kit/p-4b1d3b6d.entry.js.map +1 -0
  244. package/dist/le-kit/p-79d179bd.entry.js +2 -0
  245. package/dist/le-kit/p-79d179bd.entry.js.map +1 -0
  246. package/dist/le-kit/p-D71TXvJa.js +3 -0
  247. package/dist/le-kit/p-D71TXvJa.js.map +1 -0
  248. package/dist/le-kit/p-c8a9288e.entry.js +2 -0
  249. package/dist/le-kit/p-c8a9288e.entry.js.map +1 -0
  250. package/dist/le-kit/p-cfc35bd3.entry.js +2 -0
  251. package/dist/le-kit/p-cfc35bd3.entry.js.map +1 -0
  252. package/dist/le-kit/p-d04da1f5.entry.js +2 -0
  253. package/dist/le-kit/p-d04da1f5.entry.js.map +1 -0
  254. package/dist/le-kit/p-qIai5-eB.js +2 -0
  255. package/dist/le-kit/p-qIai5-eB.js.map +1 -0
  256. package/dist/le-kit/utils-apol-Xc_.js.map +1 -0
  257. package/dist/themes/base.css +89 -0
  258. package/dist/themes/dark.css +100 -0
  259. package/dist/themes/default.css +108 -0
  260. package/dist/themes/gradient.css +100 -0
  261. package/dist/themes/index.css +413 -0
  262. package/dist/themes/minimal.css +100 -0
  263. package/dist/themes/warm.css +100 -0
  264. package/dist/types/components/le-box/le-box.d.ts +111 -0
  265. package/dist/types/components/le-button/le-button.d.ts +78 -0
  266. package/dist/types/components/le-card/le-card.d.ts +37 -0
  267. package/dist/types/components/le-checkbox/le-checkbox.d.ts +46 -0
  268. package/dist/types/components/le-component/le-component.d.ts +115 -0
  269. package/dist/types/components/le-number-input/le-number-input.d.ts +106 -0
  270. package/dist/types/components/le-popover/le-popover.d.ts +109 -0
  271. package/dist/types/components/le-popup/le-popup.api.d.ts +73 -0
  272. package/dist/types/components/le-popup/le-popup.d.ts +122 -0
  273. package/dist/types/components/le-round-progress/le-round-progress.d.ts +2 -3
  274. package/dist/types/components/le-slot/le-slot.d.ts +149 -0
  275. package/dist/types/components/le-stack/le-stack.d.ts +73 -0
  276. package/dist/types/components/le-string-input/le-string-input.d.ts +83 -0
  277. package/dist/types/components/le-text/le-text.d.ts +141 -0
  278. package/dist/types/components/le-turntable/le-turntable.d.ts +1 -2
  279. package/dist/types/components.d.ts +2030 -62
  280. package/dist/types/global/app.d.ts +40 -0
  281. package/dist/types/index-admin.d.ts +29 -0
  282. package/dist/types/index-core.d.ts +27 -0
  283. package/dist/types/index.d.ts +15 -0
  284. package/dist/types/stencil-public-runtime.d.ts +1756 -0
  285. package/dist/types/types/blocks.d.ts +136 -0
  286. package/dist/types/types/options.d.ts +124 -0
  287. package/dist/types/utils/utils.d.ts +54 -1
  288. package/loader/cdn.js +1 -0
  289. package/loader/index.cjs.js +1 -0
  290. package/loader/index.d.ts +24 -0
  291. package/loader/index.es2017.js +1 -0
  292. package/loader/index.js +2 -0
  293. package/package.json +64 -13
  294. package/readme.md +180 -46
  295. package/dist/cjs/es5/build/jqoqzji9.entry.js +0 -6
  296. package/dist/cjs/es5/build/jqoqzji9.sc.entry.js +0 -6
  297. package/dist/cjs/es5/build/novg0vs0.entry.js +0 -9
  298. package/dist/cjs/es5/build/novg0vs0.sc.entry.js +0 -9
  299. package/dist/cjs/es5/index.js +0 -1
  300. package/dist/cjs/es5/le-kit.components.js +0 -4
  301. package/dist/cjs/es5/le-kit.core.js +0 -459
  302. package/dist/cjs/es5/le-kit.define.js +0 -9
  303. package/dist/cjs/es5/polyfills/array.js +0 -63
  304. package/dist/cjs/es5/polyfills/css-shim.js +0 -178
  305. package/dist/cjs/es5/polyfills/dom.js +0 -125
  306. package/dist/cjs/es5/polyfills/fetch.js +0 -186
  307. package/dist/cjs/es5/polyfills/map.js +0 -54
  308. package/dist/cjs/es5/polyfills/object.js +0 -27
  309. package/dist/cjs/es5/polyfills/promise.js +0 -80
  310. package/dist/cjs/es5/polyfills/string.js +0 -15
  311. package/dist/cjs/es5/polyfills/tslib.js +0 -244
  312. package/dist/cjs/es5/polyfills/url.js +0 -68
  313. package/dist/collection/interface.js +0 -0
  314. package/dist/esm/es2017/build/jqoqzji9.entry.js +0 -88
  315. package/dist/esm/es2017/build/jqoqzji9.sc.entry.js +0 -88
  316. package/dist/esm/es2017/build/novg0vs0.entry.js +0 -106
  317. package/dist/esm/es2017/build/novg0vs0.sc.entry.js +0 -106
  318. package/dist/esm/es2017/index.js +0 -1
  319. package/dist/esm/es2017/le-kit.components.js +0 -2
  320. package/dist/esm/es2017/le-kit.core.js +0 -5
  321. package/dist/esm/es2017/le-kit.define.js +0 -9
  322. package/dist/esm/es5/build/jqoqzji9.entry.js +0 -1
  323. package/dist/esm/es5/build/jqoqzji9.sc.entry.js +0 -1
  324. package/dist/esm/es5/build/novg0vs0.entry.js +0 -1
  325. package/dist/esm/es5/build/novg0vs0.sc.entry.js +0 -1
  326. package/dist/esm/es5/index.js +0 -1
  327. package/dist/esm/es5/le-kit.components.js +0 -2
  328. package/dist/esm/es5/le-kit.core.js +0 -5
  329. package/dist/esm/es5/le-kit.define.js +0 -9
  330. package/dist/esm/es5/polyfills/array.js +0 -23
  331. package/dist/esm/es5/polyfills/css-shim.js +0 -8
  332. package/dist/esm/es5/polyfills/dom.js +0 -22
  333. package/dist/esm/es5/polyfills/fetch.js +0 -20
  334. package/dist/esm/es5/polyfills/map.js +0 -7
  335. package/dist/esm/es5/polyfills/object.js +0 -20
  336. package/dist/esm/es5/polyfills/promise.js +0 -8
  337. package/dist/esm/es5/polyfills/string.js +0 -12
  338. package/dist/esm/es5/polyfills/tslib.js +0 -160
  339. package/dist/esm/es5/polyfills/url.js +0 -7
  340. package/dist/le-kit/jqoqzji9.entry.js +0 -1
  341. package/dist/le-kit/jqoqzji9.es5.entry.js +0 -1
  342. package/dist/le-kit/jqoqzji9.sc.entry.js +0 -1
  343. package/dist/le-kit/jqoqzji9.sc.es5.entry.js +0 -1
  344. package/dist/le-kit/le-kit.lfyfa4jd.js +0 -123
  345. package/dist/le-kit/le-kit.rzqb8hph.js +0 -4
  346. package/dist/le-kit/novg0vs0.entry.js +0 -1
  347. package/dist/le-kit/novg0vs0.es5.entry.js +0 -1
  348. package/dist/le-kit/novg0vs0.sc.entry.js +0 -1
  349. package/dist/le-kit/novg0vs0.sc.es5.entry.js +0 -1
  350. package/dist/le-kit.js +0 -1
  351. package/dist/loader/index.cjs.js +0 -1
  352. package/dist/loader/index.d.ts +0 -1
  353. package/dist/loader/index.es2017.js +0 -1
  354. package/dist/loader/index.js +0 -1
  355. package/dist/loader/package.json +0 -9
  356. package/dist/types/stencil.core.d.ts +0 -1203
  357. package/dist/web-components.json +0 -41
@@ -0,0 +1,261 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
+ import { e as classnames, f as defineCustomElement$2, h as defineCustomElement$3, j as defineCustomElement$5, k as defineCustomElement$6, l as defineCustomElement$7 } from './le-button2.js';
3
+ import { d as defineCustomElement$4 } from './le-popover2.js';
4
+
5
+ const leNumberInputCss = ":host{display:block;--le-input-bg:var(--le-color-surface, #ffffff);--le-input-color:var(--le-color-text-primary, #333333);--le-input-border:var(--le-border-width, 2px) solid var(--le-color-border-input, #007bff);--le-input-radius:var(--le-radius-sm, 4px);--le-input-padding:2px 6px;--le-input-height:1.5rem;--le-input-label-color:var(--le-color-text-primary, #333333);--le-input-desc-color:var(--le-color-text-secondary, #666666);--le-input-placeholder-color:#999999;--le-input-border-error:2px solid var(--le-color-danger, #dc3545);--le-input-error-color:var(--le-color-danger, #dc3545)}.le-input-wrapper{display:flex;flex-direction:column;gap:2px}.le-input-label{display:block;font-size:0.9em;font-weight:500;color:var(--le-input-label-color);margin-bottom:2px}.le-input-container{position:relative;display:flex;align-items:center;background:var(--le-input-bg);border:var(--le-input-border);border-radius:var(--le-input-radius);transition:border-color 0.2s}.le-input-container:focus-within{outline:2px solid var(--le-color-focus);outline-offset:2px}.le-input-container.has-error{border:var(--le-input-border-error)}:host([disabled]) .le-input-container{opacity:0.6;background-color:rgba(0,0,0,0.05);cursor:not-allowed}input{flex:1;width:100%;height:calc(var(--le-input-height) - 2px);padding:var(--le-input-padding);border:none;background:transparent;color:var(--le-input-color);font-family:inherit;font-size:inherit;outline:none;text-align:right;-moz-appearance:textfield;}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input::placeholder{color:var(--le-input-placeholder-color)}.icon-start,.icon-end{display:flex;align-items:center;justify-content:center;padding:0 8px;color:var(--le-input-desc-color)}.le-input-controls{display:flex;flex-direction:column;border-left:1px solid var(--le-color-border, #cccccc);height:100%}.le-input-control-btn{--le-button-border-radius:0;--le-button-padding-x:0;--le-button-padding-y:0;--le-button-small-font-size:9.5px;--le-button-small-padding:0 0.2rem;--le-button-icon-aspect-ratio:2;display:flex;align-items:center;justify-content:center;height:50%;cursor:pointer;background:none;border:none;color:var(--le-input-desc-color);font-size:10px;line-height:1}.le-input-control-btn:hover{background-color:rgba(0,0,0,0.05);color:var(--le-color-primary, #007bff)}.le-input-control-btn:active{background-color:rgba(0,0,0,0.1)}.le-input-description{font-size:0.85em;color:var(--le-input-desc-color);margin-top:2px}.le-input-error{font-size:0.85em;color:var(--le-input-error-color);margin-top:2px}";
6
+
7
+ const LeNumberInput$1 = /*@__PURE__*/ proxyCustomElement(class LeNumberInput extends HTMLElement {
8
+ constructor(registerHost) {
9
+ super();
10
+ if (registerHost !== false) {
11
+ this.__registerHost();
12
+ }
13
+ this.__attachShadow();
14
+ this.leChange = createEvent(this, "leChange", 7);
15
+ this.leInput = createEvent(this, "leInput", 7);
16
+ }
17
+ get el() { return this; }
18
+ /**
19
+ * The value of the input
20
+ */
21
+ value;
22
+ /**
23
+ * The name of the input
24
+ */
25
+ name;
26
+ /**
27
+ * Label for the input
28
+ */
29
+ label;
30
+ /**
31
+ * Placeholder text
32
+ */
33
+ placeholder;
34
+ /**
35
+ * Minimum allowed value
36
+ */
37
+ min;
38
+ /**
39
+ * Maximum allowed value
40
+ */
41
+ max;
42
+ /**
43
+ * Step value for increment/decrement
44
+ */
45
+ step = 1;
46
+ /**
47
+ * Whether the input is required
48
+ */
49
+ required = false;
50
+ /**
51
+ * Whether the input is disabled
52
+ */
53
+ disabled = false;
54
+ /**
55
+ * Whether the input is read-only
56
+ */
57
+ readonly = false;
58
+ /**
59
+ * Icon for the start icon
60
+ */
61
+ iconStart;
62
+ /**
63
+ * Whether to show the spinner controls
64
+ */
65
+ showSpinners = true;
66
+ /**
67
+ * External ID for linking with external systems
68
+ */
69
+ externalId;
70
+ /**
71
+ * Internal validation state
72
+ */
73
+ isValid = true;
74
+ validationMessage = '';
75
+ /**
76
+ * Emitted when the value changes (on blur or Enter)
77
+ */
78
+ leChange;
79
+ /**
80
+ * Emitted when the input value changes (on keystroke/spin)
81
+ */
82
+ leInput;
83
+ valueChanged() {
84
+ this.validate();
85
+ }
86
+ validate() {
87
+ if (this.required && (this.value === undefined || this.value === null || isNaN(this.value))) {
88
+ this.isValid = false;
89
+ this.validationMessage = 'This field is required';
90
+ return;
91
+ }
92
+ if (this.value !== undefined && this.value !== null && !isNaN(this.value)) {
93
+ if (this.min !== undefined && this.value < this.min) {
94
+ this.isValid = false;
95
+ this.validationMessage = `Value must be at least ${this.min}`;
96
+ return;
97
+ }
98
+ if (this.max !== undefined && this.value > this.max) {
99
+ this.isValid = false;
100
+ this.validationMessage = `Value must be at most ${this.max}`;
101
+ return;
102
+ }
103
+ }
104
+ this.isValid = true;
105
+ this.validationMessage = '';
106
+ }
107
+ emitChange() {
108
+ this.leChange.emit({
109
+ value: this.value,
110
+ name: this.name,
111
+ externalId: this.externalId,
112
+ isValid: this.isValid
113
+ });
114
+ }
115
+ emitInput() {
116
+ this.leInput.emit({
117
+ value: this.value,
118
+ name: this.name,
119
+ externalId: this.externalId,
120
+ isValid: this.isValid
121
+ });
122
+ }
123
+ updateValue(newValue) {
124
+ if (this.disabled || this.readonly)
125
+ return;
126
+ // Round to avoid floating point errors
127
+ const precision = this.step.toString().split('.')[1]?.length || 0;
128
+ const rounded = parseFloat(newValue.toFixed(precision));
129
+ this.value = rounded;
130
+ this.validate();
131
+ this.emitInput();
132
+ }
133
+ handleInput = (ev) => {
134
+ const input = ev.target;
135
+ const val = parseFloat(input.value);
136
+ if (input.value === '') {
137
+ this.value = undefined;
138
+ }
139
+ else if (!isNaN(val)) {
140
+ this.value = val;
141
+ }
142
+ this.validate();
143
+ this.emitInput();
144
+ };
145
+ handleChange = () => {
146
+ this.validate();
147
+ this.emitChange();
148
+ };
149
+ handleKeyDown = (ev) => {
150
+ if (this.disabled || this.readonly)
151
+ return;
152
+ let multiplier = 1;
153
+ if (ev.shiftKey)
154
+ multiplier = 10;
155
+ if (ev.altKey)
156
+ multiplier = 0.1;
157
+ const current = this.value || 0;
158
+ if (ev.key === 'ArrowUp') {
159
+ ev.preventDefault();
160
+ this.updateValue(current + (this.step * multiplier));
161
+ }
162
+ else if (ev.key === 'ArrowDown') {
163
+ ev.preventDefault();
164
+ this.updateValue(current - (this.step * multiplier));
165
+ }
166
+ };
167
+ handleWheel = (ev) => {
168
+ if (this.disabled || this.readonly)
169
+ return;
170
+ // Only handle if input is focused to prevent accidental scrolling
171
+ if (document.activeElement !== ev.target)
172
+ return;
173
+ ev.preventDefault();
174
+ const current = this.value || 0;
175
+ if (ev.deltaY < 0) {
176
+ this.updateValue(current + this.step);
177
+ }
178
+ else {
179
+ this.updateValue(current - this.step);
180
+ }
181
+ };
182
+ increment = (ev) => {
183
+ ev.preventDefault(); // Prevent focus loss
184
+ const current = this.value || 0;
185
+ this.updateValue(current + this.step);
186
+ // Trigger change event for buttons as they are "final" actions usually
187
+ this.emitChange();
188
+ };
189
+ decrement = (ev) => {
190
+ ev.preventDefault();
191
+ const current = this.value || 0;
192
+ this.updateValue(current - this.step);
193
+ this.emitChange();
194
+ };
195
+ render() {
196
+ return (h(Host, { class: classnames({ 'disabled': this.disabled }) }, h("div", { key: 'e4e0ad02f89b2eb8dd7649d2f2e70bc821cb2774', class: "le-input-wrapper" }, this.label && (h("label", { key: '30ad120d5571018ea9891340b5406f6939a1fe0e', class: "le-input-label", htmlFor: this.name }, this.label)), h("div", { key: '27b835ad1559a1ea4366c4b7c2b31d412e8b8ef7', class: classnames('le-input-container', { 'has-error': !this.isValid }) }, this.iconStart && (h("span", { key: '0164cbb985b900b4b3136061a2609987a2c06e9f', class: "icon-start" }, this.iconStart)), h("input", { key: '6d68b764f45d61b7dd4ffe435bd9e9da04c4d87a', id: this.name, type: "number", name: this.name, placeholder: this.placeholder, min: this.min, max: this.max, step: this.step, value: this.value, disabled: this.disabled, readOnly: this.readonly, required: this.required, onInput: this.handleInput, onChange: this.handleChange, onKeyDown: this.handleKeyDown, onWheel: this.handleWheel }), this.showSpinners && (h("div", { key: '7ed04341c0c27a7d37afd4baf9698ea7776702f6', class: "le-input-controls" }, h("le-button", { key: '80c96f7cbee40efd2b79f33e8401a13f187092a6', mode: "default", variant: "clear", size: "small", "icon-only": true, class: "le-input-control-btn", onClick: this.increment, disabled: this.disabled || this.readonly || (this.max !== undefined && this.value >= this.max), tabindex: "-1" }, h("span", { key: 'd56b463073ce8174c668138179f1bbc16c700d9f', slot: "icon-only" }, "\u2191")), h("le-button", { key: '74e70e65d6668cc1cee7abfaf464a60a29efa3f9', mode: "default", variant: "clear", size: "small", "icon-only": true, class: "le-input-control-btn", onClick: this.decrement, disabled: this.disabled || this.readonly || (this.min !== undefined && this.value <= this.min), tabindex: "-1" }, h("span", { key: 'e2330cdf9f431b2c9f0953e42f71e897879d10fe', slot: "icon-only" }, "\u2193"))))), !this.isValid && h("div", { key: 'ba9bb8af8c4814b4316c1f0947c50a99fd24634c', class: "le-input-error" }, this.validationMessage), h("div", { key: '30e43ac088f995fe24ab47678ca70fe771b6f1ab', class: "le-input-description" }, h("slot", { key: 'def94a79248d1887c5416ff95b2c625df85c68d0', name: "description" })))));
197
+ }
198
+ static get watchers() { return {
199
+ "value": ["valueChanged"]
200
+ }; }
201
+ static get style() { return leNumberInputCss; }
202
+ }, [769, "le-number-input", {
203
+ "value": [1538],
204
+ "name": [1],
205
+ "label": [1],
206
+ "placeholder": [1],
207
+ "min": [2],
208
+ "max": [2],
209
+ "step": [2],
210
+ "required": [4],
211
+ "disabled": [4],
212
+ "readonly": [4],
213
+ "iconStart": [1, "icon-start"],
214
+ "showSpinners": [4, "show-spinners"],
215
+ "externalId": [1, "external-id"],
216
+ "isValid": [32],
217
+ "validationMessage": [32]
218
+ }, undefined, {
219
+ "value": ["valueChanged"]
220
+ }]);
221
+ function defineCustomElement$1() {
222
+ if (typeof customElements === "undefined") {
223
+ return;
224
+ }
225
+ const components = ["le-number-input", "le-button", "le-checkbox", "le-popover", "le-string-input"];
226
+ components.forEach(tagName => { switch (tagName) {
227
+ case "le-number-input":
228
+ if (!customElements.get(tagName)) {
229
+ customElements.define(tagName, LeNumberInput$1);
230
+ }
231
+ break;
232
+ case "le-button":
233
+ if (!customElements.get(tagName)) {
234
+ defineCustomElement$7();
235
+ }
236
+ break;
237
+ case "le-checkbox":
238
+ if (!customElements.get(tagName)) {
239
+ defineCustomElement$6();
240
+ }
241
+ break;
242
+ case "le-popover":
243
+ if (!customElements.get(tagName)) {
244
+ defineCustomElement$4();
245
+ }
246
+ break;
247
+ case "le-string-input":
248
+ if (!customElements.get(tagName)) {
249
+ defineCustomElement$2();
250
+ }
251
+ break;
252
+ } });
253
+ }
254
+
255
+ const LeNumberInput = LeNumberInput$1;
256
+ const defineCustomElement = defineCustomElement$1;
257
+
258
+ export { LeNumberInput, defineCustomElement };
259
+ //# sourceMappingURL=le-number-input.js.map
260
+
261
+ //# sourceMappingURL=le-number-input.js.map
@@ -0,0 +1 @@
1
+ {"file":"le-number-input.js","mappings":"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","names":["LeNumberInput","__stencil_proxyCustomElement"],"sources":["src/components/le-number-input/le-number-input.css?tag=le-number-input&encapsulation=shadow","src/components/le-number-input/le-number-input.tsx"],"sourcesContent":[":host {\n display: block;\n --le-input-bg: var(--le-color-surface, #ffffff);\n --le-input-color: var(--le-color-text-primary, #333333);\n --le-input-border: var(--le-border-width, 2px) solid var(--le-color-border-input, #007bff);\n --le-input-radius: var(--le-radius-sm, 4px);\n --le-input-padding: 2px 6px;\n --le-input-height: 1.5rem;\n --le-input-label-color: var(--le-color-text-primary, #333333);\n --le-input-desc-color: var(--le-color-text-secondary, #666666);\n --le-input-placeholder-color: #999999;\n --le-input-border-error: 2px solid var(--le-color-danger, #dc3545);\n --le-input-error-color: var(--le-color-danger, #dc3545);\n}\n\n.le-input-wrapper {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.le-input-label {\n display: block;\n font-size: 0.9em;\n font-weight: 500;\n color: var(--le-input-label-color);\n margin-bottom: 2px;\n}\n\n.le-input-container {\n position: relative;\n display: flex;\n align-items: center;\n background: var(--le-input-bg);\n border: var(--le-input-border);\n border-radius: var(--le-input-radius);\n transition: border-color 0.2s;\n}\n\n.le-input-container:focus-within {\n outline: 2px solid var(--le-color-focus);\n outline-offset: 2px;\n}\n\n.le-input-container.has-error {\n border: var(--le-input-border-error);\n}\n\n:host([disabled]) .le-input-container {\n opacity: 0.6;\n background-color: rgba(0,0,0,0.05);\n cursor: not-allowed;\n}\n\ninput {\n flex: 1;\n width: 100%;\n height: calc(var(--le-input-height) - 2px);\n padding: var(--le-input-padding);\n border: none;\n background: transparent;\n color: var(--le-input-color);\n font-family: inherit;\n font-size: inherit;\n outline: none;\n text-align: right; /* Aligned to end */\n -moz-appearance: textfield; /* Remove default spinners in Firefox */\n}\n\n/* Remove default spinners in Chrome/Safari/Edge */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\ninput::placeholder {\n color: var(--le-input-placeholder-color);\n}\n\n.icon-start, .icon-end {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 8px;\n color: var(--le-input-desc-color);\n}\n\n.le-input-controls {\n display: flex;\n flex-direction: column;\n border-left: 1px solid var(--le-color-border, #cccccc);\n height: 100%;\n}\n\n.le-input-control-btn {\n --le-button-border-radius: 0;\n --le-button-padding-x: 0;\n --le-button-padding-y: 0;\n --le-button-small-font-size: 9.5px;\n --le-button-small-padding: 0 0.2rem;\n --le-button-icon-aspect-ratio: 2;\n\n display: flex;\n align-items: center;\n justify-content: center;\n height: 50%;\n cursor: pointer;\n background: none;\n border: none;\n color: var(--le-input-desc-color);\n font-size: 10px;\n line-height: 1;\n}\n\n.le-input-control-btn:hover {\n background-color: rgba(0,0,0,0.05);\n color: var(--le-color-primary, #007bff);\n}\n\n.le-input-control-btn:active {\n background-color: rgba(0,0,0,0.1);\n}\n\n.le-input-description {\n font-size: 0.85em;\n color: var(--le-input-desc-color);\n margin-top: 2px;\n}\n\n.le-input-error {\n font-size: 0.85em;\n color: var(--le-input-error-color);\n margin-top: 2px;\n}\n","import { Component, Prop, Event, EventEmitter, State, h, Element, Watch } from '@stencil/core';\nimport { classnames } from '../../utils/utils';\n\n/**\n * A number input component with validation, keyboard controls, and custom spinners.\n *\n * @slot - The label text for the input\n * @slot description - Additional description text displayed below the input\n * @slot icon-start - Icon to display at the start of the input\n *\n * @cssprop --le-input-bg - Input background color\n * @cssprop --le-input-color - Input text color\n * @cssprop --le-input-border - Input border style\n * @cssprop --le-input-border-focus - Input border style when focused\n * @cssprop --le-input-border-error - Input border style when invalid\n * @cssprop --le-input-radius - Input border radius\n * @cssprop --le-input-padding - Input padding\n */\n@Component({\n tag: 'le-number-input',\n styleUrl: 'le-number-input.css',\n shadow: true,\n})\nexport class LeNumberInput {\n @Element() el: HTMLElement;\n\n /**\n * The value of the input\n */\n @Prop({ mutable: true, reflect: true }) value: number;\n\n /**\n * The name of the input\n */\n @Prop() name: string;\n\n /**\n * Label for the input\n */\n @Prop() label: string;\n\n /**\n * Placeholder text\n */\n @Prop() placeholder: string;\n\n /**\n * Minimum allowed value\n */\n @Prop() min?: number;\n\n /**\n * Maximum allowed value\n */\n @Prop() max?: number;\n\n /**\n * Step value for increment/decrement\n */\n @Prop() step: number = 1;\n\n /**\n * Whether the input is required\n */\n @Prop() required: boolean = false;\n\n /**\n * Whether the input is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Whether the input is read-only\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Icon for the start icon\n */\n @Prop() iconStart?: string;\n\n /**\n * Whether to show the spinner controls\n */\n @Prop() showSpinners: boolean = true;\n\n /**\n * External ID for linking with external systems\n */\n @Prop() externalId: string;\n\n /**\n * Internal validation state\n */\n @State() private isValid: boolean = true;\n @State() private validationMessage: string = '';\n\n /**\n * Emitted when the value changes (on blur or Enter)\n */\n @Event() leChange: EventEmitter<{ value: number; name: string; externalId: string; isValid: boolean }>;\n\n /**\n * Emitted when the input value changes (on keystroke/spin)\n */\n @Event() leInput: EventEmitter<{ value: number; name: string; externalId: string; isValid: boolean }>;\n\n @Watch('value')\n valueChanged() {\n this.validate();\n }\n\n private validate() {\n if (this.required && (this.value === undefined || this.value === null || isNaN(this.value))) {\n this.isValid = false;\n this.validationMessage = 'This field is required';\n return;\n }\n\n if (this.value !== undefined && this.value !== null && !isNaN(this.value)) {\n if (this.min !== undefined && this.value < this.min) {\n this.isValid = false;\n this.validationMessage = `Value must be at least ${this.min}`;\n return;\n }\n if (this.max !== undefined && this.value > this.max) {\n this.isValid = false;\n this.validationMessage = `Value must be at most ${this.max}`;\n return;\n }\n }\n\n this.isValid = true;\n this.validationMessage = '';\n }\n\n private emitChange() {\n this.leChange.emit({\n value: this.value,\n name: this.name,\n externalId: this.externalId,\n isValid: this.isValid\n });\n }\n\n private emitInput() {\n this.leInput.emit({\n value: this.value,\n name: this.name,\n externalId: this.externalId,\n isValid: this.isValid\n });\n }\n\n private updateValue(newValue: number) {\n if (this.disabled || this.readonly) return;\n \n // Round to avoid floating point errors\n const precision = this.step.toString().split('.')[1]?.length || 0;\n const rounded = parseFloat(newValue.toFixed(precision));\n \n this.value = rounded;\n this.validate();\n this.emitInput();\n }\n\n private handleInput = (ev: Event) => {\n const input = ev.target as HTMLInputElement;\n const val = parseFloat(input.value);\n \n if (input.value === '') {\n this.value = undefined;\n } else if (!isNaN(val)) {\n this.value = val;\n }\n \n this.validate();\n this.emitInput();\n };\n\n private handleChange = () => {\n this.validate();\n this.emitChange();\n };\n\n private handleKeyDown = (ev: KeyboardEvent) => {\n if (this.disabled || this.readonly) return;\n\n let multiplier = 1;\n if (ev.shiftKey) multiplier = 10;\n if (ev.altKey) multiplier = 0.1;\n\n const current = this.value || 0;\n\n if (ev.key === 'ArrowUp') {\n ev.preventDefault();\n this.updateValue(current + (this.step * multiplier));\n } else if (ev.key === 'ArrowDown') {\n ev.preventDefault();\n this.updateValue(current - (this.step * multiplier));\n }\n };\n\n private handleWheel = (ev: WheelEvent) => {\n if (this.disabled || this.readonly) return;\n // Only handle if input is focused to prevent accidental scrolling\n if (document.activeElement !== ev.target) return;\n\n ev.preventDefault();\n const current = this.value || 0;\n \n if (ev.deltaY < 0) {\n this.updateValue(current + this.step);\n } else {\n this.updateValue(current - this.step);\n }\n };\n\n private increment = (ev: Event) => {\n ev.preventDefault(); // Prevent focus loss\n const current = this.value || 0;\n this.updateValue(current + this.step);\n // Trigger change event for buttons as they are \"final\" actions usually\n this.emitChange();\n };\n\n private decrement = (ev: Event) => {\n ev.preventDefault();\n const current = this.value || 0;\n this.updateValue(current - this.step);\n this.emitChange();\n };\n\n render() {\n return (\n <le-component component=\"le-number-input\" hostClass={classnames({ 'disabled': this.disabled })}>\n <div class=\"le-input-wrapper\">\n {this.label && (\n <label class=\"le-input-label\" htmlFor={this.name}>{this.label}</label>\n )}\n \n <div class={classnames('le-input-container', { 'has-error': !this.isValid })}>\n {this.iconStart && (\n <span class=\"icon-start\">{this.iconStart}</span>\n )}\n \n <input\n id={this.name}\n type=\"number\"\n name={this.name}\n placeholder={this.placeholder}\n min={this.min}\n max={this.max}\n step={this.step}\n value={this.value}\n disabled={this.disabled}\n readOnly={this.readonly}\n required={this.required}\n onInput={this.handleInput}\n onChange={this.handleChange}\n onKeyDown={this.handleKeyDown}\n onWheel={this.handleWheel}\n />\n \n {this.showSpinners && (\n <div class=\"le-input-controls\">\n <le-button\n mode=\"default\"\n variant=\"clear\" \n size=\"small\"\n icon-only\n class=\"le-input-control-btn\" \n onClick={this.increment}\n disabled={this.disabled || this.readonly || (this.max !== undefined && this.value >= this.max)}\n tabindex=\"-1\"\n >\n <span slot=\"icon-only\">↑</span>\n </le-button>\n <le-button\n mode=\"default\"\n variant=\"clear\" \n size=\"small\" \n icon-only \n class=\"le-input-control-btn\" \n onClick={this.decrement}\n disabled={this.disabled || this.readonly || (this.min !== undefined && this.value <= this.min)}\n tabindex=\"-1\"\n >\n <span slot=\"icon-only\">↓</span>\n </le-button>\n </div>\n )}\n </div>\n\n {!this.isValid && <div class=\"le-input-error\">{this.validationMessage}</div>}\n\n <div class=\"le-input-description\">\n <le-slot name=\"description\" type=\"text\" tag=\"p\" label=\"Description\">\n <slot name=\"description\"></slot>\n </le-slot>\n </div>\n </div>\n </le-component>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface LePopover extends Components.LePopover, HTMLElement {}
4
+ export const LePopover: {
5
+ prototype: LePopover;
6
+ new (): LePopover;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,9 @@
1
+ import { L as LePopover$1, d as defineCustomElement$1 } from './le-popover2.js';
2
+
3
+ const LePopover = LePopover$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { LePopover, defineCustomElement };
7
+ //# sourceMappingURL=le-popover.js.map
8
+
9
+ //# sourceMappingURL=le-popover.js.map
@@ -0,0 +1 @@
1
+ {"file":"le-popover.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}