@lark-base-open/base-database-cli 1.1.1 → 1.3.8

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 (199) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/LICENSE +6 -0
  3. package/README.md +47 -27
  4. package/dist/ai-functions.d.ts +53 -0
  5. package/dist/ai-functions.d.ts.map +1 -0
  6. package/dist/ai-functions.js +436 -0
  7. package/dist/ai-functions.js.map +1 -0
  8. package/dist/archive.d.ts +21 -0
  9. package/dist/archive.d.ts.map +1 -1
  10. package/dist/archive.js +69 -10
  11. package/dist/archive.js.map +1 -1
  12. package/dist/auth.d.ts +5 -0
  13. package/dist/auth.d.ts.map +1 -1
  14. package/dist/auth.js +26 -3
  15. package/dist/auth.js.map +1 -1
  16. package/dist/check.d.ts +74 -0
  17. package/dist/check.d.ts.map +1 -0
  18. package/dist/check.js +283 -0
  19. package/dist/check.js.map +1 -0
  20. package/dist/dependency-policy.d.ts +10 -0
  21. package/dist/dependency-policy.d.ts.map +1 -0
  22. package/dist/dependency-policy.js +162 -0
  23. package/dist/dependency-policy.js.map +1 -0
  24. package/dist/deploy.d.ts +5 -0
  25. package/dist/deploy.d.ts.map +1 -1
  26. package/dist/deploy.js +141 -176
  27. package/dist/deploy.js.map +1 -1
  28. package/dist/environment-variables.d.ts +52 -0
  29. package/dist/environment-variables.d.ts.map +1 -0
  30. package/dist/environment-variables.js +563 -0
  31. package/dist/environment-variables.js.map +1 -0
  32. package/dist/environment.d.ts +1 -1
  33. package/dist/environment.js +1 -1
  34. package/dist/environment.js.map +1 -1
  35. package/dist/function-input-types.d.ts +10 -0
  36. package/dist/function-input-types.d.ts.map +1 -0
  37. package/dist/function-input-types.js +160 -0
  38. package/dist/function-input-types.js.map +1 -0
  39. package/dist/function-schema.d.ts.map +1 -1
  40. package/dist/function-schema.js +89 -36
  41. package/dist/function-schema.js.map +1 -1
  42. package/dist/init-field-retry.d.ts +17 -0
  43. package/dist/init-field-retry.d.ts.map +1 -0
  44. package/dist/init-field-retry.js +127 -0
  45. package/dist/init-field-retry.js.map +1 -0
  46. package/dist/init-journal.d.ts +98 -0
  47. package/dist/init-journal.d.ts.map +1 -0
  48. package/dist/init-journal.js +492 -0
  49. package/dist/init-journal.js.map +1 -0
  50. package/dist/init-schema.d.ts +8 -0
  51. package/dist/init-schema.d.ts.map +1 -0
  52. package/dist/init-schema.js +423 -0
  53. package/dist/init-schema.js.map +1 -0
  54. package/dist/init.d.ts +15 -1
  55. package/dist/init.d.ts.map +1 -1
  56. package/dist/init.js +884 -261
  57. package/dist/init.js.map +1 -1
  58. package/dist/lark-cli-error.d.ts +47 -0
  59. package/dist/lark-cli-error.d.ts.map +1 -0
  60. package/dist/lark-cli-error.js +201 -0
  61. package/dist/lark-cli-error.js.map +1 -0
  62. package/dist/lark-cli.d.ts +1 -1
  63. package/dist/lark-cli.d.ts.map +1 -1
  64. package/dist/lark-cli.js +78 -18
  65. package/dist/lark-cli.js.map +1 -1
  66. package/dist/mutation-schema.d.ts +146 -0
  67. package/dist/mutation-schema.d.ts.map +1 -0
  68. package/dist/mutation-schema.js +153 -0
  69. package/dist/mutation-schema.js.map +1 -0
  70. package/dist/mutation.d.ts +10 -0
  71. package/dist/mutation.d.ts.map +1 -0
  72. package/dist/mutation.js +131 -0
  73. package/dist/mutation.js.map +1 -0
  74. package/dist/npm.d.ts +1 -0
  75. package/dist/npm.d.ts.map +1 -1
  76. package/dist/npm.js +2 -2
  77. package/dist/npm.js.map +1 -1
  78. package/dist/preview-receipt.d.ts.map +1 -1
  79. package/dist/preview-receipt.js +15 -5
  80. package/dist/preview-receipt.js.map +1 -1
  81. package/dist/process.d.ts +3 -1
  82. package/dist/process.d.ts.map +1 -1
  83. package/dist/process.js +16 -4
  84. package/dist/process.js.map +1 -1
  85. package/dist/program.d.ts.map +1 -1
  86. package/dist/program.js +246 -42
  87. package/dist/program.js.map +1 -1
  88. package/dist/project-build.d.ts +25 -0
  89. package/dist/project-build.d.ts.map +1 -0
  90. package/dist/project-build.js +229 -0
  91. package/dist/project-build.js.map +1 -0
  92. package/dist/project-context.d.ts +344 -0
  93. package/dist/project-context.d.ts.map +1 -0
  94. package/dist/project-context.js +485 -0
  95. package/dist/project-context.js.map +1 -0
  96. package/dist/project-layout.d.ts +5 -0
  97. package/dist/project-layout.d.ts.map +1 -0
  98. package/dist/project-layout.js +24 -0
  99. package/dist/project-layout.js.map +1 -0
  100. package/dist/public-sql-error.d.ts +25 -0
  101. package/dist/public-sql-error.d.ts.map +1 -0
  102. package/dist/public-sql-error.js +65 -0
  103. package/dist/public-sql-error.js.map +1 -0
  104. package/dist/pull.d.ts +1 -0
  105. package/dist/pull.d.ts.map +1 -1
  106. package/dist/pull.js +67 -15
  107. package/dist/pull.js.map +1 -1
  108. package/dist/site-readme.d.ts +3 -0
  109. package/dist/site-readme.d.ts.map +1 -0
  110. package/dist/site-readme.js +83 -0
  111. package/dist/site-readme.js.map +1 -0
  112. package/dist/workspace-fingerprint.d.ts +21 -1
  113. package/dist/workspace-fingerprint.d.ts.map +1 -1
  114. package/dist/workspace-fingerprint.js +81 -2
  115. package/dist/workspace-fingerprint.js.map +1 -1
  116. package/package.json +2 -1
  117. package/skills/lark-base-database/SKILL.md +86 -52
  118. package/skills/lark-base-database/references/ai-function.md +479 -0
  119. package/skills/lark-base-database/references/base-capability-routing.md +7 -7
  120. package/skills/lark-base-database/references/base-sql-errors.generated.md +403 -0
  121. package/skills/lark-base-database/references/database-function-limitations.md +29 -0
  122. package/skills/lark-base-database/references/database-function.md +323 -0
  123. package/skills/lark-base-database/references/development.md +166 -33
  124. package/skills/lark-base-database/references/environment-variables.md +55 -0
  125. package/skills/lark-base-database/references/faas.md +46 -53
  126. package/skills/lark-base-database/references/file-transfer.md +25 -25
  127. package/skills/lark-base-database/references/frontend-design-guide.md +151 -65
  128. package/skills/lark-base-database/references/mutations.md +295 -0
  129. package/skills/lark-base-database/references/notifications.md +9 -9
  130. package/skills/lark-base-database/references/permission-design.md +24 -24
  131. package/skills/lark-base-database/references/release.md +57 -30
  132. package/skills/lark-base-database/references/style-guide.md +10 -67
  133. package/skills/lark-base-database/references/verification.md +19 -13
  134. package/skills/lark-base-database/references/workspace.md +57 -17
  135. package/templates/database-starter/README.md +34 -4
  136. package/templates/database-starter/database-functions/README.md +8 -0
  137. package/templates/database-starter/gitignore +7 -0
  138. package/templates/database-starter/mutations/README.md +19 -0
  139. package/templates/database-starter/page/README.md +25 -19
  140. package/templates/database-starter/page/package-lock.json +8 -16
  141. package/templates/database-starter/page/package.json +2 -3
  142. package/templates/database-starter/page/src/App.tsx +23 -3
  143. package/templates/database-starter/page/src/components/UserSelectorEditor/index.tsx +32 -4
  144. package/templates/database-starter/page/src/components/UserSelectorPanel/index.tsx +104 -34
  145. package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.test.ts +55 -11
  146. package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.ts +68 -25
  147. package/templates/database-starter/page/src/components/database-runtime-ready.tsx +1 -1
  148. package/templates/database-starter/page/src/components/database-user-menu/index.tsx +4 -7
  149. package/templates/database-starter/page/src/components/feedback/page-state.tsx +40 -5
  150. package/templates/database-starter/page/src/components/floating-button/assets/edit-active.svg +3 -0
  151. package/templates/database-starter/page/src/components/floating-button/assets/edit-default.svg +3 -0
  152. package/templates/database-starter/page/src/components/floating-button/assets/toast-close.svg +3 -0
  153. package/templates/database-starter/page/src/components/floating-button/assets/toast-info.svg +5 -0
  154. package/templates/database-starter/page/src/components/floating-button/assets/tooltip-caret.svg +3 -0
  155. package/templates/database-starter/page/src/components/floating-button/index.tsx +193 -113
  156. package/templates/database-starter/page/src/components/floating-button/utils/project-meta.test.ts +107 -37
  157. package/templates/database-starter/page/src/components/floating-button/utils/project-meta.ts +13 -50
  158. package/templates/database-starter/page/src/components/ui-language.test.tsx +101 -0
  159. package/templates/database-starter/page/src/examples/ai-function/ImageTaskOperation.tsx +202 -0
  160. package/templates/database-starter/page/src/examples/ai-function/README.md +14 -0
  161. package/templates/database-starter/page/src/examples/ai-function/TextStreamOperation.tsx +184 -0
  162. package/templates/database-starter/page/src/examples/ai-function/ai-copy.ts +173 -0
  163. package/templates/database-starter/page/src/examples/ai-function/ai-delta.test.ts +30 -0
  164. package/templates/database-starter/page/src/examples/ai-function/ai-delta.ts +26 -0
  165. package/templates/database-starter/page/src/examples/ai-function/ai-language.test.tsx +86 -0
  166. package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.test.ts +201 -0
  167. package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.tsx +382 -0
  168. package/templates/database-starter/page/src/lib/attachment-image.tsx +144 -0
  169. package/templates/database-starter/page/src/lib/database-function-inputs.generated.ts +4 -0
  170. package/templates/database-starter/page/src/lib/database-runtime-attachment.test.ts +180 -76
  171. package/templates/database-starter/page/src/lib/database-runtime.test.ts +130 -10
  172. package/templates/database-starter/page/src/lib/database-runtime.ts +484 -51
  173. package/templates/database-starter/page/src/lib/date-time.ts +61 -0
  174. package/templates/database-starter/page/src/lib/ui-language.ts +86 -0
  175. package/templates/database-starter/page/src/main.tsx +1 -1
  176. package/templates/database-starter/page/tsconfig.json +2 -2
  177. package/templates/database-starter/page/vite.config.ts +1 -2
  178. package/templates/database-starter/prettierignore +1 -1
  179. package/templates/database-starter/server-functions/README.md +2 -2
  180. package/templates/database-starter/server-functions/package-lock.json +4 -4
  181. package/templates/database-starter/server-functions/package.json +1 -1
  182. package/dist/agent-guide.d.ts +0 -19
  183. package/dist/agent-guide.d.ts.map +0 -1
  184. package/dist/agent-guide.js +0 -31
  185. package/dist/agent-guide.js.map +0 -1
  186. package/dist/database-skill.d.ts +0 -24
  187. package/dist/database-skill.d.ts.map +0 -1
  188. package/dist/database-skill.js +0 -148
  189. package/dist/database-skill.js.map +0 -1
  190. package/skills/lark-base-database/references/base-sql-unsupported.md +0 -42
  191. package/skills/lark-base-database/references/database-capability-skill.md +0 -40
  192. package/skills/lark-base-database/references/sql-function.md +0 -289
  193. package/templates/database-capability/SKILL.md.tmpl +0 -58
  194. package/templates/database-starter/page/src/components/floating-button/chatbot-entry.test.ts +0 -23
  195. package/templates/database-starter/page/src/components/floating-button/chatbot-entry.tsx +0 -873
  196. package/templates/database-starter/page/src/components/floating-button/local-chat-panel.test.ts +0 -25
  197. package/templates/database-starter/page/src/components/floating-button/local-chat-panel.tsx +0 -197
  198. package/templates/database-starter/page/src/components/floating-button/utils/env.ts +0 -18
  199. package/templates/database-starter/sql/README.md +0 -8
