@nisli/core 0.56.0 → 0.57.1
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 +70 -9
- package/dist/bundler/component.js +409 -0
- package/dist/bundler/component.js.map +7 -0
- package/dist/bundler/context.js +27 -0
- package/dist/bundler/context.js.map +7 -0
- package/dist/bundler/diagnostics.js +55 -0
- package/dist/bundler/diagnostics.js.map +7 -0
- package/dist/bundler/disposable.js +9 -0
- package/dist/bundler/disposable.js.map +7 -0
- package/dist/bundler/element-context.js +47 -0
- package/dist/bundler/element-context.js.map +7 -0
- package/dist/bundler/emitter.js +70 -0
- package/dist/bundler/emitter.js.map +7 -0
- package/dist/bundler/hmr/registry.js +72 -0
- package/dist/bundler/hmr/registry.js.map +7 -0
- package/dist/bundler/hmr/transform.js +30 -0
- package/dist/bundler/hmr/transform.js.map +7 -0
- package/dist/bundler/index.js +103 -0
- package/dist/bundler/index.js.map +7 -0
- package/dist/bundler/injector.js +75 -0
- package/dist/bundler/injector.js.map +7 -0
- package/dist/bundler/lifecycle.js +56 -0
- package/dist/bundler/lifecycle.js.map +7 -0
- package/dist/bundler/projection.js +92 -0
- package/dist/bundler/projection.js.map +7 -0
- package/dist/bundler/query.js +302 -0
- package/dist/bundler/query.js.map +7 -0
- package/dist/bundler/ref.js +16 -0
- package/dist/bundler/ref.js.map +7 -0
- package/dist/bundler/resource.js +99 -0
- package/dist/bundler/resource.js.map +7 -0
- package/dist/bundler/settle.js +43 -0
- package/dist/bundler/settle.js.map +7 -0
- package/dist/bundler/signal.js +403 -0
- package/dist/bundler/signal.js.map +7 -0
- package/dist/bundler/template-audit.js +162 -0
- package/dist/bundler/template-audit.js.map +7 -0
- package/dist/bundler/template.js +922 -0
- package/dist/bundler/template.js.map +7 -0
- package/dist/bundler/view-transition.js +20 -0
- package/dist/bundler/view-transition.js.map +7 -0
- package/dist/bundler/vite-hmr/plugin.js +32 -0
- package/dist/bundler/vite-hmr/plugin.js.map +7 -0
- package/dist/bundler/vite-hmr/runtime.js +8 -0
- package/dist/bundler/vite-hmr/runtime.js.map +7 -0
- package/dist/index.js +2682 -47
- package/dist/index.js.map +7 -1
- package/dist/index.production.js +2 -0
- package/dist/index.production.js.map +6 -0
- package/dist/{diagnostics.d.ts → types/diagnostics.d.ts} +8 -15
- package/dist/{template-audit.d.ts → types/template-audit.d.ts} +4 -5
- package/dist/{template.d.ts → types/template.d.ts} +2 -1
- package/package.json +15 -10
- package/dist/component.js +0 -633
- package/dist/component.js.map +0 -1
- package/dist/context.js +0 -55
- package/dist/context.js.map +0 -1
- package/dist/diagnostics.js +0 -118
- package/dist/diagnostics.js.map +0 -1
- package/dist/disposable.js +0 -8
- package/dist/disposable.js.map +0 -1
- package/dist/element-context.js +0 -108
- package/dist/element-context.js.map +0 -1
- package/dist/emitter.js +0 -91
- package/dist/emitter.js.map +0 -1
- package/dist/hmr/registry.js +0 -136
- package/dist/hmr/registry.js.map +0 -1
- package/dist/hmr/transform.js +0 -52
- package/dist/hmr/transform.js.map +0 -1
- package/dist/injector.js +0 -118
- package/dist/injector.js.map +0 -1
- package/dist/lifecycle.js +0 -117
- package/dist/lifecycle.js.map +0 -1
- package/dist/projection.js +0 -179
- package/dist/projection.js.map +0 -1
- package/dist/query.js +0 -429
- package/dist/query.js.map +0 -1
- package/dist/ref.js +0 -43
- package/dist/ref.js.map +0 -1
- package/dist/resource.js +0 -129
- package/dist/resource.js.map +0 -1
- package/dist/settle.js +0 -106
- package/dist/settle.js.map +0 -1
- package/dist/signal.js +0 -645
- package/dist/signal.js.map +0 -1
- package/dist/template-audit.js +0 -246
- package/dist/template-audit.js.map +0 -1
- package/dist/template.js +0 -1244
- package/dist/template.js.map +0 -1
- package/dist/view-transition.js +0 -98
- package/dist/view-transition.js.map +0 -1
- package/dist/vite-hmr/plugin.js +0 -62
- package/dist/vite-hmr/plugin.js.map +0 -1
- package/dist/vite-hmr/runtime.js +0 -17
- package/dist/vite-hmr/runtime.js.map +0 -1
- /package/dist/{component.d.ts → types/component.d.ts} +0 -0
- /package/dist/{context.d.ts → types/context.d.ts} +0 -0
- /package/dist/{disposable.d.ts → types/disposable.d.ts} +0 -0
- /package/dist/{element-context.d.ts → types/element-context.d.ts} +0 -0
- /package/dist/{emitter.d.ts → types/emitter.d.ts} +0 -0
- /package/dist/{hmr → types/hmr}/registry.d.ts +0 -0
- /package/dist/{hmr → types/hmr}/transform.d.ts +0 -0
- /package/dist/{index.d.ts → types/index.d.ts} +0 -0
- /package/dist/{injector.d.ts → types/injector.d.ts} +0 -0
- /package/dist/{lifecycle.d.ts → types/lifecycle.d.ts} +0 -0
- /package/dist/{projection.d.ts → types/projection.d.ts} +0 -0
- /package/dist/{query.d.ts → types/query.d.ts} +0 -0
- /package/dist/{ref.d.ts → types/ref.d.ts} +0 -0
- /package/dist/{resource.d.ts → types/resource.d.ts} +0 -0
- /package/dist/{settle.d.ts → types/settle.d.ts} +0 -0
- /package/dist/{signal.d.ts → types/signal.d.ts} +0 -0
- /package/dist/{view-transition.d.ts → types/view-transition.d.ts} +0 -0
- /package/dist/{vite-hmr → types/vite-hmr}/plugin.d.ts +0 -0
- /package/dist/{vite-hmr → types/vite-hmr}/runtime.d.ts +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function Ge(e){}function z(e,t){return`[nisli ${e}] ${t}`}function Q(e,t,n){n===void 0?console.error(z(e,t)):console.error(z(e,t),n)}var be=Symbol.dispose;function A(e,t){return be&&(e[be]=t),e}var oe=null;function Te(e){oe=e}var q=Symbol.for("backlog.signal"),N=null;var P=0,Xe=0;var M=new Set,re=!1;function Je(){re||(re=!0,queueMicrotask(Ee))}function Ee(){re=!1;let e=[...M].sort((t,n)=>t.order-n.order);M.clear();for(let t of e)t.disposed||ke(t)}var B=Symbol("no-computed-error"),se=class{[q]=!0;_node;constructor(t){this._node={value:t,lastChanged:P,observers:new Set}}get value(){return N&&(N.sources.add(this._node),this._node.observers.add(N)),this._node.value}set value(t){Object.is(this._node.value,t)||(this._node.value=t,this._node.lastChanged=++P,we(this._node.observers,2))}peek(){return this._node.value}subscribe(t){return x(()=>{let n=this.value;C(()=>t(n))})}};function we(e,t){for(let n of e)n.notify(t)}var W=class{[q]=!0;_node;compute;state=2;sources=new Set;computing=!1;error=B;lastValidated=0;constructor(t){this.compute=t,this._node={value:void 0,lastChanged:0,observers:new Set,pull:()=>{this.peek()}}}get value(){if(this.computing)throw new Error("Circular dependency detected in computed()");if(N&&(N.sources.add(this._node),this._node.observers.add(N)),this.state!==0&&this.update(),this.error!==B)throw this.error;return this._node.value}peek(){if(this.computing)throw new Error("Circular dependency detected in computed()");if(this.state!==0&&this.update(),this.error!==B)throw this.error;return this._node.value}sourcesChanged(){for(let t of this.sources){if("pull"in t)try{t.pull()}catch{}if(t.lastChanged>this.lastValidated)return!0}return!1}update(){if(this.state===1&&!this.sourcesChanged()){this.state=0,this.lastValidated=P;return}for(let o of this.sources)o.observers.delete(this);this.sources.clear();let t=N;N=this,this.computing=!0;let n=this.error!==B;try{let o=this.compute();this.error=B,Object.is(this._node.value,o)?n&&(this._node.lastChanged=++P):(this._node.value=o,this._node.lastChanged=++P)}catch(o){throw this.error=o,n||(this._node.lastChanged=++P),o}finally{this.computing=!1,N=t,this.state=0,this.lastValidated=P}}notify(t){if(t>this.state){let n=this.state===0;this.state=t,n&&we(this._node.observers,1)}}subscribe(t){return x(()=>{let n=this.value;C(()=>t(n))})}get sources_(){return this.sources}};Object.defineProperty(W.prototype,"sources",{enumerable:!1});var Ye=100;function Ze(e){return{state:2,fn:e,cleanup:null,disposed:!1,sources:new Set,disposers:[],order:Xe++,lastRunEpoch:0,selfReschedules:0,notify(t){this.disposed||(t>this.state&&(this.state=t),M.add(this),Je())}}}function et(e){for(let t of e.sources){if("pull"in t)try{t.pull()}catch{}if(t.lastChanged>e.lastRunEpoch)return!0}return!1}function tt(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}function ke(e){if(e.disposed)return;if(e.state===1&&!et(e)){e.state=0;return}if(e.cleanup){try{e.cleanup()}catch{}e.cleanup=null}for(let o of e.sources)o.observers.delete(e);e.sources.clear(),e.state=0;let t=N,n=null;N=e;try{let o=e.fn();typeof o=="function"?e.cleanup=o:tt(o)&&o.then(void 0,r=>{console.error("Effect error:",r)})}catch(o){console.error("Effect error:",o)}finally{N=t,e.lastRunEpoch=P}if(M.has(e)){if(++e.selfReschedules>Ye){e.disposed=!0;for(let o of e.sources)o.observers.delete(e);e.sources.clear(),M.delete(e)}}else e.selfReschedules=0}function b(e){return new se(e)}function S(e){return new W(e)}function x(e,...t){let n=Ze(e);ke(n);let o=()=>{if(n.disposed=!0,n.cleanup){try{n.cleanup()}catch{}n.cleanup=null}for(let r of n.sources)r.observers.delete(n);n.sources.clear(),M.delete(n)};if(oe){let r=oe();r&&r(o)}return A(o,o)}function R(e){return e!==null&&typeof e=="object"&&q in e}function C(e){let t=N;N=null;try{return e()}finally{N=t}}function H(){let e=0;for(;M.size>0&&(Ee(),!(++e>1e5)););}async function ie(){H();for(let e=0;e<50;e++){if(await new Promise(t=>setTimeout(t,0)),M.size===0)return;H()}}var j=null;function ae(e,t){let n=j;j=e;try{t()}finally{j=n}}function k(){if(!j)throw new Error("getCurrentComponent() called outside setup(). inject(), effect(), and other context-dependent functions can only be called during component initialization.");return j}function _(){return j!==null}var le=class{listeners=new Map;emit(t,n){let o=this.listeners.get(t);if(o)for(let r of[...o])try{r(n)}catch(l){console.error(`Emitter: subscriber for '${String(t)}' threw:`,l)}}on(t,n){let o=this.listeners.get(t);o||(o=new Set,this.listeners.set(t,o)),o.add(n);let r=()=>{o.delete(n),o.size===0&&this.listeners.delete(t)};return _()&&k().addDisposer(r),A(r,r)}toSignal(t,n,o){let r=b(o);return this.on(t,l=>{r.value=n(l)}),r}clear(){this.listeners.clear()}};var V=new Map,ue=new Map,U=new Set;function ce(e){if(V.has(e))return V.get(e);if(U.has(e)){let t=e.name;throw new Error(`Circular dependency detected when instantiating '${t}'. Check your service constructors for circular inject() calls.`)}U.add(e);try{let t,n=ue.get(e);if(n)t=n();else if(typeof e=="function")t=new e;else{let o=e;if(o._factory)t=o._factory();else throw new Error(`No provider found for token '${o.name}'. Use provide() to register a factory before calling inject().`)}return V.set(e,t),t}finally{U.delete(e)}}function nt(e,t){ue.set(e,t),V.delete(e)}function ot(e,t){return{__brand:"InjectionToken",name:e,_factory:t}}var _e=new Set;function Ne(e){_e.add(e)}function rt(){V.clear(),ue.clear(),U.clear();for(let e of _e)e()}function st(e,t={}){let{providerTag:n}=t,o=Symbol(`nisli.context:${e}`),r=c=>c,l=(c,d)=>{r(c)[o]=d},u=c=>o in c?r(c)[o]:void 0,i=c=>{let d=c;for(;d;){if(o in d)return r(d)[o];d=d.parentElement}},s=(c,d)=>{if(c)return c;if(!_())throw new Error(`${d} for context "${e}" was called without a host and outside component setup. Call it during setup (so the provider is resolved before any portal move), or pass an explicit host.`);return k().element},a=(c=>{let d=s(c,"inject()"),p=i(d);if(p===void 0){let g=d.tagName.toLowerCase();throw new Error(n?`Context "${e}": <${g}> must be used inside <${n}>.`:`Context "${e}" not found: <${g}> must be rendered inside a provider that calls ${e}Context.provide(host, \u2026).`)}return p});return a.optional=c=>{if(!(!c&&!_()))return i(s(c,"inject.optional()"))},{name:e,provide:l,inject:a,peek:u}}var G=new WeakMap;function it(e){if(!_())throw new Error("onMount() called outside setup(). It can only be called during component initialization.");let t=k(),n=G.get(t);n||(n=[],G.set(t,n)),n.push(e)}function X(e){if(!_())throw new Error("onCleanup() called outside setup(). It can only be called during component initialization.");k().addDisposer(e)}function at(e,t,n){if(!_())throw new Error("useHostEvent() called outside setup(). It can only be called during component initialization.");e.addEventListener(t,n),k().addDisposer(()=>{e.removeEventListener(t,n)})}function xe(e){let t=G.get(e);if(t)try{for(let n of t){let o=n();typeof o=="function"&&e.addDisposer(o)}}finally{G.delete(e)}}Te(()=>{if(_()){let e=k();return t=>e.addDisposer(t)}return null});var lt=e=>e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`),de=e=>typeof e=="string"?e:e.type,ut=(e,t)=>typeof t=="object"&&t.attr?t.attr:lt(e);function Re(e,t){let n=de(e);if(n==="boolean"){let o=typeof e=="object"&&"default"in e&&e.default!==void 0?e.default:!1;return t===null?o:t!=="false"}if(n==="number"){let o=typeof e=="object"&&"default"in e?e.default:void 0;if(t===null)return o;let r=Number(t);return Number.isNaN(r)?o:r}return t===null?typeof e=="object"&&"default"in e?e.default:void 0:t}var pe=class{element;disposers=[];setupComplete=!1;constructor(t){this.element=t}addDisposer(t){this.disposers.push(t)}dispose(){for(let t of this.disposers)try{t()}catch{}this.disposers.length=0}};function ct(){let e=new Map,t=(r,l)=>{let u=e.get(r);return u||(u=b(l),e.set(r,u)),u};return{props:new Proxy({},{get(r,l){if(typeof l=="string")return t(l)}}),setProperty:(r,l)=>{let u=t(r,l);u.value=l}}}function dt(e,t,...[n]){let o=new Map,r=new Map;if(n?.attrs)for(let s of Object.keys(n.attrs)){let a=n.attrs[s],c=ut(s,a),d={key:s,attrName:c,decl:a};o.set(c,d),r.set(s,d)}let l=Array.from(o.keys());class u extends HTMLElement{_host=null;_propsProxy=null;_mounted=!1;_templateResult=null;_errorTemplateResult=null;_teardownScheduled=!1;_pinned=new Set;_relocating=!1;static get observedAttributes(){return l}constructor(){super(),this._propsProxy=ct()}_applyAttr(a,c){if(de(a.decl)==="forward"){c!==null&&(this._pinned.has(a.key)||this._propsProxy.setProperty(a.key,c),this._relocating=!0,this.removeAttribute(a.attrName),this._relocating=!1);return}this._pinned.has(a.key)||this._propsProxy.setProperty(a.key,Re(a.decl,c))}_seedAttrs(){for(let a of o.values())this._applyAttr(a,this.getAttribute(a.attrName))}attributeChangedCallback(a,c,d){if(this._relocating)return;let p=o.get(a);p&&this._applyAttr(p,d)}connectedCallback(){this._mounted||(this._mounted=!0,C(()=>{let a=new pe(this);this._host=a,o.size&&this._seedAttrs(),this.childNodes.length&&(this.__capturedChildren=Array.from(this.childNodes));let c="setup";try{ae(a,()=>{this._templateResult=t(this._propsProxy.props,this)}),this._templateResult&&Ce(this,this._templateResult,a);let d=this;if(d.__nisliProjectionSweep){let p=d.__nisliProjectionSweep;d.__nisliProjectionSweep=void 0,p()}c="mount",xe(a),this.removeAttribute("data-nisli-error")}catch(d){let p=d instanceof Error?d:new Error(String(d)),g=c==="setup"?"N401":"N402";if(Q(g,`<${e}> ${c} failed: ${p.message}`,{tag:e,phase:c,error:p}),this.__nisliProjectionSweep=void 0,this._templateResult?.dispose&&this._templateResult.dispose(),this._templateResult=null,a.dispose(),this._host=null,this.replaceChildren(),this.setAttribute("data-nisli-error",g),n?.onError)try{let y=n.onError(p,this);typeof y=="string"?this.innerHTML=y:(this._errorTemplateResult=y,Ce(this,y))}catch{this._errorTemplateResult?.dispose&&this._errorTemplateResult.dispose(),this._errorTemplateResult=null,this.innerHTML=`<div style="color:red;padding:4px">Error in <${e}></div>`}else this.innerHTML=`<div style="color:red;padding:4px">Error in <${e}></div>`;this.dispatchEvent(new CustomEvent("nisli-error",{bubbles:!0,composed:!0,detail:{code:g,tag:e,phase:c,message:p.message}}))}}))}disconnectedCallback(){this._teardownScheduled||(this._teardownScheduled=!0,queueMicrotask(()=>{this._teardownScheduled=!1,!this.isConnected&&this._teardownNow()}))}connectedMoveCallback(){}_teardownNow(){this._mounted=!1,this._templateResult?.dispose&&this._templateResult.dispose(),this._templateResult=null,this._errorTemplateResult?.dispose&&this._errorTemplateResult.dispose(),this._errorTemplateResult=null,this._host&&(this._host.dispose(),this._host=null);let a=this.__capturedChildren??[];this.replaceChildren(...a)}_remount(){this._teardownScheduled=!1,this._teardownNow(),this.connectedCallback()}_setProp(a,c){if(c===void 0){this._pinned.delete(a);let d=r.get(a);if(d){let p=this.getAttribute(d.attrName);p===null&&de(d.decl)==="forward"?this._propsProxy?.setProperty(a,Re(d.decl,null)):this._applyAttr(d,p);return}}else this._pinned.add(a);this._propsProxy?.setProperty(a,c)}_propSignal(a){return this._propsProxy.props[a]}_isPinned(a){return this._pinned.has(a)}}return customElements.get(e)||customElements.define(e,u),(s,a)=>({__type:"factory",tagName:e,props:s,hostAttrs:a})}function Se(e){return R(e)?e:b(e)}function Ce(e,t,n){if(t&&typeof t=="object"&&"mount"in t&&typeof t.mount=="function")t.mount(e);else if(t&&typeof t=="object"&&"__type"in t){let o=t,r=document.createElement(o.tagName);for(let[l,u]of Object.entries(o.props)){let i=Se(u);r._setProp(l,i.value);let s=i.subscribe(a=>{r._setProp(l,a)});n&&n.addDisposer(s)}if(o.hostAttrs?.class!=null){let l=Se(o.hostAttrs.class);De(r,"",l.value);let u=l.value,i=l.subscribe(s=>{De(r,u,s),u=s});n&&n.addDisposer(i)}e.appendChild(r)}}function De(e,t,n){let o=t?t.split(/\s+/).filter(Boolean):[],r=n?n.split(/\s+/).filter(Boolean):[];for(let l of o)r.includes(l)||e.classList.remove(l);for(let l of r)o.includes(l)||e.classList.add(l)}var Ae=Symbol.for("backlog.ref");function pt(){return{[Ae]:!0,current:null}}function J(e){return e!==null&&typeof e=="object"&&Ae in e}var ft=e=>typeof e.moveBefore=="function";function Oe(e){let t;return C(()=>{t=e()}),t}function mt(e){return{__raw:!0,value:e}}function yt(e){return typeof e=="object"&&e!==null&&"__raw"in e&&e.__raw===!0&&typeof e.value=="string"}function ht(e){return{__sanitize:!0,value:e}}function fe(e){return typeof e=="object"&&e!==null&&"__sanitize"in e&&e.__sanitize===!0&&typeof e.value=="string"}var Ie=null;function gt(e){Ie=e}var vt=(e,t)=>{e.setHTML(t)};function Pe(e){let t=typeof Element=="function"?Element.prototype.setHTML:void 0;return typeof t=="function"&&e.setHTML===t?vt:Ie}function bt(e){let t=globalThis.trustedTypes;return t!==void 0&&t.isHTML(e)}function Y(e,t){return new Error(`[nisli] ${e}: ${t}`)}var Me=new WeakMap,Tt=0;function Et(e,t){let n=Me.get(e);if(n)return n;let o="",r=!1,l=null;for(let u=0;u<e.length;u++){let i=e[u]??"";for(let s=0;s<i.length;s++){let a=i.charAt(s);l?a===l&&(l=null):r?a===">"?r=!1:(a==='"'||a==="'")&&(l=a):a==="<"&&(r=!0)}if(o+=i,u<t){let s=r&&!l&&/=\s*$/.test(i);o+=s?`"${He(u)}"`:He(u)}}return Tt++,n=document.createElement("template"),n.innerHTML=o,Me.set(e,n),n}var me="<!--bk-",wt="-->";function He(e){return`${me}${e}${wt}`}function kt(e,...t){let n=[],o=[],r=!1;return{__templateResult:!0,mount(l){if(r&&t.length>0)throw Y("N105",`mount() on an already-mounted TemplateResult with ${t.length} value binding(s) \u2014 dispose() it first or create a fresh template per mount. Template starts: ${JSON.stringify((e[0]??"").slice(0,60))}`);r=!0;let i=Et(e,t.length).content.cloneNode(!0),s=[];Be(i,t,n,o,s),l.appendChild(i);for(let a of s)a()},dispose(){for(let l of o)try{l()}catch{}o.length=0;for(let l of n)if("dispose"in l&&l.dispose)try{l.dispose()}catch{}n.length=0,r=!1}}}function Be(e,t,n,o,r){let l;if(e.nodeType===Node.ELEMENT_NODE&&(l=_t(e,t,n,o,r)),e.nodeType===Node.COMMENT_NODE){let i=e,s=i.textContent||"";if(s.startsWith("bk-")&&!isNaN(Number(s.slice(3)))){let a=Number(s.slice(3)),c=t[a];Ve(i,c,n,o);return}}let u=[...e.childNodes];for(let i of u)Be(i,t,n,o,r);if(l)for(let i of l)i()}function _t(e,t,n,o,r){let l=[],u;for(let i of[...e.attributes]){let s=i.name,a=i.value;if(s.startsWith("@")){let c=s.slice(1).split("."),d=c[0]??"",p=c.slice(1),g=a.match(/<!--bk-(\d+)-->/);if(g){let y=Number(g[1]),v=t[y];typeof v=="function"&&Fe(e,d,v,p,n)}l.push(s);continue}if(s.startsWith("class:")){let c=s.slice(6),d=a.match(/<!--bk-(\d+)-->/);if(d){let p=Number(d[1]),g=t[p];Nt(e,c,g,n,o)}l.push(s);continue}if(s==="html:inner"){let c=a.match(/<!--bk-(\d+)-->/);if(c){let d=Number(c[1]),p=t[d];xt(e,p,n,o)}l.push(s);continue}if(s==="ref"&&a.includes(me)){let c=a.match(/<!--bk-(\d+)-->/);if(c){let d=Number(c[1]),p=t[d];J(p)&&(p.current=e,o.push(()=>{p.current=null}))}l.push(s);continue}if(a.includes(me)){let c=[...a.matchAll(/<!--bk-(\d+)-->/g)];if(c.length){let d=c[0],p;if(c.length===1&&d&&a===d[0])p=t[Number(d[1])];else{let g=()=>a.replace(/<!--bk-(\d+)-->/g,(v,E)=>{let w=t[Number(E)],m=R(w)?w.value:w;return m==null||m===!1?"":String(m)});p=c.some(v=>R(t[Number(v[1])]))?S(g):g()}he(e,s)?(u??=[]).push(()=>je(e,s,p,n,o,r)):je(e,s,p,n,o,r)}continue}}for(let i of l)e.removeAttribute(i);return u}function $(e){let t=document.createElement(e.tagName),n=[];for(let[o,r]of Object.entries(e.props))if(R(r)){let u=r.subscribe(i=>{t._setProp?.(o,i)});n.push(u)}else t._setProp?.(o,r);if(e.hostAttrs?.class!=null){let o=e.hostAttrs.class;if(R(o)){let r=o,l=[],u=s=>{let a=s?s.split(/\s+/).filter(Boolean):[];for(let c of l)a.includes(c)||t.classList.remove(c);for(let c of a)l.includes(c)||t.classList.add(c);l=a},i=r.subscribe(u);n.push(i)}else if(typeof o=="string"&&o)for(let r of o.split(/\s+/).filter(Boolean))t.classList.add(r)}return{element:t,dispose(){for(let o of n.splice(0))try{o()}catch{}}}}function Ve(e,t,n,o){let r=e.parentNode;if(r)if(R(t)){let l=document.createComment("slot-start"),u=document.createComment("slot-end");r.replaceChild(u,e),r.insertBefore(l,u);let i=[],s=[],a=[],c=null,p=Symbol("not-rendered"),g=x(()=>{let y=t.value,v=u.parentNode;if(!v||y===p)return;p=y;let E=!!(y&&typeof y=="object"&&"__templateResult"in y),w=!!(y&&typeof y=="object"&&"__type"in y&&y.__type==="factory");if(y!=null&&y!==!1&&!Array.isArray(y)&&!E&&!w&&c){c.data=String(y);return}for(let f of i)try{f.dispose()}catch{}for(let f of a)try{f()}catch{}for(let f of s)f.parentNode?.removeChild(f);if(s=[],i=[],a=[],c=null,y!=null)if(Array.isArray(y)){for(let f of y)if(f&&typeof f=="object"&&"__templateResult"in f){let h=f,T=document.createDocumentFragment();h.mount(T);let D=[...T.childNodes];s.push(...D),i.push(h),v.insertBefore(T,u)}else if(f&&typeof f=="object"&&"__type"in f&&f.__type==="factory"){let h=$(f);s.push(h.element),a.push(h.dispose),v.insertBefore(h.element,u)}else if(f!=null&&f!==!1){let h=document.createTextNode(String(f));s.push(h),v.insertBefore(h,u)}}else if(E){let f=y,h=document.createDocumentFragment();f.mount(h),s=[...h.childNodes],i.push(f),v.insertBefore(h,u)}else if(w){let f=$(y);s.push(f.element),a.push(f.dispose),v.insertBefore(f.element,u)}else y!==!1&&(c=document.createTextNode(String(y)),s.push(c),v.insertBefore(c,u))});o.push(g),o.push(()=>{for(let y of i.splice(0))try{y.dispose()}catch{}for(let y of a.splice(0))try{y()}catch{}s=[],c=null})}else if(t&&typeof t=="object"&&"__templateResult"in t){let l=t,u=document.createComment("tpl-start"),i=document.createComment("tpl-end");r.replaceChild(i,e),r.insertBefore(u,i);let s=document.createDocumentFragment();l.mount(s),r.insertBefore(s,i),o.push(()=>l.dispose())}else if(t&&typeof t=="object"&&"__type"in t&&t.__type==="factory"){let l=$(t);r.replaceChild(l.element,e),o.push(l.dispose)}else if(Array.isArray(t)){let l=document.createComment("list-start"),u=document.createComment("list-end");r.replaceChild(u,e),r.insertBefore(l,u);for(let i of t)if(i&&typeof i=="object"&&"__templateResult"in i){let s=document.createDocumentFragment();i.mount(s),r.insertBefore(s,u),o.push(()=>i.dispose())}else if(i&&typeof i=="object"&&"__type"in i&&i.__type==="factory"){let s=$(i);r.insertBefore(s.element,u),o.push(s.dispose)}else{let s=document.createTextNode(String(i));r.insertBefore(s,u)}}else if(t==null||t===!1)r.removeChild(e);else{let l=document.createTextNode(String(t));r.replaceChild(l,e)}}function je(e,t,n,o,r,l){if(t==="class"){$e(e,n,o,r);return}if(!(t==="id"||t==="style"||t==="slot"||t==="title"||t==="role"||t==="tabindex"||t==="name"||t.startsWith("data-")||t.startsWith("aria-"))&&typeof e._setProp=="function"){if(R(n)){let s={type:"attribute",element:e,name:t};o.push(s);let a=x(()=>{e._setProp(t,n.value)});s.dispose=a,r.push(a)}else e._setProp(t,n);return}ye(e,t,n,o,r,l)}function ye(e,t,n,o,r,l){let u=he(e,t),i,s=a=>{i=a,a==null||a===!1?e.removeAttribute(t):e.setAttribute(t,a===!0?"":String(a)),u&&Le(e,u,a)};if(R(n)){let a={type:"attribute",element:e,name:t};o.push(a);let c=x(()=>s(n.value));a.dispose=c,r.push(c)}else s(n);if(u==="value"&&e.localName==="select"){let a=!0,c=()=>{a&&Le(e,"value",i)},d=new MutationObserver(c);d.observe(e,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:["value","selected"]}),r.push(()=>{a=!1,d.disconnect()}),l.push(c),queueMicrotask(c)}}function he(e,t){let n=t.toLowerCase();if(n!=="value"&&n!=="checked"&&n!=="selected"||e.namespaceURI!=="http://www.w3.org/1999/xhtml")return;let o=e.localName;if(n==="value"&&(o==="input"||o==="textarea"||o==="select")||n==="checked"&&o==="input"||n==="selected"&&o==="option")return n}function Le(e,t,n){if(t==="value"){let o=e,r=n==null||typeof n=="boolean"?"":String(n);if(e.localName==="input"&&e.type==="file"&&r!=="")return;(e.localName==="select"||o.value!==r)&&(o.value=r)}else{let o=e,r=n!=null&&n!==!1;o[t]!==r&&(o[t]=r)}}function $e(e,t,n,o){let r=!1,l=[],u=i=>{r||(e.setAttribute("class",""),r=!0);let a=(i==null||i===!1?"":String(i)).split(/\s+/).filter(Boolean);for(let c of l)a.includes(c)||e.classList.remove(c);for(let c of a)l.includes(c)||e.classList.add(c);l=a};if(R(t)){let i={type:"attribute",element:e,name:"class"};n.push(i);let s=x(()=>{u(t.value)});i.dispose=s,o.push(s)}else u(t)}function Nt(e,t,n,o,r){if(R(n)){let l={type:"class",element:e,className:t};o.push(l);let u=x(()=>{let i=n.value;e.classList.toggle(t,!!i)});l.dispose=u,r.push(u)}else e.classList.toggle(t,!!n)}function xt(e,t,n,o){let r=u=>{if(u==null)return"";if(yt(u)){if(fe(u))throw Y("N106","html:inner rejects a value branded both raw() and sanitized() \u2014 the trust decision is ambiguous. Pick one brand.");return u.value}if(fe(u)){if(Pe(e)===null)throw Y("N107","html:inner cannot render sanitized() markup: this engine has no native Element.setHTML() and no fallback is registered. Wire one at startup \u2014 setSanitizerFallback((el, html) => { el.innerHTML = DOMPurify.sanitize(html) }) \u2014 nisli ships no sanitizer and will not fall back to innerHTML.");return u}if(bt(u))return u;throw Y("N106",`html:inner rejects unbranded values (got ${typeof u}). Wrap trusted markup in raw(html), untrusted markup in sanitized(html) \u2014 and never wrap user-generated input in raw().`)},l=u=>{let i=r(u);if(fe(i)){Pe(e)?.(e,i.value);return}e.innerHTML=i};if(R(t)){Oe(()=>r(t.value));let u={type:"innerHtml",element:e};n.push(u);let i=x(()=>{l(t.value)});u.dispose=i,o.push(i)}else l(t)}function Fe(e,t,n,o,r){let l,u=n;if(o.includes("stop")){let i=u;u=s=>{s.stopPropagation(),i(s)}}if(o.includes("prevent")){let i=u;u=s=>{s.preventDefault(),i(s)}}if(o.includes("once")){let i=u;u=s=>{e.removeEventListener(t,l),i(s)}}for(let i of o)if(["enter","escape","space","tab"].includes(i)){let s={enter:"Enter",escape:"Escape",space:" ",tab:"Tab"},a=u;u=c=>{c.key===s[i]&&a(c)}}l=i=>{try{C(()=>u(i))}catch(s){console.error(`Event handler error for '${t}':`,s)}},e.addEventListener(t,l),r.push({type:"event",element:e,eventName:t,handler:l,modifiers:o,dispose:()=>e.removeEventListener(t,l)})}function Rt(e){if(e&&typeof e=="object"&&"__templateResult"in e)return e;if(e&&typeof e=="object"&&e.__type==="factory"){let t=null;return{__templateResult:!0,mount(n){t=$(e),n.appendChild(t.element)},dispose(){t?.dispose(),t?.element.remove(),t=null}}}throw new TypeError(`each(): template callback must return a TemplateResult or a component factory result, got ${e===null?"null":typeof e}`)}function St(e,t,n){let o,r,l=[],u=null;return{__templateResult:!0,mount(s){o=document.createComment("each-start"),r=document.createComment("each-end"),s.appendChild(o),s.appendChild(r),u=x(()=>{let a=e.value;i(a)})},dispose(){u&&(u(),u=null);for(let s of l)s.templateResult.dispose();l=[]}};function i(s){let a=r.parentNode;if(!a)return;let c=[],d=new Map;for(let m=0;m<s.length;m++){let f=s[m];if(f===void 0)continue;let h=t(f,m),T=d.get(h);if(T!==void 0){let D=typeof h=="string"?JSON.stringify(h):String(h);console.error(`each() requires unique keys. Duplicate key ${D} found at indices ${T} and ${m}; reconciliation skipped.`);return}d.set(h,m),c.push({item:f,index:m,key:h})}let p=new Map;for(let m of l)p.set(m.key,m);let g=[],y=new Set;for(let{item:m,index:f,key:h}of c){y.add(h);let T=p.get(h);if(T)T.itemSignal.value=m,T.indexSignal.value=f,g.push(T);else{let D=b(m),K=b(f),O=document.createElement("each-item");O.style.display="contents";let I=Rt(n(D,K));I.mount(O),g.push({key:h,itemSignal:D,indexSignal:K,templateResult:I,wrapper:O})}}for(let m of l)y.has(m.key)||(m.templateResult.dispose(),m.wrapper.parentNode?.removeChild(m.wrapper));let v=ft(a),E=-1;if(!v){let m=a.getRootNode(),f="activeElement"in m?m.activeElement:null;for(;f&&f.parentNode!==a;)f=f.parentElement;f&&(E=g.findIndex(h=>h.wrapper===f))}if(E!==-1){let m=g[E].wrapper;for(let f=E-1;f>=0;f--){let h=g[f].wrapper;h.nextSibling!==m&&a.insertBefore(h,m),m=h}}let w=E===-1?o:g[E].wrapper;for(let m=E+1;m<g.length;m++){let f=g[m],h=w.nextSibling;h!==f.wrapper&&(f.wrapper.parentNode===a&&v?a.moveBefore(f.wrapper,h):a.insertBefore(f.wrapper,h)),w=f.wrapper}l=g}}function Ct(e,t,n){let o=r=>r===void 0?null:typeof r=="function"?Oe(r):r;if(R(e)){let r,l=null;return S(()=>{let u=!!e.value;if(u===r)return l;let i=o(u?t:n);return r=u,l=i,i})}return o(e?t:n)}function Dt(e,t={},n){let o=null,r=[],l=[];return{__templateResult:!0,mount(u){let i=document.createElement(e);o=i;let s,a=[];for(let[d,p]of Object.entries(t)){let g=he(i,d);if(!(p===void 0&&!g)){if(d==="ref"){J(p)&&(p.current=i,l.push(()=>{p.current=null}));continue}if(d==="on"){for(let[y,v]of Object.entries(p))Fe(i,y,v,[],r);continue}if(d==="class"){$e(i,p,r,l);continue}g?(s??=[]).push(()=>ye(i,d,p,r,l,a)):ye(i,d,p,r,l,a)}}let c=[];Ke(n,c);for(let d of c){let p=document.createComment("");i.appendChild(p),Ve(p,d,r,l)}if(s)for(let d of s)d();u.appendChild(i);for(let d of a)d()},dispose(){for(let u of l)try{u()}catch{}l.length=0;for(let u of r)if("dispose"in u&&u.dispose)try{u.dispose()}catch{}r.length=0,o?.parentNode?.removeChild(o),o=null}}}function Ke(e,t){if(e!==void 0)if(Array.isArray(e))for(let n of e)Ke(n,t);else t.push(e)}function ze(e){return e.some(t=>t.nodeType===1||t.nodeType===3&&(t.textContent??"").trim()!=="")}function Qe(e){return{__templateResult:!0,mount(t){for(let n of e)t.appendChild(n)},dispose(){}}}function We(e){return{__templateResult:!0,mount(t){t.appendChild(document.createTextNode(e))},dispose(){}}}function At(e){return e==null||e===""?null:typeof e=="object"&&("__templateResult"in e||"__type"in e)||Array.isArray(e)?e:We(String(e))}function Pt(e){let t=k().element,n=t.__capturedChildren??[];t.__capturedChildren=void 0;for(let i of n)i.parentNode===t&&t.removeChild(i);let o=t._propSignal?t._propSignal("children"):void 0,r=b(n),l=!1;X(()=>{l=!0;let i=r.value;t.__capturedChildren=i.length?i:void 0}),t.__nisliProjectionSweep=()=>{let i=new Set(Array.from(t.childNodes));queueMicrotask(()=>{if(l)return;let s=Array.from(t.childNodes).filter(a=>!i.has(a));if(s.length&&ze(s)){for(let a of s)t.removeChild(a);r.value=[...r.value,...s],H()}})};let u=null;if(e!=null)if(typeof e=="string")u=We(e);else{let i=document.createDocumentFragment();e.mount(i);let s=Array.from(i.childNodes);X(()=>{try{e.dispose()}catch{}}),u=Qe(s)}return S(()=>{let i=o?.value;if(i!=null&&i!=="")return At(i);let s=r.value;return ze(s)?Qe(s):u})}var F=new Set;function Z(){let e,t=new Promise(o=>{e=o});F.add(t);let n=!1;return()=>{n||(n=!0,F.delete(t),e())}}function Mt(){F.clear()}Ne(Mt);async function Ht(){for(let e=0;e<50;e++){if(await ie(),F.size===0)return;await Promise.allSettled([...F])}}function ee(e){return new Error(z("N602",`invalid query key: ${e}. Keys must be flat readonly (string | number | boolean | null)[] arrays \u2014 spread object params into tuple elements; null is the optional sentinel.`))}function ve(e){if(!Array.isArray(e))throw ee(`expected an array, got ${typeof e}`);for(let t=0;t<e.length;t++){let n=e[t];if(n===null)continue;let o=typeof n;if(!(o==="string"||o==="boolean")){if(o==="number"){if(Number.isFinite(n))continue;throw ee(`non-finite number at index ${t} (would collide with null)`)}throw ee(n===void 0?`undefined at index ${t}`:`${o} at index ${t}`)}}return e.slice()}function jt(e){return JSON.stringify(e)}function Lt(e,t){if(t.length>e.length)return!1;for(let n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}var Ot=0;function L(e){let t;return C(()=>{t=e.value}),t}function It(e){if(e instanceof Error)return e;try{return new Error(String(e))}catch{return new Error("Unknown error")}}var te=class{_records=new Map;_version=b(0);_observers=0;invalidate(t){let n=ve(t),o=0;for(let r of this._records.values()){if(!Lt(r.key,n))continue;o++,r.stale=!0;let l=ge(r,!0);l&&ne(r,l.fetcher,l.retry)}return o}clear(){for(let t of this._records.values())t.generation++,t.controller?.abort(),t.terminate?.(),t.controller=null,t.terminate=null,t.runPromise=null,t.running=!1,t.observers.clear();this._records.clear(),this._version.value++}prefetch(t,n,o=0){let r=qe(this,t);return r.running?r.runPromise??Promise.resolve():!r.stale&&L(r.status)==="success"&&o>0&&Date.now()-L(r.fetchedAt)<o?Promise.resolve():ne(r,n,0)}};function qe(e,t){let n=ve(t),o=jt(n),r=e._records.get(o);return r||(r={key:n,serialized:o,data:b(void 0),error:b(null),status:b("idle"),fetchedAt:b(0),stale:!1,running:!1,generation:0,controller:null,runPromise:null,terminate:null,observers:new Set},e._records.set(o,r)),r}function ge(e,t=!1){let n,o;for(let r of e.observers)r.enabled?(!n||r.mountIndex>n.mountIndex)&&(n=r):t||(!o||r.mountIndex>o.mountIndex)&&(o=r);return n??o}function Bt(e,t){if(e.running)return!1;if(e.stale)return!0;let n=L(e.status);return n==="idle"||n==="error"||t.staleTime<=0?!0:Date.now()-L(e.fetchedAt)>=t.staleTime}function ne(e,t,n){e.controller?.abort(),e.terminate?.();let o=++e.generation,r=new AbortController,l=Z();e.controller=r,e.terminate=l,e.running=!0,e.stale=!1,e.status.value="loading",e.error.value=null;let u=(async()=>{try{let i=null;for(let s=0;s<=n;s++){if(o!==e.generation)return;try{let a=await Promise.resolve().then(()=>t(r.signal));if(o!==e.generation)return;e.data.value=a,e.error.value=null,e.fetchedAt.value=Date.now(),e.status.value="success";return}catch(a){i=It(a)}}if(o!==e.generation)return;e.error.value=i,e.status.value="error"}finally{o===e.generation&&(e.running=!1,e.controller=null,e.runPromise=null,e.terminate=null),l()}})();return e.runPromise=u,u}function Vt(e,t,n={}){let{staleTime:o=0,retry:r=0,enabled:l,initialData:u}=n,i=ce(te);C(()=>{ve(e())});let s={mountIndex:Ot++,fetcher:t,staleTime:o,retry:r,enabled:!0,record:null};i._observers++;let a=b(null),c=b(!0),d=!1,p=null,g=-1,y=x(()=>{if(d)return;let m=i._version.value,f=e(),h=l?!!l():!0,T=qe(i,f);s.enabled=h,c.value=h;let D=T!==s.record;D&&(s.record?.observers.delete(s),T.observers.add(s),s.record=T,u!==void 0&&L(T.status)==="idle"&&L(T.data)===void 0&&(T.data.value=u),a.value=T);let K=p===!1&&h,O=m!==g;if(p=h,g=m,h&&(D||K||O)&&Bt(T,s)){let I=ge(T)??s;ne(T,I.fetcher,I.retry)}}),v=()=>{d||(d=!0,s.record?.observers.delete(s),s.record=null,i._observers--,y())};_()&&k().addDisposer(v);let E=()=>{if(d)return;let m=s.record;if(!m||!s.enabled||m.running)return;let f=ge(m)??s;ne(m,f.fetcher,f.retry)},w={data:S(()=>{let m=a.value;return m?m.data.value:u}),loading:S(()=>c.value&&a.value?.status.value==="loading"),error:S(()=>a.value?.error.value??null),status:S(()=>a.value?.status.value??"idle"),refetch:E,dispose:v};return A(w,v)}function $t(e,t){let n=b(void 0),o=b(!1),r=b(null),l=b(0),u=0,i=!1,s=()=>{},a=()=>{i||(i=!0,u++,s(),o.value=!1)};return _()&&k().addDisposer(a),s=x(()=>{l.value;let d=++u,p;try{p=e()}catch(w){o.value=!1,r.value=Ue(w);return}if(p===void 0){n.value=void 0,o.value=!1,r.value=null;return}let g=new AbortController;o.value=!0,r.value=null;let y=p,v=()=>i||g.signal.aborted||d!==u,E=Z();return Promise.resolve().then(async()=>{if(v()){E();return}try{let w=await t(y,g.signal);if(v()){E();return}n.value=w,o.value=!1,E()}catch(w){if(v()){E();return}r.value=Ue(w),o.value=!1,E()}}),()=>{d===u&&u++,g.abort(),E()}}),A({data:n,loading:o,error:r,refresh(){i||l.value++},dispose:a},a)}function Ue(e){if(e instanceof Error)return e;try{return new Error(String(e))}catch{return new Error("Unknown error")}}function Ft(){return typeof ViewTransition<"u"&&"types"in ViewTransition.prototype}function Kt(e,t={}){let n=()=>{e(),H()};if(typeof document>"u"||typeof document.startViewTransition!="function")return n(),null;let o=t.types;return o!==void 0&&o.length>0&&Ft()?document.startViewTransition({update:n,types:o}):document.startViewTransition(n)}export{le as Emitter,te as QueryClient,q as SIGNAL_BRAND,Pt as children,dt as component,S as computed,st as createContext,ot as createToken,St as each,x as effect,Dt as el,H as flush,H as flushEffects,k as getCurrentComponent,_ as hasContext,kt as html,ce as inject,J as isRef,R as isSignal,X as onCleanup,it as onMount,nt as provide,Vt as query,mt as raw,pt as ref,rt as resetInjector,$t as resource,ae as runWithContext,ht as sanitized,Ge as setDevMode,gt as setSanitizerFallback,Ht as settle,b as signal,ie as tick,C as untrack,at as useHostEvent,Kt as viewTransition,Ct as when};
|
|
2
|
+
//# sourceMappingURL=index.production.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/diagnostics.ts", "../src/disposable.ts", "../src/signal.ts", "../src/context.ts", "../src/emitter.ts", "../src/injector.ts", "../src/element-context.ts", "../src/lifecycle.ts", "../src/component.ts", "../src/ref.ts", "../src/template.ts", "../src/projection.ts", "../src/settle.ts", "../src/query.ts", "../src/resource.ts", "../src/view-transition.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["setDevMode", "on", "formatDiag", "code", "message", "diag", "detail", "DISPOSE", "disposable", "value", "dispose", "contextHook", "setContextHook", "hook", "SIGNAL_BRAND", "activeObserver", "globalEpoch", "nextEffectOrder", "pendingEffects", "flushScheduled", "scheduleFlush", "flushPendingEffects", "effects", "a", "b", "effect", "runEffect", "NO_COMPUTED_ERROR", "SignalImpl", "SIGNAL_BRAND", "initialValue", "globalEpoch", "activeObserver", "newValue", "notifyObservers", "fn", "effect", "value", "untrack", "observers", "flavor", "observer", "ComputedImpl", "source", "prevObserver", "wasError", "error", "wasClean", "MAX_EFFECT_RERUNS", "createEffectNode", "nextEffectOrder", "pendingEffects", "scheduleFlush", "effectSourcesChanged", "node", "isThenable", "runEffect", "prevRunning", "result", "err", "signal", "computed", "_rejectAsync", "dispose", "contextHook", "addDisposer", "disposable", "isSignal", "prev", "flush", "guard", "flushPendingEffects", "tick", "flush", "i", "resolve", "pendingEffects", "currentComponent", "runWithContext", "component", "fn", "prev", "getCurrentComponent", "hasContext", "Emitter", "event", "payload", "set", "fn", "err", "unsubscribe", "hasContext", "getCurrentComponent", "disposable", "selector", "initial", "s", "signal", "singletonCache", "factoryOverrides", "instantiating", "inject", "token", "name", "instance", "factory", "injToken", "provide", "createToken", "defaultFactory", "resetHooks", "registerResetHook", "hook", "resetInjector", "createContext", "name", "options", "providerTag", "KEY", "store", "el", "provide", "host", "value", "peek", "find", "start", "startHost", "caller", "hasContext", "getCurrentComponent", "inject", "found", "injectingTag", "mountCallbacks", "onMount", "callback", "hasContext", "comp", "getCurrentComponent", "callbacks", "onCleanup", "useHostEvent", "target", "eventName", "handler", "runMountCallbacks", "cb", "cleanup", "setContextHook", "hasContext", "comp", "getCurrentComponent", "disposer", "camelToKebab", "s", "m", "declType", "decl", "declAttrName", "key", "resolveAttrValue", "raw", "t", "def", "n", "ComponentHostImpl", "element", "fn", "createPropsProxy", "signals", "getOrCreate", "initialValue", "signal", "_target", "value", "component", "tagName", "setup", "options", "attrEntries", "attrEntriesByKey", "key", "decl", "attrName", "declAttrName", "entry", "observedList", "FrameworkComponent", "createPropsProxy", "raw", "declType", "resolveAttrValue", "name", "_old", "next", "untrack", "host", "ComponentHostImpl", "phase", "runWithContext", "mountTemplate", "sweepHost", "sweep", "runMountCallbacks", "err", "error", "code", "diag", "fallback", "captured", "value", "props", "hostAttrs", "ensureSignal", "isSignal", "signal", "result", "hostImpl", "factoryResult", "el", "sig", "unsub", "newVal", "classSig", "applyHostClass", "prevClass", "newClass", "prev", "prevClasses", "nextClasses", "cls", "REF_BRAND", "ref", "isRef", "value", "canMoveWithin", "parent", "untracked", "fn", "result", "untrack", "raw", "value", "isRawHtml", "sanitized", "isSanitizedHtml", "sanitizerFallback", "setSanitizerFallback", "nativeSetHtml", "el", "html", "sanitizerFor", "platform", "isTrustedHtml", "tt", "nisliError", "code", "message", "templateCache", "parseCount", "parseTemplate", "strings", "valueCount", "template", "templateCache", "htmlStr", "inTag", "quoteChar", "i", "s", "c", "ch", "needsQuotes", "createMarker", "parseCount", "MARKER_PREFIX", "MARKER_SUFFIX", "createMarker", "index", "MARKER_PREFIX", "MARKER_SUFFIX", "html", "strings", "values", "bindings", "disposers", "mounted", "host", "nisliError", "fragment", "parseTemplate", "afterMount", "processNode", "sync", "d", "b", "node", "afterChildren", "processAttributes", "comment", "text", "value", "replaceMarkerWithBinding", "children", "child", "bind", "el", "attrsToRemove", "attr", "name", "attrValue", "eventParts", "eventName", "modifiers", "markerMatch", "handler", "bindEvent", "className", "bindClass", "bindInnerHtml", "isRef", "markers", "first", "resolve", "_", "i", "v", "raw", "isSignal", "m", "computed", "nativeFormProperty", "bindAttribute", "mountFactoryResult", "factory", "localDisposers", "key", "unsub", "newVal", "classVal", "sig", "prevClasses", "applyClasses", "next", "cls", "dispose", "parent", "startMarker", "endMarker", "currentResults", "currentNodes", "currentFactoryDisposers", "currentText", "lastValue", "effect", "newValue", "liveParent", "isTemplate", "isFactory", "r", "item", "tpl", "wrapper", "nodes", "textNode", "factoryDispose", "result", "bindClassAttribute", "binding", "bindPlainAttribute", "property", "current", "apply", "syncFormProperty", "active", "observer", "attribute", "tag", "control", "initialized", "resolveHtml", "isRawHtml", "isSanitizedHtml", "sanitizerFor", "isTrustedHtml", "writeHtml", "resolved", "untracked", "safeHandler", "composed", "inner", "e", "mod", "keyMap", "untrack", "err", "asTemplateResult", "result", "mounted", "host", "mountFactoryResult", "each", "items", "keyFn", "templateFn", "startMarker", "endMarker", "entries", "effectDispose", "effect", "newItems", "reconcile", "entry", "parent", "keyedItems", "keyIndices", "i", "item", "key", "previousIndex", "formattedKey", "oldMap", "newEntries", "newKeys", "index", "existing", "itemSignal", "signal", "indexSignal", "wrapper", "templateResult", "atomic", "canMoveWithin", "focusedIndex", "root", "active", "next", "cursor", "nextSibling", "when", "condition", "template", "elseTemplate", "resolveBranch", "branch", "untracked", "isSignal", "lastGate", "lastResult", "computed", "gate", "el", "tag", "props", "children", "node", "bindings", "disposers", "element", "afterChildren", "afterMount", "val", "formProperty", "nativeFormProperty", "isRef", "event", "handler", "bindEvent", "bindClassAttribute", "bindPlainAttribute", "flat", "flattenChildren", "child", "anchor", "replaceMarkerWithBinding", "bind", "sync", "d", "b", "out", "c", "isMeaningful", "nodes", "n", "nodesTemplate", "w", "node", "textTemplate", "text", "asSlot", "value", "children", "fallback", "host", "getCurrentComponent", "captured", "childrenProp", "projectedNodes", "signal", "disposed", "onCleanup", "renderedRoots", "late", "flush", "fallbackSlot", "holder", "fallbackNodes", "computed", "kids", "pending", "__enrollPending", "resolve", "entry", "res", "done", "__resetPending", "registerResetHook", "__resetPending", "settle", "i", "tick", "pending", "keyError", "detail", "formatDiag", "validateKey", "raw", "i", "el", "t", "serializeKey", "key", "matchesPrefix", "prefix", "nextMountIndex", "peek", "s", "v", "untrack", "toError", "cause", "QueryClient", "signal", "keyPrefix", "count", "rec", "owner", "ownerOf", "startRun", "fetcher", "staleTime", "resolveRecord", "client", "rawKey", "serialized", "requireEnabled", "best", "bestDisabled", "obs", "needsRun", "observer", "status", "retry", "generation", "controller", "terminate", "__enrollPending", "run", "lastError", "attempt", "result", "query", "keyFn", "options", "enabled", "initialData", "inject", "recSig", "enabledSig", "disposed", "prevEnabled", "prevVersion", "stopEffect", "effect", "version", "on", "moved", "reEnabled", "versionChanged", "dispose", "hasContext", "getCurrentComponent", "refetch", "computed", "disposable", "resource", "source", "loader", "data", "signal", "loading", "error", "refreshVersion", "generation", "disposed", "stopEffect", "dispose", "hasContext", "getCurrentComponent", "effect", "currentGeneration", "sourceValue", "cause", "toError", "controller", "enabledSource", "isStale", "settled", "__enrollPending", "value", "disposable", "supportsTransitionTypes", "viewTransition", "update", "options", "commit", "flush", "types"]
|
|
6
|
+
}
|
|
@@ -17,25 +17,18 @@
|
|
|
17
17
|
* the pre-T6 unconditional console.error); others are dev-only attribution
|
|
18
18
|
* (N201/N202/N501) and their callers guard with {@link isDev}.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* build resolves prod even in the browser where `process` is absent.
|
|
26
|
-
* 2. `globalThis.process?.env?.NODE_ENV` — Node scripts, test runners, SSG.
|
|
27
|
-
* 3. Neither present (raw buildless ESM in a browser): DEV — loud by
|
|
28
|
-
* default, matching the framework's no-build posture; `setDevMode(false)`
|
|
29
|
-
* is the explicit opt-out for buildless production pages.
|
|
30
|
-
* The probe runs once at module load; `setDevMode()` overrides it (tests,
|
|
31
|
-
* bundler-less prod), `setDevMode(null)` restores the probed default.
|
|
20
|
+
* Availability belongs to the artifact (ADR 0048). Bundler ESM leaves standard
|
|
21
|
+
* NODE_ENV guards at each optional work site; the native browser artifacts
|
|
22
|
+
* resolve them at publication. No process global is needed in either browser
|
|
23
|
+
* artifact. The runtime override controls available diagnostics only: it cannot
|
|
24
|
+
* resurrect instrumentation removed from a production artifact.
|
|
32
25
|
*/
|
|
33
26
|
export declare const codes: Record<string, string>;
|
|
34
|
-
/**
|
|
27
|
+
/** Runtime preference within this artifact's development capability. */
|
|
35
28
|
export declare function isDev(): boolean;
|
|
36
29
|
/**
|
|
37
|
-
*
|
|
38
|
-
* default (`null`).
|
|
30
|
+
* Enable/suppress available development diagnostics, or restore the artifact's
|
|
31
|
+
* default (`null`). A production artifact cannot re-enable removed diagnostics.
|
|
39
32
|
*/
|
|
40
33
|
export declare function setDevMode(on: boolean | null): void;
|
|
41
34
|
/** The shared `[nisli CODE] message` line, for both logged and thrown paths. */
|
|
@@ -33,11 +33,10 @@
|
|
|
33
33
|
* (and SSG output) as an inert HTML comment. Documented, accepted for the
|
|
34
34
|
* prototype; the design gate may choose to strip it at parse.
|
|
35
35
|
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
* `setTemplateAuditEnabled(false)` before rendering.
|
|
36
|
+
* Calls AND module allocations are statically gated (ADR 0048). The runtime
|
|
37
|
+
* override can suppress or restore available audits, never restore removed code.
|
|
38
|
+
* No SSG/happy-dom detection is attempted; production rendering uses NODE_ENV
|
|
39
|
+
* or the native production artifact.
|
|
41
40
|
*/
|
|
42
41
|
/**
|
|
43
42
|
* Enable/disable the first-parse audit (and its callsite capture);
|
|
@@ -136,7 +136,8 @@ export type ElChild = string | number | boolean | null | undefined | TemplateRes
|
|
|
136
136
|
*
|
|
137
137
|
* Semantics (ADR 0025 item 11):
|
|
138
138
|
* - Props are **HTML attributes**: `class` uses the reactive class binder, every
|
|
139
|
-
* other key uses `setAttribute` with `html`'s boolean/null rules
|
|
139
|
+
* other key uses `setAttribute` with `html`'s boolean/null rules. Native
|
|
140
|
+
* value/checked/selected also update live form state (ADR 0049) — NEVER
|
|
140
141
|
* `_setProp`. A framework component tag reached via `el()` receives its values
|
|
141
142
|
* as attributes and resolves them through its `attr()`/`boolAttr()` fallbacks.
|
|
142
143
|
* - `ref` assigns `.current`; `on: { event: handler }` adds auto-removed listeners.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nisli/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.57.1",
|
|
4
4
|
"description": "A reactive web component framework. Signals, templates, dependency injection — no build step, no virtual DOM, no dependencies.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -19,20 +19,22 @@
|
|
|
19
19
|
],
|
|
20
20
|
"exports": {
|
|
21
21
|
".": {
|
|
22
|
-
"types": "./dist/index.d.ts",
|
|
23
|
-
"default": "./dist/index.js"
|
|
22
|
+
"types": "./dist/types/index.d.ts",
|
|
23
|
+
"default": "./dist/bundler/index.js"
|
|
24
24
|
},
|
|
25
25
|
"./vite-hmr": {
|
|
26
|
-
"types": "./dist/vite-hmr/plugin.d.ts",
|
|
27
|
-
"default": "./dist/vite-hmr/plugin.js"
|
|
26
|
+
"types": "./dist/types/vite-hmr/plugin.d.ts",
|
|
27
|
+
"default": "./dist/bundler/vite-hmr/plugin.js"
|
|
28
28
|
},
|
|
29
29
|
"./vite-hmr/runtime": {
|
|
30
|
-
"types": "./dist/vite-hmr/runtime.d.ts",
|
|
31
|
-
"default": "./dist/vite-hmr/runtime.js"
|
|
30
|
+
"types": "./dist/types/vite-hmr/runtime.d.ts",
|
|
31
|
+
"default": "./dist/bundler/vite-hmr/runtime.js"
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@types/node": "^22.0.0"
|
|
35
|
+
"@types/node": "^22.0.0",
|
|
36
|
+
"esbuild": "0.28.1",
|
|
37
|
+
"vite": "7.3.6"
|
|
36
38
|
},
|
|
37
39
|
"files": [
|
|
38
40
|
"dist",
|
|
@@ -40,9 +42,12 @@
|
|
|
40
42
|
"LICENSE"
|
|
41
43
|
],
|
|
42
44
|
"scripts": {
|
|
43
|
-
"build": "
|
|
45
|
+
"build": "node scripts/build.mjs",
|
|
44
46
|
"test": "vitest run",
|
|
47
|
+
"test:package": "node scripts/proof-package.mjs",
|
|
48
|
+
"proof:form-controls": "node scripts/proof-form-controls.mjs",
|
|
45
49
|
"typecheck": "tsc --noEmit",
|
|
46
|
-
"clean": "rm -rf dist"
|
|
50
|
+
"clean": "rm -rf dist",
|
|
51
|
+
"proof:focus": "node scripts/proof-focus.mjs"
|
|
47
52
|
}
|
|
48
53
|
}
|