@moneko/core 2.0.16-beta.9 → 2.0.17-beta.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 (102) hide show
  1. package/build/common.js +1 -1
  2. package/build/envFlags.d.ts +1 -1
  3. package/build/envFlags.js +1 -1
  4. package/build/html-plugin-option.d.ts +2 -2
  5. package/build/html-plugin-option.js +1 -1
  6. package/build/modifyVars.js +1 -1
  7. package/build/webpack.common.js +1 -1
  8. package/lib/components/{app-router/index.d.ts → app-router.d.ts} +1 -1
  9. package/lib/components/app-router.js +2 -0
  10. package/lib/components/app-router.js.map +1 -0
  11. package/lib/components/{fallback-comp/index.js → fallback-comp.js} +1 -1
  12. package/lib/components/fallback-comp.js.map +1 -0
  13. package/lib/components/{fallback/index.js → fallback.js} +2 -2
  14. package/lib/components/fallback.js.map +1 -0
  15. package/lib/components/{layout-menu/index.js → layout-menu.js} +2 -2
  16. package/lib/components/layout-menu.js.map +1 -0
  17. package/lib/index.d.ts +6 -2
  18. package/lib/index.js +1 -1
  19. package/lib/index.js.map +1 -1
  20. package/lib/localizable.d.ts +53 -0
  21. package/lib/localizable.js +2 -0
  22. package/lib/localizable.js.map +1 -0
  23. package/lib/menu.d.ts +115 -0
  24. package/lib/menu.js +2 -0
  25. package/lib/menu.js.map +1 -0
  26. package/lib/packages/back-stage/app.js +1 -1
  27. package/lib/packages/back-stage/app.js.map +1 -1
  28. package/lib/packages/back-stage/bootstrap.js +1 -1
  29. package/lib/packages/back-stage/bootstrap.js.map +1 -1
  30. package/lib/packages/back-stage/index.d.ts +0 -1
  31. package/lib/packages/back-stage/index.js +1 -1
  32. package/lib/packages/back-stage/index.js.map +1 -1
  33. package/lib/packages/back-stage/layout.js +2 -0
  34. package/lib/packages/back-stage/layout.js.map +1 -0
  35. package/lib/packages/library/app.js +1 -1
  36. package/lib/packages/library/app.js.map +1 -1
  37. package/lib/packages/library/index.d.ts +0 -1
  38. package/lib/packages/library/index.js +1 -1
  39. package/lib/packages/library/index.js.map +1 -1
  40. package/lib/packages/mobile/app.js +1 -1
  41. package/lib/packages/mobile/app.js.map +1 -1
  42. package/lib/packages/mobile/index.d.ts +0 -1
  43. package/lib/packages/mobile/index.js +1 -1
  44. package/lib/packages/mobile/index.js.map +1 -1
  45. package/lib/packages/single-spa/app.d.ts +2 -2
  46. package/lib/packages/single-spa/app.js +1 -1
  47. package/lib/packages/single-spa/app.js.map +1 -1
  48. package/lib/packages/single-spa/bootstrap.js +1 -1
  49. package/lib/packages/single-spa/bootstrap.js.map +1 -1
  50. package/lib/packages/single-spa/index.d.ts +0 -1
  51. package/lib/packages/single-spa/index.js +1 -1
  52. package/lib/packages/single-spa/index.js.map +1 -1
  53. package/lib/packages/site/app.js +1 -1
  54. package/lib/packages/site/app.js.map +1 -1
  55. package/lib/packages/site/index.d.ts +0 -1
  56. package/lib/packages/site/index.js +1 -1
  57. package/lib/packages/site/index.js.map +1 -1
  58. package/lib/prefix/react-router-dom.js +1 -1
  59. package/lib/prefix/react-router-dom.js.map +1 -1
  60. package/lib/react-router-dom/link.d.ts +9 -0
  61. package/lib/react-router-dom/link.js +2 -0
  62. package/lib/react-router-dom/link.js.map +1 -0
  63. package/lib/{hooks/navgate.js → react-router-dom/use-navgate.js} +1 -1
  64. package/lib/react-router-dom/use-navgate.js.map +1 -0
  65. package/lib/router/index.d.ts +6 -0
  66. package/lib/router/index.js.map +1 -1
  67. package/lib/{store → sso}/index.d.ts +12 -2
  68. package/lib/{store → sso}/index.js +1 -1
  69. package/lib/sso/index.js.map +1 -0
  70. package/lib/styles/normalize.css +26 -18
  71. package/lib/styles/variables.css +33 -33
  72. package/package.json +2 -3
  73. package/template/404.html +29 -0
  74. package/typings/global.d.ts +15 -15
  75. package/lib/components/app-router/index.js +0 -2
  76. package/lib/components/app-router/index.js.map +0 -1
  77. package/lib/components/fallback/index.js.map +0 -1
  78. package/lib/components/fallback-comp/index.js.map +0 -1
  79. package/lib/components/layout-menu/index.js.map +0 -1
  80. package/lib/hooks/navgate.js.map +0 -1
  81. package/lib/packages/back-stage/layout/index.js +0 -2
  82. package/lib/packages/back-stage/layout/index.js.map +0 -1
  83. package/lib/packages/back-stage/layout/index.less +0 -81
  84. package/lib/packages/back-stage/models/app-program.d.ts +0 -0
  85. package/lib/packages/back-stage/models/app-program.js +0 -2
  86. package/lib/packages/back-stage/models/app-program.js.map +0 -1
  87. package/lib/prefix/i18n-hooks.d.ts +0 -1
  88. package/lib/prefix/i18n-hooks.js +0 -2
  89. package/lib/prefix/i18n-hooks.js.map +0 -1
  90. package/lib/prefix/mini-idc.d.ts +0 -1
  91. package/lib/prefix/mini-idc.js +0 -2
  92. package/lib/prefix/mini-idc.js.map +0 -1
  93. package/lib/store/index.js.map +0 -1
  94. package/lib/styles/animation.css +0 -24
  95. package/lib/utils/env.d.ts +0 -0
  96. package/lib/utils/env.js +0 -2
  97. package/lib/utils/env.js.map +0 -1
  98. /package/lib/components/{fallback-comp/index.d.ts → fallback-comp.d.ts} +0 -0
  99. /package/lib/components/{fallback/index.d.ts → fallback.d.ts} +0 -0
  100. /package/lib/components/{layout-menu/index.d.ts → layout-menu.d.ts} +0 -0
  101. /package/lib/packages/back-stage/{layout/index.d.ts → layout.d.ts} +0 -0
  102. /package/lib/{hooks/navgate.d.ts → react-router-dom/use-navgate.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport { I18nProvider } from 'i18n-hooks';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nconst Main = () => (\n <I18nProvider>\n <App />\n </I18nProvider>\n);\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <Main />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<Main />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<Main />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","isFunction","I18nProvider","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","Main","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAASC,YAAY,KAAQ,YAAa,AAC1C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAE5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,QAAUC,WAAWV,MAAMS,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,IAAMC,KAAO,kBACX,oBAACZ,kBACC,oBAACC,YAIL,GAAIM,SAAW,GAAI,CACjB,GAAIR,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUW,SAAS,EAAG,CACnCX,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUW,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGZ,aAAaa,WAAW,CAACT,UAAW,oBAACG,WAC7D,KAAO,CACLI,OAAOC,YAAY,CAAGZ,aAAac,UAAU,CAACV,WAC9CO,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAACR,WAC9B,CAAC,AACD,GAAIb,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUmB,KAAK,EAAG,CAC/BnB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUmB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAItB,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUW,SAAS,EAAG,CACnCX,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUW,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGlB,aAAae,MAAM,CAAGf,aAAamB,OAAO,CAEtEJ,OAAO,oBAACR,WAASH,WACjB,GAAIV,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUmB,KAAK,EAAG,CAC/BnB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUmB,KAAK,EACjB,CAAC,AACH,CAAC"}
1
+ {"version":3,"sources":["../../../src/packages/back-stage/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAE5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,QAAUC,WAAWT,MAAMQ,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,GAAIJ,SAAW,GAAI,CACjB,GAAIP,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGX,aAAaY,WAAW,CAACR,UAAW,oBAACR,UAC7D,KAAO,CACLc,OAAOC,YAAY,CAAGX,aAAaa,UAAU,CAACT,WAC9CM,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAAClB,UAC9B,CAAC,AACD,GAAID,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAIpB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGjB,aAAac,MAAM,CAAGd,aAAakB,OAAO,CAEtEJ,OAAO,oBAAClB,UAAQQ,WAChB,GAAIT,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,CAAC"}
@@ -1,4 +1,3 @@
1
- import '../../utils/env';
2
1
  import '../../utils/refresh-rem';
3
2
  import '../../styles/normalize.css';
4
3
  declare const bootstrap: typeof import("./bootstrap");
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
1
+ import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/index.ts"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
1
+ {"version":3,"sources":["../../../src/packages/back-stage/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -0,0 +1,2 @@
1
+ function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _taggedTemplateLiteral(strings,raw){if(!raw){raw=strings.slice(0)}return Object.freeze(Object.defineProperties(strings,{raw:{value:Object.freeze(raw)}}))}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}function _templateObject(){var data=_taggedTemplateLiteral(["\n .",", ."," {\n z-index: 2;\n }\n ."," {\n position: sticky;\n top: 64px;\n overflow: initial !important;\n margin: 16px 16px 0 !important;\n\n > .","-tabs-nav {\n .","-tabs-tab {\n border-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-bottom-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-radius: var(--border-radius) !important;\n backdrop-filter: blur(16px);\n background-color: rgba(255, 255, 255, 0.8);\n &.","-tabs-tab-active {\n background-color: rgba(255, 255, 255, 0.9);\n }\n }\n\n &::before {\n content: none;\n }\n }\n }\n ."," {\n width: 100% !important;\n min-height: 100vh !important;\n }\n .",", ."," {\n overflow-y: auto;\n max-height: 100vh;\n }\n ."," {\n overflow-y: auto;\n }\n ."," {\n overflow-y: auto;\n }\n ."," {\n display: flex;\n margin: 0 16px;\n flex-direction: column;\n z-index: 1;\n }\n ."," {\n border-radius: var(--border-radius);\n padding: 24px;\n background: var(--component-card-bg, #fff);\n box-shadow: var(--box-shadow-lite);\n flex: 1;\n transition-property: background-color, box-shadow;\n }\n .",", .",", ."," > svg {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n ."," {\n position: sticky;\n top: 0;\n z-index: 1;\n display: flex;\n gap: 10px;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n padding: 14px;\n height: 68px;\n text-align: center;\n color: #de4553;\n transition-property: background-color, border-color;\n cursor: pointer;\n user-select: none;\n\n > svg,\n &::before {\n transition-property: opacity;\n }\n\n > svg {\n height: 32px;\n opacity: 0;\n }\n\n &::before {\n display: block;\n width: 22px;\n height: 32px;\n background: url(",") no-repeat center center / contain;\n opacity: 1;\n content: '';\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n }\n"]);_templateObject=function _templateObject(){return data};return data}import React,{useCallback,useEffect,useMemo,useState}from"react";import{ReloadOutlined,DeleteRowOutlined,CloseOutlined}from"@ant-design/icons";import{css,injectGlobal}from"@emotion/css";import{Tabs,Layout,Dropdown}from"antd";import{useAliveController}from"react-activation";import{useSearchParams,useOutlet,useNavigate}from"react-router-dom";import FallbackComp from"../../components/fallback-comp";import LayoutMenu from"../../components/layout-menu";import{localizable}from"../../localizable";import{menu}from"../../menu";var prefixCls=providerConfig.prefixCls;var c=function(s){return"".concat(prefixCls,"-dashboard-").concat(s)};var cls={tabs:c("tabs"),layout:c("layout"),sider:c("sider"),header:c("header"),logo:c("logo"),section:c("section"),content:c("content"),view:c("view")};var layoutCss=css(_templateObject(),cls.header,cls.tabs,cls.tabs,prefixCls,prefixCls,prefixCls,cls.layout,cls.sider,cls.section,cls.section,cls.sider,cls.content,cls.view,cls.view,cls.logo,cls.logo,cls.logo,require(favicon));injectGlobal([layoutCss]);var closeTabs=[{label:"关闭左侧标签",icon:React.createElement(DeleteRowOutlined,{style:{transform:"scaleX(-1)"}}),key:"left"},{label:"关闭右侧标签",icon:React.createElement(DeleteRowOutlined,null),key:"right"},{label:"关闭其他标签",icon:React.createElement(CloseOutlined,null),key:"other"},{label:"刷新标签页",icon:React.createElement(ReloadOutlined,null),key:"refresh"}];var DashboardLayout=function(param){var children=param.children;var activeKey=menu.activeKey,tabs=menu.tabs,openTab=menu.openTab,closeTab=menu.closeTab,kv=menu.kv;var t=localizable.t;var outlet=useOutlet();var navigate=useNavigate();var dropScope=useAliveController().dropScope;var _useSearchParams=_slicedToArray(useSearchParams(),1),search=_useSearchParams[0];var _useState=_slicedToArray(useState(false),2),collapsed=_useState[0],setCollapsed=_useState[1];var handleCollapsed=useCallback(function(value){if(value){var _timer=window.setTimeout(function(){setCollapsed(value);window.clearTimeout(_timer);_timer=null},0)}else{setCollapsed(value);var _timer1=window.setTimeout(function(){window.clearTimeout(_timer1);_timer1=null},30)}},[]);var closedTab=useCallback(function(tabKey,type){if(type==="refresh"){navigate("/refresh");return}if(tabKey){closeTab(tabKey,type,function(closes,next){closes===null||closes===void 0?void 0:closes.forEach(function(item){if(item.path&&dropScope){dropScope(item.path)}});if(next){navigate("".concat(next.path,"?menuId=").concat(next.key))}})}},[closeTab,dropScope,navigate]);var _useMemo=useMemo(function(){return{menuId:search.get("menuId"),dynamicLabel:search.get("dynamicTitle")||""}},[search]),menuId=_useMemo.menuId,dynamicLabel=_useMemo.dynamicLabel;useEffect(function(){if(menuId){openTab({key:menuId,dynamicTitle:dynamicLabel})}},[dynamicLabel,menuId,openTab]);var getItems=useCallback(function(key){return key===activeKey?closeTabs:closeTabs.filter(function(i){return(i===null||i===void 0?void 0:i.key)!=="refresh"})},[activeKey]);var handleTabEdit=useCallback(function(targetKey,action){if(action==="remove"&&typeof targetKey==="string"){closedTab(targetKey)}},[closedTab]);var handleClick=useCallback(function(key){navigate("".concat(kv[key].key,"?menuId=").concat(kv[key].key))},[kv,navigate]);var tabPanel=useMemo(function(){return tabs.map(function(param){var key=param.key,icon=param.icon,label=param.label,dynamicTitle=param.dynamicTitle,closable=param.closable;return{key:key,label:React.createElement(Dropdown,{menu:{items:getItems(key),onClick:function(info){info.domEvent.stopPropagation();closedTab(key,info.key)}},trigger:["contextMenu"],destroyPopupOnHide:true},React.createElement("div",null,icon,t[label||"route-".concat(key)]+(dynamicTitle||""))),closable:closable}})},[closedTab,getItems,t,tabs]);return React.createElement(Layout,{className:cls.layout},layoutSider?React.createElement(Layout.Sider,_extends({className:cls.sider,trigger:null,collapsible:true,collapsed:collapsed,onBreakpoint:function(broken){return handleCollapsed(broken)},onCollapse:function(_collapsed){return handleCollapsed(_collapsed)},theme:"light",breakpoint:"md"},layoutSider),React.createElement("div",{className:cls.logo,"data-title":projectName},React.createElement(FallbackComp,{compName:"logo",show:!collapsed})),React.createElement(LayoutMenu,{collapsed:collapsed,theme:layoutSider.theme})):null,React.createElement(Layout,{className:cls.section},React.createElement(FallbackComp,{compName:"layout-header",className:cls.header,collapsed:collapsed,onCollapsed:function(){return handleCollapsed(!collapsed)}}),React.createElement(Tabs,{className:cls.tabs,hideAdd:true,onTabClick:handleClick,activeKey:activeKey,type:"editable-card",onEdit:handleTabEdit,items:tabPanel,animated:true}),React.createElement(Layout.Content,{className:cls.content},React.createElement("div",{className:cls.view},children||outlet),React.createElement(FallbackComp,{compName:"layout-footer"}))))};export default DashboardLayout;
2
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/packages/back-stage/layout.tsx"],"sourcesContent":["import React, { type ReactNode, useCallback, useEffect, useMemo, useState, type FC } from 'react';\nimport { ReloadOutlined, DeleteRowOutlined, CloseOutlined } from '@ant-design/icons';\nimport { css, injectGlobal } from '@emotion/css';\nimport { Tabs, Layout, Dropdown } from 'antd';\nimport { useAliveController } from 'react-activation';\nimport { useSearchParams, useOutlet, useNavigate } from 'react-router-dom';\nimport FallbackComp from '../../components/fallback-comp';\nimport LayoutMenu from '../../components/layout-menu';\nimport { localizable } from '../../localizable';\nimport { menu, type CloseTab, type TabItem } from '../../menu';\nimport type { MenuItemType } from 'antd/es/menu/hooks/useItems';\n\ndeclare const favicon: string;\n\nconst { prefixCls } = providerConfig;\nconst c = (s: string) => `${prefixCls}-dashboard-${s}`;\nconst cls = {\n tabs: c('tabs'),\n layout: c('layout'),\n sider: c('sider'),\n header: c('header'),\n logo: c('logo'),\n section: c('section'),\n content: c('content'),\n view: c('view'),\n};\nconst layoutCss = css`\n .${cls.header}, .${cls.tabs} {\n z-index: 2;\n }\n .${cls.tabs} {\n position: sticky;\n top: 64px;\n overflow: initial !important;\n margin: 16px 16px 0 !important;\n\n > .${prefixCls}-tabs-nav {\n .${prefixCls}-tabs-tab {\n border-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-bottom-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-radius: var(--border-radius) !important;\n backdrop-filter: blur(16px);\n background-color: rgba(255, 255, 255, 0.8);\n &.${prefixCls}-tabs-tab-active {\n background-color: rgba(255, 255, 255, 0.9);\n }\n }\n\n &::before {\n content: none;\n }\n }\n }\n .${cls.layout} {\n width: 100% !important;\n min-height: 100vh !important;\n }\n .${cls.sider}, .${cls.section} {\n overflow-y: auto;\n max-height: 100vh;\n }\n .${cls.section} {\n overflow-y: auto;\n }\n .${cls.sider} {\n overflow-y: auto;\n }\n .${cls.content} {\n display: flex;\n margin: 0 16px;\n flex-direction: column;\n z-index: 1;\n }\n .${cls.view} {\n border-radius: var(--border-radius);\n padding: 24px;\n background: var(--component-card-bg, #fff);\n box-shadow: var(--box-shadow-lite);\n flex: 1;\n transition-property: background-color, box-shadow;\n }\n .${cls.view}, .${cls.logo}, .${cls.logo} > svg {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n .${cls.logo} {\n position: sticky;\n top: 0;\n z-index: 1;\n display: flex;\n gap: 10px;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n padding: 14px;\n height: 68px;\n text-align: center;\n color: #de4553;\n transition-property: background-color, border-color;\n cursor: pointer;\n user-select: none;\n\n > svg,\n &::before {\n transition-property: opacity;\n }\n\n > svg {\n height: 32px;\n opacity: 0;\n }\n\n &::before {\n display: block;\n width: 22px;\n height: 32px;\n background: url(${require(favicon)}) no-repeat center center / contain;\n opacity: 1;\n content: '';\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n }\n`;\n\ninjectGlobal([layoutCss]);\n\nconst closeTabs: ({ key: CloseTab | 'refresh' } & Omit<MenuItemType, 'key'>)[] = [\n {\n label: '关闭左侧标签',\n icon: <DeleteRowOutlined style={{ transform: 'scaleX(-1)' }} />,\n key: 'left',\n },\n {\n label: '关闭右侧标签',\n icon: <DeleteRowOutlined />,\n key: 'right',\n },\n {\n label: '关闭其他标签',\n icon: <CloseOutlined />,\n key: 'other',\n },\n {\n label: '刷新标签页',\n icon: <ReloadOutlined />,\n key: 'refresh',\n },\n];\nconst DashboardLayout: FC<{ children?: ReactNode }> = ({ children }) => {\n const { activeKey, tabs, openTab, closeTab, kv } = menu;\n const { t } = localizable;\n const outlet = useOutlet();\n const navigate = useNavigate();\n const { dropScope } = useAliveController();\n const [search] = useSearchParams();\n const [collapsed, setCollapsed] = useState<boolean>(false);\n const handleCollapsed = useCallback((value: boolean) => {\n if (value) {\n let _timer: number | null = window.setTimeout(() => {\n setCollapsed(value);\n window.clearTimeout(_timer as number);\n _timer = null;\n }, 0);\n } else {\n setCollapsed(value);\n let _timer: number | null = window.setTimeout(() => {\n window.clearTimeout(_timer as number);\n _timer = null;\n }, 30);\n }\n }, []);\n const closedTab = useCallback(\n (tabKey?: string, type?: CloseTab | 'refresh') => {\n if (type === 'refresh') {\n navigate('/refresh');\n return;\n }\n if (tabKey) {\n closeTab(tabKey, type, function (closes?: TabItem[], next?: TabItem) {\n closes?.forEach((item) => {\n if (item.path && dropScope) {\n dropScope(item.path);\n }\n });\n if (next) {\n navigate(`${next.path}?menuId=${next.key}`);\n }\n });\n }\n },\n [closeTab, dropScope, navigate]\n );\n\n const { menuId, dynamicLabel } = useMemo(\n () => ({\n menuId: search.get('menuId'),\n dynamicLabel: search.get('dynamicTitle') || '',\n }),\n [search]\n );\n\n useEffect(() => {\n if (menuId) {\n openTab({\n key: menuId,\n dynamicTitle: dynamicLabel,\n });\n }\n }, [dynamicLabel, menuId, openTab]);\n\n const getItems = useCallback(\n (key: string) =>\n key === activeKey ? closeTabs : closeTabs.filter((i) => i?.key !== 'refresh'),\n [activeKey]\n );\n const handleTabEdit = useCallback(\n (\n targetKey: string | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>,\n action: 'add' | 'remove'\n ) => {\n if (action === 'remove' && typeof targetKey === 'string') {\n closedTab(targetKey);\n }\n },\n [closedTab]\n );\n const handleClick = useCallback(\n (key: string) => {\n navigate(`${kv[key].key}?menuId=${kv[key].key}`);\n },\n [kv, navigate]\n );\n const tabPanel = useMemo(() => {\n return tabs.map(({ key, icon, label, dynamicTitle, closable }: TabItem) => {\n return {\n key,\n label: (\n <Dropdown\n menu={{\n items: getItems(key),\n onClick: (info) => {\n info.domEvent.stopPropagation();\n closedTab(key, info.key as CloseTab);\n },\n }}\n trigger={['contextMenu']}\n destroyPopupOnHide\n >\n <div>\n {icon}\n {t[(label as string) || `route-${key}`] + (dynamicTitle || '')}\n </div>\n </Dropdown>\n ),\n closable,\n };\n });\n }, [closedTab, getItems, t, tabs]);\n\n return (\n <Layout className={cls.layout}>\n {layoutSider ? (\n <Layout.Sider\n className={cls.sider}\n trigger={null}\n collapsible\n collapsed={collapsed}\n onBreakpoint={(broken: boolean) => handleCollapsed(broken)}\n onCollapse={(_collapsed: boolean) => handleCollapsed(_collapsed)}\n theme=\"light\"\n breakpoint=\"md\"\n {...layoutSider}\n >\n <div className={cls.logo} data-title={projectName}>\n <FallbackComp compName=\"logo\" show={!collapsed} />\n </div>\n <LayoutMenu collapsed={collapsed} theme={layoutSider.theme} />\n </Layout.Sider>\n ) : null}\n <Layout className={cls.section}>\n <FallbackComp\n compName=\"layout-header\"\n className={cls.header}\n collapsed={collapsed}\n onCollapsed={() => handleCollapsed(!collapsed)}\n />\n <Tabs\n className={cls.tabs}\n hideAdd\n onTabClick={handleClick}\n activeKey={activeKey}\n type=\"editable-card\"\n onEdit={handleTabEdit}\n items={tabPanel}\n animated\n />\n <Layout.Content className={cls.content}>\n <div className={cls.view}>{children || outlet}</div>\n <FallbackComp compName=\"layout-footer\" />\n </Layout.Content>\n </Layout>\n </Layout>\n );\n};\n\nexport default DashboardLayout;\n"],"names":["React","useCallback","useEffect","useMemo","useState","ReloadOutlined","DeleteRowOutlined","CloseOutlined","css","injectGlobal","Tabs","Layout","Dropdown","useAliveController","useSearchParams","useOutlet","useNavigate","FallbackComp","LayoutMenu","localizable","menu","prefixCls","providerConfig","c","s","cls","tabs","layout","sider","header","logo","section","content","view","layoutCss","require","favicon","closeTabs","label","icon","style","transform","key","DashboardLayout","children","activeKey","openTab","closeTab","kv","t","outlet","navigate","dropScope","search","collapsed","setCollapsed","handleCollapsed","value","_timer","window","setTimeout","clearTimeout","closedTab","tabKey","type","closes","next","forEach","item","path","menuId","get","dynamicLabel","dynamicTitle","getItems","filter","i","handleTabEdit","targetKey","action","handleClick","tabPanel","map","closable","items","onClick","info","domEvent","stopPropagation","trigger","destroyPopupOnHide","div","className","layoutSider","Sider","collapsible","onBreakpoint","broken","onCollapse","_collapsed","theme","breakpoint","data-title","projectName","compName","show","onCollapsed","hideAdd","onTabClick","onEdit","animated","Content"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var App=function(){return React.createElement(RouterFragment,null,React.createElement(I18n,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName}),fallbackElement:React.createElement(Fallback,null)})))};export default App;
1
+ import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var App=function(){return React.createElement(RouterFragment,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName}),fallbackElement:React.createElement(Fallback,null)}))};export default App;
2
2
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/library/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <I18n>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n })}\n fallbackElement={<Fallback />}\n />\n </I18n>\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","I18n","hasLocales","require","I18nProvider","Fragment","App","router","basename","programInfo","routeBaseName","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAGjD,IAAMC,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGT,MAAMU,QAAQ,CAE7E,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACT,oBACC,oBAACI,UACC,oBAACL,gBACCW,OAAQR,aAAaD,WAAY,CAC/BU,SAAUC,YAAYC,aAAa,AACrC,GACAC,gBAAiB,oBAACX,kBAK5B,CAEA,gBAAeM,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/library/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,AACrC,GACAC,gBAAiB,oBAACN,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1,4 +1,3 @@
1
- import '../../utils/env';
2
1
  import '../../utils/refresh-rem';
