@modern-js/devtools-client 2.35.1 → 2.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/.turbo/turbo-build.log +44 -46
  2. package/CHANGELOG.md +2 -0
  3. package/dist/html/main/index.html +3 -3
  4. package/dist/modern.config.json +10 -35
  5. package/dist/nestedRoutes.json +1 -1
  6. package/dist/routes-manifest.json +64 -73
  7. package/dist/static/js/182.82afa1da.js +1 -0
  8. package/dist/static/js/182.82afa1da.js.LICENSE.txt +24 -0
  9. package/dist/static/js/182.82afa1da.js.map +1 -0
  10. package/dist/static/js/async/overview/{page.1d1e2eae.js → page.520a58d3.js} +1 -1
  11. package/dist/static/js/async/overview/page.520a58d3.js.map +1 -0
  12. package/dist/static/js/async/pages/page.5bbff940.js +1 -0
  13. package/dist/static/js/async/pages/page.5bbff940.js.map +1 -0
  14. package/dist/static/js/{lib-polyfill.6e913595.js → lib-polyfill.e0b54064.js} +1 -1
  15. package/dist/static/js/{198.9a4a2f6b.js.LICENSE.txt → lib-polyfill.e0b54064.js.LICENSE.txt} +1 -26
  16. package/dist/static/js/lib-polyfill.e0b54064.js.map +1 -0
  17. package/dist/static/js/main.8dfd903e.js +1 -0
  18. package/dist/static/js/main.8dfd903e.js.map +1 -0
  19. package/modern.config.ts +6 -48
  20. package/package.json +12 -15
  21. package/src/routes/RootTabs.tsx +2 -11
  22. package/src/routes/overview/page.tsx +7 -1
  23. package/src/routes/pages/EntryRoute/ClientRouteStats/RemixRoute.tsx +4 -6
  24. package/src/routes/pages/EntryRoute/ClientRouteStats/RemixRouteStats.tsx +3 -2
  25. package/src/routes/pages/EntryRoute/EntryRoute.tsx +4 -2
  26. package/src/routes/pages/page.tsx +14 -6
  27. package/dist/static/js/198.9a4a2f6b.js +0 -1
  28. package/dist/static/js/198.9a4a2f6b.js.map +0 -1
  29. package/dist/static/js/async/overview/page.1d1e2eae.js.map +0 -1
  30. package/dist/static/js/async/pages/layout.27df0fc6.js +0 -1
  31. package/dist/static/js/async/pages/layout.27df0fc6.js.map +0 -1
  32. package/dist/static/js/async/pages/page.d8425bcf.js +0 -1
  33. package/dist/static/js/async/pages/page.d8425bcf.js.map +0 -1
  34. package/dist/static/js/lib-polyfill.6e913595.js.map +0 -1
  35. package/dist/static/js/main.7e1a3442.js +0 -1
  36. package/dist/static/js/main.7e1a3442.js.map +0 -1
  37. package/src/routes/pages/layout.tsx +0 -13
  38. /package/dist/static/css/{198.76c8c1d9.css → 182.76c8c1d9.css} +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_modern_js_devtools_client=self.webpackChunk_modern_js_devtools_client||[]).push([["main"],{67271:function(e,r,n){"use strict";n.r(r),n.d(r,{bootstrap:function(){return w},createApp:function(){return b}});var t,o=n("61078"),i=n("20891"),u=n("15169"),a=n("85056"),c=n("93160"),s=n("73706"),l=n("9880"),f=n("57814"),d=n.n(f),v=n("99428"),p=n.n(v),m=n("47328"),g=n("38338"),h=n("31971"),x=n("97511"),y=new WeakMap,_=function(e){return{loaderManager:(0,x.createLoaderManager)({}),runner:e,isBrowser:!0,routeManifest:"undefined"!=typeof window&&window[m.ROUTE_MANIFEST]}},b=function(e){var r=e.plugins,n=e.props,t=h.runtime.clone();return t.usePlugin.apply(t,(0,c._)(r)),function(e){var r=t.init(),o=function(n){var t,o=d.createElement(e||d.Fragment,e?(0,u._)({},n):null,e?n.children:d.cloneElement(n.children,(0,u._)({},null===(t=n.children)||void 0===t?void 0:t.props,n))),i=(0,f.useContext)(g.RuntimeReactContext);return r.provide({element:o,props:(0,u._)({},n),context:i},{onLast:function(e){return e.element}})};e&&p(o,e);var i=r.hoc({App:o},{onLast:function(e){var t=e.App;return p(function(e){var o=e.context,i=(0,a._)(e,["context"]),c=o;!(null==c?void 0:c.runner)&&(c=_(r),r.init({context:c},{onLast:function(e){var r,n=e.context;return null==t?void 0:null===(r=t.init)||void 0===r?void 0:r.call(t,n)}}));var s=(0,u._)({},i,n);return(0,l.jsx)(g.RuntimeReactContext.Provider,{value:c,children:(0,l.jsx)(t,(0,u._)({},s))})},t)}});return y.set(i,r),i}};var w=(t=(0,o._)(function(e,r,n,t){var o,a,c,l,f,v,p,m,g,h,w,R,E,j,k;return(0,s._)(this,function(s){switch(s.label){case 0:var C;if(o=e,!(a=y.get(o))&&(o=b({plugins:[]})(o),a=y.get(o)),c=_(a),l=function(e){return a.init({context:e},{onLast:function(e){var r,n=e.context;return null==o?void 0:null===(r=o.init)||void 0===r?void 0:r.call(o,n)}})},!r)return[2,d.createElement(o,{context:c})];if(!("undefined"!=typeof window&&"nodejs"!==window.name))return[3,4];if(!("string"==typeof(C=r)||"undefined"!=typeof HTMLElement&&(0,i._)(C,HTMLElement)))return[3,2];return g=Object.keys(m=(null==(p=window._SSR_DATA)?void 0:null===(f=p.data)||void 0===f?void 0:f.loadersData)||{}).reduce(function(e,r){var n=m[r];return!1!==n.loading?e:(e[r]=n,e)},{}),Object.assign(c,(0,u._)({loaderManager:(0,x.createLoaderManager)(g,{skipStatic:!0})},p?{ssrContext:null==p?void 0:p.context}:{})),c.initialData=null==p?void 0:null===(v=p.data)||void 0===v?void 0:v.initialData,[4,l(c)];case 1:if((h=s.sent())&&(c.initialData=h),w="string"!=typeof r?r:document.getElementById(r||"root"),!t)throw Error("The `bootstrap` need provide `ReactDOM` parameter");return R=function(e){if(n)n.render(e);else if(t.createRoot)t.createRoot(w).render(e);else throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method")},E=function(e,r){if(!t.hydrateRoot)throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method");t.hydrateRoot(w,e)},[2,a.client({App:o,context:c,ModernRender:R,ModernHydrate:E},{onLast:function(e){var r=e.App;R(d.createElement(r,{context:c}))}})];case 2:throw Error("`bootstrap` needs id in browser environment, it needs to be string or element");case 3:return[3,6];case 4:return Object.assign(c,{ssrContext:r,isBrowser:!1,loaderManager:(0,x.createLoaderManager)({},{skipNonStatic:r.staticGenerate,skipStatic:!r.staticGenerate})}),j=function(e){if("undefined"!=typeof Response&&(0,i._)(e,Response)&&e.status>=300&&e.status<=399){var r=e.status,n=e.headers.get("Location")||"/",t=c.ssrContext;return t&&(t.res.statusCode=r,t.res.setHeader("Location",n),t.redirection=t.redirection||{},t.redirection.status=r,t.redirection.url=n),!0}return!1},[4,l(c)];case 5:if(k=s.sent(),!j(k))return c.initialData=k,[2,a.server({App:o,context:c})];s.label=6;case 6:return[2]}})}),function(e,r,n,o){return t.apply(this,arguments)})},17500:function(e,r,n){"use strict";n.r(r),n.d(r,{RuntimeReactContext:function(){return o.RuntimeReactContext}});var t=n("67271");n.es(t,r);var o=n("38338"),i=n("89323");n.es(i,r)},97511:function(e,r,n){"use strict";n.r(r),n.d(r,{createLoaderManager:function(){return p}});var t,o,i=n("61078"),u=n("20891"),a=n("28003"),c=n("93160"),s=n("73706"),l=n("44463"),f=n.n(l),d=function(){var e=new Map;return function(r){var n=e.get(r);if(n)return n;var t=JSON.stringify(r);return f(t,"params should be not null value"),e.set(r,t),t}};(t=o||(o={}))[t.idle=0]="idle",t[t.loading=1]="loading",t[t.fulfilled=2]="fulfilled",t[t.rejected=3]="rejected";var v=function(e){var r,n,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{loading:!1,reloading:!1,data:void 0,error:void 0},a=arguments.length>2?arguments[2]:void 0,l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],f=o.idle,d=t.data,v=t.error,p=!1,m=new Set;var g=(r=(0,i._)(function(){return(0,s._)(this,function(e){return l||f===o.loading?[2,n]:(f=o.loading,x(),[2,n=a().then(function(e){d=e,v=null,f=o.fulfilled}).catch(function(e){v=e,d=null,f=o.rejected}).finally(function(){n=null,p=!0,x()})])})}),function(){return r.apply(this,arguments)}),h=function(){return{loading:!p&&f===o.loading,reloading:p&&f===o.loading,data:d,error:(0,u._)(v,Error)?"".concat(v.message):v,_error:v}},x=function(){(0,c._)(m).forEach(function(e){e(f,h())})};return{get result(){return h()},get promise(){return n},onChange:function(e){return m.add(e),function(){m.delete(e)}},load:g}},p=function(e){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=n.skipStatic,o=void 0!==t&&t,c=n.skipNonStatic,l=void 0!==c&&c,f=new Map,p=d();return{hasPendingLoaders:function(){var e=!0,r=!1,n=void 0;try{for(var t,o=f.values()[Symbol.iterator]();!(e=(t=o.next()).done);e=!0){var i=t.value.promise;if((0,u._)(i,Promise))return!0}}catch(e){r=!0,n=e}finally{try{!e&&null!=o.return&&o.return()}finally{if(r)throw n}}return!1},awaitPendingLoaders:(r=(0,i._)(function(){var e,r,n,t,o,i,c,l,d,v;return(0,s._)(this,function(s){switch(s.label){case 0:e=[],r=!0,n=!1,t=void 0;try{for(o=f[Symbol.iterator]();!(r=(i=o.next()).done);r=!0)l=(c=(0,a._)(i.value,2))[0],v=(d=c[1]).promise,(0,u._)(v,Promise)&&e.push([l,d])}catch(e){n=!0,t=e}finally{try{!r&&null!=o.return&&o.return()}finally{if(n)throw t}}return[4,Promise.all(e.map(function(e){return e[1].promise}))];case 1:return s.sent(),[2,e.reduce(function(e,r){var n=(0,a._)(r,2),t=n[0],o=n[1];return e[t]=o.result,e},{})]}})}),function(){return r.apply(this,arguments)}),add:function(r,n){var t=p(n.params),i=f.get(t),u=n._cache;if(!i||!1===u){var a=l&&!n.static,c=o&&n.static,s=a||c;i=v(t,void 0!==e[t]?e[t]:{data:n.initialData},r,s),f.set(t,i)}return t},get:function(e){return f.get(e)}}}},31971:function(e,r,n){"use strict";n.r(r),n.d(r,{runtime:function(){return l}});var t=n("89323"),o=(0,t.createPipeline)(),i=(0,t.createPipeline)(),u=(0,t.createAsyncPipeline)(),a=(0,t.createAsyncPipeline)(),c=(0,t.createAsyncPipeline)(),s={hoc:o,provide:i,client:u,server:a,init:c,pickContext:(0,t.createPipeline)()},l=(0,t.createManager)(s);l.createPlugin},71300:function(e,r,n){"use strict";n.r(r),n.d(r,{bootstrap:function(){return t.bootstrap},createApp:function(){return t.createApp}});var t=n("17500")},71593:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return t.default}});var t=n("94552");n.es(t,r)},75949:function(e,r,n){"use strict";n.r(r),n.d(r,{DefaultNotFound:function(){return o}});var t=n("9880"),o=function(){return(0,t.jsx)("div",{style:{margin:"150px auto",textAlign:"center",display:"flex",alignItems:"center",justifyContent:"center"},children:"404"})}},90208:function(e,r,n){"use strict";function t(){return null}n.r(r),n.d(r,{default:function(){return t}})},87872:function(e,r,n){"use strict";n.r(r),n.d(r,{modifyRoutes:function(){return t}});var t=(0,n("89323").createWaterfall)()},94552:function(e,r,n){"use strict";n.r(r),n.d(r,{Outlet:function(){return t.Outlet},default:function(){return o},matchRoutes:function(){return t.matchRoutes},redirect:function(){return t.redirect},useLocation:function(){return t.useLocation},useNavigate:function(){return t.useNavigate}});var t=n("95732"),o=n("96856").routerPlugin},96856:function(e,r,n){"use strict";n.r(r),n.d(r,{routerPlugin:function(){return h}});var t=n("15169"),o=n("43932"),i=n("93160"),u=n("9880"),a=n("57814"),c=n("95732"),s=n("99428"),l=n.n(s),f=n("15711"),d=n("17500"),v=n("87872"),p=n("40318"),m={routes:[]},g=!0,h=function(e){var r=e.serverBase,n=void 0===r?[]:r,s=e.supportHtml5History,g=void 0===s||s,h=e.basename,x=void 0===h?"":h,y=e.routesConfig,_=e.createRoutes,b=[];return m=y,window._SERVER_DATA=(0,f.parsedJSONFromElement)("__MODERN_SERVER_DATA__"),{name:"@modern-js/plugin-router",registerHook:{modifyRoutes:v.modifyRoutes},setup:function(e){return{init:function(e,r){var n=e.context;return n.router={useMatches:c.useMatches,useLocation:c.useLocation},Object.defineProperty(n,"routes",{get:function(){return b}}),r({context:n})},hoc:function(r,s){var f,v=r.App;if(!m&&!_)return s({App:v});var h=(f=function(r){var u,s,l=(null===(s=window._SERVER_DATA)||void 0===s?void 0:s.router.baseUrl)||(u=location.pathname,n.find(function(e){return 0===u.search(e)})||"/"),f="/"===l?(0,p.urlJoin)(l,x):l,v=window._ROUTER_DATA,h=(0,a.useContext)(d.RuntimeReactContext),y=h.unstable_getBlockNavState;return(0,a.useMemo)(function(){(null==v?void 0:v.errors)&&(v=(0,o._)((0,t._)({},v),{errors:(0,p.deserializeErrors)(v.errors)})),b=_?_():(0,c.createRoutesFromElements)((0,p.renderRoutes)({routesConfig:m,props:r})),b=e.useHookRunners().modifyRoutes(b);var n=g?(0,c.createBrowserRouter)(b,{basename:f,hydrationData:v}):(0,c.createHashRouter)(b,{basename:f,hydrationData:v}),u=n.subscribe;return n.subscribe=function(e){return u(function(){for(var r=arguments.length,n=Array(r),t=0;t<r;t++)n[t]=arguments[t];if(!(y&&y()))return e.apply(void 0,(0,i._)(n))})},Object.defineProperty(h,"remixRouter",{get:function(){return n},configurable:!0}),n},[m,r,f,v,y])},function(e){var r=f(e);return(0,u.jsx)(v,(0,o._)((0,t._)({},e),{children:(0,u.jsx)(c.RouterProvider,{router:r})}))});return(v&&(h=l(h,v)),null==y?void 0:y.globalApp)?s({App:l(h,y.globalApp)}):s({App:h})},pickContext:function(e,r){var n=e.context,i=e.pickedContext,u=n.remixRouter;if(!u)return r({context:n,pickedContext:i});var a={navigate:u.navigate,get location(){return u.state.location}};return r({context:n,pickedContext:(0,o._)((0,t._)({},i),{router:a})})}}}}}},40318:function(e,r,n){"use strict";n.r(r),n.d(r,{deserializeErrors:function(){return p},renderRoutes:function(){return d},urlJoin:function(){return v}});var t=n("15169"),o=n("85056"),i=n("28003"),u=n("9880"),a=n("95732"),c=n("76394"),s=n("15711"),l=n("75949"),f=n("90208");function d(e){var r=e.routesConfig,n=e.props,i=e.ssrMode,c=e.reporter;if(!r)return null;var d=r.routes,v=r.globalApp;return d?function(e,r){var n=r.globalApp,i=r.ssrMode,c=r.props,d=r.reporter,v=function(e){var r=e.Component,i=(0,o._)(e,["Component"]);return n?(0,u.jsx)(n,(0,t._)({Component:r},i)):(0,u.jsx)(r,(0,t._)({},i))},p=[],m=!0,g=!1,h=void 0;try{for(var x,y=e[Symbol.iterator]();!(m=(x=y.next()).done);m=!0){var _=x.value;if("nested"===_.type){var b=(0,s.renderNestedRoute)(_,{DeferredDataComponent:"stream"===i?f.default:void 0,props:c,reporter:d});p.push(b)}else{var w=(0,u.jsx)(a.Route,{path:_.path,element:(0,u.jsx)(v,{Component:_.component})},_.path);p.push(w)}}}catch(e){g=!0,h=e}finally{try{!m&&null!=y.return&&y.return()}finally{if(g)throw h}}return p.push((0,u.jsx)(a.Route,{path:"*",element:(0,u.jsx)(l.DefaultNotFound,{})},"*")),p}(d,{globalApp:v,ssrMode:i,props:n,reporter:c}):null}var v=function(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];var t=RegExp("".concat("/","{1,}"),"g");return function(e){var r=e;return r&&"string"==typeof r?(r.startsWith(".")&&(r=r.slice(1)),!r.startsWith("/")&&(r="/".concat(r)),r.endsWith("/")&&"/"!==r&&(r=r.slice(0,r.length-1)),r):r}(r.join("/").replace(t,"/"))};function p(e){if(!e)return null;var r=Object.entries(e),n={},t=!0,o=!1,u=void 0;try{for(var a,s=r[Symbol.iterator]();!(t=(a=s.next()).done);t=!0){var l=(0,i._)(a.value,2),f=l[0],d=l[1];if(d&&"RouteErrorResponse"===d.__type)n[f]=new c.ErrorResponse(d.status,d.statusText,d.data,!0===d.internal);else if(d&&"Error"===d.__type){var v=Error(d.message);v.stack=d.stack,n[f]=v}else n[f]=d}}catch(e){o=!0,u=e}finally{try{!t&&null!=s.return&&s.return()}finally{if(o)throw u}}return n}},38338:function(e,r,n){"use strict";n.r(r),n.d(r,{RuntimeReactContext:function(){return o}});var t=n("57814"),o=(0,t.createContext)({});(0,t.createContext)({})},89323:function(e,r,n){"use strict";n.r(r),n.d(r,{createAsyncPipeline:function(){return d},createManager:function(){return P},createPipeline:function(){return f},createWaterfall:function(){return m}});var t=n("37599"),o=n("15169"),i=n("93160"),u=n("43932"),a=n("16584"),c=function(e){var r=function(n,t){return e(n,t,function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:t;return r(n+1,e)})};return{start:function(e){return r(0,e)},dispatch:r}},s=Symbol.for("MODERN_PIPELINE"),l=function(e){if("function"==typeof e)return e;if(e&&"function"==typeof e.middleware)return e.middleware;throw Error("".concat(e," is not a Middleware"))},f=function(){var e,r=[],n=function(e){return c(function(n,t,o){if(n>=r.length){if(e)return e(t);throw Error("Expect returning a value, but all middlewares just calling next()")}return r[n](t,o)})},o=n(),u=function(e,r){var t;return((t=r)?n(null==t?void 0:t.onLast):o).start(e)},a=(e={},(0,t._)(e,s,!0),(0,t._)(e,"use",function(){for(var e=arguments.length,n=Array(e),t=0;t<e;t++)n[t]=arguments[t];return r.push.apply(r,(0,i._)(n.map(l))),a}),(0,t._)(e,"run",u),(0,t._)(e,"middleware",function(e,r){return u(e,{onLast:r})}),e);return a},d=function(){var e=f();return(0,o._)({},e)},v=Symbol.for("MODERN_WATERFALL"),p=function(e){if("function"==typeof e)return e;if(e&&"function"==typeof e.middleware)return e.middleware;throw Error("".concat(e," is not a Brook or { brook: Brook }"))},m=function(){var e=f(),r=(0,u._)((0,o._)({},e),(0,t._)({use:function(){for(var n=arguments.length,t=Array(n),o=0;o<n;o++)t[o]=arguments[o];return e.use.apply(e,(0,i._)(t.map(p).map(g))),r},run:function(r,n){return e.run(r,(0,u._)((0,o._)({},n),{onLast:function(e){return e}}))},middleware:function(r){return e.run(r,{onLast:function(e){return e}})}},v,!0));return r},g=function(e){return function(r,n){return n(e(r))}},h=Symbol.for("MODERN_ASYNC_WATERFALL"),x=function(e){if("function"==typeof e)return e;if(e&&"function"==typeof e.middleware)return e.middleware;throw Error("".concat(e," is not a AsyncBrook or { brook: AsyncBrook }"))},y=function(){var e=d(),r=(0,u._)((0,o._)({},e),(0,t._)({use:function(){for(var n=arguments.length,t=Array(n),o=0;o<n;o++)t[o]=arguments[o];return e.use.apply(e,(0,i._)(t.map(x).map(_))),r},run:function(r,n){return e.run(r,(0,u._)((0,o._)({},n),{onLast:function(e){return e}}))},middleware:function(r){return e.run(r,{onLast:function(e){return e}})}},h,!0));return r},_=function(e){return function(r,n){return Promise.resolve(e(r)).then(function(e){return n(e)})}},b=Symbol.for("MODERN_WORKFLOW"),w=function(){var e=f(),r=(0,u._)((0,o._)({},e),(0,t._)({use:function(){for(var n=arguments.length,t=Array(n),o=0;o<n;o++)t[o]=arguments[o];return e.use.apply(e,(0,i._)(t.map(R))),r},run:function(r){return e.run(r,{onLast:function(){return[]}}).filter(Boolean)}},b,!0));return r},R=function(e){return function(r,n){return[e(r)].concat((0,i._)(n(r)))}},E=Symbol.for("MODERN_PARALLEL_WORKFLOW"),j=function(){var e=f(),r=(0,u._)((0,o._)({},e),(0,t._)({run:function(r){return Promise.all(e.run(r,{onLast:function(){return[]}})).then(function(e){return e.filter(Boolean)})},use:function(){for(var n=arguments.length,t=Array(n),o=0;o<n;o++)t[o]=arguments[o];return e.use.apply(e,(0,i._)(t.map(k))),r}},E,!0));return r},k=function(e){return function(r,n){return[e(r)].concat((0,i._)(n(r)))}},C=Symbol.for("MODERN_ASYNC_WORKFLOW"),S=function(){var e=d(),r=(0,u._)((0,o._)({},e),(0,t._)({use:function(){for(var n=arguments.length,t=Array(n),o=0;o<n;o++)t[o]=arguments[o];return e.use.apply(e,(0,i._)(t.map(A))),r},run:function(r){var n,t=e.run(r,{onLast:function(){return[]}});return(n=t)&&"function"==typeof n.then?t.then(function(e){return e.filter(Boolean)}):t.filter(Boolean)}},C,!0));return r},A=function(e){return function(r,n){return Promise.resolve(e(r)).then(function(e){return Promise.resolve(n(r)).then(function(r){return[e].concat((0,i._)(r))})})}},L=function(e){},O=function(e){return null!==e&&"object"==typeof e},D="SYNC_PLUGIN_SYMBOL",M={name:"untitled",pre:[],post:[],rivals:[],required:[],usePlugins:[],registerHook:{}},P=function(e,r){var n,t=0,i=(0,o._)({},e),c=function(){return n},s=function(e){i=(0,o._)({},e,i)},l=function(e){var r,n;return O(e)&&(r=e,n=D,r.hasOwnProperty(n))&&e[D]===D},f=(0,u._)((0,o._)({},r),{useHookRunners:c}),d=function(e){var r=[],v=function(e){var n,t;if(n=r,t=e,!n.some(function(e){return e.name===t.name}))r.push((0,o._)({},e))},p=function(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];return r.forEach(function(e){if(l(e))v(e);else if("function"==typeof e){var r=e();v(m(r.setup,r))}else O(e)&&v(m(e.setup,e))}),g},m=function(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(null===(e=n.usePlugins)||void 0===e?void 0:e.length)&&n.usePlugins.forEach(function(e){p(m(e.setup,e))}),n.registerHook&&s(n.registerHook),(0,u._)((0,o._)((0,u._)((0,o._)({},M),{name:"No.".concat(t++," plugin")}),n),{SYNC_PLUGIN_SYMBOL:D,setup:r})},g={createPlugin:m,isPlugin:l,usePlugin:p,init:function(){var t,u=(t=r,(0,a.pluginDagSort)(t.slice())),c=(0,o._)({},f,e);return L(u),n=T(u.map(function(e){return e.setup(c)}),i)},clear:function(){r=[]},run:function(e){return e()},registerHook:s,useRunner:c,clone:d};return g};return d()},T=function(e,r){var n={},t=B(r);if(r){var i=function(r){e.forEach(function(e){(null==e?void 0:e[r])&&t[r].use(e[r])}),n[r]=function(e,n){return t[r].run(e,(0,o._)({},n))}};for(var u in t)i(u)}return n},N=function(e){var r,n,t,o,i,u;if(null==(r=e)?void 0:r[v])return m();if(null==(n=e)?void 0:n[h])return y();if(null==(t=e)?void 0:t[b])return w();if(null==(o=e)?void 0:o[C])return S();if(null==(i=e)?void 0:i[E])return j();if(null==(u=e)?void 0:u[s])return f();throw Error("Unknown hook: ".concat(e))},B=function(e){if(!e)return e;var r={};for(var n in e)r[n]=N(e[n]);return r}},15711:function(e,r,n){"use strict";n.r(r);var t=n("99959");n.es(t,r);var o=n("16351");n.es(o,r)},16351:function(e,r,n){"use strict";n.r(r),n.d(r,{renderNestedRoute:function(){return d}});var t=n("61078"),o=n("15169"),i=n("43932"),u=n("73706"),a=n("9880"),c=n("57814"),s=n("60421"),l=n("47328"),f=n("98813"),d=function(e){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},p=e.children,m=e.index,g=e.id,h=e.component,x=e.isRoot,y=e.lazyImport,_=e.config,b=e.handle,w=n.parent,R=n.DeferredDataComponent,E=n.props,j=void 0===E?{}:E,k=n.reporter,C={caseSensitive:e.caseSensitive,path:e.path,id:e.id,loader:function(e,r){var n,o=e.loader;if(!o)return function(){return"function"==typeof e.lazyImport&&e.lazyImport(),null};return n=(0,t._)(function(n){var t,i,a;return(0,u._)(this,function(u){switch(u.label){case 0:return"function"==typeof e.lazyImport&&e.lazyImport(),t=(0,f.time)(),[4,o(n)];case 1:return i=u.sent(),a=t(),"undefined"==typeof document&&r&&(null==r||r.reportTiming("".concat(l.LOADER_REPORTER_NAME,"-").concat(e.id),a)),[2,i]}})}),function(e){return n.apply(this,arguments)}}(e,k),action:e.action,hasErrorBoundary:e.hasErrorBoundary,shouldRevalidate:e.shouldRevalidate,handle:(0,o._)({},b,"object"==typeof _?null==_?void 0:_.handle:{}),index:e.index,element:e.element,errorElement:e.errorElement};if(e.error){var S=(0,a.jsx)(e.error,{});C.errorElement=S}if(h){if((null==w?void 0:w.loading)&&y){var A=w.loading;r=v(h)?(0,a.jsx)(h,{fallback:(0,a.jsx)(A,{})}):(0,a.jsx)(c.Suspense,{fallback:(0,a.jsx)(A,{}),children:(0,a.jsx)(h,{})})}else r=v(h)&&y?(0,a.jsx)(h,{}):x?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h,(0,o._)({},j)),"undefined"==typeof document&&R&&(0,a.jsx)(R,{nonce:null==j?void 0:j.nonce})]}):y?(0,a.jsx)(c.Suspense,{fallback:null,children:(0,a.jsx)(h,{})}):(0,a.jsx)(h,{})}else e.loading=null==w?void 0:w.loading,C.element=(0,a.jsx)(s.Outlet,{});r&&(C.element=r);var L=null==p?void 0:p.map(function(r){return d(r,{parent:e,reporter:k})});return m?(0,a.jsx)(s.Route,(0,i._)((0,o._)({},C),{index:!0}),g):(0,a.jsx)(s.Route,(0,i._)((0,o._)({},C),{index:!1,children:L}),g)};function v(e){return e&&"Loadable"===e.displayName&&e.preload&&"function"==typeof e.preload}},99959:function(e,r,n){"use strict";n.r(r),n.d(r,{parsedJSONFromElement:function(){return t}});var t=function(e){var r=document.querySelectorAll("#".concat(e));if(0!==r.length){var n=r[r.length-1];if(n)try{return JSON.parse((null==n?void 0:n.textContent)||"")}catch(r){console.error("parse ".concat(e," error"),r)}}}},76394:function(e,r,n){"use strict";n.r(r);var t=n("62425");n.es(t,r)},95732:function(e,r,n){"use strict";n.r(r);var t=n("60421");n.es(t,r)},98813:function(e,r,n){"use strict";n.r(r),n.d(r,{time:function(){return u}});var t=n("28003");function o(e){var r=.001*new Date().getTime(),n=Math.floor(r),t=Math.floor(r%1*1e9);return e&&(n-=e[0],(t-=e[1])<0&&(n--,t+=1e9)),[n,t]}var i=function(e){var r=(0,t._)(o(e),2);return 1e3*r[0]+r[1]/1e6},u=function(){var e=o();return function(){return i(e)}}},47328:function(e,r,n){"use strict";n.r(r),n.d(r,{LOADER_REPORTER_NAME:function(){return o},ROUTE_MANIFEST:function(){return t}});var t="_MODERNJS_ROUTE_MANIFEST",o="server-loader"},16584:function(e,r,n){"use strict";n.r(r),n.d(r,{pluginDagSort:function(){return t}});var t=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"name",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"pre",t=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"post",o=function(n){var t=e.find(function(e){return"string"==typeof n?e[r]===n:e[r]===n[r]});if(!t)throw Error("plugin ".concat(n," not existed"));return t},i=[];e.forEach(function(u){var a,c;null===(a=u[n])||void 0===a||a.forEach(function(n){e.find(function(e){return e.name===n})&&i.push([o(n)[r],o(u)[r]])}),null===(c=u[t])||void 0===c||c.forEach(function(n){e.find(function(e){return e.name===n})&&i.push([o(u)[r],o(n)[r]])})});for(var u=e.filter(function(e){return!i.find(function(n){return n[1]===e[r]})}),a=[];u.length;)!function(){var n=u.shift();a.push(o(n)),i=i.filter(function(e){return e[0]!==o(n)[r]}),u=e.filter(function(e){return!a.find(function(n){return n[r]===e[r]})}).filter(function(e){return!i.find(function(n){return n[1]===e[r]})})}();if(i.length){var c={};throw i.forEach(function(e){c[e[0]]=!0,c[e[1]]=!0}),Error("plugins dependencies has loop: ".concat(Object.keys(c).join(",")))}return a}},54949:function(e,r,n){},91201:function(e,r,n){"use strict";n.r(r),n("91625"),n("54340"),n("70784"),n("98023"),n("58928"),n("42632"),n("51616"),n("77896"),n("67317"),n("56080"),n("45702"),n("4060"),n("14202"),n("80117"),n("75731"),n("96729"),n("53867"),n("92056"),n("25965"),n("11523"),n("15960"),n("65631"),n("27342"),n("37050"),n("23415"),n("58505"),n("87639"),n("24651"),n("83472"),n("57624"),n("35319"),n("10302"),n("65209"),n("77583"),n("24630"),n("46156"),n("46327"),n("7461"),n("21169"),n("40479"),n("32591"),n("68184"),n("37541"),n("67420"),n("19110"),n("35263"),n("98037"),n("17206"),n("16198"),n("89708"),n("7769"),n("14706"),n("28693"),n("92503"),n("67469"),n("61060"),n("74576"),n("77304"),n("8267"),n("57137"),n("24011"),n("28115"),n("83093"),n("66220"),n("72687"),n("11424"),n("48362"),n("1801"),n("13794"),n("14070"),n("77281"),n("58138"),n("82591"),n("31058"),n("60331"),n("14658"),n("18276"),n("14494"),n("96199"),n("39370"),n("32077"),n("98468"),n("92744"),n("30479"),n("57492"),n("17205"),n("82407"),n("44425"),n("75291"),n("59915"),n("12812"),n("35895"),n("13334"),n("59874"),n("1087"),n("4871"),n("25559"),n("35751"),n("21122"),n("53444"),n("70422"),n("36928"),n("1073"),n("25496"),n("14002"),n("93596"),n("63663"),n("88664"),n("88830"),n("37674"),n("75579"),n("4745"),n("72282"),n("49167"),n("6171"),n("89352"),n("90263"),n("62246"),n("48621"),n("88627"),n("26151"),n("24266"),n("65878"),n("96280"),n("35799"),n("75736"),n("33904"),n("66381"),n("45365"),n("18295"),n("76541"),n("355"),n("49179"),n("82921"),n("61359"),n("82134"),n("53455"),n("78856"),n("90135"),n("88726"),n("96374"),n("91180"),n("89393"),n("6879"),n("5718"),n("81344"),n("51762"),n("35941"),n("96228"),n("4450"),n("15685"),n("24788"),n("37292"),n("63961"),n("89875"),n("15340"),n("36067"),n("54795"),n("34760"),n("5396"),n("98600"),n("64683"),n("24557"),n("35937"),n("2819"),n("53778"),n("84004"),n("74930"),n("11811"),n("79695"),n("91548"),n("95004"),n("54477"),n("29085"),n("10695"),n("69861"),n("52489"),n("73041"),n("88037"),n("21331"),n("79062"),n("39086"),n("13474"),n("60552"),n("37334"),n("52200"),n("6062"),n("70008"),n("75258"),n("61453"),n("68149"),n("19825"),n("26290"),n("75181"),n("92458"),n("12742"),n("47948"),n("11273"),n("26774"),n("82401"),n("37531"),n("32201"),n("59136"),n("48728"),n("34790"),n("28588"),n("2572"),n("53627"),n("12326"),n("21474"),n("49572"),n("80775"),n("80400"),n("50362"),n("60122"),n("45115"),n("96462"),n("54951"),n("40665"),n("7403"),n("82325"),n("57254"),n("57314"),n("88989"),n("10664"),n("7177"),n("27913"),n("4637"),n("74928"),n("17649"),n("74678"),n("77728"),n("64136"),n("13222"),n("52313"),n("3994"),n("89521"),n("45595"),n("49526"),n("94526"),n("4040"),n("23990"),n("31358"),n("63923"),n("16391"),n("51877"),n("8960"),n("29200"),n("8210"),n("89447"),n("27011"),n("10676"),n("9169"),n("60293"),n("11418"),n("48786"),n("80801"),n("30068"),n("29872"),n("26900"),n("60208"),n("85249"),n("6544"),n("13937"),n("75939"),n("57967"),n("92369"),n("55771"),n("57905"),n("95091"),n("70504"),n("54138"),n("34210"),n("52884"),n("34094"),n("97997"),n("55660"),n("53458"),n("7884"),n("91908"),n("65183"),n("94623"),n("32861"),n("10487"),n("79986"),n("67704"),n("14325"),n("13990"),n("58207")},54094:function(e,r,n){"use strict";n.r(r),window.__assetPrefix__="/__devtools"},13773:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return s}});var t=n("15169"),o=n("9880");n("57814");var i=n("79732"),u=n("73108"),a=n("43862"),c=e=>{var{children:r=[]}=e,n=[];for(var t of r)n.push(t),t!==r.at(-1)&&n.push((0,o.jsx)(l,{},"".concat(t.key,"__connector")));return(0,o.jsx)(u.Flex,{align:"center",gap:"1",children:n})};c.Button=e=>(0,o.jsx)(u.Button,(0,t._)({color:"gray",size:"1",variant:"ghost"},e));var s=c,l=(0,i.default)(a.ChevronRightIcon)({width:"var(--font-size-2)",height:"var(--font-size-2)",color:"var(--gray-6)"})},88884:function(e,r,n){"use strict";n.r(r),n.d(r,{getDefaultTabs:function(){return i}});var t=n("9880"),o=n("43862"),i=()=>[{name:"overview",title:"Overview",icon:(0,t.jsx)(o.HomeIcon,{}),view:{type:"builtin",url:"/overview"}},{name:"config",title:"Config",icon:(0,t.jsx)(o.MixerHorizontalIcon,{}),view:{type:"builtin",url:"/config"}},{name:"pages",title:"Pages",icon:(0,t.jsx)(o.FileTextIcon,{}),view:{type:"builtin",url:"/pages"}},{name:"context",title:"Context",icon:(0,t.jsx)(o.CubeIcon,{}),view:{type:"builtin",url:"/context"}}]},36934:function(e,r,n){"use strict";n.r(r),n.d(r,{RootTabs:function(){return p}});var t=n("9880"),o=n("57814"),i=n("79732"),u=n("63645"),a=n("71593"),c=n("73108"),s=n("20918"),l=n.n(s),f=n("43862"),d=n("27288"),v=n("13773"),p=()=>{var e=(0,d.useStore)(),r=(0,u.useSnapshot)(e.tabs),n=(0,a.useNavigate)(),i=(0,a.useLocation)().pathname.split("/").filter(Boolean)[0],s=l.find(r,{name:i}),p=e=>{if("builtin"===e.view.type)n(e.view.url);else throw Error("Unimplemented.")};return(0,t.jsxs)(h,{children:[(0,t.jsxs)(g,{children:[(0,t.jsx)(x,{style:{touchAction:"none"},children:(0,t.jsxs)(_,{children:[(0,t.jsx)(m,{children:"\uD83C\uDF30"}),"DevTools"]})}),(0,t.jsx)(x,{children:r.map(e=>(0,t.jsxs)(y,{value:e.name,onClick:()=>p(e),children:[(0,t.jsx)(m,{children:e.icon}),e.title]},e.name))}),(0,t.jsx)(c.Box,{grow:"1"})]}),(0,t.jsxs)(b,{children:[(0,t.jsx)(c.Box,{grow:"0",children:(0,t.jsxs)(v.default,{children:[(0,t.jsx)(v.default.Button,{onClick:()=>n("overview"),children:(0,t.jsx)(f.HomeIcon,{})}),(0,t.jsx)(v.default.Button,{children:null==s?void 0:s.title})]})}),(0,t.jsx)(c.Box,{grow:"1",style:{overflow:"hidden"},children:(0,t.jsx)(o.Suspense,{fallback:(0,t.jsx)("div",{children:"loading..."}),children:(0,t.jsx)(a.Outlet,{})})})]})]})},m=(0,i.default)(c.Box)({width:"2rem",height:"2rem",display:"flex",justifyContent:"center",alignItems:"center"}),g=(0,i.default)(c.Box)({display:"flex",flexDirection:"column",gap:"var(--block-gap)"}),h=(0,i.default)(c.Box)({"--block-gap":"0.5rem","--block-color":"#121212",display:"flex",padding:"var(--block-gap)",gap:"var(--block-gap)",alignItems:"stretch",height:"100%",width:"100%"}),x=(0,i.default)(c.Box)({flex:"none",width:"10rem",height:"min-content",backgroundColor:"var(--block-color)",borderRadius:"var(--radius-4)"}),y=i.default.button({border:"none",backgroundColor:"transparent",display:"flex",alignItems:"center",height:"3rem",width:"100%",color:"var(--gray-11)",fontSize:"var(--font-size-2)",transition:"color 200ms",fontWeight:"bold",cursor:"pointer",":focus":{color:"white"}}),_=(0,i.default)(y)({color:"var(--gray-10)",cursor:"default",":focus":{color:"var(--gray-10)"}}),b=(0,i.default)(c.Box)({flex:1,flexDirection:"column",alignItems:"stretch",display:"flex",gap:"var(--space-3)",overflow:"hidden",backgroundColor:"var(--block-color)",borderRadius:"var(--radius-4)",padding:"1rem"})},14539:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return c}});var t=n("9880");n("44582"),n("54949");var o=n("79732"),i=n("73108"),u=n("36934"),a=n("27288");function c(){return(0,t.jsx)(a.StoreContextProvider,{children:(0,t.jsx)(i.Theme,{appearance:"dark",className:"dark",children:(0,t.jsx)(s,{children:(0,t.jsx)(u.RootTabs,{})})})})}var s=(0,o.default)(i.Box)({width:"100vw",height:"100vh",overflow:"hidden",backgroundColor:"#090909"})},27288:function(e,r,n){"use strict";n.r(r),n.d(r,{StoreContextProvider:function(){return y},useStore:function(){return _}});var t=n("61078"),o=n("9880"),i=n("20918"),u=n.n(i),a=n("57814"),c=n("34104"),s=n("87883"),l=n.n(s),f=n("78164"),d=n("63645"),v=n("78581"),p=n("86040"),m=n("88884"),g=(0,a.createContext)(null),h=()=>{var e=(0,f.getQuery)(location.href).src||sessionStorage.getItem("devtools-data-source");if(!u.isString(e))throw TypeError("Can't connection to data source: ".concat(e||"<EMPTY>"));return sessionStorage.setItem("devtools-data-source",e),e},x=()=>({framework:{context:l(),config:{resolved:l(),transformed:l()}},builder:{context:l(),config:{resolved:l(),transformed:l()}},bundler:{config:{resolved:l(),transformed:l()}},dependencies:l(),compileTimeCost:l(),clientDefinition:l()}),y=e=>{var{children:r}=e,n=(0,a.useMemo)(h,[]),i=(0,a.useMemo)(x,[]),u=(0,p.useProxyFrom)(()=>({dataSource:n,location:"/",framework:{context:i.framework.context.promise,fileSystemRoutes:{},config:{resolved:i.framework.config.resolved.promise,transformed:i.framework.config.transformed.promise}},builder:{context:i.builder.context.promise,config:{resolved:i.builder.config.resolved.promise,transformed:i.builder.config.transformed.promise}},bundler:{config:{resolved:i.bundler.config.resolved.promise,transformed:i.bundler.config.transformed.promise}},tabs:(0,m.getDefaultTabs)().map(e=>(0,d.ref)(e)),version:"2.36.0",dependencies:i.dependencies.promise,compileTimeCost:i.compileTimeCost.promise,name:i.clientDefinition.promise.then(e=>e.name),packages:i.clientDefinition.promise.then(e=>e.packages),assets:i.clientDefinition.promise.then(e=>e.assets)}));return(0,c.useAsync)((0,t._)(function*(){var{server:e}=yield(0,v.setupServerConnection)({url:n,$store:u});for(var{entryName:r}of(i.framework.context.resolve(e.getAppContext()),i.framework.config.resolved.resolve(e.getFrameworkConfig()),i.framework.config.transformed.resolve(e.getTransformedFrameworkConfig()),i.builder.context.resolve(e.getBuilderContext()),i.builder.config.resolved.resolve(e.getBuilderConfig()),i.builder.config.transformed.resolve(e.getTransformedBuilderConfig()),i.bundler.config.resolved.resolve(e.getBundlerConfigs()),i.bundler.config.transformed.resolve(e.getTransformedBundlerConfigs()),i.dependencies.resolve(e.getDependencies()),i.compileTimeCost.resolve(e.getCompileTimeCost()),i.clientDefinition.resolve(e.getClientDefinition()),(yield u.framework.context).entrypoints))u.framework.fileSystemRoutes[r]=e.getFileSystemRoutes(r)}),[n,i]),(0,o.jsx)(g.Provider,{value:u,children:r})},_=()=>{var e=(0,a.useContext)(g);if(!e)throw Error("Can't resolve the context of global store.");return e}},39027:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return i}});var t=n("71593"),o=n("78164"),i=e=>{var{request:r}=e,n=(0,o.resolveURL)(r.url,"./builder/transformed");return(0,t.redirect)(n)}},42974:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return i}});var t=n("71593"),o=n("78164"),i=e=>{var{request:r}=e,n=(0,o.resolveURL)(r.url,"./builder");return(0,t.redirect)(n)}},82141:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return i}});var t=n("71593"),o=n("78164"),i=e=>{var{request:r}=e,n=(0,o.resolveURL)(r.url,"./overview");return(0,t.redirect)(n)}},78581:function(e,r,n){"use strict";n.r(r),n.d(r,{setupServerConnection:function(){return u}});var t,o=n("61078"),i=n("82865");var u=(t=(0,o._)(function*(e){var{url:r,$store:n}=e,t=new window.WebSocket(r),o=(0,i.createBirpc)({refresh:()=>location.reload(),updateFileSystemRoutes(e){var{entrypoint:r,routes:t}=e;n.framework.fileSystemRoutes[r.entryName]=t}},{post:e=>t.send(e),on:e=>t.onmessage=e,serialize:e=>JSON.stringify(e),deserialize:e=>JSON.parse(e.data.toString())});return yield new Promise((e,n)=>{t.onopen=()=>e(),t.onerror=()=>n(Error("Failed connect to WebSocket server: ".concat(r)))}),{server:o}}),function(e){return t.apply(this,arguments)})},86040:function(e,r,n){"use strict";n.r(r),n.d(r,{useProxyFrom:function(){return i}}),n("20918");var t=n("57814"),o=n("63645"),i=e=>(0,t.useMemo)(()=>(0,o.proxy)(e()),[])}},function(e){var r=function(r){return e(e.s=r)};e.O(0,["182","lib-lodash","lib-polyfill","lib-react","lib-router"],function(){return r("54094"),r("91201"),r("68403"),r("16666")}),e.O()}]);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/main.8dfd903e.js","sources":["../../runtime/plugin-runtime/dist/esm/core/compatible.js","../../runtime/plugin-runtime/dist/esm/core/loader/loaderManager.js","../../runtime/plugin-runtime/dist/esm/core/plugin.js","../../runtime/plugin-runtime/dist/esm/router/runtime/DefaultNotFound.js","../../runtime/plugin-runtime/dist/esm/router/runtime/DeferredDataScripts.js","../../runtime/plugin-runtime/dist/esm/router/runtime/hooks.js","../../runtime/plugin-runtime/dist/esm/router/runtime/index.js","../../runtime/plugin-runtime/dist/esm/router/runtime/plugin.js","../../runtime/plugin-runtime/dist/esm/router/runtime/utils.js","../../runtime/plugin-runtime/dist/esm/runtimeContext.js","../../toolkit/plugin/dist/esm/index.js","../../toolkit/runtime-utils/dist/esm/browser/nestedRoutes.js","../../toolkit/runtime-utils/dist/esm/browser/parsed.js","../../toolkit/runtime-utils/dist/esm/time.js","../../toolkit/utils/dist/esm/universal/constants.js","../../toolkit/utils/dist/esm/universal/pluginDagSort.js","data:text/javascript,window.__assetPrefix__ = '/__devtools';","./src/components/Breadcrumbs.tsx","./src/constants.tsx","./src/routes/RootTabs.tsx","./src/routes/layout.tsx","./src/stores/index.tsx","./src/routes/config/page.loader.ts","./src/routes/context/page.loader.ts","./src/routes/page.loader.ts","./src/rpc/index.ts","./src/utils/hooks.ts"],"sourcesContent":["import { _ as _async_to_generator } from \"@swc/helpers/_/_async_to_generator\";\nimport { _ as _instanceof } from \"@swc/helpers/_/_instanceof\";\nimport { _ as _object_spread } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_without_properties } from \"@swc/helpers/_/_object_without_properties\";\nimport { _ as _to_consumable_array } from \"@swc/helpers/_/_to_consumable_array\";\nimport { _ as _ts_generator } from \"@swc/helpers/_/_ts_generator\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport React, { useContext, useMemo } from \"react\";\nimport hoistNonReactStatics from \"hoist-non-react-statics\";\nimport { ROUTE_MANIFEST } from \"@modern-js/utils/universal/constants\";\nimport { RuntimeReactContext } from \"../runtimeContext\";\nimport { runtime } from \"./plugin\";\nimport { createLoaderManager } from \"./loader/loaderManager\";\nvar IS_REACT18 = process.env.IS_REACT18 === \"true\";\nfunction isClientArgs(id) {\n return typeof id === \"string\" || typeof HTMLElement !== \"undefined\" && _instanceof(id, HTMLElement);\n}\nvar runnerMap = /* @__PURE__ */ new WeakMap();\nvar getInitialContext = function(runner) {\n return {\n loaderManager: createLoaderManager({}),\n runner,\n isBrowser: true,\n routeManifest: typeof window !== \"undefined\" && window[ROUTE_MANIFEST]\n };\n};\nvar createApp = function(param) {\n var plugins = param.plugins, globalProps = param.props;\n var _appRuntime;\n var appRuntime = runtime.clone();\n (_appRuntime = appRuntime).usePlugin.apply(_appRuntime, _to_consumable_array(plugins));\n return function(App) {\n var runner = appRuntime.init();\n var WrapperComponent = function(props) {\n var _props_children;\n var element = /* @__PURE__ */ React.createElement(App || React.Fragment, App ? _object_spread({}, props) : null, App ? props.children : /* @__PURE__ */ React.cloneElement(props.children, _object_spread({}, (_props_children = props.children) === null || _props_children === void 0 ? void 0 : _props_children.props, props)));\n var context = useContext(RuntimeReactContext);\n return runner.provide({\n element,\n props: _object_spread({}, props),\n context\n }, {\n onLast: function(param2) {\n var element2 = param2.element;\n return element2;\n }\n });\n };\n if (App) {\n hoistNonReactStatics(WrapperComponent, App);\n }\n var HOCApp = runner.hoc({\n App: WrapperComponent\n }, {\n onLast: function(param2) {\n var _$App = param2.App;\n var WrapComponent = function(_param) {\n var context = _param.context, props = _object_without_properties(_param, [\n \"context\"\n ]);\n var contextValue = context;\n if (!(contextValue === null || contextValue === void 0 ? void 0 : contextValue.runner)) {\n contextValue = getInitialContext(runner);\n runner.init({\n context: contextValue\n }, {\n onLast: function(param3) {\n var context1 = param3.context;\n var _App_init;\n return _$App === null || _$App === void 0 ? void 0 : (_App_init = _$App.init) === null || _App_init === void 0 ? void 0 : _App_init.call(_$App, context1);\n }\n });\n }\n var mergedProps = _object_spread({}, props, globalProps);\n return /* @__PURE__ */ _jsx(RuntimeReactContext.Provider, {\n value: contextValue,\n children: /* @__PURE__ */ _jsx(_$App, _object_spread({}, mergedProps))\n });\n };\n return hoistNonReactStatics(WrapComponent, _$App);\n }\n });\n runnerMap.set(HOCApp, runner);\n return HOCApp;\n };\n};\nvar bootstrap = function() {\n var _ref = _async_to_generator(function(BootApp, id, root, ReactDOM) {\n var App, runner, context, runInit, isBrowser, _ssrData_data, _ssrData_data1, ssrData, loadersData, initialLoadersState, initialData, rootElement, ModernRender, ModernHydrate, isRedirectResponse, initialData1;\n return _ts_generator(this, function(_state) {\n switch (_state.label) {\n case 0:\n App = BootApp;\n runner = runnerMap.get(App);\n if (!runner) {\n App = createApp({\n plugins: []\n })(App);\n runner = runnerMap.get(App);\n }\n context = getInitialContext(runner);\n runInit = function(_context) {\n return runner.init({\n context: _context\n }, {\n onLast: function(param) {\n var context1 = param.context;\n var _App_init;\n return App === null || App === void 0 ? void 0 : (_App_init = App.init) === null || _App_init === void 0 ? void 0 : _App_init.call(App, context1);\n }\n });\n };\n if (!id) {\n return [\n 2,\n /* @__PURE__ */ React.createElement(App, {\n context\n })\n ];\n }\n isBrowser = typeof window !== \"undefined\" && window.name !== \"nodejs\";\n if (!isBrowser)\n return [\n 3,\n 4\n ];\n if (!isClientArgs(id))\n return [\n 3,\n 2\n ];\n ssrData = window._SSR_DATA;\n loadersData = (ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data = ssrData.data) === null || _ssrData_data === void 0 ? void 0 : _ssrData_data.loadersData) || {};\n initialLoadersState = Object.keys(loadersData).reduce(function(res, key) {\n var loaderData = loadersData[key];\n if (loaderData.loading !== false) {\n return res;\n }\n res[key] = loaderData;\n return res;\n }, {});\n Object.assign(context, _object_spread({\n loaderManager: createLoaderManager(initialLoadersState, {\n skipStatic: true\n })\n }, ssrData ? {\n ssrContext: ssrData === null || ssrData === void 0 ? void 0 : ssrData.context\n } : {}));\n context.initialData = ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data1 = ssrData.data) === null || _ssrData_data1 === void 0 ? void 0 : _ssrData_data1.initialData;\n return [\n 4,\n runInit(context)\n ];\n case 1:\n initialData = _state.sent();\n if (initialData) {\n context.initialData = initialData;\n }\n rootElement = typeof id !== \"string\" ? id : document.getElementById(id || \"root\");\n if (!ReactDOM) {\n throw Error(\"The `bootstrap` need provide `ReactDOM` parameter\");\n }\n ModernRender = function(App2) {\n if (IS_REACT18) {\n if (root) {\n root.render(App2);\n } else if (ReactDOM.createRoot) {\n ReactDOM.createRoot(rootElement).render(App2);\n } else {\n throw Error(\"The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method\");\n }\n } else {\n if (!ReactDOM.render) {\n throw Error(\"The `bootstrap` `ReactDOM` parameter needs to provide the `render` method\");\n }\n ReactDOM.render(App2, rootElement);\n }\n };\n ModernHydrate = function(App2, callback) {\n if (IS_REACT18) {\n if (!ReactDOM.hydrateRoot) {\n throw Error(\"The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method\");\n }\n ReactDOM.hydrateRoot(rootElement, App2);\n } else {\n if (!ReactDOM.hydrate) {\n throw Error(\"The `bootstrap` `ReactDOM` parameter needs to provide the `hydrate` method\");\n }\n ReactDOM.hydrate(App2, rootElement, callback);\n }\n };\n return [\n 2,\n runner.client({\n App,\n context,\n ModernRender,\n ModernHydrate\n }, {\n onLast: function(param) {\n var App2 = param.App;\n ModernRender(/* @__PURE__ */ React.createElement(App2, {\n context\n }));\n }\n })\n ];\n case 2:\n throw Error(\"`bootstrap` needs id in browser environment, it needs to be string or element\");\n case 3:\n return [\n 3,\n 6\n ];\n case 4:\n Object.assign(context, {\n ssrContext: id,\n isBrowser: false,\n loaderManager: createLoaderManager({}, {\n skipNonStatic: id.staticGenerate,\n // if not static generate, only non-static loader can exec on prod env\n skipStatic: process.env.NODE_ENV === \"production\" && !id.staticGenerate\n })\n });\n isRedirectResponse = function(result) {\n if (typeof Response !== \"undefined\" && // fix: ssg workflow doesn't inject Web Response\n _instanceof(result, Response) && result.status >= 300 && result.status <= 399) {\n var status = result.status;\n var redirectUrl = result.headers.get(\"Location\") || \"/\";\n var ssrContext = context.ssrContext;\n if (ssrContext) {\n ssrContext.res.statusCode = status;\n ssrContext.res.setHeader(\"Location\", redirectUrl);\n ssrContext.redirection = ssrContext.redirection || {};\n ssrContext.redirection.status = status;\n ssrContext.redirection.url = redirectUrl;\n }\n return true;\n }\n return false;\n };\n return [\n 4,\n runInit(context)\n ];\n case 5:\n initialData1 = _state.sent();\n if (!isRedirectResponse(initialData1)) {\n context.initialData = initialData1;\n return [\n 2,\n runner.server({\n App,\n context\n })\n ];\n }\n _state.label = 6;\n case 6:\n return [\n 2\n ];\n }\n });\n });\n return function bootstrap2(BootApp, id, root, ReactDOM) {\n return _ref.apply(this, arguments);\n };\n}();\nvar useRuntimeContext = function() {\n var context = useContext(RuntimeReactContext);\n var memoizedContext = useMemo(function() {\n return context.runner.pickContext({\n context,\n pickedContext: {}\n }, {\n onLast: function(param) {\n var pickedContext = param.pickedContext;\n return pickedContext;\n }\n });\n }, [\n context\n ]);\n return memoizedContext;\n};\nexport {\n bootstrap,\n createApp,\n useRuntimeContext\n};\n","import { _ as _async_to_generator } from \"@swc/helpers/_/_async_to_generator\";\nimport { _ as _instanceof } from \"@swc/helpers/_/_instanceof\";\nimport { _ as _sliced_to_array } from \"@swc/helpers/_/_sliced_to_array\";\nimport { _ as _to_consumable_array } from \"@swc/helpers/_/_to_consumable_array\";\nimport { _ as _ts_generator } from \"@swc/helpers/_/_ts_generator\";\nimport invariant from \"invariant\";\nvar createGetId = function() {\n var idCache = /* @__PURE__ */ new Map();\n return function(objectId) {\n var cachedId = idCache.get(objectId);\n if (cachedId) {\n return cachedId;\n }\n var id = JSON.stringify(objectId);\n invariant(id, \"params should be not null value\");\n idCache.set(objectId, id);\n return id;\n };\n};\nvar LoaderStatus;\n(function(LoaderStatus2) {\n LoaderStatus2[LoaderStatus2[\"idle\"] = 0] = \"idle\";\n LoaderStatus2[LoaderStatus2[\"loading\"] = 1] = \"loading\";\n LoaderStatus2[LoaderStatus2[\"fulfilled\"] = 2] = \"fulfilled\";\n LoaderStatus2[LoaderStatus2[\"rejected\"] = 3] = \"rejected\";\n})(LoaderStatus || (LoaderStatus = {}));\nvar createLoader = function(id) {\n var initialData = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {\n loading: false,\n reloading: false,\n data: void 0,\n error: void 0\n }, loaderFn = arguments.length > 2 ? arguments[2] : void 0, skip = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false;\n var promise;\n var status = LoaderStatus.idle;\n var data = initialData.data, error = initialData.error;\n var hasLoaded = false;\n var handlers = /* @__PURE__ */ new Set();\n var load = function() {\n var _ref = _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n if (skip) {\n return [\n 2,\n promise\n ];\n }\n if (status === LoaderStatus.loading) {\n return [\n 2,\n promise\n ];\n }\n status = LoaderStatus.loading;\n notify();\n promise = loaderFn().then(function(value) {\n data = value;\n error = null;\n status = LoaderStatus.fulfilled;\n }).catch(function(e) {\n error = e;\n data = null;\n status = LoaderStatus.rejected;\n }).finally(function() {\n promise = null;\n hasLoaded = true;\n notify();\n });\n return [\n 2,\n promise\n ];\n });\n });\n return function load2() {\n return _ref.apply(this, arguments);\n };\n }();\n var getResult = function() {\n return {\n loading: !hasLoaded && status === LoaderStatus.loading,\n reloading: hasLoaded && status === LoaderStatus.loading,\n data,\n error: _instanceof(error, Error) ? \"\".concat(error.message) : error,\n // redundant fields for ssr log\n _error: error\n };\n };\n var notify = function() {\n _to_consumable_array(handlers).forEach(function(handler) {\n handler(status, getResult());\n });\n };\n var onChange = function(handler) {\n handlers.add(handler);\n return function() {\n handlers.delete(handler);\n };\n };\n return {\n get result() {\n return getResult();\n },\n get promise() {\n return promise;\n },\n onChange,\n load\n };\n};\nvar createLoaderManager = function(initialDataMap) {\n var managerOptions = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var _managerOptions_skipStatic = managerOptions.skipStatic, skipStatic = _managerOptions_skipStatic === void 0 ? false : _managerOptions_skipStatic, _managerOptions_skipNonStatic = managerOptions.skipNonStatic, skipNonStatic = _managerOptions_skipNonStatic === void 0 ? false : _managerOptions_skipNonStatic;\n var loadersMap = /* @__PURE__ */ new Map();\n var getId = createGetId();\n var add = function(loaderFn, loaderOptions) {\n var id = getId(loaderOptions.params);\n var loader = loadersMap.get(id);\n var cache = loaderOptions._cache;\n if (!loader || cache === false) {\n var ignoreNonStatic = skipNonStatic && !loaderOptions.static;\n var ignoreStatic = skipStatic && loaderOptions.static;\n var skipExec = ignoreNonStatic || ignoreStatic;\n loader = createLoader(\n id,\n typeof initialDataMap[id] !== \"undefined\" ? initialDataMap[id] : {\n data: loaderOptions.initialData\n },\n loaderFn,\n // Todo whether static loader is exec when CSR\n skipExec\n );\n loadersMap.set(id, loader);\n }\n return id;\n };\n var get = function(id) {\n return loadersMap.get(id);\n };\n var hasPendingLoaders = function() {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = loadersMap.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var loader = _step.value;\n var promise = loader.promise;\n if (_instanceof(promise, Promise)) {\n return true;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return false;\n };\n var awaitPendingLoaders = function() {\n var _ref = _async_to_generator(function() {\n var pendingLoaders, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _step_value, id, loader, promise;\n return _ts_generator(this, function(_state) {\n switch (_state.label) {\n case 0:\n pendingLoaders = [];\n _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (_iterator = loadersMap[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n _step_value = _sliced_to_array(_step.value, 2), id = _step_value[0], loader = _step_value[1];\n promise = loader.promise;\n if (_instanceof(promise, Promise)) {\n pendingLoaders.push([\n id,\n loader\n ]);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return [\n 4,\n Promise.all(pendingLoaders.map(function(item) {\n return item[1].promise;\n }))\n ];\n case 1:\n _state.sent();\n return [\n 2,\n pendingLoaders.reduce(function(res, param) {\n var _param = _sliced_to_array(param, 2), id2 = _param[0], loader2 = _param[1];\n res[id2] = loader2.result;\n return res;\n }, {})\n ];\n }\n });\n });\n return function awaitPendingLoaders2() {\n return _ref.apply(this, arguments);\n };\n }();\n return {\n hasPendingLoaders,\n awaitPendingLoaders,\n add,\n get\n };\n};\nexport {\n LoaderStatus,\n createLoaderManager\n};\n","import { _ as _async_to_generator } from \"@swc/helpers/_/_async_to_generator\";\nimport { _ as _ts_generator } from \"@swc/helpers/_/_ts_generator\";\nimport { createManager, createPipeline, createAsyncPipeline } from \"@modern-js/plugin\";\nimport { createLoaderManager } from \"./loader/loaderManager\";\nvar hoc = createPipeline();\nvar provide = createPipeline();\nvar client = createAsyncPipeline();\nvar server = createAsyncPipeline();\nvar init = createAsyncPipeline();\nvar pickContext = createPipeline();\nvar runtimeHooks = {\n hoc,\n provide,\n client,\n server,\n init,\n pickContext\n};\nvar createRuntime = function() {\n return createManager(runtimeHooks);\n};\nvar registerInit = function(App, _init) {\n var originalInit = App.init;\n App.init = function() {\n var _ref = _async_to_generator(function(context) {\n return _ts_generator(this, function(_state) {\n switch (_state.label) {\n case 0:\n if (!context.loaderManager) {\n context.loaderManager = createLoaderManager({});\n }\n return [\n 4,\n Promise.all([\n originalInit === null || originalInit === void 0 ? void 0 : originalInit(context),\n _init === null || _init === void 0 ? void 0 : _init(context)\n ])\n ];\n case 1:\n _state.sent();\n return [\n 2\n ];\n }\n });\n });\n return function(context) {\n return _ref.apply(this, arguments);\n };\n }();\n};\nvar runtime = createRuntime();\nvar createPlugin = runtime.createPlugin;\nexport {\n createPlugin,\n createRuntime,\n registerInit,\n runtime\n};\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nvar DefaultNotFound = function() {\n return /* @__PURE__ */ _jsx(\"div\", {\n style: {\n margin: \"150px auto\",\n textAlign: \"center\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n children: \"404\"\n });\n};\nexport {\n DefaultNotFound\n};\n","function DeferredDataScripts_default() {\n return null;\n}\n;\nexport {\n DeferredDataScripts_default as default\n};\n","import { createWaterfall } from \"@modern-js/plugin\";\nvar modifyRoutes = createWaterfall();\nexport {\n modifyRoutes\n};\n","import { useRouteLoaderData as useRouteData } from \"@modern-js/runtime-utils/router\";\nimport { routerPlugin } from \"./plugin\";\nimport { renderRoutes } from \"./utils\";\nvar runtime_default = routerPlugin;\nimport { modifyRoutes } from \"./plugin\";\nexport * from \"./withRouter\";\nimport { Link, NavLink } from \"./PrefetchLink\";\nvar useRouteLoaderData = function(routeId) {\n var realRouteId = routeId.replace(/\\[(.*?)\\]/g, \"($1)\");\n return useRouteData(realRouteId);\n};\nimport {\n createBrowserRouter,\n createHashRouter,\n createMemoryRouter,\n RouterProvider,\n BrowserRouter,\n HashRouter,\n MemoryRouter,\n Router,\n Await,\n Form,\n Navigate,\n Outlet,\n Route,\n Routes,\n ScrollRestoration,\n useActionData,\n useAsyncError,\n useAsyncValue,\n useBeforeUnload,\n useFetcher,\n useFetchers,\n useFormAction,\n useHref,\n useInRouterContext,\n useLinkClickHandler,\n useLoaderData,\n useLocation,\n useMatch,\n useMatches,\n useNavigate,\n useNavigation,\n useNavigationType,\n useOutlet,\n useOutletContext,\n useParams,\n useResolvedPath,\n useRevalidator,\n useRouteError,\n useRoutes,\n useSearchParams,\n useSubmit,\n createRoutesFromChildren,\n createRoutesFromElements,\n createSearchParams,\n generatePath,\n isRouteErrorResponse,\n matchPath,\n matchRoutes,\n renderMatches,\n resolvePath,\n createPath,\n unstable_useBlocker,\n unstable_usePrompt,\n defer,\n json,\n redirect\n} from \"@modern-js/runtime-utils/router\";\nexport {\n Await,\n BrowserRouter,\n Form,\n HashRouter,\n Link,\n MemoryRouter,\n NavLink,\n Navigate,\n Outlet,\n Route,\n Router,\n RouterProvider,\n Routes,\n ScrollRestoration,\n createBrowserRouter,\n createHashRouter,\n createMemoryRouter,\n createPath,\n createRoutesFromChildren,\n createRoutesFromElements,\n createSearchParams,\n runtime_default as default,\n defer,\n generatePath,\n isRouteErrorResponse,\n json,\n matchPath,\n matchRoutes,\n modifyRoutes,\n redirect,\n renderMatches,\n renderRoutes,\n resolvePath,\n unstable_useBlocker,\n unstable_usePrompt,\n useActionData,\n useAsyncError,\n useAsyncValue,\n useBeforeUnload,\n useFetcher,\n useFetchers,\n useFormAction,\n useHref,\n useInRouterContext,\n useLinkClickHandler,\n useLoaderData,\n useLocation,\n useMatch,\n useMatches,\n useNavigate,\n useNavigation,\n useNavigationType,\n useOutlet,\n useOutletContext,\n useParams,\n useResolvedPath,\n useRevalidator,\n useRouteError,\n useRouteLoaderData,\n useRoutes,\n useSearchParams,\n useSubmit\n};\n","import { _ as _object_spread } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array } from \"@swc/helpers/_/_to_consumable_array\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useContext, useMemo } from \"react\";\nimport { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from \"@modern-js/runtime-utils/router\";\nimport hoistNonReactStatics from \"hoist-non-react-statics\";\nimport { parsedJSONFromElement } from \"@modern-js/runtime-utils/browser\";\nimport { RuntimeReactContext } from \"../../core\";\nimport { modifyRoutes as modifyRoutesHook } from \"./hooks\";\nimport { deserializeErrors, renderRoutes, urlJoin } from \"./utils\";\nvar finalRouteConfig = {\n routes: []\n};\nvar beforeCreateRouter = true;\nfunction modifyRoutes(modifyFunction) {\n if (beforeCreateRouter) {\n var originRoutes = finalRouteConfig.routes;\n var newRoutes = modifyFunction(originRoutes);\n finalRouteConfig.routes = newRoutes;\n } else {\n console.error(\"It is not allowed to modify routes config after create router.\");\n }\n}\nvar routerPlugin = function(param) {\n var _param_serverBase = param.serverBase, serverBase = _param_serverBase === void 0 ? [] : _param_serverBase, _param_supportHtml5History = param.supportHtml5History, supportHtml5History = _param_supportHtml5History === void 0 ? true : _param_supportHtml5History, _param_basename = param.basename, basename = _param_basename === void 0 ? \"\" : _param_basename, routesConfig = param.routesConfig, createRoutes = param.createRoutes;\n var select = function(pathname) {\n return serverBase.find(function(baseUrl) {\n return pathname.search(baseUrl) === 0;\n }) || \"/\";\n };\n var routes = [];\n finalRouteConfig = routesConfig;\n window._SERVER_DATA = parsedJSONFromElement(\"__MODERN_SERVER_DATA__\");\n return {\n name: \"@modern-js/plugin-router\",\n registerHook: {\n modifyRoutes: modifyRoutesHook\n },\n setup: function(api) {\n return {\n init: function init(param2, next) {\n var context = param2.context;\n context.router = {\n useMatches,\n useLocation\n };\n Object.defineProperty(context, \"routes\", {\n get: function get() {\n return routes;\n }\n });\n return next({\n context\n });\n },\n hoc: function(param2, next) {\n var App = param2.App;\n if (!finalRouteConfig && !createRoutes) {\n return next({\n App\n });\n }\n var getRouteApp = function() {\n var useCreateRouter = function(props) {\n var _window__SERVER_DATA;\n var baseUrl = ((_window__SERVER_DATA = window._SERVER_DATA) === null || _window__SERVER_DATA === void 0 ? void 0 : _window__SERVER_DATA.router.baseUrl) || select(location.pathname);\n var _basename = baseUrl === \"/\" ? urlJoin(baseUrl, basename) : baseUrl;\n var hydrationData = window._ROUTER_DATA;\n var runtimeContext = useContext(RuntimeReactContext);\n var getBlockNavState = runtimeContext.unstable_getBlockNavState;\n return useMemo(function() {\n if (hydrationData === null || hydrationData === void 0 ? void 0 : hydrationData.errors) {\n hydrationData = _object_spread_props(_object_spread({}, hydrationData), {\n errors: deserializeErrors(hydrationData.errors)\n });\n }\n routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes({\n routesConfig: finalRouteConfig,\n props\n }));\n var runner = api.useHookRunners();\n routes = runner.modifyRoutes(routes);\n var router = supportHtml5History ? createBrowserRouter(routes, {\n basename: _basename,\n hydrationData\n }) : createHashRouter(routes, {\n basename: _basename,\n hydrationData\n });\n var originSubscribe = router.subscribe;\n router.subscribe = function(listener) {\n var wrapedListener = function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var blockRoute = getBlockNavState ? getBlockNavState() : false;\n if (blockRoute) {\n return;\n }\n return listener.apply(void 0, _to_consumable_array(args));\n };\n return originSubscribe(wrapedListener);\n };\n Object.defineProperty(runtimeContext, \"remixRouter\", {\n get: function get() {\n return router;\n },\n configurable: true\n });\n return router;\n }, [\n finalRouteConfig,\n props,\n _basename,\n hydrationData,\n getBlockNavState\n ]);\n };\n return function(props) {\n beforeCreateRouter = false;\n var router = useCreateRouter(props);\n return /* @__PURE__ */ _jsx(App, _object_spread_props(_object_spread({}, props), {\n children: /* @__PURE__ */ _jsx(RouterProvider, {\n router\n })\n }));\n };\n };\n var RouteApp = getRouteApp();\n if (App) {\n RouteApp = hoistNonReactStatics(RouteApp, App);\n }\n if (routesConfig === null || routesConfig === void 0 ? void 0 : routesConfig.globalApp) {\n return next({\n App: hoistNonReactStatics(RouteApp, routesConfig.globalApp)\n });\n }\n return next({\n App: RouteApp\n });\n },\n pickContext: function(param2, next) {\n var context = param2.context, pickedContext = param2.pickedContext;\n var remixRouter = context.remixRouter;\n if (!remixRouter) {\n return next({\n context,\n pickedContext\n });\n }\n var router = {\n navigate: remixRouter.navigate,\n get location() {\n return remixRouter.state.location;\n }\n };\n return next({\n context,\n pickedContext: _object_spread_props(_object_spread({}, pickedContext), {\n router\n })\n });\n }\n };\n }\n };\n};\nexport {\n beforeCreateRouter,\n finalRouteConfig,\n modifyRoutes,\n routerPlugin\n};\n","import { _ as _instanceof } from \"@swc/helpers/_/_instanceof\";\nimport { _ as _object_spread } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _object_without_properties } from \"@swc/helpers/_/_object_without_properties\";\nimport { _ as _sliced_to_array } from \"@swc/helpers/_/_sliced_to_array\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Route, isRouteErrorResponse } from \"@modern-js/runtime-utils/router\";\nimport { ErrorResponse } from \"@modern-js/runtime-utils/remix-router\";\nimport { renderNestedRoute } from \"@modern-js/runtime-utils/browser\";\nimport { DefaultNotFound } from \"./DefaultNotFound\";\nimport DeferredDataScripts from \"./DeferredDataScripts\";\nfunction getRouteComponents(routes, param) {\n var globalApp = param.globalApp, ssrMode = param.ssrMode, props = param.props, reporter = param.reporter;\n var Layout = function(_param) {\n var Component = _param.Component, props2 = _object_without_properties(_param, [\n \"Component\"\n ]);\n var GlobalLayout = globalApp;\n if (!GlobalLayout) {\n return /* @__PURE__ */ _jsx(Component, _object_spread({}, props2));\n }\n return /* @__PURE__ */ _jsx(GlobalLayout, _object_spread({\n Component\n }, props2));\n };\n var routeElements = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = routes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var route = _step.value;\n if (route.type === \"nested\") {\n var routeElement = renderNestedRoute(route, {\n DeferredDataComponent: ssrMode === \"stream\" ? DeferredDataScripts : void 0,\n props,\n reporter\n });\n routeElements.push(routeElement);\n } else {\n var routeElement1 = /* @__PURE__ */ _jsx(Route, {\n path: route.path,\n element: /* @__PURE__ */ _jsx(Layout, {\n Component: route.component\n })\n }, route.path);\n routeElements.push(routeElement1);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n routeElements.push(/* @__PURE__ */ _jsx(Route, {\n path: \"*\",\n element: /* @__PURE__ */ _jsx(DefaultNotFound, {})\n }, \"*\"));\n return routeElements;\n}\nfunction renderRoutes(param) {\n var routesConfig = param.routesConfig, props = param.props, ssrMode = param.ssrMode, reporter = param.reporter;\n if (!routesConfig) {\n return null;\n }\n var routes = routesConfig.routes, globalApp = routesConfig.globalApp;\n if (!routes) {\n return null;\n }\n var routeElements = getRouteComponents(routes, {\n globalApp,\n ssrMode,\n props,\n reporter\n });\n return routeElements;\n}\nfunction getLocation(serverContext) {\n var _url_replace;\n var _ref = (serverContext === null || serverContext === void 0 ? void 0 : serverContext.request) || {}, pathname = _ref.pathname, url = _ref.url;\n var cleanUrl = url === null || url === void 0 ? void 0 : (_url_replace = url.replace(\"http://\", \"\")) === null || _url_replace === void 0 ? void 0 : _url_replace.replace(\"https://\", \"\");\n var index = (cleanUrl || \"\").indexOf(pathname);\n if (index === -1) {\n return pathname;\n }\n return cleanUrl.substring(index);\n}\nvar urlJoin = function() {\n for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {\n parts[_key] = arguments[_key];\n }\n var separator = \"/\";\n var replace = new RegExp(\"\".concat(separator, \"{1,}\"), \"g\");\n return standardSlash(parts.join(separator).replace(replace, separator));\n};\nfunction standardSlash(str) {\n var addr = str;\n if (!addr || typeof addr !== \"string\") {\n return addr;\n }\n if (addr.startsWith(\".\")) {\n addr = addr.slice(1);\n }\n if (!addr.startsWith(\"/\")) {\n addr = \"/\".concat(addr);\n }\n if (addr.endsWith(\"/\") && addr !== \"/\") {\n addr = addr.slice(0, addr.length - 1);\n }\n return addr;\n}\nfunction serializeErrors(errors) {\n if (!errors) {\n return null;\n }\n var entries = Object.entries(errors);\n var serialized = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], val = _step_value[1];\n if (isRouteErrorResponse(val)) {\n serialized[key] = _object_spread_props(_object_spread({}, val), {\n __type: \"RouteErrorResponse\"\n });\n } else if (_instanceof(val, Error)) {\n serialized[key] = {\n message: val.message,\n stack: val.stack,\n __type: \"Error\"\n };\n } else {\n serialized[key] = val;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return serialized;\n}\nfunction deserializeErrors(errors) {\n if (!errors) {\n return null;\n }\n var entries = Object.entries(errors);\n var serialized = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], val = _step_value[1];\n if (val && val.__type === \"RouteErrorResponse\") {\n serialized[key] = new ErrorResponse(val.status, val.statusText, val.data, val.internal === true);\n } else if (val && val.__type === \"Error\") {\n var error = new Error(val.message);\n error.stack = val.stack;\n serialized[key] = error;\n } else {\n serialized[key] = val;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return serialized;\n}\nexport {\n deserializeErrors,\n getLocation,\n getRouteComponents,\n renderRoutes,\n serializeErrors,\n standardSlash,\n urlJoin\n};\n","import { createContext } from \"react\";\nvar RuntimeReactContext = createContext({});\nvar ServerRouterContext = createContext({});\nexport {\n RuntimeReactContext,\n ServerRouterContext\n};\n","// src/farrow-pipeline/index.ts\nimport { _ as _define_property } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _to_consumable_array } from \"@swc/helpers/_/_to_consumable_array\";\n\n// src/farrow-pipeline/context.ts\nvar createContext = function(value) {\n var currentValue = value;\n return {\n use: function() {\n return {\n get value() {\n return currentValue;\n },\n set value(v) {\n currentValue = v;\n }\n };\n },\n get: function() {\n return currentValue;\n },\n set: function(v1) {\n currentValue = v1;\n }\n };\n};\n\n// src/farrow-pipeline/counter.ts\nvar createCounter = function(callback) {\n var dispatch = function(index, input) {\n var next = function() {\n var nextInput = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : input;\n return dispatch(index + 1, nextInput);\n };\n return callback(index, input, next);\n };\n return {\n start: function(input) {\n return dispatch(0, input);\n },\n dispatch\n };\n};\n\n// src/farrow-pipeline/index.ts\nvar isPipeline = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[PipelineSymbol]);\n};\nvar PipelineSymbol = Symbol.for(\"MODERN_PIPELINE\");\nvar getMiddleware = function(input) {\n if (typeof input === \"function\") {\n return input;\n } else if (input && typeof input.middleware === \"function\") {\n return input.middleware;\n }\n throw new Error(\"\".concat(input, \" is not a Middleware\"));\n};\nvar createPipeline = function() {\n var middlewares = [];\n var use = function() {\n for (var _len = arguments.length, inputs = new Array(_len), _key = 0; _key < _len; _key++) {\n inputs[_key] = arguments[_key];\n }\n var _middlewares;\n (_middlewares = middlewares).push.apply(_middlewares, _to_consumable_array(inputs.map(getMiddleware)));\n return pipeline;\n };\n var createCurrentCounter = function(onLast) {\n return createCounter(function(index, input, next) {\n if (index >= middlewares.length) {\n if (onLast) {\n return onLast(input);\n }\n throw new Error(\"Expect returning a value, but all middlewares just calling next()\");\n }\n return middlewares[index](input, next);\n });\n };\n var currentCounter = createCurrentCounter();\n var getCounter = function(options) {\n if (!options) {\n return currentCounter;\n }\n return createCurrentCounter(options === null || options === void 0 ? void 0 : options.onLast);\n };\n var run = function(input, options) {\n return getCounter(options).start(input);\n };\n var middleware = function(input, next) {\n return run(input, {\n onLast: next\n });\n };\n var _obj;\n var pipeline = (_obj = {}, _define_property(_obj, PipelineSymbol, true), _define_property(_obj, \"use\", use), _define_property(_obj, \"run\", run), _define_property(_obj, \"middleware\", middleware), _obj);\n return pipeline;\n};\nvar createAsyncPipeline = function() {\n var pipeline = createPipeline();\n return _object_spread({}, pipeline);\n};\n\n// src/waterfall/sync.ts\nimport { _ as _define_property2 } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread2 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array2 } from \"@swc/helpers/_/_to_consumable_array\";\nvar WATERFALL_SYMBOL = Symbol.for(\"MODERN_WATERFALL\");\nvar getBrook = function(input) {\n if (typeof input === \"function\") {\n return input;\n } else if (input && typeof input.middleware === \"function\") {\n return input.middleware;\n }\n throw new Error(\"\".concat(input, \" is not a Brook or { brook: Brook }\"));\n};\nvar createWaterfall = function() {\n var pipeline = createPipeline();\n var use = function() {\n for (var _len = arguments.length, brooks = new Array(_len), _key = 0; _key < _len; _key++) {\n brooks[_key] = arguments[_key];\n }\n var _pipeline;\n (_pipeline = pipeline).use.apply(_pipeline, _to_consumable_array2(brooks.map(getBrook).map(mapBrookToMiddleware)));\n return waterfall;\n };\n var run = function(input, options) {\n return pipeline.run(input, _object_spread_props(_object_spread2({}, options), {\n onLast: function(input2) {\n return input2;\n }\n }));\n };\n var middleware = function(input) {\n return pipeline.run(input, {\n onLast: function(input2) {\n return input2;\n }\n });\n };\n var waterfall = _object_spread_props(_object_spread2({}, pipeline), _define_property2({\n use,\n run,\n middleware\n }, WATERFALL_SYMBOL, true));\n return waterfall;\n};\nvar isWaterfall = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[WATERFALL_SYMBOL]);\n};\nvar mapBrookToMiddleware = function(brook) {\n return function(input, next) {\n return next(brook(input));\n };\n};\n\n// src/waterfall/async.ts\nimport { _ as _define_property3 } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread3 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props2 } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array3 } from \"@swc/helpers/_/_to_consumable_array\";\nvar ASYNC_WATERFALL_SYMBOL = Symbol.for(\"MODERN_ASYNC_WATERFALL\");\nvar getAsyncBrook = function(input) {\n if (typeof input === \"function\") {\n return input;\n }\n if (input && typeof input.middleware === \"function\") {\n return input.middleware;\n }\n throw new Error(\"\".concat(input, \" is not a AsyncBrook or { brook: AsyncBrook }\"));\n};\nvar createAsyncWaterfall = function() {\n var pipeline = createAsyncPipeline();\n var use = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n var _pipeline;\n (_pipeline = pipeline).use.apply(_pipeline, _to_consumable_array3(input.map(getAsyncBrook).map(mapAsyncBrookToAsyncMiddleware)));\n return waterfall;\n };\n var run = function(input, options) {\n return pipeline.run(input, _object_spread_props2(_object_spread3({}, options), {\n onLast: function(input2) {\n return input2;\n }\n }));\n };\n var middleware = function(input) {\n return pipeline.run(input, {\n onLast: function(input2) {\n return input2;\n }\n });\n };\n var waterfall = _object_spread_props2(_object_spread3({}, pipeline), _define_property3({\n use,\n run,\n middleware\n }, ASYNC_WATERFALL_SYMBOL, true));\n return waterfall;\n};\nvar isAsyncWaterfall = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[ASYNC_WATERFALL_SYMBOL]);\n};\nvar mapAsyncBrookToAsyncMiddleware = function(brook) {\n return function(input, next) {\n return Promise.resolve(brook(input)).then(function(result) {\n return next(result);\n });\n };\n};\n\n// src/workflow/sync.ts\nimport { _ as _define_property4 } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread4 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props3 } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array4 } from \"@swc/helpers/_/_to_consumable_array\";\nvar WORKFLOW_SYMBOL = Symbol.for(\"MODERN_WORKFLOW\");\nvar createWorkflow = function() {\n var pipeline = createPipeline();\n var use = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n var _pipeline;\n (_pipeline = pipeline).use.apply(_pipeline, _to_consumable_array4(input.map(mapWorkerToMiddleware)));\n return workflow;\n };\n var run = function(input) {\n var result = pipeline.run(input, {\n onLast: function() {\n return [];\n }\n });\n return result.filter(Boolean);\n };\n var workflow = _object_spread_props3(_object_spread4({}, pipeline), _define_property4({\n use,\n run\n }, WORKFLOW_SYMBOL, true));\n return workflow;\n};\nvar isWorkflow = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[WORKFLOW_SYMBOL]);\n};\nvar mapWorkerToMiddleware = function(worker) {\n return function(input, next) {\n return [\n worker(input)\n ].concat(_to_consumable_array4(next(input)));\n };\n};\n\n// src/workflow/parallel.ts\nimport { _ as _define_property5 } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread5 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props4 } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array5 } from \"@swc/helpers/_/_to_consumable_array\";\nvar PARALLEL_WORKFLOW_SYMBOL = Symbol.for(\"MODERN_PARALLEL_WORKFLOW\");\nvar isParallelWorkflow = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[PARALLEL_WORKFLOW_SYMBOL]);\n};\nvar createParallelWorkflow = function() {\n var pipeline = createPipeline();\n var use = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n var _pipeline;\n (_pipeline = pipeline).use.apply(_pipeline, _to_consumable_array5(input.map(mapParallelWorkerToAsyncMiddleware)));\n return workflow;\n };\n var run = function(input) {\n return Promise.all(pipeline.run(input, {\n onLast: function() {\n return [];\n }\n })).then(function(result) {\n return result.filter(Boolean);\n });\n };\n var workflow = _object_spread_props4(_object_spread5({}, pipeline), _define_property5({\n run,\n use\n }, PARALLEL_WORKFLOW_SYMBOL, true));\n return workflow;\n};\nvar mapParallelWorkerToAsyncMiddleware = function(worker) {\n return function(input, next) {\n return [\n worker(input)\n ].concat(_to_consumable_array5(next(input)));\n };\n};\n\n// src/workflow/async.ts\nimport { _ as _define_property6 } from \"@swc/helpers/_/_define_property\";\nimport { _ as _object_spread6 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props5 } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _to_consumable_array6 } from \"@swc/helpers/_/_to_consumable_array\";\nvar ASYNC_WORKFLOW_SYMBOL = Symbol.for(\"MODERN_ASYNC_WORKFLOW\");\nvar isPromise = function(obj) {\n return obj && typeof obj.then === \"function\";\n};\nvar isAsyncWorkflow = function(input) {\n return Boolean(input === null || input === void 0 ? void 0 : input[ASYNC_WORKFLOW_SYMBOL]);\n};\nvar createAsyncWorkflow = function() {\n var pipeline = createAsyncPipeline();\n var use = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n var _pipeline;\n (_pipeline = pipeline).use.apply(_pipeline, _to_consumable_array6(input.map(mapAsyncWorkerToAsyncMiddleware)));\n return workflow;\n };\n var run = function(input) {\n var result = pipeline.run(input, {\n onLast: function() {\n return [];\n }\n });\n if (isPromise(result)) {\n return result.then(function(result2) {\n return result2.filter(Boolean);\n });\n }\n return result.filter(Boolean);\n };\n var workflow = _object_spread_props5(_object_spread6({}, pipeline), _define_property6({\n use,\n run\n }, ASYNC_WORKFLOW_SYMBOL, true));\n return workflow;\n};\nvar mapAsyncWorkerToAsyncMiddleware = function(worker) {\n return function(input, next) {\n return Promise.resolve(worker(input)).then(function(result) {\n return Promise.resolve(next(input)).then(function(nextResult) {\n return [\n result\n ].concat(_to_consumable_array6(nextResult));\n });\n });\n };\n};\n\n// src/manager/sync.ts\nimport { _ as _object_spread7 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props6 } from \"@swc/helpers/_/_object_spread_props\";\n\n// src/manager/shared.ts\nimport { pluginDagSort } from \"@modern-js/utils/universal/plugin-dag-sort\";\nvar checkPlugins = function(plugins) {\n if (process.env.NODE_ENV !== \"production\") {\n plugins.forEach(function(origin) {\n origin.rivals.forEach(function(rival) {\n plugins.forEach(function(plugin) {\n if (rival === plugin.name) {\n throw new Error(\"\".concat(origin.name, \" has rival \").concat(plugin.name));\n }\n });\n });\n origin.required.forEach(function(required) {\n if (!plugins.some(function(plugin) {\n return plugin.name === required;\n })) {\n throw new Error(\"The plugin: \".concat(required, \" is required when plugin: \").concat(origin.name, \" is exist.\"));\n }\n });\n });\n }\n};\nfunction sortPlugins(input) {\n return pluginDagSort(input.slice());\n}\nvar includePlugin = function(plugins, input) {\n return plugins.some(function(plugin) {\n return plugin.name === input.name;\n });\n};\nvar isObject = function(obj) {\n return obj !== null && typeof obj === \"object\";\n};\nvar hasOwnProperty = function(obj, prop) {\n return obj.hasOwnProperty(prop);\n};\n\n// src/manager/sync.ts\nvar SYNC_PLUGIN_SYMBOL = \"SYNC_PLUGIN_SYMBOL\";\nvar DEFAULT_OPTIONS = {\n name: \"untitled\",\n pre: [],\n post: [],\n rivals: [],\n required: [],\n usePlugins: [],\n registerHook: {}\n};\nvar createManager = function(hooks, api) {\n var index = 0;\n var runners;\n var currentHooks = _object_spread7({}, hooks);\n var useRunner = function() {\n return runners;\n };\n var registerHook = function(extraHooks) {\n currentHooks = _object_spread7({}, extraHooks, currentHooks);\n };\n var isPlugin = function(input) {\n return isObject(input) && hasOwnProperty(input, SYNC_PLUGIN_SYMBOL) && input[SYNC_PLUGIN_SYMBOL] === SYNC_PLUGIN_SYMBOL;\n };\n var pluginAPI = _object_spread_props6(_object_spread7({}, api), {\n useHookRunners: useRunner\n });\n var clone = function(overrideAPI) {\n var plugins = [];\n var addPlugin = function(plugin) {\n if (!includePlugin(plugins, plugin)) {\n plugins.push(_object_spread7({}, plugin));\n }\n };\n var usePlugin = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n input.forEach(function(plugin) {\n if (isPlugin(plugin)) {\n addPlugin(plugin);\n } else if (typeof plugin === \"function\") {\n var options = plugin();\n addPlugin(createPlugin(options.setup, options));\n } else if (isObject(plugin)) {\n addPlugin(createPlugin(plugin.setup, plugin));\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"Unknown plugin: \".concat(JSON.stringify(plugin)));\n }\n });\n return manager;\n };\n var createPlugin = function() {\n var setup = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function() {\n }, options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var _options_usePlugins;\n if ((_options_usePlugins = options.usePlugins) === null || _options_usePlugins === void 0 ? void 0 : _options_usePlugins.length) {\n options.usePlugins.forEach(function(plugin) {\n usePlugin(createPlugin(plugin.setup, plugin));\n });\n }\n if (options.registerHook) {\n registerHook(options.registerHook);\n }\n return _object_spread_props6(_object_spread7(_object_spread_props6(_object_spread7({}, DEFAULT_OPTIONS), {\n name: \"No.\".concat(index++, \" plugin\")\n }), options), {\n SYNC_PLUGIN_SYMBOL,\n setup\n });\n };\n var clear = function() {\n plugins = [];\n };\n var init = function() {\n var sortedPlugins = sortPlugins(plugins);\n var mergedPluginAPI = _object_spread7({}, pluginAPI, overrideAPI);\n checkPlugins(sortedPlugins);\n var hooksList = sortedPlugins.map(function(plugin) {\n return plugin.setup(mergedPluginAPI);\n });\n runners = generateRunner(hooksList, currentHooks);\n return runners;\n };\n var run = function(cb) {\n return cb();\n };\n var manager = {\n createPlugin,\n isPlugin,\n usePlugin,\n init,\n clear,\n run,\n registerHook,\n useRunner,\n clone\n };\n return manager;\n };\n return clone();\n};\nvar generateRunner = function(hooksList, hooksMap) {\n var runner = {};\n var cloneShape = cloneHooksMap(hooksMap);\n if (hooksMap) {\n var _loop = function(key2) {\n hooksList.forEach(function(hooks) {\n if (hooks === null || hooks === void 0 ? void 0 : hooks[key2]) {\n cloneShape[key2].use(hooks[key2]);\n }\n });\n runner[key2] = function(input, options) {\n return cloneShape[key2].run(input, _object_spread7({}, options));\n };\n };\n for (var key in cloneShape)\n _loop(key);\n }\n return runner;\n};\nvar cloneHook = function(hook) {\n if (isWaterfall(hook)) {\n return createWaterfall();\n }\n if (isAsyncWaterfall(hook)) {\n return createAsyncWaterfall();\n }\n if (isWorkflow(hook)) {\n return createWorkflow();\n }\n if (isAsyncWorkflow(hook)) {\n return createAsyncWorkflow();\n }\n if (isParallelWorkflow(hook)) {\n return createParallelWorkflow();\n }\n if (isPipeline(hook)) {\n return createPipeline();\n }\n throw new Error(\"Unknown hook: \".concat(hook));\n};\nvar cloneHooksMap = function(record) {\n if (!record) {\n return record;\n }\n var result = {};\n for (var key in record) {\n result[key] = cloneHook(record[key]);\n }\n return result;\n};\n\n// src/manager/async.ts\nimport { _ as _async_to_generator } from \"@swc/helpers/_/_async_to_generator\";\nimport { _ as _object_spread8 } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props7 } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _ts_generator } from \"@swc/helpers/_/_ts_generator\";\nvar ASYNC_PLUGIN_SYMBOL = \"ASYNC_PLUGIN_SYMBOL\";\nvar createAsyncManager = function(hooks, api) {\n var index = 0;\n var runners;\n var currentHooks = _object_spread8({}, hooks);\n var useRunner = function() {\n return runners;\n };\n var registerHook = function(extraHooks) {\n currentHooks = _object_spread8({}, extraHooks, currentHooks);\n };\n var isPlugin = function(input) {\n return isObject(input) && hasOwnProperty(input, ASYNC_PLUGIN_SYMBOL) && input[ASYNC_PLUGIN_SYMBOL] === ASYNC_PLUGIN_SYMBOL;\n };\n var pluginAPI = _object_spread_props7(_object_spread8({}, api), {\n useHookRunners: useRunner\n });\n var clone = function(overrideAPI) {\n var plugins = [];\n var addPlugin = function(plugin) {\n if (!includePlugin(plugins, plugin)) {\n plugins.push(_object_spread8({}, plugin));\n }\n };\n var usePlugin = function() {\n for (var _len = arguments.length, input = new Array(_len), _key = 0; _key < _len; _key++) {\n input[_key] = arguments[_key];\n }\n input.forEach(function(plugin) {\n if (isPlugin(plugin)) {\n addPlugin(plugin);\n } else if (typeof plugin === \"function\") {\n var options = plugin();\n addPlugin(createPlugin(options.setup, options));\n } else if (isObject(plugin)) {\n addPlugin(createPlugin(plugin.setup, plugin));\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"Unknown plugin: \".concat(JSON.stringify(plugin)));\n }\n });\n return manager;\n };\n var createPlugin = function() {\n var setup = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function() {\n }, options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var _options_usePlugins;\n if ((_options_usePlugins = options.usePlugins) === null || _options_usePlugins === void 0 ? void 0 : _options_usePlugins.length) {\n options.usePlugins.forEach(function(plugin) {\n usePlugin(createPlugin(plugin.setup, plugin));\n });\n }\n if (options.registerHook) {\n registerHook(options.registerHook);\n }\n return _object_spread_props7(_object_spread8(_object_spread_props7(_object_spread8({}, DEFAULT_OPTIONS), {\n name: \"No.\".concat(index++, \" plugin\")\n }), options), {\n ASYNC_PLUGIN_SYMBOL,\n setup\n });\n };\n var clear = function() {\n plugins = [];\n };\n var init = function() {\n var _ref = _async_to_generator(function() {\n var sortedPlugins, mergedPluginAPI, hooksList, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, plugin, _, err;\n return _ts_generator(this, function(_state) {\n switch (_state.label) {\n case 0:\n sortedPlugins = sortPlugins(plugins);\n mergedPluginAPI = _object_spread8({}, pluginAPI, overrideAPI);\n checkPlugins(sortedPlugins);\n hooksList = [];\n _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 6,\n 7,\n 8\n ]);\n _iterator = sortedPlugins[Symbol.iterator]();\n _state.label = 2;\n case 2:\n if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done))\n return [\n 3,\n 5\n ];\n plugin = _step.value;\n _ = hooksList.push;\n return [\n 4,\n plugin.setup(mergedPluginAPI)\n ];\n case 3:\n _.apply(hooksList, [\n _state.sent()\n ]);\n _state.label = 4;\n case 4:\n _iteratorNormalCompletion = true;\n return [\n 3,\n 2\n ];\n case 5:\n return [\n 3,\n 8\n ];\n case 6:\n err = _state.sent();\n _didIteratorError = true;\n _iteratorError = err;\n return [\n 3,\n 8\n ];\n case 7:\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n return [\n 7\n ];\n case 8:\n runners = generateRunner(hooksList, currentHooks);\n return [\n 2,\n runners\n ];\n }\n });\n });\n return function init2() {\n return _ref.apply(this, arguments);\n };\n }();\n var run = function(cb) {\n return cb();\n };\n var manager = {\n createPlugin,\n isPlugin,\n usePlugin,\n init,\n run,\n clear,\n clone,\n registerHook,\n useRunner\n };\n return manager;\n };\n return clone();\n};\nexport {\n DEFAULT_OPTIONS,\n cloneHook,\n cloneHooksMap,\n createAsyncManager,\n createAsyncPipeline,\n createAsyncWaterfall,\n createAsyncWorkflow,\n createContext,\n createManager,\n createParallelWorkflow,\n createPipeline,\n createWaterfall,\n createWorkflow,\n generateRunner,\n getAsyncBrook,\n getBrook,\n isAsyncWaterfall,\n isAsyncWorkflow,\n isParallelWorkflow,\n isPipeline,\n isWaterfall,\n isWorkflow\n};\n","import { _ as _async_to_generator } from \"@swc/helpers/_/_async_to_generator\";\nimport { _ as _object_spread } from \"@swc/helpers/_/_object_spread\";\nimport { _ as _object_spread_props } from \"@swc/helpers/_/_object_spread_props\";\nimport { _ as _ts_generator } from \"@swc/helpers/_/_ts_generator\";\nimport { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Suspense } from \"react\";\nimport { createRoutesFromElements, Outlet, Route } from \"react-router-dom\";\nimport { LOADER_REPORTER_NAME } from \"@modern-js/utils/universal/constants\";\nimport { time } from \"../time\";\nvar transformNestedRoutes = function(routes, reporter) {\n var routeElements = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = routes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var route = _step.value;\n var routeElement = renderNestedRoute(route, {\n reporter\n });\n routeElements.push(routeElement);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return createRoutesFromElements(routeElements);\n};\nvar renderNestedRoute = function(nestedRoute) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var children = nestedRoute.children, index = nestedRoute.index, id = nestedRoute.id, component = nestedRoute.component, isRoot = nestedRoute.isRoot, lazyImport = nestedRoute.lazyImport, config = nestedRoute.config, handle = nestedRoute.handle;\n var Component = component;\n var parent = options.parent, DeferredDataComponent = options.DeferredDataComponent, _options_props = options.props, props = _options_props === void 0 ? {} : _options_props, reporter = options.reporter;\n var routeProps = {\n caseSensitive: nestedRoute.caseSensitive,\n path: nestedRoute.path,\n id: nestedRoute.id,\n loader: createLoader(nestedRoute, reporter),\n action: nestedRoute.action,\n hasErrorBoundary: nestedRoute.hasErrorBoundary,\n shouldRevalidate: nestedRoute.shouldRevalidate,\n handle: _object_spread({}, handle, typeof config === \"object\" ? config === null || config === void 0 ? void 0 : config.handle : {}),\n index: nestedRoute.index,\n element: nestedRoute.element,\n errorElement: nestedRoute.errorElement\n };\n if (nestedRoute.error) {\n var errorElement = /* @__PURE__ */ _jsx(nestedRoute.error, {});\n routeProps.errorElement = errorElement;\n }\n var element;\n if (Component) {\n if ((parent === null || parent === void 0 ? void 0 : parent.loading) && lazyImport) {\n var Loading = parent.loading;\n if (isLoadableComponent(Component)) {\n element = /* @__PURE__ */ _jsx(Component, {\n fallback: /* @__PURE__ */ _jsx(Loading, {})\n });\n } else {\n element = /* @__PURE__ */ _jsx(Suspense, {\n fallback: /* @__PURE__ */ _jsx(Loading, {}),\n children: /* @__PURE__ */ _jsx(Component, {})\n });\n }\n } else if (isLoadableComponent(Component) && lazyImport) {\n element = /* @__PURE__ */ _jsx(Component, {});\n } else if (isRoot) {\n element = /* @__PURE__ */ _jsxs(_Fragment, {\n children: [\n /* @__PURE__ */ _jsx(Component, _object_spread({}, props)),\n typeof document === \"undefined\" && DeferredDataComponent && /* @__PURE__ */ _jsx(DeferredDataComponent, {\n nonce: props === null || props === void 0 ? void 0 : props.nonce\n })\n ]\n });\n } else if (lazyImport) {\n element = /* @__PURE__ */ _jsx(Suspense, {\n fallback: null,\n children: /* @__PURE__ */ _jsx(Component, {})\n });\n } else {\n element = /* @__PURE__ */ _jsx(Component, {});\n }\n } else {\n nestedRoute.loading = parent === null || parent === void 0 ? void 0 : parent.loading;\n routeProps.element = /* @__PURE__ */ _jsx(Outlet, {});\n }\n if (element) {\n routeProps.element = element;\n }\n var childElements = children === null || children === void 0 ? void 0 : children.map(function(childRoute) {\n return renderNestedRoute(childRoute, {\n parent: nestedRoute,\n reporter\n });\n });\n var routeElement = index ? /* @__PURE__ */ _jsx(Route, _object_spread_props(_object_spread({}, routeProps), {\n index: true\n }), id) : /* @__PURE__ */ _jsx(Route, _object_spread_props(_object_spread({}, routeProps), {\n index: false,\n children: childElements\n }), id);\n return routeElement;\n};\nfunction createLoader(route, reporter) {\n var loader = route.loader;\n if (loader) {\n return function() {\n var _ref = _async_to_generator(function(args) {\n var end, res, cost;\n return _ts_generator(this, function(_state) {\n switch (_state.label) {\n case 0:\n if (typeof route.lazyImport === \"function\") {\n route.lazyImport();\n }\n end = time();\n return [\n 4,\n loader(args)\n ];\n case 1:\n res = _state.sent();\n cost = end();\n if (typeof document === \"undefined\" && reporter) {\n reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming(\"\".concat(LOADER_REPORTER_NAME, \"-\").concat(route.id), cost);\n }\n return [\n 2,\n res\n ];\n }\n });\n });\n return function(args) {\n return _ref.apply(this, arguments);\n };\n }();\n } else {\n return function() {\n if (typeof route.lazyImport === \"function\") {\n route.lazyImport();\n }\n return null;\n };\n }\n}\nfunction isLoadableComponent(component) {\n return component && component.displayName === \"Loadable\" && component.preload && typeof component.preload === \"function\";\n}\nexport {\n renderNestedRoute,\n transformNestedRoutes\n};\n","var parsedJSONFromElement = function(id) {\n var elements = document.querySelectorAll(\"#\".concat(id));\n if (elements.length === 0) {\n return void 0;\n }\n var element = elements[elements.length - 1];\n if (element) {\n try {\n var parsed = JSON.parse((element === null || element === void 0 ? void 0 : element.textContent) || \"\");\n return parsed;\n } catch (e) {\n console.error(\"parse \".concat(id, \" error\"), e);\n return void 0;\n }\n }\n return void 0;\n};\nexport {\n parsedJSONFromElement\n};\n","import { _ as _sliced_to_array } from \"@swc/helpers/_/_sliced_to_array\";\nfunction processHrtime(previousTimestamp) {\n var now = (/* @__PURE__ */ new Date()).getTime();\n var clocktime = now * 1e-3;\n var seconds = Math.floor(clocktime);\n var nanoseconds = Math.floor(clocktime % 1 * 1e9);\n if (previousTimestamp) {\n seconds -= previousTimestamp[0];\n nanoseconds -= previousTimestamp[1];\n if (nanoseconds < 0) {\n seconds--;\n nanoseconds += 1e9;\n }\n }\n return [\n seconds,\n nanoseconds\n ];\n}\nvar getLatency = function(hrtime) {\n var _processHrtime = _sliced_to_array(processHrtime(hrtime), 2), s = _processHrtime[0], ns = _processHrtime[1];\n return s * 1e3 + ns / 1e6;\n};\nvar time = function() {\n var hrtime = processHrtime();\n return function() {\n return getLatency(hrtime);\n };\n};\nexport {\n time\n};\n","var ROUTE_MANIFEST = \"_MODERNJS_ROUTE_MANIFEST\";\nvar HMR_SOCK_PATH = \"/webpack-hmr\";\nvar HTML_CHUNKSMAP_SEPARATOR = \"<!--<?- chunksMap.js ?>-->\";\nvar LOADER_REPORTER_NAME = \"server-loader\";\nexport {\n HMR_SOCK_PATH,\n HTML_CHUNKSMAP_SEPARATOR,\n LOADER_REPORTER_NAME,\n ROUTE_MANIFEST\n};\n","var pluginDagSort = function(plugins) {\n var _loop = function() {\n var zep = zeroEndPoints.shift();\n sortedPoint.push(getPluginByAny(zep));\n allLines = allLines.filter(function(l) {\n return l[0] !== getPluginByAny(zep)[key];\n });\n var restPoints = plugins.filter(function(item) {\n return !sortedPoint.find(function(sp) {\n return sp[key] === item[key];\n });\n });\n zeroEndPoints = restPoints.filter(\n // eslint-disable-next-line @typescript-eslint/no-loop-func\n function(item) {\n return !allLines.find(function(l) {\n return l[1] === item[key];\n });\n }\n );\n };\n var key = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : \"name\", preKey = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : \"pre\", postKey = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : \"post\";\n var getPluginByAny = function getPluginByAny2(q) {\n var target = plugins.find(function(item) {\n return typeof q === \"string\" ? item[key] === q : item[key] === q[key];\n });\n if (!target) {\n throw new Error(\"plugin \".concat(q, \" not existed\"));\n }\n return target;\n };\n var allLines = [];\n plugins.forEach(function(item) {\n var _item_preKey, _item_postKey;\n (_item_preKey = item[preKey]) === null || _item_preKey === void 0 ? void 0 : _item_preKey.forEach(function(p) {\n if (plugins.find(function(ap) {\n return ap.name === p;\n })) {\n allLines.push([\n getPluginByAny(p)[key],\n getPluginByAny(item)[key]\n ]);\n }\n });\n (_item_postKey = item[postKey]) === null || _item_postKey === void 0 ? void 0 : _item_postKey.forEach(function(pt) {\n if (plugins.find(function(ap) {\n return ap.name === pt;\n })) {\n allLines.push([\n getPluginByAny(item)[key],\n getPluginByAny(pt)[key]\n ]);\n }\n });\n });\n var zeroEndPoints = plugins.filter(function(item) {\n return !allLines.find(function(l) {\n return l[1] === item[key];\n });\n });\n var sortedPoint = [];\n while (zeroEndPoints.length)\n _loop();\n if (allLines.length) {\n var restInRingPoints = {};\n allLines.forEach(function(l) {\n restInRingPoints[l[0]] = true;\n restInRingPoints[l[1]] = true;\n });\n throw new Error(\"plugins dependencies has loop: \".concat(Object.keys(restInRingPoints).join(\",\")));\n }\n return sortedPoint;\n};\nexport {\n pluginDagSort\n};\n","window.__assetPrefix__ = '/__devtools';","import React from 'react';\nimport styled from '@emotion/styled';\nimport { Button, Flex } from '@radix-ui/themes';\nimport { ChevronRightIcon } from '@radix-ui/react-icons';\nimport type { ButtonProps } from '@radix-ui/themes/dist/cjs/components/button';\n\nexport type BreadcrumbButtonProps = ButtonProps &\n React.RefAttributes<HTMLButtonElement>;\n\nexport const BreadcrumbButton: React.FC<BreadcrumbButtonProps> = props => {\n return <Button color=\"gray\" size=\"1\" variant=\"ghost\" {...props} />;\n};\n\nexport interface BreadcrumbsProps {\n children?: React.ReactElement[];\n}\n\nexport const Breadcrumbs: React.FC<BreadcrumbsProps> = ({ children = [] }) => {\n const elements: React.ReactElement[] = [];\n for (const child of children) {\n elements.push(child);\n if (child !== children.at(-1)) {\n elements.push(<Connector key={`${child.key}__connector`} />);\n }\n }\n return (\n <Flex align=\"center\" gap=\"1\">\n {elements}\n </Flex>\n );\n};\n\n(Breadcrumbs as any).Button = BreadcrumbButton;\n\nexport default Breadcrumbs as typeof Breadcrumbs & {\n Button: typeof BreadcrumbButton;\n};\n\nconst Connector = styled(ChevronRightIcon)({\n width: 'var(--font-size-2)',\n height: 'var(--font-size-2)',\n color: 'var(--gray-6)',\n});\n","import {\n HomeIcon,\n MixerHorizontalIcon,\n FileTextIcon,\n CubeIcon,\n} from '@radix-ui/react-icons';\nimport { InternalTab } from './types';\n\nexport const getDefaultTabs = (): InternalTab[] => [\n {\n name: 'overview',\n title: 'Overview',\n icon: <HomeIcon />,\n view: { type: 'builtin', url: '/overview' },\n },\n {\n name: 'config',\n title: 'Config',\n icon: <MixerHorizontalIcon />,\n view: { type: 'builtin', url: '/config' },\n },\n {\n name: 'pages',\n title: 'Pages',\n icon: <FileTextIcon />,\n view: { type: 'builtin', url: '/pages' },\n },\n {\n name: 'context',\n title: 'Context',\n icon: <CubeIcon />,\n view: { type: 'builtin', url: '/context' },\n },\n];\n","import { Suspense } from 'react';\nimport styled from '@emotion/styled';\nimport { useSnapshot } from 'valtio';\nimport { Outlet, useNavigate, useLocation } from '@modern-js/runtime/router';\nimport { Box } from '@radix-ui/themes';\nimport _ from 'lodash';\nimport { HomeIcon } from '@radix-ui/react-icons';\nimport { useStore } from '@/stores';\nimport { InternalTab } from '@/types';\nimport Breadcrumbs from '@/components/Breadcrumbs';\n\nexport const RootTabs: React.FC = () => {\n const $store = useStore();\n const tabs = useSnapshot($store.tabs);\n\n const navigate = useNavigate();\n const location = useLocation();\n const currentTabName = location.pathname.split('/').filter(Boolean)[0];\n const currentTab = _.find(tabs, { name: currentTabName });\n\n const handleClick = (tab: InternalTab) => {\n if (tab.view.type === 'builtin') {\n navigate(tab.view.url);\n } else {\n throw new Error('Unimplemented.');\n }\n };\n\n return (\n <TabRoot>\n <TabNavigator>\n <TabList style={{ touchAction: 'none' }}>\n <TabBrand>\n <IconBox>🌰</IconBox>\n DevTools\n </TabBrand>\n </TabList>\n <TabList>\n {tabs.map(tab => (\n <TabTrigger\n key={tab.name}\n value={tab.name}\n onClick={() => handleClick(tab as any)}\n >\n <IconBox>{tab.icon as any}</IconBox>\n {tab.title}\n </TabTrigger>\n ))}\n </TabList>\n <Box grow=\"1\" />\n </TabNavigator>\n <TabContent>\n <Box grow=\"0\">\n <Breadcrumbs>\n <Breadcrumbs.Button onClick={() => navigate('overview')}>\n <HomeIcon />\n </Breadcrumbs.Button>\n <Breadcrumbs.Button>{currentTab?.title}</Breadcrumbs.Button>\n </Breadcrumbs>\n </Box>\n <Box grow=\"1\" style={{ overflow: 'hidden' }}>\n <Suspense fallback={<div>loading...</div>}>\n <Outlet />\n </Suspense>\n </Box>\n </TabContent>\n </TabRoot>\n );\n};\n\nconst IconBox = styled(Box)({\n width: '2rem',\n height: '2rem',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n});\n\nconst TabNavigator = styled(Box)({\n display: 'flex',\n flexDirection: 'column',\n gap: 'var(--block-gap)',\n});\n\nconst TabRoot = styled(Box)({\n '--block-gap': '0.5rem',\n '--block-color': '#121212',\n display: 'flex',\n padding: 'var(--block-gap)',\n gap: 'var(--block-gap)',\n alignItems: 'stretch',\n height: '100%',\n width: '100%',\n});\n\nconst TabList = styled(Box)({\n flex: 'none',\n width: '10rem',\n height: 'min-content',\n backgroundColor: 'var(--block-color)',\n borderRadius: 'var(--radius-4)',\n});\n\nconst TabTrigger = styled.button({\n border: 'none',\n backgroundColor: 'transparent',\n display: 'flex',\n alignItems: 'center',\n height: '3rem',\n width: '100%',\n color: 'var(--gray-11)',\n fontSize: 'var(--font-size-2)',\n transition: 'color 200ms',\n fontWeight: 'bold',\n cursor: 'pointer',\n ':focus': {\n color: 'white',\n },\n});\n\nconst TabBrand = styled(TabTrigger)({\n color: 'var(--gray-10)',\n cursor: 'default',\n ':focus': {\n color: 'var(--gray-10)',\n },\n});\n\nconst TabContent = styled(Box)({\n flex: 1,\n flexDirection: 'column',\n alignItems: 'stretch',\n display: 'flex',\n gap: 'var(--space-3)',\n overflow: 'hidden',\n backgroundColor: 'var(--block-color)',\n borderRadius: 'var(--radius-4)',\n padding: '1rem',\n});\n","import '@radix-ui/themes/styles.css';\nimport './layout.css';\nimport styled from '@emotion/styled';\nimport { Box, Theme } from '@radix-ui/themes';\nimport { RootTabs } from './RootTabs';\nimport { StoreContextProvider } from '@/stores';\n\nexport default function Layout() {\n return (\n <StoreContextProvider>\n <Theme appearance=\"dark\" className=\"dark\">\n <AppContainer>\n <RootTabs />\n </AppContainer>\n </Theme>\n </StoreContextProvider>\n );\n}\n\nconst AppContainer = styled(Box)({\n width: '100vw',\n height: '100vh',\n overflow: 'hidden',\n backgroundColor: '#090909',\n});\n","import _ from 'lodash';\nimport { FC, ReactElement, createContext, useContext, useMemo } from 'react';\nimport { useAsync } from 'react-use';\nimport createDeferPromise from 'p-defer';\nimport { getQuery } from 'ufo';\nimport {\n AppContext,\n BuilderContext,\n TransformedFrameworkConfig,\n FrameworkConfig,\n BuilderConfig,\n NormalizedBuilderConfig,\n BundlerConfig,\n ClientDefinition,\n} from '@modern-js/devtools-kit';\nimport { ref, useSnapshot } from 'valtio';\nimport { setupServerConnection } from '@/rpc';\nimport { useProxyFrom } from '@/utils/hooks';\nimport { StoreContextValue } from '@/types';\nimport { getDefaultTabs } from '@/constants';\n\nconst StoreContext = createContext<unknown>(null);\n\nconst getDataSource = () => {\n const src =\n getQuery(location.href).src ||\n sessionStorage.getItem('devtools-data-source');\n if (!_.isString(src)) {\n throw new TypeError(`Can't connection to data source: ${src || '<EMPTY>'}`);\n }\n sessionStorage.setItem('devtools-data-source', src);\n return src;\n};\n\nconst createDeferredTasks = () => ({\n framework: {\n context: createDeferPromise<AppContext>(),\n config: {\n resolved: createDeferPromise<FrameworkConfig>(),\n transformed: createDeferPromise<TransformedFrameworkConfig>(),\n },\n },\n builder: {\n context: createDeferPromise<BuilderContext>(),\n config: {\n resolved: createDeferPromise<BuilderConfig>(),\n transformed: createDeferPromise<NormalizedBuilderConfig>(),\n },\n },\n bundler: {\n config: {\n resolved: createDeferPromise<BundlerConfig[]>(),\n transformed: createDeferPromise<BundlerConfig[]>(),\n },\n },\n dependencies: createDeferPromise<Record<string, string>>(),\n compileTimeCost: createDeferPromise<number>(),\n clientDefinition: createDeferPromise<ClientDefinition>(),\n});\n\nexport const StoreContextProvider: FC<{ children: ReactElement }> = ({\n children,\n}) => {\n const dataSource = useMemo(getDataSource, []);\n const deferred = useMemo(createDeferredTasks, []);\n\n const $store = useProxyFrom<StoreContextValue>(() => ({\n dataSource,\n location: '/',\n framework: {\n context: deferred.framework.context.promise,\n fileSystemRoutes: {},\n config: {\n resolved: deferred.framework.config.resolved.promise,\n transformed: deferred.framework.config.transformed.promise,\n },\n },\n builder: {\n context: deferred.builder.context.promise,\n config: {\n resolved: deferred.builder.config.resolved.promise,\n transformed: deferred.builder.config.transformed.promise,\n },\n },\n bundler: {\n config: {\n resolved: deferred.bundler.config.resolved.promise,\n transformed: deferred.bundler.config.transformed.promise,\n },\n },\n tabs: getDefaultTabs().map(tab => ref(tab)),\n version: process.env.PKG_VERSION!,\n dependencies: deferred.dependencies.promise,\n compileTimeCost: deferred.compileTimeCost.promise,\n name: deferred.clientDefinition.promise.then(def => def.name),\n packages: deferred.clientDefinition.promise.then(def => def.packages),\n assets: deferred.clientDefinition.promise.then(def => def.assets),\n }));\n\n useAsync(async () => {\n const { server } = await setupServerConnection({ url: dataSource, $store });\n\n deferred.framework.context.resolve(server.getAppContext());\n deferred.framework.config.resolved.resolve(server.getFrameworkConfig());\n deferred.framework.config.transformed.resolve(\n server.getTransformedFrameworkConfig(),\n );\n deferred.builder.context.resolve(server.getBuilderContext());\n deferred.builder.config.resolved.resolve(server.getBuilderConfig());\n deferred.builder.config.transformed.resolve(\n server.getTransformedBuilderConfig(),\n );\n deferred.bundler.config.resolved.resolve(server.getBundlerConfigs());\n deferred.bundler.config.transformed.resolve(\n server.getTransformedBundlerConfigs(),\n );\n deferred.dependencies.resolve(server.getDependencies());\n deferred.compileTimeCost.resolve(server.getCompileTimeCost());\n deferred.clientDefinition.resolve(server.getClientDefinition());\n\n const ctx = await $store.framework.context;\n for (const { entryName } of ctx.entrypoints) {\n $store.framework.fileSystemRoutes[entryName] =\n server.getFileSystemRoutes(entryName);\n }\n }, [dataSource, deferred]);\n\n return (\n <StoreContext.Provider value={$store}>{children}</StoreContext.Provider>\n );\n};\n\nexport const useStore = () => {\n const ctx = useContext(StoreContext);\n if (!ctx) {\n throw new Error(\"Can't resolve the context of global store.\");\n }\n return ctx as StoreContextValue;\n};\n\nexport const useStoreSnapshot = () => useSnapshot(useStore());\n","import { LoaderFunctionArgs, redirect } from '@modern-js/runtime/router';\nimport { resolveURL } from 'ufo';\n\nexport default ({ request }: LoaderFunctionArgs) => {\n const target = resolveURL(request.url, './builder/transformed');\n return redirect(target);\n};\n","import { LoaderFunctionArgs, redirect } from '@modern-js/runtime/router';\nimport { resolveURL } from 'ufo';\n\nexport default ({ request }: LoaderFunctionArgs) => {\n const target = resolveURL(request.url, './builder');\n return redirect(target);\n};\n","import { LoaderFunctionArgs, redirect } from '@modern-js/runtime/router';\nimport { resolveURL } from 'ufo';\n\nexport default ({ request }: LoaderFunctionArgs) => {\n const target = resolveURL(request.url, './overview');\n return redirect(target);\n};\n","import { ClientFunctions, ServerFunctions } from '@modern-js/devtools-kit';\nimport { createBirpc } from 'birpc';\nimport { StoreContextValue } from '@/types';\n\nexport interface SetupOptions {\n url: string;\n $store: StoreContextValue;\n}\n\nexport const setupServerConnection = async (options: SetupOptions) => {\n const { url, $store } = options;\n const ws = new window.WebSocket(url);\n\n const server = createBirpc<ServerFunctions, ClientFunctions>(\n {\n refresh: () => location.reload(),\n updateFileSystemRoutes({ entrypoint, routes }) {\n $store.framework.fileSystemRoutes[entrypoint.entryName] = routes;\n },\n },\n {\n post: data => ws.send(data),\n on: cb => (ws.onmessage = cb),\n serialize: v => JSON.stringify(v),\n deserialize: v => JSON.parse(v.data.toString()),\n },\n );\n\n await new Promise<void>((resolve, reject) => {\n ws.onopen = () => resolve();\n ws.onerror = () =>\n reject(new Error(`Failed connect to WebSocket server: ${url}`));\n });\n\n return { server };\n};\n","import _ from 'lodash';\nimport React, { useMemo } from 'react';\nimport { proxy, useSnapshot } from 'valtio';\n\nexport const useProxyFrom = <T extends object>(initializer: () => T) => {\n return useMemo(() => proxy(initializer()), []);\n};\n\nexport const useStoreMap = <T extends object, P extends keyof T>(\n arr: T[],\n keyProp?: P,\n): [React.Key, T][] => {\n const prop = keyProp ?? 'key';\n const pairs = useSnapshot(arr).map(i => {\n const key = (i as any)[prop];\n if (_.isString(key) || _.isNumber(key)) {\n return [key, proxy(i)] as [React.Key, T];\n } else {\n throw new TypeError(`Can't found correct key field.`);\n }\n });\n return pairs;\n};\n"],"names":["_ref","runnerMap","WeakMap","getInitialContext","runner","loaderManager","createLoaderManager","isBrowser","routeManifest","window","ROUTE_MANIFEST","createApp","param","plugins","globalProps","props","appRuntime","runtime","usePlugin","apply","_","App","init","WrapperComponent","_props_children","element","children","context","useContext","RuntimeReactContext","provide","onLast","param2","HOCApp","hoc","_$App","_param","contextValue","param3","_App_init","context1","call","mergedProps","value","set","bootstrap","BootApp","id","root","ReactDOM","runInit","_ssrData_data","_ssrData_data1","ssrData","loadersData","initialLoadersState","initialData","rootElement","ModernRender","ModernHydrate","isRedirectResponse","initialData1","_state","label","get","_context","name","HTMLElement","Object","keys","_SSR_DATA","data","reduce","res","key","loaderData","loading","assign","skipStatic","ssrContext","sent","document","getElementById","Error","App2","render","createRoot","callback","hydrateRoot","client","skipNonStatic","staticGenerate","result","Response","status","redirectUrl","headers","statusCode","setHeader","redirection","url","server","arguments","LoaderStatus2","LoaderStatus","createGetId","idCache","Map","objectId","cachedId","JSON","stringify","createLoader","promise","length","reloading","error","loaderFn","skip","idle","hasLoaded","handlers","Set","load","notify","then","fulfilled","catch","e","rejected","finally","getResult","concat","message","_error","forEach","handler","onChange","add","delete","initialDataMap","managerOptions","_managerOptions_skipStatic","_managerOptions_skipNonStatic","loadersMap","getId","hasPendingLoaders","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","values","Symbol","iterator","next","done","loader","Promise","err","return","awaitPendingLoaders","pendingLoaders","_step_value","push","all","map","item","id2","loader2","loaderOptions","params","cache","_cache","ignoreNonStatic","static","ignoreStatic","skipExec","createPipeline","createAsyncPipeline","runtimeHooks","pickContext","createManager","createPlugin","DefaultNotFound","style","margin","textAlign","display","alignItems","justifyContent","DeferredDataScripts_default","modifyRoutes","createWaterfall","runtime_default","routerPlugin","finalRouteConfig","routes","beforeCreateRouter","_param_serverBase","serverBase","_param_supportHtml5History","supportHtml5History","_param_basename","basename","routesConfig","createRoutes","_SERVER_DATA","parsedJSONFromElement","registerHook","setup","api","router","useMatches","useLocation","defineProperty","useCreateRouter","RouteApp","pathname","_window__SERVER_DATA","baseUrl","location","find","search","_basename","urlJoin","hydrationData","_ROUTER_DATA","runtimeContext","getBlockNavState","unstable_getBlockNavState","useMemo","errors","deserializeErrors","createRoutesFromElements","renderRoutes","useHookRunners","createBrowserRouter","createHashRouter","originSubscribe","subscribe","listener","_len","args","Array","_key","configurable","RouterProvider","globalApp","pickedContext","remixRouter","navigate","state","ssrMode","reporter","getRouteComponents","Layout","Component","props2","routeElements","route","type","routeElement","renderNestedRoute","DeferredDataComponent","routeElement1","Route","path","component","parts","replace","RegExp","standardSlash","str","addr","startsWith","slice","endsWith","join","entries","serialized","val","__type","ErrorResponse","statusText","internal","stack","createContext","createCounter","dispatch","index","input","nextInput","start","PipelineSymbol","for","getMiddleware","middleware","_obj","middlewares","createCurrentCounter","currentCounter","run","options","getCounter","pipeline","inputs","WATERFALL_SYMBOL","getBrook","waterfall","use","brooks","mapBrookToMiddleware","input2","brook","ASYNC_WATERFALL_SYMBOL","getAsyncBrook","createAsyncWaterfall","mapAsyncBrookToAsyncMiddleware","resolve","WORKFLOW_SYMBOL","createWorkflow","workflow","mapWorkerToMiddleware","filter","Boolean","worker","PARALLEL_WORKFLOW_SYMBOL","createParallelWorkflow","mapParallelWorkerToAsyncMiddleware","ASYNC_WORKFLOW_SYMBOL","createAsyncWorkflow","mapAsyncWorkerToAsyncMiddleware","obj","result2","nextResult","checkPlugins","isObject","SYNC_PLUGIN_SYMBOL","DEFAULT_OPTIONS","pre","post","rivals","required","usePlugins","hooks","runners","currentHooks","useRunner","extraHooks","isPlugin","prop","hasOwnProperty","pluginAPI","clone","overrideAPI","addPlugin","plugin","some","manager","_options_usePlugins","sortedPlugins","pluginDagSort","mergedPluginAPI","generateRunner","clear","cb","hooksList","hooksMap","cloneShape","cloneHooksMap","_loop","key2","cloneHook","hook","record","nestedRoute","isRoot","lazyImport","config","handle","parent","_options_props","routeProps","caseSensitive","end","cost","time","reportTiming","LOADER_REPORTER_NAME","action","hasErrorBoundary","shouldRevalidate","errorElement","Loading","isLoadableComponent","fallback","Suspense","nonce","Outlet","childElements","childRoute","displayName","preload","elements","querySelectorAll","parse","textContent","console","processHrtime","previousTimestamp","clocktime","now","Date","getTime","seconds","Math","floor","nanoseconds","getLatency","hrtime","_processHrtime","s","ns","preKey","postKey","getPluginByAny","q","target","allLines","_item_preKey","_item_postKey","p","ap","pt","zeroEndPoints","l","sortedPoint","zep","shift","restPoints","sp","restInRingPoints","__assetPrefix__","Breadcrumbs","child","at","Connector","Flex","align","gap","Button","color","size","variant","ChevronRightIcon","width","height","getDefaultTabs","title","icon","HomeIcon","view","MixerHorizontalIcon","FileTextIcon","CubeIcon","RootTabs","$store","useStore","tabs","useSnapshot","useNavigate","currentTabName","split","currentTab","handleClick","tab","TabRoot","TabNavigator","TabList","touchAction","TabBrand","IconBox","TabTrigger","onClick","Box","grow","TabContent","overflow","flexDirection","padding","flex","backgroundColor","borderRadius","border","fontSize","transition","fontWeight","cursor","StoreContextProvider","Theme","appearance","className","AppContainer","StoreContext","getDataSource","src","getQuery","href","sessionStorage","getItem","TypeError","setItem","createDeferredTasks","framework","resolved","transformed","builder","bundler","dependencies","compileTimeCost","clientDefinition","dataSource","deferred","useProxyFrom","fileSystemRoutes","ref","version","def","packages","assets","useAsync","setupServerConnection","entryName","getAppContext","getFrameworkConfig","getTransformedFrameworkConfig","getBuilderContext","getBuilderConfig","getTransformedBuilderConfig","getBundlerConfigs","getTransformedBundlerConfigs","getDependencies","getCompileTimeCost","getClientDefinition","ctx","entrypoints","getFileSystemRoutes","Provider","request","resolveURL","redirect","ws","WebSocket","createBirpc","refresh","reload","updateFileSystemRoutes","entrypoint","send","on","onmessage","serialize","v","deserialize","toString","reject","onopen","onerror","initializer","proxy"],"mappings":"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"}
