@memberjunction/connector-openwater 1.3.5 → 1.3.7
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.
|
@@ -128,6 +128,37 @@ export declare class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
|
128
128
|
*/
|
|
129
129
|
private FetchViaAccessPath;
|
|
130
130
|
/** Fetch all pages of a door collection (used to enumerate parent ids / embedded children). */
|
|
131
|
+
/**
|
|
132
|
+
* The IntegrationObject whose pagination rules govern the DOOR request.
|
|
133
|
+
*
|
|
134
|
+
* This used to be the child object, and that silently capped every detail walk at one page of
|
|
135
|
+
* parents. `PaginateLeaf` decides whether to page at all from
|
|
136
|
+
* `obj.SupportsPagination && obj.PaginationType !== 'None'` — and a walked child declares
|
|
137
|
+
* neither, because the child is not itself a paged collection (ApplicationFile's APIPath is
|
|
138
|
+
* "embedded in /v2/Applications/{applicationId} …"). So the door URL went out with no
|
|
139
|
+
* pageIndex/pageSize and OpenWater answered with its default page.
|
|
140
|
+
*
|
|
141
|
+
* Measured on a live tenant 2026-08-22, against 1,976 Applications:
|
|
142
|
+
* ApplicationRoundSubmission 10 parents -> 10 records, hasMore:false (target 1,935)
|
|
143
|
+
* ApplicationFile 10 parents -> 0 records (ZERO_LEAVES) (target 4,001)
|
|
144
|
+
* and ApplicationWinnerType was CORRECT at 74 only because its door is /v2/Programs, which has
|
|
145
|
+
* 5 rows and therefore fits inside one default page. The walk reported HasMore:false honestly:
|
|
146
|
+
* it really had consumed every parent it was given. It was given ten.
|
|
147
|
+
*
|
|
148
|
+
* Falls back to the child when the door has no catalog row, which keeps a misdeclared
|
|
149
|
+
* AccessPath behaving as before rather than throwing mid-sync.
|
|
150
|
+
*/
|
|
151
|
+
private ResolveDoorObject;
|
|
152
|
+
/**
|
|
153
|
+
* Enumerate the door.
|
|
154
|
+
*
|
|
155
|
+
* Returns `complete: false` when the enumeration was cut short — currently only by a rate limit
|
|
156
|
+
* (see RATE_LIMITED_PARTIAL). That flag MUST reach the caller: a truncated door returned as if
|
|
157
|
+
* whole is cached as whole, and the walk then finishes at `consumed === parentIDs.length` having
|
|
158
|
+
* seen a fraction of the parents, reporting success. That is the same shape as every other bug
|
|
159
|
+
* in this path — an incomplete read that looks authoritative — so the truncation is carried,
|
|
160
|
+
* never swallowed.
|
|
161
|
+
*/
|
|
131
162
|
private FetchDoorRows;
|
|
132
163
|
/**
|
|
133
164
|
* Generic paginated leaf fetch. Loops pageIndex until a short/empty page (or the batch cap when
|
|
@@ -138,6 +169,8 @@ export declare class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
|
138
169
|
/** Reads and validates AccessPath from the IO's Configuration JSON; null when absent. */
|
|
139
170
|
/** Short-lived cache for detail responses; see FetchDetailCached. */
|
|
140
171
|
private detailCache;
|
|
172
|
+
/** Door rows per (integration|door|doorPath) — see DOOR_CACHE_MAX_ENTRIES. */
|
|
173
|
+
private doorRowCache;
|
|
141
174
|
/**
|
|
142
175
|
* Fetch a DETAIL response (one object, not a list) with a short-lived per-connector cache.
|
|
143
176
|
* The cache exists because sibling IOs (ApplicationRoundSubmission, ApplicationFile, Media's
|
|
@@ -155,6 +188,20 @@ export declare class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
|
155
188
|
* detail itself as ONE record, tagged with its id.
|
|
156
189
|
*/
|
|
157
190
|
private FetchViaDetailWalk;
|
|
191
|
+
/**
|
|
192
|
+
* When a harvest or a nesting walk finds nothing, "found nothing" is not a diagnosis: the path
|
|
193
|
+
* may be wrong, or the collection may genuinely be empty, and those need opposite responses.
|
|
194
|
+
* This reports the shape actually present so a declared AccessPath can be corrected against
|
|
195
|
+
* observed structure instead of vendor documentation — the same rule the catalog is held to
|
|
196
|
+
* ("provably know, not guessed"). Names and types only, capped, so no member data is emitted.
|
|
197
|
+
*/
|
|
198
|
+
private static ShapeOf;
|
|
199
|
+
/**
|
|
200
|
+
* The root's shape plus the shape at each declared segment that actually resolves — enough to
|
|
201
|
+
* correct a declared path against the payload, and nothing more. The segment whose braces come
|
|
202
|
+
* back empty is the one that does not exist.
|
|
203
|
+
*/
|
|
204
|
+
private ShapeAlong;
|
|
158
205
|
/** Additional full walks to union with the main AccessPath (empty when not declared). */
|
|
159
206
|
private ParseAlternativeAccessPaths;
|
|
160
207
|
private ParseAccessPath;
|
|
@@ -167,6 +214,19 @@ export declare class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
|
167
214
|
/** Walks the door rows down a chain of (array) field segments, returning the leaf object nodes. */
|
|
168
215
|
private WalkSegments;
|
|
169
216
|
/** For embedded-array access paths: emit the nested records directly from the door payload. */
|
|
217
|
+
/**
|
|
218
|
+
* embedded-array extraction, optionally tagging each leaf with its IMMEDIATE parent's id.
|
|
219
|
+
*
|
|
220
|
+
* Without the tag the walk keeps only leaves, so an element arrives with no idea which parent
|
|
221
|
+
* produced it — and for a leaf whose identity is only unique WITHIN its parent, that loses rows.
|
|
222
|
+
* ApplicationWinnerType is the case: a winner type is `{id, name}` declared on a round, the same
|
|
223
|
+
* type id can be declared on several rounds, and the key was `id` alone. 89 (round, type) pairs
|
|
224
|
+
* therefore collapsed to 74 distinct ids, and the round association was gone from the row.
|
|
225
|
+
*
|
|
226
|
+
* `embeddedParentTag: { sourceKey, asKey }` copies the parent's `sourceKey` onto each leaf as
|
|
227
|
+
* `asKey`, so the pair can be keyed and the row can say where it came from. Absent — the
|
|
228
|
+
* default — behaviour is exactly as before.
|
|
229
|
+
*/
|
|
170
230
|
private ExtractEmbedded;
|
|
171
231
|
/**
|
|
172
232
|
* Injects a parent id into an entry path: as a query param (?<parentParamName>=) when
|
|
@@ -4,6 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
+
var OpenWaterConnector_1;
|
|
7
8
|
/**
|
|
8
9
|
* OpenWaterConnector — REST integration connector for OpenWater
|
|
9
10
|
* (https://www.getopenwater.com), an awards / grants / abstracts / fellowship
|
|
@@ -74,6 +75,69 @@ import { mergeDeclaredWithSampledFields } from '@memberjunction/connector-schema
|
|
|
74
75
|
const DETAIL_CACHE_MAX_ENTRIES = 500;
|
|
75
76
|
/** Cursor namespace for a bounded, resumable detail walk: the parent offset consumed so far. */
|
|
76
77
|
const DETAIL_WALK_CURSOR_PREFIX = 'detail:';
|
|
78
|
+
/**
|
|
79
|
+
* Union cursor: `union:<memberIndex>|[c<innerCursor>|p<innerPage>]`.
|
|
80
|
+
*
|
|
81
|
+
* An object with alternativeAccessPaths is several walks unioned. Running them all inside one call
|
|
82
|
+
* meant each member's own resumption state had nowhere to live, so the union reported HasMore and
|
|
83
|
+
* named no continuation. The member index plus that member's own cursor is the whole state.
|
|
84
|
+
*/
|
|
85
|
+
const UNION_CURSOR_PREFIX = 'union:';
|
|
86
|
+
/**
|
|
87
|
+
* Door enumerations cached per (integration, door, doorPath).
|
|
88
|
+
*
|
|
89
|
+
* The walk is resumable by parent offset, but every resumed call re-enumerated the door from page
|
|
90
|
+
* 0 — ~20 pages of 100 to list 1,976 Applications — before touching a single parent. OpenWater
|
|
91
|
+
* rate-limits that: measured live, `HTTP 429 at /v2/Applications?pageIndex=4&pageSize=100`, and the
|
|
92
|
+
* call then blew the engine's 30s FetchChanges timeout with nothing kept. Bounding parents per call
|
|
93
|
+
* cannot help, because the cost is paid before the parent loop runs.
|
|
94
|
+
*
|
|
95
|
+
* Totara already solves this the same way ("Parent-id lists per connection+parent function, so a
|
|
96
|
+
* resumed parent walk does not re-read them"). Enumerate once, walk in bounded batches.
|
|
97
|
+
*/
|
|
98
|
+
const DOOR_CACHE_MAX_ENTRIES = 20;
|
|
99
|
+
/**
|
|
100
|
+
* Parent details walked in ONE FetchChanges call before the walk yields with a cursor.
|
|
101
|
+
*
|
|
102
|
+
* The record budget (ctx.BatchSize, engine default 200) bounds records EMITTED, not vendor calls
|
|
103
|
+
* made. A sparse child — most Applications carry no files — never reaches that budget, so the walk
|
|
104
|
+
* kept going until the parent set was exhausted: ~1,976 detail requests in one call, well past the
|
|
105
|
+
* engine's 30s FetchChanges timeout, and on timeout the whole batch is discarded. Measured live the
|
|
106
|
+
* moment the door began paging properly: ApplicationFile, Media and ApplicationRoundSubmission all
|
|
107
|
+
* died with "Operation 'FetchChanges(X)' timed out after 30000ms".
|
|
108
|
+
*
|
|
109
|
+
* Bounding the WORK as well as the output lets each call finish and hand back a cursor, so the
|
|
110
|
+
* engine simply calls again — the same resumability that already existed for the record budget.
|
|
111
|
+
*/
|
|
112
|
+
const MAX_PARENTS_PER_CALL = 100;
|
|
113
|
+
/**
|
|
114
|
+
* Door rows harvested in ONE call, and the wall-clock the whole walk gets before it yields.
|
|
115
|
+
*
|
|
116
|
+
* A count is only ever a PROXY for the thing that actually kills the batch, which is the engine's
|
|
117
|
+
* 30s `FetchChanges` timeout — and on timeout the batch is discarded entirely. A harvest costs two
|
|
118
|
+
* requests per door row (the parent detail, then each id's own entry path), and OpenWater is rate
|
|
119
|
+
* limited to 3/sec, so 100 door rows is ~60s of pure waiting: measured live as
|
|
120
|
+
* `Operation 'FetchChanges(Media)' timed out after 30000ms`, every batch, forever.
|
|
121
|
+
*
|
|
122
|
+
* So the walk is bounded by TIME as well, checked between requests, and yields its cursor when the
|
|
123
|
+
* budget is spent. The counts stay as ceilings; the clock is what makes the batch land.
|
|
124
|
+
*/
|
|
125
|
+
const HARVEST_DOORS_PER_CALL = 25;
|
|
126
|
+
const WALK_TIME_BUDGET_MS = 18_000;
|
|
127
|
+
/**
|
|
128
|
+
* Harvest-mode cursor: `detail:h<doorOffset>[:<idOffset>]`.
|
|
129
|
+
*
|
|
130
|
+
* Resuming a harvest by PARENT offset does not work, and fails in the worst way — silently. The
|
|
131
|
+
* harvest re-walks door rows from the start on every call and collects ids into a prefix; once the
|
|
132
|
+
* offset passes the number of ids that prefix can yield, `parentIDs.slice(startAt)` is empty, so
|
|
133
|
+
* the object emits nothing, reports HasMore, and never advances.
|
|
134
|
+
*
|
|
135
|
+
* The offset is therefore a DOOR-ROW position: each call harvests a fresh window of door rows and
|
|
136
|
+
* every id it finds is new work. `idOffset` covers the other half — a window whose ids could not
|
|
137
|
+
* all be emitted inside one call (record budget or clock) resumes at the same window and skips the
|
|
138
|
+
* ids already emitted, rather than advancing past them and dropping the remainder.
|
|
139
|
+
*/
|
|
140
|
+
const HARVEST_CURSOR_PREFIX = 'detail:h';
|
|
77
141
|
// ─── Constants ──────────────────────────────────────────────────────────
|
|
78
142
|
// No DEFAULT_BASE_URL: OpenWater's real API host is the SHARED https://api.secure-platform.com
|
|
79
143
|
// (confirmed live against its own published swagger), not a per-customer subdomain — but we still
|
|
@@ -86,7 +150,7 @@ const DEFAULT_REQUEST_TIMEOUT_MS = 30_000;
|
|
|
86
150
|
/** OpenWater is a modest-throughput enterprise API — keep a conservative sustained rate. */
|
|
87
151
|
const RATE_LIMIT_TOKENS_PER_SEC = 3;
|
|
88
152
|
// ─── Connector ──────────────────────────────────────────────────────────
|
|
89
|
-
let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
153
|
+
let OpenWaterConnector = OpenWaterConnector_1 = class OpenWaterConnector extends BaseRESTIntegrationConnector {
|
|
90
154
|
constructor() {
|
|
91
155
|
super(...arguments);
|
|
92
156
|
this.authState = null;
|
|
@@ -94,6 +158,8 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
94
158
|
/** Reads and validates AccessPath from the IO's Configuration JSON; null when absent. */
|
|
95
159
|
/** Short-lived cache for detail responses; see FetchDetailCached. */
|
|
96
160
|
this.detailCache = new Map();
|
|
161
|
+
/** Door rows per (integration|door|doorPath) — see DOOR_CACHE_MAX_ENTRIES. */
|
|
162
|
+
this.doorRowCache = new Map();
|
|
97
163
|
}
|
|
98
164
|
// ── Identity (three-way invariant axis) ─────────────────────────
|
|
99
165
|
get IntegrationName() { return 'OpenWater'; }
|
|
@@ -330,21 +396,61 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
330
396
|
if (unionPaths.length === 0) {
|
|
331
397
|
return this.FetchViaAccessPath(ctx, obj, accessPath);
|
|
332
398
|
}
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
399
|
+
/**
|
|
400
|
+
* ONE member per call, advancing through them on a cursor.
|
|
401
|
+
*
|
|
402
|
+
* The union used to run every member inside a single call and return
|
|
403
|
+
* `HasMore: results.some(...)` while DISCARDING each member's NextCursor and NextPage. Any
|
|
404
|
+
* member that is resumable — a bounded detail walk, or a leaf that hit the batch cap — then
|
|
405
|
+
* reported "there is more" with nothing saying where to continue from, so the engine either
|
|
406
|
+
* restarted that member from the beginning every call or dropped its remainder outright.
|
|
407
|
+
* That is invisible from the outside: the object simply lands short, or the run spins.
|
|
408
|
+
*
|
|
409
|
+
* Walking one member at a time keeps each member's own resumption state intact. Records are
|
|
410
|
+
* no longer de-duplicated ACROSS members inside one call, which does not matter — members
|
|
411
|
+
* are unioned by primary key at the write, so a record two paths both produce is upserted
|
|
412
|
+
* once either way.
|
|
413
|
+
*/
|
|
414
|
+
const paths = [accessPath, ...unionPaths];
|
|
415
|
+
const cur = String(ctx.CurrentCursor ?? '');
|
|
416
|
+
let idx = 0;
|
|
417
|
+
let innerCursor;
|
|
418
|
+
let innerPage;
|
|
419
|
+
if (cur.startsWith(UNION_CURSOR_PREFIX)) {
|
|
420
|
+
const body = cur.slice(UNION_CURSOR_PREFIX.length);
|
|
421
|
+
const bar = body.indexOf('|');
|
|
422
|
+
const i = Number(bar < 0 ? body : body.slice(0, bar));
|
|
423
|
+
if (Number.isFinite(i) && i > 0)
|
|
424
|
+
idx = Math.min(i, paths.length - 1);
|
|
425
|
+
const inner = bar < 0 ? '' : body.slice(bar + 1);
|
|
426
|
+
if (inner.startsWith('c'))
|
|
427
|
+
innerCursor = inner.slice(1);
|
|
428
|
+
else if (inner.startsWith('p')) {
|
|
429
|
+
const pg = Number(inner.slice(1));
|
|
430
|
+
if (Number.isFinite(pg) && pg > 0)
|
|
431
|
+
innerPage = pg;
|
|
342
432
|
}
|
|
343
433
|
}
|
|
434
|
+
const memberCtx = { ...ctx, CurrentCursor: innerCursor ?? null,
|
|
435
|
+
CurrentPage: innerPage ?? ctx.CurrentPage };
|
|
436
|
+
const r = await this.FetchViaAccessPath(memberCtx, obj, paths[idx]);
|
|
437
|
+
const memberMore = !!r.HasMore;
|
|
438
|
+
const nextIdx = memberMore ? idx : idx + 1;
|
|
439
|
+
const nextInner = memberMore
|
|
440
|
+
? (r.NextCursor != null ? `c${r.NextCursor}`
|
|
441
|
+
: r.NextPage != null ? `p${r.NextPage}` : '')
|
|
442
|
+
: '';
|
|
443
|
+
// A member that claims HasMore but names no continuation would spin forever; treat it as
|
|
444
|
+
// finished and move on rather than re-reading it until the run is killed.
|
|
445
|
+
const memberResumable = memberMore && nextInner !== '';
|
|
446
|
+
const advanceTo = memberResumable ? idx : idx + 1;
|
|
447
|
+
const more = memberResumable || advanceTo < paths.length;
|
|
344
448
|
return {
|
|
345
|
-
Records:
|
|
346
|
-
HasMore:
|
|
347
|
-
|
|
449
|
+
Records: r.Records,
|
|
450
|
+
HasMore: more,
|
|
451
|
+
NextCursor: more ? `${UNION_CURSOR_PREFIX}${advanceTo}|${memberResumable ? nextInner : ''}` : undefined,
|
|
452
|
+
NewWatermarkValue: r.NewWatermarkValue,
|
|
453
|
+
Warnings: r.Warnings,
|
|
348
454
|
};
|
|
349
455
|
}
|
|
350
456
|
// ── Literal-create / literal-update overrides (RequiresLiveVerification) ──────────
|
|
@@ -579,7 +685,56 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
579
685
|
const pkFieldNames = this.PrimaryKeyNames(fields);
|
|
580
686
|
const warnings = [];
|
|
581
687
|
// Pull the door collection (paginated) and descend to the parent leaf values + the door rows.
|
|
582
|
-
|
|
688
|
+
// Page the door by the DOOR's own rules, not the child's — see FetchDoorRows.
|
|
689
|
+
const doorObj = this.ResolveDoorObject(ctx, accessPath, obj);
|
|
690
|
+
// A resumed call reuses the door enumeration; a fresh walk (no cursor) re-reads it, so a new
|
|
691
|
+
// sync always sees new parents. Keyed by door + path, so objects sharing a door share the read.
|
|
692
|
+
const doorKey = `${ctx.CompanyIntegration.IntegrationID}|${accessPath.door}|${accessPath.doorPath}`;
|
|
693
|
+
let doorRows = ctx.CurrentCursor ? this.doorRowCache.get(doorKey) : undefined;
|
|
694
|
+
let doorComplete = doorRows !== undefined; // a cached enumeration is only ever a complete one
|
|
695
|
+
if (!doorRows) {
|
|
696
|
+
const door = await this.FetchDoorRows(auth, baseURL, accessPath.doorPath, doorObj, warnings);
|
|
697
|
+
doorRows = door.records;
|
|
698
|
+
doorComplete = door.complete;
|
|
699
|
+
// NEVER cache a truncated enumeration: it would be reused as the whole parent set and
|
|
700
|
+
// the walk would report success having seen a fraction of it.
|
|
701
|
+
if (doorComplete) {
|
|
702
|
+
this.doorRowCache.set(doorKey, doorRows);
|
|
703
|
+
while (this.doorRowCache.size > DOOR_CACHE_MAX_ENTRIES) {
|
|
704
|
+
const oldest = this.doorRowCache.keys().next();
|
|
705
|
+
if (oldest.done)
|
|
706
|
+
break;
|
|
707
|
+
this.doorRowCache.delete(oldest.value);
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
else {
|
|
711
|
+
this.doorRowCache.delete(doorKey);
|
|
712
|
+
warnings.push({
|
|
713
|
+
Code: 'DOOR_TRUNCATED',
|
|
714
|
+
Message: `"${obj.Name}" door "${accessPath.door}" enumeration was cut short at`
|
|
715
|
+
+ ` ${doorRows.length} row(s); not cached, and the object stays incomplete so`
|
|
716
|
+
+ ` the next run re-reads it rather than treating this as the whole parent set.`,
|
|
717
|
+
Data: { object: obj.Name, door: accessPath.door, doorRows: doorRows.length },
|
|
718
|
+
});
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
// A capped door is invisible downstream: the walk consumes every parent it was given and
|
|
722
|
+
// reports HasMore:false truthfully, so a short door reads as a complete one. Record what the
|
|
723
|
+
// door produced and under which pagination rules — counts and flags only, never data.
|
|
724
|
+
const doorPaged = !!doorObj.SupportsPagination && doorObj.PaginationType !== 'None';
|
|
725
|
+
warnings.push({
|
|
726
|
+
Code: 'DOOR_ROWS',
|
|
727
|
+
Message: `"${obj.Name}" door "${accessPath.door}" returned ${doorRows.length} row(s)`
|
|
728
|
+
+ ` (paging ${doorPaged ? 'ON' : 'OFF'}, type ${doorObj.PaginationType ?? 'null'},`
|
|
729
|
+
+ ` declared page size ${doorObj.DefaultPageSize ?? 'null'}).`,
|
|
730
|
+
Data: {
|
|
731
|
+
object: obj.Name, door: accessPath.door, doorRows: doorRows.length,
|
|
732
|
+
doorPaginated: doorPaged,
|
|
733
|
+
doorPaginationType: doorObj.PaginationType ?? null,
|
|
734
|
+
doorDeclaredPageSize: doorObj.DefaultPageSize ?? null,
|
|
735
|
+
doorObjectResolved: doorObj.Name,
|
|
736
|
+
},
|
|
737
|
+
});
|
|
583
738
|
if (doorRows.length === 0) {
|
|
584
739
|
warnings.push({
|
|
585
740
|
Code: 'ZERO_PARENTS',
|
|
@@ -590,7 +745,7 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
590
745
|
}
|
|
591
746
|
// embedded-array: records are already inside the door payload (e.g. Program.rounds[]).
|
|
592
747
|
if (accessPath.extractionMode === 'embedded-array') {
|
|
593
|
-
const records = this.ExtractEmbedded(doorRows, accessPath.nestingSegments ?? []);
|
|
748
|
+
const records = this.ExtractEmbedded(doorRows, accessPath.nestingSegments ?? [], accessPath.embeddedParentTag);
|
|
594
749
|
if (records.length === 0) {
|
|
595
750
|
warnings.push({
|
|
596
751
|
Code: 'ZERO_LEAVES',
|
|
@@ -602,7 +757,8 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
602
757
|
}
|
|
603
758
|
return {
|
|
604
759
|
Records: records.map(r => this.BuildExternalRecord(r, obj, fields, pkFieldNames)),
|
|
605
|
-
|
|
760
|
+
// A truncated door enumeration is not a finished object — see DOOR_TRUNCATED.
|
|
761
|
+
HasMore: !doorComplete,
|
|
606
762
|
Warnings: warnings,
|
|
607
763
|
};
|
|
608
764
|
}
|
|
@@ -610,7 +766,7 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
610
766
|
// response rather than a paginated list leaf — /v2/Applications/{id} carries
|
|
611
767
|
// roundSubmissions[] and the file-upload field values; /v2/Media/{id} IS the record.
|
|
612
768
|
if (accessPath.extractionMode === 'detail-embedded' || accessPath.extractionMode === 'detail-object') {
|
|
613
|
-
return this.FetchViaDetailWalk(ctx, obj, accessPath, auth, baseURL, doorRows, fields, pkFieldNames, warnings);
|
|
769
|
+
return this.FetchViaDetailWalk(ctx, obj, accessPath, auth, baseURL, doorRows, fields, pkFieldNames, warnings, doorComplete);
|
|
614
770
|
}
|
|
615
771
|
const parentIDs = this.DescendToParentIDs(doorRows, accessPath);
|
|
616
772
|
if (parentIDs.length === 0) {
|
|
@@ -718,9 +874,47 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
718
874
|
return { Records: out, HasMore: false, Warnings: warnings };
|
|
719
875
|
}
|
|
720
876
|
/** Fetch all pages of a door collection (used to enumerate parent ids / embedded children). */
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
877
|
+
/**
|
|
878
|
+
* The IntegrationObject whose pagination rules govern the DOOR request.
|
|
879
|
+
*
|
|
880
|
+
* This used to be the child object, and that silently capped every detail walk at one page of
|
|
881
|
+
* parents. `PaginateLeaf` decides whether to page at all from
|
|
882
|
+
* `obj.SupportsPagination && obj.PaginationType !== 'None'` — and a walked child declares
|
|
883
|
+
* neither, because the child is not itself a paged collection (ApplicationFile's APIPath is
|
|
884
|
+
* "embedded in /v2/Applications/{applicationId} …"). So the door URL went out with no
|
|
885
|
+
* pageIndex/pageSize and OpenWater answered with its default page.
|
|
886
|
+
*
|
|
887
|
+
* Measured on a live tenant 2026-08-22, against 1,976 Applications:
|
|
888
|
+
* ApplicationRoundSubmission 10 parents -> 10 records, hasMore:false (target 1,935)
|
|
889
|
+
* ApplicationFile 10 parents -> 0 records (ZERO_LEAVES) (target 4,001)
|
|
890
|
+
* and ApplicationWinnerType was CORRECT at 74 only because its door is /v2/Programs, which has
|
|
891
|
+
* 5 rows and therefore fits inside one default page. The walk reported HasMore:false honestly:
|
|
892
|
+
* it really had consumed every parent it was given. It was given ten.
|
|
893
|
+
*
|
|
894
|
+
* Falls back to the child when the door has no catalog row, which keeps a misdeclared
|
|
895
|
+
* AccessPath behaving as before rather than throwing mid-sync.
|
|
896
|
+
*/
|
|
897
|
+
ResolveDoorObject(ctx, accessPath, child) {
|
|
898
|
+
try {
|
|
899
|
+
return this.GetCachedObject(ctx.CompanyIntegration.IntegrationID, accessPath.door);
|
|
900
|
+
}
|
|
901
|
+
catch {
|
|
902
|
+
return child;
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
/**
|
|
906
|
+
* Enumerate the door.
|
|
907
|
+
*
|
|
908
|
+
* Returns `complete: false` when the enumeration was cut short — currently only by a rate limit
|
|
909
|
+
* (see RATE_LIMITED_PARTIAL). That flag MUST reach the caller: a truncated door returned as if
|
|
910
|
+
* whole is cached as whole, and the walk then finishes at `consumed === parentIDs.length` having
|
|
911
|
+
* seen a fraction of the parents, reporting success. That is the same shape as every other bug
|
|
912
|
+
* in this path — an incomplete read that looks authoritative — so the truncation is carried,
|
|
913
|
+
* never swallowed.
|
|
914
|
+
*/
|
|
915
|
+
async FetchDoorRows(auth, baseURL, doorPath, doorObj, warnings) {
|
|
916
|
+
const { records, hasMore } = await this.PaginateLeaf(auth, baseURL, doorPath, doorObj, undefined, undefined, '', true, warnings);
|
|
917
|
+
return { records, complete: !hasMore };
|
|
724
918
|
}
|
|
725
919
|
/**
|
|
726
920
|
* Generic paginated leaf fetch. Loops pageIndex until a short/empty page (or the batch cap when
|
|
@@ -776,6 +970,21 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
776
970
|
return { records: all, newWatermark: undefined, hasMore: false, nextPage: page,
|
|
777
971
|
rejection: { status: response.Status, url, vendor: vendor ?? null, response } };
|
|
778
972
|
}
|
|
973
|
+
// A THROTTLE partway through an enumeration is not the object failing. Measured
|
|
974
|
+
// live: `HTTP 429 at /v2/Applications?pageIndex=4&pageSize=100` threw, which
|
|
975
|
+
// discarded the four pages already in hand and took the object to zero. Keep what
|
|
976
|
+
// the vendor did give and report the truncation — the walk is resumable, so the
|
|
977
|
+
// next call continues instead of starting over with nothing.
|
|
978
|
+
if (response.Status === 429 && all.length > 0) {
|
|
979
|
+
warnings?.push({
|
|
980
|
+
Code: 'RATE_LIMITED_PARTIAL',
|
|
981
|
+
Message: `"${obj.Name}" was rate-limited at ${url} after ${all.length} record(s)`
|
|
982
|
+
+ ` over ${page + 1} page(s); keeping them and resuming later rather than`
|
|
983
|
+
+ ` discarding the enumeration.`,
|
|
984
|
+
Data: { object: obj.Name, url, status: 429, recordsKept: all.length, pages: page + 1 },
|
|
985
|
+
});
|
|
986
|
+
return { records: all, newWatermark, hasMore: true, nextPage: page };
|
|
987
|
+
}
|
|
779
988
|
throw this.HttpError(`OpenWater fetch failed for "${obj.Name}": HTTP ${response.Status} at ${url}`
|
|
780
989
|
+ (vendor ? ` — ${vendor}` : ''), response);
|
|
781
990
|
}
|
|
@@ -855,7 +1064,7 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
855
1064
|
* filtered by elementFilter), tagging the parent id; `detail-object` emits each parent's
|
|
856
1065
|
* detail itself as ONE record, tagged with its id.
|
|
857
1066
|
*/
|
|
858
|
-
async FetchViaDetailWalk(ctx, obj, accessPath, auth, baseURL, doorRows, fields, pkFieldNames, warnings) {
|
|
1067
|
+
async FetchViaDetailWalk(ctx, obj, accessPath, auth, baseURL, doorRows, fields, pkFieldNames, warnings, doorComplete = true) {
|
|
859
1068
|
/**
|
|
860
1069
|
* A detail walk is one HTTP call PER PARENT — for this tenant that is ~2,000 application
|
|
861
1070
|
* details, and Media additionally resolves ~4,000 /v2/Media/{id} records. Doing all of
|
|
@@ -873,30 +1082,59 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
873
1082
|
* run cheap to resume).
|
|
874
1083
|
*/
|
|
875
1084
|
const budget = ctx.BatchSize && ctx.BatchSize > 0 ? ctx.BatchSize : 10_000;
|
|
876
|
-
const
|
|
1085
|
+
const cursorOffset = (prefix) => {
|
|
877
1086
|
const c = ctx.CurrentCursor;
|
|
878
|
-
if (!c || !String(c).startsWith(
|
|
1087
|
+
if (!c || !String(c).startsWith(prefix))
|
|
879
1088
|
return 0;
|
|
880
|
-
const n = Number(String(c).slice(
|
|
1089
|
+
const n = Number(String(c).slice(prefix.length));
|
|
881
1090
|
return Number.isFinite(n) && n > 0 ? n : 0;
|
|
1091
|
+
};
|
|
1092
|
+
const harvestMode = accessPath.parentSource === 'detail-harvest';
|
|
1093
|
+
// Harvest mode counts DOOR ROWS consumed (plus ids already emitted from the window it is
|
|
1094
|
+
// resuming into); every other mode counts parents consumed.
|
|
1095
|
+
const harvestCursor = (() => {
|
|
1096
|
+
const c = String(ctx.CurrentCursor ?? '');
|
|
1097
|
+
if (!harvestMode || !c.startsWith(HARVEST_CURSOR_PREFIX))
|
|
1098
|
+
return { door: 0, id: 0 };
|
|
1099
|
+
const [d, i] = c.slice(HARVEST_CURSOR_PREFIX.length).split(':');
|
|
1100
|
+
const door = Number(d), id = Number(i);
|
|
1101
|
+
return {
|
|
1102
|
+
door: Number.isFinite(door) && door > 0 ? door : 0,
|
|
1103
|
+
id: Number.isFinite(id) && id > 0 ? id : 0,
|
|
1104
|
+
};
|
|
882
1105
|
})();
|
|
1106
|
+
const harvestStartAt = harvestCursor.door;
|
|
1107
|
+
const startAt = harvestMode ? harvestCursor.id : cursorOffset(DETAIL_WALK_CURSOR_PREFIX);
|
|
1108
|
+
// Between-request wall clock. The engine kills the batch at 30s and keeps nothing, so the
|
|
1109
|
+
// walk stops itself with time to spare and comes back with a cursor.
|
|
1110
|
+
const deadline = Date.now() + WALK_TIME_BUDGET_MS;
|
|
883
1111
|
let parentIDs;
|
|
884
1112
|
// Set when harvesting stopped early: `parentIDs` is then a PREFIX of the real parent set,
|
|
885
1113
|
// so its length must NOT be read as the total (doing so reported HasMore:false with door
|
|
886
1114
|
// rows still un-harvested, which would have silently dropped every later record).
|
|
887
1115
|
let harvestTruncated = false;
|
|
888
|
-
|
|
1116
|
+
// Observed key names/types from the first harvested detail — see HARVEST_SHAPE.
|
|
1117
|
+
let harvestShape = null;
|
|
1118
|
+
// Door rows consumed by this call's harvest window (harvest mode only).
|
|
1119
|
+
let doorAt = harvestStartAt;
|
|
1120
|
+
let doorTotal = 0;
|
|
1121
|
+
if (harvestMode) {
|
|
889
1122
|
const doorIDs = this.DescendToParentIDs(doorRows, { ...accessPath, nestingSegments: [] });
|
|
1123
|
+
doorTotal = doorIDs.length;
|
|
1124
|
+
// A WINDOW of door rows, not a prefix: every id found here is work this call will do,
|
|
1125
|
+
// and the cursor advances past the window whether or not it yielded any ids.
|
|
890
1126
|
const harvested = new Set();
|
|
891
|
-
|
|
892
|
-
//
|
|
893
|
-
//
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
if (harvested.size >= needed) {
|
|
1127
|
+
let doorsWalked = 0;
|
|
1128
|
+
// A resumed partial window must be rebuilt identically — the ids are collected in door
|
|
1129
|
+
// order and Set preserves insertion order, so slicing by idOffset is exact.
|
|
1130
|
+
while (doorAt < doorIDs.length) {
|
|
1131
|
+
if (doorsWalked >= HARVEST_DOORS_PER_CALL || Date.now() > deadline) {
|
|
897
1132
|
harvestTruncated = true;
|
|
898
1133
|
break;
|
|
899
1134
|
}
|
|
1135
|
+
const doorID = doorIDs[doorAt];
|
|
1136
|
+
doorAt++;
|
|
1137
|
+
doorsWalked++;
|
|
900
1138
|
const hPath = this.InjectParentID(accessPath.harvestDetailPath ?? '', doorID, {
|
|
901
1139
|
...accessPath, parentParamName: accessPath.harvestDetailParam ?? 'id', parentParamIn: 'path'
|
|
902
1140
|
});
|
|
@@ -905,6 +1143,8 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
905
1143
|
const detail = await this.FetchDetailCached(auth, baseURL, hPath, warnings);
|
|
906
1144
|
if (!detail)
|
|
907
1145
|
continue;
|
|
1146
|
+
if (harvestShape === null)
|
|
1147
|
+
harvestShape = this.ShapeAlong(detail, accessPath.harvestSegments ?? []);
|
|
908
1148
|
for (const node of this.WalkSegments([detail], accessPath.harvestSegments ?? [])) {
|
|
909
1149
|
const v = node?.[accessPath.harvestIdKey ?? 'id'];
|
|
910
1150
|
if (v != null && String(v).length > 0)
|
|
@@ -916,18 +1156,52 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
916
1156
|
else {
|
|
917
1157
|
parentIDs = this.DescendToParentIDs(doorRows, { ...accessPath, nestingSegments: accessPath.parentIdSegments ?? [] });
|
|
918
1158
|
}
|
|
1159
|
+
if (parentIDs.length === 0 && harvestMode && doorAt < doorTotal) {
|
|
1160
|
+
// An empty WINDOW is not an empty object: these door rows carried no ids, the next ones
|
|
1161
|
+
// may. Advance the cursor and come back rather than declaring the object finished.
|
|
1162
|
+
return {
|
|
1163
|
+
Records: [], HasMore: true,
|
|
1164
|
+
NextCursor: `${HARVEST_CURSOR_PREFIX}${doorAt}`,
|
|
1165
|
+
Warnings: warnings,
|
|
1166
|
+
};
|
|
1167
|
+
}
|
|
919
1168
|
if (parentIDs.length === 0) {
|
|
920
1169
|
warnings.push({ Code: 'ZERO_PARENTS',
|
|
921
1170
|
Message: `No parent ids for "${obj.Name}" via ${accessPath.door} (${accessPath.parentSource ?? 'door-ids'}).`,
|
|
922
1171
|
Data: { door: accessPath.door, parentSource: accessPath.parentSource ?? 'door-ids' } });
|
|
1172
|
+
// Say WHAT WAS THERE instead of only that nothing matched — a wrong declared path and a
|
|
1173
|
+
// genuinely empty collection look identical from a zero, and need opposite responses.
|
|
1174
|
+
if (harvestShape) {
|
|
1175
|
+
warnings.push({
|
|
1176
|
+
Code: 'HARVEST_SHAPE',
|
|
1177
|
+
Message: `"${obj.Name}" harvest looked for "${accessPath.harvestIdKey ?? 'id'}" under`
|
|
1178
|
+
+ ` ${(accessPath.harvestSegments ?? []).join('->') || '(root)'} of`
|
|
1179
|
+
+ ` ${accessPath.harvestDetailPath ?? '(no detail path)'} and found none.`
|
|
1180
|
+
+ ` Keys actually present — names and types only: ${harvestShape}`,
|
|
1181
|
+
Data: {
|
|
1182
|
+
object: obj.Name,
|
|
1183
|
+
harvestIdKey: accessPath.harvestIdKey ?? 'id',
|
|
1184
|
+
harvestSegments: accessPath.harvestSegments ?? [],
|
|
1185
|
+
observedShape: harvestShape,
|
|
1186
|
+
},
|
|
1187
|
+
});
|
|
1188
|
+
}
|
|
923
1189
|
return { Records: [], HasMore: false, Warnings: warnings };
|
|
924
1190
|
}
|
|
925
1191
|
const out = [];
|
|
926
1192
|
const filt = accessPath.elementFilter;
|
|
927
1193
|
let consumed = startAt;
|
|
1194
|
+
// The nesting walk's counterpart to harvestShape: what the first parent detail actually held.
|
|
1195
|
+
let nestShape = null;
|
|
928
1196
|
for (const parentID of parentIDs.slice(startAt)) {
|
|
929
1197
|
if (out.length >= budget)
|
|
930
1198
|
break;
|
|
1199
|
+
// Bound the vendor calls, not only the records emitted — see MAX_PARENTS_PER_CALL —
|
|
1200
|
+
// and stop on the clock, which is what the engine actually kills the batch on.
|
|
1201
|
+
if (consumed - startAt >= MAX_PARENTS_PER_CALL)
|
|
1202
|
+
break;
|
|
1203
|
+
if (Date.now() > deadline)
|
|
1204
|
+
break;
|
|
931
1205
|
consumed++;
|
|
932
1206
|
const leafPath = this.InjectParentID(accessPath.entryPath, parentID, accessPath);
|
|
933
1207
|
if (leafPath == null)
|
|
@@ -942,6 +1216,8 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
942
1216
|
out.push(this.BuildExternalRecord(rec, obj, fields, pkFieldNames));
|
|
943
1217
|
}
|
|
944
1218
|
else {
|
|
1219
|
+
if (nestShape === null)
|
|
1220
|
+
nestShape = this.ShapeAlong(detail, accessPath.nestingSegments ?? []);
|
|
945
1221
|
let elements = this.WalkSegments([detail], accessPath.nestingSegments ?? []);
|
|
946
1222
|
if (filt && filt.key) {
|
|
947
1223
|
elements = elements.filter(e => e && (filt.exists
|
|
@@ -960,15 +1236,83 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
960
1236
|
warnings.push({ Code: 'ZERO_LEAVES',
|
|
961
1237
|
Message: `"${obj.Name}" walked ${parentIDs.length} parent detail(s) and extracted no records.`,
|
|
962
1238
|
Data: { object: obj.Name, parents: parentIDs.length } });
|
|
1239
|
+
// Same argument as HARVEST_SHAPE: a wrong declared segment and an empty collection both
|
|
1240
|
+
// produce this zero, and only the observed key names separate them. ApplicationFile's
|
|
1241
|
+
// ZERO_LEAVES was a misdeclared segment name for a full day without this.
|
|
1242
|
+
if (nestShape) {
|
|
1243
|
+
warnings.push({
|
|
1244
|
+
Code: 'NESTING_SHAPE',
|
|
1245
|
+
Message: `"${obj.Name}" descended ${(accessPath.nestingSegments ?? []).join('->') || '(root)'}`
|
|
1246
|
+
+ ` of ${accessPath.entryPath} and found no entries.`
|
|
1247
|
+
+ ` Keys actually present — names and types only: ${nestShape}`,
|
|
1248
|
+
Data: {
|
|
1249
|
+
object: obj.Name,
|
|
1250
|
+
nestingSegments: accessPath.nestingSegments ?? [],
|
|
1251
|
+
observedShape: nestShape,
|
|
1252
|
+
},
|
|
1253
|
+
});
|
|
1254
|
+
}
|
|
963
1255
|
}
|
|
964
|
-
|
|
1256
|
+
// Harvest mode resumes by door row, with an id offset when this window was not finished.
|
|
1257
|
+
// Finishing the window is what allows the door offset to advance: advancing it with ids
|
|
1258
|
+
// left over is exactly how records get dropped without any error.
|
|
1259
|
+
const windowFinished = consumed >= parentIDs.length;
|
|
1260
|
+
const moreParents = harvestMode
|
|
1261
|
+
? (!windowFinished || doorAt < doorTotal || !doorComplete)
|
|
1262
|
+
: (consumed < parentIDs.length || harvestTruncated || !doorComplete);
|
|
1263
|
+
const nextCursor = harvestMode
|
|
1264
|
+
? (windowFinished
|
|
1265
|
+
? `${HARVEST_CURSOR_PREFIX}${doorAt}`
|
|
1266
|
+
: `${HARVEST_CURSOR_PREFIX}${harvestStartAt}:${consumed}`)
|
|
1267
|
+
: `${DETAIL_WALK_CURSOR_PREFIX}${consumed}`;
|
|
965
1268
|
return {
|
|
966
1269
|
Records: out,
|
|
967
1270
|
HasMore: moreParents,
|
|
968
|
-
NextCursor: moreParents ?
|
|
1271
|
+
NextCursor: moreParents ? nextCursor : undefined,
|
|
969
1272
|
Warnings: warnings,
|
|
970
1273
|
};
|
|
971
1274
|
}
|
|
1275
|
+
/**
|
|
1276
|
+
* When a harvest or a nesting walk finds nothing, "found nothing" is not a diagnosis: the path
|
|
1277
|
+
* may be wrong, or the collection may genuinely be empty, and those need opposite responses.
|
|
1278
|
+
* This reports the shape actually present so a declared AccessPath can be corrected against
|
|
1279
|
+
* observed structure instead of vendor documentation — the same rule the catalog is held to
|
|
1280
|
+
* ("provably know, not guessed"). Names and types only, capped, so no member data is emitted.
|
|
1281
|
+
*/
|
|
1282
|
+
static ShapeOf(node, cap = 40) {
|
|
1283
|
+
if (node == null || typeof node !== 'object')
|
|
1284
|
+
return [];
|
|
1285
|
+
const src = Array.isArray(node) ? node[0] : node;
|
|
1286
|
+
if (src == null || typeof src !== 'object')
|
|
1287
|
+
return [];
|
|
1288
|
+
const out = [];
|
|
1289
|
+
for (const [k, v] of Object.entries(src)) {
|
|
1290
|
+
const t = v === null ? 'null'
|
|
1291
|
+
: Array.isArray(v) ? `array[${v.length}]`
|
|
1292
|
+
: typeof v === 'object' ? 'object'
|
|
1293
|
+
: typeof v;
|
|
1294
|
+
out.push(`${k}:${t}`);
|
|
1295
|
+
if (out.length >= cap)
|
|
1296
|
+
break;
|
|
1297
|
+
}
|
|
1298
|
+
return out.sort();
|
|
1299
|
+
}
|
|
1300
|
+
/**
|
|
1301
|
+
* The root's shape plus the shape at each declared segment that actually resolves — enough to
|
|
1302
|
+
* correct a declared path against the payload, and nothing more. The segment whose braces come
|
|
1303
|
+
* back empty is the one that does not exist.
|
|
1304
|
+
*/
|
|
1305
|
+
ShapeAlong(detail, segments) {
|
|
1306
|
+
const parts = [`root{${OpenWaterConnector_1.ShapeOf(detail).join(', ')}}`];
|
|
1307
|
+
let cursor = [detail];
|
|
1308
|
+
for (const seg of segments) {
|
|
1309
|
+
cursor = this.WalkSegments(cursor, [seg]);
|
|
1310
|
+
parts.push(`${seg}{${OpenWaterConnector_1.ShapeOf(cursor[0]).join(', ')}}`);
|
|
1311
|
+
if (cursor.length === 0)
|
|
1312
|
+
break;
|
|
1313
|
+
}
|
|
1314
|
+
return parts.join(' | ');
|
|
1315
|
+
}
|
|
972
1316
|
/** Additional full walks to union with the main AccessPath (empty when not declared). */
|
|
973
1317
|
ParseAlternativeAccessPaths(obj) {
|
|
974
1318
|
if (!obj.Configuration)
|
|
@@ -1057,8 +1401,39 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
1057
1401
|
return nodes;
|
|
1058
1402
|
}
|
|
1059
1403
|
/** For embedded-array access paths: emit the nested records directly from the door payload. */
|
|
1060
|
-
|
|
1061
|
-
|
|
1404
|
+
/**
|
|
1405
|
+
* embedded-array extraction, optionally tagging each leaf with its IMMEDIATE parent's id.
|
|
1406
|
+
*
|
|
1407
|
+
* Without the tag the walk keeps only leaves, so an element arrives with no idea which parent
|
|
1408
|
+
* produced it — and for a leaf whose identity is only unique WITHIN its parent, that loses rows.
|
|
1409
|
+
* ApplicationWinnerType is the case: a winner type is `{id, name}` declared on a round, the same
|
|
1410
|
+
* type id can be declared on several rounds, and the key was `id` alone. 89 (round, type) pairs
|
|
1411
|
+
* therefore collapsed to 74 distinct ids, and the round association was gone from the row.
|
|
1412
|
+
*
|
|
1413
|
+
* `embeddedParentTag: { sourceKey, asKey }` copies the parent's `sourceKey` onto each leaf as
|
|
1414
|
+
* `asKey`, so the pair can be keyed and the row can say where it came from. Absent — the
|
|
1415
|
+
* default — behaviour is exactly as before.
|
|
1416
|
+
*/
|
|
1417
|
+
ExtractEmbedded(doorRows, segments, tag) {
|
|
1418
|
+
if (!tag?.asKey)
|
|
1419
|
+
return this.WalkSegments(doorRows, segments);
|
|
1420
|
+
const sourceKey = tag.sourceKey ?? 'id';
|
|
1421
|
+
const asKey = tag.asKey;
|
|
1422
|
+
// Walk to the parents (all but the last segment), then take each parent's leaves itself so
|
|
1423
|
+
// the parent is still in hand when its children are collected.
|
|
1424
|
+
const parents = this.WalkSegments(doorRows, segments.slice(0, -1));
|
|
1425
|
+
const lastSeg = segments[segments.length - 1];
|
|
1426
|
+
const out = [];
|
|
1427
|
+
for (const parent of parents) {
|
|
1428
|
+
const parentValue = parent[sourceKey];
|
|
1429
|
+
for (const leaf of this.WalkSegments([parent], [lastSeg])) {
|
|
1430
|
+
// Never overwrite a value the vendor itself supplied under that name.
|
|
1431
|
+
out.push(leaf[asKey] == null && parentValue != null
|
|
1432
|
+
? { ...leaf, [asKey]: parentValue }
|
|
1433
|
+
: leaf);
|
|
1434
|
+
}
|
|
1435
|
+
}
|
|
1436
|
+
return out;
|
|
1062
1437
|
}
|
|
1063
1438
|
/**
|
|
1064
1439
|
* Injects a parent id into an entry path: as a query param (?<parentParamName>=) when
|
|
@@ -1282,7 +1657,7 @@ let OpenWaterConnector = class OpenWaterConnector extends BaseRESTIntegrationCon
|
|
|
1282
1657
|
return url.endsWith('/') ? url.slice(0, -1) : url;
|
|
1283
1658
|
}
|
|
1284
1659
|
};
|
|
1285
|
-
OpenWaterConnector = __decorate([
|
|
1660
|
+
OpenWaterConnector = OpenWaterConnector_1 = __decorate([
|
|
1286
1661
|
RegisterClass(BaseIntegrationConnector, '@memberjunction/connector-openwater')
|
|
1287
1662
|
], OpenWaterConnector);
|
|
1288
1663
|
export { OpenWaterConnector };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenWaterConnector.js","sourceRoot":"","sources":["../src/OpenWaterConnector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenWaterConnector.js","sourceRoot":"","sources":["../src/OpenWaterConnector.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/connector-openwater",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.7",
|
|
4
4
|
"description": "MemberJunction OpenWater connector.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
"author": "MemberJunction.com",
|
|
16
16
|
"license": "BUSL-1.1",
|
|
17
17
|
"peerDependencies": {
|
|
18
|
-
"@memberjunction/core": ">=5.42.0 <
|
|
19
|
-
"@memberjunction/core-entities": ">=5.42.0 <
|
|
20
|
-
"@memberjunction/global": ">=5.42.0 <
|
|
21
|
-
"@memberjunction/integration-engine": ">=5.42.0 <
|
|
18
|
+
"@memberjunction/core": ">=5.42.0 <7.0.0",
|
|
19
|
+
"@memberjunction/core-entities": ">=5.42.0 <7.0.0",
|
|
20
|
+
"@memberjunction/global": ">=5.42.0 <7.0.0",
|
|
21
|
+
"@memberjunction/integration-engine": ">=5.42.0 <7.0.0"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@memberjunction/connector-schema-merge": "^1.0.0"
|