@svadmin/ui 0.68.1 → 0.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +52 -0
  2. package/dist/app.css +7627 -853
  3. package/dist/app.theme.css +7676 -850
  4. package/dist/components/AboutSettings.svelte +8 -8
  5. package/dist/components/ActivityFeed.svelte +25 -40
  6. package/dist/components/AdminApp.svelte +14 -14
  7. package/dist/components/AnomalyBadge.svelte +6 -5
  8. package/dist/components/ApiSettings.svelte +8 -8
  9. package/dist/components/AppearanceSettings.svelte +13 -13
  10. package/dist/components/ApprovalActionCard.svelte +35 -35
  11. package/dist/components/AuditLogDrawer.svelte +17 -17
  12. package/dist/components/AuditLogViewer.svelte +42 -42
  13. package/dist/components/AuthPageShell.svelte +11 -11
  14. package/dist/components/AutoForm.svelte +28 -28
  15. package/dist/components/AutoSaveIndicator.svelte +8 -8
  16. package/dist/components/AutoTable.svelte +141 -141
  17. package/dist/components/BatchActionBar.svelte +15 -15
  18. package/dist/components/Breadcrumbs.svelte +4 -4
  19. package/dist/components/CancelTaskButton.svelte +2 -2
  20. package/dist/components/CanvasAnnotation.svelte +27 -27
  21. package/dist/components/Cascader.svelte +20 -20
  22. package/dist/components/CatchAllNavigate.svelte +2 -2
  23. package/dist/components/ColumnHeaderFilter.svelte +21 -21
  24. package/dist/components/ColumnSettings.svelte +20 -20
  25. package/dist/components/ComboboxField.svelte +17 -17
  26. package/dist/components/CommandPalette.svelte +23 -23
  27. package/dist/components/ConfigErrorScreen.svelte +27 -27
  28. package/dist/components/ConfirmDialog.svelte +1 -1
  29. package/dist/components/CreateInferencer.svelte +1 -1
  30. package/dist/components/CreatePage.svelte +1 -1
  31. package/dist/components/DecisionTable.svelte +39 -39
  32. package/dist/components/DetailDrawer.svelte +9 -9
  33. package/dist/components/DevTools.svelte +96 -96
  34. package/dist/components/DraggableGrid.svelte +6 -6
  35. package/dist/components/DraggableHeader.svelte +1 -1
  36. package/dist/components/DraggableRowTable.svelte +13 -13
  37. package/dist/components/DrawerForm.svelte +10 -10
  38. package/dist/components/DynamicFormList.svelte +19 -19
  39. package/dist/components/EditInferencer.svelte +3 -3
  40. package/dist/components/EditInferencer.svelte.d.ts +1 -1
  41. package/dist/components/EditPage.svelte +1 -1
  42. package/dist/components/EditableTable.svelte +30 -30
  43. package/dist/components/EmptyState.svelte +6 -6
  44. package/dist/components/ErrorBoundary.svelte +8 -8
  45. package/dist/components/ErrorComponent.svelte +5 -5
  46. package/dist/components/FieldRenderer.svelte +30 -30
  47. package/dist/components/FilterBuilder.svelte +31 -31
  48. package/dist/components/FilterDropdown.svelte +26 -26
  49. package/dist/components/ForgotPasswordPage.svelte +14 -14
  50. package/dist/components/GanttChart.svelte +30 -30
  51. package/dist/components/Header.svelte +13 -13
  52. package/dist/components/ImageCropper.svelte +21 -21
  53. package/dist/components/ImportWizard.svelte +49 -49
  54. package/dist/components/InferencerPanel.svelte +35 -35
  55. package/dist/components/InfiniteList.svelte +8 -8
  56. package/dist/components/InlineEdit.svelte +5 -5
  57. package/dist/components/IntegrationsSettings.svelte +5 -5
  58. package/dist/components/JsonSchemaForm.svelte +18 -18
  59. package/dist/components/KanbanBoard.svelte +30 -30
  60. package/dist/components/KeyboardShortcuts.svelte +8 -8
  61. package/dist/components/Layout.svelte +22 -22
  62. package/dist/components/LazyPage.svelte +4 -4
  63. package/dist/components/ListInferencer.svelte +2 -2
  64. package/dist/components/ListPage.svelte +1 -1
  65. package/dist/components/LiveIndicator.svelte +11 -11
  66. package/dist/components/LoginPage.svelte +27 -27
  67. package/dist/components/MasterDetailView.svelte +24 -24
  68. package/dist/components/MediaLibraryModal.svelte +37 -37
  69. package/dist/components/MentionsInput.svelte +11 -11
  70. package/dist/components/MetricStrip.svelte +18 -58
  71. package/dist/components/ModalForm.svelte +8 -8
  72. package/dist/components/MultiTabKeepAlive.svelte +14 -14
  73. package/dist/components/NavigateToResource.svelte +3 -3
  74. package/dist/components/NotificationsSettings.svelte +4 -4
  75. package/dist/components/OfflineSyncBanner.svelte +28 -28
  76. package/dist/components/PageHeader.svelte +12 -13
  77. package/dist/components/PageSkeleton.svelte +26 -26
  78. package/dist/components/PasswordInput.svelte +11 -11
  79. package/dist/components/PdfDocumentViewer.svelte +45 -45
  80. package/dist/components/PermissionMatrix.svelte +48 -48
  81. package/dist/components/PivotTable.svelte +21 -21
  82. package/dist/components/PresenceAvatarGroup.svelte +11 -11
  83. package/dist/components/PrintableBill.svelte +43 -43
  84. package/dist/components/ProfilePage.svelte +34 -34
  85. package/dist/components/RecordDetailDrawer.svelte +15 -15
  86. package/dist/components/RegisterPage.svelte +9 -9
  87. package/dist/components/ResourceInferencer.svelte +3 -3
  88. package/dist/components/ResourceOperationsPage.svelte +44 -44
  89. package/dist/components/RetryTaskButton.svelte +2 -2
  90. package/dist/components/RolesSettings.svelte +4 -4
  91. package/dist/components/RowActions.svelte +10 -10
  92. package/dist/components/SecuritySettings.svelte +8 -8
  93. package/dist/components/SensitiveDataMask.svelte +8 -8
  94. package/dist/components/SettingsPage.svelte +17 -17
  95. package/dist/components/ShowInferencer.svelte +3 -3
  96. package/dist/components/ShowInferencer.svelte.d.ts +1 -1
  97. package/dist/components/ShowPage.svelte +24 -24
  98. package/dist/components/Sidebar.svelte +63 -63
  99. package/dist/components/SidebarItem.svelte +35 -35
  100. package/dist/components/SignaturePad.svelte +16 -16
  101. package/dist/components/SplitPaneLayout.svelte +10 -10
  102. package/dist/components/SpreadsheetView.svelte +35 -35
  103. package/dist/components/StatsCard.svelte +12 -25
  104. package/dist/components/StepForm.svelte +23 -23
  105. package/dist/components/StepsForm.svelte +17 -17
  106. package/dist/components/SvadminLogo.svelte +1 -1
  107. package/dist/components/SystemPageShell.svelte +6 -6
  108. package/dist/components/TableSummary.svelte +8 -8
  109. package/dist/components/TaskDetails.svelte +29 -29
  110. package/dist/components/TaskList.svelte +17 -17
  111. package/dist/components/TaskProgressBar.svelte +4 -4
  112. package/dist/components/TaskQueueDrawer.svelte +44 -44
  113. package/dist/components/TaskStatusBadge.svelte +5 -5
  114. package/dist/components/TenantSwitcher.svelte +17 -17
  115. package/dist/components/ThemedTitle.svelte +4 -4
  116. package/dist/components/Toast.svelte +2 -2
  117. package/dist/components/Transfer.svelte +40 -40
  118. package/dist/components/TreeSelect.svelte +32 -32
  119. package/dist/components/TreeTable.svelte +28 -28
  120. package/dist/components/TwoFactorAuthPage.svelte +15 -15
  121. package/dist/components/UndoableNotification.svelte +10 -10
  122. package/dist/components/UpdatePasswordPage.svelte +6 -6
  123. package/dist/components/VersionDiffViewer.svelte +38 -38
  124. package/dist/components/VirtualTable.svelte +9 -9
  125. package/dist/components/Watermark.svelte +2 -2
  126. package/dist/components/account/CompanyProfilePage.svelte +4 -4
  127. package/dist/components/account/GetStartedPage.svelte +19 -19
  128. package/dist/components/account/ImportMembersPage.svelte +42 -42
  129. package/dist/components/account/MembersStarterPage.svelte +18 -18
  130. package/dist/components/account/SecurityLogPage.svelte +1 -1
  131. package/dist/components/account/SettingsEnterprisePage.svelte +7 -7
  132. package/dist/components/account/SettingsPlainPage.svelte +3 -3
  133. package/dist/components/account/SettingsSidebarPage.svelte +5 -5
  134. package/dist/components/account/TeamMembersPage.svelte +2 -2
  135. package/dist/components/account/UserProfilePage.svelte +3 -3
  136. package/dist/components/buttons/CloneButton.svelte +2 -2
  137. package/dist/components/buttons/CreateButton.svelte +2 -2
  138. package/dist/components/buttons/DeleteButton.svelte +4 -4
  139. package/dist/components/buttons/EditButton.svelte +2 -2
  140. package/dist/components/buttons/ExportButton.svelte +2 -2
  141. package/dist/components/buttons/ImportButton.svelte +3 -3
  142. package/dist/components/buttons/ListButton.svelte +2 -2
  143. package/dist/components/buttons/RefreshButton.svelte +2 -2
  144. package/dist/components/buttons/SaveButton.svelte +3 -3
  145. package/dist/components/buttons/ShowButton.svelte +2 -2
  146. package/dist/components/charts/BarChart.svelte +3 -3
  147. package/dist/components/charts/LineChart.svelte +3 -3
  148. package/dist/components/charts/PieChart.svelte +7 -7
  149. package/dist/components/content/ApiKeyList.svelte +12 -12
  150. package/dist/components/content/AuditTimeline.svelte +18 -18
  151. package/dist/components/content/ContentPageHeader.svelte +9 -9
  152. package/dist/components/content/ContentPageShell.svelte +2 -2
  153. package/dist/components/content/DataState.svelte +8 -8
  154. package/dist/components/content/DescriptionList.svelte +25 -25
  155. package/dist/components/content/FeedbackNotice.svelte +11 -11
  156. package/dist/components/content/FileList.svelte +2 -2
  157. package/dist/components/content/FilterToolbar.svelte +15 -15
  158. package/dist/components/content/ImportDropzone.svelte +6 -6
  159. package/dist/components/content/IntegrationCard.svelte +4 -4
  160. package/dist/components/content/MediaThumbnail.svelte +16 -16
  161. package/dist/components/content/MemberList.svelte +2 -2
  162. package/dist/components/content/MetricBlock.svelte +7 -7
  163. package/dist/components/content/NetworkTable.svelte +1 -1
  164. package/dist/components/content/NetworkUserCard.svelte +12 -12
  165. package/dist/components/content/OtpInput.svelte +2 -2
  166. package/dist/components/content/PageToolbar.svelte +3 -3
  167. package/dist/components/content/ProjectCard.svelte +11 -11
  168. package/dist/components/content/SectionHeader.svelte +5 -5
  169. package/dist/components/content/SecurityEventTable.svelte +2 -2
  170. package/dist/components/content/SettingsFieldRow.svelte +5 -5
  171. package/dist/components/content/SettingsGroup.svelte +7 -7
  172. package/dist/components/content/StatusBadge.svelte +6 -6
  173. package/dist/components/content/StatusTabs.svelte +28 -28
  174. package/dist/components/content/SystemErrorState.svelte +2 -2
  175. package/dist/components/content/TeamCard.svelte +6 -6
  176. package/dist/components/content/TwoFactorStepper.svelte +3 -3
  177. package/dist/components/content/WorkspaceActionBar.svelte +12 -12
  178. package/dist/components/content/WorkspaceInspector.svelte +11 -11
  179. package/dist/components/content/WorkspaceLayout.svelte +5 -5
  180. package/dist/components/content/WorkspaceSplitPane.svelte +4 -4
  181. package/dist/components/content/WorkspaceStageStepper.svelte +16 -16
  182. package/dist/components/content/WorkspaceTabBar.svelte +16 -16
  183. package/dist/components/fields/ArrayField.svelte +12 -12
  184. package/dist/components/fields/AvatarField.svelte +15 -15
  185. package/dist/components/fields/BooleanField.svelte +14 -14
  186. package/dist/components/fields/CodeField.svelte +10 -10
  187. package/dist/components/fields/CopyField.svelte +6 -6
  188. package/dist/components/fields/CurrencyField.svelte +6 -6
  189. package/dist/components/fields/DateField.svelte +1 -1
  190. package/dist/components/fields/DateRangeField.svelte +2 -2
  191. package/dist/components/fields/EmailField.svelte +2 -2
  192. package/dist/components/fields/FileField.svelte +3 -3
  193. package/dist/components/fields/ImageField.svelte +1 -1
  194. package/dist/components/fields/JsonField.svelte +11 -11
  195. package/dist/components/fields/MarkdownField.svelte +2 -2
  196. package/dist/components/fields/MultiSelectField.svelte +3 -3
  197. package/dist/components/fields/NumberField.svelte +1 -1
  198. package/dist/components/fields/PercentField.svelte +9 -9
  199. package/dist/components/fields/PhoneField.svelte +8 -8
  200. package/dist/components/fields/RatingField.svelte +10 -10
  201. package/dist/components/fields/RelationField.svelte +3 -3
  202. package/dist/components/fields/RichTextField.svelte +4 -4
  203. package/dist/components/fields/TagField.svelte +11 -11
  204. package/dist/components/fields/TextField.svelte +2 -2
  205. package/dist/components/fields/UrlField.svelte +3 -3
  206. package/dist/components/network/TeamCrewTablePage.svelte +2 -2
  207. package/dist/components/network/UserCardsNFTPage.svelte +1 -1
  208. package/dist/components/profile/ActivityTimeline.svelte +8 -8
  209. package/dist/components/profile/ProfileCard.svelte +47 -47
  210. package/dist/components/profile/ProfileVariantSections.svelte +158 -158
  211. package/dist/components/profile/ProjectsGrid.svelte +6 -6
  212. package/dist/components/profile/PublicProfilePage.svelte +6 -6
  213. package/dist/components/profile/TeamsShowcase.svelte +3 -3
  214. package/dist/components/ui/alert/alert-description.svelte +1 -1
  215. package/dist/components/ui/alert/alert-title.svelte +1 -1
  216. package/dist/components/ui/alert/alert-variants.d.ts +7 -0
  217. package/dist/components/ui/alert/alert-variants.js +2 -0
  218. package/dist/components/ui/alert/alert.svelte +4 -15
  219. package/dist/components/ui/alert/alert.svelte.d.ts +7 -24
  220. package/dist/components/ui/alert-dialog/alert-dialog-content.svelte +2 -2
  221. package/dist/components/ui/alert-dialog/alert-dialog-description.svelte +1 -1
  222. package/dist/components/ui/alert-dialog/alert-dialog-footer.svelte +1 -1
  223. package/dist/components/ui/alert-dialog/alert-dialog-header.svelte +1 -1
  224. package/dist/components/ui/alert-dialog/alert-dialog-overlay.svelte +1 -1
  225. package/dist/components/ui/alert-dialog/alert-dialog-title.svelte +1 -1
  226. package/dist/components/ui/avatar/avatar-variants.d.ts +7 -0
  227. package/dist/components/ui/avatar/avatar-variants.js +2 -0
  228. package/dist/components/ui/avatar/avatar.svelte +11 -20
  229. package/dist/components/ui/avatar/avatar.svelte.d.ts +12 -28
  230. package/dist/components/ui/badge/badge-variants.d.ts +7 -0
  231. package/dist/components/ui/badge/badge-variants.js +2 -0
  232. package/dist/components/ui/badge/badge.svelte +4 -24
  233. package/dist/components/ui/badge/badge.svelte.d.ts +7 -45
  234. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte +3 -3
  235. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte +1 -1
  236. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte +1 -1
  237. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte +1 -1
  238. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte +1 -1
  239. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte +2 -2
  240. package/dist/components/ui/button/button-variants.d.ts +9 -0
  241. package/dist/components/ui/button/button-variants.js +3 -0
  242. package/dist/components/ui/button/button.svelte +12 -31
  243. package/dist/components/ui/button/button.svelte.d.ts +9 -61
  244. package/dist/components/ui/card/card-action.svelte +1 -4
  245. package/dist/components/ui/card/card-content.svelte +1 -1
  246. package/dist/components/ui/card/card-description.svelte +1 -1
  247. package/dist/components/ui/card/card-footer.svelte +1 -1
  248. package/dist/components/ui/card/card-header.svelte +1 -4
  249. package/dist/components/ui/card/card-title.svelte +1 -1
  250. package/dist/components/ui/card/card.svelte +1 -1
  251. package/dist/components/ui/checkbox/checkbox.svelte +2 -5
  252. package/dist/components/ui/command/command-dialog.svelte +3 -3
  253. package/dist/components/ui/command/command-empty.svelte +1 -1
  254. package/dist/components/ui/command/command-group.svelte +2 -2
  255. package/dist/components/ui/command/command-input.svelte +1 -4
  256. package/dist/components/ui/command/command-item.svelte +1 -4
  257. package/dist/components/ui/command/command-list.svelte +1 -1
  258. package/dist/components/ui/command/command-separator.svelte +1 -1
  259. package/dist/components/ui/command/command.svelte +1 -4
  260. package/dist/components/ui/dialog/dialog-content.svelte +3 -3
  261. package/dist/components/ui/dialog/dialog-description.svelte +1 -1
  262. package/dist/components/ui/dialog/dialog-footer.svelte +1 -1
  263. package/dist/components/ui/dialog/dialog-header.svelte +1 -1
  264. package/dist/components/ui/dialog/dialog-overlay.svelte +1 -1
  265. package/dist/components/ui/dialog/dialog-title.svelte +1 -1
  266. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +2 -5
  267. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +1 -6
  268. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +3 -9
  269. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +1 -1
  270. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte +1 -1
  271. package/dist/components/ui/input/input.svelte +3 -2
  272. package/dist/components/ui/label/label.svelte +1 -4
  273. package/dist/components/ui/navigation-menu/navigation-menu-content.svelte +1 -5
  274. package/dist/components/ui/navigation-menu/navigation-menu-indicator.svelte +2 -5
  275. package/dist/components/ui/navigation-menu/navigation-menu-item.svelte +1 -1
  276. package/dist/components/ui/navigation-menu/navigation-menu-link.svelte +1 -4
  277. package/dist/components/ui/navigation-menu/navigation-menu-list.svelte +1 -1
  278. package/dist/components/ui/navigation-menu/navigation-menu-trigger.svelte +2 -5
  279. package/dist/components/ui/navigation-menu/navigation-menu-viewport.svelte +2 -5
  280. package/dist/components/ui/navigation-menu/navigation-menu.svelte +1 -1
  281. package/dist/components/ui/pagination/pagination-content.svelte +1 -1
  282. package/dist/components/ui/pagination/pagination-ellipsis.svelte +3 -3
  283. package/dist/components/ui/pagination/pagination-link.svelte +3 -0
  284. package/dist/components/ui/pagination/pagination-next.svelte +5 -2
  285. package/dist/components/ui/pagination/pagination-previous.svelte +5 -2
  286. package/dist/components/ui/pagination/pagination.svelte +1 -1
  287. package/dist/components/ui/popover/popover-content.svelte +1 -4
  288. package/dist/components/ui/progress/progress.svelte +2 -2
  289. package/dist/components/ui/scroll-area/scroll-area.svelte +3 -4
  290. package/dist/components/ui/select/select.svelte +1 -2
  291. package/dist/components/ui/separator/separator.svelte +1 -6
  292. package/dist/components/ui/sheet/sheet-content.svelte +1 -4
  293. package/dist/components/ui/sheet/sheet-description.svelte +1 -1
  294. package/dist/components/ui/sheet/sheet-footer.svelte +1 -1
  295. package/dist/components/ui/sheet/sheet-header.svelte +1 -1
  296. package/dist/components/ui/sheet/sheet-title.svelte +1 -1
  297. package/dist/components/ui/sheet/sheet.svelte +5 -10
  298. package/dist/components/ui/skeleton/skeleton.svelte +1 -1
  299. package/dist/components/ui/switch/switch.svelte +2 -9
  300. package/dist/components/ui/table/table-caption.svelte +1 -1
  301. package/dist/components/ui/table/table-cell.svelte +8 -11
  302. package/dist/components/ui/table/table-footer.svelte +1 -1
  303. package/dist/components/ui/table/table-head.svelte +1 -11
  304. package/dist/components/ui/table/table-header.svelte +1 -1
  305. package/dist/components/ui/table/table-row.svelte +2 -2
  306. package/dist/components/ui/table/table-row.svelte.d.ts +1 -1
  307. package/dist/components/ui/table/table.svelte +2 -2
  308. package/dist/components/ui/tabs/tabs-content.svelte +1 -1
  309. package/dist/components/ui/tabs/tabs-list.svelte +1 -4
  310. package/dist/components/ui/tabs/tabs-trigger.svelte +1 -7
  311. package/dist/components/ui/tabs/tabs.svelte +1 -1
  312. package/dist/components/ui/textarea/textarea.svelte +1 -4
  313. package/dist/components/ui/tooltip/tooltip-content.svelte +1 -1
  314. package/dist/page-chrome.css +228 -0
  315. package/package.json +12 -7