package/modern.config.ts CHANGED
@@ -1,69 +1,27 @@
1
- import { URL } from 'url';
2
- import path from 'path/posix';
3
- import { execSync } from 'child_process';
4
- import { logger } from '@modern-js/builder-shared';
5
1
  import { appTools, defineConfig } from '@modern-js/app-tools';
6
- import { proxyPlugin } from '@modern-js/plugin-proxy';
2
+ import { ROUTE_BASENAME } from '@modern-js/devtools-kit';
7
3
  import { version } from './package.json';
8
4
 
9
- const commitShort = execSync('git rev-parse --short=10 HEAD').toString().trim();
10
- if (!commitShort.match(/^\w{10}$/)) {
11
- throw new Error("Can't resolve git commit hash.");
12
- }
13
-
14
- const basename = new URL(process.env.DEPLOY_HOST || 'https://modernjs.dev');
15
- if (process.env.BASENAME === 'version' || !process.env.BASENAME) {
16
- basename.pathname = `/devtools/${version}`;
17
- } else if (process.env.BASENAME === 'commit') {
18
- basename.pathname = `/devtools/${commitShort}`;
19
- } else if (process.env.BASENAME === 'false') {
20
- basename.pathname = '/devtools';
21
- } else {
22
- basename.pathname = path.resolve('/devtools', process.env.BASENAME);
23
- }
24
-
25
- logger.info(
26
- `Access client:`,
27
- `${basename.href}?src=ws://localhost:8080/_modern_js/devtools/rpc`,
28
- );
29
-
30
5
  // https://modernjs.dev/en/configure/app/usage
