@tesouro/embedded-components-react 0.5.243 → 0.5.245

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 (14) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/lib/ReceivablesWidget.d.ts +2 -0
  3. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/ReceivablesWidget.js +253 -251
  4. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/details.js +84 -80
  5. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/permissions.js +13 -0
  6. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivableActionsModal.js +1 -0
  7. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivableDetails.js +28 -26
  8. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivableStatusCards.js +16 -16
  9. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivablesTable.js +60 -58
  10. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivablesWidget.js +188 -115
  11. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index13.js +2 -0
  12. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index51.js +222 -219
  13. package/dist/libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js +1 -1
  14. package/package.json +1 -1
@@ -3,144 +3,217 @@
3
3
  "use client";
4
4
  "use client";
5
5
  import { useAnalyticsTrack as e } from "../../../../../shared/feature/dist/lib/analytics/hooks.js";
6
+ import { useRefetchWidget as t, useWidgetConfig as n, useWidgetError as r, useWidgetInitStaleForToken as ee, useWidgetLoading as te } from "../../../../../shared/feature/dist/lib/WidgetProvider/hooks.js";
6
7
  import "../../../../../shared/feature/dist/index.js";
7
- import { ReceivablesWidgetAnalyticsEvent as t } from "./analytics/events.js";
8
- import { RECEIVABLE_STATUS_BADGE_LABELS_EN as n } from "../../../../ui/dist/index13.js";
8
+ import { ReceivablesWidgetAnalyticsEvent as ne } from "./analytics/events.js";
9
+ import { RECEIVABLE_STATUS_BADGE_LABELS_EN as re } from "../../../../ui/dist/index13.js";
9
10
  import "../../../../ui/dist/index.js";
10
- import { hasSelectedText as r } from "../../../../../shared/product-catalog/feature/dist/lib/helpers.js";
11
+ import { hasSelectedText as ie } from "../../../../../shared/product-catalog/feature/dist/lib/helpers.js";
11
12
  import "../../../../../shared/product-catalog/feature/dist/index.js";
