@tesouro/embedded-components-react 0.2.264 → 0.2.267

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.
Files changed (60) hide show
  1. package/README.md +8 -6
  2. package/dist/experimental/WidgetSuite.d.ts +93 -2
  3. package/dist/experimental/WidgetSuite.js +5 -5
  4. package/dist/experimental/index.d.ts +93 -2
  5. package/dist/experimental/index.js +5 -5
  6. package/dist/index.css +45 -9
  7. package/dist/index.d.ts +29 -9
  8. package/dist/index.js +2 -2
  9. package/dist/lib/AcceptDisclosuresWidget.d.ts +17 -5
  10. package/dist/lib/AcceptDisclosuresWidget.js +1 -1
  11. package/dist/lib/BillPayWidget.js +1 -1
  12. package/dist/lib/WidgetProvider.d.ts +12 -4
  13. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/data-access/dist/index2.js +3 -3
  14. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/feature/dist/index3.js +1 -1
  15. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/feature/dist/index4.js +36 -34
  16. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/ui/dist/index.js +2 -2
  17. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/ui/dist/{index3.js → lib/AcceptDisclosuresWidget/AcceptDisclosuresWidget.js} +3 -3
  18. package/dist/libs/tesouro-embedded-components-react/accept-disclosures-widget/ui/dist/{index2.js → lib/AcceptDisclosuresWidget/labels.js} +1 -1
  19. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index.js +6 -6
  20. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index10.js +99 -7
  21. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index11.js +7 -97
  22. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index12.js +99 -4
  23. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index13.js +4 -4
  24. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index14.js +2 -41
  25. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index15.js +43 -1
  26. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index16.js +1 -50
  27. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index17.js +48 -6
  28. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index18.js +9 -5
  29. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index19.js +8 -91
  30. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index2.js +6 -2
  31. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index20.js +7 -3
  32. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index21.js +100 -6
  33. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index22.js +3 -9
  34. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index23.js +6 -83
  35. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index24.js +9 -3
  36. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index25.js +83 -6
  37. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index26.js +2 -111
  38. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index27.js +8 -1
  39. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index28.js +103 -16
  40. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index29.js +1 -0
  41. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index30.js +25 -0
  42. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index6.js +37 -27
  43. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index7.js +15 -116
  44. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index8.js +126 -31
  45. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index9.js +32 -69
  46. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index12.js +0 -3
  47. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index13.js +34 -69
  48. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index15.js +4 -0
  49. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index16.js +261 -181
  50. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index28.js +32 -33
  51. package/dist/libs/tesouro-embedded-components-react/bill-pay-widget/ui/dist/index7.js +2 -2
  52. package/dist/libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js +1 -1
  53. package/dist/libs/tesouro-embedded-components-react/widget-suite/feature/dist/index.js +5 -5
  54. package/dist/libs/tesouro-embedded-components-react/widget-suite/feature/dist/index3.js +4 -15
  55. package/dist/libs/tesouro-embedded-components-react/widget-suite/feature/dist/index4.js +26 -91
  56. package/dist/libs/tesouro-embedded-components-react/widget-suite/feature/dist/index5.js +87 -74
  57. package/dist/libs/tesouro-embedded-components-react/widget-suite/feature/dist/index6.js +142 -0
  58. package/dist/libs/tesouro-embedded-components-react/widget-suite/ui/dist/index2.js +1 -0
  59. package/dist/libs/tesouro-embedded-components-react/widget-suite/ui/dist/index3.js +49 -33
  60. package/package.json +1 -1
