@mhmo91/schmancy 0.2.18 → 0.2.20
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/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- 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 +4 -4
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/{sheet-CcUHOsPu.js → sheet-D8-zxp3n.js} +27 -25
- package/dist/{sheet-CcUHOsPu.js.map → sheet-D8-zxp3n.js.map} +1 -1
- package/dist/{sheet-DQ6oo0bV.cjs → sheet-VJBIc1zb.cjs} +20 -18
- package/dist/{sheet-DQ6oo0bV.cjs.map → sheet-VJBIc1zb.cjs.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{spinner--_IQN93k.js → spinner-Qncx6I22.js} +2 -2
- package/dist/{spinner--_IQN93k.js.map → spinner-Qncx6I22.js.map} +1 -1
- package/dist/{spinner-CMxdYix8.cjs → spinner-vK7ZLqSI.cjs} +2 -2
- package/dist/{spinner-CMxdYix8.cjs.map → spinner-vK7ZLqSI.cjs.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/{teleport.component-CLYvKomW.cjs → teleport.component-90QAnife.cjs} +2 -2
- package/dist/{teleport.component-CLYvKomW.cjs.map → teleport.component-90QAnife.cjs.map} +1 -1
- package/dist/{teleport.component-DFEVoSMG.js → teleport.component-CMZW0HoW.js} +4 -4
- package/dist/{teleport.component-DFEVoSMG.js.map → teleport.component-CMZW0HoW.js.map} +1 -1
- package/dist/teleport.js +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.component-CbQ3s3hX.cjs +3 -0
- package/dist/theme.component-CbQ3s3hX.cjs.map +1 -0
- package/dist/{theme.component-VDofRNDt.js → theme.component-wMpGPTus.js} +106 -104
- package/dist/theme.component-wMpGPTus.js.map +1 -0
- package/dist/theme.js +1 -1
- package/package.json +1 -1
- package/types/src/theme/context.d.ts +64 -0
- package/dist/theme.component-C6K_02NA.cjs +0 -3
- package/dist/theme.component-C6K_02NA.cjs.map +0 -1
- package/dist/theme.component-VDofRNDt.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teleport.component-DFEVoSMG.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()\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","undefined","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","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"teleport.component-CMZW0HoW.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()\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","undefined","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","teleportationService","get","a","throwIfEmpty","domRect","set","_slottedChildren","error"],"mappings":"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"}
|
package/dist/teleport.js
CHANGED
package/dist/theme.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme.component-CbQ3s3hX.cjs"),t=require("./theme.interface-Xg5Zi46a.cjs");Object.defineProperty(exports,"SchmancyThemeComponent",{enumerable:!0,get:()=>e.SchmancyThemeComponent}),exports.formateTheme=e.formateTheme,exports.tailwindStyles=e.tailwindStyles,exports.SchmancyTheme=t.SchmancyTheme;
|
|
2
2
|
//# sourceMappingURL=theme.cjs.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";const br=require("./provide-_VUNOf1R.cjs"),Tr=require("./tailwind.mixin-bRVZL2lY.cjs"),vr=require("lit"),Q=require("lit/decorators.js"),cr=require("rxjs");function H(r){return r<0?-1:r===0?0:1}function rr(r,e,t){return(1-t)*r+t*e}function sr(r,e,t){return t<r?r:t>e?e:t}function lr(r){return(r%=360)<0&&(r+=360),r}function hr(r,e){return[r[0]*e[0][0]+r[1]*e[0][1]+r[2]*e[0][2],r[0]*e[1][0]+r[1]*e[1][1]+r[2]*e[1][2],r[0]*e[2][0]+r[1]*e[2][1]+r[2]*e[2][2]]}const Ir=[[.41233895,.35762064,.18051042],[.2126,.7152,.0722],[.01932141,.11916382,.95034478]],Fr=[[3.2413774792388685,-1.5376652402851851,-.49885366846268053],[-.9691452513005321,1.8758853451067872,.04156585616912061],[.05562093689691305,-.20395524564742123,1.0571799111220335]],Br=[95.047,100,108.883];function yr(r,e,t){return(255<<24|(255&r)<<16|(255&e)<<8|255&t)>>>0}function kr(r){return yr(J(r[0]),J(r[1]),J(r[2]))}function ur(r){const e=function(t){const o=K(function(s){return s>>16&255}(t)),a=K(function(s){return s>>8&255}(t)),c=K(function(s){return 255&s}(t));return hr([o,a,c],Ir)}(r)[1];return 116*wr(e/100)-16}function G(r){return 100*function(e){const t=903.2962962962963,o=e*e*e;return o>216/24389?o:(116*e-16)/t}((r+16)/116)}function mr(r){return 116*wr(r/100)-16}function K(r){const e=r/255;return e<=.040449936?e/12.92*100:100*Math.pow((e+.055)/1.055,2.4)}function J(r){const e=r/100;let t=0;return t=e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055,o=0,a=255,(c=Math.round(255*t))<o?o:c>a?a:c;var o,a,c}function wr(r){return r>216/24389?Math.pow(r,1/3):(903.2962962962963*r+16)/116}class U{static make(e=function(){return Br}(),t=200/Math.PI*G(50)/100,o=50,a=2,c=!1){const s=e,i=.401288*s[0]+.650173*s[1]+-.051461*s[2],l=-.250268*s[0]+1.204414*s[1]+.045854*s[2],h=-.002079*s[0]+.048952*s[1]+.953127*s[2],m=.8+a/10,f=m>=.9?rr(.59,.69,10*(m-.9)):rr(.525,.59,10*(m-.8));let g=c?1:m*(1-1/3.6*Math.exp((-t-42)/92));g=g>1?1:g<0?0:g;const C=m,p=[g*(100/i)+1-g,g*(100/l)+1-g,g*(100/h)+1-g],v=1/(5*t+1),w=v*v*v*v,D=1-w,k=w*t+.1*D*D*Math.cbrt(5*t),O=G(o)/e[1],x=1.48+Math.sqrt(O),b=.725/Math.pow(O,.2),I=b,P=[Math.pow(k*p[0]*i/100,.42),Math.pow(k*p[1]*l/100,.42),Math.pow(k*p[2]*h/100,.42)],T=[400*P[0]/(P[0]+27.13),400*P[1]/(P[1]+27.13),400*P[2]/(P[2]+27.13)];return new U(O,(2*T[0]+T[1]+.05*T[2])*b,b,I,f,C,p,k,Math.pow(k,.25),x)}constructor(e,t,o,a,c,s,i,l,h,m){this.n=e,this.aw=t,this.nbb=o,this.ncb=a,this.c=c,this.nc=s,this.rgbD=i,this.fl=l,this.fLRoot=h,this.z=m}}U.DEFAULT=U.make();class B{constructor(e,t,o,a,c,s,i,l,h){this.hue=e,this.chroma=t,this.j=o,this.q=a,this.m=c,this.s=s,this.jstar=i,this.astar=l,this.bstar=h}distance(e){const t=this.jstar-e.jstar,o=this.astar-e.astar,a=this.bstar-e.bstar,c=Math.sqrt(t*t+o*o+a*a);return 1.41*Math.pow(c,.63)}static fromInt(e){return B.fromIntInViewingConditions(e,U.DEFAULT)}static fromIntInViewingConditions(e,t){const o=(65280&e)>>8,a=255&e,c=K((16711680&e)>>16),s=K(o),i=K(a),l=.41233895*c+.35762064*s+.18051042*i,h=.2126*c+.7152*s+.0722*i,m=.01932141*c+.11916382*s+.95034478*i,f=.401288*l+.650173*h-.051461*m,g=-.250268*l+1.204414*h+.045854*m,C=-.002079*l+.048952*h+.953127*m,p=t.rgbD[0]*f,v=t.rgbD[1]*g,w=t.rgbD[2]*C,D=Math.pow(t.fl*Math.abs(p)/100,.42),k=Math.pow(t.fl*Math.abs(v)/100,.42),O=Math.pow(t.fl*Math.abs(w)/100,.42),x=400*H(p)*D/(D+27.13),b=400*H(v)*k/(k+27.13),I=400*H(w)*O/(O+27.13),P=(11*x+-12*b+I)/11,T=(x+b-2*I)/9,S=(20*x+20*b+21*I)/20,tr=(40*x+20*b+I)/20,z=180*Math.atan2(T,P)/Math.PI,N=z<0?z+360:z>=360?z-360:z,j=N*Math.PI/180,R=tr*t.nbb,q=100*Math.pow(R/t.aw,t.c*t.z),X=4/t.c*Math.sqrt(q/100)*(t.aw+4)*t.fLRoot,W=N<20.14?N+360:N,or=5e4/13*(.25*(Math.cos(W*Math.PI/180+2)+3.8))*t.nc*t.ncb*Math.sqrt(P*P+T*T)/(S+.305),ar=Math.pow(or,.9)*Math.pow(1.64-Math.pow(.29,t.n),.73),nr=ar*Math.sqrt(q/100),fr=nr*t.fLRoot,Pr=50*Math.sqrt(ar*t.c/(t.aw+4)),Mr=(1+100*.007)*q/(1+.007*q),gr=1/.0228*Math.log(1+.0228*fr),Dr=gr*Math.cos(j),Sr=gr*Math.sin(j);return new B(N,nr,q,X,fr,Pr,Mr,Dr,Sr)}static fromJch(e,t,o){return B.fromJchInViewingConditions(e,t,o,U.DEFAULT)}static fromJchInViewingConditions(e,t,o,a){const c=4/a.c*Math.sqrt(e/100)*(a.aw+4)*a.fLRoot,s=t*a.fLRoot,i=t/Math.sqrt(e/100),l=50*Math.sqrt(i*a.c/(a.aw+4)),h=o*Math.PI/180,m=(1+100*.007)*e/(1+.007*e),f=1/.0228*Math.log(1+.0228*s),g=f*Math.cos(h),C=f*Math.sin(h);return new B(o,t,e,c,s,l,m,g,C)}static fromUcs(e,t,o){return B.fromUcsInViewingConditions(e,t,o,U.DEFAULT)}static fromUcsInViewingConditions(e,t,o,a){const c=t,s=o,i=Math.sqrt(c*c+s*s),l=(Math.exp(.0228*i)-1)/.0228/a.fLRoot;let h=Math.atan2(s,c)*(180/Math.PI);h<0&&(h+=360);const m=e/(1-.007*(e-100));return B.fromJchInViewingConditions(m,l,h,a)}toInt(){return this.viewed(U.DEFAULT)}viewed(e){const t=this.chroma===0||this.j===0?0:this.chroma/Math.sqrt(this.j/100),o=Math.pow(t/Math.pow(1.64-Math.pow(.29,e.n),.73),1/.9),a=this.hue*Math.PI/180,c=.25*(Math.cos(a+2)+3.8),s=e.aw*Math.pow(this.j/100,1/e.c/e.z),i=c*(5e4/13)*e.nc*e.ncb,l=s/e.nbb,h=Math.sin(a),m=Math.cos(a),f=23*(l+.305)*o/(23*i+11*o*m+108*o*h),g=f*m,C=f*h,p=(460*l+451*g+288*C)/1403,v=(460*l-891*g-261*C)/1403,w=(460*l-220*g-6300*C)/1403,D=Math.max(0,27.13*Math.abs(p)/(400-Math.abs(p))),k=H(p)*(100/e.fl)*Math.pow(D,1/.42),O=Math.max(0,27.13*Math.abs(v)/(400-Math.abs(v))),x=H(v)*(100/e.fl)*Math.pow(O,1/.42),b=Math.max(0,27.13*Math.abs(w)/(400-Math.abs(w))),I=H(w)*(100/e.fl)*Math.pow(b,1/.42),P=k/e.rgbD[0],T=x/e.rgbD[1],S=I/e.rgbD[2];return function(z,N,j){const R=Fr,q=R[0][0]*z+R[0][1]*N+R[0][2]*j,X=R[1][0]*z+R[1][1]*N+R[1][2]*j,W=R[2][0]*z+R[2][1]*N+R[2][2]*j;return yr(J(q),J(X),J(W))}(1.86206786*P-1.01125463*T+.14918677*S,.38752654*P+.62144744*T-.00897398*S,-.0158415*P-.03412294*T+1.04996444*S)}static fromXyzInViewingConditions(e,t,o,a){const c=.401288*e+.650173*t-.051461*o,s=-.250268*e+1.204414*t+.045854*o,i=-.002079*e+.048952*t+.953127*o,l=a.rgbD[0]*c,h=a.rgbD[1]*s,m=a.rgbD[2]*i,f=Math.pow(a.fl*Math.abs(l)/100,.42),g=Math.pow(a.fl*Math.abs(h)/100,.42),C=Math.pow(a.fl*Math.abs(m)/100,.42),p=400*H(l)*f/(f+27.13),v=400*H(h)*g/(g+27.13),w=400*H(m)*C/(C+27.13),D=(11*p+-12*v+w)/11,k=(p+v-2*w)/9,O=(20*p+20*v+21*w)/20,x=(40*p+20*v+w)/20,b=180*Math.atan2(k,D)/Math.PI,I=b<0?b+360:b>=360?b-360:b,P=I*Math.PI/180,T=x*a.nbb,S=100*Math.pow(T/a.aw,a.c*a.z),tr=4/a.c*Math.sqrt(S/100)*(a.aw+4)*a.fLRoot,z=I<20.14?I+360:I,N=5e4/13*(1/4*(Math.cos(z*Math.PI/180+2)+3.8))*a.nc*a.ncb*Math.sqrt(D*D+k*k)/(O+.305),j=Math.pow(N,.9)*Math.pow(1.64-Math.pow(.29,a.n),.73),R=j*Math.sqrt(S/100),q=R*a.fLRoot,X=50*Math.sqrt(j*a.c/(a.aw+4)),W=(1+100*.007)*S/(1+.007*S),or=Math.log(1+.0228*q)/.0228,ar=or*Math.cos(P),nr=or*Math.sin(P);return new B(I,R,S,tr,q,X,W,ar,nr)}xyzInViewingConditions(e){const t=this.chroma===0||this.j===0?0:this.chroma/Math.sqrt(this.j/100),o=Math.pow(t/Math.pow(1.64-Math.pow(.29,e.n),.73),1/.9),a=this.hue*Math.PI/180,c=.25*(Math.cos(a+2)+3.8),s=e.aw*Math.pow(this.j/100,1/e.c/e.z),i=c*(5e4/13)*e.nc*e.ncb,l=s/e.nbb,h=Math.sin(a),m=Math.cos(a),f=23*(l+.305)*o/(23*i+11*o*m+108*o*h),g=f*m,C=f*h,p=(460*l+451*g+288*C)/1403,v=(460*l-891*g-261*C)/1403,w=(460*l-220*g-6300*C)/1403,D=Math.max(0,27.13*Math.abs(p)/(400-Math.abs(p))),k=H(p)*(100/e.fl)*Math.pow(D,1/.42),O=Math.max(0,27.13*Math.abs(v)/(400-Math.abs(v))),x=H(v)*(100/e.fl)*Math.pow(O,1/.42),b=Math.max(0,27.13*Math.abs(w)/(400-Math.abs(w))),I=H(w)*(100/e.fl)*Math.pow(b,1/.42),P=k/e.rgbD[0],T=x/e.rgbD[1],S=I/e.rgbD[2];return[1.86206786*P-1.01125463*T+.14918677*S,.38752654*P+.62144744*T-.00897398*S,-.0158415*P-.03412294*T+1.04996444*S]}}class y{static sanitizeRadians(e){return(e+8*Math.PI)%(2*Math.PI)}static trueDelinearized(e){const t=e/100;let o=0;return o=t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,255*o}static chromaticAdaptation(e){const t=Math.pow(Math.abs(e),.42);return 400*H(e)*t/(t+27.13)}static hueOf(e){const t=hr(e,y.SCALED_DISCOUNT_FROM_LINRGB),o=y.chromaticAdaptation(t[0]),a=y.chromaticAdaptation(t[1]),c=y.chromaticAdaptation(t[2]),s=(11*o+-12*a+c)/11,i=(o+a-2*c)/9;return Math.atan2(i,s)}static areInCyclicOrder(e,t,o){return y.sanitizeRadians(t-e)<y.sanitizeRadians(o-e)}static intercept(e,t,o){return(t-e)/(o-e)}static lerpPoint(e,t,o){return[e[0]+(o[0]-e[0])*t,e[1]+(o[1]-e[1])*t,e[2]+(o[2]-e[2])*t]}static setCoordinate(e,t,o,a){const c=y.intercept(e[a],t,o[a]);return y.lerpPoint(e,c,o)}static isBounded(e){return 0<=e&&e<=100}static nthVertex(e,t){const o=y.Y_FROM_LINRGB[0],a=y.Y_FROM_LINRGB[1],c=y.Y_FROM_LINRGB[2],s=t%4<=1?0:100,i=t%2==0?0:100;if(t<4){const l=s,h=i,m=(e-l*a-h*c)/o;return y.isBounded(m)?[m,l,h]:[-1,-1,-1]}if(t<8){const l=s,h=i,m=(e-h*o-l*c)/a;return y.isBounded(m)?[h,m,l]:[-1,-1,-1]}{const l=s,h=i,m=(e-l*o-h*a)/c;return y.isBounded(m)?[l,h,m]:[-1,-1,-1]}}static bisectToSegment(e,t){let o=[-1,-1,-1],a=o,c=0,s=0,i=!1,l=!0;for(let h=0;h<12;h++){const m=y.nthVertex(e,h);if(m[0]<0)continue;const f=y.hueOf(m);i?(l||y.areInCyclicOrder(c,f,s))&&(l=!1,y.areInCyclicOrder(c,t,f)?(a=m,s=f):(o=m,c=f)):(o=m,a=m,c=f,s=f,i=!0)}return[o,a]}static midpoint(e,t){return[(e[0]+t[0])/2,(e[1]+t[1])/2,(e[2]+t[2])/2]}static criticalPlaneBelow(e){return Math.floor(e-.5)}static criticalPlaneAbove(e){return Math.ceil(e-.5)}static bisectToLimit(e,t){const o=y.bisectToSegment(e,t);let a=o[0],c=y.hueOf(a),s=o[1];for(let i=0;i<3;i++)if(a[i]!==s[i]){let l=-1,h=255;a[i]<s[i]?(l=y.criticalPlaneBelow(y.trueDelinearized(a[i])),h=y.criticalPlaneAbove(y.trueDelinearized(s[i]))):(l=y.criticalPlaneAbove(y.trueDelinearized(a[i])),h=y.criticalPlaneBelow(y.trueDelinearized(s[i])));for(let m=0;m<8&&!(Math.abs(h-l)<=1);m++){const f=Math.floor((l+h)/2),g=y.CRITICAL_PLANES[f],C=y.setCoordinate(a,g,s,i),p=y.hueOf(C);y.areInCyclicOrder(c,t,p)?(s=C,h=f):(a=C,c=p,l=f)}}return y.midpoint(a,s)}static inverseChromaticAdaptation(e){const t=Math.abs(e),o=Math.max(0,27.13*t/(400-t));return H(e)*Math.pow(o,1/.42)}static findResultByJ(e,t,o){let a=11*Math.sqrt(o);const c=U.DEFAULT,s=1/Math.pow(1.64-Math.pow(.29,c.n),.73),i=.25*(Math.cos(e+2)+3.8)*(5e4/13)*c.nc*c.ncb,l=Math.sin(e),h=Math.cos(e);for(let m=0;m<5;m++){const f=a/100,g=t===0||a===0?0:t/Math.sqrt(f),C=Math.pow(g*s,1/.9),p=c.aw*Math.pow(f,1/c.c/c.z)/c.nbb,v=23*(p+.305)*C/(23*i+11*C*h+108*C*l),w=v*h,D=v*l,k=(460*p+451*w+288*D)/1403,O=(460*p-891*w-261*D)/1403,x=(460*p-220*w-6300*D)/1403,b=hr([y.inverseChromaticAdaptation(k),y.inverseChromaticAdaptation(O),y.inverseChromaticAdaptation(x)],y.LINRGB_FROM_SCALED_DISCOUNT);if(b[0]<0||b[1]<0||b[2]<0)return 0;const I=y.Y_FROM_LINRGB[0],P=y.Y_FROM_LINRGB[1],T=y.Y_FROM_LINRGB[2],S=I*b[0]+P*b[1]+T*b[2];if(S<=0)return 0;if(m===4||Math.abs(S-o)<.002)return b[0]>100.01||b[1]>100.01||b[2]>100.01?0:kr(b);a-=(S-o)*a/(2*S)}return 0}static solveToInt(e,t,o){if(t<1e-4||o<1e-4||o>99.9999)return function(i){const l=J(G(i));return yr(l,l,l)}(o);const a=(e=lr(e))/180*Math.PI,c=G(o),s=y.findResultByJ(a,t,c);return s!==0?s:kr(y.bisectToLimit(c,a))}static solveToCam(e,t,o){return B.fromInt(y.solveToInt(e,t,o))}}y.SCALED_DISCOUNT_FROM_LINRGB=[[.001200833568784504,.002389694492170889,.0002795742885861124],[.0005891086651375999,.0029785502573438758,.0003270666104008398],[.00010146692491640572,.0005364214359186694,.0032979401770712076]],y.LINRGB_FROM_SCALED_DISCOUNT=[[1373.2198709594231,-1100.4251190754821,-7.278681089101213],[-271.815969077903,559.6580465940733,-32.46047482791194],[1.9622899599665666,-57.173814538844006,308.7233197812385]],y.Y_FROM_LINRGB=[.2126,.7152,.0722],y.CRITICAL_PLANES=[.015176349177441876,.045529047532325624,.07588174588720938,.10623444424209313,.13658714259697685,.16693984095186062,.19729253930674434,.2276452376616281,.2579979360165119,.28835063437139563,.3188300904430532,.350925934958123,.3848314933096426,.42057480301049466,.458183274052838,.4976837250274023,.5391024159806381,.5824650784040898,.6277969426914107,.6751227633498623,.7244668422128921,.775853049866786,.829304845476233,.8848452951698498,.942497089126609,1.0022825574869039,1.0642236851973577,1.1283421258858297,1.1946592148522128,1.2631959812511864,1.3339731595349034,1.407011200216447,1.4823302800086415,1.5599503113873272,1.6398909516233677,1.7221716113234105,1.8068114625156377,1.8938294463134073,1.9832442801866852,2.075074464868551,2.1693382909216234,2.2660538449872063,2.36523901573795,2.4669114995532007,2.5710888059345764,2.6777882626779785,2.7870270208169257,2.898822059350997,3.0131901897720907,3.1301480604002863,3.2497121605402226,3.3718988244681087,3.4967242352587946,3.624204428461639,3.754355295633311,3.887192587735158,4.022731918402185,4.160988767090289,4.301978482107941,4.445716283538092,4.592217266055746,4.741496401646282,4.893568542229298,5.048448422192488,5.20615066083972,5.3666897647573375,5.5300801301023865,5.696336044816294,5.865471690767354,6.037501145825082,6.212438385869475,6.390297286737924,6.571091626112461,6.7548350853498045,6.941541251256611,7.131223617812143,7.323895587840543,7.5195704746346665,7.7182615035334345,7.919981813454504,8.124744458384042,8.332562408825165,8.543448553206703,8.757415699253682,8.974476575321063,9.194643831691977,9.417930041841839,9.644347703669503,9.873909240696694,10.106627003236781,10.342513269534024,10.58158024687427,10.8238400726681,11.069304815507364,11.317986476196008,11.569896988756009,11.825048221409341,12.083451977536606,12.345119996613247,12.610063955123938,12.878295467455942,13.149826086772048,13.42466730586372,13.702830557985108,13.984327217668513,14.269168601521828,14.55736596900856,14.848930523210871,15.143873411576273,15.44220572664832,15.743938506781891,16.04908273684337,16.35764934889634,16.66964922287304,16.985093187232053,17.30399201960269,17.62635644741625,17.95219714852476,18.281524751807332,18.614349837764564,18.95068293910138,19.290534541298456,19.633915083172692,19.98083495742689,20.331304511189067,20.685334046541502,21.042933821039977,21.404114048223256,21.76888489811322,22.137256497705877,22.50923893145328,22.884842241736916,23.264076429332462,23.6469514538663,24.033477234264016,24.42366364919083,24.817520537484558,25.21505769858089,25.61628489293138,26.021211842414342,26.429848230738664,26.842203703840827,27.258287870275353,27.678110301598522,28.10168053274597,28.529008062403893,28.96010235337422,29.39497283293396,29.83362889318845,30.276079891419332,30.722335150426627,31.172403958865512,31.62629557157785,32.08401920991837,32.54558406207592,33.010999283389665,33.4802739966603,33.953417292456834,34.430438229418264,34.911345834551085,35.39614910352207,35.88485700094671,36.37747846067349,36.87402238606382,37.37449765026789,37.87891309649659,38.38727753828926,38.89959975977785,39.41588851594697,39.93615253289054,40.460400508064545,40.98864111053629,41.520882981230194,42.05713473317016,42.597404951718396,43.141702194811224,43.6900349931913,44.24241185063697,44.798841244188324,45.35933162437017,45.92389141541209,46.49252901546552,47.065252796817916,47.64207110610409,48.22299226451468,48.808024568002054,49.3971762874833,49.9904556690408,50.587870934119984,51.189430279724725,51.79514187861014,52.40501387947288,53.0190544071392,53.637271562750364,54.259673423945976,54.88626804504493,55.517063457223934,56.15206766869424,56.79128866487574,57.43473440856916,58.08241284012621,58.734331877617365,59.39049941699807,60.05092333227251,60.715611475655585,61.38457167773311,62.057811747619894,62.7353394731159,63.417162620860914,64.10328893648692,64.79372614476921,65.48848194977529,66.18756403501224,66.89098006357258,67.59873767827808,68.31084450182222,69.02730813691093,69.74813616640164,70.47333615344107,71.20291564160104,71.93688215501312,72.67524319850172,73.41800625771542,74.16517879925733,74.9167682708136,75.67278210128072,76.43322770089146,77.1981124613393,77.96744375590167,78.74122893956174,79.51947534912904,80.30219030335869,81.08938110306934,81.88105503125999,82.67721935322541,83.4778813166706,84.28304815182372,85.09272707154808,85.90692527145302,86.72564993000343,87.54890820862819,88.3767072518277,89.2090541872801,90.04595612594655,90.88742016217518,91.73345337380438,92.58406282226491,93.43925555268066,94.29903859396902,95.16341895893969,96.03240364439274,96.9059996312159,97.78421388448044,98.6670533535366,99.55452497210776];class L{static from(e,t,o){return new L(y.solveToInt(e,t,o))}static fromInt(e){return new L(e)}toInt(){return this.argb}get hue(){return this.internalHue}set hue(e){this.setInternalState(y.solveToInt(e,this.internalChroma,this.internalTone))}get chroma(){return this.internalChroma}set chroma(e){this.setInternalState(y.solveToInt(this.internalHue,e,this.internalTone))}get tone(){return this.internalTone}set tone(e){this.setInternalState(y.solveToInt(this.internalHue,this.internalChroma,e))}constructor(e){this.argb=e;const t=B.fromInt(e);this.internalHue=t.hue,this.internalChroma=t.chroma,this.internalTone=ur(e),this.argb=e}setInternalState(e){const t=B.fromInt(e);this.internalHue=t.hue,this.internalChroma=t.chroma,this.internalTone=ur(e),this.argb=e}inViewingConditions(e){const t=B.fromInt(this.toInt()).xyzInViewingConditions(e),o=B.fromXyzInViewingConditions(t[0],t[1],t[2],U.make());return L.from(o.hue,o.chroma,mr(t[1]))}}class dr{static harmonize(e,t){const o=L.fromInt(e),a=L.fromInt(t),c=(s=o.hue,i=a.hue,180-Math.abs(Math.abs(s-i)-180));var s,i;const l=Math.min(.5*c,15),h=lr(o.hue+l*(m=o.hue,lr(a.hue-m)<=180?1:-1));var m;return L.from(h,o.chroma,o.tone).toInt()}static hctHue(e,t,o){const a=dr.cam16Ucs(e,t,o),c=B.fromInt(a),s=B.fromInt(e);return L.from(c.hue,s.chroma,ur(e)).toInt()}static cam16Ucs(e,t,o){const a=B.fromInt(e),c=B.fromInt(t),s=a.jstar,i=a.astar,l=a.bstar,h=s+(c.jstar-s)*o,m=i+(c.astar-i)*o,f=l+(c.bstar-l)*o;return B.fromUcs(h,m,f).toInt()}}class F{static ratioOfTones(e,t){return e=sr(0,100,e),t=sr(0,100,t),F.ratioOfYs(G(e),G(t))}static ratioOfYs(e,t){const o=e>t?e:t;return(o+5)/((o===t?e:t)+5)}static lighter(e,t){if(e<0||e>100)return-1;const o=G(e),a=t*(o+5)-5,c=F.ratioOfYs(a,o),s=Math.abs(c-t);if(c<t&&s>.04)return-1;const i=mr(a)+.4;return i<0||i>100?-1:i}static darker(e,t){if(e<0||e>100)return-1;const o=G(e),a=(o+5)/t-5,c=F.ratioOfYs(o,a),s=Math.abs(c-t);if(c<t&&s>.04)return-1;const i=mr(a)-.4;return i<0||i>100?-1:i}static lighterUnsafe(e,t){const o=F.lighter(e,t);return o<0?100:o}static darkerUnsafe(e,t){const o=F.darker(e,t);return o<0?0:o}}class pr{static isDisliked(e){const t=Math.round(e.hue)>=90&&Math.round(e.hue)<=111,o=Math.round(e.chroma)>16,a=Math.round(e.tone)<65;return t&&o&&a}static fixIfDisliked(e){return pr.isDisliked(e)?L.from(e.hue,e.chroma,70):e}}class u{static fromPalette(e){return new u(e.name??"",e.palette,e.tone,e.isBackground??!1,e.background,e.secondBackground,e.contrastCurve,e.toneDeltaPair)}constructor(e,t,o,a,c,s,i,l){if(this.name=e,this.palette=t,this.tone=o,this.isBackground=a,this.background=c,this.secondBackground=s,this.contrastCurve=i,this.toneDeltaPair=l,this.hctCache=new Map,!c&&s)throw new Error(`Color ${e} has secondBackgrounddefined, but background is not defined.`);if(!c&&i)throw new Error(`Color ${e} has contrastCurvedefined, but background is not defined.`);if(c&&!i)throw new Error(`Color ${e} has backgrounddefined, but contrastCurve is not defined.`)}getArgb(e){return this.getHct(e).toInt()}getHct(e){const t=this.hctCache.get(e);if(t!=null)return t;const o=this.getTone(e),a=this.palette(e).getHct(o);return this.hctCache.size>4&&this.hctCache.clear(),this.hctCache.set(e,a),a}getTone(e){const t=e.contrastLevel<0;if(this.toneDeltaPair){const o=this.toneDeltaPair(e),a=o.roleA,c=o.roleB,s=o.delta,i=o.polarity,l=o.stayTogether,h=this.background(e).getTone(e),m=i==="nearer"||i==="lighter"&&!e.isDark||i==="darker"&&e.isDark,f=m?a:c,g=m?c:a,C=this.name===f.name,p=e.isDark?1:-1,v=f.contrastCurve.get(e.contrastLevel),w=g.contrastCurve.get(e.contrastLevel),D=f.tone(e);let k=F.ratioOfTones(h,D)>=v?D:u.foregroundTone(h,v);const O=g.tone(e);let x=F.ratioOfTones(h,O)>=w?O:u.foregroundTone(h,w);return t&&(k=u.foregroundTone(h,v),x=u.foregroundTone(h,w)),(x-k)*p>=s||(x=sr(0,100,k+s*p),(x-k)*p>=s||(k=sr(0,100,x-s*p))),50<=k&&k<60?p>0?(k=60,x=Math.max(x,k+s*p)):(k=49,x=Math.min(x,k+s*p)):50<=x&&x<60&&(l?p>0?(k=60,x=Math.max(x,k+s*p)):(k=49,x=Math.min(x,k+s*p)):x=p>0?60:49),C?k:x}{let o=this.tone(e);if(this.background==null)return o;const a=this.background(e).getTone(e),c=this.contrastCurve.get(e.contrastLevel);if(F.ratioOfTones(a,o)>=c||(o=u.foregroundTone(a,c)),t&&(o=u.foregroundTone(a,c)),this.isBackground&&50<=o&&o<60&&(o=F.ratioOfTones(49,a)>=c?49:60),this.secondBackground){const[s,i]=[this.background,this.secondBackground],[l,h]=[s(e).getTone(e),i(e).getTone(e)],[m,f]=[Math.max(l,h),Math.min(l,h)];if(F.ratioOfTones(m,o)>=c&&F.ratioOfTones(f,o)>=c)return o;const g=F.lighter(m,c),C=F.darker(f,c),p=[];return g!==-1&&p.push(g),C!==-1&&p.push(C),u.tonePrefersLightForeground(l)||u.tonePrefersLightForeground(h)?g<0?100:g:p.length===1?p[0]:C<0?0:C}return o}}static foregroundTone(e,t){const o=F.lighterUnsafe(e,t),a=F.darkerUnsafe(e,t),c=F.ratioOfTones(o,e),s=F.ratioOfTones(a,e);if(u.tonePrefersLightForeground(e)){const i=Math.abs(c-s)<.1&&c<t&&s<t;return c>=t||c>=s||i?o:a}return s>=t||s>=c?a:o}static tonePrefersLightForeground(e){return Math.round(e)<60}static toneAllowsLightForeground(e){return Math.round(e)<=49}static enableLightForeground(e){return u.tonePrefersLightForeground(e)&&!u.toneAllowsLightForeground(e)?49:e}}class V{static fromInt(e){const t=L.fromInt(e);return V.fromHct(t)}static fromHct(e){return new V(e.hue,e.chroma,e)}static fromHueAndChroma(e,t){const o=new Lr(e,t).create();return new V(e,t,o)}constructor(e,t,o){this.hue=e,this.chroma=t,this.keyColor=o,this.cache=new Map}tone(e){let t=this.cache.get(e);return t===void 0&&(t=L.from(this.hue,this.chroma,e).toInt(),this.cache.set(e,t)),t}getHct(e){return L.fromInt(this.tone(e))}}class Lr{constructor(e,t){this.hue=e,this.requestedChroma=t,this.chromaCache=new Map,this.maxChromaValue=200}create(){let e=0,t=100;for(;e<t;){const o=Math.floor((e+t)/2),a=this.maxChroma(o)<this.maxChroma(o+1);if(this.maxChroma(o)>=this.requestedChroma-.01)if(Math.abs(e-50)<Math.abs(t-50))t=o;else{if(e===o)return L.from(this.hue,this.requestedChroma,e);e=o}else a?e=o+1:t=o}return L.from(this.hue,this.requestedChroma,e)}maxChroma(e){if(this.chromaCache.has(e))return this.chromaCache.get(e);const t=L.from(this.hue,this.maxChromaValue,e).chroma;return this.chromaCache.set(e,t),t}}class d{constructor(e,t,o,a){this.low=e,this.normal=t,this.medium=o,this.high=a}get(e){return e<=-1?this.low:e<0?rr(this.low,this.normal,(e- -1)/1):e<.5?rr(this.normal,this.medium,(e-0)/.5):e<1?rr(this.medium,this.high,(e-.5)/.5):this.high}}class A{constructor(e,t,o,a,c){this.roleA=e,this.roleB=t,this.delta=o,this.polarity=a,this.stayTogether=c}}var er;function $(r){return r.variant===er.FIDELITY||r.variant===er.CONTENT}function M(r){return r.variant===er.MONOCHROME}(function(r){r[r.MONOCHROME=0]="MONOCHROME",r[r.NEUTRAL=1]="NEUTRAL",r[r.TONAL_SPOT=2]="TONAL_SPOT",r[r.VIBRANT=3]="VIBRANT",r[r.EXPRESSIVE=4]="EXPRESSIVE",r[r.FIDELITY=5]="FIDELITY",r[r.CONTENT=6]="CONTENT",r[r.RAINBOW=7]="RAINBOW",r[r.FRUIT_SALAD=8]="FRUIT_SALAD"})(er||(er={}));class n{static highestSurface(e){return e.isDark?n.surfaceBright:n.surfaceDim}}n.contentAccentToneDelta=15,n.primaryPaletteKeyColor=u.fromPalette({name:"primary_palette_key_color",palette:r=>r.primaryPalette,tone:r=>r.primaryPalette.keyColor.tone}),n.secondaryPaletteKeyColor=u.fromPalette({name:"secondary_palette_key_color",palette:r=>r.secondaryPalette,tone:r=>r.secondaryPalette.keyColor.tone}),n.tertiaryPaletteKeyColor=u.fromPalette({name:"tertiary_palette_key_color",palette:r=>r.tertiaryPalette,tone:r=>r.tertiaryPalette.keyColor.tone}),n.neutralPaletteKeyColor=u.fromPalette({name:"neutral_palette_key_color",palette:r=>r.neutralPalette,tone:r=>r.neutralPalette.keyColor.tone}),n.neutralVariantPaletteKeyColor=u.fromPalette({name:"neutral_variant_palette_key_color",palette:r=>r.neutralVariantPalette,tone:r=>r.neutralVariantPalette.keyColor.tone}),n.background=u.fromPalette({name:"background",palette:r=>r.neutralPalette,tone:r=>r.isDark?6:98,isBackground:!0}),n.onBackground=u.fromPalette({name:"on_background",palette:r=>r.neutralPalette,tone:r=>r.isDark?90:10,background:r=>n.background,contrastCurve:new d(3,3,4.5,7)}),n.surface=u.fromPalette({name:"surface",palette:r=>r.neutralPalette,tone:r=>r.isDark?6:98,isBackground:!0}),n.surfaceDim=u.fromPalette({name:"surface_dim",palette:r=>r.neutralPalette,tone:r=>r.isDark?6:new d(87,87,80,75).get(r.contrastLevel),isBackground:!0}),n.surfaceBright=u.fromPalette({name:"surface_bright",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(24,24,29,34).get(r.contrastLevel):98,isBackground:!0}),n.surfaceContainerLowest=u.fromPalette({name:"surface_container_lowest",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(4,4,2,0).get(r.contrastLevel):100,isBackground:!0}),n.surfaceContainerLow=u.fromPalette({name:"surface_container_low",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(10,10,11,12).get(r.contrastLevel):new d(96,96,96,95).get(r.contrastLevel),isBackground:!0}),n.surfaceContainer=u.fromPalette({name:"surface_container",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(12,12,16,20).get(r.contrastLevel):new d(94,94,92,90).get(r.contrastLevel),isBackground:!0}),n.surfaceContainerHigh=u.fromPalette({name:"surface_container_high",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(17,17,21,25).get(r.contrastLevel):new d(92,92,88,85).get(r.contrastLevel),isBackground:!0}),n.surfaceContainerHighest=u.fromPalette({name:"surface_container_highest",palette:r=>r.neutralPalette,tone:r=>r.isDark?new d(22,22,26,30).get(r.contrastLevel):new d(90,90,84,80).get(r.contrastLevel),isBackground:!0}),n.onSurface=u.fromPalette({name:"on_surface",palette:r=>r.neutralPalette,tone:r=>r.isDark?90:10,background:r=>n.highestSurface(r),contrastCurve:new d(4.5,7,11,21)}),n.surfaceVariant=u.fromPalette({name:"surface_variant",palette:r=>r.neutralVariantPalette,tone:r=>r.isDark?30:90,isBackground:!0}),n.onSurfaceVariant=u.fromPalette({name:"on_surface_variant",palette:r=>r.neutralVariantPalette,tone:r=>r.isDark?80:30,background:r=>n.highestSurface(r),contrastCurve:new d(3,4.5,7,11)}),n.inverseSurface=u.fromPalette({name:"inverse_surface",palette:r=>r.neutralPalette,tone:r=>r.isDark?90:20}),n.inverseOnSurface=u.fromPalette({name:"inverse_on_surface",palette:r=>r.neutralPalette,tone:r=>r.isDark?20:95,background:r=>n.inverseSurface,contrastCurve:new d(4.5,7,11,21)}),n.outline=u.fromPalette({name:"outline",palette:r=>r.neutralVariantPalette,tone:r=>r.isDark?60:50,background:r=>n.highestSurface(r),contrastCurve:new d(1.5,3,4.5,7)}),n.outlineVariant=u.fromPalette({name:"outline_variant",palette:r=>r.neutralVariantPalette,tone:r=>r.isDark?30:80,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5)}),n.shadow=u.fromPalette({name:"shadow",palette:r=>r.neutralPalette,tone:r=>0}),n.scrim=u.fromPalette({name:"scrim",palette:r=>r.neutralPalette,tone:r=>0}),n.surfaceTint=u.fromPalette({name:"surface_tint",palette:r=>r.primaryPalette,tone:r=>r.isDark?80:40,isBackground:!0}),n.primary=u.fromPalette({name:"primary",palette:r=>r.primaryPalette,tone:r=>M(r)?r.isDark?100:0:r.isDark?80:40,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(3,4.5,7,7),toneDeltaPair:r=>new A(n.primaryContainer,n.primary,10,"nearer",!1)}),n.onPrimary=u.fromPalette({name:"on_primary",palette:r=>r.primaryPalette,tone:r=>M(r)?r.isDark?10:90:r.isDark?20:100,background:r=>n.primary,contrastCurve:new d(4.5,7,11,21)}),n.primaryContainer=u.fromPalette({name:"primary_container",palette:r=>r.primaryPalette,tone:r=>$(r)?r.sourceColorHct.tone:M(r)?r.isDark?85:25:r.isDark?30:90,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.primaryContainer,n.primary,10,"nearer",!1)}),n.onPrimaryContainer=u.fromPalette({name:"on_primary_container",palette:r=>r.primaryPalette,tone:r=>$(r)?u.foregroundTone(n.primaryContainer.tone(r),4.5):M(r)?r.isDark?0:100:r.isDark?90:30,background:r=>n.primaryContainer,contrastCurve:new d(3,4.5,7,11)}),n.inversePrimary=u.fromPalette({name:"inverse_primary",palette:r=>r.primaryPalette,tone:r=>r.isDark?40:80,background:r=>n.inverseSurface,contrastCurve:new d(3,4.5,7,7)}),n.secondary=u.fromPalette({name:"secondary",palette:r=>r.secondaryPalette,tone:r=>r.isDark?80:40,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(3,4.5,7,7),toneDeltaPair:r=>new A(n.secondaryContainer,n.secondary,10,"nearer",!1)}),n.onSecondary=u.fromPalette({name:"on_secondary",palette:r=>r.secondaryPalette,tone:r=>M(r)?r.isDark?10:100:r.isDark?20:100,background:r=>n.secondary,contrastCurve:new d(4.5,7,11,21)}),n.secondaryContainer=u.fromPalette({name:"secondary_container",palette:r=>r.secondaryPalette,tone:r=>{const e=r.isDark?30:90;return M(r)?r.isDark?30:85:$(r)?function(t,o,a,c){let s=a,i=L.from(t,o,a);if(i.chroma<o){let l=i.chroma;for(;i.chroma<o;){s+=c?-1:1;const h=L.from(t,o,s);if(l>h.chroma||Math.abs(h.chroma-o)<.4)break;Math.abs(h.chroma-o)<Math.abs(i.chroma-o)&&(i=h),l=Math.max(l,h.chroma)}}return s}(r.secondaryPalette.hue,r.secondaryPalette.chroma,e,!r.isDark):e},isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.secondaryContainer,n.secondary,10,"nearer",!1)}),n.onSecondaryContainer=u.fromPalette({name:"on_secondary_container",palette:r=>r.secondaryPalette,tone:r=>M(r)?r.isDark?90:10:$(r)?u.foregroundTone(n.secondaryContainer.tone(r),4.5):r.isDark?90:30,background:r=>n.secondaryContainer,contrastCurve:new d(3,4.5,7,11)}),n.tertiary=u.fromPalette({name:"tertiary",palette:r=>r.tertiaryPalette,tone:r=>M(r)?r.isDark?90:25:r.isDark?80:40,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(3,4.5,7,7),toneDeltaPair:r=>new A(n.tertiaryContainer,n.tertiary,10,"nearer",!1)}),n.onTertiary=u.fromPalette({name:"on_tertiary",palette:r=>r.tertiaryPalette,tone:r=>M(r)?r.isDark?10:90:r.isDark?20:100,background:r=>n.tertiary,contrastCurve:new d(4.5,7,11,21)}),n.tertiaryContainer=u.fromPalette({name:"tertiary_container",palette:r=>r.tertiaryPalette,tone:r=>{if(M(r))return r.isDark?60:49;if(!$(r))return r.isDark?30:90;const e=r.tertiaryPalette.getHct(r.sourceColorHct.tone);return pr.fixIfDisliked(e).tone},isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.tertiaryContainer,n.tertiary,10,"nearer",!1)}),n.onTertiaryContainer=u.fromPalette({name:"on_tertiary_container",palette:r=>r.tertiaryPalette,tone:r=>M(r)?r.isDark?0:100:$(r)?u.foregroundTone(n.tertiaryContainer.tone(r),4.5):r.isDark?90:30,background:r=>n.tertiaryContainer,contrastCurve:new d(3,4.5,7,11)}),n.error=u.fromPalette({name:"error",palette:r=>r.errorPalette,tone:r=>r.isDark?80:40,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(3,4.5,7,7),toneDeltaPair:r=>new A(n.errorContainer,n.error,10,"nearer",!1)}),n.onError=u.fromPalette({name:"on_error",palette:r=>r.errorPalette,tone:r=>r.isDark?20:100,background:r=>n.error,contrastCurve:new d(4.5,7,11,21)}),n.errorContainer=u.fromPalette({name:"error_container",palette:r=>r.errorPalette,tone:r=>r.isDark?30:90,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.errorContainer,n.error,10,"nearer",!1)}),n.onErrorContainer=u.fromPalette({name:"on_error_container",palette:r=>r.errorPalette,tone:r=>M(r)?r.isDark?90:10:r.isDark?90:30,background:r=>n.errorContainer,contrastCurve:new d(3,4.5,7,11)}),n.primaryFixed=u.fromPalette({name:"primary_fixed",palette:r=>r.primaryPalette,tone:r=>M(r)?40:90,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.primaryFixed,n.primaryFixedDim,10,"lighter",!0)}),n.primaryFixedDim=u.fromPalette({name:"primary_fixed_dim",palette:r=>r.primaryPalette,tone:r=>M(r)?30:80,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.primaryFixed,n.primaryFixedDim,10,"lighter",!0)}),n.onPrimaryFixed=u.fromPalette({name:"on_primary_fixed",palette:r=>r.primaryPalette,tone:r=>M(r)?100:10,background:r=>n.primaryFixedDim,secondBackground:r=>n.primaryFixed,contrastCurve:new d(4.5,7,11,21)}),n.onPrimaryFixedVariant=u.fromPalette({name:"on_primary_fixed_variant",palette:r=>r.primaryPalette,tone:r=>M(r)?90:30,background:r=>n.primaryFixedDim,secondBackground:r=>n.primaryFixed,contrastCurve:new d(3,4.5,7,11)}),n.secondaryFixed=u.fromPalette({name:"secondary_fixed",palette:r=>r.secondaryPalette,tone:r=>M(r)?80:90,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.secondaryFixed,n.secondaryFixedDim,10,"lighter",!0)}),n.secondaryFixedDim=u.fromPalette({name:"secondary_fixed_dim",palette:r=>r.secondaryPalette,tone:r=>M(r)?70:80,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.secondaryFixed,n.secondaryFixedDim,10,"lighter",!0)}),n.onSecondaryFixed=u.fromPalette({name:"on_secondary_fixed",palette:r=>r.secondaryPalette,tone:r=>10,background:r=>n.secondaryFixedDim,secondBackground:r=>n.secondaryFixed,contrastCurve:new d(4.5,7,11,21)}),n.onSecondaryFixedVariant=u.fromPalette({name:"on_secondary_fixed_variant",palette:r=>r.secondaryPalette,tone:r=>M(r)?25:30,background:r=>n.secondaryFixedDim,secondBackground:r=>n.secondaryFixed,contrastCurve:new d(3,4.5,7,11)}),n.tertiaryFixed=u.fromPalette({name:"tertiary_fixed",palette:r=>r.tertiaryPalette,tone:r=>M(r)?40:90,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.tertiaryFixed,n.tertiaryFixedDim,10,"lighter",!0)}),n.tertiaryFixedDim=u.fromPalette({name:"tertiary_fixed_dim",palette:r=>r.tertiaryPalette,tone:r=>M(r)?30:80,isBackground:!0,background:r=>n.highestSurface(r),contrastCurve:new d(1,1,3,4.5),toneDeltaPair:r=>new A(n.tertiaryFixed,n.tertiaryFixedDim,10,"lighter",!0)}),n.onTertiaryFixed=u.fromPalette({name:"on_tertiary_fixed",palette:r=>r.tertiaryPalette,tone:r=>M(r)?100:10,background:r=>n.tertiaryFixedDim,secondBackground:r=>n.tertiaryFixed,contrastCurve:new d(4.5,7,11,21)}),n.onTertiaryFixedVariant=u.fromPalette({name:"on_tertiary_fixed_variant",palette:r=>r.tertiaryPalette,tone:r=>M(r)?90:30,background:r=>n.tertiaryFixedDim,secondBackground:r=>n.tertiaryFixed,contrastCurve:new d(3,4.5,7,11)});class E{static of(e){return new E(e,!1)}static contentOf(e){return new E(e,!0)}static fromColors(e){return E.createPaletteFromColors(!1,e)}static contentFromColors(e){return E.createPaletteFromColors(!0,e)}static createPaletteFromColors(e,t){const o=new E(t.primary,e);if(t.secondary){const a=new E(t.secondary,e);o.a2=a.a1}if(t.tertiary){const a=new E(t.tertiary,e);o.a3=a.a1}if(t.error){const a=new E(t.error,e);o.error=a.a1}if(t.neutral){const a=new E(t.neutral,e);o.n1=a.n1}if(t.neutralVariant){const a=new E(t.neutralVariant,e);o.n2=a.n2}return o}constructor(e,t){const o=L.fromInt(e),a=o.hue,c=o.chroma;t?(this.a1=V.fromHueAndChroma(a,c),this.a2=V.fromHueAndChroma(a,c/3),this.a3=V.fromHueAndChroma(a+60,c/2),this.n1=V.fromHueAndChroma(a,Math.min(c/12,4)),this.n2=V.fromHueAndChroma(a,Math.min(c/6,8))):(this.a1=V.fromHueAndChroma(a,Math.max(48,c)),this.a2=V.fromHueAndChroma(a,16),this.a3=V.fromHueAndChroma(a+60,24),this.n1=V.fromHueAndChroma(a,4),this.n2=V.fromHueAndChroma(a,8)),this.error=V.fromHueAndChroma(25,84)}}class Y{get primary(){return this.props.primary}get onPrimary(){return this.props.onPrimary}get primaryContainer(){return this.props.primaryContainer}get onPrimaryContainer(){return this.props.onPrimaryContainer}get secondary(){return this.props.secondary}get onSecondary(){return this.props.onSecondary}get secondaryContainer(){return this.props.secondaryContainer}get onSecondaryContainer(){return this.props.onSecondaryContainer}get tertiary(){return this.props.tertiary}get onTertiary(){return this.props.onTertiary}get tertiaryContainer(){return this.props.tertiaryContainer}get onTertiaryContainer(){return this.props.onTertiaryContainer}get error(){return this.props.error}get onError(){return this.props.onError}get errorContainer(){return this.props.errorContainer}get onErrorContainer(){return this.props.onErrorContainer}get background(){return this.props.background}get onBackground(){return this.props.onBackground}get surface(){return this.props.surface}get onSurface(){return this.props.onSurface}get surfaceVariant(){return this.props.surfaceVariant}get onSurfaceVariant(){return this.props.onSurfaceVariant}get outline(){return this.props.outline}get outlineVariant(){return this.props.outlineVariant}get shadow(){return this.props.shadow}get scrim(){return this.props.scrim}get inverseSurface(){return this.props.inverseSurface}get inverseOnSurface(){return this.props.inverseOnSurface}get inversePrimary(){return this.props.inversePrimary}static light(e){return Y.lightFromCorePalette(E.of(e))}static dark(e){return Y.darkFromCorePalette(E.of(e))}static lightContent(e){return Y.lightFromCorePalette(E.contentOf(e))}static darkContent(e){return Y.darkFromCorePalette(E.contentOf(e))}static lightFromCorePalette(e){return new Y({primary:e.a1.tone(40),onPrimary:e.a1.tone(100),primaryContainer:e.a1.tone(90),onPrimaryContainer:e.a1.tone(10),secondary:e.a2.tone(40),onSecondary:e.a2.tone(100),secondaryContainer:e.a2.tone(90),onSecondaryContainer:e.a2.tone(10),tertiary:e.a3.tone(40),onTertiary:e.a3.tone(100),tertiaryContainer:e.a3.tone(90),onTertiaryContainer:e.a3.tone(10),error:e.error.tone(40),onError:e.error.tone(100),errorContainer:e.error.tone(90),onErrorContainer:e.error.tone(10),background:e.n1.tone(99),onBackground:e.n1.tone(10),surface:e.n1.tone(99),onSurface:e.n1.tone(10),surfaceVariant:e.n2.tone(90),onSurfaceVariant:e.n2.tone(30),outline:e.n2.tone(50),outlineVariant:e.n2.tone(80),shadow:e.n1.tone(0),scrim:e.n1.tone(0),inverseSurface:e.n1.tone(20),inverseOnSurface:e.n1.tone(95),inversePrimary:e.a1.tone(80)})}static darkFromCorePalette(e){return new Y({primary:e.a1.tone(80),onPrimary:e.a1.tone(20),primaryContainer:e.a1.tone(30),onPrimaryContainer:e.a1.tone(90),secondary:e.a2.tone(80),onSecondary:e.a2.tone(20),secondaryContainer:e.a2.tone(30),onSecondaryContainer:e.a2.tone(90),tertiary:e.a3.tone(80),onTertiary:e.a3.tone(20),tertiaryContainer:e.a3.tone(30),onTertiaryContainer:e.a3.tone(90),error:e.error.tone(80),onError:e.error.tone(20),errorContainer:e.error.tone(30),onErrorContainer:e.error.tone(80),background:e.n1.tone(10),onBackground:e.n1.tone(90),surface:e.n1.tone(10),onSurface:e.n1.tone(90),surfaceVariant:e.n2.tone(30),onSurfaceVariant:e.n2.tone(80),outline:e.n2.tone(60),outlineVariant:e.n2.tone(30),shadow:e.n1.tone(0),scrim:e.n1.tone(0),inverseSurface:e.n1.tone(90),inverseOnSurface:e.n1.tone(20),inversePrimary:e.a1.tone(40)})}constructor(e){this.props=e}toJSON(){return{...this.props}}}function _(r){return parseInt(r,16)}function Or(r,e=[]){const t=E.of(r);return{source:r,schemes:{light:Y.light(r),dark:Y.dark(r)},palettes:{primary:t.a1,secondary:t.a2,tertiary:t.a3,neutral:t.n1,neutralVariant:t.n2,error:t.error},customColors:e.map(o=>function(a,c){let s=c.value;const i=s,l=a;c.blend&&(s=dr.harmonize(i,l));const h=E.of(s),m=h.a1;return{color:c,value:s,light:{color:m.tone(40),onColor:m.tone(100),colorContainer:m.tone(90),onColorContainer:m.tone(10)},dark:{color:m.tone(80),onColor:m.tone(20),colorContainer:m.tone(30),onColorContainer:m.tone(90)}}}(r,o))}}const Vr=br.n("theme-context");function xr(r,e=!1){function t(o){return"#"+o.toString(16).padStart(8,"0").slice(2)}if(e){const o=r.schemes.dark,a=function(c,s){const i=V.fromHueAndChroma(c,s);return{cLowest:i.tone(0),cLow:i.tone(10),c:i.tone(12),cHigh:i.tone(17),cHighest:i.tone(22),sDim:i.tone(0),s:i.tone(6),sBright:i.tone(24)}}(r.palettes.neutral.hue,r.palettes.neutral.chroma);return{sys:{color:{scrim:t(o.scrim),outlineVariant:t(o.outlineVariant),outline:t(o.outline),surface:{default:t(o.surface),dim:t(a.sDim),bright:t(a.sBright),on:t(o.onSurface),onVariant:t(o.onSurfaceVariant),highest:t(a.cHighest),high:t(a.cHigh),container:t(a.c),low:t(a.cLow),lowest:t(a.cLowest)},primary:{default:t(o.primary),on:t(o.onPrimary),container:t(o.primaryContainer),onContainer:t(o.onPrimaryContainer)},secondary:{default:t(o.secondary),on:t(o.onSecondary),container:t(o.secondaryContainer),onContainer:t(o.onSecondaryContainer)},tertiary:{default:t(o.tertiary),on:t(o.onTertiary),container:t(o.tertiaryContainer),onContainer:t(o.onTertiaryContainer)},error:{default:t(o.error),on:t(o.onError),container:t(o.errorContainer),onContainer:t(o.onErrorContainer)},success:{default:"#00FF00",on:"#000000",container:"#00FF00",onContainer:"#000000"}},elevation:{0:"0 0 0 0 rgba(0, 0, 0, 0)",1:"rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px",2:"rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px",3:"rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px",4:"rgba(0, 0, 0, 0.2) 0px 5px 5px -3px, rgba(0, 0, 0, 0.14) 0px 8px 10px 1px, rgba(0, 0, 0, 0.12) 0px 3px 14px 2px",5:"rgba(0, 0, 0, 0.2) 0px 7px 8px -4px, rgba(0, 0, 0, 0.14) 0px 12px 17px 2px, rgba(0, 0, 0, 0.12) 0px 5px 22px 4px"},outline:{1:"1px"}}}}{const o=r.schemes.light,a=function(c,s){const i=V.fromHueAndChroma(c,s);return{cLowest:i.tone(100),cLow:i.tone(96),c:i.tone(94),cHigh:i.tone(92),cHighest:i.tone(90),sDim:i.tone(87),s:i.tone(98),sBright:i.tone(100)}}(r.palettes.neutral.hue,r.palettes.neutral.chroma);return{sys:{color:{scrim:t(o.scrim),outlineVariant:t(o.outlineVariant),outline:t(o.outline),surface:{default:t(o.surface),dim:t(a.sDim),bright:t(a.sBright),on:t(o.onSurface),onVariant:t(o.onSurfaceVariant),highest:t(a.cHighest),high:t(a.cHigh),container:t(a.c),low:t(a.cLow),lowest:t(a.cLowest)},primary:{default:t(o.primary),on:t(o.onPrimary),container:t(o.primaryContainer),onContainer:t(o.onPrimaryContainer)},secondary:{default:t(o.secondary),on:t(o.onSecondary),container:t(o.secondaryContainer),onContainer:t(o.onSecondaryContainer)},tertiary:{default:t(o.tertiary),on:t(o.onTertiary),container:t(o.tertiaryContainer),onContainer:t(o.onTertiaryContainer)},error:{default:t(o.error),on:t(o.onError),container:t(o.errorContainer),onContainer:t(o.onErrorContainer)},success:{default:"#00FF00",on:"#000000",container:"#00FF00",onContainer:"#000000"}},elevation:{0:"0 0 0 0 rgba(0, 0, 0, 0)",1:"rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px",2:"rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px",3:"rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px",4:"rgba(0, 0, 0, 0.2) 0px 5px 5px -3px, rgba(0, 0, 0, 0.14) 0px 8px 10px 1px, rgba(0, 0, 0, 0.12) 0px 3px 14px 2px",5:"rgba(0, 0, 0, 0.2) 0px 7px 8px -4px, rgba(0, 0, 0, 0.14) 0px 12px 17px 2px, rgba(0, 0, 0, 0.12) 0px 5px 22px 4px"},outline:{1:"1px"}}}}}var Er=Object.defineProperty,Rr=Object.getOwnPropertyDescriptor,Z=(r,e,t,o)=>{for(var a,c=o>1?void 0:o?Rr(e,t):e,s=r.length-1;s>=0;s--)(a=r[s])&&(c=(o?a(e,t,c):a(c))||c);return o&&c&&Er(e,t,c),c};const Cr=vr.unsafeCSS(':host,:root{--md-ref-typeface-brand: "Josefin Sans", sans-serif;--md-ref-typeface-plain: "Josefin Sans", sans-serif;--md-sys-color-primary: var(--schmancy-sys-color-primary-default);--md-sys-color-secondary: var(--schmancy-sys-color-secondary-default);--default-font-family: var(--schmancy-font-family);--border-style: solid;--spacing: 4px;--color-scrim: var(--schmancy-sys-color-scrim);--color-outline: var(--schmancy-sys-color-outline);--color-outlineVariant: var(--schmancy-sys-color-outlineVariant);--color-surface-default: var(--schmancy-sys-color-surface-default);--color-surface-dim: var(--schmancy-sys-color-surface-dim);--color-surface-bright: var(--schmancy-sys-color-surface-bright);--color-surface-container: var(--schmancy-sys-color-surface-container);--color-surface-low: var(--schmancy-sys-color-surface-low);--color-surface-high: var(--schmancy-sys-color-surface-high);--color-surface-highest: var(--schmancy-sys-color-surface-highest);--color-surface-lowest: var(--schmancy-sys-color-surface-lowest);--color-surface-on: var(--schmancy-sys-color-surface-on);--color-surface-onVariant: var(--schmancy-sys-color-surface-onVariant);--color-primary-default: var(--schmancy-sys-color-primary-default);--color-primary-on: var(--schmancy-sys-color-primary-on);--color-primary-container: var(--schmancy-sys-color-primary-container);--color-primary-onContainer: var(--schmancy-sys-color-primary-onContainer);--color-secondary-default: var(--schmancy-sys-color-secondary-default);--color-secondary-on: var(--schmancy-sys-color-secondary-on);--color-secondary-container: var(--schmancy-sys-color-secondary-container);--color-secondary-onContainer: var(--schmancy-sys-color-secondary-onContainer);--color-tertiary-default: var(--schmancy-sys-color-tertiary-default);--color-tertiary-on: var(--schmancy-sys-color-tertiary-on);--color-tertiary-container: var(--schmancy-sys-color-tertiary-container);--color-tertiary-onContainer: var(--schmancy-sys-color-tertiary-onContainer);--color-error-default: var(--schmancy-sys-color-error-default);--color-error-on: var(--schmancy-sys-color-error-on);--color-error-container: var(--schmancy-sys-color-error-container);--color-error-onContainer: var(--schmancy-sys-color-error-onContainer);--color-success-default: var(--schmancy-sys-color-success-default);--color-success-on: var(--schmancy-sys-color-success-on);--color-success-container: var(--schmancy-sys-color-success-container);--color-success-onContainer: var(--schmancy-sys-color-success-onContainer);--shadow-xs: var(--schmancy-sys-elevation-0);--shadow-sm: var(--schmancy-sys-elevation-1);--shadow-md: var(--schmancy-sys-elevation-2);--shadow-lg: var(--schmancy-sys-elevation-3);--shadow-xl: var(--schmancy-sys-elevation-4);--shadow-2xl: var(--schmancy-sys-elevation-5);--outline-1: var(--schmancy-sys-outline-1);--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50: oklch(.971 .013 17.38);--color-red-100: oklch(.936 .032 17.717);--color-red-200: oklch(.885 .062 18.334);--color-red-300: oklch(.808 .114 19.571);--color-red-400: oklch(.704 .191 22.216);--color-red-500: oklch(.637 .237 25.331);--color-red-600: oklch(.577 .245 27.325);--color-red-700: oklch(.505 .213 27.518);--color-red-800: oklch(.444 .177 26.899);--color-red-900: oklch(.396 .141 25.723);--color-red-950: oklch(.258 .092 26.042);--color-orange-50: oklch(.98 .016 73.684);--color-orange-100: oklch(.954 .038 75.164);--color-orange-200: oklch(.901 .076 70.697);--color-orange-300: oklch(.837 .128 66.29);--color-orange-400: oklch(.75 .183 55.934);--color-orange-500: oklch(.705 .213 47.604);--color-orange-600: oklch(.646 .222 41.116);--color-orange-700: oklch(.553 .195 38.402);--color-orange-800: oklch(.47 .157 37.304);--color-orange-900: oklch(.408 .123 38.172);--color-orange-950: oklch(.266 .079 36.259);--color-amber-50: oklch(.987 .022 95.277);--color-amber-100: oklch(.962 .059 95.617);--color-amber-200: oklch(.924 .12 95.746);--color-amber-300: oklch(.879 .169 91.605);--color-amber-400: oklch(.828 .189 84.429);--color-amber-500: oklch(.769 .188 70.08);--color-amber-600: oklch(.666 .179 58.318);--color-amber-700: oklch(.555 .163 48.998);--color-amber-800: oklch(.473 .137 46.201);--color-amber-900: oklch(.414 .112 45.904);--color-amber-950: oklch(.279 .077 45.635);--color-yellow-50: oklch(.987 .026 102.212);--color-yellow-100: oklch(.973 .071 103.193);--color-yellow-200: oklch(.945 .129 101.54);--color-yellow-300: oklch(.905 .182 98.111);--color-yellow-400: oklch(.852 .199 91.936);--color-yellow-500: oklch(.795 .184 86.047);--color-yellow-600: oklch(.681 .162 75.834);--color-yellow-700: oklch(.554 .135 66.442);--color-yellow-800: oklch(.476 .114 61.907);--color-yellow-900: oklch(.421 .095 57.708);--color-yellow-950: oklch(.286 .066 53.813);--color-lime-50: oklch(.986 .031 120.757);--color-lime-100: oklch(.967 .067 122.328);--color-lime-200: oklch(.938 .127 124.321);--color-lime-300: oklch(.897 .196 126.665);--color-lime-400: oklch(.841 .238 128.85);--color-lime-500: oklch(.768 .233 130.85);--color-lime-600: oklch(.648 .2 131.684);--color-lime-700: oklch(.532 .157 131.589);--color-lime-800: oklch(.453 .124 130.933);--color-lime-900: oklch(.405 .101 131.063);--color-lime-950: oklch(.274 .072 132.109);--color-green-50: oklch(.982 .018 155.826);--color-green-100: oklch(.962 .044 156.743);--color-green-200: oklch(.925 .084 155.995);--color-green-300: oklch(.871 .15 154.449);--color-green-400: oklch(.792 .209 151.711);--color-green-500: oklch(.723 .219 149.579);--color-green-600: oklch(.627 .194 149.214);--color-green-700: oklch(.527 .154 150.069);--color-green-800: oklch(.448 .119 151.328);--color-green-900: oklch(.393 .095 152.535);--color-green-950: oklch(.266 .065 152.934);--color-emerald-50: oklch(.979 .021 166.113);--color-emerald-100: oklch(.95 .052 163.051);--color-emerald-200: oklch(.905 .093 164.15);--color-emerald-300: oklch(.845 .143 164.978);--color-emerald-400: oklch(.765 .177 163.223);--color-emerald-500: oklch(.696 .17 162.48);--color-emerald-600: oklch(.596 .145 163.225);--color-emerald-700: oklch(.508 .118 165.612);--color-emerald-800: oklch(.432 .095 166.913);--color-emerald-900: oklch(.378 .077 168.94);--color-emerald-950: oklch(.262 .051 172.552);--color-teal-50: oklch(.984 .014 180.72);--color-teal-100: oklch(.953 .051 180.801);--color-teal-200: oklch(.91 .096 180.426);--color-teal-300: oklch(.855 .138 181.071);--color-teal-400: oklch(.777 .152 181.912);--color-teal-500: oklch(.704 .14 182.503);--color-teal-600: oklch(.6 .118 184.704);--color-teal-700: oklch(.511 .096 186.391);--color-teal-800: oklch(.437 .078 188.216);--color-teal-900: oklch(.386 .063 188.416);--color-teal-950: oklch(.277 .046 192.524);--color-cyan-50: oklch(.984 .019 200.873);--color-cyan-100: oklch(.956 .045 203.388);--color-cyan-200: oklch(.917 .08 205.041);--color-cyan-300: oklch(.865 .127 207.078);--color-cyan-400: oklch(.789 .154 211.53);--color-cyan-500: oklch(.715 .143 215.221);--color-cyan-600: oklch(.609 .126 221.723);--color-cyan-700: oklch(.52 .105 223.128);--color-cyan-800: oklch(.45 .085 224.283);--color-cyan-900: oklch(.398 .07 227.392);--color-cyan-950: oklch(.302 .056 229.695);--color-sky-50: oklch(.977 .013 236.62);--color-sky-100: oklch(.951 .026 236.824);--color-sky-200: oklch(.901 .058 230.902);--color-sky-300: oklch(.828 .111 230.318);--color-sky-400: oklch(.746 .16 232.661);--color-sky-500: oklch(.685 .169 237.323);--color-sky-600: oklch(.588 .158 241.966);--color-sky-700: oklch(.5 .134 242.749);--color-sky-800: oklch(.443 .11 240.79);--color-sky-900: oklch(.391 .09 240.876);--color-sky-950: oklch(.293 .066 243.157);--color-blue-50: oklch(.97 .014 254.604);--color-blue-100: oklch(.932 .032 255.585);--color-blue-200: oklch(.882 .059 254.128);--color-blue-300: oklch(.809 .105 251.813);--color-blue-400: oklch(.707 .165 254.624);--color-blue-500: oklch(.623 .214 259.815);--color-blue-600: oklch(.546 .245 262.881);--color-blue-700: oklch(.488 .243 264.376);--color-blue-800: oklch(.424 .199 265.638);--color-blue-900: oklch(.379 .146 265.522);--color-blue-950: oklch(.282 .091 267.935);--color-indigo-50: oklch(.962 .018 272.314);--color-indigo-100: oklch(.93 .034 272.788);--color-indigo-200: oklch(.87 .065 274.039);--color-indigo-300: oklch(.785 .115 274.713);--color-indigo-400: oklch(.673 .182 276.935);--color-indigo-500: oklch(.585 .233 277.117);--color-indigo-600: oklch(.511 .262 276.966);--color-indigo-700: oklch(.457 .24 277.023);--color-indigo-800: oklch(.398 .195 277.366);--color-indigo-900: oklch(.359 .144 278.697);--color-indigo-950: oklch(.257 .09 281.288);--color-violet-50: oklch(.969 .016 293.756);--color-violet-100: oklch(.943 .029 294.588);--color-violet-200: oklch(.894 .057 293.283);--color-violet-300: oklch(.811 .111 293.571);--color-violet-400: oklch(.702 .183 293.541);--color-violet-500: oklch(.606 .25 292.717);--color-violet-600: oklch(.541 .281 293.009);--color-violet-700: oklch(.491 .27 292.581);--color-violet-800: oklch(.432 .232 292.759);--color-violet-900: oklch(.38 .189 293.745);--color-violet-950: oklch(.283 .141 291.089);--color-purple-50: oklch(.977 .014 308.299);--color-purple-100: oklch(.946 .033 307.174);--color-purple-200: oklch(.902 .063 306.703);--color-purple-300: oklch(.827 .119 306.383);--color-purple-400: oklch(.714 .203 305.504);--color-purple-500: oklch(.627 .265 303.9);--color-purple-600: oklch(.558 .288 302.321);--color-purple-700: oklch(.496 .265 301.924);--color-purple-800: oklch(.438 .218 303.724);--color-purple-900: oklch(.381 .176 304.987);--color-purple-950: oklch(.291 .149 302.717);--color-fuchsia-50: oklch(.977 .017 320.058);--color-fuchsia-100: oklch(.952 .037 318.852);--color-fuchsia-200: oklch(.903 .076 319.62);--color-fuchsia-300: oklch(.833 .145 321.434);--color-fuchsia-400: oklch(.74 .238 322.16);--color-fuchsia-500: oklch(.667 .295 322.15);--color-fuchsia-600: oklch(.591 .293 322.896);--color-fuchsia-700: oklch(.518 .253 323.949);--color-fuchsia-800: oklch(.452 .211 324.591);--color-fuchsia-900: oklch(.401 .17 325.612);--color-fuchsia-950: oklch(.293 .136 325.661);--color-pink-50: oklch(.971 .014 343.198);--color-pink-100: oklch(.948 .028 342.258);--color-pink-200: oklch(.899 .061 343.231);--color-pink-300: oklch(.823 .12 346.018);--color-pink-400: oklch(.718 .202 349.761);--color-pink-500: oklch(.656 .241 354.308);--color-pink-600: oklch(.592 .249 .584);--color-pink-700: oklch(.525 .223 3.958);--color-pink-800: oklch(.459 .187 3.815);--color-pink-900: oklch(.408 .153 2.432);--color-pink-950: oklch(.284 .109 3.907);--color-rose-50: oklch(.969 .015 12.422);--color-rose-100: oklch(.941 .03 12.58);--color-rose-200: oklch(.892 .058 10.001);--color-rose-300: oklch(.81 .117 11.638);--color-rose-400: oklch(.712 .194 13.428);--color-rose-500: oklch(.645 .246 16.439);--color-rose-600: oklch(.586 .253 17.585);--color-rose-700: oklch(.514 .222 16.935);--color-rose-800: oklch(.455 .188 13.697);--color-rose-900: oklch(.41 .159 10.272);--color-rose-950: oklch(.271 .105 12.094);--color-slate-50: oklch(.984 .003 247.858);--color-slate-100: oklch(.968 .007 247.896);--color-slate-200: oklch(.929 .013 255.508);--color-slate-300: oklch(.869 .022 252.894);--color-slate-400: oklch(.704 .04 256.788);--color-slate-500: oklch(.554 .046 257.417);--color-slate-600: oklch(.446 .043 257.281);--color-slate-700: oklch(.372 .044 257.287);--color-slate-800: oklch(.279 .041 260.031);--color-slate-900: oklch(.208 .042 265.755);--color-slate-950: oklch(.129 .042 264.695);--color-gray-50: oklch(.985 .002 247.839);--color-gray-100: oklch(.967 .003 264.542);--color-gray-200: oklch(.928 .006 264.531);--color-gray-300: oklch(.872 .01 258.338);--color-gray-400: oklch(.707 .022 261.325);--color-gray-500: oklch(.551 .027 264.364);--color-gray-600: oklch(.446 .03 256.802);--color-gray-700: oklch(.373 .034 259.733);--color-gray-800: oklch(.278 .033 256.848);--color-gray-900: oklch(.21 .034 264.665);--color-gray-950: oklch(.13 .028 261.692);--color-zinc-50: oklch(.985 0 0);--color-zinc-100: oklch(.967 .001 286.375);--color-zinc-200: oklch(.92 .004 286.32);--color-zinc-300: oklch(.871 .006 286.286);--color-zinc-400: oklch(.705 .015 286.067);--color-zinc-500: oklch(.552 .016 285.938);--color-zinc-600: oklch(.442 .017 285.786);--color-zinc-700: oklch(.37 .013 285.805);--color-zinc-800: oklch(.274 .006 286.033);--color-zinc-900: oklch(.21 .006 285.885);--color-zinc-950: oklch(.141 .005 285.823);--color-neutral-50: oklch(.985 0 0);--color-neutral-100: oklch(.97 0 0);--color-neutral-200: oklch(.922 0 0);--color-neutral-300: oklch(.87 0 0);--color-neutral-400: oklch(.708 0 0);--color-neutral-500: oklch(.556 0 0);--color-neutral-600: oklch(.439 0 0);--color-neutral-700: oklch(.371 0 0);--color-neutral-800: oklch(.269 0 0);--color-neutral-900: oklch(.205 0 0);--color-neutral-950: oklch(.145 0 0);--color-stone-50: oklch(.985 .001 106.423);--color-stone-100: oklch(.97 .001 106.424);--color-stone-200: oklch(.923 .003 48.717);--color-stone-300: oklch(.869 .005 56.366);--color-stone-400: oklch(.709 .01 56.259);--color-stone-500: oklch(.553 .013 58.071);--color-stone-600: oklch(.444 .011 73.639);--color-stone-700: oklch(.374 .01 67.558);--color-stone-800: oklch(.268 .007 34.298);--color-stone-900: oklch(.216 .006 56.043);--color-stone-950: oklch(.147 .004 49.25);--color-black: #000;--color-white: #fff;--spacing: .25rem;--breakpoint-sm: 40rem;--breakpoint-md: 48rem;--breakpoint-lg: 64rem;--breakpoint-xl: 80rem;--breakpoint-2xl: 96rem;--container-3xs: 16rem;--container-2xs: 18rem;--container-xs: 20rem;--container-sm: 24rem;--container-md: 28rem;--container-lg: 32rem;--container-xl: 36rem;--container-2xl: 42rem;--container-3xl: 48rem;--container-4xl: 56rem;--container-5xl: 64rem;--container-6xl: 72rem;--container-7xl: 80rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-xl: 1.25rem;--text-xl--line-height: calc(1.75 / 1.25);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--text-3xl: 1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl: 2.25rem;--text-4xl--line-height: calc(2.5 / 2.25);--text-5xl: 3rem;--text-5xl--line-height: 1;--text-6xl: 3.75rem;--text-6xl--line-height: 1;--text-7xl: 4.5rem;--text-7xl--line-height: 1;--text-8xl: 6rem;--text-8xl--line-height: 1;--text-9xl: 8rem;--text-9xl--line-height: 1;--font-weight-thin: 100;--font-weight-extralight: 200;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0em;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-4xl: 2rem;--shadow-smxs: 0 1px rgb(0 0 0 / .05);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-smxl: 0 25px 50px -12px rgb(0 0 0 / .25);--inset-shadow-smxs: inset 0 1px rgb(0 0 0 / .05);--inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05);--inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05);--drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05);--drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15);--drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12);--drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15);--drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1);--drop-shadow-smxl: 0 25px 25px rgb(0 0 0 / .15);--blur-xs: 4px;--blur-sm: 8px;--blur-md: 12px;--blur-lg: 16px;--blur-xl: 24px;--blur-2xl: 40px;--blur-3xl: 64px;--perspective-dramatic: 100px;--perspective-near: 300px;--perspective-normal: 500px;--perspective-midrange: 800px;--perspective-distant: 1200px;--aspect-video: 16 / 9;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--animate-spin: spin 1s linear infinite;--animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce: bounce 1s infinite;@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}--md-sys-color-scrim: var(--schmancy-sys-color-scrim);--md-sys-color-outline: var(--schmancy-sys-color-outline);--md-sys-color-outlineVariant: var(--schmancy-sys-color-outlineVariant);--md-sys-color-surface-default: var(--schmancy-sys-color-surface-default);--md-sys-color-surface-dim: var(--schmancy-sys-color-surface-dim);--md-sys-color-surface-bright: var(--schmancy-sys-color-surface-bright);--md-sys-color-surface-container: var(--schmancy-sys-color-surface-container);--md-sys-color-surface-low: var(--schmancy-sys-color-surface-low);--md-sys-color-surface-high: var(--schmancy-sys-color-surface-high);--md-sys-color-surface-highest: var(--schmancy-sys-color-surface-highest);--md-sys-color-surface-lowest: var(--schmancy-sys-color-surface-lowest);--md-sys-color-surface-on: var(--schmancy-sys-color-surface-on);--md-sys-color-on-surface-variant: var(--schmancy-sys-color-surface-onVariant);--md-sys-color-on-secondary-container: var(--schmancy-sys-color-secondary-onContainer);--md-sys-color-primary-default: var(--schmancy-sys-color-primary-default);--md-sys-color-primary-on: var(--schmancy-sys-color-primary-on);--md-sys-color-primary-container: var(--schmancy-sys-color-primary-container);--md-sys-color-primary-onContainer: var(--schmancy-sys-color-primary-onContainer);--md-sys-color-secondary-default: var(--schmancy-sys-color-secondary-default);--md-sys-color-secondary-on: var(--schmancy-sys-color-secondary-on);--md-sys-color-secondary-container: var(--schmancy-sys-color-secondary-container);--md-sys-color-secondary-onContainer: var(--schmancy-sys-color-secondary-onContainer);--md-sys-color-tertiary-default: var(--schmancy-sys-color-tertiary-default);--md-sys-color-tertiary-on: var(--schmancy-sys-color-tertiary-on);--md-sys-color-tertiary-container: var(--schmancy-sys-color-tertiary-container);--md-sys-color-tertiary-onContainer: var(--schmancy-sys-color-tertiary-onContainer);--md-sys-color-error-default: var(--schmancy-sys-color-error-default);--md-sys-color-error-on: var(--schmancy-sys-color-error-on);--md-sys-color-error-container: var(--schmancy-sys-color-error-container);--md-sys-color-error-onContainer: var(--schmancy-sys-color-error-onContainer);--md-sys-color-success-default: var(--schmancy-sys-color-success-default);--md-sys-color-success-on: var(--schmancy-sys-color-success-on);--md-sys-color-success-container: var(--schmancy-sys-color-success-container);--md-sys-color-success-onContainer: var(--schmancy-sys-color-success-onContainer);--md-sys-elevation-0: var(--schmancy-sys-elevation-0);--md-sys-elevation-1: var(--schmancy-sys-elevation-1);--md-sys-elevation-2: var(--schmancy-sys-elevation-2);--md-sys-elevation-3: var(--schmancy-sys-elevation-3);--md-sys-elevation-4: var(--schmancy-sys-elevation-4);--md-sys-elevation-5: var(--schmancy-sys-elevation-5);--md-sys-outline-1: var(--schmancy-sys-outline-1)}'),ir=window.matchMedia("(prefers-color-scheme: dark)"),Ar=new cr.Observable(r=>{const e=o=>{const a=o.matches?"dark":"light";r.next(a)};ir.addEventListener("change",e);const t=ir.matches?"dark":"light";return r.next(t),()=>ir.removeEventListener("change",e)});exports.SchmancyThemeComponent=class extends Tr.TailwindElement(Cr){constructor(){super(...arguments),this.scheme="auto",this.root=!1,this.theme={}}connectedCallback(){super.connectedCallback(),this.color||(this.color=this.generateRandomColor()),cr.of(this.scheme).pipe(cr.switchMap(r=>r==="auto"?Ar:cr.of(r))).subscribe(r=>{this.scheme=r,this.registerTheme()})}registerTheme(){let r=xr(Or(function(e){const t=(e=e.replace("#","")).length===3,o=e.length===6,a=e.length===8;if(!t&&!o&&!a)throw new Error("unexpected hex "+e);let c=0,s=0,i=0;return t?(c=_(e.slice(0,1).repeat(2)),s=_(e.slice(1,2).repeat(2)),i=_(e.slice(2,3).repeat(2))):o?(c=_(e.slice(0,2)),s=_(e.slice(2,4)),i=_(e.slice(4,6))):a&&(c=_(e.slice(2,4)),s=_(e.slice(4,6)),i=_(e.slice(6,8))),(-16777216|(255&c)<<16|(255&s)<<8|255&i)>>>0}(this.color)),this.scheme==="dark");r={...r,...this.theme},this.registerThemeValues("schmancy","",r)}registerThemeValues(r="schmancy",e,t){return typeof t=="object"?Object.keys(t).map(o=>this.registerThemeValues(r,e+(e?"-":"")+o,t[o])).join(`
|
|
2
|
+
`):void(this.root?document.body:this.shadowRoot.host).style.setProperty(`--${r}-${e}`,t)}generateRandomColor(){return"#"+Math.floor(16777215*Math.random()).toString(16).padStart(6,"0")}render(){return vr.html`<slot></slot>`}},Z([Q.property({type:String,reflect:!0})],exports.SchmancyThemeComponent.prototype,"color",2),Z([Q.property({type:String})],exports.SchmancyThemeComponent.prototype,"scheme",2),Z([Q.property({type:Boolean})],exports.SchmancyThemeComponent.prototype,"root",2),Z([br.e({context:Vr}),Q.property({type:Object})],exports.SchmancyThemeComponent.prototype,"theme",2),exports.SchmancyThemeComponent=Z([Q.customElement("schmancy-theme")],exports.SchmancyThemeComponent),exports.formateTheme=xr,exports.tailwindStyles=Cr;
|
|
3
|
+
//# sourceMappingURL=theme.component-CbQ3s3hX.cjs.map
|