arc-1 0.9.19 → 0.9.21
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 +7 -4
- package/dist/adt/client.d.ts +29 -1
- package/dist/adt/client.d.ts.map +1 -1
- package/dist/adt/client.js +72 -3
- package/dist/adt/client.js.map +1 -1
- package/dist/adt/ddic-xml.d.ts +29 -0
- package/dist/adt/ddic-xml.d.ts.map +1 -1
- package/dist/adt/ddic-xml.js +112 -1
- package/dist/adt/ddic-xml.js.map +1 -1
- package/dist/adt/devtools.d.ts +9 -2
- package/dist/adt/devtools.d.ts.map +1 -1
- package/dist/adt/devtools.js +126 -5
- package/dist/adt/devtools.js.map +1 -1
- package/dist/adt/diagnostics.d.ts +99 -4
- package/dist/adt/diagnostics.d.ts.map +1 -1
- package/dist/adt/diagnostics.js +443 -10
- package/dist/adt/diagnostics.js.map +1 -1
- package/dist/adt/errors.d.ts +13 -1
- package/dist/adt/errors.d.ts.map +1 -1
- package/dist/adt/errors.js +244 -25
- package/dist/adt/errors.js.map +1 -1
- package/dist/adt/features.d.ts.map +1 -1
- package/dist/adt/features.js +2 -1
- package/dist/adt/features.js.map +1 -1
- package/dist/adt/gcts.d.ts +3 -3
- package/dist/adt/gcts.d.ts.map +1 -1
- package/dist/adt/gcts.js +24 -3
- package/dist/adt/gcts.js.map +1 -1
- package/dist/adt/http.d.ts.map +1 -1
- package/dist/adt/http.js +4 -3
- package/dist/adt/http.js.map +1 -1
- package/dist/adt/transport.d.ts +43 -4
- package/dist/adt/transport.d.ts.map +1 -1
- package/dist/adt/transport.js +84 -10
- package/dist/adt/transport.js.map +1 -1
- package/dist/adt/types.d.ts +104 -0
- package/dist/adt/types.d.ts.map +1 -1
- package/dist/adt/xml-parser.d.ts +37 -0
- package/dist/adt/xml-parser.d.ts.map +1 -1
- package/dist/adt/xml-parser.js +102 -0
- package/dist/adt/xml-parser.js.map +1 -1
- package/dist/authz/policy.d.ts.map +1 -1
- package/dist/authz/policy.js +11 -1
- package/dist/authz/policy.js.map +1 -1
- package/dist/cache/cache.d.ts +25 -0
- package/dist/cache/cache.d.ts.map +1 -1
- package/dist/cache/cache.js.map +1 -1
- package/dist/cache/caching-layer.d.ts +31 -2
- package/dist/cache/caching-layer.d.ts.map +1 -1
- package/dist/cache/caching-layer.js +102 -2
- package/dist/cache/caching-layer.js.map +1 -1
- package/dist/cache/memory.d.ts +2 -1
- package/dist/cache/memory.d.ts.map +1 -1
- package/dist/cache/memory.js +46 -0
- package/dist/cache/memory.js.map +1 -1
- package/dist/cache/sqlite.d.ts +2 -1
- package/dist/cache/sqlite.d.ts.map +1 -1
- package/dist/cache/sqlite.js +64 -0
- package/dist/cache/sqlite.js.map +1 -1
- package/dist/cli.js +4 -2
- package/dist/cli.js.map +1 -1
- package/dist/handlers/context.d.ts.map +1 -1
- package/dist/handlers/context.js +27 -4
- package/dist/handlers/context.js.map +1 -1
- package/dist/handlers/diagnose.d.ts.map +1 -1
- package/dist/handlers/diagnose.js +88 -4
- package/dist/handlers/diagnose.js.map +1 -1
- package/dist/handlers/dispatch.d.ts.map +1 -1
- package/dist/handlers/dispatch.js +9 -0
- package/dist/handlers/dispatch.js.map +1 -1
- package/dist/handlers/feature-cache.d.ts +5 -0
- package/dist/handlers/feature-cache.d.ts.map +1 -1
- package/dist/handlers/feature-cache.js +10 -0
- package/dist/handlers/feature-cache.js.map +1 -1
- package/dist/handlers/git.d.ts.map +1 -1
- package/dist/handlers/git.js +3 -3
- package/dist/handlers/git.js.map +1 -1
- package/dist/handlers/manage.d.ts.map +1 -1
- package/dist/handlers/manage.js +44 -0
- package/dist/handlers/manage.js.map +1 -1
- package/dist/handlers/object-types.d.ts +1 -1
- package/dist/handlers/object-types.d.ts.map +1 -1
- package/dist/handlers/object-types.js +17 -2
- package/dist/handlers/object-types.js.map +1 -1
- package/dist/handlers/query.d.ts.map +1 -1
- package/dist/handlers/query.js +35 -3
- package/dist/handlers/query.js.map +1 -1
- package/dist/handlers/read.d.ts.map +1 -1
- package/dist/handlers/read.js +33 -8
- package/dist/handlers/read.js.map +1 -1
- package/dist/handlers/schemas.d.ts +79 -5
- package/dist/handlers/schemas.d.ts.map +1 -1
- package/dist/handlers/schemas.js +33 -0
- package/dist/handlers/schemas.js.map +1 -1
- package/dist/handlers/tool-registry.d.ts +4 -4
- package/dist/handlers/tool-registry.d.ts.map +1 -1
- package/dist/handlers/tool-registry.js +6 -0
- package/dist/handlers/tool-registry.js.map +1 -1
- package/dist/handlers/tools.d.ts.map +1 -1
- package/dist/handlers/tools.js +132 -34
- package/dist/handlers/tools.js.map +1 -1
- package/dist/handlers/transport.d.ts.map +1 -1
- package/dist/handlers/transport.js +82 -5
- package/dist/handlers/transport.js.map +1 -1
- package/dist/handlers/write/create.d.ts.map +1 -1
- package/dist/handlers/write/create.js +224 -7
- package/dist/handlers/write/create.js.map +1 -1
- package/dist/handlers/write-helpers.d.ts +1 -0
- package/dist/handlers/write-helpers.d.ts.map +1 -1
- package/dist/handlers/write-helpers.js +49 -5
- package/dist/handlers/write-helpers.js.map +1 -1
- package/dist/handlers/write.d.ts.map +1 -1
- package/dist/handlers/write.js +18 -2
- package/dist/handlers/write.js.map +1 -1
- package/dist/plugins/manifest-interpreter.d.ts.map +1 -1
- package/dist/plugins/manifest-interpreter.js +3 -1
- package/dist/plugins/manifest-interpreter.js.map +1 -1
- package/dist/public/testing.d.ts +2 -1
- package/dist/public/testing.d.ts.map +1 -1
- package/dist/public/testing.js +13 -0
- package/dist/public/testing.js.map +1 -1
- package/dist/public/types.d.ts +2 -2
- package/dist/public/types.d.ts.map +1 -1
- package/dist/public/ui/app.js +1044 -0
- package/dist/public/ui/arc-mark.svg +5 -0
- package/dist/public/ui/index.html +43 -0
- package/dist/public/ui/styles.css +563 -0
- package/dist/server/audit.d.ts +4 -2
- package/dist/server/audit.d.ts.map +1 -1
- package/dist/server/audit.js +42 -13
- package/dist/server/audit.js.map +1 -1
- package/dist/server/config.d.ts.map +1 -1
- package/dist/server/config.js +103 -1
- package/dist/server/config.js.map +1 -1
- package/dist/server/http.d.ts +2 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +22 -1
- package/dist/server/http.js.map +1 -1
- package/dist/server/logger.d.ts +1 -1
- package/dist/server/logger.d.ts.map +1 -1
- package/dist/server/logger.js +9 -4
- package/dist/server/logger.js.map +1 -1
- package/dist/server/plugin-loader.d.ts.map +1 -1
- package/dist/server/plugin-loader.js +1 -1
- package/dist/server/plugin-loader.js.map +1 -1
- package/dist/server/safe-http-client.d.ts +12 -6
- package/dist/server/safe-http-client.d.ts.map +1 -1
- package/dist/server/safe-http-client.js +84 -15
- package/dist/server/safe-http-client.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 +29 -4
- package/dist/server/server.js.map +1 -1
- package/dist/server/sinks/file.d.ts +3 -0
- package/dist/server/sinks/file.d.ts.map +1 -1
- package/dist/server/sinks/file.js +15 -3
- package/dist/server/sinks/file.js.map +1 -1
- package/dist/server/sinks/stderr.d.ts.map +1 -1
- package/dist/server/sinks/stderr.js +2 -30
- package/dist/server/sinks/stderr.js.map +1 -1
- package/dist/server/types.d.ts +22 -0
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/types.js +7 -0
- package/dist/server/types.js.map +1 -1
- package/dist/server/ui-log-buffer.d.ts +29 -0
- package/dist/server/ui-log-buffer.d.ts.map +1 -0
- package/dist/server/ui-log-buffer.js +72 -0
- package/dist/server/ui-log-buffer.js.map +1 -0
- package/dist/server/ui-state.d.ts +32 -0
- package/dist/server/ui-state.d.ts.map +1 -0
- package/dist/server/ui-state.js +230 -0
- package/dist/server/ui-state.js.map +1 -0
- package/dist/server/ui.d.ts +20 -0
- package/dist/server/ui.d.ts.map +1 -0
- package/dist/server/ui.js +275 -0
- package/dist/server/ui.js.map +1 -0
- package/package.json +13 -9
|
@@ -14,10 +14,10 @@ import { logger } from '../../server/logger.js';
|
|
|
14
14
|
import { buildBatchActivationStatuses, formatBatchActivationStatuses, } from '../activate.js';
|
|
15
15
|
import { invalidateInactiveList } from '../cache-security.js';
|
|
16
16
|
import { guardCdsSyntax } from '../cds-hints.js';
|
|
17
|
-
import { cachedFeatures, isTablesEndpointAvailable } from '../feature-cache.js';
|
|
17
|
+
import { cachedFeatures, isTablesEndpointAvailable, isTableTypesEndpointAvailable } from '../feature-cache.js';
|
|
18
18
|
import { normalizeObjectType, normalizeWriteObjectType, objectBasePath, objectUrlForType, sourceUrlForType, } from '../object-types.js';
|
|
19
19
|
import { errorResult, textResult } from '../shared.js';
|
|
20
|
-
import { buildCreateXml, createContentTypeForType, dtelNeedsPostCreateUpdate, getMetadataWriteProperties, isMetadataWriteType, mergePreWriteWarnings, runPreWriteLint, runRapPreflightValidation, SKTD_V2_CONTENT_TYPE, stripFmParamCommentBlock, TABL_DT_WRITE_UNAVAILABLE_HINT, tryPostSaveSyntaxCheck, vendorContentTypeForType, } from '../write-helpers.js';
|
|
20
|
+
import { buildCreateXml, createContentTypeForType, dtelNeedsPostCreateUpdate, getMetadataWriteProperties, isMetadataWriteType, mergePreWriteWarnings, runPreWriteLint, runRapPreflightValidation, SKTD_V2_CONTENT_TYPE, stripFmParamCommentBlock, TABL_DT_WRITE_UNAVAILABLE_HINT, TTYP_WRITE_UNAVAILABLE_HINT, tryPostSaveSyntaxCheck, vendorContentTypeForType, } from '../write-helpers.js';
|
|
21
21
|
function normalizePackageOverride(rawPackage, fallback) {
|
|
22
22
|
if (rawPackage === undefined || rawPackage === null) {
|
|
23
23
|
return fallback;
|
|
@@ -32,6 +32,182 @@ function normalizeTransportOverride(rawTransport) {
|
|
|
32
32
|
const value = String(rawTransport).trim();
|
|
33
33
|
return value || undefined;
|
|
34
34
|
}
|
|
35
|
+
function ttypPostCreateFailureMessage(name, cause) {
|
|
36
|
+
const detail = cause instanceof Error ? cause.message : String(cause);
|
|
37
|
+
return (`TTYP post-create update failed for ${name} after SAP accepted the create POST. ` +
|
|
38
|
+
`The object may remain as SAP's default metadata shell (CHAR). To recover, run ` +
|
|
39
|
+
`SAPWrite(action="update", type="TTYP", name="${name}", rowType=…) to write the intended row type, ` +
|
|
40
|
+
`or delete it — a plain re-create fails with "already exists". Verify with SAPRead first. ` +
|
|
41
|
+
detail);
|
|
42
|
+
}
|
|
43
|
+
async function putTtypMetadataAfterCreate(client, objectUrl, name, body, contentType, transport) {
|
|
44
|
+
try {
|
|
45
|
+
await client.http.withStatefulSession(async (session) => {
|
|
46
|
+
const lock = await lockObject(session, client.safety, objectUrl, 'MODIFY', cachedFeatures?.abapRelease);
|
|
47
|
+
const lockTransport = transport ?? (lock.corrNr || undefined);
|
|
48
|
+
try {
|
|
49
|
+
await updateObject(session, client.safety, objectUrl, body, lock.lockHandle, contentType, lockTransport);
|
|
50
|
+
}
|
|
51
|
+
finally {
|
|
52
|
+
await unlockObject(session, objectUrl, lock.lockHandle);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
throw new Error(ttypPostCreateFailureMessage(name, err));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
const KTD_REF_OBJECT_TYPES_ROUTABLE_BY_ARC = new Set([
|
|
61
|
+
'BDEF/BAC',
|
|
62
|
+
'BDEF/BAE',
|
|
63
|
+
'BDEF/BAF',
|
|
64
|
+
'BDEF/BAS',
|
|
65
|
+
'BDEF/BDE',
|
|
66
|
+
'BDEF/BDO',
|
|
67
|
+
'BDEF/BSO',
|
|
68
|
+
'BDEF/BVA',
|
|
69
|
+
'DDLS/DF',
|
|
70
|
+
'DEVC/K',
|
|
71
|
+
'SRVB/SVB',
|
|
72
|
+
'SRVD/SRV',
|
|
73
|
+
]);
|
|
74
|
+
// Live WBOBJTYPES_SCOPE registry entries for SCOPE_ID = 'DOCUMENTATION' observed on
|
|
75
|
+
// SAP_BASIS 758 and 816. This is diagnostic evidence, not a create allowlist:
|
|
76
|
+
// KTD create still needs a verified ADT parent URI route for <sktd:refObject>.
|
|
77
|
+
const KTD_REF_OBJECT_TYPES_SAP_DOCUMENTATION_SCOPE = new Set([
|
|
78
|
+
...KTD_REF_OBJECT_TYPES_ROUTABLE_BY_ARC,
|
|
79
|
+
'APIC/TYP',
|
|
80
|
+
'CFDB/CFB',
|
|
81
|
+
'CFDG/CFG',
|
|
82
|
+
'CFDS/CFS',
|
|
83
|
+
'CHKO/TYP',
|
|
84
|
+
'DDLA/ADF',
|
|
85
|
+
'DRTY/STY',
|
|
86
|
+
'DSFD/SCF',
|
|
87
|
+
'EEEC/EVC',
|
|
88
|
+
'EVTB/EVB',
|
|
89
|
+
'PARA/R',
|
|
90
|
+
'RONT/ROT',
|
|
91
|
+
'SMBC/TYP',
|
|
92
|
+
'SOD1',
|
|
93
|
+
'SOD2',
|
|
94
|
+
]);
|
|
95
|
+
const KTD_REF_OBJECT_TYPES_HINT = 'DDLS/DF, BDEF/BDO, SRVD/SRV, SRVB/SVB, DEVC/K';
|
|
96
|
+
const KTD_SAP_DOCUMENTATION_SCOPE_HINT = 'APIC/TYP, BDEF/*, CFDB/CFB, CFDG/CFG, CFDS/CFS, CHKO/TYP, DDLA/ADF, DDLS/DF, DEVC/K, ' +
|
|
97
|
+
'DRTY/STY, DSFD/SCF, EEEC/EVC, EVTB/EVB, PARA/R, RONT/ROT, SMBC/TYP, SOD1, SOD2, ' +
|
|
98
|
+
'SRVB/SVB, SRVD/SRV';
|
|
99
|
+
function normalizeKtdRefObjectType(refObjectType) {
|
|
100
|
+
return refObjectType.trim().toUpperCase();
|
|
101
|
+
}
|
|
102
|
+
function validateKtdRefObjectType(refObjectType) {
|
|
103
|
+
const normalized = normalizeKtdRefObjectType(refObjectType);
|
|
104
|
+
if (KTD_REF_OBJECT_TYPES_ROUTABLE_BY_ARC.has(normalized)) {
|
|
105
|
+
return undefined;
|
|
106
|
+
}
|
|
107
|
+
if (KTD_REF_OBJECT_TYPES_SAP_DOCUMENTATION_SCOPE.has(normalized)) {
|
|
108
|
+
return (`SKTD/KTD create recognizes refObjectType "${normalized}" as observed SAP-registered for KTD DOCUMENTATION scope on SAP_BASIS 758/816, ` +
|
|
109
|
+
`but ARC-1 does not yet have verified ADT parent URI routing for this type. ` +
|
|
110
|
+
`ARC-1 only creates KTDs when it can build both the SAP refObjectType and the parent adtcore:uri. ` +
|
|
111
|
+
`ARC-1 currently supports KTD creation for: ${KTD_REF_OBJECT_TYPES_HINT}. ` +
|
|
112
|
+
`Other SAP-registered KTD parent types verified from WBOBJTYPES_SCOPE: ${KTD_SAP_DOCUMENTATION_SCOPE_HINT}.`);
|
|
113
|
+
}
|
|
114
|
+
const codeDocumentationHint = normalized === 'CLAS/OC' || normalized === 'INTF/OI' || normalized === 'PROG/P'
|
|
115
|
+
? '\n\nUse ABAP Doc for classes, interfaces, and programs. These object types were not registered for KTD DOCUMENTATION scope on the tested SAP_BASIS 758 and 816 systems; SAP documentation positions ABAP Doc as the source-code documentation mechanism for classes and interfaces.'
|
|
116
|
+
: '';
|
|
117
|
+
return (`SKTD/KTD create will not attempt unverified refObjectType "${normalized}". ` +
|
|
118
|
+
`KTD creation requires both a SAP Workbench DOCUMENTATION scope handler for the parent object type and an exact ADT parent object URI; ` +
|
|
119
|
+
`posting unknown parent types can trigger a SAP short dump in CL_KTD_UTILITY=>GET_DOCU_STRUCTURE before SAP returns a normal validation error. ` +
|
|
120
|
+
`ARC-1 currently supports KTD creation for: ${KTD_REF_OBJECT_TYPES_HINT}.` +
|
|
121
|
+
codeDocumentationHint);
|
|
122
|
+
}
|
|
123
|
+
const BDEF_IDENTIFIER_PATTERN = '(?:/[A-Za-z0-9_]+/[A-Za-z_][A-Za-z0-9_]*|[A-Za-z_][A-Za-z0-9_]*)';
|
|
124
|
+
const BDEF_EXTENSION_PATTERN = new RegExp(String.raw `\bextend\s+behavior\s+for\s+(${BDEF_IDENTIFIER_PATTERN})\b`, 'i');
|
|
125
|
+
function replaceNonNewlineWithSpaces(text) {
|
|
126
|
+
return text.replace(/[^\n]/g, ' ');
|
|
127
|
+
}
|
|
128
|
+
function stripBdefCommentsAndStrings(source) {
|
|
129
|
+
const withoutBlockComments = source.replace(/\/\*[\s\S]*?\*\//g, replaceNonNewlineWithSpaces);
|
|
130
|
+
return withoutBlockComments
|
|
131
|
+
.split('\n')
|
|
132
|
+
.map((line) => {
|
|
133
|
+
if (/^\s*\*/.test(line))
|
|
134
|
+
return '';
|
|
135
|
+
let stripped = '';
|
|
136
|
+
let inString = false;
|
|
137
|
+
for (let i = 0; i < line.length; i++) {
|
|
138
|
+
const ch = line[i];
|
|
139
|
+
const next = line[i + 1];
|
|
140
|
+
if (!inString) {
|
|
141
|
+
if (ch === '"' || (ch === '/' && next === '/'))
|
|
142
|
+
break;
|
|
143
|
+
if (ch === "'") {
|
|
144
|
+
inString = true;
|
|
145
|
+
stripped += ' ';
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
stripped += ch;
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
if (ch === "'" && next === "'") {
|
|
152
|
+
stripped += ' ';
|
|
153
|
+
i++;
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
if (ch === "'") {
|
|
157
|
+
inString = false;
|
|
158
|
+
stripped += ' ';
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
stripped += ' ';
|
|
162
|
+
}
|
|
163
|
+
return stripped;
|
|
164
|
+
})
|
|
165
|
+
.join('\n');
|
|
166
|
+
}
|
|
167
|
+
function extractBdefBehaviorExtensionBase(source) {
|
|
168
|
+
return BDEF_EXTENSION_PATTERN.exec(stripBdefCommentsAndStrings(source))?.[1];
|
|
169
|
+
}
|
|
170
|
+
function sameBdefName(left, right) {
|
|
171
|
+
return left.toUpperCase() === right.toUpperCase();
|
|
172
|
+
}
|
|
173
|
+
function applyBdefBehaviorExtensionMetadata(type, source, metadataProperties) {
|
|
174
|
+
if (type !== 'BDEF' || !source)
|
|
175
|
+
return undefined;
|
|
176
|
+
const baseBdef = extractBdefBehaviorExtensionBase(source);
|
|
177
|
+
if (!baseBdef)
|
|
178
|
+
return undefined;
|
|
179
|
+
metadataProperties.behaviorExtension = true;
|
|
180
|
+
metadataProperties.baseBdef = baseBdef;
|
|
181
|
+
return baseBdef;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* After a behavior-extension create+PUT, read the inactive draft back and confirm it really is an
|
|
185
|
+
* `extend behavior for <base>` extension. Returns a NON-BLOCKING warning string if it isn't (the
|
|
186
|
+
* object was still created — SAP may have scaffolded a plain definition, e.g. if a future release
|
|
187
|
+
* ignores the ADT template). On the tested releases (758/816) this never fires; it's a cheap
|
|
188
|
+
* data-integrity hint, not a hard gate. Returns undefined when the extension is confirmed.
|
|
189
|
+
*/
|
|
190
|
+
async function warnIfBdefExtensionUnconfirmed(client, name, expectedBaseBdef) {
|
|
191
|
+
const readBack = await client.getBdef(name, { version: 'inactive' });
|
|
192
|
+
const actualBaseBdef = extractBdefBehaviorExtensionBase(readBack.source);
|
|
193
|
+
if (actualBaseBdef && sameBdefName(actualBaseBdef, expectedBaseBdef))
|
|
194
|
+
return undefined;
|
|
195
|
+
const actual = actualBaseBdef !== undefined
|
|
196
|
+
? `read-back shows \`extend behavior for ${actualBaseBdef}\` instead`
|
|
197
|
+
: 'read-back shows no `extend behavior for` declaration';
|
|
198
|
+
return (`Warning: created BDEF ${name}, but the inactive read-back did not confirm ` +
|
|
199
|
+
`\`extend behavior for ${expectedBaseBdef}\` (${actual}). SAP may have scaffolded a plain behavior ` +
|
|
200
|
+
'definition (e.g. if the ADT template was ignored or the base BDEF is not extensible). ' +
|
|
201
|
+
`Verify with SAPRead(type="BDEF", name="${name}", version="inactive") before activating.`);
|
|
202
|
+
}
|
|
203
|
+
function isKtdCreateEndpointUnavailable(err) {
|
|
204
|
+
if (!(err instanceof AdtApiError))
|
|
205
|
+
return false;
|
|
206
|
+
if (err.statusCode !== 404 || err.path !== '/sap/bc/adt/documentation/ktd/documents')
|
|
207
|
+
return false;
|
|
208
|
+
const combined = `${err.message}\n${err.responseBody ?? ''}`.toLowerCase();
|
|
209
|
+
return combined.includes('resource') && combined.includes('/sap/bc/adt/documentation/ktd/documents');
|
|
210
|
+
}
|
|
35
211
|
export async function writeActionCreate(ctx) {
|
|
36
212
|
const { client, args, config, type, name, source, transport, lintOverride, preflightOverride, objectUrl, srcUrl, invalidateWrittenObject, } = ctx;
|
|
37
213
|
const pkg = String(args.package ?? '$TMP');
|
|
@@ -99,12 +275,15 @@ export async function writeActionCreate(ctx) {
|
|
|
99
275
|
return errorResult(`AFF metadata validation failed for ${type} ${name}:\n- ${(affResult.errors ?? []).join('\n- ')}\n\nFix the metadata and retry.`);
|
|
100
276
|
}
|
|
101
277
|
if (type === 'SKTD') {
|
|
102
|
-
// A KTD is not a standalone object — it documents a parent object
|
|
278
|
+
// A KTD is not a standalone object — it documents a parent object with a WB DOCUMENTATION handler.
|
|
103
279
|
// The create POST goes to the collection URL with a sktd:docu XML body that references the parent.
|
|
104
|
-
const refType = String(args.refObjectType ?? '');
|
|
280
|
+
const refType = normalizeKtdRefObjectType(String(args.refObjectType ?? ''));
|
|
105
281
|
if (!refType) {
|
|
106
|
-
return errorResult(
|
|
282
|
+
return errorResult(`"refObjectType" is required for SKTD/KTD create — the ADT type+subtype of the parent object being documented (for example: ${KTD_REF_OBJECT_TYPES_HINT}).`);
|
|
107
283
|
}
|
|
284
|
+
const refTypeError = validateKtdRefObjectType(refType);
|
|
285
|
+
if (refTypeError)
|
|
286
|
+
return errorResult(refTypeError);
|
|
108
287
|
const refName = String(args.refObjectName ?? name);
|
|
109
288
|
// SAP rule: a KTD's own name must equal the parent object's name (one KTD per object).
|
|
110
289
|
// Creating a KTD named differently from its parent fails server-side with a cryptic
|
|
@@ -123,7 +302,18 @@ export async function writeActionCreate(ctx) {
|
|
|
123
302
|
<sktd:refObject adtcore:description="${escapeXmlAttr(refDescription)}" adtcore:name="${escapeXmlAttr(refName)}" adtcore:type="${escapeXmlAttr(refType)}" adtcore:uri="${escapeXmlAttr(refUri)}"/>
|
|
124
303
|
</sktd:docu>`;
|
|
125
304
|
const ktdCreateUrl = '/sap/bc/adt/documentation/ktd/documents';
|
|
126
|
-
|
|
305
|
+
let ktdResult;
|
|
306
|
+
try {
|
|
307
|
+
ktdResult = await createObject(client.http, client.safety, ktdCreateUrl, ktdBody, SKTD_V2_CONTENT_TYPE, effectiveTransport, undefined, cachedFeatures?.abapRelease);
|
|
308
|
+
}
|
|
309
|
+
catch (err) {
|
|
310
|
+
if (isKtdCreateEndpointUnavailable(err)) {
|
|
311
|
+
return errorResult(`SKTD/KTD create endpoint is not available on this SAP system: ${ktdCreateUrl} returned 404. ` +
|
|
312
|
+
`KTD creation requires SAP_BASIS 7.55+ with the ADT Knowledge Transfer Document service active. ` +
|
|
313
|
+
`ARC-1 did not create "${name}". On older systems, use the documentation mechanism supported by that release or connect to a KTD-capable backend.`);
|
|
314
|
+
}
|
|
315
|
+
throw err;
|
|
316
|
+
}
|
|
127
317
|
// If initial Markdown was provided, follow up with an update PUT to write it.
|
|
128
318
|
// Same envelope contract as the update path: fetch-then-rewrite ensures we
|
|
129
319
|
// PUT back exactly the shape SAP gave us (with all the server-assigned
|
|
@@ -142,6 +332,7 @@ export async function writeActionCreate(ctx) {
|
|
|
142
332
|
// SAP ADT requires the root element to match the object type —
|
|
143
333
|
// a generic objectReferences body returns 400 "System expected the element ...".
|
|
144
334
|
const metadataProperties = getMetadataWriteProperties(args);
|
|
335
|
+
const bdefExtensionBase = applyBdefBehaviorExtensionMetadata(type, source, metadataProperties);
|
|
145
336
|
const body = buildCreateXml(type, name, pkg, description, metadataProperties, config.language, config.username);
|
|
146
337
|
// Step 1: Create the object (metadata only)
|
|
147
338
|
const createUrl = objectUrl.replace(/\/[^/]+$/, ''); // parent collection URL
|
|
@@ -194,6 +385,11 @@ export async function writeActionCreate(ctx) {
|
|
|
194
385
|
}
|
|
195
386
|
});
|
|
196
387
|
}
|
|
388
|
+
// TTYP: the POST creates a default-typed (CHAR) shell — a follow-up PUT writes the real row type.
|
|
389
|
+
if (type === 'TTYP') {
|
|
390
|
+
const ct = vendorContentTypeForType(type);
|
|
391
|
+
await putTtypMetadataAfterCreate(client, objectUrl, name, body, ct, effectiveTransport);
|
|
392
|
+
}
|
|
197
393
|
invalidateWrittenObject();
|
|
198
394
|
const followUpHint = type === 'SRVB'
|
|
199
395
|
? `\n\nNext steps:\n1. SAPActivate(type="SRVB", name="${name}")\n2. SAPActivate(action="publish_srvb", name="${name}")`
|
|
@@ -248,9 +444,12 @@ export async function writeActionCreate(ctx) {
|
|
|
248
444
|
return textResult(`Created ${type} ${name} in package ${pkg}, but source was rejected by lint:\n${lintWarnings.result.content[0].text}`);
|
|
249
445
|
}
|
|
250
446
|
await safeUpdateSource(client.http, client.safety, objectUrl, srcUrl, createSource, effectiveTransport, cachedFeatures?.abapRelease);
|
|
447
|
+
const bdefExtensionWarning = bdefExtensionBase
|
|
448
|
+
? await warnIfBdefExtensionUnconfirmed(client, name, bdefExtensionBase)
|
|
449
|
+
: undefined;
|
|
251
450
|
invalidateWrittenObject(type, name);
|
|
252
451
|
const msg = `Created ${type} ${name} in package ${pkg} and wrote source code.`;
|
|
253
|
-
const warnings = mergePreWriteWarnings(preflightWarnings.warnings, lintWarnings.warnings, fmParamStripWarning, fmParamMergeWarning);
|
|
452
|
+
const warnings = mergePreWriteWarnings(preflightWarnings.warnings, lintWarnings.warnings, fmParamStripWarning, fmParamMergeWarning, bdefExtensionWarning);
|
|
254
453
|
return warnings ? textResult(`${msg}\n\n${warnings}`) : textResult(msg);
|
|
255
454
|
}
|
|
256
455
|
return textResult(`Created ${type} ${name} in package ${pkg}.\n${result}`);
|
|
@@ -426,9 +625,23 @@ export async function writeActionBatchCreate(ctx) {
|
|
|
426
625
|
});
|
|
427
626
|
break;
|
|
428
627
|
}
|
|
628
|
+
// TTYP create needs /ddic/tabletypes/ (absent on NW 7.50) — mirror the TABL/DT gate above.
|
|
629
|
+
if (objType === 'TTYP' && isTableTypesEndpointAvailable() === false) {
|
|
630
|
+
results.push({
|
|
631
|
+
type: objType,
|
|
632
|
+
name: objName,
|
|
633
|
+
packageName: objPackage,
|
|
634
|
+
status: 'failed',
|
|
635
|
+
error: TTYP_WRITE_UNAVAILABLE_HINT,
|
|
636
|
+
});
|
|
637
|
+
break;
|
|
638
|
+
}
|
|
429
639
|
const objUrl = objectUrlForType(objType, objName);
|
|
430
640
|
const createUrl = objUrl.replace(/\/[^/]+$/, '');
|
|
431
641
|
const objMetadataProps = getMetadataWriteProperties(obj);
|
|
642
|
+
// Sets behaviorExtension + baseBdef on the metadata so buildCreateXml emits the adtTemplate;
|
|
643
|
+
// the return value (used for the optional read-back warning) isn't needed in the batch path.
|
|
644
|
+
applyBdefBehaviorExtensionMetadata(objType, objSource, objMetadataProps);
|
|
432
645
|
const body = buildCreateXml(objType, objName, objPackage, objDescription, objMetadataProps, config.language, config.username);
|
|
433
646
|
const contentType = createContentTypeForType(objType);
|
|
434
647
|
const needsPackageParam = objType === 'BDEF' || objType === 'TABL' || objType === 'TABL/DT' || objType === 'TABL/DS';
|
|
@@ -457,6 +670,10 @@ export async function writeActionBatchCreate(ctx) {
|
|
|
457
670
|
}
|
|
458
671
|
});
|
|
459
672
|
}
|
|
673
|
+
// TTYP POST creates SAP's default table-type shell; PUT the real row type before activation.
|
|
674
|
+
if (objType === 'TTYP') {
|
|
675
|
+
await putTtypMetadataAfterCreate(client, objUrl, objName, body, contentType, objTransport);
|
|
676
|
+
}
|
|
460
677
|
// Step 2: Write source if provided
|
|
461
678
|
if (!metadataObject && objSource) {
|
|
462
679
|
const srcUrl = sourceUrlForType(objType, objName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/handlers/write/create.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/handlers/write/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAoB,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAEL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAmB,UAAU,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,8BAA8B,EAC9B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAG7B,SAAS,wBAAwB,CAAC,UAAmB,EAAE,QAAgB;IACrE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,OAAO,KAAK,IAAI,QAAQ,CAAC;AAC3B,CAAC;AAED,SAAS,0BAA0B,CAAC,YAAqB;IACvD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1C,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC;AAED,SAAS,4BAA4B,CAAC,IAAY,EAAE,KAAc;IAChE,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACtE,OAAO,CACL,sCAAsC,IAAI,uCAAuC;QACjF,gFAAgF;QAChF,gDAAgD,IAAI,gDAAgD;QACpG,2FAA2F;QAC3F,MAAM,CACP,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,MAAiC,EACjC,SAAiB,EACjB,IAAY,EACZ,IAAY,EACZ,WAAmB,EACnB,SAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACtD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;YACxG,MAAM,aAAa,GAAG,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;YAC9D,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;YAC3G,CAAC;oBAAS,CAAC;gBACT,MAAM,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,MAAM,oCAAoC,GAAG,IAAI,GAAG,CAAC;IACnD,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,SAAS;IACT,QAAQ;IACR,UAAU;IACV,UAAU;CACX,CAAC,CAAC;AAEH,oFAAoF;AACpF,8EAA8E;AAC9E,+EAA+E;AAC/E,MAAM,4CAA4C,GAAG,IAAI,GAAG,CAAC;IAC3D,GAAG,oCAAoC;IACvC,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,QAAQ;IACR,UAAU;IACV,UAAU;IACV,MAAM;IACN,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,+CAA+C,CAAC;AAClF,MAAM,gCAAgC,GACpC,uFAAuF;IACvF,kFAAkF;IAClF,oBAAoB,CAAC;AAEvB,SAAS,yBAAyB,CAAC,aAAqB;IACtD,OAAO,aAAa,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,wBAAwB,CAAC,aAAqB;IACrD,MAAM,UAAU,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAC5D,IAAI,oCAAoC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,4CAA4C,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACjE,OAAO,CACL,6CAA6C,UAAU,iFAAiF;YACxI,6EAA6E;YAC7E,mGAAmG;YACnG,8CAA8C,yBAAyB,IAAI;YAC3E,yEAAyE,gCAAgC,GAAG,CAC7G,CAAC;IACJ,CAAC;IACD,MAAM,qBAAqB,GACzB,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ;QAC7E,CAAC,CAAC,qRAAqR;QACvR,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,CACL,8DAA8D,UAAU,KAAK;QAC7E,wIAAwI;QACxI,gJAAgJ;QAChJ,8CAA8C,yBAAyB,GAAG;QAC1E,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,uBAAuB,GAAG,kEAAkE,CAAC;AACnG,MAAM,sBAAsB,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,gCAAgC,uBAAuB,KAAK,EAAE,GAAG,CAAC,CAAC;AAEvH,SAAS,2BAA2B,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc;IACjD,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,2BAA2B,CAAC,CAAC;IAC9F,OAAO,oBAAoB;SACxB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC;oBAAE,MAAM;gBACtD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;oBACf,QAAQ,GAAG,IAAI,CAAC;oBAChB,QAAQ,IAAI,GAAG,CAAC;oBAChB,SAAS;gBACX,CAAC;gBACD,QAAQ,IAAI,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,QAAQ,IAAI,IAAI,CAAC;gBACjB,CAAC,EAAE,CAAC;gBACJ,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,QAAQ,GAAG,KAAK,CAAC;gBACjB,QAAQ,IAAI,GAAG,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,QAAQ,IAAI,GAAG,CAAC;QAClB,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,gCAAgC,CAAC,MAAc;IACtD,OAAO,sBAAsB,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,kCAAkC,CACzC,IAAY,EACZ,MAA0B,EAC1B,kBAA2C;IAE3C,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,QAAQ,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,kBAAkB,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAC5C,kBAAkB,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACvC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,8BAA8B,CAC3C,MAAiC,EACjC,IAAY,EACZ,gBAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACrE,MAAM,cAAc,GAAG,gCAAgC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACzE,IAAI,cAAc,IAAI,YAAY,CAAC,cAAc,EAAE,gBAAgB,CAAC;QAAE,OAAO,SAAS,CAAC;IAEvF,MAAM,MAAM,GACV,cAAc,KAAK,SAAS;QAC1B,CAAC,CAAC,yCAAyC,cAAc,YAAY;QACrE,CAAC,CAAC,sDAAsD,CAAC;IAC7D,OAAO,CACL,yBAAyB,IAAI,+CAA+C;QAC5E,yBAAyB,gBAAgB,OAAO,MAAM,8CAA8C;QACpG,wFAAwF;QACxF,0CAA0C,IAAI,2CAA2C,CAC1F,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CAAC,GAAY;IAClD,IAAI,CAAC,CAAC,GAAG,YAAY,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,yCAAyC;QAAE,OAAO,KAAK,CAAC;IACnG,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3E,OAAO,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,yCAAyC,CAAC,CAAC;AACvG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAoB;IAC1D,MAAM,EACJ,MAAM,EACN,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,MAAM,EACN,uBAAuB,GACxB,GAAG,GAAG,CAAC;IACR,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;IAC3C,MAAM,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;IAErD,6FAA6F;IAC7F,yEAAyE;IACzE,iFAAiF;IACjF,yEAAyE;IACzE,IAAI,kBAAkB,GAAG,SAAS,CAAC;IACnC,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9F,IAAI,aAAa,CAAC,eAAe,EAAE,CAAC;gBAClC,iEAAiE;gBACjE,kBAAkB,GAAG,aAAa,CAAC,eAAe,CAAC;YACrD,CAAC;iBAAM,IAAI,CAAC,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;gBAC7D,4DAA4D;gBAC5D,MAAM,YAAY,GAChB,aAAa,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;oBACzC,CAAC,CAAC,8CAA8C,aAAa,CAAC,kBAAkB;yBAC3E,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;yBACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC;yBACxD,IAAI,CAAC,IAAI,CAAC,EAAE;oBACjB,CAAC,CAAC,EAAE,CAAC;gBACT,OAAO,WAAW,CAChB,YAAY,GAAG,+EAA+E;oBAC5F,wBAAwB;oBACxB,+EAA+E;oBAC/E,+EAA+E;oBAC/E,0EAA0E;oBAC1E,YAAY,CACf,CAAC;YACJ,CAAC;YACD,6EAA6E;QAC/E,CAAC;QAAC,MAAM,CAAC;YACP,sFAAsF;YACtF,mEAAmE;QACrE,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,sFAAsF;IACtF,oFAAoF;IACpF,0FAA0F;IAC1F,mEAAmE;IACnE,sFAAsF;IACtF,IAAI,IAAI,KAAK,MAAM,IAAI,kBAAkB,EAAE,CAAC;QAC1C,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAC9E,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,WAAW,CAChB,cAAc,kBAAkB,sCAAsC;gBACpE,wEAAwE;gBACxE,uHAAuH,CAC1H,CAAC;QACJ,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAC9D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,iFAAiF;IACjF,MAAM,iBAAiB,GAAG,yBAAyB,CACjD,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,MAAM,CAAC,UAAU,EACjB,iBAAiB,CAClB,CAAC;IACF,IAAI,iBAAiB,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC,MAAO,CAAC;IAEhE,4DAA4D;IAC5D,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,WAAW,CAChB,sCAAsC,IAAI,IAAI,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,iCAAiC,CACjI,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,mGAAmG;QACnG,mGAAmG;QACnG,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,WAAW,CAChB,8HAA8H,yBAAyB,IAAI,CAC5J,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,YAAY;YAAE,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;QACnD,uFAAuF;QACvF,oFAAoF;QACpF,wEAAwE;QACxE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACjD,OAAO,WAAW,CAChB,cAAc,IAAI,+BAA+B,OAAO,0HAA0H,OAAO,wDAAwD,OAAO,qBAAqB,OAAO,UAAU,CAC/R,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QAC/D,gGAAgG;QAChG,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,GAAG,cAAc,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAE9F,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG;4HACwG,OAAO,mBAAmB,aAAa,CAAC,IAAI,CAAC,qDAAqD,OAAO;sCAC/L,aAAa,CAAC,GAAG,CAAC;yCACf,aAAa,CAAC,cAAc,CAAC,mBAAmB,aAAa,CAAC,OAAO,CAAC,mBAAmB,aAAa,CAAC,OAAO,CAAC,kBAAkB,aAAa,CAAC,MAAM,CAAC;aAClL,CAAC;QAEV,MAAM,YAAY,GAAG,yCAAyC,CAAC;QAC/D,IAAI,SAAiB,CAAC;QACtB,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,YAAY,CAC5B,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,YAAY,EACZ,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,cAAc,EAAE,WAAW,CAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,8BAA8B,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,OAAO,WAAW,CAChB,iEAAiE,YAAY,iBAAiB;oBAC5F,iGAAiG;oBACjG,yBAAyB,IAAI,qHAAqH,CACrJ,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,8EAA8E;QAC9E,2EAA2E;QAC3E,uEAAuE;QACvE,wCAAwC;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,IAAI,GAAG,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACrD,MAAM,gBAAgB,CACpB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,SAAS,EACT,IAAI,EACJ,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EAAE,WAAW,CAC5B,CAAC;YACF,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACpC,OAAO,UAAU,CACf,gBAAgB,IAAI,eAAe,GAAG,2EAA2E,IAAI,QAAQ,SAAS,EAAE,CACzI,CAAC;QACJ,CAAC;QACD,uBAAuB,EAAE,CAAC;QAC1B,OAAO,UAAU,CACf,gBAAgB,IAAI,eAAe,GAAG,gHAAgH,IAAI,QAAQ,SAAS,EAAE,CAC9K,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,+DAA+D;IAC/D,iFAAiF;IACjF,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,kCAAkC,CAAC,IAAI,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC/F,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEhH,4CAA4C;IAC5C,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,wBAAwB;IAC7E,4EAA4E;IAC5E,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,iBAAiB,GAAG,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAC;IACzG,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,YAAY,CACzB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,SAAS,EACT,IAAI,EACJ,WAAW,EACX,kBAAkB,EAClB,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EACnC,cAAc,EAAE,WAAW,CAC5B,CAAC;IACJ,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,IAAI,SAAS,YAAY,WAAW,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE,CAAC;YACvG,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACtE,IAAI,YAAY,EAAE,CAAC;gBACjB,SAAS,CAAC,OAAO,IAAI,YAAY,CAAC;YACpC,CAAC;QACH,CAAC;QACD,MAAM,SAAS,CAAC;IAClB,CAAC;IAED,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,mFAAmF;QACnF,iFAAiF;QACjF,qFAAqF;QACrF,IAAI,IAAI,KAAK,MAAM,IAAI,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACrE,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACtD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;gBACxG,MAAM,aAAa,GAAG,kBAAkB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;gBACvE,IAAI,CAAC;oBACH,MAAM,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC;gBAClG,CAAC;wBAAS,CAAC;oBACT,MAAM,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,uEAAuE;QACvE,IAAI,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5G,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACtD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;gBACxG,MAAM,aAAa,GAAG,kBAAkB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;gBACvE,IAAI,CAAC;oBACH,MAAM,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC;gBAClG,CAAC;wBAAS,CAAC;oBACT,MAAM,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,kGAAkG;QAClG,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC1F,CAAC;QACD,uBAAuB,EAAE,CAAC;QAC1B,MAAM,YAAY,GAChB,IAAI,KAAK,MAAM;YACb,CAAC,CAAC,sDAAsD,IAAI,mDAAmD,IAAI,IAAI;YACvH,CAAC,CAAC,EAAE,CAAC;QACT,OAAO,UAAU,CAAC,WAAW,IAAI,IAAI,IAAI,eAAe,GAAG,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,yCAAyC;IACzC,sEAAsE;IACtE,qEAAqE;IACrE,sEAAsE;IACtE,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAE,IAAI,CAAC,UAAwC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClG,IAAI,iBAAiB,EAAE,CAAC;QACtB,wEAAwE;QACxE,8DAA8D;QAC9D,IAAI,YAAY,GAAG,MAAM,IAAI,EAAE,CAAC;QAChC,IAAI,mBAAuC,CAAC;QAC5C,IAAI,mBAAuC,CAAC;QAC5C,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,IAAI,UAAkB,CAAC;gBACvB,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBAChD,UAAU,GAAG,YAAY,IAAI,mBAAmB,CAAC;gBACnD,CAAC;qBAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;oBAClD,iEAAiE;oBACjE,UAAU,GAAG,YAAY,IAAI,MAAM,YAAY,kBAAkB,CAAC;gBACpE,CAAC;qBAAM,CAAC;oBACN,UAAU,GAAG,YAAY,CAAC;gBAC5B,CAAC;gBACD,IAAI,CAAC;oBACH,YAAY,GAAG,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;gBACrE,CAAC;gBAAC,MAAM,CAAC;oBACP,YAAY,GAAG,UAAU,CAAC;oBAC1B,mBAAmB;wBACjB,wHAAwH,CAAC;gBAC7H,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;YACxD,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC/B,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACzB,mBAAmB;oBACjB,gHAAgH,CAAC;YACrH,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QACrF,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,UAAU,CACf,WAAW,IAAI,IAAI,IAAI,eAAe,GAAG,uCAAuC,YAAY,CAAC,MAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CACvH,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,CACpB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,SAAS,EACT,MAAM,EACN,YAAY,EACZ,kBAAkB,EAClB,cAAc,EAAE,WAAW,CAC5B,CAAC;QACF,MAAM,oBAAoB,GAAG,iBAAiB;YAC5C,CAAC,CAAC,MAAM,8BAA8B,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC;YACvE,CAAC,CAAC,SAAS,CAAC;QACd,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,WAAW,IAAI,IAAI,IAAI,eAAe,GAAG,yBAAyB,CAAC;QAC/E,MAAM,QAAQ,GAAG,qBAAqB,CACpC,iBAAiB,CAAC,QAAQ,EAC1B,YAAY,CAAC,QAAQ,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,CACrB,CAAC;QACF,OAAO,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,OAAO,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,UAAU,CAAC,WAAW,IAAI,IAAI,IAAI,eAAe,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,GAAoB;IAC/D,MAAM,EACJ,MAAM,EACN,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,aAAa,EACb,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,GACxB,GAAG,GAAG,CAAC;IACR,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqD,CAAC;IAC3E,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,WAAW,CAAC,4EAA4E,CAAC,CAAC;IACnG,CAAC;IAED,8EAA8E;IAC9E,iFAAiF;IACjF,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,MAAM,CAAC;IAE3F,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEtE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACjE,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACzE,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;QACjF,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,2EAA2E;IAC3E,8DAA8D;IAC9D,CAAC;QACC,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,EAAE,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YACrE,MAAM,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAA8B,CAAC;IACrE,MAAM,kCAAkC,GAAG,IAAI,GAAG,EAAsC,CAAC;IACzF,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IACE,CAAC,IAAI,CAAC,iBAAiB;YACvB,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,MAAM;YACzC,CAAC,kCAAkC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EACzD,CAAC;YACD,kCAAkC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,kCAAkC,EAAE,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC7F,IAAI,aAAa,CAAC,eAAe,EAAE,CAAC;gBAClC,sBAAsB,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;YACjE,CAAC;iBAAM,IAAI,CAAC,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;gBAC7D,MAAM,YAAY,GAChB,aAAa,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;oBACzC,CAAC,CAAC,8CAA8C,aAAa,CAAC,kBAAkB;yBAC3E,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;yBACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC;yBACxD,IAAI,CAAC,IAAI,CAAC,EAAE;oBACjB,CAAC,CAAC,EAAE,CAAC;gBACT,OAAO,WAAW,CAChB,YAAY,GAAG,+EAA+E;oBAC5F,wBAAwB;oBACxB,+EAA+E;oBAC/E,+EAA+E;oBAC/E,gFAAgF;oBAChF,YAAY,CACf,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,qFAAqF,EAAE;gBACjG,OAAO,EAAE,GAAG;gBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,mFAAmF;QACrF,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAMR,EAAE,CAAC;IACR,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,oFAAoF;IACpF,uFAAuF;IACvF,4DAA4D;IAC5D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAoD,CAAC;IACzF,gFAAgF;IAChF,iFAAiF;IACjF,MAAM,cAAc,GAA4B,EAAE,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtF,MAAM,cAAc,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC;QAE1D,0EAA0E;QAC1E,kEAAkE;QAClE,2DAA2D;QAC3D,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,gBAAgB,OAAO,8EAA8E,OAAO,CAAC,WAAW,EAAE,uDAAuD;aACzL,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,gFAAgF;QAChF,IAAI,OAAO,KAAK,MAAM,IAAI,YAAY,EAAE,CAAC;YACvC,IAAI,EAAE,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAChD,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACrB,EAAE,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAClE,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,UAAU;oBACvB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,cAAc,YAAY,2GAA2G;iBAC7I,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;QACH,CAAC;QAED,yDAAyD;QACzD,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;QACtG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,sCAAsC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;aACrF,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,sFAAsF;YACtF,gFAAgF;YAChF,IAAI,CAAC,cAAc,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,iBAAiB,GAAG,yBAAyB,CACjD,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,MAAM,CAAC,UAAU,EACjB,iBAAiB,CAClB,CAAC;gBACF,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;oBAC9B,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,UAAU;wBACvB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,iBAAiB,CAAC,MAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;qBACjD,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,IAAI,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBAC/B,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,OAAO,KAAK,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7E,CAAC;gBAED,MAAM,YAAY,GAAG,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBACxF,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,UAAU;wBACvB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,4BAA4B,YAAY,CAAC,MAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;qBAC1E,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;YACH,CAAC;YAED,yEAAyE;YACzE,wFAAwF;YACxF,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,SAAS,CAAC,IAAI,yBAAyB,EAAE,KAAK,KAAK,EAAE,CAAC;gBAC3F,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,UAAU;oBACvB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,8BAA8B;iBACtC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,2FAA2F;YAC3F,IAAI,OAAO,KAAK,MAAM,IAAI,6BAA6B,EAAE,KAAK,KAAK,EAAE,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,UAAU;oBACvB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,2BAA2B;iBACnC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;YACzD,6FAA6F;YAC7F,6FAA6F;YAC7F,kCAAkC,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YACzE,MAAM,IAAI,GAAG,cAAc,CACzB,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,QAAQ,CAChB,CAAC;YACF,MAAM,WAAW,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;YACtD,MAAM,iBAAiB,GACrB,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,CAAC;YAC7F,IAAI,CAAC;gBACH,MAAM,YAAY,CAChB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,SAAS,EACT,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAC1C,cAAc,EAAE,WAAW,CAC5B,CAAC;YACJ,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,IAAI,SAAS,YAAY,WAAW,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE,CAAC;oBACvG,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC5E,IAAI,YAAY,EAAE,CAAC;wBACjB,SAAS,CAAC,OAAO,IAAI,YAAY,CAAC;oBACpC,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,CAAC;YAClB,CAAC;YAED,yEAAyE;YACzE,IAAI,OAAO,KAAK,MAAM,IAAI,yBAAyB,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACtE,MAAM,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;oBACtD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;oBACrG,MAAM,aAAa,GAAG,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;oBACjE,IAAI,CAAC;wBACH,MAAM,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;oBACxG,CAAC;4BAAS,CAAC;wBACT,MAAM,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,6FAA6F;YAC7F,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;gBACvB,MAAM,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YAC7F,CAAC;YAED,mCAAmC;YACnC,IAAI,CAAC,cAAc,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,gBAAgB,CACpB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,MAAM,EACb,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,cAAc,EAAE,WAAW,CAC5B,CAAC;YACJ,CAAC;YAED,sEAAsE;YACtE,0EAA0E;YAC1E,2EAA2E;YAC3E,4EAA4E;YAC5E,0EAA0E;YAC1E,gEAAgE;YAChE,IAAI,aAAa,GAAG,MAAM,CAAC;YAC3B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;gBACvB,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,QAAQ,GAAG,YAAY;wBAC3B,CAAC,CAAC,MAAM,YAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;wBACtD,CAAC,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;oBAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CACb,yCAAyC,OAAO,uEAAuE,CACxH,CAAC;oBACJ,CAAC;oBACD,KAAK,GAAG,QAAQ,CAAC;gBACnB,CAAC;gBACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;gBACxD,aAAa,GAAG,gCAAgC,OAAO,aAAa,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAClH,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,0EAA0E;gBAC1E,0EAA0E;gBAC1E,6EAA6E;gBAC7E,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC1E,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBACnF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;oBAC9B,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,UAAU;wBACvB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,sBAAsB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBACpE,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBAED,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,MAAM;QACR,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,WAAW,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;YACtD,WAAW,EAAE,WAAW,EAAE,WAAW,IAAI,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC;YACnG,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0CAA0C;SAClD,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,uEAAuE;IACvE,wEAAwE;IACxE,sEAAsE;IACtE,2DAA2D;IAC3D,IAAI,yBAA6C,CAAC;IAClD,IAAI,aAAa,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1F,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC9B,2EAA2E;YAC3E,6EAA6E;YAC7E,6EAA6E;YAC7E,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;gBAC/B,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;YACD,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,6EAA6E;YAC7E,2EAA2E;YAC3E,iFAAiF;YACjF,MAAM,aAAa,GAAG,4BAA4B,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;YACtF,MAAM,aAAa,GAAG,6BAA6B,CAAC,aAAa,CAAC,CAAC;YACnE,yBAAyB,GAAG,aAAa,CAAC;YAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;oBAAE,SAAS;gBAC1C,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO;oBAAE,SAAS;gBACvB,0EAA0E;gBAC1E,+EAA+E;gBAC/E,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;oBAAE,SAAS;gBAC1C,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC;gBACzB,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,+EAA+E;gBAC/E,wEAAwE;gBACxE,MAAM,CAAC,KAAK,GAAG,GAAG,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,oCAAoC,MAAM,EAAE,CAAC;YAC/G,CAAC;QACH,CAAC;IACH,CAAC;IACD,uEAAuE;IAEvE,MAAM,OAAO,GAAG,OAAO;SACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,CAAC,CAAC,MAAM,KAAK,SAAS;QACpB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,GAAG;QAC9C,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,KAAK,EAAE,CAC9D;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kCAAkC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,MAAM,mBAAmB,GACvB,yBAAyB,KAAK,SAAS,CAAC,CAAC,CAAC,oCAAoC,yBAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjH,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,cAAc,GAClB,YAAY,CAAC,MAAM,KAAK,CAAC;QACvB,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,CAAC,EAAE;QACjC,CAAC,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC;YACxB,CAAC,CAAC,oBAAoB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAChD,CAAC,CAAC,UAAU,YAAY,CAAC,MAAM,WAAW,CAAC;IACjD,MAAM,mBAAmB,GAAG,aAAa,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjF,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,WAAW,GACf,YAAY,GAAG,CAAC;YACd,CAAC,CAAC,UAAU,YAAY,kFAAkF;YAC1G,CAAC,CAAC,EAAE,CAAC;QACT,OAAO,WAAW,CAChB,iBAAiB,YAAY,IAAI,OAAO,CAAC,MAAM,YAAY,cAAc,GAAG,mBAAmB,KAAK,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,mBAAmB,EAAE,CAClK,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CACf,iBAAiB,YAAY,YAAY,cAAc,GAAG,mBAAmB,KAAK,OAAO,GAAG,aAAa,GAAG,mBAAmB,EAAE,CAClI,CAAC;AACJ,CAAC"}
|
|
@@ -151,5 +151,6 @@ export declare function runPreWriteSyntaxCheck(client: AdtClient, type: string,
|
|
|
151
151
|
export declare function inactiveSyntaxDiagnostic(client: AdtClient, type: string, name: string): Promise<string>;
|
|
152
152
|
export declare function tryPostSaveSyntaxCheck(client: AdtClient, type: string, name: string): Promise<string>;
|
|
153
153
|
export declare const TABL_DT_WRITE_UNAVAILABLE_HINT: string;
|
|
154
|
+
export declare const TTYP_WRITE_UNAVAILABLE_HINT: string;
|
|
154
155
|
export {};
|
|
155
156
|
//# sourceMappingURL=write-helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-helpers.d.ts","sourceRoot":"","sources":["../../src/handlers/write-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"write-helpers.d.ts","sourceRoot":"","sources":["../../src/handlers/write-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* lint/syntax/RAP-preflight gates, package enforcement, and the server-driven-object write engine.
|
|
6
6
|
* Shared by the SAPWrite and SAPLint handlers.
|
|
7
7
|
*/
|
|
8
|
-
import { buildDataElementXml, buildDomainXml, buildMessageClassXml, buildServiceBindingXml, normalizeAdtLanguage, normalizeAdtResponsible, } from '../adt/ddic-xml.js';
|
|
8
|
+
import { buildDataElementXml, buildDomainXml, buildMessageClassXml, buildServiceBindingXml, buildTableTypeXml, normalizeAdtLanguage, normalizeAdtResponsible, } from '../adt/ddic-xml.js';
|
|
9
9
|
import { syntaxCheck } from '../adt/devtools.js';
|
|
10
10
|
import { AdtSafetyError } from '../adt/errors.js';
|
|
11
11
|
import { formatRapPreflightFindings, validateRapSource } from '../adt/rap-preflight.js';
|
|
@@ -49,12 +49,14 @@ export const SERVICEBINDING_V2_ACCEPT = 'application/vnd.sap.adt.businessservice
|
|
|
49
49
|
const BDEF_CONTENT_TYPE = 'application/vnd.sap.adt.blues.v1+xml';
|
|
50
50
|
const MESSAGECLASS_CONTENT_TYPE = 'application/vnd.sap.adt.mc.messageclass+xml';
|
|
51
51
|
export const SKTD_V2_CONTENT_TYPE = 'application/vnd.sap.adt.sktdv2+xml';
|
|
52
|
+
// Table type (TTYP) create/read — verified live on a4h 758 + 816 (POST → 201).
|
|
53
|
+
const TABLETYPE_CONTENT_TYPE = 'application/vnd.sap.adt.tabletype.v1+xml';
|
|
52
54
|
// Function group + function module content types — verified live on a4h S/4HANA 2023
|
|
53
55
|
// (issue #250). FUGR uses the v3 group envelope; FUNC uses the unversioned fmodule envelope.
|
|
54
56
|
const FUNCTION_GROUP_CONTENT_TYPE = 'application/vnd.sap.adt.functions.groups.v3+xml';
|
|
55
57
|
const FUNCTION_MODULE_CONTENT_TYPE = 'application/vnd.sap.adt.functions.fmodules+xml';
|
|
56
58
|
export function isMetadataWriteType(type) {
|
|
57
|
-
return type === 'DOMA' || type === 'DTEL' || type === 'MSAG' || type === 'SRVB';
|
|
59
|
+
return type === 'DOMA' || type === 'DTEL' || type === 'MSAG' || type === 'SRVB' || type === 'TTYP';
|
|
58
60
|
}
|
|
59
61
|
/** Types that require a specific vendor content type for creation (not application/*) */
|
|
60
62
|
function needsVendorContentType(type) {
|
|
@@ -63,6 +65,7 @@ function needsVendorContentType(type) {
|
|
|
63
65
|
type === 'BDEF' ||
|
|
64
66
|
type === 'MSAG' ||
|
|
65
67
|
type === 'SKTD' ||
|
|
68
|
+
type === 'TTYP' ||
|
|
66
69
|
type === 'FUGR' ||
|
|
67
70
|
type === 'FUNC');
|
|
68
71
|
}
|
|
@@ -103,6 +106,8 @@ export function vendorContentTypeForType(type) {
|
|
|
103
106
|
return MESSAGECLASS_CONTENT_TYPE;
|
|
104
107
|
case 'SKTD':
|
|
105
108
|
return SKTD_V2_CONTENT_TYPE;
|
|
109
|
+
case 'TTYP':
|
|
110
|
+
return TABLETYPE_CONTENT_TYPE;
|
|
106
111
|
case 'FUGR':
|
|
107
112
|
return FUNCTION_GROUP_CONTENT_TYPE;
|
|
108
113
|
case 'FUNC':
|
|
@@ -141,6 +146,8 @@ export function getMetadataWriteProperties(input) {
|
|
|
141
146
|
valueTable: input.valueTable,
|
|
142
147
|
typeKind: input.typeKind,
|
|
143
148
|
typeName: input.typeName,
|
|
149
|
+
rowType: input.rowType,
|
|
150
|
+
rowTypeKind: input.rowTypeKind,
|
|
144
151
|
domainName: input.domainName,
|
|
145
152
|
shortLabel: input.shortLabel,
|
|
146
153
|
mediumLabel: input.mediumLabel,
|
|
@@ -357,9 +364,20 @@ export function buildCreateXml(type, name, pkg, description, properties, languag
|
|
|
357
364
|
<adtcore:packageRef adtcore:name="${escapeXmlAttr(pkg)}"/>
|
|
358
365
|
</blue:blueSource>`;
|
|
359
366
|
}
|
|
360
|
-
case 'BDEF':
|
|
367
|
+
case 'BDEF': {
|
|
361
368
|
// BDEF uses SAP's "blue" framework — blue:blueSource with http://www.sap.com/wbobj/blue namespace.
|
|
362
369
|
// Confirmed by vibing-steampunk (Go) and fr0ster (TypeScript) reference implementations.
|
|
370
|
+
// A behavior EXTENSION (`extend behavior for …`) is still adtcore:type BDEF/BDO, but its create
|
|
371
|
+
// POST carries an `adtcore:adtTemplate` naming the base BDEF — and it MUST precede packageRef
|
|
372
|
+
// (the elements are schema-ordered; a trailing template is silently ignored — live-verified a4h
|
|
373
|
+
// 816). Without it SAP scaffolds a plain definition; with it SAP scaffolds `extend behavior for`.
|
|
374
|
+
const baseBdef = String(properties?.baseBdef ?? '').trim();
|
|
375
|
+
if (properties?.behaviorExtension && !baseBdef) {
|
|
376
|
+
throw new Error('BDEF behavior extension create requires a non-empty baseBdef metadata property.');
|
|
377
|
+
}
|
|
378
|
+
const extTemplate = properties?.behaviorExtension
|
|
379
|
+
? `\n <adtcore:adtTemplate>\n <adtcore:adtProperty adtcore:key="base_bdef">${escapeXmlAttr(baseBdef)}</adtcore:adtProperty>\n </adtcore:adtTemplate>`
|
|
380
|
+
: '';
|
|
363
381
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
364
382
|
<blue:blueSource xmlns:blue="http://www.sap.com/wbobj/blue"
|
|
365
383
|
xmlns:adtcore="http://www.sap.com/adt/core"
|
|
@@ -368,9 +386,10 @@ export function buildCreateXml(type, name, pkg, description, properties, languag
|
|
|
368
386
|
adtcore:type="BDEF/BDO"
|
|
369
387
|
adtcore:masterLanguage="${masterLanguage}"
|
|
370
388
|
adtcore:masterSystem="H00"
|
|
371
|
-
adtcore:responsible="${escapeXmlAttr(responsibleUser)}"
|
|
389
|
+
adtcore:responsible="${escapeXmlAttr(responsibleUser)}">${extTemplate}
|
|
372
390
|
<adtcore:packageRef adtcore:name="${escapeXmlAttr(pkg)}"/>
|
|
373
391
|
</blue:blueSource>`;
|
|
392
|
+
}
|
|
374
393
|
case 'SRVD':
|
|
375
394
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
376
395
|
<srvd:srvdSource xmlns:srvd="http://www.sap.com/adt/ddic/srvdsources"
|
|
@@ -444,6 +463,23 @@ export function buildCreateXml(type, name, pkg, description, properties, languag
|
|
|
444
463
|
};
|
|
445
464
|
return buildDomainXml(params);
|
|
446
465
|
}
|
|
466
|
+
case 'TTYP': {
|
|
467
|
+
const rowType = String(properties?.rowType ?? '').trim();
|
|
468
|
+
if (!rowType) {
|
|
469
|
+
throw new Error('SAPWrite create type=TTYP requires "rowType" — a built-in ABAP type (STRING, I, …) or a DDIC structure/type name.');
|
|
470
|
+
}
|
|
471
|
+
const rowTypeKindRaw = String(properties?.rowTypeKind ?? '');
|
|
472
|
+
const rowTypeKind = rowTypeKindRaw === 'builtin' || rowTypeKindRaw === 'structure' ? rowTypeKindRaw : undefined;
|
|
473
|
+
return buildTableTypeXml({
|
|
474
|
+
name,
|
|
475
|
+
description,
|
|
476
|
+
package: pkg,
|
|
477
|
+
rowType,
|
|
478
|
+
rowTypeKind,
|
|
479
|
+
language: masterLanguage,
|
|
480
|
+
responsible: responsibleUser,
|
|
481
|
+
});
|
|
482
|
+
}
|
|
447
483
|
case 'DTEL': {
|
|
448
484
|
const typeKindRaw = String(properties?.typeKind ?? '');
|
|
449
485
|
const typeKind = typeKindRaw === 'domain' || typeKindRaw === 'predefinedAbapType' ? typeKindRaw : undefined;
|
|
@@ -741,7 +777,12 @@ export function runPreWriteLint(source, type, name, config, perCallOverride) {
|
|
|
741
777
|
return { blocked: false };
|
|
742
778
|
}
|
|
743
779
|
try {
|
|
744
|
-
|
|
780
|
+
let filename = detectFilename(source, name);
|
|
781
|
+
if (type === 'INCL' && filename.endsWith('.clas.abap')) {
|
|
782
|
+
// ABAP includes are often source fragments (FORM/MODULE/DATA...) without a REPORT/CLASS header.
|
|
783
|
+
// Lint them as program-style source; treating the fallback as a class rejects valid include fragments.
|
|
784
|
+
filename = `${name.toLowerCase()}.prog.abap`;
|
|
785
|
+
}
|
|
745
786
|
// Reuse the single systemType/abapRelease/configFile resolution (avoids drift with SAPLint's
|
|
746
787
|
// own config — a release-ceiling fix applied to one copy only would split lint behavior).
|
|
747
788
|
const configOptions = buildLintConfigOptions(config);
|
|
@@ -856,4 +897,7 @@ export const TABL_DT_WRITE_UNAVAILABLE_HINT = 'Transparent table writes via ADT
|
|
|
856
897
|
'Use SE11 in SAPGUI, or connect ARC-1 to an SAP_BASIS ≥ 7.52 system. ' +
|
|
857
898
|
'Writing the source via /sap/bc/adt/ddic/structures/ would silently flip ' +
|
|
858
899
|
'DD02L-TABCLASS to INTTAB and corrupt the table.';
|
|
900
|
+
export const TTYP_WRITE_UNAVAILABLE_HINT = 'Table type (TTYP) writes are not available on this system ' +
|
|
901
|
+
'(/sap/bc/adt/ddic/tabletypes/ is not exposed by ADT discovery — verified absent on NW 7.50). ' +
|
|
902
|
+
'Use SE11 in SAPGUI, or connect ARC-1 to a system that exposes the table-type endpoint (S/4HANA 2023 / ABAP Platform 2025 verified).';
|
|
859
903
|
//# sourceMappingURL=write-helpers.js.map
|