@svadmin/ui 0.83.1 → 0.84.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.css +48 -37
- package/dist/app.theme.css +48 -37
- package/dist/components/AdminApp.svelte +23 -0
- package/dist/components/AdminApp.svelte.d.ts +11 -0
- package/dist/index.d.ts +1 -0
- package/dist/recipes.d.ts +12 -12
- package/package.json +4 -4
package/dist/app.css
CHANGED
|
@@ -9349,12 +9349,14 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
9349
9349
|
min-width: 0;
|
|
9350
9350
|
}
|
|
9351
9351
|
|
|
9352
|
+
/* PageToolbar 的 recipe 是底部分割线,不另做一张浮动卡片。 */
|
|
9352
9353
|
.layout-clean-flat [data-svadmin-table-toolbar] {
|
|
9353
|
-
border
|
|
9354
|
-
border-
|
|
9355
|
-
|
|
9356
|
-
|
|
9357
|
-
|
|
9354
|
+
border: 0;
|
|
9355
|
+
border-bottom: 1px solid var(--svadmin-border);
|
|
9356
|
+
border-radius: 0;
|
|
9357
|
+
background: transparent;
|
|
9358
|
+
padding: 0.75rem 0;
|
|
9359
|
+
box-shadow: none;
|
|
9358
9360
|
}
|
|
9359
9361
|
|
|
9360
9362
|
.layout-clean-flat [data-svadmin-table-toolbar] [data-slot="input"] {
|
|
@@ -10072,9 +10074,11 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10072
10074
|
}
|
|
10073
10075
|
|
|
10074
10076
|
.layout-clean-flat [data-svadmin-auth-page] > main > div > section > header h1 {
|
|
10075
|
-
|
|
10076
|
-
|
|
10077
|
-
font-weight:
|
|
10077
|
+
color: var(--foreground);
|
|
10078
|
+
font-size: 1.25rem;
|
|
10079
|
+
font-weight: 600;
|
|
10080
|
+
line-height: 1.3;
|
|
10081
|
+
letter-spacing: 0;
|
|
10078
10082
|
}
|
|
10079
10083
|
|
|
10080
10084
|
.layout-clean-flat [data-svadmin-auth-page] > main > div > section > header p {
|
|
@@ -10083,35 +10087,41 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10083
10087
|
line-height: 1.5;
|
|
10084
10088
|
}
|
|
10085
10089
|
|
|
10090
|
+
/* 演示凭据是登录表面上的说明,不是套在卡片里的第二层卡片。 */
|
|
10086
10091
|
.layout-clean-flat [data-svadmin-demo-credentials] {
|
|
10087
10092
|
display: grid;
|
|
10088
|
-
gap:
|
|
10089
|
-
margin-bottom:
|
|
10090
|
-
border:
|
|
10091
|
-
border-
|
|
10092
|
-
|
|
10093
|
-
|
|
10093
|
+
gap: 0.5rem;
|
|
10094
|
+
margin-bottom: 1.5rem;
|
|
10095
|
+
border: 0;
|
|
10096
|
+
border-bottom: 1px solid var(--border);
|
|
10097
|
+
border-radius: 0;
|
|
10098
|
+
background: transparent;
|
|
10099
|
+
padding: 0 0 1rem;
|
|
10100
|
+
box-shadow: none;
|
|
10094
10101
|
}
|
|
10095
10102
|
|
|
10096
10103
|
.layout-clean-flat [data-svadmin-demo-credentials] dl {
|
|
10097
10104
|
display: grid;
|
|
10098
10105
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
10099
|
-
gap: 0.75rem;
|
|
10106
|
+
gap: 0.75rem 1rem;
|
|
10100
10107
|
}
|
|
10101
10108
|
|
|
10102
10109
|
.layout-clean-flat [data-svadmin-demo-credentials] dl > div {
|
|
10103
10110
|
min-width: 0;
|
|
10104
|
-
border
|
|
10105
|
-
|
|
10106
|
-
|
|
10111
|
+
border: 0;
|
|
10112
|
+
border-radius: 0;
|
|
10113
|
+
background: transparent;
|
|
10114
|
+
padding: 0;
|
|
10115
|
+
box-shadow: none;
|
|
10107
10116
|
}
|
|
10108
10117
|
|
|
10109
10118
|
.layout-clean-flat [data-svadmin-demo-credentials] dt {
|
|
10110
10119
|
color: var(--muted-foreground);
|
|
10111
|
-
font-size: 0.
|
|
10112
|
-
font-weight:
|
|
10113
|
-
line-height: 1.
|
|
10114
|
-
|
|
10120
|
+
font-size: 0.75rem;
|
|
10121
|
+
font-weight: 500;
|
|
10122
|
+
line-height: 1.35;
|
|
10123
|
+
letter-spacing: 0;
|
|
10124
|
+
text-transform: none;
|
|
10115
10125
|
}
|
|
10116
10126
|
|
|
10117
10127
|
.layout-clean-flat [data-svadmin-demo-credentials] dd {
|
|
@@ -10147,26 +10157,26 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10147
10157
|
|
|
10148
10158
|
.layout-clean-flat [data-svadmin-auth-page] form input {
|
|
10149
10159
|
width: 100%;
|
|
10150
|
-
min-height:
|
|
10160
|
+
min-height: 2.75rem;
|
|
10151
10161
|
border: 1px solid var(--border);
|
|
10152
|
-
border-radius: 0.
|
|
10153
|
-
background:
|
|
10154
|
-
padding-block: 0.
|
|
10155
|
-
padding-
|
|
10156
|
-
font-size:
|
|
10162
|
+
border-radius: 0.5rem;
|
|
10163
|
+
background: var(--card);
|
|
10164
|
+
padding-block: 0.5rem;
|
|
10165
|
+
padding-inline: 0.75rem;
|
|
10166
|
+
font-size: 0.875rem;
|
|
10157
10167
|
}
|
|
10158
10168
|
|
|
10159
10169
|
.layout-clean-flat [data-svadmin-auth-page] form input:focus-visible {
|
|
10160
10170
|
border-color: var(--ring);
|
|
10161
|
-
outline:
|
|
10162
|
-
outline-offset:
|
|
10171
|
+
outline: 2px solid var(--ring);
|
|
10172
|
+
outline-offset: var(--svadmin-focus-offset, 2px);
|
|
10163
10173
|
}
|
|
10164
10174
|
|
|
10165
10175
|
.layout-clean-flat [data-svadmin-auth-page] form > button[type="submit"] {
|
|
10166
10176
|
width: 100%;
|
|
10167
|
-
min-height:
|
|
10168
|
-
border-radius: 0.
|
|
10169
|
-
font-size:
|
|
10177
|
+
min-height: 2.75rem;
|
|
10178
|
+
border-radius: 0.5rem;
|
|
10179
|
+
font-size: 0.875rem;
|
|
10170
10180
|
font-weight: 600;
|
|
10171
10181
|
}
|
|
10172
10182
|
|
|
@@ -10464,10 +10474,11 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10464
10474
|
}
|
|
10465
10475
|
|
|
10466
10476
|
.layout-clean-flat[data-theme="stripe"] [data-svadmin-table-toolbar] {
|
|
10467
|
-
border:
|
|
10468
|
-
border-
|
|
10469
|
-
|
|
10470
|
-
|
|
10477
|
+
border: 0;
|
|
10478
|
+
border-bottom: 1px solid var(--border);
|
|
10479
|
+
border-radius: 0;
|
|
10480
|
+
background: transparent;
|
|
10481
|
+
box-shadow: none;
|
|
10471
10482
|
}
|
|
10472
10483
|
|
|
10473
10484
|
.layout-clean-flat[data-theme="stripe"] [data-svadmin-form-actions] {
|
package/dist/app.theme.css
CHANGED
|
@@ -9349,12 +9349,14 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
9349
9349
|
min-width: 0;
|
|
9350
9350
|
}
|
|
9351
9351
|
|
|
9352
|
+
/* PageToolbar 的 recipe 是底部分割线,不另做一张浮动卡片。 */
|
|
9352
9353
|
.layout-clean-flat [data-svadmin-table-toolbar] {
|
|
9353
|
-
border
|
|
9354
|
-
border-
|
|
9355
|
-
|
|
9356
|
-
|
|
9357
|
-
|
|
9354
|
+
border: 0;
|
|
9355
|
+
border-bottom: 1px solid var(--svadmin-border);
|
|
9356
|
+
border-radius: 0;
|
|
9357
|
+
background: transparent;
|
|
9358
|
+
padding: 0.75rem 0;
|
|
9359
|
+
box-shadow: none;
|
|
9358
9360
|
}
|
|
9359
9361
|
|
|
9360
9362
|
.layout-clean-flat [data-svadmin-table-toolbar] [data-slot="input"] {
|
|
@@ -10072,9 +10074,11 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10072
10074
|
}
|
|
10073
10075
|
|
|
10074
10076
|
.layout-clean-flat [data-svadmin-auth-page] > main > div > section > header h1 {
|
|
10075
|
-
|
|
10076
|
-
|
|
10077
|
-
font-weight:
|
|
10077
|
+
color: var(--foreground);
|
|
10078
|
+
font-size: 1.25rem;
|
|
10079
|
+
font-weight: 600;
|
|
10080
|
+
line-height: 1.3;
|
|
10081
|
+
letter-spacing: 0;
|
|
10078
10082
|
}
|
|
10079
10083
|
|
|
10080
10084
|
.layout-clean-flat [data-svadmin-auth-page] > main > div > section > header p {
|
|
@@ -10083,35 +10087,41 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10083
10087
|
line-height: 1.5;
|
|
10084
10088
|
}
|
|
10085
10089
|
|
|
10090
|
+
/* 演示凭据是登录表面上的说明,不是套在卡片里的第二层卡片。 */
|
|
10086
10091
|
.layout-clean-flat [data-svadmin-demo-credentials] {
|
|
10087
10092
|
display: grid;
|
|
10088
|
-
gap:
|
|
10089
|
-
margin-bottom:
|
|
10090
|
-
border:
|
|
10091
|
-
border-
|
|
10092
|
-
|
|
10093
|
-
|
|
10093
|
+
gap: 0.5rem;
|
|
10094
|
+
margin-bottom: 1.5rem;
|
|
10095
|
+
border: 0;
|
|
10096
|
+
border-bottom: 1px solid var(--border);
|
|
10097
|
+
border-radius: 0;
|
|
10098
|
+
background: transparent;
|
|
10099
|
+
padding: 0 0 1rem;
|
|
10100
|
+
box-shadow: none;
|
|
10094
10101
|
}
|
|
10095
10102
|
|
|
10096
10103
|
.layout-clean-flat [data-svadmin-demo-credentials] dl {
|
|
10097
10104
|
display: grid;
|
|
10098
10105
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
10099
|
-
gap: 0.75rem;
|
|
10106
|
+
gap: 0.75rem 1rem;
|
|
10100
10107
|
}
|
|
10101
10108
|
|
|
10102
10109
|
.layout-clean-flat [data-svadmin-demo-credentials] dl > div {
|
|
10103
10110
|
min-width: 0;
|
|
10104
|
-
border
|
|
10105
|
-
|
|
10106
|
-
|
|
10111
|
+
border: 0;
|
|
10112
|
+
border-radius: 0;
|
|
10113
|
+
background: transparent;
|
|
10114
|
+
padding: 0;
|
|
10115
|
+
box-shadow: none;
|
|
10107
10116
|
}
|
|
10108
10117
|
|
|
10109
10118
|
.layout-clean-flat [data-svadmin-demo-credentials] dt {
|
|
10110
10119
|
color: var(--muted-foreground);
|
|
10111
|
-
font-size: 0.
|
|
10112
|
-
font-weight:
|
|
10113
|
-
line-height: 1.
|
|
10114
|
-
|
|
10120
|
+
font-size: 0.75rem;
|
|
10121
|
+
font-weight: 500;
|
|
10122
|
+
line-height: 1.35;
|
|
10123
|
+
letter-spacing: 0;
|
|
10124
|
+
text-transform: none;
|
|
10115
10125
|
}
|
|
10116
10126
|
|
|
10117
10127
|
.layout-clean-flat [data-svadmin-demo-credentials] dd {
|
|
@@ -10147,26 +10157,26 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10147
10157
|
|
|
10148
10158
|
.layout-clean-flat [data-svadmin-auth-page] form input {
|
|
10149
10159
|
width: 100%;
|
|
10150
|
-
min-height:
|
|
10160
|
+
min-height: 2.75rem;
|
|
10151
10161
|
border: 1px solid var(--border);
|
|
10152
|
-
border-radius: 0.
|
|
10153
|
-
background:
|
|
10154
|
-
padding-block: 0.
|
|
10155
|
-
padding-
|
|
10156
|
-
font-size:
|
|
10162
|
+
border-radius: 0.5rem;
|
|
10163
|
+
background: var(--card);
|
|
10164
|
+
padding-block: 0.5rem;
|
|
10165
|
+
padding-inline: 0.75rem;
|
|
10166
|
+
font-size: 0.875rem;
|
|
10157
10167
|
}
|
|
10158
10168
|
|
|
10159
10169
|
.layout-clean-flat [data-svadmin-auth-page] form input:focus-visible {
|
|
10160
10170
|
border-color: var(--ring);
|
|
10161
|
-
outline:
|
|
10162
|
-
outline-offset:
|
|
10171
|
+
outline: 2px solid var(--ring);
|
|
10172
|
+
outline-offset: var(--svadmin-focus-offset, 2px);
|
|
10163
10173
|
}
|
|
10164
10174
|
|
|
10165
10175
|
.layout-clean-flat [data-svadmin-auth-page] form > button[type="submit"] {
|
|
10166
10176
|
width: 100%;
|
|
10167
|
-
min-height:
|
|
10168
|
-
border-radius: 0.
|
|
10169
|
-
font-size:
|
|
10177
|
+
min-height: 2.75rem;
|
|
10178
|
+
border-radius: 0.5rem;
|
|
10179
|
+
font-size: 0.875rem;
|
|
10170
10180
|
font-weight: 600;
|
|
10171
10181
|
}
|
|
10172
10182
|
|
|
@@ -10464,10 +10474,11 @@ details.svadmin-collapsible:not([open]) > :not(summary) {
|
|
|
10464
10474
|
}
|
|
10465
10475
|
|
|
10466
10476
|
.layout-clean-flat[data-theme="stripe"] [data-svadmin-table-toolbar] {
|
|
10467
|
-
border:
|
|
10468
|
-
border-
|
|
10469
|
-
|
|
10470
|
-
|
|
10477
|
+
border: 0;
|
|
10478
|
+
border-bottom: 1px solid var(--border);
|
|
10479
|
+
border-radius: 0;
|
|
10480
|
+
background: transparent;
|
|
10481
|
+
box-shadow: none;
|
|
10471
10482
|
}
|
|
10472
10483
|
|
|
10473
10484
|
.layout-clean-flat[data-theme="stripe"] [data-svadmin-form-actions] {
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
<script module lang="ts">
|
|
2
|
+
import type { Component as SvelteComponent } from 'svelte';
|
|
3
|
+
|
|
4
|
+
export interface AdminPageRoute {
|
|
5
|
+
readonly path: string;
|
|
6
|
+
readonly component: SvelteComponent<{ route: string; params: Record<string, string | undefined> }>;
|
|
7
|
+
readonly title?: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
2
10
|
const loadPublicProfilePage = () => import('./profile/PublicProfilePage.svelte');
|
|
3
11
|
const loadGetStartedPage = () => import('./account/GetStartedPage.svelte');
|
|
4
12
|
const loadUserProfilePage = () => import('./account/UserProfilePage.svelte');
|
|
@@ -65,6 +73,7 @@
|
|
|
65
73
|
import ResourceOverview from './ResourceOverview.svelte';
|
|
66
74
|
import DataState from './content/DataState.svelte';
|
|
67
75
|
import { parseContractRouteId } from '@svadmin/core/schema';
|
|
76
|
+
import { matchRoute } from '@svadmin/core/router';
|
|
68
77
|
import { resolveAdminThemeConfig } from '../default-theme.js';
|
|
69
78
|
import AutoForm from './LazyAutoForm.svelte';
|
|
70
79
|
import ShowPage from './LazyShowPage.svelte';
|
|
@@ -149,6 +158,8 @@
|
|
|
149
158
|
}>;
|
|
150
159
|
/** Custom multi-level menu configuration */
|
|
151
160
|
menu?: MenuItem[];
|
|
161
|
+
/** Product or application surface routes rendered before resource fallbacks. */
|
|
162
|
+
pageRoutes?: readonly AdminPageRoute[];
|
|
152
163
|
/** External URL to the main application or workspace (renders a shortcut in the header) */
|
|
153
164
|
siteUrl?: string;
|
|
154
165
|
/** Routing strategy for Sidebar links ('hash' | 'path' | 'auto') */
|
|
@@ -194,6 +205,7 @@
|
|
|
194
205
|
components: userComponents,
|
|
195
206
|
resourcePages,
|
|
196
207
|
menu,
|
|
208
|
+
pageRoutes,
|
|
197
209
|
siteUrl,
|
|
198
210
|
routeMode,
|
|
199
211
|
queryClient: providedQueryClient,
|
|
@@ -344,6 +356,14 @@
|
|
|
344
356
|
const route = $derived(routerState.route);
|
|
345
357
|
const params = $derived(routerState.params);
|
|
346
358
|
const path = $derived(routerState.path);
|
|
359
|
+
const customRouteMatch = $derived.by(() => {
|
|
360
|
+
if (!pageRoutes?.length) return undefined;
|
|
361
|
+
for (const candidate of pageRoutes) {
|
|
362
|
+
const match = matchRoute(path, [candidate.path]);
|
|
363
|
+
if (match) return { candidate, params: match.params };
|
|
364
|
+
}
|
|
365
|
+
return undefined;
|
|
366
|
+
});
|
|
347
367
|
const resourceNames = $derived(new Set(resources.map((resource) => resource.name)));
|
|
348
368
|
const isStandaloneTwoFactor = $derived(route === '/2fa' || route === '/authentication/branded/2fa');
|
|
349
369
|
const standaloneErrorStatus = $derived.by((): '404' | '500' | undefined => {
|
|
@@ -628,6 +648,9 @@
|
|
|
628
648
|
<LazyPage loader={loadTeamCrewTablePage} props={{}} />
|
|
629
649
|
{:else if renderedRoute.startsWith('/settings')}
|
|
630
650
|
<SettingsPage {...notificationPreferencesProvider ? { preferencesProvider: notificationPreferencesProvider } : {}} />
|
|
651
|
+
{:else if customRouteMatch}
|
|
652
|
+
{@const CustomPage = customRouteMatch.candidate.component}
|
|
653
|
+
<CustomPage route={customRouteMatch.candidate.path} params={customRouteMatch.params} />
|
|
631
654
|
{:else if renderedRoute === '/' || renderedRoute === '' || renderedRoute === '/inventory-dashboard'}
|
|
632
655
|
{#if dashboard}
|
|
633
656
|
{@render dashboard()}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
export interface AdminPageRoute {
|
|
3
|
+
readonly path: string;
|
|
4
|
+
readonly component: SvelteComponent<{
|
|
5
|
+
route: string;
|
|
6
|
+
params: Record<string, string | undefined>;
|
|
7
|
+
}>;
|
|
8
|
+
readonly title?: string;
|
|
9
|
+
}
|
|
1
10
|
import '../app.css';
|
|
2
11
|
import { type Component, type Snippet } from 'svelte';
|
|
3
12
|
import type { AccessControlProvider, AgentProvider, AuditLogProvider, AuthProvider, ChatProvider, CredentialProvider, DataProviderInput, IdentityGovernanceProvider, I18nProvider, LiveProvider, MenuItem, NotificationProvider, OrganizationProvider, ResourceDefinition, RouterProvider, SessionProvider, TaskProvider, TenantAdapter, TenantContext, ThemeConfig, ThemeMode } from '@svadmin/core';
|
|
@@ -81,6 +90,8 @@ interface Props {
|
|
|
81
90
|
}>;
|
|
82
91
|
/** Custom multi-level menu configuration */
|
|
83
92
|
menu?: MenuItem[];
|
|
93
|
+
/** Product or application surface routes rendered before resource fallbacks. */
|
|
94
|
+
pageRoutes?: readonly AdminPageRoute[];
|
|
84
95
|
/** External URL to the main application or workspace (renders a shortcut in the header) */
|
|
85
96
|
siteUrl?: string;
|
|
86
97
|
/** Routing strategy for Sidebar links ('hash' | 'path' | 'auto') */
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export type { SurfaceTone, SurfaceDensity } from "./design-contract.js";
|
|
|
3
3
|
export { designSystemComponents, type DesignComponentContract, type DesignComponentId, type DesignComponentState, } from "./design-system-components.js";
|
|
4
4
|
export { metricSurfaceClasses, tableSurfaceClasses } from "./design-system.js";
|
|
5
5
|
export { default as AdminApp } from './components/AdminApp.svelte';
|
|
6
|
+
export type { AdminPageRoute } from './components/AdminApp.svelte';
|
|
6
7
|
export { default as AutoTable } from './components/AutoTable.svelte';
|
|
7
8
|
export { default as SegmentedControl } from './components/SegmentedControl.svelte';
|
|
8
9
|
export type { SegmentedControlOption } from './components/SegmentedControl.svelte';
|
package/dist/recipes.d.ts
CHANGED
|
@@ -345,8 +345,8 @@ declare const productSectionRecipeStyles: import("tailwind-variants").TVReturnTy
|
|
|
345
345
|
title?: import("tailwind-variants").ClassValue;
|
|
346
346
|
description?: import("tailwind-variants").ClassValue;
|
|
347
347
|
root?: import("tailwind-variants").ClassValue;
|
|
348
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
349
348
|
actions?: import("tailwind-variants").ClassValue;
|
|
349
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
350
350
|
};
|
|
351
351
|
};
|
|
352
352
|
} | {
|
|
@@ -355,8 +355,8 @@ declare const productSectionRecipeStyles: import("tailwind-variants").TVReturnTy
|
|
|
355
355
|
title?: import("tailwind-variants").ClassValue;
|
|
356
356
|
description?: import("tailwind-variants").ClassValue;
|
|
357
357
|
root?: import("tailwind-variants").ClassValue;
|
|
358
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
359
358
|
actions?: import("tailwind-variants").ClassValue;
|
|
359
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
360
360
|
};
|
|
361
361
|
};
|
|
362
362
|
} | {}, {
|
|
@@ -371,8 +371,8 @@ declare const productSectionRecipeStyles: import("tailwind-variants").TVReturnTy
|
|
|
371
371
|
title?: import("tailwind-variants").ClassValue;
|
|
372
372
|
description?: import("tailwind-variants").ClassValue;
|
|
373
373
|
root?: import("tailwind-variants").ClassValue;
|
|
374
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
375
374
|
actions?: import("tailwind-variants").ClassValue;
|
|
375
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
376
376
|
};
|
|
377
377
|
};
|
|
378
378
|
} | {}, {
|
|
@@ -473,8 +473,8 @@ declare const productSettingsRecipeStyles: import("tailwind-variants").TVReturnT
|
|
|
473
473
|
title?: import("tailwind-variants").ClassValue;
|
|
474
474
|
description?: import("tailwind-variants").ClassValue;
|
|
475
475
|
root?: import("tailwind-variants").ClassValue;
|
|
476
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
477
476
|
actions?: import("tailwind-variants").ClassValue;
|
|
477
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
478
478
|
};
|
|
479
479
|
};
|
|
480
480
|
} | {
|
|
@@ -485,8 +485,8 @@ declare const productSettingsRecipeStyles: import("tailwind-variants").TVReturnT
|
|
|
485
485
|
title?: import("tailwind-variants").ClassValue;
|
|
486
486
|
description?: import("tailwind-variants").ClassValue;
|
|
487
487
|
root?: import("tailwind-variants").ClassValue;
|
|
488
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
489
488
|
actions?: import("tailwind-variants").ClassValue;
|
|
489
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
490
490
|
};
|
|
491
491
|
};
|
|
492
492
|
} | {}, {
|
|
@@ -505,8 +505,8 @@ declare const productSettingsRecipeStyles: import("tailwind-variants").TVReturnT
|
|
|
505
505
|
title?: import("tailwind-variants").ClassValue;
|
|
506
506
|
description?: import("tailwind-variants").ClassValue;
|
|
507
507
|
root?: import("tailwind-variants").ClassValue;
|
|
508
|
-
heading?: import("tailwind-variants").ClassValue;
|
|
509
508
|
actions?: import("tailwind-variants").ClassValue;
|
|
509
|
+
heading?: import("tailwind-variants").ClassValue;
|
|
510
510
|
};
|
|
511
511
|
};
|
|
512
512
|
} | {}, {
|
|
@@ -832,11 +832,11 @@ export declare const contentHeaderRecipe: (props?: Parameters<typeof contentHead
|
|
|
832
832
|
description: string;
|
|
833
833
|
root: string;
|
|
834
834
|
row: string;
|
|
835
|
+
actions: string;
|
|
835
836
|
heading: string;
|
|
836
837
|
breadcrumbs: string;
|
|
837
838
|
currentCrumb: string;
|
|
838
839
|
eyebrow: string;
|
|
839
|
-
actions: string;
|
|
840
840
|
};
|
|
841
841
|
export declare const metricBlockRecipe: (props?: Parameters<typeof metricBlockRecipeStyles>[0]) => {
|
|
842
842
|
detail: string;
|
|
@@ -853,8 +853,8 @@ export declare const productSectionRecipe: (props?: Parameters<typeof productSec
|
|
|
853
853
|
title: string;
|
|
854
854
|
description: string;
|
|
855
855
|
root: string;
|
|
856
|
-
heading: string;
|
|
857
856
|
actions: string;
|
|
857
|
+
heading: string;
|
|
858
858
|
};
|
|
859
859
|
export declare const productToolbarRecipe: (props?: Parameters<typeof productToolbarRecipeStyles>[0]) => {
|
|
860
860
|
root: string;
|
|
@@ -874,8 +874,8 @@ export declare const productSettingsRecipe: (props?: Parameters<typeof productSe
|
|
|
874
874
|
title: string;
|
|
875
875
|
description: string;
|
|
876
876
|
root: string;
|
|
877
|
-
heading: string;
|
|
878
877
|
actions: string;
|
|
878
|
+
heading: string;
|
|
879
879
|
};
|
|
880
880
|
export declare const productSettingsRowRecipe: (props?: Parameters<typeof productSettingsRowRecipeStyles>[0]) => {
|
|
881
881
|
label: string;
|
|
@@ -919,11 +919,11 @@ export declare const allRecipes: {
|
|
|
919
919
|
description: string;
|
|
920
920
|
root: string;
|
|
921
921
|
row: string;
|
|
922
|
+
actions: string;
|
|
922
923
|
heading: string;
|
|
923
924
|
breadcrumbs: string;
|
|
924
925
|
currentCrumb: string;
|
|
925
926
|
eyebrow: string;
|
|
926
|
-
actions: string;
|
|
927
927
|
};
|
|
928
928
|
metricBlockRecipe: (props?: Parameters<typeof metricBlockRecipeStyles>[0]) => {
|
|
929
929
|
detail: string;
|
|
@@ -940,8 +940,8 @@ export declare const allRecipes: {
|
|
|
940
940
|
title: string;
|
|
941
941
|
description: string;
|
|
942
942
|
root: string;
|
|
943
|
-
heading: string;
|
|
944
943
|
actions: string;
|
|
944
|
+
heading: string;
|
|
945
945
|
};
|
|
946
946
|
productToolbarRecipe: (props?: Parameters<typeof productToolbarRecipeStyles>[0]) => {
|
|
947
947
|
root: string;
|
|
@@ -961,8 +961,8 @@ export declare const allRecipes: {
|
|
|
961
961
|
title: string;
|
|
962
962
|
description: string;
|
|
963
963
|
root: string;
|
|
964
|
-
heading: string;
|
|
965
964
|
actions: string;
|
|
965
|
+
heading: string;
|
|
966
966
|
};
|
|
967
967
|
productSettingsRowRecipe: (props?: Parameters<typeof productSettingsRowRecipeStyles>[0]) => {
|
|
968
968
|
label: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@svadmin/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.84.0",
|
|
4
4
|
"description": "Pre-built admin UI components — AdminApp, AutoTable, AutoForm, Sidebar, Layout",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"@codemirror/lang-json": "^6.0.0",
|
|
89
89
|
"@codemirror/lang-markdown": "^6.0.0",
|
|
90
90
|
"@codemirror/lang-sql": "^6.0.0",
|
|
91
|
-
"@svadmin/core": "^0.
|
|
91
|
+
"@svadmin/core": "^0.61.0",
|
|
92
92
|
"@tanstack/svelte-query": "^6.1.48",
|
|
93
93
|
"codemirror": "^6.0.0",
|
|
94
94
|
"isomorphic-dompurify": "^3.23.0",
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
}
|
|
140
140
|
},
|
|
141
141
|
"dependencies": {
|
|
142
|
-
"@svadmin/devtools": "^0.3.
|
|
142
|
+
"@svadmin/devtools": "^0.3.1",
|
|
143
143
|
"@svadmin/devtools-contract": "^0.3.0",
|
|
144
144
|
"@vibeunion/devtools-devframe": "^0.1.0",
|
|
145
145
|
"typebox": "^1.3.34",
|
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
"@codemirror/lang-markdown": "^6.5.2",
|
|
178
178
|
"@codemirror/lang-sql": "^6.10.0",
|
|
179
179
|
"@happy-dom/global-registrator": "^20.11.12",
|
|
180
|
-
"@svadmin/ai-elements": "^0.11.
|
|
180
|
+
"@svadmin/ai-elements": "^0.11.2",
|
|
181
181
|
"@sveltejs/vite-plugin-svelte": "^7.3.0",
|
|
182
182
|
"@tailwindcss/cli": "4.3.3",
|
|
183
183
|
"@testing-library/dom": "^10.4.1",
|