@mcp-abap-adt/interfaces-adt 9.0.0 → 11.0.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/CHANGELOG.md +80 -0
- package/README.md +97 -10
- package/dist/adt/IAdtAbapGit.d.ts +56 -13
- package/dist/adt/IAdtAbapGit.d.ts.map +1 -1
- package/dist/adt/IAdtCapabilities.d.ts +20 -7
- package/dist/adt/IAdtCapabilities.d.ts.map +1 -1
- package/dist/adt/IAdtFeatureToggle.d.ts +48 -7
- package/dist/adt/IAdtFeatureToggle.d.ts.map +1 -1
- package/dist/adt/IAdtObject.d.ts +21 -4
- package/dist/adt/IAdtObject.d.ts.map +1 -1
- package/dist/adt/IAdtResponse.d.ts +1 -1
- package/dist/adt/IAdtResponse.d.ts.map +1 -1
- package/dist/adt/IAdtTransport.d.ts +35 -9
- package/dist/adt/IAdtTransport.d.ts.map +1 -1
- package/dist/adt/IAdtUnitTest.d.ts +14 -4
- package/dist/adt/IAdtUnitTest.d.ts.map +1 -1
- package/dist/adt/IAdtUtilities.d.ts +84 -21
- package/dist/adt/IAdtUtilities.d.ts.map +1 -1
- package/dist/execution/IAdtRunnable.d.ts +23 -10
- package/dist/execution/IAdtRunnable.d.ts.map +1 -1
- package/dist/execution/IAdtRunnable.js +15 -0
- package/dist/execution/ITraceScheduling.d.ts +22 -6
- package/dist/execution/ITraceScheduling.d.ts.map +1 -1
- package/dist/feeds/IFeedRepository.d.ts +26 -7
- package/dist/feeds/IFeedRepository.d.ts.map +1 -1
- package/dist/index.d.ts +7 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/runtime/IApplicationLog.d.ts +14 -4
- package/dist/runtime/IApplicationLog.d.ts.map +1 -1
- package/dist/runtime/IAtcLog.d.ts +10 -3
- package/dist/runtime/IAtcLog.d.ts.map +1 -1
- package/dist/runtime/IAtcRun.d.ts +10 -3
- package/dist/runtime/IAtcRun.d.ts.map +1 -1
- package/dist/runtime/ICrossTrace.d.ts +22 -6
- package/dist/runtime/ICrossTrace.d.ts.map +1 -1
- package/dist/runtime/IDdicActivation.d.ts +6 -2
- package/dist/runtime/IDdicActivation.d.ts.map +1 -1
- package/dist/runtime/IGatewayErrorLog.d.ts +10 -3
- package/dist/runtime/IGatewayErrorLog.d.ts.map +1 -1
- package/dist/runtime/IRuntimeDumps.d.ts +14 -4
- package/dist/runtime/IRuntimeDumps.d.ts.map +1 -1
- package/dist/runtime/ISt05Trace.d.ts +10 -3
- package/dist/runtime/ISt05Trace.d.ts.map +1 -1
- package/dist/runtime/ISystemMessages.d.ts +10 -3
- package/dist/runtime/ISystemMessages.d.ts.map +1 -1
- package/dist/runtime/ITrace.d.ts +41 -14
- package/dist/runtime/ITrace.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/connection/IAbapConnection.d.ts +0 -65
- package/dist/connection/IAbapConnection.d.ts.map +0 -1
- package/dist/connection/IAbapConnection.js +0 -2
- package/dist/connection/IAbapRequestOptions.d.ts +0 -9
- package/dist/connection/IAbapRequestOptions.d.ts.map +0 -1
- package/dist/connection/IAbapRequestOptions.js +0 -2
- package/dist/connection/IConnectionCapabilities.d.ts +0 -217
- package/dist/connection/IConnectionCapabilities.d.ts.map +0 -1
- package/dist/connection/IConnectionCapabilities.js +0 -29
- package/dist/connection/ITimeoutConfig.d.ts +0 -15
- package/dist/connection/ITimeoutConfig.d.ts.map +0 -1
- package/dist/connection/ITimeoutConfig.js +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,86 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [11.0.0] - 2026-09-26
|
|
11
|
+
|
|
12
|
+
One request per member, each addressed by what the server gave the caller
|
|
13
|
+
(decision 37), and the ABAP connection in a package of its own (decision 38).
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- **`IAdtTransportSearchConfigurations<TConfigurations>`** — the saved
|
|
18
|
+
transport searches, one member. `IAdtRequest.list` now requires the
|
|
19
|
+
`configUri` this answers.
|
|
20
|
+
- **`IFeatureToggleObjectResults`** — one result slot per answer a feature
|
|
21
|
+
toggle gives: `switched`, `runtimeState`, `checkState`, `source`.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- **BREAKING: `IListTransportsOptions.configUri` is required**, and so is
|
|
26
|
+
`IAdtRequest.list`'s options. An implementation left without one read the
|
|
27
|
+
configurations and chose; the choice is the caller's.
|
|
28
|
+
- **BREAKING: `IAbapGitUnlinkArgs` takes `repositoryId`** — the key
|
|
29
|
+
`listRepos` reports — instead of `package`.
|
|
30
|
+
- **BREAKING: `IAdtAbapGitClient.getErrorLog` takes `logLink`** — the href
|
|
31
|
+
`listRepos` reports — instead of a package name.
|
|
32
|
+
- **BREAKING: `IFeatureToggleObject<TState>` is
|
|
33
|
+
`IFeatureToggleObject<R extends IFeatureToggleObjectResults>`.** Each member
|
|
34
|
+
answers its own slot rather than one type shared by four documents.
|
|
35
|
+
|
|
36
|
+
### Removed
|
|
37
|
+
|
|
38
|
+
- **BREAKING: the ABAP connection moved to
|
|
39
|
+
`@mcp-abap-adt/interfaces-adt-connection` 1.0.0**, unchanged and not
|
|
40
|
+
re-exported: `IAbapConnection`, `IAdtWireResponse`, `IAbapRequestOptions`,
|
|
41
|
+
`ISessionLifecycleAware`, `ICriticalSection`, `IRequestProfiling`,
|
|
42
|
+
`IDeferredResponseConnection`, `ADT_SESSION_ERROR`, `AdtSessionErrorCode`,
|
|
43
|
+
`ITimeoutConfig`. This package now depends on that one instead of
|
|
44
|
+
`interfaces-network`. A connector depends on the connection alone and stops
|
|
45
|
+
following every major here. Decision 38.
|
|
46
|
+
- **BREAKING: `IAdtAbapGitClient.getRepo`**, and with it the second type
|
|
47
|
+
parameter: `IAdtAbapGitClient<TRepos, TErrorLog, TPull, TExternalRepo>`. It
|
|
48
|
+
filtered `listRepos`, which is a reading; a caller takes the entry from
|
|
49
|
+
`listRepos`.
|
|
50
|
+
|
|
51
|
+
## [10.0.0] - 2026-09-26
|
|
52
|
+
|
|
53
|
+
The error strategy is taken with the call by **every** member that answers an
|
|
54
|
+
`IAdtResponse`, not only by the 17 that did. Decision 36.
|
|
55
|
+
|
|
56
|
+
### Added
|
|
57
|
+
|
|
58
|
+
- **`IAdtAnalyseOptions<E>`** — `analyse`, and nothing else. The options a
|
|
59
|
+
member takes when it has no write to carry. `IAdtOperationOptions` extends
|
|
60
|
+
it, so everything that accepted `IAdtOperationOptions` still does.
|
|
61
|
+
- **`__typechecks__/errorStrategyOnEveryMember.ts`** — fails to compile if a
|
|
62
|
+
member of any of the 45 contracts that answer an `IAdtResponse` stops taking
|
|
63
|
+
`analyse`. Counted with the compiler: 96 members.
|
|
64
|
+
|
|
65
|
+
### Changed
|
|
66
|
+
|
|
67
|
+
- **BREAKING: 79 members take `options` with `analyse`**, as the overload pair
|
|
68
|
+
the capability atoms already had — one with `analyse` required, inferring the
|
|
69
|
+
failure type `E` into `IAdtResponse<T, E>`, one plain. Across
|
|
70
|
+
`IAdtLockable`, `IAdtVersionable`, `IFeatureToggleObject`, `IAdtRequest.list`,
|
|
71
|
+
`ITestRunInformation`, `ICdsTestDoubleCheckable`, every `IAdtUtilities` atom
|
|
72
|
+
(group activation and deletion among them), `IAdtRunnable` and both profiler
|
|
73
|
+
atoms, `ITraceScheduling`, `IFeedRepository`, `IApplicationLog`, `IAtcLog`,
|
|
74
|
+
`IAtcRunStatusReadable`, `IAtcFindings`, `ICrossTrace`, `IDdicActivation`,
|
|
75
|
+
`IGatewayErrorLog`, `IRuntimeDumps`, `ISt05Trace`, `ISystemMessages`,
|
|
76
|
+
`ITraceListing`, `ITraceReading`, `ITraceDeletion` and `IAdtAbapGitClient`.
|
|
77
|
+
Where a member already had an options object, `analyse` joins it; where it
|
|
78
|
+
had none, `options` is a new last parameter.
|
|
79
|
+
- **BREAKING: `IAdtRunnable.run` always has a second parameter.** A flavour
|
|
80
|
+
without options (`TOptions = never`) took exactly its target; it now takes
|
|
81
|
+
`options?` carrying `analyse`.
|
|
82
|
+
- **BREAKING: `ViewArgs` always yields an options parameter** — `analyse` alone
|
|
83
|
+
for a view whose options are `void`, beside the view's own otherwise. It takes
|
|
84
|
+
a third type parameter, the failure type, defaulting to `IAdtError`.
|
|
85
|
+
- **`ITraceListing` takes a third type parameter, `TList`**, defaulting to
|
|
86
|
+
`TEntry[]`, and `list` answers it. The array was fixed in the contract, so a
|
|
87
|
+
result strategy could change an entry but not that the answer was a list of
|
|
88
|
+
them. The default keeps every existing instantiation meaning what it did.
|
|
89
|
+
|
|
10
90
|
## [9.0.0] - 2026-09-23
|
|
11
91
|
|
|
12
92
|
### Added
|
package/README.md
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# @mcp-abap-adt/interfaces-adt
|
|
2
2
|
|
|
3
|
-
ADT contracts: object operations,
|
|
3
|
+
ADT contracts: object operations, runtime analysis, execution, feeds and service bindings. The ABAP connection they are sent through is [`interfaces-adt-connection`](../interfaces-adt-connection).
|
|
4
4
|
|
|
5
5
|
## TL;DR
|
|
6
6
|
|
|
7
|
-
- **Only ADT.** The test is who imports this package: `@mcp-abap-adt/adt-clients` and whatever replaces its objects, and nobody else. Measured against every repository in development — the only others reaching in
|
|
8
|
-
- What it holds: ADT object operations for 31 object types,
|
|
7
|
+
- **Only ADT.** The test is who imports this package: `@mcp-abap-adt/adt-clients` and whatever replaces its objects, and nobody else. Measured against every repository in development before 11.0.0 — the only others reaching in were `gcts-client` and `cloud-llm-hub`, for `IAbapConnection`, `IAbapRequestOptions` and `IAdtResponse`. Since 11.0.0 the first two come from `interfaces-adt-connection`; `IAdtResponse` is still here.
|
|
8
|
+
- What it holds: ADT object operations for 31 object types, runtime analysis, execution, feeds, service bindings, `IAdtResponse` and the error codes. **The ABAP connection** — `IAbapConnection`, `IAdtWireResponse`, its capability atoms, `ITimeoutConfig` — is [`interfaces-adt-connection`](../interfaces-adt-connection) since 11.0.0, and is not re-exported here.
|
|
9
9
|
- **What left, and where.** Every HTTP header name, the HTTP frame and `HttpError` → [`interfaces-network`](../interfaces-network). Cloud ALM → [`interfaces-calm`](../interfaces-calm). `XmlNode` → [`interfaces-utils`](../interfaces-utils). Authentication in general — credentials, OAuth grants, tokens, interactive login, SAML assertions, `AUTH_TYPE_JWT`/`BASIC` → [`interfaces-auth`](../interfaces-auth). Everything naming SAP or BTP — `ISapConfig`, `SapAuthType`, `SapConnectionType`, `IConfig`, `IConnectionConfig`, `IAuthorizationConfig`, `ICertificateMaterialLoader`, `IServiceKeyStore`, `ISessionStore`, `ITokenProviderResult`, the two validation results and `AUTH_TYPE_XSUAA` with its union → [`interfaces-auth-sap`](../interfaces-auth-sap). `ISessionState` and `ISessionStorage` are deleted, not moved.
|
|
10
|
-
- `IAdtWireResponse` extends `IHttpWireResponse` from `-network` and keeps the headers ADT sends (`sap-adt-location`, both spellings of `content-location`).
|
|
11
|
-
- Depends on `@mcp-abap-adt/interfaces-
|
|
10
|
+
- `IAdtWireResponse` extends `IHttpWireResponse` from `-network` and keeps the headers ADT sends (`sap-adt-location`, both spellings of `content-location`). It lives in `interfaces-adt-connection` since 11.0.0, name and shape unchanged.
|
|
11
|
+
- Depends on `@mcp-abap-adt/interfaces-adt-connection`, and on nothing else. Types and constants; no implementation.
|
|
12
12
|
|
|
13
13
|
## Install
|
|
14
14
|
|
|
@@ -21,14 +21,13 @@ npm install @mcp-abap-adt/interfaces-adt
|
|
|
21
21
|
| directory | files | what |
|
|
22
22
|
|---|---|---|
|
|
23
23
|
| `adt/` | 39 | the object contracts: capability atoms, the object types, `IAdtResponse`, `IAdtError`, the error codes, the transport request's object list |
|
|
24
|
-
| `connection/` | 4 | `IAbapConnection`, `IAbapRequestOptions`, the connection capability atoms, and `ITimeoutConfig` — here since 9.0.0, because `csrf` names an SAP operation rather than a transport primitive. `IAdtWireResponse` extends `IHttpWireResponse` from `-network` |
|
|
25
24
|
| `runtime/` | 11 | runtime analysis: `IProfiler`, the trace contracts (`ITraceListing`/`ITraceReading`, `ICrossTrace`, `ISt05Trace`), `IApplicationLog`, `IAtcLog` and the ATC run (`IAtcRunOptions`, `IAtcFindings`), `IDdicActivation`, `IGatewayErrorLog`, `IRuntimeDumps`, `ISystemMessages` |
|
|
26
25
|
| `execution/` | 3 | class and program execution, with profiling |
|
|
27
26
|
| `feeds/` | 2 | the ADT feed contracts |
|
|
28
27
|
| `service/` | 1 | service definitions and bindings |
|
|
29
28
|
| `shared/` | 1 | what more than one object type needs |
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
Six directories, all ADT. `connection/` left for `interfaces-adt-connection` in 11.0.0. `sap/`, `auth/`, `token/`, `session/`, `serviceKey/`, `store/`, `validation/` and `Headers.ts` were here until 9.0.0 and are listed above under what left; `__typechecks__/` holds 21 files that compile shapes this contract must and must not accept, and ships in no tarball.
|
|
32
31
|
|
|
33
32
|
The contract rules — what a member answers, how a strategy is supplied, how a contract is built — are in [`docs/architecture/ARCHITECTURE.md`](../../docs/architecture/ARCHITECTURE.md). Domain-by-domain documentation with examples used to sit in the facade's README; the facade is deleted, and each package documents its own contracts.
|
|
34
33
|
|
|
@@ -51,6 +50,93 @@ So `createTask` requires `targetUser` and `removeObject` requires `position`, an
|
|
|
51
50
|
|
|
52
51
|
`addObject` still takes an entry without a position — one that does not exist yet has none.
|
|
53
52
|
|
|
53
|
+
## Migrating to 11.0.0
|
|
54
|
+
|
|
55
|
+
Each member is one request, addressed by a value the server already gave you.
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
// Transport requests: name the saved search.
|
|
59
|
+
- await requests.list();
|
|
60
|
+
+ const configs = await searches.searchConfigurations(); // IAdtTransportSearchConfigurations
|
|
61
|
+
+ await requests.list({ configUri: /* the one you choose */ });
|
|
62
|
+
|
|
63
|
+
// abapGit: take the key and the log link from listRepos.
|
|
64
|
+
- await git.unlink({ package: 'ZPKG' });
|
|
65
|
+
- await git.getErrorLog('ZPKG');
|
|
66
|
+
- await git.getRepo('ZPKG');
|
|
67
|
+
+ await git.unlink({ repositoryId: repo.key });
|
|
68
|
+
+ await git.getErrorLog(repo.logLink);
|
|
69
|
+
+ // getRepo is gone: read listRepos and take the entry you want.
|
|
70
|
+
|
|
71
|
+
// Feature toggles: one result type per answer.
|
|
72
|
+
- IFeatureToggleObject<MyState>
|
|
73
|
+
+ IFeatureToggleObject<{ switched: void; runtimeState: MyState; checkState: MyCheck; source: string }>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**The connection moved.** Import it from its own package; nothing here
|
|
77
|
+
re-exports it.
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
- import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt';
|
|
81
|
+
+ import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
The same holds for `IAbapRequestOptions`, the capability atoms
|
|
85
|
+
(`ISessionLifecycleAware`, `ICriticalSection`, `IRequestProfiling`,
|
|
86
|
+
`IDeferredResponseConnection`), `ADT_SESSION_ERROR`/`AdtSessionErrorCode` and
|
|
87
|
+
`ITimeoutConfig`. A connector depends on that package alone.
|
|
88
|
+
|
|
89
|
+
`IAdtAbapGitClient` lost its second type parameter with `getRepo`. Decision 37
|
|
90
|
+
in `docs/architecture/DECISIONS.md` says why a member no longer looks up what a
|
|
91
|
+
caller can pass.
|
|
92
|
+
|
|
93
|
+
## Migrating to 10.0.0
|
|
94
|
+
|
|
95
|
+
Every member that answers an `IAdtResponse` takes the error strategy with the
|
|
96
|
+
call now — `options` carrying `analyse`. A **caller** changes nothing: the new
|
|
97
|
+
parameter is optional, and a call without it compiles as before. What changes is
|
|
98
|
+
that a caller *can* pass one everywhere:
|
|
99
|
+
|
|
100
|
+
```ts
|
|
101
|
+
const answer = await utils.deleteObjectsGroup(objects, transport, {
|
|
102
|
+
analyse: analyseDeletion, // reads del:isDeleted and every del:message
|
|
103
|
+
});
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
An **implementation** changes each member it offers from the list in the
|
|
107
|
+
changelog: accept the options, and hand `analyse` to whatever turns the answer
|
|
108
|
+
into an `IAdtResponse`.
|
|
109
|
+
|
|
110
|
+
```ts
|
|
111
|
+
// before
|
|
112
|
+
lock(config: Partial<TConfig>): Promise<IAdtResponse<string>>;
|
|
113
|
+
// after — the pair every atom has
|
|
114
|
+
lock<E extends IAdtError>(
|
|
115
|
+
config: Partial<TConfig>,
|
|
116
|
+
options: IAdtAnalyseOptions<E> & { analyse: IAnalyse<E> },
|
|
117
|
+
): Promise<IAdtResponse<string, E>>;
|
|
118
|
+
lock(config: Partial<TConfig>, options?: IAdtAnalyseOptions): Promise<IAdtResponse<string>>;
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
An implementation that keeps the old one-parameter signature still type-checks —
|
|
122
|
+
TypeScript accepts a function with fewer parameters — and silently drops the
|
|
123
|
+
caller's strategy. Test that it is honoured; the contract cannot.
|
|
124
|
+
|
|
125
|
+
Three signatures changed shape rather than growing a parameter:
|
|
126
|
+
|
|
127
|
+
- `IAdtRunnable.run` always has a second parameter; a flavour without options
|
|
128
|
+
gets `options?: IAdtAnalyseOptions`.
|
|
129
|
+
- `ViewArgs` always yields one, so `ITraceReading.read` on a view without
|
|
130
|
+
options takes `options?: IAdtAnalyseOptions`.
|
|
131
|
+
- `ITraceListing<TEntry, TOptions, TList = TEntry[]>` — `list` answers `TList`.
|
|
132
|
+
Existing instantiations keep their meaning.
|
|
133
|
+
|
|
134
|
+
An implementation also stops interpreting on its own: with no `analyse`, it
|
|
135
|
+
answers what the transport saw, and a refusal SAP wrote inside a 200 is a
|
|
136
|
+
document until a strategy reads it. Decision 36 in the repository's
|
|
137
|
+
`docs/architecture/DECISIONS.md` says why the error strategy travels with the
|
|
138
|
+
call while the result strategy is given at construction.
|
|
139
|
+
|
|
54
140
|
## Migrating to 9.0.0
|
|
55
141
|
|
|
56
142
|
Nothing changed shape. Every break is an import moving to the package that
|
|
@@ -88,9 +174,10 @@ contract with two names is something a consumer has to guess between: take
|
|
|
88
174
|
|
|
89
175
|
**Ranges, so an install resolves one copy of each package.** A range one major
|
|
90
176
|
behind is what npm answers by silently nesting a second copy, so a consumer on
|
|
91
|
-
this release takes `interfaces-network@^2.0.0
|
|
92
|
-
`interfaces-auth-sap
|
|
93
|
-
|
|
177
|
+
this release takes `interfaces-network@^2.0.0` and the current major of whichever
|
|
178
|
+
of `interfaces-auth`, `interfaces-auth-sap` and `interfaces-utils` it imports
|
|
179
|
+
from — at the time of writing `interfaces-auth@^2.0.0`, `interfaces-auth-sap@^1.0.1`
|
|
180
|
+
and `interfaces-utils@^1.1.0`.
|
|
94
181
|
|
|
95
182
|
Decision 35 in the repository's `docs/architecture/DECISIONS.md` says why each
|
|
96
183
|
name went where it did, and why the accepting package stopped deciding it.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { IAdtAnalyseOptions, IAnalyse } from './IAdtObject';
|
|
2
|
+
import type { IAdtError, IAdtResponse } from './IAdtResponse';
|
|
2
3
|
export interface IAbapGitLinkArgs {
|
|
3
4
|
package: string;
|
|
4
5
|
url: string;
|
|
@@ -15,7 +16,7 @@ export interface IAbapGitLinkArgs {
|
|
|
15
16
|
* left `R`. That is a wait on an asynchronous server job, and a wait is the
|
|
16
17
|
* caller's: how long to allow, how often to ask, whether to give up and what to
|
|
17
18
|
* do then are decisions about their application, not about ADT. They ask
|
|
18
|
-
* `
|
|
19
|
+
* `listRepos` in their own loop and read the repository they started.
|
|
19
20
|
*
|
|
20
21
|
* `pullLink` is the href the pull is posted to, which `listRepos` reports. The
|
|
21
22
|
* member used to list the repositories itself to find it — a second request,
|
|
@@ -29,8 +30,16 @@ export interface IAbapGitPullArgs {
|
|
|
29
30
|
remotePassword?: string;
|
|
30
31
|
transportRequest?: string;
|
|
31
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* What removing a repository link needs: the repository's own key.
|
|
35
|
+
*
|
|
36
|
+
* `DELETE /abapgit/repos/{key}` is addressed by the key `listRepos` reports
|
|
37
|
+
* (`abapgitrepo:key`). Until 11.0.0 this took the package and the member listed
|
|
38
|
+
* every repository to find the key — two requests, and a "not found" the
|
|
39
|
+
* library composed from its own lookup rather than anything SAP said.
|
|
40
|
+
*/
|
|
32
41
|
export interface IAbapGitUnlinkArgs {
|
|
33
|
-
|
|
42
|
+
repositoryId: string;
|
|
34
43
|
transportRequest?: string;
|
|
35
44
|
}
|
|
36
45
|
export interface IAbapGitExternalRepoCredentials {
|
|
@@ -41,20 +50,54 @@ export interface IAbapGitExternalRepoCredentials {
|
|
|
41
50
|
export interface IAdtAbapGitClientOptions {
|
|
42
51
|
contentTypeVersion?: 'v3' | 'v4';
|
|
43
52
|
}
|
|
44
|
-
|
|
45
|
-
|
|
53
|
+
/**
|
|
54
|
+
* One request per member, each addressed by what the server gave the caller.
|
|
55
|
+
*
|
|
56
|
+
* **`getRepo` left in 11.0.0.** It listed every repository and picked the one
|
|
57
|
+
* for a package — a filter over a document, which is the result strategy's to
|
|
58
|
+
* do, and a "not found" the library composed from its own search. A caller
|
|
59
|
+
* reads `listRepos` through the strategy of their choice and takes the entry
|
|
60
|
+
* they want.
|
|
61
|
+
*/
|
|
62
|
+
export interface IAdtAbapGitClient<TRepos, TErrorLog, TPull, TExternalRepo> {
|
|
63
|
+
link<E extends IAdtError>(args: IAbapGitLinkArgs, options: IAdtAnalyseOptions<E> & {
|
|
64
|
+
analyse: IAnalyse<E>;
|
|
65
|
+
}): Promise<IAdtResponse<void, E>>;
|
|
66
|
+
link(args: IAbapGitLinkArgs, options?: IAdtAnalyseOptions): Promise<IAdtResponse<void>>;
|
|
46
67
|
/**
|
|
47
68
|
* Start a pull — one POST to `args.pullLink`.
|
|
48
69
|
*
|
|
49
70
|
* It does not wait, and it does not look the link up. The caller lists the
|
|
50
|
-
* repositories once, keeps the link, posts, then polls `
|
|
51
|
-
* terms and reads `getErrorLog` if the status says to.
|
|
71
|
+
* repositories once, keeps the link, posts, then polls `listRepos` on their
|
|
72
|
+
* own terms and reads `getErrorLog` if the status says to.
|
|
73
|
+
*/
|
|
74
|
+
pull<E extends IAdtError>(args: IAbapGitPullArgs, options: IAdtAnalyseOptions<E> & {
|
|
75
|
+
analyse: IAnalyse<E>;
|
|
76
|
+
}): Promise<IAdtResponse<TPull, E>>;
|
|
77
|
+
pull(args: IAbapGitPullArgs, options?: IAdtAnalyseOptions): Promise<IAdtResponse<TPull>>;
|
|
78
|
+
unlink<E extends IAdtError>(args: IAbapGitUnlinkArgs, options: IAdtAnalyseOptions<E> & {
|
|
79
|
+
analyse: IAnalyse<E>;
|
|
80
|
+
}): Promise<IAdtResponse<void, E>>;
|
|
81
|
+
unlink(args: IAbapGitUnlinkArgs, options?: IAdtAnalyseOptions): Promise<IAdtResponse<void>>;
|
|
82
|
+
listRepos<E extends IAdtError>(options: IAdtAnalyseOptions<E> & {
|
|
83
|
+
analyse: IAnalyse<E>;
|
|
84
|
+
}): Promise<IAdtResponse<TRepos, E>>;
|
|
85
|
+
listRepos(options?: IAdtAnalyseOptions): Promise<IAdtResponse<TRepos>>;
|
|
86
|
+
/**
|
|
87
|
+
* The error log of a repository's last run — one GET to `logLink`.
|
|
88
|
+
*
|
|
89
|
+
* `logLink` is the href `listRepos` reports for the repository. Until 11.0.0
|
|
90
|
+
* this took a package, listed every repository to find the link, and
|
|
91
|
+
* answered an empty log when there was none — a second request, and a reading
|
|
92
|
+
* of the list that was not the caller's.
|
|
52
93
|
*/
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
94
|
+
getErrorLog<E extends IAdtError>(logLink: string, options: IAdtAnalyseOptions<E> & {
|
|
95
|
+
analyse: IAnalyse<E>;
|
|
96
|
+
}): Promise<IAdtResponse<TErrorLog, E>>;
|
|
97
|
+
getErrorLog(logLink: string, options?: IAdtAnalyseOptions): Promise<IAdtResponse<TErrorLog>>;
|
|
98
|
+
checkExternalRepo<E extends IAdtError>(args: IAbapGitExternalRepoCredentials, options: IAdtAnalyseOptions<E> & {
|
|
99
|
+
analyse: IAnalyse<E>;
|
|
100
|
+
}): Promise<IAdtResponse<TExternalRepo, E>>;
|
|
101
|
+
checkExternalRepo(args: IAbapGitExternalRepoCredentials, options?: IAdtAnalyseOptions): Promise<IAdtResponse<TExternalRepo>>;
|
|
59
102
|
}
|
|
60
103
|
//# sourceMappingURL=IAdtAbapGit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAdtAbapGit.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtAbapGit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"IAdtAbapGit.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtAbapGit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,+BAA+B;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,kBAAkB,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CAClC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa;IACxE,IAAI,CAAC,CAAC,SAAS,SAAS,EACtB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CACF,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B;;;;;;OAMG;IACH,IAAI,CAAC,CAAC,SAAS,SAAS,EACtB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,CACF,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,SAAS,SAAS,EACxB,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CACJ,IAAI,EAAE,kBAAkB,EACxB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,SAAS,CAAC,CAAC,SAAS,SAAS,EAC3B,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE;;;;;;;OAOG;IACH,WAAW,CAAC,CAAC,SAAS,SAAS,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,WAAW,CACT,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACpC,iBAAiB,CAAC,CAAC,SAAS,SAAS,EACnC,IAAI,EAAE,+BAA+B,EACrC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;KAAE,GACxD,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,iBAAiB,CACf,IAAI,EAAE,+BAA+B,EACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;CACzC"}
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
* to the compiler, so a consumer never learns from the type that a failure path
|
|
33
33
|
* exists.
|
|
34
34
|
*/
|
|
35
|
-
import type { IAdtCreateOptions, IAdtOperationOptions, IAnalyse } from './IAdtObject';
|
|
35
|
+
import type { IAdtAnalyseOptions, IAdtCreateOptions, IAdtOperationOptions, IAnalyse } from './IAdtObject';
|
|
36
36
|
import type { IAdtError, IAdtResponse } from './IAdtResponse';
|
|
37
37
|
/**
|
|
38
38
|
* Bring an object into existence.
|
|
@@ -268,8 +268,9 @@ export interface IAdtDeletable<TConfig, TDeleted, TChecked = string> {
|
|
|
268
268
|
* that can be deleted can be asked whether it can be deleted right now.
|
|
269
269
|
*
|
|
270
270
|
* One request, like every other member, and the answer is a document rather
|
|
271
|
-
* than a status — ADT reports a refusal inside a 200.
|
|
272
|
-
*
|
|
271
|
+
* than a status — ADT reports a refusal inside a 200. An implementation does
|
|
272
|
+
* not read it (decision 36): the refusal reaches a caller as a failure only
|
|
273
|
+
* through the `analyse` they pass with the call.
|
|
273
274
|
*
|
|
274
275
|
* @param config - Object identification
|
|
275
276
|
* @param options - `analyse` for the verdict
|
|
@@ -326,7 +327,10 @@ export interface IAdtLockable<TConfig> {
|
|
|
326
327
|
* an exception. The pair migrated together, because a lock and its unlock are
|
|
327
328
|
* one operation seen from two ends.
|
|
328
329
|
*/
|
|
329
|
-
lock(config: Partial<TConfig
|
|
330
|
+
lock<E extends IAdtError>(config: Partial<TConfig>, options: IAdtAnalyseOptions<E> & {
|
|
331
|
+
analyse: IAnalyse<E>;
|
|
332
|
+
}): Promise<IAdtResponse<string, E>>;
|
|
333
|
+
lock(config: Partial<TConfig>, options?: IAdtAnalyseOptions): Promise<IAdtResponse<string>>;
|
|
330
334
|
/**
|
|
331
335
|
* Unlock object
|
|
332
336
|
* Sets connection to stateless mode after unlocking.
|
|
@@ -336,7 +340,10 @@ export interface IAdtLockable<TConfig> {
|
|
|
336
340
|
* @param lockHandle - Lock handle returned from lock() operation
|
|
337
341
|
* @returns nothing to read, and the answer says whether it happened
|
|
338
342
|
*/
|
|
339
|
-
unlock(config: Partial<TConfig>, lockHandle: string
|
|
343
|
+
unlock<E extends IAdtError>(config: Partial<TConfig>, lockHandle: string, options: IAdtAnalyseOptions<E> & {
|
|
344
|
+
analyse: IAnalyse<E>;
|
|
345
|
+
}): Promise<IAdtResponse<void, E>>;
|
|
346
|
+
unlock(config: Partial<TConfig>, lockHandle: string, options?: IAdtAnalyseOptions): Promise<IAdtResponse<void>>;
|
|
340
347
|
}
|
|
341
348
|
export interface IAdtVersionable<TConfig, TVersions, TSource> {
|
|
342
349
|
/**
|
|
@@ -350,7 +357,10 @@ export interface IAdtVersionable<TConfig, TVersions, TSource> {
|
|
|
350
357
|
* a type it did not choose is the normal case here, and a normal case belongs
|
|
351
358
|
* in the return type.
|
|
352
359
|
*/
|
|
353
|
-
getVersions(config: Partial<TConfig
|
|
360
|
+
getVersions<E extends IAdtError>(config: Partial<TConfig>, options: IAdtAnalyseOptions<E> & {
|
|
361
|
+
analyse: IAnalyse<E>;
|
|
362
|
+
}): Promise<IAdtResponse<TVersions, E>>;
|
|
363
|
+
getVersions(config: Partial<TConfig>, options?: IAdtAnalyseOptions): Promise<IAdtResponse<TVersions>>;
|
|
354
364
|
/**
|
|
355
365
|
* Fetch the source code of a specific version.
|
|
356
366
|
* @param contentUri the opaque, complete `contentUri` from a getVersions() entry.
|
|
@@ -358,7 +368,10 @@ export interface IAdtVersionable<TConfig, TVersions, TSource> {
|
|
|
358
368
|
* Answers like its pair above: a version resource that cannot be read is a
|
|
359
369
|
* failure in the answer.
|
|
360
370
|
*/
|
|
361
|
-
getVersionSource(contentUri: string
|
|
371
|
+
getVersionSource<E extends IAdtError>(contentUri: string, options: IAdtAnalyseOptions<E> & {
|
|
372
|
+
analyse: IAnalyse<E>;
|
|
373
|
+
}): Promise<IAdtResponse<TSource, E>>;
|
|
374
|
+
getVersionSource(contentUri: string, options?: IAdtAnalyseOptions): Promise<IAdtResponse<TSource>>;
|
|
362
375
|
}
|
|
363
376
|
/**
|
|
364
377
|
* `IAdtSearchable` was here until 30.0.0.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAdtCapabilities.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtCapabilities.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"IAdtCapabilities.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtCapabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Feature Toggle (FTG2/FT) ADT operation parameter interfaces (low-level)
|
|
3
3
|
*/
|
|
4
|
-
import type {
|
|
4
|
+
import type { IAdtAnalyseOptions, IAnalyse } from './IAdtObject';
|
|
5
|
+
import type { IAdtError, IAdtResponse } from './IAdtResponse';
|
|
5
6
|
export interface IFeatureToggleReleasePlan {
|
|
6
7
|
version: string;
|
|
7
8
|
sp: string;
|
|
@@ -61,20 +62,60 @@ export interface IFeatureToggleConfig {
|
|
|
61
62
|
* toggle also has is the atoms, spelled beside this where an implementation
|
|
62
63
|
* offers them: inheritance decides for the composer what belongs together, and
|
|
63
64
|
* a consumer who wants only the switch had to take eight members to get it.
|
|
65
|
+
*
|
|
66
|
+
* **One result type per answer since 11.0.0.** All five members answered
|
|
67
|
+
* `TState`, and they answer four different things: a switch, the runtime
|
|
68
|
+
* state, a state check and the toggle's source. A result strategy given at
|
|
69
|
+
* construction (decision 22) could shape only one of them; the record below
|
|
70
|
+
* names each, and travels as one parameter because five positional ones would
|
|
71
|
+
* be a signature nobody can call — the same form as {@link ICrossTraceResults}.
|
|
64
72
|
*/
|
|
65
|
-
export interface
|
|
73
|
+
export interface IFeatureToggleObjectResults {
|
|
74
|
+
/** What `switchOn` and `switchOff` answer. */
|
|
75
|
+
switched: unknown;
|
|
76
|
+
/** What `getRuntimeState` answers. */
|
|
77
|
+
runtimeState: unknown;
|
|
78
|
+
/** What `checkState` answers. */
|
|
79
|
+
checkState: unknown;
|
|
80
|
+
/** What `readSource` answers. */
|
|
81
|
+
source: unknown;
|
|
82
|
+
}
|
|
83
|
+
export interface IFeatureToggleObject<R extends IFeatureToggleObjectResults> {
|
|
84
|
+
switchOn<E extends IAdtError>(config: Partial<IFeatureToggleConfig>, opts: {
|
|
85
|
+
transportRequest: string;
|
|
86
|
+
userSpecific?: boolean;
|
|
87
|
+
}, options: IAdtAnalyseOptions<E> & {
|
|
88
|
+
analyse: IAnalyse<E>;
|
|
89
|
+
}): Promise<IAdtResponse<R['switched'], E>>;
|
|
66
90
|
switchOn(config: Partial<IFeatureToggleConfig>, opts: {
|
|
67
91
|
transportRequest: string;
|
|
68
92
|
userSpecific?: boolean;
|
|
69
|
-
}): Promise<IAdtResponse<
|
|
93
|
+
}, options?: IAdtAnalyseOptions): Promise<IAdtResponse<R['switched']>>;
|
|
94
|
+
switchOff<E extends IAdtError>(config: Partial<IFeatureToggleConfig>, opts: {
|
|
95
|
+
transportRequest: string;
|
|
96
|
+
userSpecific?: boolean;
|
|
97
|
+
}, options: IAdtAnalyseOptions<E> & {
|
|
98
|
+
analyse: IAnalyse<E>;
|
|
99
|
+
}): Promise<IAdtResponse<R['switched'], E>>;
|
|
70
100
|
switchOff(config: Partial<IFeatureToggleConfig>, opts: {
|
|
71
101
|
transportRequest: string;
|
|
72
102
|
userSpecific?: boolean;
|
|
73
|
-
}): Promise<IAdtResponse<
|
|
74
|
-
getRuntimeState(config: Partial<IFeatureToggleConfig
|
|
103
|
+
}, options?: IAdtAnalyseOptions): Promise<IAdtResponse<R['switched']>>;
|
|
104
|
+
getRuntimeState<E extends IAdtError>(config: Partial<IFeatureToggleConfig>, options: IAdtAnalyseOptions<E> & {
|
|
105
|
+
analyse: IAnalyse<E>;
|
|
106
|
+
}): Promise<IAdtResponse<R['runtimeState'], E>>;
|
|
107
|
+
getRuntimeState(config: Partial<IFeatureToggleConfig>, options?: IAdtAnalyseOptions): Promise<IAdtResponse<R['runtimeState']>>;
|
|
108
|
+
checkState<E extends IAdtError>(config: Partial<IFeatureToggleConfig>, opts: {
|
|
109
|
+
userSpecific?: boolean;
|
|
110
|
+
} | undefined, options: IAdtAnalyseOptions<E> & {
|
|
111
|
+
analyse: IAnalyse<E>;
|
|
112
|
+
}): Promise<IAdtResponse<R['checkState'], E>>;
|
|
75
113
|
checkState(config: Partial<IFeatureToggleConfig>, opts?: {
|
|
76
114
|
userSpecific?: boolean;
|
|
77
|
-
}): Promise<IAdtResponse<
|
|
78
|
-
readSource(config: Partial<IFeatureToggleConfig>, version
|
|
115
|
+
}, options?: IAdtAnalyseOptions): Promise<IAdtResponse<R['checkState']>>;
|
|
116
|
+
readSource<E extends IAdtError>(config: Partial<IFeatureToggleConfig>, version: 'active' | 'inactive' | undefined, options: IAdtAnalyseOptions<E> & {
|
|
117
|
+
analyse: IAnalyse<E>;
|
|
118
|
+
}): Promise<IAdtResponse<R['source'], E>>;
|
|
119
|
+
readSource(config: Partial<IFeatureToggleConfig>, version?: 'active' | 'inactive', options?: IAdtAnalyseOptions): Promise<IAdtResponse<R['source']>>;
|
|
79
120
|
}
|
|
80
121
|
//# sourceMappingURL=IAdtFeatureToggle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAdtFeatureToggle.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtFeatureToggle.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"IAdtFeatureToggle.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtFeatureToggle.ts"],"names":[],"mappings":"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"}
|
package/dist/adt/IAdtObject.d.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* {@link AdtObjectErrorCodes} names failures a strategy can put in
|
|
11
11
|
* {@link IAdtError.code}.
|
|
12
12
|
*/
|
|
13
|
-
import type { IAdtWireResponse } from '
|
|
13
|
+
import type { IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
|
|
14
14
|
import type { AdtNoFailure, IAdtError } from './IAdtResponse';
|
|
15
15
|
/**
|
|
16
16
|
* The codes a failure can name itself by.
|
|
@@ -116,10 +116,21 @@ export declare const AdtObjectErrorCodes: {
|
|
|
116
116
|
*/
|
|
117
117
|
export type IAnalyse<E extends IAdtError = IAdtError> = (verdict: IAdtError | AdtNoFailure, answer?: IAdtWireResponse) => E | AdtNoFailure;
|
|
118
118
|
/**
|
|
119
|
-
*
|
|
120
|
-
*
|
|
119
|
+
* The error strategy, given with the call. **Every member that answers an
|
|
120
|
+
* {@link IAdtResponse} takes it** — decision 36.
|
|
121
|
+
*
|
|
122
|
+
* The result strategy is given once, when the implementation is constructed
|
|
123
|
+
* (decision 22); this one travels with each call. Both are the consumer's, and
|
|
124
|
+
* an implementation that has been given neither interprets nothing: it answers
|
|
125
|
+
* what the transport saw, and a refusal SAP wrote inside a 200 stays a
|
|
126
|
+
* document until a strategy reads it.
|
|
127
|
+
*
|
|
128
|
+
* It is its own type, rather than every member taking
|
|
129
|
+
* {@link IAdtOperationOptions}, because that one also carries `source` and
|
|
130
|
+
* `lockHandle`, which only a write can honour. Offering them to a lock, a
|
|
131
|
+
* version listing or a trace would permit a call that cannot work — decision 29.
|
|
121
132
|
*/
|
|
122
|
-
export interface
|
|
133
|
+
export interface IAdtAnalyseOptions<E extends IAdtError = IAdtError> {
|
|
123
134
|
/**
|
|
124
135
|
* {@link IAnalyse} — the caller's own reading of what counts as a failure.
|
|
125
136
|
*
|
|
@@ -134,6 +145,12 @@ export interface IAdtOperationOptions<E extends IAdtError = IAdtError> {
|
|
|
134
145
|
* is passed rather than a summary of it.
|
|
135
146
|
*/
|
|
136
147
|
analyse?: IAnalyse<E>;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Options for ADT operations (create and update)
|
|
151
|
+
* Unified interface for both create and update operations
|
|
152
|
+
*/
|
|
153
|
+
export interface IAdtOperationOptions<E extends IAdtError = IAdtError> extends IAdtAnalyseOptions<E> {
|
|
137
154
|
/**
|
|
138
155
|
* The source this member writes. **An update's, and only an update's.**
|
|
139
156
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAdtObject.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtObject.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"IAdtObject.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtObject.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,eAAO,MAAM,mBAAmB;IAC9B,6BAA6B;;IAE7B,iFAAiF;;IAEjF,+BAA+B;;IAE/B,6BAA6B;;IAE7B,2BAA2B;;IAE3B,6BAA6B;;IAE7B,+BAA+B;;IAE/B,0BAA0B;;IAE1B,4BAA4B;;IAE5B,8BAA8B;;IAE9B,iGAAiG;;CAEzF,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,CACtD,OAAO,EAAE,SAAS,GAAG,YAAY,EACjC,MAAM,CAAC,EAAE,gBAAgB,KACtB,CAAC,GAAG,YAAY,CAAC;AAEtB;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IACjE;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CACnE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IAkB7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,IAAI,CACnE,oBAAoB,CAAC,CAAC,CAAC,EACvB,QAAQ,CACT,GAAG;IAAE,MAAM,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC"}
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* `@mcp-abap-adt/adt-clients`, where a consumer takes them from if they want
|
|
32
32
|
* `instanceof` as a convenience.
|
|
33
33
|
*/
|
|
34
|
-
import type { IAdtWireResponse } from '
|
|
34
|
+
import type { IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
|
|
35
35
|
/**
|
|
36
36
|
* What an error strategy answers when the answer is **not** a failure.
|
|
37
37
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAdtResponse.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtResponse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"IAdtResponse.d.ts","sourceRoot":"","sources":["../../src/adt/IAdtResponse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAEhF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,cAAc,EAAG,gBAAyB,CAAC;AAExD,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC;AAEjD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,gBAAgB;AAC1B,iFAAiF;AAC/E,YAAY;AACd,oDAAoD;GAClD,SAAS,CAAC;AAEd;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,SAAS;IACxB,gCAAgC;IAChC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAElC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAErC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,WAAW,CAAC,MAAM;IACjC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;CACjC;AAaD,wEAAwE;AACxE,MAAM,WAAW,WAAW,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS;IAC/D,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,IAAI,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,KAAK,CAAC,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,YAAY,CAAC,MAAM,EAAE,MAAM,SAAS,SAAS,GAAG,SAAS,IACjE,WAAW,CAAC,MAAM,CAAC,GACnB,WAAW,CAAC,MAAM,CAAC,CAAC"}
|