@lark-base-open/base-database-cli 1.4.0 → 1.4.5

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 (319) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/README.md +118 -15
  3. package/THIRD_PARTY_LICENSES.json +1662 -0
  4. package/config-schema.json +64 -3
  5. package/data/template-hmr-scripts.json +9 -0
  6. package/data/template-index-html/17e698eef687ece8f1628e3e2c4801da5e7233faa87076b3424acde8df57b825.html +24 -0
  7. package/dist/agent-tools-guide.d.ts +30 -0
  8. package/dist/agent-tools-guide.d.ts.map +1 -0
  9. package/dist/agent-tools-guide.js +172 -0
  10. package/dist/agent-tools-guide.js.map +1 -0
  11. package/dist/agent-tools-skill.d.ts +16 -0
  12. package/dist/agent-tools-skill.d.ts.map +1 -0
  13. package/dist/agent-tools-skill.js +209 -0
  14. package/dist/agent-tools-skill.js.map +1 -0
  15. package/dist/agent-tools.d.ts +20 -0
  16. package/dist/agent-tools.d.ts.map +1 -0
  17. package/dist/agent-tools.js +137 -0
  18. package/dist/agent-tools.js.map +1 -0
  19. package/dist/ai-functions.d.ts +10 -0
  20. package/dist/ai-functions.d.ts.map +1 -1
  21. package/dist/ai-functions.js +264 -212
  22. package/dist/ai-functions.js.map +1 -1
  23. package/dist/app-builder/core.d.mts +37 -0
  24. package/dist/app-builder/core.d.mts.map +1 -0
  25. package/dist/app-builder/core.mjs +673 -0
  26. package/dist/app-builder/core.mjs.map +1 -0
  27. package/dist/app-builder/package.json +1 -0
  28. package/dist/app-builder/schema.d.ts +4 -0
  29. package/dist/app-builder/schema.d.ts.map +1 -0
  30. package/dist/app-builder/schema.js +72 -0
  31. package/dist/app-builder/schema.js.map +1 -0
  32. package/dist/archive.d.ts +22 -2
  33. package/dist/archive.d.ts.map +1 -1
  34. package/dist/archive.js +311 -74
  35. package/dist/archive.js.map +1 -1
  36. package/dist/auth.d.ts +2 -2
  37. package/dist/auth.d.ts.map +1 -1
  38. package/dist/auth.js +13 -8
  39. package/dist/auth.js.map +1 -1
  40. package/dist/build-server.d.ts +25 -0
  41. package/dist/build-server.d.ts.map +1 -0
  42. package/dist/build-server.js +32 -0
  43. package/dist/build-server.js.map +1 -0
  44. package/dist/business-update-notice.d.ts +37 -0
  45. package/dist/business-update-notice.d.ts.map +1 -0
  46. package/dist/business-update-notice.js +24 -0
  47. package/dist/business-update-notice.js.map +1 -0
  48. package/dist/check.d.ts +11 -0
  49. package/dist/check.d.ts.map +1 -1
  50. package/dist/check.js +85 -15
  51. package/dist/check.js.map +1 -1
  52. package/dist/cloud-build-diagnostic.d.ts +9 -0
  53. package/dist/cloud-build-diagnostic.d.ts.map +1 -0
  54. package/dist/cloud-build-diagnostic.js +65 -0
  55. package/dist/cloud-build-diagnostic.js.map +1 -0
  56. package/dist/config.d.ts +6 -0
  57. package/dist/config.d.ts.map +1 -1
  58. package/dist/config.js +41 -11
  59. package/dist/config.js.map +1 -1
  60. package/dist/contract-extractor.d.ts +21 -0
  61. package/dist/contract-extractor.d.ts.map +1 -0
  62. package/dist/contract-extractor.js +260 -0
  63. package/dist/contract-extractor.js.map +1 -0
  64. package/dist/contract-worker.d.ts +12 -0
  65. package/dist/contract-worker.d.ts.map +1 -0
  66. package/dist/contract-worker.js +90 -0
  67. package/dist/contract-worker.js.map +1 -0
  68. package/dist/dependency-policy.d.ts.map +1 -1
  69. package/dist/dependency-policy.js +6 -1
  70. package/dist/dependency-policy.js.map +1 -1
  71. package/dist/deploy.d.ts +20 -1
  72. package/dist/deploy.d.ts.map +1 -1
  73. package/dist/deploy.js +181 -52
  74. package/dist/deploy.js.map +1 -1
  75. package/dist/dev-bootstrap.d.ts +5 -0
  76. package/dist/dev-bootstrap.d.ts.map +1 -0
  77. package/dist/dev-bootstrap.js +185 -0
  78. package/dist/dev-bootstrap.js.map +1 -0
  79. package/dist/dev-events.d.ts +24 -0
  80. package/dist/dev-events.d.ts.map +1 -0
  81. package/dist/dev-events.js +67 -0
  82. package/dist/dev-events.js.map +1 -0
  83. package/dist/dev-pairing.d.ts +4 -0
  84. package/dist/dev-pairing.d.ts.map +1 -0
  85. package/dist/dev-pairing.js +54 -0
  86. package/dist/dev-pairing.js.map +1 -0
  87. package/dist/dev-url.d.ts +4 -0
  88. package/dist/dev-url.d.ts.map +1 -0
  89. package/dist/dev-url.js +29 -0
  90. package/dist/dev-url.js.map +1 -0
  91. package/dist/dev-vite.d.ts +9 -0
  92. package/dist/dev-vite.d.ts.map +1 -0
  93. package/dist/dev-vite.js +237 -0
  94. package/dist/dev-vite.js.map +1 -0
  95. package/dist/dev-watch.d.ts +33 -0
  96. package/dist/dev-watch.d.ts.map +1 -0
  97. package/dist/dev-watch.js +246 -0
  98. package/dist/dev-watch.js.map +1 -0
  99. package/dist/dev.d.ts +24 -0
  100. package/dist/dev.d.ts.map +1 -0
  101. package/dist/dev.js +244 -0
  102. package/dist/dev.js.map +1 -0
  103. package/dist/development-pairing.generated.d.ts +12 -0
  104. package/dist/development-pairing.generated.d.ts.map +1 -0
  105. package/dist/development-pairing.generated.js +13 -0
  106. package/dist/development-pairing.generated.js.map +1 -0
  107. package/dist/diagnostic-platforms.d.ts +3 -0
  108. package/dist/diagnostic-platforms.d.ts.map +1 -0
  109. package/dist/diagnostic-platforms.js +3 -0
  110. package/dist/diagnostic-platforms.js.map +1 -0
  111. package/dist/diagnostic-schema.d.ts +151 -0
  112. package/dist/diagnostic-schema.d.ts.map +1 -0
  113. package/dist/diagnostic-schema.js +129 -0
  114. package/dist/diagnostic-schema.js.map +1 -0
  115. package/dist/diagnostics.d.ts +78 -0
  116. package/dist/diagnostics.d.ts.map +1 -0
  117. package/dist/diagnostics.js +333 -0
  118. package/dist/diagnostics.js.map +1 -0
  119. package/dist/distribution-commands.d.ts.map +1 -1
  120. package/dist/distribution-commands.js +6 -2
  121. package/dist/distribution-commands.js.map +1 -1
  122. package/dist/distribution-npm.d.ts +2 -2
  123. package/dist/distribution-npm.d.ts.map +1 -1
  124. package/dist/distribution-npm.js +14 -1
  125. package/dist/distribution-npm.js.map +1 -1
  126. package/dist/environment-variables.d.ts.map +1 -1
  127. package/dist/environment-variables.js +2 -1
  128. package/dist/environment-variables.js.map +1 -1
  129. package/dist/function-contracts.d.ts +40 -0
  130. package/dist/function-contracts.d.ts.map +1 -0
  131. package/dist/function-contracts.js +357 -0
  132. package/dist/function-contracts.js.map +1 -0
  133. package/dist/function-description.d.ts +11 -4
  134. package/dist/function-description.d.ts.map +1 -1
  135. package/dist/function-description.js +22 -12
  136. package/dist/function-description.js.map +1 -1
  137. package/dist/function-input-types.d.ts +6 -4
  138. package/dist/function-input-types.d.ts.map +1 -1
  139. package/dist/function-input-types.js +97 -135
  140. package/dist/function-input-types.js.map +1 -1
  141. package/dist/function-params.d.ts +53 -0
  142. package/dist/function-params.d.ts.map +1 -0
  143. package/dist/function-params.js +184 -0
  144. package/dist/function-params.js.map +1 -0
  145. package/dist/function-schema.d.ts +14 -0
  146. package/dist/function-schema.d.ts.map +1 -1
  147. package/dist/function-schema.js +99 -9
  148. package/dist/function-schema.js.map +1 -1
  149. package/dist/init-journal.d.ts +1 -0
  150. package/dist/init-journal.d.ts.map +1 -1
  151. package/dist/init-journal.js +21 -7
  152. package/dist/init-journal.js.map +1 -1
  153. package/dist/init.d.ts +1 -0
  154. package/dist/init.d.ts.map +1 -1
  155. package/dist/init.js +55 -5
  156. package/dist/init.js.map +1 -1
  157. package/dist/lark-cli-error.d.ts +13 -2
  158. package/dist/lark-cli-error.d.ts.map +1 -1
  159. package/dist/lark-cli-error.js +54 -13
  160. package/dist/lark-cli-error.js.map +1 -1
  161. package/dist/lark-cli-passthrough.d.ts +9 -0
  162. package/dist/lark-cli-passthrough.d.ts.map +1 -0
  163. package/dist/lark-cli-passthrough.js +101 -0
  164. package/dist/lark-cli-passthrough.js.map +1 -0
  165. package/dist/lark-cli.d.ts +4 -1
  166. package/dist/lark-cli.d.ts.map +1 -1
  167. package/dist/lark-cli.js +51 -19
  168. package/dist/lark-cli.js.map +1 -1
  169. package/dist/legacy-function-input-renderer.d.ts +6 -0
  170. package/dist/legacy-function-input-renderer.d.ts.map +1 -0
  171. package/dist/legacy-function-input-renderer.js +175 -0
  172. package/dist/legacy-function-input-renderer.js.map +1 -0
  173. package/dist/link-guard-check.d.ts +12 -0
  174. package/dist/link-guard-check.d.ts.map +1 -0
  175. package/dist/link-guard-check.js +138 -0
  176. package/dist/link-guard-check.js.map +1 -0
  177. package/dist/managed-agent-docs.d.ts +14 -0
  178. package/dist/managed-agent-docs.d.ts.map +1 -0
  179. package/dist/managed-agent-docs.js +172 -0
  180. package/dist/managed-agent-docs.js.map +1 -0
  181. package/dist/mutation-schema.d.ts +6 -0
  182. package/dist/mutation-schema.d.ts.map +1 -1
  183. package/dist/mutation-schema.js +6 -0
  184. package/dist/mutation-schema.js.map +1 -1
  185. package/dist/mutation.d.ts +4 -1
  186. package/dist/mutation.d.ts.map +1 -1
  187. package/dist/mutation.js +17 -2
  188. package/dist/mutation.js.map +1 -1
  189. package/dist/npm.d.ts +1 -0
  190. package/dist/npm.d.ts.map +1 -1
  191. package/dist/npm.js +28 -0
  192. package/dist/npm.js.map +1 -1
  193. package/dist/preview-receipt.d.ts +0 -2
  194. package/dist/preview-receipt.d.ts.map +1 -1
  195. package/dist/preview-receipt.js +0 -28
  196. package/dist/preview-receipt.js.map +1 -1
  197. package/dist/process.d.ts +1 -0
  198. package/dist/process.d.ts.map +1 -1
  199. package/dist/process.js +25 -0
  200. package/dist/process.js.map +1 -1
  201. package/dist/program.d.ts.map +1 -1
  202. package/dist/program.js +239 -26
  203. package/dist/program.js.map +1 -1
  204. package/dist/project-build.d.ts +2 -1
  205. package/dist/project-build.d.ts.map +1 -1
  206. package/dist/project-build.js +53 -16
  207. package/dist/project-build.js.map +1 -1
  208. package/dist/project-capabilities.d.ts +8 -0
  209. package/dist/project-capabilities.d.ts.map +1 -0
  210. package/dist/project-capabilities.js +47 -0
  211. package/dist/project-capabilities.js.map +1 -0
  212. package/dist/project-context.d.ts +66 -0
  213. package/dist/project-context.d.ts.map +1 -1
  214. package/dist/project-context.js +68 -6
  215. package/dist/project-context.js.map +1 -1
  216. package/dist/project-layout.d.ts +11 -0
  217. package/dist/project-layout.d.ts.map +1 -1
  218. package/dist/project-layout.js +63 -1
  219. package/dist/project-layout.js.map +1 -1
  220. package/dist/public-exports.d.ts +5 -0
  221. package/dist/public-exports.d.ts.map +1 -0
  222. package/dist/public-exports.js +76 -0
  223. package/dist/public-exports.js.map +1 -0
  224. package/dist/public-sql-error.d.ts +3 -1
  225. package/dist/public-sql-error.d.ts.map +1 -1
  226. package/dist/public-sql-error.js +5 -2
  227. package/dist/public-sql-error.js.map +1 -1
  228. package/dist/pull.d.ts +1 -0
  229. package/dist/pull.d.ts.map +1 -1
  230. package/dist/pull.js +103 -20
  231. package/dist/pull.js.map +1 -1
  232. package/dist/sdk-codegen.d.ts +16 -0
  233. package/dist/sdk-codegen.d.ts.map +1 -0
  234. package/dist/sdk-codegen.js +181 -0
  235. package/dist/sdk-codegen.js.map +1 -0
  236. package/dist/sdk-install.d.ts +4 -0
  237. package/dist/sdk-install.d.ts.map +1 -0
  238. package/dist/sdk-install.js +33 -0
  239. package/dist/sdk-install.js.map +1 -0
  240. package/dist/skill-frontmatter.d.ts +5 -0
  241. package/dist/skill-frontmatter.d.ts.map +1 -0
  242. package/dist/skill-frontmatter.js +28 -0
  243. package/dist/skill-frontmatter.js.map +1 -0
  244. package/dist/skill.d.ts +2 -1
  245. package/dist/skill.d.ts.map +1 -1
  246. package/dist/skill.js +18 -12
  247. package/dist/skill.js.map +1 -1
  248. package/dist/source-format.d.ts +10 -0
  249. package/dist/source-format.d.ts.map +1 -0
  250. package/dist/source-format.js +49 -0
  251. package/dist/source-format.js.map +1 -0
  252. package/dist/types.d.ts +6 -0
  253. package/dist/types.d.ts.map +1 -1
  254. package/dist/unified-functions.d.ts +22 -0
  255. package/dist/unified-functions.d.ts.map +1 -0
  256. package/dist/unified-functions.js +123 -0
  257. package/dist/unified-functions.js.map +1 -0
  258. package/dist/updates.d.ts +13 -1
  259. package/dist/updates.d.ts.map +1 -1
  260. package/dist/updates.js +65 -29
  261. package/dist/updates.js.map +1 -1
  262. package/dist/workspace-fingerprint.d.ts.map +1 -1
  263. package/dist/workspace-fingerprint.js +5 -0
  264. package/dist/workspace-fingerprint.js.map +1 -1
  265. package/package.json +17 -5
  266. package/skills/lark-base-database/SKILL.md +21 -55
  267. package/skills/lark-base-database/references/agent-tool-design.md +181 -0
  268. package/skills/lark-base-database/references/agent-tools.md +103 -0
  269. package/skills/lark-base-database/references/ai-function.md +80 -186
  270. package/skills/lark-base-database/references/database-function-limitations.md +12 -4
  271. package/skills/lark-base-database/references/database-function.md +47 -20
  272. package/skills/lark-base-database/references/development.md +81 -109
  273. package/skills/lark-base-database/references/environment-variables.md +2 -2
  274. package/skills/lark-base-database/references/faas.md +43 -16
  275. package/skills/lark-base-database/references/file-transfer.md +10 -33
  276. package/skills/lark-base-database/references/frontend-design-guide.md +1 -1
  277. package/skills/lark-base-database/references/legacy-ai-function.md +120 -0
  278. package/skills/lark-base-database/references/legacy-development.md +156 -0
  279. package/skills/lark-base-database/references/legacy-file-transfer.md +68 -0
  280. package/skills/lark-base-database/references/mutations.md +38 -29
  281. package/skills/lark-base-database/references/notifications.md +1 -1
  282. package/skills/lark-base-database/references/permission-design.md +11 -5
  283. package/skills/lark-base-database/references/release.md +22 -7
  284. package/skills/lark-base-database/references/verification.md +55 -16
  285. package/skills/lark-base-database/references/workspace-migration.md +86 -0
  286. package/skills/lark-base-database/references/workspace.md +54 -45
  287. package/templates/database-starter/README.md +2 -0
  288. package/templates/database-starter/database-functions/README.md +2 -2
  289. package/templates/database-starter/mutations/README.md +2 -2
  290. package/templates/database-starter/page/README.md +5 -4
  291. package/templates/database-starter/page/src/examples/ai-function/TextStreamOperation.tsx +6 -6
  292. package/templates/database-starter/page/src/lib/database-runtime-attachment.test.ts +52 -0
  293. package/templates/database-starter/page/src/lib/database-runtime.test.ts +2 -2
  294. package/templates/database-starter/page/src/lib/database-runtime.ts +38 -11
  295. package/templates/database-starter/server-functions/scripts/run-tsc.mjs +3 -2
  296. package/templates/database-starter-v2/README.md +25 -0
  297. package/templates/database-starter-v2/base-app.config.ts +10 -0
  298. package/templates/database-starter-v2/database-functions/README.md +1 -0
  299. package/templates/database-starter-v2/gitignore +6 -0
  300. package/templates/database-starter-v2/mutations/README.md +1 -0
  301. package/templates/database-starter-v2/package-lock.json +2239 -0
  302. package/templates/database-starter-v2/package.json +18 -0
  303. package/templates/database-starter-v2/page/index.html +2 -0
  304. package/templates/database-starter-v2/page/package.json +25 -0
  305. package/templates/database-starter-v2/page/src/App.tsx +12 -0
  306. package/templates/database-starter-v2/page/src/generated/README.md +1 -0
  307. package/templates/database-starter-v2/page/src/index.css +1 -0
  308. package/templates/database-starter-v2/page/src/lib/date-time.ts +61 -0
  309. package/templates/database-starter-v2/page/src/main.tsx +6 -0
  310. package/templates/database-starter-v2/page/tsconfig.json +19 -0
  311. package/templates/database-starter-v2/page/vite.config.ts +3 -0
  312. package/templates/database-starter-v2/prettierignore +3 -0
  313. package/templates/database-starter-v2/server/functions/README.md +1 -0
  314. package/templates/database-starter-v2/server/functions/hello/contract.ts +5 -0
  315. package/templates/database-starter-v2/server/functions/hello/index.ts +7 -0
  316. package/templates/database-starter-v2/server/functions/hello/meta.json +1 -0
  317. package/templates/database-starter-v2/server/generated/runtime-profile.ts +5 -0
  318. package/templates/database-starter-v2/server/package.json +17 -0
  319. package/templates/database-starter-v2/server/tsconfig.json +14 -0
