@moneko/core 2.0.20 → 2.0.22

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/envFlags.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return N}});var e=c(require("fs")),r=c(require("path")),t=require("./common"),i=require("./coverage"),a=c(require("./html-plugin-option")),n=require("./process-env"),s=require("./utils");function o(){return(o=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e}).apply(this,arguments)}function c(e){return e&&e.__esModule?e:{default:e}}var f=parseFloat(n.hasReact?require("react/package.json").version:"18")>=18?"react-dom/client":"react-dom",u="library"===n.APPTYPE?"site":"src",l=!1;try{var O=r.default.join(n.PROGRAMPATH,"./src/index.ts");e.default.accessSync(O,e.default.constants.R_OK),l=O}catch(e){l=!1}var N={projectName:JSON.stringify((0,s.toUpperCaseString)(n.PACKAGENAME)),projectCoverage:JSON.stringify(i.coverage),providerConfig:JSON.stringify({prefixCls:t.CONFIG.prefixCls,iconPrefixCls:t.CONFIG.prefixCls+"-icon"}),fallbackCompPath:JSON.stringify(t.CONFIG.fallbackCompPath),ReactDOMPath:JSON.stringify(f),favicon:JSON.stringify(a.default.favicon),hasLocales:JSON.stringify(e.default.existsSync(r.default.join(n.PROGRAMPATH,"./"+u+"/locales"))),layoutSider:JSON.stringify(t.CONFIG.layoutSider),hasAntd:JSON.stringify(n.hasAntd),APPTYPE:JSON.stringify(n.APPTYPE),APPENTRY:JSON.stringify(l),programInfo:JSON.stringify(o({},n.programInfo,{routeBaseName:t.CONFIG.routeBaseName,designSize:t.CONFIG.designSize,routerMode:t.CONFIG.routerMode,renderMode:t.CONFIG.mode})),"process.env":JSON.stringify(o({persistence:t.CONFIG.persistence,NODE_ENV:n.NODE_ENV},t.CONFIG.env))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return N}});var e=c(require("fs")),r=c(require("path")),t=require("./common"),i=require("./coverage"),a=c(require("./html-plugin-option")),n=require("./process-env"),s=require("./utils");function o(){return(o=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e}).apply(this,arguments)}function c(e){return e&&e.__esModule?e:{default:e}}var f=parseFloat(n.hasReact?require("react/package.json").version:"18")>=18?"react-dom/client":"react-dom",u="library"===n.APPTYPE?"site":"src",l=!1;try{var O=r.default.join(n.PROGRAMPATH,"./src/index.ts");e.default.accessSync(O,e.default.constants.R_OK),l=O}catch(e){l=!1}var N={projectName:JSON.stringify((0,s.toUpperCaseString)(n.PACKAGENAME)),projectCoverage:JSON.stringify(i.coverage),providerConfig:JSON.stringify({prefixCls:t.CONFIG.prefixCls,iconPrefixCls:t.CONFIG.prefixCls+"-icon",theme:t.CONFIG.theme}),fallbackCompPath:JSON.stringify(t.CONFIG.fallbackCompPath),ReactDOMPath:JSON.stringify(f),favicon:JSON.stringify(a.default.favicon),hasLocales:JSON.stringify(e.default.existsSync(r.default.join(n.PROGRAMPATH,"./"+u+"/locales"))),layoutSider:JSON.stringify(t.CONFIG.layoutSider),hasAntd:JSON.stringify(n.hasAntd),APPTYPE:JSON.stringify(n.APPTYPE),APPENTRY:JSON.stringify(l),programInfo:JSON.stringify(o({},n.programInfo,{routeBaseName:t.CONFIG.routeBaseName,designSize:t.CONFIG.designSize,routerMode:t.CONFIG.routerMode,renderMode:t.CONFIG.mode})),"process.env":JSON.stringify(o({persistence:t.CONFIG.persistence,NODE_ENV:n.NODE_ENV},t.CONFIG.env))};
package/build/swcrc.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var o in r)Object.defineProperty(e,o,{enumerable:!0,get:r[o]})}(exports,{swcMinifyOption:function(){return n},default:function(){return s}});var e=require("webpack-merge"),r=require("./common"),o=function(e){return e&&e.__esModule?e:{default:e}}(require("./envFlags")),t={env:{targets:["last 2 version","> 0.5%","ie 11","not dead"],mode:"entry",coreJs:"3"}},n={compress:{top_retain:[],keep_infinity:!0,global_defs:{"@alert":"console.log"},pure_funcs:["console.log","console.warn","console.error","console.info"],toplevel:!1,drop_console:!0,drop_debugger:!0,module:!1,ecma:2015,ie8:!1,keep_classnames:void 0,keep_fnames:!1},mangle:!0},s=function(n){void 0===n&&(n=!1);var s=Object.assign({module:{type:"es6",ignoreDynamic:!0,strict:!0,strictMode:!0,lazy:!0,noInterop:!0},jsc:{parser:{syntax:"typescript",decorators:!0,dynamicImport:!0,tsx:!0},loose:!0,target:"es2022",externalHelpers:!0,transform:{legacyDecorator:!0,decoratorMetadata:!0,react:{runtime:"automatic",throwIfNamespace:!0,useBuiltins:!0,refresh:n,development:n},constModules:{globals:{"env-flags":o.default}},optimizer:{simplify:!1}},experimental:{plugins:[["swc-plugin-another-transform-imports",r.CONFIG.importOnDemand||{}]]}},sourceMaps:!0},!n&&t);return r.CONFIG.swcrc&&(s=(0,e.merge)(s,"function"==typeof r.CONFIG.swcrc?r.CONFIG.swcrc(n):r.CONFIG.swcrc)),s};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{swcMinifyOption:function(){return n},default:function(){return s}});var e=require("webpack-merge"),r=require("./common"),t=function(e){return e&&e.__esModule?e:{default:e}}(require("./envFlags")),o={env:{targets:["last 2 version","> 0.5%","ie 11","not dead"],mode:"entry",coreJs:"3"}},n={compress:{top_retain:[],keep_infinity:!0,global_defs:{"@alert":"console.log"},pure_funcs:["console.log","console.warn","console.error","console.info"],toplevel:!1,drop_console:!0,drop_debugger:!0,module:!1,ecma:2015,ie8:!1,keep_classnames:void 0,keep_fnames:!1},mangle:!0},s=function(n){void 0===n&&(n=!1);var s=Object.assign({module:{type:"es6",ignoreDynamic:!0,strict:!0,strictMode:!0,lazy:!0,noInterop:!0},jsc:{parser:{syntax:"typescript",decorators:!0,dynamicImport:!0,tsx:!0},loose:!0,target:"es2022",externalHelpers:!0,transform:{legacyDecorator:!0,decoratorMetadata:!0,react:{runtime:"automatic",throwIfNamespace:!0,useBuiltins:!0,refresh:n,development:n},constModules:{globals:{"env-flags":t.default}},optimizer:{simplify:!1}},experimental:{plugins:[["swc-plugin-another-transform-imports",function(e){for(var r=0,t=Object.keys(e),o=t.length;r<o;r++)e[t[r]].transform=t[r]+"/"+e[t[r]].transform,e[t[r]].style&&(e[t[r]].style=t[r]+"/"+e[t[r]].style);return e}(r.CONFIG.importOnDemand||{})]]}},sourceMaps:!0},!n&&o);return r.CONFIG.swcrc&&(s=(0,e.merge)(s,"function"==typeof r.CONFIG.swcrc?r.CONFIG.swcrc(n):r.CONFIG.swcrc)),s};
package/lib/index.d.ts CHANGED
@@ -3,14 +3,14 @@ export * from './prefix/react-router-dom.js';
3
3
  export * from './utils';
