le-kit 0.1.16 → 0.1.18
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.
- package/dist/cjs/{index-CHzu3ydp.js → index-pT2cVC5w.js} +10 -4
- package/dist/cjs/index-pT2cVC5w.js.map +1 -0
- package/dist/cjs/index.cjs.js +4 -2
- package/dist/cjs/le-box.cjs.entry.js +4 -4
- package/dist/cjs/le-button_13.cjs.entry.js +204 -30
- package/dist/cjs/le-card.cjs.entry.js +4 -4
- package/dist/cjs/le-combobox.cjs.entry.js +3 -3
- package/dist/cjs/le-header-placeholder.cjs.entry.js +1 -1
- package/dist/cjs/le-kit.cjs.js +4 -2
- package/dist/cjs/le-kit.cjs.js.map +1 -1
- package/dist/cjs/le-multiselect.cjs.entry.js +3 -3
- package/dist/cjs/le-number-input.cjs.entry.js +4 -4
- package/dist/cjs/le-round-progress.cjs.entry.js +3 -3
- package/dist/cjs/le-segmented-control.cjs.entry.js +3 -3
- package/dist/cjs/le-stack.cjs.entry.js +4 -4
- package/dist/cjs/le-tab-bar.cjs.entry.js +3 -3
- package/dist/cjs/le-tab-panel.cjs.entry.js +3 -3
- package/dist/cjs/le-tab.cjs.entry.js +7 -4
- package/dist/cjs/le-tabs.cjs.entry.js +4 -4
- package/dist/cjs/le-tag.cjs.entry.js +3 -3
- package/dist/cjs/le-text.cjs.entry.js +4 -4
- package/dist/cjs/le-turntable.cjs.entry.js +3 -3
- package/dist/cjs/loader.cjs.js +3 -1
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/{utils-CYOKcOW8.js → utils-ByTskwtC.js} +3 -3
- package/dist/cjs/{utils-CYOKcOW8.js.map → utils-ByTskwtC.js.map} +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/le-button/le-button.js +8 -6
- package/dist/collection/components/le-button/le-button.js.map +1 -1
- package/dist/collection/components/le-component/le-component.js +2 -0
- package/dist/collection/components/le-component/le-component.js.map +1 -1
- package/dist/collection/components/le-current-heading/le-current-heading.css +1 -0
- package/dist/collection/dist/components/assets/custom-elements.json +787 -791
- package/dist/components/assets/custom-elements.json +787 -791
- package/dist/components/le-box.js +14 -14
- package/dist/components/le-box.js.map +1 -1
- package/dist/components/le-button2.js +97 -89
- package/dist/components/le-button2.js.map +1 -1
- package/dist/components/le-card.js +14 -14
- package/dist/components/le-card.js.map +1 -1
- package/dist/components/le-collapse.js +15 -14
- package/dist/components/le-collapse.js.map +1 -1
- package/dist/components/le-combobox.js +14 -14
- package/dist/components/le-combobox.js.map +1 -1
- package/dist/components/le-current-heading.js +5 -5
- package/dist/components/le-current-heading.js.map +1 -1
- package/dist/components/le-dropdown-base2.js +6 -6
- package/dist/components/le-dropdown-base2.js.map +1 -1
- package/dist/components/le-header-placeholder.js +3 -3
- package/dist/components/le-header.js +16 -14
- package/dist/components/le-header.js.map +1 -1
- package/dist/components/le-multiselect.js +15 -15
- package/dist/components/le-multiselect.js.map +1 -1
- package/dist/components/le-number-input.js +14 -14
- package/dist/components/le-number-input.js.map +1 -1
- package/dist/components/le-popover2.js +168 -5
- package/dist/components/le-popover2.js.map +1 -1
- package/dist/components/le-round-progress.js +5 -5
- package/dist/components/le-round-progress.js.map +1 -1
- package/dist/components/le-scroll-progress.js +5 -5
- package/dist/components/le-scroll-progress.js.map +1 -1
- package/dist/components/le-segmented-control.js +15 -15
- package/dist/components/le-segmented-control.js.map +1 -1
- package/dist/components/le-stack.js +14 -14
- package/dist/components/le-stack.js.map +1 -1
- package/dist/components/le-tab-bar.js +15 -15
- package/dist/components/le-tab-bar.js.map +1 -1
- package/dist/components/le-tab-panel.js +14 -14
- package/dist/components/le-tab-panel.js.map +1 -1
- package/dist/components/le-tab2.js +17 -14
- package/dist/components/le-tab2.js.map +1 -1
- package/dist/components/le-tabs.js +15 -15
- package/dist/components/le-tabs.js.map +1 -1
- package/dist/components/le-tag2.js +14 -14
- package/dist/components/le-tag2.js.map +1 -1
- package/dist/components/le-text.js +14 -14
- package/dist/components/le-text.js.map +1 -1
- package/dist/components/le-turntable.js +5 -5
- package/dist/components/le-turntable.js.map +1 -1
- package/dist/docs.json +8 -8
- package/dist/esm/{index-hmBwv43R.js → index-CNv6tzAt.js} +10 -4
- package/dist/esm/index-CNv6tzAt.js.map +1 -0
- package/dist/esm/index.js +4 -2
- package/dist/esm/le-box.entry.js +4 -4
- package/dist/esm/le-box.entry.js.map +1 -1
- package/dist/esm/le-button_13.entry.js +204 -30
- package/dist/esm/le-card.entry.js +4 -4
- package/dist/esm/le-card.entry.js.map +1 -1
- package/dist/esm/le-combobox.entry.js +3 -3
- package/dist/esm/le-combobox.entry.js.map +1 -1
- package/dist/esm/le-header-placeholder.entry.js +1 -1
- package/dist/esm/le-kit.js +5 -3
- package/dist/esm/le-kit.js.map +1 -1
- package/dist/esm/le-multiselect.entry.js +3 -3
- package/dist/esm/le-multiselect.entry.js.map +1 -1
- package/dist/esm/le-number-input.entry.js +4 -4
- package/dist/esm/le-number-input.entry.js.map +1 -1
- package/dist/esm/le-round-progress.entry.js +3 -3
- package/dist/esm/le-round-progress.entry.js.map +1 -1
- package/dist/esm/le-segmented-control.entry.js +3 -3
- package/dist/esm/le-segmented-control.entry.js.map +1 -1
- package/dist/esm/le-stack.entry.js +4 -4
- package/dist/esm/le-stack.entry.js.map +1 -1
- package/dist/esm/le-tab-bar.entry.js +3 -3
- package/dist/esm/le-tab-bar.entry.js.map +1 -1
- package/dist/esm/le-tab-panel.entry.js +3 -3
- package/dist/esm/le-tab-panel.entry.js.map +1 -1
- package/dist/esm/le-tab.entry.js +7 -4
- package/dist/esm/le-tab.entry.js.map +1 -1
- package/dist/esm/le-tabs.entry.js +4 -4
- package/dist/esm/le-tabs.entry.js.map +1 -1
- package/dist/esm/le-tag.entry.js +3 -3
- package/dist/esm/le-tag.entry.js.map +1 -1
- package/dist/esm/le-text.entry.js +4 -4
- package/dist/esm/le-text.entry.js.map +1 -1
- package/dist/esm/le-turntable.entry.js +3 -3
- package/dist/esm/le-turntable.entry.js.map +1 -1
- package/dist/esm/loader.js +4 -2
- package/dist/esm/{utils-DRTFlnxz.js → utils-BzC2tvPX.js} +3 -3
- package/dist/esm/{utils-DRTFlnxz.js.map → utils-BzC2tvPX.js.map} +1 -1
- package/dist/le-kit/dist/components/assets/custom-elements.json +787 -791
- package/dist/le-kit/index.esm.js +1 -1
- package/dist/le-kit/le-kit.esm.js +1 -1
- package/dist/le-kit/le-kit.esm.js.map +1 -1
- package/dist/le-kit/p-269fb44f.entry.js +2 -0
- package/dist/le-kit/p-269fb44f.entry.js.map +1 -0
- package/dist/le-kit/p-31c3649c.entry.js +2 -0
- package/dist/le-kit/p-31c3649c.entry.js.map +1 -0
- package/dist/le-kit/p-3829f572.entry.js +2 -0
- package/dist/le-kit/p-3829f572.entry.js.map +1 -0
- package/dist/le-kit/p-629c5e13.entry.js +2 -0
- package/dist/le-kit/p-629c5e13.entry.js.map +1 -0
- package/dist/le-kit/p-684adc9f.entry.js +2 -0
- package/dist/le-kit/p-684adc9f.entry.js.map +1 -0
- package/dist/le-kit/p-7d316315.entry.js +2 -0
- package/dist/le-kit/p-7d316315.entry.js.map +1 -0
- package/dist/le-kit/p-8a78110f.entry.js +2 -0
- package/dist/le-kit/p-8a78110f.entry.js.map +1 -0
- package/dist/le-kit/p-8afe6862.entry.js +2 -0
- package/dist/le-kit/p-8afe6862.entry.js.map +1 -0
- package/dist/le-kit/p-95cf203e.entry.js +2 -0
- package/dist/le-kit/p-95cf203e.entry.js.map +1 -0
- package/dist/le-kit/p-9ba2bfb3.entry.js +2 -0
- package/dist/le-kit/p-9ba2bfb3.entry.js.map +1 -0
- package/dist/le-kit/{p-hmBwv43R.js → p-CNv6tzAt.js} +2 -2
- package/dist/le-kit/p-CNv6tzAt.js.map +1 -0
- package/dist/le-kit/{p-txKmCJHv.js → p-W4FbLlut.js} +2 -2
- package/dist/le-kit/{p-txKmCJHv.js.map → p-W4FbLlut.js.map} +1 -1
- package/dist/le-kit/p-aaec0169.entry.js +2 -0
- package/dist/le-kit/p-aaec0169.entry.js.map +1 -0
- package/dist/le-kit/p-b3531106.entry.js +2 -0
- package/dist/le-kit/p-b3531106.entry.js.map +1 -0
- package/dist/le-kit/p-c83a1255.entry.js +2 -0
- package/dist/le-kit/p-c83a1255.entry.js.map +1 -0
- package/dist/le-kit/p-d2a5d431.entry.js +2 -0
- package/dist/le-kit/p-d2a5d431.entry.js.map +1 -0
- package/dist/le-kit/p-deef1f4d.entry.js +2 -0
- package/dist/le-kit/p-deef1f4d.entry.js.map +1 -0
- package/dist/le-kit/p-e07d4b78.entry.js +2 -0
- package/dist/le-kit/p-e4618b36.entry.js +2 -0
- package/dist/le-kit/p-e4618b36.entry.js.map +1 -0
- package/dist/types/components/le-button/le-button.d.ts +1 -1
- package/dist/types/components.d.ts +2 -2
- package/dist/types/stencil-public-runtime.d.ts +43 -0
- package/package.json +1 -1
- package/dist/cjs/index-CHzu3ydp.js.map +0 -1
- package/dist/cjs/le-box.entry.cjs.js.map +0 -1
- 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 +0 -1
- package/dist/cjs/le-card.entry.cjs.js.map +0 -1
- package/dist/cjs/le-combobox.entry.cjs.js.map +0 -1
- package/dist/cjs/le-header-placeholder.entry.cjs.js.map +0 -1
- package/dist/cjs/le-multiselect.entry.cjs.js.map +0 -1
- package/dist/cjs/le-number-input.entry.cjs.js.map +0 -1
- package/dist/cjs/le-round-progress.entry.cjs.js.map +0 -1
- package/dist/cjs/le-segmented-control.entry.cjs.js.map +0 -1
- package/dist/cjs/le-stack.entry.cjs.js.map +0 -1
- package/dist/cjs/le-tab-bar.entry.cjs.js.map +0 -1
- package/dist/cjs/le-tab-panel.entry.cjs.js.map +0 -1
- package/dist/cjs/le-tab.entry.cjs.js.map +0 -1
- package/dist/cjs/le-tabs.entry.cjs.js.map +0 -1
- package/dist/cjs/le-tag.entry.cjs.js.map +0 -1
- package/dist/cjs/le-text.entry.cjs.js.map +0 -1
- package/dist/cjs/le-turntable.entry.cjs.js.map +0 -1
- package/dist/esm/index-hmBwv43R.js.map +0 -1
- 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 +0 -1
- package/dist/le-kit/le-box.entry.esm.js.map +0 -1
- 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 +0 -1
- package/dist/le-kit/le-card.entry.esm.js.map +0 -1
- package/dist/le-kit/le-combobox.entry.esm.js.map +0 -1
- package/dist/le-kit/le-header-placeholder.entry.esm.js.map +0 -1
- package/dist/le-kit/le-multiselect.entry.esm.js.map +0 -1
- package/dist/le-kit/le-number-input.entry.esm.js.map +0 -1
- package/dist/le-kit/le-round-progress.entry.esm.js.map +0 -1
- package/dist/le-kit/le-segmented-control.entry.esm.js.map +0 -1
- package/dist/le-kit/le-stack.entry.esm.js.map +0 -1
- package/dist/le-kit/le-tab-bar.entry.esm.js.map +0 -1
- package/dist/le-kit/le-tab-panel.entry.esm.js.map +0 -1
- package/dist/le-kit/le-tab.entry.esm.js.map +0 -1
- package/dist/le-kit/le-tabs.entry.esm.js.map +0 -1
- package/dist/le-kit/le-tag.entry.esm.js.map +0 -1
- package/dist/le-kit/le-text.entry.esm.js.map +0 -1
- package/dist/le-kit/le-turntable.entry.esm.js.map +0 -1
- package/dist/le-kit/p-13a4dc1d.entry.js +0 -2
- package/dist/le-kit/p-13a4dc1d.entry.js.map +0 -1
- package/dist/le-kit/p-1a9e65d0.entry.js +0 -2
- package/dist/le-kit/p-1a9e65d0.entry.js.map +0 -1
- package/dist/le-kit/p-2708dc65.entry.js +0 -2
- package/dist/le-kit/p-2708dc65.entry.js.map +0 -1
- package/dist/le-kit/p-2b96a5bd.entry.js +0 -2
- package/dist/le-kit/p-32cbb683.entry.js +0 -2
- package/dist/le-kit/p-32cbb683.entry.js.map +0 -1
- package/dist/le-kit/p-476e1886.entry.js +0 -2
- package/dist/le-kit/p-476e1886.entry.js.map +0 -1
- package/dist/le-kit/p-67d702f9.entry.js +0 -2
- package/dist/le-kit/p-67d702f9.entry.js.map +0 -1
- package/dist/le-kit/p-6884e3e8.entry.js +0 -2
- package/dist/le-kit/p-6884e3e8.entry.js.map +0 -1
- package/dist/le-kit/p-704ad5e0.entry.js +0 -2
- package/dist/le-kit/p-704ad5e0.entry.js.map +0 -1
- package/dist/le-kit/p-88f9aa40.entry.js +0 -2
- package/dist/le-kit/p-88f9aa40.entry.js.map +0 -1
- package/dist/le-kit/p-8dd8a487.entry.js +0 -2
- package/dist/le-kit/p-8dd8a487.entry.js.map +0 -1
- package/dist/le-kit/p-97b7658a.entry.js +0 -2
- package/dist/le-kit/p-97b7658a.entry.js.map +0 -1
- package/dist/le-kit/p-c0925e92.entry.js +0 -2
- package/dist/le-kit/p-c0925e92.entry.js.map +0 -1
- package/dist/le-kit/p-c2494a0d.entry.js +0 -2
- package/dist/le-kit/p-c2494a0d.entry.js.map +0 -1
- package/dist/le-kit/p-ded51018.entry.js +0 -2
- package/dist/le-kit/p-ded51018.entry.js.map +0 -1
- package/dist/le-kit/p-e3db7974.entry.js +0 -2
- package/dist/le-kit/p-e3db7974.entry.js.map +0 -1
- package/dist/le-kit/p-f9b03aec.entry.js +0 -2
- package/dist/le-kit/p-f9b03aec.entry.js.map +0 -1
- package/dist/le-kit/p-hmBwv43R.js.map +0 -1
- /package/dist/le-kit/{p-2b96a5bd.entry.js.map → p-e07d4b78.entry.js.map} +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
1
|
+
import { proxyCustomElement, HTMLElement, h, Host, transformTag } from '@stencil/core/internal/client';
|
|
2
2
|
import { h as classnames } from './utils.js';
|
|
3
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
4
|
import { d as defineCustomElement$7 } from './le-dropdown-base2.js';
|
|
5
5
|
import { d as defineCustomElement$6 } from './le-popover2.js';
|
|
6
6
|
|
|
7
|
-
const leBoxDefaultCss =
|
|
7
|
+
const leBoxDefaultCss = () => `:host{display:block;box-sizing:border-box}:host([hidden]){display:none}.box{width:100%;height:100%;box-sizing:border-box}.content{width:100%;height:100%;box-sizing:border-box;background:var(--le-box-bg, transparent);border-radius:var(--le-box-border-radius, 0);padding:var(--le-box-padding, 0)}:host(.display-flex) .content{min-height:100%}`;
|
|
8
8
|
|
|
9
9
|
const LeBox$1 = /*@__PURE__*/ proxyCustomElement(class LeBox extends HTMLElement {
|
|
10
10
|
constructor(registerHost) {
|
|
@@ -182,7 +182,7 @@ const LeBox$1 = /*@__PURE__*/ proxyCustomElement(class LeBox extends HTMLElement
|
|
|
182
182
|
});
|
|
183
183
|
return (h(Host, { key: '8d71daaa3a1f34cf1b5fa3afe4f788d974d14dde', style: hostStyle, class: hostClass }, h("le-component", { key: '350393fef2159c40de43792502545ba93e0ec84c', component: "le-box" }, h("div", { key: '425be85bce62b600a383e164a847a2f0622496bd', class: "box", part: "box" }, h("div", { key: '104275e435d64a76428b5934aa0ece7ae3284cd8', class: "content", part: "content", style: contentStyle }, h("le-slot", { key: '7655d6bd5140ffcac514b266b4ca2f790a44e8ae', name: "", description: "Content inside this flex item", type: "slot", "allowed-components": "le-text,le-card,le-button,le-stack,le-box" }, h("slot", { key: '47efcfcc9b9efe5283fa8f558026b3b13ea5b959' })))))));
|
|
184
184
|
}
|
|
185
|
-
static get style() { return leBoxDefaultCss; }
|
|
185
|
+
static get style() { return leBoxDefaultCss(); }
|
|
186
186
|
}, [769, "le-box", {
|
|
187
187
|
"grow": [2],
|
|
188
188
|
"shrink": [2],
|
|
@@ -212,52 +212,52 @@ function defineCustomElement$1() {
|
|
|
212
212
|
const components = ["le-box", "le-button", "le-checkbox", "le-component", "le-dropdown-base", "le-popover", "le-popup", "le-select", "le-slot", "le-string-input"];
|
|
213
213
|
components.forEach(tagName => { switch (tagName) {
|
|
214
214
|
case "le-box":
|
|
215
|
-
if (!customElements.get(tagName)) {
|
|
216
|
-
customElements.define(tagName, LeBox$1);
|
|
215
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
216
|
+
customElements.define(transformTag(tagName), LeBox$1);
|
|
217
217
|
}
|
|
218
218
|
break;
|
|
219
219
|
case "le-button":
|
|
220
|
-
if (!customElements.get(tagName)) {
|
|
220
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
221
221
|
defineCustomElement$a();
|
|
222
222
|
}
|
|
223
223
|
break;
|
|
224
224
|
case "le-checkbox":
|
|
225
|
-
if (!customElements.get(tagName)) {
|
|
225
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
226
226
|
defineCustomElement$9();
|
|
227
227
|
}
|
|
228
228
|
break;
|
|
229
229
|
case "le-component":
|
|
230
|
-
if (!customElements.get(tagName)) {
|
|
230
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
231
231
|
defineCustomElement$8();
|
|
232
232
|
}
|
|
233
233
|
break;
|
|
234
234
|
case "le-dropdown-base":
|
|
235
|
-
if (!customElements.get(tagName)) {
|
|
235
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
236
236
|
defineCustomElement$7();
|
|
237
237
|
}
|
|
238
238
|
break;
|
|
239
239
|
case "le-popover":
|
|
240
|
-
if (!customElements.get(tagName)) {
|
|
240
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
241
241
|
defineCustomElement$6();
|
|
242
242
|
}
|
|
243
243
|
break;
|
|
244
244
|
case "le-popup":
|
|
245
|
-
if (!customElements.get(tagName)) {
|
|
245
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
246
246
|
defineCustomElement$5();
|
|
247
247
|
}
|
|
248
248
|
break;
|
|
249
249
|
case "le-select":
|
|
250
|
-
if (!customElements.get(tagName)) {
|
|
250
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
251
251
|
defineCustomElement$4();
|
|
252
252
|
}
|
|
253
253
|
break;
|
|
254
254
|
case "le-slot":
|
|
255
|
-
if (!customElements.get(tagName)) {
|
|
255
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
256
256
|
defineCustomElement$3();
|
|
257
257
|
}
|
|
258
258
|
break;
|
|
259
259
|
case "le-string-input":
|
|
260
|
-
if (!customElements.get(tagName)) {
|
|
260
|
+
if (!customElements.get(transformTag(tagName))) {
|
|
261
261
|
defineCustomElement$2();
|
|
262
262
|
}
|
|
263
263
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"le-box.js","mappings":";;;;;;AAAA,MAAM,eAAe,GAAG,sVAAsV;;MC0BjWA,OAAK,iBAAAC,kBAAA,CAAA,MAAA,KAAA,SAAA,WAAA,CAAA;;;;;;;;;AAGhB;;;AAGG;IACK,IAAI,GAAW,CAAC;AAExB;;;AAGG;IACK,MAAM,GAAW,CAAC;AAE1B;;AAEG;IACK,KAAK,GAAW,MAAM;AAE9B;;AAEG;AACK,IAAA,KAAK;AAEb;;AAEG;AACK,IAAA,MAAM;AAEd;;AAEG;AACK,IAAA,QAAQ;AAEhB;;AAEG;AACK,IAAA,QAAQ;AAEhB;;AAEG;AACK,IAAA,SAAS;AAEjB;;AAEG;AACK,IAAA,SAAS;AAEjB;;AAEG;AACK,IAAA,UAAU;AAElB;;AAEG;AACK,IAAA,YAAY;AAEpB;;AAEG;AACK,IAAA,MAAM;AAEd;;;AAGG;IACK,SAAS,GAAiE,MAAM;AAExF;;;AAGG;IACK,YAAY,GAA2C,SAAS;AAExE;;;AAGG;IACK,cAAc,GAA2C,OAAO;AAExE;;AAEG;AACK,IAAA,OAAO;AAEf;;AAEG;AACK,IAAA,KAAK;AAEb;;AAEG;IACK,WAAW,GAAY,KAAK;AAEpC;;;AAGG;IACK,cAAc,GAA8B,UAAU;AAE9D;;AAEG;AACK,IAAA,QAAQ;IAER,YAAY,GAAA;AAClB,QAAA,MAAM,QAAQ,GAA2B;AACvC,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,UAAU;SACrB;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,MAAM;;IAGnC,eAAe,GAAA;AACrB,QAAA,MAAM,QAAQ,GAA2B;AACvC,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,OAAO,EAAE,SAAS;SACnB;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,SAAS;;IAGzC,iBAAiB,GAAA;AACvB,QAAA,MAAM,UAAU,GAA2B;AACzC,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,OAAO,EAAE,SAAS;SACnB;QACD,OAAO,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,YAAY;;IAGxD,MAAM,GAAA;;AAEJ,QAAA,MAAM,SAAS,GAA8B;AAC3C,YAAA,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,SAAS,EAAE,IAAI,CAAC,KAAK;AACrB,YAAA,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE;SAC/B;QAED,IAAI,IAAI,CAAC,KAAK;AAAE,YAAA,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;QAC5C,IAAI,IAAI,CAAC,MAAM;AAAE,YAAA,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;QAC/C,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;QACrD,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;QACrD,IAAI,IAAI,CAAC,SAAS;AAAE,YAAA,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QACxD,IAAI,IAAI,CAAC,SAAS;AAAE,YAAA,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;AACxD,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;;QAGlE,MAAM,YAAY,GAA8B,EAAE;AAElD,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;;AAErC,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;;AAE3C,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY;;AAE/C,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;;AAGnC,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,YAAY,CAAC,OAAO,GAAG,MAAM;AAC7B,YAAA,YAAY,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,KAAK,UAAU,GAAG,QAAQ,GAAG,KAAK;AAClF,YAAA,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE;AAChD,YAAA,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE;AACtD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ;;;QAIpC,MAAM,SAAS,GAAG,UAAU,CAAC;AAC3B,YAAA,UAAU,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC;YACzB,cAAc,EAAE,IAAI,CAAC,WAAW;YAChC,CAAC,CAAA,MAAA,EAAS,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,WAAW;AACnD,SAAA,CAAC;QAEF,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAA,EACtC,CAAc,CAAA,cAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,SAAS,EAAC,QAAQ,EAAA,EAC9B,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,EAAA,EACzB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAC,KAAK,EAAE,YAAY,EAAA,EACrD,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAC,EAAE,EACP,WAAW,EAAC,+BAA+B,EAC3C,IAAI,EAAC,MAAM,EAAA,oBAAA,EACQ,2CAA2C,EAAA,EAE9D,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACL,CACN,CACF,CACO,CACV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["LeBox","__stencil_proxyCustomElement"],"sources":["src/components/le-box/le-box.default.css?tag=le-box&encapsulation=shadow","src/components/le-box/le-box.tsx"],"sourcesContent":["/**\n * le-box default styles\n *\n * Flex item properties are applied inline via hostStyle.\n * This CSS handles visual styling and theming.\n */\n\n:host {\n display: block;\n box-sizing: border-box;\n}\n\n:host([hidden]) {\n display: none;\n}\n\n/* Box container - full size by default */\n.box {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n\n/* Content wrapper */\n.content {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n background: var(--le-box-bg, transparent);\n border-radius: var(--le-box-border-radius, 0);\n padding: var(--le-box-padding, 0);\n}\n\n/* When displayFlex is enabled, ensure content stretches */\n:host(.display-flex) .content {\n min-height: 100%;\n}\n","import { Component, Prop, h, Element, Host } from '@stencil/core';\nimport { classnames } from '../../utils/utils';\n\n/**\n * A flexible box component for use as a flex item within le-stack.\n *\n * `le-box` wraps content and provides flex item properties like grow, shrink,\n * basis, and self-alignment. It can also control its internal content alignment.\n *\n * @slot - Default slot for box content\n *\n * @cssprop --le-box-bg - Background color\n * @cssprop --le-box-padding - Padding inside the box\n * @cssprop --le-box-border-radius - Border radius\n *\n * @csspart box - The main box container\n * @csspart content - The inner content wrapper\n *\n * @cmsEditable true\n * @cmsCategory Layout\n */\n@Component({\n tag: 'le-box',\n styleUrl: 'le-box.default.css',\n shadow: true,\n})\nexport class LeBox {\n @Element() el: HTMLElement;\n\n /**\n * Flex grow factor - how much the item should grow relative to siblings\n * @min 0\n */\n @Prop() grow: number = 0;\n\n /**\n * Flex shrink factor - how much the item should shrink relative to siblings\n * @min 0\n */\n @Prop() shrink: number = 1;\n\n /**\n * Flex basis - initial size before growing/shrinking (e.g., '200px', '25%', 'auto')\n */\n @Prop() basis: string = 'auto';\n\n /**\n * Width of the box (CSS value like '100px', '50%', 'auto')\n */\n @Prop() width?: string;\n\n /**\n * Height of the box (CSS value)\n */\n @Prop() height?: string;\n\n /**\n * Minimum width constraint\n */\n @Prop() minWidth?: string;\n\n /**\n * Maximum width constraint\n */\n @Prop() maxWidth?: string;\n\n /**\n * Minimum height constraint\n */\n @Prop() minHeight?: string;\n\n /**\n * Maximum height constraint\n */\n @Prop() maxHeight?: string;\n\n /**\n * Background color or CSS value (e.g., '#f0f0f0', 'var(--le-color-primary-light)')\n */\n @Prop() background?: string;\n\n /**\n * Border radius (e.g., '8px', 'var(--le-radius-md)')\n */\n @Prop() borderRadius?: string;\n\n /**\n * Border style (e.g., '1px solid #ccc', '2px dashed var(--le-color-border)')\n */\n @Prop() border?: string;\n\n /**\n * Self-alignment override for this item on the cross axis\n * @allowedValues auto | start | center | end | stretch | baseline\n */\n @Prop() alignSelf: 'auto' | 'start' | 'center' | 'end' | 'stretch' | 'baseline' = 'auto';\n\n /**\n * Internal horizontal alignment of content\n * @allowedValues start | center | end | stretch\n */\n @Prop() alignContent: 'start' | 'center' | 'end' | 'stretch' = 'stretch';\n\n /**\n * Internal vertical alignment of content\n * @allowedValues start | center | end | stretch\n */\n @Prop() justifyContent: 'start' | 'center' | 'end' | 'stretch' = 'start';\n\n /**\n * Padding inside the box (CSS value like '8px', '1rem')\n */\n @Prop() padding?: string;\n\n /**\n * Order in the flex container (lower values come first)\n */\n @Prop() order?: number;\n\n /**\n * Whether to display box content as flex (for internal alignment)\n */\n @Prop() displayFlex: boolean = false;\n\n /**\n * Direction of internal flex layout when displayFlex is true\n * @allowedValues horizontal | vertical\n */\n @Prop() innerDirection: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Gap between internal flex items when displayFlex is true\n */\n @Prop() innerGap?: string;\n\n private getAlignSelf(): string {\n const alignMap: Record<string, string> = {\n auto: 'auto',\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n baseline: 'baseline',\n };\n return alignMap[this.alignSelf] || 'auto';\n }\n\n private getContentAlign(): string {\n const alignMap: Record<string, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n };\n return alignMap[this.alignContent] || 'stretch';\n }\n\n private getContentJustify(): string {\n const justifyMap: Record<string, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n };\n return justifyMap[this.justifyContent] || 'flex-start';\n }\n\n render() {\n // Host styles for flex item behavior\n const hostStyle: { [key: string]: string } = {\n flexGrow: String(this.grow),\n flexShrink: String(this.shrink),\n flexBasis: this.basis,\n alignSelf: this.getAlignSelf(),\n };\n\n if (this.width) hostStyle.width = this.width;\n if (this.height) hostStyle.height = this.height;\n if (this.minWidth) hostStyle.minWidth = this.minWidth;\n if (this.maxWidth) hostStyle.maxWidth = this.maxWidth;\n if (this.minHeight) hostStyle.minHeight = this.minHeight;\n if (this.maxHeight) hostStyle.maxHeight = this.maxHeight;\n if (this.order !== undefined) hostStyle.order = String(this.order);\n\n // Inner content styles\n const contentStyle: { [key: string]: string } = {};\n\n if (this.padding) {\n contentStyle.padding = this.padding;\n }\n if (this.background) {\n contentStyle.background = this.background;\n }\n if (this.borderRadius) {\n contentStyle.borderRadius = this.borderRadius;\n }\n if (this.border) {\n contentStyle.border = this.border;\n }\n\n if (this.displayFlex) {\n contentStyle.display = 'flex';\n contentStyle.flexDirection = this.innerDirection === 'vertical' ? 'column' : 'row';\n contentStyle.alignItems = this.getContentAlign();\n contentStyle.justifyContent = this.getContentJustify();\n if (this.innerGap) {\n contentStyle.gap = this.innerGap;\n }\n }\n\n const hostClass = classnames({\n 'has-grow': this.grow > 0,\n 'display-flex': this.displayFlex,\n [`inner-${this.innerDirection}`]: this.displayFlex,\n });\n\n return (\n <Host style={hostStyle} class={hostClass}>\n <le-component component=\"le-box\">\n <div class=\"box\" part=\"box\">\n <div class=\"content\" part=\"content\" style={contentStyle}>\n <le-slot\n name=\"\"\n description=\"Content inside this flex item\"\n type=\"slot\"\n allowed-components=\"le-text,le-card,le-button,le-stack,le-box\"\n >\n <slot></slot>\n </le-slot>\n </div>\n </div>\n </le-component>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"le-box.js","mappings":"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","names":["LeBox","__stencil_proxyCustomElement"],"sources":["src/components/le-box/le-box.default.css?tag=le-box&encapsulation=shadow","src/components/le-box/le-box.tsx"],"sourcesContent":["/**\n * le-box default styles\n *\n * Flex item properties are applied inline via hostStyle.\n * This CSS handles visual styling and theming.\n */\n\n:host {\n display: block;\n box-sizing: border-box;\n}\n\n:host([hidden]) {\n display: none;\n}\n\n/* Box container - full size by default */\n.box {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n\n/* Content wrapper */\n.content {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n background: var(--le-box-bg, transparent);\n border-radius: var(--le-box-border-radius, 0);\n padding: var(--le-box-padding, 0);\n}\n\n/* When displayFlex is enabled, ensure content stretches */\n:host(.display-flex) .content {\n min-height: 100%;\n}\n","import { Component, Prop, h, Element, Host } from '@stencil/core';\nimport { classnames } from '../../utils/utils';\n\n/**\n * A flexible box component for use as a flex item within le-stack.\n *\n * `le-box` wraps content and provides flex item properties like grow, shrink,\n * basis, and self-alignment. It can also control its internal content alignment.\n *\n * @slot - Default slot for box content\n *\n * @cssprop --le-box-bg - Background color\n * @cssprop --le-box-padding - Padding inside the box\n * @cssprop --le-box-border-radius - Border radius\n *\n * @csspart box - The main box container\n * @csspart content - The inner content wrapper\n *\n * @cmsEditable true\n * @cmsCategory Layout\n */\n@Component({\n tag: 'le-box',\n styleUrl: 'le-box.default.css',\n shadow: true,\n})\nexport class LeBox {\n @Element() el: HTMLElement;\n\n /**\n * Flex grow factor - how much the item should grow relative to siblings\n * @min 0\n */\n @Prop() grow: number = 0;\n\n /**\n * Flex shrink factor - how much the item should shrink relative to siblings\n * @min 0\n */\n @Prop() shrink: number = 1;\n\n /**\n * Flex basis - initial size before growing/shrinking (e.g., '200px', '25%', 'auto')\n */\n @Prop() basis: string = 'auto';\n\n /**\n * Width of the box (CSS value like '100px', '50%', 'auto')\n */\n @Prop() width?: string;\n\n /**\n * Height of the box (CSS value)\n */\n @Prop() height?: string;\n\n /**\n * Minimum width constraint\n */\n @Prop() minWidth?: string;\n\n /**\n * Maximum width constraint\n */\n @Prop() maxWidth?: string;\n\n /**\n * Minimum height constraint\n */\n @Prop() minHeight?: string;\n\n /**\n * Maximum height constraint\n */\n @Prop() maxHeight?: string;\n\n /**\n * Background color or CSS value (e.g., '#f0f0f0', 'var(--le-color-primary-light)')\n */\n @Prop() background?: string;\n\n /**\n * Border radius (e.g., '8px', 'var(--le-radius-md)')\n */\n @Prop() borderRadius?: string;\n\n /**\n * Border style (e.g., '1px solid #ccc', '2px dashed var(--le-color-border)')\n */\n @Prop() border?: string;\n\n /**\n * Self-alignment override for this item on the cross axis\n * @allowedValues auto | start | center | end | stretch | baseline\n */\n @Prop() alignSelf: 'auto' | 'start' | 'center' | 'end' | 'stretch' | 'baseline' = 'auto';\n\n /**\n * Internal horizontal alignment of content\n * @allowedValues start | center | end | stretch\n */\n @Prop() alignContent: 'start' | 'center' | 'end' | 'stretch' = 'stretch';\n\n /**\n * Internal vertical alignment of content\n * @allowedValues start | center | end | stretch\n */\n @Prop() justifyContent: 'start' | 'center' | 'end' | 'stretch' = 'start';\n\n /**\n * Padding inside the box (CSS value like '8px', '1rem')\n */\n @Prop() padding?: string;\n\n /**\n * Order in the flex container (lower values come first)\n */\n @Prop() order?: number;\n\n /**\n * Whether to display box content as flex (for internal alignment)\n */\n @Prop() displayFlex: boolean = false;\n\n /**\n * Direction of internal flex layout when displayFlex is true\n * @allowedValues horizontal | vertical\n */\n @Prop() innerDirection: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Gap between internal flex items when displayFlex is true\n */\n @Prop() innerGap?: string;\n\n private getAlignSelf(): string {\n const alignMap: Record<string, string> = {\n auto: 'auto',\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n baseline: 'baseline',\n };\n return alignMap[this.alignSelf] || 'auto';\n }\n\n private getContentAlign(): string {\n const alignMap: Record<string, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n };\n return alignMap[this.alignContent] || 'stretch';\n }\n\n private getContentJustify(): string {\n const justifyMap: Record<string, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n };\n return justifyMap[this.justifyContent] || 'flex-start';\n }\n\n render() {\n // Host styles for flex item behavior\n const hostStyle: { [key: string]: string } = {\n flexGrow: String(this.grow),\n flexShrink: String(this.shrink),\n flexBasis: this.basis,\n alignSelf: this.getAlignSelf(),\n };\n\n if (this.width) hostStyle.width = this.width;\n if (this.height) hostStyle.height = this.height;\n if (this.minWidth) hostStyle.minWidth = this.minWidth;\n if (this.maxWidth) hostStyle.maxWidth = this.maxWidth;\n if (this.minHeight) hostStyle.minHeight = this.minHeight;\n if (this.maxHeight) hostStyle.maxHeight = this.maxHeight;\n if (this.order !== undefined) hostStyle.order = String(this.order);\n\n // Inner content styles\n const contentStyle: { [key: string]: string } = {};\n\n if (this.padding) {\n contentStyle.padding = this.padding;\n }\n if (this.background) {\n contentStyle.background = this.background;\n }\n if (this.borderRadius) {\n contentStyle.borderRadius = this.borderRadius;\n }\n if (this.border) {\n contentStyle.border = this.border;\n }\n\n if (this.displayFlex) {\n contentStyle.display = 'flex';\n contentStyle.flexDirection = this.innerDirection === 'vertical' ? 'column' : 'row';\n contentStyle.alignItems = this.getContentAlign();\n contentStyle.justifyContent = this.getContentJustify();\n if (this.innerGap) {\n contentStyle.gap = this.innerGap;\n }\n }\n\n const hostClass = classnames({\n 'has-grow': this.grow > 0,\n 'display-flex': this.displayFlex,\n [`inner-${this.innerDirection}`]: this.displayFlex,\n });\n\n return (\n <Host style={hostStyle} class={hostClass}>\n <le-component component=\"le-box\">\n <div class=\"box\" part=\"box\">\n <div class=\"content\" part=\"content\" style={contentStyle}>\n <le-slot\n name=\"\"\n description=\"Content inside this flex item\"\n type=\"slot\"\n allowed-components=\"le-text,le-card,le-button,le-stack,le-box\"\n >\n <slot></slot>\n </le-slot>\n </div>\n </div>\n </le-component>\n </Host>\n );\n }\n}\n"],"version":3}
|