@tesouro/embedded-components-react 0.5.204 → 0.5.205

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 (44) hide show
  1. package/README.md +15 -14
  2. package/dist/index.d.ts +38 -0
  3. package/dist/index.js +1 -1
  4. package/dist/lib/ReceivablesWidget.d.ts +38 -0
  5. package/dist/lib/ReceivablesWidget.js +1 -1
  6. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index.js +7 -7
  7. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index2.js +26 -23
  8. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index3.js +79 -2
  9. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index.js +1 -1
  10. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index13.js +53 -42
  11. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index14.js +81 -283
  12. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index15.js +47 -70
  13. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index16.js +303 -99
  14. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index17.js +68 -230
  15. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index18.js +115 -0
  16. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index19.js +253 -0
  17. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index5.js +1 -1
  18. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index8.js +34 -19
  19. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index9.js +14 -0
  20. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index.js +10 -9
  21. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index10.js +18 -1
  22. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index11.js +0 -3
  23. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index12.js +0 -7
  24. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index13.js +10 -0
  25. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index14.js +1 -264
  26. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index15.js +259 -67
  27. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index16.js +61 -412
  28. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index17.js +407 -89
  29. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index18.js +73 -60
  30. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index19.js +80 -331
  31. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index2.js +20 -0
  32. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index20.js +344 -0
  33. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index4.js +183 -137
  34. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index5.js +157 -20
  35. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index6.js +24 -1
  36. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index7.js +1 -3
  37. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index8.js +1 -1
  38. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index9.js +3 -18
  39. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/index.js +38 -38
  40. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/@tanstack/react-query.gen.js +213 -202
  41. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/sdk.gen.js +136 -116
  42. package/dist/libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js +1 -1
  43. package/dist/packages/shared-ui-shadcn/dist/index.js +1763 -1749
  44. package/package.json +1 -1