3
2
  import '../../styles/normalize.css';
4
3
  declare const bootstrap: typeof import("./bootstrap");
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
1
+ import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/library/index.ts"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
1
+ {"version":3,"sources":["../../../src/packages/library/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var App=function(){return React.createElement(RouterFragment,null,React.createElement(I18n,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName}),fallbackElement:React.createElement(Fallback,null)})))};export default App;
1
+ import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var App=function(){return React.createElement(RouterFragment,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName,window:window}),fallbackElement:React.createElement(Fallback,null)}))};export default App;
2
2
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/mobile/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <I18n>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n })}\n fallbackElement={<Fallback />}\n />\n </I18n>\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","I18n","hasLocales","require","I18nProvider","Fragment","App","router","basename","programInfo","routeBaseName","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAGjD,IAAMC,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGT,MAAMU,QAAQ,CAE7E,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACT,oBACC,oBAACI,UACC,oBAACL,gBACCW,OAAQR,aAAaD,WAAY,CAC/BU,SAAUC,YAAYC,aAAa,AACrC,GACAC,gBAAiB,oBAACX,kBAK5B,CAEA,gBAAeM,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/mobile/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACP,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1,3 +1,2 @@
1
- import '../../utils/env';
2
1
  import '../../utils/refresh-rem';
