@tesouro/embedded-components-react 0.5.203 → 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 (65) hide show
  1. package/README.md +15 -14
  2. package/dist/index.css +9 -0
  3. package/dist/index.d.ts +42 -0
  4. package/dist/index.js +2 -2
  5. package/dist/lib/ProductsWidget.d.ts +4 -0
  6. package/dist/lib/ProductsWidget.js +1 -1
  7. package/dist/lib/ReceivablesWidget.d.ts +40 -0
  8. package/dist/lib/ReceivablesWidget.js +1 -1
  9. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index.js +7 -7
  10. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index2.js +26 -23
  11. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/data-access/dist/index3.js +79 -2
  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/index13.js +53 -42
  14. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index14.js +81 -283
  15. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index15.js +47 -70
  16. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index16.js +303 -99
  17. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index17.js +68 -230
  18. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index18.js +115 -0
  19. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index19.js +253 -0
  20. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index5.js +1 -1
  21. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index8.js +34 -19
  22. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/feature/dist/index9.js +14 -0
  23. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index.js +10 -9
  24. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index10.js +18 -1
  25. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index11.js +0 -3
  26. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index12.js +0 -7
  27. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index13.js +10 -0
  28. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index14.js +1 -264
  29. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index15.js +259 -67
  30. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index16.js +61 -412
  31. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index17.js +407 -89
  32. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index18.js +73 -60
  33. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index19.js +80 -331
  34. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index2.js +20 -0
  35. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index20.js +344 -0
  36. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index4.js +183 -137
  37. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index5.js +157 -20
  38. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index6.js +24 -1
  39. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index7.js +1 -3
  40. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index8.js +1 -1
  41. package/dist/libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index9.js +3 -18
  42. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index.js +1 -1
  43. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index10.js +136 -0
  44. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index4.js +5 -30
  45. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index5.js +9 -19
  46. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index6.js +22 -54
  47. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index7.js +14 -40
  48. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index8.js +57 -118
  49. package/dist/libs/tesouro-embedded-components-react/products-widget/feature/dist/index9.js +72 -0
  50. package/dist/libs/tesouro-embedded-components-react/products-widget/ui/dist/index2.js +2 -0
  51. package/dist/libs/tesouro-embedded-components-react/products-widget/ui/dist/index4.js +97 -93
  52. package/dist/libs/tesouro-embedded-components-react/products-widget/ui/dist/index5.js +35 -32
  53. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/index.js +38 -38
  54. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/@tanstack/react-query.gen.js +213 -202
  55. package/dist/libs/tesouro-embedded-components-react/shared/data-access/dist/lib/rest/sdk.gen.js +136 -116
  56. package/dist/libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js +1 -1
  57. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/data-access/dist/index10.js +8 -8
  58. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/data-access/dist/index4.js +8 -8
  59. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/data-access/dist/index9.js +8 -8
  60. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/feature/dist/lib/MeasureUnitsManagerContainer.js +79 -70
  61. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/feature/dist/lib/useMeasureUnits.js +4 -4
  62. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/ui/dist/index2.js +1 -0
  63. package/dist/libs/tesouro-embedded-components-react/shared/product-catalog/ui/dist/index4.js +109 -107
  64. package/dist/packages/shared-ui-shadcn/dist/index.js +1763 -1749
  65. package/package.json +1 -1
