arc-1 1.3.0 → 1.5.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 +1 -1
- package/dist/adt/abapgit.d.ts.map +1 -1
- package/dist/adt/abapgit.js +64 -7
- package/dist/adt/abapgit.js.map +1 -1
- package/dist/adt/aunit.js +4 -4
- package/dist/adt/aunit.js.map +1 -1
- package/dist/adt/class-structure.d.ts +4 -2
- package/dist/adt/class-structure.d.ts.map +1 -1
- package/dist/adt/class-structure.js +18 -9
- package/dist/adt/class-structure.js.map +1 -1
- package/dist/adt/client.d.ts +18 -52
- package/dist/adt/client.d.ts.map +1 -1
- package/dist/adt/client.js +69 -92
- package/dist/adt/client.js.map +1 -1
- package/dist/adt/config.d.ts +5 -0
- package/dist/adt/config.d.ts.map +1 -1
- package/dist/adt/config.js.map +1 -1
- package/dist/adt/create-request.d.ts +4 -0
- package/dist/adt/create-request.d.ts.map +1 -0
- package/dist/adt/create-request.js +16 -0
- package/dist/adt/create-request.js.map +1 -0
- package/dist/adt/crud.d.ts +3 -3
- package/dist/adt/crud.d.ts.map +1 -1
- package/dist/adt/crud.js +28 -9
- package/dist/adt/crud.js.map +1 -1
- package/dist/adt/data-source-policy.d.ts +20 -8
- package/dist/adt/data-source-policy.d.ts.map +1 -1
- package/dist/adt/data-source-policy.js +55 -109
- package/dist/adt/data-source-policy.js.map +1 -1
- package/dist/adt/ddic-xml.d.ts +9 -0
- package/dist/adt/ddic-xml.d.ts.map +1 -1
- package/dist/adt/ddic-xml.js +17 -3
- package/dist/adt/ddic-xml.js.map +1 -1
- package/dist/adt/devtools.d.ts.map +1 -1
- package/dist/adt/devtools.js +10 -7
- package/dist/adt/devtools.js.map +1 -1
- package/dist/adt/diagnostics.d.ts +11 -9
- package/dist/adt/diagnostics.d.ts.map +1 -1
- package/dist/adt/diagnostics.js +88 -14
- package/dist/adt/diagnostics.js.map +1 -1
- package/dist/adt/enhancements.d.ts +7 -0
- package/dist/adt/enhancements.d.ts.map +1 -0
- package/dist/adt/enhancements.js +89 -0
- package/dist/adt/enhancements.js.map +1 -0
- package/dist/adt/errors.d.ts +21 -10
- package/dist/adt/errors.d.ts.map +1 -1
- package/dist/adt/errors.js +76 -54
- package/dist/adt/errors.js.map +1 -1
- package/dist/adt/features.d.ts.map +1 -1
- package/dist/adt/features.js +2 -0
- package/dist/adt/features.js.map +1 -1
- package/dist/adt/flp.d.ts.map +1 -1
- package/dist/adt/flp.js +5 -4
- package/dist/adt/flp.js.map +1 -1
- package/dist/adt/fm-signature.d.ts +1 -1
- package/dist/adt/fm-signature.d.ts.map +1 -1
- package/dist/adt/fm-signature.js +9 -1
- package/dist/adt/fm-signature.js.map +1 -1
- package/dist/adt/http-deadline.d.ts +2 -0
- package/dist/adt/http-deadline.d.ts.map +1 -1
- package/dist/adt/http-deadline.js.map +1 -1
- package/dist/adt/http.d.ts +12 -29
- package/dist/adt/http.d.ts.map +1 -1
- package/dist/adt/http.js +102 -95
- package/dist/adt/http.js.map +1 -1
- package/dist/adt/internal-data-operations.d.ts +3 -2
- package/dist/adt/internal-data-operations.d.ts.map +1 -1
- package/dist/adt/internal-data-operations.js +8 -1
- package/dist/adt/internal-data-operations.js.map +1 -1
- package/dist/adt/lock-object.d.ts +92 -0
- package/dist/adt/lock-object.d.ts.map +1 -0
- package/dist/adt/lock-object.js +195 -0
- package/dist/adt/lock-object.js.map +1 -0
- package/dist/adt/publish-state.d.ts +4 -0
- package/dist/adt/publish-state.d.ts.map +1 -0
- package/dist/adt/publish-state.js +61 -0
- package/dist/adt/publish-state.js.map +1 -0
- package/dist/adt/rap-generate.d.ts +5 -1
- package/dist/adt/rap-generate.d.ts.map +1 -1
- package/dist/adt/rap-generate.js +112 -100
- package/dist/adt/rap-generate.js.map +1 -1
- package/dist/adt/server-driven.d.ts +56 -13
- package/dist/adt/server-driven.d.ts.map +1 -1
- package/dist/adt/server-driven.js +114 -23
- package/dist/adt/server-driven.js.map +1 -1
- package/dist/adt/source-precondition.d.ts +3 -0
- package/dist/adt/source-precondition.d.ts.map +1 -0
- package/dist/adt/source-precondition.js +12 -0
- package/dist/adt/source-precondition.js.map +1 -0
- package/dist/adt/text-search.js +5 -5
- package/dist/adt/text-search.js.map +1 -1
- package/dist/adt/transport.d.ts +1 -2
- package/dist/adt/transport.d.ts.map +1 -1
- package/dist/adt/transport.js +20 -15
- package/dist/adt/transport.js.map +1 -1
- package/dist/adt/types.d.ts +21 -1
- package/dist/adt/types.d.ts.map +1 -1
- package/dist/adt/user-agent.d.ts +4 -0
- package/dist/adt/user-agent.d.ts.map +1 -0
- package/dist/adt/user-agent.js +11 -0
- package/dist/adt/user-agent.js.map +1 -0
- package/dist/adt/xml-entities.d.ts +3 -0
- package/dist/adt/xml-entities.d.ts.map +1 -0
- package/dist/adt/xml-entities.js +19 -0
- package/dist/adt/xml-entities.js.map +1 -0
- package/dist/adt/xml-parser.d.ts +7 -30
- package/dist/adt/xml-parser.d.ts.map +1 -1
- package/dist/adt/xml-parser.js +25 -54
- package/dist/adt/xml-parser.js.map +1 -1
- package/dist/authz/policy.d.ts.map +1 -1
- package/dist/authz/policy.js +2 -0
- package/dist/authz/policy.js.map +1 -1
- package/dist/cache/caching-layer.d.ts.map +1 -1
- package/dist/cache/caching-layer.js +5 -10
- package/dist/cache/caching-layer.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/context/grep.d.ts +14 -0
- package/dist/context/grep.d.ts.map +1 -1
- package/dist/context/grep.js +49 -0
- package/dist/context/grep.js.map +1 -1
- package/dist/context/unit-surgery.d.ts +4 -2
- package/dist/context/unit-surgery.d.ts.map +1 -1
- package/dist/context/unit-surgery.js +54 -6
- package/dist/context/unit-surgery.js.map +1 -1
- package/dist/handlers/activate.d.ts.map +1 -1
- package/dist/handlers/activate.js +11 -20
- package/dist/handlers/activate.js.map +1 -1
- package/dist/handlers/diagnose.d.ts.map +1 -1
- package/dist/handlers/diagnose.js +11 -30
- package/dist/handlers/diagnose.js.map +1 -1
- package/dist/handlers/dispatch.d.ts.map +1 -1
- package/dist/handlers/dispatch.js +63 -8
- package/dist/handlers/dispatch.js.map +1 -1
- package/dist/handlers/editable-source.d.ts +6 -0
- package/dist/handlers/editable-source.d.ts.map +1 -0
- package/dist/handlers/editable-source.js +53 -0
- package/dist/handlers/editable-source.js.map +1 -0
- package/dist/handlers/feature-cache.d.ts +2 -0
- package/dist/handlers/feature-cache.d.ts.map +1 -1
- package/dist/handlers/feature-cache.js +8 -0
- package/dist/handlers/feature-cache.js.map +1 -1
- package/dist/handlers/hyperfocused.js +1 -1
- package/dist/handlers/hyperfocused.js.map +1 -1
- package/dist/handlers/lint.d.ts.map +1 -1
- package/dist/handlers/lint.js +13 -4
- package/dist/handlers/lint.js.map +1 -1
- package/dist/handlers/object-types.d.ts +2 -3
- package/dist/handlers/object-types.d.ts.map +1 -1
- package/dist/handlers/object-types.js +13 -5
- package/dist/handlers/object-types.js.map +1 -1
- package/dist/handlers/publish-failure.d.ts +7 -0
- package/dist/handlers/publish-failure.d.ts.map +1 -0
- package/dist/handlers/publish-failure.js +42 -0
- package/dist/handlers/publish-failure.js.map +1 -0
- package/dist/handlers/read.d.ts.map +1 -1
- package/dist/handlers/read.js +39 -9
- package/dist/handlers/read.js.map +1 -1
- package/dist/handlers/schemas.d.ts +45 -0
- package/dist/handlers/schemas.d.ts.map +1 -1
- package/dist/handlers/schemas.js +50 -7
- package/dist/handlers/schemas.js.map +1 -1
- package/dist/handlers/syntax.d.ts +5 -0
- package/dist/handlers/syntax.d.ts.map +1 -0
- package/dist/handlers/syntax.js +35 -0
- package/dist/handlers/syntax.js.map +1 -0
- package/dist/handlers/tool-descriptions.d.ts.map +1 -1
- package/dist/handlers/tool-descriptions.js +7 -5
- package/dist/handlers/tool-descriptions.js.map +1 -1
- package/dist/handlers/tool-registry.d.ts +4 -4
- package/dist/handlers/tool-registry.d.ts.map +1 -1
- package/dist/handlers/tool-registry.js +4 -0
- package/dist/handlers/tool-registry.js.map +1 -1
- package/dist/handlers/tools.d.ts +1 -16
- package/dist/handlers/tools.d.ts.map +1 -1
- package/dist/handlers/tools.js +44 -55
- package/dist/handlers/tools.js.map +1 -1
- package/dist/handlers/transport.d.ts.map +1 -1
- package/dist/handlers/transport.js +17 -3
- package/dist/handlers/transport.js.map +1 -1
- package/dist/handlers/write/class-edit.d.ts +16 -0
- package/dist/handlers/write/class-edit.d.ts.map +1 -0
- package/dist/handlers/write/class-edit.js +55 -0
- package/dist/handlers/write/class-edit.js.map +1 -0
- package/dist/handlers/write/class-surgery.d.ts +2 -2
- package/dist/handlers/write/class-surgery.d.ts.map +1 -1
- package/dist/handlers/write/class-surgery.js +189 -220
- package/dist/handlers/write/class-surgery.js.map +1 -1
- package/dist/handlers/write/context.d.ts +1 -8
- package/dist/handlers/write/context.d.ts.map +1 -1
- package/dist/handlers/write/create.d.ts.map +1 -1
- package/dist/handlers/write/create.js +11 -4
- package/dist/handlers/write/create.js.map +1 -1
- package/dist/handlers/write/metadata-update.d.ts +4 -0
- package/dist/handlers/write/metadata-update.d.ts.map +1 -0
- package/dist/handlers/write/metadata-update.js +58 -0
- package/dist/handlers/write/metadata-update.js.map +1 -0
- package/dist/handlers/write/rap.d.ts.map +1 -1
- package/dist/handlers/write/rap.js +132 -155
- package/dist/handlers/write/rap.js.map +1 -1
- package/dist/handlers/write/unit-surgery.d.ts +2 -2
- package/dist/handlers/write/unit-surgery.d.ts.map +1 -1
- package/dist/handlers/write/unit-surgery.js +58 -34
- package/dist/handlers/write/unit-surgery.js.map +1 -1
- package/dist/handlers/write/update-delete.d.ts.map +1 -1
- package/dist/handlers/write/update-delete.js +34 -82
- package/dist/handlers/write/update-delete.js.map +1 -1
- package/dist/handlers/write-helpers.d.ts +4 -3
- package/dist/handlers/write-helpers.d.ts.map +1 -1
- package/dist/handlers/write-helpers.js +135 -21
- package/dist/handlers/write-helpers.js.map +1 -1
- package/dist/handlers/write.d.ts.map +1 -1
- package/dist/handlers/write.js +13 -31
- package/dist/handlers/write.js.map +1 -1
- package/dist/lint/config-builder.d.ts +10 -1
- package/dist/lint/config-builder.d.ts.map +1 -1
- package/dist/lint/config-builder.js +4 -0
- package/dist/lint/config-builder.js.map +1 -1
- package/dist/lint/lint.d.ts +3 -1
- package/dist/lint/lint.d.ts.map +1 -1
- package/dist/lint/lint.js +2 -1
- package/dist/lint/lint.js.map +1 -1
- package/dist/public/read-only-client.d.ts +6 -0
- package/dist/public/read-only-client.d.ts.map +1 -0
- package/dist/public/read-only-client.js +66 -0
- package/dist/public/read-only-client.js.map +1 -0
- package/dist/public/testing.d.ts +4 -0
- package/dist/public/testing.d.ts.map +1 -1
- package/dist/public/testing.js +6 -0
- package/dist/public/testing.js.map +1 -1
- package/dist/public/types.d.ts +14 -15
- package/dist/public/types.d.ts.map +1 -1
- package/dist/server/audit.d.ts +6 -1
- package/dist/server/audit.d.ts.map +1 -1
- package/dist/server/audit.js.map +1 -1
- package/dist/server/config.d.ts.map +1 -1
- package/dist/server/config.js +9 -2
- package/dist/server/config.js.map +1 -1
- package/dist/server/deny-actions.d.ts +2 -1
- package/dist/server/deny-actions.d.ts.map +1 -1
- package/dist/server/deny-actions.js +13 -2
- package/dist/server/deny-actions.js.map +1 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +7 -5
- package/dist/server/http.js.map +1 -1
- package/dist/server/logger.d.ts +3 -3
- package/dist/server/logger.d.ts.map +1 -1
- package/dist/server/logger.js +7 -7
- package/dist/server/logger.js.map +1 -1
- package/dist/server/multi-target-basic-auth.d.ts.map +1 -1
- package/dist/server/multi-target-basic-auth.js +1 -0
- package/dist/server/multi-target-basic-auth.js.map +1 -1
- package/dist/server/multi-target-runtime.d.ts.map +1 -1
- package/dist/server/multi-target-runtime.js +1 -0
- package/dist/server/multi-target-runtime.js.map +1 -1
- package/dist/server/oauth-redirect-policy.d.ts +13 -0
- package/dist/server/oauth-redirect-policy.d.ts.map +1 -0
- package/dist/server/oauth-redirect-policy.js +21 -0
- package/dist/server/oauth-redirect-policy.js.map +1 -0
- package/dist/server/plugin-loader.d.ts.map +1 -1
- package/dist/server/plugin-loader.js +1 -3
- package/dist/server/plugin-loader.js.map +1 -1
- package/dist/server/safe-http-client.d.ts +8 -14
- package/dist/server/safe-http-client.d.ts.map +1 -1
- package/dist/server/safe-http-client.js +51 -73
- package/dist/server/safe-http-client.js.map +1 -1
- package/dist/server/server.d.ts +5 -4
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +36 -27
- package/dist/server/server.js.map +1 -1
- package/dist/server/types.d.ts +6 -4
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/types.js +2 -0
- package/dist/server/types.js.map +1 -1
- package/dist/version.d.ts +3 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +3 -0
- package/dist/version.js.map +1 -0
- package/package.json +15 -15
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AdtHttpClient } from '../../adt/http.js';
|
|
2
|
+
import type { ClassStructure } from '../../adt/types.js';
|
|
3
|
+
import type { ToolResult } from '../shared.js';
|
|
4
|
+
import type { SapWriteContext } from './context.js';
|
|
5
|
+
interface ClassEdit {
|
|
6
|
+
http: AdtHttpClient;
|
|
7
|
+
read(url: string): Promise<string>;
|
|
8
|
+
readMainAndStructure(): Promise<{
|
|
9
|
+
main: string;
|
|
10
|
+
structure: ClassStructure;
|
|
11
|
+
}>;
|
|
12
|
+
save(url: string, source: string): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export declare function withClassEdit(ctx: SapWriteContext, edit: (locked: ClassEdit) => Promise<ToolResult>): Promise<ToolResult>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=class-edit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"class-edit.d.ts","sourceRoot":"","sources":["../../../src/handlers/write/class-edit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,UAAU,SAAS;IACjB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,oBAAoB,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;IAC7E,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,UAAU,CAAC,GAC/C,OAAO,CAAC,UAAU,CAAC,CAiDrB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** Keep a class surgery's source, structure and write within one SAP lock. */
|
|
2
|
+
import { lockObject, unlockObject, updateSource } from '../../adt/crud.js';
|
|
3
|
+
import { checkOperation, OperationType } from '../../adt/safety.js';
|
|
4
|
+
import { assertSourceHash } from '../../adt/source-precondition.js';
|
|
5
|
+
import { parseClassStructure } from '../../adt/xml-parser.js';
|
|
6
|
+
import { logger } from '../../server/logger.js';
|
|
7
|
+
import { getCachedFeatures } from '../feature-cache.js';
|
|
8
|
+
export async function withClassEdit(ctx, edit) {
|
|
9
|
+
const { client, objectUrl, srcUrl, name, transport, invalidateWrittenObject } = ctx;
|
|
10
|
+
checkOperation(client.safety, OperationType.Update, 'EditClass');
|
|
11
|
+
return client.http.withStatefulSession(async (session) => {
|
|
12
|
+
const lock = await lockObject(session, client.safety, objectUrl, 'MODIFY', getCachedFeatures()?.abapRelease);
|
|
13
|
+
let writeAttempted = false;
|
|
14
|
+
const read = async (url, checkSource = true) => {
|
|
15
|
+
checkOperation(client.safety, OperationType.Read, 'GetSource');
|
|
16
|
+
// SAP returns the editable draft (active when none exists). Both endpoints must use
|
|
17
|
+
// this same selection under the lock; caches and inactive worklists can be stale.
|
|
18
|
+
const source = (await session.get(url, { 'Cache-Control': 'no-cache' })).body;
|
|
19
|
+
if (checkSource)
|
|
20
|
+
assertSourceHash(source, ctx.args.expectedSourceHash, url);
|
|
21
|
+
return source;
|
|
22
|
+
};
|
|
23
|
+
try {
|
|
24
|
+
return await edit({
|
|
25
|
+
http: session,
|
|
26
|
+
read,
|
|
27
|
+
async readMainAndStructure() {
|
|
28
|
+
const main = await read(srcUrl);
|
|
29
|
+
const structure = parseClassStructure(await read(`${objectUrl}/objectstructure`, false), name);
|
|
30
|
+
return { main, structure };
|
|
31
|
+
},
|
|
32
|
+
async save(url, source) {
|
|
33
|
+
writeAttempted = true;
|
|
34
|
+
await updateSource(session, client.safety, url, source, lock.lockHandle, transport ?? (lock.corrNr || undefined));
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
finally {
|
|
39
|
+
try {
|
|
40
|
+
await unlockObject(session, objectUrl, lock.lockHandle);
|
|
41
|
+
}
|
|
42
|
+
finally {
|
|
43
|
+
if (writeAttempted) {
|
|
44
|
+
try {
|
|
45
|
+
invalidateWrittenObject('CLAS', name);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
logger.warn('Class surgery cache invalidation failed after a write attempt.');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=class-edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"class-edit.js","sourceRoot":"","sources":["../../../src/handlers/write/class-edit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* SAPWrite actions — class-section surgery (issue #303).
|
|
3
3
|
*
|
|
4
|
-
* These actions share a common shape:
|
|
5
|
-
* /source/main (or /includes/<inc> when include= is set) → PUT
|
|
4
|
+
* These actions share a common shape: lock → fresh source/structure → optional diff/refuse → splice into
|
|
5
|
+
* /source/main (or /includes/<inc> when include= is set) → PUT → unlock, with no auto-activation.
|
|
6
6
|
* Pre-write lint runs on the SPLICED FULL source (not the partial input fragment) because a raw
|
|
7
7
|
* DEFINITION block alone fails abaplint with "Expected CLASSIMPLEMENTATION" (verified live on a4h);
|
|
8
8
|
* lint is skipped for include= writes (same precedent as the `update include=` path).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-surgery.d.ts","sourceRoot":"","sources":["../../../src/handlers/write/class-surgery.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAwBH,OAAO,EAAe,KAAK,UAAU,EAAc,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"class-surgery.d.ts","sourceRoot":"","sources":["../../../src/handlers/write/class-surgery.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAwBH,OAAO,EAAe,KAAK,UAAU,EAAc,MAAM,cAAc,CAAC;AAGxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAmGrF;AAED,wBAAsB,8BAA8B,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAuF9F;AAED,wBAAsB,8BAA8B,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CA6C9F;AAED,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAmFpF;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAwCvF;AAED,wBAAsB,iCAAiC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CA2EjG"}
|