@@ -110,85 +110,85 @@
110
110
  {...props}
111
111
  variant={triggerVariant}
112
112
  size={triggerSize}
113
- class={cn('gap-1.5 text-xs font-normal', className)}
113
+ class={cn('svadmin-u-58284b4ea568 svadmin-u-359090c2d529 svadmin-u-8ecebc9f80e6', className)}
114
114
  aria-label={displayTitle}
115
115
  >
116
- <SlidersHorizontal class="h-3.5 w-3.5 text-muted-foreground" data-icon="inline-start" />
116
+ <SlidersHorizontal class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c svadmin-u-bfa603190748" data-icon="inline-start" />
117
117
  <span>{displayTitle}</span>
118
118
  </Button>
119
119
  {/snippet}
120
120
  </Popover.Trigger>
121
- <Popover.Content class="w-72 p-3 text-xs" align="end">
121
+ <Popover.Content class="svadmin-u-92e13d146fd7 svadmin-u-eb6e8b881acd svadmin-u-359090c2d529" align="end">
122
122
  <!-- Header -->
123
- <div class="flex items-center justify-between pb-2 border-b border-border/60">
124
- <div class="flex items-center gap-2">
123
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-8ef2268efbbc svadmin-u-f4cc511ff0c1 svadmin-u-65fdbade2025 svadmin-u-05faf5c801ff">
124
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-77a2a20e90d4">
125
125
  <Checkbox