@@ -1,4 +1,5 @@
1
- import { existsSync } from 'node:fs';
1
+ import { parseProjectConfig } from './app-builder/core.mjs';
2
+ import { existsSync, readFileSync, lstatSync } from 'node:fs';
2
3
  import { join } from 'node:path';
3
4
  export const DATABASE_FUNCTIONS_DIRECTORY = 'database-functions';
4
5
  export const LEGACY_DATABASE_FUNCTIONS_DIRECTORY = 'sql';
@@ -21,4 +22,65 @@ export function requireDatabaseFunctionsDirectory(workspace) {
21
22
  }
22
23
  return directory;
23
24
  }
25
+ /** Explicit configuration selects the layout; dependencies never select it. */
26
+ export function projectLayout(workspace) {
27
+ const configPath = join(workspace, 'base-database.jsonc');
28
+ const config = existsSync(configPath)
29
+ ? parseProjectConfig(readFileSync(configPath, 'utf8'), configPath)
30
+ : {};
31
+ const version = config?.template === undefined ? 1 : config.template?.version;
32
+ const fail = (message) => {
33
+ throw new Error(`TEMPLATE_LAYOUT_CONFLICT: ${message}`);
34
+ };
35
+ if (version !== 1 && version !== 2)
36
+ fail(`Unsupported template version ${String(version)}`);
37
+ if (version === 1) {
38
+ if (existsSync(join(workspace, 'server')))
39
+ fail('Template 1 cannot contain server/');
40
+ const rootManifest = join(workspace, 'package.json');
41
+ if (existsSync(rootManifest) &&
42
+ JSON.parse(readFileSync(rootManifest, 'utf8')).workspaces)
43
+ fail('Template 1 cannot contain root workspaces');
44
+ return {
45
+ version: 1,
46
+ server: 'server-functions',
47
+ dependencies: ['page', 'server-functions'],
48
+ };
49
+ }
50
+ if (existsSync(join(workspace, 'server-functions')))
51
+ fail('Template 2 cannot contain server-functions/');
52
+ for (const directory of ['page', 'server']) {
53
+ if (!existsSync(join(workspace, directory)) ||
54
+ !lstatSync(join(workspace, directory)).isDirectory())
55
+ fail(`Missing or non-regular ${directory}/`);
56
+ for (const lock of [
57
+ 'package-lock.json',
58
+ 'npm-shrinkwrap.json',
59
+ 'pnpm-lock.yaml',
60
+ 'yarn.lock',
61
+ ])
62
+ if (existsSync(join(workspace, directory, lock)))
63
+ fail(`Nested lock: ${directory}/${lock}`);
64
+ }
65
+ for (const lock of ['npm-shrinkwrap.json', 'pnpm-lock.yaml', 'yarn.lock'])
66
+ if (existsSync(join(workspace, lock)))
67
+ fail(`Template 2 requires a single package-lock.json: ${lock}`);
68
+ let manifest;
69
+ try {
70
+ manifest = JSON.parse(readFileSync(join(workspace, 'package.json'), 'utf8'));
71
+ }
72
+ catch {
73
+ return fail('Missing or invalid root package.json');
74
+ }
75
+ if (!Array.isArray(manifest.workspaces) ||
76
+ JSON.stringify(manifest.workspaces.slice().sort()) !==
77
+ '["page","server"]' ||
78
+ manifest.type !== 'module' ||
79
+ manifest.private !== true)
80
+ fail('Root must be private ESM with workspaces [page, server]');
81
+ return { version: 2, server: 'server', dependencies: ['.'] };
82
+ }
83
+ export function serverDirectory(workspace) {
84
+ return projectLayout(workspace).server;
85
+ }
24
86
  //# sourceMappingURL=project-layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-layout.js","sourceRoot":"","sources":["../src/project-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,mCAAmC,GAAG,KAAK,CAAC;AAEzD,MAAM,UAAU,0BAA0B,CACxC,SAAiB;IAKjB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,UAAU,CACvB,IAAI,CAAC,SAAS,EAAE,mCAAmC,CAAC,CACrD,CAAC;IACF,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,+BAA+B,4BAA4B,gBAAgB,mCAAmC,eAAe,CAC9H,CAAC;IACJ,CAAC;IACD,IAAI,SAAS;QAAE,OAAO,4BAA4B,CAAC;IACnD,IAAI,MAAM;QAAE,OAAO,mCAAmC,CAAC;IACvD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,SAAiB;IAIjB,MAAM,SAAS,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,0CAA0C,4BAA4B,EAAE,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"project-layout.js","sourceRoot":"","sources":["../src/project-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,mCAAmC,GAAG,KAAK,CAAC;AAEzD,MAAM,UAAU,0BAA0B,CACxC,SAAiB;IAKjB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,UAAU,CACvB,IAAI,CAAC,SAAS,EAAE,mCAAmC,CAAC,CACrD,CAAC;IACF,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,+BAA+B,4BAA4B,gBAAgB,mCAAmC,eAAe,CAC9H,CAAC;IACJ,CAAC;IACD,IAAI,SAAS;QAAE,OAAO,4BAA4B,CAAC;IACnD,IAAI,MAAM;QAAE,OAAO,mCAAmC,CAAC;IACvD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,SAAiB;IAIjB,MAAM,SAAS,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,0CAA0C,4BAA4B,EAAE,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC;QAClE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,OAAO,GAAG,MAAM,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC9E,MAAM,IAAI,GAAG,CAAC,OAAe,EAAS,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,IAAI,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC;QAChC,IAAI,CAAC,gCAAgC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACrD,IACE,UAAU,CAAC,YAAY,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU;YAEzD,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACpD,OAAO;YACL,OAAO,EAAE,CAAU;YACnB,MAAM,EAAE,kBAAkB;YAC1B,YAAY,EAAE,CAAC,MAAM,EAAE,kBAAkB,CAAC;SAC3C,CAAC;IACJ,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACjD,IAAI,CAAC,6CAA6C,CAAC,CAAC;IACtD,KAAK,MAAM,SAAS,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC3C,IACE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACvC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE;YAEpD,IAAI,CAAC,0BAA0B,SAAS,GAAG,CAAC,CAAC;QAC/C,KAAK,MAAM,IAAI,IAAI;YACjB,mBAAmB;YACnB,qBAAqB;YACrB,gBAAgB;YAChB,WAAW;SACZ;YACC,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC9C,IAAI,CAAC,gBAAgB,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,CAAC;QACvE,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,mDAAmD,IAAI,EAAE,CAAC,CAAC;IACpE,IAAI,QAAQ,CAAC;IACb,IAAI,CAAC;QACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CACnB,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CACtD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACtD,CAAC;IACD,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;YAChD,mBAAmB;QACrB,QAAQ,CAAC,IAAI,KAAK,QAAQ;QAC1B,QAAQ,CAAC,OAAO,KAAK,IAAI;QAEzB,IAAI,CAAC,yDAAyD,CAAC,CAAC;IAClE,OAAO,EAAE,OAAO,EAAE,CAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;AACxE,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;AACzC,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** Read declarations without executing project or SDK code. Unknown wildcard
