@vielzeug/craftit 2.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -53
- package/dist/component.cjs +2 -0
- package/dist/component.cjs.map +1 -0
- package/dist/component.d.ts +39 -0
- package/dist/component.d.ts.map +1 -0
- package/dist/component.js +2 -0
- package/dist/component.js.map +1 -0
- package/dist/controls/a11y-control.cjs +2 -0
- package/dist/controls/a11y-control.cjs.map +1 -0
- package/dist/controls/a11y-control.d.ts +16 -0
- package/dist/controls/a11y-control.d.ts.map +1 -0
- package/dist/controls/a11y-control.js +2 -0
- package/dist/controls/a11y-control.js.map +1 -0
- package/dist/controls/checkable-control.cjs +2 -0
- package/dist/controls/checkable-control.cjs.map +1 -0
- package/dist/controls/checkable-control.d.ts +15 -0
- package/dist/controls/checkable-control.d.ts.map +1 -0
- package/dist/controls/checkable-control.js +2 -0
- package/dist/controls/checkable-control.js.map +1 -0
- package/dist/controls/field-control.cjs +2 -0
- package/dist/controls/field-control.cjs.map +1 -0
- package/dist/controls/field-control.d.ts +156 -0
- package/dist/controls/field-control.d.ts.map +1 -0
- package/dist/controls/field-control.js +2 -0
- package/dist/controls/field-control.js.map +1 -0
- package/dist/controls/index.d.ts +10 -0
- package/dist/controls/index.d.ts.map +1 -0
- package/dist/controls/internal/control-state.cjs +2 -0
- package/dist/controls/internal/control-state.cjs.map +1 -0
- package/dist/controls/internal/control-state.d.ts +19 -0
- package/dist/controls/internal/control-state.d.ts.map +1 -0
- package/dist/controls/internal/control-state.js +2 -0
- package/dist/controls/internal/control-state.js.map +1 -0
- package/dist/controls/internal/keyboard-utils.cjs +2 -0
- package/dist/controls/internal/keyboard-utils.cjs.map +1 -0
- package/dist/controls/internal/keyboard-utils.d.ts +7 -0
- package/dist/controls/internal/keyboard-utils.d.ts.map +1 -0
- package/dist/controls/internal/keyboard-utils.js +2 -0
- package/dist/controls/internal/keyboard-utils.js.map +1 -0
- package/dist/controls/internal/number-utils.cjs +2 -0
- package/dist/controls/internal/number-utils.cjs.map +1 -0
- package/dist/controls/internal/number-utils.d.ts +6 -0
- package/dist/controls/internal/number-utils.d.ts.map +1 -0
- package/dist/controls/internal/number-utils.js +2 -0
- package/dist/controls/internal/number-utils.js.map +1 -0
- package/dist/controls/internal/validation-utils.cjs +2 -0
- package/dist/controls/internal/validation-utils.cjs.map +1 -0
- package/dist/controls/internal/validation-utils.d.ts +13 -0
- package/dist/controls/internal/validation-utils.d.ts.map +1 -0
- package/dist/controls/internal/validation-utils.js +2 -0
- package/dist/controls/internal/validation-utils.js.map +1 -0
- package/dist/controls/list-control.cjs +2 -0
- package/dist/controls/list-control.cjs.map +1 -0
- package/dist/controls/list-control.d.ts +21 -0
- package/dist/controls/list-control.d.ts.map +1 -0
- package/dist/controls/list-control.js +2 -0
- package/dist/controls/list-control.js.map +1 -0
- package/dist/controls/list-key-control.cjs +2 -0
- package/dist/controls/list-key-control.cjs.map +1 -0
- package/dist/controls/list-key-control.d.ts +14 -0
- package/dist/controls/list-key-control.d.ts.map +1 -0
- package/dist/controls/list-key-control.js +2 -0
- package/dist/controls/list-key-control.js.map +1 -0
- package/dist/controls/overlay-control.cjs +2 -0
- package/dist/controls/overlay-control.cjs.map +1 -0
- package/dist/controls/overlay-control.d.ts +37 -0
- package/dist/controls/overlay-control.d.ts.map +1 -0
- package/dist/controls/overlay-control.js +2 -0
- package/dist/controls/overlay-control.js.map +1 -0
- package/dist/controls/press-control.cjs +2 -0
- package/dist/controls/press-control.cjs.map +1 -0
- package/dist/controls/press-control.d.ts +12 -0
- package/dist/controls/press-control.d.ts.map +1 -0
- package/dist/controls/press-control.js +2 -0
- package/dist/controls/press-control.js.map +1 -0
- package/dist/controls/slider-control.cjs +2 -0
- package/dist/controls/slider-control.cjs.map +1 -0
- package/dist/controls/slider-control.d.ts +19 -0
- package/dist/controls/slider-control.d.ts.map +1 -0
- package/dist/controls/slider-control.js +2 -0
- package/dist/controls/slider-control.js.map +1 -0
- package/dist/controls/spinner-control.cjs +2 -0
- package/dist/controls/spinner-control.cjs.map +1 -0
- package/dist/controls/spinner-control.d.ts +18 -0
- package/dist/controls/spinner-control.d.ts.map +1 -0
- package/dist/controls/spinner-control.js +2 -0
- package/dist/controls/spinner-control.js.map +1 -0
- package/dist/controls.cjs +1 -0
- package/dist/controls.js +1 -0
- package/dist/craftit.cjs +1 -1
- package/dist/craftit.cjs.map +1 -1
- package/dist/craftit.js +1 -1
- package/dist/craftit.js.map +1 -1
- package/dist/directives/attr.cjs +1 -1
- package/dist/directives/attr.cjs.map +1 -1
- package/dist/directives/attr.d.ts +4 -6
- package/dist/directives/attr.d.ts.map +1 -1
- package/dist/directives/attr.js +1 -1
- package/dist/directives/attr.js.map +1 -1
- package/dist/directives/bind.cjs +1 -1
- package/dist/directives/bind.cjs.map +1 -1
- package/dist/directives/bind.d.ts +20 -12
- package/dist/directives/bind.d.ts.map +1 -1
- package/dist/directives/bind.js +1 -1
- package/dist/directives/bind.js.map +1 -1
- package/dist/directives/choose.cjs +1 -1
- package/dist/directives/choose.cjs.map +1 -1
- package/dist/directives/choose.d.ts +17 -12
- package/dist/directives/choose.d.ts.map +1 -1
- package/dist/directives/choose.js +1 -1
- package/dist/directives/choose.js.map +1 -1
- package/dist/directives/each.cjs +1 -1
- package/dist/directives/each.cjs.map +1 -1
- package/dist/directives/each.d.ts +19 -31
- package/dist/directives/each.d.ts.map +1 -1
- package/dist/directives/each.js +1 -1
- package/dist/directives/each.js.map +1 -1
- package/dist/directives/index.d.ts +1 -2
- package/dist/directives/index.d.ts.map +1 -1
- package/dist/directives/memo.cjs +1 -1
- package/dist/directives/memo.cjs.map +1 -1
- package/dist/directives/memo.d.ts +8 -4
- package/dist/directives/memo.d.ts.map +1 -1
- package/dist/directives/memo.js +1 -1
- package/dist/directives/memo.js.map +1 -1
- package/dist/directives/on.cjs +1 -1
- package/dist/directives/on.cjs.map +1 -1
- package/dist/directives/on.d.ts +1 -1
- package/dist/directives/on.d.ts.map +1 -1
- package/dist/directives/on.js +1 -1
- package/dist/directives/on.js.map +1 -1
- package/dist/directives/raw.cjs +1 -1
- package/dist/directives/raw.cjs.map +1 -1
- package/dist/directives/raw.d.ts +1 -1
- package/dist/directives/raw.d.ts.map +1 -1
- package/dist/directives/raw.js +1 -1
- package/dist/directives/raw.js.map +1 -1
- package/dist/directives/spread.cjs +1 -1
- package/dist/directives/spread.cjs.map +1 -1
- package/dist/directives/spread.d.ts +1 -1
- package/dist/directives/spread.d.ts.map +1 -1
- package/dist/directives/spread.js +1 -1
- package/dist/directives/spread.js.map +1 -1
- package/dist/directives/style.cjs +1 -1
- package/dist/directives/style.cjs.map +1 -1
- package/dist/directives/style.js +1 -1
- package/dist/directives/style.js.map +1 -1
- package/dist/directives/until.cjs.map +1 -1
- package/dist/directives/until.d.ts +1 -1
- package/dist/directives/until.d.ts.map +1 -1
- package/dist/directives/until.js.map +1 -1
- package/dist/directives/when.cjs +1 -1
- package/dist/directives/when.cjs.map +1 -1
- package/dist/directives/when.d.ts +11 -5
- package/dist/directives/when.d.ts.map +1 -1
- package/dist/directives/when.js +1 -1
- package/dist/directives/when.js.map +1 -1
- package/dist/directives.cjs +1 -0
- package/dist/directives.js +1 -0
- package/dist/form.cjs +2 -0
- package/dist/form.cjs.map +1 -0
- package/dist/form.d.ts +29 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +2 -0
- package/dist/form.js.map +1 -0
- package/dist/host.cjs +2 -0
- package/dist/host.cjs.map +1 -0
- package/dist/host.d.ts +75 -0
- package/dist/host.d.ts.map +1 -0
- package/dist/host.js +2 -0
- package/dist/host.js.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +8 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/internal.cjs +2 -0
- package/dist/internal.cjs.map +1 -0
- package/dist/internal.d.ts +171 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +2 -0
- package/dist/internal.js.map +1 -0
- package/dist/observers/index.d.ts +4 -0
- package/dist/observers/index.d.ts.map +1 -0
- package/dist/observers/intersection-observe.cjs +2 -0
- package/dist/observers/intersection-observe.cjs.map +1 -0
- package/dist/observers/intersection-observe.d.ts +9 -0
- package/dist/observers/intersection-observe.d.ts.map +1 -0
- package/dist/observers/intersection-observe.js +2 -0
- package/dist/observers/intersection-observe.js.map +1 -0
- package/dist/observers/media-observe.cjs +2 -0
- package/dist/observers/media-observe.cjs.map +1 -0
- package/dist/observers/media-observe.d.ts +8 -0
- package/dist/observers/media-observe.d.ts.map +1 -0
- package/dist/observers/media-observe.js +2 -0
- package/dist/observers/media-observe.js.map +1 -0
- package/dist/observers/resize-observe.cjs +2 -0
- package/dist/observers/resize-observe.cjs.map +1 -0
- package/dist/observers/resize-observe.d.ts +11 -0
- package/dist/observers/resize-observe.d.ts.map +1 -0
- package/dist/observers/resize-observe.js +2 -0
- package/dist/observers/resize-observe.js.map +1 -0
- package/dist/observers.cjs +1 -0
- package/dist/observers.js +1 -0
- package/dist/props.cjs +2 -0
- package/dist/props.cjs.map +1 -0
- package/dist/props.d.ts +52 -0
- package/dist/props.d.ts.map +1 -0
- package/dist/props.js +2 -0
- package/dist/props.js.map +1 -0
- package/dist/registration.cjs +2 -0
- package/dist/registration.cjs.map +1 -0
- package/dist/registration.d.ts +18 -0
- package/dist/registration.d.ts.map +1 -0
- package/dist/registration.js +2 -0
- package/dist/registration.js.map +1 -0
- package/dist/runtime-bindings.cjs +2 -0
- package/dist/runtime-bindings.cjs.map +1 -0
- package/dist/runtime-bindings.d.ts.map +1 -0
- package/dist/runtime-bindings.js +2 -0
- package/dist/runtime-bindings.js.map +1 -0
- package/dist/runtime-core.cjs +2 -0
- package/dist/runtime-core.cjs.map +1 -0
- package/dist/runtime-core.d.ts +21 -0
- package/dist/runtime-core.d.ts.map +1 -0
- package/dist/runtime-core.js +2 -0
- package/dist/runtime-core.js.map +1 -0
- package/dist/runtime-lifecycle.cjs +2 -0
- package/dist/runtime-lifecycle.cjs.map +1 -0
- package/dist/runtime-lifecycle.d.ts +24 -0
- package/dist/runtime-lifecycle.d.ts.map +1 -0
- package/dist/runtime-lifecycle.js +2 -0
- package/dist/runtime-lifecycle.js.map +1 -0
- package/dist/runtime.cjs +2 -0
- package/dist/runtime.cjs.map +1 -0
- package/dist/runtime.d.ts +21 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +2 -0
- package/dist/runtime.js.map +1 -0
- package/dist/template-bindings.cjs +2 -0
- package/dist/template-bindings.cjs.map +1 -0
- package/dist/{core/template-bindings.d.ts → template-bindings.d.ts} +4 -1
- package/dist/template-bindings.d.ts.map +1 -0
- package/dist/template-bindings.js +2 -0
- package/dist/template-bindings.js.map +1 -0
- package/dist/template-compiler.cjs +2 -0
- package/dist/template-compiler.cjs.map +1 -0
- package/dist/{core/template-compiler.d.ts → template-compiler.d.ts} +1 -2
- package/dist/template-compiler.d.ts.map +1 -0
- package/dist/template-compiler.js +2 -0
- package/dist/template-compiler.js.map +1 -0
- package/dist/template-dom.cjs +2 -0
- package/dist/{core/template-dom.js.map → template-dom.cjs.map} +1 -1
- package/dist/template-dom.d.ts.map +1 -0
- package/dist/template-dom.js +2 -0
- package/dist/template-dom.js.map +1 -0
- package/dist/template-html.cjs +2 -0
- package/dist/template-html.cjs.map +1 -0
- package/dist/{core/template-html.d.ts → template-html.d.ts} +1 -4
- package/dist/template-html.d.ts.map +1 -0
- package/dist/template-html.js +2 -0
- package/dist/template-html.js.map +1 -0
- package/dist/template.cjs +2 -0
- package/dist/template.cjs.map +1 -0
- package/dist/{core/template.d.ts → template.d.ts} +2 -3
- package/dist/template.d.ts.map +1 -0
- package/dist/template.js +2 -0
- package/dist/template.js.map +1 -0
- package/dist/testing/index.d.ts +2 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/testing.cjs +2 -0
- package/dist/testing/testing.cjs.map +1 -0
- package/dist/{test/test.d.ts → testing/testing.d.ts} +8 -8
- package/dist/testing/testing.d.ts.map +1 -0
- package/dist/testing/testing.js +2 -0
- package/dist/testing/testing.js.map +1 -0
- package/dist/testing.cjs +1 -0
- package/dist/testing.js +1 -0
- package/package.json +19 -14
- package/dist/core/component.cjs +0 -2
- package/dist/core/component.cjs.map +0 -1
- package/dist/core/component.d.ts +0 -172
- package/dist/core/component.d.ts.map +0 -1
- package/dist/core/component.js +0 -2
- package/dist/core/component.js.map +0 -1
- package/dist/core/host.cjs +0 -2
- package/dist/core/host.cjs.map +0 -1
- package/dist/core/host.d.ts +0 -77
- package/dist/core/host.d.ts.map +0 -1
- package/dist/core/host.js +0 -2
- package/dist/core/host.js.map +0 -1
- package/dist/core/internal.cjs +0 -2
- package/dist/core/internal.cjs.map +0 -1
- package/dist/core/internal.d.ts +0 -107
- package/dist/core/internal.d.ts.map +0 -1
- package/dist/core/internal.js +0 -2
- package/dist/core/internal.js.map +0 -1
- package/dist/core/runtime-bindings.cjs +0 -2
- package/dist/core/runtime-bindings.cjs.map +0 -1
- package/dist/core/runtime-bindings.d.ts.map +0 -1
- package/dist/core/runtime-bindings.js +0 -2
- package/dist/core/runtime-bindings.js.map +0 -1
- package/dist/core/runtime-lifecycle.cjs +0 -2
- package/dist/core/runtime-lifecycle.cjs.map +0 -1
- package/dist/core/runtime-lifecycle.d.ts +0 -116
- package/dist/core/runtime-lifecycle.d.ts.map +0 -1
- package/dist/core/runtime-lifecycle.js +0 -2
- package/dist/core/runtime-lifecycle.js.map +0 -1
- package/dist/core/runtime.cjs +0 -1
- package/dist/core/runtime.d.ts +0 -3
- package/dist/core/runtime.d.ts.map +0 -1
- package/dist/core/runtime.js +0 -1
- package/dist/core/template-bindings.cjs +0 -2
- package/dist/core/template-bindings.cjs.map +0 -1
- package/dist/core/template-bindings.d.ts.map +0 -1
- package/dist/core/template-bindings.js +0 -2
- package/dist/core/template-bindings.js.map +0 -1
- package/dist/core/template-compiler.cjs +0 -2
- package/dist/core/template-compiler.cjs.map +0 -1
- package/dist/core/template-compiler.d.ts.map +0 -1
- package/dist/core/template-compiler.js +0 -2
- package/dist/core/template-compiler.js.map +0 -1
- package/dist/core/template-dom.cjs +0 -2
- package/dist/core/template-dom.cjs.map +0 -1
- package/dist/core/template-dom.d.ts.map +0 -1
- package/dist/core/template-dom.js +0 -2
- package/dist/core/template-html.cjs +0 -2
- package/dist/core/template-html.cjs.map +0 -1
- package/dist/core/template-html.d.ts.map +0 -1
- package/dist/core/template-html.js +0 -2
- package/dist/core/template-html.js.map +0 -1
- package/dist/core/template.cjs +0 -2
- package/dist/core/template.cjs.map +0 -1
- package/dist/core/template.d.ts.map +0 -1
- package/dist/core/template.js +0 -2
- package/dist/core/template.js.map +0 -1
- package/dist/core/utilities.cjs +0 -2
- package/dist/core/utilities.cjs.map +0 -1
- package/dist/core/utilities.d.ts +0 -68
- package/dist/core/utilities.d.ts.map +0 -1
- package/dist/core/utilities.js +0 -2
- package/dist/core/utilities.js.map +0 -1
- package/dist/directives/index.cjs +0 -1
- package/dist/directives/index.js +0 -1
- package/dist/directives/match.cjs +0 -2
- package/dist/directives/match.cjs.map +0 -1
- package/dist/directives/match.d.ts +0 -31
- package/dist/directives/match.d.ts.map +0 -1
- package/dist/directives/match.js +0 -2
- package/dist/directives/match.js.map +0 -1
- package/dist/labs/a11y.cjs +0 -2
- package/dist/labs/a11y.cjs.map +0 -1
- package/dist/labs/a11y.d.ts +0 -61
- package/dist/labs/a11y.d.ts.map +0 -1
- package/dist/labs/a11y.js +0 -2
- package/dist/labs/a11y.js.map +0 -1
- package/dist/labs/index.d.ts +0 -8
- package/dist/labs/index.d.ts.map +0 -1
- package/dist/labs/list.cjs +0 -2
- package/dist/labs/list.cjs.map +0 -1
- package/dist/labs/list.d.ts +0 -26
- package/dist/labs/list.d.ts.map +0 -1
- package/dist/labs/list.js +0 -2
- package/dist/labs/list.js.map +0 -1
- package/dist/labs/observers.cjs +0 -2
- package/dist/labs/observers.cjs.map +0 -1
- package/dist/labs/observers.d.ts +0 -42
- package/dist/labs/observers.d.ts.map +0 -1
- package/dist/labs/observers.js +0 -2
- package/dist/labs/observers.js.map +0 -1
- package/dist/labs/overlay.cjs +0 -2
- package/dist/labs/overlay.cjs.map +0 -1
- package/dist/labs/overlay.d.ts +0 -35
- package/dist/labs/overlay.d.ts.map +0 -1
- package/dist/labs/overlay.js +0 -2
- package/dist/labs/overlay.js.map +0 -1
- package/dist/labs/selectable.cjs +0 -2
- package/dist/labs/selectable.cjs.map +0 -1
- package/dist/labs/selectable.d.ts +0 -70
- package/dist/labs/selectable.d.ts.map +0 -1
- package/dist/labs/selectable.js +0 -2
- package/dist/labs/selectable.js.map +0 -1
- package/dist/labs/selection.cjs +0 -2
- package/dist/labs/selection.cjs.map +0 -1
- package/dist/labs/selection.d.ts +0 -68
- package/dist/labs/selection.d.ts.map +0 -1
- package/dist/labs/selection.js +0 -2
- package/dist/labs/selection.js.map +0 -1
- package/dist/labs.cjs +0 -1
- package/dist/labs.js +0 -1
- package/dist/test/index.d.ts +0 -2
- package/dist/test/index.d.ts.map +0 -1
- package/dist/test/test.cjs +0 -2
- package/dist/test/test.cjs.map +0 -1
- package/dist/test/test.d.ts.map +0 -1
- package/dist/test/test.js +0 -2
- package/dist/test/test.js.map +0 -1
- package/dist/test.cjs +0 -1
- package/dist/test.js +0 -1
- /package/dist/{core/runtime-bindings.d.ts → runtime-bindings.d.ts} +0 -0
- /package/dist/{core/template-dom.d.ts → template-dom.d.ts} +0 -0
package/dist/craftit.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{batch as e,computed as t,effect as n,isSignal as r,onCleanup as i,signal as a,untrack as o,watch as s}from"@vielzeug/stateit";export*from"@vielzeug/stateit";var c=0,l=e=>{for(let t of e)t()},u=(e,t,n)=>{/^on/i.test(t)||n==null||!1===n?e.removeAttribute(t):!0===n?e.setAttribute(t,``):e.setAttribute(t,String(n))},d=(e,t,n,r)=>{let i=n;return e.addEventListener(t,i,r),()=>e.removeEventListener(t,i,r)},f=e=>`${e?`${e}-`:`cft-`}${++c}`,p=(e,t)=>{let n=`${e}-${t&&t.trim()?t:f(e)}`;return{errorId:`error-${n}`,fieldId:n,helperId:`helper-${n}`,labelId:`label-${n}`}},m=(e,t)=>n=>{e()&&t(n)},h=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`),g={"'":`'`,'"':`"`,"&":`&`,"<":`<`,">":`>`},_=e=>String(e).replace(/[&<>"']/g,e=>g[e]),v=function(){return this.content},ee=(e,...t)=>{let n=``;for(let r=0;r<e.length;r++)if(n+=e[r],r<t.length){let e=t[r];n+=e&&typeof e==`object`&&`content`in e?e.content:e??``}return{content:n.trim(),toString:v}},y=new Map,te=e=>{if(e instanceof CSSStyleSheet)return e;let t=typeof e==`string`?e:e.content,n=y.get(t);if(n)return n;let r=new CSSStyleSheet;try{r.replaceSync(t),y.set(t,r)}catch(e){console.error(`[craftit:E2] style replace failed`,e)}return r},b=[],x=()=>{let e=b[b.length-1];if(!e)throw Error(`[craftit:E1] lifecycle outside setup`);return e},S=e=>{x().onMount.push(e)},C=e=>{b.length>0?x().cleanups.push(e):i(e)},ne=e=>{x().errorHandlers.push(e)},w=e=>{b.length>0&&C(e)},T=(e,t)=>{let r=n(e,t);return w(r),r};function re(e,t,r){if(Array.isArray(e)){let i=r,a=!1,s=!1,c=n(()=>{for(let t of e)t.value;if(a)o(t),i?.once&&c();else if(a=!0,i?.immediate&&(o(t),i.once))return void(s=!0)});return w(c),s&&c(),c}let i=s(e,t,r);return w(i),i}function E(e,t,n,r){e&&(e.addEventListener(t,n,r),C(()=>e.removeEventListener(t,n,r)))}var D={bubbles:!0,cancelable:!0,composed:!0},O={basic:(e,t,n={})=>e.dispatchEvent(new Event(t,{...D,...n})),custom:(e,t,n={})=>e.dispatchEvent(new CustomEvent(t,{...D,...n})),event:(e,t)=>e.dispatchEvent(t),focus:(e,t,n={})=>e.dispatchEvent(new FocusEvent(t,{...D,...n})),keyboard:(e,t,n={})=>e.dispatchEvent(new KeyboardEvent(t,{...D,...n})),mouse:(e,t,n={})=>e.dispatchEvent(new MouseEvent(t,{...D,...n})),touch:(e,t,n={})=>typeof TouchEvent<`u`?e.dispatchEvent(new TouchEvent(t,{...D,...n})):e.dispatchEvent(new CustomEvent(t,{...D,...n}))};function ie(e,t){let n=t===void 0?x().el:e,r=Object.entries(t===void 0?e:t).map(([e,t])=>T(()=>((e,t)=>{let r=`aria-${e}`,i=typeof t==`function`?t():t;i==null||!1===i?n.removeAttribute(r):n.setAttribute(r,String(i))})(e,t)));if(t!==void 0)return()=>{for(let e of r)e()}}var k=new WeakMap,ae=(e,t)=>{let n=x().el;k.has(n)||k.set(n,new Map),k.get(n).set(e,t)};function oe(e,...t){let n=x().el;for(;n;){if(n instanceof HTMLElement){let t=k.get(n)?.get(e);if(t!==void 0)return t}let t=n.getRootNode();n=n.parentElement??(t instanceof ShadowRoot?t.host:null)}return t.length>0?t[0]:void 0}function se(e){return Symbol(e)}var ce=(e,t,n)=>{e&&S(()=>{T(()=>{for(let r of n){let n=e[r]?.value;n!==void 0&&(t[r].value=n)}})})},le=new Set,ue=(e,t,n)=>{let r=`${n}:${e.localName}:${t||`default`}`;le.has(r)||(le.add(r),console.warn(`[craftit:E10] ${n} could not find a matching <slot${t?` name="${t}"`:``}> in <${e.localName}>. Render the slot before using ${n}.`))},de=(e,t)=>{let n=x().el,r=e===`default`?``:e,i=r?`slot[name="${r}"]`:`slot:not([name])`,a=n.shadowRoot?.querySelector(i);if(!a)return void ue(n,r,`onSlotChange()`);let o=()=>t(a.assignedElements({flatten:!0}));o(),a.addEventListener(`slotchange`,o),C(()=>a.removeEventListener(`slotchange`,o))};function A(e,t){for(let[n,r]of Object.entries(t))if(n===`classMap`)pe(e,r);else if(n.startsWith(`on`)&&n.length>2&&typeof r==`function`){let t=n.slice(2);E(e,t[0].toLowerCase()+t.slice(1),r)}else fe(e,n,r)}function fe(e,t,n){typeof n==`function`?T(()=>u(e,t,n())):u(e,t,n)}function pe(e,t){let n=new Set;T(()=>{let r=new Set(Object.entries(t()).filter(([,e])=>e).map(([e])=>e));for(let t of n)r.has(t)||e.classList.remove(t);for(let t of r)n.has(t)||e.classList.add(t);n=r})}var j=Symbol(`craftit.htmlResultBrand`);function me(){return{value:null}}function he(){return[]}function M(e,t=[]){let n={__bindings:t,__html:e,toString:()=>e};return Object.defineProperty(n,j,{configurable:!1,enumerable:!1,value:!0,writable:!1}),n}var N=e=>typeof e==`object`&&!!e&&!0===e[j],P=Symbol(`craftit.eachSignal`),F=e=>r(e)?e:typeof e==`function`?t(e):void 0,ge=e=>{if(!r(e))return!1;let t=Object.getPrototypeOf(e);for(;t;){let e=Object.getOwnPropertyDescriptor(t,`value`);if(e)return typeof e.set==`function`;t=Object.getPrototypeOf(t)}return!1},I=(e,t)=>{if(!Object.is(e.value,t))try{e.value=t}catch{}},L=new Map,R=e=>(e=>{let t=L.get(e);if(!t){if(t=document.createElement(`template`),t.innerHTML=e,L.size>=1e3){let e=L.keys().next().value;e!==void 0&&L.delete(e)}L.set(e,t)}return t})(e).content.cloneNode(!0),z=(e,t)=>{if(e.nodeType===Node.COMMENT_NODE){let n=e.nodeValue;n&&t.comments.set(n,e);return}if(e.nodeType!==Node.ELEMENT_NODE)return;let n=e.getAttribute(`u`);n&&t.elements.set(n,e)},B=e=>{let t={comments:new Map,elements:new Map};for(let n of e){let e=document.createTreeWalker(n,NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_ELEMENT);for(z(n,t);e.nextNode();)z(e.currentNode,t)}return t},V=e=>Array.from(R(e).childNodes),H=(e,t,n)=>{if(e.parentNode)for(let r of t)e.parentNode.insertBefore(r,n)},U=e=>Array.isArray(e)||typeof e==`object`&&!!e,W=(e,t,n)=>{n(T(()=>t(e.value)))},_e=(e,t,n)=>{let r=n=>{let r=$.get(e)?.get(t.name);if(!r&&U(n))return void(e[t.name]=n);if(r&&!r.reflect||(t.mode===`bool`?e.toggleAttribute(t.name,!!n):u(e,t.name,n)),!r)return;let i=U(n)?n:r.parse(t.mode===`bool`?n?``:null:n==null||!1===n?null:String(n));Object.is(r.signal.peek(),i)||(r.signal.value=i)};t.signal?W(t.signal,r,n):r(t.value)},ve=(e,t,n)=>{let r=n=>{e[t.name]=n};t.signal?W(t.signal,r,n):r(t.value),((e,t,n,r)=>{n&&(t===`value`?(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)&&r(d(e,e instanceof HTMLSelectElement?`change`:`input`,()=>{I(n,e.value)})):t===`checked`&&e instanceof HTMLInputElement&&r(d(e,`change`,()=>{I(n,e.checked)})))})(e,t.name,t.model,n)},ye=(e,t,n)=>{let{modifiers:r}=t,i=r?{capture:!!r.capture,once:!!r.once,passive:!!r.passive}:void 0;n(d(e,t.name,e=>{r?.self&&e.target!==e.currentTarget||(r?.stop&&e.stopPropagation(),r?.prevent&&!r?.passive&&e.preventDefault(),t.handler(e))},i))},be=(e,t,n)=>{let{ref:r}=t;typeof r==`function`?(r(e),n(()=>r(null))):Array.isArray(r)?(r.push(e),n(()=>{let t=r.indexOf(e);t!==-1&&r.splice(t,1)})):(r.value=e,n(()=>{r.value=null}))},G=(e,t,n,r)=>{let i=new Map;for(let a of e){let e=a.uid;if(a.type===`text`){let r=n.comments.get(e);if(r){let i=document.createTextNode(``);r.replaceWith(i),n.comments.delete(e),W(a.signal,e=>{i.textContent=String(e)},t)}}else a.type===`html`?r?.onHtml?.(a):(i.has(e)||i.set(e,[]),i.get(e).push(a))}for(let[e,r]of i){let i=n.elements.get(e);if(i){i.removeAttribute(`u`),n.elements.delete(e);for(let e of r)switch(e.type){case`attr`:_e(i,e,t);break;case`callback`:e.apply(i,t);break;case`event`:ye(i,e,t);break;case`prop`:ve(i,e,t);break;case`ref`:be(i,e,t)}}}},K=(e,t,n,r)=>{let i=F(r);return i?{mode:e,name:t,signal:i,type:`attr`,uid:n}:{mode:e,name:t,type:`attr`,uid:n,value:r}},xe=(e,t,n)=>{let r=F(n);return r?{model:ge(n)?n:void 0,name:e,signal:r,type:`prop`,uid:t}:{name:e,type:`prop`,uid:t,value:n}},Se=RegExp(`u="([^"]+)"`,`g`),Ce=[{kind:`event`,regex:/\s+@([a-zA-Z_][-a-zA-Z0-9_.]*)\s*=\s*["']?$/},{kind:`ref`,regex:/\s+ref\s*=\s*["']?$/},{kind:`specialAttr`,regex:/\s+([:?])([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/},{kind:`prop`,regex:/\.([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/},{kind:`plainAttr`,regex:/\s+([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/}],q=new WeakMap,we=e=>{let[t,...n]=e.split(`.`),r={};for(let e of n)e===`capture`?r.capture=!0:e===`once`?r.once=!0:e===`passive`?r.passive=!0:e===`prevent`?r.prevent=!0:e===`self`?r.self=!0:e===`stop`&&(r.stop=!0);return{modifiers:Object.keys(r).length?r:void 0,name:t}},J=()=>{let e=0;return()=>String(e++)},Y=(e,t)=>{let n=new Map,r=e=>{let r=n.get(e);if(r)return r;let i=t();return n.set(e,i),i};return{bindings:e.__bindings.map(e=>({...e,uid:r(e.uid)})),html:e.__html.replace(Se,(e,t)=>`u="${r(t)}"`).replace(/<!--(\d+)-->/g,(e,t)=>`\x3c!--${r(t)}--\x3e`)}},X=e=>typeof e==`string`?_(e):e==null?``:N(e)?e.__html:_(String(e)),Te=(e,n)=>{let i=(e=>typeof e==`object`&&e&&P in e?e[P]:null)(e);if(i)return{keyed:!0,signal:i};if(typeof e==`function`&&!r(e)){let{signal:t}=((e,t)=>{let n={bindings:[],html:``},r=a(n);return t(()=>{let t=e(),i=Array.isArray(t)?t:[t],a=J(),o=``,s=[];for(let e of i)if(N(e)){let t=Y(e,a);o+=t.html,s.push(...t.bindings)}else o+=X(e);let c=s.length!==n.bindings.length||s.some((e,t)=>e!==n.bindings[t]);(o!==n.html||c)&&(n={bindings:s,html:o},r.value=n)}),{bindings:[],signal:r}})(e,n);return{keyed:!1,signal:t}}return r(e)&&N(e.value)?{keyed:!1,signal:t(()=>{let t=e.value;if(!N(t))return{bindings:[],html:X(t)};let n=Y(t,J());return{bindings:n.bindings,html:n.html}})}:null},Ee=e=>{l(e.cleanups);for(let t of e.nodes)t.remove()},Z=(e,t,n=B(e))=>{let r=[];return G(t,e=>r.push(e),n),r},De=(t,r,i,a,s)=>{let c=((e,t)=>{let n=document.createTreeWalker(e,NodeFilter.SHOW_COMMENT);for(;n.nextNode();){let e=n.currentNode;if(e.nodeValue===t)return e}return null})(t,r.uid);if(!c)return;let u=document.createComment(`html-binding`);c.replaceWith(u);let d=[],f=e=>d.push(e),p=()=>{l(d),d=[]},m=null,h=[];i(n(()=>{e(()=>{let n=r.signal.value;if(!r.keyed&&n.html===m)return;m=n.html,p();let{bindings:i,html:c,keys:d}=n;r.keyed&&!a.has(r.uid)&&a.set(r.uid,new Map);let g=r.keyed?a.get(r.uid):null,_=u.parentElement||t,v=!1;o(()=>{e(()=>{if(g&&d?.length&&n.items?.length===d.length){if(v=!0,g.size===0&&h.length>0){for(let e of h)e.remove();h=[]}let e=new Map;for(let t=0;t<d.length;t++){let r=d[t],i=n.items[t],a=g.get(r),o=t>0?e.get(d[t-1])?.nodes:null,s=o?.length?o[o.length-1].nextSibling:u.nextSibling;if(a?.html===i.html){a.nodes[0]&&H(u,a.nodes,s),l(a.cleanups);let t=B(a.nodes),n=Z(a.nodes,i.bindings,t);e.set(r,{...a,bindings:i.bindings,cleanups:n,targets:t})}else if(a){l(a.cleanups);let t=V(i.html),n=B(t);H(u,t,s);let o=Z(t,i.bindings,n);e.set(r,{bindings:i.bindings,cleanups:o,html:i.html,nodes:t,targets:n});for(let e of a.nodes)e.remove()}else{let t=V(i.html),n=B(t);H(u,t,s);let a=Z(t,i.bindings,n);e.set(r,{bindings:i.bindings,cleanups:a,html:i.html,nodes:t,targets:n})}}for(let[t,n]of g)e.has(t)||Ee(n);a.set(r.uid,e)}else{if(r.keyed&&g&&g.size>0)for(let[,e]of g)Ee(e);else for(let e of h)e.remove();let e=R(c);h=Array.from(e.childNodes),u.after(e),r.keyed&&a.set(r.uid,new Map)}}),v||s(_,i,f,{onHtml:e=>De(_,e,f,a,s)})})})})),i(p),r.keyed&&i(()=>a.delete(r.uid))},Oe=(e,t,n,r)=>{G(t,n,(e=>{let t={comments:new Map,elements:new Map},n=document.createTreeWalker(e,NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_ELEMENT);for(z(e,t);n.nextNode();)z(n.currentNode,t);return t})(e),r)},ke=(e,...t)=>((e,t,n)=>{let i=(e=>{let t=q.get(e);return t||(t=(e=>{let t=[];for(let n=0;n<e.length-1;n++){let r=e[n],i=!1;for(let e of Ce){let n=e.regex.exec(r);if(!n)continue;let a=r.slice(0,-n[0].length);if(i=!0,e.kind===`event`){let e=we(n[1]);t.push({kind:`event`,modifiers:e.modifiers,name:e.name,prefix:a,raw:r})}else e.kind===`ref`?t.push({kind:`ref`,prefix:a,raw:r}):e.kind===`specialAttr`?t.push({kind:`specialAttr`,mode:n[1]===`?`?`bool`:`attr`,name:n[2],prefix:a,raw:r}):e.kind===`prop`?t.push({kind:`prop`,name:n[1],prefix:a,raw:r}):e.kind===`plainAttr`&&t.push({kind:`plainAttr`,name:n[1],prefix:a,raw:r});break}i||t.push({kind:`node`,prefix:r,raw:r})}return{slots:t,tail:e[e.length-1]??``}})(e),q.set(e,t)),t})(e),o=``,s=[],c=null,l=J(),u=e=>(c&&!(e=>e.lastIndexOf(`<`)>e.lastIndexOf(`>`))(e)||(c=l()),c),d=()=>{c=null};for(let e=0;e<i.slots.length;e++){let c=i.slots[e],f=t[e];if(c.kind===`event`){if(typeof f==`function`){let e=u(c.prefix);o+=`${c.prefix} u="${e}"`,s.push({handler:f,modifiers:c.modifiers,name:c.name,type:`event`,uid:e})}else o+=c.raw;continue}if(c.kind===`ref`){if(f){let e=u(c.prefix);o+=`${c.prefix} u="${e}"`,s.push({ref:f,type:`ref`,uid:e})}else o+=c.raw;continue}if(c.kind===`specialAttr`){let e=u(c.prefix);o+=`${c.prefix} u="${e}"`,s.push(K(c.mode,c.name,e,f));continue}if(c.kind===`prop`){let e=u(c.prefix);o+=`${c.prefix} u="${e}"`,s.push(xe(c.name,e,f));continue}if(c.kind===`plainAttr`){let e=u(c.prefix);o+=`${c.prefix} u="${e}"`,s.push(K(`attr`,c.name,e,f));continue}if(typeof f==`object`&&f&&(`mount`in f||`render`in f)){let e=`render`in f,t=e?l():u(c.raw);o+=e?`${c.raw}\x3c!--${t}--\x3e`:`${c.raw} u="${t}"`;let r=f.mount?.bind(f);if(r&&s.push({apply:(e,t)=>{r(e,{registerCleanup:t})},type:`callback`,uid:t}),e){let e=f.render.bind(f),r={bindings:[],html:``},i=a(r);n(()=>{let t=e(),n=Array.isArray(t)?t:[t],a=J(),o=``,s=[];for(let e of n)if(N(e)){let t=Y(e,a);o+=t.html,s.push(...t.bindings)}else o+=X(e);let c=s.length!==r.bindings.length||s.some((e,t)=>e!==r.bindings[t]);(o!==r.html||c)&&(r={bindings:s,html:o},i.value=r)}),s.push({keyed:!1,signal:i,type:`html`,uid:t})}continue}d();let p=Te(f,n);if(p){let e=l();o+=`${c.raw}\x3c!--${e}--\x3e`,s.push({keyed:p.keyed,signal:p.signal,type:`html`,uid:e});continue}if(Array.isArray(f)){let e=``;for(let t of f)if(N(t)){let n=Y(t,l);e+=n.html,s.push(...n.bindings)}else e+=X(t);o+=c.raw+e;continue}if(r(f)){let e=l();o+=`${c.raw}\x3c!--${e}--\x3e`,s.push({signal:f,type:`text`,uid:e})}else if(N(f)){let e=Y(f,l);o+=c.raw+e.html,s.push(...e.bindings)}else o+=c.raw+X(f)}return o+=i.tail,M((e=>e.replace(/>\s+</g,`><`).trim())(o),s)})(e,t,T),Q=new WeakMap,Ae=new WeakMap,je=(e,t)=>{let r=x().el;if(!r.constructor.formAssociated)throw Error(`[craftit:E8] defineField() requires defineComponent({ formAssociated: true })`);let i=Ae.get(r)??r.attachInternals();Ae.set(r,i);let a=e.toFormValue??(e=>e==null?``:String(e));return n(()=>{i.setFormValue(a(e.value.value))}),e.disabled&&n(()=>{e.disabled.value?i.states.add(`disabled`):i.states.delete(`disabled`)}),t&&Q.set(r,{...Q.get(r),...t}),{checkValidity:()=>i.checkValidity(),internals:i,reportValidity:()=>i.reportValidity(),setCustomValidity:e=>e?i.setValidity({customError:!0},e):i.setValidity({}),setValidity:i.setValidity.bind(i)}},Me=new Set([`default`,`omit`,`parse`,`reflect`,`type`]),Ne=e=>typeof e==`object`&&!!e&&`default`in e&&Object.keys(e).every(e=>Me.has(e)),$=new WeakMap,Pe=(e,t,r)=>{let i=x(),o=i.el;$.has(o)||$.set(o,new Map);let s=r?.parse??(e=>r?.type===Boolean?e===``||e===`true`:typeof t==`boolean`?e!==null&&e!==`false`:e==null?t:r?.type===Number||typeof t==`number`?Number(e):e),c=a(t),l=Object.prototype.hasOwnProperty.call(o,e),d=l?o[e]:void 0,f={parse:s,reflect:r?.reflect??!0,signal:c};if(l?(delete o[e],c.value=d):o.hasAttribute(e)&&(c.value=s(o.getAttribute(e))),$.get(o).set(e,f),Object.defineProperty(o,e,{configurable:!0,enumerable:!0,get:()=>c.value,set:e=>{c.value=e}}),r?.reflect??1){let t=r?.omit??!1;i.onMount.push(()=>{i.cleanups.push(n(()=>{let n=c.value;n==null||!1===n||t&&n===``?o.removeAttribute(e):u(o,e,n)}))})}return c},Fe=(e,t)=>({...t,default:e}),Ie=class extends HTMLElement{static _setup;static _options;static formAssociated=!1;static observedAttributes=[];shadow;_keyedStates=new Map;_mountFns=[];_template=null;_appliedHtmlBindings=new Set;_setupDone=!1;_runtime;constructor(){super();let e=this.constructor._options;this.shadow=this.attachShadow({mode:`open`,...e?.shadow}),this._runtime={cleanups:[],el:this,errorHandlers:[],onMount:[],styles:e?.styles}}connectedCallback(){this._setupDone||this._runSetup(),this._init()}attributeChangedCallback(e,t,n){if(t===n)return;let r=$.get(this)?.get(e);if(!r)return;let i=r.parse(n);Object.is(r.signal.peek(),i)||(r.signal.value=i)}disconnectedCallback(){l(this._runtime.cleanups),this._runtime.cleanups=[],this._runtime.onMount=this._mountFns.slice(),this._appliedHtmlBindings.clear(),this._keyedStates.clear()}formAssociatedCallback(e){Q.get(this)?.onAssociated?.(e)}formDisabledCallback(e){Q.get(this)?.onDisabled?.(e)}formResetCallback(){Q.get(this)?.onReset?.()}formStateRestoreCallback(e,t){Q.get(this)?.onStateRestore?.(e,t)}_handleError(e){if(this._runtime.errorHandlers.length>0)for(let t of this._runtime.errorHandlers)t(e);else console.error(`[craftit:E3] <${this.localName}>`,e)}_runSetup(){this._setupDone=!0,b.push(this._runtime);try{let{host:e}=this.constructor._options??{};if(e)for(let[t,n]of Object.entries(e))typeof n==`boolean`?n?this.setAttribute(t,``):this.removeAttribute(t):this.setAttribute(t,String(n));let t=this.constructor._setup({host:this,shadow:this.shadow});(typeof t==`string`||typeof t==`object`&&t&&`__html`in t)&&(this._template=t)}catch(e){this._handleError(e)}finally{b.pop()}}_init(){let{styles:e}=this._runtime;if(e?.length&&(this.shadow.adoptedStyleSheets=e.map(te)),this._template){let e=typeof this._template==`string`?M(this._template):this._template;if(this.shadow.replaceChildren(R(e.__html)),e.__bindings.length){let t=e=>this._runtime.cleanups.push(e);Oe(this.shadow,e.__bindings,t,{onHtml:e=>{this._appliedHtmlBindings.has(e.uid)||(this._appliedHtmlBindings.add(e.uid),((e,t,n,r)=>{De(e,t,n,r,Oe)})(this.shadow,e,t,this._keyedStates))}})}}queueMicrotask(()=>{b.push(this._runtime);try{let e=this._runtime.onMount;this._mountFns=e.slice();for(let t of e){let e=t();typeof e==`function`&&this._runtime.cleanups.push(e)}}catch(e){this._handleError(e)}finally{b.pop(),this._runtime.onMount=[]}})}};function Le(e){let{formAssociated:t,host:n,props:r,setup:i,shadow:o,styles:s,tag:c}=e;return function(e,t,n={}){if(!e)throw Error(`[craftit:E4] registerComponent(tag, ...) requires a tag name`);if(customElements.get(e))throw Error(`[craftit:E9] custom element already defined: ${e}`);class r extends Ie{static _setup=t;static _options=n;static formAssociated=n.formAssociated??!1;static observedAttributes=n.observedAttrs??[]}return customElements.define(e,r),e}(c,e=>{let t=r?function(e){let t={};for(let[n,r]of Object.entries(e)){let e=Ne(r)?r:{default:r},i={reflect:!(typeof e.default==`object`&&e.default!==null||Array.isArray(e.default)),...e};t[n]=Pe(h(n),e.default,i)}return t}(r):{},n=(()=>{let e=x().el;return(t,...n)=>{O.custom(e,String(t),n.length>0?{detail:n[0]}:void 0)}})(),o=(()=>{let e=x().el,t=new Map;return{has:n=>(n=>{if(t.has(n))return t.get(n);let r=a(!1);return t.set(n,r),S(()=>{let t=n?`slot[name="${n}"]`:`slot:not([name])`,i=e.shadowRoot?.querySelector(t);if(!i)return void ue(e,n,`slots.has()`);let a=()=>{r.value=i.assignedNodes().length>0};return a(),i.addEventListener(`slotchange`,a),()=>i.removeEventListener(`slotchange`,a)}),r})(n===`default`?``:String(n))}})();return i({emit:n,host:e.host,props:t,reflect:t=>A(e.host,t),shadow:e.shadow,slots:o})},{formAssociated:t,host:n,observedAttrs:r?Object.keys(r).map(h):[],shadow:o,styles:s})}var Re=e=>{let t=a({height:0,width:0}),n=new ResizeObserver(([e])=>{if(!e)return;let n=e.contentBoxSize[0];n&&(t.value={height:n.blockSize,width:n.inlineSize})});return n.observe(e),C(()=>n.disconnect()),t};export{ie as aria,se as createContext,p as createFormIds,f as createId,ee as css,Le as defineComponent,je as defineField,T as effect,_ as escapeHtml,O as fire,m as guard,E as handle,ke as html,oe as inject,Re as observeResize,C as onCleanup,ne as onError,S as onMount,de as onSlotChange,Pe as prop,ae as provide,me as ref,A as reflect,he as refs,ce as syncContextProps,h as toKebab,Fe as typed,re as watch};
|
|
1
|
+
import{batch as e,batch as t,computed as n,computed as r,effect as i,isSignal as a,isSignal as o,onCleanup as s,peekValue as c,readonly as l,signal as u,signal as d,toValue as f,untrack as p,untrack as m,watch as h,writable as g}from"@vielzeug/stateit";var ee=Symbol(`craftit.htmlResultBrand`),te=0,ne=e=>`${e?`${e}-`:`cft-`}${++te}`;function re(){return d(null)}function ie(){return[]}function ae(e,t=[]){let n={__bindings:t,__html:e,toString(){return e}};return Object.defineProperty(n,ee,{configurable:!1,enumerable:!1,value:!0,writable:!1}),n}var _=e=>typeof e==`object`&&!!e&&e[ee]===!0,v=Symbol(`craftit.eachSignal`),y=e=>{let t=[...e];for(let e=t.length-1;e>=0;e--)t[e]?.()},b=(e,t,n)=>{if(/^on/i.test(t)){e.removeAttribute(t);return}n==null||n===!1?e.removeAttribute(t):n===!0?e.setAttribute(t,t.startsWith(`aria-`)?`true`:``):e.setAttribute(t,String(n))},x=(e,t,n,r)=>{let i=n;return e.addEventListener(t,i,r),()=>e.removeEventListener(t,i,r)},S=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`),oe={"'":`'`,'"':`"`,"&":`&`,"<":`<`,">":`>`},C=e=>String(e).replace(/[&<>"']/g,e=>oe[e]),se=()=>{let e=E().el;return((t,...n)=>{A.custom(e,String(t),n.length>0?{detail:n[0]}:void 0)})},ce=function(){return this.content},le=(e,...t)=>{let n=``;for(let r=0;r<e.length;r++)if(n+=e[r],r<t.length){let e=t[r];n+=e&&typeof e==`object`&&`content`in e?e.content:e??``}return{content:n.trim(),toString:ce}},w=new Map,ue=e=>{if(e instanceof CSSStyleSheet)return e;let t=typeof e==`string`?e:e.content,n=w.get(t);if(n)return n;let r=new CSSStyleSheet;try{r.replaceSync(t),w.set(t,r)}catch(e){console.error(`[craftit:E2] style replace failed`,e)}return r},T=[],E=()=>{let e=T[T.length-1];if(!e)throw Error(`[craftit:E1] lifecycle outside setup`);return e},de=e=>{E().onMount.push(e)},D=e=>{T.length>0?E().cleanups.push(e):s(e)},fe=e=>{T.length>0&&D(e)},pe=e=>{E().errorHandlers.push(e)},O=(e,t)=>{let n=i(e,t);return fe(n),n};function me(e,t,n){let r=h(e,t,n);return fe(r),r}function he(e,t,n,r){e&&(e.addEventListener(t,n,r),D(()=>e.removeEventListener(t,n,r)))}var ge=()=>{let e=d(null),t=()=>{e.value?.(),e.value=null};return D(t),{clear:t,set:n=>{e.value!==n&&(t(),e.value=n??null)},value:e}},_e=(e,t,n)=>O(()=>{let n=e.value;if(n)return t(n)},n),k={bubbles:!0,cancelable:!0,composed:!0},A={custom(e,t,n={}){return e.dispatchEvent(new CustomEvent(t,{...k,...n}))},event(e,t){return e.dispatchEvent(t)},focus(e,t,n={}){return e.dispatchEvent(new FocusEvent(t,{...k,...n}))},keyboard(e,t,n={}){return e.dispatchEvent(new KeyboardEvent(t,{...k,...n}))},mouse(e,t,n={}){return e.dispatchEvent(new MouseEvent(t,{...k,...n}))},touch(e,t,n={}){return typeof TouchEvent<`u`?e.dispatchEvent(new TouchEvent(t,{...k,...n})):e.dispatchEvent(new CustomEvent(t,{...k,...n}))}},j=new WeakMap,ve=(e,t)=>{let n=E().el;j.has(n)||j.set(n,new Map),j.get(n).set(e,t)};function ye(e,...t){let n=E().el;for(;n;){if(n instanceof HTMLElement){let t=j.get(n)?.get(e);if(t!==void 0)return t}let t=n.getRootNode();n=n.parentElement??(t instanceof ShadowRoot?t.host:null)}return t.length>0?t[0]:void 0}function be(e){return Symbol(e)}var xe=(e,t,n)=>{e&&de(()=>{O(()=>{let r=t;for(let t of n){let n=e[t]?.value;n!==void 0&&(r[t].value=n)}})})},Se=(e,t)=>{let n=!1;O(()=>{let r=!!t.contextDisabled?.value;r&&!n?(e.setAttribute(`disabled`,``),n=!0):!r&&n&&!t.ownDisabled?.value&&(e.removeAttribute(`disabled`),n=!1);let i=t.contextSize?.value,a=!!t.ownSize?.value;i&&!a?e.setAttribute(`size`,i):a||e.removeAttribute(`size`);let o=t.contextVariant?.value,s=!!t.ownVariant?.value;o&&!s?e.setAttribute(`variant`,o):s||e.removeAttribute(`variant`)})},M=`default`,N=e=>!e||e===M?M:e,P=new WeakMap,F=()=>{let e=E().el,t=P.get(e);if(t)return t;let n=new Map,r=new Map,i=new Map,a=new Map,o=!1,s=e=>{let t=N(e),r=n.get(t);return r||(r=d(!1),n.set(t,r)),r},c=e=>{let t=N(e),n=r.get(t);return n||(n=d([]),r.set(t,n)),n},l=e=>{let t=N(e),n=i.get(t),r=[];if(n)for(let e of n)r.push(...e.assignedElements({flatten:!0}));c(t).value=r,s(t).value=r.length>0},u=e=>{if(a.has(e))return;let t=N(e.getAttribute(`name`)),n=i.get(t)??new Set;n.add(e),i.set(t,n);let r=()=>l(t);e.addEventListener(`slotchange`,r),a.set(e,()=>{if(e.removeEventListener(`slotchange`,r),a.delete(e),o)return;let n=i.get(t);n&&(n.delete(e),n.size===0&&i.delete(t),l(t))}),l(t)},f=e=>{a.get(e)?.()};s(M),c(M),e.shadowRoot?.querySelectorAll(`slot`).forEach(e=>u(e));let p=new MutationObserver(e=>{for(let t of e)t.addedNodes.forEach(e=>{if(e instanceof HTMLSlotElement){u(e);return}e instanceof Element&&e.querySelectorAll(`slot`).forEach(e=>u(e))}),t.removedNodes.forEach(e=>{if(e instanceof HTMLSlotElement){f(e);return}e instanceof Element&&e.querySelectorAll(`slot`).forEach(e=>f(e))})});e.shadowRoot&&p.observe(e.shadowRoot,{childList:!0,subtree:!0}),D(()=>{o=!0,p.disconnect();for(let e of[...a.values()])e();a.clear(),i.clear()});let m={elements:e=>c(N(e)),has:e=>s(N(e))};return P.set(e,m),m},Ce=()=>{let e=E().el;return{bind:(t,n,r)=>{let i=[],a=typeof t==`string`?{[t]:n}:t,o=typeof t==`string`&&t===`on`?r:n;if(`attr`in a)for(let[t,n]of Object.entries(a.attr)){let r=we(e,t.startsWith(`aria-`)||t===`role`?t:t.startsWith(`aria`)?`aria-${t.slice(4).toLowerCase()}`:t,n);r&&i.push(r)}if(`class`in a&&i.push(Te(e,a.class)),`on`in a)for(let t of Object.keys(a.on)){let n=a.on[t];n&&i.push(x(e,t,n,o))}let s=()=>{for(;i.length>0;)i.pop()?.()};return D(s),s},el:e,shadowRoot:e.shadowRoot}};function we(e,t,n){if(typeof n==`function`)return O(()=>b(e,t,n()));b(e,t,n)}function Te(e,t){let n=new Set;return O(()=>{let r=new Set(Object.entries(t()).filter(([,e])=>e).map(([e])=>e));for(let t of n)r.has(t)||e.classList.remove(t);for(let t of r)n.has(t)||e.classList.add(t);n=r})}var Ee=new Set([`default`,`omit`,`parse`,`reflect`,`type`]),I=new Set,De=e=>typeof e!=`object`||!e||!(`default`in e)?!1:Object.keys(e).every(e=>Ee.has(e)),L=new WeakMap,Oe=(e,t,n)=>{let r=E().el;L.has(r)||L.set(r,new Map);let i=n?.parse??(e=>n?.type===Boolean?e===``||e===`true`:typeof t==`boolean`?e!==null&&e!==`false`:e==null?t:n?.type===Number||typeof t==`number`?Number(e):e),a=d(t),o=Object.prototype.hasOwnProperty.call(r,e),s=o?r[e]:void 0,c={parse:i,reflect:n?.reflect??!0,signal:a};if(o?(delete r[e],a.value=s):r.hasAttribute(e)&&(a.value=i(r.getAttribute(e))),L.get(r).set(e,c),Object.defineProperty(r,e,{configurable:!0,enumerable:!0,get:()=>a.value,set:e=>{a.value=e}}),n?.reflect??!0){let t=n?.omit??!1;O(()=>{let n=a.value;n==null||n===!1||t&&n===``?r.removeAttribute(e):b(r,e,n)})}return a};function ke(e){let t={},n=E().el.localName;for(let[r,i]of Object.entries(e)){let e=De(i)?i:{default:i},a=typeof e.default==`object`&&e.default!==null||Array.isArray(e.default);if(e.reflect===!0&&a){let e=`${n}:${String(r)}`;I.has(e)||(I.add(e),console.warn(`[craftit] props.${e} requested reflect: true for a structured default; reflection is disabled.`))}let o={reflect:!a,...e};t[r]=Oe(S(r),e.default,o)}return t}var R=new WeakMap,z=new WeakMap,Ae=(e,t)=>{let n=E().el;if(!n.constructor.formAssociated)throw Error(`[craftit:E8] defineField() requires define(..., { formAssociated: true, ... })`);let r=z.get(n)??n.attachInternals();z.set(n,r);let a=e.toFormValue??(e=>e==null?``:String(e));i(()=>{r.setFormValue(a(e.value.value))});let o=e.disabled;return o&&i(()=>{o.value?r.states.add(`disabled`):r.states.delete(`disabled`)}),t&&R.set(n,{...R.get(n),...t}),{checkValidity:()=>r.checkValidity(),internals:r,reportValidity:()=>r.reportValidity(),setCustomValidity:e=>e?r.setValidity({customError:!0},e):r.setValidity({}),setValidity:r.setValidity.bind(r)}},B=e=>{if(o(e))return e;if(typeof e==`function`)return r(e)},je=e=>{if(!o(e))return!1;let t=Object.getPrototypeOf(e);for(;t;){let e=Object.getOwnPropertyDescriptor(t,`value`);if(e)return typeof e.set==`function`;t=Object.getPrototypeOf(t)}return!1},V=(e,t)=>{if(!Object.is(e.value,t))try{e.value=t}catch{}},Me=(e,t,n,r)=>{if(n){if(t===`value`){(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)&&r(x(e,e instanceof HTMLSelectElement?`change`:`input`,()=>{V(n,e.value)}));return}t===`checked`&&e instanceof HTMLInputElement&&r(x(e,`change`,()=>{V(n,e.checked)}))}},H=new Map,Ne=e=>{let t=H.get(e);return t||(t=document.createElement(`template`),t.innerHTML=e,H.set(e,t)),t},U=e=>Ne(e).content.cloneNode(!0),W=(e,t)=>{if(e.nodeType===Node.COMMENT_NODE){let n=e.nodeValue;n&&t.comments.set(n,e);return}if(e.nodeType!==Node.ELEMENT_NODE)return;let n=e.getAttribute(`u`);n&&t.elements.set(n,e)},Pe=e=>{let t={comments:new Map,elements:new Map},n=document.createTreeWalker(e,NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_ELEMENT);for(W(e,t);n.nextNode();)W(n.currentNode,t);return t},G=e=>{let t={comments:new Map,elements:new Map};for(let n of e){let e=document.createTreeWalker(n,NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_ELEMENT);for(W(n,t);e.nextNode();)W(e.currentNode,t)}return t},Fe=(e,t)=>{let n=document.createTreeWalker(e,NodeFilter.SHOW_COMMENT);for(;n.nextNode();){let e=n.currentNode;if(e.nodeValue===t)return e}return null},K=e=>Array.from(U(e).childNodes),q=(e,t,n)=>{if(e.parentNode)for(let r of t)e.parentNode.insertBefore(r,n)},J=e=>Array.isArray(e)||typeof e==`object`&&!!e,Y=(e,t,n)=>{n(i(()=>t(e.value)))},Ie=(e,t,n)=>{let r=n=>{let r=L.get(e)?.get(t.name);if(!r&&J(n)){e[t.name]=n;return}if((!r||r.reflect)&&(t.mode===`bool`?e.toggleAttribute(t.name,!!n):b(e,t.name,n)),!r)return;let i=J(n)?n:r.parse(t.mode===`bool`?n?``:null:n==null||n===!1?null:String(n));Object.is(m(()=>r.signal.value),i)||(r.signal.value=i)};t.signal?Y(t.signal,r,n):r(t.value)},Le=(e,t,n)=>{let r=n=>{e[t.name]=n};t.signal?Y(t.signal,r,n):r(t.value),Me(e,t.name,t.model,n)},Re=(e,t,n)=>{let{modifiers:r}=t,i=r?{capture:!!r.capture,once:!!r.once,passive:!!r.passive}:void 0;n(x(e,t.name,e=>{r?.self&&e.target!==e.currentTarget||(r?.stop&&e.stopPropagation(),r?.prevent&&!r?.passive&&e.preventDefault(),t.handler(e))},i))},ze=(e,t,n)=>{let{ref:r}=t;if(typeof r==`function`){r(e),n(()=>r(null));return}if(Array.isArray(r)){r.push(e),n(()=>{let t=r.indexOf(e);t!==-1&&r.splice(t,1)});return}r.value=e,n(()=>{r.value=null})},Be=(e,t,n,r)=>{let i=new Map;for(let a of e){let e=a.uid;if(a.type===`text`){let r=n.comments.get(e);if(r){let i=document.createTextNode(``);r.replaceWith(i),n.comments.delete(e),Y(a.signal,e=>{i.textContent=String(e)},t)}}else a.type===`html`?r?.onHtml?.(a):(i.has(e)||i.set(e,[]),i.get(e).push(a))}for(let[e,r]of i){let i=n.elements.get(e);if(i){i.removeAttribute(`u`),n.elements.delete(e);for(let e of r)switch(e.type){case`attr`:Ie(i,e,t);break;case`callback`:e.apply(i,t);break;case`event`:Re(i,e,t);break;case`prop`:Le(i,e,t);break;case`ref`:ze(i,e,t);break}}}},Ve=(e,t,n,r)=>{Be(t,n,Pe(e),r)},He=(e,t,n,r)=>{let i=B(r);return i?{mode:e,name:t,signal:i,type:`attr`,uid:n}:{mode:e,name:t,type:`attr`,uid:n,value:r}},Ue=(e,t,n)=>{let r=B(n);return r?{model:je(n)?n:void 0,name:e,signal:r,type:`prop`,uid:t}:{name:e,type:`prop`,uid:t,value:n}},We=RegExp(`u="([^"]+)"`,`g`),Ge=e=>e.replace(/>\s+</g,`><`).trim(),Ke=[{kind:`event`,regex:/\s+@([a-zA-Z_][-a-zA-Z0-9_.]*)\s*=\s*["']?$/},{kind:`ref`,regex:/\s+ref\s*=\s*["']?$/},{kind:`specialAttr`,regex:/\s+([:?])([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/},{kind:`prop`,regex:/\.([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/},{kind:`plainAttr`,regex:/\s+([a-zA-Z_][-a-zA-Z0-9_]*)\s*=\s*["']?$/}],qe=new WeakMap,Je=e=>{let[t,...n]=e.split(`.`),r={};for(let e of n)e===`capture`?r.capture=!0:e===`once`?r.once=!0:e===`passive`?r.passive=!0:e===`prevent`?r.prevent=!0:e===`self`?r.self=!0:e===`stop`&&(r.stop=!0);return{modifiers:Object.keys(r).length?r:void 0,name:t}},Ye=e=>{let t=[];for(let n=0;n<e.length-1;n++){let r=e[n],i=!1;for(let e of Ke){let n=e.regex.exec(r);if(!n)continue;let a=r.slice(0,-n[0].length);if(i=!0,e.kind===`event`){let e=Je(n[1]);t.push({kind:`event`,modifiers:e.modifiers,name:e.name,prefix:a,raw:r})}else e.kind===`ref`?t.push({kind:`ref`,prefix:a,raw:r}):e.kind===`specialAttr`?t.push({kind:`specialAttr`,mode:n[1]===`?`?`bool`:`attr`,name:n[2],prefix:a,raw:r}):e.kind===`prop`?t.push({kind:`prop`,name:n[1],prefix:a,raw:r}):e.kind===`plainAttr`&&t.push({kind:`plainAttr`,name:n[1],prefix:a,raw:r});break}i||t.push({kind:`node`,prefix:r,raw:r})}return{slots:t,tail:e[e.length-1]??``}},Xe=e=>{let t=qe.get(e);return t||(t=Ye(e),qe.set(e,t)),t},X=()=>{let e=0;return()=>String(e++)},Z=(e,t)=>{let n=new Map,r=e=>{let r=n.get(e);if(r)return r;let i=t();return n.set(e,i),i};return{bindings:e.__bindings.map(e=>({...e,uid:r(e.uid)})),html:e.__html.replace(We,(e,t)=>`u="${r(t)}"`).replace(/<!--(\d+)-->/g,(e,t)=>`<!--${r(t)}-->`)}},Ze=e=>typeof e!=`object`||!e||!(v in e)?null:e[v],Q=e=>typeof e==`string`?C(e):e==null?``:_(e)?e.__html:C(String(e)),Qe=e=>{let t={bindings:[],html:``};return{bindings:[],signal:r(()=>{let n=e(),r=Array.isArray(n)?n:[n],i=X(),a=``,o=[];for(let e of r)if(_(e)){let t=Z(e,i);a+=t.html,o.push(...t.bindings)}else a+=Q(e);let s=o.length!==t.bindings.length||o.some((e,n)=>e!==t.bindings[n]);return(a!==t.html||s)&&(t={bindings:o,html:a}),t})}},$e=e=>{let t=Ze(e);if(t)return{keyed:!0,signal:t};if(typeof e==`function`&&!o(e)){let{signal:t}=Qe(e);return{keyed:!1,signal:t}}return o(e)&&_(e.value)?{keyed:!1,signal:r(()=>{let t=e.value;if(!_(t))return{bindings:[],html:Q(t)};let n=Z(t,X());return{bindings:n.bindings,html:n.html}})}:null},et=(e,t)=>{let n=Xe(e),i=``,a=[],s=null,c=X(),l=e=>e.lastIndexOf(`<`)>e.lastIndexOf(`>`),u=e=>((!s||l(e))&&(s=c()),s),d=()=>{s=null};for(let e=0;e<n.slots.length;e++){let s=n.slots[e],l=t[e];if(s.kind===`event`){if(typeof l==`function`){let e=u(s.prefix);i+=`${s.prefix} u="${e}"`,a.push({handler:l,modifiers:s.modifiers,name:s.name,type:`event`,uid:e})}else i+=s.raw;continue}if(s.kind===`ref`){if(l){let e=u(s.prefix);i+=`${s.prefix} u="${e}"`,a.push({ref:l,type:`ref`,uid:e})}else i+=s.raw;continue}if(s.kind===`specialAttr`){let e=u(s.prefix);i+=`${s.prefix} u="${e}"`,a.push(He(s.mode,s.name,e,l));continue}if(s.kind===`prop`){let e=u(s.prefix);i+=`${s.prefix} u="${e}"`,a.push(Ue(s.name,e,l));continue}if(s.kind===`plainAttr`){let e=u(s.prefix);i+=`${s.prefix} u="${e}"`,a.push(He(`attr`,s.name,e,l));continue}if(typeof l==`object`&&l&&(`mount`in l||`render`in l)){let e=`render`in l,t=e?c():u(s.raw);e?i+=`${s.raw}<!--${t}-->`:i+=`${s.raw} u="${t}"`;let n=l.mount?.bind(l);if(n&&a.push({apply:(e,t)=>{n(e,{registerCleanup:t})},type:`callback`,uid:t}),e){let e=l.render.bind(l),n={bindings:[],html:``},i=r(()=>{let t=e(),r=Array.isArray(t)?t:[t],i=X(),a=``,o=[];for(let e of r)if(_(e)){let t=Z(e,i);a+=t.html,o.push(...t.bindings)}else a+=Q(e);let s=o.length!==n.bindings.length||o.some((e,t)=>e!==n.bindings[t]);return(a!==n.html||s)&&(n={bindings:o,html:a}),n});a.push({keyed:!1,signal:i,type:`html`,uid:t})}continue}d();let f=$e(l);if(f){let e=c();i+=`${s.raw}<!--${e}-->`,a.push({keyed:f.keyed,signal:f.signal,type:`html`,uid:e});continue}if(Array.isArray(l)){let e=``;for(let t of l)if(_(t)){let n=Z(t,c);e+=n.html,a.push(...n.bindings)}else e+=Q(t);i+=s.raw+e;continue}if(o(l)){let e=c();i+=`${s.raw}<!--${e}-->`,a.push({signal:l,type:`text`,uid:e})}else if(_(l)){let e=Z(l,c);i+=s.raw+e.html,a.push(...e.bindings)}else i+=s.raw+Q(l)}return i+=n.tail,ae(Ge(i),a)},tt=e=>{y(e.cleanups);for(let t of e.nodes)t.remove()},$=(e,t,n=G(e))=>{let r=[];return Be(t,e=>r.push(e),n),r},nt=(e,n,r,a)=>{let o=Fe(e,n.uid);if(!o)return;let s=document.createComment(`html-binding`);o.replaceWith(s);let c=[],l=e=>c.push(e),u=()=>{y(c),c=[]},d=null,f=[];r(i(()=>{t(()=>{let r=n.signal.value;if(!n.keyed&&r.html===d)return;d=r.html,u();let{bindings:i,html:o,keys:c}=r;n.keyed&&!a.has(n.uid)&&a.set(n.uid,new Map);let p=n.keyed?a.get(n.uid):null,h=s.parentElement||e,g=!1;m(()=>{t(()=>{if(p&&c?.length&&r.items?.length===c.length){if(g=!0,p.size===0&&f.length>0){for(let e of f)e.remove();f=[]}let e=new Map;for(let t=0;t<c.length;t++){let n=c[t],i=r.items[t],a=p.get(n),o=t>0?e.get(c[t-1])?.nodes:null,l=o?.length?o[o.length-1].nextSibling:s.nextSibling;if(a&&a.html===i.html){a.nodes[0]&&q(s,a.nodes,l),y(a.cleanups);let t=G(a.nodes),r=$(a.nodes,i.bindings,t);e.set(n,{...a,bindings:i.bindings,cleanups:r,targets:t})}else if(a){y(a.cleanups);let t=K(i.html),r=G(t);q(s,t,l);let o=$(t,i.bindings,r);e.set(n,{bindings:i.bindings,cleanups:o,html:i.html,nodes:t,targets:r});for(let e of a.nodes)e.remove()}else{let t=K(i.html),r=G(t);q(s,t,l);let a=$(t,i.bindings,r);e.set(n,{bindings:i.bindings,cleanups:a,html:i.html,nodes:t,targets:r})}}for(let[t,n]of p)e.has(t)||tt(n);a.set(n.uid,e)}else{if(n.keyed&&p&&p.size>0)for(let[,e]of p)tt(e);else for(let e of f)e.remove();let e=U(o);f=Array.from(e.childNodes),s.after(e),n.keyed&&a.set(n.uid,new Map)}}),g||Ve(h,i,l,{onHtml:e=>nt(h,e,l,a)})})})})),r(u),n.keyed&&r(()=>a.delete(n.uid))},rt=Ve,it=(e,...t)=>et(e,t),at=(e,t,n,r)=>{nt(e,t,n,r)},ot=class extends HTMLElement{static _options;static _setup;static formAssociated=!1;static observedAttributes=[];shadow;_appliedHtmlBindings=new Set;_keyedStates=new Map;_mountFns=[];_runtime;_rendered=!1;_setupDone=!1;_template=null;constructor(){super();let e=this.constructor._options;this.shadow=this.attachShadow({mode:`open`,...e?.shadow}),this._runtime={cleanups:[],el:this,errorHandlers:[],onMount:[],styles:e?.styles}}connectedCallback(){m(()=>{this._setupDone||this._runSetup(),this._init()})}attributeChangedCallback(e,t,n){if(t===n)return;let r=L.get(this)?.get(e);if(!r)return;let i=r.parse(n);Object.is(m(()=>r.signal.value),i)||(r.signal.value=i)}disconnectedCallback(){y(this._runtime.cleanups),this._runtime.cleanups=[],this._runtime.onMount=this._mountFns.slice(),this._appliedHtmlBindings.clear(),this._keyedStates.clear(),this._rendered=!1}formAssociatedCallback(e){R.get(this)?.onAssociated?.(e)}formDisabledCallback(e){R.get(this)?.onDisabled?.(e)}formResetCallback(){R.get(this)?.onReset?.()}formStateRestoreCallback(e,t){R.get(this)?.onStateRestore?.(e,t)}_handleError(e){if(this._runtime.errorHandlers.length>0)for(let t of this._runtime.errorHandlers)t(e);else throw console.error(`[craftit:E3] <${this.localName}>`,e),e instanceof Error?e:Error(String(e))}_runSetup(){this._setupDone=!0,T.push(this._runtime);try{let{host:e}=this.constructor._options??{};if(e)for(let[t,n]of Object.entries(e))typeof n==`boolean`?n?this.setAttribute(t,``):this.removeAttribute(t):this.setAttribute(t,String(n));let t=this.constructor._setup();(typeof t==`string`||typeof t==`object`&&t&&`__html`in t)&&(this._template=t)}catch(e){this._handleError(e)}finally{T.pop()}}_init(){let{styles:e}=this._runtime;if(e?.length&&(this.shadow.adoptedStyleSheets=e.map(ue)),this._template){let e=typeof this._template==`string`?ae(this._template):this._template;if(this._rendered||=(this.shadow.replaceChildren(U(e.__html)),!0),e.__bindings.length){let t=e=>this._runtime.cleanups.push(e);rt(this.shadow,e.__bindings,t,{onHtml:e=>{this._appliedHtmlBindings.has(e.uid)||(this._appliedHtmlBindings.add(e.uid),at(this.shadow,e,t,this._keyedStates))}})}}queueMicrotask(()=>{T.push(this._runtime);try{let e=this._runtime.onMount;this._mountFns=e.slice();for(let t of e){let e=t();typeof e==`function`&&this._runtime.cleanups.push(e)}}catch(e){this._handleError(e)}finally{T.pop(),this._runtime.onMount=[]}})}};function st(e,t,n={}){if(!e)throw Error(`[craftit:E4] registerComponent(tag, ...) requires a tag name`);if(customElements.get(e))return e;class r extends ot{static _options=n;static _setup=t;static formAssociated=n.formAssociated??!1;static observedAttributes=n.observedAttrs??[]}return customElements.define(e,r),e}var ct=(e,t)=>{let{formAssociated:n,host:r,props:i,setup:a,shadow:o,styles:s}=t;return st(e,()=>{let e=i?ke(i):{},t=se(),n=Ce(),r;return a({emit:t,host:n,props:e,shadowRoot:n.shadowRoot,slots:{elements:e=>(r||=F(),r.elements(e)),has:e=>(r||=F(),r.has(e))}})},{formAssociated:n,host:r,observedAttrs:i?Object.keys(i).map(S):[],shadow:o,styles:s})};function lt(e,t){return ct(e,t)}export{e as batch,Se as bridgeContextAttributes,n as computed,ge as createCleanupSignal,be as createContext,ne as createId,le as css,E as currentRuntime,lt as define,Ae as defineField,O as effect,A as fire,he as handle,it as html,ye as inject,a as isSignal,D as onCleanup,_e as onElement,pe as onError,de as onMount,c as peekValue,ve as provide,l as readonly,re as ref,ie as refs,u as signal,xe as syncContextProps,f as toValue,p as untrack,me as watch,g as writable};
|
|
2
2
|
//# sourceMappingURL=craftit.js.map
|