4
4
  export { pathToRegexp } from 'path-to-regexp';
5
5
  export { default as sso } from 'shared-store-object';
6
- export { localizable, setLanguage, type LocaleConfig, type LocaleName } from './localizable';
6
+ export { localizable, setLanguage, interpolateString, type LocaleConfig, type LocaleName, } from './localizable';
7
7
  export { matchUtil, router, onlyLoginRouter, myPkgs, myDemoKv, mdxComponents, type ExampleModule, type RouterProps, type MyPkg, } from './router';
8
8
  export { addTab, closeTab, menu, openTab, setMenu, type TabItem, type MenuItem, type CloseTab, } from './menu';
9
9
  export type { LayoutMenuProps } from './components/layout-menu';
10
10
  export { createRouter, prefixRouter, routerData, RouterFragment } from './components/app-router';
11
11
  export declare const LayoutMenu: any;
12
12
  export declare const DashboardLayout: any;
13
- export type { ConfigType, AppType, CommomType, ProgramInfoType, MemberTransformer, CoverageType, TerserOptions, MinifierType, SourceMapDevToolPluginOptions, ProjectCoverageType, SharedConfig, SwcOptions, OptimizationSplitChunksOptions, SwcImportOnDemandTransform, } from '../typings/global';
13
+ export type { ConfigType, AppType, CommomType, ProgramInfoType, MemberTransformer, CoverageType, TerserOptions, MinifierType, SourceMapDevToolPluginOptions, ProjectCoverageType, SharedConfig, SwcOptions, OptimizationSplitChunksOptions, SwcImportOnDemandTransform, Theme, } from '../typings/global';
14
14
  import type { ConfigType, CommomType, CoverageType, ProjectCoverageType } from '../typings/global';
