@alfadocs/ui-kit 0.41.2 → 0.42.0

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 (146) hide show
  1. package/dist/_chunks/address-autocomplete-CSjMrBvu.js +358 -0
  2. package/dist/_chunks/{alia-sidebar-DXsYPinm.js → alia-sidebar-BpX4z_af.js} +2 -2
  3. package/dist/_chunks/{bmi-calculator-DnEr513I.js → bmi-calculator-D4juUcyF.js} +57 -51
  4. package/dist/_chunks/{breadcrumb-CLlhx7qo.js → breadcrumb-OTbaY70e.js} +4 -4
  5. package/dist/_chunks/cycle-calculator-DsZbyzX6.js +191 -0
  6. package/dist/_chunks/{document-scanner-CqS_klIr.js → document-scanner-BqLsGs4Y.js} +7 -7
  7. package/dist/_chunks/{dropdown-menu-BC5ZdOMo.js → dropdown-menu-CUEXqKis.js} +2 -2
  8. package/dist/_chunks/{due-date-calculator-CUspKSTw.js → due-date-calculator-s_CBgaFs.js} +53 -40
  9. package/dist/_chunks/{editable-currency-cell-renderer-DgkCIIcO.js → editable-currency-cell-renderer-BhUkRiPZ.js} +2 -2
  10. package/dist/_chunks/{freemium-paywall-BAk3a6er.js → freemium-paywall-BLXESpH4.js} +2 -2
  11. package/dist/_chunks/{gestational-age-calculator-CsQ05qDy.js → gestational-age-calculator-CWOG3bkI.js} +56 -43
  12. package/dist/_chunks/{header-settings-CBLwUK6t.js → header-settings-Bx0Biimh.js} +2 -2
  13. package/dist/_chunks/index.modern-D2LGACWg.js +1529 -0
  14. package/dist/_chunks/insert-result-DtQQeSSf.js +227 -0
  15. package/dist/_chunks/{kbd-Cglkd7CY.js → kbd-D855ZXIW.js} +2 -2
  16. package/dist/_chunks/map-view-Tb5VfK9Y.js +333 -0
  17. package/dist/_chunks/marketplace-app-shell-kVAVycz_.js +391 -0
  18. package/dist/_chunks/{patient-search-CBq62kmL.js → patient-search-DPe2ZYEL.js} +2 -2
  19. package/dist/_chunks/{patient-shell-DF81lALv.js → patient-shell-lDX3wwu6.js} +2 -2
  20. package/dist/_chunks/{payment-form-Dy3WIIsC.js → payment-form-BzVsG6Ks.js} +5 -5
  21. package/dist/_chunks/{pdf-viewer-Cy6Ul3hZ.js → pdf-viewer-B6MC6VTx.js} +139 -126
  22. package/dist/_chunks/{practice-results-C0d4IL5E.js → practice-results-CrLpEiiW.js} +4 -4
  23. package/dist/_chunks/pregnancy-weight-gain-B7kBK-ZR.js +223 -0
  24. package/dist/_chunks/{public-header.agent-B2dDg2_d.js → public-header.agent-BY6FH71R.js} +2 -2
  25. package/dist/_chunks/radio-group-CLjK-SlK.js +167 -0
  26. package/dist/_chunks/{rich-text-editor-DLbg2852.js → rich-text-editor-DhGIBd4a.js} +10 -10
  27. package/dist/_chunks/{sheet-BV-yuLE2.js → sheet-xbzu4YiY.js} +7 -7
  28. package/dist/_chunks/{sign-document-CpLDZ6Db.js → sign-document-QHfcNKFj.js} +5 -5
  29. package/dist/_chunks/{signature-capture-DoiBd6i3.js → signature-capture-CpMBhqQ9.js} +6 -6
  30. package/dist/_chunks/tab-bar-C4II-7ej.js +86 -0
  31. package/dist/_chunks/{theme-toggle-DpC28kt5.js → theme-toggle-ClATnY4Q.js} +2 -2
  32. package/dist/_chunks/{toast.agent-WHHfw5VX.js → toast.agent-B0MCsvdZ.js} +2 -2
  33. package/dist/_chunks/{unit-converter-EUwO6QYq.js → unit-converter-D1UrEUxa.js} +46 -40
  34. package/dist/_chunks/{workflow-map-C3gB0FvB.js → workflow-map-BFNpzTiw.js} +2 -2
  35. package/dist/agent-catalog.json +1 -1
  36. package/dist/brand/product-lockup/product-lockup.d.ts +16 -0
  37. package/dist/components/_shared/insert-result.d.ts +21 -4
  38. package/dist/components/address-autocomplete/address-autocomplete.d.ts +77 -0
  39. package/dist/components/address-autocomplete/index.d.ts +4 -0
  40. package/dist/components/address-autocomplete/index.js +6 -0
  41. package/dist/components/address-autocomplete/parse-address.d.ts +52 -0
  42. package/dist/components/bmi-calculator/bmi-calculator.d.ts +11 -1
  43. package/dist/components/bmi-calculator/index.js +1 -1
  44. package/dist/components/breadcrumb/index.js +1 -1
  45. package/dist/components/cycle-calculator/cycle-calculator.d.ts +12 -2
  46. package/dist/components/cycle-calculator/index.js +1 -1
  47. package/dist/components/data-table/index.js +1 -1
  48. package/dist/components/document-scanner/index.js +1 -1
  49. package/dist/components/dropdown-menu/index.js +1 -1
  50. package/dist/components/due-date-calculator/due-date-calculator.d.ts +11 -1
  51. package/dist/components/due-date-calculator/index.js +1 -1
  52. package/dist/components/freemium-paywall/index.js +1 -1
  53. package/dist/components/gestational-age-calculator/gestational-age-calculator.d.ts +12 -2
  54. package/dist/components/gestational-age-calculator/index.js +1 -1
  55. package/dist/components/header-settings/index.js +1 -1
  56. package/dist/components/index.d.ts +3 -1
  57. package/dist/components/kbd/index.js +1 -1
  58. package/dist/components/map-view/index.js +1 -1
  59. package/dist/components/matrix-rain/matrix-rain.d.ts +1 -1
  60. package/dist/components/patient-search/index.js +1 -1
  61. package/dist/components/payment-form/index.js +1 -1
  62. package/dist/components/pdf-viewer/index.js +1 -1
  63. package/dist/components/practice-results/index.js +1 -1
  64. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  65. package/dist/components/pregnancy-weight-gain/pregnancy-weight-gain.d.ts +12 -2
  66. package/dist/components/public-header/index.js +1 -1
  67. package/dist/components/radio-group/index.js +1 -1
  68. package/dist/components/rich-text-editor/index.js +1 -1
  69. package/dist/components/sheet/index.js +1 -1
  70. package/dist/components/sign-document/index.js +1 -1
  71. package/dist/components/signature-capture/index.js +1 -1
  72. package/dist/components/tab-bar/index.d.ts +3 -0
  73. package/dist/components/tab-bar/index.js +5 -0
  74. package/dist/components/tab-bar/tab-bar.d.ts +61 -0
  75. package/dist/components/theme-toggle/index.js +1 -1
  76. package/dist/components/toast/index.js +1 -1
  77. package/dist/components/unit-converter/index.js +1 -1
  78. package/dist/components/unit-converter/unit-converter.d.ts +11 -1
  79. package/dist/components/workflow/index.js +1 -1
  80. package/dist/i18n/locales/ar.d.ts +17 -0
  81. package/dist/i18n/locales/ar.js +18 -1
  82. package/dist/i18n/locales/de.d.ts +17 -0
  83. package/dist/i18n/locales/de.js +18 -1
  84. package/dist/i18n/locales/el.d.ts +17 -0
  85. package/dist/i18n/locales/el.js +18 -1
  86. package/dist/i18n/locales/en.d.ts +17 -0
  87. package/dist/i18n/locales/en.js +18 -1
  88. package/dist/i18n/locales/es.d.ts +17 -0
  89. package/dist/i18n/locales/es.js +18 -1
  90. package/dist/i18n/locales/fr.d.ts +17 -0
  91. package/dist/i18n/locales/fr.js +18 -1
  92. package/dist/i18n/locales/hi.d.ts +17 -0
  93. package/dist/i18n/locales/hi.js +18 -1
  94. package/dist/i18n/locales/it.d.ts +17 -0
  95. package/dist/i18n/locales/it.js +18 -1
  96. package/dist/i18n/locales/ja.d.ts +17 -0
  97. package/dist/i18n/locales/ja.js +18 -1
  98. package/dist/i18n/locales/nl.d.ts +17 -0
  99. package/dist/i18n/locales/nl.js +18 -1
  100. package/dist/i18n/locales/pl.d.ts +17 -0
  101. package/dist/i18n/locales/pl.js +18 -1
  102. package/dist/i18n/locales/pt.d.ts +17 -0
  103. package/dist/i18n/locales/pt.js +18 -1
  104. package/dist/i18n/locales/ro.d.ts +17 -0
  105. package/dist/i18n/locales/ro.js +18 -1
  106. package/dist/i18n/locales/ru.d.ts +17 -0
  107. package/dist/i18n/locales/ru.js +18 -1
  108. package/dist/i18n/locales/sq.d.ts +17 -0
  109. package/dist/i18n/locales/sq.js +18 -1
  110. package/dist/i18n/locales/sv.d.ts +17 -0
  111. package/dist/i18n/locales/sv.js +18 -1
  112. package/dist/i18n/locales/tr.d.ts +17 -0
  113. package/dist/i18n/locales/tr.js +18 -1
  114. package/dist/i18n/locales/zh.d.ts +17 -0
  115. package/dist/i18n/locales/zh.js +18 -1
  116. package/dist/index.js +604 -599
  117. package/dist/locales/ar.json +18 -1
  118. package/dist/locales/de.json +18 -1
  119. package/dist/locales/el.json +18 -1
  120. package/dist/locales/en.json +18 -1
  121. package/dist/locales/es.json +18 -1
  122. package/dist/locales/fr.json +18 -1
  123. package/dist/locales/hi.json +18 -1
  124. package/dist/locales/it.json +18 -1
  125. package/dist/locales/ja.json +18 -1
  126. package/dist/locales/nl.json +18 -1
  127. package/dist/locales/pl.json +18 -1
  128. package/dist/locales/pt.json +18 -1
  129. package/dist/locales/ro.json +18 -1
  130. package/dist/locales/ru.json +18 -1
  131. package/dist/locales/sq.json +18 -1
  132. package/dist/locales/sv.json +18 -1
  133. package/dist/locales/tr.json +18 -1
  134. package/dist/locales/zh.json +18 -1
  135. package/dist/patterns/alia-assistant/index.js +1 -1
  136. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  137. package/dist/patterns/marketplace-app-shell/marketplace-app-shell.d.ts +30 -3
  138. package/dist/patterns/patient-shell/index.js +1 -1
  139. package/dist/tokens.css +1 -1
  140. package/package.json +16 -1
  141. package/dist/_chunks/cycle-calculator-B5Uj9QeT.js +0 -185
  142. package/dist/_chunks/insert-result-yJ0QavoN.js +0 -133
  143. package/dist/_chunks/map-view-qJLybrmN.js +0 -1850
  144. package/dist/_chunks/marketplace-app-shell-BlxVizU4.js +0 -296
  145. package/dist/_chunks/pregnancy-weight-gain-BCdi-JSv.js +0 -209
  146. package/dist/_chunks/radio-group-BcF92GEF.js +0 -152