126
126
  checked={allVisible}
127
127
  indeterminate={someVisible}
128
128
  onCheckedChange={(checked) => toggleAll(checked === true)}
129
129
  aria-label={i18n.t('common.selectAll', { defaultValue: 'Select All' })}
130
130
  />
131
- <span class="font-medium text-foreground">{displayTitle}</span>
131
+ <span class="svadmin-u-2689f3958069 svadmin-u-d4108abe6359">{displayTitle}</span>
132
132
  </div>
133
133
  <Button
134
134
  variant="ghost"
135
135
  size="sm"
136
- class="h-6 px-1.5 text-[11px] text-muted-foreground hover:text-foreground gap-1"
136
+ class="svadmin-u-f6fe902450dc svadmin-u-45d828117213 svadmin-u-d058ca6de60f svadmin-u-bfa603190748 svadmin-u-ea7b2e9e070e svadmin-u-44ee8ba0a421"
137
137
  onclick={handleReset}
138
138
  >
139
- <RotateCcw class="h-3 w-3" />
139
+ <RotateCcw class="svadmin-u-6a60c09e6aaa svadmin-u-9cea05671a29" />
140
140
  {resetLabel}
141
141
  </Button>
142
142
  </div>
143
143
 
144
144
  <!-- Filter input if many columns -->