@@ -1,423 +1,72 @@
1
- import { Alert as e, AlertDescription as t, Button as n, Checkbox as r, Field as i, FieldContent as a, FieldLabel as o, Input as s, InputGroup as c, InputGroupAddon as l, InputGroupInput as u, Label as d, RadioGroup as f, RadioGroupItem as p, Select as m, SelectContent as h, SelectItem as g, SelectTrigger as _, SelectValue as v, Sheet as y, SheetContent as b, SheetDescription as x, SheetFooter as S, SheetHeader as C, SheetTitle as w, Spinner as T, Typography as E, cn as D } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
- import { RECEIVABLE_FORM_SHEET_LABELS_EN as O } from "./index2.js";
3
- import { ReceivableNotesSection as k } from "./index15.js";
4
- import { useId as ee } from "react";
5
- import { jsx as A, jsxs as j } from "react/jsx-runtime";
6
- import { MinusIcon as M, PlusIcon as N, Trash2Icon as P } from "lucide-react";
1
+ import { Field as e, FieldContent as t, FieldDescription as n, FieldError as r, FieldLabel as i, Textarea as a, Typography as o } from "../../../../../packages/shared-ui-shadcn/dist/index.js";
2
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
7
3
  //#region ../../libs/tesouro-embedded-components-react/invoicing-widget/ui/dist/index16.js
