@cimplify/sdk 0.106.1 → 0.106.2
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/advanced.js +20 -20
- package/dist/advanced.mjs +1 -1
- package/dist/{chunk-IWXVKW22.mjs → chunk-4VTFTLH7.mjs} +1 -1
- package/dist/{chunk-LJSQ7TUV.js → chunk-7O2BBPDM.js} +2 -2
- package/dist/{chunk-SFG2LMRD.js → chunk-B7JH5D3J.js} +36 -34
- package/dist/{chunk-QKL5L5IU.js → chunk-BCLGREHS.js} +87 -87
- package/dist/{chunk-ABAK4YVY.mjs → chunk-LJAZ7H4I.mjs} +1 -1
- package/dist/{chunk-YHR6LFQ7.mjs → chunk-T3MXI7JD.mjs} +36 -34
- package/dist/index.js +67 -67
- package/dist/index.mjs +3 -3
- package/dist/react.js +31 -31
- package/dist/react.mjs +2 -2
- package/dist/server.js +7 -7
- package/dist/server.mjs +2 -2
- package/dist/testing/suite.js +23 -23
- package/dist/testing/suite.mjs +3 -3
- package/dist/testing.js +115 -115
- package/dist/testing.mjs +4 -4
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkXREIZ56K_js = require('./chunk-XREIZ56K.js');
|
|
4
|
-
var
|
|
4
|
+
var chunkB7JH5D3J_js = require('./chunk-B7JH5D3J.js');
|
|
5
5
|
var chunkAVXA4F6G_js = require('./chunk-AVXA4F6G.js');
|
|
6
6
|
|
|
7
7
|
// src/types/observability.ts
|
|
@@ -66,23 +66,23 @@ var PurchaseIntentResolver = class {
|
|
|
66
66
|
const requestOptions = { signal: options.signal, timeoutMs: options.requestTimeoutMs };
|
|
67
67
|
this.ensureActive(options.signal);
|
|
68
68
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.CONFIRMING);
|
|
69
|
-
let responseResult = options.initialResponse ?
|
|
69
|
+
let responseResult = options.initialResponse ? chunkB7JH5D3J_js.ok(options.initialResponse) : await this.confirmation.confirm(intentId, request, requestOptions);
|
|
70
70
|
while (responseResult.ok) {
|
|
71
71
|
this.ensureActive(options.signal);
|
|
72
72
|
const response = responseResult.value;
|
|
73
73
|
switch (response.status) {
|
|
74
74
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED:
|
|
75
75
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.COMPLETED, response);
|
|
76
|
-
return
|
|
76
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.COMPLETED, response });
|
|
77
77
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.PAYMENT_FAILED:
|
|
78
78
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.FAILED, response);
|
|
79
|
-
return
|
|
79
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.FAILED, response });
|
|
80
80
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.PAYMENT_OUTCOME_UNKNOWN:
|
|
81
81
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.OUTCOME_UNKNOWN, response);
|
|
82
|
-
return
|
|
82
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.OUTCOME_UNKNOWN, response });
|
|
83
83
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.COLLECTION_PROCESSING:
|
|
84
84
|
if (pollAttempts >= maxPollAttempts) {
|
|
85
|
-
return
|
|
85
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.TIMED_OUT, response });
|
|
86
86
|
}
|
|
87
87
|
pollAttempts += 1;
|
|
88
88
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.POLLING, response);
|
|
@@ -94,16 +94,16 @@ var PurchaseIntentResolver = class {
|
|
|
94
94
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.AUTHORIZATION_REQUIRED: {
|
|
95
95
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.AWAITING_ACTION, response);
|
|
96
96
|
if (!options.onActionRequired || actionSteps >= maxActionSteps) {
|
|
97
|
-
return
|
|
97
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.ACTION_REQUIRED, response });
|
|
98
98
|
}
|
|
99
99
|
actionSteps += 1;
|
|
100
100
|
const decision = await options.onActionRequired(response);
|
|
101
101
|
if (decision === chunkAVXA4F6G_js.PURCHASE_INTENT_ACTION_DECISION.STOP) {
|
|
102
|
-
return
|
|
102
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.ACTION_REQUIRED, response });
|
|
103
103
|
}
|
|
104
104
|
if (typeof decision === "object" && decision.kind === chunkAVXA4F6G_js.PURCHASE_INTENT_ACTION_DECISION.SUBMIT) {
|
|
105
105
|
if (!this.confirmation.submitAction) {
|
|
106
|
-
return
|
|
106
|
+
return chunkB7JH5D3J_js.err(
|
|
107
107
|
new chunkAVXA4F6G_js.CimplifyError(
|
|
108
108
|
chunkAVXA4F6G_js.PURCHASE_INTENT_ERROR_CODE.ACTION_UNSUPPORTED,
|
|
109
109
|
"This confirmation transport cannot submit purchase-intent actions.",
|
|
@@ -120,7 +120,7 @@ var PurchaseIntentResolver = class {
|
|
|
120
120
|
continue;
|
|
121
121
|
}
|
|
122
122
|
if (decision !== chunkAVXA4F6G_js.PURCHASE_INTENT_ACTION_DECISION.CONTINUE) {
|
|
123
|
-
return
|
|
123
|
+
return chunkB7JH5D3J_js.err(
|
|
124
124
|
new chunkAVXA4F6G_js.CimplifyError(
|
|
125
125
|
chunkAVXA4F6G_js.PURCHASE_INTENT_ERROR_CODE.ACTION_UNSUPPORTED,
|
|
126
126
|
"The action callback returned an unsupported decision.",
|
|
@@ -135,12 +135,12 @@ var PurchaseIntentResolver = class {
|
|
|
135
135
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.TERMS_CHANGED: {
|
|
136
136
|
this.notify(options, chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLVE_STATUS.REVIEWING_TERMS, response);
|
|
137
137
|
if (!options.onTermsChanged || termsReviewSteps >= maxTermsReviewSteps) {
|
|
138
|
-
return
|
|
138
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.REVIEW_REQUIRED, response });
|
|
139
139
|
}
|
|
140
140
|
termsReviewSteps += 1;
|
|
141
141
|
const replacementRequest = await options.onTermsChanged(response);
|
|
142
142
|
if (!replacementRequest) {
|
|
143
|
-
return
|
|
143
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.REVIEW_REQUIRED, response });
|
|
144
144
|
}
|
|
145
145
|
request = replacementRequest;
|
|
146
146
|
responseResult = await this.confirmation.confirm(intentId, request, requestOptions);
|
|
@@ -149,7 +149,7 @@ var PurchaseIntentResolver = class {
|
|
|
149
149
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.SELECTION_UNAVAILABLE:
|
|
150
150
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.OFFER_ENDED:
|
|
151
151
|
case chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE:
|
|
152
|
-
return
|
|
152
|
+
return chunkB7JH5D3J_js.ok({ kind: chunkAVXA4F6G_js.PURCHASE_INTENT_RESOLUTION_KIND.REVIEW_REQUIRED, response });
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
155
|
return responseResult;
|
|
@@ -192,7 +192,7 @@ var PurchaseIntentService = class {
|
|
|
192
192
|
this.resolver = new PurchaseIntentResolver({ confirmation: this });
|
|
193
193
|
}
|
|
194
194
|
mint(request, options) {
|
|
195
|
-
return
|
|
195
|
+
return chunkB7JH5D3J_js.safe(
|
|
196
196
|
this.transport.post(PURCHASE_INTENT_ROUTE.DIRECT_COLLECTION, request, {
|
|
197
197
|
idempotencyKey: request.client_intent_key,
|
|
198
198
|
signal: options?.signal,
|
|
@@ -201,7 +201,7 @@ var PurchaseIntentService = class {
|
|
|
201
201
|
);
|
|
202
202
|
}
|
|
203
203
|
get(intentId, options) {
|
|
204
|
-
return
|
|
204
|
+
return chunkB7JH5D3J_js.safe(
|
|
205
205
|
this.transport.get(this.intentPath(intentId), {
|
|
206
206
|
signal: options?.signal,
|
|
207
207
|
timeoutMs: options?.timeoutMs
|
|
@@ -212,7 +212,7 @@ var PurchaseIntentService = class {
|
|
|
212
212
|
const request = {
|
|
213
213
|
expected_intent_revision: expectedRevision
|
|
214
214
|
};
|
|
215
|
-
return
|
|
215
|
+
return chunkB7JH5D3J_js.safe(
|
|
216
216
|
this.transport.post(
|
|
217
217
|
`${this.intentPath(intentId)}/${PURCHASE_INTENT_ROUTE.REFRESH}`,
|
|
218
218
|
request,
|
|
@@ -224,7 +224,7 @@ var PurchaseIntentService = class {
|
|
|
224
224
|
);
|
|
225
225
|
}
|
|
226
226
|
confirm(intentId, request, options) {
|
|
227
|
-
return
|
|
227
|
+
return chunkB7JH5D3J_js.safe(
|
|
228
228
|
this.transport.post(
|
|
229
229
|
`${this.intentPath(intentId)}/${PURCHASE_INTENT_ROUTE.CONFIRM}`,
|
|
230
230
|
request,
|
|
@@ -239,7 +239,7 @@ var PurchaseIntentService = class {
|
|
|
239
239
|
submitAction(intentId, attemptId, request, options) {
|
|
240
240
|
const normalizedAttemptId = attemptId.trim();
|
|
241
241
|
if (!normalizedAttemptId) throw new TypeError("attemptId must not be empty");
|
|
242
|
-
return
|
|
242
|
+
return chunkB7JH5D3J_js.safe(
|
|
243
243
|
this.transport.post(
|
|
244
244
|
`${this.intentPath(intentId)}/${PURCHASE_INTENT_ROUTE.ATTEMPTS}/${encodeURIComponent(normalizedAttemptId)}/${PURCHASE_INTENT_ROUTE.ACTIONS}`,
|
|
245
245
|
request,
|
|
@@ -271,7 +271,7 @@ var HostedPurchaseIntentService = class {
|
|
|
271
271
|
this.resolver = new PurchaseIntentResolver({ confirmation: this });
|
|
272
272
|
}
|
|
273
273
|
prepare(request, options) {
|
|
274
|
-
return
|
|
274
|
+
return chunkB7JH5D3J_js.safe(
|
|
275
275
|
this.transport.post(
|
|
276
276
|
`${this.sessionPath}/${PURCHASE_INTENT_ROUTE.PREPARE}`,
|
|
277
277
|
request,
|
|
@@ -284,7 +284,7 @@ var HostedPurchaseIntentService = class {
|
|
|
284
284
|
);
|
|
285
285
|
}
|
|
286
286
|
confirm(_intentId, request, options) {
|
|
287
|
-
return
|
|
287
|
+
return chunkB7JH5D3J_js.safe(
|
|
288
288
|
this.transport.post(
|
|
289
289
|
`${this.sessionPath}/${PURCHASE_INTENT_ROUTE.CONFIRM}`,
|
|
290
290
|
request,
|
|
@@ -297,7 +297,7 @@ var HostedPurchaseIntentService = class {
|
|
|
297
297
|
);
|
|
298
298
|
}
|
|
299
299
|
replay(options) {
|
|
300
|
-
return
|
|
300
|
+
return chunkB7JH5D3J_js.safe(
|
|
301
301
|
this.transport.get(
|
|
302
302
|
`${this.sessionPath}/${PURCHASE_INTENT_ROUTE.REPLAY}`,
|
|
303
303
|
{
|
|
@@ -310,7 +310,7 @@ var HostedPurchaseIntentService = class {
|
|
|
310
310
|
submitAction(_intentId, attemptId, request, options) {
|
|
311
311
|
const normalized = attemptId.trim();
|
|
312
312
|
if (!normalized) throw new TypeError("attemptId must not be empty");
|
|
313
|
-
return
|
|
313
|
+
return chunkB7JH5D3J_js.safe(
|
|
314
314
|
this.transport.post(
|
|
315
315
|
`${this.sessionPath}/${PURCHASE_INTENT_ROUTE.ATTEMPTS}/${encodeURIComponent(normalized)}/${PURCHASE_INTENT_ROUTE.ACTIONS}`,
|
|
316
316
|
request,
|
|
@@ -336,7 +336,7 @@ var StoreCreditQueries = class {
|
|
|
336
336
|
* currency. Requires a signed-in customer; returns an error otherwise.
|
|
337
337
|
*/
|
|
338
338
|
async balance() {
|
|
339
|
-
return
|
|
339
|
+
return chunkB7JH5D3J_js.safe(this.client.get("/api/v1/store-credit/balance"));
|
|
340
340
|
}
|
|
341
341
|
};
|
|
342
342
|
|
|
@@ -712,7 +712,7 @@ var ActivityService = class {
|
|
|
712
712
|
this.sendEvents([event]);
|
|
713
713
|
}
|
|
714
714
|
async getState() {
|
|
715
|
-
return
|
|
715
|
+
return chunkB7JH5D3J_js.safe(this.client.get("/api/v1/activity/state"));
|
|
716
716
|
}
|
|
717
717
|
async getRecommendations(options) {
|
|
718
718
|
const params = new URLSearchParams();
|
|
@@ -720,10 +720,10 @@ var ActivityService = class {
|
|
|
720
720
|
if (options?.limit) params.set("limit", String(options.limit));
|
|
721
721
|
const query = params.toString();
|
|
722
722
|
const path = query ? `/api/v1/activity/recommendations?${query}` : "/api/v1/activity/recommendations";
|
|
723
|
-
return
|
|
723
|
+
return chunkB7JH5D3J_js.safe(this.client.get(path));
|
|
724
724
|
}
|
|
725
725
|
async dismissMessage(code) {
|
|
726
|
-
return
|
|
726
|
+
return chunkB7JH5D3J_js.safe(
|
|
727
727
|
this.client.post("/api/v1/activity/messages/dismiss", { code })
|
|
728
728
|
);
|
|
729
729
|
}
|
|
@@ -829,16 +829,16 @@ var SubscriptionService = class {
|
|
|
829
829
|
this.client = client;
|
|
830
830
|
}
|
|
831
831
|
async list() {
|
|
832
|
-
return
|
|
832
|
+
return chunkB7JH5D3J_js.safe(this.client.get("/api/v1/subscriptions"));
|
|
833
833
|
}
|
|
834
834
|
async get(id) {
|
|
835
835
|
const encodedId = encodeURIComponent(id);
|
|
836
|
-
return
|
|
836
|
+
return chunkB7JH5D3J_js.safe(this.client.get(`/api/v1/subscriptions/${encodedId}`));
|
|
837
837
|
}
|
|
838
838
|
async cancel(id, reason, opts) {
|
|
839
839
|
const encodedId = encodeURIComponent(id);
|
|
840
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
841
|
-
return
|
|
840
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
841
|
+
return chunkB7JH5D3J_js.safe(
|
|
842
842
|
this.client.post(
|
|
843
843
|
`/api/v1/subscriptions/${encodedId}/cancel`,
|
|
844
844
|
{ reason },
|
|
@@ -848,20 +848,20 @@ var SubscriptionService = class {
|
|
|
848
848
|
}
|
|
849
849
|
async pause(id) {
|
|
850
850
|
const encodedId = encodeURIComponent(id);
|
|
851
|
-
return
|
|
851
|
+
return chunkB7JH5D3J_js.safe(
|
|
852
852
|
this.client.post(`/api/v1/subscriptions/${encodedId}/pause`)
|
|
853
853
|
);
|
|
854
854
|
}
|
|
855
855
|
async resume(id) {
|
|
856
856
|
const encodedId = encodeURIComponent(id);
|
|
857
|
-
return
|
|
857
|
+
return chunkB7JH5D3J_js.safe(
|
|
858
858
|
this.client.post(`/api/v1/subscriptions/${encodedId}/resume`)
|
|
859
859
|
);
|
|
860
860
|
}
|
|
861
861
|
async skipNextRenewal(id, opts) {
|
|
862
862
|
const encodedId = encodeURIComponent(id);
|
|
863
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
864
|
-
return
|
|
863
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
864
|
+
return chunkB7JH5D3J_js.safe(
|
|
865
865
|
this.client.post(
|
|
866
866
|
`/api/v1/subscriptions/${encodedId}/skip`,
|
|
867
867
|
void 0,
|
|
@@ -877,8 +877,8 @@ var UploadService = class {
|
|
|
877
877
|
this.client = client;
|
|
878
878
|
}
|
|
879
879
|
async init(filename, contentType2, sizeBytes, opts) {
|
|
880
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
881
|
-
return
|
|
880
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
881
|
+
return chunkB7JH5D3J_js.safe(
|
|
882
882
|
this.client.post(
|
|
883
883
|
"/api/v1/uploads/init",
|
|
884
884
|
{
|
|
@@ -891,7 +891,7 @@ var UploadService = class {
|
|
|
891
891
|
);
|
|
892
892
|
}
|
|
893
893
|
async confirm(uploadId) {
|
|
894
|
-
return
|
|
894
|
+
return chunkB7JH5D3J_js.safe(
|
|
895
895
|
this.client.post("/api/v1/uploads/confirm", {
|
|
896
896
|
upload_id: uploadId
|
|
897
897
|
})
|
|
@@ -937,7 +937,7 @@ var PlacesService = class {
|
|
|
937
937
|
this.client = client;
|
|
938
938
|
}
|
|
939
939
|
async autocomplete(input, sessionToken) {
|
|
940
|
-
return
|
|
940
|
+
return chunkB7JH5D3J_js.safe(
|
|
941
941
|
this.client.post("/api/v1/places/autocomplete", {
|
|
942
942
|
input,
|
|
943
943
|
sessionToken
|
|
@@ -945,7 +945,7 @@ var PlacesService = class {
|
|
|
945
945
|
);
|
|
946
946
|
}
|
|
947
947
|
async details(placeId, sessionToken) {
|
|
948
|
-
return
|
|
948
|
+
return chunkB7JH5D3J_js.safe(
|
|
949
949
|
this.client.post("/api/v1/places/details", {
|
|
950
950
|
place_id: placeId,
|
|
951
951
|
sessionToken
|
|
@@ -964,7 +964,7 @@ var DeliveryService = class {
|
|
|
964
964
|
params.set("dropoff_lat", String(dropoffLat));
|
|
965
965
|
params.set("dropoff_lng", String(dropoffLng));
|
|
966
966
|
if (country) params.set("country", country);
|
|
967
|
-
return
|
|
967
|
+
return chunkB7JH5D3J_js.safe(this.client.get(`/api/v1/delivery/fee?${params.toString()}`));
|
|
968
968
|
}
|
|
969
969
|
async getOptions(queryOrLatitude, longitude, legacyOptions) {
|
|
970
970
|
const query = typeof queryOrLatitude === "number" ? {
|
|
@@ -978,7 +978,7 @@ var DeliveryService = class {
|
|
|
978
978
|
if (query.country) params.set("country", query.country);
|
|
979
979
|
if (query.currency) params.set("currency", query.currency);
|
|
980
980
|
if (query.orderValue != null) params.set("order_value", String(query.orderValue));
|
|
981
|
-
return
|
|
981
|
+
return chunkB7JH5D3J_js.safe(
|
|
982
982
|
this.client.get(`/api/v1/delivery/options?${params.toString()}`)
|
|
983
983
|
);
|
|
984
984
|
}
|
|
@@ -1086,11 +1086,11 @@ var SupportService = class {
|
|
|
1086
1086
|
this.claimInFlightToken = null;
|
|
1087
1087
|
this.lastClaimedAccessToken = null;
|
|
1088
1088
|
this.claimedName = null;
|
|
1089
|
-
this.client.events.on(
|
|
1089
|
+
this.client.events.on(chunkB7JH5D3J_js.SESSION_CLEARED, () => {
|
|
1090
1090
|
this.lastClaimedAccessToken = null;
|
|
1091
1091
|
this.claimedName = null;
|
|
1092
1092
|
});
|
|
1093
|
-
this.client.events.on(
|
|
1093
|
+
this.client.events.on(chunkB7JH5D3J_js.SESSION_CLAIMED, (event) => {
|
|
1094
1094
|
if (event.customerName) this.claimedName = event.customerName;
|
|
1095
1095
|
});
|
|
1096
1096
|
}
|
|
@@ -1113,7 +1113,7 @@ var SupportService = class {
|
|
|
1113
1113
|
async claimConversation() {
|
|
1114
1114
|
const accessToken = this.client.getAccessToken();
|
|
1115
1115
|
if (!accessToken) {
|
|
1116
|
-
return
|
|
1116
|
+
return chunkB7JH5D3J_js.err(new chunkAVXA4F6G_js.CimplifyError("not_authenticated", "No access token to claim with"));
|
|
1117
1117
|
}
|
|
1118
1118
|
if (this.claimInFlight) {
|
|
1119
1119
|
if (this.claimInFlightToken === accessToken) return this.claimInFlight;
|
|
@@ -1121,12 +1121,12 @@ var SupportService = class {
|
|
|
1121
1121
|
return this.claimConversation();
|
|
1122
1122
|
}
|
|
1123
1123
|
if (this.lastClaimedAccessToken === accessToken) {
|
|
1124
|
-
return
|
|
1124
|
+
return chunkB7JH5D3J_js.err(new chunkAVXA4F6G_js.CimplifyError("already_claimed", "Session already claimed for this token"));
|
|
1125
1125
|
}
|
|
1126
1126
|
const epoch = this.client.getSessionEpoch();
|
|
1127
1127
|
this.claimInFlightToken = accessToken;
|
|
1128
1128
|
this.claimInFlight = (async () => {
|
|
1129
|
-
const result = await
|
|
1129
|
+
const result = await chunkB7JH5D3J_js.safe(
|
|
1130
1130
|
this.client.post(
|
|
1131
1131
|
"/api/v1/support/conversation/claim",
|
|
1132
1132
|
{ access_token: accessToken },
|
|
@@ -1135,7 +1135,7 @@ var SupportService = class {
|
|
|
1135
1135
|
);
|
|
1136
1136
|
if (result.ok) {
|
|
1137
1137
|
if (this.client.getSessionEpoch() !== epoch) {
|
|
1138
|
-
return
|
|
1138
|
+
return chunkB7JH5D3J_js.err(
|
|
1139
1139
|
new chunkAVXA4F6G_js.CimplifyError("session_cleared", "Session was cleared during the claim")
|
|
1140
1140
|
);
|
|
1141
1141
|
}
|
|
@@ -1143,7 +1143,7 @@ var SupportService = class {
|
|
|
1143
1143
|
this.claimedName = result.value.customer_name || null;
|
|
1144
1144
|
this.client.adoptSessionToken(result.value.session_token);
|
|
1145
1145
|
this.client.publishSessionClaimed(this.claimedName);
|
|
1146
|
-
this.client.events.emit(
|
|
1146
|
+
this.client.events.emit(chunkB7JH5D3J_js.SESSION_CLAIMED, {
|
|
1147
1147
|
sessionToken: result.value.session_token,
|
|
1148
1148
|
threadId: result.value.thread.id,
|
|
1149
1149
|
customerName: result.value.customer_name
|
|
@@ -1166,9 +1166,9 @@ var SupportService = class {
|
|
|
1166
1166
|
*/
|
|
1167
1167
|
async claimExternalChats() {
|
|
1168
1168
|
if (!this.client.getAccessToken()) {
|
|
1169
|
-
return
|
|
1169
|
+
return chunkB7JH5D3J_js.err(new chunkAVXA4F6G_js.CimplifyError("not_authenticated", "No access token to claim with"));
|
|
1170
1170
|
}
|
|
1171
|
-
return
|
|
1171
|
+
return chunkB7JH5D3J_js.safe(
|
|
1172
1172
|
(async () => {
|
|
1173
1173
|
const businessId = await this.client.resolveBusinessId();
|
|
1174
1174
|
return this.client.post("/v1/me/chats/external-claims", {
|
|
@@ -1183,26 +1183,26 @@ var SupportService = class {
|
|
|
1183
1183
|
* the inbox with empty threads.
|
|
1184
1184
|
*/
|
|
1185
1185
|
async peekConversation() {
|
|
1186
|
-
const result = await
|
|
1186
|
+
const result = await chunkB7JH5D3J_js.safe(
|
|
1187
1187
|
this.client.get("/api/v1/support/conversation")
|
|
1188
1188
|
);
|
|
1189
1189
|
if (!result.ok) return result;
|
|
1190
|
-
if (!result.value.conversation) return
|
|
1191
|
-
return
|
|
1190
|
+
if (!result.value.conversation) return chunkB7JH5D3J_js.ok(null);
|
|
1191
|
+
return chunkB7JH5D3J_js.ok({
|
|
1192
1192
|
conversation: result.value.conversation,
|
|
1193
1193
|
messages: chatMessagesFromWire(result.value.messages)
|
|
1194
1194
|
});
|
|
1195
1195
|
}
|
|
1196
1196
|
/** Open (or resume) the customer's widget conversation. */
|
|
1197
1197
|
async openConversation(opts) {
|
|
1198
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
1199
|
-
const result = await
|
|
1198
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
1199
|
+
const result = await chunkB7JH5D3J_js.safe(
|
|
1200
1200
|
this.client.post("/api/v1/support/conversation", void 0, {
|
|
1201
1201
|
idempotencyKey
|
|
1202
1202
|
})
|
|
1203
1203
|
);
|
|
1204
1204
|
if (!result.ok) return result;
|
|
1205
|
-
return
|
|
1205
|
+
return chunkB7JH5D3J_js.ok({
|
|
1206
1206
|
conversation: result.value.conversation,
|
|
1207
1207
|
messages: chatMessagesFromWire(result.value.messages)
|
|
1208
1208
|
});
|
|
@@ -1216,8 +1216,8 @@ var SupportService = class {
|
|
|
1216
1216
|
* server resolves it thread-scoped and echoes the quote as `reply_to`.
|
|
1217
1217
|
*/
|
|
1218
1218
|
async sendMessage(content, opts) {
|
|
1219
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
1220
|
-
const result = await
|
|
1219
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
1220
|
+
const result = await chunkB7JH5D3J_js.safe(
|
|
1221
1221
|
this.client.post(
|
|
1222
1222
|
"/api/v1/support/conversation/messages",
|
|
1223
1223
|
{
|
|
@@ -1229,7 +1229,7 @@ var SupportService = class {
|
|
|
1229
1229
|
{ idempotencyKey }
|
|
1230
1230
|
)
|
|
1231
1231
|
);
|
|
1232
|
-
return result.ok ?
|
|
1232
|
+
return result.ok ? chunkB7JH5D3J_js.ok(chatMessageFromWire(result.value.message)) : result;
|
|
1233
1233
|
}
|
|
1234
1234
|
/**
|
|
1235
1235
|
* Poll for messages. `after` pages forward (live updates); `before` pages
|
|
@@ -1244,25 +1244,25 @@ var SupportService = class {
|
|
|
1244
1244
|
if (options.limit) params.set("limit", String(options.limit));
|
|
1245
1245
|
const query = params.toString();
|
|
1246
1246
|
const path = query ? `/api/v1/support/conversation/messages?${query}` : "/api/v1/support/conversation/messages";
|
|
1247
|
-
const result = await
|
|
1248
|
-
return result.ok ?
|
|
1247
|
+
const result = await chunkB7JH5D3J_js.safe(this.client.get(path));
|
|
1248
|
+
return result.ok ? chunkB7JH5D3J_js.ok(chatMessagesFromWire(result.value)) : result;
|
|
1249
1249
|
}
|
|
1250
1250
|
/** React to a message in the active conversation by its `ChatMessage.id`. */
|
|
1251
1251
|
async reactToMessage(messageId, emoji) {
|
|
1252
|
-
const clientId =
|
|
1253
|
-
const result = await
|
|
1252
|
+
const clientId = chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
1253
|
+
const result = await chunkB7JH5D3J_js.safe(
|
|
1254
1254
|
this.client.post(
|
|
1255
1255
|
`/api/v1/support/conversation/messages/${messageId}/reactions`,
|
|
1256
1256
|
{ emoji, client_id: clientId },
|
|
1257
1257
|
{ idempotencyKey: clientId }
|
|
1258
1258
|
)
|
|
1259
1259
|
);
|
|
1260
|
-
return result.ok ?
|
|
1260
|
+
return result.ok ? chunkB7JH5D3J_js.ok(chatMessageFromWire(result.value.message)) : result;
|
|
1261
1261
|
}
|
|
1262
1262
|
/** Ask for a person: flags the thread for the merchant's inbox. */
|
|
1263
1263
|
async requestHuman(opts) {
|
|
1264
|
-
const idempotencyKey = opts?.idempotencyKey ??
|
|
1265
|
-
return
|
|
1264
|
+
const idempotencyKey = opts?.idempotencyKey ?? chunkB7JH5D3J_js.generateIdempotencyKey();
|
|
1265
|
+
return chunkB7JH5D3J_js.safe(
|
|
1266
1266
|
this.client.post(
|
|
1267
1267
|
"/api/v1/support/conversation/handoff",
|
|
1268
1268
|
void 0,
|
|
@@ -1535,7 +1535,7 @@ var CimplifyClient = class {
|
|
|
1535
1535
|
* Sentry, analytics, etc.). The SDK emits but never auto-consumes — the
|
|
1536
1536
|
* consumer decides how to react.
|
|
1537
1537
|
*/
|
|
1538
|
-
this.events =
|
|
1538
|
+
this.events = chunkB7JH5D3J_js.createClientEvents();
|
|
1539
1539
|
this.stopPageViewTracking = null;
|
|
1540
1540
|
this.publicKey = config.publicKey || getEnvPublicKey() || "";
|
|
1541
1541
|
const urls = deriveUrls();
|
|
@@ -1546,7 +1546,7 @@ var CimplifyClient = class {
|
|
|
1546
1546
|
this.maxRetries = config.maxRetries ?? DEFAULT_MAX_RETRIES;
|
|
1547
1547
|
this.retryDelay = config.retryDelay ?? DEFAULT_RETRY_DELAY_MS;
|
|
1548
1548
|
this.hooks = config.hooks ?? {};
|
|
1549
|
-
this.authorizationAdapters = config.authorizationAdapterRegistry ??
|
|
1549
|
+
this.authorizationAdapters = config.authorizationAdapterRegistry ?? chunkB7JH5D3J_js.createDefaultPaymentAuthorizationAdapterRegistry();
|
|
1550
1550
|
this.fetchImpl = (config.fetch ?? globalThis.fetch).bind(globalThis);
|
|
1551
1551
|
this.sessionToken = this.loadSessionToken() ?? this.mintSessionToken();
|
|
1552
1552
|
const persistedSessionSync = this.loadSessionSyncPayload();
|
|
@@ -1615,7 +1615,7 @@ var CimplifyClient = class {
|
|
|
1615
1615
|
newToken: token,
|
|
1616
1616
|
source: SESSION_CHANGE_SOURCE.MANUAL
|
|
1617
1617
|
});
|
|
1618
|
-
this.events.emit(
|
|
1618
|
+
this.events.emit(chunkB7JH5D3J_js.AUTH_TOKEN_CHANGED, { token });
|
|
1619
1619
|
}
|
|
1620
1620
|
/**
|
|
1621
1621
|
* Zero-UI claim: a freshly verified customer identity (OTP verify, silent
|
|
@@ -1659,8 +1659,8 @@ var CimplifyClient = class {
|
|
|
1659
1659
|
newToken: null,
|
|
1660
1660
|
source: SESSION_CHANGE_SOURCE.CLEAR
|
|
1661
1661
|
});
|
|
1662
|
-
this.events.emit(
|
|
1663
|
-
this.events.emit(
|
|
1662
|
+
this.events.emit(chunkB7JH5D3J_js.AUTH_TOKEN_CHANGED, { token: null });
|
|
1663
|
+
this.events.emit(chunkB7JH5D3J_js.SESSION_CLEARED, {});
|
|
1664
1664
|
}
|
|
1665
1665
|
getSessionEpoch() {
|
|
1666
1666
|
return this.sessionEpoch;
|
|
@@ -1713,7 +1713,7 @@ var CimplifyClient = class {
|
|
|
1713
1713
|
if (payload.type === "claimed") {
|
|
1714
1714
|
this.sessionToken = payload.token;
|
|
1715
1715
|
this.sessionEpoch++;
|
|
1716
|
-
this.events.emit(
|
|
1716
|
+
this.events.emit(chunkB7JH5D3J_js.SESSION_CLAIMED, {
|
|
1717
1717
|
sessionToken: payload.token,
|
|
1718
1718
|
threadId: null,
|
|
1719
1719
|
customerName: payload.name ?? ""
|
|
@@ -1723,8 +1723,8 @@ var CimplifyClient = class {
|
|
|
1723
1723
|
this._activity?.resetSession();
|
|
1724
1724
|
this.sessionToken = payload.token;
|
|
1725
1725
|
this.sessionEpoch++;
|
|
1726
|
-
this.events.emit(
|
|
1727
|
-
this.events.emit(
|
|
1726
|
+
this.events.emit(chunkB7JH5D3J_js.AUTH_TOKEN_CHANGED, { token: null });
|
|
1727
|
+
this.events.emit(chunkB7JH5D3J_js.SESSION_CLEARED, {});
|
|
1728
1728
|
}
|
|
1729
1729
|
}
|
|
1730
1730
|
observeSessionSync(payload) {
|
|
@@ -1817,7 +1817,7 @@ var CimplifyClient = class {
|
|
|
1817
1817
|
if (this.accessToken !== null) {
|
|
1818
1818
|
this.setAccessToken(null);
|
|
1819
1819
|
}
|
|
1820
|
-
this.events.emit(
|
|
1820
|
+
this.events.emit(chunkB7JH5D3J_js.SESSION_CLEARED, {});
|
|
1821
1821
|
if (restartPageViewTracking) {
|
|
1822
1822
|
this.stopPageViewTracking = this.activity.autoTrackPageViews();
|
|
1823
1823
|
}
|
|
@@ -2261,19 +2261,19 @@ var CimplifyClient = class {
|
|
|
2261
2261
|
}
|
|
2262
2262
|
get catalogue() {
|
|
2263
2263
|
if (!this._catalogue) {
|
|
2264
|
-
this._catalogue = new
|
|
2264
|
+
this._catalogue = new chunkB7JH5D3J_js.CatalogueQueries(this);
|
|
2265
2265
|
}
|
|
2266
2266
|
return this._catalogue;
|
|
2267
2267
|
}
|
|
2268
2268
|
get cart() {
|
|
2269
2269
|
if (!this._cart) {
|
|
2270
|
-
this._cart = new
|
|
2270
|
+
this._cart = new chunkB7JH5D3J_js.CartOperations(this);
|
|
2271
2271
|
}
|
|
2272
2272
|
return this._cart;
|
|
2273
2273
|
}
|
|
2274
2274
|
get checkout() {
|
|
2275
2275
|
if (!this._checkout) {
|
|
2276
|
-
this._checkout = new
|
|
2276
|
+
this._checkout = new chunkB7JH5D3J_js.CheckoutService(this);
|
|
2277
2277
|
}
|
|
2278
2278
|
return this._checkout;
|
|
2279
2279
|
}
|
|
@@ -2285,7 +2285,7 @@ var CimplifyClient = class {
|
|
|
2285
2285
|
}
|
|
2286
2286
|
get orders() {
|
|
2287
2287
|
if (!this._orders) {
|
|
2288
|
-
this._orders = new
|
|
2288
|
+
this._orders = new chunkB7JH5D3J_js.OrderQueries(this);
|
|
2289
2289
|
}
|
|
2290
2290
|
return this._orders;
|
|
2291
2291
|
}
|
|
@@ -2315,43 +2315,43 @@ var CimplifyClient = class {
|
|
|
2315
2315
|
}
|
|
2316
2316
|
get link() {
|
|
2317
2317
|
if (!this._link) {
|
|
2318
|
-
this._link = new
|
|
2318
|
+
this._link = new chunkB7JH5D3J_js.LinkService(this);
|
|
2319
2319
|
}
|
|
2320
2320
|
return this._link;
|
|
2321
2321
|
}
|
|
2322
2322
|
get auth() {
|
|
2323
2323
|
if (!this._auth) {
|
|
2324
|
-
this._auth = new
|
|
2324
|
+
this._auth = new chunkB7JH5D3J_js.AuthService(this);
|
|
2325
2325
|
}
|
|
2326
2326
|
return this._auth;
|
|
2327
2327
|
}
|
|
2328
2328
|
get business() {
|
|
2329
2329
|
if (!this._business) {
|
|
2330
|
-
this._business = new
|
|
2330
|
+
this._business = new chunkB7JH5D3J_js.BusinessService(this);
|
|
2331
2331
|
}
|
|
2332
2332
|
return this._business;
|
|
2333
2333
|
}
|
|
2334
2334
|
get inventory() {
|
|
2335
2335
|
if (!this._inventory) {
|
|
2336
|
-
this._inventory = new
|
|
2336
|
+
this._inventory = new chunkB7JH5D3J_js.InventoryService(this);
|
|
2337
2337
|
}
|
|
2338
2338
|
return this._inventory;
|
|
2339
2339
|
}
|
|
2340
2340
|
get scheduling() {
|
|
2341
2341
|
if (!this._scheduling) {
|
|
2342
|
-
this._scheduling = new
|
|
2342
|
+
this._scheduling = new chunkB7JH5D3J_js.SchedulingService(this);
|
|
2343
2343
|
}
|
|
2344
2344
|
return this._scheduling;
|
|
2345
2345
|
}
|
|
2346
2346
|
get lite() {
|
|
2347
2347
|
if (!this._lite) {
|
|
2348
|
-
this._lite = new
|
|
2348
|
+
this._lite = new chunkB7JH5D3J_js.LiteService(this);
|
|
2349
2349
|
}
|
|
2350
2350
|
return this._lite;
|
|
2351
2351
|
}
|
|
2352
2352
|
get fx() {
|
|
2353
2353
|
if (!this._fx) {
|
|
2354
|
-
this._fx = new
|
|
2354
|
+
this._fx = new chunkB7JH5D3J_js.FxService(this);
|
|
2355
2355
|
}
|
|
2356
2356
|
return this._fx;
|
|
2357
2357
|
}
|
|
@@ -2386,7 +2386,7 @@ var CimplifyClient = class {
|
|
|
2386
2386
|
if (businessId) {
|
|
2387
2387
|
this.setBusinessId(businessId);
|
|
2388
2388
|
}
|
|
2389
|
-
return
|
|
2389
|
+
return chunkB7JH5D3J_js.createElements(this, businessId ?? this.businessId ?? void 0, options);
|
|
2390
2390
|
}
|
|
2391
2391
|
};
|
|
2392
2392
|
function createCimplifyClient(config = {}) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { messagePreview } from './chunk-U4MW6PYU.mjs';
|
|
2
|
-
import { ok, err, safe, generateIdempotencyKey, SESSION_CLEARED, SESSION_CLAIMED, createClientEvents, createDefaultPaymentAuthorizationAdapterRegistry, AUTH_TOKEN_CHANGED, CatalogueQueries, CartOperations, CheckoutService, OrderQueries, LinkService, AuthService, BusinessService, InventoryService, SchedulingService, LiteService, FxService, createElements } from './chunk-
|
|
2
|
+
import { ok, err, safe, generateIdempotencyKey, SESSION_CLEARED, SESSION_CLAIMED, createClientEvents, createDefaultPaymentAuthorizationAdapterRegistry, AUTH_TOKEN_CHANGED, CatalogueQueries, CartOperations, CheckoutService, OrderQueries, LinkService, AuthService, BusinessService, InventoryService, SchedulingService, LiteService, FxService, createElements } from './chunk-T3MXI7JD.mjs';
|
|
3
3
|
import { PURCHASE_INTENT_RESOLVE_STATUS, PURCHASE_INTENT_CONFIRM_STATUS, PURCHASE_INTENT_RESOLUTION_KIND, PURCHASE_INTENT_ACTION_DECISION, CimplifyError, PURCHASE_INTENT_ERROR_CODE, ErrorCode, IdempotencyMismatchError, enrichError } from './chunk-NJYR6GGM.mjs';
|
|
4
4
|
|
|
5
5
|
// src/types/observability.ts
|