2
+ * resolution fails closed instead of assuming its exports are covered. */
3
+ export declare function publicExports(file: string, seen?: Set<string>): Set<string>;
4
+ export declare function resolveDeclaration(from: string, specifier: string): string;
5
+ //# sourceMappingURL=public-exports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-exports.d.ts","sourceRoot":"","sources":["../src/public-exports.ts"],"names":[],"mappings":"AAKA;0EAC0E;AAC1E,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,cAAoB,GACvB,GAAG,CAAC,MAAM,CAAC,CAoCb;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CA+B1E"}
@@ -0,0 +1,76 @@
1
+ import { parse } from '@babel/parser';
2
+ import { existsSync, readFileSync } from 'node:fs';
3
+ import { dirname, join, resolve } from 'node:path';
4
+ import { createRequire } from 'node:module';
5
+ /** Read declarations without executing project or SDK code. Unknown wildcard
6
+ * resolution fails closed instead of assuming its exports are covered. */
7
+ export function publicExports(file, seen = new Set()) {
8
+ if (seen.has(file))
9
+ return new Set();
10
+ seen.add(file);
11
+ const names = new Set();
12
+ const ast = parse(readFileSync(file, 'utf8'), {
13
+ sourceType: 'module',
14
+ allowUndeclaredExports: true,
15
+ plugins: [['typescript', { dts: file.endsWith('.d.ts') }], 'jsx'],
16
+ });
17
+ for (const node of ast.program.body) {
18
+ if (node.type === 'ExportDefaultDeclaration')
19
+ names.add('default');
20
+ if (node.type === 'ExportNamedDeclaration') {
21
+ for (const spec of node.specifiers)
22
+ names.add(spec.exported.type === 'Identifier'
23
+ ? spec.exported.name
24
+ : spec.exported.value);
25
+ const d = node.declaration;
26
+ if (d && 'id' in d && d.id?.type === 'Identifier')
27
+ names.add(d.id.name);
28
+ if (d?.type === 'VariableDeclaration')
29
+ for (const v of d.declarations) {
30
+ if (v.id.type !== 'Identifier')
31
+ throw new Error('Unsupported exported binding');
32
+ names.add(v.id.name);
33
+ }
34
+ }
35
+ if (node.type === 'ExportAllDeclaration') {
36
+ for (const name of publicExports(resolveDeclaration(file, node.source.value), seen))
37
+ if (name !== 'default')
38
+ names.add(name);
39
+ }
40
+ }
41
+ return names;
42
+ }
43
+ export function resolveDeclaration(from, specifier) {
44
+ if (specifier.startsWith('.')) {
45
+ const path = resolve(dirname(from), specifier);
46
+ for (const candidate of [
47
+ path.replace(/\.js$/, '.d.ts'),
48
+ path + '.d.ts',
49
+ path + '.ts',
50
+ join(path, 'index.d.ts'),
51
+ path,
52
+ ])
53
+ if (existsSync(candidate))
54
+ return candidate;
55
+ }
56
+ else {
57
+ const parts = specifier.split('/');
58
+ const name = parts.splice(0, specifier.startsWith('@') ? 2 : 1).join('/');
59
+ for (const search of createRequire(resolve(from)).resolve.paths(name) ??
60
+ []) {
61
+ const root = join(search, name);
62
+ if (!existsSync(join(root, 'package.json')))
63
+ continue;
64
+ const pkg = JSON.parse(readFileSync(join(root, 'package.json'), 'utf8'));
65
+ const entry = pkg.exports?.[parts.length ? './' + parts.join('/') : '.'];
66
+ const target = typeof entry === 'string'
67
+ ? entry
68
+ : (entry?.types ?? entry?.import?.types);
69
+ const path = target ?? (parts.length ? parts.join('/') + '.d.ts' : pkg.types);
70
+ if (typeof path === 'string' && existsSync(join(root, path)))
71
+ return join(root, path);
72
+ }
73
+ }
74
+ throw new Error(`Cannot resolve declarations: ${specifier}`);
75
+ }
76
+ //# sourceMappingURL=public-exports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-exports.js","sourceRoot":"","sources":["../src/public-exports.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,7 @@ export interface PublicSQLError {
21
21
  retryable: boolean;
