@xemahq/api-client-generator 0.19.0 → 0.21.0
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/README.md +26 -0
- package/dist/.source-stamp.json +2 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/assert-declared-get-responses.d.ts.map +1 -1
- package/dist/lib/assert-declared-get-responses.js +0 -7
- package/dist/lib/assert-declared-get-responses.js.map +1 -1
- package/dist/lib/client-package.d.ts +1 -1
- package/dist/lib/client-package.d.ts.map +1 -1
- package/dist/lib/client-package.js +43 -9
- package/dist/lib/client-package.js.map +1 -1
- package/dist/lib/client-repository.d.ts +7 -0
- package/dist/lib/client-repository.d.ts.map +1 -1
- package/dist/lib/client-repository.js +49 -0
- package/dist/lib/client-repository.js.map +1 -1
- package/dist/lib/client-surface.d.ts +26 -0
- package/dist/lib/client-surface.d.ts.map +1 -0
- package/dist/lib/client-surface.js +240 -0
- package/dist/lib/client-surface.js.map +1 -0
- package/dist/lib/client-version.d.ts +13 -0
- package/dist/lib/client-version.d.ts.map +1 -1
- package/dist/lib/client-version.js +80 -9
- package/dist/lib/client-version.js.map +1 -1
- package/dist/lib/custom-fetch-template.d.ts +1 -1
- package/dist/lib/custom-fetch-template.d.ts.map +1 -1
- package/dist/lib/custom-fetch-template.js +57 -4
- package/dist/lib/custom-fetch-template.js.map +1 -1
- package/dist/lib/extract-openapi.d.ts.map +1 -1
- package/dist/lib/extract-openapi.js +35 -0
- package/dist/lib/extract-openapi.js.map +1 -1
- package/dist/lib/generate-clients.d.ts +10 -1
- package/dist/lib/generate-clients.d.ts.map +1 -1
- package/dist/lib/generate-clients.js +106 -5
- package/dist/lib/generate-clients.js.map +1 -1
- package/dist/lib/service-config.d.ts +2 -0
- package/dist/lib/service-config.d.ts.map +1 -1
- package/dist/lib/service-config.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -59,6 +59,32 @@ xema-openapi
|
|
|
59
59
|
xema-client-generate
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
+
### Version movement
|
|
63
|
+
|
|
64
|
+
Every surface client of a service lands on one derived version. When
|
|
65
|
+
regeneration changes the generated output, the version advances by a **bump
|
|
66
|
+
class** the generator works out from the published surface: an export removed is
|
|
67
|
+
a break, exports added only is additive, and bytes moving without any declaration
|
|
68
|
+
moving is a fix. On a `0.x` package the levels shift down by one, because `^0.9.6`
|
|
69
|
+
admits `>=0.9.6 <0.10.0` — a break has to move the minor to leave that range and
|
|
70
|
+
an addition is a patch because that is what stays inside it.
|
|
71
|
+
|
|
72
|
+
When the change cannot be classified — a retained export whose declaration
|
|
73
|
+
moved, where a request type and a response type have opposite variance — the run
|
|
74
|
+
**refuses** rather than guessing the smallest bump, and names what it could not
|
|
75
|
+
decide. State the class and re-run:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
xema-client-generate --bump-class=minor
|
|
79
|
+
# or, for a whole-repo refresh that reaches each service through turbo:
|
|
80
|
+
XEMA_CLIENT_BUMP_CLASS=minor pnpm refresh
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
The flag wins over the environment variable. A stated class below one the
|
|
84
|
+
comparison proved is refused, not silently raised; a higher one is always
|
|
85
|
+
honoured. Decide it from the PUBLISHED tarball of the current version rather
|
|
86
|
+
than from the source tree.
|
|
87
|
+
|
|
62
88
|
## Peer requirements
|
|
63
89
|
|
|
64
90
|
- `@nestjs/common`, `@nestjs/core`, `@nestjs/swagger`, `@nestjs/testing` — the
|
package/dist/.source-stamp.json
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -6,5 +6,6 @@ export * from './lib/extract-openapi';
|
|
|
6
6
|
export * from './lib/repo-post-process';
|
|
7
7
|
export * from './lib/client-package';
|
|
8
8
|
export * from './lib/client-version';
|
|
9
|
+
export * from './lib/client-surface';
|
|
9
10
|
export * from './lib/generate-clients';
|
|
10
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -22,5 +22,6 @@ __exportStar(require("./lib/extract-openapi"), exports);
|
|
|
22
22
|
__exportStar(require("./lib/repo-post-process"), exports);
|
|
23
23
|
__exportStar(require("./lib/client-package"), exports);
|
|
24
24
|
__exportStar(require("./lib/client-version"), exports);
|
|
25
|
+
__exportStar(require("./lib/client-surface"), exports);
|
|
25
26
|
__exportStar(require("./lib/generate-clients"), exports);
|
|
26
27
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uDAAqC;AACrC,kDAAgC;AAChC,yDAAuC;AACvC,sDAAoC;AACpC,wDAAsC;AACtC,0DAAwC;AACxC,uDAAqC;AACrC,uDAAqC;AACrC,yDAAuC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uDAAqC;AACrC,kDAAgC;AAChC,yDAAuC;AACvC,sDAAoC;AACpC,wDAAsC;AACtC,0DAAwC;AACxC,uDAAqC;AACrC,uDAAqC;AACrC,uDAAqC;AACrC,yDAAuC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assert-declared-get-responses.d.ts","sourceRoot":"","sources":["../../src/lib/assert-declared-get-responses.ts"],"names":[],"mappings":"AA8CA,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAEzC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;CAC1C;AAkBD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AASD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAK5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AASD,eAAO,MAAM,qBAAqB,EAAE,SAAS,mBAAmB,
|
|
1
|
+
{"version":3,"file":"assert-declared-get-responses.d.ts","sourceRoot":"","sources":["../../src/lib/assert-declared-get-responses.ts"],"names":[],"mappings":"AA8CA,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAEzC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;CAC1C;AAkBD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AASD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAK5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AASD,eAAO,MAAM,qBAAqB,EAAE,SAAS,mBAAmB,EAyH/D,CAAC;AAeF,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAgG7D,CAAC;AAGF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;CACtE;AAoBD,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,qBAAqB,GACzB,sBAAsB,EAAE,CA6C1B;AAmBD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAEnD,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;IACtB,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/D,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9D;AA+BD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,wBAAwB,GAC9B,0BAA0B,CAwH5B;AAGD,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,0BAA0B,GAClC,MAAM,CAQR"}
|
|
@@ -50,13 +50,6 @@ exports.STRUCTURAL_EXEMPTIONS = [
|
|
|
50
50
|
'dispatched adapter host (@RawResponse, src/bundle-bytes/). Bytes, not a ' +
|
|
51
51
|
'JSON document.',
|
|
52
52
|
},
|
|
53
|
-
{
|
|
54
|
-
serviceId: 'policy-distributor-api',
|
|
55
|
-
operationId: 'BundleServiceController_download',
|
|
56
|
-
reason: 'OPA Bundle Service poll endpoint; streams the bundle tarball (raw gzip) ' +
|
|
57
|
-
'to @Res() (@RawResponse, src/bundles/bundle-service.controller.ts). The ' +
|
|
58
|
-
'consumer is the vendored OPA sidecar, which reads bytes.',
|
|
59
|
-
},
|
|
60
53
|
{
|
|
61
54
|
serviceId: 'document-render-api',
|
|
62
55
|
operationId: 'RendersController_download',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assert-declared-get-responses.js","sourceRoot":"","sources":["../../src/lib/assert-declared-get-responses.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"assert-declared-get-responses.js","sourceRoot":"","sources":["../../src/lib/assert-declared-get-responses.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export interface GeneratedClientXemaBlock {
|
|
|
10
10
|
readonly source: string;
|
|
11
11
|
}
|
|
12
12
|
export declare function resolveGeneratedClientLicense(repoRoot: string): string;
|
|
13
|
-
export declare function ensureClientPackage(ctx: ResolvedServiceContext, surface: ApiSurface, version: string, repositoryUrl: string): {
|
|
13
|
+
export declare function ensureClientPackage(ctx: ResolvedServiceContext, surface: ApiSurface, version: string, repositoryUrl: string, license: string): {
|
|
14
14
|
clientDir: string;
|
|
15
15
|
clientSrc: string;
|
|
16
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-package.d.ts","sourceRoot":"","sources":["../../src/lib/client-package.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"client-package.d.ts","sourceRoot":"","sources":["../../src/lib/client-package.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAiID,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgCtE;AAqDD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,sBAAsB,EAC3B,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAsJ1C"}
|
|
@@ -7,10 +7,31 @@ const node_path_1 = require("node:path");
|
|
|
7
7
|
const client_repository_1 = require("./client-repository");
|
|
8
8
|
const custom_fetch_template_1 = require("./custom-fetch-template");
|
|
9
9
|
const service_config_1 = require("./service-config");
|
|
10
|
+
const RELEASE_CONFIG_HINT = 'release.config.mjs (`client.license`)';
|
|
10
11
|
const REPOSITORY_LICENSES = new Map([
|
|
11
12
|
['Xema Business Source License 1.1', 'LicenseRef-Xema-BSL-1.1'],
|
|
12
13
|
['Xema Proprietary License', 'LicenseRef-Xema-Proprietary'],
|
|
13
14
|
]);
|
|
15
|
+
const CLIENT_EXPORTS = {
|
|
16
|
+
'.': { types: './dist/index.d.ts', default: './dist/index.js' },
|
|
17
|
+
'./models': {
|
|
18
|
+
types: './dist/models/index.d.ts',
|
|
19
|
+
default: './dist/models/index.js',
|
|
20
|
+
},
|
|
21
|
+
'./models/*': {
|
|
22
|
+
types: './dist/models/*.d.ts',
|
|
23
|
+
default: './dist/models/*.js',
|
|
24
|
+
},
|
|
25
|
+
'./endpoints/*': {
|
|
26
|
+
types: './dist/endpoints/*.d.ts',
|
|
27
|
+
default: './dist/endpoints/*.js',
|
|
28
|
+
},
|
|
29
|
+
'./custom-fetch': {
|
|
30
|
+
types: './dist/custom-fetch.d.ts',
|
|
31
|
+
default: './dist/custom-fetch.js',
|
|
32
|
+
},
|
|
33
|
+
'./package.json': './package.json',
|
|
34
|
+
};
|
|
14
35
|
const CLIENT_TSCONFIG = {
|
|
15
36
|
compilerOptions: {
|
|
16
37
|
target: 'ES2022',
|
|
@@ -38,8 +59,11 @@ function recordOrEmpty(value) {
|
|
|
38
59
|
function resolveGeneratedClientLicense(repoRoot) {
|
|
39
60
|
const licensePath = (0, node_path_1.join)(repoRoot, 'LICENSE');
|
|
40
61
|
if (!(0, node_fs_1.existsSync)(licensePath)) {
|
|
41
|
-
throw new Error(`api-client-generator: ${repoRoot} has no LICENSE file
|
|
42
|
-
|
|
62
|
+
throw new Error(`api-client-generator: ${repoRoot} has no LICENSE file and declares no ` +
|
|
63
|
+
`\`client.license\` in ${RELEASE_CONFIG_HINT}; generated clients ` +
|
|
64
|
+
`require one repository-level licence authority. A repository whose ` +
|
|
65
|
+
`source is not first-party should DECLARE its licence there — that ` +
|
|
66
|
+
`is the generic mechanism and it needs no change to this generator.`);
|
|
43
67
|
}
|
|
44
68
|
const title = (0, node_fs_1.readFileSync)(licensePath, 'utf8')
|
|
45
69
|
.split(/\r?\n/u)
|
|
@@ -47,9 +71,17 @@ function resolveGeneratedClientLicense(repoRoot) {
|
|
|
47
71
|
?.trim();
|
|
48
72
|
const license = title === undefined ? undefined : REPOSITORY_LICENSES.get(title);
|
|
49
73
|
if (license === undefined) {
|
|
50
|
-
throw new Error(`api-client-generator:
|
|
51
|
-
`${
|
|
52
|
-
`
|
|
74
|
+
throw new Error(`api-client-generator: ${licensePath} carries the licence title ` +
|
|
75
|
+
`${JSON.stringify(title ?? '')}, which this generator does not ` +
|
|
76
|
+
`recognise as a FIRST-PARTY Xema licence. ` +
|
|
77
|
+
`DECLARE \`client.license\` (an SPDX id or \`LicenseRef-…\`) in ` +
|
|
78
|
+
`${RELEASE_CONFIG_HINT} instead — it is believed verbatim and takes ` +
|
|
79
|
+
`precedence over this file. ` +
|
|
80
|
+
`DO NOT add the title to this generator's first-party map: that map ` +
|
|
81
|
+
`is the set of licences XEMA ITSELF publishes under, and putting a ` +
|
|
82
|
+
`customer's or a white-label licence in it writes their naming ` +
|
|
83
|
+
`permanently into generic Xema tooling — the coupling the white-label ` +
|
|
84
|
+
`programme exists to remove.`);
|
|
53
85
|
}
|
|
54
86
|
return license;
|
|
55
87
|
}
|
|
@@ -66,7 +98,7 @@ function assertDeclaredRepository(packageName, declared, expected) {
|
|
|
66
98
|
`package as written cannot be released. Correct it by hand — the ` +
|
|
67
99
|
`generator never overwrites a declared \`repository\`.`);
|
|
68
100
|
}
|
|
69
|
-
function ensureClientPackage(ctx, surface, version, repositoryUrl) {
|
|
101
|
+
function ensureClientPackage(ctx, surface, version, repositoryUrl, license) {
|
|
70
102
|
const clientDir = (0, service_config_1.surfaceClientDir)(ctx, surface);
|
|
71
103
|
const clientSrc = (0, node_path_1.join)(clientDir, 'src');
|
|
72
104
|
(0, node_fs_1.mkdirSync)(clientSrc, { recursive: true });
|
|
@@ -103,22 +135,24 @@ function ensureClientPackage(ctx, surface, version, repositoryUrl) {
|
|
|
103
135
|
main: './dist/index.js',
|
|
104
136
|
types: './dist/index.d.ts',
|
|
105
137
|
files: ['dist'],
|
|
106
|
-
license
|
|
138
|
+
license,
|
|
107
139
|
scripts: {
|
|
108
140
|
...existingScripts,
|
|
109
141
|
build: 'tsc -p tsconfig.json',
|
|
110
142
|
prepublishOnly: 'npm run build',
|
|
111
143
|
},
|
|
112
144
|
publishConfig: {
|
|
113
|
-
access: 'public',
|
|
145
|
+
access: ctx.ownership?.access ?? 'public',
|
|
114
146
|
...existingPublishConfig,
|
|
115
|
-
registry: 'https://registry.npmjs.org/',
|
|
147
|
+
registry: ctx.ownership?.registry ?? 'https://registry.npmjs.org/',
|
|
116
148
|
},
|
|
117
149
|
devDependencies: {
|
|
118
150
|
...existingDevDeps,
|
|
119
151
|
typescript: 'catalog:',
|
|
120
152
|
},
|
|
121
153
|
xema,
|
|
154
|
+
exports: CLIENT_EXPORTS,
|
|
155
|
+
sideEffects: false,
|
|
122
156
|
};
|
|
123
157
|
(0, node_fs_1.writeFileSync)(pkgPath, `${JSON.stringify(pkg, null, 2)}\n`, 'utf8');
|
|
124
158
|
const tsconfigPath = (0, node_path_1.join)(clientDir, 'tsconfig.json');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-package.js","sourceRoot":"","sources":["../../src/lib/client-package.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"client-package.js","sourceRoot":"","sources":["../../src/lib/client-package.ts"],"names":[],"mappings":";;AA+JA,sEAgCC;AAqDD,kDA4JC;AAhZD,qCAKiB;AACjB,yCAAiC;AAIjC,2DAG6B;AAC7B,mEAAiE;AACjE,qDAI0B;AAkB1B,MAAM,mBAAmB,GAAG,uCAAuC,CAAC;AAmBpE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAiB;IAClD,CAAC,kCAAkC,EAAE,yBAAyB,CAAC;IAC/D,CAAC,0BAA0B,EAAE,6BAA6B,CAAC;CAC5D,CAAC,CAAC;AA6BH,MAAM,cAAc,GAAG;IACrB,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,iBAAiB,EAAE;IAC/D,UAAU,EAAE;QACV,KAAK,EAAE,0BAA0B;QACjC,OAAO,EAAE,wBAAwB;KAClC;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,sBAAsB;QAC7B,OAAO,EAAE,oBAAoB;KAC9B;IACD,eAAe,EAAE;QACf,KAAK,EAAE,yBAAyB;QAChC,OAAO,EAAE,uBAAuB;KACjC;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,0BAA0B;QACjC,OAAO,EAAE,wBAAwB;KAClC;IACD,gBAAgB,EAAE,gBAAgB;CAC1B,CAAC;AAEX,MAAM,eAAe,GAAG;IACtB,eAAe,EAAE;QACf,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,UAAU;QAClB,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;QACtB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,IAAI;QACZ,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,OAAO;KACjB;IACD,OAAO,EAAE,CAAC,aAAa,CAAC;CACzB,CAAC;AAEF,SAAS,YAAY;IACnB,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAwB,CAAC;IACjE,OAAO,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAyBD,SAAgB,6BAA6B,CAAC,QAAgB;IAC5D,MAAM,WAAW,GAAG,IAAA,gBAAI,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAA,oBAAU,EAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,yBAAyB,QAAQ,uCAAuC;YACtE,yBAAyB,mBAAmB,sBAAsB;YAClE,qEAAqE;YACrE,oEAAoE;YACpE,oEAAoE,CACvE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,MAAM,CAAC;SAC5C,KAAK,CAAC,QAAQ,CAAC;SACf,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACnC,EAAE,IAAI,EAAE,CAAC;IACX,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,yBAAyB,WAAW,6BAA6B;YAC/D,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,kCAAkC;YAChE,2CAA2C;YAC3C,iEAAiE;YACjE,GAAG,mBAAmB,+CAA+C;YACrE,6BAA6B;YAC7B,qEAAqE;YACrE,oEAAoE;YACpE,gEAAgE;YAChE,uEAAuE;YACvE,6BAA6B,CAChC,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAYD,SAAS,wBAAwB,CAC/B,WAAmB,EACnB,QAAiB,EACjB,QAAmC;IAEnC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAGzC,CAAC;IACF,IAAI,GAAG,KAAK,QAAQ,CAAC,GAAG,IAAI,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC7D,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CACb,yBAAyB,WAAW,mCAAmC;QACrE,mDAAmD;QACnD,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC,IAAI;QACzE,YAAY,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI;QACpF,mEAAmE;QACnE,kEAAkE;QAClE,uDAAuD,CAC1D,CAAC;AACJ,CAAC;AAoBD,SAAgB,mBAAmB,CACjC,GAA2B,EAC3B,OAAmB,EACnB,OAAe,EACf,aAAqB,EACrB,OAAe;IAEf,MAAM,SAAS,GAAG,IAAA,iCAAgB,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAiBzC,IAAA,mBAAS,EAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1C,MAAM,WAAW,GAAG,IAAA,yCAAwB,EAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,IAAI,GAA6B;QACrC,IAAI,EAAE,YAAY;QAClB,OAAO;QACP,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS;QAC1B,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO;QACtB,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,YAAY,EAAE;QACzB,MAAM,EAAE,WAAW,OAAO,OAAO;KAClC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAA,oBAAU,EAAC,OAAO,CAAC;QAClC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAA6B;QACxE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAChE,MAAM,qBAAqB,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEpE,MAAM,UAAU,GAAG,IAAA,6CAAyB,EAAC;QAC3C,aAAa;QACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS;KACV,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtC,wBAAwB,CAAC,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACzE,CAAC;IAWD,MAAM,GAAG,GAA4B;QACnC,GAAG,QAAQ;QACX,IAAI,EAAE,WAAW;QACjB,OAAO;QAQP,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,mBAAmB;QAM1B,KAAK,EAAE,CAAC,MAAM,CAAC;QAIf,OAAO;QACP,OAAO,EAAE;YACP,GAAG,eAAe;YAElB,KAAK,EAAE,sBAAsB;YAC7B,cAAc,EAAE,eAAe;SAChC;QAoBD,aAAa,EAAE;YACb,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,IAAI,QAAQ;YACzC,GAAG,qBAAqB;YACxB,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,IAAI,6BAA6B;SACnE;QACD,eAAe,EAAE;YACf,GAAG,eAAe;YAElB,UAAU,EAAE,UAAU;SACvB;QAED,IAAI;QAQJ,OAAO,EAAE,cAAc;QAQvB,WAAW,EAAE,KAAK;KACnB,CAAC;IACF,IAAA,uBAAa,EAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEpE,MAAM,YAAY,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACtD,IAAI,CAAC,IAAA,oBAAU,EAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,IAAA,uBAAa,EACX,YAAY,EACZ,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAC/C,MAAM,CACP,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE5B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC;AAsBD,SAAS,gBAAgB,CAAC,SAAiB;IACzC,IAAA,uBAAa,EACX,IAAA,gBAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAClC,8CAAsB,EACtB,MAAM,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -11,4 +11,11 @@ export declare function generatedClientRepository(params: {
|
|
|
11
11
|
repoRoot: string;
|
|
12
12
|
clientDir: string;
|
|
13
13
|
}): GeneratedClientRepository;
|
|
14
|
+
export type ClientOwnershipDeclaration = {
|
|
15
|
+
readonly license?: string;
|
|
16
|
+
readonly copyrightHolder?: string;
|
|
17
|
+
readonly access?: 'public' | 'restricted';
|
|
18
|
+
readonly registry?: string;
|
|
19
|
+
};
|
|
20
|
+
export declare function resolveClientOwnership(repoRoot: string): Promise<ClientOwnershipDeclaration>;
|
|
14
21
|
//# sourceMappingURL=client-repository.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-repository.d.ts","sourceRoot":"","sources":["../../src/lib/client-repository.ts"],"names":[],"mappings":"AAgCA,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAErB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAaD,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AAgBnE,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEnE;AAqBD,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA0BjB;
|
|
1
|
+
{"version":3,"file":"client-repository.d.ts","sourceRoot":"","sources":["../../src/lib/client-repository.ts"],"names":[],"mappings":"AAgCA,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAErB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAaD,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AAgBnE,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEnE;AAqBD,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA0BjB;AA6CD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,yBAAyB,CAW5B;AAqCD,MAAM,MAAM,0BAA0B,GAAG;IAevC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IAE1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAmCF,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,0BAA0B,CAAC,CAqDrC"}
|
|
@@ -4,6 +4,7 @@ exports.RELEASE_CONFIG_PATH = void 0;
|
|
|
4
4
|
exports.packageRepositoryUrl = packageRepositoryUrl;
|
|
5
5
|
exports.resolveClientRepositoryUrl = resolveClientRepositoryUrl;
|
|
6
6
|
exports.generatedClientRepository = generatedClientRepository;
|
|
7
|
+
exports.resolveClientOwnership = resolveClientOwnership;
|
|
7
8
|
const node_fs_1 = require("node:fs");
|
|
8
9
|
const node_path_1 = require("node:path");
|
|
9
10
|
const node_url_1 = require("node:url");
|
|
@@ -37,6 +38,13 @@ async function resolveClientRepositoryUrl(repoRoot) {
|
|
|
37
38
|
}
|
|
38
39
|
return packageRepositoryUrl(repository);
|
|
39
40
|
}
|
|
41
|
+
const SPDX_EXPRESSION_PATTERN = /^[A-Za-z0-9][A-Za-z0-9.+-]*(?: (?:AND|OR|WITH) [A-Za-z0-9][A-Za-z0-9.+-]*)*$/u;
|
|
42
|
+
const SEE_LICENSE_IN_PATTERN = /^SEE LICENSE IN \S.*$/u;
|
|
43
|
+
function isUsableNpmLicense(value) {
|
|
44
|
+
return (value === 'UNLICENSED' ||
|
|
45
|
+
SEE_LICENSE_IN_PATTERN.test(value) ||
|
|
46
|
+
SPDX_EXPRESSION_PATTERN.test(value));
|
|
47
|
+
}
|
|
40
48
|
function generatedClientRepository(params) {
|
|
41
49
|
const { repositoryUrl, repoRoot, clientDir } = params;
|
|
42
50
|
const directory = (0, node_path_1.relative)(repoRoot, clientDir).split(node_path_1.sep).join('/');
|
|
@@ -47,4 +55,45 @@ function generatedClientRepository(params) {
|
|
|
47
55
|
}
|
|
48
56
|
return { type: 'git', url: repositoryUrl, directory };
|
|
49
57
|
}
|
|
58
|
+
function asString(value) {
|
|
59
|
+
return typeof value === 'string' && value.trim() !== '' ? value : undefined;
|
|
60
|
+
}
|
|
61
|
+
async function resolveClientOwnership(repoRoot) {
|
|
62
|
+
const configPath = (0, node_path_1.join)(repoRoot, exports.RELEASE_CONFIG_PATH);
|
|
63
|
+
if (!(0, node_fs_1.existsSync)(configPath)) {
|
|
64
|
+
return {};
|
|
65
|
+
}
|
|
66
|
+
const config = (await importModule(configPath)).default;
|
|
67
|
+
const declared = config?.client;
|
|
68
|
+
if (declared === undefined || declared === null) {
|
|
69
|
+
return {};
|
|
70
|
+
}
|
|
71
|
+
const access = asString(declared.access);
|
|
72
|
+
if (access !== undefined && access !== 'public' && access !== 'restricted') {
|
|
73
|
+
throw new Error(`api-client-generator: ${configPath} declares client.access ` +
|
|
74
|
+
`${JSON.stringify(access)}. It must be "public" or "restricted" — a ` +
|
|
75
|
+
`value that is neither must not fall back to "public", which would ` +
|
|
76
|
+
`publish a private client to the public registry.`);
|
|
77
|
+
}
|
|
78
|
+
const rawLicense = declared.license;
|
|
79
|
+
if (rawLicense !== undefined &&
|
|
80
|
+
rawLicense !== null &&
|
|
81
|
+
!(typeof rawLicense === 'string' && isUsableNpmLicense(rawLicense))) {
|
|
82
|
+
throw new Error(`api-client-generator: ${configPath} declares a \`client.license\` npm ` +
|
|
83
|
+
`cannot use (found ${JSON.stringify(declared.license)}). Expected an ` +
|
|
84
|
+
`SPDX expression, \`SEE LICENSE IN <file>\`, or \`UNLICENSED\`. ` +
|
|
85
|
+
`Ignoring it would publish this repository's clients under the ` +
|
|
86
|
+
`first-party licence, which for a customer-owned repository is a false ` +
|
|
87
|
+
`legal assertion.`);
|
|
88
|
+
}
|
|
89
|
+
const license = asString(rawLicense);
|
|
90
|
+
const copyrightHolder = asString(declared.copyrightHolder);
|
|
91
|
+
const registry = asString(declared.registry);
|
|
92
|
+
return {
|
|
93
|
+
...(license === undefined ? {} : { license }),
|
|
94
|
+
...(copyrightHolder === undefined ? {} : { copyrightHolder }),
|
|
95
|
+
...(access === undefined ? {} : { access: access }),
|
|
96
|
+
...(registry === undefined ? {} : { registry }),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
50
99
|
//# sourceMappingURL=client-repository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-repository.js","sourceRoot":"","sources":["../../src/lib/client-repository.ts"],"names":[],"mappings":";;;AAmEA,oDAEC;AAqBD,gEA4BC;
|
|
1
|
+
{"version":3,"file":"client-repository.js","sourceRoot":"","sources":["../../src/lib/client-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type BumpClass } from './client-version';
|
|
2
|
+
export interface ClientSurface {
|
|
3
|
+
readonly exports: ReadonlyMap<string, string>;
|
|
4
|
+
readonly unrecognised: readonly string[];
|
|
5
|
+
}
|
|
6
|
+
export declare function extractClientSurface(clientSrc: string): ClientSurface;
|
|
7
|
+
export type SurfaceVerdict = {
|
|
8
|
+
readonly kind: 'determinate';
|
|
9
|
+
readonly bumpClass: BumpClass;
|
|
10
|
+
readonly reasons: readonly string[];
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: 'indeterminate';
|
|
13
|
+
readonly reasons: readonly string[];
|
|
14
|
+
};
|
|
15
|
+
export declare function classifySurfaceChange(args: {
|
|
16
|
+
readonly before: ClientSurface;
|
|
17
|
+
readonly after: ClientSurface;
|
|
18
|
+
readonly contentChanged: boolean;
|
|
19
|
+
}): SurfaceVerdict;
|
|
20
|
+
export declare function resolveClientBumpClass(args: {
|
|
21
|
+
readonly verdict: SurfaceVerdict;
|
|
22
|
+
readonly explicit: BumpClass | undefined;
|
|
23
|
+
readonly serviceId: string;
|
|
24
|
+
readonly explicitOrigin: string | undefined;
|
|
25
|
+
}): BumpClass;
|
|
26
|
+
//# sourceMappingURL=client-surface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-surface.d.ts","sourceRoot":"","sources":["../../src/lib/client-surface.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAqF1B,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAQD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAsCrE;AA+HD,MAAM,MAAM,cAAc,GACtB;IACE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AAuB5E,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC,GAAG,cAAc,CAgFjB;AAqBD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7C,GAAG,SAAS,CAoCZ"}
|