@_tc/template-core 0.0.1-bate.29 → 0.0.1-bate.30

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 (183) hide show
  1. package/cjs/_virtual/_rolldown/runtime.js +37 -0
  2. package/cjs/app/controller/base.js +28 -20
  3. package/cjs/app/controller/project.js +59 -49
  4. package/cjs/app/controller/view.js +14 -13
  5. package/cjs/app/data/signKey.js +23 -4
  6. package/cjs/app/extend/db.js +6 -10
  7. package/cjs/app/extend/generateErrorMessage.js +15 -13
  8. package/cjs/app/extend/logger.js +34 -71
  9. package/cjs/app/extend/parsingParamsOnUrl.js +21 -21
  10. package/cjs/app/extend/render-view.js +23 -22
  11. package/cjs/app/middleware/api-params-verify.js +61 -61
  12. package/cjs/app/middleware/api-sign-verify.js +22 -27
  13. package/cjs/app/middleware/error-handle.js +31 -32
  14. package/cjs/app/middleware/project-handler.js +20 -20
  15. package/cjs/app/middleware.js +30 -56
  16. package/cjs/app/router/project.js +9 -7
  17. package/cjs/app/router/view.js +6 -4
  18. package/cjs/app/router-schema/project.js +15 -32
  19. package/cjs/app/service/bese.js +16 -16
  20. package/cjs/app/service/project.js +32 -41
  21. package/cjs/app/type.js +1 -2
  22. package/cjs/app/typings.js +1 -2
  23. package/cjs/bundler/dev.js +16 -16
  24. package/cjs/bundler/index.js +16 -16
  25. package/cjs/bundler/prod.js +18 -17
  26. package/cjs/bundler/utils.js +144 -212
  27. package/cjs/index.js +25 -18
  28. package/cjs/packages/core/env.js +26 -24
  29. package/cjs/packages/core/index.js +101 -113
  30. package/cjs/packages/core/loader/config.js +39 -43
  31. package/cjs/packages/core/loader/controller.js +25 -32
  32. package/cjs/packages/core/loader/extend.js +29 -39
  33. package/cjs/packages/core/loader/middleware.js +28 -36
  34. package/cjs/packages/core/loader/model.js +98 -123
  35. package/cjs/packages/core/loader/router-schema.js +32 -33
  36. package/cjs/packages/core/loader/router.js +46 -61
  37. package/cjs/packages/core/loader/service.js +21 -22
  38. package/cjs/packages/core/paths.js +8 -6
  39. package/cjs/packages/core/types.js +1 -2
  40. package/cjs/packages/utils/getAllFilesInFolder.js +12 -43
  41. package/cjs/packages/utils/getAllFnReturnValue.js +1 -6
  42. package/cjs/packages/utils/index.js +11 -20
  43. package/cjs/packages/utils/loadFile.js +52 -62
  44. package/cjs/packages/utils/path.js +25 -58
  45. package/cjs/packages/utils/runFileFn.js +5 -4
  46. package/esm/_virtual/_rolldown/runtime.js +32 -0
  47. package/esm/app/controller/base.js +27 -20
  48. package/esm/app/controller/project.js +58 -41
  49. package/esm/app/controller/view.js +13 -11
  50. package/esm/app/data/signKey.js +10 -1
  51. package/esm/app/extend/db.js +6 -8
  52. package/esm/app/extend/generateErrorMessage.js +14 -11
  53. package/esm/app/extend/logger.js +33 -36
  54. package/esm/app/extend/parsingParamsOnUrl.js +20 -19
  55. package/esm/app/extend/render-view.js +18 -15
  56. package/esm/app/middleware/api-params-verify.js +58 -55
  57. package/esm/app/middleware/api-sign-verify.js +20 -21
  58. package/esm/app/middleware/error-handle.js +30 -30
  59. package/esm/app/middleware/project-handler.js +19 -18
  60. package/esm/app/middleware.js +22 -47
  61. package/esm/app/router/project.js +8 -5
  62. package/esm/app/router/view.js +5 -2
  63. package/esm/app/router-schema/project.js +14 -30
  64. package/esm/app/service/bese.js +13 -10
  65. package/esm/app/service/project.js +31 -33
  66. package/esm/app/type.js +0 -1
  67. package/esm/app/typings.js +0 -1
  68. package/esm/bundler/dev.js +15 -14
  69. package/esm/bundler/index.js +13 -11
  70. package/esm/bundler/prod.js +17 -15
  71. package/esm/bundler/utils.js +136 -169
  72. package/esm/index.js +16 -11
  73. package/esm/packages/core/env.js +25 -22
  74. package/esm/packages/core/index.js +98 -106
  75. package/esm/packages/core/loader/config.js +39 -41
  76. package/esm/packages/core/loader/controller.js +25 -30
  77. package/esm/packages/core/loader/extend.js +28 -36
  78. package/esm/packages/core/loader/middleware.js +28 -34
  79. package/esm/packages/core/loader/model.js +97 -118
  80. package/esm/packages/core/loader/router-schema.js +32 -31
  81. package/esm/packages/core/loader/router.js +44 -55
  82. package/esm/packages/core/loader/service.js +21 -20
  83. package/esm/packages/core/paths.js +7 -4
  84. package/esm/packages/core/types.js +0 -1
  85. package/esm/packages/utils/getAllFilesInFolder.js +8 -5
  86. package/esm/packages/utils/getAllFnReturnValue.js +0 -6
  87. package/esm/packages/utils/index.js +5 -4
  88. package/esm/packages/utils/loadFile.js +44 -58
  89. package/esm/packages/utils/path.js +23 -22
  90. package/esm/packages/utils/runFileFn.js +4 -1
  91. package/package.json +10 -8
  92. package/cjs/app/controller/base.d.ts +0 -12
  93. package/cjs/app/controller/project.d.ts +0 -10
  94. package/cjs/app/controller/view.d.ts +0 -7
  95. package/cjs/app/data/signKey.d.ts +0 -1
  96. package/cjs/app/extend/db.d.ts +0 -2
  97. package/cjs/app/extend/generateErrorMessage.d.ts +0 -7
  98. package/cjs/app/extend/logger.d.ts +0 -11
  99. package/cjs/app/extend/parsingParamsOnUrl.d.ts +0 -2
  100. package/cjs/app/extend/render-view.d.ts +0 -3
  101. package/cjs/app/middleware/api-params-verify.d.ts +0 -4
  102. package/cjs/app/middleware/api-sign-verify.d.ts +0 -4
  103. package/cjs/app/middleware/error-handle.d.ts +0 -4
  104. package/cjs/app/middleware/project-handler.d.ts +0 -4
  105. package/cjs/app/middleware.d.ts +0 -3
  106. package/cjs/app/router/project.d.ts +0 -4
  107. package/cjs/app/router/view.d.ts +0 -4
  108. package/cjs/app/router-schema/project.d.ts +0 -3
  109. package/cjs/app/service/bese.d.ts +0 -10
  110. package/cjs/app/service/project.d.ts +0 -27
  111. package/cjs/app/type.d.ts +0 -2
  112. package/cjs/app/typings.d.ts +0 -50
  113. package/cjs/bundler/dev.d.ts +0 -1
  114. package/cjs/bundler/index.d.ts +0 -1
  115. package/cjs/bundler/prod.d.ts +0 -1
  116. package/cjs/bundler/utils.d.ts +0 -9
  117. package/cjs/index.d.ts +0 -28
  118. package/cjs/packages/core/env.d.ts +0 -15
  119. package/cjs/packages/core/index.d.ts +0 -6
  120. package/cjs/packages/core/loader/config.d.ts +0 -9
  121. package/cjs/packages/core/loader/controller.d.ts +0 -17
  122. package/cjs/packages/core/loader/extend.d.ts +0 -8
  123. package/cjs/packages/core/loader/middleware.d.ts +0 -11
  124. package/cjs/packages/core/loader/model.d.ts +0 -36
  125. package/cjs/packages/core/loader/router-schema.d.ts +0 -18
  126. package/cjs/packages/core/loader/router.d.ts +0 -8
  127. package/cjs/packages/core/loader/service.d.ts +0 -17
  128. package/cjs/packages/core/paths.d.ts +0 -11
  129. package/cjs/packages/core/types.d.ts +0 -74
  130. package/cjs/packages/utils/getAllFilesInFolder.d.ts +0 -9
  131. package/cjs/packages/utils/getAllFnReturnValue.d.ts +0 -0
  132. package/cjs/packages/utils/index.d.ts +0 -4
  133. package/cjs/packages/utils/loadFile.d.ts +0 -20
  134. package/cjs/packages/utils/path.d.ts +0 -24
  135. package/cjs/packages/utils/runFileFn.d.ts +0 -5
  136. package/cjs/typings/type.d.ts +0 -4
  137. package/cjs/typings/type.js +0 -2
  138. package/esm/app/controller/base.d.ts +0 -13
  139. package/esm/app/controller/project.d.ts +0 -11
  140. package/esm/app/controller/view.d.ts +0 -8
  141. package/esm/app/data/signKey.d.ts +0 -2
  142. package/esm/app/extend/db.d.ts +0 -3
  143. package/esm/app/extend/generateErrorMessage.d.ts +0 -8
  144. package/esm/app/extend/logger.d.ts +0 -12
  145. package/esm/app/extend/parsingParamsOnUrl.d.ts +0 -3
  146. package/esm/app/extend/render-view.d.ts +0 -4
  147. package/esm/app/middleware/api-params-verify.d.ts +0 -5
  148. package/esm/app/middleware/api-sign-verify.d.ts +0 -5
  149. package/esm/app/middleware/error-handle.d.ts +0 -5
  150. package/esm/app/middleware/project-handler.d.ts +0 -5
  151. package/esm/app/middleware.d.ts +0 -4
  152. package/esm/app/router/project.d.ts +0 -5
  153. package/esm/app/router/view.d.ts +0 -5
  154. package/esm/app/router-schema/project.d.ts +0 -4
  155. package/esm/app/service/bese.d.ts +0 -11
  156. package/esm/app/service/project.d.ts +0 -28
  157. package/esm/app/type.d.ts +0 -3
  158. package/esm/app/typings.d.ts +0 -51
  159. package/esm/bundler/dev.d.ts +0 -2
  160. package/esm/bundler/index.d.ts +0 -2
  161. package/esm/bundler/prod.d.ts +0 -2
  162. package/esm/bundler/utils.d.ts +0 -10
  163. package/esm/index.d.ts +0 -29
  164. package/esm/packages/core/env.d.ts +0 -16
  165. package/esm/packages/core/index.d.ts +0 -7
  166. package/esm/packages/core/loader/config.d.ts +0 -10
  167. package/esm/packages/core/loader/controller.d.ts +0 -18
  168. package/esm/packages/core/loader/extend.d.ts +0 -9
  169. package/esm/packages/core/loader/middleware.d.ts +0 -12
  170. package/esm/packages/core/loader/model.d.ts +0 -37
  171. package/esm/packages/core/loader/router-schema.d.ts +0 -19
  172. package/esm/packages/core/loader/router.d.ts +0 -9
  173. package/esm/packages/core/loader/service.d.ts +0 -18
  174. package/esm/packages/core/paths.d.ts +0 -12
  175. package/esm/packages/core/types.d.ts +0 -75
  176. package/esm/packages/utils/getAllFilesInFolder.d.ts +0 -10
  177. package/esm/packages/utils/getAllFnReturnValue.d.ts +0 -1
  178. package/esm/packages/utils/index.d.ts +0 -5
  179. package/esm/packages/utils/loadFile.d.ts +0 -21
  180. package/esm/packages/utils/path.d.ts +0 -25
  181. package/esm/packages/utils/runFileFn.d.ts +0 -6
  182. package/esm/typings/type.d.ts +0 -5
  183. package/esm/typings/type.js +0 -1
