generator-mico-cli 0.2.19 → 0.2.21

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.
Files changed (44) hide show
  1. package/README.md +29 -0
  2. package/bin/mico.js +124 -5
  3. package/generators/micro-react/index.js +86 -17
  4. package/generators/micro-react/templates/.eslintrc.js +24 -1
  5. package/generators/micro-react/templates/CICD/start_dev.sh +1 -1
  6. package/generators/micro-react/templates/CLAUDE.md +11 -5
  7. package/generators/micro-react/templates/_gitignore +2 -0
  8. package/generators/micro-react/templates/apps/layout/config/config.ts +21 -0
  9. package/generators/micro-react/templates/apps/layout/docs/common-intl.md +23 -21
  10. package/generators/micro-react/templates/apps/layout/docs/feature-/344/270/273/351/242/230/350/211/262/345/210/207/346/215/242.md +1 -1
  11. package/generators/micro-react/templates/apps/layout/docs/feature-/345/276/256/345/211/215/347/253/257/346/250/241/345/274/217.md +61 -36
  12. package/generators/micro-react/templates/apps/layout/docs/feature-/350/217/234/345/215/225/346/235/203/351/231/220/346/216/247/345/210/266.md +7 -2
  13. package/generators/micro-react/templates/apps/layout/docs/utils-timezone.md +4 -2
  14. package/generators/micro-react/templates/apps/layout/mock/menus.ts +7 -2
  15. package/generators/micro-react/templates/apps/layout/package.json +3 -2
  16. package/generators/micro-react/templates/apps/layout/src/common/locale.ts +3 -3
  17. package/generators/micro-react/templates/apps/layout/src/common/menu/parser.ts +3 -15
  18. package/generators/micro-react/templates/apps/layout/src/common/menu/types.ts +4 -0
  19. package/generators/micro-react/templates/apps/layout/src/components/MicroAppLoader/index.tsx +1 -1
  20. package/generators/micro-react/templates/apps/layout/src/global.less +2 -3
  21. package/generators/micro-react/templates/apps/layout/src/services/config/type.ts +2 -4
  22. package/generators/micro-react/templates/package.json +5 -2
  23. package/generators/micro-react/templates/packages/common-intl/README.md +8 -8
  24. package/generators/micro-react/templates/packages/common-intl/src/intl.ts +13 -5678
  25. package/generators/micro-react/templates/packages/common-intl/src/utils.ts +22 -21
  26. package/generators/subapp-react/index.js +81 -13
  27. package/generators/subapp-react/templates/homepage/config/config.dev.ts +8 -1
  28. package/generators/subapp-react/templates/homepage/config/config.ts +21 -0
  29. package/generators/subapp-react/templates/homepage/config/routes.ts +1 -1
  30. package/generators/subapp-react/templates/homepage/mock/api.mock.ts +2 -2
  31. package/generators/subapp-react/templates/homepage/package.json +3 -2
  32. package/generators/subapp-react/templates/homepage/src/app.tsx +1 -1
  33. package/generators/subapp-react/templates/homepage/src/common/request.ts +2 -2
  34. package/generators/subapp-react/templates/homepage/src/global.less +2 -1
  35. package/generators/subapp-react/templates/homepage/src/pages/index.less +1 -1
  36. package/generators/subapp-react/templates/homepage/src/pages/index.tsx +27 -27
  37. package/lib/utils.js +200 -2
  38. package/package.json +1 -1
  39. package/generators/micro-react/templates/packages/common-intl/.turbo/turbo-build.log +0 -13
  40. package/generators/micro-react/templates/packages/common-intl/dist/index.d.ts +0 -3
  41. package/generators/micro-react/templates/packages/common-intl/dist/index.js +0 -4388
  42. package/generators/micro-react/templates/packages/common-intl/dist/indexedDBUtils.d.ts +0 -13
  43. package/generators/micro-react/templates/packages/common-intl/dist/intl.d.ts +0 -1022
  44. package/generators/micro-react/templates/packages/common-intl/dist/utils.d.ts +0 -122