@@ -0,0 +1,223 @@
1
+ import { jsxs as s, jsx as a } from "react/jsx-runtime";
2
+ import { forwardRef as I, useState as f, useMemo as $, useEffect as A } from "react";
3
+ import { c as F } from "./index-D2ZczOXr.js";
4
+ import { useTranslation as _ } from "react-i18next";
5
+ import { F as y } from "./form-field-BOm9hK35.js";
6
+ import { N as x } from "./number-input-Dj5L3pXK.js";
7
+ import { B as R } from "./badge-zsf5i5bH.js";
8
+ import { I as k } from "./insert-result-DtQQeSSf.js";
9
+ import { b as M, e as C } from "./bmi-BxD-tFzU.js";
10
+ const j = {
11
+ underweight: { min: 12.5, max: 18 },
12
+ normal: { min: 11.5, max: 16 },
13
+ overweight: { min: 7, max: 11.5 },
14
+ obese: { min: 5, max: 9 }
15
+ }, z = {
16
+ underweight: { min: 0.44, max: 0.58 },
17
+ normal: { min: 0.35, max: 0.5 },
18
+ overweight: { min: 0.23, max: 0.33 },
19
+ obese: { min: 0.17, max: 0.27 }
20
+ }, G = { min: 0.5, max: 2 }, v = 13;
21
+ function H(t, i) {
22
+ if (i <= 0) return { min: 0, max: 0 };
23
+ if (i <= v) {
24
+ const c = i / v;
25
+ return {
26
+ min: G.min * c,
27
+ max: G.max * c
28
+ };
29
+ }
30
+ const l = Math.min(i, 40) - v, r = z[t];
31
+ return {
32
+ min: G.min + r.min * l,
33
+ max: G.max + r.max * l
34
+ };
35
+ }
36
+ function L(t) {
37
+ const i = M(t.prePregnancyBmi), l = j[i], r = H(
38
+ i,
39
+ t.gestationalWeeks
40
+ ), c = t.currentWeightKg - t.prePregnancyWeightKg, W = c < r.min ? "below" : c > r.max ? "above" : "within";
41
+ return { category: i, totalRange: l, recommendedToDate: r, actualGainKg: c, status: W };
42
+ }
43
+ const O = F("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
44
+ variants: {
45
+ width: { full: "ds:w-full", auto: "ds:inline-flex" }
46
+ },
47
+ defaultVariants: { width: "full" }
48
+ }), U = {
49
+ below: "warning",
50
+ within: "success",
51
+ above: "warning"
52
+ }, V = I(
53
+ ({
54
+ onResultChange: t,
55
+ onInsert: i,
56
+ insertVariant: l = "insert",
57
+ onCopy: r,
58
+ onError: c,
59
+ id: W,
60
+ width: w,
61
+ className: K
62
+ }, P) => {
63
+ const { t: e, i18n: N } = _(), [b, D] = f(null), [o, B] = f(null), [g, S] = f(null), [u, E] = f(null), p = C(o, b), n = $(() => p === null || o === null || g === null || u === null ? null : L({
64
+ prePregnancyBmi: p,
65
+ prePregnancyWeightKg: o,
66
+ currentWeightKg: g,
67
+ gestationalWeeks: u
68
+ }), [p, o, g, u]), d = $(
69
+ () => new Intl.NumberFormat(N.language, {
70
+ minimumFractionDigits: 1,
71
+ maximumFractionDigits: 1
72
+ }),
73
+ [N.language]
74
+ );
75
+ A(() => {
76
+ t == null || t(n);
77
+ }, [n, t]);
78
+ const m = e("pregnancyWeightGain.units.kg"), h = (T) => `${d.format(T.min)} – ${d.format(T.max)} ${m}`;
79
+ return /* @__PURE__ */ s(
80
+ "div",
81
+ {
82
+ ref: P,
83
+ "data-component": "pregnancy-weight-gain",
84
+ "data-component-id": W,
85
+ className: O({ width: w, className: K }),
86
+ children: [
87
+ /* @__PURE__ */ s("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2", children: [
88
+ /* @__PURE__ */ a(
89
+ y,
90
+ {
91
+ label: `${e("pregnancyWeightGain.height")} (${e("pregnancyWeightGain.units.cm")})`,
92
+ children: /* @__PURE__ */ a(
93
+ x,
94
+ {
95
+ mode: "decimal",
96
+ min: 0,
97
+ step: 0.5,
98
+ value: b,
99
+ onChange: D
100
+ }
101
+ )
102
+ }
103
+ ),
104
+ /* @__PURE__ */ a(
105
+ y,
106
+ {
107
+ label: `${e("pregnancyWeightGain.prePregnancyWeight")} (${m})`,
108
+ children: /* @__PURE__ */ a(
109
+ x,
110
+ {
111
+ mode: "decimal",
112
+ min: 0,
113
+ step: 0.1,
114
+ value: o,
115
+ onChange: B
116
+ }
117
+ )
118
+ }
119
+ ),
120
+ /* @__PURE__ */ a(
121
+ y,
122
+ {
123
+ label: `${e("pregnancyWeightGain.currentWeight")} (${m})`,
124
+ children: /* @__PURE__ */ a(
125
+ x,
126
+ {
127
+ mode: "decimal",
128
+ min: 0,
129
+ step: 0.1,
130
+ value: g,
131
+ onChange: S
132
+ }
133
+ )
134
+ }
135
+ ),
136
+ /* @__PURE__ */ a(y, { label: e("pregnancyWeightGain.gestationalWeeks"), children: /* @__PURE__ */ a(
137
+ x,
138
+ {
139
+ mode: "integer",
140
+ min: 0,
141
+ max: 42,
142
+ value: u,
143
+ onChange: E
144
+ }
145
+ ) })
146
+ ] }),
147
+ /* @__PURE__ */ a("p", { className: "ds:sr-only", role: "status", "aria-live": "polite", children: n ? `${e("pregnancyWeightGain.actualGain")}: ${d.format(
148
+ n.actualGainKg
149
+ )} ${m}. ${e(`pregnancyWeightGain.status.${n.status}`)}.` : "" }),
150
+ n ? /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
151
+ /* @__PURE__ */ s("dl", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-2", children: [
152
+ /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
153
+ /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyWeightGain.prePregnancyBmi") }),
154
+ /* @__PURE__ */ s("dd", { className: "type-body ds:text-foreground", children: [
155
+ d.format(p ?? 0),
156
+ " ·",
157
+ " ",
158
+ e(`pregnancyWeightGain.category.${n.category}`)
159
+ ] })
160
+ ] }),
161
+ /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]", children: [
162
+ /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyWeightGain.actualGain") }),
163
+ /* @__PURE__ */ s("dd", { className: "ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]", children: [
164
+ /* @__PURE__ */ s("span", { className: "type-metric ds:text-foreground", children: [
165
+ d.format(n.actualGainKg),
166
+ " ",
167
+ m
168
+ ] }),
169
+ /* @__PURE__ */ a(R, { variant: U[n.status], size: "lg", children: e(`pregnancyWeightGain.status.${n.status}`) })
170
+ ] })
171
+ ] }),
172
+ /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
173
+ /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyWeightGain.recommendedToDate") }),
174
+ /* @__PURE__ */ a("dd", { className: "type-body ds:text-foreground", children: h(n.recommendedToDate) })
175
+ ] }),
176
+ /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
177
+ /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyWeightGain.recommendedTotal") }),
178
+ /* @__PURE__ */ a("dd", { className: "type-body ds:text-foreground", children: h(n.totalRange) })
179
+ ] })
180
+ ] }),
181
+ /* @__PURE__ */ a("p", { className: "type-body-sm ds:text-muted-foreground", children: e("pregnancyWeightGain.disclaimer") }),
182
+ l === "copy" || i ? /* @__PURE__ */ a(
183
+ k,
184
+ {
185
+ onInsert: i,
186
+ variant: l,
187
+ onCopy: r,
188
+ onError: c,
189
+ card: {
190
+ title: e("insert.title.weightGain"),
191
+ highlight: e(`pregnancyWeightGain.status.${n.status}`),
192
+ fields: [
193
+ {
194
+ label: e("pregnancyWeightGain.actualGain"),
195
+ value: `${d.format(n.actualGainKg)} ${m}`
196
+ },
197
+ {
198
+ label: e("pregnancyWeightGain.recommendedToDate"),
199
+ value: h(n.recommendedToDate)
200
+ },
201
+ {
202
+ label: e("pregnancyWeightGain.recommendedTotal"),
203
+ value: h(n.totalRange)
204
+ }
205
+ ]
206
+ }
207
+ }
208
+ ) : null
209
+ ] }) : /* @__PURE__ */ a("p", { className: "type-body ds:text-muted-foreground", children: e("pregnancyWeightGain.empty") })
210
+ ]
211
+ }
212
+ );
213
+ }
214
+ );
215
+ V.displayName = "PregnancyWeightGain";
216
+ export {
217
+ V as P,
218
+ z as R,
219
+ j as T,
220
+ L as a,
221
+ H as r
222
+ };
223
+ //# sourceMappingURL=pregnancy-weight-gain-B7kBK-ZR.js.map
@@ -4,7 +4,7 @@ import { c as C } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as ss } from "react-i18next";
5
5
  import * as m from "@radix-ui/react-navigation-menu";