22
22
  }
23
23
  export declare function readPublicSQLError(value: unknown): PublicSQLError | undefined;
24
- export declare function formatPublicSQLError(error: PublicSQLError): string;
24
+ export declare function formatPublicSQLError(error: PublicSQLError, options?: {
25
+ namedParameters?: boolean;
26
+ }): string;
25
27
  //# sourceMappingURL=public-sql-error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-sql-error.d.ts","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,aAAa,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE;QACV,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB;AAQD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAsD7E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAElE"}
1
+ {"version":3,"file":"public-sql-error.d.ts","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,aAAa,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE;QACV,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB;AAQD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAsD7E;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GAC1C,MAAM,CAMR"}
@@ -59,7 +59,10 @@ export function readPublicSQLError(value) {
59
59
  return result;
60
60
  }
61
61
  // The server owns the complete agent-facing message, including semantic code and LogID.
62
- export function formatPublicSQLError(error) {
63
- return error.message;
62
+ export function formatPublicSQLError(error, options = {}) {
63
+ const compatibilityHint = error.code === 'BASE_SQL_STORED_QUERY_INVALID' && options.namedParameters
64
+ ? '\n目标环境后端可能尚不支持命名参数,请确认泳道和后端版本。'
65
+ : '';
66
+ return error.message + compatibilityHint;
64
67
  }
65
68
  //# sourceMappingURL=public-sql-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-sql-error.js","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-sql-error.js","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"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"}
package/dist/pull.d.ts CHANGED
@@ -6,6 +6,7 @@ interface PullOptions {
6
6
  environment: string;
7
7
  runtimeProfile?: RuntimeProfile;
8
8
  }
9
+ export declare function replaceEmptyWorkspace(workspace: string, staging: string, existed: boolean): Promise<void>;
9
10
  export declare function pullProject(options: PullOptions): Promise<{
10
11
  ok: true;
11
12
  environment: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsCvD,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAiaD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW;;;;;;YA6GxC,UAAU;;;;GAUvB"}
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAwCvD,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAobD,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW;;;;;;YAwHxC,UAAU;;;;GAUvB"}
package/dist/pull.js CHANGED
@@ -1,12 +1,15 @@
1
+ import { readSourceFormat, SOURCE_FORMAT } from './source-format.js';
2
+ import { projectLayout, serverDirectory } from './project-layout.js';
1
3
  import { createWriteStream } from 'node:fs';
2
4
  import { cp, lstat, mkdir, mkdtemp, readFile, readdir, rename, rm, stat, writeFile, } from 'node:fs/promises';
3
5
  import { basename, dirname, join, posix, resolve } from 'node:path';
6
+ import { Writable } from 'node:stream';
4
7
  import { pipeline } from 'node:stream/promises';
5
8
  import CRC32 from 'crc-32';
6
9
  import yauzl from 'yauzl';
7
10
  import { restoreRemoteAIFunctions } from './ai-functions.js';
8
11
  import { starterRoot } from './assets.js';
9
- import { CONFIG_FILE_NAME, writeConfig } from './config.js';
12
+ import { CONFIG_FILE_NAME, writeConfig, readPortableProjectContract, } from './config.js';
10
13
  import { ONLINE_RUNTIME_PROFILE, resolveRuntimeProfile, } from './environment.js';
11
14
  import { responseData, runLarkCli, runLarkCliOutput, resolveLarkProfileEnvironment, } from './lark-cli.js';
12
15
  import { DATABASE_FUNCTIONS_DIRECTORY, LEGACY_DATABASE_FUNCTIONS_DIRECTORY, } from './project-layout.js';
@@ -22,7 +25,9 @@ const PACKAGE_MANAGER_CONFIG_FILES = new Set([
22
25
  const ALLOWED_ROOTS = new Set([
23
26
  'page',
24
27
  'server-functions',
28
+ 'server',
25
29
  'mutations',
30
+ 'ai',
26
31
  DATABASE_FUNCTIONS_DIRECTORY,
27
32
  LEGACY_DATABASE_FUNCTIONS_DIRECTORY,
28
33
  ]);
@@ -50,7 +55,7 @@ async function assertEmptyWorkspace(workspace) {
50
55
  throw error;
51
56
  }
52
57
  }
53
- function validateEntryName(fileName, directory) {
58
+ function validateEntryName(fileName, directory, futureFormat = false) {
54
59
  if (fileName === '' ||
55
60
  fileName.includes('\0') ||
56
61
  fileName.includes('\\') ||
@@ -71,21 +76,33 @@ function validateEntryName(fileName, directory) {
71
76
  .some((part) => part === '' || part === '.' || part === '..')) {
72
77
  throw pullError('UNSAFE_SOURCE_ARCHIVE', `Unsafe ZIP entry path: ${fileName}`);
73
78
  }
74
- if (normalized === 'README.md' && !directory)
79
+ if (normalized
80
+ .split('/')
81
+ .some((part) => part === '.env' || part.startsWith('.env.'))) {
82
+ throw pullError('UNSAFE_SOURCE_ARCHIVE', `Environment files are not allowed in source archives: ${fileName}`);
83
+ }
84
+ if (normalized.split('/').some((part) => PACKAGE_MANAGER_CONFIG_FILES.has(part))) {
85
+ throw pullError('UNSAFE_SOURCE_ARCHIVE', `Package manager config files are not allowed in source archives: ${fileName}`);
86
+ }
87
+ if ([
88
+ 'README.md',
89
+ 'agent-tools.json',
90
+ 'package.json',
91
+ 'package-lock.json',
92
+ 'base-database.jsonc',
93
+ 'base-app.config.ts',
94
+ ].includes(normalized) &&
95
+ !directory)
75
96
  return normalized;
76
97
  const [root, ...rest] = normalized.split('/');
77
98
  if (!root || !ALLOWED_ROOTS.has(root)) {
78
- throw pullError('UNSUPPORTED_SOURCE_ENTRY', `ZIP entry is outside the supported source roots: ${fileName}`);
99
+ if (futureFormat)
100
+ return normalized;
101
+ throw pullError('UNSUPPORTED_SOURCE_ENTRY', `ZIP entry is outside the supported source roots: ${fileName} This archive may have been published by a newer CLI; upgrade the CLI and retry.`);
79
102
  }
80
103
  if (!directory && rest.length === 0) {
81
104
  throw pullError('UNSAFE_SOURCE_ARCHIVE', `Source root must be a directory: ${fileName}`);
82
105
  }
83
- if (rest.some((part) => part === '.env' || part.startsWith('.env.'))) {
84
- throw pullError('UNSAFE_SOURCE_ARCHIVE', `Environment files are not allowed in source archives: ${fileName}`);
85
- }
86
- if (rest.some((part) => PACKAGE_MANAGER_CONFIG_FILES.has(part))) {
87
- throw pullError('UNSAFE_SOURCE_ARCHIVE', `Package manager config files are not allowed in source archives: ${fileName}`);
88
- }
89
106
  return normalized;
90
107
  }
91
108
  function entryKind(entry) {
@@ -130,6 +147,8 @@ function openEntryStream(zipFile, entry) {
130
147
  }
131
148
  async function extractZip(archive, staging) {
132
149
  const zipFile = await openZip(archive);
150
+ const marker = readSourceFormat(zipFile.comment);
151
+ const futureFormat = marker !== undefined && marker.format > SOURCE_FORMAT;
133
152
  const paths = new Set();
134
153
  let files = 0;
135
154
  let expandedBytes = 0;
@@ -147,19 +166,20 @@ async function extractZip(archive, staging) {
147
166
  resolvePromise();
148
167
  }
149
168
  };
150
- zipFile.once('error', finish);
169
+ zipFile.once('error', (error) => finish(pullError('UNSAFE_SOURCE_ARCHIVE', error.message)));
151
170
  zipFile.once('end', () => finish());
152
171
  zipFile.on('entry', (entry) => {
153
172
  void (async () => {
154
173
  const kind = entryKind(entry);
155
- const relativePath = validateEntryName(entry.fileName, kind === 'directory');
174
+ const relativePath = validateEntryName(entry.fileName, kind === 'directory', futureFormat);
156
175
  if (paths.has(relativePath)) {
157
176
  throw pullError('UNSAFE_SOURCE_ARCHIVE', `ZIP contains a duplicate path: ${relativePath}`);
158
177
  }
159
178
  paths.add(relativePath);
160
179
  const destination = join(staging, ...relativePath.split('/'));
161
180
  if (kind === 'directory') {
162
- await mkdir(destination, { recursive: true });
181
+ if (!futureFormat)
182
+ await mkdir(destination, { recursive: true });
163
183
  zipFile.readEntry();
164
184
  return;
165
185
  }
@@ -175,7 +195,8 @@ async function extractZip(archive, staging) {
175
195
  if (expandedBytes > MAX_EXPANDED_BYTES) {
176
196
  throw pullError('SOURCE_ARCHIVE_TOO_LARGE', 'Expanded source archive exceeds 512 MiB');
177
197
  }
178
- await mkdir(dirname(destination), { recursive: true });
198
+ if (!futureFormat)
199
+ await mkdir(dirname(destination), { recursive: true });
179
200
  const stream = await openEntryStream(zipFile, entry);
180
201
  let actualBytes = 0;
181
202
  let crc = 0;
@@ -188,7 +209,15 @@ async function extractZip(archive, staging) {
188
209
  }
189
210
  crc = CRC32.buf(chunk, crc);
190
211
  });
191
- await pipeline(stream, createWriteStream(destination, { flags: 'wx', mode: 0o644 }));
212
+ await pipeline(stream,
213
+ // 未支持的格式只做安全与完整性校验,不将任何源码解压到磁盘。
214
+ futureFormat
215
+ ? new Writable({
216
+ write(_chunk, _encoding, callback) {
217
+ callback();
218
+ },
219
+ })
220
+ : createWriteStream(destination, { flags: 'wx', mode: 0o644 }));
192
221
  if (actualBytes !== entry.uncompressedSize ||
193
222
  crc >>> 0 !== entry.crc32) {
194
223
  throw pullError('UNSAFE_SOURCE_ARCHIVE', `ZIP entry integrity check failed: ${entry.fileName}`);
@@ -198,6 +227,9 @@ async function extractZip(archive, staging) {
198
227
  });
199
228
  zipFile.readEntry();
200
229
  });
230
+ if (futureFormat) {
231
+ throw pullError('SOURCE_FORMAT_UNSUPPORTED', `This app was published by a newer CLI (${marker.cli}). Upgrade to >= ${marker.minCli} and retry.`);
232
+ }
201
233
  }
202
234
  async function validateSourceDirectory(staging, directory) {
203
235
  let metadata;
@@ -212,7 +244,7 @@ async function validateSourceDirectory(staging, directory) {
212
244
  }
213
245
  }
214
246
  async function validateAndNormalizeSourceTree(staging) {
215
- for (const directory of ['page', 'server-functions']) {
247
+ for (const directory of ['page', serverDirectory(staging)]) {
216
248
  await validateSourceDirectory(staging, directory);
217
249
  }
218
250
  const canonical = await lstat(join(staging, DATABASE_FUNCTIONS_DIRECTORY))
@@ -267,6 +299,9 @@ function catalogBinding(value) {
267
299
  return { catalog, baseToken: baseTokens[0], tableIds };
268
300
  }
269
301
  async function addAuxiliaryFiles(staging) {
302
+ const sourceRoot = projectLayout(staging).version === 2
303
+ ? join(starterRoot, '../database-starter-v2')
304
+ : starterRoot;
270
305
  const readme = join(staging, 'README.md');
271
306
  try {
272
307
  await lstat(readme);
@@ -274,12 +309,12 @@ async function addAuxiliaryFiles(staging) {
274
309
  catch (error) {
275
310
  if (error.code !== 'ENOENT')
276
311
  throw error;
277
- await cp(join(starterRoot, 'README.md'), readme);
312
+ await cp(join(sourceRoot, 'README.md'), readme);
278
313
  }
279
- await cp(join(starterRoot, 'gitignore'), join(staging, '.gitignore'));
280
- await cp(join(starterRoot, 'prettierignore'), join(staging, '.prettierignore'));
314
+ await cp(join(sourceRoot, 'gitignore'), join(staging, '.gitignore'));
315
+ await cp(join(sourceRoot, 'prettierignore'), join(staging, '.prettierignore'));
281
316
  }
282
- async function replaceEmptyWorkspace(workspace, staging, existed) {
317
+ export async function replaceEmptyWorkspace(workspace, staging, existed) {
283
318
  if (!existed) {
284
319
  await rename(staging, workspace);
285
320
  return;
@@ -287,6 +322,43 @@ async function replaceEmptyWorkspace(workspace, staging, existed) {
287
322
  if ((await readdir(workspace)).length !== 0) {
288
323
  throw pullError('WORKSPACE_NOT_EMPTY', 'Pull target changed while source was being restored');
289
324
  }
325
+ // Windows locks a process's current directory, so that directory cannot be
326
+ // renamed. Moving its children also keeps the caller's cwd attached to the
327
+ // restored project on other platforms.
328
+ if (workspace === resolve(process.cwd())) {
329
+ const moved = [];
330
+ try {
331
+ for (const name of (await readdir(staging)).sort()) {
332
+ const destination = join(workspace, name);
333
+ try {
334
+ await lstat(destination);
335
+ throw pullError('WORKSPACE_NOT_EMPTY', 'Pull target changed while source was being restored');
336
+ }
337
+ catch (error) {
338
+ if (error.code !== 'ENOENT')
339
+ throw error;
340
+ }
341
+ await rename(join(staging, name), destination);
342
+ moved.push(name);
343
+ }
344
+ }
345
+ catch (error) {
346
+ const rollbackFailures = [];
347
+ for (const name of moved.reverse()) {
348
+ try {
349
+ await rename(join(workspace, name), join(staging, name));
350
+ }
351
+ catch {
352
+ rollbackFailures.push(name);
353
+ }
354
+ }
355
+ if (rollbackFailures.length > 0) {
356
+ throw new Error(`WORKSPACE_RESTORE_PARTIAL: Pull target contains restored entries that could not be rolled back: ${rollbackFailures.join(', ')}`, { cause: error });
357
+ }
358
+ throw error;
359
+ }
360
+ return;
361
+ }
290
362
  const backup = `${workspace}.pull-backup-${process.pid}-${Date.now()}`;
291
363
  await rename(workspace, backup);
292
364
  try {
@@ -332,6 +404,7 @@ export async function pullProject(options) {
332
404
  }
333
405
  await extractZip(archive, staging);
334
406
  await validateAndNormalizeSourceTree(staging);
407
+ const projectContract = readPortableProjectContract(staging);
335
408
  const catalogResponse = runLarkCli([
336
409
  'api',
337
410
  'GET',
@@ -340,7 +413,16 @@ export async function pullProject(options) {
340
413
  const binding = catalogBinding(responseData(catalogResponse));
341
414
  await writeFile(join(staging, 'catalog.json'), `${JSON.stringify(binding.catalog, null, 2)}\n`);
342
415
  writeConfig(staging, {
416
+ ...projectContract,
343
417
  configVersion: 1,
418
+ ...(projectLayout(staging).version === 2
419
+ ? {
420
+ template: {
421
+ name: 'database-starter',
422
+ version: 2,
423
+ },
424
+ }
425
+ : {}),
344
426
  ...(larkProfile ? { larkProfile } : {}),
345
427
  name: basename(workspace),
346
428
  ...(runtimeProfile.name === ONLINE_RUNTIME_PROFILE.name
@@ -356,6 +438,7 @@ export async function pullProject(options) {
356
438
  },
357
439
  });
358
440
  // AI Function 配置不在源码制品里;由 pull 直接恢复,避免要求 Agent 自行判断何时 list/pull。
441
+ await rm(join(staging, 'ai'), { recursive: true, force: true });
359
442
  const aiFunctions = restoreRemoteAIFunctions(appToken, staging, env, staging);
360
443
  await addAuxiliaryFiles(staging);
361
444
  await replaceEmptyWorkspace(workspace, staging, workspaceExisted);
package/dist/pull.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EACL,EAAE,EACF,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,OAAO,EACP,MAAM,EACN,EAAE,EACF,IAAI,EACJ,SAAS,GACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAiB,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAmC,MAAM,OAAO,CAAC;AAExD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,qBAAqB,CAAC;AAE7B,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3C,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,kBAAkB,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7C,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC;IAC3C,QAAQ;IACR,SAAS;IACT,aAAa;IACb,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,MAAM;IACN,kBAAkB;IAClB,QAAQ;IACR,WAAW;IACX,IAAI;IACJ,4BAA4B;IAC5B,mCAAmC;CACpC,CAAC,CAAC;AACH,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AACnD,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AACrC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,cAAc,GAAG,QAAQ,CAAC;AAehC,SAAS,SAAS,CAAC,IAAY,EAAE,OAAe;IAC9C,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,SAAiB;IACnD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;YACzD,MAAM,SAAS,CACb,qBAAqB,EACrB,wCAAwC,CACzC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,MAAM,SAAS,CACb,qBAAqB,EACrB,sCAAsC,CACvC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAgB,EAChB,SAAkB,EAClB,YAAY,GAAG,KAAK;IAEpB,IACE,QAAQ,KAAK,EAAE;QACf,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QACvB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QACvB,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC3B,CAAC;QACD,MAAM,SAAS,CACb,uBAAuB,EACvB,0BAA0B,QAAQ,EAAE,CACrC,CAAC;IACJ,CAAC;IACD,MAAM,oBAAoB,GACxB,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,IAAI,oBAAoB,KAAK,EAAE,EAAE,CAAC;QAChC,MAAM,SAAS,CACb,uBAAuB,EACvB,kCAAkC,CACnC,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IACzD,IACE,UAAU,KAAK,oBAAoB;QACnC,UAAU,KAAK,IAAI;QACnB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;QAC5B,UAAU;aACP,KAAK,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,EAC/D,CAAC;QACD,MAAM,SAAS,CACb,uBAAuB,EACvB,0BAA0B,QAAQ,EAAE,CACrC,CAAC;IACJ,CAAC;IACD,IACE,UAAU;SACP,KAAK,CAAC,GAAG,CAAC;SACV,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAC9D,CAAC;QACD,MAAM,SAAS,CACb,uBAAuB,EACvB,yDAAyD,QAAQ,EAAE,CACpE,CAAC;IACJ,CAAC;IACD,IACE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAC5E,CAAC;QACD,MAAM,SAAS,CACb,uBAAuB,EACvB,oEAAoE,QAAQ,EAAE,CAC/E,CAAC;IACJ,CAAC;IACD,IACE;QACE,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,mBAAmB;QACnB,qBAAqB;QACrB,oBAAoB;KACrB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACtB,CAAC,SAAS;QAEV,OAAO,UAAU,CAAC;IACpB,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,IAAI,YAAY;YAAE,OAAO,UAAU,CAAC;QACpC,MAAM,SAAS,CACb,0BAA0B,EAC1B,oDAAoD,QAAQ,kFAAkF,CAC/I,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,SAAS,CACb,uBAAuB,EACvB,oCAAoC,QAAQ,EAAE,CAC/C,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,KAAY;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,KAAK,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC;QAC5D,MAAM,IAAI,GAAG,IAAI,GAAG,mBAAmB,CAAC;QACxC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,iBAAiB,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;YACxE,MAAM,SAAS,CACb,uBAAuB,EACvB,iDAAiD,KAAK,CAAC,QAAQ,EAAE,CAClE,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,KAAK,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1C,MAAM,SAAS,CACb,uBAAuB,EACvB,4CAA4C,KAAK,CAAC,QAAQ,EAAE,CAC7D,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,KAAK,iBAAiB,IAAI,SAAS,EAAE,CAAC;YAC5C,MAAM,SAAS,CACb,uBAAuB,EACvB,uCAAuC,KAAK,CAAC,QAAQ,EAAE,CACxD,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;AAC1C,CAAC;AAED,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE;QAC5C,KAAK,CAAC,IAAI,CACR,OAAO,EACP,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAChE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACjB,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,CACJ,SAAS,CACP,4BAA4B,EAC5B,KAAK,EAAE,OAAO,IAAI,4BAA4B,CAC/C,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YACD,cAAc,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,OAAgB,EAAE,KAAY;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE;QAC5C,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC9C,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACrB,MAAM,CACJ,SAAS,CACP,uBAAuB,EACvB,KAAK,EAAE,OAAO,IAAI,kBAAkB,KAAK,CAAC,QAAQ,EAAE,CACrD,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YACD,cAAc,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,OAAe;IACxD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC;IAC3E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,IAAI,OAAO,CAAO,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE;QACjD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,KAAe,EAAQ,EAAE;YACvC,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9B,MAAM,CAAC,SAAS,CAAC,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAC1D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC5B,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM,YAAY,GAAG,iBAAiB,CACpC,KAAK,CAAC,QAAQ,EACd,IAAI,KAAK,WAAW,EACpB,YAAY,CACb,CAAC;gBACF,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC5B,MAAM,SAAS,CACb,uBAAuB,EACvB,kCAAkC,YAAY,EAAE,CACjD,CAAC;gBACJ,CAAC;gBACD,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACxB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9D,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;oBACzB,IAAI,CAAC,YAAY;wBAAE,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjE,OAAO,CAAC,SAAS,EAAE,CAAC;oBACpB,OAAO;gBACT,CAAC;gBAED,KAAK,IAAI,CAAC,CAAC;gBACX,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;oBACtB,MAAM,SAAS,CACb,0BAA0B,EAC1B,qCAAqC,SAAS,QAAQ,CACvD,CAAC;gBACJ,CAAC;gBACD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBAC7C,KAAK,CAAC,gBAAgB,GAAG,CAAC,EAC1B,CAAC;oBACD,MAAM,SAAS,CACb,uBAAuB,EACvB,kCAAkC,KAAK,CAAC,QAAQ,EAAE,CACnD,CAAC;gBACJ,CAAC;gBACD,aAAa,IAAI,KAAK,CAAC,gBAAgB,CAAC;gBACxC,IAAI,aAAa,GAAG,kBAAkB,EAAE,CAAC;oBACvC,MAAM,SAAS,CACb,0BAA0B,EAC1B,yCAAyC,CAC1C,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,YAAY;oBACf,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACrD,IAAI,WAAW,GAAG,CAAC,CAAC;gBACpB,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;oBAClC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;oBAC5B,IACE,WAAW,GAAG,KAAK,CAAC,gBAAgB;wBACpC,WAAW,GAAG,kBAAkB,EAChC,CAAC;wBACD,MAAM,CAAC,OAAO,CACZ,SAAS,CACP,uBAAuB,EACvB,kCAAkC,KAAK,CAAC,QAAQ,EAAE,CACnD,CACF,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBACH,MAAM,QAAQ,CACZ,MAAM;gBACN,gCAAgC;gBAChC,YAAY;oBACV,CAAC,CAAC,IAAI,QAAQ,CAAC;wBACX,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ;4BAC/B,QAAQ,EAAE,CAAC;wBACb,CAAC;qBACF,CAAC;oBACJ,CAAC,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CACjE,CAAC;gBACF,IACE,WAAW,KAAK,KAAK,CAAC,gBAAgB;oBACtC,GAAG,KAAK,CAAC,KAAK,KAAK,CAAC,KAAK,EACzB,CAAC;oBACD,MAAM,SAAS,CACb,uBAAuB,EACvB,qCAAqC,KAAK,CAAC,QAAQ,EAAE,CACtD,CAAC;gBACJ,CAAC;gBACD,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,SAAS,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,SAAS,CACb,2BAA2B,EAC3B,0CAA0C,MAAM,CAAC,GAAG,oBAAoB,MAAM,CAAC,MAAM,aAAa,CACnG,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,OAAe,EACf,SAAiB;IAEjB,IAAI,QAA2C,CAAC;IAChD,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,SAAS,CACb,wBAAwB,EACxB,6BAA6B,SAAS,GAAG,CAC1C,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;QACzD,MAAM,SAAS,CACb,wBAAwB,EACxB,kBAAkB,SAAS,sBAAsB,CAClD,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAC,OAAe;IAC3D,KAAK,MAAM,SAAS,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;SACvE,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;SAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACtB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;SAC3E,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;SAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACxB,MAAM,SAAS,CACb,wBAAwB,EACxB,gCAAgC,4BAA4B,gBAAgB,mCAAmC,GAAG,CACnH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,SAAS,CACb,wBAAwB,EACxB,6BAA6B,4BAA4B,GAAG,CAC7D,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,SAAS;QACzB,CAAC,CAAC,4BAA4B;QAC9B,CAAC,CAAC,mCAAmC,CAAC;IACxC,MAAM,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAClD,IAAI,SAAS,KAAK,mCAAmC,EAAE,CAAC;QACtD,MAAM,MAAM,CACV,IAAI,CAAC,OAAO,EAAE,mCAAmC,CAAC,EAClD,IAAI,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAC5C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IAKpC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,SAAS,CAAC,iBAAiB,EAAE,uCAAuC,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,OAAO,GAAG,KAAyD,CAAC;IAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,MAAM,SAAS,CACb,iBAAiB,EACjB,qDAAqD,CACtD,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAmB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACzD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,MAAM,SAAS,CACb,iBAAiB,EACjB,+CAA+C,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAA6C,CAAC;QAC5D,IACE,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACnC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE;YAC7B,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;YAC5B,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EACtB,CAAC;YACD,MAAM,SAAS,CACb,iBAAiB,EACjB,mDAAmD,CACpD,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,SAAS,CACb,8BAA8B,EAC9B,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;QACtC,MAAM,SAAS,CACb,iBAAiB,EACjB,kDAAkD,CACnD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAE,EAAE,QAAQ,EAAE,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,OAAe;IAC9C,MAAM,UAAU,GACd,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;QAClC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,wBAAwB,CAAC;QAC7C,CAAC,CAAC,WAAW,CAAC;IAClB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;QACpE,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;IACrE,MAAM,EAAE,CACN,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EAClC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CACjC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,SAAiB,EACjB,OAAe,EACf,OAAgB;IAEhB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,IAAI,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,SAAS,CACb,qBAAqB,EACrB,qDAAqD,CACtD,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,2EAA2E;IAC3E,uCAAuC;IACvC,IAAI,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC1C,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;oBACzB,MAAM,SAAS,CACb,qBAAqB,EACrB,qDAAqD,CACtD,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;wBAAE,MAAM,KAAK,CAAC;gBACtE,CAAC;gBACD,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;gBAC/C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,gBAAgB,GAAa,EAAE,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBAAC,MAAM,CAAC;oBACP,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,mGAAmG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAChI,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,SAAS,gBAAgB,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACvE,MAAM,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,MAAM,SAAS,CAAC,mBAAmB,EAAE,iCAAiC,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,cAAc,GAAG,qBAAqB,CAC1C,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,IAAI,sBAAsB,CACjD,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,MAAM,OAAO,CACjC,IAAI,CAAC,MAAM,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAC9C,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;IAErB,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,6BAA6B,CACxD,MAAM,cAAc,CAAC,kBAAkB,EAAE,EACzC,OAAO,CAAC,WAAW,EACnB,SAAS,EACT,cAAc,CACf,CAAC;QACF,gBAAgB,CACd,KAAK,EACL,4BAA4B,kBAAkB,CAAC,QAAQ,CAAC,cAAc,EACtE,OAAO,EACP,GAAG,EACH,MAAM,CACP,CAAC;QACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC5D,MAAM,SAAS,CACb,4BAA4B,EAC5B,wCAAwC,CACzC,CAAC;QACJ,CAAC;QACD,IAAI,eAAe,CAAC,IAAI,GAAG,iBAAiB,EAAE,CAAC;YAC7C,MAAM,SAAS,CACb,0BAA0B,EAC1B,0CAA0C,CAC3C,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvD,IACE,KAAK,CAAC,MAAM,GAAG,CAAC;YAChB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YACjB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YACjB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YACjB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EACjB,CAAC;YACD,MAAM,SAAS,CACb,4BAA4B,EAC5B,4CAA4C,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnC,MAAM,8BAA8B,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,eAAe,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;QAE7D,MAAM,eAAe,GAAG,UAAU,CAChC;YACE,KAAK;YACL,KAAK;YACL,4BAA4B,kBAAkB,CAAC,QAAQ,CAAC,UAAU;SACnE,EACD,GAAG,EACH,MAAM,CACP,CAAC;QACF,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC;QAC9D,MAAM,SAAS,CACb,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,EAC7B,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAChD,CAAC;QACF,WAAW,CAAC,OAAO,EAAE;YACnB,GAAG,eAAe;YAClB,aAAa,EAAE,CAAC;YAChB,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;gBACtC,CAAC,CAAC;oBACE,QAAQ,EAAE;wBACR,IAAI,EAAE,kBAA2B;wBACjC,OAAO,EAAE,CAAU;qBACpB;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;YACzB,GAAG,CAAC,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,IAAI;gBACrD,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC;YAC5C,QAAQ;YACR,QAAQ,EAAE;gBACR,SAAS,EAAE;oBACT,IAAI,EAAE,MAAM;oBACZ,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;iBAC3B;aACF;SACF,CAAC,CAAC;QACH,iEAAiE;QACjE,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,MAAM,WAAW,GAAG,wBAAwB,CAC1C,QAAQ,EACR,OAAO,EACP,GAAG,EACH,OAAO,CACR,CAAC;QACF,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,qBAAqB,CAAC,SAAS,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,EAAE,EAAE,IAAa;YACjB,WAAW,EAAE,cAAc,CAAC,IAAI;YAChC,SAAS;YACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,QAAQ;YACR,MAAM,EAAE,UAAmB;YAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;YACzC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC;YACxC,WAAW;SACZ,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAC7D,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ export interface CodegenFile {
2
+ path: string;
3
+ content: string;
4
+ }
5
+ export declare class SDKCodegenError extends Error {
6
+ readonly code: string;
7
+ constructor(code: string, message: string);
8
+ toJSON(): {
9
+ code: string;
10
+ message: string;
11
+ };
12
+ }
13
+ export declare function requiresSDKCodegen(root: string): boolean;
14
+ /** Resolve/snapshot reads package bytes only; project modules execute only in the restricted child. */
15
+ export declare function runSDKCodegen(root: string, data: unknown): CodegenFile[];
16
+ //# sourceMappingURL=sdk-codegen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-codegen.d.ts","sourceRoot":"","sources":["../src/sdk-codegen.ts"],"names":[],"mappings":"AAoBA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,IAAI,EAAE,MAAM;IAD9B,YACkB,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EAIhB;IACD,MAAM;QACK,IAAI;QAAa,OAAO;MAClC;CACF;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAQD,uGAAuG;AACvG,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,WAAW,EAAE,CAoIxE"}