@mhmo91/schmancy 0.2.34 → 0.2.36
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/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +2 -2
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/surface-CHsZb-bX.js +41 -0
- package/dist/surface-CHsZb-bX.js.map +1 -0
- package/dist/surface-DsUZdYN6.cjs +15 -0
- package/dist/surface-DsUZdYN6.cjs.map +1 -0
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/{teleport.component-N1z4n9Fm.js → teleport.component-CrWThxV-.js} +2 -2
- package/dist/{teleport.component-N1z4n9Fm.js.map → teleport.component-CrWThxV-.js.map} +1 -1
- package/dist/{teleport.component-BXwdyvWD.cjs → teleport.component-Ctv1MZOo.cjs} +2 -2
- package/dist/{teleport.component-BXwdyvWD.cjs.map → teleport.component-Ctv1MZOo.cjs.map} +1 -1
- package/dist/teleport.js +1 -1
- package/package.json +1 -1
- package/types/src/surface/surface.d.ts +0 -1
- package/dist/surface-BbOInJUI.cjs +0 -7
- package/dist/surface-BbOInJUI.cjs.map +0 -1
- package/dist/surface-DmAWRMYt.js +0 -40
- package/dist/surface-DmAWRMYt.js.map +0 -1
package/dist/card.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./teleport.component-
|
|
1
|
+
"use strict";require("./teleport.component-Ctv1MZOo.cjs");
|
|
2
2
|
//# sourceMappingURL=card.cjs.map
|
package/dist/card.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./teleport.component-
|
|
1
|
+
import "./teleport.component-CrWThxV-.js";
|
|
2
2
|
//# sourceMappingURL=card.js.map
|
package/dist/content-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-Ctv1MZOo.cjs");Object.defineProperty(exports,"SchmancyContentDrawer",{enumerable:!0,get:()=>e.SchmancyContentDrawer}),exports.SchmancyContentDrawerID=e.SchmancyContentDrawerID,Object.defineProperty(exports,"SchmancyContentDrawerMain",{enumerable:!0,get:()=>e.SchmancyContentDrawerMain}),exports.SchmancyContentDrawerMaxHeight=e.SchmancyContentDrawerMaxHeight,exports.SchmancyContentDrawerMinWidth=e.SchmancyContentDrawerMinWidth,Object.defineProperty(exports,"SchmancyContentDrawerSheet",{enumerable:!0,get:()=>e.SchmancyContentDrawerSheet}),exports.SchmancyContentDrawerSheetMode=e.SchmancyContentDrawerSheetMode,exports.SchmancyContentDrawerSheetState=e.SchmancyContentDrawerSheetState,exports.schmancyContentDrawer=e.schmancyContentDrawer;
|
|
2
2
|
//# sourceMappingURL=content-drawer.cjs.map
|
package/dist/content-drawer.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { e as n, b as t, f as r, c, d as h, g as S, S as o, a as s, s as m } from "./teleport.component-
|
|
1
|
+
import { e as n, b as t, f as r, c, d as h, g as S, S as o, a as s, s as m } from "./teleport.component-CrWThxV-.js";
|
|
2
2
|
export {
|
|
3
3
|
n as SchmancyContentDrawer,
|
|
4
4
|
t as SchmancyContentDrawerID,
|
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("./animated-text-C5zM-91H.cjs");const r=require("./area.component-DCLLi1YA.cjs");require("./autocomplete-Dfq-Rhjy.cjs"),require("./spinner-8GhT-bLm.cjs");const o=require("./icon-button-DHiO0w8J.cjs"),e=require("./teleport.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("./animated-text-C5zM-91H.cjs");const r=require("./area.component-DCLLi1YA.cjs");require("./autocomplete-Dfq-Rhjy.cjs"),require("./spinner-8GhT-bLm.cjs");const o=require("./icon-button-DHiO0w8J.cjs"),e=require("./teleport.component-Ctv1MZOo.cjs"),S=require("./checkbox-BdsGj_z6.cjs");require("./chips-Z8e_rQtM.cjs");const u=require("./payment-card-form-B7tV2ttW.cjs");require("./date-range-CDX0VlcK.cjs");const y=require("./delay-DsFVHHw2.cjs"),n=require("./ripple-C2BHbhcS.cjs");require("./divider-CjgOM462.cjs"),require("./form-DyYGOlOR.cjs"),require("./icon-DPN7kWO0.cjs"),require("./input-2kqgsr0S.cjs");const c=require("./scroll-CCExKwoj.cjs"),m=require("./list-Cq9RDYF_.cjs");require("./menu-ifiBMg-F.cjs");const a=require("./outlet-u1_Qa8Li.cjs");require("./option-DOBWmGE5.cjs");const b=require("./radio-group-m5Swl5cq.cjs"),l=require("./rxjs-utils.cjs");require("rxjs"),require("./index-DyJ0oDpR.cjs"),require("./select-ljp7-IxH.cjs");const t=require("./sheet-DPHbRnXg.cjs"),h=require("./slider-ds6hnN7n.cjs"),d=require("./surface-DsUZdYN6.cjs");require("./table-BDIhXdSA.cjs"),require("./tabs-group-CHAAr7Wl.cjs"),require("./textarea-CJhi4hDu.cjs");const i=require("./theme.component-Dhm3MpVW.cjs"),p=require("./theme.interface-Xg5Zi46a.cjs");require("./theme-button-DoIFEVSv.cjs");const g=require("./tree-BkhYPaz6.cjs"),f=require("./types.cjs"),q=require("./typewriter-DGIW1V_b.cjs"),w=require("./typography-DQHpwRFR.cjs");exports.FINDING_MORTIES=r.FINDING_MORTIES,exports.HERE_RICKY=r.HERE_RICKY,exports.HISTORY_STRATEGY=r.HISTORY_STRATEGY,Object.defineProperty(exports,"SchmancyArea",{enumerable:!0,get:()=>r.SchmancyArea}),exports.area=r.area,exports.routerHistory=r.routerHistory,Object.defineProperty(exports,"SchmnacyButton",{enumerable:!0,get:()=>o.SchmnacyButton}),Object.defineProperty(exports,"SchmnacyIconButton",{enumerable:!0,get:()=>o.SchmnacyIconButton}),exports.$drawer=e.$drawer,exports.HereMorty=e.HereMorty,Object.defineProperty(exports,"SchmancyContentDrawer",{enumerable:!0,get:()=>e.SchmancyContentDrawer}),exports.SchmancyContentDrawerID=e.SchmancyContentDrawerID,Object.defineProperty(exports,"SchmancyContentDrawerMain",{enumerable:!0,get:()=>e.SchmancyContentDrawerMain}),exports.SchmancyContentDrawerMaxHeight=e.SchmancyContentDrawerMaxHeight,exports.SchmancyContentDrawerMinWidth=e.SchmancyContentDrawerMinWidth,Object.defineProperty(exports,"SchmancyContentDrawerSheet",{enumerable:!0,get:()=>e.SchmancyContentDrawerSheet}),exports.SchmancyContentDrawerSheetMode=e.SchmancyContentDrawerSheetMode,exports.SchmancyContentDrawerSheetState=e.SchmancyContentDrawerSheetState,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}),Object.defineProperty(exports,"SchmancyTeleportation",{enumerable:!0,get:()=>e.SchmancyTeleportation}),exports.WhereAreYouRicky=e.WhereAreYouRicky,exports.schmancyContentDrawer=e.schmancyContentDrawer,exports.schmancyNavDrawer=e.schmancyNavDrawer,exports.teleport=e.teleport,Object.defineProperty(exports,"SchmancyCheckbox",{enumerable:!0,get:()=>S.SchmancyCheckbox}),Object.defineProperty(exports,"SchmancyPaymentCardForm",{enumerable:!0,get:()=>u.SchmancyPaymentCardForm}),Object.defineProperty(exports,"SchmancyDelay",{enumerable:!0,get:()=>y.SchmancyDelay}),exports.delayContext=y.delayContext,exports.color=n.color,exports.fullHeight=n.fullHeight,exports.ripple=n.ripple,Object.defineProperty(exports,"SchmancyFlex",{enumerable:!0,get:()=>c.SchmancyFlex}),Object.defineProperty(exports,"SchmancyGrid",{enumerable:!0,get:()=>c.SchmancyGrid}),Object.defineProperty(exports,"SchmancyScroll",{enumerable:!0,get:()=>c.SchmancyScroll}),Object.defineProperty(exports,"List",{enumerable:!0,get:()=>m.List}),Object.defineProperty(exports,"SchmancyListItem",{enumerable:!0,get:()=>m.SchmancyListItem}),exports.$notify=a.$notify,Object.defineProperty(exports,"SchmancyNotification",{enumerable:!0,get:()=>a.SchmancyNotification}),Object.defineProperty(exports,"SchmancyNotificationOutlet",{enumerable:!0,get:()=>a.SchmancyNotificationOutlet}),Object.defineProperty(exports,"RadioGroup",{enumerable:!0,get:()=>b.RadioGroup}),exports.mutationObserver=l.mutationObserver,exports.SchmancySheetPosition=t.SchmancySheetPosition,exports.SheetHereMorty=t.SheetHereMorty,exports.SheetWhereAreYouRicky=t.SheetWhereAreYouRicky,exports.sheet=t.sheet,Object.defineProperty(exports,"SchmancySlide",{enumerable:!0,get:()=>h.SchmancySlide}),Object.defineProperty(exports,"SchmancySlider",{enumerable:!0,get:()=>h.SchmancySlider}),Object.defineProperty(exports,"SchmancySurface",{enumerable:!0,get:()=>d.SchmancySurface}),Object.defineProperty(exports,"SchmancyThemeComponent",{enumerable:!0,get:()=>i.SchmancyThemeComponent}),exports.formateTheme=i.formateTheme,exports.tailwindStyles=i.tailwindStyles,exports.SchmancyTheme=p.SchmancyTheme,Object.defineProperty(exports,"SchmancyTree",{enumerable:!0,get:()=>g.SchmancyTree}),exports.SchmancyEvents=f.SchmancyEvents,Object.defineProperty(exports,"TypewriterElement",{enumerable:!0,get:()=>q.TypewriterElement}),Object.defineProperty(exports,"SchmancyTypography",{enumerable:!0,get:()=>w.SchmancyTypography});
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { F as d, H as T, b, S as u, a as N, r as H } from "./area.component-BrPf
|
|
|
3
3
|
import "./autocomplete-CcDfKbfJ.js";
|
|
4
4
|
import "./spinner-zxOxMm7j.js";
|
|
5
5
|
import { S as v, a as I } from "./icon-button-CbEs8eyS.js";
|
|
6
|
-
import { $ as g, H as E, e as A, b as Y, f as k, c as F, d as G, g as O, S as W, a as $, i as L, k as _, l as B, m as P, j, n as K, o as q, W as z, s as J, h as Q, t as U } from "./teleport.component-
|
|
6
|
+
import { $ as g, H as E, e as A, b as Y, f as k, c as F, d as G, g as O, S as W, a as $, i as L, k as _, l as B, m as P, j, n as K, o as q, W as z, s as J, h as Q, t as U } from "./teleport.component-CrWThxV-.js";
|
|
7
7
|
import { S as X } from "./checkbox-DV8tPYX0.js";
|
|
8
8
|
import "./chips-Ca-SY6mg.js";
|
|
9
9
|
import { S as aa } from "./payment-card-form-CTZsSGOB.js";
|
|
@@ -26,7 +26,7 @@ import "./index-CuY8m6ta.js";
|
|
|
26
26
|
import "./select-BakBo7W1.js";
|
|
27
27
|
import { S as Na, b as Ha, a as Ra, s as va } from "./sheet-BGNoewvS.js";
|
|
28
28
|
import { S as Ma, a as ga } from "./slider-FTwWTvKi.js";
|
|
29
|
-
import { S as Aa } from "./surface-
|
|
29
|
+
import { S as Aa } from "./surface-CHsZb-bX.js";
|
|
30
30
|
import "./table-6bRKgCJ9.js";
|
|
31
31
|
import "./tabs-group-DBybIi8n.js";
|
|
32
32
|
import "./textarea-BchwVUAo.js";
|
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-Ctv1MZOo.cjs");exports.$drawer=e.$drawer,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 { $ as c, i as e, k as n, l as m, m as s, j as h, n as i, h as t } from "./teleport.component-
|
|
1
|
+
import { $ as c, i as e, k as n, l as m, m as s, j as h, n as i, h as t } from "./teleport.component-CrWThxV-.js";
|
|
2
2
|
export {
|
|
3
3
|
c as $drawer,
|
|
4
4
|
e as SchmancyDrawerAppbar,
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { e as p } from "./provide-kj6-udep.js";
|
|
2
|
+
import "rxjs";
|
|
3
|
+
import "lit/directives/class-map.js";
|
|
4
|
+
import "lit/directives/style-map.js";
|
|
5
|
+
import { T as c } from "./tailwind.mixin-DtR4DQvn.js";
|
|
6
|
+
import { css as d, html as u } from "lit";
|
|
7
|
+
import { property as o, customElement as f } from "lit/decorators.js";
|
|
8
|
+
import { S as y } from "./context-5nmahssp.js";
|
|
9
|
+
var m = Object.defineProperty, g = Object.getOwnPropertyDescriptor, s = (l, i, a, r) => {
|
|
10
|
+
for (var n, t = r > 1 ? void 0 : r ? g(i, a) : i, h = l.length - 1; h >= 0; h--) (n = l[h]) && (t = (r ? n(i, a, t) : n(t)) || t);
|
|
11
|
+
return r && t && m(i, a, t), t;
|
|
12
|
+
};
|
|
13
|
+
let e = class extends c(d`
|
|
14
|
+
:host {
|
|
15
|
+
display: block;
|
|
16
|
+
}
|
|
17
|
+
:host([fill]) {
|
|
18
|
+
height: -webkit-fill-available;
|
|
19
|
+
width: -webkit-fill-available;
|
|
20
|
+
}
|
|
21
|
+
`) {
|
|
22
|
+
constructor() {
|
|
23
|
+
super(...arguments), this.fill = !1, this.rounded = "none", this.type = "surface", this.elevation = 0;
|
|
24
|
+
}
|
|
25
|
+
get classes() {
|
|
26
|
+
return { "rounded-none": this.rounded === "none", "rounded-t-[8px]": this.rounded === "top", "rounded-l-[8px]": this.rounded === "left", "rounded-r-[8px]": this.rounded === "right", "rounded-b-[8px]": this.rounded === "bottom", "rounded-[8px]": this.rounded === "all", "w-full": this.fill, "h-full": this.fill, "shadow-xs": this.elevation === 1, "shadow-sm": this.elevation === 2, "shadow-md": this.elevation === 3, "shadow-lg": this.elevation === 4, "text-surface-on": this.type === "surface" || this.type === "surfaceDim" || this.type === "surfaceBright" || this.type === "containerLowest" || this.type === "containerLow" || this.type === "container" || this.type === "containerHigh" || this.type === "containerHighest", "bg-surface-default": this.type === "surface", "bg-surface-dim": this.type === "surfaceDim", "bg-surface-bright": this.type === "surfaceBright", "bg-surface-lowest": this.type === "containerLowest", "bg-surface-low": this.type === "containerLow", "bg-surface-container": this.type === "container", "bg-surface-high": this.type === "containerHigh", "bg-surface-highest": this.type === "containerHighest" };
|
|
27
|
+
}
|
|
28
|
+
render() {
|
|
29
|
+
return u`
|
|
30
|
+
<!-- The dynamic classes are applied via classMap on this div -->
|
|
31
|
+
<div class="${this.classMap(this.classes)}">
|
|
32
|
+
<slot></slot>
|
|
33
|
+
</div>
|
|
34
|
+
`;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
s([o({ type: Boolean })], e.prototype, "fill", 2), s([o()], e.prototype, "rounded", 2), s([p({ context: y }), o()], e.prototype, "type", 2), s([o({ type: Number })], e.prototype, "elevation", 2), e = s([f("schmancy-surface")], e);
|
|
38
|
+
export {
|
|
39
|
+
e as S
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=surface-CHsZb-bX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-CHsZb-bX.js","sources":["../src/surface/surface.ts"],"sourcesContent":["import { provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { SchmancySurfaceTypeContext } from './context'\n\n/**\n * @element schmancy-surface\n * @slot - default content\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n\t:host([fill]) {\n\t\theight: -webkit-fill-available;\n\t\twidth: -webkit-fill-available;\n\t}\n`) {\n\t@property({ type: Boolean }) fill = false\n\t@property() rounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property()\n\ttype:\n\t\t| 'surface'\n\t\t| 'surfaceDim'\n\t\t| 'surfaceBright'\n\t\t| 'containerLowest'\n\t\t| 'containerLow'\n\t\t| 'container'\n\t\t| 'containerHigh'\n\t\t| 'containerHighest' = 'surface'\n\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tget classes(): Record<string, boolean> {\n\t\treturn {\n\t\t\t// Rounded styles based on the \"rounded\" property.\n\t\t\t'rounded-none': this.rounded === 'none',\n\t\t\t'rounded-t-[8px]': this.rounded === 'top',\n\t\t\t'rounded-l-[8px]': this.rounded === 'left',\n\t\t\t'rounded-r-[8px]': this.rounded === 'right',\n\t\t\t'rounded-b-[8px]': this.rounded === 'bottom',\n\t\t\t'rounded-[8px]': this.rounded === 'all',\n\t\t\t// If fill is true, apply full width and height.\n\t\t\t'w-full': this.fill,\n\t\t\t'h-full': this.fill,\n\t\t\t// Elevation shadows.\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t// Surface text color.\n\t\t\t'text-surface-on':\n\t\t\t\tthis.type === 'surface' ||\n\t\t\t\tthis.type === 'surfaceDim' ||\n\t\t\t\tthis.type === 'surfaceBright' ||\n\t\t\t\tthis.type === 'containerLowest' ||\n\t\t\t\tthis.type === 'containerLow' ||\n\t\t\t\tthis.type === 'container' ||\n\t\t\t\tthis.type === 'containerHigh' ||\n\t\t\t\tthis.type === 'containerHighest',\n\t\t\t// Background color based on the type.\n\t\t\t'bg-surface-default': this.type === 'surface',\n\t\t\t'bg-surface-dim': this.type === 'surfaceDim',\n\t\t\t'bg-surface-bright': this.type === 'surfaceBright',\n\t\t\t'bg-surface-lowest': this.type === 'containerLowest',\n\t\t\t'bg-surface-low': this.type === 'containerLow',\n\t\t\t'bg-surface-container': this.type === 'container',\n\t\t\t'bg-surface-high': this.type === 'containerHigh',\n\t\t\t'bg-surface-highest': this.type === 'containerHighest',\n\t\t}\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- The dynamic classes are applied via classMap on this div -->\n\t\t\t<div class=\"${this.classMap(this.classes)}\">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"names":["SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","classes","render","html","classMap","__decorateClass","property","Boolean","prototype","provide","context","SchmancySurfaceTypeContext","Number","customElement"],"mappings":";;;;;;;;;;;;AAWa,IAAAA,IAAN,cAA8BC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,EAAA;AAAA,EAAA,cAAAC;AAAAA,UAAAA,GAAAC,SAS8BC,GAAAA,KAAAC,OAAA,IACwCD,KAAAE,UAAA,QAYpDF,KAAAG,OAAA,WAEuCH,KAAAI,YAAA;AAAA,EAAA;AAAA,EAE/D,IAAIC,UAAAA;AACI,WAAA,EAEN,gBAAgBL,KAAKE,YAAY,QACjC,mBAAmBF,KAAKE,YAAY,OACpC,mBAAmBF,KAAKE,YAAY,QACpC,mBAAmBF,KAAKE,YAAY,SACpC,mBAAmBF,KAAKE,YAAY,UACpC,iBAAiBF,KAAKE,YAAY,OAElC,UAAUF,KAAKC,MACf,UAAUD,KAAKC,MAEf,aAAaD,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAEhC,mBACCJ,KAAKG,SAAS,aACdH,KAAKG,SAAS,gBACdH,KAAKG,SAAS,mBACdH,KAAKG,SAAS,qBACdH,KAAKG,SAAS,kBACdH,KAAKG,SAAS,eACdH,KAAKG,SAAS,mBACdH,KAAKG,SAAS,oBAEf,sBAAsBH,KAAKG,SAAS,WACpC,kBAAkBH,KAAKG,SAAS,cAChC,qBAAqBH,KAAKG,SAAS,iBACnC,qBAAqBH,KAAKG,SAAS,mBACnC,kBAAkBH,KAAKG,SAAS,gBAChC,wBAAwBH,KAAKG,SAAS,aACtC,mBAAmBH,KAAKG,SAAS,iBACjC,sBAAsBH,KAAKG,SAAS,mBACrC;AAAA,EAAA;AAAA,EAGS,SAAAG;AACF,WAAAC;AAAAA;AAAAA,iBAEQP,KAAKQ,SAASR,KAAKK,OAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAAQ;AAAA;AA3DdI,EAAA,CAA5BC,EAAS,EAAEP,MAAMQ,QAAAA,CAAAA,CAAAA,GATNhB,EASiBiB,WAAA,QAAA,IACjBH,EAAA,CAAXC,MAVWf,EAUAiB,WAAA,WAAA,CAIZH,GAAAA,EAAA,CAFCI,EAAQ,EAAEC,SAASC,EACnBL,CAAAA,GAAAA,EAAAA,CAAAA,GAbWf,EAcZiB,WAAA,QAAA,IAU4BH,EAAA,CAA3BC,EAAS,EAAEP,MAAMa,YAxBNrB,EAwBgBiB,WAAA,aAAA,CAxBhBjB,GAAAA,IAANc,EAAA,CADNQ,EAAc,sBACFtB;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";const u=require("./provide-_VUNOf1R.cjs");require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const l=require("./tailwind.mixin-_mD_GeAp.cjs"),h=require("lit"),t=require("lit/decorators.js"),p=require("./context-BATZj31H.cjs");var d=Object.defineProperty,y=Object.getOwnPropertyDescriptor,r=(c,s,a,i)=>{for(var o,e=i>1?void 0:i?y(s,a):s,n=c.length-1;n>=0;n--)(o=c[n])&&(e=(i?o(s,a,e):o(e))||e);return i&&e&&d(s,a,e),e};exports.SchmancySurface=class extends l.TailwindElement(h.css`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
}
|
|
5
|
+
:host([fill]) {
|
|
6
|
+
height: -webkit-fill-available;
|
|
7
|
+
width: -webkit-fill-available;
|
|
8
|
+
}
|
|
9
|
+
`){constructor(){super(...arguments),this.fill=!1,this.rounded="none",this.type="surface",this.elevation=0}get classes(){return{"rounded-none":this.rounded==="none","rounded-t-[8px]":this.rounded==="top","rounded-l-[8px]":this.rounded==="left","rounded-r-[8px]":this.rounded==="right","rounded-b-[8px]":this.rounded==="bottom","rounded-[8px]":this.rounded==="all","w-full":this.fill,"h-full":this.fill,"shadow-xs":this.elevation===1,"shadow-sm":this.elevation===2,"shadow-md":this.elevation===3,"shadow-lg":this.elevation===4,"text-surface-on":this.type==="surface"||this.type==="surfaceDim"||this.type==="surfaceBright"||this.type==="containerLowest"||this.type==="containerLow"||this.type==="container"||this.type==="containerHigh"||this.type==="containerHighest","bg-surface-default":this.type==="surface","bg-surface-dim":this.type==="surfaceDim","bg-surface-bright":this.type==="surfaceBright","bg-surface-lowest":this.type==="containerLowest","bg-surface-low":this.type==="containerLow","bg-surface-container":this.type==="container","bg-surface-high":this.type==="containerHigh","bg-surface-highest":this.type==="containerHighest"}}render(){return h.html`
|
|
10
|
+
<!-- The dynamic classes are applied via classMap on this div -->
|
|
11
|
+
<div class="${this.classMap(this.classes)}">
|
|
12
|
+
<slot></slot>
|
|
13
|
+
</div>
|
|
14
|
+
`}},r([t.property({type:Boolean})],exports.SchmancySurface.prototype,"fill",2),r([t.property()],exports.SchmancySurface.prototype,"rounded",2),r([u.e({context:p.SchmancySurfaceTypeContext}),t.property()],exports.SchmancySurface.prototype,"type",2),r([t.property({type:Number})],exports.SchmancySurface.prototype,"elevation",2),exports.SchmancySurface=r([t.customElement("schmancy-surface")],exports.SchmancySurface);
|
|
15
|
+
//# sourceMappingURL=surface-DsUZdYN6.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-DsUZdYN6.cjs","sources":["../src/surface/surface.ts"],"sourcesContent":["import { provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { SchmancySurfaceTypeContext } from './context'\n\n/**\n * @element schmancy-surface\n * @slot - default content\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n\t:host([fill]) {\n\t\theight: -webkit-fill-available;\n\t\twidth: -webkit-fill-available;\n\t}\n`) {\n\t@property({ type: Boolean }) fill = false\n\t@property() rounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property()\n\ttype:\n\t\t| 'surface'\n\t\t| 'surfaceDim'\n\t\t| 'surfaceBright'\n\t\t| 'containerLowest'\n\t\t| 'containerLow'\n\t\t| 'container'\n\t\t| 'containerHigh'\n\t\t| 'containerHighest' = 'surface'\n\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tget classes(): Record<string, boolean> {\n\t\treturn {\n\t\t\t// Rounded styles based on the \"rounded\" property.\n\t\t\t'rounded-none': this.rounded === 'none',\n\t\t\t'rounded-t-[8px]': this.rounded === 'top',\n\t\t\t'rounded-l-[8px]': this.rounded === 'left',\n\t\t\t'rounded-r-[8px]': this.rounded === 'right',\n\t\t\t'rounded-b-[8px]': this.rounded === 'bottom',\n\t\t\t'rounded-[8px]': this.rounded === 'all',\n\t\t\t// If fill is true, apply full width and height.\n\t\t\t'w-full': this.fill,\n\t\t\t'h-full': this.fill,\n\t\t\t// Elevation shadows.\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t// Surface text color.\n\t\t\t'text-surface-on':\n\t\t\t\tthis.type === 'surface' ||\n\t\t\t\tthis.type === 'surfaceDim' ||\n\t\t\t\tthis.type === 'surfaceBright' ||\n\t\t\t\tthis.type === 'containerLowest' ||\n\t\t\t\tthis.type === 'containerLow' ||\n\t\t\t\tthis.type === 'container' ||\n\t\t\t\tthis.type === 'containerHigh' ||\n\t\t\t\tthis.type === 'containerHighest',\n\t\t\t// Background color based on the type.\n\t\t\t'bg-surface-default': this.type === 'surface',\n\t\t\t'bg-surface-dim': this.type === 'surfaceDim',\n\t\t\t'bg-surface-bright': this.type === 'surfaceBright',\n\t\t\t'bg-surface-lowest': this.type === 'containerLowest',\n\t\t\t'bg-surface-low': this.type === 'containerLow',\n\t\t\t'bg-surface-container': this.type === 'container',\n\t\t\t'bg-surface-high': this.type === 'containerHigh',\n\t\t\t'bg-surface-highest': this.type === 'containerHighest',\n\t\t}\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- The dynamic classes are applied via classMap on this div -->\n\t\t\t<div class=\"${this.classMap(this.classes)}\">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"names":["SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","classes","html","classMap","__decorateClass","property","Boolean","prototype","provide","context","SchmancySurfaceTypeContext","Number","customElement"],"mappings":"0dAWaA,QAAAA,gBAAN,cAA8BC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,CAAA,CAAA,aAAAC,CAAAA,MAAAA,GAAAC,SAS8BC,EAAAA,KAAAC,KAAA,GACwCD,KAAAE,QAAA,OAYpDF,KAAAG,KAAA,UAEuCH,KAAAI,UAAA,CAAA,CAE/D,IAAIC,SAAAA,CACI,MAAA,CAEN,eAAgBL,KAAKE,UAAY,OACjC,kBAAmBF,KAAKE,UAAY,MACpC,kBAAmBF,KAAKE,UAAY,OACpC,kBAAmBF,KAAKE,UAAY,QACpC,kBAAmBF,KAAKE,UAAY,SACpC,gBAAiBF,KAAKE,UAAY,MAElC,SAAUF,KAAKC,KACf,SAAUD,KAAKC,KAEf,YAAaD,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAEhC,kBACCJ,KAAKG,OAAS,WACdH,KAAKG,OAAS,cACdH,KAAKG,OAAS,iBACdH,KAAKG,OAAS,mBACdH,KAAKG,OAAS,gBACdH,KAAKG,OAAS,aACdH,KAAKG,OAAS,iBACdH,KAAKG,OAAS,mBAEf,qBAAsBH,KAAKG,OAAS,UACpC,iBAAkBH,KAAKG,OAAS,aAChC,oBAAqBH,KAAKG,OAAS,gBACnC,oBAAqBH,KAAKG,OAAS,kBACnC,iBAAkBH,KAAKG,OAAS,eAChC,uBAAwBH,KAAKG,OAAS,YACtC,kBAAmBH,KAAKG,OAAS,gBACjC,qBAAsBH,KAAKG,OAAS,kBAATA,CAC5B,CAGS,QACF,CAAA,OAAAG,EAAAA;AAAAA;AAAAA,iBAEQN,KAAKO,SAASP,KAAKK,OAAAA,CAAAA;AAAAA;AAAAA;AAAAA,GAAQ,CA3DdG,EAAAA,EAAA,CAA5BC,WAAS,CAAEN,KAAMO,OATNf,CAAAA,CAAAA,EAAAA,wBASiBgB,UAAA,OAAA,CAAA,EACjBH,EAAA,CAAXC,EAASA,SAVEd,CAAAA,EAAAA,wBAUAgB,UAAA,UAAA,CAAA,EAIZH,EAAA,CAFCI,IAAQ,CAAEC,QAASC,EAAAA,0BACnBL,CAAAA,EAAAA,EAASA,SAbEd,CAAAA,EAAAA,wBAcZgB,UAAA,OAAA,CAAA,EAU4BH,EAAA,CAA3BC,WAAS,CAAEN,KAAMY,UAxBNpB,wBAwBgBgB,UAAA,YAAA,CAxBhBhB,EAAAA,QAANA,gBAAAa,EAAA,CADNQ,EAAAA,cAAc,kBAAA,CAAA,EACFrB"}
|
package/dist/surface.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./surface-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./surface-DsUZdYN6.cjs");Object.defineProperty(exports,"SchmancySurface",{enumerable:!0,get:()=>e.SchmancySurface});
|
|
2
2
|
//# sourceMappingURL=surface.cjs.map
|
package/dist/surface.js
CHANGED
package/dist/teleport.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-Ctv1MZOo.cjs");exports.HereMorty=e.HereMorty,Object.defineProperty(exports,"SchmancyTeleportation",{enumerable:!0,get:()=>e.SchmancyTeleportation}),exports.WhereAreYouRicky=e.WhereAreYouRicky,exports.teleport=e.teleport;
|
|
2
2
|
//# sourceMappingURL=teleport.cjs.map
|
|
@@ -35,7 +35,7 @@ import "./index-CuY8m6ta.js";
|
|
|
35
35
|
import "./select-BakBo7W1.js";
|
|
36
36
|
import { s as Y } from "./sheet-BGNoewvS.js";
|
|
37
37
|
import "./slider-FTwWTvKi.js";
|
|
38
|
-
import "./surface-
|
|
38
|
+
import "./surface-CHsZb-bX.js";
|
|
39
39
|
import "./table-6bRKgCJ9.js";
|
|
40
40
|
import "./tabs-group-DBybIi8n.js";
|
|
41
41
|
import "./textarea-BchwVUAo.js";
|
|
@@ -512,4 +512,4 @@ export {
|
|
|
512
512
|
Ge as s,
|
|
513
513
|
X as t
|
|
514
514
|
};
|
|
515
|
-
//# sourceMappingURL=teleport.component-
|
|
515
|
+
//# sourceMappingURL=teleport.component-CrWThxV-.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teleport.component-N1z4n9Fm.js","sources":["../src/card/actions.ts","../src/card/card.ts","../src/card/content.ts","../src/card/media.ts","../src/content-drawer/$sheet.ts","../src/content-drawer/context.ts","../src/content-drawer/drawer.ts","../src/content-drawer/main.ts","../src/content-drawer/sheet.ts","../src/nav-drawer/$navbar.ts","../src/nav-drawer/context.ts","../src/nav-drawer/appbar.ts","../src/nav-drawer/content.ts","../src/nav-drawer/drawer.ts","../src/nav-drawer/navbar.ts","../src/teleport/teleport.service.ts","../src/teleport/watcher.ts","../src/teleport/teleport.component.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-action\n * @slot - The content of the action\n */\n@customElement('schmancy-card-action')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html` <section class=\"pb-4 px-4\"><slot> </slot></section> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-action': SchmancyCardMedia\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-card')\nexport default class SchmancyCard extends TailwindElement() {\n\t@property() type: 'elevated' | 'filled' | 'outlined' = 'elevated'\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'rounded-md': true,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'shadow-5': this.elevation === 5,\n\t\t\t'hover:shadow-xs': ['outlined', 'filled'].includes(this.type),\n\t\t\t'bg-surface-low shadow-xs hover:shadow-sm': this.type === 'elevated',\n\t\t\t'bg-surface-highest': this.type === 'filled',\n\t\t\t'bg-surface-default border border-solid border-1 border-outlineVariant': this.type === 'outlined',\n\t\t}\n\t\treturn html`<div class=\"${this.classMap(classes)}\">\n\t\t\t<slot> </slot>\n\t\t</div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card': SchmancyCard\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { color } from '..'\n\n/**\n * @element schmancy-card-content\n * @slot headline\n * @slot subhead\n * @slot default - The content of the card\n */\n@customElement('schmancy-card-content')\nexport default class SchmancyCardContent extends TailwindElement() {\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'px-[16px] py-[24px]': true,\n\t\t}\n\t\tconst onSurface = SchmancyTheme.sys.color.surface.on\n\t\tconst onSurfaceVariant = SchmancyTheme.sys.color.surface.onVariant\n\t\treturn html`<schmancy-grid gap=\"md\" class=\"${this.classMap(classes)}\">\n\t\t\t<schmancy-grid gap=\"xs\">\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurface,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\ttoken=\"lg\"\n\t\t\t\t\t><slot name=\"headline\"> </slot\n\t\t\t\t></schmancy-typography>\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t><slot name=\"subhead\"></slot>\n\t\t\t\t</schmancy-typography>\n\t\t\t</schmancy-grid>\n\t\t\t<schmancy-typography\n\t\t\t\ttype=\"body\"\n\t\t\t\t${color({\n\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-typography>\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-content': SchmancyCardContent\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-media\n */\n@customElement('schmancy-card-media')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tsrc: string = ''\n\n\t@property({ type: String })\n\tfit: 'contain' | 'cover' | 'fill' | 'none' | 'scale-down' = 'contain'\n\n\tprotected render(): unknown {\n\t\tconst styles = {\n\t\t\theight: '200px',\n\t\t}\n\t\tconst classes = {\n\t\t\t'object-center': true,\n\t\t\t'object-contain': this.fit === 'contain',\n\t\t\t'object-cover w-full': this.fit === 'cover',\n\t\t\t'object-fill': this.fit === 'fill',\n\t\t\t'object-none': this.fit === 'none',\n\t\t\t'object-scale-down': this.fit === 'scale-down',\n\t\t}\n\t\treturn html`<schmancy-grid align=\"stretch\" justify=\"stretch\" gap=\"md\">\n\t\t\t<img src=\"${this.src}\" style=${this.styleMap(styles)} class=\"${this.classMap(classes)}\" />\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-media': SchmancyCardMedia\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { Subject } from 'rxjs'\n\ntype DrawerAction = 'dismiss' | 'render'\ntype TRef = Element | Window\ntype TRenderRequest = HTMLElement\nexport type TRenderCustomEvent = CustomEvent<{\n\tcomponent: TRenderRequest\n\ttitle?: string\n}>\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tref: TRef\n\t\taction: DrawerAction\n\t\tcomponent?: TRenderRequest\n\t\ttitle?: string\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe().subscribe(data => {\n\t\t\tif (data.action === 'dismiss') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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} else if (data.action === 'render') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-content-drawer-render', {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tcomponent: data.component,\n\t\t\t\t\t\t\ttitle: data.title,\n\t\t\t\t\t\t},\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\t})\n\t}\n\n\tdimiss(ref: TRef) {\n\t\tthis.$drawer.next({\n\t\t\taction: 'dismiss',\n\t\t\tref: ref,\n\t\t})\n\t}\n\n\trender(ref: TRef, component: TRenderRequest, title?: string) {\n\t\tref.dispatchEvent(new CustomEvent('custom-event'))\n\t\tthis.$drawer.next({\n\t\t\taction: 'render',\n\t\t\tref: ref,\n\t\t\tcomponent: component,\n\t\t\ttitle,\n\t\t})\n\t}\n}\n\nexport const schmancyContentDrawer = new Drawer()\n","import { createContext } from '@lit/context'\nexport type TSchmancyContentDrawerSheetMode = 'push' | 'overlay'\nexport const SchmancyContentDrawerSheetMode = createContext<TSchmancyContentDrawerSheetMode>('push')\n\nexport type TSchmancyContentDrawerSheetState = 'open' | 'close'\nexport const SchmancyContentDrawerSheetState = createContext<TSchmancyContentDrawerSheetState>('close')\n\nexport const SchmancyContentDrawerID = createContext<string>(Math.floor(Math.random() * Date.now()).toString())\nexport const SchmancyContentDrawerMaxHeight = createContext<string>('100%')\nexport const SchmancyContentDrawerMinWidth = createContext<{\n\tmain: number\n\tsheet: number\n}>({})\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, merge, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, TRenderCustomEvent, area, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n/**\n * @element schmancy-content-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-content-drawer')\nexport class SchmancyContentDrawer extends $LitElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t/**\n\t * The minimum width of the sheet\n\t * @attr\tminWidth\n\t * @type {number}\n\t * @memberof SchmancyContentDrawer\n\t */\n\n\t@provide({ context: SchmancyContentDrawerMinWidth })\n\tminWidth: typeof SchmancyContentDrawerMinWidth.__context__ = {\n\t\tmain: 360,\n\t\tsheet: 576,\n\t}\n\n\t/**\n\t * The state of the sheet\n\t * @attr open\n\t * @type {TSchmancyContentDrawerSheetState}\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetState })\n\t@property()\n\topen: TSchmancyContentDrawerSheetState\n\n\t/**\n\t * The mode of the sheet\n\t * @type {TSchmancyContentDrawerSheetMode}\n\t * @memberof SchmancyContentDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetMode })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@provide({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID = Math.floor(Math.random() * Date.now()).toString()\n\n\t@provide({ context: SchmancyContentDrawerMaxHeight })\n\tmaxHeight = '100%'\n\n\t@queryAssignedElements({ flatten: true })\n\tassignedElements!: HTMLElement[]\n\tfirstUpdated(): void {\n\t\tmerge(fromEvent<CustomEvent>(window, 'resize'), fromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerResize))\n\t\t\t.pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\ttap(() => console.log(this.minWidth)),\n\t\t\t\tmap(() => (this.clientWidth ? this.clientWidth : window.innerWidth)),\n\t\t\t\tmap(width => width >= this.minWidth.main + this.minWidth.sheet),\n\t\t\t\tdebounceTime(100),\n\t\t\t\ttap(() => {\n\t\t\t\t\tthis.maxHeight = `${window.innerHeight - this.getOffsetTop(this) - 32}px`\n\t\t\t\t\tthis.style.setProperty('max-height', this.maxHeight)\n\t\t\t\t}),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerToggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\tthis.open = state\n\t\t\t})\n\n\t\tfromEvent<TRenderCustomEvent>(window, 'schmancy-content-drawer-render')\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(({ component, title }) => {\n\t\t\t\tif (this.mode === 'push') {\n\t\t\t\t\t// TODO: Fix the router to render if constructor has different arguments\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: 'empty',\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: component,\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t} else if ((this.mode = 'overlay')) {\n\t\t\t\t\tsheet.open({ component: component, uid: this.schmancyContentDrawerID, title })\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tgetOffsetTop(element) {\n\t\tlet offsetTop = 0\n\t\twhile (element) {\n\t\t\toffsetTop += element.offsetTop\n\t\t\telement = element.offsetParent\n\t\t}\n\t\treturn offsetTop\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.mode === 'overlay' ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer': SchmancyContentDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { PropertyValueMap, css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyEvents } from '..'\nimport {\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetMode,\n} from './context'\nimport { when } from 'lit/directives/when.js'\n\n@customElement('schmancy-content-drawer-main')\nexport class SchmancyContentDrawerMain extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) this.drawerMinWidth.main = this.minWidth\n\t\telse this.minWidth = this.drawerMinWidth.main\n\t}\n\n\tprotected update(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\t\tsuper.update(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\tthis.drawerMinWidth.main = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t}\n\t}\n\n\trender() {\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\t\treturn html`\n\t\t\t<section class=\"relative inset-0 h-full\">\n\t\t\t\t<schmancy-grid\n\t\t\t\t\tclass=\"h-full relative overflow-scroll\"\n\t\t\t\t\tcols=\"${this.mode === 'push' ? 'auto 1fr' : '1fr'}\"\n\t\t\t\t\trows=\"1fr\"\n\t\t\t\t\tflow=\"col\"\n\t\t\t\t\talign=\"stretch\"\n\t\t\t\t\tjustify=\"stretch\"\n\t\t\t\t>\n\t\t\t\t\t<section style=${this.styleMap(styles)}>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</section>\n\t\t\t\t</schmancy-grid>\n\t\t\t\t${when(\n\t\t\t\t\tthis.mode === 'push',\n\t\t\t\t\t() => html` <schmancy-divider class=\"absolute right-0 top-0\" orientation=\"vertical\"></schmancy-divider>`,\n\t\t\t\t)}\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-main': SchmancyContentDrawerMain\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, merge, Observable, of, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n// --- 1) Removed the custom animate import\n// import { animate } from '@packages/anime-beta-master'\n\n@customElement('schmancy-content-drawer-sheet')\nexport class SchmancyContentDrawerSheet extends $LitElement(css`\n\t:host {\n\t\toverflow: scroll;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerSheetState, subscribe: true })\n\t@state()\n\tstate: TSchmancyContentDrawerSheetState\n\n\t@consume({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID\n\n\t@query('#sheet') sheet!: HTMLElement\n\t@queryAssignedElements({ flatten: true, slot: undefined }) defaultSlot!: HTMLElement[]\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) {\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t} else {\n\t\t\tthis.minWidth = this.drawerMinWidth.sheet\n\t\t}\n\t}\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\t// If the 'minWidth' property changed\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t} else if (changedProperties.has('state') || changedProperties.has('mode')) {\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\t// Overlay open logic if needed\n\t\t\t\t\t// this.open()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tsheet.dismiss(this.schmancyContentDrawerID)\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.open()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Open the sheet by sliding it into view.\n\t */\n\topen() {\n\t\t// \"onBegin\" logic from the old `animate(...)`\n\t\tif (this.mode === 'overlay') {\n\t\t\tthis.sheet.style.position = 'fixed'\n\t\t} else {\n\t\t\tthis.sheet.style.position = 'relative'\n\t\t}\n\t\tthis.sheet.style.display = 'block'\n\n\t\t// --- 2) Use native Web Animations API ---\n\t\tthis.sheet.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'translateX(100%)' },\n\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 500,\n\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t},\n\t\t)\n\t\t// No return is needed if you don't rely on the result\n\t}\n\n\t/**\n\t * Close everything (modal sheet + the sheet itself).\n\t */\n\tcloseAll() {\n\t\t// Merge them into a single subscription,\n\t\t// so that everything closes in parallel.\n\t\tmerge(from(this.closeModalSheet()), from(this.closeSheet())).pipe(takeUntil(this.disconnecting)).subscribe()\n\t}\n\n\t/**\n\t * Dismiss the \"modal sheet.\"\n\t * This just returns an Observable that completes immediately.\n\t */\n\tcloseModalSheet() {\n\t\treturn of(true).pipe(tap(() => sheet.dismiss(this.schmancyContentDrawerID)))\n\t}\n\n\t/**\n\t * Slide the sheet out of view + hide it.\n\t * Return an Observable so we can merge it with other close operations.\n\t */\n\tcloseSheet() {\n\t\t// --- 2) Use native Web Animations API and wrap in an Observable ---\n\t\treturn new Observable<void>(observer => {\n\t\t\tconst animation = this.sheet.animate(\n\t\t\t\t[\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(100%)' },\n\t\t\t\t],\n\t\t\t\t{\n\t\t\t\t\tduration: 500,\n\t\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t\t},\n\t\t\t)\n\n\t\t\tanimation.onfinish = () => {\n\t\t\t\t// \"onComplete\" logic\n\t\t\t\tthis.sheet.style.display = 'none'\n\t\t\t\tobserver.next()\n\t\t\t\tobserver.complete()\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected render() {\n\t\tconst sheetClasses = {\n\t\t\tblock: this.mode === 'push',\n\t\t\t'absolute z-50': this.mode === 'overlay',\n\t\t\t'opacity-1': this.mode === 'overlay' && this.state === 'open',\n\t\t}\n\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\n\t\treturn html`\n\t\t\t<section id=\"sheet\" class=\"${this.classMap(sheetClasses)}\" style=${this.styleMap(styles)}>\n\t\t\t\t<schmancy-area name=\"${this.schmancyContentDrawerID}\">\n\t\t\t\t\t<slot name=\"placeholder\"></slot>\n\t\t\t\t</schmancy-area>\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-sheet': SchmancyContentDrawerSheet\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { debounceTime, distinctUntilKeyChanged, Subject } from 'rxjs'\n\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tself: HTMLElement\n\t\tstate: boolean\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe(distinctUntilKeyChanged('state'), debounceTime(100)).subscribe(data => {\n\t\t\tconsole.log('drawer', data)\n\t\t\tif (data.state) {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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} else {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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\t})\n\t}\n\topen(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: true,\n\t\t})\n\t}\n\tclose(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: false,\n\t\t})\n\t}\n}\n\nexport const schmancyNavDrawer = new Drawer()\nconst $drawer = schmancyNavDrawer\n\nexport { $drawer }\n","import { createContext } from '@lit/context'\nexport type TSchmancyDrawerNavbarMode = 'push' | 'overlay' | undefined\nexport const SchmancyDrawerNavbarMode = createContext<TSchmancyDrawerNavbarMode>('push')\n\nexport type TSchmancyDrawerNavbarState = 'open' | 'close' | undefined\nexport const SchmancyDrawerNavbarState = createContext<TSchmancyDrawerNavbarState>('close')\n","import { consume } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n} from '@schmancy/nav-drawer/context'\nimport { css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyEvents } from '..'\n\n/**\n * @element schmancy-nav-drawer-appbar\n * @slot toggler - The toggler slot\n * @slot - The default slot\n */\n@customElement('schmancy-nav-drawer-appbar')\nexport class SchmancyDrawerAppbar extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tsidebarMode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tsidebarOpen\n\n\t@property({ type: Boolean }) toggler = true\n\n\trender() {\n\t\tconst appbarClasses = {\n\t\t\t'block z-50': true,\n\t\t}\n\t\tconst sidebarToggler = {\n\t\t\t'block left-3 z-50': this.sidebarMode === 'overlay',\n\t\t\thidden: this.sidebarMode === 'push',\n\t\t}\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.sidebarMode === 'overlay' && this.toggler ? 'auto 1fr' : '1fr'}\n\t\t\t\tflow=\"col\"\n\t\t\t\tclass=${this.classMap(appbarClasses)}\n\t\t\t\tgap=\"sm\"\n\t\t\t\talign=\"center\"\n\t\t\t>\n\t\t\t\t${when(\n\t\t\t\t\tthis.sidebarMode === 'overlay' && this.toggler,\n\t\t\t\t\t() =>\n\t\t\t\t\t\thtml`<slot name=\"toggler\">\n\t\t\t\t\t\t\t<div class=\"${this.classMap(sidebarToggler)}\">\n\t\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\t\t@click=${() => {\n\t\t\t\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\t\t\t\t\t\tdetail: { state: this.sidebarOpen === 'open' ? 'close' : 'open' },\n\t\t\t\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t${when(\n\t\t\t\t\t\t\t\t\t\tthis.sidebarOpen === 'close',\n\t\t\t\t\t\t\t\t\t\t() => html`menu`,\n\t\t\t\t\t\t\t\t\t\t() => html`menu_open`,\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</slot>`,\n\t\t\t\t)}\n\n\t\t\t\t<slot> </slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-appbar': SchmancyDrawerAppbar\n\t}\n}\n","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-nav-drawer-content')\nexport class SchmancyNavigationDrawerContent extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\toverflow-y: auto;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'scroll')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\tthis.parentElement.dispatchEvent(new CustomEvent('scroll', { detail: e, bubbles: true, composed: true }))\n\t\t\t})\n\t}\n\trender() {\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-content': SchmancyNavigationDrawerContent\n\t}\n}\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents } from '..'\nimport { fullHeight } from './../directives/height'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n/**\n * @element schmancy-nav-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-nav-drawer')\nexport class SchmancyNavigationDrawer extends $LitElement(css`\n\t:host {\n\t\tdisplay: flex;\n\t\tflex-grow: 1;\n\t\toverflow: hidden;\n\t}\n`) {\n\t// fullscreen property\n\t@property({ type: Boolean })\n\tfullscreen: boolean = false\n\n\t/**\n\t * The minimum width of the sidebar\n\t * @attr\tbreakpoint\n\t * @type {number}\n\t * @memberof SchmancyNavigationDrawer\n\t */\n\t@property({ type: Number, attribute: 'breakpoint' })\n\tbreakpoint: number = 768\n\n\t/**\n\t * The mode of the sidebar\n\t * @type {TSchmancyDrawerNavbarMode}\n\t * @memberof SchmancyNavigationDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyDrawerNavbarMode })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@provide({ context: SchmancyDrawerNavbarState })\n\t@property()\n\topen: TSchmancyDrawerNavbarState\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent<CustomEvent>(window, 'resize')\n\t\t\t.pipe(\n\t\t\t\tmap(event => event.target as Window),\n\t\t\t\tstartWith(window),\n\t\t\t\tmap(window => window.innerWidth),\n\t\t\t\tmap(width => width >= this.breakpoint),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.NavDrawer_toggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\t// if the mode is push, we don't need to close the overlay when the state is close\n\t\t\t\tif (this.mode === 'push' && state === 'close') return\n\t\t\t\tthis.open = state\n\t\t\t})\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.fullscreen ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t\t${fullHeight()}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer': SchmancyNavigationDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { SchmancyEvents, SchmancyTheme, color } from '..'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n@customElement('schmancy-nav-drawer-navbar')\nexport class SchmancyNavigationDrawerSidebar extends $LitElement() {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tprivate state: TSchmancyDrawerNavbarState\n\n\t@query('#overlay') overlay!: HTMLElement\n\t@query('nav') nav!: HTMLElement\n\n\t@property({ type: String }) width = '320px'\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tif (changedProperties.has('state')) {\n\t\t\tconsole.log('state changed', this.state, this.mode)\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.hideNavDrawer()\n\t\t\t\t\tthis.closeOverlay()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.openOverlay()\n\t\t\t\t\tthis.showNavDrawer()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tthis.showNavDrawer()\n\t\t\t\tthis.closeOverlay()\n\t\t\t}\n\t\t}\n\t}\n\n\topenOverlay() {\n\t\t// Equivalent to onBegin\n\t\tthis.overlay.style.display = 'block'\n\n\t\t// Animate opacity from 0 to 0.4\n\t\tthis.overlay.animate([{ opacity: 0 }, { opacity: 0.4 }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards', // <-- This keeps the final keyframe (0.4) after finishing\n\t\t})\n\t\t// If you want an onfinish here, you can add it:\n\t\t// .onfinish = () => console.log('overlay opened!')\n\t}\n\n\tcloseOverlay() {\n\t\t// Animate opacity from 0.4 to 0\n\t\tconst animation = this.overlay.animate([{ opacity: 0.4 }, { opacity: 0 }], {\n\t\t\tduration: 150,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\t// translateX(-100%) when the animation is finished\n\t\t// Equivalent to onComplete\n\t\tanimation.onfinish = () => {\n\t\t\tthis.overlay.style.display = 'none'\n\t\t}\n\t}\n\n\t// show nav drawer\n\tshowNavDrawer() {\n\t\t// check the transform, skip if already open\n\t\tif (this.nav.style.transform === 'translateX(0)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(-100%)' }, { transform: 'translateX(0)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'open'\n\t\t}\n\t}\n\n\t// hide nav drawer\n\thideNavDrawer() {\n\t\t// skip if already closed\n\t\tif (this.nav.style.transform === 'translateX(-100%)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(0)' }, { transform: 'translateX(-100%)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'close'\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tconst sidebarClasses = {\n\t\t\t'p-[16px] max-w-[360px] w-fit h-full overflow-auto': true,\n\t\t\tblock: this.mode === 'push',\n\t\t\t'fixed inset-0 z-50': this.mode === 'overlay',\n\t\t}\n\t\tconst overlayClass = {\n\t\t\t'fixed inset-0 z-49 hidden': true,\n\t\t}\n\n\t\tconst styleMap = {\n\t\t\twidth: this.width,\n\t\t}\n\n\t\treturn html`\n\t\t\t<nav\n\t\t\t\tstyle=${this.styleMap(styleMap)}\n\t\t\t\tclass=\"${this.classMap({ ...sidebarClasses })}\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.container,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</nav>\n\t\t\t<div\n\t\t\t\tid=\"overlay\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.scrim,\n\t\t\t\t})}\n\t\t\t\t@click=${() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\tdetail: { state: 'close' },\n\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}}\n\t\t\t\tclass=\"${this.classMap({ ...overlayClass })}\"\n\t\t\t></div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-navbar': SchmancyNavigationDrawerSidebar\n\t}\n}\n","import { bufferTime, concatMap, filter, fromEvent, map, of, Subject, take, tap, timeout, zip } from 'rxjs'\nimport { SchmancyTeleportation } from './teleport.component'\n\nexport type WhereAreYouRickyEvent = CustomEvent<{\n\tid: string\n\tcallerID: number\n}>\n\nexport const WhereAreYouRicky = 'whereAreYouRicky'\n\nexport type HereMortyEvent = CustomEvent<{\n\tcomponent: SchmancyTeleportation\n}>\n\nexport type FLIP_REQUEST = {\n\tfrom: {\n\t\trect: DOMRect\n\t\telement?: HTMLElement\n\t}\n\tto: {\n\t\trect: DOMRect\n\t\telement: HTMLElement\n\t}\n\tstagger?: number\n\thost: HTMLElement\n}\nexport const HereMorty = 'hereMorty'\n\nclass Teleportation {\n\tactiveTeleportations = new Map<string, DOMRect>()\n\tflipRequests = new Subject<FLIP_REQUEST>()\n\n\tconstructor() {\n\t\tthis.flipRequests\n\t\t\t.pipe(\n\t\t\t\tbufferTime(1),\n\t\t\t\tmap(requests =>\n\t\t\t\t\trequests.map(({ from, to, host }, i) => ({\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tto,\n\t\t\t\t\t\thost,\n\t\t\t\t\t\ti,\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t\t\tconcatMap(requests => zip(requests.map(request => of(this.flip(request))))),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\tfind = (component: SchmancyTeleportation) => {\n\t\treturn zip([\n\t\t\tfromEvent<HereMortyEvent>(window, HereMorty).pipe(\n\t\t\t\tfilter(\n\t\t\t\t\te =>\n\t\t\t\t\t\t!!e.detail.component.uuid &&\n\t\t\t\t\t\t!!component.id &&\n\t\t\t\t\t\te.detail.component.id === component.id &&\n\t\t\t\t\t\te.detail.component.uuid !== component.uuid,\n\t\t\t\t),\n\t\t\t\tmap(e => e.detail.component),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\tof(component).pipe(\n\t\t\t\ttap(() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent<WhereAreYouRickyEvent['detail']>(WhereAreYouRicky, {\n\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\tid: component.id,\n\t\t\t\t\t\t\t\tcallerID: component.uuid,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}),\n\t\t\t),\n\t\t]).pipe(\n\t\t\tmap(([component]) => component),\n\t\t\ttimeout(0),\n\t\t)\n\t}\n\n\tflip = (request: {\n\t\tfrom: {\n\t\t\trect: DOMRect\n\t\t}\n\t\tto: {\n\t\t\telement: HTMLElement\n\t\t\trect: DOMRect\n\t\t}\n\t\thost: HTMLElement\n\t\ti: number\n\t}) => {\n\t\tconst { from, to } = request\n\n\t\t// Prepare the element for animation\n\t\tconst originalZIndex = to.element.style.zIndex\n\t\tto.element.style.transformOrigin = 'top left'\n\t\tto.element.style.setProperty('visibility', 'visible')\n\t\tto.element.style.zIndex = '1000'\n\n\t\t// \"onBegin\" logic goes here (since Web Animations doesn't have onBegin).\n\t\t// If you had more logic, place it here:\n\t\t// e.g., console.log('Starting FLIP animation...');\n\n\t\t// Calculate starting and ending transforms\n\t\tconst startX = from.rect.left - to.rect.left\n\t\tconst startY = from.rect.top - to.rect.top\n\t\tconst startScaleX = from.rect.width / to.rect.width\n\t\tconst startScaleY = from.rect.height / to.rect.height\n\n\t\t// Create keyframes\n\t\tconst keyframes: Keyframe[] = [\n\t\t\t{\n\t\t\t\ttransform: `translate(${startX}px, ${startY}px) scale(${startScaleX}, ${startScaleY})`,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttransform: 'translate(0, 0) scale(1, 1)',\n\t\t\t},\n\t\t]\n\n\t\t// Use native Web Animations API\n\t\tconst animation = to.element.animate(keyframes, {\n\t\t\tduration: 250,\n\t\t\tdelay: 10, // if desired\n\t\t\t// Approximate 'inOutQuad' via a cubic-bezier easing.\n\t\t\t// You can adjust these values to taste, or use a standard one:\n\t\t\teasing: 'cubic-bezier(0.455, 0.03, 0.515, 0.955)',\n\t\t\t// or simply 'ease-in-out'\n\t\t})\n\n\t\t// \"onComplete\" logic goes here\n\t\tanimation.onfinish = () => {\n\t\t\tto.element.style.zIndex = originalZIndex\n\t\t\tto.element.style.transformOrigin = ''\n\t\t\t// If you have additional cleanup, place it here\n\t\t\t// e.g., console.log('FLIP animation completed!');\n\t\t}\n\t}\n}\n\nexport const teleport = new Teleportation()\nexport default teleport\n","import { Observable, interval } from 'rxjs'\nimport { distinctUntilChanged, map, take } from 'rxjs/operators'\n\n// Function to monitor element's bounding client rect\nexport function watchElementRect(element: Element): Observable<DOMRectReadOnly> {\n\treturn interval(50).pipe(\n\t\t// startWith(true),\n\t\tmap(() => element.getBoundingClientRect()),\n\t\tdistinctUntilChanged(\n\t\t\t(prev, curr) =>\n\t\t\t\tprev.width === curr.width &&\n\t\t\t\tprev.height === curr.height &&\n\t\t\t\tprev.top === curr.top &&\n\t\t\t\tprev.right === curr.right &&\n\t\t\t\tprev.bottom === curr.bottom &&\n\t\t\t\tprev.left === curr.left,\n\t\t),\n\t\ttake(1),\n\t)\n}\n","import { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { filter, fromEvent, merge, of, takeUntil, tap, throwIfEmpty } from 'rxjs'\nimport { FINDING_MORTIES, FINDING_MORTIES_EVENT, HERE_RICKY, HERE_RICKY_EVENT } from '..'\nimport {\n\tHereMorty,\n\tHereMortyEvent,\n\tWhereAreYouRicky,\n\tWhereAreYouRickyEvent,\n\tdefault as teleport,\n\tdefault as teleportationService,\n} from './teleport.service'\nimport { watchElementRect } from './watcher'\nimport { $LitElement } from '@mixins/index'\n@customElement('schmancy-teleport')\nexport class SchmancyTeleportation extends $LitElement(css``) {\n\t/**\n\t * @attr {string} uuid - The component tag to teleport\n\t * @readonly\n\t */\n\t@property({ type: Number, reflect: true }) uuid = Math.floor(Math.random() * Date.now())\n\n\t/**\n\t * @attr {string} id - The component tag to teleport\n\t * @required\n\t */\n\t@property({ type: String }) id!: string\n\n\t@property({ type: Number }) delay = 0\n\n\tdebugging = import.meta.env.DEV ? true : false\n\n\tget _slottedChildren() {\n\t\tconst slot = this.shadowRoot.querySelector('slot')\n\t\treturn slot.assignedElements({ flatten: true })\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (this.id === undefined) throw new Error('id is required')\n\t\tsuper.connectedCallback()\n\t\tmerge(\n\t\t\tfromEvent<FINDING_MORTIES_EVENT>(window, FINDING_MORTIES).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\tnew CustomEvent<HERE_RICKY_EVENT['detail']>(HERE_RICKY, {\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<WhereAreYouRickyEvent>(window, WhereAreYouRicky).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: e => {\n\t\t\t\t\t\tif (e.detail.id === this.id && this.uuid && e.detail.callerID !== this.uuid) {\n\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\tnew CustomEvent<HereMortyEvent['detail']>(HereMorty, {\n\t\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\tasync firstUpdated() {\n\t\tof(teleportationService.activeTeleportations.get(this.id))\n\t\t\t.pipe(\n\t\t\t\tfilter(a => !!a),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tthrowIfEmpty(),\n\t\t\t)\n\t\t\t.subscribe({\n\t\t\t\tnext: domRect => {\n\t\t\t\t\tconsole.count('teleport')\n\t\t\t\t\tthis.style.setProperty('visibility', 'hidden')\n\t\t\t\t\t// teleport.flipRequests.next({ from: component, to: this, stagger: 0 })\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\t// console.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t\tteleport.flipRequests.next({\n\t\t\t\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\t\t\t\trect: domRect,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\t\t\t\trect: e,\n\t\t\t\t\t\t\t\t\t\telement: this._slottedChildren[0] as HTMLElement,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thost: this,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\terror: () => {\n\t\t\t\t\tthis.style.setProperty('visibility', 'visible')\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\tconsole.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tcomplete: () => {},\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-teleport': SchmancyTeleportation\n\t}\n}\n"],"names":["SchmancyCardMedia","TailwindElement","css","html","customElement","SchmancyCard","super","arguments","this","type","elevation","classes","includes","classMap","__decorateClass","property","prototype","Number","SchmancyCardContent","render","onSurface","SchmancyTheme","sys","color","surface","on","onSurfaceVariant","onVariant","src","fit","styleMap","height","String","reflect","schmancyContentDrawer","constructor","$drawer","Subject","pipe","subscribe","data","action","ref","dispatchEvent","CustomEvent","SchmancyEvents","ContentDrawerToggle","detail","state","bubbles","composed","component","title","next","e","SchmancyContentDrawerSheetMode","createContext","SchmancyContentDrawerSheetState","SchmancyContentDrawerID","Math","floor","random","Date","now","toString","SchmancyContentDrawerMaxHeight","SchmancyContentDrawerMinWidth","SchmancyContentDrawer","$LitElement","minWidth","main","sheet","schmancyContentDrawerID","maxHeight","merge","fromEvent","window","ContentDrawerResize","startWith","tap","map","clientWidth","innerWidth","width","debounceTime","innerHeight","getOffsetTop","style","setProperty","distinctUntilChanged","takeUntil","disconnecting","lgScreen","mode","open","event","stopPropagation","area","push","historyStrategy","uid","element","offsetTop","offsetParent","nothing","provide","context","queryAssignedElements","flatten","SchmancyContentDrawerMain","connectedCallback","drawerMinWidth","changedProperties","update","has","styles","when","consume","SchmancyContentDrawerSheet","updated","closeAll","dismiss","position","display","animate","opacity","transform","duration","easing","from","closeModalSheet","closeSheet","of","Observable","observer","onfinish","complete","sheetClasses","block","query","slot","schmancyNavDrawer","distinctUntilKeyChanged","NavDrawer_toggle","self","SchmancyDrawerNavbarMode","SchmancyDrawerNavbarState","SchmancyDrawerAppbar","toggler","sidebarToggler","sidebarMode","hidden","sidebarOpen","Boolean","SchmancyNavigationDrawerContent","parentElement","SchmancyNavigationDrawer","fullscreen","breakpoint","target","fullHeight","attribute","SchmancyNavigationDrawerSidebar","hideNavDrawer","closeOverlay","openOverlay","showNavDrawer","overlay","fill","nav","sidebarClasses","bgColor","container","scrim","WhereAreYouRicky","HereMorty","teleport","activeTeleportations","Map","flipRequests","find","zip","filter","uuid","id","take","callerID","timeout","flip","request","to","originalZIndex","zIndex","transformOrigin","keyframes","rect","left","top","delay","bufferTime","requests","host","i","concatMap","watchElementRect","interval","getBoundingClientRect","prev","curr","right","bottom","SchmancyTeleportation","debugging","shadowRoot","querySelector","assignedElements","Error","FINDING_MORTIES","HERE_RICKY","firstUpdated","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"teleport.component-CrWThxV-.js","sources":["../src/card/actions.ts","../src/card/card.ts","../src/card/content.ts","../src/card/media.ts","../src/content-drawer/$sheet.ts","../src/content-drawer/context.ts","../src/content-drawer/drawer.ts","../src/content-drawer/main.ts","../src/content-drawer/sheet.ts","../src/nav-drawer/$navbar.ts","../src/nav-drawer/context.ts","../src/nav-drawer/appbar.ts","../src/nav-drawer/content.ts","../src/nav-drawer/drawer.ts","../src/nav-drawer/navbar.ts","../src/teleport/teleport.service.ts","../src/teleport/watcher.ts","../src/teleport/teleport.component.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-action\n * @slot - The content of the action\n */\n@customElement('schmancy-card-action')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html` <section class=\"pb-4 px-4\"><slot> </slot></section> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-action': SchmancyCardMedia\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-card')\nexport default class SchmancyCard extends TailwindElement() {\n\t@property() type: 'elevated' | 'filled' | 'outlined' = 'elevated'\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'rounded-md': true,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'shadow-5': this.elevation === 5,\n\t\t\t'hover:shadow-xs': ['outlined', 'filled'].includes(this.type),\n\t\t\t'bg-surface-low shadow-xs hover:shadow-sm': this.type === 'elevated',\n\t\t\t'bg-surface-highest': this.type === 'filled',\n\t\t\t'bg-surface-default border border-solid border-1 border-outlineVariant': this.type === 'outlined',\n\t\t}\n\t\treturn html`<div class=\"${this.classMap(classes)}\">\n\t\t\t<slot> </slot>\n\t\t</div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card': SchmancyCard\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { color } from '..'\n\n/**\n * @element schmancy-card-content\n * @slot headline\n * @slot subhead\n * @slot default - The content of the card\n */\n@customElement('schmancy-card-content')\nexport default class SchmancyCardContent extends TailwindElement() {\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'px-[16px] py-[24px]': true,\n\t\t}\n\t\tconst onSurface = SchmancyTheme.sys.color.surface.on\n\t\tconst onSurfaceVariant = SchmancyTheme.sys.color.surface.onVariant\n\t\treturn html`<schmancy-grid gap=\"md\" class=\"${this.classMap(classes)}\">\n\t\t\t<schmancy-grid gap=\"xs\">\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurface,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\ttoken=\"lg\"\n\t\t\t\t\t><slot name=\"headline\"> </slot\n\t\t\t\t></schmancy-typography>\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t><slot name=\"subhead\"></slot>\n\t\t\t\t</schmancy-typography>\n\t\t\t</schmancy-grid>\n\t\t\t<schmancy-typography\n\t\t\t\ttype=\"body\"\n\t\t\t\t${color({\n\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-typography>\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-content': SchmancyCardContent\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-media\n */\n@customElement('schmancy-card-media')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tsrc: string = ''\n\n\t@property({ type: String })\n\tfit: 'contain' | 'cover' | 'fill' | 'none' | 'scale-down' = 'contain'\n\n\tprotected render(): unknown {\n\t\tconst styles = {\n\t\t\theight: '200px',\n\t\t}\n\t\tconst classes = {\n\t\t\t'object-center': true,\n\t\t\t'object-contain': this.fit === 'contain',\n\t\t\t'object-cover w-full': this.fit === 'cover',\n\t\t\t'object-fill': this.fit === 'fill',\n\t\t\t'object-none': this.fit === 'none',\n\t\t\t'object-scale-down': this.fit === 'scale-down',\n\t\t}\n\t\treturn html`<schmancy-grid align=\"stretch\" justify=\"stretch\" gap=\"md\">\n\t\t\t<img src=\"${this.src}\" style=${this.styleMap(styles)} class=\"${this.classMap(classes)}\" />\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-media': SchmancyCardMedia\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { Subject } from 'rxjs'\n\ntype DrawerAction = 'dismiss' | 'render'\ntype TRef = Element | Window\ntype TRenderRequest = HTMLElement\nexport type TRenderCustomEvent = CustomEvent<{\n\tcomponent: TRenderRequest\n\ttitle?: string\n}>\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tref: TRef\n\t\taction: DrawerAction\n\t\tcomponent?: TRenderRequest\n\t\ttitle?: string\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe().subscribe(data => {\n\t\t\tif (data.action === 'dismiss') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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} else if (data.action === 'render') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-content-drawer-render', {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tcomponent: data.component,\n\t\t\t\t\t\t\ttitle: data.title,\n\t\t\t\t\t\t},\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\t})\n\t}\n\n\tdimiss(ref: TRef) {\n\t\tthis.$drawer.next({\n\t\t\taction: 'dismiss',\n\t\t\tref: ref,\n\t\t})\n\t}\n\n\trender(ref: TRef, component: TRenderRequest, title?: string) {\n\t\tref.dispatchEvent(new CustomEvent('custom-event'))\n\t\tthis.$drawer.next({\n\t\t\taction: 'render',\n\t\t\tref: ref,\n\t\t\tcomponent: component,\n\t\t\ttitle,\n\t\t})\n\t}\n}\n\nexport const schmancyContentDrawer = new Drawer()\n","import { createContext } from '@lit/context'\nexport type TSchmancyContentDrawerSheetMode = 'push' | 'overlay'\nexport const SchmancyContentDrawerSheetMode = createContext<TSchmancyContentDrawerSheetMode>('push')\n\nexport type TSchmancyContentDrawerSheetState = 'open' | 'close'\nexport const SchmancyContentDrawerSheetState = createContext<TSchmancyContentDrawerSheetState>('close')\n\nexport const SchmancyContentDrawerID = createContext<string>(Math.floor(Math.random() * Date.now()).toString())\nexport const SchmancyContentDrawerMaxHeight = createContext<string>('100%')\nexport const SchmancyContentDrawerMinWidth = createContext<{\n\tmain: number\n\tsheet: number\n}>({})\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, merge, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, TRenderCustomEvent, area, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n/**\n * @element schmancy-content-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-content-drawer')\nexport class SchmancyContentDrawer extends $LitElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t/**\n\t * The minimum width of the sheet\n\t * @attr\tminWidth\n\t * @type {number}\n\t * @memberof SchmancyContentDrawer\n\t */\n\n\t@provide({ context: SchmancyContentDrawerMinWidth })\n\tminWidth: typeof SchmancyContentDrawerMinWidth.__context__ = {\n\t\tmain: 360,\n\t\tsheet: 576,\n\t}\n\n\t/**\n\t * The state of the sheet\n\t * @attr open\n\t * @type {TSchmancyContentDrawerSheetState}\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetState })\n\t@property()\n\topen: TSchmancyContentDrawerSheetState\n\n\t/**\n\t * The mode of the sheet\n\t * @type {TSchmancyContentDrawerSheetMode}\n\t * @memberof SchmancyContentDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetMode })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@provide({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID = Math.floor(Math.random() * Date.now()).toString()\n\n\t@provide({ context: SchmancyContentDrawerMaxHeight })\n\tmaxHeight = '100%'\n\n\t@queryAssignedElements({ flatten: true })\n\tassignedElements!: HTMLElement[]\n\tfirstUpdated(): void {\n\t\tmerge(fromEvent<CustomEvent>(window, 'resize'), fromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerResize))\n\t\t\t.pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\ttap(() => console.log(this.minWidth)),\n\t\t\t\tmap(() => (this.clientWidth ? this.clientWidth : window.innerWidth)),\n\t\t\t\tmap(width => width >= this.minWidth.main + this.minWidth.sheet),\n\t\t\t\tdebounceTime(100),\n\t\t\t\ttap(() => {\n\t\t\t\t\tthis.maxHeight = `${window.innerHeight - this.getOffsetTop(this) - 32}px`\n\t\t\t\t\tthis.style.setProperty('max-height', this.maxHeight)\n\t\t\t\t}),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerToggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\tthis.open = state\n\t\t\t})\n\n\t\tfromEvent<TRenderCustomEvent>(window, 'schmancy-content-drawer-render')\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(({ component, title }) => {\n\t\t\t\tif (this.mode === 'push') {\n\t\t\t\t\t// TODO: Fix the router to render if constructor has different arguments\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: 'empty',\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: component,\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t} else if ((this.mode = 'overlay')) {\n\t\t\t\t\tsheet.open({ component: component, uid: this.schmancyContentDrawerID, title })\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tgetOffsetTop(element) {\n\t\tlet offsetTop = 0\n\t\twhile (element) {\n\t\t\toffsetTop += element.offsetTop\n\t\t\telement = element.offsetParent\n\t\t}\n\t\treturn offsetTop\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.mode === 'overlay' ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer': SchmancyContentDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { PropertyValueMap, css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyEvents } from '..'\nimport {\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetMode,\n} from './context'\nimport { when } from 'lit/directives/when.js'\n\n@customElement('schmancy-content-drawer-main')\nexport class SchmancyContentDrawerMain extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) this.drawerMinWidth.main = this.minWidth\n\t\telse this.minWidth = this.drawerMinWidth.main\n\t}\n\n\tprotected update(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\t\tsuper.update(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\tthis.drawerMinWidth.main = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t}\n\t}\n\n\trender() {\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\t\treturn html`\n\t\t\t<section class=\"relative inset-0 h-full\">\n\t\t\t\t<schmancy-grid\n\t\t\t\t\tclass=\"h-full relative overflow-scroll\"\n\t\t\t\t\tcols=\"${this.mode === 'push' ? 'auto 1fr' : '1fr'}\"\n\t\t\t\t\trows=\"1fr\"\n\t\t\t\t\tflow=\"col\"\n\t\t\t\t\talign=\"stretch\"\n\t\t\t\t\tjustify=\"stretch\"\n\t\t\t\t>\n\t\t\t\t\t<section style=${this.styleMap(styles)}>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</section>\n\t\t\t\t</schmancy-grid>\n\t\t\t\t${when(\n\t\t\t\t\tthis.mode === 'push',\n\t\t\t\t\t() => html` <schmancy-divider class=\"absolute right-0 top-0\" orientation=\"vertical\"></schmancy-divider>`,\n\t\t\t\t)}\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-main': SchmancyContentDrawerMain\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, merge, Observable, of, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n// --- 1) Removed the custom animate import\n// import { animate } from '@packages/anime-beta-master'\n\n@customElement('schmancy-content-drawer-sheet')\nexport class SchmancyContentDrawerSheet extends $LitElement(css`\n\t:host {\n\t\toverflow: scroll;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerSheetState, subscribe: true })\n\t@state()\n\tstate: TSchmancyContentDrawerSheetState\n\n\t@consume({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID\n\n\t@query('#sheet') sheet!: HTMLElement\n\t@queryAssignedElements({ flatten: true, slot: undefined }) defaultSlot!: HTMLElement[]\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) {\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t} else {\n\t\t\tthis.minWidth = this.drawerMinWidth.sheet\n\t\t}\n\t}\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\t// If the 'minWidth' property changed\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t} else if (changedProperties.has('state') || changedProperties.has('mode')) {\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\t// Overlay open logic if needed\n\t\t\t\t\t// this.open()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tsheet.dismiss(this.schmancyContentDrawerID)\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.open()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Open the sheet by sliding it into view.\n\t */\n\topen() {\n\t\t// \"onBegin\" logic from the old `animate(...)`\n\t\tif (this.mode === 'overlay') {\n\t\t\tthis.sheet.style.position = 'fixed'\n\t\t} else {\n\t\t\tthis.sheet.style.position = 'relative'\n\t\t}\n\t\tthis.sheet.style.display = 'block'\n\n\t\t// --- 2) Use native Web Animations API ---\n\t\tthis.sheet.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'translateX(100%)' },\n\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 500,\n\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t},\n\t\t)\n\t\t// No return is needed if you don't rely on the result\n\t}\n\n\t/**\n\t * Close everything (modal sheet + the sheet itself).\n\t */\n\tcloseAll() {\n\t\t// Merge them into a single subscription,\n\t\t// so that everything closes in parallel.\n\t\tmerge(from(this.closeModalSheet()), from(this.closeSheet())).pipe(takeUntil(this.disconnecting)).subscribe()\n\t}\n\n\t/**\n\t * Dismiss the \"modal sheet.\"\n\t * This just returns an Observable that completes immediately.\n\t */\n\tcloseModalSheet() {\n\t\treturn of(true).pipe(tap(() => sheet.dismiss(this.schmancyContentDrawerID)))\n\t}\n\n\t/**\n\t * Slide the sheet out of view + hide it.\n\t * Return an Observable so we can merge it with other close operations.\n\t */\n\tcloseSheet() {\n\t\t// --- 2) Use native Web Animations API and wrap in an Observable ---\n\t\treturn new Observable<void>(observer => {\n\t\t\tconst animation = this.sheet.animate(\n\t\t\t\t[\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(100%)' },\n\t\t\t\t],\n\t\t\t\t{\n\t\t\t\t\tduration: 500,\n\t\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t\t},\n\t\t\t)\n\n\t\t\tanimation.onfinish = () => {\n\t\t\t\t// \"onComplete\" logic\n\t\t\t\tthis.sheet.style.display = 'none'\n\t\t\t\tobserver.next()\n\t\t\t\tobserver.complete()\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected render() {\n\t\tconst sheetClasses = {\n\t\t\tblock: this.mode === 'push',\n\t\t\t'absolute z-50': this.mode === 'overlay',\n\t\t\t'opacity-1': this.mode === 'overlay' && this.state === 'open',\n\t\t}\n\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\n\t\treturn html`\n\t\t\t<section id=\"sheet\" class=\"${this.classMap(sheetClasses)}\" style=${this.styleMap(styles)}>\n\t\t\t\t<schmancy-area name=\"${this.schmancyContentDrawerID}\">\n\t\t\t\t\t<slot name=\"placeholder\"></slot>\n\t\t\t\t</schmancy-area>\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-sheet': SchmancyContentDrawerSheet\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { debounceTime, distinctUntilKeyChanged, Subject } from 'rxjs'\n\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tself: HTMLElement\n\t\tstate: boolean\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe(distinctUntilKeyChanged('state'), debounceTime(100)).subscribe(data => {\n\t\t\tconsole.log('drawer', data)\n\t\t\tif (data.state) {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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} else {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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\t})\n\t}\n\topen(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: true,\n\t\t})\n\t}\n\tclose(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: false,\n\t\t})\n\t}\n}\n\nexport const schmancyNavDrawer = new Drawer()\nconst $drawer = schmancyNavDrawer\n\nexport { $drawer }\n","import { createContext } from '@lit/context'\nexport type TSchmancyDrawerNavbarMode = 'push' | 'overlay' | undefined\nexport const SchmancyDrawerNavbarMode = createContext<TSchmancyDrawerNavbarMode>('push')\n\nexport type TSchmancyDrawerNavbarState = 'open' | 'close' | undefined\nexport const SchmancyDrawerNavbarState = createContext<TSchmancyDrawerNavbarState>('close')\n","import { consume } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n} from '@schmancy/nav-drawer/context'\nimport { css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyEvents } from '..'\n\n/**\n * @element schmancy-nav-drawer-appbar\n * @slot toggler - The toggler slot\n * @slot - The default slot\n */\n@customElement('schmancy-nav-drawer-appbar')\nexport class SchmancyDrawerAppbar extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tsidebarMode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tsidebarOpen\n\n\t@property({ type: Boolean }) toggler = true\n\n\trender() {\n\t\tconst appbarClasses = {\n\t\t\t'block z-50': true,\n\t\t}\n\t\tconst sidebarToggler = {\n\t\t\t'block left-3 z-50': this.sidebarMode === 'overlay',\n\t\t\thidden: this.sidebarMode === 'push',\n\t\t}\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.sidebarMode === 'overlay' && this.toggler ? 'auto 1fr' : '1fr'}\n\t\t\t\tflow=\"col\"\n\t\t\t\tclass=${this.classMap(appbarClasses)}\n\t\t\t\tgap=\"sm\"\n\t\t\t\talign=\"center\"\n\t\t\t>\n\t\t\t\t${when(\n\t\t\t\t\tthis.sidebarMode === 'overlay' && this.toggler,\n\t\t\t\t\t() =>\n\t\t\t\t\t\thtml`<slot name=\"toggler\">\n\t\t\t\t\t\t\t<div class=\"${this.classMap(sidebarToggler)}\">\n\t\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\t\t@click=${() => {\n\t\t\t\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\t\t\t\t\t\tdetail: { state: this.sidebarOpen === 'open' ? 'close' : 'open' },\n\t\t\t\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t${when(\n\t\t\t\t\t\t\t\t\t\tthis.sidebarOpen === 'close',\n\t\t\t\t\t\t\t\t\t\t() => html`menu`,\n\t\t\t\t\t\t\t\t\t\t() => html`menu_open`,\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</slot>`,\n\t\t\t\t)}\n\n\t\t\t\t<slot> </slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-appbar': SchmancyDrawerAppbar\n\t}\n}\n","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-nav-drawer-content')\nexport class SchmancyNavigationDrawerContent extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\toverflow-y: auto;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'scroll')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\tthis.parentElement.dispatchEvent(new CustomEvent('scroll', { detail: e, bubbles: true, composed: true }))\n\t\t\t})\n\t}\n\trender() {\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-content': SchmancyNavigationDrawerContent\n\t}\n}\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents } from '..'\nimport { fullHeight } from './../directives/height'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n/**\n * @element schmancy-nav-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-nav-drawer')\nexport class SchmancyNavigationDrawer extends $LitElement(css`\n\t:host {\n\t\tdisplay: flex;\n\t\tflex-grow: 1;\n\t\toverflow: hidden;\n\t}\n`) {\n\t// fullscreen property\n\t@property({ type: Boolean })\n\tfullscreen: boolean = false\n\n\t/**\n\t * The minimum width of the sidebar\n\t * @attr\tbreakpoint\n\t * @type {number}\n\t * @memberof SchmancyNavigationDrawer\n\t */\n\t@property({ type: Number, attribute: 'breakpoint' })\n\tbreakpoint: number = 768\n\n\t/**\n\t * The mode of the sidebar\n\t * @type {TSchmancyDrawerNavbarMode}\n\t * @memberof SchmancyNavigationDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyDrawerNavbarMode })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@provide({ context: SchmancyDrawerNavbarState })\n\t@property()\n\topen: TSchmancyDrawerNavbarState\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent<CustomEvent>(window, 'resize')\n\t\t\t.pipe(\n\t\t\t\tmap(event => event.target as Window),\n\t\t\t\tstartWith(window),\n\t\t\t\tmap(window => window.innerWidth),\n\t\t\t\tmap(width => width >= this.breakpoint),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.NavDrawer_toggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\t// if the mode is push, we don't need to close the overlay when the state is close\n\t\t\t\tif (this.mode === 'push' && state === 'close') return\n\t\t\t\tthis.open = state\n\t\t\t})\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.fullscreen ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t\t${fullHeight()}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer': SchmancyNavigationDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { SchmancyEvents, SchmancyTheme, color } from '..'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n@customElement('schmancy-nav-drawer-navbar')\nexport class SchmancyNavigationDrawerSidebar extends $LitElement() {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tprivate state: TSchmancyDrawerNavbarState\n\n\t@query('#overlay') overlay!: HTMLElement\n\t@query('nav') nav!: HTMLElement\n\n\t@property({ type: String }) width = '320px'\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tif (changedProperties.has('state')) {\n\t\t\tconsole.log('state changed', this.state, this.mode)\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.hideNavDrawer()\n\t\t\t\t\tthis.closeOverlay()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.openOverlay()\n\t\t\t\t\tthis.showNavDrawer()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tthis.showNavDrawer()\n\t\t\t\tthis.closeOverlay()\n\t\t\t}\n\t\t}\n\t}\n\n\topenOverlay() {\n\t\t// Equivalent to onBegin\n\t\tthis.overlay.style.display = 'block'\n\n\t\t// Animate opacity from 0 to 0.4\n\t\tthis.overlay.animate([{ opacity: 0 }, { opacity: 0.4 }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards', // <-- This keeps the final keyframe (0.4) after finishing\n\t\t})\n\t\t// If you want an onfinish here, you can add it:\n\t\t// .onfinish = () => console.log('overlay opened!')\n\t}\n\n\tcloseOverlay() {\n\t\t// Animate opacity from 0.4 to 0\n\t\tconst animation = this.overlay.animate([{ opacity: 0.4 }, { opacity: 0 }], {\n\t\t\tduration: 150,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\t// translateX(-100%) when the animation is finished\n\t\t// Equivalent to onComplete\n\t\tanimation.onfinish = () => {\n\t\t\tthis.overlay.style.display = 'none'\n\t\t}\n\t}\n\n\t// show nav drawer\n\tshowNavDrawer() {\n\t\t// check the transform, skip if already open\n\t\tif (this.nav.style.transform === 'translateX(0)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(-100%)' }, { transform: 'translateX(0)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'open'\n\t\t}\n\t}\n\n\t// hide nav drawer\n\thideNavDrawer() {\n\t\t// skip if already closed\n\t\tif (this.nav.style.transform === 'translateX(-100%)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(0)' }, { transform: 'translateX(-100%)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'close'\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tconst sidebarClasses = {\n\t\t\t'p-[16px] max-w-[360px] w-fit h-full overflow-auto': true,\n\t\t\tblock: this.mode === 'push',\n\t\t\t'fixed inset-0 z-50': this.mode === 'overlay',\n\t\t}\n\t\tconst overlayClass = {\n\t\t\t'fixed inset-0 z-49 hidden': true,\n\t\t}\n\n\t\tconst styleMap = {\n\t\t\twidth: this.width,\n\t\t}\n\n\t\treturn html`\n\t\t\t<nav\n\t\t\t\tstyle=${this.styleMap(styleMap)}\n\t\t\t\tclass=\"${this.classMap({ ...sidebarClasses })}\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.container,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</nav>\n\t\t\t<div\n\t\t\t\tid=\"overlay\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.scrim,\n\t\t\t\t})}\n\t\t\t\t@click=${() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\tdetail: { state: 'close' },\n\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}}\n\t\t\t\tclass=\"${this.classMap({ ...overlayClass })}\"\n\t\t\t></div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-navbar': SchmancyNavigationDrawerSidebar\n\t}\n}\n","import { bufferTime, concatMap, filter, fromEvent, map, of, Subject, take, tap, timeout, zip } from 'rxjs'\nimport { SchmancyTeleportation } from './teleport.component'\n\nexport type WhereAreYouRickyEvent = CustomEvent<{\n\tid: string\n\tcallerID: number\n}>\n\nexport const WhereAreYouRicky = 'whereAreYouRicky'\n\nexport type HereMortyEvent = CustomEvent<{\n\tcomponent: SchmancyTeleportation\n}>\n\nexport type FLIP_REQUEST = {\n\tfrom: {\n\t\trect: DOMRect\n\t\telement?: HTMLElement\n\t}\n\tto: {\n\t\trect: DOMRect\n\t\telement: HTMLElement\n\t}\n\tstagger?: number\n\thost: HTMLElement\n}\nexport const HereMorty = 'hereMorty'\n\nclass Teleportation {\n\tactiveTeleportations = new Map<string, DOMRect>()\n\tflipRequests = new Subject<FLIP_REQUEST>()\n\n\tconstructor() {\n\t\tthis.flipRequests\n\t\t\t.pipe(\n\t\t\t\tbufferTime(1),\n\t\t\t\tmap(requests =>\n\t\t\t\t\trequests.map(({ from, to, host }, i) => ({\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tto,\n\t\t\t\t\t\thost,\n\t\t\t\t\t\ti,\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t\t\tconcatMap(requests => zip(requests.map(request => of(this.flip(request))))),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\tfind = (component: SchmancyTeleportation) => {\n\t\treturn zip([\n\t\t\tfromEvent<HereMortyEvent>(window, HereMorty).pipe(\n\t\t\t\tfilter(\n\t\t\t\t\te =>\n\t\t\t\t\t\t!!e.detail.component.uuid &&\n\t\t\t\t\t\t!!component.id &&\n\t\t\t\t\t\te.detail.component.id === component.id &&\n\t\t\t\t\t\te.detail.component.uuid !== component.uuid,\n\t\t\t\t),\n\t\t\t\tmap(e => e.detail.component),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\tof(component).pipe(\n\t\t\t\ttap(() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent<WhereAreYouRickyEvent['detail']>(WhereAreYouRicky, {\n\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\tid: component.id,\n\t\t\t\t\t\t\t\tcallerID: component.uuid,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}),\n\t\t\t),\n\t\t]).pipe(\n\t\t\tmap(([component]) => component),\n\t\t\ttimeout(0),\n\t\t)\n\t}\n\n\tflip = (request: {\n\t\tfrom: {\n\t\t\trect: DOMRect\n\t\t}\n\t\tto: {\n\t\t\telement: HTMLElement\n\t\t\trect: DOMRect\n\t\t}\n\t\thost: HTMLElement\n\t\ti: number\n\t}) => {\n\t\tconst { from, to } = request\n\n\t\t// Prepare the element for animation\n\t\tconst originalZIndex = to.element.style.zIndex\n\t\tto.element.style.transformOrigin = 'top left'\n\t\tto.element.style.setProperty('visibility', 'visible')\n\t\tto.element.style.zIndex = '1000'\n\n\t\t// \"onBegin\" logic goes here (since Web Animations doesn't have onBegin).\n\t\t// If you had more logic, place it here:\n\t\t// e.g., console.log('Starting FLIP animation...');\n\n\t\t// Calculate starting and ending transforms\n\t\tconst startX = from.rect.left - to.rect.left\n\t\tconst startY = from.rect.top - to.rect.top\n\t\tconst startScaleX = from.rect.width / to.rect.width\n\t\tconst startScaleY = from.rect.height / to.rect.height\n\n\t\t// Create keyframes\n\t\tconst keyframes: Keyframe[] = [\n\t\t\t{\n\t\t\t\ttransform: `translate(${startX}px, ${startY}px) scale(${startScaleX}, ${startScaleY})`,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttransform: 'translate(0, 0) scale(1, 1)',\n\t\t\t},\n\t\t]\n\n\t\t// Use native Web Animations API\n\t\tconst animation = to.element.animate(keyframes, {\n\t\t\tduration: 250,\n\t\t\tdelay: 10, // if desired\n\t\t\t// Approximate 'inOutQuad' via a cubic-bezier easing.\n\t\t\t// You can adjust these values to taste, or use a standard one:\n\t\t\teasing: 'cubic-bezier(0.455, 0.03, 0.515, 0.955)',\n\t\t\t// or simply 'ease-in-out'\n\t\t})\n\n\t\t// \"onComplete\" logic goes here\n\t\tanimation.onfinish = () => {\n\t\t\tto.element.style.zIndex = originalZIndex\n\t\t\tto.element.style.transformOrigin = ''\n\t\t\t// If you have additional cleanup, place it here\n\t\t\t// e.g., console.log('FLIP animation completed!');\n\t\t}\n\t}\n}\n\nexport const teleport = new Teleportation()\nexport default teleport\n","import { Observable, interval } from 'rxjs'\nimport { distinctUntilChanged, map, take } from 'rxjs/operators'\n\n// Function to monitor element's bounding client rect\nexport function watchElementRect(element: Element): Observable<DOMRectReadOnly> {\n\treturn interval(50).pipe(\n\t\t// startWith(true),\n\t\tmap(() => element.getBoundingClientRect()),\n\t\tdistinctUntilChanged(\n\t\t\t(prev, curr) =>\n\t\t\t\tprev.width === curr.width &&\n\t\t\t\tprev.height === curr.height &&\n\t\t\t\tprev.top === curr.top &&\n\t\t\t\tprev.right === curr.right &&\n\t\t\t\tprev.bottom === curr.bottom &&\n\t\t\t\tprev.left === curr.left,\n\t\t),\n\t\ttake(1),\n\t)\n}\n","import { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { filter, fromEvent, merge, of, takeUntil, tap, throwIfEmpty } from 'rxjs'\nimport { FINDING_MORTIES, FINDING_MORTIES_EVENT, HERE_RICKY, HERE_RICKY_EVENT } from '..'\nimport {\n\tHereMorty,\n\tHereMortyEvent,\n\tWhereAreYouRicky,\n\tWhereAreYouRickyEvent,\n\tdefault as teleport,\n\tdefault as teleportationService,\n} from './teleport.service'\nimport { watchElementRect } from './watcher'\nimport { $LitElement } from '@mixins/index'\n@customElement('schmancy-teleport')\nexport class SchmancyTeleportation extends $LitElement(css``) {\n\t/**\n\t * @attr {string} uuid - The component tag to teleport\n\t * @readonly\n\t */\n\t@property({ type: Number, reflect: true }) uuid = Math.floor(Math.random() * Date.now())\n\n\t/**\n\t * @attr {string} id - The component tag to teleport\n\t * @required\n\t */\n\t@property({ type: String }) id!: string\n\n\t@property({ type: Number }) delay = 0\n\n\tdebugging = import.meta.env.DEV ? true : false\n\n\tget _slottedChildren() {\n\t\tconst slot = this.shadowRoot.querySelector('slot')\n\t\treturn slot.assignedElements({ flatten: true })\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (this.id === undefined) throw new Error('id is required')\n\t\tsuper.connectedCallback()\n\t\tmerge(\n\t\t\tfromEvent<FINDING_MORTIES_EVENT>(window, FINDING_MORTIES).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\tnew CustomEvent<HERE_RICKY_EVENT['detail']>(HERE_RICKY, {\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<WhereAreYouRickyEvent>(window, WhereAreYouRicky).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: e => {\n\t\t\t\t\t\tif (e.detail.id === this.id && this.uuid && e.detail.callerID !== this.uuid) {\n\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\tnew CustomEvent<HereMortyEvent['detail']>(HereMorty, {\n\t\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\tasync firstUpdated() {\n\t\tof(teleportationService.activeTeleportations.get(this.id))\n\t\t\t.pipe(\n\t\t\t\tfilter(a => !!a),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tthrowIfEmpty(),\n\t\t\t)\n\t\t\t.subscribe({\n\t\t\t\tnext: domRect => {\n\t\t\t\t\tconsole.count('teleport')\n\t\t\t\t\tthis.style.setProperty('visibility', 'hidden')\n\t\t\t\t\t// teleport.flipRequests.next({ from: component, to: this, stagger: 0 })\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\t// console.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t\tteleport.flipRequests.next({\n\t\t\t\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\t\t\t\trect: domRect,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\t\t\t\trect: e,\n\t\t\t\t\t\t\t\t\t\telement: this._slottedChildren[0] as HTMLElement,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thost: this,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\terror: () => {\n\t\t\t\t\tthis.style.setProperty('visibility', 'visible')\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\tconsole.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tcomplete: () => {},\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-teleport': SchmancyTeleportation\n\t}\n}\n"],"names":["SchmancyCardMedia","TailwindElement","css","html","customElement","SchmancyCard","super","arguments","this","type","elevation","classes","includes","classMap","__decorateClass","property","prototype","Number","SchmancyCardContent","render","onSurface","SchmancyTheme","sys","color","surface","on","onSurfaceVariant","onVariant","src","fit","styleMap","height","String","reflect","schmancyContentDrawer","constructor","$drawer","Subject","pipe","subscribe","data","action","ref","dispatchEvent","CustomEvent","SchmancyEvents","ContentDrawerToggle","detail","state","bubbles","composed","component","title","next","e","SchmancyContentDrawerSheetMode","createContext","SchmancyContentDrawerSheetState","SchmancyContentDrawerID","Math","floor","random","Date","now","toString","SchmancyContentDrawerMaxHeight","SchmancyContentDrawerMinWidth","SchmancyContentDrawer","$LitElement","minWidth","main","sheet","schmancyContentDrawerID","maxHeight","merge","fromEvent","window","ContentDrawerResize","startWith","tap","map","clientWidth","innerWidth","width","debounceTime","innerHeight","getOffsetTop","style","setProperty","distinctUntilChanged","takeUntil","disconnecting","lgScreen","mode","open","event","stopPropagation","area","push","historyStrategy","uid","element","offsetTop","offsetParent","nothing","provide","context","queryAssignedElements","flatten","SchmancyContentDrawerMain","connectedCallback","drawerMinWidth","changedProperties","update","has","styles","when","consume","SchmancyContentDrawerSheet","updated","closeAll","dismiss","position","display","animate","opacity","transform","duration","easing","from","closeModalSheet","closeSheet","of","Observable","observer","onfinish","complete","sheetClasses","block","query","slot","schmancyNavDrawer","distinctUntilKeyChanged","NavDrawer_toggle","self","SchmancyDrawerNavbarMode","SchmancyDrawerNavbarState","SchmancyDrawerAppbar","toggler","sidebarToggler","sidebarMode","hidden","sidebarOpen","Boolean","SchmancyNavigationDrawerContent","parentElement","SchmancyNavigationDrawer","fullscreen","breakpoint","target","fullHeight","attribute","SchmancyNavigationDrawerSidebar","hideNavDrawer","closeOverlay","openOverlay","showNavDrawer","overlay","fill","nav","sidebarClasses","bgColor","container","scrim","WhereAreYouRicky","HereMorty","teleport","activeTeleportations","Map","flipRequests","find","zip","filter","uuid","id","take","callerID","timeout","flip","request","to","originalZIndex","zIndex","transformOrigin","keyframes","rect","left","top","delay","bufferTime","requests","host","i","concatMap","watchElementRect","interval","getBoundingClientRect","prev","curr","right","bottom","SchmancyTeleportation","debugging","shadowRoot","querySelector","assignedElements","Error","FINDING_MORTIES","HERE_RICKY","firstUpdated","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const h=require("lit"),c=require("lit/decorators.js"),n=require("rxjs");require("./animated-text-C5zM-91H.cjs");const q=require("./area.component-DCLLi1YA.cjs");require("./autocomplete-Dfq-Rhjy.cjs"),require("./spinner-8GhT-bLm.cjs"),require("./icon-button-DHiO0w8J.cjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const S=require("./tailwind.mixin-_mD_GeAp.cjs"),$=require("./theme.interface-Xg5Zi46a.cjs");require("./checkbox-BdsGj_z6.cjs"),require("./chips-Z8e_rQtM.cjs"),require("./payment-card-form-B7tV2ttW.cjs");const d=require("./types.cjs"),l=require("./provide-_VUNOf1R.cjs"),u=require("./litElement.mixin-DWxwPXWQ.cjs"),p=require("./consume-Di0U0iBU.cjs");require("./date-range-CDX0VlcK.cjs"),require("./delay-DsFVHHw2.cjs");const b=require("./ripple-C2BHbhcS.cjs");require("./divider-CjgOM462.cjs"),require("./form-DyYGOlOR.cjs"),require("./icon-DPN7kWO0.cjs"),require("./input-2kqgsr0S.cjs"),require("./scroll-CCExKwoj.cjs"),require("./list-Cq9RDYF_.cjs"),require("./menu-ifiBMg-F.cjs");const z=require("lit/directives/when.js");require("./outlet-u1_Qa8Li.cjs"),require("./option-DOBWmGE5.cjs"),require("./radio-group-m5Swl5cq.cjs"),require("./index-DyJ0oDpR.cjs"),require("./select-ljp7-IxH.cjs");const I=require("./sheet-DPHbRnXg.cjs");require("./slider-ds6hnN7n.cjs"),require("./surface-
|
|
1
|
+
"use strict";const h=require("lit"),c=require("lit/decorators.js"),n=require("rxjs");require("./animated-text-C5zM-91H.cjs");const q=require("./area.component-DCLLi1YA.cjs");require("./autocomplete-Dfq-Rhjy.cjs"),require("./spinner-8GhT-bLm.cjs"),require("./icon-button-DHiO0w8J.cjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const S=require("./tailwind.mixin-_mD_GeAp.cjs"),$=require("./theme.interface-Xg5Zi46a.cjs");require("./checkbox-BdsGj_z6.cjs"),require("./chips-Z8e_rQtM.cjs"),require("./payment-card-form-B7tV2ttW.cjs");const d=require("./types.cjs"),l=require("./provide-_VUNOf1R.cjs"),u=require("./litElement.mixin-DWxwPXWQ.cjs"),p=require("./consume-Di0U0iBU.cjs");require("./date-range-CDX0VlcK.cjs"),require("./delay-DsFVHHw2.cjs");const b=require("./ripple-C2BHbhcS.cjs");require("./divider-CjgOM462.cjs"),require("./form-DyYGOlOR.cjs"),require("./icon-DPN7kWO0.cjs"),require("./input-2kqgsr0S.cjs"),require("./scroll-CCExKwoj.cjs"),require("./list-Cq9RDYF_.cjs"),require("./menu-ifiBMg-F.cjs");const z=require("lit/directives/when.js");require("./outlet-u1_Qa8Li.cjs"),require("./option-DOBWmGE5.cjs"),require("./radio-group-m5Swl5cq.cjs"),require("./index-DyJ0oDpR.cjs"),require("./select-ljp7-IxH.cjs");const I=require("./sheet-DPHbRnXg.cjs");require("./slider-ds6hnN7n.cjs"),require("./surface-DsUZdYN6.cjs"),require("./table-BDIhXdSA.cjs"),require("./tabs-group-CHAAr7Wl.cjs"),require("./textarea-CJhi4hDu.cjs"),require("./theme.component-Dhm3MpVW.cjs"),require("./theme-button-DoIFEVSv.cjs"),require("./tree-BkhYPaz6.cjs"),require("./typewriter-DGIW1V_b.cjs"),require("./typography-DQHpwRFR.cjs");const j=require("rxjs/operators");var Y=Object.defineProperty,K=Object.getOwnPropertyDescriptor;let X=class extends S.TailwindElement(h.css`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
}
|
|
@@ -141,4 +141,4 @@
|
|
|
141
141
|
class="${this.classMap({"fixed inset-0 z-49 hidden":!0})}"
|
|
142
142
|
></div>
|
|
143
143
|
`}},w([p.c({context:N,subscribe:!0}),c.state()],exports.SchmancyNavigationDrawerSidebar.prototype,"mode",2),w([p.c({context:W,subscribe:!0}),c.state()],exports.SchmancyNavigationDrawerSidebar.prototype,"state",2),w([c.query("#overlay")],exports.SchmancyNavigationDrawerSidebar.prototype,"overlay",2),w([c.query("nav")],exports.SchmancyNavigationDrawerSidebar.prototype,"nav",2),w([c.property({type:String})],exports.SchmancyNavigationDrawerSidebar.prototype,"width",2),exports.SchmancyNavigationDrawerSidebar=w([c.customElement("schmancy-nav-drawer-navbar")],exports.SchmancyNavigationDrawerSidebar);const U="whereAreYouRicky",H="hereMorty",f=new class{constructor(){this.activeTeleportations=new Map,this.flipRequests=new n.Subject,this.find=e=>n.zip([n.fromEvent(window,H).pipe(n.filter(t=>!!t.detail.component.uuid&&!!e.id&&t.detail.component.id===e.id&&t.detail.component.uuid!==e.uuid),n.map(t=>t.detail.component),n.take(1)),n.of(e).pipe(n.tap(()=>{window.dispatchEvent(new CustomEvent(U,{detail:{id:e.id,callerID:e.uuid}}))}))]).pipe(n.map(([t])=>t),n.timeout(0)),this.flip=e=>{const{from:t,to:s}=e,i=s.element.style.zIndex;s.element.style.transformOrigin="top left",s.element.style.setProperty("visibility","visible"),s.element.style.zIndex="1000";const a=[{transform:`translate(${t.rect.left-s.rect.left}px, ${t.rect.top-s.rect.top}px) scale(${t.rect.width/s.rect.width}, ${t.rect.height/s.rect.height})`},{transform:"translate(0, 0) scale(1, 1)"}];s.element.animate(a,{duration:250,delay:10,easing:"cubic-bezier(0.455, 0.03, 0.515, 0.955)"}).onfinish=()=>{s.element.style.zIndex=i,s.element.style.transformOrigin=""}},this.flipRequests.pipe(n.bufferTime(1),n.map(e=>e.map(({from:t,to:s,host:i},a)=>({from:t,to:s,host:i,i:a}))),n.concatMap(e=>n.zip(e.map(t=>n.of(this.flip(t)))))).subscribe()}};function L(e){return n.interval(50).pipe(j.map(()=>e.getBoundingClientRect()),j.distinctUntilChanged((t,s)=>t.width===s.width&&t.height===s.height&&t.top===s.top&&t.right===s.right&&t.bottom===s.bottom&&t.left===s.left),j.take(1))}var we=Object.defineProperty,be=Object.getOwnPropertyDescriptor,x=(e,t,s,i)=>{for(var a,r=i>1?void 0:i?be(t,s):t,o=e.length-1;o>=0;o--)(a=e[o])&&(r=(i?a(t,s,r):a(r))||r);return i&&r&&we(t,s,r),r};exports.SchmancyTeleportation=class extends u.$LitElement(h.css``){constructor(){super(...arguments),this.uuid=Math.floor(Math.random()*Date.now()),this.delay=0,this.debugging=!1}get _slottedChildren(){return this.shadowRoot.querySelector("slot").assignedElements({flatten:!0})}connectedCallback(){if(this.id===void 0)throw new Error("id is required");super.connectedCallback(),n.merge(n.fromEvent(window,q.FINDING_MORTIES).pipe(n.tap({next:()=>{this.dispatchEvent(new CustomEvent(q.HERE_RICKY,{detail:{component:this},bubbles:!0,composed:!0}))}})),n.fromEvent(window,U).pipe(n.tap({next:e=>{e.detail.id===this.id&&this.uuid&&e.detail.callerID!==this.uuid&&this.dispatchEvent(new CustomEvent(H,{detail:{component:this},bubbles:!0,composed:!0}))}}))).pipe(n.takeUntil(this.disconnecting)).subscribe()}async firstUpdated(){n.of(f.activeTeleportations.get(this.id)).pipe(n.filter(e=>!!e),n.takeUntil(this.disconnecting),n.throwIfEmpty()).subscribe({next:e=>{this.style.setProperty("visibility","hidden"),L(this).pipe(n.takeUntil(this.disconnecting)).subscribe({next:t=>{f.activeTeleportations.set(this.id,t),f.flipRequests.next({from:{rect:e},to:{rect:t,element:this._slottedChildren[0]},host:this})}})},error:()=>{this.style.setProperty("visibility","visible"),L(this).pipe(n.takeUntil(this.disconnecting)).subscribe({next:e=>{f.activeTeleportations.set(this.id,e)}})},complete:()=>{}})}render(){return h.html`<slot></slot>`}},x([c.property({type:Number,reflect:!0})],exports.SchmancyTeleportation.prototype,"uuid",2),x([c.property({type:String})],exports.SchmancyTeleportation.prototype,"id",2),x([c.property({type:Number})],exports.SchmancyTeleportation.prototype,"delay",2),exports.SchmancyTeleportation=x([c.customElement("schmancy-teleport")],exports.SchmancyTeleportation),exports.$drawer=oe,exports.HereMorty=H,exports.SchmancyContentDrawerID=R,exports.SchmancyContentDrawerMaxHeight=M,exports.SchmancyContentDrawerMinWidth=k,exports.SchmancyContentDrawerSheetMode=O,exports.SchmancyContentDrawerSheetState=A,exports.SchmancyDrawerNavbarMode=N,exports.SchmancyDrawerNavbarState=W,exports.WhereAreYouRicky=U,exports.schmancyContentDrawer=ee,exports.schmancyNavDrawer=B,exports.teleport=f;
|
|
144
|
-
//# sourceMappingURL=teleport.component-
|
|
144
|
+
//# sourceMappingURL=teleport.component-Ctv1MZOo.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teleport.component-BXwdyvWD.cjs","sources":["../src/card/actions.ts","../src/card/card.ts","../src/card/content.ts","../src/card/media.ts","../src/content-drawer/$sheet.ts","../src/content-drawer/context.ts","../src/content-drawer/drawer.ts","../src/content-drawer/main.ts","../src/content-drawer/sheet.ts","../src/nav-drawer/$navbar.ts","../src/nav-drawer/context.ts","../src/nav-drawer/appbar.ts","../src/nav-drawer/content.ts","../src/nav-drawer/drawer.ts","../src/nav-drawer/navbar.ts","../src/teleport/teleport.service.ts","../src/teleport/watcher.ts","../src/teleport/teleport.component.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-action\n * @slot - The content of the action\n */\n@customElement('schmancy-card-action')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html` <section class=\"pb-4 px-4\"><slot> </slot></section> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-action': SchmancyCardMedia\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-card')\nexport default class SchmancyCard extends TailwindElement() {\n\t@property() type: 'elevated' | 'filled' | 'outlined' = 'elevated'\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'rounded-md': true,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'shadow-5': this.elevation === 5,\n\t\t\t'hover:shadow-xs': ['outlined', 'filled'].includes(this.type),\n\t\t\t'bg-surface-low shadow-xs hover:shadow-sm': this.type === 'elevated',\n\t\t\t'bg-surface-highest': this.type === 'filled',\n\t\t\t'bg-surface-default border border-solid border-1 border-outlineVariant': this.type === 'outlined',\n\t\t}\n\t\treturn html`<div class=\"${this.classMap(classes)}\">\n\t\t\t<slot> </slot>\n\t\t</div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card': SchmancyCard\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { color } from '..'\n\n/**\n * @element schmancy-card-content\n * @slot headline\n * @slot subhead\n * @slot default - The content of the card\n */\n@customElement('schmancy-card-content')\nexport default class SchmancyCardContent extends TailwindElement() {\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'px-[16px] py-[24px]': true,\n\t\t}\n\t\tconst onSurface = SchmancyTheme.sys.color.surface.on\n\t\tconst onSurfaceVariant = SchmancyTheme.sys.color.surface.onVariant\n\t\treturn html`<schmancy-grid gap=\"md\" class=\"${this.classMap(classes)}\">\n\t\t\t<schmancy-grid gap=\"xs\">\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurface,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\ttoken=\"lg\"\n\t\t\t\t\t><slot name=\"headline\"> </slot\n\t\t\t\t></schmancy-typography>\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t><slot name=\"subhead\"></slot>\n\t\t\t\t</schmancy-typography>\n\t\t\t</schmancy-grid>\n\t\t\t<schmancy-typography\n\t\t\t\ttype=\"body\"\n\t\t\t\t${color({\n\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-typography>\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-content': SchmancyCardContent\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-media\n */\n@customElement('schmancy-card-media')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tsrc: string = ''\n\n\t@property({ type: String })\n\tfit: 'contain' | 'cover' | 'fill' | 'none' | 'scale-down' = 'contain'\n\n\tprotected render(): unknown {\n\t\tconst styles = {\n\t\t\theight: '200px',\n\t\t}\n\t\tconst classes = {\n\t\t\t'object-center': true,\n\t\t\t'object-contain': this.fit === 'contain',\n\t\t\t'object-cover w-full': this.fit === 'cover',\n\t\t\t'object-fill': this.fit === 'fill',\n\t\t\t'object-none': this.fit === 'none',\n\t\t\t'object-scale-down': this.fit === 'scale-down',\n\t\t}\n\t\treturn html`<schmancy-grid align=\"stretch\" justify=\"stretch\" gap=\"md\">\n\t\t\t<img src=\"${this.src}\" style=${this.styleMap(styles)} class=\"${this.classMap(classes)}\" />\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-media': SchmancyCardMedia\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { Subject } from 'rxjs'\n\ntype DrawerAction = 'dismiss' | 'render'\ntype TRef = Element | Window\ntype TRenderRequest = HTMLElement\nexport type TRenderCustomEvent = CustomEvent<{\n\tcomponent: TRenderRequest\n\ttitle?: string\n}>\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tref: TRef\n\t\taction: DrawerAction\n\t\tcomponent?: TRenderRequest\n\t\ttitle?: string\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe().subscribe(data => {\n\t\t\tif (data.action === 'dismiss') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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} else if (data.action === 'render') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-content-drawer-render', {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tcomponent: data.component,\n\t\t\t\t\t\t\ttitle: data.title,\n\t\t\t\t\t\t},\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\t})\n\t}\n\n\tdimiss(ref: TRef) {\n\t\tthis.$drawer.next({\n\t\t\taction: 'dismiss',\n\t\t\tref: ref,\n\t\t})\n\t}\n\n\trender(ref: TRef, component: TRenderRequest, title?: string) {\n\t\tref.dispatchEvent(new CustomEvent('custom-event'))\n\t\tthis.$drawer.next({\n\t\t\taction: 'render',\n\t\t\tref: ref,\n\t\t\tcomponent: component,\n\t\t\ttitle,\n\t\t})\n\t}\n}\n\nexport const schmancyContentDrawer = new Drawer()\n","import { createContext } from '@lit/context'\nexport type TSchmancyContentDrawerSheetMode = 'push' | 'overlay'\nexport const SchmancyContentDrawerSheetMode = createContext<TSchmancyContentDrawerSheetMode>('push')\n\nexport type TSchmancyContentDrawerSheetState = 'open' | 'close'\nexport const SchmancyContentDrawerSheetState = createContext<TSchmancyContentDrawerSheetState>('close')\n\nexport const SchmancyContentDrawerID = createContext<string>(Math.floor(Math.random() * Date.now()).toString())\nexport const SchmancyContentDrawerMaxHeight = createContext<string>('100%')\nexport const SchmancyContentDrawerMinWidth = createContext<{\n\tmain: number\n\tsheet: number\n}>({})\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, merge, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, TRenderCustomEvent, area, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n/**\n * @element schmancy-content-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-content-drawer')\nexport class SchmancyContentDrawer extends $LitElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t/**\n\t * The minimum width of the sheet\n\t * @attr\tminWidth\n\t * @type {number}\n\t * @memberof SchmancyContentDrawer\n\t */\n\n\t@provide({ context: SchmancyContentDrawerMinWidth })\n\tminWidth: typeof SchmancyContentDrawerMinWidth.__context__ = {\n\t\tmain: 360,\n\t\tsheet: 576,\n\t}\n\n\t/**\n\t * The state of the sheet\n\t * @attr open\n\t * @type {TSchmancyContentDrawerSheetState}\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetState })\n\t@property()\n\topen: TSchmancyContentDrawerSheetState\n\n\t/**\n\t * The mode of the sheet\n\t * @type {TSchmancyContentDrawerSheetMode}\n\t * @memberof SchmancyContentDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetMode })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@provide({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID = Math.floor(Math.random() * Date.now()).toString()\n\n\t@provide({ context: SchmancyContentDrawerMaxHeight })\n\tmaxHeight = '100%'\n\n\t@queryAssignedElements({ flatten: true })\n\tassignedElements!: HTMLElement[]\n\tfirstUpdated(): void {\n\t\tmerge(fromEvent<CustomEvent>(window, 'resize'), fromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerResize))\n\t\t\t.pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\ttap(() => console.log(this.minWidth)),\n\t\t\t\tmap(() => (this.clientWidth ? this.clientWidth : window.innerWidth)),\n\t\t\t\tmap(width => width >= this.minWidth.main + this.minWidth.sheet),\n\t\t\t\tdebounceTime(100),\n\t\t\t\ttap(() => {\n\t\t\t\t\tthis.maxHeight = `${window.innerHeight - this.getOffsetTop(this) - 32}px`\n\t\t\t\t\tthis.style.setProperty('max-height', this.maxHeight)\n\t\t\t\t}),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerToggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\tthis.open = state\n\t\t\t})\n\n\t\tfromEvent<TRenderCustomEvent>(window, 'schmancy-content-drawer-render')\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(({ component, title }) => {\n\t\t\t\tif (this.mode === 'push') {\n\t\t\t\t\t// TODO: Fix the router to render if constructor has different arguments\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: 'empty',\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: component,\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t} else if ((this.mode = 'overlay')) {\n\t\t\t\t\tsheet.open({ component: component, uid: this.schmancyContentDrawerID, title })\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tgetOffsetTop(element) {\n\t\tlet offsetTop = 0\n\t\twhile (element) {\n\t\t\toffsetTop += element.offsetTop\n\t\t\telement = element.offsetParent\n\t\t}\n\t\treturn offsetTop\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.mode === 'overlay' ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer': SchmancyContentDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { PropertyValueMap, css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyEvents } from '..'\nimport {\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetMode,\n} from './context'\nimport { when } from 'lit/directives/when.js'\n\n@customElement('schmancy-content-drawer-main')\nexport class SchmancyContentDrawerMain extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) this.drawerMinWidth.main = this.minWidth\n\t\telse this.minWidth = this.drawerMinWidth.main\n\t}\n\n\tprotected update(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\t\tsuper.update(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\tthis.drawerMinWidth.main = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t}\n\t}\n\n\trender() {\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\t\treturn html`\n\t\t\t<section class=\"relative inset-0 h-full\">\n\t\t\t\t<schmancy-grid\n\t\t\t\t\tclass=\"h-full relative overflow-scroll\"\n\t\t\t\t\tcols=\"${this.mode === 'push' ? 'auto 1fr' : '1fr'}\"\n\t\t\t\t\trows=\"1fr\"\n\t\t\t\t\tflow=\"col\"\n\t\t\t\t\talign=\"stretch\"\n\t\t\t\t\tjustify=\"stretch\"\n\t\t\t\t>\n\t\t\t\t\t<section style=${this.styleMap(styles)}>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</section>\n\t\t\t\t</schmancy-grid>\n\t\t\t\t${when(\n\t\t\t\t\tthis.mode === 'push',\n\t\t\t\t\t() => html` <schmancy-divider class=\"absolute right-0 top-0\" orientation=\"vertical\"></schmancy-divider>`,\n\t\t\t\t)}\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-main': SchmancyContentDrawerMain\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, merge, Observable, of, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n// --- 1) Removed the custom animate import\n// import { animate } from '@packages/anime-beta-master'\n\n@customElement('schmancy-content-drawer-sheet')\nexport class SchmancyContentDrawerSheet extends $LitElement(css`\n\t:host {\n\t\toverflow: scroll;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerSheetState, subscribe: true })\n\t@state()\n\tstate: TSchmancyContentDrawerSheetState\n\n\t@consume({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID\n\n\t@query('#sheet') sheet!: HTMLElement\n\t@queryAssignedElements({ flatten: true, slot: undefined }) defaultSlot!: HTMLElement[]\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) {\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t} else {\n\t\t\tthis.minWidth = this.drawerMinWidth.sheet\n\t\t}\n\t}\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\t// If the 'minWidth' property changed\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t} else if (changedProperties.has('state') || changedProperties.has('mode')) {\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\t// Overlay open logic if needed\n\t\t\t\t\t// this.open()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tsheet.dismiss(this.schmancyContentDrawerID)\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.open()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Open the sheet by sliding it into view.\n\t */\n\topen() {\n\t\t// \"onBegin\" logic from the old `animate(...)`\n\t\tif (this.mode === 'overlay') {\n\t\t\tthis.sheet.style.position = 'fixed'\n\t\t} else {\n\t\t\tthis.sheet.style.position = 'relative'\n\t\t}\n\t\tthis.sheet.style.display = 'block'\n\n\t\t// --- 2) Use native Web Animations API ---\n\t\tthis.sheet.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'translateX(100%)' },\n\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 500,\n\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t},\n\t\t)\n\t\t// No return is needed if you don't rely on the result\n\t}\n\n\t/**\n\t * Close everything (modal sheet + the sheet itself).\n\t */\n\tcloseAll() {\n\t\t// Merge them into a single subscription,\n\t\t// so that everything closes in parallel.\n\t\tmerge(from(this.closeModalSheet()), from(this.closeSheet())).pipe(takeUntil(this.disconnecting)).subscribe()\n\t}\n\n\t/**\n\t * Dismiss the \"modal sheet.\"\n\t * This just returns an Observable that completes immediately.\n\t */\n\tcloseModalSheet() {\n\t\treturn of(true).pipe(tap(() => sheet.dismiss(this.schmancyContentDrawerID)))\n\t}\n\n\t/**\n\t * Slide the sheet out of view + hide it.\n\t * Return an Observable so we can merge it with other close operations.\n\t */\n\tcloseSheet() {\n\t\t// --- 2) Use native Web Animations API and wrap in an Observable ---\n\t\treturn new Observable<void>(observer => {\n\t\t\tconst animation = this.sheet.animate(\n\t\t\t\t[\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(100%)' },\n\t\t\t\t],\n\t\t\t\t{\n\t\t\t\t\tduration: 500,\n\t\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t\t},\n\t\t\t)\n\n\t\t\tanimation.onfinish = () => {\n\t\t\t\t// \"onComplete\" logic\n\t\t\t\tthis.sheet.style.display = 'none'\n\t\t\t\tobserver.next()\n\t\t\t\tobserver.complete()\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected render() {\n\t\tconst sheetClasses = {\n\t\t\tblock: this.mode === 'push',\n\t\t\t'absolute z-50': this.mode === 'overlay',\n\t\t\t'opacity-1': this.mode === 'overlay' && this.state === 'open',\n\t\t}\n\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\n\t\treturn html`\n\t\t\t<section id=\"sheet\" class=\"${this.classMap(sheetClasses)}\" style=${this.styleMap(styles)}>\n\t\t\t\t<schmancy-area name=\"${this.schmancyContentDrawerID}\">\n\t\t\t\t\t<slot name=\"placeholder\"></slot>\n\t\t\t\t</schmancy-area>\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-sheet': SchmancyContentDrawerSheet\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { debounceTime, distinctUntilKeyChanged, Subject } from 'rxjs'\n\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tself: HTMLElement\n\t\tstate: boolean\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe(distinctUntilKeyChanged('state'), debounceTime(100)).subscribe(data => {\n\t\t\tconsole.log('drawer', data)\n\t\t\tif (data.state) {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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} else {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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\t})\n\t}\n\topen(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: true,\n\t\t})\n\t}\n\tclose(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: false,\n\t\t})\n\t}\n}\n\nexport const schmancyNavDrawer = new Drawer()\nconst $drawer = schmancyNavDrawer\n\nexport { $drawer }\n","import { createContext } from '@lit/context'\nexport type TSchmancyDrawerNavbarMode = 'push' | 'overlay' | undefined\nexport const SchmancyDrawerNavbarMode = createContext<TSchmancyDrawerNavbarMode>('push')\n\nexport type TSchmancyDrawerNavbarState = 'open' | 'close' | undefined\nexport const SchmancyDrawerNavbarState = createContext<TSchmancyDrawerNavbarState>('close')\n","import { consume } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n} from '@schmancy/nav-drawer/context'\nimport { css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyEvents } from '..'\n\n/**\n * @element schmancy-nav-drawer-appbar\n * @slot toggler - The toggler slot\n * @slot - The default slot\n */\n@customElement('schmancy-nav-drawer-appbar')\nexport class SchmancyDrawerAppbar extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tsidebarMode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tsidebarOpen\n\n\t@property({ type: Boolean }) toggler = true\n\n\trender() {\n\t\tconst appbarClasses = {\n\t\t\t'block z-50': true,\n\t\t}\n\t\tconst sidebarToggler = {\n\t\t\t'block left-3 z-50': this.sidebarMode === 'overlay',\n\t\t\thidden: this.sidebarMode === 'push',\n\t\t}\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.sidebarMode === 'overlay' && this.toggler ? 'auto 1fr' : '1fr'}\n\t\t\t\tflow=\"col\"\n\t\t\t\tclass=${this.classMap(appbarClasses)}\n\t\t\t\tgap=\"sm\"\n\t\t\t\talign=\"center\"\n\t\t\t>\n\t\t\t\t${when(\n\t\t\t\t\tthis.sidebarMode === 'overlay' && this.toggler,\n\t\t\t\t\t() =>\n\t\t\t\t\t\thtml`<slot name=\"toggler\">\n\t\t\t\t\t\t\t<div class=\"${this.classMap(sidebarToggler)}\">\n\t\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\t\t@click=${() => {\n\t\t\t\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\t\t\t\t\t\tdetail: { state: this.sidebarOpen === 'open' ? 'close' : 'open' },\n\t\t\t\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t${when(\n\t\t\t\t\t\t\t\t\t\tthis.sidebarOpen === 'close',\n\t\t\t\t\t\t\t\t\t\t() => html`menu`,\n\t\t\t\t\t\t\t\t\t\t() => html`menu_open`,\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</slot>`,\n\t\t\t\t)}\n\n\t\t\t\t<slot> </slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-appbar': SchmancyDrawerAppbar\n\t}\n}\n","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-nav-drawer-content')\nexport class SchmancyNavigationDrawerContent extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\toverflow-y: auto;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'scroll')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\tthis.parentElement.dispatchEvent(new CustomEvent('scroll', { detail: e, bubbles: true, composed: true }))\n\t\t\t})\n\t}\n\trender() {\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-content': SchmancyNavigationDrawerContent\n\t}\n}\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents } from '..'\nimport { fullHeight } from './../directives/height'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n/**\n * @element schmancy-nav-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-nav-drawer')\nexport class SchmancyNavigationDrawer extends $LitElement(css`\n\t:host {\n\t\tdisplay: flex;\n\t\tflex-grow: 1;\n\t\toverflow: hidden;\n\t}\n`) {\n\t// fullscreen property\n\t@property({ type: Boolean })\n\tfullscreen: boolean = false\n\n\t/**\n\t * The minimum width of the sidebar\n\t * @attr\tbreakpoint\n\t * @type {number}\n\t * @memberof SchmancyNavigationDrawer\n\t */\n\t@property({ type: Number, attribute: 'breakpoint' })\n\tbreakpoint: number = 768\n\n\t/**\n\t * The mode of the sidebar\n\t * @type {TSchmancyDrawerNavbarMode}\n\t * @memberof SchmancyNavigationDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyDrawerNavbarMode })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@provide({ context: SchmancyDrawerNavbarState })\n\t@property()\n\topen: TSchmancyDrawerNavbarState\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent<CustomEvent>(window, 'resize')\n\t\t\t.pipe(\n\t\t\t\tmap(event => event.target as Window),\n\t\t\t\tstartWith(window),\n\t\t\t\tmap(window => window.innerWidth),\n\t\t\t\tmap(width => width >= this.breakpoint),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.NavDrawer_toggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\t// if the mode is push, we don't need to close the overlay when the state is close\n\t\t\t\tif (this.mode === 'push' && state === 'close') return\n\t\t\t\tthis.open = state\n\t\t\t})\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.fullscreen ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t\t${fullHeight()}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer': SchmancyNavigationDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { SchmancyEvents, SchmancyTheme, color } from '..'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n@customElement('schmancy-nav-drawer-navbar')\nexport class SchmancyNavigationDrawerSidebar extends $LitElement() {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tprivate state: TSchmancyDrawerNavbarState\n\n\t@query('#overlay') overlay!: HTMLElement\n\t@query('nav') nav!: HTMLElement\n\n\t@property({ type: String }) width = '320px'\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tif (changedProperties.has('state')) {\n\t\t\tconsole.log('state changed', this.state, this.mode)\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.hideNavDrawer()\n\t\t\t\t\tthis.closeOverlay()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.openOverlay()\n\t\t\t\t\tthis.showNavDrawer()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tthis.showNavDrawer()\n\t\t\t\tthis.closeOverlay()\n\t\t\t}\n\t\t}\n\t}\n\n\topenOverlay() {\n\t\t// Equivalent to onBegin\n\t\tthis.overlay.style.display = 'block'\n\n\t\t// Animate opacity from 0 to 0.4\n\t\tthis.overlay.animate([{ opacity: 0 }, { opacity: 0.4 }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards', // <-- This keeps the final keyframe (0.4) after finishing\n\t\t})\n\t\t// If you want an onfinish here, you can add it:\n\t\t// .onfinish = () => console.log('overlay opened!')\n\t}\n\n\tcloseOverlay() {\n\t\t// Animate opacity from 0.4 to 0\n\t\tconst animation = this.overlay.animate([{ opacity: 0.4 }, { opacity: 0 }], {\n\t\t\tduration: 150,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\t// translateX(-100%) when the animation is finished\n\t\t// Equivalent to onComplete\n\t\tanimation.onfinish = () => {\n\t\t\tthis.overlay.style.display = 'none'\n\t\t}\n\t}\n\n\t// show nav drawer\n\tshowNavDrawer() {\n\t\t// check the transform, skip if already open\n\t\tif (this.nav.style.transform === 'translateX(0)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(-100%)' }, { transform: 'translateX(0)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'open'\n\t\t}\n\t}\n\n\t// hide nav drawer\n\thideNavDrawer() {\n\t\t// skip if already closed\n\t\tif (this.nav.style.transform === 'translateX(-100%)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(0)' }, { transform: 'translateX(-100%)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'close'\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tconst sidebarClasses = {\n\t\t\t'p-[16px] max-w-[360px] w-fit h-full overflow-auto': true,\n\t\t\tblock: this.mode === 'push',\n\t\t\t'fixed inset-0 z-50': this.mode === 'overlay',\n\t\t}\n\t\tconst overlayClass = {\n\t\t\t'fixed inset-0 z-49 hidden': true,\n\t\t}\n\n\t\tconst styleMap = {\n\t\t\twidth: this.width,\n\t\t}\n\n\t\treturn html`\n\t\t\t<nav\n\t\t\t\tstyle=${this.styleMap(styleMap)}\n\t\t\t\tclass=\"${this.classMap({ ...sidebarClasses })}\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.container,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</nav>\n\t\t\t<div\n\t\t\t\tid=\"overlay\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.scrim,\n\t\t\t\t})}\n\t\t\t\t@click=${() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\tdetail: { state: 'close' },\n\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}}\n\t\t\t\tclass=\"${this.classMap({ ...overlayClass })}\"\n\t\t\t></div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-navbar': SchmancyNavigationDrawerSidebar\n\t}\n}\n","import { bufferTime, concatMap, filter, fromEvent, map, of, Subject, take, tap, timeout, zip } from 'rxjs'\nimport { SchmancyTeleportation } from './teleport.component'\n\nexport type WhereAreYouRickyEvent = CustomEvent<{\n\tid: string\n\tcallerID: number\n}>\n\nexport const WhereAreYouRicky = 'whereAreYouRicky'\n\nexport type HereMortyEvent = CustomEvent<{\n\tcomponent: SchmancyTeleportation\n}>\n\nexport type FLIP_REQUEST = {\n\tfrom: {\n\t\trect: DOMRect\n\t\telement?: HTMLElement\n\t}\n\tto: {\n\t\trect: DOMRect\n\t\telement: HTMLElement\n\t}\n\tstagger?: number\n\thost: HTMLElement\n}\nexport const HereMorty = 'hereMorty'\n\nclass Teleportation {\n\tactiveTeleportations = new Map<string, DOMRect>()\n\tflipRequests = new Subject<FLIP_REQUEST>()\n\n\tconstructor() {\n\t\tthis.flipRequests\n\t\t\t.pipe(\n\t\t\t\tbufferTime(1),\n\t\t\t\tmap(requests =>\n\t\t\t\t\trequests.map(({ from, to, host }, i) => ({\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tto,\n\t\t\t\t\t\thost,\n\t\t\t\t\t\ti,\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t\t\tconcatMap(requests => zip(requests.map(request => of(this.flip(request))))),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\tfind = (component: SchmancyTeleportation) => {\n\t\treturn zip([\n\t\t\tfromEvent<HereMortyEvent>(window, HereMorty).pipe(\n\t\t\t\tfilter(\n\t\t\t\t\te =>\n\t\t\t\t\t\t!!e.detail.component.uuid &&\n\t\t\t\t\t\t!!component.id &&\n\t\t\t\t\t\te.detail.component.id === component.id &&\n\t\t\t\t\t\te.detail.component.uuid !== component.uuid,\n\t\t\t\t),\n\t\t\t\tmap(e => e.detail.component),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\tof(component).pipe(\n\t\t\t\ttap(() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent<WhereAreYouRickyEvent['detail']>(WhereAreYouRicky, {\n\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\tid: component.id,\n\t\t\t\t\t\t\t\tcallerID: component.uuid,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}),\n\t\t\t),\n\t\t]).pipe(\n\t\t\tmap(([component]) => component),\n\t\t\ttimeout(0),\n\t\t)\n\t}\n\n\tflip = (request: {\n\t\tfrom: {\n\t\t\trect: DOMRect\n\t\t}\n\t\tto: {\n\t\t\telement: HTMLElement\n\t\t\trect: DOMRect\n\t\t}\n\t\thost: HTMLElement\n\t\ti: number\n\t}) => {\n\t\tconst { from, to } = request\n\n\t\t// Prepare the element for animation\n\t\tconst originalZIndex = to.element.style.zIndex\n\t\tto.element.style.transformOrigin = 'top left'\n\t\tto.element.style.setProperty('visibility', 'visible')\n\t\tto.element.style.zIndex = '1000'\n\n\t\t// \"onBegin\" logic goes here (since Web Animations doesn't have onBegin).\n\t\t// If you had more logic, place it here:\n\t\t// e.g., console.log('Starting FLIP animation...');\n\n\t\t// Calculate starting and ending transforms\n\t\tconst startX = from.rect.left - to.rect.left\n\t\tconst startY = from.rect.top - to.rect.top\n\t\tconst startScaleX = from.rect.width / to.rect.width\n\t\tconst startScaleY = from.rect.height / to.rect.height\n\n\t\t// Create keyframes\n\t\tconst keyframes: Keyframe[] = [\n\t\t\t{\n\t\t\t\ttransform: `translate(${startX}px, ${startY}px) scale(${startScaleX}, ${startScaleY})`,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttransform: 'translate(0, 0) scale(1, 1)',\n\t\t\t},\n\t\t]\n\n\t\t// Use native Web Animations API\n\t\tconst animation = to.element.animate(keyframes, {\n\t\t\tduration: 250,\n\t\t\tdelay: 10, // if desired\n\t\t\t// Approximate 'inOutQuad' via a cubic-bezier easing.\n\t\t\t// You can adjust these values to taste, or use a standard one:\n\t\t\teasing: 'cubic-bezier(0.455, 0.03, 0.515, 0.955)',\n\t\t\t// or simply 'ease-in-out'\n\t\t})\n\n\t\t// \"onComplete\" logic goes here\n\t\tanimation.onfinish = () => {\n\t\t\tto.element.style.zIndex = originalZIndex\n\t\t\tto.element.style.transformOrigin = ''\n\t\t\t// If you have additional cleanup, place it here\n\t\t\t// e.g., console.log('FLIP animation completed!');\n\t\t}\n\t}\n}\n\nexport const teleport = new Teleportation()\nexport default teleport\n","import { Observable, interval } from 'rxjs'\nimport { distinctUntilChanged, map, take } from 'rxjs/operators'\n\n// Function to monitor element's bounding client rect\nexport function watchElementRect(element: Element): Observable<DOMRectReadOnly> {\n\treturn interval(50).pipe(\n\t\t// startWith(true),\n\t\tmap(() => element.getBoundingClientRect()),\n\t\tdistinctUntilChanged(\n\t\t\t(prev, curr) =>\n\t\t\t\tprev.width === curr.width &&\n\t\t\t\tprev.height === curr.height &&\n\t\t\t\tprev.top === curr.top &&\n\t\t\t\tprev.right === curr.right &&\n\t\t\t\tprev.bottom === curr.bottom &&\n\t\t\t\tprev.left === curr.left,\n\t\t),\n\t\ttake(1),\n\t)\n}\n","import { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { filter, fromEvent, merge, of, takeUntil, tap, throwIfEmpty } from 'rxjs'\nimport { FINDING_MORTIES, FINDING_MORTIES_EVENT, HERE_RICKY, HERE_RICKY_EVENT } from '..'\nimport {\n\tHereMorty,\n\tHereMortyEvent,\n\tWhereAreYouRicky,\n\tWhereAreYouRickyEvent,\n\tdefault as teleport,\n\tdefault as teleportationService,\n} from './teleport.service'\nimport { watchElementRect } from './watcher'\nimport { $LitElement } from '@mixins/index'\n@customElement('schmancy-teleport')\nexport class SchmancyTeleportation extends $LitElement(css``) {\n\t/**\n\t * @attr {string} uuid - The component tag to teleport\n\t * @readonly\n\t */\n\t@property({ type: Number, reflect: true }) uuid = Math.floor(Math.random() * Date.now())\n\n\t/**\n\t * @attr {string} id - The component tag to teleport\n\t * @required\n\t */\n\t@property({ type: String }) id!: string\n\n\t@property({ type: Number }) delay = 0\n\n\tdebugging = import.meta.env.DEV ? true : false\n\n\tget _slottedChildren() {\n\t\tconst slot = this.shadowRoot.querySelector('slot')\n\t\treturn slot.assignedElements({ flatten: true })\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (this.id === undefined) throw new Error('id is required')\n\t\tsuper.connectedCallback()\n\t\tmerge(\n\t\t\tfromEvent<FINDING_MORTIES_EVENT>(window, FINDING_MORTIES).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\tnew CustomEvent<HERE_RICKY_EVENT['detail']>(HERE_RICKY, {\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<WhereAreYouRickyEvent>(window, WhereAreYouRicky).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: e => {\n\t\t\t\t\t\tif (e.detail.id === this.id && this.uuid && e.detail.callerID !== this.uuid) {\n\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\tnew CustomEvent<HereMortyEvent['detail']>(HereMorty, {\n\t\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\tasync firstUpdated() {\n\t\tof(teleportationService.activeTeleportations.get(this.id))\n\t\t\t.pipe(\n\t\t\t\tfilter(a => !!a),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tthrowIfEmpty(),\n\t\t\t)\n\t\t\t.subscribe({\n\t\t\t\tnext: domRect => {\n\t\t\t\t\tconsole.count('teleport')\n\t\t\t\t\tthis.style.setProperty('visibility', 'hidden')\n\t\t\t\t\t// teleport.flipRequests.next({ from: component, to: this, stagger: 0 })\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\t// console.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t\tteleport.flipRequests.next({\n\t\t\t\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\t\t\t\trect: domRect,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\t\t\t\trect: e,\n\t\t\t\t\t\t\t\t\t\telement: this._slottedChildren[0] as HTMLElement,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thost: this,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\terror: () => {\n\t\t\t\t\tthis.style.setProperty('visibility', 'visible')\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\tconsole.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tcomplete: () => {},\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-teleport': SchmancyTeleportation\n\t}\n}\n"],"names":["SchmancyCardMedia","TailwindElement","css","html","customElement","SchmancyCard","super","arguments","this","type","elevation","classes","includes","classMap","__decorateClass","property","prototype","Number","SchmancyCardContent","onSurface","SchmancyTheme","sys","color","surface","on","onSurfaceVariant","onVariant","src","fit","styleMap","height","String","reflect","schmancyContentDrawer","$drawer","Subject","pipe","subscribe","data","action","ref","dispatchEvent","CustomEvent","SchmancyEvents","ContentDrawerToggle","detail","state","bubbles","composed","component","title","next","t","SchmancyContentDrawerSheetMode","createContext","SchmancyContentDrawerSheetState","SchmancyContentDrawerID","n","Math","floor","random","Date","now","toString","SchmancyContentDrawerMaxHeight","SchmancyContentDrawerMinWidth","SchmancyContentDrawer","$LitElement","constructor","minWidth","main","sheet","schmancyContentDrawerID","maxHeight","merge","fromEvent","window","ContentDrawerResize","startWith","tap","map","clientWidth","innerWidth","width","debounceTime","innerHeight","getOffsetTop","style","setProperty","distinctUntilChanged","takeUntil","disconnecting","lgScreen","mode","open","event","stopPropagation","area","push","historyStrategy","uid","element","offsetTop","offsetParent","render","nothing","provide","context","queryAssignedElements","flatten","SchmancyContentDrawerMain","connectedCallback","drawerMinWidth","changedProperties","update","has","styles","when","consume","SchmancyContentDrawerSheet","updated","closeAll","dismiss","position","display","animate","opacity","transform","duration","easing","from","closeModalSheet","closeSheet","of","Observable","observer","onfinish","complete","sheetClasses","block","query","slot","schmancyNavDrawer","distinctUntilKeyChanged","NavDrawer_toggle","self","SchmancyDrawerNavbarMode","SchmancyDrawerNavbarState","SchmancyDrawerAppbar","toggler","sidebarToggler","sidebarMode","hidden","sidebarOpen","Boolean","SchmancyNavigationDrawerContent","e","parentElement","SchmancyNavigationDrawer","fullscreen","breakpoint","target","fullHeight","attribute","SchmancyNavigationDrawerSidebar","hideNavDrawer","closeOverlay","openOverlay","showNavDrawer","overlay","fill","nav","sidebarClasses","bgColor","container","scrim","WhereAreYouRicky","HereMorty","teleport","activeTeleportations","Map","flipRequests","find","zip","filter","uuid","id","take","callerID","timeout","flip","request","to","originalZIndex","zIndex","transformOrigin","keyframes","rect","left","top","delay","bufferTime","requests","host","i","concatMap","watchElementRect","interval","getBoundingClientRect","prev","curr","right","bottom","SchmancyTeleportation","debugging","shadowRoot","querySelector","assignedElements","Error","FINDING_MORTIES","HERE_RICKY","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"teleport.component-Ctv1MZOo.cjs","sources":["../src/card/actions.ts","../src/card/card.ts","../src/card/content.ts","../src/card/media.ts","../src/content-drawer/$sheet.ts","../src/content-drawer/context.ts","../src/content-drawer/drawer.ts","../src/content-drawer/main.ts","../src/content-drawer/sheet.ts","../src/nav-drawer/$navbar.ts","../src/nav-drawer/context.ts","../src/nav-drawer/appbar.ts","../src/nav-drawer/content.ts","../src/nav-drawer/drawer.ts","../src/nav-drawer/navbar.ts","../src/teleport/teleport.service.ts","../src/teleport/watcher.ts","../src/teleport/teleport.component.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-action\n * @slot - The content of the action\n */\n@customElement('schmancy-card-action')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html` <section class=\"pb-4 px-4\"><slot> </slot></section> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-action': SchmancyCardMedia\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-card')\nexport default class SchmancyCard extends TailwindElement() {\n\t@property() type: 'elevated' | 'filled' | 'outlined' = 'elevated'\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'rounded-md': true,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'shadow-5': this.elevation === 5,\n\t\t\t'hover:shadow-xs': ['outlined', 'filled'].includes(this.type),\n\t\t\t'bg-surface-low shadow-xs hover:shadow-sm': this.type === 'elevated',\n\t\t\t'bg-surface-highest': this.type === 'filled',\n\t\t\t'bg-surface-default border border-solid border-1 border-outlineVariant': this.type === 'outlined',\n\t\t}\n\t\treturn html`<div class=\"${this.classMap(classes)}\">\n\t\t\t<slot> </slot>\n\t\t</div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card': SchmancyCard\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { SchmancyTheme } from '@schmancy/theme/theme.interface'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\nimport { color } from '..'\n\n/**\n * @element schmancy-card-content\n * @slot headline\n * @slot subhead\n * @slot default - The content of the card\n */\n@customElement('schmancy-card-content')\nexport default class SchmancyCardContent extends TailwindElement() {\n\tprotected render(): unknown {\n\t\tconst classes = {\n\t\t\t'px-[16px] py-[24px]': true,\n\t\t}\n\t\tconst onSurface = SchmancyTheme.sys.color.surface.on\n\t\tconst onSurfaceVariant = SchmancyTheme.sys.color.surface.onVariant\n\t\treturn html`<schmancy-grid gap=\"md\" class=\"${this.classMap(classes)}\">\n\t\t\t<schmancy-grid gap=\"xs\">\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurface,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\ttoken=\"lg\"\n\t\t\t\t\t><slot name=\"headline\"> </slot\n\t\t\t\t></schmancy-typography>\n\t\t\t\t<schmancy-typography\n\t\t\t\t\t${color({\n\t\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t\t})}\n\t\t\t\t\ttype=\"body\"\n\t\t\t\t\t><slot name=\"subhead\"></slot>\n\t\t\t\t</schmancy-typography>\n\t\t\t</schmancy-grid>\n\t\t\t<schmancy-typography\n\t\t\t\ttype=\"body\"\n\t\t\t\t${color({\n\t\t\t\t\tcolor: onSurfaceVariant,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-typography>\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-content': SchmancyCardContent\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n/**\n * @element schmancy-card-media\n */\n@customElement('schmancy-card-media')\nexport default class SchmancyCardMedia extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tsrc: string = ''\n\n\t@property({ type: String })\n\tfit: 'contain' | 'cover' | 'fill' | 'none' | 'scale-down' = 'contain'\n\n\tprotected render(): unknown {\n\t\tconst styles = {\n\t\t\theight: '200px',\n\t\t}\n\t\tconst classes = {\n\t\t\t'object-center': true,\n\t\t\t'object-contain': this.fit === 'contain',\n\t\t\t'object-cover w-full': this.fit === 'cover',\n\t\t\t'object-fill': this.fit === 'fill',\n\t\t\t'object-none': this.fit === 'none',\n\t\t\t'object-scale-down': this.fit === 'scale-down',\n\t\t}\n\t\treturn html`<schmancy-grid align=\"stretch\" justify=\"stretch\" gap=\"md\">\n\t\t\t<img src=\"${this.src}\" style=${this.styleMap(styles)} class=\"${this.classMap(classes)}\" />\n\t\t</schmancy-grid>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-card-media': SchmancyCardMedia\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { Subject } from 'rxjs'\n\ntype DrawerAction = 'dismiss' | 'render'\ntype TRef = Element | Window\ntype TRenderRequest = HTMLElement\nexport type TRenderCustomEvent = CustomEvent<{\n\tcomponent: TRenderRequest\n\ttitle?: string\n}>\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tref: TRef\n\t\taction: DrawerAction\n\t\tcomponent?: TRenderRequest\n\t\ttitle?: string\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe().subscribe(data => {\n\t\t\tif (data.action === 'dismiss') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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} else if (data.action === 'render') {\n\t\t\t\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.ContentDrawerToggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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\tdata.ref.dispatchEvent(\n\t\t\t\t\tnew CustomEvent('schmancy-content-drawer-render', {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tcomponent: data.component,\n\t\t\t\t\t\t\ttitle: data.title,\n\t\t\t\t\t\t},\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\t})\n\t}\n\n\tdimiss(ref: TRef) {\n\t\tthis.$drawer.next({\n\t\t\taction: 'dismiss',\n\t\t\tref: ref,\n\t\t})\n\t}\n\n\trender(ref: TRef, component: TRenderRequest, title?: string) {\n\t\tref.dispatchEvent(new CustomEvent('custom-event'))\n\t\tthis.$drawer.next({\n\t\t\taction: 'render',\n\t\t\tref: ref,\n\t\t\tcomponent: component,\n\t\t\ttitle,\n\t\t})\n\t}\n}\n\nexport const schmancyContentDrawer = new Drawer()\n","import { createContext } from '@lit/context'\nexport type TSchmancyContentDrawerSheetMode = 'push' | 'overlay'\nexport const SchmancyContentDrawerSheetMode = createContext<TSchmancyContentDrawerSheetMode>('push')\n\nexport type TSchmancyContentDrawerSheetState = 'open' | 'close'\nexport const SchmancyContentDrawerSheetState = createContext<TSchmancyContentDrawerSheetState>('close')\n\nexport const SchmancyContentDrawerID = createContext<string>(Math.floor(Math.random() * Date.now()).toString())\nexport const SchmancyContentDrawerMaxHeight = createContext<string>('100%')\nexport const SchmancyContentDrawerMinWidth = createContext<{\n\tmain: number\n\tsheet: number\n}>({})\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, merge, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, TRenderCustomEvent, area, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n/**\n * @element schmancy-content-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-content-drawer')\nexport class SchmancyContentDrawer extends $LitElement(css`\n\t:host {\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t/**\n\t * The minimum width of the sheet\n\t * @attr\tminWidth\n\t * @type {number}\n\t * @memberof SchmancyContentDrawer\n\t */\n\n\t@provide({ context: SchmancyContentDrawerMinWidth })\n\tminWidth: typeof SchmancyContentDrawerMinWidth.__context__ = {\n\t\tmain: 360,\n\t\tsheet: 576,\n\t}\n\n\t/**\n\t * The state of the sheet\n\t * @attr open\n\t * @type {TSchmancyContentDrawerSheetState}\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetState })\n\t@property()\n\topen: TSchmancyContentDrawerSheetState\n\n\t/**\n\t * The mode of the sheet\n\t * @type {TSchmancyContentDrawerSheetMode}\n\t * @memberof SchmancyContentDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyContentDrawerSheetMode })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@provide({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID = Math.floor(Math.random() * Date.now()).toString()\n\n\t@provide({ context: SchmancyContentDrawerMaxHeight })\n\tmaxHeight = '100%'\n\n\t@queryAssignedElements({ flatten: true })\n\tassignedElements!: HTMLElement[]\n\tfirstUpdated(): void {\n\t\tmerge(fromEvent<CustomEvent>(window, 'resize'), fromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerResize))\n\t\t\t.pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\ttap(() => console.log(this.minWidth)),\n\t\t\t\tmap(() => (this.clientWidth ? this.clientWidth : window.innerWidth)),\n\t\t\t\tmap(width => width >= this.minWidth.main + this.minWidth.sheet),\n\t\t\t\tdebounceTime(100),\n\t\t\t\ttap(() => {\n\t\t\t\t\tthis.maxHeight = `${window.innerHeight - this.getOffsetTop(this) - 32}px`\n\t\t\t\t\tthis.style.setProperty('max-height', this.maxHeight)\n\t\t\t\t}),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.ContentDrawerToggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\tthis.open = state\n\t\t\t})\n\n\t\tfromEvent<TRenderCustomEvent>(window, 'schmancy-content-drawer-render')\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t)\n\t\t\t.subscribe(({ component, title }) => {\n\t\t\t\tif (this.mode === 'push') {\n\t\t\t\t\t// TODO: Fix the router to render if constructor has different arguments\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: 'empty',\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t\tarea.push({\n\t\t\t\t\t\tarea: this.schmancyContentDrawerID,\n\t\t\t\t\t\tcomponent: component,\n\t\t\t\t\t\thistoryStrategy: 'silent',\n\t\t\t\t\t})\n\t\t\t\t} else if ((this.mode = 'overlay')) {\n\t\t\t\t\tsheet.open({ component: component, uid: this.schmancyContentDrawerID, title })\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tgetOffsetTop(element) {\n\t\tlet offsetTop = 0\n\t\twhile (element) {\n\t\t\toffsetTop += element.offsetTop\n\t\t\telement = element.offsetParent\n\t\t}\n\t\treturn offsetTop\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.mode === 'overlay' ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer': SchmancyContentDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { PropertyValueMap, css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyEvents } from '..'\nimport {\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetMode,\n} from './context'\nimport { when } from 'lit/directives/when.js'\n\n@customElement('schmancy-content-drawer-main')\nexport class SchmancyContentDrawerMain extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) this.drawerMinWidth.main = this.minWidth\n\t\telse this.minWidth = this.drawerMinWidth.main\n\t}\n\n\tprotected update(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void {\n\t\tsuper.update(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\tthis.drawerMinWidth.main = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t}\n\t}\n\n\trender() {\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\t\treturn html`\n\t\t\t<section class=\"relative inset-0 h-full\">\n\t\t\t\t<schmancy-grid\n\t\t\t\t\tclass=\"h-full relative overflow-scroll\"\n\t\t\t\t\tcols=\"${this.mode === 'push' ? 'auto 1fr' : '1fr'}\"\n\t\t\t\t\trows=\"1fr\"\n\t\t\t\t\tflow=\"col\"\n\t\t\t\t\talign=\"stretch\"\n\t\t\t\t\tjustify=\"stretch\"\n\t\t\t\t>\n\t\t\t\t\t<section style=${this.styleMap(styles)}>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</section>\n\t\t\t\t</schmancy-grid>\n\t\t\t\t${when(\n\t\t\t\t\tthis.mode === 'push',\n\t\t\t\t\t() => html` <schmancy-divider class=\"absolute right-0 top-0\" orientation=\"vertical\"></schmancy-divider>`,\n\t\t\t\t)}\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-main': SchmancyContentDrawerMain\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedElements, state } from 'lit/decorators.js'\nimport { from, merge, Observable, of, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents, sheet } from '..'\nimport {\n\tSchmancyContentDrawerID,\n\tSchmancyContentDrawerMaxHeight,\n\tSchmancyContentDrawerMinWidth,\n\tSchmancyContentDrawerSheetMode,\n\tSchmancyContentDrawerSheetState,\n\tTSchmancyContentDrawerSheetMode,\n\tTSchmancyContentDrawerSheetState,\n} from './context'\n\n// --- 1) Removed the custom animate import\n// import { animate } from '@packages/anime-beta-master'\n\n@customElement('schmancy-content-drawer-sheet')\nexport class SchmancyContentDrawerSheet extends $LitElement(css`\n\t:host {\n\t\toverflow: scroll;\n\t}\n`) {\n\t@property({ type: Number })\n\tminWidth\n\n\t@consume({ context: SchmancyContentDrawerSheetMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyContentDrawerSheetMode\n\n\t@consume({ context: SchmancyContentDrawerSheetState, subscribe: true })\n\t@state()\n\tstate: TSchmancyContentDrawerSheetState\n\n\t@consume({ context: SchmancyContentDrawerID })\n\tschmancyContentDrawerID\n\n\t@query('#sheet') sheet!: HTMLElement\n\t@queryAssignedElements({ flatten: true, slot: undefined }) defaultSlot!: HTMLElement[]\n\n\t@consume({ context: SchmancyContentDrawerMinWidth, subscribe: true })\n\tdrawerMinWidth: typeof SchmancyContentDrawerMinWidth.__context__\n\n\t@consume({ context: SchmancyContentDrawerMaxHeight, subscribe: true })\n\t@state()\n\tmaxHeight\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tif (this.minWidth) {\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t} else {\n\t\t\tthis.minWidth = this.drawerMinWidth.sheet\n\t\t}\n\t}\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('minWidth') && this.minWidth) {\n\t\t\t// If the 'minWidth' property changed\n\t\t\tthis.drawerMinWidth.sheet = this.minWidth\n\t\t\tthis.dispatchEvent(new CustomEvent(SchmancyEvents.ContentDrawerResize, { bubbles: true, composed: true }))\n\t\t} else if (changedProperties.has('state') || changedProperties.has('mode')) {\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\t// Overlay open logic if needed\n\t\t\t\t\t// this.open()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tsheet.dismiss(this.schmancyContentDrawerID)\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.closeAll()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.open()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Open the sheet by sliding it into view.\n\t */\n\topen() {\n\t\t// \"onBegin\" logic from the old `animate(...)`\n\t\tif (this.mode === 'overlay') {\n\t\t\tthis.sheet.style.position = 'fixed'\n\t\t} else {\n\t\t\tthis.sheet.style.position = 'relative'\n\t\t}\n\t\tthis.sheet.style.display = 'block'\n\n\t\t// --- 2) Use native Web Animations API ---\n\t\tthis.sheet.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: 'translateX(100%)' },\n\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration: 500,\n\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t},\n\t\t)\n\t\t// No return is needed if you don't rely on the result\n\t}\n\n\t/**\n\t * Close everything (modal sheet + the sheet itself).\n\t */\n\tcloseAll() {\n\t\t// Merge them into a single subscription,\n\t\t// so that everything closes in parallel.\n\t\tmerge(from(this.closeModalSheet()), from(this.closeSheet())).pipe(takeUntil(this.disconnecting)).subscribe()\n\t}\n\n\t/**\n\t * Dismiss the \"modal sheet.\"\n\t * This just returns an Observable that completes immediately.\n\t */\n\tcloseModalSheet() {\n\t\treturn of(true).pipe(tap(() => sheet.dismiss(this.schmancyContentDrawerID)))\n\t}\n\n\t/**\n\t * Slide the sheet out of view + hide it.\n\t * Return an Observable so we can merge it with other close operations.\n\t */\n\tcloseSheet() {\n\t\t// --- 2) Use native Web Animations API and wrap in an Observable ---\n\t\treturn new Observable<void>(observer => {\n\t\t\tconst animation = this.sheet.animate(\n\t\t\t\t[\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(0%)' },\n\t\t\t\t\t{ opacity: 1, transform: 'translateX(100%)' },\n\t\t\t\t],\n\t\t\t\t{\n\t\t\t\t\tduration: 500,\n\t\t\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\t\t},\n\t\t\t)\n\n\t\t\tanimation.onfinish = () => {\n\t\t\t\t// \"onComplete\" logic\n\t\t\t\tthis.sheet.style.display = 'none'\n\t\t\t\tobserver.next()\n\t\t\t\tobserver.complete()\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected render() {\n\t\tconst sheetClasses = {\n\t\t\tblock: this.mode === 'push',\n\t\t\t'absolute z-50': this.mode === 'overlay',\n\t\t\t'opacity-1': this.mode === 'overlay' && this.state === 'open',\n\t\t}\n\n\t\tconst styles = {\n\t\t\tminWidth: `${this.minWidth}px`,\n\t\t\tmaxHeight: this.maxHeight,\n\t\t}\n\n\t\treturn html`\n\t\t\t<section id=\"sheet\" class=\"${this.classMap(sheetClasses)}\" style=${this.styleMap(styles)}>\n\t\t\t\t<schmancy-area name=\"${this.schmancyContentDrawerID}\">\n\t\t\t\t\t<slot name=\"placeholder\"></slot>\n\t\t\t\t</schmancy-area>\n\t\t\t</section>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-content-drawer-sheet': SchmancyContentDrawerSheet\n\t}\n}\n","import { SchmancyEvents } from '@schmancy/types/events'\nimport { debounceTime, distinctUntilKeyChanged, Subject } from 'rxjs'\n\nclass Drawer {\n\tprivate $drawer = new Subject<{\n\t\tself: HTMLElement\n\t\tstate: boolean\n\t}>()\n\tconstructor() {\n\t\tthis.$drawer.pipe(distinctUntilKeyChanged('state'), debounceTime(100)).subscribe(data => {\n\t\t\tconsole.log('drawer', data)\n\t\t\tif (data.state) {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'open',\n\t\t\t\t\t\t},\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} else {\n\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\tstate: 'close',\n\t\t\t\t\t\t},\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\t})\n\t}\n\topen(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: true,\n\t\t})\n\t}\n\tclose(self?: HTMLElement) {\n\t\tthis.$drawer.next({\n\t\t\tself,\n\t\t\tstate: false,\n\t\t})\n\t}\n}\n\nexport const schmancyNavDrawer = new Drawer()\nconst $drawer = schmancyNavDrawer\n\nexport { $drawer }\n","import { createContext } from '@lit/context'\nexport type TSchmancyDrawerNavbarMode = 'push' | 'overlay' | undefined\nexport const SchmancyDrawerNavbarMode = createContext<TSchmancyDrawerNavbarMode>('push')\n\nexport type TSchmancyDrawerNavbarState = 'open' | 'close' | undefined\nexport const SchmancyDrawerNavbarState = createContext<TSchmancyDrawerNavbarState>('close')\n","import { consume } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n} from '@schmancy/nav-drawer/context'\nimport { css, html } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyEvents } from '..'\n\n/**\n * @element schmancy-nav-drawer-appbar\n * @slot toggler - The toggler slot\n * @slot - The default slot\n */\n@customElement('schmancy-nav-drawer-appbar')\nexport class SchmancyDrawerAppbar extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`) {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tsidebarMode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tsidebarOpen\n\n\t@property({ type: Boolean }) toggler = true\n\n\trender() {\n\t\tconst appbarClasses = {\n\t\t\t'block z-50': true,\n\t\t}\n\t\tconst sidebarToggler = {\n\t\t\t'block left-3 z-50': this.sidebarMode === 'overlay',\n\t\t\thidden: this.sidebarMode === 'push',\n\t\t}\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.sidebarMode === 'overlay' && this.toggler ? 'auto 1fr' : '1fr'}\n\t\t\t\tflow=\"col\"\n\t\t\t\tclass=${this.classMap(appbarClasses)}\n\t\t\t\tgap=\"sm\"\n\t\t\t\talign=\"center\"\n\t\t\t>\n\t\t\t\t${when(\n\t\t\t\t\tthis.sidebarMode === 'overlay' && this.toggler,\n\t\t\t\t\t() =>\n\t\t\t\t\t\thtml`<slot name=\"toggler\">\n\t\t\t\t\t\t\t<div class=\"${this.classMap(sidebarToggler)}\">\n\t\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\t\t@click=${() => {\n\t\t\t\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\t\t\t\t\t\tdetail: { state: this.sidebarOpen === 'open' ? 'close' : 'open' },\n\t\t\t\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t${when(\n\t\t\t\t\t\t\t\t\t\tthis.sidebarOpen === 'close',\n\t\t\t\t\t\t\t\t\t\t() => html`menu`,\n\t\t\t\t\t\t\t\t\t\t() => html`menu_open`,\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</slot>`,\n\t\t\t\t)}\n\n\t\t\t\t<slot> </slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-appbar': SchmancyDrawerAppbar\n\t}\n}\n","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-nav-drawer-content')\nexport class SchmancyNavigationDrawerContent extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\toverflow-y: auto;\n\t}\n`) {\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent(this, 'scroll')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(e => {\n\t\t\t\tthis.parentElement.dispatchEvent(new CustomEvent('scroll', { detail: e, bubbles: true, composed: true }))\n\t\t\t})\n\t}\n\trender() {\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-content': SchmancyNavigationDrawerContent\n\t}\n}\n","import { provide } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { css, html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, distinctUntilChanged, fromEvent, map, startWith, takeUntil, tap } from 'rxjs'\nimport { SchmancyEvents } from '..'\nimport { fullHeight } from './../directives/height'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n/**\n * @element schmancy-nav-drawer\n * @slot appbar - The appbar slot\n * @slot - The content slot\n */\n@customElement('schmancy-nav-drawer')\nexport class SchmancyNavigationDrawer extends $LitElement(css`\n\t:host {\n\t\tdisplay: flex;\n\t\tflex-grow: 1;\n\t\toverflow: hidden;\n\t}\n`) {\n\t// fullscreen property\n\t@property({ type: Boolean })\n\tfullscreen: boolean = false\n\n\t/**\n\t * The minimum width of the sidebar\n\t * @attr\tbreakpoint\n\t * @type {number}\n\t * @memberof SchmancyNavigationDrawer\n\t */\n\t@property({ type: Number, attribute: 'breakpoint' })\n\tbreakpoint: number = 768\n\n\t/**\n\t * The mode of the sidebar\n\t * @type {TSchmancyDrawerNavbarMode}\n\t * @memberof SchmancyNavigationDrawer\n\t * @protected\n\t */\n\t@provide({ context: SchmancyDrawerNavbarMode })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@provide({ context: SchmancyDrawerNavbarState })\n\t@property()\n\topen: TSchmancyDrawerNavbarState\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tfromEvent<CustomEvent>(window, 'resize')\n\t\t\t.pipe(\n\t\t\t\tmap(event => event.target as Window),\n\t\t\t\tstartWith(window),\n\t\t\t\tmap(window => window.innerWidth),\n\t\t\t\tmap(width => width >= this.breakpoint),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(lgScreen => {\n\t\t\t\tif (lgScreen) {\n\t\t\t\t\tthis.mode = 'push'\n\t\t\t\t\tthis.open = 'open'\n\t\t\t\t} else {\n\t\t\t\t\tthis.mode = 'overlay'\n\t\t\t\t\tthis.open = 'close'\n\t\t\t\t}\n\t\t\t})\n\n\t\t/*\n\t\t * Listen to the toggle event\n\t\t */\n\t\tfromEvent<CustomEvent>(window, SchmancyEvents.NavDrawer_toggle)\n\t\t\t.pipe(\n\t\t\t\ttap(event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t}),\n\t\t\t\tmap(event => event.detail.state),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tdebounceTime(100),\n\t\t\t)\n\t\t\t.subscribe(state => {\n\t\t\t\t// if the mode is push, we don't need to close the overlay when the state is close\n\t\t\t\tif (this.mode === 'push' && state === 'close') return\n\t\t\t\tthis.open = state\n\t\t\t})\n\t}\n\n\tprotected render() {\n\t\tif (!this.mode || !this.open) return nothing\n\t\treturn html`\n\t\t\t<schmancy-grid\n\t\t\t\tcols=${this.fullscreen ? '1fr' : 'auto 1fr'}\n\t\t\t\trows=\"1fr\"\n\t\t\t\tflow=\"col\"\n\t\t\t\tjustify=\"stretch\"\n\t\t\t\talign=\"stretch\"\n\t\t\t\t${fullHeight()}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer': SchmancyNavigationDrawer\n\t}\n}\n","import { consume } from '@lit/context'\nimport { $LitElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { SchmancyEvents, SchmancyTheme, color } from '..'\nimport {\n\tSchmancyDrawerNavbarMode,\n\tSchmancyDrawerNavbarState,\n\tTSchmancyDrawerNavbarMode,\n\tTSchmancyDrawerNavbarState,\n} from './context'\n\n@customElement('schmancy-nav-drawer-navbar')\nexport class SchmancyNavigationDrawerSidebar extends $LitElement() {\n\t@consume({ context: SchmancyDrawerNavbarMode, subscribe: true })\n\t@state()\n\tmode: TSchmancyDrawerNavbarMode\n\n\t@consume({ context: SchmancyDrawerNavbarState, subscribe: true })\n\t@state()\n\tprivate state: TSchmancyDrawerNavbarState\n\n\t@query('#overlay') overlay!: HTMLElement\n\t@query('nav') nav!: HTMLElement\n\n\t@property({ type: String }) width = '320px'\n\n\tupdated(changedProperties: Map<string, any>) {\n\t\tif (changedProperties.has('state')) {\n\t\t\tconsole.log('state changed', this.state, this.mode)\n\t\t\tif (this.mode === 'overlay') {\n\t\t\t\tif (this.state === 'close') {\n\t\t\t\t\tthis.hideNavDrawer()\n\t\t\t\t\tthis.closeOverlay()\n\t\t\t\t} else if (this.state === 'open') {\n\t\t\t\t\tthis.openOverlay()\n\t\t\t\t\tthis.showNavDrawer()\n\t\t\t\t}\n\t\t\t} else if (this.mode === 'push') {\n\t\t\t\tthis.showNavDrawer()\n\t\t\t\tthis.closeOverlay()\n\t\t\t}\n\t\t}\n\t}\n\n\topenOverlay() {\n\t\t// Equivalent to onBegin\n\t\tthis.overlay.style.display = 'block'\n\n\t\t// Animate opacity from 0 to 0.4\n\t\tthis.overlay.animate([{ opacity: 0 }, { opacity: 0.4 }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards', // <-- This keeps the final keyframe (0.4) after finishing\n\t\t})\n\t\t// If you want an onfinish here, you can add it:\n\t\t// .onfinish = () => console.log('overlay opened!')\n\t}\n\n\tcloseOverlay() {\n\t\t// Animate opacity from 0.4 to 0\n\t\tconst animation = this.overlay.animate([{ opacity: 0.4 }, { opacity: 0 }], {\n\t\t\tduration: 150,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\t// translateX(-100%) when the animation is finished\n\t\t// Equivalent to onComplete\n\t\tanimation.onfinish = () => {\n\t\t\tthis.overlay.style.display = 'none'\n\t\t}\n\t}\n\n\t// show nav drawer\n\tshowNavDrawer() {\n\t\t// check the transform, skip if already open\n\t\tif (this.nav.style.transform === 'translateX(0)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(-100%)' }, { transform: 'translateX(0)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'open'\n\t\t}\n\t}\n\n\t// hide nav drawer\n\thideNavDrawer() {\n\t\t// skip if already closed\n\t\tif (this.nav.style.transform === 'translateX(-100%)') return\n\t\tconst animation = this.nav.animate([{ transform: 'translateX(0)' }, { transform: 'translateX(-100%)' }], {\n\t\t\tduration: 200,\n\t\t\teasing: 'cubic-bezier(0.5, 0.01, 0.25, 1)',\n\t\t\tfill: 'forwards',\n\t\t})\n\t\tanimation.onfinish = () => {\n\t\t\tthis.state = 'close'\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tconst sidebarClasses = {\n\t\t\t'p-[16px] max-w-[360px] w-fit h-full overflow-auto': true,\n\t\t\tblock: this.mode === 'push',\n\t\t\t'fixed inset-0 z-50': this.mode === 'overlay',\n\t\t}\n\t\tconst overlayClass = {\n\t\t\t'fixed inset-0 z-49 hidden': true,\n\t\t}\n\n\t\tconst styleMap = {\n\t\t\twidth: this.width,\n\t\t}\n\n\t\treturn html`\n\t\t\t<nav\n\t\t\t\tstyle=${this.styleMap(styleMap)}\n\t\t\t\tclass=\"${this.classMap({ ...sidebarClasses })}\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.surface.container,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</nav>\n\t\t\t<div\n\t\t\t\tid=\"overlay\"\n\t\t\t\t${color({\n\t\t\t\t\tbgColor: SchmancyTheme.sys.color.scrim,\n\t\t\t\t})}\n\t\t\t\t@click=${() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent(SchmancyEvents.NavDrawer_toggle, {\n\t\t\t\t\t\t\tdetail: { state: 'close' },\n\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}}\n\t\t\t\tclass=\"${this.classMap({ ...overlayClass })}\"\n\t\t\t></div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-nav-drawer-navbar': SchmancyNavigationDrawerSidebar\n\t}\n}\n","import { bufferTime, concatMap, filter, fromEvent, map, of, Subject, take, tap, timeout, zip } from 'rxjs'\nimport { SchmancyTeleportation } from './teleport.component'\n\nexport type WhereAreYouRickyEvent = CustomEvent<{\n\tid: string\n\tcallerID: number\n}>\n\nexport const WhereAreYouRicky = 'whereAreYouRicky'\n\nexport type HereMortyEvent = CustomEvent<{\n\tcomponent: SchmancyTeleportation\n}>\n\nexport type FLIP_REQUEST = {\n\tfrom: {\n\t\trect: DOMRect\n\t\telement?: HTMLElement\n\t}\n\tto: {\n\t\trect: DOMRect\n\t\telement: HTMLElement\n\t}\n\tstagger?: number\n\thost: HTMLElement\n}\nexport const HereMorty = 'hereMorty'\n\nclass Teleportation {\n\tactiveTeleportations = new Map<string, DOMRect>()\n\tflipRequests = new Subject<FLIP_REQUEST>()\n\n\tconstructor() {\n\t\tthis.flipRequests\n\t\t\t.pipe(\n\t\t\t\tbufferTime(1),\n\t\t\t\tmap(requests =>\n\t\t\t\t\trequests.map(({ from, to, host }, i) => ({\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tto,\n\t\t\t\t\t\thost,\n\t\t\t\t\t\ti,\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t\t\tconcatMap(requests => zip(requests.map(request => of(this.flip(request))))),\n\t\t\t)\n\t\t\t.subscribe()\n\t}\n\n\tfind = (component: SchmancyTeleportation) => {\n\t\treturn zip([\n\t\t\tfromEvent<HereMortyEvent>(window, HereMorty).pipe(\n\t\t\t\tfilter(\n\t\t\t\t\te =>\n\t\t\t\t\t\t!!e.detail.component.uuid &&\n\t\t\t\t\t\t!!component.id &&\n\t\t\t\t\t\te.detail.component.id === component.id &&\n\t\t\t\t\t\te.detail.component.uuid !== component.uuid,\n\t\t\t\t),\n\t\t\t\tmap(e => e.detail.component),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\tof(component).pipe(\n\t\t\t\ttap(() => {\n\t\t\t\t\twindow.dispatchEvent(\n\t\t\t\t\t\tnew CustomEvent<WhereAreYouRickyEvent['detail']>(WhereAreYouRicky, {\n\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\tid: component.id,\n\t\t\t\t\t\t\t\tcallerID: component.uuid,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t}),\n\t\t\t),\n\t\t]).pipe(\n\t\t\tmap(([component]) => component),\n\t\t\ttimeout(0),\n\t\t)\n\t}\n\n\tflip = (request: {\n\t\tfrom: {\n\t\t\trect: DOMRect\n\t\t}\n\t\tto: {\n\t\t\telement: HTMLElement\n\t\t\trect: DOMRect\n\t\t}\n\t\thost: HTMLElement\n\t\ti: number\n\t}) => {\n\t\tconst { from, to } = request\n\n\t\t// Prepare the element for animation\n\t\tconst originalZIndex = to.element.style.zIndex\n\t\tto.element.style.transformOrigin = 'top left'\n\t\tto.element.style.setProperty('visibility', 'visible')\n\t\tto.element.style.zIndex = '1000'\n\n\t\t// \"onBegin\" logic goes here (since Web Animations doesn't have onBegin).\n\t\t// If you had more logic, place it here:\n\t\t// e.g., console.log('Starting FLIP animation...');\n\n\t\t// Calculate starting and ending transforms\n\t\tconst startX = from.rect.left - to.rect.left\n\t\tconst startY = from.rect.top - to.rect.top\n\t\tconst startScaleX = from.rect.width / to.rect.width\n\t\tconst startScaleY = from.rect.height / to.rect.height\n\n\t\t// Create keyframes\n\t\tconst keyframes: Keyframe[] = [\n\t\t\t{\n\t\t\t\ttransform: `translate(${startX}px, ${startY}px) scale(${startScaleX}, ${startScaleY})`,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttransform: 'translate(0, 0) scale(1, 1)',\n\t\t\t},\n\t\t]\n\n\t\t// Use native Web Animations API\n\t\tconst animation = to.element.animate(keyframes, {\n\t\t\tduration: 250,\n\t\t\tdelay: 10, // if desired\n\t\t\t// Approximate 'inOutQuad' via a cubic-bezier easing.\n\t\t\t// You can adjust these values to taste, or use a standard one:\n\t\t\teasing: 'cubic-bezier(0.455, 0.03, 0.515, 0.955)',\n\t\t\t// or simply 'ease-in-out'\n\t\t})\n\n\t\t// \"onComplete\" logic goes here\n\t\tanimation.onfinish = () => {\n\t\t\tto.element.style.zIndex = originalZIndex\n\t\t\tto.element.style.transformOrigin = ''\n\t\t\t// If you have additional cleanup, place it here\n\t\t\t// e.g., console.log('FLIP animation completed!');\n\t\t}\n\t}\n}\n\nexport const teleport = new Teleportation()\nexport default teleport\n","import { Observable, interval } from 'rxjs'\nimport { distinctUntilChanged, map, take } from 'rxjs/operators'\n\n// Function to monitor element's bounding client rect\nexport function watchElementRect(element: Element): Observable<DOMRectReadOnly> {\n\treturn interval(50).pipe(\n\t\t// startWith(true),\n\t\tmap(() => element.getBoundingClientRect()),\n\t\tdistinctUntilChanged(\n\t\t\t(prev, curr) =>\n\t\t\t\tprev.width === curr.width &&\n\t\t\t\tprev.height === curr.height &&\n\t\t\t\tprev.top === curr.top &&\n\t\t\t\tprev.right === curr.right &&\n\t\t\t\tprev.bottom === curr.bottom &&\n\t\t\t\tprev.left === curr.left,\n\t\t),\n\t\ttake(1),\n\t)\n}\n","import { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { filter, fromEvent, merge, of, takeUntil, tap, throwIfEmpty } from 'rxjs'\nimport { FINDING_MORTIES, FINDING_MORTIES_EVENT, HERE_RICKY, HERE_RICKY_EVENT } from '..'\nimport {\n\tHereMorty,\n\tHereMortyEvent,\n\tWhereAreYouRicky,\n\tWhereAreYouRickyEvent,\n\tdefault as teleport,\n\tdefault as teleportationService,\n} from './teleport.service'\nimport { watchElementRect } from './watcher'\nimport { $LitElement } from '@mixins/index'\n@customElement('schmancy-teleport')\nexport class SchmancyTeleportation extends $LitElement(css``) {\n\t/**\n\t * @attr {string} uuid - The component tag to teleport\n\t * @readonly\n\t */\n\t@property({ type: Number, reflect: true }) uuid = Math.floor(Math.random() * Date.now())\n\n\t/**\n\t * @attr {string} id - The component tag to teleport\n\t * @required\n\t */\n\t@property({ type: String }) id!: string\n\n\t@property({ type: Number }) delay = 0\n\n\tdebugging = import.meta.env.DEV ? true : false\n\n\tget _slottedChildren() {\n\t\tconst slot = this.shadowRoot.querySelector('slot')\n\t\treturn slot.assignedElements({ flatten: true })\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (this.id === undefined) throw new Error('id is required')\n\t\tsuper.connectedCallback()\n\t\tmerge(\n\t\t\tfromEvent<FINDING_MORTIES_EVENT>(window, FINDING_MORTIES).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\tnew CustomEvent<HERE_RICKY_EVENT['detail']>(HERE_RICKY, {\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t)\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<WhereAreYouRickyEvent>(window, WhereAreYouRicky).pipe(\n\t\t\t\ttap({\n\t\t\t\t\tnext: e => {\n\t\t\t\t\t\tif (e.detail.id === this.id && this.uuid && e.detail.callerID !== this.uuid) {\n\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\tnew CustomEvent<HereMortyEvent['detail']>(HereMorty, {\n\t\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\t\tcomponent: this,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\tasync firstUpdated() {\n\t\tof(teleportationService.activeTeleportations.get(this.id))\n\t\t\t.pipe(\n\t\t\t\tfilter(a => !!a),\n\t\t\t\ttakeUntil(this.disconnecting),\n\t\t\t\tthrowIfEmpty(),\n\t\t\t)\n\t\t\t.subscribe({\n\t\t\t\tnext: domRect => {\n\t\t\t\t\tconsole.count('teleport')\n\t\t\t\t\tthis.style.setProperty('visibility', 'hidden')\n\t\t\t\t\t// teleport.flipRequests.next({ from: component, to: this, stagger: 0 })\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\t// console.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t\tteleport.flipRequests.next({\n\t\t\t\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\t\t\t\trect: domRect,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\t\t\t\trect: e,\n\t\t\t\t\t\t\t\t\t\telement: this._slottedChildren[0] as HTMLElement,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thost: this,\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\terror: () => {\n\t\t\t\t\tthis.style.setProperty('visibility', 'visible')\n\t\t\t\t\twatchElementRect(this)\n\t\t\t\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t\t\t\t.subscribe({\n\t\t\t\t\t\t\tnext: e => {\n\t\t\t\t\t\t\t\tconsole.log(e)\n\t\t\t\t\t\t\t\tteleportationService.activeTeleportations.set(this.id, e)\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tcomplete: () => {},\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-teleport': SchmancyTeleportation\n\t}\n}\n"],"names":["SchmancyCardMedia","TailwindElement","css","html","customElement","SchmancyCard","super","arguments","this","type","elevation","classes","includes","classMap","__decorateClass","property","prototype","Number","SchmancyCardContent","onSurface","SchmancyTheme","sys","color","surface","on","onSurfaceVariant","onVariant","src","fit","styleMap","height","String","reflect","schmancyContentDrawer","$drawer","Subject","pipe","subscribe","data","action","ref","dispatchEvent","CustomEvent","SchmancyEvents","ContentDrawerToggle","detail","state","bubbles","composed","component","title","next","t","SchmancyContentDrawerSheetMode","createContext","SchmancyContentDrawerSheetState","SchmancyContentDrawerID","n","Math","floor","random","Date","now","toString","SchmancyContentDrawerMaxHeight","SchmancyContentDrawerMinWidth","SchmancyContentDrawer","$LitElement","constructor","minWidth","main","sheet","schmancyContentDrawerID","maxHeight","merge","fromEvent","window","ContentDrawerResize","startWith","tap","map","clientWidth","innerWidth","width","debounceTime","innerHeight","getOffsetTop","style","setProperty","distinctUntilChanged","takeUntil","disconnecting","lgScreen","mode","open","event","stopPropagation","area","push","historyStrategy","uid","element","offsetTop","offsetParent","render","nothing","provide","context","queryAssignedElements","flatten","SchmancyContentDrawerMain","connectedCallback","drawerMinWidth","changedProperties","update","has","styles","when","consume","SchmancyContentDrawerSheet","updated","closeAll","dismiss","position","display","animate","opacity","transform","duration","easing","from","closeModalSheet","closeSheet","of","Observable","observer","onfinish","complete","sheetClasses","block","query","slot","schmancyNavDrawer","distinctUntilKeyChanged","NavDrawer_toggle","self","SchmancyDrawerNavbarMode","SchmancyDrawerNavbarState","SchmancyDrawerAppbar","toggler","sidebarToggler","sidebarMode","hidden","sidebarOpen","Boolean","SchmancyNavigationDrawerContent","e","parentElement","SchmancyNavigationDrawer","fullscreen","breakpoint","target","fullHeight","attribute","SchmancyNavigationDrawerSidebar","hideNavDrawer","closeOverlay","openOverlay","showNavDrawer","overlay","fill","nav","sidebarClasses","bgColor","container","scrim","WhereAreYouRicky","HereMorty","teleport","activeTeleportations","Map","flipRequests","find","zip","filter","uuid","id","take","callerID","timeout","flip","request","to","originalZIndex","zIndex","transformOrigin","keyframes","rect","left","top","delay","bufferTime","requests","host","i","concatMap","watchElementRect","interval","getBoundingClientRect","prev","curr","right","bottom","SchmancyTeleportation","debugging","shadowRoot","querySelector","assignedElements","Error","FINDING_MORTIES","HERE_RICKY","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"wtDASA,IAAqBA,EAArB,cAA+CC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAKpD,CAAA,CAAA,SACF,OAAAC,EAAAA,2DAAA,CAAA,EANYH,oIAArB,CADCI,EAAAA,cAAc,sBAAA,CAAA,EACMJ,mMCJrB,IAAqBK,EAArB,cAA0CJ,EAAAA,gBAAAA,CAAAA,CAA1C,aAAAK,CAAAA,MAAAA,GAAAC,WACwDC,KAAAC,KAAA,WACQD,KAAAE,UAAA,CAAA,CACrD,SACT,MAAMC,EAAU,CACf,aAAc,GACd,YAAaH,KAAKE,YAAc,EAChC,YAAaF,KAAKE,YAAc,EAChC,YAAaF,KAAKE,YAAc,EAChC,YAAaF,KAAKE,YAAc,EAChC,WAAYF,KAAKE,YAAc,EAC/B,kBAAmB,CAAC,WAAY,QAAUE,EAAAA,SAASJ,KAAKC,IACxD,EAAA,2CAA4CD,KAAKC,OAAS,WAC1D,qBAAsBD,KAAKC,OAAS,SACpC,wEAAyED,KAAKC,OAAS,UAExF,EAAA,OAAON,EAAmBA,mBAAAK,KAAKK,SAASF,CAAAA,CAAAA;AAAAA;AAAAA,SAAQ,CAAA,EAfrCG,EAAA,CAAXC,EAASA,SAAAA,CAAAA,EADUV,EACRW,UAAA,OAAA,CAAA,EACgBF,EAAA,CAA3BC,WAAS,CAAEN,KAAMQ,MAFEZ,CAAAA,CAAAA,EAAAA,EAEQW,UAAA,YAAA,CAFRX,EAAAA,EAArBS,EAAA,CADCV,EAAAA,cAAc,eACMC,CAAAA,EAAAA,CAAAA,gECQrB,IAAqBa,EAArB,cAAiDjB,EAAAA,gBACtC,CAAA,CAAA,QACT,CAAA,MAGMkB,EAAYC,EAAAA,cAAcC,IAAIC,MAAMC,QAAQC,GAC5CC,EAAmBL,EAAAA,cAAcC,IAAIC,MAAMC,QAAQG,UACzD,OAAOvB,EAAsCA,sCAAAK,KAAKK,SALlC,CACf,sBAAuB,EAAA,CAAA,CAAA;AAAA;AAAA;AAAA,OAOnBS,QAAM,CACPA,MAAOH,CAAAA,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,OAONG,QAAM,CACPA,MAAOG,CAAAA,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAQPH,QAAM,CACPA,MAAOG,CAAAA,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA,mBACN,CA7BeP,EAAAA,oIAArB,CADCd,EAAAA,cAAc,uBAAA,CAAA,EACMc,mMCLrB,IAAqBlB,EAArB,cAA+CC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA/D,CAAA,CAAA,cAAAI,MAAAC,GAAAA,SAAAA,EAMeC,KAAAmB,IAAA,GAG8CnB,KAAAoB,IAAA,SAAA,CAElD,QACT,CAAA,MAGMjB,EAAU,CACf,gBAAA,GACA,iBAAkBH,KAAKoB,MAAQ,UAC/B,sBAAuBpB,KAAKoB,MAAQ,QACpC,cAAepB,KAAKoB,MAAQ,OAC5B,cAAepB,KAAKoB,MAAQ,OAC5B,oBAAqBpB,KAAKoB,MAAQ,YAE5B,EAAA,OAAAzB;eACMK,KAAKmB,cAAcnB,KAAKqB,SAZtB,CACdC,OAAQ,OAAA,CAAA,CAAA,WAWuDtB,KAAKK,SAASF,CAAAA,CAAAA;AAAAA,mBAAQ,CAlBvFG,EAAAA,EAAA,CADCC,EAAAA,SAAS,CAAEN,KAAMsB,OAAQC,QAAAA,EALNhC,CAAAA,CAAAA,EAAAA,EAMpBgB,UAAA,MAAA,GAGAF,EAAA,CADCC,WAAS,CAAEN,KAAMsB,UARE/B,EASpBgB,UAAA,MAAA,CAAA,EAToBhB,EAArBc,EAAA,CADCV,EAAAA,cAAc,qBACMJ,CAAAA,EAAAA,CAAAA,EC+DR,MAAAiC,GAAwB,IA7DrC,KAOC,CAAA,aANQzB,CAAAA,KAAA0B,QAAU,IAAIC,UAOrB3B,KAAK0B,QAAQE,KAAAA,EAAOC,UAAkBC,GAAAA,CACjCA,EAAKC,SAAW,UACnBD,EAAKE,IAAIC,cACR,IAAIC,YAAYC,EAAAA,eAAeC,oBAAqB,CACnDC,OAAQ,CACPC,MAAO,SAERC,QAAS,GACTC,SAAU,EAAA,CAAA,CAAA,EAGFV,EAAKC,SAAW,WAC1BD,EAAKE,IAAIC,cACR,IAAIC,YAAYC,EAAAA,eAAeC,oBAAqB,CACnDC,OAAQ,CACPC,MAAO,MAAA,EAERC,WACAC,SAAAA,EAGFV,CAAAA,CAAAA,EAAAA,EAAKE,IAAIC,cACR,IAAIC,YAAY,iCAAkC,CACjDG,OAAQ,CACPI,UAAWX,EAAKW,UAChBC,MAAOZ,EAAKY,KAAAA,EAEbH,QAAS,GACTC,SAAU,EAAA,CAAA,CAAA,EAEZ,CAED,CAAA,CAGF,OAAOR,EACNhC,CAAAA,KAAK0B,QAAQiB,KAAK,CACjBZ,OAAQ,UACRC,IACAY,CAAA,CAAA,CAAA,CAGF,OAAOZ,EAAWS,EAA2BC,EAAAA,CAC5CV,EAAIC,cAAc,IAAIC,YAAY,cAAA,CAAA,EAClClC,KAAK0B,QAAQiB,KAAK,CACjBZ,OAAQ,SACRC,IAAAA,EACAS,UACAC,EAAAA,MAAAA,CAAAA,CAAAA,CACA,CCjEUG,EAAAA,EAAiCC,IAA+C,MAAA,EAGhFC,EAAkCD,IAAgD,OAAA,EAElFE,EAA0BF,EAAAG,EAAsBC,KAAKC,MAAMD,KAAKE,OAAAA,EAAWC,KAAKC,IAAOC,CAAAA,EAAAA,SAAAA,CAAAA,EACvFC,EAAiCV,IAAsB,MAAA,EACvDW,EAAgCX,EAG1CG,EAAA,CAAE,uMCUQS,QAAAA,sBAAN,cAAoCC,EAAAA,YAAYjE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAAhD,aAAAkE,CAAA9D,MAAAC,GAAAA,SAAAA,EAgBuDC,KAAA6D,SAAA,CAC5DC,KAAM,IACNC,MAAO,GAAA,EAuBkB/D,KAAAgE,wBAAAd,KAAKC,MAAMD,KAAKE,OAAWC,EAAAA,KAAKC,IAAOC,CAAAA,EAAAA,SAAAA,EAGrDvD,KAAAiE,UAAA,MAAA,CAIZ,cACOC,CAAAA,QAAAC,EAAAA,UAAuBC,OAAQ,QAAA,EAAWD,YAAuBC,OAAQjC,EAAAA,eAAekC,mBAC5FzC,CAAAA,EAAAA,KACA0C,EAAAA,UAAAA,IACAC,MAAI,IAAgC,CAAA,CAAA,EACpCC,MAAI,IAAOxE,KAAKyE,YAAczE,KAAKyE,YAAcL,OAAOM,UACxDF,EAAAA,SAAaG,GAAS3E,KAAK6D,SAASC,KAAO9D,KAAK6D,SAASE,KACzDa,EAAAA,EAAAA,aAAa,GAAA,EACbL,EAAAA,IAAI,KACEvE,KAAAiE,UAAeG,OAAOS,YAAc7E,KAAK8E,aAAa9E,MAAQ,GAAlD,KACjBA,KAAK+E,MAAMC,YAAY,aAAchF,KAAKiE,SAAS,CAAA,CAAA,EAEpDgB,yBACAC,EAAAA,UAAUlF,KAAKmF,aAEftD,CAAAA,EAAAA,UAAsBuD,GAClBA,CAAAA,GACHpF,KAAKqF,KAAO,OACZrF,KAAKsF,KAAO,SAEZtF,KAAKqF,KAAO,UACZrF,KAAKsF,KAAO,QAAA,CAAA,EAOQnB,EAAAA,UAAAC,OAAQjC,iBAAeC,mBAC5CR,EAAAA,KACA2C,MAAagB,GACZA,CAAAA,EAAMC,iBAAgB,CAEvBhB,EAAAA,EAAAA,IAAIe,GAASA,EAAMlD,OAAOC,OAC1B4C,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EAEftD,UAAUS,GAAAA,CACVtC,KAAKsF,KAAOhD,CAAAA,CAGgB6B,EAAAA,YAAAC,OAAQ,kCACpCxC,KACA2C,MAAagB,GAAAA,CACZA,EAAMC,gBAAAA,CAAgB,GAEvBhB,EAAAA,IAAae,GAAAA,EAAMlD,MACnB6C,EAAAA,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EAEftD,UAAU,CAAA,CAAGY,UAAWC,EAAAA,MAAAA,CAAAA,IAAAA,CACpB1C,KAAKqF,OAAS,QAEjBI,EAAAA,KAAKC,KAAK,CACTD,KAAMzF,KAAKgE,wBACXvB,UAAW,QACXkD,gBAAiB,QAElBF,CAAAA,EAAAA,EAAAA,KAAKC,KAAK,CACTD,KAAMzF,KAAKgE,wBACXvB,UAAAA,EACAkD,gBAAiB,QAEP3F,CAAAA,IAAAA,KAAKqF,KAAO,YACvBtB,EAAAA,MAAMuB,KAAK,CAAE7C,UAAAA,EAAsBmD,IAAK5F,KAAKgE,wBAAyBtB,MAAAA,CAAAA,CAAAA,CAAO,EAE9E,CAGH,aAAamD,EAAAA,CACZ,IAAIC,EAAY,EAChB,KAAOD,GACNC,GAAaD,EAAQC,UACrBD,EAAUA,EAAQE,aAEZ,OAAAD,CAAA,CAGE,QAAAE,CACT,OAAKhG,KAAKqF,MAASrF,KAAKsF,KACjB3F,EAAAA;AAAAA;AAAAA,WAEEK,KAAKqF,OAAS,UAAY,MAAQ,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAHNY,EAAAA,OAGgB,CAAA,EAhHtD3F,EAAA,CADC4F,IAAQ,CAAEC,QAAS1C,CAAAA,CAAAA,CAAAA,EAfRC,8BAgBZlD,UAAA,WAAA,GAYAF,EAAA,CAFC4F,IAAQ,CAAEC,QAASpD,CACnBxC,CAAAA,EAAAA,EAASA,YA3BEmD,8BA4BZlD,UAAA,OAAA,GAUAF,EAAA,CAFC4F,IAAQ,CAAEC,QAAStD,CAAAA,CAAAA,EACnBP,EAAMA,MAAAA,CAAAA,EArCKoB,8BAsCZlD,UAAA,OAAA,GAGAF,EAAA,CADC4F,IAAQ,CAAEC,QAASnD,CAAAA,CAAAA,CAAAA,EAxCRU,8BAyCZlD,UAAA,0BAAA,CAAA,EAGAF,EAAA,CADC4F,IAAQ,CAAEC,QAAS3C,KA3CRE,8BA4CZlD,UAAA,YAAA,GAGAF,EAAA,CADC8F,wBAAsB,CAAEC,QAAS,EAAA,CAAA,CAAA,EA9CtB3C,8BA+CZlD,UAAA,mBAAA,CA/CYkD,EAAAA,QAANA,sBAAApD,EAAA,CADNV,EAAAA,cAAc,yBACF8D,CAAAA,EAAAA,mOCRA4C,QAAAA,0BAAN,cAAwC3C,EAAAA,YAAYjE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAoB1D,mBAAA6G,CACCzG,MAAMyG,kBAAAA,EACFvG,KAAK6D,SAAe7D,KAAAwG,eAAe1C,KAAO9D,KAAK6D,SAC9C7D,KAAK6D,SAAW7D,KAAKwG,eAAe1C,IAAA,CAGhC,OAAO2C,EAAAA,CAChB3G,MAAM4G,OAAOD,CACTA,EAAAA,EAAkBE,IAAI,UAAA,GAAe3G,KAAK6D,WACxC7D,KAAAwG,eAAe1C,KAAO9D,KAAK6D,SAC3B7D,KAAAiC,cAAc,IAAIC,YAAYC,iBAAekC,oBAAqB,CAAE9B,QAAAA,GAAeC,SAAAA,EACzF,CAAA,CAAA,EAAA,CAGD,QAAAwD,CACC,MAAMY,EAAS,CACd/C,SAAU,GAAG7D,KAAK6D,QAClBI,KAAAA,UAAWjE,KAAKiE,SAAAA,EAEV,OAAAtE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA,aAIIK,KAAKqF,OAAS,OAAS,WAAa,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAM3BrF,KAAKqB,SAASuF,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAI9BC,EAAAA,KACD7G,KAAKqF,OAAS,OACd,IAAM1F,EAAAA,kGAAA,CAAA;AAAA;AAAA,GACN,CAAA,EAjDJW,EAAA,CADCC,WAAS,CAAEN,KAAMQ,MANN6F,CAAAA,CAAAA,EAAAA,kCAOZ9F,UAAA,WAAA,CAAA,EAGAF,EAAA,CADCwG,EAAAA,EAAQ,CAAEX,QAAS1C,EAA+B5B,UAAAA,EATvCyE,CAAAA,CAAAA,EAAAA,kCAUZ9F,UAAA,iBAAA,CAAA,EAIAF,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAAStD,EAAgChB,UAAAA,EACnDS,CAAAA,EAAAA,EAAMA,MAbKgE,CAAAA,EAAAA,kCAcZ9F,UAAA,OAAA,CAAA,EAIAF,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAAS3C,EAAgC3B,UAAAA,EACnDS,CAAAA,EAAAA,EAAMA,MAjBKgE,CAAAA,EAAAA,kCAkBZ9F,UAAA,YAAA,CAAA,EAlBY8F,QAANA,0BAAAhG,EAAA,CADNV,EAAAA,cAAc,8BAAA,CAAA,EACF0G,uOCMAS,QAAAA,2BAAN,cAAyCpD,EAAAA,YAAYjE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GA6B3D,mBAAA6G,CACCzG,MAAMyG,kBAAAA,EACFvG,KAAK6D,SACH7D,KAAAwG,eAAezC,MAAQ/D,KAAK6D,SAE5B7D,KAAA6D,SAAW7D,KAAKwG,eAAezC,KACrC,CAGD,QAAQ0C,EAAAA,CACP3G,MAAMkH,QAAQP,CAAAA,EACVA,EAAkBE,IAAI,UAAe3G,GAAAA,KAAK6D,UAExC7D,KAAAwG,eAAezC,MAAQ/D,KAAK6D,SAC5B7D,KAAAiC,cAAc,IAAIC,YAAYC,iBAAekC,oBAAqB,CAAE9B,WAAeC,SAAAA,EAC9EiE,CAAAA,CAAAA,IAAAA,EAAkBE,IAAI,OAAA,GAAYF,EAAkBE,IAAI,MAChD,KAAd3G,KAAKqF,OAAS,UACbrF,KAAKsC,QAAU,QAClBtC,KAAKiH,SAAAA,EACKjH,KAAKsC,MAINtC,KAAKqF,OAAS,SAClBtB,QAAAmD,QAAQlH,KAAKgE,uBACA,EAAfhE,KAAKsC,QAAU,QAClBtC,KAAKiH,SACoB,EAAfjH,KAAKsC,QAAU,QACzBtC,KAAKsF,KAGR,GAAA,CAMD,MAAAA,CAEKtF,KAAKqF,OAAS,UACZrF,KAAA+D,MAAMgB,MAAMoC,SAAW,QAEvBnH,KAAA+D,MAAMgB,MAAMoC,SAAW,WAExBnH,KAAA+D,MAAMgB,MAAMqC,QAAU,QAG3BpH,KAAK+D,MAAMsD,QACV,CACC,CAAEC,QAAS,EAAGC,UAAW,kBAAA,EACzB,CAAED,QAAS,EAAGC,UAAW,mBAE1B,CACCC,SAAU,IACVC,OAAQ,kCAEV,CAAA,CAAA,CAOD,UAGCvD,CAAAA,EAAAA,MAAMwD,OAAK1H,KAAK2H,mBAAoBD,OAAK1H,KAAK4H,WAAAA,CAAAA,CAAAA,EAAehG,KAAKsD,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EAAgBtD,UAAU,CAAA,CAO5G,iBAAA8F,CACQ,OAAAE,OAASjG,EAAAA,KAAK2C,EAAAA,IAAI,IAAMR,EAAAA,MAAMmD,QAAQlH,KAAKgE,uBAAyB,CAAA,CAAA,CAAA,CAO5E,YAEQ,CAAA,OAAA,IAAI8D,EAAAA,WAA6BC,GAAAA,CACrB/H,KAAK+D,MAAMsD,QAC5B,CACC,CAAEC,QAAS,EAAGC,UAAW,kBACzB,CAAED,QAAS,EAAGC,UAAW,kBAE1B,CAAA,EAAA,CACCC,SAAU,IACVC,OAAQ,kCAIAO,CAAAA,EAAAA,SAAW,IAEfhI,CAAAA,KAAA+D,MAAMgB,MAAMqC,QAAU,OAC3BW,EAASpF,KACToF,EAAAA,EAASE,SAAS,CAAA,CACnB,CACA,CAAA,CAGQ,QAAAjC,CACT,MAAMkC,EAAe,CACpBC,MAAOnI,KAAKqF,OAAS,OACrB,gBAAiBrF,KAAKqF,OAAS,UAC/B,YAAarF,KAAKqF,OAAS,WAAarF,KAAKsC,QAAU,MAGlDsE,EAAAA,EAAS,CACd/C,SAAU,GAAG7D,KAAK6D,QAClBI,KAAAA,UAAWjE,KAAKiE,SAAAA,EAGV,OAAAtE,EAAAA;AAAAA,gCACuBK,KAAKK,SAAS6H,CAAwBlI,CAAAA,WAAAA,KAAKqB,SAASuF,CAAAA,CAAAA;AAAAA,2BACzD5G,KAAKgE,uBAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAAuB,CAAA,EA7ItD1D,EAAA,CADCC,WAAS,CAAEN,KAAMQ,MALNsG,CAAAA,CAAAA,EAAAA,mCAMZvG,UAAA,WAAA,CAAA,EAIAF,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAAStD,EAAgChB,UAAW,EAAA,CAAA,EAC9DS,EAAMA,MAAAA,CAAAA,EATKyE,mCAUZvG,UAAA,OAAA,CAIAF,EAAAA,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAASpD,EAAiClB,UAAAA,EACpDS,CAAAA,EAAAA,EAAMA,MAbKyE,CAAAA,EAAAA,mCAcZvG,UAAA,QAAA,CAAA,EAGAF,EAAA,CADCwG,IAAQ,CAAEX,QAASnD,CAAAA,CAAAA,CAAAA,EAhBR+D,mCAiBZvG,UAAA,0BAAA,CAEiBF,EAAAA,EAAA,CAAhB8H,EAAAA,MAAM,QAAA,CAAA,EAnBKrB,mCAmBKvG,UAAA,QAAA,CAAA,EAC0CF,EAAA,CAA1D8F,EAAAA,sBAAsB,CAAEC,QAAAA,GAAegC,KAAAA,MApB5BtB,CAAAA,CAAAA,EAAAA,mCAoB+CvG,UAAA,cAAA,CAAA,EAG3DF,EAAA,CADCwG,EAAAA,EAAQ,CAAEX,QAAS1C,EAA+B5B,UAAW,EAAA,CAAA,CAAA,EAtBlDkF,mCAuBZvG,UAAA,iBAAA,CAIAF,EAAAA,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAAS3C,EAAgC3B,UAAAA,EACnDS,CAAAA,EAAAA,EAAMA,MA1BKyE,CAAAA,EAAAA,mCA2BZvG,UAAA,YAAA,CAAA,EA3BYuG,QAANA,2BAAAzG,EAAA,CADNV,EAAAA,cAAc,+BAAA,CAAA,EACFmH,oCC4BA,MAAAuB,EAAoB,IA7CjC,KAAA,CAKC,aAAA1E,CAJQ5D,KAAA0B,QAAU,IAAIC,UAKhB3B,KAAA0B,QAAQE,KAAK2G,EAAAA,wBAAwB,OAAA,EAAU3D,eAAa,GAAM/C,CAAAA,EAAAA,UAAkBC,GAEpFA,CAAAA,EAAKQ,MACD8B,OAAAnC,cACN,IAAIC,YAAYC,EAAAA,eAAeqG,iBAAkB,CAChDnG,OAAQ,CACPC,MAAO,MAAA,EAERC,QAAS,GACTC,SAAU,EAAA,CAAA,CAAA,EAIL4B,OAAAnC,cACN,IAAIC,YAAYC,EAAAA,eAAeqG,iBAAkB,CAChDnG,OAAQ,CACPC,MAAO,OAERC,EAAAA,QAAAA,GACAC,SAAAA,EAEF,CAAA,CAAA,CAAA,CAAA,CAED,CAEF,KAAKiG,EAAAA,CACJzI,KAAK0B,QAAQiB,KAAK,CACjB8F,KAAAA,EACAnG,MAAO,EAAA,CAAA,CACP,CAEF,MAAMmG,EAAAA,CACLzI,KAAK0B,QAAQiB,KAAK,CACjB8F,KACAnG,EAAAA,MAAAA,EACA,CAAA,CAAA,CAAA,EAKGZ,GAAU4G,EC/CHI,EAA2B5F,IAAyC,MAGpE6F,EAAAA,EAA4B7F,IAA0C,6MCatE8F,QAAAA,qBAAN,cAAmCnJ,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAAnD,aAAAkE,CAAA9D,SAAAC,SAaiCC,EAAAA,KAAA6I,UAAA,CAEvC,QAAA7C,CACC,MAGM8C,EAAiB,CACtB,qBAAsB9I,KAAK+I,cAAgB,UAC3CC,OAAQhJ,KAAK+I,cAAgB,MAAhBA,EAEP,OAAApJ,EAAAA;AAAAA;AAAAA,WAEEK,KAAK+I,cAAgB,WAAa/I,KAAK6I,QAAU,WAAa,KAAA;AAAA;AAAA,YAE7D7I,KAAKK,SAXO,CACrB,aAAc,EAAA,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA,MAcXwG,EAAAA,KACD7G,KAAK+I,cAAgB,WAAa/I,KAAK6I,QACvC,IACClJ;qBACeK,KAAKK,SAASyI,CAAAA,CAAAA;AAAAA;AAAAA,kBAEjB,IAAA,CACH9I,KAAAiC,cACJ,IAAIC,YAAYC,EAAAA,eAAeqG,iBAAkB,CAChDnG,OAAQ,CAAEC,MAAOtC,KAAKiJ,cAAgB,OAAS,QAAU,QACzD1G,QAAS,GACTC,WAEF,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,WAGCqE,EAAAA,KACD7G,KAAKiJ,cAAgB,QACrB,IAAMtJ,EAAAA,WACN,IAAMA,EAAAA,eAAA,CAAA;AAAA;AAAA;AAAA;;;;GAKX,CAAA,EAhDJW,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAASuC,EAA0B7G,UAAAA,EAC7CS,CAAAA,EAAAA,EAAMA,MANKsG,CAAAA,EAAAA,6BAOZpI,UAAA,cAAA,CAIAF,EAAAA,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAASwC,EAA2B9G,UAAAA,EAC9CS,CAAAA,EAAAA,EAAMA,MAVKsG,CAAAA,EAAAA,6BAWZpI,UAAA,cAAA,CAE6BF,EAAAA,EAAA,CAA5BC,WAAS,CAAEN,KAAMiJ,OAAAA,CAAAA,CAAAA,EAbNN,6BAaiBpI,UAAA,UAAA,CAbjBoI,EAAAA,QAANA,qBAAAtI,EAAA,CADNV,EAAAA,cAAc,4BACFgJ,CAAAA,EAAAA,8FCZAO,QAAAA,gCAAN,cAA8CxF,EAAAA,YAAYjE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAQhE,CAAA,CAAA,mBACCI,CAAAA,MAAMyG,kBACIpC,EAAAA,EAAAA,UAAAnE,KAAM,QAAA,EACd4B,KAAKsD,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EACpBtD,UAAeuH,GAAAA,CACfpJ,KAAKqJ,cAAcpH,cAAc,IAAIC,YAAY,SAAU,CAAEG,OAAQ+G,EAAG7G,WAAeC,SAAAA,EAAiB,CAAA,CAAA,CAAA,CAAA,CACxG,CAEH,QAAAwD,CACQ,OAAArG,EAAAA,qBAAA,CAAA,EAjBIwJ,QAANA,oKAAA,CADNvJ,EAAAA,cAAc,6BAAA,CAAA,EACFuJ,6OCcAG,QAAAA,yBAAN,cAAuC3F,EAAAA,YAAYjE,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAAnD,aAAAkE,CAAA9D,MAAAC,GAAAA,SAAAA,EASgBC,KAAAuJ,WAAAA,GASDvJ,KAAAwJ,WAAA,GAAA,CAgBrB,mBAAAjD,CACCzG,MAAMyG,kBACiBpC,EAAAA,YAAAC,OAAQ,QAC7BxC,EAAAA,KACA4C,EAAAA,IAAae,GAAAA,EAAMkE,MAAAA,EACnBnF,EAAAA,UAAUF,QACVI,EAAAA,IAAIJ,GAAUA,EAAOM,UACrBF,EAAAA,EAAAA,IAAIG,GAASA,GAAS3E,KAAKwJ,UAAAA,EAC3BvE,yBACAC,EAAAA,UAAUlF,KAAKmF,aACfP,EAAAA,EAAAA,aAAa,GAAA,CAAA,EAEb/C,UAAsBuD,GAAAA,CAClBA,GACHpF,KAAKqF,KAAO,OACZrF,KAAKsF,KAAO,SAEZtF,KAAKqF,KAAO,UACZrF,KAAKsF,KAAO,QAAA,GAOQnB,EAAAA,UAAAC,OAAQjC,iBAAeqG,gBAAAA,EAC5C5G,KACA2C,MAAagB,GACZA,CAAAA,EAAMC,gBAAgB,CAAA,CAAA,EAEvBhB,EAAAA,IAAIe,GAASA,EAAMlD,OAAOC,KAAAA,EAC1B2C,yBACAC,EAAAA,UAAUlF,KAAKmF,aACfP,EAAAA,EAAAA,aAAa,GAAA,CAAA,EAEb/C,UAAUS,GAEQ,CAAdtC,KAAKqF,OAAS,QAAU/C,IAAU,UACtCtC,KAAKsF,KAAOhD,EAAAA,CACZ,CAAA,CAGO,QAAA0D,CACT,OAAKhG,KAAKqF,MAASrF,KAAKsF,KACjB3F,EAAAA;AAAAA;AAAAA,WAEEK,KAAKuJ,WAAa,MAAQ,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAK/BG;;;;IARiCzD,EAAAA,OAQrB,CAAA,EA5EjB3F,EAAA,CADCC,WAAS,CAAEN,KAAMiJ,OAAAA,CAAAA,CAAAA,EARNI,iCASZ9I,UAAA,aAAA,CAAA,EASAF,EAAA,CADCC,EAAAA,SAAS,CAAEN,KAAMQ,OAAQkJ,UAAW,YAAA,CAAA,CAAA,EAjBzBL,iCAkBZ9I,UAAA,aAAA,CAAA,EAUAF,EAAA,CAFC4F,IAAQ,CAAEC,QAASuC,CACnBpG,CAAAA,EAAAA,EAAMA,MA3BKgH,CAAAA,EAAAA,iCA4BZ9I,UAAA,OAAA,CAAA,EAIAF,EAAA,CAFC4F,IAAQ,CAAEC,QAASwC,CACnBpI,CAAAA,EAAAA,EAASA,SA/BE+I,CAAAA,EAAAA,iCAgCZ9I,UAAA,OAAA,CAhCY8I,EAAAA,QAANA,yBAAAhJ,EAAA,CADNV,EAAAA,cAAc,qBACF0J,CAAAA,EAAAA,sOCPAM,QAAAA,gCAAN,cAA8CjG,EAAAA,YAAAA,CAAAA,CAA9C,aAAA7D,CAAAA,MAAAA,GAAAC,SAY8BC,EAAAA,KAAA2E,MAAA,OAAA,CAEpC,QAAQ8B,GACHA,EAAkBE,IAAI,OAEP,IAAd3G,KAAKqF,OAAS,UACbrF,KAAKsC,QAAU,SAClBtC,KAAK6J,cACL7J,EAAAA,KAAK8J,aACoB,GAAf9J,KAAKsC,QAAU,SACzBtC,KAAK+J,YACL/J,EAAAA,KAAKgK,cAEkB,GAAdhK,KAAKqF,OAAS,SACxBrF,KAAKgK,cACLhK,EAAAA,KAAK8J,aAEP,GAAA,CAGD,aAEM9J,CAAAA,KAAAiK,QAAQlF,MAAMqC,QAAU,QAGxBpH,KAAAiK,QAAQ5C,QAAQ,CAAC,CAAEC,QAAS,CAAA,EAAK,CAAEA,QAAS,EAAA,CAAA,EAAQ,CACxDE,SAAU,IACVC,OAAQ,mCACRyC,KAAM,UAAA,CAAA,CACN,CAKF,cAAAJ,CAEmB9J,KAAKiK,QAAQ5C,QAAQ,CAAC,CAAEC,QAAS,IAAO,CAAEA,QAAS,CAAM,CAAA,EAAA,CAC1EE,SAAU,IACVC,OAAQ,mCACRyC,KAAM,aAIGlC,SAAW,IAAA,CACfhI,KAAAiK,QAAQlF,MAAMqC,QAAU,MAAA,CAC9B,CAID,eAEC,CAAIpH,KAAKmK,IAAIpF,MAAMwC,YAAc,kBACfvH,KAAKmK,IAAI9C,QAAQ,CAAC,CAAEE,UAAW,mBAAuB,EAAA,CAAEA,UAAW,eAAA,CAAA,EAAoB,CACxGC,SAAU,IACVC,OAAQ,mCACRyC,KAAM,UAEGlC,CAAAA,EAAAA,SAAW,IACpBhI,CAAAA,KAAKsC,MAAQ,MAAA,EACd,CAID,eAEC,CAAItC,KAAKmK,IAAIpF,MAAMwC,YAAc,sBACfvH,KAAKmK,IAAI9C,QAAQ,CAAC,CAAEE,UAAW,iBAAmB,CAAEA,UAAW,mBAAwB,CAAA,EAAA,CACxGC,SAAU,IACVC,OAAQ,mCACRyC,KAAM,UAEGlC,CAAAA,EAAAA,SAAW,IACpBhI,CAAAA,KAAKsC,MAAQ,OAAA,EACd,CAGS,SACT,MAAM8H,EAAiB,CACtB,oDAAA,GACAjC,MAAOnI,KAAKqF,OAAS,OACrB,qBAAsBrF,KAAKqF,OAAS,SAM/BhE,EAAAA,EAAW,CAChBsD,MAAO3E,KAAK2E,KAGN,EAAA,OAAAhF,EAAAA;AAAAA;AAAAA,YAEGK,KAAKqB,SAASA,CAAAA,CAAAA;AAAAA,aACbrB,KAAKK,SAAS,CAAK+J,GAAAA,CAAAA,CAAAA,CAAAA;AAAAA,MAC1BtJ,QAAM,CACPuJ,QAASzJ,EAAAA,cAAcC,IAAIC,MAAMC,QAAQuJ,SAAAA,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAOxCxJ,QAAM,CACPuJ,QAASzJ,EAAAA,cAAcC,IAAIC,MAAMyJ,KAAAA,CAAAA,CAAAA;AAAAA,aAEzB,IAAA,CACDnG,OAAAnC,cACN,IAAIC,YAAYC,EAAAA,eAAeqG,iBAAkB,CAChDnG,OAAQ,CAAEC,MAAO,OAAA,EACjBC,QAAS,GACTC,WAEF,CAAA,CAAA,CAAA,CAAA;AAAA,aAEQxC,KAAKK,SAAS,CA/BxB,4BAA6B,EAAA,CAAA,CAAA;AAAA;AAAA,GA+Be,CAAA,EA3H9CC,EAAA,CAFCwG,EAAAA,EAAQ,CAAEX,QAASuC,EAA0B7G,UAAAA,EAC7CS,CAAAA,EAAAA,EAAMA,SAFKsH,wCAGZpJ,UAAA,OAAA,CAAA,EAIQF,EAAA,CAFPwG,EAAAA,EAAQ,CAAEX,QAASwC,EAA2B9G,UAAAA,KAC9CS,EAAMA,MAAAA,CAAAA,EANKsH,wCAOJpJ,UAAA,QAAA,CAAA,EAEWF,EAAA,CAAlB8H,EAAAA,MAAM,UATKwB,CAAAA,EAAAA,wCASOpJ,UAAA,UAAA,CACLF,EAAAA,EAAA,CAAb8H,EAAAA,MAAM,QAVKwB,wCAUEpJ,UAAA,MAAA,CAAA,EAEcF,EAAA,CAA3BC,WAAS,CAAEN,KAAMsB,MAZNqI,CAAAA,CAAAA,EAAAA,wCAYgBpJ,UAAA,QAAA,CAZhBoJ,EAAAA,QAANA,gCAAAtJ,EAAA,CADNV,EAAAA,cAAc,4BAAA,CAAA,EACFgK,uCCLN,EAAA,MAAMY,EAAmB,mBAkBnBC,EAAY,YAiHZC,EAAW,IA/GxB,KAAA,CAIC,aAHA1K,CAAAA,KAAA2K,yBAA2BC,IAC3B5K,KAAA6K,aAAe,IAAIlJ,UAmBnB3B,KAAA8K,KAAQrI,GACAsI,MAAI,CACV5G,YAA0BC,OAAQqG,CAAW7I,EAAAA,KAC5CoJ,EAAAA,OACC5B,GAAAA,CAAAA,CACGA,EAAE/G,OAAOI,UAAUwI,MACnBxI,CAAAA,CAAAA,EAAUyI,IACZ9B,EAAE/G,OAAOI,UAAUyI,KAAOzI,EAAUyI,IACpC9B,EAAE/G,OAAOI,UAAUwI,OAASxI,EAAUwI,IAExCzG,EAAAA,EAAAA,IAAI4E,GAAKA,EAAE/G,OAAOI,SAAAA,EAClB0I,EAAAA,KAAK,CAAA,CAAA,EAENtD,EAAAA,GAAGpF,CAAAA,EAAWb,KACb2C,EAAAA,IAAI,IACIH,CAAAA,OAAAnC,cACN,IAAIC,YAA6CsI,EAAkB,CAClEnI,OAAQ,CACP6I,GAAIzI,EAAUyI,GACdE,SAAU3I,EAAUwI,IAGvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAGArJ,KACF4C,EAAAA,IAAI,EAAE/B,CAAeA,IAAAA,CAAAA,EACrB4I,EAAAA,QAAQ,IAIVrL,KAAAsL,KAAQC,IAWD,KAAA7D,CAAAA,KAAEA,EAAM8D,GAAAA,CAAAA,EAAOD,EAGfE,EAAiBD,EAAG3F,QAAQd,MAAM2G,OACrCF,EAAA3F,QAAQd,MAAM4G,gBAAkB,WACnCH,EAAG3F,QAAQd,MAAMC,YAAY,aAAc,WACxCwG,EAAA3F,QAAQd,MAAM2G,OAAS,OAO1B,MAMME,EAAwB,CAC7B,CACCrE,UAAW,aAREG,EAAKmE,KAAKC,KAAON,EAAGK,KAAKC,IACzBpE,OAAAA,EAAKmE,KAAKE,IAAMP,EAAGK,KAAKE,GACnBrE,aAAAA,EAAKmE,KAAKlH,MAAQ6G,EAAGK,KAAKlH,KAAAA,KAC1B+C,EAAKmE,KAAKvK,OAASkK,EAAGK,KAAKvK,MAAAA,GAAAA,EAO9C,CACCiG,UAAW,6BAAA,CAAA,EAKKiE,EAAG3F,QAAQwB,QAAQuE,EAAW,CAC/CpE,SAAU,IACVwE,MAAO,GAGPvE,OAAQ,yCAAA,CAAA,EAKCO,SAAW,IAAA,CACjBwD,EAAA3F,QAAQd,MAAM2G,OAASD,EACvBD,EAAA3F,QAAQd,MAAM4G,gBAAkB,EAAA,CAGpC,EAtGA3L,KAAK6K,aACHjJ,KACAqK,EAAAA,WAAW,GACXzH,EAAAA,IAAI0H,GACHA,EAAS1H,IAAI,CAAGkD,CAAAA,KAAAA,EAAM8D,KAAIW,KAAQC,CAAAA,EAAAA,KAAO,CACxC1E,KACA8D,EAAAA,GAAAA,EACAW,KACAC,EAAAA,EAAAA,CAAAA,EAAAA,CAAAA,EAGFC,EAAAA,UAAUH,GAAYnB,MAAImB,EAAS1H,IAAI+G,GAAW1D,EAAAA,GAAG7H,KAAKsL,KAAKC,CAE/D1J,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,UAAAA,CAAU,GC1CP,SAASyK,EAAiBzG,GACzB,OAAA0G,EAAAA,SAAS,EAAA,EAAI3K,KAEnB4C,MAAI,IAAMqB,EAAQ2G,sBAAAA,CAAAA,EAClBvH,EAAAA,qBACC,CAACwH,EAAMC,IACND,EAAK9H,QAAU+H,EAAK/H,OACpB8H,EAAKnL,SAAWoL,EAAKpL,QACrBmL,EAAKV,MAAQW,EAAKX,KAClBU,EAAKE,QAAUD,EAAKC,OACpBF,EAAKG,SAAWF,EAAKE,QACrBH,EAAKX,OAASY,EAAKZ,IAErBX,EAAAA,EAAAA,KAAK,CAEP,CAAA,CAAA,qMCJa0B,QAANA,sBAAA,cAAoClJ,EAAAA,YAAYjE,EAAAA,KAAhD,CAAA,CAAA,cAAAI,MAAAC,GAAAA,SAAAA,EAKqCC,KAAAiL,KAAO/H,KAAKC,MAAMD,KAAKE,SAAWC,KAAKC,IAAAA,CAAAA,EAQ9CtD,KAAAgM,MAAA,EAExBhM,KAAA8M,UAA6B,EAAA,CAEzC,IAAA,mBAEC,OADa9M,KAAK+M,WAAWC,cAAc,MAAA,EAC/BC,iBAAiB,CAAE5G,QAAAA,EAAe,CAAA,CAAA,CAG/C,mBACC,CAAA,GAAIrG,KAAKkL,KAAT,OAAiC,MAAA,IAAIgC,MAAM,gBAC3CpN,EAAAA,MAAMyG,oBACNrC,EAAAA,MACCC,YAAiCC,OAAQ+I,EAAeA,eAAEvL,EAAAA,KACzD2C,MAAI,CACH5B,KAAM,IAAA,CACA3C,KAAAiC,cACJ,IAAIC,YAAwCkL,EAAAA,WAAY,CACvD/K,OAAQ,CACPI,UAAWzC,IAAAA,EAEZuC,WACAC,SAAAA,KAEF,CAIH2B,CAAAA,CAAAA,EAAAA,YAAiCC,OAAQoG,GAAkB5I,KAC1D2C,MAAI,CACH5B,KAAWyG,IACNA,EAAE/G,OAAO6I,KAAOlL,KAAKkL,IAAMlL,KAAKiL,MAAQ7B,EAAE/G,OAAO+I,WAAapL,KAAKiL,MACjEjL,KAAAiC,cACJ,IAAIC,YAAsCuI,EAAW,CACpDpI,OAAQ,CACPI,UAAWzC,MAEZuC,QAAS,GACTC,SAAU,EAAA,CAAA,CAAA,CAEZ,MAMHZ,KAAKsD,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EACpBtD,WAAU,CAGb,MAAA,cACCgG,CAAAA,EAAAA,GAAGwF,EAAqB1C,qBAAqB2C,IAAItN,KAAKkL,EAAAA,CAAAA,EACpDtJ,KACAoJ,EAAAA,OAAOuC,GAAOA,CAAAA,CAAAA,CAAAA,EACdrI,EAAAA,UAAUlF,KAAKmF,eACfqI,EAAaA,aAAAA,CAAAA,EAEb3L,UAAU,CACVc,KAAiB8K,GAEXzN,CAAAA,KAAA+E,MAAMC,YAAY,aAAc,UAEpBsH,EAAAtM,IAAAA,EACf4B,KAAKsD,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EACpBtD,UAAU,CACVc,KAAWyG,IAEViE,EAAqB1C,qBAAqB+C,IAAI1N,KAAKkL,GAAI9B,CACvDsB,EAAAA,EAASG,aAAalI,KAAK,CAC1B+E,KAAM,CACLmE,KAAM4B,GAEPjC,GAAI,CACHK,KAAMzC,EACNvD,QAAS7F,KAAK2N,iBAAiB,IAEhCxB,KAAMnM,IAAAA,CAAAA,CACN,GAEF,EAEH4N,MAAO,IACD5N,CAAAA,KAAA+E,MAAMC,YAAY,aAAc,WACpBsH,EAAAtM,IAAAA,EACf4B,KAAKsD,EAAAA,UAAUlF,KAAKmF,aAAAA,CAAAA,EACpBtD,UAAU,CACVc,KAAWyG,IAEViE,EAAqB1C,qBAAqB+C,IAAI1N,KAAKkL,GAAI9B,CAAC,CAAA,CAAA,CAAA,CAEzD,EAEHnB,SAAU,IAAA,CAAA,CAAA,CAAA,CACV,CAGH,QAAAjC,CACQ,OAAArG,EAAAA,mBAAA,CAAA,EAzGmCW,EAAA,CAA1CC,EAAAA,SAAS,CAAEN,KAAMQ,OAAQe,QAAS,EAAA,CAAA,CAAA,EALvBqL,8BAK+BrM,UAAA,OAAA,CAAA,EAMfF,EAAA,CAA3BC,WAAS,CAAEN,KAAMsB,MAXNsL,CAAAA,CAAAA,EAAAA,8BAWgBrM,UAAA,KAAA,GAEAF,EAAA,CAA3BC,WAAS,CAAEN,KAAMQ,MAAAA,CAAAA,CAAAA,EAbNoM,8BAagBrM,UAAA,QAAA,CAbhBqM,EAAAA,QAAAA,sBAANvM,EAAA,CADNV,EAAAA,cAAc,sBACFiN"}
|
package/dist/teleport.js
CHANGED
package/package.json
CHANGED
|
@@ -9,7 +9,6 @@ export declare class SchmancySurface extends SchmancySurface_base {
|
|
|
9
9
|
type: 'surface' | 'surfaceDim' | 'surfaceBright' | 'containerLowest' | 'containerLow' | 'container' | 'containerHigh' | 'containerHighest';
|
|
10
10
|
elevation: 0 | 1 | 2 | 3 | 4 | 5;
|
|
11
11
|
get classes(): Record<string, boolean>;
|
|
12
|
-
updated(): void;
|
|
13
12
|
protected render(): unknown;
|
|
14
13
|
}
|
|
15
14
|
declare global {
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";const u=require("./provide-_VUNOf1R.cjs");require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const l=require("./tailwind.mixin-_mD_GeAp.cjs"),h=require("lit"),i=require("lit/decorators.js"),p=require("./context-BATZj31H.cjs");var d=Object.defineProperty,y=Object.getOwnPropertyDescriptor,s=(o,t,r,n)=>{for(var c,e=n>1?void 0:n?y(t,r):t,a=o.length-1;a>=0;a--)(c=o[a])&&(e=(n?c(t,r,e):c(e))||e);return n&&e&&d(t,r,e),e};exports.SchmancySurface=class extends l.TailwindElement(h.css`
|
|
2
|
-
:host([fill]) {
|
|
3
|
-
height: -webkit-fill-available;
|
|
4
|
-
width: -webkit-fill-available;
|
|
5
|
-
}
|
|
6
|
-
`){constructor(){super(...arguments),this.fill=!1,this.rounded="none",this.type="surface",this.elevation=0}get classes(){return{"relative block":!0,"rounded-none":this.rounded==="none","rounded-t-[8px]":this.rounded==="top","rounded-l-[8px]":this.rounded==="left","rounded-r-[8px]":this.rounded==="right","rounded-b-[8px]":this.rounded==="bottom","rounded-[8px]":this.rounded==="all","w-full h-full":this.fill,"shadow-xs":this.elevation===1,"shadow-sm":this.elevation===2,"shadow-md":this.elevation===3,"shadow-lg":this.elevation===4,"text-surface-on":this.type==="surface"||this.type==="surfaceDim"||this.type==="surfaceBright"||this.type==="containerLowest"||this.type==="containerLow"||this.type==="container"||this.type==="containerHigh"||this.type==="containerHighest","bg-surface-default":this.type==="surface","bg-surface-dim":this.type==="surfaceDim","bg-surface-bright":this.type==="surfaceBright","bg-surface-lowest":this.type==="containerLowest","bg-surface-low":this.type==="containerLow","bg-surface-container":this.type==="container","bg-surface-high":this.type==="containerHigh","bg-surface-highest":this.type==="containerHighest"}}updated(){Object.entries(this.classes).forEach(([o,t])=>{o.split(" ").forEach(r=>{this.classList.toggle(r,t)})})}render(){return h.html` <slot></slot> `}},s([i.property({type:Boolean})],exports.SchmancySurface.prototype,"fill",2),s([i.property()],exports.SchmancySurface.prototype,"rounded",2),s([u.e({context:p.SchmancySurfaceTypeContext}),i.property()],exports.SchmancySurface.prototype,"type",2),s([i.property({type:Number})],exports.SchmancySurface.prototype,"elevation",2),exports.SchmancySurface=s([i.customElement("schmancy-surface")],exports.SchmancySurface);
|
|
7
|
-
//# sourceMappingURL=surface-BbOInJUI.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"surface-BbOInJUI.cjs","sources":["../src/surface/surface.ts"],"sourcesContent":["import { provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { SchmancySurfaceTypeContext } from './context'\n\n/**\n * @element schmancy-surface\n * @slot - default content\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host([fill]) {\n\t\theight: -webkit-fill-available;\n\t\twidth: -webkit-fill-available;\n\t}\n`) {\n\t@property({ type: Boolean }) fill = false\n\t@property() rounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property()\n\ttype:\n\t\t| 'surface'\n\t\t| 'surfaceDim'\n\t\t| 'surfaceBright'\n\t\t| 'containerLowest'\n\t\t| 'containerLow'\n\t\t| 'container'\n\t\t| 'containerHigh'\n\t\t| 'containerHighest' = 'surface'\n\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tget classes(): Record<string, boolean> {\n\t\treturn {\n\t\t\t'relative block': true,\n\t\t\t'rounded-none': this.rounded === 'none',\n\t\t\t'rounded-t-[8px]': this.rounded === 'top',\n\t\t\t'rounded-l-[8px]': this.rounded === 'left',\n\t\t\t'rounded-r-[8px]': this.rounded === 'right',\n\t\t\t'rounded-b-[8px]': this.rounded === 'bottom',\n\t\t\t'rounded-[8px]': this.rounded === 'all',\n\n\t\t\t'w-full h-full': this.fill,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'text-surface-on':\n\t\t\t\tthis.type === 'surface' ||\n\t\t\t\tthis.type === 'surfaceDim' ||\n\t\t\t\tthis.type === 'surfaceBright' ||\n\t\t\t\tthis.type === 'containerLowest' ||\n\t\t\t\tthis.type === 'containerLow' ||\n\t\t\t\tthis.type === 'container' ||\n\t\t\t\tthis.type === 'containerHigh' ||\n\t\t\t\tthis.type === 'containerHighest',\n\t\t\t'bg-surface-default': this.type === 'surface',\n\t\t\t'bg-surface-dim': this.type === 'surfaceDim',\n\t\t\t'bg-surface-bright': this.type === 'surfaceBright',\n\t\t\t'bg-surface-lowest': this.type === 'containerLowest',\n\t\t\t'bg-surface-low': this.type === 'containerLow',\n\t\t\t'bg-surface-container': this.type === 'container',\n\t\t\t'bg-surface-high': this.type === 'containerHigh',\n\t\t\t'bg-surface-highest': this.type === 'containerHighest',\n\t\t}\n\t}\n\n\tupdated() {\n\t\t// Loop over the computed classes and toggle each class on the host element.\n\t\tObject.entries(this.classes).forEach(([cls, condition]) => {\n\t\t\t// In case you have multiple classes in one string (like 'relative inset-0 block sha'),\n\t\t\t// split them and toggle each one.\n\t\t\tcls.split(' ').forEach(singleClass => {\n\t\t\t\tthis.classList.toggle(singleClass, condition)\n\t\t\t})\n\t\t})\n\t}\n\n\tprotected render(): unknown {\n\t\t// Now, no extra <div> is needed because classes are on the host element.\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"names":["SchmancySurface","TailwindElement","css","constructor","super","arguments","this","fill","rounded","type","elevation","Object","entries","classes","forEach","cls","condition","split","singleClass","classList","toggle","render","html","__decorateClass","property","Boolean","prototype","provide","context","SchmancySurfaceTypeContext","Number","customElement"],"mappings":"0dAWaA,QAAAA,gBAAN,cAA8BC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAA9C,aAAAC,CAAAC,SAAAC,SAM8BC,EAAAA,KAAAC,QACwCD,KAAAE,QAAA,OAYpDF,KAAAG,KAAA,UAEuCH,KAAAI,UAAA,CAAA,CAE/D,IAAA,UACQ,MAAA,CACN,iBAAkB,GAClB,eAAgBJ,KAAKE,UAAY,OACjC,kBAAmBF,KAAKE,UAAY,MACpC,kBAAmBF,KAAKE,UAAY,OACpC,kBAAmBF,KAAKE,UAAY,QACpC,kBAAmBF,KAAKE,UAAY,SACpC,gBAAiBF,KAAKE,UAAY,MAElC,gBAAiBF,KAAKC,KACtB,YAAaD,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAChC,YAAaJ,KAAKI,YAAc,EAChC,kBACCJ,KAAKG,OAAS,WACdH,KAAKG,OAAS,cACdH,KAAKG,OAAS,iBACdH,KAAKG,OAAS,mBACdH,KAAKG,OAAS,gBACdH,KAAKG,OAAS,aACdH,KAAKG,OAAS,iBACdH,KAAKG,OAAS,mBACf,qBAAsBH,KAAKG,OAAS,UACpC,iBAAkBH,KAAKG,OAAS,aAChC,oBAAqBH,KAAKG,OAAS,gBACnC,oBAAqBH,KAAKG,OAAS,kBACnC,iBAAkBH,KAAKG,OAAS,eAChC,uBAAwBH,KAAKG,OAAS,YACtC,kBAAmBH,KAAKG,OAAS,gBACjC,qBAAsBH,KAAKG,OAAS,kBACrC,CAAA,CAGD,SAEQE,CAAAA,OAAAC,QAAQN,KAAKO,OAASC,EAAAA,QAAQ,EAAEC,EAAKC,CAAAA,IAAAA,CAG3CD,EAAIE,MAAM,GAAA,EAAKH,QAAuBI,GAChCZ,CAAAA,KAAAa,UAAUC,OAAOF,EAAaF,CAAAA,CAAS,EAC5C,CACD,CAAA,CAGQ,QAAAK,CAEF,OAAAC,EAAAA,qBAAA,CAAA,EAjEqBC,EAAA,CAA5BC,WAAS,CAAEf,KAAMgB,OAAAA,CAAAA,CAAAA,EANNzB,wBAMiB0B,UAAA,OAAA,CACjBH,EAAAA,EAAA,CAAXC,EAASA,SAPExB,CAAAA,EAAAA,wBAOA0B,UAAA,UAAA,GAIZH,EAAA,CAFCI,IAAQ,CAAEC,QAASC,EAAAA,0BACnBL,CAAAA,EAAAA,EAASA,YAVExB,wBAWZ0B,UAAA,OAAA,CAAA,EAU4BH,EAAA,CAA3BC,WAAS,CAAEf,KAAMqB,MAAAA,CAAAA,CAAAA,EArBN9B,wBAqBgB0B,UAAA,YAAA,CAAA,EArBhB1B,QAANA,gBAAAuB,EAAA,CADNQ,EAAAA,cAAc,kBAAA,CAAA,EACF/B"}
|
package/dist/surface-DmAWRMYt.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { e as l } from "./provide-kj6-udep.js";
|
|
2
|
-
import "rxjs";
|
|
3
|
-
import "lit/directives/class-map.js";
|
|
4
|
-
import "lit/directives/style-map.js";
|
|
5
|
-
import { T as c } from "./tailwind.mixin-DtR4DQvn.js";
|
|
6
|
-
import { css as u, html as d } from "lit";
|
|
7
|
-
import { property as n, customElement as f } from "lit/decorators.js";
|
|
8
|
-
import { S as y } from "./context-5nmahssp.js";
|
|
9
|
-
var g = Object.defineProperty, m = Object.getOwnPropertyDescriptor, i = (o, e, r, a) => {
|
|
10
|
-
for (var h, t = a > 1 ? void 0 : a ? m(e, r) : e, p = o.length - 1; p >= 0; p--) (h = o[p]) && (t = (a ? h(e, r, t) : h(t)) || t);
|
|
11
|
-
return a && t && g(e, r, t), t;
|
|
12
|
-
};
|
|
13
|
-
let s = class extends c(u`
|
|
14
|
-
:host([fill]) {
|
|
15
|
-
height: -webkit-fill-available;
|
|
16
|
-
width: -webkit-fill-available;
|
|
17
|
-
}
|
|
18
|
-
`) {
|
|
19
|
-
constructor() {
|
|
20
|
-
super(...arguments), this.fill = !1, this.rounded = "none", this.type = "surface", this.elevation = 0;
|
|
21
|
-
}
|
|
22
|
-
get classes() {
|
|
23
|
-
return { "relative block": !0, "rounded-none": this.rounded === "none", "rounded-t-[8px]": this.rounded === "top", "rounded-l-[8px]": this.rounded === "left", "rounded-r-[8px]": this.rounded === "right", "rounded-b-[8px]": this.rounded === "bottom", "rounded-[8px]": this.rounded === "all", "w-full h-full": this.fill, "shadow-xs": this.elevation === 1, "shadow-sm": this.elevation === 2, "shadow-md": this.elevation === 3, "shadow-lg": this.elevation === 4, "text-surface-on": this.type === "surface" || this.type === "surfaceDim" || this.type === "surfaceBright" || this.type === "containerLowest" || this.type === "containerLow" || this.type === "container" || this.type === "containerHigh" || this.type === "containerHighest", "bg-surface-default": this.type === "surface", "bg-surface-dim": this.type === "surfaceDim", "bg-surface-bright": this.type === "surfaceBright", "bg-surface-lowest": this.type === "containerLowest", "bg-surface-low": this.type === "containerLow", "bg-surface-container": this.type === "container", "bg-surface-high": this.type === "containerHigh", "bg-surface-highest": this.type === "containerHighest" };
|
|
24
|
-
}
|
|
25
|
-
updated() {
|
|
26
|
-
Object.entries(this.classes).forEach(([o, e]) => {
|
|
27
|
-
o.split(" ").forEach((r) => {
|
|
28
|
-
this.classList.toggle(r, e);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
render() {
|
|
33
|
-
return d` <slot></slot> `;
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
i([n({ type: Boolean })], s.prototype, "fill", 2), i([n()], s.prototype, "rounded", 2), i([l({ context: y }), n()], s.prototype, "type", 2), i([n({ type: Number })], s.prototype, "elevation", 2), s = i([f("schmancy-surface")], s);
|
|
37
|
-
export {
|
|
38
|
-
s as S
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=surface-DmAWRMYt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"surface-DmAWRMYt.js","sources":["../src/surface/surface.ts"],"sourcesContent":["import { provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { SchmancySurfaceTypeContext } from './context'\n\n/**\n * @element schmancy-surface\n * @slot - default content\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host([fill]) {\n\t\theight: -webkit-fill-available;\n\t\twidth: -webkit-fill-available;\n\t}\n`) {\n\t@property({ type: Boolean }) fill = false\n\t@property() rounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property()\n\ttype:\n\t\t| 'surface'\n\t\t| 'surfaceDim'\n\t\t| 'surfaceBright'\n\t\t| 'containerLowest'\n\t\t| 'containerLow'\n\t\t| 'container'\n\t\t| 'containerHigh'\n\t\t| 'containerHighest' = 'surface'\n\n\t@property({ type: Number }) elevation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tget classes(): Record<string, boolean> {\n\t\treturn {\n\t\t\t'relative block': true,\n\t\t\t'rounded-none': this.rounded === 'none',\n\t\t\t'rounded-t-[8px]': this.rounded === 'top',\n\t\t\t'rounded-l-[8px]': this.rounded === 'left',\n\t\t\t'rounded-r-[8px]': this.rounded === 'right',\n\t\t\t'rounded-b-[8px]': this.rounded === 'bottom',\n\t\t\t'rounded-[8px]': this.rounded === 'all',\n\n\t\t\t'w-full h-full': this.fill,\n\t\t\t'shadow-xs': this.elevation === 1,\n\t\t\t'shadow-sm': this.elevation === 2,\n\t\t\t'shadow-md': this.elevation === 3,\n\t\t\t'shadow-lg': this.elevation === 4,\n\t\t\t'text-surface-on':\n\t\t\t\tthis.type === 'surface' ||\n\t\t\t\tthis.type === 'surfaceDim' ||\n\t\t\t\tthis.type === 'surfaceBright' ||\n\t\t\t\tthis.type === 'containerLowest' ||\n\t\t\t\tthis.type === 'containerLow' ||\n\t\t\t\tthis.type === 'container' ||\n\t\t\t\tthis.type === 'containerHigh' ||\n\t\t\t\tthis.type === 'containerHighest',\n\t\t\t'bg-surface-default': this.type === 'surface',\n\t\t\t'bg-surface-dim': this.type === 'surfaceDim',\n\t\t\t'bg-surface-bright': this.type === 'surfaceBright',\n\t\t\t'bg-surface-lowest': this.type === 'containerLowest',\n\t\t\t'bg-surface-low': this.type === 'containerLow',\n\t\t\t'bg-surface-container': this.type === 'container',\n\t\t\t'bg-surface-high': this.type === 'containerHigh',\n\t\t\t'bg-surface-highest': this.type === 'containerHighest',\n\t\t}\n\t}\n\n\tupdated() {\n\t\t// Loop over the computed classes and toggle each class on the host element.\n\t\tObject.entries(this.classes).forEach(([cls, condition]) => {\n\t\t\t// In case you have multiple classes in one string (like 'relative inset-0 block sha'),\n\t\t\t// split them and toggle each one.\n\t\t\tcls.split(' ').forEach(singleClass => {\n\t\t\t\tthis.classList.toggle(singleClass, condition)\n\t\t\t})\n\t\t})\n\t}\n\n\tprotected render(): unknown {\n\t\t// Now, no extra <div> is needed because classes are on the host element.\n\t\treturn html` <slot></slot> `\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"names":["SchmancySurface","TailwindElement","css","constructor","super","arguments","this","fill","rounded","type","elevation","updated","Object","entries","classes","forEach","cls","condition","split","singleClass","classList","toggle","html","__decorateClass","property","Boolean","prototype","provide","context","SchmancySurfaceTypeContext","Number","customElement"],"mappings":";;;;;;;;;;;;AAWa,IAAAA,IAAN,cAA8BC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAA9C,cAAAC;AAAAC,aAAAC,SAM8BC,GAAAA,KAAAC,WACwCD,KAAAE,UAAA,QAYpDF,KAAAG,OAAA,WAEuCH,KAAAI,YAAA;AAAA,EAAA;AAAA,EAE/D,cACQ;AAAA,WAAA,EACN,kBAAkB,IAClB,gBAAgBJ,KAAKE,YAAY,QACjC,mBAAmBF,KAAKE,YAAY,OACpC,mBAAmBF,KAAKE,YAAY,QACpC,mBAAmBF,KAAKE,YAAY,SACpC,mBAAmBF,KAAKE,YAAY,UACpC,iBAAiBF,KAAKE,YAAY,OAElC,iBAAiBF,KAAKC,MACtB,aAAaD,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAChC,aAAaJ,KAAKI,cAAc,GAChC,mBACCJ,KAAKG,SAAS,aACdH,KAAKG,SAAS,gBACdH,KAAKG,SAAS,mBACdH,KAAKG,SAAS,qBACdH,KAAKG,SAAS,kBACdH,KAAKG,SAAS,eACdH,KAAKG,SAAS,mBACdH,KAAKG,SAAS,oBACf,sBAAsBH,KAAKG,SAAS,WACpC,kBAAkBH,KAAKG,SAAS,cAChC,qBAAqBH,KAAKG,SAAS,iBACnC,qBAAqBH,KAAKG,SAAS,mBACnC,kBAAkBH,KAAKG,SAAS,gBAChC,wBAAwBH,KAAKG,SAAS,aACtC,mBAAmBH,KAAKG,SAAS,iBACjC,sBAAsBH,KAAKG,SAAS,mBAATA;AAAAA,EAC5B;AAAA,EAGD,UAAAE;AAEQC,WAAAC,QAAQP,KAAKQ,SAASC,QAAQ,CAAA,CAAEC,GAAKC,CAG3CD,MAAAA;AAAAA,MAAAA,EAAIE,MAAM,GAAKH,EAAAA,QAAuBI,CAAAA;AAChCb,aAAAc,UAAUC,OAAOF,GAAaF,CAAAA;AAAAA,MAAS,CAC5C;AAAA,IAAA,CAAA;AAAA,EACD;AAAA,EAGQ;AAEF,WAAAK;AAAAA,EAAA;AAjEqBC;AAAAA,EAAA,CAA5BC,EAAS,EAAEf,MAAMgB,QANNzB,CAAAA,CAAAA,GAAAA,EAMiB0B,WAAA,QAAA,CAAA,GACjBH,EAAA,CAAXC,EAAAA,CAAAA,GAPWxB,EAOA0B,WAAA,WAAA,CAIZH,GAAAA,EAAA,CAFCI,EAAQ,EAAEC,SAASC,EAAAA,CAAAA,GACnBL,MAVWxB,EAWZ0B,WAAA,QAAA,CAU4BH,GAAAA,EAAA,CAA3BC,EAAS,EAAEf,MAAMqB,OArBN9B,CAAAA,CAAAA,GAAAA,EAqBgB0B,WAAA,aAAA,CAAA,GArBhB1B,IAANuB,EAAA,CADNQ,EAAc,kBAAA,CAAA,GACF/B;"}
|