@mhmo91/schmancy 0.10.31 → 0.10.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/agent/schmancy.agent.js +2217 -2140
  2. package/dist/agent/schmancy.agent.js.map +1 -1
  3. package/dist/avatar.cjs +1 -1
  4. package/dist/avatar.js +1 -1
  5. package/dist/badge.cjs +1 -1
  6. package/dist/badge.js +1 -1
  7. package/dist/{button-DlqCWuk-.cjs → button-nDZQe1ES.cjs} +1 -1
  8. package/dist/{button-DlqCWuk-.cjs.map → button-nDZQe1ES.cjs.map} +1 -1
  9. package/dist/{button-BnGN6SsV.js → button-qARUurjf.js} +1 -1
  10. package/dist/{button-BnGN6SsV.js.map → button-qARUurjf.js.map} +1 -1
  11. package/dist/button.cjs +1 -1
  12. package/dist/button.js +2 -2
  13. package/dist/{chips-lipKBK9P.cjs → chips-DIZFWnDZ.cjs} +1 -1
  14. package/dist/{chips-lipKBK9P.cjs.map → chips-DIZFWnDZ.cjs.map} +1 -1
  15. package/dist/{chips-B8HM25xv.js → chips-xaoSmwBK.js} +1 -1
  16. package/dist/{chips-B8HM25xv.js.map → chips-xaoSmwBK.js.map} +1 -1
  17. package/dist/chips.cjs +1 -1
  18. package/dist/chips.js +1 -1
  19. package/dist/content-drawer.cjs +1 -1
  20. package/dist/content-drawer.js +1 -1
  21. package/dist/{date-range-CObvXmZ4.js → date-range-8OkCahnR.js} +1 -1
  22. package/dist/{date-range-CObvXmZ4.js.map → date-range-8OkCahnR.js.map} +1 -1
  23. package/dist/{date-range-DXct0_Jg.cjs → date-range-Bbzg9aym.cjs} +1 -1
  24. package/dist/{date-range-DXct0_Jg.cjs.map → date-range-Bbzg9aym.cjs.map} +1 -1
  25. package/dist/date-range.cjs +1 -1
  26. package/dist/date-range.js +1 -1
  27. package/dist/{details-DSGEewvZ.cjs → details-3X9YKpuP.cjs} +1 -1
  28. package/dist/{details-DSGEewvZ.cjs.map → details-3X9YKpuP.cjs.map} +1 -1
  29. package/dist/{details-nRdT8J-W.js → details-BO_3CCNn.js} +1 -1
  30. package/dist/{details-nRdT8J-W.js.map → details-BO_3CCNn.js.map} +1 -1
  31. package/dist/details.cjs +1 -1
  32. package/dist/details.js +1 -1
  33. package/dist/{directives-DJbBHfID.cjs → directives-BOsvcH83.cjs} +11 -11
  34. package/dist/directives-BOsvcH83.cjs.map +1 -0
  35. package/dist/{directives-DZzxV3Hh.js → directives-D7AoVfPK.js} +231 -158
  36. package/dist/directives-D7AoVfPK.js.map +1 -0
  37. package/dist/directives.cjs +1 -1
  38. package/dist/directives.js +2 -2
  39. package/dist/form.cjs +1 -1
  40. package/dist/form.js +2 -2
  41. package/dist/handover/agent-runtime-followups.md +1 -1
  42. package/dist/handover/agent-runtime-v1.md +3 -3
  43. package/dist/index.cjs +1 -1
  44. package/dist/index.js +11 -11
  45. package/dist/{magnetic-MQ3HMHJi.cjs → magnetic-DKtc4umC.cjs} +1 -1
  46. package/dist/magnetic-DKtc4umC.cjs.map +1 -0
  47. package/dist/{magnetic-B2VKNfDu.js → magnetic-DaOOv5Dz.js} +13 -9
  48. package/dist/magnetic-DaOOv5Dz.js.map +1 -0
  49. package/dist/{menu-BNPbrAmd.cjs → menu-B5EKUeeD.cjs} +1 -1
  50. package/dist/{menu-BNPbrAmd.cjs.map → menu-B5EKUeeD.cjs.map} +1 -1
  51. package/dist/{menu-D2cZSp74.js → menu-CgdXrzir.js} +1 -1
  52. package/dist/{menu-D2cZSp74.js.map → menu-CgdXrzir.js.map} +1 -1
  53. package/dist/menu.cjs +1 -1
  54. package/dist/menu.js +1 -1
  55. package/dist/nav-drawer.cjs +1 -1
  56. package/dist/nav-drawer.js +1 -1
  57. package/dist/navigation-bar.cjs +1 -1
  58. package/dist/navigation-bar.js +1 -1
  59. package/dist/{overlay-U5jr3OYG.cjs → overlay-5PMZ75PO.cjs} +1 -1
  60. package/dist/{overlay-U5jr3OYG.cjs.map → overlay-5PMZ75PO.cjs.map} +1 -1
  61. package/dist/{overlay-BVdgWkIj.js → overlay-BWcB2pRx.js} +2 -2
  62. package/dist/{overlay-BVdgWkIj.js.map → overlay-BWcB2pRx.js.map} +1 -1
  63. package/dist/overlay.cjs +1 -1
  64. package/dist/{overlay.confirm-body-BYPEKZtR.js → overlay.confirm-body-B7W0DOGS.js} +1 -1
  65. package/dist/{overlay.confirm-body-BYPEKZtR.js.map → overlay.confirm-body-B7W0DOGS.js.map} +1 -1
  66. package/dist/{overlay.confirm-body-BCWt92R7.cjs → overlay.confirm-body-CsvwcBvG.cjs} +1 -1
  67. package/dist/{overlay.confirm-body-BCWt92R7.cjs.map → overlay.confirm-body-CsvwcBvG.cjs.map} +1 -1
  68. package/dist/overlay.js +3 -3
  69. package/dist/{overlay.service-D4_SgGuT.cjs → overlay.service-CC4zckoV.cjs} +1 -1
  70. package/dist/{overlay.service-D4_SgGuT.cjs.map → overlay.service-CC4zckoV.cjs.map} +1 -1
  71. package/dist/{overlay.service-Dq2X6ibl.js → overlay.service-zx465FI8.js} +2 -2
  72. package/dist/{overlay.service-Dq2X6ibl.js.map → overlay.service-zx465FI8.js.map} +1 -1
  73. package/dist/{select-gRJb1TEf.js → select-C_ljy5k4.js} +1 -1
  74. package/dist/{select-gRJb1TEf.js.map → select-C_ljy5k4.js.map} +1 -1
  75. package/dist/{select-Gb9fTA4M.cjs → select-D61MbhmA.cjs} +1 -1
  76. package/dist/{select-Gb9fTA4M.cjs.map → select-D61MbhmA.cjs.map} +1 -1
  77. package/dist/select.cjs +1 -1
  78. package/dist/select.js +1 -1
  79. package/dist/{src-DavVEUeO.js → src-CdX0NekF.js} +8 -8
  80. package/dist/{src-DavVEUeO.js.map → src-CdX0NekF.js.map} +1 -1
  81. package/dist/{src-C_7k7YhE.cjs → src-DEgL_xJv.cjs} +1 -1
  82. package/dist/{src-C_7k7YhE.cjs.map → src-DEgL_xJv.cjs.map} +1 -1
  83. package/dist/teleport.cjs +1 -1
  84. package/dist/teleport.js +1 -1
  85. package/package.json +21 -21
  86. package/src/directives/art/art.directive.ts +4 -2
  87. package/src/directives/art/effects/starfield.ts +222 -77
  88. package/src/directives/art/types.ts +41 -6
  89. package/src/directives/magnetic.ts +8 -1
  90. package/types/src/directives/art/effects/starfield.d.ts +11 -4
  91. package/types/src/directives/art/types.d.ts +41 -6
  92. package/dist/directives-DJbBHfID.cjs.map +0 -1
  93. package/dist/directives-DZzxV3Hh.js.map +0 -1
  94. package/dist/magnetic-B2VKNfDu.js.map +0 -1
  95. package/dist/magnetic-MQ3HMHJi.cjs.map +0 -1
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./directives-DJbBHfID.cjs`),t=require(`./reduced-motion-Ds-HjMzn.cjs`),n=require(`./cursor-glow-Bulq-38P.cjs`),r=require(`./layout-D7nKwpa5.cjs`),i=require(`./gravity-6pL6CfIr.cjs`),a=require(`./magnetic-MQ3HMHJi.cjs`);exports.DragDirective=e.h,exports.DropDirective=e.g,exports.aiBadge=e.O,exports.animateText=e.k,exports.art=e.D,exports.beta=e.C,exports.color=e.S,exports.confirmClick=e.x,exports.cursorGlow=n.t,exports.cycleText=e.b,exports.depthOfField=e.y,exports.drag=e._,exports.drop=e.v,exports.fill=e.m,exports.fromResizeObserver=r.t,exports.fullHeight=r.n,exports.fullWidth=r.r,exports.futureCell=e.E,exports.fyi=e.p,exports.gravity=i.t,exports.hummingbird=e.f,exports.intersect=e.d,exports.isBeta=e.w,exports.liquid=e.u,exports.livingBorder=e.l,exports.longPress=e.c,exports.magnetic=a.t,exports.missedPunch=e.s,exports.nebula=e.o,exports.overflowWithin=e.r,exports.reducedMotion$=t.t,exports.reveal=e.a,exports.ripple=e.i,exports.setBetaPredicate=e.T,exports.urgent=e.n,exports.workingSnake=e.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./directives-BOsvcH83.cjs`),t=require(`./reduced-motion-Ds-HjMzn.cjs`),n=require(`./cursor-glow-Bulq-38P.cjs`),r=require(`./layout-D7nKwpa5.cjs`),i=require(`./gravity-6pL6CfIr.cjs`),a=require(`./magnetic-DKtc4umC.cjs`);exports.DragDirective=e.h,exports.DropDirective=e.g,exports.aiBadge=e.O,exports.animateText=e.k,exports.art=e.D,exports.beta=e.C,exports.color=e.S,exports.confirmClick=e.x,exports.cursorGlow=n.t,exports.cycleText=e.b,exports.depthOfField=e.y,exports.drag=e._,exports.drop=e.v,exports.fill=e.m,exports.fromResizeObserver=r.t,exports.fullHeight=r.n,exports.fullWidth=r.r,exports.futureCell=e.E,exports.fyi=e.p,exports.gravity=i.t,exports.hummingbird=e.f,exports.intersect=e.d,exports.isBeta=e.w,exports.liquid=e.u,exports.livingBorder=e.l,exports.longPress=e.c,exports.magnetic=a.t,exports.missedPunch=e.s,exports.nebula=e.o,exports.overflowWithin=e.r,exports.reducedMotion$=t.t,exports.reveal=e.a,exports.ripple=e.i,exports.setBetaPredicate=e.T,exports.urgent=e.n,exports.workingSnake=e.t;
@@ -1,7 +1,7 @@
1
- import { C as e, D as t, E as n, O as r, S as i, T as a, _ as o, a as s, b as c, c as l, d as u, f as d, g as f, h as p, i as m, k as h, l as g, m as _, n as v, o as y, p as b, r as x, s as S, t as C, u as w, v as T, w as E, x as D, y as O } from "./directives-DZzxV3Hh.js";
1
+ import { C as e, D as t, E as n, O as r, S as i, T as a, _ as o, a as s, b as c, c as l, d as u, f as d, g as f, h as p, i as m, k as h, l as g, m as _, n as v, o as y, p as b, r as x, s as S, t as C, u as w, v as T, w as E, x as D, y as O } from "./directives-D7AoVfPK.js";
2
2
  import { t as k } from "./reduced-motion-D-L12p7G.js";
3
3
  import { t as A } from "./cursor-glow-Ah7VXSj7.js";
4
4
  import { n as j, r as M, t as N } from "./layout-CJ01zE9V.js";
5
5
  import { t as P } from "./gravity-sVK3zGBF.js";
6
- import { t as F } from "./magnetic-B2VKNfDu.js";
6
+ import { t as F } from "./magnetic-DaOOv5Dz.js";
7
7
  export { p as DragDirective, f as DropDirective, r as aiBadge, h as animateText, t as art, e as beta, i as color, D as confirmClick, A as cursorGlow, c as cycleText, O as depthOfField, o as drag, T as drop, _ as fill, N as fromResizeObserver, j as fullHeight, M as fullWidth, n as futureCell, b as fyi, P as gravity, d as hummingbird, u as intersect, E as isBeta, w as liquid, g as livingBorder, l as longPress, F as magnetic, S as missedPunch, y as nebula, x as overflowWithin, k as reducedMotion$, s as reveal, m as ripple, a as setBetaPredicate, v as urgent, C as workingSnake };
package/dist/form.cjs CHANGED
@@ -1,4 +1,4 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`),require(`./autocomplete-CjjfXbJC.cjs`);const t=require(`./checkbox-BBttnA_a.cjs`),n=require(`./date-range-DXct0_Jg.cjs`),r=require(`./form-DvqHReDF.cjs`),i=require(`./input-B-wPPC5o.cjs`);require(`./input.cjs`);const a=require(`./radio-group-C34WDjrN.cjs`),o=require(`./range.cjs`),s=require(`./select-Gb9fTA4M.cjs`),c=require(`./switch.cjs`);require(`./textarea-2QE5z6Ny.cjs`);let l=require(`lit/decorators.js`),u=require(`lit`);var d=class extends e.t{constructor(...e){super(...e),this._bump=0,this._form=null}connectedCallback(){super.connectedCallback(),this._form=this.closest(`schmancy-form`),this._form&&(this._formObserver=new MutationObserver(()=>{this._bump++}),this._formObserver.observe(this._form,{attributes:!0,subtree:!0}),(async()=>{await this._form?.updateComplete;let e=this._form?.shadowRoot?.querySelector(`[role="status"]`);e&&this._formObserver?.observe(e,{childList:!0,characterData:!0,subtree:!0}),this._bump++})())}disconnectedCallback(){this._formObserver?.disconnect(),this._formObserver=void 0,super.disconnectedCallback()}_readFormStatus(){return this._form?this._form.matches(`:state(error)`)?`error`:this._form.matches(`:state(submitting)`)?`submitting`:this._form.matches(`:state(success)`)?`success`:`idle`:`idle`}_readFormMessage(){return(this._form?.shadowRoot?.querySelector(`[role="status"]`))?.textContent?.trim()??``}_readInvalidFields(){if(!this._form)return[];let e=[];for(let t of Array.from(this._form.querySelectorAll(`*`))){if(!(t instanceof HTMLElement))continue;let n=!1;try{n=t.matches(`:state(invalid)`)}catch{continue}if(!n)continue;let r=t;e.push({id:r.id,label:r.label||r.name||`(field)`,message:r.validationMessage||`Invalid value`})}return e}render(){if(this._bump,this._readFormStatus()!==`error`)return u.nothing;let e=this._readFormMessage(),t=this._readInvalidFields(),n=t.length;return u.html`
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`),require(`./autocomplete-CjjfXbJC.cjs`);const t=require(`./checkbox-BBttnA_a.cjs`),n=require(`./date-range-Bbzg9aym.cjs`),r=require(`./form-DvqHReDF.cjs`),i=require(`./input-B-wPPC5o.cjs`);require(`./input.cjs`);const a=require(`./radio-group-C34WDjrN.cjs`),o=require(`./range.cjs`),s=require(`./select-D61MbhmA.cjs`),c=require(`./switch.cjs`);require(`./textarea-2QE5z6Ny.cjs`);let l=require(`lit/decorators.js`),u=require(`lit`);var d=class extends e.t{constructor(...e){super(...e),this._bump=0,this._form=null}connectedCallback(){super.connectedCallback(),this._form=this.closest(`schmancy-form`),this._form&&(this._formObserver=new MutationObserver(()=>{this._bump++}),this._formObserver.observe(this._form,{attributes:!0,subtree:!0}),(async()=>{await this._form?.updateComplete;let e=this._form?.shadowRoot?.querySelector(`[role="status"]`);e&&this._formObserver?.observe(e,{childList:!0,characterData:!0,subtree:!0}),this._bump++})())}disconnectedCallback(){this._formObserver?.disconnect(),this._formObserver=void 0,super.disconnectedCallback()}_readFormStatus(){return this._form?this._form.matches(`:state(error)`)?`error`:this._form.matches(`:state(submitting)`)?`submitting`:this._form.matches(`:state(success)`)?`success`:`idle`:`idle`}_readFormMessage(){return(this._form?.shadowRoot?.querySelector(`[role="status"]`))?.textContent?.trim()??``}_readInvalidFields(){if(!this._form)return[];let e=[];for(let t of Array.from(this._form.querySelectorAll(`*`))){if(!(t instanceof HTMLElement))continue;let n=!1;try{n=t.matches(`:state(invalid)`)}catch{continue}if(!n)continue;let r=t;e.push({id:r.id,label:r.label||r.name||`(field)`,message:r.validationMessage||`Invalid value`})}return e}render(){if(this._bump,this._readFormStatus()!==`error`)return u.nothing;let e=this._readFormMessage(),t=this._readInvalidFields(),n=t.length;return u.html`
2
2
  <div role="alert" aria-labelledby="schmancy-form-summary-heading">