@@ -1,7 +1,7 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, statSync, writeFileSync, } from 'node:fs';
3
3
  import { dirname, join } from 'node:path';
4
- import { WORKSPACE_INPUT_FINGERPRINT_ALGORITHM, workspaceInputFingerprint, } from './workspace-fingerprint.js';
4
+ import { DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM, LEGACY_DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM, WORKSPACE_INPUT_FINGERPRINT_ALGORITHM, deploymentInputFingerprint, legacyDeploymentInputFingerprint, workspaceInputFingerprint, } from './workspace-fingerprint.js';
5
5
  const PREVIEW_RECEIPT_VERSION = 2;
6
6
  function statePath(workspace, name) {
7
7
  return join(workspace, '.base-database-cli/state', name);
@@ -72,14 +72,24 @@ function verifyArtifact(receipt) {
72
72
  }
73
73
  function verifyWorkspace(workspace, receipt) {
74
74
  if (receipt.receiptVersion !== PREVIEW_RECEIPT_VERSION ||
75
- receipt.workspaceInputFingerprintAlgorithm !==
76
- WORKSPACE_INPUT_FINGERPRINT_ALGORITHM ||
77
75
  typeof receipt.workspaceInputFingerprint !== 'string' ||
78
76
  !/^[0-9a-f]{64}$/.test(receipt.workspaceInputFingerprint)) {
79
77
  throw new Error('The Preview receipt cannot verify the current application workspace; run `deploy` again before publishing Production');
80
78
  }
81
- if (workspaceInputFingerprint(workspace).sha256 !==
82
- receipt.workspaceInputFingerprint) {
79
+ const current = receipt.workspaceInputFingerprintAlgorithm ===
80
+ DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM
81
+ ? deploymentInputFingerprint(workspace)
82
+ : receipt.workspaceInputFingerprintAlgorithm ===
83
+ LEGACY_DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM
84
+ ? legacyDeploymentInputFingerprint(workspace)
85
+ : receipt.workspaceInputFingerprintAlgorithm ===
86
+ WORKSPACE_INPUT_FINGERPRINT_ALGORITHM
87
+ ? workspaceInputFingerprint(workspace)
88
+ : undefined;
89
+ if (!current) {
90
+ throw new Error('The Preview receipt cannot verify the current application workspace; run `deploy` again before publishing Production');
91
+ }
92
+ if (current.sha256 !== receipt.workspaceInputFingerprint) {
83
93
  throw new Error('The application workspace changed after Preview; run `deploy` again before publishing Production');
84
94
  }
85
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"preview-receipt.js","sourceRoot":"","sources":["../src/preview-receipt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preview-receipt.js","sourceRoot":"","sources":["../src/preview-receipt.ts"],"names":[],"mappings":"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"}
package/dist/process.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  export declare class CommandExecutionError extends Error {
2
2
  readonly stderr: string;
3
3
  readonly exitCode: number | null;
4
- constructor(message: string, stderr: string, exitCode: number | null);
4
+ readonly stdout: string;
5
+ constructor(message: string, stderr: string, exitCode: number | null, stdout?: string);
5
6
  }
6
7
  export declare function runCommand(command: string, args: string[], options?: {
7
8
  cwd?: string;
@@ -13,5 +14,6 @@ export declare function runCommandAsync(command: string, args: string[], options
13
14
  cwd?: string;
14
15
  env?: NodeJS.ProcessEnv;
15
16
  captureStderr?: boolean;
17
+ captureOutput?: boolean;
16
18
  }): Promise<void>;
17
19
  //# sourceMappingURL=process.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAEA,qBAAa,qBAAsB,SAAQ,KAAK;IAG5C,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAHlC,YACE,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EAIjC;CACF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,MAAM,CAmBR;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,GACL,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
1
+ {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAEA,qBAAa,qBAAsB,SAAQ,KAAK;IAG5C,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAChC,QAAQ,CAAC,MAAM;IAJjB,YACE,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,MAAM,SAAK,EAIrB;CACF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,MAAM,CAmBR;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,GACL,OAAO,CAAC,IAAI,CAAC,CAqCf"}
package/dist/process.js CHANGED
@@ -2,10 +2,12 @@ import { spawn, spawnSync } from 'node:child_process';
2
2
  export class CommandExecutionError extends Error {
3
3
  stderr;
4
4
  exitCode;
5
- constructor(message, stderr, exitCode) {
5
+ stdout;
6
+ constructor(message, stderr, exitCode, stdout = '') {
6
7
  super(message);
7
8
  this.stderr = stderr;
8
9
  this.exitCode = exitCode;
10
+ this.stdout = stdout;
9
11
  this.name = 'CommandExecutionError';
10
12
  }
11
13
  }
@@ -30,15 +32,25 @@ export function runCommand(command, args, options = {}) {
30
32
  }
31
33
  export function runCommandAsync(command, args, options = {}) {
32
34
  return new Promise((resolve, reject) => {
35
+ const captureOutput = options.captureOutput === true;
33
36
  const child = spawn(command, args, {
34
37
  cwd: options.cwd,
35
38
  env: options.env,
36
- stdio: options.captureStderr ? ['inherit', 'inherit', 'pipe'] : 'inherit',
39
+ stdio: captureOutput
40
+ ? ['inherit', 'pipe', 'pipe']
41
+ : options.captureStderr
42
+ ? ['inherit', 'inherit', 'pipe']
43
+ : 'inherit',
37
44
  });
45
+ let stdout = '';
38
46
  let stderr = '';
47
+ child.stdout?.on('data', (chunk) => {
48
+ stdout = (stdout + chunk.toString('utf8')).slice(-16 * 1024);
49
+ });
39
50
  child.stderr?.on('data', (chunk) => {
40
51
  stderr = (stderr + chunk.toString('utf8')).slice(-16 * 1024);
41
- process.stderr.write(chunk);
52
+ if (!captureOutput)
53
+ process.stderr.write(chunk);
42
54
  });
43
55
  child.once('error', reject);
44
56
  child.once('close', (code, signal) => {
@@ -46,7 +58,7 @@ export function runCommandAsync(command, args, options = {}) {
46
58
  resolve();
47
59
  return;
48
60
  }
49
- reject(new CommandExecutionError(`${command} failed${signal ? ` with signal ${signal}` : ` with status ${String(code)}`}`, stderr, code));
61
+ reject(new CommandExecutionError(`${command} failed${signal ? ` with signal ${signal}` : ` with status ${String(code)}`}`, stderr, code, stdout));
50
62
  });
51
63
  });
52
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAI5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAMD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAoWT;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAO7D"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAc5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsBvD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAaD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CA+pBT;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAW7D"}
package/dist/program.js CHANGED
@@ -1,15 +1,28 @@
1
+ import { readFileSync } from 'node:fs';
1
2
  import { Command, Option } from 'commander';
3
+ import { debugAIFunction, getAIFunction, getAIFunctionTask, getAIFunctionUsage, listAIFunctions, syncAIFunctions, validateAIFunction, } from './ai-functions.js';
2
4
  import { doctor, login, logout, whoami } from './auth.js';
5
+ import { CheckFailureError, checkProject } from './check.js';
3
6
  import { deploymentStatus, deployProject } from './deploy.js';
7
+ import { clearEnvironmentVariable, declareEnvironmentVariable, ENVIRONMENT_VARIABLE_TARGETS, ENVIRONMENT_VARIABLE_TYPES, listEnvironmentVariables, setEnvironmentVariable, } from './environment-variables.js';
4
8
  import { initializeProject } from './init.js';
5
- import { runProjectLarkCli, resolveLarkProfileEnvironment, } from './lark-cli.js';
9
+ import { InitFailureError } from './init-journal.js';
10
+ import { runProjectLarkCli } from './lark-cli.js';
6
11
  import { validateLarkProfile } from './profile-name.js';
7
12
  import { pullProject } from './pull.js';
13
+ import { getProjectContext, summarizeProjectContext, } from './project-context.js';
8
14
  import { installSkill } from './skill.js';
9
- import { discoveryArgs, installDatabaseSkill, invocationArgs, runDatabaseSkillRequest, } from './database-skill.js';
10
15
  function printJson(value) {
11
16
  process.stdout.write(`${JSON.stringify(value, null, 2)}\n`);
12
17
  }
18
+ class JsonOutputError extends Error {
19
+ output;
20
+ constructor(output) {
21
+ super('Command failed with structured JSON output');
22
+ this.output = output;
23
+ this.name = 'JsonOutputError';
24
+ }
25
+ }
13
26
  export function createBaseDatabaseProgram(options) {
14
27
  const [defaultProfile] = options.runtimeProfiles;
15
28
  if (!defaultProfile) {
@@ -43,14 +56,17 @@ export function createBaseDatabaseProgram(options) {
43
56
  .description('Manage lark-cli user access');
44
57
  auth
45
58
  .command('login')
59
+ .description('Authorize the selected lark-cli profile for database applications')
46
60
  .addOption(environmentOption())
47
61
  .action(async (commandOptions) => login(runtimeProfile(commandOptions.env), selectedLarkProfile()));
48
62
  auth
49
63
  .command('logout')
64
+ .description('Revoke the selected lark-cli profile authorization')
50
65
  .addOption(environmentOption())
51
66
  .action(async (commandOptions) => logout(runtimeProfile(commandOptions.env), selectedLarkProfile()));
52
67
  auth
53
68
  .command('whoami')
69
+ .description('Show the authorized user and scopes of the selected profile')
54
70
  .addOption(environmentOption())
55
71
  .action(async (commandOptions) => printJson(await whoami(runtimeProfile(commandOptions.env), selectedLarkProfile())));
56
72
  program
@@ -82,44 +98,21 @@ export function createBaseDatabaseProgram(options) {
82
98
  printJson({ ok: true, installed });
83
99
  });
84
100
  }
85
- const databaseSkill = program
86
- .command('database-skill')
87
- .description('Install and use an application capability Skill without a project directory');
88
- databaseSkill
89
- .command('install')
90
- .requiredOption('--app-token <token>', 'Application token')
91
- .requiredOption('--title <title>', 'Application name used for Skill discovery')
92
- .option('--dir <directory>', 'Agent skills root (default: Codex user skills)')
93
- .action(async (args) => {
94
- const { larkProfile } = resolveLarkProfileEnvironment(await defaultProfile.commandEnvironment(), selectedLarkProfile(), undefined, defaultProfile);
95
- printJson({
96
- ok: true,
97
- skill: installDatabaseSkill({
98
- appToken: args.appToken,
99
- title: args.title,
100
- directory: args.dir,
101
- profile: defaultProfile,
102
- larkProfile,
103
- }),
101
+ program
102
+ .command('context')
103
+ .description('Print a local, read-only database project context snapshot')
104
+ .argument('[directory]', 'Project directory', '.')
105
+ .option('--json', 'Print JSON (accepted for explicit machine-readable use)', false)
106
+ .option('--summary', 'Omit workspace paths, fingerprints and per-resource details', false)
107
+ .addHelpText('after', '\nReads only local project configuration, Catalog, Function metadata and receipts. Does not authenticate, contact application APIs, build or deploy.')
108
+ .action((directory, commandOptions) => {
109
+ const context = getProjectContext({
110
+ directory,
111
+ cliVersion: options.version,
112
+ defaultEnvironment: defaultProfile.name,
113
+ larkProfile: selectedLarkProfile(),
104
114
  });
105
- });
106
- databaseSkill
107
- .command('discover')
108
- .requiredOption('--app-token <token>', 'Application token')
109
- .option('--page-size <count>', 'Functions per page', '20')
110
- .option('--page-token <token>', 'Opaque discovery cursor')
111
- .action(async (args) => {
112
- const request = discoveryArgs(args.appToken, Number(args.pageSize), args.pageToken);
113
- printJson(await runDatabaseSkillRequest(defaultProfile, request, selectedLarkProfile()));
114
- });
115
- databaseSkill
116
- .command('invoke')
117
- .requiredOption('--app-token <token>', 'Application token')
118
- .requiredOption('--function-id <id>', 'Discovered Function ID')
119
- .requiredOption('--params <json>', 'Raw business params as JSON (not an envelope)')
120
- .action(async (args) => {
121
- const request = invocationArgs(args.appToken, args.functionId, args.params);
122
- printJson(await runDatabaseSkillRequest(defaultProfile, request, selectedLarkProfile()));
115
+ printJson(commandOptions.summary ? summarizeProjectContext(context) : context);
123
116
  });
124
117
  program
125
118
  .command('init')
@@ -130,7 +123,8 @@ export function createBaseDatabaseProgram(options) {
130
123
  .option('--app-token <token>', 'Bind the selected Base to an existing application instead of creating another application')
131
124
  .requiredOption('--name <name>', 'Application name; also names a Base created with --schema')
132
125
  .option('--description <description>', 'Application description')
133
- .option('--time-zone <timeZone>', 'Base time zone', 'Asia/Shanghai')
126
+ .option('--time-zone <timeZone>', 'Time zone for a Base created from --schema, e.g. Asia/Shanghai; defaults to the server-side tenant default')
127
+ .option('--resume', 'Resume the matching initialization receipt after read-only reconciliation', false)
134
128
  .addOption(environmentOption())
135
129
  .action(async (directory, commandOptions) => {
136
130
  const profile = runtimeProfile(commandOptions.env);
@@ -144,6 +138,7 @@ export function createBaseDatabaseProgram(options) {
144
138
  description: commandOptions.description,
145
139
  timeZone: commandOptions.timeZone,
146
140
  environment: commandOptions.env,
141
+ resume: commandOptions.resume,
147
142
  runtimeProfile: profile,
148
143
  }));
149
144
  });
@@ -163,6 +158,33 @@ export function createBaseDatabaseProgram(options) {
163
158
  runtimeProfile: profile,
164
159
  }));
165
160
  });
161
+ program
162
+ .command('check')
163
+ .description('Check local Function metadata, prepare dependencies and build Page/FaaS without deploying')
164
+ .argument('[directory]', 'Project directory', '.')
165
+ .option('--no-install', 'Reuse Page/FaaS dependencies; fail if missing')
166
+ .option('--force-install', 'Reinstall Page and FaaS dependencies', false)
167
+ .option('--force-build', 'Ignore successful Page/FaaS build cache', false)
168
+ .option('--json', 'Emit one JSON document on success or failure and capture build output', false)
169
+ .addHelpText('after', '\nUses the same npm installer and build scripts as deploy. Regenerates Page Function input types from local metadata, may install dependencies and write local build output; does not contact application APIs, change bindings, upload artifacts or publish. Server-side Database Function query validation is not run.')
170
+ .action(async (directory, commandOptions) => {
171
+ try {
172
+ printJson(await checkProject({
173
+ directory,
174
+ install: commandOptions.install,
175
+ forceInstall: commandOptions.forceInstall,
176
+ forceBuild: commandOptions.forceBuild,
177
+ json: commandOptions.json,
178
+ runtimeProfile: defaultProfile,
179
+ }));
180
+ }
181
+ catch (error) {
182
+ if (commandOptions.json && error instanceof CheckFailureError) {
183
+ throw new JsonOutputError(error.report);
184
+ }
185
+ throw error;
186
+ }
187
+ });
166
188
  program
167
189
  .command('deploy')
168
190
  .description('Build and publish the current database application')
@@ -171,6 +193,7 @@ export function createBaseDatabaseProgram(options) {
171
193
  .option('--force-install', 'Reinstall Page and FaaS dependencies', false)
172
194
  .option('--production', 'Publish the verified artifact to Prod after Preview')
173
195
  .option('--yes', 'Confirm the requested Prod publish non-interactively', false)
196
+ .option('--skip-ai-functions', 'Deploy without syncing local ai/ declarations to AI Functions', false)
174
197
  .action(async (directory, commandOptions) => {
175
198
  if (commandOptions.yes && !commandOptions.production) {
176
199
  throw new Error('--yes is only valid with --production');
@@ -182,15 +205,102 @@ export function createBaseDatabaseProgram(options) {
182
205
  forceInstall: commandOptions.forceInstall,
183
206
  production: commandOptions.production,
184
207
  yes: commandOptions.yes,
208
+ skipAIFunctions: commandOptions.skipAiFunctions,
185
209
  runtimeProfile: defaultProfile,
186
210
  }));
187
211
  });
188
212
  program
189
213
  .command('lark-cli')
190
- .description('Run lark-cli with the current project routing (debug only)')
214
+ .description('Run lark-cli with project routing; help, skills and schema discovery also work before init')
191
215
  .argument('[arguments...]', 'lark-cli arguments; ordinary JSON API responses are normalized')
192
216
  .allowUnknownOption()
193
217
  .action(async (args) => runProjectLarkCli(args, defaultProfile, selectedLarkProfile()));
218
+ const environmentVariables = program
219
+ .command('environment-variables')
220
+ .alias('env-vars')
221
+ .description('Manage database application environment variables through the current user');
222
+ const targetOption = (mandatory = false) => {
223
+ const option = new Option('--target <target>', 'FaaS runtime environment').choices([...ENVIRONMENT_VARIABLE_TARGETS]);
224
+ return mandatory ? option.makeOptionMandatory() : option.default('preview');
225
+ };
226
+ const typeOption = () => new Option('--type <type>', 'Environment variable type')
227
+ .choices([...ENVIRONMENT_VARIABLE_TYPES])
228
+ .makeOptionMandatory();
229
+ environmentVariables
230
+ .command('list')
231
+ .description('List Config values and masked Secret values')
232
+ .argument('[directory]', 'Project directory', '.')
233
+ .addOption(targetOption())
234
+ .action(async (directory, commandOptions) => printJson(await listEnvironmentVariables({
235
+ directory,
236
+ target: commandOptions.target,
237
+ runtimeProfile: defaultProfile,
238
+ larkProfile: selectedLarkProfile(),
239
+ })));
240
+ environmentVariables
241
+ .command('declare')
242
+ .description('Declare a Config or Secret without setting its value')
243
+ .argument('<name>', 'Environment variable name')
244
+ .argument('[directory]', 'Project directory', '.')
245
+ .addOption(targetOption(true))
246
+ .addOption(typeOption())
247
+ .requiredOption('--description <description>', 'Purpose shown to users')
248
+ .option('--required', 'Require a value before publishing')
249
+ .option('--optional', 'Allow publishing without a value')
250
+ .option('--force', 'Replace metadata for an existing shared definition after explicit confirmation', false)
251
+ .action(async (name, directory, commandOptions) => {
252
+ if (commandOptions.required === commandOptions.optional) {
253
+ throw new Error('Declare whether the variable is required or optional with exactly one of --required or --optional');
254
+ }
255
+ printJson(await declareEnvironmentVariable({
256
+ directory,
257
+ name,
258
+ target: commandOptions.target,
259
+ type: commandOptions.type,
260
+ description: commandOptions.description,
261
+ required: commandOptions.required === true,
262
+ force: commandOptions.force,
263
+ runtimeProfile: defaultProfile,
264
+ larkProfile: selectedLarkProfile(),
265
+ }));
266
+ });
267
+ environmentVariables
268
+ .command('set')
269
+ .description('Set one target-environment value for an existing definition')
270
+ .argument('<name>', 'Environment variable name')
271
+ .argument('[directory]', 'Project directory', '.')
272
+ .addOption(targetOption(true))
273
+ .option('--value-stdin', 'Read the value from standard input', false)
274
+ .action(async (name, directory, commandOptions) => {
275
+ if (!commandOptions.valueStdin) {
276
+ throw new Error('Use --value-stdin to provide the value');
277
+ }
278
+ const value = readFileSync(0, 'utf8').replace(/\r?\n$/, '');
279
+ if (value === '') {
280
+ throw new Error('Environment variable value cannot be empty');
281
+ }
282
+ printJson(await setEnvironmentVariable({
283
+ directory,
284
+ name,
285
+ target: commandOptions.target,
286
+ value,
287
+ runtimeProfile: defaultProfile,
288
+ larkProfile: selectedLarkProfile(),
289
+ }));
290
+ });
291
+ environmentVariables
292
+ .command('clear')
293
+ .description('Clear one value without deleting its shared definition')
294
+ .argument('<name>', 'Environment variable name')
295
+ .argument('[directory]', 'Project directory', '.')
296
+ .addOption(targetOption(true))
297
+ .action(async (name, directory, commandOptions) => printJson(await clearEnvironmentVariable({
298
+ directory,
299
+ name,
300
+ target: commandOptions.target,
301
+ runtimeProfile: defaultProfile,
302
+ larkProfile: selectedLarkProfile(),
303
+ })));
194
304
  const deployments = program
195
305
  .command('deployments')
196
306
  .description('Inspect database application deployments');
@@ -201,11 +311,105 @@ export function createBaseDatabaseProgram(options) {
201
311
  .argument('[directory]', 'Project directory', '.')
202
312
  .option('--wait', 'Poll until the task finishes', false)
203
313
  .action(async (publishId, directory, commandOptions) => printJson(await deploymentStatus(directory, publishId, commandOptions.wait, defaultProfile, selectedLarkProfile())));
314
+ const aiFunctions = program
315
+ .command('ai-functions')
316
+ .description('Manage AI Functions (function_type=4) declared under ai/');
317
+ aiFunctions
318
+ .command('list')
319
+ .description('List AI Functions')
320
+ .argument('[directory]', 'Project directory', '.')
321
+ .action(async (directory) => printJson(await listAIFunctions({ directory, runtimeProfile: defaultProfile })));
322
+ aiFunctions
323
+ .command('pull')
324
+ .description('Read one AI Function config for local editing / diff')
325
+ .argument('<function-key>', 'AI Function key')
326
+ .argument('[directory]', 'Project directory', '.')
327
+ .action(async (functionKey, directory) => printJson(await getAIFunction(functionKey, {
328
+ directory,
329
+ runtimeProfile: defaultProfile,
330
+ })));
331
+ aiFunctions
332
+ .command('sync')
333
+ .description('Full-cover sync local ai/ declarations to the application')
334
+ .argument('[directory]', 'Project directory', '.')
335
+ .action(async (directory) => printJson(await syncAIFunctions({ directory, runtimeProfile: defaultProfile })));
336
+ aiFunctions
337
+ .command('validate')
338
+ .description('Static-validate one local AI Function before saving')
339
+ .argument('<function-key>', 'AI Function key')
340
+ .argument('[directory]', 'Project directory', '.')
341
+ .action(async (functionKey, directory) => printJson(await validateAIFunction(functionKey, {
342
+ directory,
343
+ runtimeProfile: defaultProfile,
344
+ })));
345
+ aiFunctions
346
+ .command('debug')
347
+ .description('Debug an AI Function via unary invoke or media task submit')
348
+ .argument('<function-key>', 'AI Function key')
349
+ .argument('[directory]', 'Project directory', '.')
350
+ .option('--env <env>', 'Runtime env (preview|prod)', 'preview')
351
+ .option('--variables <json>', 'Variables JSON object', '{}')
352
+ .option('--messages <json>', 'Messages JSON array (text/vision)', '[]')
353
+ .option('--input <json>', 'Input JSON object (image/video)', '{}')
354
+ .action(async (functionKey, directory, commandOptions) => {
355
+ const env = commandOptions.env === 'prod' ? 'prod' : 'preview';
356
+ printJson(await debugAIFunction(functionKey, {
357
+ directory,
358
+ env,
359
+ input: JSON.parse(commandOptions.input),
360
+ messages: JSON.parse(commandOptions.messages),
361
+ runtimeProfile: defaultProfile,
362
+ variables: JSON.parse(commandOptions.variables),
363
+ }));
364
+ });
365
+ aiFunctions
366
+ .command('task')
367
+ .description('Get an AI Function image or video task')
368
+ .argument('<function-key>', 'AI Function key')
369
+ .argument('<task-id>', 'Media task ID')
370
+ .argument('[directory]', 'Project directory', '.')
371
+ .option('--env <env>', 'Runtime env (preview|prod)', 'preview')
372
+ .action(async (functionKey, taskId, directory, commandOptions) => {
373
+ const env = commandOptions.env === 'prod' ? 'prod' : 'preview';
374
+ printJson(await getAIFunctionTask(functionKey, taskId, {
375
+ directory,
376
+ env,
377
+ runtimeProfile: defaultProfile,
378
+ }));
379
+ });
380
+ aiFunctions
381
+ .command('usage')
382
+ .description('Show AI Function usage summary (totals + by-date distribution)')
383
+ .argument('[directory]', 'Project directory', '.')
384
+ .option('--env <env>', 'Filter by runtime env (preview|prod)')
385
+ .option('--from <yyyymmdd>', 'Start date (inclusive), e.g. 20260901')
386
+ .option('--to <yyyymmdd>', 'End date (inclusive), e.g. 20260908')
387
+ .option('--function-key <key>', 'Filter by AI Function key')
388
+ .option('--model <profileId>', 'Filter by model profile ID from model_profiles')
389
+ .option('--capability-type <type>', 'Filter by capability (text|vision|image|video)')
390
+ .action(async (directory, commandOptions) => {
391
+ printJson(await getAIFunctionUsage({
392
+ capabilityType: commandOptions.capabilityType,
393
+ directory,
394
+ env: commandOptions.env,
395
+ from: commandOptions.from,
396
+ functionKey: commandOptions.functionKey,
397
+ model: commandOptions.model,
398
+ runtimeProfile: defaultProfile,
399
+ to: commandOptions.to,
400
+ }));
401
+ });
204
402
  return program;
205
403
  }
206
404
  export function runBaseDatabaseProgram(program) {
207
405
  program.parseAsync().catch((error) => {
208
- process.stderr.write(`${program.name()}: ${error instanceof Error ? error.message : String(error)}\n`);
406
+ if (error instanceof JsonOutputError)
407
+ printJson(error.output);
408
+ else {
409
+ if (error instanceof InitFailureError)
410
+ printJson(error.report);
411
+ process.stderr.write(`${program.name()}: ${error instanceof Error ? error.message : String(error)}\n`);
412
+ }
209
413
  process.exitCode = 1;
210
414
  });
211
415
  }
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAoB,MAAM,YAAY,CAAC;AAC5D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAU7B,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAmC;IAEnC,MAAM,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IACjD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAClE,CAAC;IACF,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,IAAY,EAAkB,EAAE;QACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;QAC3E,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,GAAW,EAAE,CACrC,IAAI,MAAM,CACR,qBAAqB,EACrB,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;QAClC,CAAC,CAAC,qBAAqB,cAAc,CAAC,IAAI,QAAQ;QAClD,CAAC,CAAC,kBAAkB,CACvB;SACE,OAAO,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;SAC7B,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAElC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;SAC1B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;SACzB,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC;SAChC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;SACxB,MAAM,CACL,kBAAkB,EAClB,gEAAgE,EAChE,mBAAmB,CACpB;SACA,wBAAwB,EAAE;SAC1B,kBAAkB,EAAE,CAAC;IACxB,MAAM,mBAAmB,GAAG,GAAuB,EAAE,CACnD,OAAO,CAAC,IAAI,EAAwB,CAAC,OAAO,CAAC;IAE/C,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,6BAA6B,CAAC,CAAC;IAC9C,IAAI;SACD,OAAO,CAAC,OAAO,CAAC;SAChB,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CAAC,KAAK,EAAE,cAA+B,EAAE,EAAE,CAChD,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,mBAAmB,EAAE,CAAC,CACjE,CAAC;IACJ,IAAI;SACD,OAAO,CAAC,QAAQ,CAAC;SACjB,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CAAC,KAAK,EAAE,cAA+B,EAAE,EAAE,CAChD,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAClE,CAAC;IACJ,IAAI;SACD,OAAO,CAAC,QAAQ,CAAC;SACjB,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CAAC,KAAK,EAAE,cAA+B,EAAE,EAAE,CAChD,SAAS,CACP,MAAM,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,mBAAmB,EAAE,CAAC,CACxE,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,oEAAoE,CACrE;SACA,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CAAC,KAAK,EAAE,cAA+B,EAAE,EAAE,CAChD,SAAS,CACP,MAAM,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,mBAAmB,EAAE,CAAC,CACxE,CACF,CAAC;IAEJ,IAAI,OAAO,CAAC,mBAAmB,KAAK,KAAK,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,OAAO;aAClB,OAAO,CAAC,OAAO,CAAC;aAChB,WAAW,CAAC,wBAAwB,CAAC,CAAC;QACzC,KAAK;aACF,OAAO,CAAC,SAAS,CAAC;aAClB,WAAW,CAAC,wDAAwD,CAAC;aACrE,SAAS,CACR,IAAI,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;aACrD,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC7C,OAAO,CAAC,OAAO,CAAC,CACpB;aACA,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC;aACvD,MAAM,CAAC,SAAS,EAAE,kCAAkC,EAAE,KAAK,CAAC;aAC5D,MAAM,CACL,CAAC,cAIA,EAAE,EAAE;YACH,IAAI,cAAc,CAAC,GAAG,IAAI,cAAc,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC5D,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,SAAS,GAAG,YAAY,CAAC;gBAC7B,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,SAAS,EAAE,cAAc,CAAC,GAAG;gBAC7B,KAAK,EAAE,cAAc,CAAC,KAAK;aAC5B,CAAC,CAAC;YACH,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACN,CAAC;IAED,MAAM,aAAa,GAAG,OAAO;SAC1B,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CACV,6EAA6E,CAC9E,CAAC;IACJ,aAAa;SACV,OAAO,CAAC,SAAS,CAAC;SAClB,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SAC1D,cAAc,CACb,iBAAiB,EACjB,2CAA2C,CAC5C;SACA,MAAM,CACL,mBAAmB,EACnB,gDAAgD,CACjD;SACA,MAAM,CAAC,KAAK,EAAE,IAAuD,EAAE,EAAE;QACxE,MAAM,EAAE,WAAW,EAAE,GAAG,6BAA6B,CACnD,MAAM,cAAc,CAAC,kBAAkB,EAAE,EACzC,mBAAmB,EAAE,EACrB,SAAS,EACT,cAAc,CACf,CAAC;QACF,SAAS,CAAC;YACR,EAAE,EAAE,IAAI;YACR,KAAK,EAAE,oBAAoB,CAAC;gBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG;gBACnB,OAAO,EAAE,cAAc;gBACvB,WAAW;aACZ,CAAC;SACH,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACL,aAAa;SACV,OAAO,CAAC,UAAU,CAAC;SACnB,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SAC1D,MAAM,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,IAAI,CAAC;SACzD,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC;SACzD,MAAM,CACL,KAAK,EAAE,IAIN,EAAE,EAAE;QACH,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,QAAQ,EACb,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EACrB,IAAI,CAAC,SAAS,CACf,CAAC;QACF,SAAS,CACP,MAAM,uBAAuB,CAC3B,cAAc,EACd,OAAO,EACP,mBAAmB,EAAE,CACtB,CACF,CAAC;IACJ,CAAC,CACF,CAAC;IACJ,aAAa;SACV,OAAO,CAAC,QAAQ,CAAC;SACjB,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SAC1D,cAAc,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;SAC9D,cAAc,CACb,iBAAiB,EACjB,+CAA+C,CAChD;SACA,MAAM,CACL,KAAK,EAAE,IAIN,EAAE,EAAE;QACH,MAAM,OAAO,GAAG,cAAc,CAC5B,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,MAAM,CACZ,CAAC;QACF,SAAS,CACP,MAAM,uBAAuB,CAC3B,cAAc,EACd,OAAO,EACP,mBAAmB,EAAE,CACtB,CACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,8DAA8D,CAAC;SAC3E,QAAQ,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC;SACjD,MAAM,CAAC,iBAAiB,EAAE,0CAA0C,CAAC;SACrE,MAAM,CACL,sBAAsB,EACtB,gDAAgD,CACjD;SACA,MAAM,CACL,qBAAqB,EACrB,2FAA2F,CAC5F;SACA,cAAc,CACb,eAAe,EACf,2DAA2D,CAC5D;SACA,MAAM,CAAC,6BAA6B,EAAE,yBAAyB,CAAC;SAChE,MAAM,CAAC,wBAAwB,EAAE,gBAAgB,EAAE,eAAe,CAAC;SACnE,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CACL,KAAK,EACH,SAAiB,EACjB,cAQC,EACD,EAAE;QACF,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACnD,SAAS,CACP,MAAM,iBAAiB,CAAC;YACtB,WAAW,EAAE,mBAAmB,EAAE;YAClC,SAAS;YACT,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,SAAS,EAAE,cAAc,CAAC,SAAS;YACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ;YACjC,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,QAAQ,EAAE,cAAc,CAAC,QAAQ;YACjC,WAAW,EAAE,cAAc,CAAC,GAAG;YAC/B,cAAc,EAAE,OAAO;SACxB,CAAC,CACH,CAAC;IACJ,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,qEAAqE,CACtE;SACA,QAAQ,CAAC,aAAa,EAAE,yBAAyB,EAAE,GAAG,CAAC;SACvD,cAAc,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;SACnE,SAAS,CAAC,iBAAiB,EAAE,CAAC;SAC9B,MAAM,CACL,KAAK,EACH,SAAiB,EACjB,cAAiD,EACjD,EAAE;QACF,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACnD,SAAS,CACP,MAAM,WAAW,CAAC;YAChB,WAAW,EAAE,mBAAmB,EAAE;YAClC,SAAS;YACT,QAAQ,EAAE,cAAc,CAAC,QAAQ;YACjC,WAAW,EAAE,cAAc,CAAC,GAAG;YAC/B,cAAc,EAAE,OAAO;SACxB,CAAC,CACH,CAAC;IACJ,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,oDAAoD,CAAC;SACjE,QAAQ,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC;SACjD,MAAM,CAAC,cAAc,EAAE,4CAA4C,CAAC;SACpE,MAAM,CAAC,iBAAiB,EAAE,sCAAsC,EAAE,KAAK,CAAC;SACxE,MAAM,CACL,cAAc,EACd,qDAAqD,CACtD;SACA,MAAM,CACL,OAAO,EACP,sDAAsD,EACtD,KAAK,CACN;SACA,MAAM,CACL,KAAK,EACH,SAAiB,EACjB,cAKC,EACD,EAAE;QACF,IAAI,cAAc,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,SAAS,CACP,MAAM,aAAa,CAAC;YAClB,WAAW,EAAE,mBAAmB,EAAE;YAClC,SAAS;YACT,OAAO,EAAE,cAAc,CAAC,OAAO;YAC/B,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,UAAU,EAAE,cAAc,CAAC,UAAU;YACrC,GAAG,EAAE,cAAc,CAAC,GAAG;YACvB,cAAc,EAAE,cAAc;SAC/B,CAAC,CACH,CAAC;IACJ,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,4DAA4D,CAAC;SACzE,QAAQ,CACP,gBAAgB,EAChB,gEAAgE,CACjE;SACA,kBAAkB,EAAE;SACpB,MAAM,CAAC,KAAK,EAAE,IAAc,EAAE,EAAE,CAC/B,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,mBAAmB,EAAE,CAAC,CAC/D,CAAC;IAEJ,MAAM,WAAW,GAAG,OAAO;SACxB,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,0CAA0C,CAAC,CAAC;IAC3D,WAAW;SACR,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,uDAAuD,CAAC;SACpE,QAAQ,CAAC,cAAc,EAAE,+BAA+B,CAAC;SACzD,QAAQ,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC;SACjD,MAAM,CAAC,QAAQ,EAAE,8BAA8B,EAAE,KAAK,CAAC;SACvD,MAAM,CACL,KAAK,EACH,SAAiB,EACjB,SAAiB,EACjB,cAAiC,EACjC,EAAE,CACF,SAAS,CACP,MAAM,gBAAgB,CACpB,SAAS,EACT,SAAS,EACT,cAAc,CAAC,IAAI,EACnB,cAAc,EACd,mBAAmB,EAAE,CACtB,CACF,CACJ,CAAC;IAEJ,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CACjF,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { type WorkspaceNpm } from './npm.js';
2
+ export declare const dependencyDirectories: readonly ['page', 'server-functions'];
3
+ export type DependencyDirectory = (typeof dependencyDirectories)[number];
4
+ export type ProjectBuildStatus = 'passed' | 'cached' | 'failed';
5
+ export interface ProjectBuildResult {
6
+ target: DependencyDirectory;
7
+ status: ProjectBuildStatus;
8
+ message?: string;
9
+ diagnostics?: string;
10
+ }
11
+ export declare class ProjectBuildError extends Error {
12
+ readonly results: ProjectBuildResult[];
13
+ constructor(results: ProjectBuildResult[]);
14
+ }
15
+ export interface ProjectBuildOptions {
16
+ incremental?: boolean;
17
+ force?: boolean;
18
+ captureOutput?: boolean;
19
+ }
20
+ export declare function validateProjectDependencyLocks(workspace: string, npm: WorkspaceNpm): void;
21
+ export declare function installDependencies(workspace: string, forceInstall: boolean, npm: WorkspaceNpm, options?: {
22
+ captureOutput?: boolean;
23
+ }): Promise<void>;
24
+ export declare function buildProject(workspace: string, env: NodeJS.ProcessEnv, npm: WorkspaceNpm, options?: ProjectBuildOptions): Promise<ProjectBuildResult[]>;
25
+ //# sourceMappingURL=project-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-build.d.ts","sourceRoot":"","sources":["../src/project-build.ts"],"names":[],"mappings":"AAWA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,UAAU,CAAC;AAIlB,eAAO,MAAM,qBAAqB,YAAI,MAAM,EAAE,kBAAkB,CAAU,CAAC;AAE3E,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,EAAE;IAAlD,YAAqB,OAAO,EAAE,kBAAkB,EAAE,EAWjD;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAmBD,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,YAAY,GAChB,IAAI,CAIN;AA2FD,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,OAAO,EACrB,GAAG,EAAE,YAAY,EACjB,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,OAAO,CAAC,IAAI,CAAC,CA4Df;AAgFD,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,EAAE,YAAY,EACjB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA6C/B"}