@dfx.swiss/react 1.7.0 → 1.8.0-beta.1

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.
@@ -9,6 +9,9 @@ interface SupportChatInterface {
9
9
  loadSupportIssue: (uid: string) => Promise<void>;
10
10
  createSupportIssue: (request: CreateSupportIssue, file?: File) => Promise<string>;
11
11
  submitMessage: (message?: string, files?: File[], replyToMessage?: SupportMessage) => Promise<void>;
12
+ /** Sends a message that previously failed again, in place.
13
+ * Unknown or non-failed ids are a no-op. */
14
+ retryMessage: (messageId: number) => Promise<void>;
12
15
  handleEmojiClick: (messageId: number, emoji: string) => void;
13
16
  loadFileData: (messageId: number) => Promise<void>;
14
17
  setSync: (sync: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"support.context.d.ts","sourceRoot":"","sources":["../../src/contexts/support.context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAmE,MAAM,OAAO,CAAC;AAE3G,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAGhC,UAAU,oBAAoB;IAC5B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,kBAAkB,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClF,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpG,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAID,eAAO,MAAM,qBAAqB,4BAAuC,CAAC;AAE1E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA+OhF"}
1
+ {"version":3,"file":"support.context.d.ts","sourceRoot":"","sources":["../../src/contexts/support.context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAmE,MAAM,OAAO,CAAC;AAE3G,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAShC,UAAU,oBAAoB;IAC5B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,kBAAkB,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClF,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpG;iDAC6C;IAC7C,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAID,eAAO,MAAM,qBAAqB,4BAAuC,CAAC;AAE1E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAuShF"}
@@ -59,22 +59,35 @@ import { createContext, useContext, useEffect, useMemo, useRef, useState } from
59
59
  import { Utils } from '../utils';
60
60
  import { SupportMessageStatus, } from '../definitions/support';
61
61
  import { useSupportChat } from '../hooks/support.hook';
62
+ import { applySupportIssueUpdate, lastSettledMessageId, prepareRetry, settleMessage as settleMessageInList, } from '../support-messages';
62
63
  var SupportChatContext = createContext(undefined);
63
64
  export var useSupportChatContext = function () { return useContext(SupportChatContext); };
64
65
  export function SupportChatContextProvider(props) {
65
66
  var _a = useSupportChat(), getIssues = _a.getIssues, getIssue = _a.getIssue, createIssue = _a.createIssue, createMessage = _a.createMessage, fetchFileData = _a.fetchFileData;
66
67
  var currUnsettledMessageId = useRef(0);
68
+ var supportIssueRef = useRef();
69
+ var isLoadingRef = useRef(false);
70
+ // Ref (not state): the interval callback closes once on [sync]; state would go stale and
71
+ // the overlap guard would never see isSyncing flip to true between ticks.
72
+ var isSyncingRef = useRef(false);
67
73
  var _b = useState([]), tickets = _b[0], setTickets = _b[1];
68
74
  var _c = useState(), supportIssue = _c[0], setSupportIssue = _c[1];
69
75
  var _d = useState(false), isLoading = _d[0], setIsLoading = _d[1];
70
- var _e = useState(false), isSyncing = _e[0], setIsSyncing = _e[1];
71
- var _f = useState(), isError = _f[0], setIsError = _f[1];
72
- var _g = useState(false), sync = _g[0], setSync = _g[1];
76
+ var _e = useState(), isError = _e[0], setIsError = _e[1];
77
+ var _f = useState(false), sync = _f[0], setSync = _f[1];
73
78
  useEffect(function () {
74
- var interval = setTimeout(function () { return sync && syncSupportIssue(); }, 5000);
75
- return function () { return clearInterval(interval); };
79
+ supportIssueRef.current = supportIssue;
80
+ }, [supportIssue]);
81
+ useEffect(function () {
82
+ isLoadingRef.current = isLoading;
83
+ }, [isLoading]);
84
+ useEffect(function () {
85
+ if (!sync)
86
+ return;
87
+ var handle = setInterval(function () { return void syncSupportIssue(); }, 5000);
88
+ return function () { return clearInterval(handle); };
76
89
  // eslint-disable-next-line react-hooks/exhaustive-deps
77
- }, [supportIssue, sync]);
90
+ }, [sync]);
78
91
  function loadTickets() {
79
92
  return __awaiter(this, void 0, void 0, function () {
80
93
  return __generator(this, function (_a) {
@@ -102,17 +115,21 @@ export function SupportChatContextProvider(props) {
102
115
  }
103
116
  function syncSupportIssue() {
104
117
  return __awaiter(this, void 0, void 0, function () {
105
- var fromMessageId;
118
+ var issue, fromMessageId;
106
119
  return __generator(this, function (_a) {
107
- if (!supportIssue || isLoading || isSyncing)
120
+ issue = supportIssueRef.current;
121
+ if (!issue || isLoadingRef.current || isSyncingRef.current)
108
122
  return [2 /*return*/];
109
- setIsSyncing(true);
123
+ fromMessageId = lastSettledMessageId(issue.messages);
124
+ isSyncingRef.current = true;
110
125
  setIsError(undefined);
111
- fromMessageId = supportIssue.messages[supportIssue.messages.length - 1].id;
112
- return [2 /*return*/, getIssue(supportIssue.uid, fromMessageId)
126
+ // undefined -> SupportUrl.getIssue omits the query (full history), not fromMessageId=undefined
127
+ return [2 /*return*/, getIssue(issue.uid, fromMessageId)
113
128
  .then(function (response) { return updateSupportIssue(response); })
114
129
  .catch(function () { return setIsError('Error while syncing messages'); })
115
- .finally(function () { return setIsSyncing(false); })];
130
+ .finally(function () {
131
+ isSyncingRef.current = false;
132
+ })];
116
133
  });
117
134
  });
118
135
  }
@@ -131,18 +148,19 @@ export function SupportChatContextProvider(props) {
131
148
  case 2:
132
149
  dataFile = _a;
133
150
  messageId = getNextUnsettledMessageId();
134
- setSupportIssue(function (supportIssue) {
135
- if (!supportIssue)
136
- return supportIssue;
137
- supportIssue.messages.push({
138
- id: messageId,
139
- created: new Date(),
140
- message: request.message,
141
- fileName: file === null || file === void 0 ? void 0 : file.name,
142
- file: dataFile,
143
- status: SupportMessageStatus.SENT,
144
- });
145
- return __assign({}, supportIssue);
151
+ setSupportIssue(function (prev) {
152
+ if (!prev)
153
+ return prev;
154
+ return __assign(__assign({}, prev), { messages: __spreadArray(__spreadArray([], prev.messages, true), [
155
+ {
156
+ id: messageId,
157
+ created: new Date(),
158
+ message: request.message,
159
+ fileName: file === null || file === void 0 ? void 0 : file.name,
160
+ file: dataFile,
161
+ status: SupportMessageStatus.SENT,
162
+ },
163
+ ], false) });
146
164
  });
147
165
  _b.label = 3;
148
166
  case 3:
@@ -164,7 +182,7 @@ export function SupportChatContextProvider(props) {
164
182
  }
165
183
  function submitMessage(message, files, replyToMessage) {
166
184
  return __awaiter(this, void 0, void 0, function () {
167
- var hasText, hasFiles, modFiles;
185
+ var hasText, hasFiles, issueUid, modFiles;
168
186
  var _this = this;
169
187
  return __generator(this, function (_a) {
170
188
  if (!supportIssue)
@@ -173,6 +191,7 @@ export function SupportChatContextProvider(props) {
173
191
  hasFiles = files && files.length > 0;
174
192
  if (!hasText && !hasFiles)
175
193
  return [2 /*return*/];
194
+ issueUid = supportIssue.uid;
176
195
  modFiles = (files === null || files === void 0 ? void 0 : files.length) !== 1 && hasText ? __spreadArray(__spreadArray([], (files !== null && files !== void 0 ? files : []), true), [undefined], false) : (files !== null && files !== void 0 ? files : []);
177
196
  modFiles.forEach(function (file, index) { return __awaiter(_this, void 0, void 0, function () {
178
197
  var dataFile, _a, messageId, newMessage;
@@ -197,13 +216,12 @@ export function SupportChatContextProvider(props) {
197
216
  status: SupportMessageStatus.SENT,
198
217
  replyTo: index === 0 ? replyToMessage === null || replyToMessage === void 0 ? void 0 : replyToMessage.id : undefined,
199
218
  };
200
- setSupportIssue(function (supportIssue) {
201
- if (!supportIssue)
202
- return supportIssue;
203
- supportIssue.messages.push(newMessage);
204
- return __assign({}, supportIssue);
219
+ setSupportIssue(function (prev) {
220
+ if (!prev)
221
+ return prev;
222
+ return __assign(__assign({}, prev), { messages: __spreadArray(__spreadArray([], prev.messages, true), [newMessage], false) });
205
223
  });
206
- createMessage(supportIssue.uid, {
224
+ createMessage(issueUid, {
207
225
  message: newMessage.message,
208
226
  file: dataFile === null || dataFile === void 0 ? void 0 : dataFile.file,
209
227
  fileName: newMessage.fileName,
@@ -234,49 +252,93 @@ export function SupportChatContextProvider(props) {
234
252
  size: blob.size,
235
253
  url: URL.createObjectURL(blob),
236
254
  };
237
- setSupportIssue(function (supportIssue) {
238
- if (!supportIssue)
239
- return supportIssue;
240
- if (message)
241
- message.file = newFile;
242
- return __assign({}, supportIssue);
255
+ setSupportIssue(function (prev) {
256
+ if (!prev)
257
+ return prev;
258
+ return __assign(__assign({}, prev), { messages: prev.messages.map(function (m) { return (m.id === messageId ? __assign(__assign({}, m), { file: newFile }) : m); }) });
243
259
  });
244
260
  })];
245
261
  });
246
262
  });
247
263
  }
248
- function handleEmojiClick(messageId, emoji, user) {
264
+ function retryMessage(messageId) {
249
265
  var _a;
266
+ return __awaiter(this, void 0, void 0, function () {
267
+ var current, prepared, response, _b;
268
+ return __generator(this, function (_c) {
269
+ switch (_c.label) {
270
+ case 0:
271
+ current = supportIssueRef.current;
272
+ if (!current)
273
+ return [2 /*return*/];
274
+ prepared = prepareRetry(current.messages, messageId);
275
+ if (!prepared.payload)
276
+ return [2 /*return*/];
277
+ supportIssueRef.current = __assign(__assign({}, current), { messages: prepared.messages });
278
+ setSupportIssue(function (prev) {
279
+ if (!prev)
280
+ return prev;
281
+ var next = prepareRetry(prev.messages, messageId);
282
+ return __assign(__assign({}, prev), { messages: next.messages });
283
+ });
284
+ _c.label = 1;
285
+ case 1:
286
+ _c.trys.push([1, 3, , 4]);
287
+ return [4 /*yield*/, createMessage(current.uid, {
288
+ message: prepared.payload.message,
289
+ file: (_a = prepared.payload.file) === null || _a === void 0 ? void 0 : _a.file,
290
+ fileName: prepared.payload.fileName,
291
+ })];
292
+ case 2:
293
+ response = _c.sent();
294
+ settleMessage(messageId, response);
295
+ return [3 /*break*/, 4];
296
+ case 3:
297
+ _b = _c.sent();
298
+ settleMessage(messageId);
299
+ return [3 /*break*/, 4];
300
+ case 4: return [2 /*return*/];
301
+ }
302
+ });
303
+ });
304
+ }
305
+ function handleEmojiClick(messageId, emoji, user) {
250
306
  if (user === void 0) { user = 'Customer'; }
251
- if (!supportIssue)
252
- return;
253
- var messageIndex = supportIssue.messages.findIndex(function (m) { return m.id === messageId; });
254
- if (messageIndex === -1)
255
- return;
256
- var message = supportIssue.messages[messageIndex];
257
- if (!message.reactions)
258
- message.reactions = [];
259
- var reactionIndex = (_a = message.reactions) === null || _a === void 0 ? void 0 : _a.findIndex(function (r) { return r.emoji === emoji; });
260
- if (reactionIndex === -1) {
261
- message.reactions.push({ emoji: emoji, users: [user] });
262
- }
263
- else {
264
- var userIndex = message.reactions[reactionIndex].users.indexOf(user);
265
- if (userIndex === -1) {
266
- message.reactions[reactionIndex].users.push(user);
307
+ setSupportIssue(function (prev) {
308
+ if (!prev)
309
+ return prev;
310
+ var messageIndex = prev.messages.findIndex(function (m) { return m.id === messageId; });
311
+ if (messageIndex === -1)
312
+ return prev;
313
+ var message = prev.messages[messageIndex];
314
+ var reactions = message.reactions ? __spreadArray([], message.reactions, true) : [];
315
+ var reactionIndex = reactions.findIndex(function (r) { return r.emoji === emoji; });
316
+ var nextReactions = reactions;
317
+ if (reactionIndex === -1) {
318
+ nextReactions = __spreadArray(__spreadArray([], reactions, true), [{ emoji: emoji, users: [user] }], false);
267
319
  }
268
320
  else {
269
- message.reactions[reactionIndex].users.splice(userIndex, 1);
270
- if (message.reactions[reactionIndex].users.length === 0) {
271
- message.reactions.splice(reactionIndex, 1);
321
+ var reaction = reactions[reactionIndex];
322
+ var users = __spreadArray([], reaction.users, true);
323
+ var userIndex_1 = users.indexOf(user);
324
+ if (userIndex_1 === -1) {
325
+ nextReactions = __spreadArray(__spreadArray(__spreadArray([], reactions.slice(0, reactionIndex), true), [
326
+ __assign(__assign({}, reaction), { users: __spreadArray(__spreadArray([], users, true), [user], false) })
327
+ ], false), reactions.slice(reactionIndex + 1), true);
328
+ }
329
+ else {
330
+ var nextUsers = users.filter(function (_, i) { return i !== userIndex_1; });
331
+ if (nextUsers.length === 0) {
332
+ nextReactions = reactions.filter(function (_, i) { return i !== reactionIndex; });
333
+ }
334
+ else {
335
+ nextReactions = __spreadArray(__spreadArray(__spreadArray([], reactions.slice(0, reactionIndex), true), [
336
+ __assign(__assign({}, reaction), { users: nextUsers })
337
+ ], false), reactions.slice(reactionIndex + 1), true);
338
+ }
272
339
  }
273
340
  }
274
- }
275
- setSupportIssue(function (supportIssue) {
276
- if (!supportIssue)
277
- return supportIssue;
278
- supportIssue.messages[messageIndex] = message;
279
- return __assign({}, supportIssue);
341
+ return __assign(__assign({}, prev), { messages: prev.messages.map(function (m, i) { return (i === messageIndex ? __assign(__assign({}, m), { reactions: nextReactions }) : m); }) });
280
342
  });
281
343
  // TODO (later): Update message on server side. Feature not yet available.
282
344
  }
@@ -289,6 +351,7 @@ export function SupportChatContextProvider(props) {
289
351
  loadSupportIssue: loadSupportIssue,
290
352
  createSupportIssue: createSupportIssue,
291
353
  submitMessage: submitMessage,
354
+ retryMessage: retryMessage,
292
355
  handleEmojiClick: handleEmojiClick,
293
356
  loadFileData: loadFileData,
294
357
  setSync: setSync,
@@ -297,23 +360,13 @@ export function SupportChatContextProvider(props) {
297
360
  [tickets, supportIssue, isLoading, isError]);
298
361
  // --- HELPER FUNCTIONS --- //
299
362
  function updateSupportIssue(newState) {
300
- setSupportIssue(function (supportIssue) {
301
- if (!supportIssue)
302
- return newState;
303
- supportIssue.messages = __spreadArray(__spreadArray([], supportIssue.messages, true), newState.messages.filter(function (m) { return !supportIssue.messages.some(function (sm) { return sm.id === m.id; }); }), true);
304
- return __assign({}, supportIssue);
305
- });
363
+ setSupportIssue(function (prev) { return applySupportIssueUpdate(prev, newState); });
306
364
  }
307
365
  function settleMessage(messageId, newMessage) {
308
- var idx = supportIssue === null || supportIssue === void 0 ? void 0 : supportIssue.messages.findIndex(function (m) { return m.id === messageId; });
309
- if (!supportIssue || !idx || idx === -1)
310
- return;
311
- var settledMessage = supportIssue.messages[idx];
312
- setSupportIssue(function (supportIssue) {
313
- if (!supportIssue)
314
- return supportIssue;
315
- supportIssue.messages[idx] = __assign(__assign(__assign({}, settledMessage), newMessage), { status: newMessage ? SupportMessageStatus.RECEIVED : SupportMessageStatus.FAILED });
316
- return __assign({}, supportIssue);
366
+ setSupportIssue(function (prev) {
367
+ if (!prev)
368
+ return prev;
369
+ return __assign(__assign({}, prev), { messages: settleMessageInList(prev.messages, messageId, newMessage) });
317
370
  });
318
371
  }
319
372
  function mapFileToDataFile(file) {
@@ -1 +1 @@
1
- {"version":3,"file":"support.context.js","sourceRoot":"","sources":["../../src/contexts/support.context.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"support.context.js","sourceRoot":"","sources":["../../src/contexts/support.context.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAqB,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3G,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAIL,oBAAoB,GAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,YAAY,EACZ,aAAa,IAAI,mBAAmB,GACrC,MAAM,qBAAqB,CAAC;AAmB7B,IAAM,kBAAkB,GAAG,aAAa,CAAuB,SAAgB,CAAC,CAAC;AAEjF,MAAM,CAAC,IAAM,qBAAqB,GAAG,cAAM,OAAA,UAAU,CAAC,kBAAkB,CAAC,EAA9B,CAA8B,CAAC;AAE1E,MAAM,UAAU,0BAA0B,CAAC,KAAwB;IAC3D,IAAA,KAAqE,cAAc,EAAE,EAAnF,SAAS,eAAA,EAAE,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAE,aAAa,mBAAA,EAAE,aAAa,mBAAqB,CAAC;IAE5F,IAAM,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACzC,IAAM,eAAe,GAAG,MAAM,EAAgB,CAAC;IAC/C,IAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,yFAAyF;IACzF,0EAA0E;IAC1E,IAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7B,IAAA,KAAwB,QAAQ,CAAiB,EAAE,CAAC,EAAnD,OAAO,QAAA,EAAE,UAAU,QAAgC,CAAC;IACrD,IAAA,KAAkC,QAAQ,EAAgB,EAAzD,YAAY,QAAA,EAAE,eAAe,QAA4B,CAAC;IAC3D,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAwB,QAAQ,EAAU,EAAzC,OAAO,QAAA,EAAE,UAAU,QAAsB,CAAC;IAC3C,IAAA,KAAkB,QAAQ,CAAC,KAAK,CAAC,EAAhC,IAAI,QAAA,EAAE,OAAO,QAAmB,CAAC;IAExC,SAAS,CAAC;QACR,eAAe,CAAC,OAAO,GAAG,YAAY,CAAC;IACzC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC;QACR,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,SAAS,CAAC;QACR,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAM,MAAM,GAAG,WAAW,CAAC,cAAM,OAAA,KAAK,gBAAgB,EAAE,EAAvB,CAAuB,EAAE,IAAI,CAAC,CAAC;QAChE,OAAO,cAAM,OAAA,aAAa,CAAC,MAAM,CAAC,EAArB,CAAqB,CAAC;QACnC,uDAAuD;IACzD,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,SAAe,WAAW;;;gBACxB,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,UAAU,CAAC,SAAS,CAAC,CAAC;gBAEtB,sBAAO,SAAS,EAAE;yBACf,IAAI,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,CAAC,EAAnB,CAAmB,CAAC;yBACtC,OAAO,CAAC,cAAM,OAAA,YAAY,CAAC,KAAK,CAAC,EAAnB,CAAmB,CAAC,EAAC;;;KACvC;IAED,SAAe,gBAAgB,CAAC,GAAW;;;gBACzC,IAAI,CAAC,GAAG,IAAI,GAAG,MAAK,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,GAAG,CAAA;oBAAE,sBAAO;gBAE9C,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC3B,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,UAAU,CAAC,SAAS,CAAC,CAAC;gBAEtB,sBAAO,QAAQ,CAAC,GAAG,CAAC;yBACjB,IAAI,CAAC,UAAC,QAAQ,IAAK,OAAA,eAAe,cAAM,QAAQ,EAAG,EAAhC,CAAgC,CAAC;yBACpD,OAAO,CAAC,cAAM,OAAA,YAAY,CAAC,KAAK,CAAC,EAAnB,CAAmB,CAAC,EAAC;;;KACvC;IAED,SAAe,gBAAgB;;;;gBACvB,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC;gBACtC,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO;oBAAE,sBAAO;gBAE7D,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAE3D,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;gBAC5B,UAAU,CAAC,SAAS,CAAC,CAAC;gBACtB,+FAA+F;gBAC/F,sBAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC;yBACtC,IAAI,CAAC,UAAC,QAAQ,IAAK,OAAA,kBAAkB,CAAC,QAAQ,CAAC,EAA5B,CAA4B,CAAC;yBAChD,KAAK,CAAC,cAAM,OAAA,UAAU,CAAC,8BAA8B,CAAC,EAA1C,CAA0C,CAAC;yBACvD,OAAO,CAAC;wBACP,YAAY,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC/B,CAAC,CAAC,EAAC;;;KACN;IAED,SAAe,kBAAkB,CAAC,OAA2B,EAAE,IAAW;;;;;;wBACvD,KAAA,IAAI,CAAA;iCAAJ,wBAAI;wBAAK,qBAAM,iBAAiB,CAAC,IAAI,CAAC,EAAA;;wBAA9B,KAAA,CAAC,SAA6B,CAAC,CAAA;;;wBAAlD,QAAQ,KAA0C;wBAClD,SAAS,GAAG,yBAAyB,EAAE,CAAC;wBAE9C,eAAe,CAAC,UAAC,IAAI;4BACnB,IAAI,CAAC,IAAI;gCAAE,OAAO,IAAI,CAAC;4BACvB,6BACK,IAAI,KACP,QAAQ,kCACH,IAAI,CAAC,QAAQ;oCAChB;wCACE,EAAE,EAAE,SAAS;wCACb,OAAO,EAAE,IAAI,IAAI,EAAE;wCACnB,OAAO,EAAE,OAAO,CAAC,OAAO;wCACxB,QAAQ,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI;wCACpB,IAAI,EAAE,QAAQ;wCACd,MAAM,EAAE,oBAAoB,CAAC,IAAI;qCAClC;6CAEH;wBACJ,CAAC,CAAC,CAAC;;;;wBAGa,qBAAM,WAAW,CAAC,OAAO,CAAC,EAAA;;wBAAlC,KAAK,GAAG,SAA0B;wBACxC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;wBACpE,kBAAkB,CAAC,KAAK,CAAC,CAAC;wBAC1B,sBAAO,KAAK,CAAC,GAAG,EAAC;;;wBAEjB,aAAa,CAAC,SAAS,CAAC,CAAC;wBACzB,MAAM,OAAK,CAAC;;;;;KAEf;IAED,SAAe,aAAa,CAAC,OAAgB,EAAE,KAAc,EAAE,cAA+B;;;;;gBAC5F,IAAI,CAAC,YAAY;oBAAE,sBAAO;gBAEpB,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;gBAC3C,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAE3C,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ;oBAAE,sBAAO;gBAE5B,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC;gBAC5B,QAAQ,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,MAAK,CAAC,IAAI,OAAO,CAAC,CAAC,iCAAK,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,UAAE,SAAS,UAAE,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAC;gBAChG,QAAQ,CAAC,OAAO,CAAC,UAAO,IAAsB,EAAE,KAAK;;;;;gCAClC,KAAA,IAAI,CAAA;yCAAJ,wBAAI;gCAAK,qBAAM,iBAAiB,CAAC,IAAI,CAAC,EAAA;;gCAA9B,KAAA,CAAC,SAA6B,CAAC,CAAA;;;gCAAlD,QAAQ,KAA0C;gCAClD,SAAS,GAAG,yBAAyB,EAAE,CAAC;gCAExC,UAAU,GAAmB;oCACjC,EAAE,EAAE,SAAS;oCACb,OAAO,EAAE,KAAK,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oCACvE,IAAI,EAAE,QAAQ;oCACd,QAAQ,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI;oCACpB,OAAO,EAAE,IAAI,IAAI,EAAE;oCACnB,MAAM,EAAE,oBAAoB,CAAC,IAAI;oCACjC,OAAO,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,CAAC,CAAC,CAAC,SAAS;iCACtD,CAAC;gCAEF,eAAe,CAAC,UAAC,IAAI;oCACnB,IAAI,CAAC,IAAI;wCAAE,OAAO,IAAI,CAAC;oCACvB,6BACK,IAAI,KACP,QAAQ,kCAAM,IAAI,CAAC,QAAQ,UAAE,UAAU,aACvC;gCACJ,CAAC,CAAC,CAAC;gCAEH,aAAa,CAAC,QAAQ,EAAE;oCACtB,OAAO,EAAE,UAAU,CAAC,OAAO;oCAC3B,IAAI,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI;oCACpB,QAAQ,EAAE,UAAU,CAAC,QAAQ;iCAC9B,CAAC;qCACC,IAAI,CAAC,UAAC,QAAQ,IAAK,OAAA,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAlC,CAAkC,CAAC;qCACtD,KAAK,CAAC,cAAM,OAAA,aAAa,CAAC,SAAS,CAAC,EAAxB,CAAwB,CAAC,CAAC;;;;qBAC1C,CAAC,CAAC;;;;KACJ;IAED,SAAe,YAAY,CAAC,SAAiB;;;;gBACrC,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,EAAlB,CAAkB,CAAC,CAAC;gBACvE,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAA;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAErF,sBAAO,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAC,WAAW;wBAClE,IAAM,SAAS,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACxD,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;wBAEtE,IAAM,OAAO,GAAG;4BACd,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI;4BAC3B,IAAI,EAAE,WAAW,CAAC,WAAW;4BAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;yBAC/B,CAAC;wBAEF,eAAe,CAAC,UAAC,IAAI;4BACnB,IAAI,CAAC,IAAI;gCAAE,OAAO,IAAI,CAAC;4BACvB,6BACK,IAAI,KACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,uBAAM,CAAC,KAAE,IAAI,EAAE,OAAO,IAAG,CAAC,CAAC,CAAC,CAAC,EAAlD,CAAkD,CAAC,IACtF;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,EAAC;;;KACJ;IAED,SAAe,YAAY,CAAC,SAAiB;;;;;;;wBACrC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;wBACxC,IAAI,CAAC,OAAO;4BAAE,sBAAO;wBAGf,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;wBAC3D,IAAI,CAAC,QAAQ,CAAC,OAAO;4BAAE,sBAAO;wBAE9B,eAAe,CAAC,OAAO,yBAAQ,OAAO,KAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAE,CAAC;wBACtE,eAAe,CAAC,UAAC,IAAI;4BACnB,IAAI,CAAC,IAAI;gCAAE,OAAO,IAAI,CAAC;4BACvB,IAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;4BACpD,6BAAY,IAAI,KAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAG;wBAC9C,CAAC,CAAC,CAAC;;;;wBAGgB,qBAAM,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE;gCAChD,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO;gCACjC,IAAI,EAAE,MAAA,QAAQ,CAAC,OAAO,CAAC,IAAI,0CAAE,IAAI;gCACjC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;6BACpC,CAAC,EAAA;;wBAJI,QAAQ,GAAG,SAIf;wBACF,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;;;;wBAEnC,aAAa,CAAC,SAAS,CAAC,CAAC;;;;;;KAE5B;IAED,SAAS,gBAAgB,CAAC,SAAiB,EAAE,KAAa,EAAE,IAAiB;QAAjB,qBAAA,EAAA,iBAAiB;QAC3E,eAAe,CAAC,UAAC,IAAI;YACnB,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YAEvB,IAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,EAAlB,CAAkB,CAAC,CAAC;YACxE,IAAI,YAAY,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAErC,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,mBAAK,OAAO,CAAC,SAAS,QAAE,CAAC,CAAC,EAAE,CAAC;YAClE,IAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,KAAK,KAAK,EAAjB,CAAiB,CAAC,CAAC;YAEpE,IAAI,aAAa,GAAG,SAAS,CAAC;YAC9B,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE;gBACxB,aAAa,mCAAO,SAAS,UAAE,EAAE,KAAK,OAAA,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,SAAC,CAAC;aAC1D;iBAAM;gBACL,IAAM,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC1C,IAAM,KAAK,qBAAO,QAAQ,CAAC,KAAK,OAAC,CAAC;gBAClC,IAAM,WAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,WAAS,KAAK,CAAC,CAAC,EAAE;oBACpB,aAAa,iDACR,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;8CAC/B,QAAQ,KAAE,KAAK,kCAAM,KAAK,UAAE,IAAI;+BAClC,SAAS,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,OACtC,CAAC;iBACH;qBAAM;oBACL,IAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,WAAS,EAAf,CAAe,CAAC,CAAC;oBAC1D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC1B,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,aAAa,EAAnB,CAAmB,CAAC,CAAC;qBACjE;yBAAM;wBACL,aAAa,iDACR,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;kDAC/B,QAAQ,KAAE,KAAK,EAAE,SAAS;mCAC5B,SAAS,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,OACtC,CAAC;qBACH;iBACF;aACF;YAED,6BACK,IAAI,KACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,uBAAM,CAAC,KAAE,SAAS,EAAE,aAAa,IAAG,CAAC,CAAC,CAAC,CAAC,EAA7D,CAA6D,CAAC,IACpG;QACJ,CAAC,CAAC,CAAC;QAEH,0EAA0E;IAC5E,CAAC;IAED,IAAM,OAAO,GAAG,OAAO,CACrB,cAAM,OAAA,CAAC;QACL,OAAO,SAAA;QACP,YAAY,cAAA;QACZ,SAAS,WAAA;QACT,OAAO,SAAA;QACP,WAAW,aAAA;QACX,gBAAgB,kBAAA;QAChB,kBAAkB,oBAAA;QAClB,aAAa,eAAA;QACb,YAAY,cAAA;QACZ,gBAAgB,kBAAA;QAChB,YAAY,cAAA;QACZ,OAAO,SAAA;KACR,CAAC,EAbI,CAaJ;IACF,uDAAuD;IACvD,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAC5C,CAAC;IAEF,8BAA8B;IAE9B,SAAS,kBAAkB,CAAC,QAAsB;QAChD,eAAe,CAAC,UAAC,IAAI,IAAK,OAAA,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAvC,CAAuC,CAAC,CAAC;IACrE,CAAC;IAED,SAAS,aAAa,CAAC,SAAiB,EAAE,UAA2B;QACnE,eAAe,CAAC,UAAC,IAAI;YACnB,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,6BACK,IAAI,KACP,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,IACnE;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAe,iBAAiB,CAAC,IAAU;;;;;4BACtB,qBAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAA;;wBAAvC,UAAU,GAAG,SAA0B;wBAC7C,IAAI,CAAC,UAAU;4BAAE,sBAAO;wBAExB,sBAAO;gCACL,IAAI,EAAE,UAAU;gCAChB,IAAI,EAAE,IAAI,CAAC,IAAI;gCACf,IAAI,EAAE,IAAI,CAAC,IAAI;gCACf,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;6BAC/B,EAAC;;;;KACH;IAED,SAAS,yBAAyB;QAChC,OAAO,EAAE,sBAAsB,CAAC,OAAO,CAAC;IAC1C,CAAC;IAED,OAAO,KAAC,kBAAkB,CAAC,QAAQ,aAAC,KAAK,EAAE,OAAO,gBAAG,KAAK,CAAC,QAAQ,IAA+B,CAAC;AACrG,CAAC"}
@@ -2,7 +2,7 @@ import { Buy, BuyPaymentInfo, PdfDocument } from '../definitions/buy';
2
2
  import { Fiat } from '../definitions/fiat';
3
3
  export interface BuyInterface {
4
4
  receiveFor: (info: BuyPaymentInfo) => Promise<Buy>;
5
- invoiceFor: (txId: number) => Promise<PdfDocument>;
5
+ invoiceFor: (txId: number, collectionAccount?: boolean) => Promise<PdfDocument>;
6
6
  confirmFor: (txId: number) => Promise<void>;
7
7
  currencies?: Fiat[];
8
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buy.hook.d.ts","sourceRoot":"","sources":["../../src/hooks/buy.hook.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAU,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC;CACrB;AAED,wBAAgB,MAAM,IAAI,YAAY,CAkCrC"}
1
+ {"version":3,"file":"buy.hook.d.ts","sourceRoot":"","sources":["../../src/hooks/buy.hook.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAU,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAChF,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC;CACrB;AAED,wBAAgB,MAAM,IAAI,YAAY,CAoCrC"}
@@ -47,9 +47,12 @@ export function useBuy() {
47
47
  return [2 /*return*/, call({ url: BuyUrl.receive, method: 'PUT', data: info })];
48
48
  });
49
49
  }); }, [call]);
50
- var invoiceFor = useCallback(function (txId) { return __awaiter(_this, void 0, void 0, function () {
50
+ var invoiceFor = useCallback(function (txId, collectionAccount) { return __awaiter(_this, void 0, void 0, function () {
51
51
  return __generator(this, function (_a) {
52
- return [2 /*return*/, call({ url: BuyUrl.invoice(txId), method: 'PUT' })];
52
+ return [2 /*return*/, call({
53
+ url: collectionAccount ? "".concat(BuyUrl.invoice(txId), "?collectionAccount=true") : BuyUrl.invoice(txId),
54
+ method: 'PUT',
55
+ })];
53
56
  });
54
57
  }); }, [call]);
55
58
  var confirmFor = useCallback(function (txId) { return __awaiter(_this, void 0, void 0, function () {
@@ -1 +1 @@
1
- {"version":3,"file":"buy.hook.js","sourceRoot":"","sources":["../../src/hooks/buy.hook.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAO,MAAM,EAA+B,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AASpC,MAAM,UAAU,MAAM;IAAtB,iBAkCC;IAjCS,IAAA,IAAI,GAAK,MAAM,EAAE,KAAb,CAAc;IAClB,IAAA,UAAU,GAAK,cAAc,EAAE,WAArB,CAAsB;IAExC,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAoB;;YACzB,sBAAO,IAAI,CAAM,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAC;;SACtE,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAY;;YACjB,sBAAO,IAAI,CAAc,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;;SACxE,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAY;;YACjB,sBAAO,IAAI,CAAO,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;;SACjE,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,OAAO,OAAO,CACZ,cAAM,OAAA,CAAC;QACL,UAAU,YAAA;QACV,UAAU,YAAA;QACV,UAAU,YAAA;QACV,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,eAAe,EAAjD,CAAiD,CAAC;KACzF,CAAC,EALI,CAKJ,EACF,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CACjD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"buy.hook.js","sourceRoot":"","sources":["../../src/hooks/buy.hook.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAO,MAAM,EAA+B,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AASpC,MAAM,UAAU,MAAM;IAAtB,iBAoCC;IAnCS,IAAA,IAAI,GAAK,MAAM,EAAE,KAAb,CAAc;IAClB,IAAA,UAAU,GAAK,cAAc,EAAE,WAArB,CAAsB;IAExC,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAoB;;YACzB,sBAAO,IAAI,CAAM,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAC;;SACtE,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAY,EAAE,iBAA2B;;YAC9C,sBAAA,IAAI,CAAc;oBAChB,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,UAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4BAAyB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;oBAChG,MAAM,EAAE,KAAK;iBACd,CAAC,EAAA;;SAAA,EACJ,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,IAAM,UAAU,GAAG,WAAW,CAC5B,UAAO,IAAY;;YACjB,sBAAO,IAAI,CAAO,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;;SACjE,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,OAAO,OAAO,CACZ,cAAM,OAAA,CAAC;QACL,UAAU,YAAA;QACV,UAAU,YAAA;QACV,UAAU,YAAA;QACV,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,eAAe,EAAjD,CAAiD,CAAC;KACzF,CAAC,EALI,CAKJ,EACF,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CACjD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { SupportIssue, SupportMessage } from './definitions/support';
2
+ /** Höchste bestätigte Nachrichten-Kennung, oder undefined wenn es keine gibt.
3
+ * Optimistische Nachrichten tragen negative Platzhalter und zählen nicht. */
4
+ export declare function lastSettledMessageId(messages: SupportMessage[]): number | undefined;
5
+ /** Fügt eingehende Nachrichten hinzu, die noch nicht vorhanden sind.
6
+ * Gibt IMMER ein neues Array zurück und verändert das übergebene nie. */
7
+ export declare function mergeMessages(current: SupportMessage[], incoming: SupportMessage[]): SupportMessage[];
8
+ /** Wendet eine eingehende SupportIssue-Antwort auf den lokalen State an.
9
+ * Kein offenes Ticket → incoming übernehmen.
10
+ * Anderes Ticket (uid) → prev unverändert lassen (veraltete Sync-Antwort verwerfen).
11
+ * Selbes Ticket → Nachrichten mergen, übrige prev-Felder behalten. */
12
+ export declare function applySupportIssueUpdate(prev: SupportIssue | undefined, incoming: SupportIssue): SupportIssue;
13
+ /** Ersetzt die optimistische Nachricht mit der Kennung `tempId`.
14
+ * Mit `settled` -> Status Received und Serverdaten; ohne -> Status Failed.
15
+ * Findet die Nachricht über ihre Kennung, nie über einen Index.
16
+ * Existiert bereits eine andere Nachricht mit `settled.id` (z. B. vom Sync),
17
+ * wird der optimistische Eintrag entfernt statt ersetzt.
18
+ * Gibt IMMER ein neues Array zurück; unbekannte Kennung -> unverändertes neues Array. */
19
+ export declare function settleMessage(messages: SupportMessage[], tempId: number, settled?: SupportMessage): SupportMessage[];
20
+ export type PrepareRetryResult = {
21
+ messages: SupportMessage[];
22
+ /** Snapshot of the failed message to re-send; absent means no-op. */
23
+ payload?: SupportMessage;
24
+ };
25
+ /** Claims a Failed message for retry: sets status to Sent in place.
26
+ * Unknown ids and non-Failed statuses leave the list effectively unchanged (new array, no payload). */
27
+ export declare function prepareRetry(messages: SupportMessage[], messageId: number): PrepareRetryResult;
28
+ //# sourceMappingURL=support-messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support-messages.d.ts","sourceRoot":"","sources":["../src/support-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAE3F;8EAC8E;AAC9E,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,GAAG,SAAS,CAUnF;AAED;0EAC0E;AAC1E,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAErG;AAED;;;uEAGuE;AACvE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,EAAE,QAAQ,EAAE,YAAY,GAAG,YAAY,CAO5G;AAED;;;;;0FAK0F;AAC1F,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,cAAc,EAAE,CAcpH;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,qEAAqE;IACrE,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;wGACwG;AACxG,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,kBAAkB,CAU9F"}
@@ -0,0 +1,78 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
13
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
14
+ if (ar || !(i in from)) {
15
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
16
+ ar[i] = from[i];
17
+ }
18
+ }
19
+ return to.concat(ar || Array.prototype.slice.call(from));
20
+ };
21
+ import { SupportMessageStatus } from './definitions/support';
22
+ /** Höchste bestätigte Nachrichten-Kennung, oder undefined wenn es keine gibt.
23
+ * Optimistische Nachrichten tragen negative Platzhalter und zählen nicht. */
24
+ export function lastSettledMessageId(messages) {
25
+ var highest;
26
+ for (var _i = 0, messages_1 = messages; _i < messages_1.length; _i++) {
27
+ var message = messages_1[_i];
28
+ if (message.id > 0 && (highest === undefined || message.id > highest)) {
29
+ highest = message.id;
30
+ }
31
+ }
32
+ return highest;
33
+ }
34
+ /** Fügt eingehende Nachrichten hinzu, die noch nicht vorhanden sind.
35
+ * Gibt IMMER ein neues Array zurück und verändert das übergebene nie. */
36
+ export function mergeMessages(current, incoming) {
37
+ return __spreadArray(__spreadArray([], current, true), incoming.filter(function (m) { return !current.some(function (c) { return c.id === m.id; }); }), true);
38
+ }
39
+ /** Wendet eine eingehende SupportIssue-Antwort auf den lokalen State an.
40
+ * Kein offenes Ticket → incoming übernehmen.
41
+ * Anderes Ticket (uid) → prev unverändert lassen (veraltete Sync-Antwort verwerfen).
42
+ * Selbes Ticket → Nachrichten mergen, übrige prev-Felder behalten. */
43
+ export function applySupportIssueUpdate(prev, incoming) {
44
+ if (!prev)
45
+ return incoming;
46
+ if (prev.uid !== incoming.uid)
47
+ return prev;
48
+ return __assign(__assign({}, prev), { messages: mergeMessages(prev.messages, incoming.messages) });
49
+ }
50
+ /** Ersetzt die optimistische Nachricht mit der Kennung `tempId`.
51
+ * Mit `settled` -> Status Received und Serverdaten; ohne -> Status Failed.
52
+ * Findet die Nachricht über ihre Kennung, nie über einen Index.
53
+ * Existiert bereits eine andere Nachricht mit `settled.id` (z. B. vom Sync),
54
+ * wird der optimistische Eintrag entfernt statt ersetzt.
55
+ * Gibt IMMER ein neues Array zurück; unbekannte Kennung -> unverändertes neues Array. */
56
+ export function settleMessage(messages, tempId, settled) {
57
+ if (settled && messages.some(function (m) { return m.id !== tempId && m.id === settled.id; })) {
58
+ return messages.filter(function (m) { return m.id !== tempId; });
59
+ }
60
+ return messages.map(function (message) {
61
+ if (message.id !== tempId)
62
+ return message;
63
+ return __assign(__assign(__assign({}, message), settled), { status: settled ? SupportMessageStatus.RECEIVED : SupportMessageStatus.FAILED });
64
+ });
65
+ }
66
+ /** Claims a Failed message for retry: sets status to Sent in place.
67
+ * Unknown ids and non-Failed statuses leave the list effectively unchanged (new array, no payload). */
68
+ export function prepareRetry(messages, messageId) {
69
+ var target = messages.find(function (m) { return m.id === messageId; });
70
+ if (!target || target.status !== SupportMessageStatus.FAILED) {
71
+ return { messages: __spreadArray([], messages, true) };
72
+ }
73
+ return {
74
+ messages: messages.map(function (m) { return (m.id === messageId ? __assign(__assign({}, m), { status: SupportMessageStatus.SENT }) : m); }),
75
+ payload: target,
76
+ };
77
+ }
78
+ //# sourceMappingURL=support-messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support-messages.js","sourceRoot":"","sources":["../src/support-messages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAgC,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE3F;8EAC8E;AAC9E,MAAM,UAAU,oBAAoB,CAAC,QAA0B;IAC7D,IAAI,OAA2B,CAAC;IAEhC,KAAsB,UAAQ,EAAR,qBAAQ,EAAR,sBAAQ,EAAR,IAAQ,EAAE;QAA3B,IAAM,OAAO,iBAAA;QAChB,IAAI,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE;YACrE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC;SACtB;KACF;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;0EAC0E;AAC1E,MAAM,UAAU,aAAa,CAAC,OAAyB,EAAE,QAA0B;IACjF,uCAAW,OAAO,SAAK,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAb,CAAa,CAAC,EAAnC,CAAmC,CAAC,QAAE;AACtF,CAAC;AAED;;;uEAGuE;AACvE,MAAM,UAAU,uBAAuB,CAAC,IAA8B,EAAE,QAAsB;IAC5F,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3B,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAC3C,6BACK,IAAI,KACP,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IACzD;AACJ,CAAC;AAED;;;;;0FAK0F;AAC1F,MAAM,UAAU,aAAa,CAAC,QAA0B,EAAE,MAAc,EAAE,OAAwB;IAChG,IAAI,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,MAAM,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,EAAtC,CAAsC,CAAC,EAAE;QAC3E,OAAO,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,MAAM,EAAf,CAAe,CAAC,CAAC;KAChD;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO;QAC1B,IAAI,OAAO,CAAC,EAAE,KAAK,MAAM;YAAE,OAAO,OAAO,CAAC;QAE1C,sCACK,OAAO,GACP,OAAO,KACV,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,IAC7E;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAQD;wGACwG;AACxG,MAAM,UAAU,YAAY,CAAC,QAA0B,EAAE,SAAiB;IACxE,IAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,SAAS,EAAlB,CAAkB,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,oBAAoB,CAAC,MAAM,EAAE;QAC5D,OAAO,EAAE,QAAQ,oBAAM,QAAQ,OAAC,EAAE,CAAC;KACpC;IAED,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,uBAAM,CAAC,KAAE,MAAM,EAAE,oBAAoB,CAAC,IAAI,IAAG,CAAC,CAAC,CAAC,CAAC,EAAtE,CAAsE,CAAC;QACrG,OAAO,EAAE,MAAM;KAChB,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": false,
3
3
  "name": "@dfx.swiss/react",
4
- "version": "1.7.0",
4
+ "version": "1.8.0-beta.1",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -18,6 +18,7 @@
18
18
  "scripts": {
19
19
  "build": "tsc -b ./tsconfig.build.json",
20
20
  "clean": "rm -rf ./dist/ && rm -rf ./tsconfig.build.tsbuildinfo",
21
+ "test": "jest",
21
22
  "lint": "eslint src --ext .ts,.tsx",
22
23
  "lint:fix": "eslint src --ext .ts,.tsx --fix",
23
24
  "format": "prettier --write src",
@@ -25,10 +26,15 @@
25
26
  "pack": "npm pack"
26
27
  },
27
28
  "dependencies": {
28
- "@dfx.swiss/core": "^0.6.0",
29
+ "@dfx.swiss/core": "^0.7.0-beta.0",
29
30
  "jwt-decode": "^3.1.2",
30
31
  "react": "^18.2.0",
31
32
  "typescript": "^4.9.3"
32
33
  },
33
- "gitHead": "61348bf92d1798e6947823acee710209fbc37146"
34
+ "devDependencies": {
35
+ "@types/jest": "^29.5.14",
36
+ "jest": "^29.7.0",
37
+ "ts-jest": "^29.4.9"
38
+ },
39
+ "gitHead": "21e2ef772d8ef9cb871cf503c82972884c18d626"
34
40
  }