@mcp-abap-adt/adt-clients 7.4.4 → 7.6.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 +22 -7
- package/dist/batch/AdtClientBatch.d.ts +28 -28
- package/dist/core/accessControl/types.d.ts +1 -30
- package/dist/core/accessControl/types.d.ts.map +1 -1
- package/dist/core/appendStructure/types.d.ts +1 -35
- package/dist/core/appendStructure/types.d.ts.map +1 -1
- package/dist/core/authorizationField/types.d.ts +1 -48
- package/dist/core/authorizationField/types.d.ts.map +1 -1
- package/dist/core/behaviorDefinition/types.d.ts +1 -128
- package/dist/core/behaviorDefinition/types.d.ts.map +1 -1
- package/dist/core/behaviorImplementation/types.d.ts +1 -29
- package/dist/core/behaviorImplementation/types.d.ts.map +1 -1
- package/dist/core/class/AdtClass.d.ts +3 -0
- package/dist/core/class/AdtClass.d.ts.map +1 -1
- package/dist/core/class/AdtClass.js +38 -25
- package/dist/core/class/AdtLocalDefinitions.d.ts +2 -6
- package/dist/core/class/AdtLocalDefinitions.d.ts.map +1 -1
- package/dist/core/class/AdtLocalMacros.d.ts +2 -6
- package/dist/core/class/AdtLocalMacros.d.ts.map +1 -1
- package/dist/core/class/AdtLocalTestClass.d.ts +2 -7
- package/dist/core/class/AdtLocalTestClass.d.ts.map +1 -1
- package/dist/core/class/AdtLocalTypes.d.ts +2 -6
- package/dist/core/class/AdtLocalTypes.d.ts.map +1 -1
- package/dist/core/class/types.d.ts +1 -45
- package/dist/core/class/types.d.ts.map +1 -1
- package/dist/core/dataElement/types.d.ts +1 -76
- package/dist/core/dataElement/types.d.ts.map +1 -1
- package/dist/core/ddl/types.d.ts +1 -34
- package/dist/core/ddl/types.d.ts.map +1 -1
- package/dist/core/domain/AdtDomain.d.ts +2 -0
- package/dist/core/domain/AdtDomain.d.ts.map +1 -1
- package/dist/core/domain/AdtDomain.js +27 -17
- package/dist/core/domain/types.d.ts +1 -61
- package/dist/core/domain/types.d.ts.map +1 -1
- package/dist/core/enhancement/types.d.ts +4 -84
- package/dist/core/enhancement/types.d.ts.map +1 -1
- package/dist/core/featureToggle/types.d.ts +1 -113
- package/dist/core/featureToggle/types.d.ts.map +1 -1
- package/dist/core/functionGroup/types.d.ts +1 -33
- package/dist/core/functionGroup/types.d.ts.map +1 -1
- package/dist/core/functionInclude/types.d.ts +1 -22
- package/dist/core/functionInclude/types.d.ts.map +1 -1
- package/dist/core/functionModule/types.d.ts +1 -34
- package/dist/core/functionModule/types.d.ts.map +1 -1
- package/dist/core/interface/types.d.ts +1 -31
- package/dist/core/interface/types.d.ts.map +1 -1
- package/dist/core/messageClass/types.d.ts +1 -49
- package/dist/core/messageClass/types.d.ts.map +1 -1
- package/dist/core/metadataExtension/types.d.ts +1 -29
- package/dist/core/metadataExtension/types.d.ts.map +1 -1
- package/dist/core/package/types.d.ts +1 -20
- package/dist/core/package/types.d.ts.map +1 -1
- package/dist/core/program/types.d.ts +1 -38
- package/dist/core/program/types.d.ts.map +1 -1
- package/dist/core/scalarFunction/types.d.ts +1 -34
- package/dist/core/scalarFunction/types.d.ts.map +1 -1
- package/dist/core/scalarFunctionImplementation/types.d.ts +1 -35
- package/dist/core/scalarFunctionImplementation/types.d.ts.map +1 -1
- package/dist/core/service/types.d.ts +2 -139
- package/dist/core/service/types.d.ts.map +1 -1
- package/dist/core/serviceDefinition/AdtServiceDefinition.d.ts +3 -0
- package/dist/core/serviceDefinition/AdtServiceDefinition.d.ts.map +1 -1
- package/dist/core/serviceDefinition/AdtServiceDefinition.js +41 -17
- package/dist/core/serviceDefinition/types.d.ts +1 -30
- package/dist/core/serviceDefinition/types.d.ts.map +1 -1
- package/dist/core/shared/capabilities/LockCapability.d.ts +37 -0
- package/dist/core/shared/capabilities/LockCapability.d.ts.map +1 -0
- package/dist/core/shared/capabilities/LockCapability.js +59 -0
- package/dist/core/shared/capabilities/VersionsCapability.d.ts +15 -0
- package/dist/core/shared/capabilities/VersionsCapability.d.ts.map +1 -0
- package/dist/core/shared/capabilities/VersionsCapability.js +26 -0
- package/dist/core/shared/capabilities/index.d.ts +4 -0
- package/dist/core/shared/capabilities/index.d.ts.map +1 -0
- package/dist/core/shared/capabilities/index.js +22 -0
- package/dist/core/shared/capabilities/types.d.ts +41 -0
- package/dist/core/shared/capabilities/types.d.ts.map +1 -0
- package/dist/core/shared/capabilities/types.js +2 -0
- package/dist/core/shared/types.d.ts +1 -223
- package/dist/core/shared/types.d.ts.map +1 -1
- package/dist/core/structure/types.d.ts +1 -47
- package/dist/core/structure/types.d.ts.map +1 -1
- package/dist/core/table/types.d.ts +1 -30
- package/dist/core/table/types.d.ts.map +1 -1
- package/dist/core/tabletype/types.d.ts +1 -39
- package/dist/core/tabletype/types.d.ts.map +1 -1
- package/dist/core/transformation/types.d.ts +1 -32
- package/dist/core/transformation/types.d.ts.map +1 -1
- package/dist/core/transport/types.d.ts +1 -26
- package/dist/core/transport/types.d.ts.map +1 -1
- package/dist/core/unitTest/AdtCdsUnitTest.d.ts +3 -16
- package/dist/core/unitTest/AdtCdsUnitTest.d.ts.map +1 -1
- package/dist/core/unitTest/types.d.ts +1 -59
- package/dist/core/unitTest/types.d.ts.map +1 -1
- package/dist/utils/activationUtils.d.ts.map +1 -1
- package/dist/utils/activationUtils.js +82 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -68,8 +68,9 @@ This package is responsible for:
|
|
|
68
68
|
|
|
69
69
|
This package interacts with external packages **ONLY through interfaces**:
|
|
70
70
|
|
|
71
|
-
- **`@mcp-abap-adt/
|
|
72
|
-
-
|
|
71
|
+
- **`@mcp-abap-adt/interfaces`** (`^11.0.0`): The contract package — the single definition site for every public type this package exposes (see [Type System](#type-system)). This is the one runtime dependency whose *types* are part of this package's public API.
|
|
72
|
+
- **`@mcp-abap-adt/connection`**: Uses the `IAbapConnection` interface for HTTP requests — does not know about the concrete connection implementation. It is a **dev** dependency; consumers supply their own implementation.
|
|
73
|
+
- **No other direct package dependencies**: all remaining interactions happen through well-defined interfaces
|
|
73
74
|
|
|
74
75
|
## Installation
|
|
75
76
|
|
|
@@ -515,19 +516,33 @@ Refer to the TypeScript typings (`src/index.ts`) for the full API surface.
|
|
|
515
516
|
|
|
516
517
|
## Type System
|
|
517
518
|
|
|
518
|
-
###
|
|
519
|
+
### Single Definition Site: `@mcp-abap-adt/interfaces`
|
|
519
520
|
|
|
520
|
-
|
|
521
|
+
Since **7.5.0**, every public type is **defined once**, in `@mcp-abap-adt/interfaces` (`^11.0.0`). This package no longer declares its own copies — the low-level `*Params` interfaces, every `IXxxConfig`/`IXxxState` pair, the option/result types, and the cross-cutting types in `src/core/shared/types.ts` are all re-exports.
|
|
522
|
+
|
|
523
|
+
**Prefer importing types straight from the contract package:**
|
|
521
524
|
|
|
522
525
|
```typescript
|
|
523
|
-
//
|
|
526
|
+
// Recommended — import types from the contract package
|
|
524
527
|
import type {
|
|
525
528
|
IClassConfig,
|
|
526
529
|
IClassState,
|
|
527
530
|
IProgramConfig
|
|
528
|
-
} from '@mcp-abap-adt/
|
|
531
|
+
} from '@mcp-abap-adt/interfaces';
|
|
532
|
+
|
|
533
|
+
// Still works — this package re-exports the same types unchanged
|
|
534
|
+
import type { IClassConfig } from '@mcp-abap-adt/adt-clients';
|
|
529
535
|
```
|
|
530
536
|
|
|
537
|
+
Both forms resolve to the identical type. The re-exports exist so that existing code keeps compiling; new code should depend on `@mcp-abap-adt/interfaces` directly, so that types travel independently of this client's release cycle.
|
|
538
|
+
|
|
539
|
+
Two categories deliberately remain local, because they describe *this client* rather than the wire contract:
|
|
540
|
+
|
|
541
|
+
- Runtime (value) exports: `ENHANCEMENT_TYPE_CODES` and the enhancement URL helpers, `resolveBindingVariant` / `SERVICE_BINDING_VARIANT_MAP`.
|
|
542
|
+
- `IAdtClientOptions` — constructor options for `AdtClient` itself.
|
|
543
|
+
|
|
544
|
+
> **Version pairing.** Because the types are now sourced rather than copied, `@mcp-abap-adt/interfaces` is a hard peer of this package's public API. A major bump there implies a bump here; keep the two in step rather than letting a resolver pick a mismatched pair.
|
|
545
|
+
|
|
531
546
|
### Naming Conventions
|
|
532
547
|
|
|
533
548
|
The package uses **dual naming conventions** to distinguish API layers:
|
|
@@ -556,7 +571,7 @@ This dual convention:
|
|
|
556
571
|
- Provides familiar camelCase for JavaScript/TypeScript consumers
|
|
557
572
|
- Enables proper type checking at each layer
|
|
558
573
|
|
|
559
|
-
See [Architecture Documentation](docs/architecture/ARCHITECTURE.md#type-system-
|
|
574
|
+
See [Architecture Documentation](docs/architecture/ARCHITECTURE.md#type-system-and-exports) for details.
|
|
560
575
|
|
|
561
576
|
## Migration Guide
|
|
562
577
|
|
|
@@ -6,36 +6,36 @@ export declare class AdtClientBatch {
|
|
|
6
6
|
private innerClient;
|
|
7
7
|
private realConnection;
|
|
8
8
|
constructor(connection: IAbapConnection, logger?: ILogger, options?: IAdtClientOptions);
|
|
9
|
-
getClass(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
10
|
-
getProgram(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
11
|
-
getInterface(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
12
|
-
getDomain(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
13
|
-
getDataElement(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
14
|
-
getStructure(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
15
|
-
getTable(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
16
|
-
getTableType(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
17
|
-
getDdl(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
18
|
-
getFunctionGroup(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
19
|
-
getFunctionModule(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
20
|
-
getPackage(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
21
|
-
getServiceDefinition(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
22
|
-
getScalarFunction(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
23
|
-
getScalarFunctionImplementation(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
24
|
-
getAppendStructure(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
25
|
-
getServiceBinding(): import("
|
|
26
|
-
getService(): import("
|
|
27
|
-
getBehaviorDefinition(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
28
|
-
getBehaviorImplementation(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
29
|
-
getMetadataExtension(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
30
|
-
getEnhancement(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
31
|
-
getUnitTest(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
32
|
-
getCdsUnitTest(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
9
|
+
getClass(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IClassConfig, import("@mcp-abap-adt/interfaces").IClassState>;
|
|
10
|
+
getProgram(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IProgramConfig, import("@mcp-abap-adt/interfaces").IProgramState>;
|
|
11
|
+
getInterface(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IInterfaceConfig, import("@mcp-abap-adt/interfaces").IInterfaceState>;
|
|
12
|
+
getDomain(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IDomainConfig, import("@mcp-abap-adt/interfaces").IDomainState>;
|
|
13
|
+
getDataElement(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IDataElementConfig, import("@mcp-abap-adt/interfaces").IDataElementState>;
|
|
14
|
+
getStructure(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IStructureConfig, import("@mcp-abap-adt/interfaces").IStructureState>;
|
|
15
|
+
getTable(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ITableConfig, import("@mcp-abap-adt/interfaces").ITableState>;
|
|
16
|
+
getTableType(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ITableTypeConfig, import("@mcp-abap-adt/interfaces").ITableTypeState>;
|
|
17
|
+
getDdl(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IDdlConfig, import("@mcp-abap-adt/interfaces").IDdlState>;
|
|
18
|
+
getFunctionGroup(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IFunctionGroupConfig, import("@mcp-abap-adt/interfaces").IFunctionGroupState>;
|
|
19
|
+
getFunctionModule(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IFunctionModuleConfig, import("@mcp-abap-adt/interfaces").IFunctionModuleState>;
|
|
20
|
+
getPackage(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IPackageConfig, import("@mcp-abap-adt/interfaces").IPackageState>;
|
|
21
|
+
getServiceDefinition(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IServiceDefinitionConfig, import("@mcp-abap-adt/interfaces").IServiceDefinitionState>;
|
|
22
|
+
getScalarFunction(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IScalarFunctionConfig, import("@mcp-abap-adt/interfaces").IScalarFunctionState>;
|
|
23
|
+
getScalarFunctionImplementation(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IScalarFunctionImplementationConfig, import("@mcp-abap-adt/interfaces").IScalarFunctionImplementationState>;
|
|
24
|
+
getAppendStructure(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IAppendStructureConfig, import("@mcp-abap-adt/interfaces").IAppendStructureState>;
|
|
25
|
+
getServiceBinding(): import("@mcp-abap-adt/interfaces").IAdtServiceBinding;
|
|
26
|
+
getService(): import("@mcp-abap-adt/interfaces").IAdtServiceBinding;
|
|
27
|
+
getBehaviorDefinition(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IBehaviorDefinitionConfig, import("@mcp-abap-adt/interfaces").IBehaviorDefinitionState>;
|
|
28
|
+
getBehaviorImplementation(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IBehaviorImplementationConfig, import("@mcp-abap-adt/interfaces").IBehaviorImplementationState>;
|
|
29
|
+
getMetadataExtension(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IMetadataExtensionConfig, import("@mcp-abap-adt/interfaces").IMetadataExtensionState>;
|
|
30
|
+
getEnhancement(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IEnhancementConfig, import("@mcp-abap-adt/interfaces").IEnhancementState>;
|
|
31
|
+
getUnitTest(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").IUnitTestConfig, import("@mcp-abap-adt/interfaces").IUnitTestState>;
|
|
32
|
+
getCdsUnitTest(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ICdsUnitTestConfig, import("@mcp-abap-adt/interfaces").ICdsUnitTestState>;
|
|
33
33
|
getRequest(): import("../core/transport").AdtRequest;
|
|
34
34
|
getUtils(): import("../core/shared").AdtUtils;
|
|
35
|
-
getLocalTestClass(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
36
|
-
getLocalTypes(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
37
|
-
getLocalDefinitions(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
38
|
-
getLocalMacros(): import("@mcp-abap-adt/interfaces").IAdtObject<import("
|
|
35
|
+
getLocalTestClass(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ILocalTestClassConfig, import("@mcp-abap-adt/interfaces").IClassState>;
|
|
36
|
+
getLocalTypes(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ILocalTypesConfig, import("@mcp-abap-adt/interfaces").IClassState>;
|
|
37
|
+
getLocalDefinitions(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ILocalDefinitionsConfig, import("@mcp-abap-adt/interfaces").IClassState>;
|
|
38
|
+
getLocalMacros(): import("@mcp-abap-adt/interfaces").IAdtObject<import("@mcp-abap-adt/interfaces").ILocalMacrosConfig, import("@mcp-abap-adt/interfaces").IClassState>;
|
|
39
39
|
batchExecute(): Promise<IAdtResponse[]>;
|
|
40
40
|
reset(): void;
|
|
41
41
|
getRecorder(): BatchRecordingConnection;
|
|
@@ -1,31 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export interface ICreateAccessControlParams {
|
|
3
|
-
access_control_name: string;
|
|
4
|
-
description?: string;
|
|
5
|
-
package_name: string;
|
|
6
|
-
transport_request?: string;
|
|
7
|
-
masterSystem?: string;
|
|
8
|
-
responsible?: string;
|
|
9
|
-
masterLanguage?: string;
|
|
10
|
-
}
|
|
11
|
-
export interface IUpdateAccessControlParams {
|
|
12
|
-
access_control_name: string;
|
|
13
|
-
source_code: string;
|
|
14
|
-
transport_request?: string;
|
|
15
|
-
}
|
|
16
|
-
export interface IDeleteAccessControlParams {
|
|
17
|
-
access_control_name: string;
|
|
18
|
-
transport_request?: string;
|
|
19
|
-
}
|
|
20
|
-
export interface IAccessControlConfig {
|
|
21
|
-
accessControlName: string;
|
|
22
|
-
masterLanguage?: string;
|
|
23
|
-
packageName?: string;
|
|
24
|
-
transportRequest?: string;
|
|
25
|
-
description?: string;
|
|
26
|
-
sourceCode?: string;
|
|
27
|
-
}
|
|
28
|
-
export interface IAccessControlState extends IAdtObjectState {
|
|
29
|
-
readSourceResult?: IAdtResponse;
|
|
30
|
-
}
|
|
1
|
+
export type { IAccessControlConfig, IAccessControlState, ICreateAccessControlParams, IDeleteAccessControlParams, IUpdateAccessControlParams, } from '@mcp-abap-adt/interfaces';
|
|
31
2
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/accessControl/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/accessControl/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,36 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* AppendStructure (TABL/DS append) module type definitions
|
|
3
|
-
*/
|
|
4
|
-
import type { IAdtObjectState } from '@mcp-abap-adt/interfaces';
|
|
5
|
-
export interface ICreateAppendStructureParams {
|
|
6
|
-
append_structure_name: string;
|
|
7
|
-
base_object: string;
|
|
8
|
-
description?: string;
|
|
9
|
-
package_name: string;
|
|
10
|
-
transport_request?: string;
|
|
11
|
-
masterSystem?: string;
|
|
12
|
-
responsible?: string;
|
|
13
|
-
masterLanguage?: string;
|
|
14
|
-
}
|
|
15
|
-
export interface IUpdateAppendStructureParams {
|
|
16
|
-
append_structure_name: string;
|
|
17
|
-
source_code: string;
|
|
18
|
-
transport_request?: string;
|
|
19
|
-
}
|
|
20
|
-
export interface IDeleteAppendStructureParams {
|
|
21
|
-
append_structure_name: string;
|
|
22
|
-
transport_request?: string;
|
|
23
|
-
}
|
|
24
|
-
export interface IAppendStructureConfig {
|
|
25
|
-
appendStructureName: string;
|
|
26
|
-
baseObject?: string;
|
|
27
|
-
masterLanguage?: string;
|
|
28
|
-
packageName?: string;
|
|
29
|
-
transportRequest?: string;
|
|
30
|
-
description?: string;
|
|
31
|
-
sourceCode?: string;
|
|
32
|
-
}
|
|
33
|
-
export interface IAppendStructureState extends IAdtObjectState {
|
|
34
|
-
validationSupported?: boolean;
|
|
35
|
-
}
|
|
1
|
+
export type { IAppendStructureConfig, IAppendStructureState, ICreateAppendStructureParams, IDeleteAppendStructureParams, IUpdateAppendStructureParams, } from '@mcp-abap-adt/interfaces';
|
|
36
2
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/appendStructure/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/appendStructure/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,52 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AuthorizationField (SUSO / AUTH) module type definitions
|
|
3
3
|
*/
|
|
4
|
-
|
|
5
|
-
export interface ICreateAuthorizationFieldParams {
|
|
6
|
-
authorization_field_name: string;
|
|
7
|
-
description?: string;
|
|
8
|
-
package_name: string;
|
|
9
|
-
transport_request?: string;
|
|
10
|
-
master_system?: string;
|
|
11
|
-
responsible?: string;
|
|
12
|
-
field_name?: string;
|
|
13
|
-
roll_name?: string;
|
|
14
|
-
check_table?: string;
|
|
15
|
-
exit_fb?: string;
|
|
16
|
-
abap_language_version?: string;
|
|
17
|
-
search?: string;
|
|
18
|
-
objexit?: string;
|
|
19
|
-
domname?: string;
|
|
20
|
-
outputlen?: string;
|
|
21
|
-
convexit?: string;
|
|
22
|
-
orglvlinfo?: string;
|
|
23
|
-
col_searchhelp?: string;
|
|
24
|
-
col_searchhelp_name?: string;
|
|
25
|
-
col_searchhelp_descr?: string;
|
|
26
|
-
}
|
|
27
|
-
export interface IAuthorizationFieldConfig {
|
|
28
|
-
authorizationFieldName: string;
|
|
29
|
-
packageName?: string;
|
|
30
|
-
description?: string;
|
|
31
|
-
transportRequest?: string;
|
|
32
|
-
masterSystem?: string;
|
|
33
|
-
responsible?: string;
|
|
34
|
-
fieldName?: string;
|
|
35
|
-
rollName?: string;
|
|
36
|
-
checkTable?: string;
|
|
37
|
-
exitFb?: string;
|
|
38
|
-
abapLanguageVersion?: string;
|
|
39
|
-
search?: string;
|
|
40
|
-
objexit?: string;
|
|
41
|
-
domname?: string;
|
|
42
|
-
outputlen?: string;
|
|
43
|
-
convexit?: string;
|
|
44
|
-
orglvlinfo?: string;
|
|
45
|
-
colSearchhelp?: string;
|
|
46
|
-
colSearchhelpName?: string;
|
|
47
|
-
colSearchhelpDescr?: string;
|
|
48
|
-
onLock?: (lockHandle: string) => void;
|
|
49
|
-
}
|
|
50
|
-
export interface IAuthorizationFieldState extends IAdtObjectState {
|
|
51
|
-
}
|
|
4
|
+
export type { IAuthorizationFieldConfig, IAuthorizationFieldState, ICreateAuthorizationFieldParams, } from '@mcp-abap-adt/interfaces';
|
|
52
5
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/authorizationField/types.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/authorizationField/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,yBAAyB,EACzB,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,129 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* Implementation type for Behavior Definition
|
|
4
|
-
*/
|
|
5
|
-
export type BehaviorDefinitionImplementationType = 'Managed' | 'Unmanaged' | 'Abstract' | 'Projection';
|
|
6
|
-
/**
|
|
7
|
-
* Parameters for validating a behavior definition before creation
|
|
8
|
-
*/
|
|
9
|
-
export interface IBehaviorDefinitionValidationParams {
|
|
10
|
-
/** Name of the behavior definition object */
|
|
11
|
-
objname: string;
|
|
12
|
-
/** Root entity name */
|
|
13
|
-
rootEntity: string;
|
|
14
|
-
/** Description of the behavior definition */
|
|
15
|
-
description: string;
|
|
16
|
-
/** Package name where the object will be created */
|
|
17
|
-
package: string;
|
|
18
|
-
/** Implementation type (Managed, Unmanaged, Abstract, Projection) */
|
|
19
|
-
implementationType: BehaviorDefinitionImplementationType;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Validation result
|
|
23
|
-
*/
|
|
24
|
-
export interface IValidationResult {
|
|
25
|
-
severity: 'OK' | 'ERROR' | 'WARNING';
|
|
26
|
-
shortText?: string;
|
|
27
|
-
longText?: string;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Parameters for creating a behavior definition
|
|
31
|
-
*/
|
|
32
|
-
export interface IBehaviorDefinitionCreateParams {
|
|
33
|
-
/** Name of the behavior definition */
|
|
34
|
-
name: string;
|
|
35
|
-
/** Description */
|
|
36
|
-
description: string;
|
|
37
|
-
/** Package name */
|
|
38
|
-
package: string;
|
|
39
|
-
/** Implementation type */
|
|
40
|
-
implementationType: BehaviorDefinitionImplementationType;
|
|
41
|
-
/** Language (default: EN) */
|
|
42
|
-
language?: string;
|
|
43
|
-
/** Responsible user */
|
|
44
|
-
responsible?: string;
|
|
45
|
-
/** Master system */
|
|
46
|
-
masterSystem?: string;
|
|
47
|
-
/** Transport request number */
|
|
48
|
-
transportRequest?: string;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Parameters for updating a behavior definition
|
|
52
|
-
*/
|
|
53
|
-
export interface IUpdateBehaviorDefinitionParams {
|
|
54
|
-
/** Name of the behavior definition */
|
|
55
|
-
name: string;
|
|
56
|
-
/** Source code */
|
|
57
|
-
sourceCode: string;
|
|
58
|
-
/** Lock handle from lock operation */
|
|
59
|
-
lockHandle: string;
|
|
60
|
-
/** Optional transport request number */
|
|
61
|
-
transportRequest?: string;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Lock result containing lock handle
|
|
65
|
-
*/
|
|
66
|
-
export interface ILockResult {
|
|
67
|
-
lockHandle: string;
|
|
68
|
-
corrnr?: string;
|
|
69
|
-
corruser?: string;
|
|
70
|
-
corrtext?: string;
|
|
71
|
-
isLocal?: boolean;
|
|
72
|
-
isLinkUp?: boolean;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Check reporter type
|
|
76
|
-
*/
|
|
77
|
-
export type CheckReporter = 'bdefImplementationCheck' | 'abapCheckRun';
|
|
78
|
-
/**
|
|
79
|
-
* Check message from validation
|
|
80
|
-
*/
|
|
81
|
-
export interface ICheckMessage {
|
|
82
|
-
uri: string;
|
|
83
|
-
type: 'E' | 'W' | 'I' | 'S';
|
|
84
|
-
shortText: string;
|
|
85
|
-
code: string;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Check run result
|
|
89
|
-
*/
|
|
90
|
-
export interface ICheckRunResult {
|
|
91
|
-
reporter: CheckReporter;
|
|
92
|
-
triggeringUri: string;
|
|
93
|
-
status: string;
|
|
94
|
-
statusText: string;
|
|
95
|
-
messages?: ICheckMessage[];
|
|
96
|
-
}
|
|
97
|
-
export interface IBehaviorDefinitionConfig {
|
|
98
|
-
name: string;
|
|
99
|
-
masterLanguage?: string;
|
|
100
|
-
packageName?: string;
|
|
101
|
-
transportRequest?: string;
|
|
102
|
-
description?: string;
|
|
103
|
-
implementationType?: 'Managed' | 'Unmanaged' | 'Abstract' | 'Projection';
|
|
104
|
-
rootEntity?: string;
|
|
105
|
-
sourceCode?: string;
|
|
106
|
-
onLock?: (lockHandle: string) => void;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* State maintained by the Behavior Definition Builder
|
|
110
|
-
*/
|
|
111
|
-
import type { IAdtObjectState } from '@mcp-abap-adt/interfaces';
|
|
112
|
-
/**
|
|
113
|
-
* State maintained by the Behavior Definition Builder
|
|
114
|
-
*/
|
|
115
|
-
export interface IBehaviorDefinitionState extends IAdtObjectState {
|
|
116
|
-
/** Name of the behavior definition */
|
|
117
|
-
name?: string;
|
|
118
|
-
/** Lock result */
|
|
119
|
-
lockResult?: AxiosResponse<unknown>;
|
|
120
|
-
/** Update source result (separate from updateResult) */
|
|
121
|
-
updateSourceResult?: AxiosResponse<unknown>;
|
|
122
|
-
/** Check results (array for multiple checks) */
|
|
123
|
-
checkResults?: AxiosResponse<unknown>[];
|
|
124
|
-
/** Delete check result */
|
|
125
|
-
deleteCheckResult?: AxiosResponse<unknown>;
|
|
126
|
-
/** Validation result */
|
|
127
|
-
validationResult?: AxiosResponse<unknown>;
|
|
128
|
-
}
|
|
1
|
+
export type { BehaviorDefinitionImplementationType, CheckReporter, IBehaviorDefinitionConfig, IBehaviorDefinitionCreateParams, IBehaviorDefinitionState, IBehaviorDefinitionValidationParams, ICheckMessage, ICheckRunResult, ILockResult, IUpdateBehaviorDefinitionParams, IValidationResult, } from '@mcp-abap-adt/interfaces';
|
|
129
2
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/behaviorDefinition/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/behaviorDefinition/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oCAAoC,EACpC,aAAa,EACb,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,mCAAmC,EACnC,aAAa,EACb,eAAe,EACf,WAAW,EACX,+BAA+B,EAC/B,iBAAiB,GAClB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,33 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Behavior Implementation module type definitions
|
|
3
3
|
*/
|
|
4
|
-
|
|
5
|
-
export interface ICreateBehaviorImplementationParams {
|
|
6
|
-
class_name: string;
|
|
7
|
-
description?: string;
|
|
8
|
-
package_name: string;
|
|
9
|
-
transport_request?: string;
|
|
10
|
-
master_system?: string;
|
|
11
|
-
responsible?: string;
|
|
12
|
-
behavior_definition: string;
|
|
13
|
-
}
|
|
14
|
-
export interface IBehaviorImplementationConfig {
|
|
15
|
-
className: string;
|
|
16
|
-
description?: string;
|
|
17
|
-
packageName?: string;
|
|
18
|
-
transportRequest?: string;
|
|
19
|
-
behaviorDefinition: string;
|
|
20
|
-
sourceCode?: string;
|
|
21
|
-
/**
|
|
22
|
-
* Custom code for implementations include (local handler class) - used in updateImplementations()
|
|
23
|
-
* If provided, takes precedence over sourceCode and default generated code.
|
|
24
|
-
* Should contain the complete local handler class definition and implementation.
|
|
25
|
-
* Example: "CLASS lhc_ZOK_I_CDS_TEST DEFINITION INHERITING FROM cl_abap_behavior_handler..."
|
|
26
|
-
*/
|
|
27
|
-
implementationCode?: string;
|
|
28
|
-
masterSystem?: string;
|
|
29
|
-
responsible?: string;
|
|
30
|
-
}
|
|
31
|
-
export interface IBehaviorImplementationState extends IAdtObjectState {
|
|
32
|
-
}
|
|
4
|
+
export type { IBehaviorImplementationConfig, IBehaviorImplementationState, ICreateBehaviorImplementationParams, } from '@mcp-abap-adt/interfaces';
|
|
33
5
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/behaviorImplementation/types.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/behaviorImplementation/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,0BAA0B,CAAC"}
|
|
@@ -30,6 +30,9 @@ export declare class AdtClass implements IAdtObject<IClassConfig, IClassState> {
|
|
|
30
30
|
protected readonly contentTypes?: IAdtContentTypes;
|
|
31
31
|
private readonly lockTracker;
|
|
32
32
|
readonly objectType: string;
|
|
33
|
+
private readonly capCtx;
|
|
34
|
+
private readonly lockCap;
|
|
35
|
+
private readonly versionsCap;
|
|
33
36
|
constructor(connection: IAbapConnection, logger?: ILogger, systemContext?: IAdtSystemContext, contentTypes?: IAdtContentTypes, lockRegistry?: LockRegistry);
|
|
34
37
|
/**
|
|
35
38
|
* Validate class configuration before creation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtClass.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtClass.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAGL,KAAK,YAAY,IAAI,aAAa,EAElC,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,OAAO,EACZ,KAAK,cAAc,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"AdtClass.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtClass.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,6 +54,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
54
54
|
exports.AdtClass = void 0;
|
|
55
55
|
const interfaces_1 = require("@mcp-abap-adt/interfaces");
|
|
56
56
|
const internalUtils_1 = require("../../utils/internalUtils");
|
|
57
|
+
const capabilities_1 = require("../shared/capabilities");
|
|
57
58
|
const LockRegistry_1 = require("../shared/LockRegistry");
|
|
58
59
|
const activation_1 = require("./activation");
|
|
59
60
|
const check_1 = require("./check");
|
|
@@ -73,6 +74,36 @@ class AdtClass {
|
|
|
73
74
|
contentTypes;
|
|
74
75
|
lockTracker;
|
|
75
76
|
objectType = 'Class';
|
|
77
|
+
// LAZY thunk (not a getter that snapshots): captures `this` but reads
|
|
78
|
+
// this.connection/this.logger only when invoked, after the constructor has
|
|
79
|
+
// run — so building the capabilities below as class fields is safe.
|
|
80
|
+
capCtx = () => ({
|
|
81
|
+
connection: this.connection,
|
|
82
|
+
logger: this.logger,
|
|
83
|
+
});
|
|
84
|
+
lockCap = new capabilities_1.LockCapability(this.capCtx, {
|
|
85
|
+
nameOf: (c) => {
|
|
86
|
+
if (!c.className)
|
|
87
|
+
throw new Error('Class name is required');
|
|
88
|
+
return c.className;
|
|
89
|
+
},
|
|
90
|
+
acquire: async (ctx, name) => ({
|
|
91
|
+
lockHandle: await (0, lock_1.lockClass)(ctx.connection, name),
|
|
92
|
+
}),
|
|
93
|
+
release: async (ctx, name, handle) => {
|
|
94
|
+
const result = await (0, unlock_1.unlockClass)(ctx.connection, name, handle);
|
|
95
|
+
return { unlockResult: result, errors: [] };
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
versionsCap = new capabilities_1.VersionsCapability(this.capCtx, {
|
|
99
|
+
nameOf: (c) => {
|
|
100
|
+
if (!c.className)
|
|
101
|
+
throw new Error('className is required');
|
|
102
|
+
return c.className;
|
|
103
|
+
},
|
|
104
|
+
list: (ctx, name) => (0, versions_1.getClassIncludeVersions)(ctx.connection, name, 'main'),
|
|
105
|
+
source: (ctx, uri) => (0, versions_1.getClassVersionSource)(ctx.connection, uri),
|
|
106
|
+
});
|
|
76
107
|
constructor(connection, logger, systemContext, contentTypes, lockRegistry) {
|
|
77
108
|
this.connection = connection;
|
|
78
109
|
this.logger = logger;
|
|
@@ -537,33 +568,17 @@ class AdtClass {
|
|
|
537
568
|
* Lock class
|
|
538
569
|
*/
|
|
539
570
|
async lock(config) {
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
// Stay stateful while the lock is held — the caller must release it via
|
|
544
|
-
// unlock(), which restores stateless. On older BASIS (#106) the lock handle
|
|
545
|
-
// is only valid inside stateful requests, so a stateless write between lock
|
|
546
|
-
// and unlock fails with 423.
|
|
547
|
-
this.connection.setSessionType('stateful');
|
|
548
|
-
const lockHandle = await (0, lock_1.lockClass)(this.connection, config.className);
|
|
549
|
-
this.lockTracker.track(config.className, lockHandle);
|
|
550
|
-
return lockHandle;
|
|
571
|
+
const handle = await this.lockCap.lock(config);
|
|
572
|
+
this.lockTracker.track(config.className, handle);
|
|
573
|
+
return handle;
|
|
551
574
|
}
|
|
552
575
|
/**
|
|
553
576
|
* Unlock class
|
|
554
577
|
*/
|
|
555
578
|
async unlock(config, lockHandle) {
|
|
556
|
-
|
|
557
|
-
throw new Error('Class name is required');
|
|
558
|
-
}
|
|
559
|
-
this.connection.setSessionType('stateful');
|
|
560
|
-
const result = await (0, unlock_1.unlockClass)(this.connection, config.className, lockHandle);
|
|
561
|
-
this.connection.setSessionType('stateless');
|
|
579
|
+
const state = await this.lockCap.unlock(config, lockHandle);
|
|
562
580
|
this.lockTracker.untrack(config.className);
|
|
563
|
-
return
|
|
564
|
-
unlockResult: result,
|
|
565
|
-
errors: [],
|
|
566
|
-
};
|
|
581
|
+
return state;
|
|
567
582
|
}
|
|
568
583
|
/**
|
|
569
584
|
* Lock test classes (local classes) for modification
|
|
@@ -698,12 +713,10 @@ class AdtClass {
|
|
|
698
713
|
}
|
|
699
714
|
}
|
|
700
715
|
getVersions(config) {
|
|
701
|
-
|
|
702
|
-
throw new Error('className is required');
|
|
703
|
-
return (0, versions_1.getClassIncludeVersions)(this.connection, config.className, 'main');
|
|
716
|
+
return this.versionsCap.getVersions(config);
|
|
704
717
|
}
|
|
705
718
|
getVersionSource(contentUri) {
|
|
706
|
-
return
|
|
719
|
+
return this.versionsCap.getVersionSource(contentUri);
|
|
707
720
|
}
|
|
708
721
|
/** Shared by local-include subclasses to target their own include. */
|
|
709
722
|
getIncludeVersions(className, includeType) {
|
|
@@ -4,15 +4,11 @@
|
|
|
4
4
|
* Local definitions are type declarations needed for components in the private section.
|
|
5
5
|
* All operations require the parent class to be locked.
|
|
6
6
|
*/
|
|
7
|
-
import type { IAdtOperationOptions, IObjectVersion } from '@mcp-abap-adt/interfaces';
|
|
7
|
+
import type { IAdtOperationOptions, ILocalDefinitionsConfig, IObjectVersion } from '@mcp-abap-adt/interfaces';
|
|
8
8
|
import type { IReadOptions } from '../shared/types';
|
|
9
9
|
import { AdtClass } from './AdtClass';
|
|
10
10
|
import type { IClassState } from './types';
|
|
11
|
-
export
|
|
12
|
-
className: string;
|
|
13
|
-
definitionsCode?: string;
|
|
14
|
-
transportRequest?: string;
|
|
15
|
-
}
|
|
11
|
+
export type { ILocalDefinitionsConfig } from '@mcp-abap-adt/interfaces';
|
|
16
12
|
export declare class AdtLocalDefinitions extends AdtClass {
|
|
17
13
|
readonly objectType: string;
|
|
18
14
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtLocalDefinitions.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtLocalDefinitions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAEV,oBAAoB,EACpB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"AdtLocalDefinitions.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtLocalDefinitions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAEV,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,YAAY,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAExE,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,SAAgB,UAAU,EAAE,MAAM,CAAsB;IAExD;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACvC,OAAO,CAAC,WAAW,CAAC;IAsBvB;;;OAGG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACxC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,WAAW,CAAC;IAgFvB;;OAEG;IACG,IAAI,CACR,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACxC,OAAO,GAAE,QAAQ,GAAG,UAAqB,EACzC,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IA+BnC;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACxC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,WAAW,CAAC;IAyGvB;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAY5E;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACvC,OAAO,CAAC,WAAW,CAAC;IAQvB;;OAEG;IACG,KAAK,CACT,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACxC,OAAO,GAAE,QAAQ,GAAG,UAAuB,GAC1C,OAAO,CAAC,WAAW,CAAC;IA4BvB,WAAW,CACT,MAAM,EAAE,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,GACrC,OAAO,CAAC,cAAc,EAAE,CAAC;CAI7B"}
|