@moneko/core 2.0.0-beta.26 → 2.0.0-beta.28

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 (75) hide show
  1. package/{lib/utils → build}/color-palette.d.ts +0 -0
  2. package/build/color-palette.js +1 -0
  3. package/build/common.js +1 -1
  4. package/build/html-add-entry-attr.js +1 -1
  5. package/build/html-plugin-option.js +1 -1
  6. package/build/module-federation.js +1 -1
  7. package/build/module.config.js +1 -1
  8. package/build/process-env.js +1 -1
  9. package/{lib/styles/vars.d.ts → build/variables.d.ts} +6 -0
  10. package/build/variables.js +1 -0
  11. package/build/yarn-argv.js +1 -1
  12. package/lib/components/app-router/index.d.ts +2 -3
  13. package/lib/components/app-router/index.js +1 -1
  14. package/lib/components/app-router/index.js.map +1 -1
  15. package/lib/components/fallback/index.js +1 -1
  16. package/lib/components/fallback/index.js.map +1 -1
  17. package/lib/components/fallback-comp/index.js +1 -1
  18. package/lib/components/fallback-comp/index.js.map +1 -1
  19. package/lib/components/layout-menu/index.js +1 -1
  20. package/lib/components/layout-menu/index.js.map +1 -1
  21. package/lib/components/readme/index.js +1 -1
  22. package/lib/components/readme/index.js.map +1 -1
  23. package/lib/hooks/navgate.js +1 -1
  24. package/lib/hooks/navgate.js.map +1 -1
  25. package/lib/index.d.ts +0 -2
  26. package/lib/index.js +1 -1
  27. package/lib/index.js.map +1 -1
  28. package/lib/packages/back-stage/app.js +1 -1
  29. package/lib/packages/back-stage/app.js.map +1 -1
  30. package/lib/packages/back-stage/bootstrap.d.ts +0 -4
  31. package/lib/packages/back-stage/bootstrap.js +1 -1
  32. package/lib/packages/back-stage/bootstrap.js.map +1 -1
  33. package/lib/packages/back-stage/index.d.ts +1 -0
  34. package/lib/packages/back-stage/index.js +1 -1
  35. package/lib/packages/back-stage/index.js.map +1 -1
  36. package/lib/packages/back-stage/layout/index.js +1 -1
  37. package/lib/packages/back-stage/layout/index.js.map +1 -1
  38. package/lib/packages/back-stage/models/app-program.js +1 -1
  39. package/lib/packages/back-stage/models/app-program.js.map +1 -1
  40. package/lib/packages/library/index.d.ts +0 -3
  41. package/lib/packages/library/index.js +1 -1
  42. package/lib/packages/library/index.js.map +1 -1
  43. package/lib/packages/mobile/app.d.ts +0 -4
  44. package/lib/packages/mobile/app.js +1 -1
  45. package/lib/packages/mobile/app.js.map +1 -1
  46. package/lib/packages/mobile/index.d.ts +1 -0
  47. package/lib/packages/mobile/index.js +1 -1
  48. package/lib/packages/mobile/index.js.map +1 -1
  49. package/lib/packages/single-spa/app.d.ts +0 -4
  50. package/lib/packages/single-spa/app.js +1 -1
  51. package/lib/packages/single-spa/app.js.map +1 -1
  52. package/lib/packages/single-spa/index.d.ts +1 -0
  53. package/lib/packages/single-spa/index.js +1 -1
  54. package/lib/packages/single-spa/index.js.map +1 -1
  55. package/lib/packages/site/app.d.ts +0 -4
  56. package/lib/packages/site/app.js +1 -1
  57. package/lib/packages/site/app.js.map +1 -1
  58. package/lib/packages/site/index.d.ts +1 -0
  59. package/lib/packages/site/index.js +1 -1
  60. package/lib/packages/site/index.js.map +1 -1
  61. package/lib/router/index.js +1 -1
  62. package/lib/router/index.js.map +1 -1
  63. package/lib/styles/global.css +0 -35
  64. package/lib/styles/normalize.css +7 -0
  65. package/lib/styles/variables.css +1 -1
  66. package/lib/utils/index.js +1 -1
  67. package/lib/utils/index.js.map +1 -1
  68. package/package.json +3 -4
  69. package/lib/styles/vars.js +0 -2
  70. package/lib/styles/vars.js.map +0 -1
  71. package/lib/utils/color-palette.js +0 -2
  72. package/lib/utils/color-palette.js.map +0 -1
  73. package/lib/utils/lazy-import.d.ts +0 -34
  74. package/lib/utils/lazy-import.js +0 -2
  75. package/lib/utils/lazy-import.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/index.ts"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,CAEjC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
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,2 +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 _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,{useCallback,useEffect,useMemo,useState}from"react";import{useSearchParams}from"react-router-dom";import{useLocale}from"i18n-hooks";import{Tabs,Layout,Menu,Dropdown}from"antd";import{ReloadOutlined,DeleteRowOutlined,CloseOutlined}from"@ant-design/icons";import{isEqual}from"@moneko/common";import{shallowEqual,useSelector,useDispatch}from"react-redux";import LayoutMenu from"../../../components/layout-menu";import AppRouter from"../../../components/app-router";import FallbackComp from"../../../components/fallback-comp";import{router}from"../../../router";import useNavigate from"../../../hooks/navgate";import styles from"./index.less";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 SiderLayout=function(){var dispatch=useDispatch();var activeKey=useSelector(function(store){return store.appProgram.activeKey},shallowEqual);var tabs=useSelector(function(store){return store.appProgram.tabs},shallowEqual);var menuKV=useSelector(function(store){return store.appProgram.menuKV||{}},shallowEqual);var navigate=useNavigate();var _useSearchParams=_slicedToArray(useSearchParams(),1),search=_useSearchParams[0];var getLanguage=useLocale().getLanguage;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}dispatch({type:"appProgram/closeTab",payload:{key:tabKey,type:type,callback:function callback(_,nextTab){if(nextTab){navigate("".concat(nextTab.path,"?menuId=").concat(nextTab.key))}}}})},[dispatch,navigate]);var _useMemo=useMemo(function(){return{menuId:search.get("menuId")||"",dynamicTitle:search.get("dynamicTitle")||""}},[search]),menuId=_useMemo.menuId,dynamicTitle=_useMemo.dynamicTitle;var current=menuKV[menuId];useEffect(function(){if(menuId){dispatch({type:"appProgram/openTab",payload:{key:menuId,dynamicTitle:dynamicTitle}})}},[dispatch,dynamicTitle,menuId,current]);var getItems=useCallback(function(key){return key===activeKey?closeTabs:closeTabs.filter(function(t){return(t===null||t===void 0?void 0:t.key)!=="refresh"})},[activeKey]);return React.createElement(Layout,{className:styles.layout},layoutSider?React.createElement(Layout.Sider,_extends({className:styles.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:styles.logo,"data-title":projectName},React.createElement(FallbackComp,{compName:"logo",show:!collapsed})),React.createElement(LayoutMenu,{collapsed:collapsed,theme:layoutSider.theme})):null,React.createElement(Layout,{className:styles.section},React.createElement(FallbackComp,{compName:"layout-header",collapsed:collapsed,onCollapsed:function(){return handleCollapsed(!collapsed)}}),React.createElement(Tabs,{className:styles.tabs,hideAdd:true,onTabClick:function(key){navigate("".concat(menuKV[key].path,"?menuId=").concat(menuKV[key].key))},activeKey:activeKey,size:"middle",type:"editable-card",onEdit:function(targetKey,action){if(action==="remove"&&typeof targetKey==="string"){closedTab(targetKey)}}},tabs.map(function(item){return React.createElement(Tabs.TabPane,{tab:React.createElement(Dropdown,{overlay:React.createElement(Menu,{items:getItems(item.key),onClick:function(info){info.domEvent.stopPropagation();closedTab(item.key,info.key)}}),trigger:["contextMenu"],destroyPopupOnHide:true},React.createElement("div",null,item.icon,getLanguage(item.i18n||"route-".concat(item.key))+item.dynamicTitle||"")),key:item.key,closable:item.closable})})),React.createElement(Layout.Content,{className:styles.layoutContent},React.createElement("div",{className:styles.content},React.createElement(AppRouter,{router:router})),React.createElement(FallbackComp,{compName:"layout-footer"}))))};export default React.memo(SiderLayout,isEqual);
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 _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,{useCallback,useEffect,useMemo,useState}from"react";import{useSearchParams}from"react-router-dom";import{useLocale}from"i18n-hooks";import{Tabs,Layout,Menu,Dropdown}from"antd";import{ReloadOutlined,DeleteRowOutlined,CloseOutlined}from"@ant-design/icons";import{isEqual}from"@moneko/common";import{shallowEqual,useSelector,useDispatch}from"react-redux";import LayoutMenu from"../../../components/layout-menu";import AppRouter from"../../../components/app-router";import FallbackComp from"../../../components/fallback-comp";import{router}from"../../../router";import useNavigate from"../../../hooks/navgate";import styles from"./index.less";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 SiderLayout=function(){var dispatch=useDispatch();var activeKey=useSelector(function(store){return store.appProgram.activeKey},shallowEqual);var tabs=useSelector(function(store){return store.appProgram.tabs},shallowEqual);var menuKV=useSelector(function(store){return store.appProgram.menuKV||{}},shallowEqual);var navigate=useNavigate();var ref=_slicedToArray(useSearchParams(),1),search=ref[0];var getLanguage=useLocale().getLanguage;var ref1=_slicedToArray(useState(false),2),collapsed=ref1[0],setCollapsed=ref1[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}dispatch({type:"appProgram/closeTab",payload:{key:tabKey,type:type,callback:function callback(_,nextTab){if(nextTab){navigate("".concat(nextTab.path,"?menuId=").concat(nextTab.key))}}}})},[dispatch,navigate]);var ref2=useMemo(function(){return{menuId:search.get("menuId")||"",dynamicTitle:search.get("dynamicTitle")||""}},[search]),menuId=ref2.menuId,dynamicTitle=ref2.dynamicTitle;var current=menuKV[menuId];useEffect(function(){if(menuId){dispatch({type:"appProgram/openTab",payload:{key:menuId,dynamicTitle:dynamicTitle}})}},[dispatch,dynamicTitle,menuId,current]);var getItems=useCallback(function(key){return key===activeKey?closeTabs:closeTabs.filter(function(t){return(t===null||t===void 0?void 0:t.key)!=="refresh"})},[activeKey]);return React.createElement(Layout,{className:styles.layout},layoutSider?React.createElement(Layout.Sider,_extends({className:styles.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:styles.logo,"data-title":projectName},React.createElement(FallbackComp,{compName:"logo",show:!collapsed})),React.createElement(LayoutMenu,{collapsed:collapsed,theme:layoutSider.theme})):null,React.createElement(Layout,{className:styles.section},React.createElement(FallbackComp,{compName:"layout-header",collapsed:collapsed,onCollapsed:function(){return handleCollapsed(!collapsed)}}),React.createElement(Tabs,{className:styles.tabs,hideAdd:true,onTabClick:function(key){navigate("".concat(menuKV[key].path,"?menuId=").concat(menuKV[key].key))},activeKey:activeKey,size:"middle",type:"editable-card",onEdit:function(targetKey,action){if(action==="remove"&&typeof targetKey==="string"){closedTab(targetKey)}}},tabs.map(function(item){return React.createElement(Tabs.TabPane,{tab:React.createElement(Dropdown,{overlay:React.createElement(Menu,{items:getItems(item.key),onClick:function(info){info.domEvent.stopPropagation();closedTab(item.key,info.key)}}),trigger:["contextMenu"],destroyPopupOnHide:true},React.createElement("div",null,item.icon,getLanguage(item.i18n||"route-".concat(item.key))+item.dynamicTitle||"")),key:item.key,closable:item.closable})})),React.createElement(Layout.Content,{className:styles.layoutContent},React.createElement("div",{className:styles.content},React.createElement(AppRouter,{router:router})),React.createElement(FallbackComp,{compName:"layout-footer"}))))};export default React.memo(SiderLayout,isEqual);
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/packages/back-stage/layout/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useLocale } from 'i18n-hooks';\nimport { Tabs, Layout, Menu, Dropdown } from 'antd';\nimport { ReloadOutlined, DeleteRowOutlined, CloseOutlined } from '@ant-design/icons';\nimport { isEqual } from '@moneko/common';\nimport { shallowEqual, useSelector, useDispatch } from 'react-redux';\nimport LayoutMenu from '../../../components/layout-menu';\nimport AppRouter from '../../../components/app-router';\nimport FallbackComp from '../../../components/fallback-comp';\nimport { router } from '../../../router';\nimport useNavigate from '../../../hooks/navgate';\nimport type { RouterProps } from '../../../router';\nimport type { AppProgramModelType } from '../models/app-program';\nimport type { ItemType } from 'antd/es/menu/hooks/useItems';\nimport styles from './index.less';\n\ninterface TabProps extends RouterProps {\n key: string;\n url?: string;\n path?: string;\n closable?: boolean;\n}\n\nconst closeTabs: ItemType[] = [\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];\n\nconst SiderLayout: React.FC = () => {\n const dispatch = useDispatch();\n const activeKey = useSelector((store: AppStore) => store.appProgram.activeKey, shallowEqual);\n const tabs = useSelector((store: AppStore) => store.appProgram.tabs, shallowEqual);\n const menuKV = useSelector(\n (store: { appProgram: AppProgramModelType }) => store.appProgram.menuKV || {},\n shallowEqual\n );\n const navigate = useNavigate();\n const [search] = useSearchParams();\n const { getLanguage } = useLocale();\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\n const closedTab = useCallback(\n (tabKey?: string, type?: string) => {\n if (type === 'refresh') {\n navigate('/refresh');\n return;\n }\n dispatch({\n type: 'appProgram/closeTab',\n payload: {\n key: tabKey,\n type: type,\n callback(_?: TabProps[], nextTab?: TabProps) {\n if (nextTab) {\n navigate(`${nextTab.path}?menuId=${nextTab.key}`);\n }\n },\n },\n });\n },\n [dispatch, navigate]\n );\n\n const { menuId, dynamicTitle } = useMemo(\n () => ({\n menuId: search.get('menuId') || '',\n dynamicTitle: search.get('dynamicTitle') || '',\n }),\n [search]\n );\n const current = menuKV[menuId];\n\n useEffect(() => {\n if (menuId) {\n dispatch({\n type: 'appProgram/openTab',\n payload: {\n key: menuId,\n dynamicTitle,\n },\n });\n }\n }, [dispatch, dynamicTitle, menuId, current]);\n\n const getItems = useCallback(\n (key: string) =>\n key === activeKey ? closeTabs : closeTabs.filter((t) => t?.key !== 'refresh'),\n [activeKey]\n );\n\n return (\n <Layout className={styles.layout}>\n {layoutSider ? (\n <Layout.Sider\n className={styles.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={styles.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={styles.section}>\n <FallbackComp\n compName=\"layout-header\"\n collapsed={collapsed}\n onCollapsed={() => handleCollapsed(!collapsed)}\n />\n <Tabs\n className={styles.tabs}\n hideAdd\n onTabClick={(key: string) => {\n navigate(`${menuKV[key].path}?menuId=${menuKV[key].key}`);\n }}\n activeKey={activeKey}\n size=\"middle\"\n type=\"editable-card\"\n onEdit={(targetKey, action) => {\n if (action === 'remove' && typeof targetKey === 'string') {\n closedTab(targetKey);\n }\n }}\n >\n {tabs.map((item: TabProps) => (\n <Tabs.TabPane\n tab={\n <Dropdown\n overlay={\n <Menu\n items={getItems(item.key)}\n onClick={(info) => {\n info.domEvent.stopPropagation();\n closedTab(item.key, info.key);\n }}\n />\n }\n trigger={['contextMenu']}\n destroyPopupOnHide\n >\n <div>\n {item.icon}\n {getLanguage(item.i18n || `route-${item.key}`) + item.dynamicTitle || ''}\n </div>\n </Dropdown>\n }\n key={item.key}\n closable={item.closable}\n />\n ))}\n </Tabs>\n <Layout.Content className={styles.layoutContent}>\n <div className={styles.content}>\n <AppRouter router={router} />\n </div>\n <FallbackComp compName=\"layout-footer\" />\n </Layout.Content>\n </Layout>\n </Layout>\n );\n};\n\nexport default React.memo(SiderLayout, isEqual);\n"],"names":["React","useCallback","useEffect","useMemo","useState","useSearchParams","useLocale","Tabs","Layout","Menu","Dropdown","ReloadOutlined","DeleteRowOutlined","CloseOutlined","isEqual","shallowEqual","useSelector","useDispatch","LayoutMenu","AppRouter","FallbackComp","router","useNavigate","styles","closeTabs","label","icon","style","transform","key","SiderLayout","dispatch","activeKey","store","appProgram","tabs","menuKV","navigate","search","getLanguage","collapsed","setCollapsed","handleCollapsed","value","_timer","window","setTimeout","clearTimeout","closedTab","tabKey","type","payload","callback","_","nextTab","path","menuId","get","dynamicTitle","current","getItems","filter","t","className","layout","layoutSider","Sider","sider","trigger","collapsible","onBreakpoint","broken","onCollapse","_collapsed","theme","breakpoint","div","logo","data-title","projectName","compName","show","section","onCollapsed","hideAdd","onTabClick","size","onEdit","targetKey","action","map","item","TabPane","tab","overlay","items","onClick","info","domEvent","stopPropagation","destroyPopupOnHide","i18n","closable","Content","layoutContent","content","memo"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/packages/back-stage/layout/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useLocale } from 'i18n-hooks';\nimport { Tabs, Layout, Menu, Dropdown } from 'antd';\nimport { ReloadOutlined, DeleteRowOutlined, CloseOutlined } from '@ant-design/icons';\nimport { isEqual } from '@moneko/common';\nimport { shallowEqual, useSelector, useDispatch } from 'react-redux';\nimport LayoutMenu from '../../../components/layout-menu';\nimport AppRouter from '../../../components/app-router';\nimport FallbackComp from '../../../components/fallback-comp';\nimport { router } from '../../../router';\nimport useNavigate from '../../../hooks/navgate';\nimport type { RouterProps } from '../../../router';\nimport type { AppProgramModelType } from '../models/app-program';\nimport type { ItemType } from 'antd/es/menu/hooks/useItems';\nimport styles from './index.less';\n\ninterface TabProps extends RouterProps {\n key: string;\n url?: string;\n path?: string;\n closable?: boolean;\n}\n\nconst closeTabs: ItemType[] = [\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];\n\nconst SiderLayout: React.FC = () => {\n const dispatch = useDispatch();\n const activeKey = useSelector((store: AppStore) => store.appProgram.activeKey, shallowEqual);\n const tabs = useSelector((store: AppStore) => store.appProgram.tabs, shallowEqual);\n const menuKV = useSelector(\n (store: { appProgram: AppProgramModelType }) => store.appProgram.menuKV || {},\n shallowEqual\n );\n const navigate = useNavigate();\n const [search] = useSearchParams();\n const { getLanguage } = useLocale();\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\n const closedTab = useCallback(\n (tabKey?: string, type?: string) => {\n if (type === 'refresh') {\n navigate('/refresh');\n return;\n }\n dispatch({\n type: 'appProgram/closeTab',\n payload: {\n key: tabKey,\n type: type,\n callback(_?: TabProps[], nextTab?: TabProps) {\n if (nextTab) {\n navigate(`${nextTab.path}?menuId=${nextTab.key}`);\n }\n },\n },\n });\n },\n [dispatch, navigate]\n );\n\n const { menuId, dynamicTitle } = useMemo(\n () => ({\n menuId: search.get('menuId') || '',\n dynamicTitle: search.get('dynamicTitle') || '',\n }),\n [search]\n );\n const current = menuKV[menuId];\n\n useEffect(() => {\n if (menuId) {\n dispatch({\n type: 'appProgram/openTab',\n payload: {\n key: menuId,\n dynamicTitle,\n },\n });\n }\n }, [dispatch, dynamicTitle, menuId, current]);\n\n const getItems = useCallback(\n (key: string) =>\n key === activeKey ? closeTabs : closeTabs.filter((t) => t?.key !== 'refresh'),\n [activeKey]\n );\n\n return (\n <Layout className={styles.layout}>\n {layoutSider ? (\n <Layout.Sider\n className={styles.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={styles.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={styles.section}>\n <FallbackComp\n compName=\"layout-header\"\n collapsed={collapsed}\n onCollapsed={() => handleCollapsed(!collapsed)}\n />\n <Tabs\n className={styles.tabs}\n hideAdd\n onTabClick={(key: string) => {\n navigate(`${menuKV[key].path}?menuId=${menuKV[key].key}`);\n }}\n activeKey={activeKey}\n size=\"middle\"\n type=\"editable-card\"\n onEdit={(targetKey, action) => {\n if (action === 'remove' && typeof targetKey === 'string') {\n closedTab(targetKey);\n }\n }}\n >\n {tabs.map((item: TabProps) => (\n <Tabs.TabPane\n tab={\n <Dropdown\n overlay={\n <Menu\n items={getItems(item.key)}\n onClick={(info) => {\n info.domEvent.stopPropagation();\n closedTab(item.key, info.key);\n }}\n />\n }\n trigger={['contextMenu']}\n destroyPopupOnHide\n >\n <div>\n {item.icon}\n {getLanguage(item.i18n || `route-${item.key}`) + item.dynamicTitle || ''}\n </div>\n </Dropdown>\n }\n key={item.key}\n closable={item.closable}\n />\n ))}\n </Tabs>\n <Layout.Content className={styles.layoutContent}>\n <div className={styles.content}>\n <AppRouter router={router} />\n </div>\n <FallbackComp compName=\"layout-footer\" />\n </Layout.Content>\n </Layout>\n </Layout>\n );\n};\n\nexport default React.memo(SiderLayout, isEqual);\n"],"names":["React","useCallback","useEffect","useMemo","useState","useSearchParams","useLocale","Tabs","Layout","Menu","Dropdown","ReloadOutlined","DeleteRowOutlined","CloseOutlined","isEqual","shallowEqual","useSelector","useDispatch","LayoutMenu","AppRouter","FallbackComp","router","useNavigate","styles","closeTabs","label","icon","style","transform","key","SiderLayout","dispatch","activeKey","store","appProgram","tabs","menuKV","navigate","search","getLanguage","collapsed","setCollapsed","handleCollapsed","value","_timer","window","setTimeout","clearTimeout","closedTab","tabKey","type","payload","callback","_","nextTab","path","menuId","get","dynamicTitle","current","getItems","filter","t","className","layout","layoutSider","Sider","sider","trigger","collapsible","onBreakpoint","broken","onCollapse","_collapsed","theme","breakpoint","div","logo","data-title","projectName","compName","show","section","onCollapsed","hideAdd","onTabClick","size","onEdit","targetKey","action","map","item","TabPane","tab","overlay","items","onClick","info","domEvent","stopPropagation","destroyPopupOnHide","i18n","closable","Content","layoutContent","content","memo"],"mappings":"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"}
@@ -1,2 +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 _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(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 _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}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}function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread()}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)}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{isEqual,isFunction}from"@moneko/common";import{shallowEqual}from"mini-idc";var getItems=function(arr){return arr.map(function(item){var children=item.children,args=_objectWithoutProperties(item,["children"]);var _item=_objectSpreadProps(_objectSpread({},args),{label:args.i18n});if(Array.isArray(children)&&children.length){Object.assign(_item,{children:getItems(children)})}return _item})};var getMenuKV=function(arr,obj){arr.forEach(function(item){var children=item.children,args=_objectWithoutProperties(item,["children"]);Object.assign(obj,_defineProperty({},item.key,args));if(Array.isArray(children)&&children.length){getMenuKV(children,obj)}})};var model={namespace:"appProgram",state:{menu:[],menuKV:{},tabs:[],activeKey:"home"},reducers:{setMenu:function(state,param){var _param_payload=param.payload,payload=_param_payload===void 0?[]:_param_payload;var items=getItems(payload),im={};getMenuKV(items,im);return _objectSpreadProps(_objectSpread({},state),{menu:items,menuKV:im})},setTabs:function(state,action){return _objectSpreadProps(_objectSpread({},state),{tabs:action.payload})},addTab:function(state,param){var payload=param.payload;var tabs=state.tabs,menuKV=state.menuKV;var current=menuKV[payload.key];if(current&&!tabs.find(function(item){return item.key===payload.key})){var ntabs=_toConsumableArray(tabs).concat([_objectSpread(_objectSpreadProps(_objectSpread({},current),{i18n:current.i18n||"route-".concat(current.key)}),payload)]);if(!isEqual(ntabs,tabs)){return _objectSpreadProps(_objectSpread({},state),{tabs:ntabs})}}return state},setActiveKey:function(state,action){return _objectSpreadProps(_objectSpread({},state),{activeKey:action.payload})}},effects:{openTab:function openTab(param,param1){var payload,put,key,_payload_dynamicTitle,dynamicTitle;return __generator(this,function(_state){switch(_state.label){case 0:payload=param.payload,put=param1.put;key=payload.key,_payload_dynamicTitle=payload.dynamicTitle,dynamicTitle=_payload_dynamicTitle===void 0?"":_payload_dynamicTitle;return[4,put({type:"appProgram/addTab",payload:{key:key,dynamicTitle:dynamicTitle}})];case 1:_state.sent();return[4,put({type:"appProgram/setActiveKey",payload:key})];case 2:_state.sent();return[2]}})},closeTab:function closeTab(param,param1){var payload,put,select,key,_payload_type,type,callback,_ref,tabs,activeKey,nActiveKey,closeTabs,nextTab,isCloseSelf,idx,nTabs;return __generator(this,function(_state){switch(_state.label){case 0:payload=param.payload,put=param1.put,select=param1.select;key=payload.key,_payload_type=payload.type,type=_payload_type===void 0?"self":_payload_type,callback=payload.callback;if(!key)return[2];return[4,select(function(store){return store.appProgram},shallowEqual)];case 1:_ref=_state.sent(),tabs=_ref.tabs,activeKey=_ref.activeKey;nActiveKey=activeKey;closeTabs=[];nextTab=null;isCloseSelf=type==="self";idx=tabs.findIndex(function(t){return t.key===key});nTabs=tabs.filter(function(item,i){var notClose=item.closable===false;if(!notClose){notClose=({left:i>=idx,right:i<=idx,other:i===idx,self:key!==item.key})[type]}if(isCloseSelf){if(!notClose){if(key===nActiveKey&&isCloseSelf){var adx=i?i-1:i+1;if(tabs[adx]){nActiveKey=tabs[adx].key;nextTab=tabs[adx]}}}}else if(notClose&&item.key===key&&nActiveKey!==key){nActiveKey=key;nextTab=tabs[i]}if(!notClose){closeTabs.push(item)}return notClose});if(isFunction(callback)){payload.callback(closeTabs,nextTab)}return[4,put({type:"appProgram/setTabs",payload:nTabs})];case 2:_state.sent();return[4,put({type:"appProgram/setActiveKey",payload:nActiveKey})];case 3:_state.sent();return[2]}})}}};export default model;
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 _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(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 _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}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}function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread()}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)}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{isEqual,isFunction}from"@moneko/common";import{shallowEqual}from"mini-idc";var getItems=function(arr){return arr.map(function(item){var children=item.children,args=_objectWithoutProperties(item,["children"]);var _item=_objectSpreadProps(_objectSpread({},args),{label:args.i18n});if(Array.isArray(children)&&children.length){Object.assign(_item,{children:getItems(children)})}return _item})};var getMenuKV=function(arr,obj){arr.forEach(function(item){var children=item.children,args=_objectWithoutProperties(item,["children"]);Object.assign(obj,_defineProperty({},item.key,args));if(Array.isArray(children)&&children.length){getMenuKV(children,obj)}})};var model={namespace:"appProgram",state:{menu:[],menuKV:{},tabs:[],activeKey:"home"},reducers:{setMenu:function(state,param){var _payload=param.payload,payload=_payload===void 0?[]:_payload;var items=getItems(payload),im={};getMenuKV(items,im);return _objectSpreadProps(_objectSpread({},state),{menu:items,menuKV:im})},setTabs:function(state,action){return _objectSpreadProps(_objectSpread({},state),{tabs:action.payload})},addTab:function(state,param){var payload=param.payload;var tabs=state.tabs,menuKV=state.menuKV;var current=menuKV[payload.key];if(current&&!tabs.find(function(item){return item.key===payload.key})){var ntabs=_toConsumableArray(tabs).concat([_objectSpread(_objectSpreadProps(_objectSpread({},current),{i18n:current.i18n||"route-".concat(current.key)}),payload)]);if(!isEqual(ntabs,tabs)){return _objectSpreadProps(_objectSpread({},state),{tabs:ntabs})}}return state},setActiveKey:function(state,action){return _objectSpreadProps(_objectSpread({},state),{activeKey:action.payload})}},effects:{openTab:function openTab(param,param1){var payload,put,key,_dynamicTitle,dynamicTitle;return __generator(this,function(_state){switch(_state.label){case 0:payload=param.payload,put=param1.put;key=payload.key,_dynamicTitle=payload.dynamicTitle,dynamicTitle=_dynamicTitle===void 0?"":_dynamicTitle;return[4,put({type:"appProgram/addTab",payload:{key:key,dynamicTitle:dynamicTitle}})];case 1:_state.sent();return[4,put({type:"appProgram/setActiveKey",payload:key})];case 2:_state.sent();return[2]}})},closeTab:function closeTab(param,param1){var payload,put,select,key,_type,type,callback,ref,tabs,activeKey,nActiveKey,closeTabs,nextTab,isCloseSelf,idx,nTabs;return __generator(this,function(_state){switch(_state.label){case 0:payload=param.payload,put=param1.put,select=param1.select;key=payload.key,_type=payload.type,type=_type===void 0?"self":_type,callback=payload.callback;if(!key)return[2];return[4,select(function(store){return store.appProgram},shallowEqual)];case 1:ref=_state.sent(),tabs=ref.tabs,activeKey=ref.activeKey;nActiveKey=activeKey;closeTabs=[];nextTab=null;isCloseSelf=type==="self";idx=tabs.findIndex(function(t){return t.key===key});nTabs=tabs.filter(function(item,i){var notClose=item.closable===false;if(!notClose){notClose=({left:i>=idx,right:i<=idx,other:i===idx,self:key!==item.key})[type]}if(isCloseSelf){if(!notClose){if(key===nActiveKey&&isCloseSelf){var adx=i?i-1:i+1;if(tabs[adx]){nActiveKey=tabs[adx].key;nextTab=tabs[adx]}}}}else if(notClose&&item.key===key&&nActiveKey!==key){nActiveKey=key;nextTab=tabs[i]}if(!notClose){closeTabs.push(item)}return notClose});if(isFunction(callback)){payload.callback(closeTabs,nextTab)}return[4,put({type:"appProgram/setTabs",payload:nTabs})];case 2:_state.sent();return[4,put({type:"appProgram/setActiveKey",payload:nActiveKey})];case 3:_state.sent();return[2]}})}}};export default model;
2
2
  //# sourceMappingURL=app-program.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/packages/back-stage/models/app-program.ts"],"sourcesContent":["import { isEqual, isFunction } from '@moneko/common';\nimport { type ModelActionType, type ModelEffectMap, type ModelType, shallowEqual } from 'mini-idc';\nimport type { RouterProps } from '../../../router';\n\nexport interface ItemTypes extends RouterProps {\n key: string;\n path?: string;\n type?: string;\n label?: string | null;\n children?: ItemTypes[];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n\nconst getItems = (arr: ItemTypes[]): ItemTypes[] => {\n return arr.map((item) => {\n const { children, ...args } = item;\n const _item = { ...args, label: args.i18n };\n\n if (Array.isArray(children) && children.length) {\n Object.assign(_item, {\n children: getItems(children),\n });\n }\n return _item;\n });\n};\nconst getMenuKV = (arr: ItemTypes[], obj: Record<string, ItemTypes>): void => {\n arr.forEach((item) => {\n const { children, ...args } = item;\n\n Object.assign(obj, {\n [item.key]: args,\n });\n if (Array.isArray(children) && children.length) {\n getMenuKV(children, obj);\n }\n });\n};\n\nexport interface AppProgramModelType {\n menu: ItemTypes[];\n menuKV: Record<string, ItemTypes>;\n activeKey?: string;\n tabs: TabProps[];\n}\nexport interface TabProps extends RouterProps {\n key: string;\n url?: string;\n path?: string;\n closable?: boolean;\n}\ntype RemoveTabType = 'left' | 'right' | 'other' | 'self';\n\nconst model: ModelType<AppProgramModelType> = {\n namespace: 'appProgram',\n state: {\n menu: [],\n menuKV: {},\n tabs: [],\n activeKey: 'home',\n },\n reducers: {\n setMenu: (state, { payload = [] }) => {\n const items = getItems(payload),\n im: Record<string, ItemTypes> = {};\n\n getMenuKV(items, im);\n return {\n ...state,\n menu: items,\n menuKV: im,\n };\n },\n setTabs: (state, action) => {\n return {\n ...state,\n tabs: action.payload,\n };\n },\n addTab: (state, { payload }) => {\n const { tabs, menuKV } = state;\n const current = menuKV[payload.key];\n\n if (current && !tabs.find((item: TabProps) => item.key === payload.key)) {\n const ntabs = [\n ...tabs,\n {\n ...current,\n i18n: current.i18n || `route-${current.key}`,\n ...payload,\n },\n ];\n\n if (!isEqual(ntabs, tabs)) {\n return {\n ...state,\n tabs: ntabs,\n };\n }\n }\n\n return state;\n },\n setActiveKey: (state, action) => {\n return {\n ...state,\n activeKey: action.payload,\n };\n },\n },\n effects: {\n *openTab(\n { payload }: Partial<ModelActionType>,\n { put }: ModelEffectMap\n ): Generator<unknown, void, TabProps[]> {\n const { key, dynamicTitle = '' } = payload;\n\n yield put({\n type: 'appProgram/addTab',\n payload: {\n key,\n dynamicTitle,\n },\n });\n yield put({\n type: 'appProgram/setActiveKey',\n payload: key,\n });\n },\n *closeTab(\n { payload }: Partial<ModelActionType>,\n { put, select }: ModelEffectMap\n ): Generator<unknown, void, AppProgramModelType> {\n const { key, type = 'self', callback } = payload;\n\n if (!key) return;\n\n const { tabs, activeKey } = yield select((store: AppStore) => store.appProgram, shallowEqual);\n\n let nActiveKey = activeKey;\n const closeTabs: TabProps[] = [];\n let nextTab: TabProps | null = null;\n // 关闭当前tab\n const isCloseSelf = type === 'self';\n const idx = tabs.findIndex((t) => t.key === key);\n const nTabs = tabs.filter((item, i) => {\n let notClose = item.closable === false;\n\n if (!notClose) {\n notClose = {\n left: i >= idx,\n right: i <= idx,\n other: i === idx,\n self: key !== item.key,\n }[type as RemoveTabType];\n }\n\n if (isCloseSelf) {\n if (!notClose) {\n if (key === nActiveKey && isCloseSelf) {\n const adx: number | null = i ? i - 1 : i + 1;\n\n if (tabs[adx]) {\n nActiveKey = tabs[adx].key;\n nextTab = tabs[adx];\n }\n }\n }\n } else if (notClose && item.key === key && nActiveKey !== key) {\n nActiveKey = key;\n nextTab = tabs[i];\n }\n if (!notClose) {\n closeTabs.push(item);\n }\n return notClose;\n });\n\n if (isFunction(callback)) {\n payload.callback(closeTabs, nextTab);\n }\n\n yield put({\n type: 'appProgram/setTabs',\n payload: nTabs,\n });\n yield put({\n type: 'appProgram/setActiveKey',\n payload: nActiveKey,\n });\n },\n },\n};\n\nexport default model;\n"],"names":["isEqual","isFunction","shallowEqual","getItems","arr","map","item","children","args","_item","label","i18n","Array","isArray","length","Object","assign","getMenuKV","obj","forEach","key","model","namespace","state","menu","menuKV","tabs","activeKey","reducers","setMenu","payload","items","im","setTabs","action","addTab","current","find","ntabs","setActiveKey","effects","openTab","put","dynamicTitle","type","closeTab","select","callback","nActiveKey","closeTabs","nextTab","isCloseSelf","idx","nTabs","store","appProgram","findIndex","t","filter","i","notClose","closable","left","right","other","self","adx","push"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/packages/back-stage/models/app-program.ts"],"sourcesContent":["import { isEqual, isFunction } from '@moneko/common';\nimport { type ModelActionType, type ModelEffectMap, type ModelType, shallowEqual } from 'mini-idc';\nimport type { RouterProps } from '../../../router';\n\nexport interface ItemTypes extends RouterProps {\n key: string;\n path?: string;\n type?: string;\n label?: string | null;\n children?: ItemTypes[];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n\nconst getItems = (arr: ItemTypes[]): ItemTypes[] => {\n return arr.map((item) => {\n const { children, ...args } = item;\n const _item = { ...args, label: args.i18n };\n\n if (Array.isArray(children) && children.length) {\n Object.assign(_item, {\n children: getItems(children),\n });\n }\n return _item;\n });\n};\nconst getMenuKV = (arr: ItemTypes[], obj: Record<string, ItemTypes>): void => {\n arr.forEach((item) => {\n const { children, ...args } = item;\n\n Object.assign(obj, {\n [item.key]: args,\n });\n if (Array.isArray(children) && children.length) {\n getMenuKV(children, obj);\n }\n });\n};\n\nexport interface AppProgramModelType {\n menu: ItemTypes[];\n menuKV: Record<string, ItemTypes>;\n activeKey?: string;\n tabs: TabProps[];\n}\nexport interface TabProps extends RouterProps {\n key: string;\n url?: string;\n path?: string;\n closable?: boolean;\n}\ntype RemoveTabType = 'left' | 'right' | 'other' | 'self';\n\nconst model: ModelType<AppProgramModelType> = {\n namespace: 'appProgram',\n state: {\n menu: [],\n menuKV: {},\n tabs: [],\n activeKey: 'home',\n },\n reducers: {\n setMenu: (state, { payload = [] }) => {\n const items = getItems(payload),\n im: Record<string, ItemTypes> = {};\n\n getMenuKV(items, im);\n return {\n ...state,\n menu: items,\n menuKV: im,\n };\n },\n setTabs: (state, action) => {\n return {\n ...state,\n tabs: action.payload,\n };\n },\n addTab: (state, { payload }) => {\n const { tabs, menuKV } = state;\n const current = menuKV[payload.key];\n\n if (current && !tabs.find((item: TabProps) => item.key === payload.key)) {\n const ntabs = [\n ...tabs,\n {\n ...current,\n i18n: current.i18n || `route-${current.key}`,\n ...payload,\n },\n ];\n\n if (!isEqual(ntabs, tabs)) {\n return {\n ...state,\n tabs: ntabs,\n };\n }\n }\n\n return state;\n },\n setActiveKey: (state, action) => {\n return {\n ...state,\n activeKey: action.payload,\n };\n },\n },\n effects: {\n *openTab(\n { payload }: Partial<ModelActionType>,\n { put }: ModelEffectMap\n ): Generator<unknown, void, TabProps[]> {\n const { key, dynamicTitle = '' } = payload;\n\n yield put({\n type: 'appProgram/addTab',\n payload: {\n key,\n dynamicTitle,\n },\n });\n yield put({\n type: 'appProgram/setActiveKey',\n payload: key,\n });\n },\n *closeTab(\n { payload }: Partial<ModelActionType>,\n { put, select }: ModelEffectMap\n ): Generator<unknown, void, AppProgramModelType> {\n const { key, type = 'self', callback } = payload;\n\n if (!key) return;\n\n const { tabs, activeKey } = yield select((store: AppStore) => store.appProgram, shallowEqual);\n\n let nActiveKey = activeKey;\n const closeTabs: TabProps[] = [];\n let nextTab: TabProps | null = null;\n // 关闭当前tab\n const isCloseSelf = type === 'self';\n const idx = tabs.findIndex((t) => t.key === key);\n const nTabs = tabs.filter((item, i) => {\n let notClose = item.closable === false;\n\n if (!notClose) {\n notClose = {\n left: i >= idx,\n right: i <= idx,\n other: i === idx,\n self: key !== item.key,\n }[type as RemoveTabType];\n }\n\n if (isCloseSelf) {\n if (!notClose) {\n if (key === nActiveKey && isCloseSelf) {\n const adx: number | null = i ? i - 1 : i + 1;\n\n if (tabs[adx]) {\n nActiveKey = tabs[adx].key;\n nextTab = tabs[adx];\n }\n }\n }\n } else if (notClose && item.key === key && nActiveKey !== key) {\n nActiveKey = key;\n nextTab = tabs[i];\n }\n if (!notClose) {\n closeTabs.push(item);\n }\n return notClose;\n });\n\n if (isFunction(callback)) {\n payload.callback(closeTabs, nextTab);\n }\n\n yield put({\n type: 'appProgram/setTabs',\n payload: nTabs,\n });\n yield put({\n type: 'appProgram/setActiveKey',\n payload: nActiveKey,\n });\n },\n },\n};\n\nexport default model;\n"],"names":["isEqual","isFunction","shallowEqual","getItems","arr","map","item","children","args","_item","label","i18n","Array","isArray","length","Object","assign","getMenuKV","obj","forEach","key","model","namespace","state","menu","menuKV","tabs","activeKey","reducers","setMenu","payload","items","im","setTabs","action","addTab","current","find","ntabs","setActiveKey","effects","openTab","put","dynamicTitle","type","closeTab","select","callback","nActiveKey","closeTabs","nextTab","isCloseSelf","idx","nTabs","store","appProgram","findIndex","t","filter","i","notClose","closable","left","right","other","self","adx","push"],"mappings":"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"}
@@ -1,8 +1,5 @@
1
1
  import '../../utils/env';
2
2
  import '../../utils/refresh-rem';
3
3
  import '../../styles/normalize.css';
4
- import '../../styles/animation.css';
5
- import '../../styles/variables.css';
6
- import '../../styles/global.css';
7
4
  declare const bootstrap: typeof import("./bootstrap");
8
5
  export default bootstrap;
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";import"../../styles/animation.css";import"../../styles/variables.css";import"../../styles/global.css";var bootstrap=await import("./bootstrap");export default bootstrap;
1
+ import"../../utils/env";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';\nimport '../../styles/animation.css';\nimport '../../styles/variables.css';\nimport '../../styles/global.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,yBAA0B,CAEjC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
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,7 +1,3 @@
1
1
  import React from 'react';
2
- import '../../styles/normalize.css';
3
- import '../../styles/animation.css';
4
- import '../../styles/variables.css';
5
- import '../../styles/global.css';
6
2
  declare const App: React.FC;
7
3
  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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";import"../../styles/normalize.css";import"../../styles/animation.css";import"../../styles/variables.css";import"../../styles/global.css";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(){var props={basename:programInfo.routeBaseName};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(React.Fragment,null,React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router})))))};export default App;
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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(){var props={basename:programInfo.routeBaseName};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router}))))};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 { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\nimport '../../styles/normalize.css';\nimport '../../styles/animation.css';\nimport '../../styles/variables.css';\nimport '../../styles/global.css';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC = () => {\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <>\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} />\n </Router>\n </IDCProvider>\n </I18n>\n </>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","props","basename","routeBaseName"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,AACpD,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,yBAA0B,CAEjC,IAAIC,OAEJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAGA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAAgB,UAAM,CAC1B,IAAIC,MAAgC,CAClCC,SAAUhB,YAAYiB,aAAa,AACrC,EAEA,GAAIjB,YAAYC,UAAU,GAAK,UAAW,CACxCc,MAAQ,CAAC,CACX,CAAC,AACD,OACE,wCACE,oBAACb,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWgB,OACV,oBAACjB,WAAUD,OAAQA,YAM/B,CAEA,gBAAeiB,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/mobile/app.tsx"],"sourcesContent":["import React from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC = () => {\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} />\n </Router>\n </IDCProvider>\n </I18n>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","props","basename","routeBaseName"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,CAEpD,IAAIC,OAEJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAGA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAAgB,UAAM,CAC1B,IAAIC,MAAgC,CAClCC,SAAUhB,YAAYiB,aAAa,AACrC,EAEA,GAAIjB,YAAYC,UAAU,GAAK,UAAW,CACxCc,MAAQ,CAAC,CACX,CAAC,AACD,OACE,oBAACb,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWgB,OACV,oBAACjB,WAAUD,OAAQA,WAK7B,CAEA,gBAAeiB,GAAI"}
@@ -1,3 +1,4 @@
1
1
  import '../../utils/env';
2
2
  import '../../utils/fontloader';
3
3
  import '../../utils/refresh-rem';
4
+ import '../../styles/normalize.css';
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/fontloader";import"../../utils/refresh-rem";import fastClick from"fastclick";import React from"react";import{isFunction}from"@moneko/common";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/env";import"../../utils/fontloader";import"../../utils/refresh-rem";import"../../styles/normalize.css";import fastClick from"fastclick";import React from"react";import{isFunction}from"@moneko/common";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/fontloader';\nimport '../../utils/refresh-rem';\nimport fastClick from 'fastclick';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\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":["fastClick","React","isFunction","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,wBAAyB,AAChC,OAAO,yBAA0B,AACjC,QAAOA,cAAe,WAAY,AAClC,QAAOC,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,AAACR,UAAyCS,MAAM,CAACC,SAASC,IAAI,EAE9D,IAAMC,QAAUC,WAAWZ,MAAMW,OAAO,EACxC,IAAME,UAAYJ,SAASK,cAAc,CAAC,QAE1C,IAAMC,UAAY,UAAM,CACtB,GAAId,WAAWE,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,GAAIZ,WAAWE,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/env';\nimport '../../utils/fontloader';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\nimport fastClick from 'fastclick';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\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":["fastClick","React","isFunction","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,wBAAyB,AAChC,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,AACpC,QAAOA,cAAe,WAAY,AAClC,QAAOC,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,AAACR,UAAyCS,MAAM,CAACC,SAASC,IAAI,EAE9D,IAAMC,QAAUC,WAAWZ,MAAMW,OAAO,EACxC,IAAME,UAAYJ,SAASK,cAAc,CAAC,QAE1C,IAAMC,UAAY,UAAM,CACtB,GAAId,WAAWE,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,GAAIZ,WAAWE,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,4 @@
1
1
  import React from 'react';
2
- import '../../styles/normalize.css';
3
- import '../../styles/animation.css';
4
- import '../../styles/variables.css';
5
- import '../../styles/global.css';
6
2
  interface AppProps {
7
3
  basename?: string;
8
4
  fallback?: React.ReactElement;
@@ -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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";import"../../styles/normalize.css";import"../../styles/animation.css";import"../../styles/variables.css";import"../../styles/global.css";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(param){var basename=param.basename,fallback=param.fallback;var props={basename:[basename,programInfo.routeBaseName].join("")};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(React.Fragment,null,React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router,fallback:fallback})))))};export default App;
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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(param){var basename=param.basename,fallback=param.fallback;var props={basename:[basename,programInfo.routeBaseName].join("")};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router,fallback: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 from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\nimport '../../styles/normalize.css';\nimport '../../styles/animation.css';\nimport '../../styles/variables.css';\nimport '../../styles/global.css';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\ninterface AppProps {\n basename?: string;\n fallback?: React.ReactElement;\n}\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC<AppProps> = ({ basename, fallback }: AppProps) => {\n let props: Record<string, string> = {\n basename: [basename, programInfo.routeBaseName].join(''),\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <>\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} fallback={fallback} />\n </Router>\n </IDCProvider>\n </I18n>\n </>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","basename","fallback","props","routeBaseName","join"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,AACpD,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,yBAA0B,CAEjC,IAAIC,OAOJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAEA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAA0B,eAAsC,KAAnCC,eAAAA,SAAUC,eAAAA,SAC3C,IAAIC,MAAgC,CAClCF,SAAU,CAACA,SAAUf,YAAYkB,aAAa,CAAC,CAACC,IAAI,CAAC,GACvD,EAEA,GAAInB,YAAYC,UAAU,GAAK,UAAW,CACxCgB,MAAQ,CAAC,CACX,CAAC,AACD,OACE,wCACE,oBAACf,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWkB,OACV,oBAACnB,WAAUD,OAAQA,OAAQmB,SAAUA,cAMjD,CAEA,gBAAeF,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/single-spa/app.tsx"],"sourcesContent":["import React from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\ninterface AppProps {\n basename?: string;\n fallback?: React.ReactElement;\n}\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC<AppProps> = ({ basename, fallback }: AppProps) => {\n let props: Record<string, string> = {\n basename: [basename, programInfo.routeBaseName].join(''),\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} fallback={fallback} />\n </Router>\n </IDCProvider>\n </I18n>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","basename","fallback","props","routeBaseName","join"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,CAEpD,IAAIC,OAOJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAEA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAA0B,eAAsC,KAAnCC,eAAAA,SAAUC,eAAAA,SAC3C,IAAIC,MAAgC,CAClCF,SAAU,CAACA,SAAUf,YAAYkB,aAAa,CAAC,CAACC,IAAI,CAAC,GACvD,EAEA,GAAInB,YAAYC,UAAU,GAAK,UAAW,CACxCgB,MAAQ,CAAC,CACX,CAAC,AACD,OACE,oBAACf,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWkB,OACV,oBAACnB,WAAUD,OAAQA,OAAQmB,SAAUA,aAK/C,CAEA,gBAAeF,GAAI"}
@@ -1,5 +1,6 @@
1
1
  import './public-path';
2
2
  import '../../utils/env';
3
3
  import '../../utils/refresh-rem';
4
+ import '../../styles/normalize.css';
4
5
  declare const bootstrap: typeof import("./bootstrap").bootstrap, mount: typeof import("./bootstrap").mount, unmount: typeof import("./bootstrap").unmount;
5
6
  export { bootstrap, mount, unmount };
@@ -1,2 +1,2 @@
1
- import"./public-path";import"../../utils/env";import"../../utils/refresh-rem";var _ref=await import("./bootstrap"),bootstrap=_ref.bootstrap,mount=_ref.mount,unmount=_ref.unmount;export{bootstrap,mount,unmount};
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};
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';\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,CAEjC,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/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,IAAA,MAAM,MAAM,CAAC,eAA3CA,UAA8B,IAA9BA,UAAWC,MAAmB,IAAnBA,MAAOC,QAAY,IAAZA,OAE1B,QAASF,SAAS,CAAEC,KAAK,CAAEC,OAAO,CAAG"}
@@ -1,7 +1,3 @@
1
1
  import React from 'react';
2
- import '../../styles/normalize.css';
3
- import '../../styles/animation.css';
4
- import '../../styles/variables.css';
5
- import '../../styles/global.css';
6
2
  declare const App: React.FC;
7
3
  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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";import"../../styles/normalize.css";import"../../styles/animation.css";import"../../styles/variables.css";import"../../styles/global.css";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(){var props={basename:programInfo.routeBaseName};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(React.Fragment,null,React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router})))))};export default App;
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{BrowserRouter,HashRouter}from"react-router-dom";import{router}from"../../router";import AppRouter from"../../components/app-router";var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}var I18n=hasLocales?require("i18n-hooks").I18nProvider:React.Fragment;var IDCProvider=React.Fragment,idcProps={};if(hasModels){var idc=require("mini-idc");idcProps={store:idc.rootStore};IDCProvider=idc.Provider}var App=function(){var props={basename:programInfo.routeBaseName};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(I18n,null,React.createElement(IDCProvider,_extends({},idcProps),React.createElement(Router,_extends({},props),React.createElement(AppRouter,{router:router}))))};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 { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\nimport '../../styles/normalize.css';\nimport '../../styles/animation.css';\nimport '../../styles/variables.css';\nimport '../../styles/global.css';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC = () => {\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <>\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} />\n </Router>\n </IDCProvider>\n </I18n>\n </>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","props","basename","routeBaseName"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,AACpD,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,4BAA6B,AACpC,OAAO,yBAA0B,CAEjC,IAAIC,OAEJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAEA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAAgB,UAAM,CAC1B,IAAIC,MAAgC,CAClCC,SAAUhB,YAAYiB,aAAa,AACrC,EAEA,GAAIjB,YAAYC,UAAU,GAAK,UAAW,CACxCc,MAAQ,CAAC,CACX,CAAC,AACD,OACE,wCACE,oBAACb,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWgB,OACV,oBAACjB,WAAUD,OAAQA,YAM/B,CAEA,gBAAeiB,GAAI"}
1
+ {"version":3,"sources":["../../../src/packages/site/app.tsx"],"sourcesContent":["import React from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { router } from '../../router';\nimport AppRouter from '../../components/app-router';\n\nlet Router: typeof HashRouter | typeof BrowserRouter;\n\nswitch (programInfo.routerMode) {\n case 'hash':\n Router = HashRouter;\n break;\n case 'browser':\n default:\n Router = BrowserRouter;\n break;\n}\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst I18n = hasLocales ? require('i18n-hooks').I18nProvider : React.Fragment;\nlet IDCProvider: typeof React.Fragment = React.Fragment,\n idcProps = {};\n\nif (hasModels) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const idc = require('mini-idc');\n\n idcProps = { store: idc.rootStore };\n IDCProvider = idc.Provider;\n}\nconst App: React.FC = () => {\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n return (\n <I18n>\n <IDCProvider {...idcProps}>\n <Router {...props}>\n <AppRouter router={router} />\n </Router>\n </IDCProvider>\n </I18n>\n );\n};\n\nexport default App;\n"],"names":["React","BrowserRouter","HashRouter","router","AppRouter","Router","programInfo","routerMode","I18n","hasLocales","require","I18nProvider","Fragment","IDCProvider","idcProps","hasModels","idc","store","rootStore","Provider","App","props","basename","routeBaseName"],"mappings":"AAAA,oRAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,MAAM,KAAQ,cAAe,AACtC,QAAOC,cAAe,6BAA8B,CAEpD,IAAIC,OAEJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAASH,WACT,KAAM,AACR,KAAK,UACL,QACEG,OAASJ,cACT,KAAM,AACV,CAEA,IAAMO,KAAOC,WAAaC,QAAQ,cAAcC,YAAY,CAAGX,MAAMY,QAAQ,CAC7E,IAAIC,YAAqCb,MAAMY,QAAQ,CACrDE,SAAW,CAAC,EAEd,GAAIC,UAAW,CAEb,IAAMC,IAAMN,QAAQ,YAEpBI,SAAW,CAAEG,MAAOD,IAAIE,SAAS,AAAC,EAClCL,YAAcG,IAAIG,QAAQ,AAC5B,CAAC,AACD,IAAMC,IAAgB,UAAM,CAC1B,IAAIC,MAAgC,CAClCC,SAAUhB,YAAYiB,aAAa,AACrC,EAEA,GAAIjB,YAAYC,UAAU,GAAK,UAAW,CACxCc,MAAQ,CAAC,CACX,CAAC,AACD,OACE,oBAACb,UACC,oBAACK,wBAAgBC,UACf,oBAACT,mBAAWgB,OACV,oBAACjB,WAAUD,OAAQA,WAK7B,CAEA,gBAAeiB,GAAI"}
@@ -1,4 +1,5 @@
1
1
  import '../../utils/env';
2
2
  import '../../utils/refresh-rem';
3
+ import '../../styles/normalize.css';
3
4
  declare const bootstrap: typeof import("./bootstrap");
4
5
  export default bootstrap;
@@ -1,2 +1,2 @@
1
- import"../../utils/env";import"../../utils/refresh-rem";var bootstrap=await import("./bootstrap");export default bootstrap;
1
+ import"../../utils/env";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';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,CAEjC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
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,2 +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 _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(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 _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}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 _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread()}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{pathToRegexp}from"path-to-regexp";import{createElement,lazy}from"react";export var lazyImport=function(filePath){return lazy(function(){return import("@/pages/"+filePath.replace(/^\//,""))})};export var myPkgs=[];if(APPTYPE==="library"){var models=require.context("@pkg/",true,/README\.mdx?$/);models.keys().map(function(item){var key=item.substring(2).split("/").slice(0,-1).join("/");myPkgs.push({key:key,path:key,element:createElement(lazy(function(){return import("@pkg/"+key+"/"+"README.mdx")}))})})}var list=[];try{list=require("@/router").default}catch(error){console.info("自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]")}var predixKey=function(path,prev){return[prev==="*"&&path!=="*"?undefined:prev,path].filter(Boolean).join("/")};var models1=require.context("@/pages/",true,/\.(t|j)sx$/,"lazy");var pathToTree=function(input){var root=[];for(var i=0;i<input.length;i++){var chain=input[i].split("/").slice(0,-1);var curr=root;for(var j=0;j<chain.length;j++){var pathRule=chain[j];if(pathRule==="")continue;if(pathRule===".")pathRule="*";var lastHierarchy=curr;if(Array.isArray(curr)){for(var k=0;k<curr.length;k++){if(curr[k].path===pathRule){curr=curr[k].children;break}}}if(lastHierarchy===curr){var key=j===chain.length-1?input[i]:chain.slice(0,j+1).join("/")+"/";key=key.substring(2,key.lastIndexOf("/"));var node={key:key,path:pathRule,i18n:"route-"+key,children:[],alive:false,element:createElement(lazyImport(key.replace(/:/g,"$"))),hideMenu:key.includes(":")};if(Array.isArray(curr))curr.push(node);curr=node.children}}}return root};var routers=pathToTree(models1.keys().map(function(item){return item.replace(/\$/g,":")}));function merge(source,child,prev){var _=source.find(function(item){return item.path===child.path});if(!_){source.push(child)}else{_.key=predixKey(_.path,prev);if(typeof _.i18n==="undefined"){_.i18n="route-"+_.key}if(typeof _.alive==="undefined"){_.alive=false}if(typeof _.element==="undefined"&&child.element){_.element=child.element}if(typeof _.hideMenu==="undefined"){_.hideMenu=_.path==="*"?true:_.key.includes(":")}Object.assign(_,_objectSpread({},child,_));if(child.children){var _child_children;if(!_.children&&Array.isArray(child.children)){_.children=child.children}(_child_children=child.children)===null||_child_children===void 0?void 0:_child_children.forEach(function(childData){merge(_===null||_===void 0?void 0:_.children,childData,_===null||_===void 0?void 0:_.key)})}}}var findLogin=function(){var rs=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],onlyLogin=arguments.length>1?arguments[1]:void 0,prevKey=arguments.length>2?arguments[2]:void 0;return rs.map(function(e){var _=_objectSpread({},e);if(typeof _.key==="undefined"){_.key=predixKey(e.path,prevKey)}if(typeof _.i18n==="undefined"){_.i18n="route-"+_.key}if(typeof _.alive==="undefined"){_.alive=false}if(_.path==="*"&&typeof _.hideMenu==="undefined"){_.hideMenu=true}if(Array.isArray(_.children)){_.children=_.children.length?findLogin(_.children,onlyLogin,_.key):undefined}if(!_.element){_.element=createElement(lazyImport(_.key.replace(/:/g,"$")))}return!!_.onlyLogin===onlyLogin&&!_.root?null:_}).filter(Boolean)};var _router=_toConsumableArray(list);routers.forEach(function(item){return merge(_router,item)});export var onlyLoginRouter=findLogin(_router,false);export var router=findLogin(_router,true);export var matchUtil=function(pathname){var p={key:""};var findPath=function(rs){rs.forEach(function(item){if(item.path&&item.path!=="*"&&item.key){try{if(pathToRegexp(item.key).exec(pathname.substring(1))){p=item;return}}catch(error){}}if(Array.isArray(item.children))findPath(item.children)})};findPath(router);return p};
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 _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(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 _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}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 _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread()}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{pathToRegexp}from"path-to-regexp";import{createElement,lazy}from"react";export var lazyImport=function(filePath){return lazy(function(){return import("@/pages/"+filePath.replace(/^\//,""))})};export var myPkgs=[];if(APPTYPE==="library"){var models=require.context("@pkg/",true,/README\.mdx?$/);models.keys().map(function(item){var key=item.substring(2).split("/").slice(0,-1).join("/");myPkgs.push({key:key,path:key,element:createElement(lazy(function(){return import("@pkg/"+key+"/"+"README.mdx")}))})})}var list=[];try{list=require("@/router").default}catch(error){console.info("自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]")}var predixKey=function(path,prev){return[prev==="*"&&path!=="*"?undefined:prev,path].filter(Boolean).join("/")};var models1=require.context("@/pages/",true,/\.(t|j)sx$/,"lazy");var pathToTree=function(input){var root=[];for(var i=0;i<input.length;i++){var chain=input[i].split("/").slice(0,-1);var curr=root;for(var j=0;j<chain.length;j++){var pathRule=chain[j];if(pathRule==="")continue;if(pathRule===".")pathRule="*";var lastHierarchy=curr;if(Array.isArray(curr)){for(var k=0;k<curr.length;k++){if(curr[k].path===pathRule){curr=curr[k].children;break}}}if(lastHierarchy===curr){var key=j===chain.length-1?input[i]:chain.slice(0,j+1).join("/")+"/";key=key.substring(2,key.lastIndexOf("/"));var node={key:key,path:pathRule,i18n:"route-"+key,children:[],alive:false,element:createElement(lazyImport(key.replace(/:/g,"$"))),hideMenu:key.includes(":")};if(Array.isArray(curr))curr.push(node);curr=node.children}}}return root};var routers=pathToTree(models1.keys().map(function(item){return item.replace(/\$/g,":")}));function merge(source,child,prev){var _=source.find(function(item){return item.path===child.path});if(!_){source.push(child)}else{_.key=predixKey(_.path,prev);if(typeof _.i18n==="undefined"){_.i18n="route-"+_.key}if(typeof _.alive==="undefined"){_.alive=false}if(typeof _.element==="undefined"&&child.element){_.element=child.element}if(typeof _.hideMenu==="undefined"){_.hideMenu=_.path==="*"?true:_.key.includes(":")}Object.assign(_,_objectSpread({},child,_));if(child.children){var ref;if(!_.children&&Array.isArray(child.children)){_.children=child.children}(ref=child.children)===null||ref===void 0?void 0:ref.forEach(function(childData){merge(_===null||_===void 0?void 0:_.children,childData,_===null||_===void 0?void 0:_.key)})}}}var findLogin=function(){var rs=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],onlyLogin=arguments.length>1?arguments[1]:void 0,prevKey=arguments.length>2?arguments[2]:void 0;return rs.map(function(e){var _=_objectSpread({},e);if(typeof _.key==="undefined"){_.key=predixKey(e.path,prevKey)}if(typeof _.i18n==="undefined"){_.i18n="route-"+_.key}if(typeof _.alive==="undefined"){_.alive=false}if(_.path==="*"&&typeof _.hideMenu==="undefined"){_.hideMenu=true}if(Array.isArray(_.children)){_.children=_.children.length?findLogin(_.children,onlyLogin,_.key):undefined}if(!_.element){_.element=createElement(lazyImport(_.key.replace(/:/g,"$")))}return!!_.onlyLogin===onlyLogin&&!_.root?null:_}).filter(Boolean)};var _router=_toConsumableArray(list);routers.forEach(function(item){return merge(_router,item)});export var onlyLoginRouter=findLogin(_router,false);export var router=findLogin(_router,true);export var matchUtil=function(pathname){var p={key:""};var findPath=function(rs){rs.forEach(function(item){if(item.path&&item.path!=="*"&&item.key){try{if(pathToRegexp(item.key).exec(pathname.substring(1))){p=item;return}}catch(error){}}if(Array.isArray(item.children))findPath(item.children)})};findPath(router);return p};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["// import * as React from 'react';\n// import { lazyImport } from '../utils/lazy-import';\n// import { pathToRegexp } from 'path-to-regexp';\n// import type { ReactNode } from 'react';\n// import type { RouteObject } from 'react-router-dom';\n// import type { KeepAliveProps } from 'react-activation';\n\n// export interface RouterProps extends Omit<RouteObject, 'index' | 'children'> {\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?: ReactNode;\n// /** 可否关闭标签 */\n// closable?: boolean;\n// children?: RouterProps[];\n// }\n\n// export const myPkgs: RouterProps[] = [];\n// if (APPTYPE === 'library') {\n// // eslint-disable-next-line @typescript-eslint/no-var-requires\n// const Readme = require('../components/readme').default;\n// const models = require.context('@pkg/', true, /README\\.mdx?$/);\n\n// models.keys().map((item: string) => {\n// const key = item.substring(2).split('/').slice(0, -1).join('/');\n\n// myPkgs.push({\n// key: key,\n// path: key,\n// element: React.createElement(Readme),\n// });\n// });\n// }\n\n// let list: RouterProps[] = [];\n\n// try {\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[]');\n// }\n\n// const predixKey = (path?: string, prev?: string) =>\n// // eslint-disable-next-line no-undefined\n// [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n\n// const models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\n// const 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 === '') continue;\n// if (pathRule === '.') pathRule = '*';\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: React.createElement(lazyImport(key.replace(/:/g, '$'))),\n// hideMenu: key.includes(':'),\n// };\n\n// // 文件,最后一个字符不是\"/“符号\n// // if (j === chain.length - 1) delete node.children;\n// if (Array.isArray(curr)) curr.push(node);\n// curr = node.children as RouterProps[];\n// }\n// }\n// }\n\n// return root;\n// };\n// const routers: RouterProps[] = pathToTree(\n// models.keys().map((item: string) => item.replace(/\\$/g, ':'))\n// );\n\n// function merge(source: RouterProps[], child: RouterProps, prev?: string) {\n// const _ = source.find((item) => item.path === child.path);\n\n// if (!_) {\n// source.push(child);\n// } else {\n// // 处理key\n// _.key = predixKey(_.path, prev);\n// if (typeof _.i18n === 'undefined') {\n// _.i18n = 'route-' + _.key;\n// }\n// if (typeof _.alive === 'undefined') {\n// _.alive = false;\n// }\n// if (typeof _.element === 'undefined' && child.element) {\n// _.element = child.element;\n// }\n// if (typeof _.hideMenu === 'undefined') {\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((childData) => {\n// merge(_?.children as RouterProps[], childData, _?.key);\n// });\n// }\n// }\n// }\n// const findLogin = (rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] => {\n// return rs\n// .map((e) => {\n// const _ = { ...e };\n\n// if (typeof _.key === 'undefined') {\n// _.key = predixKey(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 = React.createElement(lazyImport(_.key.replace(/:/g, '$')));\n// }\n// return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n// })\n// .filter(Boolean) as RouterProps[];\n// };\n// const _router: RouterProps[] = [...list];\n\n// routers.forEach((item: RouterProps) => merge(_router, item));\n\n// /* 登录前注册的路由 */\n// export const onlyLoginRouter = findLogin(_router, false);\n// /* 登录后注册的路由 */\n// export const router = findLogin(_router, true);\n\n// export const matchUtil = (pathname: string) => {\n// let p: RouterProps = { key: '' };\n// const findPath = (rs: RouterProps[]): void => {\n// rs.forEach((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// // eslint-disable-next-line no-empty\n// } catch (error) {}\n// }\n// if (Array.isArray(item.children)) findPath(item.children);\n// });\n// };\n\n// findPath(router);\n// return p;\n// };\n\nimport { pathToRegexp } from 'path-to-regexp';\nimport { createElement, lazy, type ReactElement } from 'react';\nimport type { KeepAliveProps } from 'react-activation';\n\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactElement;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactElement;\n fallback?: ReactElement;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n}\nexport const lazyImport = (filePath: string) => {\n return lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/^\\//, '')\n )\n );\n};\n\nexport const myPkgs: RouterProps[] = [];\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n\n models.keys().map((item: string) => {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n\n myPkgs.push({\n key: key,\n path: key,\n element: createElement(\n lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@pkg/' + key + '/' + 'README.mdx'\n )\n )\n ),\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[]');\n}\n\nconst predixKey = (path?: string, prev?: string) =>\n // eslint-disable-next-line no-undefined\n [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nconst 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 === '') continue;\n if (pathRule === '.') pathRule = '*';\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: createElement(lazyImport(key.replace(/:/g, '$'))),\n hideMenu: key.includes(':'),\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) curr.push(node);\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n};\nconst routers: RouterProps[] = pathToTree(\n models.keys().map((item: string) => item.replace(/\\$/g, ':'))\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find((item) => item.path === child.path);\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = predixKey(_.path, prev);\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (typeof _.element === 'undefined' && child.element) {\n _.element = child.element;\n }\n if (typeof _.hideMenu === 'undefined') {\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((childData) => {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nconst findLogin = (rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] => {\n return rs\n .map((e) => {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = predixKey(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 = createElement(lazyImport(_.key.replace(/:/g, '$')));\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n};\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach((item: RouterProps) => merge(_router, item));\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport const matchUtil = (pathname: string) => {\n let p: RouterProps = { key: '' };\n const findPath = (rs: RouterProps[]): void => {\n rs.forEach((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 // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n };\n\n findPath(router);\n return p;\n};\n"],"names":["pathToRegexp","createElement","lazy","lazyImport","filePath","replace","myPkgs","APPTYPE","models","require","context","keys","map","item","key","substring","split","slice","join","push","path","element","list","default","error","console","info","predixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","Array","isArray","k","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","merge","source","child","_","find","Object","assign","forEach","childData","findLogin","rs","onlyLogin","prevKey","e","_router","onlyLoginRouter","router","matchUtil","pathname","p","findPath","exec"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { pathToRegexp } from 'path-to-regexp';\nimport { createElement, lazy, type ReactElement } from 'react';\nimport type { KeepAliveProps } from 'react-activation';\n\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactElement;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactElement;\n fallback?: ReactElement;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n}\nexport const lazyImport = (filePath: string) => {\n return lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/^\\//, '')\n )\n );\n};\n\nexport const myPkgs: RouterProps[] = [];\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n\n models.keys().map((item: string) => {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n\n myPkgs.push({\n key: key,\n path: key,\n element: createElement(\n lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@pkg/' + key + '/' + 'README.mdx'\n )\n )\n ),\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[]');\n}\n\nconst predixKey = (path?: string, prev?: string) =>\n // eslint-disable-next-line no-undefined\n [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nconst 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 === '') continue;\n if (pathRule === '.') pathRule = '*';\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: createElement(lazyImport(key.replace(/:/g, '$'))),\n hideMenu: key.includes(':'),\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) curr.push(node);\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n};\nconst routers: RouterProps[] = pathToTree(\n models.keys().map((item: string) => item.replace(/\\$/g, ':'))\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find((item) => item.path === child.path);\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = predixKey(_.path, prev);\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (typeof _.element === 'undefined' && child.element) {\n _.element = child.element;\n }\n if (typeof _.hideMenu === 'undefined') {\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((childData) => {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nconst findLogin = (rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] => {\n return rs\n .map((e) => {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = predixKey(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 = createElement(lazyImport(_.key.replace(/:/g, '$')));\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n};\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach((item: RouterProps) => merge(_router, item));\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport const matchUtil = (pathname: string) => {\n let p: RouterProps = { key: '' };\n const findPath = (rs: RouterProps[]): void => {\n rs.forEach((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 // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n };\n\n findPath(router);\n return p;\n};\n"],"names":["pathToRegexp","createElement","lazy","lazyImport","filePath","replace","myPkgs","APPTYPE","models","require","context","keys","map","item","key","substring","split","slice","join","push","path","element","list","default","error","console","info","predixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","Array","isArray","k","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","merge","source","child","_","find","Object","assign","forEach","childData","findLogin","rs","onlyLogin","prevKey","e","_router","onlyLoginRouter","router","matchUtil","pathname","p","findPath","exec"],"mappings":"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"}
@@ -84,41 +84,6 @@ textarea {
84
84
  display: none;
85
85
  }
86
86
 
87
- .text-ellipsis,
88
- .text-ellipsis-2 {
89
- overflow: hidden;
90
- text-overflow: ellipsis;
91
- }
92
-
93
- .text-ellipsis {
94
- white-space: nowrap;
95
- }
96
-
97
- .text-ellipsis-2 {
98
- /* stylelint-disable-next-line value-no-vendor-prefix */
99
- display: -webkit-box;
100
- -webkit-line-clamp: 2;
101
- /*! autoprefixer: off */
102
- -webkit-box-orient: vertical;
103
- }
104
-
105
- .df {
106
- display: flex;
107
- }
108
-
109
- .fd-row {
110
- flex-direction: row;
111
- }
112
-
113
87
  .f-a-c {
114
88
  align-items: center;
115
89
  }
116
-
117
- .mr5 {
118
- margin-right: 5px;
119
- }
120
-
121
- .pos-r-0 {
122
- position: absolute;
123
- right: 0;
124
- }
@@ -1,3 +1,10 @@
1
+ @import url("tailwindcss/base");
2
+ @import url("tailwindcss/components");
3
+ @import url("tailwindcss/utilities");
4
+ @import url("./animation.css");
5
+ @import url("./variables.css");
6
+ @import url("./global.css");
7
+
1
8
  h1 {
2
9
  font-size: 2em;
3
10
  margin: 0.67em 0;