@lark-base-open/base-database-cli 1.1.1 → 1.3.7
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.
- package/CHANGELOG.md +74 -0
- package/LICENSE +6 -0
- package/README.md +45 -27
- package/dist/ai-functions.d.ts +42 -0
- package/dist/ai-functions.d.ts.map +1 -0
- package/dist/ai-functions.js +327 -0
- package/dist/ai-functions.js.map +1 -0
- package/dist/archive.d.ts +21 -0
- package/dist/archive.d.ts.map +1 -1
- package/dist/archive.js +65 -10
- package/dist/archive.js.map +1 -1
- package/dist/auth.d.ts +5 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +26 -3
- package/dist/auth.js.map +1 -1
- package/dist/check.d.ts +74 -0
- package/dist/check.d.ts.map +1 -0
- package/dist/check.js +283 -0
- package/dist/check.js.map +1 -0
- package/dist/dependency-policy.d.ts +10 -0
- package/dist/dependency-policy.d.ts.map +1 -0
- package/dist/dependency-policy.js +162 -0
- package/dist/dependency-policy.js.map +1 -0
- package/dist/deploy.d.ts +1 -0
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +122 -175
- package/dist/deploy.js.map +1 -1
- package/dist/environment-variables.d.ts +52 -0
- package/dist/environment-variables.d.ts.map +1 -0
- package/dist/environment-variables.js +563 -0
- package/dist/environment-variables.js.map +1 -0
- package/dist/environment.d.ts +1 -1
- package/dist/environment.js +1 -1
- package/dist/environment.js.map +1 -1
- package/dist/function-input-types.d.ts +10 -0
- package/dist/function-input-types.d.ts.map +1 -0
- package/dist/function-input-types.js +160 -0
- package/dist/function-input-types.js.map +1 -0
- package/dist/function-schema.d.ts.map +1 -1
- package/dist/function-schema.js +89 -36
- package/dist/function-schema.js.map +1 -1
- package/dist/init-field-retry.d.ts +17 -0
- package/dist/init-field-retry.d.ts.map +1 -0
- package/dist/init-field-retry.js +127 -0
- package/dist/init-field-retry.js.map +1 -0
- package/dist/init-journal.d.ts +98 -0
- package/dist/init-journal.d.ts.map +1 -0
- package/dist/init-journal.js +492 -0
- package/dist/init-journal.js.map +1 -0
- package/dist/init-schema.d.ts +8 -0
- package/dist/init-schema.d.ts.map +1 -0
- package/dist/init-schema.js +423 -0
- package/dist/init-schema.js.map +1 -0
- package/dist/init.d.ts +14 -0
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +883 -261
- package/dist/init.js.map +1 -1
- package/dist/lark-cli-error.d.ts +46 -0
- package/dist/lark-cli-error.d.ts.map +1 -0
- package/dist/lark-cli-error.js +171 -0
- package/dist/lark-cli-error.js.map +1 -0
- package/dist/lark-cli.d.ts +1 -1
- package/dist/lark-cli.d.ts.map +1 -1
- package/dist/lark-cli.js +66 -18
- package/dist/lark-cli.js.map +1 -1
- package/dist/mutation-schema.d.ts +146 -0
- package/dist/mutation-schema.d.ts.map +1 -0
- package/dist/mutation-schema.js +153 -0
- package/dist/mutation-schema.js.map +1 -0
- package/dist/mutation.d.ts +10 -0
- package/dist/mutation.d.ts.map +1 -0
- package/dist/mutation.js +131 -0
- package/dist/mutation.js.map +1 -0
- package/dist/npm.d.ts +1 -0
- package/dist/npm.d.ts.map +1 -1
- package/dist/npm.js +2 -2
- package/dist/npm.js.map +1 -1
- package/dist/preview-receipt.d.ts.map +1 -1
- package/dist/preview-receipt.js +15 -5
- package/dist/preview-receipt.js.map +1 -1
- package/dist/process.d.ts +3 -1
- package/dist/process.d.ts.map +1 -1
- package/dist/process.js +16 -4
- package/dist/process.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +240 -41
- package/dist/program.js.map +1 -1
- package/dist/project-build.d.ts +25 -0
- package/dist/project-build.d.ts.map +1 -0
- package/dist/project-build.js +229 -0
- package/dist/project-build.js.map +1 -0
- package/dist/project-context.d.ts +344 -0
- package/dist/project-context.d.ts.map +1 -0
- package/dist/project-context.js +485 -0
- package/dist/project-context.js.map +1 -0
- package/dist/project-layout.d.ts +5 -0
- package/dist/project-layout.d.ts.map +1 -0
- package/dist/project-layout.js +24 -0
- package/dist/project-layout.js.map +1 -0
- package/dist/public-sql-error.d.ts +25 -0
- package/dist/public-sql-error.d.ts.map +1 -0
- package/dist/public-sql-error.js +81 -0
- package/dist/public-sql-error.js.map +1 -0
- package/dist/pull.d.ts.map +1 -1
- package/dist/pull.js +54 -15
- package/dist/pull.js.map +1 -1
- package/dist/site-readme.d.ts +3 -0
- package/dist/site-readme.d.ts.map +1 -0
- package/dist/site-readme.js +83 -0
- package/dist/site-readme.js.map +1 -0
- package/dist/workspace-fingerprint.d.ts +21 -1
- package/dist/workspace-fingerprint.d.ts.map +1 -1
- package/dist/workspace-fingerprint.js +81 -2
- package/dist/workspace-fingerprint.js.map +1 -1
- package/package.json +2 -1
- package/skills/lark-base-database/SKILL.md +66 -50
- package/skills/lark-base-database/references/ai-function.md +471 -0
- package/skills/lark-base-database/references/base-capability-routing.md +3 -3
- package/skills/lark-base-database/references/database-function-limitations.md +46 -0
- package/skills/lark-base-database/references/database-function.md +349 -0
- package/skills/lark-base-database/references/design/components/actions-fields.md +16 -0
- package/skills/lark-base-database/references/design/components/code/controls.css +122 -0
- package/skills/lark-base-database/references/design/components/code/controls.tsx +73 -0
- package/skills/lark-base-database/references/design/components/code/date-picker.tsx +42 -0
- package/skills/lark-base-database/references/design/components/code/floating.tsx +41 -0
- package/skills/lark-base-database/references/design/components/code/overlays.tsx +19 -0
- package/skills/lark-base-database/references/design/components/code/select.tsx +34 -0
- package/skills/lark-base-database/references/design/components/code/styles.d.ts +1 -0
- package/skills/lark-base-database/references/design/components/code/theme.css +49 -0
- package/skills/lark-base-database/references/design/components/code/usage.tsx +38 -0
- package/skills/lark-base-database/references/design/components/date-time-number.md +9 -0
- package/skills/lark-base-database/references/design/components/feedback-navigation.md +9 -0
- package/skills/lark-base-database/references/design/components/index.md +18 -0
- package/skills/lark-base-database/references/design/components/overlays.md +9 -0
- package/skills/lark-base-database/references/design/components/patterns/flat-business.md +7 -0
- package/skills/lark-base-database/references/design/components/selection.md +24 -0
- package/skills/lark-base-database/references/design/components.md +91 -0
- package/skills/lark-base-database/references/design/composition.md +90 -0
- package/skills/lark-base-database/references/design/control-recipes.md +107 -0
- package/skills/lark-base-database/references/design/examples.md +172 -0
- package/skills/lark-base-database/references/design/foundations.md +126 -0
- package/skills/lark-base-database/references/design/review.md +82 -0
- package/skills/lark-base-database/references/design/scenes/analysis-report.md +66 -0
- package/skills/lark-base-database/references/design/scenes/brand-showcase.md +70 -0
- package/skills/lark-base-database/references/design/scenes/business-operations.md +85 -0
- package/skills/lark-base-database/references/design/scenes/campaign-report.md +66 -0
- package/skills/lark-base-database/references/design/scenes/dashboard.md +77 -0
- package/skills/lark-base-database/references/design/scenes/festive-campaign.md +69 -0
- package/skills/lark-base-database/references/design/theme.md +27 -0
- package/skills/lark-base-database/references/design/typography.md +56 -0
- package/skills/lark-base-database/references/development.md +165 -32
- package/skills/lark-base-database/references/environment-variables.md +55 -0
- package/skills/lark-base-database/references/faas.md +41 -48
- package/skills/lark-base-database/references/file-transfer.md +25 -25
- package/skills/lark-base-database/references/frontend-design-guide.md +33 -77
- package/skills/lark-base-database/references/mutations.md +295 -0
- package/skills/lark-base-database/references/permission-design.md +24 -24
- package/skills/lark-base-database/references/release.md +51 -24
- package/skills/lark-base-database/references/style-guide.md +10 -67
- package/skills/lark-base-database/references/verification.md +15 -11
- package/skills/lark-base-database/references/workspace.md +46 -8
- package/templates/database-starter/README.md +34 -4
- package/templates/database-starter/database-functions/README.md +8 -0
- package/templates/database-starter/mutations/README.md +19 -0
- package/templates/database-starter/page/README.md +25 -19
- package/templates/database-starter/page/package-lock.json +8 -16
- package/templates/database-starter/page/package.json +2 -3
- package/templates/database-starter/page/src/App.tsx +23 -3
- package/templates/database-starter/page/src/components/UserSelectorEditor/index.tsx +32 -4
- package/templates/database-starter/page/src/components/UserSelectorPanel/index.tsx +104 -34
- package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.test.ts +55 -11
- package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.ts +68 -25
- package/templates/database-starter/page/src/components/database-runtime-ready.tsx +1 -1
- package/templates/database-starter/page/src/components/database-user-menu/index.tsx +4 -7
- package/templates/database-starter/page/src/components/feedback/page-state.tsx +40 -5
- package/templates/database-starter/page/src/components/floating-button/assets/edit-active.svg +3 -0
- package/templates/database-starter/page/src/components/floating-button/assets/edit-default.svg +3 -0
- package/templates/database-starter/page/src/components/floating-button/index.tsx +75 -112
- package/templates/database-starter/page/src/components/floating-button/utils/project-meta.test.ts +107 -37
- package/templates/database-starter/page/src/components/floating-button/utils/project-meta.ts +13 -50
- package/templates/database-starter/page/src/components/ui-language.test.tsx +101 -0
- package/templates/database-starter/page/src/examples/ai-function/ImageTaskOperation.tsx +202 -0
- package/templates/database-starter/page/src/examples/ai-function/README.md +14 -0
- package/templates/database-starter/page/src/examples/ai-function/TextStreamOperation.tsx +184 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-copy.ts +173 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-delta.test.ts +30 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-delta.ts +26 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-language.test.tsx +86 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.test.ts +201 -0
- package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.tsx +382 -0
- package/templates/database-starter/page/src/lib/attachment-image.tsx +144 -0
- package/templates/database-starter/page/src/lib/database-function-inputs.generated.ts +4 -0
- package/templates/database-starter/page/src/lib/database-runtime-attachment.test.ts +180 -76
- package/templates/database-starter/page/src/lib/database-runtime.test.ts +130 -10
- package/templates/database-starter/page/src/lib/database-runtime.ts +484 -51
- package/templates/database-starter/page/src/lib/date-time.ts +61 -0
- package/templates/database-starter/page/src/lib/ui-language.ts +86 -0
- package/templates/database-starter/page/src/main.tsx +1 -1
- package/templates/database-starter/page/tsconfig.json +2 -2
- package/templates/database-starter/page/vite.config.ts +1 -2
- package/templates/database-starter/prettierignore +1 -1
- package/templates/database-starter/server-functions/README.md +2 -2
- package/templates/database-starter/server-functions/package-lock.json +4 -4
- package/templates/database-starter/server-functions/package.json +1 -1
- package/dist/agent-guide.d.ts +0 -19
- package/dist/agent-guide.d.ts.map +0 -1
- package/dist/agent-guide.js +0 -31
- package/dist/agent-guide.js.map +0 -1
- package/dist/database-skill.d.ts +0 -24
- package/dist/database-skill.d.ts.map +0 -1
- package/dist/database-skill.js +0 -148
- package/dist/database-skill.js.map +0 -1
- package/skills/lark-base-database/references/base-sql-unsupported.md +0 -42
- package/skills/lark-base-database/references/database-capability-skill.md +0 -40
- package/skills/lark-base-database/references/sql-function.md +0 -289
- package/templates/database-capability/SKILL.md.tmpl +0 -58
- package/templates/database-starter/page/src/components/floating-button/chatbot-entry.test.ts +0 -23
- package/templates/database-starter/page/src/components/floating-button/chatbot-entry.tsx +0 -873
- package/templates/database-starter/page/src/components/floating-button/local-chat-panel.test.ts +0 -25
- package/templates/database-starter/page/src/components/floating-button/local-chat-panel.tsx +0 -197
- package/templates/database-starter/page/src/components/floating-button/utils/env.ts +0 -18
- package/templates/database-starter/sql/README.md +0 -8
package/dist/deploy.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { existsSync,
|
|
3
|
-
import {
|
|
1
|
+
import { readPublicSQLError, formatPublicSQLError, } from './public-sql-error.js';
|
|
2
|
+
import { existsSync, statSync } from 'node:fs';
|
|
3
|
+
import { join, relative, resolve } from 'node:path';
|
|
4
4
|
import { createInterface } from 'node:readline/promises';
|
|
5
5
|
import { archiveDatabase, prepareDatabaseMetadata, } from './archive.js';
|
|
6
|
-
import {
|
|
6
|
+
import { collectLocalAIFunctions, syncAIFunctionsForDeploy, } from './ai-functions.js';
|
|
7
7
|
import { readConfig } from './config.js';
|
|
8
8
|
import { assertProjectRuntimeProfile, ONLINE_RUNTIME_PROFILE, } from './environment.js';
|
|
9
|
+
import { validatePreviewEnvironmentVariableDeclarations, validatePreviewEnvironmentVariableValues, validateProdEnvironmentVariables, } from './environment-variables.js';
|
|
10
|
+
import { syncDatabaseFunctionInputTypes } from './function-input-types.js';
|
|
9
11
|
import { responseData, runLarkCli, runLarkCliOutput, resolveLarkProfileEnvironment, } from './lark-cli.js';
|
|
10
12
|
import { validatePageTitle } from './page-title.js';
|
|
11
|
-
import {
|
|
13
|
+
import { requireDatabaseFunctionsDirectory } from './project-layout.js';
|
|
14
|
+
import { validateSiteReadme } from './site-readme.js';
|
|
15
|
+
import { resolveWorkspaceNpm } from './npm.js';
|
|
16
|
+
import { buildProject, installDependencies, validateProjectDependencyLocks, } from './project-build.js';
|
|
17
|
+
import { parsePackageDependencyPolicy, validateWorkspacePackageDependencies, } from './dependency-policy.js';
|
|
12
18
|
import { finalizePreviewReceipt, previewArtifact, readPreviewReceiptForProduction, writePendingPreviewReceipt, } from './preview-receipt.js';
|
|
13
|
-
import {
|
|
14
|
-
import { workspaceInputFingerprint } from './workspace-fingerprint.js';
|
|
15
|
-
const dependencyDirectories = ['page', 'server-functions'];
|
|
19
|
+
import { DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM, deploymentInputFingerprint, } from './workspace-fingerprint.js';
|
|
16
20
|
function isRecord(value) {
|
|
17
21
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
18
22
|
}
|
|
@@ -65,21 +69,59 @@ export function collectBaseBinding(config, warn = (message) => process.stderr.wr
|
|
|
65
69
|
}
|
|
66
70
|
return bases.values().next().value;
|
|
67
71
|
}
|
|
72
|
+
export function baseBindingToSync(binding, remoteProject) {
|
|
73
|
+
if (!binding)
|
|
74
|
+
return undefined;
|
|
75
|
+
if (!isRecord(remoteProject) || !Array.isArray(remoteProject.baseBindings)) {
|
|
76
|
+
return binding;
|
|
77
|
+
}
|
|
78
|
+
for (const value of remoteProject.baseBindings) {
|
|
79
|
+
if (!isRecord(value))
|
|
80
|
+
continue;
|
|
81
|
+
const baseToken = value.baseToken ?? value.base_token;
|
|
82
|
+
if (baseToken !== binding.baseToken)
|
|
83
|
+
continue;
|
|
84
|
+
const tableIds = value.tableIds ?? value.table_ids;
|
|
85
|
+
if (!Array.isArray(tableIds) ||
|
|
86
|
+
tableIds.some((tableId) => typeof tableId !== 'string')) {
|
|
87
|
+
return binding;
|
|
88
|
+
}
|
|
89
|
+
const remoteTableIds = new Set(tableIds);
|
|
90
|
+
const missingTableIds = binding.tableIds.filter((tableId) => !remoteTableIds.has(tableId));
|
|
91
|
+
return missingTableIds.length === 0
|
|
92
|
+
? undefined
|
|
93
|
+
: { ...binding, tableIds: missingTableIds };
|
|
94
|
+
}
|
|
95
|
+
return binding;
|
|
96
|
+
}
|
|
68
97
|
function syncBaseBinding(appToken, binding, env) {
|
|
69
98
|
if (!binding)
|
|
70
99
|
return;
|
|
100
|
+
// The plain project read returns the draft binding that bind_base would update.
|
|
101
|
+
const projectResponse = runLarkCli([
|
|
102
|
+
'api',
|
|
103
|
+
'GET',
|
|
104
|
+
`/open-apis/base/v3/sites/${encodeURIComponent(appToken)}/get`,
|
|
105
|
+
], env);
|
|
106
|
+
const project = responseData(projectResponse).project;
|
|
107
|
+
if (isRecord(project) && project.token !== appToken) {
|
|
108
|
+
throw new Error('Application readback returned a different token');
|
|
109
|
+
}
|
|
110
|
+
const bindingToSync = baseBindingToSync(binding, project);
|
|
111
|
+
if (!bindingToSync)
|
|
112
|
+
return;
|
|
71
113
|
runLarkCli([
|
|
72
114
|
'api',
|
|
73
115
|
'POST',
|
|
74
116
|
`/open-apis/base/v3/sites/${encodeURIComponent(appToken)}/bind_base`,
|
|
75
117
|
'--data',
|
|
76
118
|
JSON.stringify({
|
|
77
|
-
baseToken:
|
|
78
|
-
tableIds:
|
|
119
|
+
baseToken: bindingToSync.baseToken,
|
|
120
|
+
tableIds: bindingToSync.tableIds,
|
|
79
121
|
}),
|
|
80
122
|
], env);
|
|
81
123
|
}
|
|
82
|
-
function
|
|
124
|
+
function validateDatabaseFunctions(workspace, appToken, validations, env) {
|
|
83
125
|
const failures = [];
|
|
84
126
|
const token = encodeURIComponent(appToken);
|
|
85
127
|
for (const validation of validations) {
|
|
@@ -92,124 +134,22 @@ function validateSQLFunctions(workspace, appToken, validations, env) {
|
|
|
92
134
|
], env, workspace);
|
|
93
135
|
const data = responseData(response);
|
|
94
136
|
if (data.isSuccess !== true) {
|
|
137
|
+
const publicError = readPublicSQLError(data.error);
|
|
95
138
|
failures.push({
|
|
96
139
|
functionId: validation.functionId,
|
|
97
|
-
diagnostics:
|
|
140
|
+
diagnostics: publicError
|
|
141
|
+
? formatPublicSQLError(publicError)
|
|
142
|
+
: String(data.errMsg ?? ''),
|
|
98
143
|
});
|
|
99
144
|
}
|
|
100
145
|
}
|
|
101
146
|
if (failures.length === 0)
|
|
102
147
|
return;
|
|
103
148
|
throw new Error([
|
|
104
|
-
`
|
|
149
|
+
`Database Function query validation failed for ${failures.length}/${validations.length} functions:`,
|
|
105
150
|
...failures.map((failure) => `- ${failure.functionId}: ${failure.diagnostics}`),
|
|
106
151
|
].join('\n'));
|
|
107
152
|
}
|
|
108
|
-
function dependencyFingerprint(workspace, directory, npmVersion) {
|
|
109
|
-
const hash = createHash('sha256');
|
|
110
|
-
const project = join(workspace, directory);
|
|
111
|
-
for (const filename of [
|
|
112
|
-
'package.json',
|
|
113
|
-
'package-lock.json',
|
|
114
|
-
'npm-shrinkwrap.json',
|
|
115
|
-
'.npmrc',
|
|
116
|
-
]) {
|
|
117
|
-
const path = join(project, filename);
|
|
118
|
-
hash.update(filename);
|
|
119
|
-
hash.update('\0');
|
|
120
|
-
hash.update(existsSync(path) ? readFileSync(path) : '<missing>');
|
|
121
|
-
hash.update('\0');
|
|
122
|
-
}
|
|
123
|
-
hash.update(process.version);
|
|
124
|
-
hash.update('\0');
|
|
125
|
-
hash.update(npmVersion);
|
|
126
|
-
hash.update('\0');
|
|
127
|
-
hash.update(process.platform);
|
|
128
|
-
hash.update('\0');
|
|
129
|
-
hash.update(process.arch);
|
|
130
|
-
return hash.digest('hex');
|
|
131
|
-
}
|
|
132
|
-
function dependencyStatePath(workspace, directory) {
|
|
133
|
-
return join(workspace, '.base-database-cli/state/dependencies', `${directory}.json`);
|
|
134
|
-
}
|
|
135
|
-
function readDependencyState(path) {
|
|
136
|
-
try {
|
|
137
|
-
const value = JSON.parse(readFileSync(path, 'utf8'));
|
|
138
|
-
if (isRecord(value) &&
|
|
139
|
-
typeof value.fingerprint === 'string' &&
|
|
140
|
-
typeof value.nodeVersion === 'string' &&
|
|
141
|
-
typeof value.npmVersion === 'string' &&
|
|
142
|
-
typeof value.platform === 'string' &&
|
|
143
|
-
typeof value.arch === 'string') {
|
|
144
|
-
return {
|
|
145
|
-
fingerprint: value.fingerprint,
|
|
146
|
-
nodeVersion: value.nodeVersion,
|
|
147
|
-
npmVersion: value.npmVersion,
|
|
148
|
-
platform: value.platform,
|
|
149
|
-
arch: value.arch,
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
catch {
|
|
154
|
-
// 缓存缺失或损坏时重新安装依赖。
|
|
155
|
-
}
|
|
156
|
-
return undefined;
|
|
157
|
-
}
|
|
158
|
-
function writeDependencyState(path, state) {
|
|
159
|
-
mkdirSync(dirname(path), { recursive: true });
|
|
160
|
-
const temporary = `${path}.${String(process.pid)}.tmp`;
|
|
161
|
-
writeFileSync(temporary, `${JSON.stringify(state, null, 2)}\n`);
|
|
162
|
-
renameSync(temporary, path);
|
|
163
|
-
}
|
|
164
|
-
function canReuseDependencies(workspace, directory, fingerprint, npmVersion) {
|
|
165
|
-
const state = readDependencyState(dependencyStatePath(workspace, directory));
|
|
166
|
-
return (state?.fingerprint === fingerprint &&
|
|
167
|
-
state.nodeVersion === process.version &&
|
|
168
|
-
state.npmVersion === npmVersion &&
|
|
169
|
-
state.platform === process.platform &&
|
|
170
|
-
state.arch === process.arch &&
|
|
171
|
-
existsSync(join(workspace, directory, 'node_modules')));
|
|
172
|
-
}
|
|
173
|
-
async function installDependencies(workspace, forceInstall, npm) {
|
|
174
|
-
await Promise.all(dependencyDirectories.map(async (directory) => {
|
|
175
|
-
const fingerprint = dependencyFingerprint(workspace, directory, npm.version);
|
|
176
|
-
if (!forceInstall &&
|
|
177
|
-
canReuseDependencies(workspace, directory, fingerprint, npm.version)) {
|
|
178
|
-
process.stderr.write(`Dependencies unchanged; skipping npm ci for ${directory}.\n`);
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
const statePath = dependencyStatePath(workspace, directory);
|
|
182
|
-
rmSync(statePath, { force: true });
|
|
183
|
-
process.stderr.write(`Installing ${directory} dependencies with npm@${npm.version} (Node ${process.version}).\n`);
|
|
184
|
-
try {
|
|
185
|
-
await npm.run(['ci'], { cwd: join(workspace, directory) });
|
|
186
|
-
}
|
|
187
|
-
catch (error) {
|
|
188
|
-
const diagnostics = error instanceof CommandExecutionError ? error.stderr : '';
|
|
189
|
-
const lockFailure = /EUSAGE|Invalid: lock file|Missing: .*from lock file|package\.json and .*lock.*in sync/is.test(diagnostics);
|
|
190
|
-
const hint = lockFailure
|
|
191
|
-
? lockRepairHint(directory, npm.version)
|
|
192
|
-
: `Check the npm diagnostic above for ${directory}. Fix network, registry, authentication or installer errors before retrying; do not delete the lock or bypass installation.`;
|
|
193
|
-
throw new Error(`Dependency installation failed for ${directory} using npm@${npm.version}: ${error instanceof Error ? error.message : String(error)}. ${hint}`, { cause: error });
|
|
194
|
-
}
|
|
195
|
-
if (!existsSync(join(workspace, directory, 'node_modules'))) {
|
|
196
|
-
throw new Error(`npm ci completed without creating node_modules for ${directory}`);
|
|
197
|
-
}
|
|
198
|
-
writeDependencyState(statePath, {
|
|
199
|
-
fingerprint,
|
|
200
|
-
nodeVersion: process.version,
|
|
201
|
-
npmVersion: npm.version,
|
|
202
|
-
platform: process.platform,
|
|
203
|
-
arch: process.arch,
|
|
204
|
-
});
|
|
205
|
-
}));
|
|
206
|
-
}
|
|
207
|
-
async function buildProject(workspace, env, npm) {
|
|
208
|
-
await Promise.all(['page', 'server-functions'].map((directory) => npm.run(['run', 'build'], {
|
|
209
|
-
cwd: join(workspace, directory),
|
|
210
|
-
env,
|
|
211
|
-
})));
|
|
212
|
-
}
|
|
213
153
|
function publishId(data) {
|
|
214
154
|
const value = data.publishId ?? data.publish_id;
|
|
215
155
|
if (typeof value !== 'string' || value === '') {
|
|
@@ -245,8 +185,7 @@ export async function deploymentStatus(directory, id, wait, runtimeProfile = ONL
|
|
|
245
185
|
const { env, larkProfile } = resolveLarkProfileEnvironment(await runtimeProfile.commandEnvironment(), selectedLarkProfile, config.larkProfile, runtimeProfile);
|
|
246
186
|
if (wait) {
|
|
247
187
|
const data = await waitForPublish(config.appToken, id, env);
|
|
248
|
-
const
|
|
249
|
-
const canonicalBaseAppURL = requiredBaseAppUrl(data);
|
|
188
|
+
const baseAppUrl = requiredBaseAppUrl(data);
|
|
250
189
|
const artifact = join(workspace, '.base-database-cli/state/artifacts/site.zip');
|
|
251
190
|
if (data.env === 'preview' && existsSync(artifact)) {
|
|
252
191
|
const url = staticUrl(data);
|
|
@@ -259,7 +198,7 @@ export async function deploymentStatus(directory, id, wait, runtimeProfile = ONL
|
|
|
259
198
|
appToken: config.appToken,
|
|
260
199
|
publishId: id,
|
|
261
200
|
status: data.status,
|
|
262
|
-
baseAppUrl
|
|
201
|
+
baseAppUrl,
|
|
263
202
|
};
|
|
264
203
|
}
|
|
265
204
|
const response = runLarkCli([
|
|
@@ -272,8 +211,7 @@ export async function deploymentStatus(directory, id, wait, runtimeProfile = ONL
|
|
|
272
211
|
const data = responseData(response);
|
|
273
212
|
const publish = data.publish;
|
|
274
213
|
const normalized = publish ? { ...data, ...publish } : data;
|
|
275
|
-
const
|
|
276
|
-
const canonicalBaseAppURL = publishedBaseAppUrl(normalized);
|
|
214
|
+
const baseAppUrl = publishedBaseAppUrl(normalized);
|
|
277
215
|
return {
|
|
278
216
|
ok: true,
|
|
279
217
|
environment,
|
|
@@ -281,11 +219,7 @@ export async function deploymentStatus(directory, id, wait, runtimeProfile = ONL
|
|
|
281
219
|
appToken: config.appToken,
|
|
282
220
|
publishId: id,
|
|
283
221
|
status: normalized.status,
|
|
284
|
-
...(
|
|
285
|
-
? {
|
|
286
|
-
baseAppUrl: environmentBaseAppUrl(canonicalBaseAppURL, target),
|
|
287
|
-
}
|
|
288
|
-
: {}),
|
|
222
|
+
...(baseAppUrl ? { baseAppUrl } : {}),
|
|
289
223
|
};
|
|
290
224
|
}
|
|
291
225
|
function publish(appToken, target, env) {
|
|
@@ -306,7 +240,7 @@ async function confirmProduction() {
|
|
|
306
240
|
output: process.stdout,
|
|
307
241
|
});
|
|
308
242
|
try {
|
|
309
|
-
const answer = await prompt.question('Preview
|
|
243
|
+
const answer = await prompt.question('Preview is published. Publish the same artifact to Prod? [y/N] ');
|
|
310
244
|
return /^(y|yes)$/i.test(answer.trim());
|
|
311
245
|
}
|
|
312
246
|
finally {
|
|
@@ -330,9 +264,16 @@ function staticUrl(data) {
|
|
|
330
264
|
function publishedBaseAppUrl(data) {
|
|
331
265
|
const result = publishResult(data);
|
|
332
266
|
const value = result?.baseAppUrl ?? result?.base_app_url;
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
267
|
+
if (typeof value !== 'string' || value.trim() === '')
|
|
268
|
+
return undefined;
|
|
269
|
+
const baseAppUrl = value.trim();
|
|
270
|
+
try {
|
|
271
|
+
new URL(baseAppUrl);
|
|
272
|
+
}
|
|
273
|
+
catch {
|
|
274
|
+
throw new Error(`Invalid baseAppUrl: ${baseAppUrl}`);
|
|
275
|
+
}
|
|
276
|
+
return baseAppUrl;
|
|
336
277
|
}
|
|
337
278
|
function requiredBaseAppUrl(data) {
|
|
338
279
|
const value = publishedBaseAppUrl(data);
|
|
@@ -341,20 +282,8 @@ function requiredBaseAppUrl(data) {
|
|
|
341
282
|
}
|
|
342
283
|
return value;
|
|
343
284
|
}
|
|
344
|
-
function
|
|
345
|
-
|
|
346
|
-
const url = new URL(baseAppUrl);
|
|
347
|
-
if (target === 'preview') {
|
|
348
|
-
url.searchParams.set('mode', 'edit');
|
|
349
|
-
}
|
|
350
|
-
else {
|
|
351
|
-
url.searchParams.delete('mode');
|
|
352
|
-
}
|
|
353
|
-
return url.toString();
|
|
354
|
-
}
|
|
355
|
-
catch {
|
|
356
|
-
throw new Error(`Invalid baseAppUrl: ${baseAppUrl}`);
|
|
357
|
-
}
|
|
285
|
+
function shouldSkipAIFunctionSync() {
|
|
286
|
+
return process.env.BASE_SITE_SKIP_AI_FUNCTION_SYNC === '1';
|
|
358
287
|
}
|
|
359
288
|
export async function deployProject(options, suppliedNpm) {
|
|
360
289
|
if (!options.install && options.forceInstall) {
|
|
@@ -368,38 +297,51 @@ export async function deployProject(options, suppliedNpm) {
|
|
|
368
297
|
const runtimeProfile = options.runtimeProfile ?? ONLINE_RUNTIME_PROFILE;
|
|
369
298
|
assertProjectRuntimeProfile(config.runtimeProfile, runtimeProfile);
|
|
370
299
|
const baseBinding = collectBaseBinding(config);
|
|
371
|
-
for (const directory of ['page', 'server-functions'
|
|
300
|
+
for (const directory of ['page', 'server-functions']) {
|
|
372
301
|
if (!existsSync(join(workspace, directory))) {
|
|
373
302
|
throw new Error(`Required project directory is missing: ${directory}`);
|
|
374
303
|
}
|
|
375
304
|
}
|
|
305
|
+
requireDatabaseFunctionsDirectory(workspace);
|
|
376
306
|
if (!options.production) {
|
|
377
307
|
validatePageTitle(workspace);
|
|
308
|
+
syncDatabaseFunctionInputTypes(workspace);
|
|
378
309
|
}
|
|
379
310
|
// Validate local inputs before even constructing a remote/auth environment.
|
|
380
311
|
const npm = options.production
|
|
381
312
|
? undefined
|
|
382
313
|
: (suppliedNpm ?? resolveWorkspaceNpm());
|
|
383
314
|
if (options.install && npm) {
|
|
384
|
-
|
|
385
|
-
validateDependencyLock(join(workspace, directory), directory, npm.version);
|
|
386
|
-
}
|
|
315
|
+
validateProjectDependencyLocks(workspace, npm);
|
|
387
316
|
}
|
|
317
|
+
validateSiteReadme(workspace);
|
|
388
318
|
const environment = runtimeProfile.name;
|
|
389
319
|
const { env, larkProfile } = resolveLarkProfileEnvironment(await runtimeProfile.commandEnvironment(), options.larkProfile, config.larkProfile, runtimeProfile);
|
|
390
320
|
const buildEnv = runtimeProfile.pageBuildEnvironment();
|
|
391
321
|
if (options.production) {
|
|
392
|
-
readPreviewReceiptForProduction(workspace, config.appToken, larkProfile);
|
|
322
|
+
const previewReceipt = readPreviewReceiptForProduction(workspace, config.appToken, larkProfile);
|
|
323
|
+
if (previewReceipt.workspaceInputFingerprintAlgorithm !==
|
|
324
|
+
DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM) {
|
|
325
|
+
throw new Error('The Preview artifact predates README validation; deploy a new Preview before publishing Production');
|
|
326
|
+
}
|
|
327
|
+
await validateProdEnvironmentVariables(workspace, runtimeProfile, larkProfile);
|
|
393
328
|
const confirmed = options.yes || (await confirmProduction());
|
|
394
329
|
if (!confirmed) {
|
|
395
330
|
throw new Error('Prod publishing was not confirmed; Preview remains available');
|
|
396
331
|
}
|
|
397
|
-
const
|
|
332
|
+
const confirmedPreviewReceipt = readPreviewReceiptForProduction(workspace, config.appToken, larkProfile);
|
|
333
|
+
if (confirmedPreviewReceipt.workspaceInputFingerprintAlgorithm !==
|
|
334
|
+
DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM) {
|
|
335
|
+
throw new Error('The Preview artifact predates README validation; deploy a new Preview before publishing Production');
|
|
336
|
+
}
|
|
398
337
|
syncBaseBinding(config.appToken, baseBinding, env);
|
|
338
|
+
if (!shouldSkipAIFunctionSync()) {
|
|
339
|
+
// 本地存在 AI Function 声明时,随发布走全量覆盖同步。
|
|
340
|
+
syncAIFunctionsForDeploy(config.appToken, collectLocalAIFunctions(workspace), env, workspace);
|
|
341
|
+
}
|
|
399
342
|
const productionId = publish(config.appToken, 'prod', env);
|
|
400
343
|
const productionStatus = await waitForPublish(config.appToken, productionId, env);
|
|
401
|
-
const
|
|
402
|
-
const productionBaseAppURL = environmentBaseAppUrl(canonicalBaseAppURL, 'prod');
|
|
344
|
+
const productionBaseAppURL = requiredBaseAppUrl(productionStatus);
|
|
403
345
|
return {
|
|
404
346
|
ok: true,
|
|
405
347
|
environment,
|
|
@@ -407,28 +349,34 @@ export async function deployProject(options, suppliedNpm) {
|
|
|
407
349
|
appToken: config.appToken,
|
|
408
350
|
baseAppUrl: productionBaseAppURL,
|
|
409
351
|
publishId: productionId,
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
agentGuide: deploymentAgentGuide(config.appToken, 'prod', {
|
|
414
|
-
workspace,
|
|
415
|
-
profile: runtimeProfile,
|
|
416
|
-
larkProfile,
|
|
417
|
-
}),
|
|
352
|
+
// Production promotes the server-selected latest Preview, which may belong to
|
|
353
|
+
// another user. The local Preview receipt is only an eligibility guard and
|
|
354
|
+
// cannot truthfully describe the promoted Production artifact.
|
|
418
355
|
};
|
|
419
356
|
}
|
|
420
|
-
const
|
|
421
|
-
|
|
422
|
-
|
|
357
|
+
const policyResponse = runLarkCli([
|
|
358
|
+
'api',
|
|
359
|
+
'GET',
|
|
360
|
+
`/open-apis/base/v3/sites/${encodeURIComponent(config.appToken)}/get`,
|
|
361
|
+
'--params',
|
|
362
|
+
JSON.stringify({ withDependencyPolicy: true }),
|
|
363
|
+
], env, workspace);
|
|
364
|
+
const policy = parsePackageDependencyPolicy(responseData(policyResponse).dependencyPolicy);
|
|
365
|
+
validateWorkspacePackageDependencies(workspace, policy);
|
|
423
366
|
if (!npm)
|
|
424
367
|
throw new Error('Preview npm toolchain was not initialized');
|
|
368
|
+
const metadata = prepareDatabaseMetadata(workspace);
|
|
369
|
+
await validatePreviewEnvironmentVariableDeclarations(workspace, runtimeProfile, larkProfile);
|
|
370
|
+
syncBaseBinding(config.appToken, baseBinding, env);
|
|
371
|
+
validateDatabaseFunctions(workspace, config.appToken, metadata.sqlValidation, env);
|
|
425
372
|
if (options.install) {
|
|
426
373
|
await installDependencies(workspace, options.forceInstall ?? false, npm);
|
|
427
374
|
}
|
|
428
|
-
const workspaceInputBeforeBuild =
|
|
375
|
+
const workspaceInputBeforeBuild = deploymentInputFingerprint(workspace);
|
|
429
376
|
await buildProject(workspace, buildEnv, npm);
|
|
377
|
+
validateWorkspacePackageDependencies(workspace, policy);
|
|
430
378
|
const artifact = await archiveDatabase(workspace, metadata);
|
|
431
|
-
const workspaceInputAfterBuild =
|
|
379
|
+
const workspaceInputAfterBuild = deploymentInputFingerprint(workspace);
|
|
432
380
|
if (workspaceInputAfterBuild.sha256 !== workspaceInputBeforeBuild.sha256) {
|
|
433
381
|
throw new Error('The application workspace changed while building Preview; run `deploy` again');
|
|
434
382
|
}
|
|
@@ -440,6 +388,10 @@ export async function deployProject(options, suppliedNpm) {
|
|
|
440
388
|
'--data',
|
|
441
389
|
`@${relative(workspace, artifact.metaList)}`,
|
|
442
390
|
], env, workspace);
|
|
391
|
+
if (!shouldSkipAIFunctionSync()) {
|
|
392
|
+
// update_functions 只接受 Database Function/FaaS Function;本地存在 AI Function 声明时另行同步。
|
|
393
|
+
syncAIFunctionsForDeploy(config.appToken, collectLocalAIFunctions(workspace), env, workspace);
|
|
394
|
+
}
|
|
443
395
|
runLarkCli([
|
|
444
396
|
'api',
|
|
445
397
|
'POST',
|
|
@@ -452,13 +404,13 @@ export async function deployProject(options, suppliedNpm) {
|
|
|
452
404
|
if (!existsSync(remoteSource) || statSync(remoteSource).size === 0) {
|
|
453
405
|
throw new Error('Artifact upload succeeded but source_code returned no file');
|
|
454
406
|
}
|
|
407
|
+
await validatePreviewEnvironmentVariableValues(workspace, runtimeProfile, larkProfile);
|
|
455
408
|
const previewId = publish(config.appToken, 'preview', env);
|
|
456
409
|
const pendingPreview = previewArtifact(config.appToken, artifact.archive, previewId, larkProfile);
|
|
457
410
|
writePendingPreviewReceipt(workspace, pendingPreview, workspaceInputAfterBuild);
|
|
458
411
|
const previewStatus = await waitForPublish(config.appToken, previewId, env);
|
|
459
412
|
const previewStaticUrl = staticUrl(previewStatus);
|
|
460
|
-
const
|
|
461
|
-
const previewBaseAppURL = environmentBaseAppUrl(canonicalBaseAppURL, 'preview');
|
|
413
|
+
const previewBaseAppURL = requiredBaseAppUrl(previewStatus);
|
|
462
414
|
const receipt = finalizePreviewReceipt(workspace, config.appToken, previewId, previewStaticUrl, larkProfile);
|
|
463
415
|
const result = {
|
|
464
416
|
ok: true,
|
|
@@ -470,12 +422,7 @@ export async function deployProject(options, suppliedNpm) {
|
|
|
470
422
|
artifact: artifact.displayArchive,
|
|
471
423
|
bytes: receipt.bytes,
|
|
472
424
|
sha256: receipt.sha256,
|
|
473
|
-
|
|
474
|
-
workspace,
|
|
475
|
-
profile: runtimeProfile,
|
|
476
|
-
larkProfile,
|
|
477
|
-
}),
|
|
478
|
-
nextAction: '先完成本次约定的 Preview 示例数据回读、通知收尾和 Skill 安装结果说明,再交付 baseAppUrl 等待用户体验。“部署正式版”是针对同一制品确认的示例;未经确认不发布 Prod,也不因安装 Skill 额外调用正式版业务能力。',
|
|
425
|
+
nextAction: 'Complete the agreed Preview sample-data readback and notification follow-up before sharing baseAppUrl for user review. Publishing to Prod requires confirmation for this same artifact. Preview publication does not authorize production Function calls.',
|
|
479
426
|
};
|
|
480
427
|
return result;
|
|
481
428
|
}
|
package/dist/deploy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type RuntimeProfile } from './environment.js';
|
|
2
|
+
export declare const ENVIRONMENT_VARIABLE_TARGETS: readonly ['preview', 'prod'];
|
|
3
|
+
export declare const ENVIRONMENT_VARIABLE_TYPES: readonly ['config', 'secret'];
|
|
4
|
+
export type EnvironmentVariableTarget = (typeof ENVIRONMENT_VARIABLE_TARGETS)[number];
|
|
5
|
+
export type EnvironmentVariableType = (typeof ENVIRONMENT_VARIABLE_TYPES)[number];
|
|
6
|
+
export interface EnvironmentVariableView {
|
|
7
|
+
name: string;
|
|
8
|
+
type: EnvironmentVariableType;
|
|
9
|
+
description: string;
|
|
10
|
+
required: boolean;
|
|
11
|
+
configured: boolean;
|
|
12
|
+
configValue?: string;
|
|
13
|
+
secretMask?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface EnvironmentVariablesView {
|
|
16
|
+
target: EnvironmentVariableTarget;
|
|
17
|
+
revision: number;
|
|
18
|
+
variables: EnvironmentVariableView[];
|
|
19
|
+
missingRequiredVariables: string[];
|
|
20
|
+
changed: boolean;
|
|
21
|
+
}
|
|
22
|
+
interface EnvironmentVariableCommandOptions {
|
|
23
|
+
directory: string;
|
|
24
|
+
target: EnvironmentVariableTarget;
|
|
25
|
+
runtimeProfile?: RuntimeProfile;
|
|
26
|
+
larkProfile?: string;
|
|
27
|
+
}
|
|
28
|
+
export interface DeclareEnvironmentVariableOptions extends EnvironmentVariableCommandOptions {
|
|
29
|
+
name: string;
|
|
30
|
+
type: EnvironmentVariableType;
|
|
31
|
+
description: string;
|
|
32
|
+
required: boolean;
|
|
33
|
+
force?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface SetEnvironmentVariableOptions extends EnvironmentVariableCommandOptions {
|
|
36
|
+
name: string;
|
|
37
|
+
value: string;
|
|
38
|
+
}
|
|
39
|
+
export interface ClearEnvironmentVariableOptions extends EnvironmentVariableCommandOptions {
|
|
40
|
+
name: string;
|
|
41
|
+
}
|
|
42
|
+
export declare function listEnvironmentVariables(options: EnvironmentVariableCommandOptions): Promise<EnvironmentVariablesView>;
|
|
43
|
+
export declare function declareEnvironmentVariable(options: DeclareEnvironmentVariableOptions): Promise<EnvironmentVariablesView>;
|
|
44
|
+
export declare function setEnvironmentVariable(options: SetEnvironmentVariableOptions): Promise<EnvironmentVariablesView>;
|
|
45
|
+
export declare function clearEnvironmentVariable(options: ClearEnvironmentVariableOptions): Promise<EnvironmentVariablesView>;
|
|
46
|
+
export declare function scanEnvironmentVariableReferences(workspace: string): string[];
|
|
47
|
+
export declare function validatePreviewEnvironmentVariableDeclarations(workspace: string, profile: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
48
|
+
export declare function validatePreviewEnvironmentVariableValues(workspace: string, profile: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
49
|
+
export declare function validateProdEnvironmentVariables(workspace: string, profile: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
50
|
+
export declare function isReservedEnvironmentVariable(name: string): boolean;
|
|
51
|
+
export {};
|
|
52
|
+
//# sourceMappingURL=environment-variables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-variables.d.ts","sourceRoot":"","sources":["../src/environment-variables.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAS1B,eAAO,MAAM,4BAA4B,YAAI,SAAS,EAAE,MAAM,CAAU,CAAC;AACzE,eAAO,MAAM,0BAA0B,YAAI,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAExE,MAAM,MAAM,yBAAyB,GACnC,CAAC,OAAO,4BAA4B,CAAC,CAAC,MAAM,CAAC,CAAC;AAChD,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,uBAAuB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,yBAAyB,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,uBAAuB,EAAE,CAAC;IACrC,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,iCAAiC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,yBAAyB,CAAC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iCACf,SAAQ,iCAAiC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,uBAAuB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,6BACf,SAAQ,iCAAiC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,+BACf,SAAQ,iCAAiC;IACzC,IAAI,EAAE,MAAM,CAAC;CACd;AAoQD,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,wBAAwB,CAAC,CAQnC;AAwBD,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,wBAAwB,CAAC,CAqCnC;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,wBAAwB,CAAC,CAkCnC;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,wBAAwB,CAAC,CAenC;AAyRD,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAqB7E;AAED,wBAAsB,8CAA8C,CAClE,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,wCAAwC,CAC5D,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,gCAAgC,CACpD,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOnE"}
|