145
145
  {#if columns.length > 6}
146
- <div class="relative mt-2 mb-1">
147
- <Search class="absolute left-2 top-2 h-3.5 w-3.5 text-muted-foreground" />
146
+ <div class="svadmin-u-d89972fe17d6 svadmin-u-50d0d216a2f8 svadmin-u-65281709dacf">
147
+ <Search class="svadmin-u-da4dbfbc4fdc svadmin-u-d83be576442b svadmin-u-9a2db8f949b6 svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c svadmin-u-bfa603190748" />
148
148
  <input
149
149
  type="text"
150
150
  bind:value={filterText}
151
151
  placeholder={i18n.t('common.search', { defaultValue: 'Search columns...' })}
152
- class="h-7.5 w-full rounded-md border border-input bg-muted/40 pl-7 pr-2 text-xs placeholder:text-muted-foreground/60 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"
152
+ class="svadmin-u-d1c57777d8b6 svadmin-u-6da6a3c3f741 svadmin-u-421ac2be5045 svadmin-u-ca6bcd4b6f3f svadmin-u-e5795dad4d22 svadmin-u-b00f43c30c2b svadmin-u-20ebde75765d svadmin-u-aa2c13a5e1b4 svadmin-u-359090c2d529 svadmin-u-35ca6b75d707 svadmin-u-f10f771f87e9 svadmin-u-3e94a98e1466 svadmin-u-9c1295a6914a"
153
153
  />
154
154
  </div>
155
155
  {/if}
156
156
 
157
157
  <!-- Column list with ordering -->
158
- <div class="mt-2 max-h-60 overflow-y-auto space-y-1 pr-1">
158
+ <div class="svadmin-u-50d0d216a2f8 svadmin-u-67d7e383dca6 svadmin-u-92bf82f493b1 svadmin-u-da7c36cd8867 svadmin-u-eda955402ba6">
159
159
  {#each filteredColumns as col (col.key)}
160
160
  {@const realIdx = columns.findIndex((c) => c.key === col.key)}
161
- <div class="flex items-center justify-between p-1 rounded-md hover:bg-muted/50 group transition-colors">
162
- <label class="flex items-center gap-2 cursor-pointer select-none truncate flex-1 pr-2">
161
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-8ef2268efbbc svadmin-u-eb6a3cef9686 svadmin-u-421ac2be5045 svadmin-u-39f703dbe296 group svadmin-u-ceb69a6b0e5f">
162
+ <label class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-77a2a20e90d4 svadmin-u-34516836730d svadmin-u-7f6912283f11 svadmin-u-f283ea9bea0e svadmin-u-36e579c0b41c svadmin-u-aa2c13a5e1b4">
163
163
  <Checkbox
164
164
  checked={col.visible}
165
165
  onCheckedChange={() => toggleColumn(col.key)}
166
166
  />
167
- <span class="truncate text-foreground {col.visible ? '' : 'text-muted-foreground line-through opacity-60'}">
167
+ <span class="svadmin-u-f283ea9bea0e svadmin-u-d4108abe6359 {col.visible ? '' : 'svadmin-u-bfa603190748 line-through svadmin-u-f2868c227fcd'}">
168
168
  {col.label}
169
169
  </span>
170
170
  </label>
171
171
 
172
- <div class="flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity">
172
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-a3899220f90e svadmin-u-7065497e1ca0 svadmin-u-181f3d6c9821 svadmin-u-67d6184a0024">
173
173
  <Button
174
174
  variant="ghost"
175
175
  size="icon"
176
- class="h-5 w-5 text-muted-foreground hover:text-foreground"
176
+ class="svadmin-u-cd0d9c512cdc svadmin-u-72470489ff4e svadmin-u-bfa603190748 svadmin-u-ea7b2e9e070e"
177
177
  disabled={realIdx === 0}
178
178
  onclick={() => moveColumn(realIdx, 'up')}
179
179
  aria-label="Move up"
180
180
  >
181
- <ArrowUp class="h-3 w-3" />
181
+ <ArrowUp class="svadmin-u-6a60c09e6aaa svadmin-u-9cea05671a29" />
182
182
  </Button>
183
183
  <Button
184
184
  variant="ghost"
185
185
  size="icon"
186
- class="h-5 w-5 text-muted-foreground hover:text-foreground"
186
+ class="svadmin-u-cd0d9c512cdc svadmin-u-72470489ff4e svadmin-u-bfa603190748 svadmin-u-ea7b2e9e070e"
187
187
  disabled={realIdx === columns.length - 1}
188
188
  onclick={() => moveColumn(realIdx, 'down')}
189
189
  aria-label="Move down"
190
190
  >
191
- <ArrowDown class="h-3 w-3" />
191
+ <ArrowDown class="svadmin-u-6a60c09e6aaa svadmin-u-9cea05671a29" />
192
192
  </Button>
193
193
  </div>
194
194
  </div>
@@ -81,55 +81,55 @@
81
81
  }
82
82
  </script>
83
83
 
84
- <div class="relative" use:clickOutside>
84
+ <div class="svadmin-u-d89972fe17d6" use:clickOutside>
85
85
  <Button
86
86
  variant="outline"
87
87
  type="button"
88
- class="w-full justify-between font-normal"
88
+ class="svadmin-u-6da6a3c3f741 svadmin-u-8ef2268efbbc svadmin-u-8ecebc9f80e6"
89
89
  onclick={() => { open = !open; }}
90
90
  {...restProps}
91
91
  >
92
92
  {#if selectedLabel}
93
- <span class="truncate">{selectedLabel}</span>
94
- <TooltipButton tooltip={i18n.t('common.clear')} size="icon-sm" class="h-5 w-5 ml-1" onclick={handleClear}>
95
- <X class="h-3 w-3" />
93
+ <span class="svadmin-u-f283ea9bea0e">{selectedLabel}</span>
94
+ <TooltipButton tooltip={i18n.t('common.clear')} size="icon-sm" class="svadmin-u-cd0d9c512cdc svadmin-u-72470489ff4e svadmin-u-f58b02572ab2" onclick={handleClear}>
95
+ <X class="svadmin-u-6a60c09e6aaa svadmin-u-9cea05671a29" />
96
96
  </TooltipButton>
97
97
  {:else}
98
- <span class="text-muted-foreground">{placeholder}</span>
98
+ <span class="svadmin-u-bfa603190748">{placeholder}</span>
99
99
  {/if}
100
- <ChevronsUpDown class="ml-auto h-4 w-4 shrink-0 opacity-50" />
100
+ <ChevronsUpDown class="svadmin-u-fb56d9cff341 svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-012fbd121f37 svadmin-u-0b8c506a0596" />
101
101
  </Button>
102
102
 
103
103
  {#if open}
104
- <div class="absolute z-50 mt-1 w-full rounded-md border bg-popover shadow-lg">
105
- <Command.Root class="flex flex-col overflow-hidden rounded-md bg-popover text-popover-foreground">
104
+ <div class="svadmin-u-da4dbfbc4fdc svadmin-u-181b286668b5 svadmin-u-b6b02c0ebef6 svadmin-u-6da6a3c3f741 svadmin-u-421ac2be5045 svadmin-u-ca6bcd4b6f3f svadmin-u-e541d86d1ec8 svadmin-u-06bbb43166db">
105
+ <Command.Root class="svadmin-u-60fbb7713999 svadmin-u-8dddea0773ed svadmin-u-2cd02d11d1af svadmin-u-421ac2be5045 svadmin-u-e541d86d1ec8 svadmin-u-9b13e8ae5c9c">
106
106
  {#if searchable}
107
- <div class="flex items-center border-b px-2">
108
- <Search class="mr-1.5 h-3.5 w-3.5 shrink-0 opacity-50" />
107
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-65fdbade2025 svadmin-u-d5eab218aa34">
108
+ <Search class="svadmin-u-82cc6c6581cd svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c svadmin-u-012fbd121f37 svadmin-u-0b8c506a0596" />
109
109
  <Command.Input
110
110
  bind:value={searchInputValue}
111
111
  oninput={handleSearchInput}
112
112
  placeholder="Search..."
113
- class="flex h-9 w-full bg-transparent py-2 text-sm outline-none placeholder:text-muted-foreground"
113
+ class="svadmin-u-60fbb7713999 svadmin-u-e7a768f922d2 svadmin-u-6da6a3c3f741 svadmin-u-7f19cdf4c5bb svadmin-u-03b4dd7f172b svadmin-u-fc7473ca09eb svadmin-u-df37b1fd9495 svadmin-u-9c24ab70af61"
114
114
  />
115
115
  </div>
116
116
  {/if}
117
- <Command.List class="max-h-48 overflow-y-auto p-1">
118
- <Command.Empty class="py-4 text-center text-xs text-muted-foreground">
117
+ <Command.List class="svadmin-u-558f64349245 svadmin-u-92bf82f493b1 svadmin-u-eb6a3cef9686">
118
+ <Command.Empty class="svadmin-u-cb11fec3bb46 svadmin-u-ca6bf63030aa svadmin-u-359090c2d529 svadmin-u-bfa603190748">
119
119
  No results.
120
120
  </Command.Empty>
121
121
  {#if query.isLoading}
122
122
  {#each Array(3) as _, _i (_i)}
123
- <div class="px-2 py-1.5"><Skeleton class="h-5 w-full" /></div>
123
+ <div class="svadmin-u-d5eab218aa34 svadmin-u-ec0091ee009b"><Skeleton class="svadmin-u-cd0d9c512cdc svadmin-u-6da6a3c3f741" /></div>
124
124
  {/each}
125
125
  {:else}
126
126
  {#each (options as { label: string; value: string | number }[]) ?? [] as opt, _i (_i)}
127
127
  <Command.Item
128
128
  value={opt.label}
129
129
  onSelect={() => handleSelect(opt.value)}
130
- class="relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[selected]:bg-accent data-[selected]:text-accent-foreground"
130
+ class="svadmin-u-d89972fe17d6 svadmin-u-60fbb7713999 svadmin-u-50ca6ba56aa3 svadmin-u-7f6912283f11 svadmin-u-3960ffc248d9 svadmin-u-36d4469299aa svadmin-u-d5eab218aa34 svadmin-u-ec0091ee009b svadmin-u-fc7473ca09eb svadmin-u-df37b1fd9495 svadmin-u-99afb1cc3b47 svadmin-u-529780e25268"
131
131
  >
132
- <Check class="mr-2 h-3.5 w-3.5 {value === opt.value ? 'opacity-100' : 'opacity-0'}" />
132
+ <Check class="svadmin-u-d2347e8497a9 svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c {value === opt.value ? 'svadmin-u-3972e98dc84f' : 'svadmin-u-7065497e1ca0'}" />
133
133
  {opt.label}
134
134
  </Command.Item>
135
135
  {/each}
@@ -42,30 +42,30 @@
42
42
  close();
43
43
  }
44
44
 
45
- const itemClass = 'relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[selected]:bg-accent data-[selected]:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50';
45
+ const itemClass = 'svadmin-u-d89972fe17d6 svadmin-u-60fbb7713999 svadmin-u-50ca6ba56aa3 svadmin-u-77a2a20e90d4 svadmin-u-7f6912283f11 svadmin-u-3960ffc248d9 svadmin-u-36d4469299aa svadmin-u-d5eab218aa34 svadmin-u-ec0091ee009b svadmin-u-fc7473ca09eb svadmin-u-df37b1fd9495 svadmin-u-99afb1cc3b47 svadmin-u-529780e25268 svadmin-u-8e0c223ba976 svadmin-u-7c865b678f08';
46
46
  </script>
47
47
 
48
48
  <Dialog.Dialog bind:open>
49
- <Dialog.DialogContent class="overflow-hidden p-0 sm:max-w-[560px]">
50
- <Dialog.DialogTitle class="sr-only">{i18n.t('common.search')}</Dialog.DialogTitle>
51
- <Command.Root class="flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground [&_[data-command-group-heading]]:text-muted-foreground [&_[data-command-group-heading]]:px-2 [&_[data-command-group-heading]]:py-1.5 [&_[data-command-group-heading]]:text-xs [&_[data-command-group-heading]]:font-semibold [&_[data-command-group-heading]]:uppercase [&_[data-command-group-heading]]:tracking-wider">
52
- <div class="flex items-center border-b px-3" data-cmdk-input-wrapper="">
53
- <Search class="mr-2 h-4 w-4 shrink-0 opacity-50" />
49
+ <Dialog.DialogContent class="svadmin-u-2cd02d11d1af svadmin-u-8a539c7fe216 svadmin-u-ba002e28b7ba">
50
+ <Dialog.DialogTitle class="svadmin-u-2daa8e5e2f2e">{i18n.t('common.search')}</Dialog.DialogTitle>
51
+ <Command.Root class="svadmin-u-60fbb7713999 svadmin-u-668b21aa5409 svadmin-u-6da6a3c3f741 svadmin-u-8dddea0773ed svadmin-u-2cd02d11d1af svadmin-u-421ac2be5045 svadmin-u-e541d86d1ec8 svadmin-u-9b13e8ae5c9c svadmin-u-08539b5283eb svadmin-u-b3501a4e31c3 svadmin-u-e75a50203550 svadmin-u-a8f5f59f5cda svadmin-u-90f5ed09ba83 [&_[data-command-group-heading]]:uppercase svadmin-u-8b809ad2310b">
52
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-65fdbade2025 svadmin-u-0e17f2bd9074" data-cmdk-input-wrapper="">
53
+ <Search class="svadmin-u-d2347e8497a9 svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-012fbd121f37 svadmin-u-0b8c506a0596" />
54
54
  <Command.Input
55
55
  bind:value={searchValue}
56
56
  placeholder={hasAI ? (i18n.t('commandPalette.searchOrAsk') || 'Search or ask AI...') : i18n.t('common.search')}
57
- class="flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50"
57
+ class="svadmin-u-60fbb7713999 svadmin-u-f82f0c255ad9 svadmin-u-6da6a3c3f741 svadmin-u-421ac2be5045 svadmin-u-7f19cdf4c5bb svadmin-u-1b2d54a3fd12 svadmin-u-fc7473ca09eb svadmin-u-df37b1fd9495 svadmin-u-9c24ab70af61 svadmin-u-5f533b3a7de7 svadmin-u-b29d8adbad2e"
58
58
  />
59
- <kbd class="ml-2 text-[10px] font-mono font-medium text-muted-foreground bg-muted px-1.5 py-0.5 rounded border border-border">ESC</kbd>
59
+ <kbd class="svadmin-u-c68af9986751 svadmin-u-1dc571a3609f svadmin-u-0e65706bcccd svadmin-u-2689f3958069 svadmin-u-bfa603190748 svadmin-u-2ef11f1cb219 svadmin-u-45d828117213 svadmin-u-465609a240a8 svadmin-u-07389a777c1f svadmin-u-ca6bcd4b6f3f svadmin-u-18049387f0af">ESC</kbd>
60
60
  </div>
61
- <Command.List class="max-h-[320px] overflow-y-auto overflow-x-hidden p-1">
62
- <Command.Empty class="py-6 text-center text-sm text-muted-foreground">
61
+ <Command.List class="svadmin-u-fd9aebd23c39 svadmin-u-92bf82f493b1 svadmin-u-e271e6ae16dc svadmin-u-eb6a3cef9686">
62
+ <Command.Empty class="svadmin-u-940911bf310c svadmin-u-ca6bf63030aa svadmin-u-fc7473ca09eb svadmin-u-bfa603190748">
63
63
  {#if hasAI && searchValue.trim()}
64
64
  <button
65
- class="inline-flex items-center gap-1.5 px-3 py-1.5 rounded-md bg-primary/10 text-primary hover:bg-primary/20 transition-colors cursor-pointer text-sm font-medium"
65
+ class="svadmin-u-52083e7da442 svadmin-u-3960ffc248d9 svadmin-u-58284b4ea568 svadmin-u-0e17f2bd9074 svadmin-u-ec0091ee009b svadmin-u-421ac2be5045 svadmin-u-375dc44df6e9 svadmin-u-20aaf08a7ed1 svadmin-u-7f9a026b5897 svadmin-u-ceb69a6b0e5f svadmin-u-34516836730d svadmin-u-fc7473ca09eb svadmin-u-2689f3958069"
66
66
  onclick={askAI}
67
67
  >
68
- <Sparkles class="h-3.5 w-3.5" />
68
+ <Sparkles class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c" />
69
69
  {i18n.t('commandPalette.askAI') || 'Ask AI'}: "{searchValue.trim()}"
70
70
  </button>
71
71
  {:else}
@@ -81,12 +81,12 @@
81
81
  onSelect={askAI}
82
82
  class={itemClass}
83
83
  >
84
- <Sparkles class="h-4 w-4 text-primary" />
85
- <span class="text-primary font-medium">{i18n.t('commandPalette.askAI') || 'Ask AI'}</span>
86
- <span class="text-muted-foreground truncate ml-1">"{searchValue.trim()}"</span>
84
+ <Sparkles class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-20aaf08a7ed1" />
85
+ <span class="svadmin-u-20aaf08a7ed1 svadmin-u-2689f3958069">{i18n.t('commandPalette.askAI') || 'Ask AI'}</span>
86
+ <span class="svadmin-u-bfa603190748 svadmin-u-f283ea9bea0e svadmin-u-f58b02572ab2">"{searchValue.trim()}"</span>
87
87
  </Command.Item>
88
88
  </Command.Group>
89
- <Command.Separator class="mx-1 my-1 h-px bg-border" />
89
+ <Command.Separator class="svadmin-u-0da48290f782 svadmin-u-93b32079b969 svadmin-u-aea6160836e7 svadmin-u-a59afa8d9b9d" />
90
90
  {/if}
91
91
 
92
92
  <!-- Navigation -->
@@ -96,7 +96,7 @@
96
96
  onSelect={() => act(() => adminContext.navigate('/'))}
97
97
  class={itemClass}
98
98
  >
99
- <LayoutDashboard class="h-4 w-4 text-muted-foreground" />
99
+ <LayoutDashboard class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
100
100
  {i18n.t('common.home')}
101
101
  </Command.Item>
102
102
  {#each resources as r, _i (_i)}
@@ -107,7 +107,7 @@
107
107
  onSelect={() => act(() => navigation.list(r.name))}
108
108
  class={itemClass}
109
109
  >
110
- <FileText class="h-4 w-4 text-muted-foreground" />
110
+ <FileText class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
111
111
  {r.label}
112
112
  </Command.Item>
113
113
  </CanAccess>
@@ -117,14 +117,14 @@
117
117
  onSelect={() => act(() => navigation.list(r.name))}
118
118
  class={itemClass}
119
119
  >
120
- <FileText class="h-4 w-4 text-muted-foreground" />
120
+ <FileText class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
121
121
  {r.label}
122
122
  </Command.Item>
123
123
  {/if}
124
124
  {/each}
125
125
  </Command.Group>
126
126
 
127
- <Command.Separator class="mx-1 my-1 h-px bg-border" />
127
+ <Command.Separator class="svadmin-u-0da48290f782 svadmin-u-93b32079b969 svadmin-u-aea6160836e7 svadmin-u-a59afa8d9b9d" />
128
128
 
129
129
  <!-- Actions -->
130
130
  <Command.Group heading={i18n.t('common.actions')}>
@@ -133,13 +133,13 @@
133
133
  {#if adminContext.accessControlProvider}
134
134
  <CanAccess resource={r.name} action="create">
135
135
  <Command.Item value={"create-" + r.name} onSelect={() => act(() => navigation.create(r.name))} class={itemClass}>
136
- <Plus class="h-4 w-4 text-muted-foreground" />
136
+ <Plus class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
137
137
  {i18n.t('common.create')} {r.label}
138
138
  </Command.Item>
139
139
  </CanAccess>
140
140
  {:else}
141
141
  <Command.Item value={"create-" + r.name} onSelect={() => act(() => navigation.create(r.name))} class={itemClass}>
142
- <Plus class="h-4 w-4 text-muted-foreground" />
142
+ <Plus class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
143
143
  {i18n.t('common.create')} {r.label}
144
144
  </Command.Item>
145
145
  {/if}
@@ -150,7 +150,7 @@
150
150
  onSelect={() => act(() => toggleTheme())}
151
151
  class={itemClass}
152
152
  >
153
- <Sun class="h-4 w-4 text-muted-foreground" />
153
+ <Sun class="svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-bfa603190748" />
154
154
  {i18n.t('common.toggleTheme')}
155
155
  </Command.Item>
156
156
  </Command.Group>
@@ -50,40 +50,40 @@
50
50
  }
51
51
  </script>
52
52
 
53
- <div class="min-h-screen flex items-center justify-center bg-background p-4">
54
- <div class="w-full max-w-[480px]">
53
+ <div class="svadmin-u-793346c7362c svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-86843cf1e227 svadmin-u-e6f9e383a762 svadmin-u-8e63407b5ceb">
54
+ <div class="svadmin-u-6da6a3c3f741 svadmin-u-3698555097d6">
55
55
  <Card.Card>
56
- <Card.CardHeader class="text-center pb-2">
57
- <div class="inline-flex items-center justify-center w-12 h-12 rounded-lg bg-destructive/10 text-destructive mx-auto mb-3">
58
- <AlertTriangle class="h-6 w-6" />
56
+ <Card.CardHeader class="svadmin-u-ca6bf63030aa svadmin-u-f4cc511ff0c1">
57
+ <div class="svadmin-u-52083e7da442 svadmin-u-3960ffc248d9 svadmin-u-86843cf1e227 svadmin-u-e7e371071bc5 svadmin-u-508ebf85b1c9 svadmin-u-5f22e64f2282 svadmin-u-43928fcc832f svadmin-u-811148b13d1e svadmin-u-0e12dc7de920 svadmin-u-1bb883263ed2">
58
+ <AlertTriangle class="svadmin-u-f6fe902450dc svadmin-u-7ec10f86d9b1" />
59
59
  </div>
60
- <Card.CardTitle class="text-xl">{displayTitle}</Card.CardTitle>
61
- <p class="text-sm text-muted-foreground">
60
+ <Card.CardTitle class="svadmin-u-d5c9b0001e7e">{displayTitle}</Card.CardTitle>
61
+ <p class="svadmin-u-fc7473ca09eb svadmin-u-bfa603190748">
62
62
  {i18n.t('config.missingEnvDescription')}
63
63
  </p>
64
64
  </Card.CardHeader>
65
- <Card.CardContent class="space-y-4">
65
+ <Card.CardContent class="svadmin-u-3e7ce58d64fa">
66
66
  {#if missingVars.length > 0}
67
- <div class="rounded-lg border overflow-hidden">
67
+ <div class="svadmin-u-5f22e64f2282 svadmin-u-ca6bcd4b6f3f svadmin-u-2cd02d11d1af">
68
68
  {#each missingVars as v, i (v.key)}
69
- <div class="flex items-center justify-between px-3 py-2.5 gap-2 {i < missingVars.length - 1 ? 'border-b border-border/50' : ''}">
70
- <div class="flex flex-col gap-0.5 min-w-0">
71
- <code class="text-[0.8125rem] font-semibold text-foreground font-mono">{v.key}</code>
69
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-8ef2268efbbc svadmin-u-0e17f2bd9074 svadmin-u-e7ee55ac7ffe svadmin-u-77a2a20e90d4 {i < missingVars.length - 1 ? 'svadmin-u-65fdbade2025 svadmin-u-591f378e24a1' : ''}">
70
+ <div class="svadmin-u-60fbb7713999 svadmin-u-8dddea0773ed svadmin-u-a3899220f90e svadmin-u-7e0b7cdf1a94">
71
+ <code class="svadmin-u-1d5904e7e755 svadmin-u-e83a7042bc91 svadmin-u-d4108abe6359 svadmin-u-0e65706bcccd">{v.key}</code>
72
72
  {#if v.description}
73
- <span class="text-[0.6875rem] text-muted-foreground">{v.description}</span>
73
+ <span class="svadmin-u-76067d04e222 svadmin-u-bfa603190748">{v.description}</span>
74
74
  {/if}
75
75
  </div>
76
76
  <TooltipButton
77
77
  tooltip={i18n.t('common.copy')}
78
78
  variant="ghost"
79
79
  size="icon"
80
- class="h-7 w-7 shrink-0"
80
+ class="svadmin-u-d0a52b312f7d svadmin-u-cbbf90f9a828 svadmin-u-012fbd121f37"
81
81
  onclick={() => copyToClipboard(`${v.key}=`, v.key)}
82
82
  >
83
83
  {#if copied[v.key]}
84
- <CheckCircle class="h-3.5 w-3.5 text-success" />
84
+ <CheckCircle class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c svadmin-u-76747e5e02ff" />
85
85
  {:else}
86
- <Copy class="h-3.5 w-3.5" />
86
+ <Copy class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c" />
87
87
  {/if}
88
88
  </TooltipButton>
89
89
  </div>
@@ -92,34 +92,34 @@
92
92
  {/if}
93
93
 
94
94
  {#if envTemplate}
95
- <div class="rounded-lg border overflow-hidden">
96
- <div class="flex items-center justify-between px-3 py-2 bg-muted/50 border-b border-border/50">
97
- <span class="text-xs font-medium text-muted-foreground">{i18n.t('config.envFilePath')}</span>
95
+ <div class="svadmin-u-5f22e64f2282 svadmin-u-ca6bcd4b6f3f svadmin-u-2cd02d11d1af">
96
+ <div class="svadmin-u-60fbb7713999 svadmin-u-3960ffc248d9 svadmin-u-8ef2268efbbc svadmin-u-0e17f2bd9074 svadmin-u-03b4dd7f172b svadmin-u-358af0b65a31 svadmin-u-65fdbade2025 svadmin-u-591f378e24a1">
97
+ <span class="svadmin-u-359090c2d529 svadmin-u-2689f3958069 svadmin-u-bfa603190748">{i18n.t('config.envFilePath')}</span>
98
98
  <TooltipButton
99
99
  tooltip={i18n.t('common.copyAll')}
100
100
  variant="ghost"
101
101
  size="sm"
102
- class="h-7 gap-1"
102
+ class="svadmin-u-d0a52b312f7d svadmin-u-44ee8ba0a421"
103
103
  onclick={copyAll}
104
104
  >
105
105
  {#if copied['__all__']}
106
- <CheckCircle class="h-3.5 w-3.5 text-success" />
107
- <span class="text-xs">{i18n.t('common.copied')}</span>
106
+ <CheckCircle class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c svadmin-u-76747e5e02ff" />
107
+ <span class="svadmin-u-359090c2d529">{i18n.t('common.copied')}</span>
108
108
  {:else}
109
- <Copy class="h-3.5 w-3.5" />
110
- <span class="text-xs">{i18n.t('common.copyAll')}</span>
109
+ <Copy class="svadmin-u-7fc7f732bf7e svadmin-u-bf600f8e029c" />
110
+ <span class="svadmin-u-359090c2d529">{i18n.t('common.copyAll')}</span>
111
111
  {/if}
112
112
  </TooltipButton>
113
113
  </div>
114
- <pre class="px-3 py-3 text-xs font-mono leading-relaxed text-foreground bg-muted/20 m-0 whitespace-pre-wrap break-all">{envTemplate}</pre>
114
+ <pre class="svadmin-u-0e17f2bd9074 svadmin-u-1b2d54a3fd12 svadmin-u-359090c2d529 svadmin-u-0e65706bcccd svadmin-u-6b189c6edadb svadmin-u-d4108abe6359 svadmin-u-967d113a1451 svadmin-u-74f9876a6800 svadmin-u-a2edcb1a3a6b svadmin-u-451f34ab545d">{envTemplate}</pre>
115
115
  </div>
116
116
  {/if}
117
117
 
118
- <p class="text-xs text-muted-foreground text-center mt-4">
118
+ <p class="svadmin-u-359090c2d529 svadmin-u-bfa603190748 svadmin-u-ca6bf63030aa svadmin-u-0ab8667228fd">
119
119
  {i18n.t('config.reload')}
120
120
  </p>
121
121
 
122
- <Button variant="outline" class="w-full" onclick={() => window.location.reload()}>
122
+ <Button variant="outline" class="svadmin-u-6da6a3c3f741" onclick={() => window.location.reload()}>
123
123
  {i18n.t('config.reloadButton')}
124
124
  </Button>
125
125
  </Card.CardContent>
@@ -63,7 +63,7 @@
63
63
  {#snippet child({ props })}
64
64
  <Button variant={variantMap[variant as keyof typeof variantMap]} {...props} disabled={confirming} onclick={handleConfirm}>
65
65
  {#if confirming}
66
- <Loader2 class="mr-2 h-4 w-4 animate-spin" aria-hidden="true" />
66
+ <Loader2 class="svadmin-u-d2347e8497a9 svadmin-u-11e59c6d5f6b svadmin-u-dc7972ebf3f3 svadmin-u-afbdd13a380e" aria-hidden="true" />
67
67
  {/if}
68
68
  {resolvedConfirmText}
69
69
  </Button>
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- // CreateInferencer — 基于资源定义零配置渲染创建表单
2
+ // CreateInferencer renders a create form from the resource definition with no page-specific configuration.
3
3
  import CreatePage from './CreatePage.svelte';
4
4
 
5
5
  interface Props {
@@ -34,7 +34,7 @@
34
34
  const pageTitle = $derived(title ?? `${i18n.t('common.create')}${resource.label}`);
35
35
  </script>
36
36
 
37
- <div class="{density === 'compact' ? 'space-y-4' : 'space-y-6'} {className}">
37
+ <div class="{density === 'compact' ? 'svadmin-u-3e7ce58d64fa' : 'svadmin-u-b3542e058833'} {className}">
38
38
  <PageHeader
39
39
  title={pageTitle}
40
40
  {density}