@@ -1,93 +1,106 @@
1
- import { Button as e, Dialog as t, DialogContent as n, DialogDescription as r, DialogFooter as i, DialogHeader as a, DialogTitle as o, Input as s, Label as c, Textarea as l } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
- import { RECEIVABLE_SEND_DIALOG_LABELS_EN as u } from "./index2.js";
3
- import { jsx as d, jsxs as f } from "react/jsx-runtime";
1
+ import { Button as e, Dialog as t, DialogContent as n, DialogDescription as r, DialogFooter as i, DialogHeader as a, DialogTitle as o, Input as s, Label as c, RadioGroup as l, RadioGroupItem as u, Textarea as d } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
+ import { RECEIVABLE_PAYMENT_DIALOG_LABELS_EN as f } from "./index2.js";
3
+ import { jsx as p, jsxs as m } from "react/jsx-runtime";
4
4
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index18.js
5
- function p({ message: e }) {
6
- return e ? /* @__PURE__ */ d("p", {
5
+ function h({ message: e }) {
6
+ return e ? /* @__PURE__ */ p("p", {
7
7
  className: "ttw:text-sm ttw:text-destructive",
8
8
  children: e
9
9
  }) : null;
10
10
  }
11
- function m({ open: m, onOpenChange: h, values: g, errors: _, inProgress: v, onChange: y, onSubmit: b, onCancel: x, labels: S }) {
12
- let C = {
13
- ...u,
14
- ...S
11
+ function g({ open: g, onOpenChange: _, values: v, errors: y, inProgress: b, onChange: x, onSubmit: S, onCancel: C, labels: w }) {
12
+ let T = {
13
+ ...f,
14
+ ...w
15
15
  };
16
- return /* @__PURE__ */ d(t, {
17
- open: m,
18
- onOpenChange: h,
19
- children: /* @__PURE__ */ f(n, { children: [
20
- /* @__PURE__ */ f(a, { children: [/* @__PURE__ */ d(o, { children: C.title }), /* @__PURE__ */ d(r, { children: C.description })] }),
21
- /* @__PURE__ */ f("div", {
16
+ return /* @__PURE__ */ p(t, {
17
+ open: g,
18
+ onOpenChange: _,
19
+ children: /* @__PURE__ */ m(n, { children: [
20
+ /* @__PURE__ */ m(a, { children: [/* @__PURE__ */ p(o, { children: T.title }), /* @__PURE__ */ p(r, { children: T.description })] }),
21
+ /* @__PURE__ */ m("div", {
22
22
  className: "ttw:flex ttw:flex-col ttw:gap-4",
23
23
  children: [
24
- _?.form && /* @__PURE__ */ d("p", {
24
+ y?.form && /* @__PURE__ */ p("p", {
25
25
  className: "ttw:rounded-md ttw:bg-destructive/10 ttw:px-3 ttw:py-2 ttw:text-sm ttw:text-destructive",
26
- children: _.form
26
+ children: y.form
27
27
  }),
28
- /* @__PURE__ */ f("div", {
28
+ /* @__PURE__ */ m("div", {
29
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
30
+ children: [/* @__PURE__ */ p(c, { children: T.modeLabel }), /* @__PURE__ */ m(l, {
31
+ className: "ttw:flex ttw:flex-row ttw:gap-6",
32
+ value: v.mode,
33
+ onValueChange: (e) => x({ mode: e }),
34
+ children: [/* @__PURE__ */ m("div", {
35
+ className: "ttw:flex ttw:items-center ttw:gap-2",
36
+ children: [/* @__PURE__ */ p(u, {
37
+ value: "full",
38
+ id: "receivable-payment-full"
39
+ }), /* @__PURE__ */ p(c, {
40
+ htmlFor: "receivable-payment-full",
41
+ children: T.fullPayment
42
+ })]
43
+ }), /* @__PURE__ */ m("div", {
44
+ className: "ttw:flex ttw:items-center ttw:gap-2",
45
+ children: [/* @__PURE__ */ p(u, {
46
+ value: "partial",
47
+ id: "receivable-payment-partial"
48
+ }), /* @__PURE__ */ p(c, {
49
+ htmlFor: "receivable-payment-partial",
50
+ children: T.partialPayment
51
+ })]
52
+ })]
53
+ })]
54
+ }),
55
+ v.mode === "partial" && /* @__PURE__ */ m("div", {
29
56
  className: "ttw:flex ttw:flex-col ttw:gap-1.5",
30
57
  children: [
31
- /* @__PURE__ */ d(c, { children: C.toLabel }),
32
- /* @__PURE__ */ d(s, {
33
- value: g.to,
34
- onChange: (e) => y({ to: e.target.value })
58
+ /* @__PURE__ */ p(c, { children: T.amountPaidLabel }),
59
+ /* @__PURE__ */ p(s, {
60
+ inputMode: "decimal",
61
+ value: v.amountPaid,
62
+ onChange: (e) => x({ amountPaid: e.target.value })
35
63
  }),
36
- /* @__PURE__ */ d(p, { message: _?.to })
64
+ /* @__PURE__ */ p(h, { message: y?.amountPaid })
37
65
  ]
38
66
  }),
39
- /* @__PURE__ */ f("div", {
40
- className: "ttw:grid ttw:grid-cols-2 ttw:gap-4",
41
- children: [/* @__PURE__ */ f("div", {
42
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
43
- children: [/* @__PURE__ */ d(c, { children: C.ccLabel }), /* @__PURE__ */ d(s, {
44
- value: g.cc,
45
- onChange: (e) => y({ cc: e.target.value })
46
- })]
47
- }), /* @__PURE__ */ f("div", {
48
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
49
- children: [/* @__PURE__ */ d(c, { children: C.bccLabel }), /* @__PURE__ */ d(s, {
50
- value: g.bcc,
51
- onChange: (e) => y({ bcc: e.target.value })
52
- })]
53
- })]
54
- }),
55
- /* @__PURE__ */ f("div", {
67
+ v.mode === "full" && /* @__PURE__ */ m("div", {
56
68
  className: "ttw:flex ttw:flex-col ttw:gap-1.5",
57
69
  children: [
58
- /* @__PURE__ */ d(c, { children: C.subjectLabel }),
59
- /* @__PURE__ */ d(s, {
60
- value: g.subject,
61
- onChange: (e) => y({ subject: e.target.value })
70
+ /* @__PURE__ */ p(c, { children: T.paidAtLabel }),
71
+ /* @__PURE__ */ p(s, {
72
+ type: "date",
73
+ value: v.paidAt,
74
+ onChange: (e) => x({ paidAt: e.target.value })
62
75
  }),
63
- /* @__PURE__ */ d(p, { message: _?.subject })
76
+ /* @__PURE__ */ p(h, { message: y?.paidAt })
64
77
  ]
65
78
  }),
66
- /* @__PURE__ */ f("div", {
79
+ /* @__PURE__ */ m("div", {
67
80
  className: "ttw:flex ttw:flex-col ttw:gap-1.5",
68
81
  children: [
69
- /* @__PURE__ */ d(c, { children: C.bodyLabel }),
70
- /* @__PURE__ */ d(l, {
71
- rows: 6,
72
- value: g.body,
73
- onChange: (e) => y({ body: e.target.value })
82
+ /* @__PURE__ */ p(c, { children: T.commentLabel }),
83
+ /* @__PURE__ */ p(d, {
84
+ rows: 3,
85
+ value: v.comment,
86
+ onChange: (e) => x({ comment: e.target.value })
74
87
  }),
75
- /* @__PURE__ */ d(p, { message: _?.body })
88
+ /* @__PURE__ */ p(h, { message: y?.comment })
76
89
  ]
77
90
  })
78
91
  ]
79
92
  }),
80
- /* @__PURE__ */ f(i, { children: [/* @__PURE__ */ d(e, {
93
+ /* @__PURE__ */ m(i, { children: [/* @__PURE__ */ p(e, {
81
94
  variant: "ghost",
82
- onClick: x,
83
- children: C.cancelButton
84
- }), /* @__PURE__ */ d(e, {
85
- loading: v,
86
- onClick: b,
87
- children: C.sendButton
95
+ onClick: C,
96
+ children: T.cancelButton
97
+ }), /* @__PURE__ */ p(e, {
98
+ loading: b,
99
+ onClick: S,
100
+ children: T.submitButton
88
101
  })] })
89
102
  ] })
90
103
  });
91
104
  }
92
105
  //#endregion
93
- export { m as ReceivableSendDialog, m as default };
106
+ export { g as ReceivablePaymentDialog, g as default };
@@ -1,344 +1,93 @@
1
- import { Button as e, DataTable as t, DropdownMenu as n, DropdownMenuContent as r, DropdownMenuItem as i, DropdownMenuTrigger as a, Input as o, Select as s, SelectContent as c, SelectItem as l, SelectTrigger as u, SelectValue as d, Tabs as f, TabsList as p, TabsTrigger as m } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
- import { EmptyState as h } from "../../../shared/ui/dist/lib/EmptyState/EmptyState.js";
3
- import { ErrorState as g } from "../../../shared/ui/dist/lib/ErrorState/ErrorState.js";
4
- import "../../../shared/ui/dist/index.js";
5
- import { RECEIVABLES_SCREEN_LABELS_EN as _ } from "./index2.js";
6
- import { ReceivableStatusBadge as v } from "./index5.js";
7
- import { jsx as y, jsxs as b } from "react/jsx-runtime";
8
- import { ArrowDownIcon as x, ArrowUpDownIcon as S, ArrowUpIcon as C, MoreHorizontalIcon as w, PlusIcon as T, SearchIcon as E, SettingsIcon as D } from "lucide-react";
1
+ import { Button as e, Dialog as t, DialogContent as n, DialogDescription as r, DialogFooter as i, DialogHeader as a, DialogTitle as o, Input as s, Label as c, Textarea as l } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
+ import { RECEIVABLE_SEND_DIALOG_LABELS_EN as u } from "./index2.js";
3
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
9
4
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index19.js
10
- var O = [
11
- 10,
12
- 25,
13
- 50,
14
- 100
15
- ], k = "all";
16
- function A({ label: t, ariaLabel: n, column: r }) {
17
- let i = r.getIsSorted();
18
- return /* @__PURE__ */ b("div", {
19
- className: "ttw:flex ttw:items-center ttw:gap-2 ttw:text-inherit",
20
- children: [t, /* @__PURE__ */ y(e, {
21
- variant: "ghost",
22
- size: "icon-sm",
23
- "aria-label": n,
24
- onClick: () => r.toggleSorting(i === "asc"),
25
- children: y(i === "asc" ? C : i === "desc" ? x : S, { className: "ttw:size-4" })
26
- })]
27
- });
28
- }
29
- function j({ labels: e, searchValue: t, onSearchChange: n, statusFilter: r, statusOptions: i, onStatusFilterChange: a }) {
30
- return /* @__PURE__ */ b("div", {
31
- className: "ttw:flex ttw:flex-wrap ttw:items-center ttw:gap-2 ttw:px-4",
32
- children: [/* @__PURE__ */ b("div", {
33
- className: "ttw:relative ttw:w-80",
34
- children: [/* @__PURE__ */ y(E, { className: "ttw:pointer-events-none ttw:absolute ttw:left-3 ttw:top-1/2 ttw:size-4 ttw:-translate-y-1/2 ttw:text-muted-foreground" }), /* @__PURE__ */ y(o, {
35
- className: "ttw:pl-9",
36
- placeholder: e.searchPlaceholder,
37
- value: t,
38
- onChange: (e) => n(e.target.value)
39
- })]
40
- }), /* @__PURE__ */ b(s, {
41
- value: r,
42
- onValueChange: a,
43
- children: [/* @__PURE__ */ y(u, {
44
- "aria-label": e.columnStatus,
45
- className: "ttw:w-48",
46
- children: /* @__PURE__ */ y(d, {})
47
- }), /* @__PURE__ */ b(c, { children: [/* @__PURE__ */ y(l, {
48
- value: k,
49
- children: e.statusFilterAll
50
- }), i.map((t) => /* @__PURE__ */ y(l, {
51
- value: t.value,
52
- children: N(t, e.statusBadge)
53
- }, t.value))] })]
54
- })]
55
- });
56
- }
57
- function M({ enabled: e, label: t, action: n, row: r, onActionClick: a, variant: o }) {
58
- return e ? /* @__PURE__ */ y(i, {
59
- variant: o,
60
- onClick: (e) => {
61
- e.stopPropagation(), a(n, r);
62
- },
63
- children: t
5
+ function p({ message: e }) {
6
+ return e ? /* @__PURE__ */ d("p", {
7
+ className: "ttw:text-sm ttw:text-destructive",
8
+ children: e
64
9
  }) : null;
65
10
  }
66
- function N(e, t) {
67
- return t[e.value] ?? e.label;
68
- }
69
- function P({ rows: i, activeTab: o, enabledTabs: s, onTabChange: c, isLoading: l, isError: u, sorting: d, onSortingChange: x, pageSize: S, onPageSizeChange: C, pageSizeOptions: E = O, pageInfo: k, hasNextPage: N, hasPrevPage: P, onNextPage: F, onPrevPage: I, searchValue: L, onSearchChange: R, statusFilter: z, statusOptions: B, onStatusFilterChange: V, isFiltering: H, onCreateClick: U, onTemplateSettingsClick: W, onRowClick: G, onActionClick: K, onRetry: q, labels: J }) {
70
- let Y = {
71
- ..._,
72
- ...J,
73
- statusBadge: {
74
- ..._.statusBadge,
75
- ...J?.statusBadge
76
- }
11
+ function m({ open: m, onOpenChange: h, values: g, errors: _, inProgress: v, onChange: y, onSubmit: b, onCancel: x, labels: S }) {
12
+ let C = {
13
+ ...u,
14
+ ...S
77
15
  };
78
- return /* @__PURE__ */ b("div", {
79
- className: "ttw:flex ttw:flex-col ttw:gap-4",
80
- children: [/* @__PURE__ */ b("div", {
81
- className: "ttw:flex ttw:flex-wrap ttw:items-center ttw:justify-between ttw:gap-3",
82
- children: [/* @__PURE__ */ y("div", {
83
- className: "ttw:flex ttw:items-center ttw:gap-3",
84
- children: /* @__PURE__ */ y(f, {
85
- value: o,
86
- onValueChange: (e) => c(e),
87
- children: /* @__PURE__ */ b(p, { children: [
88
- s.includes("invoices") && /* @__PURE__ */ y(m, {
89
- value: "invoices",
90
- children: Y.tabInvoices
91
- }),
92
- s.includes("quotes") && /* @__PURE__ */ y(m, {
93
- value: "quotes",
94
- children: Y.tabQuotes
95
- }),
96
- s.includes("credit_notes") && /* @__PURE__ */ y(m, {
97
- value: "credit_notes",
98
- children: Y.tabCreditNotes
99
- })
100
- ] })
101
- })
102
- }), /* @__PURE__ */ b("div", {
103
- className: "ttw:flex ttw:items-center ttw:gap-2",
104
- children: [W && /* @__PURE__ */ b(e, {
105
- variant: "outline",
106
- onClick: W,
107
- children: [/* @__PURE__ */ y(D, { className: "ttw:size-4" }), Y.templateSettingsButton]
108
- }), /* @__PURE__ */ b(e, {
109
- onClick: U,
110
- children: [/* @__PURE__ */ y(T, { className: "ttw:size-4" }), Y.createButton]
111
- })]
112
- })]
113
- }), u ? /* @__PURE__ */ y(g, {
114
- title: Y.errorTitle,
115
- description: Y.errorDescription,
116
- retryLabel: q ? Y.errorRetry : void 0,
117
- onRetry: q
118
- }) : /* @__PURE__ */ y(t, {
119
- columns: [
120
- {
121
- accessorKey: "documentLabel",
122
- enableSorting: !0,
123
- header: ({ column: e }) => /* @__PURE__ */ y(A, {
124
- column: e,
125
- label: Y.columnDocument,
126
- ariaLabel: Y.sortByDocument
127
- }),
128
- cell: ({ row: e }) => /* @__PURE__ */ b("div", {
129
- className: "ttw:flex ttw:flex-col ttw:gap-1",
130
- children: [/* @__PURE__ */ y("span", {
131
- className: "ttw:font-medium",
132
- children: e.original.documentLabel
133
- }), /* @__PURE__ */ y("span", {
134
- className: "ttw:text-xs ttw:text-muted-foreground",
135
- children: e.original.type === "credit_note" ? Y.tabCreditNotes : e.original.type === "quote" ? Y.tabQuotes : Y.tabInvoices
136
- })]
137
- }),
138
- minSize: 180
139
- },
140
- {
141
- accessorKey: "customerLabel",
142
- enableSorting: !0,
143
- header: ({ column: e }) => /* @__PURE__ */ y(A, {
144
- column: e,
145
- label: Y.columnCustomer,
146
- ariaLabel: Y.sortByCustomer
16
+ return /* @__PURE__ */ d(t, {
17
+ open: m,
18
+ onOpenChange: h,
19
+ children: /* @__PURE__ */ f(n, { children: [
20
+ /* @__PURE__ */ f(a, { children: [/* @__PURE__ */ d(o, { children: C.title }), /* @__PURE__ */ d(r, { children: C.description })] }),
21
+ /* @__PURE__ */ f("div", {
22
+ className: "ttw:flex ttw:flex-col ttw:gap-4",
23
+ children: [
24
+ _?.form && /* @__PURE__ */ d("p", {
25
+ className: "ttw:rounded-md ttw:bg-destructive/10 ttw:px-3 ttw:py-2 ttw:text-sm ttw:text-destructive",
26
+ children: _.form
147
27
  }),
148
- minSize: 180
149
- },
150
- {
151
- accessorKey: "status",
152
- header: ({ column: e }) => /* @__PURE__ */ y(A, {
153
- column: e,
154
- label: Y.columnStatus,
155
- ariaLabel: Y.sortByStatus
28
+ /* @__PURE__ */ f("div", {
29
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
30
+ children: [
31
+ /* @__PURE__ */ d(c, { children: C.toLabel }),
32
+ /* @__PURE__ */ d(s, {
33
+ value: g.to,
34
+ onChange: (e) => y({ to: e.target.value })
35
+ }),
36
+ /* @__PURE__ */ d(p, { message: _?.to })
37
+ ]
156
38
  }),
157
- cell: ({ row: e }) => /* @__PURE__ */ y(v, {
158
- status: e.original.status,
159
- tone: e.original.statusTone,
160
- labels: Y.statusBadge
161
- })
162
- },
163
- {
164
- accessorKey: "issueDateLabel",
165
- enableSorting: !0,
166
- header: ({ column: e }) => /* @__PURE__ */ y(A, {
167
- column: e,
168
- label: Y.columnIssueDate,
169
- ariaLabel: Y.sortByIssueDate
170
- })
171
- },
172
- {
173
- accessorKey: "dueDateLabel",
174
- enableSorting: !0,
175
- header: ({ column: e }) => /* @__PURE__ */ y(A, {
176
- column: e,
177
- label: Y.columnDueDate,
178
- ariaLabel: Y.sortByDueDate
179
- })
180
- },
181
- {
182
- accessorKey: "totalLabel",
183
- enableSorting: !0,
184
- header: ({ column: e }) => /* @__PURE__ */ y("div", {
185
- className: "ttw:flex ttw:justify-end",
186
- children: /* @__PURE__ */ y(A, {
187
- column: e,
188
- label: Y.columnTotal,
189
- ariaLabel: Y.sortByTotal
190
- })
39
+ /* @__PURE__ */ f("div", {
40
+ className: "ttw:grid ttw:grid-cols-2 ttw:gap-4",
41
+ children: [/* @__PURE__ */ f("div", {
42
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
43
+ children: [/* @__PURE__ */ d(c, { children: C.ccLabel }), /* @__PURE__ */ d(s, {
44
+ value: g.cc,
45
+ onChange: (e) => y({ cc: e.target.value })
46
+ })]
47
+ }), /* @__PURE__ */ f("div", {
48
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
49
+ children: [/* @__PURE__ */ d(c, { children: C.bccLabel }), /* @__PURE__ */ d(s, {
50
+ value: g.bcc,
51
+ onChange: (e) => y({ bcc: e.target.value })
52
+ })]
53
+ })]
191
54
  }),
192
- cell: ({ row: e }) => /* @__PURE__ */ y("div", {
193
- className: "ttw:text-right",
194
- children: e.original.totalLabel
195
- })
196
- },
197
- {
198
- accessorKey: "amountDueLabel",
199
- header: () => /* @__PURE__ */ y("div", {
200
- className: "ttw:text-right",
201
- children: Y.columnAmountDue
55
+ /* @__PURE__ */ f("div", {
56
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
57
+ children: [
58
+ /* @__PURE__ */ d(c, { children: C.subjectLabel }),
59
+ /* @__PURE__ */ d(s, {
60
+ value: g.subject,
61
+ onChange: (e) => y({ subject: e.target.value })
62
+ }),
63
+ /* @__PURE__ */ d(p, { message: _?.subject })
64
+ ]
202
65
  }),
203
- cell: ({ row: e }) => /* @__PURE__ */ y("div", {
204
- className: "ttw:text-right",
205
- children: e.original.amountDueLabel
66
+ /* @__PURE__ */ f("div", {
67
+ className: "ttw:flex ttw:flex-col ttw:gap-1.5",
68
+ children: [
69
+ /* @__PURE__ */ d(c, { children: C.bodyLabel }),
70
+ /* @__PURE__ */ d(l, {
71
+ rows: 6,
72
+ value: g.body,
73
+ onChange: (e) => y({ body: e.target.value })
74
+ }),
75
+ /* @__PURE__ */ d(p, { message: _?.body })
76
+ ]
206
77
  })
207
- },
208
- {
209
- id: "actions",
210
- header: () => /* @__PURE__ */ y("span", {
211
- className: "ttw:sr-only",
212
- children: Y.columnActions
213
- }),
214
- cell: ({ row: t }) => /* @__PURE__ */ y("div", {
215
- className: "ttw:flex ttw:justify-end",
216
- children: /* @__PURE__ */ b(n, { children: [/* @__PURE__ */ y(a, {
217
- asChild: !0,
218
- children: /* @__PURE__ */ y(e, {
219
- variant: "ghost",
220
- size: "icon-sm",
221
- "aria-label": Y.columnActions,
222
- onClick: (e) => e.stopPropagation(),
223
- children: /* @__PURE__ */ y(w, { className: "ttw:size-4" })
224
- })
225
- }), /* @__PURE__ */ b(r, {
226
- align: "end",
227
- children: [
228
- /* @__PURE__ */ y(M, {
229
- enabled: t.original.actions.edit,
230
- label: Y.actionEdit,
231
- action: "edit",
232
- row: t.original,
233
- onActionClick: K
234
- }),
235
- /* @__PURE__ */ y(M, {
236
- enabled: t.original.actions.issue,
237
- label: Y.actionIssue,
238
- action: "issue",
239
- row: t.original,
240
- onActionClick: K
241
- }),
242
- /* @__PURE__ */ y(M, {
243
- enabled: t.original.actions.send,
244
- label: Y.actionSend,
245
- action: "send",
246
- row: t.original,
247
- onActionClick: K
248
- }),
249
- /* @__PURE__ */ y(M, {
250
- enabled: t.original.actions.recordPayment,
251
- label: Y.actionRecordPayment,
252
- action: "recordPayment",
253
- row: t.original,
254
- onActionClick: K
255
- }),
256
- /* @__PURE__ */ y(M, {
257
- enabled: t.original.actions.markPaid,
258
- label: Y.actionMarkPaid,
259
- action: "markPaid",
260
- row: t.original,
261
- onActionClick: K
262
- }),
263
- /* @__PURE__ */ y(M, {
264
- enabled: t.original.actions.markUncollectible,
265
- label: Y.actionMarkUncollectible,
266
- action: "markUncollectible",
267
- row: t.original,
268
- onActionClick: K
269
- }),
270
- /* @__PURE__ */ y(M, {
271
- enabled: t.original.actions.accept,
272
- label: Y.actionAccept,
273
- action: "accept",
274
- row: t.original,
275
- onActionClick: K
276
- }),
277
- /* @__PURE__ */ y(M, {
278
- enabled: t.original.actions.decline,
279
- label: Y.actionDecline,
280
- action: "decline",
281
- row: t.original,
282
- onActionClick: K
283
- }),
284
- /* @__PURE__ */ y(M, {
285
- enabled: t.original.actions.cancel,
286
- label: Y.actionCancel,
287
- action: "cancel",
288
- row: t.original,
289
- onActionClick: K
290
- }),
291
- /* @__PURE__ */ y(M, {
292
- enabled: t.original.actions.clone,
293
- label: Y.actionClone,
294
- action: "clone",
295
- row: t.original,
296
- onActionClick: K
297
- }),
298
- /* @__PURE__ */ y(M, {
299
- enabled: t.original.actions.delete,
300
- label: Y.actionDelete,
301
- action: "delete",
302
- row: t.original,
303
- onActionClick: K,
304
- variant: "destructive"
305
- })
306
- ]
307
- })] })
308
- }),
309
- size: 72
310
- }
311
- ],
312
- data: i,
313
- isLoading: l,
314
- sorting: d,
315
- onSortingChange: x,
316
- pageSize: S,
317
- onPageSizeChange: C,
318
- pageSizeOptions: E,
319
- pageInfo: k,
320
- hasNextPage: N,
321
- hasPrevPage: P,
322
- onNextPage: F,
323
- onPrevPage: I,
324
- onRowClick: G,
325
- rowAriaLabel: (e) => Y.openRow(e.documentLabel),
326
- filterComponent: /* @__PURE__ */ y(j, {
327
- labels: Y,
328
- searchValue: L,
329
- onSearchChange: R,
330
- statusFilter: z,
331
- statusOptions: B,
332
- onStatusFilterChange: V
78
+ ]
333
79
  }),
334
- children: /* @__PURE__ */ y(h, {
335
- title: H ? Y.filterEmptyTitle : Y.emptyTitle,
336
- description: H ? Y.filterEmptyDescription : Y.emptyDescription,
337
- actionLabel: H ? void 0 : Y.emptyAction,
338
- onAction: H ? void 0 : U
339
- })
340
- })]
80
+ /* @__PURE__ */ f(i, { children: [/* @__PURE__ */ d(e, {
81
+ variant: "ghost",
82
+ onClick: x,
83
+ children: C.cancelButton
84
+ }), /* @__PURE__ */ d(e, {
85
+ loading: v,
86
+ onClick: b,
87
+ children: C.sendButton
88
+ })] })
89
+ ] })
341
90
  });
342
91
  }
343
92
  //#endregion
344
- export { P as ReceivablesScreen, P as default };
93
+ export { m as ReceivableSendDialog, m as default };
@@ -102,6 +102,26 @@ var e = {
102
102
  closingNoteLabel: "Closing note to the customer",
103
103
  closingNotePlaceholder: "e.g., Thank you for your business!",
104
104
  closingNoteDescription: "Appears below your line items. Commonly used for thank you messages or payment instructions.",
105
+ bankAccountHeading: "Payment instructions",
106
+ bankAccountDescription: "Tells the customer how they can pay you. We'll include the selected info on the invoice",
107
+ bankAccountLabel: "Bank account",
108
+ bankAccountHint: "Display your bank account number and routing number",
109
+ bankAccountSelectorLabel: "Bank account selector",
110
+ bankAccountPlaceholder: "Select bank account",
111
+ bankAccountAddOption: "Add a new account",
112
+ bankAccountFormHeading: "Add a bank account",
113
+ bankAccountRoutingNumberLabel: "Routing number",
114
+ bankAccountRoutingNumberPlaceholder: "e.g. 123456789",
115
+ bankAccountAccountNumberLabel: "Account number",
116
+ bankAccountAccountNumberPlaceholder: "e.g. 123456789",
117
+ bankAccountHolderNameLabel: "Account holder name",
118
+ bankAccountHolderNamePlaceholder: "e.g. James Smith",
119
+ bankAccountNicknameLabel: "Account nickname",
120
+ bankAccountNicknamePlaceholder: "e.g. Empire Bank Checking",
121
+ bankAccountCancelButton: "Cancel",
122
+ bankAccountSaveButton: "Save account",
123
+ bankAccountRestrictedTitle: "There are no bank accounts on file for this account",
124
+ bankAccountRestrictedDescription: "A bank account is required in order to issue invoices. Contact your company admin to set one up.",
105
125
  attachmentsHeading: "Attachments",
106
126
  attachmentsDescription: "Associate additional documents with this invoice for your own reference or to share with the customer. e.g. contracts, photos, terms and conditions, etc.",
107
127
  attachmentsDropPrompt: "Drop your files here, or",