3
2
  import '../../styles/normalize.css';
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";import React from"react";import{isFunction}from"@moneko/common";import fastClick from"fastclick";import App from"./app";var appEntry=APPENTRY?require(APPENTRY):null;var SafeReactDOM=require(ReactDOMPath);fastClick.attach(document.body);var version=parseFloat(React.version);var container=document.getElementById("root");var bootstrap=function(){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap)){appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap()}if(version>=18){if(programInfo.renderMode==="ssr"){window.rootInstance=SafeReactDOM.hydrateRoot(container,React.createElement(App,null))}else{window.rootInstance=SafeReactDOM.createRoot(container);window.rootInstance.render(React.createElement(App,null))}}else{var render=module.hot?SafeReactDOM.render:SafeReactDOM.hydrate;render(React.createElement(App,null),container)}if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.mount)){appEntry===null||appEntry===void 0?void 0:appEntry.mount()}};window.H5RemoteRuntime={bootstrap:bootstrap};bootstrap();
1
+ import"../../utils/refresh-rem";import"../../styles/normalize.css";import React from"react";import{isFunction}from"@moneko/common";import fastClick from"fastclick";import App from"./app";var appEntry=APPENTRY?require(APPENTRY):null;var SafeReactDOM=require(ReactDOMPath);fastClick.attach(document.body);var version=parseFloat(React.version);var container=document.getElementById("root");var bootstrap=function(){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap)){appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap()}if(version>=18){if(programInfo.renderMode==="ssr"){window.rootInstance=SafeReactDOM.hydrateRoot(container,React.createElement(App,null))}else{window.rootInstance=SafeReactDOM.createRoot(container);window.rootInstance.render(React.createElement(App,null))}}else{var render=module.hot?SafeReactDOM.render:SafeReactDOM.hydrate;render(React.createElement(App,null),container)}if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.mount)){appEntry===null||appEntry===void 0?void 0:appEntry.mount()}};window.H5RemoteRuntime={bootstrap:bootstrap};bootstrap();
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/mobile/index.tsx"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\nimport fastClick from 'fastclick';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\n(fastClick as unknown as FastClickStatic).attach(document.body);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nconst bootstrap = () => {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n } else {\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n};\n\ninterface Window {\n H5RemoteRuntime: {\n bootstrap: () => void;\n };\n}\n\n(window as unknown as Window).H5RemoteRuntime = {\n bootstrap: bootstrap,\n};\n\nbootstrap();\n"],"names":["React","isFunction","fastClick","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","attach","document","body","version","parseFloat","container","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","module","hot","hydrate","mount","H5RemoteRuntime"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,AACpC,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,cAAe,WAAY,AAClC,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,AAACN,UAAyCO,MAAM,CAACC,SAASC,IAAI,EAE9D,IAAMC,QAAUC,WAAWb,MAAMY,OAAO,EACxC,IAAME,UAAYJ,SAASK,cAAc,CAAC,QAE1C,IAAMC,UAAY,UAAM,CACtB,GAAIf,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EAAG,CACnCZ,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EACrB,CAAC,AACD,GAAIJ,SAAW,GAAI,CACjB,GAAIK,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGb,aAAac,WAAW,CAACP,UAAW,oBAACX,UAC7D,KAAO,CACLgB,OAAOC,YAAY,CAAGb,aAAae,UAAU,CAACR,WAC9CK,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAACpB,UAC9B,CAAC,AACH,KAAO,CACL,IAAMoB,OAASC,OAAOC,GAAG,CAAGlB,aAAagB,MAAM,CAAGhB,aAAamB,OAAO,CAEtEH,OAAO,oBAACpB,UAAQW,UAClB,CAAC,AACD,GAAIb,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUuB,KAAK,EAAG,CAC/BvB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUuB,KAAK,EACjB,CAAC,AACH,CAQA,CAACR,OAA6BS,eAAe,CAAG,CAC9CZ,UAAWA,SACb,EAEAA"}
1
+ {"version":3,"sources":["../../../src/packages/mobile/index.tsx"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\nimport fastClick from 'fastclick';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\n(fastClick as unknown as FastClickStatic).attach(document.body);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nconst bootstrap = () => {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n } else {\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n};\n\ninterface Window {\n H5RemoteRuntime: {\n bootstrap: () => void;\n };\n}\n\n(window as unknown as Window).H5RemoteRuntime = {\n bootstrap: bootstrap,\n};\n\nbootstrap();\n"],"names":["React","isFunction","fastClick","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","attach","document","body","version","parseFloat","container","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","module","hot","hydrate","mount","H5RemoteRuntime"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,AACpC,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,cAAe,WAAY,AAClC,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,AAACN,UAAyCO,MAAM,CAACC,SAASC,IAAI,EAE9D,IAAMC,QAAUC,WAAWb,MAAMY,OAAO,EACxC,IAAME,UAAYJ,SAASK,cAAc,CAAC,QAE1C,IAAMC,UAAY,UAAM,CACtB,GAAIf,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EAAG,CACnCZ,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EACrB,CAAC,AACD,GAAIJ,SAAW,GAAI,CACjB,GAAIK,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGb,aAAac,WAAW,CAACP,UAAW,oBAACX,UAC7D,KAAO,CACLgB,OAAOC,YAAY,CAAGb,aAAae,UAAU,CAACR,WAC9CK,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAACpB,UAC9B,CAAC,AACH,KAAO,CACL,IAAMoB,OAASC,OAAOC,GAAG,CAAGlB,aAAagB,MAAM,CAAGhB,aAAamB,OAAO,CAEtEH,OAAO,oBAACpB,UAAQW,UAClB,CAAC,AACD,GAAIb,WAAWG,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUuB,KAAK,EAAG,CAC/BvB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUuB,KAAK,EACjB,CAAC,AACH,CAQA,CAACR,OAA6BS,eAAe,CAAG,CAC9CZ,UAAWA,SACb,EAEAA"}
@@ -1,8 +1,8 @@
1
1
  import { type FC, type ReactElement } from 'react';
2
- import type { I18nState } from 'i18n-hooks';
2
+ import { type LocaleName } from '../../localizable';
3
3
  declare const App: FC<{
4
4
  basename?: string;
5
5
  fallback?: ReactElement;
6
- i18nStore?: I18nState;
6
+ language?: LocaleName;
7
7
  }>;
8
8
  export default App;
@@ -1,2 +1,2 @@
1
- function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var I18nProvider=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var App=function(param){var _param_basename=param.basename,basename=_param_basename===void 0?programInfo.routeBaseName:_param_basename,_param_fallback=param.fallback,fallback=_param_fallback===void 0?React.createElement(Fallback,null):_param_fallback,i18nStore=param.i18nStore;return React.createElement(RouterFragment,null,React.createElement(I18nProvider,_extends({},hasLocales?{store:i18nStore}:{}),React.createElement(RouterProvider,{router:createRouter(routerData,{basename:basename,window:window}),fallbackElement:fallback})))};export default App;
1
+ import React,{useEffect}from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";import{localizable}from"../../localizable";var App=function(param){var _param_basename=param.basename,basename=_param_basename===void 0?programInfo.routeBaseName:_param_basename,_param_fallback=param.fallback,fallback=_param_fallback===void 0?React.createElement(Fallback,null):_param_fallback,language=param.language;useEffect(function(){if(language&&language!==localizable.language){localizable.set(language)}},[language]);return React.createElement(RouterFragment,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:basename,window:window}),fallbackElement:fallback}))};export default App;
2
2
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/app.tsx"],"sourcesContent":["import React, { type FC, type ReactElement } from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\nimport type { I18nState } from 'i18n-hooks';\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18nProvider = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\n\nconst App: FC<{ basename?: string; fallback?: ReactElement; i18nStore?: I18nState }> = ({\n basename = programInfo.routeBaseName,\n fallback = <Fallback />,\n i18nStore,\n}) => {\n return (\n <RouterFragment>\n <I18nProvider {...(hasLocales ? { store: i18nStore } : {})}>\n <RouterProvider\n router={createRouter(routerData, {\n basename: basename,\n window: window,\n })}\n fallbackElement={fallback}\n />\n </I18nProvider>\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","I18nProvider","hasLocales","require","Fragment","App","basename","programInfo","routeBaseName","fallback","i18nStore","store","router","window","fallbackElement"],"mappings":"oRAAA,OAAOA,UAA2C,OAAQ,AAC1D,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAIjD,IAAMC,aAAeC,WAAaC,QAAQ,cAAcF,YAAY,CAAGN,MAAMS,QAAQ,CAErF,IAAMC,IAAiF,eAIjF,2BAHJC,SAAAA,kCAAWC,YAAYC,aAAa,uCACpCC,SAAAA,kCAAW,oBAACT,+BACZU,gBAAAA,UAEA,OACE,oBAACb,oBACC,oBAACI,yBAAkBC,WAAa,CAAES,MAAOD,SAAU,EAAI,CAAC,CAAC,EACvD,oBAACd,gBACCgB,OAAQb,aAAaD,WAAY,CAC/BQ,SAAUA,SACVO,OAAQA,MACV,GACAC,gBAAiBL,YAK3B,CAEA,gBAAeJ,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/single-spa/app.tsx"],"sourcesContent":["import React, { useEffect, type FC, type ReactElement } from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\nimport { type LocaleName, localizable } from '../../localizable';\n\nconst App: FC<{ basename?: string; fallback?: ReactElement; language?: LocaleName }> = ({\n basename = programInfo.routeBaseName,\n fallback = <Fallback />,\n language,\n}) => {\n useEffect(() => {\n if (language && language !== localizable.language) {\n localizable.set(language);\n }\n }, [language]);\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: basename,\n window: window,\n })}\n fallbackElement={fallback}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","useEffect","RouterProvider","RouterFragment","routerData","createRouter","Fallback","localizable","App","basename","programInfo","routeBaseName","fallback","language","set","router","window","fallbackElement"],"mappings":"AAAA,OAAOA,OAASC,SAAS,KAAoC,OAAQ,AACrE,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,AACjD,QAA0BC,WAAW,KAAQ,mBAAoB,CAEjE,IAAMC,IAAiF,eAIjF,2BAHJC,SAAAA,kCAAWC,YAAYC,aAAa,uCACpCC,SAAAA,kCAAW,oBAACN,+BACZO,eAAAA,SAEAZ,UAAU,UAAM,CACd,GAAIY,UAAYA,WAAaN,YAAYM,QAAQ,CAAE,CACjDN,YAAYO,GAAG,CAACD,SAClB,CAAC,AACH,EAAG,CAACA,SAAS,EACb,OACE,oBAACV,oBACC,oBAACD,gBACCa,OAAQV,aAAaD,WAAY,CAC/BK,SAAUA,SACVO,OAAQA,MACV,GACAC,gBAAiBL,WAIzB,CAEA,gBAAeJ,GAAI"}
@@ -1,2 +1,2 @@
1
- function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _objectSpreadProps(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var __generator=this&&this.__generator||function(thisArg,body){var f,y,t,g,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]};return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};import React from"react";import{isFunction}from"@moneko/common";import App from"./app";var appEntry=APPENTRY?require(APPENTRY):null;var SafeReactDOM=require(ReactDOMPath);var _version=parseFloat(React.version);function render(props){var container=props.container,basename=props.basename,fallback=props.fallback,i18nStore=props.i18nStore,args=_objectWithoutProperties(props,["container","basename","fallback","i18nStore"]);var _container=(container===null||container===void 0?void 0:container.querySelector("#root"))||document.querySelector("#root");var appProps={basename:basename,fallback:fallback,i18nStore:i18nStore};window.primaryApp=_objectSpreadProps(_objectSpread({},args),{container:_container});if(_version>=18){if(programInfo.renderMode==="ssr"){window.rootInstance=SafeReactDOM.hydrateRoot(_container,React.createElement(App,_extends({},appProps)))}else{window.rootInstance=SafeReactDOM.createRoot(_container);window.rootInstance.render(React.createElement(App,_extends({},appProps)))}}else{var reactRender=module.hot?SafeReactDOM.render:SafeReactDOM.hydrate;reactRender(React.createElement(App,_extends({},appProps)),_container)}}if(!window.__POWERED_BY_QIANKUN__){render({})}export function bootstrap(){return _bootstrap.apply(this,arguments)}function _bootstrap(){_bootstrap=_asyncToGenerator(function(){return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap)){appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap()}return[2]})});return _bootstrap.apply(this,arguments)}export function unmount(props){return _unmount.apply(this,arguments)}function _unmount(){_unmount=_asyncToGenerator(function(props){var container,_container;return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.unmount)){appEntry===null||appEntry===void 0?void 0:appEntry.unmount(props)}container=props.container;if(_version>=18){window.rootInstance.unmount()}else{_container=(container===null||container===void 0?void 0:container.querySelector("#root"))||document.querySelector("#root");SafeReactDOM.unmountComponentAtNode(_container)}return[2]})});return _unmount.apply(this,arguments)}export function mount(props){return _mount.apply(this,arguments)}function _mount(){_mount=_asyncToGenerator(function(props){return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.mount)){appEntry===null||appEntry===void 0?void 0:appEntry.mount(props)}render(props);return[2]})});return _mount.apply(this,arguments)}
1
+ function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _objectSpreadProps(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var __generator=this&&this.__generator||function(thisArg,body){var f,y,t,g,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]};return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};import React from"react";import{isFunction}from"@moneko/common";import App from"./app";var appEntry=APPENTRY?require(APPENTRY):null;var SafeReactDOM=require(ReactDOMPath);var _version=parseFloat(React.version);function render(props){var container=props.container,basename=props.basename,fallback=props.fallback,language=props.language,args=_objectWithoutProperties(props,["container","basename","fallback","language"]);var _container=(container===null||container===void 0?void 0:container.querySelector("#root"))||document.querySelector("#root");var appProps={basename:basename,fallback:fallback,language:language};window.primaryApp=_objectSpreadProps(_objectSpread({},args),{container:_container});if(_version>=18){if(programInfo.renderMode==="ssr"){window.rootInstance=SafeReactDOM.hydrateRoot(_container,React.createElement(App,_extends({},appProps)))}else{window.rootInstance=SafeReactDOM.createRoot(_container);window.rootInstance.render(React.createElement(App,_extends({},appProps)))}}else{var reactRender=module.hot?SafeReactDOM.render:SafeReactDOM.hydrate;reactRender(React.createElement(App,_extends({},appProps)),_container)}}if(!window.__POWERED_BY_QIANKUN__){render({})}export function bootstrap(){return _bootstrap.apply(this,arguments)}function _bootstrap(){_bootstrap=_asyncToGenerator(function(){return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap)){appEntry===null||appEntry===void 0?void 0:appEntry.bootstrap()}return[2]})});return _bootstrap.apply(this,arguments)}export function unmount(props){return _unmount.apply(this,arguments)}function _unmount(){_unmount=_asyncToGenerator(function(props){var container,_container;return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.unmount)){appEntry===null||appEntry===void 0?void 0:appEntry.unmount(props)}container=props.container;if(_version>=18){window.rootInstance.unmount()}else{_container=(container===null||container===void 0?void 0:container.querySelector("#root"))||document.querySelector("#root");SafeReactDOM.unmountComponentAtNode(_container)}return[2]})});return _unmount.apply(this,arguments)}export function mount(props){return _mount.apply(this,arguments)}function _mount(){_mount=_asyncToGenerator(function(props){return __generator(this,function(_state){if(isFunction(appEntry===null||appEntry===void 0?void 0:appEntry.mount)){appEntry===null||appEntry===void 0?void 0:appEntry.mount(props)}render(props);return[2]})});return _mount.apply(this,arguments)}
2
2
  //# sourceMappingURL=bootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\nimport type { I18nState } from 'i18n-hooks';\n\ntype AppEntryMethods = {\n unmount?: Promise<void>;\n mount?: Promise<void>;\n bootstrap?: Promise<void>;\n};\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst _version = parseFloat(React.version);\n\ntype RenderParamsType = {\n container?: HTMLElement;\n basename?: string;\n fallback?: React.ReactElement;\n i18nStore?: I18nState;\n};\n\nfunction render(props: RenderParamsType) {\n const { container, basename, fallback, i18nStore, ...args } = props;\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n const appProps = {\n basename,\n fallback,\n i18nStore,\n };\n\n window.primaryApp = {\n ...args,\n container: _container,\n };\n if (_version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(\n _container as HTMLElement,\n <App {...appProps} />\n );\n } else {\n window.rootInstance = SafeReactDOM.createRoot(_container as HTMLElement);\n window.rootInstance.render(<App {...appProps} />);\n }\n } else {\n const reactRender = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n reactRender(<App {...appProps} />, _container);\n }\n}\n\nif (!window.__POWERED_BY_QIANKUN__) {\n render({});\n}\n\nexport async function bootstrap(): Promise<void> {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function unmount(props: any): Promise<void> {\n if (isFunction(appEntry?.unmount)) {\n appEntry?.unmount(props);\n }\n const { container } = props;\n\n if (_version >= 18) {\n window.rootInstance.unmount();\n } else {\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n SafeReactDOM.unmountComponentAtNode(_container);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function mount(props: any): Promise<void> {\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount(props);\n }\n render(props);\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","_version","parseFloat","version","render","props","container","basename","fallback","i18nStore","args","_container","querySelector","document","appProps","window","primaryApp","programInfo","renderMode","rootInstance","hydrateRoot","createRoot","reactRender","module","hot","hydrate","__POWERED_BY_QIANKUN__","bootstrap","unmount","unmountComponentAtNode","mount"],"mappings":"s5HAAA,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CASxB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,SAAWC,WAAWT,MAAMU,OAAO,EASzC,SAASC,OAAOC,KAAuB,CAAE,CACvC,IAAQC,UAAsDD,MAAtDC,UAAWC,SAA2CF,MAA3CE,SAAUC,SAAiCH,MAAjCG,SAAUC,UAAuBJ,MAAvBI,UAAcC,8BAASL,OAAtDC,YAAWC,WAAUC,WAAUC,cACvC,IAAME,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAC/E,IAAME,SAAW,CACfP,SAAAA,SACAC,SAAAA,SACAC,UAAAA,SACF,CAEAM,CAAAA,OAAOC,UAAU,CAAG,oCACfN,OACHJ,UAAWK,aAEb,GAAIV,UAAY,GAAI,CAClB,GAAIgB,YAAYC,UAAU,GAAK,MAAO,CACpCH,OAAOI,YAAY,CAAGpB,aAAaqB,WAAW,CAC5CT,WACA,oBAAChB,gBAAQmB,WAEb,KAAO,CACLC,OAAOI,YAAY,CAAGpB,aAAasB,UAAU,CAACV,YAC9CI,OAAOI,YAAY,CAACf,MAAM,CAAC,oBAACT,gBAAQmB,WACtC,CAAC,AACH,KAAO,CACL,IAAMQ,YAAcC,OAAOC,GAAG,CAAGzB,aAAaK,MAAM,CAAGL,aAAa0B,OAAO,CAE3EH,YAAY,oBAAC3B,gBAAQmB,WAAcH,WACrC,CAAC,AACH,CAEA,GAAI,CAACI,OAAOW,sBAAsB,CAAE,CAClCtB,OAAO,CAAC,EACV,CAAC,AAED,gBAAsBuB,mBAAAA,iCAIrB,SAJqBA,aAAAA,WAAf,kBAAA,UAA0C,0CAC/C,GAAIjC,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EAAG,CACnC/B,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EACrB,CAAC,WACH,UAJsBA,iCAOtB,gBAAsBC,QAAQvB,KAAU,SAAlBuB,+BAarB,SAbqBA,WAAAA,SAAf,kBAAA,SAAuBvB,KAAU,CAAiB,KAI/CC,UAKAK,oDARR,GAAIjB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,EAAG,CACjChC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,CAACvB,MACpB,CAAC,AACOC,UAAcD,MAAdC,UAER,GAAIL,UAAY,GAAI,CAClBc,OAAOI,YAAY,CAACS,OAAO,EAC7B,KAAO,CACCjB,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAE/Eb,aAAa8B,sBAAsB,CAAClB,WACtC,CAAC,WACH,UAbsBiB,+BAgBtB,gBAAsBE,MAAMzB,KAAU,SAAhByB,6BAKrB,SALqBA,SAAAA,OAAf,kBAAA,SAAqBzB,KAAU,CAAiB,0CACrD,GAAIX,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,EAAG,CAC/BlC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,CAACzB,MAClB,CAAC,AACDD,OAAOC,kBACT,UALsByB"}
