@alfadocs/ui-kit 0.95.0 → 0.96.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/signature-request-BzXTV_RH.js +403 -0
- package/dist/agent-catalog.json +10 -6
- package/dist/agent-i18n/en.json +1 -1
- package/dist/i18n/locales/ar.d.ts +3 -1
- package/dist/i18n/locales/ar.js +3 -1
- package/dist/i18n/locales/de.d.ts +3 -1
- package/dist/i18n/locales/de.js +3 -1
- package/dist/i18n/locales/el.d.ts +3 -1
- package/dist/i18n/locales/el.js +3 -1
- package/dist/i18n/locales/en.d.ts +3 -1
- package/dist/i18n/locales/en.js +3 -1
- package/dist/i18n/locales/es.d.ts +3 -1
- package/dist/i18n/locales/es.js +3 -1
- package/dist/i18n/locales/fr.d.ts +3 -1
- package/dist/i18n/locales/fr.js +3 -1
- package/dist/i18n/locales/hi.d.ts +3 -1
- package/dist/i18n/locales/hi.js +3 -1
- package/dist/i18n/locales/it.d.ts +3 -1
- package/dist/i18n/locales/it.js +3 -1
- package/dist/i18n/locales/ja.d.ts +3 -1
- package/dist/i18n/locales/ja.js +3 -1
- package/dist/i18n/locales/nl.d.ts +3 -1
- package/dist/i18n/locales/nl.js +3 -1
- package/dist/i18n/locales/pl.d.ts +3 -1
- package/dist/i18n/locales/pl.js +3 -1
- package/dist/i18n/locales/pt.d.ts +3 -1
- package/dist/i18n/locales/pt.js +3 -1
- package/dist/i18n/locales/ro.d.ts +3 -1
- package/dist/i18n/locales/ro.js +3 -1
- package/dist/i18n/locales/ru.d.ts +3 -1
- package/dist/i18n/locales/ru.js +3 -1
- package/dist/i18n/locales/sq.d.ts +3 -1
- package/dist/i18n/locales/sq.js +3 -1
- package/dist/i18n/locales/sv.d.ts +3 -1
- package/dist/i18n/locales/sv.js +3 -1
- package/dist/i18n/locales/tr.d.ts +3 -1
- package/dist/i18n/locales/tr.js +3 -1
- package/dist/i18n/locales/zh.d.ts +3 -1
- package/dist/i18n/locales/zh.js +3 -1
- package/dist/index.js +1 -1
- package/dist/locales/ar.json +3 -1
- package/dist/locales/de.json +3 -1
- package/dist/locales/el.json +3 -1
- package/dist/locales/en.json +3 -1
- package/dist/locales/es.json +3 -1
- package/dist/locales/fr.json +3 -1
- package/dist/locales/hi.json +3 -1
- package/dist/locales/it.json +3 -1
- package/dist/locales/ja.json +3 -1
- package/dist/locales/nl.json +3 -1
- package/dist/locales/pl.json +3 -1
- package/dist/locales/pt.json +3 -1
- package/dist/locales/ro.json +3 -1
- package/dist/locales/ru.json +3 -1
- package/dist/locales/sq.json +3 -1
- package/dist/locales/sv.json +3 -1
- package/dist/locales/tr.json +3 -1
- package/dist/locales/zh.json +3 -1
- package/dist/patterns/signature-request/index.d.ts +1 -1
- package/dist/patterns/signature-request/index.js +1 -1
- package/dist/patterns/signature-request/signature-request.d.ts +30 -3
- package/package.json +1 -1
- package/dist/_chunks/signature-request-D_6jgDZd.js +0 -324
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
import { jsx as a, jsxs as r } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as pe, useRef as A, useState as S, useEffect as J } from "react";
|
|
3
|
+
import { useTranslation as ve } from "react-i18next";
|
|
4
|
+
import { D as m } from "./dialog-UbKJCi1X.js";
|
|
5
|
+
import { B as k } from "./button-CPGiR_bH.js";
|
|
6
|
+
import { I as ge } from "./icon-button-C_kbcd7I.js";
|
|
7
|
+
import { C as K } from "./checkbox-BuZ1u__2.js";
|
|
8
|
+
import { a as fe } from "./whatsapp-button-BIy6NaJK.js";
|
|
9
|
+
import { S as Q } from "./select-BW5ecXlX.js";
|
|
10
|
+
import { S as xe } from "./switch-OILsBLWo.js";
|
|
11
|
+
import { A as y } from "./alert-Cxaqd-QO.js";
|
|
12
|
+
import { I as Re } from "./info-tip-Bxk3w6UM.js";
|
|
13
|
+
import { S as be } from "./separator-CYU_bGFn.js";
|
|
14
|
+
import { A as Y } from "./avatar-BNQNhoyL.js";
|
|
15
|
+
import { c as ae } from "./createLucideIcon-DhHxpK9K.js";
|
|
16
|
+
import { P as qe } from "./plus-DzMQ_c6b.js";
|
|
17
|
+
import { X as Ne } from "./x-B5YnXwCz.js";
|
|
18
|
+
import { P as we } from "./pen-line-D0De5zdl.js";
|
|
19
|
+
import { M as Ce } from "./mail-BqXVF2zH.js";
|
|
20
|
+
import { M as Ie } from "./message-square-Bye4ATvx.js";
|
|
21
|
+
/**
|
|
22
|
+
* @license lucide-react v1.22.0 - ISC
|
|
23
|
+
*
|
|
24
|
+
* This source code is licensed under the ISC license.
|
|
25
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
26
|
+
*/
|
|
27
|
+
const Se = [
|
|
28
|
+
["rect", { width: "16", height: "20", x: "4", y: "2", rx: "2", ry: "2", key: "76otgf" }],
|
|
29
|
+
["line", { x1: "12", x2: "12.01", y1: "18", y2: "18", key: "1dp563" }]
|
|
30
|
+
], ke = ae("tablet", Se);
|
|
31
|
+
/**
|
|
32
|
+
* @license lucide-react v1.22.0 - ISC
|
|
33
|
+
*
|
|
34
|
+
* This source code is licensed under the ISC license.
|
|
35
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
36
|
+
*/
|
|
37
|
+
const ye = [
|
|
38
|
+
["path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2", key: "1yyitq" }],
|
|
39
|
+
["circle", { cx: "9", cy: "7", r: "4", key: "nufk8" }],
|
|
40
|
+
["line", { x1: "19", x2: "19", y1: "8", y2: "14", key: "1bvyxn" }],
|
|
41
|
+
["line", { x1: "22", x2: "16", y1: "11", y2: "11", key: "1shjgl" }]
|
|
42
|
+
], ze = ae("user-plus", ye), v = "__assign-later__", Z = [
|
|
43
|
+
"sms",
|
|
44
|
+
"email",
|
|
45
|
+
"whatsapp",
|
|
46
|
+
"on-device"
|
|
47
|
+
];
|
|
48
|
+
function ee(h, z) {
|
|
49
|
+
var c;
|
|
50
|
+
return ((c = h.find((o) => o.value === z)) == null ? void 0 : c.label) ?? "";
|
|
51
|
+
}
|
|
52
|
+
const Oe = pe(
|
|
53
|
+
({
|
|
54
|
+
open: h,
|
|
55
|
+
onOpenChange: z,
|
|
56
|
+
operators: c,
|
|
57
|
+
signerOptions: o,
|
|
58
|
+
currentOperatorId: O,
|
|
59
|
+
allowAssignLater: _ = !0,
|
|
60
|
+
initialOperatorId: B,
|
|
61
|
+
initialOperatorChannel: L,
|
|
62
|
+
initialSigners: D,
|
|
63
|
+
maxSigners: se = 2,
|
|
64
|
+
busy: i = !1,
|
|
65
|
+
error: j,
|
|
66
|
+
title: ne,
|
|
67
|
+
description: te,
|
|
68
|
+
onRequestSignature: le,
|
|
69
|
+
contentProps: re
|
|
70
|
+
}, ie) => {
|
|
71
|
+
const { t: n } = ve(), E = A(0), F = A(null), H = (e) => {
|
|
72
|
+
var l;
|
|
73
|
+
const s = (l = o.find(
|
|
74
|
+
(d) => d.value === e
|
|
75
|
+
)) == null ? void 0 : l.availableChannels;
|
|
76
|
+
return s && s.length > 0 ? Z.filter((d) => s.includes(d)) : Z;
|
|
77
|
+
}, M = (e, s) => {
|
|
78
|
+
const l = H(e);
|
|
79
|
+
return l.includes(s) ? s : l[0];
|
|
80
|
+
}, U = () => {
|
|
81
|
+
var e, s;
|
|
82
|
+
return B === null ? _ ? v : ((e = c[0]) == null ? void 0 : e.value) ?? v : B ?? ((s = c[0]) == null ? void 0 : s.value) ?? (_ ? v : "");
|
|
83
|
+
}, V = () => (D && D.length > 0 ? D : o.length > 0 ? [
|
|
84
|
+
{
|
|
85
|
+
signerId: o[0].value,
|
|
86
|
+
channel: M(o[0].value, "on-device")
|
|
87
|
+
}
|
|
88
|
+
] : []).map((s) => ({ ...s, rowId: E.current++ })), g = (e) => {
|
|
89
|
+
var s;
|
|
90
|
+
return ((s = c.find((l) => l.value === e)) == null ? void 0 : s.defaultChannel) ?? "email";
|
|
91
|
+
}, W = (e, s) => L === "on-device" ? s.some((l) => l.channel === "on-device") ? "on-device" : g(e) : L ?? g(e), [p, T] = S(U), [u, b] = S(V), [q, f] = S(
|
|
92
|
+
() => W(p, u)
|
|
93
|
+
), [G, x] = S(null), X = A(h);
|
|
94
|
+
J(() => {
|
|
95
|
+
if (h && !X.current) {
|
|
96
|
+
const e = U(), s = V();
|
|
97
|
+
T(e), b(s), f(W(e, s)), x(null);
|
|
98
|
+
}
|
|
99
|
+
X.current = h;
|
|
100
|
+
}, [h]);
|
|
101
|
+
const N = u.some(
|
|
102
|
+
(e) => e.channel === "on-device"
|
|
103
|
+
);
|
|
104
|
+
J(() => {
|
|
105
|
+
if (q === "on-device" && !N) {
|
|
106
|
+
const e = g(p);
|
|
107
|
+
f(e), x(e);
|
|
108
|
+
}
|
|
109
|
+
}, [q, N, p]);
|
|
110
|
+
const de = _ ? [
|
|
111
|
+
...c,
|
|
112
|
+
{ value: v, label: n("signatureRequest.assignLater") }
|
|
113
|
+
] : c, w = p === v, R = {
|
|
114
|
+
sms: {
|
|
115
|
+
label: n("signatureRequest.viaSms"),
|
|
116
|
+
icon: /* @__PURE__ */ a(Ie, { className: "ds:size-4", "aria-hidden": !0 })
|
|
117
|
+
},
|
|
118
|
+
email: {
|
|
119
|
+
label: n("signatureRequest.viaEmail"),
|
|
120
|
+
icon: /* @__PURE__ */ a(Ce, { className: "ds:size-4", "aria-hidden": !0 })
|
|
121
|
+
},
|
|
122
|
+
whatsapp: {
|
|
123
|
+
label: n("signatureRequest.viaWhatsapp"),
|
|
124
|
+
icon: /* @__PURE__ */ a(fe, { className: "ds:size-4", "aria-hidden": !0 })
|
|
125
|
+
},
|
|
126
|
+
"on-device": {
|
|
127
|
+
label: n("signatureRequest.onThisDevice"),
|
|
128
|
+
icon: /* @__PURE__ */ a(ke, { className: "ds:size-4", "aria-hidden": !0 })
|
|
129
|
+
}
|
|
130
|
+
}, ce = [
|
|
131
|
+
{ value: "sms", ...R.sms },
|
|
132
|
+
{ value: "email", ...R.email },
|
|
133
|
+
{
|
|
134
|
+
value: "on-device",
|
|
135
|
+
...R["on-device"],
|
|
136
|
+
disabled: !N,
|
|
137
|
+
hint: N ? void 0 : n("signatureRequest.onDeviceUnavailableHint")
|
|
138
|
+
}
|
|
139
|
+
], $ = u.map((e) => e.signerId), C = o.find(
|
|
140
|
+
(e) => !$.includes(e.value)
|
|
141
|
+
), oe = !i && u.length < se && C !== void 0, P = (e, s) => {
|
|
142
|
+
b(
|
|
143
|
+
(l) => l.map(
|
|
144
|
+
(d) => d.rowId === e ? { ...d, ...s } : d
|
|
145
|
+
)
|
|
146
|
+
);
|
|
147
|
+
}, ue = () => {
|
|
148
|
+
C && b((e) => [
|
|
149
|
+
...e,
|
|
150
|
+
{
|
|
151
|
+
signerId: C.value,
|
|
152
|
+
channel: M(C.value, "sms"),
|
|
153
|
+
rowId: E.current++
|
|
154
|
+
}
|
|
155
|
+
]);
|
|
156
|
+
}, me = (e) => {
|
|
157
|
+
var s;
|
|
158
|
+
(s = F.current) == null || s.focus(), b(
|
|
159
|
+
(l) => l.filter((d) => d.rowId !== e)
|
|
160
|
+
);
|
|
161
|
+
}, he = () => {
|
|
162
|
+
le({
|
|
163
|
+
operatorId: w ? null : p,
|
|
164
|
+
operatorChannel: w ? null : q,
|
|
165
|
+
signers: u.map(({ rowId: e, ...s }) => s)
|
|
166
|
+
});
|
|
167
|
+
};
|
|
168
|
+
return /* @__PURE__ */ a("div", { ref: ie, className: "ds:contents", "data-component": "signature-request", children: /* @__PURE__ */ a(m, { open: h, onOpenChange: z, children: /* @__PURE__ */ r(m.Content, { size: "lg", hideCloseButton: !0, ...re, children: [
|
|
169
|
+
/* @__PURE__ */ r(m.Header, { children: [
|
|
170
|
+
/* @__PURE__ */ a(m.Title, { children: ne ?? n("signatureRequest.title") }),
|
|
171
|
+
/* @__PURE__ */ a(m.Description, { children: te ?? n("signatureRequest.noSignedVersions") })
|
|
172
|
+
] }),
|
|
173
|
+
/* @__PURE__ */ r(m.Body, { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
|
|
174
|
+
/* @__PURE__ */ r("section", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
|
|
175
|
+
/* @__PURE__ */ r("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
|
|
176
|
+
/* @__PURE__ */ a("p", { className: "type-eyebrow ds:text-start ds:text-[color:var(--muted-foreground)]", children: n("signatureRequest.operatorSection") }),
|
|
177
|
+
O !== void 0 ? /* @__PURE__ */ a(
|
|
178
|
+
k,
|
|
179
|
+
{
|
|
180
|
+
intent: "primary",
|
|
181
|
+
size: "sm",
|
|
182
|
+
startIcon: /* @__PURE__ */ a(ze, {}),
|
|
183
|
+
disabled: i,
|
|
184
|
+
onClick: () => {
|
|
185
|
+
T(O), f(
|
|
186
|
+
g(O)
|
|
187
|
+
), x(null);
|
|
188
|
+
},
|
|
189
|
+
children: n("signatureRequest.assignToMe")
|
|
190
|
+
}
|
|
191
|
+
) : null
|
|
192
|
+
] }),
|
|
193
|
+
/* @__PURE__ */ r("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: [
|
|
194
|
+
/* @__PURE__ */ a(
|
|
195
|
+
Y,
|
|
196
|
+
{
|
|
197
|
+
"aria-hidden": "true",
|
|
198
|
+
name: w ? void 0 : ee(c, p),
|
|
199
|
+
size: "sm"
|
|
200
|
+
}
|
|
201
|
+
),
|
|
202
|
+
/* @__PURE__ */ a("div", { className: "ds:min-w-0 ds:flex-1 ds:text-start", children: /* @__PURE__ */ a(
|
|
203
|
+
Q,
|
|
204
|
+
{
|
|
205
|
+
options: de,
|
|
206
|
+
value: p,
|
|
207
|
+
onValueChange: (e) => {
|
|
208
|
+
e && (T(e), f(
|
|
209
|
+
e === v ? "email" : g(e)
|
|
210
|
+
), x(null));
|
|
211
|
+
},
|
|
212
|
+
required: !0,
|
|
213
|
+
disabled: i,
|
|
214
|
+
placeholder: n("signatureRequest.operatorPlaceholder"),
|
|
215
|
+
"aria-label": n("signatureRequest.operatorSection")
|
|
216
|
+
}
|
|
217
|
+
) })
|
|
218
|
+
] }),
|
|
219
|
+
w ? null : /* @__PURE__ */ a(
|
|
220
|
+
"div",
|
|
221
|
+
{
|
|
222
|
+
role: "group",
|
|
223
|
+
"aria-label": n("signatureRequest.operatorChannelLabel"),
|
|
224
|
+
className: "ds:flex ds:flex-wrap ds:items-center ds:gap-x-[var(--spacing-lg)] ds:gap-y-[var(--spacing-sm)] ds:ps-[var(--spacing-xl)]",
|
|
225
|
+
children: ce.map((e) => /* @__PURE__ */ r(
|
|
226
|
+
"span",
|
|
227
|
+
{
|
|
228
|
+
className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-sm)]",
|
|
229
|
+
children: [
|
|
230
|
+
/* @__PURE__ */ a(
|
|
231
|
+
K,
|
|
232
|
+
{
|
|
233
|
+
checked: q === e.value,
|
|
234
|
+
disabled: i || e.disabled,
|
|
235
|
+
onCheckedChange: (s) => {
|
|
236
|
+
s === !0 && (f(e.value), x(null));
|
|
237
|
+
},
|
|
238
|
+
label: /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
|
|
239
|
+
/* @__PURE__ */ a(
|
|
240
|
+
"span",
|
|
241
|
+
{
|
|
242
|
+
"aria-hidden": "true",
|
|
243
|
+
className: "ds:text-[var(--accent)]",
|
|
244
|
+
children: e.icon
|
|
245
|
+
}
|
|
246
|
+
),
|
|
247
|
+
e.label
|
|
248
|
+
] })
|
|
249
|
+
}
|
|
250
|
+
),
|
|
251
|
+
e.hint ? /* @__PURE__ */ a(Re, { size: "sm", content: e.hint }) : null
|
|
252
|
+
]
|
|
253
|
+
},
|
|
254
|
+
e.value
|
|
255
|
+
))
|
|
256
|
+
}
|
|
257
|
+
),
|
|
258
|
+
/* @__PURE__ */ a("span", { role: "status", className: "ds:sr-only", children: G ? n("signatureRequest.operatorChannelReverted", {
|
|
259
|
+
channel: R[G].label
|
|
260
|
+
}) : null })
|
|
261
|
+
] }),
|
|
262
|
+
/* @__PURE__ */ a(be, { decorative: !0 }),
|
|
263
|
+
/* @__PURE__ */ r("section", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:text-start", children: [
|
|
264
|
+
/* @__PURE__ */ r("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
|
|
265
|
+
/* @__PURE__ */ a("p", { className: "type-eyebrow ds:text-[color:var(--muted-foreground)]", children: n("signatureRequest.signersSection") }),
|
|
266
|
+
/* @__PURE__ */ a(
|
|
267
|
+
k,
|
|
268
|
+
{
|
|
269
|
+
ref: F,
|
|
270
|
+
intent: "primary",
|
|
271
|
+
size: "sm",
|
|
272
|
+
startIcon: /* @__PURE__ */ a(qe, {}),
|
|
273
|
+
disabled: !oe,
|
|
274
|
+
onClick: ue,
|
|
275
|
+
children: n("signatureRequest.addSigner")
|
|
276
|
+
}
|
|
277
|
+
)
|
|
278
|
+
] }),
|
|
279
|
+
u.map((e) => {
|
|
280
|
+
const s = o.filter(
|
|
281
|
+
(t) => t.value === e.signerId || !$.includes(t.value)
|
|
282
|
+
), l = ee(o, e.signerId), d = H(e.signerId).map(
|
|
283
|
+
(t) => ({ value: t, ...R[t] })
|
|
284
|
+
);
|
|
285
|
+
return /* @__PURE__ */ r(
|
|
286
|
+
"div",
|
|
287
|
+
{
|
|
288
|
+
role: "group",
|
|
289
|
+
"aria-label": l,
|
|
290
|
+
className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]",
|
|
291
|
+
children: [
|
|
292
|
+
/* @__PURE__ */ r("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: [
|
|
293
|
+
/* @__PURE__ */ a(Y, { "aria-hidden": "true", name: l, size: "sm" }),
|
|
294
|
+
/* @__PURE__ */ a("div", { className: "ds:min-w-0 ds:flex-1", children: /* @__PURE__ */ a(
|
|
295
|
+
Q,
|
|
296
|
+
{
|
|
297
|
+
options: s,
|
|
298
|
+
value: e.signerId,
|
|
299
|
+
onValueChange: (t) => {
|
|
300
|
+
if (!t) return;
|
|
301
|
+
const I = M(
|
|
302
|
+
t,
|
|
303
|
+
e.channel
|
|
304
|
+
);
|
|
305
|
+
P(e.rowId, {
|
|
306
|
+
signerId: t,
|
|
307
|
+
channel: I,
|
|
308
|
+
skipOtp: I === "on-device" ? e.skipOtp : void 0
|
|
309
|
+
});
|
|
310
|
+
},
|
|
311
|
+
required: !0,
|
|
312
|
+
disabled: i,
|
|
313
|
+
placeholder: n(
|
|
314
|
+
"signatureRequest.signerPlaceholder"
|
|
315
|
+
),
|
|
316
|
+
"aria-label": n("signatureRequest.signerPlaceholder")
|
|
317
|
+
}
|
|
318
|
+
) }),
|
|
319
|
+
u.length > 1 ? /* @__PURE__ */ a(
|
|
320
|
+
ge,
|
|
321
|
+
{
|
|
322
|
+
intent: "ghost",
|
|
323
|
+
size: "sm",
|
|
324
|
+
icon: /* @__PURE__ */ a(Ne, {}),
|
|
325
|
+
disabled: i,
|
|
326
|
+
"aria-label": n("signatureRequest.removeSigner"),
|
|
327
|
+
onClick: () => me(e.rowId)
|
|
328
|
+
}
|
|
329
|
+
) : null
|
|
330
|
+
] }),
|
|
331
|
+
/* @__PURE__ */ a(
|
|
332
|
+
"div",
|
|
333
|
+
{
|
|
334
|
+
role: "group",
|
|
335
|
+
"aria-label": n("signatureRequest.channelLabel"),
|
|
336
|
+
className: "ds:flex ds:flex-wrap ds:items-center ds:gap-x-[var(--spacing-lg)] ds:gap-y-[var(--spacing-sm)] ds:ps-[var(--spacing-xl)]",
|
|
337
|
+
children: d.map((t) => /* @__PURE__ */ a(
|
|
338
|
+
K,
|
|
339
|
+
{
|
|
340
|
+
checked: e.channel === t.value,
|
|
341
|
+
disabled: i,
|
|
342
|
+
onCheckedChange: (I) => I === !0 && P(e.rowId, {
|
|
343
|
+
channel: t.value,
|
|
344
|
+
skipOtp: void 0
|
|
345
|
+
}),
|
|
346
|
+
label: /* @__PURE__ */ r("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
|
|
347
|
+
/* @__PURE__ */ a(
|
|
348
|
+
"span",
|
|
349
|
+
{
|
|
350
|
+
"aria-hidden": "true",
|
|
351
|
+
className: "ds:text-[var(--accent)]",
|
|
352
|
+
children: t.icon
|
|
353
|
+
}
|
|
354
|
+
),
|
|
355
|
+
t.label
|
|
356
|
+
] })
|
|
357
|
+
},
|
|
358
|
+
t.value
|
|
359
|
+
))
|
|
360
|
+
}
|
|
361
|
+
),
|
|
362
|
+
e.channel === "on-device" ? /* @__PURE__ */ a("div", { className: "ds:ps-[var(--spacing-xl)]", children: /* @__PURE__ */ a(
|
|
363
|
+
xe,
|
|
364
|
+
{
|
|
365
|
+
label: n("signatureRequest.noOtp"),
|
|
366
|
+
checked: e.skipOtp === !0,
|
|
367
|
+
disabled: i,
|
|
368
|
+
onCheckedChange: (t) => P(e.rowId, { skipOtp: t })
|
|
369
|
+
}
|
|
370
|
+
) }) : null
|
|
371
|
+
]
|
|
372
|
+
},
|
|
373
|
+
e.rowId
|
|
374
|
+
);
|
|
375
|
+
})
|
|
376
|
+
] }),
|
|
377
|
+
u.some(
|
|
378
|
+
(e) => e.channel === "on-device" && e.skipOtp === !0
|
|
379
|
+
) ? /* @__PURE__ */ a(y, { variant: "warning", children: /* @__PURE__ */ a(y.Description, { children: n("signatureRequest.noOtpWarning") }) }) : null,
|
|
380
|
+
j ? /* @__PURE__ */ a(y, { variant: "error", children: /* @__PURE__ */ a(y.Description, { children: j }) }) : null
|
|
381
|
+
] }),
|
|
382
|
+
/* @__PURE__ */ r(m.Footer, { children: [
|
|
383
|
+
/* @__PURE__ */ a(
|
|
384
|
+
k,
|
|
385
|
+
{
|
|
386
|
+
intent: "primary",
|
|
387
|
+
startIcon: /* @__PURE__ */ a(we, {}),
|
|
388
|
+
onClick: he,
|
|
389
|
+
disabled: i || u.length === 0,
|
|
390
|
+
loading: i,
|
|
391
|
+
children: n("signatureRequest.requestSignature")
|
|
392
|
+
}
|
|
393
|
+
),
|
|
394
|
+
/* @__PURE__ */ a(m.Close, { asChild: !0, children: /* @__PURE__ */ a(k, { intent: "outline", disabled: i, children: n("signatureRequest.close") }) })
|
|
395
|
+
] })
|
|
396
|
+
] }) }) });
|
|
397
|
+
}
|
|
398
|
+
);
|
|
399
|
+
Oe.displayName = "SignatureRequestModal";
|
|
400
|
+
export {
|
|
401
|
+
Oe as S
|
|
402
|
+
};
|
|
403
|
+
//# sourceMappingURL=signature-request-BzXTV_RH.js.map
|
package/dist/agent-catalog.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"packageVersion": "0.
|
|
3
|
+
"packageVersion": "0.96.0",
|
|
4
4
|
"components": [
|
|
5
5
|
{
|
|
6
6
|
"kind": "component",
|
|
@@ -16501,6 +16501,14 @@
|
|
|
16501
16501
|
"component": "select",
|
|
16502
16502
|
"as": "operatorSigner"
|
|
16503
16503
|
},
|
|
16504
|
+
{
|
|
16505
|
+
"component": "checkbox",
|
|
16506
|
+
"as": "operatorChannel"
|
|
16507
|
+
},
|
|
16508
|
+
{
|
|
16509
|
+
"component": "info-tip",
|
|
16510
|
+
"as": "operatorChannelHint"
|
|
16511
|
+
},
|
|
16504
16512
|
{
|
|
16505
16513
|
"component": "select",
|
|
16506
16514
|
"as": "signerPerson",
|
|
@@ -16516,10 +16524,6 @@
|
|
|
16516
16524
|
"as": "otpWaiver",
|
|
16517
16525
|
"entity": "signer"
|
|
16518
16526
|
},
|
|
16519
|
-
{
|
|
16520
|
-
"component": "alert",
|
|
16521
|
-
"as": "operatorHint"
|
|
16522
|
-
},
|
|
16523
16527
|
{
|
|
16524
16528
|
"component": "alert",
|
|
16525
16529
|
"as": "otpWarning",
|
|
@@ -16581,7 +16585,7 @@
|
|
|
16581
16585
|
{
|
|
16582
16586
|
"name": "choose_delivery_channel",
|
|
16583
16587
|
"safety": "write",
|
|
16584
|
-
"description": "Choose how each signer's request is delivered via the per-row channel checkboxes (mutually exclusive — checking one channel unchecks the others): SMS, e-mail, WhatsApp, or signing on this device. On-device signers sign sequentially in roster order.",
|
|
16588
|
+
"description": "Choose how each signer's request is delivered via the per-row channel checkboxes (mutually exclusive — checking one channel unchecks the others): SMS, e-mail, WhatsApp, or signing on this device. On-device signers sign sequentially in roster order. The assigned operator has the same mutually exclusive checkboxes with SMS, e-mail, or on this device — the operator's own system-defined channel arrives pre-checked, and the on-device option is enabled only while a patient signer also signs on this device (an info tip explains the greyed-out state; an automatic fallback to the operator's default is announced via a live region when the last on-device patient row leaves).",
|
|
16585
16589
|
"descriptionKey": "ui.agent.signatureRequest.workflows.chooseDeliveryChannel",
|
|
16586
16590
|
"uiActions": [
|
|
16587
16591
|
"checkbox.set_checked"
|
package/dist/agent-i18n/en.json
CHANGED
|
@@ -1608,7 +1608,7 @@
|
|
|
1608
1608
|
"workflows": {
|
|
1609
1609
|
"assignOperator": "Pick the operator who must counter-sign (or \"Assign later\" to leave the request unassigned). \"Assign to me\" claims it for the signed-in operator.",
|
|
1610
1610
|
"manageSignerRoster": "Build the patient-side signer roster: pick who signs in each row (the patient or their configured signee, e.g. a legal guardian), add a second signer up to the cap, or remove a row. People already on the roster are excluded from the other rows.",
|
|
1611
|
-
"chooseDeliveryChannel": "Choose how each signer's request is delivered via the per-row channel checkboxes (mutually exclusive — checking one channel unchecks the others): SMS, e-mail, WhatsApp, or signing on this device. On-device signers sign sequentially in roster order.",
|
|
1611
|
+
"chooseDeliveryChannel": "Choose how each signer's request is delivered via the per-row channel checkboxes (mutually exclusive — checking one channel unchecks the others): SMS, e-mail, WhatsApp, or signing on this device. On-device signers sign sequentially in roster order. The assigned operator has the same mutually exclusive checkboxes with SMS, e-mail, or on this device — the operator's own system-defined channel arrives pre-checked, and the on-device option is enabled only while a patient signer also signs on this device (an info tip explains the greyed-out state; an automatic fallback to the operator's default is announced via a live region when the last on-device patient row leaves).",
|
|
1612
1612
|
"waiveOtp": "Toggle a signer's on-device OTP waiver. Waiving OTP lowers the evidentiary value of that signature; the pattern surfaces a warning alert while waived.",
|
|
1613
1613
|
"requestSignature": "Send the signature request. Notifies every roster signer over their selected channel and hands the submission to the host.",
|
|
1614
1614
|
"dismiss": "Close the modal without sending a signature request. Discards the in-progress operator, roster, channel, and OTP choices."
|
|
@@ -3030,7 +3030,9 @@ export declare const arUi: {
|
|
|
3030
3030
|
readonly assignToMe: "إسناد إليّ";
|
|
3031
3031
|
readonly operatorPlaceholder: "اختر مشغّلاً";
|
|
3032
3032
|
readonly assignLater: "الإسناد لاحقاً";
|
|
3033
|
-
readonly
|
|
3033
|
+
readonly operatorChannelLabel: "قناة توقيع المشغّل";
|
|
3034
|
+
readonly onDeviceUnavailableHint: "متاح عندما يوقّع واحد على الأقل من موقّعي المريض على هذا الجهاز.";
|
|
3035
|
+
readonly operatorChannelReverted: "تمت إعادة تعيين قناة توقيع المشغّل إلى {{channel}} — لا يوقّع أي من موقّعي المريض على هذا الجهاز.";
|
|
3034
3036
|
readonly signersSection: "موقّعو المريض";
|
|
3035
3037
|
readonly signerPlaceholder: "اختر موقّعاً";
|
|
3036
3038
|
readonly channelLabel: "قناة التوقيع";
|
package/dist/i18n/locales/ar.js
CHANGED
|
@@ -3004,7 +3004,9 @@ const e = {
|
|
|
3004
3004
|
assignToMe: "إسناد إليّ",
|
|
3005
3005
|
operatorPlaceholder: "اختر مشغّلاً",
|
|
3006
3006
|
assignLater: "الإسناد لاحقاً",
|
|
3007
|
-
|
|
3007
|
+
operatorChannelLabel: "قناة توقيع المشغّل",
|
|
3008
|
+
onDeviceUnavailableHint: "متاح عندما يوقّع واحد على الأقل من موقّعي المريض على هذا الجهاز.",
|
|
3009
|
+
operatorChannelReverted: "تمت إعادة تعيين قناة توقيع المشغّل إلى {{channel}} — لا يوقّع أي من موقّعي المريض على هذا الجهاز.",
|
|
3008
3010
|
signersSection: "موقّعو المريض",
|
|
3009
3011
|
signerPlaceholder: "اختر موقّعاً",
|
|
3010
3012
|
channelLabel: "قناة التوقيع",
|
|
@@ -3030,7 +3030,9 @@ export declare const deUi: {
|
|
|
3030
3030
|
readonly assignToMe: "Mir zuweisen";
|
|
3031
3031
|
readonly operatorPlaceholder: "Operator auswählen";
|
|
3032
3032
|
readonly assignLater: "Später zuweisen";
|
|
3033
|
-
readonly
|
|
3033
|
+
readonly operatorChannelLabel: "Signaturkanal des Operators";
|
|
3034
|
+
readonly onDeviceUnavailableHint: "Verfügbar, wenn mindestens ein Patienten-Unterzeichner auf diesem Gerät signiert.";
|
|
3035
|
+
readonly operatorChannelReverted: "Der Signaturkanal des Operators wurde auf {{channel}} zurückgesetzt — kein Patienten-Unterzeichner signiert auf diesem Gerät.";
|
|
3034
3036
|
readonly signersSection: "Unterzeichner (Patientenseite)";
|
|
3035
3037
|
readonly signerPlaceholder: "Unterzeichner auswählen";
|
|
3036
3038
|
readonly channelLabel: "Signaturkanal";
|
package/dist/i18n/locales/de.js
CHANGED
|
@@ -3005,7 +3005,9 @@ const e = {
|
|
|
3005
3005
|
assignToMe: "Mir zuweisen",
|
|
3006
3006
|
operatorPlaceholder: "Operator auswählen",
|
|
3007
3007
|
assignLater: "Später zuweisen",
|
|
3008
|
-
|
|
3008
|
+
operatorChannelLabel: "Signaturkanal des Operators",
|
|
3009
|
+
onDeviceUnavailableHint: "Verfügbar, wenn mindestens ein Patienten-Unterzeichner auf diesem Gerät signiert.",
|
|
3010
|
+
operatorChannelReverted: "Der Signaturkanal des Operators wurde auf {{channel}} zurückgesetzt — kein Patienten-Unterzeichner signiert auf diesem Gerät.",
|
|
3009
3011
|
signersSection: "Unterzeichner (Patientenseite)",
|
|
3010
3012
|
signerPlaceholder: "Unterzeichner auswählen",
|
|
3011
3013
|
channelLabel: "Signaturkanal",
|
|
@@ -3027,7 +3027,9 @@ export declare const elUi: {
|
|
|
3027
3027
|
readonly assignToMe: "Ανάθεση σε εμένα";
|
|
3028
3028
|
readonly operatorPlaceholder: "Επιλέξτε χειριστή";
|
|
3029
3029
|
readonly assignLater: "Ανάθεση αργότερα";
|
|
3030
|
-
readonly
|
|
3030
|
+
readonly operatorChannelLabel: "Κανάλι υπογραφής χειριστή";
|
|
3031
|
+
readonly onDeviceUnavailableHint: "Διαθέσιμο όταν τουλάχιστον ένας υπογράφων ασθενούς υπογράφει σε αυτήν τη συσκευή.";
|
|
3032
|
+
readonly operatorChannelReverted: "Η αποστολή προς τον χειριστή επανήλθε σε {{channel}} — κανένας υπογράφων ασθενούς δεν υπογράφει σε αυτήν τη συσκευή.";
|
|
3031
3033
|
readonly signersSection: "Υπογράφοντες ασθενούς";
|
|
3032
3034
|
readonly signerPlaceholder: "Επιλέξτε υπογράφοντα";
|
|
3033
3035
|
readonly channelLabel: "Κανάλι υπογραφής";
|
package/dist/i18n/locales/el.js
CHANGED
|
@@ -3011,7 +3011,9 @@ const e = {
|
|
|
3011
3011
|
assignToMe: "Ανάθεση σε εμένα",
|
|
3012
3012
|
operatorPlaceholder: "Επιλέξτε χειριστή",
|
|
3013
3013
|
assignLater: "Ανάθεση αργότερα",
|
|
3014
|
-
|
|
3014
|
+
operatorChannelLabel: "Κανάλι υπογραφής χειριστή",
|
|
3015
|
+
onDeviceUnavailableHint: "Διαθέσιμο όταν τουλάχιστον ένας υπογράφων ασθενούς υπογράφει σε αυτήν τη συσκευή.",
|
|
3016
|
+
operatorChannelReverted: "Η αποστολή προς τον χειριστή επανήλθε σε {{channel}} — κανένας υπογράφων ασθενούς δεν υπογράφει σε αυτήν τη συσκευή.",
|
|
3015
3017
|
signersSection: "Υπογράφοντες ασθενούς",
|
|
3016
3018
|
signerPlaceholder: "Επιλέξτε υπογράφοντα",
|
|
3017
3019
|
channelLabel: "Κανάλι υπογραφής",
|
|
@@ -3038,7 +3038,9 @@ export declare const enUi: {
|
|
|
3038
3038
|
readonly assignToMe: "Assign to me";
|
|
3039
3039
|
readonly operatorPlaceholder: "Select an operator";
|
|
3040
3040
|
readonly assignLater: "Assign later";
|
|
3041
|
-
readonly
|
|
3041
|
+
readonly operatorChannelLabel: "Operator signature channel";
|
|
3042
|
+
readonly onDeviceUnavailableHint: "Available when at least one patient signer signs on this device.";
|
|
3043
|
+
readonly operatorChannelReverted: "The operator's delivery reset to {{channel}} — no patient signer signs on this device.";
|
|
3042
3044
|
readonly signersSection: "Patient signers";
|
|
3043
3045
|
readonly signerPlaceholder: "Select a signer";
|
|
3044
3046
|
readonly channelLabel: "Signature channel";
|
package/dist/i18n/locales/en.js
CHANGED
|
@@ -3024,7 +3024,9 @@ const e = {
|
|
|
3024
3024
|
assignToMe: "Assign to me",
|
|
3025
3025
|
operatorPlaceholder: "Select an operator",
|
|
3026
3026
|
assignLater: "Assign later",
|
|
3027
|
-
|
|
3027
|
+
operatorChannelLabel: "Operator signature channel",
|
|
3028
|
+
onDeviceUnavailableHint: "Available when at least one patient signer signs on this device.",
|
|
3029
|
+
operatorChannelReverted: "The operator's delivery reset to {{channel}} — no patient signer signs on this device.",
|
|
3028
3030
|
signersSection: "Patient signers",
|
|
3029
3031
|
signerPlaceholder: "Select a signer",
|
|
3030
3032
|
channelLabel: "Signature channel",
|
|
@@ -3027,7 +3027,9 @@ export declare const esUi: {
|
|
|
3027
3027
|
readonly assignToMe: "Asignármelo";
|
|
3028
3028
|
readonly operatorPlaceholder: "Selecciona un operador";
|
|
3029
3029
|
readonly assignLater: "Asignar más tarde";
|
|
3030
|
-
readonly
|
|
3030
|
+
readonly operatorChannelLabel: "Canal de firma del operador";
|
|
3031
|
+
readonly onDeviceUnavailableHint: "Disponible cuando al menos un firmante del paciente firma en este dispositivo.";
|
|
3032
|
+
readonly operatorChannelReverted: "El canal de firma del operador se ha restablecido a {{channel}}: ningún firmante del paciente firma en este dispositivo.";
|
|
3031
3033
|
readonly signersSection: "Firmantes del paciente";
|
|
3032
3034
|
readonly signerPlaceholder: "Selecciona un firmante";
|
|
3033
3035
|
readonly channelLabel: "Canal de firma";
|
package/dist/i18n/locales/es.js
CHANGED
|
@@ -3002,7 +3002,9 @@ const e = {
|
|
|
3002
3002
|
assignToMe: "Asignármelo",
|
|
3003
3003
|
operatorPlaceholder: "Selecciona un operador",
|
|
3004
3004
|
assignLater: "Asignar más tarde",
|
|
3005
|
-
|
|
3005
|
+
operatorChannelLabel: "Canal de firma del operador",
|
|
3006
|
+
onDeviceUnavailableHint: "Disponible cuando al menos un firmante del paciente firma en este dispositivo.",
|
|
3007
|
+
operatorChannelReverted: "El canal de firma del operador se ha restablecido a {{channel}}: ningún firmante del paciente firma en este dispositivo.",
|
|
3006
3008
|
signersSection: "Firmantes del paciente",
|
|
3007
3009
|
signerPlaceholder: "Selecciona un firmante",
|
|
3008
3010
|
channelLabel: "Canal de firma",
|
|
@@ -3027,7 +3027,9 @@ export declare const frUi: {
|
|
|
3027
3027
|
readonly assignToMe: "Me l'assigner";
|
|
3028
3028
|
readonly operatorPlaceholder: "Sélectionner un opérateur";
|
|
3029
3029
|
readonly assignLater: "Assigner plus tard";
|
|
3030
|
-
readonly
|
|
3030
|
+
readonly operatorChannelLabel: "Canal de signature de l'opérateur";
|
|
3031
|
+
readonly onDeviceUnavailableHint: "Disponible lorsqu'au moins un signataire patient signe sur cet appareil.";
|
|
3032
|
+
readonly operatorChannelReverted: "Le canal de signature de l'opérateur est revenu à {{channel}} — aucun signataire patient ne signe sur cet appareil.";
|
|
3031
3033
|
readonly signersSection: "Signataires patient";
|
|
3032
3034
|
readonly signerPlaceholder: "Sélectionner un signataire";
|
|
3033
3035
|
readonly channelLabel: "Canal de signature";
|
package/dist/i18n/locales/fr.js
CHANGED
|
@@ -3005,7 +3005,9 @@ const e = {
|
|
|
3005
3005
|
assignToMe: "Me l'assigner",
|
|
3006
3006
|
operatorPlaceholder: "Sélectionner un opérateur",
|
|
3007
3007
|
assignLater: "Assigner plus tard",
|
|
3008
|
-
|
|
3008
|
+
operatorChannelLabel: "Canal de signature de l'opérateur",
|
|
3009
|
+
onDeviceUnavailableHint: "Disponible lorsqu'au moins un signataire patient signe sur cet appareil.",
|
|
3010
|
+
operatorChannelReverted: "Le canal de signature de l'opérateur est revenu à {{channel}} — aucun signataire patient ne signe sur cet appareil.",
|
|
3009
3011
|
signersSection: "Signataires patient",
|
|
3010
3012
|
signerPlaceholder: "Sélectionner un signataire",
|
|
3011
3013
|
channelLabel: "Canal de signature",
|
|
@@ -3027,7 +3027,9 @@ export declare const hiUi: {
|
|
|
3027
3027
|
readonly assignToMe: "मुझे सौंपें";
|
|
3028
3028
|
readonly operatorPlaceholder: "ऑपरेटर चुनें";
|
|
3029
3029
|
readonly assignLater: "बाद में सौंपें";
|
|
3030
|
-
readonly
|
|
3030
|
+
readonly operatorChannelLabel: "ऑपरेटर हस्ताक्षर चैनल";
|
|
3031
|
+
readonly onDeviceUnavailableHint: "तब उपलब्ध जब कम से कम एक मरीज़ हस्ताक्षरकर्ता इस डिवाइस पर हस्ताक्षर करता है।";
|
|
3032
|
+
readonly operatorChannelReverted: "ऑपरेटर का हस्ताक्षर चैनल {{channel}} पर रीसेट हो गया — कोई भी मरीज़ हस्ताक्षरकर्ता इस डिवाइस पर हस्ताक्षर नहीं कर रहा है।";
|
|
3031
3033
|
readonly signersSection: "मरीज़ पक्ष के हस्ताक्षरकर्ता";
|
|
3032
3034
|
readonly signerPlaceholder: "हस्ताक्षरकर्ता चुनें";
|
|
3033
3035
|
readonly channelLabel: "हस्ताक्षर चैनल";
|
package/dist/i18n/locales/hi.js
CHANGED
|
@@ -3002,7 +3002,9 @@ const e = {
|
|
|
3002
3002
|
assignToMe: "मुझे सौंपें",
|
|
3003
3003
|
operatorPlaceholder: "ऑपरेटर चुनें",
|
|
3004
3004
|
assignLater: "बाद में सौंपें",
|
|
3005
|
-
|
|
3005
|
+
operatorChannelLabel: "ऑपरेटर हस्ताक्षर चैनल",
|
|
3006
|
+
onDeviceUnavailableHint: "तब उपलब्ध जब कम से कम एक मरीज़ हस्ताक्षरकर्ता इस डिवाइस पर हस्ताक्षर करता है।",
|
|
3007
|
+
operatorChannelReverted: "ऑपरेटर का हस्ताक्षर चैनल {{channel}} पर रीसेट हो गया — कोई भी मरीज़ हस्ताक्षरकर्ता इस डिवाइस पर हस्ताक्षर नहीं कर रहा है।",
|
|
3006
3008
|
signersSection: "मरीज़ पक्ष के हस्ताक्षरकर्ता",
|
|
3007
3009
|
signerPlaceholder: "हस्ताक्षरकर्ता चुनें",
|
|
3008
3010
|
channelLabel: "हस्ताक्षर चैनल",
|
|
@@ -3024,7 +3024,9 @@ export declare const itUi: {
|
|
|
3024
3024
|
readonly assignToMe: "Assegna a me";
|
|
3025
3025
|
readonly operatorPlaceholder: "Seleziona un operatore";
|
|
3026
3026
|
readonly assignLater: "Assegna più tardi";
|
|
3027
|
-
readonly
|
|
3027
|
+
readonly operatorChannelLabel: "Canale di firma dell'Operatore";
|
|
3028
|
+
readonly onDeviceUnavailableHint: "Disponibile quando almeno un firmatario paziente firma su questo dispositivo.";
|
|
3029
|
+
readonly operatorChannelReverted: "Il canale di firma dell'Operatore è stato reimpostato su {{channel}}: nessun firmatario paziente firma su questo dispositivo.";
|
|
3028
3030
|
readonly signersSection: "Firmatari paziente";
|
|
3029
3031
|
readonly signerPlaceholder: "Seleziona un firmatario";
|
|
3030
3032
|
readonly channelLabel: "Canale di firma";
|