@@ -1,58 +1,47 @@
1
- import KoaRouter from "koa-router";
2
- import { loadFileFn } from "../../utils/loadFile.js";
3
- import { resolve } from "../../utils/path.js";
1
+ import { __require } from "../../../_virtual/_rolldown/runtime.js";
4
2
  import { getAppPath, getAppPaths } from "../paths.js";
5
- import { runFileFn } from "../../utils/index.js";
3
+ import { runFileFn } from "@tc/utils";
4
+ import { loadFileFn } from "@tc/utils/loadFile";
5
+ import { resolve as resolve$1 } from "@tc/utils/path";
6
+ import KoaRouter from "koa-router";
7
+ //#region packages/core/loader/router.ts
6
8
  /**
7
- * reouter loader
8
- *
9
- * 解析 xx/app/router/下的所有文件 加载到 koa-router上
10
- */
11
- export default (app) => {
12
- // 找到路由文件
13
- // 实例化 KoaRouter
14
- // 注册所有路由
15
- // 路由}
16
- const router = new KoaRouter();
17
- let routerGuard;
18
- try {
19
- // 在app目录下寻找
20
- const businessPath = getAppPath(app, "business");
21
- if (businessPath) {
22
- routerGuard = runFileFn(require(resolve(businessPath, "router-guard.js")))(app);
23
- }
24
- }
25
- catch (error) {
26
- console.info("-- [router-guard] -- not router-guard.js file");
27
- }
28
- getAppPaths(app).forEach((currentPath) => {
29
- loadFileFn(currentPath, "router", {
30
- preProcessingFileCallback: (filePath) => {
31
- /**
32
- * module.export = (app,router) => {
33
- * router.get('/xxx/xxxx', app.controller)
34
- * }
35
- */
36
- runFileFn(require(resolve(filePath)))(app, router);
37
- },
38
- });
39
- });
40
- router.get("(.*)", async (ctx, _next) => {
41
- console.info("\x1b[31m%s\x1b[0m", `-- notFound path: ${ctx.path} --`);
42
- ctx.status = 302; // 临时重定向
43
- const executionResults = routerGuard?.(ctx);
44
- if (executionResults) {
45
- ctx.redirect(executionResults ?? "/");
46
- }
47
- else {
48
- ctx.status = 404;
49
- ctx.body = "notFound";
50
- }
51
- // throw new Error();
52
- return;
53
- // await next();
54
- });
55
- app.use(router.routes()); // koa 注入路由 中间件
56
- app.use(router.allowedMethods()); // 允许所有请求方式
57
- app.currentUseRouter = router;
9
+ * reouter loader
10
+ *
11
+ * 解析 xx/app/router/下的所有文件 加载到 koa-router上
12
+ */
13
+ var router_default = (app) => {
14
+ const router = new KoaRouter();
15
+ let routerGuard;
16
+ try {
17
+ const businessPath = getAppPath(app, "business");
18
+ if (businessPath) routerGuard = runFileFn(__require(resolve$1(businessPath, "router-guard.js")))(app);
19
+ } catch (error) {
20
+ console.info("-- [router-guard] -- not router-guard.js file");
21
+ }
22
+ getAppPaths(app).forEach((currentPath) => {
23
+ loadFileFn(currentPath, "router", { preProcessingFileCallback: (filePath) => {
24
+ /**
25
+ * module.export = (app,router) => {
26
+ * router.get('/xxx/xxxx', app.controller)
27
+ * }
28
+ */
29
+ runFileFn(__require(resolve$1(filePath)))(app, router);
30
+ } });
31
+ });
32
+ router.get("(.*)", async (ctx, _next) => {
33
+ console.info("\x1B[31m%s\x1B[0m", `-- notFound path: ${ctx.path} --`);
34
+ ctx.status = 302;
35
+ const executionResults = routerGuard?.(ctx);
36
+ if (executionResults) ctx.redirect(executionResults ?? "/");
37
+ else {
38
+ ctx.status = 404;
39
+ ctx.body = "notFound";
40
+ }
41
+ });
42
+ app.use(router.routes());
43
+ app.use(router.allowedMethods());
44
+ app.currentUseRouter = router;
58
45
  };
46
+ //#endregion
47
+ export { router_default as default };
@@ -1,28 +1,29 @@
1
- import { loadFileFn } from '../../utils/loadFile.js';
2
- import { getAppPaths } from '../paths.js';
3
- import { runFileFn } from '../../utils/index.js';
1
+ import { __require } from "../../../_virtual/_rolldown/runtime.js";
2
+ import { getAppPaths } from "../paths.js";
3
+ import { runFileFn } from "@tc/utils";
4
+ import { loadFileFn } from "@tc/utils/loadFile";
5
+ //#region packages/core/loader/service.ts
4
6
  /**
5
7
  * 加载 xx/app/service 文件夹下所有文件 可通过'app.service.${目录}..},访问
6
8
  *
7
9
  例子:
8
- app/service
10
+ app/service
9
11
 
10
- |-- cuStom-moduLe
12
+ |-- cuStom-moduLe
11
13
 
12
- |-- custom-midd Leware.js
14
+ |-- custom-midd Leware.js
13
15
 
14
- => app.service.customModule. customMiddleware
15
- *
16
- * @param app
17
- */
18
- export default (app) => {
19
- app.service = getAppPaths(app).reduce((preData, currentPath) => ({
20
- ...preData,
21
- ...loadFileFn(currentPath, 'service', {
22
- loadFileCallback: (file) => {
23
- const Service = runFileFn(require(file))(app);
24
- return new Service();
25
- },
26
- }),
27
- }), {});
16
+ => app.service.customModule. customMiddleware
17
+ *
18
+ * @param app
19
+ */
20
+ var service_default = (app) => {
21
+ app.service = getAppPaths(app).reduce((preData, currentPath) => ({
22
+ ...preData,
23
+ ...loadFileFn(currentPath, "service", { loadFileCallback: (file) => {
24
+ return new (runFileFn(__require(file))(app))();
25
+ } })
26
+ }), {});
28
27
  };
28
+ //#endregion
29
+ export { service_default as default };
@@ -1,6 +1,9 @@
1
- export function getAppPath(app, type) {
2
- return app.paths?.find((p) => p.type === type)?.path;
1
+ //#region packages/core/paths.ts
2
+ function getAppPath(app, type) {
3
+ return app.paths?.find((p) => p.type === type)?.path;
3
4
  }
4
- export function getAppPaths(app) {
5
- return (app.paths ?? []).map((p) => p.path);
5
+ function getAppPaths(app) {
6
+ return (app.paths ?? []).map((p) => p.path);
6
7
  }
8
+ //#endregion
9
+ export { getAppPath, getAppPaths };
@@ -1 +0,0 @@
1
- export {};
@@ -1,8 +1,11 @@
1
1
  import { resolve } from "./path.js";
2
2
  import * as glob from "glob";
3
- export const getAllFilesInFolder = (...paths) => {
4
- const filePath = resolve(...paths);
5
- const fileList = glob.sync(resolve(filePath, "**", "*.js"));
6
- const tFileList = glob.sync(resolve(filePath, "**", "*.ts")).filter(f => f.indexOf('.d.ts') === -1);
7
- return [...fileList, ...tFileList];
3
+ //#region packages/utils/getAllFilesInFolder.ts
4
+ var getAllFilesInFolder = (...paths) => {
5
+ const filePath = resolve(...paths);
6
+ const fileList = glob.sync(resolve(filePath, "**", "*.js"));
7
+ const tFileList = glob.sync(resolve(filePath, "**", "*.ts")).filter((f) => f.indexOf(".d.ts") === -1);
8
+ return [...fileList, ...tFileList];
8
9
  };
10
+ //#endregion
11
+ export { getAllFilesInFolder };
@@ -1,6 +0,0 @@
1
- "use strict";
2
- // export const getAllFnReturnValue =<T>(fnValue: T | Promise<T> ) =>{
3
- // if(fnValue instanceof Promise){
4
- // retu
5
- // }
6
- // }
@@ -1,4 +1,5 @@
1
- export * from "./path.js";
2
- export * from "./loadFile.js";
3
- export * from "./getAllFilesInFolder.js";
4
- export * from "./runFileFn.js";
1
+ import { resolve, splicing } from "./path.js";
2
+ import { getAllFilesInFolder } from "./getAllFilesInFolder.js";
3
+ import { loadFileFn } from "./loadFile.js";
4
+ import { runFileFn } from "./runFileFn.js";
5
+ export { getAllFilesInFolder, loadFileFn, resolve, runFileFn, splicing };
@@ -1,63 +1,49 @@
1
+ import { resolve as resolve$1, splicing } from "./path.js";
1
2
  import { getAllFilesInFolder } from "./getAllFilesInFolder.js";
2
- import { resolve, splicing } from "./path.js";
3
3
  import { sep } from "path";
4
+ //#region packages/utils/loadFile.ts
4
5
  /**
5
- *
6
- * @param baseDir
7
- * @param key
8
- * @param callbackOpt
9
- */
6
+ *
7
+ * @param baseDir
8
+ * @param key
9
+ * @param callbackOpt
10
+ */
10
11
  function loadFileFn(baseDir, key, callbackOpt) {
11
- const { loadFileCallback, processingFileCallback, preProcessingFileCallback, } = callbackOpt ?? {};
12
- if (!key ||
13
- !(loadFileCallback || processingFileCallback || preProcessingFileCallback)) {
14
- throw Error(!key ? "key is request" : "callbackOpt is request");
15
- }
16
- const { _processingFileCallback, _preProcessingFileCallback } = {
17
- _processingFileCallback: processingFileCallback
18
- ? processingFileCallback
19
- : (fileName, filePath, isDir, tempData) => {
20
- if (!isDir) {
21
- // 最后一级
22
- const fileContent = loadFileCallback(filePath);
23
- if (fileContent)
24
- tempData[fileName] = fileContent;
25
- return undefined;
26
- }
27
- else {
28
- if (tempData[fileName]) {
29
- tempData[fileName] = {};
30
- }
31
- return tempData[fileName];
32
- }
33
- },
34
- _preProcessingFileCallback: preProcessingFileCallback
35
- ? preProcessingFileCallback
36
- : (name, result) => {
37
- const searchString = splicing(key, { position: "after" });
38
- const file = name;
39
- name = name.substring(name.lastIndexOf(searchString) + searchString.length, name.lastIndexOf("."));
40
- // -_ 转为驼峰
41
- name = name.replace(/[_-].{1}/gi, (key) => key[1].toUpperCase());
42
- let tempData = result;
43
- const names = name.split(sep);
44
- for (let index = 0; index < names.length; index++) {
45
- const tName = names[index];
46
- const tempResult = _processingFileCallback(tName, file, index !== names.length - 1, tempData);
47
- if (tempResult) {
48
- tempData = tempResult;
49
- }
50
- }
51
- return result;
52
- },
53
- };
54
- const fileList = getAllFilesInFolder(baseDir, key);
55
- let result = {};
56
- fileList.forEach((file) => {
57
- // 提取文件名称
58
- result = _preProcessingFileCallback(resolve(file), result);
59
- });
60
- return result;
12
+ const { loadFileCallback, processingFileCallback, preProcessingFileCallback } = callbackOpt ?? {};
13
+ if (!key || !(loadFileCallback || processingFileCallback || preProcessingFileCallback)) throw Error(!key ? "key is request" : "callbackOpt is request");
14
+ const { _processingFileCallback, _preProcessingFileCallback } = {
15
+ _processingFileCallback: processingFileCallback ? processingFileCallback : (fileName, filePath, isDir, tempData) => {
16
+ if (!isDir) {
17
+ const fileContent = loadFileCallback(filePath);
18
+ if (fileContent) tempData[fileName] = fileContent;
19
+ return;
20
+ } else {
21
+ if (tempData[fileName]) tempData[fileName] = {};
22
+ return tempData[fileName];
23
+ }
24
+ },
25
+ _preProcessingFileCallback: preProcessingFileCallback ? preProcessingFileCallback : (name, result) => {
26
+ const searchString = splicing(key, { position: "after" });
27
+ const file = name;
28
+ name = name.substring(name.lastIndexOf(searchString) + searchString.length, name.lastIndexOf("."));
29
+ name = name.replace(/[_-].{1}/gi, (key) => key[1].toUpperCase());
30
+ let tempData = result;
31
+ const names = name.split(sep);
32
+ for (let index = 0; index < names.length; index++) {
33
+ const tName = names[index];
34
+ const tempResult = _processingFileCallback(tName, file, index !== names.length - 1, tempData);
35
+ if (tempResult) tempData = tempResult;
36
+ }
37
+ return result;
38
+ }
39
+ };
40
+ const fileList = getAllFilesInFolder(baseDir, key);
41
+ let result = {};
42
+ fileList.forEach((file) => {
43
+ result = _preProcessingFileCallback(resolve$1(file), result);
44
+ });
45
+ return result;
61
46
  }
62
- export { loadFileFn };
63
- export default { loadFileFn };
47
+ var loadFile_default = { loadFileFn };
48
+ //#endregion
49
+ export { loadFile_default as default, loadFileFn };
@@ -1,27 +1,28 @@
1
- import * as path from "path";
1
+ import * as path$1 from "path";
2
2
  import { sep } from "path";
3
+ //#region packages/utils/path.ts
3
4
  /**
4
- * splicing('path') : /path
5
- */
6
- export function splicing(str, opt) {
7
- const { symbol, position } = opt ?? {
8
- symbol: sep,
9
- position: "before",
10
- };
11
- // before <- symbol + str
12
- // after -> str + symbol
13
- return [str, symbol][position === "before" ? "reduceRight" : "reduce"]((o, c) => o + c, "");
5
+ * splicing('path') : /path
6
+ */
7
+ function splicing(str, opt) {
8
+ const { symbol, position } = opt ?? {
9
+ symbol: sep,
10
+ position: "before"
11
+ };
12
+ return [str, symbol][position === "before" ? "reduceRight" : "reduce"]((o, c) => o + c, "");
14
13
  }
15
14
  /**
16
- *
17
- * @param paths
18
- * @description input [a,b,c] -> out a/b/c
19
- *
20
- * window: input [a,b,c] -> out a\b\c
21
- *
22
- * 拼接路径
23
- */
24
- export function resolve(...paths) {
25
- const [basePath, ...otherPath] = paths;
26
- return path.resolve(basePath, otherPath.length ? "." + splicing(otherPath.join(sep)) : "");
15
+ *
16
+ * @param paths
17
+ * @description input [a,b,c] -> out a/b/c
18
+ *
19
+ * window: input [a,b,c] -> out a\b\c
20
+ *
21
+ * 拼接路径
22
+ */
23
+ function resolve(...paths) {
24
+ const [basePath, ...otherPath] = paths;
25
+ return path$1.resolve(basePath, otherPath.length ? "." + splicing(otherPath.join(sep)) : "");
27
26
  }
27
+ //#endregion
28
+ export { resolve, splicing };
@@ -1 +1,4 @@
1
- export const runFileFn = (fn) => typeof fn === "function" ? fn : fn.default;
1
+ //#region packages/utils/runFileFn.ts
2
+ var runFileFn = (fn) => typeof fn === "function" ? fn : fn.default;
3
+ //#endregion
4
+ export { runFileFn };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@_tc/template-core",
3
- "version": "0.0.1-bate.29",
3
+ "version": "0.0.1-bate.30",
4
4
  "description": "A TypeScript Koa framework template - Monorepo root",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",
@@ -28,6 +28,7 @@
28
28
  },
29
29
  "dependencies": {
30
30
  "@babel/runtime": "^7.27.6",
31
+ "@tailwindcss/vite": "^4.2.4",
31
32
  "ajv": "^8.18.0",
32
33
  "glob": "^10.3.10",
33
34
  "knex": "^3.2.3",
@@ -38,26 +39,27 @@
38
39
  "log4js": "^6.9.1",
39
40
  "md5": "^2.3.0",
40
41
  "nunjucks": "^3.2.4",
41
- "superagent": "^7.1.0"
42
+ "superagent": "^7.1.0",
43
+ "tailwind": "^4.0.0"
42
44
  },
43
45
  "peerDependencies": {
44
- "vite": "^6.3.4",
45
46
  "@types/node": ">=18.0.0",
46
47
  "@vitejs/plugin-react": "^4.3.4",
47
- "vite-plugin-html": "^3.2.2",
48
48
  "chokidar": "^4.0.3",
49
+ "clsx": "^2.1.0",
50
+ "date-fns": "^3.6.0",
49
51
  "koa": "^2.15.0",
50
52
  "koa-nunjucks-2": "^3.0.2",
51
53
  "koa-router": "^12.0.1",
52
54
  "lodash": "^4.17.21",
53
- "react": "^19.0.0",
54
- "react-dom": "^19.0.0",
55
- "clsx": "^2.1.0",
56
- "date-fns": "^3.6.0",
57
55
  "lucide-react": "^0.468.0",
58
56
  "rc-field-form": "^1.44.0",
57
+ "react": "^19.0.0",
58
+ "react-dom": "^19.0.0",
59
59
  "react-router-dom": "^6.28.0",
60
60
  "tailwind-merge": "^2.4.0",
61
+ "vite": "^8.0.0",
62
+ "vite-plugin-html": "^3.2.2",
61
63
  "xlsx": "^0.18.5",
62
64
  "zustand": "^5.0.0"
63
65
  },
@@ -1,12 +0,0 @@
1
- import type { KoaApp, Ctx } from "../type";
2
- declare const _default: (app: KoaApp) => {
3
- new (): {
4
- readonly app: KoaApp;
5
- readonly config: KoaApp["config"];
6
- get service(): import("../../packages/core/index.js").FrameworkAugment.IServiceAugmented;
7
- success(ctx: Ctx, data: unknown): void;
8
- fail(ctx: Ctx, code: number, message: string): void;
9
- sendData(ctx: Ctx, data?: unknown, code?: number, message?: string | null, status?: number): void;
10
- };
11
- };
12
- export default _default;
@@ -1,10 +0,0 @@
1
- import type { KoaApp, Ctx } from "../type";
2
- export interface IProjectController {
3
- getModelList(ctx: Ctx): Promise<void>;
4
- getProjectList(ctx: Ctx): Promise<void>;
5
- getProject(ctx: Ctx): Promise<void>;
6
- success(ctx: Ctx, data: unknown): void;
7
- fail(ctx: Ctx, code: number, message: string): void;
8
- }
9
- declare const getProjectController: (app: KoaApp) => new () => IProjectController;
10
- export default getProjectController;
@@ -1,7 +0,0 @@
1
- import type { KoaApp, Ctx } from "../type";
2
- declare const getViewController: (app: KoaApp) => {
3
- new (): {
4
- renderPage(ctx: Ctx): Promise<void>;
5
- };
6
- };
7
- export default getViewController;
@@ -1 +0,0 @@
1
- export declare const signKey = "sakjdfnkjwjfnfkjkjldljksndf";
@@ -1,2 +0,0 @@
1
- import type { KoaApp } from "../type";
2
- export default function getDB(app: KoaApp): Promise<{}>;
@@ -1,7 +0,0 @@
1
- interface ErrorOption {
2
- status?: number;
3
- code?: string | number;
4
- showError?: boolean;
5
- }
6
- declare const _default: () => (message: string, option?: ErrorOption) => never;
7
- export default _default;
@@ -1,11 +0,0 @@
1
- import type { KoaApp } from "../type";
2
- interface MConsole {
3
- log: (...args: any[]) => void;
4
- info: (...args: any[]) => void;
5
- warn: (...args: any[]) => void;
6
- error: (...args: any[]) => void;
7
- debug: (...args: any[]) => void;
8
- trace: (...args: any[]) => void;
9
- }
10
- declare const _default: (app: KoaApp) => Promise<MConsole>;
11
- export default _default;
@@ -1,2 +0,0 @@
1
- declare const _default: () => (urlRules: string, url: string) => Record<string, string> | null;
2
- export default _default;
@@ -1,3 +0,0 @@
1
- import type { Ctx, KoaApp } from "../type";
2
- declare const _default: (app: KoaApp) => (view: string, ctx: Ctx, context?: Record<string, unknown>) => void;
3
- export default _default;
@@ -1,4 +0,0 @@
1
- import type Koa from "koa";
2
- import type { KoaApp, Ctx } from "../type";
3
- declare const _default: (app: KoaApp) => (ctx: Ctx, next: Koa.Next) => Promise<any>;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import type Koa from "koa";
2
- import type { Ctx, KoaApp } from "../type";
3
- declare const _default: (app: KoaApp) => (ctx: Ctx, next: Koa.Next) => Promise<void>;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import type { Ctx, KoaApp } from "../type";
2
- import type Koa from "koa";
3
- declare const _default: (app: KoaApp) => (ctx: Ctx, next: Koa.Next) => Promise<void>;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import type { Ctx } from "../type";
2
- import type Koa from "koa";
3
- declare const _default: () => (ctx: Ctx, next: Koa.Next) => Promise<void>;
4
- export default _default;
@@ -1,3 +0,0 @@
1
- import type { KoaApp } from "./typings";
2
- declare const _default: (app: KoaApp) => void;
3
- export default _default;
@@ -1,4 +0,0 @@
1
- import type { KoaApp } from '../type';
2
- import type Router from 'koa-router';
3
- declare const _default: (app: KoaApp, router: Router) => void;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import type { KoaApp } from "../type";
2
- import type Router from "koa-router";
3
- declare const _default: (app: KoaApp, router: Router) => void;
4
- export default _default;
@@ -1,3 +0,0 @@
1
- import type { RouterSchemaType } from './types';
2
- declare const routerSchema: RouterSchemaType;
3
- export default routerSchema;
@@ -1,10 +0,0 @@
1
- import type { KoaApp } from "../type";
2
- import superagent from "superagent";
3
- declare const _default: (app: KoaApp) => {
4
- new (): {
5
- get app(): KoaApp;
6
- get config(): KoaApp["config"];
7
- get curl(): superagent.SuperAgentStatic<superagent.Request>;
8
- };
9
- };
10
- export default _default;
@@ -1,27 +0,0 @@
1
- import type { KoaApp } from "../type";
2
- export interface ProjectItem {
3
- key: string;
4
- name: string;
5
- desc: string;
6
- homePage: string;
7
- modelKey?: string;
8
- }
9
- export interface ModelItem {
10
- model: {
11
- key: string;
12
- name: string;
13
- desc: string;
14
- };
15
- project: Record<string, ProjectItem>;
16
- }
17
- declare const getProjectService: (app: KoaApp) => {
18
- new (): {
19
- getModelList(): Promise<ModelItem[]>;
20
- getList: (key?: string) => ProjectItem[];
21
- getProject: (projectKey: string) => ProjectItem | null;
22
- get app(): KoaApp;
23
- get config(): KoaApp["config"];
24
- get curl(): import("superagent/lib/node").SuperAgentStatic<import("superagent/lib/node").Request>;
25
- };
26
- };
27
- export default getProjectService;
package/cjs/app/type.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export type KoaApp = import("./typings").KoaApp;
2
- export type Ctx = KoaApp["context"];