@@ -1,50 +1 @@
1
- //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index16.js
2
- var e = /* @__PURE__ */ new Set([
3
- "new",
4
- "approve_in_progress",
5
- "waiting_to_be_paid",
6
- "partially_paid"
7
- ]);
8
- function t(e, t) {
9
- let n = /* @__PURE__ */ new Date(`${e.slice(0, 10)}T00:00:00Z`), r = Date.UTC(t.getUTCFullYear(), t.getUTCMonth(), t.getUTCDate());
10
- return n.getTime() < r;
11
- }
12
- function n(n, r, i = /* @__PURE__ */ new Date()) {
13
- if (e.has(n) && r && t(r, i)) return {
14
- status: "overdue",
15
- tone: "danger"
16
- };
17
- switch (n) {
18
- case "draft": return {
19
- status: "draft",
20
- tone: "neutral"
21
- };
22
- case "new":
23
- case "approve_in_progress": return {
24
- status: "pending_approval",
25
- tone: "warning"
26
- };
27
- case "waiting_to_be_paid": return {
28
- status: "ready_to_pay",
29
- tone: "info"
30
- };
31
- case "partially_paid": return {
32
- status: "partially_paid",
33
- tone: "success"
34
- };
35
- case "paid": return {
36
- status: "paid",
37
- tone: "success"
38
- };
39
- case "canceled": return {
40
- status: "canceled",
41
- tone: "neutral"
42
- };
43
- case "rejected": return {
44
- status: "rejected",
45
- tone: "danger"
46
- };
47
- }
48
- }
49
- //#endregion
50
- export { n as derivePayableStatus };
1
+ import "./index15.js";
@@ -1,8 +1,50 @@
1
1
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index17.js
2
- var e = {
3
- emptyHeading: "Add your first bill",
4
- nonEmptyHeading: "Add a bill",
5
- createButton: "Add bill"
6
- };
2
+ var e = /* @__PURE__ */ new Set([
3
+ "new",
4
+ "approve_in_progress",
5
+ "waiting_to_be_paid",
6
+ "partially_paid"
7
+ ]);
8
+ function t(e, t) {
9
+ let n = /* @__PURE__ */ new Date(`${e.slice(0, 10)}T00:00:00Z`), r = Date.UTC(t.getUTCFullYear(), t.getUTCMonth(), t.getUTCDate());
10
+ return n.getTime() < r;
11
+ }
12
+ function n(n, r, i = /* @__PURE__ */ new Date()) {
13
+ if (e.has(n) && r && t(r, i)) return {
14
+ status: "overdue",
15
+ tone: "danger"
16
+ };
17
+ switch (n) {
18
+ case "draft": return {
19
+ status: "draft",
20
+ tone: "neutral"
21
+ };
22
+ case "new":
23
+ case "approve_in_progress": return {
24
+ status: "pending_approval",
25
+ tone: "warning"
26
+ };
27
+ case "waiting_to_be_paid": return {
28
+ status: "ready_to_pay",
29
+ tone: "info"
30
+ };
31
+ case "partially_paid": return {
32
+ status: "partially_paid",
33
+ tone: "success"
34
+ };
35
+ case "paid": return {
36
+ status: "paid",
37
+ tone: "success"
38
+ };
39
+ case "canceled": return {
40
+ status: "canceled",
41
+ tone: "neutral"
42
+ };
43
+ case "rejected": return {
44
+ status: "rejected",
45
+ tone: "danger"
46
+ };
47
+ }
48
+ }
7
49
  //#endregion
8
- export { e as BILLS_TAB_LABELS_EN };
50
+ export { n as derivePayableStatus };
@@ -1,7 +1,11 @@
1
1
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index18.js
2
- var e = {
3
- root: "bill-pay-bills-tab",
4
- uploadTray: "bill-pay-upload-tray"
5
- };
2
+ async function e(e) {
3
+ if (!e.trim()) return !1;
4
+ try {
5
+ return await navigator.clipboard.writeText(e), !0;
6
+ } catch {
7
+ return !1;
8
+ }
9
+ }
6
10
  //#endregion
