@alfadocs/ui-kit 1.32.0 → 1.34.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 (113) hide show
  1. package/dist/_chunks/{appointment-card-D-oj_ugh.js → appointment-card-D6mk39NB.js} +3 -3
  2. package/dist/_chunks/{appointment-timeline-CymGHyIP.js → appointment-timeline-D-V97Bhc.js} +2 -2
  3. package/dist/_chunks/{appointment-tray-DCk8gHod.js → appointment-tray-6rg071CL.js} +2 -2
  4. package/dist/_chunks/{booking-l6UGNiE1.js → booking-BqkEtsKx.js} +777 -747
  5. package/dist/_chunks/{calendar-workspace-BX-zDyVR.js → calendar-workspace-4NH1Z47_.js} +7 -7
  6. package/dist/_chunks/{clinical-note-card-D2WTV2CO.js → clinical-note-card-CTRzmqvv.js} +83 -81
  7. package/dist/_chunks/{contact-profile-card-BZqi8Hck.js → contact-profile-card-DSI9uumA.js} +17 -16
  8. package/dist/_chunks/{control-room-rail-iO_BCaq1.js → control-room-rail-5MbhjsxN.js} +2 -2
  9. package/dist/_chunks/format-price-BkMEbeW3.js +47 -0
  10. package/dist/_chunks/{format-price-DNqXPa_q.js → languages-CZqBaPwI.js} +8 -38
  11. package/dist/_chunks/money.agent-Dw55UxUA.js +116 -0
  12. package/dist/_chunks/notes-panel-BjLt-kiP.js +469 -0
  13. package/dist/_chunks/{practice-results-DjEzPgAK.js → practice-results-kayDEorM.js} +15 -14
  14. package/dist/_chunks/{rich-text-editor-CQ7yZdG3.js → rich-text-editor-CCI-Y3DN.js} +3 -5
  15. package/dist/_chunks/{task-card-BUgK6yZT.js → task-card-BalrLkSz.js} +41 -40
  16. package/dist/_chunks/{task-tray-CYG6rj2s.js → task-tray-COo-RlDv.js} +2 -2
  17. package/dist/_chunks/tasks-panel-DLKpSNoE.js +844 -0
  18. package/dist/_chunks/tool-rail-ONaV-Nzz.js +588 -0
  19. package/dist/_chunks/use-check-animation--I3cS00X.js +28 -0
  20. package/dist/_chunks/use-list-reflow-Cw43nxw5.js +100 -0
  21. package/dist/agent-catalog.json +15 -1
  22. package/dist/components/_shared/format-price.d.ts +15 -0
  23. package/dist/components/appointment-card/index.js +2 -2
  24. package/dist/components/appointment-timeline/index.js +1 -1
  25. package/dist/components/booking/index.js +1 -1
  26. package/dist/components/clinical-note-card/clinical-note-card.d.ts +8 -1
  27. package/dist/components/clinical-note-card/index.js +1 -1
  28. package/dist/components/command-palette/command-palette.d.ts +7 -7
  29. package/dist/components/contact-profile-card/index.js +1 -1
  30. package/dist/components/control-room-rail/index.js +1 -1
  31. package/dist/components/index.d.ts +1 -0
  32. package/dist/components/money/index.d.ts +4 -0
  33. package/dist/components/money/index.js +6 -0
  34. package/dist/components/money/money.agent.d.ts +3 -0
  35. package/dist/components/money/money.d.ts +38 -0
  36. package/dist/components/notes-panel/index.js +1 -1
  37. package/dist/components/notes-panel/notes-panel.d.ts +16 -1
  38. package/dist/components/practice-results/index.js +1 -1
  39. package/dist/components/rich-text-editor/index.js +1 -1
  40. package/dist/components/rich-text-editor/rich-text-editor.d.ts +1 -1
  41. package/dist/components/task-card/index.js +1 -1
  42. package/dist/components/task-card/task-card.d.ts +11 -3
  43. package/dist/components/task-tray/index.js +1 -1
  44. package/dist/components/tasks-panel/index.js +1 -1
  45. package/dist/components/tasks-panel/tasks-panel.d.ts +1 -1
  46. package/dist/components/tool-rail/index.js +1 -1
  47. package/dist/hooks/index.d.ts +3 -0
  48. package/dist/hooks/index.js +43 -37
  49. package/dist/hooks/use-check-animation.d.ts +53 -0
  50. package/dist/hooks/use-exit-transition.d.ts +48 -0
  51. package/dist/hooks/use-list-reflow.d.ts +47 -0
  52. package/dist/host-compat.css +8 -2
  53. package/dist/i18n/locales/ar.d.ts +5 -0
  54. package/dist/i18n/locales/ar.js +6 -1
  55. package/dist/i18n/locales/de.d.ts +5 -0
  56. package/dist/i18n/locales/de.js +6 -1
  57. package/dist/i18n/locales/el.d.ts +5 -0
  58. package/dist/i18n/locales/el.js +6 -1
  59. package/dist/i18n/locales/en.d.ts +5 -0
  60. package/dist/i18n/locales/en.js +6 -1
  61. package/dist/i18n/locales/es.d.ts +5 -0
  62. package/dist/i18n/locales/es.js +6 -1
  63. package/dist/i18n/locales/fr.d.ts +5 -0
  64. package/dist/i18n/locales/fr.js +6 -1
  65. package/dist/i18n/locales/hi.d.ts +5 -0
  66. package/dist/i18n/locales/hi.js +6 -1
  67. package/dist/i18n/locales/it.d.ts +5 -0
  68. package/dist/i18n/locales/it.js +6 -1
  69. package/dist/i18n/locales/ja.d.ts +5 -0
  70. package/dist/i18n/locales/ja.js +6 -1
  71. package/dist/i18n/locales/nl.d.ts +5 -0
  72. package/dist/i18n/locales/nl.js +6 -1
  73. package/dist/i18n/locales/pl.d.ts +5 -0
  74. package/dist/i18n/locales/pl.js +6 -1
  75. package/dist/i18n/locales/pt.d.ts +5 -0
  76. package/dist/i18n/locales/pt.js +6 -1
  77. package/dist/i18n/locales/ro.d.ts +5 -0
  78. package/dist/i18n/locales/ro.js +6 -1
  79. package/dist/i18n/locales/ru.d.ts +5 -0
  80. package/dist/i18n/locales/ru.js +6 -1
  81. package/dist/i18n/locales/sq.d.ts +5 -0
  82. package/dist/i18n/locales/sq.js +6 -1
  83. package/dist/i18n/locales/sv.d.ts +5 -0
  84. package/dist/i18n/locales/sv.js +6 -1
  85. package/dist/i18n/locales/tr.d.ts +5 -0
  86. package/dist/i18n/locales/tr.js +6 -1
  87. package/dist/i18n/locales/zh.d.ts +5 -0
  88. package/dist/i18n/locales/zh.js +6 -1
  89. package/dist/index.js +919 -916
  90. package/dist/locales/ar.json +6 -1
  91. package/dist/locales/de.json +6 -1
  92. package/dist/locales/el.json +6 -1
  93. package/dist/locales/en.json +6 -1
  94. package/dist/locales/es.json +6 -1
  95. package/dist/locales/fr.json +6 -1
  96. package/dist/locales/hi.json +6 -1
  97. package/dist/locales/it.json +6 -1
  98. package/dist/locales/ja.json +6 -1
  99. package/dist/locales/nl.json +6 -1
  100. package/dist/locales/pl.json +6 -1
  101. package/dist/locales/pt.json +6 -1
  102. package/dist/locales/ro.json +6 -1
  103. package/dist/locales/ru.json +6 -1
  104. package/dist/locales/sq.json +6 -1
  105. package/dist/locales/sv.json +6 -1
  106. package/dist/locales/tr.json +6 -1
  107. package/dist/locales/zh.json +6 -1
  108. package/dist/patterns/calendar/index.js +1 -1
  109. package/dist/tokens.css +2 -1
  110. package/package.json +5 -1
  111. package/dist/_chunks/notes-panel-C4G-mhZ9.js +0 -380
  112. package/dist/_chunks/tasks-panel-DQuaVvl5.js +0 -757
  113. package/dist/_chunks/tool-rail-8Scslq3X.js +0 -524
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfadocs/ui-kit",
3
- "version": "1.32.0",
3
+ "version": "1.34.0",
4
4
  "type": "module",
