@qlover/create-app 0.4.5 → 0.4.6

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 (161) hide show
  1. package/CHANGELOG.md +80 -35
  2. package/dist/index.cjs +11 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +10 -2418
  5. package/{templates → dist/templates}/node-lib/package.json +2 -2
  6. package/{templates → dist/templates}/react-app/README.md +6 -6
  7. package/{templates → dist/templates}/react-app/config/Identifier/Error.ts +8 -8
  8. package/dist/templates/react-app/config/Identifier/common.ts +62 -0
  9. package/dist/templates/react-app/config/Identifier/index.ts +10 -0
  10. package/dist/templates/react-app/config/Identifier/page.about.ts +181 -0
  11. package/dist/templates/react-app/config/Identifier/page.executor.ts +267 -0
  12. package/dist/templates/react-app/config/Identifier/page.home.ts +63 -0
  13. package/dist/templates/react-app/config/Identifier/page.identifiter.ts +39 -0
  14. package/dist/templates/react-app/config/Identifier/page.jsonStorage.ts +70 -0
  15. package/dist/templates/react-app/config/Identifier/page.login.ts +152 -0
  16. package/dist/templates/react-app/config/Identifier/page.register.ts +147 -0
  17. package/dist/templates/react-app/config/Identifier/page.request.ts +179 -0
  18. package/dist/templates/react-app/config/app.router.ts +163 -0
  19. package/dist/templates/react-app/config/theme.ts +11 -0
  20. package/{templates → dist/templates}/react-app/package.json +2 -2
  21. package/{templates → dist/templates}/react-app/public/locales/en/common.json +97 -116
  22. package/{templates → dist/templates}/react-app/public/locales/zh/common.json +98 -117
  23. package/{templates → dist/templates}/react-app/src/App.tsx +6 -5
  24. package/dist/templates/react-app/src/base/cases/I18nKeyErrorPlugin.ts +36 -0
  25. package/{templates → dist/templates}/react-app/src/base/cases/RouterLoader.ts +2 -1
  26. package/{templates → dist/templates}/react-app/src/base/services/I18nService.ts +4 -4
  27. package/{templates/react-app/src/base/services/ProcesserService.ts → dist/templates/react-app/src/base/services/ProcesserExecutor.ts} +15 -5
  28. package/{templates → dist/templates}/react-app/src/base/services/RouteService.ts +11 -13
  29. package/{templates → dist/templates}/react-app/src/base/services/UserService.ts +37 -21
  30. package/{templates → dist/templates}/react-app/src/base/types/Page.ts +12 -2
  31. package/{templates → dist/templates}/react-app/src/core/bootstrap.ts +1 -1
  32. package/{templates → dist/templates}/react-app/src/core/bootstraps/index.ts +3 -1
  33. package/{templates → dist/templates}/react-app/src/core/registers/RegisterCommon.ts +7 -7
  34. package/{templates → dist/templates}/react-app/src/core/registers/RegisterControllers.ts +7 -2
  35. package/{templates → dist/templates}/react-app/src/pages/404.tsx +4 -1
  36. package/{templates → dist/templates}/react-app/src/pages/500.tsx +2 -1
  37. package/{templates → dist/templates}/react-app/src/pages/auth/Layout.tsx +1 -1
  38. package/{templates/react-app/src/pages/auth/Login.tsx → dist/templates/react-app/src/pages/auth/LoginPage.tsx} +2 -2
  39. package/{templates/react-app/src/pages/auth/Register.tsx → dist/templates/react-app/src/pages/auth/RegisterPage.tsx} +3 -4
  40. package/{templates/react-app/src/pages/base/About.tsx → dist/templates/react-app/src/pages/base/AboutPage.tsx} +4 -4
  41. package/{templates/react-app/src/pages/base/ErrorIdentifier.tsx → dist/templates/react-app/src/pages/base/ErrorIdentifierPage.tsx} +3 -3
  42. package/{templates/react-app/src/pages/base/Executor.tsx → dist/templates/react-app/src/pages/base/ExecutorPage.tsx} +3 -3
  43. package/{templates/react-app/src/pages/base/Home.tsx → dist/templates/react-app/src/pages/base/HomePage.tsx} +15 -45
  44. package/{templates/react-app/src/pages/base/JSONStorage.tsx → dist/templates/react-app/src/pages/base/JSONStoragePage.tsx} +2 -2
  45. package/{templates → dist/templates}/react-app/src/pages/base/Layout.tsx +4 -4
  46. package/{templates/react-app/src/pages/base/Request.tsx → dist/templates/react-app/src/pages/base/RequestPage.tsx} +2 -2
  47. package/{templates/react-app/src/pages/base → dist/templates/react-app/src/uikit}/components/LogoutButton.tsx +1 -1
  48. package/{templates → dist/templates}/react-app/src/uikit/components/ThemeSwitcher.tsx +5 -6
  49. package/{templates → dist/templates}/react-app/src/uikit/contexts/BaseRouteContext.ts +1 -1
  50. package/{templates → dist/templates}/react-app/src/uikit/controllers/ExecutorController.ts +2 -2
  51. package/{templates → dist/templates}/react-app/src/uikit/controllers/JSONStorageController.ts +2 -2
  52. package/{templates → dist/templates}/react-app/src/uikit/controllers/RequestController.ts +1 -1
  53. package/{templates/react-app/src/uikit/hooks/useLanguageGuard.ts → dist/templates/react-app/src/uikit/hooks/useI18nGuard.ts} +1 -1
  54. package/{templates → dist/templates}/react-app/src/uikit/hooks/useStore.ts +2 -2
  55. package/dist/templates/react-app/src/uikit/hooks/userRouterService.ts +12 -0
  56. package/{templates → dist/templates}/react-app/src/uikit/providers/BaseRouteProvider.tsx +1 -0
  57. package/dist/templates/react-app/src/uikit/providers/ProcessExecutorProvider.tsx +24 -0
  58. package/dist/templates/react-app/src/uikit/providers/UserAuthProvider.tsx +16 -0
  59. package/{templates → dist/templates}/react-app/vite.config.ts +2 -1
  60. package/package.json +4 -6
  61. package/templates/react-app/config/Identifier/Auth.ts +0 -13
  62. package/templates/react-app/config/Identifier/I18n.ts +0 -1366
  63. package/templates/react-app/config/app.router.json +0 -159
  64. package/templates/react-app/config/theme.json +0 -9
  65. package/templates/react-app/src/base/port/LoginInterface.ts +0 -12
  66. package/templates/react-app/src/base/port/StoreInterface.ts +0 -58
  67. package/templates/react-app/src/uikit/providers/ProcessProvider.tsx +0 -45
  68. /package/{configs → dist/configs}/_common/.editorconfig +0 -0
  69. /package/{configs → dist/configs}/_common/.env.template +0 -0
  70. /package/{configs → dist/configs}/_common/.gitattributes +0 -0
  71. /package/{configs → dist/configs}/_common/.github/workflows/general-check.yml +0 -0
  72. /package/{configs → dist/configs}/_common/.github/workflows/release.yml +0 -0
  73. /package/{configs → dist/configs}/_common/.gitignore.template +0 -0
  74. /package/{configs → dist/configs}/_common/.husky/commit-msg +0 -0
  75. /package/{configs → dist/configs}/_common/.husky/pre-commit +0 -0
  76. /package/{configs → dist/configs}/_common/.prettierignore +0 -0
  77. /package/{configs → dist/configs}/_common/.prettierrc.js +0 -0
  78. /package/{configs → dist/configs}/_common/.vscode/extensions.json +0 -0
  79. /package/{configs → dist/configs}/_common/.vscode/react.code-snippets +0 -0
  80. /package/{configs → dist/configs}/_common/.vscode/settings.json +0 -0
  81. /package/{configs → dist/configs}/_common/commitlint.config.js +0 -0
  82. /package/{configs → dist/configs}/_common/package.json.template +0 -0
  83. /package/{configs → dist/configs}/node-lib/eslint.config.js +0 -0
  84. /package/{configs → dist/configs}/react-app/eslint.config.js +0 -0
  85. /package/{templates → dist/templates}/node-lib/__tests__/readJson.test.ts +0 -0
  86. /package/{templates → dist/templates}/node-lib/bin/test.js +0 -0
  87. /package/{templates → dist/templates}/node-lib/rollup.config.js +0 -0
  88. /package/{templates → dist/templates}/node-lib/src/index.ts +0 -0
  89. /package/{templates → dist/templates}/node-lib/src/readJson.ts +0 -0
  90. /package/{templates → dist/templates}/node-lib/tsconfig.json +0 -0
  91. /package/{templates → dist/templates}/pack-app/README.md +0 -0
  92. /package/{templates → dist/templates}/pack-app/eslint.config.js +0 -0
  93. /package/{templates → dist/templates}/pack-app/fe-config.json +0 -0
  94. /package/{templates → dist/templates}/pack-app/package.json +0 -0
  95. /package/{templates → dist/templates}/pack-app/pnpm-workspace.yaml +0 -0
  96. /package/{templates → dist/templates}/pack-app/tsconfig.json +0 -0
  97. /package/{templates → dist/templates}/pack-app/tsconfig.test.json +0 -0
  98. /package/{templates → dist/templates}/pack-app/vite.config.ts +0 -0
  99. /package/{templates → dist/templates}/react-app/.env.template +0 -0
  100. /package/{templates → dist/templates}/react-app/config/common.ts +0 -0
  101. /package/{templates → dist/templates}/react-app/config/feapi.mock.json +0 -0
  102. /package/{templates → dist/templates}/react-app/config/i18n.ts +0 -0
  103. /package/{templates → dist/templates}/react-app/index.html +0 -0
  104. /package/{templates → dist/templates}/react-app/postcss.config.js +0 -0
  105. /package/{templates → dist/templates}/react-app/public/logo.svg +0 -0
  106. /package/{templates → dist/templates}/react-app/public/router-root/logo.svg +0 -0
  107. /package/{templates → dist/templates}/react-app/src/assets/react.svg +0 -0
  108. /package/{templates → dist/templates}/react-app/src/base/apis/AiApi.ts +0 -0
  109. /package/{templates → dist/templates}/react-app/src/base/apis/feApi/FeApi.ts +0 -0
  110. /package/{templates → dist/templates}/react-app/src/base/apis/feApi/FeApiAdapter.ts +0 -0
  111. /package/{templates → dist/templates}/react-app/src/base/apis/feApi/FeApiBootstarp.ts +0 -0
  112. /package/{templates → dist/templates}/react-app/src/base/apis/feApi/FeApiType.ts +0 -0
  113. /package/{templates → dist/templates}/react-app/src/base/apis/userApi/UserApi.ts +0 -0
  114. /package/{templates → dist/templates}/react-app/src/base/apis/userApi/UserApiAdapter.ts +0 -0
  115. /package/{templates → dist/templates}/react-app/src/base/apis/userApi/UserApiBootstarp.ts +0 -0
  116. /package/{templates → dist/templates}/react-app/src/base/apis/userApi/UserApiType.ts +0 -0
  117. /package/{templates → dist/templates}/react-app/src/base/cases/AppConfig.ts +0 -0
  118. /package/{templates → dist/templates}/react-app/src/base/cases/AppError.ts +0 -0
  119. /package/{templates → dist/templates}/react-app/src/base/cases/DialogHandler.ts +0 -0
  120. /package/{templates → dist/templates}/react-app/src/base/cases/PublicAssetsPath.ts +0 -0
  121. /package/{templates → dist/templates}/react-app/src/base/cases/RequestLogger.ts +0 -0
  122. /package/{templates → dist/templates}/react-app/src/base/cases/RequestStatusCatcher.ts +0 -0
  123. /package/{templates → dist/templates}/react-app/src/base/port/ApiTransactionInterface.ts +0 -0
  124. /package/{templates → dist/templates}/react-app/src/base/port/InteractionHubInterface.ts +0 -0
  125. /package/{templates → dist/templates}/react-app/src/base/port/RequestCatcherInterface.ts +0 -0
  126. /package/{templates → dist/templates}/react-app/src/base/port/UIDependenciesInterface.ts +0 -0
  127. /package/{templates → dist/templates}/react-app/src/base/types/deprecated-antd.d.ts +0 -0
  128. /package/{templates → dist/templates}/react-app/src/base/types/global.d.ts +0 -0
  129. /package/{templates → dist/templates}/react-app/src/core/IOC.ts +0 -0
  130. /package/{templates → dist/templates}/react-app/src/core/bootstraps/BootstrapApp.ts +0 -0
  131. /package/{templates → dist/templates}/react-app/src/core/bootstraps/PrintBootstrap.ts +0 -0
  132. /package/{templates → dist/templates}/react-app/src/core/globals.ts +0 -0
  133. /package/{templates → dist/templates}/react-app/src/core/registers/RegisterApi.ts +0 -0
  134. /package/{templates → dist/templates}/react-app/src/core/registers/RegisterGlobals.ts +0 -0
  135. /package/{templates → dist/templates}/react-app/src/core/registers/index.ts +0 -0
  136. /package/{templates → dist/templates}/react-app/src/main.tsx +0 -0
  137. /package/{templates → dist/templates}/react-app/src/pages/base/RedirectPathname.tsx +0 -0
  138. /package/{templates → dist/templates}/react-app/src/styles/css/antd-themes/_default.css +0 -0
  139. /package/{templates → dist/templates}/react-app/src/styles/css/antd-themes/dark.css +0 -0
  140. /package/{templates → dist/templates}/react-app/src/styles/css/antd-themes/index.css +0 -0
  141. /package/{templates → dist/templates}/react-app/src/styles/css/antd-themes/no-context.css +0 -0
  142. /package/{templates → dist/templates}/react-app/src/styles/css/antd-themes/pink.css +0 -0
  143. /package/{templates → dist/templates}/react-app/src/styles/css/index.css +0 -0
  144. /package/{templates → dist/templates}/react-app/src/styles/css/page.css +0 -0
  145. /package/{templates → dist/templates}/react-app/src/styles/css/tailwind.css +0 -0
  146. /package/{templates → dist/templates}/react-app/src/styles/css/themes/_default.css +0 -0
  147. /package/{templates → dist/templates}/react-app/src/styles/css/themes/dark.css +0 -0
  148. /package/{templates → dist/templates}/react-app/src/styles/css/themes/index.css +0 -0
  149. /package/{templates → dist/templates}/react-app/src/styles/css/themes/pink.css +0 -0
  150. /package/{templates/react-app/src/pages/base → dist/templates/react-app/src/uikit}/components/BaseHeader.tsx +0 -0
  151. /package/{templates → dist/templates}/react-app/src/uikit/components/LanguageSwitcher.tsx +0 -0
  152. /package/{templates → dist/templates}/react-app/src/uikit/components/Loading.tsx +0 -0
  153. /package/{templates → dist/templates}/react-app/src/uikit/components/LocaleLink.tsx +0 -0
  154. /package/{templates → dist/templates}/react-app/src/uikit/components/RouterRenderComponent.tsx +0 -0
  155. /package/{templates → dist/templates}/react-app/src/uikit/hooks/useDocumentTitle.ts +0 -0
  156. /package/{templates → dist/templates}/react-app/src/uikit/hooks/useStrictEffect.ts +0 -0
  157. /package/{templates → dist/templates}/react-app/src/vite-env.d.ts +0 -0
  158. /package/{templates → dist/templates}/react-app/tailwind.config.js +0 -0
  159. /package/{templates → dist/templates}/react-app/tsconfig.app.json +0 -0
  160. /package/{templates → dist/templates}/react-app/tsconfig.json +0 -0
  161. /package/{templates → dist/templates}/react-app/tsconfig.node.json +0 -0