1
+ {"version":3,"sources":["../../../src/packages/single-spa/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\nimport { type LocaleName } from '../../localizable';\n\ntype AppEntryMethods = {\n unmount?: Promise<void>;\n mount?: Promise<void>;\n bootstrap?: Promise<void>;\n};\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst _version = parseFloat(React.version);\n\ntype RenderParamsType = {\n container?: HTMLElement;\n basename?: string;\n fallback?: React.ReactElement;\n language?: LocaleName;\n};\n\nfunction render(props: RenderParamsType) {\n const { container, basename, fallback, language, ...args } = props;\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n const appProps = {\n basename,\n fallback,\n language,\n };\n\n window.primaryApp = {\n ...args,\n container: _container,\n };\n if (_version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(\n _container as HTMLElement,\n <App {...appProps} />\n );\n } else {\n window.rootInstance = SafeReactDOM.createRoot(_container as HTMLElement);\n window.rootInstance.render(<App {...appProps} />);\n }\n } else {\n const reactRender = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n reactRender(<App {...appProps} />, _container);\n }\n}\n\nif (!window.__POWERED_BY_QIANKUN__) {\n render({});\n}\n\nexport async function bootstrap(): Promise<void> {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function unmount(props: any): Promise<void> {\n if (isFunction(appEntry?.unmount)) {\n appEntry?.unmount(props);\n }\n const { container } = props;\n\n if (_version >= 18) {\n window.rootInstance.unmount();\n } else {\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n SafeReactDOM.unmountComponentAtNode(_container);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function mount(props: any): Promise<void> {\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount(props);\n }\n render(props);\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","_version","parseFloat","version","render","props","container","basename","fallback","language","args","_container","querySelector","document","appProps","window","primaryApp","programInfo","renderMode","rootInstance","hydrateRoot","createRoot","reactRender","module","hot","hydrate","__POWERED_BY_QIANKUN__","bootstrap","unmount","unmountComponentAtNode","mount"],"mappings":"s5HAAA,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CASxB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,SAAWC,WAAWT,MAAMU,OAAO,EASzC,SAASC,OAAOC,KAAuB,CAAE,CACvC,IAAQC,UAAqDD,MAArDC,UAAWC,SAA0CF,MAA1CE,SAAUC,SAAgCH,MAAhCG,SAAUC,SAAsBJ,MAAtBI,SAAaC,8BAASL,OAArDC,YAAWC,WAAUC,WAAUC,aACvC,IAAME,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAC/E,IAAME,SAAW,CACfP,SAAAA,SACAC,SAAAA,SACAC,SAAAA,QACF,CAEAM,CAAAA,OAAOC,UAAU,CAAG,oCACfN,OACHJ,UAAWK,aAEb,GAAIV,UAAY,GAAI,CAClB,GAAIgB,YAAYC,UAAU,GAAK,MAAO,CACpCH,OAAOI,YAAY,CAAGpB,aAAaqB,WAAW,CAC5CT,WACA,oBAAChB,gBAAQmB,WAEb,KAAO,CACLC,OAAOI,YAAY,CAAGpB,aAAasB,UAAU,CAACV,YAC9CI,OAAOI,YAAY,CAACf,MAAM,CAAC,oBAACT,gBAAQmB,WACtC,CAAC,AACH,KAAO,CACL,IAAMQ,YAAcC,OAAOC,GAAG,CAAGzB,aAAaK,MAAM,CAAGL,aAAa0B,OAAO,CAE3EH,YAAY,oBAAC3B,gBAAQmB,WAAcH,WACrC,CAAC,AACH,CAEA,GAAI,CAACI,OAAOW,sBAAsB,CAAE,CAClCtB,OAAO,CAAC,EACV,CAAC,AAED,gBAAsBuB,mBAAAA,iCAIrB,SAJqBA,aAAAA,WAAf,kBAAA,UAA0C,0CAC/C,GAAIjC,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EAAG,CACnC/B,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EACrB,CAAC,WACH,UAJsBA,iCAOtB,gBAAsBC,QAAQvB,KAAU,SAAlBuB,+BAarB,SAbqBA,WAAAA,SAAf,kBAAA,SAAuBvB,KAAU,CAAiB,KAI/CC,UAKAK,oDARR,GAAIjB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,EAAG,CACjChC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,CAACvB,MACpB,CAAC,AACOC,UAAcD,MAAdC,UAER,GAAIL,UAAY,GAAI,CAClBc,OAAOI,YAAY,CAACS,OAAO,EAC7B,KAAO,CACCjB,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAE/Eb,aAAa8B,sBAAsB,CAAClB,WACtC,CAAC,WACH,UAbsBiB,+BAgBtB,gBAAsBE,MAAMzB,KAAU,SAAhByB,6BAKrB,SALqBA,SAAAA,OAAf,kBAAA,SAAqBzB,KAAU,CAAiB,0CACrD,GAAIX,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,EAAG,CAC/BlC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,CAACzB,MAClB,CAAC,AACDD,OAAOC,kBACT,UALsByB"}
@@ -1,5 +1,4 @@
1
1
  import './public-path';
