@alfadocs/ui-kit 0.80.1 → 0.82.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.
- package/dist/_chunks/{chart-CMr3eW62.js → chart-CpkpA74k.js} +98 -88
- package/dist/_chunks/{payment-request-card-C0fqlKqO.js → payment-request-card-d-RmzsUd.js} +15 -13
- package/dist/agent-catalog.json +83 -1
- package/dist/agent-i18n/en.json +7 -0
- package/dist/components/chart/chart.d.ts +10 -0
- package/dist/components/chart/index.js +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/payment-card/index.js +1 -1
- package/dist/index.js +1270 -963
- package/dist/patterns/payment-automation-upsell/index.d.ts +3 -0
- package/dist/patterns/payment-automation-upsell/payment-automation-upsell.d.ts +93 -0
- package/dist/tokens.css +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { jsxs as S, jsx as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import { c as
|
|
4
|
-
import { useTranslation as
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import { u as
|
|
8
|
-
import { u as
|
|
9
|
-
import { u as
|
|
10
|
-
const
|
|
1
|
+
import { jsxs as S, jsx as d } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as et, useId as rt, useMemo as c, useRef as at, useState as U, useEffect as k, useImperativeHandle as ot } from "react";
|
|
3
|
+
import { c as nt } from "./index-D2ZczOXr.js";
|
|
4
|
+
import { useTranslation as it } from "react-i18next";
|
|
5
|
+
import st from "react-apexcharts";
|
|
6
|
+
import H from "apexcharts";
|
|
7
|
+
import { u as ct, g as _ } from "./apexcharts-theme-BJigns_V.js";
|
|
8
|
+
import { u as dt } from "./use-prefers-reduced-motion-BMwIQRjB.js";
|
|
9
|
+
import { u as lt } from "./registry-DvAUVLHh.js";
|
|
10
|
+
const mt = {
|
|
11
11
|
id: "chart",
|
|
12
12
|
capabilities: [],
|
|
13
13
|
state: {},
|
|
@@ -75,7 +75,7 @@ const dt = {
|
|
|
75
75
|
description: "Sourced from the id prop."
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
-
},
|
|
78
|
+
}, ut = nt("ds:relative ds:block ds:w-full", {
|
|
79
79
|
variants: {
|
|
80
80
|
density: {
|
|
81
81
|
compact: "ds:min-h-[var(--chart-min-height-compact)]",
|
|
@@ -87,20 +87,20 @@ const dt = {
|
|
|
87
87
|
}
|
|
88
88
|
},
|
|
89
89
|
defaultVariants: { density: "comfortable" }
|
|
90
|
-
}),
|
|
90
|
+
}), pt = [
|
|
91
91
|
"verticalLines",
|
|
92
92
|
"horizontalLines",
|
|
93
93
|
"slantedLines",
|
|
94
94
|
"squares",
|
|
95
95
|
"circles"
|
|
96
|
-
],
|
|
96
|
+
], ht = ["line", "bar", "area"], ft = ["pie", "donut", "radialBar"];
|
|
97
97
|
function T(o) {
|
|
98
|
-
return
|
|
98
|
+
return ft.includes(o);
|
|
99
99
|
}
|
|
100
|
-
function
|
|
101
|
-
return
|
|
100
|
+
function bt(o) {
|
|
101
|
+
return ht.includes(o);
|
|
102
102
|
}
|
|
103
|
-
function
|
|
103
|
+
function gt(o, l) {
|
|
104
104
|
return T(l) ? [
|
|
105
105
|
{
|
|
106
106
|
name: "",
|
|
@@ -108,45 +108,46 @@ function ft(o, l) {
|
|
|
108
108
|
}
|
|
109
109
|
] : o;
|
|
110
110
|
}
|
|
111
|
-
const
|
|
111
|
+
const yt = et(
|
|
112
112
|
({
|
|
113
113
|
title: o,
|
|
114
114
|
id: l,
|
|
115
115
|
type: r,
|
|
116
116
|
series: h,
|
|
117
|
-
categories:
|
|
118
|
-
labels:
|
|
117
|
+
categories: y,
|
|
118
|
+
labels: f,
|
|
119
119
|
height: O,
|
|
120
|
-
width:
|
|
120
|
+
width: M,
|
|
121
121
|
patterns: A = !1,
|
|
122
122
|
colors: v,
|
|
123
123
|
toolbar: x = !1,
|
|
124
|
-
locale:
|
|
124
|
+
locale: j,
|
|
125
125
|
radialValueFormatter: m,
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
[
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
126
|
+
valueFormatter: N,
|
|
127
|
+
density: D,
|
|
128
|
+
className: W
|
|
129
|
+
}, q) => {
|
|
130
|
+
const { t: a, i18n: Y } = it(), P = rt(), u = c(
|
|
131
|
+
() => `chart-${P.replace(/[^a-zA-Z0-9-_]/g, "")}`,
|
|
132
|
+
[P]
|
|
133
|
+
), R = `${u}-summary`, I = at(null), [z, Z] = U(0);
|
|
134
|
+
ct(I);
|
|
135
|
+
const p = j ?? Y.language ?? "en", [B, K] = U(
|
|
135
136
|
() => {
|
|
136
137
|
try {
|
|
137
|
-
return
|
|
138
|
+
return _();
|
|
138
139
|
} catch {
|
|
139
140
|
return {};
|
|
140
141
|
}
|
|
141
142
|
}
|
|
142
143
|
);
|
|
143
|
-
|
|
144
|
+
k(() => {
|
|
144
145
|
if (typeof document > "u") return;
|
|
145
146
|
let t;
|
|
146
147
|
const e = new MutationObserver(() => {
|
|
147
148
|
clearTimeout(t), t = setTimeout(() => {
|
|
148
149
|
try {
|
|
149
|
-
|
|
150
|
+
K(_());
|
|
150
151
|
} catch {
|
|
151
152
|
}
|
|
152
153
|
}, 50);
|
|
@@ -157,36 +158,39 @@ const bt = X(
|
|
|
157
158
|
}), () => {
|
|
158
159
|
clearTimeout(t), e.disconnect();
|
|
159
160
|
};
|
|
160
|
-
}, []),
|
|
161
|
+
}, []), k(() => {
|
|
161
162
|
const t = I.current;
|
|
162
163
|
if (!t || typeof ResizeObserver > "u") return;
|
|
163
164
|
const e = new ResizeObserver((n) => {
|
|
164
165
|
const i = n[0];
|
|
165
|
-
i &&
|
|
166
|
+
i && Z(Math.floor(i.contentRect.width));
|
|
166
167
|
});
|
|
167
168
|
return e.observe(t), () => e.disconnect();
|
|
168
169
|
}, []);
|
|
169
|
-
const C =
|
|
170
|
+
const C = c(
|
|
170
171
|
() => ({
|
|
171
172
|
async dataURI() {
|
|
172
|
-
const t =
|
|
173
|
+
const t = H.getChartByID(u);
|
|
173
174
|
return t ? (await t.dataURI()).imgURI : "";
|
|
174
175
|
},
|
|
175
176
|
updateSeries(t) {
|
|
176
|
-
const e =
|
|
177
|
+
const e = H.getChartByID(u);
|
|
177
178
|
e && (T(r), e.updateSeries(t));
|
|
178
179
|
}
|
|
179
180
|
}),
|
|
180
181
|
[u, r]
|
|
181
182
|
);
|
|
182
|
-
|
|
183
|
-
const w = typeof document < "u" && document.documentElement.dir === "rtl",
|
|
184
|
-
() =>
|
|
183
|
+
ot(q, () => C, [C]), lt(mt, C, l);
|
|
184
|
+
const w = typeof document < "u" && document.documentElement.dir === "rtl", E = c(
|
|
185
|
+
() => gt(h, r),
|
|
185
186
|
[h, r]
|
|
186
|
-
),
|
|
187
|
+
), $ = c(
|
|
187
188
|
() => new Intl.NumberFormat(p),
|
|
188
189
|
[p]
|
|
189
|
-
),
|
|
190
|
+
), b = c(
|
|
191
|
+
() => N ?? ((t) => $.format(t)),
|
|
192
|
+
[N, $]
|
|
193
|
+
), G = c(
|
|
190
194
|
() => ({
|
|
191
195
|
name: p,
|
|
192
196
|
options: {
|
|
@@ -205,9 +209,9 @@ const bt = X(
|
|
|
205
209
|
}
|
|
206
210
|
}),
|
|
207
211
|
[p, a]
|
|
208
|
-
), L =
|
|
209
|
-
var n, i,
|
|
210
|
-
const t =
|
|
212
|
+
), L = dt(), V = c(() => {
|
|
213
|
+
var n, i, g;
|
|
214
|
+
const t = B, e = {
|
|
211
215
|
...t,
|
|
212
216
|
chart: {
|
|
213
217
|
...t.chart,
|
|
@@ -218,11 +222,17 @@ const bt = X(
|
|
|
218
222
|
enabled: !L,
|
|
219
223
|
dynamicAnimation: { enabled: !L }
|
|
220
224
|
},
|
|
221
|
-
locales: [
|
|
225
|
+
locales: [G],
|
|
222
226
|
defaultLocale: p,
|
|
223
227
|
parentHeightOffset: 0
|
|
224
228
|
},
|
|
225
|
-
labels
|
|
229
|
+
// Only set `labels` when the consumer actually supplied them (slice
|
|
230
|
+
// charts). Emitting `labels: undefined` crashes ApexCharts' bar
|
|
231
|
+
// renderer — `parseDataAxisCharts` reads `labels.length` and throws
|
|
232
|
+
// "Cannot read properties of undefined (reading 'length')", which
|
|
233
|
+
// aborts the render and leaves a blank chart. Absent is safe; area /
|
|
234
|
+
// line tolerate the undefined but bar does not, so never pass it.
|
|
235
|
+
...f ? { labels: f } : {},
|
|
226
236
|
legend: {
|
|
227
237
|
...t.legend,
|
|
228
238
|
position: "bottom",
|
|
@@ -236,21 +246,21 @@ const bt = X(
|
|
|
236
246
|
tooltip: {
|
|
237
247
|
...t.tooltip,
|
|
238
248
|
y: {
|
|
239
|
-
formatter: (s) =>
|
|
249
|
+
formatter: (s) => b(s)
|
|
240
250
|
}
|
|
241
251
|
},
|
|
242
252
|
noData: {
|
|
243
253
|
text: a("chart.noData")
|
|
244
254
|
}
|
|
245
255
|
};
|
|
246
|
-
if (v && v.length > 0 && (e.colors = v),
|
|
256
|
+
if (v && v.length > 0 && (e.colors = v), bt(r) && (e.xaxis = {
|
|
247
257
|
...t.xaxis,
|
|
248
|
-
categories:
|
|
258
|
+
categories: y ?? []
|
|
249
259
|
}, e.yaxis = {
|
|
250
260
|
...t.yaxis,
|
|
251
261
|
opposite: w,
|
|
252
262
|
labels: {
|
|
253
|
-
formatter: (s) =>
|
|
263
|
+
formatter: (s) => b(s)
|
|
254
264
|
}
|
|
255
265
|
}, e.stroke = {
|
|
256
266
|
curve: "smooth",
|
|
@@ -264,8 +274,8 @@ const bt = X(
|
|
|
264
274
|
dataLabels: {
|
|
265
275
|
...((n = s.radialBar) == null ? void 0 : n.dataLabels) ?? {},
|
|
266
276
|
value: {
|
|
267
|
-
...((
|
|
268
|
-
formatter: (
|
|
277
|
+
...((g = (i = s.radialBar) == null ? void 0 : i.dataLabels) == null ? void 0 : g.value) ?? {},
|
|
278
|
+
formatter: (tt) => m(Number(tt))
|
|
269
279
|
}
|
|
270
280
|
}
|
|
271
281
|
}
|
|
@@ -275,7 +285,7 @@ const bt = X(
|
|
|
275
285
|
type: "pattern",
|
|
276
286
|
opacity: r === "area" ? 0.3 : 1,
|
|
277
287
|
pattern: {
|
|
278
|
-
style: [...
|
|
288
|
+
style: [...pt],
|
|
279
289
|
strokeWidth: 2
|
|
280
290
|
}
|
|
281
291
|
} : r === "area" && (e.fill = {
|
|
@@ -283,45 +293,45 @@ const bt = X(
|
|
|
283
293
|
opacity: 0.3
|
|
284
294
|
}), e;
|
|
285
295
|
}, [
|
|
286
|
-
|
|
296
|
+
B,
|
|
287
297
|
u,
|
|
288
298
|
x,
|
|
289
299
|
L,
|
|
290
|
-
|
|
300
|
+
G,
|
|
291
301
|
p,
|
|
292
|
-
y,
|
|
293
302
|
f,
|
|
303
|
+
b,
|
|
294
304
|
a,
|
|
295
305
|
r,
|
|
296
|
-
|
|
306
|
+
y,
|
|
297
307
|
w,
|
|
298
308
|
A,
|
|
299
309
|
v,
|
|
300
310
|
m
|
|
301
|
-
]),
|
|
302
|
-
const t = T(r) ?
|
|
311
|
+
]), F = M ?? (z > 0 ? z : "100%"), J = O ?? 320, Q = c(() => {
|
|
312
|
+
const t = T(r) ? f ?? [] : y ?? [], e = E;
|
|
303
313
|
return /* @__PURE__ */ S("table", { id: R, className: "ds:sr-only", children: [
|
|
304
|
-
/* @__PURE__ */
|
|
305
|
-
/* @__PURE__ */
|
|
306
|
-
/* @__PURE__ */
|
|
307
|
-
t.map((n, i) => /* @__PURE__ */
|
|
314
|
+
/* @__PURE__ */ d("caption", { children: o }),
|
|
315
|
+
/* @__PURE__ */ d("thead", { children: /* @__PURE__ */ S("tr", { children: [
|
|
316
|
+
/* @__PURE__ */ d("th", { scope: "col", children: a("chart.table.series") }),
|
|
317
|
+
t.map((n, i) => /* @__PURE__ */ d("th", { scope: "col", children: n }, `${n}-${i}`))
|
|
308
318
|
] }) }),
|
|
309
|
-
/* @__PURE__ */
|
|
310
|
-
/* @__PURE__ */
|
|
311
|
-
n.data.map((
|
|
319
|
+
/* @__PURE__ */ d("tbody", { children: e.map((n, i) => /* @__PURE__ */ S("tr", { children: [
|
|
320
|
+
/* @__PURE__ */ d("th", { scope: "row", children: n.name || a("chart.table.value") }),
|
|
321
|
+
n.data.map((g, s) => /* @__PURE__ */ d("td", { children: r === "radialBar" && m ? m(g) : b(g) }, `${i}-${s}`))
|
|
312
322
|
] }, `${n.name}-${i}`)) })
|
|
313
323
|
] });
|
|
314
324
|
}, [
|
|
315
325
|
r,
|
|
316
|
-
|
|
326
|
+
E,
|
|
327
|
+
f,
|
|
317
328
|
y,
|
|
318
|
-
g,
|
|
319
329
|
R,
|
|
320
330
|
o,
|
|
321
331
|
a,
|
|
322
|
-
|
|
332
|
+
b,
|
|
323
333
|
m
|
|
324
|
-
]),
|
|
334
|
+
]), X = c(() => (T(r), h), [h, r]);
|
|
325
335
|
return /* @__PURE__ */ S(
|
|
326
336
|
"div",
|
|
327
337
|
{
|
|
@@ -329,24 +339,24 @@ const bt = X(
|
|
|
329
339
|
role: "img",
|
|
330
340
|
"aria-label": o,
|
|
331
341
|
"aria-describedby": R,
|
|
332
|
-
className:
|
|
342
|
+
className: ut({
|
|
333
343
|
// Explicit height wins over the density min-height unless the
|
|
334
344
|
// caller also asked for a density explicitly.
|
|
335
|
-
density:
|
|
336
|
-
className:
|
|
345
|
+
density: D ?? (O !== void 0 ? "none" : void 0),
|
|
346
|
+
className: W
|
|
337
347
|
}),
|
|
338
348
|
"data-component": "chart",
|
|
339
349
|
"data-component-id": l,
|
|
340
350
|
children: [
|
|
341
|
-
|
|
342
|
-
/* @__PURE__ */
|
|
343
|
-
|
|
351
|
+
Q,
|
|
352
|
+
/* @__PURE__ */ d(
|
|
353
|
+
st,
|
|
344
354
|
{
|
|
345
355
|
type: r,
|
|
346
|
-
series:
|
|
347
|
-
options:
|
|
348
|
-
width:
|
|
349
|
-
height:
|
|
356
|
+
series: X,
|
|
357
|
+
options: V,
|
|
358
|
+
width: F,
|
|
359
|
+
height: J,
|
|
350
360
|
"aria-hidden": "true"
|
|
351
361
|
}
|
|
352
362
|
)
|
|
@@ -355,10 +365,10 @@ const bt = X(
|
|
|
355
365
|
);
|
|
356
366
|
}
|
|
357
367
|
);
|
|
358
|
-
|
|
368
|
+
yt.displayName = "Chart";
|
|
359
369
|
export {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
370
|
+
yt as C,
|
|
371
|
+
ut as a,
|
|
372
|
+
mt as c
|
|
363
373
|
};
|
|
364
|
-
//# sourceMappingURL=chart-
|
|
374
|
+
//# sourceMappingURL=chart-CpkpA74k.js.map
|
|
@@ -3,7 +3,7 @@ import { forwardRef as $, useId as H, useMemo as I } from "react";
|
|
|
3
3
|
import { c as B } from "./index-D2ZczOXr.js";
|
|
4
4
|
import { useTranslation as G } from "react-i18next";
|
|
5
5
|
import { B as K } from "./badge-DCOqV9mI.js";
|
|
6
|
-
import { C as
|
|
6
|
+
import { C as k } from "./card-DPmk26CL.js";
|
|
7
7
|
import { D as d } from "./description-list-ClNLdRMy.js";
|
|
8
8
|
import { K as O, a as Y } from "./key-value-pair-LHKfDT_9.js";
|
|
9
9
|
import { T as j, A as te } from "./transaction-chip-DJCstquX.js";
|
|
@@ -100,7 +100,7 @@ const ue = [
|
|
|
100
100
|
},
|
|
101
101
|
defaultVariants: { surface: "elevated" }
|
|
102
102
|
});
|
|
103
|
-
function
|
|
103
|
+
function R(a, l, r) {
|
|
104
104
|
try {
|
|
105
105
|
return new Intl.NumberFormat(r, {
|
|
106
106
|
style: "currency",
|
|
@@ -200,13 +200,13 @@ const xe = $(
|
|
|
200
200
|
value: i.operatorName
|
|
201
201
|
});
|
|
202
202
|
const U = I(
|
|
203
|
-
() => n != null ?
|
|
203
|
+
() => n != null ? R(n, u, o) : void 0,
|
|
204
204
|
[n, u, o]
|
|
205
205
|
), _ = I(
|
|
206
|
-
() => h != null ?
|
|
206
|
+
() => h != null ? R(h, u, o) : void 0,
|
|
207
207
|
[h, u, o]
|
|
208
208
|
), V = I(
|
|
209
|
-
() => m != null ?
|
|
209
|
+
() => m != null ? R(m, u, o) : void 0,
|
|
210
210
|
[m, u, o]
|
|
211
211
|
), Z = U != null || _ != null || V != null, ee = !!b && b.length > 0, F = /* @__PURE__ */ c("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
|
|
212
212
|
/* @__PURE__ */ c("div", { className: "ds:flex ds:items-start ds:gap-[var(--spacing-md)] ds:flex-wrap", children: [
|
|
@@ -274,7 +274,7 @@ const xe = $(
|
|
|
274
274
|
vat: s.vatPercentage,
|
|
275
275
|
defaultValue: "{{description}} (VAT {{vat}}%)"
|
|
276
276
|
}) : s.description }),
|
|
277
|
-
/* @__PURE__ */ e(d.Detail, { numeric: !0, children:
|
|
277
|
+
/* @__PURE__ */ e(d.Detail, { numeric: !0, children: R(s.amountCents, u, o) })
|
|
278
278
|
] }, `${s.description}-${ae}`))
|
|
279
279
|
}
|
|
280
280
|
)
|
|
@@ -297,7 +297,7 @@ const xe = $(
|
|
|
297
297
|
id: a,
|
|
298
298
|
className: ge({ surface: x, className: f }),
|
|
299
299
|
...S,
|
|
300
|
-
children: x === "elevated" ? /* @__PURE__ */ e(
|
|
300
|
+
children: x === "elevated" ? /* @__PURE__ */ e(k, { variant: "elevated", children: /* @__PURE__ */ e(k.Body, { children: F }) }) : /* @__PURE__ */ e("div", { className: X({ surface: "flat" }), children: F })
|
|
301
301
|
}
|
|
302
302
|
);
|
|
303
303
|
}
|
|
@@ -341,7 +341,7 @@ const Pe = {
|
|
|
341
341
|
paid: "Paid",
|
|
342
342
|
failed: "Failed",
|
|
343
343
|
cancelled: "Cancelled"
|
|
344
|
-
},
|
|
344
|
+
}, Re = B("ds:w-full ds:text-[color:var(--foreground)]", {
|
|
345
345
|
variants: {
|
|
346
346
|
surface: {
|
|
347
347
|
flat: "",
|
|
@@ -350,7 +350,7 @@ const Pe = {
|
|
|
350
350
|
},
|
|
351
351
|
defaultVariants: { surface: "elevated" }
|
|
352
352
|
});
|
|
353
|
-
function
|
|
353
|
+
function ke(a, l) {
|
|
354
354
|
const r = new Date(a);
|
|
355
355
|
if (Number.isNaN(r.getTime())) return a;
|
|
356
356
|
try {
|
|
@@ -398,7 +398,7 @@ const De = $(
|
|
|
398
398
|
key: "dueDate",
|
|
399
399
|
icon: /* @__PURE__ */ e(se, { "aria-hidden": "true" }),
|
|
400
400
|
label: f("paymentRequestCard.label.dueDate", "Due date"),
|
|
401
|
-
value:
|
|
401
|
+
value: ke(v, t)
|
|
402
402
|
}), m && g.push({
|
|
403
403
|
key: "carePlan",
|
|
404
404
|
icon: /* @__PURE__ */ e(Q, { "aria-hidden": "true" }),
|
|
@@ -451,18 +451,20 @@ const De = $(
|
|
|
451
451
|
"data-component-id": a,
|
|
452
452
|
"data-status": n,
|
|
453
453
|
id: a,
|
|
454
|
-
className:
|
|
454
|
+
className: Re({ surface: b, className: u }),
|
|
455
455
|
...x,
|
|
456
|
-
children: b === "elevated" ? /* @__PURE__ */ e(
|
|
456
|
+
children: b === "elevated" ? /* @__PURE__ */ e(k, { variant: "elevated", children: /* @__PURE__ */ e(k.Body, { children: T }) }) : /* @__PURE__ */ e("div", { className: X({ surface: "flat" }), children: T })
|
|
457
457
|
}
|
|
458
458
|
);
|
|
459
459
|
}
|
|
460
460
|
);
|
|
461
461
|
De.displayName = "PaymentRequestCard";
|
|
462
462
|
export {
|
|
463
|
+
M as C,
|
|
463
464
|
xe as P,
|
|
465
|
+
pe as R,
|
|
464
466
|
De as a,
|
|
465
467
|
Pe as b,
|
|
466
468
|
he as p
|
|
467
469
|
};
|
|
468
|
-
//# sourceMappingURL=payment-request-card-
|
|
470
|
+
//# sourceMappingURL=payment-request-card-d-RmzsUd.js.map
|
package/dist/agent-catalog.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"packageVersion": "0.
|
|
3
|
+
"packageVersion": "0.82.0",
|
|
4
4
|
"components": [
|
|
5
5
|
{
|
|
6
6
|
"kind": "component",
|
|
@@ -15223,6 +15223,88 @@
|
|
|
15223
15223
|
}
|
|
15224
15224
|
]
|
|
15225
15225
|
},
|
|
15226
|
+
{
|
|
15227
|
+
"kind": "pattern",
|
|
15228
|
+
"id": "payment-automation-upsell",
|
|
15229
|
+
"composes": [
|
|
15230
|
+
{
|
|
15231
|
+
"component": "card",
|
|
15232
|
+
"as": "heroCard"
|
|
15233
|
+
},
|
|
15234
|
+
{
|
|
15235
|
+
"component": "benefit-card",
|
|
15236
|
+
"as": "howItWorks",
|
|
15237
|
+
"entity": "step"
|
|
15238
|
+
},
|
|
15239
|
+
{
|
|
15240
|
+
"component": "card",
|
|
15241
|
+
"as": "previewCard"
|
|
15242
|
+
},
|
|
15243
|
+
{
|
|
15244
|
+
"component": "list",
|
|
15245
|
+
"as": "previewList",
|
|
15246
|
+
"entity": "paymentRequest"
|
|
15247
|
+
},
|
|
15248
|
+
{
|
|
15249
|
+
"component": "badge",
|
|
15250
|
+
"as": "requestStatus"
|
|
15251
|
+
},
|
|
15252
|
+
{
|
|
15253
|
+
"component": "stat",
|
|
15254
|
+
"as": "proofMetric",
|
|
15255
|
+
"entity": "metric"
|
|
15256
|
+
},
|
|
15257
|
+
{
|
|
15258
|
+
"component": "card",
|
|
15259
|
+
"as": "featuresCard"
|
|
15260
|
+
},
|
|
15261
|
+
{
|
|
15262
|
+
"component": "list",
|
|
15263
|
+
"as": "featureList",
|
|
15264
|
+
"entity": "feature"
|
|
15265
|
+
},
|
|
15266
|
+
{
|
|
15267
|
+
"component": "button",
|
|
15268
|
+
"as": "activate"
|
|
15269
|
+
},
|
|
15270
|
+
{
|
|
15271
|
+
"component": "button",
|
|
15272
|
+
"as": "notifyAdmin"
|
|
15273
|
+
}
|
|
15274
|
+
],
|
|
15275
|
+
"workflows": [
|
|
15276
|
+
{
|
|
15277
|
+
"name": "view_upsell",
|
|
15278
|
+
"safety": "read",
|
|
15279
|
+
"description": "Read the Payment Automation value preview: the how-it-works steps, the sample payment-request list, and the included-features checklist.",
|
|
15280
|
+
"descriptionKey": "ui.agent.paymentAutomationUpsell.workflows.viewUpsell",
|
|
15281
|
+
"uiActions": [],
|
|
15282
|
+
"apiActions": [
|
|
15283
|
+
"paymentAutomation.getModuleStatus"
|
|
15284
|
+
]
|
|
15285
|
+
},
|
|
15286
|
+
{
|
|
15287
|
+
"name": "activate_module",
|
|
15288
|
+
"safety": "write",
|
|
15289
|
+
"description": "As the practice owner, activate the Payment Automation module on the subscription. Persists a billing change.",
|
|
15290
|
+
"descriptionKey": "ui.agent.paymentAutomationUpsell.workflows.activateModule",
|
|
15291
|
+
"uiActions": [],
|
|
15292
|
+
"apiActions": [
|
|
15293
|
+
"subscription.enableModule"
|
|
15294
|
+
]
|
|
15295
|
+
},
|
|
15296
|
+
{
|
|
15297
|
+
"name": "notify_admin",
|
|
15298
|
+
"safety": "write",
|
|
15299
|
+
"description": "As a non-owner member, notify the practice owner / admin to activate the Payment Automation module.",
|
|
15300
|
+
"descriptionKey": "ui.agent.paymentAutomationUpsell.workflows.notifyAdmin",
|
|
15301
|
+
"uiActions": [],
|
|
15302
|
+
"apiActions": [
|
|
15303
|
+
"notification.notifyOwner"
|
|
15304
|
+
]
|
|
15305
|
+
}
|
|
15306
|
+
]
|
|
15307
|
+
},
|
|
15226
15308
|
{
|
|
15227
15309
|
"kind": "pattern",
|
|
15228
15310
|
"id": "practice-profile-hero",
|
package/dist/agent-i18n/en.json
CHANGED
|
@@ -1497,6 +1497,13 @@
|
|
|
1497
1497
|
"exportRoster": "Export the current (optionally filtered) patient roster from the page-header table-tools cluster — CSV / Excel / PDF."
|
|
1498
1498
|
}
|
|
1499
1499
|
},
|
|
1500
|
+
"paymentAutomationUpsell": {
|
|
1501
|
+
"workflows": {
|
|
1502
|
+
"viewUpsell": "Read the Payment Automation value preview: the how-it-works steps, the sample payment-request list, and the included-features checklist.",
|
|
1503
|
+
"activateModule": "As the practice owner, activate the Payment Automation module on the subscription. Persists a billing change.",
|
|
1504
|
+
"notifyAdmin": "As a non-owner member, notify the practice owner / admin to activate the Payment Automation module."
|
|
1505
|
+
}
|
|
1506
|
+
},
|
|
1500
1507
|
"practiceProfileHero": {
|
|
1501
1508
|
"workflows": {
|
|
1502
1509
|
"viewProfile": "Read the practice's public profile summary — name, tagline, average rating, review count, and trust badges."
|
|
@@ -50,6 +50,16 @@ export interface ChartProps extends VariantProps<typeof chartVariants> {
|
|
|
50
50
|
* Ignored for every other chart type. Defaults to ApexCharts' `${value}%`.
|
|
51
51
|
*/
|
|
52
52
|
radialValueFormatter?: (value: number) => string;
|
|
53
|
+
/**
|
|
54
|
+
* Formats the numeric value of each data point wherever it is surfaced as
|
|
55
|
+
* text — the tooltip, the value (y) axis on categorical charts, and the
|
|
56
|
+
* screen-reader summary table. Use it to append a unit or currency symbol,
|
|
57
|
+
* e.g. `(v) => new Intl.NumberFormat(locale, { style: 'currency', currency:
|
|
58
|
+
* 'EUR' }).format(v)`. Defaults to `Intl.NumberFormat(locale)` (grouped
|
|
59
|
+
* number, no unit). Does not apply to a `radialBar` ring centre — use
|
|
60
|
+
* `radialValueFormatter` for that.
|
|
61
|
+
*/
|
|
62
|
+
valueFormatter?: (value: number) => string;
|
|
53
63
|
/** Extra class names on the wrapper. */
|
|
54
64
|
className?: string;
|
|
55
65
|
}
|
|
@@ -198,6 +198,7 @@ export * from './whatsapp-button';
|
|
|
198
198
|
export * from './workflow';
|
|
199
199
|
export * from '../patterns/alia-assistant';
|
|
200
200
|
export * from '../patterns/marketplace-app-shell';
|
|
201
|
+
export * from '../patterns/payment-automation-upsell';
|
|
201
202
|
export * from '../patterns/signature-request';
|
|
202
203
|
export * from './dependent-selector';
|
|
203
204
|
export * from './document-preview';
|