@getbrevo/cli 1.0.1 → 1.1.1
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 +31 -0
- package/README.md +16 -4
- package/agent-context/AGENTS.md +23 -5
- package/agent-context/SKILL.md +23 -3
- package/dist/api/client.d.ts +2 -0
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +50 -36
- package/dist/api/client.js.map +1 -1
- package/dist/bin/index.js +9 -5
- package/dist/bin/index.js.map +1 -1
- package/dist/commands/app/create.d.ts +1 -0
- package/dist/commands/app/create.d.ts.map +1 -1
- package/dist/commands/app/create.js +257 -201
- package/dist/commands/app/create.js.map +1 -1
- package/dist/commands/app/delete.d.ts.map +1 -1
- package/dist/commands/app/delete.js +81 -62
- package/dist/commands/app/delete.js.map +1 -1
- package/dist/commands/app/list.d.ts.map +1 -1
- package/dist/commands/app/list.js +10 -2
- package/dist/commands/app/list.js.map +1 -1
- package/dist/commands/app/scaffold.d.ts.map +1 -1
- package/dist/commands/app/scaffold.js +14 -3
- package/dist/commands/app/scaffold.js.map +1 -1
- package/dist/commands/app/scopes.d.ts +2 -0
- package/dist/commands/app/scopes.d.ts.map +1 -0
- package/dist/commands/app/scopes.js +81 -0
- package/dist/commands/app/scopes.js.map +1 -0
- package/dist/commands/app/start.d.ts.map +1 -1
- package/dist/commands/app/start.js +7 -0
- package/dist/commands/app/start.js.map +1 -1
- package/dist/commands/app/update.d.ts.map +1 -1
- package/dist/commands/app/update.js +305 -189
- package/dist/commands/app/update.js.map +1 -1
- package/dist/commands/definitions.d.ts.map +1 -1
- package/dist/commands/definitions.js +44 -1
- package/dist/commands/definitions.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +15 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +154 -138
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +27 -20
- package/dist/commands/whoami.js.map +1 -1
- package/dist/lang/en.d.ts +43 -3
- package/dist/lang/en.d.ts.map +1 -1
- package/dist/lang/en.js +44 -3
- package/dist/lang/en.js.map +1 -1
- package/dist/lib/auth-guard.d.ts.map +1 -1
- package/dist/lib/auth-guard.js +10 -1
- package/dist/lib/auth-guard.js.map +1 -1
- package/dist/lib/cli-version.d.ts +2 -0
- package/dist/lib/cli-version.d.ts.map +1 -0
- package/dist/lib/cli-version.js +59 -0
- package/dist/lib/cli-version.js.map +1 -0
- package/dist/lib/config.d.ts +1 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +15 -1
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/constants.d.ts +12 -1
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +26 -2
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +16 -3
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/telemetry.d.ts +9 -0
- package/dist/lib/telemetry.d.ts.map +1 -0
- package/dist/lib/telemetry.js +57 -0
- package/dist/lib/telemetry.js.map +1 -0
- package/dist/lib/update-notifier.d.ts.map +1 -1
- package/dist/lib/update-notifier.js +24 -20
- package/dist/lib/update-notifier.js.map +1 -1
- package/dist/lib/validators.d.ts +23 -0
- package/dist/lib/validators.d.ts.map +1 -1
- package/dist/lib/validators.js +75 -0
- package/dist/lib/validators.js.map +1 -1
- package/dist/services/app.d.ts +3 -0
- package/dist/services/app.d.ts.map +1 -1
- package/dist/services/app.js +6 -1
- package/dist/services/app.js.map +1 -1
- package/dist/services/oauth-metadata.d.ts +7 -0
- package/dist/services/oauth-metadata.d.ts.map +1 -0
- package/dist/services/oauth-metadata.js +43 -0
- package/dist/services/oauth-metadata.js.map +1 -0
- package/dist/services/scopes-html.d.ts +3 -0
- package/dist/services/scopes-html.d.ts.map +1 -0
- package/dist/services/scopes-html.js +516 -0
- package/dist/services/scopes-html.js.map +1 -0
- package/dist/services/scopes-web.d.ts +12 -0
- package/dist/services/scopes-web.d.ts.map +1 -0
- package/dist/services/scopes-web.js +95 -0
- package/dist/services/scopes-web.js.map +1 -0
- package/dist/services/skill.js +1 -1
- package/dist/services/skill.js.map +1 -1
- package/dist/skills/index.d.ts +2 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +3 -22
- package/dist/skills/index.js.map +1 -1
- package/dist/templates/files/AGENTS.md.tmpl +1 -1
- package/dist/templates/files/CLAUDE.md.tmpl +1 -1
- package/dist/templates/files/README.md.tmpl +2 -1
- package/dist/templates/files/app-config.json.tmpl +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -2
- package/dist/lib/min-version-check.d.ts +0 -15
- package/dist/lib/min-version-check.d.ts.map +0 -1
- package/dist/lib/min-version-check.js +0 -33
- package/dist/lib/min-version-check.js.map +0 -1
package/dist/skills/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { CLI_VERSION } from '../lib/cli-version';
|
|
2
|
+
export { CLI_VERSION };
|
|
1
3
|
/**
|
|
2
4
|
* Catalog of Brevo-authored agent skills installable via `brevo skill:cli install`.
|
|
3
5
|
*
|
|
@@ -32,7 +34,6 @@ export interface SkillEntry {
|
|
|
32
34
|
/** Files to copy, relative to `SKILLS_BUNDLE_DIR/<subdir>/`. */
|
|
33
35
|
files: string[];
|
|
34
36
|
}
|
|
35
|
-
export declare const CLI_VERSION: string;
|
|
36
37
|
export declare const SKILL_CATALOG: readonly SkillEntry[];
|
|
37
38
|
/**
|
|
38
39
|
* Absolute path to the bundled skill source directory. Resolved relative to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,UAAU;IACzB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,SAAS,UAAU,EASrC,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,QAAuD,CAAC;AAEtF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE7D"}
|
package/dist/skills/index.js
CHANGED
|
@@ -35,33 +35,14 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.SKILLS_BUNDLE_DIR = exports.SKILL_CATALOG = exports.CLI_VERSION = void 0;
|
|
37
37
|
exports.getSkill = getSkill;
|
|
38
|
-
const fs = __importStar(require("node:fs"));
|
|
39
38
|
const path = __importStar(require("node:path"));
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
*
|
|
43
|
-
* Resolved relative to this file so the same lookup works under ts-jest
|
|
44
|
-
* (`src/skills/` → repo root) and the published tarball
|
|
45
|
-
* (`node_modules/@getbrevo/cli/dist/skills/` → package root). Falls back to
|
|
46
|
-
* `'0.0.0'` if the file is missing or malformed — the auto-refresh pass
|
|
47
|
-
* then never fires, which is the safe default.
|
|
48
|
-
*/
|
|
49
|
-
function readCliVersion() {
|
|
50
|
-
try {
|
|
51
|
-
const pkgPath = path.resolve(__dirname, '..', '..', 'package.json');
|
|
52
|
-
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
|
|
53
|
-
return typeof pkg.version === 'string' ? pkg.version : '0.0.0';
|
|
54
|
-
}
|
|
55
|
-
catch {
|
|
56
|
-
return '0.0.0';
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
exports.CLI_VERSION = readCliVersion();
|
|
39
|
+
const cli_version_1 = require("../lib/cli-version");
|
|
40
|
+
Object.defineProperty(exports, "CLI_VERSION", { enumerable: true, get: function () { return cli_version_1.CLI_VERSION; } });
|
|
60
41
|
exports.SKILL_CATALOG = [
|
|
61
42
|
{
|
|
62
43
|
name: 'brevo-cli',
|
|
63
44
|
description: 'Agent primer for the Brevo Developer CLI — decision tree, hard rules, and command map for the `brevo` binary.',
|
|
64
|
-
version:
|
|
45
|
+
version: cli_version_1.CLI_VERSION,
|
|
65
46
|
subdir: '',
|
|
66
47
|
files: ['SKILL.md'],
|
|
67
48
|
},
|
package/dist/skills/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DA,4BAEC;AA/DD,gDAAkC;AAElC,oDAAiD;AACxC,4FADA,yBAAW,OACA;AAsCP,QAAA,aAAa,GAA0B;IAClD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,+GAA+G;QACjH,OAAO,EAAE,yBAAW;QACpB,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,UAAU,CAAC;KACpB;CACO,CAAC;AAEX;;;;;;GAMG;AACU,QAAA,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;AAEtF,SAAgB,QAAQ,CAAC,IAAY;IACnC,OAAO,qBAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -10,7 +10,7 @@ Implements the authorization code flow to obtain access tokens for the Brevo API
|
|
|
10
10
|
## Project structure
|
|
11
11
|
```
|
|
12
12
|
.
|
|
13
|
-
├── app-config.json App metadata (app ID, redirect URIs, scopes)
|
|
13
|
+
├── app-config.json App metadata (app ID, redirect URIs, scopes, logo URL)
|
|
14
14
|
├── .gitignore Ignores .env.local and build artifacts
|
|
15
15
|
├── AGENTS.md AI agent guidance (this file)
|
|
16
16
|
├── CLAUDE.md Claude Code guidance
|
|
@@ -16,7 +16,7 @@ brevo app start oauth # port is read from app-config.json; override with
|
|
|
16
16
|
## Structure
|
|
17
17
|
```
|
|
18
18
|
.
|
|
19
|
-
├── app-config.json App metadata (ID, scopes, redirect URLs)
|
|
19
|
+
├── app-config.json App metadata (ID, scopes, redirect URLs, logo URL)
|
|
20
20
|
├── .gitignore Ignores .env.local and build artifacts
|
|
21
21
|
├── AGENTS.md AI agent guidance
|
|
22
22
|
├── CLAUDE.md Claude Code guidance (this file)
|
|
@@ -26,7 +26,7 @@ Brevo OAuth integration for testing and implementing app authorization flows, sc
|
|
|
26
26
|
|
|
27
27
|
```
|
|
28
28
|
.
|
|
29
|
-
├── app-config.json App config — ID, scopes, redirect URLs
|
|
29
|
+
├── app-config.json App config — ID, scopes, redirect URLs, logo URL
|
|
30
30
|
├── .gitignore Ignores .env.local and build artifacts
|
|
31
31
|
├── AGENTS.md AI agent guidance
|
|
32
32
|
├── CLAUDE.md Claude Code guidance
|
|
@@ -61,6 +61,7 @@ Push changes to Brevo directly from the CLI:
|
|
|
61
61
|
brevo app update --name "New Name"
|
|
62
62
|
brevo app update --redirect-url https://myapp.com/callback
|
|
63
63
|
brevo app update --name "New Name" --redirect-url https://myapp.com/callback
|
|
64
|
+
brevo app update --logo-uri https://example.com/logo.png
|
|
64
65
|
```
|
|
65
66
|
|
|
66
67
|
`--redirect-url` is repeatable and **appends** to existing URLs.
|
package/dist/types.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export interface OAuthApp {
|
|
|
14
14
|
public?: boolean;
|
|
15
15
|
redirect_uris: string[];
|
|
16
16
|
scopes?: string[];
|
|
17
|
+
logo_uri?: string;
|
|
17
18
|
created_at: string;
|
|
18
19
|
updated_at: string;
|
|
19
20
|
}
|
|
@@ -24,6 +25,7 @@ export interface CreateAppResponse {
|
|
|
24
25
|
client_secret: string;
|
|
25
26
|
public?: boolean;
|
|
26
27
|
redirect_uris: string[];
|
|
28
|
+
logo_uri?: string;
|
|
27
29
|
created_at: string;
|
|
28
30
|
updated_at: string;
|
|
29
31
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getbrevo/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"author": "Brevo",
|
|
5
5
|
"description": "Brevo Developer CLI — create, manage apps and OAuth integrations",
|
|
6
6
|
"type": "commonjs",
|
|
@@ -30,7 +30,6 @@
|
|
|
30
30
|
"lint:fix": "eslint 'src/**/*.ts' --fix",
|
|
31
31
|
"format": "prettier --write 'src/**/*.ts'",
|
|
32
32
|
"format:check": "prettier --check 'src/**/*.ts'",
|
|
33
|
-
"mock": "npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112",
|
|
34
33
|
"smoke": "tsx scripts/smoke-test.ts",
|
|
35
34
|
"clean": "rm -rf dist",
|
|
36
35
|
"prepare": "husky",
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
interface CheckOptions {
|
|
2
|
-
currentVersion: string;
|
|
3
|
-
argv?: readonly string[];
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Warn if the current CLI version is below the project's `minCliVersion`.
|
|
7
|
-
* Silent when:
|
|
8
|
-
* - cwd has no app-config.json
|
|
9
|
-
* - app-config.json has no `minCliVersion`
|
|
10
|
-
* - current version is `0.0.0` (unpublished local dev build)
|
|
11
|
-
* - `--json` is passed (would corrupt machine-readable output)
|
|
12
|
-
*/
|
|
13
|
-
export declare function warnIfCliBelowMinVersion(opts: CheckOptions): void;
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=min-version-check.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"min-version-check.d.ts","sourceRoot":"","sources":["../../src/lib/min-version-check.ts"],"names":[],"mappings":"AAKA,UAAU,YAAY;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAMD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAYjE"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.warnIfCliBelowMinVersion = warnIfCliBelowMinVersion;
|
|
4
|
-
const config_1 = require("./config");
|
|
5
|
-
const update_notifier_1 = require("./update-notifier");
|
|
6
|
-
const logger_1 = require("./logger");
|
|
7
|
-
const en_1 = require("../lang/en");
|
|
8
|
-
function isJsonInvocation(argv) {
|
|
9
|
-
return argv.includes('--json');
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Warn if the current CLI version is below the project's `minCliVersion`.
|
|
13
|
-
* Silent when:
|
|
14
|
-
* - cwd has no app-config.json
|
|
15
|
-
* - app-config.json has no `minCliVersion`
|
|
16
|
-
* - current version is `0.0.0` (unpublished local dev build)
|
|
17
|
-
* - `--json` is passed (would corrupt machine-readable output)
|
|
18
|
-
*/
|
|
19
|
-
function warnIfCliBelowMinVersion(opts) {
|
|
20
|
-
const argv = opts.argv ?? process.argv;
|
|
21
|
-
if (isJsonInvocation(argv))
|
|
22
|
-
return;
|
|
23
|
-
if (opts.currentVersion === '0.0.0')
|
|
24
|
-
return;
|
|
25
|
-
const cfg = (0, config_1.readProjectConfig)();
|
|
26
|
-
const required = cfg?.minCliVersion;
|
|
27
|
-
if (!required)
|
|
28
|
-
return;
|
|
29
|
-
if ((0, update_notifier_1.isNewer)(opts.currentVersion, required)) {
|
|
30
|
-
(0, logger_1.logWarn)(en_1.messages.CLI_BELOW_MIN_VERSION(opts.currentVersion, required));
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=min-version-check.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"min-version-check.js","sourceRoot":"","sources":["../../src/lib/min-version-check.ts"],"names":[],"mappings":";;AAsBA,4DAYC;AAlCD,qCAA6C;AAC7C,uDAA4C;AAC5C,qCAAmC;AACnC,mCAAsC;AAOtC,SAAS,gBAAgB,CAAC,IAAuB;IAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,wBAAwB,CAAC,IAAkB;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IACvC,IAAI,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO;IACnC,IAAI,IAAI,CAAC,cAAc,KAAK,OAAO;QAAE,OAAO;IAE5C,MAAM,GAAG,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,GAAG,EAAE,aAAa,CAAC;IACpC,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,IAAI,IAAA,yBAAO,EAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC3C,IAAA,gBAAO,EAAC,aAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
|