15
15
  export type PartialConfigType<T = 'swc'> = Partial<ConfigType<T>>;
16
16
  export type PartialCommomType<T = 'swc'> = Partial<CommomType<T>>;
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- export*from"./prefix/react-router-dom.js";export*from"./utils";export{pathToRegexp}from"path-to-regexp";export{default as sso}from"shared-store-object";export{localizable,setLanguage}from"./localizable";export{matchUtil,router,onlyLoginRouter,myPkgs,myDemoKv,mdxComponents}from"./router";export{addTab,closeTab,menu,openTab,setMenu}from"./menu";export{createRouter,prefixRouter,routerData,RouterFragment}from"./components/app-router";export var LayoutMenu=hasAntd?require("./components/layout-menu").default:null;export var DashboardLayout=hasAntd?require("./packages/back-stage/layout").default:null;export var projectBasicInfo={projectName:projectName,providerConfig:providerConfig,programInfo:programInfo,coverage:projectCoverage};
1
+ export*from"./prefix/react-router-dom.js";export*from"./utils";export{pathToRegexp}from"path-to-regexp";export{default as sso}from"shared-store-object";export{localizable,setLanguage,interpolateString}from"./localizable";export{matchUtil,router,onlyLoginRouter,myPkgs,myDemoKv,mdxComponents}from"./router";export{addTab,closeTab,menu,openTab,setMenu}from"./menu";export{createRouter,prefixRouter,routerData,RouterFragment}from"./components/app-router";export var LayoutMenu=hasAntd?require("./components/layout-menu").default:null;export var DashboardLayout=hasAntd?require("./packages/back-stage/layout").default:null;export var projectBasicInfo={projectName:projectName,providerConfig:providerConfig,programInfo:programInfo,coverage:projectCoverage};
@@ -1 +1 @@
1
- function e(){return(e=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var o=arguments[r];for(var t in o)Object.prototype.hasOwnProperty.call(o,t)&&(e[t]=o[t])}return e}).apply(this,arguments)}import r,{useEffect as o}from"react";import{ConfigProvider as t}from"antd";import a from"antd/es/locale/en_US";import l from"antd/es/locale/zh_CN";import n from"dayjs";import i from"dayjs/plugin/relativeTime";import{RouterProvider as m}from"react-router-dom";import{createRouter as p,prefixRouter as f,routerData as c,RouterFragment as s}from"../../components/app-router";import u from"../../components/fallback";import{localizable as d}from"../../localizable";import{onlyLoginRouter as g}from"../../router";import"dayjs/locale/zh.js";import"dayjs/locale/en.js";import{watermark as b}from"../../utils";import{global as h}from"@/store";var v={zh_CN:l,en_US:a};n.extend(i),t.config({prefixCls:providerConfig.prefixCls,iconPrefixCls:providerConfig.iconPrefixCls,theme:providerConfig.theme});export default function(){var a=h.isLogin,n=d.language,i=d.t;return o(function(){document.body.style.backgroundImage="url("+b({text:projectName})+")"},[]),r.createElement(s,null,r.createElement(t,e({},providerConfig,{locale:v[n]||l,form:{validateMessages:{required:""+i["ph:please-fill"]+"${label}!",types:{email:"${label}"+i["wrong-format"]},pattern:{mismatch:""+i["ph:fill-correct"]+"${label}!"}}}}),r.createElement(m,{router:p(a?c:f(g,r.createElement(u,null)),{basename:programInfo.routeBaseName,window:window}),fallbackElement:r.createElement(u,null)})))};
1
+ function e(){return(e=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var o=arguments[r];for(var t in o)Object.prototype.hasOwnProperty.call(o,t)&&(e[t]=o[t])}return e}).apply(this,arguments)}function r(){var e,o,t=(e=["\n body::after {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99999999999;\n width: 100vw;\n height: 100vh;\n content: '';\n pointer-events: none;\n background-image: url(",");\n }\n"],o||(o=e.slice(0)),e.raw=o,e);return r=function(){return t},t}import o from"react";import{css as t,injectGlobal as n}from"@emotion/css";import{ConfigProvider as i}from"antd";import a from"antd/es/locale/en_US";import l from"antd/es/locale/zh_CN";import m from"dayjs";import p from"dayjs/plugin/relativeTime";import{RouterProvider as f}from"react-router-dom";import{createRouter as c,prefixRouter as s,routerData as u,RouterFragment as d}from"../../components/app-router";import g from"../../components/fallback";import{localizable as v}from"../../localizable";import{onlyLoginRouter as h}from"../../router";import"dayjs/locale/zh.js";import"dayjs/locale/en.js";import{watermark as b}from"../../utils";import{global as C}from"@/store";var j={zh_CN:l,en_US:a};m.extend(p),i.config({prefixCls:providerConfig.prefixCls,iconPrefixCls:providerConfig.iconPrefixCls,theme:providerConfig.theme});var w=b({text:projectName}),x=t(r(),w);n([x]);export default function(){var r=C.isLogin,t=v.language,n=v.t;return o.createElement(d,null,o.createElement(i,e({},providerConfig,{locale:j[t]||l,form:{validateMessages:{required:""+n["ph:please-fill"]+"${label}!",types:{email:"${label}"+n["wrong-format"]},pattern:{mismatch:""+n["ph:fill-correct"]+"${label}!"}}}}),o.createElement(f,{router:c(r?u:s(h,o.createElement(g,null)),{basename:programInfo.routeBaseName,window:window}),fallbackElement:o.createElement(g,null)})))};
@@ -1,9 +1,3 @@
1
- /**
2
- * 将字符串转换为Base64Url格式的字符串。
3
- * @param {string} str - 需要转换的字符串。
4
- * @returns {string} 转换后的Base64Url格式的字符串。
5
- */
6
- export declare function stringToBase64Url(str: string): string;
7
1
  export type WatermarkParamsType = {
8
2
  text: string;
9
3
  x?: number;
@@ -14,5 +8,6 @@ export type WatermarkParamsType = {
14
8
  angle?: number;
15
9
  opacity?: number;
16
10
  color?: string;
11
+ fontFamily?: string;
17
12
  };
18
- export declare const watermark: ({ text, x, y, width, height, fontSize, angle, opacity, color, }: WatermarkParamsType) => string;
13
+ export declare const watermark: ({ text, x, y, width, height, fontSize, angle, opacity, color, fontFamily, }: WatermarkParamsType) => string;
@@ -1 +1 @@
1
- export function stringToBase64Url(e){for(var t,o=new TextEncoder().encode(e),n=4*Math.ceil(o.length/3),r=new Uint8Array(n),a=0,i=0;a<o.length;){var l=Math.min(a+3,o.length),s=o.subarray(a,l);a+=3;for(var g=s[0]<<16|s[1]<<8|s[2],d=0;d<4&&i+d<n;d++){var v=g>>(3-d)*6&63;r[i+d]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charCodeAt(v)}i+=4}for(var m=n-1;m>=n-((3-o.length%3)%3||3);m--)r[m]=61;return(t=String).fromCharCode.apply(t,r)}export var watermark=function(e){var t=e.text,o=e.x,n=e.y,r=e.width,a=void 0===r?100:r,i=e.height,l=void 0===i?100:i,s=e.fontSize,g=e.angle,d=e.opacity,v=e.color;return"data:image/svg+xml;base64,"+stringToBase64Url('<svg xmlns="http://www.w3.org/2000/svg" width="'+a+'" height="'+l+'">\n <g>\n <title>Layer 1</title>\n <text x="'+(void 0===o?19.5:o)+'" y="'+(void 0===n?55:n)+'" text-anchor="middle" dominant-baseline="middle"\n stroke-opacity="'+(void 0===d?.1:d)+'" stroke="'+(void 0===v?"#000":v)+'" fill="none"\n transform="rotate('+(void 0===g?-45:g)+" "+a/2+" "+l/2+')"\n font-size="'+(void 0===s?14:s)+"\" 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'\">\n "+t+"\n </text>\n </g>\n </svg>")};
1
+ import{stringToBase64Url as o}from"@moneko/common";export var watermark=function(t){var i=t.text,e=t.x,a=t.y,n=t.width,r=void 0===n?100:n,d=t.height,m=void 0===d?100:d,v=t.fontSize,l=t.angle,s=t.opacity,f=t.color,g=t.fontFamily;return"data:image/svg+xml;base64,"+o('<svg width="'+r+'" height="'+m+'"><text text-anchor="middle" dominant-baseline="middle" fill="none" stroke-opacity="'+(void 0===s?.05:s)+'" stroke="'+(void 0===f?"#000":f)+'" x="'+(void 0===e?50:e)+'" y="'+(void 0===a?50:a)+'" font-size="'+(void 0===v?14:v)+'" font-family="'+(void 0===g?"PingFangSC-Ultralight,sans-serif":g)+'"\n transform="rotate('+(void 0===l?-45:l)+" "+r/2+" "+m/2+')">'+i+"</text></svg>")};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/core",
3
- "version": "2.0.20",
3
+ "version": "2.0.22",
4
4
  "description": "core",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -18,7 +18,7 @@
18
18
  "@emotion/css": "11.10.6",
19
19
  "@mapbox/rehype-prism": "0.8.0",
20
20
  "@mdx-js/loader": "2.3.0",
21
- "@moneko/common": "1.0.11",
21
+ "@moneko/common": "1.0.15",
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",
@@ -30,6 +30,14 @@ export type HtmlWebpackOption = HtmlWebpackPluginOptions & {
30
30
  [key: string]: string | null | boolean | number;
31
31
  }[];
32
32
  };