5
5
  "description": "AlfaDocs shared design system — tokens, components, patterns, and translations for platform, booking, and alfascribe.",
6
6
  "license": "BUSL-1.1",
@@ -433,6 +433,10 @@
433
433
  "types": "./dist/components/message-tray/index.d.ts",
434
434
  "import": "./dist/components/message-tray/index.js"
435
435
  },
436
+ "./money": {
437
+ "types": "./dist/components/money/index.d.ts",
438
+ "import": "./dist/components/money/index.js"
439
+ },
436
440
  "./multi-select": {
437
441
  "types": "./dist/components/multi-select/index.d.ts",
438
442
  "import": "./dist/components/multi-select/index.js"
@@ -1,380 +0,0 @@
1
- import { jsxs as d, jsx as r } from "react/jsx-runtime";
2
- import { forwardRef as be, useRef as o, useState as w, useId as Pe, useCallback as xe, useEffect as Ne, useImperativeHandle as Ce, useMemo as we } from "react";
3
- import { c as Re } from "./index-D2ZczOXr.js";
4
- import { useTranslation as ke } from "react-i18next";
5
- import { u as je } from "./registry-DvAUVLHh.js";
6
- import { C as Ve } from "./clinical-note-card-D2WTV2CO.js";
7
- import { R as Ae } from "./rich-text-editor-CQ7yZdG3.js";
8
- import { T as Ie } from "./text-area-Bt3p7Pt0.js";
9
- import { A as h } from "./alert-CiJT540z.js";
10
- import { B as J } from "./button-nJaPh_HC.js";
11
- import { C as He } from "./checkbox-BuZ1u__2.js";
12
- import { S as Se } from "./spinner-hbwuKwMf.js";
13
- import { P as qe } from "./panel-header-D313n_9-.js";
14
- import { N as Ee } from "./notebook-pen-CO7HoM-W.js";
15
- function Q(n, a) {
16
- return typeof n == "object" && n !== null && "message" in n && typeof n.message == "string" && n.message.trim() ? n.message : a;
17
- }
18
- const Ke = {
19
- id: "notes-panel",
20
- // 'submit' backs add_note (compose + commit a note). pin / flag are toggles
21
- // with no dedicated capability in the closed vocabulary.
22
- capabilities: ["submit"],
23
- state: {
24
- notes: {
25
- type: "Array<{ id?: string; pinned: boolean; flagged: boolean; clinical: boolean }>",
26
- descriptionKey: "ui.agent.notesPanel.state.notes",
27
- description: "Timeline note ids + pinned / flagged / clinical flags. Never the note body or author (both PHI).",
28
- read: (n) => n.getNotes()
29
- },
30
- canAddClinical: {
31
- type: "boolean",
32
- descriptionKey: "ui.agent.notesPanel.state.canAddClinical",
33
- description: "Whether the current user may write clinical notes (the practice_add_clinical_note permission gate).",
34
- read: (n) => n.canAddClinical()
35
- },
36
- currentNoteId: {
37
- type: "string | null",
38
- descriptionKey: "ui.agent.notesPanel.state.currentNoteId",
39
- description: "Id of the note the host has addressed — the one marked, scrolled to and focused. Null when none is. An id only, never note content.",
40
- read: (n) => n.getCurrentNoteId()
41
- }
42
- },
43
- actions: {
44
- add_note: {
45
- // Writes a clinical/admin note body — patient-identifiable content. PHI.
46
- safety: "phi",
47
- argsType: "{ content: string; clinical: boolean }",
48
- argsSchema: {
49
- type: "object",
50
- properties: {
51
- content: {
52
- type: "string",
53
- description: "Note body. Rich HTML for the rich composer, else plain text."
54
- },
55
- clinical: {
56
- type: "boolean",
57
- description: "Whether the note is clinical. Requires the clinical-note permission; the submission is dropped when the gate is closed."
58
- }
59
- },
60
- required: ["content", "clinical"]
61
- },
62
- openWorld: !0,
63
- descriptionKey: "ui.agent.notesPanel.actions.addNote",
64
- description: "Compose and commit a new note. A clinical note requires the clinical-note permission (read canAddClinical first).",
65
- examples: [
66
- {
67
- args: { content: "Patient reported improvement.", clinical: !0 },
68
- note: "Add a clinical note."
69
- }
70
- ],
71
- invoke: (n, a) => n.addNote(a)
72
- },
73
- toggle_pin: {
74
- // Re-orders the timeline (pinned notes lead) — reversible view write.
75
- safety: "write",
76
- argsType: "{ id: string }",
77
- argsSchema: {
78
- type: "object",
79
- properties: { id: { type: "string" } },
80
- required: ["id"]
81
- },
82
- idempotent: !1,
83
- descriptionKey: "ui.agent.notesPanel.actions.togglePin",
84
- description: "Toggle the pinned state of the note with the given id. Refused for a deleted note or one whose actions.pin is false.",
85
- invoke: (n, a) => {
86
- n.togglePin(a.id);
87
- }
88
- },
89
- toggle_flag: {
90
- safety: "write",
91
- argsType: "{ id: string }",
92
- argsSchema: {
93
- type: "object",
94
- properties: { id: { type: "string" } },
95
- required: ["id"]
96
- },
97
- idempotent: !1,
98
- descriptionKey: "ui.agent.notesPanel.actions.toggleFlag",
99
- description: "Toggle the flagged state of the note with the given id.",
100
- invoke: (n, a) => {
101
- n.toggleFlag(a.id);
102
- }
103
- }
104
- },
105
- domHooks: {
106
- root: {
107
- attr: "data-component",
108
- value: "notes-panel",
109
- description: "Marks the NotesPanel region."
110
- },
111
- instanceId: {
112
- attr: "data-component-id",
113
- sourceProp: "id",
114
- description: "Sourced from the id prop. Required to address a specific notes panel from the agent."
115
- }
116
- }
117
- }, Te = Re(
118
- "ds:flex ds:flex-col ds:rounded-[var(--radius-md)] ds:border-s-2 ds:ps-[var(--spacing-sm)]",
119
- {
120
- variants: {
121
- current: {
122
- true: "ds:border-[color:var(--info)] ds:bg-[color:var(--info)]/10 ds:focus:outline-[length:var(--focus-ring-width)] ds:focus:outline-solid ds:focus:outline-[color:var(--ring)] ds:focus:outline-offset-[length:var(--focus-ring-offset)]",
123
- false: "ds:border-transparent"
124
- }
125
- },
126
- defaultVariants: { current: !1 }
127
- }
128
- );
129
- function U(n) {
130
- return n ? /<img\b/i.test(n) ? !0 : n.replace(/<[^>]*>/g, "").replace(/&nbsp;/gi, " ").trim().length > 0 : !1;
131
- }
132
- const Xe = be(
133
- function({
134
- id: a,
135
- notes: R,
136
- onAddNote: c,
137
- status: k = "ready",
138
- onRetry: T,
139
- currentNoteId: u,
140
- currentNoteKey: X,
141
- composer: y = "rich",
142
- editorToolbar: Z = "standard",
143
- redactor: $,
144
- imageUploadUrl: ee,
145
- showClinicalToggle: _ = !0,
146
- canAddClinicalNote: v = !0,
147
- clinicalGatedReason: te,
148
- defaultClinical: j = !1,
149
- onRequestAiDraft: ne,
150
- aiDraftFormat: re,
151
- aiPrivacyNotice: ie,
152
- onDictate: se,
153
- onProofread: ae,
154
- onAutoFormat: oe,
155
- onTogglePin: b,
156
- onToggleFlag: P,
157
- noteActions: z,
158
- title: le,
159
- composerPlaceholder: de,
160
- addNoteLabel: ce,
161
- emptyState: ue,
162
- className: pe,
163
- "aria-label": V,
164
- ...fe
165
- }, me) {
166
- const { t: i } = ke(), A = o(null), [p, I] = w(""), [H, M] = w(j), [f, B] = w(!1), [D, S] = w(null), ge = le ?? i("notesPanel.title", { defaultValue: "Notes" }), L = Pe(), W = de ?? i("notesPanel.placeholder", { defaultValue: "Add a note…" }), F = i("notesPanel.composerLabel", {
167
- defaultValue: "New note"
168
- }), he = y === "rich" ? U(p) : p.trim().length > 0, ye = xe(() => {
169
- var C;
170
- if (!c || f) return;
171
- const e = y === "rich", t = e ? ((C = A.current) == null ? void 0 : C.getHTML()) ?? p : p.trim();
172
- if (e ? !U(t) : !t) return;
173
- const l = () => {
174
- var m;
175
- e && ((m = A.current) == null || m.clear()), I(""), M(j);
176
- };
177
- S(null);
178
- let s;
179
- try {
180
- s = c({ content: t, clinical: H });
181
- } catch (m) {
182
- S(Q(m, i("notesPanel.addFailed")));
183
- return;
184
- }
185
- if (!s || typeof s.then != "function") return l();
186
- B(!0), Promise.resolve(s).then(
187
- l,
188
- (m) => S(Q(m, i("notesPanel.addFailed")))
189
- ).finally(() => B(!1));
190
- }, [y, p, H, j, c, f, i]), O = [...R].sort(
191
- (e, t) => Number(t.pinned ?? !1) - Number(e.pinned ?? !1)
192
- ), q = o(null);
193
- Ne(() => {
194
- var e, t;
195
- u && ((e = q.current) == null || e.scrollIntoView({ block: "center" }), (t = q.current) == null || t.focus());
196
- }, [u, X]);
197
- const E = o(R);
198
- E.current = R;
199
- const g = o(c);
200
- g.current = c;
201
- const x = o(b);
202
- x.current = b;
203
- const N = o(P);
204
- N.current = P;
205
- const K = o(v);
206
- K.current = v;
207
- const G = o(u);
208
- G.current = u;
209
- const Y = o(null);
210
- Ce(me, () => Y.current, []);
211
- const ve = we(
212
- () => ({
213
- // Ids + flags only — never the note body or author (both PHI).
214
- getNotes: () => E.current.map((e) => ({
215
- id: e.id,
216
- pinned: !!e.pinned,
217
- flagged: !!e.flagged,
218
- clinical: !!e.clinical
219
- })),
220
- canAddNote: () => !!g.current,
221
- canAddClinical: () => K.current,
222
- getCurrentNoteId: () => G.current ?? null,
223
- addNote: (e) => {
224
- var t;
225
- if (!(e.clinical && !K.current))
226
- return (t = g.current) == null ? void 0 : t.call(g, e);
227
- },
228
- togglePin: (e) => {
229
- var l, s;
230
- const t = E.current.find((C) => C.id === e);
231
- t && (t.deleted || ((l = t.actions) == null ? void 0 : l.pin) === !1) || (s = x.current) == null || s.call(x, e);
232
- },
233
- toggleFlag: (e) => {
234
- var t;
235
- return (t = N.current) == null ? void 0 : t.call(N, e);
236
- }
237
- }),
238
- []
239
- );
240
- return je(Ke, ve, a), /* @__PURE__ */ d(
241
- "section",
242
- {
243
- ref: Y,
244
- "data-component": "notes-panel",
245
- "data-component-id": a,
246
- "aria-labelledby": V ? void 0 : L,
247
- "aria-label": V,
248
- className: ["ds:flex ds:flex-col", pe].filter(Boolean).join(" "),
249
- ...fe,
250
- children: [
251
- /* @__PURE__ */ r(
252
- qe,
253
- {
254
- title: ge,
255
- icon: /* @__PURE__ */ r(Ee, { "aria-hidden": "true" }),
256
- headingId: V ? void 0 : L,
257
- sticky: !0,
258
- divider: !0
259
- }
260
- ),
261
- /* @__PURE__ */ d("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]", children: [
262
- c ? /* @__PURE__ */ d("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
263
- y === "rich" ? /* @__PURE__ */ r(
264
- Ae,
265
- {
266
- ref: A,
267
- ariaLabel: F,
268
- placeholder: W,
269
- toolbar: Z,
270
- minHeight: "sm",
271
- redactor: $,
272
- imageUploadUrl: ee,
273
- readOnly: f,
274
- onChange: ({ html: e }) => I(e),
275
- onRequestAiDraft: ne,
276
- aiDraftFormat: re,
277
- aiPrivacyNotice: ie,
278
- onDictate: se,
279
- onProofread: ae,
280
- onAutoFormat: oe
281
- }
282
- ) : /* @__PURE__ */ r(
283
- Ie,
284
- {
285
- value: p,
286
- readOnly: f,
287
- onChange: (e) => I(e.target.value),
288
- placeholder: W,
289
- autoResize: !0,
290
- minRows: 2,
291
- maxRows: 6,
292
- "aria-label": F
293
- }
294
- ),
295
- /* @__PURE__ */ d(
296
- "div",
297
- {
298
- className: [
299
- "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]",
300
- _ ? "ds:justify-between" : "ds:justify-end"
301
- ].join(" "),
302
- children: [
303
- _ ? /* @__PURE__ */ r(
304
- He,
305
- {
306
- size: "sm",
307
- label: i("notesPanel.clinicalToggle", {
308
- defaultValue: "Clinical note"
309
- }),
310
- checked: H,
311
- onCheckedChange: (e) => M(e === !0),
312
- disabled: f || !v,
313
- disabledReason: v ? void 0 : te ?? i("notesPanel.clinicalGated", {
314
- defaultValue: "You do not have permission to write clinical notes."
315
- })
316
- }
317
- ) : null,
318
- /* @__PURE__ */ r(
319
- J,
320
- {
321
- type: "button",
322
- size: "sm",
323
- onClick: ye,
324
- disabled: !he,
325
- loading: f,
326
- children: ce ?? i("notesPanel.add", { defaultValue: "Add note" })
327
- }
328
- )
329
- ]
330
- }
331
- ),
332
- D ? /* @__PURE__ */ r(h, { variant: "error", children: /* @__PURE__ */ r(h.Description, { children: D }) }) : null
333
- ] }) : null,
334
- k === "loading" ? /* @__PURE__ */ d("p", { className: "ds:m-0 ds:flex ds:items-center ds:gap-[var(--spacing-xs)] type-body-sm ds:text-[color:var(--muted-foreground)]", children: [
335
- /* @__PURE__ */ r(Se, { size: "sm", label: i("notesPanel.loading") }),
336
- /* @__PURE__ */ r("span", { "aria-hidden": "true", children: i("notesPanel.loading") })
337
- ] }) : k === "error" ? /* @__PURE__ */ d(h, { variant: "error", children: [
338
- /* @__PURE__ */ r(h.Description, { children: i("notesPanel.loadError") }),
339
- T ? /* @__PURE__ */ r(h.Action, { children: /* @__PURE__ */ r(J, { intent: "secondary", size: "sm", onClick: T, children: i("notesPanel.retry") }) }) : null
340
- ] }) : null,
341
- O.length > 0 ? /* @__PURE__ */ r("ul", { className: "ds:m-0 ds:flex ds:list-none ds:flex-col ds:gap-[var(--spacing-sm)] ds:p-0", children: O.map(({ actions: e, ...t }, l) => {
342
- const s = u != null && t.id === u;
343
- return /* @__PURE__ */ d(
344
- "li",
345
- {
346
- ref: s ? q : void 0,
347
- tabIndex: s ? -1 : void 0,
348
- "aria-current": s ? "true" : void 0,
349
- className: Te({ current: s }),
350
- children: [
351
- s ? /* @__PURE__ */ r("span", { className: "ds:sr-only", children: i("notesPanel.current", {
352
- defaultValue: "Current note"
353
- }) }) : null,
354
- /* @__PURE__ */ r(
355
- Ve,
356
- {
357
- surface: "elevated",
358
- truncate: !s,
359
- ...t,
360
- onTogglePin: b && t.id && (e == null ? void 0 : e.pin) !== !1 && !t.deleted ? () => b(t.id) : void 0,
361
- onToggleFlag: P && t.id ? () => P(t.id) : void 0
362
- }
363
- ),
364
- z ? /* @__PURE__ */ r("div", { className: "ds:flex ds:justify-end ds:gap-[var(--spacing-2xs)] ds:pt-[var(--spacing-2xs)]", children: z({ ...t, actions: e }) }) : null
365
- ]
366
- },
367
- t.id ?? l
368
- );
369
- }) }) : k !== "ready" ? null : ue ?? /* @__PURE__ */ r("p", { className: "ds:m-0 type-body-sm ds:text-[color:var(--muted-foreground)]", children: i("notesPanel.empty", { defaultValue: "No notes yet." }) })
370
- ] })
371
- ]
372
- }
373
- );
374
- }
375
- );
376
- export {
377
- Xe as N,
378
- Q as g
379
- };
380
- //# sourceMappingURL=notes-panel-C4G-mhZ9.js.map