@akanjs/cli 0.9.58-canary.0 → 0.9.58-canary.2

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 (25) hide show
  1. package/cjs/index.js +555 -133
  2. package/cjs/src/templates/app/lib/___appName__/__appName__.dictionary.js +6 -3
  3. package/cjs/src/templates/app/lib/___appName__/__appName__.service.js +1 -1
  4. package/cjs/src/templates/app/{middleware.js → proxy.js} +5 -5
  5. package/cjs/src/templates/lib/cnst.js +1 -1
  6. package/cjs/src/templates/libRoot/lib/___libName__/__libName__.dictionary.js +7 -3
  7. package/cjs/src/templates/libRoot/lib/___libName__/__libName__.service.js +1 -1
  8. package/cjs/src/templates/localDev/docker-compose.yaml.template +7 -1
  9. package/cjs/src/templates/module/__model__.service.js +1 -1
  10. package/cjs/src/templates/workspaceRoot/package.json.template +9 -9
  11. package/esm/index.js +549 -127
  12. package/esm/src/templates/app/lib/___appName__/__appName__.dictionary.js +6 -3
  13. package/esm/src/templates/app/lib/___appName__/__appName__.service.js +1 -1
  14. package/esm/src/templates/app/{middleware.js → proxy.js} +2 -2
  15. package/esm/src/templates/lib/cnst.js +1 -1
  16. package/esm/src/templates/libRoot/lib/___libName__/__libName__.dictionary.js +7 -3
  17. package/esm/src/templates/libRoot/lib/___libName__/__libName__.service.js +1 -1
  18. package/esm/src/templates/localDev/docker-compose.yaml.template +7 -1
  19. package/esm/src/templates/module/__model__.service.js +1 -1
  20. package/esm/src/templates/workspaceRoot/package.json.template +9 -9
  21. package/package.json +4 -4
  22. package/src/application/application.command.d.ts +3 -3
  23. package/src/application/application.runner.d.ts +14 -5
  24. package/src/application/application.script.d.ts +7 -6
  25. /package/src/templates/app/{middleware.d.ts → proxy.d.ts} +0 -0
@@ -1,11 +1,14 @@
1
1
  // pkgs/@akanjs/cli/src/templates/app/lib/___appName__/__appName__.dictionary.ts
2
2
  function getContent(scanInfo, dict) {
3
3
  return `
4
- import type { SignalDictionary } from "@akanjs/dictionary";
4
+ import { serviceDictionary } from "@akanjs/dictionary";
5
+
5
6
  import type { ${dict.AppName}Endpoint } from "./${dict.appName}.signal";
6
7
 
7
- export const dictionary = {} satisfies SignalDictionary<${dict.AppName}Endpoint>;
8
- `;
8
+ export const dictionary = serviceDictionary(["en", "ko"])
9
+ .endpoint<${dict.AppName}Endpoint>((fn) => ({}))
10
+ .translate({});
11
+ `;
9
12
  }
10
13
  export {
11
14
  getContent as default
@@ -3,7 +3,7 @@ function getContent(scanInfo, dict) {
3
3
  return `
4
4
  import { serve } from "@akanjs/service";
5
5
 
6
- export class ${dict.AppName}Service extends serve("${dict.appName}" as const, { serverMode: "batch" }) {}
6
+ export class ${dict.AppName}Service extends serve("${dict.appName}" as const, { serverMode: "batch" }, () => ({})) {}
7
7
  `;
8
8
  }
9
9
  export {
@@ -1,4 +1,4 @@
1
- // pkgs/@akanjs/cli/src/templates/app/middleware.ts
1
+ // pkgs/@akanjs/cli/src/templates/app/proxy.ts
2
2
  function getContent(scanInfo, dict) {
3
3
  return `
4
4
  import { createNextMiddleware } from "@akanjs/next";
@@ -7,7 +7,7 @@ export const config = {
7
7
  unstable_allowDynamic: ["/node_modules/reflect-metadata/**"],
8
8
  matcher: ["/((?!api|_next|.*\\\\..*).*)"],
9
9
  };
10
- export const middleware = createNextMiddleware();
10
+ export const proxy = createNextMiddleware();
11
11
  `;
12
12
  }
13
13
  export {
@@ -26,7 +26,7 @@ ${scalarModules.map((module) => `export * from "./__scalar/${module}/${module}.c
26
26
 
27
27
  ${databaseModules.map((module) => {
28
28
  const names = { Module: capitalize(module) };
29
- return `export const ${module} = cnstOf("${module}" as const, ${module}Cnst.${names.Module}Input, ${module}Cnst.${names.Module}, ${module}Cnst.Light${names.Module}, ${module}Cnst.${names.Module}Insight${extendedModelMap.has(module) ? ", { overwrite: true }" : ""});`;
29
+ return `export const ${module} = cnstOf("${module}" as const, ${module}Cnst.${names.Module}Input, ${module}Cnst.${names.Module}Object, ${module}Cnst.${names.Module}, ${module}Cnst.Light${names.Module}, ${module}Cnst.${names.Module}Insight${extendedModelMap.has(module) ? ", { overwrite: true }" : ""});`;
30
30
  }).join("\n")}
31
31
  ${scalarModules.map((module) => `export const ${module} = scalarCnstOf("${module}" as const, ${capitalize(module)});`).join("\n")}
32
32
  `;
@@ -1,10 +1,14 @@
1
1
  // pkgs/@akanjs/cli/src/templates/libRoot/lib/___libName__/__libName__.dictionary.ts
2
2
  function getContent(scanInfo, dict) {
3
3
  return `
4
- const dictionary = {} as const;
4
+ import { serviceDictionary } from "@akanjs/dictionary";
5
5
 
6
- export const ${dict.libName}Dictionary = dictionary;
7
- `;
6
+ import type { ${dict.LibName}Endpoint } from "./${dict.libName}.signal";
7
+
8
+ export const dictionary = serviceDictionary(["en", "ko"])
9
+ .endpoint<${dict.LibName}Endpoint>((fn) => ({}))
10
+ .translate({});
11
+ `;
8
12
  }