@@ -1,122 +0,0 @@
1
- export declare const LANG: {
2
- readonly ZH_CN: "zh_CN";
3
- readonly EN: "en";
4
- /** 阿拉伯语 */
5
- readonly AR: "ar";
6
- /** 土耳其语 */
7
- readonly TR: "tr";
8
- };
9
- export type ILang = (typeof LANG)[keyof typeof LANG];
10
- /**
11
- * 消息提示实例接口
12
- */
13
- export interface IMessageInstance {
14
- error: (message: string) => unknown;
15
- warning: (message: string) => unknown;
16
- }
17
- /**
18
- * 初始化国际化参数接口
19
- */
20
- export interface IInitIntlParams {
21
- /** 请求实例,用于请求多语言数据 */
22
- requestInstance: (url: string, options: {
23
- method: string;
24
- params: Record<string, string>;
25
- }) => Promise<{
26
- code: number;
27
- data?: Record<string, string>;
28
- errorMessage?: string;
29
- }>;
30
- /** 消息提示实例,必填,外部自定义消息提示 */
31
- messageInstance: IMessageInstance;
32
- /** 获取多语言数据的参数 */
33
- fetchMultilingualDataParams: {
34
- tag: string;
35
- lang: ILang;
36
- app_name: string;
37
- };
38
- /** IndexedDB 参数,可选 */
39
- indexedDBParams?: {
40
- dbName?: string;
41
- dbVersion?: number;
42
- storeName?: string;
43
- keyPathKey?: string;
44
- };
45
- }
46
- /**
47
- * i18n 函数参数接口
48
- */
49
- export interface II18nParams {
50
- /** 翻译文案的 key */
51
- key: string;
52
- /** 插值数组 [AA, BB, CC, ... ZZ],用于替换文案中的占位符 %AA% %BB% %CC% ... %ZZ% 等 */
53
- interpolations?: Array<string | number | undefined>;
54
- /** 兜底文案,当找不到翻译时返回 */
55
- defaultMessage: string;
56
- }
57
- /**
58
- * 支持的语言列表
59
- */
60
- export declare const SUPPORTED_LOCALES: ILang[];
61
- /**
62
- * 获取当前语言(按优先级)
63
- * 优先级:URL 参数 > localStorage > 浏览器默认语言
64
- */
65
- export declare function getCurrentLocale(): ILang;
66
- /**
67
- * 设置语言到 localStorage
68
- */
69
- export declare function setLocaleToStorage(locale: ILang): void;
70
- /**
71
- * @see https://micoworld.feishu.cn/wiki/wikcnBMzhhc8qpAVawAoySZanrg#DS1YNZ
72
- *
73
- * 国际化翻译函数
74
- *
75
- * 从全局变量缓存中获取翻译后的文案,支持插值替换
76
- *
77
- * @param params 参数对象
78
- * @param params.key 翻译文案的 key
79
- * @param params.interpolations 插值数组,用于替换文案中的占位符
80
- * @param params.defaultMessage 兜底文案,当找不到翻译时返回
81
- * @returns 翻译后的文案
82
- *
83
- * @example
84
- * // 无插值示例
85
- * i18n({ key: 'cs_web_create_ticket_cancel', defaultMessage: '取消' })
86
- * // 返回 'Cancel' 或兜底文案 '取消'
87
- *
88
- * @example
89
- * // 单个插值示例
90
- * i18n({ key: 'cs_web_page_total_count', interpolations: [pagination.total], defaultMessage: `总数量: ${pagination.total}条` })
91
- * // 如果翻译文案为 '总数量: %AA%条',则返回 '总数量: 100条'
92
- *
93
- * @example
94
- * // 多个插值示例
95
- * i18n({ key: 'xxxxx', interpolations: [valueA, valueB, valueC], defaultMessage: `XXX${valueA}YYY${valueB}ZZZ${valueC}` })
96
- * // 如果翻译文案为 'XXX%AA%YYY%BB%ZZZ%CC%',则按顺序替换占位符
97
- */
98
- export declare function i18n({ key, interpolations, defaultMessage, }: II18nParams): string;
99
- /**
100
- * 初始化国际化模块
101
- *
102
- * @param params 初始化参数
103
- * @returns 返回配置好的 fetchMultilingualData 函数
104
- *
105
- * @example
106
- * const fetchMultilingualData = initIntl({
107
- * requestInstance: request,
108
- * messageInstance: {
109
- * error: (msg) => Toast.error(msg),
110
- * warning: (msg) => Toast.warn(msg),
111
- * },
112
- * fetchMultilingualDataParams: {
113
- * tag: 'cs_fe_mobile',
114
- * lang: 'zh_CN',
115
- * app_name: 'middle',
116
- * },
117
- * indexedDBParams: {
118
- * dbName: 'mico_cs_mobile_i18n_db',
119
- * },
120
- * });
121
- */
122
- export declare function initIntl(params: IInitIntlParams): () => Promise<Record<string, string>>;