6
6
  import { I as es } from "./icon-button-CKEOrN37.js";
7
- import { S as f } from "./sheet-BV-yuLE2.js";
7
+ import { S as f } from "./sheet-xbzu4YiY.js";
8
8
  import { C as I } from "./chevron-down-BX_NP2Yh.js";
9
9
  import { X as ds } from "./x-CCcI3eJp.js";
10
10
  import { M as as } from "./menu-XRhW3_99.js";
@@ -564,4 +564,4 @@ export {
564
564
  Cs as P,
565
565
  js as p
566
566
  };
567
- //# sourceMappingURL=public-header.agent-B2dDg2_d.js.map
567
+ //# sourceMappingURL=public-header.agent-BY6FH71R.js.map
@@ -0,0 +1,167 @@
1
+ import { jsx as e, jsxs as d } from "react/jsx-runtime";
2
+ import { forwardRef as q, useId as E, useMemo as k, useRef as z, useState as F } from "react";
3
+ import * as J from "@radix-ui/react-radio-group";
4
+ import { c as L } from "./index-D2ZczOXr.js";
5
+ import { a as B } from "./radio-TWf9Q-mp.js";
6
+ import { c as O } from "./compose-refs-C0k0tdqF.js";
7
+ import { u as Q } from "./use-direction-Dp8h70PP.js";
8
+ import { u as U } from "./registry-nPAVE19X.js";
9
+ import { C as W } from "./circle-alert-ChA9opNA.js";
10
+ const X = {
11
+ id: "radio-group",
12
+ capabilities: ["select_single"],
13
+ state: {
14
+ value: {
15
+ type: "string",
16
+ descriptionKey: "ui.agent.radioGroup.state.value",
17
+ description: "Currently selected radio value, or empty string when none.",
18
+ read: (t) => t.getValue()
19
+ }
20
+ },
21
+ actions: {
22
+ set_value: {
23
+ safety: "write",
24
+ argsType: "{ value: string }",
25
+ descriptionKey: "ui.agent.radioGroup.actions.setValue",
26
+ description: "Select the radio with the given value.",
27
+ invoke: (t, o) => {
28
+ t.setValue(o.value);
29
+ }
30
+ }
31
+ },
32
+ domHooks: {
33
+ root: {
34
+ attr: "data-component",
35
+ value: "radio-group",
36
+ description: "Marks the RadioGroup root."
37
+ },
38
+ instanceId: {
39
+ attr: "data-component-id",
40
+ sourceProp: "id",
41
+ description: "Sourced from the id prop."
42
+ },
43
+ item: {
44
+ attr: "data-option-id",
45
+ description: "Stable opaque value emitted on each rendered Radio child."
46
+ }
47
+ }
48
+ }, Y = L("ds:flex", {
49
+ variants: {
50
+ variant: {
51
+ vertical: "ds:flex-col ds:gap-[var(--spacing-sm)]",
52
+ horizontal: "ds:flex-row ds:flex-wrap ds:gap-[var(--spacing-md)]",
53
+ card: "ds:flex-col ds:gap-[var(--spacing-md)]"
54
+ }
55
+ },
56
+ defaultVariants: {
57
+ variant: "vertical"
58
+ }
59
+ }), Z = q(
60
+ ({
61
+ children: t,
62
+ variant: o = "vertical",
63
+ label: n,
64
+ description: l,
65
+ error: a,
66
+ required: c,
67
+ disabled: S,
68
+ className: $,
69
+ id: p,
70
+ value: u,
71
+ defaultValue: v,
72
+ onValueChange: s,
73
+ ...j
74
+ }, A) => {
75
+ const m = E(), f = `${m}-legend`, g = `${m}-description`, h = `${m}-error`, C = [l ? g : null, a ? h : null].filter(Boolean).join(" ") || void 0, P = n ? f : void 0, H = o === "horizontal" ? "horizontal" : "vertical", x = k(
76
+ () => ({ variant: o }),
77
+ [o]
78
+ ), y = l ? /* @__PURE__ */ e("p", { id: g, className: "type-body-sm ds:text-muted-foreground", children: l }) : null, R = a ? /* @__PURE__ */ d(
79
+ "p",
80
+ {
81
+ id: h,
82
+ role: "alert",
83
+ className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)] type-body-sm ds:text-destructive",
84
+ children: [
85
+ /* @__PURE__ */ e(W, { "aria-hidden": "true", className: "ds:size-4 ds:shrink-0" }),
86
+ /* @__PURE__ */ e("span", { children: a })
87
+ ]
88
+ }
89
+ ) : null, b = z(null), K = O(A, b), M = Q(b), r = u !== void 0, [_, D] = F(
90
+ v ?? ""
91
+ ), N = r ? u ?? "" : _, G = z(N);
92
+ G.current = N;
93
+ const V = (i) => {
94
+ r || D(i), s == null || s(i);
95
+ }, T = k(
96
+ () => ({
97
+ getValue: () => G.current,
98
+ setValue: (i) => V(i)
99
+ }),
100
+ // eslint-disable-next-line react-hooks/exhaustive-deps
101
+ [r, s]
102
+ );
103
+ U(X, T, p);
104
+ const I = /* @__PURE__ */ e(
105
+ J.Root,
106
+ {
107
+ ref: K,
108
+ id: p,
109
+ orientation: H,
110
+ dir: M,
111
+ disabled: S,
112
+ required: c,
113
+ value: r ? u : void 0,
114
+ defaultValue: r ? void 0 : v,
115
+ onValueChange: V,
116
+ "aria-labelledby": P,
117
+ "aria-describedby": C,
118
+ "aria-invalid": !!a || void 0,
119
+ "aria-required": c || void 0,
120
+ className: Y({ variant: o, className: $ }),
121
+ "data-component": "radio-group",
122
+ "data-component-id": p,
123
+ ...j,
124
+ children: t
125
+ }
126
+ ), w = "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)] ds:min-w-0";
127
+ return n ? /* @__PURE__ */ e(B.Provider, { value: x, children: /* @__PURE__ */ d(
128
+ "fieldset",
129
+ {
130
+ role: "presentation",
131
+ className: `${w} ds:border-0 ds:p-0 ds:m-0`,
132
+ children: [
133
+ /* @__PURE__ */ d(
134
+ "legend",
135
+ {
136
+ id: f,
137
+ className: "type-label ds:text-foreground ds:p-0",
138
+ children: [
139
+ n,
140
+ c ? /* @__PURE__ */ e(
141
+ "span",
142
+ {
143
+ "aria-hidden": "true",
144
+ className: "ds:text-destructive ds:ms-[var(--spacing-xs)]",
145
+ children: "*"
146
+ }
147
+ ) : null
148
+ ]
149
+ }
150
+ ),
151
+ y,
152
+ I,
153
+ R
154
+ ]
155
+ }
156
+ ) }) : /* @__PURE__ */ e(B.Provider, { value: x, children: /* @__PURE__ */ d("div", { className: w, children: [
157
+ y,
158
+ I,
159
+ R
160
+ ] }) });
161
+ }
162
+ );
163
+ Z.displayName = "RadioGroup";
164
+ export {
165
+ Z as R
166
+ };
167
+ //# sourceMappingURL=radio-group-CLjK-SlK.js.map
@@ -241,8 +241,8 @@ const Ze = S(
241
241
  ), G = S(
242
242
  [
243
243
  "ds:inline-flex ds:items-center ds:justify-center",
244
- "ds:min-block-size-[var(--min-target-size)]",
245
- "ds:min-inline-size-[var(--min-target-size)]",
244
+ "ds:[min-block-size:var(--min-target-size)]",
245
+ "ds:[min-inline-size:var(--min-target-size)]",
246
246
  "ds:gap-[var(--spacing-xs)]",
247
247
  "ds:rounded-[var(--radius-sm)] ds:bg-transparent ds:text-[var(--foreground)]",
248
248
  "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none",
@@ -365,7 +365,7 @@ function Xe({
365
365
  "aria-label": M,
366
366
  className: [
367
367
  "ds:absolute ds:top-full ds:mt-[var(--spacing-xs)] ds:start-0 ds:z-[var(--z-dropdown)]",
368
- "ds:min-inline-size-[8rem] ds:rounded-[var(--radius-md)]",
368
+ "ds:[min-inline-size:8rem] ds:rounded-[var(--radius-md)]",
369
369
  "ds:border ds:border-[color:var(--border)] ds:bg-[var(--background)]",
370
370
  "ds:shadow-[var(--shadow-lg)] ds:p-[var(--spacing-xs)]"
371
371
  ].join(" "),
@@ -379,7 +379,7 @@ function Xe({
379
379
  className: [
380
380
  "ds:flex ds:w-full ds:items-center",
381
381
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
382
- "ds:min-block-size-[var(--min-target-size)]",
382
+ "ds:[min-block-size:var(--min-target-size)]",
383
383
  "ds:rounded-[var(--radius-sm)] ds:text-start",
384
384
  "ds:hover:bg-[var(--muted)]",
385
385
  "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
@@ -432,8 +432,8 @@ function Ye({
432
432
  "aria-label": l("editor.shortcuts.close"),
433
433
  className: [
434
434
  "ds:inline-flex ds:items-center ds:justify-center",
435
- "ds:min-block-size-[var(--min-target-size)]",
436
- "ds:min-inline-size-[var(--min-target-size)]",
435
+ "ds:[min-block-size:var(--min-target-size)]",
436
+ "ds:[min-inline-size:var(--min-target-size)]",
437
437
  "ds:rounded-[var(--radius-sm)]",
438
438
  "ds:hover:bg-[var(--muted)]",
439
439
  "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
@@ -869,11 +869,11 @@ const Je = se(
869
869
  const te = (() => {
870
870
  switch (y) {
871
871
  case "sm":
872
- return "min-block-size-[8rem]";
872
+ return "ds:[min-block-size:8rem]";
873
873
  case "md":
874
- return "min-block-size-[16rem]";
874
+ return "ds:[min-block-size:16rem]";
875
875
  case "lg":
876
- return "min-block-size-[24rem]";
876
+ return "ds:[min-block-size:24rem]";
877
877
  default:
878
878
  return;
879
879
  }
@@ -918,4 +918,4 @@ export {
918
918
  G as t,
919
919
  Ze as w
920
920
  };
921
- //# sourceMappingURL=rich-text-editor-DLbg2852.js.map
921
+ //# sourceMappingURL=rich-text-editor-DhGIBd4a.js.map
@@ -98,13 +98,13 @@ const P = {
98
98
  );
99
99
  function Y(e, t) {
100
100
  return e === "start" || e === "end" ? {
101
- sm: "[inline-size:360px]",
102
- md: "[inline-size:480px]",
103
- lg: "[inline-size:640px]"
101
+ sm: "ds:[inline-size:360px]",
102
+ md: "ds:[inline-size:480px]",
103
+ lg: "ds:[inline-size:640px]"
104
104
  }[t] : {
105
- sm: "[block-size:40dvh]",
106
- md: "[block-size:60dvh]",
107
- lg: "[block-size:80dvh]"
105
+ sm: "ds:[block-size:40dvh]",
106
+ md: "ds:[block-size:60dvh]",
107
+ lg: "ds:[block-size:80dvh]"
108
108
  }[t];
109
109
  }
110
110
  const b = A(void 0), m = ({
@@ -268,4 +268,4 @@ export {
268
268
  W as S,
269
269
  P as s
270
270
  };
271
- //# sourceMappingURL=sheet-BV-yuLE2.js.map
271
+ //# sourceMappingURL=sheet-xbzu4YiY.js.map
@@ -2,8 +2,8 @@ import { jsxs as d, jsx as r } from "react/jsx-runtime";
2
2
  import { forwardRef as ie, useId as oe, useMemo as M, useRef as k, useState as b, useEffect as L, useCallback as c, useImperativeHandle as de } from "react";
3
3
  import { c as i } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as ce } from "react-i18next";
5
- import { P as le } from "./pdf-viewer-Cy6Ul3hZ.js";
6
- import { S as ge } from "./signature-capture-DoiBd6i3.js";
5
+ import { P as le } from "./pdf-viewer-B6MC6VTx.js";
6
+ import { S as ge } from "./signature-capture-CpMBhqQ9.js";
7
7
  import { u as me } from "./registry-nPAVE19X.js";
8
8
  import { C as O } from "./circle-check-9AeSgJD_.js";
9
9
  const ue = {
@@ -79,8 +79,8 @@ const ue = {
79
79
  ), xe = i(
80
80
  [
81
81
  "ds:inline-flex ds:inline-size-full ds:items-center ds:justify-center",
82
- "ds:min-block-size-[var(--min-target-size)]",
83
- "ds:min-inline-size-[var(--min-target-size)]",
82
+ "ds:[min-block-size:var(--min-target-size)]",
83
+ "ds:[min-inline-size:var(--min-target-size)]",
84
84
  "ds:gap-[var(--spacing-xs)]",
85
85
  "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
86
86
  "ds:pt-[var(--spacing-md)] ds:pb-[var(--spacing-md)]",
@@ -313,4 +313,4 @@ export {
313
313
  Se as S,
314
314
  ue as s
315
315
  };
316
- //# sourceMappingURL=sign-document-CpLDZ6Db.js.map
316
+ //# sourceMappingURL=sign-document-QHfcNKFj.js.map
@@ -84,8 +84,8 @@ const Pe = {
84
84
  ), ae = R(
85
85
  [
86
86
  "ds:inline-flex ds:flex-1 ds:items-center ds:justify-center",
87
- "ds:min-block-size-[var(--min-target-size)]",
88
- "ds:min-inline-size-[var(--min-target-size)]",
87
+ "ds:[min-block-size:var(--min-target-size)]",
88
+ "ds:[min-inline-size:var(--min-target-size)]",
89
89
  "ds:gap-[var(--spacing-xs)]",
90
90
  "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
91
91
  "ds:pt-[var(--spacing-md)] ds:pb-[var(--spacing-md)]",
@@ -105,8 +105,8 @@ const Pe = {
105
105
  ), Be = R(
106
106
  [
107
107
  "ds:inline-flex ds:flex-1 ds:items-center ds:justify-center",
108
- "ds:min-block-size-[var(--min-target-size)]",
109
- "ds:min-inline-size-[var(--min-target-size)]",
108
+ "ds:[min-block-size:var(--min-target-size)]",
109
+ "ds:[min-inline-size:var(--min-target-size)]",
110
110
  "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
111
111
  "ds:pt-[var(--spacing-md)] ds:pb-[var(--spacing-md)]",
112
112
  "ds:rounded-[var(--radius-sm)]",
@@ -124,7 +124,7 @@ const Pe = {
124
124
  ), $e = R(
125
125
  [
126
126
  "ds:block ds:inline-size-full",
127
- "ds:min-block-size-[var(--min-target-size)]",
127
+ "ds:[min-block-size:var(--min-target-size)]",
128
128
  "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
129
129
  "ds:rounded-[var(--radius-sm)]",
130
130
  "ds:border ds:border-[color:var(--border)]",
@@ -490,4 +490,4 @@ export {
490
490
  Ue as S,
491
491
  Pe as s
492
492
  };
493
- //# sourceMappingURL=signature-capture-DoiBd6i3.js.map
493
+ //# sourceMappingURL=signature-capture-CpMBhqQ9.js.map
@@ -0,0 +1,86 @@
1
+ import { jsx as a, jsxs as c, Fragment as g } from "react/jsx-runtime";
2
+ import { forwardRef as m } from "react";
3
+ import { c as d } from "./index-D2ZczOXr.js";
4
+ import { B as b } from "./badge-zsf5i5bH.js";
5
+ function h(r) {
6
+ return r > 99 ? "99+" : String(r);
7
+ }
8
+ const x = d("ds:shrink-0", {
9
+ variants: {
10
+ position: {
11
+ top: "ds:pt-[var(--spacing-md)]",
12
+ bottom: "ds:pb-[var(--spacing-md)]"
13
+ },
14
+ fill: {
15
+ false: "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
16
+ true: ""
17
+ }
18
+ },
19
+ defaultVariants: { position: "top", fill: !1 }
20
+ }), w = "ds:flex ds:[justify-content:safe_center] ds:overflow-x-auto ds:rounded-[var(--radius-lg)] ds:border ds:border-[color:var(--card-border)] ds:bg-[var(--card)]/80 ds:backdrop-blur-md ds:shadow-[var(--shadow-md)] ds:py-[var(--spacing-xs)]", C = d(
21
+ "ds:flex ds:items-stretch ds:gap-[var(--spacing-xs)] ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
22
+ {
23
+ variants: {
24
+ fill: { false: "ds:shrink-0", true: "ds:w-full" }
25
+ },
26
+ defaultVariants: { fill: !1 }
27
+ }
28
+ ), p = d(
29
+ "ds:group ds:flex ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)] ds:min-h-[var(--min-target-size)] ds:rounded-[var(--radius-sm)] ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:py-[var(--spacing-xs)] ds:whitespace-nowrap ds:cursor-pointer ds:appearance-none ds:border-0 ds:bg-transparent ds:text-[length:var(--font-size-sm)] ds:font-[var(--font-weight-regular)] ds:text-[color:var(--foreground)] ds:no-underline ds:hover:bg-[var(--muted)]/20 ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:forced-colors:focus-visible:outline-[CanvasText]",
30
+ {
31
+ variants: {
32
+ fill: {
33
+ // Responsive: label under the icon below `sm`, beside it at `sm`+.
34
+ false: "ds:flex-col ds:sm:flex-row ds:sm:gap-[var(--spacing-sm)]",
35
+ // Fill the bar, always icon-over-label. No `min-w-0`, so a tab never
36
+ // shrinks below its label (labels never overlap); if the full set can't
37
+ // fit, the pill scrolls instead.
38
+ true: "ds:flex-1 ds:basis-0 ds:flex-col"
39
+ }
40
+ },
41
+ defaultVariants: { fill: !1 }
42
+ }
43
+ ), N = "ds:inline-flex ds:items-center ds:text-[color:var(--accent)] ds:[&>svg]:size-4", y = "ds:group-aria-[current=page]:underline ds:group-aria-[current=page]:decoration-2 ds:group-aria-[current=page]:decoration-[color:var(--accent)] ds:group-aria-[current=page]:underline-offset-[var(--spacing-xs)]", V = m(
44
+ ({ items: r, ariaLabel: u, onSelect: n, fill: e = !1, position: f = "top", className: i }, v) => /* @__PURE__ */ a(
45
+ "div",
46
+ {
47
+ ref: v,
48
+ "data-component": "tab-bar",
49
+ className: `${x({ position: f, fill: e })}${i ? ` ${i}` : ""}`,
50
+ children: /* @__PURE__ */ a("div", { className: w, children: /* @__PURE__ */ a("nav", { "aria-label": u, className: C({ fill: e }), children: r.map((s) => {
51
+ const o = typeof s.badgeCount == "number" && s.badgeCount > 0 ? s.badgeCount : void 0, t = s.isActive ? "page" : void 0, l = /* @__PURE__ */ c(g, { children: [
52
+ s.icon ? /* @__PURE__ */ a("span", { "aria-hidden": "true", className: N, children: s.icon }) : null,
53
+ /* @__PURE__ */ c("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
54
+ /* @__PURE__ */ a("span", { className: y, children: s.label }),
55
+ o !== void 0 ? /* @__PURE__ */ a(b, { variant: "neutral", children: h(o) }) : null
56
+ ] })
57
+ ] });
58
+ return s.href ? /* @__PURE__ */ a(
59
+ "a",
60
+ {
61
+ href: s.href,
62
+ "aria-current": t,
63
+ className: p({ fill: e }),
64
+ children: l
65
+ },
66
+ s.id
67
+ ) : /* @__PURE__ */ a(
68
+ "button",
69
+ {
70
+ type: "button",
71
+ "aria-current": t,
72
+ className: p({ fill: e }),
73
+ onClick: () => n == null ? void 0 : n(s.id),
74
+ children: l
75
+ },
76
+ s.id
77
+ );
78
+ }) }) })
79
+ }
80
+ )
81
+ );
82
+ V.displayName = "TabBar";
83
+ export {
84
+ V as T
85
+ };
86
+ //# sourceMappingURL=tab-bar-C4II-7ej.js.map
@@ -5,7 +5,7 @@ import { useTranslation as g } from "react-i18next";
5
5
  import { I as y } from "./icon-button-CKEOrN37.js";
6
6
  import { I as K } from "./icon-button-group-C48khLE0.js";
7
7
  import { S as x } from "./switch-BJ6HD3Mn.js";
8
- import { D as o } from "./dropdown-menu-BC5ZdOMo.js";
8
+ import { D as o } from "./dropdown-menu-CUEXqKis.js";
9
9
  import { u as z } from "./use-theme-C2dHKUAN.js";
10
10
  import { u as D } from "./registry-nPAVE19X.js";
11
11
  import { M as v, S as C } from "./sun-BuXE0xUS.js";
@@ -352,4 +352,4 @@ export {
352
352
  O as T,
353
353
  H as t
354
354
  };
355
- //# sourceMappingURL=theme-toggle-DpC28kt5.js.map
355
+ //# sourceMappingURL=theme-toggle-ClATnY4Q.js.map
@@ -838,7 +838,7 @@ function Oe({
838
838
  "ds:forced-colors:border ds:forced-colors:border-[CanvasText]",
839
839
  "ds:rounded-[var(--radius-md)]",
840
840
  "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)] ds:py-[var(--spacing-sm)]",
841
- "[max-inline-size:360px] max-sm:[max-inline-size:88dvw]",
841
+ "ds:[max-inline-size:360px] ds:max-sm:[max-inline-size:88dvw]",
842
842
  "break-words",
843
843
  "ds:z-[var(--z-toast)]",
844
844
  "ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none"
@@ -985,4 +985,4 @@ export {
985
985
  Ze as e,
986
986
  aa as t
987
987
  };
988
- //# sourceMappingURL=toast.agent-WHHfw5VX.js.map
988
+ //# sourceMappingURL=toast.agent-B0MCsvdZ.js.map