@tesouro/embedded-components-react 0.5.227 → 0.5.230

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 (90) hide show
  1. package/README.md +22 -21
  2. package/dist/index.d.ts +87 -34
  3. package/dist/index.js +1 -1
  4. package/dist/lib/ReceivablesWidget.d.ts +87 -34
  5. package/dist/lib/ReceivablesWidget.js +1 -1
  6. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index.js +5 -5
  7. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index10.js +29 -59
  8. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index11.js +1 -1
  9. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index5.js +32 -33
  10. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index6.js +34 -32
  11. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index7.js +1 -1
  12. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index.js +1 -1
  13. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index10.js +120 -52
  14. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index11.js +44 -100
  15. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index12.js +93 -442
  16. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index13.js +356 -201
  17. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index14.js +225 -157
  18. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index15.js +152 -21
  19. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index16.js +18 -221
  20. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index17.js +220 -31
  21. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index18.js +125 -124
  22. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index19.js +58 -150
  23. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index20.js +232 -46
  24. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index21.js +303 -122
  25. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index22.js +43 -58
  26. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index23.js +125 -98
  27. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index24.js +140 -106
  28. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index25.js +46 -232
  29. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index26.js +119 -29
  30. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index27.js +81 -613
  31. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index28.js +116 -39
  32. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index29.js +27 -33
  33. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index30.js +634 -72
  34. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index31.js +39 -119
  35. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index32.js +36 -317
  36. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index33.js +82 -0
  37. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index34.js +139 -0
  38. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index35.js +340 -0
  39. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index5.js +1 -1
  40. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index7.js +15 -2
  41. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index8.js +55 -468
  42. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index9.js +443 -97
  43. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index.js +24 -22
  44. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index10.js +32 -2
  45. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index11.js +205 -84
  46. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index12.js +161 -3
  47. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index13.js +12 -20
  48. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index14.js +25 -1
  49. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index15.js +4 -3
  50. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index16.js +95 -3
  51. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index17.js +3 -18
  52. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index18.js +24 -1
  53. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index19.js +42 -4
  54. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index2.js +14 -7
  55. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index20.js +19 -12
  56. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index21.js +73 -1
  57. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index22.js +17 -261
  58. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index23.js +12 -44
  59. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index24.js +28 -68
  60. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index25.js +288 -479
  61. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index26.js +1 -106
  62. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index27.js +48 -0
  63. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index28.js +72 -2
  64. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index29.js +496 -4
  65. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index3.js +121 -27
  66. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index30.js +106 -1
  67. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index32.js +2 -28
  68. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index33.js +4 -236
  69. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index34.js +0 -2
  70. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index35.js +90 -239
  71. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index36.js +24 -89
  72. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index37.js +231 -54
  73. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index38.js +3 -353
  74. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index39.js +249 -0
  75. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index4.js +100 -207
  76. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index40.js +93 -0
  77. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index41.js +59 -0
  78. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index42.js +353 -0
  79. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index5.js +35 -29
  80. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index6.js +2 -216
  81. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index7.js +9 -159
  82. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index8.js +27 -14
  83. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index9.js +216 -23
  84. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/index.js +40 -40
  85. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/@tanstack/react-query.gen.js +189 -211
  86. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/sdk.gen.js +43 -59
  87. package/dist/libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js +1 -1
  88. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/feature/dist/index.js +12 -12
  89. package/package.json +1 -1
  90. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index31.js +0 -100