8
- var F = "__none__", I = "__manage__";
9
- function L({ message: e }) {
10
- return e ? /* @__PURE__ */ A("p", {
11
- className: "ttw:text-sm ttw:text-destructive",
12
- children: e
13
- }) : null;
4
+ function l({ id: l, value: u, error: d, disabled: f, label: p, optionalSuffix: m, placeholder: h, description: g, onChange: _ }) {
5
+ return /* @__PURE__ */ s(e, { children: /* @__PURE__ */ c(t, { children: [
6
+ /* @__PURE__ */ c(i, {
7
+ htmlFor: l,
8
+ className: "ttw:text-nowrap",
9
+ children: [p, /* @__PURE__ */ s(o, {
10
+ variant: "body2",
11
+ component: "span",
12
+ color: "muted",
13
+ className: "ttw:leading-snug",
14
+ children: m
15
+ })]
16
+ }),
17
+ /* @__PURE__ */ s(a, {
18
+ id: l,
19
+ value: u,
20
+ disabled: f,
21
+ placeholder: h,
22
+ className: "ttw:h-26 ttw:resize-none",
23
+ "aria-invalid": !!d,
24
+ onChange: (e) => _(e.target.value)
25
+ }),
26
+ /* @__PURE__ */ s(n, { children: g }),
27
+ /* @__PURE__ */ s(r, { errors: d ? [{ message: d }] : [] })
28
+ ] }) });
14
29
  }
15
- function te({ formId: e, lineItem: t, errors: i, controls: a, focusOnMount: o, canRemove: s, unitOptions: d, currencySymbol: f, labels: p, renderProductSelector: y, onChange: b, onCommit: x, onQuantityStep: S, onManageUnits: C, onRemove: w }) {
16
- let T = `${e}-line-${t.id}`;
17
- return /* @__PURE__ */ j("li", {
18
- className: "ttw:flex ttw:h-9 ttw:items-center ttw:gap-2.5",
30
+ function u({ idPrefix: e, openingNote: t, closingNote: n, openingNoteError: r, closingNoteError: i, disabled: a, onOpeningNoteChange: u, onClosingNoteChange: d, labels: f }) {
31
+ return /* @__PURE__ */ c("div", {
32
+ className: "ttw:flex ttw:flex-col ttw:gap-2.5 ttw:rounded-xl ttw:border ttw:border-border ttw:p-6",
19
33
  children: [
20
- /* @__PURE__ */ A("div", {
21
- className: "ttw:min-w-30 ttw:flex-1",
22
- children: y(t, {
23
- inputId: `${T}-name`,
24
- invalid: !!i?.name,
25
- focusOnMount: o
26
- })
27
- }),
28
- /* @__PURE__ */ j("div", {
29
- className: D("ttw:flex ttw:h-9 ttw:w-26 ttw:min-w-26 ttw:items-center ttw:rounded-md ttw:border ttw:border-input ttw:shadow-xs", i?.quantity && "ttw:border-destructive"),
30
- children: [
31
- /* @__PURE__ */ A("button", {
32
- type: "button",
33
- "aria-label": p.decreaseQuantityButton,
34
- disabled: a ? !a.canDecreaseQuantity : !1,
35
- className: "ttw:flex ttw:size-6 ttw:shrink-0 ttw:items-center ttw:justify-center ttw:rounded-sm ttw:text-muted-foreground ttw:hover:bg-accent ttw:disabled:pointer-events-none ttw:disabled:opacity-50",
36
- onClick: () => S(-1),
37
- children: /* @__PURE__ */ A(M, { className: "ttw:size-3.5" })
38
- }),
39
- /* @__PURE__ */ A("input", {
40
- id: `${T}-quantity`,
41
- "aria-label": p.quantityLabel,
42
- "aria-invalid": !!i?.quantity || void 0,
43
- type: "text",
44
- inputMode: "decimal",
45
- className: "ttw:h-full ttw:w-full ttw:min-w-0 ttw:bg-transparent ttw:px-0 ttw:text-center ttw:text-sm ttw:outline-none",
46
- value: t.quantity,
47
- onChange: (e) => b({ quantity: e.target.value }),
48
- onBlur: () => x("quantity")
49
- }),
50
- /* @__PURE__ */ A("button", {
51
- type: "button",
52
- "aria-label": p.increaseQuantityButton,
53
- disabled: a ? !a.canIncreaseQuantity : !1,
54
- className: "ttw:flex ttw:size-6 ttw:shrink-0 ttw:items-center ttw:justify-center ttw:rounded-sm ttw:text-muted-foreground ttw:hover:bg-accent ttw:disabled:pointer-events-none ttw:disabled:opacity-50",
55
- onClick: () => S(1),
56
- children: /* @__PURE__ */ A(N, { className: "ttw:size-3.5" })
57
- })
58
- ]
59
- }),
60
- /* @__PURE__ */ j(m, {
61
- value: t.unit || F,
62
- onValueChange: (e) => {
63
- if (e === I) {
64
- C?.();
65
- return;
66
- }
67
- b({ unit: e === F ? "" : e });
68
- },
69
- children: [/* @__PURE__ */ A(_, {
70
- id: `${T}-unit`,
71
- "aria-label": p.unitLabel,
72
- "aria-invalid": !!i?.measureUnit || void 0,
73
- className: "ttw:w-22",
74
- children: /* @__PURE__ */ A(v, {
75
- className: "ttw:truncate",
76
- placeholder: p.unitPlaceholder
77
- })
78
- }), /* @__PURE__ */ j(h, { children: [
79
- C && /* @__PURE__ */ j(g, {
80
- value: I,
81
- className: "ttw:font-semibold ttw:text-primary ttw:hover:text-primary ttw:focus:text-primary",
82
- children: [/* @__PURE__ */ A(N, { className: "ttw:text-primary" }), p.manageUnitsOption]
83
- }),
84
- /* @__PURE__ */ A(g, {
85
- value: F,
86
- children: p.unitNone
87
- }),
88
- d.map((e) => /* @__PURE__ */ A(g, {
89
- value: e.value,
90
- children: e.label
91
- }, e.value))
92
- ] })]
93
- }),
94
- /* @__PURE__ */ j(c, {
95
- className: "ttw:w-full ttw:max-w-41 ttw:min-w-29",
96
- children: [/* @__PURE__ */ A(l, {
97
- align: "inline-start",
98
- children: f
99
- }), /* @__PURE__ */ A(u, {
100
- id: `${T}-price`,
101
- "aria-label": p.priceLabel,
102
- "aria-invalid": !!i?.price || void 0,
103
- "data-has-start-addon": !0,
104
- type: "text",
105
- inputMode: "decimal",
106
- className: "ttw:text-right",
107
- value: t.price,
108
- onChange: (e) => b({ price: e.target.value }),
109
- onBlur: () => x("price")
34
+ /* @__PURE__ */ c("div", {
35
+ className: "ttw:flex ttw:flex-col ttw:gap-2.5 ttw:pb-4",
36
+ children: [/* @__PURE__ */ s(o, {
37
+ variant: "h4",
38
+ children: f.notesHeading
39
+ }), /* @__PURE__ */ s(o, {
40
+ variant: "body2",
41
+ color: "muted",
42
+ className: "ttw:font-medium",
43
+ children: f.notesDescription
110
44
  })]
111
45
  }),
112
- /* @__PURE__ */ A("div", {
113
- className: "ttw:flex ttw:w-12 ttw:min-w-12 ttw:items-center ttw:justify-center",
114
- children: /* @__PURE__ */ A(r, {
115
- id: `${T}-taxable`,
116
- "aria-label": p.taxableLabel,
117
- checked: t.taxable,
118
- onCheckedChange: (e) => b({ taxable: e === !0 })
119
- })
46
+ /* @__PURE__ */ s(l, {
47
+ id: `${e}-opening-note`,
48
+ value: t,
49
+ error: r,
50
+ disabled: a,
51
+ label: f.openingNoteLabel,
52
+ optionalSuffix: f.optionalSuffix,
53
+ placeholder: f.openingNotePlaceholder,
54
+ description: f.openingNoteDescription,
55
+ onChange: u
120
56
  }),
121
- s && /* @__PURE__ */ A(n, {
122
- type: "button",
123
- variant: "ghost",
124
- size: "sm",
125
- "aria-label": p.removeLineItemButton,
126
- className: "ttw:w-10 ttw:rounded-none ttw:border-l ttw:border-border ttw:pl-4 ttw:text-muted-foreground ttw:hover:bg-transparent ttw:hover:text-destructive ttw:has-[>svg]:pr-0",
127
- onClick: w,
128
- children: /* @__PURE__ */ A(P, {})
57
+ /* @__PURE__ */ s(l, {
58
+ id: `${e}-closing-note`,
59
+ value: n,
60
+ error: i,
61
+ disabled: a,
62
+ label: f.closingNoteLabel,
63
+ optionalSuffix: f.optionalSuffix,
64
+ placeholder: f.closingNotePlaceholder,
65
+ description: f.closingNoteDescription,
66
+ onChange: d
129
67
  })
130
68
  ]
131
69
  });
132
70
  }
133
- function R({ open: r, onOpenChange: D, mode: M = "create", values: P, errors: F, currencyOptions: I, paymentTermsOptions: R, unitOptions: ne, currencySymbol: re, lineItemControls: z, autoFocusLineItemId: B, lineItemsLoading: V, inProgress: H, customerSelector: U, renderProductSelector: W, onChange: G, onLineItemChange: K, onLineItemCommit: q, onLineItemQuantityStep: J, onTaxRateCommit: Y, onManageUnits: ie, onAddLineItem: ae, onRemoveLineItem: oe, attachmentsSection: se, cancelDisabled: ce, saveDisabled: X, onSubmit: le, onCancel: ue, labels: de }) {
134
- let Z = {
135
- ...O,
136
- ...de
137
- }, Q = ee(), $ = M === "edit", fe = P.type === "invoice" || M === "edit", pe = $ ? "ttw:grid ttw:grid-cols-3 ttw:gap-4" : "ttw:grid ttw:grid-cols-2 ttw:gap-4";
138
- return /* @__PURE__ */ A(y, {
139
- open: r,
140
- onOpenChange: D,
141
- children: /* @__PURE__ */ j(b, {
142
- className: "ttw:w-180 ttw:overflow-y-auto ttw:sm:max-w-180",
143
- children: [
144
- /* @__PURE__ */ j(C, { children: [/* @__PURE__ */ A(w, { children: M === "edit" ? Z.editTitle : Z.createTitle }), /* @__PURE__ */ A(x, {
145
- className: "ttw:sr-only",
146
- children: Z.hiddenDescription
147
- })] }),
148
- /* @__PURE__ */ A("form", {
149
- id: Q,
150
- onSubmit: (e) => {
151
- e.preventDefault(), e.stopPropagation(), le();
152
- },
153
- children: /* @__PURE__ */ j("div", {
154
- className: "ttw:flex ttw:flex-col ttw:gap-5 ttw:px-6 ttw:pb-6",
155
- children: [
156
- F?.form && /* @__PURE__ */ A("p", {
157
- role: "alert",
158
- className: "ttw:rounded-md ttw:bg-destructive/10 ttw:px-3 ttw:py-2 ttw:text-sm ttw:text-destructive",
159
- children: F.form
160
- }),
161
- /* @__PURE__ */ j("div", {
162
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
163
- children: [
164
- /* @__PURE__ */ A(d, { children: Z.documentTypeLabel }),
165
- /* @__PURE__ */ j(f, {
166
- className: "ttw:flex ttw:flex-row ttw:gap-6",
167
- disabled: M === "edit",
168
- value: P.type,
169
- onValueChange: (e) => G({ type: e }),
170
- children: [/* @__PURE__ */ j("div", {
171
- className: "ttw:flex ttw:items-center ttw:gap-2",
172
- children: [/* @__PURE__ */ A(p, {
173
- value: "invoice",
174
- id: `${Q}-invoice`
175
- }), /* @__PURE__ */ A(d, {
176
- htmlFor: `${Q}-invoice`,
177
- children: Z.typeInvoice
178
- })]
179
- }), /* @__PURE__ */ j("div", {
180
- className: "ttw:flex ttw:items-center ttw:gap-2",
181
- children: [/* @__PURE__ */ A(p, {
182
- value: "quote",
183
- id: `${Q}-quote`
184
- }), /* @__PURE__ */ A(d, {
185
- htmlFor: `${Q}-quote`,
186
- children: Z.typeQuote
187
- })]
188
- })]
189
- }),
190
- /* @__PURE__ */ A(L, { message: F?.type })
191
- ]
192
- }),
193
- /* @__PURE__ */ j("div", {
194
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
195
- children: [
196
- /* @__PURE__ */ A(d, { children: Z.customerLabel }),
197
- U,
198
- /* @__PURE__ */ A("p", {
199
- className: "ttw:text-xs ttw:text-muted-foreground",
200
- children: Z.customerHint
201
- }),
202
- /* @__PURE__ */ A(L, { message: F?.customerId })
203
- ]
204
- }),
205
- /* @__PURE__ */ j("div", {
206
- className: pe,
207
- children: [
208
- /* @__PURE__ */ j("div", {
209
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
210
- children: [
211
- /* @__PURE__ */ A(d, {
212
- htmlFor: `${Q}-currency`,
213
- children: Z.currencyLabel
214
- }),
215
- /* @__PURE__ */ j(m, {
216
- value: P.currency,
217
- onValueChange: (e) => G({ currency: e }),
218
- children: [/* @__PURE__ */ A(_, {
219
- id: `${Q}-currency`,
220
- children: /* @__PURE__ */ A(v, {})
221
- }), /* @__PURE__ */ A(h, { children: I.map((e) => /* @__PURE__ */ A(g, {
222
- value: e.value,
223
- children: e.label
224
- }, e.value)) })]
225
- }),
226
- /* @__PURE__ */ A(L, { message: F?.currency })
227
- ]
228
- }),
229
- $ && /* @__PURE__ */ j("div", {
230
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
231
- children: [
232
- /* @__PURE__ */ A(d, {
233
- htmlFor: `${Q}-issue-date`,
234
- children: Z.issueDateLabel
235
- }),
236
- /* @__PURE__ */ A(s, {
237
- id: `${Q}-issue-date`,
238
- type: "date",
239
- value: P.issueDate,
240
- onChange: (e) => G({ issueDate: e.target.value })
241
- }),
242
- /* @__PURE__ */ A(L, { message: F?.issueDate })
243
- ]
244
- }),
245
- /* @__PURE__ */ j("div", {
246
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
247
- children: [
248
- /* @__PURE__ */ A(d, {
249
- htmlFor: `${Q}-due-date`,
250
- children: Z.dueDateLabel
251
- }),
252
- /* @__PURE__ */ A(s, {
253
- id: `${Q}-due-date`,
254
- type: "date",
255
- value: P.dueDate,
256
- onChange: (e) => G({ dueDate: e.target.value })
257
- }),
258
- /* @__PURE__ */ A(L, { message: F?.dueDate })
259
- ]
260
- })
261
- ]
262
- }),
263
- fe && /* @__PURE__ */ j("div", {
264
- className: "ttw:flex ttw:flex-col ttw:gap-1.5",
265
- children: [
266
- /* @__PURE__ */ A(d, {
267
- htmlFor: `${Q}-payment-terms`,
268
- children: Z.paymentTermsLabel
269
- }),
270
- /* @__PURE__ */ j(m, {
271
- value: P.paymentTermsId || void 0,
272
- onValueChange: (e) => G({ paymentTermsId: e === "__none__" ? "" : e }),
273
- children: [/* @__PURE__ */ A(_, {
274
- id: `${Q}-payment-terms`,
275
- children: /* @__PURE__ */ A(v, { placeholder: Z.paymentTermsPlaceholder })
276
- }), /* @__PURE__ */ j(h, { children: [/* @__PURE__ */ A(g, {
277
- value: "__none__",
278
- children: Z.paymentTermsNone
279
- }), R.map((e) => /* @__PURE__ */ A(g, {
280
- value: e.value,
281
- children: e.label
282
- }, e.value))] })]
283
- }),
284
- /* @__PURE__ */ A(L, { message: F?.paymentTermsId })
285
- ]
286
- }),
287
- /* @__PURE__ */ j("div", {
288
- className: "ttw:flex ttw:flex-col ttw:gap-2.5 ttw:rounded-xl ttw:border ttw:border-border ttw:p-6",
289
- children: [
290
- /* @__PURE__ */ j("div", {
291
- className: "ttw:flex ttw:flex-col ttw:gap-2.5 ttw:pb-4",
292
- children: [/* @__PURE__ */ A(E, {
293
- variant: "h4",
294
- children: Z.lineItemsHeading
295
- }), /* @__PURE__ */ A(E, {
296
- variant: "body2",
297
- color: "muted",
298
- className: "ttw:font-medium",
299
- children: Z.lineItemsDescription
300
- })]
301
- }),
302
- F?.lineItemsSummary?.length ? /* @__PURE__ */ A(e, {
303
- variant: "destructive",
304
- className: "ttw:mb-2",
305
- children: /* @__PURE__ */ A(t, { children: /* @__PURE__ */ A("ul", { children: F.lineItemsSummary.map((e) => /* @__PURE__ */ A("li", { children: e }, e)) }) })
306
- }) : null,
307
- /* @__PURE__ */ j("ul", {
308
- className: "ttw:flex ttw:flex-col ttw:gap-2.5",
309
- children: [/* @__PURE__ */ j("li", {
310
- "aria-hidden": !0,
311
- className: "ttw:flex ttw:h-5 ttw:items-center ttw:gap-2.5 ttw:text-sm ttw:leading-5 ttw:font-medium",
312
- children: [
313
- /* @__PURE__ */ A("span", {
314
- className: "ttw:inline-flex ttw:min-w-30 ttw:flex-1 ttw:whitespace-nowrap",
315
- children: Z.productLabel
316
- }),
317
- /* @__PURE__ */ A("span", {
318
- className: "ttw:w-24 ttw:min-w-24",
319
- children: Z.quantityLabel
320
- }),
321
- /* @__PURE__ */ A("span", {
322
- className: "ttw:w-20.5 ttw:min-w-20.5",
323
- children: Z.unitLabel
324
- }),
325
- /* @__PURE__ */ A("span", {
326
- className: "ttw:w-full ttw:max-w-41 ttw:min-w-29",
327
- children: Z.priceLabel
328
- }),
329
- /* @__PURE__ */ A("span", {
330
- className: "ttw:w-12 ttw:min-w-12",
331
- children: Z.taxableLabel
332
- }),
333
- P.lineItems.length > 1 && /* @__PURE__ */ A("span", { className: "ttw:w-10 ttw:min-w-10" })
334
- ]
335
- }), V ? /* @__PURE__ */ A("li", {
336
- className: "ttw:flex ttw:h-9 ttw:items-center ttw:justify-center",
337
- children: /* @__PURE__ */ A(T, { className: "ttw:size-5" })
338
- }) : P.lineItems.map((e) => /* @__PURE__ */ A(te, {
339
- formId: Q,
340
- lineItem: e,
341
- errors: F?.lineItems?.[e.id],
342
- controls: z?.[e.id],
343
- focusOnMount: e.id === B,
344
- canRemove: P.lineItems.length > 1,
345
- unitOptions: ne,
346
- currencySymbol: re,
347
- labels: Z,
348
- renderProductSelector: W,
349
- onChange: (t) => K(e.id, t),
350
- onCommit: (t) => q(e.id, t),
351
- onQuantityStep: (t) => J(e.id, t),
352
- onManageUnits: ie,
353
- onRemove: () => oe(e.id)
354
- }, e.id))]
355
- }),
356
- /* @__PURE__ */ j(n, {
357
- type: "button",
358
- variant: "ghost",
359
- className: "ttw:w-fit ttw:text-primary ttw:hover:text-primary",
360
- onClick: ae,
361
- children: [/* @__PURE__ */ A(N, { className: "ttw:size-5 ttw:text-primary" }), Z.addLineItemButton]
362
- }),
363
- /* @__PURE__ */ A(i, { children: /* @__PURE__ */ j(a, {
364
- className: "ttw:flex-row ttw:justify-end",
365
- children: [/* @__PURE__ */ A(o, {
366
- htmlFor: `${Q}-tax-rate`,
367
- children: Z.taxRateLabel
368
- }), /* @__PURE__ */ j(c, {
369
- className: "ttw:w-40 ttw:has-[>[data-align=inline-end]]:[&>input]:pr-0",
370
- children: [/* @__PURE__ */ A(u, {
371
- id: `${Q}-tax-rate`,
372
- className: "ttw:text-right",
373
- placeholder: Z.taxRatePlaceholder,
374
- type: "text",
375
- inputMode: "decimal",
376
- value: P.taxRate,
377
- onChange: (e) => G({ taxRate: e.target.value }),
378
- onBlur: Y
379
- }), /* @__PURE__ */ A(l, {
380
- align: "inline-end",
381
- children: Z.taxRateSuffix
382
- })]
383
- })]
384
- }) })
385
- ]
386
- }),
387
- /* @__PURE__ */ A(k, {
388
- idPrefix: Q,
389
- openingNote: P.openingNote,
390
- closingNote: P.closingNote,
391
- openingNoteError: F?.openingNote,
392
- closingNoteError: F?.closingNote,
393
- disabled: H,
394
- onOpeningNoteChange: (e) => G({ openingNote: e }),
395
- onClosingNoteChange: (e) => G({ closingNote: e }),
396
- labels: Z
397
- }),
398
- se
399
- ]
400
- })
401
- }),
402
- /* @__PURE__ */ A(S, { children: /* @__PURE__ */ j("div", {
403
- className: "ttw:flex ttw:justify-end ttw:gap-2",
404
- children: [/* @__PURE__ */ A(n, {
405
- type: "button",
406
- variant: "ghost",
407
- disabled: ce,
408
- onClick: ue,
409
- children: Z.cancelButton
410
- }), /* @__PURE__ */ A(n, {
411
- type: "submit",
412
- form: Q,
413
- loading: H,
414
- disabled: X,
415
- children: M === "edit" ? Z.updateButton : Z.createButton
416
- })]
417
- }) })
418
- ]
419
- })
420
- });
421
- }
422
71
  //#endregion
423
- export { R as ReceivableFormSheet, R as default };
72
+ export { u as ReceivableNotesSection };