31
6
  export default defineConfig<'rspack'>({
32
7
  runtime: {
33
8
  router: {
34
- basename: basename.pathname,
9
+ basename: ROUTE_BASENAME,
35
10
  },
36
11
  },
37
12
  dev: {
13
+ assetPrefix: ROUTE_BASENAME,
38
14
  port: 8780,
39
- assetPrefix: basename.pathname,
40
- proxy: {
41
- [basename.href]: new URL(basename.pathname, 'http://localhost:8780').href,
42
- },
43
15
  },
44
16
  source: {
45
17
  preEntry: [require.resolve('modern-normalize/modern-normalize.css')],
46
18
  globalVars: {
47
- 'process.env.PKG_VERSION': `${version}-${commitShort}`,
19
+ 'process.env.PKG_VERSION': version,
48
20
  },
49
21
  },
50
22
  output: {
51
- assetPrefix: basename.href,
23
+ assetPrefix: ROUTE_BASENAME,
52
24
  enableCssModuleTSDeclaration: true,
53
25
  },
54
- tools: {
55
- devServer: {
56
- client: {
57
- host: 'localhost',
58
- protocol: 'ws',
59
- },
60
- },
61
- },
62
- html: {},
63
- plugins: [
64
- appTools({
65
- bundler: 'experimental-rspack',
66
- }),
67
- proxyPlugin(),
68
- ],
26
+ plugins: [appTools({ bundler: 'experimental-rspack' })],
69
27
  });
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@modern-js/devtools-client",
3
- "version": "2.35.1",
3
+ "version": "2.36.0",
4
4
  "main": "./index.js",