@@ -1,124 +1,44 @@
1
- "use client";
2
- "use client";
3
- "use client";
4
- "use client";
5
- import { useAnalyticsTrack as e } from "../../../shared/feature/dist/lib/analytics/hooks.js";
6
- import "../../../shared/feature/dist/index.js";
7
- import { ReceivablesWidgetAnalyticsEvent as t } from "./index2.js";
8
- import { RECEIVABLE_STATUS_BADGE_LABELS_EN as n } from "../../ui/dist/index4.js";
9
- import "../../ui/dist/index.js";
10
- import { coerceEnabledTabs as r, resolveInitialTab as i, tabForType as a, typeForTab as o } from "./index12.js";
11
- import { RECEIVABLE_MESSAGE_LABELS_EN as s } from "./index13.js";
12
- import { useReceivableActions as c } from "./index16.js";
13
- import { useReceivableDetails as l } from "./index17.js";
14
- import { hasSelectedText as u } from "../../../shared/product-catalog/feature/dist/lib/helpers.js";
15
- import "../../../shared/product-catalog/feature/dist/index.js";
16
- import { useReceivableForm as d } from "./index27.js";
17
- import { useReceivablesTable as f } from "./index30.js";
18
- import { useCallback as p, useEffect as m, useMemo as h, useState as g } from "react";
1
+ import { formatMoney as e, getStatusTone as t } from "./index13.js";
19
2
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index31.js
20
- function _({ counterpartMessageLabels: _, defaultTab: v, embeddedBankName: y, enabledTabs: b, messageLabels: x, onReceivableCreated: S, onReceivableOpened: C, screenLabels: w }) {
21
- let T = e();
22
- m(() => {
23
- T(t.Mounted);
24
- }, [T]);
25
- let E = h(() => ({
26
- ...s,
27
- ...x
28
- }), [x]), D = w?.statusBadge, O = h(() => ({
29
- ...n,
30
- ...D
31
- }), [D]), k = h(() => r(b), [b]), [A, j] = g(() => i({
32
- defaultTab: v,
33
- enabledTabs: k
34
- })), [M, N] = g(), [P, F] = g(!1);
35
- m(() => {
36
- k.includes(A) || j(i({
37
- defaultTab: v,
38
- enabledTabs: k
39
- }));
40
- }, [
41
- A,
42
- v,
43
- k
44
- ]);
45
- let I = p((e, t) => {
46
- j(a(t)), N(e), F(!0), S?.(e, t);
47
- }, [S]), L = f({
48
- activeTab: A,
49
- messages: E,
50
- statusLabels: O
51
- }), R = l({
52
- selectedReceivableId: M,
53
- enabled: P,
54
- messages: E
55
- }), z = d({
56
- messages: E,
57
- counterpartMessageLabels: _,
58
- embeddedBankName: y,
59
- onCreated: I
60
- }), B = p(() => {
61
- let e = o(A);
62
- z.openCreate(e === "quote" ? "quote" : "invoice");
63
- }, [A, z.openCreate]), V = c({
64
- selectedReceivable: R.receivable,
65
- messages: E,
66
- onCreated: I,
67
- onDeleted: (e) => {
68
- e === M && (N(void 0), F(!1));
69
- },
70
- onCompleteBeforeIssue: (e) => {
71
- z.openEdit(e, { highlightForIssue: !0 }), F(!1);
72
- }
73
- }), H = p((e) => {
74
- u() || (N(e.id), F(!0), C?.(e.id, e.type));
75
- }, [C]);
3
+ var n = [
4
+ "draft",
5
+ "issued",
6
+ "overdue",
7
+ "partially_paid",
8
+ "paid",
9
+ "recurring",
10
+ "canceled",
11
+ "uncollectible"
12
+ ];
13
+ function r(e) {
14
+ let t = n.indexOf(e);
15
+ return t === -1 ? n.length : t;
16
+ }
17
+ function i({ counts: n, amounts: i, statusFilter: a, statusLabels: o, fallback: s }) {
18
+ let c = new Map(Object.entries(o)), l = new Map(i.map((e) => [e.dimension_value, e.metric_value])), u = n.flatMap((e) => e.dimension_value ? [{
19
+ status: e.dimension_value,
20
+ count: e.metric_value
21
+ }] : []), d = u.filter(({ status: e }) => e !== "recurring").reduce((e, { count: t }) => e + t, 0);
76
22
  return {
77
- activeTab: A,
78
- enabledTabs: k,
79
- setActiveTab: j,
80
- table: L,
81
- details: R,
82
- detailsOpen: P,
83
- closeDetails: p(() => {
84
- F(!1), N(void 0);
85
- }, []),
86
- form: z,
87
- openCreate: B,
88
- actions: V,
89
- handleRowClick: H,
90
- handleActionClick: p((e, t) => {
91
- let n = L.getReceivableById(t.id);
92
- if (e === "edit") {
93
- if (n) {
94
- z.openEdit(n);
95
- return;
96
- }
97
- N(t.id), F(!0);
98
- return;
99
- }
100
- N(t.id), V.openAction(e, t, n ?? null);
101
- }, [
102
- V,
103
- z.openEdit,
104
- L.getReceivableById
105
- ]),
106
- handleDetailsActionClick: p((e, t) => {
107
- if (e === "edit") {
108
- R.receivable && (z.openEdit(R.receivable), F(!1));
109
- return;
110
- }
111
- V.openAction(e, {
112
- id: t.id,
113
- title: t.title,
114
- type: t.type
115
- }, R.receivable ?? null);
116
- }, [
117
- V,
118
- R.receivable,
119
- z.openEdit
120
- ])
23
+ kind: "ready",
24
+ all: {
25
+ value: "all",
26
+ countLabel: String(d),
27
+ selected: a === "all"
28
+ },
29
+ statuses: [...u].sort((e, t) => r(e.status) - r(t.status)).map(({ status: n, count: r }) => ({
30
+ value: n,
31
+ statusLabel: c.get(n) ?? o.unknown,
32
+ statusTone: t(n),
33
+ countLabel: String(r),
34
+ amountLabel: e({
35
+ amount: l.get(n) ?? 0,
36
+ currency: "USD",
37
+ fallback: s
38
+ }),
39
+ selected: a === n
40
+ }))
121
41
  };
122
42
  }
123
43
  //#endregion
124
- export { _ as useReceivablesWidget };
44
+ export { i as buildReceivableStatusCardsView };
@@ -2,323 +2,42 @@
2
2
  "use client";
3
3
  "use client";
4
4
  "use client";
5
- import { Calendar as e, Skeleton as t } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
6
- import { EmbeddedToaster as n } from "../../../shared/ui/dist/lib/EmbeddedToaster.js";
7
- import "../../../shared/ui/dist/index.js";
8
- import { useAnalyticsTrack as r } from "../../../shared/feature/dist/lib/analytics/hooks.js";
9
- import { WidgetProvider as i } from "../../../shared/feature/dist/lib/WidgetProvider/WidgetProvider.js";
10
- import "../../../shared/feature/dist/index.js";
11
- import { CounterpartFormSheet as a } from "../../../shared/counterpart-management/ui/dist/index9.js";
12
- import { CounterpartSelector as o } from "../../../shared/counterpart-management/feature/dist/lib/CounterpartSelector.js";
13
- import "../../../shared/counterpart-management/feature/dist/index.js";
14
- import { ReceivablesWidgetAnalyticsEvent as s, WIDGET_NAME as c } from "./index2.js";
15
- import { PAGE_SIZE_OPTIONS as l } from "./index4.js";
16
- import { ReceivableActionDialog as u } from "../../ui/dist/index5.js";
17
- import { ReceivableBankAccountSection as d } from "../../ui/dist/index6.js";
18
- import { ReceivableBillingSection as f } from "../../ui/dist/index11.js";
19
- import { ReceivableDetailsSheet as p } from "../../ui/dist/index22.js";
20
- import { ReceivableFormSheet as m } from "../../ui/dist/index25.js";
21
- import { ReceivablePaymentDialog as h } from "../../ui/dist/index26.js";
22
- import { ReceivableRecurrenceEmailDialog as g } from "../../ui/dist/index31.js";
23
- import { ReceivableRecurrenceSection as _ } from "../../ui/dist/index33.js";
24
- import { ReceivableRemindersSection as v } from "../../ui/dist/index35.js";
25
- import { ReceivableSendDialog as y } from "../../ui/dist/index36.js";
26
- import { ReceivablesScreen as b } from "../../ui/dist/index38.js";
27
- import "../../ui/dist/index.js";
28
- import { ReceivableAttachmentsSection as x } from "./index5.js";
29
- import { MeasureUnitsManagerContainer as S } from "../../../shared/product-catalog/feature/dist/lib/MeasureUnitsManagerContainer.js";
30
- import { ProductSelector as C } from "../../../shared/product-catalog/feature/dist/lib/ProductSelector.js";
31
- import "../../../shared/product-catalog/feature/dist/index.js";
32
- import { useReceivablesWidget as w } from "./index31.js";
33
- import { useEffect as T, useId as E, useState as D } from "react";
34
- import { Fragment as O, jsx as k, jsxs as A } from "react/jsx-runtime";
5
+ import { useReceivablesAnalyticsQuery as e } from "../../data-access/dist/index12.js";
6
+ import "../../data-access/dist/index.js";
7
+ import { buildReceivableStatusCardsView as t } from "./index31.js";
8
+ import { useMemo as n } from "react";
35
9
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index32.js
36
- function j({ counterpartFormLabels: i, counterpartMessageLabels: c, defaultTab: j, detailsLabels: M, embeddedBankName: N, enabledTabs: P, formLabels: F, measureUnitDeleteLabels: I, measureUnitsLabels: L, messageLabels: R, onReceivableCreated: z, onReceivableOpened: B, onTemplateSettingsClick: V, pageSizeOptions: H = l, paymentLabels: U, productMessageLabels: W, screenLabels: G, sendLabels: K, actionLabels: q }) {
37
- let J = r();
38
- T(() => {
39
- J(s.Mounted);
40
- }, [J]);
41
- let Y = w({
42
- counterpartMessageLabels: c,
43
- defaultTab: j,
44
- embeddedBankName: N,
45
- enabledTabs: P,
46
- messageLabels: R,
47
- onReceivableCreated: z,
48
- onReceivableOpened: B,
49
- screenLabels: G
50
- }), [X, Z] = D(!1), Q = E(), $ = E(), ee = E(), te = E();
51
- return /* @__PURE__ */ A(O, { children: [
52
- /* @__PURE__ */ k(n, {}),
53
- /* @__PURE__ */ k(b, {
54
- rows: Y.table.rows,
55
- activeTab: Y.activeTab,
56
- enabledTabs: Y.enabledTabs,
57
- onTabChange: Y.setActiveTab,
58
- isLoading: Y.table.isLoading,
59
- isError: Y.table.isError,
60
- sorting: Y.table.sorting,
61
- onSortingChange: Y.table.onSortingChange,
62
- pageSize: Y.table.pageSize,
63
- onPageSizeChange: Y.table.onPageSizeChange,
64
- pageSizeOptions: H,
65
- hasNextPage: Y.table.hasNextPage,
66
- hasPrevPage: Y.table.hasPrevPage,
67
- onNextPage: Y.table.onNextPage,
68
- onPrevPage: Y.table.onPrevPage,
69
- searchValue: Y.table.searchValue,
70
- onSearchChange: Y.table.onSearchChange,
71
- statusFilter: Y.table.statusFilter,
72
- statusOptions: Y.table.statusOptions,
73
- onStatusFilterChange: Y.table.onStatusFilterChange,
74
- statusCards: Y.table.statusCards,
75
- onStatusCardSelect: Y.table.onStatusFilterChange,
76
- isFiltering: Y.table.isFiltering,
77
- onCreateClick: Y.openCreate,
78
- onTemplateSettingsClick: V,
79
- onRowClick: Y.handleRowClick,
80
- onActionClick: Y.handleActionClick,
81
- onRetry: Y.table.onRetry,
82
- labels: G
83
- }),
84
- /* @__PURE__ */ k(m, {
85
- open: Y.form.open,
86
- onOpenChange: (e) => {
87
- e || Y.form.close();
88
- },
89
- mode: Y.form.mode,
90
- values: Y.form.sheetValues,
91
- errors: Y.form.errors,
92
- currencyOptions: Y.form.currencyOptions,
93
- unitOptions: Y.form.lineItemUnitOptions,
94
- currencySymbol: Y.form.currencySymbol,
95
- lineItemControls: Y.form.lineItemControls,
96
- autoFocusLineItemId: Y.form.autoFocusLineItemId,
97
- lineItemsLoading: Y.form.lineItemsLoading,
98
- inProgress: Y.form.isSubmitting,
99
- customerSelector: /* @__PURE__ */ k(o, {
100
- mode: "customer",
101
- value: Y.form.values.customerId || void 0,
102
- invalid: !!Y.form.errors.customerId,
103
- onValueChange: (e) => Y.form.updateValues({ customerId: e }),
104
- onCreateClick: Y.form.openCounterpartCreate
105
- }),
106
- renderProductSelector: (e, t) => /* @__PURE__ */ k(C, {
107
- ...t,
108
- inputValue: e.name,
109
- selectedProductId: Y.form.values.lineItems.find((t) => t.id === e.id)?.productId || void 0,
110
- currency: Y.form.values.currency,
111
- maxLength: 100,
112
- onInputValueChange: (t) => Y.form.updateLineItem(e.id, { name: t }),
113
- onProductSelect: (t) => Y.form.selectProduct(e.id, t)
114
- }),
115
- onChange: Y.form.updateValues,
116
- onLineItemChange: Y.form.updateLineItem,
117
- onLineItemCommit: Y.form.commitLineItem,
118
- onLineItemQuantityStep: Y.form.stepLineItem,
119
- onTaxRateCommit: Y.form.commitTaxRate,
120
- onDiscountFocus: Y.form.focusDiscount,
121
- onDiscountCommit: Y.form.commitDiscount,
122
- totals: Y.form.totalsView,
123
- onManageUnits: () => Z(!0),
124
- onAddLineItem: Y.form.addLineItem,
125
- onRemoveLineItem: Y.form.removeLineItem,
126
- showDueDateField: Y.form.showDueDateField,
127
- billingSection: Y.form.showBillingSection && /* @__PURE__ */ k(f, {
128
- idPrefix: Q,
129
- paymentTerms: Y.form.paymentTerms.view,
130
- paymentTermsError: Y.form.errors.paymentTermsId,
131
- disabled: Y.form.isSubmitting,
132
- onPaymentTermsChange: Y.form.paymentTerms.select,
133
- onCustomDatePickerOpenChange: Y.form.paymentTerms.changeCustomDatePickerOpen,
134
- customDateCalendar: /* @__PURE__ */ k(e, {
135
- mode: "single",
136
- captionLayout: "dropdown",
137
- ...Y.form.paymentTerms.calendar,
138
- onSelect: Y.form.paymentTerms.selectCustomDate
139
- }),
140
- recurrenceSection: Y.form.showRecurrenceSection && (Y.form.recurrenceLoading ? /* @__PURE__ */ k(t, { className: "ttw:h-9 ttw:w-full" }) : /* @__PURE__ */ k(_, {
141
- idPrefix: $,
142
- view: Y.form.recurrence.view,
143
- disabled: Y.form.isSubmitting,
144
- onFrequencyChange: Y.form.recurrence.changeFrequency,
145
- onMonthDayChange: Y.form.recurrence.changeMonthDay,
146
- onWeekdayChange: Y.form.recurrence.changeWeekday,
147
- onStartDateChange: Y.form.recurrence.changeStartDate,
148
- onEndModeChange: Y.form.recurrence.changeEndMode,
149
- onEndDateChange: Y.form.recurrence.changeEndDate,
150
- onMaxOccurrencesChange: Y.form.recurrence.changeMaxOccurrences,
151
- onCreationModeChange: Y.form.recurrence.changeCreationMode,
152
- onSetUpEmailClick: Y.form.recurrence.setUpEmail,
153
- emailDialog: /* @__PURE__ */ k(g, {
154
- idPrefix: $,
155
- view: Y.form.recurrence.emailView,
156
- onOpenChange: Y.form.recurrence.changeEmailOpen,
157
- onChange: Y.form.recurrence.changeEmail,
158
- onSave: Y.form.recurrence.saveEmail,
159
- labels: F
160
- }),
161
- labels: F
162
- })),
163
- labels: F
164
- }),
165
- remindersSection: Y.form.reminders.view && /* @__PURE__ */ k(v, {
166
- idPrefix: te,
167
- view: Y.form.reminders.view,
168
- onToggle: Y.form.reminders.toggle,
169
- onPaymentReminderSelect: Y.form.reminders.selectPaymentReminder,
170
- onOverdueReminderSelect: Y.form.reminders.selectOverdueReminder,
171
- onBeforeDueInputChange: Y.form.reminders.changeBeforeDueInput,
172
- onBeforeDueSave: Y.form.reminders.saveBeforeDue,
173
- onOverdueTermChange: Y.form.reminders.changeOverdueTerm,
174
- onOverdueAddTerm: Y.form.reminders.addOverdueTerm,
175
- onOverdueClear: Y.form.reminders.clearOverdueTerms,
176
- onOverdueSave: Y.form.reminders.saveOverdue,
177
- labels: F
178
- }),
179
- bankAccountSection: /* @__PURE__ */ k(d, {
180
- idPrefix: ee,
181
- view: Y.form.bankAccount.view,
182
- error: Y.form.errors.bankAccountId,
183
- disabled: Y.form.isSubmitting,
184
- onAccountSelect: Y.form.bankAccount.selectAccount,
185
- onAddAccountClick: Y.form.bankAccount.openAddAccount,
186
- onFormChange: Y.form.bankAccount.updateAccountForm,
187
- onFormSave: Y.form.bankAccount.saveAccount,
188
- onFormCancel: Y.form.bankAccount.cancelAddAccount,
189
- labels: F
190
- }),
191
- attachmentsSection: Y.form.attachmentsView && /* @__PURE__ */ k(x, {
192
- view: Y.form.attachmentsView,
193
- disabled: Y.form.isSubmitting,
194
- onFilesSelect: Y.form.selectAttachmentFiles,
195
- onIncludeInEmailChange: Y.form.setAttachmentIncludeInEmail,
196
- onRemove: Y.form.removeAttachment,
197
- labels: F
198
- }),
199
- cancelDisabled: Y.form.isSubmitting || Y.form.attachmentsUploading,
200
- draftButtonLabel: Y.form.draftButtonLabel,
201
- draftDisabled: Y.form.draftDisabled,
202
- primaryButtonLabel: Y.form.primaryButtonLabel,
203
- primaryDisabled: Y.form.primaryDisabled,
204
- scrollContainerRef: Y.form.scrollContainerRef,
205
- onSubmit: Y.form.submit,
206
- onDraftClick: Y.form.selectDraftMode,
207
- onPrimaryClick: Y.form.selectPrimaryMode,
208
- onCancel: Y.form.close,
209
- labels: F
210
- }),
211
- /* @__PURE__ */ k(p, {
212
- open: Y.detailsOpen,
213
- onOpenChange: (e) => {
214
- e || Y.closeDetails();
215
- },
216
- details: Y.details.detailsView,
217
- isLoading: Y.details.isLoading,
218
- isError: Y.details.isError,
219
- onActionClick: Y.handleDetailsActionClick,
220
- onClose: Y.closeDetails,
221
- labels: M
222
- }),
223
- /* @__PURE__ */ k(y, {
224
- open: Y.actions.sendOpen,
225
- onOpenChange: (e) => {
226
- e || Y.actions.closeSend();
227
- },
228
- values: Y.actions.sendValues,
229
- errors: Y.actions.sendErrors,
230
- inProgress: Y.actions.sendInProgress,
231
- onChange: (e) => Y.actions.setSendValues((t) => ({
232
- ...t,
233
- ...e
234
- })),
235
- onSubmit: Y.actions.submitSend,
236
- onCancel: Y.actions.closeSend,
237
- labels: K
238
- }),
239
- /* @__PURE__ */ k(h, {
240
- open: Y.actions.paymentOpen,
241
- onOpenChange: (e) => {
242
- e || Y.actions.closePayment();
243
- },
244
- values: Y.actions.paymentValues,
245
- errors: Y.actions.paymentErrors,
246
- inProgress: Y.actions.paymentInProgress,
247
- onChange: (e) => Y.actions.setPaymentValues((t) => ({
248
- ...t,
249
- ...e
250
- })),
251
- onSubmit: Y.actions.submitPayment,
252
- onCancel: Y.actions.closePayment,
253
- labels: U
254
- }),
255
- Y.actions.actionDialog && /* @__PURE__ */ k(u, {
256
- open: !!Y.actions.actionTarget,
257
- onOpenChange: (e) => {
258
- e || Y.actions.closeAction();
259
- },
260
- title: Y.actions.actionDialog.title,
261
- description: Y.actions.actionDialog.description,
262
- confirmLabel: Y.actions.actionDialog.confirmLabel,
263
- destructive: Y.actions.actionDialog.destructive,
264
- error: Y.actions.actionError,
265
- inProgress: Y.actions.actionInProgress,
266
- onConfirm: Y.actions.confirmAction,
267
- onCancel: Y.actions.closeAction,
268
- labels: q
269
- }),
270
- /* @__PURE__ */ k(a, {
271
- open: Y.form.counterpartView === "create",
272
- onOpenChange: (e) => {
273
- e || Y.form.counterpartForm.close();
274
- },
275
- mode: "create",
276
- values: Y.form.counterpartForm.values,
277
- errors: Y.form.counterpartForm.errors,
278
- stateOptions: Y.form.stateOptions,
279
- inProgress: Y.form.counterpartForm.isSubmitting,
280
- onChange: (e) => Y.form.counterpartForm.setValues((t) => ({
281
- ...t,
282
- ...e
283
- })),
284
- onAddressChange: (e) => Y.form.counterpartForm.setValues((t) => ({
285
- ...t,
286
- address: {
287
- ...t.address,
288
- ...e
289
- }
290
- })),
291
- onSubmit: Y.form.counterpartForm.submit,
292
- onCancel: Y.form.counterpartForm.close,
293
- labels: i
294
- }),
295
- /* @__PURE__ */ k(S, {
296
- open: X,
297
- onClose: () => Z(!1),
298
- managerLabels: L,
299
- deleteLabels: I,
300
- messageLabels: W
301
- })
302
- ] });
303
- }
304
- function M({ baseUrl: e, widgetToken: t, organizationId: n, configClient: r, gatewayRouting: a, linkComponent: o, implementation: s, uiFramework: l, errorFallback: u, onError: d, analytics: f, disclosuresAcceptance: p, providerLabels: m, ...h }) {
305
- return /* @__PURE__ */ k(i, {
306
- widgetName: c,
307
- baseUrl: e,
308
- widgetToken: t,
309
- organizationId: n,
310
- configClient: r,
311
- gatewayRouting: a,
312
- linkComponent: o,
313
- implementation: s,
314
- uiFramework: l,
315
- errorFallback: u,
316
- onError: d,
317
- analytics: f,
318
- disclosuresAcceptance: p,
319
- providerLabels: m,
320
- children: /* @__PURE__ */ k(j, { ...h })
321
- });
10
+ function r({ enabled: r, statusFilter: i, messages: a, statusLabels: o }) {
11
+ let s = e({
12
+ enabled: r,
13
+ dimension: "status",
14
+ metric: "id",
15
+ aggregation_function: "count",
16
+ type: "invoice"
17
+ }), c = e({
18
+ enabled: r,
19
+ dimension: "status",
20
+ metric: "total_amount",
21
+ aggregation_function: "summary",
22
+ type: "invoice"
23
+ }), l = s.data?.data, u = c.data?.data, d = s.isPending || c.isPending;
24
+ return n(() => {
25
+ if (r) return d ? { kind: "loading" } : t({
26
+ counts: l ?? [],
27
+ amounts: u ?? [],
28
+ statusFilter: i,
29
+ statusLabels: o,
30
+ fallback: a.notAvailable
31
+ });
32
+ }, [
33
+ u,
34
+ l,
35
+ r,
36
+ d,
37
+ a.notAvailable,
38
+ i,
39
+ o
40
+ ]);
322
41
  }
323
42
  //#endregion
324
- export { M as ReceivablesWidget, M as default };
43
+ export { r as useReceivableStatusCards };
@@ -0,0 +1,82 @@
1
+ "use client";
2
+ "use client";
3
+ "use client";
4
+ "use client";
5
+ import { buildReceivableRows as e, statusFilterOptions as t, typeForTab as n } from "./index13.js";
6
+ import { useReceivablesQuery as r } from "../../data-access/dist/index10.js";
7
+ import "../../data-access/dist/index.js";
8
+ import { useReceivableStatusCards as i } from "./index32.js";
9
+ import { useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
10
+ //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index33.js
11
+ var l = [];
12
+ function u({ activeTab: u, messages: f, statusLabels: p }) {
13
+ let [m, h] = c([]), [g, _] = c(10), [v, y] = c(), [b, x] = c(""), [S, C] = c(""), [w, T] = c("all");
14
+ o(() => {
15
+ y(void 0), T("all");
16
+ }, [u]), o(() => {
17
+ let e = setTimeout(() => {
18
+ C(b), y(void 0);
19
+ }, 300);
20
+ return () => clearTimeout(e);
21
+ }, [b]);
22
+ let E = m[0]?.id, D = E ? d[E] : void 0, O = m[0] ? m[0].desc ? "desc" : "asc" : void 0, k = r({
23
+ type: n(u),
24
+ limit: g,
25
+ pagination_token: v,
26
+ search_text: S || void 0,
27
+ status: w === "all" ? void 0 : w,
28
+ ...D ? {
29
+ sort: D,
30
+ order: O
31
+ } : {}
32
+ }), A = i({
33
+ enabled: u === "invoices",
34
+ statusFilter: w,
35
+ messages: f,
36
+ statusLabels: p
37
+ }), j = k.data?.data ?? l, M = s(() => new Map(j.map((e) => [e.id, e])), [j]), N = a((e) => M.get(e), [M]), P = s(() => e({
38
+ receivables: j,
39
+ messages: f
40
+ }), [f, j]), F = !!S || w !== "all", I = a((e) => {
41
+ let t = typeof e == "function" ? e(m) : e;
42
+ h(t), y(void 0);
43
+ }, [m]), L = a((e) => {
44
+ _(e), y(void 0);
45
+ }, []), R = a((e) => {
46
+ T(e), y(void 0);
47
+ }, []), z = a(() => y(k.data?.next_pagination_token ?? void 0), [k.data?.next_pagination_token]), B = a(() => y(k.data?.prev_pagination_token ?? void 0), [k.data?.prev_pagination_token]), V = a(() => {
48
+ k.refetch();
49
+ }, [k]);
50
+ return {
51
+ rows: P,
52
+ isLoading: k.isLoading,
53
+ isError: k.isError,
54
+ sorting: m,
55
+ onSortingChange: I,
56
+ pageSize: g,
57
+ onPageSizeChange: L,
58
+ hasNextPage: !!k.data?.next_pagination_token,
59
+ hasPrevPage: !!k.data?.prev_pagination_token,
60
+ onNextPage: z,
61
+ onPrevPage: B,
62
+ searchValue: b,
63
+ onSearchChange: x,
64
+ statusFilter: w,
65
+ statusOptions: t(w),
66
+ onStatusFilterChange: R,
67
+ statusCards: A,
68
+ isFiltering: F,
69
+ onRetry: V,
70
+ getReceivableById: N
71
+ };
72
+ }
73
+ var d = {
74
+ documentLabel: "document_id",
75
+ customerLabel: "counterpart_name",
76
+ status: "status",
77
+ issueDateLabel: "issue_date",
78
+ dueDateLabel: "due_date",
79
+ totalLabel: "total_amount"
80
+ };
81
+ //#endregion
82
+ export { u as useReceivablesTable };