3
3
  <h2 id="schmancy-form-summary-heading">${this.heading??(n===0?`There is a problem with this form`:`There ${n===1?`is`:`are`} ${n} problem${n===1?``:`s`} with this form`)}</h2>
4
4
  ${e?u.html`<p>${e}</p>`:u.nothing}
package/dist/form.js CHANGED
@@ -2,13 +2,13 @@ import { t as e, u as t } from "./SchmancyElement-DuzT2AMa.js";
2
2
  import "./mixins-Cevarn7V.js";
3
3
  import "./autocomplete-sjZovPcs.js";
4
4
  import { t as n } from "./checkbox-t__wRS-9.js";
5
- import { n as r, t as i } from "./date-range-CObvXmZ4.js";
5
+ import { n as r, t as i } from "./date-range-8OkCahnR.js";
6
6
  import { n as a, t as o } from "./form-BxY-9F6N.js";
7
7
  import { n as s, t as c } from "./input-2OR6wjfT.js";
8
8
  import "./input.js";
9
9
  import { n as l, t as u } from "./radio-group-DnHhGrXp.js";
10
10
  import { SchmancyRange as d } from "./range.js";
11
- import { t as f } from "./select-gRJb1TEf.js";
11
+ import { t as f } from "./select-C_ljy5k4.js";
12
12
  import { SchmancySwitch as p } from "./switch.js";
13
13
  import "./textarea-8x0prbgm.js";
14
14
  import { customElement as m, property as h, state as g } from "lit/decorators.js";
@@ -203,7 +203,7 @@ The manifest already has everything needed; the package is just the JSON-RPC wra
203
203
 
204
204
  **Problem.** `handover/agent-runtime-v1.md` had `<PENDING>` placeholders that we manually replaced with `0.9.13` after the first publish. Future handover docs will have the same issue.
205
205
 
206
- **Fix.** A build step that substitutes `0.10.31` in `handover/**/*.md` against `package.json`'s `version` field on every build. `dist/handover/**/*.md` gets the rendered version; the source stays templated.
206
+ **Fix.** A build step that substitutes `0.10.33` in `handover/**/*.md` against `package.json`'s `version` field on every build. `dist/handover/**/*.md` gets the rendered version; the source stays templated.
207
207
 
208
208
  **Effort:** ~30 min (one sed step or a tiny script).
209
209
 
@@ -7,8 +7,8 @@
7
7
  ## The URLs you asked for
8
8
 
9
9
  ```
10
- https://esm.sh/@mhmo91/schmancy/agent@0.10.31
11
- https://esm.sh/@mhmo91/schmancy/agent/manifest@0.10.31
10
+ https://esm.sh/@mhmo91/schmancy/agent@0.10.33
11
+ https://esm.sh/@mhmo91/schmancy/agent/manifest@0.10.33
12
12
  ```
13
13
 
14
14
  `0.9.13` is the first release containing `/agent`; every subsequent publish serves the same subpath. `npm view @mhmo91/schmancy version` always returns the current pin if you want to float forward.
