@moneko/core 2.0.0-beta.40 → 2.0.0-beta.41
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/common.js +1 -1
- package/build/html-add-entry-attr.js +1 -1
- package/build/html-plugin-option.js +1 -1
- package/build/module-federation.js +1 -1
- package/build/module.config.js +1 -1
- package/build/process-env.js +1 -1
- package/build/webpack.prod.js +1 -1
- package/build/yarn-argv.js +1 -1
- package/lib/components/app-router/index.js +1 -1
- package/lib/components/app-router/index.js.map +1 -1
- package/lib/components/fallback/index.js +1 -1
- package/lib/components/fallback/index.js.map +1 -1
- package/lib/components/fallback-comp/index.js +1 -1
- package/lib/components/fallback-comp/index.js.map +1 -1
- package/lib/components/layout-menu/index.js +1 -1
- package/lib/components/layout-menu/index.js.map +1 -1
- package/lib/hooks/navgate.js +1 -1
- package/lib/hooks/navgate.js.map +1 -1
- package/lib/packages/back-stage/app.js +1 -1
- package/lib/packages/back-stage/app.js.map +1 -1
- package/lib/packages/back-stage/layout/index.js +1 -1
- package/lib/packages/back-stage/layout/index.js.map +1 -1
- package/lib/packages/back-stage/models/app-program.js +1 -1
- package/lib/packages/back-stage/models/app-program.js.map +1 -1
- package/lib/packages/library/app.js.map +1 -1
- package/lib/packages/mobile/app.js.map +1 -1
- package/lib/packages/single-spa/app.js.map +1 -1
- package/lib/packages/single-spa/bootstrap.js.map +1 -1
- package/lib/packages/single-spa/index.js +1 -1
- package/lib/packages/single-spa/index.js.map +1 -1
- package/lib/packages/site/app.js.map +1 -1
- package/lib/prefix/react-router-dom.js.map +1 -1
- package/lib/router/index.js +1 -1
- package/lib/router/index.js.map +1 -1
- package/lib/utils/index.js +1 -1
- package/lib/utils/index.js.map +1 -1
- package/package.json +7 -3
- package/typings/global.d.ts +2 -0
package/build/common.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{ENTRYPATH:function(){return ENTRYPATH},log:function(){return log},CONFIG:function(){return CONFIG},PUBLICPATH:function(){return PUBLICPATH}});var _fs=_interopRequireDefault(require("fs"));var _path=_interopRequireDefault(require("path"));var _readline=_interopRequireDefault(require("readline"));var _utils=require("./utils");var _webpackMerge=require("webpack-merge");var _chalk=_interopRequireDefault(require("chalk"));var _processEnv=require("./process-env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{ENTRYPATH:function(){return ENTRYPATH},log:function(){return log},CONFIG:function(){return CONFIG},PUBLICPATH:function(){return PUBLICPATH}});var _fs=_interopRequireDefault(require("fs"));var _path=_interopRequireDefault(require("path"));var _readline=_interopRequireDefault(require("readline"));var _utils=require("./utils");var _webpackMerge=require("webpack-merge");var _chalk=_interopRequireDefault(require("chalk"));var _processEnv=require("./process-env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _customConf_minifier;var ENTRYPATH={mobile:"mobile",site:"site","back-stage":"back-stage","single-spa":"single-spa",library:"library","single-component":"single-component"};var includeModule=[_processEnv.pkgName,"neko-ui","antd","@antv","katex","font-pingfang-sc","font-pingfang-tc","react-photo-view","react-markdown-editor-lite","schema-design"];var defaultSplitChunk={chunks:"all",minSize:1024,minChunks:1};if(_processEnv.APPTYPE==="single-component"){defaultSplitChunk=false}var defaultConfig={mode:"csr",compiler:"swc",bundleAnalyzer:{analyzerMode:"static",reportFilename:"report.html",openAnalyzer:false},entry:{},minifier:{options:{},css:"cssnano"},sourceMap:{filename:"[file].map",publicPath:""},env:{},miniIdc:{programName:"".concat(_processEnv.PACKAGENAME,"-").concat(_processEnv.PACKAGEVERSION,"-program-state"),encrypt:false},routeBaseName:"/",publicPath:"auto",designSize:_processEnv.APPTYPE==="mobile"?375:1680,fallbackCompPath:null,modifyVars:{},prefixCls:"neko",alias:{},layoutSider:{},moduleRules:[],prefixJsLoader:[],cssModules:[],importOnDemand:{},proxy:[],cacheDirectory:_processEnv.PROGRAMPATH+"/node_modules/.temp_cache",devServer:{allowedHosts:[".baidu.com"],host:"localhost",port:3e3,https:false,compress:false},htmlPluginOption:{template:"./node_modules/".concat(_processEnv.pkgName,"/template/index.html"),favicon:"./node_modules/".concat(_processEnv.pkgName,"/template/favicon.ico")},assetHtml:[],routerMode:"browser",plugins:[],splitChunk:defaultSplitChunk,runtimeChunk:_processEnv.APPTYPE==="single-component"?false:"single",webFontLoader:[],moduleFederation:[],rulesInclude:{less:includeModule,css:includeModule,js:includeModule,media:includeModule,fonts:includeModule}};var log=function(msg){_readline.default.cursorTo(process.stdout,0);process.stdout.write(msg)};var customConf=defaultConfig;var configPath=null;var normalConf={};var envConf={};try{configPath=_path.default.join(_processEnv.PROGRAMPATH,"./config/index.ts");_fs.default.accessSync(configPath,_fs.default.constants.R_OK)}catch(error){configPath=null}if(configPath){try{var conf=eval((0,_utils.tfc)(configPath)).default;normalConf=(0,_utils.isFunction)(conf)?conf(process):conf}catch(error){process.stdout.write(_chalk.default.red(error))}}if(_processEnv.CUSTOMCONFIG){var customConfigPath=null;try{customConfigPath=_path.default.join(_processEnv.PROGRAMPATH,"./config/".concat(_processEnv.CUSTOMCONFIG,".ts"));_fs.default.accessSync(customConfigPath,_fs.default.constants.R_OK)}catch(error){customConfigPath=null}if(customConfigPath!==null){try{var conf=eval((0,_utils.tfc)(customConfigPath)).default;envConf=(0,_utils.isFunction)(conf)?conf(process):conf}catch(error){process.stdout.write(_chalk.default.red(error))}}}customConf=(0,_webpackMerge.merge)(customConf,normalConf,envConf);if(!(customConf===null||customConf===void 0?void 0:(_customConf_minifier=customConf.minifier)===null||_customConf_minifier===void 0?void 0:_customConf_minifier.type)){customConf.minifier.type=customConf.compiler==="swc"?"swc":"terser"}if(customConf.devtool===false)customConf.sourceMap=false;if(customConf.sourceMap===false)customConf.devtool=false;var CONFIG=customConf;var PUBLICPATH=CONFIG.publicPath||"auto";global.NEKOCLICONFIG={CONFIG:CONFIG,log:log};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}var AddEntryAttributeWebpackPlugin=function(){"use strict";function AddEntryAttributeWebpackPlugin(matchCallback){_classCallCheck(this,AddEntryAttributeWebpackPlugin);this.entryMatchCallback=matchCallback}var _proto=AddEntryAttributeWebpackPlugin.prototype;_proto.apply=function apply(compiler){var _this=this;compiler.hooks.compilation.tap("AddEntryAttributeWebpackPlugin",function(compilation){var HtmlWebpackPluginInstance=compiler.options.plugins.map(function(param){var constructor=param.constructor;return constructor}).find(function(constructor){return constructor&&constructor.name==="HtmlWebpackPlugin"});if(HtmlWebpackPluginInstance){var hooks=HtmlWebpackPluginInstance.getHooks(compilation);hooks.alterAssetTagGroups.tap("AddEntryAttributeWebpackPlugin",function(data){data.headTags.forEach(function(tag){var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}var AddEntryAttributeWebpackPlugin=function(){"use strict";function AddEntryAttributeWebpackPlugin(matchCallback){_classCallCheck(this,AddEntryAttributeWebpackPlugin);this.entryMatchCallback=matchCallback}var _proto=AddEntryAttributeWebpackPlugin.prototype;_proto.apply=function apply(compiler){var _this=this;compiler.hooks.compilation.tap("AddEntryAttributeWebpackPlugin",function(compilation){var HtmlWebpackPluginInstance=compiler.options.plugins.map(function(param){var constructor=param.constructor;return constructor}).find(function(constructor){return constructor&&constructor.name==="HtmlWebpackPlugin"});if(HtmlWebpackPluginInstance){var hooks=HtmlWebpackPluginInstance.getHooks(compilation);hooks.alterAssetTagGroups.tap("AddEntryAttributeWebpackPlugin",function(data){data.headTags.forEach(function(tag){var _tag_attributes;if(tag.tagName==="script"&&_this.entryMatchCallback((_tag_attributes=tag.attributes)===null||_tag_attributes===void 0?void 0:_tag_attributes.src)){tag.attributes.entry=true}});return data})}})};return AddEntryAttributeWebpackPlugin}();var _default=AddEntryAttributeWebpackPlugin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _path=_interopRequireDefault(require("path"));var _webpackMerge=require("webpack-merge");var _common=require("./common");var _processEnv=require("./process-env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _path=_interopRequireDefault(require("path"));var _webpackMerge=require("webpack-merge");var _common=require("./common");var _processEnv=require("./process-env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}var _CONFIG_env;var _CONFIG_htmlPluginOption=_common.CONFIG.htmlPluginOption,template=_CONFIG_htmlPluginOption.template,favicon=_CONFIG_htmlPluginOption.favicon,option=_objectWithoutProperties(_CONFIG_htmlPluginOption,["template","favicon"]);var htmlPluginOption=(0,_webpackMerge.merge)({title:((_CONFIG_env=_common.CONFIG.env)===null||_CONFIG_env===void 0?void 0:_CONFIG_env.PROJECTNAME)||_processEnv.PACKAGENAME.toLocaleUpperCase()||"Title",filename:"index.html",hash:false,minify:{collapseWhitespace:true,removeComments:true,removeRedundantAttributes:false,removeScriptTypeAttributes:false,removeStyleLinkTypeAttributes:false,removeAttributeQuotes:true,useShortDoctype:true},meta:{charset:"UTF-8","X-UA-Compatible":{"http-equiv":"X-UA-Compatible",content:"IE=edge,Chrome=1"},HandheldFriendly:"true",MobileOptimized:"320","screen-orientation":"portrait","x5-orientation":"portrait",browsermode:"application","x5-page-mode":"app","msapplication-tap-highlight":"no",viewport:"width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no","apple-mobile-web-app-capable":"yes",renderer:"webkit"},template:_path.default.join(_processEnv.PROGRAMPATH,template),favicon:_path.default.join(_processEnv.PROGRAMPATH,favicon)},option);var _default=htmlPluginOption;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"moduleFederation",{enumerable:true,get:function(){return moduleFederation}});var _webpack=require("webpack");var _common=require("./common");var _externalRemotesPlugin=_interopRequireDefault(require("external-remotes-plugin"));var _moduleFederationPluginJs=_interopRequireDefault(require("webpack/lib/container/ModuleFederationPlugin.js"));var _utils=require("./utils");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 _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function 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}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"moduleFederation",{enumerable:true,get:function(){return moduleFederation}});var _webpack=require("webpack");var _common=require("./common");var _externalRemotesPlugin=_interopRequireDefault(require("external-remotes-plugin"));var _moduleFederationPluginJs=_interopRequireDefault(require("webpack/lib/container/ModuleFederationPlugin.js"));var _utils=require("./utils");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 _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function 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}var _CONFIG_moduleFederation;var aliasLibrary={};var exposesMap={};var remoteMap={};var moduleFederation=(_CONFIG_moduleFederation=_common.CONFIG.moduleFederation)===null||_CONFIG_moduleFederation===void 0?void 0:_CONFIG_moduleFederation.map(function(opt){if(Array.isArray(opt.remotes)){for(var r=0,rlen=opt.remotes.length;r<rlen;r++){var m=opt.remotes[r];var aliasName=m.alias||m.name;var filename=m.filename||"remote_entry.js";remoteMap[aliasName]="".concat(m.name,"@").concat(m.host,"/").concat(filename);if(Array.isArray(m.library)){for(var i=0,len=m.library.length;i<len;i++){aliasLibrary[m.library[i]]="".concat(aliasName,"/").concat(m.library[i])}}}}if(Array.isArray(opt.exposes)){for(var i1=0,len1=opt.exposes.length;i1<len1;i1++){var m1=opt.exposes[i1];if(typeof m1==="string"){exposesMap["./".concat(m1)]=(0,_utils.resolve)(m1)}else if(Object.prototype.toString.call(m1)==="[object Object]"){exposesMap["./".concat(m1.name)]=(0,_utils.resolve)(m1.path)}}}return new _moduleFederationPluginJs.default(_objectSpreadProps(_objectSpread({filename:"remote_entry.js"},opt),{remotes:remoteMap,exposes:exposesMap}))});if(moduleFederation.length){moduleFederation.push(new _externalRemotesPlugin.default);moduleFederation.push(new _webpack.NormalModuleReplacementPlugin(/(.*)/,function(resource){if(aliasLibrary[resource.request])resource.request=aliasLibrary[resource.request]}))}
|
package/build/module.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 _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _miniSvgDataUri=_interopRequireDefault(require("mini-svg-data-uri"));var _common=require("./common");var _modifyVars=_interopRequireDefault(require("./modifyVars"));var _swcrc=_interopRequireDefault(require("./swcrc"));var _utils=require("./utils");var _hasPkg=require("./has-pkg");var _processEnv=require("./process-env");var _tsloaderConfig=_interopRequireDefault(require("./tsloader.config"));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
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _miniSvgDataUri=_interopRequireDefault(require("mini-svg-data-uri"));var _common=require("./common");var _modifyVars=_interopRequireDefault(require("./modifyVars"));var _swcrc=_interopRequireDefault(require("./swcrc"));var _utils=require("./utils");var _hasPkg=require("./has-pkg");var _processEnv=require("./process-env");var _tsloaderConfig=_interopRequireDefault(require("./tsloader.config"));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 _CONFIG_rulesInclude,_CONFIG_rulesInclude_less,_CONFIG_rulesInclude1,_CONFIG_rulesInclude_css,_CONFIG_rulesInclude2,_CONFIG_rulesInclude_media,_CONFIG_rulesInclude3,_CONFIG_rulesInclude_fonts,_CONFIG_rulesInclude4,_CONFIG_rulesInclude_js;var cssAssetsPublicPath=_processEnv.APPTYPE==="single-spa"?_common.PUBLICPATH:"../";var styleLoader={loader:_miniCssExtractPlugin.default.loader,options:{publicPath:cssAssetsPublicPath!=="/"?cssAssetsPublicPath:"../"}};var postcssLoader=(0,_hasPkg.hasPkg)("@moneko/postcss")&&{loader:"postcss-loader",options:{postcssOptions:require("@moneko/postcss")}};if(_processEnv.DEV){styleLoader="style-loader"}var customCssModules=_toConsumableArray(_common.CONFIG.cssModules).concat([_processEnv.pkgName,"neko-ui"]).map(_utils.resolveNodeModulesPath);var styleResources=[(0,_utils.resolveNodeModulesPath)("".concat(_processEnv.pkgName,"/lib/styles/eval/*.less"))].concat(_toConsumableArray(["src/styles/variables/*.less","src/styles/mixins/*.less","site/styles/variables/*.less","site/styles/mixins/*.less"].map(_utils.resolveProgramPath)));var entryResolveProgramPath=["components","example","mock","site","src"].map(_utils.resolveProgramPath);var lessLoaderRule=[styleLoader,{loader:"css-loader",options:{modules:{auto:function(resourcePath){for(var i=0,len=customCssModules.length;i<len;i++){if(resourcePath&&(resourcePath===null||resourcePath===void 0?void 0:resourcePath.includes(customCssModules[i]))){return RegExp("(.*(?<!\\.global\\.(le|c)ss)$)","i").test(resourcePath)}}return RegExp("(^(?!.*node_modules))(.*(?<!\\.global\\.(le|c)ss)$)","i").test(resourcePath)},localIdentName:"[path][name]__[local]",exportLocalsConvention:"dashesOnly"},importLoaders:2}},postcssLoader,"css-unicode-loader",{loader:"less-loader",options:{sourceMap:!!_common.CONFIG.sourceMap,lessOptions:{modifyVars:_modifyVars.default,javascriptEnabled:true}}},{loader:"style-resources-loader",options:{patterns:styleResources}}].filter(Boolean);var tsLoader={loader:_common.CONFIG.compiler==="tsc"?"ts-loader":"swc-loader",options:_common.CONFIG.compiler==="tsc"?_tsloaderConfig.default:(0,_swcrc.default)(_processEnv.DEV)};var moduleOptions={rules:[{oneOf:[{resourceQuery:/raw/,type:"asset/source"},{resourceQuery:/\.wasm$/,type:"webassembly/async"},{test:/\.less$/,use:lessLoaderRule,include:entryResolveProgramPath.concat(((_CONFIG_rulesInclude=_common.CONFIG.rulesInclude)===null||_CONFIG_rulesInclude===void 0?void 0:(_CONFIG_rulesInclude_less=_CONFIG_rulesInclude.less)===null||_CONFIG_rulesInclude_less===void 0?void 0:_CONFIG_rulesInclude_less.map(_utils.resolveNodeModulesPath))||[])},{test:/\.css$/,use:[styleLoader,"css-loader",postcssLoader,"css-unicode-loader"].filter(Boolean),include:entryResolveProgramPath.concat(((_CONFIG_rulesInclude1=_common.CONFIG.rulesInclude)===null||_CONFIG_rulesInclude1===void 0?void 0:(_CONFIG_rulesInclude_css=_CONFIG_rulesInclude1.css)===null||_CONFIG_rulesInclude_css===void 0?void 0:_CONFIG_rulesInclude_css.map(_utils.resolveNodeModulesPath))||[])},{test:/\.(gif|png|jpe?g|ico|mp4)$/i,type:"asset",generator:{filename:"assets/images/[name][ext][query]"},include:entryResolveProgramPath.concat(((_CONFIG_rulesInclude2=_common.CONFIG.rulesInclude)===null||_CONFIG_rulesInclude2===void 0?void 0:(_CONFIG_rulesInclude_media=_CONFIG_rulesInclude2.media)===null||_CONFIG_rulesInclude_media===void 0?void 0:_CONFIG_rulesInclude_media.map(_utils.resolveNodeModulesPath))||[])},{test:/\.(eot|ttf|otf|woff(|2))$/,type:"asset",generator:{filename:"assets/fonts/[name][ext][query]"},include:entryResolveProgramPath.concat(((_CONFIG_rulesInclude3=_common.CONFIG.rulesInclude)===null||_CONFIG_rulesInclude3===void 0?void 0:(_CONFIG_rulesInclude_fonts=_CONFIG_rulesInclude3.fonts)===null||_CONFIG_rulesInclude_fonts===void 0?void 0:_CONFIG_rulesInclude_fonts.map(_utils.resolveNodeModulesPath))||[])},{test:/\.svg$/,type:"asset/inline",generator:{dataUrl:function(content){return(0,_miniSvgDataUri.default)(typeof content!=="string"?content.toString():content)}}},{test:/\.txt$/,type:"asset/source"},{test:/\.(cj|mj|t|j)s(|x)$/,use:_toConsumableArray(_common.CONFIG.prefixJsLoader).concat([tsLoader]).filter(Boolean),include:entryResolveProgramPath.concat(((_CONFIG_rulesInclude4=_common.CONFIG.rulesInclude)===null||_CONFIG_rulesInclude4===void 0?void 0:(_CONFIG_rulesInclude_js=_CONFIG_rulesInclude4.js)===null||_CONFIG_rulesInclude_js===void 0?void 0:_CONFIG_rulesInclude_js.map(_utils.resolveNodeModulesPath))||[])},{test:/\.mdx?$/,use:_toConsumableArray(_common.CONFIG.prefixJsLoader).concat([tsLoader,{loader:"@mdx-js/loader",options:{rehypePlugins:[require("@mapbox/rehype-prism"),require("rehype-accessible-emojis").rehypeAccessibleEmojis,require("rehype-figure")],remarkPlugins:[]}}]).filter(Boolean),include:entryResolveProgramPath}]}].concat(_toConsumableArray(_common.CONFIG.moduleRules))};var _default=moduleOptions;
|
package/build/process-env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{APPTYPE:function(){return APPTYPE},PROGRAMPATH:function(){return PROGRAMPATH},PACKAGENAME:function(){return PACKAGENAME},PACKAGEVERSION:function(){return PACKAGEVERSION},pkgName:function(){return pkgName},NODE_ENV:function(){return NODE_ENV},CUSTOMCONFIG:function(){return CUSTOMCONFIG},DEV:function(){return DEV},hasEslintConfig:function(){return hasEslintConfig},hasStylelintConfig:function(){return hasStylelintConfig},hasReact:function(){return hasReact},hasAntd:function(){return hasAntd},programInfo:function(){return programInfo}});var _yarnArgv=_interopRequireDefault(require("./yarn-argv"));var _hasPkg=require("./has-pkg");var _utils=require("./utils");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var APPTYPE=process.env.APPTYPE;var PROGRAMPATH=process.cwd();var PACKAGENAME=process.env.npm_package_name;var PACKAGEVERSION=process.env.npm_package_version;var pkgName=require("../package.json").name;var NODE_ENV=process.env.NODE_ENV;var CUSTOMCONFIG=process.env.npm_config_config||_yarnArgv.default.config;var DEV=process.env.NODE_ENV==="development";var hasEslintConfig=!!Object.keys(process.env).filter(function(k){return k.startsWith("npm_package_eslintConfig_")}).length;var hasStylelintConfig=!!Object.keys(process.env).filter(function(k){return k.startsWith("npm_package_stylelint_")}).length;var hasReact=(0,_hasPkg.hasPkg)("react");var hasAntd=(0,_hasPkg.hasPkg)("antd");var programInfo={name:PACKAGENAME,version:PACKAGEVERSION,type:APPTYPE,description:process.env.npm_package_description,author:{name:process.env.npm_package_author_name,email:process.env.npm_package_author_email,url:process.env.npm_package_author_url},repository:{type:process.env.npm_package_repository_type,url:process.env.npm_package_repository_url,directory:process.env.npm_package_repository_directory}};if(parseInt(process.versions.node)>14){var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{APPTYPE:function(){return APPTYPE},PROGRAMPATH:function(){return PROGRAMPATH},PACKAGENAME:function(){return PACKAGENAME},PACKAGEVERSION:function(){return PACKAGEVERSION},pkgName:function(){return pkgName},NODE_ENV:function(){return NODE_ENV},CUSTOMCONFIG:function(){return CUSTOMCONFIG},DEV:function(){return DEV},hasEslintConfig:function(){return hasEslintConfig},hasStylelintConfig:function(){return hasStylelintConfig},hasReact:function(){return hasReact},hasAntd:function(){return hasAntd},programInfo:function(){return programInfo}});var _yarnArgv=_interopRequireDefault(require("./yarn-argv"));var _hasPkg=require("./has-pkg");var _utils=require("./utils");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var APPTYPE=process.env.APPTYPE;var PROGRAMPATH=process.cwd();var PACKAGENAME=process.env.npm_package_name;var PACKAGEVERSION=process.env.npm_package_version;var pkgName=require("../package.json").name;var NODE_ENV=process.env.NODE_ENV;var CUSTOMCONFIG=process.env.npm_config_config||_yarnArgv.default.config;var DEV=process.env.NODE_ENV==="development";var hasEslintConfig=!!Object.keys(process.env).filter(function(k){return k.startsWith("npm_package_eslintConfig_")}).length;var hasStylelintConfig=!!Object.keys(process.env).filter(function(k){return k.startsWith("npm_package_stylelint_")}).length;var hasReact=(0,_hasPkg.hasPkg)("react");var hasAntd=(0,_hasPkg.hasPkg)("antd");var programInfo={name:PACKAGENAME,version:PACKAGEVERSION,type:APPTYPE,description:process.env.npm_package_description,author:{name:process.env.npm_package_author_name,email:process.env.npm_package_author_email,url:process.env.npm_package_author_url},repository:{type:process.env.npm_package_repository_type,url:process.env.npm_package_repository_url,directory:process.env.npm_package_repository_directory}};if(parseInt(process.versions.node)>14){var _require=require((0,_utils.resolveProgramPath)("package.json")),description=_require.description,author=_require.author,repository=_require.repository,eslintConfig=_require.eslintConfig,stylelint=_require.stylelint;programInfo.author=author;programInfo.description=description;programInfo.repository=repository;hasEslintConfig=!!eslintConfig;hasStylelintConfig=!!stylelint}
|
package/build/webpack.prod.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _webpackMerge=require("webpack-merge");var _webpackCommon=_interopRequireDefault(require("./webpack.common"));var _common=require("./common");var _webpack=require("webpack");var _terserWebpackPlugin=_interopRequireDefault(require("terser-webpack-plugin"));var _minify=require("./minify");var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _cssMinimizerWebpackPlugin=_interopRequireWildcard(require("css-minimizer-webpack-plugin"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}var optimization={splitChunks:_common.CONFIG.splitChunk,runtimeChunk:_common.CONFIG.runtimeChunk,chunkIds:"named",moduleIds:"named",removeAvailableModules:true,removeEmptyChunks:true,mergeDuplicateChunks:true,minimize:true,minimizer:[new _terserWebpackPlugin.default((0,_minify.getMinifyOption)(_common.CONFIG.minifier.type||"swc",_common.CONFIG.minifier.options)),new _cssMinimizerWebpackPlugin.default({minify:_common.CONFIG.minifier.css==="parcelCss"?_cssMinimizerWebpackPlugin.parcelCssMinify:_cssMinimizerWebpackPlugin.cssnanoMinify})]};var cacheConfig=false;if(_common.CONFIG.cacheDirectory){cacheConfig={type:"filesystem",allowCollectingMemory:true,cacheDirectory:_common.CONFIG.cacheDirectory}}var _default=(0,_webpackMerge.merge)(_webpackCommon.default,{devtool:_common.CONFIG.devtool===false||_common.CONFIG.devtool?_common.CONFIG.devtool:"cheap-module-source-map",mode:"production",cache:cacheConfig,optimization:optimization,plugins:[new _miniCssExtractPlugin.default({filename:"style/[name].bundle.css",chunkFilename:"style/[name].chunk.css",experimentalUseImportModule:true}),_common.CONFIG.splitChunk&&new _webpack.optimize.MinChunkSizePlugin({minChunkSize:1e4})].filter(Boolean)});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _webpackMerge=require("webpack-merge");var _webpackCommon=_interopRequireDefault(require("./webpack.common"));var _common=require("./common");var _webpack=require("webpack");var _terserWebpackPlugin=_interopRequireDefault(require("terser-webpack-plugin"));var _minify=require("./minify");var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _cssMinimizerWebpackPlugin=_interopRequireWildcard(require("css-minimizer-webpack-plugin"));var _webpackBundleAnalyzer=require("webpack-bundle-analyzer");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}var optimization={splitChunks:_common.CONFIG.splitChunk,runtimeChunk:_common.CONFIG.runtimeChunk,chunkIds:"named",moduleIds:"named",removeAvailableModules:true,removeEmptyChunks:true,mergeDuplicateChunks:true,minimize:true,minimizer:[new _terserWebpackPlugin.default((0,_minify.getMinifyOption)(_common.CONFIG.minifier.type||"swc",_common.CONFIG.minifier.options)),new _cssMinimizerWebpackPlugin.default({minify:_common.CONFIG.minifier.css==="parcelCss"?_cssMinimizerWebpackPlugin.parcelCssMinify:_cssMinimizerWebpackPlugin.cssnanoMinify})]};var cacheConfig=false;if(_common.CONFIG.cacheDirectory){cacheConfig={type:"filesystem",allowCollectingMemory:true,cacheDirectory:_common.CONFIG.cacheDirectory}}var _default=(0,_webpackMerge.merge)(_webpackCommon.default,{devtool:_common.CONFIG.devtool===false||_common.CONFIG.devtool?_common.CONFIG.devtool:"cheap-module-source-map",mode:"production",cache:cacheConfig,optimization:optimization,plugins:[new _miniCssExtractPlugin.default({filename:"style/[name].bundle.css",chunkFilename:"style/[name].chunk.css",experimentalUseImportModule:true}),_common.CONFIG.bundleAnalyzer&&new _webpackBundleAnalyzer.BundleAnalyzerPlugin(_common.CONFIG.bundleAnalyzer),_common.CONFIG.splitChunk&&new _webpack.optimize.MinChunkSizePlugin({minChunkSize:1e4})].filter(Boolean)});
|
package/build/yarn-argv.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});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}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});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}var _JSON_parse;var original=(_JSON_parse=JSON.parse(process.env.npm_config_argv||"{}"))===null||_JSON_parse===void 0?void 0:_JSON_parse.original;var yarnArgv={};original===null||original===void 0?void 0:original.forEach(function(o){var m=o.split("=");Object.assign(yarnArgv,_defineProperty({},m[0],m[1]||true))});var _default=yarnArgv;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _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,{Suspense,useCallback,useEffect}from"react";import{useRoutes}from"react-router-dom";import{AliveScope,KeepAlive,useAliveController}from"react-activation";import Fallback from"../fallback";import{isEqual}from"@moneko/common";var PrefixKeepAlive=function(_param){var children=_param.children,name=_param.name,args=_objectWithoutProperties(_param,["children","name"]);var
|
|
1
|
+
function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _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,{Suspense,useCallback,useEffect}from"react";import{useRoutes}from"react-router-dom";import{AliveScope,KeepAlive,useAliveController}from"react-activation";import Fallback from"../fallback";import{isEqual}from"@moneko/common";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),React.cloneElement(_children,{path:name,selfUrl:id}))};var existKeepAlive=false,Fragment=React.Fragment;var AppRoute=function(param){var router=param.router,_param_fallback=param.fallback,fallback=_param_fallback===void 0?React.createElement(Fallback,null):_param_fallback;var prefixRouter=useCallback(function(list){return list.map(function(r){var _=_objectSpread({},r);if(!!_.alive&&!existKeepAlive){existKeepAlive=true;Fragment=AliveScope}if(_.element&&!!_.alive){var aliveProps={name:_.key};if(Object.prototype.toString.call(_.alive)==="[object Object]"){Object.assign(aliveProps,_.alive)}_.element=React.createElement(PrefixKeepAlive,aliveProps,_.element)}_.element=_.element&&React.createElement(Suspense,{fallback:fallback},React.cloneElement(_.element,{path:_.key}));if(Array.isArray(_.children)){_.children=prefixRouter(_.children)}return _})},[fallback]);var routers=useRoutes(prefixRouter(router));return React.createElement(Fragment,null,routers)};export default React.memo(AppRoute,function(pre,next){return isEqual(pre.router,next.router)});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/app-router/index.tsx"],"sourcesContent":["import React, { Suspense, useCallback, useEffect } from 'react';\nimport { useRoutes } from 'react-router-dom';\nimport { AliveScope, KeepAlive, useAliveController } from 'react-activation';\nimport Fallback from '../fallback';\nimport type { ReactNode, ReactElement } from 'react';\nimport type { KeepAliveProps } from 'react-activation';\nimport type { RouterProps } from '../../router';\nimport { isEqual } from '@moneko/common';\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 {React.cloneElement(_children, {\n path: name,\n selfUrl: id,\n })}\n </KeepAlive>\n );\n};\n\ninterface AppRouterProps {\n router: RouterProps[];\n fallback?: ReactNode;\n}\n\nlet existKeepAlive = false,\n Fragment: typeof React.Fragment | typeof AliveScope = React.Fragment;\nconst AppRoute: React.FC<AppRouterProps> = ({ router, fallback = <Fallback /> }) => {\n const prefixRouter = useCallback(\n (list: RouterProps[]) => {\n return list.map((r) => {\n const _ = { ...r };\n\n if (!!_.alive && !existKeepAlive) {\n existKeepAlive = true;\n Fragment = AliveScope;\n }\n if (_.element && !!_.alive) {\n const aliveProps: Partial<KeepAliveProps> = {\n name: _.key,\n };\n\n if (Object.prototype.toString.call(_.alive) === '[object Object]') {\n Object.assign(aliveProps, _.alive);\n }\n _.element = React.createElement(PrefixKeepAlive, aliveProps, _.element);\n }\n _.element =\n _.element &&\n React.createElement(\n Suspense,\n {\n fallback: fallback,\n },\n React.cloneElement(_.element as ReactElement, {\n path: _.key,\n })\n );\n\n if (Array.isArray(_.children)) {\n _.children = prefixRouter(_.children);\n }\n\n return _;\n });\n },\n [fallback]\n );\n const routers = useRoutes(prefixRouter(router));\n\n return <Fragment>{routers}</Fragment>;\n};\n\nexport default React.memo(AppRoute, (pre, next) => isEqual(pre.router, next.router));\n\n// import React, { Suspense, useCallback } from 'react';\n// import { useRoutes } from 'react-router-dom';\n// import { type RouterProps } from '../../router';\n// import { isEqual } from '@moneko/common';\n// import Fallback from '../fallback';\n\n// interface AppRouterProps {\n// router: RouterProps[];\n// fallback?: React.ReactElement;\n// }\n\n// const AppRoute: React.FC<AppRouterProps> = ({ router, fallback = <Fallback /> }) => {\n// const prefixRouter = useCallback(\n// (list: RouterProps[]) => {\n// return list.map((r) => {\n// if (r.element) {\n// r.element = (\n// <Suspense fallback={r.fallback || fallback}>\n// {React.cloneElement(r.element, {\n// path: r.key,\n// })}\n// </Suspense>\n// );\n// }\n\n// if (Array.isArray(r.children)) {\n// r.children = prefixRouter(r.children);\n// }\n\n// return r;\n// });\n// },\n// [fallback]\n// );\n// const routers = useRoutes(prefixRouter(router));\n\n// return <React.Fragment>{routers}</React.Fragment>;\n// };\n\n// export default React.memo(AppRoute, (pre, next) => isEqual(pre.router, next.router));\n"],"names":["React","Suspense","useCallback","useEffect","useRoutes","AliveScope","KeepAlive","useAliveController","Fallback","isEqual","PrefixKeepAlive","children","name","args","drop","dropScope","clear","getCachingNodes","id","window","location","pathname","hash","__POWERED_BY_QIANKUN__","primaryApp","currentTarget","Object","assign","aliveController","_children","cloneElement","path","selfUrl","existKeepAlive","Fragment","AppRoute","router","fallback","prefixRouter","list","map","r","_","alive","element","aliveProps","key","prototype","toString","call","createElement","Array","isArray","routers","memo","pre","next"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/app-router/index.tsx"],"sourcesContent":["import React, { Suspense, useCallback, useEffect } from 'react';\nimport { useRoutes } from 'react-router-dom';\nimport { AliveScope, KeepAlive, useAliveController } from 'react-activation';\nimport Fallback from '../fallback';\nimport type { ReactNode, ReactElement } from 'react';\nimport type { KeepAliveProps } from 'react-activation';\nimport type { RouterProps } from '../../router';\nimport { isEqual } from '@moneko/common';\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 {React.cloneElement(_children, {\n path: name,\n selfUrl: id,\n })}\n </KeepAlive>\n );\n};\n\ninterface AppRouterProps {\n router: RouterProps[];\n fallback?: ReactNode;\n}\n\nlet existKeepAlive = false,\n Fragment: typeof React.Fragment | typeof AliveScope = React.Fragment;\nconst AppRoute: React.FC<AppRouterProps> = ({ router, fallback = <Fallback /> }) => {\n const prefixRouter = useCallback(\n (list: RouterProps[]) => {\n return list.map((r) => {\n const _ = { ...r };\n\n if (!!_.alive && !existKeepAlive) {\n existKeepAlive = true;\n Fragment = AliveScope;\n }\n if (_.element && !!_.alive) {\n const aliveProps: Partial<KeepAliveProps> = {\n name: _.key,\n };\n\n if (Object.prototype.toString.call(_.alive) === '[object Object]') {\n Object.assign(aliveProps, _.alive);\n }\n _.element = React.createElement(PrefixKeepAlive, aliveProps, _.element);\n }\n _.element =\n _.element &&\n React.createElement(\n Suspense,\n {\n fallback: fallback,\n },\n React.cloneElement(_.element as ReactElement, {\n path: _.key,\n })\n );\n\n if (Array.isArray(_.children)) {\n _.children = prefixRouter(_.children);\n }\n\n return _;\n });\n },\n [fallback]\n );\n const routers = useRoutes(prefixRouter(router));\n\n return <Fragment>{routers}</Fragment>;\n};\n\nexport default React.memo(AppRoute, (pre, next) => isEqual(pre.router, next.router));\n\n// import React, { Suspense, useCallback } from 'react';\n// import { useRoutes } from 'react-router-dom';\n// import { type RouterProps } from '../../router';\n// import { isEqual } from '@moneko/common';\n// import Fallback from '../fallback';\n\n// interface AppRouterProps {\n// router: RouterProps[];\n// fallback?: React.ReactElement;\n// }\n\n// const AppRoute: React.FC<AppRouterProps> = ({ router, fallback = <Fallback /> }) => {\n// const prefixRouter = useCallback(\n// (list: RouterProps[]) => {\n// return list.map((r) => {\n// if (r.element) {\n// r.element = (\n// <Suspense fallback={r.fallback || fallback}>\n// {React.cloneElement(r.element, {\n// path: r.key,\n// })}\n// </Suspense>\n// );\n// }\n\n// if (Array.isArray(r.children)) {\n// r.children = prefixRouter(r.children);\n// }\n\n// return r;\n// });\n// },\n// [fallback]\n// );\n// const routers = useRoutes(prefixRouter(router));\n\n// return <React.Fragment>{routers}</React.Fragment>;\n// };\n\n// export default React.memo(AppRoute, (pre, next) => isEqual(pre.router, next.router));\n"],"names":["React","Suspense","useCallback","useEffect","useRoutes","AliveScope","KeepAlive","useAliveController","Fallback","isEqual","PrefixKeepAlive","children","name","args","drop","dropScope","clear","getCachingNodes","id","window","location","pathname","hash","__POWERED_BY_QIANKUN__","primaryApp","currentTarget","Object","assign","aliveController","_children","cloneElement","path","selfUrl","existKeepAlive","Fragment","AppRoute","router","fallback","prefixRouter","list","map","r","_","alive","element","aliveProps","key","prototype","toString","call","createElement","Array","isArray","routers","memo","pre","next"],"mappings":"yjDAAA,OAAOA,OAASC,QAAQ,CAAEC,WAAW,CAAEC,SAAS,KAAQ,OAAQ,AAChE,QAASC,SAAS,KAAQ,kBAAmB,AAC7C,QAASC,UAAU,CAAEC,SAAS,CAAEC,kBAAkB,KAAQ,kBAAmB,AAC7E,QAAOC,aAAc,aAAc,AAInC,QAASC,OAAO,KAAQ,gBAAiB,CAEzC,IAAMC,gBAAqD,gBAAiC,KAA9BC,gBAAAA,SAAUC,YAAAA,KAASC,sCAAnBF,WAAUC,SACtE,IAAoDL,oBAAAA,qBAA5CO,KAA4CP,oBAA5CO,KAAMC,UAAsCR,oBAAtCQ,UAAWC,MAA2BT,oBAA3BS,MAAOC,gBAAoBV,oBAApBU,gBAChC,IAAMC,GAAKC,OAAOC,QAAQ,CAACC,QAAQ,CAAGF,OAAOC,QAAQ,CAACE,IAAI,CAE1DnB,UAAU,UAAM,CACd,GAAIgB,OAAOI,sBAAsB,EAAIJ,OAAOK,UAAU,CAAE,CACtD,GAAI,CAACL,OAAOK,UAAU,CAACC,aAAa,CAAE,CACpCN,OAAOK,UAAU,CAACC,aAAa,CAAG,CAAC,CACrC,CAAC,AACDC,OAAOC,MAAM,CAACR,OAAOK,UAAU,CAACC,aAAa,CAAE,CAC7CG,gBAAiB,CAAEd,KAAAA,KAAMC,UAAAA,UAAWC,MAAAA,MAAOC,gBAAAA,eAAgB,CAC7D,EACF,CAAC,AACH,EAAG,CAACD,MAAOF,KAAMC,UAAWE,gBAAgB,EAE5C,IAAMY,UAAYlB,SAElB,OACE,oBAACL,oBAAUY,GAAIA,GAAIN,KAAMM,IAAQL,MAC9Bb,MAAM8B,YAAY,CAACD,UAAW,CAC7BE,KAAMnB,KACNoB,QAASd,EACX,GAGN,EAOA,IAAIe,eAAiB,KAAK,CACxBC,SAAsDlC,MAAMkC,QAAQ,CACtE,IAAMC,SAAqC,eAAyC,KAAtCC,aAAAA,6BAAQC,SAAAA,kCAAW,oBAAC7B,+BAChE,IAAM8B,aAAepC,YACnB,SAACqC,KAAwB,CACvB,OAAOA,KAAKC,GAAG,CAAC,SAACC,EAAM,CACrB,IAAMC,EAAI,iBAAKD,GAEf,GAAI,CAAC,CAACC,EAAEC,KAAK,EAAI,CAACV,eAAgB,CAChCA,eAAiB,IAAI,CACrBC,SAAW7B,UACb,CAAC,AACD,GAAIqC,EAAEE,OAAO,EAAI,CAAC,CAACF,EAAEC,KAAK,CAAE,CAC1B,IAAME,WAAsC,CAC1CjC,KAAM8B,EAAEI,GAAG,AACb,EAEA,GAAIpB,OAAOqB,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACP,EAAEC,KAAK,IAAM,kBAAmB,CACjEjB,OAAOC,MAAM,CAACkB,WAAYH,EAAEC,KAAK,CACnC,CAAC,AACDD,EAAEE,OAAO,CAAG5C,MAAMkD,aAAa,CAACxC,gBAAiBmC,WAAYH,EAAEE,OAAO,CACxE,CAAC,AACDF,EAAEE,OAAO,CACPF,EAAEE,OAAO,EACT5C,MAAMkD,aAAa,CACjBjD,SACA,CACEoC,SAAUA,QACZ,EACArC,MAAM8B,YAAY,CAACY,EAAEE,OAAO,CAAkB,CAC5Cb,KAAMW,EAAEI,GAAG,AACb,IAGJ,GAAIK,MAAMC,OAAO,CAACV,EAAE/B,QAAQ,EAAG,CAC7B+B,EAAE/B,QAAQ,CAAG2B,aAAaI,EAAE/B,QAAQ,CACtC,CAAC,AAED,OAAO+B,CACT,EACF,EACA,CAACL,SAAS,EAEZ,IAAMgB,QAAUjD,UAAUkC,aAAaF,SAEvC,OAAO,oBAACF,cAAUmB,QACpB,CAEA,gBAAerD,MAAMsD,IAAI,CAACnB,SAAU,SAACoB,IAAKC,aAAS/C,QAAQ8C,IAAInB,MAAM,CAAEoB,KAAKpB,MAAM,GAAG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var
|
|
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 _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 _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _toArray(arr){return _arrayWithHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import React,{useMemo,useState}from"react";import{useOutlet}from"react-router-dom";import FallbackComp from"../fallback-comp";var Fallback=function(){var _useOutlet;var outlet=(_useOutlet=useOutlet())===null||_useOutlet===void 0?void 0:_useOutlet.props.children;var _useState=_slicedToArray(useState(React.createElement(React.Fragment,null,"Loading...")),2),el=_useState[0],setEl=_useState[1];useMemo(function(){if(typeof fallbackCompPath==="string"){var pat=fallbackCompPath.replace(/@\//,"").split("/");var _pat=_toArray(pat),directory=_pat[0],path=_pat.slice(1);setEl(React.createElement(FallbackComp,{directory:directory,compName:path.join("/")}))}},[]);return outlet?outlet:el};export default React.memo(Fallback);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/fallback/index.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport { useOutlet } from 'react-router-dom';\nimport FallbackComp from '../fallback-comp';\n\ndeclare const fallbackCompPath: string;\n\nconst Fallback: React.FC = () => {\n const outlet = useOutlet()?.props.children;\n const [el, setEl] = useState(<>Loading...</>);\n\n useMemo(() => {\n if (typeof fallbackCompPath === 'string') {\n const pat = fallbackCompPath.replace(/@\\//, '').split('/');\n const [directory, ...path] = pat;\n\n setEl(<FallbackComp directory={directory} compName={path.join('/')} />);\n }\n }, []);\n\n return outlet ? outlet : el;\n};\n\nexport default React.memo(Fallback);\n"],"names":["React","useMemo","useState","useOutlet","FallbackComp","Fallback","outlet","props","children","el","setEl","fallbackCompPath","pat","replace","split","directory","path","compName","join","memo"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/fallback/index.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport { useOutlet } from 'react-router-dom';\nimport FallbackComp from '../fallback-comp';\n\ndeclare const fallbackCompPath: string;\n\nconst Fallback: React.FC = () => {\n const outlet = useOutlet()?.props.children;\n const [el, setEl] = useState(<>Loading...</>);\n\n useMemo(() => {\n if (typeof fallbackCompPath === 'string') {\n const pat = fallbackCompPath.replace(/@\\//, '').split('/');\n const [directory, ...path] = pat;\n\n setEl(<FallbackComp directory={directory} compName={path.join('/')} />);\n }\n }, []);\n\n return outlet ? outlet : el;\n};\n\nexport default React.memo(Fallback);\n"],"names":["React","useMemo","useState","useOutlet","FallbackComp","Fallback","outlet","props","children","el","setEl","fallbackCompPath","pat","replace","split","directory","path","compName","join","memo"],"mappings":"ykDAAA,OAAOA,OAASC,OAAO,CAAEC,QAAQ,KAAQ,OAAQ,AACjD,QAASC,SAAS,KAAQ,kBAAmB,AAC7C,QAAOC,iBAAkB,kBAAmB,CAI5C,IAAMC,SAAqB,UAAM,KAChBF,WAAf,IAAMG,OAASH,CAAAA,WAAAA,qBAAAA,oBAAAA,KAAAA,EAAAA,WAAaI,MAAMC,QAAQ,CAC1C,IAAoBN,yBAAAA,SAAS,wCAAE,kBAAxBO,GAAaP,aAATQ,MAASR,aAEpBD,QAAQ,UAAM,CACZ,GAAI,OAAOU,mBAAqB,SAAU,CACxC,IAAMC,IAAMD,iBAAiBE,OAAO,CAAC,MAAO,IAAIC,KAAK,CAAC,KACtD,IAA6BF,cAAAA,KAAtBG,UAAsBH,QAAX,AAAGI,KAAQJ,WAAX,GAElBF,MAAM,oBAACN,cAAaW,UAAWA,UAAWE,SAAUD,KAAKE,IAAI,CAAC,OAChE,CAAC,AACH,EAAG,EAAE,EAEL,OAAOZ,OAASA,OAASG,EAAE,AAC7B,CAEA,gBAAeT,MAAMmB,IAAI,CAACd,SAAU"}
|
|
@@ -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)}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*as React from"react";var FallbackComp=function(props){var
|
|
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*as React from"react";var FallbackComp=function(props){var _props_directory=props.directory,directory=_props_directory===void 0?"components":_props_directory,compName=props.compName,prop=_objectWithoutProperties(props,["directory","compName"]);var Comp=React.Fragment;try{Comp=require("@/".concat(directory,"/").concat(compName)).default}catch(error){console.info("".concat(compName," 组件不存在, 请在 @/").concat(directory,"/").concat(compName," 目录下新建 index.tsx, 并导出默认组件"))}return React.isValidElement(Comp)?null:React.createElement(Comp,_extends({},prop))};export default React.memo(FallbackComp);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/fallback-comp/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport * as React from 'react';\n\nexport interface FallbackCompProps {\n /** 组件所在父级目录(默认:components) */\n directory?: string;\n /** 组件所在位置(不包含父级目录) */\n compName: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\nconst FallbackComp: React.FC<FallbackCompProps> = (props: FallbackCompProps) => {\n const { directory = 'components', compName, ...prop } = props;\n\n let Comp = React.Fragment;\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n Comp = require(`@/${directory}/${compName}`).default;\n } catch (error) {\n console.info(\n `${compName} 组件不存在, 请在 @/${directory}/${compName} 目录下新建 index.tsx, 并导出默认组件`\n );\n }\n\n return React.isValidElement(Comp) ? null : <Comp {...prop} />;\n};\n\nexport default React.memo(FallbackComp);\n"],"names":["React","FallbackComp","props","directory","compName","prop","Comp","Fragment","require","default","error","console","info","isValidElement","memo"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/fallback-comp/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport * as React from 'react';\n\nexport interface FallbackCompProps {\n /** 组件所在父级目录(默认:components) */\n directory?: string;\n /** 组件所在位置(不包含父级目录) */\n compName: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\nconst FallbackComp: React.FC<FallbackCompProps> = (props: FallbackCompProps) => {\n const { directory = 'components', compName, ...prop } = props;\n\n let Comp = React.Fragment;\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n Comp = require(`@/${directory}/${compName}`).default;\n } catch (error) {\n console.info(\n `${compName} 组件不存在, 请在 @/${directory}/${compName} 目录下新建 index.tsx, 并导出默认组件`\n );\n }\n\n return React.isValidElement(Comp) ? null : <Comp {...prop} />;\n};\n\nexport default React.memo(FallbackComp);\n"],"names":["React","FallbackComp","props","directory","compName","prop","Comp","Fragment","require","default","error","console","info","isValidElement","memo"],"mappings":"w9BACA,UAAYA,UAAW,OAAQ,CAU/B,IAAMC,aAA4C,SAACC,MAA6B,CAC9E,qBAAwDA,MAAhDC,UAAAA,oCAAY,8BAAcC,SAAsBF,MAAtBE,SAAaC,8BAASH,OAAhDC,YAA0BC,aAElC,IAAIE,KAAON,MAAMO,QAAQ,CAEzB,GAAI,CAEFD,KAAOE,QAAQ,AAAC,KAAiBJ,OAAbD,UAAU,KAAY,OAATC,WAAYK,OAAO,AACtD,CAAE,MAAOC,MAAO,CACdC,QAAQC,IAAI,CACV,AAAC,GAA0BT,OAAxBC,SAAS,iBAA4BA,OAAbD,UAAU,KAAY,OAATC,SAAS,6BAErD,CAEA,OAAOJ,MAAMa,cAAc,CAACP,MAAQ,IAAI,CAAG,oBAACA,iBAASD,MAAQ,AAC/D,CAEA,gBAAeL,MAAMc,IAAI,CAACb,aAAc"}
|
|
@@ -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 _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(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 _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 _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _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 React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{useNavigate,useSearchParams}from"react-router-dom";import{useLocale}from"i18n-hooks";import{useDispatch,useSelector,shallowEqual}from"react-redux";import{isEqual}from"@moneko/common";import{Menu}from"antd";import"./index.global.less";var LayoutMenu=function(prop){var collapsed=prop.collapsed,menuProps=_objectWithoutProperties(prop,["collapsed"]);var dispatch=useDispatch();var openKeysRef=useRef();var menu=useSelector(function(store){return(store.appProgram.menu||[]).filter(function(m){return!m.hideMenu})},shallowEqual);var menuKV=useSelector(function(store){return store.appProgram.menuKV||[]},shallowEqual);var navigate=useNavigate();var
|
|
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 _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 _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 _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _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 React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{useNavigate,useSearchParams}from"react-router-dom";import{useLocale}from"i18n-hooks";import{useDispatch,useSelector,shallowEqual}from"react-redux";import{isEqual}from"@moneko/common";import{Menu}from"antd";import"./index.global.less";var LayoutMenu=function(prop){var collapsed=prop.collapsed,menuProps=_objectWithoutProperties(prop,["collapsed"]);var dispatch=useDispatch();var openKeysRef=useRef();var menu=useSelector(function(store){return(store.appProgram.menu||[]).filter(function(m){return!m.hideMenu})},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 activeKey=useSelector(function(store){return store.appProgram.activeKey},shallowEqual);var _useState=_slicedToArray(useState([]),2),openKeys=_useState[0],setOpenKeys=_useState[1];var handleOpenChange=useCallback(function(keys){if(keys!==openKeys){setOpenKeys(keys)}},[openKeys]);var filterMenuProps=useCallback(function(list){return list.map(function(item){return{label:item.label?getLanguage(item.label):item.label,path:item.path,type:item.type,children:Array.isArray(item.children)?filterMenuProps(item.children):item.children,disabled:item.disabled,key:item.key,itemIcon:item.itemIcon,icon:item.icon,expandIcon:item.expandIcon}})},[getLanguage]);var doPage=useCallback(function(info){var _loop=function(i){var e=el===null||el===void 0?void 0:el.find(function(item){return(item===null||item===void 0?void 0:item.key)===info.keyPath[i]});if(i&&(e===null||e===void 0?void 0:e.children))el=e.children;else current=e};var current;var el=_toConsumableArray(menu);for(var i=info.keyPath.length-1;i>=0;i--)_loop(i);if(current===null||current===void 0?void 0:current.path){navigate("".concat(current.path,"?menuId=").concat(info.key))}},[menu,navigate]);var items=useMemo(function(){return filterMenuProps(menu)},[filterMenuProps,menu]);var menuId=useMemo(function(){return search.get("menuId")},[search]);var current=menuKV[menuId||""];useEffect(function(){Object.assign(openKeysRef,{current:openKeys})},[openKeys]);useEffect(function(){if(current&&!collapsed&&openKeysRef.current){var opk=_toConsumableArray(openKeysRef.current);if(!opk.includes(menuId))opk.push(menuId);if(current.parentId&&!opk.includes(current.parentId))opk.push(current.parentId);if(!isEqual(openKeysRef.current,opk))setOpenKeys(opk)}},[collapsed,current,menuId]);useEffect(function(){if(menuId!==activeKey){dispatch({type:"appProgram/setActiveKey",payload:menuId})}},[activeKey,dispatch,menuId]);return React.createElement(Menu,_extends({defaultSelectedKeys:activeKey?[activeKey]:[],selectedKeys:activeKey?[activeKey]:[],defaultOpenKeys:openKeys,openKeys:collapsed?undefined:openKeys,onOpenChange:handleOpenChange,mode:"inline",onClick:doPage,subMenuCloseDelay:0,triggerSubMenuAction:"click",theme:"light",items:items},menuProps,{className:["layout-menu",menuProps.className].join(" ")}))};export default React.memo(LayoutMenu);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/layout-menu/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useLocale } from 'i18n-hooks';\nimport { useDispatch, useSelector, shallowEqual } from 'react-redux';\nimport { isEqual } from '@moneko/common';\nimport { Menu } from 'antd';\nimport type { MenuProps } from 'antd/es/menu';\nimport type { MenuInfo } from 'rc-menu/es/interface';\nimport type { AppProgramModelType, ItemTypes } from '../../packages/back-stage/models/app-program';\nimport './index.global.less';\n\nexport interface LayoutMenuProps extends MenuProps {\n collapsed?: boolean;\n}\n\nconst LayoutMenu: React.FC<LayoutMenuProps> = (prop) => {\n const { collapsed, ...menuProps } = prop;\n const dispatch = useDispatch();\n const openKeysRef = useRef<string[]>();\n const menu = useSelector(\n (store: { appProgram: AppProgramModelType }) =>\n (store.appProgram.menu || []).filter((m) => !m.hideMenu),\n shallowEqual\n );\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 activeKey = useSelector((store: AppStore) => store.appProgram.activeKey, shallowEqual);\n const [openKeys, setOpenKeys] = useState<string[]>([]);\n const handleOpenChange = useCallback(\n (keys: string[]) => {\n if (keys !== openKeys) {\n setOpenKeys(keys as string[]);\n }\n },\n [openKeys]\n );\n const filterMenuProps = useCallback(\n (list: ItemTypes[]): ItemTypes[] => {\n return list.map((item) => {\n return {\n label: item.label ? getLanguage(item.label) : item.label,\n path: item.path,\n type: item.type,\n children: Array.isArray(item.children) ? filterMenuProps(item.children) : item.children,\n disabled: item.disabled,\n key: item.key,\n itemIcon: item.itemIcon,\n icon: item.icon,\n expandIcon: item.expandIcon,\n };\n });\n },\n [getLanguage]\n );\n\n const doPage = useCallback(\n (info: MenuInfo) => {\n let current: ItemTypes | undefined;\n let el: ItemTypes[] | undefined = [...menu];\n\n for (let i = info.keyPath.length - 1; i >= 0; i--) {\n const e: ItemTypes | undefined = el?.find((item) => item?.key === info.keyPath[i]);\n\n if (i && e?.children) el = e.children;\n else current = e;\n }\n\n if (current?.path) {\n navigate(`${current.path}?menuId=${info.key}`);\n }\n },\n [menu, navigate]\n );\n const items = useMemo(() => filterMenuProps(menu), [filterMenuProps, menu]);\n const menuId = useMemo(() => search.get('menuId'), [search]);\n const current = menuKV[menuId || ''];\n\n useEffect(() => {\n Object.assign(openKeysRef, {\n current: openKeys,\n });\n }, [openKeys]);\n useEffect(() => {\n if (current && !collapsed && openKeysRef.current) {\n const opk = [...openKeysRef.current];\n\n if (!opk.includes(menuId as string)) opk.push(menuId as string);\n if (current.parentId && !opk.includes(current.parentId)) opk.push(current.parentId);\n if (!isEqual(openKeysRef.current, opk)) setOpenKeys(opk);\n }\n }, [collapsed, current, menuId]);\n\n useEffect(() => {\n if (menuId !== activeKey) {\n dispatch({\n type: 'appProgram/setActiveKey',\n payload: menuId,\n });\n }\n }, [activeKey, dispatch, menuId]);\n return (\n <Menu\n defaultSelectedKeys={activeKey ? [activeKey] : []}\n selectedKeys={activeKey ? [activeKey] : []}\n defaultOpenKeys={openKeys}\n // eslint-disable-next-line no-undefined\n openKeys={collapsed ? undefined : openKeys}\n onOpenChange={handleOpenChange}\n mode=\"inline\"\n onClick={doPage}\n subMenuCloseDelay={0}\n triggerSubMenuAction=\"click\"\n theme=\"light\"\n items={items}\n {...menuProps}\n className={['layout-menu', menuProps.className].join(' ')}\n />\n );\n};\n\nexport default React.memo(LayoutMenu);\n"],"names":["React","useCallback","useEffect","useMemo","useRef","useState","useNavigate","useSearchParams","useLocale","useDispatch","useSelector","shallowEqual","isEqual","Menu","LayoutMenu","prop","collapsed","menuProps","dispatch","openKeysRef","menu","store","appProgram","filter","m","hideMenu","menuKV","navigate","search","getLanguage","activeKey","openKeys","setOpenKeys","handleOpenChange","keys","filterMenuProps","list","map","item","label","path","type","children","Array","isArray","disabled","key","itemIcon","icon","expandIcon","doPage","info","e","el","find","keyPath","i","current","length","items","menuId","get","Object","assign","opk","includes","push","parentId","payload","defaultSelectedKeys","selectedKeys","defaultOpenKeys","undefined","onOpenChange","mode","onClick","subMenuCloseDelay","triggerSubMenuAction","theme","className","join","memo"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/layout-menu/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\nimport { useLocale } from 'i18n-hooks';\nimport { useDispatch, useSelector, shallowEqual } from 'react-redux';\nimport { isEqual } from '@moneko/common';\nimport { Menu } from 'antd';\nimport type { MenuProps } from 'antd/es/menu';\nimport type { MenuInfo } from 'rc-menu/es/interface';\nimport type { AppProgramModelType, ItemTypes } from '../../packages/back-stage/models/app-program';\nimport './index.global.less';\n\nexport interface LayoutMenuProps extends MenuProps {\n collapsed?: boolean;\n}\n\nconst LayoutMenu: React.FC<LayoutMenuProps> = (prop) => {\n const { collapsed, ...menuProps } = prop;\n const dispatch = useDispatch();\n const openKeysRef = useRef<string[]>();\n const menu = useSelector(\n (store: { appProgram: AppProgramModelType }) =>\n (store.appProgram.menu || []).filter((m) => !m.hideMenu),\n shallowEqual\n );\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 activeKey = useSelector((store: AppStore) => store.appProgram.activeKey, shallowEqual);\n const [openKeys, setOpenKeys] = useState<string[]>([]);\n const handleOpenChange = useCallback(\n (keys: string[]) => {\n if (keys !== openKeys) {\n setOpenKeys(keys as string[]);\n }\n },\n [openKeys]\n );\n const filterMenuProps = useCallback(\n (list: ItemTypes[]): ItemTypes[] => {\n return list.map((item) => {\n return {\n label: item.label ? getLanguage(item.label) : item.label,\n path: item.path,\n type: item.type,\n children: Array.isArray(item.children) ? filterMenuProps(item.children) : item.children,\n disabled: item.disabled,\n key: item.key,\n itemIcon: item.itemIcon,\n icon: item.icon,\n expandIcon: item.expandIcon,\n };\n });\n },\n [getLanguage]\n );\n\n const doPage = useCallback(\n (info: MenuInfo) => {\n let current: ItemTypes | undefined;\n let el: ItemTypes[] | undefined = [...menu];\n\n for (let i = info.keyPath.length - 1; i >= 0; i--) {\n const e: ItemTypes | undefined = el?.find((item) => item?.key === info.keyPath[i]);\n\n if (i && e?.children) el = e.children;\n else current = e;\n }\n\n if (current?.path) {\n navigate(`${current.path}?menuId=${info.key}`);\n }\n },\n [menu, navigate]\n );\n const items = useMemo(() => filterMenuProps(menu), [filterMenuProps, menu]);\n const menuId = useMemo(() => search.get('menuId'), [search]);\n const current = menuKV[menuId || ''];\n\n useEffect(() => {\n Object.assign(openKeysRef, {\n current: openKeys,\n });\n }, [openKeys]);\n useEffect(() => {\n if (current && !collapsed && openKeysRef.current) {\n const opk = [...openKeysRef.current];\n\n if (!opk.includes(menuId as string)) opk.push(menuId as string);\n if (current.parentId && !opk.includes(current.parentId)) opk.push(current.parentId);\n if (!isEqual(openKeysRef.current, opk)) setOpenKeys(opk);\n }\n }, [collapsed, current, menuId]);\n\n useEffect(() => {\n if (menuId !== activeKey) {\n dispatch({\n type: 'appProgram/setActiveKey',\n payload: menuId,\n });\n }\n }, [activeKey, dispatch, menuId]);\n return (\n <Menu\n defaultSelectedKeys={activeKey ? [activeKey] : []}\n selectedKeys={activeKey ? [activeKey] : []}\n defaultOpenKeys={openKeys}\n // eslint-disable-next-line no-undefined\n openKeys={collapsed ? undefined : openKeys}\n onOpenChange={handleOpenChange}\n mode=\"inline\"\n onClick={doPage}\n subMenuCloseDelay={0}\n triggerSubMenuAction=\"click\"\n theme=\"light\"\n items={items}\n {...menuProps}\n className={['layout-menu', menuProps.className].join(' ')}\n />\n );\n};\n\nexport default React.memo(LayoutMenu);\n"],"names":["React","useCallback","useEffect","useMemo","useRef","useState","useNavigate","useSearchParams","useLocale","useDispatch","useSelector","shallowEqual","isEqual","Menu","LayoutMenu","prop","collapsed","menuProps","dispatch","openKeysRef","menu","store","appProgram","filter","m","hideMenu","menuKV","navigate","search","getLanguage","activeKey","openKeys","setOpenKeys","handleOpenChange","keys","filterMenuProps","list","map","item","label","path","type","children","Array","isArray","disabled","key","itemIcon","icon","expandIcon","doPage","info","e","el","find","keyPath","i","current","length","items","menuId","get","Object","assign","opk","includes","push","parentId","payload","defaultSelectedKeys","selectedKeys","defaultOpenKeys","undefined","onOpenChange","mode","onClick","subMenuCloseDelay","triggerSubMenuAction","theme","className","join","memo"],"mappings":"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"}
|
package/lib/hooks/navgate.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 _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import{useNavigate as useNavigateReactRouter,useSearchParams}from"react-router-dom";var useNavigate=function(reserved){var reservedWord=Array.from(new Set(["menuId","dynamicTitle"].concat(reserved||""))).filter(Boolean);var navigates=useNavigateReactRouter();var
|
|
1
|
+
function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import{useNavigate as useNavigateReactRouter,useSearchParams}from"react-router-dom";var useNavigate=function(reserved){var reservedWord=Array.from(new Set(["menuId","dynamicTitle"].concat(reserved||""))).filter(Boolean);var navigates=useNavigateReactRouter();var _useSearchParams=_slicedToArray(useSearchParams(),1),search=_useSearchParams[0];var navigate=function(to,options){if(to===-1){navigates(-1);return}var nextSerach={};search.forEach(function(val,key){if(reservedWord.includes(key)){Object.assign(nextSerach,_defineProperty({},key,val))}});var entryUrl=to;var entrySearchIdx=entryUrl.indexOf("?");if(entrySearchIdx!==-1){var searchByToUrl=new URLSearchParams(entryUrl.slice(entrySearchIdx));searchByToUrl.forEach(function(val,key){Object.assign(nextSerach,_defineProperty({},key,val))});entryUrl=entryUrl.substring(0,entrySearchIdx)}var searchObj=new URLSearchParams(nextSerach);var searchString=searchObj.toString();var toUrl=(searchString===null||searchString===void 0?void 0:searchString.trim().length)?[entryUrl,searchString].join("?"):entryUrl;navigates(toUrl,options)};return navigate};export default useNavigate;
|
|
2
2
|
//# sourceMappingURL=navgate.js.map
|
package/lib/hooks/navgate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/hooks/navgate.ts"],"sourcesContent":["import { useNavigate as useNavigateReactRouter, useSearchParams } from 'react-router-dom';\nimport type { NavigateOptions, To } from 'react-router-dom';\n\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[]\n) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const navigates = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigate = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigates(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n\n const searchObj = new URLSearchParams(nextSerach);\n const searchString = searchObj.toString();\n const toUrl = searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n\n navigates(toUrl, options);\n };\n\n return navigate;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","concat","filter","Boolean","navigates","search","navigate","to","options","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchObj","searchString","toString","toUrl","trim","length","join"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/hooks/navgate.ts"],"sourcesContent":["import { useNavigate as useNavigateReactRouter, useSearchParams } from 'react-router-dom';\nimport type { NavigateOptions, To } from 'react-router-dom';\n\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[]\n) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const navigates = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigate = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigates(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n\n const searchObj = new URLSearchParams(nextSerach);\n const searchString = searchObj.toString();\n const toUrl = searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n\n navigates(toUrl, options);\n };\n\n return navigate;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","concat","filter","Boolean","navigates","search","navigate","to","options","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchObj","searchString","toString","toUrl","trim","length","join"],"mappings":"8+CAAA,OAASA,eAAeC,sBAAsB,CAAEC,eAAe,KAAQ,kBAAmB,CAG1F,IAAMF,YAAc,SAElBG,SACG,CACH,IAAMC,aAAeC,MAAMC,IAAI,CAC7B,IAAIC,IAAI,CAAC,SAAU,eAAe,CAACC,MAAM,CAACL,UAAY,MACtDM,MAAM,CAACC,SACT,IAAMC,UAAYV,yBAClB,IAAiBC,gCAAAA,qBAAVU,OAAUV,oBAEjB,IAAMW,SAAW,SAACC,GAAaC,QAA8B,CAC3D,GAAID,KAAO,CAAC,EAAG,CACbH,UAAU,CAAC,GACX,MACF,CAAC,AAED,IAAMK,WAAqC,CAAC,EAE5CJ,OAAOK,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAC3B,GAAIf,aAAagB,QAAQ,CAACD,KAAM,CAC9BE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,CAAC,AACH,GAEA,IAAIK,SAAWT,GACf,IAAMU,eAAiB,AAACD,SAAoBE,OAAO,CAAC,KAEpD,GAAID,iBAAmB,CAAC,EAAG,CACzB,IAAME,cAAgB,IAAIC,gBAAgBJ,SAASK,KAAK,CAACJ,iBAEzDE,cAAcT,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAClCE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,GACAK,SAAWA,SAASM,SAAS,CAAC,EAAGL,eACnC,CAAC,AAED,IAAMM,UAAY,IAAIH,gBAAgBX,YACtC,IAAMe,aAAeD,UAAUE,QAAQ,GACvC,IAAMC,MAAQF,CAAAA,qBAAAA,sBAAAA,KAAAA,EAAAA,aAAcG,IAAI,GAAGC,MAAM,EAAG,CAACZ,SAAUQ,aAAa,CAACK,IAAI,CAAC,KAAOb,QAAQ,CAEzFZ,UAAUsB,MAAOlB,QACnB,EAEA,OAAOF,QACT,CAEA,gBAAeb,WAAY"}
|
|
@@ -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,{useEffect}from"react";import{BrowserRouter,HashRouter}from"react-router-dom";import{useSelector,shallowEqual}from"mini-idc";import{useLocale}from"i18n-hooks";import{ConfigProvider}from"antd";import AppRouter from"../../components/app-router";import FallbackComp from"../../components/fallback-comp";import{onlyLoginRouter}from"../../router";import{watermark}from"../../utils";import SiderLayout from"./layout";import zh_CN from"antd/es/locale/zh_CN";import en_US from"antd/es/locale/en_US";import dayjs from"dayjs";import relativeTime from"dayjs/plugin/relativeTime";import"dayjs/locale/zh.js";import"dayjs/locale/en.js";var localeDictionary={zh_CN:zh_CN,en_US:en_US};dayjs.extend(relativeTime);var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}ConfigProvider.config(providerConfig);var getAntdLocal=function(lang){return localeDictionary[lang]||zh_CN};var App=function(){var isLogin=useSelector(function(state){return!!state.account.info},shallowEqual);var
|
|
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,{useEffect}from"react";import{BrowserRouter,HashRouter}from"react-router-dom";import{useSelector,shallowEqual}from"mini-idc";import{useLocale}from"i18n-hooks";import{ConfigProvider}from"antd";import AppRouter from"../../components/app-router";import FallbackComp from"../../components/fallback-comp";import{onlyLoginRouter}from"../../router";import{watermark}from"../../utils";import SiderLayout from"./layout";import zh_CN from"antd/es/locale/zh_CN";import en_US from"antd/es/locale/en_US";import dayjs from"dayjs";import relativeTime from"dayjs/plugin/relativeTime";import"dayjs/locale/zh.js";import"dayjs/locale/en.js";var localeDictionary={zh_CN:zh_CN,en_US:en_US};dayjs.extend(relativeTime);var Router;switch(programInfo.routerMode){case"hash":Router=HashRouter;break;case"browser":default:Router=BrowserRouter;break}ConfigProvider.config(providerConfig);var getAntdLocal=function(lang){return localeDictionary[lang]||zh_CN};var App=function(){var isLogin=useSelector(function(state){return!!state.account.info},shallowEqual);var _useLocale=useLocale(),lang=_useLocale.lang,getLanguage=_useLocale.getLanguage;useEffect(function(){document.body.style.backgroundImage="url(".concat(watermark({text:projectName}),")")},[]);var props={basename:programInfo.routeBaseName};if(programInfo.routerMode!=="browser"){props={}}return React.createElement(Router,_extends({},props),React.createElement(ConfigProvider,_extends({},providerConfig,{locale:getAntdLocal(lang),form:{validateMessages:{required:"".concat(getLanguage("ph:please-fill"),"${label}!"),types:{email:"${label}".concat(getLanguage("wrong-format"))},pattern:{mismatch:"".concat(getLanguage("ph:fill-correct"),"${label}!")}}}}),isLogin?React.createElement(SiderLayout,null):React.createElement(React.Fragment,null,React.createElement("div",{className:"flex f-a-c absolute r-0 login-toolbox"},React.createElement(FallbackComp,{compName:"switch-language"})),React.createElement(AppRouter,{router:onlyLoginRouter}),React.createElement(FallbackComp,{compName:"layout-footer"}))))};export default App;
|
|
2
2
|
//# sourceMappingURL=app.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/packages/back-stage/app.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { useSelector, shallowEqual } from 'mini-idc';\nimport { useLocale } from 'i18n-hooks';\nimport { ConfigProvider } from 'antd';\nimport AppRouter from '../../components/app-router';\nimport FallbackComp from '../../components/fallback-comp';\nimport { onlyLoginRouter } from '../../router';\nimport { watermark } from '../../utils';\nimport SiderLayout from './layout';\nimport zh_CN from 'antd/es/locale/zh_CN';\nimport en_US from 'antd/es/locale/en_US';\nimport dayjs from 'dayjs';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport 'dayjs/locale/zh.js';\nimport 'dayjs/locale/en.js';\nimport type { LocaleNameType } from 'i18n-hooks';\nimport type { Locale } from 'antd/es/locale-provider';\n\nconst localeDictionary: Partial<Record<LocaleNameType, Locale>> = {\n zh_CN,\n en_US,\n};\n\ndayjs.extend(relativeTime);\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}\nConfigProvider.config(providerConfig);\n\nconst getAntdLocal = (lang: LocaleNameType) => {\n return localeDictionary[lang] || zh_CN;\n};\n\nconst App: React.FC = () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const isLogin = useSelector((state: { account: any }) => !!state.account.info, shallowEqual);\n const { lang, getLanguage } = useLocale();\n\n useEffect(() => {\n document.body.style.backgroundImage = `url(${watermark({\n text: projectName,\n })})`;\n }, []);\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n\n return (\n <Router {...props}>\n <ConfigProvider\n {...providerConfig}\n locale={getAntdLocal(lang)}\n form={{\n validateMessages: {\n required: `${getLanguage('ph:please-fill')}\\${label}!`,\n types: {\n email: `\\${label}${getLanguage('wrong-format')}`,\n },\n pattern: {\n mismatch: `${getLanguage('ph:fill-correct')}\\${label}!`,\n },\n },\n }}\n >\n {isLogin ? (\n <SiderLayout />\n ) : (\n <React.Fragment>\n <div className=\"flex f-a-c absolute r-0 login-toolbox\">\n <FallbackComp compName=\"switch-language\" />\n </div>\n <AppRouter router={onlyLoginRouter} />\n <FallbackComp compName=\"layout-footer\" />\n </React.Fragment>\n )}\n </ConfigProvider>\n </Router>\n );\n};\n\nexport default App;\n"],"names":["React","useEffect","BrowserRouter","HashRouter","useSelector","shallowEqual","useLocale","ConfigProvider","AppRouter","FallbackComp","onlyLoginRouter","watermark","SiderLayout","zh_CN","en_US","dayjs","relativeTime","localeDictionary","extend","Router","programInfo","routerMode","config","providerConfig","getAntdLocal","lang","App","isLogin","state","account","info","getLanguage","document","body","style","backgroundImage","text","projectName","props","basename","routeBaseName","locale","form","validateMessages","required","types","email","pattern","mismatch","Fragment","div","className","compName","router"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/packages/back-stage/app.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { BrowserRouter, HashRouter } from 'react-router-dom';\nimport { useSelector, shallowEqual } from 'mini-idc';\nimport { useLocale } from 'i18n-hooks';\nimport { ConfigProvider } from 'antd';\nimport AppRouter from '../../components/app-router';\nimport FallbackComp from '../../components/fallback-comp';\nimport { onlyLoginRouter } from '../../router';\nimport { watermark } from '../../utils';\nimport SiderLayout from './layout';\nimport zh_CN from 'antd/es/locale/zh_CN';\nimport en_US from 'antd/es/locale/en_US';\nimport dayjs from 'dayjs';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport 'dayjs/locale/zh.js';\nimport 'dayjs/locale/en.js';\nimport type { LocaleNameType } from 'i18n-hooks';\nimport type { Locale } from 'antd/es/locale-provider';\n\nconst localeDictionary: Partial<Record<LocaleNameType, Locale>> = {\n zh_CN,\n en_US,\n};\n\ndayjs.extend(relativeTime);\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}\nConfigProvider.config(providerConfig);\n\nconst getAntdLocal = (lang: LocaleNameType) => {\n return localeDictionary[lang] || zh_CN;\n};\n\nconst App: React.FC = () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const isLogin = useSelector((state: { account: any }) => !!state.account.info, shallowEqual);\n const { lang, getLanguage } = useLocale();\n\n useEffect(() => {\n document.body.style.backgroundImage = `url(${watermark({\n text: projectName,\n })})`;\n }, []);\n let props: Record<string, string> = {\n basename: programInfo.routeBaseName,\n };\n\n if (programInfo.routerMode !== 'browser') {\n props = {};\n }\n\n return (\n <Router {...props}>\n <ConfigProvider\n {...providerConfig}\n locale={getAntdLocal(lang)}\n form={{\n validateMessages: {\n required: `${getLanguage('ph:please-fill')}\\${label}!`,\n types: {\n email: `\\${label}${getLanguage('wrong-format')}`,\n },\n pattern: {\n mismatch: `${getLanguage('ph:fill-correct')}\\${label}!`,\n },\n },\n }}\n >\n {isLogin ? (\n <SiderLayout />\n ) : (\n <React.Fragment>\n <div className=\"flex f-a-c absolute r-0 login-toolbox\">\n <FallbackComp compName=\"switch-language\" />\n </div>\n <AppRouter router={onlyLoginRouter} />\n <FallbackComp compName=\"layout-footer\" />\n </React.Fragment>\n )}\n </ConfigProvider>\n </Router>\n );\n};\n\nexport default App;\n"],"names":["React","useEffect","BrowserRouter","HashRouter","useSelector","shallowEqual","useLocale","ConfigProvider","AppRouter","FallbackComp","onlyLoginRouter","watermark","SiderLayout","zh_CN","en_US","dayjs","relativeTime","localeDictionary","extend","Router","programInfo","routerMode","config","providerConfig","getAntdLocal","lang","App","isLogin","state","account","info","getLanguage","document","body","style","backgroundImage","text","projectName","props","basename","routeBaseName","locale","form","validateMessages","required","types","email","pattern","mismatch","Fragment","div","className","compName","router"],"mappings":"oRAAA,OAAOA,OAASC,SAAS,KAAQ,OAAQ,AACzC,QAASC,aAAa,CAAEC,UAAU,KAAQ,kBAAmB,AAC7D,QAASC,WAAW,CAAEC,YAAY,KAAQ,UAAW,AACrD,QAASC,SAAS,KAAQ,YAAa,AACvC,QAASC,cAAc,KAAQ,MAAO,AACtC,QAAOC,cAAe,6BAA8B,AACpD,QAAOC,iBAAkB,gCAAiC,AAC1D,QAASC,eAAe,KAAQ,cAAe,AAC/C,QAASC,SAAS,KAAQ,aAAc,AACxC,QAAOC,gBAAiB,UAAW,AACnC,QAAOC,UAAW,sBAAuB,AACzC,QAAOC,UAAW,sBAAuB,AACzC,QAAOC,UAAW,OAAQ,AAC1B,QAAOC,iBAAkB,2BAA4B,AACrD,OAAO,oBAAqB,AAC5B,OAAO,oBAAqB,CAI5B,IAAMC,iBAA4D,CAChEJ,MAAAA,MACAC,MAAAA,KACF,EAEAC,MAAMG,MAAM,CAACF,cACb,IAAIG,OAEJ,OAAQC,YAAYC,UAAU,EAC5B,IAAK,OACHF,OAAShB,WACT,KAAM,AACR,KAAK,UACL,QACEgB,OAASjB,cACT,KAAM,AACV,CACAK,eAAee,MAAM,CAACC,gBAEtB,IAAMC,aAAe,SAACC,KAAyB,CAC7C,OAAOR,gBAAgB,CAACQ,KAAK,EAAIZ,KACnC,EAEA,IAAMa,IAAgB,UAAM,CAE1B,IAAMC,QAAUvB,YAAY,SAACwB,aAA4B,CAAC,CAACA,MAAMC,OAAO,CAACC,IAAI,EAAEzB,cAC/E,IAA8BC,WAAAA,YAAtBmB,KAAsBnB,WAAtBmB,KAAMM,YAAgBzB,WAAhByB,YAEd9B,UAAU,UAAM,CACd+B,SAASC,IAAI,CAACC,KAAK,CAACC,eAAe,CAAG,AAAC,OAEpC,OAF0CxB,UAAU,CACrDyB,KAAMC,WACR,GAAG,IACL,EAAG,EAAE,EACL,IAAIC,MAAgC,CAClCC,SAAUnB,YAAYoB,aAAa,AACrC,EAEA,GAAIpB,YAAYC,UAAU,GAAK,UAAW,CACxCiB,MAAQ,CAAC,CACX,CAAC,AAED,OACE,oBAACnB,mBAAWmB,OACV,oBAAC/B,2BACKgB,gBACJkB,OAAQjB,aAAaC,MACrBiB,KAAM,CACJC,iBAAkB,CAChBC,SAAU,AAAC,GAAgC,OAA9Bb,YAAY,kBAAkB,aAC3Cc,MAAO,CACLC,MAAO,AAAC,WAAuC,OAA5Bf,YAAY,gBACjC,EACAgB,QAAS,CACPC,SAAU,AAAC,GAAiC,OAA/BjB,YAAY,mBAAmB,YAC9C,CACF,CACF,IAECJ,QACC,oBAACf,kBAED,oBAACZ,MAAMiD,QAAQ,MACb,oBAACC,OAAIC,UAAU,yCACb,oBAAC1C,cAAa2C,SAAS,qBAEzB,oBAAC5C,WAAU6C,OAAQ3C,kBACnB,oBAACD,cAAa2C,SAAS,kBAE1B,EAIT,CAEA,gBAAe1B,GAAI"}
|
|
@@ -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
|
|
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);
|
|
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":"AAAA,+kDAAA,OAAOA,OAASC,WAAW,CAAEC,SAAS,CAAEC,OAAO,CAAEC,QAAQ,KAAQ,OAAQ,AACzE,QAASC,eAAe,KAAQ,kBAAmB,AACnD,QAASC,SAAS,KAAQ,YAAa,AACvC,QAASC,IAAI,CAAEC,MAAM,CAAEC,IAAI,CAAEC,QAAQ,KAAQ,MAAO,AACpD,QAASC,cAAc,CAAEC,iBAAiB,CAAEC,aAAa,KAAQ,mBAAoB,AACrF,QAASC,OAAO,KAAQ,gBAAiB,AACzC,QAASC,YAAY,CAAEC,WAAW,CAAEC,WAAW,KAAQ,aAAc,AACrE,QAAOC,eAAgB,iCAAkC,AACzD,QAAOC,cAAe,gCAAiC,AACvD,QAAOC,iBAAkB,mCAAoC,AAC7D,QAASC,MAAM,KAAQ,iBAAkB,AACzC,QAAOC,gBAAiB,wBAAyB,AAIjD,QAAOC,WAAY,cAAe,CASlC,IAAMC,UAAwB,CAC5B,CACEC,MAAO,SACPC,KAAM,oBAACd,mBAAkBe,MAAO,CAAEC,UAAW,YAAa,IAC1DC,IAAK,MACP,EACA,CACEJ,MAAO,SACPC,KAAM,oBAACd,wBACPiB,IAAK,OACP,EACA,CACEJ,MAAO,SACPC,KAAM,oBAACb,oBACPgB,IAAK,OACP,EACA,CACEJ,MAAO,QACPC,KAAM,oBAACf,qBACPkB,IAAK,SACP,EACD,CAED,IAAMC,YAAwB,UAAM,CAClC,IAAMC,SAAWd,cACjB,IAAMe,UAAYhB,YAAY,SAACiB,cAAoBA,MAAMC,UAAU,CAACF,SAAS,EAAEjB,cAC/E,IAAMoB,KAAOnB,YAAY,SAACiB,cAAoBA,MAAMC,UAAU,CAACC,IAAI,EAAEpB,cACrE,IAAMqB,OAASpB,YACb,SAACiB,cAA+CA,MAAMC,UAAU,CAACE,MAAM,EAAI,CAAC,GAC5ErB,cAEF,IAAMsB,SAAWf,cACjB,IAAiBjB,mBAAAA,qBAAViC,OAAUjC,OACjB,IAAM,AAAEkC,YAAgBjC,YAAhBiC,YACR,IAAkCnC,oBAAAA,SAAkB,KAAK,KAAlDoC,UAA2BpC,QAAhBqC,aAAgBrC,QAClC,IAAMsC,gBAAkBzC,YAAY,SAAC0C,MAAmB,CACtD,GAAIA,MAAO,CACT,IAAIC,OAAwBC,OAAOC,UAAU,CAAC,UAAM,CAClDL,aAAaE,OACbE,OAAOE,YAAY,CAACH,QACpBA,OAAS,IAAI,AACf,EAAG,EACL,KAAO,CACLH,aAAaE,OACb,IAAIC,QAAwBC,OAAOC,UAAU,CAAC,UAAM,CAClDD,OAAOE,YAAY,CAACH,SACpBA,QAAS,IAAI,AACf,EAAG,GACL,CAAC,AACH,EAAG,EAAE,EAEL,IAAMI,UAAY/C,YAChB,SAACgD,OAAiBC,KAAkB,CAClC,GAAIA,OAAS,UAAW,CACtBb,SAAS,YACT,MACF,CAAC,AACDN,SAAS,CACPmB,KAAM,sBACNC,QAAS,CACPtB,IAAKoB,OACLC,KAAMA,KACNE,SAAAA,SAAAA,SAASC,CAAc,CAAEC,OAAkB,CAAE,CAC3C,GAAIA,QAAS,CACXjB,SAAS,AAAC,GAAyBiB,OAAvBA,QAAQC,IAAI,CAAC,YAAsB,OAAZD,QAAQzB,GAAG,EAChD,CAAC,AACH,CACF,CACF,EACF,EACA,CAACE,SAAUM,SAAS,EAGtB,IAAiClC,KAAAA,QAC/B,iBAAO,CACLqD,OAAQlB,OAAOmB,GAAG,CAAC,WAAa,GAChCC,aAAcpB,OAAOmB,GAAG,CAAC,iBAAmB,EAC9C,GACA,CAACnB,OAAO,EALFkB,OAAyBrD,KAAzBqD,OAAQE,aAAiBvD,KAAjBuD,aAOhB,IAAMC,QAAUvB,MAAM,CAACoB,OAAO,CAE9BtD,UAAU,UAAM,CACd,GAAIsD,OAAQ,CACVzB,SAAS,CACPmB,KAAM,qBACNC,QAAS,CACPtB,IAAK2B,OACLE,aAAAA,YACF,CACF,EACF,CAAC,AACH,EAAG,CAAC3B,SAAU2B,aAAcF,OAAQG,QAAQ,EAE5C,IAAMC,SAAW3D,YACf,SAAC4B,KACCA,OAAAA,MAAQG,UAAYR,UAAYA,UAAUqC,MAAM,CAAC,SAACC,GAAMA,MAAAA,CAAAA,UAAAA,WAAAA,KAAAA,EAAAA,EAAGjC,GAAG,AAAD,IAAM,WAAU,EAC/E,CAACG,UAAU,EAGb,OACE,oBAACxB,QAAOuD,UAAWxC,OAAOyC,MAAM,EAC7BC,YACC,oBAACzD,OAAO0D,KAAK,WACXH,UAAWxC,OAAO4C,KAAK,CACvBC,QAAS,IAAI,CACbC,YAAAA,IAAW,CACX7B,UAAWA,UACX8B,aAAc,SAACC,eAAoB7B,gBAAgB6B,SACnDC,WAAY,SAACC,mBAAwB/B,gBAAgB+B,aACrDC,MAAM,QACNC,WAAW,MACPV,aAEJ,oBAACW,OAAIb,UAAWxC,OAAOsD,IAAI,CAAEC,aAAYC,aACvC,oBAAC3D,cAAa4D,SAAS,OAAOC,KAAM,CAACzC,aAEvC,oBAACtB,YAAWsB,UAAWA,UAAWkC,MAAOT,YAAYS,KAAK,IAE1D,IAAI,CACR,oBAAClE,QAAOuD,UAAWxC,OAAO2D,OAAO,EAC/B,oBAAC9D,cACC4D,SAAS,gBACTxC,UAAWA,UACX2C,YAAa,kBAAMzC,gBAAgB,CAACF,cAEtC,oBAACjC,MACCwD,UAAWxC,OAAOY,IAAI,CACtBiD,QAAAA,IAAO,CACPC,WAAY,SAACxD,IAAgB,CAC3BQ,SAAS,AAAC,GAA6BD,OAA3BA,MAAM,CAACP,IAAI,CAAC0B,IAAI,CAAC,YAA0B,OAAhBnB,MAAM,CAACP,IAAI,CAACA,GAAG,EACxD,EACAG,UAAWA,UACXsD,KAAK,SACLpC,KAAK,gBACLqC,OAAQ,SAACC,UAAWC,OAAW,CAC7B,GAAIA,SAAW,UAAY,OAAOD,YAAc,SAAU,CACxDxC,UAAUwC,UACZ,CAAC,AACH,GAECrD,KAAKuD,GAAG,CAAC,SAACC,aACT,oBAACpF,KAAKqF,OAAO,EACXC,IACE,oBAACnF,UACCoF,QACE,oBAACrF,MACCsF,MAAOnC,SAAS+B,KAAK9D,GAAG,EACxBmE,QAAS,SAACC,KAAS,CACjBA,KAAKC,QAAQ,CAACC,eAAe,GAC7BnD,UAAU2C,KAAK9D,GAAG,CAAEoE,KAAKpE,GAAG,CAC9B,IAGJuC,QAAS,CAAC,cAAc,CACxBgC,mBAAAA,IAAkB,EAElB,oBAACxB,WACEe,KAAKjE,IAAI,CACTa,YAAYoD,KAAKU,IAAI,EAAI,AAAC,SAAiB,OAATV,KAAK9D,GAAG,GAAM8D,KAAKjC,YAAY,EAAI,KAI5E7B,IAAK8D,KAAK9D,GAAG,CACbyE,SAAUX,KAAKW,QAAQ,MAI7B,oBAAC9F,OAAO+F,OAAO,EAACxC,UAAWxC,OAAOiF,aAAa,EAC7C,oBAAC5B,OAAIb,UAAWxC,OAAOkF,OAAO,EAC5B,oBAACtF,WAAUE,OAAQA,UAErB,oBAACD,cAAa4D,SAAS,oBAKjC,CAEA,gBAAehF,MAAM0G,IAAI,CAAC5E,YAAahB,QAAS"}
|
|
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
|
|
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;
|
|
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":"
|
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/packages/library/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":"
|
|
1
|
+
{"version":3,"sources":["../../../src/packages/library/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":"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 +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';\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":"
|
|
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":"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 +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';\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":"
|
|
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":"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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/packages/single-spa/bootstrap.tsx"],"sourcesContent":["import '../../utils/fontloader';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\ntype AppEntryMethods = {\n unmount?: Promise<void>;\n mount?: Promise<void>;\n bootstrap?: Promise<void>;\n};\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst _version = parseFloat(React.version);\n\ntype RenderParamsType = {\n container?: HTMLElement;\n basename?: string;\n fallback?: React.ReactElement;\n};\n\nfunction render(props: RenderParamsType) {\n const { container, basename, fallback, ...args } = props;\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n window.primaryApp = {\n ...args,\n container: _container,\n };\n if (_version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(\n _container as HTMLElement,\n <App basename={basename} fallback={fallback} />\n );\n } else {\n window.rootInstance = SafeReactDOM.createRoot(_container as HTMLElement);\n window.rootInstance.render(<App basename={basename} fallback={fallback} />);\n }\n } else {\n const reactRender = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n reactRender(<App basename={basename} fallback={fallback} />, _container);\n }\n}\n\nif (!window.__POWERED_BY_QIANKUN__) {\n render({});\n}\n\nexport async function bootstrap(): Promise<void> {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function unmount(props: any): Promise<void> {\n if (isFunction(appEntry?.unmount)) {\n appEntry?.unmount(props);\n }\n const { container } = props;\n\n if (_version >= 18) {\n window.rootInstance.unmount();\n } else {\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n SafeReactDOM.unmountComponentAtNode(_container);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function mount(props: any): Promise<void> {\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount(props);\n }\n render(props);\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","_version","parseFloat","version","render","props","container","basename","fallback","args","_container","querySelector","document","window","primaryApp","programInfo","renderMode","rootInstance","hydrateRoot","createRoot","reactRender","module","hot","hydrate","__POWERED_BY_QIANKUN__","bootstrap","unmount","unmountComponentAtNode","mount"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/packages/single-spa/bootstrap.tsx"],"sourcesContent":["import '../../utils/fontloader';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\ntype AppEntryMethods = {\n unmount?: Promise<void>;\n mount?: Promise<void>;\n bootstrap?: Promise<void>;\n};\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst _version = parseFloat(React.version);\n\ntype RenderParamsType = {\n container?: HTMLElement;\n basename?: string;\n fallback?: React.ReactElement;\n};\n\nfunction render(props: RenderParamsType) {\n const { container, basename, fallback, ...args } = props;\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n window.primaryApp = {\n ...args,\n container: _container,\n };\n if (_version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(\n _container as HTMLElement,\n <App basename={basename} fallback={fallback} />\n );\n } else {\n window.rootInstance = SafeReactDOM.createRoot(_container as HTMLElement);\n window.rootInstance.render(<App basename={basename} fallback={fallback} />);\n }\n } else {\n const reactRender = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n reactRender(<App basename={basename} fallback={fallback} />, _container);\n }\n}\n\nif (!window.__POWERED_BY_QIANKUN__) {\n render({});\n}\n\nexport async function bootstrap(): Promise<void> {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function unmount(props: any): Promise<void> {\n if (isFunction(appEntry?.unmount)) {\n appEntry?.unmount(props);\n }\n const { container } = props;\n\n if (_version >= 18) {\n window.rootInstance.unmount();\n } else {\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n SafeReactDOM.unmountComponentAtNode(_container);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function mount(props: any): Promise<void> {\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount(props);\n }\n render(props);\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","_version","parseFloat","version","render","props","container","basename","fallback","args","_container","querySelector","document","window","primaryApp","programInfo","renderMode","rootInstance","hydrateRoot","createRoot","reactRender","module","hot","hydrate","__POWERED_BY_QIANKUN__","bootstrap","unmount","unmountComponentAtNode","mount"],"mappings":"koHAAA,OAAO,wBAAyB,AAChC,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAQxB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,SAAWC,WAAWT,MAAMU,OAAO,EAQzC,SAASC,OAAOC,KAAuB,CAAE,CACvC,IAAQC,UAA2CD,MAA3CC,UAAWC,SAAgCF,MAAhCE,SAAUC,SAAsBH,MAAtBG,SAAaC,8BAASJ,OAA3CC,YAAWC,WAAUC,aAC7B,IAAME,WAAaJ,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWK,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,QAE/EE,CAAAA,OAAOC,UAAU,CAAG,oCACfL,OACHH,UAAWI,aAEb,GAAIT,UAAY,GAAI,CAClB,GAAIc,YAAYC,UAAU,GAAK,MAAO,CACpCH,OAAOI,YAAY,CAAGlB,aAAamB,WAAW,CAC5CR,WACA,oBAACf,KAAIY,SAAUA,SAAUC,SAAUA,WAEvC,KAAO,CACLK,OAAOI,YAAY,CAAGlB,aAAaoB,UAAU,CAACT,YAC9CG,OAAOI,YAAY,CAACb,MAAM,CAAC,oBAACT,KAAIY,SAAUA,SAAUC,SAAUA,WAChE,CAAC,AACH,KAAO,CACL,IAAMY,YAAcC,OAAOC,GAAG,CAAGvB,aAAaK,MAAM,CAAGL,aAAawB,OAAO,CAE3EH,YAAY,oBAACzB,KAAIY,SAAUA,SAAUC,SAAUA,WAAcE,WAC/D,CAAC,AACH,CAEA,GAAI,CAACG,OAAOW,sBAAsB,CAAE,CAClCpB,OAAO,CAAC,EACV,CAAC,AAED,gBAAsBqB,mBAAAA,iCAIrB,SAJqBA,aAAAA,WAAf,kBAAA,UAA0C,0CAC/C,GAAI/B,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU6B,SAAS,EAAG,CACnC7B,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU6B,SAAS,EACrB,CAAC,WACH,UAJsBA,iCAOtB,gBAAsBC,QAAQrB,KAAU,SAAlBqB,+BAarB,SAbqBA,WAAAA,SAAf,kBAAA,SAAuBrB,KAAU,CAAiB,KAI/CC,UAKAI,oDARR,GAAIhB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU8B,OAAO,EAAG,CACjC9B,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU8B,OAAO,CAACrB,MACpB,CAAC,AACOC,UAAcD,MAAdC,UAER,GAAIL,UAAY,GAAI,CAClBY,OAAOI,YAAY,CAACS,OAAO,EAC7B,KAAO,CACChB,WAAaJ,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWK,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAE/EZ,aAAa4B,sBAAsB,CAACjB,WACtC,CAAC,WACH,UAbsBgB,+BAgBtB,gBAAsBE,MAAMvB,KAAU,SAAhBuB,6BAKrB,SALqBA,SAAAA,OAAf,kBAAA,SAAqBvB,KAAU,CAAiB,0CACrD,GAAIX,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,KAAK,EAAG,CAC/BhC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,KAAK,CAACvB,MAClB,CAAC,AACDD,OAAOC,kBACT,UALsBuB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./public-path";import"../../utils/env";import"../../utils/refresh-rem";import"../../styles/normalize.css";var
|
|
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';\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,
|
|
1
|
+
{"version":3,"sources":["../../../src/packages/single-spa/index.ts"],"sourcesContent":["import './public-path';\nimport '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst { bootstrap, mount, unmount } = await import('./bootstrap');\n\nexport { bootstrap, mount, unmount };\n"],"names":["bootstrap","mount","unmount"],"mappings":"AAAA,MAAO,eAAgB,AACvB,OAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAsC,KAAA,MAAM,MAAM,CAAC,eAA3CA,UAA8B,KAA9BA,UAAWC,MAAmB,KAAnBA,MAAOC,QAAY,KAAZA,OAE1B,QAASF,SAAS,CAAEC,KAAK,CAAEC,OAAO,CAAG"}
|
|
@@ -1 +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';\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":"
|
|
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":"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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/prefix/react-router-dom.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nconst ReactRouterDom = require('react-router-dom');\nconst useNavigate = require('../hooks/navgate').default;\nconst { useNavigate: useNavigateReactRouter, ...other } = ReactRouterDom;\n\nmodule.exports = {\n useNavigateForReactRouter: useNavigateReactRouter,\n useNavigate: useNavigate,\n ...other,\n};\n"],"names":["ReactRouterDom","require","useNavigate","default","useNavigateReactRouter","other","module","exports","useNavigateForReactRouter"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/prefix/react-router-dom.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nconst ReactRouterDom = require('react-router-dom');\nconst useNavigate = require('../hooks/navgate').default;\nconst { useNavigate: useNavigateReactRouter, ...other } = ReactRouterDom;\n\nmodule.exports = {\n useNavigateForReactRouter: useNavigateReactRouter,\n useNavigate: useNavigate,\n ...other,\n};\n"],"names":["ReactRouterDom","require","useNavigate","default","useNavigateReactRouter","other","module","exports","useNavigateForReactRouter"],"mappings":"qyCACA,IAAMA,eAAiBC,QAAQ,oBAC/B,IAAMC,YAAcD,QAAQ,oBAAoBE,OAAO,CACvD,IAAQD,AAAaE,uBAAqCJ,eAAlDE,YAAwCG,+BAAUL,gBAAlDE,eAERI,CAAAA,OAAOC,OAAO,CAAG,eACfC,0BAA2BJ,uBAC3BF,YAAaA,aACVG"}
|
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 _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=[];export var myDemoKv={};if(APPTYPE==="library"){var
|
|
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=[];export var myDemoKv={};if(APPTYPE==="library"){var _allDemo_keys;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 allDemo=require.context("@pkg/",true,/\/examples\/(.+)\.(t|j)sx$/);(_allDemo_keys=allDemo.keys())===null||_allDemo_keys===void 0?void 0:_allDemo_keys.forEach(function(e){var k=e.substring(2);var name=k.split("/")[0];if(!Array.isArray(myDemoKv[name])){myDemoKv[name]=[]}allDemo(e).codeSoucre=require("@pkg/"+k+"?raw");myDemoKv[name].push(allDemo(e))})}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};
|
|
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 { pathToRegexp } from 'path-to-regexp';\nimport { createElement, lazy, type ReactNode, 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 interface ExampleModule {\n default: () => ReactNode;\n codeSoucre: string;\n title?: string;\n hideSource?: boolean;\n}\nexport const myPkgs: RouterProps[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\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 const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.(t|j)sx$/);\n\n allDemo.keys()?.forEach((e: string) => {\n const k = e.substring(2);\n const name = k.split('/')[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n allDemo(e).codeSoucre = require('@pkg/' + k + '?raw');\n myDemoKv[name].push(allDemo(e));\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","myDemoKv","APPTYPE","allDemo","models","require","context","keys","map","item","key","substring","split","slice","join","push","path","element","forEach","e","k","name","Array","isArray","codeSoucre","list","default","error","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","merge","source","child","_","find","Object","assign","childData","findLogin","rs","onlyLogin","prevKey","_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 ReactNode, 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 interface ExampleModule {\n default: () => ReactNode;\n codeSoucre: string;\n title?: string;\n hideSource?: boolean;\n}\nexport const myPkgs: RouterProps[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\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 const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.(t|j)sx$/);\n\n allDemo.keys()?.forEach((e: string) => {\n const k = e.substring(2);\n const name = k.split('/')[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n allDemo(e).codeSoucre = require('@pkg/' + k + '?raw');\n myDemoKv[name].push(allDemo(e));\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","myDemoKv","APPTYPE","allDemo","models","require","context","keys","map","item","key","substring","split","slice","join","push","path","element","forEach","e","k","name","Array","isArray","codeSoucre","list","default","error","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","merge","source","child","_","find","Object","assign","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","p","findPath","exec"],"mappings":"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"}
|
package/lib/utils/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export var watermark=function(param){var text=param.text,
|
|
1
|
+
export var watermark=function(param){var text=param.text,_param_x=param.x,x=_param_x===void 0?19.5:_param_x,_param_y=param.y,y=_param_y===void 0?55:_param_y,_param_width=param.width,width=_param_width===void 0?100:_param_width,_param_height=param.height,height=_param_height===void 0?100:_param_height,_param_fontSize=param.fontSize,fontSize=_param_fontSize===void 0?14:_param_fontSize,_param_angle=param.angle,angle=_param_angle===void 0?-45:_param_angle,_param_opacity=param.opacity,opacity=_param_opacity===void 0?.1:_param_opacity,_param_color=param.color,color=_param_color===void 0?"#000":_param_color;var svgStr='<svg xmlns="http://www.w3.org/2000/svg" width="'+width+'" height="'+height+'"><g><title>Layer 1</title><text x="'+x+'" y="'+y+'" textAnchor="middle" dominantBaseline="middle" stroke-opacity="'+opacity+'" stroke="'+color+'" fill="none" transform="rotate('+angle+" "+width/2+","+height/2+')" font-size="'+fontSize+'" font-family="-apple-system, BlinkMacSystemFont, '+"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'"+'">'+text+"</text></g></svg>";return"data:image/svg+xml;base64,"+window.btoa(decodeURIComponent(encodeURIComponent(svgStr)))};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["// export const translatFunction = (func: string, val?: number | string | any): string => {\n// try {\n// if (typeof val !== 'undefined') {\n// return eval(func);\n// }\n// } catch (error) {\n// // eslint-disable-next-line no-console\n// console.warn(error);\n// }\n// return func;\n// };\n\nexport type WatermarkParamsType = {\n text: string;\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n fontSize?: number;\n angle?: number;\n opacity?: number;\n color?: string;\n};\n\nexport const watermark = ({\n text,\n x = 19.5,\n y = 55,\n width = 100,\n height = 100,\n fontSize = 14,\n angle = -45,\n opacity = 0.1,\n color = '#000',\n}: WatermarkParamsType): string => {\n const svgStr =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n width +\n '\" height=\"' +\n height +\n '\"><g><title>Layer 1</title><text x=\"' +\n x +\n '\" y=\"' +\n y +\n '\" textAnchor=\"middle\" dominantBaseline=\"middle\" stroke-opacity=\"' +\n opacity +\n '\" stroke=\"' +\n color +\n '\" fill=\"none\" transform=\"rotate(' +\n angle +\n ' ' +\n width / 2 +\n ',' +\n height / 2 +\n ')\" font-size=\"' +\n fontSize +\n '\" font-family=\"-apple-system, BlinkMacSystemFont, ' +\n \"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'\" +\n '\">' +\n text +\n '</text></g></svg>';\n\n return 'data:image/svg+xml;base64,' + window.btoa(decodeURIComponent(encodeURIComponent(svgStr)));\n};\n"],"names":["watermark","text","x","y","width","height","fontSize","angle","opacity","color","svgStr","window","btoa","decodeURIComponent","encodeURIComponent"],"mappings":"AAwBA,OAAO,IAAMA,UAAY,eAUU,KATjCC,WAAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["// export const translatFunction = (func: string, val?: number | string | any): string => {\n// try {\n// if (typeof val !== 'undefined') {\n// return eval(func);\n// }\n// } catch (error) {\n// // eslint-disable-next-line no-console\n// console.warn(error);\n// }\n// return func;\n// };\n\nexport type WatermarkParamsType = {\n text: string;\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n fontSize?: number;\n angle?: number;\n opacity?: number;\n color?: string;\n};\n\nexport const watermark = ({\n text,\n x = 19.5,\n y = 55,\n width = 100,\n height = 100,\n fontSize = 14,\n angle = -45,\n opacity = 0.1,\n color = '#000',\n}: WatermarkParamsType): string => {\n const svgStr =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n width +\n '\" height=\"' +\n height +\n '\"><g><title>Layer 1</title><text x=\"' +\n x +\n '\" y=\"' +\n y +\n '\" textAnchor=\"middle\" dominantBaseline=\"middle\" stroke-opacity=\"' +\n opacity +\n '\" stroke=\"' +\n color +\n '\" fill=\"none\" transform=\"rotate(' +\n angle +\n ' ' +\n width / 2 +\n ',' +\n height / 2 +\n ')\" font-size=\"' +\n fontSize +\n '\" font-family=\"-apple-system, BlinkMacSystemFont, ' +\n \"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'\" +\n '\">' +\n text +\n '</text></g></svg>';\n\n return 'data:image/svg+xml;base64,' + window.btoa(decodeURIComponent(encodeURIComponent(svgStr)));\n};\n"],"names":["watermark","text","x","y","width","height","fontSize","angle","opacity","color","svgStr","window","btoa","decodeURIComponent","encodeURIComponent"],"mappings":"AAwBA,OAAO,IAAMA,UAAY,eAUU,KATjCC,WAAAA,oBACAC,EAAAA,oBAAI,6BACJC,EAAAA,oBAAI,+BACJC,MAAAA,4BAAQ,qCACRC,OAAAA,8BAAS,wCACTC,SAAAA,kCAAW,sCACXC,MAAAA,4BAAQ,CAAC,qCACTC,QAAAA,gCAAU,qCACVC,MAAAA,4BAAQ,oBAER,IAAMC,OACJ,kDACAN,MACA,aACAC,OACA,uCACAH,EACA,QACAC,EACA,mEACAK,QACA,aACAC,MACA,mCACAF,MACA,IACAH,MAAQ,EACR,IACAC,OAAS,EACT,iBACAC,SACA,qDACA,8NACA,KACAL,KACA,oBAEF,MAAO,6BAA+BU,OAAOC,IAAI,CAACC,mBAAmBC,mBAAmBJ,SAC1F,CAAE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moneko/core",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.41",
|
|
4
4
|
"description": "core",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -22,9 +22,10 @@
|
|
|
22
22
|
"@parcel/css": "1.14.0",
|
|
23
23
|
"@pmmmwh/react-refresh-webpack-plugin": "0.5.10",
|
|
24
24
|
"@soda/friendly-errors-webpack-plugin": "1.8.1",
|
|
25
|
-
"@swc/core": "1.3.
|
|
25
|
+
"@swc/core": "1.3.34",
|
|
26
26
|
"@swc/helpers": "0.4.14",
|
|
27
|
-
"@swc/plugin-transform-imports": "1.5.
|
|
27
|
+
"@swc/plugin-transform-imports": "1.5.41",
|
|
28
|
+
"@swc/wasm-web": "1.3.34",
|
|
28
29
|
"add-asset-html-webpack-plugin": "5.0.2",
|
|
29
30
|
"core-js": "3.27.2",
|
|
30
31
|
"cross-env": "7.0.3",
|
|
@@ -58,6 +59,7 @@
|
|
|
58
59
|
"typescript": "4.9.5",
|
|
59
60
|
"webfontloader": "1.6.28",
|
|
60
61
|
"webpack": "5.75.0",
|
|
62
|
+
"webpack-bundle-analyzer": "4.7.0",
|
|
61
63
|
"webpack-cli": "5.0.1",
|
|
62
64
|
"webpack-dev-server": "4.11.1",
|
|
63
65
|
"webpack-merge": "5.8.0",
|
|
@@ -65,6 +67,7 @@
|
|
|
65
67
|
"xml2js": "0.4.23"
|
|
66
68
|
},
|
|
67
69
|
"devDependencies": {
|
|
70
|
+
"@swc/cli": "0.1.61",
|
|
68
71
|
"@types/mini-css-extract-plugin": "^2.5.1",
|
|
69
72
|
"@types/react": "^18.0.20",
|
|
70
73
|
"@types/react-dom": "^18.0.6",
|
|
@@ -72,6 +75,7 @@
|
|
|
72
75
|
"@types/shelljs": "^0.8.11",
|
|
73
76
|
"@types/tinycolor2": "^1.4.3",
|
|
74
77
|
"@types/webfontloader": "^1.6.34",
|
|
78
|
+
"@types/webpack-bundle-analyzer": "^4.6.0",
|
|
75
79
|
"@types/webpack-env": "^1.18.0",
|
|
76
80
|
"antd": "4.20.2",
|
|
77
81
|
"eslint-config-neko": "^1.0.15",
|
package/typings/global.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { Options as AssetHtmlOptions } from 'add-asset-html-webpack-plugin';
|
|
|
8
8
|
import { Options as HtmlWebpackPluginOptions } from 'html-webpack-plugin';
|
|
9
9
|
import type { WebpackConfiguration } from 'webpack-dev-server';
|
|
10
10
|
import type { Config as SwcConfig } from '@swc/core';
|
|
11
|
+
import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer';
|
|
11
12
|
|
|
12
13
|
export type MinifierType = 'swc' | 'terser';
|
|
13
14
|
export declare type AppType =
|
|
@@ -161,6 +162,7 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
161
162
|
media?: string[];
|
|
162
163
|
fonts?: string[];
|
|
163
164
|
};
|
|
165
|
+
bundleAnalyzer: BundleAnalyzerPlugin.Options;
|
|
164
166
|
};
|
|
165
167
|
export declare interface ModuleFederationOption {
|
|
166
168
|
/** 模块名称,唯一性,不能重名 */
|