@doneisbetter/gds-core 2.6.1

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.
@@ -0,0 +1,3125 @@
1
+ // src/StatusBadge.tsx
2
+ import { Badge } from "@mantine/core";
3
+ import { jsx } from "react/jsx-runtime";
4
+ var statusColorMap = {
5
+ success: "green",
6
+ warning: "yellow",
7
+ danger: "red",
8
+ info: "blue",
9
+ neutral: "gray"
10
+ };
11
+ function StatusBadge({ status, children, ...props }) {
12
+ return /* @__PURE__ */ jsx(Badge, { color: statusColorMap[status], variant: "light", ...props, children });
13
+ }
14
+
15
+ // src/EmptyState.tsx
16
+ import { Stack, Text, Title, Box } from "@mantine/core";
17
+ import { jsx as jsx2, jsxs } from "react/jsx-runtime";
18
+ function EmptyState({ icon, title, description, action }) {
19
+ return /* @__PURE__ */ jsxs(Stack, { align: "center", justify: "center", gap: "md", py: "xl", ta: "center", children: [
20
+ icon && /* @__PURE__ */ jsx2(Box, { c: "dimmed", children: icon }),
21
+ /* @__PURE__ */ jsx2(Title, { order: 3, children: title }),
22
+ /* @__PURE__ */ jsx2(Text, { c: "dimmed", maw: 400, children: description }),
23
+ action && /* @__PURE__ */ jsx2(Box, { mt: "md", children: action })
24
+ ] });
25
+ }
26
+
27
+ // src/icons.ts
28
+ import {
29
+ IconDashboard,
30
+ IconSettings,
31
+ IconUsers,
32
+ IconPlus,
33
+ IconEdit,
34
+ IconTrash,
35
+ IconSearch,
36
+ IconDeviceFloppy,
37
+ IconCheck,
38
+ IconAlertTriangle,
39
+ IconAlertCircle,
40
+ IconInfoCircle,
41
+ IconChevronDown,
42
+ IconChevronUp,
43
+ IconX,
44
+ IconSquareCheck,
45
+ IconSquareX,
46
+ IconMenu2,
47
+ IconMoon,
48
+ IconSun,
49
+ IconChartBar,
50
+ IconPlayerPlay,
51
+ IconRocket,
52
+ IconBan,
53
+ IconThumbUp,
54
+ IconHome,
55
+ IconInbox,
56
+ IconCalendar,
57
+ IconPhoto,
58
+ IconHistory,
59
+ IconUser,
60
+ IconSend,
61
+ IconArrowBackUp,
62
+ IconArrowForwardUp,
63
+ IconPaperclip,
64
+ IconUpload,
65
+ IconDownload,
66
+ IconPrinter,
67
+ IconCopy,
68
+ IconCopyPlus,
69
+ IconChecks,
70
+ IconClearAll,
71
+ IconCamera,
72
+ IconVideo,
73
+ IconCameraRotate,
74
+ IconBolt,
75
+ IconBook,
76
+ IconNotebook,
77
+ IconCertificate,
78
+ IconSchool,
79
+ IconBooks,
80
+ IconAward,
81
+ IconMoodKid,
82
+ IconUsersGroup,
83
+ IconTarget,
84
+ IconFlag,
85
+ IconFlame,
86
+ IconGift,
87
+ IconLanguage,
88
+ IconPalette,
89
+ IconTrophy,
90
+ IconCrown,
91
+ IconPlayerPause,
92
+ IconMessage,
93
+ IconMail,
94
+ IconRefresh,
95
+ IconTrendingUp,
96
+ IconTrendingDown,
97
+ IconCurrencyDollar,
98
+ IconLayoutGrid,
99
+ IconList,
100
+ IconDoorExit,
101
+ IconBell,
102
+ IconArrowLeft,
103
+ IconEye,
104
+ IconEyeOff,
105
+ IconHelpCircle,
106
+ IconFilter,
107
+ IconArrowsSort,
108
+ IconFileExport,
109
+ IconFileImport,
110
+ IconTrashOff,
111
+ IconToggleLeft,
112
+ IconLogin,
113
+ IconUserPlus,
114
+ IconShieldCheck,
115
+ IconFileText,
116
+ IconShare
117
+ } from "@tabler/icons-react";
118
+ var GdsIcons = {
119
+ // Navigation
120
+ Dashboard: IconDashboard,
121
+ Settings: IconSettings,
122
+ Users: IconUsers,
123
+ Analytics: IconChartBar,
124
+ Home: IconHome,
125
+ Inbox: IconInbox,
126
+ Calendar: IconCalendar,
127
+ Gallery: IconPhoto,
128
+ History: IconHistory,
129
+ Profile: IconUser,
130
+ // Actions
131
+ Add: IconPlus,
132
+ Edit: IconEdit,
133
+ Delete: IconTrash,
134
+ Search: IconSearch,
135
+ Save: IconDeviceFloppy,
136
+ Play: IconPlayerPlay,
137
+ Start: IconRocket,
138
+ Send: IconSend,
139
+ Reply: IconArrowBackUp,
140
+ Forward: IconArrowForwardUp,
141
+ Attach: IconPaperclip,
142
+ Upload: IconUpload,
143
+ Download: IconDownload,
144
+ Print: IconPrinter,
145
+ Copy: IconCopy,
146
+ Duplicate: IconCopyPlus,
147
+ Check: IconSquareCheck,
148
+ Uncheck: IconSquareX,
149
+ Complete: IconChecks,
150
+ Clear: IconClearAll,
151
+ Cancel: IconBan,
152
+ Confirm: IconThumbUp,
153
+ Close: IconX,
154
+ // Preferences & System
155
+ Language: IconLanguage,
156
+ Theme: IconPalette,
157
+ // Media
158
+ Capture: IconCamera,
159
+ Record: IconVideo,
160
+ Flip: IconCameraRotate,
161
+ Flash: IconBolt,
162
+ // Domain specific
163
+ Course: IconBook,
164
+ Lesson: IconNotebook,
165
+ Certificate: IconCertificate,
166
+ Student: IconSchool,
167
+ Class: IconBooks,
168
+ Grade: IconAward,
169
+ Child: IconMoodKid,
170
+ Family: IconUsersGroup,
171
+ Habit: IconTarget,
172
+ Goal: IconFlag,
173
+ Streak: IconFlame,
174
+ Reward: IconGift,
175
+ // Feedback
176
+ Success: IconCheck,
177
+ Warning: IconAlertTriangle,
178
+ Danger: IconAlertCircle,
179
+ Info: IconInfoCircle,
180
+ // Analysis additions
181
+ Trophy: IconTrophy,
182
+ Crown: IconCrown,
183
+ Pause: IconPlayerPause,
184
+ Message: IconMessage,
185
+ Mail: IconMail,
186
+ Refresh: IconRefresh,
187
+ TrendingUp: IconTrendingUp,
188
+ TrendingDown: IconTrendingDown,
189
+ Currency: IconCurrencyDollar,
190
+ Grid: IconLayoutGrid,
191
+ List: IconList,
192
+ Logout: IconDoorExit,
193
+ Notifications: IconBell,
194
+ Back: IconArrowLeft,
195
+ Eye: IconEye,
196
+ EyeOff: IconEyeOff,
197
+ Help: IconHelpCircle,
198
+ Filter: IconFilter,
199
+ Sort: IconArrowsSort,
200
+ // New Audit-driven additions
201
+ Export: IconFileExport,
202
+ Import: IconFileImport,
203
+ Preview: IconEye,
204
+ Clone: IconCopy,
205
+ Restore: IconTrashOff,
206
+ Toggle: IconToggleLeft,
207
+ Submit: IconCheck,
208
+ Reset: IconRefresh,
209
+ Login: IconLogin,
210
+ Register: IconUserPlus,
211
+ Verify: IconShieldCheck,
212
+ Launch: IconRocket,
213
+ Draft: IconFileText,
214
+ Refer: IconShare,
215
+ Evidence: IconPaperclip,
216
+ // System
217
+ ChevronDown: IconChevronDown,
218
+ ChevronUp: IconChevronUp,
219
+ Menu: IconMenu2,
220
+ Moon: IconMoon,
221
+ Sun: IconSun
222
+ };
223
+
224
+ // src/vocabulary.ts
225
+ var GdsVocabulary = {
226
+ // Base
227
+ settings: { id: "gds.action.settings", defaultMessage: "Settings", icon: GdsIcons.Settings, feedback: { icon: GdsIcons.Settings, color: "teal", messageId: "gds.feedback.saved" } },
228
+ analytics: { id: "gds.action.analytics", defaultMessage: "Analytics", icon: GdsIcons.Analytics, feedback: { icon: GdsIcons.Analytics, color: "teal", messageId: "gds.feedback.loaded" } },
229
+ dashboard: { id: "gds.action.dashboard", defaultMessage: "Dashboard", icon: GdsIcons.Dashboard, feedback: { icon: GdsIcons.Dashboard, color: "teal", messageId: "gds.feedback.loaded" } },
230
+ play: { id: "gds.action.play", defaultMessage: "Play", icon: GdsIcons.Play, feedback: { icon: GdsIcons.Play, color: "teal", messageId: "gds.feedback.started" } },
231
+ start: { id: "gds.action.start", defaultMessage: "Start", icon: GdsIcons.Start, feedback: { icon: GdsIcons.Start, color: "teal", messageId: "gds.feedback.started" } },
232
+ users: { id: "gds.action.users", defaultMessage: "Users", icon: GdsIcons.Users, feedback: { icon: GdsIcons.Users, color: "teal", messageId: "gds.feedback.loaded" } },
233
+ add: { id: "gds.action.add", defaultMessage: "Add", icon: GdsIcons.Add, feedback: { icon: GdsIcons.Add, color: "teal", messageId: "gds.feedback.added" } },
234
+ edit: { id: "gds.action.edit", defaultMessage: "Edit", icon: GdsIcons.Edit, feedback: { icon: GdsIcons.Edit, color: "teal", messageId: "gds.feedback.edited" } },
235
+ delete: { id: "gds.action.delete", defaultMessage: "Delete", icon: GdsIcons.Delete, feedback: { icon: GdsIcons.Delete, color: "red", messageId: "gds.feedback.deleted" } },
236
+ save: { id: "gds.action.save", defaultMessage: "Save", icon: GdsIcons.Save, feedback: { icon: GdsIcons.Save, color: "teal", messageId: "gds.feedback.saved" } },
237
+ cancel: { id: "gds.action.cancel", defaultMessage: "Cancel", icon: GdsIcons.Cancel, feedback: { icon: GdsIcons.Cancel, color: "red", messageId: "gds.feedback.canceled" } },
238
+ confirm: { id: "gds.action.confirm", defaultMessage: "Confirm", icon: GdsIcons.Confirm, feedback: { icon: GdsIcons.Confirm, color: "teal", messageId: "gds.feedback.confirmed" } },
239
+ close: { id: "gds.action.close", defaultMessage: "Close", icon: GdsIcons.Close, feedback: { icon: GdsIcons.Close, color: "gray", messageId: "gds.feedback.closed" } },
240
+ language: { id: "gds.action.language", defaultMessage: "Language", icon: GdsIcons.Language, feedback: { icon: GdsIcons.Language, color: "teal", messageId: "gds.feedback.changed" } },
241
+ theme: { id: "gds.action.theme", defaultMessage: "Theme", icon: GdsIcons.Theme, feedback: { icon: GdsIcons.Theme, color: "teal", messageId: "gds.feedback.changed" } },
242
+ // Navigation
243
+ home: { id: "gds.action.home", defaultMessage: "Home", icon: GdsIcons.Home, feedback: { icon: GdsIcons.Home, color: "teal", messageId: "gds.feedback.opened" } },
244
+ inbox: { id: "gds.action.inbox", defaultMessage: "Inbox", icon: GdsIcons.Inbox, feedback: { icon: GdsIcons.Inbox, color: "teal", messageId: "gds.feedback.opened" } },
245
+ calendar: { id: "gds.action.calendar", defaultMessage: "Calendar", icon: GdsIcons.Calendar, feedback: { icon: GdsIcons.Calendar, color: "teal", messageId: "gds.feedback.opened" } },
246
+ gallery: { id: "gds.action.gallery", defaultMessage: "Gallery", icon: GdsIcons.Gallery, feedback: { icon: GdsIcons.Gallery, color: "teal", messageId: "gds.feedback.opened" } },
247
+ history: { id: "gds.action.history", defaultMessage: "History", icon: GdsIcons.History, feedback: { icon: GdsIcons.History, color: "teal", messageId: "gds.feedback.opened" } },
248
+ profile: { id: "gds.action.profile", defaultMessage: "Profile", icon: GdsIcons.Profile, feedback: { icon: GdsIcons.Profile, color: "teal", messageId: "gds.feedback.opened" } },
249
+ // Actions
250
+ send: { id: "gds.action.send", defaultMessage: "Send", icon: GdsIcons.Send, feedback: { icon: GdsIcons.Send, color: "blue", messageId: "gds.feedback.sent" } },
251
+ reply: { id: "gds.action.reply", defaultMessage: "Reply", icon: GdsIcons.Reply, feedback: { icon: GdsIcons.Reply, color: "blue", messageId: "gds.feedback.replied" } },
252
+ forward: { id: "gds.action.forward", defaultMessage: "Forward", icon: GdsIcons.Forward, feedback: { icon: GdsIcons.Forward, color: "blue", messageId: "gds.feedback.forwarded" } },
253
+ attach: { id: "gds.action.attach", defaultMessage: "Attach", icon: GdsIcons.Attach, feedback: { icon: GdsIcons.Attach, color: "teal", messageId: "gds.feedback.attached" } },
254
+ upload: { id: "gds.action.upload", defaultMessage: "Upload", icon: GdsIcons.Upload, feedback: { icon: GdsIcons.Upload, color: "teal", messageId: "gds.feedback.uploaded" } },
255
+ download: { id: "gds.action.download", defaultMessage: "Download", icon: GdsIcons.Download, feedback: { icon: GdsIcons.Download, color: "teal", messageId: "gds.feedback.downloaded" } },
256
+ print: { id: "gds.action.print", defaultMessage: "Print", icon: GdsIcons.Print, feedback: { icon: GdsIcons.Print, color: "teal", messageId: "gds.feedback.printed" } },
257
+ copy: { id: "gds.action.copy", defaultMessage: "Copy", icon: GdsIcons.Copy, feedback: { icon: GdsIcons.Copy, color: "teal", messageId: "gds.feedback.copied" } },
258
+ duplicate: { id: "gds.action.duplicate", defaultMessage: "Duplicate", icon: GdsIcons.Duplicate, feedback: { icon: GdsIcons.Duplicate, color: "teal", messageId: "gds.feedback.duplicated" } },
259
+ check: { id: "gds.action.check", defaultMessage: "Check", icon: GdsIcons.Check, feedback: { icon: GdsIcons.Check, color: "teal", messageId: "gds.feedback.checked" } },
260
+ uncheck: { id: "gds.action.uncheck", defaultMessage: "Uncheck", icon: GdsIcons.Uncheck, feedback: { icon: GdsIcons.Uncheck, color: "red", messageId: "gds.feedback.unchecked" } },
261
+ complete: { id: "gds.action.complete", defaultMessage: "Complete", icon: GdsIcons.Complete, feedback: { icon: GdsIcons.Complete, color: "teal", messageId: "gds.feedback.completed" } },
262
+ clear: { id: "gds.action.clear", defaultMessage: "Clear", icon: GdsIcons.Clear, feedback: { icon: GdsIcons.Clear, color: "red", messageId: "gds.feedback.cleared" } },
263
+ // Media (camera project)
264
+ capture: { id: "gds.action.capture", defaultMessage: "Capture", icon: GdsIcons.Capture, feedback: { icon: GdsIcons.Capture, color: "teal", messageId: "gds.feedback.captured" } },
265
+ record: { id: "gds.action.record", defaultMessage: "Record", icon: GdsIcons.Record, feedback: { icon: GdsIcons.Record, color: "teal", messageId: "gds.feedback.recorded" } },
266
+ flip: { id: "gds.action.flip", defaultMessage: "Flip", icon: GdsIcons.Flip, feedback: { icon: GdsIcons.Flip, color: "teal", messageId: "gds.feedback.flipped" } },
267
+ flash: { id: "gds.action.flash", defaultMessage: "Flash", icon: GdsIcons.Flash, feedback: { icon: GdsIcons.Flash, color: "teal", messageId: "gds.feedback.flashed" } },
268
+ // Domain specific (amanoba, classscout, kidex, habigoal)
269
+ course: { id: "gds.action.course", defaultMessage: "Course", icon: GdsIcons.Course, feedback: { icon: GdsIcons.Course, color: "teal", messageId: "gds.feedback.done" } },
270
+ lesson: { id: "gds.action.lesson", defaultMessage: "Lesson", icon: GdsIcons.Lesson, feedback: { icon: GdsIcons.Lesson, color: "teal", messageId: "gds.feedback.done" } },
271
+ certificate: { id: "gds.action.certificate", defaultMessage: "Certificate", icon: GdsIcons.Certificate, feedback: { icon: GdsIcons.Certificate, color: "teal", messageId: "gds.feedback.done" } },
272
+ student: { id: "gds.action.student", defaultMessage: "Student", icon: GdsIcons.Student, feedback: { icon: GdsIcons.Student, color: "teal", messageId: "gds.feedback.done" } },
273
+ class: { id: "gds.action.class", defaultMessage: "Class", icon: GdsIcons.Class, feedback: { icon: GdsIcons.Class, color: "teal", messageId: "gds.feedback.done" } },
274
+ grade: { id: "gds.action.grade", defaultMessage: "Grade", icon: GdsIcons.Grade, feedback: { icon: GdsIcons.Grade, color: "teal", messageId: "gds.feedback.done" } },
275
+ child: { id: "gds.action.child", defaultMessage: "Child", icon: GdsIcons.Child, feedback: { icon: GdsIcons.Child, color: "teal", messageId: "gds.feedback.done" } },
276
+ family: { id: "gds.action.family", defaultMessage: "Family", icon: GdsIcons.Family, feedback: { icon: GdsIcons.Family, color: "teal", messageId: "gds.feedback.done" } },
277
+ habit: { id: "gds.action.habit", defaultMessage: "Habit", icon: GdsIcons.Habit, feedback: { icon: GdsIcons.Habit, color: "teal", messageId: "gds.feedback.done" } },
278
+ goal: { id: "gds.action.goal", defaultMessage: "Goal", icon: GdsIcons.Goal, feedback: { icon: GdsIcons.Goal, color: "teal", messageId: "gds.feedback.done" } },
279
+ streak: { id: "gds.action.streak", defaultMessage: "Streak", icon: GdsIcons.Streak, feedback: { icon: GdsIcons.Streak, color: "teal", messageId: "gds.feedback.done" } },
280
+ reward: { id: "gds.action.reward", defaultMessage: "Reward", icon: GdsIcons.Reward, feedback: { icon: GdsIcons.Reward, color: "yellow", messageId: "gds.feedback.rewarded" } },
281
+ // Codebase analysis additions
282
+ trophy: { id: "gds.action.trophy", defaultMessage: "Trophy", icon: GdsIcons.Trophy, feedback: { icon: GdsIcons.Trophy, color: "yellow", messageId: "gds.feedback.rewarded" } },
283
+ crown: { id: "gds.action.crown", defaultMessage: "Crown", icon: GdsIcons.Crown, feedback: { icon: GdsIcons.Crown, color: "yellow", messageId: "gds.feedback.rewarded" } },
284
+ pause: { id: "gds.action.pause", defaultMessage: "Pause", icon: GdsIcons.Pause, feedback: { icon: GdsIcons.Pause, color: "teal", messageId: "gds.feedback.paused" } },
285
+ message: { id: "gds.action.message", defaultMessage: "Message", icon: GdsIcons.Message, feedback: { icon: GdsIcons.Message, color: "blue", messageId: "gds.feedback.sent" } },
286
+ mail: { id: "gds.action.mail", defaultMessage: "Mail", icon: GdsIcons.Mail, feedback: { icon: GdsIcons.Mail, color: "blue", messageId: "gds.feedback.mailed" } },
287
+ refresh: { id: "gds.action.refresh", defaultMessage: "Refresh", icon: GdsIcons.Refresh, feedback: { icon: GdsIcons.Refresh, color: "teal", messageId: "gds.feedback.refreshed" } },
288
+ trendingUp: { id: "gds.action.trendingUp", defaultMessage: "Trending Up", icon: GdsIcons.TrendingUp, feedback: { icon: GdsIcons.TrendingUp, color: "teal", messageId: "gds.feedback.done" } },
289
+ trendingDown: { id: "gds.action.trendingDown", defaultMessage: "Trending Down", icon: GdsIcons.TrendingDown, feedback: { icon: GdsIcons.TrendingDown, color: "teal", messageId: "gds.feedback.done" } },
290
+ currency: { id: "gds.action.currency", defaultMessage: "Currency", icon: GdsIcons.Currency, feedback: { icon: GdsIcons.Currency, color: "teal", messageId: "gds.feedback.done" } },
291
+ grid: { id: "gds.action.grid", defaultMessage: "Grid", icon: GdsIcons.Grid, feedback: { icon: GdsIcons.Grid, color: "teal", messageId: "gds.feedback.done" } },
292
+ list: { id: "gds.action.list", defaultMessage: "List", icon: GdsIcons.List, feedback: { icon: GdsIcons.List, color: "teal", messageId: "gds.feedback.done" } },
293
+ logout: { id: "gds.action.logout", defaultMessage: "Logout", icon: GdsIcons.Logout, feedback: { icon: GdsIcons.Logout, color: "teal", messageId: "gds.feedback.loggedOut" } },
294
+ notifications: { id: "gds.action.notifications", defaultMessage: "Notifications", icon: GdsIcons.Notifications, feedback: { icon: GdsIcons.Notifications, color: "teal", messageId: "gds.feedback.done" } },
295
+ back: { id: "gds.action.back", defaultMessage: "Back", icon: GdsIcons.Back, feedback: { icon: GdsIcons.Back, color: "teal", messageId: "gds.feedback.done" } },
296
+ eye: { id: "gds.action.eye", defaultMessage: "View", icon: GdsIcons.Eye, feedback: { icon: GdsIcons.Eye, color: "teal", messageId: "gds.feedback.done" } },
297
+ eyeOff: { id: "gds.action.eyeOff", defaultMessage: "Hide", icon: GdsIcons.EyeOff, feedback: { icon: GdsIcons.EyeOff, color: "teal", messageId: "gds.feedback.done" } },
298
+ help: { id: "gds.action.help", defaultMessage: "Help", icon: GdsIcons.Help, feedback: { icon: GdsIcons.Help, color: "teal", messageId: "gds.feedback.done" } },
299
+ filter: { id: "gds.action.filter", defaultMessage: "Filter", icon: GdsIcons.Filter, feedback: { icon: GdsIcons.Filter, color: "teal", messageId: "gds.feedback.filtered" } },
300
+ sort: { id: "gds.action.sort", defaultMessage: "Sort", icon: GdsIcons.Sort, feedback: { icon: GdsIcons.Sort, color: "teal", messageId: "gds.feedback.sorted" } },
301
+ // Audit-driven additions
302
+ export: { id: "gds.action.export", defaultMessage: "Export", icon: GdsIcons.Export, feedback: { icon: GdsIcons.Export, color: "teal", messageId: "gds.feedback.exported" } },
303
+ import: { id: "gds.action.import", defaultMessage: "Import", icon: GdsIcons.Import, feedback: { icon: GdsIcons.Import, color: "teal", messageId: "gds.feedback.imported" } },
304
+ preview: { id: "gds.action.preview", defaultMessage: "Preview", icon: GdsIcons.Preview, feedback: { icon: GdsIcons.Preview, color: "teal", messageId: "gds.feedback.previewed" } },
305
+ clone: { id: "gds.action.clone", defaultMessage: "Clone", icon: GdsIcons.Clone, feedback: { icon: GdsIcons.Clone, color: "teal", messageId: "gds.feedback.cloned" } },
306
+ restore: { id: "gds.action.restore", defaultMessage: "Restore", icon: GdsIcons.Restore, feedback: { icon: GdsIcons.Restore, color: "teal", messageId: "gds.feedback.restored" } },
307
+ toggle: { id: "gds.action.toggle", defaultMessage: "Toggle", icon: GdsIcons.Toggle, feedback: { icon: GdsIcons.Toggle, color: "teal", messageId: "gds.feedback.toggled" } },
308
+ search: { id: "gds.action.search", defaultMessage: "Search", icon: GdsIcons.Search, feedback: { icon: GdsIcons.Search, color: "teal", messageId: "gds.feedback.searched" } },
309
+ submit: { id: "gds.action.submit", defaultMessage: "Submit", icon: GdsIcons.Submit, feedback: { icon: GdsIcons.Submit, color: "teal", messageId: "gds.feedback.submitted" } },
310
+ reset: { id: "gds.action.reset", defaultMessage: "Reset", icon: GdsIcons.Reset, feedback: { icon: GdsIcons.Reset, color: "red", messageId: "gds.feedback.reset" } },
311
+ login: { id: "gds.action.login", defaultMessage: "Login", icon: GdsIcons.Login, feedback: { icon: GdsIcons.Login, color: "teal", messageId: "gds.feedback.loggedIn" } },
312
+ register: { id: "gds.action.register", defaultMessage: "Register", icon: GdsIcons.Register, feedback: { icon: GdsIcons.Register, color: "teal", messageId: "gds.feedback.registered" } },
313
+ verify: { id: "gds.action.verify", defaultMessage: "Verify", icon: GdsIcons.Verify, feedback: { icon: GdsIcons.Verify, color: "teal", messageId: "gds.feedback.verified" } },
314
+ launch: { id: "gds.action.launch", defaultMessage: "Launch", icon: GdsIcons.Launch, feedback: { icon: GdsIcons.Launch, color: "purple", messageId: "gds.feedback.launched" } },
315
+ draft: { id: "gds.action.draft", defaultMessage: "Draft", icon: GdsIcons.Draft, feedback: { icon: GdsIcons.Draft, color: "teal", messageId: "gds.feedback.drafted" } },
316
+ refer: { id: "gds.action.refer", defaultMessage: "Refer", icon: GdsIcons.Refer, feedback: { icon: GdsIcons.Refer, color: "teal", messageId: "gds.feedback.referred" } },
317
+ evidence: { id: "gds.action.evidence", defaultMessage: "Evidence", icon: GdsIcons.Evidence, feedback: { icon: GdsIcons.Evidence, color: "teal", messageId: "gds.feedback.added" } }
318
+ };
319
+
320
+ // src/MetricCard.tsx
321
+ import { Badge as Badge2, Card, Group, Stack as Stack2, Text as Text2, ThemeIcon, Title as Title2 } from "@mantine/core";
322
+ import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
323
+ var trendColors = {
324
+ positive: "teal",
325
+ negative: "red",
326
+ neutral: "gray"
327
+ };
328
+ function MetricCard({ label, value, description, trend, icon, footer }) {
329
+ return /* @__PURE__ */ jsx3(Card, { withBorder: true, radius: "lg", padding: "lg", children: /* @__PURE__ */ jsxs2(Stack2, { gap: "md", children: [
330
+ /* @__PURE__ */ jsxs2(Group, { justify: "space-between", align: "flex-start", wrap: "nowrap", children: [
331
+ /* @__PURE__ */ jsxs2(Stack2, { gap: 4, children: [
332
+ /* @__PURE__ */ jsx3(Text2, { size: "sm", c: "dimmed", fw: 600, children: label }),
333
+ /* @__PURE__ */ jsx3(Title2, { order: 3, children: value })
334
+ ] }),
335
+ icon ? /* @__PURE__ */ jsx3(ThemeIcon, { variant: "light", size: "xl", radius: "xl", "aria-hidden": true, children: icon }) : null
336
+ ] }),
337
+ description || trend ? /* @__PURE__ */ jsxs2(Group, { justify: "space-between", align: "center", gap: "sm", children: [
338
+ description ? /* @__PURE__ */ jsx3(Text2, { size: "sm", c: "dimmed", flex: 1, children: description }) : /* @__PURE__ */ jsx3("span", {}),
339
+ trend ? /* @__PURE__ */ jsx3(Badge2, { color: trendColors[trend.tone ?? "neutral"], variant: "light", children: trend.label }) : null
340
+ ] }) : null,
341
+ footer
342
+ ] }) });
343
+ }
344
+
345
+ // src/ProgressCard.tsx
346
+ import { Card as Card2, Group as Group2, Progress, Stack as Stack3, Text as Text3, Title as Title3 } from "@mantine/core";
347
+ import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
348
+ function ProgressCard({
349
+ label,
350
+ value,
351
+ progress,
352
+ progressLabel,
353
+ description,
354
+ action
355
+ }) {
356
+ return /* @__PURE__ */ jsx4(Card2, { withBorder: true, radius: "lg", padding: "lg", children: /* @__PURE__ */ jsxs3(Stack3, { gap: "md", children: [
357
+ /* @__PURE__ */ jsxs3(Group2, { justify: "space-between", align: "flex-start", children: [
358
+ /* @__PURE__ */ jsxs3(Stack3, { gap: 4, children: [
359
+ /* @__PURE__ */ jsx4(Text3, { size: "sm", c: "dimmed", fw: 600, children: label }),
360
+ /* @__PURE__ */ jsx4(Title3, { order: 3, children: value })
361
+ ] }),
362
+ action
363
+ ] }),
364
+ description ? /* @__PURE__ */ jsx4(Text3, { size: "sm", c: "dimmed", children: description }) : null,
365
+ /* @__PURE__ */ jsxs3(Stack3, { gap: 6, children: [
366
+ /* @__PURE__ */ jsxs3(Group2, { justify: "space-between", gap: "sm", children: [
367
+ /* @__PURE__ */ jsx4(Text3, { size: "sm", fw: 500, children: progressLabel ?? "Progress" }),
368
+ /* @__PURE__ */ jsxs3(Text3, { size: "sm", c: "dimmed", children: [
369
+ Math.round(progress),
370
+ "%"
371
+ ] })
372
+ ] }),
373
+ /* @__PURE__ */ jsx4(Progress, { value: progress, radius: "xl", size: "md" })
374
+ ] })
375
+ ] }) });
376
+ }
377
+
378
+ // src/SectionPanel.tsx
379
+ import { Divider, Group as Group3, Paper, Stack as Stack4, Text as Text4, Title as Title4 } from "@mantine/core";
380
+ import { Fragment, jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
381
+ var toneBackgrounds = {
382
+ default: "var(--mantine-color-body)",
383
+ supporting: "light-dark(var(--mantine-color-gray-0), color-mix(in srgb, var(--mantine-color-dark-7) 92%, black))",
384
+ warning: "light-dark(var(--mantine-color-yellow-0), color-mix(in srgb, var(--mantine-color-yellow-9) 18%, var(--mantine-color-body)))",
385
+ critical: "light-dark(var(--mantine-color-red-0), color-mix(in srgb, var(--mantine-color-red-9) 18%, var(--mantine-color-body)))"
386
+ };
387
+ function SectionPanel({
388
+ title,
389
+ description,
390
+ action,
391
+ children,
392
+ tone = "default",
393
+ id,
394
+ divided = true
395
+ }) {
396
+ return /* @__PURE__ */ jsx5(Paper, { id, withBorder: true, radius: "xl", p: "lg", style: { background: toneBackgrounds[tone] }, children: /* @__PURE__ */ jsxs4(Stack4, { gap: "md", children: [
397
+ title || description || action ? /* @__PURE__ */ jsxs4(Fragment, { children: [
398
+ /* @__PURE__ */ jsxs4(Group3, { justify: "space-between", align: "flex-start", gap: "md", wrap: "wrap", children: [
399
+ title || description ? /* @__PURE__ */ jsxs4(Stack4, { gap: 4, children: [
400
+ title ? /* @__PURE__ */ jsx5(Title4, { order: 3, children: title }) : null,
401
+ description ? /* @__PURE__ */ jsx5(Text4, { size: "sm", c: "dimmed", children: description }) : null
402
+ ] }) : null,
403
+ action
404
+ ] }),
405
+ divided ? /* @__PURE__ */ jsx5(Divider, {}) : null
406
+ ] }) : null,
407
+ children
408
+ ] }) });
409
+ }
410
+
411
+ // src/ConsumerSection.tsx
412
+ import { jsx as jsx6 } from "react/jsx-runtime";
413
+ function ConsumerSection({
414
+ title,
415
+ description,
416
+ action,
417
+ children,
418
+ tone = "default"
419
+ }) {
420
+ return /* @__PURE__ */ jsx6(SectionPanel, { title, description, action, tone, children });
421
+ }
422
+
423
+ // src/ConsumerDashboardGrid.tsx
424
+ import { SimpleGrid } from "@mantine/core";
425
+ import { jsx as jsx7 } from "react/jsx-runtime";
426
+ function ConsumerDashboardGrid({
427
+ children,
428
+ columns = 3
429
+ }) {
430
+ return /* @__PURE__ */ jsx7(SimpleGrid, { cols: { base: 1, sm: Math.min(columns, 2), lg: columns }, spacing: "lg", children });
431
+ }
432
+
433
+ // src/EditorialCard.tsx
434
+ import { Anchor, AspectRatio, Badge as Badge3, Box as Box2, Card as Card3, Group as Group4, Stack as Stack5, Text as Text5, Title as Title5 } from "@mantine/core";
435
+ import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
436
+ var tonePalette = {
437
+ default: {
438
+ accent: "violet",
439
+ background: "var(--mantine-color-body)"
440
+ },
441
+ warm: {
442
+ accent: "orange",
443
+ background: "light-dark(var(--mantine-color-orange-0), color-mix(in srgb, var(--mantine-color-orange-9) 16%, var(--mantine-color-body)))"
444
+ },
445
+ cool: {
446
+ accent: "blue",
447
+ background: "light-dark(var(--mantine-color-blue-0), color-mix(in srgb, var(--mantine-color-blue-9) 16%, var(--mantine-color-body)))"
448
+ },
449
+ muted: {
450
+ accent: "gray",
451
+ background: "light-dark(var(--mantine-color-gray-0), color-mix(in srgb, var(--mantine-color-dark-7) 92%, black))"
452
+ }
453
+ };
454
+ function EditorialMediaFallback({ compact }) {
455
+ return /* @__PURE__ */ jsx8(AspectRatio, { ratio: compact ? 16 / 10 : 4 / 3, children: /* @__PURE__ */ jsx8(
456
+ Box2,
457
+ {
458
+ style: {
459
+ display: "grid",
460
+ placeItems: "center",
461
+ width: "100%",
462
+ height: "100%",
463
+ background: "var(--mantine-color-gray-0)",
464
+ borderRadius: "var(--mantine-radius-md)"
465
+ },
466
+ children: /* @__PURE__ */ jsx8(GdsIcons.Gallery, { size: compact ? "1.5rem" : "2rem" })
467
+ }
468
+ ) });
469
+ }
470
+ function EditorialCard({
471
+ media,
472
+ mediaAlt,
473
+ eyebrow,
474
+ badge,
475
+ title,
476
+ description,
477
+ meta,
478
+ ctaLabel = "Explore",
479
+ href,
480
+ onClick,
481
+ tone = "default",
482
+ variant = "standard",
483
+ classNames
484
+ }) {
485
+ const compact = variant === "compact";
486
+ const featured = variant === "featured";
487
+ const palette = tonePalette[tone];
488
+ const interactiveProps = href ? { component: "a", href } : onClick ? { component: "button", onClick, type: "button" } : {};
489
+ return /* @__PURE__ */ jsxs5(
490
+ Card3,
491
+ {
492
+ className: classNames?.root,
493
+ withBorder: true,
494
+ radius: "xl",
495
+ padding: 0,
496
+ ...interactiveProps,
497
+ style: {
498
+ overflow: "hidden",
499
+ textAlign: "left",
500
+ background: featured ? palette.background : "var(--mantine-color-body)",
501
+ cursor: href || onClick ? "pointer" : "default"
502
+ },
503
+ children: [
504
+ /* @__PURE__ */ jsx8(Card3.Section, { className: classNames?.media, children: media ?? /* @__PURE__ */ jsx8(EditorialMediaFallback, { compact }) }),
505
+ /* @__PURE__ */ jsxs5(Stack5, { gap: "md", p: compact ? "md" : "lg", className: classNames?.body, children: [
506
+ /* @__PURE__ */ jsxs5(Group4, { justify: "space-between", align: "flex-start", gap: "sm", wrap: "wrap", children: [
507
+ /* @__PURE__ */ jsxs5(Stack5, { gap: 4, flex: 1, children: [
508
+ eyebrow ? /* @__PURE__ */ jsx8(Text5, { size: "xs", fw: 700, c: "dimmed", children: eyebrow }) : null,
509
+ /* @__PURE__ */ jsx8(Title5, { order: compact ? 4 : 3, className: classNames?.title, children: title })
510
+ ] }),
511
+ badge ? typeof badge === "string" ? /* @__PURE__ */ jsx8(Badge3, { color: palette.accent, variant: "light", children: badge }) : badge : null
512
+ ] }),
513
+ description ? /* @__PURE__ */ jsx8(Text5, { size: "sm", c: "dimmed", children: description }) : null,
514
+ meta ? /* @__PURE__ */ jsx8(Text5, { size: "sm", c: "dimmed", className: classNames?.meta, children: meta }) : null,
515
+ href || onClick || ctaLabel ? /* @__PURE__ */ jsxs5(Group4, { gap: 6, c: `${palette.accent}.7`, className: classNames?.action, children: [
516
+ /* @__PURE__ */ jsx8(Text5, { fw: 600, size: "sm", children: ctaLabel }),
517
+ /* @__PURE__ */ jsx8(
518
+ Anchor,
519
+ {
520
+ component: "span",
521
+ underline: "never",
522
+ c: "inherit",
523
+ "aria-label": typeof mediaAlt === "string" ? mediaAlt : void 0,
524
+ children: "\u2192"
525
+ }
526
+ )
527
+ ] }) : null
528
+ ] })
529
+ ]
530
+ }
531
+ );
532
+ }
533
+
534
+ // src/ProductCard.tsx
535
+ import { Badge as Badge4, Card as Card4, Group as Group5, Menu, Stack as Stack6, Text as Text6, ThemeIcon as ThemeIcon2, Title as Title6, ActionIcon } from "@mantine/core";
536
+ import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
537
+ function ProductCard({
538
+ title,
539
+ description,
540
+ media,
541
+ icon,
542
+ status,
543
+ metadata = [],
544
+ primaryAction,
545
+ secondaryActions = [],
546
+ footer
547
+ }) {
548
+ const MoreIcon = GdsIcons.Menu;
549
+ return /* @__PURE__ */ jsx9(Card4, { withBorder: true, radius: "lg", padding: "lg", children: /* @__PURE__ */ jsxs6(Stack6, { gap: "md", children: [
550
+ media,
551
+ /* @__PURE__ */ jsxs6(Group5, { justify: "space-between", align: "flex-start", wrap: "nowrap", children: [
552
+ /* @__PURE__ */ jsxs6(Group5, { align: "flex-start", gap: "sm", wrap: "nowrap", children: [
553
+ icon ? /* @__PURE__ */ jsx9(ThemeIcon2, { variant: "light", size: "xl", radius: "xl", "aria-hidden": true, children: icon }) : null,
554
+ /* @__PURE__ */ jsxs6(Stack6, { gap: 4, children: [
555
+ /* @__PURE__ */ jsx9(Title6, { order: 4, children: title }),
556
+ description ? /* @__PURE__ */ jsx9(Text6, { size: "sm", c: "dimmed", lineClamp: 3, children: description }) : null
557
+ ] })
558
+ ] }),
559
+ /* @__PURE__ */ jsxs6(Group5, { gap: "xs", align: "center", wrap: "nowrap", children: [
560
+ typeof status === "string" ? /* @__PURE__ */ jsx9(Badge4, { variant: "light", children: status }) : status,
561
+ secondaryActions.length ? /* @__PURE__ */ jsxs6(Menu, { position: "bottom-end", withinPortal: true, children: [
562
+ /* @__PURE__ */ jsx9(Menu.Target, { children: /* @__PURE__ */ jsx9(ActionIcon, { variant: "subtle", "aria-label": "More actions", children: /* @__PURE__ */ jsx9(MoreIcon, { size: "1rem" }) }) }),
563
+ /* @__PURE__ */ jsx9(Menu.Dropdown, { children: secondaryActions.map(
564
+ (action) => action.href ? /* @__PURE__ */ jsx9(Menu.Item, { component: "a", href: action.href, color: action.color, children: action.label }, action.label) : /* @__PURE__ */ jsx9(Menu.Item, { onClick: action.onClick, color: action.color, children: action.label }, action.label)
565
+ ) })
566
+ ] }) : null
567
+ ] })
568
+ ] }),
569
+ metadata.length ? /* @__PURE__ */ jsx9(Stack6, { gap: 6, children: metadata.map((item) => /* @__PURE__ */ jsxs6(Group5, { justify: "space-between", gap: "sm", children: [
570
+ /* @__PURE__ */ jsx9(Text6, { size: "sm", c: "dimmed", children: item.label }),
571
+ /* @__PURE__ */ jsx9(Text6, { size: "sm", fw: 500, ta: "right", children: item.value })
572
+ ] }, item.label)) }) : null,
573
+ primaryAction ? /* @__PURE__ */ jsx9(Group5, { justify: "space-between", children: primaryAction }) : null,
574
+ footer
575
+ ] }) });
576
+ }
577
+
578
+ // src/PublicProductCard.tsx
579
+ import { cloneElement, isValidElement } from "react";
580
+ import { AspectRatio as AspectRatio2, Badge as Badge5, Card as Card5, Group as Group6, Skeleton, Stack as Stack7, Text as Text7, ThemeIcon as ThemeIcon3, Title as Title7 } from "@mantine/core";
581
+ import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
582
+ var stateConfig = {
583
+ available: { label: "Available", color: "teal" },
584
+ limited: { label: "Limited", color: "yellow" },
585
+ "sold-out": { label: "Sold out", color: "red" },
586
+ preorder: { label: "Preorder", color: "violet" }
587
+ };
588
+ function enhanceAction(action, disabled) {
589
+ if (!isValidElement(action)) {
590
+ return action;
591
+ }
592
+ return cloneElement(action, {
593
+ disabled: disabled || Boolean(action.props.disabled),
594
+ "aria-disabled": disabled || void 0
595
+ });
596
+ }
597
+ function ImageFallback({ compact }) {
598
+ return /* @__PURE__ */ jsx10(AspectRatio2, { ratio: compact ? 16 / 9 : 4 / 3, children: /* @__PURE__ */ jsx10(
599
+ ThemeIcon3,
600
+ {
601
+ size: "100%",
602
+ radius: "md",
603
+ variant: "light",
604
+ color: "gray",
605
+ "aria-label": "No product image available",
606
+ children: /* @__PURE__ */ jsx10(GdsIcons.Gallery, { size: compact ? "1.5rem" : "2rem" })
607
+ }
608
+ ) });
609
+ }
610
+ function LoadingCard({ compact }) {
611
+ return /* @__PURE__ */ jsx10(Card5, { withBorder: true, radius: "lg", padding: compact ? "md" : "lg", children: /* @__PURE__ */ jsxs7(Stack7, { gap: "md", children: [
612
+ /* @__PURE__ */ jsx10(AspectRatio2, { ratio: compact ? 16 / 9 : 4 / 3, children: /* @__PURE__ */ jsx10(Skeleton, { radius: "md" }) }),
613
+ /* @__PURE__ */ jsxs7(Stack7, { gap: "xs", children: [
614
+ /* @__PURE__ */ jsx10(Skeleton, { height: 20, radius: "sm", width: "70%" }),
615
+ /* @__PURE__ */ jsx10(Skeleton, { height: 14, radius: "sm", width: "100%" }),
616
+ /* @__PURE__ */ jsx10(Skeleton, { height: 14, radius: "sm", width: "85%" })
617
+ ] }),
618
+ /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", align: "center", children: [
619
+ /* @__PURE__ */ jsx10(Skeleton, { height: 18, radius: "sm", width: 72 }),
620
+ /* @__PURE__ */ jsx10(Skeleton, { height: 36, radius: "md", width: 120 })
621
+ ] })
622
+ ] }) });
623
+ }
624
+ function PublicProductCard({
625
+ title,
626
+ description,
627
+ image,
628
+ price,
629
+ helperText,
630
+ helperKind = "supporting",
631
+ pickupNote,
632
+ inventoryNote,
633
+ state = "available",
634
+ stateLabels: stateLabels2,
635
+ primaryAction,
636
+ secondaryAction,
637
+ metadata = [],
638
+ compact = false,
639
+ loading = false,
640
+ disabled = false
641
+ }) {
642
+ if (loading) {
643
+ return /* @__PURE__ */ jsx10(LoadingCard, { compact });
644
+ }
645
+ const isActionDisabled = disabled || state === "sold-out";
646
+ const resolvedPrimaryAction = enhanceAction(primaryAction, isActionDisabled);
647
+ const resolvedSecondaryAction = enhanceAction(secondaryAction, disabled);
648
+ const stateBadge = {
649
+ ...stateConfig[state],
650
+ label: stateLabels2?.[state] ?? stateConfig[state].label
651
+ };
652
+ const supportingHelper = helperKind === "supporting" ? helperText : null;
653
+ const pickupHelper = helperKind === "pickup" ? helperText : pickupNote;
654
+ const inventoryHelper = helperKind === "inventory" ? helperText : inventoryNote;
655
+ const hasSupportingRegion = Boolean(price || supportingHelper || pickupHelper || inventoryHelper);
656
+ return /* @__PURE__ */ jsx10(Card5, { withBorder: true, radius: "lg", padding: compact ? "md" : "lg", children: /* @__PURE__ */ jsxs7(Stack7, { gap: compact ? "sm" : "md", children: [
657
+ image ?? /* @__PURE__ */ jsx10(ImageFallback, { compact }),
658
+ /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", align: "flex-start", wrap: "nowrap", gap: "sm", children: [
659
+ /* @__PURE__ */ jsxs7(Stack7, { gap: 4, style: { minWidth: 0, flex: 1 }, children: [
660
+ /* @__PURE__ */ jsx10(Title7, { order: compact ? 5 : 4, lineClamp: 2, children: title }),
661
+ description ? /* @__PURE__ */ jsx10(Text7, { size: "sm", c: "dimmed", lineClamp: compact ? 2 : 3, children: description }) : null
662
+ ] }),
663
+ /* @__PURE__ */ jsx10(Badge5, { variant: "light", color: stateBadge.color, children: stateBadge.label })
664
+ ] }),
665
+ hasSupportingRegion ? /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", align: "flex-end", gap: "sm", wrap: "nowrap", children: [
666
+ /* @__PURE__ */ jsxs7(Stack7, { gap: 2, style: { minWidth: 0, flex: 1 }, children: [
667
+ price ? /* @__PURE__ */ jsx10(Text7, { fw: 700, size: compact ? "md" : "lg", children: price }) : null,
668
+ supportingHelper ? /* @__PURE__ */ jsx10(Text7, { size: "xs", c: "dimmed", children: supportingHelper }) : null
669
+ ] }),
670
+ resolvedPrimaryAction
671
+ ] }) : resolvedPrimaryAction ? /* @__PURE__ */ jsx10(Group6, { justify: "flex-end", children: resolvedPrimaryAction }) : null,
672
+ pickupHelper || inventoryHelper || metadata.length ? /* @__PURE__ */ jsxs7(Stack7, { gap: 6, children: [
673
+ pickupHelper ? /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", gap: "sm", children: [
674
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", c: "dimmed", children: "Pickup" }),
675
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", fw: 500, ta: "right", children: pickupHelper })
676
+ ] }) : null,
677
+ inventoryHelper ? /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", gap: "sm", children: [
678
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", c: "dimmed", children: "Availability" }),
679
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", fw: 500, ta: "right", children: inventoryHelper })
680
+ ] }) : null,
681
+ metadata.map((item) => /* @__PURE__ */ jsxs7(Group6, { justify: "space-between", gap: "sm", children: [
682
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", c: "dimmed", children: item.label }),
683
+ /* @__PURE__ */ jsx10(Text7, { size: "sm", fw: 500, ta: "right", children: item.value })
684
+ ] }, item.label))
685
+ ] }) : null,
686
+ resolvedSecondaryAction ? /* @__PURE__ */ jsx10(Group6, { justify: "flex-end", children: resolvedSecondaryAction }) : null
687
+ ] }) });
688
+ }
689
+
690
+ // src/DataToolbar.tsx
691
+ import { Badge as Badge6, Group as Group7, Stack as Stack8 } from "@mantine/core";
692
+ import { jsx as jsx11, jsxs as jsxs8 } from "react/jsx-runtime";
693
+ function DataToolbar({
694
+ searchSlot,
695
+ filterSlot,
696
+ sortSlot,
697
+ resetAction,
698
+ createAction,
699
+ activeFilters = []
700
+ }) {
701
+ return /* @__PURE__ */ jsxs8(Stack8, { gap: "sm", children: [
702
+ /* @__PURE__ */ jsxs8(Group7, { justify: "space-between", align: "flex-start", gap: "sm", children: [
703
+ /* @__PURE__ */ jsxs8(Group7, { flex: 1, align: "flex-start", gap: "sm", children: [
704
+ searchSlot,
705
+ filterSlot,
706
+ sortSlot
707
+ ] }),
708
+ /* @__PURE__ */ jsxs8(Group7, { gap: "sm", children: [
709
+ resetAction,
710
+ createAction
711
+ ] })
712
+ ] }),
713
+ activeFilters.length ? /* @__PURE__ */ jsx11(Group7, { gap: "xs", children: activeFilters.map((filter) => /* @__PURE__ */ jsx11(
714
+ Badge6,
715
+ {
716
+ variant: "light",
717
+ rightSection: filter.onRemove ? "\xD7" : void 0,
718
+ style: filter.onRemove ? { cursor: "pointer" } : void 0,
719
+ onClick: filter.onRemove,
720
+ children: filter.label
721
+ },
722
+ filter.label
723
+ )) }) : null
724
+ ] });
725
+ }
726
+
727
+ // src/StateBlock.tsx
728
+ import { Loader, Stack as Stack9, Text as Text8, ThemeIcon as ThemeIcon4, Title as Title8 } from "@mantine/core";
729
+ import { jsx as jsx12, jsxs as jsxs9 } from "react/jsx-runtime";
730
+ var variantConfig = {
731
+ loading: { color: "violet", icon: /* @__PURE__ */ jsx12(Loader, { size: "sm" }) },
732
+ empty: { color: "gray", icon: /* @__PURE__ */ jsx12(GdsIcons.Inbox, { size: "1.1rem" }) },
733
+ error: { color: "red", icon: /* @__PURE__ */ jsx12(GdsIcons.Danger, { size: "1.1rem" }) },
734
+ permission: { color: "orange", icon: /* @__PURE__ */ jsx12(GdsIcons.Verify, { size: "1.1rem" }) },
735
+ disabled: { color: "gray", icon: /* @__PURE__ */ jsx12(GdsIcons.Toggle, { size: "1.1rem" }) },
736
+ success: { color: "teal", icon: /* @__PURE__ */ jsx12(GdsIcons.Success, { size: "1.1rem" }) },
737
+ info: { color: "blue", icon: /* @__PURE__ */ jsx12(GdsIcons.Info, { size: "1.1rem" }) },
738
+ "not-enough-data": { color: "yellow", icon: /* @__PURE__ */ jsx12(GdsIcons.Analytics, { size: "1.1rem" }) }
739
+ };
740
+ function StateBlock({
741
+ variant,
742
+ title,
743
+ description,
744
+ action,
745
+ icon,
746
+ compact = false
747
+ }) {
748
+ const config = variantConfig[variant];
749
+ return /* @__PURE__ */ jsxs9(
750
+ Stack9,
751
+ {
752
+ align: compact ? "flex-start" : "center",
753
+ justify: "center",
754
+ gap: "md",
755
+ py: compact ? "md" : "xl",
756
+ ta: compact ? "left" : "center",
757
+ children: [
758
+ /* @__PURE__ */ jsx12(ThemeIcon4, { variant: "light", color: config.color, size: compact ? "lg" : "xl", radius: "xl", children: icon ?? config.icon }),
759
+ /* @__PURE__ */ jsxs9(Stack9, { gap: 6, align: compact ? "flex-start" : "center", children: [
760
+ /* @__PURE__ */ jsx12(Title8, { order: compact ? 4 : 3, children: title }),
761
+ description ? /* @__PURE__ */ jsx12(Text8, { c: "dimmed", maw: compact ? void 0 : 480, children: description }) : null
762
+ ] }),
763
+ action
764
+ ]
765
+ }
766
+ );
767
+ }
768
+
769
+ // src/BrowseSurface.tsx
770
+ import { Badge as Badge7, Box as Box3, Button, Group as Group8, Paper as Paper2, SimpleGrid as SimpleGrid2, Stack as Stack10, Text as Text9, Title as Title9 } from "@mantine/core";
771
+ import { jsx as jsx13, jsxs as jsxs10 } from "react/jsx-runtime";
772
+ function BrowseSurface({
773
+ eyebrow,
774
+ title,
775
+ description,
776
+ resultCount,
777
+ resultLabel = "results",
778
+ activeFilters = [],
779
+ scopeOptions = [],
780
+ scopeLabel = "Scope",
781
+ locationControls,
782
+ primaryControls,
783
+ toolbar,
784
+ sortControl,
785
+ mobileFilters,
786
+ filterDrawer,
787
+ content,
788
+ loading = false,
789
+ loadingTitle = "Loading results",
790
+ loadingDescription = "The browse surface is still synchronizing.",
791
+ error,
792
+ errorTitle = "Unable to load results",
793
+ errorAction,
794
+ empty = false,
795
+ emptyTitle = "No matching results",
796
+ emptyDescription = "Try adjusting your filters or broadening the current scope.",
797
+ emptyAction
798
+ }) {
799
+ const toolbarFilters = activeFilters.map((filter) => ({
800
+ label: typeof filter.label === "string" ? filter.label : `Filter ${filter.id}`,
801
+ onRemove: filter.onRemove
802
+ }));
803
+ let body = content;
804
+ if (loading) {
805
+ body = /* @__PURE__ */ jsx13(StateBlock, { variant: "loading", title: loadingTitle, description: loadingDescription, compact: true });
806
+ } else if (error) {
807
+ body = /* @__PURE__ */ jsx13(StateBlock, { variant: "error", title: errorTitle, description: error, action: errorAction ?? emptyAction, compact: true });
808
+ } else if (empty) {
809
+ body = /* @__PURE__ */ jsx13(StateBlock, { variant: "empty", title: emptyTitle, description: emptyDescription, action: emptyAction, compact: true });
810
+ }
811
+ return /* @__PURE__ */ jsxs10(Stack10, { gap: "lg", children: [
812
+ /* @__PURE__ */ jsx13(Paper2, { withBorder: true, radius: "xl", p: "xl", children: /* @__PURE__ */ jsxs10(Stack10, { gap: "lg", children: [
813
+ /* @__PURE__ */ jsxs10(Group8, { justify: "space-between", align: "flex-start", gap: "md", children: [
814
+ /* @__PURE__ */ jsxs10(Stack10, { gap: "xs", maw: 760, children: [
815
+ eyebrow ? /* @__PURE__ */ jsx13(Text9, { size: "xs", fw: 700, tt: "uppercase", c: "dimmed", style: { letterSpacing: "0.18em" }, children: eyebrow }) : null,
816
+ /* @__PURE__ */ jsx13(Title9, { order: 1, children: title }),
817
+ description ? /* @__PURE__ */ jsx13(Text9, { size: "lg", c: "dimmed", children: description }) : null
818
+ ] }),
819
+ /* @__PURE__ */ jsxs10(Stack10, { align: "flex-end", gap: "xs", children: [
820
+ typeof resultCount === "number" ? /* @__PURE__ */ jsxs10(Badge7, { size: "lg", radius: "xl", variant: "light", color: "violet", children: [
821
+ resultCount,
822
+ " ",
823
+ resultLabel
824
+ ] }) : null,
825
+ primaryControls
826
+ ] })
827
+ ] }),
828
+ scopeOptions.length ? /* @__PURE__ */ jsxs10(Stack10, { gap: "xs", children: [
829
+ /* @__PURE__ */ jsx13(Text9, { size: "sm", fw: 600, c: "dimmed", children: scopeLabel }),
830
+ /* @__PURE__ */ jsx13(Group8, { gap: "xs", wrap: "wrap", children: scopeOptions.map((option) => /* @__PURE__ */ jsx13(
831
+ Button,
832
+ {
833
+ variant: option.active ? "filled" : "default",
834
+ color: option.active ? "violet" : "gray",
835
+ radius: "xl",
836
+ size: "sm",
837
+ onClick: option.onSelect,
838
+ children: option.label
839
+ },
840
+ option.id
841
+ )) })
842
+ ] }) : null,
843
+ locationControls ? /* @__PURE__ */ jsxs10(Stack10, { gap: "xs", children: [
844
+ /* @__PURE__ */ jsx13(Text9, { size: "sm", fw: 600, c: "dimmed", children: "Location" }),
845
+ locationControls
846
+ ] }) : null,
847
+ toolbar || sortControl ? /* @__PURE__ */ jsxs10(SimpleGrid2, { cols: { base: 1, lg: sortControl ? 2 : 1 }, spacing: "md", children: [
848
+ toolbar ? /* @__PURE__ */ jsx13(
849
+ DataToolbar,
850
+ {
851
+ ...toolbar,
852
+ activeFilters: toolbarFilters.length ? toolbarFilters : toolbar.fallbackActiveFilters
853
+ }
854
+ ) : /* @__PURE__ */ jsx13(Box3, {}),
855
+ sortControl ? /* @__PURE__ */ jsxs10(Stack10, { gap: "xs", align: "stretch", children: [
856
+ /* @__PURE__ */ jsx13(Text9, { size: "sm", fw: 600, c: "dimmed", children: "Sort" }),
857
+ sortControl
858
+ ] }) : null
859
+ ] }) : null,
860
+ mobileFilters ? /* @__PURE__ */ jsxs10(Stack10, { hiddenFrom: "lg", gap: "xs", children: [
861
+ /* @__PURE__ */ jsx13(Text9, { size: "sm", fw: 600, c: "dimmed", children: "Filters" }),
862
+ mobileFilters
863
+ ] }) : null,
864
+ filterDrawer ? /* @__PURE__ */ jsx13(Box3, { hiddenFrom: "lg", children: filterDrawer }) : null,
865
+ activeFilters.length ? /* @__PURE__ */ jsx13(Group8, { gap: "xs", wrap: "wrap", children: activeFilters.map((filter) => /* @__PURE__ */ jsx13(
866
+ Badge7,
867
+ {
868
+ variant: "light",
869
+ color: "violet",
870
+ rightSection: filter.onRemove ? "\xD7" : void 0,
871
+ style: filter.onRemove ? { cursor: "pointer" } : void 0,
872
+ onClick: filter.onRemove,
873
+ children: filter.label
874
+ },
875
+ filter.id
876
+ )) }) : null
877
+ ] }) }),
878
+ body
879
+ ] });
880
+ }
881
+
882
+ // src/AccentPanel.tsx
883
+ import { Badge as Badge8, Box as Box4, Group as Group9, Paper as Paper3, Stack as Stack11, Text as Text10, Title as Title10 } from "@mantine/core";
884
+ import { jsx as jsx14, jsxs as jsxs11 } from "react/jsx-runtime";
885
+ var toneStyles = {
886
+ gray: {
887
+ bg: "light-dark(var(--mantine-color-gray-0), color-mix(in srgb, var(--mantine-color-gray-7) 88%, black))",
888
+ border: "light-dark(var(--mantine-color-gray-2), color-mix(in srgb, var(--mantine-color-gray-4) 70%, transparent))",
889
+ color: "light-dark(var(--mantine-color-gray-9), var(--mantine-color-gray-0))"
890
+ },
891
+ violet: {
892
+ bg: "light-dark(var(--mantine-color-violet-0), color-mix(in srgb, var(--mantine-color-violet-9) 70%, black))",
893
+ border: "light-dark(var(--mantine-color-violet-2), color-mix(in srgb, var(--mantine-color-violet-4) 75%, transparent))",
894
+ color: "light-dark(var(--mantine-color-violet-9), var(--mantine-color-violet-0))"
895
+ },
896
+ green: {
897
+ bg: "light-dark(var(--mantine-color-green-0), color-mix(in srgb, var(--mantine-color-green-9) 72%, black))",
898
+ border: "light-dark(var(--mantine-color-green-2), color-mix(in srgb, var(--mantine-color-green-4) 78%, transparent))",
899
+ color: "light-dark(var(--mantine-color-green-9), var(--mantine-color-green-0))"
900
+ },
901
+ red: {
902
+ bg: "light-dark(var(--mantine-color-red-0), color-mix(in srgb, var(--mantine-color-red-9) 72%, black))",
903
+ border: "light-dark(var(--mantine-color-red-2), color-mix(in srgb, var(--mantine-color-red-4) 78%, transparent))",
904
+ color: "light-dark(var(--mantine-color-red-9), var(--mantine-color-red-0))"
905
+ },
906
+ amber: {
907
+ bg: "light-dark(var(--mantine-color-yellow-0), color-mix(in srgb, var(--mantine-color-yellow-8) 78%, black))",
908
+ border: "light-dark(var(--mantine-color-yellow-3), color-mix(in srgb, var(--mantine-color-yellow-5) 70%, transparent))",
909
+ color: "light-dark(var(--mantine-color-yellow-9), var(--mantine-color-yellow-0))"
910
+ },
911
+ blue: {
912
+ bg: "light-dark(var(--mantine-color-blue-0), color-mix(in srgb, var(--mantine-color-blue-9) 74%, black))",
913
+ border: "light-dark(var(--mantine-color-blue-2), color-mix(in srgb, var(--mantine-color-blue-4) 75%, transparent))",
914
+ color: "light-dark(var(--mantine-color-blue-9), var(--mantine-color-blue-0))"
915
+ }
916
+ };
917
+ function resolveAccentPanelStyles(tone = "violet", variant = "subtle") {
918
+ const token = toneStyles[tone];
919
+ if (variant === "soft-outline") {
920
+ return {
921
+ backgroundColor: "light-dark(var(--mantine-color-body), color-mix(in srgb, var(--mantine-color-dark-7) 92%, black))",
922
+ border: `1px solid ${token.border}`,
923
+ color: token.color
924
+ };
925
+ }
926
+ return {
927
+ backgroundColor: token.bg,
928
+ border: `1px solid ${token.border}`,
929
+ color: token.color
930
+ };
931
+ }
932
+ function AccentPanel({
933
+ tone = "violet",
934
+ variant = "subtle",
935
+ title,
936
+ badge,
937
+ children
938
+ }) {
939
+ const styles = resolveAccentPanelStyles(tone, variant);
940
+ return /* @__PURE__ */ jsx14(Paper3, { withBorder: true, radius: "lg", p: "lg", style: styles, children: /* @__PURE__ */ jsxs11(Stack11, { gap: "sm", children: [
941
+ title || badge ? /* @__PURE__ */ jsxs11(Group9, { justify: "space-between", align: "flex-start", gap: "sm", wrap: "wrap", children: [
942
+ title ? /* @__PURE__ */ jsx14(Title10, { order: 4, c: "inherit", children: title }) : /* @__PURE__ */ jsx14(Box4, {}),
943
+ badge ? typeof badge === "string" ? /* @__PURE__ */ jsx14(Badge8, { color: tone === "amber" ? "yellow" : tone, variant: "filled", children: badge }) : badge : null
944
+ ] }) : null,
945
+ typeof children === "string" ? /* @__PURE__ */ jsx14(Text10, { c: "inherit", children }) : /* @__PURE__ */ jsx14(Box4, { c: "inherit", children })
946
+ ] }) });
947
+ }
948
+
949
+ // src/PublicNav.tsx
950
+ import { Anchor as Anchor2, Group as Group10 } from "@mantine/core";
951
+ import { jsx as jsx15 } from "react/jsx-runtime";
952
+ function PublicNav({ items, activeId, renderLink }) {
953
+ return /* @__PURE__ */ jsx15(Group10, { component: "nav", "aria-label": "Primary", gap: "lg", wrap: "nowrap", children: items.map((item) => {
954
+ const active = item.id === activeId;
955
+ if (renderLink) {
956
+ return /* @__PURE__ */ jsx15("span", { children: renderLink(item, active) }, item.id);
957
+ }
958
+ return /* @__PURE__ */ jsx15(
959
+ Anchor2,
960
+ {
961
+ href: item.href,
962
+ "aria-current": active ? "page" : void 0,
963
+ c: active ? "var(--mantine-color-text)" : "dimmed",
964
+ fw: active ? 700 : 500,
965
+ underline: "never",
966
+ target: item.external ? "_blank" : void 0,
967
+ rel: item.external ? "noreferrer" : void 0,
968
+ children: item.label
969
+ },
970
+ item.id
971
+ );
972
+ }) });
973
+ }
974
+
975
+ // src/PublicShell.tsx
976
+ import { AppShell, Box as Box5, Burger, Container, Group as Group11, Stack as Stack12, Text as Text11 } from "@mantine/core";
977
+ import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
978
+ function InlineMobileNavigation({
979
+ mobileNavigation,
980
+ className,
981
+ mode
982
+ }) {
983
+ return /* @__PURE__ */ jsxs12(Box5, { component: "details", hiddenFrom: "sm", className, children: [
984
+ /* @__PURE__ */ jsxs12(
985
+ Box5,
986
+ {
987
+ component: "summary",
988
+ "aria-label": mode === "drawer" ? "Open site navigation drawer" : "Open site navigation",
989
+ style: {
990
+ listStyle: "none",
991
+ cursor: "pointer",
992
+ display: "flex",
993
+ alignItems: "center",
994
+ gap: "0.5rem"
995
+ },
996
+ children: [
997
+ /* @__PURE__ */ jsx16(Burger, { opened: false, "aria-hidden": true }),
998
+ /* @__PURE__ */ jsx16(Text11, { size: "sm", fw: 600, children: "Menu" })
999
+ ]
1000
+ }
1001
+ ),
1002
+ /* @__PURE__ */ jsx16(
1003
+ Box5,
1004
+ {
1005
+ mt: "sm",
1006
+ p: "sm",
1007
+ style: {
1008
+ borderRadius: "var(--mantine-radius-lg)",
1009
+ border: "1px solid var(--mantine-color-default-border)",
1010
+ background: mode === "drawer" ? "light-dark(var(--mantine-color-white), color-mix(in srgb, var(--mantine-color-dark-7) 92%, black))" : "var(--mantine-color-body)"
1011
+ },
1012
+ children: /* @__PURE__ */ jsx16(Stack12, { gap: "sm", children: mobileNavigation })
1013
+ }
1014
+ )
1015
+ ] });
1016
+ }
1017
+ function PublicShell({
1018
+ brand,
1019
+ navItems,
1020
+ activeNavId,
1021
+ navigation,
1022
+ actions,
1023
+ footer,
1024
+ mobileNavigation,
1025
+ children,
1026
+ headerBordered = true,
1027
+ compact = false,
1028
+ maxContentWidth,
1029
+ headerVariant = "default",
1030
+ mobileNavigationMode = "sheet",
1031
+ classNames
1032
+ }) {
1033
+ const resolvedNavigation = navigation ?? (navItems ? /* @__PURE__ */ jsx16(PublicNav, { items: navItems, activeId: activeNavId }) : null);
1034
+ const containerSize = maxContentWidth ?? (compact ? "md" : "lg");
1035
+ const headerHeight = headerVariant === "compact" ? 64 : headerVariant === "branded-quiet" ? 88 : 72;
1036
+ const mainPadding = headerVariant === "compact" ? "lg" : "xl";
1037
+ const usesInlineMobileNavigation = Boolean(mobileNavigation) && mobileNavigationMode !== "sheet";
1038
+ const usesSheetMobileNavigation = Boolean(mobileNavigation) && mobileNavigationMode === "sheet";
1039
+ return /* @__PURE__ */ jsxs12(
1040
+ AppShell,
1041
+ {
1042
+ className: classNames?.root,
1043
+ header: { height: headerHeight },
1044
+ footer: usesSheetMobileNavigation ? { height: 68 } : void 0,
1045
+ padding: 0,
1046
+ children: [
1047
+ /* @__PURE__ */ jsx16(AppShell.Header, { withBorder: headerBordered, className: classNames?.header, "data-header-variant": headerVariant, children: /* @__PURE__ */ jsx16(Container, { size: containerSize, h: "100%", py: headerVariant === "branded-quiet" ? "sm" : 0, children: /* @__PURE__ */ jsxs12(
1048
+ Group11,
1049
+ {
1050
+ h: "100%",
1051
+ justify: "space-between",
1052
+ wrap: "nowrap",
1053
+ gap: headerVariant === "compact" ? "sm" : "lg",
1054
+ children: [
1055
+ /* @__PURE__ */ jsxs12(Group11, { wrap: "nowrap", gap: headerVariant === "compact" ? "xs" : "sm", className: classNames?.brand, children: [
1056
+ usesInlineMobileNavigation ? /* @__PURE__ */ jsx16(
1057
+ InlineMobileNavigation,
1058
+ {
1059
+ mobileNavigation,
1060
+ className: classNames?.mobileNavigation,
1061
+ mode: mobileNavigationMode
1062
+ }
1063
+ ) : null,
1064
+ /* @__PURE__ */ jsx16(Box5, { children: brand })
1065
+ ] }),
1066
+ /* @__PURE__ */ jsx16(Group11, { visibleFrom: "sm", gap: headerVariant === "compact" ? "md" : "lg", className: classNames?.navigation, children: resolvedNavigation }),
1067
+ /* @__PURE__ */ jsx16(Group11, { gap: "sm", className: classNames?.actions, children: actions })
1068
+ ]
1069
+ }
1070
+ ) }) }),
1071
+ usesSheetMobileNavigation ? /* @__PURE__ */ jsx16(AppShell.Footer, { withBorder: true, children: /* @__PURE__ */ jsx16(Container, { size: containerSize, h: "100%", children: /* @__PURE__ */ jsx16(Group11, { h: "100%", justify: "space-around", wrap: "nowrap", children: mobileNavigation }) }) }) : null,
1072
+ /* @__PURE__ */ jsxs12(AppShell.Main, { children: [
1073
+ /* @__PURE__ */ jsx16(Container, { size: containerSize, py: mainPadding, className: classNames?.content, children: /* @__PURE__ */ jsx16(Stack12, { gap: "xl", children }) }),
1074
+ footer ? /* @__PURE__ */ jsx16(Box5, { component: typeof footer === "string" ? "footer" : "div", py: "xl", children: /* @__PURE__ */ jsx16(Container, { size: containerSize, children: typeof footer === "string" ? /* @__PURE__ */ jsx16(Text11, { size: "sm", c: "dimmed", children: footer }) : footer }) }) : null
1075
+ ] })
1076
+ ]
1077
+ }
1078
+ );
1079
+ }
1080
+
1081
+ // src/PublicSiteFooter.tsx
1082
+ import { Group as Group12, Stack as Stack13, Text as Text12 } from "@mantine/core";
1083
+ import { jsx as jsx17, jsxs as jsxs13 } from "react/jsx-runtime";
1084
+ function PublicSiteFooter({ children, meta }) {
1085
+ return /* @__PURE__ */ jsxs13(Stack13, { component: "footer", gap: "xs", children: [
1086
+ children ? /* @__PURE__ */ jsx17(Text12, { size: "sm", children }) : null,
1087
+ meta ? /* @__PURE__ */ jsx17(Group12, { gap: "sm", children: /* @__PURE__ */ jsx17(Text12, { size: "xs", c: "dimmed", children: meta }) }) : null
1088
+ ] });
1089
+ }
1090
+
1091
+ // src/PublicBrandFooter.tsx
1092
+ import { Box as Box6, Divider as Divider2, Grid, Group as Group13, Paper as Paper4, Stack as Stack14, Text as Text13, Title as Title11 } from "@mantine/core";
1093
+ import { Fragment as Fragment2, jsx as jsx18, jsxs as jsxs14 } from "react/jsx-runtime";
1094
+ function PublicBrandFooter({
1095
+ media,
1096
+ brandTitle,
1097
+ description,
1098
+ actions,
1099
+ secondary,
1100
+ legal,
1101
+ compact = false,
1102
+ layoutVariant = "default",
1103
+ classNames
1104
+ }) {
1105
+ const mediaSpan = layoutVariant === "immersive-media" ? 5 : 4;
1106
+ const primarySpan = media ? layoutVariant === "balanced-quote" ? 4 : 4 : secondary ? 6 : 12;
1107
+ const secondarySpan = media ? Math.max(3, 12 - mediaSpan - primarySpan) : Math.max(4, 12 - primarySpan);
1108
+ return /* @__PURE__ */ jsx18(
1109
+ Paper4,
1110
+ {
1111
+ component: "footer",
1112
+ withBorder: true,
1113
+ radius: "xl",
1114
+ p: compact ? "lg" : "xl",
1115
+ className: classNames?.root,
1116
+ "data-layout-variant": layoutVariant,
1117
+ children: /* @__PURE__ */ jsxs14(Stack14, { gap: "lg", children: [
1118
+ /* @__PURE__ */ jsxs14(Grid, { gutter: compact ? "lg" : "xl", align: "flex-start", children: [
1119
+ media ? /* @__PURE__ */ jsx18(Grid.Col, { span: { base: 12, md: mediaSpan }, children: /* @__PURE__ */ jsx18(Box6, { className: classNames?.media, children: media }) }) : null,
1120
+ /* @__PURE__ */ jsx18(Grid.Col, { span: { base: 12, md: primarySpan }, children: /* @__PURE__ */ jsxs14(Stack14, { gap: compact ? "xs" : "sm", className: classNames?.primary, children: [
1121
+ brandTitle ? /* @__PURE__ */ jsx18(Title11, { order: 4, children: brandTitle }) : null,
1122
+ description ? /* @__PURE__ */ jsx18(Text13, { c: "dimmed", children: description }) : null,
1123
+ actions ? /* @__PURE__ */ jsx18(Box6, { children: actions }) : null
1124
+ ] }) }),
1125
+ secondary ? /* @__PURE__ */ jsx18(Grid.Col, { span: { base: 12, md: secondarySpan }, children: /* @__PURE__ */ jsx18(Stack14, { gap: compact ? "xs" : "sm", className: classNames?.secondary, children: secondary }) }) : null
1126
+ ] }),
1127
+ legal ? /* @__PURE__ */ jsxs14(Fragment2, { children: [
1128
+ /* @__PURE__ */ jsx18(Divider2, {}),
1129
+ /* @__PURE__ */ jsx18(Group13, { justify: "space-between", gap: "sm", wrap: "wrap", className: classNames?.legal, children: typeof legal === "string" ? /* @__PURE__ */ jsx18(Text13, { size: "sm", c: "dimmed", children: legal }) : legal })
1130
+ ] }) : null
1131
+ ] })
1132
+ }
1133
+ );
1134
+ }
1135
+
1136
+ // src/AuthShell.tsx
1137
+ import { Box as Box7, Card as Card6, Container as Container2, Group as Group14, Stack as Stack15, Text as Text14, Title as Title12 } from "@mantine/core";
1138
+ import { jsx as jsx19, jsxs as jsxs15 } from "react/jsx-runtime";
1139
+ function AuthShell({ title, description, brand, footer, helper, children }) {
1140
+ return /* @__PURE__ */ jsx19(Box7, { py: { base: "xl", md: "4rem" }, children: /* @__PURE__ */ jsx19(Container2, { size: "xs", children: /* @__PURE__ */ jsxs15(Stack15, { gap: "xl", children: [
1141
+ brand ? /* @__PURE__ */ jsx19(Group14, { justify: "center", children: brand }) : null,
1142
+ /* @__PURE__ */ jsx19(Card6, { withBorder: true, radius: "lg", padding: "xl", children: /* @__PURE__ */ jsxs15(Stack15, { gap: "lg", children: [
1143
+ /* @__PURE__ */ jsxs15(Stack15, { gap: "xs", ta: "center", children: [
1144
+ /* @__PURE__ */ jsx19(Title12, { order: 2, children: title }),
1145
+ description ? /* @__PURE__ */ jsx19(Text14, { c: "dimmed", size: "sm", children: description }) : null
1146
+ ] }),
1147
+ children,
1148
+ helper ? /* @__PURE__ */ jsx19(Text14, { size: "sm", c: "dimmed", ta: "center", children: helper }) : null
1149
+ ] }) }),
1150
+ footer ? /* @__PURE__ */ jsx19(Text14, { size: "sm", c: "dimmed", ta: "center", children: footer }) : null
1151
+ ] }) }) });
1152
+ }
1153
+
1154
+ // src/ArticleShell.tsx
1155
+ import { Container as Container3, Group as Group15, Stack as Stack16, Text as Text15, Title as Title13 } from "@mantine/core";
1156
+ import { jsx as jsx20, jsxs as jsxs16 } from "react/jsx-runtime";
1157
+ function ArticleShell({ eyebrow, title, lead, meta, sideRail, children }) {
1158
+ return /* @__PURE__ */ jsx20(Container3, { size: "lg", py: "xl", children: /* @__PURE__ */ jsxs16(Group15, { align: "flex-start", gap: "xl", wrap: "nowrap", children: [
1159
+ /* @__PURE__ */ jsxs16(Stack16, { gap: "lg", maw: 760, flex: 1, children: [
1160
+ /* @__PURE__ */ jsxs16(Stack16, { gap: "sm", children: [
1161
+ eyebrow ? /* @__PURE__ */ jsx20(Text15, { size: "sm", fw: 700, c: "dimmed", tt: "uppercase", children: eyebrow }) : null,
1162
+ /* @__PURE__ */ jsx20(Title13, { order: 1, children: title }),
1163
+ lead ? /* @__PURE__ */ jsx20(Text15, { size: "lg", c: "dimmed", children: lead }) : null,
1164
+ meta ? /* @__PURE__ */ jsx20(Group15, { gap: "md", children: meta }) : null
1165
+ ] }),
1166
+ /* @__PURE__ */ jsx20(Stack16, { gap: "md", children })
1167
+ ] }),
1168
+ sideRail ? /* @__PURE__ */ jsx20(Stack16, { visibleFrom: "lg", gap: "md", w: 240, children: sideRail }) : null
1169
+ ] }) });
1170
+ }
1171
+
1172
+ // src/CtaButtonGroup.tsx
1173
+ import { Group as Group16, Stack as Stack17 } from "@mantine/core";
1174
+ import { jsx as jsx21, jsxs as jsxs17 } from "react/jsx-runtime";
1175
+ function CtaButtonGroup({ primary, secondary, tertiary }) {
1176
+ return /* @__PURE__ */ jsxs17(Stack17, { gap: "sm", children: [
1177
+ /* @__PURE__ */ jsxs17(Group16, { gap: "sm", align: "stretch", children: [
1178
+ /* @__PURE__ */ jsx21("div", { children: primary }),
1179
+ secondary ? /* @__PURE__ */ jsx21("div", { children: secondary }) : null
1180
+ ] }),
1181
+ tertiary ? /* @__PURE__ */ jsx21("div", { children: tertiary }) : null
1182
+ ] });
1183
+ }
1184
+
1185
+ // src/DocsPageShell.tsx
1186
+ import { Anchor as Anchor3, Breadcrumbs, Container as Container4, Group as Group17, Stack as Stack18, Text as Text16, Title as Title14 } from "@mantine/core";
1187
+ import { jsx as jsx22, jsxs as jsxs18 } from "react/jsx-runtime";
1188
+ function DocsPageShell({
1189
+ breadcrumbs = [],
1190
+ title,
1191
+ lead,
1192
+ eyebrow,
1193
+ meta,
1194
+ sideRail,
1195
+ footerNext,
1196
+ children
1197
+ }) {
1198
+ return /* @__PURE__ */ jsx22(Container4, { size: "lg", py: "xl", children: /* @__PURE__ */ jsxs18(Group17, { align: "flex-start", gap: "xl", wrap: "nowrap", children: [
1199
+ /* @__PURE__ */ jsxs18(Stack18, { component: "article", gap: "lg", maw: 760, flex: 1, children: [
1200
+ breadcrumbs.length ? /* @__PURE__ */ jsx22(Breadcrumbs, { children: breadcrumbs.map(
1201
+ (crumb) => crumb.href ? /* @__PURE__ */ jsx22(Anchor3, { href: crumb.href, children: crumb.label }, `${crumb.label}-${crumb.href}`) : /* @__PURE__ */ jsx22(Text16, { children: crumb.label }, crumb.label)
1202
+ ) }) : null,
1203
+ /* @__PURE__ */ jsxs18(Stack18, { gap: "sm", children: [
1204
+ eyebrow ? /* @__PURE__ */ jsx22(Text16, { size: "sm", fw: 700, c: "dimmed", children: eyebrow }) : null,
1205
+ /* @__PURE__ */ jsx22(Title14, { order: 1, children: title }),
1206
+ lead ? /* @__PURE__ */ jsx22(Text16, { size: "lg", c: "dimmed", children: lead }) : null,
1207
+ meta ? /* @__PURE__ */ jsx22(Group17, { gap: "md", children: meta }) : null
1208
+ ] }),
1209
+ /* @__PURE__ */ jsx22(Stack18, { gap: "md", children }),
1210
+ footerNext ? /* @__PURE__ */ jsx22(Anchor3, { href: footerNext.href, fw: 600, children: footerNext.label }) : null
1211
+ ] }),
1212
+ sideRail ? /* @__PURE__ */ jsx22(Stack18, { visibleFrom: "lg", gap: "md", w: 240, children: sideRail }) : null
1213
+ ] }) });
1214
+ }
1215
+
1216
+ // src/EditorialHero.tsx
1217
+ import { Anchor as Anchor4, AspectRatio as AspectRatio3, Box as Box8, Grid as Grid2, Group as Group18, Paper as Paper5, Skeleton as Skeleton2, Stack as Stack19, Text as Text17, ThemeIcon as ThemeIcon5, Title as Title15 } from "@mantine/core";
1218
+ import { jsx as jsx23, jsxs as jsxs19 } from "react/jsx-runtime";
1219
+ function resolveActionVariant(action, index, seenPrimary) {
1220
+ const requested = action.variant ?? (index === 0 ? "primary" : "secondary");
1221
+ if (requested === "primary" && !seenPrimary) {
1222
+ return { variant: "filled", seenPrimary: true };
1223
+ }
1224
+ if (requested === "subtle") {
1225
+ return { variant: "subtle", seenPrimary };
1226
+ }
1227
+ return { variant: "default", seenPrimary };
1228
+ }
1229
+ function HeroAction({ action, variant }) {
1230
+ const content = /* @__PURE__ */ jsx23(
1231
+ Anchor4,
1232
+ {
1233
+ href: action.href,
1234
+ onClick: action.onClick,
1235
+ "aria-disabled": action.disabled || action.loading || void 0,
1236
+ underline: "never",
1237
+ c: variant === "filled" ? "white" : void 0,
1238
+ style: {
1239
+ display: "inline-flex",
1240
+ alignItems: "center",
1241
+ justifyContent: "center",
1242
+ padding: "0.625rem 1rem",
1243
+ borderRadius: "var(--mantine-radius-md)",
1244
+ fontWeight: 600,
1245
+ minHeight: "2.5rem",
1246
+ border: variant === "default" ? "1px solid var(--mantine-color-default-border)" : "1px solid transparent",
1247
+ background: variant === "filled" ? "var(--mantine-color-violet-filled)" : variant === "subtle" ? "transparent" : "var(--mantine-color-default)",
1248
+ opacity: action.disabled ? 0.6 : 1,
1249
+ pointerEvents: action.disabled ? "none" : void 0
1250
+ },
1251
+ children: action.loading ? "Loading\u2026" : action.label
1252
+ }
1253
+ );
1254
+ if (!action.href) {
1255
+ return /* @__PURE__ */ jsx23(
1256
+ Box8,
1257
+ {
1258
+ component: "button",
1259
+ type: "button",
1260
+ onClick: action.onClick,
1261
+ disabled: action.disabled || action.loading,
1262
+ style: {
1263
+ display: "inline-flex",
1264
+ alignItems: "center",
1265
+ justifyContent: "center",
1266
+ padding: "0.625rem 1rem",
1267
+ borderRadius: "var(--mantine-radius-md)",
1268
+ fontWeight: 600,
1269
+ minHeight: "2.5rem",
1270
+ border: variant === "default" ? "1px solid var(--mantine-color-default-border)" : "1px solid transparent",
1271
+ background: variant === "filled" ? "var(--mantine-color-violet-filled)" : variant === "subtle" ? "transparent" : "var(--mantine-color-default)",
1272
+ color: variant === "filled" ? "white" : "inherit",
1273
+ cursor: action.disabled ? "not-allowed" : "pointer",
1274
+ opacity: action.disabled ? 0.6 : 1
1275
+ },
1276
+ children: action.loading ? "Loading\u2026" : action.label
1277
+ }
1278
+ );
1279
+ }
1280
+ return content;
1281
+ }
1282
+ function LoadingHero({ compact }) {
1283
+ return /* @__PURE__ */ jsx23(Paper5, { withBorder: true, radius: "xl", p: compact ? "lg" : "xl", children: /* @__PURE__ */ jsxs19(Grid2, { gutter: compact ? "lg" : "xl", align: "center", children: [
1284
+ /* @__PURE__ */ jsx23(Grid2.Col, { span: { base: 12, md: 6 }, children: /* @__PURE__ */ jsxs19(Stack19, { gap: "md", children: [
1285
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 16, width: 96, radius: "xl" }),
1286
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 48, width: "90%", radius: "md" }),
1287
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 18, width: "100%", radius: "md" }),
1288
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 18, width: "82%", radius: "md" }),
1289
+ /* @__PURE__ */ jsxs19(Group18, { children: [
1290
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 40, width: 140, radius: "md" }),
1291
+ /* @__PURE__ */ jsx23(Skeleton2, { height: 40, width: 140, radius: "md" })
1292
+ ] })
1293
+ ] }) }),
1294
+ /* @__PURE__ */ jsx23(Grid2.Col, { span: { base: 12, md: 6 }, children: /* @__PURE__ */ jsx23(AspectRatio3, { ratio: 16 / 11, children: /* @__PURE__ */ jsx23(Skeleton2, { radius: "lg" }) }) })
1295
+ ] }) });
1296
+ }
1297
+ function MediaFallback() {
1298
+ return /* @__PURE__ */ jsx23(AspectRatio3, { ratio: 16 / 11, children: /* @__PURE__ */ jsx23(
1299
+ ThemeIcon5,
1300
+ {
1301
+ size: "100%",
1302
+ radius: "lg",
1303
+ color: "gray",
1304
+ variant: "light",
1305
+ "aria-label": "Hero media is unavailable",
1306
+ children: /* @__PURE__ */ jsx23(GdsIcons.Gallery, { size: "2.5rem" })
1307
+ }
1308
+ ) });
1309
+ }
1310
+ function MediaFrame({
1311
+ media,
1312
+ mediaAlt,
1313
+ mediaFade,
1314
+ className
1315
+ }) {
1316
+ let overlayBackground = null;
1317
+ if (mediaFade === "background-blend") {
1318
+ overlayBackground = "linear-gradient(135deg, light-dark(rgba(255,255,255,0), rgba(17,24,39,0.08)) 0%, light-dark(rgba(255,255,255,0.42), rgba(17,24,39,0.54)) 100%)";
1319
+ } else if (mediaFade === "background-match") {
1320
+ overlayBackground = "linear-gradient(180deg, rgba(255,255,255,0) 0%, light-dark(rgba(248,250,252,0.75), rgba(17,24,39,0.56)) 100%)";
1321
+ } else if (mediaFade === "mask-soft-edge") {
1322
+ overlayBackground = "linear-gradient(90deg, light-dark(rgba(255,255,255,0.78), rgba(17,24,39,0.68)) 0%, rgba(255,255,255,0.18) 18%, rgba(255,255,255,0) 42%)";
1323
+ } else if (mediaFade === "soft-start") {
1324
+ overlayBackground = "linear-gradient(90deg, light-dark(rgba(255,255,255,0.9), rgba(17,24,39,0.72)) 0%, rgba(255,255,255,0) 28%)";
1325
+ }
1326
+ return /* @__PURE__ */ jsxs19(
1327
+ Box8,
1328
+ {
1329
+ component: "figure",
1330
+ m: 0,
1331
+ className,
1332
+ style: {
1333
+ position: "relative",
1334
+ overflow: "hidden",
1335
+ borderRadius: "var(--mantine-radius-xl)",
1336
+ minHeight: "100%"
1337
+ },
1338
+ "aria-label": mediaAlt,
1339
+ children: [
1340
+ media ?? /* @__PURE__ */ jsx23(MediaFallback, {}),
1341
+ media && overlayBackground ? /* @__PURE__ */ jsx23(
1342
+ Box8,
1343
+ {
1344
+ "aria-hidden": true,
1345
+ style: {
1346
+ position: "absolute",
1347
+ inset: 0,
1348
+ pointerEvents: "none",
1349
+ background: overlayBackground
1350
+ }
1351
+ }
1352
+ ) : null
1353
+ ]
1354
+ }
1355
+ );
1356
+ }
1357
+ function EditorialHero({
1358
+ eyebrow,
1359
+ title,
1360
+ description,
1361
+ actions = [],
1362
+ meta = [],
1363
+ media,
1364
+ mediaAlt,
1365
+ mediaPosition = "right",
1366
+ mediaFade = "soft-start",
1367
+ align = "start",
1368
+ compact = false,
1369
+ loading = false,
1370
+ error,
1371
+ surfaceVariant = "default",
1372
+ classNames
1373
+ }) {
1374
+ if (loading) {
1375
+ return /* @__PURE__ */ jsx23(LoadingHero, { compact });
1376
+ }
1377
+ const stackAlign = align === "center" ? "center" : "flex-start";
1378
+ const textAlign = align === "center" ? "center" : "left";
1379
+ let seenPrimary = false;
1380
+ const renderedActions = actions.slice(0, 3).map((action, index) => {
1381
+ const resolved = resolveActionVariant(action, index, seenPrimary);
1382
+ seenPrimary = resolved.seenPrimary;
1383
+ return /* @__PURE__ */ jsx23(HeroAction, { action, variant: resolved.variant }, `${action.label}-${index}`);
1384
+ });
1385
+ const textSlot = /* @__PURE__ */ jsxs19(Stack19, { gap: compact ? "md" : "lg", justify: "center", h: "100%", className: classNames?.content, children: [
1386
+ /* @__PURE__ */ jsxs19(Stack19, { gap: "sm", align: stackAlign, children: [
1387
+ eyebrow ? /* @__PURE__ */ jsx23(Text17, { size: "sm", fw: 700, c: "dimmed", ta: textAlign, children: eyebrow }) : null,
1388
+ /* @__PURE__ */ jsx23(Title15, { order: 1, maw: 760, ta: textAlign, children: title }),
1389
+ description ? /* @__PURE__ */ jsx23(Text17, { size: compact ? "md" : "lg", c: "dimmed", maw: 720, ta: textAlign, children: description }) : null
1390
+ ] }),
1391
+ renderedActions.length ? /* @__PURE__ */ jsx23(Box8, { className: classNames?.actions, children: /* @__PURE__ */ jsx23(
1392
+ CtaButtonGroup,
1393
+ {
1394
+ primary: renderedActions[0],
1395
+ secondary: renderedActions[1],
1396
+ tertiary: renderedActions[2]
1397
+ }
1398
+ ) }) : null,
1399
+ meta.length ? /* @__PURE__ */ jsx23(Group18, { gap: "sm", wrap: "wrap", "aria-label": "Supporting details", className: classNames?.meta, children: meta.map((item) => /* @__PURE__ */ jsxs19(
1400
+ Group18,
1401
+ {
1402
+ gap: 6,
1403
+ px: "sm",
1404
+ py: 6,
1405
+ style: {
1406
+ borderRadius: "var(--mantine-radius-xl)",
1407
+ background: "light-dark(var(--mantine-color-gray-0), color-mix(in srgb, var(--mantine-color-dark-7) 92%, black))"
1408
+ },
1409
+ children: [
1410
+ item.icon,
1411
+ /* @__PURE__ */ jsx23(Text17, { size: "sm", c: "dimmed", children: item.label })
1412
+ ]
1413
+ },
1414
+ item.id
1415
+ )) }) : null
1416
+ ] });
1417
+ const mediaSlot = error ? /* @__PURE__ */ jsx23(AccentPanel, { tone: "red", variant: "soft-outline", title: "Media unavailable", children: error }) : /* @__PURE__ */ jsx23(MediaFrame, { media, mediaAlt, mediaFade, className: classNames?.media });
1418
+ const textCol = /* @__PURE__ */ jsx23(Grid2.Col, { span: { base: 12, md: 6 }, order: { base: 1, md: mediaPosition === "left" ? 2 : 1 }, children: textSlot });
1419
+ const mediaCol = /* @__PURE__ */ jsx23(Grid2.Col, { span: { base: 12, md: 6 }, order: { base: 2, md: mediaPosition === "left" ? 1 : 2 }, children: mediaSlot });
1420
+ return /* @__PURE__ */ jsx23(
1421
+ Paper5,
1422
+ {
1423
+ component: "section",
1424
+ withBorder: true,
1425
+ radius: "xl",
1426
+ p: compact ? "lg" : "xl",
1427
+ className: classNames?.root,
1428
+ style: surfaceVariant === "flat-public" ? { boxShadow: "none" } : void 0,
1429
+ children: /* @__PURE__ */ jsxs19(Grid2, { gutter: compact ? "lg" : "xl", align: "center", children: [
1430
+ textCol,
1431
+ mediaCol
1432
+ ] })
1433
+ }
1434
+ );
1435
+ }
1436
+
1437
+ // src/FeatureBand.tsx
1438
+ import { Box as Box9, Group as Group19, Paper as Paper6, SimpleGrid as SimpleGrid3, Skeleton as Skeleton3, Stack as Stack20, Text as Text18, ThemeIcon as ThemeIcon6, Title as Title16 } from "@mantine/core";
1439
+ import { Fragment as Fragment3, jsx as jsx24, jsxs as jsxs20 } from "react/jsx-runtime";
1440
+ function FeatureBandSkeleton({
1441
+ columns = 3,
1442
+ bordered = true,
1443
+ variant = "default"
1444
+ }) {
1445
+ return /* @__PURE__ */ jsx24(SimpleGrid3, { cols: { base: 1, sm: Math.min(columns, 2), lg: columns }, spacing: "lg", children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ jsx24(Paper6, { withBorder: bordered, radius: "lg", p: variant === "compact" ? "md" : "lg", children: /* @__PURE__ */ jsxs20(Stack20, { gap: "md", children: [
1446
+ /* @__PURE__ */ jsx24(Skeleton3, { height: variant === "process" ? 28 : 42, width: variant === "process" ? 72 : 42, radius: "xl" }),
1447
+ /* @__PURE__ */ jsxs20(Stack20, { gap: "xs", children: [
1448
+ /* @__PURE__ */ jsx24(Skeleton3, { height: 20, width: "75%", radius: "md" }),
1449
+ /* @__PURE__ */ jsx24(Skeleton3, { height: 14, width: "100%", radius: "md" }),
1450
+ /* @__PURE__ */ jsx24(Skeleton3, { height: 14, width: "82%", radius: "md" })
1451
+ ] })
1452
+ ] }) }, index)) });
1453
+ }
1454
+ function FeatureBand({
1455
+ items,
1456
+ columns = 3,
1457
+ bordered = true,
1458
+ loading = false,
1459
+ emptyState,
1460
+ variant = "default"
1461
+ }) {
1462
+ if (loading) {
1463
+ return /* @__PURE__ */ jsx24(FeatureBandSkeleton, { columns, bordered, variant });
1464
+ }
1465
+ if (!items.length) {
1466
+ return emptyState ? /* @__PURE__ */ jsx24(Fragment3, { children: emptyState }) : /* @__PURE__ */ jsx24(
1467
+ EmptyState,
1468
+ {
1469
+ title: "No supporting details available",
1470
+ description: "Add shared feature-band items when this public surface needs trust, service, or location context."
1471
+ }
1472
+ );
1473
+ }
1474
+ return /* @__PURE__ */ jsx24(Box9, { component: "section", "aria-label": "Supporting features", children: /* @__PURE__ */ jsx24(SimpleGrid3, { cols: { base: 1, sm: Math.min(columns, 2), lg: columns }, spacing: "lg", children: items.map((item, index) => /* @__PURE__ */ jsx24(Paper6, { withBorder: bordered, radius: "lg", p: variant === "compact" ? "md" : "lg", children: /* @__PURE__ */ jsxs20(Stack20, { gap: "md", children: [
1475
+ variant === "process" ? /* @__PURE__ */ jsx24(Group19, { children: /* @__PURE__ */ jsx24(
1476
+ Text18,
1477
+ {
1478
+ fw: 800,
1479
+ size: "sm",
1480
+ px: "sm",
1481
+ py: 6,
1482
+ style: {
1483
+ borderRadius: "999px",
1484
+ background: "var(--mantine-color-violet-light)"
1485
+ },
1486
+ children: item.stepLabel ?? `Step ${index + 1}`
1487
+ }
1488
+ ) }) : item.media ? item.media : item.icon ? /* @__PURE__ */ jsx24(Group19, { children: /* @__PURE__ */ jsx24(ThemeIcon6, { size: "xl", radius: "xl", variant: "light", color: "violet", children: item.icon }) }) : /* @__PURE__ */ jsx24(Group19, { children: /* @__PURE__ */ jsx24(ThemeIcon6, { size: "xl", radius: "xl", variant: "light", color: "gray", "aria-hidden": true, children: /* @__PURE__ */ jsx24(GdsIcons.Info, { size: "1.25rem" }) }) }),
1489
+ /* @__PURE__ */ jsxs20(Stack20, { gap: "xs", children: [
1490
+ /* @__PURE__ */ jsx24(Title16, { order: 4, children: item.title }),
1491
+ item.description ? /* @__PURE__ */ jsx24(Text18, { c: "dimmed", children: item.description }) : null,
1492
+ item.meta ? /* @__PURE__ */ jsx24(Text18, { size: "sm", c: "dimmed", children: item.meta }) : null
1493
+ ] })
1494
+ ] }) }, item.id)) }) });
1495
+ }
1496
+
1497
+ // src/FormField.tsx
1498
+ import { Box as Box10, Stack as Stack21, Text as Text19 } from "@mantine/core";
1499
+ import { jsx as jsx25, jsxs as jsxs21 } from "react/jsx-runtime";
1500
+ function FormField({ label, description, error, children }) {
1501
+ return /* @__PURE__ */ jsx25(Box10, { component: "label", children: /* @__PURE__ */ jsxs21(Stack21, { gap: 4, children: [
1502
+ typeof label === "string" ? /* @__PURE__ */ jsx25(Text19, { size: "xs", fw: 600, c: "dimmed", children: label }) : label,
1503
+ description ? typeof description === "string" ? /* @__PURE__ */ jsx25(Text19, { size: "xs", c: "dimmed", children: description }) : description : null,
1504
+ children,
1505
+ error ? typeof error === "string" ? /* @__PURE__ */ jsx25(Text19, { size: "xs", c: "red.7", children: error }) : error : null
1506
+ ] }) });
1507
+ }
1508
+
1509
+ // src/MediaField.tsx
1510
+ import { Badge as Badge9, Button as Button2, Divider as Divider3, Group as Group20, Paper as Paper7, Stack as Stack22, Text as Text20 } from "@mantine/core";
1511
+ import { Fragment as Fragment4, jsx as jsx26, jsxs as jsxs22 } from "react/jsx-runtime";
1512
+ var stateLabels = {
1513
+ empty: { label: "Empty", color: "gray" },
1514
+ selected: { label: "Selected", color: "blue" },
1515
+ saved: { label: "Saved", color: "teal" },
1516
+ invalid: { label: "Needs attention", color: "red" },
1517
+ uploading: { label: "Uploading", color: "violet" }
1518
+ };
1519
+ function MediaField({
1520
+ label,
1521
+ description,
1522
+ value,
1523
+ preview,
1524
+ uploadControl,
1525
+ urlInput,
1526
+ helpText,
1527
+ policyText,
1528
+ error,
1529
+ retryAction,
1530
+ onRemove,
1531
+ onReset,
1532
+ removeAction,
1533
+ resetAction,
1534
+ statusAction,
1535
+ state = "empty",
1536
+ mode = "stacked"
1537
+ }) {
1538
+ const stateBadge = stateLabels[state];
1539
+ const resolvedRemoveAction = removeAction ?? (onRemove ? /* @__PURE__ */ jsx26(Button2, { type: "button", variant: "light", color: "red", onClick: onRemove, children: "Remove" }) : null);
1540
+ const resolvedResetAction = resetAction ?? (onReset ? /* @__PURE__ */ jsx26(Button2, { type: "button", variant: "default", onClick: onReset, children: "Reset" }) : null);
1541
+ return /* @__PURE__ */ jsx26(
1542
+ FormField,
1543
+ {
1544
+ label,
1545
+ description,
1546
+ error,
1547
+ children: /* @__PURE__ */ jsx26(Paper7, { withBorder: true, radius: "xl", p: "lg", children: /* @__PURE__ */ jsxs22(Stack22, { gap: "md", children: [
1548
+ /* @__PURE__ */ jsx26(Group20, { justify: "flex-end", align: "center", gap: "sm", children: /* @__PURE__ */ jsxs22(Group20, { gap: "xs", justify: "flex-end", children: [
1549
+ /* @__PURE__ */ jsx26(Badge9, { variant: "light", color: stateBadge.color, children: stateBadge.label }),
1550
+ statusAction
1551
+ ] }) }),
1552
+ preview ? preview : null,
1553
+ uploadControl || urlInput ? /* @__PURE__ */ jsxs22(Fragment4, { children: [
1554
+ /* @__PURE__ */ jsx26(Divider3, {}),
1555
+ /* @__PURE__ */ jsxs22(Stack22, { gap: "sm", style: mode === "split" ? { display: "grid", gridTemplateColumns: "repeat(auto-fit, minmax(220px, 1fr))" } : void 0, children: [
1556
+ uploadControl,
1557
+ urlInput
1558
+ ] })
1559
+ ] }) : null,
1560
+ value ? /* @__PURE__ */ jsx26(Text20, { size: "sm", c: "dimmed", style: { wordBreak: "break-all" }, children: value }) : null,
1561
+ helpText ? /* @__PURE__ */ jsx26(Text20, { size: "sm", c: "dimmed", children: helpText }) : null,
1562
+ policyText ? /* @__PURE__ */ jsx26(Text20, { size: "sm", c: error ? "red.7" : "dimmed", children: policyText }) : null,
1563
+ typeof error !== "string" && error ? error : null,
1564
+ resolvedRemoveAction || resolvedResetAction ? /* @__PURE__ */ jsxs22(Group20, { gap: "sm", children: [
1565
+ resolvedResetAction,
1566
+ retryAction,
1567
+ resolvedRemoveAction
1568
+ ] }) : null
1569
+ ] }) })
1570
+ }
1571
+ );
1572
+ }
1573
+
1574
+ // src/MediaCard.tsx
1575
+ import { ActionIcon as ActionIcon2, Badge as Badge10, Card as Card7, Group as Group21, Stack as Stack23, Text as Text21, Title as Title17 } from "@mantine/core";
1576
+ import { jsx as jsx27, jsxs as jsxs23 } from "react/jsx-runtime";
1577
+ function MediaCard({ title, image, description, status, overlay, actions = [] }) {
1578
+ const EyeIcon = GdsIcons.Eye;
1579
+ return /* @__PURE__ */ jsxs23(Card7, { withBorder: true, radius: "lg", padding: "md", children: [
1580
+ /* @__PURE__ */ jsxs23(Card7.Section, { pos: "relative", children: [
1581
+ image,
1582
+ overlay ? /* @__PURE__ */ jsx27("div", { style: { position: "absolute", inset: 12, display: "flex", justifyContent: "flex-end", alignItems: "flex-start" }, children: overlay }) : null
1583
+ ] }),
1584
+ /* @__PURE__ */ jsxs23(Stack23, { gap: "sm", mt: "md", children: [
1585
+ /* @__PURE__ */ jsxs23(Group21, { justify: "space-between", align: "flex-start", children: [
1586
+ /* @__PURE__ */ jsxs23(Stack23, { gap: 4, children: [
1587
+ /* @__PURE__ */ jsx27(Title17, { order: 4, children: title }),
1588
+ description ? /* @__PURE__ */ jsx27(Text21, { size: "sm", c: "dimmed", lineClamp: 2, children: description }) : null
1589
+ ] }),
1590
+ status ? /* @__PURE__ */ jsx27(Badge10, { variant: "light", children: status }) : null
1591
+ ] }),
1592
+ actions.length ? /* @__PURE__ */ jsx27(Group21, { justify: "flex-end", gap: "xs", children: actions.map((action) => /* @__PURE__ */ jsx27(ActionIcon2, { variant: "light", "aria-label": action.label, onClick: action.onClick, children: /* @__PURE__ */ jsx27(EyeIcon, { size: "1rem" }) }, action.label)) }) : null
1593
+ ] })
1594
+ ] });
1595
+ }
1596
+
1597
+ // src/AccessSummary.tsx
1598
+ import { Badge as Badge11, Card as Card8, Group as Group22, Stack as Stack24, Text as Text22, Title as Title18 } from "@mantine/core";
1599
+ import { jsx as jsx28, jsxs as jsxs24 } from "react/jsx-runtime";
1600
+ function AccessSummary({ title, roles, scope, blocked = false, description }) {
1601
+ return /* @__PURE__ */ jsx28(Card8, { withBorder: true, radius: "lg", padding: "lg", children: /* @__PURE__ */ jsxs24(Stack24, { gap: "sm", children: [
1602
+ /* @__PURE__ */ jsxs24(Group22, { justify: "space-between", align: "center", children: [
1603
+ /* @__PURE__ */ jsx28(Title18, { order: 4, children: title }),
1604
+ /* @__PURE__ */ jsx28(Badge11, { color: blocked ? "red" : "teal", variant: "light", children: blocked ? "Blocked" : "Allowed" })
1605
+ ] }),
1606
+ /* @__PURE__ */ jsx28(Group22, { gap: "xs", children: roles.map((role) => /* @__PURE__ */ jsx28(Badge11, { variant: "outline", children: role }, role)) }),
1607
+ scope ? /* @__PURE__ */ jsxs24(Text22, { size: "sm", c: "dimmed", children: [
1608
+ "Scope: ",
1609
+ scope
1610
+ ] }) : null,
1611
+ description ? /* @__PURE__ */ jsx28(Text22, { size: "sm", children: description }) : null
1612
+ ] }) });
1613
+ }
1614
+
1615
+ // src/PageHeader.tsx
1616
+ import { Box as Box11, Group as Group23, Stack as Stack25, Text as Text23, Title as Title19 } from "@mantine/core";
1617
+ import { jsx as jsx29, jsxs as jsxs25 } from "react/jsx-runtime";
1618
+ function PageHeader({
1619
+ title,
1620
+ description,
1621
+ eyebrow,
1622
+ actions,
1623
+ eyebrowVariant = "neutral"
1624
+ }) {
1625
+ const eyebrowProps = eyebrowVariant === "ornamental" ? { tt: "uppercase", style: { letterSpacing: "0.12em" } } : {};
1626
+ return /* @__PURE__ */ jsxs25(Group23, { justify: "space-between", align: "flex-start", gap: "lg", wrap: "wrap", children: [
1627
+ /* @__PURE__ */ jsxs25(Stack25, { gap: "xs", children: [
1628
+ eyebrow && /* @__PURE__ */ jsx29(Text23, { size: "xs", fw: 700, c: "dimmed", ...eyebrowProps, children: eyebrow }),
1629
+ /* @__PURE__ */ jsx29(Title19, { order: 1, children: title }),
1630
+ description && /* @__PURE__ */ jsx29(Text23, { c: "dimmed", maw: 720, children: description })
1631
+ ] }),
1632
+ actions ? /* @__PURE__ */ jsx29(Box11, { children: actions }) : null
1633
+ ] });
1634
+ }
1635
+
1636
+ // src/FilterDrawer.tsx
1637
+ import { Drawer, Group as Group24, Stack as Stack26, Text as Text24 } from "@mantine/core";
1638
+ import { jsx as jsx30, jsxs as jsxs26 } from "react/jsx-runtime";
1639
+ function FilterDrawer({
1640
+ opened,
1641
+ onClose,
1642
+ title,
1643
+ description,
1644
+ children,
1645
+ mode = "side",
1646
+ applyAction,
1647
+ resetAction,
1648
+ closeAction,
1649
+ primaryAction,
1650
+ secondaryAction
1651
+ }) {
1652
+ const resolvedPrimaryAction = applyAction ?? primaryAction;
1653
+ const resolvedSecondaryAction = resetAction ?? secondaryAction;
1654
+ return /* @__PURE__ */ jsx30(
1655
+ Drawer,
1656
+ {
1657
+ opened,
1658
+ onClose,
1659
+ title,
1660
+ position: mode === "bottom-sheet" ? "bottom" : "right",
1661
+ size: mode === "bottom-sheet" ? "auto" : "md",
1662
+ radius: mode === "bottom-sheet" ? "xl" : void 0,
1663
+ children: /* @__PURE__ */ jsxs26(Stack26, { gap: "md", children: [
1664
+ description ? /* @__PURE__ */ jsx30(Text24, { size: "sm", c: "dimmed", children: description }) : null,
1665
+ children,
1666
+ resolvedPrimaryAction || resolvedSecondaryAction || closeAction ? /* @__PURE__ */ jsxs26(Group24, { justify: "space-between", mt: "md", children: [
1667
+ /* @__PURE__ */ jsxs26(Group24, { gap: "sm", children: [
1668
+ closeAction,
1669
+ resolvedSecondaryAction
1670
+ ] }),
1671
+ resolvedPrimaryAction
1672
+ ] }) : null
1673
+ ] })
1674
+ }
1675
+ );
1676
+ }
1677
+
1678
+ // src/PlaceholderPanel.tsx
1679
+ import { Badge as Badge12, Card as Card9, Stack as Stack27, Text as Text25, Title as Title20 } from "@mantine/core";
1680
+ import { Fragment as Fragment5, jsx as jsx31, jsxs as jsxs27 } from "react/jsx-runtime";
1681
+ function PlaceholderPanel({
1682
+ title,
1683
+ description,
1684
+ badge,
1685
+ footer,
1686
+ children,
1687
+ mode
1688
+ }) {
1689
+ if (mode === "live" && children) {
1690
+ return /* @__PURE__ */ jsx31(Fragment5, { children });
1691
+ }
1692
+ return /* @__PURE__ */ jsx31(Card9, { children: /* @__PURE__ */ jsxs27(Stack27, { gap: "md", children: [
1693
+ badge ? /* @__PURE__ */ jsx31(Badge12, { variant: "light", color: "blue", w: "fit-content", children: badge }) : null,
1694
+ /* @__PURE__ */ jsxs27(Stack27, { gap: "xs", children: [
1695
+ /* @__PURE__ */ jsx31(Title20, { order: 4, children: title }),
1696
+ /* @__PURE__ */ jsx31(Text25, { c: "dimmed", children: description })
1697
+ ] }),
1698
+ footer ? /* @__PURE__ */ jsx31(Text25, { size: "sm", children: footer }) : null,
1699
+ /* @__PURE__ */ jsx31(
1700
+ StateBlock,
1701
+ {
1702
+ variant: "not-enough-data",
1703
+ title: "Content is not live yet",
1704
+ description: "This surface is intentionally showing a governed placeholder until live data is available.",
1705
+ compact: true
1706
+ }
1707
+ )
1708
+ ] }) });
1709
+ }
1710
+
1711
+ // src/SimpleDataTable.tsx
1712
+ import { ScrollArea, Table } from "@mantine/core";
1713
+ import { jsx as jsx32, jsxs as jsxs28 } from "react/jsx-runtime";
1714
+ function SimpleDataTable({
1715
+ columns,
1716
+ rows,
1717
+ loading = false,
1718
+ error = null,
1719
+ emptyTitle = "No data available",
1720
+ emptyDescription = "There is no live data to show yet.",
1721
+ getRowKey
1722
+ }) {
1723
+ if (error) {
1724
+ return /* @__PURE__ */ jsx32(StateBlock, { variant: "error", title: "Unable to load data", description: error, compact: true });
1725
+ }
1726
+ if (loading) {
1727
+ return /* @__PURE__ */ jsx32(StateBlock, { variant: "loading", title: "Loading data", description: "Please wait while the shared dataset is prepared.", compact: true });
1728
+ }
1729
+ if (!rows.length) {
1730
+ return /* @__PURE__ */ jsx32(StateBlock, { variant: "empty", title: emptyTitle, description: emptyDescription, compact: true });
1731
+ }
1732
+ return /* @__PURE__ */ jsx32(ScrollArea, { children: /* @__PURE__ */ jsxs28(Table, { striped: true, highlightOnHover: true, withTableBorder: true, withColumnBorders: true, children: [
1733
+ /* @__PURE__ */ jsx32(Table.Thead, { children: /* @__PURE__ */ jsx32(Table.Tr, { children: columns.map((column) => /* @__PURE__ */ jsx32(Table.Th, { children: column.header }, String(column.key))) }) }),
1734
+ /* @__PURE__ */ jsx32(Table.Tbody, { children: rows.map((row, index) => /* @__PURE__ */ jsx32(Table.Tr, { children: columns.map((column) => /* @__PURE__ */ jsx32(Table.Td, { children: column.render ? column.render(row) : String(row[column.key] ?? "") }, String(column.key))) }, getRowKey ? getRowKey(row, index) : index)) })
1735
+ ] }) });
1736
+ }
1737
+
1738
+ // src/StatsSection.tsx
1739
+ import { Stack as Stack28, Title as Title21 } from "@mantine/core";
1740
+ import { jsx as jsx33, jsxs as jsxs29 } from "react/jsx-runtime";
1741
+ function StatsSection({
1742
+ title,
1743
+ loading = false,
1744
+ error = null,
1745
+ belowThreshold = false,
1746
+ thresholdMessage,
1747
+ children,
1748
+ placeholder
1749
+ }) {
1750
+ let content = children;
1751
+ if (error) {
1752
+ content = /* @__PURE__ */ jsx33(StateBlock, { variant: "error", title: "Unable to load statistics", description: error, compact: true });
1753
+ } else if (loading) {
1754
+ content = /* @__PURE__ */ jsx33(StateBlock, { variant: "loading", title: "Loading statistics", description: "This shared data surface is still synchronizing.", compact: true });
1755
+ } else if (belowThreshold) {
1756
+ content = /* @__PURE__ */ jsx33(
1757
+ StateBlock,
1758
+ {
1759
+ variant: "not-enough-data",
1760
+ title: "Not enough data yet",
1761
+ description: thresholdMessage ?? "This view is hidden until the reporting threshold is met.",
1762
+ compact: true
1763
+ }
1764
+ );
1765
+ } else if (placeholder) {
1766
+ content = /* @__PURE__ */ jsx33(PlaceholderPanel, { ...placeholder, mode: "placeholder" });
1767
+ }
1768
+ return /* @__PURE__ */ jsxs29(Stack28, { gap: "md", children: [
1769
+ /* @__PURE__ */ jsx33(Title21, { order: 3, children: title }),
1770
+ content
1771
+ ] });
1772
+ }
1773
+
1774
+ // src/locales/ar.ts
1775
+ var ar = {
1776
+ "gds.action.settings": "\u0627\u0644\u0625\u0639\u062F\u0627\u062F\u0627\u062A",
1777
+ "gds.action.analytics": "\u062A\u062D\u0644\u064A\u0644\u0627\u062A",
1778
+ "gds.action.dashboard": "\u0644\u0648\u062D\u0629 \u0627\u0644\u0642\u064A\u0627\u062F\u0629",
1779
+ "gds.action.play": "\u062A\u0634\u063A\u064A\u0644",
1780
+ "gds.action.start": "\u0628\u062F\u0621",
1781
+ "gds.action.users": "\u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645\u064A\u0646",
1782
+ "gds.action.add": "\u0625\u0636\u0627\u0641\u0629",
1783
+ "gds.action.edit": "\u062A\u0639\u062F\u064A\u0644",
1784
+ "gds.action.delete": "\u062D\u0630\u0641",
1785
+ "gds.action.save": "\u062D\u0641\u0638",
1786
+ "gds.action.cancel": "\u0625\u0644\u063A\u0627\u0621",
1787
+ "gds.action.confirm": "\u062A\u0623\u0643\u064A\u062F",
1788
+ "gds.action.close": "\u0625\u063A\u0644\u0627\u0642",
1789
+ "gds.action.language": "\u0627\u0644\u0644\u063A\u0629",
1790
+ "gds.action.theme": "\u0627\u0644\u0633\u0645\u0629",
1791
+ "gds.action.home": "\u0627\u0644\u0631\u0626\u064A\u0633\u064A\u0629",
1792
+ "gds.action.inbox": "\u0635\u0646\u062F\u0648\u0642 \u0627\u0644\u0648\u0627\u0631\u062F",
1793
+ "gds.action.calendar": "\u0627\u0644\u062A\u0642\u0648\u064A\u0645",
1794
+ "gds.action.gallery": "\u0627\u0644\u0645\u0639\u0631\u0636",
1795
+ "gds.action.history": "\u0627\u0644\u0633\u062C\u0644",
1796
+ "gds.action.profile": "\u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u0634\u062E\u0635\u064A",
1797
+ "gds.action.send": "\u0625\u0631\u0633\u0627\u0644",
1798
+ "gds.action.reply": "\u0631\u062F",
1799
+ "gds.action.forward": "\u0625\u0639\u0627\u062F\u0629 \u062A\u0648\u062C\u064A\u0647",
1800
+ "gds.action.attach": "\u0625\u0631\u0641\u0627\u0642",
1801
+ "gds.action.upload": "\u0631\u0641\u0639",
1802
+ "gds.action.download": "\u062A\u0646\u0632\u064A\u0644",
1803
+ "gds.action.print": "\u0637\u0628\u0627\u0639\u0629",
1804
+ "gds.action.copy": "\u0646\u0633\u062E",
1805
+ "gds.action.duplicate": "\u062A\u0643\u0631\u0627\u0631",
1806
+ "gds.action.check": "\u062A\u062D\u062F\u064A\u062F",
1807
+ "gds.action.uncheck": "\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u062D\u062F\u064A\u062F",
1808
+ "gds.action.complete": "\u0627\u0643\u062A\u0645\u0627\u0644",
1809
+ "gds.action.clear": "\u0645\u0633\u062D",
1810
+ "gds.action.capture": "\u0627\u0644\u062A\u0642\u0627\u0637",
1811
+ "gds.action.record": "\u062A\u0633\u062C\u064A\u0644",
1812
+ "gds.action.flip": "\u0642\u0644\u0628",
1813
+ "gds.action.flash": "\u0641\u0644\u0627\u0634",
1814
+ "gds.action.course": "\u062F\u0648\u0631\u0629",
1815
+ "gds.action.lesson": "\u062F\u0631\u0633",
1816
+ "gds.action.certificate": "\u0634\u0647\u0627\u062F\u0629",
1817
+ "gds.action.student": "\u0637\u0627\u0644\u0628",
1818
+ "gds.action.class": "\u0641\u0635\u0644",
1819
+ "gds.action.grade": "\u062F\u0631\u062C\u0629",
1820
+ "gds.action.child": "\u0637\u0641\u0644",
1821
+ "gds.action.family": "\u0639\u0627\u0626\u0644\u0629",
1822
+ "gds.action.habit": "\u0639\u0627\u062F\u0629",
1823
+ "gds.action.goal": "\u0647\u062F\u0641",
1824
+ "gds.action.streak": "\u0633\u0644\u0633\u0644\u0629",
1825
+ "gds.action.reward": "\u0645\u0643\u0627\u0641\u0623\u0629",
1826
+ "gds.action.trophy": "\u0643\u0623\u0633",
1827
+ "gds.action.crown": "\u062A\u0627\u062C",
1828
+ "gds.action.pause": "\u0625\u064A\u0642\u0627\u0641 \u0645\u0624\u0642\u062A",
1829
+ "gds.action.message": "\u0631\u0633\u0627\u0644\u0629",
1830
+ "gds.action.mail": "\u0628\u0631\u064A\u062F",
1831
+ "gds.action.refresh": "\u062A\u062D\u062F\u064A\u062B",
1832
+ "gds.action.trendingUp": "\u0627\u062A\u062C\u0627\u0647 \u0635\u0627\u0639\u062F",
1833
+ "gds.action.trendingDown": "\u0627\u062A\u062C\u0627\u0647 \u0647\u0627\u0628\u0637",
1834
+ "gds.action.currency": "\u0639\u0645\u0644\u0629",
1835
+ "gds.action.grid": "\u0634\u0628\u0643\u0629",
1836
+ "gds.action.list": "\u0642\u0627\u0626\u0645\u0629",
1837
+ "gds.action.logout": "\u062A\u0633\u062C\u064A\u0644 \u062E\u0631\u0648\u062C",
1838
+ "gds.action.notifications": "\u0625\u0634\u0639\u0627\u0631\u0627\u062A",
1839
+ "gds.action.back": "\u0631\u062C\u0648\u0639",
1840
+ "gds.action.eye": "\u0639\u0631\u0636",
1841
+ "gds.action.eyeOff": "\u0625\u062E\u0641\u0627\u0621",
1842
+ "gds.action.help": "\u0645\u0633\u0627\u0639\u062F\u0629",
1843
+ "gds.action.filter": "\u062A\u0635\u0641\u064A\u0629",
1844
+ "gds.action.sort": "\u0641\u0631\u0632",
1845
+ "gds.action.export": "\u062A\u0635\u062F\u064A\u0631",
1846
+ "gds.action.import": "\u0627\u0633\u062A\u064A\u0631\u0627\u062F",
1847
+ "gds.action.preview": "\u0645\u0639\u0627\u064A\u0646\u0629",
1848
+ "gds.action.clone": "\u0627\u0633\u062A\u0646\u0633\u0627\u062E",
1849
+ "gds.action.restore": "\u0627\u0633\u062A\u0639\u0627\u062F\u0629",
1850
+ "gds.action.toggle": "\u062A\u0628\u062F\u064A\u0644",
1851
+ "gds.action.search": "\u0628\u062D\u062B",
1852
+ "gds.action.submit": "\u0625\u0631\u0633\u0627\u0644",
1853
+ "gds.action.reset": "\u0625\u0639\u0627\u062F\u0629 \u0636\u0628\u0637",
1854
+ "gds.action.login": "\u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644",
1855
+ "gds.action.register": "\u062A\u0633\u062C\u064A\u0644",
1856
+ "gds.action.verify": "\u062A\u062D\u0642\u0642",
1857
+ "gds.action.launch": "\u0625\u0637\u0644\u0627\u0642",
1858
+ "gds.action.draft": "\u0645\u0633\u0648\u062F\u0629",
1859
+ "gds.action.refer": "\u0625\u062D\u0627\u0644\u0629",
1860
+ "gds.action.evidence": "\u062F\u0644\u064A\u0644",
1861
+ "gds.feedback.saved": "\u062A\u0645 \u0627\u0644\u062D\u0641\u0638",
1862
+ "gds.feedback.error": "\u062D\u062F\u062B \u062E\u0637\u0623 \u0645\u0627",
1863
+ "gds.feedback.added": "\u062A\u0645\u062A \u0627\u0644\u0625\u0636\u0627\u0641\u0629",
1864
+ "gds.feedback.edited": "\u062A\u0645 \u0627\u0644\u062A\u0639\u062F\u064A\u0644",
1865
+ "gds.feedback.deleted": "\u062A\u0645 \u0627\u0644\u062D\u0630\u0641",
1866
+ "gds.feedback.canceled": "\u062A\u0645 \u0627\u0644\u0625\u0644\u063A\u0627\u0621",
1867
+ "gds.feedback.confirmed": "\u062A\u0645 \u0627\u0644\u062A\u0623\u0643\u064A\u062F",
1868
+ "gds.feedback.closed": "\u062A\u0645 \u0627\u0644\u0625\u063A\u0644\u0627\u0642",
1869
+ "gds.feedback.changed": "\u062A\u0645 \u0627\u0644\u062A\u063A\u064A\u064A\u0631",
1870
+ "gds.feedback.loaded": "\u062A\u0645 \u0627\u0644\u062A\u062D\u0645\u064A\u0644",
1871
+ "gds.feedback.started": "\u062A\u0645 \u0627\u0644\u0628\u062F\u0621",
1872
+ "gds.feedback.opened": "\u062A\u0645 \u0627\u0644\u0641\u062A\u062D",
1873
+ "gds.feedback.sent": "\u062A\u0645 \u0627\u0644\u0625\u0631\u0633\u0627\u0644",
1874
+ "gds.feedback.replied": "\u062A\u0645 \u0627\u0644\u0631\u062F",
1875
+ "gds.feedback.forwarded": "\u062A\u0645\u062A \u0625\u0639\u0627\u062F\u0629 \u0627\u0644\u062A\u0648\u062C\u064A\u0647",
1876
+ "gds.feedback.attached": "\u062A\u0645 \u0627\u0644\u0625\u0631\u0641\u0627\u0642",
1877
+ "gds.feedback.uploaded": "\u062A\u0645 \u0627\u0644\u0631\u0641\u0639",
1878
+ "gds.feedback.downloaded": "\u062A\u0645 \u0627\u0644\u062A\u0646\u0632\u064A\u0644",
1879
+ "gds.feedback.printed": "\u062A\u0645\u062A \u0627\u0644\u0637\u0628\u0627\u0639\u0629",
1880
+ "gds.feedback.copied": "\u062A\u0645 \u0627\u0644\u0646\u0633\u062E",
1881
+ "gds.feedback.duplicated": "\u062A\u0645 \u0627\u0644\u062A\u0643\u0631\u0627\u0631",
1882
+ "gds.feedback.checked": "\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062F",
1883
+ "gds.feedback.unchecked": "\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u062D\u062F\u064A\u062F",
1884
+ "gds.feedback.completed": "\u062A\u0645 \u0627\u0644\u0627\u0643\u062A\u0645\u0627\u0644",
1885
+ "gds.feedback.cleared": "\u062A\u0645 \u0627\u0644\u0645\u0633\u062D",
1886
+ "gds.feedback.captured": "\u062A\u0645 \u0627\u0644\u0627\u0644\u062A\u0642\u0627\u0637",
1887
+ "gds.feedback.recorded": "\u062A\u0645 \u0627\u0644\u062A\u0633\u062C\u064A\u0644",
1888
+ "gds.feedback.flipped": "\u062A\u0645 \u0627\u0644\u0642\u0644\u0628",
1889
+ "gds.feedback.flashed": "\u062A\u0645 \u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0641\u0644\u0627\u0634",
1890
+ "gds.feedback.done": "\u062A\u0645",
1891
+ "gds.feedback.rewarded": "\u062A\u0645\u062A \u0627\u0644\u0645\u0643\u0627\u0641\u0623\u0629",
1892
+ "gds.feedback.paused": "\u062A\u0645 \u0627\u0644\u0625\u064A\u0642\u0627\u0641 \u0627\u0644\u0645\u0624\u0642\u062A",
1893
+ "gds.feedback.mailed": "\u062A\u0645 \u0627\u0644\u0625\u0631\u0633\u0627\u0644 \u0628\u0627\u0644\u0628\u0631\u064A\u062F",
1894
+ "gds.feedback.refreshed": "\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062B",
1895
+ "gds.feedback.loggedOut": "\u062A\u0645 \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062E\u0631\u0648\u062C",
1896
+ "gds.feedback.filtered": "\u062A\u0645\u062A \u0627\u0644\u062A\u0635\u0641\u064A\u0629",
1897
+ "gds.feedback.sorted": "\u062A\u0645 \u0627\u0644\u0641\u0631\u0632",
1898
+ "gds.feedback.exported": "\u062A\u0645 \u0627\u0644\u062A\u0635\u062F\u064A\u0631",
1899
+ "gds.feedback.imported": "\u062A\u0645 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",
1900
+ "gds.feedback.previewed": "\u062A\u0645\u062A \u0627\u0644\u0645\u0639\u0627\u064A\u0646\u0629",
1901
+ "gds.feedback.cloned": "\u062A\u0645 \u0627\u0644\u0627\u0633\u062A\u0646\u0633\u0627\u062E",
1902
+ "gds.feedback.restored": "\u062A\u0645\u062A \u0627\u0644\u0627\u0633\u062A\u0639\u0627\u062F\u0629",
1903
+ "gds.feedback.toggled": "\u062A\u0645 \u0627\u0644\u062A\u0628\u062F\u064A\u0644",
1904
+ "gds.feedback.searched": "\u062A\u0645 \u0627\u0644\u0628\u062D\u062B",
1905
+ "gds.feedback.submitted": "\u062A\u0645 \u0627\u0644\u0625\u0631\u0633\u0627\u0644",
1906
+ "gds.feedback.reset": "\u062A\u0645\u062A \u0625\u0639\u0627\u062F\u0629 \u0627\u0644\u0636\u0628\u0637",
1907
+ "gds.feedback.loggedIn": "\u062A\u0645 \u062A\u0633\u062C\u064A\u0644 \u0627\u0644\u062F\u062E\u0648\u0644",
1908
+ "gds.feedback.registered": "\u062A\u0645 \u0627\u0644\u062A\u0633\u062C\u064A\u0644",
1909
+ "gds.feedback.verified": "\u062A\u0645 \u0627\u0644\u062A\u062D\u0642\u0642",
1910
+ "gds.feedback.launched": "\u062A\u0645 \u0627\u0644\u0625\u0637\u0644\u0627\u0642",
1911
+ "gds.feedback.drafted": "\u062A\u0645 \u062D\u0641\u0638 \u0627\u0644\u0645\u0633\u0648\u062F\u0629",
1912
+ "gds.feedback.referred": "\u062A\u0645\u062A \u0627\u0644\u0625\u062D\u0627\u0644\u0629",
1913
+ "gds.aria.themeToggle": "\u062A\u0628\u062F\u064A\u0644 \u0646\u0638\u0627\u0645 \u0627\u0644\u0623\u0644\u0648\u0627\u0646",
1914
+ "gds.state.emptyData": "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A \u0645\u062A\u0627\u062D\u0629."
1915
+ };
1916
+
1917
+ // src/locales/de.ts
1918
+ var de = {
1919
+ "gds.action.settings": "Einstellungen",
1920
+ "gds.action.analytics": "Analyse",
1921
+ "gds.action.dashboard": "Dashboard",
1922
+ "gds.action.play": "Abspielen",
1923
+ "gds.action.start": "Start",
1924
+ "gds.action.users": "Benutzer",
1925
+ "gds.action.add": "Hinzuf\xFCgen",
1926
+ "gds.action.edit": "Bearbeiten",
1927
+ "gds.action.delete": "L\xF6schen",
1928
+ "gds.action.save": "Speichern",
1929
+ "gds.action.cancel": "Abbrechen",
1930
+ "gds.action.confirm": "Best\xE4tigen",
1931
+ "gds.action.close": "Schlie\xDFen",
1932
+ "gds.action.language": "Sprache",
1933
+ "gds.action.theme": "Thema",
1934
+ "gds.action.home": "Startseite",
1935
+ "gds.action.inbox": "Posteingang",
1936
+ "gds.action.calendar": "Kalender",
1937
+ "gds.action.gallery": "Galerie",
1938
+ "gds.action.history": "Verlauf",
1939
+ "gds.action.profile": "Profil",
1940
+ "gds.action.send": "Senden",
1941
+ "gds.action.reply": "Antworten",
1942
+ "gds.action.forward": "Weiterleiten",
1943
+ "gds.action.attach": "Anh\xE4ngen",
1944
+ "gds.action.upload": "Hochladen",
1945
+ "gds.action.download": "Herunterladen",
1946
+ "gds.action.print": "Drucken",
1947
+ "gds.action.copy": "Kopieren",
1948
+ "gds.action.duplicate": "Duplizieren",
1949
+ "gds.action.check": "\xDCberpr\xFCfen",
1950
+ "gds.action.uncheck": "H\xE4kchen entfernen",
1951
+ "gds.action.complete": "Abschlie\xDFen",
1952
+ "gds.action.clear": "Leeren",
1953
+ "gds.action.capture": "Aufnehmen",
1954
+ "gds.action.record": "Aufzeichnen",
1955
+ "gds.action.flip": "Umdrehen",
1956
+ "gds.action.flash": "Blitz",
1957
+ "gds.action.course": "Kurs",
1958
+ "gds.action.lesson": "Lektion",
1959
+ "gds.action.certificate": "Zertifikat",
1960
+ "gds.action.student": "Student",
1961
+ "gds.action.class": "Klasse",
1962
+ "gds.action.grade": "Note",
1963
+ "gds.action.child": "Kind",
1964
+ "gds.action.family": "Familie",
1965
+ "gds.action.habit": "Gewohnheit",
1966
+ "gds.action.goal": "Ziel",
1967
+ "gds.action.streak": "Serie",
1968
+ "gds.action.reward": "Belohnung",
1969
+ "gds.action.trophy": "Troph\xE4e",
1970
+ "gds.action.crown": "Krone",
1971
+ "gds.action.pause": "Pause",
1972
+ "gds.action.message": "Nachricht",
1973
+ "gds.action.mail": "E-Mail",
1974
+ "gds.action.refresh": "Aktualisieren",
1975
+ "gds.action.trendingUp": "Aufw\xE4rtstrend",
1976
+ "gds.action.trendingDown": "Abw\xE4rtstrend",
1977
+ "gds.action.currency": "W\xE4hrung",
1978
+ "gds.action.grid": "Raster",
1979
+ "gds.action.list": "Liste",
1980
+ "gds.action.logout": "Abmelden",
1981
+ "gds.action.notifications": "Benachrichtigungen",
1982
+ "gds.action.back": "Zur\xFCck",
1983
+ "gds.action.eye": "Anzeigen",
1984
+ "gds.action.eyeOff": "Ausblenden",
1985
+ "gds.action.help": "Hilfe",
1986
+ "gds.action.filter": "Filter",
1987
+ "gds.action.sort": "Sortieren",
1988
+ "gds.action.export": "Exportieren",
1989
+ "gds.action.import": "Importieren",
1990
+ "gds.action.preview": "Vorschau",
1991
+ "gds.action.clone": "Klonen",
1992
+ "gds.action.restore": "Wiederherstellen",
1993
+ "gds.action.toggle": "Umschalten",
1994
+ "gds.action.search": "Suchen",
1995
+ "gds.action.submit": "Absenden",
1996
+ "gds.action.reset": "Zur\xFCcksetzen",
1997
+ "gds.action.login": "Einloggen",
1998
+ "gds.action.register": "Registrieren",
1999
+ "gds.action.verify": "Verifizieren",
2000
+ "gds.action.launch": "Starten",
2001
+ "gds.action.draft": "Entwurf",
2002
+ "gds.action.refer": "Empfehlen",
2003
+ "gds.action.evidence": "Beweismittel",
2004
+ "gds.feedback.saved": "Gespeichert",
2005
+ "gds.feedback.error": "Etwas ist schiefgelaufen",
2006
+ "gds.feedback.added": "Hinzugef\xFCgt",
2007
+ "gds.feedback.edited": "Bearbeitet",
2008
+ "gds.feedback.deleted": "Gel\xF6scht",
2009
+ "gds.feedback.canceled": "Abgebrochen",
2010
+ "gds.feedback.confirmed": "Best\xE4tigt",
2011
+ "gds.feedback.closed": "Geschlossen",
2012
+ "gds.feedback.changed": "Ge\xE4ndert",
2013
+ "gds.feedback.loaded": "Geladen",
2014
+ "gds.feedback.started": "Gestartet",
2015
+ "gds.feedback.opened": "Ge\xF6ffnet",
2016
+ "gds.feedback.sent": "Gesendet",
2017
+ "gds.feedback.replied": "Geantwortet",
2018
+ "gds.feedback.forwarded": "Weitergeleitet",
2019
+ "gds.feedback.attached": "Angeh\xE4ngt",
2020
+ "gds.feedback.uploaded": "Hochgeladen",
2021
+ "gds.feedback.downloaded": "Heruntergeladen",
2022
+ "gds.feedback.printed": "Gedruckt",
2023
+ "gds.feedback.copied": "Kopiert",
2024
+ "gds.feedback.duplicated": "Dupliziert",
2025
+ "gds.feedback.checked": "Ausgew\xE4hlt",
2026
+ "gds.feedback.unchecked": "H\xE4kchen entfernt",
2027
+ "gds.feedback.completed": "Abgeschlossen",
2028
+ "gds.feedback.cleared": "Geleert",
2029
+ "gds.feedback.captured": "Erfasst",
2030
+ "gds.feedback.recorded": "Aufgezeichnet",
2031
+ "gds.feedback.flipped": "Umdreht",
2032
+ "gds.feedback.flashed": "Geblitzt",
2033
+ "gds.feedback.done": "Erledigt",
2034
+ "gds.feedback.rewarded": "Belohnt",
2035
+ "gds.feedback.paused": "Pausiert",
2036
+ "gds.feedback.mailed": "Gemailt",
2037
+ "gds.feedback.refreshed": "Aktualisiert",
2038
+ "gds.feedback.loggedOut": "Abgemeldet",
2039
+ "gds.feedback.filtered": "Gefiltert",
2040
+ "gds.feedback.sorted": "Sortiert",
2041
+ "gds.feedback.exported": "Exportiert",
2042
+ "gds.feedback.imported": "Importiert",
2043
+ "gds.feedback.previewed": "Angezeigt",
2044
+ "gds.feedback.cloned": "Kloniert",
2045
+ "gds.feedback.restored": "Wiederhergestellt",
2046
+ "gds.feedback.toggled": "Umgeschaltet",
2047
+ "gds.feedback.searched": "Gesucht",
2048
+ "gds.feedback.submitted": "Abgesendet",
2049
+ "gds.feedback.reset": "Zur\xFCckgesetzt",
2050
+ "gds.feedback.loggedIn": "Eingeloggt",
2051
+ "gds.feedback.registered": "Registriert",
2052
+ "gds.feedback.verified": "Verifiziert",
2053
+ "gds.feedback.launched": "Gestartet",
2054
+ "gds.feedback.drafted": "Entworfen",
2055
+ "gds.feedback.referred": "Empfohlen",
2056
+ "gds.aria.themeToggle": "Farbschema umschalten",
2057
+ "gds.state.emptyData": "Keine Daten verf\xFCgbar."
2058
+ };
2059
+
2060
+ // src/locales/en.ts
2061
+ var en = {
2062
+ "gds.action.settings": "Settings",
2063
+ "gds.action.analytics": "Analytics",
2064
+ "gds.action.dashboard": "Dashboard",
2065
+ "gds.action.play": "Play",
2066
+ "gds.action.start": "Start",
2067
+ "gds.action.users": "Users",
2068
+ "gds.action.add": "Add",
2069
+ "gds.action.edit": "Edit",
2070
+ "gds.action.delete": "Delete",
2071
+ "gds.action.save": "Save",
2072
+ "gds.action.cancel": "Cancel",
2073
+ "gds.action.confirm": "Confirm",
2074
+ "gds.action.close": "Close",
2075
+ "gds.action.language": "Language",
2076
+ "gds.action.theme": "Theme",
2077
+ "gds.action.home": "Home",
2078
+ "gds.action.inbox": "Inbox",
2079
+ "gds.action.calendar": "Calendar",
2080
+ "gds.action.gallery": "Gallery",
2081
+ "gds.action.history": "History",
2082
+ "gds.action.profile": "Profile",
2083
+ "gds.action.send": "Send",
2084
+ "gds.action.reply": "Reply",
2085
+ "gds.action.forward": "Forward",
2086
+ "gds.action.attach": "Attach",
2087
+ "gds.action.upload": "Upload",
2088
+ "gds.action.download": "Download",
2089
+ "gds.action.print": "Print",
2090
+ "gds.action.copy": "Copy",
2091
+ "gds.action.duplicate": "Duplicate",
2092
+ "gds.action.check": "Check",
2093
+ "gds.action.uncheck": "Uncheck",
2094
+ "gds.action.complete": "Complete",
2095
+ "gds.action.clear": "Clear",
2096
+ "gds.action.capture": "Capture",
2097
+ "gds.action.record": "Record",
2098
+ "gds.action.flip": "Flip",
2099
+ "gds.action.flash": "Flash",
2100
+ "gds.action.course": "Course",
2101
+ "gds.action.lesson": "Lesson",
2102
+ "gds.action.certificate": "Certificate",
2103
+ "gds.action.student": "Student",
2104
+ "gds.action.class": "Class",
2105
+ "gds.action.grade": "Grade",
2106
+ "gds.action.child": "Child",
2107
+ "gds.action.family": "Family",
2108
+ "gds.action.habit": "Habit",
2109
+ "gds.action.goal": "Goal",
2110
+ "gds.action.streak": "Streak",
2111
+ "gds.action.reward": "Reward",
2112
+ "gds.action.trophy": "Trophy",
2113
+ "gds.action.crown": "Crown",
2114
+ "gds.action.pause": "Pause",
2115
+ "gds.action.message": "Message",
2116
+ "gds.action.mail": "Mail",
2117
+ "gds.action.refresh": "Refresh",
2118
+ "gds.action.trendingUp": "Trending Up",
2119
+ "gds.action.trendingDown": "Trending Down",
2120
+ "gds.action.currency": "Currency",
2121
+ "gds.action.grid": "Grid",
2122
+ "gds.action.list": "List",
2123
+ "gds.action.logout": "Logout",
2124
+ "gds.action.notifications": "Notifications",
2125
+ "gds.action.back": "Back",
2126
+ "gds.action.eye": "View",
2127
+ "gds.action.eyeOff": "Hide",
2128
+ "gds.action.help": "Help",
2129
+ "gds.action.filter": "Filter",
2130
+ "gds.action.sort": "Sort",
2131
+ "gds.action.export": "Export",
2132
+ "gds.action.import": "Import",
2133
+ "gds.action.preview": "Preview",
2134
+ "gds.action.clone": "Clone",
2135
+ "gds.action.restore": "Restore",
2136
+ "gds.action.toggle": "Toggle",
2137
+ "gds.action.search": "Search",
2138
+ "gds.action.submit": "Submit",
2139
+ "gds.action.reset": "Reset",
2140
+ "gds.action.login": "Login",
2141
+ "gds.action.register": "Register",
2142
+ "gds.action.verify": "Verify",
2143
+ "gds.action.launch": "Launch",
2144
+ "gds.action.draft": "Draft",
2145
+ "gds.action.refer": "Refer",
2146
+ "gds.action.evidence": "Evidence",
2147
+ "gds.feedback.saved": "Saved",
2148
+ "gds.feedback.error": "Something went wrong",
2149
+ "gds.feedback.added": "Added",
2150
+ "gds.feedback.edited": "Edited",
2151
+ "gds.feedback.deleted": "Deleted",
2152
+ "gds.feedback.canceled": "Canceled",
2153
+ "gds.feedback.confirmed": "Confirmed",
2154
+ "gds.feedback.closed": "Closed",
2155
+ "gds.feedback.changed": "Changed",
2156
+ "gds.feedback.loaded": "Loaded",
2157
+ "gds.feedback.started": "Started",
2158
+ "gds.feedback.opened": "Opened",
2159
+ "gds.feedback.sent": "Sent",
2160
+ "gds.feedback.replied": "Replied",
2161
+ "gds.feedback.forwarded": "Forwarded",
2162
+ "gds.feedback.attached": "Attached",
2163
+ "gds.feedback.uploaded": "Uploaded",
2164
+ "gds.feedback.downloaded": "Downloaded",
2165
+ "gds.feedback.printed": "Printed",
2166
+ "gds.feedback.copied": "Copied",
2167
+ "gds.feedback.duplicated": "Duplicated",
2168
+ "gds.feedback.checked": "Checked",
2169
+ "gds.feedback.unchecked": "Unchecked",
2170
+ "gds.feedback.completed": "Completed",
2171
+ "gds.feedback.cleared": "Cleared",
2172
+ "gds.feedback.captured": "Captured",
2173
+ "gds.feedback.recorded": "Recorded",
2174
+ "gds.feedback.flipped": "Flipped",
2175
+ "gds.feedback.flashed": "Flashed",
2176
+ "gds.feedback.done": "Done",
2177
+ "gds.feedback.rewarded": "Rewarded",
2178
+ "gds.feedback.paused": "Paused",
2179
+ "gds.feedback.mailed": "Mailed",
2180
+ "gds.feedback.refreshed": "Refreshed",
2181
+ "gds.feedback.loggedOut": "Logged Out",
2182
+ "gds.feedback.filtered": "Filtered",
2183
+ "gds.feedback.sorted": "Sorted",
2184
+ "gds.feedback.exported": "Exported",
2185
+ "gds.feedback.imported": "Imported",
2186
+ "gds.feedback.previewed": "Previewed",
2187
+ "gds.feedback.cloned": "Cloned",
2188
+ "gds.feedback.restored": "Restored",
2189
+ "gds.feedback.toggled": "Toggled",
2190
+ "gds.feedback.searched": "Searched",
2191
+ "gds.feedback.submitted": "Submitted",
2192
+ "gds.feedback.reset": "Reset",
2193
+ "gds.feedback.loggedIn": "Logged In",
2194
+ "gds.feedback.registered": "Registered",
2195
+ "gds.feedback.verified": "Verified",
2196
+ "gds.feedback.launched": "Launched",
2197
+ "gds.feedback.drafted": "Drafted",
2198
+ "gds.feedback.referred": "Referred",
2199
+ "gds.aria.themeToggle": "Toggle color scheme",
2200
+ "gds.state.emptyData": "No data available."
2201
+ };
2202
+
2203
+ // src/locales/es.ts
2204
+ var es = {
2205
+ "gds.action.settings": "Configuraci\xF3n",
2206
+ "gds.action.analytics": "Anal\xEDtica",
2207
+ "gds.action.dashboard": "Panel",
2208
+ "gds.action.play": "Reproducir",
2209
+ "gds.action.start": "Iniciar",
2210
+ "gds.action.users": "Usuarios",
2211
+ "gds.action.add": "A\xF1adir",
2212
+ "gds.action.edit": "Editar",
2213
+ "gds.action.delete": "Eliminar",
2214
+ "gds.action.save": "Guardar",
2215
+ "gds.action.cancel": "Cancelar",
2216
+ "gds.action.confirm": "Confirmar",
2217
+ "gds.action.close": "Cerrar",
2218
+ "gds.action.language": "Idioma",
2219
+ "gds.action.theme": "Tema",
2220
+ "gds.action.home": "Inicio",
2221
+ "gds.action.inbox": "Bandeja de entrada",
2222
+ "gds.action.calendar": "Calendario",
2223
+ "gds.action.gallery": "Galer\xEDa",
2224
+ "gds.action.history": "Historial",
2225
+ "gds.action.profile": "Perfil",
2226
+ "gds.action.send": "Enviar",
2227
+ "gds.action.reply": "Responder",
2228
+ "gds.action.forward": "Reenviar",
2229
+ "gds.action.attach": "Adjuntar",
2230
+ "gds.action.upload": "Subir",
2231
+ "gds.action.download": "Descargar",
2232
+ "gds.action.print": "Imprimir",
2233
+ "gds.action.copy": "Copiar",
2234
+ "gds.action.duplicate": "Duplicar",
2235
+ "gds.action.check": "Marcar",
2236
+ "gds.action.uncheck": "Desmarcar",
2237
+ "gds.action.complete": "Completar",
2238
+ "gds.action.clear": "Limpiar",
2239
+ "gds.action.capture": "Capturar",
2240
+ "gds.action.record": "Grabar",
2241
+ "gds.action.flip": "Girar",
2242
+ "gds.action.flash": "Flash",
2243
+ "gds.action.course": "Curso",
2244
+ "gds.action.lesson": "Lecci\xF3n",
2245
+ "gds.action.certificate": "Certificado",
2246
+ "gds.action.student": "Estudiante",
2247
+ "gds.action.class": "Clase",
2248
+ "gds.action.grade": "Calificaci\xF3n",
2249
+ "gds.action.child": "Ni\xF1o",
2250
+ "gds.action.family": "Familia",
2251
+ "gds.action.habit": "H\xE1bito",
2252
+ "gds.action.goal": "Objetivo",
2253
+ "gds.action.streak": "Racha",
2254
+ "gds.action.reward": "Recompensa",
2255
+ "gds.action.trophy": "Trofeo",
2256
+ "gds.action.crown": "Corona",
2257
+ "gds.action.pause": "Pausa",
2258
+ "gds.action.message": "Mensaje",
2259
+ "gds.action.mail": "Correo",
2260
+ "gds.action.refresh": "Actualizar",
2261
+ "gds.action.trendingUp": "Tendencia al alza",
2262
+ "gds.action.trendingDown": "Tendencia a la baja",
2263
+ "gds.action.currency": "Moneda",
2264
+ "gds.action.grid": "Cuadr\xEDcula",
2265
+ "gds.action.list": "Lista",
2266
+ "gds.action.logout": "Cerrar sesi\xF3n",
2267
+ "gds.action.notifications": "Notificaciones",
2268
+ "gds.action.back": "Volver",
2269
+ "gds.action.eye": "Ver",
2270
+ "gds.action.eyeOff": "Ocultar",
2271
+ "gds.action.help": "Ayuda",
2272
+ "gds.action.filter": "Filtrar",
2273
+ "gds.action.sort": "Ordenar",
2274
+ "gds.action.export": "Exportar",
2275
+ "gds.action.import": "Importar",
2276
+ "gds.action.preview": "Vista previa",
2277
+ "gds.action.clone": "Clonar",
2278
+ "gds.action.restore": "Restaurar",
2279
+ "gds.action.toggle": "Alternar",
2280
+ "gds.action.search": "Buscar",
2281
+ "gds.action.submit": "Enviar",
2282
+ "gds.action.reset": "Restablecer",
2283
+ "gds.action.login": "Iniciar sesi\xF3n",
2284
+ "gds.action.register": "Registrarse",
2285
+ "gds.action.verify": "Verificar",
2286
+ "gds.action.launch": "Lanzar",
2287
+ "gds.action.draft": "Borrador",
2288
+ "gds.action.refer": "Referir",
2289
+ "gds.action.evidence": "Evidencia",
2290
+ "gds.feedback.saved": "Guardado",
2291
+ "gds.feedback.error": "Algo sali\xF3 mal",
2292
+ "gds.feedback.added": "A\xF1adido",
2293
+ "gds.feedback.edited": "Editado",
2294
+ "gds.feedback.deleted": "Eliminado",
2295
+ "gds.feedback.canceled": "Cancelado",
2296
+ "gds.feedback.confirmed": "Confirmado",
2297
+ "gds.feedback.closed": "Cerrado",
2298
+ "gds.feedback.changed": "Cambiado",
2299
+ "gds.feedback.loaded": "Cargado",
2300
+ "gds.feedback.started": "Iniciado",
2301
+ "gds.feedback.opened": "Abierto",
2302
+ "gds.feedback.sent": "Enviado",
2303
+ "gds.feedback.replied": "Respondido",
2304
+ "gds.feedback.forwarded": "Reenviado",
2305
+ "gds.feedback.attached": "Adjuntado",
2306
+ "gds.feedback.uploaded": "Subido",
2307
+ "gds.feedback.downloaded": "Descargado",
2308
+ "gds.feedback.printed": "Impreso",
2309
+ "gds.feedback.copied": "Copiado",
2310
+ "gds.feedback.duplicated": "Duplicado",
2311
+ "gds.feedback.checked": "Marcado",
2312
+ "gds.feedback.unchecked": "Desmarcado",
2313
+ "gds.feedback.completed": "Completado",
2314
+ "gds.feedback.cleared": "Limpiado",
2315
+ "gds.feedback.captured": "Capturado",
2316
+ "gds.feedback.recorded": "Grabado",
2317
+ "gds.feedback.flipped": "Girado",
2318
+ "gds.feedback.flashed": "Flash activado",
2319
+ "gds.feedback.done": "Hecho",
2320
+ "gds.feedback.rewarded": "Recompensado",
2321
+ "gds.feedback.paused": "Pausado",
2322
+ "gds.feedback.mailed": "Enviado por correo",
2323
+ "gds.feedback.refreshed": "Actualizado",
2324
+ "gds.feedback.loggedOut": "Sesi\xF3n cerrada",
2325
+ "gds.feedback.filtered": "Filtrado",
2326
+ "gds.feedback.sorted": "Ordenado",
2327
+ "gds.feedback.exported": "Exportado",
2328
+ "gds.feedback.imported": "Importado",
2329
+ "gds.feedback.previewed": "Previsualizado",
2330
+ "gds.feedback.cloned": "Clonado",
2331
+ "gds.feedback.restored": "Restaurado",
2332
+ "gds.feedback.toggled": "Alternado",
2333
+ "gds.feedback.searched": "Buscado",
2334
+ "gds.feedback.submitted": "Enviado",
2335
+ "gds.feedback.reset": "Restablecido",
2336
+ "gds.feedback.loggedIn": "Sesi\xF3n iniciada",
2337
+ "gds.feedback.registered": "Registrado",
2338
+ "gds.feedback.verified": "Verificado",
2339
+ "gds.feedback.launched": "Lanzado",
2340
+ "gds.feedback.drafted": "Guardado como borrador",
2341
+ "gds.feedback.referred": "Referido",
2342
+ "gds.aria.themeToggle": "Alternar esquema de color",
2343
+ "gds.state.emptyData": "No hay datos disponibles."
2344
+ };
2345
+
2346
+ // src/locales/fr.ts
2347
+ var fr = {
2348
+ "gds.action.settings": "Param\xE8tres",
2349
+ "gds.action.analytics": "Analytique",
2350
+ "gds.action.dashboard": "Tableau de bord",
2351
+ "gds.action.play": "Jouer",
2352
+ "gds.action.start": "D\xE9marrer",
2353
+ "gds.action.users": "Utilisateurs",
2354
+ "gds.action.add": "Ajouter",
2355
+ "gds.action.edit": "Modifier",
2356
+ "gds.action.delete": "Supprimer",
2357
+ "gds.action.save": "Enregistrer",
2358
+ "gds.action.cancel": "Annuler",
2359
+ "gds.action.confirm": "Confirmer",
2360
+ "gds.action.close": "Fermer",
2361
+ "gds.action.language": "Langue",
2362
+ "gds.action.theme": "Th\xE8me",
2363
+ "gds.action.home": "Accueil",
2364
+ "gds.action.inbox": "Bo\xEEte de r\xE9ception",
2365
+ "gds.action.calendar": "Calendrier",
2366
+ "gds.action.gallery": "Galerie",
2367
+ "gds.action.history": "Historique",
2368
+ "gds.action.profile": "Profil",
2369
+ "gds.action.send": "Envoyer",
2370
+ "gds.action.reply": "R\xE9pondre",
2371
+ "gds.action.forward": "Transf\xE9rer",
2372
+ "gds.action.attach": "Joindre",
2373
+ "gds.action.upload": "T\xE9l\xE9verser",
2374
+ "gds.action.download": "T\xE9l\xE9charger",
2375
+ "gds.action.print": "Imprimer",
2376
+ "gds.action.copy": "Copier",
2377
+ "gds.action.duplicate": "Dupliquer",
2378
+ "gds.action.check": "Cocher",
2379
+ "gds.action.uncheck": "D\xE9cocher",
2380
+ "gds.action.complete": "Terminer",
2381
+ "gds.action.clear": "Effacer",
2382
+ "gds.action.capture": "Capturer",
2383
+ "gds.action.record": "Enregistrer",
2384
+ "gds.action.flip": "Retourner",
2385
+ "gds.action.flash": "Flash",
2386
+ "gds.action.course": "Cours",
2387
+ "gds.action.lesson": "Le\xE7on",
2388
+ "gds.action.certificate": "Certificat",
2389
+ "gds.action.student": "\xC9tudiant",
2390
+ "gds.action.class": "Classe",
2391
+ "gds.action.grade": "Note",
2392
+ "gds.action.child": "Enfant",
2393
+ "gds.action.family": "Famille",
2394
+ "gds.action.habit": "Habitude",
2395
+ "gds.action.goal": "Objectif",
2396
+ "gds.action.streak": "S\xE9rie",
2397
+ "gds.action.reward": "R\xE9compense",
2398
+ "gds.action.trophy": "Troph\xE9e",
2399
+ "gds.action.crown": "Couronne",
2400
+ "gds.action.pause": "Pause",
2401
+ "gds.action.message": "Message",
2402
+ "gds.action.mail": "Courrier",
2403
+ "gds.action.refresh": "Actualiser",
2404
+ "gds.action.trendingUp": "Tendance \xE0 la hausse",
2405
+ "gds.action.trendingDown": "Tendance \xE0 la baisse",
2406
+ "gds.action.currency": "Devise",
2407
+ "gds.action.grid": "Grille",
2408
+ "gds.action.list": "Liste",
2409
+ "gds.action.logout": "D\xE9connexion",
2410
+ "gds.action.notifications": "Notifications",
2411
+ "gds.action.back": "Retour",
2412
+ "gds.action.eye": "Afficher",
2413
+ "gds.action.eyeOff": "Masquer",
2414
+ "gds.action.help": "Aide",
2415
+ "gds.action.filter": "Filtrer",
2416
+ "gds.action.sort": "Trier",
2417
+ "gds.action.export": "Exporter",
2418
+ "gds.action.import": "Importer",
2419
+ "gds.action.preview": "Aper\xE7u",
2420
+ "gds.action.clone": "Cloner",
2421
+ "gds.action.restore": "Restaurer",
2422
+ "gds.action.toggle": "Basculer",
2423
+ "gds.action.search": "Rechercher",
2424
+ "gds.action.submit": "Soumettre",
2425
+ "gds.action.reset": "R\xE9initialiser",
2426
+ "gds.action.login": "Connexion",
2427
+ "gds.action.register": "S'inscrire",
2428
+ "gds.action.verify": "V\xE9rifier",
2429
+ "gds.action.launch": "Lancer",
2430
+ "gds.action.draft": "Brouillon",
2431
+ "gds.action.refer": "R\xE9f\xE9rer",
2432
+ "gds.action.evidence": "Preuve",
2433
+ "gds.feedback.saved": "Enregistr\xE9",
2434
+ "gds.feedback.error": "Une erreur est survenue",
2435
+ "gds.feedback.added": "Ajout\xE9",
2436
+ "gds.feedback.edited": "Modifi\xE9",
2437
+ "gds.feedback.deleted": "Supprim\xE9",
2438
+ "gds.feedback.canceled": "Annul\xE9",
2439
+ "gds.feedback.confirmed": "Confirm\xE9",
2440
+ "gds.feedback.closed": "Ferm\xE9",
2441
+ "gds.feedback.changed": "Modifi\xE9",
2442
+ "gds.feedback.loaded": "Charg\xE9",
2443
+ "gds.feedback.started": "D\xE9marr\xE9",
2444
+ "gds.feedback.opened": "Ouvert",
2445
+ "gds.feedback.sent": "Envoy\xE9",
2446
+ "gds.feedback.replied": "R\xE9pondu",
2447
+ "gds.feedback.forwarded": "Transf\xE9r\xE9",
2448
+ "gds.feedback.attached": "Joint",
2449
+ "gds.feedback.uploaded": "T\xE9l\xE9vers\xE9",
2450
+ "gds.feedback.downloaded": "T\xE9l\xE9charg\xE9",
2451
+ "gds.feedback.printed": "Imprim\xE9",
2452
+ "gds.feedback.copied": "Copi\xE9",
2453
+ "gds.feedback.duplicated": "Dupliqu\xE9",
2454
+ "gds.feedback.checked": "Coch\xE9",
2455
+ "gds.feedback.unchecked": "D\xE9coch\xE9",
2456
+ "gds.feedback.completed": "Termin\xE9",
2457
+ "gds.feedback.cleared": "Effac\xE9",
2458
+ "gds.feedback.captured": "Captur\xE9",
2459
+ "gds.feedback.recorded": "Enregistr\xE9",
2460
+ "gds.feedback.flipped": "Retourn\xE9",
2461
+ "gds.feedback.flashed": "Flash\xE9",
2462
+ "gds.feedback.done": "Fait",
2463
+ "gds.feedback.rewarded": "R\xE9compens\xE9",
2464
+ "gds.feedback.paused": "En pause",
2465
+ "gds.feedback.mailed": "Envoy\xE9",
2466
+ "gds.feedback.refreshed": "Actualis\xE9",
2467
+ "gds.feedback.loggedOut": "D\xE9connect\xE9",
2468
+ "gds.feedback.filtered": "Filtr\xE9",
2469
+ "gds.feedback.sorted": "Tri\xE9",
2470
+ "gds.feedback.exported": "Export\xE9",
2471
+ "gds.feedback.imported": "Import\xE9",
2472
+ "gds.feedback.previewed": "Visualis\xE9",
2473
+ "gds.feedback.cloned": "Clon\xE9",
2474
+ "gds.feedback.restored": "Restaur\xE9",
2475
+ "gds.feedback.toggled": "Bascul\xE9",
2476
+ "gds.feedback.searched": "Recherch\xE9",
2477
+ "gds.feedback.submitted": "Soumis",
2478
+ "gds.feedback.reset": "R\xE9initialis\xE9",
2479
+ "gds.feedback.loggedIn": "Connect\xE9",
2480
+ "gds.feedback.registered": "Inscrit",
2481
+ "gds.feedback.verified": "V\xE9rifi\xE9",
2482
+ "gds.feedback.launched": "Lanc\xE9",
2483
+ "gds.feedback.drafted": "R\xE9dig\xE9",
2484
+ "gds.feedback.referred": "R\xE9f\xE9r\xE9",
2485
+ "gds.aria.themeToggle": "Basculer le th\xE8me",
2486
+ "gds.state.emptyData": "Aucune donn\xE9e disponible."
2487
+ };
2488
+
2489
+ // src/locales/he.ts
2490
+ var he = {
2491
+ "gds.action.settings": "\u05D4\u05D2\u05D3\u05E8\u05D5\u05EA",
2492
+ "gds.action.analytics": "\u05E0\u05D9\u05EA\u05D5\u05D7 \u05E0\u05EA\u05D5\u05E0\u05D9\u05DD",
2493
+ "gds.action.dashboard": "\u05DC\u05D5\u05D7 \u05D1\u05E7\u05E8\u05D4",
2494
+ "gds.action.play": "\u05D4\u05E4\u05E2\u05DC",
2495
+ "gds.action.start": "\u05D4\u05EA\u05D7\u05DC",
2496
+ "gds.action.users": "\u05DE\u05E9\u05EA\u05DE\u05E9\u05D9\u05DD",
2497
+ "gds.action.add": "\u05D4\u05D5\u05E1\u05E3",
2498
+ "gds.action.edit": "\u05E2\u05E8\u05D5\u05DA",
2499
+ "gds.action.delete": "\u05DE\u05D7\u05E7",
2500
+ "gds.action.save": "\u05E9\u05DE\u05D5\u05E8",
2501
+ "gds.action.cancel": "\u05D1\u05D9\u05D8\u0648\u0644",
2502
+ "gds.action.confirm": "\u05D0\u05D9\u05E9\u05D5\u05E8",
2503
+ "gds.action.close": "\u05E1\u05D2\u05D5\u05E8",
2504
+ "gds.action.language": "\u05E9\u05E4\u05D4",
2505
+ "gds.action.theme": "\u05E2\u05E8\u05DB\u05EA \u05E0\u05D5\u05E9\u05D0",
2506
+ "gds.action.home": "\u05D3\u05E3 \u05D4\u05D1\u05D9\u05EA",
2507
+ "gds.action.inbox": "\u05D3\u05D5\u05D0\u05E8 \u05E0\u05DB\u05E0\u05E1",
2508
+ "gds.action.calendar": "\u05DC\u05D5\u05D7 \u05E9\u05E0\u05D4",
2509
+ "gds.action.gallery": "\u05D2\u05DC\u05E8\u05D9\u05D4",
2510
+ "gds.action.history": "\u05D4\u05D9\u05E1\u05D8\u05D5\u05E8\u05D9\u05D4",
2511
+ "gds.action.profile": "\u05E4\u05E8\u05D5\u05E4\u05D9\u05DC",
2512
+ "gds.action.send": "\u05E9\u05DC\u05D7",
2513
+ "gds.action.reply": "\u05D4\u05E9\u05D1",
2514
+ "gds.action.forward": "\u05D4\u05E2\u05D1\u05E8",
2515
+ "gds.action.attach": "\u05E6\u05E8\u05E3",
2516
+ "gds.action.upload": "\u05D4\u05E2\u05DC\u05D4",
2517
+ "gds.action.download": "\u05D4\u05D5\u05E8\u05D3",
2518
+ "gds.action.print": "\u05D4\u05D3\u05E4\u05E1",
2519
+ "gds.action.copy": "\u05D4\u05E2\u05EA\u05E7",
2520
+ "gds.action.duplicate": "\u05E9\u05DB\u05E4\u05DC",
2521
+ "gds.action.check": "\u05E1\u05DE\u05DF",
2522
+ "gds.action.uncheck": "\u05D1\u05D8\u05DC \u05E1\u05D9\u05DE\u05D5\u05DF",
2523
+ "gds.action.complete": "\u05D4\u05E9\u05DC\u05DD",
2524
+ "gds.action.clear": "\u05E0\u05E7\u05D4",
2525
+ "gds.action.capture": "\u05E6\u05DC\u05DD",
2526
+ "gds.action.record": "\u05D4\u05E7\u05DC\u05D8",
2527
+ "gds.action.flip": "\u05D4\u05E4\u05D5\u05DA",
2528
+ "gds.action.flash": "\u05DE\u05D1\u05D6\u05E7",
2529
+ "gds.action.course": "\u05E7\u05D5\u05E8\u05E1",
2530
+ "gds.action.lesson": "\u05E9\u05D9\u05E2\u05D5\u05E8",
2531
+ "gds.action.certificate": "\u05EA\u05E2\u05D5\u05D3\u05D4",
2532
+ "gds.action.student": "\u05EA\u05DC\u05DE\u05D9\u05D3",
2533
+ "gds.action.class": "\u05DB\u05D9\u05EA\u05D4",
2534
+ "gds.action.grade": "\u05E6\u05D9\u05D5\u05DF",
2535
+ "gds.action.child": "\u05D9\u05DC\u05D3",
2536
+ "gds.action.family": "\u05DE\u05E9\u05E4\u05D7\u05D4",
2537
+ "gds.action.habit": "\u05D4\u05E8\u05D2\u05DC",
2538
+ "gds.action.goal": "\u05DE\u05D8\u05E8\u05D4",
2539
+ "gds.action.streak": "\u05E8\u05E6\u05E3",
2540
+ "gds.action.reward": "\u05E4\u05E8\u05E1",
2541
+ "gds.action.trophy": "\u05D2\u05D1\u05D9\u05E2",
2542
+ "gds.action.crown": "\u05DB\u05EA\u05E8",
2543
+ "gds.action.pause": "\u05D4\u05E9\u05D4\u05D4",
2544
+ "gds.action.message": "\u05D4\u05D5\u05D3\u05E2\u05D4",
2545
+ "gds.action.mail": "\u05D3\u05D5\u05D0\u05E8",
2546
+ "gds.action.refresh": "\u05E8\u05E2\u05E0\u05DF",
2547
+ "gds.action.trendingUp": "\u05DE\u05D2\u05DE\u05D4 \u05D7\u05D9\u05D5\u05D1\u05D9\u05EA",
2548
+ "gds.action.trendingDown": "\u05DE\u05D2\u05DE\u05D4 \u05E9\u05DC\u05D9\u05DC\u05D9\u05EA",
2549
+ "gds.action.currency": "\u05DE\u05D8\u05D1\u05E2",
2550
+ "gds.action.grid": "\u05E8\u05E9\u05EA",
2551
+ "gds.action.list": "\u05E8\u05E9\u05D9\u05DE\u05D4",
2552
+ "gds.action.logout": "\u05D4\u05EA\u05E0\u05EA\u05E7",
2553
+ "gds.action.notifications": "\u05D4\u05EA\u05E8\u05D0\u05D5\u05EA",
2554
+ "gds.action.back": "\u05D7\u05D6\u05D5\u05E8",
2555
+ "gds.action.eye": "\u05D4\u05E6\u05D2",
2556
+ "gds.action.eyeOff": "\u05D4\u05E1\u05EA\u05E8",
2557
+ "gds.action.help": "\u05E2\u05D6\u05E8\u05D4",
2558
+ "gds.action.filter": "\u05E1\u05E0\u05DF",
2559
+ "gds.action.sort": "\u05DE\u05D9\u05D9\u05DF",
2560
+ "gds.action.export": "\u05D9\u05D9\u05E6\u05D5\u05D0",
2561
+ "gds.action.import": "\u05D9\u05D9\u05D1\u05D5\u05D0",
2562
+ "gds.action.preview": "\u05EA\u05E6\u05D5\u05D2\u05D4 \u05DE\u05E7\u05D3\u05D9\u05DE\u05D4",
2563
+ "gds.action.clone": "\u05E9\u05DB\u05E4\u05D5\u05DC",
2564
+ "gds.action.restore": "\u05E9\u05D7\u05D6\u05D5\u05E8",
2565
+ "gds.action.toggle": "\u05D4\u05D7\u05DC\u05E4\u05D4",
2566
+ "gds.action.search": "\u05D7\u05D9\u05E4\u05D5\u05E9",
2567
+ "gds.action.submit": "\u05E9\u05DC\u05D9\u05D7\u05D4",
2568
+ "gds.action.reset": "\u05D0\u05D9\u05E4\u05D5\u05E1",
2569
+ "gds.action.login": "\u05D4\u05EA\u05D7\u05D1\u05E8\u05D5\u05EA",
2570
+ "gds.action.register": "\u05D4\u05E8\u05E9\u05DE\u05D4",
2571
+ "gds.action.verify": "\u05D0\u05D9\u05DE\u05D5\u05EA",
2572
+ "gds.action.launch": "\u05D4\u05E9\u05E7\u05D4",
2573
+ "gds.action.draft": "\u05D8\u05D9\u05D5\u05D8\u05D4",
2574
+ "gds.action.refer": "\u05D4\u05E4\u05E0\u05D9\u05D4",
2575
+ "gds.action.evidence": "\u05E8\u05D0\u05D9\u05D4",
2576
+ "gds.feedback.saved": "\u05E0\u05E9\u05DE\u05E8",
2577
+ "gds.feedback.error": "\u05DE\u05E9\u05D4\u05D5 \u05D4\u05E9\u05EA\u05D1\u05E9",
2578
+ "gds.feedback.added": "\u05E0\u05D5\u05E1\u05E3",
2579
+ "gds.feedback.edited": "\u05E0\u05E2\u05E8\u05DA",
2580
+ "gds.feedback.deleted": "\u05E0\u05DE\u05D7\u05E7",
2581
+ "gds.feedback.canceled": "\u05D1\u05D5\u05D8\u05DC",
2582
+ "gds.feedback.confirmed": "\u05D0\u05D5\u05E9\u05E8",
2583
+ "gds.feedback.closed": "\u05E0\u05E1\u05D2\u05E8",
2584
+ "gds.feedback.changed": "\u05E9\u05D5\u05E0\u05D4",
2585
+ "gds.feedback.loaded": "\u05E0\u05D8\u05E2\u05DF",
2586
+ "gds.feedback.started": "\u05D4\u05D5\u05EA\u05D7\u05DC",
2587
+ "gds.feedback.opened": "\u05E0\u05E4\u05EA\u05D7",
2588
+ "gds.feedback.sent": "\u05E0\u05E9\u05DC\u05D7",
2589
+ "gds.feedback.replied": "\u05E0\u05E2\u05E0\u05D4",
2590
+ "gds.feedback.forwarded": "\u05D4\u05D5\u05E2\u05D1\u05E8",
2591
+ "gds.feedback.attached": "\u05E6\u05D5\u05E8\u05E3",
2592
+ "gds.feedback.uploaded": "\u05D4\u05D5\u05E2\u05DC\u05D4",
2593
+ "gds.feedback.downloaded": "\u05D4\u05D5\u05E8\u05D3",
2594
+ "gds.feedback.printed": "\u05D4\u05D5\u05D3\u05E4\u05E1",
2595
+ "gds.feedback.copied": "\u05D4\u05D5\u05E2\u05EA\u05E7",
2596
+ "gds.feedback.duplicated": "\u05E9\u05D5\u05DB\u05E4\u05DC",
2597
+ "gds.feedback.checked": "\u05E1\u05D5\u05DE\u05DF",
2598
+ "gds.feedback.unchecked": "\u05D4\u05E1\u05D9\u05DE\u05D5\u05DF \u05D1\u05D5\u05D8\u05DC",
2599
+ "gds.feedback.completed": "\u05D4\u05D5\u05E9\u05DC\u05DD",
2600
+ "gds.feedback.cleared": "\u05E0\u05D5\u05E7\u05D4",
2601
+ "gds.feedback.captured": "\u05E6\u05D5\u05DC\u05DD",
2602
+ "gds.feedback.recorded": "\u05D4\u05D5\u05E7\u05DC\u05D8",
2603
+ "gds.feedback.flipped": "\u05E0\u05D4\u05E4\u05DA",
2604
+ "gds.feedback.flashed": "\u05D4\u05D5\u05D1\u05D6\u05E7",
2605
+ "gds.feedback.done": "\u05D1\u05D5\u05E6\u05E2",
2606
+ "gds.feedback.rewarded": "\u05EA\u05D5\u05D2\u05DE\u05DC",
2607
+ "gds.feedback.paused": "\u05D4\u05D5\u05E9\u05D4\u05D4",
2608
+ "gds.feedback.mailed": "\u05E0\u05E9\u05DC\u05D7",
2609
+ "gds.feedback.refreshed": "\u05E8\u05D5\u05E2\u05E0\u05DF",
2610
+ "gds.feedback.loggedOut": "\u05D4\u05EA\u05E0\u05EA\u05E7",
2611
+ "gds.feedback.filtered": "\u05E1\u05D5\u05E0\u05DF",
2612
+ "gds.feedback.sorted": "\u05DE\u05D5\u05D9\u05DF",
2613
+ "gds.feedback.exported": "\u05D9\u05D5\u05E6\u05D0",
2614
+ "gds.feedback.imported": "\u05D9\u05D5\u05D1\u05D0",
2615
+ "gds.feedback.previewed": "\u05D4\u05D5\u05E6\u05D2",
2616
+ "gds.feedback.cloned": "\u05E9\u05D5\u05DB\u05E4\u05DC",
2617
+ "gds.feedback.restored": "\u05E9\u05D5\u05D7\u05D6\u05E8",
2618
+ "gds.feedback.toggled": "\u05D4\u05D5\u05D7\u05DC\u05E3",
2619
+ "gds.feedback.searched": "\u05D7\u05D9\u05E4\u05D5\u05E9 \u05D4\u05D5\u05E9\u05DC\u05DD",
2620
+ "gds.feedback.submitted": "\u05E0\u05E9\u05DC\u05D7",
2621
+ "gds.feedback.reset": "\u05D0\u05D5\u05E4\u05E1",
2622
+ "gds.feedback.loggedIn": "\u05D4\u05EA\u05D7\u05D1\u05E8",
2623
+ "gds.feedback.registered": "\u05E0\u05E8\u05E9\u05DD",
2624
+ "gds.feedback.verified": "\u05D0\u05D5\u05DE\u05EA",
2625
+ "gds.feedback.launched": "\u05D4\u05D5\u05E9\u05E7",
2626
+ "gds.feedback.drafted": "\u05E0\u05E9\u05DE\u05E8 \u05DB\u05D8\u05D9\u05D5\u05D8\u05D4",
2627
+ "gds.feedback.referred": "\u05D4\u05D5\u05E4\u05E0\u05D4",
2628
+ "gds.aria.themeToggle": "\u05D4\u05D7\u05DC\u05E3 \u05E2\u05E8\u05DB\u05EA \u05E6\u05D1\u05E2\u05D9\u05DD",
2629
+ "gds.state.emptyData": "\u05D0\u05D9\u05DF \u05E0\u05EA\u05D5\u05E0\u05D9\u05DD \u05D6\u05DE\u05D9\u05E0\u05D9\u05DD."
2630
+ };
2631
+
2632
+ // src/locales/hu.ts
2633
+ var hu = {
2634
+ "gds.action.settings": "Be\xE1ll\xEDt\xE1sok",
2635
+ "gds.action.analytics": "Analitika",
2636
+ "gds.action.dashboard": "Ir\xE1ny\xEDt\xF3pult",
2637
+ "gds.action.play": "Lej\xE1tsz\xE1s",
2638
+ "gds.action.start": "Ind\xEDt\xE1s",
2639
+ "gds.action.users": "Felhaszn\xE1l\xF3k",
2640
+ "gds.action.add": "Hozz\xE1ad\xE1s",
2641
+ "gds.action.edit": "Szerkeszt\xE9s",
2642
+ "gds.action.delete": "T\xF6rl\xE9s",
2643
+ "gds.action.save": "Ment\xE9s",
2644
+ "gds.action.cancel": "M\xE9gse",
2645
+ "gds.action.confirm": "Meger\u0151s\xEDt\xE9s",
2646
+ "gds.action.close": "Bez\xE1r\xE1s",
2647
+ "gds.action.language": "Nyelv",
2648
+ "gds.action.theme": "T\xE9ma",
2649
+ "gds.action.home": "F\u0151oldal",
2650
+ "gds.action.inbox": "Be\xE9rkez\u0151",
2651
+ "gds.action.calendar": "Napt\xE1r",
2652
+ "gds.action.gallery": "Gal\xE9ria",
2653
+ "gds.action.history": "El\u0151zm\xE9nyek",
2654
+ "gds.action.profile": "Profil",
2655
+ "gds.action.send": "K\xFCld\xE9s",
2656
+ "gds.action.reply": "V\xE1lasz",
2657
+ "gds.action.forward": "Tov\xE1bb\xEDt\xE1s",
2658
+ "gds.action.attach": "Csatol\xE1s",
2659
+ "gds.action.upload": "Felt\xF6lt\xE9s",
2660
+ "gds.action.download": "Let\xF6lt\xE9s",
2661
+ "gds.action.print": "Nyomtat\xE1s",
2662
+ "gds.action.copy": "M\xE1sol\xE1s",
2663
+ "gds.action.duplicate": "Duplik\xE1l\xE1s",
2664
+ "gds.action.check": "Jel\xF6l\xE9s",
2665
+ "gds.action.uncheck": "Jel\xF6l\xE9s t\xF6rl\xE9se",
2666
+ "gds.action.complete": "K\xE9sz",
2667
+ "gds.action.clear": "Ki\xFCr\xEDt\xE9s",
2668
+ "gds.action.capture": "Felv\xE9tel",
2669
+ "gds.action.record": "R\xF6gz\xEDt\xE9s",
2670
+ "gds.action.flip": "Ford\xEDt\xE1s",
2671
+ "gds.action.flash": "Vaku",
2672
+ "gds.action.course": "Tanfolyam",
2673
+ "gds.action.lesson": "Lecke",
2674
+ "gds.action.certificate": "Tan\xFAs\xEDtv\xE1ny",
2675
+ "gds.action.student": "Tanul\xF3",
2676
+ "gds.action.class": "Oszt\xE1ly",
2677
+ "gds.action.grade": "Oszt\xE1lyzat",
2678
+ "gds.action.child": "Gyermek",
2679
+ "gds.action.family": "Csal\xE1d",
2680
+ "gds.action.habit": "Szok\xE1s",
2681
+ "gds.action.goal": "C\xE9l",
2682
+ "gds.action.streak": "Sorozat",
2683
+ "gds.action.reward": "Jutalom",
2684
+ "gds.action.trophy": "Tr\xF3fea",
2685
+ "gds.action.crown": "Korona",
2686
+ "gds.action.pause": "Sz\xFCnet",
2687
+ "gds.action.message": "\xDCzenet",
2688
+ "gds.action.mail": "Lev\xE9l",
2689
+ "gds.action.refresh": "Friss\xEDt\xE9s",
2690
+ "gds.action.trendingUp": "N\xF6vekv\u0151 trend",
2691
+ "gds.action.trendingDown": "Cs\xF6kken\u0151 trend",
2692
+ "gds.action.currency": "P\xE9nznem",
2693
+ "gds.action.grid": "R\xE1cs",
2694
+ "gds.action.list": "Lista",
2695
+ "gds.action.logout": "Kijelentkez\xE9s",
2696
+ "gds.action.notifications": "\xC9rtes\xEDt\xE9sek",
2697
+ "gds.action.back": "Vissza",
2698
+ "gds.action.eye": "Megtekint\xE9s",
2699
+ "gds.action.eyeOff": "Elrejt\xE9s",
2700
+ "gds.action.help": "S\xFAg\xF3",
2701
+ "gds.action.filter": "Sz\u0171r\u0151",
2702
+ "gds.action.sort": "Rendez\xE9s",
2703
+ "gds.action.export": "Export\xE1l\xE1s",
2704
+ "gds.action.import": "Import\xE1l\xE1s",
2705
+ "gds.action.preview": "El\u0151n\xE9zet",
2706
+ "gds.action.clone": "Kl\xF3noz\xE1s",
2707
+ "gds.action.restore": "Vissza\xE1ll\xEDt\xE1s",
2708
+ "gds.action.toggle": "V\xE1lt\xE1s",
2709
+ "gds.action.search": "Keres\xE9s",
2710
+ "gds.action.submit": "K\xFCld\xE9s",
2711
+ "gds.action.reset": "Alaphelyzet",
2712
+ "gds.action.login": "Bejelentkez\xE9s",
2713
+ "gds.action.register": "Regisztr\xE1ci\xF3",
2714
+ "gds.action.verify": "Ellen\u0151rz\xE9s",
2715
+ "gds.action.launch": "Ind\xEDt\xE1s",
2716
+ "gds.action.draft": "Piszkozat",
2717
+ "gds.action.refer": "Aj\xE1nl\xE1s",
2718
+ "gds.action.evidence": "Bizony\xEDt\xE9k",
2719
+ "gds.feedback.saved": "Mentve",
2720
+ "gds.feedback.error": "Hiba t\xF6rt\xE9nt",
2721
+ "gds.feedback.added": "Hozz\xE1adva",
2722
+ "gds.feedback.edited": "Szerkesztve",
2723
+ "gds.feedback.deleted": "T\xF6r\xF6lve",
2724
+ "gds.feedback.canceled": "Megszak\xEDtva",
2725
+ "gds.feedback.confirmed": "Meger\u0151s\xEDtve",
2726
+ "gds.feedback.closed": "Bez\xE1rva",
2727
+ "gds.feedback.changed": "Megv\xE1ltoztatva",
2728
+ "gds.feedback.loaded": "Bet\xF6ltve",
2729
+ "gds.feedback.started": "Elind\xEDtva",
2730
+ "gds.feedback.opened": "Megnyitva",
2731
+ "gds.feedback.sent": "Elk\xFCldve",
2732
+ "gds.feedback.replied": "Megv\xE1laszolva",
2733
+ "gds.feedback.forwarded": "Tov\xE1bb\xEDtva",
2734
+ "gds.feedback.attached": "Csatolva",
2735
+ "gds.feedback.uploaded": "Felt\xF6ltve",
2736
+ "gds.feedback.downloaded": "Let\xF6ltve",
2737
+ "gds.feedback.printed": "Kinyomtatva",
2738
+ "gds.feedback.copied": "M\xE1solva",
2739
+ "gds.feedback.duplicated": "Duplik\xE1lva",
2740
+ "gds.feedback.checked": "Kijel\xF6lve",
2741
+ "gds.feedback.unchecked": "Kijel\xF6l\xE9s t\xF6r\xF6lve",
2742
+ "gds.feedback.completed": "Befejezve",
2743
+ "gds.feedback.cleared": "Ki\xFCr\xEDtve",
2744
+ "gds.feedback.captured": "R\xF6gz\xEDtve",
2745
+ "gds.feedback.recorded": "Felv\xE9ve",
2746
+ "gds.feedback.flipped": "Megford\xEDtva",
2747
+ "gds.feedback.flashed": "Villantva",
2748
+ "gds.feedback.done": "K\xE9sz",
2749
+ "gds.feedback.rewarded": "Jutalmazva",
2750
+ "gds.feedback.paused": "Sz\xFCneteltetve",
2751
+ "gds.feedback.mailed": "Elk\xFCldve",
2752
+ "gds.feedback.refreshed": "Friss\xEDtve",
2753
+ "gds.feedback.loggedOut": "Kijelentkezve",
2754
+ "gds.feedback.filtered": "Sz\u0171rve",
2755
+ "gds.feedback.sorted": "Rendezve",
2756
+ "gds.feedback.exported": "Export\xE1lva",
2757
+ "gds.feedback.imported": "Import\xE1lva",
2758
+ "gds.feedback.previewed": "El\u0151n\xE9zet bet\xF6ltve",
2759
+ "gds.feedback.cloned": "Kl\xF3nozva",
2760
+ "gds.feedback.restored": "Vissza\xE1ll\xEDtva",
2761
+ "gds.feedback.toggled": "\xC1tv\xE1ltva",
2762
+ "gds.feedback.searched": "Keresve",
2763
+ "gds.feedback.submitted": "Elk\xFCldve",
2764
+ "gds.feedback.reset": "Alaphelyzetbe \xE1ll\xEDtva",
2765
+ "gds.feedback.loggedIn": "Bejelentkezve",
2766
+ "gds.feedback.registered": "Regisztr\xE1lva",
2767
+ "gds.feedback.verified": "Ellen\u0151rizve",
2768
+ "gds.feedback.launched": "Elind\xEDtva",
2769
+ "gds.feedback.drafted": "L\xE9trehozva",
2770
+ "gds.feedback.referred": "Aj\xE1nlva",
2771
+ "gds.aria.themeToggle": "Sz\xEDns\xE9ma v\xE1lt\xE1sa",
2772
+ "gds.state.emptyData": "Nincs el\xE9rhet\u0151 adat."
2773
+ };
2774
+
2775
+ // src/locales/it.ts
2776
+ var it = {
2777
+ "gds.action.settings": "Impostazioni",
2778
+ "gds.action.analytics": "Analitica",
2779
+ "gds.action.dashboard": "Dashboard",
2780
+ "gds.action.play": "Riproduci",
2781
+ "gds.action.start": "Inizia",
2782
+ "gds.action.users": "Utenti",
2783
+ "gds.action.add": "Aggiungi",
2784
+ "gds.action.edit": "Modifica",
2785
+ "gds.action.delete": "Elimina",
2786
+ "gds.action.save": "Salva",
2787
+ "gds.action.cancel": "Annulla",
2788
+ "gds.action.confirm": "Conferma",
2789
+ "gds.action.close": "Chiudi",
2790
+ "gds.action.language": "Lingua",
2791
+ "gds.action.theme": "Tema",
2792
+ "gds.action.home": "Home",
2793
+ "gds.action.inbox": "Posta in arrivo",
2794
+ "gds.action.calendar": "Calendario",
2795
+ "gds.action.gallery": "Galleria",
2796
+ "gds.action.history": "Cronologia",
2797
+ "gds.action.profile": "Profilo",
2798
+ "gds.action.send": "Invia",
2799
+ "gds.action.reply": "Rispondi",
2800
+ "gds.action.forward": "Inoltra",
2801
+ "gds.action.attach": "Allega",
2802
+ "gds.action.upload": "Carica",
2803
+ "gds.action.download": "Scarica",
2804
+ "gds.action.print": "Stampa",
2805
+ "gds.action.copy": "Copia",
2806
+ "gds.action.duplicate": "Duplica",
2807
+ "gds.action.check": "Seleziona",
2808
+ "gds.action.uncheck": "Deseleziona",
2809
+ "gds.action.complete": "Completa",
2810
+ "gds.action.clear": "Pulisci",
2811
+ "gds.action.capture": "Cattura",
2812
+ "gds.action.record": "Registra",
2813
+ "gds.action.flip": "Capovolgi",
2814
+ "gds.action.flash": "Flash",
2815
+ "gds.action.course": "Corso",
2816
+ "gds.action.lesson": "Lezione",
2817
+ "gds.action.certificate": "Certificato",
2818
+ "gds.action.student": "Studente",
2819
+ "gds.action.class": "Classe",
2820
+ "gds.action.grade": "Voto",
2821
+ "gds.action.child": "Bambino",
2822
+ "gds.action.family": "Famiglia",
2823
+ "gds.action.habit": "Abitudine",
2824
+ "gds.action.goal": "Obiettivo",
2825
+ "gds.action.streak": "Serie",
2826
+ "gds.action.reward": "Ricompensa",
2827
+ "gds.action.trophy": "Trofeo",
2828
+ "gds.action.crown": "Corona",
2829
+ "gds.action.pause": "Pausa",
2830
+ "gds.action.message": "Messaggio",
2831
+ "gds.action.mail": "Posta",
2832
+ "gds.action.refresh": "Aggiorna",
2833
+ "gds.action.trendingUp": "In crescita",
2834
+ "gds.action.trendingDown": "In calo",
2835
+ "gds.action.currency": "Valuta",
2836
+ "gds.action.grid": "Griglia",
2837
+ "gds.action.list": "Elenco",
2838
+ "gds.action.logout": "Esci",
2839
+ "gds.action.notifications": "Notifiche",
2840
+ "gds.action.back": "Indietro",
2841
+ "gds.action.eye": "Mostra",
2842
+ "gds.action.eyeOff": "Nascondi",
2843
+ "gds.action.help": "Aiuto",
2844
+ "gds.action.filter": "Filtra",
2845
+ "gds.action.sort": "Ordina",
2846
+ "gds.action.export": "Esporta",
2847
+ "gds.action.import": "Importa",
2848
+ "gds.action.preview": "Anteprima",
2849
+ "gds.action.clone": "Clona",
2850
+ "gds.action.restore": "Ripristina",
2851
+ "gds.action.toggle": "Attiva/Disattiva",
2852
+ "gds.action.search": "Cerca",
2853
+ "gds.action.submit": "Invia",
2854
+ "gds.action.reset": "Reimposta",
2855
+ "gds.action.login": "Accedi",
2856
+ "gds.action.register": "Registrati",
2857
+ "gds.action.verify": "Verifica",
2858
+ "gds.action.launch": "Avvia",
2859
+ "gds.action.draft": "Bozza",
2860
+ "gds.action.refer": "Segnala",
2861
+ "gds.action.evidence": "Prova",
2862
+ "gds.feedback.saved": "Salvato",
2863
+ "gds.feedback.error": "Si \xE8 verificato un errore",
2864
+ "gds.feedback.added": "Aggiunto",
2865
+ "gds.feedback.edited": "Modificato",
2866
+ "gds.feedback.deleted": "Eliminato",
2867
+ "gds.feedback.canceled": "Annullato",
2868
+ "gds.feedback.confirmed": "Confermato",
2869
+ "gds.feedback.closed": "Chiuso",
2870
+ "gds.feedback.changed": "Cambiato",
2871
+ "gds.feedback.loaded": "Caricato",
2872
+ "gds.feedback.started": "Iniziato",
2873
+ "gds.feedback.opened": "Aperto",
2874
+ "gds.feedback.sent": "Inviato",
2875
+ "gds.feedback.replied": "Risposto",
2876
+ "gds.feedback.forwarded": "Inoltrato",
2877
+ "gds.feedback.attached": "Allegato",
2878
+ "gds.feedback.uploaded": "Caricato",
2879
+ "gds.feedback.downloaded": "Scaricato",
2880
+ "gds.feedback.printed": "Stampato",
2881
+ "gds.feedback.copied": "Copiato",
2882
+ "gds.feedback.duplicated": "Duplicato",
2883
+ "gds.feedback.checked": "Selezionato",
2884
+ "gds.feedback.unchecked": "Deselezionato",
2885
+ "gds.feedback.completed": "Completato",
2886
+ "gds.feedback.cleared": "Svuotato",
2887
+ "gds.feedback.captured": "Catturato",
2888
+ "gds.feedback.recorded": "Registrato",
2889
+ "gds.feedback.flipped": "Capovolto",
2890
+ "gds.feedback.flashed": "Lampeggiato",
2891
+ "gds.feedback.done": "Fatto",
2892
+ "gds.feedback.rewarded": "Premiato",
2893
+ "gds.feedback.paused": "In pausa",
2894
+ "gds.feedback.mailed": "Inviato",
2895
+ "gds.feedback.refreshed": "Aggiornato",
2896
+ "gds.feedback.loggedOut": "Disconnesso",
2897
+ "gds.feedback.filtered": "Filtrato",
2898
+ "gds.feedback.sorted": "Ordinato",
2899
+ "gds.feedback.exported": "Esportato",
2900
+ "gds.feedback.imported": "Importato",
2901
+ "gds.feedback.previewed": "Visualizzato",
2902
+ "gds.feedback.cloned": "Clonato",
2903
+ "gds.feedback.restored": "Ripristinato",
2904
+ "gds.feedback.toggled": "Attivato",
2905
+ "gds.feedback.searched": "Cercato",
2906
+ "gds.feedback.submitted": "Inviato",
2907
+ "gds.feedback.reset": "Reimpostato",
2908
+ "gds.feedback.loggedIn": "Accesso effettuato",
2909
+ "gds.feedback.registered": "Registrato",
2910
+ "gds.feedback.verified": "Verificato",
2911
+ "gds.feedback.launched": "Avviato",
2912
+ "gds.feedback.drafted": "Bozza salvata",
2913
+ "gds.feedback.referred": "Segnalato",
2914
+ "gds.aria.themeToggle": "Cambia schema colori",
2915
+ "gds.state.emptyData": "Nessun dato disponibile."
2916
+ };
2917
+
2918
+ // src/locales/ru.ts
2919
+ var ru = {
2920
+ "gds.action.settings": "\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438",
2921
+ "gds.action.analytics": "\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430",
2922
+ "gds.action.dashboard": "\u041F\u0430\u043D\u0435\u043B\u044C",
2923
+ "gds.action.play": "\u0412\u043E\u0441\u043F\u0440\u043E\u0438\u0437\u0432\u0435\u0441\u0442\u0438",
2924
+ "gds.action.start": "\u0421\u0442\u0430\u0440\u0442",
2925
+ "gds.action.users": "\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438",
2926
+ "gds.action.add": "\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C",
2927
+ "gds.action.edit": "\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C",
2928
+ "gds.action.delete": "\u0423\u0434\u0430\u043B\u0438\u0442\u044C",
2929
+ "gds.action.save": "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C",
2930
+ "gds.action.cancel": "\u041E\u0442\u043C\u0435\u043D\u0430",
2931
+ "gds.action.confirm": "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C",
2932
+ "gds.action.close": "\u0417\u0430\u043A\u0440\u044B\u0442\u044C",
2933
+ "gds.action.language": "\u042F\u0437\u044B\u043A",
2934
+ "gds.action.theme": "\u0422\u0435\u043C\u0430",
2935
+ "gds.action.home": "\u0413\u043B\u0430\u0432\u043D\u0430\u044F",
2936
+ "gds.action.inbox": "\u0412\u0445\u043E\u0434\u044F\u0449\u0438\u0435",
2937
+ "gds.action.calendar": "\u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C",
2938
+ "gds.action.gallery": "\u0413\u0430\u043B\u0435\u0440\u0435\u044F",
2939
+ "gds.action.history": "\u0418\u0441\u0442\u043E\u0440\u0438\u044F",
2940
+ "gds.action.profile": "\u041F\u0440\u043E\u0444\u0438\u043B\u044C",
2941
+ "gds.action.send": "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C",
2942
+ "gds.action.reply": "\u041E\u0442\u0432\u0435\u0442\u0438\u0442\u044C",
2943
+ "gds.action.forward": "\u041F\u0435\u0440\u0435\u0441\u043B\u0430\u0442\u044C",
2944
+ "gds.action.attach": "\u041F\u0440\u0438\u043A\u0440\u0435\u043F\u0438\u0442\u044C",
2945
+ "gds.action.upload": "\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C",
2946
+ "gds.action.download": "\u0421\u043A\u0430\u0447\u0430\u0442\u044C",
2947
+ "gds.action.print": "\u041F\u0435\u0447\u0430\u0442\u044C",
2948
+ "gds.action.copy": "\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C",
2949
+ "gds.action.duplicate": "\u0414\u0443\u0431\u043B\u0438\u0440\u043E\u0432\u0430\u0442\u044C",
2950
+ "gds.action.check": "\u041E\u0442\u043C\u0435\u0442\u0438\u0442\u044C",
2951
+ "gds.action.uncheck": "\u0421\u043D\u044F\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443",
2952
+ "gds.action.complete": "\u0417\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C",
2953
+ "gds.action.clear": "\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C",
2954
+ "gds.action.capture": "\u0421\u043D\u044F\u0442\u044C",
2955
+ "gds.action.record": "\u0417\u0430\u043F\u0438\u0441\u044C",
2956
+ "gds.action.flip": "\u041F\u0435\u0440\u0435\u0432\u0435\u0440\u043D\u0443\u0442\u044C",
2957
+ "gds.action.flash": "\u0412\u0441\u043F\u044B\u0448\u043A\u0430",
2958
+ "gds.action.course": "\u041A\u0443\u0440\u0441",
2959
+ "gds.action.lesson": "\u0423\u0440\u043E\u043A",
2960
+ "gds.action.certificate": "\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043A\u0430\u0442",
2961
+ "gds.action.student": "\u0421\u0442\u0443\u0434\u0435\u043D\u0442",
2962
+ "gds.action.class": "\u041A\u043B\u0430\u0441\u0441",
2963
+ "gds.action.grade": "\u041E\u0446\u0435\u043D\u043A\u0430",
2964
+ "gds.action.child": "\u0420\u0435\u0431\u0435\u043D\u043E\u043A",
2965
+ "gds.action.family": "\u0421\u0435\u043C\u044C\u044F",
2966
+ "gds.action.habit": "\u041F\u0440\u0438\u0432\u044B\u0447\u043A\u0430",
2967
+ "gds.action.goal": "\u0426\u0435\u043B\u044C",
2968
+ "gds.action.streak": "\u0421\u0435\u0440\u0438\u044F",
2969
+ "gds.action.reward": "\u041D\u0430\u0433\u0440\u0430\u0434\u0430",
2970
+ "gds.action.trophy": "\u0422\u0440\u043E\u0444\u0435\u0439",
2971
+ "gds.action.crown": "\u041A\u043E\u0440\u043E\u043D\u0430",
2972
+ "gds.action.pause": "\u041F\u0430\u0443\u0437\u0430",
2973
+ "gds.action.message": "\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",
2974
+ "gds.action.mail": "\u041F\u043E\u0447\u0442\u0430",
2975
+ "gds.action.refresh": "\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C",
2976
+ "gds.action.trendingUp": "\u0422\u0435\u043D\u0434\u0435\u043D\u0446\u0438\u044F \u0432\u0432\u0435\u0440\u0445",
2977
+ "gds.action.trendingDown": "\u0422\u0435\u043D\u0434\u0435\u043D\u0446\u0438\u044F \u0432\u043D\u0438\u0437",
2978
+ "gds.action.currency": "\u0412\u0430\u043B\u044E\u0442\u0430",
2979
+ "gds.action.grid": "\u0421\u0435\u0442\u043A\u0430",
2980
+ "gds.action.list": "\u0421\u043F\u0438\u0441\u043E\u043A",
2981
+ "gds.action.logout": "\u0412\u044B\u0439\u0442\u0438",
2982
+ "gds.action.notifications": "\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u044F",
2983
+ "gds.action.back": "\u041D\u0430\u0437\u0430\u0434",
2984
+ "gds.action.eye": "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",
2985
+ "gds.action.eyeOff": "\u0421\u043A\u0440\u044B\u0442\u044C",
2986
+ "gds.action.help": "\u041F\u043E\u043C\u043E\u0449\u044C",
2987
+ "gds.action.filter": "\u0424\u0438\u043B\u044C\u0442\u0440",
2988
+ "gds.action.sort": "\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430",
2989
+ "gds.action.export": "\u042D\u043A\u0441\u043F\u043E\u0440\u0442",
2990
+ "gds.action.import": "\u0418\u043C\u043F\u043E\u0440\u0442",
2991
+ "gds.action.preview": "\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440",
2992
+ "gds.action.clone": "\u041A\u043B\u043E\u043D\u0438\u0440\u043E\u0432\u0430\u0442\u044C",
2993
+ "gds.action.restore": "\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C",
2994
+ "gds.action.toggle": "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C",
2995
+ "gds.action.search": "\u041F\u043E\u0438\u0441\u043A",
2996
+ "gds.action.submit": "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C",
2997
+ "gds.action.reset": "\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C",
2998
+ "gds.action.login": "\u0412\u043E\u0439\u0442\u0438",
2999
+ "gds.action.register": "\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F",
3000
+ "gds.action.verify": "\u041F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C",
3001
+ "gds.action.launch": "\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C",
3002
+ "gds.action.draft": "\u0427\u0435\u0440\u043D\u043E\u0432\u0438\u043A",
3003
+ "gds.action.refer": "\u041D\u0430\u043F\u0440\u0430\u0432\u0438\u0442\u044C",
3004
+ "gds.action.evidence": "\u0414\u043E\u043A\u0430\u0437\u0430\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u043E",
3005
+ "gds.feedback.saved": "\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043E",
3006
+ "gds.feedback.error": "\u0427\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A",
3007
+ "gds.feedback.added": "\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u043E",
3008
+ "gds.feedback.edited": "\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u043E",
3009
+ "gds.feedback.deleted": "\u0423\u0434\u0430\u043B\u0435\u043D\u043E",
3010
+ "gds.feedback.canceled": "\u041E\u0442\u043C\u0435\u043D\u0435\u043D\u043E",
3011
+ "gds.feedback.confirmed": "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u043E",
3012
+ "gds.feedback.closed": "\u0417\u0430\u043A\u0440\u044B\u0442\u043E",
3013
+ "gds.feedback.changed": "\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u043E",
3014
+ "gds.feedback.loaded": "\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043D\u043E",
3015
+ "gds.feedback.started": "\u041D\u0430\u0447\u0430\u0442\u043E",
3016
+ "gds.feedback.opened": "\u041E\u0442\u043A\u0440\u044B\u0442\u043E",
3017
+ "gds.feedback.sent": "\u041E\u0442\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043E",
3018
+ "gds.feedback.replied": "\u041E\u0442\u0432\u0435\u0447\u0435\u043D\u043E",
3019
+ "gds.feedback.forwarded": "\u041F\u0435\u0440\u0435\u0441\u043B\u0430\u043D\u043E",
3020
+ "gds.feedback.attached": "\u041F\u0440\u0438\u043A\u0440\u0435\u043F\u043B\u0435\u043D\u043E",
3021
+ "gds.feedback.uploaded": "\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043D\u043E",
3022
+ "gds.feedback.downloaded": "\u0421\u043A\u0430\u0447\u0430\u043D\u043E",
3023
+ "gds.feedback.printed": "\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u043D\u043E",
3024
+ "gds.feedback.copied": "\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3025
+ "gds.feedback.duplicated": "\u0414\u0443\u0431\u043B\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3026
+ "gds.feedback.checked": "\u041E\u0442\u043C\u0435\u0447\u0435\u043D\u043E",
3027
+ "gds.feedback.unchecked": "\u041E\u0442\u043C\u0435\u0442\u043A\u0430 \u0441\u043D\u044F\u0442\u0430",
3028
+ "gds.feedback.completed": "\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E",
3029
+ "gds.feedback.cleared": "\u041E\u0447\u0438\u0449\u0435\u043D\u043E",
3030
+ "gds.feedback.captured": "\u0421\u043D\u044F\u0442\u043E",
3031
+ "gds.feedback.recorded": "\u0417\u0430\u043F\u0438\u0441\u0430\u043D\u043E",
3032
+ "gds.feedback.flipped": "\u041F\u0435\u0440\u0435\u0432\u0435\u0440\u043D\u0443\u0442\u043E",
3033
+ "gds.feedback.flashed": "\u0412\u0441\u043F\u044B\u0448\u043A\u0430",
3034
+ "gds.feedback.done": "\u0413\u043E\u0442\u043E\u0432\u043E",
3035
+ "gds.feedback.rewarded": "\u041D\u0430\u0433\u0440\u0430\u0436\u0434\u0435\u043D\u043E",
3036
+ "gds.feedback.paused": "\u041F\u0440\u0438\u043E\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043E",
3037
+ "gds.feedback.mailed": "\u041E\u0442\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043E",
3038
+ "gds.feedback.refreshed": "\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u043E",
3039
+ "gds.feedback.loggedOut": "\u0412\u044B\u0448\u0435\u043B",
3040
+ "gds.feedback.filtered": "\u041E\u0442\u0444\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u043D\u043E",
3041
+ "gds.feedback.sorted": "\u041E\u0442\u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3042
+ "gds.feedback.exported": "\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3043
+ "gds.feedback.imported": "\u0418\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3044
+ "gds.feedback.previewed": "\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u043D\u043E",
3045
+ "gds.feedback.cloned": "\u041A\u043B\u043E\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3046
+ "gds.feedback.restored": "\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043E",
3047
+ "gds.feedback.toggled": "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0435\u043D\u043E",
3048
+ "gds.feedback.searched": "\u041D\u0430\u0439\u0434\u0435\u043D\u043E",
3049
+ "gds.feedback.submitted": "\u041E\u0442\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043E",
3050
+ "gds.feedback.reset": "\u0421\u0431\u0440\u043E\u0448\u0435\u043D\u043E",
3051
+ "gds.feedback.loggedIn": "\u0412\u0445\u043E\u0434 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D",
3052
+ "gds.feedback.registered": "\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u043E",
3053
+ "gds.feedback.verified": "\u041F\u0440\u043E\u0432\u0435\u0440\u0435\u043D\u043E",
3054
+ "gds.feedback.launched": "\u0417\u0430\u043F\u0443\u0449\u0435\u043D\u043E",
3055
+ "gds.feedback.drafted": "\u0427\u0435\u0440\u043D\u043E\u0432\u0438\u043A \u0441\u043E\u0437\u0434\u0430\u043D",
3056
+ "gds.feedback.referred": "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043E",
3057
+ "gds.aria.themeToggle": "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0446\u0432\u0435\u0442\u043E\u0432\u0443\u044E \u0441\u0445\u0435\u043C\u0443",
3058
+ "gds.state.emptyData": "\u041D\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445."
3059
+ };
3060
+
3061
+ // src/locales/index.ts
3062
+ var gdsLocales = {
3063
+ en,
3064
+ es,
3065
+ hu,
3066
+ de,
3067
+ fr,
3068
+ it,
3069
+ ru,
3070
+ he,
3071
+ ar
3072
+ };
3073
+ function getGdsMessages(locale) {
3074
+ return gdsLocales[locale] ?? en;
3075
+ }
3076
+
3077
+ export {
3078
+ StatusBadge,
3079
+ EmptyState,
3080
+ GdsIcons,
3081
+ GdsVocabulary,
3082
+ MetricCard,
3083
+ ProgressCard,
3084
+ SectionPanel,
3085
+ ConsumerSection,
3086
+ ConsumerDashboardGrid,
3087
+ EditorialCard,
3088
+ ProductCard,
3089
+ PublicProductCard,
3090
+ DataToolbar,
3091
+ StateBlock,
3092
+ BrowseSurface,
3093
+ resolveAccentPanelStyles,
3094
+ AccentPanel,
3095
+ PublicNav,
3096
+ PublicShell,
3097
+ PublicSiteFooter,
3098
+ PublicBrandFooter,
3099
+ AuthShell,
3100
+ ArticleShell,
3101
+ CtaButtonGroup,
3102
+ DocsPageShell,
3103
+ EditorialHero,
3104
+ FeatureBand,
3105
+ FormField,
3106
+ MediaField,
3107
+ MediaCard,
3108
+ AccessSummary,
3109
+ PageHeader,
3110
+ FilterDrawer,
3111
+ PlaceholderPanel,
3112
+ SimpleDataTable,
3113
+ StatsSection,
3114
+ ar,
3115
+ de,
3116
+ en,
3117
+ es,
3118
+ fr,
3119
+ he,
3120
+ hu,
3121
+ it,
3122
+ ru,
3123
+ gdsLocales,
3124
+ getGdsMessages
3125
+ };