2
- import '../../utils/env';
3
2
  import '../../utils/refresh-rem';
4
3
  import '../../styles/normalize.css';
5
4
  declare const bootstrap: typeof import("./bootstrap").bootstrap, mount: typeof import("./bootstrap").mount, unmount: typeof import("./bootstrap").unmount;
@@ -1,2 +1,2 @@
1
- import"./public-path";import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";var _ref=await import("./bootstrap"),bootstrap=_ref.bootstrap,mount=_ref.mount,unmount=_ref.unmount;export{bootstrap,mount,unmount};
1
+ import"./public-path";import"../../utils/refresh-rem";import"../../styles/normalize.css";var _ref=await import("./bootstrap"),bootstrap=_ref.bootstrap,mount=_ref.mount,unmount=_ref.unmount;export{bootstrap,mount,unmount};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/index.ts"],"sourcesContent":["import './public-path';\nimport '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst { bootstrap, mount, unmount } = await import('./bootstrap');\n\nexport { bootstrap, mount, unmount };\n"],"names":["bootstrap","mount","unmount"],"mappings":"AAAA,MAAO,eAAgB,AACvB,OAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAsC,KAAA,MAAM,MAAM,CAAC,eAA3CA,UAA8B,KAA9BA,UAAWC,MAAmB,KAAnBA,MAAOC,QAAY,KAAZA,OAE1B,QAASF,SAAS,CAAEC,KAAK,CAAEC,OAAO,CAAG"}
1
+ {"version":3,"sources":["../../../src/packages/single-spa/index.ts"],"sourcesContent":["import './public-path';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst { bootstrap, mount, unmount } = await import('./bootstrap');\n\nexport { bootstrap, mount, unmount };\n"],"names":["bootstrap","mount","unmount"],"mappings":"AAAA,MAAO,eAAgB,AACvB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAsC,KAAA,MAAM,MAAM,CAAC,eAA3CA,UAA8B,KAA9BA,UAAWC,MAAmB,KAAnBA,MAAOC,QAAY,KAAZA,OAE1B,QAASF,SAAS,CAAEC,KAAK,CAAEC,OAAO,CAAG"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var App=function(){return React.createElement(RouterFragment,null,React.createElement(I18n,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName,window:window}),fallbackElement:React.createElement(Fallback,null)})))};export default App;
1
+ import React from"react";import{RouterProvider}from"react-router-dom";import{RouterFragment,routerData,createRouter}from"../../components/app-router";import Fallback from"../../components/fallback";var App=function(){return React.createElement(RouterFragment,null,React.createElement(RouterProvider,{router:createRouter(routerData,{basename:programInfo.routeBaseName,window:window}),fallbackElement:React.createElement(Fallback,null)}))};export default App;
2
2
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/site/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <I18n>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </I18n>\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","I18n","hasLocales","require","I18nProvider","Fragment","App","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAGjD,IAAMC,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGT,MAAMU,QAAQ,CAE7E,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACT,oBACC,oBAACI,UACC,oBAACL,gBACCW,OAAQR,aAAaD,WAAY,CAC/BU,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACZ,kBAK5B,CAEA,gBAAeM,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/site/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACP,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1,4 +1,3 @@
1
- import '../../utils/env';
2
1
  import '../../utils/refresh-rem';
