@pvh-afl/core 1.2.14 → 1.2.15
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/dist/common/circuit-breaker.d.ts +81 -0
- package/dist/common/circuit-breaker.d.ts.map +1 -0
- package/dist/common/circuit-breaker.js +163 -0
- package/dist/common/circuit-breaker.js.map +1 -0
- package/dist/common/index.d.ts +1 -0
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +1 -0
- package/dist/common/index.js.map +1 -1
- package/dist/integrations/commerce/commerce.types.d.ts +59 -0
- package/dist/integrations/commerce/commerce.types.d.ts.map +1 -1
- package/dist/integrations/commerce/shopify.service.d.ts +17 -1
- package/dist/integrations/commerce/shopify.service.d.ts.map +1 -1
- package/dist/integrations/commerce/shopify.service.js +202 -0
- package/dist/integrations/commerce/shopify.service.js.map +1 -1
- package/dist/integrations/integrations.module.d.ts.map +1 -1
- package/dist/integrations/integrations.module.js +3 -0
- package/dist/integrations/integrations.module.js.map +1 -1
- package/dist/integrations/search/index.d.ts +2 -0
- package/dist/integrations/search/index.d.ts.map +1 -1
- package/dist/integrations/search/index.js +2 -0
- package/dist/integrations/search/index.js.map +1 -1
- package/dist/integrations/search/search-fallback.service.d.ts +93 -0
- package/dist/integrations/search/search-fallback.service.d.ts.map +1 -0
- package/dist/integrations/search/search-fallback.service.js +339 -0
- package/dist/integrations/search/search-fallback.service.js.map +1 -0
- package/dist/integrations/search/search.types.d.ts +10 -0
- package/dist/integrations/search/search.types.d.ts.map +1 -1
- package/dist/integrations/search/search.types.js.map +1 -1
- package/dist/integrations/search/shopify-search.mapper.d.ts +31 -0
- package/dist/integrations/search/shopify-search.mapper.d.ts.map +1 -0
- package/dist/integrations/search/shopify-search.mapper.js +365 -0
- package/dist/integrations/search/shopify-search.mapper.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Circuit Breaker
|
|
3
|
+
*
|
|
4
|
+
* Wraps a flaky upstream at the *call site* so a failing vendor is skipped
|
|
5
|
+
* instead of being waited on. Two states only; the "probe" that tests recovery
|
|
6
|
+
* is claimed with a timestamp, never a lock, so no code path can leave the
|
|
7
|
+
* breaker stuck (see SEARCH-FALLBACK-IMPLEMENTATION.md §7.9).
|
|
8
|
+
*
|
|
9
|
+
* Failure classification stays with the caller — this class only counts
|
|
10
|
+
* outcomes it is told about, which keeps it vendor-agnostic.
|
|
11
|
+
*/
|
|
12
|
+
export type BreakerState = 'CLOSED' | 'OPEN';
|
|
13
|
+
export interface CircuitBreakerOptions {
|
|
14
|
+
/** Identifier used in logs and metrics, e.g. 'wizzy'. */
|
|
15
|
+
name: string;
|
|
16
|
+
/** Absolute failures inside windowMs that trip the breaker. */
|
|
17
|
+
failureThreshold: number;
|
|
18
|
+
/** Failure fraction (0-1) that trips the breaker once minimumCalls is met. */
|
|
19
|
+
failureRateThreshold: number;
|
|
20
|
+
/** Minimum recorded calls before the rate rule applies. */
|
|
21
|
+
minimumCalls: number;
|
|
22
|
+
/** Rolling window for failure counting. */
|
|
23
|
+
windowMs: number;
|
|
24
|
+
/** First cooldown after tripping. */
|
|
25
|
+
openMs: number;
|
|
26
|
+
/** Upper bound on the doubling cooldown. */
|
|
27
|
+
maxOpenMs: number;
|
|
28
|
+
/** Minimum gap between probes. Must exceed the upstream's own timeout. */
|
|
29
|
+
probeIntervalMs: number;
|
|
30
|
+
}
|
|
31
|
+
export declare const DEFAULT_BREAKER_OPTIONS: Omit<CircuitBreakerOptions, 'name'>;
|
|
32
|
+
export interface BreakerDecision {
|
|
33
|
+
allowed: boolean;
|
|
34
|
+
state: BreakerState;
|
|
35
|
+
reason: 'closed' | 'cooling-down' | 'probe-recent' | 'probe';
|
|
36
|
+
}
|
|
37
|
+
export declare class CircuitBreaker {
|
|
38
|
+
private readonly opts;
|
|
39
|
+
private readonly bucketMs;
|
|
40
|
+
private state;
|
|
41
|
+
private openedAt;
|
|
42
|
+
private lastProbeAt;
|
|
43
|
+
private consecutiveOpens;
|
|
44
|
+
private buckets;
|
|
45
|
+
constructor(options: Partial<CircuitBreakerOptions> & {
|
|
46
|
+
name: string;
|
|
47
|
+
});
|
|
48
|
+
get name(): string;
|
|
49
|
+
/**
|
|
50
|
+
* Decide whether the upstream may be called. In OPEN this also claims the
|
|
51
|
+
* probe window when one is due — claiming is a timestamp write, so there is
|
|
52
|
+
* nothing to release afterwards.
|
|
53
|
+
*/
|
|
54
|
+
canAttempt(now?: number): BreakerDecision;
|
|
55
|
+
/** Upstream answered correctly. A success while OPEN closes the breaker. */
|
|
56
|
+
recordSuccess(now?: number): void;
|
|
57
|
+
/** Upstream is broken. May trip the breaker, or extend the cooldown. */
|
|
58
|
+
recordFailure(now?: number): void;
|
|
59
|
+
getState(): BreakerState;
|
|
60
|
+
getLastProbeAt(): number;
|
|
61
|
+
/** Snapshot for /health and logs. */
|
|
62
|
+
getSnapshot(now?: number): {
|
|
63
|
+
name: string;
|
|
64
|
+
state: BreakerState;
|
|
65
|
+
openedAt: number;
|
|
66
|
+
lastProbeAt: number;
|
|
67
|
+
consecutiveOpens: number;
|
|
68
|
+
cooldownMs: number;
|
|
69
|
+
msUntilNextProbe: number;
|
|
70
|
+
failures: number;
|
|
71
|
+
successes: number;
|
|
72
|
+
};
|
|
73
|
+
/** Cooldown doubles per consecutive open, capped at maxOpenMs. */
|
|
74
|
+
private currentOpenMs;
|
|
75
|
+
private shouldTrip;
|
|
76
|
+
/** Bucket for `now`, reset if the slot has rotated past its window. */
|
|
77
|
+
private bucketFor;
|
|
78
|
+
private windowTotals;
|
|
79
|
+
private resetWindow;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=circuit-breaker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../src/common/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,CAAC;IACzB,8EAA8E;IAC9E,oBAAoB,EAAE,MAAM,CAAC;IAC7B,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,uBAAuB,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAQvE,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,cAAc,GAAG,OAAO,CAAC;CAC9D;AAWD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,OAAO,CAAW;gBAEd,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAUtE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACH,UAAU,CAAC,GAAG,GAAE,MAAmB,GAAG,eAAe;IAiBrD,4EAA4E;IAC5E,aAAa,CAAC,GAAG,GAAE,MAAmB,GAAG,IAAI;IAW7C,wEAAwE;IACxE,aAAa,CAAC,GAAG,GAAE,MAAmB,GAAG,IAAI;IAkB7C,QAAQ,IAAI,YAAY;IAIxB,cAAc,IAAI,MAAM;IAIxB,qCAAqC;IACrC,WAAW,CAAC,GAAG,GAAE,MAAmB,GAAG;QACrC,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,YAAY,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KACnB;IAuBD,kEAAkE;IAClE,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,UAAU;IAclB,uEAAuE;IACvE,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,WAAW;CAOpB"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Circuit Breaker
|
|
4
|
+
*
|
|
5
|
+
* Wraps a flaky upstream at the *call site* so a failing vendor is skipped
|
|
6
|
+
* instead of being waited on. Two states only; the "probe" that tests recovery
|
|
7
|
+
* is claimed with a timestamp, never a lock, so no code path can leave the
|
|
8
|
+
* breaker stuck (see SEARCH-FALLBACK-IMPLEMENTATION.md §7.9).
|
|
9
|
+
*
|
|
10
|
+
* Failure classification stays with the caller — this class only counts
|
|
11
|
+
* outcomes it is told about, which keeps it vendor-agnostic.
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.CircuitBreaker = exports.DEFAULT_BREAKER_OPTIONS = void 0;
|
|
15
|
+
exports.DEFAULT_BREAKER_OPTIONS = {
|
|
16
|
+
failureThreshold: 5,
|
|
17
|
+
failureRateThreshold: 0.5,
|
|
18
|
+
minimumCalls: 10,
|
|
19
|
+
windowMs: 30_000,
|
|
20
|
+
openMs: 60_000,
|
|
21
|
+
maxOpenMs: 300_000,
|
|
22
|
+
probeIntervalMs: 15_000,
|
|
23
|
+
};
|
|
24
|
+
/** Fixed ring of buckets so recording is O(1) and memory never grows. */
|
|
25
|
+
const BUCKET_COUNT = 6;
|
|
26
|
+
class CircuitBreaker {
|
|
27
|
+
opts;
|
|
28
|
+
bucketMs;
|
|
29
|
+
state = 'CLOSED';
|
|
30
|
+
openedAt = 0;
|
|
31
|
+
lastProbeAt = 0;
|
|
32
|
+
consecutiveOpens = 0;
|
|
33
|
+
buckets;
|
|
34
|
+
constructor(options) {
|
|
35
|
+
this.opts = { ...exports.DEFAULT_BREAKER_OPTIONS, ...options };
|
|
36
|
+
this.bucketMs = Math.max(1, Math.floor(this.opts.windowMs / BUCKET_COUNT));
|
|
37
|
+
this.buckets = Array.from({ length: BUCKET_COUNT }, () => ({
|
|
38
|
+
startedAt: 0,
|
|
39
|
+
successes: 0,
|
|
40
|
+
failures: 0,
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
get name() {
|
|
44
|
+
return this.opts.name;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Decide whether the upstream may be called. In OPEN this also claims the
|
|
48
|
+
* probe window when one is due — claiming is a timestamp write, so there is
|
|
49
|
+
* nothing to release afterwards.
|
|
50
|
+
*/
|
|
51
|
+
canAttempt(now = Date.now()) {
|
|
52
|
+
if (this.state === 'CLOSED') {
|
|
53
|
+
return { allowed: true, state: 'CLOSED', reason: 'closed' };
|
|
54
|
+
}
|
|
55
|
+
if (now - this.openedAt < this.currentOpenMs()) {
|
|
56
|
+
return { allowed: false, state: 'OPEN', reason: 'cooling-down' };
|
|
57
|
+
}
|
|
58
|
+
if (now - this.lastProbeAt < this.opts.probeIntervalMs) {
|
|
59
|
+
return { allowed: false, state: 'OPEN', reason: 'probe-recent' };
|
|
60
|
+
}
|
|
61
|
+
this.lastProbeAt = now;
|
|
62
|
+
return { allowed: true, state: 'OPEN', reason: 'probe' };
|
|
63
|
+
}
|
|
64
|
+
/** Upstream answered correctly. A success while OPEN closes the breaker. */
|
|
65
|
+
recordSuccess(now = Date.now()) {
|
|
66
|
+
this.bucketFor(now).successes++;
|
|
67
|
+
if (this.state === 'OPEN') {
|
|
68
|
+
this.state = 'CLOSED';
|
|
69
|
+
this.openedAt = 0;
|
|
70
|
+
this.consecutiveOpens = 0;
|
|
71
|
+
this.resetWindow();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/** Upstream is broken. May trip the breaker, or extend the cooldown. */
|
|
75
|
+
recordFailure(now = Date.now()) {
|
|
76
|
+
this.bucketFor(now).failures++;
|
|
77
|
+
if (this.state === 'OPEN') {
|
|
78
|
+
// A failed probe restarts the cooldown, one step longer.
|
|
79
|
+
this.openedAt = now;
|
|
80
|
+
this.consecutiveOpens = Math.min(this.consecutiveOpens + 1, 16);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (this.shouldTrip(now)) {
|
|
84
|
+
this.state = 'OPEN';
|
|
85
|
+
this.openedAt = now;
|
|
86
|
+
this.consecutiveOpens = 1;
|
|
87
|
+
this.resetWindow();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
getState() {
|
|
91
|
+
return this.state;
|
|
92
|
+
}
|
|
93
|
+
getLastProbeAt() {
|
|
94
|
+
return this.lastProbeAt;
|
|
95
|
+
}
|
|
96
|
+
/** Snapshot for /health and logs. */
|
|
97
|
+
getSnapshot(now = Date.now()) {
|
|
98
|
+
const { successes, failures } = this.windowTotals(now);
|
|
99
|
+
const cooldownMs = this.state === 'OPEN' ? this.currentOpenMs() : 0;
|
|
100
|
+
const cooldownRemaining = this.state === 'OPEN' ? Math.max(0, this.openedAt + cooldownMs - now) : 0;
|
|
101
|
+
const probeRemaining = this.state === 'OPEN'
|
|
102
|
+
? Math.max(0, this.lastProbeAt + this.opts.probeIntervalMs - now)
|
|
103
|
+
: 0;
|
|
104
|
+
return {
|
|
105
|
+
name: this.opts.name,
|
|
106
|
+
state: this.state,
|
|
107
|
+
openedAt: this.openedAt,
|
|
108
|
+
lastProbeAt: this.lastProbeAt,
|
|
109
|
+
consecutiveOpens: this.consecutiveOpens,
|
|
110
|
+
cooldownMs,
|
|
111
|
+
msUntilNextProbe: Math.max(cooldownRemaining, probeRemaining),
|
|
112
|
+
failures,
|
|
113
|
+
successes,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/** Cooldown doubles per consecutive open, capped at maxOpenMs. */
|
|
117
|
+
currentOpenMs() {
|
|
118
|
+
const factor = 2 ** Math.max(0, this.consecutiveOpens - 1);
|
|
119
|
+
return Math.min(this.opts.openMs * factor, this.opts.maxOpenMs);
|
|
120
|
+
}
|
|
121
|
+
shouldTrip(now) {
|
|
122
|
+
const { successes, failures } = this.windowTotals(now);
|
|
123
|
+
if (failures >= this.opts.failureThreshold) {
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
const total = successes + failures;
|
|
127
|
+
return (total >= this.opts.minimumCalls &&
|
|
128
|
+
failures / total > this.opts.failureRateThreshold);
|
|
129
|
+
}
|
|
130
|
+
/** Bucket for `now`, reset if the slot has rotated past its window. */
|
|
131
|
+
bucketFor(now) {
|
|
132
|
+
const index = Math.floor(now / this.bucketMs) % BUCKET_COUNT;
|
|
133
|
+
const startedAt = Math.floor(now / this.bucketMs) * this.bucketMs;
|
|
134
|
+
const bucket = this.buckets[index];
|
|
135
|
+
if (bucket.startedAt !== startedAt) {
|
|
136
|
+
bucket.startedAt = startedAt;
|
|
137
|
+
bucket.successes = 0;
|
|
138
|
+
bucket.failures = 0;
|
|
139
|
+
}
|
|
140
|
+
return bucket;
|
|
141
|
+
}
|
|
142
|
+
windowTotals(now) {
|
|
143
|
+
const cutoff = now - this.opts.windowMs;
|
|
144
|
+
let successes = 0;
|
|
145
|
+
let failures = 0;
|
|
146
|
+
for (const bucket of this.buckets) {
|
|
147
|
+
if (bucket.startedAt > cutoff) {
|
|
148
|
+
successes += bucket.successes;
|
|
149
|
+
failures += bucket.failures;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return { successes, failures };
|
|
153
|
+
}
|
|
154
|
+
resetWindow() {
|
|
155
|
+
for (const bucket of this.buckets) {
|
|
156
|
+
bucket.startedAt = 0;
|
|
157
|
+
bucket.successes = 0;
|
|
158
|
+
bucket.failures = 0;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
exports.CircuitBreaker = CircuitBreaker;
|
|
163
|
+
//# sourceMappingURL=circuit-breaker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../src/common/circuit-breaker.ts"],"names":[],"mappings":"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"}
|
package/dist/common/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
|
package/dist/common/index.js
CHANGED
|
@@ -3,4 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./logger"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./guards/tenant.guard"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./circuit-breaker"), exports);
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
package/dist/common/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,gEAAsC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,gEAAsC;AACtC,4DAAkC"}
|
|
@@ -371,6 +371,65 @@ export interface CommerceProductRecommendation {
|
|
|
371
371
|
featuredImage: CommerceImage | null;
|
|
372
372
|
priceRange: CommercePriceRange;
|
|
373
373
|
}
|
|
374
|
+
export interface CommerceFilterValue {
|
|
375
|
+
id: string;
|
|
376
|
+
label: string;
|
|
377
|
+
count: number;
|
|
378
|
+
/** JSON-encoded ProductFilter input that reproduces this value. */
|
|
379
|
+
input: string;
|
|
380
|
+
}
|
|
381
|
+
export interface CommerceFilter {
|
|
382
|
+
id: string;
|
|
383
|
+
label: string;
|
|
384
|
+
type: 'LIST' | 'PRICE_RANGE' | 'BOOLEAN';
|
|
385
|
+
values: CommerceFilterValue[];
|
|
386
|
+
}
|
|
387
|
+
export interface CommerceProductSearchResult {
|
|
388
|
+
products: CommerceProduct[];
|
|
389
|
+
totalCount: number;
|
|
390
|
+
filters: CommerceFilter[];
|
|
391
|
+
}
|
|
392
|
+
export interface CommercePredictiveSearchResult {
|
|
393
|
+
products: CommerceProduct[];
|
|
394
|
+
queries: string[];
|
|
395
|
+
collections: Array<{
|
|
396
|
+
title: string;
|
|
397
|
+
handle: string;
|
|
398
|
+
}>;
|
|
399
|
+
pages: Array<{
|
|
400
|
+
title: string;
|
|
401
|
+
handle: string;
|
|
402
|
+
}>;
|
|
403
|
+
}
|
|
404
|
+
/** Shopify ProductFilter input — only the shapes the fallback builds. */
|
|
405
|
+
export interface CommerceProductFilterInput {
|
|
406
|
+
available?: boolean;
|
|
407
|
+
price?: {
|
|
408
|
+
min?: number;
|
|
409
|
+
max?: number;
|
|
410
|
+
};
|
|
411
|
+
productType?: string;
|
|
412
|
+
productVendor?: string;
|
|
413
|
+
variantOption?: {
|
|
414
|
+
name: string;
|
|
415
|
+
value: string;
|
|
416
|
+
};
|
|
417
|
+
}
|
|
418
|
+
export interface CommerceSearchParams {
|
|
419
|
+
query: string;
|
|
420
|
+
first?: number;
|
|
421
|
+
filters?: CommerceProductFilterInput[];
|
|
422
|
+
/** SearchSortKeys; descending is expressed with `reverse`, not a key. */
|
|
423
|
+
sortKey?: 'RELEVANCE' | 'PRICE';
|
|
424
|
+
reverse?: boolean;
|
|
425
|
+
}
|
|
426
|
+
export interface CommerceCollectionProductsParams {
|
|
427
|
+
handle: string;
|
|
428
|
+
first?: number;
|
|
429
|
+
filters?: CommerceProductFilterInput[];
|
|
430
|
+
sortKey?: 'BEST_SELLING' | 'COLLECTION_DEFAULT' | 'CREATED' | 'PRICE' | 'RELEVANCE' | 'TITLE';
|
|
431
|
+
reverse?: boolean;
|
|
432
|
+
}
|
|
374
433
|
/**
|
|
375
434
|
* Commerce Service Interface
|
|
376
435
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commerce.types.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/commerce.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commerce.types.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/commerce.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BaseIntegrationService } from "../base-integration.service";
|
|
2
2
|
import { IntegrationResponse } from "../integration.types";
|
|
3
|
-
import { ICommerceService, CommerceProduct, CommerceCollection, CommerceCart, CommerceMenu, CommercePage, CommerceConnection, CommerceProductRecommendation, ProductsParams, CollectionsParams, CartLineInput, CartLineUpdateInput, CartBuyerIdentityInput, CartAttributeInput, CartCreateInput, CommerceCustomer, CommerceCustomerAccessToken } from "./commerce.types";
|
|
3
|
+
import { ICommerceService, CommerceProduct, CommerceCollection, CommerceCart, CommerceMenu, CommercePage, CommerceConnection, CommerceProductRecommendation, ProductsParams, CollectionsParams, CartLineInput, CartLineUpdateInput, CartBuyerIdentityInput, CartAttributeInput, CartCreateInput, CommerceCustomer, CommerceCustomerAccessToken, CommerceProductSearchResult, CommercePredictiveSearchResult, CommerceSearchParams, CommerceCollectionProductsParams } from "./commerce.types";
|
|
4
4
|
/**
|
|
5
5
|
* Shopify Commerce Service
|
|
6
6
|
*
|
|
@@ -19,6 +19,22 @@ export declare class ShopifyCommerceService extends BaseIntegrationService imple
|
|
|
19
19
|
getProductRecommendations(productId: string, count?: number): Promise<IntegrationResponse<CommerceProductRecommendation[]>>;
|
|
20
20
|
getCollections(params?: CollectionsParams): Promise<IntegrationResponse<CommerceConnection<CommerceCollection>>>;
|
|
21
21
|
getCollectionByHandle(handle: string, productsFirst?: number): Promise<IntegrationResponse<CommerceCollection | null>>;
|
|
22
|
+
/**
|
|
23
|
+
* Keyword search via the Storefront `search` query.
|
|
24
|
+
* The shopper's text is passed through untouched as a GraphQL variable.
|
|
25
|
+
*/
|
|
26
|
+
searchProducts(params: CommerceSearchParams): Promise<IntegrationResponse<CommerceProductSearchResult>>;
|
|
27
|
+
/**
|
|
28
|
+
* Collection listing with Shopify-native filters, for the filter fallback.
|
|
29
|
+
* Returns null when the collection handle does not exist.
|
|
30
|
+
*/
|
|
31
|
+
getCollectionProducts(params: CommerceCollectionProductsParams): Promise<IntegrationResponse<(CommerceProductSearchResult & {
|
|
32
|
+
title: string;
|
|
33
|
+
}) | null>>;
|
|
34
|
+
/**
|
|
35
|
+
* Type-ahead suggestions via `predictiveSearch`, for the autocomplete fallback.
|
|
36
|
+
*/
|
|
37
|
+
predictiveSearch(query: string, limit?: number): Promise<IntegrationResponse<CommercePredictiveSearchResult>>;
|
|
22
38
|
getMenu(handle: string): Promise<IntegrationResponse<CommerceMenu | null>>;
|
|
23
39
|
getPage(handle: string): Promise<IntegrationResponse<CommercePage | null>>;
|
|
24
40
|
createCart(input?: CartCreateInput): Promise<IntegrationResponse<CommerceCart>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shopify.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,
|
|
1
|
+
{"version":3,"file":"shopify.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAE3B,2BAA2B,EAC3B,8BAA8B,EAC9B,oBAAoB,EACpB,gCAAgC,EACjC,MAAM,kBAAkB,CAAC;AAwvB1B;;;;;GAKG;AACH,qBACa,sBACX,SAAQ,sBACR,YAAW,gBAAgB;IAE3B,QAAQ,CAAC,IAAI,sBAAsB;IAEnC;;OAEG;YACW,YAAY;IAoCpB,WAAW,CACf,MAAM,GAAE,cAAmB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC;IAY9D,cAAc,CAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAYjD,kBAAkB,CACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAajD,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,SAAI,GACR,OAAO,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,CAAC,CAAC;IAc1D,cAAc,CAClB,MAAM,GAAE,iBAAsB,GAC7B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAYjE,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,aAAa,SAAK,GACjB,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IA2C1D;;;OAGG;IACG,cAAc,CAClB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IAiC5D;;;OAGG;IACG,qBAAqB,CACzB,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,mBAAmB,CAAC,CAAC,2BAA2B,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IA4CzF;;OAEG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,KAAK,SAAK,GACT,OAAO,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,CAAC;IAgCzD,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAc9C,UAAU,CACd,KAAK,CAAC,EAAE,eAAe,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAgCvC,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,SAAS,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EAAE,GACrB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,mBAAmB,EAAE,GAC3B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,sBAAsB,GACpC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,kBAAkB,EAAE,GAC/B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2B7C;;;;;OAKG;IACG,yBAAyB,CAC7B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IAiD5D;;;;;;OAMG;IACG,wBAAwB,CAC5B,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IA6C5D;;OAEG;IACG,WAAW,CACf,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAsBjD;;OAEG;IACG,WAAW;;;;;CAWlB"}
|
|
@@ -123,6 +123,125 @@ const PRODUCTS_QUERY = `
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
`;
|
|
126
|
+
// Lightweight product selection for search/collection fallback results. Kept
|
|
127
|
+
// separate from PRODUCTS_QUERY so the fallback stays cheap on query cost: no
|
|
128
|
+
// media, no size charts, no metafields the search grid does not render.
|
|
129
|
+
const SEARCH_PRODUCT_SELECTION = `
|
|
130
|
+
id
|
|
131
|
+
handle
|
|
132
|
+
title
|
|
133
|
+
description
|
|
134
|
+
descriptionHtml
|
|
135
|
+
vendor
|
|
136
|
+
productType
|
|
137
|
+
tags
|
|
138
|
+
featuredImage { url altText width height }
|
|
139
|
+
images(first: 10) {
|
|
140
|
+
edges { node { url altText width height } }
|
|
141
|
+
}
|
|
142
|
+
options { id name values }
|
|
143
|
+
variants(first: 100) {
|
|
144
|
+
edges {
|
|
145
|
+
node {
|
|
146
|
+
id
|
|
147
|
+
title
|
|
148
|
+
availableForSale
|
|
149
|
+
barcode
|
|
150
|
+
sku
|
|
151
|
+
price { amount currencyCode }
|
|
152
|
+
compareAtPrice { amount currencyCode }
|
|
153
|
+
selectedOptions { name value }
|
|
154
|
+
image { url altText width height }
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
priceRange {
|
|
159
|
+
minVariantPrice { amount currencyCode }
|
|
160
|
+
maxVariantPrice { amount currencyCode }
|
|
161
|
+
}`;
|
|
162
|
+
const FILTER_SELECTION = `
|
|
163
|
+
id
|
|
164
|
+
label
|
|
165
|
+
type
|
|
166
|
+
values { id label count input }`;
|
|
167
|
+
// Keyword search fallback. `$query` is a variable, so the shopper's text is
|
|
168
|
+
// transported as data and never parsed as query syntax.
|
|
169
|
+
const SEARCH_PRODUCTS_QUERY = `
|
|
170
|
+
query SearchProducts(
|
|
171
|
+
$query: String!
|
|
172
|
+
$first: Int!
|
|
173
|
+
$filters: [ProductFilter!]
|
|
174
|
+
$sortKey: SearchSortKeys
|
|
175
|
+
$reverse: Boolean
|
|
176
|
+
) {
|
|
177
|
+
search(
|
|
178
|
+
query: $query
|
|
179
|
+
types: [PRODUCT]
|
|
180
|
+
first: $first
|
|
181
|
+
prefix: LAST
|
|
182
|
+
productFilters: $filters
|
|
183
|
+
sortKey: $sortKey
|
|
184
|
+
reverse: $reverse
|
|
185
|
+
unavailableProducts: LAST
|
|
186
|
+
) {
|
|
187
|
+
totalCount
|
|
188
|
+
productFilters {${FILTER_SELECTION}
|
|
189
|
+
}
|
|
190
|
+
nodes {
|
|
191
|
+
... on Product {${SEARCH_PRODUCT_SELECTION}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
`;
|
|
197
|
+
// Collection listing fallback. Separate from COLLECTION_BY_HANDLE_QUERY, which
|
|
198
|
+
// selects only handles for the collection-title lookup.
|
|
199
|
+
const COLLECTION_PRODUCTS_QUERY = `
|
|
200
|
+
query CollectionProducts(
|
|
201
|
+
$handle: String!
|
|
202
|
+
$first: Int!
|
|
203
|
+
$filters: [ProductFilter!]
|
|
204
|
+
$sortKey: ProductCollectionSortKeys
|
|
205
|
+
$reverse: Boolean
|
|
206
|
+
) {
|
|
207
|
+
collection(handle: $handle) {
|
|
208
|
+
id
|
|
209
|
+
handle
|
|
210
|
+
title
|
|
211
|
+
products(first: $first, filters: $filters, sortKey: $sortKey, reverse: $reverse) {
|
|
212
|
+
filters {${FILTER_SELECTION}
|
|
213
|
+
}
|
|
214
|
+
edges {
|
|
215
|
+
node {${SEARCH_PRODUCT_SELECTION}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
# Ids only, purely to size the result set: the collection connection has
|
|
220
|
+
# no totalCount, and without it the page count would be computed from the
|
|
221
|
+
# fetched slice and under-paginate. Same request, so no extra round trip.
|
|
222
|
+
countWindow: products(first: 250, filters: $filters) {
|
|
223
|
+
edges { node { id } }
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
`;
|
|
228
|
+
// Autocomplete fallback.
|
|
229
|
+
const PREDICTIVE_SEARCH_QUERY = `
|
|
230
|
+
query PredictiveSearch($query: String!, $limit: Int!) {
|
|
231
|
+
predictiveSearch(
|
|
232
|
+
query: $query
|
|
233
|
+
limit: $limit
|
|
234
|
+
types: [PRODUCT, QUERY, COLLECTION, PAGE]
|
|
235
|
+
limitScope: EACH
|
|
236
|
+
) {
|
|
237
|
+
queries { text }
|
|
238
|
+
collections { title handle }
|
|
239
|
+
pages { title handle }
|
|
240
|
+
products {${SEARCH_PRODUCT_SELECTION}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
`;
|
|
126
245
|
const PRODUCT_BY_ID_QUERY = `
|
|
127
246
|
query ProductById($id: ID!) {
|
|
128
247
|
product(id: $id) {
|
|
@@ -707,6 +826,89 @@ let ShopifyCommerceService = class ShopifyCommerceService extends base_integrati
|
|
|
707
826
|
};
|
|
708
827
|
return { success: true, data: collection };
|
|
709
828
|
}
|
|
829
|
+
// Search / filter fallback (used when the search vendor is unavailable)
|
|
830
|
+
/**
|
|
831
|
+
* Keyword search via the Storefront `search` query.
|
|
832
|
+
* The shopper's text is passed through untouched as a GraphQL variable.
|
|
833
|
+
*/
|
|
834
|
+
async searchProducts(params) {
|
|
835
|
+
const response = await this.graphqlQuery(SEARCH_PRODUCTS_QUERY, {
|
|
836
|
+
query: params.query,
|
|
837
|
+
first: params.first ?? 20,
|
|
838
|
+
filters: params.filters,
|
|
839
|
+
sortKey: params.sortKey ?? 'RELEVANCE',
|
|
840
|
+
reverse: params.reverse ?? false,
|
|
841
|
+
});
|
|
842
|
+
if (!response.success || !response.data) {
|
|
843
|
+
return { success: false, error: response.error };
|
|
844
|
+
}
|
|
845
|
+
const search = response.data.search;
|
|
846
|
+
return {
|
|
847
|
+
success: true,
|
|
848
|
+
data: {
|
|
849
|
+
// `nodes` is typed as SearchResultItem; non-product types are filtered
|
|
850
|
+
// out by the inline fragment and arrive as empty objects.
|
|
851
|
+
products: (search?.nodes ?? []).filter((node) => Boolean(node?.handle)),
|
|
852
|
+
totalCount: search?.totalCount ?? 0,
|
|
853
|
+
filters: search?.productFilters ?? [],
|
|
854
|
+
},
|
|
855
|
+
};
|
|
856
|
+
}
|
|
857
|
+
/**
|
|
858
|
+
* Collection listing with Shopify-native filters, for the filter fallback.
|
|
859
|
+
* Returns null when the collection handle does not exist.
|
|
860
|
+
*/
|
|
861
|
+
async getCollectionProducts(params) {
|
|
862
|
+
const response = await this.graphqlQuery(COLLECTION_PRODUCTS_QUERY, {
|
|
863
|
+
handle: params.handle,
|
|
864
|
+
first: params.first ?? 20,
|
|
865
|
+
filters: params.filters,
|
|
866
|
+
sortKey: params.sortKey ?? 'COLLECTION_DEFAULT',
|
|
867
|
+
reverse: params.reverse ?? false,
|
|
868
|
+
});
|
|
869
|
+
if (!response.success || !response.data) {
|
|
870
|
+
return { success: false, error: response.error };
|
|
871
|
+
}
|
|
872
|
+
const collection = response.data.collection;
|
|
873
|
+
if (!collection) {
|
|
874
|
+
return { success: true, data: null };
|
|
875
|
+
}
|
|
876
|
+
const products = collection.products.edges.map((edge) => edge.node);
|
|
877
|
+
return {
|
|
878
|
+
success: true,
|
|
879
|
+
data: {
|
|
880
|
+
title: collection.title,
|
|
881
|
+
products,
|
|
882
|
+
// Real size of the filtered collection, counted in the same request.
|
|
883
|
+
// Saturates at the 250 window; beyond that pagination is capped anyway.
|
|
884
|
+
totalCount: collection.countWindow?.edges.length ?? products.length,
|
|
885
|
+
filters: collection.products.filters ?? [],
|
|
886
|
+
},
|
|
887
|
+
};
|
|
888
|
+
}
|
|
889
|
+
/**
|
|
890
|
+
* Type-ahead suggestions via `predictiveSearch`, for the autocomplete fallback.
|
|
891
|
+
*/
|
|
892
|
+
async predictiveSearch(query, limit = 10) {
|
|
893
|
+
const response = await this.graphqlQuery(PREDICTIVE_SEARCH_QUERY, {
|
|
894
|
+
query,
|
|
895
|
+
// Shopify caps limit at 10.
|
|
896
|
+
limit: Math.min(Math.max(limit, 1), 10),
|
|
897
|
+
});
|
|
898
|
+
if (!response.success || !response.data) {
|
|
899
|
+
return { success: false, error: response.error };
|
|
900
|
+
}
|
|
901
|
+
const result = response.data.predictiveSearch;
|
|
902
|
+
return {
|
|
903
|
+
success: true,
|
|
904
|
+
data: {
|
|
905
|
+
products: result?.products ?? [],
|
|
906
|
+
queries: (result?.queries ?? []).map((q) => q.text),
|
|
907
|
+
collections: result?.collections ?? [],
|
|
908
|
+
pages: result?.pages ?? [],
|
|
909
|
+
},
|
|
910
|
+
};
|
|
911
|
+
}
|
|
710
912
|
// CMS
|
|
711
913
|
async getMenu(handle) {
|
|
712
914
|
const response = await this.graphqlQuery(MENU_QUERY, { handle });
|