{"version":3,"file":"./build/interactivity/index.min.js","mappings":"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","sources":["webpack://wp/webpack/bootstrap","webpack://wp/webpack/runtime/define property getters","webpack://wp/webpack/runtime/hasOwnProperty shorthand","webpack://wp/./packages/interactivity/node_modules/preact/dist/preact.module.js","webpack://wp/./packages/interactivity/node_modules/preact/hooks/dist/hooks.module.js","webpack://wp/./node_modules/@preact/signals-core/dist/signals-core.module.js","webpack://wp/./packages/interactivity/node_modules/@preact/signals/dist/signals.module.js","webpack://wp/@wordpress/interactivity/src/proxies/registry.ts","webpack://wp/@wordpress/interactivity/src/namespaces.ts","webpack://wp/@wordpress/interactivity/src/scopes.ts","webpack://wp/@wordpress/interactivity/src/utils.ts","webpack://wp/@wordpress/interactivity/src/proxies/signals.ts","webpack://wp/@wordpress/interactivity/src/proxies/state.ts","webpack://wp/@wordpress/interactivity/src/proxies/store.ts","webpack://wp/@wordpress/interactivity/src/store.ts","webpack://wp/@wordpress/interactivity/src/hooks.tsx","webpack://wp/@wordpress/interactivity/src/directives.tsx","webpack://wp/@wordpress/interactivity/src/constants.ts","webpack://wp/@wordpress/interactivity/src/vdom.ts","webpack://wp/@wordpress/interactivity/src/init.ts","webpack://wp/@wordpress/interactivity/src/index.ts"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,h=Array.isArray;function v(n,l){for(var u in l)n[u]=l[u];return n}function p(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,u,t){var i,o,r,f={};for(r in u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return d(l,f,i,o,null)}function d(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function _(){return{current:null}}function g(n){return n.children}function b(n,l){this.props=n,this.context=l}function m(n,l){if(null==l)return n.__?m(n.__,n.__i+1):null;for(var u;lu&&i.sort(f));x.__r=0}function C(n,l,u,t,i,o,r,f,e,a,h){var v,p,y,d,_,g=t&&t.__k||s,b=l.length;for(u.__d=e,P(u,l,g),e=u.__d,v=0;v0?d(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,f=H(i,u,r=t+a,s),i.__i=f,o=null,-1!==f&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,\"function\"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f===r+1?a++:f>r?s>e-r?a+=f-r:a--:a=f(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f2&&(e.children=arguments.length>3?n.call(arguments,2):t),d(l.type,e,i||l.key,o||l.ref,null)}function F(n,l){var u={__c:l=\"__cC\"+e++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,w(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=s.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},b.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=v({},this.state),\"function\"==typeof n&&(n=n(v({},u),this.props)),n&&v(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),w(this))},b.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),w(this))},b.prototype.render=g,i=[],r=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},x.__r=0,e=0;export{b as Component,g as Fragment,E as cloneElement,F as createContext,y as createElement,_ as createRef,y as h,B as hydrate,t as isValidElement,l as options,q as render,$ as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","import{options as n}from\"preact\";var t,r,u,i,o=0,f=[],c=[],e=n.__b,a=n.__r,v=n.diffed,l=n.__c,m=n.unmount;function d(t,u){n.__h&&n.__h(r,t,o||u),o=0;var i=r.__H||(r.__H={__:[],__h:[]});return t>=i.__.length&&i.__.push({__V:c}),i.__[t]}function h(n){return o=1,s(B,n)}function s(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):B(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!c||c.call(this,n,t,r))};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function p(u,i){var o=d(t++,3);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__H.__h.push(o))}function y(u,i){var o=d(t++,4);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__h.push(o))}function _(n){return o=5,F(function(){return{current:n}},[])}function A(n,t,r){o=6,y(function(){return\"function\"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function F(n,r){var u=d(t++,7);return z(u.__H,r)?(u.__V=n(),u.i=r,u.__h=n,u.__V):u.__}function T(n,t){return o=8,F(function(){return n},t)}function q(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function x(t,r){n.useDebugValue&&n.useDebugValue(r?r(t):t)}function P(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function V(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function b(){for(var t;t=f.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(k),t.__H.__h.forEach(w),t.__H.__h=[]}catch(r){t.__H.__h=[],n.__e(r,t.__v)}}n.__b=function(n){r=null,e&&e(n)},n.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=c,n.__N=n.i=void 0})):(i.__h.forEach(k),i.__h.forEach(w),i.__h=[],t=0)),u=r},n.diffed=function(t){v&&v(t);var o=t.__c;o&&o.__H&&(o.__H.__h.length&&(1!==f.push(o)&&i===n.requestAnimationFrame||((i=n.requestAnimationFrame)||j)(b)),o.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==c&&(n.__=n.__V),n.i=void 0,n.__V=c})),u=r=null},n.__c=function(t,r){r.some(function(t){try{t.__h.forEach(k),t.__h=t.__h.filter(function(n){return!n.__||w(n)})}catch(u){r.some(function(n){n.__h&&(n.__h=[])}),r=[],n.__e(u,t.__v)}}),l&&l(t,r)},n.unmount=function(t){m&&m(t);var r,u=t.__c;u&&u.__H&&(u.__H.__.forEach(function(n){try{k(n)}catch(n){r=n}}),u.__H=void 0,r&&n.__e(r,u.__v))};var g=\"function\"==typeof requestAnimationFrame;function j(n){var t,r=function(){clearTimeout(u),g&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);g&&(t=requestAnimationFrame(r))}function k(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function w(n){var t=r;n.__c=n.__(),r=t}function z(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function B(n,t){return\"function\"==typeof t?t(n):t}export{T as useCallback,q as useContext,x as useDebugValue,p as useEffect,P as useErrorBoundary,V as useId,A as useImperativeHandle,y as useLayoutEffect,F as useMemo,s as useReducer,_ as useRef,h as useState};\n//# sourceMappingURL=hooks.module.js.map\n","function i(){throw new Error(\"Cycle detected\")}function t(){if(!(f>1)){var i,t=!1;while(void 0!==s){var r=s;s=void 0;v++;while(void 0!==r){var n=r.o;r.o=void 0;r.f&=-3;if(!(8&r.f)&&a(r))try{r.c()}catch(r){if(!t){i=r;t=!0}}r=n}}v=0;f--;if(t)throw i}else f--}function r(i){if(f>0)return i();f++;try{return i()}finally{t()}}var n=void 0,o=0;function h(i){if(o>0)return i();var t=n;n=void 0;o++;try{return i()}finally{o--;n=t}}var s=void 0,f=0,v=0,e=0;function u(i){if(void 0!==n){var t=i.n;if(void 0===t||t.t!==n){t={i:0,S:i,p:n.s,n:void 0,t:n,e:void 0,x:void 0,r:t};if(void 0!==n.s)n.s.n=t;n.s=t;i.n=t;if(32&n.f)i.S(t);return t}else if(-1===t.i){t.i=0;if(void 0!==t.n){t.n.p=t.p;if(void 0!==t.p)t.p.n=t.n;t.p=n.s;t.n=void 0;n.s.n=t;n.s=t}return t}}}function c(i){this.v=i;this.i=0;this.n=void 0;this.t=void 0}c.prototype.h=function(){return!0};c.prototype.S=function(i){if(this.t!==i&&void 0===i.e){i.x=this.t;if(void 0!==this.t)this.t.e=i;this.t=i}};c.prototype.U=function(i){if(void 0!==this.t){var t=i.e,r=i.x;if(void 0!==t){t.x=r;i.e=void 0}if(void 0!==r){r.e=t;i.x=void 0}if(i===this.t)this.t=r}};c.prototype.subscribe=function(i){var t=this;return E(function(){var r=t.value,n=32&this.f;this.f&=-33;try{i(r)}finally{this.f|=n}})};c.prototype.valueOf=function(){return this.value};c.prototype.toString=function(){return this.value+\"\"};c.prototype.toJSON=function(){return this.value};c.prototype.peek=function(){return this.v};Object.defineProperty(c.prototype,\"value\",{get:function(){var i=u(this);if(void 0!==i)i.i=this.i;return this.v},set:function(r){if(n instanceof y)!function(){throw new Error(\"Computed cannot have side-effects\")}();if(r!==this.v){if(v>100)i();this.v=r;this.i++;e++;f++;try{for(var o=this.t;void 0!==o;o=o.x)o.t.N()}finally{t()}}}});function d(i){return new c(i)}function a(i){for(var t=i.s;void 0!==t;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function l(i){for(var t=i.s;void 0!==t;t=t.n){var r=t.S.n;if(void 0!==r)t.r=r;t.S.n=t;t.i=-1;if(void 0===t.n){i.s=t;break}}}function w(i){var t=i.s,r=void 0;while(void 0!==t){var n=t.p;if(-1===t.i){t.S.U(t);if(void 0!==n)n.n=t.n;if(void 0!==t.n)t.n.p=n}else r=t;t.S.n=t.r;if(void 0!==t.r)t.r=void 0;t=n}i.s=r}function y(i){c.call(this,void 0);this.x=i;this.s=void 0;this.g=e-1;this.f=4}(y.prototype=new c).h=function(){this.f&=-3;if(1&this.f)return!1;if(32==(36&this.f))return!0;this.f&=-5;if(this.g===e)return!0;this.g=e;this.f|=1;if(this.i>0&&!a(this)){this.f&=-2;return!0}var i=n;try{l(this);n=this;var t=this.x();if(16&this.f||this.v!==t||0===this.i){this.v=t;this.f&=-17;this.i++}}catch(i){this.v=i;this.f|=16;this.i++}n=i;w(this);this.f&=-2;return!0};y.prototype.S=function(i){if(void 0===this.t){this.f|=36;for(var t=this.s;void 0!==t;t=t.n)t.S.S(t)}c.prototype.S.call(this,i)};y.prototype.U=function(i){if(void 0!==this.t){c.prototype.U.call(this,i);if(void 0===this.t){this.f&=-33;for(var t=this.s;void 0!==t;t=t.n)t.S.U(t)}}};y.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var i=this.t;void 0!==i;i=i.x)i.t.N()}};y.prototype.peek=function(){if(!this.h())i();if(16&this.f)throw this.v;return this.v};Object.defineProperty(y.prototype,\"value\",{get:function(){if(1&this.f)i();var t=u(this);this.h();if(void 0!==t)t.i=this.i;if(16&this.f)throw this.v;return this.v}});function _(i){return new y(i)}function p(i){var r=i.u;i.u=void 0;if(\"function\"==typeof r){f++;var o=n;n=void 0;try{r()}catch(t){i.f&=-2;i.f|=8;g(i);throw t}finally{n=o;t()}}}function g(i){for(var t=i.s;void 0!==t;t=t.n)t.S.U(t);i.x=void 0;i.s=void 0;p(i)}function b(i){if(n!==this)throw new Error(\"Out-of-order effect\");w(this);n=i;this.f&=-2;if(8&this.f)g(this);t()}function x(i){this.x=i;this.u=void 0;this.s=void 0;this.o=void 0;this.f=32}x.prototype.c=function(){var i=this.S();try{if(8&this.f)return;if(void 0===this.x)return;var t=this.x();if(\"function\"==typeof t)this.u=t}finally{i()}};x.prototype.S=function(){if(1&this.f)i();this.f|=1;this.f&=-9;p(this);l(this);f++;var t=n;n=this;return b.bind(this,t)};x.prototype.N=function(){if(!(2&this.f)){this.f|=2;this.o=s;s=this}};x.prototype.d=function(){this.f|=8;if(!(1&this.f))g(this)};function E(i){var t=new x(i);try{t.c()}catch(i){t.d();throw i}return t.d.bind(t)}export{c as Signal,r as batch,_ as computed,E as effect,d as signal,h as untracked};//# sourceMappingURL=signals-core.module.js.map\n","import{Component as n,options as r,isValidElement as i}from\"preact\";import{useMemo as t,useRef as f,useEffect as o}from\"preact/hooks\";import{Signal as e,computed as u,signal as a,effect as c}from\"@preact/signals-core\";export{Signal,batch,computed,effect,signal,untracked}from\"@preact/signals-core\";var v,s;function l(n,i){r[n]=i.bind(null,r[n]||function(){})}function d(n){if(s)s();s=n&&n.S()}function p(n){var r=this,f=n.data,o=useSignal(f);o.value=f;var e=t(function(){var n=r.__v;while(n=n.__)if(n.__c){n.__c.__$f|=4;break}r.__$u.c=function(){var n;if(!i(e.peek())&&3===(null==(n=r.base)?void 0:n.nodeType))r.base.data=e.peek();else{r.__$f|=1;r.setState({})}};return u(function(){var n=o.value.value;return 0===n?0:!0===n?\"\":n||\"\"})},[]);return e.value}p.displayName=\"_st\";Object.defineProperties(e.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:p},props:{configurable:!0,get:function(){return{data:this}}},__b:{configurable:!0,value:1}});l(\"__b\",function(n,r){if(\"string\"==typeof r.type){var i,t=r.props;for(var f in t)if(\"children\"!==f){var o=t[f];if(o instanceof e){if(!i)r.__np=i={};i[f]=o;t[f]=o.peek()}}}n(r)});l(\"__r\",function(n,r){d();var i,t=r.__c;if(t){t.__$f&=-2;if(void 0===(i=t.__$u))t.__$u=i=function(n){var r;c(function(){r=this});r.c=function(){t.__$f|=1;t.setState({})};return r}()}v=t;d(i);n(r)});l(\"__e\",function(n,r,i,t){d();v=void 0;n(r,i,t)});l(\"diffed\",function(n,r){d();v=void 0;var i;if(\"string\"==typeof r.type&&(i=r.__e)){var t=r.__np,f=r.props;if(t){var o=i.U;if(o)for(var e in o){var u=o[e];if(void 0!==u&&!(e in t)){u.d();o[e]=void 0}}else i.U=o={};for(var a in t){var c=o[a],s=t[a];if(void 0===c){c=_(i,a,s,f);o[a]=c}else c.o(s,f)}}}n(r)});function _(n,r,i,t){var f=r in n&&void 0===n.ownerSVGElement,o=a(i);return{o:function(n,r){o.value=n;t=r},d:c(function(){var i=o.value.value;if(t[r]!==i){t[r]=i;if(f)n[r]=i;else if(i)n.setAttribute(r,i);else n.removeAttribute(r)}})}}l(\"unmount\",function(n,r){if(\"string\"==typeof r.type){var i=r.__e;if(i){var t=i.U;if(t){i.U=void 0;for(var f in t){var o=t[f];if(o)o.d()}}}}else{var e=r.__c;if(e){var u=e.__$u;if(u){e.__$u=void 0;u.d()}}}n(r)});l(\"__h\",function(n,r,i,t){if(t<3||9===t)r.__$f|=2;n(r,i,t)});n.prototype.shouldComponentUpdate=function(n,r){var i=this.__$u;if(!(i&&void 0!==i.s||4&this.__$f))return!0;if(3&this.__$f)return!0;for(var t in r)return!0;for(var f in n)if(\"__source\"!==f&&n[f]!==this.props[f])return!0;for(var o in this.props)if(!(o in n))return!0;return!1};function useSignal(n){return t(function(){return a(n)},[])}function useComputed(n){var r=f(n);r.current=n;v.__$f|=4;return t(function(){return u(function(){return r.current()})},[])}function useSignalEffect(n){var r=f(n);r.current=n;o(function(){return c(function(){return r.current()})},[])}export{useComputed,useSignal,useSignalEffect};//# sourceMappingURL=signals.module.js.map\n","/**\n * Proxies for each object.\n */\nconst objToProxy = new WeakMap< object, object >();\nconst proxyToObj = new WeakMap< object, object >();\n\n/**\n * Namespaces for each created proxy.\n */\nconst proxyToNs = new WeakMap< object, string >();\n\n/**\n * Object types that can be proxied.\n */\nconst supported = new Set( [ Object, Array ] );\n\n/**\n * Returns a proxy to the passed object with the given handlers, assigning the\n * specified namespace to it. If a proxy for the passed object was created\n * before, that proxy is returned.\n *\n * @param namespace The namespace that will be associated to this proxy.\n * @param obj The object to proxify.\n * @param handlers Handlers that the proxy will use.\n *\n * @throws Error if the object cannot be proxified. Use {@link shouldProxy} to\n * check if a proxy can be created for a specific object.\n *\n * @return The created proxy.\n */\nexport const createProxy = < T extends object >(\n\tnamespace: string,\n\tobj: T,\n\thandlers: ProxyHandler< T >\n): T => {\n\tif ( ! shouldProxy( obj ) ) {\n\t\tthrow Error( 'This object cannot be proxified.' );\n\t}\n\tif ( ! objToProxy.has( obj ) ) {\n\t\tconst proxy = new Proxy( obj, handlers );\n\t\tobjToProxy.set( obj, proxy );\n\t\tproxyToObj.set( proxy, obj );\n\t\tproxyToNs.set( proxy, namespace );\n\t}\n\treturn objToProxy.get( obj ) as T;\n};\n\n/**\n * Returns the proxy for the given object. If there is no associated proxy, the\n * function returns `undefined`.\n *\n * @param obj Object from which to know the proxy.\n * @return Associated proxy or `undefined`.\n */\nexport const getProxyFromObject = < T extends object >(\n\tobj: T\n): T | undefined => objToProxy.get( obj ) as T;\n\n/**\n * Gets the namespace associated with the given proxy.\n *\n * Proxies have a namespace assigned upon creation. See {@link createProxy}.\n *\n * @param proxy Proxy.\n * @return Namespace.\n */\nexport const getNamespaceFromProxy = ( proxy: object ): string =>\n\tproxyToNs.get( proxy )!;\n\n/**\n * Checks if a given object can be proxied.\n *\n * @param candidate Object to know whether it can be proxied.\n * @return True if the passed instance can be proxied.\n */\nexport const shouldProxy = (\n\tcandidate: any\n): candidate is Object | Array< unknown > => {\n\tif ( typeof candidate !== 'object' || candidate === null ) {\n\t\treturn false;\n\t}\n\treturn (\n\t\t! proxyToNs.has( candidate ) && supported.has( candidate.constructor )\n\t);\n};\n\n/**\n * Returns the target object for the passed proxy. If the passed object is not a registered proxy, the\n * function returns `undefined`.\n *\n * @param proxy Proxy from which to know the target.\n * @return The target object or `undefined`.\n */\nexport const getObjectFromProxy = < T extends object >(\n\tproxy: T\n): T | undefined => proxyToObj.get( proxy ) as T;\n","const namespaceStack: string[] = [];\n\nexport const getNamespace = () => namespaceStack.slice( -1 )[ 0 ];\n\nexport const setNamespace = ( namespace: string ) => {\n\tnamespaceStack.push( namespace );\n};\nexport const resetNamespace = () => {\n\tnamespaceStack.pop();\n};\n","/**\n * External dependencies\n */\nimport type { h as createElement, RefObject } from 'preact';\n\n/**\n * Internal dependencies\n */\nimport { getNamespace } from './namespaces';\nimport type { Evaluate } from './hooks';\n\nexport interface Scope {\n\tevaluate: Evaluate;\n\tcontext: object;\n\tref: RefObject< HTMLElement >;\n\tattributes: createElement.JSX.HTMLAttributes;\n}\n\n// Store stacks for the current scope and the default namespaces and export APIs\n// to interact with them.\nconst scopeStack: Scope[] = [];\n\nexport const getScope = () => scopeStack.slice( -1 )[ 0 ];\n\nexport const setScope = ( scope: Scope ) => {\n\tscopeStack.push( scope );\n};\nexport const resetScope = () => {\n\tscopeStack.pop();\n};\n\n// Wrap the element props to prevent modifications.\nconst immutableMap = new WeakMap();\nconst immutableError = () => {\n\tthrow new Error(\n\t\t'Please use `data-wp-bind` to modify the attributes of an element.'\n\t);\n};\nconst immutableHandlers: ProxyHandler< object > = {\n\tget( target, key, receiver ) {\n\t\tconst value = Reflect.get( target, key, receiver );\n\t\treturn !! value && typeof value === 'object'\n\t\t\t? deepImmutable( value )\n\t\t\t: value;\n\t},\n\tset: immutableError,\n\tdeleteProperty: immutableError,\n};\nconst deepImmutable = < T extends object = {} >( target: T ): T => {\n\tif ( ! immutableMap.has( target ) ) {\n\t\timmutableMap.set( target, new Proxy( target, immutableHandlers ) );\n\t}\n\treturn immutableMap.get( target );\n};\n\n/**\n * Retrieves the context inherited by the element evaluating a function from the\n * store. The returned value depends on the element and the namespace where the\n * function calling `getContext()` exists.\n *\n * @param namespace Store namespace. By default, the namespace where the calling\n * function exists is used.\n * @return The context content.\n */\nexport const getContext = < T extends object >( namespace?: string ): T => {\n\tconst scope = getScope();\n\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\tif ( ! scope ) {\n\t\t\tthrow Error(\n\t\t\t\t'Cannot call `getContext()` when there is no scope. If you are using an async function, please consider using a generator instead. If you are using some sort of async callbacks, like `setTimeout`, please wrap the callback with `withScope(callback)`.'\n\t\t\t);\n\t\t}\n\t}\n\treturn scope.context[ namespace || getNamespace() ];\n};\n\n/**\n * Retrieves a representation of the element where a function from the store\n * is being evalutated. Such representation is read-only, and contains a\n * reference to the DOM element, its props and a local reactive state.\n *\n * @return Element representation.\n */\nexport const getElement = () => {\n\tconst scope = getScope();\n\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\tif ( ! scope ) {\n\t\t\tthrow Error(\n\t\t\t\t'Cannot call `getElement()` when there is no scope. If you are using an async function, please consider using a generator instead. If you are using some sort of async callbacks, like `setTimeout`, please wrap the callback with `withScope(callback)`.'\n\t\t\t);\n\t\t}\n\t}\n\tconst { ref, attributes } = scope;\n\treturn Object.freeze( {\n\t\tref: ref.current,\n\t\tattributes: deepImmutable( attributes ),\n\t} );\n};\n","/**\n * External dependencies\n */\nimport {\n\tuseMemo as _useMemo,\n\tuseCallback as _useCallback,\n\tuseEffect as _useEffect,\n\tuseLayoutEffect as _useLayoutEffect,\n\ttype EffectCallback,\n\ttype Inputs,\n} from 'preact/hooks';\nimport { effect } from '@preact/signals';\n\n/**\n * Internal dependencies\n */\nimport { getScope, setScope, resetScope } from './scopes';\nimport { getNamespace, setNamespace, resetNamespace } from './namespaces';\n\ninterface Flusher {\n\treadonly flush: () => void;\n\treadonly dispose: () => void;\n}\n\n/**\n * Executes a callback function after the next frame is rendered.\n *\n * @param callback The callback function to be executed.\n * @return A promise that resolves after the callback function is executed.\n */\nconst afterNextFrame = ( callback: () => void ) => {\n\treturn new Promise< void >( ( resolve ) => {\n\t\tconst done = () => {\n\t\t\tclearTimeout( timeout );\n\t\t\twindow.cancelAnimationFrame( raf );\n\t\t\tsetTimeout( () => {\n\t\t\t\tcallback();\n\t\t\t\tresolve();\n\t\t\t} );\n\t\t};\n\t\tconst timeout = setTimeout( done, 100 );\n\t\tconst raf = window.requestAnimationFrame( done );\n\t} );\n};\n\n/**\n * Returns a promise that resolves after yielding to main.\n *\n * @return Promise\n */\nexport const splitTask = () => {\n\treturn new Promise( ( resolve ) => {\n\t\t// TODO: Use scheduler.yield() when available.\n\t\tsetTimeout( resolve, 0 );\n\t} );\n};\n\n/**\n * Creates a Flusher object that can be used to flush computed values and notify listeners.\n *\n * Using the mangled properties:\n * this.c: this._callback\n * this.x: this._compute\n * https://github.com/preactjs/signals/blob/main/mangle.json\n *\n * @param compute The function that computes the value to be flushed.\n * @param notify The function that notifies listeners when the value is flushed.\n * @return The Flusher object with `flush` and `dispose` properties.\n */\nfunction createFlusher( compute: () => unknown, notify: () => void ): Flusher {\n\tlet flush: () => void = () => undefined;\n\tconst dispose = effect( function ( this: any ) {\n\t\tflush = this.c.bind( this );\n\t\tthis.x = compute;\n\t\tthis.c = notify;\n\t\treturn compute();\n\t} );\n\treturn { flush, dispose } as const;\n}\n\n/**\n * Custom hook that executes a callback function whenever a signal is triggered.\n * Version of `useSignalEffect` with a `useEffect`-like execution. This hook\n * implementation comes from this PR, but we added short-cirtuiting to avoid\n * infinite loops: https://github.com/preactjs/signals/pull/290\n *\n * @param callback The callback function to be executed.\n */\nexport function useSignalEffect( callback: () => unknown ) {\n\t_useEffect( () => {\n\t\tlet eff: Flusher | null = null;\n\t\tlet isExecuting = false;\n\n\t\tconst notify = async () => {\n\t\t\tif ( eff && ! isExecuting ) {\n\t\t\t\tisExecuting = true;\n\t\t\t\tawait afterNextFrame( eff.flush );\n\t\t\t\tisExecuting = false;\n\t\t\t}\n\t\t};\n\n\t\teff = createFlusher( callback, notify );\n\t\treturn eff.dispose;\n\t}, [] );\n}\n\n/**\n * Returns the passed function wrapped with the current scope so it is\n * accessible whenever the function runs. This is primarily to make the scope\n * available inside hook callbacks.\n *\n * Asyncronous functions should use generators that yield promises instead of awaiting them.\n * See the documentation for details: https://developer.wordpress.org/block-editor/reference-guides/packages/packages-interactivity/packages-interactivity-api-reference/#the-store\n *\n * @param func The passed function.\n * @return The wrapped function.\n */\nexport function withScope<\n\tFunc extends ( ...args: any[] ) => Generator< any, any >,\n>(\n\tfunc: Func\n): (\n\t...args: Parameters< Func >\n) => ReturnType< Func > extends Generator< any, infer Return >\n\t? Promise< Return >\n\t: never;\nexport function withScope< Func extends Function >( func: Func ): Func;\nexport function withScope( func: ( ...args: unknown[] ) => unknown ) {\n\tconst scope = getScope();\n\tconst ns = getNamespace();\n\tif ( func?.constructor?.name === 'GeneratorFunction' ) {\n\t\treturn async ( ...args: Parameters< typeof func > ) => {\n\t\t\tconst gen = func( ...args ) as Generator;\n\t\t\tlet value: any;\n\t\t\tlet it: any;\n\t\t\twhile ( true ) {\n\t\t\t\tsetNamespace( ns );\n\t\t\t\tsetScope( scope );\n\t\t\t\ttry {\n\t\t\t\t\tit = gen.next( value );\n\t\t\t\t} finally {\n\t\t\t\t\tresetScope();\n\t\t\t\t\tresetNamespace();\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvalue = await it.value;\n\t\t\t\t} catch ( e ) {\n\t\t\t\t\tsetNamespace( ns );\n\t\t\t\t\tsetScope( scope );\n\t\t\t\t\tgen.throw( e );\n\t\t\t\t} finally {\n\t\t\t\t\tresetScope();\n\t\t\t\t\tresetNamespace();\n\t\t\t\t}\n\n\t\t\t\tif ( it.done ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn value;\n\t\t};\n\t}\n\treturn ( ...args: Parameters< typeof func > ) => {\n\t\tsetNamespace( ns );\n\t\tsetScope( scope );\n\t\ttry {\n\t\t\treturn func( ...args );\n\t\t} finally {\n\t\t\tresetNamespace();\n\t\t\tresetScope();\n\t\t}\n\t};\n}\n\n/**\n * Accepts a function that contains imperative code which runs whenever any of\n * the accessed _reactive_ properties (e.g., values from the global state or the\n * context) is modified.\n *\n * This hook makes the element's scope available so functions like\n * `getElement()` and `getContext()` can be used inside the passed callback.\n *\n * @param callback The hook callback.\n */\nexport function useWatch( callback: () => unknown ) {\n\tuseSignalEffect( withScope( callback ) );\n}\n\n/**\n * Accepts a function that contains imperative code which runs only after the\n * element's first render, mainly useful for intialization logic.\n *\n * This hook makes the element's scope available so functions like\n * `getElement()` and `getContext()` can be used inside the passed callback.\n *\n * @param callback The hook callback.\n */\nexport function useInit( callback: EffectCallback ) {\n\t_useEffect( withScope( callback ), [] );\n}\n\n/**\n * Accepts a function that contains imperative, possibly effectful code. The\n * effects run after browser paint, without blocking it.\n *\n * This hook is equivalent to Preact's `useEffect` and makes the element's scope\n * available so functions like `getElement()` and `getContext()` can be used\n * inside the passed callback.\n *\n * @param callback Imperative function that can return a cleanup\n * function.\n * @param inputs If present, effect will only activate if the\n * values in the list change (using `===`).\n */\nexport function useEffect( callback: EffectCallback, inputs: Inputs ) {\n\t_useEffect( withScope( callback ), inputs );\n}\n\n/**\n * Accepts a function that contains imperative, possibly effectful code. Use\n * this to read layout from the DOM and synchronously re-render.\n *\n * This hook is equivalent to Preact's `useLayoutEffect` and makes the element's\n * scope available so functions like `getElement()` and `getContext()` can be\n * used inside the passed callback.\n *\n * @param callback Imperative function that can return a cleanup\n * function.\n * @param inputs If present, effect will only activate if the\n * values in the list change (using `===`).\n */\nexport function useLayoutEffect( callback: EffectCallback, inputs: Inputs ) {\n\t_useLayoutEffect( withScope( callback ), inputs );\n}\n\n/**\n * Returns a memoized version of the callback that only changes if one of the\n * inputs has changed (using `===`).\n *\n * This hook is equivalent to Preact's `useCallback` and makes the element's\n * scope available so functions like `getElement()` and `getContext()` can be\n * used inside the passed callback.\n *\n * @param callback Callback function.\n * @param inputs If present, the callback will only be updated if the\n * values in the list change (using `===`).\n *\n * @return The callback function.\n */\nexport function useCallback< T extends Function >(\n\tcallback: T,\n\tinputs: Inputs\n): T {\n\treturn _useCallback< T >( withScope( callback ), inputs );\n}\n\n/**\n * Pass a factory function and an array of inputs. `useMemo` will only recompute\n * the memoized value when one of the inputs has changed.\n *\n * This hook is equivalent to Preact's `useMemo` and makes the element's scope\n * available so functions like `getElement()` and `getContext()` can be used\n * inside the passed factory function.\n *\n * @param factory Factory function that returns that value for memoization.\n * @param inputs If present, the factory will only be run to recompute if\n * the values in the list change (using `===`).\n *\n * @return The memoized value.\n */\nexport function useMemo< T >( factory: () => T, inputs: Inputs ): T {\n\treturn _useMemo( withScope( factory ), inputs );\n}\n\n/**\n * Creates a root fragment by replacing a node or an array of nodes in a parent element.\n * For wrapperless hydration.\n * See https://gist.github.com/developit/f4c67a2ede71dc2fab7f357f39cff28c\n *\n * @param parent The parent element where the nodes will be replaced.\n * @param replaceNode The node or array of nodes to replace in the parent element.\n * @return The created root fragment.\n */\nexport const createRootFragment = (\n\tparent: Element,\n\treplaceNode: Node | Node[]\n) => {\n\treplaceNode = ( [] as Node[] ).concat( replaceNode );\n\tconst sibling = replaceNode[ replaceNode.length - 1 ].nextSibling;\n\tfunction insert( child: any, root: any ) {\n\t\tparent.insertBefore( child, root || sibling );\n\t}\n\treturn ( ( parent as any ).__k = {\n\t\tnodeType: 1,\n\t\tparentNode: parent,\n\t\tfirstChild: replaceNode[ 0 ],\n\t\tchildNodes: replaceNode,\n\t\tinsertBefore: insert,\n\t\tappendChild: insert,\n\t\tremoveChild( c: Node ) {\n\t\t\tparent.removeChild( c );\n\t\t},\n\t} );\n};\n\n/**\n * Transforms a kebab-case string to camelCase.\n *\n * @param str The kebab-case string to transform to camelCase.\n * @return The transformed camelCase string.\n */\nexport function kebabToCamelCase( str: string ): string {\n\treturn str\n\t\t.replace( /^-+|-+$/g, '' )\n\t\t.toLowerCase()\n\t\t.replace( /-([a-z])/g, function ( _match, group1: string ) {\n\t\t\treturn group1.toUpperCase();\n\t\t} );\n}\n\nconst logged: Set< string > = new Set();\n\n/**\n * Shows a warning with `message` if environment is not `production`.\n *\n * Based on the `@wordpress/warning` package.\n *\n * @param message Message to show in the warning.\n */\nexport const warn = ( message: string ): void => {\n\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\tif ( logged.has( message ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// eslint-disable-next-line no-console\n\t\tconsole.warn( message );\n\n\t\t// Throwing an error and catching it immediately to improve debugging\n\t\t// A consumer can use 'pause on caught exceptions'\n\t\ttry {\n\t\t\tthrow Error( message );\n\t\t} catch ( e ) {\n\t\t\t// Do nothing.\n\t\t}\n\t\tlogged.add( message );\n\t}\n};\n\n/**\n * Checks if the passed `candidate` is a plain object with just the `Object`\n * prototype.\n *\n * @param candidate The item to check.\n * @return Whether `candidate` is a plain object.\n */\nexport const isPlainObject = (\n\tcandidate: unknown\n): candidate is Record< string, unknown > =>\n\tBoolean(\n\t\tcandidate &&\n\t\t\ttypeof candidate === 'object' &&\n\t\t\tcandidate.constructor === Object\n\t);\n","/**\n * External dependencies\n */\nimport {\n\tcomputed,\n\tsignal,\n\tbatch,\n\ttype Signal,\n\ttype ReadonlySignal,\n} from '@preact/signals';\n\n/**\n * Internal dependencies\n */\nimport { getNamespaceFromProxy } from './registry';\nimport { getScope } from '../scopes';\nimport { setNamespace, resetNamespace } from '../namespaces';\nimport { withScope } from '../utils';\n\n/**\n * Identifier for property computeds not associated to any scope.\n */\nconst NO_SCOPE = {};\n\n/**\n * Structure that manages reactivity for a property in a state object. It uses\n * signals to keep track of property value or getter modifications.\n */\nexport class PropSignal {\n\t/**\n\t * Proxy that holds the property this PropSignal is associated with.\n\t */\n\tprivate owner: object;\n\n\t/**\n\t * Relation of computeds by scope. These computeds are read-only signals\n\t * that depend on whether the property is a value or a getter and,\n\t * therefore, can return different values depending on the scope in which\n\t * the getter is accessed.\n\t */\n\tprivate computedsByScope: WeakMap< WeakKey, ReadonlySignal >;\n\n\t/**\n\t * Signal with the value assigned to the related property.\n\t */\n\tprivate valueSignal?: Signal;\n\n\t/**\n\t * Signal with the getter assigned to the related property.\n\t */\n\tprivate getterSignal?: Signal< ( () => any ) | undefined >;\n\n\t/**\n\t * Structure that manages reactivity for a property in a state object, using\n\t * signals to keep track of property value or getter modifications.\n\t *\n\t * @param owner Proxy that holds the property this instance is associated\n\t * with.\n\t */\n\tconstructor( owner: object ) {\n\t\tthis.owner = owner;\n\t\tthis.computedsByScope = new WeakMap();\n\t}\n\n\t/**\n\t * Changes the internal value. If a getter was set before, it is set to\n\t * `undefined`.\n\t *\n\t * @param value New value.\n\t */\n\tpublic setValue( value: unknown ) {\n\t\tthis.update( { value } );\n\t}\n\n\t/**\n\t * Changes the internal getter. If a value was set before, it is set to\n\t * `undefined`.\n\t *\n\t * @param getter New getter.\n\t */\n\tpublic setGetter( getter: () => any ) {\n\t\tthis.update( { get: getter } );\n\t}\n\n\t/**\n\t * Returns the computed that holds the result of evaluating the prop in the\n\t * current scope.\n\t *\n\t * These computeds are read-only signals that depend on whether the property\n\t * is a value or a getter and, therefore, can return different values\n\t * depending on the scope in which the getter is accessed.\n\t *\n\t * @return Computed that depends on the scope.\n\t */\n\tpublic getComputed(): ReadonlySignal {\n\t\tconst scope = getScope() || NO_SCOPE;\n\n\t\tif ( ! this.valueSignal && ! this.getterSignal ) {\n\t\t\tthis.update( {} );\n\t\t}\n\n\t\tif ( ! this.computedsByScope.has( scope ) ) {\n\t\t\tconst callback = () => {\n\t\t\t\tconst getter = this.getterSignal?.value;\n\t\t\t\treturn getter\n\t\t\t\t\t? getter.call( this.owner )\n\t\t\t\t\t: this.valueSignal?.value;\n\t\t\t};\n\n\t\t\tsetNamespace( getNamespaceFromProxy( this.owner ) );\n\t\t\tthis.computedsByScope.set(\n\t\t\t\tscope,\n\t\t\t\tcomputed( withScope( callback ) )\n\t\t\t);\n\t\t\tresetNamespace();\n\t\t}\n\n\t\treturn this.computedsByScope.get( scope )!;\n\t}\n\n\t/**\n\t * Update the internal signals for the value and the getter of the\n\t * corresponding prop.\n\t *\n\t * @param param0\n\t * @param param0.get New getter.\n\t * @param param0.value New value.\n\t */\n\tprivate update( { get, value }: { get?: () => any; value?: unknown } ) {\n\t\tif ( ! this.valueSignal ) {\n\t\t\tthis.valueSignal = signal( value );\n\t\t\tthis.getterSignal = signal( get );\n\t\t} else if (\n\t\t\tvalue !== this.valueSignal.peek() ||\n\t\t\tget !== this.getterSignal!.peek()\n\t\t) {\n\t\t\tbatch( () => {\n\t\t\t\tthis.valueSignal!.value = value;\n\t\t\t\tthis.getterSignal!.value = get;\n\t\t\t} );\n\t\t}\n\t}\n}\n","/**\n * External dependencies\n */\nimport { batch, signal, type Signal } from '@preact/signals';\n\n/**\n * Internal dependencies\n */\nimport {\n\tcreateProxy,\n\tgetProxyFromObject,\n\tgetNamespaceFromProxy,\n\tshouldProxy,\n\tgetObjectFromProxy,\n} from './registry';\nimport { PropSignal } from './signals';\nimport { setNamespace, resetNamespace } from '../namespaces';\nimport { isPlainObject } from '../utils';\n\n/**\n * Set of built-in symbols.\n */\nconst wellKnownSymbols = new Set(\n\tObject.getOwnPropertyNames( Symbol )\n\t\t.map( ( key ) => Symbol[ key ] )\n\t\t.filter( ( value ) => typeof value === 'symbol' )\n);\n\n/**\n * Relates each proxy with a map of {@link PropSignal} instances, representing\n * the proxy's accessed properties.\n */\nconst proxyToProps: WeakMap<\n\tobject,\n\tMap< string | symbol, PropSignal >\n> = new WeakMap();\n\n/**\n * Checks wether a {@link PropSignal | `PropSignal`} instance exists for the\n * given property in the passed proxy.\n *\n * @param proxy Proxy of a state object or array.\n * @param key The property key.\n * @return `true` when it exists; false otherwise.\n */\nexport const hasPropSignal = ( proxy: object, key: string ) =>\n\tproxyToProps.has( proxy ) && proxyToProps.get( proxy )!.has( key );\n\n/**\n * Returns the {@link PropSignal | `PropSignal`} instance associated with the\n * specified prop in the passed proxy.\n *\n * The `PropSignal` instance is generated if it doesn't exist yet, using the\n * `initial` parameter to initialize the internal signals.\n *\n * @param proxy Proxy of a state object or array.\n * @param key The property key.\n * @param initial Initial data for the `PropSignal` instance.\n * @return The `PropSignal` instance.\n */\nconst getPropSignal = (\n\tproxy: object,\n\tkey: string | number | symbol,\n\tinitial?: PropertyDescriptor\n) => {\n\tif ( ! proxyToProps.has( proxy ) ) {\n\t\tproxyToProps.set( proxy, new Map() );\n\t}\n\tkey = typeof key === 'number' ? `${ key }` : key;\n\tconst props = proxyToProps.get( proxy )!;\n\tif ( ! props.has( key ) ) {\n\t\tconst ns = getNamespaceFromProxy( proxy );\n\t\tconst prop = new PropSignal( proxy );\n\t\tprops.set( key, prop );\n\t\tif ( initial ) {\n\t\t\tconst { get, value } = initial;\n\t\t\tif ( get ) {\n\t\t\t\tprop.setGetter( get );\n\t\t\t} else {\n\t\t\t\tprop.setValue(\n\t\t\t\t\tshouldProxy( value ) ? proxifyState( ns, value ) : value\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\treturn props.get( key )!;\n};\n\n/**\n * Relates each proxied object (i.e., the original object) with a signal that\n * tracks changes in the number of properties.\n */\nconst objToIterable = new WeakMap< object, Signal< number > >();\n\n/**\n * When this flag is `true`, it avoids any signal subscription, overriding state\n * props' \"reactive\" behavior.\n */\nlet peeking = false;\n\n/**\n * Handlers for reactive objects and arrays in the state.\n */\nconst stateHandlers: ProxyHandler< object > = {\n\tget( target: object, key: string | symbol, receiver: object ): any {\n\t\t/*\n\t\t * The property should not be reactive for the following cases:\n\t\t * 1. While using the `peek` function to read the property.\n\t\t * 2. The property exists but comes from the Object or Array prototypes.\n\t\t * 3. The property key is a known symbol.\n\t\t */\n\t\tif (\n\t\t\tpeeking ||\n\t\t\t( ! target.hasOwnProperty( key ) && key in target ) ||\n\t\t\t( typeof key === 'symbol' && wellKnownSymbols.has( key ) )\n\t\t) {\n\t\t\treturn Reflect.get( target, key, receiver );\n\t\t}\n\n\t\t// At this point, the property should be reactive.\n\t\tconst desc = Object.getOwnPropertyDescriptor( target, key );\n\t\tconst prop = getPropSignal( receiver, key, desc );\n\t\tconst result = prop.getComputed().value;\n\n\t\t/*\n\t\t * Check if the property is a synchronous function. If it is, set the\n\t\t * default namespace. Synchronous functions always run in the proper scope,\n\t\t * which is set by the Directives component.\n\t\t */\n\t\tif ( typeof result === 'function' ) {\n\t\t\tconst ns = getNamespaceFromProxy( receiver );\n\t\t\treturn ( ...args: unknown[] ) => {\n\t\t\t\tsetNamespace( ns );\n\t\t\t\ttry {\n\t\t\t\t\treturn result.call( receiver, ...args );\n\t\t\t\t} finally {\n\t\t\t\t\tresetNamespace();\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\treturn result;\n\t},\n\n\tset(\n\t\ttarget: object,\n\t\tkey: string,\n\t\tvalue: unknown,\n\t\treceiver: object\n\t): boolean {\n\t\tsetNamespace( getNamespaceFromProxy( receiver ) );\n\t\ttry {\n\t\t\treturn Reflect.set( target, key, value, receiver );\n\t\t} finally {\n\t\t\tresetNamespace();\n\t\t}\n\t},\n\n\tdefineProperty(\n\t\ttarget: object,\n\t\tkey: string,\n\t\tdesc: PropertyDescriptor\n\t): boolean {\n\t\tconst isNew = ! ( key in target );\n\t\tconst result = Reflect.defineProperty( target, key, desc );\n\n\t\tif ( result ) {\n\t\t\tconst receiver = getProxyFromObject( target )!;\n\t\t\tconst prop = getPropSignal( receiver, key );\n\t\t\tconst { get, value } = desc;\n\t\t\tif ( get ) {\n\t\t\t\tprop.setGetter( get );\n\t\t\t} else {\n\t\t\t\tconst ns = getNamespaceFromProxy( receiver );\n\t\t\t\tprop.setValue(\n\t\t\t\t\tshouldProxy( value ) ? proxifyState( ns, value ) : value\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif ( isNew && objToIterable.has( target ) ) {\n\t\t\t\tobjToIterable.get( target )!.value++;\n\t\t\t}\n\n\t\t\t/*\n\t\t\t * Modify the `length` property value only if the related\n\t\t\t * `PropSignal` exists, which means that there are subscriptions to\n\t\t\t * this property.\n\t\t\t */\n\t\t\tif (\n\t\t\t\tArray.isArray( target ) &&\n\t\t\t\tproxyToProps.get( receiver )?.has( 'length' )\n\t\t\t) {\n\t\t\t\tconst length = getPropSignal( receiver, 'length' );\n\t\t\t\tlength.setValue( target.length );\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t},\n\n\tdeleteProperty( target: object, key: string ): boolean {\n\t\tconst result = Reflect.deleteProperty( target, key );\n\n\t\tif ( result ) {\n\t\t\tconst prop = getPropSignal( getProxyFromObject( target )!, key );\n\t\t\tprop.setValue( undefined );\n\n\t\t\tif ( objToIterable.has( target ) ) {\n\t\t\t\tobjToIterable.get( target )!.value++;\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t},\n\n\townKeys( target: object ): ( string | symbol )[] {\n\t\tif ( ! objToIterable.has( target ) ) {\n\t\t\tobjToIterable.set( target, signal( 0 ) );\n\t\t}\n\t\t/*\n\t\t *This subscribes to the signal while preventing the minifier from\n\t\t * deleting this line in production.\n\t\t */\n\t\t( objToIterable as any )._ = objToIterable.get( target )!.value;\n\t\treturn Reflect.ownKeys( target );\n\t},\n};\n\n/**\n * Returns the proxy associated with the given state object, creating it if it\n * does not exist.\n *\n * @param namespace The namespace that will be associated to this proxy.\n * @param obj The object to proxify.\n *\n * @throws Error if the object cannot be proxified. Use {@link shouldProxy} to\n * check if a proxy can be created for a specific object.\n *\n * @return The associated proxy.\n */\nexport const proxifyState = < T extends object >(\n\tnamespace: string,\n\tobj: T\n): T => createProxy( namespace, obj, stateHandlers ) as T;\n\n/**\n * Reads the value of the specified property without subscribing to it.\n *\n * @param obj The object to read the property from.\n * @param key The property key.\n * @return The property value.\n */\nexport const peek = < T extends object, K extends keyof T >(\n\tobj: T,\n\tkey: K\n): T[ K ] => {\n\tpeeking = true;\n\ttry {\n\t\treturn obj[ key ];\n\t} finally {\n\t\tpeeking = false;\n\t}\n};\n\n/**\n * Internal recursive implementation for {@link deepMerge | `deepMerge`}.\n *\n * @param target The target object.\n * @param source The source object containing new values and props.\n * @param override Whether existing props should be overwritten or not (`true`\n * by default).\n */\nconst deepMergeRecursive = (\n\ttarget: any,\n\tsource: any,\n\toverride: boolean = true\n) => {\n\tif ( isPlainObject( target ) && isPlainObject( source ) ) {\n\t\tfor ( const key in source ) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor( source, key );\n\t\t\tif (\n\t\t\t\ttypeof desc?.get === 'function' ||\n\t\t\t\ttypeof desc?.set === 'function'\n\t\t\t) {\n\t\t\t\tif ( override || ! ( key in target ) ) {\n\t\t\t\t\tObject.defineProperty( target, key, {\n\t\t\t\t\t\t...desc,\n\t\t\t\t\t\tconfigurable: true,\n\t\t\t\t\t\tenumerable: true,\n\t\t\t\t\t} );\n\n\t\t\t\t\tconst proxy = getProxyFromObject( target );\n\t\t\t\t\tif ( desc?.get && proxy && hasPropSignal( proxy, key ) ) {\n\t\t\t\t\t\tconst propSignal = getPropSignal( proxy, key );\n\t\t\t\t\t\tpropSignal.setGetter( desc.get );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if ( isPlainObject( source[ key ] ) ) {\n\t\t\t\tif ( ! ( key in target ) ) {\n\t\t\t\t\ttarget[ key ] = {};\n\t\t\t\t}\n\n\t\t\t\tdeepMergeRecursive( target[ key ], source[ key ], override );\n\t\t\t} else if ( override || ! ( key in target ) ) {\n\t\t\t\tObject.defineProperty( target, key, desc! );\n\n\t\t\t\tconst proxy = getProxyFromObject( target );\n\t\t\t\tif ( desc?.value && proxy && hasPropSignal( proxy, key ) ) {\n\t\t\t\t\tconst propSignal = getPropSignal( proxy, key );\n\t\t\t\t\tpropSignal.setValue( desc.value );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n/**\n * Recursively update prop values inside the passed `target` and nested plain\n * objects, using the values present in `source`. References to plain objects\n * are kept, only updating props containing primitives or arrays. Arrays are\n * replaced instead of merged or concatenated.\n *\n * If the `override` parameter is set to `false`, then all values in `target`\n * are preserved, and only new properties from `source` are added.\n *\n * @param target The target object.\n * @param source The source object containing new values and props.\n * @param override Whether existing props should be overwritten or not (`true`\n * by default).\n */\nexport const deepMerge = (\n\ttarget: any,\n\tsource: any,\n\toverride: boolean = true\n) =>\n\tbatch( () =>\n\t\tdeepMergeRecursive(\n\t\t\tgetObjectFromProxy( target ) || target,\n\t\t\tsource,\n\t\t\toverride\n\t\t)\n\t);\n","/**\n * Internal dependencies\n */\nimport { createProxy, getNamespaceFromProxy, shouldProxy } from './registry';\n/**\n * External dependencies\n */\nimport { setNamespace, resetNamespace } from '../namespaces';\nimport { withScope, isPlainObject } from '../utils';\n\n/**\n * Identifies the store proxies handling the root objects of each store.\n */\nconst storeRoots = new WeakSet();\n\n/**\n * Handlers for store proxies.\n */\nconst storeHandlers: ProxyHandler< object > = {\n\tget: ( target: any, key: string | symbol, receiver: any ) => {\n\t\tconst result = Reflect.get( target, key );\n\t\tconst ns = getNamespaceFromProxy( receiver );\n\n\t\t/*\n\t\t * Check if the proxy is the store root and no key with that name exist. In\n\t\t * that case, return an empty object for the requested key.\n\t\t */\n\t\tif ( typeof result === 'undefined' && storeRoots.has( receiver ) ) {\n\t\t\tconst obj = {};\n\t\t\tReflect.set( target, key, obj );\n\t\t\treturn proxifyStore( ns, obj, false );\n\t\t}\n\n\t\t/*\n\t\t * Check if the property is a function. If it is, add the store\n\t\t * namespace to the stack and wrap the function with the current scope.\n\t\t * The `withScope` util handles both synchronous functions and generator\n\t\t * functions.\n\t\t */\n\t\tif ( typeof result === 'function' ) {\n\t\t\tsetNamespace( ns );\n\t\t\tconst scoped = withScope( result );\n\t\t\tresetNamespace();\n\t\t\treturn scoped;\n\t\t}\n\n\t\t// Check if the property is an object. If it is, proxyify it.\n\t\tif ( isPlainObject( result ) && shouldProxy( result ) ) {\n\t\t\treturn proxifyStore( ns, result, false );\n\t\t}\n\n\t\treturn result;\n\t},\n};\n\n/**\n * Returns the proxy associated with the given store object, creating it if it\n * does not exist.\n *\n * @param namespace The namespace that will be associated to this proxy.\n * @param obj The object to proxify.\n *\n * @param isRoot Whether the passed object is the store root object.\n * @throws Error if the object cannot be proxified. Use {@link shouldProxy} to\n * check if a proxy can be created for a specific object.\n *\n * @return The associated proxy.\n */\nexport const proxifyStore = < T extends object >(\n\tnamespace: string,\n\tobj: T,\n\tisRoot = true\n): T => {\n\tconst proxy = createProxy( namespace, obj, storeHandlers );\n\tif ( proxy && isRoot ) {\n\t\tstoreRoots.add( proxy );\n\t}\n\treturn proxy as T;\n};\n","/**\n * Internal dependencies\n */\nimport { proxifyState, proxifyStore, deepMerge } from './proxies';\n/**\n * External dependencies\n */\nimport { getNamespace } from './namespaces';\nimport { isPlainObject } from './utils';\n\nexport const stores = new Map();\nconst rawStores = new Map();\nconst storeLocks = new Map();\nconst storeConfigs = new Map();\n\n/**\n * Get the defined config for the store with the passed namespace.\n *\n * @param namespace Store's namespace from which to retrieve the config.\n * @return Defined config for the given namespace.\n */\nexport const getConfig = ( namespace?: string ) =>\n\tstoreConfigs.get( namespace || getNamespace() ) || {};\n\ninterface StoreOptions {\n\t/**\n\t * Property to block/unblock private store namespaces.\n\t *\n\t * If the passed value is `true`, it blocks the given namespace, making it\n\t * accessible only trough the returned variables of the `store()` call. In\n\t * the case a lock string is passed, it also blocks the namespace, but can\n\t * be unblocked for other `store()` calls using the same lock string.\n\t *\n\t * @example\n\t * ```\n\t * // The store can only be accessed where the `state` const can.\n\t * const { state } = store( 'myblock/private', { ... }, { lock: true } );\n\t * ```\n\t *\n\t * @example\n\t * ```\n\t * // Other modules knowing `SECRET_LOCK_STRING` can access the namespace.\n\t * const { state } = store(\n\t * 'myblock/private',\n\t * { ... },\n\t * { lock: 'SECRET_LOCK_STRING' }\n\t * );\n\t * ```\n\t */\n\tlock?: boolean | string;\n}\n\nexport const universalUnlock =\n\t'I acknowledge that using a private store means my plugin will inevitably break on the next store release.';\n\n/**\n * Extends the Interactivity API global store adding the passed properties to\n * the given namespace. It also returns stable references to the namespace\n * content.\n *\n * These props typically consist of `state`, which is the reactive part of the\n * store ― which means that any directive referencing a state property will be\n * re-rendered anytime it changes ― and function properties like `actions` and\n * `callbacks`, mostly used for event handlers. These props can then be\n * referenced by any directive to make the HTML interactive.\n *\n * @example\n * ```js\n * const { state } = store( 'counter', {\n * state: {\n * value: 0,\n * get double() { return state.value * 2; },\n * },\n * actions: {\n * increment() {\n * state.value += 1;\n * },\n * },\n * } );\n * ```\n *\n * The code from the example above allows blocks to subscribe and interact with\n * the store by using directives in the HTML, e.g.:\n *\n * ```html\n *
\n * \n * 0\n * \n *
\n * ```\n * @param namespace The store namespace to interact with.\n * @param storePart Properties to add to the store namespace.\n * @param options Options for the given namespace.\n *\n * @return A reference to the namespace content.\n */\nexport function store< S extends object = {} >(\n\tnamespace: string,\n\tstorePart?: S,\n\toptions?: StoreOptions\n): S;\n\nexport function store< T extends object >(\n\tnamespace: string,\n\tstorePart?: T,\n\toptions?: StoreOptions\n): T;\n\nexport function store(\n\tnamespace: string,\n\t{ state = {}, ...block }: any = {},\n\t{ lock = false }: StoreOptions = {}\n) {\n\tif ( ! stores.has( namespace ) ) {\n\t\t// Lock the store if the passed lock is different from the universal\n\t\t// unlock. Once the lock is set (either false, true, or a given string),\n\t\t// it cannot change.\n\t\tif ( lock !== universalUnlock ) {\n\t\t\tstoreLocks.set( namespace, lock );\n\t\t}\n\t\tconst rawStore = {\n\t\t\tstate: proxifyState(\n\t\t\t\tnamespace,\n\t\t\t\tisPlainObject( state ) ? state : {}\n\t\t\t),\n\t\t\t...block,\n\t\t};\n\t\tconst proxifiedStore = proxifyStore( namespace, rawStore );\n\t\trawStores.set( namespace, rawStore );\n\t\tstores.set( namespace, proxifiedStore );\n\t} else {\n\t\t// Lock the store if it wasn't locked yet and the passed lock is\n\t\t// different from the universal unlock. If no lock is given, the store\n\t\t// will be public and won't accept any lock from now on.\n\t\tif ( lock !== universalUnlock && ! storeLocks.has( namespace ) ) {\n\t\t\tstoreLocks.set( namespace, lock );\n\t\t} else {\n\t\t\tconst storeLock = storeLocks.get( namespace );\n\t\t\tconst isLockValid =\n\t\t\t\tlock === universalUnlock ||\n\t\t\t\t( lock !== true && lock === storeLock );\n\n\t\t\tif ( ! isLockValid ) {\n\t\t\t\tif ( ! storeLock ) {\n\t\t\t\t\tthrow Error( 'Cannot lock a public store' );\n\t\t\t\t} else {\n\t\t\t\t\tthrow Error(\n\t\t\t\t\t\t'Cannot unlock a private store with an invalid lock code'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst target = rawStores.get( namespace );\n\t\tdeepMerge( target, block );\n\t\tdeepMerge( target.state, state );\n\t}\n\n\treturn stores.get( namespace );\n}\n\nexport const parseServerData = ( dom = document ) => {\n\tconst jsonDataScriptTag =\n\t\t// Preferred Script Module data passing form\n\t\tdom.getElementById(\n\t\t\t'wp-script-module-data-@wordpress/interactivity'\n\t\t) ??\n\t\t// Legacy form\n\t\tdom.getElementById( 'wp-interactivity-data' );\n\tif ( jsonDataScriptTag?.textContent ) {\n\t\ttry {\n\t\t\treturn JSON.parse( jsonDataScriptTag.textContent );\n\t\t} catch {}\n\t}\n\treturn {};\n};\n\nexport const populateServerData = ( data?: {\n\tstate?: Record< string, unknown >;\n\tconfig?: Record< string, unknown >;\n} ) => {\n\tif ( isPlainObject( data?.state ) ) {\n\t\tObject.entries( data!.state ).forEach( ( [ namespace, state ] ) => {\n\t\t\tconst st = store< any >( namespace, {}, { lock: universalUnlock } );\n\t\t\tdeepMerge( st.state, state, false );\n\t\t} );\n\t}\n\tif ( isPlainObject( data?.config ) ) {\n\t\tObject.entries( data!.config ).forEach( ( [ namespace, config ] ) => {\n\t\t\tstoreConfigs.set( namespace, config );\n\t\t} );\n\t}\n};\n\n// Parse and populate the initial state and config.\nconst data = parseServerData();\npopulateServerData( data );\n","// eslint-disable-next-line eslint-comments/disable-enable-pair\n/* eslint-disable react-hooks/exhaustive-deps */\n\n/**\n * External dependencies\n */\nimport {\n\th as createElement,\n\toptions,\n\tcreateContext,\n\tcloneElement,\n\ttype ComponentChildren,\n} from 'preact';\nimport { useRef, useCallback, useContext } from 'preact/hooks';\nimport type { VNode, Context } from 'preact';\n\n/**\n * Internal dependencies\n */\nimport { store, stores, universalUnlock } from './store';\nimport { warn } from './utils';\nimport { getScope, setScope, resetScope, type Scope } from './scopes';\nexport interface DirectiveEntry {\n\tvalue: string | object;\n\tnamespace: string;\n\tsuffix: string;\n}\n\ntype DirectiveEntries = Record< string, DirectiveEntry[] >;\n\ninterface DirectiveArgs {\n\t/**\n\t * Object map with the defined directives of the element being evaluated.\n\t */\n\tdirectives: DirectiveEntries;\n\t/**\n\t * Props present in the current element.\n\t */\n\tprops: { children?: ComponentChildren };\n\t/**\n\t * Virtual node representing the element.\n\t */\n\telement: VNode< {\n\t\tclass?: string;\n\t\tstyle?: string | Record< string, string | number >;\n\t\tcontent?: ComponentChildren;\n\t} >;\n\t/**\n\t * The inherited context.\n\t */\n\tcontext: Context< any >;\n\t/**\n\t * Function that resolves a given path to a value either in the store or the\n\t * context.\n\t */\n\tevaluate: Evaluate;\n}\n\ninterface DirectiveCallback {\n\t( args: DirectiveArgs ): VNode< any > | null | void;\n}\n\ninterface DirectiveOptions {\n\t/**\n\t * Value that specifies the priority to evaluate directives of this type.\n\t * Lower numbers correspond with earlier execution.\n\t *\n\t * @default 10\n\t */\n\tpriority?: number;\n}\n\nexport interface Evaluate {\n\t( entry: DirectiveEntry, ...args: any[] ): any;\n}\n\ninterface GetEvaluate {\n\t( args: { scope: Scope } ): Evaluate;\n}\n\ntype PriorityLevel = string[];\n\ninterface GetPriorityLevels {\n\t( directives: DirectiveEntries ): PriorityLevel[];\n}\n\ninterface DirectivesProps {\n\tdirectives: DirectiveEntries;\n\tpriorityLevels: PriorityLevel[];\n\telement: VNode;\n\toriginalProps: any;\n\tpreviousScope?: Scope;\n}\n\n// Main context.\nconst context = createContext< any >( {} );\n\n// WordPress Directives.\nconst directiveCallbacks: Record< string, DirectiveCallback > = {};\nconst directivePriorities: Record< string, number > = {};\n\n/**\n * Register a new directive type in the Interactivity API runtime.\n *\n * @example\n * ```js\n * directive(\n * 'alert', // Name without the `data-wp-` prefix.\n * ( { directives: { alert }, element, evaluate } ) => {\n * const defaultEntry = alert.find( entry => entry.suffix === 'default' );\n * element.props.onclick = () => { alert( evaluate( defaultEntry ) ); }\n * }\n * )\n * ```\n *\n * The previous code registers a custom directive type for displaying an alert\n * message whenever an element using it is clicked. The message text is obtained\n * from the store under the inherited namespace, using `evaluate`.\n *\n * When the HTML is processed by the Interactivity API, any element containing\n * the `data-wp-alert` directive will have the `onclick` event handler, e.g.,\n *\n * ```html\n *
\n * \n *
\n * ```\n * Note that, in the previous example, the directive callback gets the path\n * value (`state.alert`) from the directive entry with suffix `default`. A\n * custom suffix can also be specified by appending `--` to the directive\n * attribute, followed by the suffix, like in the following HTML snippet:\n *\n * ```html\n *
\n * Click me!\n *
\n * ```\n *\n * This could be an hypothetical implementation of the custom directive used in\n * the snippet above.\n *\n * @example\n * ```js\n * directive(\n * 'color', // Name without prefix and suffix.\n * ( { directives: { color: colors }, ref, evaluate } ) =>\n * colors.forEach( ( color ) => {\n * if ( color.suffix = 'text' ) {\n * ref.style.setProperty(\n * 'color',\n * evaluate( color.text )\n * );\n * }\n * if ( color.suffix = 'background' ) {\n * ref.style.setProperty(\n * 'background-color',\n * evaluate( color.background )\n * );\n * }\n * } );\n * }\n * )\n * ```\n *\n * @param name Directive name, without the `data-wp-` prefix.\n * @param callback Function that runs the directive logic.\n * @param options Options object.\n * @param options.priority Option to control the directive execution order. The\n * lesser, the highest priority. Default is `10`.\n */\nexport const directive = (\n\tname: string,\n\tcallback: DirectiveCallback,\n\t{ priority = 10 }: DirectiveOptions = {}\n) => {\n\tdirectiveCallbacks[ name ] = callback;\n\tdirectivePriorities[ name ] = priority;\n};\n\n// Resolve the path to some property of the store object.\nconst resolve = ( path: string, namespace: string ) => {\n\tif ( ! namespace ) {\n\t\twarn(\n\t\t\t`Namespace missing for \"${ path }\". The value for that path won't be resolved.`\n\t\t);\n\t\treturn;\n\t}\n\tlet resolvedStore = stores.get( namespace );\n\tif ( typeof resolvedStore === 'undefined' ) {\n\t\tresolvedStore = store( namespace, undefined, {\n\t\t\tlock: universalUnlock,\n\t\t} );\n\t}\n\tconst current = {\n\t\t...resolvedStore,\n\t\tcontext: getScope().context[ namespace ],\n\t};\n\ttry {\n\t\t// TODO: Support lazy/dynamically initialized stores\n\t\treturn path.split( '.' ).reduce( ( acc, key ) => acc[ key ], current );\n\t} catch ( e ) {}\n};\n\n// Generate the evaluate function.\nexport const getEvaluate: GetEvaluate =\n\t( { scope } ) =>\n\t( entry, ...args ) => {\n\t\tlet { value: path, namespace } = entry;\n\t\tif ( typeof path !== 'string' ) {\n\t\t\tthrow new Error( 'The `value` prop should be a string path' );\n\t\t}\n\t\t// If path starts with !, remove it and save a flag.\n\t\tconst hasNegationOperator =\n\t\t\tpath[ 0 ] === '!' && !! ( path = path.slice( 1 ) );\n\t\tsetScope( scope );\n\t\tconst value = resolve( path, namespace );\n\t\tconst result = typeof value === 'function' ? value( ...args ) : value;\n\t\tresetScope();\n\t\treturn hasNegationOperator ? ! result : result;\n\t};\n\n// Separate directives by priority. The resulting array contains objects\n// of directives grouped by same priority, and sorted in ascending order.\nconst getPriorityLevels: GetPriorityLevels = ( directives ) => {\n\tconst byPriority = Object.keys( directives ).reduce<\n\t\tRecord< number, string[] >\n\t>( ( obj, name ) => {\n\t\tif ( directiveCallbacks[ name ] ) {\n\t\t\tconst priority = directivePriorities[ name ];\n\t\t\t( obj[ priority ] = obj[ priority ] || [] ).push( name );\n\t\t}\n\t\treturn obj;\n\t}, {} );\n\n\treturn Object.entries( byPriority )\n\t\t.sort( ( [ p1 ], [ p2 ] ) => parseInt( p1 ) - parseInt( p2 ) )\n\t\t.map( ( [ , arr ] ) => arr );\n};\n\n// Component that wraps each priority level of directives of an element.\nconst Directives = ( {\n\tdirectives,\n\tpriorityLevels: [ currentPriorityLevel, ...nextPriorityLevels ],\n\telement,\n\toriginalProps,\n\tpreviousScope,\n}: DirectivesProps ) => {\n\t// Initialize the scope of this element. These scopes are different per each\n\t// level because each level has a different context, but they share the same\n\t// element ref, state and props.\n\tconst scope = useRef< Scope >( {} as Scope ).current;\n\tscope.evaluate = useCallback( getEvaluate( { scope } ), [] );\n\tscope.context = useContext( context );\n\t/* eslint-disable react-hooks/rules-of-hooks */\n\tscope.ref = previousScope?.ref || useRef( null );\n\t/* eslint-enable react-hooks/rules-of-hooks */\n\n\t// Create a fresh copy of the vnode element and add the props to the scope,\n\t// named as attributes (HTML Attributes).\n\telement = cloneElement( element, { ref: scope.ref } );\n\tscope.attributes = element.props;\n\n\t// Recursively render the wrapper for the next priority level.\n\tconst children =\n\t\tnextPriorityLevels.length > 0\n\t\t\t? createElement( Directives, {\n\t\t\t\t\tdirectives,\n\t\t\t\t\tpriorityLevels: nextPriorityLevels,\n\t\t\t\t\telement,\n\t\t\t\t\toriginalProps,\n\t\t\t\t\tpreviousScope: scope,\n\t\t\t } )\n\t\t\t: element;\n\n\tconst props = { ...originalProps, children };\n\tconst directiveArgs = {\n\t\tdirectives,\n\t\tprops,\n\t\telement,\n\t\tcontext,\n\t\tevaluate: scope.evaluate,\n\t};\n\n\tsetScope( scope );\n\n\tfor ( const directiveName of currentPriorityLevel ) {\n\t\tconst wrapper = directiveCallbacks[ directiveName ]?.( directiveArgs );\n\t\tif ( wrapper !== undefined ) {\n\t\t\tprops.children = wrapper;\n\t\t}\n\t}\n\n\tresetScope();\n\n\treturn props.children;\n};\n\n// Preact Options Hook called each time a vnode is created.\nconst old = options.vnode;\noptions.vnode = ( vnode: VNode< any > ) => {\n\tif ( vnode.props.__directives ) {\n\t\tconst props = vnode.props;\n\t\tconst directives = props.__directives;\n\t\tif ( directives.key ) {\n\t\t\tvnode.key = directives.key.find(\n\t\t\t\t( { suffix } ) => suffix === 'default'\n\t\t\t).value;\n\t\t}\n\t\tdelete props.__directives;\n\t\tconst priorityLevels = getPriorityLevels( directives );\n\t\tif ( priorityLevels.length > 0 ) {\n\t\t\tvnode.props = {\n\t\t\t\tdirectives,\n\t\t\t\tpriorityLevels,\n\t\t\t\toriginalProps: props,\n\t\t\t\ttype: vnode.type,\n\t\t\t\telement: createElement( vnode.type as any, props ),\n\t\t\t\ttop: true,\n\t\t\t};\n\t\t\tvnode.type = Directives;\n\t\t}\n\t}\n\n\tif ( old ) {\n\t\told( vnode );\n\t}\n};\n","// eslint-disable-next-line eslint-comments/disable-enable-pair\n/* eslint-disable react-hooks/exhaustive-deps */\n\n/**\n * External dependencies\n */\nimport { h as createElement, type RefObject } from 'preact';\nimport { useContext, useMemo, useRef } from 'preact/hooks';\n/**\n * Internal dependencies\n */\nimport { proxifyState, peek } from './proxies';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseWatch,\n\tuseInit,\n\tkebabToCamelCase,\n\twarn,\n\tsplitTask,\n\tisPlainObject,\n} from './utils';\nimport { directive, getEvaluate, type DirectiveEntry } from './hooks';\nimport { getScope } from './scopes';\n\n// Assigned objects should be ignored during proxification.\nconst contextAssignedObjects = new WeakMap();\n\n// Store the context proxy and fallback for each object in the context.\nconst contextObjectToProxy = new WeakMap();\nconst contextProxyToObject = new WeakMap();\nconst contextObjectToFallback = new WeakMap();\n\nconst descriptor = Reflect.getOwnPropertyDescriptor;\n\n/**\n * Wrap a context object with a proxy to reproduce the context stack. The proxy\n * uses the passed `inherited` context as a fallback to look up for properties\n * that don't exist in the given context. Also, updated properties are modified\n * where they are defined, or added to the main context when they don't exist.\n *\n * By default, all plain objects inside the context are wrapped, unless it is\n * listed in the `ignore` option.\n *\n * @param current Current context.\n * @param inherited Inherited context, used as fallback.\n *\n * @return The wrapped context object.\n */\nconst proxifyContext = ( current: object, inherited: object = {} ): object => {\n\t// Update the fallback object reference when it changes.\n\tcontextObjectToFallback.set( current, inherited );\n\tif ( ! contextObjectToProxy.has( current ) ) {\n\t\tconst proxy = new Proxy( current, {\n\t\t\tget: ( target: object, k: string ) => {\n\t\t\t\tconst fallback = contextObjectToFallback.get( current );\n\t\t\t\t// Always subscribe to prop changes in the current context.\n\t\t\t\tconst currentProp = target[ k ];\n\n\t\t\t\t// Return the inherited prop when missing in target.\n\t\t\t\tif ( ! ( k in target ) && k in fallback ) {\n\t\t\t\t\treturn fallback[ k ];\n\t\t\t\t}\n\n\t\t\t\t// Proxify plain objects that were not directly assigned.\n\t\t\t\tif (\n\t\t\t\t\tk in target &&\n\t\t\t\t\t! contextAssignedObjects.get( target )?.has( k ) &&\n\t\t\t\t\tisPlainObject( currentProp )\n\t\t\t\t) {\n\t\t\t\t\treturn proxifyContext( currentProp );\n\t\t\t\t}\n\n\t\t\t\t// Return the stored proxy for `currentProp` when it exists.\n\t\t\t\tif ( contextObjectToProxy.has( currentProp ) ) {\n\t\t\t\t\treturn contextObjectToProxy.get( currentProp );\n\t\t\t\t}\n\n\t\t\t\t/*\n\t\t\t\t * For other cases, return the value from target, also\n\t\t\t\t * subscribing to changes in the parent context when the current\n\t\t\t\t * prop is not defined.\n\t\t\t\t */\n\t\t\t\treturn k in target ? currentProp : fallback[ k ];\n\t\t\t},\n\t\t\tset: ( target, k, value ) => {\n\t\t\t\tconst fallback = contextObjectToFallback.get( current );\n\t\t\t\tconst obj =\n\t\t\t\t\tk in target || ! ( k in fallback ) ? target : fallback;\n\n\t\t\t\t/*\n\t\t\t\t * Assigned object values should not be proxified so they point\n\t\t\t\t * to the original object and don't inherit unexpected\n\t\t\t\t * properties.\n\t\t\t\t */\n\t\t\t\tif ( value && typeof value === 'object' ) {\n\t\t\t\t\tif ( ! contextAssignedObjects.has( obj ) ) {\n\t\t\t\t\t\tcontextAssignedObjects.set( obj, new Set() );\n\t\t\t\t\t}\n\t\t\t\t\tcontextAssignedObjects.get( obj ).add( k );\n\t\t\t\t}\n\n\t\t\t\t/*\n\t\t\t\t * When the value is a proxy, it's because it comes from the\n\t\t\t\t * context, so the inner value is assigned instead.\n\t\t\t\t */\n\t\t\t\tif ( contextProxyToObject.has( value ) ) {\n\t\t\t\t\tconst innerValue = contextProxyToObject.get( value );\n\t\t\t\t\tobj[ k ] = innerValue;\n\t\t\t\t} else {\n\t\t\t\t\tobj[ k ] = value;\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\t\t\t},\n\t\t\townKeys: ( target ) => [\n\t\t\t\t...new Set( [\n\t\t\t\t\t...Object.keys( contextObjectToFallback.get( current ) ),\n\t\t\t\t\t...Object.keys( target ),\n\t\t\t\t] ),\n\t\t\t],\n\t\t\tgetOwnPropertyDescriptor: ( target, k ) =>\n\t\t\t\tdescriptor( target, k ) ||\n\t\t\t\tdescriptor( contextObjectToFallback.get( current ), k ),\n\t\t} );\n\t\tcontextObjectToProxy.set( current, proxy );\n\t\tcontextProxyToObject.set( proxy, current );\n\t}\n\treturn contextObjectToProxy.get( current );\n};\n\n/**\n * Recursively update values within a context object.\n *\n * @param target A context instance.\n * @param source Object with properties to update in `target`.\n */\nconst updateContext = ( target: any, source: any ) => {\n\tfor ( const k in source ) {\n\t\tif (\n\t\t\tisPlainObject( peek( target, k ) ) &&\n\t\t\tisPlainObject( source[ k ] )\n\t\t) {\n\t\t\tupdateContext( peek( target, k ) as object, source[ k ] );\n\t\t} else if ( ! ( k in target ) ) {\n\t\t\ttarget[ k ] = source[ k ];\n\t\t}\n\t}\n};\n\n/**\n * Recursively clone the passed object.\n *\n * @param source Source object.\n * @return Cloned object.\n */\nfunction deepClone< T >( source: T ): T {\n\tif ( isPlainObject( source ) ) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( source as object ).map( ( [ key, value ] ) => [\n\t\t\t\tkey,\n\t\t\t\tdeepClone( value ),\n\t\t\t] )\n\t\t) as T;\n\t}\n\tif ( Array.isArray( source ) ) {\n\t\treturn source.map( ( i ) => deepClone( i ) ) as T;\n\t}\n\treturn source;\n}\n\nconst newRule =\n\t/(?:([\\u0080-\\uFFFF\\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\\s*)/g;\nconst ruleClean = /\\/\\*[^]*?\\*\\/| +/g;\nconst ruleNewline = /\\n+/g;\nconst empty = ' ';\n\n/**\n * Convert a css style string into a object.\n *\n * Made by Cristian Bote (@cristianbote) for Goober.\n * https://unpkg.com/browse/goober@2.1.13/src/core/astish.js\n *\n * @param val CSS string.\n * @return CSS object.\n */\nconst cssStringToObject = (\n\tval: string\n): Record< string, string | number > => {\n\tconst tree = [ {} ];\n\tlet block, left;\n\n\twhile ( ( block = newRule.exec( val.replace( ruleClean, '' ) ) ) ) {\n\t\tif ( block[ 4 ] ) {\n\t\t\ttree.shift();\n\t\t} else if ( block[ 3 ] ) {\n\t\t\tleft = block[ 3 ].replace( ruleNewline, empty ).trim();\n\t\t\ttree.unshift( ( tree[ 0 ][ left ] = tree[ 0 ][ left ] || {} ) );\n\t\t} else {\n\t\t\ttree[ 0 ][ block[ 1 ] ] = block[ 2 ]\n\t\t\t\t.replace( ruleNewline, empty )\n\t\t\t\t.trim();\n\t\t}\n\t}\n\n\treturn tree[ 0 ];\n};\n\n/**\n * Creates a directive that adds an event listener to the global window or\n * document object.\n *\n * @param type 'window' or 'document'\n */\nconst getGlobalEventDirective = ( type: 'window' | 'document' ) => {\n\treturn ( { directives, evaluate } ) => {\n\t\tdirectives[ `on-${ type }` ]\n\t\t\t.filter( ( { suffix } ) => suffix !== 'default' )\n\t\t\t.forEach( ( entry: DirectiveEntry ) => {\n\t\t\t\tconst eventName = entry.suffix.split( '--', 1 )[ 0 ];\n\t\t\t\tuseInit( () => {\n\t\t\t\t\tconst cb = ( event: Event ) => evaluate( entry, event );\n\t\t\t\t\tconst globalVar = type === 'window' ? window : document;\n\t\t\t\t\tglobalVar.addEventListener( eventName, cb );\n\t\t\t\t\treturn () => globalVar.removeEventListener( eventName, cb );\n\t\t\t\t} );\n\t\t\t} );\n\t};\n};\n\n/**\n * Creates a directive that adds an async event listener to the global window or\n * document object.\n *\n * @param type 'window' or 'document'\n */\nconst getGlobalAsyncEventDirective = ( type: 'window' | 'document' ) => {\n\treturn ( { directives, evaluate } ) => {\n\t\tdirectives[ `on-async-${ type }` ]\n\t\t\t.filter( ( { suffix } ) => suffix !== 'default' )\n\t\t\t.forEach( ( entry: DirectiveEntry ) => {\n\t\t\t\tconst eventName = entry.suffix.split( '--', 1 )[ 0 ];\n\t\t\t\tuseInit( () => {\n\t\t\t\t\tconst cb = async ( event: Event ) => {\n\t\t\t\t\t\tawait splitTask();\n\t\t\t\t\t\tevaluate( entry, event );\n\t\t\t\t\t};\n\t\t\t\t\tconst globalVar = type === 'window' ? window : document;\n\t\t\t\t\tglobalVar.addEventListener( eventName, cb, {\n\t\t\t\t\t\tpassive: true,\n\t\t\t\t\t} );\n\t\t\t\t\treturn () => globalVar.removeEventListener( eventName, cb );\n\t\t\t\t} );\n\t\t\t} );\n\t};\n};\n\nexport default () => {\n\t// data-wp-context\n\tdirective(\n\t\t'context',\n\t\t( {\n\t\t\tdirectives: { context },\n\t\t\tprops: { children },\n\t\t\tcontext: inheritedContext,\n\t\t} ) => {\n\t\t\tconst { Provider } = inheritedContext;\n\t\t\tconst defaultEntry = context.find(\n\t\t\t\t( { suffix } ) => suffix === 'default'\n\t\t\t);\n\t\t\tconst inheritedValue = useContext( inheritedContext );\n\n\t\t\tconst ns = defaultEntry!.namespace;\n\t\t\tconst currentValue = useRef( proxifyState( ns, {} ) );\n\n\t\t\t// No change should be made if `defaultEntry` does not exist.\n\t\t\tconst contextStack = useMemo( () => {\n\t\t\t\tconst result = { ...inheritedValue };\n\t\t\t\tif ( defaultEntry ) {\n\t\t\t\t\tconst { namespace, value } = defaultEntry;\n\t\t\t\t\t// Check that the value is a JSON object. Send a console warning if not.\n\t\t\t\t\tif ( ! isPlainObject( value ) ) {\n\t\t\t\t\t\twarn(\n\t\t\t\t\t\t\t`The value of data-wp-context in \"${ namespace }\" store must be a valid stringified JSON object.`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tupdateContext(\n\t\t\t\t\t\tcurrentValue.current,\n\t\t\t\t\t\tdeepClone( value ) as object\n\t\t\t\t\t);\n\t\t\t\t\tresult[ namespace ] = proxifyContext(\n\t\t\t\t\t\tcurrentValue.current,\n\t\t\t\t\t\tinheritedValue[ namespace ]\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t}, [ defaultEntry, inheritedValue ] );\n\n\t\t\treturn createElement( Provider, { value: contextStack }, children );\n\t\t},\n\t\t{ priority: 5 }\n\t);\n\n\t// data-wp-watch--[name]\n\tdirective( 'watch', ( { directives: { watch }, evaluate } ) => {\n\t\twatch.forEach( ( entry ) => {\n\t\t\tuseWatch( () => {\n\t\t\t\tlet start;\n\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\t// eslint-disable-next-line no-unused-vars\n\t\t\t\t\t\tstart = performance.now();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst result = evaluate( entry );\n\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\tperformance.measure(\n\t\t\t\t\t\t\t`interactivity api watch ${ entry.namespace }`,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tstart,\n\t\t\t\t\t\t\t\tend: performance.now(),\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tdevtools: {\n\t\t\t\t\t\t\t\t\t\ttrack: `IA: watch ${ entry.namespace }`,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} );\n\t\t} );\n\t} );\n\n\t// data-wp-init--[name]\n\tdirective( 'init', ( { directives: { init }, evaluate } ) => {\n\t\tinit.forEach( ( entry ) => {\n\t\t\t// TODO: Replace with useEffect to prevent unneeded scopes.\n\t\t\tuseInit( () => {\n\t\t\t\tlet start;\n\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\tstart = performance.now();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst result = evaluate( entry );\n\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\tperformance.measure(\n\t\t\t\t\t\t\t`interactivity api init ${ entry.namespace }`,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t\tstart,\n\t\t\t\t\t\t\t\tend: performance.now(),\n\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\tdevtools: {\n\t\t\t\t\t\t\t\t\t\ttrack: `IA: init ${ entry.namespace }`,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} );\n\t\t} );\n\t} );\n\n\t// data-wp-on--[event]\n\tdirective( 'on', ( { directives: { on }, element, evaluate } ) => {\n\t\tconst events = new Map< string, Set< DirectiveEntry > >();\n\t\ton.filter( ( { suffix } ) => suffix !== 'default' ).forEach(\n\t\t\t( entry ) => {\n\t\t\t\tconst event = entry.suffix.split( '--' )[ 0 ];\n\t\t\t\tif ( ! events.has( event ) ) {\n\t\t\t\t\tevents.set( event, new Set< DirectiveEntry >() );\n\t\t\t\t}\n\t\t\t\tevents.get( event )!.add( entry );\n\t\t\t}\n\t\t);\n\n\t\tevents.forEach( ( entries, eventType ) => {\n\t\t\tconst existingHandler = element.props[ `on${ eventType }` ];\n\t\t\telement.props[ `on${ eventType }` ] = ( event: Event ) => {\n\t\t\t\tentries.forEach( ( entry ) => {\n\t\t\t\t\tif ( existingHandler ) {\n\t\t\t\t\t\texistingHandler( event );\n\t\t\t\t\t}\n\t\t\t\t\tlet start;\n\t\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\t\tstart = performance.now();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tevaluate( entry, event );\n\t\t\t\t\tif ( globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t\t\t\tif ( globalThis.SCRIPT_DEBUG ) {\n\t\t\t\t\t\t\tperformance.measure(\n\t\t\t\t\t\t\t\t`interactivity api on ${ entry.namespace }`,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t\t\tstart,\n\t\t\t\t\t\t\t\t\tend: performance.now(),\n\t\t\t\t\t\t\t\t\tdetail: {\n\t\t\t\t\t\t\t\t\t\tdevtools: {\n\t\t\t\t\t\t\t\t\t\t\ttrack: `IA: on ${ entry.namespace }`,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t};\n\t\t} );\n\t} );\n\n\t// data-wp-on-async--[event]\n\tdirective(\n\t\t'on-async',\n\t\t( { directives: { 'on-async': onAsync }, element, evaluate } ) => {\n\t\t\tconst events = new Map< string, Set< DirectiveEntry > >();\n\t\t\tonAsync\n\t\t\t\t.filter( ( { suffix } ) => suffix !== 'default' )\n\t\t\t\t.forEach( ( entry ) => {\n\t\t\t\t\tconst event = entry.suffix.split( '--' )[ 0 ];\n\t\t\t\t\tif ( ! events.has( event ) ) {\n\t\t\t\t\t\tevents.set( event, new Set< DirectiveEntry >() );\n\t\t\t\t\t}\n\t\t\t\t\tevents.get( event )!.add( entry );\n\t\t\t\t} );\n\n\t\t\tevents.forEach( ( entries, eventType ) => {\n\t\t\t\tconst existingHandler = element.props[ `on${ eventType }` ];\n\t\t\t\telement.props[ `on${ eventType }` ] = ( event: Event ) => {\n\t\t\t\t\tif ( existingHandler ) {\n\t\t\t\t\t\texistingHandler( event );\n\t\t\t\t\t}\n\t\t\t\t\tentries.forEach( async ( entry ) => {\n\t\t\t\t\t\tawait splitTask();\n\t\t\t\t\t\tevaluate( entry, event );\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t} );\n\t\t}\n\t);\n\n\t// data-wp-on-window--[event]\n\tdirective( 'on-window', getGlobalEventDirective( 'window' ) );\n\t// data-wp-on-document--[event]\n\tdirective( 'on-document', getGlobalEventDirective( 'document' ) );\n\n\t// data-wp-on-async-window--[event]\n\tdirective( 'on-async-window', getGlobalAsyncEventDirective( 'window' ) );\n\t// data-wp-on-async-document--[event]\n\tdirective(\n\t\t'on-async-document',\n\t\tgetGlobalAsyncEventDirective( 'document' )\n\t);\n\n\t// data-wp-class--[classname]\n\tdirective(\n\t\t'class',\n\t\t( { directives: { class: classNames }, element, evaluate } ) => {\n\t\t\tclassNames\n\t\t\t\t.filter( ( { suffix } ) => suffix !== 'default' )\n\t\t\t\t.forEach( ( entry ) => {\n\t\t\t\t\tconst className = entry.suffix;\n\t\t\t\t\tconst result = evaluate( entry );\n\t\t\t\t\tconst currentClass = element.props.class || '';\n\t\t\t\t\tconst classFinder = new RegExp(\n\t\t\t\t\t\t`(^|\\\\s)${ className }(\\\\s|$)`,\n\t\t\t\t\t\t'g'\n\t\t\t\t\t);\n\t\t\t\t\tif ( ! result ) {\n\t\t\t\t\t\telement.props.class = currentClass\n\t\t\t\t\t\t\t.replace( classFinder, ' ' )\n\t\t\t\t\t\t\t.trim();\n\t\t\t\t\t} else if ( ! classFinder.test( currentClass ) ) {\n\t\t\t\t\t\telement.props.class = currentClass\n\t\t\t\t\t\t\t? `${ currentClass } ${ className }`\n\t\t\t\t\t\t\t: className;\n\t\t\t\t\t}\n\n\t\t\t\t\tuseInit( () => {\n\t\t\t\t\t\t/*\n\t\t\t\t\t\t * This seems necessary because Preact doesn't change the class\n\t\t\t\t\t\t * names on the hydration, so we have to do it manually. It doesn't\n\t\t\t\t\t\t * need deps because it only needs to do it the first time.\n\t\t\t\t\t\t */\n\t\t\t\t\t\tif ( ! result ) {\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\telement.ref as RefObject< HTMLElement >\n\t\t\t\t\t\t\t ).current!.classList.remove( className );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\telement.ref as RefObject< HTMLElement >\n\t\t\t\t\t\t\t ).current!.classList.add( className );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t}\n\t);\n\n\t// data-wp-style--[style-prop]\n\tdirective( 'style', ( { directives: { style }, element, evaluate } ) => {\n\t\tstyle\n\t\t\t.filter( ( { suffix } ) => suffix !== 'default' )\n\t\t\t.forEach( ( entry ) => {\n\t\t\t\tconst styleProp = entry.suffix;\n\t\t\t\tconst result = evaluate( entry );\n\t\t\t\telement.props.style = element.props.style || {};\n\t\t\t\tif ( typeof element.props.style === 'string' ) {\n\t\t\t\t\telement.props.style = cssStringToObject(\n\t\t\t\t\t\telement.props.style\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif ( ! result ) {\n\t\t\t\t\tdelete element.props.style[ styleProp ];\n\t\t\t\t} else {\n\t\t\t\t\telement.props.style[ styleProp ] = result;\n\t\t\t\t}\n\n\t\t\t\tuseInit( () => {\n\t\t\t\t\t/*\n\t\t\t\t\t * This seems necessary because Preact doesn't change the styles on\n\t\t\t\t\t * the hydration, so we have to do it manually. It doesn't need deps\n\t\t\t\t\t * because it only needs to do it the first time.\n\t\t\t\t\t */\n\t\t\t\t\tif ( ! result ) {\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\telement.ref as RefObject< HTMLElement >\n\t\t\t\t\t\t ).current!.style.removeProperty( styleProp );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\telement.ref as RefObject< HTMLElement >\n\t\t\t\t\t\t ).current!.style[ styleProp ] = result;\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t} );\n\t} );\n\n\t// data-wp-bind--[attribute]\n\tdirective( 'bind', ( { directives: { bind }, element, evaluate } ) => {\n\t\tbind.filter( ( { suffix } ) => suffix !== 'default' ).forEach(\n\t\t\t( entry ) => {\n\t\t\t\tconst attribute = entry.suffix;\n\t\t\t\tconst result = evaluate( entry );\n\t\t\t\telement.props[ attribute ] = result;\n\n\t\t\t\t/*\n\t\t\t\t * This is necessary because Preact doesn't change the attributes on the\n\t\t\t\t * hydration, so we have to do it manually. It only needs to do it the\n\t\t\t\t * first time. After that, Preact will handle the changes.\n\t\t\t\t */\n\t\t\t\tuseInit( () => {\n\t\t\t\t\tconst el = ( element.ref as RefObject< HTMLElement > )\n\t\t\t\t\t\t.current!;\n\n\t\t\t\t\t/*\n\t\t\t\t\t * We set the value directly to the corresponding HTMLElement instance\n\t\t\t\t\t * property excluding the following special cases. We follow Preact's\n\t\t\t\t\t * logic: https://github.com/preactjs/preact/blob/ea49f7a0f9d1ff2c98c0bdd66aa0cbc583055246/src/diff/props.js#L110-L129\n\t\t\t\t\t */\n\t\t\t\t\tif ( attribute === 'style' ) {\n\t\t\t\t\t\tif ( typeof result === 'string' ) {\n\t\t\t\t\t\t\tel.style.cssText = result;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} else if (\n\t\t\t\t\t\tattribute !== 'width' &&\n\t\t\t\t\t\tattribute !== 'height' &&\n\t\t\t\t\t\tattribute !== 'href' &&\n\t\t\t\t\t\tattribute !== 'list' &&\n\t\t\t\t\t\tattribute !== 'form' &&\n\t\t\t\t\t\t/*\n\t\t\t\t\t\t * The value for `tabindex` follows the parsing rules for an\n\t\t\t\t\t\t * integer. If that fails, or if the attribute isn't present, then\n\t\t\t\t\t\t * the browsers should \"follow platform conventions to determine if\n\t\t\t\t\t\t * the element should be considered as a focusable area\",\n\t\t\t\t\t\t * practically meaning that most elements get a default of `-1` (not\n\t\t\t\t\t\t * focusable), but several also get a default of `0` (focusable in\n\t\t\t\t\t\t * order after all elements with a positive `tabindex` value).\n\t\t\t\t\t\t *\n\t\t\t\t\t\t * @see https://html.spec.whatwg.org/#tabindex-value\n\t\t\t\t\t\t */\n\t\t\t\t\t\tattribute !== 'tabIndex' &&\n\t\t\t\t\t\tattribute !== 'download' &&\n\t\t\t\t\t\tattribute !== 'rowSpan' &&\n\t\t\t\t\t\tattribute !== 'colSpan' &&\n\t\t\t\t\t\tattribute !== 'role' &&\n\t\t\t\t\t\tattribute in el\n\t\t\t\t\t) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tel[ attribute ] =\n\t\t\t\t\t\t\t\tresult === null || result === undefined\n\t\t\t\t\t\t\t\t\t? ''\n\t\t\t\t\t\t\t\t\t: result;\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t} catch ( err ) {}\n\t\t\t\t\t}\n\t\t\t\t\t/*\n\t\t\t\t\t * aria- and data- attributes have no boolean representation.\n\t\t\t\t\t * A `false` value is different from the attribute not being\n\t\t\t\t\t * present, so we can't remove it.\n\t\t\t\t\t * We follow Preact's logic: https://github.com/preactjs/preact/blob/ea49f7a0f9d1ff2c98c0bdd66aa0cbc583055246/src/diff/props.js#L131C24-L136\n\t\t\t\t\t */\n\t\t\t\t\tif (\n\t\t\t\t\t\tresult !== null &&\n\t\t\t\t\t\tresult !== undefined &&\n\t\t\t\t\t\t( result !== false || attribute[ 4 ] === '-' )\n\t\t\t\t\t) {\n\t\t\t\t\t\tel.setAttribute( attribute, result );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tel.removeAttribute( attribute );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t);\n\t} );\n\n\t// data-wp-ignore\n\tdirective(\n\t\t'ignore',\n\t\t( {\n\t\t\telement: {\n\t\t\t\ttype: Type,\n\t\t\t\tprops: { innerHTML, ...rest },\n\t\t\t},\n\t\t}: {\n\t\t\telement: any;\n\t\t} ) => {\n\t\t\t// Preserve the initial inner HTML.\n\t\t\tconst cached = useMemo( () => innerHTML, [] );\n\t\t\treturn createElement( Type, {\n\t\t\t\tdangerouslySetInnerHTML: { __html: cached },\n\t\t\t\t...rest,\n\t\t\t} );\n\t\t}\n\t);\n\n\t// data-wp-text\n\tdirective( 'text', ( { directives: { text }, element, evaluate } ) => {\n\t\tconst entry = text.find( ( { suffix } ) => suffix === 'default' );\n\t\tif ( ! entry ) {\n\t\t\telement.props.children = null;\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst result = evaluate( entry );\n\t\t\telement.props.children =\n\t\t\t\ttypeof result === 'object' ? null : result.toString();\n\t\t} catch ( e ) {\n\t\t\telement.props.children = null;\n\t\t}\n\t} );\n\n\t// data-wp-run\n\tdirective( 'run', ( { directives: { run }, evaluate } ) => {\n\t\trun.forEach( ( entry ) => evaluate( entry ) );\n\t} );\n\n\t// data-wp-each--[item]\n\tdirective(\n\t\t'each',\n\t\t( {\n\t\t\tdirectives: { each, 'each-key': eachKey },\n\t\t\tcontext: inheritedContext,\n\t\t\telement,\n\t\t\tevaluate,\n\t\t} ) => {\n\t\t\tif ( element.type !== 'template' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { Provider } = inheritedContext;\n\t\t\tconst inheritedValue = useContext( inheritedContext );\n\n\t\t\tconst [ entry ] = each;\n\t\t\tconst { namespace, suffix } = entry;\n\n\t\t\tconst list = evaluate( entry );\n\t\t\treturn list.map( ( item ) => {\n\t\t\t\tconst itemProp =\n\t\t\t\t\tsuffix === 'default' ? 'item' : kebabToCamelCase( suffix );\n\t\t\t\tconst itemContext = proxifyContext(\n\t\t\t\t\tproxifyState( namespace, {} ),\n\t\t\t\t\tinheritedValue[ namespace ]\n\t\t\t\t);\n\t\t\t\tconst mergedContext = {\n\t\t\t\t\t...inheritedValue,\n\t\t\t\t\t[ namespace ]: itemContext,\n\t\t\t\t};\n\n\t\t\t\t// Set the item after proxifying the context.\n\t\t\t\tmergedContext[ namespace ][ itemProp ] = item;\n\n\t\t\t\tconst scope = { ...getScope(), context: mergedContext };\n\t\t\t\tconst key = eachKey\n\t\t\t\t\t? getEvaluate( { scope } )( eachKey[ 0 ] )\n\t\t\t\t\t: item;\n\n\t\t\t\treturn createElement(\n\t\t\t\t\tProvider,\n\t\t\t\t\t{ value: mergedContext, key },\n\t\t\t\t\telement.props.content\n\t\t\t\t);\n\t\t\t} );\n\t\t},\n\t\t{ priority: 20 }\n\t);\n\n\tdirective( 'each-child', () => null, { priority: 1 } );\n};\n","export const directivePrefix: string = 'wp';\n","/**\n * External dependencies\n */\nimport { h, type ComponentChild, type JSX } from 'preact';\n/**\n * Internal dependencies\n */\nimport { directivePrefix as p } from './constants';\nimport { warn } from './utils';\n\nconst ignoreAttr = `data-${ p }-ignore`;\nconst islandAttr = `data-${ p }-interactive`;\nconst fullPrefix = `data-${ p }-`;\nconst namespaces: Array< string | null > = [];\nconst currentNamespace = () => namespaces[ namespaces.length - 1 ] ?? null;\nconst isObject = ( item: unknown ): item is Record< string, unknown > =>\n\tBoolean( item && typeof item === 'object' && item.constructor === Object );\n\n// Regular expression for directive parsing.\nconst directiveParser = new RegExp(\n\t`^data-${ p }-` + // ${p} must be a prefix string, like 'wp'.\n\t\t// Match alphanumeric characters including hyphen-separated\n\t\t// segments. It excludes underscore intentionally to prevent confusion.\n\t\t// E.g., \"custom-directive\".\n\t\t'([a-z0-9]+(?:-[a-z0-9]+)*)' +\n\t\t// (Optional) Match '--' followed by any alphanumeric charachters. It\n\t\t// excludes underscore intentionally to prevent confusion, but it can\n\t\t// contain multiple hyphens. E.g., \"--custom-prefix--with-more-info\".\n\t\t'(?:--([a-z0-9_-]+))?$',\n\t'i' // Case insensitive.\n);\n\n// Regular expression for reference parsing. It can contain a namespace before\n// the reference, separated by `::`, like `some-namespace::state.somePath`.\n// Namespaces can contain any alphanumeric characters, hyphens, underscores or\n// forward slashes. References don't have any restrictions.\nconst nsPathRegExp = /^([\\w_\\/-]+)::(.+)$/;\n\nexport const hydratedIslands = new WeakSet();\n\n/**\n * Recursive function that transforms a DOM tree into vDOM.\n *\n * @param root The root element or node to start traversing on.\n * @return The resulting vDOM tree.\n */\nexport function toVdom( root: Node ): Array< ComponentChild > {\n\tconst treeWalker = document.createTreeWalker(\n\t\troot,\n\t\t205 // TEXT + CDATA_SECTION + COMMENT + PROCESSING_INSTRUCTION + ELEMENT\n\t);\n\n\tfunction walk(\n\t\tnode: Node\n\t): [ ComponentChild ] | [ ComponentChild, Node | null ] {\n\t\tconst { nodeType } = node;\n\n\t\t// TEXT_NODE (3)\n\t\tif ( nodeType === 3 ) {\n\t\t\treturn [ ( node as Text ).data ];\n\t\t}\n\n\t\t// CDATA_SECTION_NODE (4)\n\t\tif ( nodeType === 4 ) {\n\t\t\tconst next = treeWalker.nextSibling();\n\t\t\t( node as CDATASection ).replaceWith(\n\t\t\t\tnew window.Text( ( node as CDATASection ).nodeValue ?? '' )\n\t\t\t);\n\t\t\treturn [ node.nodeValue, next ];\n\t\t}\n\n\t\t// COMMENT_NODE (8) || PROCESSING_INSTRUCTION_NODE (7)\n\t\tif ( nodeType === 8 || nodeType === 7 ) {\n\t\t\tconst next = treeWalker.nextSibling();\n\t\t\t( node as Comment | ProcessingInstruction ).remove();\n\t\t\treturn [ null, next ];\n\t\t}\n\n\t\tconst elementNode = node as HTMLElement;\n\t\tconst { attributes } = elementNode;\n\t\tconst localName = elementNode.localName as keyof JSX.IntrinsicElements;\n\n\t\tconst props: Record< string, any > = {};\n\t\tconst children: Array< ComponentChild > = [];\n\t\tconst directives: Array<\n\t\t\t[ name: string, namespace: string | null, value: unknown ]\n\t\t> = [];\n\t\tlet ignore = false;\n\t\tlet island = false;\n\n\t\tfor ( let i = 0; i < attributes.length; i++ ) {\n\t\t\tconst attributeName = attributes[ i ].name;\n\t\t\tconst attributeValue = attributes[ i ].value;\n\t\t\tif (\n\t\t\t\tattributeName[ fullPrefix.length ] &&\n\t\t\t\tattributeName.slice( 0, fullPrefix.length ) === fullPrefix\n\t\t\t) {\n\t\t\t\tif ( attributeName === ignoreAttr ) {\n\t\t\t\t\tignore = true;\n\t\t\t\t} else {\n\t\t\t\t\tconst regexResult = nsPathRegExp.exec( attributeValue );\n\t\t\t\t\tconst namespace = regexResult?.[ 1 ] ?? null;\n\t\t\t\t\tlet value: any = regexResult?.[ 2 ] ?? attributeValue;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst parsedValue = JSON.parse( value );\n\t\t\t\t\t\tvalue = isObject( parsedValue ) ? parsedValue : value;\n\t\t\t\t\t} catch {}\n\t\t\t\t\tif ( attributeName === islandAttr ) {\n\t\t\t\t\t\tisland = true;\n\t\t\t\t\t\tconst islandNamespace =\n\t\t\t\t\t\t\t// eslint-disable-next-line no-nested-ternary\n\t\t\t\t\t\t\ttypeof value === 'string'\n\t\t\t\t\t\t\t\t? value\n\t\t\t\t\t\t\t\t: typeof value?.namespace === 'string'\n\t\t\t\t\t\t\t\t? value.namespace\n\t\t\t\t\t\t\t\t: null;\n\t\t\t\t\t\tnamespaces.push( islandNamespace );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdirectives.push( [ attributeName, namespace, value ] );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if ( attributeName === 'ref' ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tprops[ attributeName ] = attributeValue;\n\t\t}\n\n\t\tif ( ignore && ! island ) {\n\t\t\treturn [\n\t\t\t\th< any, any >( localName, {\n\t\t\t\t\t...props,\n\t\t\t\t\tinnerHTML: elementNode.innerHTML,\n\t\t\t\t\t__directives: { ignore: true },\n\t\t\t\t} ),\n\t\t\t];\n\t\t}\n\t\tif ( island ) {\n\t\t\thydratedIslands.add( elementNode );\n\t\t}\n\n\t\tif ( directives.length ) {\n\t\t\tprops.__directives = directives.reduce(\n\t\t\t\t( obj, [ name, ns, value ] ) => {\n\t\t\t\t\tconst directiveMatch = directiveParser.exec( name );\n\t\t\t\t\tif ( directiveMatch === null ) {\n\t\t\t\t\t\twarn( `Found malformed directive name: ${ name }.` );\n\t\t\t\t\t\treturn obj;\n\t\t\t\t\t}\n\t\t\t\t\tconst prefix = directiveMatch[ 1 ] || '';\n\t\t\t\t\tconst suffix = directiveMatch[ 2 ] || 'default';\n\n\t\t\t\t\tobj[ prefix ] = obj[ prefix ] || [];\n\t\t\t\t\tobj[ prefix ].push( {\n\t\t\t\t\t\tnamespace: ns ?? currentNamespace(),\n\t\t\t\t\t\tvalue,\n\t\t\t\t\t\tsuffix,\n\t\t\t\t\t} );\n\t\t\t\t\treturn obj;\n\t\t\t\t},\n\t\t\t\t{}\n\t\t\t);\n\t\t}\n\n\t\t// @ts-expect-error Fixed in upcoming preact release https://github.com/preactjs/preact/pull/4334\n\t\tif ( localName === 'template' ) {\n\t\t\tprops.content = [\n\t\t\t\t...( elementNode as HTMLTemplateElement ).content.childNodes,\n\t\t\t].map( ( childNode ) => toVdom( childNode ) );\n\t\t} else {\n\t\t\tlet child = treeWalker.firstChild();\n\t\t\tif ( child ) {\n\t\t\t\twhile ( child ) {\n\t\t\t\t\tconst [ vnode, nextChild ] = walk( child );\n\t\t\t\t\tif ( vnode ) {\n\t\t\t\t\t\tchildren.push( vnode );\n\t\t\t\t\t}\n\t\t\t\t\tchild = nextChild || treeWalker.nextSibling();\n\t\t\t\t}\n\t\t\t\ttreeWalker.parentNode();\n\t\t\t}\n\t\t}\n\n\t\t// Restore previous namespace.\n\t\tif ( island ) {\n\t\t\tnamespaces.pop();\n\t\t}\n\n\t\treturn [ h( localName, props, children ) ];\n\t}\n\n\treturn walk( treeWalker.currentNode );\n}\n","/**\n * External dependencies\n */\nimport { hydrate, type ContainerNode, type ComponentChild } from 'preact';\n/**\n * Internal dependencies\n */\nimport { toVdom, hydratedIslands } from './vdom';\nimport { createRootFragment, splitTask } from './utils';\nimport { directivePrefix } from './constants';\n\n// Keep the same root fragment for each interactive region node.\nconst regionRootFragments = new WeakMap();\nexport const getRegionRootFragment = ( region: Element ): ContainerNode => {\n\tif ( ! region.parentElement ) {\n\t\tthrow Error( 'The passed region should be an element with a parent.' );\n\t}\n\tif ( ! regionRootFragments.has( region ) ) {\n\t\tregionRootFragments.set(\n\t\t\tregion,\n\t\t\tcreateRootFragment( region.parentElement, region )\n\t\t);\n\t}\n\treturn regionRootFragments.get( region );\n};\n\n// Initial vDOM regions associated with its DOM element.\nexport const initialVdom = new WeakMap< Element, ComponentChild[] >();\n\n// Initialize the router with the initial DOM.\nexport const init = async () => {\n\tconst nodes = document.querySelectorAll(\n\t\t`[data-${ directivePrefix }-interactive]`\n\t);\n\n\tfor ( const node of nodes ) {\n\t\tif ( ! hydratedIslands.has( node ) ) {\n\t\t\tawait splitTask();\n\t\t\tconst fragment = getRegionRootFragment( node );\n\t\t\tconst vdom = toVdom( node );\n\t\t\tinitialVdom.set( node, vdom );\n\t\t\tawait splitTask();\n\t\t\thydrate( vdom, fragment );\n\t\t}\n\t}\n};\n","/**\n * External dependencies\n */\nimport { h, cloneElement, render } from 'preact';\nimport { batch } from '@preact/signals';\n\n/**\n * Internal dependencies\n */\nimport registerDirectives from './directives';\nimport { init, getRegionRootFragment, initialVdom } from './init';\nimport { directivePrefix } from './constants';\nimport { toVdom } from './vdom';\nimport { directive } from './hooks';\nimport { getNamespace } from './namespaces';\nimport { parseServerData, populateServerData } from './store';\nimport { proxifyState } from './proxies';\n\nexport { store, getConfig } from './store';\nexport { getContext, getElement } from './scopes';\nexport {\n\twithScope,\n\tuseWatch,\n\tuseInit,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseCallback,\n\tuseMemo,\n\tsplitTask,\n} from './utils';\n\nexport { useState, useRef } from 'preact/hooks';\n\nconst requiredConsent =\n\t'I acknowledge that using private APIs means my theme or plugin will inevitably break in the next version of WordPress.';\n\nexport const privateApis = ( lock ): any => {\n\tif ( lock === requiredConsent ) {\n\t\treturn {\n\t\t\tdirectivePrefix,\n\t\t\tgetRegionRootFragment,\n\t\t\tinitialVdom,\n\t\t\ttoVdom,\n\t\t\tdirective,\n\t\t\tgetNamespace,\n\t\t\th,\n\t\t\tcloneElement,\n\t\t\trender,\n\t\t\tproxifyState,\n\t\t\tparseServerData,\n\t\t\tpopulateServerData,\n\t\t\tbatch,\n\t\t};\n\t}\n\n\tthrow new Error( 'Forbidden access.' );\n};\n\nregisterDirectives();\ninit();\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","l","i","r","e","s","a","h","Array","isArray","v","n","u","p","parentNode","removeChild","y","t","f","arguments","length","children","defaultProps","d","type","props","ref","__k","__","__b","__e","__d","__c","constructor","__v","__i","__u","vnode","g","b","this","context","m","k","base","w","push","x","__r","debounceRendering","c","sort","shift","__P","L","__n","ownerSVGElement","M","C","_","P","z","S","nextSibling","String","H","N","insertBefore","I","setProperty","test","T","style","cssText","replace","toLowerCase","slice","Date","now","addEventListener","D","A","removeEventListener","removeAttribute","setAttribute","event","$","contextType","value","__E","render","O","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","forEach","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","indexOf","j","diffed","some","localName","nodeType","document","createTextNode","createElementNS","createElement","is","data","childNodes","attributes","name","__html","innerHTML","current","unmount","componentWillUnmount","q","firstChild","B","E","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","Promise","then","bind","resolve","setTimeout","__H","__V","__N","filter","every","requestAnimationFrame","clearTimeout","cancelAnimationFrame","Error","U","useSignal","__$f","__$u","peek","subscribe","valueOf","toString","toJSON","set","displayName","defineProperties","configurable","__np","objToProxy","WeakMap","proxyToObj","proxyToNs","supported","Set","createProxy","namespace","handlers","shouldProxy","has","proxy","Proxy","getProxyFromObject","getNamespaceFromProxy","candidate","namespaceStack","getNamespace","setNamespace","resetNamespace","pop","scopeStack","getScope","setScope","scope","resetScope","immutableMap","immutableError","immutableHandlers","target","receiver","Reflect","deepImmutable","deleteProperty","getContext","getElement","freeze","afterNextFrame","callback","done","timeout","window","raf","splitTask","withScope","func","ns","async","args","gen","it","next","throw","useWatch","_useEffect","eff","isExecuting","compute","notify","flush","dispose","effect","createFlusher","useSignalEffect","useInit","useEffect","inputs","useLayoutEffect","_useLayoutEffect","useCallback","_useCallback","useMemo","factory","_useMemo","isPlainObject","Boolean","NO_SCOPE","PropSignal","owner","computedsByScope","setValue","update","setGetter","getter","getComputed","valueSignal","getterSignal","computed","batch","signal","wellKnownSymbols","getOwnPropertyNames","Symbol","map","proxyToProps","hasPropSignal","getPropSignal","initial","Map","proxifyState","objToIterable","peeking","stateHandlers","desc","getOwnPropertyDescriptor","result","isNew","undefined","ownKeys","deepMergeRecursive","source","override","deepMerge","storeRoots","WeakSet","storeHandlers","proxifyStore","scoped","isRoot","add","stores","rawStores","storeLocks","storeConfigs","getConfig","universalUnlock","store","block","lock","storeLock","rawStore","proxifiedStore","parseServerData","dom","_dom$getElementById","jsonDataScriptTag","getElementById","textContent","JSON","parse","populateServerData","entries","st","config","Consumer","Provider","splice","createContext","directiveCallbacks","directivePriorities","directive","priority","getEvaluate","entry","path","hasNegationOperator","resolvedStore","split","reduce","acc","Directives","directives","priorityLevels","currentPriorityLevel","nextPriorityLevels","element","originalProps","previousScope","useRef","evaluate","useContext","cloneElement","directiveArgs","directiveName","wrapper","old","options","__directives","find","suffix","byPriority","keys","p1","p2","parseInt","arr","getPriorityLevels","top","contextAssignedObjects","contextObjectToProxy","contextProxyToObject","contextObjectToFallback","descriptor","proxifyContext","inherited","fallback","currentProp","innerValue","updateContext","deepClone","fromEntries","newRule","ruleClean","ruleNewline","getGlobalEventDirective","eventName","cb","globalVar","getGlobalAsyncEventDirective","passive","directivePrefix","ignoreAttr","islandAttr","fullPrefix","namespaces","directiveParser","RegExp","nsPathRegExp","hydratedIslands","toVdom","root","treeWalker","createTreeWalker","walk","node","_nodeValue","replaceWith","Text","nodeValue","remove","elementNode","ignore","island","attributeName","attributeValue","_regexResult$","_regexResult$2","regexResult","exec","parsedValue","item","islandNamespace","directiveMatch","prefix","currentNamespace","_namespaces","content","childNode","child","nextChild","currentNode","regionRootFragments","getRegionRootFragment","region","parentElement","createRootFragment","parent","replaceNode","sibling","concat","insert","appendChild","initialVdom","privateApis","inheritedContext","defaultEntry","inheritedValue","currentValue","watch","init","on","events","eventType","existingHandler","onAsync","class","classNames","className","currentClass","classFinder","trim","classList","styleProp","val","tree","left","unshift","cssStringToObject","removeProperty","attribute","el","err","Type","rest","dangerouslySetInnerHTML","text","run","each","eachKey","itemProp","_match","group1","toUpperCase","itemContext","mergedContext","nodes","querySelectorAll","fragment","vdom","hydrate"],"sourceRoot":""}