@@ -20,7 +20,7 @@ One script tag. No bundler, no bare specifiers, no npm install.
20
20
  ```html
21
21
  <!doctype html>
22
22
  <script type="module">
23
- import { $dialog, theme } from 'https://esm.sh/@mhmo91/schmancy/agent@0.10.31';
23
+ import { $dialog, theme } from 'https://esm.sh/@mhmo91/schmancy/agent@0.10.33';
24
24
  </script>
25
25
  <schmancy-theme root scheme="dark">
26
26
  <schmancy-surface type="solid" fill="all">
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`),t=require(`./area-WGfTrwcJ.cjs`),ee=require(`./lazy-CayEFyC3.cjs`),n=require(`./state-D85Se4Fx.cjs`),r=require(`./sound.service-Czs3gmRx.cjs`),i=require(`./audio-9QLk4pU-.cjs`),a=require(`./search-DPKoC-dT.cjs`),o=require(`./input-chip-O5-pgek1.cjs`),s=require(`./animation-CCOIW4wJ.cjs`),c=require(`./directives-DJbBHfID.cjs`),l=require(`./reduced-motion-Ds-HjMzn.cjs`),u=require(`./cursor-glow-Bulq-38P.cjs`),d=require(`./theme.service-LtQw04e6.cjs`),f=require(`./layout-D7nKwpa5.cjs`),te=require(`./overlay-stack-Bdr9lOqi.cjs`),ne=require(`./gravity-6pL6CfIr.cjs`),p=require(`./discovery.service-CIa3Eeuk.cjs`),m=require(`./magnetic-MQ3HMHJi.cjs`),h=require(`./src-C_7k7YhE.cjs`),g=require(`./boat-CI5rcGS5.cjs`),_=require(`./button-DlqCWuk-.cjs`),v=require(`./button.cjs`),re=require(`./checkbox-BBttnA_a.cjs`),y=require(`./chips-lipKBK9P.cjs`),ie=require(`./connectivity.cjs`),b=require(`./overlay.service-D4_SgGuT.cjs`),x=require(`./date-range-DXct0_Jg.cjs`),S=require(`./date-range-inline-lhkwHFxY.cjs`),C=require(`./delay.cjs`),w=require(`./details-DSGEewvZ.cjs`),T=require(`./dropdown.cjs`),E=require(`./surface-DHPaLOTA.cjs`),D=require(`./expand-wRphbpW6.cjs`),O=require(`./window-qKfP5c6M.cjs`),ae=require(`./float-B0L_CH4v.cjs`),k=require(`./form-DvqHReDF.cjs`),A=require(`./input-B-wPPC5o.cjs`),j=require(`./radio-group-C34WDjrN.cjs`),M=require(`./range.cjs`),N=require(`./theme.interface-CSt7JUBD.cjs`),P=require(`./select-Gb9fTA4M.cjs`),F=require(`./switch.cjs`),I=require(`./form.cjs`),L=require(`./iframe-BepoWz9Z.cjs`),R=require(`./notification-CaeRS5US.cjs`),z=require(`./json.cjs`),B=require(`./layout.cjs`),V=require(`./lightbox-DVpvjsYb.cjs`),H=require(`./list-JjUsFCP6.cjs`),U=require(`./navigation-rail.cjs`),oe=require(`./overlay-U5jr3OYG.cjs`),W=require(`./typography-CiZQpzE4.cjs`),G=require(`./overlay.confirm-body-BCWt92R7.cjs`),K=require(`./rxjs-utils-Csnks202.cjs`),q=require(`./slider.cjs`),J=require(`./steps.cjs`),Y=require(`./table.cjs`),X=require(`./theme-D0yboni1.cjs`),se=require(`./tooltip.cjs`),ce=require(`./tree.cjs`),le=require(`./types.cjs`),ue=require(`./typewriter.cjs`),Z=require(`./utils-DTa3QHxk.cjs`),de=require(`./avatar.cjs`),Q=require(`./breadcrumb.cjs`),fe=require(`./kbd.cjs`),pe=require(`./skeleton.cjs`),me=require(`./visually-hidden.cjs`);let $=require(`@lit-labs/signals`);exports.$drawer=h.p,exports.$notify=R.r,exports.$sounds=i.t,exports.ANIMATION_CSS_VARS=s.t,exports.BLACKBIRD_EASING=s.n,exports.DISCOVER_EVENT=p.t,exports.DISCOVER_RESPONSE_EVENT=p.n,exports.DURATION_BACKDROP=s.r,exports.DURATION_ENTER=s.i,exports.DURATION_EXIT=s.a,exports.DragDirective=c.h,exports.DropDirective=c.g,exports.EASE_IN=s.o,exports.EASE_OUT=s.s,exports.EmotionalSoundGenerator=i.n,exports.FINDING_MORTIES=t.b,exports.GRID_ANIMATION_CSS=s.c,exports.HERE_RICKY=t.x,exports.HISTORY_STRATEGY=t.v,exports.HereMorty=h.n,Object.defineProperty(exports,`List`,{enumerable:!0,get:function(){return H.t}}),exports.Numbers=Z.t,Object.defineProperty(exports,`RadioButton`,{enumerable:!0,get:function(){return j.t}}),Object.defineProperty(exports,`RadioGroup`,{enumerable:!0,get:function(){return j.n}}),exports.SCHMANCY_EXPAND_REQUEST_CLOSE=D.t,exports.SPRING_BOUNCY=s.l,exports.SPRING_GENTLE=s.u,exports.SPRING_SMOOTH=s.d,exports.SPRING_SNAPPY=s.f,Object.defineProperty(exports,`ScBadgeV2`,{enumerable:!0,get:function(){return h.w}}),Object.defineProperty(exports,`SchmancyArea`,{enumerable:!0,get:function(){return t._}}),Object.defineProperty(exports,`SchmancyAssistChip`,{enumerable:!0,get:function(){return y.r}}),Object.defineProperty(exports,`SchmancyAvatar`,{enumerable:!0,get:function(){return de.SchmancyAvatar}}),Object.defineProperty(exports,`SchmancyBadgeV2`,{enumerable:!0,get:function(){return h.T}}),exports.SchmancyBoat=g.t,Object.defineProperty(exports,`SchmancyBreadcrumb`,{enumerable:!0,get:function(){return Q.SchmancyBreadcrumb}}),Object.defineProperty(exports,`SchmancyBreadcrumbItem`,{enumerable:!0,get:function(){return Q.SchmancyBreadcrumbItem}}),Object.defineProperty(exports,`SchmancyButton`,{enumerable:!0,get:function(){return _.t}}),Object.defineProperty(exports,`SchmancyCheckbox`,{enumerable:!0,get:function(){return re.t}}),exports.SchmancyChip=y.n,exports.SchmancyFilterChip=y.n,Object.defineProperty(exports,`SchmancyConnectivityStatus`,{enumerable:!0,get:function(){return ie.SchmancyConnectivityStatus}}),Object.defineProperty(exports,`SchmancyContentDrawer`,{enumerable:!0,get:function(){return h._}}),exports.SchmancyContentDrawerID=h.v,Object.defineProperty(exports,`SchmancyContentDrawerMain`,{enumerable:!0,get:function(){return h.g}}),exports.SchmancyContentDrawerMaxHeight=h.y,exports.SchmancyContentDrawerMinWidth=h.b,Object.defineProperty(exports,`SchmancyContentDrawerSheet`,{enumerable:!0,get:function(){return h.h}}),exports.SchmancyContentDrawerSheetMode=h.x,exports.SchmancyContentDrawerSheetState=h.S,exports.SchmancyContext=n.s,Object.defineProperty(exports,`SchmancyDataTable`,{enumerable:!0,get:function(){return Y.SchmancyDataTable}}),Object.defineProperty(exports,`SchmancyDateRange`,{enumerable:!0,get:function(){return x.t}}),exports.SchmancyDateRangeInline=S.t,Object.defineProperty(exports,`SchmancyDelay`,{enumerable:!0,get:function(){return C.SchmancyDelay}}),exports.SchmancyDetails=w.t,Object.defineProperty(exports,`SchmancyDrawerAppbar`,{enumerable:!0,get:function(){return h.f}}),exports.SchmancyDrawerNavbarMode=h.l,exports.SchmancyDrawerNavbarState=h.u,Object.defineProperty(exports,`SchmancyDropdown`,{enumerable:!0,get:function(){return T.SchmancyDropdown}}),Object.defineProperty(exports,`SchmancyDropdownContent`,{enumerable:!0,get:function(){return T.SchmancyDropdownContent}}),exports.SchmancyEvents=le.SchmancyEvents,Object.defineProperty(exports,`SchmancyExpandRoot`,{enumerable:!0,get:function(){return D.n}}),exports.SchmancyFloat=ae.t,exports.SchmancyForm=k.t,Object.defineProperty(exports,`SchmancyFormSummary`,{enumerable:!0,get:function(){return I.SchmancyFormSummary}}),exports.SchmancyGenerateMoodAudioEvent=X.n,exports.SchmancyIframe=L.t,exports.SchmancyInput=A.n,Object.defineProperty(exports,`SchmancyInputChip`,{enumerable:!0,get:function(){return o.t}}),Object.defineProperty(exports,`SchmancyInputCompat`,{enumerable:!0,get:function(){return A.t}}),Object.defineProperty(exports,`SchmancyJson`,{enumerable:!0,get:function(){return z.SchmancyJson}}),Object.defineProperty(exports,`SchmancyKbd`,{enumerable:!0,get:function(){return fe.SchmancyKbd}}),Object.defineProperty(exports,`SchmancyLightbox`,{enumerable:!0,get:function(){return V.i}}),Object.defineProperty(exports,`SchmancyListItem`,{enumerable:!0,get:function(){return H.n}}),exports.SchmancyListTypeContext=H.r,Object.defineProperty(exports,`SchmancyNavigationBar`,{enumerable:!0,get:function(){return h.a}}),Object.defineProperty(exports,`SchmancyNavigationBarItem`,{enumerable:!0,get:function(){return h.o}}),Object.defineProperty(exports,`SchmancyNavigationDrawer`,{enumerable:!0,get:function(){return h.c}}),Object.defineProperty(exports,`SchmancyNavigationDrawerContent`,{enumerable:!0,get:function(){return h.d}}),Object.defineProperty(exports,`SchmancyNavigationDrawerSidebar`,{enumerable:!0,get:function(){return h.s}}),Object.defineProperty(exports,`SchmancyNavigationRail`,{enumerable:!0,get:function(){return U.SchmancyNavigationRail}}),Object.defineProperty(exports,`SchmancyNavigationRailItem`,{enumerable:!0,get:function(){return U.SchmancyNavigationRailItem}}),exports.SchmancyNotification=R.i,Object.defineProperty(exports,`SchmancyOverlay`,{enumerable:!0,get:function(){return oe.t}}),Object.defineProperty(exports,`SchmancyOverlayPromptBody`,{enumerable:!0,get:function(){return G.t}}),Object.defineProperty(exports,`SchmancyRange`,{enumerable:!0,get:function(){return M.SchmancyRange}}),Object.defineProperty(exports,`SchmancyRoute`,{enumerable:!0,get:function(){return t.y}}),Object.defineProperty(exports,`SchmancyScroll`,{enumerable:!0,get:function(){return B.SchmancyScroll}}),Object.defineProperty(exports,`SchmancySelect`,{enumerable:!0,get:function(){return P.t}}),Object.defineProperty(exports,`SchmancySkeleton`,{enumerable:!0,get:function(){return pe.SchmancySkeleton}}),Object.defineProperty(exports,`SchmancySlide`,{enumerable:!0,get:function(){return q.SchmancySlide}}),Object.defineProperty(exports,`SchmancySlider`,{enumerable:!0,get:function(){return q.SchmancySlider}}),Object.defineProperty(exports,`SchmancyStep`,{enumerable:!0,get:function(){return J.SchmancyStep}}),Object.defineProperty(exports,`SchmancyStepsContainer`,{enumerable:!0,get:function(){return J.SchmancyStepsContainer}}),Object.defineProperty(exports,`SchmancySuggestionChip`,{enumerable:!0,get:function(){return y.t}}),Object.defineProperty(exports,`SchmancySurface`,{enumerable:!0,get:function(){return E.t}}),exports.SchmancySurfaceTypeContext=E.n,Object.defineProperty(exports,`SchmancySwitch`,{enumerable:!0,get:function(){return F.SchmancySwitch}}),Object.defineProperty(exports,`SchmancyTableRow`,{enumerable:!0,get:function(){return Y.SchmancyTableRow}}),Object.defineProperty(exports,`SchmancyTeleportation`,{enumerable:!0,get:function(){return h.t}}),exports.SchmancyTheme=N.t,Object.defineProperty(exports,`SchmancyThemeAudioPlayer`,{enumerable:!0,get:function(){return X.r}}),Object.defineProperty(exports,`SchmancyThemeComponent`,{enumerable:!0,get:function(){return X.a}}),Object.defineProperty(exports,`SchmancyThemeController`,{enumerable:!0,get:function(){return X.i}}),Object.defineProperty(exports,`SchmancyThemeControllerBoat`,{enumerable:!0,get:function(){return X.t}}),Object.defineProperty(exports,`SchmancyTree`,{enumerable:!0,get:function(){return ce.SchmancyTree}}),Object.defineProperty(exports,`SchmancyTypography`,{enumerable:!0,get:function(){return W.t}}),Object.defineProperty(exports,`SchmancyVisuallyHidden`,{enumerable:!0,get:function(){return me.SchmancyVisuallyHidden}}),exports.SchmancyWindow=O.t,Object.defineProperty(exports,`SchmnacyIconButton`,{enumerable:!0,get:function(){return v.SchmnacyIconButton}}),Object.defineProperty(exports,`Signal`,{enumerable:!0,get:function(){return $.Signal}}),exports.StepsController=J.StepsController,exports.ThemeHereIAm=d.r,exports.ThemeWhereAreYou=d.i,exports.WhereAreYouRicky=h.r,exports._activeHost=e.r,exports.aiBadge=c.O,exports.animateText=c.k,exports.area=t.S,exports.art=c.D,exports.beta=c.C,exports.bindState=n.t,exports.buildQueryString=t.t,exports.color=c.S,exports.compareActiveRoutes=t.n,exports.compareCustomElementConstructors=t.r,exports.compareRouteActions=t.i,Object.defineProperty(exports,`computed`,{enumerable:!0,get:function(){return $.computed}}),exports.confirm=b.t,exports.confirmClick=c.x,exports.createAnimation=s.p,exports.createDarkTonalPaletteFromBaseColor=X.s,exports.createDismissAnimation=s.m,exports.createLightTonalPaletteFromBaseColor=X.c,exports.createRevealAnimation=s.h,exports.createRouteCacheKey=t.a,exports.createScaleAnimation=s.g,exports.cursorGlow=u.t,exports.cycleText=c.b,exports.debounce=t.o,exports.decodeData=t.h,exports.decodeRouteState=t.s,exports.deepMerge=t.c,exports.delayContext=C.delayContext,exports.depthOfField=c.y,exports.discover=p.r,exports.discoverAllElements=p.i,exports.discoverAnyComponent=p.a,exports.discoverComponent=p.o,exports.discoverElement=p.s,exports.dismissAll=b.n,exports.drag=c._,exports.drop=c.v,exports.effect=n.n,exports.encodeData=t.g,exports.encodeRouteState=t.l,exports.extractQueryParams=t.u,exports.fill=c.m,exports.flip=V.r,exports.formSubmitState=k.n,exports.formatTheme=X.l,exports.fromResizeObserver=f.t,exports.fullHeight=f.n,exports.fullWidth=f.r,exports.futureCell=c.E,exports.fyi=c.p,exports.getEasing=s._,exports.getTagName=t.d,exports.gravity=ne.t,exports.hummingbird=c.f,exports.intersect=c.d,exports.intersection$=Z.n,exports.isBeta=c.w,exports.isObject=t.f,exports.lazy=ee.t,exports.lightbox=V.t,exports.lightboxDirective=V.n,exports.liquid=c.u,exports.livingBorder=c.l,exports.longPress=c.c,exports.magnetic=m.t,exports.missedPunch=c.s,exports.mutationObserver=K.t,exports.nebula=c.o,exports.normalizeTagName=t.p,exports.notify=R.t,exports.notifyProgress=R.n,exports.observe=n.r,exports.openOverlays$=b.r,exports.overflowWithin=c.r,exports.overlayEvents=b.i,exports.overlayStack=te.t,exports.prefersReducedMotion=s.v,exports.prompt=b.a,exports.reducedMotion$=l.t,exports.reveal=c.a,exports.ripple=c.i,exports.routerHistory=t.C,exports.sanitizeRouteState=t.m,exports.schmancyContentDrawer=h.C,exports.schmancyContext=n.i,exports.schmancyNavDrawer=h.m,exports.schmancySound=r.t,exports.schmancyTheme=d.t,exports.setBetaPredicate=c.T,exports.show=b.o,exports.similarity=a.t,exports.sound=r.n,exports.state=n.a,exports.stateFromObservable=n.o,exports.stepsContext=J.stepsContext,exports.tailwindAnimations=s.y,exports.tailwindStyles=X.o,exports.teleport=h.i,exports.theme=d.n,exports.themeContext=e.d,exports.tooltip=se.tooltip,exports.typewriter=ue.typewriter,exports.urgent=c.n,exports.validateInitialDateRange=x.n,exports.windowManager=O.n,exports.workingSnake=c.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`),t=require(`./area-WGfTrwcJ.cjs`),ee=require(`./lazy-CayEFyC3.cjs`),n=require(`./state-D85Se4Fx.cjs`),r=require(`./sound.service-Czs3gmRx.cjs`),i=require(`./audio-9QLk4pU-.cjs`),a=require(`./search-DPKoC-dT.cjs`),o=require(`./input-chip-O5-pgek1.cjs`),s=require(`./animation-CCOIW4wJ.cjs`),c=require(`./directives-BOsvcH83.cjs`),l=require(`./reduced-motion-Ds-HjMzn.cjs`),u=require(`./cursor-glow-Bulq-38P.cjs`),d=require(`./theme.service-LtQw04e6.cjs`),f=require(`./layout-D7nKwpa5.cjs`),te=require(`./overlay-stack-Bdr9lOqi.cjs`),ne=require(`./gravity-6pL6CfIr.cjs`),p=require(`./discovery.service-CIa3Eeuk.cjs`),m=require(`./magnetic-DKtc4umC.cjs`),h=require(`./src-DEgL_xJv.cjs`),g=require(`./boat-CI5rcGS5.cjs`),_=require(`./button-nDZQe1ES.cjs`),v=require(`./button.cjs`),re=require(`./checkbox-BBttnA_a.cjs`),y=require(`./chips-DIZFWnDZ.cjs`),ie=require(`./connectivity.cjs`),b=require(`./overlay.service-CC4zckoV.cjs`),x=require(`./date-range-Bbzg9aym.cjs`),S=require(`./date-range-inline-lhkwHFxY.cjs`),C=require(`./delay.cjs`),w=require(`./details-3X9YKpuP.cjs`),T=require(`./dropdown.cjs`),E=require(`./surface-DHPaLOTA.cjs`),D=require(`./expand-wRphbpW6.cjs`),O=require(`./window-qKfP5c6M.cjs`),ae=require(`./float-B0L_CH4v.cjs`),k=require(`./form-DvqHReDF.cjs`),A=require(`./input-B-wPPC5o.cjs`),j=require(`./radio-group-C34WDjrN.cjs`),M=require(`./range.cjs`),N=require(`./theme.interface-CSt7JUBD.cjs`),P=require(`./select-D61MbhmA.cjs`),F=require(`./switch.cjs`),I=require(`./form.cjs`),L=require(`./iframe-BepoWz9Z.cjs`),R=require(`./notification-CaeRS5US.cjs`),z=require(`./json.cjs`),B=require(`./layout.cjs`),V=require(`./lightbox-DVpvjsYb.cjs`),H=require(`./list-JjUsFCP6.cjs`),U=require(`./navigation-rail.cjs`),oe=require(`./overlay-5PMZ75PO.cjs`),W=require(`./typography-CiZQpzE4.cjs`),G=require(`./overlay.confirm-body-CsvwcBvG.cjs`),K=require(`./rxjs-utils-Csnks202.cjs`),q=require(`./slider.cjs`),J=require(`./steps.cjs`),Y=require(`./table.cjs`),X=require(`./theme-D0yboni1.cjs`),se=require(`./tooltip.cjs`),ce=require(`./tree.cjs`),le=require(`./types.cjs`),ue=require(`./typewriter.cjs`),Z=require(`./utils-DTa3QHxk.cjs`),de=require(`./avatar.cjs`),Q=require(`./breadcrumb.cjs`),fe=require(`./kbd.cjs`),pe=require(`./skeleton.cjs`),me=require(`./visually-hidden.cjs`);let $=require(`@lit-labs/signals`);exports.$drawer=h.p,exports.$notify=R.r,exports.$sounds=i.t,exports.ANIMATION_CSS_VARS=s.t,exports.BLACKBIRD_EASING=s.n,exports.DISCOVER_EVENT=p.t,exports.DISCOVER_RESPONSE_EVENT=p.n,exports.DURATION_BACKDROP=s.r,exports.DURATION_ENTER=s.i,exports.DURATION_EXIT=s.a,exports.DragDirective=c.h,exports.DropDirective=c.g,exports.EASE_IN=s.o,exports.EASE_OUT=s.s,exports.EmotionalSoundGenerator=i.n,exports.FINDING_MORTIES=t.b,exports.GRID_ANIMATION_CSS=s.c,exports.HERE_RICKY=t.x,exports.HISTORY_STRATEGY=t.v,exports.HereMorty=h.n,Object.defineProperty(exports,`List`,{enumerable:!0,get:function(){return H.t}}),exports.Numbers=Z.t,Object.defineProperty(exports,`RadioButton`,{enumerable:!0,get:function(){return j.t}}),Object.defineProperty(exports,`RadioGroup`,{enumerable:!0,get:function(){return j.n}}),exports.SCHMANCY_EXPAND_REQUEST_CLOSE=D.t,exports.SPRING_BOUNCY=s.l,exports.SPRING_GENTLE=s.u,exports.SPRING_SMOOTH=s.d,exports.SPRING_SNAPPY=s.f,Object.defineProperty(exports,`ScBadgeV2`,{enumerable:!0,get:function(){return h.w}}),Object.defineProperty(exports,`SchmancyArea`,{enumerable:!0,get:function(){return t._}}),Object.defineProperty(exports,`SchmancyAssistChip`,{enumerable:!0,get:function(){return y.r}}),Object.defineProperty(exports,`SchmancyAvatar`,{enumerable:!0,get:function(){return de.SchmancyAvatar}}),Object.defineProperty(exports,`SchmancyBadgeV2`,{enumerable:!0,get:function(){return h.T}}),exports.SchmancyBoat=g.t,Object.defineProperty(exports,`SchmancyBreadcrumb`,{enumerable:!0,get:function(){return Q.SchmancyBreadcrumb}}),Object.defineProperty(exports,`SchmancyBreadcrumbItem`,{enumerable:!0,get:function(){return Q.SchmancyBreadcrumbItem}}),Object.defineProperty(exports,`SchmancyButton`,{enumerable:!0,get:function(){return _.t}}),Object.defineProperty(exports,`SchmancyCheckbox`,{enumerable:!0,get:function(){return re.t}}),exports.SchmancyChip=y.n,exports.SchmancyFilterChip=y.n,Object.defineProperty(exports,`SchmancyConnectivityStatus`,{enumerable:!0,get:function(){return ie.SchmancyConnectivityStatus}}),Object.defineProperty(exports,`SchmancyContentDrawer`,{enumerable:!0,get:function(){return h._}}),exports.SchmancyContentDrawerID=h.v,Object.defineProperty(exports,`SchmancyContentDrawerMain`,{enumerable:!0,get:function(){return h.g}}),exports.SchmancyContentDrawerMaxHeight=h.y,exports.SchmancyContentDrawerMinWidth=h.b,Object.defineProperty(exports,`SchmancyContentDrawerSheet`,{enumerable:!0,get:function(){return h.h}}),exports.SchmancyContentDrawerSheetMode=h.x,exports.SchmancyContentDrawerSheetState=h.S,exports.SchmancyContext=n.s,Object.defineProperty(exports,`SchmancyDataTable`,{enumerable:!0,get:function(){return Y.SchmancyDataTable}}),Object.defineProperty(exports,`SchmancyDateRange`,{enumerable:!0,get:function(){return x.t}}),exports.SchmancyDateRangeInline=S.t,Object.defineProperty(exports,`SchmancyDelay`,{enumerable:!0,get:function(){return C.SchmancyDelay}}),exports.SchmancyDetails=w.t,Object.defineProperty(exports,`SchmancyDrawerAppbar`,{enumerable:!0,get:function(){return h.f}}),exports.SchmancyDrawerNavbarMode=h.l,exports.SchmancyDrawerNavbarState=h.u,Object.defineProperty(exports,`SchmancyDropdown`,{enumerable:!0,get:function(){return T.SchmancyDropdown}}),Object.defineProperty(exports,`SchmancyDropdownContent`,{enumerable:!0,get:function(){return T.SchmancyDropdownContent}}),exports.SchmancyEvents=le.SchmancyEvents,Object.defineProperty(exports,`SchmancyExpandRoot`,{enumerable:!0,get:function(){return D.n}}),exports.SchmancyFloat=ae.t,exports.SchmancyForm=k.t,Object.defineProperty(exports,`SchmancyFormSummary`,{enumerable:!0,get:function(){return I.SchmancyFormSummary}}),exports.SchmancyGenerateMoodAudioEvent=X.n,exports.SchmancyIframe=L.t,exports.SchmancyInput=A.n,Object.defineProperty(exports,`SchmancyInputChip`,{enumerable:!0,get:function(){return o.t}}),Object.defineProperty(exports,`SchmancyInputCompat`,{enumerable:!0,get:function(){return A.t}}),Object.defineProperty(exports,`SchmancyJson`,{enumerable:!0,get:function(){return z.SchmancyJson}}),Object.defineProperty(exports,`SchmancyKbd`,{enumerable:!0,get:function(){return fe.SchmancyKbd}}),Object.defineProperty(exports,`SchmancyLightbox`,{enumerable:!0,get:function(){return V.i}}),Object.defineProperty(exports,`SchmancyListItem`,{enumerable:!0,get:function(){return H.n}}),exports.SchmancyListTypeContext=H.r,Object.defineProperty(exports,`SchmancyNavigationBar`,{enumerable:!0,get:function(){return h.a}}),Object.defineProperty(exports,`SchmancyNavigationBarItem`,{enumerable:!0,get:function(){return h.o}}),Object.defineProperty(exports,`SchmancyNavigationDrawer`,{enumerable:!0,get:function(){return h.c}}),Object.defineProperty(exports,`SchmancyNavigationDrawerContent`,{enumerable:!0,get:function(){return h.d}}),Object.defineProperty(exports,`SchmancyNavigationDrawerSidebar`,{enumerable:!0,get:function(){return h.s}}),Object.defineProperty(exports,`SchmancyNavigationRail`,{enumerable:!0,get:function(){return U.SchmancyNavigationRail}}),Object.defineProperty(exports,`SchmancyNavigationRailItem`,{enumerable:!0,get:function(){return U.SchmancyNavigationRailItem}}),exports.SchmancyNotification=R.i,Object.defineProperty(exports,`SchmancyOverlay`,{enumerable:!0,get:function(){return oe.t}}),Object.defineProperty(exports,`SchmancyOverlayPromptBody`,{enumerable:!0,get:function(){return G.t}}),Object.defineProperty(exports,`SchmancyRange`,{enumerable:!0,get:function(){return M.SchmancyRange}}),Object.defineProperty(exports,`SchmancyRoute`,{enumerable:!0,get:function(){return t.y}}),Object.defineProperty(exports,`SchmancyScroll`,{enumerable:!0,get:function(){return B.SchmancyScroll}}),Object.defineProperty(exports,`SchmancySelect`,{enumerable:!0,get:function(){return P.t}}),Object.defineProperty(exports,`SchmancySkeleton`,{enumerable:!0,get:function(){return pe.SchmancySkeleton}}),Object.defineProperty(exports,`SchmancySlide`,{enumerable:!0,get:function(){return q.SchmancySlide}}),Object.defineProperty(exports,`SchmancySlider`,{enumerable:!0,get:function(){return q.SchmancySlider}}),Object.defineProperty(exports,`SchmancyStep`,{enumerable:!0,get:function(){return J.SchmancyStep}}),Object.defineProperty(exports,`SchmancyStepsContainer`,{enumerable:!0,get:function(){return J.SchmancyStepsContainer}}),Object.defineProperty(exports,`SchmancySuggestionChip`,{enumerable:!0,get:function(){return y.t}}),Object.defineProperty(exports,`SchmancySurface`,{enumerable:!0,get:function(){return E.t}}),exports.SchmancySurfaceTypeContext=E.n,Object.defineProperty(exports,`SchmancySwitch`,{enumerable:!0,get:function(){return F.SchmancySwitch}}),Object.defineProperty(exports,`SchmancyTableRow`,{enumerable:!0,get:function(){return Y.SchmancyTableRow}}),Object.defineProperty(exports,`SchmancyTeleportation`,{enumerable:!0,get:function(){return h.t}}),exports.SchmancyTheme=N.t,Object.defineProperty(exports,`SchmancyThemeAudioPlayer`,{enumerable:!0,get:function(){return X.r}}),Object.defineProperty(exports,`SchmancyThemeComponent`,{enumerable:!0,get:function(){return X.a}}),Object.defineProperty(exports,`SchmancyThemeController`,{enumerable:!0,get:function(){return X.i}}),Object.defineProperty(exports,`SchmancyThemeControllerBoat`,{enumerable:!0,get:function(){return X.t}}),Object.defineProperty(exports,`SchmancyTree`,{enumerable:!0,get:function(){return ce.SchmancyTree}}),Object.defineProperty(exports,`SchmancyTypography`,{enumerable:!0,get:function(){return W.t}}),Object.defineProperty(exports,`SchmancyVisuallyHidden`,{enumerable:!0,get:function(){return me.SchmancyVisuallyHidden}}),exports.SchmancyWindow=O.t,Object.defineProperty(exports,`SchmnacyIconButton`,{enumerable:!0,get:function(){return v.SchmnacyIconButton}}),Object.defineProperty(exports,`Signal`,{enumerable:!0,get:function(){return $.Signal}}),exports.StepsController=J.StepsController,exports.ThemeHereIAm=d.r,exports.ThemeWhereAreYou=d.i,exports.WhereAreYouRicky=h.r,exports._activeHost=e.r,exports.aiBadge=c.O,exports.animateText=c.k,exports.area=t.S,exports.art=c.D,exports.beta=c.C,exports.bindState=n.t,exports.buildQueryString=t.t,exports.color=c.S,exports.compareActiveRoutes=t.n,exports.compareCustomElementConstructors=t.r,exports.compareRouteActions=t.i,Object.defineProperty(exports,`computed`,{enumerable:!0,get:function(){return $.computed}}),exports.confirm=b.t,exports.confirmClick=c.x,exports.createAnimation=s.p,exports.createDarkTonalPaletteFromBaseColor=X.s,exports.createDismissAnimation=s.m,exports.createLightTonalPaletteFromBaseColor=X.c,exports.createRevealAnimation=s.h,exports.createRouteCacheKey=t.a,exports.createScaleAnimation=s.g,exports.cursorGlow=u.t,exports.cycleText=c.b,exports.debounce=t.o,exports.decodeData=t.h,exports.decodeRouteState=t.s,exports.deepMerge=t.c,exports.delayContext=C.delayContext,exports.depthOfField=c.y,exports.discover=p.r,exports.discoverAllElements=p.i,exports.discoverAnyComponent=p.a,exports.discoverComponent=p.o,exports.discoverElement=p.s,exports.dismissAll=b.n,exports.drag=c._,exports.drop=c.v,exports.effect=n.n,exports.encodeData=t.g,exports.encodeRouteState=t.l,exports.extractQueryParams=t.u,exports.fill=c.m,exports.flip=V.r,exports.formSubmitState=k.n,exports.formatTheme=X.l,exports.fromResizeObserver=f.t,exports.fullHeight=f.n,exports.fullWidth=f.r,exports.futureCell=c.E,exports.fyi=c.p,exports.getEasing=s._,exports.getTagName=t.d,exports.gravity=ne.t,exports.hummingbird=c.f,exports.intersect=c.d,exports.intersection$=Z.n,exports.isBeta=c.w,exports.isObject=t.f,exports.lazy=ee.t,exports.lightbox=V.t,exports.lightboxDirective=V.n,exports.liquid=c.u,exports.livingBorder=c.l,exports.longPress=c.c,exports.magnetic=m.t,exports.missedPunch=c.s,exports.mutationObserver=K.t,exports.nebula=c.o,exports.normalizeTagName=t.p,exports.notify=R.t,exports.notifyProgress=R.n,exports.observe=n.r,exports.openOverlays$=b.r,exports.overflowWithin=c.r,exports.overlayEvents=b.i,exports.overlayStack=te.t,exports.prefersReducedMotion=s.v,exports.prompt=b.a,exports.reducedMotion$=l.t,exports.reveal=c.a,exports.ripple=c.i,exports.routerHistory=t.C,exports.sanitizeRouteState=t.m,exports.schmancyContentDrawer=h.C,exports.schmancyContext=n.i,exports.schmancyNavDrawer=h.m,exports.schmancySound=r.t,exports.schmancyTheme=d.t,exports.setBetaPredicate=c.T,exports.show=b.o,exports.similarity=a.t,exports.sound=r.n,exports.state=n.a,exports.stateFromObservable=n.o,exports.stepsContext=J.stepsContext,exports.tailwindAnimations=s.y,exports.tailwindStyles=X.o,exports.teleport=h.i,exports.theme=d.n,exports.themeContext=e.d,exports.tooltip=se.tooltip,exports.typewriter=ue.typewriter,exports.urgent=c.n,exports.validateInitialDateRange=x.n,exports.windowManager=O.n,exports.workingSnake=c.t;
package/dist/index.js CHANGED
@@ -7,7 +7,7 @@ import { n as P, t as F } from "./audio-x9oLVKBH.js";
7
7
  import { t as I } from "./search-MvIBA93K.js";
8
8
  import { t as L } from "./input-chip-NBsnZkzu.js";
9
9
  import { _ as R, a as z, c as B, d as V, f as H, g as U, h as W, i as G, l as K, m as q, n as J, o as Y, p as X, r as Z, s as re, t as ie, u as ae, v as oe, y as se } from "./animation-DCznELuT.js";
10
- import { C as ce, D as le, E as ue, O as de, S as fe, T as pe, _ as me, a as he, b as ge, c as _e, d as ve, f as ye, g as be, h as xe, i as Se, k as Ce, l as we, m as Te, n as Ee, o as De, p as Oe, r as ke, s as Ae, t as je, u as Me, v as Ne, w as Pe, x as Fe, y as Ie } from "./directives-DZzxV3Hh.js";
10
+ import { C as ce, D as le, E as ue, O as de, S as fe, T as pe, _ as me, a as he, b as ge, c as _e, d as ve, f as ye, g as be, h as xe, i as Se, k as Ce, l as we, m as Te, n as Ee, o as De, p as Oe, r as ke, s as Ae, t as je, u as Me, v as Ne, w as Pe, x as Fe, y as Ie } from "./directives-D7AoVfPK.js";
11
11
  import { t as Le } from "./reduced-motion-D-L12p7G.js";
12
12
  import { t as Re } from "./cursor-glow-Ah7VXSj7.js";
13
13
  import { i as ze, n as Be, r as Ve, t as He } from "./theme.service-mRlvWZVs.js";
@@ -15,19 +15,19 @@ import { n as Ue, r as We, t as Ge } from "./layout-CJ01zE9V.js";
15
15
  import { t as Ke } from "./overlay-stack-D2rgxQLh.js";
16
16
  import { t as qe } from "./gravity-sVK3zGBF.js";
17
17
  import { a as Je, i as Ye, n as Xe, o as Ze, r as Qe, s as $e, t as et } from "./discovery.service-DZFxtRwW.js";
18
- import { t as tt } from "./magnetic-B2VKNfDu.js";
19
- import { C as nt, S as rt, T as it, _ as at, a as ot, b as st, c as ct, d as lt, f as ut, g as dt, h as ft, i as pt, l as Q, m as mt, n as ht, o as gt, p as _t, r as vt, s as yt, t as bt, u as xt, v as St, w as Ct, x as wt, y as Tt } from "./src-DavVEUeO.js";
18
+ import { t as tt } from "./magnetic-DaOOv5Dz.js";
19
+ import { C as nt, S as rt, T as it, _ as at, a as ot, b as st, c as ct, d as lt, f as ut, g as dt, h as ft, i as pt, l as Q, m as mt, n as ht, o as gt, p as _t, r as vt, s as yt, t as bt, u as xt, v as St, w as Ct, x as wt, y as Tt } from "./src-CdX0NekF.js";
20
20
  import { t as Et } from "./boat-CEaQaCmG.js";
21
- import { t as Dt } from "./button-BnGN6SsV.js";
21
+ import { t as Dt } from "./button-qARUurjf.js";
22
22
  import { SchmnacyIconButton as Ot } from "./button.js";
23
23
  import { t as kt } from "./checkbox-t__wRS-9.js";
24
- import { n as $, r as At, t as jt } from "./chips-B8HM25xv.js";
24
+ import { n as $, r as At, t as jt } from "./chips-xaoSmwBK.js";
25
25
  import { SchmancyConnectivityStatus as Mt } from "./connectivity.js";
26
- import { a as Nt, i as Pt, n as Ft, o as It, r as Lt, t as Rt } from "./overlay.service-Dq2X6ibl.js";
27
- import { n as zt, t as Bt } from "./date-range-CObvXmZ4.js";
26
+ import { a as Nt, i as Pt, n as Ft, o as It, r as Lt, t as Rt } from "./overlay.service-zx465FI8.js";
27
+ import { n as zt, t as Bt } from "./date-range-8OkCahnR.js";
28
28
  import { t as Vt } from "./date-range-inline-BEP-oWJZ.js";
29
29
  import { SchmancyDelay as Ht, delayContext as Ut } from "./delay.js";
30
- import { t as Wt } from "./details-nRdT8J-W.js";
30
+ import { t as Wt } from "./details-BO_3CCNn.js";
31
31
  import { SchmancyDropdown as Gt, SchmancyDropdownContent as Kt } from "./dropdown.js";
32
32
  import { n as qt, t as Jt } from "./surface-gZpeCF6E.js";
33
33
  import { n as Yt, t as Xt } from "./expand-2TTbmm_z.js";
@@ -38,7 +38,7 @@ import { n as nn, t as rn } from "./input-2OR6wjfT.js";
38
38
  import { n as an, t as on } from "./radio-group-DnHhGrXp.js";
39
39
  import { SchmancyRange as sn } from "./range.js";
40
40
  import { t as cn } from "./theme.interface-odQEpZZH.js";
41
- import { t as ln } from "./select-gRJb1TEf.js";
41
+ import { t as ln } from "./select-C_ljy5k4.js";
42
42
  import { SchmancySwitch as un } from "./switch.js";
43
43
  import { SchmancyFormSummary as dn } from "./form.js";
44
44
  import { t as fn } from "./iframe-t5zo89Fs.js";
@@ -48,9 +48,9 @@ import { SchmancyScroll as vn } from "./layout.js";
48
48
  import { i as yn, n as bn, r as xn, t as Sn } from "./lightbox-Droe9dYY.js";
49
49
  import { n as Cn, r as wn, t as Tn } from "./list-DzAWv99q.js";
50
50
  import { SchmancyNavigationRail as En, SchmancyNavigationRailItem as Dn } from "./navigation-rail.js";
51
- import { t as On } from "./overlay-BVdgWkIj.js";
51
+ import { t as On } from "./overlay-BWcB2pRx.js";
52
52
  import { t as kn } from "./typography-DXyf-KdK.js";
53
- import { t as An } from "./overlay.confirm-body-BYPEKZtR.js";
53
+ import { t as An } from "./overlay.confirm-body-B7W0DOGS.js";
54
54
  import { t as jn } from "./rxjs-utils-d-ivVN84.js";
55
55
  import { SchmancySlide as Mn, SchmancySlider as Nn } from "./slider.js";
56
56
  import { SchmancyStep as Pn, SchmancyStepsContainer as Fn, StepsController as In, stepsContext as Ln } from "./steps.js";
@@ -1 +1 @@
1
- require(`./chunk-CncqDLb2.cjs`);const e=require(`./animation-CCOIW4wJ.cjs`),t=require(`./reduced-motion-Ds-HjMzn.cjs`);let n=require(`rxjs`),r=require(`rxjs/operators`),i=require(`lit/async-directive.js`),a=require(`lit/directive.js`);var o=class extends i.AsyncDirective{constructor(...e){super(...e),this.teardown$=new n.Subject,this.strength=4,this.radius=100}render(e){}update(t,[n]){if(t.type!==a.PartType.ELEMENT)throw Error(`magnetic directive must be used on an element`);let r=JSON.stringify(n??{});this.element&&r===this.prevKey||(this.prevKey=r,this.element=t.element,this.strength=n?.strength??4,this.radius=n?.radius??100,this.element.style.transition=`translate ${e.f.duration}ms ${e.f.easingFallback}`,this.teardown$.next(),this.setupMagnetic())}reconnected(){this.teardown$.next(),this.setupMagnetic()}setupMagnetic(){if(t.t.value)return;let e=this.element.parentElement??document;(0,n.merge)((0,n.fromEvent)(this.element,`mouseenter`).pipe((0,r.map)(()=>(this.element.style.willChange=`translate`,this.cachedRect=this.element.getBoundingClientRect(),null))),(0,n.fromEvent)(e,`mousemove`).pipe((0,r.auditTime)(0,n.animationFrameScheduler),(0,r.map)(e=>{let t=this.cachedRect??this.element.getBoundingClientRect(),n=t.left+t.width/2,r=t.top+t.height/2,i=e.clientX-n,a=e.clientY-r,o=Math.sqrt(i*i+a*a);if(o<this.radius&&o>0){let e=(1-o/this.radius)*this.strength;return{x:i/o*e,y:a/o*e}}return{x:0,y:0}})),(0,n.fromEvent)(e,`mouseleave`).pipe((0,r.map)(()=>(this.element.style.willChange=``,this.cachedRect=void 0,{x:0,y:0}))),t.t.pipe((0,r.map)(e=>(e&&(this.element.style.translate=``,this.element.style.willChange=``),null)))).pipe((0,r.takeUntil)(this.teardown$)).subscribe(e=>{e&&(this.element.style.translate=`${e.x}px ${e.y}px`)})}disconnected(){this.teardown$.next(),this.element&&(this.element.style.translate=``,this.element.style.willChange=``)}},s=(0,a.directive)(o);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
1
+ require(`./chunk-CncqDLb2.cjs`);const e=require(`./animation-CCOIW4wJ.cjs`),t=require(`./reduced-motion-Ds-HjMzn.cjs`);let n=require(`rxjs`),r=require(`rxjs/operators`),i=require(`lit/async-directive.js`),a=require(`lit/directive.js`);var o=class extends i.AsyncDirective{constructor(...e){super(...e),this.teardown$=new n.Subject,this.strength=4,this.radius=100}render(e){}update(t,[n]){if(t.type!==a.PartType.ELEMENT)throw Error(`magnetic directive must be used on an element`);let r=JSON.stringify(n??{});this.element&&r===this.prevKey||(this.prevKey=r,this.element=t.element,this.strength=n?.strength??4,this.radius=n?.radius??100,this.element.style.transition=`translate ${e.f.duration}ms ${e.f.easingFallback}`,this.teardown$.next(),this.setupMagnetic())}reconnected(){this.teardown$.next(),this.setupMagnetic()}setupMagnetic(){if(t.t.value)return;let e=this.element.parentElement??document;(0,n.merge)((0,n.fromEvent)(this.element,`mouseenter`).pipe((0,r.map)(()=>(this.element.style.willChange=`translate`,this.cachedRect=this.element.getBoundingClientRect(),null))),(0,n.fromEvent)(e,`mousemove`).pipe((0,r.auditTime)(0,n.animationFrameScheduler),(0,r.filter)(()=>this.element.checkVisibility?.({contentVisibilityAuto:!0,checkOpacity:!0,checkVisibilityCSS:!0})??!0),(0,r.map)(e=>{let t=this.cachedRect??this.element.getBoundingClientRect(),n=t.left+t.width/2,r=t.top+t.height/2,i=e.clientX-n,a=e.clientY-r,o=Math.sqrt(i*i+a*a);if(o<this.radius&&o>0){let e=(1-o/this.radius)*this.strength;return{x:i/o*e,y:a/o*e}}return{x:0,y:0}})),(0,n.fromEvent)(e,`mouseleave`).pipe((0,r.map)(()=>(this.element.style.willChange=``,this.cachedRect=void 0,{x:0,y:0}))),t.t.pipe((0,r.map)(e=>(e&&(this.element.style.translate=``,this.element.style.willChange=``),null)))).pipe((0,r.takeUntil)(this.teardown$)).subscribe(e=>{e&&(this.element.style.translate=`${e.x}px ${e.y}px`)})}disconnected(){this.teardown$.next(),this.element&&(this.element.style.translate=``,this.element.style.willChange=``)}},s=(0,a.directive)(o);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magnetic-DKtc4umC.cjs","names":[],"sources":["../src/directives/magnetic.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { animationFrameScheduler, fromEvent, merge, Subject } from 'rxjs'\nimport { auditTime, filter, map, takeUntil } from 'rxjs/operators'\nimport { SPRING_SNAPPY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface MagneticOptions {\n\t/** Max displacement in pixels (default: 4) */\n\tstrength?: number\n\t/** Activation radius in pixels (default: 100) */\n\tradius?: number\n}\n\n/**\n * Magnetic directive — elements lean toward the cursor with spring physics.\n *\n * Uses `style.translate` (CSS individual transform) so it composes\n * with existing transforms on the element.\n *\n * @example\n * ```html\n * <schmancy-button ${magnetic()}>Submit</schmancy-button>\n * <schmancy-icon-button ${magnetic({ strength: 6, radius: 120 })}>add</schmancy-icon-button>\n * ```\n */\nclass MagneticDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate readonly teardown$ = new Subject<void>()\n\tprivate strength = 4\n\tprivate radius = 100\n\tprivate prevKey?: string\n\tprivate cachedRect?: DOMRect\n\n\trender(_options?: MagneticOptions) {\n\t\treturn undefined\n\t}\n\n\toverride update(part: ElementPart, [options]: [MagneticOptions?]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('magnetic directive must be used on an element')\n\t\t}\n\n\t\tconst key = JSON.stringify(options ?? {})\n\t\tif (this.element && key === this.prevKey) return undefined\n\t\tthis.prevKey = key\n\n\t\tthis.element = part.element as HTMLElement\n\t\tthis.strength = options?.strength ?? 4\n\t\tthis.radius = options?.radius ?? 100\n\n\t\tthis.element.style.transition = `translate ${SPRING_SNAPPY.duration}ms ${SPRING_SNAPPY.easingFallback}`\n\n\t\tthis.teardown$.next()\n\t\tthis.setupMagnetic()\n\n\t\treturn undefined\n\t}\n\n\toverride reconnected() {\n\t\tthis.teardown$.next()\n\t\tthis.setupMagnetic()\n\t}\n\n\tprivate setupMagnetic() {\n\t\tif (reducedMotion$.value) return\n\n\t\tconst target = this.element.parentElement ?? document\n\n\t\tconst enter$ = fromEvent(this.element, 'mouseenter').pipe(\n\t\t\tmap(() => {\n\t\t\t\tthis.element.style.willChange = 'translate'\n\t\t\t\tthis.cachedRect = this.element.getBoundingClientRect()\n\t\t\t\treturn null\n\t\t\t}),\n\t\t)\n\n\t\tconst move$ = fromEvent<MouseEvent>(target, 'mousemove').pipe(\n\t\t\tauditTime(0, animationFrameScheduler),\n\t\t\tfilter(() =>\n\t\t\t\tthis.element.checkVisibility?.({\n\t\t\t\t\tcontentVisibilityAuto: true,\n\t\t\t\t\tcheckOpacity: true,\n\t\t\t\t\tcheckVisibilityCSS: true,\n\t\t\t\t} as CheckVisibilityOptions) ?? true,\n\t\t\t),\n\t\t\tmap(e => {\n\t\t\t\tconst rect = this.cachedRect ?? this.element.getBoundingClientRect()\n\t\t\t\tconst centerX = rect.left + rect.width / 2\n\t\t\t\tconst centerY = rect.top + rect.height / 2\n\t\t\t\tconst dx = e.clientX - centerX\n\t\t\t\tconst dy = e.clientY - centerY\n\t\t\t\tconst distance = Math.sqrt(dx * dx + dy * dy)\n\n\t\t\t\tif (distance < this.radius && distance > 0) {\n\t\t\t\t\tconst pull = (1 - distance / this.radius) * this.strength\n\t\t\t\t\treturn { x: (dx / distance) * pull, y: (dy / distance) * pull }\n\t\t\t\t}\n\t\t\t\treturn { x: 0, y: 0 }\n\t\t\t}),\n\t\t)\n\n\t\tconst leave$ = fromEvent(target, 'mouseleave').pipe(\n\t\t\tmap(() => {\n\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\tthis.cachedRect = undefined\n\t\t\t\treturn { x: 0, y: 0 }\n\t\t\t}),\n\t\t)\n\n\t\t// Also tear down if user enables reduced motion\n\t\tconst motionChange$ = reducedMotion$.pipe(\n\t\t\tmap(reduced => {\n\t\t\t\tif (reduced) {\n\t\t\t\t\tthis.element.style.translate = ''\n\t\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\t}\n\t\t\t\treturn null\n\t\t\t}),\n\t\t)\n\n\t\tmerge(enter$, move$, leave$, motionChange$)\n\t\t\t.pipe(takeUntil(this.teardown$))\n\t\t\t.subscribe(pos => {\n\t\t\t\tif (pos) {\n\t\t\t\t\tthis.element.style.translate = `${pos.x}px ${pos.y}px`\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\toverride disconnected() {\n\t\tthis.teardown$.next()\n\t\tif (this.element) {\n\t\t\tthis.element.style.translate = ''\n\t\t\tthis.element.style.willChange = ''\n\t\t}\n\t}\n}\n\nexport const magnetic = directive(MagneticDirective)\n"],"mappings":"2OA0BA,IAAM,EAAN,cAAgC,EAAA,cAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,UAEF,IAAI,EAAA,QAAA,KAAA,SACd,EAAA,KAAA,OACF,GAAA,CAIjB,OAAO,EAAA,CAEP,CAEA,OAAgB,EAAA,CAAoB,GAAA,CACnC,GAAI,EAAK,OAAS,EAAA,SAAS,QAC1B,MAAU,MAAM,+CAAA,EAGjB,IAAM,EAAM,KAAK,UAAU,GAAW,CAAC,CAAA,EACnC,KAAK,SAAW,IAAQ,KAAK,UACjC,KAAK,QAAU,EAEf,KAAK,QAAU,EAAK,QACpB,KAAK,SAAW,GAAS,UAAY,EACrC,KAAK,OAAS,GAAS,QAAU,IAEjC,KAAK,QAAQ,MAAM,WAAa,aAAa,EAAA,EAAc,SAAA,KAAc,EAAA,EAAc,iBAEvF,KAAK,UAAU,KAAA,EACf,KAAK,cAAA,EAGN,CAEA,aAAA,CACC,KAAK,UAAU,KAAA,EACf,KAAK,cAAA,CACN,CAEA,eAAA,CACC,GAAI,EAAA,EAAe,MAAO,OAE1B,IAAM,EAAS,KAAK,QAAQ,eAAiB,UAsD7C,EAAA,EAAA,QAAA,EAAA,EAAA,WApDyB,KAAK,QAAS,YAAA,EAAc,MAAA,EAAA,EAAA,UAEnD,KAAK,QAAQ,MAAM,WAAa,YAChC,KAAK,WAAa,KAAK,QAAQ,sBAAA,EACxB,KAAA,CAAA,GAgDH,EAAA,EAAA,WA5C8B,EAAQ,WAAA,EAAa,MAAA,EAAA,EAAA,WAC9C,EAAG,EAAA,uBAAA,GAAuB,EAAA,EAAA,YAEnC,KAAK,QAAQ,kBAAkB,CAC9B,sBAAA,CAAuB,EACvB,aAAA,CAAc,EACd,mBAAA,CAAoB,CAAA,CAAA,GAAA,CACW,CAAA,GACjC,EAAA,EAAA,KACI,GAAA,CACH,IAAM,EAAO,KAAK,YAAc,KAAK,QAAQ,sBAAA,EACvC,EAAU,EAAK,KAAO,EAAK,MAAQ,EACnC,EAAU,EAAK,IAAM,EAAK,OAAS,EACnC,EAAK,EAAE,QAAU,EACjB,EAAK,EAAE,QAAU,EACjB,EAAW,KAAK,KAAK,EAAK,EAAK,EAAK,CAAA,EAE1C,GAAI,EAAW,KAAK,QAAU,EAAW,EAAG,CAC3C,IAAM,GAAQ,EAAI,EAAW,KAAK,QAAU,KAAK,SACjD,MAAO,CAAE,EAAI,EAAK,EAAY,EAAM,EAAI,EAAK,EAAY,CAAA,CAC1D,CACA,MAAO,CAAE,EAAG,EAAG,EAAG,CAAA,CAAA,CAAA,CAAA,GAuBN,EAAA,EAAA,WAnBW,EAAQ,YAAA,EAAc,MAAA,EAAA,EAAA,UAE7C,KAAK,QAAQ,MAAM,WAAa,GAChC,KAAK,WAAA,IAAa,GACX,CAAE,EAAG,EAAG,EAAG,CAAA,EAAA,CAAA,EAKE,EAAA,EAAe,MAAA,EAAA,EAAA,KAChC,IACC,IACH,KAAK,QAAQ,MAAM,UAAY,GAC/B,KAAK,QAAQ,MAAM,WAAa,IAE1B,KAAA,CAAA,CAAA,EAKP,MAAA,EAAA,EAAA,WAAe,KAAK,SAAA,CAAA,EACpB,UAAU,GAAA,CACN,IACH,KAAK,QAAQ,MAAM,UAAY,GAAG,EAAI,EAAA,KAAO,EAAI,EAAA,IAAA,CAAA,CAGrD,CAEA,cAAA,CACC,KAAK,UAAU,KAAA,EACX,KAAK,UACR,KAAK,QAAQ,MAAM,UAAY,GAC/B,KAAK,QAAQ,MAAM,WAAa,GAElC,CAAA,EAGY,GAAA,EAAA,EAAA,WAAqB,CAAA,EAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,CAAA,CAAA,CAAA"}
@@ -1,16 +1,16 @@
1
1
  import { f as e } from "./animation-DCznELuT.js";
2
2
  import { t } from "./reduced-motion-D-L12p7G.js";
3
3
  import { Subject as n, animationFrameScheduler as r, fromEvent as i, merge as a } from "rxjs";
4
- import { auditTime as o, map as s, takeUntil as c } from "rxjs/operators";
5
- import { AsyncDirective as l } from "lit/async-directive.js";
6
- import { PartType as u, directive as d } from "lit/directive.js";
7
- var f = d(class extends l {
4
+ import { auditTime as o, filter as s, map as c, takeUntil as l } from "rxjs/operators";
5
+ import { AsyncDirective as u } from "lit/async-directive.js";
6
+ import { PartType as d, directive as f } from "lit/directive.js";
7
+ var p = f(class extends u {
8
8
  constructor(...e) {
9
9
  super(...e), this.teardown$ = new n(), this.strength = 4, this.radius = 100;
10
10
  }
11
11
  render(e) {}
12
12
  update(t, [n]) {
13
- if (t.type !== u.ELEMENT) throw Error("magnetic directive must be used on an element");
13
+ if (t.type !== d.ELEMENT) throw Error("magnetic directive must be used on an element");
14
14
  let r = JSON.stringify(n ?? {});
15
15
  this.element && r === this.prevKey || (this.prevKey = r, this.element = t.element, this.strength = n?.strength ?? 4, this.radius = n?.radius ?? 100, this.element.style.transition = `translate ${e.duration}ms ${e.easingFallback}`, this.teardown$.next(), this.setupMagnetic());
16
16
  }
@@ -20,7 +20,11 @@ var f = d(class extends l {
20
20
  setupMagnetic() {
21
21
  if (t.value) return;
22
22
  let e = this.element.parentElement ?? document;
23
- a(i(this.element, "mouseenter").pipe(s(() => (this.element.style.willChange = "translate", this.cachedRect = this.element.getBoundingClientRect(), null))), i(e, "mousemove").pipe(o(0, r), s((e) => {
23
+ a(i(this.element, "mouseenter").pipe(c(() => (this.element.style.willChange = "translate", this.cachedRect = this.element.getBoundingClientRect(), null))), i(e, "mousemove").pipe(o(0, r), s(() => this.element.checkVisibility?.({
24
+ contentVisibilityAuto: !0,
25
+ checkOpacity: !0,
26
+ checkVisibilityCSS: !0
27
+ }) ?? !0), c((e) => {
24
28
  let t = this.cachedRect ?? this.element.getBoundingClientRect(), n = t.left + t.width / 2, r = t.top + t.height / 2, i = e.clientX - n, a = e.clientY - r, o = Math.sqrt(i * i + a * a);
25
29
  if (o < this.radius && o > 0) {
26
30
  let e = (1 - o / this.radius) * this.strength;
@@ -33,10 +37,10 @@ var f = d(class extends l {
33
37
  x: 0,
34
38
  y: 0
35
39
  };
36
- })), i(e, "mouseleave").pipe(s(() => (this.element.style.willChange = "", this.cachedRect = void 0, {
40
+ })), i(e, "mouseleave").pipe(c(() => (this.element.style.willChange = "", this.cachedRect = void 0, {
37
41
  x: 0,
38
42
  y: 0
39
- }))), t.pipe(s((e) => (e && (this.element.style.translate = "", this.element.style.willChange = ""), null)))).pipe(c(this.teardown$)).subscribe((e) => {
43
+ }))), t.pipe(c((e) => (e && (this.element.style.translate = "", this.element.style.willChange = ""), null)))).pipe(l(this.teardown$)).subscribe((e) => {
40
44
  e && (this.element.style.translate = `${e.x}px ${e.y}px`);
41
45
  });
42
46
  }
@@ -44,4 +48,4 @@ var f = d(class extends l {
44
48
  this.teardown$.next(), this.element && (this.element.style.translate = "", this.element.style.willChange = "");
45
49
  }
46
50
  });
47
- export { f as t };
51
+ export { p as t };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magnetic-DaOOv5Dz.js","names":[],"sources":["../src/directives/magnetic.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { animationFrameScheduler, fromEvent, merge, Subject } from 'rxjs'\nimport { auditTime, filter, map, takeUntil } from 'rxjs/operators'\nimport { SPRING_SNAPPY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface MagneticOptions {\n\t/** Max displacement in pixels (default: 4) */\n\tstrength?: number\n\t/** Activation radius in pixels (default: 100) */\n\tradius?: number\n}\n\n/**\n * Magnetic directive — elements lean toward the cursor with spring physics.\n *\n * Uses `style.translate` (CSS individual transform) so it composes\n * with existing transforms on the element.\n *\n * @example\n * ```html\n * <schmancy-button ${magnetic()}>Submit</schmancy-button>\n * <schmancy-icon-button ${magnetic({ strength: 6, radius: 120 })}>add</schmancy-icon-button>\n * ```\n */\nclass MagneticDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate readonly teardown$ = new Subject<void>()\n\tprivate strength = 4\n\tprivate radius = 100\n\tprivate prevKey?: string\n\tprivate cachedRect?: DOMRect\n\n\trender(_options?: MagneticOptions) {\n\t\treturn undefined\n\t}\n\n\toverride update(part: ElementPart, [options]: [MagneticOptions?]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('magnetic directive must be used on an element')\n\t\t}\n\n\t\tconst key = JSON.stringify(options ?? {})\n\t\tif (this.element && key === this.prevKey) return undefined\n\t\tthis.prevKey = key\n\n\t\tthis.element = part.element as HTMLElement\n\t\tthis.strength = options?.strength ?? 4\n\t\tthis.radius = options?.radius ?? 100\n\n\t\tthis.element.style.transition = `translate ${SPRING_SNAPPY.duration}ms ${SPRING_SNAPPY.easingFallback}`\n\n\t\tthis.teardown$.next()\n\t\tthis.setupMagnetic()\n\n\t\treturn undefined\n\t}\n\n\toverride reconnected() {\n\t\tthis.teardown$.next()\n\t\tthis.setupMagnetic()\n\t}\n\n\tprivate setupMagnetic() {\n\t\tif (reducedMotion$.value) return\n\n\t\tconst target = this.element.parentElement ?? document\n\n\t\tconst enter$ = fromEvent(this.element, 'mouseenter').pipe(\n\t\t\tmap(() => {\n\t\t\t\tthis.element.style.willChange = 'translate'\n\t\t\t\tthis.cachedRect = this.element.getBoundingClientRect()\n\t\t\t\treturn null\n\t\t\t}),\n\t\t)\n\n\t\tconst move$ = fromEvent<MouseEvent>(target, 'mousemove').pipe(\n\t\t\tauditTime(0, animationFrameScheduler),\n\t\t\tfilter(() =>\n\t\t\t\tthis.element.checkVisibility?.({\n\t\t\t\t\tcontentVisibilityAuto: true,\n\t\t\t\t\tcheckOpacity: true,\n\t\t\t\t\tcheckVisibilityCSS: true,\n\t\t\t\t} as CheckVisibilityOptions) ?? true,\n\t\t\t),\n\t\t\tmap(e => {\n\t\t\t\tconst rect = this.cachedRect ?? this.element.getBoundingClientRect()\n\t\t\t\tconst centerX = rect.left + rect.width / 2\n\t\t\t\tconst centerY = rect.top + rect.height / 2\n\t\t\t\tconst dx = e.clientX - centerX\n\t\t\t\tconst dy = e.clientY - centerY\n\t\t\t\tconst distance = Math.sqrt(dx * dx + dy * dy)\n\n\t\t\t\tif (distance < this.radius && distance > 0) {\n\t\t\t\t\tconst pull = (1 - distance / this.radius) * this.strength\n\t\t\t\t\treturn { x: (dx / distance) * pull, y: (dy / distance) * pull }\n\t\t\t\t}\n\t\t\t\treturn { x: 0, y: 0 }\n\t\t\t}),\n\t\t)\n\n\t\tconst leave$ = fromEvent(target, 'mouseleave').pipe(\n\t\t\tmap(() => {\n\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\tthis.cachedRect = undefined\n\t\t\t\treturn { x: 0, y: 0 }\n\t\t\t}),\n\t\t)\n\n\t\t// Also tear down if user enables reduced motion\n\t\tconst motionChange$ = reducedMotion$.pipe(\n\t\t\tmap(reduced => {\n\t\t\t\tif (reduced) {\n\t\t\t\t\tthis.element.style.translate = ''\n\t\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\t}\n\t\t\t\treturn null\n\t\t\t}),\n\t\t)\n\n\t\tmerge(enter$, move$, leave$, motionChange$)\n\t\t\t.pipe(takeUntil(this.teardown$))\n\t\t\t.subscribe(pos => {\n\t\t\t\tif (pos) {\n\t\t\t\t\tthis.element.style.translate = `${pos.x}px ${pos.y}px`\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\toverride disconnected() {\n\t\tthis.teardown$.next()\n\t\tif (this.element) {\n\t\t\tthis.element.style.translate = ''\n\t\t\tthis.element.style.willChange = ''\n\t\t}\n\t}\n}\n\nexport const magnetic = directive(MagneticDirective)\n"],"mappings":";;;;;;AA0BA,IAiHa,IAAW,EAjHxB,cAAgC,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,YAEF,IAAI,KAAA,KAAA,WACd,GAAA,KAAA,SACF;CAAA;CAIjB,OAAO,GAAA,CAEP;CAEA,OAAgB,GAAA,CAAoB,IAAA;EACnC,IAAI,EAAK,SAAS,EAAS,SAC1B,MAAU,MAAM,+CAAA;EAGjB,IAAM,IAAM,KAAK,UAAU,KAAW,CAAC,CAAA;EACnC,KAAK,WAAW,MAAQ,KAAK,YACjC,KAAK,UAAU,GAEf,KAAK,UAAU,EAAK,SACpB,KAAK,WAAW,GAAS,YAAY,GACrC,KAAK,SAAS,GAAS,UAAU,KAEjC,KAAK,QAAQ,MAAM,aAAa,aAAa,EAAc,SAAA,KAAc,EAAc,kBAEvF,KAAK,UAAU,KAAA,GACf,KAAK,cAAA;CAGN;CAEA,cAAA;EACC,KAAK,UAAU,KAAA,GACf,KAAK,cAAA;CACN;CAEA,gBAAA;EACC,IAAI,EAAe,OAAO;EAE1B,IAAM,IAAS,KAAK,QAAQ,iBAAiB;EAsD7C,EApDe,EAAU,KAAK,SAAS,YAAA,EAAc,KACpD,SACC,KAAK,QAAQ,MAAM,aAAa,aAChC,KAAK,aAAa,KAAK,QAAQ,sBAAA,GACxB,KAAA,CAAA,GAIK,EAAsB,GAAQ,WAAA,EAAa,KACxD,EAAU,GAAG,CAAA,GACb,QACC,KAAK,QAAQ,kBAAkB;GAC9B,uBAAA,CAAuB;GACvB,cAAA,CAAc;GACd,oBAAA,CAAoB;EAAA,CAAA,KAAA,CACW,CAAA,GAEjC,GAAI,MAAA;GACH,IAAM,IAAO,KAAK,cAAc,KAAK,QAAQ,sBAAA,GACvC,IAAU,EAAK,OAAO,EAAK,QAAQ,GACnC,IAAU,EAAK,MAAM,EAAK,SAAS,GACnC,IAAK,EAAE,UAAU,GACjB,IAAK,EAAE,UAAU,GACjB,IAAW,KAAK,KAAK,IAAK,IAAK,IAAK,CAAA;GAE1C,IAAI,IAAW,KAAK,UAAU,IAAW,GAAG;IAC3C,IAAM,KAAQ,IAAI,IAAW,KAAK,UAAU,KAAK;IACjD,OAAO;KAAE,GAAI,IAAK,IAAY;KAAM,GAAI,IAAK,IAAY;IAAA;GAC1D;GACA,OAAO;IAAE,GAAG;IAAG,GAAG;GAAA;EAAA,CAAA,CAAA,GAIL,EAAU,GAAQ,YAAA,EAAc,KAC9C,SACC,KAAK,QAAQ,MAAM,aAAa,IAChC,KAAK,aAAA,KAAa,GACX;GAAE,GAAG;GAAG,GAAG;EAAA,EAAA,CAAA,GAKE,EAAe,KACpC,GAAI,OACC,MACH,KAAK,QAAQ,MAAM,YAAY,IAC/B,KAAK,QAAQ,MAAM,aAAa,KAE1B,KAAA,CAAA,CAAA,EAKP,KAAK,EAAU,KAAK,SAAA,CAAA,EACpB,WAAU,MAAA;GACN,MACH,KAAK,QAAQ,MAAM,YAAY,GAAG,EAAI,EAAA,KAAO,EAAI,EAAA;EAAA,CAAA;CAGrD;CAEA,eAAA;EACC,KAAK,UAAU,KAAA,GACX,KAAK,YACR,KAAK,QAAQ,MAAM,YAAY,IAC/B,KAAK,QAAQ,MAAM,aAAa;CAElC;AAAA,CAAA;AAAA,SAAA,KAAA"}
@@ -1,4 +1,4 @@
1
- require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`);const t=require(`./overlay.service-D4_SgGuT.cjs`);let n=require(`rxjs`),r=require(`lit/decorators.js`),i=require(`lit`);var a=class extends e.t{constructor(...e){super(...e),this.dismissParentMenu=()=>{this.dispatchEvent(new CustomEvent(`close`,{bubbles:!0,composed:!0}))}}static{this.styles=[i.css`
1
+ require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`);const t=require(`./overlay.service-CC4zckoV.cjs`);let n=require(`rxjs`),r=require(`lit/decorators.js`),i=require(`lit`);var a=class extends e.t{constructor(...e){super(...e),this.dismissParentMenu=()=>{this.dispatchEvent(new CustomEvent(`close`,{bubbles:!0,composed:!0}))}}static{this.styles=[i.css`
2
2
  :host {
3
3
  display: block;
4
4
  }
@@ -1 +1 @@
1
- {"version":3,"file":"menu-BNPbrAmd.cjs","names":[],"sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`]\n\n\tprivate dismissParentMenu = (): void => {\n\t\t// Bubbling 'close' is the protocol the overlay `show()` watches; the\n\t\t// enclosing `<schmancy-menu>` opens the menu via `show()` and this\n\t\t// completes the subscription, so the overlay tears itself down.\n\t\tthis.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item @click=${this.dismissParentMenu}>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query } from 'lit/decorators.js'\nimport { takeUntil } from 'rxjs'\nimport { show } from '../overlay/overlay.service'\n\n/**\n * Menu Component\n *\n * The overlay renders ONLY the raw menu items passed via the default slot.\n * NO <ul> wrapper, NO classes, NO additional markup. The overlay system\n * handles positioning (anchored at the trigger click) and dismissal.\n *\n * @example Basic menu with auto-dismiss\n * ```typescript\n * <schmancy-menu>\n * <schmancy-button slot=\"trigger\">Actions</schmancy-button>\n * <schmancy-menu-item @click=${() => editItem()}>Edit</schmancy-menu-item>\n * <schmancy-menu-item @click=${() => deleteItem()}>Delete</schmancy-menu-item>\n * </schmancy-menu>\n * ```\n * Note: `<schmancy-menu-item>` dispatches a bubbling 'close' event on click;\n * the overlay `show()` observable completes and the menu tears down.\n *\n * @example Custom component (manual dismiss)\n * ```typescript\n * <schmancy-menu>\n * <schmancy-icon-button slot=\"trigger\">settings</schmancy-icon-button>\n * <my-settings-form\n * @submit=${(e) => e.target.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))}\n * ></my-settings-form>\n * </schmancy-menu>\n * ```\n *\n * @slot trigger - Button to open menu (new naming)\n * @slot button - Button to open menu (backward compatible)\n * @slot default - Menu items or any custom component to display in the overlay\n */\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n`]\n\n\t@query('slot:not([name])')\n\tprivate menuSlot!: HTMLSlotElement\n\n\tprivate showMenu = (event: MouseEvent): void => {\n\t\tconst menuItems = this.menuSlot?.assignedElements() || []\n\t\tif (menuItems.length === 0) return\n\n\t\t// Move slot items into a fresh container so the overlay can adopt them\n\t\t// without leaving stale references in our shadow tree. The overlay\n\t\t// surface no longer ships padding, so the wrapper owns its breathing\n\t\t// room — menu items shouldn't collide with the surface edge.\n\t\tconst overlayContainer = document.createElement('div')\n\t\toverlayContainer.style.padding = '0.5rem'\n\t\tmenuItems.forEach(item => overlayContainer.appendChild(item))\n\n\t\t// Anchor at the click so the overlay system positions the menu\n\t\t// adjacent to the trigger; subscription completion (any dismissal —\n\t\t// item click → bubbling 'close', backdrop, Esc, disconnect) restores\n\t\t// the items as light DOM so the next open re-projects them.\n\t\tshow(overlayContainer, { anchor: event })\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe({\n\t\t\t\tcomplete: () => menuItems.forEach(item => this.appendChild(item)),\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"trigger\" @click=${this.showMenu}>\n\t\t\t\t<slot name=\"button\" @click=${this.showMenu}>\n\t\t\t\t\t<schmancy-icon-button>more_vert</schmancy-icon-button>\n\t\t\t\t</slot>\n\t\t\t</slot>\n\t\t\t<div hidden>\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"mappings":"2OAKe,IAAA,EAAA,cAA+B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,sBAAA,CAW5C,KAAK,cAAc,IAAI,YAAY,QAAS,CAAE,QAAA,CAAS,EAAM,SAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,KAAA,OAVxD,CAAC,EAAA,GAAG;;;;GAapB,QAAA,CACC,MAAO,GAAA,IAAI;gCACmB,KAAK,kBAAA;;;GAIpC,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eArBc,oBAAA,CAAA,EAAoB,CAAA,ECmCpB,IAAA,EAAA,cAA2B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,SAWrB,GAAA,CACnB,IAAM,EAAY,KAAK,UAAU,iBAAA,GAAsB,CAAA,EACvD,GAAI,EAAU,SAAW,EAAG,OAM5B,IAAM,EAAmB,SAAS,cAAc,KAAA,EAChD,EAAiB,MAAM,QAAU,SACjC,EAAU,QAAQ,GAAQ,EAAiB,YAAY,CAAA,CAAA,EAMvD,EAAA,EAAK,EAAkB,CAAE,OAAQ,CAAA,CAAA,EAC/B,MAAA,EAAA,EAAA,WAAe,KAAK,aAAA,CAAA,EACpB,UAAU,CACV,aAAgB,EAAU,QAAQ,GAAQ,KAAK,YAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,KAAA,OA7B9C,CAAC,EAAA,GAAG;;;;;GAiCpB,QAAA,CACC,MAAO,GAAA,IAAI;iCACoB,KAAK,SAAA;iCACL,KAAK,SAAA;;;;;;;GAQrC,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,OArCO,kBAAA,CAAA,EAAkB,EAAA,UAAA,WAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eATX,eAAA,CAAA,EAAe,CAAA"}
1
+ {"version":3,"file":"menu-B5EKUeeD.cjs","names":[],"sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`]\n\n\tprivate dismissParentMenu = (): void => {\n\t\t// Bubbling 'close' is the protocol the overlay `show()` watches; the\n\t\t// enclosing `<schmancy-menu>` opens the menu via `show()` and this\n\t\t// completes the subscription, so the overlay tears itself down.\n\t\tthis.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item @click=${this.dismissParentMenu}>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query } from 'lit/decorators.js'\nimport { takeUntil } from 'rxjs'\nimport { show } from '../overlay/overlay.service'\n\n/**\n * Menu Component\n *\n * The overlay renders ONLY the raw menu items passed via the default slot.\n * NO <ul> wrapper, NO classes, NO additional markup. The overlay system\n * handles positioning (anchored at the trigger click) and dismissal.\n *\n * @example Basic menu with auto-dismiss\n * ```typescript\n * <schmancy-menu>\n * <schmancy-button slot=\"trigger\">Actions</schmancy-button>\n * <schmancy-menu-item @click=${() => editItem()}>Edit</schmancy-menu-item>\n * <schmancy-menu-item @click=${() => deleteItem()}>Delete</schmancy-menu-item>\n * </schmancy-menu>\n * ```\n * Note: `<schmancy-menu-item>` dispatches a bubbling 'close' event on click;\n * the overlay `show()` observable completes and the menu tears down.\n *\n * @example Custom component (manual dismiss)\n * ```typescript\n * <schmancy-menu>\n * <schmancy-icon-button slot=\"trigger\">settings</schmancy-icon-button>\n * <my-settings-form\n * @submit=${(e) => e.target.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))}\n * ></my-settings-form>\n * </schmancy-menu>\n * ```\n *\n * @slot trigger - Button to open menu (new naming)\n * @slot button - Button to open menu (backward compatible)\n * @slot default - Menu items or any custom component to display in the overlay\n */\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n`]\n\n\t@query('slot:not([name])')\n\tprivate menuSlot!: HTMLSlotElement\n\n\tprivate showMenu = (event: MouseEvent): void => {\n\t\tconst menuItems = this.menuSlot?.assignedElements() || []\n\t\tif (menuItems.length === 0) return\n\n\t\t// Move slot items into a fresh container so the overlay can adopt them\n\t\t// without leaving stale references in our shadow tree. The overlay\n\t\t// surface no longer ships padding, so the wrapper owns its breathing\n\t\t// room — menu items shouldn't collide with the surface edge.\n\t\tconst overlayContainer = document.createElement('div')\n\t\toverlayContainer.style.padding = '0.5rem'\n\t\tmenuItems.forEach(item => overlayContainer.appendChild(item))\n\n\t\t// Anchor at the click so the overlay system positions the menu\n\t\t// adjacent to the trigger; subscription completion (any dismissal —\n\t\t// item click → bubbling 'close', backdrop, Esc, disconnect) restores\n\t\t// the items as light DOM so the next open re-projects them.\n\t\tshow(overlayContainer, { anchor: event })\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe({\n\t\t\t\tcomplete: () => menuItems.forEach(item => this.appendChild(item)),\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"trigger\" @click=${this.showMenu}>\n\t\t\t\t<slot name=\"button\" @click=${this.showMenu}>\n\t\t\t\t\t<schmancy-icon-button>more_vert</schmancy-icon-button>\n\t\t\t\t</slot>\n\t\t\t</slot>\n\t\t\t<div hidden>\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"mappings":"2OAKe,IAAA,EAAA,cAA+B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,sBAAA,CAW5C,KAAK,cAAc,IAAI,YAAY,QAAS,CAAE,QAAA,CAAS,EAAM,SAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,KAAA,OAVxD,CAAC,EAAA,GAAG;;;;GAapB,QAAA,CACC,MAAO,GAAA,IAAI;gCACmB,KAAK,kBAAA;;;GAIpC,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eArBc,oBAAA,CAAA,EAAoB,CAAA,ECmCpB,IAAA,EAAA,cAA2B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,SAWrB,GAAA,CACnB,IAAM,EAAY,KAAK,UAAU,iBAAA,GAAsB,CAAA,EACvD,GAAI,EAAU,SAAW,EAAG,OAM5B,IAAM,EAAmB,SAAS,cAAc,KAAA,EAChD,EAAiB,MAAM,QAAU,SACjC,EAAU,QAAQ,GAAQ,EAAiB,YAAY,CAAA,CAAA,EAMvD,EAAA,EAAK,EAAkB,CAAE,OAAQ,CAAA,CAAA,EAC/B,MAAA,EAAA,EAAA,WAAe,KAAK,aAAA,CAAA,EACpB,UAAU,CACV,aAAgB,EAAU,QAAQ,GAAQ,KAAK,YAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,KAAA,OA7B9C,CAAC,EAAA,GAAG;;;;;GAiCpB,QAAA,CACC,MAAO,GAAA,IAAI;iCACoB,KAAK,SAAA;iCACL,KAAK,SAAA;;;;;;;GAQrC,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,OArCO,kBAAA,CAAA,EAAkB,EAAA,UAAA,WAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eATX,eAAA,CAAA,EAAe,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { t as e, u as t } from "./SchmancyElement-DuzT2AMa.js";
2
2
  import "./mixins-Cevarn7V.js";
3
- import { o as n } from "./overlay.service-Dq2X6ibl.js";
3
+ import { o as n } from "./overlay.service-zx465FI8.js";
4
4
  import { takeUntil as r } from "rxjs";
5
5
  import { customElement as i, query as a } from "lit/decorators.js";
6
6
  import { css as o, html as s } from "lit";
@@ -1 +1 @@
1
- {"version":3,"file":"menu-D2cZSp74.js","names":[],"sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`]\n\n\tprivate dismissParentMenu = (): void => {\n\t\t// Bubbling 'close' is the protocol the overlay `show()` watches; the\n\t\t// enclosing `<schmancy-menu>` opens the menu via `show()` and this\n\t\t// completes the subscription, so the overlay tears itself down.\n\t\tthis.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item @click=${this.dismissParentMenu}>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query } from 'lit/decorators.js'\nimport { takeUntil } from 'rxjs'\nimport { show } from '../overlay/overlay.service'\n\n/**\n * Menu Component\n *\n * The overlay renders ONLY the raw menu items passed via the default slot.\n * NO <ul> wrapper, NO classes, NO additional markup. The overlay system\n * handles positioning (anchored at the trigger click) and dismissal.\n *\n * @example Basic menu with auto-dismiss\n * ```typescript\n * <schmancy-menu>\n * <schmancy-button slot=\"trigger\">Actions</schmancy-button>\n * <schmancy-menu-item @click=${() => editItem()}>Edit</schmancy-menu-item>\n * <schmancy-menu-item @click=${() => deleteItem()}>Delete</schmancy-menu-item>\n * </schmancy-menu>\n * ```\n * Note: `<schmancy-menu-item>` dispatches a bubbling 'close' event on click;\n * the overlay `show()` observable completes and the menu tears down.\n *\n * @example Custom component (manual dismiss)\n * ```typescript\n * <schmancy-menu>\n * <schmancy-icon-button slot=\"trigger\">settings</schmancy-icon-button>\n * <my-settings-form\n * @submit=${(e) => e.target.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))}\n * ></my-settings-form>\n * </schmancy-menu>\n * ```\n *\n * @slot trigger - Button to open menu (new naming)\n * @slot button - Button to open menu (backward compatible)\n * @slot default - Menu items or any custom component to display in the overlay\n */\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n`]\n\n\t@query('slot:not([name])')\n\tprivate menuSlot!: HTMLSlotElement\n\n\tprivate showMenu = (event: MouseEvent): void => {\n\t\tconst menuItems = this.menuSlot?.assignedElements() || []\n\t\tif (menuItems.length === 0) return\n\n\t\t// Move slot items into a fresh container so the overlay can adopt them\n\t\t// without leaving stale references in our shadow tree. The overlay\n\t\t// surface no longer ships padding, so the wrapper owns its breathing\n\t\t// room — menu items shouldn't collide with the surface edge.\n\t\tconst overlayContainer = document.createElement('div')\n\t\toverlayContainer.style.padding = '0.5rem'\n\t\tmenuItems.forEach(item => overlayContainer.appendChild(item))\n\n\t\t// Anchor at the click so the overlay system positions the menu\n\t\t// adjacent to the trigger; subscription completion (any dismissal —\n\t\t// item click → bubbling 'close', backdrop, Esc, disconnect) restores\n\t\t// the items as light DOM so the next open re-projects them.\n\t\tshow(overlayContainer, { anchor: event })\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe({\n\t\t\t\tcomplete: () => menuItems.forEach(item => this.appendChild(item)),\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"trigger\" @click=${this.showMenu}>\n\t\t\t\t<slot name=\"button\" @click=${this.showMenu}>\n\t\t\t\t\t<schmancy-icon-button>more_vert</schmancy-icon-button>\n\t\t\t\t</slot>\n\t\t\t</slot>\n\t\t\t<div hidden>\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"mappings":";;;;;;AAKe,IAAA,IAAA,cAA+B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,0BAAA;GAW5C,KAAK,cAAc,IAAI,YAAY,SAAS;IAAE,SAAA,CAAS;IAAM,UAAA,CAAU;GAAA,CAAA,CAAA;EAAA;CAAA;CAAA;EAAA,KAAA,SAVxD,CAAC,CAAG;;;;;;CAapB,SAAA;EACC,OAAO,CAAI;gCACmB,KAAK,kBAAA;;;;CAIpC;AAAA;AAAA,IAAA,EAAA,CArBA,EAAc,oBAAA,CAAA,GAAoB,CAAA;ACmCpB,IAAA,IAAA,cAA2B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,YAWrB,MAAA;GACnB,IAAM,IAAY,KAAK,UAAU,iBAAA,KAAsB,CAAA;GACvD,IAAI,EAAU,WAAW,GAAG;GAM5B,IAAM,IAAmB,SAAS,cAAc,KAAA;GAChD,EAAiB,MAAM,UAAU,UACjC,EAAU,SAAQ,MAAQ,EAAiB,YAAY,CAAA,CAAA,GAMvD,EAAK,GAAkB,EAAE,QAAQ,EAAA,CAAA,EAC/B,KAAK,EAAU,KAAK,aAAA,CAAA,EACpB,UAAU,EACV,gBAAgB,EAAU,SAAQ,MAAQ,KAAK,YAAY,CAAA,CAAA,EAAA,CAAA;EAAA;CAAA;CAAA;EAAA,KAAA,SA7B9C,CAAC,CAAG;;;;;;;CAiCpB,SAAA;EACC,OAAO,CAAI;iCACoB,KAAK,SAAA;iCACL,KAAK,SAAA;;;;;;;;CAQrC;AAAA;AAAA,EAAA,CArCC,EAAM,kBAAA,CAAA,GAAkB,EAAA,WAAA,YAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CATzB,EAAc,eAAA,CAAA,GAAe,CAAA"}
1
+ {"version":3,"file":"menu-CgdXrzir.js","names":[],"sources":["../src/menu/menu-item.ts","../src/menu/menu.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-menu-item')\nexport default class SchmancyMenuItem extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n`]\n\n\tprivate dismissParentMenu = (): void => {\n\t\t// Bubbling 'close' is the protocol the overlay `show()` watches; the\n\t\t// enclosing `<schmancy-menu>` opens the menu via `show()` and this\n\t\t// completes the subscription, so the overlay tears itself down.\n\t\tthis.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))\n\t}\n\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<schmancy-list-item @click=${this.dismissParentMenu}>\n\t\t\t\t<slot></slot>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu-item': SchmancyMenuItem\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, query } from 'lit/decorators.js'\nimport { takeUntil } from 'rxjs'\nimport { show } from '../overlay/overlay.service'\n\n/**\n * Menu Component\n *\n * The overlay renders ONLY the raw menu items passed via the default slot.\n * NO <ul> wrapper, NO classes, NO additional markup. The overlay system\n * handles positioning (anchored at the trigger click) and dismissal.\n *\n * @example Basic menu with auto-dismiss\n * ```typescript\n * <schmancy-menu>\n * <schmancy-button slot=\"trigger\">Actions</schmancy-button>\n * <schmancy-menu-item @click=${() => editItem()}>Edit</schmancy-menu-item>\n * <schmancy-menu-item @click=${() => deleteItem()}>Delete</schmancy-menu-item>\n * </schmancy-menu>\n * ```\n * Note: `<schmancy-menu-item>` dispatches a bubbling 'close' event on click;\n * the overlay `show()` observable completes and the menu tears down.\n *\n * @example Custom component (manual dismiss)\n * ```typescript\n * <schmancy-menu>\n * <schmancy-icon-button slot=\"trigger\">settings</schmancy-icon-button>\n * <my-settings-form\n * @submit=${(e) => e.target.dispatchEvent(new CustomEvent('close', { bubbles: true, composed: true }))}\n * ></my-settings-form>\n * </schmancy-menu>\n * ```\n *\n * @slot trigger - Button to open menu (new naming)\n * @slot button - Button to open menu (backward compatible)\n * @slot default - Menu items or any custom component to display in the overlay\n */\n@customElement('schmancy-menu')\nexport default class SchmancyMenu extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n`]\n\n\t@query('slot:not([name])')\n\tprivate menuSlot!: HTMLSlotElement\n\n\tprivate showMenu = (event: MouseEvent): void => {\n\t\tconst menuItems = this.menuSlot?.assignedElements() || []\n\t\tif (menuItems.length === 0) return\n\n\t\t// Move slot items into a fresh container so the overlay can adopt them\n\t\t// without leaving stale references in our shadow tree. The overlay\n\t\t// surface no longer ships padding, so the wrapper owns its breathing\n\t\t// room — menu items shouldn't collide with the surface edge.\n\t\tconst overlayContainer = document.createElement('div')\n\t\toverlayContainer.style.padding = '0.5rem'\n\t\tmenuItems.forEach(item => overlayContainer.appendChild(item))\n\n\t\t// Anchor at the click so the overlay system positions the menu\n\t\t// adjacent to the trigger; subscription completion (any dismissal —\n\t\t// item click → bubbling 'close', backdrop, Esc, disconnect) restores\n\t\t// the items as light DOM so the next open re-projects them.\n\t\tshow(overlayContainer, { anchor: event })\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe({\n\t\t\t\tcomplete: () => menuItems.forEach(item => this.appendChild(item)),\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<slot name=\"trigger\" @click=${this.showMenu}>\n\t\t\t\t<slot name=\"button\" @click=${this.showMenu}>\n\t\t\t\t\t<schmancy-icon-button>more_vert</schmancy-icon-button>\n\t\t\t\t</slot>\n\t\t\t</slot>\n\t\t\t<div hidden>\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-menu': SchmancyMenu\n\t}\n}\n"],"mappings":";;;;;;AAKe,IAAA,IAAA,cAA+B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,0BAAA;GAW5C,KAAK,cAAc,IAAI,YAAY,SAAS;IAAE,SAAA,CAAS;IAAM,UAAA,CAAU;GAAA,CAAA,CAAA;EAAA;CAAA;CAAA;EAAA,KAAA,SAVxD,CAAC,CAAG;;;;;;CAapB,SAAA;EACC,OAAO,CAAI;gCACmB,KAAK,kBAAA;;;;CAIpC;AAAA;AAAA,IAAA,EAAA,CArBA,EAAc,oBAAA,CAAA,GAAoB,CAAA;ACmCpB,IAAA,IAAA,cAA2B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,YAWrB,MAAA;GACnB,IAAM,IAAY,KAAK,UAAU,iBAAA,KAAsB,CAAA;GACvD,IAAI,EAAU,WAAW,GAAG;GAM5B,IAAM,IAAmB,SAAS,cAAc,KAAA;GAChD,EAAiB,MAAM,UAAU,UACjC,EAAU,SAAQ,MAAQ,EAAiB,YAAY,CAAA,CAAA,GAMvD,EAAK,GAAkB,EAAE,QAAQ,EAAA,CAAA,EAC/B,KAAK,EAAU,KAAK,aAAA,CAAA,EACpB,UAAU,EACV,gBAAgB,EAAU,SAAQ,MAAQ,KAAK,YAAY,CAAA,CAAA,EAAA,CAAA;EAAA;CAAA;CAAA;EAAA,KAAA,SA7B9C,CAAC,CAAG;;;;;;;CAiCpB,SAAA;EACC,OAAO,CAAI;iCACoB,KAAK,SAAA;iCACL,KAAK,SAAA;;;;;;;;CAQrC;AAAA;AAAA,EAAA,CArCC,EAAM,kBAAA,CAAA,GAAkB,EAAA,WAAA,YAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CATzB,EAAc,eAAA,CAAA,GAAe,CAAA"}
package/dist/menu.cjs CHANGED
@@ -1 +1 @@
1
- require(`./menu-BNPbrAmd.cjs`);
1
+ require(`./menu-B5EKUeeD.cjs`);
package/dist/menu.js CHANGED
@@ -1 +1 @@
1
- import "./menu-D2cZSp74.js";
1
+ import "./menu-CgdXrzir.js";
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./src-C_7k7YhE.cjs`);exports.$drawer=e.p,Object.defineProperty(exports,`SchmancyDrawerAppbar`,{enumerable:!0,get:function(){return e.f}}),exports.SchmancyDrawerNavbarMode=e.l,exports.SchmancyDrawerNavbarState=e.u,Object.defineProperty(exports,`SchmancyNavigationDrawer`,{enumerable:!0,get:function(){return e.c}}),Object.defineProperty(exports,`SchmancyNavigationDrawerContent`,{enumerable:!0,get:function(){return e.d}}),Object.defineProperty(exports,`SchmancyNavigationDrawerSidebar`,{enumerable:!0,get:function(){return e.s}}),exports.schmancyNavDrawer=e.m;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./src-DEgL_xJv.cjs`);exports.$drawer=e.p,Object.defineProperty(exports,`SchmancyDrawerAppbar`,{enumerable:!0,get:function(){return e.f}}),exports.SchmancyDrawerNavbarMode=e.l,exports.SchmancyDrawerNavbarState=e.u,Object.defineProperty(exports,`SchmancyNavigationDrawer`,{enumerable:!0,get:function(){return e.c}}),Object.defineProperty(exports,`SchmancyNavigationDrawerContent`,{enumerable:!0,get:function(){return e.d}}),Object.defineProperty(exports,`SchmancyNavigationDrawerSidebar`,{enumerable:!0,get:function(){return e.s}}),exports.schmancyNavDrawer=e.m;
@@ -1,2 +1,2 @@
1
- import { c as e, d as t, f as n, l as r, m as i, p as a, s as o, u as s } from "./src-DavVEUeO.js";
1
+ import { c as e, d as t, f as n, l as r, m as i, p as a, s as o, u as s } from "./src-CdX0NekF.js";
2
2
  export { a as $drawer, n as SchmancyDrawerAppbar, r as SchmancyDrawerNavbarMode, s as SchmancyDrawerNavbarState, e as SchmancyNavigationDrawer, t as SchmancyNavigationDrawerContent, o as SchmancyNavigationDrawerSidebar, i as schmancyNavDrawer };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./src-C_7k7YhE.cjs`);Object.defineProperty(exports,`SchmancyNavigationBar`,{enumerable:!0,get:function(){return e.a}}),Object.defineProperty(exports,`SchmancyNavigationBarItem`,{enumerable:!0,get:function(){return e.o}});
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./src-DEgL_xJv.cjs`);Object.defineProperty(exports,`SchmancyNavigationBar`,{enumerable:!0,get:function(){return e.a}}),Object.defineProperty(exports,`SchmancyNavigationBarItem`,{enumerable:!0,get:function(){return e.o}});
@@ -1,2 +1,2 @@
1
- import { a as e, o as t } from "./src-DavVEUeO.js";
1
+ import { a as e, o as t } from "./src-CdX0NekF.js";
2
2
  export { e as SchmancyNavigationBar, t as SchmancyNavigationBarItem };
@@ -1,4 +1,4 @@
1
- require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`);const t=require(`./animation-CCOIW4wJ.cjs`),n=require(`./reduced-motion-Ds-HjMzn.cjs`),r=require(`./layout-D7nKwpa5.cjs`),i=require(`./overlay.service-D4_SgGuT.cjs`);require(`./overlay.confirm-body-BCWt92R7.cjs`);let a=require(`rxjs`),o=require(`lit/decorators.js`),s=require(`lit`),c=require(`lit/directives/when.js`),l=require(`@floating-ui/dom`);var u=n.t.value;n.t.subscribe(e=>{u=e});var d=`--schmancy-overlay-origin-x`,f=`--schmancy-overlay-origin-y`,p=`var(${d}, 50%) var(${f}, 50%)`;function m(e){return Number.isNaN(e)||!Number.isFinite(e)?50:Math.max(0,Math.min(100,e))}function h(e){let{surface:t,dragHandle:n,until$:r}=e;return new a.Observable(e=>{let i=n??t,o=new a.Subject,s=!1,c=null,l=0,u=0,d=0;return(0,a.merge)((0,a.fromEvent)(i,`pointerdown`).pipe((0,a.filter)(e=>e.isPrimary&&(e.pointerType!==`mouse`||e.button===0)),(0,a.filter)(e=>{if(n)return!0;let r=t.getBoundingClientRect();return e.clientY-r.top<=40}),(0,a.tap)(e=>{s=!0,c=e.pointerId,l=e.clientY,u=performance.now(),d=0,t.style.transition=`none`,t.style.willChange=`transform`;try{i.setPointerCapture?.(e.pointerId)}catch{}})),(0,a.fromEvent)(i,`pointermove`).pipe((0,a.filter)(()=>s),(0,a.filter)(e=>e.pointerId===c),(0,a.tap)(e=>{d=function(e){if(e>=0)return e;let t=-e;return-Math.max(0,8*(Math.log(t+1)-2))}(e.clientY-l),t.style.transform=`translateY(${d}px)`,e.cancelable&&e.preventDefault()})),(0,a.merge)((0,a.fromEvent)(i,`pointerup`),(0,a.fromEvent)(i,`pointercancel`),(0,a.fromEvent)(i,`lostpointercapture`)).pipe((0,a.filter)(()=>s),(0,a.filter)(e=>e.pointerId===c),(0,a.tap)(()=>{s=!1;let n=c;c=null;try{n!==null&&i.releasePointerCapture?.(n)}catch{}let r=Math.max(1,performance.now()-u),a=d/r,o=t.getBoundingClientRect().height,l=Math.min(80,.25*o),f=d>l||d>20&&a>.4;t.style.willChange=``,f?(t.style.transition=`transform 300ms cubic-bezier(0.16, 1, 0.3, 1)`,t.style.transform=`translateY(100%)`,e.next(`dismiss`),e.complete()):(t.style.transition=`transform 300ms cubic-bezier(0.16, 1, 0.3, 1)`,t.style.transform=`translateY(0)`)}))).pipe((0,a.takeUntil)((0,a.merge)(o,r))).subscribe(),()=>{o.next(),o.complete(),t.style.transition=``,t.style.transform=``,t.style.willChange=``}}).pipe((0,a.take)(1))}function g(e){return e.anchor===void 0?`sheet`:`anchored`}function _(e,t){return{x:e,y:t,width:0,height:0,left:e,right:e,top:t,bottom:t,toJSON:()=>({x:e,y:t,width:0,height:0,left:e,right:e,top:t,bottom:t})}}var v=Object.freeze({popover:typeof HTMLElement<`u`&&`popover`in HTMLElement.prototype&&typeof HTMLElement.prototype.showPopover==`function`,cssAnchor:typeof CSS<`u`&&typeof CSS.supports==`function`&&CSS.supports(`anchor-name: --x`)});function y(e){if(!v.popover)throw Error(`positionPopoverAPI requires Popover API support`);e.setAttribute(`popover`,`manual`);try{e.showPopover()}catch{}return()=>{try{e.hidePopover?.()}catch{}e.removeAttribute(`popover`)}}function b(e,t,n={}){return new a.Observable(r=>{let i=t.el??t.virtual;if(!i)return void r.error(Error(`positionFloatingUI requires an element or virtual anchor`));let a=n.placement??`bottom-start`,o=n.padding??16,s=n.offsetPx??8,c=(0,l.autoUpdate)(i,e,async()=>{try{let{x:t,y:n}=await(0,l.computePosition)(i,e,{strategy:`fixed`,placement:a,middleware:[(0,l.offset)(s),(0,l.flip)({padding:o,fallbackPlacements:x(a)}),(0,l.shift)({padding:o}),(0,l.size)({padding:o,apply({availableWidth:e,availableHeight:t,elements:n}){n.floating.style.maxWidth=`${Math.max(0,e)}px`,n.floating.style.maxHeight=`${Math.max(0,t)}px`}})]});Object.assign(e.style,{position:`fixed`,left:`${Math.round(t)}px`,top:`${Math.round(n)}px`,transform:`none`}),r.next()}catch(e){r.error(e)}},{ancestorScroll:!0,ancestorResize:!0,elementResize:!1!==n.track});return()=>{c()}})}function x(e){switch(e){case`bottom-start`:return[`top-start`,`bottom-end`,`top-end`];case`bottom-end`:return[`top-end`,`bottom-start`,`top-start`];case`top-start`:return[`bottom-start`,`top-end`,`bottom-end`];case`top-end`:return[`bottom-end`,`top-start`,`bottom-start`];case`left-start`:return[`right-start`,`left-end`,`right-end`];case`left-end`:return[`right-end`,`left-start`,`right-start`];case`right-start`:return[`left-start`,`right-end`,`left-end`];case`right-end`:return[`left-end`,`right-start`,`left-start`];case`top`:return[`bottom`,`left`,`right`];case`bottom`:return[`top`,`left`,`right`];case`left`:return[`right`,`top`,`bottom`];case`right`:return[`left`,`top`,`bottom`];default:return[`top-start`,`bottom-end`]}}var S=`overlay-mount`,C=class extends e.t{constructor(...e){super(...e),this.layout=`sheet`,this.dismissable=!0,this.modal=!0,this.tier=`modal`,this._active=!1,this._closed$=new a.Subject,this._mounted=!1,this._closing=!1,this._lastFocusedElement=null,this._inertedSiblings=[],this._lastReResolveAt=0,this.onBackdropClick=()=>{this.dismissable&&this.close(`backdrop`)}}static{this.styles=[s.css`
1
+ require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D8_z9JrW.cjs`);require(`./mixins-JyO9GSGy.cjs`);const t=require(`./animation-CCOIW4wJ.cjs`),n=require(`./reduced-motion-Ds-HjMzn.cjs`),r=require(`./layout-D7nKwpa5.cjs`),i=require(`./overlay.service-CC4zckoV.cjs`);require(`./overlay.confirm-body-CsvwcBvG.cjs`);let a=require(`rxjs`),o=require(`lit/decorators.js`),s=require(`lit`),c=require(`lit/directives/when.js`),l=require(`@floating-ui/dom`);var u=n.t.value;n.t.subscribe(e=>{u=e});var d=`--schmancy-overlay-origin-x`,f=`--schmancy-overlay-origin-y`,p=`var(${d}, 50%) var(${f}, 50%)`;function m(e){return Number.isNaN(e)||!Number.isFinite(e)?50:Math.max(0,Math.min(100,e))}function h(e){let{surface:t,dragHandle:n,until$:r}=e;return new a.Observable(e=>{let i=n??t,o=new a.Subject,s=!1,c=null,l=0,u=0,d=0;return(0,a.merge)((0,a.fromEvent)(i,`pointerdown`).pipe((0,a.filter)(e=>e.isPrimary&&(e.pointerType!==`mouse`||e.button===0)),(0,a.filter)(e=>{if(n)return!0;let r=t.getBoundingClientRect();return e.clientY-r.top<=40}),(0,a.tap)(e=>{s=!0,c=e.pointerId,l=e.clientY,u=performance.now(),d=0,t.style.transition=`none`,t.style.willChange=`transform`;try{i.setPointerCapture?.(e.pointerId)}catch{}})),(0,a.fromEvent)(i,`pointermove`).pipe((0,a.filter)(()=>s),(0,a.filter)(e=>e.pointerId===c),(0,a.tap)(e=>{d=function(e){if(e>=0)return e;let t=-e;return-Math.max(0,8*(Math.log(t+1)-2))}(e.clientY-l),t.style.transform=`translateY(${d}px)`,e.cancelable&&e.preventDefault()})),(0,a.merge)((0,a.fromEvent)(i,`pointerup`),(0,a.fromEvent)(i,`pointercancel`),(0,a.fromEvent)(i,`lostpointercapture`)).pipe((0,a.filter)(()=>s),(0,a.filter)(e=>e.pointerId===c),(0,a.tap)(()=>{s=!1;let n=c;c=null;try{n!==null&&i.releasePointerCapture?.(n)}catch{}let r=Math.max(1,performance.now()-u),a=d/r,o=t.getBoundingClientRect().height,l=Math.min(80,.25*o),f=d>l||d>20&&a>.4;t.style.willChange=``,f?(t.style.transition=`transform 300ms cubic-bezier(0.16, 1, 0.3, 1)`,t.style.transform=`translateY(100%)`,e.next(`dismiss`),e.complete()):(t.style.transition=`transform 300ms cubic-bezier(0.16, 1, 0.3, 1)`,t.style.transform=`translateY(0)`)}))).pipe((0,a.takeUntil)((0,a.merge)(o,r))).subscribe(),()=>{o.next(),o.complete(),t.style.transition=``,t.style.transform=``,t.style.willChange=``}}).pipe((0,a.take)(1))}function g(e){return e.anchor===void 0?`sheet`:`anchored`}function _(e,t){return{x:e,y:t,width:0,height:0,left:e,right:e,top:t,bottom:t,toJSON:()=>({x:e,y:t,width:0,height:0,left:e,right:e,top:t,bottom:t})}}var v=Object.freeze({popover:typeof HTMLElement<`u`&&`popover`in HTMLElement.prototype&&typeof HTMLElement.prototype.showPopover==`function`,cssAnchor:typeof CSS<`u`&&typeof CSS.supports==`function`&&CSS.supports(`anchor-name: --x`)});function y(e){if(!v.popover)throw Error(`positionPopoverAPI requires Popover API support`);e.setAttribute(`popover`,`manual`);try{e.showPopover()}catch{}return()=>{try{e.hidePopover?.()}catch{}e.removeAttribute(`popover`)}}function b(e,t,n={}){return new a.Observable(r=>{let i=t.el??t.virtual;if(!i)return void r.error(Error(`positionFloatingUI requires an element or virtual anchor`));let a=n.placement??`bottom-start`,o=n.padding??16,s=n.offsetPx??8,c=(0,l.autoUpdate)(i,e,async()=>{try{let{x:t,y:n}=await(0,l.computePosition)(i,e,{strategy:`fixed`,placement:a,middleware:[(0,l.offset)(s),(0,l.flip)({padding:o,fallbackPlacements:x(a)}),(0,l.shift)({padding:o}),(0,l.size)({padding:o,apply({availableWidth:e,availableHeight:t,elements:n}){n.floating.style.maxWidth=`${Math.max(0,e)}px`,n.floating.style.maxHeight=`${Math.max(0,t)}px`}})]});Object.assign(e.style,{position:`fixed`,left:`${Math.round(t)}px`,top:`${Math.round(n)}px`,transform:`none`}),r.next()}catch(e){r.error(e)}},{ancestorScroll:!0,ancestorResize:!0,elementResize:!1!==n.track});return()=>{c()}})}function x(e){switch(e){case`bottom-start`:return[`top-start`,`bottom-end`,`top-end`];case`bottom-end`:return[`top-end`,`bottom-start`,`top-start`];case`top-start`:return[`bottom-start`,`top-end`,`bottom-end`];case`top-end`:return[`bottom-end`,`top-start`,`bottom-start`];case`left-start`:return[`right-start`,`left-end`,`right-end`];case`left-end`:return[`right-end`,`left-start`,`right-start`];case`right-start`:return[`left-start`,`right-end`,`left-end`];case`right-end`:return[`left-end`,`right-start`,`left-start`];case`top`:return[`bottom`,`left`,`right`];case`bottom`:return[`top`,`left`,`right`];case`left`:return[`right`,`top`,`bottom`];case`right`:return[`left`,`top`,`bottom`];default:return[`top-start`,`bottom-end`]}}var S=`overlay-mount`,C=class extends e.t{constructor(...e){super(...e),this.layout=`sheet`,this.dismissable=!0,this.modal=!0,this.tier=`modal`,this._active=!1,this._closed$=new a.Subject,this._mounted=!1,this._closing=!1,this._lastFocusedElement=null,this._inertedSiblings=[],this._lastReResolveAt=0,this.onBackdropClick=()=>{this.dismissable&&this.close(`backdrop`)}}static{this.styles=[s.css`
2
2
  :host {
3
3
  position: fixed;
4
4
  inset: 0;