@moneko/core 2.0.1 → 2.0.2-1.1
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/coverage.js +1 -1
- package/build/done.d.ts +8 -0
- package/build/done.js +1 -0
- package/build/envFlags.d.ts +1 -3
- package/build/envFlags.js +1 -1
- package/build/has-pkg.js +1 -1
- package/build/html-add-entry-attr.js +1 -1
- package/build/html-plugin-option.d.ts +2 -2
- package/build/html-plugin-option.js +1 -1
- package/build/index.d.ts +2 -0
- package/build/index.js +1 -0
- package/build/minify.js +1 -1
- package/build/modifyVars.js +1 -1
- package/build/module-federation.d.ts +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/resolver-sync.js +1 -1
- package/build/seo.d.ts +1 -0
- package/build/seo.js +1 -0
- package/build/swcrc.js +1 -1
- package/build/tsloader.config.js +1 -1
- package/build/utils.js +1 -1
- package/build/webpack.common.d.ts +1 -0
- package/build/webpack.common.js +1 -1
- package/build/webpack.dev.js +1 -1
- package/build/webpack.prod.js +1 -1
- package/build/yarn-argv.js +1 -1
- package/lib/components/app-router.d.ts +8 -0
- package/lib/components/app-router.js +1 -0
- package/lib/components/fallback-comp.js +1 -0
- package/lib/components/fallback.js +1 -0
- package/lib/components/{layout-menu/index.d.ts → layout-menu.d.ts} +1 -2
- package/lib/components/layout-menu.js +1 -0
- package/lib/index.d.ts +13 -7
- package/lib/index.js +1 -2
- package/lib/localizable.d.ts +53 -0
- package/lib/localizable.js +1 -0
- package/lib/menu.d.ts +71 -0
- package/lib/menu.js +1 -0
- package/lib/packages/back-stage/app.d.ts +2 -2
- package/lib/packages/back-stage/app.js +1 -2
- package/lib/packages/back-stage/bootstrap.d.ts +1 -1
- package/lib/packages/back-stage/bootstrap.js +1 -2
- package/lib/packages/back-stage/index.d.ts +0 -1
- package/lib/packages/back-stage/index.js +1 -2
- package/lib/packages/back-stage/layout.d.ts +5 -0
- package/lib/packages/back-stage/layout.js +1 -0
- package/lib/packages/library/app.js +1 -2
- package/lib/packages/library/bootstrap.d.ts +1 -1
- package/lib/packages/library/bootstrap.js +1 -2
- package/lib/packages/library/index.d.ts +0 -1
- package/lib/packages/library/index.js +1 -2
- package/lib/packages/mobile/app.js +1 -2
- package/lib/packages/mobile/index.d.ts +0 -2
- package/lib/packages/mobile/index.js +1 -2
- package/lib/packages/single-spa/app.d.ts +6 -5
- package/lib/packages/single-spa/app.js +1 -2
- package/lib/packages/single-spa/bootstrap.d.ts +0 -1
- package/lib/packages/single-spa/bootstrap.js +1 -2
- package/lib/packages/single-spa/index.d.ts +0 -1
- package/lib/packages/single-spa/index.js +1 -2
- package/lib/packages/single-spa/public-path.js +1 -2
- package/lib/packages/site/app.js +1 -2
- package/lib/packages/site/bootstrap.d.ts +1 -1
- package/lib/packages/site/bootstrap.js +1 -2
- package/lib/packages/site/index.d.ts +0 -1
- package/lib/packages/site/index.js +1 -2
- package/lib/prefix/prefix-remote-react-refresh.js +1 -2
- package/lib/prefix/react-router-dom.js +1 -2
- package/lib/react-router-dom/link.d.ts +9 -0
- package/lib/react-router-dom/link.js +1 -0
- package/lib/{hooks/navgate.d.ts → react-router-dom/use-navgate.d.ts} +1 -1
- package/lib/react-router-dom/use-navgate.js +1 -0
- package/lib/router/index.d.ts +17 -6
- package/lib/router/index.js +1 -2
- package/lib/styles/normalize.css +51 -45
- package/lib/styles/variables.css +30 -35
- package/lib/utils/index.d.ts +2 -1
- package/lib/utils/index.js +1 -2
- package/lib/utils/refresh-rem.js +1 -2
- package/package.json +22 -28
- package/typings/global.d.ts +161 -59
- package/build/color-palette.d.ts +0 -2
- package/build/color-palette.js +0 -1
- package/build/variables.d.ts +0 -21
- package/build/variables.js +0 -1
- package/lib/components/app-router/index.d.ts +0 -9
- package/lib/components/app-router/index.js +0 -2
- package/lib/components/app-router/index.js.map +0 -1
- package/lib/components/fallback/index.js +0 -2
- package/lib/components/fallback/index.js.map +0 -1
- package/lib/components/fallback-comp/index.js +0 -2
- package/lib/components/fallback-comp/index.js.map +0 -1
- package/lib/components/layout-menu/index.global.less +0 -40
- package/lib/components/layout-menu/index.js +0 -2
- package/lib/components/layout-menu/index.js.map +0 -1
- package/lib/hooks/navgate.js +0 -2
- package/lib/hooks/navgate.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/packages/back-stage/app.js.map +0 -1
- package/lib/packages/back-stage/bootstrap.js.map +0 -1
- package/lib/packages/back-stage/index.js.map +0 -1
- package/lib/packages/back-stage/layout/index.d.ts +0 -3
- package/lib/packages/back-stage/layout/index.js +0 -2
- package/lib/packages/back-stage/layout/index.js.map +0 -1
- package/lib/packages/back-stage/layout/index.less +0 -91
- package/lib/packages/back-stage/models/app-program.d.ts +0 -24
- package/lib/packages/back-stage/models/app-program.js +0 -2
- package/lib/packages/back-stage/models/app-program.js.map +0 -1
- package/lib/packages/library/app.js.map +0 -1
- package/lib/packages/library/bootstrap.js.map +0 -1
- package/lib/packages/library/index.js.map +0 -1
- package/lib/packages/mobile/app.js.map +0 -1
- package/lib/packages/mobile/index.js.map +0 -1
- package/lib/packages/single-spa/app.js.map +0 -1
- package/lib/packages/single-spa/bootstrap.js.map +0 -1
- package/lib/packages/single-spa/index.js.map +0 -1
- package/lib/packages/single-spa/public-path.js.map +0 -1
- package/lib/packages/site/app.js.map +0 -1
- package/lib/packages/site/bootstrap.js.map +0 -1
- package/lib/packages/site/index.js.map +0 -1
- package/lib/prefix/i18n-hooks.d.ts +0 -1
- package/lib/prefix/i18n-hooks.js +0 -2
- package/lib/prefix/i18n-hooks.js.map +0 -1
- package/lib/prefix/mini-idc.d.ts +0 -1
- package/lib/prefix/mini-idc.js +0 -2
- package/lib/prefix/mini-idc.js.map +0 -1
- package/lib/prefix/prefix-remote-react-refresh.js.map +0 -1
- package/lib/prefix/react-router-dom.js.map +0 -1
- package/lib/router/index.js.map +0 -1
- package/lib/styles/animation.css +0 -58
- package/lib/utils/env.d.ts +0 -0
- package/lib/utils/env.js +0 -2
- package/lib/utils/env.js.map +0 -1
- package/lib/utils/fontloader.d.ts +0 -1
- package/lib/utils/fontloader.js +0 -2
- package/lib/utils/fontloader.js.map +0 -1
- package/lib/utils/index.js.map +0 -1
- package/lib/utils/refresh-rem.js.map +0 -1
- /package/lib/components/{fallback-comp/index.d.ts → fallback-comp.d.ts} +0 -0
- /package/lib/components/{fallback/index.d.ts → fallback.d.ts} +0 -0
package/typings/global.d.ts
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
/* eslint-disable no-unused-vars */
|
|
2
|
-
import type { Options } from 'ts-import-plugin';
|
|
3
|
-
import type { RuleSetRule, WebpackPluginInstance, Configuration } from 'webpack';
|
|
4
|
-
import type { ProxyArray, ProxyConfigArray, ProxyConfigMap } from 'webpack-dev-server';
|
|
5
|
-
import type { JsMinifyOptions } from '@swc/core';
|
|
6
|
-
import type { MinifyOptions } from 'terser';
|
|
7
2
|
import { Options as AssetHtmlOptions } from 'add-asset-html-webpack-plugin';
|
|
8
3
|
import { Options as HtmlWebpackPluginOptions } from 'html-webpack-plugin';
|
|
9
|
-
import type { WebpackConfiguration } from 'webpack-dev-server';
|
|
10
|
-
import type { Config as SwcConfig } from '@swc/core';
|
|
11
4
|
import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer';
|
|
5
|
+
import type { JsMinifyOptions, Config as SwcConfig } from '@swc/core';
|
|
6
|
+
import type { MinifyOptions } from 'terser';
|
|
7
|
+
import type { Options } from 'ts-import-plugin';
|
|
8
|
+
import type { RuleSetRule, WebpackPluginInstance, Configuration } from 'webpack';
|
|
9
|
+
import type {
|
|
10
|
+
ProxyArray,
|
|
11
|
+
ProxyConfigArray,
|
|
12
|
+
ProxyConfigMap,
|
|
13
|
+
WebpackConfiguration,
|
|
14
|
+
} from 'webpack-dev-server';
|
|
12
15
|
|
|
13
16
|
export type MinifierType = 'swc' | 'terser';
|
|
14
17
|
export declare type AppType =
|
|
@@ -20,10 +23,21 @@ export declare type AppType =
|
|
|
20
23
|
| 'library';
|
|
21
24
|
export type TerserOptions = MinifyOptions;
|
|
22
25
|
export type SwcOptions = JsMinifyOptions;
|
|
26
|
+
export type HtmlWebpackOption = HtmlWebpackPluginOptions & {
|
|
27
|
+
tags?: {
|
|
28
|
+
textContent?: string;
|
|
29
|
+
tag?: string;
|
|
30
|
+
[key: string]: string | null | boolean | number;
|
|
31
|
+
}[];
|
|
32
|
+
};
|
|
23
33
|
export declare type ConfigType<T = 'tsc'> = {
|
|
24
|
-
/** 渲染模式
|
|
34
|
+
/** 渲染模式
|
|
35
|
+
* @default 'csr'
|
|
36
|
+
*/
|
|
25
37
|
mode: 'ssr' | 'csr';
|
|
26
|
-
/** 编译器
|
|
38
|
+
/** 编译器
|
|
39
|
+
* @default 'swc'
|
|
40
|
+
*/
|
|
27
41
|
compiler: 'tsc' | 'swc';
|
|
28
42
|
/** swc 配置项,仅当编译器为 swc 时有效 */
|
|
29
43
|
swcrc?: SwcConfig | ((isDev: boolean) => SwcConfig);
|
|
@@ -43,24 +57,23 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
43
57
|
entry?: Record<string, string>;
|
|
44
58
|
/** 压缩配置 */
|
|
45
59
|
minifier: {
|
|
60
|
+
/**
|
|
61
|
+
* @default 'swc'
|
|
62
|
+
*/
|
|
46
63
|
type?: MinifierType;
|
|
47
64
|
options?: SwcOptions | TerserOptions;
|
|
65
|
+
/**
|
|
66
|
+
* @default 'parcelCss'
|
|
67
|
+
*/
|
|
48
68
|
css?: 'cssnano' | 'parcelCss';
|
|
49
69
|
};
|
|
50
70
|
/** 环境变量, 可通过 process.env 获取 */
|
|
51
71
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
52
72
|
env?: Record<string, any>;
|
|
53
|
-
/**
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
programName?: string;
|
|
58
|
-
/** 持久化数据是否加密 */
|
|
59
|
-
encrypt?: boolean;
|
|
60
|
-
/** 自定义RSA加密密钥 */
|
|
61
|
-
encryptKey?: string;
|
|
62
|
-
}
|
|
63
|
-
| false;
|
|
73
|
+
/** persistence 持久化数据使用的key, 为 false 时关闭持久化
|
|
74
|
+
* @default false
|
|
75
|
+
**/
|
|
76
|
+
persistence?: string | false;
|
|
64
77
|
devtool?: Configuration['devtool'];
|
|
65
78
|
sourceMap?: SourceMapDevToolPluginOptions | false;
|
|
66
79
|
/** 路径别名映射 */
|
|
@@ -69,15 +82,21 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
69
82
|
};
|
|
70
83
|
/** 根路由 */
|
|
71
84
|
routeBaseName: string;
|
|
72
|
-
/**
|
|
85
|
+
/** 输出目录前置路径
|
|
86
|
+
* @default /
|
|
87
|
+
* */
|
|
73
88
|
publicPath: string;
|
|
74
|
-
/** 设计图尺寸
|
|
89
|
+
/** 设计图尺寸
|
|
90
|
+
* @default 1680
|
|
91
|
+
* */
|
|
75
92
|
designSize: number;
|
|
76
93
|
/** 自定义降级组件 */
|
|
77
94
|
fallbackCompPath?: string | null;
|
|
78
95
|
/** less 全局变量 */
|
|
79
96
|
modifyVars: Record<string, string>;
|
|
80
|
-
/** 类名前缀
|
|
97
|
+
/** 类名前缀
|
|
98
|
+
* @default n
|
|
99
|
+
*/
|
|
81
100
|
prefixCls?: string;
|
|
82
101
|
/** 左侧菜单栏, 不需要时设置为 false, 仅 type: back-stage 时有效 */
|
|
83
102
|
layoutSider:
|
|
@@ -108,9 +127,7 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
108
127
|
/** node_modules中, 需要开启 cssModules 的模块 */
|
|
109
128
|
cssModules: string[];
|
|
110
129
|
/** 按需引入 */
|
|
111
|
-
importOnDemand: T extends 'tsc'
|
|
112
|
-
? Partial<Options>[]
|
|
113
|
-
: Record<string, SwcImportOnDemandTransform | SwcImportOnDemandConfig>;
|
|
130
|
+
importOnDemand: T extends 'tsc' ? Partial<Options>[] : SwcImportOnDemandTransform;
|
|
114
131
|
/** 开发服务器代理 */
|
|
115
132
|
proxy: ProxyArray | ProxyConfigArray | ProxyConfigMap;
|
|
116
133
|
/** 自定义缓存目录,为 false 时,不使用缓存 */
|
|
@@ -124,17 +141,28 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
124
141
|
compress?: boolean;
|
|
125
142
|
};
|
|
126
143
|
/** HtmlWebpackPlugin Option */
|
|
127
|
-
htmlPluginOption:
|
|
128
|
-
tags?: {
|
|
129
|
-
textContent?: string;
|
|
130
|
-
tag?: string;
|
|
131
|
-
[key: string]: string | null | boolean | number;
|
|
132
|
-
}[];
|
|
133
|
-
};
|
|
144
|
+
htmlPluginOption: HtmlWebpackOption;
|
|
134
145
|
/** 自定义插入 html 的 js 和 css */
|
|
135
146
|
assetHtml: AssetHtmlOptions[];
|
|
136
|
-
/** 路由模式
|
|
147
|
+
/** 路由模式
|
|
148
|
+
* @description
|
|
149
|
+
* 当在不支持 browserRouter 的环境(GitHub pages)使用 browserRouter,
|
|
150
|
+
* 则需要添加设置 fixBrowserRouter
|
|
151
|
+
* @default 'browser'
|
|
152
|
+
* */
|
|
137
153
|
routerMode: 'hash' | 'browser' | 'memory';
|
|
154
|
+
/** 在不支持 browserRouter 的环境(GitHub pages)使用 browserRouter
|
|
155
|
+
*/
|
|
156
|
+
fixBrowserRouter?:
|
|
157
|
+
| false
|
|
158
|
+
| {
|
|
159
|
+
/** 在不支持 browserRouter 的环境(GitHub pages)使用 browserRouter
|
|
160
|
+
* @default 1
|
|
161
|
+
*/
|
|
162
|
+
pathSegmentsToKeep: number;
|
|
163
|
+
/** 文件输出路径 */
|
|
164
|
+
path?: string;
|
|
165
|
+
};
|
|
138
166
|
/** webpack 插件 */
|
|
139
167
|
plugins: WebpackPluginInstance[];
|
|
140
168
|
/** 对生产chunk进行拆分 */
|
|
@@ -147,8 +175,6 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
147
175
|
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
148
176
|
name?: string | Function;
|
|
149
177
|
};
|
|
150
|
-
/** 通过Web字体加载加载的字体 */
|
|
151
|
-
webFontLoader: string[];
|
|
152
178
|
/** 编译输出路径 */
|
|
153
179
|
output?: Omit<WebpackConfiguration['output'], 'publishPath'> | string;
|
|
154
180
|
/** 模块联邦 */
|
|
@@ -163,6 +189,25 @@ export declare type ConfigType<T = 'tsc'> = {
|
|
|
163
189
|
fonts?: string[];
|
|
164
190
|
};
|
|
165
191
|
bundleAnalyzer: BundleAnalyzerPlugin.Options;
|
|
192
|
+
/** seo优化
|
|
193
|
+
* @default false
|
|
194
|
+
*/
|
|
195
|
+
seo:
|
|
196
|
+
| {
|
|
197
|
+
/** 域名 */
|
|
198
|
+
domain: string;
|
|
199
|
+
/** 添加 .nojekyll 文件
|
|
200
|
+
* @description 告诉网站部署平台当前网站不是基于 Jekyll 构建的,
|
|
201
|
+
* 不要忽略掉下划线开头的文件和文件夹
|
|
202
|
+
* @default true
|
|
203
|
+
**/
|
|
204
|
+
nojekyll?: boolean;
|
|
205
|
+
/** 文件输出路径 */
|
|
206
|
+
path?: string;
|
|
207
|
+
}
|
|
208
|
+
| false;
|
|
209
|
+
/** 📦 打包完成 */
|
|
210
|
+
done?: () => void;
|
|
166
211
|
};
|
|
167
212
|
export declare interface ModuleFederationOption {
|
|
168
213
|
/** 模块名称,唯一性,不能重名 */
|
|
@@ -310,14 +355,17 @@ export type ProgramInfoType = {
|
|
|
310
355
|
/** 应用类型 */
|
|
311
356
|
type: 'mobile' | 'site' | 'back-stage' | 'single-spa' | 'library';
|
|
312
357
|
/** 开发者 */
|
|
313
|
-
author:
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
| string;
|
|
358
|
+
author: {
|
|
359
|
+
name: string;
|
|
360
|
+
url?: string;
|
|
361
|
+
email?: string;
|
|
362
|
+
};
|
|
319
363
|
/** 存储库 */
|
|
320
|
-
repository:
|
|
364
|
+
repository: {
|
|
365
|
+
type?: string;
|
|
366
|
+
url?: string;
|
|
367
|
+
directory?: string;
|
|
368
|
+
};
|
|
321
369
|
/** 路由模式 */
|
|
322
370
|
routerMode: 'hash' | 'browser' | 'memory';
|
|
323
371
|
/** 根路由 */
|
|
@@ -359,7 +407,7 @@ export type ProjectCoverageType = {
|
|
|
359
407
|
classes: string;
|
|
360
408
|
};
|
|
361
409
|
|
|
362
|
-
declare interface OptimizationSplitChunksOptions {
|
|
410
|
+
export declare interface OptimizationSplitChunksOptions {
|
|
363
411
|
/**
|
|
364
412
|
* Sets the name delimiter for created chunks.
|
|
365
413
|
*/
|
|
@@ -489,22 +537,76 @@ declare interface OptimizationSplitChunksOptions {
|
|
|
489
537
|
usedExports?: boolean;
|
|
490
538
|
}
|
|
491
539
|
|
|
492
|
-
export
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
540
|
+
export type MemberTransformer =
|
|
541
|
+
/** 帕斯卡拼写法(大驼峰): 所有单词的首字母大写,然后直接连接起来,单词之间没有连接符 */
|
|
542
|
+
| 'pascal_case'
|
|
543
|
+
/** 骆驼拼写法(小驼峰): 第一个单词的首字母小写, 后续所有单词的首字母大写,然后直接连接起来,单词之间没有连接符 */
|
|
544
|
+
| 'camel_case'
|
|
545
|
+
/** 连字符拼写法: 各个单词或缩写之间以`-`做间隔 */
|
|
546
|
+
| 'kebab_case'
|
|
547
|
+
/** 破折号式: 每个单词全小写或全大写,多单词使用`-`隔开 */
|
|
548
|
+
| 'dashed_case'
|
|
549
|
+
/** 蛇形命名: 每个单词全小写或全大写,多单词使用`_`隔开 */
|
|
550
|
+
| 'snake_case'
|
|
551
|
+
/** 大写 */
|
|
552
|
+
| 'upper_case'
|
|
553
|
+
/** 最后大写 */
|
|
554
|
+
| 'upper_first'
|
|
555
|
+
/** 小写 */
|
|
556
|
+
| 'lower_case'
|
|
557
|
+
/** 最后小写 */
|
|
558
|
+
| 'lower_first';
|
|
507
559
|
|
|
560
|
+
export type SwcImportOnDemandTransform = Record<
|
|
561
|
+
/** 库名 */
|
|
562
|
+
string,
|
|
563
|
+
{
|
|
564
|
+
/** 要使用的库名称,而不是导入语句中指定的库名称。`${member}` 是替换的成员
|
|
565
|
+
* @example
|
|
566
|
+
* ```javascript
|
|
567
|
+
* const conf = {
|
|
568
|
+
* importOnDemand: {
|
|
569
|
+
* 'neko-ui': {
|
|
570
|
+
* transform: 'es/${member}',
|
|
571
|
+
* memberTransformers: ['dashed_case']
|
|
572
|
+
* }
|
|
573
|
+
* }
|
|
574
|
+
* }
|
|
575
|
+
* // 以下代码将会按照预期进行转换
|
|
576
|
+
* import { Button } from 'neko-ui';
|
|
577
|
+
* // to
|
|
578
|
+
* import Button from 'neko-ui/es/button'
|
|
579
|
+
* ```
|
|
580
|
+
*/
|
|
581
|
+
transform: string;
|
|
582
|
+
/** 默认值:`false`, 设置转换时需要单独导入的样式,`${member}` 是替换的成员
|
|
583
|
+
* @example
|
|
584
|
+
* ```javascript
|
|
585
|
+
* const conf = {
|
|
586
|
+
* importOnDemand: {
|
|
587
|
+
* antd: {
|
|
588
|
+
* transform: 'es/${member}',
|
|
589
|
+
* style: 'es/${member}/style',
|
|
590
|
+
* memberTransformers: ['dashed_case']
|
|
591
|
+
* }
|
|
592
|
+
* }
|
|
593
|
+
* }
|
|
594
|
+
* // 以下代码将会按照预期进行转换
|
|
595
|
+
* import { BackTop } from 'antd';
|
|
596
|
+
* // to
|
|
597
|
+
* import BackTop from 'antd/es/back-top';
|
|
598
|
+
* import 'antd/es/back-top/style';
|
|
599
|
+
* ```
|
|
600
|
+
*/
|
|
601
|
+
style?: string | boolean;
|
|
602
|
+
/** 默认值:`false`, 当设置为true时,将保留 `import { Button }` 语法,而不是转换为 `import Button` */
|
|
603
|
+
skipDefaultConversion?: boolean;
|
|
604
|
+
/** 默认值:`true`, 当遇到会导致导入整个模块时,是否抛出 */
|
|
605
|
+
preventFullImport?: boolean;
|
|
606
|
+
/** 默认值:`[]`, 成员转换规则 */
|
|
607
|
+
memberTransformers?: MemberTransformer[];
|
|
608
|
+
}
|
|
609
|
+
>;
|
|
508
610
|
declare global {
|
|
509
611
|
// eslint-disable-next-line vars-on-top,no-var
|
|
510
612
|
var NEKOCLICONFIG: CommomType;
|
package/build/color-palette.d.ts
DELETED
package/build/color-palette.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return _default}});var _tinycolor2=_interopRequireDefault(require("tinycolor2"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var hueStep=2;var saturationStep=.16;var saturationStep2=.05;var brightnessStep1=.05;var brightnessStep2=.15;var lightColorCount=5;var darkColorCount=4;var getHue=function getHue(hsv,i,isLight){var hue;if(hsv.h>=60&&hsv.h<=240){hue=isLight?hsv.h-hueStep*i:hsv.h+hueStep*i}else{hue=isLight?hsv.h+hueStep*i:hsv.h-hueStep*i}if(hue<0){hue+=360}else if(hue>=360){hue-=360}return Math.round(hue)};var getSaturation=function getSaturation(hsv,i,isLight){var saturation;if(isLight){saturation=hsv.s-saturationStep*i}else if(i===darkColorCount){saturation=hsv.s+saturationStep}else{saturation=hsv.s+saturationStep2*i}if(saturation>1){saturation=1}if(isLight&&i===lightColorCount&&saturation>.1){saturation=.1}if(saturation<.06){saturation=.06}return Number(saturation.toFixed(2))};var getValue=function getValue(hsv,i,isLight){var value;if(isLight){value=hsv.v+brightnessStep1*i}else{value=hsv.v-brightnessStep2*i}if(value>1){value=1}return Number(value.toFixed(2))};var colorPalette=function colorPalette(color,index){var isLight=index<=6;var hsv=(0,_tinycolor2.default)(color).toHsv();var i=isLight?lightColorCount+1-index:index-lightColorCount-1;return(0,_tinycolor2.default)({h:getHue(hsv,i,isLight),s:getSaturation(hsv,i,isLight),v:getValue(hsv,i,isLight)}).toHexString()};var _default=colorPalette;
|
package/build/variables.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export declare const menuDarkBg = "#1C222E";
|
|
2
|
-
export declare const getColorPalette: (name: string, color: string, type?: 'light' | 'dark', bg?: string) => {
|
|
3
|
-
[x: string]: string;
|
|
4
|
-
};
|
|
5
|
-
export type ThemeColorOptions<T = 'light' | 'dark'> = {
|
|
6
|
-
primary?: string;
|
|
7
|
-
warning?: string;
|
|
8
|
-
error?: string;
|
|
9
|
-
success?: string;
|
|
10
|
-
componentBackground?: string;
|
|
11
|
-
tableHeaderBg?: string;
|
|
12
|
-
type?: T;
|
|
13
|
-
};
|
|
14
|
-
export declare const setThemeColor: (options: ThemeColorOptions) => void;
|
|
15
|
-
export declare const rootStatusColor: {
|
|
16
|
-
[x: string]: string;
|
|
17
|
-
};
|
|
18
|
-
export declare const rootStatusColorDark: {
|
|
19
|
-
[x: string]: string;
|
|
20
|
-
};
|
|
21
|
-
export declare const rootVariables: string;
|
package/build/variables.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
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,{menuDarkBg:function(){return menuDarkBg},getColorPalette:function(){return getColorPalette},setThemeColor:function(){return setThemeColor},rootStatusColor:function(){return rootStatusColor},rootStatusColorDark:function(){return rootStatusColorDark},rootVariables:function(){return rootVariables}});var _tinycolor2=_interopRequireDefault(require("tinycolor2"));var _colorPalette=_interopRequireDefault(require("./color-palette"));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 menuDarkBg="#1C222E";var getColorPalette=function(name,color){var type=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"light",bg=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"#fff";var vars={};if(type==="light"){var i=1;while(i<=7){vars["--".concat(name,"-").concat(i)]=(0,_colorPalette.default)(color,i);i++}}else{var _obj;Object.assign(vars,(_obj={},_defineProperty(_obj,"--".concat(name,"-1"),_tinycolor2.default.mix((0,_tinycolor2.default)((0,_colorPalette.default)(color,8)),bg,.15).toHexString()),_defineProperty(_obj,"--".concat(name,"-2"),_tinycolor2.default.mix((0,_tinycolor2.default)((0,_colorPalette.default)(color,7)),bg,.25).toHexString()),_defineProperty(_obj,"--".concat(name,"-3"),_tinycolor2.default.mix(color,bg,.3).toHexString()),_defineProperty(_obj,"--".concat(name,"-4"),_tinycolor2.default.mix(color,bg,.45).toHexString()),_defineProperty(_obj,"--".concat(name,"-5"),_tinycolor2.default.mix(color,bg,.65).toHexString()),_defineProperty(_obj,"--".concat(name,"-6"),color),_defineProperty(_obj,"--".concat(name,"-7"),_tinycolor2.default.mix((0,_tinycolor2.default)((0,_colorPalette.default)(color,5)),bg,.9).toHexString()),_obj))}var _obj1;return _objectSpreadProps(_objectSpread({},vars),(_obj1={},_defineProperty(_obj1,"--".concat(name,"-color-deprecated-bg"),"var(--".concat(name,"-1)")),_defineProperty(_obj1,"--".concat(name,"-color-deprecated-border"),"var(--".concat(name,"-3)")),_defineProperty(_obj1,"--".concat(name,"-color-hover"),"var(--".concat(name,"-5)")),_defineProperty(_obj1,"--".concat(name,"-color"),color),_defineProperty(_obj1,"--".concat(name,"-color-outline"),(0,_tinycolor2.default)(color).setAlpha(.2).toRgbString()),_defineProperty(_obj1,"--".concat(name,"-color-active"),"var(--".concat(name,"-7)")),_obj1))};var keyword=["primary","warning","error","success"];var setThemeColor=function(options){keyword.forEach(function(name){var color=options[name];if(color){var colors=getColorPalette(name,color,options.type,options.componentBackground);if(name==="primary"||name==="error"){Object.assign(colors,_defineProperty({},name==="primary"?"--menu-dark-item-active-bg":"--menu-dark-item-active-danger-bg",_tinycolor2.default.mix((0,_colorPalette.default)(color,8),menuDarkBg||"#141414",.15).toRgbString()))}for(var key in colors){if(Object.prototype.hasOwnProperty.call(colors,key)){var newColor=colors[key];if(getComputedStyle(document.documentElement).getPropertyValue(key)!==newColor){document.documentElement.style.setProperty(key,newColor)}}}}});if(options.tableHeaderBg){document.documentElement.style.setProperty("--table-header-bg",options.tableHeaderBg)}};var rootStatusColor=_objectSpread({},getColorPalette("normal","rgba(0, 0, 0, 0.85)","light","#fff"),getColorPalette("primary","#1890ff","light","#fff"),getColorPalette("success","#52c41a","light","#fff"),getColorPalette("warning","#faad14","light","#fff"),getColorPalette("error","#ff4d4f","light","#fff"));var rootStatusColorVariables="";Object.entries(rootStatusColor).forEach(function(e){rootStatusColorVariables+="".concat(e.join(": "),";\n")});var rootStatusColorDark=_objectSpread({},getColorPalette("normal","rgba(255, 255, 255, 0.85)","dark","#141414"),getColorPalette("primary","#177ddc","dark","#141414"),getColorPalette("success","#49aa19","dark","#141414"),getColorPalette("warning","#d89614","dark","#141414"),getColorPalette("error","#a61d24","dark","#141414"));var rootStatusColorDarkVariables="";Object.entries(rootStatusColorDark).forEach(function(e){rootStatusColorDarkVariables+="".concat(e.join(": "),";\n")});var rootVariables="\n :root {\n ".concat(rootStatusColorVariables,"\n }\n [data-theme='dark'] {\n ").concat(rootStatusColorDarkVariables,"\n }\n");
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { ReactNode } from 'react';
|
|
3
|
-
import type { RouterProps } from '../../router';
|
|
4
|
-
interface AppRouterProps {
|
|
5
|
-
router: RouterProps[];
|
|
6
|
-
fallback?: ReactNode;
|
|
7
|
-
}
|
|
8
|
-
declare const _default: React.NamedExoticComponent<AppRouterProps>;
|
|
9
|
-
export default _default;
|
|
@@ -1,2 +0,0 @@
|
|
|
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,{Fragment as ReactFragment,Suspense,cloneElement,createElement,memo,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),cloneElement(_children,{path:name,selfUrl:id}))};var existKeepAlive=false,Fragment=ReactFragment;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,_extends({},aliveProps),createElement(_.element,_.props))}if(_.element){_.element=React.createElement(Suspense,{fallback:r.fallback||fallback},createElement(_.element,_.props))}if(Array.isArray(_.children)){_.children=prefixRouter(_.children)}return _})},[fallback]);var routers=useRoutes(prefixRouter(router));return React.createElement(Fragment,null,routers)};export default memo(AppRoute,function(pre,next){return isEqual(pre.router,next.router)});
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/app-router/index.tsx"],"sourcesContent":["import React, {\n FC,\n Fragment as ReactFragment,\n Suspense,\n cloneElement,\n createElement,\n memo,\n useCallback,\n useEffect,\n} 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 {cloneElement(_children, {\n path: name,\n selfUrl: id,\n })}\n </KeepAlive>\n );\n};\n\ninterface AppRouterProps {\n router: RouterProps[];\n fallback?: ReactNode;\n}\nlet existKeepAlive = false,\n Fragment: typeof ReactFragment | typeof AliveScope = ReactFragment;\nconst AppRoute: 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 = (\n <PrefixKeepAlive {...aliveProps}>\n {createElement(_.element as string, _.props)}\n </PrefixKeepAlive>\n );\n // _.element = createElement(PrefixKeepAlive, aliveProps, _.element);\n }\n if (_.element) {\n _.element = (\n <Suspense fallback={r.fallback || fallback}>\n {/* {cloneElement(_.element as ReactElement, {\n path: _.key,\n })} */}\n {createElement(_.element as string, _.props)}\n </Suspense>\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 memo(AppRoute, (pre, next) => isEqual(pre.router, next.router));\n"],"names":["React","Fragment","ReactFragment","Suspense","cloneElement","createElement","memo","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","path","selfUrl","existKeepAlive","AppRoute","router","fallback","prefixRouter","list","map","r","_","alive","element","aliveProps","key","prototype","toString","call","props","Array","isArray","routers","pre","next"],"mappings":"yjDAAA,OAAOA,OAELC,YAAYC,aAAa,CACzBC,QAAQ,CACRC,YAAY,CACZC,aAAa,CACbC,IAAI,CACJC,WAAW,CACXC,SAAS,KACJ,OAAQ,AACf,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,MAC9Bd,aAAa8B,UAAW,CACvBC,KAAMlB,KACNmB,QAASb,EACX,GAGN,EAMA,IAAIc,eAAiB,KAAK,CACxBpC,SAAqDC,cACvD,IAAMoC,SAA+B,eAAyC,KAAtCC,aAAAA,6BAAQC,SAAAA,kCAAW,oBAAC3B,+BAC1D,IAAM4B,aAAelC,YACnB,SAACmC,KAAwB,CACvB,OAAOA,KAAKC,GAAG,CAAC,SAACC,EAAM,CACrB,IAAMC,EAAI,iBAAKD,GAEf,GAAI,CAAC,CAACC,EAAEC,KAAK,EAAI,CAACT,eAAgB,CAChCA,eAAiB,IAAI,CACrBpC,SAAWS,UACb,CAAC,AACD,GAAImC,EAAEE,OAAO,EAAI,CAAC,CAACF,EAAEC,KAAK,CAAE,CAC1B,IAAME,WAAsC,CAC1C/B,KAAM4B,EAAEI,GAAG,AACb,EAEA,GAAIlB,OAAOmB,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACP,EAAEC,KAAK,IAAM,kBAAmB,CACjEf,OAAOC,MAAM,CAACgB,WAAYH,EAAEC,KAAK,CACnC,CAAC,AACDD,EAAEE,OAAO,CACP,oBAAChC,4BAAoBiC,YAClB3C,cAAcwC,EAAEE,OAAO,CAAYF,EAAEQ,KAAK,EAIjD,CAAC,AACD,GAAIR,EAAEE,OAAO,CAAE,CACbF,EAAEE,OAAO,CACP,oBAAC5C,UAASqC,SAAUI,EAAEJ,QAAQ,EAAIA,UAI/BnC,cAAcwC,EAAEE,OAAO,CAAYF,EAAEQ,KAAK,EAGjD,CAAC,AAED,GAAIC,MAAMC,OAAO,CAACV,EAAE7B,QAAQ,EAAG,CAC7B6B,EAAE7B,QAAQ,CAAGyB,aAAaI,EAAE7B,QAAQ,CACtC,CAAC,AAED,OAAO6B,CACT,EACF,EACA,CAACL,SAAS,EAEZ,IAAMgB,QAAU/C,UAAUgC,aAAaF,SAEvC,OAAO,oBAACtC,cAAUuD,QACpB,CAEA,gBAAelD,KAAKgC,SAAU,SAACmB,IAAKC,aAAS5C,QAAQ2C,IAAIlB,MAAM,CAAEmB,KAAKnB,MAAM,GAAG"}
|
|
@@ -1,2 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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,40 +0,0 @@
|
|
|
1
|
-
.layout-menu.@{ant-prefix}-menu {
|
|
2
|
-
.@{ant-prefix}-menu-item:not(.@{ant-prefix}-menu-submenu-title),
|
|
3
|
-
.@{ant-prefix}-menu-submenu-title {
|
|
4
|
-
&::after {
|
|
5
|
-
border-right: @menu-item-active-border-width solid @menu-highlight-color !important;
|
|
6
|
-
transform: scaleY(1) translateX(-196px) !important;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
.@{ant-prefix}-menu {
|
|
12
|
-
&-horizontal {
|
|
13
|
-
line-height: 55px !important;
|
|
14
|
-
.@{ant-prefix}-menu-item:not(.@{ant-prefix}-menu-submenu-title),
|
|
15
|
-
.@{ant-prefix}-menu-submenu-title {
|
|
16
|
-
width: fit-content !important;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
&-dark &-item-selected &-dark&-dark:not(&-horizontal) &-item-selected,
|
|
21
|
-
&-dark &-submenu-open:not(&-submenu-selected),
|
|
22
|
-
&-dark &-item:hover {
|
|
23
|
-
color: #fff !important;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
&-dark &-submenu-open:not(&-submenu-selected) > &-submenu-title > &-submenu-arrow {
|
|
27
|
-
&::before,
|
|
28
|
-
&::after {
|
|
29
|
-
background: #fff !important;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&&-inline-collapsed > &-submenu > &-submenu-title {
|
|
34
|
-
.@{ant-prefix}-menu-item-icon,
|
|
35
|
-
.@{iconfont-css-prefix} {
|
|
36
|
-
font-size: 20px !important;
|
|
37
|
-
margin: 0 2px !important;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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":"g0FAAA,OAAOA,OAASC,WAAW,CAAEC,SAAS,CAAEC,OAAO,CAAEC,MAAM,CAAEC,QAAQ,KAAQ,OAAQ,AACjF,QAASC,WAAW,CAAEC,eAAe,KAAQ,kBAAmB,AAChE,QAASC,SAAS,KAAQ,YAAa,AACvC,QAASC,WAAW,CAAEC,WAAW,CAAEC,YAAY,KAAQ,aAAc,AACrE,QAASC,OAAO,KAAQ,gBAAiB,AACzC,QAASC,IAAI,KAAQ,MAAO,AAI5B,OAAO,qBAAsB,CAM7B,IAAMC,WAAwC,SAACC,KAAS,CACtD,IAAM,AAAEC,UAA4BD,KAA5BC,UAAcC,mCAAcF,MAA5BC,cACR,IAAME,SAAWT,cACjB,IAAMU,YAAcf,SACpB,IAAMgB,KAAOV,YACX,SAACW,aACC,AAACA,CAAAA,MAAMC,UAAU,CAACF,IAAI,EAAI,EAAE,AAAD,EAAGG,MAAM,CAAC,SAACC,SAAM,CAACA,EAAEC,QAAQ,IACzDd,cAEF,IAAMe,OAAShB,YACb,SAACW,cAA+CA,MAAMC,UAAU,CAACI,MAAM,EAAI,EAAE,EAC7Ef,cAEF,IAAMgB,SAAWrB,cACjB,IAAiBC,gCAAAA,qBAAVqB,OAAUrB,oBACjB,IAAM,AAAEsB,YAAgBrB,YAAhBqB,YACR,IAAMC,UAAYpB,YAAY,SAACW,cAAoBA,MAAMC,UAAU,CAACQ,SAAS,EAAEnB,cAC/E,IAAgCN,yBAAAA,SAAmB,EAAE,KAA9C0B,SAAyB1B,aAAf2B,YAAe3B,aAChC,IAAM4B,iBAAmBhC,YACvB,SAACiC,KAAmB,CAClB,GAAIA,OAASH,SAAU,CACrBC,YAAYE,KACd,CAAC,AACH,EACA,CAACH,SAAS,EAEZ,IAAMI,gBAAkBlC,YACtB,SAACmC,KAAmC,CAClC,OAAOA,KAAKC,GAAG,CAAC,SAACC,KAAS,CACxB,MAAO,CACLC,MAAOD,KAAKC,KAAK,CAAGV,YAAYS,KAAKC,KAAK,EAAID,KAAKC,KAAK,CACxDC,KAAMF,KAAKE,IAAI,CACfC,KAAMH,KAAKG,IAAI,CACfC,SAAUC,MAAMC,OAAO,CAACN,KAAKI,QAAQ,EAAIP,gBAAgBG,KAAKI,QAAQ,EAAIJ,KAAKI,QAAQ,CACvFG,SAAUP,KAAKO,QAAQ,CACvBC,IAAKR,KAAKQ,GAAG,CACbC,SAAUT,KAAKS,QAAQ,CACvBC,KAAMV,KAAKU,IAAI,CACfC,WAAYX,KAAKW,UAAU,AAC7B,CACF,EACF,EACA,CAACpB,YAAY,EAGf,IAAMqB,OAASjD,YACb,SAACkD,KAAmB,sBAIiC,CACjD,IAAMC,EAA2BC,WAAAA,YAAAA,KAAAA,EAAAA,GAAIC,IAAI,CAAC,SAAChB,MAASA,MAAAA,CAAAA,aAAAA,cAAAA,KAAAA,EAAAA,KAAMQ,GAAG,AAAD,IAAMK,KAAKI,OAAO,CAACC,EAAE,GAEjF,GAAIA,GAAKJ,CAAAA,UAAAA,WAAAA,KAAAA,EAAAA,EAAGV,QAAQ,AAAD,EAAGW,GAAKD,EAAEV,QAAQ,MAChCe,QAAUL,CAAE,AACnB,EARA,IAAIK,QACJ,IAAIJ,GAA+B,mBAAGjC,MAEtC,IAAK,IAAIoC,EAAIL,KAAKI,OAAO,CAACG,MAAM,CAAG,EAAGF,GAAK,EAAGA,aAO9C,GAAIC,gBAAAA,iBAAAA,KAAAA,EAAAA,QAASjB,IAAI,CAAE,CACjBb,SAAS,AAAC,GAAyBwB,OAAvBM,QAAQjB,IAAI,CAAC,YAAmB,OAATW,KAAKL,GAAG,EAC7C,CAAC,AACH,EACA,CAAC1B,KAAMO,SAAS,EAElB,IAAMgC,MAAQxD,QAAQ,kBAAMgC,gBAAgBf,OAAO,CAACe,gBAAiBf,KAAK,EAC1E,IAAMwC,OAASzD,QAAQ,kBAAMyB,OAAOiC,GAAG,CAAC,WAAW,CAACjC,OAAO,EAC3D,IAAM6B,QAAU/B,MAAM,CAACkC,QAAU,GAAG,CAEpC1D,UAAU,UAAM,CACd4D,OAAOC,MAAM,CAAC5C,YAAa,CACzBsC,QAAS1B,QACX,EACF,EAAG,CAACA,SAAS,EACb7B,UAAU,UAAM,CACd,GAAIuD,SAAW,CAACzC,WAAaG,YAAYsC,OAAO,CAAE,CAChD,IAAMO,IAAO,mBAAG7C,YAAYsC,OAAO,EAEnC,GAAI,CAACO,IAAIC,QAAQ,CAACL,QAAmBI,IAAIE,IAAI,CAACN,OAAkB,CAChE,GAAIH,QAAQU,QAAQ,EAAI,CAACH,IAAIC,QAAQ,CAACR,QAAQU,QAAQ,EAAGH,IAAIE,IAAI,CAACT,QAAQU,QAAQ,CAAE,CACpF,GAAI,CAACvD,QAAQO,YAAYsC,OAAO,CAAEO,KAAMhC,YAAYgC,IAAK,AAC3D,CAAC,AACH,EAAG,CAAChD,UAAWyC,QAASG,OAAO,EAE/B1D,UAAU,UAAM,CACd,GAAI0D,SAAW9B,UAAW,CACxBZ,SAAS,CACPuB,KAAM,0BACN2B,QAASR,MACX,EACF,CAAC,AACH,EAAG,CAAC9B,UAAWZ,SAAU0C,OAAO,EAChC,OACE,oBAAC/C,eACCwD,oBAAqBvC,UAAY,CAACA,UAAU,CAAG,EAAE,CACjDwC,aAAcxC,UAAY,CAACA,UAAU,CAAG,EAAE,CAC1CyC,gBAAiBxC,SAEjBA,SAAUf,UAAYwD,UAAYzC,QAAQ,CAC1C0C,aAAcxC,iBACdyC,KAAK,SACLC,QAASzB,OACT0B,kBAAmB,EACnBC,qBAAqB,QACrBC,MAAM,QACNnB,MAAOA,OACH1C,WACJ8D,UAAW,CAAC,cAAe9D,UAAU8D,SAAS,CAAC,CAACC,IAAI,CAAC,OAG3D,CAEA,gBAAehF,MAAMiF,IAAI,CAACnE,WAAY"}
|
package/lib/hooks/navgate.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=navgate.js.map
|
package/lib/hooks/navgate.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './prefix/react-router-dom.js';\nexport * from './prefix/i18n-hooks.js';\nexport * from './prefix/mini-idc.js';\nexport * from './utils';\nexport {\n matchUtil,\n router,\n onlyLoginRouter,\n myPkgs,\n myDemoKv,\n type ExampleModule,\n type RouterProps,\n type MyPkg,\n} from './router';\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const LayoutMenu = hasAntd ? require('./components/layout-menu').default : null;\nexport type { ConfigType, AppType, CommomType, ProgramInfoType } from '../typings/global';\nimport type { ConfigType, CommomType, CoverageType, ProjectCoverageType } from '../typings/global';\nexport type PartialConfigType<T = 'swc'> = Partial<ConfigType<T>>;\nexport type PartialCommomType<T = 'swc'> = Partial<CommomType<T>>;\n\ndeclare const projectCoverage: Record<string, CoverageType & Partial<ProjectCoverageType>>;\n\n/** 一些项目基本信息 */\nexport const projectBasicInfo = {\n projectName,\n providerConfig,\n programInfo,\n coverage: projectCoverage,\n};\n\n// export { default as colorPalette } from './utils/color-palette';\n// export { setThemeColor, getColorPalette, type ThemeColorOptions } from './styles/vars';\n"],"names":["matchUtil","router","onlyLoginRouter","myPkgs","myDemoKv","LayoutMenu","hasAntd","require","default","projectBasicInfo","projectName","providerConfig","programInfo","coverage","projectCoverage"],"mappings":"AAAA,WAAc,8BAA+B,AAC7C,YAAc,wBAAyB,AACvC,YAAc,sBAAuB,AACrC,YAAc,SAAU,AACxB,QACEA,SAAS,CACTC,MAAM,CACNC,eAAe,CACfC,MAAM,CACNC,QAAQ,KAIH,UAAW,AAElB,QAAO,IAAMC,WAAaC,QAAUC,QAAQ,4BAA4BC,OAAO,CAAG,IAAI,AAAC,AASvF,QAAO,IAAMC,iBAAmB,CAC9BC,YAAAA,YACAC,eAAAA,eACAC,YAAAA,YACAC,SAAUC,eACZ,CAAE"}
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/packages/back-stage/bootstrap.tsx"],"sourcesContent":["import '../../utils/fontloader';\nimport React from 'react';\nimport App from './app';\nimport { I18nProvider } from 'i18n-hooks';\nimport { Provider, rootStore } from 'mini-idc';\nimport { isFunction } from '@moneko/common';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nconst Main = () => (\n <I18nProvider>\n <Provider store={rootStore}>\n <App />\n </Provider>\n </I18nProvider>\n);\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <Main />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<Main />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<Main />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","App","I18nProvider","Provider","rootStore","isFunction","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","Main","store","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,MAAO,wBAAyB,AAChC,QAAOA,UAAW,OAAQ,AAC1B,QAAOC,QAAS,OAAQ,AACxB,QAASC,YAAY,KAAQ,YAAa,AAC1C,QAASC,QAAQ,CAAEC,SAAS,KAAQ,UAAW,AAC/C,QAASC,UAAU,KAAQ,gBAAiB,CAE5C,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAE5E,IAAME,aAAeD,QAAQE,cAE7B,IAAMC,QAAUC,WAAWZ,MAAMW,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,IAAMC,KAAO,kBACX,oBAACd,kBACC,oBAACC,UAASc,MAAOb,WACf,oBAACH,aAKP,GAAIU,SAAW,GAAI,CACjB,GAAIN,WAAWC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EAAG,CACnCZ,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGb,aAAac,WAAW,CAACV,UAAW,oBAACG,WAC7D,KAAO,CACLK,OAAOC,YAAY,CAAGb,aAAae,UAAU,CAACX,WAC9CQ,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAACT,WAC9B,CAAC,AACD,GAAIX,WAAWC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUoB,KAAK,EAAG,CAC/BpB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUoB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAIrB,WAAWC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EAAG,CACnCZ,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUY,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGnB,aAAagB,MAAM,CAAGhB,aAAaoB,OAAO,CAEtEJ,OAAO,oBAACT,WAASH,WACjB,GAAIR,WAAWC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUoB,KAAK,EAAG,CAC/BpB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUoB,KAAK,EACjB,CAAC,AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/packages/back-stage/index.ts"],"sourcesContent":["import '../../utils/env';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,iBAAkB,AACzB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
|
|
@@ -1,2 +0,0 @@
|
|
|
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
|
-
//# sourceMappingURL=index.js.map
|