From 20464713497fc139e6242edad1d2f5542817cb43 Mon Sep 17 00:00:00 2001 From: MrWangJustToDo Date: Mon, 2 Sep 2024 10:41:19 +0000 Subject: [PATCH] deploy: b5b32183228d72e4e468439be0e9dc61ffbe17e2 --- 404.html | 4 ++-- About.html | 4 ++-- Blog.html | 4 ++-- Tldraw.html | 4 ++-- ...efd4ff.js => main-d284efb2a7ad63ac022f.js} | 2 +- ...s.map => main-d284efb2a7ad63ac022f.js.map} | 2 +- client/manifest-prod.json | 20 +++++++++---------- ...a.js => page-Blog-42bb0644b5a7e608912f.js} | 2 +- ... => page-Blog-42bb0644b5a7e608912f.js.map} | 2 +- ...a14.js => runtime-c0914aad1214609be391.js} | 2 +- ...ap => runtime-c0914aad1214609be391.js.map} | 2 +- ...1d4c.js => vendor-ee387b4d2fe8fe3d186b.js} | 6 +++--- ...endor-ee387b4d2fe8fe3d186b.js.LICENSE.txt} | 8 ++++++++ ...map => vendor-ee387b4d2fe8fe3d186b.js.map} | 2 +- client/vendor-react-8ece0995c3f1998d7759.js | 2 ++ ...react-8ece0995c3f1998d7759.js.LICENSE.txt} | 6 ++++++ .../vendor-react-8ece0995c3f1998d7759.js.map | 1 + client/vendor-react-dc6954c7752ce10ecd92.js | 2 -- .../vendor-react-dc6954c7752ce10ecd92.js.map | 1 - index.html | 4 ++-- pages/404.html | 4 ++-- pages/About.html | 4 ++-- pages/Blog.html | 4 ++-- pages/Tldraw.html | 4 ++-- pages/index.html | 4 ++-- server/app.js | 2 +- 26 files changed, 58 insertions(+), 44 deletions(-) rename client/{main-2668fdb87e07daefd4ff.js => main-d284efb2a7ad63ac022f.js} (99%) rename client/{main-2668fdb87e07daefd4ff.js.map => main-d284efb2a7ad63ac022f.js.map} (99%) rename client/{page-Blog-e25acfdca062c0e3223a.js => page-Blog-42bb0644b5a7e608912f.js} (99%) rename client/{page-Blog-e25acfdca062c0e3223a.js.map => page-Blog-42bb0644b5a7e608912f.js.map} (99%) rename client/{runtime-75be0b97f0bc29687a14.js => runtime-c0914aad1214609be391.js} (98%) rename client/{runtime-75be0b97f0bc29687a14.js.map => runtime-c0914aad1214609be391.js.map} (99%) rename client/{vendor-1b2d4de84f946d001d4c.js => vendor-ee387b4d2fe8fe3d186b.js} (53%) rename client/{vendor-1b2d4de84f946d001d4c.js.LICENSE.txt => vendor-ee387b4d2fe8fe3d186b.js.LICENSE.txt} (97%) rename client/{vendor-1b2d4de84f946d001d4c.js.map => vendor-ee387b4d2fe8fe3d186b.js.map} (53%) create mode 100644 client/vendor-react-8ece0995c3f1998d7759.js rename client/{vendor-react-dc6954c7752ce10ecd92.js.LICENSE.txt => vendor-react-8ece0995c3f1998d7759.js.LICENSE.txt} (81%) create mode 100644 client/vendor-react-8ece0995c3f1998d7759.js.map delete mode 100644 client/vendor-react-dc6954c7752ce10ecd92.js delete mode 100644 client/vendor-react-dc6954c7752ce10ecd92.js.map diff --git a/404.html b/404.html index fe650f91..afdc80d5 100644 --- a/404.html +++ b/404.html @@ -1,4 +1,4 @@ -
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
\ No newline at end of file diff --git a/About.html b/About.html index b2e52fec..4cda0406 100644 --- a/About.html +++ b/About.html @@ -1,4 +1,4 @@ -
@my-react/react
@my-react/react-dom
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
@my-react/react
@my-react/react-dom
\ No newline at end of file diff --git a/Blog.html b/Blog.html index 4c449aca..47aaded2 100644 --- a/Blog.html +++ b/Blog.html @@ -1,4 +1,4 @@ -


\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}


\ No newline at end of file diff --git a/Tldraw.html b/Tldraw.html index afc3ebd1..0aa74424 100644 --- a/Tldraw.html +++ b/Tldraw.html @@ -1,4 +1,4 @@ -
Loading ...
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
Loading ...
\ No newline at end of file diff --git a/client/main-2668fdb87e07daefd4ff.js b/client/main-d284efb2a7ad63ac022f.js similarity index 99% rename from client/main-2668fdb87e07daefd4ff.js rename to client/main-d284efb2a7ad63ac022f.js index 4722da37..9c5c01e9 100644 --- a/client/main-2668fdb87e07daefd4ff.js +++ b/client/main-d284efb2a7ad63ac022f.js @@ -1 +1 @@ -(self.webpackChunk_my_react_ssr_example=self.webpackChunk_my_react_ssr_example||[]).push([[792],{44610:(e,t,n)=>{"use strict";e.exports=n(21702)},21702:(e,t,n)=>{"use strict";var r,i=n(6696),o=n(61732),a={exports:{}},u={};a.exports=(r||(r=1,function(e){var t,n=o,r={exports:{}},a={};r.exports=(t||(t=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]")},Le=function(e){return"".concat(Ie(e)," ").concat("")},Me=function(e){return"%c".concat(Ie(e),"%c (%o)")},je=function(e){if(e){var t="".padEnd(4)+"at".padEnd(3),n="",r=e;if(Se.current)for(;r;)we(r)&&(n?n+="\n".concat(t).concat(Le(r)):n="".concat(t).concat(Le(r))),r=r.parent;else for(;r;)n?n+="\n".concat(t).concat(Le(r)):n="".concat(t).concat(Le(r)),r=r.parent;return"\n".concat(n)}return""},Ye=function(e,t){for(var n="".toString().padEnd(3),r="\n"+n+"Last render:".padEnd(28)+"Next render:".padEnd(10)+"\n"+n+"-".repeat(44)+"\n",i=n+c.HOOK_TYPE[t.lastRender].padEnd(28)+c.HOOK_TYPE[t.nextRender].padEnd(10)+"\n";e&&e.value;){var o=e.value.type;i=n+c.HOOK_TYPE[o].padEnd(28)+c.HOOK_TYPE[o].padEnd(10)+"\n"+i,e=e.prev}return"[@my-react/react] hook for current component has a different state on current render and previous render, this is not a valid usage."+r+(i+(n+"^".repeat(44)))},Ue=function(e,t){for(var n,r,i=[],o=2;o5)throw new Error("lazy() load loop count is too much");return[3,1];case 3:return t.reconcileCommit(e),a=t.pendingCommitFiberList,u=t.pendingChangedFiberList,t.resetUpdateFlowRuntimeFiber(),t.pendingCommitFiberList=null,t.pendingChangedFiberList=null,(null==a?void 0:a.length)&&t.reconcileUpdate(a),(null==u?void 0:u.length)&&ge((function(){var e,n;return null===(n=null===(e=he.get(t))||void 0===e?void 0:e.fiberHasChange)||void 0===n?void 0:n.forEach((function(e){return e(u)}))})),Rn.current=!1,[2]}}))}))},e.mountLoop=Dn,e.nextWorkClassComponent=_n,e.nextWorkCommon=fn,e.nextWorkComponent=hn,e.nextWorkConsumer=yn,e.nextWorkFunctionComponent=mn,e.nextWorkLazy=vn,e.nextWorkNormal=pn,e.onceErrorWithKey=function(e){for(var t,n,r=[],i=1;it.performanceLogTimeLimit;sn.current&&a&&Ue(e,"performance","[@my-react/react] render current component take a lot of time, there have a performance warning"),a&&Te({fiber:e,action:function(){var n,r;return null===(r=null===(n=he.get(t))||void 0===n?void 0:n.performanceWarn)||void 0===r?void 0:r.forEach((function(t){return t(e)}))}});var u=e,l=i;if(dn.current)if(u.state===c.STATE_TYPE.__create__)u._debugRenderState={mountTimeStep:l,timeForRender:o,maxTimeForRender:o},u._debugIsMount=!0;else{var d=Object.assign({},u._debugRenderState),p=d.updateTimeStep||d.mountTimeStep;u._debugRenderState={renderCount:(d.renderCount||0)+1,mountTimeStep:d.mountTimeStep,updateTimeStep:l,trigger:f.current,timeForRender:o,timeForUpdate:l-p,maxTimeForRender:Math.max(d.maxTimeForRender,o)}}return r},e.safeCall=ge,e.safeCallWithFiber=Te,e.safeCallWithSync=function(e){for(var t=[],n=1;n0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c", client: "').concat(c.getElementName(e),'"')),!1}return t}if(y.include(e.type,c.NODE_TYPE.__plain__))return t.nodeType!==Node.ELEMENT_NODE||e.elementType.toString().toLowerCase()!==t.nodeName.toLowerCase()?(O.current&&Le(e,"error",'hydrate error, dom not match from server. server: "<'.concat(t.nodeName.toLowerCase(),' />", client: "').concat(c.getElementName(e),'"')),!1):t;if(y.include(e.type,c.NODE_TYPE.__comment__))return t.nodeType!==Node.COMMENT_NODE?(O.current&&Le(e,"error",'hydrate error, dom not match from server. server: "<'.concat(t.nodeName.toLowerCase(),' />", client: "').concat(c.getElementName(e),'"')),!1):t;throw new Error("[@my-react/react-dom] hydrate error, look like a bug")}(e,r);return i?e.nativeNode=i:W(r),i}(e,o,n);return Boolean(a)}return!1}(e,r||t,t._previousNativeNode);a||K(e,i,r||t),o=a}else K(e,i,r||t);return t.isHydrateRender&&e.nativeNode,e.patch=y.remove(e.patch,y.PATCH_TYPE.__create__),o}return n},q=function(e,t){w(e)&&L(e,t.runtimeMap.eventMap,e.nativeNode,"onChange")},Q=function(e,t){if(e.nativeNode){var n=!!ct(e,t);if(y.include(e.type,c.NODE_TYPE.__plain__)){var r=e.pendingProps;Object.keys(r).forEach((function(i){if(Ce(i))!function(e,t,n){var r=e.nativeNode;L(e,t.runtimeMap.eventMap,r,n)}(e,t,i);else if(De(i))!function(e,t,n){var r=e.nativeNode;Object.keys(n).forEach((function(e){return j(0,r,e,n[e])}))}(e,0,r[i]||{});else if(Re(i))try{!function(e,t,n,r){var i,o=e.nativeNode;if(null!=r)if("className"===n)if(t){if(!(c=o.hasAttribute("class")))return O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. no have this attr from server, client: ").concat(r)),void o.setAttribute("class",r);(l=null===(i=o.getAttribute("class"))||void 0===i?void 0:i.toString())!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. server: ").concat(l,", client: ").concat(r)),o.setAttribute("class",r))}else o[n].toString()!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. server: ").concat(o[n],", client: ").concat(r)),o[n]=r);else if(t&&120===n.charCodeAt(0))if(n.startsWith("xmlns")){var a=o.getAttributeNS(B,n);String(a)!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' props not match from server. server: ").concat(a,", client: ").concat(r)),o.setAttributeNS(B,n,String(r)))}else n.startsWith("xlink")?(a=o.getAttributeNS(V,"href"),String(a)!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom 'href' props not match from server. server: ".concat(a,", client: ").concat(r)),o.setAttributeNS(V,"href",String(r)))):(a=o.getAttribute(n),String(a)!==String(r)&&O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' attr not match from server. server: ").concat(a,", client: ").concat(r)),o.setAttribute(n,String(r)));else if(!(n in o)||t||H(0,n)){var u=(t?_t(n):pt(n))||n,c=o.hasAttribute(u),l=o.getAttribute(u);if(!1===r){if(u.includes("-"))"false"!==l&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r)),o.setAttribute(u,r));else if(null!=l){if("false"===l)return;O.current&&Le(e,"warn","hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r)),o.removeAttribute(u)}}else(null==l?void 0:l.toString())!==String(r)&&(O.current&&Le(e,"warn",c?"hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r):"hydrate warning, dom '".concat(u,"' attr not match from server. no have this attr from server, client: ").concat(r)),o.setAttribute(u,String(r)))}else if(o[n].toString()!==String(r)){O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' props not match from server. server: ").concat(o[n],", client: ").concat(r));try{o[n]=!1===r?"":r}catch(e){}}}(e,n,i,r[i])}catch(e){}})),S.current&&k.current&&F[e.elementType]&&(q(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return R(e)}))),function(e){var t,n,r,i=e.pendingProps;if(i.dangerouslySetInnerHTML){var o=e.nativeNode,a=i.dangerouslySetInnerHTML;t=o,n=a.__html,(r=document.createElement("i")).innerHTML=n,r.innerHTML!==t.innerHTML&&(Le(e,"warn","hydrate error, 'innerHTML' not match from server."),o.innerHTML=a.__html)}}(e)}y.include(e.type,c.NODE_TYPE.__text__)&&function(e){var t,n=e.nativeNode;n.textContent!==String(e.elementType)&&(" "===n.textContent&&""===e.elementType?n.textContent="":(O.current&&Le(e,"warn","hydrate warning, dom 'text' not match from server. server: ".concat(n.textContent,", client: ").concat(null===(t=e.elementType)||void 0===t?void 0:t.toString())),n.textContent=e.elementType))}(e)}e.patch=y.remove(e.patch,y.PATCH_TYPE.__update__),e.patch=y.remove(e.patch,y.PATCH_TYPE.__append__),e.patch=y.remove(e.patch,y.PATCH_TYPE.__position__)},X=function(e){return null==e},$=function e(t,n){if(!t)throw new Error("[@my-react/react-dom] position error, look like a bug for @my-react");if(t.patch=y.remove(t.patch,y.PATCH_TYPE.__append__),t.patch=y.remove(t.patch,y.PATCH_TYPE.__position__),!y.include(t.type,c.NODE_TYPE.__portal__))if(y.include(t.type,c.NODE_TYPE.__plain__|c.NODE_TYPE.__text__|c.NODE_TYPE.__comment__)){var r=n,i=n,o=(null==n?void 0:n.nativeNode)||(null==r?void 0:r.containerNode)||i.rootNode,a=t.nativeNode;o.appendChild(a)}else for(var u=t.child;u;)e(u,n),u=u.sibling},J=function e(t){if(!t||y.include(t.state,y.STATE_TYPE.__unmount__))return null;if(y.include(t.type,c.NODE_TYPE.__portal__))return null;if(t.nativeNode)return t;for(var n=t.child;n;){var r=e(n);if(r)return r;n=n.sibling}return null},Z=function e(t){return t?J(t)||e(null==t?void 0:t.sibling):null},ee=function e(t,n){return t?t===n?null:Z(t.sibling)||e(t.parent,n):null},te=function e(t,n,r){if(!t)throw new Error("[@my-react/react-dom] position error, look like a bug for @my-react");if(t.patch=y.remove(t.patch,y.PATCH_TYPE.__append__),t.patch=y.remove(t.patch,y.PATCH_TYPE.__position__),!y.include(t.type,c.NODE_TYPE.__portal__))if(y.include(t.type,c.NODE_TYPE.__plain__|c.NODE_TYPE.__text__|c.NODE_TYPE.__comment__)){var i=r,o=r,a=(null==r?void 0:r.nativeNode)||(null==i?void 0:i.containerNode)||o.rootNode,u=n.nativeNode,l=t.nativeNode;try{a.insertBefore(l,u)}catch(e){a.append(l)}}else for(var s=t.child;s;)e(s,n,r),s=s.sibling},ne=function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__position__)){var n=t.rootFiber,r=ut(e,t),i=ee(e,r||n);i?te(e,i,r||t):$(e,r||t)}},re=o.__my_react_internal__.currentRenderPlatform,ie=function(e,t,n){var r=function e(n,r){var i,o=c.safeCallWithFiber({fiber:n,action:function(){return t.clientCommitCreate(n,r)}});c.safeCallWithFiber({fiber:n,action:function(){return t.clientCommitUpdate(n,o)}}),c.safeCallWithFiber({fiber:n,action:function(){return t.commitAppend(n)}});var a=r;return n.nativeNode&&(t._previousNativeNode=null),n.child&&(a=e(n.child,o)),c.safeCallWithFiber({fiber:n,action:function(){return t.commitSetRef(n)}}),n.nativeNode&&(W(null===(i=t._previousNativeNode)||void 0===i?void 0:i.nextSibling),t._previousNativeNode=n.nativeNode),n.sibling&&e(n.sibling,n.nativeNode?o:a),n.nativeNode?o:a};return function(e,n){var i=c.generateFiberToMountList(e);c.beforeSyncUpdate(),i.listToFoot((function(e){return c.insertionEffect(e,t)})),c.afterSyncUpdate(),r(e,n),delete t._previousNativeNode,c.beforeSyncUpdate(),i.listToFoot((function(e){return c.layoutEffect(e,t)})),c.afterSyncUpdate(),re.current.microTask((function(){return i.listToFoot((function(e){return c.effect(e,t)}))}))}(e,n)},oe=o.__my_react_internal__.initRenderPlatform,ae=o.__my_react_internal__.currentRenderPlatform,ue=o.__my_react_shared__.enableDebugFiled,ce=o.__my_react_shared__.enableScopeTreeLog;function le(e){this.isServer||c.processState(e)}function se(e){var t=this;this.isServer||(e.fiber?c.triggerError(e.fiber,e.error,(function(){t.yieldTask((function(){var t;window.dispatchEvent(new ErrorEvent("error",{error:e.error,message:null===(t=e.error)||void 0===t?void 0:t.message}))}))})):this.yieldTask((function(){var t;window.dispatchEvent(new ErrorEvent("error",{error:e.error,message:null===(t=e.error)||void 0===t?void 0:t.message}))})))}var de=function(){c.enableFiberForLog.current=!0;var e=new rt(!1);oe(e)},fe=function(){var e=ae.current;e||de(),ue.current=!0,ce.current=!0,(e=ae.current).isServer=!1,e.dispatchState=le,e.dispatchHook=c.processHookNode,e.dispatchError=se},pe=function e(t){if(t&&!y.include(t.state,y.STATE_TYPE.__unmount__)){var n=t;if(t.nativeNode)return t.nativeNode;if(n.containerNode)return n.containerNode;for(var r=t.child;r;){var i=e(r);if(i)return i;r=r.sibling}}};o.__my_react_shared__.enableHMRForDev;var _e=o.__my_react_internal__.currentRenderPlatform,me=function(e){var t=e.__container__,n=t.rootFiber,r=_e.current;n&&t&&n instanceof c.MyReactFiberNode&&t instanceof Ne?(ze(t),c.unmountContainer(t,(function(){var e,n;return null===(n=null===(e=r.dispatchSet)||void 0===e?void 0:e.uniDelete)||void 0===n?void 0:n.call(e,t)}))):Le(n,"error","can not unmount app for current container")},he=o.__my_react_internal__.currentRenderPlatform;o.__my_react_shared__.enableLegacyLifeCycle,o.__my_react_shared__.enableConcurrentMode,o.__my_react_shared__.enablePerformanceLog;var ve=y.once((function(){console.log("you are using %c@my-react%c to render this site, version: '".concat("0.3.2","'. see https://github.com/MrWangJustToDo/MyReact"),"color: white;background-color: rgba(10, 190, 235, 0.8); border-radius: 2px; padding: 2px 5px","")}));y.once((function(){console.log("[@my-react/react] performance warning log have been enabled!")})),y.once((function(){console.log("[@my-react/react] concurrent mode have been enabled!")})),y.once((function(){console.log("[@my-react/react] legacy 'UNSAFE' lifeCycle have been enabled!")}));var ye=function e(t,n,r){if(!o.isValidElement(t))throw new Error("[@my-react/react-dom] 'render' can only render a '@my-react' element");fe();var i=n,a=i.__container__;if(a instanceof c.CustomRenderDispatch){var u=a.rootFiber;if(a.isAppCrashed||y.include(u.state,y.STATE_TYPE.__unmount__))return i.__fiber__=null,i.__container__=null,ze(a),void e(t,i);if(c.checkIsSameType(u,t))return u._installElement(t),void c.triggerUpdate(u,y.STATE_TYPE.__triggerSync__,r);me(i)}!function(e,t,n){var r,i;fe(),ve();var o=new c.MyReactFiberNode(e),a=new Ne(t,o),u=he.current;u.dispatchSet.uniPush(a),Array.from(t.children).forEach((function(e){var t;return null===(t=e.remove)||void 0===t?void 0:t.call(e)})),n&&a.pendingEffect(o,n),null===(r=t.removeAttribute)||void 0===r||r.call(t,"hydrate"),null===(i=t.setAttribute)||void 0===i||i.call(t,"render","@my-react"),t.__fiber__=o,t.__container__=a,a.enableASyncHydrate=!1,a.isClientRender=!0,qe(a,u),c.initialFiberNode(o,a),Qe(o,a),delete a.isClientRender}(t,i,r)},Ee=o.__my_react_internal__.currentRenderPlatform;o.__my_react_shared__.enableLegacyLifeCycle,o.__my_react_shared__.enableConcurrentMode,o.__my_react_shared__.enablePerformanceLog;var ge=function(e,t,n){if(!o.isValidElement(e))throw new Error("[@my-react/react-dom] 'hydrate' can only render a '@my-react' element");fe(),ve(),A.current?function(e,t,n){f(void 0,void 0,void 0,(function(){var r,i,o,a;return p(this,(function(u){switch(u.label){case 0:return r=new c.MyReactFiberNode(e),i=new Ne(t,r),(o=Ee.current).dispatchSet.uniPush(i),n&&i.pendingEffect(r,n),null===(a=t.setAttribute)||void 0===a||a.call(t,"hydrate","@my-react"),t.__fiber__=r,t.__container__=i,i.enableASyncHydrate=!0,i.isHydrateRender=!0,qe(i,o),c.initialFiberNode(r,i),[4,Xe(r,i)];case 1:return u.sent(),delete i.isHydrateRender,[2]}}))}))}(e,t,n):function(e,t,n){var r,i=new c.MyReactFiberNode(e),o=new Ne(t,i),a=Ee.current;a.dispatchSet.uniPush(o),n&&o.pendingEffect(i,n),null===(r=t.setAttribute)||void 0===r||r.call(t,"hydrate","@my-react"),t.__fiber__=i,t.__container__=o,o.enableASyncHydrate=!1,o.isHydrateRender=!0,qe(o,a),c.initialFiberNode(i,o),Qe(i,o,!0),delete o.isHydrateRender}(e,t,n)};y.once((function(e){console.log("[@my-react/react-dom] you are using new entry function '".concat(e,"'"))}));var Te=o.__my_react_internal__.currentRenderPlatform,be=function(e,t){return f(void 0,void 0,void 0,(function(){var n,r,o;return p(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,3,4]),t._loading=!0,[4,t.loader()];case 1:return n=a.sent(),r="object"!==i(n)||"function"!=typeof(null==n?void 0:n.default)&&"object"!==i(null==n?void 0:n.default)?n:n.default,t._loaded=!0,t.render=r,t._update(e,t.render),[3,4];case 2:return o=a.sent(),Te.current.dispatchError({fiber:e,error:o}),[3,4];case 3:return t._loading=!1,[7];case 4:return[2]}}))}))};o.__my_react_shared__.enableScopeTreeLog;var ke,Se,Ae={typeForRef:c.NODE_TYPE.__plain__|c.NODE_TYPE.__class__,typeForCreate:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__portal__|c.NODE_TYPE.__comment__,typeForUpdate:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__comment__,typeForAppend:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__comment__,typeForNativeNode:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__portal__|c.NODE_TYPE.__comment__},Pe=new Map,Ne=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.rootNode=t,r.rootFiber=n,r.runtimeDom={svgMap:new WeakMap,elementMap:new WeakMap},r.version="0.3.2",r.enableUpdate=!0,r.runtimeRef=Ae,r._previousNativeNode=null,r.performanceLogTimeLimit=T.current,r.enableASyncHydrate=A.current,Pe.set(r,{domAppend:new Set,domUpdate:new Set,domSetRef:new Set}),r}return s(t,e),t.prototype.onDOMAppend=function(e){var t=Pe.get(this).domAppend;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMAppend=function(e){var t=Pe.get(this).domAppend;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.onDOMUpdate=function(e){var t=Pe.get(this).domUpdate;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMUpdate=function(e){var t=Pe.get(this).domUpdate;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.onDOMSetRef=function(e){var t=Pe.get(this).domSetRef;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMSetRef=function(e){var t=Pe.get(this).domSetRef;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.clientCommitCreate=function(e,t){return z(e,this,!!t)},t.prototype.commitCreate=function(e){this.clientCommitCreate(e)},t.prototype.clientCommitUpdate=function(e,t){var n,r,i;n=e,r=this,i=!!t,y.include(n.patch,y.PATCH_TYPE.__update__)&&(i?Q(n,r):function(e,t,n){var r;if(!e.nativeNode)throw new Error("[@my-react/react-dom] update error, dom not exist");var i=e.nativeNode,o=!!t.runtimeDom.svgMap.get(e);if(y.include(e.type,c.NODE_TYPE.__text__))i.textContent=e.elementType;else if(y.include(e.type,c.NODE_TYPE.__plain__)){var a=i,u=e.memoizedProps||{},l=e.pendingProps||{};if(U(u,l).forEach((function(n){var r=u[n],c=l[n];if(!(Object.is(r,c)||X(c)&&X(r)))if(Ce(n))M(e,t.runtimeMap.eventMap,i,n),L(e,t.runtimeMap.eventMap,i,n);else if(De(n)){var s=c||{},d=r||{},f=U(d,s);Array.from(f).filter((function(e){return!Object.is(d[e],s[e])})).forEach((function(e){return j(0,a,e,s[e])}))}else if(Re(n))try{!function(e,t,n,r,i){if(r&&120===n.charCodeAt(0))n.startsWith("xmlns")?null==i?t.removeAttributeNS(B,n):t.setAttributeNS(B,n,String(i)):n.startsWith("xlink")?null==i?t.removeAttributeNS(V,"href"):t.setAttributeNS(V,"href",String(i)):null==i?t.removeAttribute(n):t.setAttribute(n,String(i));else if("className"!==n)if(!(n in t)||r||H(0,n))try{var o=(r?_t(n):pt(n))||n;null==i?t.removeAttribute(o):!1===i?o.includes("-")?t.setAttribute(o,String(i)):t.removeAttribute(o):(t.setAttribute(o,String(i)),"INPUT"===t.nodeName&&"autofocus"===o&&requestAnimationFrame((function(){return t.focus()})),"TEXTAREA"===t.nodeName&&"autofocus"===o&&requestAnimationFrame((function(){return t.focus()})))}catch(e){}else try{t[n]=null==i||!1===i?"":String(i)}catch(e){}else r?null==i?t.removeAttribute("class"):t.setAttribute("class",String(i)):t[n]=null==i?"":String(i)}(0,a,n,o,c)}catch(e){}})),S.current&&k.current&&F[e.elementType]&&(n?(q(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return R(e)}))):(function(e,t){e.pendingProps.onChange||e.memoizedProps.onChange||(w(e)?L(e,t.runtimeMap.eventMap,e.nativeNode,"onChange"):M(e,t.runtimeMap.eventMap,e.nativeNode,"onChange"))}(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return function(e){var t=e.nativeNode,n=e.pendingProps.multiple,r=e.pendingProps.value,i=e.pendingProps.defaultValue,o=e.memoizedProps.multiple,a=t;null!=r?D(a,!!n,r,!1):!!o!=!!n&&(null!=i?D(a,!!n,i,!0):D(a,!!n,n?[]:"",!1))}(e)})))),u.dangerouslySetInnerHTML&&!l.dangerouslySetInnerHTML)a.innerHTML="";else if(l.dangerouslySetInnerHTML&&l.dangerouslySetInnerHTML!==u.dangerouslySetInnerHTML&&l.dangerouslySetInnerHTML.__html!==(null===(r=u.dangerouslySetInnerHTML)||void 0===r?void 0:r.__html)){var s=l.dangerouslySetInnerHTML;a.innerHTML=s.__html}}}(n,r,n.memoizedProps===c.emptyProps),c.safeCall((function(){var e;return null===(e=r.patchToCommitUpdate)||void 0===e?void 0:e.call(r,n)})),c.safeCall((function(){var e,t;return null===(t=null===(e=Pe.get(r))||void 0===e?void 0:e.domUpdate)||void 0===t?void 0:t.forEach((function(e){return e(n)}))})),n.memoizedProps=n.pendingProps,n.patch=y.remove(n.patch,y.PATCH_TYPE.__update__))},t.prototype.commitUpdate=function(e){this.clientCommitUpdate(e)},t.prototype.commitAppend=function(e){!function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__append__)){var n=ut(e,t),r=n;if(!(null==e?void 0:e.nativeNode))throw new Error("[@my-react/react-dom] append error, current render node not have a native node");var i=(null==n?void 0:n.nativeNode)||(null==r?void 0:r.containerNode)||t.rootNode,o=e.nativeNode;n&<[n.elementType]||i.appendChild(o),c.safeCall((function(){var n;return null===(n=t.patchToCommitAppend)||void 0===n?void 0:n.call(t,e)})),c.safeCall((function(){var n,r;return null===(r=null===(n=Pe.get(t))||void 0===n?void 0:n.domAppend)||void 0===r?void 0:r.forEach((function(t){return t(e)}))})),e.patch=y.remove(e.patch,y.PATCH_TYPE.__append__)}}(e,this)},t.prototype.commitPosition=function(e){ne(e,this)},t.prototype.commitSetRef=function(e){Be(e,this)},t.prototype.commitUnsetRef=function(e){We(e)},t.prototype.commitClear=function(e){var t;t=e,y.include(t.state,y.STATE_TYPE.__unmount__)||function(e){var t;if(e.nativeNode){var n=e.nativeNode;try{null===(t=n.parentNode)||void 0===t||t.removeChild(n)}catch(t){Le(e,"error","error for remove dom",t)}}}(t)},t.prototype.resolveLazyElement=function(e){return this.enableASyncHydrate?function(e,t){var n=e.elementType;return!0===n._loaded?c.WrapperByScope(o.createElement(n.render,e.pendingProps)):t.isHydrateRender?(t.pendingAsyncLoadFiberList=t.pendingAsyncLoadFiberList||new y.ListTree,t.pendingAsyncLoadFiberList.push(e),null):(!1===n._loading&&be(e,n),c.WrapperByScope(t.resolveSuspense(e)))}(e,this):function(e,t){var n=e.elementType;if(!0===n._loaded){if(t.isHydrateRender)return Promise.resolve().then((function(){n._update(e,n.render)})),c.WrapperByScope(t.resolveSuspense(e));var r=n.render;return c.WrapperByScope(o.createElement(r,e.pendingProps))}return!1===n._loading&&be(e,n),c.WrapperByScope(t.resolveSuspense(e))}(e,this)},t.prototype.reconcileCommit=function(e){var t=this;c.safeCall((function(){var e;return null===(e=t.beforeCommit)||void 0===e?void 0:e.call(t)})),c.safeCall((function(){var e,n;null===(n=null===(e=c.listenerMap.get(t))||void 0===e?void 0:e.beforeCommit)||void 0===n||n.forEach((function(e){return e()}))})),ie(e,this,this.isHydrateRender),c.safeCall((function(){var e,n;null===(n=null===(e=c.listenerMap.get(t))||void 0===e?void 0:e.afterCommit)||void 0===n||n.forEach((function(e){return e()}))})),c.safeCall((function(){var e;return null===(e=t.afterCommit)||void 0===e?void 0:e.call(t)}))},t.prototype.shouldYield=function(){return dt()},t.prototype.patchToFiberInitial=function(e){ot(e,this),je(e,this)},t.prototype.patchToFiberUpdate=function(e){je(e,this)},t.prototype.patchToFiberUnmount=function(e){at(e,this)},t}(c.CustomRenderDispatch),Oe=(ke=function(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()},Se={},function(){for(var e=[],t=0;t ")," (%o)"),t)},16,Ie=null,function(){for(var e=[],t=0;t]/,dt=function(){if(b.current){var e=Date.now()-b.current>T.current;return e&&(b.current=null),e}return b.current=Date.now(),!1},ft=Fe("animationIterationCount,borderImageOutset,borderImageSlice,borderImageWidth,boxFlex,boxFlexGroup,boxOrdinalGroup,columnCount,columns,flex,flexGrow,flexPositive,flexShrink,flexNegative,flexOrder,gridArea,gridRow,gridRowEnd,gridRowSpan,gridRowStart,gridColumn,gridColumnEnd,gridColumnSpan,gridColumnStart,fontWeight,lineClamp,lineHeight,opacity,order,orphans,tabSize,widows,zIndex,zoom,fillOpacity,floodOpacity,stopOpacity,strokeDasharray,strokeDashoffset,strokeMiterlimit,strokeOpacity,strokeWidth"),pt=we("as,accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap"),_t=we("xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan"),mt={className:"class",htmlFor:"for"};o.__my_react_shared__.enableOptimizeTreeLog,Fe(["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"].join(",")),Fe(["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"].join(",")),Fe(["dd","dt","li","option","optgroup","p","rp","rt"].join(","));var ht,vt=function(){function e(e){this.content="",this.parentElement=null,this.content=""===e?" ":e}return e.prototype.toString=function(){return this.content.toString()},e}();s((function(){return null!==ht&&ht.apply(this,arguments)||this}),ht=vt);var yt=function(){function e(){this.parentElement=null}return e.prototype.toString=function(){return"\x3c!-- [ --\x3e"},e}(),Et=function(){function e(){this.parentElement=null}return e.prototype.toString=function(){return"\x3c!-- ] --\x3e"},e}(),gt=function(){function e(e){this.style={},this.attrs={},this.children=[],this.parentElement=null,this.type=e,"html"===e&&(this.attrs=d(d({},this.attrs),{"data-server":"@my-react"}))}return e.prototype.addEventListener=function(){},e.prototype.removeEventListener=function(){},e.prototype.removeAttribute=function(e){delete this.attrs[e]},e.prototype.setAttribute=function(e,t){this.attrs[e]=t.toString()},e.prototype.append=function(){for(var e=this,t=[],n=0;n"):this.type?"<".concat(this.type).concat(this.serialize(),">").concat(this.renderChildren(),""):this.renderChildren()},e}(),Tt=function(e,t){var n;if(y.include(e.patch,y.PATCH_TYPE.__update__)){if(y.include(e.type,c.NODE_TYPE.__plain__)){var r=e.nativeNode,i=e.pendingProps||{};if(Object.keys(i).forEach((function(e){if(Re(e)&&null!==i[e]&&void 0!==i[e]){var n=(t?_t(e):pt(e))||mt[e]||e;!1===i[e]?n.includes("-")?r.setAttribute(n,i[e]):r.removeAttribute(n):r.setAttribute(n,i[e])}if(De(e)){var o=i[e]||{};Object.keys(o).forEach((function(t){if(null!==o[t]&&void 0!==o[t]){if(!ft[t]&&"number"==typeof o[t])return void(r[e][t]="".concat(o[t],"px"));r[e][t]=o[t]}}))}})),i.dangerouslySetInnerHTML){var o=i.dangerouslySetInnerHTML;o.__html&&r.append(new vt(null===(n=o.__html)||void 0===n?void 0:n.toString()))}}e.patch=y.remove(e.patch,y.PATCH_TYPE.__update__)}},bt=function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__create__)){if(y.include(e.type,c.NODE_TYPE.__text__))e.nativeNode=new vt(function(e){var t=""+e,n=st.exec(t);if(!n)return t;var r,i,o="",a=0;for(i=n.index;i{"use strict";e.exports=n(21702)},51151:(e,t,n)=>{"use strict";var r,i=n(6696),o=n(61732),a={exports:{}},u={};a.exports=(r||(r=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c element only support 'key' / 'children' props, but got ".concat(p));if(!(null==s?void 0:s.children))throw new Error("[@my-react/react] need a render function as children, this is unsupported usage");if("function"!=typeof s.children)throw new Error("[@my-react/react] expect a render function as children but got ".concat(s.children,", this is unsupported usage"));if(null===(n=null===(t=s.children)||void 0===t?void 0:t.prototype)||void 0===n?void 0:n.isMyReactComponent)throw new Error("[@my-react/react] invalid render type for , expect a render function but got a class element ".concat(s.children))}else{if(l[c.TYPEKEY]===c.Context)throw new Error("[@my-react/react] look like you are using Context like , this is unsupported usage, please use or ");if(l[c.TYPEKEY]===c.Provider)for(var p in s=e.props)"key"===p||"children"===p||"value"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'value' / 'children' props, but got ".concat(p));else if(l[c.TYPEKEY]===c.ForwardRef){if("function"!=typeof(m=(_=u).render))throw new Error("[@my-react/react] 'forwardRef()' expect a render function but got ".concat(m,", this is unsupported usage"));if(null===(r=m.prototype)||void 0===r?void 0:r.isMyReactComponent)throw new Error("[@my-react/react] invalid render type for 'forwardRef()', expect a render function, but got a element class ".concat(m))}else if(l[c.TYPEKEY]===c.Memo){if("object"===i((_=u).render)){if(f(_.render))throw new Error("[@my-react/react] look like you are using memo like memo(), this is unsupported usage, please change to memo(Foo)");if(_.render[c.TYPEKEY]===c.Memo)throw new Error("[@my-react/react] look like you are using memo like memo(memo(Foo)), this is unsupported usage, please do not wrapper memo more than once");if(_.render[c.TYPEKEY]===c.Lazy)throw new Error("[@my-react/react] look like you are using memo like memo(lazy(loader fun)), this is unsupported usage");if(_.render[c.TYPEKEY]===c.Context)throw new Error("[@my-react/react] look like you are using memo like memo(Context), this is unsupported usage")}else if("function"!=typeof _.render)throw new Error("[@my-react/react] invalid render type for 'memo()', expect a render function or a render object, but got a ".concat(_.render))}else{if(l[c.TYPEKEY]!==c.Lazy)throw new Error("[@my-react/react] invalid object element type, current type is: ".concat(l));var _,m;if("function"!=typeof(m=(_=u).loader))throw new Error("[@my-react/react] invalid argument for lazy(loader), the loader expect a function, but got a ".concat(_.loader));if(null===(o=m.prototype)||void 0===o?void 0:o.isMyReactComponent)throw new Error("[@my-react/react] invalid argument for lazy(loader), the loader expect a function, but got a element class ".concat(_.loader))}}}else{if(u===c.Fragment)for(var p in e.props)"key"===p||"children"===p||"wrap"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'children' props, but got ".concat(p));if(u===c.Suspense)for(var p in e.props)"key"===p||"children"===p||"fallback"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'children' / 'fallback' props, but got ".concat(p))}}e._store.validType=!0}d.current=a}(u),u},t.jsxs=function(e,t,n,r,i){return h(e,t,n)}},3e3:(e,t,n)=>{"use strict";e.exports=n(51151)},14980:(e,t,n)=>{"use strict";e.exports=n(51151)},48979:(e,t,n)=>{"use strict";var r,i=n(6696),o={exports:{}},a={};o.exports=(r||(r=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c1?l.children=n:1===v&&(l.children=n[0]),B({type:e,key:o,ref:a,props:l,_self:u,_source:c,_owner:f.current})}function G(e,t,n){if(null==e)throw new Error("[@my-react/react] cloneElement(...) need a valid element as params");if("object"!==i(e))return e;var r=Object.assign({},e.props),o=e.key,a=e.ref,u=e.type,c=e._self,l=e._source,s=e._owner;if(null!=t){var d=t.ref,p=t.key;t.__self,t.__source;var _=V(t,["ref","key","__self","__source"]);void 0!==d&&(a=d,s=f.current),void 0!==p&&(o=p+"");var m={};if("function"==typeof e.type||"object"===i(e.type)){var h=e.type;m=(null==h?void 0:h.defaultProps)||{}}Object.keys(_).forEach((function(e){return r[e]=void 0===_[e]?m[e]:_[e]}))}var v=arguments.length-2;return v>1?(n=Array.from(arguments).slice(2),r.children=n):1===v&&(r.children=n),B({type:u,key:o,ref:a,props:r,_self:c,_source:l,_owner:s})}var K=function e(t){return Array.isArray(t)?t.reduce((function(t,n){return t.concat(e(n))}),[]):[t]},z=function(e,t,n){var r=K(e);return r.map((function(e,i){return t(e)?n.call(null,e,i,r):e}))},q=function(e){function t(t,n){var r=e.call(this)||this;return r.state=null,r.props=null,r.context=null,r.setState=function(e,t){var n={type:u.UpdateQueueType.component,payLoad:e,callback:t,trigger:r,isForce:!1,isSync:y.current},i=p.current;null==i||i.dispatchState(n)},r.forceUpdate=function(){var e={type:u.UpdateQueueType.component,trigger:r,isForce:!0,isSync:y.current},t=p.current;null==t||t.dispatchState(e)},r.props=t||null,r.context=n||null,r}return H(t,e),Object.defineProperty(t.prototype,"isReactComponent",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isMyReactComponent",{get:function(){return!0},enumerable:!1,configurable:!0}),t.prototype.render=function(){return null},t}(M),Q=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return H(t,e),t.prototype.shouldComponentUpdate=function(e,t,n){return!u.isNormalEquals(e,this.props)||!u.isNormalEquals(t,this.state)||!u.isNormalEquals(n,this.context)},t}(q),X=[],$=function(e,t){return"function"==typeof t?t(e):t},J=q,Z=Q,ee=O.current?"18.2.0":"0.3.2",te={enableMockReact:O,enableDebugLog:v,enableSyncFlush:y,enableHookStack:E,enableHMRForDev:g,enableDebugFiled:N,enableScopeTreeLog:k,enableLoopFromRoot:h,enableDoubleRender:A,enableConcurrentMode:T,enableLegacyLifeCycle:P,enableOptimizeTreeLog:b,enablePerformanceLog:S},ne={yieldTask:D,macroTask:function(e){F.add(e),w||(w=!0,setTimeout((function(){var e=new Set(F);F.clear(),e.forEach((function(e){return e()})),w=!1})))},microTask:R},re={MyReactInternalInstance:M,globalLoop:s,initRenderPlatform:I,createReadonlyRef:l,currentRunningFiber:d,currentHookTreeNode:_,currentHookNodeIndex:m,currentComponentFiber:f,currentRenderPlatform:p},ie={map:function(e,t,n){if(null==e)return e;var r=[];return z(e,(function(){return!0}),(function(e,o){var a=e;null!=e&&"boolean"!=typeof e||(a=null);var u=t(a,o,n);return L(u)?r.push(G(u,{key:"object"===i(u)?"string"==typeof(null==u?void 0:u.key)?"".concat(u.key):".".concat(o):null})):null!=u&&r.push(u),u})),r},only:function(e){if(L(e))return e;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return!0;throw new Error("[@my-react/react] Children.only() expected to receive a single MyReact element child.")},count:function e(t){return Array.isArray(t)?t.reduce((function(t,n){return t+e(n)}),0):1},toArray:function(e){var t=[];return z(e,(function(e){return null!=e&&"boolean"!=typeof e}),(function(e,n){return L(e)?t.push(G(e,{key:"object"===i(e)?"string"==typeof(null==e?void 0:e.key)?"".concat(e.key):".".concat(n):null})):t.push(e),e})),t},forEach:function(e,t,n){null!=e&&z(e,(function(){return!0}),(function(e,r){var i=e;return(void 0===e||null===e&&"boolean"==typeof e)&&(i=null),t(i,r,n)}))}};t.Children=ie,t.Component=J,t.Fragment=u.Fragment,t.Profiler=u.Profiler,t.PureComponent=Z,t.StrictMode=u.Strict,t.Suspense=u.Suspense,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED={ReactCurrentActQueue:{},ReactCurrentBatchConfig:{},ReactCurrentDispatcher:{current:{}},ReactCurrentOwner:{current:null},ReactDebugCurrentFrame:{}},t.__my_react_internal__=re,t.__my_react_scheduler__=ne,t.__my_react_shared__=te,t.cloneElement=G,t.createContext=function(e){var t,n,r,i=((t={})[u.TYPEKEY]=u.Context,t.contextId=j++,t.Provider={},t.Consumer={},t),o=((n={})[u.TYPEKEY]=u.Provider,n.value=e,n.Context=Y,n),a=((r={})[u.TYPEKEY]=u.Consumer,r.Internal=M,r.Context=Y,r);return Object.defineProperty(o,"Context",{get:function(){return i},enumerable:!1,configurable:!1}),Object.defineProperty(a,"Context",{get:function(){return i},enumerable:!1,configurable:!1}),i.Provider=o,i.Consumer=a,i},t.createElement=W,t.createFactory=function(e){return function(t){for(var n=[],r=1;r{"use strict";e.exports=n(48979)},66424:(e,t,n)=>{"use strict";e.exports=n(3e3)},87411:(e,t,n)=>{"use strict";n.d(t,{A7W:()=>ce,BVy:()=>Hn,DJi:()=>le,GYB:()=>Mn,H4n:()=>In,Hjw:()=>Un,LYV:()=>Ln,YgP:()=>Yn,cUd:()=>jn,qqm:()=>Se});var r=n(21808),i=n(32278),o=n(63222),a=n(18128),u=n(51051),c=n(61732),l=n(66752),s=n(28125),d=n(11459),f=n(91945),p=function(){return p=Object.assign||function(e){for(var t,n=1,r=arguments.length;n>1})).map((function(e){return String.fromCharCode(e)})).join(""),Dn=new i.P({uri:"https://api.github.com/graphql",fetch:"function"==typeof d.fetch?(0,f.generateFetchWithTimeout)(5e3):d.fetch}),Rn=(0,s.S)((function(e){var t=e.networkError,n=e.graphQLErrors;t&&console.error("network error \n[message]: ".concat(t.message," \n[stack]: ").concat(t.stack)),(null==n?void 0:n.length)&&n.forEach((function(e){console.error("graphql error \n[message]: ".concat(e.message," \n[stack]: ").concat(e.path))}))})),Fn=(0,l.o)((function(e,t){var n=t.headers;return{headers:p(p({},n),{Authorization:"token ".concat(On?atob(Cn):Buffer.from(Cn,"base64").toString())})}})),wn="undefined"==typeof window,xn=function(e,t){void 0===e&&(e={});var n=null!=m?m:function(e,t){void 0===e&&(e={});var n=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{"use strict";n.d(t,{d:()=>r});var r=1580},28769:(e,t,n)=>{"use strict";var r=n(92889),i=n(44610),o=n(66475),a=n(25508),u=n(58689),c=n(5857),l=n(61732),s=n(81867),d=n(40803),f=n(18125),p=n(35237).m,_=n(23497);var m,h=n(14980),v=(0,l.forwardRef)((function(e,t){return(0,_.Su)((function(){m||(m=document.createElement("div")),m.id="__loading_bar__";var e=document.body.querySelector("#__content__");document.body.insertBefore(m,e)})),(0,_.aq)()?(0,r.createPortal)((0,h.jsx)("div",{ref:t,className:"ITbAOd",style:{height:"0px",transform:"scale(0, 1)"}}),m):null})),y=(0,l.memo)(v),E=function(){var e=(0,_.M3)((function(e){return e.loading})),t=(0,_.zX)({loading:e}).ref;return(0,h.jsx)(y,{ref:t})},g=n(54044),T=n(53177),b=n(29671),k=n(47965),S=(0,l.createContext)(null),A=function(e){var t=e.children,n=e.routes,r=e.LoadingBar,i=(0,_.JO)({routes:n,preLoad:k.ws}).loaded;return i?(0,h.jsxs)(S.Provider,{value:i,children:[(0,h.jsx)(r,{}),t]}):null},P=function(){var e=(0,l.useContext)(S),t=(0,b.Ye)(p,null==e?void 0:e.location),n=(0,_.aq)();return(0,h.jsx)(h.Fragment,{children:(0,o.getIsAnimateRouter)()?(0,h.jsx)(g.N,{exitBeforeEnter:!0,children:(0,h.jsx)(l.Fragment,{children:(0,h.jsx)(T.P.div,{initial:n?"initial":"in",animate:"in",exit:"out",style:{height:"fit-content"},variants:{initial:{opacity:.2,translateY:-100,transformOrigin:"center top",scale:.8,borderRadius:6,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.2), 1px -1px 2px 4px rgba(0, 0, 0, 0.2)"},in:{opacity:1,translateY:0,scale:1,transformOrigin:"center top",borderRadius:0,boxShadow:"0px 0px 0px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 0px rgba(0, 0, 0, 0.1)"},out:{opacity:0,translateY:200,scale:.8,transformOrigin:"center top",borderRadius:10,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.1), 1px -1px 2px 4px rgba(0, 0, 0, 0.1)"}},transition:{type:"spring",damping:10,stiffness:50},"data-animate-route":!0,children:(0,h.jsx)(l.Suspense,{children:t})})},null==e?void 0:e.location.pathname)}):(0,h.jsx)(l.Suspense,{children:t})})},N=n(11081),O=n(87411),C=function(e){var t=e.children,n=(0,o.useAppSelector)((function(e){return e.client.clientProps.data})),r=(0,b.zy)().pathname,i=n[(0,k.HG)(r)],a=null==i?void 0:i.$$__apollo__$$,u=(0,O.LYV)(a,!0);return(0,h.jsx)(N.X,{client:u,children:t})},D=n(48945),R=n(33465),F=n(73137),w=n(41410),x=n(6910);var I=function(e){(0,F.A)(i,e);var t,n,r=(t=i,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=(0,x.A)(t);if(n){var i=(0,x.A)(this).constructor;e=Reflect.construct(r,arguments,i)}else e=r.apply(this,arguments);return(0,w.A)(this,e)});function i(){var e;(0,D.A)(this,i);for(var t=arguments.length,n=new Array(t),o=0;o{"use strict";n.d(t,{RX:()=>O,Gi:()=>N,yx:()=>P,M0:()=>p,B0:()=>m,Su:()=>M,wt:()=>c,mZ:()=>B,XH:()=>X,al:()=>x,aq:()=>I,dX:()=>W,M3:()=>u,zX:()=>L,Qc:()=>V,TP:()=>F,dn:()=>R,j3:()=>D,pI:()=>C,JO:()=>E,lW:()=>Y});var r=n(66475),i=n(39368),o=n(72932),a=n(77825),u=(0,a.ur)((0,a.wR)((function(){return{loading:!1}}),{generateActions:function(e){return{setLoading:function(t){e.loading=t}}}}),{withNamespace:"useLoading",withDeepSelector:!1}),c=(0,a.ur)((function(){return{state:!0}}),{withActions:function(e){return{enable:function(){return e.state=!0},disable:function(){return e.state=!1}}},withNamespace:"useFoot"}),l=n(2694),s=n(61500),d=n(61732),f=n(9245),p=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,n=(0,d.useState)(e),r=(0,s.A)(n,2),i=r[0],o=r[1];return[i,(0,d.useMemo)((function(){return(0,f.A)(o,t)}),[t])]},_={width:0,height:0,left:0,right:0,top:0,bottom:0,x:0,y:0};function m(e){var t=e.ref,n=e.cssSelector,r=e.deps,i=p(_,100),o=(0,s.A)(i,2),a=o[0],u=o[1];return(0,d.useEffect)((function(){var e=t?t.current:n?document.querySelector(n):null;if(e){if(window.ResizeObserver){var r=new ResizeObserver((function(){u(e.getBoundingClientRect())}));return r.observe(e),function(){return r.disconnect()}}var i=function(){return u(e.getBoundingClientRect())};return i(),window.addEventListener("resize",i,{passive:!0}),function(){return window.removeEventListener("resize",i)}}}),[t,n,u].concat((0,l.A)(r||[]))),a}var h=n(40803),v=n(29671),y=n(18125),E=function(e){var t=e.routes,n=e.preLoad,a=(0,d.useRef)(),c=(0,h.Pj)(),l=(0,v.zy)(),f=(0,v.Zp)(),p=(0,y.ok)(),_=(0,s.A)(p,1)[0],m=u((function(e){return e.setLoading})),E=(0,d.useRef)(!!(0,r.getIsP_CSR)()),g=(0,d.useRef)(""),T=(0,d.useRef)(""),b=(0,d.useRef)(null),k=(0,d.useRef)(null),S=(0,d.useRef)(c),A=(0,d.useState)((0,r.getIsP_CSR)()?void 0:{location:l,query:_}),P=(0,s.A)(A,2),N=P[0],O=P[1];return T.current="".concat(l.pathname,"?").concat(_.toString()),g.current=N?"".concat(N.location.pathname,"?").concat(N.query.toString()):"",S.current=c,(0,d.useEffect)((function(){if(E.current)E.current=!1;else{var e=a.current&&a.current==="".concat(l.pathname,"?").concat(_.toString());e||m(!1),g.current!=="".concat(l.pathname,"?").concat(_.toString())&&(e||(b.current&&clearTimeout(b.current),b.current=null,k.current&&clearTimeout(k.current),k.current=null,b.current=setTimeout((function(){m(!0)}),200)),function(e,r){n(t,e.pathname,r,S.current).then((function(t){var n="".concat(e.pathname,"?").concat(r.toString());if(n===T.current){var u,c=t||{},l=c.redirect,s=c.error,d=c.props;a.current=l?"".concat(l.location.pathName,"?").concat(null===(u=l.location.query)||void 0===u?void 0:u.toString()):"",s?(console.error(s),m(!1)):l?f(a.current):k.current=setTimeout((function(){b.current&&clearTimeout(b.current),b.current=null,T.current===n&&(d&&S.current.dispatch((0,o.Go)({name:i.V.clientProps,data:d})),m(!1),O({location:e,query:r}))}),50)}}))}(l,_))}}),[l,n,t,f,_,m]),{loaded:N}},g=n(89206),T=n(47965),b=function(e){var t=document.getElementById(e);t&&(t.style.removeProperty("transform"),t.style.removeProperty("filter"),t.addEventListener("transitionend",(function(){t.style.removeProperty("overflow"),t.style.removeProperty("will-change"),t.style.removeProperty("transition")}),{once:!0}))},k=function(e){e.forEach(b)},S="__content__",A=0,P=(0,d.createContext)((function(){})),N=(0,d.createContext)((function(){})),O=(0,d.createContext)({desktop:[],mobile:[]}),C=function(){var e,t=(0,d.useState)([]),n=(0,s.A)(t,2),r=n[0],i=n[1],o=(0,d.useRef)(r),a=(e=(0,d.useReducer)((function(e){return e+1}),0),(0,s.A)(e,2)[1]);o.current=r;var u=(0,d.useCallback)((function(e,t){(0,T.cb)(0,(function(){var n=o.current.filter((function(n){return t?n.showState||n.id===e:n.showState&&n.id!==e}));if(n.length){var r=n.map((function(e){return e.id})),i=r.slice(0,-1),a=r[r.length-1];[S].concat((0,l.A)(i)).reverse().forEach((function(e,t){return function(e,t){var n=document.querySelector("#".concat(e));if(n){var r=window.innerHeight,i=(r-t)/r;n.style.overflow="hidden",n.style.willChange="transform",n.style.transition="transform 200ms linear",n.style.transform="translateY(calc(env(safe-area-inset-top) + ".concat(t/2,"px)) scale(").concat(i,")"),n.style.filter="blur(0.8px)"}}(e,18+2*t)})),k([a])}else k([S])}),"__overlay_back")}),[]);return{overlays:r,open:(0,d.useCallback)((function(e){var t=e,n=o.current,r=(0,g.A)(n,(function(e){return e.showState}));t.key="__overlay_".concat(A++),t.id="__overlay_".concat(A++),t.height=r?r.height-6:92,t.isFirst=!r,t.showState=!0;var c=t.closeHandler,s=t.closeComplete;t.closeHandler=function(){t.showState=!1,c&&c(),a()},t.closeComplete=function(){s&&s(),i((function(e){var n=e.filter((function(e){return e!==t}));return n.length&&n.reduce((function(e,t){return e.showState?(t.isFirst=!1,t):t.showState?(t.isFirst=!0,t):void 0})),n}))},t.applyOverlay=u,i((function(e){var n=e.filter((function(e){return e.showState}));return[].concat((0,l.A)(n),[t])}))}),[a,u]),close:(0,d.useCallback)((function(e){var t=o.current,n=e||{},r=n.modalId,i=n.closeAll;if(void 0!==r){var a=t.find((function(e){return e.id===r}));null==a||a.closeHandler()}else if(i)t.filter((function(e){return e.showState})).forEach((function(e){return null==e?void 0:e.closeHandler()}));else{var u=(0,g.A)(t,(function(e){return e.showState}));null==u||u.closeHandler()}}),[])}},D=function(){return(0,d.useContext)(P)},R=function(){return(0,d.useContext)(N)},F=function(){return(0,d.useContext)(O)},w=n(22515),x=function(){return(0,w.A)({base:!0,lg:!1})},I=function(){var e=(0,d.useState)(!1),t=(0,s.A)(e,2),n=t[0],r=t[1];return(0,d.useEffect)((function(){r(!0)}),[]),n},L=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.height,n=void 0===t?2.5:t,r=e.present,i=void 0===r?0:r,o=e.loading,a=(0,d.useRef)(null),u=(0,d.useRef)({present:i,height:n});return(0,d.useEffect)((function(){o||(u.current.height=n,u.current.present=i)}),[o,n,i]),(0,d.useEffect)((function(){if(a.current){var e=a.current;if(o){var t,n=2;return t=requestAnimationFrame((function r(){n>.33&&(n-=.04);var i=(u.current.present||0)+n;i=i<99.5?i:99.5,e.style.cssText="height: ".concat(u.current.height,"px;")+"transform: scale(".concat(i/100,", 1);")+"filter: drop-shadow(2px 2px 2px rgba(200, 200, 200, .4))",u.current.present=i,t=requestAnimationFrame(r)})),function(){return cancelAnimationFrame(t)}}return(0,T.cb)(40,(function(){return e.style.transform="scale(1)"}),"loadingBar").then((function(){return(0,T.cb)(80,(function(){return e.style.height="0px"}),"loadingBar")})),function(){return(0,T.ZT)("loadingBar")}}}),[o]),{ref:a}},M=function(e){(0,d.useEffect)((function(){e()}),[])},j=n(35710),Y=function(){var e=p({height:j.B?window.innerHeight:0,width:j.B?window.innerHeight:0}),t=(0,s.A)(e,2),n=t[0],r=t[1];return(0,d.useEffect)((function(){var e=function(){return r({height:window.innerHeight,width:window.innerWidth})};return e(),window.addEventListener("resize",e,{passive:!0}),window.removeEventListener("reset",e)}),[r]),n},U=n(88939),H=(0,a.y$)((function(){var e=(0,U.KR)(0);return{count:e,lock:function(){return e.value++},unlock:function(){e.value--}}})),V=function(){return H((function(e){return e.count}))},B=function(e){return(0,r.useAppSelector)((function(e){return e.client.clientProps.data}))[(0,T.HG)(e)]},W=(0,a.ur)((function(){return{data:{}}}),{withActions:function(e){return{updateLayout:function(t){e.data=t},mergeLayout:function(t){var n=e.data,r={};Object.keys(t).forEach((function(e){r[e]=[];var i=n[e];t[e].forEach((function(t){var n=null==i?void 0:i.find((function(e){return e.i===t.i}));n?r[e].push(n):r[e].push(t)}))})),e.data=r}}},withNamespace:"useListLayoutStore",withDeepSelector:!1}),G=function(e){return function(t,n,r){var i=10+r;return{i:n+t,x:Math.floor(t%e),y:Math.floor(t/e)*i,w:1,maxW:e,h:i,minH:10}}},K=G(1),z=G(2),q=G(3),Q=G(4),X=function(e){return(0,d.useMemo)((function(){var t=e.map((function(e,t){var n=e.id;return K(t,n,4)})),n=e.map((function(e,t){var n=e.id;return z(t,n,6)})),r=e.map((function(e,t){var n=e.id;return q(t,n,10)}));return{lg:e.map((function(e,t){var n=e.id;return Q(t,n,14)})),md:r,sm:n,xs:t,xxs:t}}),[e])}},35237:(e,t,n)=>{"use strict";n.d(t,{m:()=>Fe});var r=n(61732),i=n(66475),o=n(77343),a=n(23497),u=n(14980);function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var l,s,d=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=(0,r.memo)(e);return function(){var e=(0,a.mZ)(t);return(0,u.jsx)(n,function(e){for(var t=1;t div",{minWidth:"1.2em"}),children:[(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:r},r)}),"-",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:i.length>1?i:"0".concat(i)},i)}),"-",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:a.length>1?a:"0".concat(a)},a)}),(0,u.jsx)("div",{children:" "}),(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:c.length>1?c:"0".concat(c)},c)}),":",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:l.length>1?l:"0".concat(l)},l)}),":",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:s.length>1?s:"0".concat(s)},s)})]})}})})]}):null},I=(0,r.memo)(x),L=n(61500),M=n(25555),j=n(92878),Y=n(49176),U=n(57452),H=n(35065),V=n(87411),B=n(50776),W=n(14313),G=n(9245),K=n(45077),z=n(61010),q=n(86616),Q=n(95892),X=n(23032),$=n(12301),J=function(){var e=(0,X.G6)(),t=e.colorMode,n=e.toggleColorMode;return(0,u.jsx)(U.$,{onClick:n,variant:"ghost",size:"sm",children:(0,u.jsx)(S.I,{as:"dark"===t?$.NmZ:$.hGG})})},Z=n(30116),ee=n(91898),te=function(){var e=(0,X.dU)((0,ee.AH)(l||(l=(0,Z.A)(["\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #84898e;\n color: #24292e;\n background: #ffffff;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n "]))),(0,ee.AH)(s||(s=(0,Z.A)(["\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #c9d1d9;\n color: #c9d1d9;\n background: #282936;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #ff7b72;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #d2a8ff;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #79c0ff;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #a5d6ff;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #ffa657;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #8b949e;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #7ee787;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #c9d1d9;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #1f6feb;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #f2cc60;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #c9d1d9;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #c9d1d9;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #aff5b4;\n background-color: #033a16;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #ffdcd7;\n background-color: #67060c;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n "]))));return(0,u.jsx)(ee.mL,{styles:e})};te.displayName="GlobalStyle";var ne={"/":"@my-react","/blog":"blog","/about":"config","/tldraw":"tldraw"},re=function(){var e,t,n=(0,g.zy)(),o=(0,g.Zp)(),a=(0,r.useRef)(null),c=(0,r.useState)("up"),l=(0,L.A)(c,2),s=l[0],d=l[1],f=(0,q.A)().formatMessage,p=(0,B.L)().scrollY;(0,r.useEffect)((function(){var e=(0,G.A)((function(){var e=p.get();null!==a.current&&(e>a.current?d("down"):d("up")),a.current=e}),16);return p.onChange(e),function(){return p.clearListeners()}}),[p]);var _=(0,W.G)(p,[0,.2,.4],[0,.4,1]),m=ne[n.pathname.toLowerCase()]||"@my-react",h=(0,M.IT)(V.BVy,{variables:{name:"MyReact",owner:"MrWangJustToDo"}}),v=h.data,E=h.loading;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsxs)(j.m,{maxWidth:Q.d,paddingX:{base:"3",lg:"6"},className:"site-header",children:[(0,u.jsx)(te,{}),(0,u.jsxs)(T.s,{id:"desktop-header",paddingY:"2",justifyContent:"space-between",alignItems:"center",display:{base:"none",md:"flex"},children:[(0,u.jsx)(b.E,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:f({id:m})}),(0,u.jsxs)(Y.z,{gap:{base:"4px",lg:"8px"},children:[(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/":"/".concat("MyReact","/"))},children:"Home"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Blog":"/".concat("MyReact","/Blog"))},children:"Example"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Tldraw":"/".concat("MyReact","/Tldraw"))},children:"Tldraw"}),!1,(0,u.jsx)(J,{}),(0,u.jsxs)(U.$,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,u.jsx)(S.I,{as:z.SrF}),E?null:(0,u.jsxs)(H.vw,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,u.jsx)(H.Vz,{as:K.gt3,color:"orange.300"}),(0,u.jsx)(H.d1,{children:null==v||null===(e=v.repository)||void 0===e?void 0:e.stargazerCount})]})]})]})]}),(0,u.jsxs)(y.az,{id:"mobile-header",display:{base:"block",md:"none"},height:12,overflow:"hidden",children:[(0,u.jsxs)(T.s,{justifyContent:"space-between",alignItems:"center",height:"up"===s?"full":"0%",width:"full",transition:"height 0.3s",overflow:"hidden",children:[(0,u.jsx)(b.E,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:f({id:m})}),(0,u.jsxs)(Y.z,{gap:{base:"4px",lg:"8px"},children:[(0,u.jsx)(J,{}),(0,u.jsxs)(U.$,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,u.jsx)(S.I,{as:z.SrF}),E?null:(0,u.jsxs)(H.vw,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,u.jsx)(H.Vz,{as:K.gt3,color:"orange.300"}),(0,u.jsx)(H.d1,{children:null==v||null===(t=v.repository)||void 0===t?void 0:t.stargazerCount})]})]})]})]}),(0,u.jsxs)(T.s,{justifyContent:"space-between",alignItems:"center",height:"full",width:"full",children:[(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/":"/".concat("MyReact","/"))},children:"Home"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Blog":"/".concat("MyReact","/Blog"))},children:"Example"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Tldraw":"/".concat("MyReact","/Tldraw"))},children:"Tldraw"}),!1]})]})]}),(0,u.jsx)(O.P.div,{style:{opacity:_,borderBottom:"1px solid rgba(100, 100, 100, .2)"}})]})},ie=(0,r.memo)(re),oe=n(49487),ae=function(){var e=(0,a.Qc)();return(0,u.jsx)(oe.A,{enabled:e>0,className:"placeholder",as:"span",children:(0,u.jsx)(u.Fragment,{})})},ue=n(22515),ce=n(53511),le=n(89470),se=n(16382),de=n(41325),fe=n(98859);function pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var _e=function(e){var t=e.id,n=e.head,i=e.body,c=e.foot,l=e.height,s=e.className,d=e.closeComplete,f=e.closeHandler,p=e.applyOverlay,_=e.isFirst,m=(0,r.useRef)(!1),h=(0,r.useRef)(null),v=(0,r.useRef)(null),E=(0,r.useRef)(!1),g=(0,a.lW)().height,T=(0,de.d)(0),b=(0,W.G)(T,(function(e){return"translateX(2px) rotate(".concat(e,"deg)")})),k=(0,W.G)(T,(function(e){return"translateX(-2px) rotate(".concat(-1*e,"deg)")})),S=(0,de.d)(0),A=(0,r.useCallback)((function(e){e.target&&e.target.contains(v.current)?E.current=!0:E.current=!1}),[]),P=(0,r.useCallback)((function(e,t){var n=t.delta;if(E.current){var r=S.getVelocity();r>0&&T.set(10),r<0&&T.set(-10),S.set(Math.max(S.get()+n.y,0))}}),[]),N=(0,r.useCallback)((function(e,t){if(t.velocity.y>500)f&&f();else{var n,r=h.current,i=null==r||null===(n=r.getBoundingClientRect())||void 0===n?void 0:n.height;S.get()/i>.6?f&&f():(0,fe.i)(S,0,function(e){for(var t=1;t{"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nc,cb:()=>l,xT:()=>b,ws:()=>y,HG:()=>E});var i={},o={},a={},u=0,c=function(e){if(i[e]){var t=i[e].length;i[e]=i[e].map((function(e){return e&&clearTimeout(e)})).slice(t),o[e]=o[e].map((function(e){return e&&e()})).slice(t)}if(u>200){var n,c=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,o=function(){};return{s:o,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,a=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw a}}}}(Object.keys(a).sort((function(e,t){return a[e]>a[t]?1:-1})));try{for(c.s();!(n=c.n()).done;){var l=n.value;l===e||o[l].length||(delete a[l],delete i[l],delete o[l],u--)}}catch(e){c.e(e)}finally{c.f()}}},l=function(e,t,n){return void 0===n?new Promise((function(t){setTimeout((function(){t()}),e)})).then((function(){if(t)return t()})):(n in a?a[n]++:(a[n]=1,i[n]=[],o[n]=[],u++),c(n),new Promise((function(t,r){o[n].push(r),i[n].push(setTimeout((function(){t()}),e))})).then((function(){if(t)return t()})).catch((function(){})))},s=n(77343),d=n(16167),f=n(28092),p=n.n(f),_=n(51051),m=n(33966);function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function v(e){for(var t=1;t{"use strict";n.r(t),n.d(t,{HTML:()=>K,createEmotionCache:()=>Q,createUniversalStore:()=>w,defaultLang:()=>E,getIsAnimateRouter:()=>u,getIsMiddleware:()=>i,getIsP_CSR:()=>c,getIsSSR:()=>o,getIsStaticGenerate:()=>l,getIsStream:()=>a,getPublicApi:()=>s,loadCurrentLang:()=>y,noBase:()=>d,safeData:()=>z,supportedLang:()=>v,theme:()=>j,useAppDispatch:()=>x,useAppSelector:()=>I});var r=n(95056),i=(0,r.A)((function(){return window.__ENV__.isMIDDLEWARE})),o=(0,r.A)((function(){return window.__ENV__.isSSR})),a=(0,r.A)((function(){return window.__ENV__.isSTREAM})),u=(0,r.A)((function(){return window.__ENV__.isANIMATE_ROUTER})),c=(0,r.A)((function(){return window.__ENV__.isPURE_CSR})),l=(0,r.A)((function(){return window.__ENV__.isSTATIC})),s=(0,r.A)((function(){return window.__ENV__.PUBLIC_API_HOST})),d=!1,f=n(16167),p=n(28092),_=n.n(p),m=n(39368),h=n(72932),v={en:"English",zh:"中文"},y=function(){var e=(0,f.A)(_().mark((function e(t,n){return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t((0,h.bN)({name:m.d.serverLang,lang:n}));case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),E="en",g=n(2694),T=n(40803),b=n(90805),k=n(2066),S=n(46837),A=n(18351),P=n(77343),N=n(91945);function O(e){var t=e.done,n=e.lang;return _().mark((function e(){var r,i,o;return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,A.Lt)((function(e){return e.server.serverLang.data}));case 3:if(e.sent[n]){e.next=14;break}return e.next=7,(0,A.yJ)((0,h.$l)({name:m.d.serverLang}));case 7:return r=(0,N.createRequest)({baseURL:s()}),e.next=10,(0,A.T1)((function(e){return r.get(e,{params:{lang:n}})}),"/api/lang");case 10:return i=e.sent,o=i.data.data,e.next=14,(0,A.yJ)((0,h.E5)({name:m.d.serverLang,data:(0,P.A)({},n,o)}));case 14:return e.next=16,(0,A.yJ)((0,h.Go)({name:m.V.clientLang,data:n}));case 16:e.next=23;break;case 18:return e.prev=18,e.t0=e.catch(0),e.next=23,(0,A.yJ)((0,h.J3)({name:m.d.serverLang,error:e.t0.toString()}));case 23:return e.prev=23,t(),e.finish(23);case 26:case"end":return e.stop()}}),e,null,[[0,18,23,26]])}))()}var C=_().mark(D);function D(){return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,A.Q7)([(0,A.p8)(h.qG.GET_DATA_ACTION(m.d.serverLang),(function(e){return O({done:e.done,lang:e.lang})}))]);case 2:case"end":return e.stop()}}),C)}var R,F="function"==typeof window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({actionsDenylist:[]})||b.Zz,w=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.preloadedState,n=e.middleware,r=void 0===n?[]:n,i=(0,k.Ay)(),o=[S.P,i].concat((0,g.A)(r)),a=(0,b.Yl)(h.d$,t,F(b.Tw.apply(void 0,(0,g.A)(o))));return a.sagaTask=function(e,t){return t.run(e)}(D,i),a},x=T.wA,I=T.d4,L=n(88768),M={global:(R={body:{fontFamily:"Product Sans, sans-serif"}},(0,P.A)(R,"h1, h2, h3, h4, h5, th, td",{fontFamily:"Product Sans, sans-serif"}),(0,P.A)(R,"kbd, samp, pre",{fontFamily:"Product Sans, sans-serif"}),R)},j=(0,L.oY)({styles:M,semanticTokens:{colors:{mobileCardBackgroundColor:{default:"white",_dark:"gray.700"},cardBackgroundColor:{default:"rgba(245, 245, 245, 0.7)",_dark:"rgba(45, 60, 80, 0.7)"},mobileModalColor:{default:"rgb(220, 220, 220)",_dark:"gray.700"},cardBorderColor:{default:"gray.300",_dark:"gray.600"},lightTextColor:{default:"gray.600",_dark:"gray.400"},siteBackgroundColor:{default:"rgba(250, 250, 250, 0.8)",_dark:"rgba(24, 24, 24, 0.2)"},bannerBackgroundColor:{default:"rgb(255, 255, 255)",_dark:"#1A202C"}}}}),Y=n(14346),U=n(14980),H=function(e){var t=e.children,n=e.script,r=void 0===n?[]:n,i=e.refresh,o=void 0===i?[]:i;return(0,U.jsxs)("body",{children:[(0,U.jsx)(Y.m,{type:"localStorage",initialColorMode:"dark"}),"string"==typeof t?(0,U.jsx)("div",{id:"__content__",dangerouslySetInnerHTML:{__html:t||""}}):(0,U.jsx)("div",{id:"__content__",children:t}),r.filter(Boolean).map((function(e){return e})),o.filter(Boolean).map((function(e){return e}))]})},V=n(61732),B=function(e){var t=e.env,n=void 0===t?"{}":t,r=e.link,i=void 0===r?[]:r,o=e.preLoad,a=void 0===o?[]:o,u=e.preloadedState,c=void 0===u?"{}":u,l=e.helmetContext,s=(void 0===l?{}:l).helmet,f=e.emotionChunks;return(0,U.jsxs)("head",{children:[(0,U.jsx)("meta",{charSet:"utf-8"}),(0,U.jsx)("meta",{name:"build-time",content:"Fri, 30 Aug 2024 08:32:17 GMT"}),(0,U.jsx)("meta",{name:"power-by",content:"@my-react ꒰ঌ( ⌯' '⌯)໒꒱"}),(0,U.jsx)("meta",{name:"version",content:V.version}),(0,U.jsx)("meta",{name:"author",content:"MrWangJustToDo"}),(0,U.jsx)("meta",{name:"description",content:"@my-react is a React like framework, it can be used to build a modern website just like this, feel free to use and fire a issue if you have! link: https://github.com/MrWangJustToDo/MyReact"}),(0,U.jsx)("meta",{name:"keywords",content:"react, react-dom, ssr, csr, ssg, @my-react, react like, react framework"}),(0,U.jsx)("base",{href:d?"/":"/".concat("MyReact","/")}),(0,U.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"}),(0,U.jsx)("link",{rel:"shortcut icon",href:"./favicon.ico",type:"image/x-icon"}),(0,U.jsx)("link",{rel:"stylesheet",href:"https://fonts.cdnfonts.com/css/google-sans"}),(0,U.jsxs)(U.Fragment,{children:[null==s?void 0:s.base.toComponent(),null==s?void 0:s.title.toComponent(),null==s?void 0:s.meta.toComponent(),null==s?void 0:s.link.toComponent(),null==s?void 0:s.noscript.toComponent(),null==s?void 0:s.style.toComponent(),null==s?void 0:s.script.toComponent()]}),a.filter(Boolean).map((function(e){return e})),i.filter(Boolean).map((function(e){return e})),null==f?void 0:f.styles.map((function(e,t){return(0,U.jsx)("style",{"data-server":!0,"data-emotion":"".concat(e.key," ").concat(e.ids.join(" ")),dangerouslySetInnerHTML:{__html:e.css}},e.key+"_"+t)})),(0,U.jsx)("script",{id:"__preload_env__",type:"application/json",dangerouslySetInnerHTML:{__html:"".concat(n)}}),(0,U.jsx)("script",{id:"__preload_state__",type:"application/json",dangerouslySetInnerHTML:{__html:"".concat(c)}})]})};function W(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function G(e){for(var t=1;t{"use strict";n.d(t,{V:()=>r,d:()=>i});var r=function(e){return e.clientLang="clientLang",e.clientProps="clientProps",e}({}),i=function(e){return e.serverLang="serverLang",e}({})},72932:(e,t,n)=>{"use strict";n.d(t,{bN:()=>S,J3:()=>N,$l:()=>A,E5:()=>P,d$:()=>w,qG:()=>k,Go:()=>p});var r,i,o,a=n(90805),u=n(77343),c=n(39368),l=n(57028),s=function(e){return"@client_action_".concat(e,"_loading")},d=function(e){return"@client_action_".concat(e,"_success")},f=function(e){return"@client_action_".concat(e,"_fail")},p=function(e){var t=e.name,n=e.data;return{type:d(t),data:n,loadingState:!1}},_={data:"",error:null,loaded:!1,loading:!1},m=(r={},(0,u.A)(r,s(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data="",e.error=null,e.loading=t.loadingState||!0,e.loaded=!1}))})),(0,u.A)(r,d(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data=t.data||"",e.error=null,e.loading=!1,e.loaded=!0}))})),(0,u.A)(r,f(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data="",e.error=t.error,e.loading=!1,e.loaded=!0}))})),r),h={data:{},error:null,loaded:!1,loading:!1},v=(i={},(0,u.A)(i,s(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.error=null,e.loading=t.loadingState||!0,e.loaded=!1}))})),(0,u.A)(i,d(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.data=t.data,e.error=null,e.loading=!1,e.loaded=!0}))})),(0,u.A)(i,f(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.data={},e.error=t.error,e.loading=!1,e.loaded=!0}))})),i),y=(0,a.HY)((o={},(0,u.A)(o,c.V.clientLang,(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_,t=arguments.length>1?arguments[1]:void 0,n=m[t.type];return n?n(e,t):e})),(0,u.A)(o,c.V.clientProps,(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,t=arguments.length>1?arguments[1]:void 0,n=v[t.type];return n?n(e,t):e})),o)),E=n(16801),g=["name"];function T(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var b,k={GET_DATA_ACTION:function(e){return"@server_action_".concat(e,"_startWithSaga")},GET_DATA_LOADING:function(e){return"@server_action_".concat(e,"_loading")},GET_DATA_SUCCESS:function(e){return"@server_action_".concat(e,"_success")},GET_DATA_FAIL:function(e){return"@server_action_".concat(e,"_fail")}},S=function(e){var t=e.name,n=(0,E.A)(e,g);return function(e){var r=null,i=new Promise((function(e){r=e}));return e(function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:D,t=arguments.length>1?arguments[1]:void 0,n=R[t.type];return n?n(e,t):e}))),w=(0,a.HY)({client:y,server:F})},40698:(e,t,n)=>{var r={"./":[78059,502,980,916,305,798,68,907],"./404":[91305,980,505],"./404.tsx":[91305,980,505],"./About":[76778,502,980,305,798,68,54],"./About.tsx":[76778,502,980,305,798,68,54],"./Blog":[73069,502,980,916,305,798,967,719],"./Blog.tsx":[73069,502,980,916,305,798,967,719],"./Tldraw":[96931,101],"./Tldraw.tsx":[96931,101],"./index":[78059,502,980,916,305,798,68,907],"./index.tsx":[78059,502,980,916,305,798,68,907]};function i(e){if(!n.o(r,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=r[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((()=>n(i)))}i.keys=()=>Object.keys(r),i.id=40698,e.exports=i}},e=>{e.O(0,[792],(()=>{[502,980,916,305,798,68,907,505,54,967,719,101].map(e.E)}),5),e.O(0,[502,980,916,305,798,967,61],(()=>(28769,e(e.s=28769)))),e.O()}]); \ No newline at end of file +(self.webpackChunk_my_react_ssr_example=self.webpackChunk_my_react_ssr_example||[]).push([[792],{44610:(e,t,n)=>{"use strict";e.exports=n(21702)},21702:(e,t,n)=>{"use strict";var r,i=n(6696),o=n(61732),a={exports:{}},u={};a.exports=(r||(r=1,function(e){var t,n=o,r={exports:{}},a={};r.exports=(t||(t=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]")},Le=function(e){return"".concat(Ie(e)," ").concat("")},Me=function(e){return"%c".concat(Ie(e),"%c (%o)")},je=function(e){if(e){var t="".padEnd(4)+"at".padEnd(3),n="",r=e;if(Se.current)for(;r;)we(r)&&(n?n+="\n".concat(t).concat(Le(r)):n="".concat(t).concat(Le(r))),r=r.parent;else for(;r;)n?n+="\n".concat(t).concat(Le(r)):n="".concat(t).concat(Le(r)),r=r.parent;return"\n".concat(n)}return""},Ye=function(e,t){for(var n="".toString().padEnd(3),r="\n"+n+"Last render:".padEnd(28)+"Next render:".padEnd(10)+"\n"+n+"-".repeat(44)+"\n",i=n+c.HOOK_TYPE[t.lastRender].padEnd(28)+c.HOOK_TYPE[t.nextRender].padEnd(10)+"\n";e&&e.value;){var o=e.value.type;i=n+c.HOOK_TYPE[o].padEnd(28)+c.HOOK_TYPE[o].padEnd(10)+"\n"+i,e=e.prev}return"[@my-react/react] hook for current component has a different state on current render and previous render, this is not a valid usage."+r+(i+(n+"^".repeat(44)))},Ue=function(e,t){for(var n,r,i=[],o=2;o5)throw new Error("lazy() load loop count is too much");return[3,1];case 3:return t.reconcileCommit(e),a=t.pendingCommitFiberList,u=t.pendingChangedFiberList,t.resetUpdateFlowRuntimeFiber(),t.pendingCommitFiberList=null,t.pendingChangedFiberList=null,(null==a?void 0:a.length)&&t.reconcileUpdate(a),(null==u?void 0:u.length)&&ge((function(){var e,n;return null===(n=null===(e=he.get(t))||void 0===e?void 0:e.fiberHasChange)||void 0===n?void 0:n.forEach((function(e){return e(u)}))})),Rn.current=!1,[2]}}))}))},e.mountLoop=Dn,e.nextWorkClassComponent=_n,e.nextWorkCommon=fn,e.nextWorkComponent=hn,e.nextWorkConsumer=yn,e.nextWorkFunctionComponent=mn,e.nextWorkLazy=vn,e.nextWorkNormal=pn,e.onceErrorWithKey=function(e){for(var t,n,r=[],i=1;it.performanceLogTimeLimit;sn.current&&a&&Ue(e,"performance","[@my-react/react] render current component take a lot of time, there have a performance warning"),a&&Te({fiber:e,action:function(){var n,r;return null===(r=null===(n=he.get(t))||void 0===n?void 0:n.performanceWarn)||void 0===r?void 0:r.forEach((function(t){return t(e)}))}});var u=e,l=i;if(dn.current)if(u.state===c.STATE_TYPE.__create__)u._debugRenderState={mountTimeStep:l,timeForRender:o,maxTimeForRender:o},u._debugIsMount=!0;else{var d=Object.assign({},u._debugRenderState),p=d.updateTimeStep||d.mountTimeStep;u._debugRenderState={renderCount:(d.renderCount||0)+1,mountTimeStep:d.mountTimeStep,updateTimeStep:l,trigger:f.current,timeForRender:o,timeForUpdate:l-p,maxTimeForRender:Math.max(d.maxTimeForRender,o)}}return r},e.safeCall=ge,e.safeCallWithFiber=Te,e.safeCallWithSync=function(e){for(var t=[],n=1;n0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c", client: "').concat(c.getElementName(e),'"')),!1}return t}if(y.include(e.type,c.NODE_TYPE.__plain__))return t.nodeType!==Node.ELEMENT_NODE||e.elementType.toString().toLowerCase()!==t.nodeName.toLowerCase()?(O.current&&Le(e,"error",'hydrate error, dom not match from server. server: "<'.concat(t.nodeName.toLowerCase(),' />", client: "').concat(c.getElementName(e),'"')),!1):t;if(y.include(e.type,c.NODE_TYPE.__comment__))return t.nodeType!==Node.COMMENT_NODE?(O.current&&Le(e,"error",'hydrate error, dom not match from server. server: "<'.concat(t.nodeName.toLowerCase(),' />", client: "').concat(c.getElementName(e),'"')),!1):t;throw new Error("[@my-react/react-dom] hydrate error, look like a bug")}(e,r);return i?e.nativeNode=i:W(r),i}(e,o,n);return Boolean(a)}return!1}(e,r||t,t._previousNativeNode);a||K(e,i,r||t),o=a}else K(e,i,r||t);return t.isHydrateRender&&e.nativeNode,e.patch=y.remove(e.patch,y.PATCH_TYPE.__create__),o}return n},q=function(e,t){w(e)&&L(e,t.runtimeMap.eventMap,e.nativeNode,"onChange")},Q=function(e,t){if(e.nativeNode){var n=!!ct(e,t);if(y.include(e.type,c.NODE_TYPE.__plain__)){var r=e.pendingProps;Object.keys(r).forEach((function(i){if(Ce(i))!function(e,t,n){var r=e.nativeNode;L(e,t.runtimeMap.eventMap,r,n)}(e,t,i);else if(De(i))!function(e,t,n){var r=e.nativeNode;Object.keys(n).forEach((function(e){return j(0,r,e,n[e])}))}(e,0,r[i]||{});else if(Re(i))try{!function(e,t,n,r){var i,o=e.nativeNode;if(null!=r)if("className"===n)if(t){if(!(c=o.hasAttribute("class")))return O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. no have this attr from server, client: ").concat(r)),void o.setAttribute("class",r);(l=null===(i=o.getAttribute("class"))||void 0===i?void 0:i.toString())!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. server: ").concat(l,", client: ").concat(r)),o.setAttribute("class",r))}else o[n].toString()!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' not match from server. server: ").concat(o[n],", client: ").concat(r)),o[n]=r);else if(t&&120===n.charCodeAt(0))if(n.startsWith("xmlns")){var a=o.getAttributeNS(B,n);String(a)!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' props not match from server. server: ").concat(a,", client: ").concat(r)),o.setAttributeNS(B,n,String(r)))}else n.startsWith("xlink")?(a=o.getAttributeNS(V,"href"),String(a)!==String(r)&&(O.current&&Le(e,"warn","hydrate warning, dom 'href' props not match from server. server: ".concat(a,", client: ").concat(r)),o.setAttributeNS(V,"href",String(r)))):(a=o.getAttribute(n),String(a)!==String(r)&&O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' attr not match from server. server: ").concat(a,", client: ").concat(r)),o.setAttribute(n,String(r)));else if(!(n in o)||t||H(0,n)){var u=(t?_t(n):pt(n))||n,c=o.hasAttribute(u),l=o.getAttribute(u);if(!1===r){if(u.includes("-"))"false"!==l&&(O.current&&Le(e,"warn","hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r)),o.setAttribute(u,r));else if(null!=l){if("false"===l)return;O.current&&Le(e,"warn","hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r)),o.removeAttribute(u)}}else(null==l?void 0:l.toString())!==String(r)&&(O.current&&Le(e,"warn",c?"hydrate warning, dom '".concat(u,"' attr not match from server. server: ").concat(l,", client: ").concat(r):"hydrate warning, dom '".concat(u,"' attr not match from server. no have this attr from server, client: ").concat(r)),o.setAttribute(u,String(r)))}else if(o[n].toString()!==String(r)){O.current&&Le(e,"warn","hydrate warning, dom '".concat(n,"' props not match from server. server: ").concat(o[n],", client: ").concat(r));try{o[n]=!1===r?"":r}catch(e){}}}(e,n,i,r[i])}catch(e){}})),S.current&&k.current&&F[e.elementType]&&(q(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return R(e)}))),function(e){var t,n,r,i=e.pendingProps;if(i.dangerouslySetInnerHTML){var o=e.nativeNode,a=i.dangerouslySetInnerHTML;t=o,n=a.__html,(r=document.createElement("i")).innerHTML=n,r.innerHTML!==t.innerHTML&&(Le(e,"warn","hydrate error, 'innerHTML' not match from server."),o.innerHTML=a.__html)}}(e)}y.include(e.type,c.NODE_TYPE.__text__)&&function(e){var t,n=e.nativeNode;n.textContent!==String(e.elementType)&&(" "===n.textContent&&""===e.elementType?n.textContent="":(O.current&&Le(e,"warn","hydrate warning, dom 'text' not match from server. server: ".concat(n.textContent,", client: ").concat(null===(t=e.elementType)||void 0===t?void 0:t.toString())),n.textContent=e.elementType))}(e)}e.patch=y.remove(e.patch,y.PATCH_TYPE.__update__),e.patch=y.remove(e.patch,y.PATCH_TYPE.__append__),e.patch=y.remove(e.patch,y.PATCH_TYPE.__position__)},X=function(e){return null==e},$=function e(t,n){if(!t)throw new Error("[@my-react/react-dom] position error, look like a bug for @my-react");if(t.patch=y.remove(t.patch,y.PATCH_TYPE.__append__),t.patch=y.remove(t.patch,y.PATCH_TYPE.__position__),!y.include(t.type,c.NODE_TYPE.__portal__))if(y.include(t.type,c.NODE_TYPE.__plain__|c.NODE_TYPE.__text__|c.NODE_TYPE.__comment__)){var r=n,i=n,o=(null==n?void 0:n.nativeNode)||(null==r?void 0:r.containerNode)||i.rootNode,a=t.nativeNode;o.appendChild(a)}else for(var u=t.child;u;)e(u,n),u=u.sibling},J=function e(t){if(!t||y.include(t.state,y.STATE_TYPE.__unmount__))return null;if(y.include(t.type,c.NODE_TYPE.__portal__))return null;if(t.nativeNode)return t;for(var n=t.child;n;){var r=e(n);if(r)return r;n=n.sibling}return null},Z=function e(t){return t?J(t)||e(null==t?void 0:t.sibling):null},ee=function e(t,n){return t?t===n?null:Z(t.sibling)||e(t.parent,n):null},te=function e(t,n,r){if(!t)throw new Error("[@my-react/react-dom] position error, look like a bug for @my-react");if(t.patch=y.remove(t.patch,y.PATCH_TYPE.__append__),t.patch=y.remove(t.patch,y.PATCH_TYPE.__position__),!y.include(t.type,c.NODE_TYPE.__portal__))if(y.include(t.type,c.NODE_TYPE.__plain__|c.NODE_TYPE.__text__|c.NODE_TYPE.__comment__)){var i=r,o=r,a=(null==r?void 0:r.nativeNode)||(null==i?void 0:i.containerNode)||o.rootNode,u=n.nativeNode,l=t.nativeNode;try{a.insertBefore(l,u)}catch(e){a.append(l)}}else for(var s=t.child;s;)e(s,n,r),s=s.sibling},ne=function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__position__)){var n=t.rootFiber,r=ut(e,t),i=ee(e,r||n);i?te(e,i,r||t):$(e,r||t)}},re=o.__my_react_internal__.currentRenderPlatform,ie=function(e,t,n){var r=function e(n,r){var i,o=c.safeCallWithFiber({fiber:n,action:function(){return t.clientCommitCreate(n,r)}});c.safeCallWithFiber({fiber:n,action:function(){return t.clientCommitUpdate(n,o)}}),c.safeCallWithFiber({fiber:n,action:function(){return t.commitAppend(n)}});var a=r;return n.nativeNode&&(t._previousNativeNode=null),n.child&&(a=e(n.child,o)),c.safeCallWithFiber({fiber:n,action:function(){return t.commitSetRef(n)}}),n.nativeNode&&(W(null===(i=t._previousNativeNode)||void 0===i?void 0:i.nextSibling),t._previousNativeNode=n.nativeNode),n.sibling&&e(n.sibling,n.nativeNode?o:a),n.nativeNode?o:a};return function(e,n){var i=c.generateFiberToMountList(e);c.beforeSyncUpdate(),i.listToFoot((function(e){return c.insertionEffect(e,t)})),c.afterSyncUpdate(),r(e,n),delete t._previousNativeNode,c.beforeSyncUpdate(),i.listToFoot((function(e){return c.layoutEffect(e,t)})),c.afterSyncUpdate(),re.current.microTask((function(){return i.listToFoot((function(e){return c.effect(e,t)}))}))}(e,n)},oe=o.__my_react_internal__.initRenderPlatform,ae=o.__my_react_internal__.currentRenderPlatform,ue=o.__my_react_shared__.enableDebugFiled,ce=o.__my_react_shared__.enableScopeTreeLog;function le(e){this.isServer||c.processState(e)}function se(e){var t=this;this.isServer||(e.fiber?c.triggerError(e.fiber,e.error,(function(){t.yieldTask((function(){var t;window.dispatchEvent(new ErrorEvent("error",{error:e.error,message:null===(t=e.error)||void 0===t?void 0:t.message}))}))})):this.yieldTask((function(){var t;window.dispatchEvent(new ErrorEvent("error",{error:e.error,message:null===(t=e.error)||void 0===t?void 0:t.message}))})))}var de=function(){c.enableFiberForLog.current=!0;var e=new rt(!1);oe(e)},fe=function(){var e=ae.current;e||de(),ue.current=!0,ce.current=!0,(e=ae.current).isServer=!1,e.dispatchState=le,e.dispatchHook=c.processHookNode,e.dispatchError=se},pe=function e(t){if(t&&!y.include(t.state,y.STATE_TYPE.__unmount__)){var n=t;if(t.nativeNode)return t.nativeNode;if(n.containerNode)return n.containerNode;for(var r=t.child;r;){var i=e(r);if(i)return i;r=r.sibling}}};o.__my_react_shared__.enableHMRForDev;var _e=o.__my_react_internal__.currentRenderPlatform,me=function(e){var t=e.__container__,n=t.rootFiber,r=_e.current;n&&t&&n instanceof c.MyReactFiberNode&&t instanceof Ne?(ze(t),c.unmountContainer(t,(function(){var e,n;return null===(n=null===(e=r.dispatchSet)||void 0===e?void 0:e.uniDelete)||void 0===n?void 0:n.call(e,t)}))):Le(n,"error","can not unmount app for current container")},he=o.__my_react_internal__.currentRenderPlatform;o.__my_react_shared__.enableLegacyLifeCycle,o.__my_react_shared__.enableConcurrentMode,o.__my_react_shared__.enablePerformanceLog;var ve=y.once((function(){console.log("you are using %c@my-react%c to render this site, version: '".concat("0.3.2","'. see https://github.com/MrWangJustToDo/MyReact"),"color: white;background-color: rgba(10, 190, 235, 0.8); border-radius: 2px; padding: 2px 5px","")}));y.once((function(){console.log("[@my-react/react] performance warning log have been enabled!")})),y.once((function(){console.log("[@my-react/react] concurrent mode have been enabled!")})),y.once((function(){console.log("[@my-react/react] legacy 'UNSAFE' lifeCycle have been enabled!")}));var ye=function e(t,n,r){if(!o.isValidElement(t))throw new Error("[@my-react/react-dom] 'render' can only render a '@my-react' element");fe();var i=n,a=i.__container__;if(a instanceof c.CustomRenderDispatch){var u=a.rootFiber;if(a.isAppCrashed||y.include(u.state,y.STATE_TYPE.__unmount__))return i.__fiber__=null,i.__container__=null,ze(a),void e(t,i);if(c.checkIsSameType(u,t))return u._installElement(t),void c.triggerUpdate(u,y.STATE_TYPE.__triggerSync__,r);me(i)}!function(e,t,n){var r,i;fe(),ve();var o=new c.MyReactFiberNode(e),a=new Ne(t,o),u=he.current;u.dispatchSet.uniPush(a),Array.from(t.children).forEach((function(e){var t;return null===(t=e.remove)||void 0===t?void 0:t.call(e)})),n&&a.pendingEffect(o,n),null===(r=t.removeAttribute)||void 0===r||r.call(t,"hydrate"),null===(i=t.setAttribute)||void 0===i||i.call(t,"render","@my-react"),t.__fiber__=o,t.__container__=a,a.enableASyncHydrate=!1,a.isClientRender=!0,qe(a,u),c.initialFiberNode(o,a),Qe(o,a),delete a.isClientRender}(t,i,r)},Ee=o.__my_react_internal__.currentRenderPlatform;o.__my_react_shared__.enableLegacyLifeCycle,o.__my_react_shared__.enableConcurrentMode,o.__my_react_shared__.enablePerformanceLog;var ge=function(e,t,n){if(!o.isValidElement(e))throw new Error("[@my-react/react-dom] 'hydrate' can only render a '@my-react' element");fe(),ve(),A.current?function(e,t,n){f(void 0,void 0,void 0,(function(){var r,i,o,a;return p(this,(function(u){switch(u.label){case 0:return r=new c.MyReactFiberNode(e),i=new Ne(t,r),(o=Ee.current).dispatchSet.uniPush(i),n&&i.pendingEffect(r,n),null===(a=t.setAttribute)||void 0===a||a.call(t,"hydrate","@my-react"),t.__fiber__=r,t.__container__=i,i.enableASyncHydrate=!0,i.isHydrateRender=!0,qe(i,o),c.initialFiberNode(r,i),[4,Xe(r,i)];case 1:return u.sent(),delete i.isHydrateRender,[2]}}))}))}(e,t,n):function(e,t,n){var r,i=new c.MyReactFiberNode(e),o=new Ne(t,i),a=Ee.current;a.dispatchSet.uniPush(o),n&&o.pendingEffect(i,n),null===(r=t.setAttribute)||void 0===r||r.call(t,"hydrate","@my-react"),t.__fiber__=i,t.__container__=o,o.enableASyncHydrate=!1,o.isHydrateRender=!0,qe(o,a),c.initialFiberNode(i,o),Qe(i,o,!0),delete o.isHydrateRender}(e,t,n)};y.once((function(e){console.log("[@my-react/react-dom] you are using new entry function '".concat(e,"'"))}));var Te=o.__my_react_internal__.currentRenderPlatform,be=function(e,t){return f(void 0,void 0,void 0,(function(){var n,r,o;return p(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,3,4]),t._loading=!0,[4,t.loader()];case 1:return n=a.sent(),r="object"!==i(n)||"function"!=typeof(null==n?void 0:n.default)&&"object"!==i(null==n?void 0:n.default)?n:n.default,t._loaded=!0,t.render=r,t._update(e,t.render),[3,4];case 2:return o=a.sent(),Te.current.dispatchError({fiber:e,error:o}),[3,4];case 3:return t._loading=!1,[7];case 4:return[2]}}))}))};o.__my_react_shared__.enableScopeTreeLog;var ke,Se,Ae={typeForRef:c.NODE_TYPE.__plain__|c.NODE_TYPE.__class__,typeForCreate:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__portal__|c.NODE_TYPE.__comment__,typeForUpdate:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__comment__,typeForAppend:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__comment__,typeForNativeNode:c.NODE_TYPE.__text__|c.NODE_TYPE.__plain__|c.NODE_TYPE.__portal__|c.NODE_TYPE.__comment__},Pe=new Map,Ne=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.rootNode=t,r.rootFiber=n,r.runtimeDom={svgMap:new WeakMap,elementMap:new WeakMap},r.version="0.3.2",r.enableUpdate=!0,r.runtimeRef=Ae,r._previousNativeNode=null,r.performanceLogTimeLimit=T.current,r.enableASyncHydrate=A.current,Pe.set(r,{domAppend:new Set,domUpdate:new Set,domSetRef:new Set}),r}return s(t,e),t.prototype.onDOMAppend=function(e){var t=Pe.get(this).domAppend;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMAppend=function(e){var t=Pe.get(this).domAppend;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.onDOMUpdate=function(e){var t=Pe.get(this).domUpdate;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMUpdate=function(e){var t=Pe.get(this).domUpdate;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.onDOMSetRef=function(e){var t=Pe.get(this).domSetRef;return t.add(e),function(){return t.delete(e)}},t.prototype.onceDOMSetRef=function(e){var t=Pe.get(this).domSetRef;t.add((function n(r){e(r),t.delete(n)}))},t.prototype.clientCommitCreate=function(e,t){return z(e,this,!!t)},t.prototype.commitCreate=function(e){this.clientCommitCreate(e)},t.prototype.clientCommitUpdate=function(e,t){var n,r,i;n=e,r=this,i=!!t,y.include(n.patch,y.PATCH_TYPE.__update__)&&(i?Q(n,r):function(e,t,n){var r;if(!e.nativeNode)throw new Error("[@my-react/react-dom] update error, dom not exist");var i=e.nativeNode,o=!!t.runtimeDom.svgMap.get(e);if(y.include(e.type,c.NODE_TYPE.__text__))i.textContent=e.elementType;else if(y.include(e.type,c.NODE_TYPE.__plain__)){var a=i,u=e.memoizedProps||{},l=e.pendingProps||{};if(U(u,l).forEach((function(n){var r=u[n],c=l[n];if(!(Object.is(r,c)||X(c)&&X(r)))if(Ce(n))M(e,t.runtimeMap.eventMap,i,n),L(e,t.runtimeMap.eventMap,i,n);else if(De(n)){var s=c||{},d=r||{},f=U(d,s);Array.from(f).filter((function(e){return!Object.is(d[e],s[e])})).forEach((function(e){return j(0,a,e,s[e])}))}else if(Re(n))try{!function(e,t,n,r,i){if(r&&120===n.charCodeAt(0))n.startsWith("xmlns")?null==i?t.removeAttributeNS(B,n):t.setAttributeNS(B,n,String(i)):n.startsWith("xlink")?null==i?t.removeAttributeNS(V,"href"):t.setAttributeNS(V,"href",String(i)):null==i?t.removeAttribute(n):t.setAttribute(n,String(i));else if("className"!==n)if(!(n in t)||r||H(0,n))try{var o=(r?_t(n):pt(n))||n;null==i?t.removeAttribute(o):!1===i?o.includes("-")?t.setAttribute(o,String(i)):t.removeAttribute(o):(t.setAttribute(o,String(i)),"INPUT"===t.nodeName&&"autofocus"===o&&requestAnimationFrame((function(){return t.focus()})),"TEXTAREA"===t.nodeName&&"autofocus"===o&&requestAnimationFrame((function(){return t.focus()})))}catch(e){}else try{t[n]=null==i||!1===i?"":String(i)}catch(e){}else r?null==i?t.removeAttribute("class"):t.setAttribute("class",String(i)):t[n]=null==i?"":String(i)}(0,a,n,o,c)}catch(e){}})),S.current&&k.current&&F[e.elementType]&&(n?(q(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return R(e)}))):(function(e,t){e.pendingProps.onChange||e.memoizedProps.onChange||(w(e)?L(e,t.runtimeMap.eventMap,e.nativeNode,"onChange"):M(e,t.runtimeMap.eventMap,e.nativeNode,"onChange"))}(e,t),"select"===e.elementType&&requestAnimationFrame((function(){return function(e){var t=e.nativeNode,n=e.pendingProps.multiple,r=e.pendingProps.value,i=e.pendingProps.defaultValue,o=e.memoizedProps.multiple,a=t;null!=r?D(a,!!n,r,!1):!!o!=!!n&&(null!=i?D(a,!!n,i,!0):D(a,!!n,n?[]:"",!1))}(e)})))),u.dangerouslySetInnerHTML&&!l.dangerouslySetInnerHTML)a.innerHTML="";else if(l.dangerouslySetInnerHTML&&l.dangerouslySetInnerHTML!==u.dangerouslySetInnerHTML&&l.dangerouslySetInnerHTML.__html!==(null===(r=u.dangerouslySetInnerHTML)||void 0===r?void 0:r.__html)){var s=l.dangerouslySetInnerHTML;a.innerHTML=s.__html}}}(n,r,n.memoizedProps===c.emptyProps),c.safeCall((function(){var e;return null===(e=r.patchToCommitUpdate)||void 0===e?void 0:e.call(r,n)})),c.safeCall((function(){var e,t;return null===(t=null===(e=Pe.get(r))||void 0===e?void 0:e.domUpdate)||void 0===t?void 0:t.forEach((function(e){return e(n)}))})),n.memoizedProps=n.pendingProps,n.patch=y.remove(n.patch,y.PATCH_TYPE.__update__))},t.prototype.commitUpdate=function(e){this.clientCommitUpdate(e)},t.prototype.commitAppend=function(e){!function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__append__)){var n=ut(e,t),r=n;if(!(null==e?void 0:e.nativeNode))throw new Error("[@my-react/react-dom] append error, current render node not have a native node");var i=(null==n?void 0:n.nativeNode)||(null==r?void 0:r.containerNode)||t.rootNode,o=e.nativeNode;n&<[n.elementType]||i.appendChild(o),c.safeCall((function(){var n;return null===(n=t.patchToCommitAppend)||void 0===n?void 0:n.call(t,e)})),c.safeCall((function(){var n,r;return null===(r=null===(n=Pe.get(t))||void 0===n?void 0:n.domAppend)||void 0===r?void 0:r.forEach((function(t){return t(e)}))})),e.patch=y.remove(e.patch,y.PATCH_TYPE.__append__)}}(e,this)},t.prototype.commitPosition=function(e){ne(e,this)},t.prototype.commitSetRef=function(e){Be(e,this)},t.prototype.commitUnsetRef=function(e){We(e)},t.prototype.commitClear=function(e){var t;t=e,y.include(t.state,y.STATE_TYPE.__unmount__)||function(e){var t;if(e.nativeNode){var n=e.nativeNode;try{null===(t=n.parentNode)||void 0===t||t.removeChild(n)}catch(t){Le(e,"error","error for remove dom",t)}}}(t)},t.prototype.resolveLazyElement=function(e){return this.enableASyncHydrate?function(e,t){var n=e.elementType;return!0===n._loaded?c.WrapperByScope(o.createElement(n.render,e.pendingProps)):t.isHydrateRender?(t.pendingAsyncLoadFiberList=t.pendingAsyncLoadFiberList||new y.ListTree,t.pendingAsyncLoadFiberList.push(e),null):(!1===n._loading&&be(e,n),c.WrapperByScope(t.resolveSuspense(e)))}(e,this):function(e,t){var n=e.elementType;if(!0===n._loaded){if(t.isHydrateRender)return Promise.resolve().then((function(){n._update(e,n.render)})),c.WrapperByScope(t.resolveSuspense(e));var r=n.render;return c.WrapperByScope(o.createElement(r,e.pendingProps))}return!1===n._loading&&be(e,n),c.WrapperByScope(t.resolveSuspense(e))}(e,this)},t.prototype.reconcileCommit=function(e){var t=this;c.safeCall((function(){var e;return null===(e=t.beforeCommit)||void 0===e?void 0:e.call(t)})),c.safeCall((function(){var e,n;null===(n=null===(e=c.listenerMap.get(t))||void 0===e?void 0:e.beforeCommit)||void 0===n||n.forEach((function(e){return e()}))})),ie(e,this,this.isHydrateRender),c.safeCall((function(){var e,n;null===(n=null===(e=c.listenerMap.get(t))||void 0===e?void 0:e.afterCommit)||void 0===n||n.forEach((function(e){return e()}))})),c.safeCall((function(){var e;return null===(e=t.afterCommit)||void 0===e?void 0:e.call(t)}))},t.prototype.shouldYield=function(){return dt()},t.prototype.patchToFiberInitial=function(e){ot(e,this),je(e,this)},t.prototype.patchToFiberUpdate=function(e){je(e,this)},t.prototype.patchToFiberUnmount=function(e){at(e,this)},t}(c.CustomRenderDispatch),Oe=(ke=function(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()},Se={},function(){for(var e=[],t=0;t ")," (%o)"),t)},16,Ie=null,function(){for(var e=[],t=0;t]/,dt=function(){if(b.current){var e=Date.now()-b.current>T.current;return e&&(b.current=null),e}return b.current=Date.now(),!1},ft=Fe("animationIterationCount,borderImageOutset,borderImageSlice,borderImageWidth,boxFlex,boxFlexGroup,boxOrdinalGroup,columnCount,columns,flex,flexGrow,flexPositive,flexShrink,flexNegative,flexOrder,gridArea,gridRow,gridRowEnd,gridRowSpan,gridRowStart,gridColumn,gridColumnEnd,gridColumnSpan,gridColumnStart,fontWeight,lineClamp,lineHeight,opacity,order,orphans,tabSize,widows,zIndex,zoom,fillOpacity,floodOpacity,stopOpacity,strokeDasharray,strokeDashoffset,strokeMiterlimit,strokeOpacity,strokeWidth"),pt=we("as,accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap"),_t=we("xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan"),mt={className:"class",htmlFor:"for"};o.__my_react_shared__.enableOptimizeTreeLog,Fe(["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"].join(",")),Fe(["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"].join(",")),Fe(["dd","dt","li","option","optgroup","p","rp","rt"].join(","));var ht,vt=function(){function e(e){this.content="",this.parentElement=null,this.content=""===e?" ":e}return e.prototype.toString=function(){return this.content.toString()},e}();s((function(){return null!==ht&&ht.apply(this,arguments)||this}),ht=vt);var yt=function(){function e(){this.parentElement=null}return e.prototype.toString=function(){return"\x3c!-- [ --\x3e"},e}(),Et=function(){function e(){this.parentElement=null}return e.prototype.toString=function(){return"\x3c!-- ] --\x3e"},e}(),gt=function(){function e(e){this.style={},this.attrs={},this.children=[],this.parentElement=null,this.type=e,"html"===e&&(this.attrs=d(d({},this.attrs),{"data-server":"@my-react"}))}return e.prototype.addEventListener=function(){},e.prototype.removeEventListener=function(){},e.prototype.removeAttribute=function(e){delete this.attrs[e]},e.prototype.setAttribute=function(e,t){this.attrs[e]=t.toString()},e.prototype.append=function(){for(var e=this,t=[],n=0;n"):this.type?"<".concat(this.type).concat(this.serialize(),">").concat(this.renderChildren(),""):this.renderChildren()},e}(),Tt=function(e,t){var n;if(y.include(e.patch,y.PATCH_TYPE.__update__)){if(y.include(e.type,c.NODE_TYPE.__plain__)){var r=e.nativeNode,i=e.pendingProps||{};if(Object.keys(i).forEach((function(e){if(Re(e)&&null!==i[e]&&void 0!==i[e]){var n=(t?_t(e):pt(e))||mt[e]||e;!1===i[e]?n.includes("-")?r.setAttribute(n,i[e]):r.removeAttribute(n):r.setAttribute(n,i[e])}if(De(e)){var o=i[e]||{};Object.keys(o).forEach((function(t){if(null!==o[t]&&void 0!==o[t]){if(!ft[t]&&"number"==typeof o[t])return void(r[e][t]="".concat(o[t],"px"));r[e][t]=o[t]}}))}})),i.dangerouslySetInnerHTML){var o=i.dangerouslySetInnerHTML;o.__html&&r.append(new vt(null===(n=o.__html)||void 0===n?void 0:n.toString()))}}e.patch=y.remove(e.patch,y.PATCH_TYPE.__update__)}},bt=function(e,t){if(y.include(e.patch,y.PATCH_TYPE.__create__)){if(y.include(e.type,c.NODE_TYPE.__text__))e.nativeNode=new vt(function(e){var t=""+e,n=st.exec(t);if(!n)return t;var r,i,o="",a=0;for(i=n.index;i{"use strict";e.exports=n(21702)},51151:(e,t,n)=>{"use strict";var r,i=n(6696),o=n(61732),a={exports:{}},u={};a.exports=(r||(r=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c element only support 'key' / 'children' props, but got ".concat(p));if(!(null==s?void 0:s.children))throw new Error("[@my-react/react] need a render function as children, this is unsupported usage");if("function"!=typeof s.children)throw new Error("[@my-react/react] expect a render function as children but got ".concat(s.children,", this is unsupported usage"));if(null===(n=null===(t=s.children)||void 0===t?void 0:t.prototype)||void 0===n?void 0:n.isMyReactComponent)throw new Error("[@my-react/react] invalid render type for , expect a render function but got a class element ".concat(s.children))}else{if(l[c.TYPEKEY]===c.Context)throw new Error("[@my-react/react] look like you are using Context like , this is unsupported usage, please use or ");if(l[c.TYPEKEY]===c.Provider)for(var p in s=e.props)"key"===p||"children"===p||"value"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'value' / 'children' props, but got ".concat(p));else if(l[c.TYPEKEY]===c.ForwardRef){if("function"!=typeof(m=(_=u).render))throw new Error("[@my-react/react] 'forwardRef()' expect a render function but got ".concat(m,", this is unsupported usage"));if(null===(r=m.prototype)||void 0===r?void 0:r.isMyReactComponent)throw new Error("[@my-react/react] invalid render type for 'forwardRef()', expect a render function, but got a element class ".concat(m))}else if(l[c.TYPEKEY]===c.Memo){if("object"===i((_=u).render)){if(f(_.render))throw new Error("[@my-react/react] look like you are using memo like memo(), this is unsupported usage, please change to memo(Foo)");if(_.render[c.TYPEKEY]===c.Memo)throw new Error("[@my-react/react] look like you are using memo like memo(memo(Foo)), this is unsupported usage, please do not wrapper memo more than once");if(_.render[c.TYPEKEY]===c.Lazy)throw new Error("[@my-react/react] look like you are using memo like memo(lazy(loader fun)), this is unsupported usage");if(_.render[c.TYPEKEY]===c.Context)throw new Error("[@my-react/react] look like you are using memo like memo(Context), this is unsupported usage")}else if("function"!=typeof _.render)throw new Error("[@my-react/react] invalid render type for 'memo()', expect a render function or a render object, but got a ".concat(_.render))}else{if(l[c.TYPEKEY]!==c.Lazy)throw new Error("[@my-react/react] invalid object element type, current type is: ".concat(l));var _,m;if("function"!=typeof(m=(_=u).loader))throw new Error("[@my-react/react] invalid argument for lazy(loader), the loader expect a function, but got a ".concat(_.loader));if(null===(o=m.prototype)||void 0===o?void 0:o.isMyReactComponent)throw new Error("[@my-react/react] invalid argument for lazy(loader), the loader expect a function, but got a element class ".concat(_.loader))}}}else{if(u===c.Fragment)for(var p in e.props)"key"===p||"children"===p||"wrap"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'children' props, but got ".concat(p));if(u===c.Suspense)for(var p in e.props)"key"===p||"children"===p||"fallback"===p||p.startsWith("_")||console.warn("[@my-react/react] element only support 'key' / 'children' / 'fallback' props, but got ".concat(p))}}e._store.validType=!0}d.current=a}(u),u},t.jsxs=function(e,t,n,r,i){return h(e,t,n)}},3e3:(e,t,n)=>{"use strict";e.exports=n(51151)},14980:(e,t,n)=>{"use strict";e.exports=n(51151)},48979:(e,t,n)=>{"use strict";var r,i=n(6696),o={exports:{}},a={};o.exports=(r||(r=1,function(e){"function"==typeof SuppressedError&&SuppressedError;var t=Symbol.for("react.element"),n=Symbol.for("react.memo"),r=Symbol.for("react.forward_ref"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.context"),c=Symbol.for("react.provider"),l=Symbol.for("react.consumer"),s=Symbol.for("react.lazy"),d=Symbol.for("react.suspense"),f=Symbol.for("react.strict_mode"),p=Symbol.for("react.keep_live"),_=Symbol.for("react.scope"),m=Symbol.for("react.comment"),h=Symbol.for("react.offscreen"),v=Symbol.for("react.profiler");function y(e){return"object"===i(e)&&null!==e}function E(e){return"function"==typeof e}var g,T,b,k,S,A,P=function(){function e(){this.set=new Set,this.arr=new Array,this.length=0}return e.prototype.uniPop=function(){var e=this.arr.pop();return this.set.delete(e),this.length--,e},e.prototype.uniPush=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.push(e),this.length++},e.prototype.uniShift=function(){var e=this.arr.shift();return this.set.delete(e),this.length--,e},e.prototype.uniUnshift=function(e){if(this.set.has(e))return 0;this.set.add(e),this.arr.unshift(e),this.length++},e.prototype.uniDelete=function(e){this.set.has(e)&&(this.set.delete(e),this.arr=this.arr.filter((function(t){return t!==e})),this.length--)},e.prototype.clear=function(){this.length=0,this.set.clear(),this.arr.length=0},e.prototype.getAll=function(){return this.arr},e}();e.HOOK_TYPE=void 0,(g=e.HOOK_TYPE||(e.HOOK_TYPE={}))[g.useId=0]="useId",g[g.useRef=1]="useRef",g[g.useMemo=2]="useMemo",g[g.useState=3]="useState",g[g.useSignal=4]="useSignal",g[g.useEffect=5]="useEffect",g[g.useContext=6]="useContext",g[g.useReducer=7]="useReducer",g[g.useCallback=8]="useCallback",g[g.useTransition=9]="useTransition",g[g.useDebugValue=10]="useDebugValue",g[g.useLayoutEffect=11]="useLayoutEffect",g[g.useDeferredValue=12]="useDeferredValue",g[g.useInsertionEffect=13]="useInsertionEffect",g[g.useImperativeHandle=14]="useImperativeHandle",g[g.useSyncExternalStore=15]="useSyncExternalStore",e.UpdateQueueType=void 0,(T=e.UpdateQueueType||(e.UpdateQueueType={}))[T.hook=2]="hook",T[T.component=1]="component",T[T.lazy=3]="lazy",T[T.context=4]="context",e.MODE_TYPE=void 0,(b=e.MODE_TYPE||(e.MODE_TYPE={}))[b.__initial__=0]="__initial__",b[b.__stable__=1]="__stable__",e.STATE_TYPE=void 0,(k=e.STATE_TYPE||(e.STATE_TYPE={}))[k.__initial__=0]="__initial__",k[k.__create__=1]="__create__",k[k.__stable__=2]="__stable__",k[k.__skippedConcurrent__=4]="__skippedConcurrent__",k[k.__skippedSync__=8]="__skippedSync__",k[k.__inherit__=16]="__inherit__",k[k.__triggerConcurrent__=32]="__triggerConcurrent__",k[k.__triggerConcurrentForce__=64]="__triggerConcurrentForce__",k[k.__triggerSync__=128]="__triggerSync__",k[k.__triggerSyncForce__=256]="__triggerSyncForce__",k[k.__unmount__=512]="__unmount__",k[k.__hmr__=1024]="__hmr__",e.PATCH_TYPE=void 0,(S=e.PATCH_TYPE||(e.PATCH_TYPE={}))[S.__initial__=0]="__initial__",S[S.__create__=1]="__create__",S[S.__update__=2]="__update__",S[S.__append__=4]="__append__",S[S.__position__=8]="__position__",S[S.__effect__=16]="__effect__",S[S.__layoutEffect__=32]="__layoutEffect__",S[S.__insertionEffect__=64]="__insertionEffect__",S[S.__unmount__=128]="__unmount__",S[S.__ref__=256]="__ref__",e.Effect_TYPE=void 0,(A=e.Effect_TYPE||(e.Effect_TYPE={}))[A.__initial__=0]="__initial__",A[A.__effect__=1]="__effect__",A[A.__unmount__=2]="__unmount__";var N=function(e){this.prev=null,this.next=null,this.value=e},O=function(){function e(){this.length=0;var e=null;Object.defineProperty(this,"stickyHead",{get:function(){return e},set:function(t){e=t}});var t=null;Object.defineProperty(this,"stickyFoot",{get:function(){return t},set:function(e){t=e}});var n=null;Object.defineProperty(this,"head",{get:function(){return n},set:function(e){n=e}});var r=null;Object.defineProperty(this,"foot",{get:function(){return r},set:function(e){r=e}})}return e.prototype.push=function(e){var t=new N(e);this.length++,this.foot?(this.foot.next=t,t.prev=this.foot,this.foot=t):(this.head=t,this.foot=t)},e.prototype.pushToLast=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n,this.length++},e.prototype.pushToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n,this.length++},e.prototype.pop=function(){var e=this.stickyFoot||this.foot;return e?(this.delete(e),e.value):null},e.prototype.unshift=function(e){var t=new N(e);this.length++,this.head?(this.head.prev=t,t.next=this.head,this.head=t):(this.head=t,this.foot=t)},e.prototype.unshiftToHead=function(e){if(this.stickyHead){var t=this.stickyHead;this.unshift(t.value),this.stickyHead=null}var n=new N(e);this.stickyHead=n},e.prototype.unshiftToFoot=function(e){if(this.stickyFoot){var t=this.stickyFoot;this.push(t.value),this.stickyFoot=null}var n=new N(e);this.stickyFoot=n},e.prototype.shift=function(){var e=this.stickyHead||this.head;return e?(this.delete(e),e.value):null},e.prototype.pickHead=function(){var e,t;return(null===(e=this.stickyHead)||void 0===e?void 0:e.value)||(null===(t=this.head)||void 0===t?void 0:t.value)},e.prototype.pickFoot=function(){var e,t;return(null===(e=this.stickyFoot)||void 0===e?void 0:e.value)||(null===(t=this.foot)||void 0===t?void 0:t.value)},e.prototype.listToFoot=function(e){this.stickyHead&&e(this.stickyHead.value);for(var t=this.head;t;)e(t.value),t=t.next;this.stickyFoot&&e(this.stickyFoot.value)},e.prototype.listToHead=function(e){this.stickyFoot&&e(this.stickyFoot.value);for(var t=this.foot;t;)e(t.value),t=t.prev;this.stickyHead&&e(this.stickyHead.value)},e.prototype.toArray=function(){var e=[];return this.listToFoot((function(t){return e.push(t)})),e},e.prototype.delete=function(e){if(this.stickyHead===e)this.stickyHead=null,this.length--;else if(this.stickyFoot===e)this.stickyFoot=null,this.length--;else if(this.head===e){var t=e.next;e.next=null,t?(this.head=t,t.prev=null):(this.head=null,this.foot=null),this.length--}else if(this.foot===e){var n=e.prev;e.prev=null,n?(this.foot=n,n.next=null):(this.head=null,this.foot=null),this.length--}else this.hasNode(e)&&(n=e.prev,t=e.next,e.prev=null,e.next=null,n.next=t,t.prev=n,this.length--)},e.prototype.size=function(){return this.length},e.prototype.hasNode=function(e){if(this.stickyHead&&Object.is(this.stickyHead,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot,e))return!0;for(var t=this.head;t;){if(Object.is(t,e))return!0;t=t.next}return!1},e.prototype.hasValue=function(e){if(this.stickyHead&&Object.is(this.stickyHead.value,e))return!0;if(this.stickyFoot&&Object.is(this.stickyFoot.value,e))return!0;for(var t=this.head;t;){if(Object.is(t.value,e))return!0;t=t.next}return!1},e.prototype.some=function(e){var t=!1;return this.listToFoot((function(n){t=t||e(n)})),t},e.prototype.every=function(e){var t=!0;return this.listToFoot((function(n){t=t&&e(n)})),t},e.prototype.concat=function(t){var n=new e;return this.listToFoot((function(e){return n.push(e)})),t.listToFoot((function(e){return n.push(e)})),n},e.prototype.clone=function(){var t=new e;return this.listToFoot((function(e){return t.push(e)})),t},e.prototype.clear=function(){this.length=0,this.head=null,this.foot=null,this.stickyHead=null,this.stickyFoot=null},e}();e.Comment=m,e.Consumer=l,e.Context=u,e.Element=t,e.ForwardRef=r,e.Fragment=a,e.KeepLive=p,e.Lazy=s,e.ListTree=O,e.ListTreeNode=N,e.Memo=n,e.Offscreen=h,e.Portal=o,e.Profiler=v,e.Provider=c,e.Scope=_,e.Strict=f,e.Suspense=d,e.TYPEKEY="$$typeof",e.UniqueArray=P,e.compareVersion=function(e,t){return function e(t,n){if(t.length&&n.length){var r=t[0],i=n[0];return r>i||!(i>r)&&e(t.slice(1),n.slice(1))}return!!t.length||!n.length}(e.split(".").map(Number),t.split(".").map(Number))},e.exclude=function(e,t){return!(e&t)},e.include=function(e,t){return e&t},e.isArray=function(e){return Array.isArray(e)},e.isArrayEquals=function(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)&&Array.isArray(t)&&e.length===t.length){var n=!0;for(var r in e)if(!(n=n&&Object.is(e[r],t[r])))return n;return n}return!1},e.isCollection=function(e){return e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet},e.isFunction=E,e.isInteger=function(e){return Number.isInteger(Number(e))},e.isNormalEquals=function(e,t,n){if(Object.is(e,t))return!0;var r="function"==typeof n;if("object"===i(e)&&"object"===i(t)&&null!==e&&null!==t){var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;var u=!0;if(r){for(var c=0,l=o;c1?l.children=n:1===v&&(l.children=n[0]),B({type:e,key:o,ref:a,props:l,_self:u,_source:c,_owner:f.current})}function G(e,t,n){if(null==e)throw new Error("[@my-react/react] cloneElement(...) need a valid element as params");if("object"!==i(e))return e;var r=Object.assign({},e.props),o=e.key,a=e.ref,u=e.type,c=e._self,l=e._source,s=e._owner;if(null!=t){var d=t.ref,p=t.key;t.__self,t.__source;var _=V(t,["ref","key","__self","__source"]);void 0!==d&&(a=d,s=f.current),void 0!==p&&(o=p+"");var m={};if("function"==typeof e.type||"object"===i(e.type)){var h=e.type;m=(null==h?void 0:h.defaultProps)||{}}Object.keys(_).forEach((function(e){return r[e]=void 0===_[e]?m[e]:_[e]}))}var v=arguments.length-2;return v>1?(n=Array.from(arguments).slice(2),r.children=n):1===v&&(r.children=n),B({type:u,key:o,ref:a,props:r,_self:c,_source:l,_owner:s})}var K=function e(t){return Array.isArray(t)?t.reduce((function(t,n){return t.concat(e(n))}),[]):[t]},z=function(e,t,n){var r=K(e);return r.map((function(e,i){return t(e)?n.call(null,e,i,r):e}))},q=function(e){function t(t,n){var r=e.call(this)||this;return r.state=null,r.props=null,r.context=null,r.setState=function(e,t){var n={type:u.UpdateQueueType.component,payLoad:e,callback:t,trigger:r,isForce:!1,isSync:y.current},i=p.current;null==i||i.dispatchState(n)},r.forceUpdate=function(){var e={type:u.UpdateQueueType.component,trigger:r,isForce:!0,isSync:y.current},t=p.current;null==t||t.dispatchState(e)},r.props=t||null,r.context=n||null,r}return H(t,e),Object.defineProperty(t.prototype,"isReactComponent",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isMyReactComponent",{get:function(){return!0},enumerable:!1,configurable:!0}),t.prototype.render=function(){return null},t}(M),Q=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return H(t,e),t.prototype.shouldComponentUpdate=function(e,t,n){return!u.isNormalEquals(e,this.props)||!u.isNormalEquals(t,this.state)||!u.isNormalEquals(n,this.context)},t}(q),X=[],$=function(e,t){return"function"==typeof t?t(e):t},J=q,Z=Q,ee=O.current?"18.2.0":"0.3.2",te={enableMockReact:O,enableDebugLog:v,enableSyncFlush:y,enableHookStack:E,enableHMRForDev:g,enableDebugFiled:N,enableScopeTreeLog:k,enableLoopFromRoot:h,enableDoubleRender:A,enableConcurrentMode:T,enableLegacyLifeCycle:P,enableOptimizeTreeLog:b,enablePerformanceLog:S},ne={yieldTask:D,macroTask:function(e){F.add(e),w||(w=!0,setTimeout((function(){var e=new Set(F);F.clear(),e.forEach((function(e){return e()})),w=!1})))},microTask:R},re={MyReactInternalInstance:M,globalLoop:s,initRenderPlatform:I,createReadonlyRef:l,currentRunningFiber:d,currentHookTreeNode:_,currentHookNodeIndex:m,currentComponentFiber:f,currentRenderPlatform:p},ie={map:function(e,t,n){if(null==e)return e;var r=[];return z(e,(function(){return!0}),(function(e,o){var a=e;null!=e&&"boolean"!=typeof e||(a=null);var u=t(a,o,n);return L(u)?r.push(G(u,{key:"object"===i(u)?"string"==typeof(null==u?void 0:u.key)?"".concat(u.key):".".concat(o):null})):null!=u&&r.push(u),u})),r},only:function(e){if(L(e))return e;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return!0;throw new Error("[@my-react/react] Children.only() expected to receive a single MyReact element child.")},count:function e(t){return Array.isArray(t)?t.reduce((function(t,n){return t+e(n)}),0):1},toArray:function(e){var t=[];return z(e,(function(e){return null!=e&&"boolean"!=typeof e}),(function(e,n){return L(e)?t.push(G(e,{key:"object"===i(e)?"string"==typeof(null==e?void 0:e.key)?"".concat(e.key):".".concat(n):null})):t.push(e),e})),t},forEach:function(e,t,n){null!=e&&z(e,(function(){return!0}),(function(e,r){var i=e;return(void 0===e||null===e&&"boolean"==typeof e)&&(i=null),t(i,r,n)}))}};t.Children=ie,t.Component=J,t.Fragment=u.Fragment,t.Profiler=u.Profiler,t.PureComponent=Z,t.StrictMode=u.Strict,t.Suspense=u.Suspense,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED={ReactCurrentActQueue:{},ReactCurrentBatchConfig:{},ReactCurrentDispatcher:{current:{}},ReactCurrentOwner:{current:null},ReactDebugCurrentFrame:{}},t.__my_react_internal__=re,t.__my_react_scheduler__=ne,t.__my_react_shared__=te,t.cloneElement=G,t.createContext=function(e){var t,n,r,i=((t={})[u.TYPEKEY]=u.Context,t.contextId=j++,t.Provider={},t.Consumer={},t),o=((n={})[u.TYPEKEY]=u.Provider,n.value=e,n.Context=Y,n),a=((r={})[u.TYPEKEY]=u.Consumer,r.Internal=M,r.Context=Y,r);return Object.defineProperty(o,"Context",{get:function(){return i},enumerable:!1,configurable:!1}),Object.defineProperty(a,"Context",{get:function(){return i},enumerable:!1,configurable:!1}),i.Provider=o,i.Consumer=a,i},t.createElement=W,t.createFactory=function(e){return function(t){for(var n=[],r=1;r{"use strict";e.exports=n(48979)},66424:(e,t,n)=>{"use strict";e.exports=n(3e3)},87411:(e,t,n)=>{"use strict";n.d(t,{A7W:()=>ce,BVy:()=>Hn,DJi:()=>le,GYB:()=>Mn,H4n:()=>In,Hjw:()=>Un,LYV:()=>Ln,YgP:()=>Yn,cUd:()=>jn,qqm:()=>Se});var r=n(21808),i=n(32278),o=n(63222),a=n(18128),u=n(51051),c=n(61732),l=n(66752),s=n(28125),d=n(11459),f=n(91945),p=function(){return p=Object.assign||function(e){for(var t,n=1,r=arguments.length;n>1})).map((function(e){return String.fromCharCode(e)})).join(""),Dn=new i.P({uri:"https://api.github.com/graphql",fetch:"function"==typeof d.fetch?(0,f.generateFetchWithTimeout)(5e3):d.fetch}),Rn=(0,s.S)((function(e){var t=e.networkError,n=e.graphQLErrors;t&&console.error("network error \n[message]: ".concat(t.message," \n[stack]: ").concat(t.stack)),(null==n?void 0:n.length)&&n.forEach((function(e){console.error("graphql error \n[message]: ".concat(e.message," \n[stack]: ").concat(e.path))}))})),Fn=(0,l.o)((function(e,t){var n=t.headers;return{headers:p(p({},n),{Authorization:"token ".concat(On?atob(Cn):Buffer.from(Cn,"base64").toString())})}})),wn="undefined"==typeof window,xn=function(e,t){void 0===e&&(e={});var n=null!=m?m:function(e,t){void 0===e&&(e={});var n=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{"use strict";n.d(t,{d:()=>r});var r=1580},28769:(e,t,n)=>{"use strict";var r=n(92889),i=n(44610),o=n(66475),a=n(25508),u=n(58689),c=n(5857),l=n(61732),s=n(81867),d=n(40803),f=n(18125),p=n(35237).m,_=n(23497);var m,h=n(14980),v=(0,l.forwardRef)((function(e,t){return(0,_.Su)((function(){m||(m=document.createElement("div")),m.id="__loading_bar__";var e=document.body.querySelector("#__content__");document.body.insertBefore(m,e)})),(0,_.aq)()?(0,r.createPortal)((0,h.jsx)("div",{ref:t,className:"ITbAOd",style:{height:"0px",transform:"scale(0, 1)"}}),m):null})),y=(0,l.memo)(v),E=function(){var e=(0,_.M3)((function(e){return e.loading})),t=(0,_.zX)({loading:e}).ref;return(0,h.jsx)(y,{ref:t})},g=n(54044),T=n(53177),b=n(29671),k=n(47965),S=(0,l.createContext)(null),A=function(e){var t=e.children,n=e.routes,r=e.LoadingBar,i=(0,_.JO)({routes:n,preLoad:k.ws}).loaded;return i?(0,h.jsxs)(S.Provider,{value:i,children:[(0,h.jsx)(r,{}),t]}):null},P=function(){var e=(0,l.useContext)(S),t=(0,b.Ye)(p,null==e?void 0:e.location),n=(0,_.aq)();return(0,h.jsx)(h.Fragment,{children:(0,o.getIsAnimateRouter)()?(0,h.jsx)(g.N,{exitBeforeEnter:!0,children:(0,h.jsx)(l.Fragment,{children:(0,h.jsx)(T.P.div,{initial:n?"initial":"in",animate:"in",exit:"out",style:{height:"fit-content"},variants:{initial:{opacity:.2,translateY:-100,transformOrigin:"center top",scale:.8,borderRadius:6,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.2), 1px -1px 2px 4px rgba(0, 0, 0, 0.2)"},in:{opacity:1,translateY:0,scale:1,transformOrigin:"center top",borderRadius:0,boxShadow:"0px 0px 0px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 0px rgba(0, 0, 0, 0.1)"},out:{opacity:0,translateY:200,scale:.8,transformOrigin:"center top",borderRadius:10,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.1), 1px -1px 2px 4px rgba(0, 0, 0, 0.1)"}},transition:{type:"spring",damping:10,stiffness:50},"data-animate-route":!0,children:(0,h.jsx)(l.Suspense,{children:t})})},null==e?void 0:e.location.pathname)}):(0,h.jsx)(l.Suspense,{children:t})})},N=n(11081),O=n(87411),C=function(e){var t=e.children,n=(0,o.useAppSelector)((function(e){return e.client.clientProps.data})),r=(0,b.zy)().pathname,i=n[(0,k.HG)(r)],a=null==i?void 0:i.$$__apollo__$$,u=(0,O.LYV)(a,!0);return(0,h.jsx)(N.X,{client:u,children:t})},D=n(48945),R=n(33465),F=n(73137),w=n(41410),x=n(6910);var I=function(e){(0,F.A)(i,e);var t,n,r=(t=i,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=(0,x.A)(t);if(n){var i=(0,x.A)(this).constructor;e=Reflect.construct(r,arguments,i)}else e=r.apply(this,arguments);return(0,w.A)(this,e)});function i(){var e;(0,D.A)(this,i);for(var t=arguments.length,n=new Array(t),o=0;o{"use strict";n.d(t,{RX:()=>O,Gi:()=>N,yx:()=>P,M0:()=>p,B0:()=>m,Su:()=>M,wt:()=>c,mZ:()=>B,XH:()=>X,al:()=>x,aq:()=>I,dX:()=>W,M3:()=>u,zX:()=>L,Qc:()=>V,TP:()=>F,dn:()=>R,j3:()=>D,pI:()=>C,JO:()=>E,lW:()=>Y});var r=n(66475),i=n(39368),o=n(72932),a=n(39606),u=(0,a.ur)((0,a.wR)((function(){return{loading:!1}}),{generateActions:function(e){return{setLoading:function(t){e.loading=t}}}}),{withNamespace:"useLoading",withDeepSelector:!1}),c=(0,a.ur)((function(){return{state:!0}}),{withActions:function(e){return{enable:function(){return e.state=!0},disable:function(){return e.state=!1}}},withNamespace:"useFoot"}),l=n(2694),s=n(61500),d=n(61732),f=n(9245),p=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,n=(0,d.useState)(e),r=(0,s.A)(n,2),i=r[0],o=r[1];return[i,(0,d.useMemo)((function(){return(0,f.A)(o,t)}),[t])]},_={width:0,height:0,left:0,right:0,top:0,bottom:0,x:0,y:0};function m(e){var t=e.ref,n=e.cssSelector,r=e.deps,i=p(_,100),o=(0,s.A)(i,2),a=o[0],u=o[1];return(0,d.useEffect)((function(){var e=t?t.current:n?document.querySelector(n):null;if(e){if(window.ResizeObserver){var r=new ResizeObserver((function(){u(e.getBoundingClientRect())}));return r.observe(e),function(){return r.disconnect()}}var i=function(){return u(e.getBoundingClientRect())};return i(),window.addEventListener("resize",i,{passive:!0}),function(){return window.removeEventListener("resize",i)}}}),[t,n,u].concat((0,l.A)(r||[]))),a}var h=n(40803),v=n(29671),y=n(18125),E=function(e){var t=e.routes,n=e.preLoad,a=(0,d.useRef)(),c=(0,h.Pj)(),l=(0,v.zy)(),f=(0,v.Zp)(),p=(0,y.ok)(),_=(0,s.A)(p,1)[0],m=u((function(e){return e.setLoading})),E=(0,d.useRef)(!!(0,r.getIsP_CSR)()),g=(0,d.useRef)(""),T=(0,d.useRef)(""),b=(0,d.useRef)(null),k=(0,d.useRef)(null),S=(0,d.useRef)(c),A=(0,d.useState)((0,r.getIsP_CSR)()?void 0:{location:l,query:_}),P=(0,s.A)(A,2),N=P[0],O=P[1];return T.current="".concat(l.pathname,"?").concat(_.toString()),g.current=N?"".concat(N.location.pathname,"?").concat(N.query.toString()):"",S.current=c,(0,d.useEffect)((function(){if(E.current)E.current=!1;else{var e=a.current&&a.current==="".concat(l.pathname,"?").concat(_.toString());e||m(!1),g.current!=="".concat(l.pathname,"?").concat(_.toString())&&(e||(b.current&&clearTimeout(b.current),b.current=null,k.current&&clearTimeout(k.current),k.current=null,b.current=setTimeout((function(){m(!0)}),200)),function(e,r){n(t,e.pathname,r,S.current).then((function(t){var n="".concat(e.pathname,"?").concat(r.toString());if(n===T.current){var u,c=t||{},l=c.redirect,s=c.error,d=c.props;a.current=l?"".concat(l.location.pathName,"?").concat(null===(u=l.location.query)||void 0===u?void 0:u.toString()):"",s?(console.error(s),m(!1)):l?f(a.current):k.current=setTimeout((function(){b.current&&clearTimeout(b.current),b.current=null,T.current===n&&(d&&S.current.dispatch((0,o.Go)({name:i.V.clientProps,data:d})),m(!1),O({location:e,query:r}))}),50)}}))}(l,_))}}),[l,n,t,f,_,m]),{loaded:N}},g=n(89206),T=n(47965),b=function(e){var t=document.getElementById(e);t&&(t.style.removeProperty("transform"),t.style.removeProperty("filter"),t.addEventListener("transitionend",(function(){t.style.removeProperty("overflow"),t.style.removeProperty("will-change"),t.style.removeProperty("transition")}),{once:!0}))},k=function(e){e.forEach(b)},S="__content__",A=0,P=(0,d.createContext)((function(){})),N=(0,d.createContext)((function(){})),O=(0,d.createContext)({desktop:[],mobile:[]}),C=function(){var e,t=(0,d.useState)([]),n=(0,s.A)(t,2),r=n[0],i=n[1],o=(0,d.useRef)(r),a=(e=(0,d.useReducer)((function(e){return e+1}),0),(0,s.A)(e,2)[1]);o.current=r;var u=(0,d.useCallback)((function(e,t){(0,T.cb)(0,(function(){var n=o.current.filter((function(n){return t?n.showState||n.id===e:n.showState&&n.id!==e}));if(n.length){var r=n.map((function(e){return e.id})),i=r.slice(0,-1),a=r[r.length-1];[S].concat((0,l.A)(i)).reverse().forEach((function(e,t){return function(e,t){var n=document.querySelector("#".concat(e));if(n){var r=window.innerHeight,i=(r-t)/r;n.style.overflow="hidden",n.style.willChange="transform",n.style.transition="transform 200ms linear",n.style.transform="translateY(calc(env(safe-area-inset-top) + ".concat(t/2,"px)) scale(").concat(i,")"),n.style.filter="blur(0.8px)"}}(e,18+2*t)})),k([a])}else k([S])}),"__overlay_back")}),[]);return{overlays:r,open:(0,d.useCallback)((function(e){var t=e,n=o.current,r=(0,g.A)(n,(function(e){return e.showState}));t.key="__overlay_".concat(A++),t.id="__overlay_".concat(A++),t.height=r?r.height-6:92,t.isFirst=!r,t.showState=!0;var c=t.closeHandler,s=t.closeComplete;t.closeHandler=function(){t.showState=!1,c&&c(),a()},t.closeComplete=function(){s&&s(),i((function(e){var n=e.filter((function(e){return e!==t}));return n.length&&n.reduce((function(e,t){return e.showState?(t.isFirst=!1,t):t.showState?(t.isFirst=!0,t):void 0})),n}))},t.applyOverlay=u,i((function(e){var n=e.filter((function(e){return e.showState}));return[].concat((0,l.A)(n),[t])}))}),[a,u]),close:(0,d.useCallback)((function(e){var t=o.current,n=e||{},r=n.modalId,i=n.closeAll;if(void 0!==r){var a=t.find((function(e){return e.id===r}));null==a||a.closeHandler()}else if(i)t.filter((function(e){return e.showState})).forEach((function(e){return null==e?void 0:e.closeHandler()}));else{var u=(0,g.A)(t,(function(e){return e.showState}));null==u||u.closeHandler()}}),[])}},D=function(){return(0,d.useContext)(P)},R=function(){return(0,d.useContext)(N)},F=function(){return(0,d.useContext)(O)},w=n(22515),x=function(){return(0,w.A)({base:!0,lg:!1})},I=function(){var e=(0,d.useState)(!1),t=(0,s.A)(e,2),n=t[0],r=t[1];return(0,d.useEffect)((function(){r(!0)}),[]),n},L=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.height,n=void 0===t?2.5:t,r=e.present,i=void 0===r?0:r,o=e.loading,a=(0,d.useRef)(null),u=(0,d.useRef)({present:i,height:n});return(0,d.useEffect)((function(){o||(u.current.height=n,u.current.present=i)}),[o,n,i]),(0,d.useEffect)((function(){if(a.current){var e=a.current;if(o){var t,n=2;return t=requestAnimationFrame((function r(){n>.33&&(n-=.04);var i=(u.current.present||0)+n;i=i<99.5?i:99.5,e.style.cssText="height: ".concat(u.current.height,"px;")+"transform: scale(".concat(i/100,", 1);")+"filter: drop-shadow(2px 2px 2px rgba(200, 200, 200, .4))",u.current.present=i,t=requestAnimationFrame(r)})),function(){return cancelAnimationFrame(t)}}return(0,T.cb)(40,(function(){return e.style.transform="scale(1)"}),"loadingBar").then((function(){return(0,T.cb)(80,(function(){return e.style.height="0px"}),"loadingBar")})),function(){return(0,T.ZT)("loadingBar")}}}),[o]),{ref:a}},M=function(e){(0,d.useEffect)((function(){e()}),[])},j=n(35710),Y=function(){var e=p({height:j.B?window.innerHeight:0,width:j.B?window.innerHeight:0}),t=(0,s.A)(e,2),n=t[0],r=t[1];return(0,d.useEffect)((function(){var e=function(){return r({height:window.innerHeight,width:window.innerWidth})};return e(),window.addEventListener("resize",e,{passive:!0}),window.removeEventListener("reset",e)}),[r]),n},U=n(31945),H=(0,a.y$)((function(){var e=(0,U.KR)(0);return{count:e,lock:function(){return e.value++},unlock:function(){e.value--}}})),V=function(){return H((function(e){return e.count}))},B=function(e){return(0,r.useAppSelector)((function(e){return e.client.clientProps.data}))[(0,T.HG)(e)]},W=(0,a.ur)((function(){return{data:{}}}),{withActions:function(e){return{updateLayout:function(t){e.data=t},mergeLayout:function(t){var n=e.data,r={};Object.keys(t).forEach((function(e){r[e]=[];var i=n[e];t[e].forEach((function(t){var n=null==i?void 0:i.find((function(e){return e.i===t.i}));n?r[e].push(n):r[e].push(t)}))})),e.data=r}}},withNamespace:"useListLayoutStore",withDeepSelector:!1}),G=function(e){return function(t,n,r){var i=10+r;return{i:n+t,x:Math.floor(t%e),y:Math.floor(t/e)*i,w:1,maxW:e,h:i,minH:10}}},K=G(1),z=G(2),q=G(3),Q=G(4),X=function(e){return(0,d.useMemo)((function(){var t=e.map((function(e,t){var n=e.id;return K(t,n,4)})),n=e.map((function(e,t){var n=e.id;return z(t,n,6)})),r=e.map((function(e,t){var n=e.id;return q(t,n,10)}));return{lg:e.map((function(e,t){var n=e.id;return Q(t,n,14)})),md:r,sm:n,xs:t,xxs:t}}),[e])}},35237:(e,t,n)=>{"use strict";n.d(t,{m:()=>Fe});var r=n(61732),i=n(66475),o=n(77343),a=n(23497),u=n(14980);function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var l,s,d=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=(0,r.memo)(e);return function(){var e=(0,a.mZ)(t);return(0,u.jsx)(n,function(e){for(var t=1;t div",{minWidth:"1.2em"}),children:[(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:r},r)}),"-",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:i.length>1?i:"0".concat(i)},i)}),"-",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:a.length>1?a:"0".concat(a)},a)}),(0,u.jsx)("div",{children:" "}),(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:c.length>1?c:"0".concat(c)},c)}),":",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:l.length>1?l:"0".concat(l)},l)}),":",(0,u.jsx)(N.N,{exitBeforeEnter:!0,children:(0,u.jsx)(O.P.div,{initial:"initial",animate:"in",exit:"out",variants:w,transition:{type:"tween",duration:.12},children:s.length>1?s:"0".concat(s)},s)})]})}})})]}):null},I=(0,r.memo)(x),L=n(61500),M=n(25555),j=n(92878),Y=n(49176),U=n(57452),H=n(35065),V=n(87411),B=n(50776),W=n(14313),G=n(9245),K=n(45077),z=n(61010),q=n(86616),Q=n(95892),X=n(23032),$=n(12301),J=function(){var e=(0,X.G6)(),t=e.colorMode,n=e.toggleColorMode;return(0,u.jsx)(U.$,{onClick:n,variant:"ghost",size:"sm",children:(0,u.jsx)(S.I,{as:"dark"===t?$.NmZ:$.hGG})})},Z=n(30116),ee=n(91898),te=function(){var e=(0,X.dU)((0,ee.AH)(l||(l=(0,Z.A)(["\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #84898e;\n color: #24292e;\n background: #ffffff;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n "]))),(0,ee.AH)(s||(s=(0,Z.A)(["\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #c9d1d9;\n color: #c9d1d9;\n background: #282936;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #ff7b72;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #d2a8ff;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #79c0ff;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #a5d6ff;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #ffa657;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #8b949e;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #7ee787;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #c9d1d9;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #1f6feb;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #f2cc60;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #c9d1d9;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #c9d1d9;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #aff5b4;\n background-color: #033a16;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #ffdcd7;\n background-color: #67060c;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n "]))));return(0,u.jsx)(ee.mL,{styles:e})};te.displayName="GlobalStyle";var ne={"/":"@my-react","/blog":"blog","/about":"config","/tldraw":"tldraw"},re=function(){var e,t,n=(0,g.zy)(),o=(0,g.Zp)(),a=(0,r.useRef)(null),c=(0,r.useState)("up"),l=(0,L.A)(c,2),s=l[0],d=l[1],f=(0,q.A)().formatMessage,p=(0,B.L)().scrollY;(0,r.useEffect)((function(){var e=(0,G.A)((function(){var e=p.get();null!==a.current&&(e>a.current?d("down"):d("up")),a.current=e}),16);return p.onChange(e),function(){return p.clearListeners()}}),[p]);var _=(0,W.G)(p,[0,.2,.4],[0,.4,1]),m=ne[n.pathname.toLowerCase()]||"@my-react",h=(0,M.IT)(V.BVy,{variables:{name:"MyReact",owner:"MrWangJustToDo"}}),v=h.data,E=h.loading;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsxs)(j.m,{maxWidth:Q.d,paddingX:{base:"3",lg:"6"},className:"site-header",children:[(0,u.jsx)(te,{}),(0,u.jsxs)(T.s,{id:"desktop-header",paddingY:"2",justifyContent:"space-between",alignItems:"center",display:{base:"none",md:"flex"},children:[(0,u.jsx)(b.E,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:f({id:m})}),(0,u.jsxs)(Y.z,{gap:{base:"4px",lg:"8px"},children:[(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/":"/".concat("MyReact","/"))},children:"Home"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Blog":"/".concat("MyReact","/Blog"))},children:"Example"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Tldraw":"/".concat("MyReact","/Tldraw"))},children:"Tldraw"}),!1,(0,u.jsx)(J,{}),(0,u.jsxs)(U.$,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,u.jsx)(S.I,{as:z.SrF}),E?null:(0,u.jsxs)(H.vw,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,u.jsx)(H.Vz,{as:K.gt3,color:"orange.300"}),(0,u.jsx)(H.d1,{children:null==v||null===(e=v.repository)||void 0===e?void 0:e.stargazerCount})]})]})]})]}),(0,u.jsxs)(y.az,{id:"mobile-header",display:{base:"block",md:"none"},height:12,overflow:"hidden",children:[(0,u.jsxs)(T.s,{justifyContent:"space-between",alignItems:"center",height:"up"===s?"full":"0%",width:"full",transition:"height 0.3s",overflow:"hidden",children:[(0,u.jsx)(b.E,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:f({id:m})}),(0,u.jsxs)(Y.z,{gap:{base:"4px",lg:"8px"},children:[(0,u.jsx)(J,{}),(0,u.jsxs)(U.$,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,u.jsx)(S.I,{as:z.SrF}),E?null:(0,u.jsxs)(H.vw,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,u.jsx)(H.Vz,{as:K.gt3,color:"orange.300"}),(0,u.jsx)(H.d1,{children:null==v||null===(t=v.repository)||void 0===t?void 0:t.stargazerCount})]})]})]})]}),(0,u.jsxs)(T.s,{justifyContent:"space-between",alignItems:"center",height:"full",width:"full",children:[(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/":"/".concat("MyReact","/"))},children:"Home"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Blog":"/".concat("MyReact","/Blog"))},children:"Example"}),(0,u.jsx)(U.$,{variant:"ghost",size:"sm",onClick:function(){return o(i.noBase?"/Tldraw":"/".concat("MyReact","/Tldraw"))},children:"Tldraw"}),!1]})]})]}),(0,u.jsx)(O.P.div,{style:{opacity:_,borderBottom:"1px solid rgba(100, 100, 100, .2)"}})]})},ie=(0,r.memo)(re),oe=n(49487),ae=function(){var e=(0,a.Qc)();return(0,u.jsx)(oe.A,{enabled:e>0,className:"placeholder",as:"span",children:(0,u.jsx)(u.Fragment,{})})},ue=n(22515),ce=n(53511),le=n(89470),se=n(16382),de=n(41325),fe=n(98859);function pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var _e=function(e){var t=e.id,n=e.head,i=e.body,c=e.foot,l=e.height,s=e.className,d=e.closeComplete,f=e.closeHandler,p=e.applyOverlay,_=e.isFirst,m=(0,r.useRef)(!1),h=(0,r.useRef)(null),v=(0,r.useRef)(null),E=(0,r.useRef)(!1),g=(0,a.lW)().height,T=(0,de.d)(0),b=(0,W.G)(T,(function(e){return"translateX(2px) rotate(".concat(e,"deg)")})),k=(0,W.G)(T,(function(e){return"translateX(-2px) rotate(".concat(-1*e,"deg)")})),S=(0,de.d)(0),A=(0,r.useCallback)((function(e){e.target&&e.target.contains(v.current)?E.current=!0:E.current=!1}),[]),P=(0,r.useCallback)((function(e,t){var n=t.delta;if(E.current){var r=S.getVelocity();r>0&&T.set(10),r<0&&T.set(-10),S.set(Math.max(S.get()+n.y,0))}}),[]),N=(0,r.useCallback)((function(e,t){if(t.velocity.y>500)f&&f();else{var n,r=h.current,i=null==r||null===(n=r.getBoundingClientRect())||void 0===n?void 0:n.height;S.get()/i>.6?f&&f():(0,fe.i)(S,0,function(e){for(var t=1;t{"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nc,cb:()=>l,xT:()=>b,ws:()=>y,HG:()=>E});var i={},o={},a={},u=0,c=function(e){if(i[e]){var t=i[e].length;i[e]=i[e].map((function(e){return e&&clearTimeout(e)})).slice(t),o[e]=o[e].map((function(e){return e&&e()})).slice(t)}if(u>200){var n,c=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,o=function(){};return{s:o,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,a=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw a}}}}(Object.keys(a).sort((function(e,t){return a[e]>a[t]?1:-1})));try{for(c.s();!(n=c.n()).done;){var l=n.value;l===e||o[l].length||(delete a[l],delete i[l],delete o[l],u--)}}catch(e){c.e(e)}finally{c.f()}}},l=function(e,t,n){return void 0===n?new Promise((function(t){setTimeout((function(){t()}),e)})).then((function(){if(t)return t()})):(n in a?a[n]++:(a[n]=1,i[n]=[],o[n]=[],u++),c(n),new Promise((function(t,r){o[n].push(r),i[n].push(setTimeout((function(){t()}),e))})).then((function(){if(t)return t()})).catch((function(){})))},s=n(77343),d=n(16167),f=n(28092),p=n.n(f),_=n(51051),m=n(33966);function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function v(e){for(var t=1;t{"use strict";n.r(t),n.d(t,{HTML:()=>K,createEmotionCache:()=>Q,createUniversalStore:()=>w,defaultLang:()=>E,getIsAnimateRouter:()=>u,getIsMiddleware:()=>i,getIsP_CSR:()=>c,getIsSSR:()=>o,getIsStaticGenerate:()=>l,getIsStream:()=>a,getPublicApi:()=>s,loadCurrentLang:()=>y,noBase:()=>d,safeData:()=>z,supportedLang:()=>v,theme:()=>j,useAppDispatch:()=>x,useAppSelector:()=>I});var r=n(95056),i=(0,r.A)((function(){return window.__ENV__.isMIDDLEWARE})),o=(0,r.A)((function(){return window.__ENV__.isSSR})),a=(0,r.A)((function(){return window.__ENV__.isSTREAM})),u=(0,r.A)((function(){return window.__ENV__.isANIMATE_ROUTER})),c=(0,r.A)((function(){return window.__ENV__.isPURE_CSR})),l=(0,r.A)((function(){return window.__ENV__.isSTATIC})),s=(0,r.A)((function(){return window.__ENV__.PUBLIC_API_HOST})),d=!1,f=n(16167),p=n(28092),_=n.n(p),m=n(39368),h=n(72932),v={en:"English",zh:"中文"},y=function(){var e=(0,f.A)(_().mark((function e(t,n){return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t((0,h.bN)({name:m.d.serverLang,lang:n}));case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),E="en",g=n(2694),T=n(40803),b=n(90805),k=n(2066),S=n(46837),A=n(18351),P=n(77343),N=n(91945);function O(e){var t=e.done,n=e.lang;return _().mark((function e(){var r,i,o;return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,A.Lt)((function(e){return e.server.serverLang.data}));case 3:if(e.sent[n]){e.next=14;break}return e.next=7,(0,A.yJ)((0,h.$l)({name:m.d.serverLang}));case 7:return r=(0,N.createRequest)({baseURL:s()}),e.next=10,(0,A.T1)((function(e){return r.get(e,{params:{lang:n}})}),"/api/lang");case 10:return i=e.sent,o=i.data.data,e.next=14,(0,A.yJ)((0,h.E5)({name:m.d.serverLang,data:(0,P.A)({},n,o)}));case 14:return e.next=16,(0,A.yJ)((0,h.Go)({name:m.V.clientLang,data:n}));case 16:e.next=23;break;case 18:return e.prev=18,e.t0=e.catch(0),e.next=23,(0,A.yJ)((0,h.J3)({name:m.d.serverLang,error:e.t0.toString()}));case 23:return e.prev=23,t(),e.finish(23);case 26:case"end":return e.stop()}}),e,null,[[0,18,23,26]])}))()}var C=_().mark(D);function D(){return _().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,A.Q7)([(0,A.p8)(h.qG.GET_DATA_ACTION(m.d.serverLang),(function(e){return O({done:e.done,lang:e.lang})}))]);case 2:case"end":return e.stop()}}),C)}var R,F="function"==typeof window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({actionsDenylist:[]})||b.Zz,w=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.preloadedState,n=e.middleware,r=void 0===n?[]:n,i=(0,k.Ay)(),o=[S.P,i].concat((0,g.A)(r)),a=(0,b.Yl)(h.d$,t,F(b.Tw.apply(void 0,(0,g.A)(o))));return a.sagaTask=function(e,t){return t.run(e)}(D,i),a},x=T.wA,I=T.d4,L=n(88768),M={global:(R={body:{fontFamily:"Product Sans, sans-serif"}},(0,P.A)(R,"h1, h2, h3, h4, h5, th, td",{fontFamily:"Product Sans, sans-serif"}),(0,P.A)(R,"kbd, samp, pre",{fontFamily:"Product Sans, sans-serif"}),R)},j=(0,L.oY)({styles:M,semanticTokens:{colors:{mobileCardBackgroundColor:{default:"white",_dark:"gray.700"},cardBackgroundColor:{default:"rgba(245, 245, 245, 0.7)",_dark:"rgba(45, 60, 80, 0.7)"},mobileModalColor:{default:"rgb(220, 220, 220)",_dark:"gray.700"},cardBorderColor:{default:"gray.300",_dark:"gray.600"},lightTextColor:{default:"gray.600",_dark:"gray.400"},siteBackgroundColor:{default:"rgba(250, 250, 250, 0.8)",_dark:"rgba(24, 24, 24, 0.2)"},bannerBackgroundColor:{default:"rgb(255, 255, 255)",_dark:"#1A202C"}}}}),Y=n(14346),U=n(14980),H=function(e){var t=e.children,n=e.script,r=void 0===n?[]:n,i=e.refresh,o=void 0===i?[]:i;return(0,U.jsxs)("body",{children:[(0,U.jsx)(Y.m,{type:"localStorage",initialColorMode:"dark"}),"string"==typeof t?(0,U.jsx)("div",{id:"__content__",dangerouslySetInnerHTML:{__html:t||""}}):(0,U.jsx)("div",{id:"__content__",children:t}),r.filter(Boolean).map((function(e){return e})),o.filter(Boolean).map((function(e){return e}))]})},V=n(61732),B=function(e){var t=e.env,n=void 0===t?"{}":t,r=e.link,i=void 0===r?[]:r,o=e.preLoad,a=void 0===o?[]:o,u=e.preloadedState,c=void 0===u?"{}":u,l=e.helmetContext,s=(void 0===l?{}:l).helmet,f=e.emotionChunks;return(0,U.jsxs)("head",{children:[(0,U.jsx)("meta",{charSet:"utf-8"}),(0,U.jsx)("meta",{name:"build-time",content:"Mon, 02 Sep 2024 10:40:34 GMT"}),(0,U.jsx)("meta",{name:"power-by",content:"@my-react ꒰ঌ( ⌯' '⌯)໒꒱"}),(0,U.jsx)("meta",{name:"version",content:V.version}),(0,U.jsx)("meta",{name:"author",content:"MrWangJustToDo"}),(0,U.jsx)("meta",{name:"description",content:"@my-react is a React like framework, it can be used to build a modern website just like this, feel free to use and fire a issue if you have! link: https://github.com/MrWangJustToDo/MyReact"}),(0,U.jsx)("meta",{name:"keywords",content:"react, react-dom, ssr, csr, ssg, @my-react, react like, react framework"}),(0,U.jsx)("base",{href:d?"/":"/".concat("MyReact","/")}),(0,U.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"}),(0,U.jsx)("link",{rel:"shortcut icon",href:"./favicon.ico",type:"image/x-icon"}),(0,U.jsx)("link",{rel:"stylesheet",href:"https://fonts.cdnfonts.com/css/google-sans"}),(0,U.jsxs)(U.Fragment,{children:[null==s?void 0:s.base.toComponent(),null==s?void 0:s.title.toComponent(),null==s?void 0:s.meta.toComponent(),null==s?void 0:s.link.toComponent(),null==s?void 0:s.noscript.toComponent(),null==s?void 0:s.style.toComponent(),null==s?void 0:s.script.toComponent()]}),a.filter(Boolean).map((function(e){return e})),i.filter(Boolean).map((function(e){return e})),null==f?void 0:f.styles.map((function(e,t){return(0,U.jsx)("style",{"data-server":!0,"data-emotion":"".concat(e.key," ").concat(e.ids.join(" ")),dangerouslySetInnerHTML:{__html:e.css}},e.key+"_"+t)})),(0,U.jsx)("script",{id:"__preload_env__",type:"application/json",dangerouslySetInnerHTML:{__html:"".concat(n)}}),(0,U.jsx)("script",{id:"__preload_state__",type:"application/json",dangerouslySetInnerHTML:{__html:"".concat(c)}})]})};function W(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function G(e){for(var t=1;t{"use strict";n.d(t,{V:()=>r,d:()=>i});var r=function(e){return e.clientLang="clientLang",e.clientProps="clientProps",e}({}),i=function(e){return e.serverLang="serverLang",e}({})},72932:(e,t,n)=>{"use strict";n.d(t,{bN:()=>S,J3:()=>N,$l:()=>A,E5:()=>P,d$:()=>w,qG:()=>k,Go:()=>p});var r,i,o,a=n(90805),u=n(77343),c=n(39368),l=n(57028),s=function(e){return"@client_action_".concat(e,"_loading")},d=function(e){return"@client_action_".concat(e,"_success")},f=function(e){return"@client_action_".concat(e,"_fail")},p=function(e){var t=e.name,n=e.data;return{type:d(t),data:n,loadingState:!1}},_={data:"",error:null,loaded:!1,loading:!1},m=(r={},(0,u.A)(r,s(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data="",e.error=null,e.loading=t.loadingState||!0,e.loaded=!1}))})),(0,u.A)(r,d(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data=t.data||"",e.error=null,e.loading=!1,e.loaded=!0}))})),(0,u.A)(r,f(c.V.clientLang),(function(e,t){return(0,l.jM)(e,(function(e){e.data="",e.error=t.error,e.loading=!1,e.loaded=!0}))})),r),h={data:{},error:null,loaded:!1,loading:!1},v=(i={},(0,u.A)(i,s(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.error=null,e.loading=t.loadingState||!0,e.loaded=!1}))})),(0,u.A)(i,d(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.data=t.data,e.error=null,e.loading=!1,e.loaded=!0}))})),(0,u.A)(i,f(c.V.clientProps),(function(e,t){return(0,l.jM)(e,(function(e){e.data={},e.error=t.error,e.loading=!1,e.loaded=!0}))})),i),y=(0,a.HY)((o={},(0,u.A)(o,c.V.clientLang,(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_,t=arguments.length>1?arguments[1]:void 0,n=m[t.type];return n?n(e,t):e})),(0,u.A)(o,c.V.clientProps,(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,t=arguments.length>1?arguments[1]:void 0,n=v[t.type];return n?n(e,t):e})),o)),E=n(16801),g=["name"];function T(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var b,k={GET_DATA_ACTION:function(e){return"@server_action_".concat(e,"_startWithSaga")},GET_DATA_LOADING:function(e){return"@server_action_".concat(e,"_loading")},GET_DATA_SUCCESS:function(e){return"@server_action_".concat(e,"_success")},GET_DATA_FAIL:function(e){return"@server_action_".concat(e,"_fail")}},S=function(e){var t=e.name,n=(0,E.A)(e,g);return function(e){var r=null,i=new Promise((function(e){r=e}));return e(function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:D,t=arguments.length>1?arguments[1]:void 0,n=R[t.type];return n?n(e,t):e}))),w=(0,a.HY)({client:y,server:F})},40698:(e,t,n)=>{var r={"./":[78059,502,980,916,305,798,68,907],"./404":[91305,980,505],"./404.tsx":[91305,980,505],"./About":[76778,502,980,305,798,68,54],"./About.tsx":[76778,502,980,305,798,68,54],"./Blog":[73069,502,980,916,305,798,967,719],"./Blog.tsx":[73069,502,980,916,305,798,967,719],"./Tldraw":[96931,101],"./Tldraw.tsx":[96931,101],"./index":[78059,502,980,916,305,798,68,907],"./index.tsx":[78059,502,980,916,305,798,68,907]};function i(e){if(!n.o(r,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=r[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((()=>n(i)))}i.keys=()=>Object.keys(r),i.id=40698,e.exports=i}},e=>{e.O(0,[792],(()=>{[502,980,916,305,798,68,907,505,54,967,719,101].map(e.E)}),5),e.O(0,[502,980,916,305,798,967,61],(()=>(28769,e(e.s=28769)))),e.O()}]); \ No newline at end of file diff --git a/client/main-2668fdb87e07daefd4ff.js.map b/client/main-d284efb2a7ad63ac022f.js.map similarity index 99% rename from client/main-2668fdb87e07daefd4ff.js.map rename to client/main-d284efb2a7ad63ac022f.js.map index 654c5bc5..6e474e7e 100644 --- a/client/main-2668fdb87e07daefd4ff.js.map +++ b/client/main-d284efb2a7ad63ac022f.js.map @@ -1 +1 @@ -{"version":3,"file":"main-2668fdb87e07daefd4ff.js","mappings":"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0B,EAA0BC,GACnE,IAAIi/B,EAAqBj/B,EAAU+5B,WAAWC,OAAOrlC,IAAIoL,GAEzD,IAAKk/B,GAAsBvkC,EAAAzC,QAAQgnC,EAAmBx9B,MAAO/G,EAAAnI,WAAWmP,aAAc,CACpF,IAAMmyB,EAAsBkL,GAAsBh/B,EAAON,QAAQ,SAACrB,GAAM,OAAAA,EAAEqB,MAAF,IAEpEo0B,IAEAoL,EADsC,QAApCpL,EAAoBp4B,YACDo4B,EAEA7zB,EAAU+5B,WAAWC,OAAOrlC,IAAIk/B,IAIrDoL,GACFj/B,EAAU+5B,WAAWC,OAAOpnC,IAAImN,EAAQk/B,E,CAI5C,OAAOA,CACT,ECnFyBtC,GACvB,klBAcsBA,GACtB,qpBAeK,IAAMlB,GAAckB,GAAQ,wECpC7BuC,GAAW,UCKJ/C,GAAyB,WACpC,GAAK/P,EAAoB/vB,QAGlB,CACL,IACM2B,EADMonB,KAAKC,MACI+G,EAAoB/vB,QAAU8vB,EAAqB9vB,QAExE,OADI2B,IAAQouB,EAAoB/vB,QAAU,MACnC2B,C,CALP,OADAouB,EAAoB/vB,QAAU+oB,KAAKC,OAC5B,CAOX,ECVaoM,GAAmBkL,GAC9B,ofCEWvG,GAAiB0G,GAC5B,u+BAoBW3G,GAAgB2G,GAC3B,wnFA4CWqC,GAAqD,CAChEC,UAAW,QACXC,QAAS,OCnEuB3uC,EAAAsL,oBAAmBoU,sBAGjCusB,GAClB,CACE,UACA,SACA,OACA,UACA,QACA,OACA,WACA,UACA,aACA,OACA,KACA,SACA,UACA,SACA,MACA,WACA,KACA,UACA,MACA,MACA,KACA,KACA,QACA,WACA,aACA,SACA,SACA,OACA,QACA,WACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,SACA,MACA,QACA,UACA,KACA,OACA,UACA,OACA,UACA,OACA,WACA,OACA,MACA,UACA,WACA,WACA,SACA,KACA,IACA,QACA,YACA,MACA,SACA,UACA,SACA,SACA,QACA,UACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,QACA,KACA,QACA,KACA,MACA,OACAjqB,KA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","sources":["webpack://@my-react/ssr-example/../../packages/myreact-dom/client.js","webpack://@my-react/ssr-example/../../../myreact-reconciler/index.js","webpack://@my-react/ssr-example/../../../myreact-reconciler/dist/cjs/index.production.js","webpack://@my-react/ssr-example/../../../../node_modules/.pnpm/github.com+MrWangJustToDo+project-tool@d03a568736032eed8403e1cca353a3e4d88a61b0_typescript@5._zsqdzqxtsmijyr47abwzedcvqq/node_modules/tslib/tslib.es6.js","webpack://@my-react/ssr-example/../../../myreact-shared/index.js","webpack://@my-react/ssr-example/../../../myreact-shared/dist/cjs/index.production.js","webpack://@my-react/ssr-example/../../src/server/api/append.ts","webpack://@my-react/ssr-example/../../src/shared/env.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/control/select.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/control/index.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/control/input.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/control/textarea.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/event/getEventName.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/event/addEvent.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/event/wrapper.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/event/removeEvent.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/style/setStyle.ts","webpack://@my-react/ssr-example/../../src/client/api/update/tool.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/attr/namespace.ts","webpack://@my-react/ssr-example/../../src/client/api/fallback/feature.ts","webpack://@my-react/ssr-example/../../src/client/api/create/getHydrateDom.ts","webpack://@my-react/ssr-example/../../src/client/api/create/nativeCreate.ts","webpack://@my-react/ssr-example/../../src/client/api/create/feature.ts","webpack://@my-react/ssr-example/../../src/client/api/create/hydrateCreate.ts","webpack://@my-react/ssr-example/../../src/client/api/update/control.ts","webpack://@my-react/ssr-example/../../src/client/api/update/hydrateUpdate.ts","webpack://@my-react/ssr-example/../../src/client/api/update/nativeUpdate.ts","webpack://@my-react/ssr-example/../../src/client/api/position/append.ts","webpack://@my-react/ssr-example/../../src/client/api/position/getInsertBeforeDom.ts","webpack://@my-react/ssr-example/../../src/client/api/position/insertBefore.ts","webpack://@my-react/ssr-example/../../src/client/api/position/feature.ts","webpack://@my-react/ssr-example/../../src/client/dispatchMount/feature.ts","webpack://@my-react/ssr-example/../../src/client/renderPlatform/feature.ts","webpack://@my-react/ssr-example/../../src/client/tools/findDOMNode.ts","webpack://@my-react/ssr-example/../../src/client/tools/hmr.ts","webpack://@my-react/ssr-example/../../src/client/tools/unmountComponentAtNode.ts","webpack://@my-react/ssr-example/../../src/client/mount/render.ts","webpack://@my-react/ssr-example/../../src/client/mount/hydrate.ts","webpack://@my-react/ssr-example/../../src/client/mount/createRoot.ts","webpack://@my-react/ssr-example/../../src/client/renderDispatch/lazy.ts","webpack://@my-react/ssr-example/../../src/client/renderDispatch/instance.ts","webpack://@my-react/ssr-example/../../src/shared/kebabCase.ts","webpack://@my-react/ssr-example/../../src/client/api/update/feature.ts","webpack://@my-react/ssr-example/../../src/client/api/helper/attr/setAttr.ts","webpack://@my-react/ssr-example/../../src/client/api/append/index.ts","webpack://@my-react/ssr-example/../../src/client/api/clear/feature.ts","webpack://@my-react/ssr-example/../../src/shared/tools.ts","webpack://@my-react/ssr-example/../../src/shared/debug.ts","webpack://@my-react/ssr-example/../../src/shared/ref.ts","webpack://@my-react/ssr-example/../../src/shared/dev.ts","webpack://@my-react/ssr-example/../../src/shared/render.ts","webpack://@my-react/ssr-example/../../src/shared/version.ts","webpack://@my-react/ssr-example/../../src/shared/comment.ts","webpack://@my-react/ssr-example/../../src/shared/platform.ts","webpack://@my-react/ssr-example/../../src/shared/getFiberWithDom.ts","webpack://@my-react/ssr-example/../../src/shared/elementMap.ts","webpack://@my-react/ssr-example/../../src/shared/elementTag.ts","webpack://@my-react/ssr-example/../../src/shared/escapeHtml.ts","webpack://@my-react/ssr-example/../../src/shared/shouldPause.ts","webpack://@my-react/ssr-example/../../src/shared/elementStyle.ts","webpack://@my-react/ssr-example/../../src/shared/elementAttrs.ts","webpack://@my-react/ssr-example/../../src/shared/validateDomNesting.ts","webpack://@my-react/ssr-example/../../src/server/api/native/text.ts","webpack://@my-react/ssr-example/../../src/server/api/native/comment.ts","webpack://@my-react/ssr-example/../../src/server/api/native/plain.ts","webpack://@my-react/ssr-example/../../src/server/api/update.ts","webpack://@my-react/ssr-example/../../src/server/api/create.ts","webpack://@my-react/ssr-example/../../src/noop/renderDispatch/noopDispatch.ts","webpack://@my-react/ssr-example/../../src/server/renderDispatch/lazy.ts","webpack://@my-react/ssr-example/../../src/client/index.ts","webpack://@my-react/ssr-example/../../src/client/tools/createPortal.ts","webpack://@my-react/ssr-example/../../src/client/mount/hydrateRoot.ts","webpack://@my-react/ssr-example/../../packages/myreact-dom/index.js","webpack://@my-react/ssr-example/../../src/check.ts","webpack://@my-react/ssr-example/../../src/instance.ts","webpack://@my-react/ssr-example/../../packages/myreact-jsx/index.js","webpack://@my-react/ssr-example/../../packages/myreact-jsx/jsx-runtime.js","webpack://@my-react/ssr-example/../../src/share/createRef.ts","webpack://@my-react/ssr-example/../../src/share/env.ts","webpack://@my-react/ssr-example/../../src/share/task.ts","webpack://@my-react/ssr-example/../../src/share/lazy.ts","webpack://@my-react/ssr-example/../../src/share/platform.ts","webpack://@my-react/ssr-example/../../src/element/tool.ts","webpack://@my-react/ssr-example/../../src/internal/instance.ts","webpack://@my-react/ssr-example/../../src/element/feature.ts","webpack://@my-react/ssr-example/../../src/element/instance.ts","webpack://@my-react/ssr-example/../../src/children/tool.ts","webpack://@my-react/ssr-example/../../src/component/instance.ts","webpack://@my-react/ssr-example/../../src/hook/feature.ts","webpack://@my-react/ssr-example/../../src/index.ts","webpack://@my-react/ssr-example/../../src/children/feature.ts","webpack://@my-react/ssr-example/../../src/share/transition.ts","webpack://@my-react/ssr-example/../../packages/myreact/index.js","webpack://@my-react/ssr-example/../../packages/myreact/jsx-runtime.js","webpack://@my-react/ssr-example/../../src/apollo/cache.ts","webpack://@my-react/ssr-example/../../src/apollo/client.ts","webpack://@my-react/ssr-example/../../src/schema.ts","webpack://@my-react/ssr-example/../../src/apollo/links.ts","webpack://@my-react/ssr-example/../../src/generated.ts","webpack://@my-react/ssr-example/./src/client/config/container.ts","webpack://@my-react/ssr-example/./src/client/router/routes.ts","webpack://@my-react/ssr-example/./src/client/common/LoadingBar/LoadingBar.tsx","webpack://@my-react/ssr-example/./src/client/common/LoadingBar/index.module.scss?8424","webpack://@my-react/ssr-example/./src/client/common/LoadingBar/index.tsx","webpack://@my-react/ssr-example/./src/client/common/WrapperRoute/index.tsx","webpack://@my-react/ssr-example/./src/client/common/RenderMatch.tsx","webpack://@my-react/ssr-example/./src/client/common/WrapperApollo/index.tsx","webpack://@my-react/ssr-example/./src/client/common/WrapperCatch/index.tsx","webpack://@my-react/ssr-example/./src/client/common/WrapperLang/index.tsx","webpack://@my-react/ssr-example/./src/client/common/App.tsx","webpack://@my-react/ssr-example/./src/client/app.tsx","webpack://@my-react/ssr-example/./src/client/entry.tsx","webpack://@my-react/ssr-example/./src/client/hooks/useLoadingStore.ts","webpack://@my-react/ssr-example/./src/client/hooks/useFoot.ts","webpack://@my-react/ssr-example/./src/client/hooks/useDebouncedState.ts","webpack://@my-react/ssr-example/./src/client/hooks/useSize.ts","webpack://@my-react/ssr-example/./src/client/hooks/useUpdate.ts","webpack://@my-react/ssr-example/./src/client/hooks/usePreLoad.ts","webpack://@my-react/ssr-example/./src/client/utils/dom.ts","webpack://@my-react/ssr-example/./src/client/hooks/useOverlay.ts","webpack://@my-react/ssr-example/./src/client/hooks/useIsMobile.ts","webpack://@my-react/ssr-example/./src/client/hooks/useIsMounted.ts","webpack://@my-react/ssr-example/./src/client/hooks/useLoadingBar.ts","webpack://@my-react/ssr-example/./src/client/hooks/useEffectOnce.ts","webpack://@my-react/ssr-example/./src/client/hooks/useWindowSize.ts","webpack://@my-react/ssr-example/./src/client/hooks/useLockBodyScroll.ts","webpack://@my-react/ssr-example/./src/client/hooks/useGetInitialProps.ts","webpack://@my-react/ssr-example/./src/client/hooks/useGetResponseListLayout.ts","webpack://@my-react/ssr-example/./src/client/common/AutoInjectProps.tsx","webpack://@my-react/ssr-example/./src/client/store/Time.ts","webpack://@my-react/ssr-example/./src/client/component/Footer/index.tsx","webpack://@my-react/ssr-example/./src/client/component/ColorMode/index.tsx","webpack://@my-react/ssr-example/./src/client/component/Header/GlobalStyle.tsx","webpack://@my-react/ssr-example/./src/client/component/Header/index.tsx","webpack://@my-react/ssr-example/./src/client/component/LockBody/index.tsx","webpack://@my-react/ssr-example/./src/client/component/Overlay/Mobile.tsx","webpack://@my-react/ssr-example/./src/client/component/Overlay/Desktop.tsx","webpack://@my-react/ssr-example/./src/client/component/ModuleManager/DesktopOverlay.tsx","webpack://@my-react/ssr-example/./src/client/component/ModuleManager/MobileOverlay.tsx","webpack://@my-react/ssr-example/./src/client/component/ModuleManager/index.tsx","webpack://@my-react/ssr-example/./src/client/common/Layout/index.tsx","webpack://@my-react/ssr-example/./src/client/router/routers.stream.ts","webpack://@my-react/ssr-example/./src/client/router/dynamicRoutes.ts","webpack://@my-react/ssr-example/./src/client/utils/delay.ts","webpack://@my-react/ssr-example/./src/client/utils/preLoad.ts","webpack://@my-react/ssr-example/./src/shared/env.ts","webpack://@my-react/ssr-example/./src/shared/i18n.ts","webpack://@my-react/ssr-example/./src/shared/store/saga/action/langSaga.ts","webpack://@my-react/ssr-example/./src/shared/store/saga/index.ts","webpack://@my-react/ssr-example/./src/shared/store/saga/utils.ts","webpack://@my-react/ssr-example/./src/shared/store/index.ts","webpack://@my-react/ssr-example/./src/shared/theme/styles.ts","webpack://@my-react/ssr-example/./src/shared/theme/index.ts","webpack://@my-react/ssr-example/./src/shared/theme/semanticTokens.ts","webpack://@my-react/ssr-example/./src/shared/template/Body.tsx","webpack://@my-react/ssr-example/./src/shared/template/Head.tsx","webpack://@my-react/ssr-example/./src/shared/template/index.tsx","webpack://@my-react/ssr-example/./src/shared/safeData.ts","webpack://@my-react/ssr-example/./src/shared/emotionCache.ts","webpack://@my-react/ssr-example/./src/shared/store/action.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/client/share/action.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/client/action/clientLang.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/client/action/clientProps.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/client/index.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/server/share/action.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/server/action/serverLang.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/server/index.ts","webpack://@my-react/ssr-example/./src/shared/store/reducer/index.ts","webpack://@my-react/ssr-example/./src/client/pages/ lazy ^\\.\\/.*$ chunkName: page-[request] prefetchOrder: 0 preloadOrder: 0 namespace object","webpack://@my-react/ssr-example/webpack/runtime/startup prefetch"],"sourcesContent":["\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n","\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n","'use strict';\n\nvar react = require('@my-react/react');\n\nvar myreactShared = {exports: {}};\n\nvar index_production = {};\n\nvar hasRequiredIndex_production;\n\nfunction requireIndex_production () {\n\tif (hasRequiredIndex_production) return index_production;\n\thasRequiredIndex_production = 1;\n\t(function (exports) {\n\n\t\tvar merge = function (src, rest) {\n\t\t return src | rest;\n\t\t};\n\t\tvar remove = function (src, rest) {\n\t\t if (src & rest) {\n\t\t return src ^ rest;\n\t\t }\n\t\t else {\n\t\t return src;\n\t\t }\n\t\t};\n\t\tvar include = function (src, rest) {\n\t\t return src & rest;\n\t\t};\n\t\tvar exclude = function (src, rest) {\n\t\t return !(src & rest);\n\t\t};\n\n\t\t/******************************************************************************\r\n\t\tCopyright (c) Microsoft Corporation.\r\n\r\n\t\tPermission to use, copy, modify, and/or distribute this software for any\r\n\t\tpurpose with or without fee is hereby granted.\r\n\r\n\t\tTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n\t\tREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n\t\tAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n\t\tINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n\t\tLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n\t\tOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n\t\tPERFORMANCE OF THIS SOFTWARE.\r\n\t\t***************************************************************************** */\r\n\t\t/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\n\t\tfunction __spreadArray(to, from, pack) {\r\n\t\t if (arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n\t\t if (ar || !(i in from)) {\r\n\t\t if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n\t\t ar[i] = from[i];\r\n\t\t }\r\n\t\t }\r\n\t\t return to.concat(ar || Array.prototype.slice.call(from));\r\n\t\t}\r\n\r\n\t\ttypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n\t\t var e = new Error(message);\r\n\t\t return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n\t\t};\n\n\t\tvar once = function (action) {\n\t\t var called = false;\n\t\t return function () {\n\t\t var args = [];\n\t\t for (var _i = 0; _i < arguments.length; _i++) {\n\t\t args[_i] = arguments[_i];\n\t\t }\n\t\t if (called)\n\t\t return;\n\t\t called = true;\n\t\t if (typeof action === \"function\")\n\t\t action.call.apply(action, __spreadArray([null], args, false));\n\t\t };\n\t\t};\n\n\t\tvar TYPEKEY = \"$$typeof\";\n\t\tvar Element = Symbol.for(\"react.element\");\n\t\tvar Memo = Symbol.for(\"react.memo\");\n\t\tvar ForwardRef = Symbol.for(\"react.forward_ref\");\n\t\tvar Portal = Symbol.for(\"react.portal\");\n\t\tvar Fragment = Symbol.for(\"react.fragment\");\n\t\tvar Context = Symbol.for(\"react.context\");\n\t\tvar Provider = Symbol.for(\"react.provider\");\n\t\tvar Consumer = Symbol.for(\"react.consumer\");\n\t\tvar Lazy = Symbol.for(\"react.lazy\");\n\t\tvar Suspense = Symbol.for(\"react.suspense\");\n\t\tvar Strict = Symbol.for(\"react.strict_mode\");\n\t\t// TODO\n\t\tvar KeepLive = Symbol.for(\"react.keep_live\");\n\t\tvar Scope = Symbol.for(\"react.scope\");\n\t\tvar Comment = Symbol.for(\"react.comment\");\n\t\tvar Offscreen = Symbol.for(\"react.offscreen\");\n\t\tvar Profiler = Symbol.for(\"react.profiler\");\n\n\t\tfunction isObject(target) {\n\t\t return typeof target === \"object\" && target !== null;\n\t\t}\n\t\tfunction isFunction(target) {\n\t\t return typeof target === \"function\";\n\t\t}\n\t\tfunction isArray(target) {\n\t\t return Array.isArray(target);\n\t\t}\n\t\tfunction isSymbol(target) {\n\t\t return typeof target === \"symbol\";\n\t\t}\n\t\tfunction isString(target) {\n\t\t return typeof target === \"string\";\n\t\t}\n\t\tfunction isInteger(target) {\n\t\t return Number.isInteger(Number(target));\n\t\t}\n\t\tfunction isNumber(target) {\n\t\t return typeof target === \"number\";\n\t\t}\n\t\tfunction isCollection(target) {\n\t\t return target instanceof Map || target instanceof Set || target instanceof WeakMap || target instanceof WeakSet;\n\t\t}\n\t\tvar isPromise = function (val) {\n\t\t return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n\t\t};\n\n\t\tvar UniqueArray = /** @class */ (function () {\n\t\t function UniqueArray() {\n\t\t this.set = new Set();\n\t\t this.arr = new Array();\n\t\t this.length = 0;\n\t\t }\n\t\t UniqueArray.prototype.uniPop = function () {\n\t\t var v = this.arr.pop();\n\t\t this.set.delete(v);\n\t\t this.length--;\n\t\t return v;\n\t\t };\n\t\t UniqueArray.prototype.uniPush = function (v) {\n\t\t if (this.set.has(v))\n\t\t return 0;\n\t\t this.set.add(v);\n\t\t this.arr.push(v);\n\t\t this.length++;\n\t\t };\n\t\t UniqueArray.prototype.uniShift = function () {\n\t\t var v = this.arr.shift();\n\t\t this.set.delete(v);\n\t\t this.length--;\n\t\t return v;\n\t\t };\n\t\t UniqueArray.prototype.uniUnshift = function (v) {\n\t\t if (this.set.has(v))\n\t\t return 0;\n\t\t this.set.add(v);\n\t\t this.arr.unshift(v);\n\t\t this.length++;\n\t\t };\n\t\t UniqueArray.prototype.uniDelete = function (v) {\n\t\t if (this.set.has(v)) {\n\t\t this.set.delete(v);\n\t\t this.arr = this.arr.filter(function (i) { return i !== v; });\n\t\t this.length--;\n\t\t }\n\t\t };\n\t\t UniqueArray.prototype.clear = function () {\n\t\t this.length = 0;\n\t\t this.set.clear();\n\t\t this.arr.length = 0;\n\t\t };\n\t\t UniqueArray.prototype.getAll = function () {\n\t\t return this.arr;\n\t\t };\n\t\t return UniqueArray;\n\t\t}());\n\n\t\texports.HOOK_TYPE = void 0;\n\t\t(function (HOOK_TYPE) {\n\t\t HOOK_TYPE[HOOK_TYPE[\"useId\"] = 0] = \"useId\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useRef\"] = 1] = \"useRef\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useMemo\"] = 2] = \"useMemo\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useState\"] = 3] = \"useState\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useSignal\"] = 4] = \"useSignal\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useEffect\"] = 5] = \"useEffect\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useContext\"] = 6] = \"useContext\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useReducer\"] = 7] = \"useReducer\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useCallback\"] = 8] = \"useCallback\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useTransition\"] = 9] = \"useTransition\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useDebugValue\"] = 10] = \"useDebugValue\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useLayoutEffect\"] = 11] = \"useLayoutEffect\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useDeferredValue\"] = 12] = \"useDeferredValue\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useInsertionEffect\"] = 13] = \"useInsertionEffect\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useImperativeHandle\"] = 14] = \"useImperativeHandle\";\n\t\t HOOK_TYPE[HOOK_TYPE[\"useSyncExternalStore\"] = 15] = \"useSyncExternalStore\";\n\t\t})(exports.HOOK_TYPE || (exports.HOOK_TYPE = {}));\n\n\t\texports.UpdateQueueType = void 0;\n\t\t(function (UpdateQueueType) {\n\t\t UpdateQueueType[UpdateQueueType[\"hook\"] = 2] = \"hook\";\n\t\t UpdateQueueType[UpdateQueueType[\"component\"] = 1] = \"component\";\n\t\t UpdateQueueType[UpdateQueueType[\"lazy\"] = 3] = \"lazy\";\n\t\t UpdateQueueType[UpdateQueueType[\"context\"] = 4] = \"context\";\n\t\t})(exports.UpdateQueueType || (exports.UpdateQueueType = {}));\n\n\t\texports.MODE_TYPE = void 0;\n\t\t(function (MODE_TYPE) {\n\t\t MODE_TYPE[MODE_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n\t\t MODE_TYPE[MODE_TYPE[\"__stable__\"] = 1] = \"__stable__\";\n\t\t})(exports.MODE_TYPE || (exports.MODE_TYPE = {}));\n\n\t\texports.STATE_TYPE = void 0;\n\t\t(function (STATE_TYPE) {\n\t\t STATE_TYPE[STATE_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__create__\"] = 1] = \"__create__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__stable__\"] = 2] = \"__stable__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__skippedConcurrent__\"] = 4] = \"__skippedConcurrent__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__skippedSync__\"] = 8] = \"__skippedSync__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__inherit__\"] = 16] = \"__inherit__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__triggerConcurrent__\"] = 32] = \"__triggerConcurrent__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__triggerConcurrentForce__\"] = 64] = \"__triggerConcurrentForce__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__triggerSync__\"] = 128] = \"__triggerSync__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__triggerSyncForce__\"] = 256] = \"__triggerSyncForce__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__unmount__\"] = 512] = \"__unmount__\";\n\t\t STATE_TYPE[STATE_TYPE[\"__hmr__\"] = 1024] = \"__hmr__\";\n\t\t})(exports.STATE_TYPE || (exports.STATE_TYPE = {}));\n\n\t\texports.PATCH_TYPE = void 0;\n\t\t(function (PATCH_TYPE) {\n\t\t PATCH_TYPE[PATCH_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__create__\"] = 1] = \"__create__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__update__\"] = 2] = \"__update__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__append__\"] = 4] = \"__append__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__position__\"] = 8] = \"__position__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__effect__\"] = 16] = \"__effect__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__layoutEffect__\"] = 32] = \"__layoutEffect__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__insertionEffect__\"] = 64] = \"__insertionEffect__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__unmount__\"] = 128] = \"__unmount__\";\n\t\t PATCH_TYPE[PATCH_TYPE[\"__ref__\"] = 256] = \"__ref__\";\n\t\t})(exports.PATCH_TYPE || (exports.PATCH_TYPE = {}));\n\n\t\texports.Effect_TYPE = void 0;\n\t\t(function (Effect_TYPE) {\n\t\t Effect_TYPE[Effect_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n\t\t Effect_TYPE[Effect_TYPE[\"__effect__\"] = 1] = \"__effect__\";\n\t\t Effect_TYPE[Effect_TYPE[\"__unmount__\"] = 2] = \"__unmount__\";\n\t\t})(exports.Effect_TYPE || (exports.Effect_TYPE = {}));\n\n\t\tvar compareVersion = function (version1, version2) {\n\t\t var compare = function (arr1, arr2) {\n\t\t if (arr1.length && arr2.length) {\n\t\t var v1 = arr1[0];\n\t\t var v2 = arr2[0];\n\t\t if (v1 > v2)\n\t\t return true;\n\t\t if (v2 > v1)\n\t\t return false;\n\t\t return compare(arr1.slice(1), arr2.slice(1));\n\t\t }\n\t\t if (arr1.length)\n\t\t return true;\n\t\t if (arr2.length)\n\t\t return false;\n\t\t return true;\n\t\t };\n\t\t return compare(version1.split(\".\").map(Number), version2.split(\".\").map(Number));\n\t\t};\n\n\t\tvar isNormalEquals = function (src, target, isSkipKey) {\n\t\t var isEquals = Object.is(src, target);\n\t\t if (isEquals)\n\t\t return true;\n\t\t var hasSkipKeyFunction = typeof isSkipKey === \"function\";\n\t\t if (typeof src === \"object\" && typeof target === \"object\" && src !== null && target !== null) {\n\t\t var srcKeys = Object.keys(src);\n\t\t var targetKeys = Object.keys(target);\n\t\t if (srcKeys.length !== targetKeys.length)\n\t\t return false;\n\t\t var res = true;\n\t\t if (hasSkipKeyFunction) {\n\t\t for (var _i = 0, srcKeys_1 = srcKeys; _i < srcKeys_1.length; _i++) {\n\t\t var key = srcKeys_1[_i];\n\t\t if (isSkipKey(key) && key in target) {\n\t\t continue;\n\t\t }\n\t\t else {\n\t\t res = res && Object.is(src[key], target[key]);\n\t\t }\n\t\t if (!res)\n\t\t return res;\n\t\t }\n\t\t }\n\t\t else {\n\t\t for (var _a = 0, srcKeys_2 = srcKeys; _a < srcKeys_2.length; _a++) {\n\t\t var key = srcKeys_2[_a];\n\t\t res = res && Object.is(src[key], target[key]);\n\t\t if (!res)\n\t\t return res;\n\t\t }\n\t\t }\n\t\t return res;\n\t\t }\n\t\t return false;\n\t\t};\n\t\tvar isArrayEquals = function (src, target) {\n\t\t var isEquals = Object.is(src, target);\n\t\t if (isEquals)\n\t\t return true;\n\t\t if (Array.isArray(src) && Array.isArray(target) && src.length === target.length) {\n\t\t var re = true;\n\t\t for (var key in src) {\n\t\t re = re && Object.is(src[key], target[key]);\n\t\t if (!re)\n\t\t return re;\n\t\t }\n\t\t return re;\n\t\t }\n\t\t return false;\n\t\t};\n\n\t\tvar ListTreeNode = /** @class */ (function () {\n\t\t function ListTreeNode(value) {\n\t\t this.prev = null;\n\t\t this.next = null;\n\t\t this.value = value;\n\t\t }\n\t\t return ListTreeNode;\n\t\t}());\n\t\tvar ListTree = /** @class */ (function () {\n\t\t function ListTree() {\n\t\t this.length = 0;\n\t\t var _stickyHead = null;\n\t\t Object.defineProperty(this, \"stickyHead\", {\n\t\t get: function () {\n\t\t return _stickyHead;\n\t\t },\n\t\t set: function (v) {\n\t\t _stickyHead = v;\n\t\t },\n\t\t });\n\t\t var _stickyFoot = null;\n\t\t Object.defineProperty(this, \"stickyFoot\", {\n\t\t get: function () {\n\t\t return _stickyFoot;\n\t\t },\n\t\t set: function (v) {\n\t\t _stickyFoot = v;\n\t\t },\n\t\t });\n\t\t var _head = null;\n\t\t Object.defineProperty(this, \"head\", {\n\t\t get: function () {\n\t\t return _head;\n\t\t },\n\t\t set: function (v) {\n\t\t _head = v;\n\t\t },\n\t\t });\n\t\t var _foot = null;\n\t\t Object.defineProperty(this, \"foot\", {\n\t\t get: function () {\n\t\t return _foot;\n\t\t },\n\t\t set: function (v) {\n\t\t _foot = v;\n\t\t },\n\t\t });\n\t\t }\n\t\t ListTree.prototype.push = function (node) {\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.length++;\n\t\t if (!this.foot) {\n\t\t this.head = listNode;\n\t\t this.foot = listNode;\n\t\t }\n\t\t else {\n\t\t this.foot.next = listNode;\n\t\t listNode.prev = this.foot;\n\t\t this.foot = listNode;\n\t\t }\n\t\t };\n\t\t ListTree.prototype.pushToLast = function (node) {\n\t\t if (this.stickyFoot) {\n\t\t var node_1 = this.stickyFoot;\n\t\t this.push(node_1.value);\n\t\t this.stickyFoot = null;\n\t\t }\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.stickyFoot = listNode;\n\t\t this.length++;\n\t\t };\n\t\t ListTree.prototype.pushToHead = function (node) {\n\t\t if (this.stickyHead) {\n\t\t var node_2 = this.stickyHead;\n\t\t this.unshift(node_2.value);\n\t\t this.stickyHead = null;\n\t\t }\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.stickyHead = listNode;\n\t\t this.length++;\n\t\t };\n\t\t ListTree.prototype.pop = function () {\n\t\t var foot = this.stickyFoot || this.foot;\n\t\t if (foot) {\n\t\t this.delete(foot);\n\t\t return foot.value;\n\t\t }\n\t\t else {\n\t\t return null;\n\t\t }\n\t\t };\n\t\t ListTree.prototype.unshift = function (node) {\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.length++;\n\t\t if (!this.head) {\n\t\t this.head = listNode;\n\t\t this.foot = listNode;\n\t\t }\n\t\t else {\n\t\t this.head.prev = listNode;\n\t\t listNode.next = this.head;\n\t\t this.head = listNode;\n\t\t }\n\t\t };\n\t\t ListTree.prototype.unshiftToHead = function (node) {\n\t\t if (this.stickyHead) {\n\t\t var node_3 = this.stickyHead;\n\t\t this.unshift(node_3.value);\n\t\t this.stickyHead = null;\n\t\t }\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.stickyHead = listNode;\n\t\t };\n\t\t ListTree.prototype.unshiftToFoot = function (node) {\n\t\t if (this.stickyFoot) {\n\t\t var node_4 = this.stickyFoot;\n\t\t this.push(node_4.value);\n\t\t this.stickyFoot = null;\n\t\t }\n\t\t var listNode = new ListTreeNode(node);\n\t\t this.stickyFoot = listNode;\n\t\t };\n\t\t ListTree.prototype.shift = function () {\n\t\t var head = this.stickyHead || this.head;\n\t\t if (head) {\n\t\t this.delete(head);\n\t\t return head.value;\n\t\t }\n\t\t else {\n\t\t return null;\n\t\t }\n\t\t };\n\t\t ListTree.prototype.pickHead = function () {\n\t\t var _a, _b;\n\t\t return ((_a = this.stickyHead) === null || _a === void 0 ? void 0 : _a.value) || ((_b = this.head) === null || _b === void 0 ? void 0 : _b.value);\n\t\t };\n\t\t ListTree.prototype.pickFoot = function () {\n\t\t var _a, _b;\n\t\t return ((_a = this.stickyFoot) === null || _a === void 0 ? void 0 : _a.value) || ((_b = this.foot) === null || _b === void 0 ? void 0 : _b.value);\n\t\t };\n\t\t ListTree.prototype.listToFoot = function (action) {\n\t\t if (this.stickyHead) {\n\t\t action(this.stickyHead.value);\n\t\t }\n\t\t var node = this.head;\n\t\t while (node) {\n\t\t action(node.value);\n\t\t node = node.next;\n\t\t }\n\t\t if (this.stickyFoot) {\n\t\t action(this.stickyFoot.value);\n\t\t }\n\t\t };\n\t\t ListTree.prototype.listToHead = function (action) {\n\t\t if (this.stickyFoot) {\n\t\t action(this.stickyFoot.value);\n\t\t }\n\t\t var node = this.foot;\n\t\t while (node) {\n\t\t action(node.value);\n\t\t node = node.prev;\n\t\t }\n\t\t if (this.stickyHead) {\n\t\t action(this.stickyHead.value);\n\t\t }\n\t\t };\n\t\t ListTree.prototype.toArray = function () {\n\t\t var re = [];\n\t\t this.listToFoot(function (v) { return re.push(v); });\n\t\t return re;\n\t\t };\n\t\t ListTree.prototype.delete = function (node) {\n\t\t if (this.stickyHead === node) {\n\t\t this.stickyHead = null;\n\t\t this.length--;\n\t\t }\n\t\t else if (this.stickyFoot === node) {\n\t\t this.stickyFoot = null;\n\t\t this.length--;\n\t\t }\n\t\t else if (this.head === node) {\n\t\t var next = node.next;\n\t\t node.next = null;\n\t\t if (next) {\n\t\t this.head = next;\n\t\t next.prev = null;\n\t\t }\n\t\t else {\n\t\t this.head = null;\n\t\t this.foot = null;\n\t\t }\n\t\t this.length--;\n\t\t }\n\t\t else if (this.foot === node) {\n\t\t var prev = node.prev;\n\t\t node.prev = null;\n\t\t if (prev) {\n\t\t this.foot = prev;\n\t\t prev.next = null;\n\t\t }\n\t\t else {\n\t\t this.head = null;\n\t\t this.foot = null;\n\t\t }\n\t\t this.length--;\n\t\t }\n\t\t else if (this.hasNode(node)) {\n\t\t var prev = node.prev;\n\t\t var next = node.next;\n\t\t node.prev = null;\n\t\t node.next = null;\n\t\t prev.next = next;\n\t\t next.prev = prev;\n\t\t this.length--;\n\t\t }\n\t\t };\n\t\t ListTree.prototype.size = function () {\n\t\t return this.length;\n\t\t };\n\t\t ListTree.prototype.hasNode = function (node) {\n\t\t if (this.stickyHead && Object.is(this.stickyHead, node))\n\t\t return true;\n\t\t if (this.stickyFoot && Object.is(this.stickyFoot, node))\n\t\t return true;\n\t\t var listNode = this.head;\n\t\t while (listNode) {\n\t\t if (Object.is(listNode, node))\n\t\t return true;\n\t\t listNode = listNode.next;\n\t\t }\n\t\t return false;\n\t\t };\n\t\t ListTree.prototype.hasValue = function (node) {\n\t\t if (this.stickyHead && Object.is(this.stickyHead.value, node))\n\t\t return true;\n\t\t if (this.stickyFoot && Object.is(this.stickyFoot.value, node))\n\t\t return true;\n\t\t var listNode = this.head;\n\t\t while (listNode) {\n\t\t if (Object.is(listNode.value, node))\n\t\t return true;\n\t\t listNode = listNode.next;\n\t\t }\n\t\t return false;\n\t\t };\n\t\t ListTree.prototype.some = function (iterator) {\n\t\t var re = false;\n\t\t this.listToFoot(function (node) {\n\t\t re = re || iterator(node);\n\t\t });\n\t\t return re;\n\t\t };\n\t\t ListTree.prototype.every = function (iterator) {\n\t\t var re = true;\n\t\t this.listToFoot(function (node) {\n\t\t re = re && iterator(node);\n\t\t });\n\t\t return re;\n\t\t };\n\t\t ListTree.prototype.concat = function (list) {\n\t\t var newList = new ListTree();\n\t\t this.listToFoot(function (node) { return newList.push(node); });\n\t\t list.listToFoot(function (node) { return newList.push(node); });\n\t\t return newList;\n\t\t };\n\t\t ListTree.prototype.clone = function () {\n\t\t var newList = new ListTree();\n\t\t this.listToFoot(function (v) { return newList.push(v); });\n\t\t return newList;\n\t\t };\n\t\t ListTree.prototype.clear = function () {\n\t\t this.length = 0;\n\t\t this.head = null;\n\t\t this.foot = null;\n\t\t this.stickyHead = null;\n\t\t this.stickyFoot = null;\n\t\t };\n\t\t return ListTree;\n\t\t}());\n\n\t\texports.Comment = Comment;\n\t\texports.Consumer = Consumer;\n\t\texports.Context = Context;\n\t\texports.Element = Element;\n\t\texports.ForwardRef = ForwardRef;\n\t\texports.Fragment = Fragment;\n\t\texports.KeepLive = KeepLive;\n\t\texports.Lazy = Lazy;\n\t\texports.ListTree = ListTree;\n\t\texports.ListTreeNode = ListTreeNode;\n\t\texports.Memo = Memo;\n\t\texports.Offscreen = Offscreen;\n\t\texports.Portal = Portal;\n\t\texports.Profiler = Profiler;\n\t\texports.Provider = Provider;\n\t\texports.Scope = Scope;\n\t\texports.Strict = Strict;\n\t\texports.Suspense = Suspense;\n\t\texports.TYPEKEY = TYPEKEY;\n\t\texports.UniqueArray = UniqueArray;\n\t\texports.compareVersion = compareVersion;\n\t\texports.exclude = exclude;\n\t\texports.include = include;\n\t\texports.isArray = isArray;\n\t\texports.isArrayEquals = isArrayEquals;\n\t\texports.isCollection = isCollection;\n\t\texports.isFunction = isFunction;\n\t\texports.isInteger = isInteger;\n\t\texports.isNormalEquals = isNormalEquals;\n\t\texports.isNumber = isNumber;\n\t\texports.isObject = isObject;\n\t\texports.isPromise = isPromise;\n\t\texports.isString = isString;\n\t\texports.isSymbol = isSymbol;\n\t\texports.merge = merge;\n\t\texports.once = once;\n\t\texports.remove = remove;\n\t\t\n\t} (index_production));\n\treturn index_production;\n}\n\n{\n myreactShared.exports = requireIndex_production();\n}\n\nvar myreactSharedExports = myreactShared.exports;\n\nvar MyWeakMap = typeof WeakMap !== \"undefined\" ? WeakMap : Map;\n\nvar currentRenderDispatch = react.createRef(null);\nvar currentRefreshHandler = react.createRef(null);\n// TODO\n// need improve\nvar currentTriggerFiber = react.createRef(null);\nvar currentDevFiber = react.createRef(null);\nvar fiberToDispatchMap = new MyWeakMap();\nvar enableFiberForLog = react.createRef(false);\n\nexports.NODE_TYPE = void 0;\n(function (NODE_TYPE) {\n NODE_TYPE[NODE_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n NODE_TYPE[NODE_TYPE[\"__class__\"] = 1] = \"__class__\";\n NODE_TYPE[NODE_TYPE[\"__function__\"] = 2] = \"__function__\";\n NODE_TYPE[NODE_TYPE[\"__lazy__\"] = 4] = \"__lazy__\";\n NODE_TYPE[NODE_TYPE[\"__memo__\"] = 8] = \"__memo__\";\n NODE_TYPE[NODE_TYPE[\"__forwardRef__\"] = 16] = \"__forwardRef__\";\n NODE_TYPE[NODE_TYPE[\"__provider__\"] = 32] = \"__provider__\";\n NODE_TYPE[NODE_TYPE[\"__consumer__\"] = 64] = \"__consumer__\";\n NODE_TYPE[NODE_TYPE[\"__portal__\"] = 128] = \"__portal__\";\n NODE_TYPE[NODE_TYPE[\"__null__\"] = 256] = \"__null__\";\n NODE_TYPE[NODE_TYPE[\"__text__\"] = 512] = \"__text__\";\n NODE_TYPE[NODE_TYPE[\"__empty__\"] = 1024] = \"__empty__\";\n NODE_TYPE[NODE_TYPE[\"__plain__\"] = 2048] = \"__plain__\";\n NODE_TYPE[NODE_TYPE[\"__strict__\"] = 4096] = \"__strict__\";\n NODE_TYPE[NODE_TYPE[\"__suspense__\"] = 8192] = \"__suspense__\";\n NODE_TYPE[NODE_TYPE[\"__fragment__\"] = 16384] = \"__fragment__\";\n NODE_TYPE[NODE_TYPE[\"__keepLive__\"] = 32768] = \"__keepLive__\";\n NODE_TYPE[NODE_TYPE[\"__scope__\"] = 65536] = \"__scope__\";\n NODE_TYPE[NODE_TYPE[\"__comment__\"] = 131072] = \"__comment__\";\n NODE_TYPE[NODE_TYPE[\"__profiler__\"] = 262144] = \"__profiler__\";\n})(exports.NODE_TYPE || (exports.NODE_TYPE = {}));\n\n// used for hmr\nvar typeToFibersMap = new MyWeakMap();\nvar setRefreshHandler = function (handler) {\n};\nvar setRefreshTypeMap = function (fiber) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__ | exports.NODE_TYPE.__function__)) {\n var elementType = fiber.elementType;\n var exist = typeToFibersMap.get(elementType) || new Set();\n exist.add(fiber);\n typeToFibersMap.set(elementType, exist);\n }\n};\nvar getCurrentTypeFromRefresh = function (type) {\n var family = void 0 ;\n return (family === null || family === void 0 ? void 0 : family.current) || type;\n};\nvar getCurrentFibersFromType = function (type) {\n return typeToFibersMap.get(type);\n};\nvar getCurrentDispatchFromType = function (type) {\n var fibers = getCurrentFibersFromType(type);\n return new Set(Array.from(fibers || []).map(function (fiber) { return fiberToDispatchMap.get(fiber); }));\n};\nvar getCurrentDispatchFromFiber = function (fiber) {\n return fiberToDispatchMap.get(fiber);\n};\n\nreact.__my_react_internal__.currentComponentFiber;\nvar initHMR = function (env) {\n};\n\nvar enableSyncFlush$1 = react.__my_react_shared__.enableSyncFlush;\n/**\n * @deprecated\n */\nexports.syncFlush = false;\n/**\n * @deprecated\n */\nvar beforeSyncFlush = function () {\n exports.syncFlush = true;\n};\n/**\n * @deprecated\n */\nvar afterSyncFlush = function () {\n exports.syncFlush = false;\n};\nvar prev = [enableSyncFlush$1.current];\nvar beforeSyncUpdate = function () {\n prev.push(enableSyncFlush$1.current);\n enableSyncFlush$1.current = true;\n};\nvar afterSyncUpdate = function () {\n enableSyncFlush$1.current = prev.pop();\n};\n\nfunction getStack() {\n var orig = Error.prepareStackTrace;\n Error.prepareStackTrace = function (_, stack) { return stack; };\n var error = new Error();\n var stack = error.stack;\n Error.prepareStackTrace = orig;\n return stack;\n}\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar isErrorBoundariesInstance = function (instance, Component) {\n return typeof instance.componentDidCatch === \"function\" || typeof Component.getDerivedStateFromError === \"function\";\n};\nvar isErrorBoundariesComponent = function (fiber) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__)) {\n var Component = fiber.elementType;\n var typedComponent = Component;\n var typedInstance = fiber.instance;\n return isErrorBoundariesInstance(typedInstance, typedComponent);\n }\n return false;\n};\nvar defaultGenerateErrorBoundariesMap = function (fiber, map) {\n var parent = fiber.parent;\n if (parent) {\n if (isErrorBoundariesComponent(parent)) {\n map.set(fiber, parent);\n }\n else {\n var parentErrorBoundaries = map.get(parent);\n parentErrorBoundaries && map.set(fiber, parentErrorBoundaries);\n }\n }\n};\nvar defaultResolveErrorBoundaries = function (fiber) {\n var parent = fiber.parent;\n while (parent) {\n if (isErrorBoundariesComponent(parent)) {\n return parent;\n }\n parent = parent.parent;\n }\n return null;\n};\n\nvar currentRenderPlatform$a = react.__my_react_internal__.currentRenderPlatform;\nvar defaultDispatchMountLegacy = function (_fiber, _dispatch) {\n var mountInsertionEffect = function (_fiber) {\n if (_fiber.child)\n mountInsertionEffect(_fiber.child);\n insertionEffect(_fiber, _dispatch);\n if (_fiber.sibling)\n mountInsertionEffect(_fiber.sibling);\n };\n var mountCommit = function (_fiber) {\n safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitCreate(_fiber);\n _dispatch.commitUpdate(_fiber);\n },\n });\n if (_fiber.child)\n mountCommit(_fiber.child);\n safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitAppend(_fiber);\n _dispatch.commitSetRef(_fiber);\n },\n });\n if (_fiber.sibling) {\n mountCommit(_fiber.sibling);\n }\n };\n var mountLayoutEffect = function (_fiber) {\n if (_fiber.child)\n mountLayoutEffect(_fiber.child);\n layoutEffect(_fiber, _dispatch);\n if (_fiber.sibling)\n mountLayoutEffect(_fiber.sibling);\n };\n var mountEffect = function (_fiber) {\n if (_fiber.child)\n mountEffect(_fiber.child);\n effect(_fiber, _dispatch);\n if (_fiber.sibling)\n mountEffect(_fiber.sibling);\n };\n var mountLoop = function (_fiber) {\n beforeSyncUpdate();\n mountInsertionEffect(_fiber);\n afterSyncUpdate();\n mountCommit(_fiber);\n beforeSyncUpdate();\n mountLayoutEffect(_fiber);\n afterSyncUpdate();\n var renderPlatform = currentRenderPlatform$a.current;\n renderPlatform.microTask(function () { return mountEffect(_fiber); });\n };\n mountLoop(_fiber);\n};\nvar defaultDispatchMountLatest = function (_fiber, _dispatch) {\n var _list = generateFiberToMountList(_fiber);\n beforeSyncUpdate();\n _list.listToFoot(function (_fiber) { return insertionEffect(_fiber, _dispatch); });\n afterSyncUpdate();\n _list.listToFoot(function (_fiber) {\n safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitCreate(_fiber);\n _dispatch.commitUpdate(_fiber);\n },\n });\n });\n _list.listToFoot(function (_fiber) {\n return safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitAppend(_fiber);\n _dispatch.commitSetRef(_fiber);\n },\n });\n });\n beforeSyncUpdate();\n _list.listToFoot(function (_fiber) { return layoutEffect(_fiber, _dispatch); });\n afterSyncUpdate();\n var renderPlatform = currentRenderPlatform$a.current;\n renderPlatform.microTask(function () { return _list.listToFoot(function (_fiber) { return effect(_fiber, _dispatch); }); });\n};\nvar defaultDispatchMount = defaultDispatchMountLatest;\n\nreact.__my_react_shared__.enableDebugFiled;\n// TODO used for hydrate fallback\nvar defaultGenerateScopeMap = function (fiber, map) {\n var parent = fiber.parent;\n if (parent) {\n if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__scope__)) {\n map.set(fiber, parent);\n }\n else {\n var parentScopeFiber = map.get(parent);\n parentScopeFiber && map.set(fiber, parentScopeFiber);\n }\n }\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar defaultGenerateStrictMap = function (fiber, map) {\n var parent = fiber.parent;\n if (parent) {\n if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__strict__)) {\n map.set(fiber, true);\n }\n else {\n var parentIsStrict = map.get(parent);\n parentIsStrict && map.set(fiber, parentIsStrict);\n }\n }\n};\nvar defaultGenerateStrict = function (fiber) {\n return false;\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar defaultGenerateSuspenseMap = function (fiber, map) {\n var parent = fiber.parent;\n if (parent) {\n if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {\n map.set(fiber, parent);\n }\n else {\n var parentFiber = map.get(parent);\n parentFiber && map.set(fiber, parentFiber);\n }\n }\n var parentFiber; \n};\nvar defaultResolveSuspense = function (fiber) {\n var _a;\n var parent = fiber.parent;\n while (parent) {\n if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {\n return (_a = parent.pendingProps) === null || _a === void 0 ? void 0 : _a[\"fallback\"];\n }\n parent = parent.parent;\n }\n return null;\n};\n\nvar currentRunningFiber$2 = react.__my_react_internal__.currentRunningFiber;\nvar performToNextFiberFromRoot = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) || renderDispatch.isAppCrashed)\n return null;\n currentRunningFiber$2.current = fiber;\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__create__ |\n myreactSharedExports.STATE_TYPE.__inherit__ |\n myreactSharedExports.STATE_TYPE.__triggerSync__ |\n myreactSharedExports.STATE_TYPE.__triggerSyncForce__ |\n myreactSharedExports.STATE_TYPE.__triggerConcurrent__ |\n myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__)) {\n currentRenderDispatch.current = renderDispatch;\n {\n runtimeNextWork(fiber);\n }\n currentRenderDispatch.current = null;\n }\n currentRunningFiber$2.current = null;\n fiber.state = myreactSharedExports.STATE_TYPE.__stable__;\n if (fiber.child)\n return fiber.child;\n var nextFiber = fiber;\n while (nextFiber && nextFiber !== renderDispatch.runtimeFiber.scheduledFiber) {\n renderDispatch.generateCommitList(nextFiber);\n if (nextFiber.sibling)\n return nextFiber.sibling;\n nextFiber = nextFiber.parent;\n }\n if (nextFiber === renderDispatch.runtimeFiber.scheduledFiber)\n renderDispatch.generateCommitList(nextFiber);\n return null;\n};\nvar performToNextFiberFromTrigger = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) || renderDispatch.isAppCrashed)\n return null;\n currentRunningFiber$2.current = fiber;\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__create__ |\n myreactSharedExports.STATE_TYPE.__inherit__ |\n myreactSharedExports.STATE_TYPE.__triggerSync__ |\n myreactSharedExports.STATE_TYPE.__triggerSyncForce__ |\n myreactSharedExports.STATE_TYPE.__triggerConcurrent__ |\n myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__)) {\n currentRenderDispatch.current = renderDispatch;\n {\n runtimeNextWork(fiber);\n }\n currentRenderDispatch.current = null;\n fiber.state = myreactSharedExports.STATE_TYPE.__stable__;\n currentRunningFiber$2.current = null;\n if (fiber.child)\n return fiber.child;\n }\n currentRunningFiber$2.current = null;\n var nextFiber = fiber;\n while (nextFiber && nextFiber !== renderDispatch.runtimeFiber.scheduledFiber) {\n renderDispatch.generateCommitList(nextFiber);\n if (nextFiber.sibling)\n return nextFiber.sibling;\n nextFiber = nextFiber.parent;\n }\n if (nextFiber === renderDispatch.runtimeFiber.scheduledFiber)\n renderDispatch.generateCommitList(nextFiber);\n return null;\n};\n\nvar updateLoopSyncFromRoot = function (renderDispatch) {\n while (renderDispatch.runtimeFiber.nextWorkingFiber) {\n var nextFiber = performToNextFiberFromRoot(renderDispatch.runtimeFiber.nextWorkingFiber, renderDispatch);\n renderDispatch.runtimeFiber.nextWorkingFiber = nextFiber;\n }\n};\nvar updateLoopSyncFromTrigger = function (renderDispatch) {\n while (renderDispatch.runtimeFiber.nextWorkingFiber) {\n var nextFiber = performToNextFiberFromTrigger(renderDispatch.runtimeFiber.nextWorkingFiber, renderDispatch);\n renderDispatch.runtimeFiber.nextWorkingFiber = nextFiber;\n }\n};\nvar updateLoopConcurrentFromRoot = function (renderDispatch) {\n while (renderDispatch.runtimeFiber.nextWorkingFiber && !renderDispatch.shouldYield()) {\n var nextFiber = performToNextFiberFromRoot(renderDispatch.runtimeFiber.nextWorkingFiber, renderDispatch);\n renderDispatch.runtimeFiber.nextWorkingFiber = nextFiber;\n }\n};\nvar updateLoopConcurrentFromTrigger = function (renderDispatch) {\n while (renderDispatch.runtimeFiber.nextWorkingFiber && !renderDispatch.shouldYield()) {\n var nextFiber = performToNextFiberFromTrigger(renderDispatch.runtimeFiber.nextWorkingFiber, renderDispatch);\n renderDispatch.runtimeFiber.nextWorkingFiber = nextFiber;\n }\n};\n\nvar globalLoop$2 = react.__my_react_internal__.globalLoop, currentRenderPlatform$9 = react.__my_react_internal__.currentRenderPlatform;\nreact.__my_react_shared__.enableScopeTreeLog;\nvar updateSyncFromRoot = function (renderDispatch, cb) {\n globalLoop$2.current = true;\n var renderPlatform = currentRenderPlatform$9.current;\n updateLoopSyncFromRoot(renderDispatch);\n var commitList = renderDispatch.pendingCommitFiberList;\n var changedList = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList === null || changedList === void 0 ? void 0 : changedList.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); }); });\n renderPlatform.microTask(function () {\n globalLoop$2.current = false;\n cb === null || cb === void 0 ? void 0 : cb();\n });\n};\nvar updateSyncFromTrigger = function (renderDispatch, cb) {\n globalLoop$2.current = true;\n var renderPlatform = currentRenderPlatform$9.current;\n updateLoopSyncFromTrigger(renderDispatch);\n var commitList = renderDispatch.pendingCommitFiberList;\n var changedList = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList === null || changedList === void 0 ? void 0 : changedList.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); }); });\n renderPlatform.microTask(function () {\n globalLoop$2.current = false;\n cb === null || cb === void 0 ? void 0 : cb();\n });\n};\nvar updateConcurrentFromRoot = function (renderDispatch, cb) {\n globalLoop$2.current = true;\n var renderPlatform = currentRenderPlatform$9.current;\n updateLoopConcurrentFromRoot(renderDispatch);\n if (renderDispatch.runtimeFiber.nextWorkingFiber) {\n renderPlatform.yieldTask(function () { return updateConcurrentFromRoot(renderDispatch, cb); });\n }\n else {\n var commitList = renderDispatch.pendingCommitFiberList;\n var changedList_1 = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList_1 === null || changedList_1 === void 0 ? void 0 : changedList_1.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList_1); }); });\n renderPlatform.microTask(function () {\n globalLoop$2.current = false;\n cb === null || cb === void 0 ? void 0 : cb();\n });\n }\n};\nvar updateConcurrentFromTrigger = function (renderDispatch, cb) {\n globalLoop$2.current = true;\n var renderPlatform = currentRenderPlatform$9.current;\n updateLoopConcurrentFromTrigger(renderDispatch);\n if (renderDispatch.runtimeFiber.nextWorkingFiber) {\n renderPlatform.yieldTask(function () { return updateConcurrentFromTrigger(renderDispatch, cb); });\n }\n else {\n var commitList = renderDispatch.pendingCommitFiberList;\n var changedList_2 = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList_2 === null || changedList_2 === void 0 ? void 0 : changedList_2.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList_2); }); });\n renderPlatform.microTask(function () {\n globalLoop$2.current = false;\n cb === null || cb === void 0 ? void 0 : cb();\n });\n }\n};\n\nvar globalLoop$1 = react.__my_react_internal__.globalLoop, currentRenderPlatform$8 = react.__my_react_internal__.currentRenderPlatform;\nvar enableConcurrentMode$1 = react.__my_react_shared__.enableConcurrentMode, enableLoopFromRoot$2 = react.__my_react_shared__.enableLoopFromRoot;\nvar scheduleNext = function (renderDispatch) {\n var _a;\n if (!renderDispatch.isAppUnmounted && !renderDispatch.isAppCrashed && renderDispatch.enableUpdate && renderDispatch.pendingUpdateFiberArray.length) {\n scheduleUpdate(renderDispatch);\n return;\n }\n var renderPlatform = currentRenderPlatform$8.current;\n if (!renderPlatform.dispatchSet || ((_a = renderPlatform.dispatchSet) === null || _a === void 0 ? void 0 : _a.length) === 1)\n return;\n var allDispatch = renderPlatform.dispatchSet;\n var hasPending = allDispatch\n .getAll()\n .find(function (d) { return d !== renderDispatch && d.isAppMounted && d.enableUpdate && !d.isAppCrashed && !d.isAppUnmounted && d.pendingUpdateFiberArray.length; });\n if (hasPending) {\n scheduleUpdate(hasPending);\n }\n else {\n globalLoop$1.current = false;\n }\n};\nvar scheduleUpdateFromRoot = function (renderDispatch) {\n var allLive = renderDispatch.pendingUpdateFiberArray.getAll().filter(function (f) { return myreactSharedExports.exclude(f.state, myreactSharedExports.STATE_TYPE.__unmount__); });\n function scheduleNextUpdate() {\n scheduleNext(renderDispatch);\n }\n renderDispatch.pendingUpdateFiberArray.clear();\n if (allLive.length) {\n renderDispatch.runtimeFiber.scheduledFiber = renderDispatch.rootFiber;\n renderDispatch.runtimeFiber.nextWorkingFiber = renderDispatch.rootFiber;\n if (!enableConcurrentMode$1.current ||\n allLive.some(function (f) { return myreactSharedExports.include(f.state, myreactSharedExports.STATE_TYPE.__skippedSync__ | myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__); })) {\n updateSyncFromRoot(renderDispatch, scheduleNextUpdate);\n }\n else {\n updateConcurrentFromRoot(renderDispatch, scheduleNextUpdate);\n }\n }\n else {\n scheduleNextUpdate();\n }\n};\nvar scheduleUpdateFromTrigger = function (renderDispatch) {\n function scheduleNextUpdate() {\n scheduleNext(renderDispatch);\n }\n var allPending = renderDispatch.pendingUpdateFiberArray.getAll();\n var nextWorkFiber = null;\n for (var i = 0; i < allPending.length; i++) {\n var item = allPending[i];\n if (myreactSharedExports.include(item.state, myreactSharedExports.STATE_TYPE.__stable__ | myreactSharedExports.STATE_TYPE.__unmount__)) {\n renderDispatch.pendingUpdateFiberArray.uniDelete(item);\n continue;\n }\n else {\n nextWorkFiber = item;\n break;\n }\n }\n if (nextWorkFiber) {\n if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedSync__ | myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__)) {\n renderDispatch.runtimeFiber.scheduledFiber = nextWorkFiber;\n renderDispatch.runtimeFiber.nextWorkingFiber = nextWorkFiber;\n // normally a context update\n if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedSync__)) {\n updateSyncFromRoot(renderDispatch, scheduleNextUpdate);\n }\n else {\n // TODO maybe could use `updateSyncFromRoot`?\n updateSyncFromTrigger(renderDispatch, scheduleNextUpdate);\n }\n }\n else if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedConcurrent__ | myreactSharedExports.STATE_TYPE.__triggerConcurrent__ | myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__)) {\n renderDispatch.runtimeFiber.scheduledFiber = nextWorkFiber;\n renderDispatch.runtimeFiber.nextWorkingFiber = nextWorkFiber;\n if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedConcurrent__)) {\n if (enableConcurrentMode$1.current) {\n updateConcurrentFromRoot(renderDispatch, scheduleNextUpdate);\n }\n else {\n updateSyncFromRoot(renderDispatch, scheduleNextUpdate);\n }\n }\n else {\n if (enableConcurrentMode$1.current) {\n updateConcurrentFromTrigger(renderDispatch, scheduleNextUpdate);\n }\n else {\n updateSyncFromTrigger(renderDispatch, scheduleNextUpdate);\n }\n }\n }\n else {\n // TODO\n throw new Error(\"[@my-react/react] unknown state, \".concat(nextWorkFiber.state, \", this like a bug for @my-react\"));\n }\n }\n else {\n scheduleNextUpdate();\n }\n};\nvar scheduleUpdate = function (renderDispatch) {\n if (renderDispatch.isAppUnmounted) {\n scheduleNext(renderDispatch);\n return;\n }\n if (enableLoopFromRoot$2.current) {\n scheduleUpdateFromRoot(renderDispatch);\n }\n else {\n scheduleUpdateFromTrigger(renderDispatch);\n }\n};\n/**\n * only used for dev HMR\n * only invoke on the errorCatchFiber\n */\nvar triggerRevert = function (fiber, cb) {\n {\n console.error(\"[@my-react/react] can not call revert on prod mode\");\n }\n};\nvar triggerUpdate = function (fiber, state, cb) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n var renderPlatform = currentRenderPlatform$8.current;\n var renderDispatch = fiberToDispatchMap.get(fiber);\n if (renderDispatch.isAppCrashed)\n return;\n if (renderDispatch.isAppUnmounted)\n return;\n // TODO\n if (!renderDispatch.isAppMounted) {\n renderPlatform.macroTask(function () { return triggerUpdate(fiber, state, cb); });\n return;\n }\n if (typeof state === \"function\") {\n cb = state;\n state = myreactSharedExports.STATE_TYPE.__triggerConcurrent__;\n }\n state = state || myreactSharedExports.STATE_TYPE.__triggerSync__;\n if (fiber.state === myreactSharedExports.STATE_TYPE.__stable__) {\n fiber.state = state;\n }\n else {\n fiber.state = myreactSharedExports.merge(fiber.state, state);\n }\n fiber.mode = myreactSharedExports.MODE_TYPE.__stable__;\n renderDispatch.pendingUpdateFiberArray.uniPush(fiber);\n if (cb) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__)) {\n renderDispatch.pendingLayoutEffect(fiber, cb, { stickyToFoot: true });\n }\n else {\n renderDispatch.pendingEffect(fiber, cb, { stickyToFoot: true });\n }\n }\n if (globalLoop$1.current)\n return;\n globalLoop$1.current = true;\n scheduleUpdate(renderDispatch);\n};\nvar triggerError = function (fiber, error, cb) {\n var _a;\n var renderDispatch = fiberToDispatchMap.get(fiber);\n var renderPlatform = currentRenderPlatform$8.current;\n var errorBoundariesFiber = renderDispatch.resolveErrorBoundaries(fiber);\n if (errorBoundariesFiber) {\n var typedComponent = errorBoundariesFiber.elementType;\n var typedInstance_1 = errorBoundariesFiber.instance;\n var payloadState = (_a = typedComponent.getDerivedStateFromError) === null || _a === void 0 ? void 0 : _a.call(typedComponent, error);\n errorBoundariesFiber.memoizedState = Object.assign({}, errorBoundariesFiber.pendingState);\n typedInstance_1.setState(payloadState, function () {\n var _a;\n (_a = typedInstance_1.componentDidCatch) === null || _a === void 0 ? void 0 : _a.call(typedInstance_1, error, { componentStack: renderPlatform.getFiberTree(fiber) });\n renderDispatch.runtimeFiber.errorCatchFiber = errorBoundariesFiber;\n cb === null || cb === void 0 ? void 0 : cb();\n });\n }\n else {\n if (renderDispatch.isAppCrashed)\n return;\n renderDispatch.pendingUpdateFiberArray.clear();\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.isAppCrashed = true;\n globalLoop$1.current = false;\n {\n console.error(\"[@my-react/react] a uncaught exception have been throw\", error);\n throw error;\n }\n }\n};\nvar triggerUnmount = function (fiber, cb) {\n var renderDispatch = fiberToDispatchMap.get(fiber);\n if (renderDispatch.isAppUnmounted) {\n throw new Error(\"[@my-react/react] can not unmount a node when current app has been unmounted\");\n }\n triggerUpdate(fiber, myreactSharedExports.STATE_TYPE.__skippedSync__, function () {\n renderDispatch.reconcileUnmount();\n cb === null || cb === void 0 ? void 0 : cb();\n });\n};\n\nvar unmountList = function (list, renderDispatch) {\n // will happen when app crash\n list.listToFoot(function (f) { return unmountPending(f, renderDispatch); });\n list.listToFoot(function (f) {\n safeCallWithFiber({\n fiber: f,\n action: function () { return f._unmount(function () { return unmountFiberNode(f, renderDispatch); }); },\n });\n });\n};\n// unmount current fiber\nvar unmountFiber = function (fiber) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n var renderDispatch = fiberToDispatchMap.get(fiber);\n var list = generateFiberToUnmountList(fiber);\n unmountList(list, renderDispatch);\n};\n// unmount current container with safe\nvar unmountContainer = function (renderDispatch, cb) {\n var rootFiber = renderDispatch.rootFiber;\n triggerUnmount(rootFiber, cb);\n};\nvar clearContainer = function (renderDispatch) {\n var _a, _b, _c, _d;\n (_a = renderDispatch.pendingCommitFiberList) === null || _a === void 0 ? void 0 : _a.clear();\n (_b = renderDispatch.pendingChangedFiberList) === null || _b === void 0 ? void 0 : _b.clear();\n renderDispatch.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;\n (_c = renderDispatch.pendingUpdateFiberArray) === null || _c === void 0 ? void 0 : _c.clear();\n (_d = renderDispatch.pendingAsyncLoadFiberList) === null || _d === void 0 ? void 0 : _d.clear();\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.isAppMounted = false;\n renderDispatch.isAppUnmounted = true;\n};\n\nvar defaultGenerateUnmountMap = function (fiber, unmount, map) {\n var list = map.get(fiber) || new myreactSharedExports.ListTree();\n var newList = generateFiberToUnmountList(unmount);\n map.set(fiber, list.concat(newList));\n};\nvar defaultDispatchUnmount = function (renderDispatch) {\n if (renderDispatch.isAppUnmounted)\n return;\n var rootFiber = renderDispatch.rootFiber;\n unmountFiber(rootFiber);\n clearContainer(renderDispatch);\n};\nvar unmountPending = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__unmount__)) {\n var unmountMap = renderDispatch.runtimeMap.unmountMap;\n var allUnmount_1 = unmountMap.get(fiber);\n unmountMap.delete(fiber);\n if (allUnmount_1 && allUnmount_1.length)\n safeCallWithFiber({ fiber: fiber, action: function () { return unmountList(allUnmount_1, renderDispatch); } });\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__unmount__);\n }\n};\n\nvar currentRenderPlatform$7 = react.__my_react_internal__.currentRenderPlatform;\nvar defaultDispatchUpdate = function (_list, _dispatch) {\n // TODO maybe need call `insertionEffect` in another function\n beforeSyncUpdate();\n _list.listToFoot(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n unmountPending(_fiber, _dispatch);\n insertionEffect(_fiber, _dispatch);\n }\n });\n afterSyncUpdate();\n _list.listToFoot(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitCreate(_fiber);\n _dispatch.commitUpdate(_fiber);\n },\n });\n }\n });\n _list.listToHead(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n safeCallWithFiber({\n fiber: _fiber,\n action: function () { return _dispatch.commitPosition(_fiber); },\n });\n }\n });\n _list.listToFoot(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n safeCallWithFiber({\n fiber: _fiber,\n action: function () {\n _dispatch.commitAppend(_fiber);\n _dispatch.commitSetRef(_fiber);\n },\n });\n }\n });\n beforeSyncUpdate();\n _list.listToFoot(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n layoutEffect(_fiber, _dispatch);\n }\n });\n afterSyncUpdate();\n var renderPlatform = currentRenderPlatform$7.current;\n // TODO before next update flow, make sure all the effect has done\n renderPlatform.microTask(function () {\n return _list.listToFoot(function (_fiber) {\n if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {\n effect(_fiber, _dispatch);\n }\n });\n });\n};\n\n/* eslint-disable max-lines */\nvar getInitialValue = function () {\n return {\n fiberInitial: new Set(),\n fiberUpdate: new Set(),\n fiberHasChange: new Set(),\n fiberUnmount: new Set(),\n fiberTrigger: new Set(),\n hookInitial: new Set(),\n hookUpdate: new Set(),\n hookTrigger: new Set(),\n hookUnmount: new Set(),\n beforeCommit: new Set(),\n afterCommit: new Set(),\n beforeUpdate: new Set(),\n afterUpdate: new Set(),\n beforeUnmount: new Set(),\n afterUnmount: new Set(),\n };\n};\nvar listenerMap = new Map();\nvar CustomRenderDispatch = /** @class */ (function () {\n function CustomRenderDispatch(rootNode, rootFiber) {\n this.rootNode = rootNode;\n this.rootFiber = rootFiber;\n this.runtimeMap = {\n suspenseMap: new MyWeakMap(),\n strictMap: new MyWeakMap(),\n scopeMap: new MyWeakMap(),\n errorBoundariesMap: new MyWeakMap(),\n effectMap: new MyWeakMap(),\n layoutEffectMap: new MyWeakMap(),\n insertionEffectMap: new MyWeakMap(),\n contextMap: new MyWeakMap(),\n unmountMap: new MyWeakMap(),\n eventMap: new MyWeakMap(),\n };\n this.runtimeFiber = {\n scheduledFiber: null,\n errorCatchFiber: null,\n nextWorkingFiber: null,\n };\n this.isAppMounted = false;\n this.isAppCrashed = false;\n this.isAppUnmounted = false;\n this.pendingCommitFiberList = null;\n this.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;\n this.pendingChangedFiberList = null;\n this.pendingAsyncLoadFiberList = null;\n this.pendingUpdateFiberArray = new myreactSharedExports.UniqueArray();\n this.performanceLogTimeLimit = 2000;\n this.uniqueIdCount = 0;\n var typedFiber = rootFiber;\n typedFiber.renderDispatch = this;\n listenerMap.set(this, getInitialValue());\n }\n CustomRenderDispatch.prototype.onFiberInitial = function (cb) {\n var set = listenerMap.get(this).fiberInitial;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceFiberInitial = function (cb) {\n var set = listenerMap.get(this).fiberInitial;\n var onceCb = function (_fiber) {\n cb(_fiber);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onFiberUpdate = function (cb) {\n var set = listenerMap.get(this).fiberUpdate;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onFiberChange = function (cb) {\n var set = listenerMap.get(this).fiberHasChange;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceFiberChange = function (cb) {\n var set = listenerMap.get(this).fiberHasChange;\n var onceCb = function (_list) {\n cb(_list);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onceFiberUpdate = function (cb) {\n var set = listenerMap.get(this).fiberUpdate;\n var onceCb = function (_fiber) {\n cb(_fiber);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onFiberUnmount = function (cb) {\n var set = listenerMap.get(this).fiberUnmount;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceFiberUnmount = function (cb) {\n var set = listenerMap.get(this).fiberUnmount;\n var onceCb = function (_fiber) {\n cb(_fiber);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onFiberTrigger = function (cb) {\n var set = listenerMap.get(this).fiberTrigger;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceFiberTrigger = function (cb) {\n var set = listenerMap.get(this).fiberTrigger;\n var onceCb = function (_fiber, _updater) {\n cb(_fiber, _updater);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onFiberHMR = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberHMR;\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, cb);\n return function () { var _a; return (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, cb); };\n };\n CustomRenderDispatch.prototype.onceFiberHMR = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberHMR;\n var onceCb = function (_fiber) {\n var _a;\n cb(_fiber);\n (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n CustomRenderDispatch.prototype.onFiberWarn = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberWarn;\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, cb);\n return function () { var _a; return (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, cb); };\n };\n CustomRenderDispatch.prototype.onceFiberWarn = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberWarn;\n var onceCb = function (_fiber) {\n var _a;\n cb(_fiber);\n (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n CustomRenderDispatch.prototype.onFiberError = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberError;\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, cb);\n return function () { var _a; return (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, cb); };\n };\n CustomRenderDispatch.prototype.onceFiberError = function (cb) {\n var _a;\n var set = listenerMap.get(this).fiberError;\n var onceCb = function (_fiber) {\n var _a;\n cb(_fiber);\n (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n CustomRenderDispatch.prototype.onPerformanceWarn = function (cb) {\n var _a;\n var set = listenerMap.get(this).performanceWarn;\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, cb);\n return function () { var _a; return (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, cb); };\n };\n CustomRenderDispatch.prototype.oncePerformanceWarn = function (cb) {\n var _a;\n var set = listenerMap.get(this).performanceWarn;\n var onceCb = function (_fiber) {\n var _a;\n cb(_fiber);\n (_a = set === null || set === void 0 ? void 0 : set.delete) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n (_a = set === null || set === void 0 ? void 0 : set.add) === null || _a === void 0 ? void 0 : _a.call(set, onceCb);\n };\n CustomRenderDispatch.prototype.onHookInitial = function (cb) {\n var set = listenerMap.get(this).hookInitial;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceHookInitial = function (cb) {\n var set = listenerMap.get(this).hookInitial;\n var onceCb = function (_hook) {\n cb(_hook);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onHookUpdate = function (cb) {\n var set = listenerMap.get(this).hookUpdate;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceHookUpdate = function (cb) {\n var set = listenerMap.get(this).hookUpdate;\n var onceCb = function (_hook) {\n cb(_hook);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onHookUnmount = function (cb) {\n var set = listenerMap.get(this).hookUnmount;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceHookUnmount = function (cb) {\n var set = listenerMap.get(this).hookUnmount;\n var onceCb = function (_hook) {\n cb(_hook);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onHookTrigger = function (cb) {\n var set = listenerMap.get(this).hookTrigger;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceHookTrigger = function (cb) {\n var set = listenerMap.get(this).hookTrigger;\n var onceCb = function (_hook, _updater) {\n cb(_hook, _updater);\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onBeforeCommit = function (cb) {\n var set = listenerMap.get(this).beforeCommit;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceBeforeCommit = function (cb) {\n var set = listenerMap.get(this).beforeCommit;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onAfterCommit = function (cb) {\n var set = listenerMap.get(this).afterCommit;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceAfterCommit = function (cb) {\n var set = listenerMap.get(this).afterCommit;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onBeforeUpdate = function (cb) {\n var set = listenerMap.get(this).beforeUpdate;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceBeforeUpdate = function (cb) {\n var set = listenerMap.get(this).beforeUpdate;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onAfterUpdate = function (cb) {\n var set = listenerMap.get(this).afterUpdate;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceAfterUpdate = function (cb) {\n var set = listenerMap.get(this).afterUpdate;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onBeforeUnmount = function (cb) {\n var set = listenerMap.get(this).beforeUnmount;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceBeforeUnmount = function (cb) {\n var set = listenerMap.get(this).beforeUnmount;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.onAfterUnmount = function (cb) {\n var set = listenerMap.get(this).afterUnmount;\n set.add(cb);\n return function () { return set.delete(cb); };\n };\n CustomRenderDispatch.prototype.onceAfterUnmount = function (cb) {\n var set = listenerMap.get(this).afterUnmount;\n var onceCb = function () {\n cb();\n set.delete(onceCb);\n };\n set.add(onceCb);\n };\n CustomRenderDispatch.prototype.generateCommitList = function (_fiber) {\n if (!_fiber)\n return;\n this.pendingCommitFiberPatch = myreactSharedExports.merge(this.pendingCommitFiberPatch, _fiber.patch);\n if (_fiber.patch !== myreactSharedExports.PATCH_TYPE.__initial__) {\n this.pendingCommitFiberList = this.pendingCommitFiberList || new myreactSharedExports.ListTree();\n this.pendingCommitFiberList.push(_fiber);\n }\n };\n CustomRenderDispatch.prototype.generateChangedList = function (_fiber, withCheck) {\n if (!_fiber)\n return;\n if (!this.isAppMounted)\n return;\n this.pendingChangedFiberList = this.pendingChangedFiberList || new myreactSharedExports.ListTree();\n if (withCheck && this.pendingChangedFiberList.hasValue(_fiber)) {\n return;\n }\n this.pendingChangedFiberList.push(_fiber);\n };\n CustomRenderDispatch.prototype.pendingCreate = function (_fiber) {\n if (myreactSharedExports.include(_fiber.type, this.runtimeRef.typeForCreate)) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__create__);\n }\n };\n CustomRenderDispatch.prototype.pendingUpdate = function (_fiber) {\n if (myreactSharedExports.include(_fiber.type, this.runtimeRef.typeForUpdate)) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__update__);\n }\n };\n CustomRenderDispatch.prototype.pendingAppend = function (_fiber) {\n if (myreactSharedExports.include(_fiber.type, this.runtimeRef.typeForAppend)) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__append__);\n }\n };\n CustomRenderDispatch.prototype.pendingPosition = function (_fiber) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__position__);\n };\n CustomRenderDispatch.prototype.pendingRef = function (_fiber) {\n if (_fiber.ref) {\n if (myreactSharedExports.include(_fiber.type, this.runtimeRef.typeForRef)) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__ref__);\n }\n else if (myreactSharedExports.exclude(_fiber.type, exports.NODE_TYPE.__forwardRef__)) {\n onceWarnWithKeyAndFiber(_fiber, \"ref\", \"[@my-react/react] set ref for current element will be ignored\");\n }\n }\n };\n CustomRenderDispatch.prototype.pendingUnmount = function (_fiber, _pendingUnmount) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__unmount__);\n defaultGenerateUnmountMap(_fiber, _pendingUnmount, this.runtimeMap.unmountMap);\n };\n CustomRenderDispatch.prototype.pendingEffect = function (_fiber, _effect, option) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__effect__);\n defaultGenerateEffectMap(_fiber, _effect, this.runtimeMap.effectMap, option);\n };\n CustomRenderDispatch.prototype.pendingLayoutEffect = function (_fiber, _layoutEffect, option) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__layoutEffect__);\n defaultGenerateEffectMap(_fiber, _layoutEffect, this.runtimeMap.layoutEffectMap, option);\n };\n CustomRenderDispatch.prototype.pendingInsertionEffect = function (_fiber, _insertionEffect, option) {\n _fiber.patch = myreactSharedExports.merge(_fiber.patch, myreactSharedExports.PATCH_TYPE.__insertionEffect__);\n defaultGenerateEffectMap(_fiber, _insertionEffect, this.runtimeMap.insertionEffectMap, option);\n };\n /**\n * @deprecated\n */\n CustomRenderDispatch.prototype.patchToFiberInitial = function (_fiber) {\n };\n /**\n * @deprecated\n */\n CustomRenderDispatch.prototype.patchToFiberUpdate = function (_fiber) {\n };\n /**\n * @deprecated\n */\n CustomRenderDispatch.prototype.patchToFiberUnmount = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitCreate = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitUpdate = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitAppend = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitPosition = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitSetRef = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitUnsetRef = function (_fiber) {\n };\n CustomRenderDispatch.prototype.commitClear = function (_fiber) {\n };\n CustomRenderDispatch.prototype.resolveLazyElement = function (_fiber) {\n return null;\n };\n CustomRenderDispatch.prototype.resolveStrictMap = function (_fiber) {\n };\n CustomRenderDispatch.prototype.resolveStrict = function (_fiber) {\n // return false ? this.runtimeMap.strictMap.get(_fiber) || false : false;\n return defaultGenerateStrict();\n };\n CustomRenderDispatch.prototype.resolveScopeMap = function (_fiber) {\n defaultGenerateScopeMap(_fiber, this.runtimeMap.scopeMap);\n };\n CustomRenderDispatch.prototype.resolveScope = function (_fiber) {\n return this.runtimeMap.scopeMap.get(_fiber) || null;\n };\n CustomRenderDispatch.prototype.resolveSuspenseMap = function (_fiber) {\n defaultGenerateSuspenseMap(_fiber, this.runtimeMap.suspenseMap);\n };\n CustomRenderDispatch.prototype.resolveSuspense = function (_fiber) {\n // return this.runtimeMap.suspenseMap.get(_fiber)?.pendingProps?.[\"fallback\"] || null;\n return defaultResolveSuspense(_fiber);\n };\n CustomRenderDispatch.prototype.resolveErrorBoundariesMap = function (_fiber) {\n defaultGenerateErrorBoundariesMap(_fiber, this.runtimeMap.errorBoundariesMap);\n };\n CustomRenderDispatch.prototype.resolveErrorBoundaries = function (_fiber) {\n // return this.runtimeMap.errorBoundariesMap.get(_fiber) || null;\n return defaultResolveErrorBoundaries(_fiber);\n };\n CustomRenderDispatch.prototype.resolveContextMap = function (_fiber) {\n defaultGenerateContextMap(_fiber, this.runtimeMap.contextMap);\n };\n CustomRenderDispatch.prototype.resolveContextFiber = function (_fiber, _contextObject) {\n return defaultGetContextFiber_New(_fiber, this, _contextObject);\n };\n CustomRenderDispatch.prototype.resolveContextValue = function (_fiber, _contextObject) {\n return defaultGetContextValue(_fiber, _contextObject);\n };\n CustomRenderDispatch.prototype.reconcileCommit = function (_fiber) {\n var _this = this;\n safeCall(function () { var _a; return (_a = _this.beforeCommit) === null || _a === void 0 ? void 0 : _a.call(_this); });\n safeCall(function () {\n listenerMap.get(_this).beforeCommit.forEach(function (cb) { return cb(); });\n });\n defaultDispatchMount(_fiber, this);\n safeCall(function () {\n listenerMap.get(_this).afterCommit.forEach(function (cb) { return cb(); });\n });\n safeCall(function () { var _a; return (_a = _this.afterCommit) === null || _a === void 0 ? void 0 : _a.call(_this); });\n };\n CustomRenderDispatch.prototype.reconcileUpdate = function (_list) {\n var _this = this;\n safeCall(function () { var _a; return (_a = _this.beforeUpdate) === null || _a === void 0 ? void 0 : _a.call(_this); });\n safeCall(function () {\n listenerMap.get(_this).beforeUpdate.forEach(function (cb) { return cb(); });\n });\n defaultDispatchUpdate(_list, this);\n safeCall(function () {\n listenerMap.get(_this).afterUpdate.forEach(function (cb) { return cb(); });\n });\n safeCall(function () { var _a; return (_a = _this.afterUpdate) === null || _a === void 0 ? void 0 : _a.call(_this); });\n };\n CustomRenderDispatch.prototype.reconcileUnmount = function () {\n var _this = this;\n safeCall(function () { var _a; return (_a = _this.beforeUnmount) === null || _a === void 0 ? void 0 : _a.call(_this); });\n safeCall(function () {\n listenerMap.get(_this).beforeUnmount.forEach(function (cb) { return cb(); });\n });\n defaultDispatchUnmount(this);\n safeCall(function () {\n listenerMap.get(_this).afterUnmount.forEach(function (cb) { return cb(); });\n });\n safeCall(function () { var _a; return (_a = _this.afterUnmount) === null || _a === void 0 ? void 0 : _a.call(_this); });\n };\n CustomRenderDispatch.prototype.shouldYield = function () {\n return false;\n };\n CustomRenderDispatch.prototype.resetUpdateFlowRuntimeFiber = function () {\n this.runtimeFiber.scheduledFiber = null;\n this.runtimeFiber.nextWorkingFiber = null;\n this.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;\n };\n return CustomRenderDispatch;\n}());\n\nvar currentRunningFiber$1 = react.__my_react_internal__.currentRunningFiber, currentRenderPlatform$6 = react.__my_react_internal__.currentRenderPlatform;\nvar safeCall = function (action) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n try {\n return action.call.apply(action, __spreadArray([null], args, false));\n }\n catch (e) {\n var fiber = currentRunningFiber$1.current;\n var renderPlatform = currentRenderPlatform$6.current;\n renderPlatform.dispatchError({ fiber: fiber, error: e });\n }\n};\nvar safeCallWithFiber = function (_a) {\n var action = _a.action, fiber = _a.fiber, fallback = _a.fallback;\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n currentDevFiber.current = fiber;\n try {\n return action.call.apply(action, __spreadArray([null], args, false));\n }\n catch (e) {\n var renderPlatform = currentRenderPlatform$6.current;\n renderPlatform.dispatchError({ fiber: fiber, error: e });\n return fallback === null || fallback === void 0 ? void 0 : fallback();\n }\n finally {\n currentDevFiber.current = null;\n }\n};\nvar safeCallWithSync = function (action) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n try {\n beforeSyncUpdate();\n return action.call.apply(action, __spreadArray([null], args, false));\n }\n catch (e) {\n var fiber = currentRunningFiber$1.current;\n var renderPlatform = currentRenderPlatform$6.current;\n renderPlatform.dispatchError({ fiber: fiber, error: e });\n }\n finally {\n afterSyncUpdate();\n }\n};\n\nvar currentRenderPlatform$5 = react.__my_react_internal__.currentRenderPlatform, currentRunningFiber = react.__my_react_internal__.currentRunningFiber;\nvar enableOptimizeTreeLog = react.__my_react_shared__.enableOptimizeTreeLog;\nvar typeColor = {\n normal: \"rgba(10, 190, 235, 0.8)\",\n plain: \"rgba(100, 230, 40, 0.8)\",\n unmount: \"rgba(230, 40, 40, 0.8)\",\n};\nvar warnMap = {};\nvar errorMap = {};\nvar fiberWarn = function (fiber) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderDispatch = getCurrentDispatchFromFiber(fiber);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberWarn) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener.apply(void 0, __spreadArray([fiber], args, false)); }); } });\n};\nvar fiberError = function (fiber) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderDispatch = getCurrentDispatchFromFiber(fiber);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberError) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener.apply(void 0, __spreadArray([fiber], args, false)); }); } });\n};\n// TODO! improve log\nvar originalWarn = console.warn;\nvar originalError = console.error;\nvar devWarn = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var renderFiber = currentDevFiber.current || currentRunningFiber.current;\n renderFiber && fiberWarn.apply(void 0, __spreadArray([renderFiber], args, false));\n if (!renderFiber || args.some(function (i) { return typeof i === \"object\" || i === null || i === undefined; })) {\n originalWarn.call.apply(originalWarn, __spreadArray([console], args, false));\n return;\n }\n if (enableFiberForLog.current) {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber), \"\\n \", renderFiber], false));\n }\n else {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber)], false));\n }\n};\nvar devWarnWithFiber = function (fiber) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n fiberWarn.apply(void 0, __spreadArray([fiber], args, false));\n if (args.some(function (i) { return typeof i === \"object\" || i === null || i === undefined; })) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [fiber], false));\n }\n else {\n if (enableFiberForLog.current) {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(fiber), \"\\n \", fiber], false));\n }\n else {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(fiber)], false));\n }\n }\n};\nvar devError = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var renderFiber = currentDevFiber.current || currentRunningFiber.current;\n renderFiber && fiberError.apply(void 0, __spreadArray([renderFiber], args, false));\n if (!renderFiber || args.some(function (i) { return typeof i === \"object\" || i === null || i === undefined; })) {\n originalError.call.apply(originalError, __spreadArray([console], args, false));\n return;\n }\n if (enableFiberForLog.current) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber), \"\\n \", renderFiber], false));\n }\n else {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber)], false));\n }\n};\nvar devErrorWithFiber = function (fiber) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var renderFiber = fiber;\n fiberError.apply(void 0, __spreadArray([fiber], args, false));\n if (args.some(function (i) { return typeof i === \"object\" || i === null || i === undefined; })) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [renderFiber], false));\n }\n else {\n if (enableFiberForLog.current) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber), \"\\n \", renderFiber], false));\n }\n else {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [renderPlatform.getFiberTree(renderFiber)], false));\n }\n }\n};\nvar setLogScope = function () {\n};\nvar resetLogScope = function () {\n};\nvar debugWithNode = function (fiber) {\n var mayFiberContainer = fiber;\n if (fiber.nativeNode || mayFiberContainer.containerNode) {\n var node = (fiber.nativeNode || mayFiberContainer.containerNode);\n node.__fiber__ = fiber;\n node.__props__ = fiber.pendingProps;\n }\n};\nvar getTrackDevLog = function (fiber) {\n {\n return \"\";\n }\n};\nvar shouldIncludeLog = function (fiber) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__ | exports.NODE_TYPE.__function__)) {\n return true;\n }\n return false;\n};\nvar getFiberTagName = function (fiber) {\n var tag = [];\n if (fiber.type & exports.NODE_TYPE.__memo__) {\n tag.push(\"memo\");\n }\n if (fiber.type & exports.NODE_TYPE.__forwardRef__) {\n tag.push(\"forwardRef\");\n }\n if (fiber.type & exports.NODE_TYPE.__lazy__) {\n tag.push(\"lazy\");\n }\n if (fiber.type & exports.NODE_TYPE.__fragment__ && fiber.pendingProps[\"wrap\"]) {\n tag.push(\"auto-wrap\");\n }\n return tag.join(\"-\");\n};\nvar getPlainFiberName = function (fiber) {\n if (fiber.type & exports.NODE_TYPE.__provider__) {\n var typedElementType = fiber.elementType;\n var name_2 = typedElementType.Context.displayName;\n return \"\".concat(name_2 || \"Context\", \".Provider\");\n }\n if (fiber.type & exports.NODE_TYPE.__consumer__) {\n var typedElementType = fiber.elementType;\n var name_3 = typedElementType.Context.displayName;\n return \"\".concat(name_3 || \"Context\", \".Consumer\");\n }\n if (fiber.type & exports.NODE_TYPE.__lazy__) {\n var typedElementType = fiber.elementType;\n var typedRender = typedElementType === null || typedElementType === void 0 ? void 0 : typedElementType.render;\n var name_4 = (typedRender === null || typedRender === void 0 ? void 0 : typedRender.displayName) || (typedRender === null || typedRender === void 0 ? void 0 : typedRender.name) || \"\";\n return \"\".concat(name_4 || \"anonymous\");\n }\n if (fiber.type & exports.NODE_TYPE.__portal__)\n return \"Portal\";\n if (fiber.type & exports.NODE_TYPE.__null__)\n return \"Null\";\n if (fiber.type & exports.NODE_TYPE.__empty__)\n return \"Empty\";\n if (fiber.type & exports.NODE_TYPE.__scope__)\n return \"Scope\";\n if (fiber.type & exports.NODE_TYPE.__strict__)\n return \"Strict\";\n if (fiber.type & exports.NODE_TYPE.__profiler__)\n return \"Profiler\";\n if (fiber.type & exports.NODE_TYPE.__suspense__)\n return \"Suspense\";\n if (fiber.type & exports.NODE_TYPE.__comment__)\n return \"Comment\";\n if (fiber.type & exports.NODE_TYPE.__keepLive__)\n return \"KeepAlive\";\n if (fiber.type & exports.NODE_TYPE.__fragment__)\n return \"Fragment\";\n if (fiber.type & exports.NODE_TYPE.__text__)\n return \"text\";\n if (typeof fiber.elementType === \"string\")\n return \"\".concat(fiber.elementType);\n if (typeof fiber.elementType === \"function\") {\n var typedElementType = fiber.elementType;\n var name_5 = typedElementType.displayName || typedElementType.name || \"anonymous\";\n return \"\".concat(name_5);\n }\n return \"unknown\";\n};\n// TODO\nvar getElementName = function (fiber) {\n var name = getPlainFiberName(fiber);\n var tag = getFiberTagName(fiber);\n return \"<\".concat(name).concat(tag ? \" - (\".concat(tag, \")\") : \"\", \" />\");\n};\nvar getFiberNodeName = function (fiber) { return \"\".concat(getElementName(fiber), \" \").concat(getTrackDevLog()); };\nvar getFiberNodeNameWithFiber = function (fiber) { return \"%c\".concat(getElementName(fiber), \"%c (%o)\"); };\nvar getFiberTree = function (fiber) {\n if (fiber) {\n var preString = \"\".padEnd(4) + \"at\".padEnd(3);\n var res = \"\";\n var temp = fiber;\n if (enableOptimizeTreeLog.current) {\n while (temp) {\n if (shouldIncludeLog(temp)) {\n res ? (res += \"\\n\".concat(preString).concat(getFiberNodeName(temp))) : (res = \"\".concat(preString).concat(getFiberNodeName(temp)));\n }\n temp = temp.parent;\n }\n }\n else {\n while (temp) {\n res ? (res += \"\\n\".concat(preString).concat(getFiberNodeName(temp))) : (res = \"\".concat(preString).concat(getFiberNodeName(temp)));\n temp = temp.parent;\n }\n }\n return \"\\n\".concat(res);\n }\n return \"\";\n};\nvar getFiberTreeWithFiber = function (fiber) {\n var preString = \"at\".padEnd(3);\n var res = \"\";\n var arr = [];\n var temp = fiber;\n while (temp) {\n res ? (res += \"\\n\".concat(preString).concat(getFiberNodeNameWithFiber(temp))) : (res = \"\".concat(preString).concat(getFiberNodeNameWithFiber(temp)));\n var isMount = temp._debugIsMount;\n var isPlain = temp.type & exports.NODE_TYPE.__plain__;\n arr.push(\"color: white;background-color: \".concat(isMount ? (isPlain ? typeColor.plain : typeColor.normal) : typeColor.unmount, \"; border-radius: 2px; padding: 1px 5px; margin: 1px 0px\"));\n arr.push(\"\");\n arr.push(temp);\n temp = temp.parent;\n }\n return { str: \"\".concat(res), arr: arr };\n};\nvar getHookTree = function (treeHookNode, errorType) {\n var pre = \"\".toString().padEnd(3);\n var message = \"[@my-react/react] hook for current component has a different state on current render and previous render, this is not a valid usage.\";\n var re = \"\\n\" + pre + \"Last render:\".padEnd(28) + \"Next render:\".padEnd(10) + \"\\n\" + pre + \"-\".repeat(44) + \"\\n\";\n var stack = pre + myreactSharedExports.HOOK_TYPE[errorType.lastRender].padEnd(28) + myreactSharedExports.HOOK_TYPE[errorType.nextRender].padEnd(10) + \"\\n\";\n while (treeHookNode && treeHookNode.value) {\n var t = treeHookNode.value.type;\n stack = pre + myreactSharedExports.HOOK_TYPE[t].padEnd(28) + myreactSharedExports.HOOK_TYPE[t].padEnd(10) + \"\\n\" + stack;\n treeHookNode = treeHookNode.prev;\n }\n stack += pre + \"^\".repeat(44);\n return message + re + stack;\n};\nvar onceWarnWithKey = function (key) {\n var _a;\n var _b;\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var renderFiber = currentDevFiber.current || currentRunningFiber.current;\n if (!renderFiber) {\n if (warnMap === null || warnMap === void 0 ? void 0 : warnMap[key])\n return;\n warnMap[key] = true;\n devWarn.apply(void 0, args);\n return;\n }\n var tree = renderPlatform.getFiberTree(renderFiber);\n if ((_b = warnMap === null || warnMap === void 0 ? void 0 : warnMap[tree]) === null || _b === void 0 ? void 0 : _b[key])\n return;\n warnMap[tree] = __assign(__assign({}, warnMap === null || warnMap === void 0 ? void 0 : warnMap[tree]), (_a = {}, _a[key] = true, _a));\n if (enableFiberForLog.current) {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [tree, \"\\n \", renderFiber], false));\n }\n else {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [tree], false));\n }\n};\nvar onceErrorWithKey = function (key) {\n var _a;\n var _b;\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var renderFiber = currentDevFiber.current || currentRunningFiber.current;\n if (!renderFiber) {\n if (errorMap === null || errorMap === void 0 ? void 0 : errorMap[key])\n return;\n errorMap[key] = true;\n devError.apply(void 0, args);\n return;\n }\n var tree = renderPlatform.getFiberTree(renderFiber);\n if ((_b = errorMap === null || errorMap === void 0 ? void 0 : errorMap[tree]) === null || _b === void 0 ? void 0 : _b[key])\n return;\n errorMap[tree] = __assign(__assign({}, errorMap === null || errorMap === void 0 ? void 0 : errorMap[tree]), (_a = {}, _a[key] = true, _a));\n if (enableFiberForLog.current) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [tree, \"\\n \", renderFiber], false));\n }\n else {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [tree], false));\n }\n};\nvar onceWarnWithKeyAndFiber = function (fiber, key) {\n var _a;\n var _b;\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var tree = renderPlatform.getFiberTree(fiber);\n if ((_b = warnMap === null || warnMap === void 0 ? void 0 : warnMap[tree]) === null || _b === void 0 ? void 0 : _b[key])\n return;\n warnMap[tree] = __assign(__assign({}, warnMap === null || warnMap === void 0 ? void 0 : warnMap[tree]), (_a = {}, _a[key] = true, _a));\n if (enableFiberForLog.current) {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [tree, \"\\n \", fiber], false));\n }\n else {\n originalWarn.call.apply(originalWarn, __spreadArray(__spreadArray([console], args, false), [tree], false));\n }\n};\nvar onceErrorWithKeyAndFiber = function (fiber, key) {\n var _a;\n var _b;\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var renderPlatform = currentRenderPlatform$5.current;\n var tree = renderPlatform.getFiberTree(fiber);\n if ((_b = errorMap === null || errorMap === void 0 ? void 0 : errorMap[tree]) === null || _b === void 0 ? void 0 : _b[key])\n return;\n errorMap[tree] = __assign(__assign({}, errorMap === null || errorMap === void 0 ? void 0 : errorMap[tree]), (_a = {}, _a[key] = true, _a));\n if (enableFiberForLog.current) {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [tree, \"\\n \", fiber], false));\n }\n else {\n originalError.call.apply(originalError, __spreadArray(__spreadArray([console], args, false), [tree], false));\n }\n};\n\nreact.__my_react_shared__.enableHMRForDev;\nvar emptyProps$1 = {};\n// TODO\nvar getTypeFromElementNode = function (element) {\n var nodeType = exports.NODE_TYPE.__initial__;\n if (react.isValidElement(element)) {\n return getTypeFromElement(element);\n }\n else {\n if (typeof element === \"object\" && element !== null) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__empty__);\n }\n else if (element === null || element === undefined || typeof element === \"boolean\" || typeof element === \"function\") {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__null__);\n }\n else {\n // text element\n return { key: null, ref: null, nodeType: exports.NODE_TYPE.__text__, elementType: String(element), pendingProps: emptyProps$1 };\n }\n }\n return { key: null, ref: null, nodeType: nodeType, elementType: null, pendingProps: emptyProps$1 };\n};\nvar getTypeFromElement = function (element) {\n var _a, _b, _c;\n var nodeType = exports.NODE_TYPE.__initial__;\n var elementType = element.type;\n var pendingProps = element.props;\n var ref = element.ref;\n var key = element.key;\n if (typeof elementType === \"object\" && elementType !== null) {\n var typedElementType = elementType;\n switch (typedElementType[myreactSharedExports.TYPEKEY]) {\n case myreactSharedExports.Provider:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__provider__);\n break;\n case myreactSharedExports.Consumer:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__consumer__);\n break;\n case myreactSharedExports.Memo:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__memo__);\n elementType = typedElementType.render;\n break;\n case myreactSharedExports.ForwardRef:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__forwardRef__);\n elementType = typedElementType.render;\n break;\n case myreactSharedExports.Lazy:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__lazy__);\n break;\n default:\n throw new Error(\"[@my-react/react] invalid object element type \\\"\".concat((_a = typedElementType[myreactSharedExports.TYPEKEY]) === null || _a === void 0 ? void 0 : _a.toString(), \"\\\"\"));\n }\n if (typeof elementType === \"object\") {\n if (elementType[myreactSharedExports.TYPEKEY] === myreactSharedExports.ForwardRef) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__forwardRef__);\n elementType = elementType.render;\n }\n if (elementType[myreactSharedExports.TYPEKEY] === myreactSharedExports.Provider) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__provider__);\n }\n if (elementType[myreactSharedExports.TYPEKEY] === myreactSharedExports.Consumer) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__consumer__);\n }\n }\n if (typeof elementType === \"function\") {\n if ((_b = elementType.prototype) === null || _b === void 0 ? void 0 : _b.isMyReactComponent) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__class__);\n }\n else {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__function__);\n }\n }\n }\n else if (typeof elementType === \"function\") {\n if ((_c = elementType.prototype) === null || _c === void 0 ? void 0 : _c.isMyReactComponent) {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__class__);\n }\n else {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__function__);\n }\n }\n else if (typeof elementType === \"symbol\") {\n switch (elementType) {\n case myreactSharedExports.KeepLive:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__keepLive__);\n break;\n case myreactSharedExports.Fragment:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__fragment__);\n break;\n case myreactSharedExports.Strict:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__strict__);\n break;\n case myreactSharedExports.Suspense:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__suspense__);\n break;\n case myreactSharedExports.Scope:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__scope__);\n break;\n case myreactSharedExports.Comment:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__comment__);\n break;\n case myreactSharedExports.Portal:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__portal__);\n break;\n case myreactSharedExports.Profiler:\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__profiler__);\n break;\n default:\n throw new Error(\"[@my-react/react] invalid symbol element type \\\"\".concat(elementType === null || elementType === void 0 ? void 0 : elementType.toString(), \"\\\"\"));\n }\n }\n else if (typeof elementType === \"string\") {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__plain__);\n }\n else {\n nodeType = myreactSharedExports.merge(nodeType, exports.NODE_TYPE.__empty__);\n }\n return { key: key, ref: ref, nodeType: nodeType, elementType: elementType, pendingProps: pendingProps };\n};\n\nreact.__my_react_shared__.enableHMRForDev;\nfunction checkIsSameType(p, element) {\n if (p instanceof MyReactFiberNode) {\n var _a = getTypeFromElementNode(element), nodeType = _a.nodeType, elementType = _a.elementType;\n if (p.type === nodeType) {\n if (react.isValidElement(element)) {\n {\n return Object.is(p.elementType, elementType);\n }\n }\n else {\n return true;\n }\n }\n else {\n return false;\n }\n }\n else {\n var existElementType = getTypeFromElementNode(p);\n var incomingElementType = getTypeFromElementNode(element);\n if (existElementType.nodeType === incomingElementType.nodeType) {\n if (react.isValidElement(element)) {\n var typedExistElement = p;\n var typedIncomingElement = element;\n {\n return Object.is(typedIncomingElement.type, typedExistElement.type);\n }\n }\n else {\n return true;\n }\n }\n else {\n return false;\n }\n }\n}\n\nvar getNextForUnmountList = function (fiber, root) {\n if (fiber.child)\n return fiber.child;\n var nextFiber = fiber;\n while (nextFiber && nextFiber !== root) {\n if (nextFiber.sibling)\n return nextFiber.sibling;\n nextFiber = nextFiber.parent;\n }\n return null;\n};\nvar getChild = function (fiber) {\n if (!fiber)\n return null;\n while (fiber.child) {\n fiber = fiber.child;\n }\n return fiber;\n};\nvar getSibling = function (fiber) {\n return fiber === null || fiber === void 0 ? void 0 : fiber.sibling;\n};\nvar getParent = function (fiber) {\n return fiber === null || fiber === void 0 ? void 0 : fiber.parent;\n};\nvar generateFiberToUnmountList = function (fiber) {\n var listTree = new myreactSharedExports.ListTree();\n var temp = fiber;\n if (temp) {\n listTree.push(temp);\n }\n while (temp) {\n temp = getNextForUnmountList(temp, fiber);\n if (temp)\n listTree.push(temp);\n }\n return listTree;\n};\nvar generateFiberToMountList = function (fiber) {\n var listTree = new myreactSharedExports.ListTree();\n var mode = \"child\";\n var current = fiber;\n while (current) {\n if (mode === \"child\") {\n var temp = getChild(current);\n if (temp) {\n // have a child\n if (temp !== current) {\n listTree.push(temp);\n }\n else {\n // try to get the sibling\n temp = getSibling(current);\n if (temp) {\n listTree.push(temp);\n }\n else {\n // no sibling, go back to parent\n temp = getParent(current);\n if (temp) {\n listTree.push(temp);\n mode = \"sibling\";\n }\n }\n }\n }\n current = temp;\n }\n else {\n var temp = getSibling(current);\n if (temp) {\n listTree.push(temp);\n mode = 'child';\n }\n else {\n temp = getParent(current);\n if (temp) {\n listTree.push(temp);\n }\n }\n current = temp;\n }\n }\n return listTree;\n};\n\nvar defaultGenerateEffectMap = function (fiber, effect, map, option) {\n var list = map.get(fiber) || new myreactSharedExports.ListTree();\n if (option) {\n if (option.stickyToHead) {\n list.pushToHead(effect);\n }\n else if (option.stickyToFoot) {\n list.pushToLast(effect);\n }\n else {\n list.push(effect);\n }\n }\n else {\n list.push(effect);\n }\n map.set(fiber, list);\n};\nvar effect = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__effect__)) {\n var effectMap = renderDispatch.runtimeMap.effectMap;\n var allEffect = effectMap.get(fiber);\n effectMap.delete(fiber);\n if (allEffect && allEffect.length) {\n allEffect.listToFoot(function (effect) { return safeCallWithFiber({ fiber: fiber, action: function () { return effect.call(null); } }); });\n }\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__effect__);\n }\n};\nvar layoutEffect = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__layoutEffect__)) {\n var layoutEffectMap = renderDispatch.runtimeMap.layoutEffectMap;\n var allLayoutEffect = layoutEffectMap.get(fiber);\n layoutEffectMap.delete(fiber);\n if (allLayoutEffect && allLayoutEffect.length) {\n allLayoutEffect.listToFoot(function (effect) { return safeCallWithFiber({ fiber: fiber, action: function () { return effect.call(null); } }); });\n }\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__layoutEffect__);\n }\n};\nvar insertionEffect = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__insertionEffect__)) {\n var insertionEffectMap = renderDispatch.runtimeMap.insertionEffectMap;\n var allInsertionEffect = insertionEffectMap.get(fiber);\n insertionEffectMap.delete(fiber);\n if (allInsertionEffect && allInsertionEffect.length) {\n allInsertionEffect.listToFoot(function (effect) { return safeCallWithFiber({ fiber: fiber, action: function () { return effect.call(null); } }); });\n }\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__insertionEffect__);\n }\n};\nvar deleteEffect = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__insertionEffect__)) {\n var insertionEffectMap = renderDispatch.runtimeMap.insertionEffectMap;\n insertionEffectMap.delete(fiber);\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__insertionEffect__);\n }\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__layoutEffect__)) {\n var layoutEffectMap = renderDispatch.runtimeMap.layoutEffectMap;\n layoutEffectMap.delete(fiber);\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__layoutEffect__);\n }\n if (myreactSharedExports.include(fiber.patch, myreactSharedExports.PATCH_TYPE.__effect__)) {\n var effectMap = renderDispatch.runtimeMap.effectMap;\n effectMap.delete(fiber);\n fiber.patch = myreactSharedExports.remove(fiber.patch, myreactSharedExports.PATCH_TYPE.__effect__);\n }\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar currentRenderPlatform$4 = react.__my_react_internal__.currentRenderPlatform;\nvar processClassComponentUpdateQueue = function (fiber, enableTaskPriority) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n if (myreactSharedExports.exclude(fiber.type, exports.NODE_TYPE.__class__))\n throw new Error(\"[@my-react/react] current fiber is not a class component, look like a bug for @my-react\");\n var renderPlatform = currentRenderPlatform$4.current;\n var allQueue = fiber.updateQueue;\n var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;\n var isSync = false;\n var isForce = false;\n var callbacks = [];\n var typedInstance = fiber.instance;\n var baseState = Object.assign({}, typedInstance.state);\n var baseProps = Object.assign({}, typedInstance.props);\n var pendingState = Object.assign({}, fiber.pendingState);\n if (enableTaskPriority && allQueue.some(function (l) { return l.isSync; })) {\n var _loop_1 = function () {\n var updater = node.value;\n var nextNode = node.next;\n if (updater.type === myreactSharedExports.UpdateQueueType.component && updater.isSync) {\n allQueue.delete(node);\n var payLoad_1 = updater.payLoad;\n fiber.pendingState = safeCallWithFiber({\n fiber: fiber,\n fallback: function () { return pendingState; },\n action: function () { return Object.assign({}, fiber.pendingState, typeof payLoad_1 === \"function\" ? payLoad_1(baseState, baseProps) : payLoad_1); },\n });\n isSync = isSync || updater.isSync;\n isForce = isForce || updater.isForce;\n updater.callback && callbacks.push(updater.callback);\n }\n node = nextNode;\n };\n while (node) {\n _loop_1();\n }\n if (allQueue.length)\n renderPlatform.microTask(function () { return fiber._prepare(); });\n return {\n needUpdate: true,\n isSync: isSync,\n isForce: isForce,\n callback: callbacks.length ? function () { return callbacks.forEach(function (cb) { return cb === null || cb === void 0 ? void 0 : cb(); }); } : void 0,\n };\n }\n else {\n var _loop_2 = function () {\n var updater = node.value;\n var nextNode = node.next;\n if (updater.type === myreactSharedExports.UpdateQueueType.component) {\n allQueue.delete(node);\n var payLoad_2 = updater.payLoad;\n fiber.pendingState = safeCallWithFiber({\n fiber: fiber,\n fallback: function () { return pendingState; },\n action: function () { return Object.assign({}, fiber.pendingState, typeof payLoad_2 === \"function\" ? payLoad_2(baseState, baseProps) : payLoad_2); },\n });\n isSync = isSync || updater.isSync;\n isForce = isForce || updater.isForce;\n updater.callback && callbacks.push(updater.callback);\n }\n node = nextNode;\n };\n while (node) {\n _loop_2();\n }\n return {\n needUpdate: true,\n isSync: isSync,\n isForce: isForce,\n callback: callbacks.length ? function () { return callbacks.forEach(function (cb) { return cb === null || cb === void 0 ? void 0 : cb(); }); } : void 0,\n };\n }\n};\nvar processFunctionComponentUpdateQueue = function (fiber, enableTaskPriority) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n if (myreactSharedExports.exclude(fiber.type, exports.NODE_TYPE.__function__))\n throw new Error(\"[@my-react/react] current fiber is not a function component, look like a bug for @my-react\");\n var renderPlatform = currentRenderPlatform$4.current;\n var allQueue = fiber.updateQueue;\n var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;\n var needUpdate = false;\n var isSync = false;\n var isForce = false;\n var callbacks = [];\n if (enableTaskPriority && allQueue.some(function (l) { return l.isSync; })) {\n var _loop_3 = function () {\n var updater = node.value;\n var nextNode = node.next;\n if (updater.type === myreactSharedExports.UpdateQueueType.hook && updater.isSync) {\n allQueue.delete(node);\n var trigger = updater.trigger, payLoad_3 = updater.payLoad;\n var typedTrigger_1 = trigger;\n var lastResult_1 = typedTrigger_1.result;\n typedTrigger_1.result = safeCallWithFiber({\n fiber: fiber,\n fallback: function () { return lastResult_1; },\n action: function () { return typedTrigger_1.reducer(lastResult_1, payLoad_3); },\n });\n isSync = isSync || updater.isSync;\n isForce = isForce || updater.isForce;\n updater.callback && callbacks.push(updater.callback);\n if (!needUpdate && (isForce || callbacks.length || !Object.is(lastResult_1, typedTrigger_1.result)))\n needUpdate = true;\n }\n node = nextNode;\n };\n while (node) {\n _loop_3();\n }\n if (allQueue.length)\n renderPlatform.microTask(function () { return fiber._prepare(); });\n return {\n needUpdate: needUpdate,\n isSync: isSync,\n isForce: isForce,\n callback: callbacks.length ? function () { return callbacks.forEach(function (cb) { return cb === null || cb === void 0 ? void 0 : cb(); }); } : void 0,\n };\n }\n else {\n var _loop_4 = function () {\n var updater = node.value;\n var nextNode = node.next;\n if (updater.type === myreactSharedExports.UpdateQueueType.hook) {\n allQueue.delete(node);\n var trigger = updater.trigger, payLoad_4 = updater.payLoad;\n var typedTrigger_2 = trigger;\n var lastResult_2 = typedTrigger_2.result;\n typedTrigger_2.result = safeCallWithFiber({\n fiber: fiber,\n fallback: function () { return lastResult_2; },\n action: function () { return typedTrigger_2.reducer(lastResult_2, payLoad_4); },\n });\n isSync = isSync || updater.isSync;\n isForce = isForce || updater.isForce;\n updater.callback && callbacks.push(updater.callback);\n if (!needUpdate && (isForce || callbacks.length || !Object.is(lastResult_2, typedTrigger_2.result)))\n needUpdate = true;\n }\n node = nextNode;\n };\n while (node) {\n _loop_4();\n }\n return {\n needUpdate: needUpdate,\n isSync: isSync,\n isForce: isForce,\n callback: callbacks.length ? function () { return callbacks.forEach(function (cb) { return cb === null || cb === void 0 ? void 0 : cb(); }); } : void 0,\n };\n }\n};\nvar processLazyComponentUpdate = function (fiber) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n if (myreactSharedExports.exclude(fiber.type, exports.NODE_TYPE.__lazy__))\n throw new Error(\"[@my-react/react] current fiber is not a lazy component, look like a bug for @my-react\");\n var allQueue = fiber.updateQueue;\n var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;\n var needUpdate = false;\n var isSync = false;\n var isForce = false;\n var callbacks = [];\n while (node) {\n var updater = node.value;\n var nextNode = node.next;\n if (updater.type === myreactSharedExports.UpdateQueueType.lazy) {\n allQueue.delete(node);\n updater.payLoad;\n isSync = isSync || updater.isSync;\n isForce = isForce || updater.isForce;\n needUpdate = true;\n updater.callback && callbacks.push(updater.callback);\n }\n node = nextNode;\n }\n return {\n needUpdate: needUpdate,\n isSync: isSync,\n isForce: isForce,\n callback: callbacks.length ? function () { return callbacks.forEach(function (cb) { return cb === null || cb === void 0 ? void 0 : cb(); }); } : void 0,\n };\n};\n/**\n * @deprecated\n */\nvar syncFiberStateToComponent = function (fiber, callback) {\n var typedInstance = fiber.instance;\n var typedPendingState = fiber.pendingState;\n typedInstance.state = Object.assign({}, typedInstance.state, typedPendingState);\n var renderDispatch = currentRenderDispatch.current;\n callback && renderDispatch.pendingLayoutEffect(fiber, callback, { stickyToFoot: true });\n};\n/**\n * @deprecated\n */\nvar syncFlushComponentQueue = function (fiber) {\n var _a = processClassComponentUpdateQueue(fiber), needUpdate = _a.needUpdate, callback = _a.callback;\n needUpdate && syncFiberStateToComponent(fiber, callback);\n syncComponentStateToFiber(fiber);\n};\n\n/* eslint-disable max-lines */\nvar enableLegacyLifeCycle = react.__my_react_shared__.enableLegacyLifeCycle;\nvar processComponentStateFromProps = function (fiber) {\n var Component = fiber.elementType;\n var typedComponent = Component;\n var typedInstance = fiber.instance;\n var pendingProps = fiber.pendingProps;\n var pendingState = fiber.pendingState;\n if (typedComponent.getDerivedStateFromProps) {\n var payloadState = safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedComponent.getDerivedStateFromProps) === null || _a === void 0 ? void 0 : _a.call(typedComponent, pendingProps, pendingState); } });\n if (payloadState) {\n var newState = Object.assign({}, pendingState, payloadState);\n typedInstance.state = newState;\n fiber.pendingState = newState;\n }\n }\n};\nvar processComponentInstanceOnMount = function (fiber) {\n var renderDispatch = currentRenderDispatch.current;\n var Component = fiber.elementType;\n var typedComponent = Component;\n var providerFiber = renderDispatch.resolveContextFiber(fiber, typedComponent.contextType);\n var context = renderDispatch.resolveContextValue(providerFiber, typedComponent.contextType);\n var props = Object.assign({}, fiber.pendingProps);\n var instance = safeCallWithFiber({ fiber: fiber, action: function () { return new typedComponent(props, context); } });\n instance.props = props;\n instance.context = context;\n fiber.instance = instance;\n initInstance(instance);\n setOwnerForInstance(instance, fiber);\n setContextForInstance(instance, providerFiber);\n fiber.pendingState = instance.state;\n};\nvar processComponentFiberOnUpdate = function (fiber) {\n var typedInstance = fiber.instance;\n setOwnerForInstance(typedInstance, fiber);\n};\nvar processComponentRenderOnMountAndUpdate = function (fiber) {\n var typedInstance = fiber.instance;\n var children = safeCallWithFiber({ fiber: fiber, action: function () { return typedInstance.render(); } });\n return children;\n};\nvar processComponentDidMountOnMount = function (fiber) {\n var typedInstance = fiber.instance;\n var renderDispatch = currentRenderDispatch.current;\n var effect = getInstanceEffectState(typedInstance);\n if (typedInstance.componentDidMount && myreactSharedExports.exclude(effect, myreactSharedExports.Effect_TYPE.__effect__)) {\n setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__effect__);\n renderDispatch.pendingLayoutEffect(fiber, function () {\n var _a;\n setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__initial__);\n (_a = typedInstance.componentDidMount) === null || _a === void 0 ? void 0 : _a.call(typedInstance);\n });\n }\n};\nvar processComponentContextOnUpdate = function (fiber) {\n var Component = fiber.elementType;\n var renderDispatch = currentRenderDispatch.current;\n var typedComponent = Component;\n var typedInstance = fiber.instance;\n if (typedComponent.contextType) {\n var contextFiber = getInstanceContextFiber(typedInstance);\n if (!contextFiber || myreactSharedExports.include(contextFiber.state, myreactSharedExports.STATE_TYPE.__unmount__)) {\n var providerFiber = renderDispatch.resolveContextFiber(fiber, typedComponent.contextType);\n var context = renderDispatch.resolveContextValue(providerFiber, typedComponent.contextType);\n setContextForInstance(typedInstance, providerFiber);\n return context;\n }\n else {\n var context = renderDispatch.resolveContextValue(contextFiber, typedComponent.contextType);\n setContextForInstance(typedInstance, contextFiber);\n return context;\n }\n }\n};\nvar processComponentPropsAndContextOnActive = function (fiber) {\n var props = Object.assign({}, fiber.pendingProps);\n var context = processComponentContextOnUpdate(fiber);\n var typedInstance = fiber.instance;\n typedInstance.props = props;\n typedInstance.context = context;\n};\nvar processComponentShouldUpdateOnUpdate = function (fiber, _a) {\n var nextState = _a.nextState, nextProps = _a.nextProps, nextContext = _a.nextContext;\n var typedInstance = fiber.instance;\n // if (include(fiber.state, STATE_TYPE.__triggerSync__ | STATE_TYPE.__triggerConcurrent__)) return true;\n if (typedInstance.shouldComponentUpdate) {\n return safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.shouldComponentUpdate) === null || _a === void 0 ? void 0 : _a.call(typedInstance, nextProps, nextState, nextContext); } });\n }\n return true;\n};\nvar processComponentGetSnapshotOnUpdate = function (fiber, _a) {\n var baseState = _a.baseState, baseProps = _a.baseProps;\n var typedInstance = fiber.instance;\n if (typedInstance.getSnapshotBeforeUpdate) {\n return safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.getSnapshotBeforeUpdate) === null || _a === void 0 ? void 0 : _a.call(typedInstance, baseProps, baseState); } });\n }\n return null;\n};\nvar processComponentDidUpdateOnUpdate = function (fiber, _a) {\n var baseState = _a.baseState, baseProps = _a.baseProps, snapshot = _a.snapshot;\n var typedInstance = fiber.instance;\n var renderDispatch = currentRenderDispatch.current;\n var effect = getInstanceEffectState(typedInstance);\n if (typedInstance.componentDidUpdate && myreactSharedExports.exclude(effect, myreactSharedExports.Effect_TYPE.__effect__)) {\n setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__effect__);\n renderDispatch.pendingLayoutEffect(fiber, function () {\n var _a;\n setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__initial__);\n (_a = typedInstance.componentDidUpdate) === null || _a === void 0 ? void 0 : _a.call(typedInstance, baseProps, baseState, snapshot);\n });\n }\n};\n/**\n * @deprecated\n */\nvar processComponentWillMountOnMount = function (fiber) {\n var typedInstance = fiber.instance;\n var hasLegacyLifeFunction = false;\n if (typedInstance.UNSAFE_componentWillMount) {\n hasLegacyLifeFunction = true;\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.UNSAFE_componentWillMount) === null || _a === void 0 ? void 0 : _a.call(typedInstance); } });\n }\n if (typedInstance.componentWillMount) {\n hasLegacyLifeFunction = true;\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.componentWillMount) === null || _a === void 0 ? void 0 : _a.call(typedInstance); } });\n }\n return hasLegacyLifeFunction;\n};\n/**\n * @deprecated\n */\nvar processComponentWillReceiveProps = function (fiber) {\n var typedInstance = fiber.instance;\n var hasLegacyLifeFunction = false;\n // only trigger on parent component update\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__inherit__)) {\n if (typedInstance.UNSAFE_componentWillReceiveProps) {\n hasLegacyLifeFunction = true;\n var nextProps_1 = Object.assign({}, fiber.pendingProps);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.UNSAFE_componentWillReceiveProps) === null || _a === void 0 ? void 0 : _a.call(typedInstance, nextProps_1); } });\n }\n if (typedInstance.componentWillReceiveProps) {\n hasLegacyLifeFunction = true;\n var nextProps_2 = Object.assign({}, fiber.pendingProps);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.componentWillReceiveProps) === null || _a === void 0 ? void 0 : _a.call(typedInstance, nextProps_2); } });\n }\n }\n return hasLegacyLifeFunction;\n};\n/**\n * @deprecated\n */\nvar processComponentWillUpdate = function (fiber, _a) {\n var nextProps = _a.nextProps, nextState = _a.nextState;\n var typedInstance = fiber.instance;\n if (typedInstance.UNSAFE_componentWillUpdate) {\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.UNSAFE_componentWillUpdate) === null || _a === void 0 ? void 0 : _a.call(typedInstance, nextProps, nextState); } });\n }\n if (typedInstance.componentWillUpdate) {\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance.componentWillUpdate) === null || _a === void 0 ? void 0 : _a.call(typedInstance, nextProps, nextState); } });\n }\n};\nvar classComponentMount = function (fiber) {\n processComponentInstanceOnMount(fiber);\n processComponentStateFromProps(fiber);\n // legacy lifeCycle\n if (enableLegacyLifeCycle.current) {\n beforeSyncFlush();\n processComponentWillMountOnMount(fiber) && syncFlushComponentQueue(fiber);\n afterSyncFlush();\n }\n var children = processComponentRenderOnMountAndUpdate(fiber);\n processComponentDidMountOnMount(fiber);\n return children;\n};\n// TODO\nvar classComponentActive = function (fiber) {\n processComponentFiberOnUpdate(fiber);\n processComponentPropsAndContextOnActive(fiber);\n var children = processComponentRenderOnMountAndUpdate(fiber);\n processComponentDidMountOnMount(fiber);\n return children;\n};\n// TODO\nvar classComponentUpdateImpl = function (fiber) {\n processComponentFiberOnUpdate(fiber);\n processComponentStateFromProps(fiber);\n if (enableLegacyLifeCycle.current) {\n beforeSyncFlush();\n processComponentWillReceiveProps(fiber) && syncFlushComponentQueue(fiber);\n afterSyncFlush();\n }\n var typedInstance = fiber.instance;\n var baseState = typedInstance.state;\n var baseProps = typedInstance.props;\n // const baseContext = typedInstance.context;\n var nextState = Object.assign({}, fiber.pendingState);\n var nextProps = Object.assign({}, fiber.pendingProps);\n var nextContext = processComponentContextOnUpdate(fiber);\n var shouldUpdate = Boolean(myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__triggerSyncForce__ | myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__));\n if (!shouldUpdate) {\n shouldUpdate = processComponentShouldUpdateOnUpdate(fiber, {\n nextState: nextState,\n nextProps: nextProps,\n nextContext: nextContext,\n });\n }\n if (shouldUpdate && enableLegacyLifeCycle.current) {\n processComponentWillUpdate(fiber, { nextProps: nextProps, nextState: nextState });\n }\n typedInstance.state = nextState;\n typedInstance.props = nextProps;\n typedInstance.context = nextContext;\n if (shouldUpdate) {\n var children = processComponentRenderOnMountAndUpdate(fiber);\n var snapshot = processComponentGetSnapshotOnUpdate(fiber, { baseState: baseState, baseProps: baseProps });\n processComponentDidUpdateOnUpdate(fiber, {\n snapshot: snapshot,\n baseProps: baseProps,\n baseState: baseState,\n });\n return { updated: true, children: children };\n }\n else {\n return { updated: false };\n }\n};\nvar syncComponentStateToFiber = function (fiber) {\n var typedInstance = fiber.instance;\n // sync pendingState\n fiber.pendingState = Object.assign({}, typedInstance.state);\n};\nvar classComponentUpdate = function (fiber) {\n var res = classComponentUpdateImpl(fiber);\n syncComponentStateToFiber(fiber);\n return res;\n};\nvar classComponentUnmount = function (fiber) {\n var typedInstance = fiber.instance;\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = typedInstance === null || typedInstance === void 0 ? void 0 : typedInstance.componentWillUnmount) === null || _a === void 0 ? void 0 : _a.call(typedInstance); } });\n unmountInstance(typedInstance);\n};\n\nvar MyReactInternalInstance = react.__my_react_internal__.MyReactInternalInstance, currentRenderPlatform$3 = react.__my_react_internal__.currentRenderPlatform;\nvar enableSyncFlush = react.__my_react_shared__.enableSyncFlush;\nvar defaultPayLoad = function (a) { return a; };\nvar MyReactHookNode = /** @class */ (function (_super) {\n __extends(MyReactHookNode, _super);\n function MyReactHookNode(type, value, reducer, deps) {\n var _this = _super.call(this) || this;\n _this.hasEffect = false;\n _this._dispatch = function (action) {\n _this._update({ payLoad: action, isForce: false, isSync: enableSyncFlush.current });\n };\n _this.type = type;\n _this.deps = deps;\n _this.value = value;\n _this.reducer = reducer;\n return _this;\n }\n Object.defineProperty(MyReactHookNode.prototype, \"isMyReactHook\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n MyReactHookNode.prototype._update = function (params) {\n if (params === void 0) { params = {}; }\n var updater = __assign({ type: myreactSharedExports.UpdateQueueType.hook, trigger: this, payLoad: defaultPayLoad, isSync: false, isForce: false }, params);\n var renderPlatform = currentRenderPlatform$3.current;\n renderPlatform === null || renderPlatform === void 0 ? void 0 : renderPlatform.dispatchState(updater);\n };\n return MyReactHookNode;\n}(MyReactInternalInstance));\n\nvar enableLoopFromRoot$1 = react.__my_react_shared__.enableLoopFromRoot;\nvar currentComponentFiber$2 = react.__my_react_internal__.currentComponentFiber;\nvar MyReactSignal = /** @class */ (function () {\n function MyReactSignal(_rawValue, _renderDispatch) {\n var _this = this;\n this._renderDispatch = _renderDispatch;\n this._depsSet = new Set();\n this.getValue = function () {\n if (currentComponentFiber$2.current) {\n _this._depsSet.add(currentComponentFiber$2.current);\n }\n return _this._value;\n };\n this.setValue = function (newValue) {\n if (!Object.is(_this._value, newValue)) {\n var allDeps = new Set(_this._depsSet);\n _this._depsSet.clear();\n _this._value = newValue;\n if (enableLoopFromRoot$1.current) {\n allDeps.forEach(function (f) { return myreactSharedExports.exclude(f.state, myreactSharedExports.STATE_TYPE.__unmount__) && (f.state = myreactSharedExports.STATE_TYPE.__triggerConcurrent__); });\n }\n else {\n allDeps.forEach(function (f) { return myreactSharedExports.exclude(f.state, myreactSharedExports.STATE_TYPE.__unmount__) && (f.state = myreactSharedExports.STATE_TYPE.__triggerConcurrent__); });\n _this._renderDispatch.rootFiber._update(myreactSharedExports.STATE_TYPE.__skippedSync__);\n }\n }\n };\n this._value = _rawValue;\n }\n return MyReactSignal;\n}());\n\nvar enableDebugLog$1 = react.__my_react_shared__.enableDebugLog; react.__my_react_shared__.enableDebugFiled; react.__my_react_shared__.enableHookStack;\nvar currentHookTreeNode$2 = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = react.__my_react_internal__.currentHookNodeIndex;\nvar defaultReducer = function (state, action) {\n return typeof action === \"function\" ? action(state) : action;\n};\nvar createHookNode = function (_a, fiber) {\n var _b;\n var type = _a.type, value = _a.value, reducer = _a.reducer, deps = _a.deps;\n var renderDispatch = currentRenderDispatch.current;\n var currentHook = (_b = currentHookTreeNode$2.current) === null || _b === void 0 ? void 0 : _b.value;\n var currentHookIndex = currentHookNodeIndex$2.current;\n if (currentHook) {\n throw new Error(\"[@my-react/react] should not have a hookList for current node, this is a bug for @my-react\");\n }\n var hookNode = new MyReactHookNode(type, value, reducer || defaultReducer, deps);\n initInstance(hookNode);\n setOwnerForInstance(hookNode, fiber);\n fiber.hookList.push(hookNode);\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useMemo || hookNode.type === myreactSharedExports.HOOK_TYPE.useState || hookNode.type === myreactSharedExports.HOOK_TYPE.useReducer) {\n hookNode.result = hookNode.value.call(null);\n // 兼容极端情况的hack code\n var a = function () {\n };\n a.bind(null, fiber);\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useEffect ||\n hookNode.type === myreactSharedExports.HOOK_TYPE.useLayoutEffect ||\n hookNode.type === myreactSharedExports.HOOK_TYPE.useInsertionEffect ||\n hookNode.type === myreactSharedExports.HOOK_TYPE.useImperativeHandle) {\n hookNode.result = hookNode.value;\n hookNode.hasEffect = true;\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useRef || hookNode.type === myreactSharedExports.HOOK_TYPE.useCallback || hookNode.type === myreactSharedExports.HOOK_TYPE.useDeferredValue) {\n hookNode.result = hookNode.value;\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useId) {\n hookNode.result = \":-\".concat(currentHookIndex, \"-\").concat(renderDispatch.uniqueIdCount++, \"-:\");\n hookNode.cancel = function () { return renderDispatch.uniqueIdCount--; };\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useDebugValue) {\n hookNode.result = hookNode.value;\n if (enableDebugLog$1.current) {\n console.warn.apply(console, __spreadArray([\"[debug]\"], hookNode.value, false));\n }\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useContext) {\n var providerFiber = renderDispatch.resolveContextFiber(fiber, hookNode.value);\n var context = renderDispatch.resolveContextValue(providerFiber, hookNode.value);\n setContextForInstance(hookNode, providerFiber);\n hookNode.result = context;\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useSyncExternalStore) {\n var storeApi_1 = hookNode.value;\n hookNode.result = safeCallWithFiber({\n fiber: fiber,\n action: function () {\n var _a;\n return renderDispatch.isAppMounted\n ? storeApi_1.getSnapshot.call(null)\n : storeApi_1.getServerSnapshot\n ? (_a = storeApi_1.getServerSnapshot) === null || _a === void 0 ? void 0 : _a.call(null)\n : storeApi_1.getSnapshot.call(null);\n },\n });\n hookNode.hasEffect = true;\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useSignal) {\n hookNode.result = new MyReactSignal(hookNode.value.call(null), renderDispatch);\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useTransition) {\n hookNode.result = [\n false,\n function (cb) {\n var loadingCallback = function (cb) {\n react.startTransition(function () {\n hookNode.result[0] = true;\n hookNode._update({ isForce: true, callback: cb });\n });\n };\n var loadedCallback = function () {\n react.startTransition(function () {\n hookNode.result[0] = false;\n hookNode._update({ isForce: true });\n });\n };\n var taskCallback = function () {\n react.startTransition(function () {\n safeCallWithFiber({ fiber: fiber, action: cb });\n loadedCallback();\n });\n };\n loadingCallback(taskCallback);\n },\n ];\n }\n return hookNode;\n};\n\nvar effectHookNode = function (fiber, hookNode) {\n var renderDispatch = currentRenderDispatch.current;\n var effect = getInstanceEffectState(hookNode);\n if (hookNode.hasEffect && effect === myreactSharedExports.Effect_TYPE.__initial__) {\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__effect__);\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useEffect) {\n renderDispatch.pendingEffect(fiber, function () {\n hookNode.cancel && hookNode.cancel();\n var ownerFiber = getInstanceOwnerFiber(hookNode);\n if (ownerFiber && myreactSharedExports.exclude(ownerFiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n hookNode.cancel = hookNode.value();\n hookNode.hasEffect = false;\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__initial__);\n });\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useLayoutEffect) {\n renderDispatch.pendingLayoutEffect(fiber, function () {\n hookNode.cancel && hookNode.cancel();\n hookNode.cancel = hookNode.value();\n hookNode.hasEffect = false;\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__initial__);\n });\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useInsertionEffect) {\n renderDispatch.pendingInsertionEffect(fiber, function () {\n hookNode.cancel && hookNode.cancel();\n hookNode.cancel = hookNode.value();\n hookNode.hasEffect = false;\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__initial__);\n });\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useImperativeHandle) {\n renderDispatch.pendingLayoutEffect(fiber, function () {\n // ref obj\n if (hookNode.value && typeof hookNode.value === \"object\")\n hookNode.value.current = hookNode.reducer.call(null);\n // ref function\n if (hookNode.value && typeof hookNode.value === \"function\")\n hookNode.value(hookNode.reducer.call(null));\n hookNode.hasEffect = false;\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__initial__);\n });\n }\n if (hookNode.type === myreactSharedExports.HOOK_TYPE.useSyncExternalStore) {\n renderDispatch.pendingLayoutEffect(fiber, function () {\n hookNode.cancel && hookNode.cancel();\n var storeApi = hookNode.value;\n hookNode.cancel = storeApi.subscribe(function () { return hookNode._update({ isForce: true }); });\n hookNode.hasEffect = false;\n setEffectForInstance(hookNode, myreactSharedExports.Effect_TYPE.__initial__);\n });\n }\n }\n};\n\nvar enableDebugLog = react.__my_react_shared__.enableDebugLog;\nvar currentHookTreeNode$1 = react.__my_react_internal__.currentHookTreeNode, currentRenderPlatform$2 = react.__my_react_internal__.currentRenderPlatform;\nvar updateHookNode = function (_a, fiber, isHMR) {\n var _b, _c;\n var type = _a.type, value = _a.value, reducer = _a.reducer, deps = _a.deps;\n var renderDispatch = currentRenderDispatch.current;\n var renderPlatform = currentRenderPlatform$2.current;\n var currentHook = (_b = currentHookTreeNode$1.current) === null || _b === void 0 ? void 0 : _b.value;\n if (!currentHook) {\n throw new Error(\"[@my-react/react] should have a hookList for current node, this is a bug for @my-react\");\n }\n if (type !== (currentHook === null || currentHook === void 0 ? void 0 : currentHook.type)) {\n throw new Error(renderPlatform.getHookTree(currentHookTreeNode$1.current.prev, {\n lastRender: currentHook === null || currentHook === void 0 ? void 0 : currentHook.type,\n nextRender: type,\n }));\n }\n setOwnerForInstance(currentHook, fiber);\n currentHookTreeNode$1.current = currentHookTreeNode$1.current.next;\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useMemo ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useCallback ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useLayoutEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useInsertionEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useImperativeHandle) {\n if (deps && !currentHook.deps) {\n throw new Error(\"[@my-react/react] deps state change\");\n }\n if (!deps && currentHook.deps) {\n throw new Error(\"[@my-react/react] deps state change\");\n }\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useLayoutEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useInsertionEffect ||\n currentHook.type === myreactSharedExports.HOOK_TYPE.useImperativeHandle) {\n if (isHMR || !deps || !myreactSharedExports.isArrayEquals(currentHook.deps, deps)) {\n currentHook.value = value;\n currentHook.result = value;\n currentHook.reducer = reducer || currentHook.reducer;\n currentHook.deps = deps;\n currentHook.hasEffect = true;\n }\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useSyncExternalStore) {\n var storeApi_1 = currentHook.value;\n var newStoreApi = value;\n if (isHMR || !Object.is(storeApi_1.subscribe, newStoreApi.subscribe)) {\n storeApi_1.subscribe = newStoreApi.subscribe;\n currentHook.hasEffect = true;\n }\n storeApi_1.getSnapshot = newStoreApi.getSnapshot;\n currentHook.result = safeCallWithFiber({ fiber: fiber, action: function () { return storeApi_1.getSnapshot.call(null); } });\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useCallback) {\n if (isHMR || !deps || !myreactSharedExports.isArrayEquals(currentHook.deps, deps)) {\n currentHook.value = value;\n currentHook.result = value;\n currentHook.deps = deps;\n }\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useMemo) {\n if (isHMR || !deps || !myreactSharedExports.isArrayEquals(currentHook.deps, deps)) {\n currentHook.value = value;\n currentHook.result = safeCallWithFiber({ fiber: fiber, action: function () { return value.call(null); } });\n currentHook.deps = deps;\n }\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useContext) {\n var contextFiber = getInstanceContextFiber(currentHook);\n if (!contextFiber || myreactSharedExports.include(contextFiber.state, myreactSharedExports.STATE_TYPE.__unmount__) || !Object.is(currentHook.value, value)) {\n currentHook.value = value;\n var providerFiber = renderDispatch.resolveContextFiber(fiber, currentHook.value);\n var context = renderDispatch.resolveContextValue(providerFiber, currentHook.value);\n setContextForInstance(currentHook, providerFiber);\n currentHook.result = context;\n }\n else {\n var context = renderDispatch.resolveContextValue(contextFiber, currentHook.value);\n currentHook.result = context;\n }\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useReducer) {\n currentHook.value = value;\n currentHook.reducer = reducer;\n return currentHook;\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useDeferredValue) {\n (_c = currentHook.cancel) === null || _c === void 0 ? void 0 : _c.call(currentHook);\n currentHook.value = value;\n if (!Object.is(currentHook.value, currentHook.result)) {\n currentHook.cancel = renderPlatform.yieldTask(function () {\n currentHook.result = currentHook.value;\n currentHook._update({ isForce: true });\n currentHook.cancel = null;\n });\n }\n }\n if (currentHook.type === myreactSharedExports.HOOK_TYPE.useDebugValue) {\n if (!myreactSharedExports.isArrayEquals(currentHook.value, value)) {\n currentHook.value = value;\n currentHook.result = value;\n if (enableDebugLog.current) {\n console.warn.apply(console, __spreadArray([\"[debug]\"], currentHook.value, false));\n }\n }\n }\n return currentHook;\n};\n\nvar hookNodeUnmount = function (renderDispatch, fiber, hookNode) {\n hookNode.hasEffect = false;\n hookNode.cancel && hookNode.cancel();\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookUnmount) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(hookNode); }); } });\n unmountInstance(hookNode);\n};\nvar hookListUnmount = function (fiber) {\n var _a, _b;\n var renderDispatch = getCurrentDispatchFromFiber(fiber);\n (_b = (_a = fiber.hookList) === null || _a === void 0 ? void 0 : _a.listToFoot) === null || _b === void 0 ? void 0 : _b.call(_a, function (hookNode) { return safeCallWithFiber({ fiber: fiber, action: function () { return hookNodeUnmount(renderDispatch, fiber, hookNode); } }); });\n};\n\nvar hmr = function (fiber, nextType, forceRefresh) {\n {\n throw new Error(\"[@my-react/react] can not try to dev refresh this app in prod env!\");\n }\n};\n\nvar currentRenderPlatform$1 = react.__my_react_internal__.currentRenderPlatform;\nvar enableConcurrentMode = react.__my_react_shared__.enableConcurrentMode;\nvar emptyProps = {};\nvar MyReactFiberNode = /** @class */ (function () {\n function MyReactFiberNode(element) {\n this.state = myreactSharedExports.STATE_TYPE.__initial__;\n this.patch = myreactSharedExports.PATCH_TYPE.__initial__;\n this.type = exports.NODE_TYPE.__initial__;\n this.mode = myreactSharedExports.MODE_TYPE.__initial__;\n this.child = null;\n this.parent = null;\n this.sibling = null;\n this.pendingProps = emptyProps;\n this.memoizedProps = emptyProps;\n this.state = myreactSharedExports.STATE_TYPE.__create__;\n this._installElement(element);\n }\n MyReactFiberNode.prototype._installElement = function (element) {\n var _a = getTypeFromElementNode(element), key = _a.key, ref = _a.ref, nodeType = _a.nodeType, elementType = _a.elementType, pendingProps = _a.pendingProps;\n this.ref = ref;\n this.key = key;\n this.type = nodeType;\n this.elementType = elementType;\n this.pendingProps = pendingProps;\n };\n MyReactFiberNode.prototype._addDependence = function (instance) {\n this.dependence = this.dependence || new Set();\n this.dependence.add(instance);\n };\n MyReactFiberNode.prototype._delDependence = function (instance) {\n var _a;\n (_a = this.dependence) === null || _a === void 0 ? void 0 : _a.delete(instance);\n };\n MyReactFiberNode.prototype._unmount = function (cb) {\n if (myreactSharedExports.include(this.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n hookListUnmount(this);\n classComponentUnmount(this);\n this.patch = myreactSharedExports.PATCH_TYPE.__initial__;\n this.state = myreactSharedExports.STATE_TYPE.__initial__;\n cb === null || cb === void 0 ? void 0 : cb();\n };\n MyReactFiberNode.prototype._prepare = function (initial) {\n var _this = this;\n var renderPlatform = currentRenderPlatform$1.current;\n var processQueue = function () {\n var flag = enableConcurrentMode.current;\n var updateState = myreactSharedExports.include(_this.type, exports.NODE_TYPE.__class__)\n ? processClassComponentUpdateQueue(_this, flag)\n : myreactSharedExports.include(_this.type, exports.NODE_TYPE.__function__)\n ? processFunctionComponentUpdateQueue(_this, flag)\n : myreactSharedExports.include(_this.type, exports.NODE_TYPE.__lazy__)\n ? processLazyComponentUpdate(_this)\n : (function () {\n throw new Error(\"unknown runtime error, this is a bug for @my-react\");\n })();\n if (updateState === null || updateState === void 0 ? void 0 : updateState.needUpdate) {\n if (updateState.isSync) {\n renderPlatform.microTask(function () {\n return triggerUpdate(_this, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerSyncForce__ : myreactSharedExports.STATE_TYPE.__triggerSync__, updateState.callback);\n });\n }\n else {\n renderPlatform.microTask(function () {\n return triggerUpdate(_this, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__ : myreactSharedExports.STATE_TYPE.__triggerConcurrent__, updateState.callback);\n });\n }\n }\n };\n if (initial) {\n processQueue();\n }\n else {\n renderPlatform.microTask(processQueue);\n }\n };\n MyReactFiberNode.prototype._update = function (state) {\n var _this = this;\n if (myreactSharedExports.include(this.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n var renderPlatform = currentRenderPlatform$1.current;\n renderPlatform.microTask(function () { return triggerUpdate(_this, state); });\n };\n return MyReactFiberNode;\n}());\nObject.defineProperty(MyReactFiberNode.prototype, \"isMyReactFiberNode\", {\n value: true,\n configurable: true,\n});\nObject.defineProperty(MyReactFiberNode.prototype, \"return\", {\n get: function () {\n return this.parent;\n },\n configurable: true,\n});\nObject.defineProperty(MyReactFiberNode.prototype, \"stateNode\", {\n get: function () {\n return this.nativeNode || this.containerNode;\n },\n configurable: true,\n});\n\nvar createFiberNode = function (_a, element) {\n var parent = _a.parent, _b = _a.type, type = _b === void 0 ? \"append\" : _b;\n var renderDispatch = currentRenderDispatch.current;\n var newFiberNode = new MyReactFiberNode(element);\n fiberToDispatchMap.set(newFiberNode, renderDispatch);\n newFiberNode.parent = parent;\n parent.child = parent.child || newFiberNode;\n renderDispatch.pendingCreate(newFiberNode);\n renderDispatch.pendingUpdate(newFiberNode);\n if (type === \"position\") {\n renderDispatch.pendingPosition(newFiberNode);\n }\n else {\n renderDispatch.pendingAppend(newFiberNode);\n }\n renderDispatch.pendingRef(newFiberNode);\n safeCallWithFiber({ fiber: newFiberNode, action: function () { var _a; return (_a = renderDispatch.patchToFiberInitial) === null || _a === void 0 ? void 0 : _a.call(renderDispatch, newFiberNode); } });\n safeCallWithFiber({ fiber: newFiberNode, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberInitial) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener(newFiberNode); }); } });\n if (myreactSharedExports.exclude(newFiberNode.patch, myreactSharedExports.PATCH_TYPE.__update__)) {\n newFiberNode.memoizedProps = newFiberNode.pendingProps;\n }\n return newFiberNode;\n};\n\nvar enableLoopFromRoot = react.__my_react_shared__.enableLoopFromRoot;\nvar updateFiberNode = function (_a, nextElement) {\n var fiber = _a.fiber, parent = _a.parent, prevFiber = _a.prevFiber;\n var prevElementType = fiber.elementType;\n var prevProps = fiber.memoizedProps;\n var prevRef = fiber.ref;\n var renderDispatch = currentRenderDispatch.current;\n fiber.parent = parent;\n fiber.sibling = null;\n parent.child = parent.child || fiber;\n fiber._installElement(nextElement);\n var nextElementType = fiber.elementType;\n var nextProps = fiber.pendingProps;\n var nextRef = fiber.ref;\n if (prevElementType !== nextElementType || prevProps !== nextProps) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__memo__)) {\n var typedElement = nextElement;\n var typedElementType = typedElement.type;\n var compare = typedElementType.compare || myreactSharedExports.isNormalEquals;\n if (myreactSharedExports.exclude(fiber.state, myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerConcurrent__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__ | myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__) &&\n compare(fiber.pendingProps, fiber.memoizedProps)) {\n fiber.state = myreactSharedExports.STATE_TYPE.__stable__;\n }\n else {\n fiber.state = myreactSharedExports.remove(fiber.state, myreactSharedExports.STATE_TYPE.__stable__);\n fiber.state = myreactSharedExports.merge(fiber.state, myreactSharedExports.STATE_TYPE.__inherit__);\n }\n }\n else {\n fiber.state = myreactSharedExports.remove(fiber.state, myreactSharedExports.STATE_TYPE.__stable__);\n fiber.state = myreactSharedExports.merge(fiber.state, myreactSharedExports.STATE_TYPE.__inherit__);\n }\n }\n if (fiber.state !== myreactSharedExports.STATE_TYPE.__stable__) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__provider__)) {\n if (!myreactSharedExports.isNormalEquals(fiber.pendingProps.value, fiber.memoizedProps.value)) {\n if (enableLoopFromRoot.current) {\n prepareUpdateAllDependence(fiber, fiber.memoizedProps.value, fiber.pendingProps.value);\n }\n else {\n // renderDispatch.pendingLayoutEffect(fiber, () => prepareUpdateAllDependenceFromProvider(fiber, fiber.memoizedProps.value, fiber.pendingProps.value));\n renderDispatch.pendingLayoutEffect(fiber, function () {\n return prepareUpdateAllDependenceFromRoot(renderDispatch, fiber, fiber.memoizedProps.value, fiber.pendingProps.value);\n });\n }\n }\n }\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__plain__)) {\n if (!myreactSharedExports.isNormalEquals(fiber.pendingProps, fiber.memoizedProps, function (key) { return key === \"children\"; })) {\n renderDispatch.pendingUpdate(fiber);\n }\n }\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__text__)) {\n renderDispatch.pendingUpdate(fiber);\n }\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = renderDispatch.patchToFiberUpdate) === null || _a === void 0 ? void 0 : _a.call(renderDispatch, fiber); } });\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberUpdate) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener(fiber); }); } });\n }\n if (nextRef && prevRef !== nextRef) {\n renderDispatch.pendingRef(fiber);\n }\n if (fiber !== prevFiber) {\n renderDispatch.pendingPosition(fiber);\n }\n if (myreactSharedExports.exclude(fiber.patch, myreactSharedExports.PATCH_TYPE.__update__)) {\n fiber.memoizedProps = fiber.pendingProps;\n }\n return fiber;\n};\n\n// no need to resolve map for this fiber, this code only used for fiberRoot init\nvar initialFiberNode = function (fiber, renderDispatch) {\n fiberToDispatchMap.set(fiber, renderDispatch);\n renderDispatch.pendingCreate(fiber);\n renderDispatch.pendingUpdate(fiber);\n renderDispatch.pendingAppend(fiber);\n renderDispatch.pendingRef(fiber);\n safeCall(function () { var _a; return (_a = renderDispatch.patchToFiberInitial) === null || _a === void 0 ? void 0 : _a.call(renderDispatch, fiber); });\n safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberInitial) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener(fiber); }); });\n if (myreactSharedExports.exclude(fiber.patch, myreactSharedExports.PATCH_TYPE.__update__)) {\n fiber.memoizedProps = fiber.pendingProps;\n }\n return fiber;\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar unmountFiberNode = function (fiber, renderDispatch) {\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n safeCallWithFiber({ fiber: fiber, action: function () { return renderDispatch.commitUnsetRef(fiber); } });\n safeCallWithFiber({ fiber: fiber, action: function () { return renderDispatch.commitClear(fiber); } });\n safeCallWithFiber({ fiber: fiber, action: function () { var _a; return (_a = renderDispatch.patchToFiberUnmount) === null || _a === void 0 ? void 0 : _a.call(renderDispatch, fiber); } });\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberUnmount) === null || _b === void 0 ? void 0 : _b.forEach(function (listener) { return listener(fiber); }); } });\n fiberToDispatchMap.delete(fiber);\n renderDispatch.runtimeMap.suspenseMap.delete(fiber);\n renderDispatch.runtimeMap.strictMap.delete(fiber);\n renderDispatch.runtimeMap.insertionEffectMap.delete(fiber);\n renderDispatch.runtimeMap.scopeMap.delete(fiber);\n renderDispatch.runtimeMap.errorBoundariesMap.delete(fiber);\n renderDispatch.runtimeMap.effectMap.delete(fiber);\n renderDispatch.runtimeMap.layoutEffectMap.delete(fiber);\n renderDispatch.runtimeMap.contextMap.delete(fiber);\n renderDispatch.runtimeMap.unmountMap.delete(fiber);\n renderDispatch.runtimeMap.eventMap.delete(fiber);\n if (Boolean(false) === false) {\n fiber.child = null;\n fiber.parent = null;\n fiber.sibling = null;\n fiber.instance = null;\n fiber.hookList = null;\n fiber.dependence = null;\n fiber.nativeNode = null;\n fiber.updateQueue = null;\n }\n fiber.state = myreactSharedExports.STATE_TYPE.__unmount__;\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar getIsSameTypeNode = function (newChild, draftFiber) {\n if (!draftFiber)\n return false;\n var result = checkIsSameType(draftFiber, newChild);\n return result;\n};\nvar getExistingChildren = function (parentFiber) {\n var existingChildrenMap = new Map();\n var existingChildrenArray = [];\n var child = parentFiber.child;\n var index = 0;\n while (child) {\n var key = typeof child.key === \"string\" ? child.key : index;\n var existingChild = existingChildrenMap.get(key) || new myreactSharedExports.ListTree();\n existingChild.push(child);\n existingChildrenMap.set(key, existingChild);\n existingChildrenArray.push(child);\n child = child.sibling;\n index++;\n }\n return { existingChildrenMap: existingChildrenMap, existingChildrenArray: existingChildrenArray };\n};\nvar dynamicFragmentProps = { wrap: true };\nvar createFragmentWithInitial = function (newChild, parentFiber) {\n // TODO make there are not a element\n var newElement = react.createElement(myreactSharedExports.Fragment, dynamicFragmentProps, newChild);\n var newFiber = createFiberNode({ parent: parentFiber }, newElement);\n return newFiber;\n};\nvar createFragmentWithUpdate = function (newChild, parentFiber) {\n var newElement = react.createElement(myreactSharedExports.Fragment, dynamicFragmentProps, newChild);\n var newFiber = createFiberNode({ parent: parentFiber, type: \"position\" }, newElement);\n return newFiber;\n};\nvar deleteIfNeed = function (parentFiber, existingChildren) {\n var renderDispatch = currentRenderDispatch.current;\n if (existingChildren.size) {\n existingChildren.forEach(function (list) { return list.listToFoot(function (f) { return renderDispatch.pendingUnmount(parentFiber, f); }); });\n renderDispatch.generateChangedList(parentFiber, true);\n }\n};\nvar getNewFiberWithUpdate = function (newChild, parentFiber, existingChildren, prevFiberChild, index) {\n var renderDispatch = currentRenderDispatch.current;\n if (Array.isArray(newChild)) {\n var draftList_1 = existingChildren.get(index);\n // TODO try to get the same type node?\n var draftFiber_1 = draftList_1 === null || draftList_1 === void 0 ? void 0 : draftList_1.shift();\n if (draftList_1 && !draftList_1.length) {\n existingChildren.delete(index);\n }\n // same type\n if (myreactSharedExports.include(draftFiber_1 === null || draftFiber_1 === void 0 ? void 0 : draftFiber_1.type, exports.NODE_TYPE.__fragment__)) {\n var newElement = react.createElement(myreactSharedExports.Fragment, dynamicFragmentProps, newChild);\n return updateFiberNode({ fiber: draftFiber_1, parent: parentFiber, prevFiber: prevFiberChild }, newElement);\n }\n else {\n renderDispatch.generateChangedList(parentFiber);\n renderDispatch.pendingUnmount(parentFiber, draftFiber_1);\n return createFragmentWithUpdate(newChild, parentFiber);\n }\n }\n var keyToGet = react.isValidElement(newChild) && typeof newChild.key === \"string\" ? newChild.key : index;\n var draftList = existingChildren.get(keyToGet);\n var draftFiber = draftList === null || draftList === void 0 ? void 0 : draftList.shift();\n if (draftList && !draftList.length) {\n existingChildren.delete(keyToGet);\n }\n var isSameType = getIsSameTypeNode(newChild, draftFiber);\n if (isSameType) {\n return updateFiberNode({ fiber: draftFiber, parent: parentFiber, prevFiber: prevFiberChild }, newChild);\n }\n else {\n draftFiber && renderDispatch.pendingUnmount(parentFiber, draftFiber);\n renderDispatch.generateChangedList(parentFiber);\n return createFiberNode({ parent: parentFiber, type: \"position\" }, newChild);\n }\n};\nvar getNewFiberWithInitial = function (newChild, parentFiber) {\n // wrapper array child item as a Fragment fiber node, so all of the children will be a fiber node\n // and could be add to the child list\n if (Array.isArray(newChild))\n return createFragmentWithInitial(newChild, parentFiber);\n return createFiberNode({ parent: parentFiber }, newChild);\n};\nvar transformChildrenFiber = function (parentFiber, children) {\n var isUpdate = myreactSharedExports.exclude(parentFiber.state, myreactSharedExports.STATE_TYPE.__create__);\n var isHMR = myreactSharedExports.include(parentFiber.state, myreactSharedExports.STATE_TYPE.__hmr__);\n var renderDispatch = currentRenderDispatch.current;\n if (isUpdate || isHMR) {\n var _a = getExistingChildren(parentFiber), existingChildrenMap = _a.existingChildrenMap, existingChildrenArray = _a.existingChildrenArray;\n parentFiber.child = null;\n if (Array.isArray(children)) {\n var newChildren = children;\n var index = 0;\n var lastFiber = null;\n while (index < newChildren.length) {\n var newChild = newChildren[index];\n var newFiber = getNewFiberWithUpdate(newChild, parentFiber, existingChildrenMap, existingChildrenArray[index] || null, index);\n lastFiber && (lastFiber.sibling = newFiber);\n lastFiber = newFiber;\n index++;\n }\n }\n else {\n getNewFiberWithUpdate(children, parentFiber, existingChildrenMap, existingChildrenArray[0], 0);\n }\n deleteIfNeed(parentFiber, existingChildrenMap);\n }\n else {\n renderDispatch.generateChangedList(parentFiber);\n var existingChildrenMap = getExistingChildren(parentFiber).existingChildrenMap;\n deleteIfNeed(parentFiber, existingChildrenMap);\n parentFiber.child = null;\n if (Array.isArray(children)) {\n var newChildren = children;\n var lastFiber = null;\n var index = 0;\n while (index < newChildren.length) {\n var newChild = newChildren[index];\n var newFiber = getNewFiberWithInitial(newChild, parentFiber);\n lastFiber && (lastFiber.sibling = newFiber);\n lastFiber = newFiber;\n index++;\n }\n }\n else {\n getNewFiberWithInitial(children, parentFiber);\n }\n }\n};\n\nreact.__my_react_internal__.MyReactInternalInstance;\n// support private instance field\nvar instanceMap = new Map();\nvar initInstance = function (instance) {\n if (instanceMap.has(instance))\n return;\n var field = {\n _context: null,\n _owner: null,\n effect: myreactSharedExports.Effect_TYPE.__initial__,\n };\n instanceMap.set(instance, field);\n};\nvar setContextForInstance = function (instance, fiber) {\n var _a, _b;\n var field = instanceMap.get(instance);\n // unmount instance\n if (!field)\n return;\n (_a = field._context) === null || _a === void 0 ? void 0 : _a._delDependence(instance);\n field._context = fiber;\n (_b = field._context) === null || _b === void 0 ? void 0 : _b._addDependence(instance);\n};\nvar setOwnerForInstance = function (instance, fiber) {\n var field = instanceMap.get(instance);\n // unmount instance\n if (!field)\n return;\n field._owner = fiber;\n};\nvar setEffectForInstance = function (instance, effect) {\n var field = instanceMap.get(instance);\n // unmount instance\n if (!field)\n return;\n field.effect = effect;\n};\nvar unmountInstance = function (instance) {\n var _a;\n var field = instanceMap.get(instance);\n if (!field)\n return;\n (_a = field._context) === null || _a === void 0 ? void 0 : _a._delDependence(instance);\n field.effect = myreactSharedExports.Effect_TYPE.__unmount__;\n field._owner = null;\n field._context = null;\n instanceMap.delete(instance);\n};\nvar getInstanceOwnerFiber = function (instance) {\n var typedInstance = instance;\n if (typedInstance.isMyReactInstance) {\n var field = instanceMap.get(typedInstance);\n return field === null || field === void 0 ? void 0 : field._owner;\n }\n else {\n var typedFiber = instance;\n if (typedFiber.isMyReactFiberNode) {\n return typedFiber;\n }\n else {\n throw new Error(\"instance is not a MyReactInternalInstance or MyReactFiberNode\");\n }\n }\n};\nvar getInstanceContextFiber = function (instance) {\n var field = instanceMap.get(instance);\n return field === null || field === void 0 ? void 0 : field._context;\n};\nvar getInstanceEffectState = function (instance) {\n var field = instanceMap.get(instance);\n return field === null || field === void 0 ? void 0 : field.effect;\n};\n\nvar currentHookTreeNode = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$1 = react.__my_react_internal__.currentHookNodeIndex, currentComponentFiber$1 = react.__my_react_internal__.currentComponentFiber;\nvar enablePerformanceLog = react.__my_react_shared__.enablePerformanceLog, enableDebugFiled = react.__my_react_shared__.enableDebugFiled;\nvar nextWorkCommon = function (fiber, children) {\n transformChildrenFiber(fiber, children);\n};\nvar nextWorkNormal = function (fiber) {\n if (\"children\" in fiber.pendingProps ||\n \"children\" in fiber.memoizedProps ||\n \"dangerouslySetInnerHTML\" in fiber.pendingProps ||\n \"dangerouslySetInnerHTML\" in fiber.memoizedProps) {\n var children = fiber.pendingProps.children;\n transformChildrenFiber(fiber, children);\n }\n};\nvar nextWorkClassComponent = function (fiber) {\n if (!fiber.instance) {\n var children = classComponentMount(fiber);\n nextWorkCommon(fiber, children);\n }\n else {\n var _a = classComponentUpdate(fiber), updated = _a.updated, children = _a.children;\n if (updated)\n nextWorkCommon(fiber, children);\n }\n};\nvar nextWorkFunctionComponent = function (fiber) {\n var _a;\n currentHookTreeNode.current = (_a = fiber.hookList) === null || _a === void 0 ? void 0 : _a.head;\n currentHookNodeIndex$1.current = 0;\n currentComponentFiber$1.current = fiber;\n var typedElementType = fiber.elementType;\n var children = null;\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__forwardRef__)) {\n var typedElementTypeWithRef_1 = typedElementType;\n children = safeCallWithFiber({ fiber: fiber, action: function () { return typedElementTypeWithRef_1(fiber.pendingProps, fiber.ref); } });\n }\n else {\n children = safeCallWithFiber({ fiber: fiber, action: function () { return typedElementType(fiber.pendingProps); } });\n }\n currentComponentFiber$1.current = null;\n currentHookNodeIndex$1.current = 0;\n currentHookTreeNode.current = null;\n nextWorkCommon(fiber, children);\n};\nvar nextWorkComponent = function (fiber) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__function__)) {\n currentComponentFiber$1.current = fiber;\n nextWorkFunctionComponent(fiber);\n currentComponentFiber$1.current = null;\n }\n else {\n currentComponentFiber$1.current = fiber;\n nextWorkClassComponent(fiber);\n currentComponentFiber$1.current = null;\n }\n};\nvar nextWorkLazy = function (fiber) {\n var renderDispatch = currentRenderDispatch.current;\n var children = renderDispatch.resolveLazyElement(fiber);\n nextWorkCommon(fiber, children);\n};\nvar nextWorkConsumer = function (fiber) {\n var renderDispatch = currentRenderDispatch.current;\n var typedElementType = fiber.elementType;\n var isUpdate = !!fiber.instance;\n fiber.instance = fiber.instance || new typedElementType.Internal();\n !isUpdate && initInstance(fiber.instance);\n setOwnerForInstance(fiber.instance, fiber);\n var Context = typedElementType.Context;\n currentComponentFiber$1.current = fiber;\n var contextFiber = getInstanceContextFiber(fiber.instance);\n var finalContext = null;\n if (!contextFiber || myreactSharedExports.include(contextFiber.state, myreactSharedExports.STATE_TYPE.__unmount__)) {\n var providerFiber = renderDispatch.resolveContextFiber(fiber, Context);\n var context = renderDispatch.resolveContextValue(providerFiber, Context);\n finalContext = context;\n setContextForInstance(fiber.instance, providerFiber);\n }\n else {\n var context = renderDispatch.resolveContextValue(contextFiber, Context);\n setContextForInstance(fiber.instance, contextFiber);\n finalContext = context;\n }\n var typedChildren = fiber.pendingProps.children;\n var children = typedChildren(finalContext);\n currentComponentFiber$1.current = null;\n nextWorkCommon(fiber, children);\n};\nvar runtimeNextWork = function (fiber) {\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__ | exports.NODE_TYPE.__function__))\n return nextWorkComponent(fiber);\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__lazy__))\n return nextWorkLazy(fiber);\n if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__consumer__))\n return nextWorkConsumer(fiber);\n nextWorkNormal(fiber);\n};\nvar runtimeNextWorkDev = function (fiber) {\n var renderDispatch = currentRenderDispatch.current;\n setRefreshTypeMap(fiber);\n var start = Date.now();\n var res = runtimeNextWork(fiber);\n var end = Date.now();\n var renderTime = end - start;\n var hasPerformanceWarn = renderTime > renderDispatch.performanceLogTimeLimit;\n if (enablePerformanceLog.current && hasPerformanceWarn) {\n onceWarnWithKeyAndFiber(fiber, \"performance\", \"[@my-react/react] render current component take a lot of time, there have a performance warning\");\n }\n if (hasPerformanceWarn) {\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.performanceWarn) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(fiber); }); } });\n }\n var typedFiber = fiber;\n var timeNow = end;\n if (enableDebugFiled.current) {\n if (typedFiber.state === myreactSharedExports.STATE_TYPE.__create__) {\n typedFiber._debugRenderState = {\n mountTimeStep: timeNow,\n timeForRender: renderTime,\n maxTimeForRender: renderTime,\n };\n typedFiber._debugIsMount = true;\n }\n else {\n var prevRenderState = Object.assign({}, typedFiber._debugRenderState);\n var prevRenderTime = prevRenderState.updateTimeStep || prevRenderState.mountTimeStep;\n typedFiber._debugRenderState = {\n renderCount: (prevRenderState.renderCount || 0) + 1,\n mountTimeStep: prevRenderState.mountTimeStep,\n updateTimeStep: timeNow,\n trigger: currentTriggerFiber.current,\n timeForRender: renderTime,\n timeForUpdate: timeNow - prevRenderTime,\n maxTimeForRender: Math.max(prevRenderState.maxTimeForRender, renderTime),\n };\n }\n }\n return res;\n};\n\nreact.__my_react_shared__.enableDebugFiled;\nvar emptyObj = {};\nvar defaultGenerateContextMap = function (fiber, map) {\n var _a;\n var parent = fiber.parent;\n if (parent) {\n var parentMap = map.get(parent) || emptyObj;\n if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__provider__)) {\n var typedElementType = parent.elementType;\n var contextObj = typedElementType[\"Context\"];\n var contextId = contextObj[\"contextId\"];\n parentMap = Object.assign({}, parentMap, (_a = {}, _a[contextId] = parent, _a));\n }\n if (parentMap !== emptyObj) {\n map.set(fiber, parentMap);\n }\n }\n};\nvar defaultGetContextValue = function (fiber, ContextObject) {\n if (fiber) {\n return fiber.pendingProps[\"value\"];\n }\n else {\n return ContextObject === null || ContextObject === void 0 ? void 0 : ContextObject.Provider[\"value\"];\n }\n};\nvar defaultGetContextFiber = function (fiber, renderDispatch, ContextObject) {\n if (ContextObject) {\n var contextMap = renderDispatch.runtimeMap.contextMap.get(fiber);\n return (contextMap === null || contextMap === void 0 ? void 0 : contextMap[ContextObject.contextId]) || null;\n }\n else {\n return null;\n }\n};\nvar defaultGetContextFiber_New = function (fiber, renderDispatch, ContextObject) {\n if ((fiber === null || fiber === void 0 ? void 0 : fiber.parent) && ContextObject) {\n var parent_1 = fiber.parent;\n while (parent_1) {\n if (myreactSharedExports.include(parent_1.type, exports.NODE_TYPE.__provider__)) {\n var typedElementType = parent_1.elementType;\n var contextObj = typedElementType[\"Context\"];\n if (contextObj === ContextObject) {\n return parent_1;\n }\n }\n parent_1 = parent_1.parent;\n }\n }\n else {\n return null;\n }\n};\nvar prepareUpdateAllDependence = function (fiber, beforeValue, afterValue) {\n var consumerList = new Set((fiber === null || fiber === void 0 ? void 0 : fiber.dependence) || []);\n consumerList.forEach(function (i) {\n var owner = getInstanceOwnerFiber(i);\n if (owner && myreactSharedExports.exclude(owner.state, myreactSharedExports.STATE_TYPE.__unmount__)) {\n var typedFiber = owner;\n typedFiber.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;\n }\n });\n};\nvar prepareUpdateAllDependenceFromRoot = function (renderDispatch, fiber, beforeValue, afterValue) {\n var consumerList = new Set((fiber === null || fiber === void 0 ? void 0 : fiber.dependence) || []);\n var now = Date.now();\n ({\n type: myreactSharedExports.UpdateQueueType.context,\n trigger: fiber,\n payLoad: afterValue,\n isSync: true,\n isForce: true,\n _debugBaseValue: beforeValue,\n _debugBeforeValue: beforeValue,\n _debugAfterValue: afterValue,\n _debugCreateTime: now,\n _debugRunTime: now,\n _debugType: myreactSharedExports.UpdateQueueType[myreactSharedExports.UpdateQueueType.context],\n _debugUpdateState: {\n needUpdate: true,\n isSync: true,\n isForce: true,\n callbacks: [],\n },\n });\n consumerList.forEach(function (i) {\n var owner = getInstanceOwnerFiber(i);\n if (owner && myreactSharedExports.exclude(owner.state, myreactSharedExports.STATE_TYPE.__unmount__)) {\n var typedFiber = owner;\n typedFiber.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;\n }\n });\n var root = renderDispatch.rootFiber;\n renderDispatch.pendingUpdateFiberArray.clear();\n root._update(myreactSharedExports.STATE_TYPE.__skippedSync__);\n};\nvar prepareUpdateAllDependenceFromProvider = function (fiber, beforeValue, afterValue) {\n var consumerList = new Set((fiber === null || fiber === void 0 ? void 0 : fiber.dependence) || []);\n var now = Date.now();\n ({\n type: myreactSharedExports.UpdateQueueType.context,\n trigger: fiber,\n payLoad: afterValue,\n isSync: true,\n isForce: true,\n _debugBaseValue: beforeValue,\n _debugBeforeValue: beforeValue,\n _debugAfterValue: afterValue,\n _debugCreateTime: now,\n _debugRunTime: now,\n _debugType: myreactSharedExports.UpdateQueueType[myreactSharedExports.UpdateQueueType.context],\n _debugUpdateState: {\n needUpdate: true,\n isSync: true,\n isForce: true,\n callbacks: [],\n },\n });\n consumerList.forEach(function (i) {\n var owner = getInstanceOwnerFiber(i);\n if (owner && myreactSharedExports.exclude(owner.state, myreactSharedExports.STATE_TYPE.__unmount__)) {\n var typedFiber_1 = owner;\n typedFiber_1.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;\n }\n });\n var typedFiber = fiber;\n typedFiber._update(myreactSharedExports.STATE_TYPE.__skippedSync__);\n};\n\nvar currentComponentFiber = react.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = react.__my_react_internal__.currentHookNodeIndex;\nvar resolveHookValue = function (hookNode) {\n if (hookNode) {\n switch (hookNode.type) {\n case myreactSharedExports.HOOK_TYPE.useState:\n case myreactSharedExports.HOOK_TYPE.useReducer:\n return [hookNode.result, hookNode._dispatch];\n case myreactSharedExports.HOOK_TYPE.useId:\n case myreactSharedExports.HOOK_TYPE.useRef:\n case myreactSharedExports.HOOK_TYPE.useMemo:\n case myreactSharedExports.HOOK_TYPE.useContext:\n case myreactSharedExports.HOOK_TYPE.useCallback:\n case myreactSharedExports.HOOK_TYPE.useTransition:\n case myreactSharedExports.HOOK_TYPE.useDeferredValue:\n case myreactSharedExports.HOOK_TYPE.useSyncExternalStore:\n return hookNode.result;\n case myreactSharedExports.HOOK_TYPE.useSignal:\n return [hookNode.result.getValue, hookNode.result.setValue];\n }\n }\n};\nvar processHookNode = function (_a) {\n var type = _a.type, reducer = _a.reducer, value = _a.value, deps = _a.deps;\n var fiber = currentComponentFiber.current;\n var renderDispatch = currentRenderDispatch.current;\n if (!fiber)\n throw new Error(\"[@my-react/react] can not use hook outside of component\");\n if (!renderDispatch)\n throw new Error(\"[@my-react/react] internal error, can not get 'renderDispatch' for current render\");\n fiber.hookList = fiber.hookList || new myreactSharedExports.ListTree();\n var currentHook = null;\n // initial\n if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__create__)) {\n currentHook = createHookNode({ type: type, reducer: reducer, value: value, deps: deps }, fiber);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookInitial) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(currentHook); }); } });\n }\n else {\n // update\n currentHook = updateHookNode({ type: type, reducer: reducer, value: value, deps: deps }, fiber, false);\n safeCallWithFiber({ fiber: fiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookUpdate) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(currentHook); }); } });\n }\n currentHookNodeIndex.current++;\n effectHookNode(fiber, currentHook);\n return resolveHookValue(currentHook);\n};\n\nvar currentRenderPlatform = react.__my_react_internal__.currentRenderPlatform;\nvar processLazy = function (_fiber) { return __awaiter(void 0, void 0, void 0, function () {\n var typedElementType, loadedPromise, loaded, render, e_1, renderPlatform;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!myreactSharedExports.include(_fiber.type, exports.NODE_TYPE.__lazy__)) return [3 /*break*/, 5];\n typedElementType = _fiber.elementType;\n if (typedElementType._loaded)\n return [2 /*return*/];\n _b.label = 1;\n case 1:\n _b.trys.push([1, 3, 4, 5]);\n loadedPromise = typedElementType.loader();\n return [4 /*yield*/, loadedPromise];\n case 2:\n loaded = _b.sent();\n render = typeof loaded === \"object\" && (typeof (loaded === null || loaded === void 0 ? void 0 : loaded.default) === \"function\" || typeof (loaded === null || loaded === void 0 ? void 0 : loaded.default) === \"object\") ? loaded.default : loaded;\n typedElementType.render = render;\n _fiber.state = myreactSharedExports.STATE_TYPE.__create__;\n typedElementType._loaded = true;\n return [3 /*break*/, 5];\n case 3:\n e_1 = _b.sent();\n renderPlatform = currentRenderPlatform.current;\n (_a = renderPlatform.dispatchError) === null || _a === void 0 ? void 0 : _a.call(renderPlatform, { fiber: _fiber, error: e_1 });\n return [3 /*break*/, 5];\n case 4:\n typedElementType._loading = false;\n return [7 /*endfinally*/];\n case 5: return [2 /*return*/];\n }\n });\n}); };\n\nreact.__my_react_internal__.currentComponentFiber; react.__my_react_internal__.currentRunningFiber;\nreact.__my_react_shared__.enableDebugFiled;\nvar processState = function (_params) {\n var _a;\n var ownerFiber = getInstanceOwnerFiber(_params.trigger);\n var renderDispatch = getCurrentDispatchFromFiber(ownerFiber);\n if (renderDispatch === null || renderDispatch === void 0 ? void 0 : renderDispatch.enableUpdate) {\n safeCallWithFiber({ fiber: ownerFiber, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberTrigger) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(ownerFiber, _params); }); } });\n }\n var isInitial = ((_a = getInstanceOwnerFiber(_params.trigger)) === null || _a === void 0 ? void 0 : _a.mode) === myreactSharedExports.MODE_TYPE.__initial__;\n if (_params.type === myreactSharedExports.UpdateQueueType.component) {\n var ownerFiber_1 = getInstanceOwnerFiber(_params.trigger);\n if (!ownerFiber_1 || myreactSharedExports.include(ownerFiber_1.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n // if current dispatch is a server || noop\n if (!renderDispatch.enableUpdate)\n return;\n ownerFiber_1.updateQueue = ownerFiber_1.updateQueue || new myreactSharedExports.ListTree();\n ownerFiber_1.updateQueue.push(_params);\n ownerFiber_1._prepare(isInitial && (renderDispatch === null || renderDispatch === void 0 ? void 0 : renderDispatch.isAppMounted));\n }\n else if (_params.type === myreactSharedExports.UpdateQueueType.hook) {\n var ownerFiber_2 = getInstanceOwnerFiber(_params.trigger);\n if (!ownerFiber_2 || myreactSharedExports.include(ownerFiber_2 === null || ownerFiber_2 === void 0 ? void 0 : ownerFiber_2.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n if (!renderDispatch.enableUpdate)\n return;\n var trigger_1 = _params.trigger;\n safeCallWithFiber({ fiber: ownerFiber_2, action: function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookTrigger) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(trigger_1, _params); }); } });\n ownerFiber_2.updateQueue = ownerFiber_2.updateQueue || new myreactSharedExports.ListTree();\n ownerFiber_2.updateQueue.push(_params);\n ownerFiber_2._prepare(isInitial && (renderDispatch === null || renderDispatch === void 0 ? void 0 : renderDispatch.isAppMounted));\n }\n else {\n var ownerFiber_3 = _params.trigger;\n if (!ownerFiber_3 || myreactSharedExports.include(ownerFiber_3.state, myreactSharedExports.STATE_TYPE.__unmount__))\n return;\n if (!renderDispatch.enableUpdate)\n return;\n ownerFiber_3.updateQueue = ownerFiber_3.updateQueue || new myreactSharedExports.ListTree();\n ownerFiber_3.updateQueue.push(_params);\n ownerFiber_3._prepare(isInitial && (renderDispatch === null || renderDispatch === void 0 ? void 0 : renderDispatch.isAppMounted));\n }\n};\n\nvar mountLoop = function (fiber, renderDispatch) {\n var pendingFiber = fiber;\n while (pendingFiber) {\n pendingFiber = performToNextFiberFromRoot(pendingFiber, renderDispatch);\n }\n};\n\nvar globalLoop = react.__my_react_internal__.globalLoop;\nreact.__my_react_shared__.enableScopeTreeLog;\nvar mount = function (fiber, renderDispatch) {\n globalLoop.current = true;\n mountLoop(fiber, renderDispatch);\n renderDispatch.reconcileCommit(fiber);\n var commitList = renderDispatch.pendingCommitFiberList;\n var changedList = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList === null || changedList === void 0 ? void 0 : changedList.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); }); });\n globalLoop.current = false;\n};\nvar mountAsync = function (fiber, renderDispatch) { return __awaiter(void 0, void 0, void 0, function () {\n var loopCount, beforeLength, node, afterLength, commitList, changedList;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n globalLoop.current = true;\n mountLoop(fiber, renderDispatch);\n loopCount = 0;\n _b.label = 1;\n case 1:\n if (!((_a = renderDispatch.pendingAsyncLoadFiberList) === null || _a === void 0 ? void 0 : _a.length)) return [3 /*break*/, 3];\n beforeLength = renderDispatch.pendingAsyncLoadFiberList.length;\n node = renderDispatch.pendingAsyncLoadFiberList.shift();\n return [4 /*yield*/, processLazy(node)];\n case 2:\n _b.sent();\n mountLoop(node, renderDispatch);\n afterLength = renderDispatch.pendingAsyncLoadFiberList.length;\n if (beforeLength === afterLength) {\n loopCount++;\n if (loopCount > 5) {\n throw new Error(\"lazy() load loop count is too much\");\n }\n }\n return [3 /*break*/, 1];\n case 3:\n renderDispatch.reconcileCommit(fiber);\n commitList = renderDispatch.pendingCommitFiberList;\n changedList = renderDispatch.pendingChangedFiberList;\n renderDispatch.resetUpdateFlowRuntimeFiber();\n renderDispatch.pendingCommitFiberList = null;\n renderDispatch.pendingChangedFiberList = null;\n (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);\n (changedList === null || changedList === void 0 ? void 0 : changedList.length) && safeCall(function () { var _a, _b; return (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); }); });\n globalLoop.current = false;\n return [2 /*return*/];\n }\n });\n}); };\n\nvar CustomRenderPlatform = /** @class */ (function () {\n function CustomRenderPlatform() {\n this.dispatchSet = new myreactSharedExports.UniqueArray();\n }\n CustomRenderPlatform.prototype.microTask = function (_task) {\n };\n CustomRenderPlatform.prototype.macroTask = function (_task) {\n };\n CustomRenderPlatform.prototype.yieldTask = function (_task) {\n return void 0;\n };\n CustomRenderPlatform.prototype.getFiberTree = function (_fiber) {\n return getFiberTree(_fiber);\n };\n CustomRenderPlatform.prototype.getHookTree = function (_treeHookNode, _errorType) {\n return getHookTree(_treeHookNode, _errorType);\n };\n CustomRenderPlatform.prototype.dispatchHook = function (_params) {\n return void 0;\n };\n CustomRenderPlatform.prototype.dispatchState = function (_params) {\n };\n CustomRenderPlatform.prototype.dispatchError = function (_params) {\n return void 0;\n };\n CustomRenderPlatform.prototype.dispatchPromise = function (_params) {\n return void 0;\n };\n return CustomRenderPlatform;\n}());\n\nvar WrapperByScope = function (children) {\n return react.createElement(myreactSharedExports.Scope, null, react.createElement(myreactSharedExports.Comment, { mode: \"s\" }), children, react.createElement(myreactSharedExports.Comment, { mode: \"e\" }));\n};\nvar isCommentElement = function (fiber) { return myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__comment__); };\nvar isCommentStartElement = function (fiber) {\n if (isCommentElement(fiber)) {\n return fiber.pendingProps[\"mode\"] === \"s\";\n }\n return false;\n};\nvar isCommentEndElement = function (fiber) {\n if (isCommentElement(fiber)) {\n return fiber.pendingProps[\"mode\"] === \"e\";\n }\n return false;\n};\n\nvar version = \"0.3.2\";\n\nexports.CustomRenderDispatch = CustomRenderDispatch;\nexports.CustomRenderPlatform = CustomRenderPlatform;\nexports.MyReactFiberNode = MyReactFiberNode;\nexports.MyReactHookNode = MyReactHookNode;\nexports.MyWeakMap = MyWeakMap;\nexports.WrapperByScope = WrapperByScope;\nexports.afterSyncFlush = afterSyncFlush;\nexports.afterSyncUpdate = afterSyncUpdate;\nexports.beforeSyncFlush = beforeSyncFlush;\nexports.beforeSyncUpdate = beforeSyncUpdate;\nexports.checkIsSameType = checkIsSameType;\nexports.classComponentActive = classComponentActive;\nexports.classComponentMount = classComponentMount;\nexports.classComponentUnmount = classComponentUnmount;\nexports.classComponentUpdate = classComponentUpdate;\nexports.clearContainer = clearContainer;\nexports.createFiberNode = createFiberNode;\nexports.createHookNode = createHookNode;\nexports.currentDevFiber = currentDevFiber;\nexports.currentRefreshHandler = currentRefreshHandler;\nexports.currentRenderDispatch = currentRenderDispatch;\nexports.currentTriggerFiber = currentTriggerFiber;\nexports.debugWithNode = debugWithNode;\nexports.defaultDispatchMount = defaultDispatchMount;\nexports.defaultDispatchMountLatest = defaultDispatchMountLatest;\nexports.defaultDispatchMountLegacy = defaultDispatchMountLegacy;\nexports.defaultDispatchUnmount = defaultDispatchUnmount;\nexports.defaultDispatchUpdate = defaultDispatchUpdate;\nexports.defaultGenerateContextMap = defaultGenerateContextMap;\nexports.defaultGenerateEffectMap = defaultGenerateEffectMap;\nexports.defaultGenerateErrorBoundariesMap = defaultGenerateErrorBoundariesMap;\nexports.defaultGenerateScopeMap = defaultGenerateScopeMap;\nexports.defaultGenerateStrict = defaultGenerateStrict;\nexports.defaultGenerateStrictMap = defaultGenerateStrictMap;\nexports.defaultGenerateSuspenseMap = defaultGenerateSuspenseMap;\nexports.defaultGenerateUnmountMap = defaultGenerateUnmountMap;\nexports.defaultGetContextFiber = defaultGetContextFiber;\nexports.defaultGetContextFiber_New = defaultGetContextFiber_New;\nexports.defaultGetContextValue = defaultGetContextValue;\nexports.defaultResolveErrorBoundaries = defaultResolveErrorBoundaries;\nexports.defaultResolveSuspense = defaultResolveSuspense;\nexports.deleteEffect = deleteEffect;\nexports.devError = devError;\nexports.devErrorWithFiber = devErrorWithFiber;\nexports.devWarn = devWarn;\nexports.devWarnWithFiber = devWarnWithFiber;\nexports.effect = effect;\nexports.effectHookNode = effectHookNode;\nexports.emptyProps = emptyProps;\nexports.enableFiberForLog = enableFiberForLog;\nexports.fiberToDispatchMap = fiberToDispatchMap;\nexports.generateFiberToMountList = generateFiberToMountList;\nexports.generateFiberToUnmountList = generateFiberToUnmountList;\nexports.getCurrentDispatchFromFiber = getCurrentDispatchFromFiber;\nexports.getCurrentDispatchFromType = getCurrentDispatchFromType;\nexports.getCurrentFibersFromType = getCurrentFibersFromType;\nexports.getCurrentTypeFromRefresh = getCurrentTypeFromRefresh;\nexports.getElementName = getElementName;\nexports.getFiberTree = getFiberTree;\nexports.getFiberTreeWithFiber = getFiberTreeWithFiber;\nexports.getHookTree = getHookTree;\nexports.getInstanceContextFiber = getInstanceContextFiber;\nexports.getInstanceEffectState = getInstanceEffectState;\nexports.getInstanceOwnerFiber = getInstanceOwnerFiber;\nexports.getPlainFiberName = getPlainFiberName;\nexports.getStack = getStack;\nexports.getTypeFromElement = getTypeFromElement;\nexports.getTypeFromElementNode = getTypeFromElementNode;\nexports.hmr = hmr;\nexports.hookListUnmount = hookListUnmount;\nexports.hookNodeUnmount = hookNodeUnmount;\nexports.initHMR = initHMR;\nexports.initInstance = initInstance;\nexports.initialFiberNode = initialFiberNode;\nexports.insertionEffect = insertionEffect;\nexports.instanceMap = instanceMap;\nexports.isCommentElement = isCommentElement;\nexports.isCommentEndElement = isCommentEndElement;\nexports.isCommentStartElement = isCommentStartElement;\nexports.isErrorBoundariesComponent = isErrorBoundariesComponent;\nexports.isErrorBoundariesInstance = isErrorBoundariesInstance;\nexports.layoutEffect = layoutEffect;\nexports.listenerMap = listenerMap;\nexports.mount = mount;\nexports.mountAsync = mountAsync;\nexports.mountLoop = mountLoop;\nexports.nextWorkClassComponent = nextWorkClassComponent;\nexports.nextWorkCommon = nextWorkCommon;\nexports.nextWorkComponent = nextWorkComponent;\nexports.nextWorkConsumer = nextWorkConsumer;\nexports.nextWorkFunctionComponent = nextWorkFunctionComponent;\nexports.nextWorkLazy = nextWorkLazy;\nexports.nextWorkNormal = nextWorkNormal;\nexports.onceErrorWithKey = onceErrorWithKey;\nexports.onceErrorWithKeyAndFiber = onceErrorWithKeyAndFiber;\nexports.onceWarnWithKey = onceWarnWithKey;\nexports.onceWarnWithKeyAndFiber = onceWarnWithKeyAndFiber;\nexports.originalError = originalError;\nexports.originalWarn = originalWarn;\nexports.performToNextFiberFromRoot = performToNextFiberFromRoot;\nexports.performToNextFiberFromTrigger = performToNextFiberFromTrigger;\nexports.prepareUpdateAllDependence = prepareUpdateAllDependence;\nexports.prepareUpdateAllDependenceFromProvider = prepareUpdateAllDependenceFromProvider;\nexports.prepareUpdateAllDependenceFromRoot = prepareUpdateAllDependenceFromRoot;\nexports.processClassComponentUpdateQueue = processClassComponentUpdateQueue;\nexports.processFunctionComponentUpdateQueue = processFunctionComponentUpdateQueue;\nexports.processHookNode = processHookNode;\nexports.processLazy = processLazy;\nexports.processLazyComponentUpdate = processLazyComponentUpdate;\nexports.processState = processState;\nexports.resetLogScope = resetLogScope;\nexports.runtimeNextWork = runtimeNextWork;\nexports.runtimeNextWorkDev = runtimeNextWorkDev;\nexports.safeCall = safeCall;\nexports.safeCallWithFiber = safeCallWithFiber;\nexports.safeCallWithSync = safeCallWithSync;\nexports.setContextForInstance = setContextForInstance;\nexports.setEffectForInstance = setEffectForInstance;\nexports.setLogScope = setLogScope;\nexports.setOwnerForInstance = setOwnerForInstance;\nexports.setRefreshHandler = setRefreshHandler;\nexports.setRefreshTypeMap = setRefreshTypeMap;\nexports.syncComponentStateToFiber = syncComponentStateToFiber;\nexports.syncFiberStateToComponent = syncFiberStateToComponent;\nexports.syncFlushComponentQueue = syncFlushComponentQueue;\nexports.transformChildrenFiber = transformChildrenFiber;\nexports.triggerError = triggerError;\nexports.triggerRevert = triggerRevert;\nexports.triggerUnmount = triggerUnmount;\nexports.triggerUpdate = triggerUpdate;\nexports.typeToFibersMap = typeToFibersMap;\nexports.unmountContainer = unmountContainer;\nexports.unmountFiber = unmountFiber;\nexports.unmountFiberNode = unmountFiberNode;\nexports.unmountInstance = unmountInstance;\nexports.unmountList = unmountList;\nexports.unmountPending = unmountPending;\nexports.updateConcurrentFromRoot = updateConcurrentFromRoot;\nexports.updateConcurrentFromTrigger = updateConcurrentFromTrigger;\nexports.updateFiberNode = updateFiberNode;\nexports.updateHookNode = updateHookNode;\nexports.updateLoopConcurrentFromRoot = updateLoopConcurrentFromRoot;\nexports.updateLoopConcurrentFromTrigger = updateLoopConcurrentFromTrigger;\nexports.updateLoopSyncFromRoot = updateLoopSyncFromRoot;\nexports.updateLoopSyncFromTrigger = updateLoopSyncFromTrigger;\nexports.updateSyncFromRoot = updateSyncFromRoot;\nexports.updateSyncFromTrigger = updateSyncFromTrigger;\nexports.version = version;\n//# sourceMappingURL=index.production.js.map\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n","'use strict';\n\nvar merge = function (src, rest) {\n return src | rest;\n};\nvar remove = function (src, rest) {\n if (src & rest) {\n return src ^ rest;\n }\n else {\n return src;\n }\n};\nvar include = function (src, rest) {\n return src & rest;\n};\nvar exclude = function (src, rest) {\n return !(src & rest);\n};\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nvar once = function (action) {\n var called = false;\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (called)\n return;\n called = true;\n if (typeof action === \"function\")\n action.call.apply(action, __spreadArray([null], args, false));\n };\n};\n\nvar TYPEKEY = \"$$typeof\";\nvar Element = Symbol.for(\"react.element\");\nvar Memo = Symbol.for(\"react.memo\");\nvar ForwardRef = Symbol.for(\"react.forward_ref\");\nvar Portal = Symbol.for(\"react.portal\");\nvar Fragment = Symbol.for(\"react.fragment\");\nvar Context = Symbol.for(\"react.context\");\nvar Provider = Symbol.for(\"react.provider\");\nvar Consumer = Symbol.for(\"react.consumer\");\nvar Lazy = Symbol.for(\"react.lazy\");\nvar Suspense = Symbol.for(\"react.suspense\");\nvar Strict = Symbol.for(\"react.strict_mode\");\n// TODO\nvar KeepLive = Symbol.for(\"react.keep_live\");\nvar Scope = Symbol.for(\"react.scope\");\nvar Comment = Symbol.for(\"react.comment\");\nvar Offscreen = Symbol.for(\"react.offscreen\");\nvar Profiler = Symbol.for(\"react.profiler\");\n\nfunction isObject(target) {\n return typeof target === \"object\" && target !== null;\n}\nfunction isFunction(target) {\n return typeof target === \"function\";\n}\nfunction isArray(target) {\n return Array.isArray(target);\n}\nfunction isSymbol(target) {\n return typeof target === \"symbol\";\n}\nfunction isString(target) {\n return typeof target === \"string\";\n}\nfunction isInteger(target) {\n return Number.isInteger(Number(target));\n}\nfunction isNumber(target) {\n return typeof target === \"number\";\n}\nfunction isCollection(target) {\n return target instanceof Map || target instanceof Set || target instanceof WeakMap || target instanceof WeakSet;\n}\nvar isPromise = function (val) {\n return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n};\n\nvar UniqueArray = /** @class */ (function () {\n function UniqueArray() {\n this.set = new Set();\n this.arr = new Array();\n this.length = 0;\n }\n UniqueArray.prototype.uniPop = function () {\n var v = this.arr.pop();\n this.set.delete(v);\n this.length--;\n return v;\n };\n UniqueArray.prototype.uniPush = function (v) {\n if (this.set.has(v))\n return 0;\n this.set.add(v);\n this.arr.push(v);\n this.length++;\n };\n UniqueArray.prototype.uniShift = function () {\n var v = this.arr.shift();\n this.set.delete(v);\n this.length--;\n return v;\n };\n UniqueArray.prototype.uniUnshift = function (v) {\n if (this.set.has(v))\n return 0;\n this.set.add(v);\n this.arr.unshift(v);\n this.length++;\n };\n UniqueArray.prototype.uniDelete = function (v) {\n if (this.set.has(v)) {\n this.set.delete(v);\n this.arr = this.arr.filter(function (i) { return i !== v; });\n this.length--;\n }\n };\n UniqueArray.prototype.clear = function () {\n this.length = 0;\n this.set.clear();\n this.arr.length = 0;\n };\n UniqueArray.prototype.getAll = function () {\n return this.arr;\n };\n return UniqueArray;\n}());\n\nexports.HOOK_TYPE = void 0;\n(function (HOOK_TYPE) {\n HOOK_TYPE[HOOK_TYPE[\"useId\"] = 0] = \"useId\";\n HOOK_TYPE[HOOK_TYPE[\"useRef\"] = 1] = \"useRef\";\n HOOK_TYPE[HOOK_TYPE[\"useMemo\"] = 2] = \"useMemo\";\n HOOK_TYPE[HOOK_TYPE[\"useState\"] = 3] = \"useState\";\n HOOK_TYPE[HOOK_TYPE[\"useSignal\"] = 4] = \"useSignal\";\n HOOK_TYPE[HOOK_TYPE[\"useEffect\"] = 5] = \"useEffect\";\n HOOK_TYPE[HOOK_TYPE[\"useContext\"] = 6] = \"useContext\";\n HOOK_TYPE[HOOK_TYPE[\"useReducer\"] = 7] = \"useReducer\";\n HOOK_TYPE[HOOK_TYPE[\"useCallback\"] = 8] = \"useCallback\";\n HOOK_TYPE[HOOK_TYPE[\"useTransition\"] = 9] = \"useTransition\";\n HOOK_TYPE[HOOK_TYPE[\"useDebugValue\"] = 10] = \"useDebugValue\";\n HOOK_TYPE[HOOK_TYPE[\"useLayoutEffect\"] = 11] = \"useLayoutEffect\";\n HOOK_TYPE[HOOK_TYPE[\"useDeferredValue\"] = 12] = \"useDeferredValue\";\n HOOK_TYPE[HOOK_TYPE[\"useInsertionEffect\"] = 13] = \"useInsertionEffect\";\n HOOK_TYPE[HOOK_TYPE[\"useImperativeHandle\"] = 14] = \"useImperativeHandle\";\n HOOK_TYPE[HOOK_TYPE[\"useSyncExternalStore\"] = 15] = \"useSyncExternalStore\";\n})(exports.HOOK_TYPE || (exports.HOOK_TYPE = {}));\n\nexports.UpdateQueueType = void 0;\n(function (UpdateQueueType) {\n UpdateQueueType[UpdateQueueType[\"hook\"] = 2] = \"hook\";\n UpdateQueueType[UpdateQueueType[\"component\"] = 1] = \"component\";\n UpdateQueueType[UpdateQueueType[\"lazy\"] = 3] = \"lazy\";\n UpdateQueueType[UpdateQueueType[\"context\"] = 4] = \"context\";\n})(exports.UpdateQueueType || (exports.UpdateQueueType = {}));\n\nexports.MODE_TYPE = void 0;\n(function (MODE_TYPE) {\n MODE_TYPE[MODE_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n MODE_TYPE[MODE_TYPE[\"__stable__\"] = 1] = \"__stable__\";\n})(exports.MODE_TYPE || (exports.MODE_TYPE = {}));\n\nexports.STATE_TYPE = void 0;\n(function (STATE_TYPE) {\n STATE_TYPE[STATE_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n STATE_TYPE[STATE_TYPE[\"__create__\"] = 1] = \"__create__\";\n STATE_TYPE[STATE_TYPE[\"__stable__\"] = 2] = \"__stable__\";\n STATE_TYPE[STATE_TYPE[\"__skippedConcurrent__\"] = 4] = \"__skippedConcurrent__\";\n STATE_TYPE[STATE_TYPE[\"__skippedSync__\"] = 8] = \"__skippedSync__\";\n STATE_TYPE[STATE_TYPE[\"__inherit__\"] = 16] = \"__inherit__\";\n STATE_TYPE[STATE_TYPE[\"__triggerConcurrent__\"] = 32] = \"__triggerConcurrent__\";\n STATE_TYPE[STATE_TYPE[\"__triggerConcurrentForce__\"] = 64] = \"__triggerConcurrentForce__\";\n STATE_TYPE[STATE_TYPE[\"__triggerSync__\"] = 128] = \"__triggerSync__\";\n STATE_TYPE[STATE_TYPE[\"__triggerSyncForce__\"] = 256] = \"__triggerSyncForce__\";\n STATE_TYPE[STATE_TYPE[\"__unmount__\"] = 512] = \"__unmount__\";\n STATE_TYPE[STATE_TYPE[\"__hmr__\"] = 1024] = \"__hmr__\";\n})(exports.STATE_TYPE || (exports.STATE_TYPE = {}));\n\nexports.PATCH_TYPE = void 0;\n(function (PATCH_TYPE) {\n PATCH_TYPE[PATCH_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n PATCH_TYPE[PATCH_TYPE[\"__create__\"] = 1] = \"__create__\";\n PATCH_TYPE[PATCH_TYPE[\"__update__\"] = 2] = \"__update__\";\n PATCH_TYPE[PATCH_TYPE[\"__append__\"] = 4] = \"__append__\";\n PATCH_TYPE[PATCH_TYPE[\"__position__\"] = 8] = \"__position__\";\n PATCH_TYPE[PATCH_TYPE[\"__effect__\"] = 16] = \"__effect__\";\n PATCH_TYPE[PATCH_TYPE[\"__layoutEffect__\"] = 32] = \"__layoutEffect__\";\n PATCH_TYPE[PATCH_TYPE[\"__insertionEffect__\"] = 64] = \"__insertionEffect__\";\n PATCH_TYPE[PATCH_TYPE[\"__unmount__\"] = 128] = \"__unmount__\";\n PATCH_TYPE[PATCH_TYPE[\"__ref__\"] = 256] = \"__ref__\";\n})(exports.PATCH_TYPE || (exports.PATCH_TYPE = {}));\n\nexports.Effect_TYPE = void 0;\n(function (Effect_TYPE) {\n Effect_TYPE[Effect_TYPE[\"__initial__\"] = 0] = \"__initial__\";\n Effect_TYPE[Effect_TYPE[\"__effect__\"] = 1] = \"__effect__\";\n Effect_TYPE[Effect_TYPE[\"__unmount__\"] = 2] = \"__unmount__\";\n})(exports.Effect_TYPE || (exports.Effect_TYPE = {}));\n\nvar compareVersion = function (version1, version2) {\n var compare = function (arr1, arr2) {\n if (arr1.length && arr2.length) {\n var v1 = arr1[0];\n var v2 = arr2[0];\n if (v1 > v2)\n return true;\n if (v2 > v1)\n return false;\n return compare(arr1.slice(1), arr2.slice(1));\n }\n if (arr1.length)\n return true;\n if (arr2.length)\n return false;\n return true;\n };\n return compare(version1.split(\".\").map(Number), version2.split(\".\").map(Number));\n};\n\nvar isNormalEquals = function (src, target, isSkipKey) {\n var isEquals = Object.is(src, target);\n if (isEquals)\n return true;\n var hasSkipKeyFunction = typeof isSkipKey === \"function\";\n if (typeof src === \"object\" && typeof target === \"object\" && src !== null && target !== null) {\n var srcKeys = Object.keys(src);\n var targetKeys = Object.keys(target);\n if (srcKeys.length !== targetKeys.length)\n return false;\n var res = true;\n if (hasSkipKeyFunction) {\n for (var _i = 0, srcKeys_1 = srcKeys; _i < srcKeys_1.length; _i++) {\n var key = srcKeys_1[_i];\n if (isSkipKey(key) && key in target) {\n continue;\n }\n else {\n res = res && Object.is(src[key], target[key]);\n }\n if (!res)\n return res;\n }\n }\n else {\n for (var _a = 0, srcKeys_2 = srcKeys; _a < srcKeys_2.length; _a++) {\n var key = srcKeys_2[_a];\n res = res && Object.is(src[key], target[key]);\n if (!res)\n return res;\n }\n }\n return res;\n }\n return false;\n};\nvar isArrayEquals = function (src, target) {\n var isEquals = Object.is(src, target);\n if (isEquals)\n return true;\n if (Array.isArray(src) && Array.isArray(target) && src.length === target.length) {\n var re = true;\n for (var key in src) {\n re = re && Object.is(src[key], target[key]);\n if (!re)\n return re;\n }\n return re;\n }\n return false;\n};\n\nvar ListTreeNode = /** @class */ (function () {\n function ListTreeNode(value) {\n this.prev = null;\n this.next = null;\n this.value = value;\n }\n return ListTreeNode;\n}());\nvar ListTree = /** @class */ (function () {\n function ListTree() {\n this.length = 0;\n var _stickyHead = null;\n Object.defineProperty(this, \"stickyHead\", {\n get: function () {\n return _stickyHead;\n },\n set: function (v) {\n _stickyHead = v;\n },\n });\n var _stickyFoot = null;\n Object.defineProperty(this, \"stickyFoot\", {\n get: function () {\n return _stickyFoot;\n },\n set: function (v) {\n _stickyFoot = v;\n },\n });\n var _head = null;\n Object.defineProperty(this, \"head\", {\n get: function () {\n return _head;\n },\n set: function (v) {\n _head = v;\n },\n });\n var _foot = null;\n Object.defineProperty(this, \"foot\", {\n get: function () {\n return _foot;\n },\n set: function (v) {\n _foot = v;\n },\n });\n }\n ListTree.prototype.push = function (node) {\n var listNode = new ListTreeNode(node);\n this.length++;\n if (!this.foot) {\n this.head = listNode;\n this.foot = listNode;\n }\n else {\n this.foot.next = listNode;\n listNode.prev = this.foot;\n this.foot = listNode;\n }\n };\n ListTree.prototype.pushToLast = function (node) {\n if (this.stickyFoot) {\n var node_1 = this.stickyFoot;\n this.push(node_1.value);\n this.stickyFoot = null;\n }\n var listNode = new ListTreeNode(node);\n this.stickyFoot = listNode;\n this.length++;\n };\n ListTree.prototype.pushToHead = function (node) {\n if (this.stickyHead) {\n var node_2 = this.stickyHead;\n this.unshift(node_2.value);\n this.stickyHead = null;\n }\n var listNode = new ListTreeNode(node);\n this.stickyHead = listNode;\n this.length++;\n };\n ListTree.prototype.pop = function () {\n var foot = this.stickyFoot || this.foot;\n if (foot) {\n this.delete(foot);\n return foot.value;\n }\n else {\n return null;\n }\n };\n ListTree.prototype.unshift = function (node) {\n var listNode = new ListTreeNode(node);\n this.length++;\n if (!this.head) {\n this.head = listNode;\n this.foot = listNode;\n }\n else {\n this.head.prev = listNode;\n listNode.next = this.head;\n this.head = listNode;\n }\n };\n ListTree.prototype.unshiftToHead = function (node) {\n if (this.stickyHead) {\n var node_3 = this.stickyHead;\n this.unshift(node_3.value);\n this.stickyHead = null;\n }\n var listNode = new ListTreeNode(node);\n this.stickyHead = listNode;\n };\n ListTree.prototype.unshiftToFoot = function (node) {\n if (this.stickyFoot) {\n var node_4 = this.stickyFoot;\n this.push(node_4.value);\n this.stickyFoot = null;\n }\n var listNode = new ListTreeNode(node);\n this.stickyFoot = listNode;\n };\n ListTree.prototype.shift = function () {\n var head = this.stickyHead || this.head;\n if (head) {\n this.delete(head);\n return head.value;\n }\n else {\n return null;\n }\n };\n ListTree.prototype.pickHead = function () {\n var _a, _b;\n return ((_a = this.stickyHead) === null || _a === void 0 ? void 0 : _a.value) || ((_b = this.head) === null || _b === void 0 ? void 0 : _b.value);\n };\n ListTree.prototype.pickFoot = function () {\n var _a, _b;\n return ((_a = this.stickyFoot) === null || _a === void 0 ? void 0 : _a.value) || ((_b = this.foot) === null || _b === void 0 ? void 0 : _b.value);\n };\n ListTree.prototype.listToFoot = function (action) {\n if (this.stickyHead) {\n action(this.stickyHead.value);\n }\n var node = this.head;\n while (node) {\n action(node.value);\n node = node.next;\n }\n if (this.stickyFoot) {\n action(this.stickyFoot.value);\n }\n };\n ListTree.prototype.listToHead = function (action) {\n if (this.stickyFoot) {\n action(this.stickyFoot.value);\n }\n var node = this.foot;\n while (node) {\n action(node.value);\n node = node.prev;\n }\n if (this.stickyHead) {\n action(this.stickyHead.value);\n }\n };\n ListTree.prototype.toArray = function () {\n var re = [];\n this.listToFoot(function (v) { return re.push(v); });\n return re;\n };\n ListTree.prototype.delete = function (node) {\n if (this.stickyHead === node) {\n this.stickyHead = null;\n this.length--;\n }\n else if (this.stickyFoot === node) {\n this.stickyFoot = null;\n this.length--;\n }\n else if (this.head === node) {\n var next = node.next;\n node.next = null;\n if (next) {\n this.head = next;\n next.prev = null;\n }\n else {\n this.head = null;\n this.foot = null;\n }\n this.length--;\n }\n else if (this.foot === node) {\n var prev = node.prev;\n node.prev = null;\n if (prev) {\n this.foot = prev;\n prev.next = null;\n }\n else {\n this.head = null;\n this.foot = null;\n }\n this.length--;\n }\n else if (this.hasNode(node)) {\n var prev = node.prev;\n var next = node.next;\n node.prev = null;\n node.next = null;\n prev.next = next;\n next.prev = prev;\n this.length--;\n }\n };\n ListTree.prototype.size = function () {\n return this.length;\n };\n ListTree.prototype.hasNode = function (node) {\n if (this.stickyHead && Object.is(this.stickyHead, node))\n return true;\n if (this.stickyFoot && Object.is(this.stickyFoot, node))\n return true;\n var listNode = this.head;\n while (listNode) {\n if (Object.is(listNode, node))\n return true;\n listNode = listNode.next;\n }\n return false;\n };\n ListTree.prototype.hasValue = function (node) {\n if (this.stickyHead && Object.is(this.stickyHead.value, node))\n return true;\n if (this.stickyFoot && Object.is(this.stickyFoot.value, node))\n return true;\n var listNode = this.head;\n while (listNode) {\n if (Object.is(listNode.value, node))\n return true;\n listNode = listNode.next;\n }\n return false;\n };\n ListTree.prototype.some = function (iterator) {\n var re = false;\n this.listToFoot(function (node) {\n re = re || iterator(node);\n });\n return re;\n };\n ListTree.prototype.every = function (iterator) {\n var re = true;\n this.listToFoot(function (node) {\n re = re && iterator(node);\n });\n return re;\n };\n ListTree.prototype.concat = function (list) {\n var newList = new ListTree();\n this.listToFoot(function (node) { return newList.push(node); });\n list.listToFoot(function (node) { return newList.push(node); });\n return newList;\n };\n ListTree.prototype.clone = function () {\n var newList = new ListTree();\n this.listToFoot(function (v) { return newList.push(v); });\n return newList;\n };\n ListTree.prototype.clear = function () {\n this.length = 0;\n this.head = null;\n this.foot = null;\n this.stickyHead = null;\n this.stickyFoot = null;\n };\n return ListTree;\n}());\n\nexports.Comment = Comment;\nexports.Consumer = Consumer;\nexports.Context = Context;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.KeepLive = KeepLive;\nexports.Lazy = Lazy;\nexports.ListTree = ListTree;\nexports.ListTreeNode = ListTreeNode;\nexports.Memo = Memo;\nexports.Offscreen = Offscreen;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.Provider = Provider;\nexports.Scope = Scope;\nexports.Strict = Strict;\nexports.Suspense = Suspense;\nexports.TYPEKEY = TYPEKEY;\nexports.UniqueArray = UniqueArray;\nexports.compareVersion = compareVersion;\nexports.exclude = exclude;\nexports.include = include;\nexports.isArray = isArray;\nexports.isArrayEquals = isArrayEquals;\nexports.isCollection = isCollection;\nexports.isFunction = isFunction;\nexports.isInteger = isInteger;\nexports.isNormalEquals = isNormalEquals;\nexports.isNumber = isNumber;\nexports.isObject = isObject;\nexports.isPromise = isPromise;\nexports.isString = isString;\nexports.isSymbol = isSymbol;\nexports.merge = merge;\nexports.once = once;\nexports.remove = remove;\n//# sourceMappingURL=index.production.js.map\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n",null,null,"\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n","\"use strict\";\n\nmodule.exports = require(\"./dist/cjs/index.production\");\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"\"use strict\";\n\nif (process.env.NODE_ENV === \"production\") {\n module.exports = require(\"./dist/cjs/index.production\");\n} else {\n module.exports = require(\"./dist/cjs/index.development\");\n}\n","\"use strict\";\n\nmodule.exports = require(\"@my-react/react-jsx\");",null,null,null,null,null,"export const CONTAINER_WIDTH = 1580;\n","// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const allRoutes = __STREAM__ ? require(\"./routers.stream\").allRoutes : require(\"./routers.loadable\").allRoutes;\n","import { memo, forwardRef } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { useEffectOnce, useIsMounted } from \"@client/hooks\";\n\nimport style from \"./index.module.scss\";\n\nlet div: HTMLDivElement | undefined;\n\nconst _Bar = forwardRef(function Bar(_, ref) {\n useEffectOnce(() => {\n if (!div) {\n div = document.createElement(\"div\");\n }\n div.id = \"__loading_bar__\";\n const content = document.body.querySelector(\"#__content__\") as HTMLDivElement;\n document.body.insertBefore(div, content);\n });\n\n const isMounted = useIsMounted();\n\n return isMounted ? createPortal(
, div as Element) : null;\n});\nexport const Bar = memo(_Bar);\n","// extracted by mini-css-extract-plugin\nexport default {\"loadingBar\":\"ITbAOd\"};","import { useLoading, useLoadingBar } from \"@client/hooks\";\n\nimport { Bar } from \"./LoadingBar\";\n\nimport type { LoadingBarWrapperType } from \"@client/types/common\";\n\nexport const LoadingBar: LoadingBarWrapperType = () => {\n const loading = useLoading((state) => state.loading);\n const { ref } = useLoadingBar({ loading });\n \n return ;\n};\n","import { createContext, useContext } from \"react\";\n\nimport { usePreLoad } from \"@client/hooks\";\nimport { preLoad } from \"@client/utils\";\n\nimport type { WrapperRouteType } from \"@client/types/common\";\n\nexport const LoadedLocationContext = createContext[\"loaded\"] | null>(null);\n\nexport const WrapperRoute: WrapperRouteType = ({ children, routes, LoadingBar }) => {\n const { loaded } = usePreLoad({ routes, preLoad });\n\n // for pure client render\n if (!loaded) return null;\n\n return (\n \n \n {children}\n \n );\n};\n\nexport const useLoadedLocation = () => useContext(LoadedLocationContext);\n","import { AnimatePresence, motion } from \"framer-motion\";\nimport { Fragment, Suspense } from \"react\";\nimport { useRoutes } from \"react-router\";\n\nimport { useIsMounted } from \"@client/hooks\";\nimport { getIsAnimateRouter } from \"@shared\";\n\nimport { allRoutes } from \"../router\";\n\nimport { useLoadedLocation } from \"./WrapperRoute\";\n\nexport const RenderMatch = () => {\n const loaded = useLoadedLocation();\n const all = useRoutes(allRoutes, loaded?.location);\n\n const isMounted = useIsMounted();\n\n return (\n <>\n {getIsAnimateRouter() ? (\n \n \n \n {all}\n \n \n \n ) : (\n {all}\n )}\n \n );\n};\n","import { ApolloProvider } from \"@apollo/client\";\nimport { useApollo } from \"@site/graphql\";\nimport { useLocation } from \"react-router\";\n\nimport { preLoadPropsKey } from \"@client/utils\";\nimport { useAppSelector } from \"@shared\";\n\nimport type { NormalizedCacheObject } from \"@apollo/client\";\nimport type { ReactNode } from \"react\";\n\nexport const WrapperApollo = ({ children }: { children: ReactNode }) => {\n const props = useAppSelector((state) => state.client.clientProps.data);\n\n const { pathname } = useLocation();\n\n const preLoadKey = preLoadPropsKey(pathname);\n\n const preLoadState = props[preLoadKey];\n\n const apolloState = preLoadState?.[\"$$__apollo__$$\"];\n\n const apolloClient = useApollo(apolloState as NormalizedCacheObject, true);\n\n return {children};\n};\n","import { Component } from \"react\";\n\nimport type { ErrorInfo, ReactNode, ReactElement } from \"react\";\n\nexport class WrapperErrorCatch extends Component & { children: ReactElement }, { error: string; stack: string; hasError: boolean }> {\n state = {\n stack: \"\",\n error: \"\",\n hasError: false,\n };\n\n static getDerivedStateFromError() {\n return { hasError: true };\n }\n\n componentDidCatch(error: Error, info: ErrorInfo) {\n this.setState({\n error: error.message,\n stack: info.componentStack,\n });\n }\n\n render(): ReactNode {\n if (this.state.hasError)\n return (\n
\n          

{this.state.error}

\n {this.state.stack}\n
\n );\n return this.props.children;\n }\n}\n","import { useEffect, useRef } from \"react\";\nimport { IntlProvider } from \"react-intl\";\n\nimport { defaultLang, useAppSelector } from \"@shared\";\n\nimport type { ReactNode } from \"react\";\n\nexport const WrapperLang = ({ children }: { children: ReactNode }) => {\n const htmlRef = useRef(null);\n\n const data = useAppSelector((state) => state.server.serverLang.data);\n const lang = useAppSelector((state) => state.client.clientLang.data);\n\n useEffect(() => {\n if (!htmlRef.current) {\n htmlRef.current = document.querySelector(\"html\");\n }\n if (htmlRef.current) {\n htmlRef.current.lang = lang;\n }\n }, [lang]);\n\n return (\n \n {children}\n \n );\n};\n","import { allRoutes } from \"@client/router\";\n\nimport { LoadingBar } from \"./LoadingBar\";\nimport { RenderMatch } from \"./RenderMatch\";\nimport { WrapperApollo } from \"./WrapperApollo\";\nimport { WrapperErrorCatch } from \"./WrapperCatch\";\nimport { WrapperLang } from \"./WrapperLang\";\nimport { WrapperRoute } from \"./WrapperRoute\";\n\nexport const App = () => {\n return (\n \n \n \n \n \n \n \n \n \n );\n};\n","import { ChakraProvider, /* cookieStorageManager */ cookieStorageManagerSSR } from \"@chakra-ui/react\";\nimport { CacheProvider } from \"@emotion/react\";\nimport { StrictMode } from \"react\";\nimport { HelmetProvider } from \"react-helmet-async\";\nimport { Provider } from \"react-redux\";\nimport { BrowserRouter as Router } from \"react-router-dom\";\n\nimport { createEmotionCache, theme } from \"../shared\";\n\nimport { App } from \"./common/App\";\n\nimport type { createUniversalStore } from \"../shared\";\n\nconst Root = ({ store }: { store: ReturnType }) => {\n // this component will only run once when the page mount, so it's ok to use server's cookie\n const cookieStore = cookieStorageManagerSSR(document.cookie);\n\n const emotionCache = createEmotionCache();\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport { Root };\n","/* eslint-disable react/no-deprecated */\n/* eslint-disable @typescript-eslint/no-var-requires */\nimport { hydrate } from \"react-dom\";\nimport { hydrateRoot, createRoot } from \"react-dom/client\";\n\nimport { createUniversalStore, safeData } from \"../shared\";\n\nimport \"@client/styles/global.scss\";\nimport \"react-grid-layout/css/styles.css\";\nimport \"react-resizable/css/styles.css\";\n\nimport { Root } from \"./app\";\n\nimport type { RootState } from \"../shared\";\n\nconst place = document.querySelector(\"#__content__\") as HTMLDivElement;\n\nconst preLoadEnvElement = document.querySelector(\"script#__preload_env__\");\n\nconst preLoadStateElement = document.querySelector(\"script#__preload_state__\");\n\nconst store = createUniversalStore({\n preloadedState: JSON.parse(preLoadStateElement?.innerHTML || \"{}\") as RootState,\n});\n\nwindow.__ENV__ = JSON.parse(preLoadEnvElement?.innerHTML || \"{}\");\n\nwindow.__PRELOAD_STORE_STATE__ = JSON.parse(preLoadStateElement?.innerHTML || \"{}\");\n\nsafeData(window.__ENV__);\n\nsafeData(window as unknown as Record, \"__ENV__\");\n\nsafeData(window.__PRELOAD_STORE_STATE__);\n\nsafeData(window as unknown as Record, \"__PRELOAD_STORE_STATE__\");\n\nconst loadableReady = __STREAM__\n ? (cb) => {\n cb?.();\n }\n : require(\"@loadable/component\").loadableReady;\n\nif (window.__ENV__.isPURE_CSR) {\n const { loadCurrentLang } = require(\"@shared\");\n loadCurrentLang(store.dispatch, window.__ENV__.LANG as \"en\" | \"ar\").then(() => loadableReady(() => createRoot(place).render()));\n} else {\n if (!window.__ENV__.isSSR || (window.__ENV__.isDEVELOPMENT && window.__ENV__.isMIDDLEWARE)) {\n loadableReady(() => createRoot(place).render());\n } else {\n loadableReady(() => (__STREAM__ || __REACT__ ? hydrateRoot(place, ) : hydrate(, place)));\n }\n}\n","import { createState, withActions } from \"reactivity-store\";\n\nexport const useLoading = createState(\n withActions(() => ({ loading: false }), {\n generateActions: (state) => ({\n setLoading: (s: boolean) => {\n state.loading = s;\n },\n }),\n }),\n {\n withNamespace: \"useLoading\",\n withDeepSelector: false,\n }\n);\n","import { createState } from \"reactivity-store\";\n\nexport const useFoot = createState(() => ({ state: true }), {\n withActions: (s: { state: boolean; }) => ({ enable: () => (s.state = true), disable: () => (s.state = false) }),\n withNamespace: \"useFoot\",\n});\n","import debounce from \"lodash/debounce\";\nimport { useMemo, useState } from \"react\";\n\nimport type { Dispatch, SetStateAction } from \"react\";\n\nexport const useDebouncedState = (initialState: T | (() => T), time = 200): [T, Dispatch>] => {\n const [state, setState] = useState(initialState);\n\n const setDebounceState = useMemo(() => debounce(setState, time), [time]);\n\n return [state, setDebounceState];\n};\n","import { useEffect } from \"react\";\n\nimport { useDebouncedState } from \"./useDebouncedState\";\n\nimport type { RefObject } from \"react\";\n\ntype DOMRectType = {\n top: number;\n bottom: number;\n left: number;\n right: number;\n width: number;\n height: number;\n x: number;\n y: number;\n};\n\nconst INITIAL_RECT: DOMRectType = {\n width: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n x: 0,\n y: 0,\n};\n\nexport function useDomSize({ ref, cssSelector }: { ref: RefObject | null; cssSelector?: string, deps?: any[] }): DOMRectType;\nexport function useDomSize({ ref, cssSelector }: { ref?: RefObject; cssSelector: string, deps?: any[] }): DOMRectType;\nexport function useDomSize({ ref, cssSelector, deps }: { ref?: RefObject | null; cssSelector?: string, deps?: any[] }) {\n const [rect, setRect] = useDebouncedState(INITIAL_RECT, 100);\n\n useEffect(() => {\n const domElement = ref ? ref.current : cssSelector ? document.querySelector(cssSelector) : null;\n if (domElement) {\n if (window.ResizeObserver) {\n const resizeObserver = new ResizeObserver(() => {\n setRect(domElement.getBoundingClientRect());\n });\n\n resizeObserver.observe(domElement);\n\n return () => resizeObserver.disconnect();\n } else {\n const handleResize = () => setRect(domElement.getBoundingClientRect());\n\n handleResize();\n\n window.addEventListener(\"resize\", handleResize, { passive: true });\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }\n }\n }, [ref, cssSelector, setRect, ...(deps || [])]);\n\n return rect;\n}\n","import { useReducer } from \"react\";\n\nexport const useUpdate = () => {\n const [, update] = useReducer((p) => p + 1, 0);\n\n return update;\n};\n","import { useEffect, useRef, useState } from \"react\";\nimport { useStore } from \"react-redux\";\nimport { useLocation, useNavigate } from \"react-router\";\nimport { useSearchParams } from \"react-router-dom\";\n\nimport { getIsP_CSR } from \"@shared\";\nimport { clientActionName } from \"@shared/store/action\";\nimport { setDataSuccess_client } from \"@shared/store/reducer\";\n\nimport { useLoading } from \"./useLoadingStore\";\n\nimport type { UsePreLoadType } from \"@client/types/hooks\";\nimport type { RootState } from \"@shared\";\n\n/* WrapperRoute */\nconst usePreLoad: UsePreLoadType = ({ routes, preLoad }) => {\n const isRedirect = useRef();\n const store = useStore();\n const location = useLocation();\n const navigate = useNavigate();\n const [query] = useSearchParams();\n const setLoading = useLoading((state) => state.setLoading);\n // for pure client render, need preload data\n const firstLoad = useRef(getIsP_CSR() ? true : false);\n const loadedPath = useRef(\"\");\n const loadingPath = useRef(\"\");\n const timer1 = useRef(null);\n const timer2 = useRef(null);\n const storeRef = useRef(store);\n\n // for pure client render, there are not exist loaded location\n const [loadedLocation, setLoadedLocation] = useState(getIsP_CSR() ? undefined : { location, query });\n\n loadingPath.current = `${location.pathname}?${query.toString()}`;\n\n loadedPath.current = loadedLocation ? `${loadedLocation.location.pathname}?${loadedLocation.query.toString()}` : \"\";\n\n storeRef.current = store;\n\n useEffect(() => {\n // skip first load if need\n if (!firstLoad.current) {\n const isRedirectCurrentPath = isRedirect.current && isRedirect.current === `${location.pathname}?${query.toString()}`;\n if (!isRedirectCurrentPath) {\n setLoading(false);\n }\n if (loadedPath.current !== `${location.pathname}?${query.toString()}`) {\n if (!isRedirectCurrentPath) {\n timer1.current && clearTimeout(timer1.current);\n timer1.current = null;\n timer2.current && clearTimeout(timer2.current);\n timer2.current = null;\n timer1.current = setTimeout(() => {\n setLoading(true);\n }, 200);\n }\n\n // 分离每次load逻辑 避免跳转错乱\n const currentLoad = (location: ReturnType, query: URLSearchParams): void => {\n preLoad(routes, location.pathname, query, storeRef.current).then((config) => {\n const currentLoadKey = `${location.pathname}?${query.toString()}`;\n if (currentLoadKey === loadingPath.current) {\n const { redirect, error, props } = config || {};\n if (redirect) {\n isRedirect.current = `${redirect.location.pathName}?${redirect.location.query?.toString()}`;\n } else {\n isRedirect.current = \"\";\n }\n if (error) {\n console.error(error);\n setLoading(false);\n } else if (redirect) {\n navigate(isRedirect.current);\n } else {\n timer2.current = setTimeout(() => {\n timer1.current && clearTimeout(timer1.current);\n timer1.current = null;\n if (loadingPath.current === currentLoadKey) {\n props && storeRef.current.dispatch(setDataSuccess_client({ name: clientActionName.clientProps, data: props }));\n setLoading(false);\n setLoadedLocation({ location, query });\n }\n }, 50);\n }\n }\n });\n };\n\n currentLoad(location, query);\n }\n } else {\n firstLoad.current = false;\n }\n }, [location, preLoad, routes, navigate, query, setLoading]);\n\n return { loaded: loadedLocation };\n};\n\nexport { usePreLoad };\n","const applyRootStyles = (rootId: string, p: number) => {\n const root = document.querySelector(`#${rootId}`) as HTMLDivElement;\n\n if (root) {\n const h = window.innerHeight;\n const s = (h - p) / h;\n root.style.overflow = \"hidden\";\n root.style.willChange = \"transform\";\n root.style.transition = \"transform 200ms linear\";\n root.style.transform = `translateY(calc(env(safe-area-inset-top) + ${p / 2}px)) scale(${s})`;\n root.style.filter = \"blur(0.8px)\";\n }\n};\n\nconst cleanupRootStyles = (rootId: string) => {\n const root = document.getElementById(rootId) as HTMLDivElement;\n\n function onTransitionEnd() {\n root.style.removeProperty(\"overflow\");\n root.style.removeProperty(\"will-change\");\n root.style.removeProperty(\"transition\");\n }\n\n if (root) {\n // Start animating back\n root.style.removeProperty(\"transform\");\n root.style.removeProperty(\"filter\");\n root.addEventListener(\"transitionend\", onTransitionEnd, { once: true });\n }\n};\n\nexport const applyOverlaysStyles = (ids: string[]) => {\n ids.reverse().forEach((id, index) => applyRootStyles(id, 18 + index * 2));\n};\n\nexport const cleanupOverlaysStyles = (ids: string[]) => {\n ids.forEach(cleanupRootStyles);\n};\n","import findLast from \"lodash/findLast\";\nimport { createContext, useCallback, useContext, useRef, useState } from \"react\";\n\nimport { delay } from \"@client/utils\";\nimport { applyOverlaysStyles, cleanupOverlaysStyles } from \"@client/utils/dom\";\n\nimport { useUpdate } from \"./useUpdate\";\n\nimport type React from \"react\";\n\nconst ROOT_BODY = \"__content__\";\n\nconst OVERLAY_TIMER = \"__overlay_back\";\n\nexport interface OverlayProps {\n id: string;\n key: string;\n head?: React.ReactNode;\n body: JSX.Element;\n foot?: React.ReactNode;\n height?: number;\n isFirst?: boolean;\n className?: string;\n showState?: boolean;\n applyOverlay?: (id: string, isOpen?: boolean) => void;\n closeHandler?: () => void;\n closeComplete?: () => void;\n}\n\ninterface UseOverlayOpenType {\n (props: Omit): void;\n}\n\nlet count = 0;\n\nexport const OverlayOpenContext = createContext(() => void 0);\n\nexport const OverlayCloseContext = createContext<({ modalId, closeAll }?: { modalId?: string; closeAll?: boolean }) => void>(() => void 0);\n\nexport const OverlayArrayContext = createContext<{\n desktop: Array;\n mobile: Array;\n}>({ desktop: [], mobile: [] });\n\nexport const useOverlaysProps = () => {\n const [overlays, setOverlays] = useState([]);\n const overlaysRef = useRef(overlays);\n const forceUpdate = useUpdate();\n overlaysRef.current = overlays;\n const applyOverlayStyle = useCallback((id: string, isOpen) => {\n delay(\n 0,\n () => {\n const newAllOverlays = overlaysRef.current;\n const stillShow = newAllOverlays.filter((n) => {\n if (isOpen) {\n return n.showState || n.id === id;\n } else {\n return n.showState && n.id !== id;\n }\n });\n if (stillShow.length) {\n const allIds = stillShow.map((n) => n.id);\n const needReApplyIds = allIds.slice(0, -1);\n const needClearId = allIds[allIds.length - 1];\n applyOverlaysStyles([ROOT_BODY, ...needReApplyIds]);\n cleanupOverlaysStyles([needClearId]);\n } else {\n cleanupOverlaysStyles([ROOT_BODY]);\n }\n },\n OVERLAY_TIMER\n );\n }, []);\n const open = useCallback(\n (props: Omit) => {\n const overlayProps = props as OverlayProps;\n const allOverlay = overlaysRef.current;\n const lastOpen = findLast(allOverlay, (n) => n.showState);\n overlayProps.key = `__overlay_${count++}`;\n overlayProps.id = `__overlay_${count++}`;\n overlayProps.height = lastOpen ? lastOpen.height - 6 : 92;\n overlayProps.isFirst = lastOpen ? false : true;\n overlayProps.showState = true;\n const closeHandler = overlayProps.closeHandler;\n const closeComplete = overlayProps.closeComplete;\n overlayProps.closeHandler = () => {\n overlayProps.showState = false;\n closeHandler && closeHandler();\n forceUpdate();\n };\n overlayProps.closeComplete = () => {\n closeComplete && closeComplete();\n setOverlays((last) => {\n const newAllOverlays = last.filter((n) => n !== overlayProps);\n if (newAllOverlays.length) {\n newAllOverlays.reduce((p, c) => {\n if (p.showState) {\n c.isFirst = false;\n return c;\n } else if (c.showState) {\n c.isFirst = true;\n return c;\n }\n });\n }\n return newAllOverlays;\n });\n };\n overlayProps.applyOverlay = applyOverlayStyle;\n setOverlays((last) => {\n const newAllOverlays = last.filter((n) => n.showState);\n return [...newAllOverlays, overlayProps];\n });\n },\n [forceUpdate, applyOverlayStyle]\n );\n const close = useCallback((props?: { modalId?: string; closeAll?: boolean }) => {\n const allOverlay = overlaysRef.current;\n const { modalId, closeAll } = props || {};\n if (modalId !== undefined) {\n const currentOverlay = allOverlay.find((n) => n.id === modalId);\n currentOverlay?.closeHandler();\n } else if (closeAll) {\n allOverlay.filter((n) => n.showState).forEach((n) => n?.closeHandler());\n } else {\n const currentTopOverlay = findLast(allOverlay, (n) => n.showState);\n currentTopOverlay?.closeHandler();\n }\n }, []);\n return { overlays, open, close };\n};\n\nexport const useOverlaysOpen = () => useContext(OverlayOpenContext);\n\nexport const useOverlaysClose = () => useContext(OverlayCloseContext);\n\nexport const useOverlayArray = () => useContext(OverlayArrayContext);\n","import { useBreakpointValue } from \"@chakra-ui/react\";\n\nexport const useIsMobile = () => {\n return useBreakpointValue({ base: true, lg: false });\n};\n","import { useState, useEffect } from \"react\";\n\nexport const useIsMounted = () => {\n const [mounted, setMounted] = useState(false);\n useEffect(() => {\n setMounted(true);\n }, []);\n\n return mounted;\n};\n","import { useEffect, useRef } from \"react\";\n\nimport { cancel, delay } from \"../utils\";\n\ntype LoadingBarProps = {\n height?: number;\n present?: number;\n loading?: boolean;\n};\n\nconst useLoadingBar = (props: LoadingBarProps = {}) => {\n const { height = 2.5, present = 0, loading } = props;\n\n const ref = useRef(null);\n\n const state = useRef({ present, height });\n\n useEffect(() => {\n if (!loading) {\n state.current.height = height;\n state.current.present = present;\n }\n }, [loading, height, present]);\n\n useEffect(() => {\n if (ref.current) {\n const ele = ref.current;\n if (loading) {\n let count = 2;\n let id: number;\n const start = (): void => {\n if (count > 0.33) {\n count -= 0.04;\n }\n let next = (state.current.present || 0) + count;\n next = next < 99.5 ? next : 99.5;\n ele.style.cssText =\n `height: ${state.current.height}px;` + `transform: scale(${next / 100}, 1);` + `filter: drop-shadow(2px 2px 2px rgba(200, 200, 200, .4))`;\n state.current.present = next;\n id = requestAnimationFrame(start);\n };\n id = requestAnimationFrame(start);\n return () => cancelAnimationFrame(id);\n } else {\n delay(40, () => (ele.style.transform = \"scale(1)\"), \"loadingBar\").then(() => delay(80, () => (ele.style.height = \"0px\"), \"loadingBar\"));\n return () => cancel(\"loadingBar\");\n }\n }\n }, [loading]);\n\n return { ref };\n};\n\nexport { useLoadingBar };\n","import { useEffect } from \"react\";\n\nexport const useEffectOnce = (fn: () => unknown) => {\n useEffect(() => {\n fn();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n};\n","import { isBrowser } from \"framer-motion\";\nimport { useEffect } from \"react\";\n\nimport { useDebouncedState } from \"./useDebouncedState\";\n\nexport const useWindowSize = () => {\n const [state, setState] = useDebouncedState({\n height: isBrowser ? window.innerHeight : 0,\n width: isBrowser ? window.innerHeight : 0,\n });\n\n useEffect(() => {\n const resize = () => setState({ height: window.innerHeight, width: window.innerWidth });\n\n resize();\n\n window.addEventListener(\"resize\", resize, { passive: true });\n\n return window.removeEventListener(\"reset\", resize);\n }, [setState]);\n\n return state;\n};\n","import { useEffect } from \"react\";\nimport { createStore, ref } from \"reactivity-store\";\n\nconst useGlobalLockStore = createStore(() => {\n const count = ref(0);\n const lock = () => count.value++;\n const unlock = (): void => (count.value--, void 0);\n\n return { count, lock, unlock };\n});\n\nexport const useLockBodyScroll = (isLock?: boolean) => {\n const { lock, unlock } = useGlobalLockStore((state) => ({ lock: state.lock, unlock: state.unlock }));\n useEffect(() => {\n if (isLock) {\n lock();\n return unlock;\n }\n }, [isLock, lock, unlock]);\n};\n\nexport const useLockBodyCount = () => useGlobalLockStore((state) => state.count);\n","import { useAppSelector } from \"@shared\";\n\nimport { preLoadPropsKey } from \"../utils\";\n\nexport const useGetInitialProps = (pagePath: string) => {\n const routerData = useAppSelector((state) => state.client.clientProps.data);\n\n const propsKey = preLoadPropsKey(pagePath);\n\n return routerData[propsKey];\n};\n","import { useMemo } from \"react\";\nimport { createState } from \"reactivity-store\";\n\nimport type { Layout, Layouts } from \"react-grid-layout\";\n\nexport const BLOG_GRID_HEIGHT = 10;\n\nexport const useListLayoutStore = createState(() => ({ data: {} as Layouts }), {\n withActions: (s: {\n data: Layouts;\n }): {\n updateLayout: (newLayout: Layouts) => void;\n mergeLayout: (newLayout: Layouts) => void;\n } => ({\n updateLayout: (newLayout: Layouts) => {\n s.data = newLayout;\n },\n mergeLayout: (newLayout: Layouts) => {\n const oldData = s.data;\n const obj = {};\n Object.keys(newLayout).forEach((key) => {\n obj[key] = [];\n const oldValue = oldData[key];\n const newValue = newLayout[key];\n newValue.forEach((item) => {\n const lastItem = oldValue?.find((_i) => _i.i === item.i);\n if (lastItem) {\n obj[key].push(lastItem);\n } else {\n obj[key].push(item);\n }\n });\n });\n s.data = obj;\n },\n }),\n withNamespace: \"useListLayoutStore\",\n withDeepSelector: false\n});\n\nconst _generateFunction =\n (width: number) =>\n (index: number, id: string, dataLength: number): Layout => {\n const i = id + index;\n const h = BLOG_GRID_HEIGHT + dataLength;\n const layout = {\n i,\n x: Math.floor(index % width),\n y: Math.floor(index / width) * h,\n w: 1,\n maxW: width,\n h: h,\n minH: BLOG_GRID_HEIGHT,\n };\n return layout;\n };\n\nconst xsGenerate = _generateFunction(1);\nconst smGenerate = _generateFunction(2);\nconst mdGenerate = _generateFunction(3);\nconst lgGenerate = _generateFunction(4);\n\nexport const useGetResponseListLayout = (items: { id: string; bodyText: string }[]) => {\n return useMemo(() => {\n const xs = items.map(({ id }, i) => xsGenerate(i, id, 4));\n const sm = items.map(({ id }, i) => smGenerate(i, id, 6));\n const md = items.map(({ id }, i) => mdGenerate(i, id, 10));\n const lg = items.map(({ id }, i) => lgGenerate(i, id, 14));\n return {\n lg,\n md,\n sm,\n xs,\n xxs: xs,\n };\n }, [items]);\n};\n","import { memo } from \"react\";\n\nimport { useGetInitialProps } from \"../hooks\";\n\nimport type { ComponentType } from \"react\";\n\nexport const AutoInjectProps = (Component: ComponentType, path = \"/\") => {\n const MemoComponent = memo(Component);\n\n const RouterComponentWithProps = () => {\n const props = useGetInitialProps(path);\n\n return ;\n };\n\n return RouterComponentWithProps;\n};\n","import dayjs from \"dayjs\";\nimport { createStoreWithComponent, onMounted, onUnmounted, ref } from \"reactivity-store\";\n\nexport const Time = createStoreWithComponent({\n setup: () => {\n const time = ref(dayjs().format(\"YYYY-MM-DD HH:mm:ss\"));\n\n const isMount = ref(false);\n\n let id = null;\n\n onMounted(() => {\n id = setInterval(() => {\n time.value = dayjs().format(\"YYYY-MM-DD HH:mm:ss\");\n }, 1000);\n });\n\n onMounted(() => {\n isMount.value = true;\n });\n\n onUnmounted(() => {\n clearInterval(id);\n });\n\n return { time, isMount };\n },\n});\n","import { Text, Icon, Link, Flex, Box } from \"@chakra-ui/react\";\nimport dayjs from \"dayjs\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { memo } from \"react\";\nimport { AiFillHeart } from \"react-icons/ai\";\n\n// import { BLOG_SOURCE } from \"@client/config/source\";\nimport { useFoot } from \"@client/hooks\";\nimport { Time } from \"@client/store\";\n\n// import { BLOG_SOURCE } from \"@app/config/source\";\n\nconst variants = {\n initial: {\n opacity: 0.2,\n translateY: -14,\n },\n in: {\n opacity: 1,\n translateY: 0,\n },\n out: {\n opacity: 0.2,\n translateY: 14,\n },\n};\n\nconst _Footer = () => {\n // const isMounted = useIsMounted();\n const state = useFoot((s) => s.state);\n\n if (!state) return null;\n\n return (\n \n \n \n \n Github\n \n \n \n @my-react\n \n \n \n \n \n {/* {isMounted ? new Date().getFullYear() : \"\"} */}\n \n \n );\n};\n\nexport const Footer = memo(_Footer);\n","import { Button, Icon, useColorMode } from \"@chakra-ui/react\";\nimport { MdOutlineDarkMode, MdOutlineLightMode } from \"react-icons/md\";\n\nexport const ColorMode = () => {\n const { colorMode, toggleColorMode } = useColorMode();\n return (\n \n );\n};\n","import { useColorModeValue } from \"@chakra-ui/react\";\nimport { css, Global } from \"@emotion/react\";\n\nexport const GlobalStyle = () => {\n // source from highlight.js\n const style = useColorModeValue(\n css`\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #84898e;\n color: #24292e;\n background: #ffffff;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n `,\n css`\n pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n }\n code.hljs {\n padding: 3px 5px;\n }\n /*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n \n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n */\n .hljs {\n --hljs-color: #c9d1d9;\n color: #c9d1d9;\n background: #282936;\n }\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #ff7b72;\n }\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #d2a8ff;\n }\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #79c0ff;\n }\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #a5d6ff;\n }\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #ffa657;\n }\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #8b949e;\n }\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #7ee787;\n }\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #c9d1d9;\n }\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #1f6feb;\n font-weight: bold;\n }\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #f2cc60;\n }\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #c9d1d9;\n font-style: italic;\n }\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #c9d1d9;\n font-weight: bold;\n }\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #aff5b4;\n background-color: #033a16;\n }\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #ffdcd7;\n background-color: #67060c;\n }\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n `\n );\n\n return ;\n};\n\nGlobalStyle.displayName = \"GlobalStyle\";\n","import { useQuery } from \"@apollo/client\";\nimport { Button, Container, Flex, HStack, Icon, Tag, TagLabel, TagLeftIcon, Text, Box } from \"@chakra-ui/react\";\nimport { GetStarCountDocument } from \"@site/graphql\";\nimport { motion, useScroll, useTransform } from \"framer-motion\";\nimport debounce from \"lodash/debounce\";\nimport { memo, useEffect, useRef, useState } from \"react\";\nimport { FaStar } from \"react-icons/fa\";\nimport { SiGithub } from \"react-icons/si\";\nimport { useIntl } from \"react-intl\";\nimport { useLocation, useNavigate } from \"react-router\";\n\nimport { CONTAINER_WIDTH } from \"@client/config/container\";\nimport { noBase } from \"@shared\";\n\nimport { ColorMode } from \"../ColorMode\";\n\nimport { GlobalStyle } from \"./GlobalStyle\";\n\nconst map = {\n \"/\": \"@my-react\",\n \"/blog\": \"blog\",\n \"/about\": \"config\",\n \"/tldraw\": \"tldraw\",\n};\n\nconst _Header = () => {\n const location = useLocation();\n\n const navigate = useNavigate();\n\n const ref = useRef(null);\n\n const [direction, setDirection] = useState<\"down\" | \"up\">(\"up\");\n\n const { formatMessage } = useIntl();\n\n const { scrollY } = useScroll();\n\n useEffect(() => {\n const onChange = debounce(() => {\n const current = scrollY.get();\n if (ref.current !== null) {\n if (current > ref.current) {\n setDirection(\"down\");\n } else {\n setDirection(\"up\");\n }\n }\n ref.current = current;\n }, 16);\n\n scrollY.onChange(onChange);\n\n return () => scrollY.clearListeners();\n }, [scrollY]);\n\n const opacity = useTransform(scrollY, [0, 0.2, 0.4], [0, 0.4, 1]);\n\n const id = (map[location.pathname.toLowerCase()] as string) || \"@my-react\";\n\n const { data, loading } = useQuery(GetStarCountDocument, {\n variables: {\n name: \"MyReact\",\n owner: \"MrWangJustToDo\",\n },\n });\n\n return (\n <>\n \n \n \n \n {formatMessage({ id })}\n \n \n \n \n \n {!__REACT__ && __DEVELOPMENT__ && (\n \n )}\n \n \n \n \n \n \n \n {formatMessage({ id })}\n \n \n \n \n \n \n \n \n \n \n {!__REACT__ && __DEVELOPMENT__ && (\n \n )}\n \n \n \n \n \n );\n};\n\nexport const Header = memo(_Header);\n","import { RemoveScroll } from \"react-remove-scroll\";\n\nimport { useLockBodyCount } from \"@client/hooks\";\n\nexport const LockBody = () => {\n const count = useLockBodyCount();\n\n return (\n 0} className=\"placeholder\" as=\"span\">\n <>\n \n );\n};\n","import { Box, Divider, Portal, useCallbackRef } from \"@chakra-ui/react\";\nimport { animate, motion, useMotionValue, useTransform } from \"framer-motion\";\nimport { useCallback, useRef } from \"react\";\nimport { RemoveScroll } from \"react-remove-scroll\";\n\nimport { useEffectOnce, useWindowSize } from \"@client/hooks\";\n\nimport type { OverlayProps } from \"@client/hooks\";\nimport type { PanInfo } from \"framer-motion\";\n\nexport const Mobile = (props: OverlayProps) => {\n const { id, head, body, foot, height, className, closeComplete, closeHandler, applyOverlay, isFirst } = props;\n\n const isOpenRef = useRef(false);\n\n const modalRef = useRef(null);\n\n const allowDragElement = useRef(null);\n\n const allowDrag = useRef(false);\n\n const { height: windowHeight } = useWindowSize();\n\n const indicatorRotation = useMotionValue(0);\n\n const indicator1Transform = useTransform(indicatorRotation, (r) => `translateX(2px) rotate(${r}deg)`);\n\n const indicator2Transform = useTransform(indicatorRotation, (r) => `translateX(-2px) rotate(${-1 * r}deg)`);\n\n const y = useMotionValue(0);\n\n const handleDragStart = useCallback((e: PointerEvent) => {\n if (e.target) {\n const typedElement = e.target as HTMLElement;\n if (typedElement.contains(allowDragElement.current)) {\n allowDrag.current = true;\n } else {\n allowDrag.current = false;\n }\n } else {\n allowDrag.current = false;\n }\n }, []);\n\n const handleDrag = useCallback((_, { delta }: PanInfo) => {\n if (!allowDrag.current) return;\n // Update drag indicator rotation based on drag velocity\n const velocity = y.getVelocity();\n if (velocity > 0) indicatorRotation.set(10);\n if (velocity < 0) indicatorRotation.set(-10);\n // Make sure user cannot drag beyond the top of the sheet\n y.set(Math.max(y.get() + delta.y, 0));\n }, []); // eslint-disable-line\n\n const handleDragEnd = useCallback(\n (_, { velocity }: PanInfo) => {\n if (velocity.y > 500) {\n closeHandler && closeHandler();\n } else {\n const modal = modalRef.current as HTMLDivElement;\n const contentHeight = modal?.getBoundingClientRect()?.height;\n if (y.get() / contentHeight > 0.6) {\n closeHandler && closeHandler();\n } else {\n animate(y, 0, {\n type: \"spring\",\n ...{ stiffness: 300, damping: 30, mass: 0.2 },\n });\n }\n indicatorRotation.set(0);\n }\n },\n [indicatorRotation] // eslint-disable-line\n );\n\n const animationComplete = useCallbackRef(() => {\n if (!isOpenRef.current) {\n isOpenRef.current = true;\n } else if (isOpenRef.current && closeComplete) {\n closeComplete();\n applyOverlay(id, false);\n }\n });\n\n useEffectOnce(() => {\n applyOverlay(id, true);\n return () => {\n applyOverlay(id, false);\n };\n });\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {head}\n \n \n {body}\n \n \n {foot}\n \n \n \n \n \n );\n};\n","import { Modal, ModalOverlay, ModalContent, ModalHeader, ModalFooter, ModalBody, ModalCloseButton, useBreakpointValue } from \"@chakra-ui/react\";\n\nimport type { OverlayProps } from \"@client/hooks\";\n\nexport const Desktop = (props: OverlayProps) => {\n const { head, body, foot, showState, className, closeComplete, closeHandler } = props;\n\n const size = useBreakpointValue({ base: \"full\", lg: \"3xl\" });\n\n return (\n \n \n \n {head && {head}}\n \n \n {body}\n \n {foot && {foot}}\n \n \n );\n};\n","import { useOverlayArray } from \"@client/hooks\";\n\nimport { Desktop } from \"../Overlay\";\n\nexport const DesktopOverlay = () => {\n const { desktop: overlays } = useOverlayArray();\n\n return (\n <>\n {overlays.map((p) => (\n \n ))}\n \n );\n};\n","import { AnimatePresence } from \"framer-motion\";\n\nimport { useOverlayArray } from \"@client/hooks\";\n\nimport { Mobile } from \"../Overlay\";\n\nexport const MobileOverlay = () => {\n const { mobile: overlays } = useOverlayArray();\n return (\n <>\n {/* currently the exit animation not work, look like it is a bug, SEE https://github.com/framer/motion/issues/1085, https://github.com/framer/motion/issues/1424 */}\n {overlays.map((p) => (p.showState ? : null))}\n \n );\n};\n","import { Portal, useBreakpointValue } from \"@chakra-ui/react\";\nimport { useMemo } from \"react\";\n\nimport { OverlayArrayContext, OverlayCloseContext, OverlayOpenContext, useOverlaysProps } from \"@client/hooks\";\n\nimport { DesktopOverlay } from \"./DesktopOverlay\";\nimport { MobileOverlay } from \"./MobileOverlay\";\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport const ModuleManager = ({ children }: { children: JSX.Element | JSX.Element[] }) => {\n const { overlays, open, close } = useOverlaysProps();\n const overlaysObj = useBreakpointValue(\n useMemo(\n () => ({\n base: { mobile: overlays, desktop: [] },\n md: { mobile: [], desktop: overlays },\n }),\n [overlays]\n )\n );\n\n return (\n \n \n \n {children}\n \n \n \n \n \n \n \n );\n};\n","import { Box } from \"@chakra-ui/react\";\nimport { Component } from \"react\";\nimport { Helmet } from \"react-helmet-async\";\nimport { Outlet } from \"react-router\";\n\nimport { Footer } from \"@client/component/Footer\";\nimport { Header } from \"@client/component/Header\";\nimport { LockBody } from \"@client/component/LockBody\";\nimport { ModuleManager } from \"@client/component/ModuleManager\";\nimport { initialStateWrapper } from \"@client/utils\";\n\nimport type { ReactNode } from \"react\";\n\n// TODO\n@initialStateWrapper<{ title: string }>(({ relativePathname }) => ({ props: { title: relativePathname } }))\nexport default class Layout extends Component<{ title: string }, { isMounted: boolean }> {\n state = {\n isMounted: false,\n };\n\n constructor(props) {\n super(props);\n console.warn(\"create\", this);\n }\n componentDidMount(): void {\n console.warn(\"mounted\", this);\n this.setState({ isMounted: true });\n }\n componentWillUnmount(): void {\n console.warn(\"unmount\", this);\n }\n UNSAFE_componentWillMount(): void {\n console.warn(\"willMount\", this);\n }\n render(): ReactNode {\n console.warn(\"render\", this);\n const { title } = this.props;\n const { isMounted } = this.state;\n return (\n <>\n \n \n \n \n
\n \n
\n \n
\n
\n
\n
\n \n \n );\n }\n}\n","import { createElement, lazy } from \"react\";\n\nimport { noBase } from \"@shared\";\n\nimport { AutoInjectProps } from \"../common/AutoInjectProps\";\nimport Layout from \"../common/Layout\";\n\nimport { dynamicRouteConfig } from \"./dynamicRoutes\";\n\nimport type { PreLoadRouteConfig } from \"../types/route\";\n\nconst baseRouter: PreLoadRouteConfig = {\n preLoad: () => Layout,\n element: createElement(AutoInjectProps(Layout)),\n};\n\nconst dynamicRoutes = dynamicRouteConfig\n .map(({ path, componentPath }) => {\n // just set true for current usage\n if (noBase) {\n return { path, componentPath };\n } else {\n if (path.startsWith(\"/\")) {\n return {\n path: `/${__BASENAME__}/${path.slice(1)}`,\n componentPath,\n };\n } else {\n return {\n path: `/${__BASENAME__}/${path}`,\n componentPath,\n };\n }\n }\n })\n .map((it) => ({\n path: it.path,\n preLoad: () =>\n import(\n /* webpackMode: \"lazy\" */\n /* webpackPrefetch: true */\n /* webpackPreload: true */\n /* webpackChunkName: \"page-[request]\" */\n `../pages/${it.componentPath}`\n ),\n component: lazy(() =>\n import(\n /* webpackMode: \"lazy\" */\n /* webpackPrefetch: true */\n /* webpackPreload: true */\n /* webpackChunkName: \"page-[request]\" */\n `../pages/${it.componentPath}`\n ).then((module) => ({ default: AutoInjectProps(module.default, it.path) }))\n ),\n }))\n .map(({ path, component: Component, preLoad }) => ({\n path: path,\n preLoad,\n element: createElement(Component),\n }));\n\nbaseRouter.children = dynamicRoutes;\n\nexport const allRoutes = [baseRouter];\n\ntypeof window !== \"undefined\" && ((window as any).__router__ = allRoutes);\n","/* eslint-disable prettier/prettier */\n/* do not editor this template */\nimport type { DynamicRouteConfig } from \"@client/types/route\";\n\nexport const dynamicRouteConfig: DynamicRouteConfig[] = [{\"path\":\"/About\",\"componentPath\":\"About\"},{\"path\":\"/Blog\",\"componentPath\":\"Blog\"},{\"path\":\"/Tldraw\",\"componentPath\":\"Tldraw\"},{\"path\":\"/\",\"componentPath\":\"index\"},{\"path\":\"/*\",\"componentPath\":\"404\"}];","import type { Cancel, Delay, KeyMap, ReJectMap, TimeoutMap } from \"../types/util\";\n\nconst timeoutMap: TimeoutMap = {};\nconst rejectMap: ReJectMap = {};\nconst keyMap: KeyMap = {};\nlet keyLength = 0;\nconst maxKeyLength = 200;\n\nconst cancel: Cancel = (key) => {\n if (timeoutMap[key]) {\n const length = timeoutMap[key].length;\n timeoutMap[key] = timeoutMap[key].map((id) => id && clearTimeout(id)).slice(length);\n rejectMap[key] = rejectMap[key].map((reject) => reject && reject()).slice(length);\n }\n if (keyLength > maxKeyLength) {\n const keys = Object.keys(keyMap).sort((key1, key2) => (keyMap[key1] > keyMap[key2] ? 1 : -1));\n for (const keyItem of keys) {\n if (keyItem !== key && !rejectMap[keyItem].length) {\n delete keyMap[keyItem];\n delete timeoutMap[keyItem];\n delete rejectMap[keyItem];\n keyLength--;\n }\n }\n }\n};\n\nconst delay: Delay = (time, action, key) => {\n if (key === undefined) {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve();\n }, time);\n }).then(() => {\n if (action) return action();\n });\n } else {\n if (!(key in keyMap)) {\n keyMap[key] = 1;\n timeoutMap[key] = [];\n rejectMap[key] = [];\n keyLength++;\n } else {\n keyMap[key]++;\n }\n cancel(key);\n return new Promise((resolve, reject) => {\n rejectMap[key].push(reject);\n timeoutMap[key].push(\n setTimeout(() => {\n resolve();\n }, time)\n );\n })\n .then(() => {\n if (action) return action();\n })\n .catch(() => void 0);\n }\n};\n\nexport { delay, cancel };\n","import merge from \"lodash/merge\";\nimport { matchRoutes } from \"react-router\";\n\nimport type { PreLoadStateProps, GetInitialStateType, PreLoadStateType, AllPreLoadStateType, PreLoadComponentType } from \"@client/types/common\";\nimport type { PreLoadRouteConfig } from \"@client/types/route\";\nimport type { LoadableComponent } from \"@loadable/component\";\nimport type { RootStore } from \"@shared\";\nimport type { ComponentClass } from \"react\";\nimport type { Params } from \"react-router\";\n\nexport type RedirectType = {\n code?: number;\n location: { pathName: string; query?: URLSearchParams };\n};\n\nfunction preLoad(\n routes: PreLoadRouteConfig[],\n pathname: string,\n query: URLSearchParams,\n store: RootStore\n): Promise<{\n // used to preload script by page initial\n page?: string[];\n error?: string;\n props?: Record>;\n redirect?: RedirectType;\n}> {\n const branch = matchRoutes(routes, pathname) || [];\n\n const relativePathname = pathname;\n\n const promises: Promise<{\n error?: string;\n page?: string[];\n redirect?: RedirectType;\n props?: Record>;\n } | void>[] = [];\n\n branch.forEach(({ route, params, pathname }) => {\n const match = { params, pathname };\n promises.push(_preLoad({ route: route as PreLoadRouteConfig, store, match, query, relativePathname }));\n });\n\n return Promise.all(promises).then((val) => {\n if (val.length) {\n const allInitialProps = val.filter(Boolean).reduce<{\n error?: string;\n page?: string[];\n props?: Record>;\n redirect?: RedirectType;\n }>((s, c) => {\n if (!c) {\n return s;\n }\n s.props = merge(s.props, c.props);\n s.page = (s.page || []).concat(c.page || []);\n s.error = [s.error, c.error].filter(Boolean).join(\" || \");\n s.redirect = c.redirect ? c.redirect : s.redirect;\n return s;\n }, {});\n return allInitialProps;\n }\n return {\n redirect: {\n code: 301,\n location: { pathName: \"/404\" },\n },\n };\n });\n}\n\nconst preLoadPropsKey = (pathName: string) => `__preload-[${pathName}]-props__`;\n\ntype PreLoadProps = {\n route: PreLoadRouteConfig;\n store: RootStore;\n match: { params: Params; pathname: string };\n relativePathname: string;\n query: URLSearchParams;\n};\n\ntype PreLoadType = (props: PreLoadProps) => Promise<{\n error?: string;\n page?: string[];\n redirect?: RedirectType;\n props?: Record>;\n} | void>;\n\nconst resolvePreLoadStateFunction = async ({ route }: Pick): Promise => {\n const preLoadStateArray: PreLoadStateType[] = [];\n // for router\n if (route.getInitialState) {\n preLoadStateArray.push(route.getInitialState);\n }\n\n if (__STREAM__) {\n if (route.preLoad) {\n const component = await route.preLoad();\n if (component[\"default\"]) {\n const typedComponent = component[\"default\"] as PreLoadComponentType;\n if (typedComponent.getInitialState) {\n preLoadStateArray.push(typedComponent.getInitialState);\n }\n }\n if (component[\"getInitialState\"]) {\n const typedComponent = component as PreLoadComponentType;\n preLoadStateArray.push(typedComponent.getInitialState);\n }\n }\n } else {\n if (route.component) {\n const WrapperComponent = route.component;\n if (WrapperComponent[\"load\"] && typeof WrapperComponent[\"load\"] === \"function\") {\n const loadAbleComponent = WrapperComponent as LoadableComponent>;\n const preLoadComponent: PreLoadComponentType & { readonly default?: PreLoadComponentType } = await loadAbleComponent.load();\n if (preLoadComponent.getInitialState && typeof preLoadComponent.getInitialState === \"function\") {\n preLoadStateArray.push(preLoadComponent.getInitialState);\n }\n if (typeof preLoadComponent.default !== \"undefined\") {\n const c = preLoadComponent.default;\n if (c.getInitialState && typeof c.getInitialState === \"function\") {\n preLoadStateArray.push(c.getInitialState);\n }\n }\n } else {\n const preLoadComponent = WrapperComponent as PreLoadComponentType;\n if (preLoadComponent.getInitialState && typeof preLoadComponent.getInitialState === \"function\") {\n preLoadStateArray.push(preLoadComponent.getInitialState);\n }\n }\n }\n }\n\n if (preLoadStateArray.length) {\n return async ({ store, pathName, params, relativePathname, query }: PreLoadStateProps) => {\n const propsKey = preLoadPropsKey(pathName);\n const res = await Promise.all(\n preLoadStateArray.map((fn) =>\n Promise.resolve()\n .then(() => fn({ store, pathName, params, relativePathname, query }))\n .catch((e) => {\n // catch all error by default\n console.error(`[${__CLIENT__ ? \"client\" : \"server\"}] getInitialState error ${e.toString()}`);\n return null;\n })\n )\n );\n\n const result = res.filter(Boolean).reduce<{\n redirect?: RedirectType;\n error?: string;\n props?: Record;\n }>((s, c) => {\n if (!c) {\n return s;\n }\n s.error = [s.error, c.error].filter(Boolean).join(\" || \");\n s.props = merge(s.props, c.props);\n s.redirect = c.redirect ? c.redirect : s.redirect;\n return s;\n }, {});\n\n return {\n ...result,\n props: { [propsKey]: result.props || {} },\n };\n };\n } else {\n return null;\n }\n};\n\nconst _preLoad: PreLoadType = async ({ route, store, match, query, relativePathname }) => {\n const getInitialState = await resolvePreLoadStateFunction({ route });\n if (getInitialState) {\n const initialState = await getInitialState({\n store,\n pathName: match.pathname,\n params: match.params,\n relativePathname,\n query,\n });\n if (route.path) {\n return { ...initialState, page: [route.path] };\n } else {\n return initialState;\n }\n } else if (route.path) {\n return { page: [route.path] };\n }\n};\n\nfunction initialStateWrapper>(getInitialState: GetInitialStateType) {\n function Wrapper(Component: ComponentClass & { getInitialState?: GetInitialStateType }): void {\n Component.getInitialState = getInitialState;\n }\n return Wrapper;\n}\n\nexport { preLoad, initialStateWrapper, preLoadPropsKey };\n","import memoize from \"lodash/memoize\";\n\nexport const getIsMiddleware = memoize(() => (__SERVER__ ? JSON.parse(process.env.MIDDLEWARE || \"false\") : window.__ENV__.isMIDDLEWARE));\n\nexport const getIsSSR = memoize(() => (__SERVER__ ? JSON.parse(process.env.SSR || \"false\") : window.__ENV__.isSSR));\n\nexport const getIsStream = memoize(() => (__SERVER__ ? JSON.parse(process.env.STREAM || \"false\") : window.__ENV__.isSTREAM));\n\nexport const getIsAnimateRouter = memoize(() => (__SERVER__ ? JSON.parse(process.env.ANIMATE_ROUTER || \"false\") : window.__ENV__.isANIMATE_ROUTER));\n\nexport const getIsP_CSR = memoize(() => (__SERVER__ ? false : window.__ENV__.isPURE_CSR));\n\nexport const getIsStaticGenerate = memoize(() =>\n __SERVER__ ? JSON.parse(process.env.STATIC_GENERATE || \"false\") && process.env.NODE_ENV === \"production\" : window.__ENV__.isSTATIC\n);\n\nexport const getPublicApi = memoize(() =>\n __SERVER__ ? (__DEVELOPMENT__ ? process.env.PUBLIC_DEV_API_HOST : process.env.PUBLIC_PROD_API_HOST) : window.__ENV__.PUBLIC_API_HOST\n);\n\nexport const noBase = __DEVELOPMENT__ || __BASENAME__ === \"/\" || __BASENAME__ === \"\";\n","import { serverActionName } from \"./store/action\";\nimport { getDataAction_Server } from \"./store/reducer\";\n\nimport type { AppDispatch } from \"./store\";\n\nexport const supportedLang = {\n en: \"English\",\n zh: \"中文\",\n};\n\nexport const loadCurrentLang = async (dispatch: AppDispatch, lang: keyof typeof supportedLang) => {\n await dispatch(getDataAction_Server({ name: serverActionName.serverLang, lang }));\n};\n\nexport const defaultLang = \"en\";\n","import { createRequest } from \"project-tool/request\";\nimport { call, put, select } from \"redux-saga/effects\";\n\nimport { getPublicApi } from \"@shared\";\nimport { clientActionName, serverActionName } from \"@shared/store/action\";\nimport { getDataFail_Server, getDataLoading_server, getDataSuccess_Server, setDataSuccess_client } from \"@shared/store/reducer\";\n\nimport type { StoreState } from \"@shared/store/type\";\n\nexport function* langSaga({ done, lang }: { done: () => void; lang: string }) {\n try {\n const langData: { [props: string]: any } = yield select<(s: StoreState) => { [props: string]: unknown }>((state) => state.server.serverLang.data);\n if (!langData[lang]) {\n yield put(getDataLoading_server({ name: serverActionName.serverLang }));\n const request = createRequest({ baseURL: getPublicApi() });\n const {\n data: { data },\n } = yield call((apiName: string) => request.get(apiName, { params: { lang } }), \"/api/lang\");\n yield put(getDataSuccess_Server({ name: serverActionName.serverLang, data: { [lang]: data } }));\n }\n yield put(setDataSuccess_client({ name: clientActionName.clientLang, data: lang }));\n } catch (e) {\n if (__DEVELOPMENT__) {\n console.error(\"langSaga error: \", (e as Error).message);\n }\n yield put(getDataFail_Server({ name: serverActionName.serverLang, error: (e as Error).toString() }));\n } finally {\n done();\n }\n}\n","import { all, takeLatest } from \"redux-saga/effects\";\n\nimport { serverActionName } from \"../action\";\nimport { serverAction } from \"../reducer\";\n\nimport { langSaga } from \"./action\";\n\ntype StartActionType = { type: ReturnType; done: () => void; [props: string]: any };\n\nfunction* rootSaga() {\n yield all([takeLatest(serverAction.GET_DATA_ACTION(serverActionName.serverLang), ({ done, lang }) => langSaga({ done, lang }))]);\n}\n\nexport { rootSaga };\n","import { fork, take, cancel } from \"redux-saga/effects\";\n\nimport type { rootSaga } from \".\";\nimport type { SagaStore } from \"../type\";\nimport type createSagaMiddleware from \"redux-saga\";\nimport type { Saga, Task } from \"redux-saga\";\n\nexport const CANCEL_SAGAS_HMR = \"@CANCEL_SAGAS_HMR\";\n\nfunction createAbortAbleSaga(saga: typeof rootSaga) {\n if (__DEVELOPMENT__) {\n return function* main() {\n const sagaTask: Task = yield fork(saga);\n\n yield take(CANCEL_SAGAS_HMR);\n yield cancel(sagaTask);\n };\n } else {\n return saga;\n }\n}\n\nconst SagaManager = {\n startSagas(saga: typeof rootSaga, sagaMiddleware: ReturnType) {\n return sagaMiddleware.run(createAbortAbleSaga(saga) as Saga);\n },\n\n cancelSagas(store: SagaStore) {\n store.dispatch({\n type: CANCEL_SAGAS_HMR,\n });\n },\n};\n\nexport { SagaManager };\n","import { useDispatch, useSelector } from \"react-redux\";\nimport { legacy_createStore as createStore, applyMiddleware, compose } from \"redux\";\nimport createSagaMiddleware from \"redux-saga\";\nimport { thunk as thunkMiddleware } from \"redux-thunk\";\n\nimport { rootReducer } from \"./reducer\";\nimport { rootSaga } from \"./saga\";\nimport { SagaManager } from \"./saga/utils\";\n\nimport type { SagaStore } from \"./type\";\nimport type { TypedUseSelectorHook } from \"react-redux\";\nimport type { Middleware } from \"redux\";\n\ntype CreateStoreProps = {\n preloadedState?: ReturnType;\n middleware?: Middleware[];\n};\n\nconst devTools =\n __CLIENT__ && typeof window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ === \"function\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({ actionsDenylist: [] });\n\nconst composeEnhancers = devTools || compose;\n\nexport const createUniversalStore = (props: CreateStoreProps = {}): SagaStore => {\n const { preloadedState, middleware = [] } = props;\n const sagaMiddleware = createSagaMiddleware();\n const allMiddleware = [thunkMiddleware, sagaMiddleware, ...middleware];\n const store = createStore(rootReducer, preloadedState, composeEnhancers(applyMiddleware(...allMiddleware))) as SagaStore;\n store.sagaTask = SagaManager.startSagas(rootSaga, sagaMiddleware);\n\n // Enable Webpack hot module\n if (__DEVELOPMENT__ && module.hot) {\n module.hot.accept(\"./reducer\", () => {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const { rootReducer: nextRootReducer } = require(\"./reducer\");\n store.replaceReducer(nextRootReducer);\n });\n\n module.hot.accept(\"./saga\", () => {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const { rootSaga: nextRootSaga } = require(\"./saga\");\n SagaManager.cancelSagas(store);\n store.sagaTask = SagaManager.startSagas(nextRootSaga, sagaMiddleware);\n });\n }\n\n return store;\n};\n\nexport type RootState = ReturnType;\n\nexport type RootStore = ReturnType;\n\nexport type AppDispatch = ReturnType[\"dispatch\"];\n\nexport const useAppDispatch: () => AppDispatch = useDispatch;\n\nexport const useAppSelector: TypedUseSelectorHook = useSelector;\n","import type { ChakraTheme } from \"@chakra-ui/react\";\n\nexport const styles: ChakraTheme[\"styles\"] = {\n global: {\n body: {\n fontFamily: `Product Sans, sans-serif`,\n },\n [\"h1, h2, h3, h4, h5, th, td\"]: {\n fontFamily: \"Product Sans, sans-serif\",\n },\n \"kbd, samp, pre\": {\n fontFamily: \"Product Sans, sans-serif\",\n },\n },\n};\n","import { extendTheme } from \"@chakra-ui/react\";\n\nimport { semanticTokens } from \"./semanticTokens\";\nimport { styles } from \"./styles\";\n\nimport type { ChakraTheme} from \"@chakra-ui/react\";\n\n\nexport const theme: Partial = extendTheme({\n styles,\n semanticTokens,\n});\n","import type { ChakraTheme } from \"@chakra-ui/react\";\n\nexport const semanticTokens: ChakraTheme[\"semanticTokens\"] = {\n colors: {\n mobileCardBackgroundColor: {\n default: \"white\",\n _dark: \"gray.700\",\n },\n cardBackgroundColor: {\n default: \"rgba(245, 245, 245, 0.7)\",\n _dark: \"rgba(45, 60, 80, 0.7)\",\n },\n mobileModalColor: {\n default: \"rgb(220, 220, 220)\",\n _dark: \"gray.700\",\n },\n cardBorderColor: {\n default: \"gray.300\",\n _dark: \"gray.600\",\n },\n lightTextColor: {\n default: \"gray.600\",\n _dark: \"gray.400\",\n },\n siteBackgroundColor: {\n default: \"rgba(250, 250, 250, 0.8)\",\n _dark: \"rgba(24, 24, 24, 0.2)\",\n },\n bannerBackgroundColor: {\n default: \"rgb(255, 255, 255)\",\n _dark: \"#1A202C\",\n },\n },\n};\n","import { ColorModeScript } from \"@chakra-ui/react\";\n\nimport type { HTMLProps } from \".\";\n\nexport const Body = ({ children, script = [], refresh = [] }: HTMLProps) => (\n \n \n {typeof children === \"string\" ?
:
{children}
}\n {script.filter(Boolean).map((ele) => ele)}\n {refresh.filter(Boolean).map((ele) => ele)}\n \n);\n","import { version } from \"@my-react/react\";\n\nimport { noBase } from \"@shared\";\n\nimport type { HTMLProps } from \".\";\n\nexport const Head = ({ env = \"{}\", link = [], preLoad = [], preloadedState = \"{}\", helmetContext: { helmet } = {}, emotionChunks }: HTMLProps) => (\n \n \n \n \n \n \n \n \n \n \n \n \n {/* a type issue for react-helmet-async */}\n <>\n {helmet?.base.toComponent()}\n {helmet?.title.toComponent()}\n {helmet?.meta.toComponent()}\n {helmet?.link.toComponent()}\n {helmet?.noscript.toComponent()}\n {helmet?.style.toComponent()}\n {helmet?.script.toComponent()}\n \n {preLoad.filter(Boolean).map((ele) => ele)}\n {link.filter(Boolean).map((ele) => ele)}\n {emotionChunks?.styles.map((style, index) => (\n '},".env":{code:'ASTRO_TELEMETRY_DISABLED="1"'},"/package.json":{code:JSON.stringify({dependencies:{astro:"^1.6.12","esbuild-wasm":"^0.15.16"},scripts:{dev:"astro dev",start:"astro dev",build:"astro build",preview:"astro preview",astro:"astro"}})}},main:"/src/pages/index.astro",environment:"node"},Vf={files:nf(nf({},Wf),{"/pages/_app.js":{code:"import '../styles.css'\n\nexport default function MyApp({ Component, pageProps }) {\n return \n}"},"/pages/index.js":{code:'export default function Home({ data }) {\n return (\n
\n

Hello {data}

\n
\n );\n}\n \nexport function getServerSideProps() {\n return {\n props: { data: "world" },\n }\n}\n'},"/next.config.js":{code:"/** @type {import('next').NextConfig} */\nconst nextConfig = {\n reactStrictMode: true,\n swcMinify: true,\n}\n\nmodule.exports = nextConfig\n"},"/package.json":{code:JSON.stringify({name:"my-app",version:"0.1.0",private:!0,scripts:{dev:"NEXT_TELEMETRY_DISABLED=1 next dev",build:"next build",start:"next start",lint:"next lint"},dependencies:{next:"12.1.6",react:"18.2.0","react-dom":"18.2.0","@next/swc-wasm-nodejs":"12.1.6"}})}}),main:"/pages/index.js",environment:"node"},Yf={files:{"/index.js":{code:"const http = require('http');\n\nconst hostname = '127.0.0.1';\nconst port = 3000;\n\nconst server = http.createServer((req, res) => {\n res.statusCode = 200;\n res.setHeader('Content-Type', 'text/html');\n res.end('Hello world');\n});\n\nserver.listen(port, hostname, () => {\n console.log(`Server running at http://${hostname}:${port}/`);\n});"},"/package.json":{code:JSON.stringify({dependencies:{},scripts:{start:"node index.js"},main:"index.js"})}},main:"/index.js",environment:"node"},Xf={files:nf(nf({},Wf),{"/index.js":{code:'import "./styles.css";\n\ndocument.getElementById("app").innerHTML = `\n

Hello world

\n`;\n'},"/index.html":{code:'\n\n \n \n \n Vite App\n \n \n
\n \";\n return this.injectContentIntoHead(content, scriptToInsert);\n };\n SandpackStatic.prototype.injectExternalResources = function (content, externalResources) {\n if (externalResources === void 0) { externalResources = []; }\n var tagsToInsert = externalResources\n .map(function (resource) {\n var match = resource.match(/\\.([^.]*)$/);\n var fileType = match === null || match === void 0 ? void 0 : match[1];\n if (fileType === \"css\" || resource.includes(\"fonts.googleapis\")) {\n return \"\");\n }\n if (fileType === \"js\") {\n return \"\");\n }\n throw new Error(\"Unable to determine file type for external resource: \".concat(resource));\n })\n .join(\"\\n\");\n return this.injectContentIntoHead(content, tagsToInsert);\n };\n SandpackStatic.prototype.injectScriptIntoHead = function (content, opts) {\n var script = opts.script, _a = opts.scope, scope = _a === void 0 ? {} : _a;\n var scriptToInsert = \"\\n \\n \").trim();\n return this.injectContentIntoHead(content, scriptToInsert);\n };\n SandpackStatic.prototype.updateSandbox = function (setup, _isInitializationCompile) {\n if (setup === void 0) { setup = this.sandboxSetup; }\n var modules = fromBundlerFilesToFS(setup.files);\n /**\n * Pass init files to the bundler\n */\n this.dispatch({\n codesandbox: true,\n modules: modules,\n template: setup.template,\n type: \"compile\",\n });\n };\n SandpackStatic.prototype.compile = function (files) {\n return __awaiter(this, void 0, void 0, function () {\n var previewUrl;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n this.files = new Map(Object.entries(files));\n return [4 /*yield*/, this.previewController.initPreview()];\n case 1:\n previewUrl = _a.sent();\n this.iframe.setAttribute(\"src\", previewUrl);\n this.status = \"done\";\n this.dispatch({ type: \"done\", compilatonError: false });\n this.dispatch({\n type: \"urlchange\",\n url: previewUrl,\n back: false,\n forward: false,\n });\n return [2 /*return*/];\n }\n });\n });\n };\n // Handles message windows coming from iframes\n SandpackStatic.prototype.eventListener = function (evt) {\n // skip events originating from different iframes\n if (evt.source !== this.iframe.contentWindow) {\n return;\n }\n var message = evt.data;\n if (!message.codesandbox) {\n return;\n }\n this.dispatch(message);\n };\n /**\n * Bundler communication\n */\n SandpackStatic.prototype.dispatch = function (message) {\n var _a;\n switch (message.type) {\n case \"compile\":\n this.compile(message.modules);\n break;\n default:\n (_a = this.iframe.contentWindow) === null || _a === void 0 ? void 0 : _a.postMessage(message, \"*\");\n this.emitter.dispatch(message);\n }\n };\n SandpackStatic.prototype.listen = function (listener) {\n return this.emitter.listener(listener);\n };\n SandpackStatic.prototype.destroy = function () {\n this.emitter.cleanup();\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"message\", this.eventListener);\n }\n };\n return SandpackStatic;\n}(SandpackClient));\n\nexport { SandpackStatic };\n","import { invariant } from 'outvariant';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* globalThis Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\n\nvar SandpackLogLevel;\n(function (SandpackLogLevel) {\n SandpackLogLevel[SandpackLogLevel[\"None\"] = 0] = \"None\";\n SandpackLogLevel[SandpackLogLevel[\"Error\"] = 10] = \"Error\";\n SandpackLogLevel[SandpackLogLevel[\"Warning\"] = 20] = \"Warning\";\n SandpackLogLevel[SandpackLogLevel[\"Info\"] = 30] = \"Info\";\n SandpackLogLevel[SandpackLogLevel[\"Debug\"] = 40] = \"Debug\";\n})(SandpackLogLevel || (SandpackLogLevel = {}));\n\nvar createError = function (message) {\n return \"[sandpack-client]: \".concat(message);\n};\nfunction nullthrows(value, err) {\n if (err === void 0) { err = \"Value is nullish\"; }\n invariant(value != null, createError(err));\n return value;\n}\nvar DEPENDENCY_ERROR_MESSAGE = \"\\\"dependencies\\\" was not specified - provide either a package.json or a \\\"dependencies\\\" value\";\nvar ENTRY_ERROR_MESSAGE = \"\\\"entry\\\" was not specified - provide either a package.json with the \\\"main\\\" field or an \\\"entry\\\" value\";\nfunction createPackageJSON(dependencies, devDependencies, entry) {\n if (dependencies === void 0) { dependencies = {}; }\n if (devDependencies === void 0) { devDependencies = {}; }\n if (entry === void 0) { entry = \"/index.js\"; }\n return JSON.stringify({\n name: \"sandpack-project\",\n main: entry,\n dependencies: dependencies,\n devDependencies: devDependencies,\n }, null, 2);\n}\nfunction addPackageJSONIfNeeded(files, dependencies, devDependencies, entry) {\n var _a, _b;\n var normalizedFilesPath = normalizePath(files);\n var packageJsonFile = normalizedFilesPath[\"/package.json\"];\n /**\n * Create a new package json\n */\n if (!packageJsonFile) {\n nullthrows(dependencies, DEPENDENCY_ERROR_MESSAGE);\n nullthrows(entry, ENTRY_ERROR_MESSAGE);\n normalizedFilesPath[\"/package.json\"] = {\n code: createPackageJSON(dependencies, devDependencies, entry),\n };\n return normalizedFilesPath;\n }\n /**\n * Merge package json with custom setup\n */\n if (packageJsonFile) {\n var packageJsonContent = JSON.parse(packageJsonFile.code);\n nullthrows(!(!dependencies && !packageJsonContent.dependencies), ENTRY_ERROR_MESSAGE);\n if (dependencies) {\n packageJsonContent.dependencies = __assign(__assign({}, ((_a = packageJsonContent.dependencies) !== null && _a !== void 0 ? _a : {})), (dependencies !== null && dependencies !== void 0 ? dependencies : {}));\n }\n if (devDependencies) {\n packageJsonContent.devDependencies = __assign(__assign({}, ((_b = packageJsonContent.devDependencies) !== null && _b !== void 0 ? _b : {})), (devDependencies !== null && devDependencies !== void 0 ? devDependencies : {}));\n }\n if (entry) {\n packageJsonContent.main = entry;\n }\n normalizedFilesPath[\"/package.json\"] = {\n code: JSON.stringify(packageJsonContent, null, 2),\n };\n }\n return normalizedFilesPath;\n}\nfunction extractErrorDetails(msg) {\n var _a;\n if (msg.title === \"SyntaxError\") {\n var title = msg.title, path = msg.path, message = msg.message, line = msg.line, column = msg.column;\n return { title: title, path: path, message: message, line: line, column: column };\n }\n var relevantStackFrame = getRelevantStackFrame((_a = msg.payload) === null || _a === void 0 ? void 0 : _a.frames);\n if (!relevantStackFrame) {\n return { message: msg.message };\n }\n var errorInCode = getErrorInOriginalCode(relevantStackFrame);\n var errorLocation = getErrorLocation(relevantStackFrame);\n var errorMessage = formatErrorMessage(relevantStackFrame._originalFileName, msg.message, errorLocation, errorInCode);\n return {\n message: errorMessage,\n title: msg.title,\n path: relevantStackFrame._originalFileName,\n line: relevantStackFrame._originalLineNumber,\n column: relevantStackFrame._originalColumnNumber,\n };\n}\nfunction getRelevantStackFrame(frames) {\n if (!frames) {\n return;\n }\n return frames.find(function (frame) { return !!frame._originalFileName; });\n}\nfunction getErrorLocation(errorFrame) {\n return errorFrame\n ? \" (\".concat(errorFrame._originalLineNumber, \":\").concat(errorFrame._originalColumnNumber, \")\")\n : \"\";\n}\nfunction getErrorInOriginalCode(errorFrame) {\n var lastScriptLine = errorFrame._originalScriptCode[errorFrame._originalScriptCode.length - 1];\n var numberOfLineNumberCharacters = lastScriptLine.lineNumber.toString().length;\n var leadingCharacterOffset = 2;\n var barSeparatorCharacterOffset = 3;\n var extraLineLeadingSpaces = leadingCharacterOffset +\n numberOfLineNumberCharacters +\n barSeparatorCharacterOffset +\n errorFrame._originalColumnNumber;\n return errorFrame._originalScriptCode.reduce(function (result, scriptLine) {\n var leadingChar = scriptLine.highlight ? \">\" : \" \";\n var lineNumber = scriptLine.lineNumber.toString().length === numberOfLineNumberCharacters\n ? \"\".concat(scriptLine.lineNumber)\n : \" \".concat(scriptLine.lineNumber);\n var extraLine = scriptLine.highlight\n ? \"\\n\" + \" \".repeat(extraLineLeadingSpaces) + \"^\"\n : \"\";\n return (result + // accumulator\n \"\\n\" +\n leadingChar + // > or \" \"\n \" \" +\n lineNumber + // line number on equal number of characters\n \" | \" +\n scriptLine.content + // code\n extraLine // line under the highlighed line to show the column index\n );\n }, \"\");\n}\nfunction formatErrorMessage(filePath, message, location, errorInCode) {\n return \"\".concat(filePath, \": \").concat(message).concat(location, \"\\n\").concat(errorInCode);\n}\n/* eslint-disable @typescript-eslint/no-explicit-any */\nvar normalizePath = function (path) {\n if (typeof path === \"string\") {\n return (path.startsWith(\"/\") ? path : \"/\".concat(path));\n }\n if (Array.isArray(path)) {\n return path.map(function (p) { return (p.startsWith(\"/\") ? p : \"/\".concat(p)); });\n }\n if (typeof path === \"object\" && path !== null) {\n return Object.entries(path).reduce(function (acc, _a) {\n var key = _a[0], content = _a[1];\n var fileName = key.startsWith(\"/\") ? key : \"/\".concat(key);\n acc[fileName] = content;\n return acc;\n }, {});\n }\n return null;\n};\n\nexport { SandpackLogLevel as S, __awaiter as _, __generator as a, createPackageJSON as b, createError as c, addPackageJSONIfNeeded as d, extractErrorDetails as e, normalizePath as f, __extends as g, __assign as h, __spreadArray as i, nullthrows as n };\n","var e,t=\"colors\",n=\"sizes\",r=\"space\",i={gap:r,gridGap:r,columnGap:r,gridColumnGap:r,rowGap:r,gridRowGap:r,inset:r,insetBlock:r,insetBlockEnd:r,insetBlockStart:r,insetInline:r,insetInlineEnd:r,insetInlineStart:r,margin:r,marginTop:r,marginRight:r,marginBottom:r,marginLeft:r,marginBlock:r,marginBlockEnd:r,marginBlockStart:r,marginInline:r,marginInlineEnd:r,marginInlineStart:r,padding:r,paddingTop:r,paddingRight:r,paddingBottom:r,paddingLeft:r,paddingBlock:r,paddingBlockEnd:r,paddingBlockStart:r,paddingInline:r,paddingInlineEnd:r,paddingInlineStart:r,top:r,right:r,bottom:r,left:r,scrollMargin:r,scrollMarginTop:r,scrollMarginRight:r,scrollMarginBottom:r,scrollMarginLeft:r,scrollMarginX:r,scrollMarginY:r,scrollMarginBlock:r,scrollMarginBlockEnd:r,scrollMarginBlockStart:r,scrollMarginInline:r,scrollMarginInlineEnd:r,scrollMarginInlineStart:r,scrollPadding:r,scrollPaddingTop:r,scrollPaddingRight:r,scrollPaddingBottom:r,scrollPaddingLeft:r,scrollPaddingX:r,scrollPaddingY:r,scrollPaddingBlock:r,scrollPaddingBlockEnd:r,scrollPaddingBlockStart:r,scrollPaddingInline:r,scrollPaddingInlineEnd:r,scrollPaddingInlineStart:r,fontSize:\"fontSizes\",background:t,backgroundColor:t,backgroundImage:t,borderImage:t,border:t,borderBlock:t,borderBlockEnd:t,borderBlockStart:t,borderBottom:t,borderBottomColor:t,borderColor:t,borderInline:t,borderInlineEnd:t,borderInlineStart:t,borderLeft:t,borderLeftColor:t,borderRight:t,borderRightColor:t,borderTop:t,borderTopColor:t,caretColor:t,color:t,columnRuleColor:t,fill:t,outline:t,outlineColor:t,stroke:t,textDecorationColor:t,fontFamily:\"fonts\",fontWeight:\"fontWeights\",lineHeight:\"lineHeights\",letterSpacing:\"letterSpacings\",blockSize:n,minBlockSize:n,maxBlockSize:n,inlineSize:n,minInlineSize:n,maxInlineSize:n,width:n,minWidth:n,maxWidth:n,height:n,minHeight:n,maxHeight:n,flexBasis:n,gridTemplateColumns:n,gridTemplateRows:n,borderWidth:\"borderWidths\",borderTopWidth:\"borderWidths\",borderRightWidth:\"borderWidths\",borderBottomWidth:\"borderWidths\",borderLeftWidth:\"borderWidths\",borderStyle:\"borderStyles\",borderTopStyle:\"borderStyles\",borderRightStyle:\"borderStyles\",borderBottomStyle:\"borderStyles\",borderLeftStyle:\"borderStyles\",borderRadius:\"radii\",borderTopLeftRadius:\"radii\",borderTopRightRadius:\"radii\",borderBottomRightRadius:\"radii\",borderBottomLeftRadius:\"radii\",boxShadow:\"shadows\",textShadow:\"shadows\",transition:\"transitions\",zIndex:\"zIndices\"},o=(e,t)=>\"function\"==typeof t?{\"()\":Function.prototype.toString.call(t)}:t,l=()=>{const e=Object.create(null);return(t,n,...r)=>{const i=(e=>JSON.stringify(e,o))(t);return i in e?e[i]:e[i]=n(t,...r)}},s=Symbol.for(\"sxs.internal\"),a=(e,t)=>Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)),c=e=>{for(const t in e)return!0;return!1},{hasOwnProperty:d}=Object.prototype,g=e=>e.includes(\"-\")?e:e.replace(/[A-Z]/g,(e=>\"-\"+e.toLowerCase())),p=/\\s+(?![^()]*\\))/,u=e=>t=>e(...\"string\"==typeof t?String(t).split(p):[t]),h={appearance:e=>({WebkitAppearance:e,appearance:e}),backfaceVisibility:e=>({WebkitBackfaceVisibility:e,backfaceVisibility:e}),backdropFilter:e=>({WebkitBackdropFilter:e,backdropFilter:e}),backgroundClip:e=>({WebkitBackgroundClip:e,backgroundClip:e}),boxDecorationBreak:e=>({WebkitBoxDecorationBreak:e,boxDecorationBreak:e}),clipPath:e=>({WebkitClipPath:e,clipPath:e}),content:e=>({content:e.includes('\"')||e.includes(\"'\")||/^([A-Za-z]+\\([^]*|[^]*-quote|inherit|initial|none|normal|revert|unset)$/.test(e)?e:`\"${e}\"`}),hyphens:e=>({WebkitHyphens:e,hyphens:e}),maskImage:e=>({WebkitMaskImage:e,maskImage:e}),maskSize:e=>({WebkitMaskSize:e,maskSize:e}),tabSize:e=>({MozTabSize:e,tabSize:e}),textSizeAdjust:e=>({WebkitTextSizeAdjust:e,textSizeAdjust:e}),userSelect:e=>({WebkitUserSelect:e,userSelect:e}),marginBlock:u(((e,t)=>({marginBlockStart:e,marginBlockEnd:t||e}))),marginInline:u(((e,t)=>({marginInlineStart:e,marginInlineEnd:t||e}))),maxSize:u(((e,t)=>({maxBlockSize:e,maxInlineSize:t||e}))),minSize:u(((e,t)=>({minBlockSize:e,minInlineSize:t||e}))),paddingBlock:u(((e,t)=>({paddingBlockStart:e,paddingBlockEnd:t||e}))),paddingInline:u(((e,t)=>({paddingInlineStart:e,paddingInlineEnd:t||e})))},f=/([\\d.]+)([^]*)/,m=(e,t)=>e.length?e.reduce(((e,n)=>(e.push(...t.map((e=>e.includes(\"&\")?e.replace(/&/g,/[ +>|~]/.test(n)&&/&.*&/.test(e)?`:is(${n})`:n):n+\" \"+e))),e)),[]):t,b=(e,t)=>e in S&&\"string\"==typeof t?t.replace(/^((?:[^]*[^\\w-])?)(fit-content|stretch)((?:[^\\w-][^]*)?)$/,((t,n,r,i)=>n+(\"stretch\"===r?`-moz-available${i};${g(e)}:${n}-webkit-fill-available`:`-moz-fit-content${i};${g(e)}:${n}fit-content`)+i)):String(t),S={blockSize:1,height:1,inlineSize:1,maxBlockSize:1,maxHeight:1,maxInlineSize:1,maxWidth:1,minBlockSize:1,minHeight:1,minInlineSize:1,minWidth:1,width:1},k=e=>e?e+\"-\":\"\",y=(e,t,n)=>e.replace(/([+-])?((?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[Ee][+-]?\\d+)?)?(\\$|--)([$\\w-]+)/g,((e,r,i,o,l)=>\"$\"==o==!!i?e:(r||\"--\"==o?\"calc(\":\"\")+\"var(--\"+(\"$\"===o?k(t)+(l.includes(\"$\")?\"\":k(n))+l.replace(/\\$/g,\"-\"):l)+\")\"+(r||\"--\"==o?\"*\"+(r||\"\")+(i||\"1\")+\")\":\"\"))),B=/\\s*,\\s*(?![^()]*\\))/,$=Object.prototype.toString,x=(e,t,n,r,i)=>{let o,l,s;const a=(e,t,n)=>{let c,d;const p=e=>{for(c in e){const x=64===c.charCodeAt(0),z=x&&Array.isArray(e[c])?e[c]:[e[c]];for(d of z){const e=/[A-Z]/.test(S=c)?S:S.replace(/-[^]/g,(e=>e[1].toUpperCase())),z=\"object\"==typeof d&&d&&d.toString===$&&(!r.utils[e]||!t.length);if(e in r.utils&&!z){const t=r.utils[e];if(t!==l){l=t,p(t(d)),l=null;continue}}else if(e in h){const t=h[e];if(t!==s){s=t,p(t(d)),s=null;continue}}if(x&&(u=c.slice(1)in r.media?\"@media \"+r.media[c.slice(1)]:c,c=u.replace(/\\(\\s*([\\w-]+)\\s*(=|<|<=|>|>=)\\s*([\\w-]+)\\s*(?:(<|<=|>|>=)\\s*([\\w-]+)\\s*)?\\)/g,((e,t,n,r,i,o)=>{const l=f.test(t),s=.0625*(l?-1:1),[a,c]=l?[r,t]:[t,r];return\"(\"+(\"=\"===n[0]?\"\":\">\"===n[0]===l?\"max-\":\"min-\")+a+\":\"+(\"=\"!==n[0]&&1===n.length?c.replace(f,((e,t,r)=>Number(t)+s*(\">\"===n?1:-1)+r)):c)+(i?\") and (\"+(\">\"===i[0]?\"min-\":\"max-\")+a+\":\"+(1===i.length?o.replace(f,((e,t,n)=>Number(t)+s*(\">\"===i?-1:1)+n)):o):\"\")+\")\"}))),z){const e=x?n.concat(c):[...n],r=x?[...t]:m(t,c.split(B));void 0!==o&&i(I(...o)),o=void 0,a(d,r,e)}else void 0===o&&(o=[[],t,n]),c=x||36!==c.charCodeAt(0)?c:`--${k(r.prefix)}${c.slice(1).replace(/\\$/g,\"-\")}`,d=z?d:\"number\"==typeof d?d&&e in R?String(d)+\"px\":String(d):y(b(e,null==d?\"\":d),r.prefix,r.themeMap[e]),o[0].push(`${x?`${c} `:`${g(c)}:`}${d}`)}}var u,S};p(e),void 0!==o&&i(I(...o)),o=void 0};a(e,t,n)},I=(e,t,n)=>`${n.map((e=>`${e}{`)).join(\"\")}${t.length?`${t.join(\",\")}{`:\"\"}${e.join(\";\")}${t.length?\"}\":\"\"}${Array(n.length?n.length+1:0).join(\"}\")}`,R={animationDelay:1,animationDuration:1,backgroundSize:1,blockSize:1,border:1,borderBlock:1,borderBlockEnd:1,borderBlockEndWidth:1,borderBlockStart:1,borderBlockStartWidth:1,borderBlockWidth:1,borderBottom:1,borderBottomLeftRadius:1,borderBottomRightRadius:1,borderBottomWidth:1,borderEndEndRadius:1,borderEndStartRadius:1,borderInlineEnd:1,borderInlineEndWidth:1,borderInlineStart:1,borderInlineStartWidth:1,borderInlineWidth:1,borderLeft:1,borderLeftWidth:1,borderRadius:1,borderRight:1,borderRightWidth:1,borderSpacing:1,borderStartEndRadius:1,borderStartStartRadius:1,borderTop:1,borderTopLeftRadius:1,borderTopRightRadius:1,borderTopWidth:1,borderWidth:1,bottom:1,columnGap:1,columnRule:1,columnRuleWidth:1,columnWidth:1,containIntrinsicSize:1,flexBasis:1,fontSize:1,gap:1,gridAutoColumns:1,gridAutoRows:1,gridTemplateColumns:1,gridTemplateRows:1,height:1,inlineSize:1,inset:1,insetBlock:1,insetBlockEnd:1,insetBlockStart:1,insetInline:1,insetInlineEnd:1,insetInlineStart:1,left:1,letterSpacing:1,margin:1,marginBlock:1,marginBlockEnd:1,marginBlockStart:1,marginBottom:1,marginInline:1,marginInlineEnd:1,marginInlineStart:1,marginLeft:1,marginRight:1,marginTop:1,maxBlockSize:1,maxHeight:1,maxInlineSize:1,maxWidth:1,minBlockSize:1,minHeight:1,minInlineSize:1,minWidth:1,offsetDistance:1,offsetRotate:1,outline:1,outlineOffset:1,outlineWidth:1,overflowClipMargin:1,padding:1,paddingBlock:1,paddingBlockEnd:1,paddingBlockStart:1,paddingBottom:1,paddingInline:1,paddingInlineEnd:1,paddingInlineStart:1,paddingLeft:1,paddingRight:1,paddingTop:1,perspective:1,right:1,rowGap:1,scrollMargin:1,scrollMarginBlock:1,scrollMarginBlockEnd:1,scrollMarginBlockStart:1,scrollMarginBottom:1,scrollMarginInline:1,scrollMarginInlineEnd:1,scrollMarginInlineStart:1,scrollMarginLeft:1,scrollMarginRight:1,scrollMarginTop:1,scrollPadding:1,scrollPaddingBlock:1,scrollPaddingBlockEnd:1,scrollPaddingBlockStart:1,scrollPaddingBottom:1,scrollPaddingInline:1,scrollPaddingInlineEnd:1,scrollPaddingInlineStart:1,scrollPaddingLeft:1,scrollPaddingRight:1,scrollPaddingTop:1,shapeMargin:1,textDecoration:1,textDecorationThickness:1,textIndent:1,textUnderlineOffset:1,top:1,transitionDelay:1,transitionDuration:1,verticalAlign:1,width:1,wordSpacing:1},z=e=>String.fromCharCode(e+(e>25?39:97)),W=e=>(e=>{let t,n=\"\";for(t=Math.abs(e);t>52;t=t/52|0)n=z(t%52)+n;return z(t%52)+n})(((e,t)=>{let n=t.length;for(;n;)e=33*e^t.charCodeAt(--n);return e})(5381,JSON.stringify(e))>>>0),j=[\"themed\",\"global\",\"styled\",\"onevar\",\"resonevar\",\"allvar\",\"inline\"],E=e=>{if(e.href&&!e.href.startsWith(location.origin))return!1;try{return!!e.cssRules}catch(e){return!1}},T=e=>{let t;const n=()=>{const{cssRules:e}=t.sheet;return[].map.call(e,((n,r)=>{const{cssText:i}=n;let o=\"\";if(i.startsWith(\"--sxs\"))return\"\";if(e[r-1]&&(o=e[r-1].cssText).startsWith(\"--sxs\")){if(!n.cssRules.length)return\"\";for(const e in t.rules)if(t.rules[e].group===n)return`--sxs{--sxs:${[...t.rules[e].cache].join(\" \")}}${i}`;return n.cssRules.length?`${o}${i}`:\"\"}return i})).join(\"\")},r=()=>{if(t){const{rules:e,sheet:n}=t;if(!n.deleteRule){for(;3===Object(Object(n.cssRules)[0]).type;)n.cssRules.splice(0,1);n.cssRules=[]}for(const t in e)delete e[t]}const i=Object(e).styleSheets||[];for(const e of i)if(E(e)){for(let i=0,o=e.cssRules;o[i];++i){const l=Object(o[i]);if(1!==l.type)continue;const s=Object(o[i+1]);if(4!==s.type)continue;++i;const{cssText:a}=l;if(!a.startsWith(\"--sxs\"))continue;const c=a.slice(14,-3).trim().split(/\\s+/),d=j[c[0]];d&&(t||(t={sheet:e,reset:r,rules:{},toString:n}),t.rules[d]={group:s,index:i,cache:new Set(c)})}if(t)break}if(!t){const i=(e,t)=>({type:t,cssRules:[],insertRule(e,t){this.cssRules.splice(t,0,i(e,{import:3,undefined:1}[(e.toLowerCase().match(/^@([a-z]+)/)||[])[1]]||4))},get cssText(){return\"@media{}\"===e?`@media{${[].map.call(this.cssRules,(e=>e.cssText)).join(\"\")}}`:e}});t={sheet:e?(e.head||e).appendChild(document.createElement(\"style\")).sheet:i(\"\",\"text/css\"),rules:{},reset:r,toString:n}}const{sheet:o,rules:l}=t;for(let e=j.length-1;e>=0;--e){const t=j[e];if(!l[t]){const n=j[e+1],r=l[n]?l[n].index:o.cssRules.length;o.insertRule(\"@media{}\",r),o.insertRule(`--sxs{--sxs:${e}}`,r),l[t]={group:o.cssRules[r+1],index:r,cache:new Set([e])}}v(l[t])}};return r(),t},v=e=>{const t=e.group;let n=t.cssRules.length;e.apply=e=>{try{t.insertRule(e,n),++n}catch(e){}}},M=Symbol(),w=l(),C=(e,t)=>w(e,(()=>(...n)=>{let r={type:null,composers:new Set};for(const t of n)if(null!=t)if(t[s]){null==r.type&&(r.type=t[s].type);for(const e of t[s].composers)r.composers.add(e)}else t.constructor!==Object||t.$$typeof?null==r.type&&(r.type=t):r.composers.add(P(t,e));return null==r.type&&(r.type=\"span\"),r.composers.size||r.composers.add([\"PJLV\",{},[],[],{},[]]),L(e,r,t)})),P=({variants:e,compoundVariants:t,defaultVariants:n,...r},i)=>{const o=`${k(i.prefix)}c-${W(r)}`,l=[],s=[],a=Object.create(null),g=[];for(const e in n)a[e]=String(n[e]);if(\"object\"==typeof e&&e)for(const t in e){p=a,u=t,d.call(p,u)||(a[t]=\"undefined\");const n=e[t];for(const e in n){const r={[t]:String(e)};\"undefined\"===String(e)&&g.push(t);const i=n[e],o=[r,i,!c(i)];l.push(o)}}var p,u;if(\"object\"==typeof t&&t)for(const e of t){let{css:t,...n}=e;t=\"object\"==typeof t&&t||{};for(const e in n)n[e]=String(n[e]);const r=[n,t,!c(t)];s.push(r)}return[o,r,l,s,a,g]},L=(e,t,n)=>{const[r,i,o,l]=O(t.composers),c=\"function\"==typeof t.type||t.type.$$typeof?(e=>{function t(){for(let n=0;nt.rules[e]={apply:n=>t[M].push([e,n])})),t})(n):null,d=(c||n).rules,g=`.${r}${i.length>1?`:where(.${i.slice(1).join(\".\")})`:\"\"}`,p=s=>{s=\"object\"==typeof s&&s||D;const{css:a,...p}=s,u={};for(const e in o)if(delete p[e],e in s){let t=s[e];\"object\"==typeof t&&t?u[e]={\"@initial\":o[e],...t}:(t=String(t),u[e]=\"undefined\"!==t||l.has(e)?t:o[e])}else u[e]=o[e];const h=new Set([...i]);for(const[r,i,o,l]of t.composers){n.rules.styled.cache.has(r)||(n.rules.styled.cache.add(r),x(i,[`.${r}`],[],e,(e=>{d.styled.apply(e)})));const t=A(o,u,e.media),s=A(l,u,e.media,!0);for(const i of t)if(void 0!==i)for(const[t,o,l]of i){const i=`${r}-${W(o)}-${t}`;h.add(i);const s=(l?n.rules.resonevar:n.rules.onevar).cache,a=l?d.resonevar:d.onevar;s.has(i)||(s.add(i),x(o,[`.${i}`],[],e,(e=>{a.apply(e)})))}for(const t of s)if(void 0!==t)for(const[i,o]of t){const t=`${r}-${W(o)}-${i}`;h.add(t),n.rules.allvar.cache.has(t)||(n.rules.allvar.cache.add(t),x(o,[`.${t}`],[],e,(e=>{d.allvar.apply(e)})))}}if(\"object\"==typeof a&&a){const t=`${r}-i${W(a)}-css`;h.add(t),n.rules.inline.cache.has(t)||(n.rules.inline.cache.add(t),x(a,[`.${t}`],[],e,(e=>{d.inline.apply(e)})))}for(const e of String(s.className||\"\").trim().split(/\\s+/))e&&h.add(e);const f=p.className=[...h].join(\" \");return{type:t.type,className:f,selector:g,props:p,toString:()=>f,deferredInjector:c}};return a(p,{className:r,selector:g,[s]:t,toString:()=>(n.rules.styled.cache.has(r)||p(),r)})},O=e=>{let t=\"\";const n=[],r={},i=[];for(const[o,,,,l,s]of e){\"\"===t&&(t=o),n.push(o),i.push(...s);for(const e in l){const t=l[e];(void 0===r[e]||\"undefined\"!==t||s.includes(t))&&(r[e]=t)}}return[t,n,r,new Set(i)]},A=(e,t,n,r)=>{const i=[];e:for(let[o,l,s]of e){if(s)continue;let e,a=0,c=!1;for(e in o){const r=o[e];let i=t[e];if(i!==r){if(\"object\"!=typeof i||!i)continue e;{let e,t,o=0;for(const l in i){if(r===String(i[l])){if(\"@initial\"!==l){const e=l.slice(1);(t=t||[]).push(e in n?n[e]:l.replace(/^@media ?/,\"\")),c=!0}a+=o,e=!0}++o}if(t&&t.length&&(l={[\"@media \"+t.join(\", \")]:l}),!e)continue e}}}(i[a]=i[a]||[]).push([r?\"cv\":`${e}-${o[e]}`,l,c])}return i},D={},H=l(),N=(e,t)=>H(e,(()=>(...n)=>{const r=()=>{for(let r of n){r=\"object\"==typeof r&&r||{};let n=W(r);if(!t.rules.global.cache.has(n)){if(t.rules.global.cache.add(n),\"@import\"in r){let e=[].indexOf.call(t.sheet.cssRules,t.rules.themed.group)-1;for(let n of[].concat(r[\"@import\"]))n=n.includes('\"')||n.includes(\"'\")?n:`\"${n}\"`,t.sheet.insertRule(`@import ${n};`,e++);delete r[\"@import\"]}x(r,[],[],e,(e=>{t.rules.global.apply(e)}))}}return\"\"};return a(r,{toString:r})})),V=l(),G=(e,t)=>V(e,(()=>n=>{const r=`${k(e.prefix)}k-${W(n)}`,i=()=>{if(!t.rules.global.cache.has(r)){t.rules.global.cache.add(r);const i=[];x(n,[],[],e,(e=>i.push(e)));const o=`@keyframes ${r}{${i.join(\"\")}}`;t.rules.global.apply(o)}return r};return a(i,{get name(){return i()},toString:i})})),F=class{constructor(e,t,n,r){this.token=null==e?\"\":String(e),this.value=null==t?\"\":String(t),this.scale=null==n?\"\":String(n),this.prefix=null==r?\"\":String(r)}get computedValue(){return\"var(\"+this.variable+\")\"}get variable(){return\"--\"+k(this.prefix)+k(this.scale)+this.token}toString(){return this.computedValue}},J=l(),U=(e,t)=>J(e,(()=>(n,r)=>{r=\"object\"==typeof n&&n||Object(r);const i=`.${n=(n=\"string\"==typeof n?n:\"\")||`${k(e.prefix)}t-${W(r)}`}`,o={},l=[];for(const t in r){o[t]={};for(const n in r[t]){const i=`--${k(e.prefix)}${t}-${n}`,s=y(String(r[t][n]),e.prefix,t);o[t][n]=new F(n,s,t,e.prefix),l.push(`${i}:${s}`)}}const s=()=>{if(l.length&&!t.rules.themed.cache.has(n)){t.rules.themed.cache.add(n);const i=`${r===e.theme?\":root,\":\"\"}.${n}{${l.join(\";\")}}`;t.rules.themed.apply(i)}return n};return{...o,get className(){return s()},selector:i,toString:s}})),Z=l(),X=e=>{let t=!1;const n=Z(e,(e=>{t=!0;const n=\"prefix\"in(e=\"object\"==typeof e&&e||{})?String(e.prefix):\"\",r=\"object\"==typeof e.media&&e.media||{},o=\"object\"==typeof e.root?e.root||null:globalThis.document||null,l=\"object\"==typeof e.theme&&e.theme||{},s={prefix:n,media:r,theme:l,themeMap:\"object\"==typeof e.themeMap&&e.themeMap||{...i},utils:\"object\"==typeof e.utils&&e.utils||{}},a=T(o),c={css:C(s,a),globalCss:N(s,a),keyframes:G(s,a),createTheme:U(s,a),reset(){a.reset(),c.theme.toString()},theme:{},sheet:a,config:s,prefix:n,getCssText:a.toString,toString:a.toString};return String(c.theme=c.createTheme(l)),c}));return t||n.reset(),n},Y=()=>e||(e=X()),q=(...e)=>Y().createTheme(...e),K=(...e)=>Y().globalCss(...e),Q=(...e)=>Y().keyframes(...e),_=(...e)=>Y().css(...e);export{X as createStitches,q as createTheme,_ as css,i as defaultThemeMap,K as globalCss,Q as keyframes};\n//# sourceMappingUrl=index.map","import { _ as __awaiter, a as __generator } from './utils-52664384.mjs';\nexport { S as SandpackLogLevel, d as addPackageJSONIfNeeded, c as createError, b as createPackageJSON, e as extractErrorDetails, f as normalizePath, n as nullthrows } from './utils-52664384.mjs';\nimport 'outvariant';\n\nfunction loadSandpackClient(iframeSelector, sandboxSetup, options) {\n var _a;\n if (options === void 0) { options = {}; }\n return __awaiter(this, void 0, void 0, function () {\n var template, Client, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n template = (_a = sandboxSetup.template) !== null && _a !== void 0 ? _a : \"parcel\";\n _b = template;\n switch (_b) {\n case \"node\": return [3 /*break*/, 1];\n case \"static\": return [3 /*break*/, 3];\n }\n return [3 /*break*/, 5];\n case 1: return [4 /*yield*/, import('./clients/node/index.mjs').then(function (m) { return m.SandpackNode; })];\n case 2:\n Client = _c.sent();\n return [3 /*break*/, 7];\n case 3: return [4 /*yield*/, import('./index-599aeaf7.mjs').then(function (m) { return m.SandpackStatic; })];\n case 4:\n Client = _c.sent();\n return [3 /*break*/, 7];\n case 5: return [4 /*yield*/, import('./clients/runtime/index.mjs').then(function (m) { return m.SandpackRuntime; })];\n case 6:\n Client = _c.sent();\n _c.label = 7;\n case 7: return [2 /*return*/, new Client(iframeSelector, sandboxSetup, options)];\n }\n });\n });\n}\n\nexport { loadSandpackClient };\n","/**\nThe data structure for documents. @nonabstract\n*/\nclass Text {\n /**\n Get the line description around the given position.\n */\n lineAt(pos) {\n if (pos < 0 || pos > this.length)\n throw new RangeError(`Invalid position ${pos} in document of length ${this.length}`);\n return this.lineInner(pos, false, 1, 0);\n }\n /**\n Get the description for the given (1-based) line number.\n */\n line(n) {\n if (n < 1 || n > this.lines)\n throw new RangeError(`Invalid line number ${n} in ${this.lines}-line document`);\n return this.lineInner(n, true, 1, 0);\n }\n /**\n Replace a range of the text with the given content.\n */\n replace(from, to, text) {\n [from, to] = clip(this, from, to);\n let parts = [];\n this.decompose(0, from, parts, 2 /* Open.To */);\n if (text.length)\n text.decompose(0, text.length, parts, 1 /* Open.From */ | 2 /* Open.To */);\n this.decompose(to, this.length, parts, 1 /* Open.From */);\n return TextNode.from(parts, this.length - (to - from) + text.length);\n }\n /**\n Append another document to this one.\n */\n append(other) {\n return this.replace(this.length, this.length, other);\n }\n /**\n Retrieve the text between the given points.\n */\n slice(from, to = this.length) {\n [from, to] = clip(this, from, to);\n let parts = [];\n this.decompose(from, to, parts, 0);\n return TextNode.from(parts, to - from);\n }\n /**\n Test whether this text is equal to another instance.\n */\n eq(other) {\n if (other == this)\n return true;\n if (other.length != this.length || other.lines != this.lines)\n return false;\n let start = this.scanIdentical(other, 1), end = this.length - this.scanIdentical(other, -1);\n let a = new RawTextCursor(this), b = new RawTextCursor(other);\n for (let skip = start, pos = start;;) {\n a.next(skip);\n b.next(skip);\n skip = 0;\n if (a.lineBreak != b.lineBreak || a.done != b.done || a.value != b.value)\n return false;\n pos += a.value.length;\n if (a.done || pos >= end)\n return true;\n }\n }\n /**\n Iterate over the text. When `dir` is `-1`, iteration happens\n from end to start. This will return lines and the breaks between\n them as separate strings.\n */\n iter(dir = 1) { return new RawTextCursor(this, dir); }\n /**\n Iterate over a range of the text. When `from` > `to`, the\n iterator will run in reverse.\n */\n iterRange(from, to = this.length) { return new PartialTextCursor(this, from, to); }\n /**\n Return a cursor that iterates over the given range of lines,\n _without_ returning the line breaks between, and yielding empty\n strings for empty lines.\n \n When `from` and `to` are given, they should be 1-based line numbers.\n */\n iterLines(from, to) {\n let inner;\n if (from == null) {\n inner = this.iter();\n }\n else {\n if (to == null)\n to = this.lines + 1;\n let start = this.line(from).from;\n inner = this.iterRange(start, Math.max(start, to == this.lines + 1 ? this.length : to <= 1 ? 0 : this.line(to - 1).to));\n }\n return new LineCursor(inner);\n }\n /**\n Return the document as a string, using newline characters to\n separate lines.\n */\n toString() { return this.sliceString(0); }\n /**\n Convert the document to an array of lines (which can be\n deserialized again via [`Text.of`](https://codemirror.net/6/docs/ref/#state.Text^of)).\n */\n toJSON() {\n let lines = [];\n this.flatten(lines);\n return lines;\n }\n /**\n @internal\n */\n constructor() { }\n /**\n Create a `Text` instance for the given array of lines.\n */\n static of(text) {\n if (text.length == 0)\n throw new RangeError(\"A document must have at least one line\");\n if (text.length == 1 && !text[0])\n return Text.empty;\n return text.length <= 32 /* Tree.Branch */ ? new TextLeaf(text) : TextNode.from(TextLeaf.split(text, []));\n }\n}\n// Leaves store an array of line strings. There are always line breaks\n// between these strings. Leaves are limited in size and have to be\n// contained in TextNode instances for bigger documents.\nclass TextLeaf extends Text {\n constructor(text, length = textLength(text)) {\n super();\n this.text = text;\n this.length = length;\n }\n get lines() { return this.text.length; }\n get children() { return null; }\n lineInner(target, isLine, line, offset) {\n for (let i = 0;; i++) {\n let string = this.text[i], end = offset + string.length;\n if ((isLine ? line : end) >= target)\n return new Line(offset, end, line, string);\n offset = end + 1;\n line++;\n }\n }\n decompose(from, to, target, open) {\n let text = from <= 0 && to >= this.length ? this\n : new TextLeaf(sliceText(this.text, from, to), Math.min(to, this.length) - Math.max(0, from));\n if (open & 1 /* Open.From */) {\n let prev = target.pop();\n let joined = appendText(text.text, prev.text.slice(), 0, text.length);\n if (joined.length <= 32 /* Tree.Branch */) {\n target.push(new TextLeaf(joined, prev.length + text.length));\n }\n else {\n let mid = joined.length >> 1;\n target.push(new TextLeaf(joined.slice(0, mid)), new TextLeaf(joined.slice(mid)));\n }\n }\n else {\n target.push(text);\n }\n }\n replace(from, to, text) {\n if (!(text instanceof TextLeaf))\n return super.replace(from, to, text);\n [from, to] = clip(this, from, to);\n let lines = appendText(this.text, appendText(text.text, sliceText(this.text, 0, from)), to);\n let newLen = this.length + text.length - (to - from);\n if (lines.length <= 32 /* Tree.Branch */)\n return new TextLeaf(lines, newLen);\n return TextNode.from(TextLeaf.split(lines, []), newLen);\n }\n sliceString(from, to = this.length, lineSep = \"\\n\") {\n [from, to] = clip(this, from, to);\n let result = \"\";\n for (let pos = 0, i = 0; pos <= to && i < this.text.length; i++) {\n let line = this.text[i], end = pos + line.length;\n if (pos > from && i)\n result += lineSep;\n if (from < end && to > pos)\n result += line.slice(Math.max(0, from - pos), to - pos);\n pos = end + 1;\n }\n return result;\n }\n flatten(target) {\n for (let line of this.text)\n target.push(line);\n }\n scanIdentical() { return 0; }\n static split(text, target) {\n let part = [], len = -1;\n for (let line of text) {\n part.push(line);\n len += line.length + 1;\n if (part.length == 32 /* Tree.Branch */) {\n target.push(new TextLeaf(part, len));\n part = [];\n len = -1;\n }\n }\n if (len > -1)\n target.push(new TextLeaf(part, len));\n return target;\n }\n}\n// Nodes provide the tree structure of the `Text` type. They store a\n// number of other nodes or leaves, taking care to balance themselves\n// on changes. There are implied line breaks _between_ the children of\n// a node (but not before the first or after the last child).\nclass TextNode extends Text {\n constructor(children, length) {\n super();\n this.children = children;\n this.length = length;\n this.lines = 0;\n for (let child of children)\n this.lines += child.lines;\n }\n lineInner(target, isLine, line, offset) {\n for (let i = 0;; i++) {\n let child = this.children[i], end = offset + child.length, endLine = line + child.lines - 1;\n if ((isLine ? endLine : end) >= target)\n return child.lineInner(target, isLine, line, offset);\n offset = end + 1;\n line = endLine + 1;\n }\n }\n decompose(from, to, target, open) {\n for (let i = 0, pos = 0; pos <= to && i < this.children.length; i++) {\n let child = this.children[i], end = pos + child.length;\n if (from <= end && to >= pos) {\n let childOpen = open & ((pos <= from ? 1 /* Open.From */ : 0) | (end >= to ? 2 /* Open.To */ : 0));\n if (pos >= from && end <= to && !childOpen)\n target.push(child);\n else\n child.decompose(from - pos, to - pos, target, childOpen);\n }\n pos = end + 1;\n }\n }\n replace(from, to, text) {\n [from, to] = clip(this, from, to);\n if (text.lines < this.lines)\n for (let i = 0, pos = 0; i < this.children.length; i++) {\n let child = this.children[i], end = pos + child.length;\n // Fast path: if the change only affects one child and the\n // child's size remains in the acceptable range, only update\n // that child\n if (from >= pos && to <= end) {\n let updated = child.replace(from - pos, to - pos, text);\n let totalLines = this.lines - child.lines + updated.lines;\n if (updated.lines < (totalLines >> (5 /* Tree.BranchShift */ - 1)) &&\n updated.lines > (totalLines >> (5 /* Tree.BranchShift */ + 1))) {\n let copy = this.children.slice();\n copy[i] = updated;\n return new TextNode(copy, this.length - (to - from) + text.length);\n }\n return super.replace(pos, end, updated);\n }\n pos = end + 1;\n }\n return super.replace(from, to, text);\n }\n sliceString(from, to = this.length, lineSep = \"\\n\") {\n [from, to] = clip(this, from, to);\n let result = \"\";\n for (let i = 0, pos = 0; i < this.children.length && pos <= to; i++) {\n let child = this.children[i], end = pos + child.length;\n if (pos > from && i)\n result += lineSep;\n if (from < end && to > pos)\n result += child.sliceString(from - pos, to - pos, lineSep);\n pos = end + 1;\n }\n return result;\n }\n flatten(target) {\n for (let child of this.children)\n child.flatten(target);\n }\n scanIdentical(other, dir) {\n if (!(other instanceof TextNode))\n return 0;\n let length = 0;\n let [iA, iB, eA, eB] = dir > 0 ? [0, 0, this.children.length, other.children.length]\n : [this.children.length - 1, other.children.length - 1, -1, -1];\n for (;; iA += dir, iB += dir) {\n if (iA == eA || iB == eB)\n return length;\n let chA = this.children[iA], chB = other.children[iB];\n if (chA != chB)\n return length + chA.scanIdentical(chB, dir);\n length += chA.length + 1;\n }\n }\n static from(children, length = children.reduce((l, ch) => l + ch.length + 1, -1)) {\n let lines = 0;\n for (let ch of children)\n lines += ch.lines;\n if (lines < 32 /* Tree.Branch */) {\n let flat = [];\n for (let ch of children)\n ch.flatten(flat);\n return new TextLeaf(flat, length);\n }\n let chunk = Math.max(32 /* Tree.Branch */, lines >> 5 /* Tree.BranchShift */), maxChunk = chunk << 1, minChunk = chunk >> 1;\n let chunked = [], currentLines = 0, currentLen = -1, currentChunk = [];\n function add(child) {\n let last;\n if (child.lines > maxChunk && child instanceof TextNode) {\n for (let node of child.children)\n add(node);\n }\n else if (child.lines > minChunk && (currentLines > minChunk || !currentLines)) {\n flush();\n chunked.push(child);\n }\n else if (child instanceof TextLeaf && currentLines &&\n (last = currentChunk[currentChunk.length - 1]) instanceof TextLeaf &&\n child.lines + last.lines <= 32 /* Tree.Branch */) {\n currentLines += child.lines;\n currentLen += child.length + 1;\n currentChunk[currentChunk.length - 1] = new TextLeaf(last.text.concat(child.text), last.length + 1 + child.length);\n }\n else {\n if (currentLines + child.lines > chunk)\n flush();\n currentLines += child.lines;\n currentLen += child.length + 1;\n currentChunk.push(child);\n }\n }\n function flush() {\n if (currentLines == 0)\n return;\n chunked.push(currentChunk.length == 1 ? currentChunk[0] : TextNode.from(currentChunk, currentLen));\n currentLen = -1;\n currentLines = currentChunk.length = 0;\n }\n for (let child of children)\n add(child);\n flush();\n return chunked.length == 1 ? chunked[0] : new TextNode(chunked, length);\n }\n}\nText.empty = /*@__PURE__*/new TextLeaf([\"\"], 0);\nfunction textLength(text) {\n let length = -1;\n for (let line of text)\n length += line.length + 1;\n return length;\n}\nfunction appendText(text, target, from = 0, to = 1e9) {\n for (let pos = 0, i = 0, first = true; i < text.length && pos <= to; i++) {\n let line = text[i], end = pos + line.length;\n if (end >= from) {\n if (end > to)\n line = line.slice(0, to - pos);\n if (pos < from)\n line = line.slice(from - pos);\n if (first) {\n target[target.length - 1] += line;\n first = false;\n }\n else\n target.push(line);\n }\n pos = end + 1;\n }\n return target;\n}\nfunction sliceText(text, from, to) {\n return appendText(text, [\"\"], from, to);\n}\nclass RawTextCursor {\n constructor(text, dir = 1) {\n this.dir = dir;\n this.done = false;\n this.lineBreak = false;\n this.value = \"\";\n this.nodes = [text];\n this.offsets = [dir > 0 ? 1 : (text instanceof TextLeaf ? text.text.length : text.children.length) << 1];\n }\n nextInner(skip, dir) {\n this.done = this.lineBreak = false;\n for (;;) {\n let last = this.nodes.length - 1;\n let top = this.nodes[last], offsetValue = this.offsets[last], offset = offsetValue >> 1;\n let size = top instanceof TextLeaf ? top.text.length : top.children.length;\n if (offset == (dir > 0 ? size : 0)) {\n if (last == 0) {\n this.done = true;\n this.value = \"\";\n return this;\n }\n if (dir > 0)\n this.offsets[last - 1]++;\n this.nodes.pop();\n this.offsets.pop();\n }\n else if ((offsetValue & 1) == (dir > 0 ? 0 : 1)) {\n this.offsets[last] += dir;\n if (skip == 0) {\n this.lineBreak = true;\n this.value = \"\\n\";\n return this;\n }\n skip--;\n }\n else if (top instanceof TextLeaf) {\n // Move to the next string\n let next = top.text[offset + (dir < 0 ? -1 : 0)];\n this.offsets[last] += dir;\n if (next.length > Math.max(0, skip)) {\n this.value = skip == 0 ? next : dir > 0 ? next.slice(skip) : next.slice(0, next.length - skip);\n return this;\n }\n skip -= next.length;\n }\n else {\n let next = top.children[offset + (dir < 0 ? -1 : 0)];\n if (skip > next.length) {\n skip -= next.length;\n this.offsets[last] += dir;\n }\n else {\n if (dir < 0)\n this.offsets[last]--;\n this.nodes.push(next);\n this.offsets.push(dir > 0 ? 1 : (next instanceof TextLeaf ? next.text.length : next.children.length) << 1);\n }\n }\n }\n }\n next(skip = 0) {\n if (skip < 0) {\n this.nextInner(-skip, (-this.dir));\n skip = this.value.length;\n }\n return this.nextInner(skip, this.dir);\n }\n}\nclass PartialTextCursor {\n constructor(text, start, end) {\n this.value = \"\";\n this.done = false;\n this.cursor = new RawTextCursor(text, start > end ? -1 : 1);\n this.pos = start > end ? text.length : 0;\n this.from = Math.min(start, end);\n this.to = Math.max(start, end);\n }\n nextInner(skip, dir) {\n if (dir < 0 ? this.pos <= this.from : this.pos >= this.to) {\n this.value = \"\";\n this.done = true;\n return this;\n }\n skip += Math.max(0, dir < 0 ? this.pos - this.to : this.from - this.pos);\n let limit = dir < 0 ? this.pos - this.from : this.to - this.pos;\n if (skip > limit)\n skip = limit;\n limit -= skip;\n let { value } = this.cursor.next(skip);\n this.pos += (value.length + skip) * dir;\n this.value = value.length <= limit ? value : dir < 0 ? value.slice(value.length - limit) : value.slice(0, limit);\n this.done = !this.value;\n return this;\n }\n next(skip = 0) {\n if (skip < 0)\n skip = Math.max(skip, this.from - this.pos);\n else if (skip > 0)\n skip = Math.min(skip, this.to - this.pos);\n return this.nextInner(skip, this.cursor.dir);\n }\n get lineBreak() { return this.cursor.lineBreak && this.value != \"\"; }\n}\nclass LineCursor {\n constructor(inner) {\n this.inner = inner;\n this.afterBreak = true;\n this.value = \"\";\n this.done = false;\n }\n next(skip = 0) {\n let { done, lineBreak, value } = this.inner.next(skip);\n if (done && this.afterBreak) {\n this.value = \"\";\n this.afterBreak = false;\n }\n else if (done) {\n this.done = true;\n this.value = \"\";\n }\n else if (lineBreak) {\n if (this.afterBreak) {\n this.value = \"\";\n }\n else {\n this.afterBreak = true;\n this.next();\n }\n }\n else {\n this.value = value;\n this.afterBreak = false;\n }\n return this;\n }\n get lineBreak() { return false; }\n}\nif (typeof Symbol != \"undefined\") {\n Text.prototype[Symbol.iterator] = function () { return this.iter(); };\n RawTextCursor.prototype[Symbol.iterator] = PartialTextCursor.prototype[Symbol.iterator] =\n LineCursor.prototype[Symbol.iterator] = function () { return this; };\n}\n/**\nThis type describes a line in the document. It is created\non-demand when lines are [queried](https://codemirror.net/6/docs/ref/#state.Text.lineAt).\n*/\nclass Line {\n /**\n @internal\n */\n constructor(\n /**\n The position of the start of the line.\n */\n from, \n /**\n The position at the end of the line (_before_ the line break,\n or at the end of document for the last line).\n */\n to, \n /**\n This line's line number (1-based).\n */\n number, \n /**\n The line's content.\n */\n text) {\n this.from = from;\n this.to = to;\n this.number = number;\n this.text = text;\n }\n /**\n The length of the line (not including any line break after it).\n */\n get length() { return this.to - this.from; }\n}\nfunction clip(text, from, to) {\n from = Math.max(0, Math.min(text.length, from));\n return [from, Math.max(from, Math.min(text.length, to))];\n}\n\n// Compressed representation of the Grapheme_Cluster_Break=Extend\n// information from\n// http://www.unicode.org/Public/13.0.0/ucd/auxiliary/GraphemeBreakProperty.txt.\n// Each pair of elements represents a range, as an offet from the\n// previous range and a length. Numbers are in base-36, with the empty\n// string being a shorthand for 1.\nlet extend = /*@__PURE__*/\"lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o\".split(\",\").map(s => s ? parseInt(s, 36) : 1);\n// Convert offsets into absolute values\nfor (let i = 1; i < extend.length; i++)\n extend[i] += extend[i - 1];\nfunction isExtendingChar(code) {\n for (let i = 1; i < extend.length; i += 2)\n if (extend[i] > code)\n return extend[i - 1] <= code;\n return false;\n}\nfunction isRegionalIndicator(code) {\n return code >= 0x1F1E6 && code <= 0x1F1FF;\n}\nconst ZWJ = 0x200d;\n/**\nReturns a next grapheme cluster break _after_ (not equal to)\n`pos`, if `forward` is true, or before otherwise. Returns `pos`\nitself if no further cluster break is available in the string.\nMoves across surrogate pairs, extending characters (when\n`includeExtending` is true), characters joined with zero-width\njoiners, and flag emoji.\n*/\nfunction findClusterBreak(str, pos, forward = true, includeExtending = true) {\n return (forward ? nextClusterBreak : prevClusterBreak)(str, pos, includeExtending);\n}\nfunction nextClusterBreak(str, pos, includeExtending) {\n if (pos == str.length)\n return pos;\n // If pos is in the middle of a surrogate pair, move to its start\n if (pos && surrogateLow(str.charCodeAt(pos)) && surrogateHigh(str.charCodeAt(pos - 1)))\n pos--;\n let prev = codePointAt(str, pos);\n pos += codePointSize(prev);\n while (pos < str.length) {\n let next = codePointAt(str, pos);\n if (prev == ZWJ || next == ZWJ || includeExtending && isExtendingChar(next)) {\n pos += codePointSize(next);\n prev = next;\n }\n else if (isRegionalIndicator(next)) {\n let countBefore = 0, i = pos - 2;\n while (i >= 0 && isRegionalIndicator(codePointAt(str, i))) {\n countBefore++;\n i -= 2;\n }\n if (countBefore % 2 == 0)\n break;\n else\n pos += 2;\n }\n else {\n break;\n }\n }\n return pos;\n}\nfunction prevClusterBreak(str, pos, includeExtending) {\n while (pos > 0) {\n let found = nextClusterBreak(str, pos - 2, includeExtending);\n if (found < pos)\n return found;\n pos--;\n }\n return 0;\n}\nfunction surrogateLow(ch) { return ch >= 0xDC00 && ch < 0xE000; }\nfunction surrogateHigh(ch) { return ch >= 0xD800 && ch < 0xDC00; }\n/**\nFind the code point at the given position in a string (like the\n[`codePointAt`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/codePointAt)\nstring method).\n*/\nfunction codePointAt(str, pos) {\n let code0 = str.charCodeAt(pos);\n if (!surrogateHigh(code0) || pos + 1 == str.length)\n return code0;\n let code1 = str.charCodeAt(pos + 1);\n if (!surrogateLow(code1))\n return code0;\n return ((code0 - 0xd800) << 10) + (code1 - 0xdc00) + 0x10000;\n}\n/**\nGiven a Unicode codepoint, return the JavaScript string that\nrespresents it (like\n[`String.fromCodePoint`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCodePoint)).\n*/\nfunction fromCodePoint(code) {\n if (code <= 0xffff)\n return String.fromCharCode(code);\n code -= 0x10000;\n return String.fromCharCode((code >> 10) + 0xd800, (code & 1023) + 0xdc00);\n}\n/**\nThe amount of positions a character takes up a JavaScript string.\n*/\nfunction codePointSize(code) { return code < 0x10000 ? 1 : 2; }\n\nconst DefaultSplit = /\\r\\n?|\\n/;\n/**\nDistinguishes different ways in which positions can be mapped.\n*/\nvar MapMode = /*@__PURE__*/(function (MapMode) {\n /**\n Map a position to a valid new position, even when its context\n was deleted.\n */\n MapMode[MapMode[\"Simple\"] = 0] = \"Simple\";\n /**\n Return null if deletion happens across the position.\n */\n MapMode[MapMode[\"TrackDel\"] = 1] = \"TrackDel\";\n /**\n Return null if the character _before_ the position is deleted.\n */\n MapMode[MapMode[\"TrackBefore\"] = 2] = \"TrackBefore\";\n /**\n Return null if the character _after_ the position is deleted.\n */\n MapMode[MapMode[\"TrackAfter\"] = 3] = \"TrackAfter\";\nreturn MapMode})(MapMode || (MapMode = {}));\n/**\nA change description is a variant of [change set](https://codemirror.net/6/docs/ref/#state.ChangeSet)\nthat doesn't store the inserted text. As such, it can't be\napplied, but is cheaper to store and manipulate.\n*/\nclass ChangeDesc {\n // Sections are encoded as pairs of integers. The first is the\n // length in the current document, and the second is -1 for\n // unaffected sections, and the length of the replacement content\n // otherwise. So an insertion would be (0, n>0), a deletion (n>0,\n // 0), and a replacement two positive numbers.\n /**\n @internal\n */\n constructor(\n /**\n @internal\n */\n sections) {\n this.sections = sections;\n }\n /**\n The length of the document before the change.\n */\n get length() {\n let result = 0;\n for (let i = 0; i < this.sections.length; i += 2)\n result += this.sections[i];\n return result;\n }\n /**\n The length of the document after the change.\n */\n get newLength() {\n let result = 0;\n for (let i = 0; i < this.sections.length; i += 2) {\n let ins = this.sections[i + 1];\n result += ins < 0 ? this.sections[i] : ins;\n }\n return result;\n }\n /**\n False when there are actual changes in this set.\n */\n get empty() { return this.sections.length == 0 || this.sections.length == 2 && this.sections[1] < 0; }\n /**\n Iterate over the unchanged parts left by these changes. `posA`\n provides the position of the range in the old document, `posB`\n the new position in the changed document.\n */\n iterGaps(f) {\n for (let i = 0, posA = 0, posB = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n if (ins < 0) {\n f(posA, posB, len);\n posB += len;\n }\n else {\n posB += ins;\n }\n posA += len;\n }\n }\n /**\n Iterate over the ranges changed by these changes. (See\n [`ChangeSet.iterChanges`](https://codemirror.net/6/docs/ref/#state.ChangeSet.iterChanges) for a\n variant that also provides you with the inserted text.)\n `fromA`/`toA` provides the extent of the change in the starting\n document, `fromB`/`toB` the extent of the replacement in the\n changed document.\n \n When `individual` is true, adjacent changes (which are kept\n separate for [position mapping](https://codemirror.net/6/docs/ref/#state.ChangeDesc.mapPos)) are\n reported separately.\n */\n iterChangedRanges(f, individual = false) {\n iterChanges(this, f, individual);\n }\n /**\n Get a description of the inverted form of these changes.\n */\n get invertedDesc() {\n let sections = [];\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n if (ins < 0)\n sections.push(len, ins);\n else\n sections.push(ins, len);\n }\n return new ChangeDesc(sections);\n }\n /**\n Compute the combined effect of applying another set of changes\n after this one. The length of the document after this set should\n match the length before `other`.\n */\n composeDesc(other) { return this.empty ? other : other.empty ? this : composeSets(this, other); }\n /**\n Map this description, which should start with the same document\n as `other`, over another set of changes, so that it can be\n applied after it. When `before` is true, map as if the changes\n in `other` happened before the ones in `this`.\n */\n mapDesc(other, before = false) { return other.empty ? this : mapSet(this, other, before); }\n mapPos(pos, assoc = -1, mode = MapMode.Simple) {\n let posA = 0, posB = 0;\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++], endA = posA + len;\n if (ins < 0) {\n if (endA > pos)\n return posB + (pos - posA);\n posB += len;\n }\n else {\n if (mode != MapMode.Simple && endA >= pos &&\n (mode == MapMode.TrackDel && posA < pos && endA > pos ||\n mode == MapMode.TrackBefore && posA < pos ||\n mode == MapMode.TrackAfter && endA > pos))\n return null;\n if (endA > pos || endA == pos && assoc < 0 && !len)\n return pos == posA || assoc < 0 ? posB : posB + ins;\n posB += ins;\n }\n posA = endA;\n }\n if (pos > posA)\n throw new RangeError(`Position ${pos} is out of range for changeset of length ${posA}`);\n return posB;\n }\n /**\n Check whether these changes touch a given range. When one of the\n changes entirely covers the range, the string `\"cover\"` is\n returned.\n */\n touchesRange(from, to = from) {\n for (let i = 0, pos = 0; i < this.sections.length && pos <= to;) {\n let len = this.sections[i++], ins = this.sections[i++], end = pos + len;\n if (ins >= 0 && pos <= to && end >= from)\n return pos < from && end > to ? \"cover\" : true;\n pos = end;\n }\n return false;\n }\n /**\n @internal\n */\n toString() {\n let result = \"\";\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n result += (result ? \" \" : \"\") + len + (ins >= 0 ? \":\" + ins : \"\");\n }\n return result;\n }\n /**\n Serialize this change desc to a JSON-representable value.\n */\n toJSON() { return this.sections; }\n /**\n Create a change desc from its JSON representation (as produced\n by [`toJSON`](https://codemirror.net/6/docs/ref/#state.ChangeDesc.toJSON).\n */\n static fromJSON(json) {\n if (!Array.isArray(json) || json.length % 2 || json.some(a => typeof a != \"number\"))\n throw new RangeError(\"Invalid JSON representation of ChangeDesc\");\n return new ChangeDesc(json);\n }\n /**\n @internal\n */\n static create(sections) { return new ChangeDesc(sections); }\n}\n/**\nA change set represents a group of modifications to a document. It\nstores the document length, and can only be applied to documents\nwith exactly that length.\n*/\nclass ChangeSet extends ChangeDesc {\n constructor(sections, \n /**\n @internal\n */\n inserted) {\n super(sections);\n this.inserted = inserted;\n }\n /**\n Apply the changes to a document, returning the modified\n document.\n */\n apply(doc) {\n if (this.length != doc.length)\n throw new RangeError(\"Applying change set to a document with the wrong length\");\n iterChanges(this, (fromA, toA, fromB, _toB, text) => doc = doc.replace(fromB, fromB + (toA - fromA), text), false);\n return doc;\n }\n mapDesc(other, before = false) { return mapSet(this, other, before, true); }\n /**\n Given the document as it existed _before_ the changes, return a\n change set that represents the inverse of this set, which could\n be used to go from the document created by the changes back to\n the document as it existed before the changes.\n */\n invert(doc) {\n let sections = this.sections.slice(), inserted = [];\n for (let i = 0, pos = 0; i < sections.length; i += 2) {\n let len = sections[i], ins = sections[i + 1];\n if (ins >= 0) {\n sections[i] = ins;\n sections[i + 1] = len;\n let index = i >> 1;\n while (inserted.length < index)\n inserted.push(Text.empty);\n inserted.push(len ? doc.slice(pos, pos + len) : Text.empty);\n }\n pos += len;\n }\n return new ChangeSet(sections, inserted);\n }\n /**\n Combine two subsequent change sets into a single set. `other`\n must start in the document produced by `this`. If `this` goes\n `docA` → `docB` and `other` represents `docB` → `docC`, the\n returned value will represent the change `docA` → `docC`.\n */\n compose(other) { return this.empty ? other : other.empty ? this : composeSets(this, other, true); }\n /**\n Given another change set starting in the same document, maps this\n change set over the other, producing a new change set that can be\n applied to the document produced by applying `other`. When\n `before` is `true`, order changes as if `this` comes before\n `other`, otherwise (the default) treat `other` as coming first.\n \n Given two changes `A` and `B`, `A.compose(B.map(A))` and\n `B.compose(A.map(B, true))` will produce the same document. This\n provides a basic form of [operational\n transformation](https://en.wikipedia.org/wiki/Operational_transformation),\n and can be used for collaborative editing.\n */\n map(other, before = false) { return other.empty ? this : mapSet(this, other, before, true); }\n /**\n Iterate over the changed ranges in the document, calling `f` for\n each, with the range in the original document (`fromA`-`toA`)\n and the range that replaces it in the new document\n (`fromB`-`toB`).\n \n When `individual` is true, adjacent changes are reported\n separately.\n */\n iterChanges(f, individual = false) {\n iterChanges(this, f, individual);\n }\n /**\n Get a [change description](https://codemirror.net/6/docs/ref/#state.ChangeDesc) for this change\n set.\n */\n get desc() { return ChangeDesc.create(this.sections); }\n /**\n @internal\n */\n filter(ranges) {\n let resultSections = [], resultInserted = [], filteredSections = [];\n let iter = new SectionIter(this);\n done: for (let i = 0, pos = 0;;) {\n let next = i == ranges.length ? 1e9 : ranges[i++];\n while (pos < next || pos == next && iter.len == 0) {\n if (iter.done)\n break done;\n let len = Math.min(iter.len, next - pos);\n addSection(filteredSections, len, -1);\n let ins = iter.ins == -1 ? -1 : iter.off == 0 ? iter.ins : 0;\n addSection(resultSections, len, ins);\n if (ins > 0)\n addInsert(resultInserted, resultSections, iter.text);\n iter.forward(len);\n pos += len;\n }\n let end = ranges[i++];\n while (pos < end) {\n if (iter.done)\n break done;\n let len = Math.min(iter.len, end - pos);\n addSection(resultSections, len, -1);\n addSection(filteredSections, len, iter.ins == -1 ? -1 : iter.off == 0 ? iter.ins : 0);\n iter.forward(len);\n pos += len;\n }\n }\n return { changes: new ChangeSet(resultSections, resultInserted),\n filtered: ChangeDesc.create(filteredSections) };\n }\n /**\n Serialize this change set to a JSON-representable value.\n */\n toJSON() {\n let parts = [];\n for (let i = 0; i < this.sections.length; i += 2) {\n let len = this.sections[i], ins = this.sections[i + 1];\n if (ins < 0)\n parts.push(len);\n else if (ins == 0)\n parts.push([len]);\n else\n parts.push([len].concat(this.inserted[i >> 1].toJSON()));\n }\n return parts;\n }\n /**\n Create a change set for the given changes, for a document of the\n given length, using `lineSep` as line separator.\n */\n static of(changes, length, lineSep) {\n let sections = [], inserted = [], pos = 0;\n let total = null;\n function flush(force = false) {\n if (!force && !sections.length)\n return;\n if (pos < length)\n addSection(sections, length - pos, -1);\n let set = new ChangeSet(sections, inserted);\n total = total ? total.compose(set.map(total)) : set;\n sections = [];\n inserted = [];\n pos = 0;\n }\n function process(spec) {\n if (Array.isArray(spec)) {\n for (let sub of spec)\n process(sub);\n }\n else if (spec instanceof ChangeSet) {\n if (spec.length != length)\n throw new RangeError(`Mismatched change set length (got ${spec.length}, expected ${length})`);\n flush();\n total = total ? total.compose(spec.map(total)) : spec;\n }\n else {\n let { from, to = from, insert } = spec;\n if (from > to || from < 0 || to > length)\n throw new RangeError(`Invalid change range ${from} to ${to} (in doc of length ${length})`);\n let insText = !insert ? Text.empty : typeof insert == \"string\" ? Text.of(insert.split(lineSep || DefaultSplit)) : insert;\n let insLen = insText.length;\n if (from == to && insLen == 0)\n return;\n if (from < pos)\n flush();\n if (from > pos)\n addSection(sections, from - pos, -1);\n addSection(sections, to - from, insLen);\n addInsert(inserted, sections, insText);\n pos = to;\n }\n }\n process(changes);\n flush(!total);\n return total;\n }\n /**\n Create an empty changeset of the given length.\n */\n static empty(length) {\n return new ChangeSet(length ? [length, -1] : [], []);\n }\n /**\n Create a changeset from its JSON representation (as produced by\n [`toJSON`](https://codemirror.net/6/docs/ref/#state.ChangeSet.toJSON).\n */\n static fromJSON(json) {\n if (!Array.isArray(json))\n throw new RangeError(\"Invalid JSON representation of ChangeSet\");\n let sections = [], inserted = [];\n for (let i = 0; i < json.length; i++) {\n let part = json[i];\n if (typeof part == \"number\") {\n sections.push(part, -1);\n }\n else if (!Array.isArray(part) || typeof part[0] != \"number\" || part.some((e, i) => i && typeof e != \"string\")) {\n throw new RangeError(\"Invalid JSON representation of ChangeSet\");\n }\n else if (part.length == 1) {\n sections.push(part[0], 0);\n }\n else {\n while (inserted.length < i)\n inserted.push(Text.empty);\n inserted[i] = Text.of(part.slice(1));\n sections.push(part[0], inserted[i].length);\n }\n }\n return new ChangeSet(sections, inserted);\n }\n /**\n @internal\n */\n static createSet(sections, inserted) {\n return new ChangeSet(sections, inserted);\n }\n}\nfunction addSection(sections, len, ins, forceJoin = false) {\n if (len == 0 && ins <= 0)\n return;\n let last = sections.length - 2;\n if (last >= 0 && ins <= 0 && ins == sections[last + 1])\n sections[last] += len;\n else if (len == 0 && sections[last] == 0)\n sections[last + 1] += ins;\n else if (forceJoin) {\n sections[last] += len;\n sections[last + 1] += ins;\n }\n else\n sections.push(len, ins);\n}\nfunction addInsert(values, sections, value) {\n if (value.length == 0)\n return;\n let index = (sections.length - 2) >> 1;\n if (index < values.length) {\n values[values.length - 1] = values[values.length - 1].append(value);\n }\n else {\n while (values.length < index)\n values.push(Text.empty);\n values.push(value);\n }\n}\nfunction iterChanges(desc, f, individual) {\n let inserted = desc.inserted;\n for (let posA = 0, posB = 0, i = 0; i < desc.sections.length;) {\n let len = desc.sections[i++], ins = desc.sections[i++];\n if (ins < 0) {\n posA += len;\n posB += len;\n }\n else {\n let endA = posA, endB = posB, text = Text.empty;\n for (;;) {\n endA += len;\n endB += ins;\n if (ins && inserted)\n text = text.append(inserted[(i - 2) >> 1]);\n if (individual || i == desc.sections.length || desc.sections[i + 1] < 0)\n break;\n len = desc.sections[i++];\n ins = desc.sections[i++];\n }\n f(posA, endA, posB, endB, text);\n posA = endA;\n posB = endB;\n }\n }\n}\nfunction mapSet(setA, setB, before, mkSet = false) {\n // Produce a copy of setA that applies to the document after setB\n // has been applied (assuming both start at the same document).\n let sections = [], insert = mkSet ? [] : null;\n let a = new SectionIter(setA), b = new SectionIter(setB);\n // Iterate over both sets in parallel. inserted tracks, for changes\n // in A that have to be processed piece-by-piece, whether their\n // content has been inserted already, and refers to the section\n // index.\n for (let inserted = -1;;) {\n if (a.ins == -1 && b.ins == -1) {\n // Move across ranges skipped by both sets.\n let len = Math.min(a.len, b.len);\n addSection(sections, len, -1);\n a.forward(len);\n b.forward(len);\n }\n else if (b.ins >= 0 && (a.ins < 0 || inserted == a.i || a.off == 0 && (b.len < a.len || b.len == a.len && !before))) {\n // If there's a change in B that comes before the next change in\n // A (ordered by start pos, then len, then before flag), skip\n // that (and process any changes in A it covers).\n let len = b.len;\n addSection(sections, b.ins, -1);\n while (len) {\n let piece = Math.min(a.len, len);\n if (a.ins >= 0 && inserted < a.i && a.len <= piece) {\n addSection(sections, 0, a.ins);\n if (insert)\n addInsert(insert, sections, a.text);\n inserted = a.i;\n }\n a.forward(piece);\n len -= piece;\n }\n b.next();\n }\n else if (a.ins >= 0) {\n // Process the part of a change in A up to the start of the next\n // non-deletion change in B (if overlapping).\n let len = 0, left = a.len;\n while (left) {\n if (b.ins == -1) {\n let piece = Math.min(left, b.len);\n len += piece;\n left -= piece;\n b.forward(piece);\n }\n else if (b.ins == 0 && b.len < left) {\n left -= b.len;\n b.next();\n }\n else {\n break;\n }\n }\n addSection(sections, len, inserted < a.i ? a.ins : 0);\n if (insert && inserted < a.i)\n addInsert(insert, sections, a.text);\n inserted = a.i;\n a.forward(a.len - left);\n }\n else if (a.done && b.done) {\n return insert ? ChangeSet.createSet(sections, insert) : ChangeDesc.create(sections);\n }\n else {\n throw new Error(\"Mismatched change set lengths\");\n }\n }\n}\nfunction composeSets(setA, setB, mkSet = false) {\n let sections = [];\n let insert = mkSet ? [] : null;\n let a = new SectionIter(setA), b = new SectionIter(setB);\n for (let open = false;;) {\n if (a.done && b.done) {\n return insert ? ChangeSet.createSet(sections, insert) : ChangeDesc.create(sections);\n }\n else if (a.ins == 0) { // Deletion in A\n addSection(sections, a.len, 0, open);\n a.next();\n }\n else if (b.len == 0 && !b.done) { // Insertion in B\n addSection(sections, 0, b.ins, open);\n if (insert)\n addInsert(insert, sections, b.text);\n b.next();\n }\n else if (a.done || b.done) {\n throw new Error(\"Mismatched change set lengths\");\n }\n else {\n let len = Math.min(a.len2, b.len), sectionLen = sections.length;\n if (a.ins == -1) {\n let insB = b.ins == -1 ? -1 : b.off ? 0 : b.ins;\n addSection(sections, len, insB, open);\n if (insert && insB)\n addInsert(insert, sections, b.text);\n }\n else if (b.ins == -1) {\n addSection(sections, a.off ? 0 : a.len, len, open);\n if (insert)\n addInsert(insert, sections, a.textBit(len));\n }\n else {\n addSection(sections, a.off ? 0 : a.len, b.off ? 0 : b.ins, open);\n if (insert && !b.off)\n addInsert(insert, sections, b.text);\n }\n open = (a.ins > len || b.ins >= 0 && b.len > len) && (open || sections.length > sectionLen);\n a.forward2(len);\n b.forward(len);\n }\n }\n}\nclass SectionIter {\n constructor(set) {\n this.set = set;\n this.i = 0;\n this.next();\n }\n next() {\n let { sections } = this.set;\n if (this.i < sections.length) {\n this.len = sections[this.i++];\n this.ins = sections[this.i++];\n }\n else {\n this.len = 0;\n this.ins = -2;\n }\n this.off = 0;\n }\n get done() { return this.ins == -2; }\n get len2() { return this.ins < 0 ? this.len : this.ins; }\n get text() {\n let { inserted } = this.set, index = (this.i - 2) >> 1;\n return index >= inserted.length ? Text.empty : inserted[index];\n }\n textBit(len) {\n let { inserted } = this.set, index = (this.i - 2) >> 1;\n return index >= inserted.length && !len ? Text.empty\n : inserted[index].slice(this.off, len == null ? undefined : this.off + len);\n }\n forward(len) {\n if (len == this.len)\n this.next();\n else {\n this.len -= len;\n this.off += len;\n }\n }\n forward2(len) {\n if (this.ins == -1)\n this.forward(len);\n else if (len == this.ins)\n this.next();\n else {\n this.ins -= len;\n this.off += len;\n }\n }\n}\n\n/**\nA single selection range. When\n[`allowMultipleSelections`](https://codemirror.net/6/docs/ref/#state.EditorState^allowMultipleSelections)\nis enabled, a [selection](https://codemirror.net/6/docs/ref/#state.EditorSelection) may hold\nmultiple ranges. By default, selections hold exactly one range.\n*/\nclass SelectionRange {\n constructor(\n /**\n The lower boundary of the range.\n */\n from, \n /**\n The upper boundary of the range.\n */\n to, flags) {\n this.from = from;\n this.to = to;\n this.flags = flags;\n }\n /**\n The anchor of the range—the side that doesn't move when you\n extend it.\n */\n get anchor() { return this.flags & 32 /* RangeFlag.Inverted */ ? this.to : this.from; }\n /**\n The head of the range, which is moved when the range is\n [extended](https://codemirror.net/6/docs/ref/#state.SelectionRange.extend).\n */\n get head() { return this.flags & 32 /* RangeFlag.Inverted */ ? this.from : this.to; }\n /**\n True when `anchor` and `head` are at the same position.\n */\n get empty() { return this.from == this.to; }\n /**\n If this is a cursor that is explicitly associated with the\n character on one of its sides, this returns the side. -1 means\n the character before its position, 1 the character after, and 0\n means no association.\n */\n get assoc() { return this.flags & 8 /* RangeFlag.AssocBefore */ ? -1 : this.flags & 16 /* RangeFlag.AssocAfter */ ? 1 : 0; }\n /**\n The bidirectional text level associated with this cursor, if\n any.\n */\n get bidiLevel() {\n let level = this.flags & 7 /* RangeFlag.BidiLevelMask */;\n return level == 7 ? null : level;\n }\n /**\n The goal column (stored vertical offset) associated with a\n cursor. This is used to preserve the vertical position when\n [moving](https://codemirror.net/6/docs/ref/#view.EditorView.moveVertically) across\n lines of different length.\n */\n get goalColumn() {\n let value = this.flags >> 6 /* RangeFlag.GoalColumnOffset */;\n return value == 16777215 /* RangeFlag.NoGoalColumn */ ? undefined : value;\n }\n /**\n Map this range through a change, producing a valid range in the\n updated document.\n */\n map(change, assoc = -1) {\n let from, to;\n if (this.empty) {\n from = to = change.mapPos(this.from, assoc);\n }\n else {\n from = change.mapPos(this.from, 1);\n to = change.mapPos(this.to, -1);\n }\n return from == this.from && to == this.to ? this : new SelectionRange(from, to, this.flags);\n }\n /**\n Extend this range to cover at least `from` to `to`.\n */\n extend(from, to = from) {\n if (from <= this.anchor && to >= this.anchor)\n return EditorSelection.range(from, to);\n let head = Math.abs(from - this.anchor) > Math.abs(to - this.anchor) ? from : to;\n return EditorSelection.range(this.anchor, head);\n }\n /**\n Compare this range to another range.\n */\n eq(other, includeAssoc = false) {\n return this.anchor == other.anchor && this.head == other.head &&\n (!includeAssoc || !this.empty || this.assoc == other.assoc);\n }\n /**\n Return a JSON-serializable object representing the range.\n */\n toJSON() { return { anchor: this.anchor, head: this.head }; }\n /**\n Convert a JSON representation of a range to a `SelectionRange`\n instance.\n */\n static fromJSON(json) {\n if (!json || typeof json.anchor != \"number\" || typeof json.head != \"number\")\n throw new RangeError(\"Invalid JSON representation for SelectionRange\");\n return EditorSelection.range(json.anchor, json.head);\n }\n /**\n @internal\n */\n static create(from, to, flags) {\n return new SelectionRange(from, to, flags);\n }\n}\n/**\nAn editor selection holds one or more selection ranges.\n*/\nclass EditorSelection {\n constructor(\n /**\n The ranges in the selection, sorted by position. Ranges cannot\n overlap (but they may touch, if they aren't empty).\n */\n ranges, \n /**\n The index of the _main_ range in the selection (which is\n usually the range that was added last).\n */\n mainIndex) {\n this.ranges = ranges;\n this.mainIndex = mainIndex;\n }\n /**\n Map a selection through a change. Used to adjust the selection\n position for changes.\n */\n map(change, assoc = -1) {\n if (change.empty)\n return this;\n return EditorSelection.create(this.ranges.map(r => r.map(change, assoc)), this.mainIndex);\n }\n /**\n Compare this selection to another selection. By default, ranges\n are compared only by position. When `includeAssoc` is true,\n cursor ranges must also have the same\n [`assoc`](https://codemirror.net/6/docs/ref/#state.SelectionRange.assoc) value.\n */\n eq(other, includeAssoc = false) {\n if (this.ranges.length != other.ranges.length ||\n this.mainIndex != other.mainIndex)\n return false;\n for (let i = 0; i < this.ranges.length; i++)\n if (!this.ranges[i].eq(other.ranges[i], includeAssoc))\n return false;\n return true;\n }\n /**\n Get the primary selection range. Usually, you should make sure\n your code applies to _all_ ranges, by using methods like\n [`changeByRange`](https://codemirror.net/6/docs/ref/#state.EditorState.changeByRange).\n */\n get main() { return this.ranges[this.mainIndex]; }\n /**\n Make sure the selection only has one range. Returns a selection\n holding only the main range from this selection.\n */\n asSingle() {\n return this.ranges.length == 1 ? this : new EditorSelection([this.main], 0);\n }\n /**\n Extend this selection with an extra range.\n */\n addRange(range, main = true) {\n return EditorSelection.create([range].concat(this.ranges), main ? 0 : this.mainIndex + 1);\n }\n /**\n Replace a given range with another range, and then normalize the\n selection to merge and sort ranges if necessary.\n */\n replaceRange(range, which = this.mainIndex) {\n let ranges = this.ranges.slice();\n ranges[which] = range;\n return EditorSelection.create(ranges, this.mainIndex);\n }\n /**\n Convert this selection to an object that can be serialized to\n JSON.\n */\n toJSON() {\n return { ranges: this.ranges.map(r => r.toJSON()), main: this.mainIndex };\n }\n /**\n Create a selection from a JSON representation.\n */\n static fromJSON(json) {\n if (!json || !Array.isArray(json.ranges) || typeof json.main != \"number\" || json.main >= json.ranges.length)\n throw new RangeError(\"Invalid JSON representation for EditorSelection\");\n return new EditorSelection(json.ranges.map((r) => SelectionRange.fromJSON(r)), json.main);\n }\n /**\n Create a selection holding a single range.\n */\n static single(anchor, head = anchor) {\n return new EditorSelection([EditorSelection.range(anchor, head)], 0);\n }\n /**\n Sort and merge the given set of ranges, creating a valid\n selection.\n */\n static create(ranges, mainIndex = 0) {\n if (ranges.length == 0)\n throw new RangeError(\"A selection needs at least one range\");\n for (let pos = 0, i = 0; i < ranges.length; i++) {\n let range = ranges[i];\n if (range.empty ? range.from <= pos : range.from < pos)\n return EditorSelection.normalized(ranges.slice(), mainIndex);\n pos = range.to;\n }\n return new EditorSelection(ranges, mainIndex);\n }\n /**\n Create a cursor selection range at the given position. You can\n safely ignore the optional arguments in most situations.\n */\n static cursor(pos, assoc = 0, bidiLevel, goalColumn) {\n return SelectionRange.create(pos, pos, (assoc == 0 ? 0 : assoc < 0 ? 8 /* RangeFlag.AssocBefore */ : 16 /* RangeFlag.AssocAfter */) |\n (bidiLevel == null ? 7 : Math.min(6, bidiLevel)) |\n ((goalColumn !== null && goalColumn !== void 0 ? goalColumn : 16777215 /* RangeFlag.NoGoalColumn */) << 6 /* RangeFlag.GoalColumnOffset */));\n }\n /**\n Create a selection range.\n */\n static range(anchor, head, goalColumn, bidiLevel) {\n let flags = ((goalColumn !== null && goalColumn !== void 0 ? goalColumn : 16777215 /* RangeFlag.NoGoalColumn */) << 6 /* RangeFlag.GoalColumnOffset */) |\n (bidiLevel == null ? 7 : Math.min(6, bidiLevel));\n return head < anchor ? SelectionRange.create(head, anchor, 32 /* RangeFlag.Inverted */ | 16 /* RangeFlag.AssocAfter */ | flags)\n : SelectionRange.create(anchor, head, (head > anchor ? 8 /* RangeFlag.AssocBefore */ : 0) | flags);\n }\n /**\n @internal\n */\n static normalized(ranges, mainIndex = 0) {\n let main = ranges[mainIndex];\n ranges.sort((a, b) => a.from - b.from);\n mainIndex = ranges.indexOf(main);\n for (let i = 1; i < ranges.length; i++) {\n let range = ranges[i], prev = ranges[i - 1];\n if (range.empty ? range.from <= prev.to : range.from < prev.to) {\n let from = prev.from, to = Math.max(range.to, prev.to);\n if (i <= mainIndex)\n mainIndex--;\n ranges.splice(--i, 2, range.anchor > range.head ? EditorSelection.range(to, from) : EditorSelection.range(from, to));\n }\n }\n return new EditorSelection(ranges, mainIndex);\n }\n}\nfunction checkSelection(selection, docLength) {\n for (let range of selection.ranges)\n if (range.to > docLength)\n throw new RangeError(\"Selection points outside of document\");\n}\n\nlet nextID = 0;\n/**\nA facet is a labeled value that is associated with an editor\nstate. It takes inputs from any number of extensions, and combines\nthose into a single output value.\n\nExamples of uses of facets are the [tab\nsize](https://codemirror.net/6/docs/ref/#state.EditorState^tabSize), [editor\nattributes](https://codemirror.net/6/docs/ref/#view.EditorView^editorAttributes), and [update\nlisteners](https://codemirror.net/6/docs/ref/#view.EditorView^updateListener).\n\nNote that `Facet` instances can be used anywhere where\n[`FacetReader`](https://codemirror.net/6/docs/ref/#state.FacetReader) is expected.\n*/\nclass Facet {\n constructor(\n /**\n @internal\n */\n combine, \n /**\n @internal\n */\n compareInput, \n /**\n @internal\n */\n compare, isStatic, enables) {\n this.combine = combine;\n this.compareInput = compareInput;\n this.compare = compare;\n this.isStatic = isStatic;\n /**\n @internal\n */\n this.id = nextID++;\n this.default = combine([]);\n this.extensions = typeof enables == \"function\" ? enables(this) : enables;\n }\n /**\n Returns a facet reader for this facet, which can be used to\n [read](https://codemirror.net/6/docs/ref/#state.EditorState.facet) it but not to define values for it.\n */\n get reader() { return this; }\n /**\n Define a new facet.\n */\n static define(config = {}) {\n return new Facet(config.combine || ((a) => a), config.compareInput || ((a, b) => a === b), config.compare || (!config.combine ? sameArray : (a, b) => a === b), !!config.static, config.enables);\n }\n /**\n Returns an extension that adds the given value to this facet.\n */\n of(value) {\n return new FacetProvider([], this, 0 /* Provider.Static */, value);\n }\n /**\n Create an extension that computes a value for the facet from a\n state. You must take care to declare the parts of the state that\n this value depends on, since your function is only called again\n for a new state when one of those parts changed.\n \n In cases where your value depends only on a single field, you'll\n want to use the [`from`](https://codemirror.net/6/docs/ref/#state.Facet.from) method instead.\n */\n compute(deps, get) {\n if (this.isStatic)\n throw new Error(\"Can't compute a static facet\");\n return new FacetProvider(deps, this, 1 /* Provider.Single */, get);\n }\n /**\n Create an extension that computes zero or more values for this\n facet from a state.\n */\n computeN(deps, get) {\n if (this.isStatic)\n throw new Error(\"Can't compute a static facet\");\n return new FacetProvider(deps, this, 2 /* Provider.Multi */, get);\n }\n from(field, get) {\n if (!get)\n get = x => x;\n return this.compute([field], state => get(state.field(field)));\n }\n}\nfunction sameArray(a, b) {\n return a == b || a.length == b.length && a.every((e, i) => e === b[i]);\n}\nclass FacetProvider {\n constructor(dependencies, facet, type, value) {\n this.dependencies = dependencies;\n this.facet = facet;\n this.type = type;\n this.value = value;\n this.id = nextID++;\n }\n dynamicSlot(addresses) {\n var _a;\n let getter = this.value;\n let compare = this.facet.compareInput;\n let id = this.id, idx = addresses[id] >> 1, multi = this.type == 2 /* Provider.Multi */;\n let depDoc = false, depSel = false, depAddrs = [];\n for (let dep of this.dependencies) {\n if (dep == \"doc\")\n depDoc = true;\n else if (dep == \"selection\")\n depSel = true;\n else if ((((_a = addresses[dep.id]) !== null && _a !== void 0 ? _a : 1) & 1) == 0)\n depAddrs.push(addresses[dep.id]);\n }\n return {\n create(state) {\n state.values[idx] = getter(state);\n return 1 /* SlotStatus.Changed */;\n },\n update(state, tr) {\n if ((depDoc && tr.docChanged) || (depSel && (tr.docChanged || tr.selection)) || ensureAll(state, depAddrs)) {\n let newVal = getter(state);\n if (multi ? !compareArray(newVal, state.values[idx], compare) : !compare(newVal, state.values[idx])) {\n state.values[idx] = newVal;\n return 1 /* SlotStatus.Changed */;\n }\n }\n return 0;\n },\n reconfigure: (state, oldState) => {\n let newVal, oldAddr = oldState.config.address[id];\n if (oldAddr != null) {\n let oldVal = getAddr(oldState, oldAddr);\n if (this.dependencies.every(dep => {\n return dep instanceof Facet ? oldState.facet(dep) === state.facet(dep) :\n dep instanceof StateField ? oldState.field(dep, false) == state.field(dep, false) : true;\n }) || (multi ? compareArray(newVal = getter(state), oldVal, compare) : compare(newVal = getter(state), oldVal))) {\n state.values[idx] = oldVal;\n return 0;\n }\n }\n else {\n newVal = getter(state);\n }\n state.values[idx] = newVal;\n return 1 /* SlotStatus.Changed */;\n }\n };\n }\n}\nfunction compareArray(a, b, compare) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (!compare(a[i], b[i]))\n return false;\n return true;\n}\nfunction ensureAll(state, addrs) {\n let changed = false;\n for (let addr of addrs)\n if (ensureAddr(state, addr) & 1 /* SlotStatus.Changed */)\n changed = true;\n return changed;\n}\nfunction dynamicFacetSlot(addresses, facet, providers) {\n let providerAddrs = providers.map(p => addresses[p.id]);\n let providerTypes = providers.map(p => p.type);\n let dynamic = providerAddrs.filter(p => !(p & 1));\n let idx = addresses[facet.id] >> 1;\n function get(state) {\n let values = [];\n for (let i = 0; i < providerAddrs.length; i++) {\n let value = getAddr(state, providerAddrs[i]);\n if (providerTypes[i] == 2 /* Provider.Multi */)\n for (let val of value)\n values.push(val);\n else\n values.push(value);\n }\n return facet.combine(values);\n }\n return {\n create(state) {\n for (let addr of providerAddrs)\n ensureAddr(state, addr);\n state.values[idx] = get(state);\n return 1 /* SlotStatus.Changed */;\n },\n update(state, tr) {\n if (!ensureAll(state, dynamic))\n return 0;\n let value = get(state);\n if (facet.compare(value, state.values[idx]))\n return 0;\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n },\n reconfigure(state, oldState) {\n let depChanged = ensureAll(state, providerAddrs);\n let oldProviders = oldState.config.facets[facet.id], oldValue = oldState.facet(facet);\n if (oldProviders && !depChanged && sameArray(providers, oldProviders)) {\n state.values[idx] = oldValue;\n return 0;\n }\n let value = get(state);\n if (facet.compare(value, oldValue)) {\n state.values[idx] = oldValue;\n return 0;\n }\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n }\n };\n}\nconst initField = /*@__PURE__*/Facet.define({ static: true });\n/**\nFields can store additional information in an editor state, and\nkeep it in sync with the rest of the state.\n*/\nclass StateField {\n constructor(\n /**\n @internal\n */\n id, createF, updateF, compareF, \n /**\n @internal\n */\n spec) {\n this.id = id;\n this.createF = createF;\n this.updateF = updateF;\n this.compareF = compareF;\n this.spec = spec;\n /**\n @internal\n */\n this.provides = undefined;\n }\n /**\n Define a state field.\n */\n static define(config) {\n let field = new StateField(nextID++, config.create, config.update, config.compare || ((a, b) => a === b), config);\n if (config.provide)\n field.provides = config.provide(field);\n return field;\n }\n create(state) {\n let init = state.facet(initField).find(i => i.field == this);\n return ((init === null || init === void 0 ? void 0 : init.create) || this.createF)(state);\n }\n /**\n @internal\n */\n slot(addresses) {\n let idx = addresses[this.id] >> 1;\n return {\n create: (state) => {\n state.values[idx] = this.create(state);\n return 1 /* SlotStatus.Changed */;\n },\n update: (state, tr) => {\n let oldVal = state.values[idx];\n let value = this.updateF(oldVal, tr);\n if (this.compareF(oldVal, value))\n return 0;\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n },\n reconfigure: (state, oldState) => {\n if (oldState.config.address[this.id] != null) {\n state.values[idx] = oldState.field(this);\n return 0;\n }\n state.values[idx] = this.create(state);\n return 1 /* SlotStatus.Changed */;\n }\n };\n }\n /**\n Returns an extension that enables this field and overrides the\n way it is initialized. Can be useful when you need to provide a\n non-default starting value for the field.\n */\n init(create) {\n return [this, initField.of({ field: this, create })];\n }\n /**\n State field instances can be used as\n [`Extension`](https://codemirror.net/6/docs/ref/#state.Extension) values to enable the field in a\n given state.\n */\n get extension() { return this; }\n}\nconst Prec_ = { lowest: 4, low: 3, default: 2, high: 1, highest: 0 };\nfunction prec(value) {\n return (ext) => new PrecExtension(ext, value);\n}\n/**\nBy default extensions are registered in the order they are found\nin the flattened form of nested array that was provided.\nIndividual extension values can be assigned a precedence to\noverride this. Extensions that do not have a precedence set get\nthe precedence of the nearest parent with a precedence, or\n[`default`](https://codemirror.net/6/docs/ref/#state.Prec.default) if there is no such parent. The\nfinal ordering of extensions is determined by first sorting by\nprecedence and then by order within each precedence.\n*/\nconst Prec = {\n /**\n The highest precedence level, for extensions that should end up\n near the start of the precedence ordering.\n */\n highest: /*@__PURE__*/prec(Prec_.highest),\n /**\n A higher-than-default precedence, for extensions that should\n come before those with default precedence.\n */\n high: /*@__PURE__*/prec(Prec_.high),\n /**\n The default precedence, which is also used for extensions\n without an explicit precedence.\n */\n default: /*@__PURE__*/prec(Prec_.default),\n /**\n A lower-than-default precedence.\n */\n low: /*@__PURE__*/prec(Prec_.low),\n /**\n The lowest precedence level. Meant for things that should end up\n near the end of the extension order.\n */\n lowest: /*@__PURE__*/prec(Prec_.lowest)\n};\nclass PrecExtension {\n constructor(inner, prec) {\n this.inner = inner;\n this.prec = prec;\n }\n}\n/**\nExtension compartments can be used to make a configuration\ndynamic. By [wrapping](https://codemirror.net/6/docs/ref/#state.Compartment.of) part of your\nconfiguration in a compartment, you can later\n[replace](https://codemirror.net/6/docs/ref/#state.Compartment.reconfigure) that part through a\ntransaction.\n*/\nclass Compartment {\n /**\n Create an instance of this compartment to add to your [state\n configuration](https://codemirror.net/6/docs/ref/#state.EditorStateConfig.extensions).\n */\n of(ext) { return new CompartmentInstance(this, ext); }\n /**\n Create an [effect](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects) that\n reconfigures this compartment.\n */\n reconfigure(content) {\n return Compartment.reconfigure.of({ compartment: this, extension: content });\n }\n /**\n Get the current content of the compartment in the state, or\n `undefined` if it isn't present.\n */\n get(state) {\n return state.config.compartments.get(this);\n }\n}\nclass CompartmentInstance {\n constructor(compartment, inner) {\n this.compartment = compartment;\n this.inner = inner;\n }\n}\nclass Configuration {\n constructor(base, compartments, dynamicSlots, address, staticValues, facets) {\n this.base = base;\n this.compartments = compartments;\n this.dynamicSlots = dynamicSlots;\n this.address = address;\n this.staticValues = staticValues;\n this.facets = facets;\n this.statusTemplate = [];\n while (this.statusTemplate.length < dynamicSlots.length)\n this.statusTemplate.push(0 /* SlotStatus.Unresolved */);\n }\n staticFacet(facet) {\n let addr = this.address[facet.id];\n return addr == null ? facet.default : this.staticValues[addr >> 1];\n }\n static resolve(base, compartments, oldState) {\n let fields = [];\n let facets = Object.create(null);\n let newCompartments = new Map();\n for (let ext of flatten(base, compartments, newCompartments)) {\n if (ext instanceof StateField)\n fields.push(ext);\n else\n (facets[ext.facet.id] || (facets[ext.facet.id] = [])).push(ext);\n }\n let address = Object.create(null);\n let staticValues = [];\n let dynamicSlots = [];\n for (let field of fields) {\n address[field.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => field.slot(a));\n }\n let oldFacets = oldState === null || oldState === void 0 ? void 0 : oldState.config.facets;\n for (let id in facets) {\n let providers = facets[id], facet = providers[0].facet;\n let oldProviders = oldFacets && oldFacets[id] || [];\n if (providers.every(p => p.type == 0 /* Provider.Static */)) {\n address[facet.id] = (staticValues.length << 1) | 1;\n if (sameArray(oldProviders, providers)) {\n staticValues.push(oldState.facet(facet));\n }\n else {\n let value = facet.combine(providers.map(p => p.value));\n staticValues.push(oldState && facet.compare(value, oldState.facet(facet)) ? oldState.facet(facet) : value);\n }\n }\n else {\n for (let p of providers) {\n if (p.type == 0 /* Provider.Static */) {\n address[p.id] = (staticValues.length << 1) | 1;\n staticValues.push(p.value);\n }\n else {\n address[p.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => p.dynamicSlot(a));\n }\n }\n address[facet.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => dynamicFacetSlot(a, facet, providers));\n }\n }\n let dynamic = dynamicSlots.map(f => f(address));\n return new Configuration(base, newCompartments, dynamic, address, staticValues, facets);\n }\n}\nfunction flatten(extension, compartments, newCompartments) {\n let result = [[], [], [], [], []];\n let seen = new Map();\n function inner(ext, prec) {\n let known = seen.get(ext);\n if (known != null) {\n if (known <= prec)\n return;\n let found = result[known].indexOf(ext);\n if (found > -1)\n result[known].splice(found, 1);\n if (ext instanceof CompartmentInstance)\n newCompartments.delete(ext.compartment);\n }\n seen.set(ext, prec);\n if (Array.isArray(ext)) {\n for (let e of ext)\n inner(e, prec);\n }\n else if (ext instanceof CompartmentInstance) {\n if (newCompartments.has(ext.compartment))\n throw new RangeError(`Duplicate use of compartment in extensions`);\n let content = compartments.get(ext.compartment) || ext.inner;\n newCompartments.set(ext.compartment, content);\n inner(content, prec);\n }\n else if (ext instanceof PrecExtension) {\n inner(ext.inner, ext.prec);\n }\n else if (ext instanceof StateField) {\n result[prec].push(ext);\n if (ext.provides)\n inner(ext.provides, prec);\n }\n else if (ext instanceof FacetProvider) {\n result[prec].push(ext);\n if (ext.facet.extensions)\n inner(ext.facet.extensions, Prec_.default);\n }\n else {\n let content = ext.extension;\n if (!content)\n throw new Error(`Unrecognized extension value in extension set (${ext}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);\n inner(content, prec);\n }\n }\n inner(extension, Prec_.default);\n return result.reduce((a, b) => a.concat(b));\n}\nfunction ensureAddr(state, addr) {\n if (addr & 1)\n return 2 /* SlotStatus.Computed */;\n let idx = addr >> 1;\n let status = state.status[idx];\n if (status == 4 /* SlotStatus.Computing */)\n throw new Error(\"Cyclic dependency between fields and/or facets\");\n if (status & 2 /* SlotStatus.Computed */)\n return status;\n state.status[idx] = 4 /* SlotStatus.Computing */;\n let changed = state.computeSlot(state, state.config.dynamicSlots[idx]);\n return state.status[idx] = 2 /* SlotStatus.Computed */ | changed;\n}\nfunction getAddr(state, addr) {\n return addr & 1 ? state.config.staticValues[addr >> 1] : state.values[addr >> 1];\n}\n\nconst languageData = /*@__PURE__*/Facet.define();\nconst allowMultipleSelections = /*@__PURE__*/Facet.define({\n combine: values => values.some(v => v),\n static: true\n});\nconst lineSeparator = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : undefined,\n static: true\n});\nconst changeFilter = /*@__PURE__*/Facet.define();\nconst transactionFilter = /*@__PURE__*/Facet.define();\nconst transactionExtender = /*@__PURE__*/Facet.define();\nconst readOnly = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : false\n});\n\n/**\nAnnotations are tagged values that are used to add metadata to\ntransactions in an extensible way. They should be used to model\nthings that effect the entire transaction (such as its [time\nstamp](https://codemirror.net/6/docs/ref/#state.Transaction^time) or information about its\n[origin](https://codemirror.net/6/docs/ref/#state.Transaction^userEvent)). For effects that happen\n_alongside_ the other changes made by the transaction, [state\neffects](https://codemirror.net/6/docs/ref/#state.StateEffect) are more appropriate.\n*/\nclass Annotation {\n /**\n @internal\n */\n constructor(\n /**\n The annotation type.\n */\n type, \n /**\n The value of this annotation.\n */\n value) {\n this.type = type;\n this.value = value;\n }\n /**\n Define a new type of annotation.\n */\n static define() { return new AnnotationType(); }\n}\n/**\nMarker that identifies a type of [annotation](https://codemirror.net/6/docs/ref/#state.Annotation).\n*/\nclass AnnotationType {\n /**\n Create an instance of this annotation.\n */\n of(value) { return new Annotation(this, value); }\n}\n/**\nRepresentation of a type of state effect. Defined with\n[`StateEffect.define`](https://codemirror.net/6/docs/ref/#state.StateEffect^define).\n*/\nclass StateEffectType {\n /**\n @internal\n */\n constructor(\n // The `any` types in these function types are there to work\n // around TypeScript issue #37631, where the type guard on\n // `StateEffect.is` mysteriously stops working when these properly\n // have type `Value`.\n /**\n @internal\n */\n map) {\n this.map = map;\n }\n /**\n Create a [state effect](https://codemirror.net/6/docs/ref/#state.StateEffect) instance of this\n type.\n */\n of(value) { return new StateEffect(this, value); }\n}\n/**\nState effects can be used to represent additional effects\nassociated with a [transaction](https://codemirror.net/6/docs/ref/#state.Transaction.effects). They\nare often useful to model changes to custom [state\nfields](https://codemirror.net/6/docs/ref/#state.StateField), when those changes aren't implicit in\ndocument or selection changes.\n*/\nclass StateEffect {\n /**\n @internal\n */\n constructor(\n /**\n @internal\n */\n type, \n /**\n The value of this effect.\n */\n value) {\n this.type = type;\n this.value = value;\n }\n /**\n Map this effect through a position mapping. Will return\n `undefined` when that ends up deleting the effect.\n */\n map(mapping) {\n let mapped = this.type.map(this.value, mapping);\n return mapped === undefined ? undefined : mapped == this.value ? this : new StateEffect(this.type, mapped);\n }\n /**\n Tells you whether this effect object is of a given\n [type](https://codemirror.net/6/docs/ref/#state.StateEffectType).\n */\n is(type) { return this.type == type; }\n /**\n Define a new effect type. The type parameter indicates the type\n of values that his effect holds. It should be a type that\n doesn't include `undefined`, since that is used in\n [mapping](https://codemirror.net/6/docs/ref/#state.StateEffect.map) to indicate that an effect is\n removed.\n */\n static define(spec = {}) {\n return new StateEffectType(spec.map || (v => v));\n }\n /**\n Map an array of effects through a change set.\n */\n static mapEffects(effects, mapping) {\n if (!effects.length)\n return effects;\n let result = [];\n for (let effect of effects) {\n let mapped = effect.map(mapping);\n if (mapped)\n result.push(mapped);\n }\n return result;\n }\n}\n/**\nThis effect can be used to reconfigure the root extensions of\nthe editor. Doing this will discard any extensions\n[appended](https://codemirror.net/6/docs/ref/#state.StateEffect^appendConfig), but does not reset\nthe content of [reconfigured](https://codemirror.net/6/docs/ref/#state.Compartment.reconfigure)\ncompartments.\n*/\nStateEffect.reconfigure = /*@__PURE__*/StateEffect.define();\n/**\nAppend extensions to the top-level configuration of the editor.\n*/\nStateEffect.appendConfig = /*@__PURE__*/StateEffect.define();\n/**\nChanges to the editor state are grouped into transactions.\nTypically, a user action creates a single transaction, which may\ncontain any number of document changes, may change the selection,\nor have other effects. Create a transaction by calling\n[`EditorState.update`](https://codemirror.net/6/docs/ref/#state.EditorState.update), or immediately\ndispatch one by calling\n[`EditorView.dispatch`](https://codemirror.net/6/docs/ref/#view.EditorView.dispatch).\n*/\nclass Transaction {\n constructor(\n /**\n The state from which the transaction starts.\n */\n startState, \n /**\n The document changes made by this transaction.\n */\n changes, \n /**\n The selection set by this transaction, or undefined if it\n doesn't explicitly set a selection.\n */\n selection, \n /**\n The effects added to the transaction.\n */\n effects, \n /**\n @internal\n */\n annotations, \n /**\n Whether the selection should be scrolled into view after this\n transaction is dispatched.\n */\n scrollIntoView) {\n this.startState = startState;\n this.changes = changes;\n this.selection = selection;\n this.effects = effects;\n this.annotations = annotations;\n this.scrollIntoView = scrollIntoView;\n /**\n @internal\n */\n this._doc = null;\n /**\n @internal\n */\n this._state = null;\n if (selection)\n checkSelection(selection, changes.newLength);\n if (!annotations.some((a) => a.type == Transaction.time))\n this.annotations = annotations.concat(Transaction.time.of(Date.now()));\n }\n /**\n @internal\n */\n static create(startState, changes, selection, effects, annotations, scrollIntoView) {\n return new Transaction(startState, changes, selection, effects, annotations, scrollIntoView);\n }\n /**\n The new document produced by the transaction. Contrary to\n [`.state`](https://codemirror.net/6/docs/ref/#state.Transaction.state)`.doc`, accessing this won't\n force the entire new state to be computed right away, so it is\n recommended that [transaction\n filters](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter) use this getter\n when they need to look at the new document.\n */\n get newDoc() {\n return this._doc || (this._doc = this.changes.apply(this.startState.doc));\n }\n /**\n The new selection produced by the transaction. If\n [`this.selection`](https://codemirror.net/6/docs/ref/#state.Transaction.selection) is undefined,\n this will [map](https://codemirror.net/6/docs/ref/#state.EditorSelection.map) the start state's\n current selection through the changes made by the transaction.\n */\n get newSelection() {\n return this.selection || this.startState.selection.map(this.changes);\n }\n /**\n The new state created by the transaction. Computed on demand\n (but retained for subsequent access), so it is recommended not to\n access it in [transaction\n filters](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter) when possible.\n */\n get state() {\n if (!this._state)\n this.startState.applyTransaction(this);\n return this._state;\n }\n /**\n Get the value of the given annotation type, if any.\n */\n annotation(type) {\n for (let ann of this.annotations)\n if (ann.type == type)\n return ann.value;\n return undefined;\n }\n /**\n Indicates whether the transaction changed the document.\n */\n get docChanged() { return !this.changes.empty; }\n /**\n Indicates whether this transaction reconfigures the state\n (through a [configuration compartment](https://codemirror.net/6/docs/ref/#state.Compartment) or\n with a top-level configuration\n [effect](https://codemirror.net/6/docs/ref/#state.StateEffect^reconfigure).\n */\n get reconfigured() { return this.startState.config != this.state.config; }\n /**\n Returns true if the transaction has a [user\n event](https://codemirror.net/6/docs/ref/#state.Transaction^userEvent) annotation that is equal to\n or more specific than `event`. For example, if the transaction\n has `\"select.pointer\"` as user event, `\"select\"` and\n `\"select.pointer\"` will match it.\n */\n isUserEvent(event) {\n let e = this.annotation(Transaction.userEvent);\n return !!(e && (e == event || e.length > event.length && e.slice(0, event.length) == event && e[event.length] == \".\"));\n }\n}\n/**\nAnnotation used to store transaction timestamps. Automatically\nadded to every transaction, holding `Date.now()`.\n*/\nTransaction.time = /*@__PURE__*/Annotation.define();\n/**\nAnnotation used to associate a transaction with a user interface\nevent. Holds a string identifying the event, using a\ndot-separated format to support attaching more specific\ninformation. The events used by the core libraries are:\n\n - `\"input\"` when content is entered\n - `\"input.type\"` for typed input\n - `\"input.type.compose\"` for composition\n - `\"input.paste\"` for pasted input\n - `\"input.drop\"` when adding content with drag-and-drop\n - `\"input.complete\"` when autocompleting\n - `\"delete\"` when the user deletes content\n - `\"delete.selection\"` when deleting the selection\n - `\"delete.forward\"` when deleting forward from the selection\n - `\"delete.backward\"` when deleting backward from the selection\n - `\"delete.cut\"` when cutting to the clipboard\n - `\"move\"` when content is moved\n - `\"move.drop\"` when content is moved within the editor through drag-and-drop\n - `\"select\"` when explicitly changing the selection\n - `\"select.pointer\"` when selecting with a mouse or other pointing device\n - `\"undo\"` and `\"redo\"` for history actions\n\nUse [`isUserEvent`](https://codemirror.net/6/docs/ref/#state.Transaction.isUserEvent) to check\nwhether the annotation matches a given event.\n*/\nTransaction.userEvent = /*@__PURE__*/Annotation.define();\n/**\nAnnotation indicating whether a transaction should be added to\nthe undo history or not.\n*/\nTransaction.addToHistory = /*@__PURE__*/Annotation.define();\n/**\nAnnotation indicating (when present and true) that a transaction\nrepresents a change made by some other actor, not the user. This\nis used, for example, to tag other people's changes in\ncollaborative editing.\n*/\nTransaction.remote = /*@__PURE__*/Annotation.define();\nfunction joinRanges(a, b) {\n let result = [];\n for (let iA = 0, iB = 0;;) {\n let from, to;\n if (iA < a.length && (iB == b.length || b[iB] >= a[iA])) {\n from = a[iA++];\n to = a[iA++];\n }\n else if (iB < b.length) {\n from = b[iB++];\n to = b[iB++];\n }\n else\n return result;\n if (!result.length || result[result.length - 1] < from)\n result.push(from, to);\n else if (result[result.length - 1] < to)\n result[result.length - 1] = to;\n }\n}\nfunction mergeTransaction(a, b, sequential) {\n var _a;\n let mapForA, mapForB, changes;\n if (sequential) {\n mapForA = b.changes;\n mapForB = ChangeSet.empty(b.changes.length);\n changes = a.changes.compose(b.changes);\n }\n else {\n mapForA = b.changes.map(a.changes);\n mapForB = a.changes.mapDesc(b.changes, true);\n changes = a.changes.compose(mapForA);\n }\n return {\n changes,\n selection: b.selection ? b.selection.map(mapForB) : (_a = a.selection) === null || _a === void 0 ? void 0 : _a.map(mapForA),\n effects: StateEffect.mapEffects(a.effects, mapForA).concat(StateEffect.mapEffects(b.effects, mapForB)),\n annotations: a.annotations.length ? a.annotations.concat(b.annotations) : b.annotations,\n scrollIntoView: a.scrollIntoView || b.scrollIntoView\n };\n}\nfunction resolveTransactionInner(state, spec, docSize) {\n let sel = spec.selection, annotations = asArray(spec.annotations);\n if (spec.userEvent)\n annotations = annotations.concat(Transaction.userEvent.of(spec.userEvent));\n return {\n changes: spec.changes instanceof ChangeSet ? spec.changes\n : ChangeSet.of(spec.changes || [], docSize, state.facet(lineSeparator)),\n selection: sel && (sel instanceof EditorSelection ? sel : EditorSelection.single(sel.anchor, sel.head)),\n effects: asArray(spec.effects),\n annotations,\n scrollIntoView: !!spec.scrollIntoView\n };\n}\nfunction resolveTransaction(state, specs, filter) {\n let s = resolveTransactionInner(state, specs.length ? specs[0] : {}, state.doc.length);\n if (specs.length && specs[0].filter === false)\n filter = false;\n for (let i = 1; i < specs.length; i++) {\n if (specs[i].filter === false)\n filter = false;\n let seq = !!specs[i].sequential;\n s = mergeTransaction(s, resolveTransactionInner(state, specs[i], seq ? s.changes.newLength : state.doc.length), seq);\n }\n let tr = Transaction.create(state, s.changes, s.selection, s.effects, s.annotations, s.scrollIntoView);\n return extendTransaction(filter ? filterTransaction(tr) : tr);\n}\n// Finish a transaction by applying filters if necessary.\nfunction filterTransaction(tr) {\n let state = tr.startState;\n // Change filters\n let result = true;\n for (let filter of state.facet(changeFilter)) {\n let value = filter(tr);\n if (value === false) {\n result = false;\n break;\n }\n if (Array.isArray(value))\n result = result === true ? value : joinRanges(result, value);\n }\n if (result !== true) {\n let changes, back;\n if (result === false) {\n back = tr.changes.invertedDesc;\n changes = ChangeSet.empty(state.doc.length);\n }\n else {\n let filtered = tr.changes.filter(result);\n changes = filtered.changes;\n back = filtered.filtered.mapDesc(filtered.changes).invertedDesc;\n }\n tr = Transaction.create(state, changes, tr.selection && tr.selection.map(back), StateEffect.mapEffects(tr.effects, back), tr.annotations, tr.scrollIntoView);\n }\n // Transaction filters\n let filters = state.facet(transactionFilter);\n for (let i = filters.length - 1; i >= 0; i--) {\n let filtered = filters[i](tr);\n if (filtered instanceof Transaction)\n tr = filtered;\n else if (Array.isArray(filtered) && filtered.length == 1 && filtered[0] instanceof Transaction)\n tr = filtered[0];\n else\n tr = resolveTransaction(state, asArray(filtered), false);\n }\n return tr;\n}\nfunction extendTransaction(tr) {\n let state = tr.startState, extenders = state.facet(transactionExtender), spec = tr;\n for (let i = extenders.length - 1; i >= 0; i--) {\n let extension = extenders[i](tr);\n if (extension && Object.keys(extension).length)\n spec = mergeTransaction(spec, resolveTransactionInner(state, extension, tr.changes.newLength), true);\n }\n return spec == tr ? tr : Transaction.create(state, tr.changes, tr.selection, spec.effects, spec.annotations, spec.scrollIntoView);\n}\nconst none = [];\nfunction asArray(value) {\n return value == null ? none : Array.isArray(value) ? value : [value];\n}\n\n/**\nThe categories produced by a [character\ncategorizer](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer). These are used\ndo things like selecting by word.\n*/\nvar CharCategory = /*@__PURE__*/(function (CharCategory) {\n /**\n Word characters.\n */\n CharCategory[CharCategory[\"Word\"] = 0] = \"Word\";\n /**\n Whitespace.\n */\n CharCategory[CharCategory[\"Space\"] = 1] = \"Space\";\n /**\n Anything else.\n */\n CharCategory[CharCategory[\"Other\"] = 2] = \"Other\";\nreturn CharCategory})(CharCategory || (CharCategory = {}));\nconst nonASCIISingleCaseWordChar = /[\\u00df\\u0587\\u0590-\\u05f4\\u0600-\\u06ff\\u3040-\\u309f\\u30a0-\\u30ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\uac00-\\ud7af]/;\nlet wordChar;\ntry {\n wordChar = /*@__PURE__*/new RegExp(\"[\\\\p{Alphabetic}\\\\p{Number}_]\", \"u\");\n}\ncatch (_) { }\nfunction hasWordChar(str) {\n if (wordChar)\n return wordChar.test(str);\n for (let i = 0; i < str.length; i++) {\n let ch = str[i];\n if (/\\w/.test(ch) || ch > \"\\x80\" && (ch.toUpperCase() != ch.toLowerCase() || nonASCIISingleCaseWordChar.test(ch)))\n return true;\n }\n return false;\n}\nfunction makeCategorizer(wordChars) {\n return (char) => {\n if (!/\\S/.test(char))\n return CharCategory.Space;\n if (hasWordChar(char))\n return CharCategory.Word;\n for (let i = 0; i < wordChars.length; i++)\n if (char.indexOf(wordChars[i]) > -1)\n return CharCategory.Word;\n return CharCategory.Other;\n };\n}\n\n/**\nThe editor state class is a persistent (immutable) data structure.\nTo update a state, you [create](https://codemirror.net/6/docs/ref/#state.EditorState.update) a\n[transaction](https://codemirror.net/6/docs/ref/#state.Transaction), which produces a _new_ state\ninstance, without modifying the original object.\n\nAs such, _never_ mutate properties of a state directly. That'll\njust break things.\n*/\nclass EditorState {\n constructor(\n /**\n @internal\n */\n config, \n /**\n The current document.\n */\n doc, \n /**\n The current selection.\n */\n selection, \n /**\n @internal\n */\n values, computeSlot, tr) {\n this.config = config;\n this.doc = doc;\n this.selection = selection;\n this.values = values;\n this.status = config.statusTemplate.slice();\n this.computeSlot = computeSlot;\n // Fill in the computed state immediately, so that further queries\n // for it made during the update return this state\n if (tr)\n tr._state = this;\n for (let i = 0; i < this.config.dynamicSlots.length; i++)\n ensureAddr(this, i << 1);\n this.computeSlot = null;\n }\n field(field, require = true) {\n let addr = this.config.address[field.id];\n if (addr == null) {\n if (require)\n throw new RangeError(\"Field is not present in this state\");\n return undefined;\n }\n ensureAddr(this, addr);\n return getAddr(this, addr);\n }\n /**\n Create a [transaction](https://codemirror.net/6/docs/ref/#state.Transaction) that updates this\n state. Any number of [transaction specs](https://codemirror.net/6/docs/ref/#state.TransactionSpec)\n can be passed. Unless\n [`sequential`](https://codemirror.net/6/docs/ref/#state.TransactionSpec.sequential) is set, the\n [changes](https://codemirror.net/6/docs/ref/#state.TransactionSpec.changes) (if any) of each spec\n are assumed to start in the _current_ document (not the document\n produced by previous specs), and its\n [selection](https://codemirror.net/6/docs/ref/#state.TransactionSpec.selection) and\n [effects](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects) are assumed to refer\n to the document created by its _own_ changes. The resulting\n transaction contains the combined effect of all the different\n specs. For [selection](https://codemirror.net/6/docs/ref/#state.TransactionSpec.selection), later\n specs take precedence over earlier ones.\n */\n update(...specs) {\n return resolveTransaction(this, specs, true);\n }\n /**\n @internal\n */\n applyTransaction(tr) {\n let conf = this.config, { base, compartments } = conf;\n for (let effect of tr.effects) {\n if (effect.is(Compartment.reconfigure)) {\n if (conf) {\n compartments = new Map;\n conf.compartments.forEach((val, key) => compartments.set(key, val));\n conf = null;\n }\n compartments.set(effect.value.compartment, effect.value.extension);\n }\n else if (effect.is(StateEffect.reconfigure)) {\n conf = null;\n base = effect.value;\n }\n else if (effect.is(StateEffect.appendConfig)) {\n conf = null;\n base = asArray(base).concat(effect.value);\n }\n }\n let startValues;\n if (!conf) {\n conf = Configuration.resolve(base, compartments, this);\n let intermediateState = new EditorState(conf, this.doc, this.selection, conf.dynamicSlots.map(() => null), (state, slot) => slot.reconfigure(state, this), null);\n startValues = intermediateState.values;\n }\n else {\n startValues = tr.startState.values.slice();\n }\n let selection = tr.startState.facet(allowMultipleSelections) ? tr.newSelection : tr.newSelection.asSingle();\n new EditorState(conf, tr.newDoc, selection, startValues, (state, slot) => slot.update(state, tr), tr);\n }\n /**\n Create a [transaction spec](https://codemirror.net/6/docs/ref/#state.TransactionSpec) that\n replaces every selection range with the given content.\n */\n replaceSelection(text) {\n if (typeof text == \"string\")\n text = this.toText(text);\n return this.changeByRange(range => ({ changes: { from: range.from, to: range.to, insert: text },\n range: EditorSelection.cursor(range.from + text.length) }));\n }\n /**\n Create a set of changes and a new selection by running the given\n function for each range in the active selection. The function\n can return an optional set of changes (in the coordinate space\n of the start document), plus an updated range (in the coordinate\n space of the document produced by the call's own changes). This\n method will merge all the changes and ranges into a single\n changeset and selection, and return it as a [transaction\n spec](https://codemirror.net/6/docs/ref/#state.TransactionSpec), which can be passed to\n [`update`](https://codemirror.net/6/docs/ref/#state.EditorState.update).\n */\n changeByRange(f) {\n let sel = this.selection;\n let result1 = f(sel.ranges[0]);\n let changes = this.changes(result1.changes), ranges = [result1.range];\n let effects = asArray(result1.effects);\n for (let i = 1; i < sel.ranges.length; i++) {\n let result = f(sel.ranges[i]);\n let newChanges = this.changes(result.changes), newMapped = newChanges.map(changes);\n for (let j = 0; j < i; j++)\n ranges[j] = ranges[j].map(newMapped);\n let mapBy = changes.mapDesc(newChanges, true);\n ranges.push(result.range.map(mapBy));\n changes = changes.compose(newMapped);\n effects = StateEffect.mapEffects(effects, newMapped).concat(StateEffect.mapEffects(asArray(result.effects), mapBy));\n }\n return {\n changes,\n selection: EditorSelection.create(ranges, sel.mainIndex),\n effects\n };\n }\n /**\n Create a [change set](https://codemirror.net/6/docs/ref/#state.ChangeSet) from the given change\n description, taking the state's document length and line\n separator into account.\n */\n changes(spec = []) {\n if (spec instanceof ChangeSet)\n return spec;\n return ChangeSet.of(spec, this.doc.length, this.facet(EditorState.lineSeparator));\n }\n /**\n Using the state's [line\n separator](https://codemirror.net/6/docs/ref/#state.EditorState^lineSeparator), create a\n [`Text`](https://codemirror.net/6/docs/ref/#state.Text) instance from the given string.\n */\n toText(string) {\n return Text.of(string.split(this.facet(EditorState.lineSeparator) || DefaultSplit));\n }\n /**\n Return the given range of the document as a string.\n */\n sliceDoc(from = 0, to = this.doc.length) {\n return this.doc.sliceString(from, to, this.lineBreak);\n }\n /**\n Get the value of a state [facet](https://codemirror.net/6/docs/ref/#state.Facet).\n */\n facet(facet) {\n let addr = this.config.address[facet.id];\n if (addr == null)\n return facet.default;\n ensureAddr(this, addr);\n return getAddr(this, addr);\n }\n /**\n Convert this state to a JSON-serializable object. When custom\n fields should be serialized, you can pass them in as an object\n mapping property names (in the resulting object, which should\n not use `doc` or `selection`) to fields.\n */\n toJSON(fields) {\n let result = {\n doc: this.sliceDoc(),\n selection: this.selection.toJSON()\n };\n if (fields)\n for (let prop in fields) {\n let value = fields[prop];\n if (value instanceof StateField && this.config.address[value.id] != null)\n result[prop] = value.spec.toJSON(this.field(fields[prop]), this);\n }\n return result;\n }\n /**\n Deserialize a state from its JSON representation. When custom\n fields should be deserialized, pass the same object you passed\n to [`toJSON`](https://codemirror.net/6/docs/ref/#state.EditorState.toJSON) when serializing as\n third argument.\n */\n static fromJSON(json, config = {}, fields) {\n if (!json || typeof json.doc != \"string\")\n throw new RangeError(\"Invalid JSON representation for EditorState\");\n let fieldInit = [];\n if (fields)\n for (let prop in fields) {\n if (Object.prototype.hasOwnProperty.call(json, prop)) {\n let field = fields[prop], value = json[prop];\n fieldInit.push(field.init(state => field.spec.fromJSON(value, state)));\n }\n }\n return EditorState.create({\n doc: json.doc,\n selection: EditorSelection.fromJSON(json.selection),\n extensions: config.extensions ? fieldInit.concat([config.extensions]) : fieldInit\n });\n }\n /**\n Create a new state. You'll usually only need this when\n initializing an editor—updated states are created by applying\n transactions.\n */\n static create(config = {}) {\n let configuration = Configuration.resolve(config.extensions || [], new Map);\n let doc = config.doc instanceof Text ? config.doc\n : Text.of((config.doc || \"\").split(configuration.staticFacet(EditorState.lineSeparator) || DefaultSplit));\n let selection = !config.selection ? EditorSelection.single(0)\n : config.selection instanceof EditorSelection ? config.selection\n : EditorSelection.single(config.selection.anchor, config.selection.head);\n checkSelection(selection, doc.length);\n if (!configuration.staticFacet(allowMultipleSelections))\n selection = selection.asSingle();\n return new EditorState(configuration, doc, selection, configuration.dynamicSlots.map(() => null), (state, slot) => slot.create(state), null);\n }\n /**\n The size (in columns) of a tab in the document, determined by\n the [`tabSize`](https://codemirror.net/6/docs/ref/#state.EditorState^tabSize) facet.\n */\n get tabSize() { return this.facet(EditorState.tabSize); }\n /**\n Get the proper [line-break](https://codemirror.net/6/docs/ref/#state.EditorState^lineSeparator)\n string for this state.\n */\n get lineBreak() { return this.facet(EditorState.lineSeparator) || \"\\n\"; }\n /**\n Returns true when the editor is\n [configured](https://codemirror.net/6/docs/ref/#state.EditorState^readOnly) to be read-only.\n */\n get readOnly() { return this.facet(readOnly); }\n /**\n Look up a translation for the given phrase (via the\n [`phrases`](https://codemirror.net/6/docs/ref/#state.EditorState^phrases) facet), or return the\n original string if no translation is found.\n \n If additional arguments are passed, they will be inserted in\n place of markers like `$1` (for the first value) and `$2`, etc.\n A single `$` is equivalent to `$1`, and `$$` will produce a\n literal dollar sign.\n */\n phrase(phrase, ...insert) {\n for (let map of this.facet(EditorState.phrases))\n if (Object.prototype.hasOwnProperty.call(map, phrase)) {\n phrase = map[phrase];\n break;\n }\n if (insert.length)\n phrase = phrase.replace(/\\$(\\$|\\d*)/g, (m, i) => {\n if (i == \"$\")\n return \"$\";\n let n = +(i || 1);\n return !n || n > insert.length ? m : insert[n - 1];\n });\n return phrase;\n }\n /**\n Find the values for a given language data field, provided by the\n the [`languageData`](https://codemirror.net/6/docs/ref/#state.EditorState^languageData) facet.\n \n Examples of language data fields are...\n \n - [`\"commentTokens\"`](https://codemirror.net/6/docs/ref/#commands.CommentTokens) for specifying\n comment syntax.\n - [`\"autocomplete\"`](https://codemirror.net/6/docs/ref/#autocomplete.autocompletion^config.override)\n for providing language-specific completion sources.\n - [`\"wordChars\"`](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer) for adding\n characters that should be considered part of words in this\n language.\n - [`\"closeBrackets\"`](https://codemirror.net/6/docs/ref/#autocomplete.CloseBracketConfig) controls\n bracket closing behavior.\n */\n languageDataAt(name, pos, side = -1) {\n let values = [];\n for (let provider of this.facet(languageData)) {\n for (let result of provider(this, pos, side)) {\n if (Object.prototype.hasOwnProperty.call(result, name))\n values.push(result[name]);\n }\n }\n return values;\n }\n /**\n Return a function that can categorize strings (expected to\n represent a single [grapheme cluster](https://codemirror.net/6/docs/ref/#state.findClusterBreak))\n into one of:\n \n - Word (contains an alphanumeric character or a character\n explicitly listed in the local language's `\"wordChars\"`\n language data, which should be a string)\n - Space (contains only whitespace)\n - Other (anything else)\n */\n charCategorizer(at) {\n return makeCategorizer(this.languageDataAt(\"wordChars\", at).join(\"\"));\n }\n /**\n Find the word at the given position, meaning the range\n containing all [word](https://codemirror.net/6/docs/ref/#state.CharCategory.Word) characters\n around it. If no word characters are adjacent to the position,\n this returns null.\n */\n wordAt(pos) {\n let { text, from, length } = this.doc.lineAt(pos);\n let cat = this.charCategorizer(pos);\n let start = pos - from, end = pos - from;\n while (start > 0) {\n let prev = findClusterBreak(text, start, false);\n if (cat(text.slice(prev, start)) != CharCategory.Word)\n break;\n start = prev;\n }\n while (end < length) {\n let next = findClusterBreak(text, end);\n if (cat(text.slice(end, next)) != CharCategory.Word)\n break;\n end = next;\n }\n return start == end ? null : EditorSelection.range(start + from, end + from);\n }\n}\n/**\nA facet that, when enabled, causes the editor to allow multiple\nranges to be selected. Be careful though, because by default the\neditor relies on the native DOM selection, which cannot handle\nmultiple selections. An extension like\n[`drawSelection`](https://codemirror.net/6/docs/ref/#view.drawSelection) can be used to make\nsecondary selections visible to the user.\n*/\nEditorState.allowMultipleSelections = allowMultipleSelections;\n/**\nConfigures the tab size to use in this state. The first\n(highest-precedence) value of the facet is used. If no value is\ngiven, this defaults to 4.\n*/\nEditorState.tabSize = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : 4\n});\n/**\nThe line separator to use. By default, any of `\"\\n\"`, `\"\\r\\n\"`\nand `\"\\r\"` is treated as a separator when splitting lines, and\nlines are joined with `\"\\n\"`.\n\nWhen you configure a value here, only that precise separator\nwill be used, allowing you to round-trip documents through the\neditor without normalizing line separators.\n*/\nEditorState.lineSeparator = lineSeparator;\n/**\nThis facet controls the value of the\n[`readOnly`](https://codemirror.net/6/docs/ref/#state.EditorState.readOnly) getter, which is\nconsulted by commands and extensions that implement editing\nfunctionality to determine whether they should apply. It\ndefaults to false, but when its highest-precedence value is\n`true`, such functionality disables itself.\n\nNot to be confused with\n[`EditorView.editable`](https://codemirror.net/6/docs/ref/#view.EditorView^editable), which\ncontrols whether the editor's DOM is set to be editable (and\nthus focusable).\n*/\nEditorState.readOnly = readOnly;\n/**\nRegisters translation phrases. The\n[`phrase`](https://codemirror.net/6/docs/ref/#state.EditorState.phrase) method will look through\nall objects registered with this facet to find translations for\nits argument.\n*/\nEditorState.phrases = /*@__PURE__*/Facet.define({\n compare(a, b) {\n let kA = Object.keys(a), kB = Object.keys(b);\n return kA.length == kB.length && kA.every(k => a[k] == b[k]);\n }\n});\n/**\nA facet used to register [language\ndata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt) providers.\n*/\nEditorState.languageData = languageData;\n/**\nFacet used to register change filters, which are called for each\ntransaction (unless explicitly\n[disabled](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter)), and can suppress\npart of the transaction's changes.\n\nSuch a function can return `true` to indicate that it doesn't\nwant to do anything, `false` to completely stop the changes in\nthe transaction, or a set of ranges in which changes should be\nsuppressed. Such ranges are represented as an array of numbers,\nwith each pair of two numbers indicating the start and end of a\nrange. So for example `[10, 20, 100, 110]` suppresses changes\nbetween 10 and 20, and between 100 and 110.\n*/\nEditorState.changeFilter = changeFilter;\n/**\nFacet used to register a hook that gets a chance to update or\nreplace transaction specs before they are applied. This will\nonly be applied for transactions that don't have\n[`filter`](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter) set to `false`. You\ncan either return a single transaction spec (possibly the input\ntransaction), or an array of specs (which will be combined in\nthe same way as the arguments to\n[`EditorState.update`](https://codemirror.net/6/docs/ref/#state.EditorState.update)).\n\nWhen possible, it is recommended to avoid accessing\n[`Transaction.state`](https://codemirror.net/6/docs/ref/#state.Transaction.state) in a filter,\nsince it will force creation of a state that will then be\ndiscarded again, if the transaction is actually filtered.\n\n(This functionality should be used with care. Indiscriminately\nmodifying transaction is likely to break something or degrade\nthe user experience.)\n*/\nEditorState.transactionFilter = transactionFilter;\n/**\nThis is a more limited form of\n[`transactionFilter`](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter),\nwhich can only add\n[annotations](https://codemirror.net/6/docs/ref/#state.TransactionSpec.annotations) and\n[effects](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects). _But_, this type\nof filter runs even if the transaction has disabled regular\n[filtering](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter), making it suitable\nfor effects that don't need to touch the changes or selection,\nbut do want to process every transaction.\n\nExtenders run _after_ filters, when both are present.\n*/\nEditorState.transactionExtender = transactionExtender;\nCompartment.reconfigure = /*@__PURE__*/StateEffect.define();\n\n/**\nUtility function for combining behaviors to fill in a config\nobject from an array of provided configs. `defaults` should hold\ndefault values for all optional fields in `Config`.\n\nThe function will, by default, error\nwhen a field gets two values that aren't `===`-equal, but you can\nprovide combine functions per field to do something else.\n*/\nfunction combineConfig(configs, defaults, // Should hold only the optional properties of Config, but I haven't managed to express that\ncombine = {}) {\n let result = {};\n for (let config of configs)\n for (let key of Object.keys(config)) {\n let value = config[key], current = result[key];\n if (current === undefined)\n result[key] = value;\n else if (current === value || value === undefined) ; // No conflict\n else if (Object.hasOwnProperty.call(combine, key))\n result[key] = combine[key](current, value);\n else\n throw new Error(\"Config merge conflict for field \" + key);\n }\n for (let key in defaults)\n if (result[key] === undefined)\n result[key] = defaults[key];\n return result;\n}\n\n/**\nEach range is associated with a value, which must inherit from\nthis class.\n*/\nclass RangeValue {\n /**\n Compare this value with another value. Used when comparing\n rangesets. The default implementation compares by identity.\n Unless you are only creating a fixed number of unique instances\n of your value type, it is a good idea to implement this\n properly.\n */\n eq(other) { return this == other; }\n /**\n Create a [range](https://codemirror.net/6/docs/ref/#state.Range) with this value.\n */\n range(from, to = from) { return Range.create(from, to, this); }\n}\nRangeValue.prototype.startSide = RangeValue.prototype.endSide = 0;\nRangeValue.prototype.point = false;\nRangeValue.prototype.mapMode = MapMode.TrackDel;\n/**\nA range associates a value with a range of positions.\n*/\nclass Range {\n constructor(\n /**\n The range's start position.\n */\n from, \n /**\n Its end position.\n */\n to, \n /**\n The value associated with this range.\n */\n value) {\n this.from = from;\n this.to = to;\n this.value = value;\n }\n /**\n @internal\n */\n static create(from, to, value) {\n return new Range(from, to, value);\n }\n}\nfunction cmpRange(a, b) {\n return a.from - b.from || a.value.startSide - b.value.startSide;\n}\nclass Chunk {\n constructor(from, to, value, \n // Chunks are marked with the largest point that occurs\n // in them (or -1 for no points), so that scans that are\n // only interested in points (such as the\n // heightmap-related logic) can skip range-only chunks.\n maxPoint) {\n this.from = from;\n this.to = to;\n this.value = value;\n this.maxPoint = maxPoint;\n }\n get length() { return this.to[this.to.length - 1]; }\n // Find the index of the given position and side. Use the ranges'\n // `from` pos when `end == false`, `to` when `end == true`.\n findIndex(pos, side, end, startAt = 0) {\n let arr = end ? this.to : this.from;\n for (let lo = startAt, hi = arr.length;;) {\n if (lo == hi)\n return lo;\n let mid = (lo + hi) >> 1;\n let diff = arr[mid] - pos || (end ? this.value[mid].endSide : this.value[mid].startSide) - side;\n if (mid == lo)\n return diff >= 0 ? lo : hi;\n if (diff >= 0)\n hi = mid;\n else\n lo = mid + 1;\n }\n }\n between(offset, from, to, f) {\n for (let i = this.findIndex(from, -1000000000 /* C.Far */, true), e = this.findIndex(to, 1000000000 /* C.Far */, false, i); i < e; i++)\n if (f(this.from[i] + offset, this.to[i] + offset, this.value[i]) === false)\n return false;\n }\n map(offset, changes) {\n let value = [], from = [], to = [], newPos = -1, maxPoint = -1;\n for (let i = 0; i < this.value.length; i++) {\n let val = this.value[i], curFrom = this.from[i] + offset, curTo = this.to[i] + offset, newFrom, newTo;\n if (curFrom == curTo) {\n let mapped = changes.mapPos(curFrom, val.startSide, val.mapMode);\n if (mapped == null)\n continue;\n newFrom = newTo = mapped;\n if (val.startSide != val.endSide) {\n newTo = changes.mapPos(curFrom, val.endSide);\n if (newTo < newFrom)\n continue;\n }\n }\n else {\n newFrom = changes.mapPos(curFrom, val.startSide);\n newTo = changes.mapPos(curTo, val.endSide);\n if (newFrom > newTo || newFrom == newTo && val.startSide > 0 && val.endSide <= 0)\n continue;\n }\n if ((newTo - newFrom || val.endSide - val.startSide) < 0)\n continue;\n if (newPos < 0)\n newPos = newFrom;\n if (val.point)\n maxPoint = Math.max(maxPoint, newTo - newFrom);\n value.push(val);\n from.push(newFrom - newPos);\n to.push(newTo - newPos);\n }\n return { mapped: value.length ? new Chunk(from, to, value, maxPoint) : null, pos: newPos };\n }\n}\n/**\nA range set stores a collection of [ranges](https://codemirror.net/6/docs/ref/#state.Range) in a\nway that makes them efficient to [map](https://codemirror.net/6/docs/ref/#state.RangeSet.map) and\n[update](https://codemirror.net/6/docs/ref/#state.RangeSet.update). This is an immutable data\nstructure.\n*/\nclass RangeSet {\n constructor(\n /**\n @internal\n */\n chunkPos, \n /**\n @internal\n */\n chunk, \n /**\n @internal\n */\n nextLayer, \n /**\n @internal\n */\n maxPoint) {\n this.chunkPos = chunkPos;\n this.chunk = chunk;\n this.nextLayer = nextLayer;\n this.maxPoint = maxPoint;\n }\n /**\n @internal\n */\n static create(chunkPos, chunk, nextLayer, maxPoint) {\n return new RangeSet(chunkPos, chunk, nextLayer, maxPoint);\n }\n /**\n @internal\n */\n get length() {\n let last = this.chunk.length - 1;\n return last < 0 ? 0 : Math.max(this.chunkEnd(last), this.nextLayer.length);\n }\n /**\n The number of ranges in the set.\n */\n get size() {\n if (this.isEmpty)\n return 0;\n let size = this.nextLayer.size;\n for (let chunk of this.chunk)\n size += chunk.value.length;\n return size;\n }\n /**\n @internal\n */\n chunkEnd(index) {\n return this.chunkPos[index] + this.chunk[index].length;\n }\n /**\n Update the range set, optionally adding new ranges or filtering\n out existing ones.\n \n (Note: The type parameter is just there as a kludge to work\n around TypeScript variance issues that prevented `RangeSet`\n from being a subtype of `RangeSet` when `X` is a subtype of\n `Y`.)\n */\n update(updateSpec) {\n let { add = [], sort = false, filterFrom = 0, filterTo = this.length } = updateSpec;\n let filter = updateSpec.filter;\n if (add.length == 0 && !filter)\n return this;\n if (sort)\n add = add.slice().sort(cmpRange);\n if (this.isEmpty)\n return add.length ? RangeSet.of(add) : this;\n let cur = new LayerCursor(this, null, -1).goto(0), i = 0, spill = [];\n let builder = new RangeSetBuilder();\n while (cur.value || i < add.length) {\n if (i < add.length && (cur.from - add[i].from || cur.startSide - add[i].value.startSide) >= 0) {\n let range = add[i++];\n if (!builder.addInner(range.from, range.to, range.value))\n spill.push(range);\n }\n else if (cur.rangeIndex == 1 && cur.chunkIndex < this.chunk.length &&\n (i == add.length || this.chunkEnd(cur.chunkIndex) < add[i].from) &&\n (!filter || filterFrom > this.chunkEnd(cur.chunkIndex) || filterTo < this.chunkPos[cur.chunkIndex]) &&\n builder.addChunk(this.chunkPos[cur.chunkIndex], this.chunk[cur.chunkIndex])) {\n cur.nextChunk();\n }\n else {\n if (!filter || filterFrom > cur.to || filterTo < cur.from || filter(cur.from, cur.to, cur.value)) {\n if (!builder.addInner(cur.from, cur.to, cur.value))\n spill.push(Range.create(cur.from, cur.to, cur.value));\n }\n cur.next();\n }\n }\n return builder.finishInner(this.nextLayer.isEmpty && !spill.length ? RangeSet.empty\n : this.nextLayer.update({ add: spill, filter, filterFrom, filterTo }));\n }\n /**\n Map this range set through a set of changes, return the new set.\n */\n map(changes) {\n if (changes.empty || this.isEmpty)\n return this;\n let chunks = [], chunkPos = [], maxPoint = -1;\n for (let i = 0; i < this.chunk.length; i++) {\n let start = this.chunkPos[i], chunk = this.chunk[i];\n let touch = changes.touchesRange(start, start + chunk.length);\n if (touch === false) {\n maxPoint = Math.max(maxPoint, chunk.maxPoint);\n chunks.push(chunk);\n chunkPos.push(changes.mapPos(start));\n }\n else if (touch === true) {\n let { mapped, pos } = chunk.map(start, changes);\n if (mapped) {\n maxPoint = Math.max(maxPoint, mapped.maxPoint);\n chunks.push(mapped);\n chunkPos.push(pos);\n }\n }\n }\n let next = this.nextLayer.map(changes);\n return chunks.length == 0 ? next : new RangeSet(chunkPos, chunks, next || RangeSet.empty, maxPoint);\n }\n /**\n Iterate over the ranges that touch the region `from` to `to`,\n calling `f` for each. There is no guarantee that the ranges will\n be reported in any specific order. When the callback returns\n `false`, iteration stops.\n */\n between(from, to, f) {\n if (this.isEmpty)\n return;\n for (let i = 0; i < this.chunk.length; i++) {\n let start = this.chunkPos[i], chunk = this.chunk[i];\n if (to >= start && from <= start + chunk.length &&\n chunk.between(start, from - start, to - start, f) === false)\n return;\n }\n this.nextLayer.between(from, to, f);\n }\n /**\n Iterate over the ranges in this set, in order, including all\n ranges that end at or after `from`.\n */\n iter(from = 0) {\n return HeapCursor.from([this]).goto(from);\n }\n /**\n @internal\n */\n get isEmpty() { return this.nextLayer == this; }\n /**\n Iterate over the ranges in a collection of sets, in order,\n starting from `from`.\n */\n static iter(sets, from = 0) {\n return HeapCursor.from(sets).goto(from);\n }\n /**\n Iterate over two groups of sets, calling methods on `comparator`\n to notify it of possible differences.\n */\n static compare(oldSets, newSets, \n /**\n This indicates how the underlying data changed between these\n ranges, and is needed to synchronize the iteration.\n */\n textDiff, comparator, \n /**\n Can be used to ignore all non-point ranges, and points below\n the given size. When -1, all ranges are compared.\n */\n minPointSize = -1) {\n let a = oldSets.filter(set => set.maxPoint > 0 || !set.isEmpty && set.maxPoint >= minPointSize);\n let b = newSets.filter(set => set.maxPoint > 0 || !set.isEmpty && set.maxPoint >= minPointSize);\n let sharedChunks = findSharedChunks(a, b, textDiff);\n let sideA = new SpanCursor(a, sharedChunks, minPointSize);\n let sideB = new SpanCursor(b, sharedChunks, minPointSize);\n textDiff.iterGaps((fromA, fromB, length) => compare(sideA, fromA, sideB, fromB, length, comparator));\n if (textDiff.empty && textDiff.length == 0)\n compare(sideA, 0, sideB, 0, 0, comparator);\n }\n /**\n Compare the contents of two groups of range sets, returning true\n if they are equivalent in the given range.\n */\n static eq(oldSets, newSets, from = 0, to) {\n if (to == null)\n to = 1000000000 /* C.Far */ - 1;\n let a = oldSets.filter(set => !set.isEmpty && newSets.indexOf(set) < 0);\n let b = newSets.filter(set => !set.isEmpty && oldSets.indexOf(set) < 0);\n if (a.length != b.length)\n return false;\n if (!a.length)\n return true;\n let sharedChunks = findSharedChunks(a, b);\n let sideA = new SpanCursor(a, sharedChunks, 0).goto(from), sideB = new SpanCursor(b, sharedChunks, 0).goto(from);\n for (;;) {\n if (sideA.to != sideB.to ||\n !sameValues(sideA.active, sideB.active) ||\n sideA.point && (!sideB.point || !sideA.point.eq(sideB.point)))\n return false;\n if (sideA.to > to)\n return true;\n sideA.next();\n sideB.next();\n }\n }\n /**\n Iterate over a group of range sets at the same time, notifying\n the iterator about the ranges covering every given piece of\n content. Returns the open count (see\n [`SpanIterator.span`](https://codemirror.net/6/docs/ref/#state.SpanIterator.span)) at the end\n of the iteration.\n */\n static spans(sets, from, to, iterator, \n /**\n When given and greater than -1, only points of at least this\n size are taken into account.\n */\n minPointSize = -1) {\n let cursor = new SpanCursor(sets, null, minPointSize).goto(from), pos = from;\n let openRanges = cursor.openStart;\n for (;;) {\n let curTo = Math.min(cursor.to, to);\n if (cursor.point) {\n let active = cursor.activeForPoint(cursor.to);\n let openCount = cursor.pointFrom < from ? active.length + 1\n : cursor.point.startSide < 0 ? active.length\n : Math.min(active.length, openRanges);\n iterator.point(pos, curTo, cursor.point, active, openCount, cursor.pointRank);\n openRanges = Math.min(cursor.openEnd(curTo), active.length);\n }\n else if (curTo > pos) {\n iterator.span(pos, curTo, cursor.active, openRanges);\n openRanges = cursor.openEnd(curTo);\n }\n if (cursor.to > to)\n return openRanges + (cursor.point && cursor.to > to ? 1 : 0);\n pos = cursor.to;\n cursor.next();\n }\n }\n /**\n Create a range set for the given range or array of ranges. By\n default, this expects the ranges to be _sorted_ (by start\n position and, if two start at the same position,\n `value.startSide`). You can pass `true` as second argument to\n cause the method to sort them.\n */\n static of(ranges, sort = false) {\n let build = new RangeSetBuilder();\n for (let range of ranges instanceof Range ? [ranges] : sort ? lazySort(ranges) : ranges)\n build.add(range.from, range.to, range.value);\n return build.finish();\n }\n /**\n Join an array of range sets into a single set.\n */\n static join(sets) {\n if (!sets.length)\n return RangeSet.empty;\n let result = sets[sets.length - 1];\n for (let i = sets.length - 2; i >= 0; i--) {\n for (let layer = sets[i]; layer != RangeSet.empty; layer = layer.nextLayer)\n result = new RangeSet(layer.chunkPos, layer.chunk, result, Math.max(layer.maxPoint, result.maxPoint));\n }\n return result;\n }\n}\n/**\nThe empty set of ranges.\n*/\nRangeSet.empty = /*@__PURE__*/new RangeSet([], [], null, -1);\nfunction lazySort(ranges) {\n if (ranges.length > 1)\n for (let prev = ranges[0], i = 1; i < ranges.length; i++) {\n let cur = ranges[i];\n if (cmpRange(prev, cur) > 0)\n return ranges.slice().sort(cmpRange);\n prev = cur;\n }\n return ranges;\n}\nRangeSet.empty.nextLayer = RangeSet.empty;\n/**\nA range set builder is a data structure that helps build up a\n[range set](https://codemirror.net/6/docs/ref/#state.RangeSet) directly, without first allocating\nan array of [`Range`](https://codemirror.net/6/docs/ref/#state.Range) objects.\n*/\nclass RangeSetBuilder {\n finishChunk(newArrays) {\n this.chunks.push(new Chunk(this.from, this.to, this.value, this.maxPoint));\n this.chunkPos.push(this.chunkStart);\n this.chunkStart = -1;\n this.setMaxPoint = Math.max(this.setMaxPoint, this.maxPoint);\n this.maxPoint = -1;\n if (newArrays) {\n this.from = [];\n this.to = [];\n this.value = [];\n }\n }\n /**\n Create an empty builder.\n */\n constructor() {\n this.chunks = [];\n this.chunkPos = [];\n this.chunkStart = -1;\n this.last = null;\n this.lastFrom = -1000000000 /* C.Far */;\n this.lastTo = -1000000000 /* C.Far */;\n this.from = [];\n this.to = [];\n this.value = [];\n this.maxPoint = -1;\n this.setMaxPoint = -1;\n this.nextLayer = null;\n }\n /**\n Add a range. Ranges should be added in sorted (by `from` and\n `value.startSide`) order.\n */\n add(from, to, value) {\n if (!this.addInner(from, to, value))\n (this.nextLayer || (this.nextLayer = new RangeSetBuilder)).add(from, to, value);\n }\n /**\n @internal\n */\n addInner(from, to, value) {\n let diff = from - this.lastTo || value.startSide - this.last.endSide;\n if (diff <= 0 && (from - this.lastFrom || value.startSide - this.last.startSide) < 0)\n throw new Error(\"Ranges must be added sorted by `from` position and `startSide`\");\n if (diff < 0)\n return false;\n if (this.from.length == 250 /* C.ChunkSize */)\n this.finishChunk(true);\n if (this.chunkStart < 0)\n this.chunkStart = from;\n this.from.push(from - this.chunkStart);\n this.to.push(to - this.chunkStart);\n this.last = value;\n this.lastFrom = from;\n this.lastTo = to;\n this.value.push(value);\n if (value.point)\n this.maxPoint = Math.max(this.maxPoint, to - from);\n return true;\n }\n /**\n @internal\n */\n addChunk(from, chunk) {\n if ((from - this.lastTo || chunk.value[0].startSide - this.last.endSide) < 0)\n return false;\n if (this.from.length)\n this.finishChunk(true);\n this.setMaxPoint = Math.max(this.setMaxPoint, chunk.maxPoint);\n this.chunks.push(chunk);\n this.chunkPos.push(from);\n let last = chunk.value.length - 1;\n this.last = chunk.value[last];\n this.lastFrom = chunk.from[last] + from;\n this.lastTo = chunk.to[last] + from;\n return true;\n }\n /**\n Finish the range set. Returns the new set. The builder can't be\n used anymore after this has been called.\n */\n finish() { return this.finishInner(RangeSet.empty); }\n /**\n @internal\n */\n finishInner(next) {\n if (this.from.length)\n this.finishChunk(false);\n if (this.chunks.length == 0)\n return next;\n let result = RangeSet.create(this.chunkPos, this.chunks, this.nextLayer ? this.nextLayer.finishInner(next) : next, this.setMaxPoint);\n this.from = null; // Make sure further `add` calls produce errors\n return result;\n }\n}\nfunction findSharedChunks(a, b, textDiff) {\n let inA = new Map();\n for (let set of a)\n for (let i = 0; i < set.chunk.length; i++)\n if (set.chunk[i].maxPoint <= 0)\n inA.set(set.chunk[i], set.chunkPos[i]);\n let shared = new Set();\n for (let set of b)\n for (let i = 0; i < set.chunk.length; i++) {\n let known = inA.get(set.chunk[i]);\n if (known != null && (textDiff ? textDiff.mapPos(known) : known) == set.chunkPos[i] &&\n !(textDiff === null || textDiff === void 0 ? void 0 : textDiff.touchesRange(known, known + set.chunk[i].length)))\n shared.add(set.chunk[i]);\n }\n return shared;\n}\nclass LayerCursor {\n constructor(layer, skip, minPoint, rank = 0) {\n this.layer = layer;\n this.skip = skip;\n this.minPoint = minPoint;\n this.rank = rank;\n }\n get startSide() { return this.value ? this.value.startSide : 0; }\n get endSide() { return this.value ? this.value.endSide : 0; }\n goto(pos, side = -1000000000 /* C.Far */) {\n this.chunkIndex = this.rangeIndex = 0;\n this.gotoInner(pos, side, false);\n return this;\n }\n gotoInner(pos, side, forward) {\n while (this.chunkIndex < this.layer.chunk.length) {\n let next = this.layer.chunk[this.chunkIndex];\n if (!(this.skip && this.skip.has(next) ||\n this.layer.chunkEnd(this.chunkIndex) < pos ||\n next.maxPoint < this.minPoint))\n break;\n this.chunkIndex++;\n forward = false;\n }\n if (this.chunkIndex < this.layer.chunk.length) {\n let rangeIndex = this.layer.chunk[this.chunkIndex].findIndex(pos - this.layer.chunkPos[this.chunkIndex], side, true);\n if (!forward || this.rangeIndex < rangeIndex)\n this.setRangeIndex(rangeIndex);\n }\n this.next();\n }\n forward(pos, side) {\n if ((this.to - pos || this.endSide - side) < 0)\n this.gotoInner(pos, side, true);\n }\n next() {\n for (;;) {\n if (this.chunkIndex == this.layer.chunk.length) {\n this.from = this.to = 1000000000 /* C.Far */;\n this.value = null;\n break;\n }\n else {\n let chunkPos = this.layer.chunkPos[this.chunkIndex], chunk = this.layer.chunk[this.chunkIndex];\n let from = chunkPos + chunk.from[this.rangeIndex];\n this.from = from;\n this.to = chunkPos + chunk.to[this.rangeIndex];\n this.value = chunk.value[this.rangeIndex];\n this.setRangeIndex(this.rangeIndex + 1);\n if (this.minPoint < 0 || this.value.point && this.to - this.from >= this.minPoint)\n break;\n }\n }\n }\n setRangeIndex(index) {\n if (index == this.layer.chunk[this.chunkIndex].value.length) {\n this.chunkIndex++;\n if (this.skip) {\n while (this.chunkIndex < this.layer.chunk.length && this.skip.has(this.layer.chunk[this.chunkIndex]))\n this.chunkIndex++;\n }\n this.rangeIndex = 0;\n }\n else {\n this.rangeIndex = index;\n }\n }\n nextChunk() {\n this.chunkIndex++;\n this.rangeIndex = 0;\n this.next();\n }\n compare(other) {\n return this.from - other.from || this.startSide - other.startSide || this.rank - other.rank ||\n this.to - other.to || this.endSide - other.endSide;\n }\n}\nclass HeapCursor {\n constructor(heap) {\n this.heap = heap;\n }\n static from(sets, skip = null, minPoint = -1) {\n let heap = [];\n for (let i = 0; i < sets.length; i++) {\n for (let cur = sets[i]; !cur.isEmpty; cur = cur.nextLayer) {\n if (cur.maxPoint >= minPoint)\n heap.push(new LayerCursor(cur, skip, minPoint, i));\n }\n }\n return heap.length == 1 ? heap[0] : new HeapCursor(heap);\n }\n get startSide() { return this.value ? this.value.startSide : 0; }\n goto(pos, side = -1000000000 /* C.Far */) {\n for (let cur of this.heap)\n cur.goto(pos, side);\n for (let i = this.heap.length >> 1; i >= 0; i--)\n heapBubble(this.heap, i);\n this.next();\n return this;\n }\n forward(pos, side) {\n for (let cur of this.heap)\n cur.forward(pos, side);\n for (let i = this.heap.length >> 1; i >= 0; i--)\n heapBubble(this.heap, i);\n if ((this.to - pos || this.value.endSide - side) < 0)\n this.next();\n }\n next() {\n if (this.heap.length == 0) {\n this.from = this.to = 1000000000 /* C.Far */;\n this.value = null;\n this.rank = -1;\n }\n else {\n let top = this.heap[0];\n this.from = top.from;\n this.to = top.to;\n this.value = top.value;\n this.rank = top.rank;\n if (top.value)\n top.next();\n heapBubble(this.heap, 0);\n }\n }\n}\nfunction heapBubble(heap, index) {\n for (let cur = heap[index];;) {\n let childIndex = (index << 1) + 1;\n if (childIndex >= heap.length)\n break;\n let child = heap[childIndex];\n if (childIndex + 1 < heap.length && child.compare(heap[childIndex + 1]) >= 0) {\n child = heap[childIndex + 1];\n childIndex++;\n }\n if (cur.compare(child) < 0)\n break;\n heap[childIndex] = cur;\n heap[index] = child;\n index = childIndex;\n }\n}\nclass SpanCursor {\n constructor(sets, skip, minPoint) {\n this.minPoint = minPoint;\n this.active = [];\n this.activeTo = [];\n this.activeRank = [];\n this.minActive = -1;\n // A currently active point range, if any\n this.point = null;\n this.pointFrom = 0;\n this.pointRank = 0;\n this.to = -1000000000 /* C.Far */;\n this.endSide = 0;\n // The amount of open active ranges at the start of the iterator.\n // Not including points.\n this.openStart = -1;\n this.cursor = HeapCursor.from(sets, skip, minPoint);\n }\n goto(pos, side = -1000000000 /* C.Far */) {\n this.cursor.goto(pos, side);\n this.active.length = this.activeTo.length = this.activeRank.length = 0;\n this.minActive = -1;\n this.to = pos;\n this.endSide = side;\n this.openStart = -1;\n this.next();\n return this;\n }\n forward(pos, side) {\n while (this.minActive > -1 && (this.activeTo[this.minActive] - pos || this.active[this.minActive].endSide - side) < 0)\n this.removeActive(this.minActive);\n this.cursor.forward(pos, side);\n }\n removeActive(index) {\n remove(this.active, index);\n remove(this.activeTo, index);\n remove(this.activeRank, index);\n this.minActive = findMinIndex(this.active, this.activeTo);\n }\n addActive(trackOpen) {\n let i = 0, { value, to, rank } = this.cursor;\n // Organize active marks by rank first, then by size\n while (i < this.activeRank.length && (rank - this.activeRank[i] || to - this.activeTo[i]) > 0)\n i++;\n insert(this.active, i, value);\n insert(this.activeTo, i, to);\n insert(this.activeRank, i, rank);\n if (trackOpen)\n insert(trackOpen, i, this.cursor.from);\n this.minActive = findMinIndex(this.active, this.activeTo);\n }\n // After calling this, if `this.point` != null, the next range is a\n // point. Otherwise, it's a regular range, covered by `this.active`.\n next() {\n let from = this.to, wasPoint = this.point;\n this.point = null;\n let trackOpen = this.openStart < 0 ? [] : null;\n for (;;) {\n let a = this.minActive;\n if (a > -1 && (this.activeTo[a] - this.cursor.from || this.active[a].endSide - this.cursor.startSide) < 0) {\n if (this.activeTo[a] > from) {\n this.to = this.activeTo[a];\n this.endSide = this.active[a].endSide;\n break;\n }\n this.removeActive(a);\n if (trackOpen)\n remove(trackOpen, a);\n }\n else if (!this.cursor.value) {\n this.to = this.endSide = 1000000000 /* C.Far */;\n break;\n }\n else if (this.cursor.from > from) {\n this.to = this.cursor.from;\n this.endSide = this.cursor.startSide;\n break;\n }\n else {\n let nextVal = this.cursor.value;\n if (!nextVal.point) { // Opening a range\n this.addActive(trackOpen);\n this.cursor.next();\n }\n else if (wasPoint && this.cursor.to == this.to && this.cursor.from < this.cursor.to) {\n // Ignore any non-empty points that end precisely at the end of the prev point\n this.cursor.next();\n }\n else { // New point\n this.point = nextVal;\n this.pointFrom = this.cursor.from;\n this.pointRank = this.cursor.rank;\n this.to = this.cursor.to;\n this.endSide = nextVal.endSide;\n this.cursor.next();\n this.forward(this.to, this.endSide);\n break;\n }\n }\n }\n if (trackOpen) {\n this.openStart = 0;\n for (let i = trackOpen.length - 1; i >= 0 && trackOpen[i] < from; i--)\n this.openStart++;\n }\n }\n activeForPoint(to) {\n if (!this.active.length)\n return this.active;\n let active = [];\n for (let i = this.active.length - 1; i >= 0; i--) {\n if (this.activeRank[i] < this.pointRank)\n break;\n if (this.activeTo[i] > to || this.activeTo[i] == to && this.active[i].endSide >= this.point.endSide)\n active.push(this.active[i]);\n }\n return active.reverse();\n }\n openEnd(to) {\n let open = 0;\n for (let i = this.activeTo.length - 1; i >= 0 && this.activeTo[i] > to; i--)\n open++;\n return open;\n }\n}\nfunction compare(a, startA, b, startB, length, comparator) {\n a.goto(startA);\n b.goto(startB);\n let endB = startB + length;\n let pos = startB, dPos = startB - startA;\n for (;;) {\n let diff = (a.to + dPos) - b.to || a.endSide - b.endSide;\n let end = diff < 0 ? a.to + dPos : b.to, clipEnd = Math.min(end, endB);\n if (a.point || b.point) {\n if (!(a.point && b.point && (a.point == b.point || a.point.eq(b.point)) &&\n sameValues(a.activeForPoint(a.to), b.activeForPoint(b.to))))\n comparator.comparePoint(pos, clipEnd, a.point, b.point);\n }\n else {\n if (clipEnd > pos && !sameValues(a.active, b.active))\n comparator.compareRange(pos, clipEnd, a.active, b.active);\n }\n if (end > endB)\n break;\n pos = end;\n if (diff <= 0)\n a.next();\n if (diff >= 0)\n b.next();\n }\n}\nfunction sameValues(a, b) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (a[i] != b[i] && !a[i].eq(b[i]))\n return false;\n return true;\n}\nfunction remove(array, index) {\n for (let i = index, e = array.length - 1; i < e; i++)\n array[i] = array[i + 1];\n array.pop();\n}\nfunction insert(array, index, value) {\n for (let i = array.length - 1; i >= index; i--)\n array[i + 1] = array[i];\n array[index] = value;\n}\nfunction findMinIndex(value, array) {\n let found = -1, foundPos = 1000000000 /* C.Far */;\n for (let i = 0; i < array.length; i++)\n if ((array[i] - foundPos || value[i].endSide - value[found].endSide) < 0) {\n found = i;\n foundPos = array[i];\n }\n return found;\n}\n\n/**\nCount the column position at the given offset into the string,\ntaking extending characters and tab size into account.\n*/\nfunction countColumn(string, tabSize, to = string.length) {\n let n = 0;\n for (let i = 0; i < to;) {\n if (string.charCodeAt(i) == 9) {\n n += tabSize - (n % tabSize);\n i++;\n }\n else {\n n++;\n i = findClusterBreak(string, i);\n }\n }\n return n;\n}\n/**\nFind the offset that corresponds to the given column position in a\nstring, taking extending characters and tab size into account. By\ndefault, the string length is returned when it is too short to\nreach the column. Pass `strict` true to make it return -1 in that\nsituation.\n*/\nfunction findColumn(string, col, tabSize, strict) {\n for (let i = 0, n = 0;;) {\n if (n >= col)\n return i;\n if (i == string.length)\n break;\n n += string.charCodeAt(i) == 9 ? tabSize - (n % tabSize) : 1;\n i = findClusterBreak(string, i);\n }\n return strict === true ? -1 : string.length;\n}\n\nexport { Annotation, AnnotationType, ChangeDesc, ChangeSet, CharCategory, Compartment, EditorSelection, EditorState, Facet, Line, MapMode, Prec, Range, RangeSet, RangeSetBuilder, RangeValue, SelectionRange, StateEffect, StateEffectType, StateField, Text, Transaction, codePointAt, codePointSize, combineConfig, countColumn, findClusterBreak, findColumn, fromCodePoint };\n","const C = \"\\u037c\"\nconst COUNT = typeof Symbol == \"undefined\" ? \"__\" + C : Symbol.for(C)\nconst SET = typeof Symbol == \"undefined\" ? \"__styleSet\" + Math.floor(Math.random() * 1e8) : Symbol(\"styleSet\")\nconst top = typeof globalThis != \"undefined\" ? globalThis : typeof window != \"undefined\" ? window : {}\n\n// :: - Style modules encapsulate a set of CSS rules defined from\n// JavaScript. Their definitions are only available in a given DOM\n// root after it has been _mounted_ there with `StyleModule.mount`.\n//\n// Style modules should be created once and stored somewhere, as\n// opposed to re-creating them every time you need them. The amount of\n// CSS rules generated for a given DOM root is bounded by the amount\n// of style modules that were used. So to avoid leaking rules, don't\n// create these dynamically, but treat them as one-time allocations.\nexport class StyleModule {\n // :: (Object\",\n },\n \".env\": {\n code: \"ASTRO_TELEMETRY_DISABLED=\\\"1\\\"\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n astro: \"^1.6.12\",\n \"esbuild-wasm\": \"^0.15.16\",\n },\n scripts: {\n dev: \"astro dev\",\n start: \"astro dev\",\n build: \"astro build\",\n preview: \"astro preview\",\n astro: \"astro\",\n },\n }),\n },\n },\n main: \"/src/pages/index.astro\",\n environment: \"node\",\n};\n\nvar NEXTJS_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/pages/_app.js\": {\n code: \"import '../styles.css'\\n\\nexport default function MyApp({ Component, pageProps }) {\\n return \\n}\",\n }, \"/pages/index.js\": {\n code: \"export default function Home({ data }) {\\n return (\\n
\\n

Hello {data}

\\n
\\n );\\n}\\n \\nexport function getServerSideProps() {\\n return {\\n props: { data: \\\"world\\\" },\\n }\\n}\\n\",\n }, \"/next.config.js\": {\n code: \"/** @type {import('next').NextConfig} */\\nconst nextConfig = {\\n reactStrictMode: true,\\n swcMinify: true,\\n}\\n\\nmodule.exports = nextConfig\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n name: \"my-app\",\n version: \"0.1.0\",\n private: true,\n scripts: {\n dev: \"NEXT_TELEMETRY_DISABLED=1 next dev\",\n build: \"next build\",\n start: \"next start\",\n lint: \"next lint\",\n },\n dependencies: {\n next: \"12.1.6\",\n react: \"18.2.0\",\n \"react-dom\": \"18.2.0\",\n \"@next/swc-wasm-nodejs\": \"12.1.6\",\n },\n }),\n } }),\n main: \"/pages/index.js\",\n environment: \"node\",\n};\n\nvar NODE_TEMPLATE = {\n files: {\n \"/index.js\": {\n code: \"const http = require('http');\\n\\nconst hostname = '127.0.0.1';\\nconst port = 3000;\\n\\nconst server = http.createServer((req, res) => {\\n res.statusCode = 200;\\n res.setHeader('Content-Type', 'text/html');\\n res.end('Hello world');\\n});\\n\\nserver.listen(port, hostname, () => {\\n console.log(`Server running at http://${hostname}:${port}/`);\\n});\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n dependencies: {},\n scripts: { start: \"node index.js\" },\n main: \"index.js\",\n }),\n },\n },\n main: \"/index.js\",\n environment: \"node\",\n};\n\nvar VITE_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/index.js\": {\n code: \"import \\\"./styles.css\\\";\\n\\ndocument.getElementById(\\\"app\\\").innerHTML = `\\n

Hello world

\\n`;\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"vite build\",\n preview: \"vite preview\",\n },\n devDependencies: {\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"0.17.12\",\n },\n }),\n } }),\n main: \"/index.js\",\n environment: \"node\",\n};\n\nvar VITE_PREACT_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.jsx\": {\n code: \"export default function App() {\\n const data = \\\"world\\\"\\n\\n return

Hello {data}

\\n}\\n\",\n }, \"/index.jsx\": {\n code: \"import { render } from \\\"preact\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\n\\nconst root = document.getElementById(\\\"root\\\");\\nrender(, root);\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n preact: \"^10.16.0\",\n },\n devDependencies: {\n \"@preact/preset-vite\": \"^2.5.0\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"0.17.12\",\n },\n }),\n }, \"/vite.config.js\": {\n code: \"import { defineConfig } from \\\"vite\\\";\\nimport preact from '@preact/preset-vite'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [preact()],\\n});\\n\",\n } }),\n main: \"/App.jsx\",\n environment: \"node\",\n};\n\nvar VITE_PREACT_TS_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.tsx\": {\n code: \"export default function App() {\\n const data: string = \\\"world\\\"\\n\\n return

Hello {data}

\\n}\\n\",\n }, \"/index.tsx\": {\n code: \"import { render } from \\\"preact\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\n\\nconst root = document.getElementById(\\\"root\\\") as HTMLElement;\\nrender(, root);\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n }, \"/tsconfig.json\": {\n code: JSON.stringify({\n compilerOptions: {\n target: \"ESNext\",\n useDefineForClassFields: true,\n lib: [\"DOM\", \"DOM.Iterable\", \"ESNext\"],\n allowJs: false,\n skipLibCheck: true,\n esModuleInterop: false,\n allowSyntheticDefaultImports: true,\n strict: true,\n forceConsistentCasingInFileNames: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n resolveJsonModule: true,\n isolatedModules: true,\n noEmit: true,\n jsx: \"react-jsx\",\n jsxImportSource: \"preact\",\n },\n include: [\"src\"],\n references: [{ path: \"./tsconfig.node.json\" }],\n }, null, 2),\n }, \"/tsconfig.node.json\": {\n code: JSON.stringify({\n compilerOptions: {\n composite: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n allowSyntheticDefaultImports: true,\n },\n include: [\"vite.config.ts\"],\n }, null, 2),\n }, \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"tsc && vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n preact: \"^10.16.0\",\n },\n devDependencies: {\n \"@preact/preset-vite\": \"^2.5.0\",\n typescript: \"^4.9.5\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"^0.17.12\",\n },\n }, null, 2),\n }, \"/vite-env.d.ts\": {\n code: '/// ',\n }, \"/vite.config.ts\": {\n code: \"import { defineConfig } from 'vite'\\nimport preact from '@preact/preset-vite'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [preact()],\\n})\\n\",\n } }),\n main: \"/App.tsx\",\n environment: \"node\",\n};\n\nvar VITE_REACT_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.jsx\": {\n code: \"export default function App() {\\n const data = \\\"world\\\"\\n\\n return

Hello {data}

\\n}\\n\",\n }, \"/index.jsx\": {\n code: \"import { StrictMode } from \\\"react\\\";\\nimport { createRoot } from \\\"react-dom/client\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\n\\nconst root = createRoot(document.getElementById(\\\"root\\\"));\\nroot.render(\\n \\n \\n \\n);\",\n }, \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n react: \"^18.2.0\",\n \"react-dom\": \"^18.2.0\",\n },\n devDependencies: {\n \"@vitejs/plugin-react\": \"3.1.0\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"0.17.12\",\n },\n }),\n }, \"/vite.config.js\": {\n code: \"import { defineConfig } from \\\"vite\\\";\\nimport react from \\\"@vitejs/plugin-react\\\";\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [react()],\\n});\\n\",\n } }),\n main: \"/App.jsx\",\n environment: \"node\",\n};\n\nvar VITE_REACT_TS_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.tsx\": {\n code: \"export default function App() {\\n const data: string = \\\"world\\\"\\n\\n return

Hello {data}

\\n}\\n\",\n }, \"/index.tsx\": {\n code: \"import { StrictMode } from \\\"react\\\";\\nimport { createRoot } from \\\"react-dom/client\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\nimport React from \\\"react\\\";\\n\\nconst root = createRoot(document.getElementById(\\\"root\\\") as HTMLElement);\\nroot.render(\\n \\n \\n \\n);\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n }, \"/tsconfig.json\": {\n code: JSON.stringify({\n compilerOptions: {\n target: \"ESNext\",\n useDefineForClassFields: true,\n lib: [\"DOM\", \"DOM.Iterable\", \"ESNext\"],\n allowJs: false,\n skipLibCheck: true,\n esModuleInterop: false,\n allowSyntheticDefaultImports: true,\n strict: true,\n forceConsistentCasingInFileNames: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n resolveJsonModule: true,\n isolatedModules: true,\n noEmit: true,\n jsx: \"react-jsx\",\n },\n include: [\"src\"],\n references: [{ path: \"./tsconfig.node.json\" }],\n }, null, 2),\n }, \"/tsconfig.node.json\": {\n code: JSON.stringify({\n compilerOptions: {\n composite: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n allowSyntheticDefaultImports: true,\n },\n include: [\"vite.config.ts\"],\n }, null, 2),\n }, \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"tsc && vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n react: \"^18.2.0\",\n \"react-dom\": \"^18.2.0\",\n },\n devDependencies: {\n \"@types/react\": \"^18.0.28\",\n \"@types/react-dom\": \"^18.0.11\",\n \"@vitejs/plugin-react\": \"^3.1.0\",\n typescript: \"^4.9.5\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"^0.17.12\",\n },\n }, null, 2),\n }, \"/vite-env.d.ts\": {\n code: '/// ',\n }, \"/vite.config.ts\": {\n code: \"import { defineConfig } from 'vite'\\nimport react from '@vitejs/plugin-react'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [react()],\\n})\\n\",\n } }),\n main: \"/App.tsx\",\n environment: \"node\",\n};\n\nvar VITE_SVELTE_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.svelte\": {\n code: \"\\n\\n

Hello {data}

\\n\\n\",\n },\n \"/src/main.js\": {\n code: \"import App from './App.svelte'\\nimport \\\"./styles.css\\\"\\n\\nconst app = new App({\\n target: document.getElementById('app'),\\n})\\n\\nexport default app\",\n },\n \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/vite.config.js\": {\n code: \"import { defineConfig } from 'vite'\\nimport { svelte } from '@sveltejs/vite-plugin-svelte'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [svelte()],\\n})\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n type: \"module\",\n scripts: {\n dev: \"vite\",\n },\n devDependencies: {\n \"@sveltejs/vite-plugin-svelte\": \"^2.0.2\",\n svelte: \"^3.55.1\",\n vite: \"4.0.4\",\n \"esbuild-wasm\": \"^0.17.12\",\n },\n }),\n },\n },\n main: \"/src/App.svelte\",\n environment: \"node\",\n};\n\nvar VITE_SVELTE_TS_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.svelte\": {\n code: \"\\n\\n

Hello {data}

\\n\\n\",\n },\n \"/src/main.ts\": {\n code: \"import App from './App.svelte'\\nimport \\\"./styles.css\\\"\\n\\nconst app = new App({\\n target: document.getElementById('app'),\\n})\\n\\nexport default app\",\n },\n \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/vite-env.d.ts\": {\n code: \"/// \\n/// \",\n },\n \"svelte.config.js\": {\n code: \"import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'\\n\\nexport default {\\n // Consult https://svelte.dev/docs#compile-time-svelte-preprocess\\n // for more information about preprocessors\\n preprocess: vitePreprocess(),\\n}\\n\",\n },\n \"/vite.config.ts\": {\n code: \"import { defineConfig } from 'vite'\\nimport { svelte } from '@sveltejs/vite-plugin-svelte'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [svelte()],\\n})\",\n },\n \"tsconfig.json\": {\n code: JSON.stringify({\n extends: \"@tsconfig/svelte/tsconfig.json\",\n compilerOptions: {\n target: \"ESNext\",\n useDefineForClassFields: true,\n module: \"ESNext\",\n resolveJsonModule: true,\n allowJs: true,\n checkJs: true,\n isolatedModules: true,\n },\n include: [\n \"src/**/*.d.ts\",\n \"src/**/*.ts\",\n \"src/**/*.js\",\n \"src/**/*.svelte\",\n ],\n references: [{ path: \"./tsconfig.node.json\" }],\n }, null, 2),\n },\n \"tsconfig.node.json\": {\n code: JSON.stringify({\n compilerOptions: {\n composite: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n },\n include: [\"vite.config.ts\"],\n }, null, 2),\n },\n \"/package.json\": {\n code: JSON.stringify({\n type: \"module\",\n scripts: {\n dev: \"vite\",\n },\n devDependencies: {\n \"@sveltejs/vite-plugin-svelte\": \"^2.0.2\",\n \"@tsconfig/svelte\": \"^3.0.0\",\n svelte: \"^3.55.1\",\n \"svelte-check\": \"^2.10.3\",\n tslib: \"^2.5.0\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"^0.17.12\",\n },\n }, null, 2),\n },\n },\n main: \"/src/App.svelte\",\n environment: \"node\",\n};\n\nvar VITE_VUE_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.vue\": {\n code: \"\\n\\n\\n\\n\",\n },\n \"/src/main.js\": {\n code: \"import { createApp } from 'vue'\\nimport App from './App.vue'\\nimport \\\"./styles.css\\\"\\n \\ncreateApp(App).mount('#app') \\n\",\n },\n \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/vite.config.js\": {\n code: \"import { defineConfig } from 'vite'\\nimport vue from '@vitejs/plugin-vue'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [vue()]\\n})\\n\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n vue: \"^3.2.45\",\n },\n devDependencies: {\n \"@vitejs/plugin-vue\": \"3.2.0\",\n vite: \"4.1.4\",\n \"esbuild-wasm\": \"0.17.12\",\n },\n }),\n },\n },\n main: \"/src/App.vue\",\n environment: \"node\",\n};\n\nvar VITE_VUE_TS_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.vue\": {\n code: \"\\n\\n\\n\\n\",\n },\n \"/src/main.ts\": {\n code: \"import { createApp } from 'vue'\\nimport App from './App.vue'\\nimport \\\"./styles.css\\\"\\n\\ncreateApp(App).mount('#app')\\n\",\n },\n \"/index.html\": {\n code: \"\\n\\n \\n \\n \\n Vite App\\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/vite-env.d.ts\": {\n code: '/// ',\n },\n \"/vite.config.ts\": {\n code: \"import { defineConfig } from 'vite'\\nimport vue from '@vitejs/plugin-vue'\\n\\n// https://vitejs.dev/config/\\nexport default defineConfig({\\n plugins: [vue()]\\n})\\n\",\n },\n \"tsconfig.json\": {\n code: JSON.stringify({\n compilerOptions: {\n target: \"ESNext\",\n useDefineForClassFields: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n strict: true,\n jsx: \"preserve\",\n resolveJsonModule: true,\n isolatedModules: true,\n esModuleInterop: true,\n lib: [\"ESNext\", \"DOM\"],\n skipLibCheck: true,\n noEmit: true,\n },\n include: [\n \"src/**/*.ts\",\n \"src/**/*.d.ts\",\n \"src/**/*.tsx\",\n \"src/**/*.vue\",\n ],\n references: [{ path: \"./tsconfig.node.json\" }],\n }, null, 2),\n },\n \"tsconfig.node.json\": {\n code: JSON.stringify({\n compilerOptions: {\n composite: true,\n module: \"ESNext\",\n moduleResolution: \"Node\",\n allowSyntheticDefaultImports: true,\n },\n include: [\"vite.config.ts\"],\n }, null, 2),\n },\n \"/package.json\": {\n code: JSON.stringify({\n scripts: {\n dev: \"vite\",\n build: \"tsc && vite build\",\n preview: \"vite preview\",\n },\n dependencies: {\n vue: \"^3.2.47\",\n },\n devDependencies: {\n \"@vitejs/plugin-vue\": \"^4.0.0\",\n vite: \"4.1.4\",\n \"vue-tsc\": \"^1.2.0\",\n typescript: \"^4.9.5\",\n \"esbuild-wasm\": \"^0.17.12\",\n },\n }, null, 2),\n },\n },\n main: \"/src/App.vue\",\n environment: \"node\",\n};\n\nvar ANGULAR_TEMPLATE = {\n files: {\n \"/src/app/app.component.css\": commonFiles[\"/styles.css\"],\n \"/src/app/app.component.html\": {\n code: \"
\\n

{{ helloWorld }}

\\n
\\n\",\n },\n \"/src/app/app.component.ts\": {\n code: \"import { Component } from \\\"@angular/core\\\";\\n\\n@Component({\\n selector: \\\"app-root\\\",\\n templateUrl: \\\"./app.component.html\\\",\\n styleUrls: [\\\"./app.component.css\\\"]\\n})\\nexport class AppComponent {\\n helloWorld = \\\"Hello world\\\";\\n} \\n\",\n },\n \"/src/app/app.module.ts\": {\n code: \"import { BrowserModule } from \\\"@angular/platform-browser\\\";\\nimport { NgModule } from \\\"@angular/core\\\";\\n \\nimport { AppComponent } from \\\"./app.component\\\";\\n \\n@NgModule({\\n declarations: [AppComponent],\\n imports: [BrowserModule],\\n providers: [],\\n bootstrap: [AppComponent]\\n})\\nexport class AppModule {} \\n\",\n },\n \"/src/index.html\": {\n code: \"\\n\\n \\n\\n \\n Angular\\n \\n \\n \\n \\n\\n \\n\\n \\n\\n \\n\\n\",\n },\n \"/src/main.ts\": {\n code: \"import { enableProdMode } from \\\"@angular/core\\\";\\nimport { platformBrowserDynamic } from \\\"@angular/platform-browser-dynamic\\\";\\n \\nimport { AppModule } from \\\"./app/app.module\\\"; \\n\\nplatformBrowserDynamic()\\n .bootstrapModule(AppModule)\\n .catch(err => console.log(err));\\n \\n\",\n },\n \"/src/polyfills.ts\": {\n code: \"import \\\"core-js/proposals/reflect-metadata\\\"; \\n import \\\"zone.js/dist/zone\\\";\\n\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n \"@angular/core\": \"^11.2.0\",\n \"@angular/platform-browser\": \"^11.2.0\",\n \"@angular/platform-browser-dynamic\": \"^11.2.0\",\n \"@angular/common\": \"^11.2.0\",\n \"@angular/compiler\": \"^11.2.0\",\n \"zone.js\": \"0.11.3\",\n \"core-js\": \"3.8.3\",\n rxjs: \"6.6.3\",\n },\n main: \"/src/main.ts\",\n }),\n },\n },\n main: \"/src/app/app.component.ts\",\n environment: \"angular-cli\",\n};\n\nvar REACT_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.js\": {\n code: \"export default function App() {\\n return

Hello world

\\n}\\n\",\n }, \"/index.js\": {\n code: \"import React, { StrictMode } from \\\"react\\\";\\nimport { createRoot } from \\\"react-dom/client\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\n\\nconst root = createRoot(document.getElementById(\\\"root\\\"));\\nroot.render(\\n \\n \\n \\n);\",\n }, \"/public/index.html\": {\n code: \"\\n\\n \\n \\n \\n Document\\n \\n \\n
\\n \\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n react: \"^18.0.0\",\n \"react-dom\": \"^18.0.0\",\n \"react-scripts\": \"^5.0.0\",\n },\n main: \"/index.js\",\n }),\n } }),\n main: \"/App.js\",\n environment: \"create-react-app\",\n};\n\nvar REACT_TYPESCRIPT_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"tsconfig.json\": {\n code: \"{\\n \\\"include\\\": [\\n \\\"./**/*\\\"\\n ],\\n \\\"compilerOptions\\\": {\\n \\\"strict\\\": true,\\n \\\"esModuleInterop\\\": true,\\n \\\"lib\\\": [ \\\"dom\\\", \\\"es2015\\\" ],\\n \\\"jsx\\\": \\\"react-jsx\\\"\\n }\\n}\",\n }, \"/App.tsx\": {\n code: \"export default function App(): JSX.Element {\\n return

Hello world

\\n}\\n\",\n }, \"/index.tsx\": {\n code: \"import React, { StrictMode } from \\\"react\\\";\\nimport { createRoot } from \\\"react-dom/client\\\";\\nimport \\\"./styles.css\\\";\\n\\nimport App from \\\"./App\\\";\\n\\nconst root = createRoot(document.getElementById(\\\"root\\\"));\\nroot.render(\\n \\n \\n \\n);\",\n }, \"/public/index.html\": {\n code: \"\\n\\n \\n \\n \\n Document\\n \\n \\n
\\n \\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n react: \"^18.0.0\",\n \"react-dom\": \"^18.0.0\",\n \"react-scripts\": \"^4.0.0\",\n },\n devDependencies: {\n \"@types/react\": \"^18.0.0\",\n \"@types/react-dom\": \"^18.0.0\",\n typescript: \"^4.0.0\",\n },\n main: \"/index.tsx\",\n }),\n } }),\n main: \"/App.tsx\",\n environment: \"create-react-app\",\n};\n\nvar SOLID_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.tsx\": {\n code: \"import { Component } from \\\"solid-js\\\";\\n\\nconst App: Component = () => {\\n return

Hello world

\\n};\\n\\nexport default App;\",\n }, \"/index.tsx\": {\n code: \"import { render } from \\\"solid-js/web\\\";\\nimport App from \\\"./App\\\";\\n\\nimport \\\"./styles.css\\\";\\n\\nrender(() => , document.getElementById(\\\"app\\\"));\",\n }, \"/index.html\": {\n code: \"\\n\\n Parcel Sandbox\\n \\n\\n\\n
\\n \\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n \"solid-js\": \"1.3.15\",\n },\n main: \"/index.tsx\",\n }),\n } }),\n main: \"/App.tsx\",\n environment: \"solid\",\n};\n\nvar SVELTE_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/App.svelte\": {\n code: \"\\n\\n\\n\\n
\\n

Hello {name}

\\n
\",\n }, \"/index.js\": {\n code: \"import App from \\\"./App.svelte\\\";\\nimport \\\"./styles.css\\\";\\n\\nconst app = new App({\\n target: document.body\\n});\\n\\nexport default app;\\n \",\n }, \"/public/index.html\": {\n code: \"\\n\\n \\n \\n \\n\\n Svelte app\\n\\n \\n \\n\\n \\n \\n \\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {\n svelte: \"^3.0.0\",\n },\n main: \"/index.js\",\n }),\n } }),\n main: \"/App.svelte\",\n environment: \"svelte\",\n};\n\nvar TEST_TYPESCRIPT_TEMPLATE = {\n files: {\n \"tsconfig.json\": {\n code: \"{\\n \\\"include\\\": [\\n \\\"./**/*\\\"\\n ],\\n \\\"compilerOptions\\\": {\\n \\\"strict\\\": true,\\n \\\"esModuleInterop\\\": true,\\n \\\"lib\\\": [ \\\"dom\\\", \\\"es2015\\\" ],\\n \\\"jsx\\\": \\\"react-jsx\\\"\\n }\\n}\",\n },\n \"/add.ts\": {\n code: \"export const add = (a: number, b: number): number => a + b;\",\n },\n \"/add.test.ts\": {\n code: \"import { add } from './add';\\n\\ndescribe('add', () => {\\n test('Commutative Law of Addition', () => {\\n expect(add(1, 2)).toBe(add(2, 1));\\n });\\n});\",\n },\n \"package.json\": {\n code: JSON.stringify({\n dependencies: {},\n devDependencies: { typescript: \"^4.0.0\" },\n main: \"/add.ts\",\n }),\n },\n },\n main: \"/add.test.ts\",\n environment: \"parcel\",\n mode: \"tests\",\n};\n\nvar VANILLA_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/index.js\": {\n code: \"import \\\"./styles.css\\\";\\n\\ndocument.getElementById(\\\"app\\\").innerHTML = `\\n

Hello world

\\n`;\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n\\n\\n Parcel Sandbox\\n \\n\\n\\n\\n
\\n\\n \\n\\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {},\n main: \"/index.js\",\n }),\n } }),\n main: \"/index.js\",\n environment: \"parcel\",\n};\n\nvar VANILLA_TYPESCRIPT_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"tsconfig.json\": {\n code: \"{\\n \\\"compilerOptions\\\": {\\n \\\"strict\\\": true,\\n \\\"module\\\": \\\"commonjs\\\",\\n \\\"jsx\\\": \\\"preserve\\\",\\n \\\"esModuleInterop\\\": true,\\n \\\"sourceMap\\\": true,\\n \\\"allowJs\\\": true,\\n \\\"lib\\\": [\\n \\\"es6\\\",\\n \\\"dom\\\"\\n ],\\n \\\"rootDir\\\": \\\"src\\\",\\n \\\"moduleResolution\\\": \\\"node\\\"\\n }\\n}\",\n }, \"/index.ts\": {\n code: \"import \\\"./styles.css\\\";\\n\\ndocument.getElementById(\\\"app\\\").innerHTML = `\\n

Hello world

\\n`;\\n\",\n }, \"/index.html\": {\n code: \"\\n\\n\\n\\n Parcel Sandbox\\n \\n\\n\\n\\n
\\n\\n \\n\\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {},\n devDependencies: {\n typescript: \"^4.0.0\",\n },\n main: \"/index.ts\",\n }),\n } }),\n main: \"/index.ts\",\n environment: \"parcel\",\n};\n\nvar VUE_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.vue\": {\n code: \"\\n\\n\",\n },\n \"/src/main.js\": {\n code: \"import { createApp } from 'vue'\\nimport App from './App.vue'\\nimport \\\"./styles.css\\\";\\n\\ncreateApp(App).mount('#app')\\n\",\n },\n \"/public/index.html\": {\n code: \"\\n\\n \\n \\n \\n \\n codesandbox\\n \\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n name: \"vue3\",\n version: \"0.1.0\",\n private: true,\n main: \"/src/main.js\",\n scripts: {\n serve: \"vue-cli-service serve\",\n build: \"vue-cli-service build\",\n },\n dependencies: {\n \"core-js\": \"^3.26.1\",\n vue: \"^3.2.45\",\n },\n devDependencies: {\n \"@vue/cli-plugin-babel\": \"^5.0.8\",\n \"@vue/cli-service\": \"^5.0.8\",\n },\n }),\n },\n },\n main: \"/src/App.vue\",\n environment: \"vue-cli\",\n};\n\nvar VUE_TS_TEMPLATE = {\n files: {\n \"/src/styles.css\": commonFiles[\"/styles.css\"],\n \"/src/App.vue\": {\n code: \"\\n\\n\",\n },\n \"/src/main.ts\": {\n code: \"import { createApp } from 'vue'\\nimport App from './App.vue'\\nimport \\\"./styles.css\\\";\\n\\ncreateApp(App).mount('#app')\\n\",\n },\n \"/src/shims-vue.d.ts\": \"/* eslint-disable */\\ndeclare module \\\"*.vue\\\" {\\n import type { DefineComponent } from \\\"vue\\\";\\n const component: DefineComponent<{}, {}, any>;\\n export default component;\\n}\",\n \"/public/index.html\": {\n code: \"\\n\\n \\n \\n \\n \\n codesandbox\\n \\n \\n \\n
\\n \\n \\n\\n\",\n },\n \"/package.json\": {\n code: JSON.stringify({\n name: \"vue3-ts\",\n version: \"0.1.0\",\n private: true,\n main: \"/src/main.ts\",\n scripts: {\n serve: \"vue-cli-service serve\",\n build: \"vue-cli-service build\",\n },\n dependencies: {\n \"core-js\": \"^3.26.1\",\n vue: \"^3.2.45\",\n },\n devDependencies: {\n \"@vue/cli-plugin-babel\": \"^5.0.8\",\n \"@vue/cli-plugin-typescript\": \"^5.0.8\",\n \"@vue/cli-service\": \"^5.0.8\",\n typescript: \"^4.9.3\",\n },\n }),\n },\n \"/tsconfig.json\": {\n code: JSON.stringify({\n compilerOptions: {\n target: \"esnext\",\n module: \"esnext\",\n strict: true,\n jsx: \"preserve\",\n moduleResolution: \"node\",\n experimentalDecorators: true,\n skipLibCheck: true,\n esModuleInterop: true,\n allowSyntheticDefaultImports: true,\n forceConsistentCasingInFileNames: true,\n useDefineForClassFields: true,\n sourceMap: false,\n baseUrl: \".\",\n types: [\"webpack-env\"],\n paths: {\n \"@/*\": [\"src/*\"],\n },\n lib: [\"esnext\", \"dom\", \"dom.iterable\", \"scripthost\"],\n },\n include: [\n \"src/**/*.ts\",\n \"src/**/*.tsx\",\n \"src/**/*.vue\",\n \"tests/**/*.ts\",\n \"tests/**/*.tsx\",\n ],\n exclude: [\"node_modules\"],\n }),\n },\n },\n main: \"/src/App.vue\",\n environment: \"vue-cli\",\n};\n\nvar STATIC_TEMPLATE = {\n files: __assign(__assign({}, commonFiles), { \"/index.html\": {\n code: \"\\n\\n\\n\\n Parcel Sandbox\\n \\n \\n\\n\\n\\n

Hello world

\\n\\n\\n\",\n }, \"/package.json\": {\n code: JSON.stringify({\n dependencies: {},\n main: \"/index.html\",\n }),\n } }),\n main: \"/index.html\",\n environment: \"static\",\n};\n\nvar SANDBOX_TEMPLATES = {\n static: STATIC_TEMPLATE,\n angular: ANGULAR_TEMPLATE,\n react: REACT_TEMPLATE,\n \"react-ts\": REACT_TYPESCRIPT_TEMPLATE,\n solid: SOLID_TEMPLATE,\n svelte: SVELTE_TEMPLATE,\n \"test-ts\": TEST_TYPESCRIPT_TEMPLATE,\n \"vanilla-ts\": VANILLA_TYPESCRIPT_TEMPLATE,\n vanilla: VANILLA_TEMPLATE,\n vue: VUE_TEMPLATE,\n \"vue-ts\": VUE_TS_TEMPLATE,\n node: NODE_TEMPLATE,\n nextjs: NEXTJS_TEMPLATE,\n vite: VITE_TEMPLATE,\n \"vite-react\": VITE_REACT_TEMPLATE,\n \"vite-react-ts\": VITE_REACT_TS_TEMPLATE,\n \"vite-preact\": VITE_PREACT_TEMPLATE,\n \"vite-preact-ts\": VITE_PREACT_TS_TEMPLATE,\n \"vite-vue\": VITE_VUE_TEMPLATE,\n \"vite-vue-ts\": VITE_VUE_TS_TEMPLATE,\n \"vite-svelte\": VITE_SVELTE_TEMPLATE,\n \"vite-svelte-ts\": VITE_SVELTE_TS_TEMPLATE,\n astro: ASTRO_TEMPLATE,\n};\n\n/**\n * Creates a standard sandpack state given the setup,\n * options, and files props. Using this function is\n * the reliable way to ensure a consistent and predictable\n * sandpack-content throughout application\n */\nvar getSandpackStateFromProps = function (props) {\n var _a, _b, _c, _d, _e, _f;\n var normalizedFilesPath = normalizePath(props.files);\n // Merge predefined template with custom setup\n var projectSetup = combineTemplateFilesToSetup({\n template: props.template,\n customSetup: props.customSetup,\n files: normalizedFilesPath,\n });\n // visibleFiles and activeFile override the setup flags\n var visibleFiles = normalizePath((_b = (_a = props.options) === null || _a === void 0 ? void 0 : _a.visibleFiles) !== null && _b !== void 0 ? _b : []);\n var activeFile = ((_c = props.options) === null || _c === void 0 ? void 0 : _c.activeFile)\n ? resolveFile((_d = props.options) === null || _d === void 0 ? void 0 : _d.activeFile, projectSetup.files)\n : undefined;\n if (visibleFiles.length === 0 && normalizedFilesPath) {\n // extract open and active files from the custom input files\n Object.keys(normalizedFilesPath).forEach(function (filePath) {\n var file = normalizedFilesPath[filePath];\n if (typeof file === \"string\") {\n visibleFiles.push(filePath);\n return;\n }\n if (!activeFile && file.active) {\n activeFile = filePath;\n if (file.hidden === true) {\n // active file needs to be available even if someone sets it as hidden by accident\n visibleFiles.push(filePath);\n }\n }\n if (!file.hidden) {\n visibleFiles.push(filePath);\n }\n });\n }\n if (visibleFiles.length === 0) {\n // If no files are received, use the project setup / template\n visibleFiles = [projectSetup.main];\n }\n // Make sure it resolves the entry file\n if (projectSetup.entry && !projectSetup.files[projectSetup.entry]) {\n /* eslint-disable */\n // @ts-ignore\n projectSetup.entry = resolveFile(projectSetup.entry, projectSetup.files);\n /* eslint-enable */\n }\n if (!activeFile && projectSetup.main) {\n activeFile = projectSetup.main;\n }\n // If no activeFile is specified, use the first open file\n if (!activeFile || !projectSetup.files[activeFile]) {\n activeFile = visibleFiles[0];\n }\n // If for whatever reason the active path was not set as open, set it\n if (!visibleFiles.includes(activeFile)) {\n visibleFiles.push(activeFile);\n }\n var files = addPackageJSONIfNeeded(projectSetup.files, (_e = projectSetup.dependencies) !== null && _e !== void 0 ? _e : {}, (_f = projectSetup.devDependencies) !== null && _f !== void 0 ? _f : {}, projectSetup.entry);\n var existOpenPath = visibleFiles.filter(function (path) { return files[path]; });\n return {\n visibleFiles: existOpenPath,\n /* eslint-disable-next-line @typescript-eslint/no-non-null-assertion */\n activeFile: activeFile,\n files: files,\n environment: projectSetup.environment,\n shouldUpdatePreview: true,\n };\n};\n/**\n * Given a file tree and a file, it uses a couple of rules\n * to tweak the filename to match with one of the inside of file tree\n *\n * - Adds the leading slash;\n * - Tries to find the same filename with different extensions (js only);\n * - Returns `null` if it doesn't satisfy any rule\n */\nvar resolveFile = function (path, files) {\n var normalizedFilesPath = normalizePath(files);\n var normalizedPath = normalizePath(path);\n if (normalizedPath in normalizedFilesPath) {\n return normalizedPath;\n }\n if (!path) {\n return null;\n }\n var resolvedPath = null;\n var index = 0;\n var strategies = [\".js\", \".jsx\", \".ts\", \".tsx\"];\n while (!resolvedPath && index < strategies.length) {\n var removeExtension = normalizedPath.split(\".\")[0];\n var attemptPath = \"\".concat(removeExtension).concat(strategies[index]);\n if (normalizedFilesPath[attemptPath] !== undefined) {\n resolvedPath = attemptPath;\n }\n index++;\n }\n return resolvedPath;\n};\n/**\n * The template is predefined (eg: react, vue, vanilla)\n * The setup can overwrite anything from the template\n * (eg: files, dependencies, environment, etc.)\n */\nvar combineTemplateFilesToSetup = function (_a) {\n var files = _a.files, template = _a.template, customSetup = _a.customSetup;\n if (!template) {\n // If not input, default to vanilla\n if (!customSetup) {\n var defaultTemplate = SANDBOX_TEMPLATES.vanilla;\n return __assign(__assign({}, defaultTemplate), { files: __assign(__assign({}, defaultTemplate.files), convertedFilesToBundlerFiles(files)) });\n }\n if (!files || Object.keys(files).length === 0) {\n throw new Error(\"[sandpack-react]: without a template, you must pass at least one file\");\n }\n // If not template specified, use the setup entirely\n return __assign(__assign({}, customSetup), { files: convertedFilesToBundlerFiles(files) });\n }\n var baseTemplate = SANDBOX_TEMPLATES[template];\n if (!baseTemplate) {\n throw new Error(\"[sandpack-react]: invalid template \\\"\".concat(template, \"\\\" provided\"));\n }\n // If no setup and not files, the template is used entirely\n if (!customSetup && !files) {\n return baseTemplate;\n }\n // Merge the setup on top of the template\n return {\n /**\n * The input setup might have files in the simple form Record\n * so we convert them to the sandbox template format\n */\n files: convertedFilesToBundlerFiles(__assign(__assign({}, baseTemplate.files), files)),\n /**\n * Merge template dependencies and user custom dependencies.\n * As a rule, the custom dependencies must overwrite the template ones.\n */\n dependencies: __assign(__assign({}, baseTemplate.dependencies), customSetup === null || customSetup === void 0 ? void 0 : customSetup.dependencies),\n devDependencies: __assign(__assign({}, baseTemplate.devDependencies), customSetup === null || customSetup === void 0 ? void 0 : customSetup.devDependencies),\n entry: normalizePath(customSetup === null || customSetup === void 0 ? void 0 : customSetup.entry),\n main: baseTemplate.main,\n environment: (customSetup === null || customSetup === void 0 ? void 0 : customSetup.environment) || baseTemplate.environment,\n };\n};\n/**\n * Transform an regular object, which contain files to\n * an object that sandpack-client can understand\n *\n * From: Record\n * To: Record\n */\nvar convertedFilesToBundlerFiles = function (files) {\n if (!files)\n return {};\n return Object.keys(files).reduce(function (acc, key) {\n if (typeof files[key] === \"string\") {\n acc[key] = { code: files[key] };\n }\n else {\n acc[key] = files[key];\n }\n return acc;\n }, {});\n};\n\nvar useAppState = function (props, files) {\n var _a = useState({\n editorState: \"pristine\",\n }), state = _a[0], setState = _a[1];\n var originalStateFromProps = getSandpackStateFromProps(props);\n var editorState = dequal(originalStateFromProps.files, files)\n ? \"pristine\"\n : \"dirty\";\n if (editorState !== state.editorState) {\n setState(function (prev) { return (__assign(__assign({}, prev), { editorState: editorState })); });\n }\n return state;\n};\n\n/**\n * This is a hard constraint to make URLs shorter.\n * For example, this id will be used to mount SW in the iframe\n * so, to keep the URL valid, this must be an 9 character long string\n */\nvar MAX_ID_LENGTH = 9;\nvar useAsyncSandpackId = function (files) {\n if (typeof useId === \"function\") {\n /* eslint-disable-next-line react-hooks/rules-of-hooks */\n var reactDomId_1 = useId();\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var allCode, sha;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n allCode = Object.entries(files)\n .map(function (path, code) { return path + \"|\" + code; })\n .join(\"|||\");\n return [4 /*yield*/, generateShortId(allCode + reactDomId_1)];\n case 1:\n sha = _a.sent();\n return [2 /*return*/, ensureLength(sha.replace(/:/g, \"sp\"), MAX_ID_LENGTH)];\n }\n });\n }); };\n }\n else {\n return function () { return ensureLength(generateRandomId(), MAX_ID_LENGTH); };\n }\n};\nfunction ensureLength(str, length) {\n if (str.length > length) {\n return str.slice(0, length);\n }\n else {\n return str.padEnd(length, \"s\");\n }\n}\nfunction generateShortId(input) {\n return __awaiter(this, void 0, void 0, function () {\n var encoder, data, hashBuffer, hashArray;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n encoder = new TextEncoder();\n data = encoder.encode(input);\n return [4 /*yield*/, crypto.subtle.digest(\"SHA-256\", data)];\n case 1:\n hashBuffer = _a.sent();\n hashArray = Array.from(new Uint8Array(hashBuffer));\n return [2 /*return*/, btoa(String.fromCharCode.apply(String, hashArray))];\n }\n });\n });\n}\n\nvar BUNDLER_TIMEOUT = 40000;\nvar useClient = function (_a, filesState) {\n var _b, _c, _d;\n var options = _a.options, customSetup = _a.customSetup, teamId = _a.teamId, sandboxId = _a.sandboxId;\n options !== null && options !== void 0 ? options : (options = {});\n customSetup !== null && customSetup !== void 0 ? customSetup : (customSetup = {});\n var initModeFromProps = (options === null || options === void 0 ? void 0 : options.initMode) || \"lazy\";\n var _e = useState({\n startRoute: options === null || options === void 0 ? void 0 : options.startRoute,\n bundlerState: undefined,\n error: null,\n initMode: initModeFromProps,\n reactDevTools: undefined,\n status: ((_b = options === null || options === void 0 ? void 0 : options.autorun) !== null && _b !== void 0 ? _b : true) ? \"initial\" : \"idle\",\n }), state = _e[0], setState = _e[1];\n var intersectionObserverCallback = useRef();\n var intersectionObserver = useRef(null);\n var lazyAnchorRef = useRef(null);\n var registeredIframes = useRef({});\n var clients = useRef({});\n var timeoutHook = useRef(null);\n var unsubscribeClientListeners = useRef({});\n var unsubscribe = useRef();\n var queuedListeners = useRef({ global: {} });\n var debounceHook = useRef();\n var prevEnvironment = useRef(filesState.environment);\n var experimental_stableServiceWorkerId = useAsyncSandpackId(filesState.files);\n /**\n * Callbacks\n */\n var createClient = useCallback(function (iframe, clientId, clientPropsOverride) { return __awaiter(void 0, void 0, void 0, function () {\n var timeOut, shouldSetTimeout, client, _a, _b, _c, globalListeners;\n var _d;\n var _e, _f, _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n // Clean up any existing clients that\n // have been created with the given id\n if (clients.current[clientId]) {\n clients.current[clientId].destroy();\n }\n options !== null && options !== void 0 ? options : (options = {});\n customSetup !== null && customSetup !== void 0 ? customSetup : (customSetup = {});\n timeOut = (_e = options === null || options === void 0 ? void 0 : options.bundlerTimeOut) !== null && _e !== void 0 ? _e : BUNDLER_TIMEOUT;\n if (timeoutHook.current) {\n clearTimeout(timeoutHook.current);\n }\n shouldSetTimeout = typeof unsubscribe.current !== \"function\";\n if (shouldSetTimeout) {\n timeoutHook.current = setTimeout(function () {\n unregisterAllClients();\n setState(function (prev) { return (__assign(__assign({}, prev), { status: \"timeout\" })); });\n }, timeOut);\n }\n _a = loadSandpackClient;\n _b = [iframe,\n {\n files: filesState.files,\n template: filesState.environment,\n }];\n _d = {\n externalResources: options.externalResources,\n bundlerURL: options.bundlerURL,\n startRoute: (_f = clientPropsOverride === null || clientPropsOverride === void 0 ? void 0 : clientPropsOverride.startRoute) !== null && _f !== void 0 ? _f : options.startRoute,\n fileResolver: options.fileResolver,\n skipEval: (_g = options.skipEval) !== null && _g !== void 0 ? _g : false,\n logLevel: options.logLevel,\n showOpenInCodeSandbox: false,\n showErrorScreen: true,\n showLoadingScreen: false,\n reactDevTools: state.reactDevTools,\n customNpmRegistries: customSetup === null || customSetup === void 0 ? void 0 : customSetup.npmRegistries,\n teamId: teamId,\n experimental_enableServiceWorker: !!(options === null || options === void 0 ? void 0 : options.experimental_enableServiceWorker)\n };\n if (!(options === null || options === void 0 ? void 0 : options.experimental_enableStableServiceWorkerId)) return [3 /*break*/, 2];\n return [4 /*yield*/, experimental_stableServiceWorkerId()];\n case 1:\n _c = _h.sent();\n return [3 /*break*/, 3];\n case 2:\n _c = undefined;\n _h.label = 3;\n case 3: return [4 /*yield*/, _a.apply(void 0, _b.concat([(_d.experimental_stableServiceWorkerId = _c,\n _d.sandboxId = sandboxId,\n _d)]))];\n case 4:\n client = _h.sent();\n if (typeof unsubscribe.current !== \"function\") {\n unsubscribe.current = client.listen(handleMessage);\n }\n unsubscribeClientListeners.current[clientId] =\n unsubscribeClientListeners.current[clientId] || {};\n /**\n * Register any potential listeners that subscribed before sandpack ran\n */\n if (queuedListeners.current[clientId]) {\n Object.keys(queuedListeners.current[clientId]).forEach(function (listenerId) {\n var listener = queuedListeners.current[clientId][listenerId];\n var unsubscribe = client.listen(listener);\n unsubscribeClientListeners.current[clientId][listenerId] =\n unsubscribe;\n });\n // Clear the queued listeners after they were registered\n queuedListeners.current[clientId] = {};\n }\n globalListeners = Object.entries(queuedListeners.current.global);\n globalListeners.forEach(function (_a) {\n var listenerId = _a[0], listener = _a[1];\n var unsubscribe = client.listen(listener);\n unsubscribeClientListeners.current[clientId][listenerId] = unsubscribe;\n /**\n * Important: Do not clean the global queue\n * Instead of cleaning the queue, keep it there for the\n * following clients that might be created\n */\n });\n clients.current[clientId] = client;\n return [2 /*return*/];\n }\n });\n }); }, [filesState.environment, filesState.files, state.reactDevTools]);\n var unregisterAllClients = useCallback(function () {\n Object.keys(clients.current).map(unregisterBundler);\n if (typeof unsubscribe.current === \"function\") {\n unsubscribe.current();\n unsubscribe.current = undefined;\n }\n }, []);\n var runSandpack = useCallback(function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, Promise.all(Object.entries(registeredIframes.current).map(function (_a) {\n var clientId = _a[0], _b = _a[1], iframe = _b.iframe, _c = _b.clientPropsOverride, clientPropsOverride = _c === void 0 ? {} : _c;\n return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4 /*yield*/, createClient(iframe, clientId, clientPropsOverride)];\n case 1:\n _d.sent();\n return [2 /*return*/];\n }\n });\n });\n }))];\n case 1:\n _a.sent();\n setState(function (prev) { return (__assign(__assign({}, prev), { error: null, status: \"running\" })); });\n return [2 /*return*/];\n }\n });\n }); }, [createClient]);\n intersectionObserverCallback.current = function (entries) {\n if (entries.some(function (entry) { return entry.isIntersecting; })) {\n runSandpack();\n }\n else {\n unregisterAllClients();\n }\n };\n var initializeSandpackIframe = useCallback(function () {\n var _a, _b, _c;\n var autorun = (_a = options === null || options === void 0 ? void 0 : options.autorun) !== null && _a !== void 0 ? _a : true;\n if (!autorun) {\n return;\n }\n var observerOptions = (_b = options === null || options === void 0 ? void 0 : options.initModeObserverOptions) !== null && _b !== void 0 ? _b : {\n rootMargin: \"1000px 0px\",\n };\n if (intersectionObserver.current && lazyAnchorRef.current) {\n (_c = intersectionObserver.current) === null || _c === void 0 ? void 0 : _c.unobserve(lazyAnchorRef.current);\n }\n if (lazyAnchorRef.current && state.initMode === \"lazy\") {\n // If any component registered a lazy anchor ref component, use that for the intersection observer\n intersectionObserver.current = new IntersectionObserver(function (entries) {\n var _a, _b;\n if (entries.some(function (entry) { return entry.isIntersecting; })) {\n // Trigger it once\n if (entries.some(function (entry) { return entry.isIntersecting; }) &&\n lazyAnchorRef.current) {\n (_a = intersectionObserverCallback.current) === null || _a === void 0 ? void 0 : _a.call(intersectionObserverCallback, entries);\n (_b = intersectionObserver.current) === null || _b === void 0 ? void 0 : _b.unobserve(lazyAnchorRef.current);\n }\n }\n }, observerOptions);\n intersectionObserver.current.observe(lazyAnchorRef.current);\n }\n else if (lazyAnchorRef.current && state.initMode === \"user-visible\") {\n intersectionObserver.current = new IntersectionObserver(function (entries) {\n var _a;\n (_a = intersectionObserverCallback.current) === null || _a === void 0 ? void 0 : _a.call(intersectionObserverCallback, entries);\n }, observerOptions);\n intersectionObserver.current.observe(lazyAnchorRef.current);\n }\n else {\n runSandpack();\n }\n }, [\n options === null || options === void 0 ? void 0 : options.autorun,\n options === null || options === void 0 ? void 0 : options.initModeObserverOptions,\n runSandpack,\n state.initMode,\n unregisterAllClients,\n ]);\n var registerBundler = useCallback(function (iframe, clientId, clientPropsOverride) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n // Store the iframe info so it can be\n // used later to manually run sandpack\n registeredIframes.current[clientId] = {\n iframe: iframe,\n clientPropsOverride: clientPropsOverride,\n };\n if (!(state.status === \"running\")) return [3 /*break*/, 2];\n return [4 /*yield*/, createClient(iframe, clientId, clientPropsOverride)];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2: return [2 /*return*/];\n }\n });\n }); }, [createClient, state.status]);\n var unregisterBundler = function (clientId) {\n var _a, _b;\n var client = clients.current[clientId];\n if (client) {\n client.destroy();\n (_a = client.iframe.contentWindow) === null || _a === void 0 ? void 0 : _a.location.replace(\"about:blank\");\n client.iframe.removeAttribute(\"src\");\n delete clients.current[clientId];\n }\n else {\n delete registeredIframes.current[clientId];\n }\n if (timeoutHook.current) {\n clearTimeout(timeoutHook.current);\n }\n var unsubscribeQueuedClients = Object.values((_b = unsubscribeClientListeners.current[clientId]) !== null && _b !== void 0 ? _b : {});\n // Unsubscribing all listener registered\n unsubscribeQueuedClients.forEach(function (listenerOfClient) {\n var listenerFunctions = Object.values(listenerOfClient);\n listenerFunctions.forEach(function (unsubscribe) { return unsubscribe(); });\n });\n // Keep running if it still have clients\n var status = Object.keys(clients.current).length > 0 ? \"running\" : \"idle\";\n setState(function (prev) { return (__assign(__assign({}, prev), { status: status })); });\n };\n var handleMessage = function (msg) {\n if (msg.type === \"start\") {\n setState(function (prev) { return (__assign(__assign({}, prev), { error: null })); });\n }\n else if (msg.type === \"state\") {\n setState(function (prev) { return (__assign(__assign({}, prev), { bundlerState: msg.state })); });\n }\n else if ((msg.type === \"done\" && !msg.compilatonError) ||\n msg.type === \"connected\") {\n if (timeoutHook.current) {\n clearTimeout(timeoutHook.current);\n }\n setState(function (prev) { return (__assign(__assign({}, prev), { error: null })); });\n }\n else if (msg.type === \"action\" && msg.action === \"show-error\") {\n if (timeoutHook.current) {\n clearTimeout(timeoutHook.current);\n }\n setState(function (prev) { return (__assign(__assign({}, prev), { error: extractErrorDetails(msg) })); });\n }\n else if (msg.type === \"action\" &&\n msg.action === \"notification\" &&\n msg.notificationType === \"error\") {\n setState(function (prev) { return (__assign(__assign({}, prev), { error: { message: msg.title } })); });\n }\n };\n var registerReactDevTools = function (value) {\n setState(function (prev) { return (__assign(__assign({}, prev), { reactDevTools: value })); });\n };\n var recompileMode = (_c = options === null || options === void 0 ? void 0 : options.recompileMode) !== null && _c !== void 0 ? _c : \"delayed\";\n var recompileDelay = (_d = options === null || options === void 0 ? void 0 : options.recompileDelay) !== null && _d !== void 0 ? _d : 200;\n var dispatchMessage = function (message, clientId) {\n if (state.status !== \"running\") {\n console.warn(\"[sandpack-react]: dispatch cannot be called while in idle mode\");\n return;\n }\n if (clientId) {\n clients.current[clientId].dispatch(message);\n }\n else {\n Object.values(clients.current).forEach(function (client) {\n client.dispatch(message);\n });\n }\n };\n var addListener = function (listener, clientId) {\n if (clientId) {\n if (clients.current[clientId]) {\n var unsubscribeListener = clients.current[clientId].listen(listener);\n return unsubscribeListener;\n }\n else {\n /**\n * When listeners are added before the client is instantiated, they are stored with an unique id\n * When the client is eventually instantiated, the listeners are registered on the spot\n * Their unsubscribe functions are stored in unsubscribeClientListeners for future cleanup\n */\n var listenerId_1 = generateRandomId();\n queuedListeners.current[clientId] =\n queuedListeners.current[clientId] || {};\n unsubscribeClientListeners.current[clientId] =\n unsubscribeClientListeners.current[clientId] || {};\n queuedListeners.current[clientId][listenerId_1] = listener;\n var unsubscribeListener = function () {\n if (queuedListeners.current[clientId][listenerId_1]) {\n /**\n * Unsubscribe was called before the client was instantiated\n * common example - a component with autorun=false that unmounted\n */\n delete queuedListeners.current[clientId][listenerId_1];\n }\n else if (unsubscribeClientListeners.current[clientId][listenerId_1]) {\n /**\n * unsubscribe was called for a listener that got added before the client was instantiated\n * call the unsubscribe function and remove it from memory\n */\n unsubscribeClientListeners.current[clientId][listenerId_1]();\n delete unsubscribeClientListeners.current[clientId][listenerId_1];\n }\n };\n return unsubscribeListener;\n }\n }\n else {\n // Push to the **global** queue\n var listenerId_2 = generateRandomId();\n queuedListeners.current.global[listenerId_2] = listener;\n // Add to the current clients\n var clientsList = Object.values(clients.current);\n var currentClientUnsubscribeListeners_1 = clientsList.map(function (client) {\n return client.listen(listener);\n });\n var unsubscribeListener = function () {\n // Unsubscribing from the clients already created\n currentClientUnsubscribeListeners_1.forEach(function (unsubscribe) {\n return unsubscribe();\n });\n delete queuedListeners.current.global[listenerId_2];\n // Unsubscribe in case it was added later from `global`\n Object.values(unsubscribeClientListeners.current).forEach(function (client) {\n var _a;\n (_a = client === null || client === void 0 ? void 0 : client[listenerId_2]) === null || _a === void 0 ? void 0 : _a.call(client);\n });\n };\n return unsubscribeListener;\n }\n };\n /**\n * Effects\n */\n useEffect(function watchFileChanges() {\n if (state.status !== \"running\" || !filesState.shouldUpdatePreview) {\n return;\n }\n /**\n * When the environment changes, Sandpack needs to make sure\n * to create a new client and the proper bundler\n */\n if (prevEnvironment.current !== filesState.environment) {\n prevEnvironment.current = filesState.environment;\n Object.entries(clients.current).forEach(function (_a) {\n var key = _a[0], client = _a[1];\n registerBundler(client.iframe, key);\n });\n }\n if (recompileMode === \"immediate\") {\n Object.values(clients.current).forEach(function (client) {\n /**\n * Avoid concurrency\n */\n if (client.status === \"done\") {\n client.updateSandbox({\n files: filesState.files,\n template: filesState.environment,\n });\n }\n });\n }\n if (recompileMode === \"delayed\") {\n if (typeof window === \"undefined\")\n return;\n window.clearTimeout(debounceHook.current);\n debounceHook.current = window.setTimeout(function () {\n Object.values(clients.current).forEach(function (client) {\n /**\n * Avoid concurrency\n */\n if (client.status === \"done\") {\n client.updateSandbox({\n files: filesState.files,\n template: filesState.environment,\n });\n }\n });\n }, recompileDelay);\n }\n return function () {\n window.clearTimeout(debounceHook.current);\n };\n }, [\n filesState.files,\n filesState.environment,\n filesState.shouldUpdatePreview,\n recompileDelay,\n recompileMode,\n registerBundler,\n state.status,\n ]);\n useEffect(function watchInitMode() {\n if (initModeFromProps !== state.initMode) {\n setState(function (prev) { return (__assign(__assign({}, prev), { initMode: initModeFromProps })); });\n initializeSandpackIframe();\n }\n }, [initModeFromProps, initializeSandpackIframe, state.initMode]);\n useEffect(function () {\n return function unmountClient() {\n if (typeof unsubscribe.current === \"function\") {\n unsubscribe.current();\n }\n if (timeoutHook.current) {\n clearTimeout(timeoutHook.current);\n }\n if (debounceHook.current) {\n clearTimeout(debounceHook.current);\n }\n if (intersectionObserver.current) {\n intersectionObserver.current.disconnect();\n }\n };\n }, []);\n return [\n state,\n {\n clients: clients.current,\n initializeSandpackIframe: initializeSandpackIframe,\n runSandpack: runSandpack,\n registerBundler: registerBundler,\n unregisterBundler: unregisterBundler,\n registerReactDevTools: registerReactDevTools,\n addListener: addListener,\n dispatchMessage: dispatchMessage,\n lazyAnchorRef: lazyAnchorRef,\n unsubscribeClientListenersRef: unsubscribeClientListeners,\n queuedListenersRef: queuedListeners,\n },\n ];\n};\n\nvar useFiles = function (props) {\n var originalStateFromProps = getSandpackStateFromProps(props);\n var _a = useState(originalStateFromProps), state = _a[0], setState = _a[1];\n var isMountedRef = useRef(false);\n useEffect(function () {\n if (isMountedRef.current) {\n setState(getSandpackStateFromProps(props));\n }\n else {\n isMountedRef.current = true;\n }\n }, [props.files, props.customSetup, props.template]);\n var updateFile = function (pathOrFiles, code, shouldUpdatePreview) {\n if (shouldUpdatePreview === void 0) { shouldUpdatePreview = true; }\n setState(function (prev) {\n var _a;\n var files = prev.files;\n if (typeof pathOrFiles === \"string\" && typeof code === \"string\") {\n files = __assign(__assign({}, files), (_a = {}, _a[pathOrFiles] = __assign(__assign({}, files[pathOrFiles]), { code: code }), _a));\n }\n else if (typeof pathOrFiles === \"object\") {\n files = __assign(__assign({}, files), convertedFilesToBundlerFiles(pathOrFiles));\n }\n return __assign(__assign({}, prev), { files: normalizePath(files), shouldUpdatePreview: shouldUpdatePreview });\n });\n };\n var operations = {\n openFile: function (path) {\n setState(function (_a) {\n var visibleFiles = _a.visibleFiles, rest = __rest(_a, [\"visibleFiles\"]);\n var newPaths = visibleFiles.includes(path)\n ? visibleFiles\n : __spreadArray(__spreadArray([], visibleFiles, true), [path], false);\n return __assign(__assign({}, rest), { activeFile: path, visibleFiles: newPaths });\n });\n },\n resetFile: function (path) {\n setState(function (prevState) {\n var _a;\n return (__assign(__assign({}, prevState), { files: __assign(__assign({}, prevState.files), (_a = {}, _a[path] = originalStateFromProps.files[path], _a)) }));\n });\n },\n resetAllFiles: function () {\n setState(function (prev) { return (__assign(__assign({}, prev), { files: originalStateFromProps.files })); });\n },\n setActiveFile: function (activeFile) {\n if (state.files[activeFile]) {\n setState(function (prev) { return (__assign(__assign({}, prev), { activeFile: activeFile })); });\n }\n },\n updateCurrentFile: function (code, shouldUpdatePreview) {\n if (shouldUpdatePreview === void 0) { shouldUpdatePreview = true; }\n updateFile(state.activeFile, code, shouldUpdatePreview);\n },\n updateFile: updateFile,\n addFile: updateFile,\n closeFile: function (path) {\n if (state.visibleFiles.length === 1) {\n return;\n }\n setState(function (_a) {\n var visibleFiles = _a.visibleFiles, activeFile = _a.activeFile, prev = __rest(_a, [\"visibleFiles\", \"activeFile\"]);\n var indexOfRemovedPath = visibleFiles.indexOf(path);\n var newPaths = visibleFiles.filter(function (openPath) { return openPath !== path; });\n return __assign(__assign({}, prev), { activeFile: path === activeFile\n ? indexOfRemovedPath === 0\n ? visibleFiles[1]\n : visibleFiles[indexOfRemovedPath - 1]\n : activeFile, visibleFiles: newPaths });\n });\n },\n deleteFile: function (path, shouldUpdatePreview) {\n if (shouldUpdatePreview === void 0) { shouldUpdatePreview = true; }\n setState(function (_a) {\n var visibleFiles = _a.visibleFiles, files = _a.files, activeFile = _a.activeFile, rest = __rest(_a, [\"visibleFiles\", \"files\", \"activeFile\"]);\n var newFiles = __assign({}, files);\n delete newFiles[path];\n var remainingVisibleFiles = visibleFiles.filter(function (openPath) { return openPath !== path; });\n var deletedLastVisibleFile = remainingVisibleFiles.length === 0;\n if (deletedLastVisibleFile) {\n var nextFile = Object.keys(files)[Object.keys(files).length - 1];\n return __assign(__assign({}, rest), { visibleFiles: [nextFile], activeFile: nextFile, files: newFiles, shouldUpdatePreview: shouldUpdatePreview });\n }\n return __assign(__assign({}, rest), { visibleFiles: remainingVisibleFiles, activeFile: path === activeFile\n ? remainingVisibleFiles[remainingVisibleFiles.length - 1]\n : activeFile, files: newFiles, shouldUpdatePreview: shouldUpdatePreview });\n });\n },\n };\n return [\n __assign(__assign({}, state), { visibleFilesFromProps: originalStateFromProps.visibleFiles }),\n operations,\n ];\n};\n\nvar Sandpack$1 = React.createContext(null);\nvar SandpackProvider = function (props) {\n var _a, _b, _c;\n var children = props.children, options = props.options, style = props.style, className = props.className, theme = props.theme;\n var _d = useFiles(props), fileState = _d[0], fileOperations = _d[1];\n var _e = useClient(props, fileState), clientState = _e[0], _f = _e[1], dispatchMessage = _f.dispatchMessage, addListener = _f.addListener, clientOperations = __rest(_f, [\"dispatchMessage\", \"addListener\"]);\n var appState = useAppState(props, fileState.files);\n React.useEffect(function () {\n clientOperations.initializeSandpackIframe();\n }, []);\n return (jsx(Sandpack$1.Provider, { value: __assign(__assign(__assign(__assign(__assign(__assign({}, fileState), clientState), appState), fileOperations), clientOperations), { autoReload: (_b = (_a = props.options) === null || _a === void 0 ? void 0 : _a.autoReload) !== null && _b !== void 0 ? _b : true, teamId: props === null || props === void 0 ? void 0 : props.teamId, exportOptions: (_c = props === null || props === void 0 ? void 0 : props.customSetup) === null || _c === void 0 ? void 0 : _c.exportOptions, listen: addListener, dispatch: dispatchMessage }), children: jsx(ClassNamesProvider, { classes: options === null || options === void 0 ? void 0 : options.classes, children: jsx(SandpackThemeProvider, { className: className, style: style, theme: theme, children: children }) }) }));\n};\n/**\n * @category Provider\n */\nvar SandpackConsumer = Sandpack$1.Consumer;\n\n/**\n * @category Hooks\n */\nfunction useSandpack() {\n var sandpack = React.useContext(Sandpack$1);\n if (sandpack === null) {\n throw new Error(\"[sandpack-react]: \\\"useSandpack\\\" must be wrapped by a \\\"SandpackProvider\\\"\");\n }\n var dispatch = sandpack.dispatch, listen = sandpack.listen, rest = __rest(sandpack, [\"dispatch\", \"listen\"]);\n return {\n sandpack: __assign({}, rest),\n dispatch: dispatch,\n listen: listen,\n };\n}\n\n/**\n * This returns the current state of the active file\n * and a method to update its content.\n *\n * @category Hooks\n */\nvar useActiveCode = function () {\n var _a, _b, _c;\n var sandpack = useSandpack().sandpack;\n return {\n code: (_a = sandpack.files[sandpack.activeFile]) === null || _a === void 0 ? void 0 : _a.code,\n readOnly: (_c = (_b = sandpack.files[sandpack.activeFile]) === null || _b === void 0 ? void 0 : _b.readOnly) !== null && _c !== void 0 ? _c : false,\n updateCode: sandpack.updateCurrentFile,\n };\n};\n\nvar _a$8, _b$2, _c;\nvar iconStandaloneClassName = css({\n svg: { margin: \"auto\" },\n});\nvar buttonClassName = css((_a$8 = {\n appearance: \"none\",\n outline: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n fontSize: \"inherit\",\n fontFamily: \"inherit\",\n backgroundColor: \"transparent\",\n transition: \"color $default, background $default\",\n cursor: \"pointer\",\n color: \"$colors$clickable\",\n border: 0,\n textDecoration: \"none\",\n \"&:disabled\": { color: \"$colors$disabled\" },\n \"&:hover:not(:disabled,[data-active='true'])\": { color: \"$colors$hover\" },\n '&[data-active=\"true\"]': { color: \"$colors$accent\" },\n svg: {\n minWidth: \"$space$4\",\n width: \"$space$4\",\n height: \"$space$4\",\n }\n },\n _a$8[\"&.\".concat(iconStandaloneClassName)] = {\n padding: \"$space$1\",\n height: \"$space$7\",\n display: \"flex\",\n },\n // If there's a children besides the icon\n _a$8[\"&.\".concat(iconStandaloneClassName, \"&:not(:has(span))\")] = {\n width: \"$space$7\",\n },\n _a$8[\"&.\".concat(iconStandaloneClassName, \"&:has(svg + span)\")] = {\n paddingRight: \"$space$3\",\n paddingLeft: \"$space$2\",\n gap: \"$space$1\",\n },\n _a$8));\nvar roundedButtonClassName = css({\n backgroundColor: \"$colors$surface2\",\n borderRadius: \"99999px\",\n border: \"1px solid $colors$surface3\",\n '&[data-active=\"true\"]': {\n color: \"$colors$surface1\",\n background: \"$colors$accent\",\n },\n \"&:hover:not(:disabled,[data-active='true'])\": {\n backgroundColor: \"$colors$surface3\",\n },\n});\nvar iconClassName = css({ padding: 0 });\nvar fadeIn = keyframes({\n \"0%\": {\n opacity: 0,\n },\n \"100%\": {\n opacity: 1,\n },\n});\nvar absoluteClassName = css({\n position: \"absolute\",\n bottom: \"0\",\n left: \"0\",\n right: \"0\",\n top: \"0\",\n margin: \"0\",\n overflow: \"auto\",\n height: \"100%\",\n zIndex: \"$top\",\n});\nvar errorClassName = css((_b$2 = {\n whiteSpace: \"pre-wrap\",\n padding: \"$space$10\",\n backgroundColor: \"$colors$surface1\",\n display: \"flex\",\n gap: \"$space$2\",\n flexDirection: \"column\"\n },\n _b$2[\".\".concat(buttonClassName)] = {\n width: \"auto\",\n gap: \"$space$2\",\n padding: \"0 $space$3 0 $space$2\",\n marginTop: \"$space$1\",\n },\n _b$2.variants = {\n solidBg: {\n true: {\n backgroundColor: \"$colors$errorSurface\",\n },\n },\n },\n _b$2));\nvar errorBundlerClassName = css((_c = {\n padding: \"$space$10\",\n backgroundColor: \"$colors$surface1\"\n },\n _c[\".\".concat(buttonClassName)] = {\n marginTop: \"$space$6\",\n width: \"auto\",\n gap: \"$space$2\",\n padding: \"0 $space$3 0 $space$2\",\n },\n _c));\nvar errorMessageClassName = css({\n animation: \"\".concat(fadeIn, \" 150ms ease\"),\n color: \"$colors$error\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"$space$3\",\n variants: {\n errorCode: { true: { fontFamily: \"$font$mono\" } },\n },\n a: {\n color: \"inherit\",\n },\n p: {\n margin: 0,\n },\n});\n\nvar _a$7;\nvar tabsClassName = css({\n borderBottom: \"1px solid $colors$surface2\",\n background: \"$colors$surface1\",\n});\nvar tabsScrollableClassName = css({\n padding: \"0 $space$2\",\n overflow: \"auto\",\n display: \"flex\",\n flexWrap: \"nowrap\",\n alignItems: \"stretch\",\n minHeight: \"40px\",\n marginBottom: \"-1px\",\n});\nvar closeButtonClassName = css({\n padding: \"0 $space$1 0 $space$1\",\n borderRadius: \"$border$radius\",\n marginLeft: \"$space$1\",\n width: \"$space$5\",\n visibility: \"hidden\",\n svg: {\n width: \"$space$3\",\n height: \"$space$3\",\n display: \"block\",\n position: \"relative\",\n top: 1,\n },\n});\nvar tabButton = css((_a$7 = {\n padding: \"0 $space$2\",\n height: \"$layout$headerHeight\",\n whiteSpace: \"nowrap\",\n \"&:focus\": { outline: \"none\" }\n },\n _a$7[\"&:hover > .\".concat(closeButtonClassName)] = { visibility: \"unset\" },\n _a$7));\n/**\n * FileTabs is a list of all open files, the active file, and its state.\n */\nvar FileTabs = function (_a) {\n var closableTabs = _a.closableTabs, className = _a.className, props = __rest(_a, [\"closableTabs\", \"className\"]);\n var sandpack = useSandpack().sandpack;\n var classNames = useClassNames();\n var activeFile = sandpack.activeFile, visibleFiles = sandpack.visibleFiles, setActiveFile = sandpack.setActiveFile;\n var handleCloseFile = function (ev) {\n ev.stopPropagation();\n var tabElm = ev.target.closest(\"[data-active]\");\n var pathToClose = tabElm === null || tabElm === void 0 ? void 0 : tabElm.getAttribute(\"title\");\n if (!pathToClose) {\n return;\n }\n sandpack.closeFile(pathToClose);\n };\n var getTriggerText = function (currentPath) {\n var documentFileName = getFileName(currentPath);\n var pathsWithDuplicateFileNames = visibleFiles.reduce(function (prev, curr) {\n if (curr === currentPath) {\n return prev;\n }\n var fileName = getFileName(curr);\n if (fileName === documentFileName) {\n prev.push(curr);\n return prev;\n }\n return prev;\n }, []);\n if (pathsWithDuplicateFileNames.length === 0) {\n return documentFileName;\n }\n else {\n return calculateNearestUniquePath(currentPath, pathsWithDuplicateFileNames);\n }\n };\n return (jsx(\"div\", __assign({ className: classNames(\"tabs\", [tabsClassName, className]), translate: \"no\" }, props, { children: jsx(\"div\", { \"aria-label\": \"Select active file\", className: classNames(\"tabs-scrollable-container\", [\n tabsScrollableClassName,\n ]), role: \"tablist\", children: visibleFiles.map(function (filePath) { return (jsxs(\"button\", { \"aria-selected\": filePath === activeFile, className: classNames(\"tab-button\", [buttonClassName, tabButton]), \"data-active\": filePath === activeFile, onClick: function () { return setActiveFile(filePath); }, role: \"tab\", title: filePath, type: \"button\", children: [getTriggerText(filePath), closableTabs && visibleFiles.length > 1 && (jsx(\"span\", { className: classNames(\"close-button\", [closeButtonClassName]), onClick: handleCloseFile, children: jsx(CloseIcon, {}) }))] }, filePath)); }) }) })));\n};\n\nvar RoundedButton = function (_a) {\n var onClick = _a.onClick, className = _a.className, children = _a.children;\n var classNames = useClassNames();\n return (jsx(\"button\", { className: classNames(\"button\", [\n classNames(\"icon-standalone\"),\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n className,\n ]), onClick: onClick, type: \"button\", children: children }));\n};\n\nvar runButtonClassName = css({\n position: \"absolute\",\n bottom: \"$space$2\",\n right: \"$space$2\",\n paddingRight: \"$space$3\",\n});\nvar RunButton$1 = function (_a) {\n _a.className; var onClick = _a.onClick, props = __rest(_a, [\"className\", \"onClick\"]);\n var sandpack = useSandpack().sandpack;\n return (jsxs(RoundedButton, __assign({ className: runButtonClassName.toString(), onClick: function (event) {\n sandpack.runSandpack();\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n } }, props, { children: [jsx(RunIcon, {}), jsx(\"span\", { children: \"Run\" })] })));\n};\n\nvar _a$6;\nvar stackClassName = css((_a$6 = {\n display: \"flex\",\n flexDirection: \"column\",\n width: \"100%\",\n position: \"relative\",\n backgroundColor: \"$colors$surface1\",\n gap: 1\n },\n _a$6[\"&:has(.\".concat(THEME_PREFIX, \"-stack)\")] = {\n backgroundColor: \"$colors$surface2\",\n },\n _a$6));\nvar SandpackStack = function (_a) {\n var className = _a.className, props = __rest(_a, [\"className\"]);\n var classNames = useClassNames();\n return (jsx(\"div\", __assign({ className: classNames(\"stack\", [stackClassName, className]) }, props)));\n};\n\n/**\n * @category Hooks\n */\nvar useSandpackTheme = function () {\n var _a = React.useContext(SandpackThemeContext), theme = _a.theme, id = _a.id, mode = _a.mode;\n return { theme: theme, themeId: id, themeMode: mode };\n};\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nvar shallowEqual = function (a, b) {\n if (a.length !== b.length)\n return false;\n var result = true;\n for (var index = 0; index < a.length; index++) {\n if (a[index] !== b[index]) {\n result = false;\n break;\n }\n }\n return result;\n};\n\nvar getCodeMirrorPosition = function (doc, _a) {\n var line = _a.line, column = _a.column;\n return doc.line(line).from + (column !== null && column !== void 0 ? column : 0) - 1;\n};\nvar getEditorTheme = function () {\n return EditorView.theme({\n \"&\": {\n backgroundColor: \"var(--\".concat(THEME_PREFIX, \"-colors-surface1)\"),\n color: \"var(--\".concat(THEME_PREFIX, \"-syntax-color-plain)\"),\n height: \"100%\",\n },\n \".cm-matchingBracket, .cm-nonmatchingBracket, &.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket\": {\n color: \"inherit\",\n backgroundColor: \"rgba(128,128,128,.25)\",\n backgroundBlendMode: \"difference\",\n },\n \"&.cm-editor.cm-focused\": {\n outline: \"none\",\n },\n \".cm-activeLine\": {\n backgroundColor: \"var(--\".concat(THEME_PREFIX, \"-colors-surface3)\"),\n borderRadius: \"var(--\".concat(THEME_PREFIX, \"-border-radius)\"),\n },\n \".cm-errorLine\": {\n backgroundColor: \"var(--\".concat(THEME_PREFIX, \"-colors-errorSurface)\"),\n borderRadius: \"var(--\".concat(THEME_PREFIX, \"-border-radius)\"),\n },\n \".cm-content\": {\n caretColor: \"var(--\".concat(THEME_PREFIX, \"-colors-accent)\"),\n padding: \"0 var(--\".concat(THEME_PREFIX, \"-space-4)\"),\n },\n \".cm-scroller\": {\n fontFamily: \"var(--\".concat(THEME_PREFIX, \"-font-mono)\"),\n lineHeight: \"var(--\".concat(THEME_PREFIX, \"-font-lineHeight)\"),\n },\n \".cm-gutters\": {\n backgroundColor: \"var(--\".concat(THEME_PREFIX, \"-colors-surface1)\"),\n color: \"var(--\".concat(THEME_PREFIX, \"-colors-disabled)\"),\n border: \"none\",\n paddingLeft: \"var(--\".concat(THEME_PREFIX, \"-space-1)\"),\n },\n \".cm-gutter.cm-lineNumbers\": {\n fontSize: \".6em\",\n },\n \".cm-lineNumbers .cm-gutterElement\": {\n lineHeight: \"var(--\".concat(THEME_PREFIX, \"-font-lineHeight)\"),\n minWidth: \"var(--\".concat(THEME_PREFIX, \"-space-5)\"),\n },\n \".cm-content .cm-line\": { paddingLeft: \"var(--\".concat(THEME_PREFIX, \"-space-1)\") },\n \".cm-content.cm-readonly .cm-line\": { paddingLeft: 0 },\n });\n};\nvar classNameToken = function (name) {\n return \"\".concat(THEME_PREFIX, \"-syntax-\").concat(name);\n};\nvar styleTokens = function () {\n var syntaxHighLightTokens = [\n \"string\",\n \"plain\",\n \"comment\",\n \"keyword\",\n \"definition\",\n \"punctuation\",\n \"property\",\n \"tag\",\n \"static\",\n ];\n return syntaxHighLightTokens.reduce(function (acc, token) {\n var _a;\n return __assign(__assign({}, acc), (_a = {}, _a[\".\".concat(classNameToken(token))] = {\n color: \"$syntax$color$\".concat(token),\n fontStyle: \"$syntax$fontStyle$\".concat(token),\n }, _a));\n }, {});\n};\nvar getSyntaxHighlight = function (theme) {\n return HighlightStyle.define([\n { tag: tags.link, textDecoration: \"underline\" },\n { tag: tags.emphasis, fontStyle: \"italic\" },\n { tag: tags.strong, fontWeight: \"bold\" },\n {\n tag: tags.keyword,\n class: classNameToken(\"keyword\"),\n },\n {\n tag: [tags.atom, tags.number, tags.bool],\n class: classNameToken(\"static\"),\n },\n {\n tag: tags.variableName,\n class: classNameToken(\"plain\"),\n },\n {\n // Standard tags, e.g

\n tag: tags.standard(tags.tagName),\n class: classNameToken(\"tag\"),\n },\n {\n tag: [\n // Highlight function call\n tags.function(tags.variableName),\n // Highlight function definition differently (eg: functional component def in React)\n tags.definition(tags.function(tags.variableName)),\n // \"Custom tags\", meaning React component\n tags.tagName,\n ],\n class: classNameToken(\"definition\"),\n },\n {\n tag: tags.propertyName,\n class: classNameToken(\"property\"),\n },\n {\n tag: [tags.literal, tags.inserted],\n class: classNameToken(theme.syntax.string ? \"string\" : \"static\"),\n },\n {\n tag: tags.punctuation,\n class: classNameToken(\"punctuation\"),\n },\n {\n tag: [tags.comment, tags.quote],\n class: classNameToken(\"comment\"),\n },\n ]);\n};\nvar getLanguageFromFile = function (filePath, fileType, additionalLanguages) {\n if (!filePath && !fileType)\n return \"javascript\";\n var extension = fileType;\n if (!extension && filePath) {\n var extensionDotIndex = filePath.lastIndexOf(\".\");\n extension = filePath.slice(extensionDotIndex + 1);\n }\n for (var _i = 0, additionalLanguages_1 = additionalLanguages; _i < additionalLanguages_1.length; _i++) {\n var additionalLanguage = additionalLanguages_1[_i];\n if (extension === additionalLanguage.name ||\n additionalLanguage.extensions.includes(extension || \"\")) {\n return additionalLanguage.name;\n }\n }\n switch (extension) {\n case \"ts\":\n case \"tsx\":\n return \"typescript\";\n case \"html\":\n case \"svelte\":\n case \"vue\":\n case \"astro\":\n return \"html\";\n case \"css\":\n case \"less\":\n case \"scss\":\n return \"css\";\n case \"js\":\n case \"jsx\":\n case \"json\":\n default:\n return \"javascript\";\n }\n};\nvar getCodeMirrorLanguage = function (extension, additionalLanguages) {\n var options = {\n javascript: javascript({ jsx: true, typescript: false }),\n typescript: javascript({ jsx: true, typescript: true }),\n html: html(),\n css: css$1(),\n };\n for (var _i = 0, additionalLanguages_2 = additionalLanguages; _i < additionalLanguages_2.length; _i++) {\n var additionalLanguage = additionalLanguages_2[_i];\n if (extension === additionalLanguage.name) {\n return additionalLanguage.language;\n }\n }\n return options[extension];\n};\nvar useCombinedRefs = function () {\n var refs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n refs[_i] = arguments[_i];\n }\n return React.useCallback(function (element) {\n return refs.forEach(function (ref) {\n if (!ref) {\n return;\n }\n // Ref can have two types - a function or an object. We treat each case.\n if (typeof ref === \"function\") {\n return ref(element);\n }\n // As per https://github.com/facebook/react/issues/13029\n // it should be fine to set current this way.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref.current = element;\n });\n }, \n // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n};\n\nfunction highlightDecorators(positions) {\n return ViewPlugin.fromClass(/** @class */ (function () {\n function class_1(view) {\n this.decorations = this.getDecoration(view);\n }\n class_1.prototype.update = function (update) {\n return;\n };\n class_1.prototype.getDecoration = function (view) {\n if (!positions)\n return Decoration.none;\n var rangesDecorators = positions.map(function (item) {\n var _a, _b, _c;\n var lineDeco = Decoration.line({\n attributes: { class: (_a = item.className) !== null && _a !== void 0 ? _a : \"\" },\n });\n var markDeco = Decoration.mark({\n class: (_b = item.className) !== null && _b !== void 0 ? _b : \"\",\n attributes: (_c = item.elementAttributes) !== null && _c !== void 0 ? _c : undefined,\n });\n var positionLineStart = getCodeMirrorPosition(view.state.doc, {\n line: item.line,\n column: item.startColumn,\n }) + 1;\n if (item.startColumn && item.endColumn) {\n var positionLineEnd = getCodeMirrorPosition(view.state.doc, {\n line: item.line,\n column: item.endColumn,\n }) + 1;\n return markDeco.range(positionLineStart, positionLineEnd);\n }\n return lineDeco.range(positionLineStart);\n });\n return Decoration.set(rangesDecorators);\n };\n return class_1;\n }()), {\n decorations: function (v) { return v.decorations; },\n });\n}\n\nfunction highlightInlineError() {\n return activeLineHighlighter;\n}\nvar lineDeco = Decoration.line({ attributes: { class: \"cm-errorLine\" } });\nvar activeLineHighlighter = ViewPlugin.fromClass(/** @class */ (function () {\n function class_1() {\n this.decorations = Decoration.none;\n }\n class_1.prototype.update = function (update) {\n var _this = this;\n update.transactions.forEach(function (trans) {\n // @ts-ignore\n var errorValue = trans.annotation(\"show-error\");\n if (errorValue !== undefined) {\n var position = getCodeMirrorPosition(update.view.state.doc, {\n line: errorValue,\n }) + 1;\n _this.decorations = Decoration.set([lineDeco.range(position)]);\n // @ts-ignore\n }\n else if (trans.annotation(\"remove-errors\")) {\n _this.decorations = Decoration.none;\n }\n });\n };\n return class_1;\n}()), {\n decorations: function (v) { return v.decorations; },\n});\n\nvar _a$5, _b$1;\nvar placeholderClassName = css({\n margin: \"0\",\n display: \"block\",\n fontFamily: \"$font$mono\",\n fontSize: \"$font$size\",\n color: \"$syntax$color$plain\",\n lineHeight: \"$font$lineHeight\",\n});\nvar tokensClassName = css(styleTokens());\nvar editorClassName = css((_a$5 = {\n flex: 1,\n position: \"relative\",\n overflow: \"auto\",\n background: \"$colors$surface1\",\n \".cm-scroller\": {\n padding: \"$space$4 0\",\n }\n },\n _a$5[\".\".concat(placeholderClassName)] = {\n padding: \"$space$4 0\",\n },\n /**\n * For iOS: prevent browser zoom when clicking on sandbox.\n * Does NOT apply to code blocks.\n */\n _a$5[\"@media screen and (max-width: 768px)\"] = {\n \"@supports (-webkit-overflow-scrolling: touch)\": {\n \".cm-content\": { fontSize: \"16px\" },\n },\n },\n _a$5));\nvar cmClassName = css({\n margin: \"0\",\n outline: \"none\",\n height: \"100%\",\n});\nvar readOnlyClassName = css((_b$1 = {\n fontFamily: \"$font$mono\",\n fontSize: \"0.8em\",\n position: \"absolute\",\n right: \"$space$2\",\n bottom: \"$space$2\",\n zIndex: \"$top\",\n color: \"$colors$clickable\",\n backgroundColor: \"$colors$surface2\",\n borderRadius: \"99999px\",\n padding: \"calc($space$1 / 2) $space$2\"\n },\n _b$1[\"& + .\".concat(buttonClassName)] = {\n right: \"calc($space$11 * 2)\",\n },\n _b$1));\n\nvar useSyntaxHighlight = function (_a) {\n var langSupport = _a.langSupport, highlightTheme = _a.highlightTheme, _b = _a.code, code = _b === void 0 ? \"\" : _b;\n var tree = langSupport.language.parser.parse(code);\n var offSet = 0;\n var codeElementsRender = [];\n var addElement = function (to, className) {\n if (to > offSet) {\n var children = code.slice(offSet, to);\n codeElementsRender.push(className\n ? createElement(\"span\", {\n children: children,\n className: className,\n key: \"\".concat(to).concat(offSet),\n })\n : children);\n offSet = to;\n }\n };\n highlightTree(tree, highlightTheme, function (from, to, className) {\n addElement(from, \"\");\n addElement(to, className);\n });\n /**\n * The language parse doesn't look consistent.\n * The final syntax highlight used by CodeMirror\n * includes an end empty line, and the parse here doesn't,\n * so let's add it manually.\n */\n if (offSet < code.length && (code === null || code === void 0 ? void 0 : code.includes(\"\\n\"))) {\n codeElementsRender.push(\"\\n\\n\");\n }\n return codeElementsRender;\n};\n\nvar CodeMirror = React.forwardRef(function (_a, ref) {\n var _b = _a.code, code = _b === void 0 ? \"\" : _b, filePath = _a.filePath, fileType = _a.fileType, onCodeUpdate = _a.onCodeUpdate, _c = _a.showLineNumbers, showLineNumbers = _c === void 0 ? false : _c, _d = _a.showInlineErrors, showInlineErrors = _d === void 0 ? false : _d, _e = _a.wrapContent, wrapContent = _e === void 0 ? false : _e, _f = _a.editorState, editorState = _f === void 0 ? \"pristine\" : _f, _g = _a.readOnly, readOnly = _g === void 0 ? false : _g, _h = _a.showReadOnly, showReadOnly = _h === void 0 ? true : _h, decorators = _a.decorators, _j = _a.initMode, initMode = _j === void 0 ? \"lazy\" : _j, _k = _a.extensions, extensions = _k === void 0 ? [] : _k, _l = _a.extensionsKeymap, extensionsKeymap = _l === void 0 ? [] : _l, _m = _a.additionalLanguages, additionalLanguages = _m === void 0 ? [] : _m;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var wrapper = React.useRef(null);\n var combinedRef = useCombinedRefs(wrapper, ref);\n var cmView = React.useRef();\n var _o = useSandpackTheme(), theme = _o.theme, themeId = _o.themeId;\n var _p = React.useState(code), internalCode = _p[0], setInternalCode = _p[1];\n var _q = React.useState(initMode === \"immediate\"), shouldInitEditor = _q[0], setShouldInitEditor = _q[1];\n var classNames = useClassNames();\n var _r = useSandpack(), listen = _r.listen, autoReload = _r.sandpack.autoReload;\n var prevExtension = React.useRef([]);\n var prevExtensionKeymap = React.useRef([]);\n var isIntersecting = useIntersectionObserver(wrapper, {\n rootMargin: \"600px 0px\",\n threshold: 0.2,\n }).isIntersecting;\n React.useImperativeHandle(ref, function () { return ({\n getCodemirror: function () { return cmView.current; },\n }); });\n React.useEffect(function () {\n var mode = initMode === \"lazy\" || initMode === \"user-visible\";\n if (mode && isIntersecting) {\n setShouldInitEditor(true);\n }\n }, [initMode, isIntersecting]);\n var languageExtension = getLanguageFromFile(filePath, fileType, additionalLanguages);\n var langSupport = getCodeMirrorLanguage(languageExtension, additionalLanguages);\n var highlightTheme = getSyntaxHighlight(theme);\n var syntaxHighlightRender = useSyntaxHighlight({\n langSupport: langSupport,\n highlightTheme: highlightTheme,\n code: code,\n });\n // decorators need to be sorted by `line`, otherwise it will throw error\n // see https://github.com/codesandbox/sandpack/issues/383\n var sortedDecorators = React.useMemo(function () {\n return decorators\n ? decorators.sort(function (d1, d2) { return d1.line - d2.line; })\n : decorators;\n }, [decorators]);\n React.useEffect(function () {\n if (!wrapper.current || !shouldInitEditor || readOnly)\n return;\n var parentDiv = wrapper.current;\n var existingPlaceholder = parentDiv.querySelector(\".sp-pre-placeholder\");\n if (existingPlaceholder) {\n parentDiv.removeChild(existingPlaceholder);\n }\n var view = new EditorView({\n doc: code,\n extensions: [],\n parent: parentDiv,\n });\n view.contentDOM.setAttribute(\"data-gramm\", \"false\");\n view.contentDOM.setAttribute(\"data-lt-active\", \"false\");\n view.contentDOM.setAttribute(\"aria-label\", filePath ? \"Code Editor for \".concat(getFileName(filePath)) : \"Code Editor\");\n view.contentDOM.setAttribute(\"tabIndex\", \"-1\");\n cmView.current = view;\n return function () {\n var _a;\n (_a = cmView.current) === null || _a === void 0 ? void 0 : _a.destroy();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [shouldInitEditor, readOnly]);\n React.useEffect(function () {\n if (cmView.current && !readOnly) {\n var customCommandsKeymap = [\n {\n key: \"Tab\",\n run: function (view) {\n var _a, _b;\n indentMore(view);\n var customKey = extensionsKeymap.find(function (_a) {\n var key = _a.key;\n return key === \"Tab\";\n });\n return (_b = (_a = customKey === null || customKey === void 0 ? void 0 : customKey.run) === null || _a === void 0 ? void 0 : _a.call(customKey, view)) !== null && _b !== void 0 ? _b : true;\n },\n },\n {\n key: \"Shift-Tab\",\n run: function (view) {\n var _a, _b;\n indentLess({ state: view.state, dispatch: view.dispatch });\n var customKey = extensionsKeymap.find(function (_a) {\n var key = _a.key;\n return key === \"Shift-Tab\";\n });\n return (_b = (_a = customKey === null || customKey === void 0 ? void 0 : customKey.run) === null || _a === void 0 ? void 0 : _a.call(customKey, view)) !== null && _b !== void 0 ? _b : true;\n },\n },\n {\n key: \"Escape\",\n run: function () {\n if (readOnly)\n return true;\n if (wrapper.current) {\n wrapper.current.focus();\n }\n return true;\n },\n },\n {\n key: \"mod-Backspace\",\n run: deleteGroupBackward,\n },\n ];\n var extensionList = __spreadArray(__spreadArray([\n highlightSpecialChars(),\n history(),\n closeBrackets()\n ], extensions, true), [\n keymap.of(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], closeBracketsKeymap, true), defaultKeymap, true), historyKeymap, true), customCommandsKeymap, true), extensionsKeymap, true)),\n langSupport,\n getEditorTheme(),\n syntaxHighlighting(highlightTheme),\n EditorView.updateListener.of(function (update) {\n if (update.docChanged) {\n var newCode = update.state.doc.toString();\n setInternalCode(newCode);\n onCodeUpdate === null || onCodeUpdate === void 0 ? void 0 : onCodeUpdate(newCode);\n }\n }),\n ], false);\n if (readOnly) {\n extensionList.push(EditorState.readOnly.of(true));\n extensionList.push(EditorView.editable.of(false));\n }\n else {\n extensionList.push(bracketMatching());\n extensionList.push(highlightActiveLine());\n }\n if (sortedDecorators) {\n extensionList.push(highlightDecorators(sortedDecorators));\n }\n if (wrapContent) {\n extensionList.push(EditorView.lineWrapping);\n }\n if (showLineNumbers) {\n extensionList.push(lineNumbers());\n }\n if (showInlineErrors) {\n extensionList.push(highlightInlineError());\n }\n // Add new hightlight decorators\n cmView.current.dispatch({\n effects: StateEffect.reconfigure.of(extensionList),\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n shouldInitEditor,\n sortedDecorators,\n showLineNumbers,\n wrapContent,\n themeId,\n readOnly,\n autoReload,\n ]);\n React.useEffect(function applyExtensions() {\n var view = cmView.current;\n var dependenciesAreDiff = !shallowEqual(extensions, prevExtension.current) ||\n !shallowEqual(extensionsKeymap, prevExtensionKeymap.current);\n if (view && dependenciesAreDiff) {\n view.dispatch({\n effects: StateEffect.appendConfig.of(extensions),\n });\n view.dispatch({\n effects: StateEffect.appendConfig.of(keymap.of(__spreadArray([], extensionsKeymap, true))),\n });\n prevExtension.current = extensions;\n prevExtensionKeymap.current = extensionsKeymap;\n }\n }, [extensions, extensionsKeymap]);\n React.useEffect(function () {\n // When the user clicks on a tab button on a larger screen\n // Avoid autofocus on mobile as it leads to a bad experience and an unexpected layout shift\n if (cmView.current &&\n editorState === \"dirty\" &&\n window.matchMedia(\"(min-width: 768px)\").matches) {\n cmView.current.contentDOM.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n // Update editor when code passed as prop from outside sandpack changes\n React.useEffect(function () {\n if (cmView.current && typeof code === \"string\" && code !== internalCode) {\n var view = cmView.current;\n var selection = view.state.selection.ranges.some(function (_a) {\n var to = _a.to, from = _a.from;\n return to > code.length || from > code.length;\n })\n ? EditorSelection.cursor(code.length)\n : view.state.selection;\n var changes = { from: 0, to: view.state.doc.length, insert: code };\n view.dispatch({ changes: changes, selection: selection });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [code]);\n React.useEffect(function messageToInlineError() {\n if (!showInlineErrors)\n return;\n var unsubscribe = listen(function (message) {\n var view = cmView.current;\n if (message.type === \"success\") {\n view === null || view === void 0 ? void 0 : view.dispatch({\n // @ts-ignore\n annotations: [new Annotation(\"remove-errors\", true)],\n });\n }\n else if (message.type === \"action\" &&\n message.action === \"show-error\" &&\n message.path === filePath &&\n message.line) {\n view === null || view === void 0 ? void 0 : view.dispatch({\n // @ts-ignore\n annotations: [new Annotation(\"show-error\", message.line)],\n });\n }\n });\n return function () { return unsubscribe(); };\n }, [listen, showInlineErrors]);\n var handleContainerKeyDown = function (evt) {\n if (evt.key === \"Enter\" && cmView.current) {\n evt.preventDefault();\n cmView.current.contentDOM.focus();\n }\n };\n var gutterLineOffset = function () {\n // padding-left\n var offset = 4;\n if (showLineNumbers) {\n // line-number-gutter-width + gutter-padding\n offset += 6;\n }\n // line-padding\n if (!readOnly) {\n offset += 1;\n }\n return \"var(--\".concat(THEME_PREFIX, \"-space-\").concat(offset, \")\");\n };\n if (readOnly) {\n return (jsxs(Fragment, { children: [jsx(\"pre\", { ref: combinedRef, className: classNames(\"cm\", [\n classNames(editorState),\n classNames(languageExtension),\n cmClassName,\n tokensClassName,\n ]), translate: \"no\", children: jsx(\"code\", { className: classNames(\"pre-placeholder\", [placeholderClassName]), style: { marginLeft: gutterLineOffset() }, children: syntaxHighlightRender }) }), readOnly && showReadOnly && (jsx(\"span\", __assign({ className: classNames(\"read-only\", [readOnlyClassName]) }, ({}), { children: \"Read-only\" })))] }));\n }\n return (jsx(\"div\", { ref: combinedRef, \"aria-autocomplete\": \"list\", \"aria-label\": filePath ? \"Code Editor for \".concat(getFileName(filePath)) : \"Code Editor\", \"aria-multiline\": \"true\", className: classNames(\"cm\", [\n classNames(editorState),\n classNames(languageExtension),\n cmClassName,\n tokensClassName,\n ]), onKeyDown: handleContainerKeyDown, role: \"textbox\", tabIndex: 0, translate: \"no\", suppressHydrationWarning: true, children: jsx(\"pre\", { className: classNames(\"pre-placeholder\", [placeholderClassName]), style: { marginLeft: gutterLineOffset() }, children: syntaxHighlightRender }) }));\n});\n\nvar SandpackCodeEditor = forwardRef(function (_a, ref) {\n var showTabs = _a.showTabs, _b = _a.showLineNumbers, showLineNumbers = _b === void 0 ? false : _b, _c = _a.showInlineErrors, showInlineErrors = _c === void 0 ? false : _c, _d = _a.showRunButton, showRunButton = _d === void 0 ? true : _d, _e = _a.wrapContent, wrapContent = _e === void 0 ? false : _e, _f = _a.closableTabs, closableTabs = _f === void 0 ? false : _f, initMode = _a.initMode, extensions = _a.extensions, extensionsKeymap = _a.extensionsKeymap, readOnly = _a.readOnly, showReadOnly = _a.showReadOnly, additionalLanguages = _a.additionalLanguages, className = _a.className, props = __rest(_a, [\"showTabs\", \"showLineNumbers\", \"showInlineErrors\", \"showRunButton\", \"wrapContent\", \"closableTabs\", \"initMode\", \"extensions\", \"extensionsKeymap\", \"readOnly\", \"showReadOnly\", \"additionalLanguages\", \"className\"]);\n var sandpack = useSandpack().sandpack;\n var _g = useActiveCode(), code = _g.code, updateCode = _g.updateCode, readOnlyFile = _g.readOnly;\n var activeFile = sandpack.activeFile, status = sandpack.status, editorState = sandpack.editorState;\n var shouldShowTabs = showTabs !== null && showTabs !== void 0 ? showTabs : sandpack.visibleFiles.length > 1;\n var classNames = useClassNames();\n var handleCodeUpdate = function (newCode, shouldUpdatePreview) {\n if (shouldUpdatePreview === void 0) { shouldUpdatePreview = true; }\n updateCode(newCode, shouldUpdatePreview);\n };\n return (jsxs(SandpackStack, __assign({ className: classNames(\"editor\", [className]) }, props, { children: [shouldShowTabs && jsx(FileTabs, { closableTabs: closableTabs }), jsxs(\"div\", { className: classNames(\"code-editor\", [editorClassName]), children: [jsx(CodeMirror, { ref: ref, additionalLanguages: additionalLanguages, code: code, editorState: editorState, extensions: extensions, extensionsKeymap: extensionsKeymap, filePath: activeFile, initMode: initMode || sandpack.initMode, onCodeUpdate: function (newCode) { var _a; return handleCodeUpdate(newCode, (_a = sandpack.autoReload) !== null && _a !== void 0 ? _a : true); }, readOnly: readOnly || readOnlyFile, showInlineErrors: showInlineErrors, showLineNumbers: showLineNumbers, showReadOnly: showReadOnly, wrapContent: wrapContent }, activeFile), showRunButton && (!sandpack.autoReload || status === \"idle\") ? (jsx(RunButton$1, {})) : null] })] })));\n});\n\nvar SandpackCodeViewer = React.forwardRef(function (_a, ref) {\n var showTabs = _a.showTabs, showLineNumbers = _a.showLineNumbers, decorators = _a.decorators, propCode = _a.code, initMode = _a.initMode, wrapContent = _a.wrapContent, additionalLanguages = _a.additionalLanguages, props = __rest(_a, [\"showTabs\", \"showLineNumbers\", \"decorators\", \"code\", \"initMode\", \"wrapContent\", \"additionalLanguages\"]);\n var sandpack = useSandpack().sandpack;\n var code = useActiveCode().code;\n var classNames = useClassNames();\n var shouldShowTabs = showTabs !== null && showTabs !== void 0 ? showTabs : sandpack.visibleFiles.length > 1;\n return (jsxs(SandpackStack, __assign({ className: classNames(\"editor-viewer\") }, props, { children: [shouldShowTabs ? jsx(FileTabs, {}) : null, jsx(\"div\", { className: classNames(\"code-editor\", [editorClassName]), children: jsx(CodeMirror, { ref: ref, additionalLanguages: additionalLanguages, code: propCode !== null && propCode !== void 0 ? propCode : code, decorators: decorators, filePath: sandpack.activeFile, initMode: initMode || sandpack.initMode, showLineNumbers: showLineNumbers, showReadOnly: false, wrapContent: wrapContent, readOnly: true }) }), sandpack.status === \"idle\" ? jsx(RunButton$1, {}) : null] })));\n});\n\nvar _a$4, _b;\nvar layoutClassName = css((_a$4 = {\n border: \"1px solid $colors$surface2\",\n display: \"flex\",\n flexWrap: \"wrap\",\n alignItems: \"stretch\",\n borderRadius: \"$border$radius\",\n overflow: \"hidden\",\n position: \"relative\",\n backgroundColor: \"$colors$surface2\",\n gap: 1\n },\n _a$4[\"> .\".concat(stackClassName)] = {\n flexGrow: 1,\n flexShrink: 1,\n flexBasis: \"0\",\n height: \"$layout$height\",\n overflow: \"hidden\",\n \"@media print\": {\n height: \"auto\",\n display: \"block\",\n },\n \"@media screen and (max-width: 768px)\": (_b = {},\n _b[\"&:not(.\".concat(THEME_PREFIX, \"-preview, .\").concat(THEME_PREFIX, \"-editor, .\").concat(THEME_PREFIX, \"-preset-column)\")] = {\n height: \"calc($layout$height / 2)\",\n },\n /* triggers the layout break at the 768px breakpoint, not when the component is less then 700px */\n _b.minWidth = \"100%;\",\n _b),\n },\n _a$4[\"> .\".concat(THEME_PREFIX, \"-file-explorer\")] = {\n flex: 0.2,\n minWidth: 200,\n \"@media screen and (max-width: 768px)\": {\n flex: 1,\n },\n },\n _a$4));\nvar SandpackLayout = React.forwardRef(function (_a, ref) {\n var children = _a.children, className = _a.className, props = __rest(_a, [\"children\", \"className\"]);\n var sandpack = useSandpack().sandpack;\n var classNames = useClassNames();\n var combinedRef = useCombinedRefs(sandpack.lazyAnchorRef, ref);\n return (jsx(\"div\", __assign({ ref: combinedRef, className: classNames(\"layout\", [layoutClassName, className]) }, props, { children: children })));\n});\n\n/**\n * @category Hooks\n */\nvar useErrorMessage = function () {\n var _a;\n var sandpack = useSandpack().sandpack;\n var error = sandpack.error;\n return (_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : null;\n};\n\nvar FADE_ANIMATION_DURATION = 200;\n/**\n * @category Hooks\n */\nvar useLoadingOverlayState = function (clientId, externalLoading) {\n var _a = useSandpack(), sandpack = _a.sandpack, listen = _a.listen;\n var _b = React.useState(\"LOADING\"), state = _b[0], setState = _b[1];\n /**\n * Sandpack listener\n */\n React.useEffect(function () {\n var unsubscribe = listen(function (message) {\n if (message.type === \"start\" && message.firstLoad === true) {\n setState(\"LOADING\");\n }\n if (message.type === \"done\") {\n setState(function (prev) {\n return prev === \"LOADING\" ? \"PRE_FADING\" : \"HIDDEN\";\n });\n }\n }, clientId);\n return function () {\n unsubscribe();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clientId, sandpack.status === \"idle\"]);\n /**\n * Fading transient state\n */\n React.useEffect(function () {\n var fadeTimeout;\n if (state === \"PRE_FADING\" && !externalLoading) {\n setState(\"FADING\");\n }\n else if (state === \"FADING\") {\n fadeTimeout = setTimeout(function () { return setState(\"HIDDEN\"); }, FADE_ANIMATION_DURATION);\n }\n return function () {\n clearTimeout(fadeTimeout);\n };\n }, [state, externalLoading]);\n if (sandpack.status === \"timeout\") {\n return \"TIMEOUT\";\n }\n if (sandpack.status !== \"running\") {\n return \"HIDDEN\";\n }\n return state;\n};\n\n/**\n * @category Hooks\n */\nvar useSandpackNavigation = function (clientId) {\n var dispatch = useSandpack().dispatch;\n return {\n refresh: function () { return dispatch({ type: \"refresh\" }, clientId); },\n back: function () { return dispatch({ type: \"urlback\" }, clientId); },\n forward: function () { return dispatch({ type: \"urlforward\" }, clientId); },\n };\n};\n\nfunction getTranspiledCode(sandpack) {\n var _a, _b;\n var activeFile = sandpack.activeFile, bundlerState = sandpack.bundlerState;\n if (bundlerState == null) {\n return null;\n }\n var tModule = bundlerState.transpiledModules[activeFile + \":\"];\n return (_b = (_a = tModule === null || tModule === void 0 ? void 0 : tModule.source) === null || _a === void 0 ? void 0 : _a.compiledCode) !== null && _b !== void 0 ? _b : null;\n}\n/**\n * @category Hooks\n */\nvar useTranspiledCode = function () {\n var sandpack = useSandpack().sandpack;\n if (sandpack.status !== \"running\") {\n return null;\n }\n return getTranspiledCode(sandpack);\n};\n\n/**\n * It registers a new sandpack client and returns its instance,\n * listeners, and dispatch function. Using it when creating a custom\n * component to interact directly with the client is recommended.\n * For other cases, use `useSandpack` instead.\n *\n * @category Hooks\n */\nvar useSandpackClient = function (clientPropsOverride) {\n var _a = useSandpack(), sandpack = _a.sandpack, listen = _a.listen, dispatch = _a.dispatch;\n var iframeRef = React.useRef(null);\n var clientId = React.useRef(generateRandomId());\n React.useEffect(function () {\n var iframeElement = iframeRef.current;\n var clientIdValue = clientId.current;\n if (iframeElement !== null) {\n sandpack.registerBundler(iframeElement, clientIdValue, clientPropsOverride);\n }\n return function () { return sandpack.unregisterBundler(clientIdValue); };\n }, []);\n var getClient = function () {\n return sandpack.clients[clientId.current] || null;\n };\n return {\n sandpack: sandpack,\n getClient: getClient,\n clientId: clientId.current,\n iframe: iframeRef,\n listen: function (listener) {\n return listen(listener, clientId.current);\n },\n dispatch: function (message) { return dispatch(message, clientId.current); },\n };\n};\n\n/**\n * @category Hooks\n */\nvar useSandpackShell = function (clientId) {\n var dispatch = useSandpack().dispatch;\n return {\n restart: function () { return dispatch({ type: \"shell/restart\" }, clientId); },\n openPreview: function () { return dispatch({ type: \"shell/openPreview\" }, clientId); },\n };\n};\n\nvar mapProgressMessage = function (originalMessage, firstTotalPending) {\n var _a;\n switch (originalMessage.state) {\n case \"downloading_manifest\":\n return \"[1/3] Downloading manifest\";\n case \"downloaded_module\":\n return \"[2/3] Downloaded \".concat(originalMessage.name, \" (\").concat(firstTotalPending - originalMessage.totalPending, \"/\").concat(firstTotalPending, \")\");\n case \"starting_command\":\n return \"[3/3] Starting command\";\n case \"command_running\":\n return \"[3/3] Running \\\"\".concat((_a = originalMessage.command) === null || _a === void 0 ? void 0 : _a.trim(), \"\\\"\");\n }\n};\nvar useSandpackPreviewProgress = function (props) {\n var _a = React.useState(false), isReady = _a[0], setIsReady = _a[1];\n var _b = React.useState(), totalDependencies = _b[0], setTotalDependencies = _b[1];\n var _c = React.useState(null), loadingMessage = _c[0], setLoadingMessage = _c[1];\n var timeout = props === null || props === void 0 ? void 0 : props.timeout;\n var clientId = props === null || props === void 0 ? void 0 : props.clientId;\n var listen = useSandpack().listen;\n React.useEffect(function () {\n var timer;\n var unsubscribe = listen(function (message) {\n if (message.type === \"start\" && message.firstLoad) {\n setIsReady(false);\n }\n if (timeout) {\n timer = setTimeout(function () {\n setLoadingMessage(null);\n }, timeout);\n }\n if (message.type === \"dependencies\") {\n setLoadingMessage(function () {\n switch (message.data.state) {\n case \"downloading_manifest\":\n return \"[1/3] Downloading manifest\";\n case \"downloaded_module\":\n return \"[2/3] Downloaded \".concat(message.data.name, \" (\").concat(message.data.progress, \"/\").concat(message.data.total, \")\");\n case \"starting\":\n return \"[3/3] Starting\";\n }\n return null;\n });\n }\n else if (message.type === \"shell/progress\" && !isReady) {\n if (!totalDependencies && message.data.state === \"downloaded_module\") {\n setTotalDependencies(message.data.totalPending);\n }\n if (totalDependencies !== undefined) {\n setLoadingMessage(mapProgressMessage(message.data, totalDependencies));\n }\n }\n if (message.type === \"done\" && message.compilatonError === false) {\n setLoadingMessage(null);\n setIsReady(true);\n clearTimeout(timer);\n }\n }, clientId);\n return function () {\n if (timer) {\n clearTimeout(timer);\n }\n unsubscribe();\n };\n }, [clientId, isReady, totalDependencies, timeout]);\n return loadingMessage;\n};\n\nvar MAX_MESSAGE_COUNT$1 = 400 * 2;\nvar useSandpackShellStdout = function (_a) {\n var clientId = _a.clientId, _b = _a.maxMessageCount, maxMessageCount = _b === void 0 ? MAX_MESSAGE_COUNT$1 : _b; _a.resetOnPreviewRestart;\n var _d = React.useState([]), logs = _d[0], setLogs = _d[1];\n var listen = useSandpack().listen;\n React.useEffect(function () {\n var unsubscribe = listen(function (message) {\n if (message.type === \"start\") {\n setLogs([]);\n }\n else if (message.type === \"stdout\" &&\n message.payload.data &&\n Boolean(message.payload.data.trim())) {\n setLogs(function (prev) {\n var messages = __spreadArray(__spreadArray([], prev, true), [\n { data: message.payload.data, id: generateRandomId() },\n ], false);\n while (messages.length > maxMessageCount) {\n messages.shift();\n }\n return messages;\n });\n }\n }, clientId);\n return unsubscribe;\n }, [maxMessageCount, clientId]);\n return { logs: logs, reset: function () { return setLogs([]); } };\n};\n\nvar mapBundlerErrors = function (originalMessage) {\n var errorMessage = originalMessage.replace(\"[sandpack-client]: \", \"\");\n if (/process.exit/.test(errorMessage)) {\n var exitCode = errorMessage.match(/process.exit\\((\\d+)\\)/);\n if (!exitCode)\n return errorMessage;\n // Crash\n if (Number(exitCode[1]) === 0) {\n return \"Server is not running, would you like to start it again?\";\n }\n return \"Server has crashed with status code \".concat(exitCode[1], \", would you like to restart the server?\");\n }\n return errorMessage;\n};\nvar ErrorOverlay = function (props) {\n var children = props.children, className = props.className, otherProps = __rest(props, [\"children\", \"className\"]);\n var errorMessage = useErrorMessage();\n var restart = useSandpackShell().restart;\n var classNames = useClassNames();\n var _a = useSandpack().sandpack, runSandpack = _a.runSandpack, teamId = _a.teamId;\n var dispatch = useSandpack().dispatch;\n if (!errorMessage && !children) {\n return null;\n }\n var isSandpackBundlerError = errorMessage === null || errorMessage === void 0 ? void 0 : errorMessage.startsWith(\"[sandpack-client]\");\n var privateDependencyError = errorMessage === null || errorMessage === void 0 ? void 0 : errorMessage.includes(\"NPM_REGISTRY_UNAUTHENTICATED_REQUEST\");\n var onSignIn = function () {\n if (teamId) {\n dispatch({ type: \"sign-in\", teamId: teamId });\n }\n };\n if (privateDependencyError) {\n return (jsxs(\"div\", __assign({ className: classNames(\"overlay\", [\n classNames(\"error\"),\n absoluteClassName,\n errorBundlerClassName,\n className,\n ]) }, props, { children: [jsx(\"p\", { className: classNames(\"error-message\", [errorMessageClassName]), children: jsx(\"strong\", { children: \"Unable to fetch required dependency.\" }) }), jsx(\"div\", { className: classNames(\"error-message\", [errorMessageClassName]), children: jsxs(\"p\", { children: [\"Authentication required. Please sign in to your account (make sure to allow pop-ups to this page) and try again. If the issue persists, contact\", \" \", jsx(\"a\", { href: \"mailto:hello@codesandbox.io?subject=Sandpack Timeout Error\", children: \"support\" }), \" \", \"for further assistance.\"] }) }), jsx(\"div\", { children: jsxs(\"button\", { className: classNames(\"button\", [\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n ]), onClick: onSignIn, children: [jsx(SignInIcon, {}), jsx(\"span\", { children: \"Sign in\" })] }) })] })));\n }\n if (isSandpackBundlerError && errorMessage) {\n return (jsx(\"div\", __assign({ className: classNames(\"overlay\", [\n classNames(\"error\"),\n absoluteClassName,\n errorBundlerClassName,\n className,\n ]) }, otherProps, { children: jsxs(\"div\", { className: classNames(\"error-message\", [errorMessageClassName]), children: [jsx(\"p\", { className: classNames(\"error-title\", [css({ fontWeight: \"bold\" })]), children: \"Couldn't connect to server\" }), jsx(\"p\", { children: mapBundlerErrors(errorMessage) }), jsx(\"div\", { children: jsxs(\"button\", { className: classNames(\"button\", [\n classNames(\"icon-standalone\"),\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n ]), onClick: function () {\n restart();\n runSandpack();\n }, title: \"Restart script\", type: \"button\", children: [jsx(RestartIcon, {}), \" \", jsx(\"span\", { children: \"Restart\" })] }) })] }) })));\n }\n return (jsxs(\"div\", __assign({ className: classNames(\"overlay\", [\n classNames(\"error\"),\n absoluteClassName,\n errorClassName({ solidBg: true }),\n className,\n ]), translate: \"no\" }, otherProps, { children: [jsx(\"p\", { className: classNames(\"error-message\", [errorMessageClassName]), children: jsx(\"strong\", { children: \"Something went wrong\" }) }), jsx(\"p\", { className: classNames(\"error-message\", [\n errorMessageClassName({ errorCode: true }),\n ]), children: errorMessage || children })] })));\n};\n\n/**\n * Stole from https://github.com/nteract/ansi-to-react/blob/master/src/index.ts\n */\n/**\n * Converts ANSI strings into JSON output.\n * @name ansiToJSON\n * @function\n * @param {String} input The input string.\n * @param {boolean} use_classes If `true`, HTML classes will be appended\n * to the HTML output.\n * @return {Array} The parsed input.\n */\nfunction ansiToJSON(input, use_classes) {\n if (use_classes === void 0) { use_classes = false; }\n input = escapeCarriageReturn(fixBackspace(input));\n return Anser.ansiToJson(input, {\n json: true,\n remove_empty: true,\n use_classes: use_classes,\n });\n}\n/**\n * Create a class string.\n * @name createClass\n * @function\n * @param {AnserJsonEntry} bundle\n * @return {String} class name(s)\n */\nfunction createClass(bundle) {\n var classNames = \"\";\n if (bundle.bg) {\n classNames += \"\".concat(bundle.bg, \"-bg \");\n }\n if (bundle.fg) {\n classNames += \"\".concat(bundle.fg, \"-fg \");\n }\n if (bundle.decoration) {\n classNames += \"ansi-\".concat(bundle.decoration, \" \");\n }\n if (classNames === \"\") {\n return null;\n }\n classNames = classNames.substring(0, classNames.length - 1);\n return classNames;\n}\n/**\n * Create the style attribute.\n * @name createStyle\n * @function\n * @param {AnserJsonEntry} bundle\n * @return {Object} returns the style object\n */\nfunction createStyle(bundle) {\n var style = {};\n if (bundle.bg) {\n style.backgroundColor = \"rgb(\".concat(bundle.bg, \")\");\n }\n if (bundle.fg) {\n style.color = \"rgb(\".concat(bundle.fg, \")\");\n }\n switch (bundle.decoration) {\n case \"bold\":\n style.fontWeight = \"bold\";\n break;\n case \"dim\":\n style.opacity = \"0.5\";\n break;\n case \"italic\":\n style.fontStyle = \"italic\";\n break;\n case \"hidden\":\n style.visibility = \"hidden\";\n break;\n case \"strikethrough\":\n style.textDecoration = \"line-through\";\n break;\n case \"underline\":\n style.textDecoration = \"underline\";\n break;\n case \"blink\":\n style.textDecoration = \"blink\";\n break;\n }\n return style;\n}\n/**\n * Converts an Anser bundle into a React Node.\n * @param linkify whether links should be converting into clickable anchor tags.\n * @param useClasses should render the span with a class instead of style.\n * @param bundle Anser output.\n * @param key\n */\nfunction convertBundleIntoReact(linkify, useClasses, bundle, key) {\n var style = useClasses ? null : createStyle(bundle);\n var className = useClasses ? createClass(bundle) : null;\n if (!linkify) {\n return React.createElement(\"span\", { style: style, key: key, className: className }, bundle.content);\n }\n var content = [];\n var linkRegex = /(\\s|^)(https?:\\/\\/(?:www\\.|(?!www))[^\\s.]+\\.[^\\s]{2,}|www\\.[^\\s]+\\.[^\\s]{2,})/g;\n var index = 0;\n var match;\n while ((match = linkRegex.exec(bundle.content)) !== null) {\n var pre = match[1], url = match[2];\n var startIndex = match.index + pre.length;\n if (startIndex > index) {\n content.push(bundle.content.substring(index, startIndex));\n }\n // Make sure the href we generate from the link is fully qualified. We assume http\n // if it starts with a www because many sites don't support https\n var href = url.startsWith(\"www.\") ? \"http://\".concat(url) : url;\n content.push(React.createElement(\"a\", {\n key: index,\n href: href,\n target: \"_blank\",\n }, \"\".concat(url)));\n index = linkRegex.lastIndex;\n }\n if (index < bundle.content.length) {\n content.push(bundle.content.substring(index));\n }\n return React.createElement(\"span\", { style: style, key: key, className: className }, content);\n}\nfunction Ansi(props) {\n var className = props.className, useClasses = props.useClasses, children = props.children, linkify = props.linkify;\n return React.createElement(\"code\", { className: className }, ansiToJSON(children !== null && children !== void 0 ? children : \"\", useClasses !== null && useClasses !== void 0 ? useClasses : false).map(convertBundleIntoReact.bind(null, linkify !== null && linkify !== void 0 ? linkify : false, useClasses !== null && useClasses !== void 0 ? useClasses : false)));\n}\n// This is copied from the Jupyter Classic source code\n// notebook/static/base/js/utils.js to handle \\b in a way\n// that is **compatible with Jupyter classic**. One can\n// argue that this behavior is questionable:\n// https://stackoverflow.com/questions/55440152/multiple-b-doesnt-work-as-expected-in-jupyter#\nfunction fixBackspace(txt) {\n var tmp = txt;\n do {\n txt = tmp;\n // Cancel out anything-but-newline followed by backspace\n // eslint-disable-next-line no-control-regex\n tmp = txt.replace(/[^\\n]\\x08/gm, \"\");\n } while (tmp.length < txt.length);\n return txt;\n}\n\nvar StdoutList = function (_a) {\n var data = _a.data;\n var classNames = useClassNames();\n return (jsx(Fragment, { children: data.map(function (_a) {\n var data = _a.data, id = _a.id;\n return (jsx(\"div\", { className: classNames(\"console-item\", [consoleItemClassName$1]), children: jsx(Ansi, { children: data }) }, id));\n }) }));\n};\nvar consoleItemClassName$1 = css({\n width: \"100%\",\n padding: \"$space$3 $space$2\",\n fontSize: \".85em\",\n position: \"relative\",\n whiteSpace: \"pre\",\n \"&:not(:first-child):after\": {\n content: \"\",\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n height: 1,\n background: \"$colors$surface3\",\n },\n});\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nvar getParameters = function (parameters) {\n return LZString.compressToBase64(JSON.stringify(parameters))\n .replace(/\\+/g, \"-\") // Convert '+' to '-'\n .replace(/\\//g, \"_\") // Convert '/' to '_'\n .replace(/=+$/, \"\");\n}; /* Remove ending '='*/\nvar CSB_URL = \"https://codesandbox.io/api/v1/sandboxes/define\";\nvar getFileParameters = function (files, environment) {\n var normalizedFiles = Object.keys(files).reduce(function (prev, next) {\n var _a;\n var fileName = next.replace(\"/\", \"\");\n var value = {\n content: files[next].code,\n isBinary: false,\n };\n return __assign(__assign({}, prev), (_a = {}, _a[fileName] = value, _a));\n }, {});\n return getParameters(__assign({ files: normalizedFiles }, (environment ? { template: environment } : null)));\n};\nvar UnstyledOpenInCodeSandboxButton = function (props) {\n var sandpack = useSandpack().sandpack;\n if (sandpack.exportOptions) {\n return jsx(ExportToWorkspaceButton, __assign({ state: sandpack }, props));\n }\n return jsx(RegularExportButton, __assign({ state: sandpack }, props));\n};\nvar ExportToWorkspaceButton = function (_a) {\n var children = _a.children, state = _a.state, props = __rest(_a, [\"children\", \"state\"]);\n var submit = function () { return __awaiter(void 0, void 0, void 0, function () {\n var normalizedFiles, response, data;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!((_a = state.exportOptions) === null || _a === void 0 ? void 0 : _a.apiToken)) {\n throw new Error(\"Missing `apiToken` property\");\n }\n normalizedFiles = Object.keys(state.files).reduce(function (prev, next) {\n var _a;\n var fileName = next.replace(\"/\", \"\");\n return __assign(__assign({}, prev), (_a = {}, _a[fileName] = state.files[next], _a));\n }, {});\n return [4 /*yield*/, fetch(\"https://api.codesandbox.io/sandbox\", {\n method: \"POST\",\n body: JSON.stringify({\n template: state.environment,\n files: normalizedFiles,\n privacy: state.exportOptions.privacy === \"public\" ? 0 : 2,\n }),\n headers: {\n Authorization: \"Bearer \".concat(state.exportOptions.apiToken),\n \"Content-Type\": \"application/json\",\n \"X-CSB-API-Version\": \"2023-07-01\",\n },\n })];\n case 1:\n response = _b.sent();\n return [4 /*yield*/, response.json()];\n case 2:\n data = _b.sent();\n window.open(\"https://codesandbox.io/p/sandbox/\".concat(data.data.alias, \"?file=/\").concat(state.activeFile, \"&utm-source=storybook-addon\"), \"_blank\");\n return [2 /*return*/];\n }\n });\n }); };\n return (jsx(\"button\", __assign({ onClick: submit, title: \"Export to workspace in CodeSandbox\", type: \"button\" }, props, { children: children })));\n};\nvar RegularExportButton = function (_a) {\n var _b, _c, _d;\n var children = _a.children, state = _a.state, props = __rest(_a, [\"children\", \"state\"]);\n var formRef = React.useRef(null);\n var _e = React.useState(), paramsValues = _e[0], setParamsValues = _e[1];\n React.useEffect(function debounce() {\n var timer = setTimeout(function () {\n var params = getFileParameters(state.files, state.environment);\n var searchParams = new URLSearchParams({\n parameters: params,\n query: new URLSearchParams({\n file: state.activeFile,\n utm_medium: \"sandpack\",\n }).toString(),\n });\n setParamsValues(searchParams);\n }, 600);\n return function () {\n clearTimeout(timer);\n };\n }, [state.activeFile, state.environment, state.files]);\n /**\n * This is a safe limit to avoid too long requests (401),\n * as all parameters are attached in the URL\n */\n if (((_d = (_c = (_b = paramsValues === null || paramsValues === void 0 ? void 0 : paramsValues.get) === null || _b === void 0 ? void 0 : _b.call(paramsValues, \"parameters\")) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) > 1500) {\n return (jsxs(\"button\", __assign({ onClick: function () { var _a; return (_a = formRef.current) === null || _a === void 0 ? void 0 : _a.submit(); }, title: \"Open in CodeSandbox\", type: \"button\" }, props, { children: [jsxs(\"form\", { ref: formRef, action: CSB_URL, method: \"POST\", style: { visibility: \"hidden\" }, target: \"_blank\", children: [jsx(\"input\", { name: \"environment\", type: \"hidden\", value: state.environment === \"node\" ? \"server\" : state.environment }), Array.from(paramsValues, function (_a) {\n var key = _a[0], value = _a[1];\n return (jsx(\"input\", { name: key, type: \"hidden\", value: value }, key));\n })] }), children] })));\n }\n return (jsx(\"a\", __assign({ href: \"\".concat(CSB_URL, \"?\").concat(paramsValues === null || paramsValues === void 0 ? void 0 : paramsValues.toString(), \"&environment=\").concat(state.environment === \"node\" ? \"server\" : state.environment), rel: \"noreferrer noopener\", target: \"_blank\", title: \"Open in CodeSandbox\" }, props, { children: children })));\n};\n\nvar OpenInCodeSandboxButton = function () {\n var classNames = useClassNames();\n return (jsxs(UnstyledOpenInCodeSandboxButton, { className: classNames(\"button\", [\n classNames(\"icon-standalone\"),\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n ]), children: [jsx(ExportIcon, {}), jsx(\"span\", { children: \"Open Sandbox\" })] }));\n};\n\nvar _a$3;\nvar cubeClassName = css({\n transform: \"translate(-4px, 9px) scale(0.13, 0.13)\",\n \"*\": { position: \"absolute\", width: \"96px\", height: \"96px\" },\n});\nvar wrapperClassName$2 = css((_a$3 = {\n position: \"absolute\",\n right: \"$space$2\",\n bottom: \"$space$2\",\n zIndex: \"$top\",\n width: \"32px\",\n height: \"32px\",\n borderRadius: \"$border$radius\"\n },\n _a$3[\".\".concat(cubeClassName)] = { display: \"flex\" },\n _a$3[\".sp-button.\".concat(buttonClassName)] = { display: \"none\" },\n _a$3[\"&:hover .sp-button.\".concat(buttonClassName)] = { display: \"flex\" },\n _a$3[\"&:hover .sp-button.\".concat(buttonClassName, \" > span\")] = { display: \"none\" },\n _a$3[\"&:hover .\".concat(cubeClassName)] = { display: \"none\" },\n _a$3));\nvar cubeRotate = keyframes({\n \"0%\": {\n transform: \"rotateX(-25.5deg) rotateY(45deg)\",\n },\n \"100%\": {\n transform: \"rotateX(-25.5deg) rotateY(405deg)\",\n },\n});\nvar sidesClassNames = css({\n animation: \"\".concat(cubeRotate, \" 1s linear infinite\"),\n animationFillMode: \"forwards\",\n transformStyle: \"preserve-3d\",\n transform: \"rotateX(-25.5deg) rotateY(45deg)\",\n \"*\": {\n border: \"10px solid $colors$clickable\",\n borderRadius: \"8px\",\n background: \"$colors$surface1\",\n },\n \".top\": {\n transform: \"rotateX(90deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n \".bottom\": {\n transform: \"rotateX(-90deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n \".front\": {\n transform: \"rotateY(0deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n \".back\": {\n transform: \"rotateY(-180deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n \".left\": {\n transform: \"rotateY(-90deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n \".right\": {\n transform: \"rotateY(90deg) translateZ(44px)\",\n transformOrigin: \"50% 50%\",\n },\n});\nvar Loading = function (_a) {\n var className = _a.className, showOpenInCodeSandbox = _a.showOpenInCodeSandbox, props = __rest(_a, [\"className\", \"showOpenInCodeSandbox\"]);\n var classNames = useClassNames();\n return (jsxs(\"div\", __assign({ className: classNames(\"cube-wrapper\", [wrapperClassName$2, className]), title: \"Open in CodeSandbox\" }, props, { children: [showOpenInCodeSandbox && jsx(OpenInCodeSandboxButton, {}), jsx(\"div\", { className: classNames(\"cube\", [cubeClassName]), children: jsxs(\"div\", { className: classNames(\"sides\", [sidesClassNames]), children: [jsx(\"div\", { className: \"top\" }), jsx(\"div\", { className: \"right\" }), jsx(\"div\", { className: \"bottom\" }), jsx(\"div\", { className: \"left\" }), jsx(\"div\", { className: \"front\" }), jsx(\"div\", { className: \"back\" })] }) })] })));\n};\n\nvar loadingClassName = css({\n backgroundColor: \"$colors$surface1\",\n});\nvar LoadingOverlay = function (_a) {\n var clientId = _a.clientId, loading = _a.loading, className = _a.className, style = _a.style, showOpenInCodeSandbox = _a.showOpenInCodeSandbox, props = __rest(_a, [\"clientId\", \"loading\", \"className\", \"style\", \"showOpenInCodeSandbox\"]);\n var classNames = useClassNames();\n var _b = useSandpack().sandpack, runSandpack = _b.runSandpack, environment = _b.environment;\n var _c = React.useState(false), shouldShowStdout = _c[0], setShouldShowStdout = _c[1];\n var loadingOverlayState = useLoadingOverlayState(clientId, loading);\n var progressMessage = useSandpackPreviewProgress({ clientId: clientId });\n var stdoutData = useSandpackShellStdout({ clientId: clientId }).logs;\n React.useEffect(function () {\n var timer;\n if (progressMessage === null || progressMessage === void 0 ? void 0 : progressMessage.includes(\"Running\")) {\n timer = setTimeout(function () {\n setShouldShowStdout(true);\n }, 3000);\n }\n return function () {\n if (timer) {\n clearTimeout(timer);\n }\n };\n }, [progressMessage]);\n if (loadingOverlayState === \"HIDDEN\") {\n return null;\n }\n if (loadingOverlayState === \"TIMEOUT\") {\n return (jsx(\"div\", __assign({ className: classNames(\"overlay\", [\n classNames(\"error\"),\n absoluteClassName,\n errorClassName,\n errorBundlerClassName,\n className,\n ]) }, props, { children: jsxs(\"div\", { className: classNames(\"error-message\", [errorMessageClassName]), children: [jsx(\"p\", { className: classNames(\"error-title\", [css({ fontWeight: \"bold\" })]), children: \"Couldn't connect to server\" }), jsx(\"div\", { className: classNames(\"error-message\", [errorMessageClassName]), children: jsxs(\"p\", { children: [\"This means sandpack cannot connect to the runtime or your network is having some issues. Please check the network tab in your browser and try again. If the problem persists, report it via\", \" \", jsx(\"a\", { href: \"mailto:hello@codesandbox.io?subject=Sandpack Timeout Error\", children: \"email\" }), \" \", \"or submit an issue on\", \" \", jsx(\"a\", { href: \"https://github.com/codesandbox/sandpack/issues\", rel: \"noreferrer noopener\", target: \"_blank\", children: \"GitHub.\" })] }) }), jsxs(\"p\", { className: classNames(\"error-message\", [\n errorMessageClassName({ errorCode: true }),\n ]), children: [\"ENV: \", environment, jsx(\"br\", {}), \"ERROR: TIME_OUT\"] }), jsx(\"div\", { children: jsxs(\"button\", { className: classNames(\"button\", [\n classNames(\"icon-standalone\"),\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n ]), onClick: runSandpack, title: \"Restart script\", type: \"button\", children: [jsx(RestartIcon, {}), \" \", jsx(\"span\", { children: \"Try again\" })] }) })] }) })));\n }\n var stillLoading = loadingOverlayState === \"LOADING\" || loadingOverlayState === \"PRE_FADING\";\n return (jsxs(Fragment, { children: [jsxs(\"div\", __assign({ className: classNames(\"overlay\", [\n classNames(\"loading\"),\n absoluteClassName,\n loadingClassName,\n className,\n ]), style: __assign(__assign({}, style), { opacity: stillLoading ? 1 : 0, transition: \"opacity \".concat(FADE_ANIMATION_DURATION, \"ms ease-out\") }) }, props, { children: [shouldShowStdout && (jsx(\"div\", { className: stdoutPreview.toString(), children: jsx(StdoutList, { data: stdoutData }) })), jsx(Loading, { showOpenInCodeSandbox: showOpenInCodeSandbox })] })), progressMessage && (jsx(\"div\", { className: progressClassName$1.toString(), children: jsx(\"p\", { children: progressMessage }) }))] }));\n};\nvar stdoutPreview = css({\n position: \"absolute\",\n left: 0,\n right: 0,\n bottom: \"$space$8\",\n overflow: \"auto\",\n opacity: 0.5,\n overflowX: \"hidden\",\n});\nvar progressClassName$1 = css({\n position: \"absolute\",\n left: \"$space$5\",\n bottom: \"$space$4\",\n zIndex: \"$top\",\n color: \"$colors$clickable\",\n animation: \"\".concat(fadeIn, \" 150ms ease\"),\n fontFamily: \"$font$mono\",\n fontSize: \".8em\",\n width: \"75%\",\n p: {\n whiteSpace: \"nowrap\",\n margin: 0,\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n },\n});\n\nvar DependenciesProgress = function (_a) {\n var clientId = _a.clientId;\n var progressMessage = useSandpackPreviewProgress({\n timeout: 3000,\n clientId: clientId,\n });\n if (!progressMessage) {\n return null;\n }\n return (jsx(\"div\", { className: progressClassName.toString(), children: jsx(\"p\", { children: progressMessage }) }));\n};\nvar progressClassName = css({\n position: \"absolute\",\n left: \"$space$5\",\n bottom: \"$space$4\",\n zIndex: \"$top\",\n color: \"$colors$clickable\",\n animation: \"\".concat(fadeIn, \" 150ms ease\"),\n fontFamily: \"$font$mono\",\n fontSize: \".8em\",\n width: \"75%\",\n p: {\n whiteSpace: \"nowrap\",\n margin: 0,\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n },\n});\n\nvar explorerClassName = css({\n borderRadius: \"0\",\n width: \"100%\",\n padding: 0,\n marginBottom: \"$space$2\",\n span: {\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n },\n svg: {\n marginRight: \"$space$1\",\n },\n});\nvar File = function (_a) {\n var selectFile = _a.selectFile, path = _a.path, active = _a.active, onClick = _a.onClick, depth = _a.depth, isDirOpen = _a.isDirOpen;\n var classNames = useClassNames();\n var onClickButton = function (event) {\n if (selectFile) {\n selectFile(path);\n }\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n };\n var fileName = path.split(\"/\").filter(Boolean).pop();\n var getIcon = function () {\n if (selectFile)\n return jsx(FileIcon, {});\n return isDirOpen ? jsx(DirectoryIconOpen, {}) : jsx(DirectoryIconClosed, {});\n };\n return (jsxs(\"button\", { className: classNames(\"button\", [\n classNames(\"explorer\"),\n buttonClassName,\n explorerClassName,\n ]), \"data-active\": active, onClick: onClickButton, style: { paddingLeft: 18 * depth + \"px\" }, title: fileName, type: \"button\", children: [getIcon(), jsx(\"span\", { children: fileName })] }));\n};\n\nvar Directory = function (_a) {\n var prefixedPath = _a.prefixedPath, files = _a.files, selectFile = _a.selectFile, activeFile = _a.activeFile, depth = _a.depth, autoHiddenFiles = _a.autoHiddenFiles, visibleFiles = _a.visibleFiles, initialCollapsedFolder = _a.initialCollapsedFolder;\n var _b = React.useState(!(initialCollapsedFolder === null || initialCollapsedFolder === void 0 ? void 0 : initialCollapsedFolder.includes(prefixedPath))), open = _b[0], setOpen = _b[1];\n var toggle = function () { return setOpen(function (prev) { return !prev; }); };\n return (jsxs(\"div\", { children: [jsx(File, { depth: depth, isDirOpen: open, onClick: toggle, path: prefixedPath + \"/\" }), open && (jsx(ModuleList, { activeFile: activeFile, autoHiddenFiles: autoHiddenFiles, depth: depth + 1, files: files, initialCollapsedFolder: initialCollapsedFolder, prefixedPath: prefixedPath, selectFile: selectFile, visibleFiles: visibleFiles }))] }, prefixedPath));\n};\n\nvar fromPropsToModules = function (_a) {\n var autoHiddenFiles = _a.autoHiddenFiles, visibleFiles = _a.visibleFiles, files = _a.files, prefixedPath = _a.prefixedPath;\n var hasVisibleFilesOption = visibleFiles.length > 0;\n /**\n * When visibleFiles or activeFile are set, the hidden and active flags on the files prop are ignored.\n */\n var filterByHiddenProperty = autoHiddenFiles && !hasVisibleFilesOption;\n var filterByVisibleFilesOption = autoHiddenFiles && !!hasVisibleFilesOption;\n var fileListWithoutPrefix = Object.keys(files)\n .filter(function (filePath) {\n var _a;\n var isValidatedPath = filePath.startsWith(prefixedPath);\n if (filterByVisibleFilesOption) {\n return isValidatedPath && visibleFiles.includes(filePath);\n }\n if (filterByHiddenProperty) {\n return isValidatedPath && !((_a = files[filePath]) === null || _a === void 0 ? void 0 : _a.hidden);\n }\n return isValidatedPath;\n })\n .map(function (file) { return file.substring(prefixedPath.length); });\n var directories = new Set(fileListWithoutPrefix\n .filter(function (file) { return file.includes(\"/\"); })\n .map(function (file) { return \"\".concat(prefixedPath).concat(file.split(\"/\")[0], \"/\"); }));\n var modules = fileListWithoutPrefix\n .filter(function (file) { return !file.includes(\"/\"); })\n .map(function (file) { return \"\".concat(prefixedPath).concat(file); });\n return { directories: Array.from(directories), modules: modules };\n};\n\nvar ModuleList = function (_a) {\n var _b = _a.depth, depth = _b === void 0 ? 0 : _b, activeFile = _a.activeFile, selectFile = _a.selectFile, prefixedPath = _a.prefixedPath, files = _a.files, autoHiddenFiles = _a.autoHiddenFiles, visibleFiles = _a.visibleFiles, initialCollapsedFolder = _a.initialCollapsedFolder;\n var _c = fromPropsToModules({\n visibleFiles: visibleFiles,\n autoHiddenFiles: autoHiddenFiles,\n prefixedPath: prefixedPath,\n files: files,\n }), directories = _c.directories, modules = _c.modules;\n return (jsxs(\"div\", { children: [directories.map(function (dir) { return (jsx(Directory, { activeFile: activeFile, autoHiddenFiles: autoHiddenFiles, depth: depth, files: files, initialCollapsedFolder: initialCollapsedFolder, prefixedPath: dir, selectFile: selectFile, visibleFiles: visibleFiles }, dir)); }), modules.map(function (file) { return (jsx(File, { active: activeFile === file, depth: depth, path: file, selectFile: selectFile }, file)); })] }));\n};\n\nvar fileExplorerClassName = css({\n padding: \"$space$3\",\n overflow: \"auto\",\n height: \"100%\",\n});\nvar SandpackFileExplorer = function (_a) {\n var className = _a.className, _b = _a.autoHiddenFiles, autoHiddenFiles = _b === void 0 ? false : _b, _c = _a.initialCollapsedFolder, initialCollapsedFolder = _c === void 0 ? [] : _c, props = __rest(_a, [\"className\", \"autoHiddenFiles\", \"initialCollapsedFolder\"]);\n var _d = useSandpack(), _e = _d.sandpack, status = _e.status, updateFile = _e.updateFile, deleteFile = _e.deleteFile, activeFile = _e.activeFile, files = _e.files, openFile = _e.openFile, visibleFilesFromProps = _e.visibleFilesFromProps, listen = _d.listen;\n var classNames = useClassNames();\n React.useEffect(function watchFSFilesChanges() {\n if (status !== \"running\")\n return;\n var unsubscribe = listen(function (message) {\n if (message.type === \"fs/change\") {\n updateFile(message.path, message.content, false);\n }\n if (message.type === \"fs/remove\") {\n deleteFile(message.path, false);\n }\n });\n return unsubscribe;\n }, [status]);\n var orderedFiles = Object.keys(files)\n .sort()\n .reduce(function (obj, key) {\n obj[key] = files[key];\n return obj;\n }, {});\n return (jsx(\"div\", __assign({ className: classNames(\"file-explorer\", [stackClassName, className]) }, props, { children: jsx(\"div\", { className: classNames(\"file-explorer-list\", [fileExplorerClassName]), children: jsx(ModuleList, { activeFile: activeFile, autoHiddenFiles: autoHiddenFiles, files: orderedFiles, initialCollapsedFolder: initialCollapsedFolder, prefixedPath: \"/\", selectFile: openFile, visibleFiles: visibleFilesFromProps }) }) })));\n};\n\nvar splitUrl = function (url) {\n var match = url.match(/(https?:\\/\\/.*?)\\//);\n if (match && match[1]) {\n return [match[1], url.replace(match[1], \"\")];\n }\n return [url, \"/\"];\n};\n\nvar navigatorClassName = css({\n display: \"flex\",\n alignItems: \"center\",\n height: \"$layout$headerHeight\",\n borderBottom: \"1px solid $colors$surface2\",\n padding: \"$space$3 $space$2\",\n background: \"$colors$surface1\",\n});\nvar inputClassName = css({\n backgroundColor: \"$colors$surface2\",\n color: \"$colors$clickable\",\n padding: \"$space$1 $space$3\",\n borderRadius: \"99999px\",\n border: \"1px solid $colors$surface2\",\n height: \"24px\",\n lineHeight: \"24px\",\n fontSize: \"inherit\",\n outline: \"none\",\n flex: 1,\n marginLeft: \"$space$4\",\n width: \"0\",\n transition: \"background $transitions$default\",\n \"&:hover\": {\n backgroundColor: \"$colors$surface3\",\n },\n \"&:focus\": {\n backgroundColor: \"$surface1\",\n border: \"1px solid $colors$accent\",\n color: \"$colors$base\",\n },\n});\nvar Navigator = function (_a) {\n var _b;\n var clientId = _a.clientId, onURLChange = _a.onURLChange, className = _a.className, startRoute = _a.startRoute, props = __rest(_a, [\"clientId\", \"onURLChange\", \"className\", \"startRoute\"]);\n var _c = React.useState(\"\"), baseUrl = _c[0], setBaseUrl = _c[1];\n var _d = useSandpack(), sandpack = _d.sandpack, dispatch = _d.dispatch, listen = _d.listen;\n var _e = React.useState((_b = startRoute !== null && startRoute !== void 0 ? startRoute : sandpack.startRoute) !== null && _b !== void 0 ? _b : \"/\"), relativeUrl = _e[0], setRelativeUrl = _e[1];\n var _f = React.useState(false), backEnabled = _f[0], setBackEnabled = _f[1];\n var _g = React.useState(false), forwardEnabled = _g[0], setForwardEnabled = _g[1];\n var classNames = useClassNames();\n React.useEffect(function () {\n var unsub = listen(function (message) {\n if (message.type === \"urlchange\") {\n var url = message.url, back = message.back, forward = message.forward;\n var _a = splitUrl(url), newBaseUrl = _a[0], newRelativeUrl = _a[1];\n setBaseUrl(newBaseUrl);\n setRelativeUrl(newRelativeUrl);\n setBackEnabled(back);\n setForwardEnabled(forward);\n }\n }, clientId);\n return function () { return unsub(); };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n var handleInputChange = function (e) {\n var path = e.target.value.startsWith(\"/\")\n ? e.target.value\n : \"/\".concat(e.target.value);\n setRelativeUrl(path);\n };\n var handleKeyDown = function (e) {\n if (e.code === \"Enter\") {\n // Enter\n e.preventDefault();\n e.stopPropagation();\n if (typeof onURLChange === \"function\") {\n onURLChange(baseUrl + e.currentTarget.value);\n }\n }\n };\n var handleRefresh = function () {\n dispatch({ type: \"refresh\" });\n };\n var handleBack = function () {\n dispatch({ type: \"urlback\" });\n };\n var handleForward = function () {\n dispatch({ type: \"urlforward\" });\n };\n var buttonsClassNames = classNames(\"button\", [\n classNames(\"icon\"),\n buttonClassName,\n iconClassName,\n css({\n minWidth: \"$space$6\",\n justifyContent: \"center\",\n }),\n ]);\n return (jsxs(\"div\", __assign({ className: classNames(\"navigator\", [navigatorClassName, className]) }, props, { children: [jsx(\"button\", { \"aria-label\": \"Go back one page\", className: buttonsClassNames, disabled: !backEnabled, onClick: handleBack, type: \"button\", children: jsx(BackwardIcon, {}) }), jsx(\"button\", { \"aria-label\": \"Go forward one page\", className: buttonsClassNames, disabled: !forwardEnabled, onClick: handleForward, type: \"button\", children: jsx(ForwardIcon, {}) }), jsx(\"button\", { \"aria-label\": \"Refresh page\", className: buttonsClassNames, onClick: handleRefresh, type: \"button\", children: jsx(RefreshIcon, {}) }), jsx(\"input\", { \"aria-label\": \"Current Sandpack URL\", className: classNames(\"input\", [inputClassName]), name: \"Current Sandpack URL\", onChange: handleInputChange, onKeyDown: handleKeyDown, type: \"text\", value: relativeUrl })] })));\n};\n\nvar _a$2;\nvar previewClassName = css((_a$2 = {\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n background: \"white\",\n overflow: \"auto\",\n position: \"relative\"\n },\n _a$2[\".\".concat(THEME_PREFIX, \"-bridge-frame\")] = {\n border: 0,\n position: \"absolute\",\n left: \"$space$2\",\n bottom: \"$space$2\",\n zIndex: \"$top\",\n height: 12,\n width: \"30%\",\n mixBlendMode: \"multiply\",\n pointerEvents: \"none\",\n },\n _a$2));\nvar previewIframe = css({\n border: \"0\",\n outline: \"0\",\n width: \"100%\",\n height: \"100%\",\n minHeight: \"160px\",\n maxHeight: \"2000px\",\n flex: 1,\n});\nvar previewActionsClassName$1 = css({\n display: \"flex\",\n position: \"absolute\",\n bottom: \"$space$2\",\n right: \"$space$2\",\n zIndex: \"$overlay\",\n gap: \"$space$2\",\n});\nvar SandpackPreview = React.forwardRef(function (_a, ref) {\n var _b = _a.showNavigator, showNavigator = _b === void 0 ? false : _b, _c = _a.showRefreshButton, showRefreshButton = _c === void 0 ? true : _c, _d = _a.showOpenInCodeSandbox, showOpenInCodeSandbox = _d === void 0 ? true : _d, _e = _a.showSandpackErrorOverlay, showSandpackErrorOverlay = _e === void 0 ? true : _e; _a.showOpenNewtab; var _g = _a.showRestartButton, showRestartButton = _g === void 0 ? true : _g, _h = _a.actionsChildren, actionsChildren = _h === void 0 ? jsx(Fragment, {}) : _h, children = _a.children, className = _a.className, _j = _a.startRoute, startRoute = _j === void 0 ? \"/\" : _j, props = __rest(_a, [\"showNavigator\", \"showRefreshButton\", \"showOpenInCodeSandbox\", \"showSandpackErrorOverlay\", \"showOpenNewtab\", \"showRestartButton\", \"actionsChildren\", \"children\", \"className\", \"startRoute\"]);\n var _k = useSandpackClient({ startRoute: startRoute }), sandpack = _k.sandpack, listen = _k.listen, iframe = _k.iframe, getClient = _k.getClient, clientId = _k.clientId, dispatch = _k.dispatch;\n var _l = React.useState(null), iframeComputedHeight = _l[0], setComputedAutoHeight = _l[1];\n var status = sandpack.status;\n var refresh = useSandpackNavigation(clientId).refresh;\n var restart = useSandpackShell(clientId).restart;\n var classNames = useClassNames();\n React.useEffect(function () {\n var unsubscribe = listen(function (message) {\n if (message.type === \"resize\") {\n setComputedAutoHeight(message.height);\n }\n });\n return unsubscribe;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n React.useImperativeHandle(ref, function () { return ({\n clientId: clientId,\n getClient: getClient,\n }); }, [getClient, clientId]);\n var handleNewURL = function (newUrl) {\n if (!iframe.current) {\n return;\n }\n iframe.current.src = newUrl;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n };\n return (jsxs(SandpackStack, __assign({ className: classNames(\"preview\", [className]) }, props, { children: [showNavigator && (jsx(Navigator, { clientId: clientId, onURLChange: handleNewURL, startRoute: startRoute })), jsxs(\"div\", { className: classNames(\"preview-container\", [previewClassName]), children: [jsx(\"iframe\", { ref: iframe, className: classNames(\"preview-iframe\", [previewIframe]), style: {\n // set height based on the content only in auto mode\n // and when the computed height was returned by the bundler\n height: iframeComputedHeight ? iframeComputedHeight : undefined,\n }, title: \"Sandpack Preview\" }), jsxs(\"div\", { className: classNames(\"preview-actions\", [previewActionsClassName$1]), children: [actionsChildren, showRestartButton && sandpack.environment === \"node\" && (jsx(RoundedButton, { onClick: restart, children: jsx(RestartIcon, {}) })), !showNavigator && showRefreshButton && status === \"running\" && (jsx(RoundedButton, { onClick: refresh, children: jsx(RefreshIcon, {}) })), sandpack.teamId && (jsx(\"button\", { className: classNames(\"button\", [\n classNames(\"icon-standalone\"),\n buttonClassName,\n iconStandaloneClassName,\n roundedButtonClassName,\n ]), onClick: function () { return dispatch({ type: \"sign-out\" }); }, title: \"Sign out\", type: \"button\", children: jsx(SignOutIcon, {}) })), showOpenInCodeSandbox && jsx(OpenInCodeSandboxButton, {})] }), jsx(LoadingOverlay, { clientId: clientId, showOpenInCodeSandbox: showOpenInCodeSandbox }), showSandpackErrorOverlay && jsx(ErrorOverlay, {}), children] })] })));\n});\n\nvar _a$1;\nvar transpiledCodeClassName = css((_a$1 = {\n display: \"flex\",\n flexDirection: \"column\",\n width: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n minHeight: \"160px\",\n flex: 1\n },\n _a$1[\".\".concat(THEME_PREFIX, \"-stack\")] = {\n height: \"100%\",\n },\n _a$1));\nvar SandpackTranspiledCode = function (_a) {\n var className = _a.className, props = __rest(_a, [\"className\"]);\n var sandpack = useSandpack().sandpack;\n var transpiledCode = useTranspiledCode();\n var classNames = useClassNames();\n var hiddenIframeRef = React.useRef(null);\n React.useEffect(function () {\n var hiddenIframe = hiddenIframeRef.current;\n if (hiddenIframe) {\n sandpack.registerBundler(hiddenIframe, \"hidden\");\n }\n return function () {\n sandpack.unregisterBundler(\"hidden\");\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return (jsxs(\"div\", __assign({ className: classNames(\"transpiled-code\", [\n stackClassName,\n transpiledCodeClassName,\n className,\n ]) }, props, { children: [jsx(SandpackCodeViewer, __assign({ code: transpiledCode !== null && transpiledCode !== void 0 ? transpiledCode : \"\", initMode: sandpack.initMode }, props)), jsx(\"iframe\", { ref: hiddenIframeRef, style: { display: \"none\" }, title: \"transpiled sandpack code\" }), jsx(ErrorOverlay, {}), jsx(LoadingOverlay, { clientId: \"hidden\", showOpenInCodeSandbox: false })] })));\n};\n\nvar wrapperClassName$1 = css({\n justifyContent: \"space-between\",\n borderBottom: \"1px solid $colors$surface2\",\n padding: \"0 $space$2\",\n fontFamily: \"$font$mono\",\n height: \"$layout$headerHeight\",\n minHeight: \"$layout$headerHeight\",\n overflowX: \"auto\",\n whiteSpace: \"nowrap\",\n});\nvar flexClassName$1 = css({\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$space$2\",\n});\nvar Header$1 = function (_a) {\n var status = _a.status, suiteOnly = _a.suiteOnly, setSuiteOnly = _a.setSuiteOnly, setVerbose = _a.setVerbose, verbose = _a.verbose, watchMode = _a.watchMode, setWatchMode = _a.setWatchMode, showSuitesOnly = _a.showSuitesOnly, showWatchButton = _a.showWatchButton, showVerboseButton = _a.showVerboseButton, hideTestsAndSupressLogs = _a.hideTestsAndSupressLogs;\n var classNames = useClassNames();\n var buttonsClassName = classNames(\"test-header-button\", [\n buttonClassName,\n roundedButtonClassName,\n css({ padding: \"$space$1 $space$3\" }),\n ]);\n return (jsxs(\"div\", { className: classNames(\"test-header\", [wrapperClassName$1, flexClassName$1]), children: [jsx(\"div\", { className: classNames(\"test-header-wrapper\", [flexClassName$1]), children: jsxs(\"p\", { className: classNames(\"test-header-title\", [\n css({\n lineHeight: 1,\n margin: 0,\n color: \"$colors$base\",\n fontSize: \"$font$size\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"$space$2\",\n }),\n ]), children: [jsx(ConsoleIcon, {}), \"Tests\"] }) }), jsxs(\"div\", { className: classNames(\"test-header-actions\", [flexClassName$1]), children: [showSuitesOnly && (jsx(\"button\", { className: buttonsClassName, \"data-active\": suiteOnly, disabled: status === \"initialising\", onClick: setSuiteOnly, type: \"button\", children: \"Suite only\" })), showVerboseButton && (jsx(\"button\", { className: buttonsClassName, \"data-active\": verbose, disabled: status === \"initialising\" || hideTestsAndSupressLogs, onClick: setVerbose, type: \"button\", children: \"Verbose\" })), showWatchButton && (jsx(\"button\", { className: buttonsClassName, \"data-active\": watchMode, disabled: status === \"initialising\", onClick: setWatchMode, type: \"button\", children: \"Watch\" }))] })] }));\n};\n\nvar RunButton = function (_a) {\n var onClick = _a.onClick;\n return (jsx(RoundedButton, { onClick: onClick, title: \"Run tests\", children: jsx(RunIcon, {}) }));\n};\n\nvar setTestTheme = function (isDark) { return ({\n \"--test-pass\": isDark ? \"#18df16\" : \"#15c213\",\n \"--test-fail\": isDark ? \"#df162b\" : \"#c21325\",\n \"--test-skip\": isDark ? \"#eace2b\" : \"#c2a813\",\n \"--test-run\": isDark ? \"#eace2b\" : \"#c2a813\",\n \"--test-title\": isDark ? \"#3fbabe\" : \"#256c6f\",\n}); };\nvar color = css({\n variants: {\n status: {\n pass: { color: \"var(--test-pass)\" },\n fail: { color: \"var(--test-fail)\" },\n skip: { color: \"var(--test-skip)\" },\n title: { color: \"var(--test-title)\" },\n },\n },\n});\nvar passTextClassName = color({ status: \"pass\" });\nvar failTextClassName = color({ status: \"fail\" });\nvar skipTextClassName = color({ status: \"skip\" });\nvar titleTextClassName = color({ status: \"title\" });\nvar background = css({\n variants: {\n status: {\n pass: { background: \"var(--test-pass)\", color: \"$colors$surface1\" },\n fail: { background: \"var(--test-fail)\", color: \"$colors$surface1\" },\n run: { background: \"var(--test-run)\", color: \"$colors$surface1\" },\n },\n },\n});\nvar runBackgroundClassName = background({ status: \"run\" });\nvar passBackgroundClassName = background({ status: \"pass\" });\nvar failBackgroundClassName = background({ status: \"fail\" });\n\nvar testContainerClassName = css({\n marginLeft: \"$space$4\",\n});\nvar containerClassName$4 = css({\n marginBottom: \"$space$2\",\n color: \"$colors$clickable\",\n});\nvar testClassName = css({\n marginBottom: \"$space$2\",\n color: \"$colors$hover\",\n});\nvar durationClassName = css({\n marginLeft: \"$space$2\",\n});\nvar gapRightClassName = css({\n marginRight: \"$space$2\",\n});\nvar Tests = function (_a) {\n var tests = _a.tests; _a.style;\n var classNames = useClassNames();\n return (jsx(\"div\", { className: classNames(\"test\", [testContainerClassName]), children: tests.map(function (test) { return (jsxs(\"div\", { className: classNames(\"test-result\", [containerClassName$4]), children: [test.status === \"pass\" && (jsx(\"span\", { className: classNames(\"test-pass-text\", [\n passTextClassName,\n gapRightClassName,\n ]), children: \"\\u2713\" })), test.status === \"fail\" && (jsx(\"span\", { className: classNames(\"test-fail-text\", [\n failTextClassName,\n gapRightClassName,\n ]), children: \"\\u2715\" })), test.status === \"idle\" && (jsx(\"span\", { className: classNames(\"test-idle-text\", [\n skipTextClassName,\n gapRightClassName,\n ]), children: \"\\u25CB\" })), jsx(\"span\", { className: classNames(\"test-name-text\", [testClassName]), children: test.name }), test.duration !== undefined && (jsxs(\"span\", { className: classNames(\"test-duration-text\", [durationClassName]), children: [\"(\", test.duration, \" ms)\"] }))] }, test.name)); }) }));\n};\n\nvar getTests = function (block) {\n var _a;\n var _b, _c;\n return (_a = Object.values((_b = block.tests) !== null && _b !== void 0 ? _b : {})).concat.apply(_a, Object.values((_c = block.describes) !== null && _c !== void 0 ? _c : {}).map(getTests));\n};\nvar getFailingTests = function (block) {\n return getTests(block).filter(function (t) { return t.status === \"fail\"; });\n};\nvar getAllTestResults = function (specs) {\n return specs.map(getSpecTestResults).reduce(function (acc, stats) {\n return {\n pass: acc.pass + stats.pass,\n fail: acc.fail + stats.fail,\n skip: acc.skip + stats.skip,\n total: acc.total + stats.total,\n };\n }, { pass: 0, skip: 0, fail: 0, total: 0 });\n};\nvar getSpecTestResults = function (spec) {\n return getTests(spec).reduce(function (acc, test) {\n return {\n pass: test.status === \"pass\" ? acc.pass + 1 : acc.pass,\n fail: test.status === \"fail\" ? acc.fail + 1 : acc.fail,\n skip: test.status === \"idle\" || test.status === \"running\"\n ? acc.skip + 1\n : acc.skip,\n total: acc.total + 1,\n };\n }, { pass: 0, fail: 0, skip: 0, total: 0 });\n};\nvar getAllSuiteResults = function (specs) {\n return specs\n .filter(function (spec) {\n var _a, _b;\n return Object.values((_a = spec.describes) !== null && _a !== void 0 ? _a : {}).length > 0 ||\n Object.values((_b = spec.tests) !== null && _b !== void 0 ? _b : {}).length > 0;\n })\n .map(getSpecTestResults)\n .reduce(function (acc, stats) {\n return {\n pass: acc.pass + (stats.fail === 0 ? 1 : 0),\n fail: acc.fail + (stats.fail > 0 ? 1 : 0),\n total: acc.total + 1,\n };\n }, { pass: 0, fail: 0, total: 0 });\n};\nvar getDuration = function (specs) {\n return flatMap(specs, getTests).reduce(function (acc, test) { return acc + (test.duration || 0); }, 0);\n};\nvar isEmpty = function (block) {\n var _a, _b;\n return Object.values((_a = block.describes) !== null && _a !== void 0 ? _a : {}).length === 0 &&\n Object.values((_b = block.tests) !== null && _b !== void 0 ? _b : {}).length === 0;\n};\nvar splitTail = function (as) {\n var lastIndex = as.length - 1;\n var head = as.slice(0, lastIndex);\n var tail = as[lastIndex];\n return [head, tail];\n};\nvar flatMap = function (as, f) {\n return as.map(f).reduce(function (acc, next) { return acc.concat(next); }, []);\n};\nvar set = function (path, value) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return function (object) {\n return cleanSet(object, path, value);\n };\n};\n\nvar nameClassName = css({\n color: \"$colors$hover\",\n marginBottom: \"$space$2\",\n});\nvar containerClassName$3 = css({\n marginLeft: \"$space$4\",\n});\nvar Describes = function (_a) {\n var describes = _a.describes;\n var classNames = useClassNames();\n return (jsx(Fragment, { children: describes.map(function (describe) {\n var _a, _b;\n if (isEmpty(describe)) {\n return null;\n }\n var tests = Object.values((_a = describe.tests) !== null && _a !== void 0 ? _a : {});\n var describes = Object.values((_b = describe.describes) !== null && _b !== void 0 ? _b : {});\n return (jsxs(\"div\", { className: classNames(\"test-describe\", [containerClassName$3]), children: [jsx(\"div\", { className: classNames(\"test-name\", [nameClassName]), children: describe.name }), jsx(Tests, { tests: tests }), jsx(Describes, { describes: describes })] }, describe.name));\n }) }));\n};\n\nvar containerClassName$2 = css({\n color: \"$colors$hover\",\n fontSize: \"$font$size\",\n padding: \"$space$2\",\n whiteSpace: \"pre-wrap\",\n});\nvar FormattedError = function (_a) {\n var error = _a.error, path = _a.path;\n var classNames = useClassNames();\n return (jsx(\"div\", { className: classNames(\"test-error\", [containerClassName$2]), dangerouslySetInnerHTML: { __html: formatDiffMessage(error, path) } }));\n};\nvar escapeHtml = function (unsafe) {\n return unsafe\n .replace(/&/g, \"&\")\n .replace(//g, \">\")\n .replace(/\"/g, \""\")\n .replace(/'/g, \"'\");\n};\nvar formatDiffMessage = function (error, path) {\n var finalMessage = \"\";\n if (error.matcherResult) {\n finalMessage = \"\".concat(escapeHtml(error.message)\n .replace(/(expected)/m, \"$1\"))\n .replace(/(received)/m, \"$1\"))\n .replace(/(Difference:)/m, \"$1\")\n .replace(/(Expected:)(.*)/m, \"$1$2\"))\n .replace(/(Received:)(.*)/m, \"$1$2\"))\n .replace(/^(-.*)/gm, \"$1\"))\n .replace(/^(\\+.*)/gm, \"$1\")), \"\");\n }\n else {\n finalMessage = escapeHtml(error.message);\n }\n if (error.mappedErrors &&\n error.mappedErrors[0] &&\n error.mappedErrors[0].fileName.endsWith(path) &&\n error.mappedErrors[0]._originalScriptCode) {\n var mappedError = error.mappedErrors[0];\n var _originalScriptCode = mappedError._originalScriptCode || [];\n var widestNumber_1 = Math.max.apply(Math, _originalScriptCode.map(function (code) { return (code.lineNumber + \"\").length; })) + 2;\n var margin_1 = Array.from({ length: widestNumber_1 }).map(function () { return \" \"; });\n finalMessage += \"
\";\n finalMessage += \"
\";\n finalMessage += \"
\";\n _originalScriptCode\n .filter(function (s) { return s.content.trim(); })\n .forEach(function (code) {\n var currentLineMargin = (code.lineNumber + \"\").length;\n var newMargin = __spreadArray([], margin_1, true);\n newMargin.length -= currentLineMargin;\n if (code.highlight) {\n newMargin.length -= 2;\n }\n var toBeIndex = code.content.indexOf(\".to\");\n var toBeMargin = Array.from({ length: margin_1.length + toBeIndex - (widestNumber_1 - 1) }, function () { return \" \"; });\n var content = escapeHtml(code.content)\n .replace(/(describe|test|it)(\\()('|"|`)(.*)('|"|`)/m, \"$1$2$3$4$5\"))\n .replace(/(expect\\()(.*)(\\)\\..*)(to[\\w\\d]*)(\\()(.*)(\\))/m, \"$1$2$3$4$5$6$7\"));\n finalMessage +=\n \"
\") +\n (code.highlight\n ? \"> \")\n : \"\") +\n newMargin.join(\"\") +\n escapeHtml(\"\" + code.lineNumber) +\n \" | \" +\n content +\n \"
\" +\n (code.highlight\n ? \"
\" +\n margin_1.join(\"\") +\n \" | \" +\n toBeMargin.join(\"\") +\n \"^\") +\n \"
\"\n : \"\");\n });\n finalMessage += \"
\";\n }\n return finalMessage.replace(/(?:\\r\\n|\\r|\\n)/g, \"
\");\n};\n\nvar fileContainer = css({\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"center\",\n marginBottom: \"$space$2\",\n});\nvar gapBottomClassName$1 = css({\n marginBottom: \"$space$2\",\n});\nvar failTestClassName = css({\n fontWeight: \"bold\",\n});\nvar labelClassName$1 = css({\n borderRadius: \"calc($border$radius / 2)\",\n});\nvar specLabelClassName = css({\n padding: \"$space$1 $space$2\",\n fontFamily: \"$font$mono\",\n textTransform: \"uppercase\",\n marginRight: \"$space$2\",\n});\nvar filePathButtonClassName = css({\n fontFamily: \"$font$mono\",\n cursor: \"pointer\",\n display: \"inline-block\",\n});\nvar filePathClassName = css({\n color: \"$colors$clickable\",\n textDecorationStyle: \"dotted\",\n textDecorationLine: \"underline\",\n});\nvar fileNameClassName = css({\n color: \"$colors$hover\",\n fontWeight: \"bold\",\n textDecorationStyle: \"dotted\",\n textDecorationLine: \"underline\",\n});\nvar Specs = function (_a) {\n var specs = _a.specs, openSpec = _a.openSpec, status = _a.status, verbose = _a.verbose, hideTestsAndSupressLogs = _a.hideTestsAndSupressLogs;\n var classNames = useClassNames();\n return (jsx(Fragment, { children: specs.map(function (spec) {\n if (spec.error) {\n return (jsxs(\"div\", { className: classNames(\"test-spec\", [gapBottomClassName$1]), children: [jsx(SpecLabel, { className: classNames(\"test-spec-error\", [\n labelClassName$1,\n failBackgroundClassName,\n ]), children: \"Error\" }), jsx(FilePath, { onClick: function () { return openSpec(spec.name); }, path: spec.name }), jsx(FormattedError, { error: spec.error, path: spec.name })] }, spec.name));\n }\n if (isEmpty(spec)) {\n return null;\n }\n var tests = Object.values(spec.tests);\n var describes = Object.values(spec.describes);\n var stats = getSpecTestResults(spec);\n return (jsxs(\"div\", { className: classNames(\"test-spec-name\", [gapBottomClassName$1]), children: [jsxs(\"div\", { className: classNames(\"test-spec-name-container\", [\n fileContainer,\n ]), children: [status === \"complete\" ? (stats.fail > 0 ? (jsx(SpecLabel, { className: classNames(\"test-spec-complete\", [\n labelClassName$1,\n failBackgroundClassName,\n ]), children: \"Fail\" })) : (jsx(SpecLabel, { className: classNames(\"test-spec-pass\", [\n labelClassName$1,\n passBackgroundClassName,\n ]), children: \"Pass\" }))) : (jsx(SpecLabel, { className: classNames(\"test-spec-run\", [\n labelClassName$1,\n runBackgroundClassName,\n ]), children: \"Run\" })), jsx(FilePath, { onClick: function () {\n if (!hideTestsAndSupressLogs) {\n openSpec(spec.name);\n }\n }, path: spec.name })] }), verbose && !hideTestsAndSupressLogs && jsx(Tests, { tests: tests }), verbose && !hideTestsAndSupressLogs && (jsx(Describes, { describes: describes })), !hideTestsAndSupressLogs &&\n getFailingTests(spec).map(function (test) {\n return (jsxs(\"div\", { className: classNames(\"test-spec-error\", [\n gapBottomClassName$1,\n ]), children: [jsxs(\"div\", { className: classNames(\"test-spec-error-text\", [\n failTestClassName,\n failTextClassName,\n ]), children: [\"\\u25CF \", test.blocks.join(\" › \"), \" \\u203A \", test.name] }), test.errors.map(function (e) { return (jsx(FormattedError, { error: e, path: test.path }, \"failing-\".concat(test.name, \"-error\"))); })] }, \"failing-\".concat(test.name)));\n })] }, spec.name));\n }) }));\n};\nvar SpecLabel = function (_a) {\n var children = _a.children, className = _a.className;\n var classNames = useClassNames();\n return (jsx(\"span\", { className: classNames(\"test-spec-label\", [specLabelClassName, className]), children: children }));\n};\nvar FilePath = function (_a) {\n var onClick = _a.onClick, path = _a.path;\n var parts = path.split(\"/\");\n var basePath = parts.slice(0, parts.length - 1).join(\"/\") + \"/\";\n var fileName = parts[parts.length - 1];\n var classNames = useClassNames();\n return (jsxs(\"button\", { className: classNames(\"test-filename\", [\n buttonClassName,\n filePathButtonClassName,\n ]), onClick: onClick, type: \"button\", children: [jsx(\"span\", { className: classNames(\"test-filename-base\", [filePathClassName]), children: basePath }), jsx(\"span\", { className: classNames(\"test-filename-file\", [fileNameClassName]), children: fileName })] }));\n};\n\nvar gapBottomClassName = css({\n marginBottom: \"$space$2\",\n});\nvar labelClassName = css({\n fontWeight: \"bold\",\n color: \"$colors$hover\",\n whiteSpace: \"pre-wrap\",\n});\nvar containerClassName$1 = css({\n fontWeight: \"bold\",\n color: \"$colors$clickable\",\n});\nvar Summary = function (_a) {\n var suites = _a.suites, tests = _a.tests, duration = _a.duration;\n var widestLabel = \"Test suites: \";\n var withMargin = function (label) {\n var difference = widestLabel.length - label.length;\n var margin = Array.from({ length: difference }, function () { return \" \"; }).join(\"\");\n return label + margin;\n };\n var classNames = useClassNames();\n return (jsxs(\"div\", { className: classNames(\"test-summary\", [containerClassName$1]), children: [jsxs(\"div\", { className: classNames(\"test-summary\", [gapBottomClassName]), children: [jsx(\"span\", { className: classNames(\"test-summary-suites-label\", [labelClassName]), children: widestLabel }), suites.fail > 0 && (jsxs(\"span\", { className: classNames(\"test-summary-suites-fail\", [\n failTextClassName,\n ]), children: [suites.fail, \" failed,\", \" \"] })), suites.pass > 0 && (jsxs(\"span\", { className: classNames(\"test-summary-suites-pass\", [\n passTextClassName,\n ]), children: [suites.pass, \" passed,\", \" \"] })), jsxs(\"span\", { children: [suites.total, \" total\"] })] }), jsxs(\"div\", { className: classNames(\"test-summary\", [gapBottomClassName]), children: [jsx(\"span\", { className: classNames(\"test-summary-label\", [labelClassName]), children: withMargin(\"Tests:\") }), tests.fail > 0 && (jsxs(\"span\", { className: classNames(\"test-summary-fail\", [failTextClassName]), children: [tests.fail, \" failed,\", \" \"] })), tests.skip > 0 && (jsxs(\"span\", { className: classNames(\"test-summary-skip\", [skipTextClassName]), children: [tests.skip, \" skipped,\", \" \"] })), tests.pass > 0 && (jsxs(\"span\", { className: classNames(\"test-summary-pass\", [passTextClassName]), children: [tests.pass, \" passed,\", \" \"] })), jsxs(\"span\", { children: [tests.total, \" total\"] })] }), jsxs(\"div\", { className: classNames(\"test-summary-curation\", [labelClassName]), children: [withMargin(\"Time:\"), duration / 1000, \"s\"] })] }));\n};\n\nvar previewActionsClassName = css({\n display: \"flex\",\n position: \"absolute\",\n bottom: \"$space$2\",\n right: \"$space$2\",\n zIndex: \"$overlay\",\n \"> *\": { marginLeft: \"$space$2\" },\n});\nvar INITIAL_STATE = {\n specs: {},\n status: \"initialising\",\n verbose: false,\n watchMode: true,\n suiteOnly: false,\n specsCount: 0,\n};\nvar SandpackTests = function (_a) {\n var _b = _a.verbose, verbose = _b === void 0 ? false : _b, _c = _a.watchMode, watchMode = _c === void 0 ? true : _c, style = _a.style, className = _a.className, onComplete = _a.onComplete, actionsChildren = _a.actionsChildren, _d = _a.showVerboseButton, showVerboseButton = _d === void 0 ? true : _d, _e = _a.showWatchButton, showWatchButton = _e === void 0 ? true : _e, _f = _a.hideTestsAndSupressLogs, hideTestsAndSupressLogs = _f === void 0 ? false : _f, props = __rest(_a, [\"verbose\", \"watchMode\", \"style\", \"className\", \"onComplete\", \"actionsChildren\", \"showVerboseButton\", \"showWatchButton\", \"hideTestsAndSupressLogs\"]);\n var theme = useSandpackTheme();\n var _g = useSandpackClient(), getClient = _g.getClient, iframe = _g.iframe, listen = _g.listen, sandpack = _g.sandpack;\n var _h = React.useState(__assign(__assign({}, INITIAL_STATE), { verbose: verbose, watchMode: watchMode })), state = _h[0], setState = _h[1];\n var runAllTests = React.useCallback(function () {\n setState(function (oldState) { return (__assign(__assign({}, oldState), { status: \"running\", specs: {} })); });\n var client = getClient();\n if (client) {\n client.dispatch({ type: \"run-all-tests\" });\n }\n }, [getClient]);\n var runSpec = React.useCallback(function () {\n setState(function (oldState) { return (__assign(__assign({}, oldState), { status: \"running\", specs: {} })); });\n var client = getClient();\n if (client) {\n client.dispatch({ type: \"run-tests\", path: sandpack.activeFile });\n }\n }, [getClient, sandpack.activeFile]);\n var testFileRegex = /.*\\.(test|spec)\\.[tj]sx?$/;\n var isSpecOpen = sandpack.activeFile.match(testFileRegex) !== null;\n React.useEffect(function () {\n var currentDescribeBlocks = [];\n var currentSpec = \"\";\n var unsubscribe = listen(function (data) {\n // Note: short-circuit if message isn't for the currently active spec when `suiteOnly` is true\n if (state.suiteOnly &&\n ((\"path\" in data && data.path !== sandpack.activeFile) ||\n (\"test\" in data &&\n \"path\" in data.test &&\n data.test.path !== sandpack.activeFile))) {\n return;\n }\n if (data.type === \"action\" &&\n data.action === \"clear-errors\" &&\n data.source === \"jest\") {\n currentSpec = data.path;\n return;\n }\n if (data.type === \"test\") {\n if (data.event === \"initialize_tests\") {\n currentDescribeBlocks = [];\n currentSpec = \"\";\n if (state.watchMode) {\n return runAllTests();\n }\n else {\n return setState(function (oldState) { return (__assign(__assign({}, oldState), { status: \"idle\", specs: {} })); });\n }\n }\n if (data.event === \"test_count\") {\n return setState(function (oldState) { return (__assign(__assign({}, oldState), { specsCount: data.count })); });\n }\n if (data.event === \"total_test_start\") {\n currentDescribeBlocks = [];\n return setState(function (oldState) { return (__assign(__assign({}, oldState), { status: \"running\" })); });\n }\n if (data.event === \"total_test_end\") {\n return setState(function (oldState) {\n if (onComplete !== undefined) {\n onComplete(oldState.specs);\n }\n return __assign(__assign({}, oldState), { status: \"complete\" });\n });\n }\n if (data.event === \"add_file\") {\n return setState(set([\"specs\", data.path], {\n describes: {},\n tests: {},\n name: data.path,\n }));\n }\n if (data.event === \"remove_file\") {\n return setState(function (oldState) {\n var specs = Object.entries(oldState.specs).reduce(function (acc, _a) {\n var _b;\n var key = _a[0], value = _a[1];\n if (key === data.path) {\n return acc;\n }\n else {\n return __assign(__assign({}, acc), (_b = {}, _b[key] = value, _b));\n }\n }, {});\n return __assign(__assign({}, oldState), { specs: specs });\n });\n }\n if (data.event === \"file_error\") {\n return setState(set([\"specs\", data.path, \"error\"], data.error));\n }\n if (data.event === \"describe_start\") {\n currentDescribeBlocks.push(data.blockName);\n var _a = splitTail(currentDescribeBlocks), describePath = _a[0], currentDescribe = _a[1];\n var spec = currentSpec;\n if (currentDescribe === undefined) {\n return;\n }\n return setState(set(__spreadArray(__spreadArray([\n \"specs\",\n spec,\n \"describes\"\n ], flatMap(describePath, function (name) { return [name, \"describes\"]; }), true), [\n currentDescribe,\n ], false), {\n name: data.blockName,\n tests: {},\n describes: {},\n }));\n }\n if (data.event === \"describe_end\") {\n currentDescribeBlocks.pop();\n return;\n }\n if (data.event === \"add_test\") {\n var _b = splitTail(currentDescribeBlocks), describePath = _b[0], currentDescribe = _b[1];\n var test_1 = {\n status: \"idle\",\n errors: [],\n name: data.testName,\n blocks: __spreadArray([], currentDescribeBlocks, true),\n path: data.path,\n };\n if (currentDescribe === undefined) {\n return setState(set([\"specs\", data.path, \"tests\", data.testName], test_1));\n }\n else {\n return setState(set(__spreadArray(__spreadArray([\n \"specs\",\n data.path,\n \"describes\"\n ], flatMap(describePath, function (name) { return [name, \"describes\"]; }), true), [\n currentDescribe,\n \"tests\",\n data.testName,\n ], false), test_1));\n }\n }\n if (data.event === \"test_start\") {\n var test_2 = data.test;\n var _c = splitTail(test_2.blocks), describePath = _c[0], currentDescribe = _c[1];\n var startedTest = {\n status: \"running\",\n name: test_2.name,\n blocks: test_2.blocks,\n path: test_2.path,\n errors: [],\n };\n if (currentDescribe === undefined) {\n return setState(set([\"specs\", test_2.path, \"tests\", test_2.name], startedTest));\n }\n else {\n return setState(set(__spreadArray(__spreadArray([\n \"specs\",\n test_2.path,\n \"describes\"\n ], flatMap(describePath, function (name) { return [name, \"describes\"]; }), true), [\n currentDescribe,\n \"tests\",\n test_2.name,\n ], false), startedTest));\n }\n }\n if (data.event === \"test_end\") {\n var test_3 = data.test;\n var _d = splitTail(test_3.blocks), describePath = _d[0], currentDescribe = _d[1];\n var endedTest = {\n status: test_3.status,\n errors: test_3.errors,\n duration: test_3.duration,\n name: test_3.name,\n blocks: test_3.blocks,\n path: test_3.path,\n };\n if (currentDescribe === undefined) {\n return setState(set([\"specs\", test_3.path, \"tests\", test_3.name], endedTest));\n }\n else {\n return setState(set(__spreadArray(__spreadArray([\n \"specs\",\n test_3.path,\n \"describes\"\n ], flatMap(describePath, function (name) { return [name, \"describes\"]; }), true), [\n currentDescribe,\n \"tests\",\n test_3.name,\n ], false), endedTest));\n }\n }\n }\n });\n return unsubscribe;\n }, [state.suiteOnly, state.watchMode, sandpack.activeFile]);\n React.useEffect(function watchMode() {\n var unsunscribe = listen(function (_a) {\n var type = _a.type;\n if (type === \"done\" && state.watchMode) {\n if (isSpecOpen) {\n runSpec();\n }\n else {\n runAllTests();\n }\n }\n });\n return unsunscribe;\n }, [runSpec, runAllTests, state.watchMode, isSpecOpen]);\n var openSpec = function (file) {\n sandpack.setActiveFile(file);\n };\n var specs = Object.values(state.specs);\n var duration = getDuration(specs);\n var testResults = getAllTestResults(specs);\n var suiteResults = getAllSuiteResults(specs);\n var classNames = useClassNames();\n return (jsxs(SandpackStack, __assign({ className: classNames(\"tests\", [className]), style: __assign(__assign({}, setTestTheme(theme.themeMode === \"dark\")), style) }, props, { children: [jsx(\"iframe\", { ref: iframe, style: { display: \"none\" }, title: \"Sandpack Tests\" }), jsx(Header$1, { hideTestsAndSupressLogs: hideTestsAndSupressLogs, setSuiteOnly: function () {\n return setState(function (s) { return (__assign(__assign({}, s), { suiteOnly: !s.suiteOnly })); });\n }, setVerbose: function () {\n return setState(function (s) { return (__assign(__assign({}, s), { verbose: !s.verbose })); });\n }, setWatchMode: function () {\n setState(function (s) { return (__assign(__assign({}, s), { watchMode: !s.watchMode })); });\n }, showSuitesOnly: state.specsCount > 1, showVerboseButton: showVerboseButton, showWatchButton: showWatchButton, status: state.status, suiteOnly: state.suiteOnly, verbose: state.verbose, watchMode: state.watchMode }), state.status === \"running\" || state.status === \"initialising\" ? (jsx(Loading, { showOpenInCodeSandbox: false })) : (jsxs(\"div\", { className: previewActionsClassName.toString(), children: [actionsChildren, jsx(RunButton, { onClick: state.suiteOnly ? runSpec : runAllTests })] })), jsx(\"div\", { className: containerClassName.toString(), children: specs.length === 0 && state.status === \"complete\" ? (jsxs(\"div\", { className: fileErrorContainerClassName.toString(), children: [jsx(\"p\", { children: \"No test files found.\" }), jsxs(\"p\", { children: [\"Test match:\", \" \", jsx(\"span\", { className: failTextClassName.toString(), children: testFileRegex.toString() })] })] })) : (jsxs(Fragment, { children: [jsx(Specs, { hideTestsAndSupressLogs: hideTestsAndSupressLogs, openSpec: openSpec, specs: specs, status: state.status, verbose: state.verbose }), state.status === \"complete\" && testResults.total > 0 && (jsx(Summary, { duration: duration, suites: suiteResults, tests: testResults }))] })) })] })));\n};\nvar containerClassName = css({\n padding: \"$space$4\",\n height: \"100%\",\n overflow: \"auto\",\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n fontFamily: \"$font$mono\",\n});\nvar fileErrorContainerClassName = css({\n fontWeight: \"bold\",\n color: \"$colors$base\",\n});\n\nvar SYNTAX_ERROR_PATTERN = [\"SyntaxError: \", \"Error in sandbox:\"];\nvar CLEAR_LOG = {\n id: \"random\",\n method: \"clear\",\n data: [\"Console was cleared\"],\n};\nvar TRANSFORMED_TYPE_KEY = \"@t\";\nvar TRANSFORMED_TYPE_KEY_ALTERNATE = \"#@t\";\nvar CIRCULAR_REF_KEY = \"@r\";\nvar MAX_LENGTH_STRING = 10000;\nvar MAX_NEST_LEVEL = 2;\nvar MAX_KEYS = 400;\nvar MAX_MESSAGE_COUNT = MAX_KEYS * 2;\n\n/* eslint-disable @typescript-eslint/ban-ts-comment */\n/* eslint-disable @typescript-eslint/no-empty-function */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n// Const\nvar GLOBAL = (function getGlobal() {\n // NOTE: see http://www.ecma-international.org/ecma-262/6.0/index.html#sec-performeval step 10\n var savedEval = eval;\n return savedEval(\"this\");\n})();\nvar ARRAY_BUFFER_SUPPORTED = typeof ArrayBuffer === \"function\";\nvar MAP_SUPPORTED = typeof Map === \"function\";\nvar SET_SUPPORTED = typeof Set === \"function\";\nvar Arithmetic;\n(function (Arithmetic) {\n Arithmetic[Arithmetic[\"infinity\"] = 0] = \"infinity\";\n Arithmetic[Arithmetic[\"minusInfinity\"] = 1] = \"minusInfinity\";\n Arithmetic[Arithmetic[\"minusZero\"] = 2] = \"minusZero\";\n})(Arithmetic || (Arithmetic = {}));\nvar transformers = {\n Arithmetic: function (data) {\n if (data === Arithmetic.infinity)\n return Infinity;\n if (data === Arithmetic.minusInfinity)\n return -Infinity;\n if (data === Arithmetic.minusZero)\n return -0;\n return data;\n },\n HTMLElement: function (data) {\n var sandbox = document.implementation.createHTMLDocument(\"sandbox\");\n try {\n var element = sandbox.createElement(data.tagName);\n element.innerHTML = data.innerHTML;\n for (var _i = 0, _a = Object.keys(data.attributes); _i < _a.length; _i++) {\n var attribute = _a[_i];\n try {\n element.setAttribute(attribute, data.attributes[attribute]);\n }\n catch (_b) {\n //\n }\n }\n return element;\n }\n catch (e) {\n return data;\n }\n },\n Function: function (data) {\n var tempFun = function () { };\n Object.defineProperty(tempFun, \"toString\", {\n value: function () { return \"function \".concat(data.name, \"() {\").concat(data.body, \"}\"); },\n });\n return tempFun;\n },\n \"[[NaN]]\": function () {\n return NaN;\n },\n \"[[undefined]]\": function () {\n return void 0;\n },\n \"[[Date]]\": function (val) {\n var date = new Date();\n date.setTime(val);\n return date;\n },\n \"[[RegExp]]\": function (val) {\n return new RegExp(val.src, val.flags);\n },\n \"[[Error]]\": function (val) {\n var Ctor = GLOBAL[val.name] || Error;\n var err = new Ctor(val.message);\n err.stack = val.stack;\n return err;\n },\n \"[[ArrayBuffer]]\": function (val) {\n if (ARRAY_BUFFER_SUPPORTED) {\n var buffer = new ArrayBuffer(val.length);\n var view = new Int8Array(buffer);\n view.set(val);\n return buffer;\n }\n return val;\n },\n \"[[TypedArray]]\": function (val) {\n return typeof GLOBAL[val.ctorName] === \"function\"\n ? new GLOBAL[val.ctorName](val.arr)\n : val.arr;\n },\n \"[[Map]]\": function (val) {\n if (MAP_SUPPORTED) {\n // NOTE: new Map(iterable) is not supported by all browsers\n var map = new Map();\n for (var i = 0; i < val.length; i += 2)\n map.set(val[i], val[i + 1]);\n return map;\n }\n var kvArr = [];\n // @ts-ignore\n for (var j = 0; j < val.length; j += 2)\n kvArr.push([val[i], val[i + 1]]);\n return kvArr;\n },\n \"[[Set]]\": function (val) {\n if (SET_SUPPORTED) {\n // NOTE: new Set(iterable) is not supported by all browsers\n var set = new Set();\n for (var i = 0; i < val.length; i++)\n set.add(val[i]);\n return set;\n }\n return val;\n },\n};\n\n/* eslint-disable @typescript-eslint/array-type */\nvar formatSymbols = function (message) {\n var _a;\n if (typeof message === \"string\" ||\n typeof message === \"number\" ||\n message === null) {\n return message;\n }\n else if (Array.isArray(message)) {\n return message.map(formatSymbols);\n }\n else if (typeof message == \"object\" && TRANSFORMED_TYPE_KEY in message) {\n var type = message[TRANSFORMED_TYPE_KEY];\n var transform = transformers[type];\n return transform(message.data);\n }\n else if (typeof message == \"object\" &&\n TRANSFORMED_TYPE_KEY_ALTERNATE in message) {\n var type = message[TRANSFORMED_TYPE_KEY_ALTERNATE];\n var transform = transformers[type];\n return transform(message.data);\n }\n else if (typeof message == \"object\" &&\n ((_a = message.constructor) === null || _a === void 0 ? void 0 : _a.name) === \"NodeList\") {\n var NodeList_1 = {};\n Object.entries(message).forEach(function (_a) {\n var key = _a[0], value = _a[1];\n // @ts-ignore\n NodeList_1[key] = formatSymbols(value);\n });\n return NodeList_1;\n }\n return message;\n};\nvar arrayToString = function (output, references, level) {\n var mergeArray = output.reduce(function (acc, curr, index) {\n return \"\".concat(acc).concat(index ? \", \" : \"\").concat(fromConsoleToString(curr, references, level));\n }, \"\");\n return \"[\".concat(mergeArray, \"]\");\n};\nvar objectToString = function (output, references, level) {\n var constructorName = output.constructor.name !== \"Object\" ? \"\".concat(output.constructor.name, \" \") : \"\";\n if (level > MAX_NEST_LEVEL) {\n return constructorName;\n }\n var entries = Object.entries(output);\n var formattedObject = Object.entries(output).reduce(function (acc, _a, index) {\n var key = _a[0], value = _a[1];\n var comma = index === 0 ? \"\" : \", \";\n var breakLine = entries.length > 10 ? \"\\n \" : \"\";\n var formatted = fromConsoleToString(value, references, level);\n if (index === MAX_KEYS) {\n return acc + breakLine + \"...\";\n }\n else if (index > MAX_KEYS) {\n return acc;\n }\n return acc + \"\".concat(comma).concat(breakLine).concat(key, \": \") + formatted;\n }, \"\");\n return \"\".concat(constructorName, \"{ \").concat(formattedObject).concat(entries.length > 10 ? \"\\n\" : \" \", \"}\");\n};\nvar fromConsoleToString = function (message, references, level) {\n var _a;\n if (level === void 0) { level = 0; }\n try {\n var output_1 = formatSymbols(message);\n if (Array.isArray(output_1)) {\n return arrayToString(output_1, references, level + 1);\n }\n switch (typeof output_1) {\n case \"string\":\n return \"\\\"\".concat(output_1, \"\\\"\").slice(0, MAX_LENGTH_STRING);\n case \"number\":\n case \"function\":\n case \"symbol\":\n return output_1.toString();\n case \"boolean\":\n return String(output_1);\n case \"undefined\":\n return \"undefined\";\n case \"object\":\n default:\n if (output_1 instanceof RegExp ||\n output_1 instanceof Error ||\n output_1 instanceof Date) {\n return output_1.toString();\n }\n if (output_1 === null) {\n return String(null);\n }\n if (output_1 instanceof HTMLElement) {\n return output_1.outerHTML.slice(0, MAX_LENGTH_STRING);\n }\n if (Object.entries(output_1).length === 0) {\n return \"{}\";\n }\n if (CIRCULAR_REF_KEY in output_1) {\n if (level > MAX_NEST_LEVEL) {\n return \"Unable to print information\";\n }\n var newMessage = references[output_1[CIRCULAR_REF_KEY]];\n return fromConsoleToString(newMessage, references, level + 1);\n }\n if (((_a = output_1.constructor) === null || _a === void 0 ? void 0 : _a.name) === \"NodeList\") {\n var length_1 = output_1.length;\n var nodes = new Array(length_1).fill(null).map(function (_, index) {\n return fromConsoleToString(output_1[index], references);\n });\n return \"NodeList(\".concat(output_1.length, \")[\").concat(nodes, \"]\");\n }\n return objectToString(output_1, references, level + 1);\n }\n }\n catch (_b) {\n return \"Unable to print information\";\n }\n};\n\nvar getType = function (message) {\n switch (message) {\n case \"warn\":\n return \"warning\";\n case \"clear\":\n return \"clear\";\n case \"error\":\n return \"error\";\n case \"log\":\n case \"info\":\n default:\n return \"info\";\n }\n};\n\nvar _a;\nvar ConsoleList = function (_a) {\n var data = _a.data;\n var classNames = useClassNames();\n return (jsx(Fragment, { children: data.map(function (_a, logIndex, references) {\n var data = _a.data, id = _a.id, method = _a.method;\n if (!data)\n return null;\n if (Array.isArray(data)) {\n return (jsx(React.Fragment, { children: data.map(function (msg, msgIndex) {\n var fixReferences = references.slice(logIndex, references.length);\n return (jsx(\"div\", { className: classNames(\"console-item\", [\n consoleItemClassName({ variant: getType(method) }),\n ]), children: jsx(CodeMirror, { code: method === \"clear\"\n ? msg\n : fromConsoleToString(msg, fixReferences), fileType: \"js\", initMode: \"user-visible\", showReadOnly: false, readOnly: true, wrapContent: true }) }, \"\".concat(id, \"-\").concat(msgIndex)));\n }) }, id));\n }\n return null;\n }) }));\n};\nvar consoleItemClassName = css((_a = {\n width: \"100%\",\n padding: \"$space$3 $space$2\",\n fontSize: \".8em\",\n position: \"relative\",\n \"&:not(:first-child):after\": {\n content: \"\",\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n height: 1,\n background: \"$colors$surface3\",\n },\n /**\n * Editor reset\n */\n \".sp-cm\": {\n padding: 0,\n },\n \".cm-editor\": {\n background: \"none\",\n },\n \".cm-content\": {\n padding: 0,\n }\n },\n _a[\".\".concat(THEME_PREFIX, \"-pre-placeholder\")] = {\n margin: \"0 !important\",\n fontSize: \"1em\",\n },\n _a.variants = {\n variant: {\n error: {\n color: \"$colors$error\",\n background: \"$colors$errorSurface\",\n \"&:not(:first-child):after\": {\n background: \"$colors$error\",\n opacity: 0.07,\n },\n },\n warning: {\n color: \"$colors$warning\",\n background: \"$colors$warningSurface\",\n \"&:not(:first-child):after\": {\n background: \"$colors$warning\",\n opacity: 0.07,\n },\n },\n clear: {\n fontStyle: \"italic\",\n },\n info: {},\n },\n },\n _a));\n\nvar wrapperClassName = css({\n justifyContent: \"space-between\",\n borderBottom: \"1px solid $colors$surface2\",\n padding: \"0 $space$2\",\n fontFamily: \"$font$mono\",\n height: \"$layout$headerHeight\",\n minHeight: \"$layout$headerHeight\",\n overflowX: \"auto\",\n whiteSpace: \"nowrap\",\n});\nvar flexClassName = css({\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$space$2\",\n});\nvar Header = function (_a) {\n var currentTab = _a.currentTab, setCurrentTab = _a.setCurrentTab, node = _a.node;\n var classNames = useClassNames();\n var buttonsClassName = classNames(\"console-header-button\", [\n buttonClassName,\n roundedButtonClassName,\n css({ padding: \"$space$1 $space$3\" }),\n ]);\n return (jsxs(\"div\", { className: classNames(\"console-header\", [\n wrapperClassName,\n flexClassName,\n ]), children: [jsxs(\"p\", { className: classNames(\"console-header-title\", [\n css({\n lineHeight: 1,\n margin: 0,\n color: \"$colors$base\",\n fontSize: \"$font$size\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"$space$2\",\n }),\n ]), children: [jsx(ConsoleIcon, {}), jsx(\"span\", { children: \"Terminal\" })] }), node && (jsxs(\"div\", { className: classNames(\"console-header-actions\", [flexClassName]), children: [jsx(\"button\", { className: buttonsClassName, \"data-active\": currentTab === \"server\", onClick: function () { return setCurrentTab(\"server\"); }, type: \"button\", children: \"Server\" }), jsx(\"button\", { className: buttonsClassName, \"data-active\": currentTab === \"client\", onClick: function () { return setCurrentTab(\"client\"); }, type: \"button\", children: \"Client\" })] }))] }));\n};\n\n/**\n * It provides an interface to consume the logs from a sandpack client.\n *\n * @category Hooks\n */\nvar useSandpackConsole = function (_a) {\n var clientId = _a.clientId, _b = _a.maxMessageCount, maxMessageCount = _b === void 0 ? MAX_MESSAGE_COUNT : _b, _c = _a.showSyntaxError, showSyntaxError = _c === void 0 ? false : _c, _d = _a.resetOnPreviewRestart, resetOnPreviewRestart = _d === void 0 ? false : _d;\n var _e = React.useState([]), logs = _e[0], setLogs = _e[1];\n var listen = useSandpack().listen;\n React.useEffect(function () {\n var unsubscribe = listen(function (message) {\n if (resetOnPreviewRestart && message.type === \"start\") {\n setLogs([]);\n }\n else if (message.type === \"console\" && message.codesandbox) {\n var payloadLog = Array.isArray(message.log)\n ? message.log\n : [message.log];\n if (payloadLog.find(function (_a) {\n var method = _a.method;\n return method === \"clear\";\n })) {\n return setLogs([CLEAR_LOG]);\n }\n var logsMessages_1 = showSyntaxError\n ? payloadLog\n : payloadLog.filter(function (messageItem) {\n var _a, _b, _c;\n var messagesWithoutSyntaxErrors = (_c = (_b = (_a = messageItem === null || messageItem === void 0 ? void 0 : messageItem.data) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.call(_a, function (dataItem) {\n if (typeof dataItem !== \"string\")\n return true;\n var matches = SYNTAX_ERROR_PATTERN.filter(function (lookFor) {\n return dataItem.startsWith(lookFor);\n });\n return matches.length === 0;\n })) !== null && _c !== void 0 ? _c : [];\n return messagesWithoutSyntaxErrors.length > 0;\n });\n if (!logsMessages_1)\n return;\n setLogs(function (prev) {\n var messages = __spreadArray(__spreadArray([], prev, true), logsMessages_1, true).filter(function (value, index, self) {\n return index === self.findIndex(function (s) { return s.id === value.id; });\n });\n while (messages.length > maxMessageCount) {\n messages.shift();\n }\n return messages;\n });\n }\n }, clientId);\n return unsubscribe;\n }, [showSyntaxError, maxMessageCount, clientId, resetOnPreviewRestart]);\n return { logs: logs, reset: function () { return setLogs([]); } };\n};\n\n/**\n * `SandpackConsole` is a Sandpack devtool that allows printing\n * the console logs from a Sandpack client. It is designed to be\n * a light version of a browser console, which means that it's\n * limited to a set of common use cases you may encounter when coding.\n */\nvar SandpackConsole = React.forwardRef(function (_a, ref) {\n var _b;\n var _c = _a.showHeader, showHeader = _c === void 0 ? true : _c, _d = _a.showSyntaxError, showSyntaxError = _d === void 0 ? false : _d, maxMessageCount = _a.maxMessageCount, onLogsChange = _a.onLogsChange, className = _a.className; _a.showSetupProgress; var _f = _a.showResetConsoleButton, showResetConsoleButton = _f === void 0 ? true : _f, _g = _a.showRestartButton, showRestartButton = _g === void 0 ? true : _g, _h = _a.resetOnPreviewRestart, resetOnPreviewRestart = _h === void 0 ? false : _h, _j = _a.actionsChildren, actionsChildren = _j === void 0 ? jsx(Fragment, {}) : _j, _k = _a.standalone, standalone = _k === void 0 ? false : _k, props = __rest(_a, [\"showHeader\", \"showSyntaxError\", \"maxMessageCount\", \"onLogsChange\", \"className\", \"showSetupProgress\", \"showResetConsoleButton\", \"showRestartButton\", \"resetOnPreviewRestart\", \"actionsChildren\", \"standalone\"]);\n var environment = useSandpack().sandpack.environment;\n var _l = useSandpackClient(), iframe = _l.iframe, internalClientId = _l.clientId;\n var restart = useSandpackShell().restart;\n var _m = React.useState(environment === \"node\" ? \"server\" : \"client\"), currentTab = _m[0], setCurrentTab = _m[1];\n var clientId = standalone ? internalClientId : undefined;\n var _o = useSandpackConsole({\n maxMessageCount: maxMessageCount,\n showSyntaxError: showSyntaxError,\n resetOnPreviewRestart: resetOnPreviewRestart,\n clientId: clientId,\n }), consoleData = _o.logs, resetConsole = _o.reset;\n var _p = useSandpackShellStdout({\n maxMessageCount: maxMessageCount,\n resetOnPreviewRestart: resetOnPreviewRestart,\n clientId: clientId,\n }), stdoutData = _p.logs, resetStdout = _p.reset;\n var wrapperRef = React.useRef(null);\n React.useEffect(function () {\n onLogsChange === null || onLogsChange === void 0 ? void 0 : onLogsChange(consoleData);\n if (wrapperRef.current) {\n wrapperRef.current.scrollTop = wrapperRef.current.scrollHeight;\n }\n }, [onLogsChange, consoleData, stdoutData, currentTab]);\n var isServerTab = currentTab === \"server\";\n var isNodeEnvironment = environment === \"node\";\n React.useImperativeHandle(ref, function () { return ({\n reset: function () {\n resetConsole();\n resetStdout();\n },\n }); });\n var classNames = useClassNames();\n return (jsxs(SandpackStack, __assign({ className: classNames(\"console\", [\n css((_b = {\n height: \"100%\",\n background: \"$surface1\",\n iframe: { display: \"none\" }\n },\n _b[\".\".concat(THEME_PREFIX, \"-bridge-frame\")] = {\n display: \"block\",\n border: 0,\n position: \"absolute\",\n left: \"$space$2\",\n bottom: \"$space$2\",\n zIndex: \"$top\",\n height: 12,\n width: \"30%\",\n mixBlendMode: \"multiply\",\n pointerEvents: \"none\",\n },\n _b)),\n className,\n ]) }, props, { children: [showHeader && isNodeEnvironment && (jsx(Header, { currentTab: currentTab, node: isNodeEnvironment, setCurrentTab: setCurrentTab })), jsx(\"div\", { ref: wrapperRef, className: classNames(\"console-list\", [\n css({ overflow: \"auto\", scrollBehavior: \"smooth\" }),\n ]), children: isServerTab ? (jsx(StdoutList, { data: stdoutData })) : (jsx(ConsoleList, { data: consoleData })) }), jsxs(\"div\", { className: classNames(\"console-actions\", [\n css({\n position: \"absolute\",\n bottom: \"$space$2\",\n right: \"$space$2\",\n display: \"flex\",\n gap: \"$space$2\",\n }),\n ]), children: [actionsChildren, showRestartButton && isServerTab && (jsx(RoundedButton, { onClick: function () {\n restart();\n resetConsole();\n resetStdout();\n }, children: jsx(RestartIcon, {}) })), showResetConsoleButton && (jsx(RoundedButton, { onClick: function () {\n if (currentTab === \"client\") {\n resetConsole();\n }\n else {\n resetStdout();\n }\n }, children: jsx(CleanIcon, {}) }))] }), standalone && (jsxs(Fragment, { children: [jsx(DependenciesProgress, { clientId: clientId }), jsx(\"iframe\", { ref: iframe })] }))] })));\n});\n\nvar Sandpack = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j;\n var options = _a.options, template = _a.template, customSetup = _a.customSetup, files = _a.files, theme = _a.theme, props = __rest(_a, [\"options\", \"template\", \"customSetup\", \"files\", \"theme\"]);\n options !== null && options !== void 0 ? options : (options = {});\n (_b = options.resizablePanels) !== null && _b !== void 0 ? _b : (options.resizablePanels = true);\n (_c = options.editorWidthPercentage) !== null && _c !== void 0 ? _c : (options.editorWidthPercentage = 50);\n (_d = options.showConsole) !== null && _d !== void 0 ? _d : (options.showConsole = false);\n var rtlLayout = (_e = options === null || options === void 0 ? void 0 : options.rtl) !== null && _e !== void 0 ? _e : false;\n var codeEditorOptions = {\n showTabs: options.showTabs,\n showLineNumbers: options.showLineNumbers,\n showInlineErrors: options.showInlineErrors,\n wrapContent: options.wrapContent,\n closableTabs: options.closableTabs,\n initMode: options.initMode,\n extensions: (_f = options.codeEditor) === null || _f === void 0 ? void 0 : _f.extensions,\n extensionsKeymap: (_g = options.codeEditor) === null || _g === void 0 ? void 0 : _g.extensionsKeymap,\n readOnly: options.readOnly,\n showReadOnly: options.showReadOnly,\n additionalLanguages: (_h = options.codeEditor) === null || _h === void 0 ? void 0 : _h.additionalLanguages,\n };\n var providerOptions = {\n /**\n * TS-why: Type 'string | number | symbol' is not assignable to type 'string'\n */\n activeFile: options.activeFile,\n visibleFiles: options.visibleFiles,\n recompileMode: options.recompileMode,\n recompileDelay: options.recompileDelay,\n autorun: options.autorun,\n autoReload: options.autoReload,\n bundlerURL: options.bundlerURL,\n startRoute: options.startRoute,\n skipEval: options.skipEval,\n fileResolver: options.fileResolver,\n initMode: options.initMode,\n initModeObserverOptions: options.initModeObserverOptions,\n externalResources: options.externalResources,\n logLevel: options.logLevel,\n classes: options.classes,\n experimental_enableServiceWorker: options.experimental_enableServiceWorker,\n experimental_enableStableServiceWorkerId: options.experimental_enableStableServiceWorkerId,\n };\n /**\n * Console\n */\n var _k = React.useState(options.showConsole), consoleVisibility = _k[0], setConsoleVisibility = _k[1];\n var _l = React.useState(0), counter = _l[0], setCounter = _l[1];\n var hasRightColumn = options.showConsole || options.showConsoleButton;\n /* eslint-disable-next-line @typescript-eslint/no-non-null-assertion */\n var templateFiles = (_j = SANDBOX_TEMPLATES[template]) !== null && _j !== void 0 ? _j : {};\n var mode = ((options === null || options === void 0 ? void 0 : options.layout)\n ? options === null || options === void 0 ? void 0 : options.layout\n : \"mode\" in templateFiles\n ? templateFiles.mode\n : \"preview\");\n var actionsChildren = options.showConsoleButton ? (jsx(ConsoleCounterButton, { counter: counter, onClick: function () { return setConsoleVisibility(function (prev) { return !prev; }); } })) : undefined;\n /**\n * Resizable\n */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n var dragEventTargetRef = React.useRef(null);\n var _m = React.useState(options.editorWidthPercentage), horizontalSize = _m[0], setHorizontalSize = _m[1];\n var _o = React.useState(70), verticalSize = _o[0], setVerticalSize = _o[1];\n var RightColumn = hasRightColumn ? SandpackStack : React.Fragment;\n var rightColumnStyle = {\n flexGrow: 100 - horizontalSize,\n flexShrink: 100 - horizontalSize,\n flexBasis: 0,\n width: 100 - horizontalSize + \"%\",\n gap: consoleVisibility ? 1 : 0,\n height: options.editorHeight, // use the original editor height\n };\n var topRowStyle = hasRightColumn\n ? {\n flexGrow: verticalSize,\n flexShrink: verticalSize,\n flexBasis: 0,\n overflow: \"hidden\",\n }\n : rightColumnStyle;\n var onDragMove = function (event) {\n if (!dragEventTargetRef.current)\n return;\n var container = dragEventTargetRef.current.parentElement;\n if (!container)\n return;\n var direction = dragEventTargetRef.current.dataset.direction;\n var isHorizontal = direction === \"horizontal\";\n var _a = container.getBoundingClientRect(), left = _a.left, top = _a.top, height = _a.height, width = _a.width;\n var offset = isHorizontal\n ? ((event.clientX - left) / width) * 100\n : ((event.clientY - top) / height) * 100;\n var boundaries = Math.min(Math.max(offset, 25), 75);\n if (isHorizontal) {\n setHorizontalSize(rtlLayout ? 100 - boundaries : boundaries);\n }\n else {\n setVerticalSize(boundaries);\n }\n container.querySelectorAll(\".\".concat(THEME_PREFIX, \"-stack\")).forEach(function (item) {\n item.style.pointerEvents = \"none\";\n });\n };\n var stopDragging = function () {\n var _a;\n var container = (_a = dragEventTargetRef.current) === null || _a === void 0 ? void 0 : _a.parentElement;\n if (!container)\n return;\n container.querySelectorAll(\".\".concat(THEME_PREFIX, \"-stack\")).forEach(function (item) {\n item.style.pointerEvents = \"\";\n });\n dragEventTargetRef.current = null;\n };\n React.useEffect(function () {\n if (!(options === null || options === void 0 ? void 0 : options.resizablePanels))\n return;\n document.body.addEventListener(\"mousemove\", onDragMove);\n document.body.addEventListener(\"mouseup\", stopDragging);\n return function () {\n document.body.removeEventListener(\"mousemove\", onDragMove);\n document.body.removeEventListener(\"mouseup\", stopDragging);\n };\n }, [options]);\n React.useEffect(function () {\n var _a;\n setConsoleVisibility((_a = options === null || options === void 0 ? void 0 : options.showConsole) !== null && _a !== void 0 ? _a : false);\n }, [options.showConsole]);\n var rightColumnProps = hasRightColumn\n ? { className: THEME_PREFIX + \"-preset-column\", style: rightColumnStyle }\n : {};\n var classNames = useClassNames();\n return (jsx(SandpackProvider, __assign({ customSetup: customSetup, files: files, options: providerOptions, template: template, theme: theme }, props, { children: jsxs(SandpackLayout, { className: rtlLayout ? classNames(\"rtl-layout\", [rtlLayoutClassName]) : \"\", children: [jsx(SandpackCodeEditor, __assign({}, codeEditorOptions, { style: {\n height: options.editorHeight,\n flexGrow: horizontalSize,\n flexShrink: horizontalSize,\n flexBasis: 0,\n overflow: \"hidden\",\n } })), options.resizablePanels && (jsx(\"div\", { className: classNames(\"resize-handler\", [\n dragHandler({ direction: \"horizontal\" }),\n ]), \"data-direction\": \"horizontal\", onMouseDown: function (event) {\n dragEventTargetRef.current = event.target;\n }, style: {\n left: \"calc(\".concat(rtlLayout ? 100 - horizontalSize : horizontalSize, \"% - 5px)\"),\n } })), jsxs(RightColumn, __assign({}, rightColumnProps, { children: [mode === \"preview\" && (jsx(SandpackPreview, { actionsChildren: actionsChildren, showNavigator: options.showNavigator, showRefreshButton: options.showRefreshButton, style: topRowStyle })), mode === \"tests\" && (jsx(SandpackTests, { actionsChildren: actionsChildren, style: topRowStyle })), mode === \"console\" && (jsx(SandpackConsole, { actionsChildren: actionsChildren, style: topRowStyle, standalone: true })), (options.showConsoleButton || consoleVisibility) && (jsxs(Fragment, { children: [options.resizablePanels && consoleVisibility && (jsx(\"div\", { className: classNames(\"resize-handler\", [\n dragHandler({ direction: \"vertical\" }),\n ]), \"data-direction\": \"vertical\", onMouseDown: function (event) {\n dragEventTargetRef.current = event.target;\n }, style: { top: \"calc(\".concat(verticalSize, \"% - 5px)\") } })), jsx(\"div\", { className: classNames(\"console-wrapper\", [consoleWrapper]), style: {\n flexGrow: consoleVisibility ? 100 - verticalSize : 0,\n flexShrink: consoleVisibility ? 100 - verticalSize : 0,\n flexBasis: 0,\n }, children: jsx(SandpackConsole, { onLogsChange: function (logs) { return setCounter(logs.length); }, showHeader: false }) })] }))] }))] }) }), template));\n};\nvar dragHandler = css({\n position: \"absolute\",\n zIndex: \"$top\",\n variants: {\n direction: {\n vertical: {\n right: 0,\n left: 0,\n height: 10,\n cursor: \"ns-resize\",\n },\n horizontal: {\n top: 0,\n bottom: 0,\n width: 10,\n cursor: \"ew-resize\",\n },\n },\n },\n \"@media screen and (max-width: 768px)\": {\n display: \"none\",\n },\n});\nvar ConsoleCounterButton = function (_a) {\n var onClick = _a.onClick, counter = _a.counter;\n return (jsxs(RoundedButton, { className: buttonCounter.toString(), onClick: onClick, children: [jsx(ConsoleIcon, {}), counter > 0 && jsx(\"strong\", { children: counter })] }));\n};\nvar buttonCounter = css({\n position: \"relative\",\n strong: {\n background: \"$colors$clickable\",\n color: \"$colors$surface1\",\n minWidth: 12,\n height: 12,\n padding: \"0 2px\",\n borderRadius: 12,\n fontSize: 8,\n lineHeight: \"12px\",\n position: \"absolute\",\n top: 0,\n right: 0,\n fontWeight: \"normal\",\n },\n});\nvar consoleWrapper = css({\n width: \"100%\",\n overflow: \"hidden\",\n});\nvar rtlLayoutClassName = css({\n flexDirection: \"row-reverse\",\n \"@media screen and (max-width: 768px)\": {\n flexFlow: \"wrap-reverse !important\",\n flexDirection: \"initial\",\n },\n});\n\nexport { ANGULAR_TEMPLATE, ASTRO_TEMPLATE, BackwardIcon, CleanIcon, CloseIcon, CodeMirror as CodeEditor, ConsoleIcon, DependenciesProgress, DirectoryIconClosed, DirectoryIconOpen, ErrorOverlay, ExportIcon, FADE_ANIMATION_DURATION, FileIcon, FileTabs, ForwardIcon, LoadingOverlay, Navigator, OpenInCodeSandboxButton, REACT_TEMPLATE, REACT_TYPESCRIPT_TEMPLATE, RefreshIcon, RestartIcon, RoundedButton, RunButton$1 as RunButton, RunIcon, SANDBOX_TEMPLATES, SANDPACK_THEMES, SOLID_TEMPLATE, SVELTE_TEMPLATE, Sandpack, SandpackCodeEditor, SandpackCodeViewer, SandpackConsole, SandpackConsumer, SandpackFileExplorer, SandpackLayout, SandpackPreview, SandpackProvider, Sandpack$1 as SandpackReactContext, SandpackStack, SandpackTests, SandpackThemeConsumer, SandpackThemeContext, SandpackThemeProvider, SandpackTranspiledCode, SignInIcon, SignOutIcon, TEST_TYPESCRIPT_TEMPLATE, UnstyledOpenInCodeSandboxButton, VANILLA_TEMPLATE, VANILLA_TYPESCRIPT_TEMPLATE, VUE_TEMPLATE, defaultDark, defaultLight, getCssText as getSandpackCssText, layoutClassName, stackClassName, tabButton, useActiveCode, useClassNames, useErrorMessage, useLoadingOverlayState, useSandpack, useSandpackClient, useSandpackConsole, useSandpackNavigation, useSandpackPreviewProgress, useSandpackShell, useSandpackShellStdout, useSandpackTheme, useTranspiledCode };\n","function t(t){return t.split(\"-\")[0]}function e(t){return t.split(\"-\")[1]}function n(e){return[\"top\",\"bottom\"].includes(t(e))?\"x\":\"y\"}function r(t){return\"y\"===t?\"height\":\"width\"}function i(i,o,a){let{reference:l,floating:s}=i;const c=l.x+l.width/2-s.width/2,f=l.y+l.height/2-s.height/2,u=n(o),m=r(u),g=l[m]/2-s[m]/2,d=\"x\"===u;let p;switch(t(o)){case\"top\":p={x:c,y:l.y-s.height};break;case\"bottom\":p={x:c,y:l.y+l.height};break;case\"right\":p={x:l.x+l.width,y:f};break;case\"left\":p={x:l.x-s.width,y:f};break;default:p={x:l.x,y:l.y}}switch(e(o)){case\"start\":p[u]-=g*(a&&d?-1:1);break;case\"end\":p[u]+=g*(a&&d?-1:1)}return p}const o=async(t,e,n)=>{const{placement:r=\"bottom\",strategy:o=\"absolute\",middleware:a=[],platform:l}=n,s=await(null==l.isRTL?void 0:l.isRTL(e));let c=await l.getElementRects({reference:t,floating:e,strategy:o}),{x:f,y:u}=i(c,r,s),m=r,g={},d=0;for(let n=0;n({name:\"arrow\",options:t,async fn(i){const{element:o,padding:l=0}=null!=t?t:{},{x:s,y:c,placement:f,rects:m,platform:g}=i;if(null==o)return{};const d=a(l),p={x:s,y:c},h=n(f),y=e(f),x=r(h),w=await g.getDimensions(o),v=\"y\"===h?\"top\":\"left\",b=\"y\"===h?\"bottom\":\"right\",R=m.reference[x]+m.reference[h]-p[h]-m.floating[x],A=p[h]-m.reference[h],P=await(null==g.getOffsetParent?void 0:g.getOffsetParent(o));let T=P?\"y\"===h?P.clientHeight||0:P.clientWidth||0:0;0===T&&(T=m.floating[x]);const O=R/2-A/2,D=d[v],L=T-w[x]-d[b],k=T/2-w[x]/2+O,E=u(D,k,L),C=(\"start\"===y?d[v]:d[b])>0&&k!==E&&m.reference[x]<=m.floating[x];return{[h]:p[h]-(C?kg[t]))}function p(t,i,o){void 0===o&&(o=!1);const a=e(t),l=n(t),s=r(l);let c=\"x\"===l?a===(o?\"end\":\"start\")?\"right\":\"left\":\"start\"===a?\"bottom\":\"top\";return i.reference[s]>i.floating[s]&&(c=d(c)),{main:c,cross:d(c)}}const h={start:\"end\",end:\"start\"};function y(t){return t.replace(/start|end/g,(t=>h[t]))}const x=[\"top\",\"right\",\"bottom\",\"left\"],w=x.reduce(((t,e)=>t.concat(e,e+\"-start\",e+\"-end\")),[]);const v=function(n){return void 0===n&&(n={}),{name:\"autoPlacement\",options:n,async fn(r){var i,o,a,l,c;const{x:f,y:u,rects:m,middlewareData:g,placement:d,platform:h,elements:x}=r,{alignment:v=null,allowedPlacements:b=w,autoAlignment:R=!0,...A}=n,P=function(n,r,i){return(n?[...i.filter((t=>e(t)===n)),...i.filter((t=>e(t)!==n))]:i.filter((e=>t(e)===e))).filter((t=>!n||e(t)===n||!!r&&y(t)!==t))}(v,R,b),T=await s(r,A),O=null!=(i=null==(o=g.autoPlacement)?void 0:o.index)?i:0,D=P[O];if(null==D)return{};const{main:L,cross:k}=p(D,m,await(null==h.isRTL?void 0:h.isRTL(x.floating)));if(d!==D)return{x:f,y:u,reset:{placement:P[0]}};const E=[T[t(D)],T[L],T[k]],C=[...null!=(a=null==(l=g.autoPlacement)?void 0:l.overflows)?a:[],{placement:D,overflows:E}],H=P[O+1];if(H)return{data:{index:O+1,overflows:C},reset:{placement:H}};const B=C.slice().sort(((t,e)=>t.overflows[0]-e.overflows[0])),V=null==(c=B.find((t=>{let{overflows:e}=t;return e.every((t=>t<=0))})))?void 0:c.placement,F=null!=V?V:B[0].placement;return F!==d?{data:{index:O+1,overflows:C},reset:{placement:F}}:{}}}};const b=function(e){return void 0===e&&(e={}),{name:\"flip\",options:e,async fn(n){var r;const{placement:i,middlewareData:o,rects:a,initialPlacement:l,platform:c,elements:f}=n,{mainAxis:u=!0,crossAxis:m=!0,fallbackPlacements:g,fallbackStrategy:h=\"bestFit\",flipAlignment:x=!0,...w}=e,v=t(i),b=g||(v===l||!x?[d(l)]:function(t){const e=d(t);return[y(t),e,y(e)]}(l)),R=[l,...b],A=await s(n,w),P=[];let T=(null==(r=o.flip)?void 0:r.overflows)||[];if(u&&P.push(A[v]),m){const{main:t,cross:e}=p(i,a,await(null==c.isRTL?void 0:c.isRTL(f.floating)));P.push(A[t],A[e])}if(T=[...T,{placement:i,overflows:P}],!P.every((t=>t<=0))){var O,D;const t=(null!=(O=null==(D=o.flip)?void 0:D.index)?O:0)+1,e=R[t];if(e)return{data:{index:t,overflows:T},reset:{placement:e}};let n=\"bottom\";switch(h){case\"bestFit\":{var L;const t=null==(L=T.map((t=>[t,t.overflows.filter((t=>t>0)).reduce(((t,e)=>t+e),0)])).sort(((t,e)=>t[1]-e[1]))[0])?void 0:L[0].placement;t&&(n=t);break}case\"initialPlacement\":n=l}if(i!==n)return{reset:{placement:n}}}return{}}}};function R(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function A(t){return x.some((e=>t[e]>=0))}const P=function(t){let{strategy:e=\"referenceHidden\",...n}=void 0===t?{}:t;return{name:\"hide\",async fn(t){const{rects:r}=t;switch(e){case\"referenceHidden\":{const e=R(await s(t,{...n,elementContext:\"reference\"}),r.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:A(e)}}}case\"escaped\":{const e=R(await s(t,{...n,altBoundary:!0}),r.floating);return{data:{escapedOffsets:e,escaped:A(e)}}}default:return{}}}}};const T=function(r){return void 0===r&&(r=0),{name:\"offset\",options:r,async fn(i){const{x:o,y:a}=i,l=await async function(r,i){const{placement:o,platform:a,elements:l}=r,s=await(null==a.isRTL?void 0:a.isRTL(l.floating)),c=t(o),f=e(o),u=\"x\"===n(o),m=[\"left\",\"top\"].includes(c)?-1:1,g=s&&u?-1:1,d=\"function\"==typeof i?i(r):i;let{mainAxis:p,crossAxis:h,alignmentAxis:y}=\"number\"==typeof d?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return f&&\"number\"==typeof y&&(h=\"end\"===f?-1*y:y),u?{x:h*g,y:p*m}:{x:p*m,y:h*g}}(i,r);return{x:o+l.x,y:a+l.y,data:l}}}};function O(t){return\"x\"===t?\"y\":\"x\"}const D=function(e){return void 0===e&&(e={}),{name:\"shift\",options:e,async fn(r){const{x:i,y:o,placement:a}=r,{mainAxis:l=!0,crossAxis:c=!1,limiter:f={fn:t=>{let{x:e,y:n}=t;return{x:e,y:n}}},...m}=e,g={x:i,y:o},d=await s(r,m),p=n(t(a)),h=O(p);let y=g[p],x=g[h];if(l){const t=\"y\"===p?\"bottom\":\"right\";y=u(y+d[\"y\"===p?\"top\":\"left\"],y,y-d[t])}if(c){const t=\"y\"===h?\"bottom\":\"right\";x=u(x+d[\"y\"===h?\"top\":\"left\"],x,x-d[t])}const w=f.fn({...r,[p]:y,[h]:x});return{...w,data:{x:w.x-i,y:w.y-o}}}}},L=function(e){return void 0===e&&(e={}),{options:e,fn(r){const{x:i,y:o,placement:a,rects:l,middlewareData:s}=r,{offset:c=0,mainAxis:f=!0,crossAxis:u=!0}=e,m={x:i,y:o},g=n(a),d=O(g);let p=m[g],h=m[d];const y=\"function\"==typeof c?c({...l,placement:a}):c,x=\"number\"==typeof y?{mainAxis:y,crossAxis:0}:{mainAxis:0,crossAxis:0,...y};if(f){const t=\"y\"===g?\"height\":\"width\",e=l.reference[g]-l.floating[t]+x.mainAxis,n=l.reference[g]+l.reference[t]-x.mainAxis;pn&&(p=n)}if(u){var w,v,b,R;const e=\"y\"===g?\"width\":\"height\",n=[\"top\",\"left\"].includes(t(a)),r=l.reference[d]-l.floating[e]+(n&&null!=(w=null==(v=s.offset)?void 0:v[d])?w:0)+(n?0:x.crossAxis),i=l.reference[d]+l.reference[e]+(n?0:null!=(b=null==(R=s.offset)?void 0:R[d])?b:0)-(n?x.crossAxis:0);hi&&(h=i)}return{[g]:p,[d]:h}}}},k=function(n){return void 0===n&&(n={}),{name:\"size\",options:n,async fn(r){const{placement:i,rects:o,platform:a,elements:l}=r,{apply:c,...u}=n,m=await s(r,u),g=t(i),d=e(i);let p,h;\"top\"===g||\"bottom\"===g?(p=g,h=d===(await(null==a.isRTL?void 0:a.isRTL(l.floating))?\"start\":\"end\")?\"left\":\"right\"):(h=g,p=\"end\"===d?\"top\":\"bottom\");const y=f(m.left,0),x=f(m.right,0),w=f(m.top,0),v=f(m.bottom,0),b={availableHeight:o.floating.height-([\"left\",\"right\"].includes(i)?2*(0!==w||0!==v?w+v:f(m.top,m.bottom)):m[p]),availableWidth:o.floating.width-([\"top\",\"bottom\"].includes(i)?2*(0!==y||0!==x?y+x:f(m.left,m.right)):m[h])},R=await a.getDimensions(l.floating);null==c||c({...r,...b});const A=await a.getDimensions(l.floating);return R.width!==A.width||R.height!==A.height?{reset:{rects:!0}}:{}}}},E=function(e){return void 0===e&&(e={}),{name:\"inline\",options:e,async fn(r){var i;const{placement:o,elements:s,rects:u,platform:m,strategy:g}=r,{padding:d=2,x:p,y:h}=e,y=l(m.convertOffsetParentRelativeRectToViewportRelativeRect?await m.convertOffsetParentRelativeRectToViewportRelativeRect({rect:u.reference,offsetParent:await(null==m.getOffsetParent?void 0:m.getOffsetParent(s.floating)),strategy:g}):u.reference),x=null!=(i=await(null==m.getClientRects?void 0:m.getClientRects(s.reference)))?i:[],w=a(d);const v=await m.getElementRects({reference:{getBoundingClientRect:function(){var e;if(2===x.length&&x[0].left>x[1].right&&null!=p&&null!=h)return null!=(e=x.find((t=>p>t.left-w.left&&pt.top-w.top&&h=2){if(\"x\"===n(o)){const e=x[0],n=x[x.length-1],r=\"top\"===t(o),i=e.top,a=n.bottom,l=r?e.left:n.left,s=r?e.right:n.right;return{top:i,bottom:a,left:l,right:s,width:s-l,height:a-i,x:l,y:i}}const e=\"left\"===t(o),r=f(...x.map((t=>t.right))),i=c(...x.map((t=>t.left))),a=x.filter((t=>e?t.left===i:t.right===r)),l=a[0].top,s=a[a.length-1].bottom;return{top:l,bottom:s,left:i,right:r,width:r-i,height:s-l,x:i,y:l}}return y}},floating:s.floating,strategy:g});return u.reference.x!==v.reference.x||u.reference.y!==v.reference.y||u.reference.width!==v.reference.width||u.reference.height!==v.reference.height?{reset:{rects:v}}:{}}}};export{m as arrow,v as autoPlacement,o as computePosition,s as detectOverflow,b as flip,P as hide,E as inline,L as limitShift,T as offset,l as rectToClientRect,D as shift,k as size};\n","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain positioning strategy.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n continue;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n ...rects.floating,\n x,\n y\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$map$so;\n const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: 0,\n crossAxis: 0,\n alignmentAxis: null,\n ...rawValue\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n const {\n x,\n y\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: diffCoords\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const overflowAvailableHeight = height - overflow[heightSide];\n const overflowAvailableWidth = width - overflow[widthSide];\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if (isYAxis) {\n const maximumClippingWidth = width - overflow.left - overflow.right;\n availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;\n } else {\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\n","import{rectToClientRect as t,computePosition as e}from\"@floating-ui/core\";export{arrow,autoPlacement,detectOverflow,flip,hide,inline,limitShift,offset,shift,size}from\"@floating-ui/core\";function n(t){return t&&t.document&&t.location&&t.alert&&t.setInterval}function o(t){if(null==t)return window;if(!n(t)){const e=t.ownerDocument;return e&&e.defaultView||window}return t}function i(t){return o(t).getComputedStyle(t)}function r(t){return n(t)?\"\":t?(t.nodeName||\"\").toLowerCase():\"\"}function l(){const t=navigator.userAgentData;return null!=t&&t.brands?t.brands.map((t=>t.brand+\"/\"+t.version)).join(\" \"):navigator.userAgent}function c(t){return t instanceof o(t).HTMLElement}function f(t){return t instanceof o(t).Element}function s(t){if(\"undefined\"==typeof ShadowRoot)return!1;return t instanceof o(t).ShadowRoot||t instanceof ShadowRoot}function u(t){const{overflow:e,overflowX:n,overflowY:o}=i(t);return/auto|scroll|overlay|hidden/.test(e+o+n)}function d(t){return[\"table\",\"td\",\"th\"].includes(r(t))}function h(t){const e=/firefox/i.test(l()),n=i(t);return\"none\"!==n.transform||\"none\"!==n.perspective||\"paint\"===n.contain||[\"transform\",\"perspective\"].includes(n.willChange)||e&&\"filter\"===n.willChange||e&&!!n.filter&&\"none\"!==n.filter}function a(){return!/^((?!chrome|android).)*safari/i.test(l())}const g=Math.min,p=Math.max,m=Math.round;function w(t,e,n){var i,r,l,s;void 0===e&&(e=!1),void 0===n&&(n=!1);const u=t.getBoundingClientRect();let d=1,h=1;e&&c(t)&&(d=t.offsetWidth>0&&m(u.width)/t.offsetWidth||1,h=t.offsetHeight>0&&m(u.height)/t.offsetHeight||1);const g=f(t)?o(t):window,p=!a()&&n,w=(u.left+(p&&null!=(i=null==(r=g.visualViewport)?void 0:r.offsetLeft)?i:0))/d,v=(u.top+(p&&null!=(l=null==(s=g.visualViewport)?void 0:s.offsetTop)?l:0))/h,y=u.width/d,x=u.height/h;return{width:y,height:x,top:v,right:w+y,bottom:v+x,left:w,x:w,y:v}}function v(t){return(e=t,(e instanceof o(e).Node?t.ownerDocument:t.document)||window.document).documentElement;var e}function y(t){return f(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function x(t){return w(v(t)).left+y(t).scrollLeft}function b(t,e,n){const o=c(e),i=v(e),l=w(t,o&&function(t){const e=w(t);return m(e.width)!==t.offsetWidth||m(e.height)!==t.offsetHeight}(e),\"fixed\"===n);let f={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(o||!o&&\"fixed\"!==n)if((\"body\"!==r(e)||u(i))&&(f=y(e)),c(e)){const t=w(e,!0);s.x=t.x+e.clientLeft,s.y=t.y+e.clientTop}else i&&(s.x=x(i));return{x:l.left+f.scrollLeft-s.x,y:l.top+f.scrollTop-s.y,width:l.width,height:l.height}}function L(t){return\"html\"===r(t)?t:t.assignedSlot||t.parentNode||(s(t)?t.host:null)||v(t)}function R(t){return c(t)&&\"fixed\"!==getComputedStyle(t).position?t.offsetParent:null}function T(t){const e=o(t);let n=R(t);for(;n&&d(n)&&\"static\"===getComputedStyle(n).position;)n=R(n);return n&&(\"html\"===r(n)||\"body\"===r(n)&&\"static\"===getComputedStyle(n).position&&!h(n))?e:n||function(t){let e=L(t);for(s(e)&&(e=e.host);c(e)&&![\"html\",\"body\"].includes(r(e));){if(h(e))return e;e=e.parentNode}return null}(t)||e}function W(t){if(c(t))return{width:t.offsetWidth,height:t.offsetHeight};const e=w(t);return{width:e.width,height:e.height}}function E(t){const e=L(t);return[\"html\",\"body\",\"#document\"].includes(r(e))?t.ownerDocument.body:c(e)&&u(e)?e:E(e)}function H(t,e){var n;void 0===e&&(e=[]);const i=E(t),r=i===(null==(n=t.ownerDocument)?void 0:n.body),l=o(i),c=r?[l].concat(l.visualViewport||[],u(i)?i:[]):i,f=e.concat(c);return r?f:f.concat(H(c))}function C(e,n,r){return\"viewport\"===n?t(function(t,e){const n=o(t),i=v(t),r=n.visualViewport;let l=i.clientWidth,c=i.clientHeight,f=0,s=0;if(r){l=r.width,c=r.height;const t=a();(t||!t&&\"fixed\"===e)&&(f=r.offsetLeft,s=r.offsetTop)}return{width:l,height:c,x:f,y:s}}(e,r)):f(n)?function(t,e){const n=w(t,!1,\"fixed\"===e),o=n.top+t.clientTop,i=n.left+t.clientLeft;return{top:o,left:i,x:i,y:o,right:i+t.clientWidth,bottom:o+t.clientHeight,width:t.clientWidth,height:t.clientHeight}}(n,r):t(function(t){var e;const n=v(t),o=y(t),r=null==(e=t.ownerDocument)?void 0:e.body,l=p(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),c=p(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0);let f=-o.scrollLeft+x(t);const s=-o.scrollTop;return\"rtl\"===i(r||n).direction&&(f+=p(n.clientWidth,r?r.clientWidth:0)-l),{width:l,height:c,x:f,y:s}}(v(e)))}function S(t){const e=H(t),n=[\"absolute\",\"fixed\"].includes(i(t).position)&&c(t)?T(t):t;return f(n)?e.filter((t=>f(t)&&function(t,e){const n=null==e.getRootNode?void 0:e.getRootNode();if(t.contains(e))return!0;if(n&&s(n)){let n=e;do{if(n&&t===n)return!0;n=n.parentNode||n.host}while(n)}return!1}(t,n)&&\"body\"!==r(t))):[]}const D={getClippingRect:function(t){let{element:e,boundary:n,rootBoundary:o,strategy:i}=t;const r=[...\"clippingAncestors\"===n?S(e):[].concat(n),o],l=r[0],c=r.reduce(((t,n)=>{const o=C(e,n,i);return t.top=p(o.top,t.top),t.right=g(o.right,t.right),t.bottom=g(o.bottom,t.bottom),t.left=p(o.left,t.left),t}),C(e,l,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{rect:e,offsetParent:n,strategy:o}=t;const i=c(n),l=v(n);if(n===l)return e;let f={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if((i||!i&&\"fixed\"!==o)&&((\"body\"!==r(n)||u(l))&&(f=y(n)),c(n))){const t=w(n,!0);s.x=t.x+n.clientLeft,s.y=t.y+n.clientTop}return{...e,x:e.x-f.scrollLeft+s.x,y:e.y-f.scrollTop+s.y}},isElement:f,getDimensions:W,getOffsetParent:T,getDocumentElement:v,getElementRects:t=>{let{reference:e,floating:n,strategy:o}=t;return{reference:b(e,T(n),o),floating:{...W(n),x:0,y:0}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>\"rtl\"===i(t).direction};function N(t,e,n,o){void 0===o&&(o={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:l=!0,animationFrame:c=!1}=o,s=i&&!c,u=r&&!c,d=s||u?[...f(t)?H(t):[],...H(e)]:[];d.forEach((t=>{s&&t.addEventListener(\"scroll\",n,{passive:!0}),u&&t.addEventListener(\"resize\",n)}));let h,a=null;if(l){let o=!0;a=new ResizeObserver((()=>{o||n(),o=!1})),f(t)&&!c&&a.observe(t),a.observe(e)}let g=c?w(t):null;return c&&function e(){const o=w(t);!g||o.x===g.x&&o.y===g.y&&o.width===g.width&&o.height===g.height||n();g=o,h=requestAnimationFrame(e)}(),n(),()=>{var t;d.forEach((t=>{s&&t.removeEventListener(\"scroll\",n),u&&t.removeEventListener(\"resize\",n)})),null==(t=a)||t.disconnect(),a=null,c&&cancelAnimationFrame(h)}}const z=(t,n,o)=>e(t,n,{platform:D,...o});export{N as autoUpdate,z as computePosition,H as getOverflowAncestors};\n","/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n return {\n ...rect,\n top: rect.y,\n left: rect.x,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","function getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n // Browsers without `ShadowRoot` support.\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isContainingBlock(element) {\n const webkit = isWebKit();\n const css = getComputedStyle(element);\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else {\n currentNode = getParentNode(currentNode);\n }\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.pageXOffset,\n scrollTop: element.pageYOffset\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isWebKit };\n","import { rectToClientRect, autoPlacement as autoPlacement$1, shift as shift$1, flip as flip$1, size as size$1, hide as hide$1, arrow as arrow$1, inline as inline$1, limitShift as limitShift$1, computePosition as computePosition$1 } from '@floating-ui/core';\nexport { detectOverflow, offset } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle, isHTMLElement, isElement, getWindow, isWebKit, getDocumentElement, getNodeName, isOverflowElement, getNodeScroll, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentWin = win;\n let currentIFrame = currentWin.frameElement;\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentWin = getWindow(currentIFrame);\n currentIFrame = currentWin.frameElement;\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\nconst topLayerSelectors = [':popover-open', ':modal'];\nfunction isTopLayer(floating) {\n return topLayerSelectors.some(selector => {\n try {\n return floating.matches(selector);\n } catch (e) {\n return false;\n }\n });\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = getDocumentElement(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\nfunction getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n ...clippingAncestor,\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n const x = rect.left + scroll.scrollLeft - offsets.x;\n const y = rect.top + scroll.scrollTop - offsets.y;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n return element.offsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const window = getWindow(element);\n if (!isHTMLElement(element) || isTopLayer(element)) {\n return window;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {\n return window;\n }\n return offsetParent || getContainingBlock(element) || window;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n ...(await getDimensionsFn(data.floating))\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const {\n left,\n top,\n width,\n height\n } = element.getBoundingClientRect();\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 100);\n } else {\n refresh(false, ratio);\n }\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle

Packages

createELementuseStaterendercreateReactivebabel pluginwebpack pluginvite plugin
cloneElementuseCallbackhydratereactiverefresh runtimenext.js plugin
isValidElementuseMemorenderToStringrefwebpack loader
ChildrenuseReducerfindDOMNodecomputed
forwardRefuseRefcreatePortalwatch
lazyuseEffectunmountComponentAtNodeonBeforeMount
createContextuseLayoutEffectrenderToNodeStreamonBeforeUnmount
createRefuseImperativeHandlecreateRootonBeforeUpdate
memouseContexthydrateRootonMounted
ComponentuseDebugValuerenderToStaticMarkuponUnmounted
PureComponentuseSignalrenderToStaticNodeStreamonUpdated
StrictModeuseDeferredValuerenderToPipeableStream
FragmentuseIdrenderToReadableStream
SuspenseuseInsertionEffect
createFactoryuseSyncExternalStore
startTransitionuseTransition
\ No newline at end of file + }

Packages

createELementuseStaterendercreateReactivebabel pluginwebpack pluginvite plugin
cloneElementuseCallbackhydratereactiverefresh runtimenext.js plugin
isValidElementuseMemorenderToStringrefwebpack loader
ChildrenuseReducerfindDOMNodecomputed
forwardRefuseRefcreatePortalwatch
lazyuseEffectunmountComponentAtNodeonBeforeMount
createContextuseLayoutEffectrenderToNodeStreamonBeforeUnmount
createRefuseImperativeHandlecreateRootonBeforeUpdate
memouseContexthydrateRootonMounted
ComponentuseDebugValuerenderToStaticMarkuponUnmounted
PureComponentuseSignalrenderToStaticNodeStreamonUpdated
StrictModeuseDeferredValuerenderToPipeableStream
FragmentuseIdrenderToReadableStream
SuspenseuseInsertionEffect
createFactoryuseSyncExternalStore
startTransitionuseTransition
\ No newline at end of file diff --git a/pages/404.html b/pages/404.html index fe650f91..afdc80d5 100644 --- a/pages/404.html +++ b/pages/404.html @@ -1,4 +1,4 @@ -
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
\ No newline at end of file diff --git a/pages/About.html b/pages/About.html index b2e52fec..4cda0406 100644 --- a/pages/About.html +++ b/pages/About.html @@ -1,4 +1,4 @@ -
@my-react/react
@my-react/react-dom
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
@my-react/react
@my-react/react-dom
\ No newline at end of file diff --git a/pages/Blog.html b/pages/Blog.html index 4c449aca..47aaded2 100644 --- a/pages/Blog.html +++ b/pages/Blog.html @@ -1,4 +1,4 @@ -


\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}


\ No newline at end of file diff --git a/pages/Tldraw.html b/pages/Tldraw.html index afc3ebd1..0aa74424 100644 --- a/pages/Tldraw.html +++ b/pages/Tldraw.html @@ -1,4 +1,4 @@ -
Loading ...
\ No newline at end of file + ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}
Loading ...
\ No newline at end of file diff --git a/pages/index.html b/pages/index.html index c5971172..00d61181 100644 --- a/pages/index.html +++ b/pages/index.html @@ -1,4 +1,4 @@ -

Packages

createELementuseStaterendercreateReactivebabel pluginwebpack pluginvite plugin
cloneElementuseCallbackhydratereactiverefresh runtimenext.js plugin
isValidElementuseMemorenderToStringrefwebpack loader
ChildrenuseReducerfindDOMNodecomputed
forwardRefuseRefcreatePortalwatch
lazyuseEffectunmountComponentAtNodeonBeforeMount
createContextuseLayoutEffectrenderToNodeStreamonBeforeUnmount
createRefuseImperativeHandlecreateRootonBeforeUpdate
memouseContexthydrateRootonMounted
ComponentuseDebugValuerenderToStaticMarkuponUnmounted
PureComponentuseSignalrenderToStaticNodeStreamonUpdated
StrictModeuseDeferredValuerenderToPipeableStream
FragmentuseIdrenderToReadableStream
SuspenseuseInsertionEffect
createFactoryuseSyncExternalStore
startTransitionuseTransition
\ No newline at end of file + }

Packages

createELementuseStaterendercreateReactivebabel pluginwebpack pluginvite plugin
cloneElementuseCallbackhydratereactiverefresh runtimenext.js plugin
isValidElementuseMemorenderToStringrefwebpack loader
ChildrenuseReducerfindDOMNodecomputed
forwardRefuseRefcreatePortalwatch
lazyuseEffectunmountComponentAtNodeonBeforeMount
createContextuseLayoutEffectrenderToNodeStreamonBeforeUnmount
createRefuseImperativeHandlecreateRootonBeforeUpdate
memouseContexthydrateRootonMounted
ComponentuseDebugValuerenderToStaticMarkuponUnmounted
PureComponentuseSignalrenderToStaticNodeStreamonUpdated
StrictModeuseDeferredValuerenderToPipeableStream
FragmentuseIdrenderToReadableStream
SuspenseuseInsertionEffect
createFactoryuseSyncExternalStore
startTransitionuseTransition
\ No newline at end of file diff --git a/server/app.js b/server/app.js index c525c1ed..9ffcd16f 100644 --- a/server/app.js +++ b/server/app.js @@ -237,4 +237,4 @@ .hljs-tag { /* purposely ignored */ } - `);return(0,t.jsx)(R.Global,{styles:e})};P.displayName="GlobalStyle";const q={"/":"@my-react","/blog":"blog","/about":"config","/tldraw":"tldraw"},A=()=>{const e=(0,l.useLocation)(),a=(0,l.useNavigate)(),i=(0,n.useRef)(null),[o,r]=(0,n.useState)("up"),{formatMessage:p}=(0,S.useIntl)(),{scrollY:u}=(0,m.useScroll)();(0,n.useEffect)((()=>{const e=j()((()=>{const e=u.get();null!==i.current&&(e>i.current?r("down"):r("up")),i.current=e}),16);return u.onChange(e),()=>u.clearListeners()}),[u]);const d=(0,m.useTransform)(u,[0,.2,.4],[0,.4,1]),x=q[e.pathname.toLowerCase()]||"@my-react",{data:f,loading:h}=(0,y.useQuery)(w.GetStarCountDocument,{variables:{name:"MyReact",owner:"MrWangJustToDo"}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(c.Container,{maxWidth:C.d,paddingX:{base:"3",lg:"6"},className:"site-header",children:[(0,t.jsx)(P,{}),(0,t.jsxs)(c.Flex,{id:"desktop-header",paddingY:"2",justifyContent:"space-between",alignItems:"center",display:{base:"none",md:"flex"},children:[(0,t.jsx)(c.Text,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:p({id:x})}),(0,t.jsxs)(c.HStack,{gap:{base:"4px",lg:"8px"},children:[(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/":"/MyReact/"),children:"Home"}),(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/Blog":"/MyReact/Blog"),children:"Example"}),(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/Tldraw":"/MyReact/Tldraw"),children:"Tldraw"}),!1,(0,t.jsx)(O,{}),(0,t.jsxs)(c.Button,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,t.jsx)(c.Icon,{as:E.SiGithub}),h?null:(0,t.jsxs)(c.Tag,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,t.jsx)(c.TagLeftIcon,{as:k.FaStar,color:"orange.300"}),(0,t.jsx)(c.TagLabel,{children:f?.repository?.stargazerCount})]})]})]})]}),(0,t.jsxs)(c.Box,{id:"mobile-header",display:{base:"block",md:"none"},height:12,overflow:"hidden",children:[(0,t.jsxs)(c.Flex,{justifyContent:"space-between",alignItems:"center",height:"up"===o?"full":"0%",width:"full",transition:"height 0.3s",overflow:"hidden",children:[(0,t.jsx)(c.Text,{as:"h1",fontSize:{base:"xl",md:"2xl"},fontWeight:{base:"semibold",md:"bold"},noOfLines:1,children:p({id:x})}),(0,t.jsxs)(c.HStack,{gap:{base:"4px",lg:"8px"},children:[(0,t.jsx)(O,{}),(0,t.jsxs)(c.Button,{variant:"outline",size:"sm",as:"a",href:"https://github.com/MrWangJustToDo/MyReact",target:"_blank",children:[(0,t.jsx)(c.Icon,{as:E.SiGithub}),h?null:(0,t.jsxs)(c.Tag,{variant:"subtle",colorScheme:"orange",marginLeft:"3",children:[(0,t.jsx)(c.TagLeftIcon,{as:k.FaStar,color:"orange.300"}),(0,t.jsx)(c.TagLabel,{children:f?.repository?.stargazerCount})]})]})]})]}),(0,t.jsxs)(c.Flex,{justifyContent:"space-between",alignItems:"center",height:"full",width:"full",children:[(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/":"/MyReact/"),children:"Home"}),(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/Blog":"/MyReact/Blog"),children:"Example"}),(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>a(s.pr?"/Tldraw":"/MyReact/Tldraw"),children:"Tldraw"}),!1]})]})]}),(0,t.jsx)(m.motion.div,{style:{opacity:d,borderBottom:"1px solid rgba(100, 100, 100, .2)"}})]})},L=(0,n.memo)(A),F=require("react-remove-scroll"),z=()=>{const e=(0,o.Qc)();return(0,t.jsx)(F.RemoveScroll,{enabled:e>0,className:"placeholder",as:"span",children:(0,t.jsx)(t.Fragment,{})})},B=e=>{const{id:a,head:i,body:s,foot:r,height:p,className:l,closeComplete:u,closeHandler:d,applyOverlay:x,isFirst:f}=e,h=(0,n.useRef)(!1),v=(0,n.useRef)(null),b=(0,n.useRef)(null),g=(0,n.useRef)(!1),{height:y}=(0,o.lW)(),w=(0,m.useMotionValue)(0),_=(0,m.useTransform)(w,(e=>`translateX(2px) rotate(${e}deg)`)),j=(0,m.useTransform)(w,(e=>`translateX(-2px) rotate(${-1*e}deg)`)),k=(0,m.useMotionValue)(0),E=(0,n.useCallback)((e=>{e.target&&e.target.contains(b.current)?g.current=!0:g.current=!1}),[]),S=(0,n.useCallback)(((e,{delta:a})=>{if(!g.current)return;const i=k.getVelocity();i>0&&w.set(10),i<0&&w.set(-10),k.set(Math.max(k.get()+a.y,0))}),[]),C=(0,n.useCallback)(((e,{velocity:a})=>{if(a.y>500)d&&d();else{const e=v.current,a=e?.getBoundingClientRect()?.height;k.get()/a>.6?d&&d():(0,m.animate)(k,0,{type:"spring",stiffness:300,damping:30,mass:.2}),w.set(0)}}),[w]),T=(0,c.useCallbackRef)((()=>{h.current?h.current&&u&&(u(),x(a,!1)):h.current=!0}));return(0,o.Su)((()=>(x(a,!0),()=>{x(a,!1)}))),(0,t.jsx)(c.Portal,{children:(0,t.jsx)(c.Box,{position:"fixed",left:"0",right:"0",top:"0",bottom:"0",overflow:"hidden",zIndex:"overlay",id:a,children:(0,t.jsxs)(m.motion.div,{drag:"y",dragElastic:0,onDrag:S,dragMomentum:!1,onDragEnd:C,onDragStart:E,dragConstraints:{bottom:0,top:0},style:{height:"100%",width:"100%",position:"absolute"},children:[(0,t.jsx)(c.Box,{position:"absolute",width:"100%",height:"100%",left:"0",right:"0",onClick:d}),(0,t.jsxs)(m.motion.div,{ref:v,style:{y:k,bottom:"0",width:"100%",display:"flex",overflow:"hidden",height:`${p}%`,position:"absolute",flexDirection:"column",borderRadius:"8px 8px 0 0",filter:"drop-shadow(0 0 0.75rem rgba(100, 100, 100, 0.35))",border:"1px solid var(--chakra-colors-cardBorderColor)"},initial:{y},animate:{y:0,transition:{type:"tween"}},exit:{y,transition:{type:"tween"}},className:l,onAnimationComplete:T,children:[(0,t.jsxs)(c.Box,{ref:b,height:"25px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"mobileModalColor",children:[(0,t.jsx)(m.motion.span,{style:{width:"18px",height:"4px",borderRadius:"99px",transform:_,backgroundColor:"var(--chakra-colors-gray-300)"}}),(0,t.jsx)(c.Box,{width:"0.5"}),(0,t.jsx)(m.motion.span,{style:{width:"18px",height:"4px",borderRadius:"99px",transform:j,backgroundColor:"var(--chakra-colors-gray-300)"}})]}),(0,t.jsx)(c.Divider,{}),(0,t.jsx)(c.Box,{backgroundColor:"mobileModalColor",paddingX:"3.5",paddingY:"1.5",children:i}),(0,t.jsx)(c.Box,{flex:"1",enabled:!0,id:"modal-scroll-box",paddingX:"3.5",allowPinchZoom:!0,removeScrollBar:f,marginTop:"-1px",overflow:"auto",position:"relative",backgroundColor:"mobileModalColor",as:F.RemoveScroll,children:s}),(0,t.jsx)(c.Box,{backgroundColor:"mobileModalColor",padding:"3.5",paddingY:"1.5",children:r})]})]})})})},D=e=>{const{head:a,body:i,foot:n,showState:s,className:o,closeComplete:r,closeHandler:p}=e,l=(0,c.useBreakpointValue)({base:"full",lg:"3xl"});return(0,t.jsxs)(c.Modal,{size:l,isOpen:s,scrollBehavior:"inside",onClose:p,onCloseComplete:r,children:[(0,t.jsx)(c.ModalOverlay,{backdropFilter:"blur(4px)"}),(0,t.jsxs)(c.ModalContent,{className:o,children:[a&&(0,t.jsx)(c.ModalHeader,{children:a}),(0,t.jsx)(c.ModalCloseButton,{}),(0,t.jsx)(c.ModalBody,{id:"modal-scroll-box",paddingTop:"0",children:i}),n&&(0,t.jsx)(c.ModalFooter,{children:n})]})]})},N=()=>{const{desktop:e}=(0,o.TP)();return(0,t.jsx)(t.Fragment,{children:e.map((e=>(0,t.jsx)(D,{...e},e.key)))})},I=()=>{const{mobile:e}=(0,o.TP)();return(0,t.jsx)(t.Fragment,{children:(0,t.jsx)(m.AnimatePresence,{children:e.map((e=>e.showState?(0,t.jsx)(B,{...e},e.key):null))})})},M=({children:e})=>{const{overlays:a,open:i,close:s}=(0,o.pI)(),r=(0,c.useBreakpointValue)((0,n.useMemo)((()=>({base:{mobile:a,desktop:[]},md:{mobile:[],desktop:a}})),[a]));return(0,t.jsx)(o.RX.Provider,{value:r,children:(0,t.jsx)(o.Gi.Provider,{value:s,children:(0,t.jsxs)(o.yx.Provider,{value:i,children:[e,(0,t.jsxs)(c.Portal,{children:[(0,t.jsx)(I,{}),(0,t.jsx)(N,{})]})]})})})};var U;let H=(0,i(4094).xT)((({relativePathname:e})=>({props:{title:e}})))(U=class extends n.Component{constructor(e){super(e),this.state={isMounted:!1},console.warn("create",this)}componentDidMount(){console.warn("mounted",this),this.setState({isMounted:!0})}componentWillUnmount(){console.warn("unmount",this)}UNSAFE_componentWillMount(){console.warn("willMount",this)}render(){console.warn("render",this);const{title:e}=this.props,{isMounted:a}=this.state;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(p.Helmet,{title:(e?.slice(1)?.toLowerCase()||"@my-react")+" | @my-react"}),(0,t.jsx)(z,{}),(0,t.jsxs)(M,{children:[(0,t.jsx)(c.Box,{id:"page-header",position:"sticky",top:"0",backgroundColor:a?"bannerBackgroundColor":void 0,zIndex:"banner",children:(0,t.jsx)(L,{})}),(0,t.jsx)("div",{id:"page-content",children:(0,t.jsx)(l.Outlet,{})}),(0,t.jsx)("div",{id:"page-footer",children:(0,t.jsx)(g,{})})]})]})}})||U;const $={preLoad:()=>H,element:(0,n.createElement)(r(H))},G=[{path:"/About",componentPath:"About"},{path:"/Blog",componentPath:"Blog"},{path:"/Tldraw",componentPath:"Tldraw"},{path:"/",componentPath:"index"},{path:"/*",componentPath:"404"}].map((({path:e,componentPath:a})=>s.pr?{path:e,componentPath:a}:e.startsWith("/")?{path:`/MyReact/${e.slice(1)}`,componentPath:a}:{path:`/MyReact/${e}`,componentPath:a})).map((e=>({path:e.path,preLoad:()=>i(698)(`./${e.componentPath}`),component:(0,n.lazy)((()=>i(698)(`./${e.componentPath}`).then((a=>({default:r(a.default,e.path)})))))}))).map((({path:e,component:a,preLoad:i})=>({path:e,preLoad:i,element:(0,n.createElement)(a)})));$.children=G;const W=[$];"undefined"!=typeof window&&(window.__router__=W)},4094:(e,a,i)=>{"use strict";i.d(a,{ZT:()=>r,cb:()=>c,xT:()=>f,ws:()=>d,HG:()=>m});const n={},s={},o={};let t=0;const r=e=>{if(n[e]){const a=n[e].length;n[e]=n[e].map((e=>e&&clearTimeout(e))).slice(a),s[e]=s[e].map((e=>e&&e())).slice(a)}if(t>200){const a=Object.keys(o).sort(((e,a)=>o[e]>o[a]?1:-1));for(const i of a)i===e||s[i].length||(delete o[i],delete n[i],delete s[i],t--)}},c=(e,a,i)=>void 0===i?new Promise((a=>{setTimeout((()=>{a()}),e)})).then((()=>{if(a)return a()})):(i in o?o[i]++:(o[i]=1,n[i]=[],s[i]=[],t++),r(i),new Promise(((a,o)=>{s[i].push(o),n[i].push(setTimeout((()=>{a()}),e))})).then((()=>{if(a)return a()})).catch((()=>{}))),p=require("lodash/merge");var l=i.n(p),u=i(8687);function d(e,a,i,n){const s=(0,u.matchRoutes)(e,a)||[],o=a,t=[];return s.forEach((({route:e,params:a,pathname:s})=>{const r={params:a,pathname:s};t.push(x({route:e,store:n,match:r,query:i,relativePathname:o}))})),Promise.all(t).then((e=>e.length?e.filter(Boolean).reduce(((e,a)=>a?(e.props=l()(e.props,a.props),e.page=(e.page||[]).concat(a.page||[]),e.error=[e.error,a.error].filter(Boolean).join(" || "),e.redirect=a.redirect?a.redirect:e.redirect,e):e),{}):{redirect:{code:301,location:{pathName:"/404"}}}))}const m=e=>`__preload-[${e}]-props__`,x=async({route:e,store:a,match:i,query:n,relativePathname:s})=>{const o=await(async({route:e})=>{const a=[];if(e.getInitialState&&a.push(e.getInitialState),e.preLoad){const i=await e.preLoad();if(i.default){const e=i.default;e.getInitialState&&a.push(e.getInitialState)}if(i.getInitialState){const e=i;a.push(e.getInitialState)}}return a.length?async({store:e,pathName:i,params:n,relativePathname:s,query:o})=>{const t=m(i),r=(await Promise.all(a.map((a=>Promise.resolve().then((()=>a({store:e,pathName:i,params:n,relativePathname:s,query:o}))).catch((e=>(console.error(`[server] getInitialState error ${e.toString()}`),null))))))).filter(Boolean).reduce(((e,a)=>a?(e.error=[e.error,a.error].filter(Boolean).join(" || "),e.props=l()(e.props,a.props),e.redirect=a.redirect?a.redirect:e.redirect,e):e),{});return{...r,props:{[t]:r.props||{}}}}:null})({route:e});if(o){const t=await o({store:a,pathName:i.pathname,params:i.params,relativePathname:s,query:n});return e.path?{...t,page:[e.path]}:t}if(e.path)return{page:[e.path]}};function f(e){return function(a){a.getInitialState=e}}},123:(e,a,i)=>{"use strict";i.d(a,{g3:()=>F,An:()=>D,l9:()=>C,oK:()=>h,De:()=>r,PK:()=>o,y7:()=>c,Fk:()=>t,su:()=>p,mj:()=>l,mB:()=>f,pr:()=>u,p_:()=>x,w4:()=>R,GV:()=>T});const n=require("lodash/memoize");var s=i.n(n);const o=s()((()=>JSON.parse(process.env.MIDDLEWARE||"false"))),t=s()((()=>JSON.parse(process.env.SSR||"false"))),r=(s()((()=>JSON.parse(process.env.STREAM||"false"))),s()((()=>JSON.parse(process.env.ANIMATE_ROUTER||"false")))),c=s()((()=>!1)),p=s()((()=>JSON.parse(process.env.STATIC_GENERATE||"false")&&!0)),l=s()((()=>process.env.PUBLIC_PROD_API_HOST)),u=!1;var d=i(9368),m=i(1930);const x={en:"English",zh:"中文"},f=async(e,a)=>{await e((0,m.bN)({name:d.d.serverLang,lang:a}))},h="en";var v=i(2544),b=i(8646);const g=require("redux-saga");var y=i.n(g);const w=require("redux-thunk"),_=require("redux-saga/effects");var j=i(1945);function*k(){yield(0,_.all)([(0,_.takeLatest)(m.qG.GET_DATA_ACTION(d.d.serverLang),(({done:e,lang:a})=>function*({done:e,lang:a}){try{if(!(yield(0,_.select)((e=>e.server.serverLang.data)))[a]){yield(0,_.put)((0,m.$l)({name:d.d.serverLang}));const e=(0,j.createRequest)({baseURL:l()}),{data:{data:i}}=yield(0,_.call)((i=>e.get(i,{params:{lang:a}})),"/api/lang");yield(0,_.put)((0,m.E5)({name:d.d.serverLang,data:{[a]:i}}))}yield(0,_.put)((0,m.Go)({name:d.V.clientLang,data:a}))}catch(e){yield(0,_.put)((0,m.J3)({name:d.d.serverLang,error:e.toString()}))}finally{e()}}({done:e,lang:a})))])}const E={startSagas:(e,a)=>a.run(e),cancelSagas(e){e.dispatch({type:"@CANCEL_SAGAS_HMR"})}},S=b.compose,C=(e={})=>{const{preloadedState:a,middleware:i=[]}=e,n=y()(),s=[w.thunk,n,...i],o=(0,b.legacy_createStore)(m.d$,a,S((0,b.applyMiddleware)(...s)));return o.sagaTask=E.startSagas(k,n),o},T=v.useSelector;var O=i(4967);const R=(0,O.extendTheme)({styles:{global:{body:{fontFamily:"Product Sans, sans-serif"},"h1, h2, h3, h4, h5, th, td":{fontFamily:"Product Sans, sans-serif"},"kbd, samp, pre":{fontFamily:"Product Sans, sans-serif"}}},semanticTokens:{colors:{mobileCardBackgroundColor:{default:"white",_dark:"gray.700"},cardBackgroundColor:{default:"rgba(245, 245, 245, 0.7)",_dark:"rgba(45, 60, 80, 0.7)"},mobileModalColor:{default:"rgb(220, 220, 220)",_dark:"gray.700"},cardBorderColor:{default:"gray.300",_dark:"gray.600"},lightTextColor:{default:"gray.600",_dark:"gray.400"},siteBackgroundColor:{default:"rgba(250, 250, 250, 0.8)",_dark:"rgba(24, 24, 24, 0.2)"},bannerBackgroundColor:{default:"rgb(255, 255, 255)",_dark:"#1A202C"}}}});var P=i(4980);const q=({children:e,script:a=[],refresh:i=[]})=>(0,P.jsxs)("body",{children:[(0,P.jsx)(O.ColorModeScript,{type:"localStorage",initialColorMode:"dark"}),"string"==typeof e?(0,P.jsx)("div",{id:"__content__",dangerouslySetInnerHTML:{__html:e||""}}):(0,P.jsx)("div",{id:"__content__",children:e}),a.filter(Boolean).map((e=>e)),i.filter(Boolean).map((e=>e))]});var A=i(2800);const L=({env:e="{}",link:a=[],preLoad:i=[],preloadedState:n="{}",helmetContext:{helmet:s}={},emotionChunks:o})=>(0,P.jsxs)("head",{children:[(0,P.jsx)("meta",{charSet:"utf-8"}),(0,P.jsx)("meta",{name:"build-time",content:"Fri, 30 Aug 2024 08:32:17 GMT"}),(0,P.jsx)("meta",{name:"power-by",content:"@my-react ꒰ঌ( ⌯' '⌯)໒꒱"}),(0,P.jsx)("meta",{name:"version",content:A.version}),(0,P.jsx)("meta",{name:"author",content:"MrWangJustToDo"}),(0,P.jsx)("meta",{name:"description",content:"@my-react is a React like framework, it can be used to build a modern website just like this, feel free to use and fire a issue if you have! link: https://github.com/MrWangJustToDo/MyReact"}),(0,P.jsx)("meta",{name:"keywords",content:"react, react-dom, ssr, csr, ssg, @my-react, react like, react framework"}),(0,P.jsx)("base",{href:u?"/":"/MyReact/"}),(0,P.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"}),(0,P.jsx)("link",{rel:"shortcut icon",href:"./favicon.ico",type:"image/x-icon"}),(0,P.jsx)("link",{rel:"stylesheet",href:"https://fonts.cdnfonts.com/css/google-sans"}),(0,P.jsxs)(P.Fragment,{children:[s?.base.toComponent(),s?.title.toComponent(),s?.meta.toComponent(),s?.link.toComponent(),s?.noscript.toComponent(),s?.style.toComponent(),s?.script.toComponent()]}),i.filter(Boolean).map((e=>e)),a.filter(Boolean).map((e=>e)),o?.styles.map(((e,a)=>(0,P.jsx)("style",{"data-server":!0,"data-emotion":`${e.key} ${e.ids.join(" ")}`,dangerouslySetInnerHTML:{__html:e.css}},e.key+"_"+a))),(0,P.jsx)("script",{id:"__preload_env__",type:"application/json",dangerouslySetInnerHTML:{__html:`${e}`}}),(0,P.jsx)("script",{id:"__preload_state__",type:"application/json",dangerouslySetInnerHTML:{__html:`${n}`}})]}),F=e=>(0,P.jsxs)("html",{lang:e.lang||"",children:[(0,P.jsx)(L,{...e}),(0,P.jsx)(q,{...e})]}),z=require("@emotion/cache");var B=i.n(z);const D=()=>B()({key:"css"})},9368:(e,a,i)=>{"use strict";i.d(a,{V:()=>n,d:()=>s});let n=function(e){return e.clientLang="clientLang",e.clientProps="clientProps",e}({}),s=function(e){return e.serverLang="serverLang",e}({})},1930:(e,a,i)=>{"use strict";i.d(a,{bN:()=>h,J3:()=>g,$l:()=>v,E5:()=>b,d$:()=>j,qG:()=>f,Go:()=>p});var n=i(8646),s=i(9368);const o=require("immer"),t=e=>`@client_action_${e}_loading`,r=e=>`@client_action_${e}_success`,c=e=>`@client_action_${e}_fail`,p=({name:e,data:a})=>({type:r(e),data:a,loadingState:!1}),l={data:"",error:null,loaded:!1,loading:!1},u={[t(s.V.clientLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.data="",e.error=null,e.loading=a.loadingState||!0,e.loaded=!1})),[r(s.V.clientLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.data=a.data||"",e.error=null,e.loading=!1,e.loaded=!0})),[c(s.V.clientLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.data="",e.error=a.error,e.loading=!1,e.loaded=!0}))},d={data:{},error:null,loaded:!1,loading:!1},m={[t(s.V.clientProps)]:(e,a)=>(0,o.produce)(e,(e=>{e.error=null,e.loading=a.loadingState||!0,e.loaded=!1})),[r(s.V.clientProps)]:(e,a)=>(0,o.produce)(e,(e=>{e.data=a.data,e.error=null,e.loading=!1,e.loaded=!0})),[c(s.V.clientProps)]:(e,a)=>(0,o.produce)(e,(e=>{e.data={},e.error=a.error,e.loading=!1,e.loaded=!0}))},x=(0,n.combineReducers)({[s.V.clientLang]:(e=l,a)=>{const i=u[a.type];return i?i(e,a):e},[s.V.clientProps]:(e=d,a)=>{const i=m[a.type];return i?i(e,a):e}}),f={GET_DATA_ACTION:e=>`@server_action_${e}_startWithSaga`,GET_DATA_LOADING:e=>`@server_action_${e}_loading`,GET_DATA_SUCCESS:e=>`@server_action_${e}_success`,GET_DATA_FAIL:e=>`@server_action_${e}_fail`},h=({name:e,...a})=>i=>{let n=null;const s=new Promise((e=>{n=e}));return i({type:f.GET_DATA_ACTION(e),done:n,...a}),s},v=({name:e})=>({type:f.GET_DATA_LOADING(e),loadingState:!0}),b=({name:e,data:a})=>({type:f.GET_DATA_SUCCESS(e),data:a,loadingState:!1}),g=({name:e,error:a})=>({type:f.GET_DATA_FAIL(e),error:a,loadingState:!1}),y={data:{},error:null,loaded:!1,loading:!1},w={[f.GET_DATA_LOADING(s.d.serverLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.error=null,e.loading=a.loadingState||!0,e.loaded=!1})),[f.GET_DATA_SUCCESS(s.d.serverLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.data={...e.data,...a.data},e.error=null,e.loading=!1,e.loaded=!0})),[f.GET_DATA_FAIL(s.d.serverLang)]:(e,a)=>(0,o.produce)(e,(e=>{e.error=a.error,e.loading=!1,e.loaded=!0}))},_=(0,n.combineReducers)({[s.d.serverLang]:(e=y,a)=>{const i=w[a.type];return i?i(e,a):e}}),j=(0,n.combineReducers)({client:x,server:_})},698:(e,a,i)=>{var n={"./":[8059,918,68,907],"./404":[1305,505],"./404.tsx":[1305,505],"./About":[6778,918,68,54],"./About.tsx":[6778,918,68,54],"./Blog":[3069,918,719],"./Blog.tsx":[3069,918,719],"./Tldraw":[6931,101],"./Tldraw.tsx":[6931,101],"./index":[8059,918,68,907],"./index.tsx":[8059,918,68,907]};function s(e){if(!i.o(n,e))return Promise.resolve().then((()=>{var a=new Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}));var a=n[e],s=a[0];return Promise.all(a.slice(1).map(i.e)).then((()=>i(s)))}s.keys=()=>Object.keys(n),s.id=698,e.exports=s},143:e=>{"use strict";e.exports=require("@apollo/client")},4967:e=>{"use strict";e.exports=require("@chakra-ui/react")},8236:e=>{"use strict";e.exports=require("@codesandbox/sandpack-react")},6537:e=>{"use strict";e.exports=require("@emotion/react")},2800:e=>{"use strict";e.exports=require("@my-react/react")},4265:e=>{"use strict";e.exports=require("@my-react/react-dom")},880:e=>{"use strict";e.exports=require("@my-react/react-reactive")},4217:e=>{"use strict";e.exports=require("@site/graphql")},2585:e=>{"use strict";e.exports=require("@tldraw/tldraw")},6293:e=>{"use strict";e.exports=require("dayjs")},1687:e=>{"use strict";e.exports=require("dayjs/locale/zh-cn")},9704:e=>{"use strict";e.exports=require("dayjs/plugin/calendar")},1871:e=>{"use strict";e.exports=require("dayjs/plugin/relativeTime")},5322:e=>{"use strict";e.exports=require("framer-motion")},7253:e=>{"use strict";e.exports=require("highlight.js/lib/core")},5128:e=>{"use strict";e.exports=require("highlight.js/lib/languages/bash")},9473:e=>{"use strict";e.exports=require("highlight.js/lib/languages/css")},966:e=>{"use strict";e.exports=require("highlight.js/lib/languages/java")},9221:e=>{"use strict";e.exports=require("highlight.js/lib/languages/javascript")},7980:e=>{"use strict";e.exports=require("highlight.js/lib/languages/json")},6927:e=>{"use strict";e.exports=require("highlight.js/lib/languages/less")},2431:e=>{"use strict";e.exports=require("highlight.js/lib/languages/markdown")},650:e=>{"use strict";e.exports=require("highlight.js/lib/languages/scss")},4860:e=>{"use strict";e.exports=require("highlight.js/lib/languages/shell")},8618:e=>{"use strict";e.exports=require("highlight.js/lib/languages/sql")},5333:e=>{"use strict";e.exports=require("highlight.js/lib/languages/typescript")},1015:e=>{"use strict";e.exports=require("highlight.js/lib/languages/xml")},1429:e=>{"use strict";e.exports=require("lodash/debounce")},799:e=>{"use strict";e.exports=require("lodash/once")},6770:e=>{"use strict";e.exports=require("lodash/throttle")},8097:e=>{"use strict";e.exports=require("markdown-it")},2015:e=>{"use strict";e.exports=require("react")},4290:e=>{"use strict";e.exports=require("react-github-calendar")},3999:e=>{"use strict";e.exports=require("react-grid-layout")},1990:e=>{"use strict";e.exports=require("react-helmet-async")},6855:e=>{"use strict";e.exports=require("react-icons/ai")},6762:e=>{"use strict";e.exports=require("react-icons/hi")},5521:e=>{"use strict";e.exports=require("react-icons/si")},1183:e=>{"use strict";e.exports=require("react-icons/vsc")},2069:e=>{"use strict";e.exports=require("react-intl")},2544:e=>{"use strict";e.exports=require("react-redux")},8687:e=>{"use strict";e.exports=require("react-router")},4822:e=>{"use strict";e.exports=require("react-router-dom")},6952:e=>{"use strict";e.exports=require("reactivity-store")},8646:e=>{"use strict";e.exports=require("redux")},8598:e=>{"use strict";e.exports=require("use-pinch-ref")},2613:e=>{"use strict";e.exports=require("assert")},9896:e=>{"use strict";e.exports=require("fs")},8611:e=>{"use strict";e.exports=require("http")},5692:e=>{"use strict";e.exports=require("https")},857:e=>{"use strict";e.exports=require("os")},6928:e=>{"use strict";e.exports=require("path")},2203:e=>{"use strict";e.exports=require("stream")},2018:e=>{"use strict";e.exports=require("tty")},7016:e=>{"use strict";e.exports=require("url")},9023:e=>{"use strict";e.exports=require("util")},3106:e=>{"use strict";e.exports=require("zlib")},2087:e=>{"use strict";e.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')}},o={};function t(e){var a=o[e];if(void 0!==a)return a.exports;var i=o[e]={id:e,loaded:!1,exports:{}};return s[e].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}t.m=s,e=[],t.O=(a,i,n,s)=>{if(!i){var o=1/0;for(l=0;l=s)&&Object.keys(t.O).every((e=>t.O[e](i[c])))?i.splice(c--,1):(r=!1,s0&&e[l-1][2]>s;l--)e[l]=e[l-1];e[l]=[i,n,s]},t.F={},t.E=e=>{Object.keys(t.F).map((a=>{t.F[a](e)}))},t.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return t.d(a,{a}),a},i=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t.t=function(e,n){if(1&n&&(e=this(e)),8&n)return e;if("object"==typeof e&&e){if(4&n&&e.__esModule)return e;if(16&n&&"function"==typeof e.then)return e}var s=Object.create(null);t.r(s);var o={};a=a||[null,i({}),i([]),i(i)];for(var r=2&n&&e;"object"==typeof r&&!~a.indexOf(r);r=i(r))Object.getOwnPropertyNames(r).forEach((a=>o[a]=()=>e[a]));return o.default=()=>e,t.d(s,o),s},t.d=(e,a)=>{for(var i in a)t.o(a,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:a[i]})},t.f={},t.e=e=>Promise.all(Object.keys(t.f).reduce(((a,i)=>(t.f[i](e,a),a)),[])),t.u=e=>(({54:"page-About",101:"page-Tldraw",505:"page-404",719:"page-Blog",907:"page-"}[e]||e)+"-"+{54:"1d26f0d77059d92feec9",68:"adb790546bf86f48b45b",101:"3e1bcd587e139349e1fa",505:"52be3c8583a6f1e6edad",719:"3c6ac68349af65339ec5",907:"d48df21bf631723ce12e",918:"60118168d111a494582f"}[e]+".js"),t.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),n={792:1},t.O.require=e=>n[e],t.f.require=(e,a)=>{n[e]||(e=>{var a=e.modules,i=e.ids,s=e.runtime;for(var o in a)t.o(a,o)&&(t.m[o]=a[o]);s&&s(t);for(var r=0;r{[918,68,907,505,54,719,101].map(t.E)}),5);var r={};(()=>{"use strict";const e=require("dotenv");var a=t.n(e);const i=require("express");var n=t.n(i),s=t(123),o=t(9896),r=t.n(o);const c=require("fs/promises");var p=t.n(c),l=t(6928),u=t.n(l);class d extends Error{constructor(e,a){super(e),this.code=a}}const m=require("pino"),x=require("pino-pretty");var f=t.n(x);const h=(e,a)=>(0,m.pino)(f()())[a](`[server] ${e}`),v=((...e)=>function(a,i){let n=0,s=-1;return function o(t){if(t<=s)throw new d("compose index error, every middleware only allow call once",500);if(n++,n>e.length+5)throw new d("call middleWare many times, look like a infinite loop and will stop call next",500);s=t;const r=e[t]||i;if(!r)return h("all middleware done, do not call next","warn"),Promise.resolve();try{return Promise.resolve(r(a,(()=>o(t+1))))}catch(e){return h(`compose catch error: ${e.message}`,"error"),Promise.resolve()}}(0)})((async(e,a)=>{const{req:i,res:n,errorHandler:s}=e;try{await a()}catch(a){h(`url: ${i.originalUrl}, method: ${i.method} error, ${a.message}`,"error"),s&&"function"==typeof s?a instanceof d?await s({ctx:e,req:i,res:n,e:a,code:a.code}):a instanceof Error&&await s({ctx:e,req:i,res:n,e:a,code:404}):n.status(a instanceof d?a.code:500).json({data:a?.toString()})}}),(async e=>{const{requestHandler:a,req:i,res:n}=e;await a({req:i,res:n})})),b=function(e,a=v){return async(i,n,s)=>{const o={...e,req:i,res:n,next:s};try{await a(o,o.requestHandler)}catch(e){n.status(500).json({data:e?.toString()})}}},g={lang:b({requestHandler:async function({req:e,res:a}){const{lang:i}=e.query;if(!i)throw new Error("invalid request");const n=u().resolve(process.cwd(),"lang",`${i}.json`);var s;if(!await(s=n,new Promise((e=>{r().promises.access(s,r().constants.F_OK).then((()=>e(!0))).catch((()=>e(!1)))}))))throw new d("unsupported lang",404);{const e=await(0,c.readFile)(n,{encoding:"utf-8"});a.status(200).json({data:JSON.parse(e)})}}})},y=async(e,a,i)=>{const n=g[e.path.slice(1)];n?await n(e,a,i):a.status(404).json({data:"not found"})},w=(...e)=>a=>e.reduce(((e,a)=>i=>e(a(i))))(a),_=({isSSR:e,isSTATIC:a,isSTREAM:i,isPURE_CSR:n,isMIDDLEWARE:s,isDEVELOPMENT:o,isANIMATE_ROUTER:t,PUBLIC_API_HOST:r})=>c=>async p=>{p.env={isSSR:e||p.req.query.isSSR||!1,isSTREAM:i,isSTATIC:a,isPURE_CSR:n,isDEVELOPMENT:o,isMIDDLEWARE:s,isANIMATE_ROUTER:t,PUBLIC_API_HOST:r,FRAMEWORK:process.env.REACT},await c(p)},j=e=>async a=>{const{env:i}=a;if(!i)throw new d("env 没有初始化",5e3);const{req:n,res:o}=a,t=n.cookies?.site_lang,r=t||s.oK;o.cookie("site_lang",r),a.lang=r,i.LANG=r,await e(a)},k=e=>async a=>{const i=(0,s.l9)();a.store=i,await e(a)},E=t(3254).m;var S=t(4094),C=t(9368),T=t(1930);const O=e=>async a=>{const{req:i,res:n,lang:s,store:o}=a;if(!s||!o)throw new d(`server 初始化失败 lang: ${s}, store: ${o}`,500);const{error:t,redirect:r,page:c,props:p}=await(0,S.ws)(E,i.path,new URLSearchParams(i.url.split("?")[1]),o)||{};if(a.page=c,t)throw new d(t,403);if(r){const e=r.location.query?.toString()||"",a=e.length?r.location.pathName+"?"+e:r.location.pathName;n.writeHead(r.code||302,{location:a}),n.end()}else p&&o.dispatch((0,T.Go)({name:C.V.clientProps,data:p})),await e(a)},R=e=>async a=>{const{store:i,lang:n}=a;if(!i||!n)throw new d("store or lang 初始化失败",500);if(!s.p_[n])throw new d("不支持的语言",404);await(0,s.mB)(i.dispatch,n),await e(a)},P=require("lodash"),q=e=>u().resolve(process.cwd(),"","dist","",e),A=e=>u().resolve(q(e),"manifest-deps.json"),L=e=>u().resolve(q(e),"manifest-static.json"),F=(0,P.memoize)((async(e,a=(e=>e))=>{try{return a(await p().readFile(e,{encoding:"utf-8"}).then((e=>JSON.parse(e))))}catch(e){throw console.log(e),e}}),((e,a)=>`${e}/${(a||"empty")?.toString()}`)),z=(e,a)=>Object.keys(e).filter((a=>e[a].endsWith(".css"))).filter(a).map((a=>e[a])),B=(e,a,i=(()=>0))=>Object.keys(e).filter((a=>e[a].endsWith(".js"))).filter(a).sort(i).map((a=>e[a])),D=e=>async a=>{const{req:i}=a,n=(0,s.Fk)()||i.query.isSSR,o={stylesPath:[],scriptsPath:[],refreshPath:[],preloadScriptsPath:[]},t=await F(("client",u().resolve(q("client"),"manifest-prod.json")));const r=z(t,(e=>e.startsWith("main")||e.startsWith("vendor"))),c=B(t,(e=>e.startsWith("__refresh__"))).map((e=>({path:e,"data-refresh":"@my-react/react-refresh"}))),p=(e=>B(e,(e=>e.startsWith("runtime"))))(t),l=(e=>B(e,(e=>e.startsWith("main")||e.startsWith("vendor")),(e=>e.startsWith("main")?0:-1)))(t);o.stylesPath=r;const m=p.concat(l);if(o.preloadScriptsPath=m,o.scriptsPath=m,o.refreshPath=c,n){const{page:e}=a;if(!e)throw new d("render page 没有初始化",500);const i=await F(A("client"),(e=>Object.keys(e).map((a=>({[a]:e[a].path}))).reduce(((e,a)=>({...e,...a})),{}))),n=((e,a)=>Object.keys(e).filter((e=>a.some((a=>a===e||a===e.slice(1))))).map((a=>e[a])).reduce(((e,a)=>e.concat(a)),[]))(i,e),s=((e,a)=>z(e,(e=>a.includes(e))))(t,n),r=((e,a)=>B(e,(e=>a.includes(e))))(t,n);o.stylesPath=o.stylesPath.concat(s),o.scriptsPath=r.concat(o.scriptsPath),o.preloadScriptsPath=o.preloadScriptsPath.concat(r)}a.assets=o,await e(a)},N=require("@loadable/server"),I=require("react-dom/server");var M=t(2015);const U=e=>e.map(((e,a)=>"string"==typeof e?(0,M.createElement)("script",{key:a,src:e,defer:!0}):(0,M.createElement)("script",{key:a,...Object.keys(e).filter((e=>e.startsWith("data-"))).reduce(((a,i)=>(a[i]=e[i],a)),{}),src:e.path,...Object.keys(e).filter((e=>!e.startsWith("data-")&&"path"!==e)).reduce(((a,i)=>(a[i]=e[i],a)),{})}))),H=e=>e.map(((e,a)=>"string"==typeof e?(0,M.createElement)("link",{key:a,rel:"preload",as:"script",href:e}):e.path?(0,M.createElement)("link",{key:a,rel:"preload",as:"script",href:e.path}):null)),$=require("@site/webpack"),G=e=>u().resolve((e=>u().resolve(process.cwd(),"dist",e))(e),$.MANIFEST.manifest_loadable);var W=t(4980);const V=async({res:e,store:a,lang:i,env:n,assets:o})=>{if(!a||!i||!n)throw new d("server 初始化失败",500);const t=new N.ChunkExtractor({statsFile:G("client")}),r=t.getLinkElements(),c=t.getStyleElements(),p=t.getScriptElements(),l=U(o.refreshPath);e.send(""+(0,I.renderToString)((0,W.jsx)(s.g3,{lang:i,env:JSON.stringify(n),link:r.concat(c),preloadedState:JSON.stringify(a.getState()),script:p,refresh:l})))};var Y=t(4967),J=t(6537),K=t(1990),X=t(2544);const Q=require("react-router-dom/server");var Z=t(9382);const ee=require("react-dom"),ae="ITbAOd";let ie;const ne=(0,M.forwardRef)((function(e,a){return(0,Z.Su)((()=>{ie||(ie=document.createElement("div")),ie.id="__loading_bar__";const e=document.body.querySelector("#__content__");document.body.insertBefore(ie,e)})),(0,Z.aq)()?(0,ee.createPortal)((0,W.jsx)("div",{ref:a,className:ae,style:{height:"0px",transform:"scale(0, 1)"}}),ie):null})),se=(0,M.memo)(ne),oe=()=>{const e=(0,Z.M3)((e=>e.loading)),{ref:a}=(0,Z.zX)({loading:e});return(0,W.jsx)(se,{ref:a})};var te=t(5322),re=t(8687);const ce=(0,M.createContext)(null),pe=({children:e,routes:a,LoadingBar:i})=>{const{loaded:n}=(0,Z.JO)({routes:a,preLoad:S.ws});return n?(0,W.jsxs)(ce.Provider,{value:n,children:[(0,W.jsx)(i,{}),e]}):null},le=()=>{const e=(0,M.useContext)(ce),a=(0,re.useRoutes)(E,e?.location),i=(0,Z.aq)();return(0,W.jsx)(W.Fragment,{children:(0,s.De)()?(0,W.jsx)(te.AnimatePresence,{exitBeforeEnter:!0,children:(0,W.jsx)(M.Fragment,{children:(0,W.jsx)(te.motion.div,{initial:i?"initial":"in",animate:"in",exit:"out",style:{height:"fit-content"},variants:{initial:{opacity:.2,translateY:-100,transformOrigin:"center top",scale:.8,borderRadius:6,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.2), 1px -1px 2px 4px rgba(0, 0, 0, 0.2)"},in:{opacity:1,translateY:0,scale:1,transformOrigin:"center top",borderRadius:0,boxShadow:"0px 0px 0px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 0px rgba(0, 0, 0, 0.1)"},out:{opacity:0,translateY:200,scale:.8,transformOrigin:"center top",borderRadius:10,boxShadow:"1px 1px 2px 3px rgba(0, 0, 0, 0.1), 1px -1px 2px 4px rgba(0, 0, 0, 0.1)"}},transition:{type:"spring",damping:10,stiffness:50},"data-animate-route":!0,children:(0,W.jsx)(M.Suspense,{children:a})})},e?.location.pathname)}):(0,W.jsx)(M.Suspense,{children:a})})};var ue=t(143),de=t(4217);const me=({children:e})=>{const a=(0,s.GV)((e=>e.client.clientProps.data)),{pathname:i}=(0,re.useLocation)(),n=a[(0,S.HG)(i)],o=n?.$$__apollo__$$,t=(0,de.useApollo)(o,!0);return(0,W.jsx)(ue.ApolloProvider,{client:t,children:e})};class xe extends M.Component{constructor(...e){super(...e),this.state={stack:"",error:"",hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,a){this.setState({error:e.message,stack:a.componentStack})}render(){return this.state.hasError?(0,W.jsxs)("pre",{style:{fontFamily:"SFMono-Regular,Menlo,Monaco,Consolas,monospace"},children:[(0,W.jsx)("p",{style:{color:"red",whiteSpace:"pre-wrap"},children:this.state.error}),this.state.stack]}):this.props.children}}var fe=t(2069);const he=({children:e})=>{const a=(0,M.useRef)(null),i=(0,s.GV)((e=>e.server.serverLang.data)),n=(0,s.GV)((e=>e.client.clientLang.data));return(0,M.useEffect)((()=>{a.current||(a.current=document.querySelector("html")),a.current&&(a.current.lang=n)}),[n]),(0,W.jsx)(fe.IntlProvider,{locale:n,messages:i[n]||{},defaultLocale:s.oK,children:e})},ve=()=>(0,W.jsx)(me,{children:(0,W.jsx)(he,{children:(0,W.jsx)(pe,{routes:E,LoadingBar:oe,children:(0,W.jsx)(xe,{children:(0,W.jsx)(le,{})})})})}),be=({mode:e})=>async a=>"SSR"===e?await(async({req:e,res:a,store:i,lang:n,env:o,assets:t})=>{const r={},c=(0,s.An)(),p=((0,Y.cookieStorageManagerSSR)(e.headers.cookie||""),(0,W.jsx)(J.CacheProvider,{value:c,children:(0,W.jsx)(Y.ChakraProvider,{theme:s.w4,children:(0,W.jsx)(X.Provider,{store:i,children:(0,W.jsx)(Q.StaticRouter,{location:e.url,children:(0,W.jsx)(K.HelmetProvider,{context:r,children:(0,W.jsx)(ve,{})})})})})})),l=new N.ChunkExtractor({statsFile:G("client")}),u=l.collectChunks(p),d=(0,I.renderToString)(u),m=l.getLinkElements(),x=l.getStyleElements(),f=l.getScriptElements(),h=U(t.refreshPath);a.status(200).send(""+(0,I.renderToString)((0,W.jsx)(s.g3,{lang:n,env:JSON.stringify(o),script:f,helmetContext:r,link:m.concat(x),preloadedState:JSON.stringify(i.getState()),refresh:h,children:d})))})(a):"CSR"===e?await V(a):"P_CSR"===e?await(async({res:e,env:a,lang:i,assets:n})=>{if(!a||!i)throw new d("server 初始化失败",500);const o=new N.ChunkExtractor({statsFile:G("client")}),t=o.getLinkElements(),r=o.getStyleElements(),c=o.getScriptElements(),p=U(n.refreshPath);e.send(""+(0,I.renderToString)((0,W.jsx)(s.g3,{env:JSON.stringify(a),lang:i,link:t.concat(r),script:c,refresh:p})))})(a):"StreamSSR"===e?await(async({req:e,res:a,store:i,lang:n,env:o,assets:t={}})=>{const r={},c=(0,s.An)(),p=(0,Y.cookieStorageManagerSSR)(e.headers.cookie||""),{stylesPath:l=[],scriptsPath:u=[],preloadScriptsPath:d=[],refreshPath:m}=t,x=o.isSTATIC?"onAllReady":"onShellReady";let f=!1,v=!1;const b=(0,I.renderToPipeableStream)((0,W.jsx)(s.g3,{lang:n,env:JSON.stringify(o),helmetContext:r,preloadedState:JSON.stringify(i.getState()),link:(g=l,g.map(((e,a)=>"string"==typeof e?(0,M.createElement)("link",{key:a,href:e,rel:"stylesheet"}):e.path?(0,M.createElement)("link",{key:a,href:e.path,rel:"stylesheet",...Object.keys(e).filter((e=>"path"!==e)).reduce(((a,i)=>(a[i]=e[i],a)),{})}):null))),preLoad:H(d),refresh:U(m),children:(0,W.jsx)(J.CacheProvider,{value:c,children:(0,W.jsx)(Y.ChakraProvider,{resetCSS:!0,theme:s.w4,colorModeManager:p,children:(0,W.jsx)(X.Provider,{store:i,serverState:i.getState(),children:(0,W.jsx)(Q.StaticRouter,{location:e.url,children:(0,W.jsx)(K.HelmetProvider,{context:r,children:(0,W.jsx)(ve,{})})})})})})}),{bootstrapScripts:u.map((e=>"string"==typeof e?e:e.path?e.path:null)).filter(Boolean),[x](){f||(v=!0,a.statusCode=200,a.setHeader("Content-type","text/html"),b.pipe(a))},onShellError(s){f=!0,v||(v=!0,o.isSTATIC?a.status(500).send("server render error!"):V({req:e,res:a,store:i,lang:n,env:o,assets:t})),h(s.stack,"error")},onError(s){f=!0,v||(v=!0,o.isSTATIC?a.status(500).send("server render error!"):V({req:e,res:a,store:i,lang:n,env:o,assets:t})),h(s.stack,"error")}});var g})(a):void 0,ge=(w(_({isSSR:!0,isSTATIC:(0,s.su)(),isPURE_CSR:!1,isMIDDLEWARE:(0,s.PK)(),isDEVELOPMENT:!1,isANIMATE_ROUTER:(0,s.De)(),PUBLIC_API_HOST:process.env.PUBLIC_PROD_API_HOST}),j,k,O,R,D)((async e=>{const a=be({mode:"SSR"});await a(e)})),w(_({isSSR:!1,isSTATIC:!1,isPURE_CSR:!1,isDEVELOPMENT:!1,isMIDDLEWARE:(0,s.PK)(),isANIMATE_ROUTER:(0,s.De)(),PUBLIC_API_HOST:process.env.PUBLIC_PROD_API_HOST}),j,k,O,R,D)((async e=>{const a=be({mode:"CSR"});await a(e)}))),ye=(w(_({isSSR:!1,isSTATIC:!1,isPURE_CSR:!0,isMIDDLEWARE:(0,s.PK)(),isDEVELOPMENT:!1,isANIMATE_ROUTER:(0,s.De)(),PUBLIC_API_HOST:process.env.PUBLIC_PROD_API_HOST}),j,D)((async e=>{const a=be({mode:"P_CSR"});await a(e)})),w(_({isSSR:!0,isSTREAM:!0,isSTATIC:(0,s.su)(),isPURE_CSR:!1,isMIDDLEWARE:(0,s.PK)(),isDEVELOPMENT:!1,isANIMATE_ROUTER:(0,s.De)(),PUBLIC_API_HOST:process.env.PUBLIC_PROD_API_HOST}),j,k,O,R,D)((async e=>{const a=be({mode:"StreamSSR"});await a(e)}))),we=async({req:e,res:a})=>{const{isSSR:i}=e.query;i||(0,s.Fk)()?await ye({req:e,res:a}):await ge({req:e,res:a})};var _e=t(8611),je=t.n(_e);const ke=require("stream/promises"),Ee=e=>u().resolve(process.cwd(),"dist",e),Se=e=>{const a=e.p.slice(1),i="/"===a?"index.html":`${a.slice(1)}.html`;return{...e,fileName:i}},Ce=async(e,a)=>{if((await p().stat(e)).isDirectory()){const i=await p().readdir(e,{withFileTypes:!0});for(let n=0;np().mkdir(u().dirname(e),{recursive:!0}).catch(),Oe=(e,a)=>p().writeFile(e,a),Re=async(e,a)=>{await Te(a),await(0,ke.pipeline)((0,o.createReadStream)(e),(0,o.createWriteStream)(a))};let Pe=()=>b({requestHandler:we,errorHandler:({req:e,res:a,code:i,e:n})=>(({res:e,code:a,e:i})=>{let n=i.stack||i.message;return n=n.replace(/`/g,"\\`"),e.send(""+(0,I.renderToString)((0,W.jsx)(s.g3,{children:`

server render error!

\n
\n
\n error code:\n ${a}\n
\n
\n
${i.message}
\n
\n