9
13
  export {
10
14
  getContent as default
@@ -5,7 +5,7 @@ import { serve } from "@akanjs/service";
5
5
 
6
6
  // import type * as srv from "../srv";
7
7
 
8
- export class ${dict.LibName}Service extends serve("${dict.libName}" as const, { serverMode: "batch" }) {}
8
+ export class ${dict.LibName}Service extends serve("${dict.libName}" as const, { serverMode: "batch" }, () => ({})) {}
9
9
  `;
10
10
  }
11
11
  export {
@@ -19,7 +19,13 @@ services:
19
19
  - 27017:27017
20
20
  volumes:
21
21
  - ./mongo/local/data:/data/db
22
- command: mongod --dbpath /data/db
22
+ entrypoint: >
23
+ bash -c "
24
+ mongod --dbpath /data/db --replSet rs0 --bind_ip_all --fork --logpath /var/log/mongodb.log &&
25
+ until mongosh --eval 'db.adminCommand(\"ping\")' > /dev/null 2>&1; do sleep 1; done &&
26
+ mongosh --eval 'try { rs.status() } catch(e) { rs.initiate({_id: \"rs0\", members: [{_id: 0, host: \"localhost:27017\"}]}) }' &&
27
+ tail -f /var/log/mongodb.log
28
+ "
23
29
  networks:
24
30
  - <%= repoName %>-network
25
31
  meili:
@@ -6,7 +6,7 @@ import { serve } from "@akanjs/service";
6
6
  import * as cnst from "../cnst";
7
7
  import * as db from "../db";
8
8
 
9
- export class ${dict.Model}Service extends serve(db.${dict.model}) {}
9
+ export class ${dict.Model}Service extends serve(db.${dict.model}, () => ({})) {}
10
10
  `;
11
11
  }