12
- import { getCreateFollowUp as i } from "./actionsModal.js";
13
- import { coerceEnabledTabs as a, getDocumentTitle as o, resolveInitialTab as s, tabForType as c, typeForTab as l } from "./helpers.js";
14
- import { RECEIVABLE_MESSAGE_LABELS_EN as u } from "./labels.js";
15
- import { useReceivableActions as d } from "./useReceivableActions.js";
16
- import { useReceivableActionsModal as f } from "./useReceivableActionsModal.js";
17
- import { useReceivableDetails as p } from "./useReceivableDetails.js";
18
- import { useReceivableForm as m } from "./useReceivableForm.js";
19
- import { useReceivablesTable as h } from "./useReceivablesTable.js";
20
- import { useCallback as g, useEffect as _, useMemo as v, useState as y } from "react";
13
+ import { getCreateFollowUp as ae } from "./actionsModal.js";
14
+ import { coerceEnabledTabs as oe, getDocumentTitle as se, resolveInitialTab as i, tabForType as a, typeForTab as ce } from "./helpers.js";
15
+ import { RECEIVABLE_MESSAGE_LABELS_EN as le } from "./labels.js";
16
+ import { getReceivablePermissions as ue } from "./permissions.js";
17
+ import { useReceivableActions as de } from "./useReceivableActions.js";
18
+ import { useReceivableActionsModal as fe } from "./useReceivableActionsModal.js";
19
+ import { useReceivableDetails as pe } from "./useReceivableDetails.js";
20
+ import { useReceivableForm as me } from "./useReceivableForm.js";
21
+ import { useReceivablesTable as he } from "./useReceivablesTable.js";
22
+ import { useCallback as o, useEffect as s, useMemo as c, useState as l } from "react";
21
23
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/lib/ReceivablesWidget/useReceivablesWidget.js
22
- function b({ auditHistoryLabels: b, counterpartMessageLabels: x, defaultTab: S, embeddedBankName: C, enabledTabs: w, filterLabels: T, initialCounterpartId: E, messageLabels: D, onReceivableCreated: O, onReceivableOpened: k, screenLabels: A }) {
23
- let j = e();
24
- _(() => {
25
- j(t.Mounted);
26
- }, [j]);
27
- let M = v(() => ({
28
- ...u,
29
- ...D
30
- }), [D]), N = A?.statusBadge, P = v(() => ({
31
- ...n,
32
- ...N
33
- }), [N]), F = v(() => a(w), [w]), [I, L] = y(() => s({
34
- defaultTab: S,
35
- enabledTabs: F
36
- })), [R, z] = y(), [B, V] = y(!1);
37
- _(() => {
38
- F.includes(I) || L(s({
39
- defaultTab: S,
40
- enabledTabs: F
24
+ function u({ auditHistoryLabels: u, counterpartMessageLabels: ge, defaultTab: f, embeddedBankName: _e, enabledTabs: ve, filterLabels: ye, initialCounterpartId: be, messageLabels: p, onReceivableCreated: m, onReceivableOpened: h, screenLabels: xe }) {
25
+ let g = e();
26
+ s(() => {
27
+ g(ne.Mounted);
28
+ }, [g]);
29
+ let { initResponse: _, widgetToken: Se } = n(), v = te(), Ce = r(), we = t(), y = ee(), b = !!_ && !y, x = c(() => ue(_?.scopes), [_?.scopes]), Te = !!_ && y, S = !!_ && x.canRead, C = !!_ && x.canWrite, w = b && x.canRead, T = b && x.canWrite, E = !!Ce && !b && !v, D = !b && !E && !!(Se || v), O = c(() => ({
30
+ ...le,
31
+ ...p
32
+ }), [p]), k = xe?.statusBadge, A = c(() => ({
33
+ ...re,
34
+ ...k
35
+ }), [k]), j = c(() => oe(ve), [ve]), [M, N] = l(() => i({
36
+ defaultTab: f,
37
+ enabledTabs: j
38
+ })), [Ee, P] = l(), [F, I] = l(!1), [L, R] = l(!1), De = o(() => R(!0), []), z = o(() => R(!1), []);
39
+ s(() => {
40
+ j.includes(M) || N(i({
41
+ defaultTab: f,
42
+ enabledTabs: j
41
43
  }));
42
44
  }, [
43
- I,
44
- S,
45
- F
45
+ M,
46
+ f,
47
+ j
46
48
  ]);
47
- let H = g((e, t) => {
48
- L(c(t)), z(e), V(!0), O?.(e, t);
49
- }, [O]), U = f({ messages: M }), W = U.open, G = g((e, t, n) => {
50
- L(c(t));
51
- let r = i(n);
52
- r.openDetails && (z(e), V(!0)), r.actionsModal && W({
49
+ let Oe = o((e, t) => {
50
+ N(a(t)), P(e), I(!0), m?.(e, t);
51
+ }, [m]), B = fe({ messages: O }), V = B.open, ke = o((e, t, n) => {
52
+ N(a(t));
53
+ let r = ae(n);
54
+ r.openDetails && (P(e), I(!0)), r.actionsModal && V({
53
55
  action: n.mode,
54
56
  receivableId: e,
55
57
  counterpartId: n.counterpartId,
56
58
  inlineItems: n.inlineItems,
57
59
  showEmailStep: r.actionsModal.showEmailStep
58
- }), O?.(e, t);
59
- }, [O, W]), K = h({
60
- activeTab: I,
61
- initialCounterpartId: E,
62
- messages: M,
63
- statusLabels: P,
64
- filterLabels: T
65
- }), q = g((e) => {
66
- z(e), V(!0), k?.(e, "invoice");
67
- }, [k]), J = p({
68
- selectedReceivableId: R,
69
- enabled: B,
70
- messages: M,
71
- statusLabels: P,
72
- auditHistoryLabels: b,
73
- onOpenReceivable: q
74
- }), Y = m({
75
- messages: M,
76
- counterpartMessageLabels: x,
77
- embeddedBankName: C,
78
- onCreated: G
79
- }), X = g(() => {
80
- let e = l(I);
81
- Y.openCreate(e === "quote" ? "quote" : "invoice");
82
- }, [I, Y.openCreate]), Z = d({
83
- selectedReceivable: J.receivable,
84
- selectedRecurrence: J.recurrence,
85
- messages: M,
86
- onCreated: H,
60
+ }), m?.(e, t);
61
+ }, [m, V]), H = he({
62
+ activeTab: M,
63
+ initialCounterpartId: be,
64
+ messages: O,
65
+ statusLabels: A,
66
+ filterLabels: ye,
67
+ enabled: w,
68
+ visible: S
69
+ }), Ae = o((e) => {
70
+ P(e), I(!0), h?.(e, "invoice");
71
+ }, [h]), U = pe({
72
+ selectedReceivableId: Ee,
73
+ enabled: F && w,
74
+ canWrite: C,
75
+ messages: O,
76
+ statusLabels: A,
77
+ auditHistoryLabels: u,
78
+ onOpenReceivable: Ae
79
+ }), W = me({
80
+ messages: O,
81
+ counterpartMessageLabels: ge,
82
+ embeddedBankName: _e,
83
+ onCreated: ke
84
+ }), je = o(() => {
85
+ if (!T) return;
86
+ let e = ce(M);
87
+ W.openCreate(e === "quote" ? "quote" : "invoice");
88
+ }, [
89
+ M,
90
+ T,
91
+ W.openCreate
92
+ ]), G = de({
93
+ selectedReceivable: U.receivable,
94
+ selectedRecurrence: U.recurrence,
95
+ messages: O,
96
+ onCreated: Oe,
87
97
  onDeleted: (e) => {
88
- e === R && (z(void 0), V(!1));
98
+ e === Ee && (P(void 0), I(!1));
89
99
  },
90
100
  onCompleteBeforeIssue: (e) => {
91
- Y.openEdit(e, { highlightForIssue: !0 }), V(!1);
101
+ W.openEdit(e, { highlightForIssue: !0 }), I(!1);
92
102
  }
93
- }), Q = g((e) => {
94
- r() || (z(e.id), V(!0), k?.(e.id, e.type));
95
- }, [k]);
96
- return {
97
- activeTab: I,
98
- enabledTabs: F,
99
- setActiveTab: L,
100
- table: K,
101
- details: J,
102
- detailsOpen: B,
103
- closeDetails: g(() => {
104
- V(!1), z(void 0);
105
- }, []),
106
- form: Y,
107
- openCreate: X,
108
- actions: Z,
109
- actionsModal: U,
110
- handleRowClick: Q,
111
- handleActionClick: g((e, t) => {
112
- let n = K.getReceivableById(t.id);
113
- if (e === "edit") {
114
- if (n) {
115
- Y.openEdit(n);
116
- return;
117
- }
118
- z(t.id), V(!0);
103
+ }), K = b && !x.canWrite, q = W.open || W.counterpartView !== "none" || !!G.actionTarget || G.sendOpen || G.paymentOpen || B.isOpen || L, J = W.close, Y = W.counterpartForm.close, { closeAction: X, closeSend: Z, closePayment: Q } = G, $ = B.close;
104
+ s(() => {
105
+ K && q && (J(), Y(), X(), Z(), Q(), $(), z());
106
+ }, [
107
+ X,
108
+ $,
109
+ Y,
110
+ J,
111
+ z,
112
+ Q,
113
+ Z,
114
+ q,
115
+ K
116
+ ]);
117
+ let Me = o((e) => {
118
+ ie() || (P(e.id), I(!0), h?.(e.id, e.type));
119
+ }, [h]), Ne = o(() => {
120
+ I(!1), P(void 0);
121
+ }, []), Pe = o((e, t) => {
122
+ if (!T) return;
123
+ let n = H.getReceivableById(t.id);
124
+ if (e === "edit") {
125
+ if (n) {
126
+ W.openEdit(n);
119
127
  return;
120
128
  }
121
- z(t.id), Z.openAction(e, t, n ?? null);
122
- }, [
123
- Z,
124
- Y.openEdit,
125
- K.getReceivableById
126
- ]),
127
- handleDetailsActionClick: g((e, t) => {
129
+ P(t.id), I(!0);
130
+ return;
131
+ }
132
+ P(t.id), G.openAction(e, t, n ?? null);
133
+ }, [
134
+ G,
135
+ T,
136
+ W.openEdit,
137
+ H.getReceivableById
138
+ ]), Fe = o((e, t) => {
139
+ if (T) {
128
140
  if (e === "edit") {
129
- J.receivable && (Y.openEdit(J.receivable), V(!1));
141
+ U.receivable && (W.openEdit(U.receivable), I(!1));
130
142
  return;
131
143
  }
132
- Z.openAction(e, {
144
+ G.openAction(e, {
133
145
  id: t.id,
134
- title: J.receivable ? o(J.receivable, M) : t.title,
146
+ title: U.receivable ? se(U.receivable, O) : t.title,
135
147
  type: t.type
136
- }, J.receivable ?? null);
137
- }, [
138
- Z,
139
- J.receivable,
140
- Y.openEdit,
141
- M
142
- ])
148
+ }, U.receivable ?? null);
149
+ }
150
+ }, [
151
+ G,
152
+ T,
153
+ U.receivable,
154
+ W.openEdit,
155
+ O
156
+ ]);
157
+ return {
158
+ activeTab: M,
159
+ enabledTabs: j,
160
+ setActiveTab: N,
161
+ canWrite: C,
162
+ actionsSuspended: Te,
163
+ isAccessRestricted: b && !x.canRead,
164
+ table: S ? H : {
165
+ ...H,
166
+ rows: [],
167
+ statusCards: void 0,
168
+ isError: !1
169
+ },
170
+ isTableLoading: S ? H.isLoading || D && H.rows.length === 0 : D,
171
+ isError: E || S && H.isError,
172
+ onRetry: E ? we : H.onRetry,
173
+ details: U,
174
+ detailsOpen: F && S,
175
+ closeDetails: Ne,
176
+ form: {
177
+ ...W,
178
+ open: C && W.open,
179
+ counterpartView: C ? W.counterpartView : "none",
180
+ counterpartForm: {
181
+ ...W.counterpartForm,
182
+ submit: d(T, W.counterpartForm.submit)
183
+ },
184
+ submit: d(T, W.submit),
185
+ submitDraft: d(T, W.submitDraft),
186
+ submitPrimary: d(T, W.submitPrimary)
187
+ },
188
+ openCreate: je,
189
+ measureUnitsOpen: C && L,
190
+ openMeasureUnits: De,
191
+ closeMeasureUnits: z,
192
+ actions: {
193
+ ...G,
194
+ actionDialog: C ? G.actionDialog : void 0,
195
+ sendOpen: C && G.sendOpen,
196
+ paymentOpen: C && G.paymentOpen,
197
+ openAction: d(T, G.openAction),
198
+ confirmAction: d(T, G.confirmAction),
199
+ submitSend: d(T, G.submitSend),
200
+ submitPayment: d(T, G.submitPayment)
201
+ },
202
+ actionsModal: {
203
+ ...B,
204
+ isOpen: C && B.isOpen,
205
+ send: d(T, B.send),
206
+ saveItems: d(T, B.saveItems)
207
+ },
208
+ handleRowClick: Me,
209
+ handleActionClick: Pe,
210
+ handleDetailsActionClick: Fe
211
+ };
212
+ }
213
+ function d(e, t) {
214
+ return (...n) => {
215
+ e && t(...n);
143
216
  };
144
217
  }
145
218
  //#endregion
146
- export { b as useReceivablesWidget };
219
+ export { u as useReceivablesWidget };
@@ -59,6 +59,8 @@ var r = {
59
59
  errorTitle: "Failed to load receivables",
60
60
  errorDescription: "Something went wrong while fetching receivables. Please try again.",
61
61
  errorRetry: "Try again",
62
+ accessRestrictedTitle: "Access Restricted",
63
+ accessRestrictedDescription: "You don’t have permissions to view this page. Contact your system administrator for details.",
62
64
  statusBadge: r
63
65
  }, o = {
64
66
  ...e,