7
- export { e as billsTabTestIds };
11
+ export { e as copyTextToClipboard };
@@ -1,93 +1,10 @@
1
- "use client";
2
- "use client";
3
- "use client";
4
- "use client";
5
- import { hasAnyScope as e } from "../../../shared/data-access/dist/lib/hasAnyScope.js";
6
- import { Scope as t } from "../../../shared/data-access/dist/lib/scopes.js";
7
- import "../../../shared/data-access/dist/index.js";
8
- import { formatCalendarDate as n } from "../../../shared/util/dist/lib/formatCalendarDate.js";
9
- import { formatMoneyExact as r } from "../../../shared/util/dist/lib/formatMoneyExact.js";
10
- import { useWidgetConfig as i } from "../../../shared/feature/dist/lib/WidgetProvider/hooks.js";
11
- import "../../../shared/feature/dist/index.js";
12
- import { usePayablesQuery as a } from "../../data-access/dist/index10.js";
13
- import "../../data-access/dist/index.js";
14
- import { AddBillDialog as o } from "../../ui/dist/index10.js";
15
- import { BillsScreen as s } from "../../ui/dist/index38.js";
16
- import "../../ui/dist/index.js";
17
- import { BillCreateDialog as c } from "./index11.js";
18
- import "./index12.js";
19
- import { derivePayableStatus as l } from "./index16.js";
20
- import { BILLS_TAB_LABELS_EN as u } from "./index17.js";
21
- import { billsTabTestIds as d } from "./index18.js";
22
- import { useEffect as f, useState as p } from "react";
23
- import { jsx as m, jsxs as h } from "react/jsx-runtime";
24
1
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index19.js
25
- var g = 10;
26
- function _({ labels: _, onEnqueueFiles: v, openPayableId: y, onOpenPayableHandled: b }) {
27
- let x = {
28
- ...u,
29
- ..._
30
- }, [S, C] = p(!1), [w, T] = p(), [E, D] = p(!1), [O, k] = p([]), [A, j] = p(g), [M, N] = p(), { initResponse: P } = i(), F = e(P?.scopes, [t.PayableReadOrg]), I = e(P?.scopes, [t.PayableWriteOrg]), L = !P || F, R = !P || I, z = a({
31
- limit: A,
32
- pagination_token: M,
33
- enabled: L
34
- }), B = (z.data?.data ?? []).map((e) => {
35
- let t = l(e.status, e.due_date);
36
- return {
37
- vendorLabel: e.counterpart_raw_data?.name ?? "",
38
- dueDateLabel: n(e.due_date),
39
- amountLabel: r((e.total_amount ?? 0) / 100, { currencyCode: e.currency ?? "USD" }),
40
- status: t.status,
41
- statusTone: t.tone,
42
- onOpen: () => {
43
- T(e.id), D(!0);
44
- }
45
- };
46
- }), V = () => {
47
- C(!1), T(void 0), D(!0);
48
- }, H = (e) => {
49
- C(!1), v?.(e);
50
- };
51
- return f(() => {
52
- y && (T(y), D(!0), b?.());
53
- }, [b, y]), /* @__PURE__ */ h("div", {
54
- "data-testid": d.root,
55
- children: [
56
- /* @__PURE__ */ m(s, {
57
- rows: B,
58
- isLoading: z.isLoading || !P,
59
- isError: z.isError,
60
- onRetry: () => z.refetch(),
61
- sorting: O,
62
- onSortingChange: k,
63
- pageSize: A,
64
- onPageSizeChange: j,
65
- hasNextPage: !!z.data?.next_pagination_token,
66
- hasPrevPage: !!z.data?.prev_pagination_token,
67
- onNextPage: () => N(z.data?.next_pagination_token),
68
- onPrevPage: () => N(z.data?.prev_pagination_token),
69
- onCreateClick: R ? () => C(!0) : void 0,
70
- onEnterManually: R ? V : void 0,
71
- onFilesSelected: R ? H : void 0,
72
- labels: {
73
- createButton: x.createButton,
74
- addBill: { heading: x.emptyHeading }
75
- }
76
- }),
77
- R ? /* @__PURE__ */ m(o, {
78
- open: S,
79
- onOpenChange: C,
80
- onFilesSelected: H,
81
- onEnterManually: V,
82
- labels: { heading: B.length ? x.nonEmptyHeading : x.emptyHeading }
83
- }) : null,
84
- E ? /* @__PURE__ */ m(c, {
85
- open: E,
86
- onOpenChange: D,
87
- payableId: w
88
- }) : null
89
- ]
90
- });
91
- }
2
+ var e = {
3
+ emptyHeading: "Add your first bill",
4
+ nonEmptyHeading: "Add a bill",
5
+ createButton: "Add bill",
6
+ emailCopiedToast: "Email address copied to clipboard",
7
+ emailCopyFailedToast: "Could not copy the email address"
8
+ };
92
9
  //#endregion