3
2
  import '../../styles/normalize.css';
4
3
  declare const bootstrap: typeof import("./bootstrap");
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
1
+ import"../../utils/refresh-rem";import"../../styles/normalize.css";var bootstrap=await import("./bootstrap");export default bootstrap;
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/site/index.ts"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
1
+ {"version":3,"sources":["../../../src/packages/site/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -1,2 +1,2 @@
1
- function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var ReactRouterDom=require("react-router-dom");var useNavigate=require("../hooks/navgate").default;var useNavigateReactRouter=ReactRouterDom.useNavigate,other=_objectWithoutProperties(ReactRouterDom,["useNavigate"]);module.exports=_objectSpread({useNavigateForReactRouter:useNavigateReactRouter,useNavigate:useNavigate},other);
1
+ function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var ReactRouterDom=require("react-router-dom");var Link=require("../react-router-dom/link").default;var useNavigate=require("../react-router-dom/use-navgate").default;var useNavigateReactRouter=ReactRouterDom.useNavigate,LinkReactRouter=ReactRouterDom.Link,other=_objectWithoutProperties(ReactRouterDom,["useNavigate","Link"]);module.exports=_objectSpread({useNavigateForReactRouter:useNavigateReactRouter,useNavigate:useNavigate,LinkReactRouter:LinkReactRouter,Link:Link},other);
2
2
  //# sourceMappingURL=react-router-dom.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/prefix/react-router-dom.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nconst ReactRouterDom = require('react-router-dom');\nconst useNavigate = require('../hooks/navgate').default;\nconst { useNavigate: useNavigateReactRouter, ...other } = ReactRouterDom;\n\nmodule.exports = {\n useNavigateForReactRouter: useNavigateReactRouter,\n useNavigate: useNavigate,\n ...other,\n};\n"],"names":["ReactRouterDom","require","useNavigate","default","useNavigateReactRouter","other","module","exports","useNavigateForReactRouter"],"mappings":"qyCACA,IAAMA,eAAiBC,QAAQ,oBAC/B,IAAMC,YAAcD,QAAQ,oBAAoBE,OAAO,CACvD,IAAQD,AAAaE,uBAAqCJ,eAAlDE,YAAwCG,+BAAUL,gBAAlDE,eAERI,CAAAA,OAAOC,OAAO,CAAG,eACfC,0BAA2BJ,uBAC3BF,YAAaA,aACVG"}
1
+ {"version":3,"sources":["../../src/prefix/react-router-dom.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nconst ReactRouterDom = require('react-router-dom');\nconst Link = require('../react-router-dom/link').default;\nconst useNavigate = require('../react-router-dom/use-navgate').default;\nconst { useNavigate: useNavigateReactRouter, Link: LinkReactRouter, ...other } = ReactRouterDom;\n\nmodule.exports = {\n useNavigateForReactRouter: useNavigateReactRouter,\n useNavigate: useNavigate,\n LinkReactRouter: LinkReactRouter,\n Link: Link,\n ...other,\n};\n"],"names":["ReactRouterDom","require","Link","default","useNavigate","useNavigateReactRouter","LinkReactRouter","other","module","exports","useNavigateForReactRouter"],"mappings":"qyCACA,IAAMA,eAAiBC,QAAQ,oBAC/B,IAAMC,KAAOD,QAAQ,4BAA4BE,OAAO,CACxD,IAAMC,YAAcH,QAAQ,mCAAmCE,OAAO,CACtE,IAAQC,AAAaC,uBAA4DL,eAAzEI,YAAqCF,AAAMI,gBAA8BN,eAApCE,KAA0BK,+BAAUP,gBAAzEI,cAAqCF,QAE7CM,CAAAA,OAAOC,OAAO,CAAG,eACfC,0BAA2BL,uBAC3BD,YAAaA,YACbE,gBAAiBA,gBACjBJ,KAAMA,MACHK"}
@@ -0,0 +1,9 @@
1
+ import { type FC } from 'react';
2
+ import { type LinkProps as ReactRouterLinkProps, type To } from 'react-router-dom';
3
+ export interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {
4
+ /** search保留字 */
5
+ reserved?: string | string[];
6
+ to: To | -1;
7
+ }
8
+ declare const Link: FC<LinkProps>;
9
+ export default Link;
@@ -0,0 +1,2 @@
1
+ function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import React,{useMemo}from"react";import{Link as ReactRouterLink,useSearchParams}from"react-router-dom";var Link=function(_param){var reserved=_param.reserved,to=_param.to,children=_param.children,props=_objectWithoutProperties(_param,["reserved","to","children"]);var reservedWord=Array.from(new Set(["menuId","dynamicTitle"].concat(reserved||""))).filter(Boolean);var _useSearchParams=_slicedToArray(useSearchParams(),1),search=_useSearchParams[0];var toUrl=useMemo(function(){if(to===-1){return-1}var nextSerach={};search.forEach(function(val,key){if(reservedWord.includes(key)){Object.assign(nextSerach,_defineProperty({},key,val))}});var entryUrl=to;var entrySearchIdx=entryUrl.indexOf("?");if(entrySearchIdx!==-1){var searchByToUrl=new URLSearchParams(entryUrl.slice(entrySearchIdx));searchByToUrl.forEach(function(val,key){Object.assign(nextSerach,_defineProperty({},key,val))});entryUrl=entryUrl.substring(0,entrySearchIdx)}var searchString=new URLSearchParams(nextSerach).toString();return(searchString===null||searchString===void 0?void 0:searchString.trim().length)?[entryUrl,searchString].join("?"):entryUrl},[reservedWord,search,to]);return React.createElement(ReactRouterLink,_extends({},props,{to:toUrl}),children)};export default Link;
2
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/react-router-dom/link.tsx"],"sourcesContent":["import React, { useMemo, type FC } from 'react';\nimport {\n Link as ReactRouterLink,\n useSearchParams,\n type LinkProps as ReactRouterLinkProps,\n type To,\n} from 'react-router-dom';\n\nexport interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {\n /** search保留字 */\n reserved?: string | string[];\n to: To | -1;\n}\n\nconst Link: FC<LinkProps> = ({ reserved, to, children, ...props }) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const [search] = useSearchParams();\n const toUrl = useMemo(() => {\n if (to === -1) {\n return -1;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n const searchString = new URLSearchParams(nextSerach).toString();\n\n return searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n }, [reservedWord, search, to]);\n\n return (\n <ReactRouterLink {...props} to={toUrl as To}>\n {children}\n </ReactRouterLink>\n );\n};\n\nexport default Link;\n"],"names":["React","useMemo","Link","ReactRouterLink","useSearchParams","reserved","to","children","props","reservedWord","Array","from","Set","concat","filter","Boolean","search","toUrl","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchString","toString","trim","length","join"],"mappings":"s8EAAA,OAAOA,OAASC,OAAO,KAAiB,OAAQ,AAChD,QACEC,QAAQC,eAAe,CACvBC,eAAe,KAGV,kBAAmB,CAQ1B,IAAMF,KAAsB,gBAA0C,KAAvCG,gBAAAA,SAAUC,UAAAA,GAAIC,gBAAAA,SAAaC,uCAA3BH,WAAUC,KAAIC,aAC3C,IAAME,aAAeC,MAAMC,IAAI,CAC7B,IAAIC,IAAI,CAAC,SAAU,eAAe,CAACC,MAAM,CAACR,UAAY,MACtDS,MAAM,CAACC,SACT,IAAiBX,gCAAAA,qBAAVY,OAAUZ,oBACjB,IAAMa,MAAQhB,QAAQ,UAAM,CAC1B,GAAIK,KAAO,CAAC,EAAG,CACb,MAAO,CAAC,CACV,CAAC,AAED,IAAMY,WAAqC,CAAC,EAE5CF,OAAOG,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAC3B,GAAIZ,aAAaa,QAAQ,CAACD,KAAM,CAC9BE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,CAAC,AACH,GAEA,IAAIK,SAAWnB,GACf,IAAMoB,eAAiB,AAACD,SAAoBE,OAAO,CAAC,KAEpD,GAAID,iBAAmB,CAAC,EAAG,CACzB,IAAME,cAAgB,IAAIC,gBAAgBJ,SAASK,KAAK,CAACJ,iBAEzDE,cAAcT,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAClCE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,GACAK,SAAWA,SAASM,SAAS,CAAC,EAAGL,eACnC,CAAC,AACD,IAAMM,aAAe,IAAIH,gBAAgBX,YAAYe,QAAQ,GAE7D,MAAOD,CAAAA,qBAAAA,sBAAAA,KAAAA,EAAAA,aAAcE,IAAI,GAAGC,MAAM,EAAG,CAACV,SAAUO,aAAa,CAACI,IAAI,CAAC,KAAOX,QAAQ,AACpF,EAAG,CAAChB,aAAcO,OAAQV,GAAG,EAE7B,OACE,oBAACH,4BAAoBK,OAAOF,GAAIW,QAC7BV,SAGP,CAEA,gBAAeL,IAAK"}
@@ -1,2 +1,2 @@
1
1
  function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import{useNavigate as useNavigateReactRouter,useSearchParams}from"react-router-dom";var useNavigate=function(reserved){var reservedWord=Array.from(new Set(["menuId","dynamicTitle"].concat(reserved||""))).filter(Boolean);var navigates=useNavigateReactRouter();var _useSearchParams=_slicedToArray(useSearchParams(),1),search=_useSearchParams[0];var navigate=function(to,options){if(to===-1){navigates(-1);return}var nextSerach={};search.forEach(function(val,key){if(reservedWord.includes(key)){Object.assign(nextSerach,_defineProperty({},key,val))}});var entryUrl=to;var entrySearchIdx=entryUrl.indexOf("?");if(entrySearchIdx!==-1){var searchByToUrl=new URLSearchParams(entryUrl.slice(entrySearchIdx));searchByToUrl.forEach(function(val,key){Object.assign(nextSerach,_defineProperty({},key,val))});entryUrl=entryUrl.substring(0,entrySearchIdx)}var searchObj=new URLSearchParams(nextSerach);var searchString=searchObj.toString();var toUrl=(searchString===null||searchString===void 0?void 0:searchString.trim().length)?[entryUrl,searchString].join("?"):entryUrl;navigates(toUrl,options)};return navigate};export default useNavigate;
2
- //# sourceMappingURL=navgate.js.map
2
+ //# sourceMappingURL=use-navgate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/react-router-dom/use-navgate.ts"],"sourcesContent":["import {\n useNavigate as useNavigateReactRouter,\n useSearchParams,\n type NavigateOptions,\n type To,\n} from 'react-router-dom';\n\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[]\n) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const navigates = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigate = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigates(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n\n const searchObj = new URLSearchParams(nextSerach);\n const searchString = searchObj.toString();\n const toUrl = searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n\n navigates(toUrl, options);\n };\n\n return navigate;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","concat","filter","Boolean","navigates","search","navigate","to","options","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchObj","searchString","toString","toUrl","trim","length","join"],"mappings":"8+CAAA,OACEA,eAAeC,sBAAsB,CACrCC,eAAe,KAGV,kBAAmB,CAE1B,IAAMF,YAAc,SAElBG,SACG,CACH,IAAMC,aAAeC,MAAMC,IAAI,CAC7B,IAAIC,IAAI,CAAC,SAAU,eAAe,CAACC,MAAM,CAACL,UAAY,MACtDM,MAAM,CAACC,SACT,IAAMC,UAAYV,yBAClB,IAAiBC,gCAAAA,qBAAVU,OAAUV,oBAEjB,IAAMW,SAAW,SAACC,GAAaC,QAA8B,CAC3D,GAAID,KAAO,CAAC,EAAG,CACbH,UAAU,CAAC,GACX,MACF,CAAC,AAED,IAAMK,WAAqC,CAAC,EAE5CJ,OAAOK,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAC3B,GAAIf,aAAagB,QAAQ,CAACD,KAAM,CAC9BE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,CAAC,AACH,GAEA,IAAIK,SAAWT,GACf,IAAMU,eAAiB,AAACD,SAAoBE,OAAO,CAAC,KAEpD,GAAID,iBAAmB,CAAC,EAAG,CACzB,IAAME,cAAgB,IAAIC,gBAAgBJ,SAASK,KAAK,CAACJ,iBAEzDE,cAAcT,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAClCE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,GACAK,SAAWA,SAASM,SAAS,CAAC,EAAGL,eACnC,CAAC,AAED,IAAMM,UAAY,IAAIH,gBAAgBX,YACtC,IAAMe,aAAeD,UAAUE,QAAQ,GACvC,IAAMC,MAAQF,CAAAA,qBAAAA,sBAAAA,KAAAA,EAAAA,aAAcG,IAAI,GAAGC,MAAM,EAAG,CAACZ,SAAUQ,aAAa,CAACK,IAAI,CAAC,KAAOb,QAAQ,CAEzFZ,UAAUsB,MAAOlB,QACnB,EAEA,OAAOF,QACT,CAEA,gBAAeb,WAAY"}
@@ -3,20 +3,26 @@ import type { KeepAliveProps } from 'react-activation';
3
3
  type Any = any;
4
4
  type MDXComponents = Record<string, FC<Any>>;
5
5
  export interface RouterProps {
6
+ /** 菜单id */
6
7
  key: string;
7
8
  alive?: KeepAliveProps | boolean;
9
+ /** 菜单图标 */
8
10
  icon?: ReactNode;
9
11
  dynamicTitle?: string;
12
+ /** 菜单名 */
10
13
  i18n?: string | null;
11
14
  hideMenu?: boolean;
12
15
  hideTabs?: boolean;
13
16
  onlyLogin?: boolean;
17
+ /** 菜单父id */
18
+ parentId?: string;
14
19
  root?: boolean;
15
20
  path?: string;
16
21
  element?: Any;
17
22
  fallback?: ReactNode;
18
23
  /** 可否关闭标签 */
19
24
  closable?: boolean;
25
+ /** 子菜单 */
20
26
  children?: RouterProps[];
21
27
  props?: {
22
28
  path: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { createElement, type FC, lazy, type ReactNode } from 'react';\nimport { isUndefined } from '@moneko/common';\nimport { pathToRegexp } from 'path-to-regexp';\nimport { Outlet } from 'react-router-dom';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\n// eslint-disable-next-line no-unused-vars\ntype MDXComponents = Record<string, FC<Any>>;\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactNode;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: Any;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n props?: {\n path: string;\n components?: MDXComponents;\n [key: string]: Any;\n };\n}\nexport function lazyImport(filePath: string) {\n return lazy(function () {\n return new Promise(function (resolve) {\n return import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n )\n .then(resolve)\n .catch(function () {\n return Promise.resolve({\n default: Outlet,\n });\n });\n });\n });\n}\n\nexport interface ExampleModule {\n code: string;\n title?: string;\n description?: string | null;\n noInline: boolean;\n language: never;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nexport const mdxComponents: MDXComponents = {};\n\n// function getLastJsx(str: string) {\n// const matchArr = str.match(\n// /<(\\w+)(?:(?!\\/>|>)[\\s\\S])*?(?:(\\/>|>((?:(?!<\\1(?:(?!\\/>|>|\\s)[\\s\\S])*?(?:\\/\\s*)?>)[\\s\\S])*?)<\\/\\1\\s*>))/gms\n// );\n\n// if (matchArr !== null) {\n// return matchArr[matchArr.length - 1];\n// }\n// return '';\n// }\nfunction heading(p: Any, level: number) {\n return createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n}\nfunction pre(p: Any) {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n mdxComponents.CodeBlock || 'pre',\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n}\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n let overrideComps: MDXComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n overrideComps = require('@/components/components').default;\n } catch (error) {\n /* empty */\n }\n\n Object.assign(mdxComponents, {\n h1: function (p: Any) {\n return heading(p, 1);\n },\n h2: function (p: Any) {\n return heading(p, 2);\n },\n h3: function (p: Any) {\n return heading(p, 3);\n },\n h4: function (p: Any) {\n return heading(p, 4);\n },\n h5: function (p: Any) {\n return heading(p, 5);\n },\n h6: function (p: Any) {\n return heading(p, 6);\n },\n pre: pre,\n ...overrideComps,\n });\n\n models.keys()?.forEach(function (item: string) {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: mdxComponents,\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach(function (e: string) {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n const exampleStr = allDemo(e);\n const m = exampleStr.matchAll(/```([^\\r\\n]+)?\\r?\\n([\\s\\S]*?)\\r?\\n```/g);\n let code = '',\n language = '';\n let description: string | null = null;\n\n for (const match of m) {\n language = match[1] || 'tsx';\n code = match[2];\n description = exampleStr.replace(match[0], '');\n }\n\n myDemoKv[name].push({\n language: language as never,\n code: code,\n description: description,\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n noInline: /render\\([^\\\\)]*\\);?(?=\\s*$)/.test(code),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nfunction prefixKey(path?: string, prev?: string) {\n // eslint-disable-next-line no-undefined\n return [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n}\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nfunction pathToTree(input: string[]) {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') {\n continue;\n }\n if (pathRule === '.') {\n pathRule = '*';\n }\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) {\n curr.push(node);\n }\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n}\nconst routers: RouterProps[] = pathToTree(\n models.keys().map(function (item: string) {\n return item.replace(/\\$/g, ':');\n })\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find(function (item) {\n return item.path === child.path;\n });\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = prefixKey(_.path, prev);\n if (isUndefined(_.i18n)) {\n _.i18n = 'route-' + _.key;\n }\n if (isUndefined(_.alive)) {\n _.alive = false;\n }\n if (isUndefined(_.element) && child.element) {\n _.element = child.element;\n _.props = child.props;\n }\n if (isUndefined(_.hideMenu)) {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach(function (childData) {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nfunction findLogin(rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] {\n return rs\n .map(function (e) {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = prefixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n}\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach(function (item: RouterProps) {\n merge(_router, item);\n});\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport function matchUtil(pathname: string) {\n let p: RouterProps = { key: '' };\n\n function findPath(rs: RouterProps[]) {\n rs.forEach(function (item) {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n } catch (error) {\n /* empty */\n }\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n }\n\n findPath(router);\n return p;\n}\n"],"names":["createElement","lazy","isUndefined","pathToRegexp","Outlet","lazyImport","filePath","Promise","resolve","replace","then","catch","default","myPkgs","myDemoKv","mdxComponents","heading","p","level","role","pre","c","className","CodeBlock","lang","APPTYPE","models","allDemo","require","context","overrideComps","error","Object","assign","h1","h2","h3","h4","h5","h6","keys","forEach","item","key","substring","split","slice","join","basic","Child","push","path","element","props","components","e","arr","k","name","Array","isArray","exampleStr","m","matchAll","code","language","description","match","title","pop","noInline","test","list","console","info","prefixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { createElement, type FC, lazy, type ReactNode } from 'react';\nimport { isUndefined } from '@moneko/common';\nimport { pathToRegexp } from 'path-to-regexp';\nimport { Outlet } from 'react-router-dom';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\n// eslint-disable-next-line no-unused-vars\ntype MDXComponents = Record<string, FC<Any>>;\nexport interface RouterProps {\n /** 菜单id */\n key: string;\n alive?: KeepAliveProps | boolean;\n /** 菜单图标 */\n icon?: ReactNode;\n dynamicTitle?: string;\n /** 菜单名 */\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n /** 菜单父id */\n parentId?: string;\n root?: boolean;\n path?: string;\n element?: Any;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n /** 子菜单 */\n children?: RouterProps[];\n props?: {\n path: string;\n components?: MDXComponents;\n [key: string]: Any;\n };\n}\nexport function lazyImport(filePath: string) {\n return lazy(function () {\n return new Promise(function (resolve) {\n return import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n )\n .then(resolve)\n .catch(function () {\n return Promise.resolve({\n default: Outlet,\n });\n });\n });\n });\n}\n\nexport interface ExampleModule {\n code: string;\n title?: string;\n description?: string | null;\n noInline: boolean;\n language: never;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nexport const mdxComponents: MDXComponents = {};\n\n// function getLastJsx(str: string) {\n// const matchArr = str.match(\n// /<(\\w+)(?:(?!\\/>|>)[\\s\\S])*?(?:(\\/>|>((?:(?!<\\1(?:(?!\\/>|>|\\s)[\\s\\S])*?(?:\\/\\s*)?>)[\\s\\S])*?)<\\/\\1\\s*>))/gms\n// );\n\n// if (matchArr !== null) {\n// return matchArr[matchArr.length - 1];\n// }\n// return '';\n// }\nfunction heading(p: Any, level: number) {\n return createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n}\nfunction pre(p: Any) {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n mdxComponents.CodeBlock || 'pre',\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n}\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n let overrideComps: MDXComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n overrideComps = require('@/components/components').default;\n } catch (error) {\n /* empty */\n }\n\n Object.assign(mdxComponents, {\n h1: function (p: Any) {\n return heading(p, 1);\n },\n h2: function (p: Any) {\n return heading(p, 2);\n },\n h3: function (p: Any) {\n return heading(p, 3);\n },\n h4: function (p: Any) {\n return heading(p, 4);\n },\n h5: function (p: Any) {\n return heading(p, 5);\n },\n h6: function (p: Any) {\n return heading(p, 6);\n },\n pre: pre,\n ...overrideComps,\n });\n\n models.keys()?.forEach(function (item: string) {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: mdxComponents,\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach(function (e: string) {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n const exampleStr = allDemo(e);\n const m = exampleStr.matchAll(/```([^\\r\\n]+)?\\r?\\n([\\s\\S]*?)\\r?\\n```/g);\n let code = '',\n language = '';\n let description: string | null = null;\n\n for (const match of m) {\n language = match[1] || 'tsx';\n code = match[2];\n description = exampleStr.replace(match[0], '');\n }\n\n myDemoKv[name].push({\n language: language as never,\n code: code,\n description: description,\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n noInline: /render\\([^\\\\)]*\\);?(?=\\s*$)/.test(code),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nfunction prefixKey(path?: string, prev?: string) {\n // eslint-disable-next-line no-undefined\n return [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n}\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nfunction pathToTree(input: string[]) {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') {\n continue;\n }\n if (pathRule === '.') {\n pathRule = '*';\n }\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) {\n curr.push(node);\n }\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n}\nconst routers: RouterProps[] = pathToTree(\n models.keys().map(function (item: string) {\n return item.replace(/\\$/g, ':');\n })\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find(function (item) {\n return item.path === child.path;\n });\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = prefixKey(_.path, prev);\n if (isUndefined(_.i18n)) {\n _.i18n = 'route-' + _.key;\n }\n if (isUndefined(_.alive)) {\n _.alive = false;\n }\n if (isUndefined(_.element) && child.element) {\n _.element = child.element;\n _.props = child.props;\n }\n if (isUndefined(_.hideMenu)) {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach(function (childData) {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nfunction findLogin(rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] {\n return rs\n .map(function (e) {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = prefixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n}\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach(function (item: RouterProps) {\n merge(_router, item);\n});\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport function matchUtil(pathname: string) {\n let p: RouterProps = { key: '' };\n\n function findPath(rs: RouterProps[]) {\n rs.forEach(function (item) {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n } catch (error) {\n /* empty */\n }\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n }\n\n findPath(router);\n return p;\n}\n"],"names":["createElement","lazy","isUndefined","pathToRegexp","Outlet","lazyImport","filePath","Promise","resolve","replace","then","catch","default","myPkgs","myDemoKv","mdxComponents","heading","p","level","role","pre","c","className","CodeBlock","lang","APPTYPE","models","allDemo","require","context","overrideComps","error","Object","assign","h1","h2","h3","h4","h5","h6","keys","forEach","item","key","substring","split","slice","join","basic","Child","push","path","element","props","components","e","arr","k","name","Array","isArray","exampleStr","m","matchAll","code","language","description","match","title","pop","noInline","test","list","console","info","prefixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}