@moneko/core 2.0.8 → 2.0.10-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/tsloader.config.js +1 -1
- package/lib/components/app-router/index.d.ts +2 -25
- package/lib/components/app-router/index.js +1 -1
- package/lib/components/app-router/index.js.map +1 -1
- package/lib/components/layout-menu/index.global.less +1 -1
- package/lib/packages/back-stage/layout/index.less +18 -13
- package/lib/packages/back-stage/models/app-program.d.ts +2 -2
- package/lib/packages/back-stage/models/app-program.js.map +1 -1
- package/lib/router/index.js +1 -1
- package/lib/router/index.js.map +1 -1
- package/lib/styles/normalize.css +2 -2
- package/lib/styles/variables.css +21 -23
- package/package.json +2 -2
- package/typings/global.d.ts +1 -1
package/build/tsloader.config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _fs=_interopRequireDefault(require("fs"));var _tsImportPlugin=_interopRequireDefault(require("ts-import-plugin"));var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _fs=_interopRequireDefault(require("fs"));var _reactRefreshTypescript=_interopRequireDefault(require("react-refresh-typescript"));var _tsImportPlugin=_interopRequireDefault(require("ts-import-plugin"));var _webpackMerge=_interopRequireDefault(require("webpack-merge"));var _common=require("./common");var _processEnv=require("./process-env");var _utils=require("./utils");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 _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default: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 _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 importOnDemand=[];if(Array.isArray(_common.CONFIG.importOnDemand)){Object.assign(importOnDemand,_common.CONFIG.importOnDemand.map(function(item){return(0,_tsImportPlugin.default)(item)}))}var beforeTransformers=_toConsumableArray(importOnDemand);if(_processEnv.DEV&&_processEnv.hasReact){beforeTransformers.push((0,_reactRefreshTypescript.default)())}var tsLoaderConfig={transpileOnly:true,getCustomTransformers:function(){return{before:beforeTransformers}}};try{var customTsloaderConfigPath=(0,_utils.resolveProgramPath)("tsloader.config.ts");_fs.default.accessSync(customTsloaderConfigPath,_fs.default.constants.R_OK);var customTsloaderConfig=eval((0,_utils.tfc)(customTsloaderConfigPath)).default;tsLoaderConfig=(0,_webpackMerge.default)(tsLoaderConfig,(0,_utils.isFunction)(customTsloaderConfig)?customTsloaderConfig(process):customTsloaderConfig)}catch(error){}var _default=tsLoaderConfig;
|
|
@@ -1,30 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Fragment as ReactFragment } from 'react';
|
|
2
2
|
import { AliveScope } from 'react-activation';
|
|
3
3
|
import { createHashRouter } from 'react-router-dom';
|
|
4
4
|
import { type RouterProps } from '../../router';
|
|
5
|
-
import type { KeepAliveProps } from 'react-activation';
|
|
6
5
|
export declare const createRouter: typeof createHashRouter;
|
|
7
6
|
export declare let RouterFragment: typeof ReactFragment | typeof AliveScope;
|
|
8
|
-
export declare const routerData:
|
|
9
|
-
key: string;
|
|
10
|
-
alive?: boolean | KeepAliveProps | undefined;
|
|
11
|
-
icon?: React.ReactNode;
|
|
12
|
-
dynamicTitle?: string | undefined;
|
|
13
|
-
i18n?: string | null | undefined;
|
|
14
|
-
hideMenu?: boolean | undefined;
|
|
15
|
-
hideTabs?: boolean | undefined;
|
|
16
|
-
onlyLogin?: boolean | undefined;
|
|
17
|
-
root?: boolean | undefined;
|
|
18
|
-
path?: string | undefined;
|
|
19
|
-
element?: React.ReactNode;
|
|
20
|
-
fallback?: React.ReactNode;
|
|
21
|
-
closable?: boolean | undefined;
|
|
22
|
-
children?: RouterProps[] | undefined;
|
|
23
|
-
props?: {
|
|
24
|
-
[key: string]: any;
|
|
25
|
-
path: string;
|
|
26
|
-
components?: {
|
|
27
|
-
[x: string]: React.FC<any>;
|
|
28
|
-
} | undefined;
|
|
29
|
-
} | undefined;
|
|
30
|
-
}[];
|
|
7
|
+
export declare const routerData: RouterProps[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function
|
|
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)}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}import React,{Fragment as ReactFragment,Suspense,cloneElement,createElement,useEffect}from"react";import{isObject}from"@moneko/common";import{AliveScope,KeepAlive,useAliveController}from"react-activation";import{createBrowserRouter,createHashRouter}from"react-router-dom";import{router}from"../../router";import Fallback from"../fallback";var PrefixKeepAlive=function(_param){var children=_param.children,name=_param.name,args=_objectWithoutProperties(_param,["children","name"]);var _useAliveController=useAliveController(),drop=_useAliveController.drop,dropScope=_useAliveController.dropScope,clear=_useAliveController.clear,getCachingNodes=_useAliveController.getCachingNodes;var id=window.location.pathname+window.location.hash;useEffect(function(){if(window.__POWERED_BY_QIANKUN__&&window.primaryApp){if(!window.primaryApp.currentTarget){window.primaryApp.currentTarget={}}Object.assign(window.primaryApp.currentTarget,{aliveController:{drop:drop,dropScope:dropScope,clear:clear,getCachingNodes:getCachingNodes}})}},[clear,drop,dropScope,getCachingNodes]);var _children=children;return React.createElement(KeepAlive,_extends({id:id,name:id},args),cloneElement(_children,{path:name,selfUrl:id}))};var existKeepAlive=false;export var createRouter=programInfo.routerMode==="hash"?createHashRouter:createBrowserRouter;export var RouterFragment=ReactFragment;function prefixRouter(list,fallback){return list.map(function(r){var _=Object.assign({},r);if(!!_.alive&&!existKeepAlive){existKeepAlive=true;RouterFragment=AliveScope}if(_.element&&!!_.alive){var aliveProps={name:_.key,cacheKey:_.key};if(isObject(_.alive)){Object.assign(aliveProps,_.alive)}_.element=createElement(PrefixKeepAlive,aliveProps,createElement(_.element,Object.assign({path:_.key},_.props)))}if(_.element){_.element=React.createElement(Suspense,{fallback:r.fallback||fallback},createElement(_.element,Object.assign({path:_.key},_.props)))}if(Array.isArray(_.children)){_.children=prefixRouter(_.children,fallback)}return _})}export var routerData=prefixRouter(router,React.createElement(Fallback,null));
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/app-router/index.tsx"],"sourcesContent":["import React, {\n Fragment as ReactFragment,\n Suspense,\n cloneElement,\n createElement,\n useEffect,\n type ReactElement,\n} from 'react';\nimport { AliveScope, KeepAlive, useAliveController } from 'react-activation';\nimport { createBrowserRouter, createHashRouter } from 'react-router-dom';\nimport { router, type RouterProps } from '../../router';\nimport Fallback from '../fallback';\
|
|
1
|
+
{"version":3,"sources":["../../../src/components/app-router/index.tsx"],"sourcesContent":["import React, {\n Fragment as ReactFragment,\n Suspense,\n cloneElement,\n createElement,\n useEffect,\n type ReactElement,\n} from 'react';\nimport { isObject } from '@moneko/common';\nimport { AliveScope, KeepAlive, useAliveController, type KeepAliveProps } from 'react-activation';\nimport { createBrowserRouter, createHashRouter } from 'react-router-dom';\nimport { router, type RouterProps } from '../../router';\nimport Fallback from '../fallback';\n\nconst PrefixKeepAlive: React.FC<Partial<KeepAliveProps>> = ({ children, name, ...args }) => {\n const { drop, dropScope, clear, getCachingNodes } = useAliveController();\n const id = window.location.pathname + window.location.hash;\n\n useEffect(() => {\n if (window.__POWERED_BY_QIANKUN__ && window.primaryApp) {\n if (!window.primaryApp.currentTarget) {\n window.primaryApp.currentTarget = {};\n }\n Object.assign(window.primaryApp.currentTarget, {\n aliveController: { drop, dropScope, clear, getCachingNodes },\n });\n }\n }, [clear, drop, dropScope, getCachingNodes]);\n\n const _children = children as ReactElement;\n\n return (\n <KeepAlive id={id} name={id} {...args}>\n {cloneElement(_children, {\n path: name,\n selfUrl: id,\n })}\n </KeepAlive>\n );\n};\n\nlet existKeepAlive = false;\n\nexport const createRouter =\n programInfo.routerMode === 'hash' ? createHashRouter : createBrowserRouter;\nexport let RouterFragment: typeof ReactFragment | typeof AliveScope = ReactFragment;\n\nfunction prefixRouter(list: RouterProps[], fallback: ReactElement) {\n return list.map((r) => {\n const _ = Object.assign({}, r);\n\n if (!!_.alive && !existKeepAlive) {\n existKeepAlive = true;\n RouterFragment = AliveScope;\n }\n if (_.element && !!_.alive) {\n const aliveProps: Partial<KeepAliveProps> = {\n name: _.key,\n cacheKey: _.key,\n };\n\n if (isObject(_.alive)) {\n Object.assign(aliveProps, _.alive);\n }\n _.element = createElement(\n PrefixKeepAlive,\n aliveProps,\n createElement(_.element as string, Object.assign({ path: _.key }, _.props))\n );\n }\n if (_.element) {\n _.element = (\n <Suspense fallback={r.fallback || fallback}>\n {createElement(_.element as string, Object.assign({ path: _.key }, _.props))}\n </Suspense>\n );\n }\n if (Array.isArray(_.children)) {\n _.children = prefixRouter(_.children, fallback);\n }\n return _;\n });\n}\n\nexport const routerData = prefixRouter(router, <Fallback />);\n"],"names":["React","Fragment","ReactFragment","Suspense","cloneElement","createElement","useEffect","isObject","AliveScope","KeepAlive","useAliveController","createBrowserRouter","createHashRouter","router","Fallback","PrefixKeepAlive","children","name","args","drop","dropScope","clear","getCachingNodes","id","window","location","pathname","hash","__POWERED_BY_QIANKUN__","primaryApp","currentTarget","Object","assign","aliveController","_children","path","selfUrl","existKeepAlive","createRouter","programInfo","routerMode","RouterFragment","prefixRouter","list","fallback","map","r","_","alive","element","aliveProps","key","cacheKey","props","Array","isArray","routerData"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.tabs {
|
|
2
|
-
margin: 16px 16px 0 !important;
|
|
3
2
|
overflow: initial !important;
|
|
3
|
+
margin: 16px 16px 0 !important;
|
|
4
4
|
|
|
5
5
|
> :global(.@{ant-prefix}-tabs-nav) {
|
|
6
6
|
margin-bottom: 0 !important;
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
|
|
20
20
|
.layout-content {
|
|
21
21
|
display: flex;
|
|
22
|
-
flex-direction: column;
|
|
23
|
-
margin: 0 16px;
|
|
24
22
|
overflow-y: auto;
|
|
23
|
+
margin: 0 16px;
|
|
24
|
+
flex-direction: column;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
.content {
|
|
@@ -38,26 +38,32 @@
|
|
|
38
38
|
position: sticky;
|
|
39
39
|
top: 0;
|
|
40
40
|
z-index: 1;
|
|
41
|
-
height: 68px;
|
|
42
|
-
padding: 14px;
|
|
43
41
|
overflow: hidden;
|
|
44
|
-
color: #de4553;
|
|
45
|
-
text-align: center;
|
|
46
|
-
background-color: var(--sider-logo-bg, #fff) !important;
|
|
47
42
|
border-color: var(--sider-logo-bg, #fff);
|
|
48
43
|
border-right: 16px solid var(--sider-logo-bg, #fff);
|
|
49
44
|
border-bottom: 1px solid var(--border-color);
|
|
50
45
|
border-bottom-color: var(--border-color);
|
|
51
46
|
border-left: 16px solid var(--sider-logo-bg, #fff);
|
|
47
|
+
padding: 14px;
|
|
48
|
+
height: 68px;
|
|
49
|
+
text-align: center;
|
|
50
|
+
color: #de4553;
|
|
51
|
+
background-color: var(--sider-logo-bg, #fff) !important;
|
|
52
|
+
transition-property: background-color, border-color;
|
|
53
|
+
transition-duration: @transition-duration;
|
|
54
|
+
transition-timing-function: @transition-timing-function;
|
|
52
55
|
cursor: pointer;
|
|
53
|
-
transition: border-color @transition-duration @transition-timing-function,
|
|
54
|
-
background-color @transition-duration @transition-timing-function;
|
|
55
56
|
user-select: none;
|
|
56
57
|
|
|
58
|
+
> svg,&::before {
|
|
59
|
+
transition-property: opacity;
|
|
60
|
+
transition-duration: @transition-duration;
|
|
61
|
+
transition-timing-function: @transition-timing-function;
|
|
62
|
+
}
|
|
63
|
+
|
|
57
64
|
> svg {
|
|
58
65
|
height: 32px;
|
|
59
66
|
opacity: 0;
|
|
60
|
-
transition: opacity @transition-duration @transition-timing-function;
|
|
61
67
|
}
|
|
62
68
|
|
|
63
69
|
&::before {
|
|
@@ -66,12 +72,11 @@
|
|
|
66
72
|
bottom: 0;
|
|
67
73
|
left: 0;
|
|
68
74
|
display: block;
|
|
75
|
+
margin: auto;
|
|
69
76
|
width: 22px;
|
|
70
77
|
height: 32px;
|
|
71
|
-
margin: auto;
|
|
72
78
|
background: url('@{favicon}') no-repeat center center / contain;
|
|
73
79
|
opacity: 1;
|
|
74
|
-
transition: opacity @transition-duration @transition-timing-function;
|
|
75
80
|
content: '';
|
|
76
81
|
}
|
|
77
82
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type Model } from 'mini-idc';
|
|
2
2
|
import type { RouterProps } from '../../../router';
|
|
3
3
|
export interface ItemTypes extends RouterProps {
|
|
4
4
|
key: string;
|
|
@@ -20,5 +20,5 @@ export interface TabProps extends RouterProps {
|
|
|
20
20
|
path?: string;
|
|
21
21
|
closable?: boolean;
|
|
22
22
|
}
|
|
23
|
-
declare const model:
|
|
23
|
+
declare const model: Model<AppProgramModelType>;
|
|
24
24
|
export default model;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/packages/back-stage/models/app-program.ts"],"sourcesContent":["import { isEqual, isFunction } from '@moneko/common';\nimport { type
|
|
1
|
+
{"version":3,"sources":["../../../../src/packages/back-stage/models/app-program.ts"],"sourcesContent":["import { isEqual, isFunction } from '@moneko/common';\nimport { type ModelAction, type ModelEffect, type Model, 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: Model<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<ModelAction>,\n { put }: ModelEffect\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<ModelAction>,\n { put, select }: ModelEffect\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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"}
|
package/lib/router/index.js
CHANGED
|
@@ -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 _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{createElement,lazy}from"react";import{pathToRegexp}from"path-to-regexp";export function lazyImport(filePath){return lazy(function(){return import("@/pages/"+filePath.replace(/:/g,"$").replace(/^\//,""))})}export var myPkgs=[];export var myDemoKv={};export var mdxComponents={};function heading(p,level){return createElement("h".concat(level),_objectSpread({"data-prefix":"# ",role:"heading","aria-level":level},p))}function pre(p){var c=createElement("code",p);if(p.className){return createElement(mdxComponents.CodeBlock||"pre",{lang:p.className.replace("language-","").replace(/ .*$/,"")},c)}return c}if(APPTYPE==="library"){var _models_keys,_allDemo_keys;var models=require.context("@pkg/",true,/README\.mdx?$/);var overrideComps={};try{overrideComps=require("@/components/components").default}catch(error){}Object.assign(mdxComponents,_objectSpread({h1:function h1(p){return heading(p,1)},h2:function h2(p){return heading(p,2)},h3:function h3(p){return heading(p,3)},h4:function h4(p){return heading(p,4)},h5:function h5(p){return heading(p,5)},h6:function h6(p){return heading(p,6)},pre:pre},overrideComps));(_models_keys=models.keys())===null||_models_keys===void 0?void 0:_models_keys.forEach(function(item){var key=item.substring(2).split("/").slice(0,-1).join("/");var _models=models(item),basic=_models.basic,Child=_models.default;myPkgs.push(_objectSpreadProps(_objectSpread({key:key,path:key,element:Child},basic),{props:{components:mdxComponents,path:key}}))});var allDemo=require.context("@pkg/",true,/\/examples\/(.+)\.mdx$/);(_allDemo_keys=allDemo.keys())===null||_allDemo_keys===void 0?void 0:_allDemo_keys.forEach(function(e){var _arr_pop;var k=e.substring(2),arr=k.split("/"),name=arr[0];if(!Array.isArray(myDemoKv[name])){myDemoKv[name]=[]}myDemoKv[name].push({soucre:require("@pkg/"+k),title:(_arr_pop=arr.pop())===null||_arr_pop===void 0?void 0:_arr_pop.replace(/\.mdx$/,"")})})}var list=[];try{list=require("@/router").default}catch(error){console.info("自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]",error)}function
|
|
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 _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{createElement,lazy}from"react";import{isUndefined}from"@moneko/common";import{pathToRegexp}from"path-to-regexp";export function lazyImport(filePath){return lazy(function(){return new Promise(function(resolve){return import("@/pages/"+filePath.replace(/:/g,"$").replace(/^\//,"")).then(resolve).catch(function(){return Promise.resolve({default:"404 not found: "+filePath})})})})}export var myPkgs=[];export var myDemoKv={};export var mdxComponents={};function heading(p,level){return createElement("h".concat(level),_objectSpread({"data-prefix":"# ",role:"heading","aria-level":level},p))}function pre(p){var c=createElement("code",p);if(p.className){return createElement(mdxComponents.CodeBlock||"pre",{lang:p.className.replace("language-","").replace(/ .*$/,"")},c)}return c}if(APPTYPE==="library"){var _models_keys,_allDemo_keys;var models=require.context("@pkg/",true,/README\.mdx?$/);var overrideComps={};try{overrideComps=require("@/components/components").default}catch(error){}Object.assign(mdxComponents,_objectSpread({h1:function h1(p){return heading(p,1)},h2:function h2(p){return heading(p,2)},h3:function h3(p){return heading(p,3)},h4:function h4(p){return heading(p,4)},h5:function h5(p){return heading(p,5)},h6:function h6(p){return heading(p,6)},pre:pre},overrideComps));(_models_keys=models.keys())===null||_models_keys===void 0?void 0:_models_keys.forEach(function(item){var key=item.substring(2).split("/").slice(0,-1).join("/");var _models=models(item),basic=_models.basic,Child=_models.default;myPkgs.push(_objectSpreadProps(_objectSpread({key:key,path:key,element:Child},basic),{props:{components:mdxComponents,path:key}}))});var allDemo=require.context("@pkg/",true,/\/examples\/(.+)\.mdx$/);(_allDemo_keys=allDemo.keys())===null||_allDemo_keys===void 0?void 0:_allDemo_keys.forEach(function(e){var _arr_pop;var k=e.substring(2),arr=k.split("/"),name=arr[0];if(!Array.isArray(myDemoKv[name])){myDemoKv[name]=[]}myDemoKv[name].push({soucre:require("@pkg/"+k),title:(_arr_pop=arr.pop())===null||_arr_pop===void 0?void 0:_arr_pop.replace(/\.mdx$/,"")})})}var list=[];try{list=require("@/router").default}catch(error){console.info("自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]",error)}function prefixKey(path,prev){return[prev==="*"&&path!=="*"?undefined:prev,path].filter(Boolean).join("/")}var models1=require.context("@/pages/",true,/\.(t|j)sx$/,"lazy");function pathToTree(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:lazyImport(key),hideMenu:key.includes(":"),props:{path:key}};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=prefixKey(_.path,prev);if(isUndefined(_.i18n)){_.i18n="route-"+_.key}if(isUndefined(_.alive)){_.alive=false}if(isUndefined(_.element)&&child.element){_.element=child.element;_.props=child.props}if(isUndefined(_.hideMenu)){_.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)})}}}function findLogin(){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=prefixKey(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=lazyImport(_.key);_.props={path:_.key}}return!!_.onlyLogin===onlyLogin&&!_.root?null:_}).filter(Boolean)}var _router=_toConsumableArray(list);routers.forEach(function(item){merge(_router,item)});export var onlyLoginRouter=findLogin(_router,false);export var router=findLogin(_router,true);export function matchUtil(pathname){var p={key:""};function findPath(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
|
package/lib/router/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { createElement, type FC, lazy, type ReactNode } from 'react';\nimport { pathToRegexp } from 'path-to-regexp';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\n// eslint-disable-next-line no-unused-vars\ntype MDXComponents = Record<string, FC<Any>>;\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactNode;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactNode;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n props?: {\n path: string;\n components?: MDXComponents;\n [key: string]: Any;\n };\n}\nexport function lazyImport(filePath: string) {\n return lazy(function () {\n return import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n );\n });\n}\n\nexport interface ExampleModule {\n soucre: string;\n title?: string;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nexport const mdxComponents: MDXComponents = {};\n\nfunction heading(p: Any, level: number) {\n return createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n}\nfunction pre(p: Any) {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n mdxComponents.CodeBlock || 'pre',\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n}\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n let overrideComps: MDXComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n overrideComps = require('@/components/components').default;\n } catch (error) {\n /* empty */\n }\n\n Object.assign(mdxComponents, {\n h1: function (p: Any) {\n return heading(p, 1);\n },\n h2: function (p: Any) {\n return heading(p, 2);\n },\n h3: function (p: Any) {\n return heading(p, 3);\n },\n h4: function (p: Any) {\n return heading(p, 4);\n },\n h5: function (p: Any) {\n return heading(p, 5);\n },\n h6: function (p: Any) {\n return heading(p, 6);\n },\n pre: pre,\n ...overrideComps,\n });\n\n models.keys()?.forEach(function (item: string) {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: mdxComponents,\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach(function (e: string) {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n myDemoKv[name].push({\n soucre: require('@pkg/' + k),\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nfunction predixKey(path?: string, prev?: string) {\n // eslint-disable-next-line no-undefined\n return [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n}\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nfunction pathToTree(input: string[]) {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') {\n continue;\n }\n if (pathRule === '.') {\n pathRule = '*';\n }\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) {\n curr.push(node);\n }\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n}\nconst routers: RouterProps[] = pathToTree(\n models.keys().map(function (item: string) {\n return item.replace(/\\$/g, ':');\n })\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find(function (item) {\n return item.path === child.path;\n });\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = 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 _.props = child.props;\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(function (childData) {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nfunction findLogin(rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] {\n return rs\n .map(function (e) {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = 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 = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n}\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach(function (item: RouterProps) {\n merge(_router, item);\n});\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport function matchUtil(pathname: string) {\n let p: RouterProps = { key: '' };\n\n function findPath(rs: RouterProps[]) {\n rs.forEach(function (item) {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n } catch (error) {\n /* empty */\n }\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n }\n\n findPath(router);\n return p;\n}\n"],"names":["createElement","lazy","pathToRegexp","lazyImport","filePath","replace","myPkgs","myDemoKv","mdxComponents","heading","p","level","role","pre","c","className","CodeBlock","lang","APPTYPE","models","allDemo","require","context","overrideComps","default","error","Object","assign","h1","h2","h3","h4","h5","h6","keys","forEach","item","key","substring","split","slice","join","basic","Child","push","path","element","props","components","e","arr","k","name","Array","isArray","soucre","title","pop","list","console","info","predixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { createElement, type FC, lazy, type ReactNode } from 'react';\nimport { isUndefined } from '@moneko/common';\nimport { pathToRegexp } from 'path-to-regexp';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\n// eslint-disable-next-line no-unused-vars\ntype MDXComponents = Record<string, FC<Any>>;\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactNode;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactNode;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n props?: {\n path: string;\n components?: MDXComponents;\n [key: string]: Any;\n };\n}\nexport function lazyImport(filePath: string) {\n return lazy(function () {\n return new Promise((resolve) =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n )\n .then(resolve)\n .catch(() => {\n return Promise.resolve({\n default: '404 not found: ' + filePath,\n });\n })\n );\n });\n}\n\nexport interface ExampleModule {\n soucre: string;\n title?: string;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nexport const mdxComponents: MDXComponents = {};\n\nfunction heading(p: Any, level: number) {\n return createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n}\nfunction pre(p: Any) {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n mdxComponents.CodeBlock || 'pre',\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n}\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n let overrideComps: MDXComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n overrideComps = require('@/components/components').default;\n } catch (error) {\n /* empty */\n }\n\n Object.assign(mdxComponents, {\n h1: function (p: Any) {\n return heading(p, 1);\n },\n h2: function (p: Any) {\n return heading(p, 2);\n },\n h3: function (p: Any) {\n return heading(p, 3);\n },\n h4: function (p: Any) {\n return heading(p, 4);\n },\n h5: function (p: Any) {\n return heading(p, 5);\n },\n h6: function (p: Any) {\n return heading(p, 6);\n },\n pre: pre,\n ...overrideComps,\n });\n\n models.keys()?.forEach(function (item: string) {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: mdxComponents,\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach(function (e: string) {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n myDemoKv[name].push({\n soucre: require('@pkg/' + k),\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nfunction prefixKey(path?: string, prev?: string) {\n // eslint-disable-next-line no-undefined\n return [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n}\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nfunction pathToTree(input: string[]) {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') {\n continue;\n }\n if (pathRule === '.') {\n pathRule = '*';\n }\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) {\n curr.push(node);\n }\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n}\nconst routers: RouterProps[] = pathToTree(\n models.keys().map(function (item: string) {\n return item.replace(/\\$/g, ':');\n })\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find(function (item) {\n return item.path === child.path;\n });\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = prefixKey(_.path, prev);\n if (isUndefined(_.i18n)) {\n _.i18n = 'route-' + _.key;\n }\n if (isUndefined(_.alive)) {\n _.alive = false;\n }\n if (isUndefined(_.element) && child.element) {\n _.element = child.element;\n _.props = child.props;\n }\n if (isUndefined(_.hideMenu)) {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach(function (childData) {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nfunction findLogin(rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] {\n return rs\n .map(function (e) {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = prefixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n}\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach(function (item: RouterProps) {\n merge(_router, item);\n});\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport function matchUtil(pathname: string) {\n let p: RouterProps = { key: '' };\n\n function findPath(rs: RouterProps[]) {\n rs.forEach(function (item) {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n } catch (error) {\n /* empty */\n }\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n }\n\n findPath(router);\n return p;\n}\n"],"names":["createElement","lazy","isUndefined","pathToRegexp","lazyImport","filePath","Promise","resolve","replace","then","catch","default","myPkgs","myDemoKv","mdxComponents","heading","p","level","role","pre","c","className","CodeBlock","lang","APPTYPE","models","allDemo","require","context","overrideComps","error","Object","assign","h1","h2","h3","h4","h5","h6","keys","forEach","item","key","substring","split","slice","join","basic","Child","push","path","element","props","components","e","arr","k","name","Array","isArray","soucre","title","pop","list","console","info","prefixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}
|
package/lib/styles/normalize.css
CHANGED
|
@@ -40,7 +40,7 @@ main {
|
|
|
40
40
|
|
|
41
41
|
input,
|
|
42
42
|
textarea {
|
|
43
|
-
caret-color: var(--primary-color-
|
|
43
|
+
caret-color: var(--primary-color-bg);;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
h1 {
|
|
@@ -245,7 +245,7 @@ template {
|
|
|
245
245
|
}
|
|
246
246
|
|
|
247
247
|
:hover::-webkit-scrollbar-thumb {
|
|
248
|
-
background-color: var(--primary-color-
|
|
248
|
+
background-color: var(--primary-color-bg);
|
|
249
249
|
}
|
|
250
250
|
|
|
251
251
|
::-webkit-scrollbar-thumb:hover {
|
package/lib/styles/variables.css
CHANGED
|
@@ -1,37 +1,35 @@
|
|
|
1
1
|
:root {
|
|
2
|
-
--text-shadow-color: rgb(0 0 0 / 10%);
|
|
3
2
|
--font-size: 14px;
|
|
4
|
-
--
|
|
5
|
-
--
|
|
3
|
+
--font-size-sm: 12px;
|
|
4
|
+
--font-size-xs: 10px;
|
|
5
|
+
--font-size-lg: 16px;
|
|
6
|
+
--border-base: 1px solid var(--border-color);
|
|
7
|
+
--border-color: #d9d9d9;
|
|
8
|
+
--border-radius: 8px;
|
|
6
9
|
--body-background: #f8f8f8;
|
|
7
10
|
--component-background: rgb(255 255 255 / 80%);
|
|
8
11
|
--table-header-bg: rgb(0 0 0 / 2%);
|
|
9
12
|
--text-color: rgb(0 0 0 / 65%);
|
|
10
|
-
--text-
|
|
11
|
-
--heading
|
|
12
|
-
--text-selection-bg: var(--primary-color-
|
|
13
|
-
--
|
|
13
|
+
--text-secondary: #4e4e4e;
|
|
14
|
+
--text-heading: #1b1b1b;
|
|
15
|
+
--text-selection-bg: var(--primary-color-bg);
|
|
16
|
+
--text-shadow-color: rgb(0 0 0 / 10%);
|
|
14
17
|
--box-shadow-base: 0 3px 6px -4px rgb(0 0 0 / 12%), 0 6px 16px 0 rgb(0 0 0 / 8%),
|
|
15
|
-
|
|
16
|
-
--font-family: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Helvetica Neue',
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
0 9px 28px 8px rgb(0 0 0 / 5%);
|
|
19
|
+
--font-family: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Helvetica Neue',
|
|
20
|
+
'Arial', 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
|
|
21
|
+
'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans';
|
|
19
22
|
--transition-duration: 0.3s;
|
|
20
23
|
--transition-timing-function: cubic-bezier(0.94, -0.1, 0.1, 1.2);
|
|
21
|
-
|
|
22
|
-
--btn-disable-bg: var(--disable-color);
|
|
23
|
-
--btn-disable-border: var(--disable-color);
|
|
24
|
-
}
|
|
24
|
+
}
|
|
25
25
|
|
|
26
|
-
[data-theme='dark'] {
|
|
27
|
-
--text-color
|
|
26
|
+
[data-theme='dark'] {
|
|
27
|
+
--text-color: #ffffffd9;
|
|
28
|
+
--text-secondary: #cdcdcd;
|
|
29
|
+
--text-heading: rgb(255 255 255 / 85%);
|
|
28
30
|
--text-shadow-color: rgb(255 255 255 / 10%);
|
|
29
|
-
--header-shadow: rgb(255 255 255 / 5%);
|
|
30
31
|
--body-background: #000;
|
|
31
32
|
--component-background: rgb(20 20 20 / 80%);
|
|
32
33
|
--header-bg: rgb(20 20 20 / 90%);
|
|
33
|
-
--
|
|
34
|
-
|
|
35
|
-
--heading-color: rgb(255 255 255 / 85%);
|
|
36
|
-
--disabled-color: rgb(255 255 255 / 30%);
|
|
37
|
-
}
|
|
34
|
+
--border-color: #303030;
|
|
35
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moneko/core",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.10-beta.0",
|
|
4
4
|
"description": "core",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"less": "4.1.3",
|
|
38
38
|
"less-loader": "11.1.0",
|
|
39
39
|
"mini-css-extract-plugin": "2.7.2",
|
|
40
|
-
"mini-idc": "1.0.
|
|
40
|
+
"mini-idc": "1.0.19",
|
|
41
41
|
"mini-svg-data-uri": "1.4.4",
|
|
42
42
|
"path-to-regexp": "6.2.1",
|
|
43
43
|
"portfinder": "1.0.32",
|
package/typings/global.d.ts
CHANGED
|
@@ -549,7 +549,7 @@ export type SwcImportOnDemandTransform = Record<
|
|
|
549
549
|
* import 'antd/es/back-top/style';
|
|
550
550
|
* ```
|
|
551
551
|
*/
|
|
552
|
-
style?: string;
|
|
552
|
+
style?: string | boolean;
|
|
553
553
|
/** 默认值:`false`, 当设置为true时,将保留 `import { Button }` 语法,而不是转换为 `import Button` */
|
|
554
554
|
skipDefaultConversion?: boolean;
|
|
555
555
|
/** 默认值:`true`, 当遇到会导致导入整个模块时,是否抛出 */
|