12
12
  export {
@@ -3,17 +3,17 @@
3
3
  "description": "<%= repoName %> workspace",
4
4
  "version": "0.0.1",
5
5
  "dependencies": {
6
- "next": "15.3.2",
7
- "react": "19.1.1",
8
- "react-dom": "19.1.1",
9
- "tailwindcss": "^4.1.7",
10
- "daisyui": "^5.0.35"
6
+ "next": "16.0.3",
7
+ "react": "19.2.0",
8
+ "react-dom": "19.2.0",
9
+ "tailwindcss": "^4.1.11",
10
+ "daisyui": "^5.5.5"
11
11
  },
12
12
  "devDependencies": {
13
- "@types/node": "^22.9.0",
14
- "@tailwindcss/postcss": "^4.1.7",
15
- "@types/react": "19.1.1",
16
- "@types/react-dom": "19.1.1",
13
+ "@types/node": "^22.10.4",
14
+ "@tailwindcss/postcss": "^4.1.11",
15
+ "@types/react": "19.2.0",
16
+ "@types/react-dom": "19.2.0",
17
17
  "crypto-browserify": "^3.12.1",
18
18
  "eslint": "^9.19.0",
19
19
  "https-browserify": "^1.0.0",
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "type": "module",
3
3
  "sourceType": "module",
4
4
  "name": "@akanjs/cli",
5
- "version": "0.9.58-canary.0",
5
+ "version": "0.9.58-canary.2",
6
6
  "bin": {
7
7
  "akan": "esm/index.js"
8
8
  },
@@ -23,7 +23,7 @@
23
23
  "@langchain/core": "^0.3.56",
24
24
  "@langchain/deepseek": "^0.0.1",
25
25
  "@langchain/openai": "^0.5.10",
26
- "@next/bundle-analyzer": "^15.1.3",
26
+ "@next/bundle-analyzer": "^16.0.3",
27
27
  "@trapezedev/project": "^7.1.3",
28
28
  "@vitejs/plugin-react": "^4.7.0",
29
29
  "axios": "^1.7.9",
@@ -41,13 +41,13 @@
41
41
  "js-yaml": "^4.1.0",
42
42
  "latest-version": "^9.0.0",
43
43
  "lodash": "^4.17.21",
44
- "next": "15.3.2",
44
+ "next": "16.0.3",
45
45
  "next-pwa": "5.6.0",
46
46
  "open": "^10.1.1",
47
47
  "ora": "^3.4.0",
48
48
  "pluralize": "^8.0.0",
49
49
  "qrcode": "^1.5.4",
50
- "react": "19.1.1",
50
+ "react": "19.2.0",
51
51
  "react-icons": "^5.4.0",
52
52
  "reflect-metadata": "^0.2.2",
53
53
  "tsconfig-paths": "^4.2.0",
@@ -17,15 +17,15 @@ export declare class ApplicationCommand {
17
17
  startFrontend(app: App, open: boolean, turbo: boolean, sync: boolean): Promise<void>;
18
18
  startCsr(app: App, open: boolean, sync: boolean): Promise<void>;
19
19
  startIos(app: App, open: boolean, release: boolean, sync: boolean): Promise<void>;
20
- startAndroid(app: App, open: boolean, release: boolean, sync: boolean): Promise<void>;
20
+ startAndroid(app: App, host: "local" | "debug" | "develop" | "main", release: boolean, open: boolean, sync: boolean): Promise<void>;
21
21
  releaseIos(app: App): Promise<void>;
22
- releaseAndroid(app: App): Promise<void>;
22
+ releaseAndroid(app: App, assembleType: "apk" | "aab"): Promise<void>;
23
23
  releaseSource(app: App, rebuild: boolean, buildNum: number, environment: string, local: boolean): Promise<void>;
24
+ codepush(app: App): Promise<void>;
24
25
  dumpDatabase(app: App, environment: string): Promise<void>;
25
26
  restoreDatabase(app: App, source: string, target: string): Promise<void>;
26
27
  dbup(workspace: Workspace): Promise<void>;
27
28
  dbdown(workspace: Workspace): Promise<void>;
28
29
  pullDatabase(app: App, env: string, dump: boolean): Promise<void>;
29
30
  configureApp(app: App): Promise<void>;
30
- test(sys: Sys): Promise<void>;
31
31
  }
@@ -13,7 +13,9 @@ export declare class ApplicationRunner {
13
13
  createApplication(appName: string, workspace: Workspace): Promise<AppExecutor>;
14
14
  removeApplication(app: App): Promise<void>;
15
15
  getConfig(app: App): Promise<import("@akanjs/config").AppConfigResult>;
16
- scanSync(app: App): Promise<import("@akanjs/devkit").AppInfo | import("@akanjs/devkit").LibInfo>;
16
+ scanSync(app: App, { refresh }?: {
17
+ refresh?: boolean;
18
+ }): Promise<import("@akanjs/devkit").AppInfo | import("@akanjs/devkit").LibInfo>;
17
19
  getScriptFilename(app: App): Promise<string>;
18
20
  runScript(app: App, filename: string): Promise<void>;
19
21
  buildBackend(app: App): Promise<void>;
@@ -31,7 +33,10 @@ export declare class ApplicationRunner {
31
33
  onStart?: () => void;
32
34
  withInk?: boolean;
33
35
  }): Promise<import("child_process").ChildProcess>;
34
- buildCsr(app: App): Promise<void>;
36
+ buildCsr(app: App, { operation, host }?: {
37
+ operation?: "local" | "release";
38
+ host?: "local" | "debug" | "develop" | "main";
39
+ }): Promise<void>;
35
40
  startCsr(app: App, { open, onStart, withInk }?: {
36
41
  open?: boolean;
37
42
  onStart?: () => void;
@@ -41,17 +46,20 @@ export declare class ApplicationRunner {
41
46
  eventEmitter: EventEmitter<[never]>;
42
47
  }>;
43
48
  buildIos(app: App): Promise<void>;
44
- startIos(app: App, { open, operation }?: {
49
+ startIos(app: App, { open, operation, host, }?: {
45
50
  open?: boolean;
46
51
  operation?: "local" | "release";
52
+ host?: "local" | "debug" | "develop" | "main";
47
53
  }): Promise<void>;
48
54
  releaseIos(app: App): Promise<void>;
49
55
  buildAndroid(app: App): Promise<void>;
50
- startAndroid(app: App, { open, operation }?: {
56
+ startAndroid(app: App, { open, operation, host, }?: {
51
57
  open?: boolean;
52
58
  operation?: "local" | "release";
59
+ host?: "local" | "debug" | "develop" | "main";
53
60
  }): Promise<void>;
54
- releaseAndroid(app: App): Promise<void>;
61
+ releaseAndroid(app: App, assembleType: "apk" | "aab"): Promise<void>;
62
+ codepush(app: App, os: "ios" | "android"): Promise<void>;
55
63
  dumpDatabase(app: App, environment: string): Promise<void>;
56
64
  restoreDatabase(app: App, source: string, target: string): Promise<void>;
57
65
  dbup(workspace: Workspace): Promise<void>;
@@ -59,6 +67,7 @@ export declare class ApplicationRunner {
59
67
  configureApp(app: App): Promise<void>;
60
68
  releaseSource(app: App, { rebuild, buildNum, environment, local }?: ReleaseSourceOptions): Promise<void>;
61
69
  createApplicationTemplate(workspace: Workspace, appName: string): Promise<void>;
70
+ compressProjectFiles(app: App, { rebuild, buildNum, environment, local }?: ReleaseSourceOptions): Promise<void>;
62
71
  generateApplicationTemplate(app: App): Promise<void>;
63
72
  testApplication(app: App): Promise<void>;
64
73
  }
@@ -50,9 +50,10 @@ export declare class ApplicationScript {
50
50
  buildIos(app: App, { sync }?: {
51
51
  sync?: boolean;
52
52
  }): Promise<void>;
53
- startIos(app: App, { open, operation, sync, }?: {
53
+ startIos(app: App, { open, operation, host, sync, }: {
54
+ operation: "local" | "release";
55
+ host: "local" | "debug" | "develop" | "main";
54
56
  open?: boolean;
55
- operation?: "local" | "release";
56
57
  sync?: boolean;
57
58
  }): Promise<void>;
58
59
  releaseIos(app: App, { sync }?: {
@@ -61,19 +62,19 @@ export declare class ApplicationScript {
61
62
  buildAndroid(app: App, { sync }?: {
62
63
  sync?: boolean;
63
64
  }): Promise<void>;
64
- startAndroid(app: App, { open, operation, sync, }?: {
65
+ startAndroid(app: App, { open, operation, host, sync, }?: {
65
66
  open?: boolean;
67
+ host?: "local" | "debug" | "develop" | "main";
66
68
  operation?: "local" | "release";
67
69
  sync?: boolean;
68
70
  }): Promise<void>;
69
- releaseAndroid(app: App, { sync }?: {
70
- sync?: boolean;
71
- }): Promise<void>;
71
+ releaseAndroid(app: App, assembleType: "apk" | "aab"): Promise<void>;
72
72
  dumpDatabase(app: App, environment: string): Promise<void>;
73
73
  restoreDatabase(app: App, source: string, target: string): Promise<void>;
74
74
  pullDatabase(app: App, environment: string, dump?: boolean): Promise<void>;
75
75
  configureApp(app: App): Promise<void>;
76
76
  releaseSource(app: App, options: ReleaseSourceOptions): Promise<void>;
77
+ codepush(app: App, os: "ios" | "android"): Promise<void>;
77
78
  dbup(workspace: Workspace): Promise<void>;
78
79
  dbdown(workspace: Workspace): Promise<void>;
79
80
  testSys(sys: Sys): Promise<void>;