@mhmo91/schmancy 0.2.9 → 0.2.10
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/{animated-text-vp4fwxY2.cjs → animated-text-B7ot87Yb.cjs} +2 -2
- package/dist/{animated-text-vp4fwxY2.cjs.map → animated-text-B7ot87Yb.cjs.map} +1 -1
- package/dist/{animated-text-0Ai_OLHl.js → animated-text-BR3J5YzM.js} +3 -3
- package/dist/{animated-text-0Ai_OLHl.js.map → animated-text-BR3J5YzM.js.map} +1 -1
- package/dist/animated-text.cjs +1 -1
- package/dist/animated-text.js +1 -1
- package/dist/area.cjs +1 -1
- package/dist/{area.component-JScs76M1.js → area.component-BlcOhWYn.js} +3 -3
- package/dist/{area.component-JScs76M1.js.map → area.component-BlcOhWYn.js.map} +1 -1
- package/dist/{area.component-4wkXNax5.cjs → area.component-Dvbv9xus.cjs} +2 -2
- package/dist/{area.component-4wkXNax5.cjs.map → area.component-Dvbv9xus.cjs.map} +1 -1
- package/dist/area.js +1 -1
- package/dist/autocomplete-GCjmIPKP.cjs +43 -0
- package/dist/autocomplete-GCjmIPKP.cjs.map +1 -0
- package/dist/autocomplete-vfdJnjAx.js +212 -0
- package/dist/autocomplete-vfdJnjAx.js.map +1 -0
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.js +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{checkbox-Bxp5uWqA.cjs → checkbox-B6wuWHQT.cjs} +2 -2
- package/dist/{checkbox-Bxp5uWqA.cjs.map → checkbox-B6wuWHQT.cjs.map} +1 -1
- package/dist/{checkbox-colFZOar.js → checkbox-BrVJwQYt.js} +2 -2
- package/dist/{checkbox-colFZOar.js.map → checkbox-BrVJwQYt.js.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-7sYLmlxn.js → chips-CCNEOlx2.js} +3 -3
- package/dist/{chips-7sYLmlxn.js.map → chips-CCNEOlx2.js.map} +1 -1
- package/dist/{chips-BVQttHUJ.cjs → chips-DW4wk4ns.cjs} +2 -2
- package/dist/{chips-BVQttHUJ.cjs.map → chips-DW4wk4ns.cjs.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.js +1 -1
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/{date-range-BLusWPVn.js → date-range-BqsNgxis.js} +3 -3
- package/dist/{date-range-BLusWPVn.js.map → date-range-BqsNgxis.js.map} +1 -1
- package/dist/{date-range-_7Vry7wT.cjs → date-range-s4nUUXP-.cjs} +2 -2
- package/dist/{date-range-_7Vry7wT.cjs.map → date-range-s4nUUXP-.cjs.map} +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-B8fYtrMp.js → delay-DrTqFWuI.js} +2 -2
- package/dist/{delay-B8fYtrMp.js.map → delay-DrTqFWuI.js.map} +1 -1
- package/dist/{delay-ikznAH-1.cjs → delay-ZjnwZygz.cjs} +2 -2
- package/dist/{delay-ikznAH-1.cjs.map → delay-ZjnwZygz.cjs.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{divider-DJ9Gx64O.cjs → divider-C-olgct1.cjs} +2 -2
- package/dist/{divider-DJ9Gx64O.cjs.map → divider-C-olgct1.cjs.map} +1 -1
- package/dist/{divider-DLOwEvrd.js → divider-DE_qGu0Z.js} +3 -3
- package/dist/{divider-DLOwEvrd.js.map → divider-DE_qGu0Z.js.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{form-OYWlsQ4R.cjs → form-BftBHIa9.cjs} +2 -2
- package/dist/{form-OYWlsQ4R.cjs.map → form-BftBHIa9.cjs.map} +1 -1
- package/dist/{form-qBkXHUCV.js → form-CiopR1cw.js} +2 -2
- package/dist/{form-qBkXHUCV.js.map → form-CiopR1cw.js.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{icon-DDILI2Kw.cjs → icon-C3VNzTd2.cjs} +2 -2
- package/dist/{icon-DDILI2Kw.cjs.map → icon-C3VNzTd2.cjs.map} +1 -1
- package/dist/{icon-button-CP_pX4yw.cjs → icon-button-CEcYwu6h.cjs} +11 -11
- package/dist/icon-button-CEcYwu6h.cjs.map +1 -0
- package/dist/{icon-button-tvckJDEE.js → icon-button-cThH-HDx.js} +9 -9
- package/dist/icon-button-cThH-HDx.js.map +1 -0
- package/dist/{icon-BUV18-Pm.js → icon-uV29Oo_I.js} +3 -3
- package/dist/{icon-BUV18-Pm.js.map → icon-uV29Oo_I.js.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +32 -32
- package/dist/input-BNWPVs3H.js +124 -0
- package/dist/input-BNWPVs3H.js.map +1 -0
- package/dist/input-shCt07iX.cjs +43 -0
- package/dist/input-shCt07iX.cjs.map +1 -0
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-Bczhguqz.js → litElement.mixin-Bn8Rl6md.js} +2 -2
- package/dist/{litElement.mixin-Bczhguqz.js.map → litElement.mixin-Bn8Rl6md.js.map} +1 -1
- package/dist/{litElement.mixin-dZ5gFldT.cjs → litElement.mixin-CqG5Vzn4.cjs} +2 -2
- package/dist/{litElement.mixin-dZ5gFldT.cjs.map → litElement.mixin-CqG5Vzn4.cjs.map} +1 -1
- package/dist/{menu-CHUomCth.cjs → menu-BsjLQTfd.cjs} +2 -2
- package/dist/{menu-CHUomCth.cjs.map → menu-BsjLQTfd.cjs.map} +1 -1
- package/dist/{menu-C20Ngz8k.js → menu-CK0Aunqg.js} +3 -3
- package/dist/{menu-C20Ngz8k.js.map → menu-CK0Aunqg.js.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-DqO86_nY.js → option-C3ovVy8Q.js} +2 -2
- package/dist/{option-DqO86_nY.js.map → option-C3ovVy8Q.js.map} +1 -1
- package/dist/{option-PVtp_mrs.cjs → option-CEN9FFeV.cjs} +2 -2
- package/dist/{option-PVtp_mrs.cjs.map → option-CEN9FFeV.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{outlet-BzsckqZ8.cjs → outlet-BMkGxj9Y.cjs} +2 -2
- package/dist/{outlet-BzsckqZ8.cjs.map → outlet-BMkGxj9Y.cjs.map} +1 -1
- package/dist/{outlet-DcBtaiCX.js → outlet-CbHO2KGb.js} +2 -2
- package/dist/{outlet-DcBtaiCX.js.map → outlet-CbHO2KGb.js.map} +1 -1
- package/dist/{payment-card-form-Bbj5Ie3_.js → payment-card-form-CSjKMW71.js} +3 -3
- package/dist/{payment-card-form-Bbj5Ie3_.js.map → payment-card-form-CSjKMW71.js.map} +1 -1
- package/dist/{payment-card-form-DdrmXQgW.cjs → payment-card-form-ClNJIflz.cjs} +2 -2
- package/dist/{payment-card-form-DdrmXQgW.cjs.map → payment-card-form-ClNJIflz.cjs.map} +1 -1
- package/dist/{radio-group-BdFNVPBX.js → radio-group-BaAICOCk.js} +2 -2
- package/dist/{radio-group-BdFNVPBX.js.map → radio-group-BaAICOCk.js.map} +1 -1
- package/dist/{radio-group-IYmnpHoM.cjs → radio-group-Dq8G5fBE.cjs} +2 -2
- package/dist/{radio-group-IYmnpHoM.cjs.map → radio-group-Dq8G5fBE.cjs.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/{scroll-qTSe885X.js → scroll-BJ_3vZ-c.js} +2 -2
- package/dist/{scroll-qTSe885X.js.map → scroll-BJ_3vZ-c.js.map} +1 -1
- package/dist/{scroll-O39qwEAR.cjs → scroll-CUpYxnFS.cjs} +2 -2
- package/dist/{scroll-O39qwEAR.cjs.map → scroll-CUpYxnFS.cjs.map} +1 -1
- package/dist/{select-DGgGHXxb.cjs → select-DSOpxxMT.cjs} +3 -3
- package/dist/select-DSOpxxMT.cjs.map +1 -0
- package/dist/{select-C1qEu5xm.js → select-DzmFjt61.js} +7 -7
- package/dist/select-DzmFjt61.js.map +1 -0
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{sheet-CTZGiS7C.cjs → sheet-BnBjA5tD.cjs} +2 -2
- package/dist/{sheet-CTZGiS7C.cjs.map → sheet-BnBjA5tD.cjs.map} +1 -1
- package/dist/{sheet-DptJn65A.js → sheet-Co0cHr37.js} +3 -3
- package/dist/{sheet-DptJn65A.js.map → sheet-Co0cHr37.js.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{slider-DF0hGetl.cjs → slider-CJdYHduh.cjs} +2 -2
- package/dist/{slider-DF0hGetl.cjs.map → slider-CJdYHduh.cjs.map} +1 -1
- package/dist/{slider-DuC6D-d4.js → slider-dtJketj4.js} +3 -3
- package/dist/{slider-DuC6D-d4.js.map → slider-dtJketj4.js.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-CC4zDuEm.cjs → spinner-BB1NW_4b.cjs} +2 -2
- package/dist/{spinner-CC4zDuEm.cjs.map → spinner-BB1NW_4b.cjs.map} +1 -1
- package/dist/{spinner-CNgjSbB2.js → spinner-ssJhxM2o.js} +3 -3
- package/dist/{spinner-CNgjSbB2.js.map → spinner-ssJhxM2o.js.map} +1 -1
- package/dist/{surface-DVYDiR06.js → surface-DeLQUjNN.js} +3 -3
- package/dist/surface-DeLQUjNN.js.map +1 -0
- package/dist/{surface-DgEJ5kCf.cjs → surface-jQagrINO.cjs} +3 -3
- package/dist/surface-jQagrINO.cjs.map +1 -0
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-DaiP2A-P.cjs → table-Co0-nm4Y.cjs} +2 -2
- package/dist/{table-DaiP2A-P.cjs.map → table-Co0-nm4Y.cjs.map} +1 -1
- package/dist/{table-CvT4bvRV.js → table-DZIjJKTT.js} +2 -2
- package/dist/{table-CvT4bvRV.js.map → table-DZIjJKTT.js.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-group-BsYXf7-L.cjs → tabs-group-Doix3mBX.cjs} +2 -2
- package/dist/{tabs-group-BsYXf7-L.cjs.map → tabs-group-Doix3mBX.cjs.map} +1 -1
- package/dist/{tabs-group-uSIERHrS.js → tabs-group-JXceC_AX.js} +2 -2
- package/dist/{tabs-group-uSIERHrS.js.map → tabs-group-JXceC_AX.js.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/{tailwind.mixin-ivf7aKpx.cjs → tailwind.mixin-C3pXEh-C.cjs} +2 -2
- package/dist/{tailwind.mixin-ivf7aKpx.cjs.map → tailwind.mixin-C3pXEh-C.cjs.map} +1 -1
- package/dist/{tailwind.mixin-DaorKUB-.js → tailwind.mixin-C5OzBKVB.js} +14 -14
- package/dist/{tailwind.mixin-DaorKUB-.js.map → tailwind.mixin-C5OzBKVB.js.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/{teleport.component-CHZvUCGh.cjs → teleport.component-BXtXmHVa.cjs} +10 -10
- package/dist/teleport.component-BXtXmHVa.cjs.map +1 -0
- package/dist/{teleport.component-BJp0sdwT.js → teleport.component-Cq8hZD_o.js} +35 -35
- package/dist/teleport.component-Cq8hZD_o.js.map +1 -0
- package/dist/teleport.js +1 -1
- package/dist/{textarea-CmiDJ6vB.cjs → textarea-BfNvgfZ_.cjs} +2 -2
- package/dist/{textarea-CmiDJ6vB.cjs.map → textarea-BfNvgfZ_.cjs.map} +1 -1
- package/dist/{textarea-CBVhP0PO.js → textarea-vre0j7PW.js} +2 -2
- package/dist/{textarea-CBVhP0PO.js.map → textarea-vre0j7PW.js.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-oUEwzPgP.cjs → theme-button-CQiYi_67.cjs} +2 -2
- package/dist/{theme-button-oUEwzPgP.cjs.map → theme-button-CQiYi_67.cjs.map} +1 -1
- package/dist/{theme-button-D1kqQf95.js → theme-button-D8dDywwF.js} +2 -2
- package/dist/{theme-button-D1kqQf95.js.map → theme-button-D8dDywwF.js.map} +1 -1
- package/dist/theme-button.cjs +1 -1
- package/dist/theme-button.js +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.component-BNYF3EuP.cjs +3 -0
- package/dist/{theme.component-C-dSR7fa.cjs.map → theme.component-BNYF3EuP.cjs.map} +1 -1
- package/dist/{theme.component-C7KaOcEZ.js → theme.component-iFFaMUIB.js} +43 -43
- package/dist/{theme.component-C7KaOcEZ.js.map → theme.component-iFFaMUIB.js.map} +1 -1
- package/dist/theme.js +1 -1
- package/dist/{tree-CjGzyEO3.cjs → tree-BGkPGaY8.cjs} +2 -2
- package/dist/{tree-CjGzyEO3.cjs.map → tree-BGkPGaY8.cjs.map} +1 -1
- package/dist/{tree-DnRjW773.js → tree-Dzh0J35T.js} +2 -2
- package/dist/{tree-DnRjW773.js.map → tree-Dzh0J35T.js.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-By3kfvcw.cjs → typewriter-ChAfM5s5.cjs} +2 -2
- package/dist/{typewriter-By3kfvcw.cjs.map → typewriter-ChAfM5s5.cjs.map} +1 -1
- package/dist/{typewriter-Bl4oL7Nj.js → typewriter-v9NtjriH.js} +4 -4
- package/dist/{typewriter-Bl4oL7Nj.js.map → typewriter-v9NtjriH.js.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-ZAIIeqBH.js → typography-BsfF4nMf.js} +2 -2
- package/dist/{typography-ZAIIeqBH.js.map → typography-BsfF4nMf.js.map} +1 -1
- package/dist/{typography-CDoqXfnX.cjs → typography-NRVaaUrd.cjs} +2 -2
- package/dist/{typography-CDoqXfnX.cjs.map → typography-NRVaaUrd.cjs.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/package.json +2 -1
- package/types/src/autocomplete/autocomplete.d.ts +95 -9
- package/types/src/input/input.d.ts +58 -47
- package/types/src/theme/theme.component.d.ts +1 -0
- package/dist/autocomplete-CiNm2SkD.cjs +0 -42
- package/dist/autocomplete-CiNm2SkD.cjs.map +0 -1
- package/dist/autocomplete-Cm5NEwT6.js +0 -189
- package/dist/autocomplete-Cm5NEwT6.js.map +0 -1
- package/dist/icon-button-CP_pX4yw.cjs.map +0 -1
- package/dist/icon-button-tvckJDEE.js.map +0 -1
- package/dist/input-BH04wAXW.cjs +0 -42
- package/dist/input-BH04wAXW.cjs.map +0 -1
- package/dist/input-Dxk8fmQJ.js +0 -118
- package/dist/input-Dxk8fmQJ.js.map +0 -1
- package/dist/select-C1qEu5xm.js.map +0 -1
- package/dist/select-DGgGHXxb.cjs.map +0 -1
- package/dist/surface-DVYDiR06.js.map +0 -1
- package/dist/surface-DgEJ5kCf.cjs.map +0 -1
- package/dist/teleport.component-BJp0sdwT.js.map +0 -1
- package/dist/teleport.component-CHZvUCGh.cjs.map +0 -1
- package/dist/theme.component-C-dSR7fa.cjs +0 -3
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { html as d, LitElement as $ } from "lit";
|
|
2
|
+
import { property as r, query as x, customElement as E } from "lit/decorators.js";
|
|
3
|
+
import { classMap as y } from "lit/directives/class-map.js";
|
|
4
|
+
import { ifDefined as a } from "lit/directives/if-defined.js";
|
|
5
|
+
import { createRef as k, ref as w } from "lit/directives/ref.js";
|
|
6
|
+
import { when as f } from "lit/directives/when.js";
|
|
7
|
+
import { fromEvent as n, map as b, distinctUntilChanged as v, filter as g } from "rxjs";
|
|
8
|
+
import "lit/directives/style-map.js";
|
|
9
|
+
import { T as R } from "./tailwind.mixin-C5OzBKVB.js";
|
|
10
|
+
import { c as m } from "./ripple-BumgqsDT.js";
|
|
11
|
+
import { S as p } from "./theme.interface-C5Kj6WjD.js";
|
|
12
|
+
var C = Object.defineProperty, V = Object.getOwnPropertyDescriptor, i = (t, o, h, l) => {
|
|
13
|
+
for (var u, s = l > 1 ? void 0 : l ? V(o, h) : o, c = t.length - 1; c >= 0; c--) (u = t[c]) && (s = (l ? u(o, h, s) : u(s)) || s);
|
|
14
|
+
return l && s && C(o, h, s), s;
|
|
15
|
+
};
|
|
16
|
+
let e = class extends R() {
|
|
17
|
+
constructor() {
|
|
18
|
+
if (super(), this.label = "", this.type = "text", this.clickable = !1, this.name = "name_" + Date.now(), this.placeholder = "", this.value = "", this.required = !1, this.disabled = !1, this.readonly = !1, this.spellcheck = !1, this.align = "left", this.autofocus = !1, this.autocomplete = "off", this.tabIndex = 0, this.error = !1, this.inputRef = k(), "attachInternals" in this) try {
|
|
19
|
+
this.internals = this.attachInternals();
|
|
20
|
+
} catch {
|
|
21
|
+
this.internals = void 0;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
get form() {
|
|
25
|
+
var t;
|
|
26
|
+
return ((t = this.internals) == null ? void 0 : t.form) ?? null;
|
|
27
|
+
}
|
|
28
|
+
updated(t) {
|
|
29
|
+
var o;
|
|
30
|
+
super.updated(t), t.has("value") && ((o = this.internals) == null || o.setFormValue(this.value));
|
|
31
|
+
}
|
|
32
|
+
reportValidity() {
|
|
33
|
+
var t;
|
|
34
|
+
return (t = this.inputRef.value) == null ? void 0 : t.reportValidity();
|
|
35
|
+
}
|
|
36
|
+
checkValidity() {
|
|
37
|
+
var t;
|
|
38
|
+
return (t = this.inputRef.value) == null ? void 0 : t.checkValidity();
|
|
39
|
+
}
|
|
40
|
+
setCustomValidity(t) {
|
|
41
|
+
var o;
|
|
42
|
+
(o = this.inputRef.value) == null || o.setCustomValidity(t);
|
|
43
|
+
}
|
|
44
|
+
firstUpdated() {
|
|
45
|
+
this.autofocus && this.focus(), n(this.inputElement, "input").pipe(b((t) => t.target.value), v()).subscribe((t) => {
|
|
46
|
+
this.value = t, this.dispatchEvent(new CustomEvent("change", { detail: { value: t }, bubbles: !0, composed: !0 }));
|
|
47
|
+
}), n(this.inputElement, "change").pipe(b((t) => t.target.value), v()).subscribe((t) => {
|
|
48
|
+
this.value = t, this.dispatchEvent(new CustomEvent("change", { detail: { value: t }, bubbles: !0, composed: !0 }));
|
|
49
|
+
}), n(this.inputElement, "keyup").pipe(g((t) => t.key === "Enter")).subscribe((t) => {
|
|
50
|
+
const { value: o } = t.target;
|
|
51
|
+
this.value = o, this.dispatchEvent(new CustomEvent("change", { detail: { value: o }, bubbles: !0, composed: !0 })), this.dispatchEvent(new CustomEvent("enter", { detail: { value: o }, bubbles: !0, composed: !0 }));
|
|
52
|
+
}), n(this.inputElement, "animationstart").pipe(g((t) => t.animationName === "onAutoFillStart")).subscribe((t) => {
|
|
53
|
+
const { value: o } = t.target;
|
|
54
|
+
this.value = o, this.dispatchEvent(new CustomEvent("change", { detail: { value: o }, bubbles: !0, composed: !0 }));
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
select() {
|
|
58
|
+
var t;
|
|
59
|
+
return (t = this.inputRef.value) == null ? void 0 : t.select();
|
|
60
|
+
}
|
|
61
|
+
getValidity() {
|
|
62
|
+
var t;
|
|
63
|
+
return (t = this.inputRef.value) == null ? void 0 : t.validity;
|
|
64
|
+
}
|
|
65
|
+
focus(t) {
|
|
66
|
+
var o;
|
|
67
|
+
(o = this.inputRef.value) == null || o.focus(t), this.dispatchEvent(new Event("focus"));
|
|
68
|
+
}
|
|
69
|
+
click() {
|
|
70
|
+
var t;
|
|
71
|
+
(t = this.inputRef.value) == null || t.click(), this.dispatchEvent(new Event("click"));
|
|
72
|
+
}
|
|
73
|
+
blur() {
|
|
74
|
+
var t;
|
|
75
|
+
(t = this.inputRef.value) == null || t.blur(), this.dispatchEvent(new Event("blur"));
|
|
76
|
+
}
|
|
77
|
+
render() {
|
|
78
|
+
const t = { "w-full flex-1 h-[50px] rounded-[8px] border-0 px-[8px] sm:px-[12px] md:px-[16px]": !0, "disabled:opacity-40 disabled:cursor-not-allowed": !0, "placeholder:text-muted": !0, "ring-0 ring-inset focus:ring-1 focus:ring-inset": !0, "ring-primary-default ring-outline focus:ring-primary-default": !this.error, "ring-error-default focus:ring-error-default": this.error, "caret-transparent focus:outline-hidden cursor-pointer text-select-none": this.readonly, "cursor-pointer": this.clickable, "text-center": this.align === "center", "text-right": this.align === "right" }, o = { "opacity-40": this.disabled, "block mb-[4px]": !0 };
|
|
79
|
+
return d`
|
|
80
|
+
${f(this.label, () => d`
|
|
81
|
+
<label
|
|
82
|
+
${m({ color: this.error ? p.sys.color.error.default : p.sys.color.primary.default })}
|
|
83
|
+
class="${y(o)}"
|
|
84
|
+
for=${this.id}
|
|
85
|
+
>
|
|
86
|
+
<schmancy-typography type="label" token="lg">${this.label}</schmancy-typography>
|
|
87
|
+
</label>
|
|
88
|
+
`)}
|
|
89
|
+
<input
|
|
90
|
+
${m({ bgColor: p.sys.color.surface.highest, color: p.sys.color.surface.on })}
|
|
91
|
+
${w(this.inputRef)}
|
|
92
|
+
.value=${this.value}
|
|
93
|
+
id=${this.id}
|
|
94
|
+
name=${this.name}
|
|
95
|
+
type=${this.type}
|
|
96
|
+
step=${a(this.step)}
|
|
97
|
+
.autocomplete=${this.autocomplete}
|
|
98
|
+
placeholder=${this.placeholder}
|
|
99
|
+
?required=${this.required}
|
|
100
|
+
inputmode=${a(this.inputmode)}
|
|
101
|
+
class=${y(t)}
|
|
102
|
+
?disabled=${this.disabled}
|
|
103
|
+
?readOnly=${this.readonly}
|
|
104
|
+
minlength=${a(this.minlength)}
|
|
105
|
+
maxlength=${a(this.maxlength)}
|
|
106
|
+
min=${a(this.min)}
|
|
107
|
+
max=${a(this.max)}
|
|
108
|
+
pattern=${a(this.pattern)}
|
|
109
|
+
/>
|
|
110
|
+
${f(this.hint, () => d`
|
|
111
|
+
<schmancy-typography
|
|
112
|
+
${m({ color: this.error ? p.sys.color.error.default : p.sys.color.primary.default })}
|
|
113
|
+
class="pt-[4px]"
|
|
114
|
+
type="body"
|
|
115
|
+
token="sm"
|
|
116
|
+
>
|
|
117
|
+
${this.hint}
|
|
118
|
+
</schmancy-typography>
|
|
119
|
+
`)}
|
|
120
|
+
`;
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
e.formAssociated = !0, e.shadowRootOptions = { ...$.shadowRootOptions, delegatesFocus: !0 }, i([r()], e.prototype, "label", 2), i([r({ reflect: !0 })], e.prototype, "type", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "clickable", 2), i([r()], e.prototype, "name", 2), i([r()], e.prototype, "placeholder", 2), i([r({ type: String, reflect: !0 })], e.prototype, "value", 2), i([r({ type: String, reflect: !0 })], e.prototype, "pattern", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "required", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "disabled", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "readonly", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "spellcheck", 2), i([r({ type: String, reflect: !0 })], e.prototype, "align", 2), i([r()], e.prototype, "inputmode", 2), i([r({ type: Number })], e.prototype, "minlength", 2), i([r({ type: Number })], e.prototype, "maxlength", 2), i([r()], e.prototype, "min", 2), i([r()], e.prototype, "max", 2), i([r({ type: Number, reflect: !0 })], e.prototype, "step", 2), i([r({ type: Boolean })], e.prototype, "autofocus", 2), i([r({ type: String })], e.prototype, "autocomplete", 2), i([r({ type: Number, reflect: !0 })], e.prototype, "tabIndex", 2), i([r()], e.prototype, "hint", 2), i([r({ type: Boolean, reflect: !0 })], e.prototype, "error", 2), i([x("input")], e.prototype, "inputElement", 2), e = i([E("schmancy-input")], e);
|
|
124
|
+
//# sourceMappingURL=input-BNWPVs3H.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-BNWPVs3H.js","sources":["../src/input/input.ts"],"sourcesContent":["import { LitElement, html } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js' // <-- Import if not provided by TailwindElement\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { createRef, ref } from 'lit/directives/ref.js'\nimport { when } from 'lit/directives/when.js'\nimport { distinctUntilChanged, filter, fromEvent, map } from 'rxjs'\n\n// If TailwindElement extends LitElement and has extra mixins, import it.\n// Otherwise, just extend LitElement. Adjust accordingly.\nimport { TailwindElement } from '@mixins/index'\n\n// color directive + theme interface\nimport { color } from '@schmancy/directives'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\n\n// If you want to be form-associated, you can define the type on `ElementInternals`.\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-input': SchmancyInput\n\t}\n}\n\n/**\n * An autocomplete type (expand or customize as needed).\n */\ntype AutoFill =\n\t| 'off'\n\t| 'on'\n\t| 'name'\n\t| 'username'\n\t| 'email'\n\t| 'tel'\n\t| 'url'\n\t| 'new-password'\n\t| 'current-password'\n\t| 'one-time-code'\n\ntype EventDetails = {\n\tvalue: string\n}\n\nexport type SchmancyInputChangeEvent = CustomEvent<EventDetails>\n\n/**\n * `schmancy-input` – A custom input component.\n */\n@customElement('schmancy-input')\nexport default class SchmancyInput extends TailwindElement() {\n\t/**\n\t * The label of the control.\n\t * @attr\n\t * @type {string}\n\t * @default ''\n\t */\n\t@property() label = ''\n\n\t/**\n\t * The type of the control.\n\t * @attr\n\t * @default 'text'\n\t */\n\t@property({ reflect: true })\n\tpublic type:\n\t\t| 'email'\n\t\t| 'number'\n\t\t| 'password'\n\t\t| 'search'\n\t\t| 'tel'\n\t\t| 'text'\n\t\t| 'url'\n\t\t| 'date'\n\t\t| 'datetime'\n\t\t| 'time'\n\t\t| 'month'\n\t\t| 'week'\n\t\t| 'color'\n\t\t| 'file' = 'text'\n\n\t@property({ type: Boolean, reflect: true }) public clickable = false\n\n\t/**\n\t * The name of the control.\n\t * @attr\n\t * @default 'name_' + Date.now()\n\t */\n\t@property() name = 'name_' + Date.now()\n\n\t/**\n\t * The placeholder of the control.\n\t * @attr\n\t * @default ''\n\t */\n\t@property() placeholder = ''\n\n\t/**\n\t * The value of the control.\n\t * @attr\n\t * @default ''\n\t */\n\t@property({ type: String, reflect: true }) public value = ''\n\n\t/**\n\t * The pattern attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: String, reflect: true })\n\tpublic pattern?: string\n\n\t@property({ type: Boolean, reflect: true }) required = false\n\t@property({ type: Boolean, reflect: true }) disabled = false\n\t@property({ type: Boolean, reflect: true }) readonly = false\n\t@property({ type: Boolean, reflect: true }) spellcheck = false\n\n\t@property({ type: String, reflect: true }) align: 'left' | 'center' | 'right' = 'left'\n\n\t/**\n\t * The inputmode attribute of the control.\n\t * @attr\n\t * @default undefined\n\t */\n\t@property()\n\tpublic inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'\n\n\t/**\n\t * The minlength attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number })\n\tpublic minlength?: number\n\n\t/**\n\t * The maxlength attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number })\n\tpublic maxlength?: number\n\n\t/**\n\t * The min attribute of the control.\n\t * @attr\n\t */\n\t@property()\n\tpublic min?: string\n\n\t/**\n\t * The max attribute of the control.\n\t * @attr\n\t */\n\t@property()\n\tpublic max?: string\n\n\t/**\n\t * The step attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number, reflect: true })\n\tpublic step?: number\n\n\t/**\n\t * The autofocus attribute of the control.\n\t * @attr\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tpublic autofocus = false\n\n\t/**\n\t * The autocomplete attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: String })\n\tpublic autocomplete: AutoFill = 'off'\n\n\t/**\n\t * tabIndex for focusing by tab key.\n\t */\n\t@property({ type: Number, reflect: true })\n\tpublic tabIndex = 0\n\n\t@property()\n\thint?: string\n\n\t@property({ type: Boolean, reflect: true }) public error = false\n\n\t@query('input') inputElement!: HTMLInputElement\n\tinputRef = createRef<HTMLInputElement>()\n\n\t/** Form-associated custom elements support. */\n\tstatic formAssociated = true\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tdelegatesFocus: true,\n\t}\n\n\tprivate internals?: ElementInternals\n\n\tconstructor() {\n\t\tsuper()\n\t\tif ('attachInternals' in this) {\n\t\t\ttry {\n\t\t\t\tthis.internals = this.attachInternals()\n\t\t\t} catch {\n\t\t\t\t// older browsers or polyfills might fail\n\t\t\t\tthis.internals = undefined\n\t\t\t}\n\t\t}\n\t}\n\n\tget form() {\n\t\treturn this.internals?.form ?? null\n\t}\n\n\t/**\n\t * (Optional) Whenever value changes, sync with form internals for\n\t * form submission (if you're using form-associated custom elements).\n\t */\n\tprotected updated(changedProps: Map<string, unknown>) {\n\t\tsuper.updated(changedProps)\n\t\tif (changedProps.has('value')) {\n\t\t\tthis.internals?.setFormValue(this.value)\n\t\t}\n\t}\n\n\t/** Checks for validity of the control and shows the browser message if it's invalid. */\n\tpublic reportValidity() {\n\t\treturn this.inputRef.value?.reportValidity()\n\t}\n\n\t/** Checks for validity of the control and emits the invalid event if it is invalid. */\n\tpublic checkValidity() {\n\t\treturn this.inputRef.value?.checkValidity()\n\t}\n\n\t/** Sets a custom validity message. */\n\tpublic setCustomValidity(message: string) {\n\t\tthis.inputRef.value?.setCustomValidity(message)\n\t}\n\n\tfirstUpdated() {\n\t\tif (this.autofocus) {\n\t\t\tthis.focus()\n\t\t}\n\n\t\t// Subscribe to 'input' changes\n\t\tfromEvent<InputEvent>(this.inputElement, 'input')\n\t\t\t.pipe(\n\t\t\t\tmap(event => (event.target as HTMLInputElement).value),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t)\n\t\t\t.subscribe(value => {\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Subscribe to 'change' changes (on blur for native inputs)\n\t\tfromEvent<Event>(this.inputElement, 'change')\n\t\t\t.pipe(\n\t\t\t\tmap(event => (event.target as HTMLInputElement).value),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t)\n\t\t\t.subscribe(value => {\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Emit custom event on Enter key\n\t\tfromEvent<KeyboardEvent>(this.inputElement, 'keyup')\n\t\t\t.pipe(filter(event => event.key === 'Enter'))\n\t\t\t.subscribe(event => {\n\t\t\t\tconst { value } = event.target as HTMLInputElement\n\t\t\t\t// You can remove `distinctUntilChanged()` here if you want *every* Enter\n\t\t\t\t// press to dispatch, even if the value hasn't changed.\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('enter', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Detect autofill animation\n\t\tfromEvent<AnimationEvent>(this.inputElement, 'animationstart')\n\t\t\t.pipe(filter(ev => ev.animationName === 'onAutoFillStart'))\n\t\t\t.subscribe(event => {\n\t\t\t\tconst { value } = event.target as HTMLInputElement\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\t}\n\n\t/** Selects all text within the input. */\n\tpublic select() {\n\t\treturn this.inputRef.value?.select()\n\t}\n\n\t/** Returns the internal validity state object. */\n\tpublic getValidity(): ValidityState | undefined {\n\t\treturn this.inputRef.value?.validity\n\t}\n\n\t/**\n\t * Override focus so that focusing <schmancy-input> actually focuses\n\t * the internal <input>.\n\t */\n\tpublic override focus(options?: FocusOptions) {\n\t\tthis.inputRef.value?.focus(options)\n\t\tthis.dispatchEvent(new Event('focus'))\n\t}\n\n\t/**\n\t * Same with click; bubble a click out if needed, but delegate to internal input.\n\t */\n\tpublic override click() {\n\t\tthis.inputRef.value?.click()\n\t\tthis.dispatchEvent(new Event('click'))\n\t}\n\n\t/**\n\t * Same with blur; bubble the event.\n\t */\n\tpublic override blur() {\n\t\tthis.inputRef.value?.blur()\n\t\tthis.dispatchEvent(new Event('blur'))\n\t}\n\n\tprotected override render() {\n\t\tconst inputClasses = {\n\t\t\t'w-full flex-1 h-[50px] rounded-[8px] border-0 px-[8px] sm:px-[12px] md:px-[16px]': true,\n\t\t\t'disabled:opacity-40 disabled:cursor-not-allowed': true,\n\t\t\t'placeholder:text-muted': true,\n\t\t\t'ring-0 ring-inset focus:ring-1 focus:ring-inset': true,\n\t\t\t'ring-primary-default ring-outline focus:ring-primary-default': !this.error,\n\t\t\t'ring-error-default focus:ring-error-default': this.error,\n\t\t\t'caret-transparent focus:outline-hidden cursor-pointer text-select-none': this.readonly,\n\t\t\t'cursor-pointer': this.clickable,\n\t\t\t'text-center': this.align === 'center',\n\t\t\t'text-right': this.align === 'right',\n\t\t}\n\t\tconst labelClasses = {\n\t\t\t'opacity-40': this.disabled,\n\t\t\t'block mb-[4px]': true,\n\t\t}\n\t\treturn html`\n\t\t\t${when(\n\t\t\t\tthis.label,\n\t\t\t\t() => html`\n\t\t\t\t\t<label\n\t\t\t\t\t\t${color({\n\t\t\t\t\t\t\tcolor: this.error ? SchmancyTheme.sys.color.error.default : SchmancyTheme.sys.color.primary.default,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tclass=\"${classMap(labelClasses)}\"\n\t\t\t\t\t\tfor=${this.id}\n\t\t\t\t\t>\n\t\t\t\t\t\t<schmancy-typography type=\"label\" token=\"lg\">${this.label}</schmancy-typography>\n\t\t\t\t\t</label>\n\t\t\t\t`,\n\t\t\t)}\n\t\t\t<input\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.highest,\n\t\t\t\t\tcolor: SchmancyTheme.sys.color.surface.on,\n\t\t\t\t})}\n\t\t\t\t${ref(this.inputRef)}\n\t\t\t\t.value=${this.value}\n\t\t\t\tid=${this.id}\n\t\t\t\tname=${this.name}\n\t\t\t\ttype=${this.type}\n\t\t\t\tstep=${ifDefined(this.step)}\n\t\t\t\t.autocomplete=${this.autocomplete}\n\t\t\t\tplaceholder=${this.placeholder}\n\t\t\t\t?required=${this.required}\n\t\t\t\tinputmode=${ifDefined(this.inputmode)}\n\t\t\t\tclass=${classMap(inputClasses)}\n\t\t\t\t?disabled=${this.disabled}\n\t\t\t\t?readOnly=${this.readonly}\n\t\t\t\tminlength=${ifDefined(this.minlength)}\n\t\t\t\tmaxlength=${ifDefined(this.maxlength)}\n\t\t\t\tmin=${ifDefined(this.min)}\n\t\t\t\tmax=${ifDefined(this.max)}\n\t\t\t\tpattern=${ifDefined(this.pattern)}\n\t\t\t/>\n\t\t\t${when(\n\t\t\t\tthis.hint,\n\t\t\t\t() => html`\n\t\t\t\t\t<schmancy-typography\n\t\t\t\t\t\t${color({\n\t\t\t\t\t\t\tcolor: this.error ? SchmancyTheme.sys.color.error.default : SchmancyTheme.sys.color.primary.default,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tclass=\"pt-[4px]\"\n\t\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t\ttoken=\"sm\"\n\t\t\t\t\t>\n\t\t\t\t\t\t${this.hint}\n\t\t\t\t\t</schmancy-typography>\n\t\t\t\t`,\n\t\t\t)}\n\t\t`\n\t}\n}\n"],"names":["SchmancyInput","TailwindElement","constructor","super","this","label","type","clickable","name","Date","now","placeholder","value","required","disabled","readonly","spellcheck","align","autofocus","autocomplete","tabIndex","error","inputRef","createRef","internals","attachInternals","form","changedProps","updated","has","setFormValue","reportValidity","checkValidity","message","setCustomValidity","focus","fromEvent","inputElement","pipe","map","event","target","distinctUntilChanged","subscribe","dispatchEvent","CustomEvent","detail","bubbles","composed","filter","key","ev","animationName","select","validity","options","Event","click","blur","inputClasses","labelClasses","html","when","color","SchmancyTheme","sys","default","primary","classMap","id","bgColor","surface","highest","on","ref","ifDefined","step","inputmode","minlength","maxlength","min","max","pattern","hint","formAssociated","shadowRootOptions","LitElement","delegatesFocus","__decorateClass","property","prototype","reflect","Boolean","String","Number","query","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";const h=require("lit"),r=require("lit/decorators.js"),m=require("lit/directives/class-map.js"),n=require("lit/directives/if-defined.js"),f=require("lit/directives/ref.js"),b=require("lit/directives/when.js"),p=require("rxjs");require("lit/directives/style-map.js");const v=require("./tailwind.mixin-C3pXEh-C.cjs"),d=require("./ripple-C2BHbhcS.cjs"),a=require("./theme.interface-Xg5Zi46a.cjs");var g=Object.defineProperty,E=Object.getOwnPropertyDescriptor,i=(e,o,c,l)=>{for(var u,s=l>1?void 0:l?E(o,c):o,y=e.length-1;y>=0;y--)(u=e[y])&&(s=(l?u(o,c,s):u(s))||s);return l&&s&&g(o,c,s),s};let t=class extends v.TailwindElement(){constructor(){if(super(),this.label="",this.type="text",this.clickable=!1,this.name="name_"+Date.now(),this.placeholder="",this.value="",this.required=!1,this.disabled=!1,this.readonly=!1,this.spellcheck=!1,this.align="left",this.autofocus=!1,this.autocomplete="off",this.tabIndex=0,this.error=!1,this.inputRef=f.createRef(),"attachInternals"in this)try{this.internals=this.attachInternals()}catch{this.internals=void 0}}get form(){var e;return((e=this.internals)==null?void 0:e.form)??null}updated(e){var o;super.updated(e),e.has("value")&&((o=this.internals)==null||o.setFormValue(this.value))}reportValidity(){var e;return(e=this.inputRef.value)==null?void 0:e.reportValidity()}checkValidity(){var e;return(e=this.inputRef.value)==null?void 0:e.checkValidity()}setCustomValidity(e){var o;(o=this.inputRef.value)==null||o.setCustomValidity(e)}firstUpdated(){this.autofocus&&this.focus(),p.fromEvent(this.inputElement,"input").pipe(p.map(e=>e.target.value),p.distinctUntilChanged()).subscribe(e=>{this.value=e,this.dispatchEvent(new CustomEvent("change",{detail:{value:e},bubbles:!0,composed:!0}))}),p.fromEvent(this.inputElement,"change").pipe(p.map(e=>e.target.value),p.distinctUntilChanged()).subscribe(e=>{this.value=e,this.dispatchEvent(new CustomEvent("change",{detail:{value:e},bubbles:!0,composed:!0}))}),p.fromEvent(this.inputElement,"keyup").pipe(p.filter(e=>e.key==="Enter")).subscribe(e=>{const{value:o}=e.target;this.value=o,this.dispatchEvent(new CustomEvent("change",{detail:{value:o},bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("enter",{detail:{value:o},bubbles:!0,composed:!0}))}),p.fromEvent(this.inputElement,"animationstart").pipe(p.filter(e=>e.animationName==="onAutoFillStart")).subscribe(e=>{const{value:o}=e.target;this.value=o,this.dispatchEvent(new CustomEvent("change",{detail:{value:o},bubbles:!0,composed:!0}))})}select(){var e;return(e=this.inputRef.value)==null?void 0:e.select()}getValidity(){var e;return(e=this.inputRef.value)==null?void 0:e.validity}focus(e){var o;(o=this.inputRef.value)==null||o.focus(e),this.dispatchEvent(new Event("focus"))}click(){var e;(e=this.inputRef.value)==null||e.click(),this.dispatchEvent(new Event("click"))}blur(){var e;(e=this.inputRef.value)==null||e.blur(),this.dispatchEvent(new Event("blur"))}render(){const e={"w-full flex-1 h-[50px] rounded-[8px] border-0 px-[8px] sm:px-[12px] md:px-[16px]":!0,"disabled:opacity-40 disabled:cursor-not-allowed":!0,"placeholder:text-muted":!0,"ring-0 ring-inset focus:ring-1 focus:ring-inset":!0,"ring-primary-default ring-outline focus:ring-primary-default":!this.error,"ring-error-default focus:ring-error-default":this.error,"caret-transparent focus:outline-hidden cursor-pointer text-select-none":this.readonly,"cursor-pointer":this.clickable,"text-center":this.align==="center","text-right":this.align==="right"},o={"opacity-40":this.disabled,"block mb-[4px]":!0};return h.html`
|
|
2
|
+
${b.when(this.label,()=>h.html`
|
|
3
|
+
<label
|
|
4
|
+
${d.color({color:this.error?a.SchmancyTheme.sys.color.error.default:a.SchmancyTheme.sys.color.primary.default})}
|
|
5
|
+
class="${m.classMap(o)}"
|
|
6
|
+
for=${this.id}
|
|
7
|
+
>
|
|
8
|
+
<schmancy-typography type="label" token="lg">${this.label}</schmancy-typography>
|
|
9
|
+
</label>
|
|
10
|
+
`)}
|
|
11
|
+
<input
|
|
12
|
+
${d.color({bgColor:a.SchmancyTheme.sys.color.surface.highest,color:a.SchmancyTheme.sys.color.surface.on})}
|
|
13
|
+
${f.ref(this.inputRef)}
|
|
14
|
+
.value=${this.value}
|
|
15
|
+
id=${this.id}
|
|
16
|
+
name=${this.name}
|
|
17
|
+
type=${this.type}
|
|
18
|
+
step=${n.ifDefined(this.step)}
|
|
19
|
+
.autocomplete=${this.autocomplete}
|
|
20
|
+
placeholder=${this.placeholder}
|
|
21
|
+
?required=${this.required}
|
|
22
|
+
inputmode=${n.ifDefined(this.inputmode)}
|
|
23
|
+
class=${m.classMap(e)}
|
|
24
|
+
?disabled=${this.disabled}
|
|
25
|
+
?readOnly=${this.readonly}
|
|
26
|
+
minlength=${n.ifDefined(this.minlength)}
|
|
27
|
+
maxlength=${n.ifDefined(this.maxlength)}
|
|
28
|
+
min=${n.ifDefined(this.min)}
|
|
29
|
+
max=${n.ifDefined(this.max)}
|
|
30
|
+
pattern=${n.ifDefined(this.pattern)}
|
|
31
|
+
/>
|
|
32
|
+
${b.when(this.hint,()=>h.html`
|
|
33
|
+
<schmancy-typography
|
|
34
|
+
${d.color({color:this.error?a.SchmancyTheme.sys.color.error.default:a.SchmancyTheme.sys.color.primary.default})}
|
|
35
|
+
class="pt-[4px]"
|
|
36
|
+
type="body"
|
|
37
|
+
token="sm"
|
|
38
|
+
>
|
|
39
|
+
${this.hint}
|
|
40
|
+
</schmancy-typography>
|
|
41
|
+
`)}
|
|
42
|
+
`}};t.formAssociated=!0,t.shadowRootOptions={...h.LitElement.shadowRootOptions,delegatesFocus:!0},i([r.property()],t.prototype,"label",2),i([r.property({reflect:!0})],t.prototype,"type",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"clickable",2),i([r.property()],t.prototype,"name",2),i([r.property()],t.prototype,"placeholder",2),i([r.property({type:String,reflect:!0})],t.prototype,"value",2),i([r.property({type:String,reflect:!0})],t.prototype,"pattern",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"required",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"disabled",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"readonly",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"spellcheck",2),i([r.property({type:String,reflect:!0})],t.prototype,"align",2),i([r.property()],t.prototype,"inputmode",2),i([r.property({type:Number})],t.prototype,"minlength",2),i([r.property({type:Number})],t.prototype,"maxlength",2),i([r.property()],t.prototype,"min",2),i([r.property()],t.prototype,"max",2),i([r.property({type:Number,reflect:!0})],t.prototype,"step",2),i([r.property({type:Boolean})],t.prototype,"autofocus",2),i([r.property({type:String})],t.prototype,"autocomplete",2),i([r.property({type:Number,reflect:!0})],t.prototype,"tabIndex",2),i([r.property()],t.prototype,"hint",2),i([r.property({type:Boolean,reflect:!0})],t.prototype,"error",2),i([r.query("input")],t.prototype,"inputElement",2),t=i([r.customElement("schmancy-input")],t);
|
|
43
|
+
//# sourceMappingURL=input-shCt07iX.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-shCt07iX.cjs","sources":["../src/input/input.ts"],"sourcesContent":["import { LitElement, html } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js' // <-- Import if not provided by TailwindElement\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { createRef, ref } from 'lit/directives/ref.js'\nimport { when } from 'lit/directives/when.js'\nimport { distinctUntilChanged, filter, fromEvent, map } from 'rxjs'\n\n// If TailwindElement extends LitElement and has extra mixins, import it.\n// Otherwise, just extend LitElement. Adjust accordingly.\nimport { TailwindElement } from '@mixins/index'\n\n// color directive + theme interface\nimport { color } from '@schmancy/directives'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\n\n// If you want to be form-associated, you can define the type on `ElementInternals`.\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-input': SchmancyInput\n\t}\n}\n\n/**\n * An autocomplete type (expand or customize as needed).\n */\ntype AutoFill =\n\t| 'off'\n\t| 'on'\n\t| 'name'\n\t| 'username'\n\t| 'email'\n\t| 'tel'\n\t| 'url'\n\t| 'new-password'\n\t| 'current-password'\n\t| 'one-time-code'\n\ntype EventDetails = {\n\tvalue: string\n}\n\nexport type SchmancyInputChangeEvent = CustomEvent<EventDetails>\n\n/**\n * `schmancy-input` – A custom input component.\n */\n@customElement('schmancy-input')\nexport default class SchmancyInput extends TailwindElement() {\n\t/**\n\t * The label of the control.\n\t * @attr\n\t * @type {string}\n\t * @default ''\n\t */\n\t@property() label = ''\n\n\t/**\n\t * The type of the control.\n\t * @attr\n\t * @default 'text'\n\t */\n\t@property({ reflect: true })\n\tpublic type:\n\t\t| 'email'\n\t\t| 'number'\n\t\t| 'password'\n\t\t| 'search'\n\t\t| 'tel'\n\t\t| 'text'\n\t\t| 'url'\n\t\t| 'date'\n\t\t| 'datetime'\n\t\t| 'time'\n\t\t| 'month'\n\t\t| 'week'\n\t\t| 'color'\n\t\t| 'file' = 'text'\n\n\t@property({ type: Boolean, reflect: true }) public clickable = false\n\n\t/**\n\t * The name of the control.\n\t * @attr\n\t * @default 'name_' + Date.now()\n\t */\n\t@property() name = 'name_' + Date.now()\n\n\t/**\n\t * The placeholder of the control.\n\t * @attr\n\t * @default ''\n\t */\n\t@property() placeholder = ''\n\n\t/**\n\t * The value of the control.\n\t * @attr\n\t * @default ''\n\t */\n\t@property({ type: String, reflect: true }) public value = ''\n\n\t/**\n\t * The pattern attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: String, reflect: true })\n\tpublic pattern?: string\n\n\t@property({ type: Boolean, reflect: true }) required = false\n\t@property({ type: Boolean, reflect: true }) disabled = false\n\t@property({ type: Boolean, reflect: true }) readonly = false\n\t@property({ type: Boolean, reflect: true }) spellcheck = false\n\n\t@property({ type: String, reflect: true }) align: 'left' | 'center' | 'right' = 'left'\n\n\t/**\n\t * The inputmode attribute of the control.\n\t * @attr\n\t * @default undefined\n\t */\n\t@property()\n\tpublic inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'\n\n\t/**\n\t * The minlength attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number })\n\tpublic minlength?: number\n\n\t/**\n\t * The maxlength attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number })\n\tpublic maxlength?: number\n\n\t/**\n\t * The min attribute of the control.\n\t * @attr\n\t */\n\t@property()\n\tpublic min?: string\n\n\t/**\n\t * The max attribute of the control.\n\t * @attr\n\t */\n\t@property()\n\tpublic max?: string\n\n\t/**\n\t * The step attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: Number, reflect: true })\n\tpublic step?: number\n\n\t/**\n\t * The autofocus attribute of the control.\n\t * @attr\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tpublic autofocus = false\n\n\t/**\n\t * The autocomplete attribute of the control.\n\t * @attr\n\t */\n\t@property({ type: String })\n\tpublic autocomplete: AutoFill = 'off'\n\n\t/**\n\t * tabIndex for focusing by tab key.\n\t */\n\t@property({ type: Number, reflect: true })\n\tpublic tabIndex = 0\n\n\t@property()\n\thint?: string\n\n\t@property({ type: Boolean, reflect: true }) public error = false\n\n\t@query('input') inputElement!: HTMLInputElement\n\tinputRef = createRef<HTMLInputElement>()\n\n\t/** Form-associated custom elements support. */\n\tstatic formAssociated = true\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tdelegatesFocus: true,\n\t}\n\n\tprivate internals?: ElementInternals\n\n\tconstructor() {\n\t\tsuper()\n\t\tif ('attachInternals' in this) {\n\t\t\ttry {\n\t\t\t\tthis.internals = this.attachInternals()\n\t\t\t} catch {\n\t\t\t\t// older browsers or polyfills might fail\n\t\t\t\tthis.internals = undefined\n\t\t\t}\n\t\t}\n\t}\n\n\tget form() {\n\t\treturn this.internals?.form ?? null\n\t}\n\n\t/**\n\t * (Optional) Whenever value changes, sync with form internals for\n\t * form submission (if you're using form-associated custom elements).\n\t */\n\tprotected updated(changedProps: Map<string, unknown>) {\n\t\tsuper.updated(changedProps)\n\t\tif (changedProps.has('value')) {\n\t\t\tthis.internals?.setFormValue(this.value)\n\t\t}\n\t}\n\n\t/** Checks for validity of the control and shows the browser message if it's invalid. */\n\tpublic reportValidity() {\n\t\treturn this.inputRef.value?.reportValidity()\n\t}\n\n\t/** Checks for validity of the control and emits the invalid event if it is invalid. */\n\tpublic checkValidity() {\n\t\treturn this.inputRef.value?.checkValidity()\n\t}\n\n\t/** Sets a custom validity message. */\n\tpublic setCustomValidity(message: string) {\n\t\tthis.inputRef.value?.setCustomValidity(message)\n\t}\n\n\tfirstUpdated() {\n\t\tif (this.autofocus) {\n\t\t\tthis.focus()\n\t\t}\n\n\t\t// Subscribe to 'input' changes\n\t\tfromEvent<InputEvent>(this.inputElement, 'input')\n\t\t\t.pipe(\n\t\t\t\tmap(event => (event.target as HTMLInputElement).value),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t)\n\t\t\t.subscribe(value => {\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Subscribe to 'change' changes (on blur for native inputs)\n\t\tfromEvent<Event>(this.inputElement, 'change')\n\t\t\t.pipe(\n\t\t\t\tmap(event => (event.target as HTMLInputElement).value),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t)\n\t\t\t.subscribe(value => {\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Emit custom event on Enter key\n\t\tfromEvent<KeyboardEvent>(this.inputElement, 'keyup')\n\t\t\t.pipe(filter(event => event.key === 'Enter'))\n\t\t\t.subscribe(event => {\n\t\t\t\tconst { value } = event.target as HTMLInputElement\n\t\t\t\t// You can remove `distinctUntilChanged()` here if you want *every* Enter\n\t\t\t\t// press to dispatch, even if the value hasn't changed.\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('enter', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\n\t\t// Detect autofill animation\n\t\tfromEvent<AnimationEvent>(this.inputElement, 'animationstart')\n\t\t\t.pipe(filter(ev => ev.animationName === 'onAutoFillStart'))\n\t\t\t.subscribe(event => {\n\t\t\t\tconst { value } = event.target as HTMLInputElement\n\t\t\t\tthis.value = value\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent<EventDetails>('change', {\n\t\t\t\t\t\tdetail: { value },\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\t}\n\n\t/** Selects all text within the input. */\n\tpublic select() {\n\t\treturn this.inputRef.value?.select()\n\t}\n\n\t/** Returns the internal validity state object. */\n\tpublic getValidity(): ValidityState | undefined {\n\t\treturn this.inputRef.value?.validity\n\t}\n\n\t/**\n\t * Override focus so that focusing <schmancy-input> actually focuses\n\t * the internal <input>.\n\t */\n\tpublic override focus(options?: FocusOptions) {\n\t\tthis.inputRef.value?.focus(options)\n\t\tthis.dispatchEvent(new Event('focus'))\n\t}\n\n\t/**\n\t * Same with click; bubble a click out if needed, but delegate to internal input.\n\t */\n\tpublic override click() {\n\t\tthis.inputRef.value?.click()\n\t\tthis.dispatchEvent(new Event('click'))\n\t}\n\n\t/**\n\t * Same with blur; bubble the event.\n\t */\n\tpublic override blur() {\n\t\tthis.inputRef.value?.blur()\n\t\tthis.dispatchEvent(new Event('blur'))\n\t}\n\n\tprotected override render() {\n\t\tconst inputClasses = {\n\t\t\t'w-full flex-1 h-[50px] rounded-[8px] border-0 px-[8px] sm:px-[12px] md:px-[16px]': true,\n\t\t\t'disabled:opacity-40 disabled:cursor-not-allowed': true,\n\t\t\t'placeholder:text-muted': true,\n\t\t\t'ring-0 ring-inset focus:ring-1 focus:ring-inset': true,\n\t\t\t'ring-primary-default ring-outline focus:ring-primary-default': !this.error,\n\t\t\t'ring-error-default focus:ring-error-default': this.error,\n\t\t\t'caret-transparent focus:outline-hidden cursor-pointer text-select-none': this.readonly,\n\t\t\t'cursor-pointer': this.clickable,\n\t\t\t'text-center': this.align === 'center',\n\t\t\t'text-right': this.align === 'right',\n\t\t}\n\t\tconst labelClasses = {\n\t\t\t'opacity-40': this.disabled,\n\t\t\t'block mb-[4px]': true,\n\t\t}\n\t\treturn html`\n\t\t\t${when(\n\t\t\t\tthis.label,\n\t\t\t\t() => html`\n\t\t\t\t\t<label\n\t\t\t\t\t\t${color({\n\t\t\t\t\t\t\tcolor: this.error ? SchmancyTheme.sys.color.error.default : SchmancyTheme.sys.color.primary.default,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tclass=\"${classMap(labelClasses)}\"\n\t\t\t\t\t\tfor=${this.id}\n\t\t\t\t\t>\n\t\t\t\t\t\t<schmancy-typography type=\"label\" token=\"lg\">${this.label}</schmancy-typography>\n\t\t\t\t\t</label>\n\t\t\t\t`,\n\t\t\t)}\n\t\t\t<input\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.highest,\n\t\t\t\t\tcolor: SchmancyTheme.sys.color.surface.on,\n\t\t\t\t})}\n\t\t\t\t${ref(this.inputRef)}\n\t\t\t\t.value=${this.value}\n\t\t\t\tid=${this.id}\n\t\t\t\tname=${this.name}\n\t\t\t\ttype=${this.type}\n\t\t\t\tstep=${ifDefined(this.step)}\n\t\t\t\t.autocomplete=${this.autocomplete}\n\t\t\t\tplaceholder=${this.placeholder}\n\t\t\t\t?required=${this.required}\n\t\t\t\tinputmode=${ifDefined(this.inputmode)}\n\t\t\t\tclass=${classMap(inputClasses)}\n\t\t\t\t?disabled=${this.disabled}\n\t\t\t\t?readOnly=${this.readonly}\n\t\t\t\tminlength=${ifDefined(this.minlength)}\n\t\t\t\tmaxlength=${ifDefined(this.maxlength)}\n\t\t\t\tmin=${ifDefined(this.min)}\n\t\t\t\tmax=${ifDefined(this.max)}\n\t\t\t\tpattern=${ifDefined(this.pattern)}\n\t\t\t/>\n\t\t\t${when(\n\t\t\t\tthis.hint,\n\t\t\t\t() => html`\n\t\t\t\t\t<schmancy-typography\n\t\t\t\t\t\t${color({\n\t\t\t\t\t\t\tcolor: this.error ? SchmancyTheme.sys.color.error.default : SchmancyTheme.sys.color.primary.default,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tclass=\"pt-[4px]\"\n\t\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t\ttoken=\"sm\"\n\t\t\t\t\t>\n\t\t\t\t\t\t${this.hint}\n\t\t\t\t\t</schmancy-typography>\n\t\t\t\t`,\n\t\t\t)}\n\t\t`\n\t}\n}\n"],"names":["SchmancyInput","TailwindElement","super","this","label","type","clickable","name","Date","now","placeholder","value","required","disabled","readonly","spellcheck","align","autofocus","autocomplete","tabIndex","error","inputRef","createRef","internals","attachInternals","form","changedProps","updated","has","setFormValue","reportValidity","checkValidity","message","setCustomValidity","focus","fromEvent","inputElement","pipe","map","event","target","distinctUntilChanged","subscribe","dispatchEvent","CustomEvent","detail","bubbles","composed","filter","key","ev","animationName","select","getValidity","validity","options","Event","click","blur","render","inputClasses","labelClasses","html","when","color","SchmancyTheme","sys","default","primary","classMap","id","bgColor","surface","highest","on","ref","ifDefined","step","inputmode","minlength","maxlength","min","max","pattern","hint","formAssociated","shadowRootOptions","LitElement","delegatesFocus","__decorateClass","property","prototype","reflect","Boolean","String","Number","query","customElement"],"mappings":"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"}
|
package/dist/input.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./input-
|
|
1
|
+
"use strict";require("./input-shCt07iX.cjs");
|
|
2
2
|
//# sourceMappingURL=input.cjs.map
|
package/dist/input.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./input-
|
|
1
|
+
import "./input-BNWPVs3H.js";
|
|
2
2
|
//# sourceMappingURL=input.js.map
|
package/dist/layout.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./scroll-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./scroll-CUpYxnFS.cjs");Object.defineProperty(exports,"SchmancyFlex",{enumerable:!0,get:()=>e.SchmancyFlex}),Object.defineProperty(exports,"SchmancyGrid",{enumerable:!0,get:()=>e.SchmancyGrid}),Object.defineProperty(exports,"SchmancyScroll",{enumerable:!0,get:()=>e.SchmancyScroll});
|
|
2
2
|
//# sourceMappingURL=layout.cjs.map
|
package/dist/layout.js
CHANGED
package/dist/list.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./teleport.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./teleport.component-BXtXmHVa.cjs");Object.defineProperty(exports,"List",{enumerable:!0,get:()=>e.List}),Object.defineProperty(exports,"SchmancyListItem",{enumerable:!0,get:()=>e.SchmancyListItem});
|
|
2
2
|
//# sourceMappingURL=list.cjs.map
|
package/dist/list.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as t, T as r } from "./tailwind.mixin-
|
|
1
|
+
import { B as t, T as r } from "./tailwind.mixin-C5OzBKVB.js";
|
|
2
2
|
const n = (s) => {
|
|
3
3
|
class e extends t(r(s)) {
|
|
4
4
|
constructor() {
|
|
@@ -12,4 +12,4 @@ const n = (s) => {
|
|
|
12
12
|
export {
|
|
13
13
|
n as $
|
|
14
14
|
};
|
|
15
|
-
//# sourceMappingURL=litElement.mixin-
|
|
15
|
+
//# sourceMappingURL=litElement.mixin-Bn8Rl6md.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"litElement.mixin-
|
|
1
|
+
{"version":3,"file":"litElement.mixin-Bn8Rl6md.js","sources":["../mixins/litElement.mixin.ts"],"sourcesContent":["import { CSSResult, LitElement } from 'lit'\nimport { TailwindElement } from './tailwind.mixin'\nimport { BaseElement, IBaseMixin } from './baseElement'\nimport { Constructor } from './constructor'\n\nexport const $LitElement = <T extends CSSResult>(componentStyle?: T) => {\n\tclass TailwindMixinClass extends BaseElement(TailwindElement(componentStyle)) {\n\t\tdisconnectedCallback = () => {\n\t\t\tsuper.disconnectedCallback()\n\t\t}\n\t}\n\treturn TailwindMixinClass as CustomElementConstructor &\n\t\tConstructor<LitElement> &\n\t\tConstructor<IBaseMixin> /* see \"typing the subclass\" below */\n}\n"],"names":["$LitElement","componentStyle","TailwindMixinClass","BaseElement","TailwindElement","super","arguments","this","disconnectedCallback"],"mappings":";AAKa,MAAAA,IAAoCC,CAAAA;EAChD,MAAMC,UAA2BC,EAAYC,EAAgBH,CAA7D,CAAA,EAAA;AAAA,IAAA;AAAAI,YAAAC,GAAAA,SAAAA,GACCC,KAAAC,uBAAuB,MACtBH;AAAAA,cAAMG;MAAqB;AAAA,IAC5B;AAAA,EAAA;AAEM,SAAAN;AAAA;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./tailwind.mixin-
|
|
2
|
-
//# sourceMappingURL=litElement.mixin-
|
|
1
|
+
"use strict";const e=require("./tailwind.mixin-C3pXEh-C.cjs");exports.$LitElement=t=>{class s extends e.BaseElement(e.TailwindElement(t)){constructor(){super(...arguments),this.disconnectedCallback=()=>{super.disconnectedCallback()}}}return s};
|
|
2
|
+
//# sourceMappingURL=litElement.mixin-CqG5Vzn4.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"litElement.mixin-
|
|
1
|
+
{"version":3,"file":"litElement.mixin-CqG5Vzn4.cjs","sources":["../mixins/litElement.mixin.ts"],"sourcesContent":["import { CSSResult, LitElement } from 'lit'\nimport { TailwindElement } from './tailwind.mixin'\nimport { BaseElement, IBaseMixin } from './baseElement'\nimport { Constructor } from './constructor'\n\nexport const $LitElement = <T extends CSSResult>(componentStyle?: T) => {\n\tclass TailwindMixinClass extends BaseElement(TailwindElement(componentStyle)) {\n\t\tdisconnectedCallback = () => {\n\t\t\tsuper.disconnectedCallback()\n\t\t}\n\t}\n\treturn TailwindMixinClass as CustomElementConstructor &\n\t\tConstructor<LitElement> &\n\t\tConstructor<IBaseMixin> /* see \"typing the subclass\" below */\n}\n"],"names":["componentStyle","TailwindMixinClass","BaseElement","TailwindElement","constructor","super","arguments","this","disconnectedCallback"],"mappings":"kFAKiDA,GAAAA,CAChD,MAAMC,UAA2BC,EAAAA,YAAYC,kBAAgBH,IAA7D,aAAAI,CAAAC,MAAAC,GAAAA,SAAAA,EACCC,KAAAC,qBAAuB,IACtBH,CAAAA,MAAMG,qBAAqB,CAAA,CAC5B,CAEM,CAAA,OAAAP,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const i=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const d=require("./litElement.mixin-
|
|
1
|
+
"use strict";const i=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const d=require("./litElement.mixin-CqG5Vzn4.cjs"),b=require("./tailwind.mixin-C3pXEh-C.cjs"),p=require("lit"),l=require("lit/decorators.js"),m=require("@floating-ui/dom");var y=Object.defineProperty,f=Object.getOwnPropertyDescriptor;let h=class extends d.$LitElement(p.css`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
}
|
|
@@ -28,4 +28,4 @@
|
|
|
28
28
|
<slot></slot>
|
|
29
29
|
</schmancy-list>
|
|
30
30
|
`}};u([l.state()],c.prototype,"open",2),u([l.queryAssignedElements({flatten:!0,slot:"button"})],c.prototype,"buttonElement",2),u([l.query("#menu")],c.prototype,"menuElement",2),c=u([l.customElement("schmancy-menu")],c);
|
|
31
|
-
//# sourceMappingURL=menu-
|
|
31
|
+
//# sourceMappingURL=menu-BsjLQTfd.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-
|
|
1
|
+
{"version":3,"file":"menu-BsjLQTfd.cjs","sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { fromEvent, takeUntil } from 'rxjs'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\te.stopPropagation()\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-menu-item-click', {\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\t}\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { computePosition, flip, offset, shift } from '@floating-ui/dom'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, fromEvent, switchMap, takeUntil, tap } from 'rxjs'\n\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends TailwindElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t}\n`) {\n\t@state() open = false\n\n\t@queryAssignedElements({ flatten: true, slot: 'button' })\n\tbuttonElement!: Array<HTMLElement>\n\n\t@query('#menu') menuElement!: HTMLElement\n\n\topenMenu() {\n\t\tthis.open = true\n\t\tthis.positionMenu()\n\n\t\t// Approx. \"easeInQuad\" with a cubic-bezier:\n\t\tconst animation = this.menuElement.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'scale(0.95)' },\n\t\t\t\t{ opacity: 1, transform: 'scale(1)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 100,\n\t\t\t\teasing: 'cubic-bezier(0.55, 0.085, 0.68, 0.53)',\n\t\t\t},\n\t\t)\n\n\t\treturn new Promise<void>(resolve => {\n\t\t\tanimation.onfinish = () => resolve()\n\t\t})\n\t}\n\n\tcloseMenu(e?: Event) {\n\t\tif (e && e instanceof Event) {\n\t\t\te.preventDefault()\n\t\t\te.stopPropagation()\n\t\t}\n\n\t\tconst animation = this.menuElement.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 1, transform: 'scale(1)' },\n\t\t\t\t{ opacity: 0, transform: 'scale(0.95)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 75,\n\t\t\t\teasing: 'cubic-bezier(0.55, 0.085, 0.68, 0.53)',\n\t\t\t},\n\t\t)\n\n\t\treturn new Promise<void>(resolve => {\n\t\t\tanimation.onfinish = () => {\n\t\t\t\tthis.open = false\n\t\t\t\tresolve()\n\t\t\t}\n\t\t})\n\t}\n\n\tasync positionMenu() {\n\t\tif (this.buttonElement.length && this.menuElement) {\n\t\t\tconst { x, y } = await computePosition(this.buttonElement[0], this.menuElement, {\n\t\t\t\tplacement: 'bottom-start',\n\t\t\t\tmiddleware: [offset(5), flip(), shift({ padding: 5 })],\n\t\t\t})\n\n\t\t\tObject.assign(this.menuElement.style, {\n\t\t\t\tleft: `${x}px`,\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tposition: 'absolute',\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected firstUpdated(): void {\n\t\tfromEvent(this.buttonElement, 'click')\n\t\t\t.pipe(\n\t\t\t\ttap(e => e.stopPropagation()),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tswitchMap(() => from(this.openMenu())),\n\t\t\t)\n\t\t\t.subscribe()\n\n\t\tfromEvent(this, 'schmancy-menu-item-click')\n\t\t\t.pipe(\n\t\t\t\ttap(e => e.stopPropagation()),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tswitchMap(() => from(this.closeMenu())),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"button\">\n\t\t\t\t<schmancy-icon-button> more_vert</schmancy-icon-button>\n\t\t\t</slot>\n\t\t\t<div class=\"fixed inset-0 z-50\" .hidden=${!this.open} @click=${this.closeMenu}></div>\n\t\t\t<schmancy-list\n\t\t\t\tid=\"menu\"\n\t\t\t\t.hidden=${!this.open}\n\t\t\t\tclass=\"absolute z-50 border-outlineVariant rounded-md \n min-w-[160px] max-w-[320px] w-max bg-surface-default\"\n\t\t\t\trole=\"menu\"\n\t\t\t\taria-orientation=\"vertical\"\n\t\t\t\taria-labelledby=\"options-menu-4-button\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"names":["SchmancyMenuItem","$LitElement","css","super","connectedCallback","fromEvent","this","pipe","takeUntil","disconnecting","subscribe","e","stopPropagation","dispatchEvent","CustomEvent","bubbles","composed","html","customElement","SchmancyMenu","TailwindElement","constructor","arguments","open","positionMenu","animation","menuElement","animate","opacity","transform","duration","easing","Promise","resolve","onfinish","Event","preventDefault","buttonElement","length","x","y","computePosition","placement","middleware","offset","flip","shift","padding","Object","assign","style","left","top","position","firstUpdated","tap","switchMap","from","openMenu","closeMenu","render","__decorateClass","state","prototype","queryAssignedElements","flatten","slot","query"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { fromEvent as m, takeUntil as l, tap as p, switchMap as u, from as h } from "rxjs";
|
|
2
2
|
import "lit/directives/class-map.js";
|
|
3
3
|
import "lit/directives/style-map.js";
|
|
4
|
-
import { $ as g } from "./litElement.mixin-
|
|
5
|
-
import { T as v } from "./tailwind.mixin-
|
|
4
|
+
import { $ as g } from "./litElement.mixin-Bn8Rl6md.js";
|
|
5
|
+
import { T as v } from "./tailwind.mixin-C5OzBKVB.js";
|
|
6
6
|
import { css as b, html as f } from "lit";
|
|
7
7
|
import { customElement as y, state as E, queryAssignedElements as w, query as k } from "lit/decorators.js";
|
|
8
8
|
import { computePosition as x, offset as P, flip as M, shift as O } from "@floating-ui/dom";
|
|
@@ -88,4 +88,4 @@ let r = class extends v(b`
|
|
|
88
88
|
}
|
|
89
89
|
};
|
|
90
90
|
c([E()], r.prototype, "open", 2), c([w({ flatten: !0, slot: "button" })], r.prototype, "buttonElement", 2), c([k("#menu")], r.prototype, "menuElement", 2), r = c([y("schmancy-menu")], r);
|
|
91
|
-
//# sourceMappingURL=menu-
|
|
91
|
+
//# sourceMappingURL=menu-CK0Aunqg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-
|
|
1
|
+
{"version":3,"file":"menu-CK0Aunqg.js","sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { fromEvent, takeUntil } from 'rxjs'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\te.stopPropagation()\n\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-menu-item-click', {\n\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t})\n\t}\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { computePosition, flip, offset, shift } from '@floating-ui/dom'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, fromEvent, switchMap, takeUntil, tap } from 'rxjs'\n\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends TailwindElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t}\n`) {\n\t@state() open = false\n\n\t@queryAssignedElements({ flatten: true, slot: 'button' })\n\tbuttonElement!: Array<HTMLElement>\n\n\t@query('#menu') menuElement!: HTMLElement\n\n\topenMenu() {\n\t\tthis.open = true\n\t\tthis.positionMenu()\n\n\t\t// Approx. \"easeInQuad\" with a cubic-bezier:\n\t\tconst animation = this.menuElement.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'scale(0.95)' },\n\t\t\t\t{ opacity: 1, transform: 'scale(1)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 100,\n\t\t\t\teasing: 'cubic-bezier(0.55, 0.085, 0.68, 0.53)',\n\t\t\t},\n\t\t)\n\n\t\treturn new Promise<void>(resolve => {\n\t\t\tanimation.onfinish = () => resolve()\n\t\t})\n\t}\n\n\tcloseMenu(e?: Event) {\n\t\tif (e && e instanceof Event) {\n\t\t\te.preventDefault()\n\t\t\te.stopPropagation()\n\t\t}\n\n\t\tconst animation = this.menuElement.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 1, transform: 'scale(1)' },\n\t\t\t\t{ opacity: 0, transform: 'scale(0.95)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 75,\n\t\t\t\teasing: 'cubic-bezier(0.55, 0.085, 0.68, 0.53)',\n\t\t\t},\n\t\t)\n\n\t\treturn new Promise<void>(resolve => {\n\t\t\tanimation.onfinish = () => {\n\t\t\t\tthis.open = false\n\t\t\t\tresolve()\n\t\t\t}\n\t\t})\n\t}\n\n\tasync positionMenu() {\n\t\tif (this.buttonElement.length && this.menuElement) {\n\t\t\tconst { x, y } = await computePosition(this.buttonElement[0], this.menuElement, {\n\t\t\t\tplacement: 'bottom-start',\n\t\t\t\tmiddleware: [offset(5), flip(), shift({ padding: 5 })],\n\t\t\t})\n\n\t\t\tObject.assign(this.menuElement.style, {\n\t\t\t\tleft: `${x}px`,\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tposition: 'absolute',\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected firstUpdated(): void {\n\t\tfromEvent(this.buttonElement, 'click')\n\t\t\t.pipe(\n\t\t\t\ttap(e => e.stopPropagation()),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tswitchMap(() => from(this.openMenu())),\n\t\t\t)\n\t\t\t.subscribe()\n\n\t\tfromEvent(this, 'schmancy-menu-item-click')\n\t\t\t.pipe(\n\t\t\t\ttap(e => e.stopPropagation()),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tswitchMap(() => from(this.closeMenu())),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"button\">\n\t\t\t\t<schmancy-icon-button> more_vert</schmancy-icon-button>\n\t\t\t</slot>\n\t\t\t<div class=\"fixed inset-0 z-50\" .hidden=${!this.open} @click=${this.closeMenu}></div>\n\t\t\t<schmancy-list\n\t\t\t\tid=\"menu\"\n\t\t\t\t.hidden=${!this.open}\n\t\t\t\tclass=\"absolute z-50 border-outlineVariant rounded-md \n min-w-[160px] max-w-[320px] w-max bg-surface-default\"\n\t\t\t\trole=\"menu\"\n\t\t\t\taria-orientation=\"vertical\"\n\t\t\t\taria-labelledby=\"options-menu-4-button\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"names":["SchmancyMenuItem","$LitElement","css","super","connectedCallback","fromEvent","this","pipe","takeUntil","disconnecting","subscribe","e","stopPropagation","dispatchEvent","CustomEvent","bubbles","composed","render","html","customElement","SchmancyMenu","TailwindElement","arguments","open","openMenu","positionMenu","animation","menuElement","animate","opacity","transform","duration","easing","Promise","resolve","onfinish","Event","preventDefault","buttonElement","length","x","y","computePosition","placement","middleware","offset","flip","shift","padding","Object","assign","style","left","top","position","firstUpdated","tap","switchMap","from","closeMenu","__decorateClass","state","prototype","queryAssignedElements","flatten","slot","query"],"mappings":"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"}
|
package/dist/menu.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./menu-
|
|
1
|
+
"use strict";require("./menu-BsjLQTfd.cjs");
|
|
2
2
|
//# sourceMappingURL=menu.cjs.map
|
package/dist/menu.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./menu-
|
|
1
|
+
import "./menu-CK0Aunqg.js";
|
|
2
2
|
//# sourceMappingURL=menu.js.map
|
package/dist/nav-drawer.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./teleport.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./teleport.component-BXtXmHVa.cjs");Object.defineProperty(exports,"SchmancyDrawerAppbar",{enumerable:!0,get:()=>e.SchmancyDrawerAppbar}),exports.SchmancyDrawerNavbarMode=e.SchmancyDrawerNavbarMode,exports.SchmancyDrawerNavbarState=e.SchmancyDrawerNavbarState,Object.defineProperty(exports,"SchmancyNavigationDrawer",{enumerable:!0,get:()=>e.SchmancyNavigationDrawer}),Object.defineProperty(exports,"SchmancyNavigationDrawerContent",{enumerable:!0,get:()=>e.SchmancyNavigationDrawerContent}),Object.defineProperty(exports,"SchmancyNavigationDrawerSidebar",{enumerable:!0,get:()=>e.SchmancyNavigationDrawerSidebar}),exports.schmancyNavDrawer=e.schmancyNavDrawer;
|
|
2
2
|
//# sourceMappingURL=nav-drawer.cjs.map
|
package/dist/nav-drawer.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j as c, l as n, m as e, n as m, k as i, o, i as s } from "./teleport.component-
|
|
1
|
+
import { j as c, l as n, m as e, n as m, k as i, o, i as s } from "./teleport.component-Cq8hZD_o.js";
|
|
2
2
|
export {
|
|
3
3
|
c as SchmancyDrawerAppbar,
|
|
4
4
|
n as SchmancyDrawerNavbarMode,
|
package/dist/notification.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./outlet-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./outlet-BMkGxj9Y.cjs");exports.$notify=e.$notify,Object.defineProperty(exports,"SchmancyNotification",{enumerable:!0,get:()=>e.SchmancyNotification}),Object.defineProperty(exports,"SchmancyNotificationOutlet",{enumerable:!0,get:()=>e.SchmancyNotificationOutlet});
|
|
2
2
|
//# sourceMappingURL=notification.cjs.map
|
package/dist/notification.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "rxjs";
|
|
2
2
|
import "lit/directives/class-map.js";
|
|
3
3
|
import "lit/directives/style-map.js";
|
|
4
|
-
import { T as c } from "./tailwind.mixin-
|
|
4
|
+
import { T as c } from "./tailwind.mixin-C5OzBKVB.js";
|
|
5
5
|
import { html as h } from "lit";
|
|
6
6
|
import { property as p, customElement as u } from "lit/decorators.js";
|
|
7
7
|
var d = Object.defineProperty, y = Object.getOwnPropertyDescriptor, i = (t, e, n, s) => {
|
|
@@ -37,4 +37,4 @@ let r = class extends c() {
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
i([p({ type: String, reflect: !0 })], r.prototype, "value", 2), i([p({ type: String, reflect: !0 })], r.prototype, "label", 2), i([p({ type: Boolean })], r.prototype, "selected", 2), r = i([u("schmancy-option")], r);
|
|
40
|
-
//# sourceMappingURL=option-
|
|
40
|
+
//# sourceMappingURL=option-C3ovVy8Q.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"option-
|
|
1
|
+
{"version":3,"file":"option-C3ovVy8Q.js","sources":["../src/option/option.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nexport type SchmancyOptionChangeEvent = CustomEvent<{\n\tvalue: string\n\tlabel: string\n}>\n@customElement('schmancy-option')\nexport default class SchmancyOption extends TailwindElement() {\n\t@property({ type: String, reflect: true }) value: string = ''\n\t@property({ type: String, reflect: true }) label: string | undefined\n\t@property({ type: Boolean }) selected: boolean = false\n\n\thandleOptionClick(option: string) {\n\t\tthis.value = option\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent('click', {\n\t\t\t\tdetail: { value: option, label: this.label ?? this.innerText },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t}) as SchmancyOptionChangeEvent,\n\t\t)\n\t}\n\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'font-semibold relative cursor-pointer py-2 px-3': true,\n\t\t\t'bg-secondary-container text-secondery-onContainer': this.selected,\n\t\t}\n\t\tconst stateLayerClasses = {\n\t\t\t'duration-500 transition-opacity': true,\n\t\t\t'hover:bg-surface-on opacity-[0.08] cursor-pointer absolute inset-0': true,\n\t\t}\n\n\t\treturn html` <li\n\t\t\ttabindex=\"0\"\n\t\t\tclass=\"${this.classMap(classes)}\"\n\t\t\trole=\"option\"\n\t\t\t@click=${e => {\n\t\t\t\te.stopPropagation()\n\t\t\t\te.preventDefault()\n\t\t\t\tthis.handleOptionClick(this.value)\n\t\t\t}}\n\t\t\t@keydown=${e => {\n\t\t\t\tif (e.key === 'Enter' || e.key === ' ') {\n\t\t\t\t\te.stopPropagation()\n\t\t\t\t\te.preventDefault()\n\t\t\t\t\tthis.handleOptionClick(this.value)\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<div class=\"${this.classMap(stateLayerClasses)}\"></div>\n\t\t\t<schmancy-flex align=\"center\" justify=\"between\">\n\t\t\t\t<slot></slot>\n\t\t\t\t<slot name=\"support\"></slot>\n\t\t\t</schmancy-flex>\n\t\t</li>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-option': SchmancyOption\n\t}\n}\n"],"names":["SchmancyOption","TailwindElement","super","arguments","this","value","selected","option","dispatchEvent","CustomEvent","detail","label","innerText","bubbles","composed","classes","html","classMap","e","stopPropagation","preventDefault","handleOptionClick","key","__decorateClass","property","type","String","reflect","prototype","Boolean","customElement"],"mappings":";;;;;;;;;;AAQA,IAAqBA,IAArB,cAA4CC,EAA5C,EAAA;AAAA,EAAA,cAAAC;AAAAA,UAAAA,GAAAC,SAC4DC,GAAAA,KAAAC,QAAA,IAEVD,KAAAE,WAAA;AAAA,EAAA;AAAA,EAEjD,kBAAkBC,GAAAA;AACjBH,SAAKC,QAAQE,GACRH,KAAAI,cACJ,IAAIC,YAAY,SAAS,EACxBC,QAAQ,EAAEL,OAAOE,GAAQI,OAAOP,KAAKO,SAASP,KAAKQ,UACnDC,GAAAA,SAAAA,IACAC,UAAAA;EAEF;AAAA,EAGS,SACT;AAAA,UAAMC,IAAU,EACf,mDAAmD,IACnD,qDAAqDX,KAAKE,SAOpD;AAAA,WAAAU;AAAAA;AAAAA,YAEGZ,KAAKa,SAASF,CAAAA,CAAAA;AAAAA;AAAAA,YAETG,CAAAA,MAAAA;AACbA,MAAAA,EAAEC,gBACFD,GAAAA,EAAEE,kBACGhB,KAAAiB,kBAAkBjB,KAAKC,KAAK;AAAA,IAAA,CAAA;AAAA,cAElBa,CAAAA,MAAAA;AACD,MAAVA,EAAEI,QAAQ,WAAWJ,EAAEI,QAAQ,QAClCJ,EAAEC,gBAAAA,GACFD,EAAEE,eAAAA,GACGhB,KAAAiB,kBAAkBjB,KAAKC,KAAK;AAAA,IAAA,CAAA;AAAA;AAAA,iBAIrBD,KAAKa,SAtBM,EACzB,mCAAmC,IACnC,sEAAsE,GAAA,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAoBxB;AAAA;AA1CLM,EAAA,CAA1CC,EAAS,EAAEC,MAAMC,QAAQC,SAAS,GAAA,CAAA,CAAA,GADf3B,EACuB4B,WAAA,SAAA,CACAL,GAAAA,EAAA,CAA1CC,EAAS,EAAEC,MAAMC,QAAQC,SAAAA,GAFN3B,CAAAA,CAAAA,GAAAA,EAEuB4B,WAAA,SAAA,CAAA,GACdL,EAAA,CAA5BC,EAAS,EAAEC,MAAMI,QAHE7B,CAAAA,CAAAA,GAAAA,EAGS4B,WAAA,YAAA,CAAA,GAHT5B,IAArBuB,EAAA,CADCO,EAAc,iBACM9B,CAAAA,GAAAA,CAAAA;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const c=require("./tailwind.mixin-
|
|
1
|
+
"use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const c=require("./tailwind.mixin-C3pXEh-C.cjs"),u=require("lit"),i=require("lit/decorators.js");var h=Object.defineProperty,y=Object.getOwnPropertyDescriptor,n=(t,e,a,s)=>{for(var l,r=s>1?void 0:s?y(e,a):e,p=t.length-1;p>=0;p--)(l=t[p])&&(r=(s?l(e,a,r):l(r))||r);return s&&r&&h(e,a,r),r};let o=class extends c.TailwindElement(){constructor(){super(...arguments),this.value="",this.selected=!1}handleOptionClick(t){this.value=t,this.dispatchEvent(new CustomEvent("click",{detail:{value:t,label:this.label??this.innerText},bubbles:!0,composed:!0}))}render(){const t={"font-semibold relative cursor-pointer py-2 px-3":!0,"bg-secondary-container text-secondery-onContainer":this.selected};return u.html` <li
|
|
2
2
|
tabindex="0"
|
|
3
3
|
class="${this.classMap(t)}"
|
|
4
4
|
role="option"
|
|
@@ -11,4 +11,4 @@
|
|
|
11
11
|
<slot name="support"></slot>
|
|
12
12
|
</schmancy-flex>
|
|
13
13
|
</li>`}};n([i.property({type:String,reflect:!0})],o.prototype,"value",2),n([i.property({type:String,reflect:!0})],o.prototype,"label",2),n([i.property({type:Boolean})],o.prototype,"selected",2),o=n([i.customElement("schmancy-option")],o);
|
|
14
|
-
//# sourceMappingURL=option-
|
|
14
|
+
//# sourceMappingURL=option-CEN9FFeV.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"option-
|
|
1
|
+
{"version":3,"file":"option-CEN9FFeV.cjs","sources":["../src/option/option.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nexport type SchmancyOptionChangeEvent = CustomEvent<{\n\tvalue: string\n\tlabel: string\n}>\n@customElement('schmancy-option')\nexport default class SchmancyOption extends TailwindElement() {\n\t@property({ type: String, reflect: true }) value: string = ''\n\t@property({ type: String, reflect: true }) label: string | undefined\n\t@property({ type: Boolean }) selected: boolean = false\n\n\thandleOptionClick(option: string) {\n\t\tthis.value = option\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent('click', {\n\t\t\t\tdetail: { value: option, label: this.label ?? this.innerText },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t}) as SchmancyOptionChangeEvent,\n\t\t)\n\t}\n\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'font-semibold relative cursor-pointer py-2 px-3': true,\n\t\t\t'bg-secondary-container text-secondery-onContainer': this.selected,\n\t\t}\n\t\tconst stateLayerClasses = {\n\t\t\t'duration-500 transition-opacity': true,\n\t\t\t'hover:bg-surface-on opacity-[0.08] cursor-pointer absolute inset-0': true,\n\t\t}\n\n\t\treturn html` <li\n\t\t\ttabindex=\"0\"\n\t\t\tclass=\"${this.classMap(classes)}\"\n\t\t\trole=\"option\"\n\t\t\t@click=${e => {\n\t\t\t\te.stopPropagation()\n\t\t\t\te.preventDefault()\n\t\t\t\tthis.handleOptionClick(this.value)\n\t\t\t}}\n\t\t\t@keydown=${e => {\n\t\t\t\tif (e.key === 'Enter' || e.key === ' ') {\n\t\t\t\t\te.stopPropagation()\n\t\t\t\t\te.preventDefault()\n\t\t\t\t\tthis.handleOptionClick(this.value)\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<div class=\"${this.classMap(stateLayerClasses)}\"></div>\n\t\t\t<schmancy-flex align=\"center\" justify=\"between\">\n\t\t\t\t<slot></slot>\n\t\t\t\t<slot name=\"support\"></slot>\n\t\t\t</schmancy-flex>\n\t\t</li>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-option': SchmancyOption\n\t}\n}\n"],"names":["SchmancyOption","TailwindElement","super","arguments","this","value","selected","option","dispatchEvent","CustomEvent","detail","label","innerText","bubbles","composed","render","classes","html","classMap","e","stopPropagation","preventDefault","handleOptionClick","key","__decorateClass","property","type","String","reflect","prototype","Boolean","customElement"],"mappings":"4YAQA,IAAqBA,EAArB,cAA4CC,EAAAA,gBAA5C,CAAA,CAAA,aAAAC,CAAAA,MAAAA,GAAAC,SAC4DC,EAAAA,KAAAC,MAAA,GAEVD,KAAAE,SAAAA,EAAA,CAEjD,kBAAkBC,EACjBH,CAAAA,KAAKC,MAAQE,EACRH,KAAAI,cACJ,IAAIC,YAAY,QAAS,CACxBC,OAAQ,CAAEL,MAAOE,EAAQI,MAAOP,KAAKO,OAASP,KAAKQ,SACnDC,EAAAA,QAAAA,GACAC,SAAAA,EAEF,CAAA,CAAA,CAAA,CAGS,QAAAC,CACT,MAAMC,EAAU,CACf,kDAAA,GACA,oDAAqDZ,KAAKE,QAAAA,EAOpD,OAAAW;;YAEGb,KAAKc,SAASF,CAAAA,CAAAA;AAAAA;AAAAA,YAETG,GAAAA,CACbA,EAAEC,gBACFD,EAAAA,EAAEE,iBACGjB,KAAAkB,kBAAkBlB,KAAKC,KAAK,CAAA,CAAA;AAAA,cAElBc,GAAAA,CACXA,EAAEI,MAAQ,SAAWJ,EAAEI,MAAQ,MAClCJ,EAAEC,gBAAAA,EACFD,EAAEE,eAAAA,EACGjB,KAAAkB,kBAAkBlB,KAAKC,KAAK,EAAA,CAAA;AAAA;AAAA,iBAIrBD,KAAKc,SAtBM,CACzB,kCAAmC,GACnC,qEAAsE,EAAA,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAoBxB,CAAA,EA1CLM,EAAA,CAA1CC,EAAAA,SAAS,CAAEC,KAAMC,OAAQC,QAAS,EAAA,CAAA,CAAA,EADf5B,EACuB6B,UAAA,QAAA,GACAL,EAAA,CAA1CC,EAAAA,SAAS,CAAEC,KAAMC,OAAQC,QAAAA,EAFN5B,CAAAA,CAAAA,EAAAA,EAEuB6B,UAAA,QAAA,CAAA,EACdL,EAAA,CAA5BC,WAAS,CAAEC,KAAMI,WAHE9B,EAGS6B,UAAA,WAAA,CAHT7B,EAAAA,EAArBwB,EAAA,CADCO,EAAAA,cAAc,iBACM/B,CAAAA,EAAAA,CAAAA"}
|