arc-1 1.2.0 → 1.4.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 +8 -6
- package/dist/adt/atc-batch.d.ts +71 -0
- package/dist/adt/atc-batch.d.ts.map +1 -0
- package/dist/adt/atc-batch.js +182 -0
- package/dist/adt/atc-batch.js.map +1 -0
- package/dist/adt/atc.d.ts +34 -0
- package/dist/adt/atc.d.ts.map +1 -1
- package/dist/adt/atc.js +58 -12
- package/dist/adt/atc.js.map +1 -1
- package/dist/adt/aunit.d.ts.map +1 -1
- package/dist/adt/aunit.js +50 -7
- package/dist/adt/aunit.js.map +1 -1
- package/dist/adt/bounded-response.d.ts +4 -1
- package/dist/adt/bounded-response.d.ts.map +1 -1
- package/dist/adt/bounded-response.js +33 -7
- package/dist/adt/bounded-response.js.map +1 -1
- package/dist/adt/ci-quality-xml.d.ts +44 -0
- package/dist/adt/ci-quality-xml.d.ts.map +1 -0
- package/dist/adt/ci-quality-xml.js +98 -0
- package/dist/adt/ci-quality-xml.js.map +1 -0
- package/dist/adt/ci-quality.d.ts +64 -0
- package/dist/adt/ci-quality.d.ts.map +1 -0
- package/dist/adt/ci-quality.js +132 -0
- package/dist/adt/ci-quality.js.map +1 -0
- package/dist/adt/client.d.ts +20 -16
- package/dist/adt/client.d.ts.map +1 -1
- package/dist/adt/client.js +35 -70
- package/dist/adt/client.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.map +1 -1
- package/dist/adt/crud.js +7 -3
- package/dist/adt/crud.js.map +1 -1
- package/dist/adt/data-source-policy.d.ts +6 -15
- package/dist/adt/data-source-policy.d.ts.map +1 -1
- package/dist/adt/data-source-policy.js +18 -11
- package/dist/adt/data-source-policy.js.map +1 -1
- package/dist/adt/ddic-xml.d.ts +78 -4
- package/dist/adt/ddic-xml.d.ts.map +1 -1
- package/dist/adt/ddic-xml.js +647 -54
- package/dist/adt/ddic-xml.js.map +1 -1
- package/dist/adt/devtools.d.ts +1 -0
- package/dist/adt/devtools.d.ts.map +1 -1
- package/dist/adt/devtools.js +31 -8
- 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 +84 -10
- package/dist/adt/diagnostics.js.map +1 -1
- package/dist/adt/errors.d.ts +2 -0
- package/dist/adt/errors.d.ts.map +1 -1
- package/dist/adt/errors.js +3 -1
- 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/http-deadline.d.ts +7 -0
- package/dist/adt/http-deadline.d.ts.map +1 -1
- package/dist/adt/http-deadline.js +2 -2
- package/dist/adt/http-deadline.js.map +1 -1
- package/dist/adt/http.d.ts +11 -5
- package/dist/adt/http.d.ts.map +1 -1
- package/dist/adt/http.js +136 -82
- package/dist/adt/http.js.map +1 -1
- package/dist/adt/internal-data-operations.d.ts +9 -4
- package/dist/adt/internal-data-operations.d.ts.map +1 -1
- package/dist/adt/internal-data-operations.js +11 -7
- package/dist/adt/internal-data-operations.js.map +1 -1
- package/dist/adt/package-contents.d.ts +12 -0
- package/dist/adt/package-contents.d.ts.map +1 -0
- package/dist/adt/package-contents.js +19 -0
- package/dist/adt/package-contents.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/relation-objects.d.ts +385 -0
- package/dist/adt/relation-objects.d.ts.map +1 -0
- package/dist/adt/relation-objects.js +262 -0
- package/dist/adt/relation-objects.js.map +1 -0
- package/dist/adt/repository-relations.d.ts +41 -0
- package/dist/adt/repository-relations.d.ts.map +1 -0
- package/dist/adt/repository-relations.js +246 -0
- package/dist/adt/repository-relations.js.map +1 -0
- package/dist/adt/request-attempt-budget.d.ts +26 -0
- package/dist/adt/request-attempt-budget.d.ts.map +1 -0
- package/dist/adt/request-attempt-budget.js +63 -0
- package/dist/adt/request-attempt-budget.js.map +1 -0
- package/dist/adt/result-limits.d.ts +3 -0
- package/dist/adt/result-limits.d.ts.map +1 -0
- package/dist/adt/result-limits.js +7 -0
- package/dist/adt/result-limits.js.map +1 -0
- package/dist/adt/server-driven.d.ts +21 -5
- package/dist/adt/server-driven.d.ts.map +1 -1
- package/dist/adt/server-driven.js +41 -26
- package/dist/adt/server-driven.js.map +1 -1
- package/dist/adt/table-query.d.ts +2 -0
- package/dist/adt/table-query.d.ts.map +1 -1
- package/dist/adt/table-query.js +61 -0
- package/dist/adt/table-query.js.map +1 -1
- package/dist/adt/text-elements.d.ts +48 -0
- package/dist/adt/text-elements.d.ts.map +1 -0
- package/dist/adt/text-elements.js +116 -0
- package/dist/adt/text-elements.js.map +1 -0
- package/dist/adt/transport.d.ts +1 -2
- package/dist/adt/transport.d.ts.map +1 -1
- package/dist/adt/transport.js +17 -12
- package/dist/adt/transport.js.map +1 -1
- package/dist/adt/types.d.ts +18 -0
- package/dist/adt/types.d.ts.map +1 -1
- package/dist/adt/uiad.d.ts +19 -0
- package/dist/adt/uiad.d.ts.map +1 -0
- package/dist/adt/uiad.js +173 -0
- package/dist/adt/uiad.js.map +1 -0
- package/dist/adt/xml-parser.d.ts +2 -0
- package/dist/adt/xml-parser.d.ts.map +1 -1
- package/dist/adt/xml-parser.js +20 -1
- package/dist/adt/xml-parser.js.map +1 -1
- package/dist/authz/policy.d.ts.map +1 -1
- package/dist/authz/policy.js +4 -1
- package/dist/authz/policy.js.map +1 -1
- package/dist/cache/cache.d.ts +3 -23
- package/dist/cache/cache.d.ts.map +1 -1
- package/dist/cache/cache.js +2 -3
- package/dist/cache/cache.js.map +1 -1
- package/dist/cache/caching-layer.d.ts +6 -25
- package/dist/cache/caching-layer.d.ts.map +1 -1
- package/dist/cache/caching-layer.js +3 -45
- package/dist/cache/caching-layer.js.map +1 -1
- package/dist/cache/memory.d.ts +1 -4
- package/dist/cache/memory.d.ts.map +1 -1
- package/dist/cache/memory.js +1 -10
- package/dist/cache/memory.js.map +1 -1
- package/dist/cache/sqlite.d.ts +1 -3
- package/dist/cache/sqlite.d.ts.map +1 -1
- package/dist/cache/sqlite.js +2 -17
- package/dist/cache/sqlite.js.map +1 -1
- package/dist/cli-checks.d.ts +3 -0
- package/dist/cli-checks.d.ts.map +1 -1
- package/dist/cli-checks.js +16 -0
- package/dist/cli-checks.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +5 -2
- package/dist/cli.js.map +1 -1
- package/dist/context/compressor.d.ts +2 -3
- package/dist/context/compressor.d.ts.map +1 -1
- package/dist/context/compressor.js +30 -49
- package/dist/context/compressor.js.map +1 -1
- package/dist/context/contract.d.ts +5 -0
- package/dist/context/contract.d.ts.map +1 -1
- package/dist/context/contract.js +2 -2
- package/dist/context/contract.js.map +1 -1
- package/dist/context/deps.d.ts +11 -0
- package/dist/context/deps.d.ts.map +1 -1
- package/dist/context/deps.js +2 -2
- package/dist/context/deps.js.map +1 -1
- package/dist/context/parse-cache.d.ts +23 -0
- package/dist/context/parse-cache.d.ts.map +1 -0
- package/dist/context/parse-cache.js +71 -0
- package/dist/context/parse-cache.js.map +1 -0
- package/dist/context/relation-walk.d.ts +48 -0
- package/dist/context/relation-walk.d.ts.map +1 -0
- package/dist/context/relation-walk.js +137 -0
- package/dist/context/relation-walk.js.map +1 -0
- package/dist/context/types.d.ts +4 -4
- package/dist/context/types.d.ts.map +1 -1
- package/dist/context/unit-surgery.d.ts +1 -1
- package/dist/context/unit-surgery.d.ts.map +1 -1
- package/dist/context/unit-surgery.js +3 -2
- package/dist/context/unit-surgery.js.map +1 -1
- package/dist/handlers/activate.d.ts +1 -1
- package/dist/handlers/activate.d.ts.map +1 -1
- package/dist/handlers/activate.js +37 -56
- package/dist/handlers/activate.js.map +1 -1
- package/dist/handlers/activation-results.d.ts +3 -0
- package/dist/handlers/activation-results.d.ts.map +1 -0
- package/dist/handlers/activation-results.js +8 -0
- package/dist/handlers/activation-results.js.map +1 -0
- package/dist/handlers/context.d.ts.map +1 -1
- package/dist/handlers/context.js +8 -32
- package/dist/handlers/context.js.map +1 -1
- package/dist/handlers/data-element-fields.d.ts +26 -0
- package/dist/handlers/data-element-fields.d.ts.map +1 -0
- package/dist/handlers/data-element-fields.js +27 -0
- package/dist/handlers/data-element-fields.js.map +1 -0
- package/dist/handlers/diagnose-ci.d.ts +9 -0
- package/dist/handlers/diagnose-ci.d.ts.map +1 -0
- package/dist/handlers/diagnose-ci.js +120 -0
- package/dist/handlers/diagnose-ci.js.map +1 -0
- package/dist/handlers/diagnose-fields.d.ts +51 -0
- package/dist/handlers/diagnose-fields.d.ts.map +1 -0
- package/dist/handlers/diagnose-fields.js +48 -0
- package/dist/handlers/diagnose-fields.js.map +1 -0
- package/dist/handlers/diagnose.d.ts +4 -1
- package/dist/handlers/diagnose.d.ts.map +1 -1
- package/dist/handlers/diagnose.js +31 -7
- package/dist/handlers/diagnose.js.map +1 -1
- package/dist/handlers/dispatch.d.ts.map +1 -1
- package/dist/handlers/dispatch.js +65 -9
- package/dist/handlers/dispatch.js.map +1 -1
- package/dist/handlers/feature-cache.d.ts +4 -3
- package/dist/handlers/feature-cache.d.ts.map +1 -1
- package/dist/handlers/feature-cache.js +4 -3
- package/dist/handlers/feature-cache.js.map +1 -1
- package/dist/handlers/hyperfocused.js +1 -1
- package/dist/handlers/lint.d.ts.map +1 -1
- package/dist/handlers/lint.js +12 -3
- package/dist/handlers/lint.js.map +1 -1
- package/dist/handlers/live-relations.d.ts +5 -0
- package/dist/handlers/live-relations.d.ts.map +1 -0
- package/dist/handlers/live-relations.js +89 -0
- package/dist/handlers/live-relations.js.map +1 -0
- package/dist/handlers/manage.d.ts.map +1 -1
- package/dist/handlers/manage.js +7 -4
- package/dist/handlers/manage.js.map +1 -1
- package/dist/handlers/navigate.d.ts +1 -1
- package/dist/handlers/navigate.d.ts.map +1 -1
- package/dist/handlers/navigate.js +11 -5
- package/dist/handlers/navigate.js.map +1 -1
- package/dist/handlers/object-types.d.ts +2 -0
- package/dist/handlers/object-types.d.ts.map +1 -1
- package/dist/handlers/object-types.js +41 -6
- 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/query-errors.d.ts +9 -1
- package/dist/handlers/query-errors.d.ts.map +1 -1
- package/dist/handlers/query-errors.js +40 -28
- package/dist/handlers/query-errors.js.map +1 -1
- package/dist/handlers/query.d.ts +1 -1
- package/dist/handlers/query.d.ts.map +1 -1
- package/dist/handlers/query.js +2 -2
- package/dist/handlers/query.js.map +1 -1
- package/dist/handlers/read.d.ts +1 -1
- package/dist/handlers/read.d.ts.map +1 -1
- package/dist/handlers/read.js +51 -19
- package/dist/handlers/read.js.map +1 -1
- package/dist/handlers/relation-input.d.ts +42 -0
- package/dist/handlers/relation-input.d.ts.map +1 -0
- package/dist/handlers/relation-input.js +22 -0
- package/dist/handlers/relation-input.js.map +1 -0
- package/dist/handlers/relation-tool.d.ts +5 -0
- package/dist/handlers/relation-tool.d.ts.map +1 -0
- package/dist/handlers/relation-tool.js +36 -0
- package/dist/handlers/relation-tool.js.map +1 -0
- package/dist/handlers/schemas.d.ts +125 -62
- package/dist/handlers/schemas.d.ts.map +1 -1
- package/dist/handlers/schemas.js +150 -13
- package/dist/handlers/schemas.js.map +1 -1
- package/dist/handlers/search.d.ts +1 -1
- package/dist/handlers/search.d.ts.map +1 -1
- package/dist/handlers/search.js +18 -5
- package/dist/handlers/search.js.map +1 -1
- package/dist/handlers/tool-descriptions.d.ts.map +1 -1
- package/dist/handlers/tool-descriptions.js +14 -15
- package/dist/handlers/tool-descriptions.js.map +1 -1
- package/dist/handlers/tool-registry.d.ts +5 -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 +2 -3
- package/dist/handlers/tools.d.ts.map +1 -1
- package/dist/handlers/tools.js +130 -75
- package/dist/handlers/tools.js.map +1 -1
- package/dist/handlers/where-used.d.ts.map +1 -1
- package/dist/handlers/where-used.js +5 -0
- package/dist/handlers/where-used.js.map +1 -1
- package/dist/handlers/write/batch-results.d.ts +28 -0
- package/dist/handlers/write/batch-results.d.ts.map +1 -0
- package/dist/handlers/write/batch-results.js +106 -0
- package/dist/handlers/write/batch-results.js.map +1 -0
- package/dist/handlers/write/create-transport.d.ts +7 -0
- package/dist/handlers/write/create-transport.d.ts.map +1 -0
- package/dist/handlers/write/create-transport.js +38 -0
- package/dist/handlers/write/create-transport.js.map +1 -0
- package/dist/handlers/write/create.d.ts.map +1 -1
- package/dist/handlers/write/create.js +276 -413
- package/dist/handlers/write/create.js.map +1 -1
- package/dist/handlers/write/uiad.d.ts +8 -0
- package/dist/handlers/write/uiad.d.ts.map +1 -0
- package/dist/handlers/write/uiad.js +115 -0
- package/dist/handlers/write/uiad.js.map +1 -0
- package/dist/handlers/write/unit-surgery.d.ts.map +1 -1
- package/dist/handlers/write/unit-surgery.js +46 -28
- package/dist/handlers/write/unit-surgery.js.map +1 -1
- package/dist/handlers/write/update-delete.d.ts +6 -6
- package/dist/handlers/write/update-delete.d.ts.map +1 -1
- package/dist/handlers/write/update-delete.js +46 -15
- package/dist/handlers/write/update-delete.js.map +1 -1
- package/dist/handlers/write-helpers.d.ts +1 -7
- package/dist/handlers/write-helpers.d.ts.map +1 -1
- package/dist/handlers/write-helpers.js +105 -86
- package/dist/handlers/write-helpers.js.map +1 -1
- package/dist/handlers/write.d.ts.map +1 -1
- package/dist/handlers/write.js +7 -6
- 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/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 +12 -2
- package/dist/public/types.d.ts.map +1 -1
- package/dist/public/ui/app.js +0 -2
- package/dist/server/audit.d.ts +1 -1
- package/dist/server/audit.d.ts.map +1 -1
- package/dist/server/config.d.ts.map +1 -1
- package/dist/server/config.js +6 -2
- package/dist/server/config.js.map +1 -1
- package/dist/server/http.d.ts +1 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +8 -5
- package/dist/server/http.js.map +1 -1
- package/dist/server/logger.d.ts.map +1 -1
- package/dist/server/logger.js +4 -1
- package/dist/server/logger.js.map +1 -1
- package/dist/server/multi-target-tools.d.ts.map +1 -1
- package/dist/server/multi-target-tools.js +3 -1
- package/dist/server/multi-target-tools.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/safe-http-client.d.ts +2 -2
- package/dist/server/safe-http-client.d.ts.map +1 -1
- package/dist/server/safe-http-client.js +24 -11
- package/dist/server/safe-http-client.js.map +1 -1
- package/dist/server/server-instructions.d.ts.map +1 -1
- package/dist/server/server-instructions.js +11 -5
- package/dist/server/server-instructions.js.map +1 -1
- package/dist/server/server.d.ts +1 -1
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +24 -48
- package/dist/server/server.js.map +1 -1
- package/dist/server/shutdown.d.ts +6 -0
- package/dist/server/shutdown.d.ts.map +1 -0
- package/dist/server/shutdown.js +52 -0
- package/dist/server/shutdown.js.map +1 -0
- package/dist/server/sinks/btp-auditlog.d.ts +10 -8
- package/dist/server/sinks/btp-auditlog.d.ts.map +1 -1
- package/dist/server/sinks/btp-auditlog.js +76 -68
- package/dist/server/sinks/btp-auditlog.js.map +1 -1
- package/dist/server/sinks/file.d.ts +1 -1
- package/dist/server/sinks/file.d.ts.map +1 -1
- package/dist/server/sinks/file.js +12 -21
- package/dist/server/sinks/file.js.map +1 -1
- package/dist/server/types.d.ts +5 -4
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/types.js.map +1 -1
- package/dist/server/ui.js +0 -2
- package/dist/server/ui.js.map +1 -1
- package/package.json +19 -17
package/dist/adt/http.js
CHANGED
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
*
|
|
19
19
|
* 3. Stateful sessions use "X-sap-adt-sessiontype: stateful" header.
|
|
20
20
|
* Lock/modify/unlock must use the same session cookies.
|
|
21
|
-
* withStatefulSession() ensures session isolation
|
|
21
|
+
* withStatefulSession() ensures session isolation and closes the backend
|
|
22
|
+
* context when the operation finishes.
|
|
22
23
|
*
|
|
23
24
|
* 4. sap-client and sap-language are added to every request as query params.
|
|
24
25
|
* This is an SAP convention, not ADT-specific.
|
|
@@ -26,16 +27,17 @@
|
|
|
26
27
|
* 5. Uses native fetch() with undici dispatchers for proxy and TLS configuration.
|
|
27
28
|
* No external HTTP dependencies — undici ships with Node.js 22+.
|
|
28
29
|
*/
|
|
29
|
-
import { Agent, Client
|
|
30
|
+
import { Agent, Client } from 'undici';
|
|
30
31
|
import { getCurrentContext } from '../server/context.js';
|
|
31
32
|
import { logger } from '../server/logger.js';
|
|
32
33
|
import { traceHeaders } from '../server/trace-context.js';
|
|
33
|
-
import {
|
|
34
|
+
import { connectivityProxyResponse, prepareBoundedResponse } from './bounded-response.js';
|
|
34
35
|
import { resolveCookies } from './cookies.js';
|
|
35
36
|
import { resolveAcceptType, resolveContentType } from './discovery.js';
|
|
36
37
|
import { AdtApiError, AdtNetworkError, AdtResponseLimitError } from './errors.js';
|
|
37
38
|
import { awaitWithinRequestBudget, requestBudgetSignal, requestSignal, sleepWithinRequestBudget, throwIfRequestCancelled, withoutResponseBudget, } from './http-deadline.js';
|
|
38
39
|
import { prepareDataPreviewWireBody } from './http-wire-body.js';
|
|
40
|
+
import { fetchWithAttemptBudget } from './request-attempt-budget.js';
|
|
39
41
|
/**
|
|
40
42
|
* Opt-in wire-level debug logging.
|
|
41
43
|
*
|
|
@@ -52,6 +54,7 @@ const HTTP_DEBUG_REDACT_HEADERS = new Set([
|
|
|
52
54
|
'cookie',
|
|
53
55
|
'set-cookie',
|
|
54
56
|
'x-csrf-token',
|
|
57
|
+
'sap-contextid',
|
|
55
58
|
'sap-connectivity-authentication',
|
|
56
59
|
'proxy-authorization',
|
|
57
60
|
'password', // abapGit bridge credential header (base64 is not encryption)
|
|
@@ -99,6 +102,9 @@ export class AdtHttpClient {
|
|
|
99
102
|
csrfToken = '';
|
|
100
103
|
dispatcher;
|
|
101
104
|
longOperationDispatcher;
|
|
105
|
+
statefulProxyClient;
|
|
106
|
+
// Owned only by a withStatefulSession clone, including its final stateless close request.
|
|
107
|
+
reuseStatefulProxyClient = false;
|
|
102
108
|
config;
|
|
103
109
|
/**
|
|
104
110
|
* Cookie jar — stores Set-Cookie headers from responses and sends them back.
|
|
@@ -171,8 +177,8 @@ export class AdtHttpClient {
|
|
|
171
177
|
* Execute a function within an isolated stateful session.
|
|
172
178
|
* Ensures lock/modify/unlock share the same SAP session cookies.
|
|
173
179
|
*
|
|
174
|
-
* Creates a new client instance with stateful session header,
|
|
175
|
-
* shares
|
|
180
|
+
* Creates a new client instance with the stateful session header,
|
|
181
|
+
* shares the main client's request state, and closes the backend context.
|
|
176
182
|
*/
|
|
177
183
|
async withStatefulSession(fn) {
|
|
178
184
|
const sessionConfig = {
|
|
@@ -185,7 +191,49 @@ export class AdtHttpClient {
|
|
|
185
191
|
sessionClient.cookieJar = new Map(this.cookieJar);
|
|
186
192
|
sessionClient.discoveryMap = this.discoveryMap;
|
|
187
193
|
sessionClient.negotiatedHeaders = new Map(this.negotiatedHeaders);
|
|
188
|
-
|
|
194
|
+
sessionClient.reuseStatefulProxyClient = true;
|
|
195
|
+
try {
|
|
196
|
+
return await fn(sessionClient);
|
|
197
|
+
}
|
|
198
|
+
finally {
|
|
199
|
+
await sessionClient.closeStatefulSession();
|
|
200
|
+
try {
|
|
201
|
+
await sessionClient.statefulProxyClient?.close();
|
|
202
|
+
}
|
|
203
|
+
catch {
|
|
204
|
+
logger.warn('Failed to close stateful Connectivity proxy client.');
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
/** Close the SAP application context without changing the completed operation's result. */
|
|
209
|
+
async closeStatefulSession() {
|
|
210
|
+
const contextId = this.cookieJar.get('sap-contextid');
|
|
211
|
+
if (!contextId || contextId === '0')
|
|
212
|
+
return;
|
|
213
|
+
// Eclipse ADT changes the same context to stateless while sending its dedicated close request.
|
|
214
|
+
// This client belongs only to withStatefulSession(), so it is not reused after the transition.
|
|
215
|
+
this.config.sessionType = 'stateless';
|
|
216
|
+
try {
|
|
217
|
+
try {
|
|
218
|
+
await this.get('/sap/bc/adt/core/http/sessions', { Accept: '*/*', 'sap-adt-purpose': 'close-session', 'sap-contextid': contextId }, { probe: true });
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
if (!(error instanceof AdtApiError && error.statusCode === 404))
|
|
223
|
+
throw error;
|
|
224
|
+
}
|
|
225
|
+
// NW 7.50 lacks the close resource; its stateful-header backport closes on discovery instead.
|
|
226
|
+
await this.head('/sap/bc/adt/core/discovery', { Accept: '*/*' }, { probe: true });
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
// NW 7.50 can return 400 after closing. The reset cookie confirms that cleanup succeeded.
|
|
230
|
+
if (this.cookieJar.get('sap-contextid') === '0')
|
|
231
|
+
return;
|
|
232
|
+
// Preserve the write result/error and keep SAP response text out of cleanup warnings.
|
|
233
|
+
logger.warn('Failed to close stateful ADT session.', {
|
|
234
|
+
statusCode: error instanceof AdtApiError ? error.statusCode : undefined,
|
|
235
|
+
});
|
|
236
|
+
}
|
|
189
237
|
}
|
|
190
238
|
/** Core request method — wraps requestInner with optional concurrency limiter */
|
|
191
239
|
async request(method, path, body, contentType, extraHeaders, options) {
|
|
@@ -277,8 +325,8 @@ export class AdtHttpClient {
|
|
|
277
325
|
if (this.config.disableSaml) {
|
|
278
326
|
headers['X-SAP-SAML2'] = 'disabled';
|
|
279
327
|
}
|
|
280
|
-
if (this.config.sessionType
|
|
281
|
-
headers['X-sap-adt-sessiontype'] =
|
|
328
|
+
if (this.config.sessionType) {
|
|
329
|
+
headers['X-sap-adt-sessiontype'] = this.config.sessionType;
|
|
282
330
|
}
|
|
283
331
|
if (contentType) {
|
|
284
332
|
headers['Content-Type'] = contentType;
|
|
@@ -323,6 +371,7 @@ export class AdtHttpClient {
|
|
|
323
371
|
const url = this.buildUrl(path);
|
|
324
372
|
const httpStart = Date.now();
|
|
325
373
|
// Per-request guards to prevent infinite retry loops
|
|
374
|
+
const retryTransientErrors = options?.retryTransientErrors !== false;
|
|
326
375
|
let negotiationRetried = false;
|
|
327
376
|
let authRetried = false;
|
|
328
377
|
let retried429 = false;
|
|
@@ -336,7 +385,10 @@ export class AdtHttpClient {
|
|
|
336
385
|
// work process. If that WP has a broken HANA connection, every request fails
|
|
337
386
|
// with "database connection is not open". Fix: clear the session to force
|
|
338
387
|
// ICM to assign a different work process on retry.
|
|
339
|
-
if (
|
|
388
|
+
if (retryTransientErrors &&
|
|
389
|
+
response.status === 500 &&
|
|
390
|
+
this.isDbConnectionError(responseBody) &&
|
|
391
|
+
!this.dbRetryInProgress) {
|
|
340
392
|
this.dbRetryInProgress = true;
|
|
341
393
|
try {
|
|
342
394
|
logger.emitAudit({
|
|
@@ -388,11 +440,9 @@ export class AdtHttpClient {
|
|
|
388
440
|
}
|
|
389
441
|
}
|
|
390
442
|
// Handle 503 Service Unavailable — ICM thread/MPI exhaustion or WP overload.
|
|
391
|
-
//
|
|
392
|
-
// process, so the operation never executed — retrying is safe even for POST/PUT/DELETE.
|
|
443
|
+
// Legacy retries remain the default; ambiguous mutations can disable transient replay.
|
|
393
444
|
// Retry happens INSIDE the semaphore slot to avoid increasing load on an overloaded system.
|
|
394
|
-
|
|
395
|
-
if (response.status === 503) {
|
|
445
|
+
if (response.status === 503 && retryTransientErrors) {
|
|
396
446
|
const { delayMs: jitterMs, source } = parseRetryAfter(response.headers.get('retry-after'), 1000 + Math.random() * 1000);
|
|
397
447
|
logger.emitAudit({
|
|
398
448
|
timestamp: new Date().toISOString(),
|
|
@@ -421,13 +471,9 @@ export class AdtHttpClient {
|
|
|
421
471
|
return this.handleResponse(retryResp.status, retryResp.headers, retryBody, path);
|
|
422
472
|
}
|
|
423
473
|
// Handle 429 Too Many Requests — emitted by SAP Web Dispatcher, BTP API
|
|
424
|
-
// Management, or any upstream gateway throttling us.
|
|
425
|
-
//
|
|
426
|
-
|
|
427
|
-
// falls back to 1-2 s jitter. Single retry only — per-request `retried429` guard
|
|
428
|
-
// prevents loops. If the upstream is still throttling on the second attempt, we
|
|
429
|
-
// surface the 429 to the caller for them to back off at the agent/LLM layer.
|
|
430
|
-
if (response.status === 429 && !retried429) {
|
|
474
|
+
// Management, or any upstream gateway throttling us. Honors Retry-After when present;
|
|
475
|
+
// otherwise wait 1-2 s. Surface a repeated 429 without a third attempt.
|
|
476
|
+
if (response.status === 429 && !retried429 && retryTransientErrors) {
|
|
431
477
|
retried429 = true;
|
|
432
478
|
const { delayMs: jitterMs, source } = parseRetryAfter(response.headers.get('retry-after'), 1000 + Math.random() * 1000);
|
|
433
479
|
logger.emitAudit({
|
|
@@ -730,10 +776,10 @@ export class AdtHttpClient {
|
|
|
730
776
|
/** Handle response: throw on error status, return normalized response */
|
|
731
777
|
handleResponse(status, headers, body, path) {
|
|
732
778
|
const contentType = headers.get('content-type')?.toLowerCase();
|
|
733
|
-
const
|
|
779
|
+
const isDiscovery = ['/sap/bc/adt/core/discovery', '/sap/bc/adt/discovery'].includes(path.split('?', 1)[0]);
|
|
734
780
|
if (status === 200 &&
|
|
735
781
|
path.startsWith('/sap/bc/adt/') &&
|
|
736
|
-
(contentType?.startsWith('text/html') ||
|
|
782
|
+
(contentType?.startsWith('text/html') || isDiscovery) &&
|
|
737
783
|
looksLikeLoginPage(body)) {
|
|
738
784
|
if (this.isCookieAuthMode()) {
|
|
739
785
|
this.clearCookiesAndMark();
|
|
@@ -760,17 +806,18 @@ export class AdtHttpClient {
|
|
|
760
806
|
}
|
|
761
807
|
/**
|
|
762
808
|
* Fetch CSRF token from SAP.
|
|
763
|
-
* Uses
|
|
809
|
+
* Uses core discovery first, then legacy discovery when the core resource is unavailable.
|
|
810
|
+
* Returns the endpoint that supplied the token for startup diagnostics.
|
|
764
811
|
*/
|
|
765
812
|
async fetchCsrfToken(options) {
|
|
766
813
|
throwIfRequestCancelled(options);
|
|
767
|
-
|
|
814
|
+
let path = '/sap/bc/adt/core/discovery';
|
|
768
815
|
const headers = {
|
|
769
816
|
'X-CSRF-Token': 'fetch',
|
|
770
817
|
Accept: '*/*',
|
|
771
818
|
};
|
|
772
|
-
if (this.config.sessionType
|
|
773
|
-
headers['X-sap-adt-sessiontype'] =
|
|
819
|
+
if (this.config.sessionType) {
|
|
820
|
+
headers['X-sap-adt-sessiontype'] = this.config.sessionType;
|
|
774
821
|
}
|
|
775
822
|
if (this.config.disableSaml) {
|
|
776
823
|
headers['X-SAP-SAML2'] = 'disabled';
|
|
@@ -794,14 +841,33 @@ export class AdtHttpClient {
|
|
|
794
841
|
if (this.cookiesCleared && this.isCookieAuthMode()) {
|
|
795
842
|
this.reloadCookiesFromSource();
|
|
796
843
|
}
|
|
797
|
-
//
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
844
|
+
// A token only counts as proof when the response itself succeeded: SAP returns one on
|
|
845
|
+
// failures too, and the old code accepted a token from a 401 — masking the auth error.
|
|
846
|
+
const usableToken = (response) => {
|
|
847
|
+
const token = response.headers.get('x-csrf-token')?.trim();
|
|
848
|
+
return response.ok && token && token.toLowerCase() !== 'required' ? token : undefined;
|
|
849
|
+
};
|
|
850
|
+
// Every probe keeps the same identity, current cookies and caller's request budget.
|
|
851
|
+
const probe = async (method) => {
|
|
852
|
+
const cookieHeader = this.composeCookieHeader();
|
|
853
|
+
if (cookieHeader)
|
|
854
|
+
headers.Cookie = cookieHeader;
|
|
855
|
+
else
|
|
856
|
+
delete headers.Cookie;
|
|
857
|
+
const response = await this.doFetch(this.buildUrl(path), method, headers, undefined, options);
|
|
858
|
+
this.storeCookies(response);
|
|
859
|
+
if (method === 'GET' && response.status === 200 && !usableToken(response)) {
|
|
860
|
+
// Preserve the login-page check even when an old handler reports HTTP 200.
|
|
861
|
+
this.handleResponse(response.status, response.headers, await response.text(), path);
|
|
862
|
+
}
|
|
863
|
+
// Only headers are needed; release GET bodies before a fallback or return.
|
|
864
|
+
if (!response.bodyUsed)
|
|
865
|
+
await response.body?.cancel();
|
|
866
|
+
return response;
|
|
867
|
+
};
|
|
802
868
|
try {
|
|
803
|
-
let response = await
|
|
804
|
-
// Retry once on 503 — ICM may be temporarily overloaded (thread/MPI exhaustion)
|
|
869
|
+
let response = await probe('HEAD');
|
|
870
|
+
// Retry once on 503 — ICM may be temporarily overloaded (thread/MPI exhaustion).
|
|
805
871
|
if (response.status === 503) {
|
|
806
872
|
const jitterMs = 1000 + Math.random() * 1000;
|
|
807
873
|
logger.emitAudit({
|
|
@@ -809,61 +875,41 @@ export class AdtHttpClient {
|
|
|
809
875
|
level: 'warn',
|
|
810
876
|
event: 'http_request',
|
|
811
877
|
method: 'HEAD',
|
|
812
|
-
path
|
|
878
|
+
path,
|
|
813
879
|
statusCode: 503,
|
|
814
880
|
durationMs: 0,
|
|
815
881
|
errorBody: `CSRF fetch got 503 — retrying in ${Math.round(jitterMs)}ms`,
|
|
816
882
|
});
|
|
817
883
|
await sleepWithinRequestBudget(jitterMs, options);
|
|
818
|
-
response = await
|
|
884
|
+
response = await probe('HEAD');
|
|
819
885
|
}
|
|
820
|
-
//
|
|
821
|
-
//
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
// Some systems reject HEAD with 403; others accept it but omit the token. In both
|
|
826
|
-
// cases retry with GET, which is the broadly supported CSRF bootstrap method and
|
|
827
|
-
// also exposes a real authentication failure instead of a misleading HTTP 200 error.
|
|
828
|
-
if (response.status === 403 || headSucceededWithoutToken) {
|
|
829
|
-
const fallbackCookieHeader = this.composeCookieHeader();
|
|
830
|
-
if (fallbackCookieHeader) {
|
|
831
|
-
headers.Cookie = fallbackCookieHeader;
|
|
832
|
-
}
|
|
833
|
-
else {
|
|
834
|
-
delete headers.Cookie;
|
|
835
|
-
}
|
|
836
|
-
logger.emitAudit({
|
|
837
|
-
timestamp: new Date().toISOString(),
|
|
838
|
-
level: response.status === 403 ? 'warn' : 'debug',
|
|
839
|
-
event: 'http_request',
|
|
840
|
-
method: 'HEAD',
|
|
841
|
-
path: '/sap/bc/adt/core/discovery',
|
|
842
|
-
statusCode: response.status,
|
|
843
|
-
durationMs: 0,
|
|
844
|
-
errorBody: response.status === 403
|
|
845
|
-
? 'CSRF HEAD returned 403 — retrying with GET (S/4HANA Public Cloud compat)'
|
|
846
|
-
: 'CSRF HEAD returned no usable token — retrying with GET',
|
|
847
|
-
});
|
|
848
|
-
response = await this.doFetch(url, 'GET', headers, undefined, options);
|
|
886
|
+
// The tested 7.50/7.58/8.16 systems returned HEAD 400 with a token; GET returned 200.
|
|
887
|
+
// Retry these HEAD refusals or a successful response without a token on the same path.
|
|
888
|
+
// A successful HEAD with a usable token remains the one-request fast path.
|
|
889
|
+
if ([400, 403, 405].includes(response.status) || (response.ok && !usableToken(response))) {
|
|
890
|
+
response = await probe('GET');
|
|
849
891
|
}
|
|
850
|
-
//
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
892
|
+
// Older ADT handlers may return an empty 200 for a missing core resource (#817).
|
|
893
|
+
// A real auth/server failure must not be hidden by trying another endpoint.
|
|
894
|
+
if (response.status === 404 || response.status === 405 || (response.ok && !usableToken(response))) {
|
|
895
|
+
path = '/sap/bc/adt/discovery';
|
|
896
|
+
response = await probe('GET');
|
|
897
|
+
}
|
|
898
|
+
const token = usableToken(response);
|
|
899
|
+
if (!token) {
|
|
854
900
|
if (response.status === 401) {
|
|
855
|
-
if (this.isCookieAuthMode())
|
|
901
|
+
if (this.isCookieAuthMode())
|
|
856
902
|
this.clearCookiesAndMark();
|
|
857
|
-
|
|
858
|
-
this.
|
|
859
|
-
throw new AdtApiError(`Authentication failed (401) using sap-client=${this.config.client ?? '100'}. Check SAP_CLIENT, SAP_USER, and SAP_PASSWORD.`, 401, '/sap/bc/adt/core/discovery');
|
|
903
|
+
this.notifyUnauthorized(path);
|
|
904
|
+
throw new AdtApiError(`Authentication failed (401) using sap-client=${this.config.client ?? '100'}. Check SAP_CLIENT, SAP_USER, and SAP_PASSWORD.`, 401, path);
|
|
860
905
|
}
|
|
861
906
|
if (response.status === 403) {
|
|
862
|
-
throw new AdtApiError(`Access forbidden (403) using sap-client=${this.config.client ?? '100'}. Check user authorizations.`, 403,
|
|
907
|
+
throw new AdtApiError(`Access forbidden (403) using sap-client=${this.config.client ?? '100'}. Check user authorizations.`, 403, path);
|
|
863
908
|
}
|
|
864
|
-
throw new AdtApiError(`No CSRF token in response (HTTP ${response.status})`, response.status,
|
|
909
|
+
throw new AdtApiError(`No CSRF token in response (HTTP ${response.status})`, response.status, path);
|
|
865
910
|
}
|
|
866
911
|
this.csrfToken = token;
|
|
912
|
+
return path;
|
|
867
913
|
}
|
|
868
914
|
catch (err) {
|
|
869
915
|
if (err instanceof AdtApiError || err instanceof AdtNetworkError)
|
|
@@ -1070,15 +1116,17 @@ export class AdtHttpClient {
|
|
|
1070
1116
|
(options?.fetchTimeoutMs === undefined
|
|
1071
1117
|
? undefined
|
|
1072
1118
|
: (this.longOperationDispatcher ??= new Agent({ headersTimeout: 0, bodyTimeout: 0 })));
|
|
1073
|
-
response = (await
|
|
1119
|
+
response = (await fetchWithAttemptBudget(url, {
|
|
1074
1120
|
method,
|
|
1075
1121
|
headers: outbound,
|
|
1076
1122
|
body,
|
|
1077
1123
|
signal: requestSignal(options),
|
|
1124
|
+
// Automatic redirects would create uncounted sends outside the caller's allowance.
|
|
1125
|
+
...(options?.attemptBudget ? { redirect: 'manual' } : {}),
|
|
1078
1126
|
...(dispatcher ? { dispatcher } : {}),
|
|
1079
|
-
}));
|
|
1127
|
+
}, options?.attemptBudget));
|
|
1080
1128
|
}
|
|
1081
|
-
return
|
|
1129
|
+
return prepareBoundedResponse(response, url, options);
|
|
1082
1130
|
}
|
|
1083
1131
|
/**
|
|
1084
1132
|
* Execute an HTTP request through the BTP connectivity proxy using standard
|
|
@@ -1129,11 +1177,13 @@ export class AdtHttpClient {
|
|
|
1129
1177
|
if (proxy.locationId) {
|
|
1130
1178
|
proxyHeaders['SAP-Connectivity-SCC-Location_ID'] = proxy.locationId;
|
|
1131
1179
|
}
|
|
1132
|
-
|
|
1133
|
-
const
|
|
1180
|
+
// Streaming/discard adapters own their client and may close or destroy it.
|
|
1181
|
+
const reuseProxyClient = this.reuseStatefulProxyClient && options?.responseBudget === undefined && !options?.discardResponseBody;
|
|
1182
|
+
const client = reuseProxyClient ? (this.statefulProxyClient ??= new Client(proxyOrigin)) : new Client(proxyOrigin);
|
|
1134
1183
|
let responseOwnsClient = false;
|
|
1135
1184
|
try {
|
|
1136
1185
|
const signal = requestSignal(options);
|
|
1186
|
+
options?.attemptBudget?.consume();
|
|
1137
1187
|
const resp = await client.request({
|
|
1138
1188
|
method: method,
|
|
1139
1189
|
// Full URL as path — standard HTTP proxy protocol
|
|
@@ -1141,13 +1191,17 @@ export class AdtHttpClient {
|
|
|
1141
1191
|
headers: proxyHeaders,
|
|
1142
1192
|
body: body ?? undefined,
|
|
1143
1193
|
signal,
|
|
1194
|
+
// A reused client's first request must not determine later requests' parser timeouts.
|
|
1195
|
+
// The per-request abort signal still enforces fetchTimeoutMs and the caller deadline.
|
|
1196
|
+
...(options?.fetchTimeoutMs === undefined ? {} : { headersTimeout: 0, bodyTimeout: 0 }),
|
|
1144
1197
|
});
|
|
1145
1198
|
const isNullBodyStatus = resp.statusCode === 204 || resp.statusCode === 205 || resp.statusCode === 304;
|
|
1146
|
-
responseOwnsClient =
|
|
1147
|
-
|
|
1199
|
+
responseOwnsClient =
|
|
1200
|
+
!!options?.discardResponseBody || (options?.responseBudget !== undefined && !isNullBodyStatus);
|
|
1201
|
+
return await connectivityProxyResponse(resp, client, signal, options?.responseBudget !== undefined, options?.discardResponseBody);
|
|
1148
1202
|
}
|
|
1149
1203
|
finally {
|
|
1150
|
-
if (!responseOwnsClient)
|
|
1204
|
+
if (!reuseProxyClient && !responseOwnsClient)
|
|
1151
1205
|
await client.close();
|
|
1152
1206
|
}
|
|
1153
1207
|
}
|
package/dist/adt/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/adt/http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/adt/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
* model infer success from an incomplete result, which is the failure mode this
|
|
21
21
|
* registry exists to prevent.
|
|
22
22
|
*/
|
|
23
|
+
import type { DataSourcePolicyError } from './data-source-policy.js';
|
|
23
24
|
export type InternalDataOperationId = 'tadir_lookup_db' | 'tran_program_enrichment' | 'class_hierarchy' | 'interface_implementers' | 'bor_method_lookup' | 'authorization_trace';
|
|
24
25
|
export interface InternalDataOperation {
|
|
25
26
|
/** Exact canonical sources this server-owned operation reads. */
|
|
@@ -42,10 +43,14 @@ export declare function internalOperationsBlockedBy(blockedDataSources: readonly
|
|
|
42
43
|
/**
|
|
43
44
|
* Model-facing explanation for a denied internal read.
|
|
44
45
|
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
46
|
+
* Takes the error, not its text, so the policy part always honours `ARC1_MINIMAL_ERRORS`. The added
|
|
47
|
+
* guidance names only the operation's documented sources, never a configured rule or variable.
|
|
48
|
+
*/
|
|
49
|
+
export declare function internalOperationDenial(id: InternalDataOperationId, error: DataSourcePolicyError, minimalErrors: boolean): string;
|
|
50
|
+
/**
|
|
51
|
+
* Warning appended to a degraded-but-correct result when an optional internal read is denied.
|
|
52
|
+
* `reason` must be stable caller-authored text (normally an error code), never caught policy or
|
|
53
|
+
* backend text: warnings bypass `ARC1_MINIMAL_ERRORS`.
|
|
47
54
|
*/
|
|
48
|
-
export declare function internalOperationDenial(id: InternalDataOperationId, reason: string): string;
|
|
49
|
-
/** Warning appended to a degraded-but-correct result when an optional internal read is denied. */
|
|
50
55
|
export declare function internalOperationWarning(id: InternalDataOperationId, reason: string): string;
|
|
51
56
|
//# sourceMappingURL=internal-data-operations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-data-operations.d.ts","sourceRoot":"","sources":["../../src/adt/internal-data-operations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,MAAM,uBAAuB,GAC/B,iBAAiB,GACjB,yBAAyB,GACzB,iBAAiB,GACjB,wBAAwB,GACxB,mBAAmB,GACnB,qBAAqB,CAAC;AAE1B,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC;IAC1C,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,uBAAuB,EAAE,qBAAqB,CA8C3F,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAE9C;AAED,uEAAuE;AACvE,wBAAgB,2BAA2B,CACzC,kBAAkB,EAAE,SAAS,MAAM,EAAE,GACpC,KAAK,CAAC;IAAE,EAAE,EAAE,uBAAuB,CAAC;IAAC,SAAS,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAU7F;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"internal-data-operations.d.ts","sourceRoot":"","sources":["../../src/adt/internal-data-operations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,MAAM,MAAM,uBAAuB,GAC/B,iBAAiB,GACjB,yBAAyB,GACzB,iBAAiB,GACjB,wBAAwB,GACxB,mBAAmB,GACnB,qBAAqB,CAAC;AAE1B,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC;IAC1C,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,uBAAuB,EAAE,qBAAqB,CA8C3F,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAE9C;AAED,uEAAuE;AACvE,wBAAgB,2BAA2B,CACzC,kBAAkB,EAAE,SAAS,MAAM,EAAE,GACpC,KAAK,CAAC;IAAE,EAAE,EAAE,uBAAuB,CAAC;IAAC,SAAS,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAU7F;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,uBAAuB,EAC3B,KAAK,EAAE,qBAAqB,EAC5B,aAAa,EAAE,OAAO,GACrB,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG5F"}
|