@moneko/core 2.0.16-beta.4 → 2.0.16-beta.5
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/lib/index.d.ts +1 -0
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/store/index.d.ts +13 -0
- package/lib/store/index.js +2 -0
- package/lib/store/index.js.map +1 -0
- package/package.json +6 -4
package/lib/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './prefix/react-router-dom.js';
|
|
|
3
3
|
export * from './prefix/i18n-hooks.js';
|
|
4
4
|
export * from './prefix/mini-idc.js';
|
|
5
5
|
export * from './utils';
|
|
6
|
+
export { default as createStore } from './store';
|
|
6
7
|
export { matchUtil, router, onlyLoginRouter, myPkgs, myDemoKv, mdxComponents, type ExampleModule, type RouterProps, type MyPkg, } from './router';
|
|
7
8
|
export declare const LayoutMenu: any;
|
|
8
9
|
export declare const DashboardLayout: any;
|
package/lib/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export*from"./prefix/react-router-dom.js";export*from"./prefix/i18n-hooks.js";export*from"./prefix/mini-idc.js";export*from"./utils";export{matchUtil,router,onlyLoginRouter,myPkgs,myDemoKv,mdxComponents}from"./router";export var LayoutMenu=hasAntd?require("./components/layout-menu").default:null;export var DashboardLayout=hasAntd?require("./packages/back-stage/layout").default:null;export var projectBasicInfo={projectName:projectName,providerConfig:providerConfig,programInfo:programInfo,coverage:projectCoverage};
|
|
1
|
+
export*from"./prefix/react-router-dom.js";export*from"./prefix/i18n-hooks.js";export*from"./prefix/mini-idc.js";export*from"./utils";export{default as createStore}from"./store";export{matchUtil,router,onlyLoginRouter,myPkgs,myDemoKv,mdxComponents}from"./router";export var LayoutMenu=hasAntd?require("./components/layout-menu").default:null;export var DashboardLayout=hasAntd?require("./packages/back-stage/layout").default:null;export var projectBasicInfo={projectName:projectName,providerConfig:providerConfig,programInfo:programInfo,coverage:projectCoverage};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './prefix/react-router-dom.js';\nexport * from './prefix/i18n-hooks.js';\nexport * from './prefix/mini-idc.js';\nexport * from './utils';\nexport {\n matchUtil,\n router,\n onlyLoginRouter,\n myPkgs,\n myDemoKv,\n mdxComponents,\n type ExampleModule,\n type RouterProps,\n type MyPkg,\n} from './router';\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const LayoutMenu = hasAntd ? require('./components/layout-menu').default : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const DashboardLayout = hasAntd ? require('./packages/back-stage/layout').default : null;\nexport type {\n ConfigType,\n AppType,\n CommomType,\n ProgramInfoType,\n MemberTransformer,\n CoverageType,\n TerserOptions,\n MinifierType,\n SourceMapDevToolPluginOptions,\n ProjectCoverageType,\n SharedConfig,\n SwcOptions,\n OptimizationSplitChunksOptions,\n SwcImportOnDemandTransform,\n} from '../typings/global';\nimport type { ConfigType, CommomType, CoverageType, ProjectCoverageType } from '../typings/global';\nexport type PartialConfigType<T = 'swc'> = Partial<ConfigType<T>>;\nexport type PartialCommomType<T = 'swc'> = Partial<CommomType<T>>;\
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './prefix/react-router-dom.js';\nexport * from './prefix/i18n-hooks.js';\nexport * from './prefix/mini-idc.js';\nexport * from './utils';\nexport { default as createStore } from './store';\nexport {\n matchUtil,\n router,\n onlyLoginRouter,\n myPkgs,\n myDemoKv,\n mdxComponents,\n type ExampleModule,\n type RouterProps,\n type MyPkg,\n} from './router';\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const LayoutMenu = hasAntd ? require('./components/layout-menu').default : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const DashboardLayout = hasAntd ? require('./packages/back-stage/layout').default : null;\nexport type {\n ConfigType,\n AppType,\n CommomType,\n ProgramInfoType,\n MemberTransformer,\n CoverageType,\n TerserOptions,\n MinifierType,\n SourceMapDevToolPluginOptions,\n ProjectCoverageType,\n SharedConfig,\n SwcOptions,\n OptimizationSplitChunksOptions,\n SwcImportOnDemandTransform,\n} from '../typings/global';\nimport type { ConfigType, CommomType, CoverageType, ProjectCoverageType } from '../typings/global';\nexport type PartialConfigType<T = 'swc'> = Partial<ConfigType<T>>;\nexport type PartialCommomType<T = 'swc'> = Partial<CommomType<T>>;\ndeclare const projectCoverage: Record<string, CoverageType & Partial<ProjectCoverageType>>;\n\n/** 一些项目基本信息 */\nexport const projectBasicInfo = {\n projectName,\n providerConfig,\n programInfo,\n coverage: projectCoverage,\n};\n"],"names":["default","createStore","matchUtil","router","onlyLoginRouter","myPkgs","myDemoKv","mdxComponents","LayoutMenu","hasAntd","require","DashboardLayout","projectBasicInfo","projectName","providerConfig","programInfo","coverage","projectCoverage"],"mappings":"AAAA,WAAc,8BAA+B,AAC7C,YAAc,wBAAyB,AACvC,YAAc,sBAAuB,AACrC,YAAc,SAAU,AACxB,QAASA,WAAWC,WAAW,KAAQ,SAAU,AACjD,QACEC,SAAS,CACTC,MAAM,CACNC,eAAe,CACfC,MAAM,CACNC,QAAQ,CACRC,aAAa,KAIR,UAAW,AAElB,QAAO,IAAMC,WAAaC,QAAUC,QAAQ,4BAA4BV,OAAO,CAAG,IAAI,AAAC,AAEvF,QAAO,IAAMW,gBAAkBF,QAAUC,QAAQ,gCAAgCV,OAAO,CAAG,IAAI,AAAC,AAuBhG,QAAO,IAAMY,iBAAmB,CAC9BC,YAAAA,YACAC,eAAAA,eACAC,YAAAA,YACAC,SAAUC,eACZ,CAAE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type VoidFn = () => void;
|
|
2
|
+
type Updater<V> = (val: V) => V;
|
|
3
|
+
type Data = Record<string, unknown>;
|
|
4
|
+
type Setter<T> = <K extends keyof T>(key: K, updater: Updater<T[K]>) => void;
|
|
5
|
+
type Store<T> = T & Setter<T>;
|
|
6
|
+
declare let run: (fn: VoidFn) => void;
|
|
7
|
+
declare const createStore: {
|
|
8
|
+
<T extends Data>(data: T): Store<T>;
|
|
9
|
+
config({ batch }: {
|
|
10
|
+
batch: typeof run;
|
|
11
|
+
}): void;
|
|
12
|
+
};
|
|
13
|
+
export default createStore;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr)}function _instanceof(left,right){if(right!=null&&typeof Symbol!=="undefined"&&right[Symbol.hasInstance]){return!!right[Symbol.hasInstance](left)}else{return left instanceof right}}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}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 _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 _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}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{useSyncExternalStore}from"use-sync-external-store/shim";var __DEV__=process.env.NODE_ENV!=="production";var __DEV_ERR__=function(msg){if(__DEV__){throw new Error(msg)}};var isInMethod=false;var run=function(fn){fn()};var createStore=function(data){if(__DEV__&&Object.prototype.toString.call(data)!=="[object Object]"){throw new Error("object required")}var state={};var methods={};Object.keys(data).forEach(function(key){var initVal=data[key];if(_instanceof(initVal,Function)){methods[key]=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key]}isInMethod=true;var res=initVal.apply(void 0,_toConsumableArray(args));isInMethod=false;return res};return}var listeners=new Set;state[key]={subscribe:function(listener){listeners.add(listener);return function(){return listeners.delete(listener)}},getSnapshot:function(){return data[key]},setSnapshot:function(val){if(val!==data[key]){data[key]=val;run(function(){return listeners.forEach(function(listener){return listener()})})}},useSnapshot:function(){return useSyncExternalStore(state[key].subscribe,state[key].getSnapshot,state[key].getSnapshot)}}});var setState=function(key,val){if(key in data){if(key in state){var newVal=_instanceof(val,Function)?val(data[key]):val;state[key].setSnapshot(newVal)}else{__DEV_ERR__("`".concat(key,"` is a method, can not update"))}}else{__DEV_ERR__("`".concat(key,"` is not initialized in store"))}};return new Proxy(function(){return undefined},{get:function(_,key){if(key in methods){return methods[key]}if(isInMethod){return data[key]}try{return state[key].useSnapshot()}catch(err){return data[key]}},set:function(_,key,val){setState(key,val);return true},apply:function(_,__,param){var _param=_slicedToArray(param,2),key=_param[0],updater=_param[1];if(typeof updater==="function"){setState(key,updater)}else{__DEV_ERR__("updater for `".concat(key,"` should be a function"))}}})};createStore.config=function(param){var batch=param.batch;run=batch};export default createStore;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/store/index.ts"],"sourcesContent":["import { useSyncExternalStore } from 'use-sync-external-store/shim';\n\ntype VoidFn = () => void;\n// eslint-disable-next-line no-unused-vars\ntype AnyFn = (...args: unknown[]) => unknown;\n// eslint-disable-next-line no-unused-vars\ntype Updater<V> = (val: V) => V;\n\ntype Data = Record<string, unknown>;\ntype State<T> = {\n [K in keyof T]: {\n // eslint-disable-next-line no-unused-vars\n subscribe: (listener: VoidFn) => VoidFn;\n getSnapshot: () => T[K];\n useSnapshot: () => T[K];\n // eslint-disable-next-line no-unused-vars\n setSnapshot: (val: T[K]) => void;\n };\n};\ntype Methods<T> = Record<keyof T, AnyFn>;\n// eslint-disable-next-line no-unused-vars\ntype Setter<T> = <K extends keyof T>(key: K, updater: Updater<T[K]>) => void;\ntype Store<T> = T & Setter<T>;\n\nconst __DEV__ = process.env.NODE_ENV !== 'production';\nconst __DEV_ERR__ = (msg: string) => {\n if (__DEV__) {\n throw new Error(msg);\n }\n};\n\nlet isInMethod = false;\nlet run = (fn: VoidFn) => {\n fn();\n};\n\nconst createStore = <T extends Data>(data: T): Store<T> => {\n if (__DEV__ && Object.prototype.toString.call(data) !== '[object Object]') {\n throw new Error('object required');\n }\n\n const state: State<T> = {} as State<T>;\n const methods: Methods<T> = {} as Methods<T>;\n\n Object.keys(data).forEach((key: keyof T) => {\n const initVal = data[key];\n\n if (initVal instanceof Function) {\n methods[key] = (...args: unknown[]) => {\n isInMethod = true;\n const res = initVal(...args);\n\n isInMethod = false;\n return res;\n };\n return;\n }\n\n const listeners = new Set<VoidFn>();\n\n state[key] = {\n subscribe: (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n },\n getSnapshot: () => data[key],\n setSnapshot: (val) => {\n if (val !== data[key]) {\n data[key] = val;\n run(() => listeners.forEach((listener) => listener()));\n }\n },\n useSnapshot: () => {\n return useSyncExternalStore(\n state[key].subscribe,\n state[key].getSnapshot,\n state[key].getSnapshot\n );\n },\n };\n });\n\n const setState = (key: keyof T, val: T[keyof T] | Updater<T[keyof T]>) => {\n if (key in data) {\n if (key in state) {\n const newVal = val instanceof Function ? val(data[key]) : val;\n\n state[key].setSnapshot(newVal);\n } else {\n __DEV_ERR__(`\\`${key as string}\\` is a method, can not update`);\n }\n } else {\n __DEV_ERR__(`\\`${key as string}\\` is not initialized in store`);\n }\n };\n\n return new Proxy(\n // eslint-disable-next-line no-undefined\n (() => undefined) as unknown as Store<T>,\n {\n get: (_, key: keyof T) => {\n if (key in methods) {\n return methods[key];\n }\n\n if (isInMethod) {\n return data[key];\n }\n\n try {\n return state[key].useSnapshot();\n } catch (err) {\n return data[key];\n }\n },\n set: (_, key: keyof T, val: T[keyof T]) => {\n setState(key, val);\n return true;\n },\n apply: (_, __, [key, updater]: [keyof T, Updater<T[keyof T]>]) => {\n if (typeof updater === 'function') {\n setState(key, updater);\n } else {\n __DEV_ERR__(`updater for \\`${key as string}\\` should be a function`);\n }\n },\n } as ProxyHandler<Store<T>>\n );\n};\n\ncreateStore.config = ({ batch }: { batch: typeof run }) => {\n run = batch;\n};\n\nexport default createStore;\n"],"names":["useSyncExternalStore","__DEV__","process","env","NODE_ENV","__DEV_ERR__","msg","Error","isInMethod","run","fn","createStore","data","Object","prototype","toString","call","state","methods","keys","forEach","key","initVal","Function","args","res","listeners","Set","subscribe","listener","add","delete","getSnapshot","setSnapshot","val","useSnapshot","setState","newVal","Proxy","undefined","get","_","err","set","apply","__","updater","config","batch"],"mappings":"4hEAAA,OAASA,oBAAoB,KAAQ,8BAA+B,CAwBpE,IAAMC,QAAUC,QAAQC,GAAG,CAACC,QAAQ,GAAK,aACzC,IAAMC,YAAc,SAACC,IAAgB,CACnC,GAAIL,QAAS,CACX,MAAM,IAAIM,MAAMD,IAAK,AACvB,CAAC,AACH,EAEA,IAAIE,WAAa,KAAK,CACtB,IAAIC,IAAM,SAACC,GAAe,CACxBA,IACF,EAEA,IAAMC,YAAc,SAAiBC,KAAsB,CACzD,GAAIX,SAAWY,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACJ,QAAU,kBAAmB,CACzE,MAAM,IAAIL,MAAM,kBAAmB,AACrC,CAAC,AAED,IAAMU,MAAkB,CAAC,EACzB,IAAMC,QAAsB,CAAC,EAE7BL,OAAOM,IAAI,CAACP,MAAMQ,OAAO,CAAC,SAACC,IAAiB,CAC1C,IAAMC,QAAUV,IAAI,CAACS,IAAI,CAEzB,GAAIC,AAAO,YAAPA,QAAmBC,UAAU,CAC/BL,OAAO,CAACG,IAAI,CAAG,UAAwB,+BAApBG,8CAAAA,2BACjBhB,WAAa,IAAI,CACjB,IAAMiB,IAAMH,QAAAA,MAAAA,KAAAA,EAAQ,mBAAGE,OAEvBhB,WAAa,KAAK,CAClB,OAAOiB,GACT,EACA,MACF,CAAC,AAED,IAAMC,UAAY,IAAIC,GAEtBV,CAAAA,KAAK,CAACI,IAAI,CAAG,CACXO,UAAW,SAACC,SAAa,CACvBH,UAAUI,GAAG,CAACD,UACd,OAAO,kBAAMH,UAAUK,MAAM,CAACF,UAChC,EACAG,YAAa,kBAAMpB,IAAI,CAACS,IAAI,EAC5BY,YAAa,SAACC,IAAQ,CACpB,GAAIA,MAAQtB,IAAI,CAACS,IAAI,CAAE,CACrBT,IAAI,CAACS,IAAI,CAAGa,IACZzB,IAAI,kBAAMiB,UAAUN,OAAO,CAAC,SAACS,iBAAaA,cAC5C,CAAC,AACH,EACAM,YAAa,UAAM,CACjB,OAAOnC,qBACLiB,KAAK,CAACI,IAAI,CAACO,SAAS,CACpBX,KAAK,CAACI,IAAI,CAACW,WAAW,CACtBf,KAAK,CAACI,IAAI,CAACW,WAAW,CAE1B,CACF,CACF,GAEA,IAAMI,SAAW,SAACf,IAAca,IAA0C,CACxE,GAAIb,OAAOT,KAAM,CACf,GAAIS,OAAOJ,MAAO,CAChB,IAAMoB,OAASH,AAAG,YAAHA,IAAeX,UAAWW,IAAItB,IAAI,CAACS,IAAI,EAAIa,GAAG,CAE7DjB,KAAK,CAACI,IAAI,CAACY,WAAW,CAACI,OACzB,KAAO,CACLhC,YAAY,AAAC,IAAkB,OAAdgB,IAAc,iCACjC,CAAC,AACH,KAAO,CACLhB,YAAY,AAAC,IAAkB,OAAdgB,IAAc,iCACjC,CAAC,AACH,EAEA,OAAO,IAAIiB,MAER,kBAAMC,WACP,CACEC,IAAK,SAACC,EAAGpB,IAAiB,CACxB,GAAIA,OAAOH,QAAS,CAClB,OAAOA,OAAO,CAACG,IAAI,AACrB,CAAC,AAED,GAAIb,WAAY,CACd,OAAOI,IAAI,CAACS,IAAI,AAClB,CAAC,AAED,GAAI,CACF,OAAOJ,KAAK,CAACI,IAAI,CAACc,WAAW,EAC/B,CAAE,MAAOO,IAAK,CACZ,OAAO9B,IAAI,CAACS,IAAI,AAClB,CACF,EACAsB,IAAK,SAACF,EAAGpB,IAAca,IAAoB,CACzCE,SAASf,IAAKa,KACd,OAAO,IAAI,AACb,EACAU,MAAO,SAACH,EAAGI,SAAuD,oCAAlDxB,cAAKyB,kBACnB,GAAI,OAAOA,UAAY,WAAY,CACjCV,SAASf,IAAKyB,QAChB,KAAO,CACLzC,YAAY,AAAC,gBAA8B,OAAdgB,IAAc,0BAC7C,CAAC,AACH,CACF,EAEJ,CAEAV,CAAAA,YAAYoC,MAAM,CAAG,eAAsC,KAAnCC,YAAAA,MACtBvC,IAAMuC,KACR,CAEA,gBAAerC,WAAY"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moneko/core",
|
|
3
|
-
"version": "2.0.16-beta.
|
|
3
|
+
"version": "2.0.16-beta.5",
|
|
4
4
|
"description": "core",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -50,11 +50,12 @@
|
|
|
50
50
|
"rehype-figure": "1.0.1",
|
|
51
51
|
"style-loader": "3.3.1",
|
|
52
52
|
"style-resources-loader": "1.5.0",
|
|
53
|
-
"swc-plugin-another-transform-imports": "0.2.1",
|
|
54
53
|
"swc-loader": "0.2.3",
|
|
54
|
+
"swc-plugin-another-transform-imports": "0.2.1",
|
|
55
55
|
"ts-import-plugin": "2.0.0",
|
|
56
56
|
"ts-loader": "9.4.2",
|
|
57
57
|
"typescript": "4.9.5",
|
|
58
|
+
"use-sync-external-store": "^1.2.0",
|
|
58
59
|
"webpack": "5.76.1",
|
|
59
60
|
"webpack-bundle-analyzer": "4.8.0",
|
|
60
61
|
"webpack-cli": "5.0.1",
|
|
@@ -66,10 +67,11 @@
|
|
|
66
67
|
"devDependencies": {
|
|
67
68
|
"@swc/cli": "0.1.62",
|
|
68
69
|
"@types/mini-css-extract-plugin": "^2.5.1",
|
|
69
|
-
"@types/react": "^18.0.
|
|
70
|
-
"@types/react-dom": "^18.0.
|
|
70
|
+
"@types/react": "^18.0.28",
|
|
71
|
+
"@types/react-dom": "^18.0.11",
|
|
71
72
|
"@types/react-router-dom": "^5.3.3",
|
|
72
73
|
"@types/shelljs": "^0.8.11",
|
|
74
|
+
"@types/use-sync-external-store": "^0.0.3",
|
|
73
75
|
"@types/webpack-bundle-analyzer": "^4.6.0",
|
|
74
76
|
"@types/webpack-env": "^1.18.0",
|
|
75
77
|
"antd": "5.3.1",
|