@lark-base-open/base-database-cli 1.1.0 → 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 +86 -0
- package/LICENSE +6 -0
- package/README.md +55 -31
- 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 +8 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +60 -6
- 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 +886 -243
- 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 +2 -1
- package/dist/lark-cli.d.ts.map +1 -1
- package/dist/lark-cli.js +292 -29
- 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 +241 -42
- 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 +70 -53
- 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 +54 -27
- package/skills/lark-base-database/references/style-guide.md +10 -67
- package/skills/lark-base-database/references/verification.md +17 -13
- package/skills/lark-base-database/references/workspace.md +71 -22
- 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 -151
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-functions.js","sourceRoot":"","sources":["../src/ai-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/archive.d.ts
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
interface MetaItem {
|
|
2
|
+
functionId: string;
|
|
3
|
+
functionType: 1 | 2 | 5;
|
|
4
|
+
name: string;
|
|
5
|
+
description: string;
|
|
6
|
+
sourceCode: string;
|
|
7
|
+
}
|
|
8
|
+
export interface DatabaseFunctionInputContract {
|
|
9
|
+
functionId: string;
|
|
10
|
+
functionType: MetaItem['functionType'];
|
|
11
|
+
inputSchema: Record<string, unknown>;
|
|
12
|
+
}
|
|
1
13
|
export interface SQLValidationArtifact {
|
|
2
14
|
functionId: string;
|
|
3
15
|
path: string;
|
|
@@ -6,6 +18,14 @@ export interface DatabaseMetadataArtifacts {
|
|
|
6
18
|
metaList: string;
|
|
7
19
|
sqlValidation: SQLValidationArtifact[];
|
|
8
20
|
}
|
|
21
|
+
/** Read the validated Function input contracts used by Page type generation. */
|
|
22
|
+
export declare function readDatabaseFunctionInputContracts(workspace: string): DatabaseFunctionInputContract[];
|
|
23
|
+
/** Validate Function contracts without changing metadata or publish artifacts. */
|
|
24
|
+
export declare function validateDatabaseMetadata(workspace: string): {
|
|
25
|
+
sql: number;
|
|
26
|
+
faas: number;
|
|
27
|
+
mutation: number;
|
|
28
|
+
};
|
|
9
29
|
export declare function prepareDatabaseMetadata(workspace: string): DatabaseMetadataArtifacts;
|
|
10
30
|
export declare function archiveDatabase(workspace: string, metadata?: DatabaseMetadataArtifacts): Promise<{
|
|
11
31
|
archive: string;
|
|
@@ -13,4 +33,5 @@ export declare function archiveDatabase(workspace: string, metadata?: DatabaseMe
|
|
|
13
33
|
sqlValidation: SQLValidationArtifact[];
|
|
14
34
|
displayArchive: string;
|
|
15
35
|
}>;
|
|
36
|
+
export {};
|
|
16
37
|
//# sourceMappingURL=archive.d.ts.map
|
package/dist/archive.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AA4BA,UAAU,QAAQ;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAqID,gFAAgF;AAChF,wBAAgB,kCAAkC,CAChD,SAAS,EAAE,MAAM,GAChB,6BAA6B,EAAE,CAcjC;AAED,kFAAkF;AAClF,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM;IAGtD,GAAG;IACH,IAAI;IACJ,QAAQ;EAEX;AA+ED,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,GAChB,yBAAyB,CAK3B;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,yBAA8D;;;;;GAazE"}
|
package/dist/archive.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { createWriteStream, existsSync, mkdirSync, readdirSync, readFileSync, rmSync, statSync, writeFileSync, } from 'node:fs';
|
|
1
|
+
import { createWriteStream, existsSync, lstatSync, mkdirSync, readdirSync, readFileSync, rmSync, statSync, writeFileSync, } from 'node:fs';
|
|
2
2
|
import { basename, dirname, join, relative, resolve } from 'node:path';
|
|
3
3
|
import { ZipArchive } from 'archiver';
|
|
4
|
+
import { readMutationMetaItem } from './mutation.js';
|
|
4
5
|
import { deriveSQLInputSchema, normalizeFunctionInputSchema, } from './function-schema.js';
|
|
6
|
+
import { DATABASE_FUNCTIONS_DIRECTORY, requireDatabaseFunctionsDirectory, } from './project-layout.js';
|
|
5
7
|
const FUNCTION_ID_PATTERN = /^[A-Za-z0-9_-]+$/;
|
|
6
8
|
const MAX_FUNCTIONS = 200;
|
|
7
9
|
function findMetaFiles(directory) {
|
|
@@ -38,20 +40,20 @@ function readMetaItem(type, path) {
|
|
|
38
40
|
};
|
|
39
41
|
if (type === 'sql') {
|
|
40
42
|
if (manifest.inputSchema !== undefined) {
|
|
41
|
-
throw new Error(`
|
|
43
|
+
throw new Error(`Database Function inputSchema is derived from meta.params and must not be set: ${path}`);
|
|
42
44
|
}
|
|
43
45
|
let meta = manifest.meta;
|
|
44
46
|
if (meta === undefined) {
|
|
45
47
|
meta = { params: [] };
|
|
46
48
|
}
|
|
47
49
|
else if (!meta || typeof meta !== 'object' || Array.isArray(meta)) {
|
|
48
|
-
throw new Error(`
|
|
50
|
+
throw new Error(`Database Function meta must be an object: ${path}`);
|
|
49
51
|
}
|
|
50
52
|
else if (!Object.hasOwn(meta, 'params')) {
|
|
51
53
|
meta = { ...meta, params: [] };
|
|
52
54
|
}
|
|
53
55
|
else if (!Array.isArray(meta.params)) {
|
|
54
|
-
throw new Error(`
|
|
56
|
+
throw new Error(`Database Function meta.params must be an array: ${path}`);
|
|
55
57
|
}
|
|
56
58
|
const sql = readFileSync(join(dirname(path), 'main.sql'), 'utf8');
|
|
57
59
|
item.sourceCode = JSON.stringify({
|
|
@@ -70,13 +72,28 @@ function readMetaItem(type, path) {
|
|
|
70
72
|
}
|
|
71
73
|
return item;
|
|
72
74
|
}
|
|
73
|
-
function
|
|
75
|
+
function readMetadata(workspace) {
|
|
76
|
+
const databaseFunctions = requireDatabaseFunctionsDirectory(workspace);
|
|
77
|
+
const mutationRoot = join(workspace, 'mutations');
|
|
78
|
+
if (existsSync(mutationRoot)) {
|
|
79
|
+
for (const entry of readdirSync(mutationRoot, { withFileTypes: true })) {
|
|
80
|
+
if (entry.isDirectory() &&
|
|
81
|
+
(!existsSync(join(mutationRoot, entry.name, 'meta.json')) ||
|
|
82
|
+
!existsSync(join(mutationRoot, entry.name, 'spec.json')))) {
|
|
83
|
+
throw new Error(`Mutation requires meta.json and spec.json: ${entry.name}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
74
87
|
const files = [
|
|
88
|
+
...findMetaFiles(mutationRoot).map((path) => ({
|
|
89
|
+
type: 'mutation',
|
|
90
|
+
path,
|
|
91
|
+
})),
|
|
75
92
|
...findMetaFiles(join(workspace, 'server-functions/functions')).map((path) => ({
|
|
76
93
|
type: 'faas',
|
|
77
94
|
path,
|
|
78
95
|
})),
|
|
79
|
-
...findMetaFiles(join(workspace,
|
|
96
|
+
...findMetaFiles(join(workspace, databaseFunctions)).map((path) => ({
|
|
80
97
|
type: 'sql',
|
|
81
98
|
path,
|
|
82
99
|
})),
|
|
@@ -86,13 +103,39 @@ function writeMetadata(workspace, output) {
|
|
|
86
103
|
}
|
|
87
104
|
const ids = new Set();
|
|
88
105
|
const items = files.map(({ type, path }) => {
|
|
89
|
-
const item =
|
|
106
|
+
const item = type === 'mutation'
|
|
107
|
+
? readMutationMetaItem(path, workspace)
|
|
108
|
+
: readMetaItem(type, path);
|
|
90
109
|
if (ids.has(item.functionId)) {
|
|
91
110
|
throw new Error(`Duplicate Function ID: ${item.functionId}`);
|
|
92
111
|
}
|
|
93
112
|
ids.add(item.functionId);
|
|
94
113
|
return item;
|
|
95
114
|
});
|
|
115
|
+
return items;
|
|
116
|
+
}
|
|
117
|
+
/** Read the validated Function input contracts used by Page type generation. */
|
|
118
|
+
export function readDatabaseFunctionInputContracts(workspace) {
|
|
119
|
+
return readMetadata(databaseProject(workspace)).map((item) => ({
|
|
120
|
+
functionId: item.functionId,
|
|
121
|
+
functionType: item.functionType,
|
|
122
|
+
// Mutation uses spec.params rather than discovery inputSchema; keep its local call input as an array.
|
|
123
|
+
inputSchema: item.functionType === 5
|
|
124
|
+
? { type: 'array' }
|
|
125
|
+
: JSON.parse(item.sourceCode).inputSchema,
|
|
126
|
+
}));
|
|
127
|
+
}
|
|
128
|
+
/** Validate Function contracts without changing metadata or publish artifacts. */
|
|
129
|
+
export function validateDatabaseMetadata(workspace) {
|
|
130
|
+
const items = readMetadata(databaseProject(workspace));
|
|
131
|
+
return {
|
|
132
|
+
sql: items.filter((item) => item.functionType === 1).length,
|
|
133
|
+
faas: items.filter((item) => item.functionType === 2).length,
|
|
134
|
+
mutation: items.filter((item) => item.functionType === 5).length,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function writeMetadata(workspace, output) {
|
|
138
|
+
const items = readMetadata(workspace);
|
|
96
139
|
const validations = join(output, 'sql-validation');
|
|
97
140
|
mkdirSync(output, { recursive: true });
|
|
98
141
|
rmSync(validations, { recursive: true, force: true });
|
|
@@ -109,6 +152,11 @@ function writeMetadata(workspace, output) {
|
|
|
109
152
|
return { metaList, sqlValidation };
|
|
110
153
|
}
|
|
111
154
|
function createArchive(workspace, destination) {
|
|
155
|
+
const readme = join(workspace, 'README.md');
|
|
156
|
+
const readmeMetadata = lstatSync(readme, { throwIfNoEntry: false });
|
|
157
|
+
if (readmeMetadata && !readmeMetadata.isFile()) {
|
|
158
|
+
return Promise.reject(new Error('Project README.md must be a regular file'));
|
|
159
|
+
}
|
|
112
160
|
return new Promise((resolvePromise, reject) => {
|
|
113
161
|
const output = createWriteStream(destination);
|
|
114
162
|
const zip = new ZipArchive({ zlib: { level: 9 } });
|
|
@@ -117,7 +165,7 @@ function createArchive(workspace, destination) {
|
|
|
117
165
|
zip.once('warning', reject);
|
|
118
166
|
zip.once('error', reject);
|
|
119
167
|
zip.pipe(output);
|
|
120
|
-
|
|
168
|
+
const globOptions = {
|
|
121
169
|
cwd: workspace,
|
|
122
170
|
dot: true,
|
|
123
171
|
ignore: [
|
|
@@ -127,17 +175,24 @@ function createArchive(workspace, destination) {
|
|
|
127
175
|
'**/.env',
|
|
128
176
|
'**/.env.*',
|
|
129
177
|
],
|
|
130
|
-
}
|
|
178
|
+
};
|
|
179
|
+
zip.glob('{page,server-functions,mutations}/**/*', globOptions);
|
|
180
|
+
const databaseFunctions = requireDatabaseFunctionsDirectory(workspace);
|
|
181
|
+
zip.glob('**/*', { ...globOptions, cwd: join(workspace, databaseFunctions) }, { prefix: DATABASE_FUNCTIONS_DIRECTORY });
|
|
182
|
+
if (readmeMetadata) {
|
|
183
|
+
zip.file(readme, { name: 'README.md' });
|
|
184
|
+
}
|
|
131
185
|
void zip.finalize();
|
|
132
186
|
});
|
|
133
187
|
}
|
|
134
188
|
function databaseProject(workspace) {
|
|
135
189
|
const project = resolve(workspace);
|
|
136
|
-
for (const directory of ['page', 'server-functions'
|
|
190
|
+
for (const directory of ['page', 'server-functions']) {
|
|
137
191
|
if (!existsSync(join(project, directory))) {
|
|
138
192
|
throw new Error(`application source not found: ${join(project, directory)}`);
|
|
139
193
|
}
|
|
140
194
|
}
|
|
195
|
+
requireDatabaseFunctionsDirectory(project);
|
|
141
196
|
return project;
|
|
142
197
|
}
|
|
143
198
|
export function prepareDatabaseMetadata(workspace) {
|
package/dist/archive.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
import { type RuntimeProfile } from './environment.js';
|
|
2
2
|
import { runCommand } from './process.js';
|
|
3
|
+
import type { CommandResult } from './types.js';
|
|
4
|
+
export declare const APPMODE_SCOPES: readonly ['base:appmode:read', 'base:appmode:create', 'base:appmode:update'];
|
|
3
5
|
export declare function ensureConfiguration(env: NodeJS.ProcessEnv, runner?: typeof runCommand): void;
|
|
4
6
|
export declare function login(profile?: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
5
7
|
export declare function logout(profile?: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
6
|
-
export declare function whoami(profile?: RuntimeProfile, larkProfile?: string): Promise<
|
|
8
|
+
export declare function whoami(profile?: RuntimeProfile, larkProfile?: string): Promise<CommandResult>;
|
|
7
9
|
export declare function doctor(profile?: RuntimeProfile, selectedLarkProfile?: string): Promise<{
|
|
8
10
|
ok: true;
|
|
9
11
|
environment: string;
|
|
10
12
|
larkProfile?: string | undefined;
|
|
11
13
|
node: string;
|
|
14
|
+
userScopes: {
|
|
15
|
+
status: string;
|
|
16
|
+
required: readonly ["base:appmode:read", "base:appmode:create", "base:appmode:update"];
|
|
17
|
+
};
|
|
12
18
|
user: {
|
|
13
19
|
status: unknown;
|
|
14
20
|
available: unknown;
|
|
15
21
|
verified: unknown;
|
|
22
|
+
source?: {} | undefined;
|
|
16
23
|
};
|
|
17
24
|
}>;
|
|
18
25
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA8ChD,eAAO,MAAM,cAAc,YACzB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,CACb,CAAC;AAOX,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,MAAM,oBAAa,GAClB,IAAI,CAaN;AAED,wBAAsB,KAAK,CACzB,OAAO,GAAE,cAAuC,EAChD,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED,wBAAsB,MAAM,CAC1B,OAAO,GAAE,cAAuC,EAChD,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAsB,MAAM,CAC1B,OAAO,GAAE,cAAuC,EAChD,WAAW,CAAC,EAAE,MAAM,0BASrB;AAED,wBAAsB,MAAM,CAC1B,OAAO,GAAE,cAAuC,EAChD,mBAAmB,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;GA4D7B"}
|
package/dist/auth.js
CHANGED
|
@@ -1,14 +1,49 @@
|
|
|
1
1
|
import { existsSync } from 'node:fs';
|
|
2
2
|
import { CONFIG_FILE_NAME, readConfig } from './config.js';
|
|
3
3
|
import { assertProjectRuntimeProfile, ONLINE_RUNTIME_PROFILE, } from './environment.js';
|
|
4
|
-
import { resolveLarkCliExecutable, runLarkCli, selectLarkProfileEnvironment, resolveLarkProfileEnvironment, } from './lark-cli.js';
|
|
4
|
+
import { resolveLarkCliExecutable, runLarkCli, selectLarkProfileEnvironment, resolveLarkProfileEnvironment, isMissingLarkCommand, responseData, } from './lark-cli.js';
|
|
5
5
|
import { runCommand } from './process.js';
|
|
6
|
+
function verifiedUserIdentity(env) {
|
|
7
|
+
try {
|
|
8
|
+
return runLarkCli(['auth', 'status', '--verify'], env);
|
|
9
|
+
}
|
|
10
|
+
catch (error) {
|
|
11
|
+
if (!isMissingLarkCommand(error, 'auth'))
|
|
12
|
+
throw error;
|
|
13
|
+
}
|
|
14
|
+
const response = runLarkCli(['api', 'GET', '/open-apis/authen/v1/user_info'], env);
|
|
15
|
+
const user = responseData(response);
|
|
16
|
+
if ((user.code !== undefined && user.code !== 0) ||
|
|
17
|
+
typeof user.open_id !== 'string' ||
|
|
18
|
+
!user.open_id.trim()) {
|
|
19
|
+
throw new Error('Current-user API did not return a verified user identity');
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
ok: true,
|
|
23
|
+
data: {
|
|
24
|
+
identities: {
|
|
25
|
+
user: {
|
|
26
|
+
status: 'active',
|
|
27
|
+
available: true,
|
|
28
|
+
verified: true,
|
|
29
|
+
source: 'user_info',
|
|
30
|
+
open_id: user.open_id,
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
6
36
|
async function authEnvironment(profile, larkProfile) {
|
|
7
37
|
const config = existsSync(CONFIG_FILE_NAME) ? readConfig() : undefined;
|
|
8
38
|
if (config)
|
|
9
39
|
assertProjectRuntimeProfile(config.runtimeProfile, profile);
|
|
10
40
|
return selectLarkProfileEnvironment(await profile.commandEnvironment(), larkProfile, config?.larkProfile);
|
|
11
41
|
}
|
|
42
|
+
export const APPMODE_SCOPES = [
|
|
43
|
+
'base:appmode:read',
|
|
44
|
+
'base:appmode:create',
|
|
45
|
+
'base:appmode:update',
|
|
46
|
+
];
|
|
12
47
|
function isNotConfigured(error) {
|
|
13
48
|
const message = error instanceof Error ? error.message : String(error);
|
|
14
49
|
return /"subtype"\s*:\s*"not_configured"/.test(message);
|
|
@@ -32,7 +67,7 @@ export async function login(profile = ONLINE_RUNTIME_PROFILE, larkProfile) {
|
|
|
32
67
|
const selected = await authEnvironment(profile, larkProfile);
|
|
33
68
|
ensureConfiguration(selected);
|
|
34
69
|
const { env } = resolveLarkProfileEnvironment(selected, undefined, undefined, profile);
|
|
35
|
-
runCommand(resolveLarkCliExecutable(env), ['auth', 'login', '--domain', 'base'], { env });
|
|
70
|
+
runCommand(resolveLarkCliExecutable(env), ['auth', 'login', '--domain', 'base', '--scope', APPMODE_SCOPES.join(',')], { env });
|
|
36
71
|
}
|
|
37
72
|
export async function logout(profile = ONLINE_RUNTIME_PROFILE, larkProfile) {
|
|
38
73
|
const { env } = resolveLarkProfileEnvironment(await authEnvironment(profile, larkProfile), undefined, undefined, profile);
|
|
@@ -40,14 +75,30 @@ export async function logout(profile = ONLINE_RUNTIME_PROFILE, larkProfile) {
|
|
|
40
75
|
}
|
|
41
76
|
export async function whoami(profile = ONLINE_RUNTIME_PROFILE, larkProfile) {
|
|
42
77
|
const { env } = resolveLarkProfileEnvironment(await authEnvironment(profile, larkProfile), undefined, undefined, profile);
|
|
43
|
-
return
|
|
78
|
+
return verifiedUserIdentity(env);
|
|
44
79
|
}
|
|
45
80
|
export async function doctor(profile = ONLINE_RUNTIME_PROFILE, selectedLarkProfile) {
|
|
46
81
|
const major = Number(process.versions.node.split('.')[0]);
|
|
47
82
|
if (major < 20)
|
|
48
83
|
throw new Error('Node.js 20 or newer is required');
|
|
49
84
|
const { env, larkProfile } = resolveLarkProfileEnvironment(await authEnvironment(profile, selectedLarkProfile), undefined, undefined, profile);
|
|
50
|
-
const identity =
|
|
85
|
+
const identity = verifiedUserIdentity(env);
|
|
86
|
+
const identityData = identity.data;
|
|
87
|
+
const user = identityData?.identities?.user;
|
|
88
|
+
const managed = Boolean(env.BASE_SITE_BUILDER_WORKSPACE_SOURCE ||
|
|
89
|
+
env.BASE_SITE_BUILDER_LARK_CLI_PROXY ||
|
|
90
|
+
env.LARKSUITE_CLI_AUTH_PROXY ||
|
|
91
|
+
user?.source === 'user_info');
|
|
92
|
+
// Reuse verified auth status; do not add a permission probe to business commands.
|
|
93
|
+
const granted = !managed && typeof user?.scope === 'string'
|
|
94
|
+
? new Set(user.scope.split(/\s+/).filter(Boolean))
|
|
95
|
+
: undefined;
|
|
96
|
+
if (granted) {
|
|
97
|
+
const missing = APPMODE_SCOPES.filter((scope) => !granted.has(scope));
|
|
98
|
+
if (missing.length) {
|
|
99
|
+
throw new Error(`missing_scopes: ${missing.join(', ')}. Run auth login with the same CLI, environment and profile to authorize these user scopes.`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
51
102
|
runLarkCli([
|
|
52
103
|
'api',
|
|
53
104
|
'GET',
|
|
@@ -55,17 +106,20 @@ export async function doctor(profile = ONLINE_RUNTIME_PROFILE, selectedLarkProfi
|
|
|
55
106
|
'--params',
|
|
56
107
|
'{"pageSize":1}',
|
|
57
108
|
], env);
|
|
58
|
-
const identityData = identity.data;
|
|
59
|
-
const user = identityData?.identities?.user;
|
|
60
109
|
return {
|
|
61
110
|
ok: true,
|
|
62
111
|
environment: profile.name,
|
|
63
112
|
...(larkProfile ? { larkProfile } : {}),
|
|
64
113
|
node: process.version,
|
|
114
|
+
userScopes: {
|
|
115
|
+
status: managed ? 'host_managed' : granted ? 'verified' : 'unavailable',
|
|
116
|
+
required: APPMODE_SCOPES,
|
|
117
|
+
},
|
|
65
118
|
user: {
|
|
66
119
|
status: user?.status,
|
|
67
120
|
available: user?.available,
|
|
68
121
|
verified: user?.verified,
|
|
122
|
+
...(user?.source ? { source: user.source } : {}),
|
|
69
123
|
},
|
|
70
124
|
};
|
|
71
125
|
}
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,GAEvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,UAAU,EACV,4BAA4B,EAC5B,6BAA6B,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/check.d.ts
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { type RuntimeProfile } from './environment.js';
|
|
2
|
+
import { type WorkspaceNpm } from './npm.js';
|
|
3
|
+
export interface CheckOptions {
|
|
4
|
+
directory: string;
|
|
5
|
+
install: boolean;
|
|
6
|
+
forceInstall?: boolean;
|
|
7
|
+
forceBuild?: boolean;
|
|
8
|
+
json?: boolean;
|
|
9
|
+
runtimeProfile?: RuntimeProfile;
|
|
10
|
+
}
|
|
11
|
+
type CheckStage = 'options' | 'project' | 'function_metadata' | 'dependencies' | 'page_build' | 'faas_build' | 'build';
|
|
12
|
+
type CheckStatus = 'not_run' | 'passed' | 'failed';
|
|
13
|
+
type CheckCacheStatus = 'not_run' | 'hit' | 'miss';
|
|
14
|
+
interface CheckStatuses {
|
|
15
|
+
project: CheckStatus;
|
|
16
|
+
functionMetadata: CheckStatus;
|
|
17
|
+
dependencies: CheckStatus;
|
|
18
|
+
pageBuild: CheckStatus;
|
|
19
|
+
faasBuild: CheckStatus;
|
|
20
|
+
}
|
|
21
|
+
interface CheckCacheStatuses {
|
|
22
|
+
pageBuild: CheckCacheStatus;
|
|
23
|
+
faasBuild: CheckCacheStatus;
|
|
24
|
+
}
|
|
25
|
+
interface CheckDiagnostic {
|
|
26
|
+
target: 'page' | 'faas';
|
|
27
|
+
message: string;
|
|
28
|
+
output?: string;
|
|
29
|
+
file?: string;
|
|
30
|
+
line?: number;
|
|
31
|
+
column?: number;
|
|
32
|
+
code?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface CheckFailureReport {
|
|
35
|
+
schemaVersion: 2;
|
|
36
|
+
ok: false;
|
|
37
|
+
scope: 'local';
|
|
38
|
+
workspace: string;
|
|
39
|
+
environment: string;
|
|
40
|
+
checks: CheckStatuses;
|
|
41
|
+
cache: CheckCacheStatuses;
|
|
42
|
+
error: {
|
|
43
|
+
code: string;
|
|
44
|
+
stage: CheckStage;
|
|
45
|
+
message: string;
|
|
46
|
+
retryable: false;
|
|
47
|
+
diagnostics?: CheckDiagnostic[];
|
|
48
|
+
};
|
|
49
|
+
nextActions: string[];
|
|
50
|
+
}
|
|
51
|
+
export declare class CheckFailureError extends Error {
|
|
52
|
+
readonly report: CheckFailureReport;
|
|
53
|
+
constructor(report: CheckFailureReport, options?: ErrorOptions);
|
|
54
|
+
}
|
|
55
|
+
export declare function checkProject(options: CheckOptions, suppliedNpm?: WorkspaceNpm): Promise<{
|
|
56
|
+
schemaVersion: 2;
|
|
57
|
+
ok: true;
|
|
58
|
+
scope: 'local';
|
|
59
|
+
workspace: string;
|
|
60
|
+
environment: string;
|
|
61
|
+
functions: {
|
|
62
|
+
'database-functions': number;
|
|
63
|
+
'mutation-functions': number;
|
|
64
|
+
'server-functions': number;
|
|
65
|
+
};
|
|
66
|
+
checks: CheckStatuses;
|
|
67
|
+
cache: CheckCacheStatuses;
|
|
68
|
+
sqlValidation: {
|
|
69
|
+
status: string;
|
|
70
|
+
reason: string;
|
|
71
|
+
};
|
|
72
|
+
}>;
|
|
73
|
+
export {};
|
|
74
|
+
//# sourceMappingURL=check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAelE,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,KAAK,UAAU,GACX,SAAS,GACT,SAAS,GACT,mBAAmB,GACnB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,OAAO,CAAC;AAEZ,KAAK,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnD,KAAK,gBAAgB,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAEnD,UAAU,aAAa;IACrB,OAAO,EAAE,WAAW,CAAC;IACrB,gBAAgB,EAAE,WAAW,CAAC;IAC9B,YAAY,EAAE,WAAW,CAAC;IAC1B,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,WAAW,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,UAAU,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;QACjB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;KACjC,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAExC,QAAQ,CAAC,MAAM,EAAE,kBAAkB;IADrC,YACW,MAAM,EAAE,kBAAkB,EACnC,OAAO,CAAC,EAAE,YAAY,EAOvB;CACF;AA2GD,wBAAsB,YAAY,CAChC,OAAO,EAAE,YAAY,EACrB,WAAW,CAAC,EAAE,YAAY;mBAgLT,CAAC;;WAET,OAAO;;;;QAIZ,oBAAoB;QACpB,oBAAoB;QACpB,kBAAkB;;;;;QAKlB,MAAM;QACN,MAAM;;GAIX"}
|