5
5
  "engines": {
6
6
  "node": ">=14.0.0"
7
7
  },
8
- "dependencies": {
8
+ "devDependencies": {
9
9
  "birpc": "0.2.13",
10
10
  "@emotion/react": "^11.11.1",
11
11
  "@emotion/styled": "^11.11.0",
@@ -25,11 +25,6 @@
25
25
  "suspend-react": "^0.1.3",
26
26
  "ufo": "^1.2.0",
27
27
  "valtio": "^1.11.1",
28
- "@modern-js/types": "2.35.1",
29
- "@modern-js/runtime": "2.35.1",
30
- "@modern-js/devtools-kit": "2.35.1"
31
- },
32
- "devDependencies": {
33
28
  "@types/jest": "~29.2.4",
34
29
  "@types/lodash": "^4.14.196",
35
30
  "@types/node": "~16.11.7",
@@ -38,19 +33,21 @@
38
33
  "rimraf": "~3.0.2",
39
34
  "type-fest": "^4.1.0",
40
35
  "typescript": "~5.0.4",
41
- "@modern-js/builder-shared": "2.35.1",
42
- "@modern-js/builder-rspack-provider": "2.35.1",
43
- "@modern-js/eslint-config": "2.35.1",
44
- "@modern-js/plugin-proxy": "2.35.1",
45
- "@modern-js/tsconfig": "2.35.1",
46
- "@modern-js/app-tools": "2.35.1",
47
- "@modern-js-app/eslint-config": "2.35.1"
36
+ "@modern-js/devtools-kit": "2.36.0",
37
+ "@modern-js/runtime": "2.36.0",
38
+ "@modern-js/types": "2.36.0",
39
+ "@modern-js-app/eslint-config": "2.36.0",
40
+ "@modern-js/app-tools": "2.36.0",
41
+ "@modern-js/builder-shared": "2.36.0",
42
+ "@modern-js/builder-rspack-provider": "2.36.0",
43
+ "@modern-js/eslint-config": "2.36.0",
44
+ "@modern-js/plugin-proxy": "2.36.0",
45
+ "@modern-js/tsconfig": "2.36.0"
48
46
  },
49
47
  "scripts": {
50
48
  "reset": "npx rimraf ./**/node_modules",
51
49
  "dev": "modern dev",
52
50
  "build": "modern build",
53
- "deploy": "pnpm build && node scripts/build-redirects.js",
54
51
  "start": "modern start",
55
52
  "serve": "modern serve",
56
53
  "new": "modern new",
@@ -2,9 +2,9 @@ import { Suspense } from 'react';
2
2
  import styled from '@emotion/styled';
3
3
  import { useSnapshot } from 'valtio';
4
4
  import { Outlet, useNavigate, useLocation } from '@modern-js/runtime/router';
5
- import { Box, Text, Button } from '@radix-ui/themes';
5
+ import { Box } from '@radix-ui/themes';
6
6
  import _ from 'lodash';
7
- import { GearIcon, HomeIcon } from '@radix-ui/react-icons';
7
+ import { HomeIcon } from '@radix-ui/react-icons';
8
8
  import { useStore } from '@/stores';
9
9
  import { InternalTab } from '@/types';
10
10
  import Breadcrumbs from '@/components/Breadcrumbs';
@@ -48,10 +48,6 @@ export const RootTabs: React.FC = () => {
48
48
  ))}
49
49
  </TabList>
50
50
  <Box grow="1" />
51
- <SettingButton>
52
- <GearIcon />
53
- <Text>Settings</Text>
54
- </SettingButton>
55
51
  </TabNavigator>
56
52
  <TabContent>
57
53
  <Box grow="0">
@@ -72,11 +68,6 @@ export const RootTabs: React.FC = () => {
72
68
  );
73
69
  };
74
70
 
75
- const SettingButton = styled(Button)({
76
- '--accent-9': 'var(--gray-5)',
77
- '--accent-10': 'var(--gray-6)',
78
- });
79
-
80
71
  const IconBox = styled(Box)({
81
72
  width: '2rem',
82
73
  height: '2rem',