@@ -1,159 +0,0 @@
1
- {
2
- "base": {
3
- "routes": [
4
- {
5
- "path": "/",
6
- "element": "base/RedirectPathname",
7
- "meta": {
8
- "category": "main"
9
- }
10
- },
11
- {
12
- "path": "/:lng",
13
- "element": "base/Layout",
14
- "meta": {
15
- "category": "main"
16
- },
17
- "children": [
18
- {
19
- "index": true,
20
- "element": "base/Home",
21
- "meta": {
22
- "title": "page.home.title",
23
- "icon": "home",
24
- "localNamespace": "common"
25
- }
26
- },
27
- {
28
- "path": "about",
29
- "element": "base/About",
30
- "meta": {
31
- "title": "page.about.title",
32
- "icon": "info",
33
- "localNamespace": "common"
34
- }
35
- },
36
- {
37
- "path": "jsonStorage",
38
- "element": "base/JSONStorage",
39
- "meta": {
40
- "title": "page.jsonstorage.title",
41
- "icon": "info",
42
- "localNamespace": "common"
43
- }
44
- },
45
- {
46
- "path": "request",
47
- "element": "base/Request",
48
- "meta": {
49
- "title": "page.request.title",
50
- "icon": "info",
51
- "localNamespace": "common"
52
- }
53
- },
54
- {
55
- "path": "executor",
56
- "element": "base/Executor",
57
- "meta": {
58
- "title": "page.executor.title",
59
- "icon": "info",
60
- "localNamespace": "common"
61
- }
62
- },
63
- {
64
- "path": "errorIdentifier",
65
- "element": "base/ErrorIdentifier",
66
- "meta": {
67
- "title": "page.error_identifier.title",
68
- "icon": "info",
69
- "localNamespace": "common"
70
- }
71
- },
72
- {
73
- "path": "404",
74
- "element": "404",
75
- "meta": {
76
- "category": "common",
77
- "title": "page.404.title",
78
- "layout": "blank",
79
- "localNamespace": "common"
80
- }
81
- },
82
- {
83
- "path": "500",
84
- "element": "500",
85
- "meta": {
86
- "category": "common",
87
- "title": "page.500.title",
88
- "layout": "blank",
89
- "localNamespace": "common"
90
- }
91
- }
92
- ]
93
- },
94
-
95
- {
96
- "path": "/:lng",
97
- "element": "auth/Layout",
98
- "meta": {
99
- "category": "auth"
100
- },
101
- "children": [
102
- {
103
- "index": true,
104
- "element": "auth/Login"
105
- },
106
- {
107
- "path": "login",
108
- "element": "auth/Login",
109
- "meta": {
110
- "title": "page.login.title",
111
- "icon": "info",
112
- "localNamespace": "common"
113
- }
114
- },
115
- {
116
- "path": "register",
117
- "element": "auth/Register",
118
- "meta": {
119
- "title": "page.register.title",
120
- "icon": "info",
121
- "localNamespace": "common"
122
- }
123
- }
124
- ]
125
- },
126
-
127
- {
128
- "path": "404",
129
- "element": "404",
130
- "meta": {
131
- "category": "common",
132
- "title": "page.404.title",
133
- "layout": "blank",
134
- "localNamespace": "common"
135
- }
136
- },
137
- {
138
- "path": "500",
139
- "element": "500",
140
- "meta": {
141
- "category": "common",
142
- "title": "page.500.title",
143
- "layout": "blank",
144
- "localNamespace": "common"
145
- }
146
- },
147
- {
148
- "path": "*",
149
- "element": "404",
150
- "meta": {
151
- "category": "common",
152
- "title": "page.404.title",
153
- "layout": "blank",
154
- "localNamespace": "common"
155
- }
156
- }
157
- ]
158
- }
159
- }
@@ -1,9 +0,0 @@
1
- {
2
- "domAttribute": "data-theme",
3
- "defaultTheme": "system",
4
- "target": "html",
5
- "supportedThemes": ["light", "dark", "pink"],
6
- "storageKey": "fe_theme",
7
- "init": true,
8
- "prioritizeStore": true
9
- }
@@ -1,12 +0,0 @@
1
- export interface RegisterFormData {
2
- username: string;
3
- email: string;
4
- password: string;
5
- confirmPassword: string;
6
- agreeToTerms: boolean;
7
- }
8
- export interface LoginInterface {
9
- login(params: unknown): Promise<unknown>;
10
- logout(): void;
11
- register(params: RegisterFormData): Promise<unknown>;
12
- }
@@ -1,58 +0,0 @@
1
- import { SliceStore } from '@qlover/slice-store-react';
2
-
3
- /**
4
- * Store State Interface
5
- *
6
- * This interface is used to define the state of a store.
7
- * It is used to define the state of a store.
8
- *
9
- * must implement the copyWith method
10
- */
11
- export interface StoreStateInterface {
12
- // You can define your own properties here
13
- // ...
14
- }
15
-
16
- /**
17
- * Store Interface
18
- *
19
- * This class is used to define the store interface.
20
- * It is used to define the store interface.
21
- *
22
- * @example
23
- * ```ts
24
- * class ChatStoreState implements StoreStateInterface {
25
- * isChatRunning: boolean = false;
26
- *
27
- * copyWith(state: { isChatRunning?: boolean }): this {
28
- * return Object.assign(new ChatStoreState(), this, state);
29
- * }
30
- * }
31
- *
32
- * export class ChatStore extends StoreInterface<ChatStoreState> {
33
- * constructor() {
34
- * super(() => new ChatStoreState());
35
- * }
36
- * }
37
- * ```
38
- */
39
- export abstract class StoreInterface<
40
- T extends StoreStateInterface
41
- > extends SliceStore<T> {
42
- /**
43
- * Constructor
44
- *
45
- * @param stateFactory - The factory function to create the initial state
46
- */
47
- constructor(protected stateFactory: () => T) {
48
- super(stateFactory);
49
- }
50
-
51
- /**
52
- * Reset the state of the store
53
- */
54
- resetState(): void {
55
- // Create a new instance of initial state
56
- this.emit(this.stateFactory());
57
- }
58
- }
@@ -1,45 +0,0 @@
1
- import { createContext, useEffect } from 'react';
2
- import { IOC } from '@/core/IOC';
3
- import { useLanguageGuard } from '@/uikit/hooks/useLanguageGuard';
4
- import { useStrictEffect } from '@/uikit/hooks/useStrictEffect';
5
- import { ProcesserService } from '@/base/services/ProcesserService';
6
- import { Navigate, useNavigate } from 'react-router-dom';
7
- import { Loading } from '@/uikit/components/Loading';
8
- import { RouteService } from '../../base/services/RouteService';
9
- import { UserService } from '../../base/services/UserService';
10
- import { useStore } from '@/uikit/hooks/useStore';
11
-
12
- const PageProcesserContext = createContext<ProcesserService>(
13
- IOC(ProcesserService)
14
- );
15
-
16
- export function ProcessProvider({ children }: { children: React.ReactNode }) {
17
- useLanguageGuard();
18
- const userService = IOC(UserService);
19
- const pageProcesser = IOC(ProcesserService);
20
- const success = useStore(userService, (state) => state.success);
21
-
22
- const navigate = useNavigate();
23
-
24
- useStrictEffect(() => {
25
- pageProcesser.init();
26
- }, []);
27
-
28
- useEffect(() => {
29
- IOC(RouteService).setDependencies({ navigate });
30
- }, [navigate]);
31
-
32
- if (!success) {
33
- return <Loading fullscreen />;
34
- }
35
-
36
- if (!userService.isAuthenticated()) {
37
- return <Navigate to="/login" />;
38
- }
39
-
40
- return (
41
- <PageProcesserContext.Provider value={pageProcesser}>
42
- {children}
43
- </PageProcesserContext.Provider>
44
- );
45
- }
File without changes
File without changes