33
+ export interface Theme {
34
+ primaryColor?: string;
35
+ infoColor?: string;
36
+ successColor?: string;
37
+ processingColor?: string;
38
+ errorColor?: string;
39
+ warningColor?: string;
40
+ }
33
41
  export declare type ConfigType<T = 'tsc'> = {
34
42
  /** 渲染模式
35
43
  * @default 'csr'
@@ -105,6 +113,8 @@ export declare type ConfigType<T = 'tsc'> = {
105
113
  theme?: 'light' | 'dark';
106
114
  breakpoint?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
107
115
  };
116
+ /** 主题设置 */
117
+ theme?: Theme;
108
118
  /** 自定义 webpack module rules */
109
119
  moduleRules: RuleSetRule[];
110
120
  /** 解析js/ts前置的loader
@@ -567,7 +577,7 @@ export type SwcImportOnDemandTransform = Record<
567
577
  * const conf = {
568
578
  * importOnDemand: {
569
579
  * 'neko-ui': {
570
- * transform: 'neko-ui/es/${member}',
580
+ * transform: 'es/${member}',
571
581
  * memberTransformers: ['dashed_case']
572
582
  * }
573
583
  * }
@@ -585,8 +595,8 @@ export type SwcImportOnDemandTransform = Record<
585
595
  * const conf = {
586
596
  * importOnDemand: {
587
597
  * antd: {
588
- * transform: 'antd/es/${member}',
589
- * style: 'antd/es/${member}/style',
598
+ * transform: 'es/${member}',
599
+ * style: 'es/${member}/style',
590
600
  * memberTransformers: ['dashed_case']
591
601
  * }
592
602
  * }