93
- export { _ as BillsTab, _ as default };
10
+ export { e as BILLS_TAB_LABELS_EN };
@@ -6,7 +6,11 @@ var e = {
6
6
  saveFailed: "We could not save this bill. Try again.",
7
7
  finalizeFailed: "We could not submit this bill. Try again.",
8
8
  draftSaved: "Bill saved as a draft.",
9
- billFinalized: "Bill submitted for approval."
9
+ billFinalized: "Bill submitted for approval.",
10
+ unreadableMoney: "Enter a number, like 285.00.",
11
+ unusableQuantity: "Enter a quantity greater than 0.",
12
+ lineItemsNeedAttention: "Check the highlighted line items before saving.",
13
+ totalsNeedAttention: "Enter discount, tax, and total as numbers, like 285.00."
10
14
  }, t = {
11
15
  achMethod: "via ACH bank transfer",
12
16
  noMethod: "No payment method on file",
@@ -19,7 +23,7 @@ var e = {
19
23
  attachFailed: "We could not attach that file. Try again.",
20
24
  saveBeforeAttaching: "Save this bill before attaching a document."
21
25
  }, r = {
22
- newTitle: "Add bill",
26
+ newTitle: "New bill",
23
27
  extractedTitle: (e) => `Bill from ${e}`,
24
28
  discardConfirm: "Discard your changes to this bill?"
25
29
  }, i = {
@@ -1,3 +1,7 @@
1
- import "./index17.js";
2
- import "./index18.js";
3
- import "./index19.js";
1
+ //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index20.js
2
+ var e = {
3
+ root: "bill-pay-bills-tab",
4
+ uploadTray: "bill-pay-upload-tray"
5
+ };
6
+ //#endregion
7
+ export { e as billsTabTestIds };
@@ -1,8 +1,102 @@
1
+ "use client";
2
+ "use client";
3
+ "use client";
4
+ "use client";
5
+ import { toast as e } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
6
+ import { hasAnyScope as t } from "../../../shared/data-access/dist/lib/hasAnyScope.js";
7
+ import { Scope as n } from "../../../shared/data-access/dist/lib/scopes.js";
8
+ import "../../../shared/data-access/dist/index.js";
9
+ import "../../../shared/ui/dist/index.js";
10
+ import { formatCalendarDate as r } from "../../../shared/util/dist/lib/formatCalendarDate.js";
11
+ import { formatMoneyExact as i } from "../../../shared/util/dist/lib/formatMoneyExact.js";
12
+ import { useWidgetConfig as a } from "../../../shared/feature/dist/lib/WidgetProvider/hooks.js";
13
+ import "../../../shared/feature/dist/index.js";
14
+ import { usePayablesQuery as o } from "../../data-access/dist/index10.js";
15
+ import "../../data-access/dist/index.js";
16
+ import { AddBillDialog as s } from "../../ui/dist/index10.js";
17
+ import { BillsScreen as c } from "../../ui/dist/index38.js";
18
+ import "../../ui/dist/index.js";
19
+ import { BillCreateDialog as l } from "./index12.js";
20
+ import "./index13.js";
21
+ import { derivePayableStatus as u } from "./index17.js";
22
+ import { BILLS_TAB_LABELS_EN as d } from "./index19.js";
23
+ import { billsTabTestIds as f } from "./index20.js";
24
+ import { copyTextToClipboard as p } from "./index18.js";
25
+ import { useEffect as m, useState as h } from "react";
26
+ import { jsx as g, jsxs as _ } from "react/jsx-runtime";
1
27
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index21.js
2
- var e = (e) => [
3
- "bill-pay",
4
- "upload-queue",
5
- e ?? ""
6
- ];
28
+ var v = 10, y = "bills@business-banking.app";
29
+ function b({ labels: b, onEnqueueFiles: x, openPayableId: S, onOpenPayableHandled: C }) {
30
+ let w = {
31
+ ...d,
32
+ ...b
33
+ }, [T, E] = h(!1), [D, O] = h(), [k, A] = h(!1), [j, M] = h([]), [N, P] = h(v), [F, I] = h(), { initResponse: L } = a(), R = t(L?.scopes, [n.PayableReadOrg]), z = t(L?.scopes, [n.PayableWriteOrg]), B = !L || R, V = !L || z, H = o({
34
+ limit: N,
35
+ pagination_token: F,
36
+ enabled: B
37
+ }), U = (H.data?.data ?? []).map((e) => {
38
+ let t = u(e.status, e.due_date);
39
+ return {
40
+ vendorLabel: e.counterpart_raw_data?.name ?? "",
41
+ dueDateLabel: r(e.due_date),
42
+ amountLabel: i((e.total_amount ?? 0) / 100, { currencyCode: e.currency ?? "USD" }),
43
+ status: t.status,
44
+ statusTone: t.tone,
45
+ onOpen: () => {
46
+ O(e.id), A(!0);
47
+ }
48
+ };
49
+ }), W = () => {
50
+ E(!1), O(void 0), A(!0);
51
+ }, G = (e) => {
52
+ E(!1), x?.(e);
53
+ }, K = async () => {
54
+ await p(y) ? e.success(w.emailCopiedToast) : e.error(w.emailCopyFailedToast);
55
+ };
56
+ return m(() => {
57
+ S && (O(S), A(!0), C?.());
58
+ }, [C, S]), /* @__PURE__ */ _("div", {
59
+ "data-testid": f.root,
60
+ children: [
61
+ /* @__PURE__ */ g(c, {
62
+ rows: U,
63
+ isLoading: H.isLoading || !L,
64
+ isError: H.isError,
65
+ onRetry: () => H.refetch(),
66
+ sorting: j,
67
+ onSortingChange: M,
68
+ pageSize: N,
69
+ onPageSizeChange: P,
70
+ hasNextPage: !!H.data?.next_pagination_token,
71
+ hasPrevPage: !!H.data?.prev_pagination_token,
72
+ onNextPage: () => I(H.data?.next_pagination_token),
73
+ onPrevPage: () => I(H.data?.prev_pagination_token),
74
+ onCreateClick: V ? () => E(!0) : void 0,
75
+ onEnterManually: V ? W : void 0,
76
+ onFilesSelected: V ? G : void 0,
77
+ emailAddress: y,
78
+ onCopyEmail: K,
79
+ labels: {
80
+ createButton: w.createButton,
81
+ addBill: { heading: w.emptyHeading }
82
+ }
83
+ }),
84
+ V ? /* @__PURE__ */ g(s, {
85
+ open: T,
86
+ onOpenChange: E,
87
+ onFilesSelected: G,
88
+ onEnterManually: W,
89
+ emailAddress: y,
90
+ onCopyEmail: K,
91
+ labels: { heading: U.length ? w.nonEmptyHeading : w.emptyHeading }
92
+ }) : null,
93
+ k ? /* @__PURE__ */ g(l, {
94
+ open: k,
95
+ onOpenChange: A,
96
+ payableId: D
97
+ }) : null
98
+ ]
99
+ });
100
+ }
7
101
  //#endregion
8
- export { e as billPayUploadQueueKey };
102
+ export { b as BillsTab, b as default };
@@ -1,9 +1,3 @@
1
- //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index22.js
2
- var e = {
3
- uploadingSummary: (e) => `Uploading and scanning ${e} ${e === 1 ? "file" : "files"}`,
4
- completeSummary: (e) => `${e} ${e === 1 ? "upload" : "uploads"} complete`,
5
- readyCaption: (e) => `${e} new ${e === 1 ? "bill" : "bills"} ready`,
6
- failedCaption: (e) => `${e} failed to upload`
7
- };
8
- //#endregion
9
- export { e as BILL_UPLOAD_QUEUE_LABELS_EN };
1
+ import "./index19.js";
2
+ import "./index20.js";
3
+ import "./index21.js";
@@ -1,85 +1,8 @@
1
- "use client";
2
- "use client";
3
- "use client";
4
- "use client";
5
- import { useEmbedApi as e } from "../../../shared/data-access/dist/lib/EmbedApiContext.js";
6
- import { useUploadPayableFromFileMutation as t } from "../../data-access/dist/index7.js";
7
- import { usePayableOcrQueries as n } from "../../data-access/dist/index9.js";
8
- import "../../data-access/dist/index.js";
9
- import { billPayUploadQueueKey as r } from "./index21.js";
10
- import { BILL_UPLOAD_QUEUE_LABELS_EN as i } from "./index22.js";
11
- import { useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
12
- import { useQuery as l, useQueryClient as u } from "@tanstack/react-query";
13
1
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index23.js
14
- function d({ onOpenBill: d, labels: f } = {}) {
15
- let p = {
16
- ...i,
17
- ...f
18
- }, { organizationId: m } = e(), h = u(), g = s(() => r(m), [m]), _ = t(), [v, y] = c(!1), { data: b = [] } = l({
19
- queryKey: g,
20
- queryFn: () => h.getQueryData(g) ?? [],
21
- staleTime: Infinity,
22
- gcTime: Infinity,
23
- initialData: []
24
- }), x = a((e, t) => {
25
- h.setQueryData(g, (n) => (n ?? []).map((n) => n.localId === e ? {
26
- ...n,
27
- ...t
28
- } : n));
29
- }, [h, g]), S = a((e) => {
30
- y(!1);
31
- for (let t of e) {
32
- let e = crypto.randomUUID();
33
- h.setQueryData(g, (n) => [...n ?? [], {
34
- localId: e,
35
- fileName: t.name,
36
- status: "uploading"
37
- }]), _.mutateAsync({ file: t }).then((t) => x(e, { payableId: t?.id })).catch(() => x(e, { status: "failed" }));
38
- }
39
- }, [
40
- x,
41
- h,
42
- g,
43
- _
44
- ]), C = n({ payableIds: b.filter((e) => e.status === "uploading" && e.payableId).map((e) => e.payableId) });
45
- o(() => {
46
- for (let { payableId: e, ocrStatus: t, isError: n } of C) {
47
- let r = b.find((t) => t.payableId === e && t.status === "uploading");
48
- r && (t === "success" ? x(r.localId, { status: "ready" }) : (n || t === "error" || t === "canceled") && x(r.localId, { status: "failed" }));
49
- }
50
- }, [
51
- b,
52
- C,
53
- x
54
- ]);
55
- let w = b.filter((e) => e.status === "uploading"), T = b.filter((e) => e.status === "ready"), E = b.filter((e) => e.status === "failed"), D = (e) => ({
56
- id: e.localId,
57
- fileName: e.fileName,
58
- status: e.status,
59
- onOpen: e.status === "ready" && e.payableId && d ? () => d(e.payableId) : void 0
60
- }), O = w.length ? [{
61
- id: "in-progress",
62
- items: b.map(D)
63
- }] : [...T.length ? [{
64
- id: "ready",
65
- caption: p.readyCaption(T.length),
66
- items: T.map(D)
67
- }] : [], ...E.length ? [{
68
- id: "failed",
69
- caption: p.failedCaption(E.length),
70
- items: E.map(D)
71
- }] : []], k = w.length ? p.uploadingSummary(b.length) : T.length ? p.completeSummary(T.length) : p.failedCaption(E.length), A = a(() => {
72
- h.setQueryData(g, []);
73
- }, [h, g]);
74
- return {
75
- enqueue: S,
76
- sections: O,
77
- summaryLabel: k,
78
- collapsed: v,
79
- onToggleCollapsed: a(() => y((e) => !e), []),
80
- onClose: A,
81
- isVisible: b.length > 0
82
- };
83
- }
2
+ var e = (e) => [
3
+ "bill-pay",
4
+ "upload-queue",
5
+ e ?? ""
6
+ ];
84
7
  //#endregion
85
- export { d as useBillUploadQueue };
8
+ export { e as billPayUploadQueueKey };
@@ -1,3 +1,9 @@
1
- import "./index21.js";
2
- import "./index22.js";
3
- import "./index23.js";
1
+ //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index24.js
2
+ var e = {
3
+ uploadingSummary: (e) => `Uploading and scanning ${e} ${e === 1 ? "file" : "files"}`,
4
+ completeSummary: (e) => `${e} ${e === 1 ? "upload" : "uploads"} complete`,
5
+ readyCaption: (e) => `${e} new ${e === 1 ? "bill" : "bills"} ready`,
6
+ failedCaption: (e) => `${e} failed to upload`
7
+ };
8
+ //#endregion
9
+ export { e as BILL_UPLOAD_QUEUE_LABELS_EN };
@@ -1,8 +1,85 @@
1
+ "use client";
2
+ "use client";
3
+ "use client";
4
+ "use client";
5
+ import { useEmbedApi as e } from "../../../shared/data-access/dist/lib/EmbedApiContext.js";
6
+ import { useUploadPayableFromFileMutation as t } from "../../data-access/dist/index7.js";
7
+ import { usePayableOcrQueries as n } from "../../data-access/dist/index9.js";
8
+ import "../../data-access/dist/index.js";
9
+ import { billPayUploadQueueKey as r } from "./index23.js";
10
+ import { BILL_UPLOAD_QUEUE_LABELS_EN as i } from "./index24.js";
11
+ import { useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
12
+ import { useQuery as l, useQueryClient as u } from "@tanstack/react-query";
1
13
  //#region ../../libs/tesouro-embedded-components-react/bill-pay-widget/feature/dist/index25.js
2
- var e = {
3
- bills: "Bills",
4
- vendors: "Vendors",
5
- settings: "Settings"
6
- };
14
+ function d({ onOpenBill: d, labels: f } = {}) {
15
+ let p = {
16
+ ...i,
17
+ ...f
18
+ }, { organizationId: m } = e(), h = u(), g = s(() => r(m), [m]), _ = t(), [v, y] = c(!1), { data: b = [] } = l({
19
+ queryKey: g,
20
+ queryFn: () => h.getQueryData(g) ?? [],
21
+ staleTime: Infinity,
22
+ gcTime: Infinity,
23
+ initialData: []
24
+ }), x = a((e, t) => {
25
+ h.setQueryData(g, (n) => (n ?? []).map((n) => n.localId === e ? {
26
+ ...n,
27
+ ...t
28
+ } : n));
29
+ }, [h, g]), S = a((e) => {
30
+ y(!1);
31
+ for (let t of e) {
32
+ let e = crypto.randomUUID();
33
+ h.setQueryData(g, (n) => [...n ?? [], {
34
+ localId: e,
35
+ fileName: t.name,
36
+ status: "uploading"
37
+ }]), _.mutateAsync({ file: t }).then((t) => x(e, { payableId: t?.id })).catch(() => x(e, { status: "failed" }));
38
+ }
39
+ }, [
40
+ x,
41
+ h,
42
+ g,
43
+ _
44
+ ]), C = n({ payableIds: b.filter((e) => e.status === "uploading" && e.payableId).map((e) => e.payableId) });
45
+ o(() => {
46
+ for (let { payableId: e, ocrStatus: t, isError: n } of C) {
47
+ let r = b.find((t) => t.payableId === e && t.status === "uploading");
48
+ r && (t === "success" ? x(r.localId, { status: "ready" }) : (n || t === "error" || t === "canceled") && x(r.localId, { status: "failed" }));
49
+ }
50
+ }, [
51
+ b,
52
+ C,
53
+ x
54
+ ]);
55
+ let w = b.filter((e) => e.status === "uploading"), T = b.filter((e) => e.status === "ready"), E = b.filter((e) => e.status === "failed"), D = (e) => ({
56
+ id: e.localId,
57
+ fileName: e.fileName,
58
+ status: e.status,
59
+ onOpen: e.status === "ready" && e.payableId && d ? () => d(e.payableId) : void 0
60
+ }), O = w.length ? [{
61
+ id: "in-progress",
62
+ items: b.map(D)
63
+ }] : [...T.length ? [{
64
+ id: "ready",
65
+ caption: p.readyCaption(T.length),
66
+ items: T.map(D)
67
+ }] : [], ...E.length ? [{
68
+ id: "failed",
69
+ caption: p.failedCaption(E.length),
70
+ items: E.map(D)
71
+ }] : []], k = w.length ? p.uploadingSummary(b.length) : T.length ? p.completeSummary(T.length) : p.failedCaption(E.length), A = a(() => {
72
+ h.setQueryData(g, []);
73
+ }, [h, g]);
74
+ return {
75
+ enqueue: S,
76
+ sections: O,
77
+ summaryLabel: k,
78
+ collapsed: v,
79
+ onToggleCollapsed: a(() => y((e) => !e), []),
80
+ onClose: A,
81
+ isVisible: b.length > 0
82
+ };
83
+ }
7
84
  //#endregion
8
- export { e as DEFAULT_TABS_LABELS };
85
+ export { d as useBillUploadQueue };