@svadmin/ui 0.42.3 → 0.44.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 +462 -825
- package/dist/app.theme.css +462 -825
- package/dist/components/ErrorPage.svelte +4 -56
- package/dist/components/ResourceOperationsPage.svelte +84 -223
- package/dist/components/ResourceOperationsPage.svelte.d.ts +1 -1
- package/dist/components/TwoFactorAuthPage.svelte +44 -232
- package/dist/components/account/CompanyProfilePage.svelte +21 -142
- package/dist/components/account/GetStartedPage.svelte +45 -106
- package/dist/components/account/GetStartedPage.svelte.d.ts +1 -2
- package/dist/components/account/MembersStarterPage.svelte +49 -92
- package/dist/components/account/SecurityLogPage.svelte +16 -131
- package/dist/components/account/SettingsEnterprisePage.svelte +15 -275
- package/dist/components/account/SettingsPlainPage.svelte +10 -175
- package/dist/components/account/SettingsSidebarPage.svelte +11 -304
- package/dist/components/account/TeamMembersPage.svelte +18 -187
- package/dist/components/account/UserProfilePage.svelte +19 -196
- package/dist/components/account/UserProfilePage.svelte.d.ts +1 -2
- package/dist/components/content/ApiKeyList.svelte +13 -0
- package/dist/components/content/ApiKeyList.svelte.d.ts +16 -0
- package/dist/components/content/ContentPageHeader.svelte +31 -0
- package/dist/components/content/ContentPageHeader.svelte.d.ts +12 -0
- package/dist/components/content/ContentPageShell.svelte +39 -0
- package/dist/components/content/ContentPageShell.svelte.d.ts +14 -0
- package/dist/components/content/DataState.svelte +44 -0
- package/dist/components/content/DataState.svelte.d.ts +13 -0
- package/dist/components/content/DescriptionList.svelte +27 -0
- package/dist/components/content/DescriptionList.svelte.d.ts +14 -0
- package/dist/components/content/FileList.svelte +13 -0
- package/dist/components/content/FileList.svelte.d.ts +16 -0
- package/dist/components/content/FilterToolbar.svelte +24 -0
- package/dist/components/content/FilterToolbar.svelte.d.ts +11 -0
- package/dist/components/content/ImportDropzone.svelte +19 -0
- package/dist/components/content/ImportDropzone.svelte.d.ts +10 -0
- package/dist/components/content/IntegrationCard.svelte +16 -0
- package/dist/components/content/IntegrationCard.svelte.d.ts +15 -0
- package/dist/components/content/MemberList.svelte +16 -0
- package/dist/components/content/MemberList.svelte.d.ts +17 -0
- package/dist/components/content/MetricBlock.svelte +27 -0
- package/dist/components/content/MetricBlock.svelte.d.ts +13 -0
- package/dist/components/content/NetworkTable.svelte +18 -0
- package/dist/components/content/NetworkTable.svelte.d.ts +31 -0
- package/dist/components/content/NetworkTable.types.d.ts +4 -0
- package/dist/components/content/NetworkTable.types.js +1 -0
- package/dist/components/content/NetworkUserCard.svelte +17 -0
- package/dist/components/content/NetworkUserCard.svelte.d.ts +17 -0
- package/dist/components/content/OtpInput.svelte +22 -0
- package/dist/components/content/OtpInput.svelte.d.ts +10 -0
- package/dist/components/content/PageToolbar.svelte +18 -0
- package/dist/components/content/PageToolbar.svelte.d.ts +10 -0
- package/dist/components/content/ProjectCard.svelte +39 -0
- package/dist/components/content/ProjectCard.svelte.d.ts +20 -0
- package/dist/components/content/SectionHeader.svelte +18 -0
- package/dist/components/content/SectionHeader.svelte.d.ts +10 -0
- package/dist/components/content/SecurityEventTable.svelte +18 -0
- package/dist/components/content/SecurityEventTable.svelte.d.ts +15 -0
- package/dist/components/content/StatusBadge.svelte +19 -0
- package/dist/components/content/StatusBadge.svelte.d.ts +9 -0
- package/dist/components/content/SystemErrorState.svelte +18 -0
- package/dist/components/content/SystemErrorState.svelte.d.ts +10 -0
- package/dist/components/content/TeamCard.svelte +26 -0
- package/dist/components/content/TeamCard.svelte.d.ts +23 -0
- package/dist/components/content/TwoFactorStepper.svelte +11 -0
- package/dist/components/content/TwoFactorStepper.svelte.d.ts +8 -0
- package/dist/components/content/index.d.ts +32 -0
- package/dist/components/content/index.js +22 -0
- package/dist/components/network/TeamCrewTablePage.svelte +29 -181
- package/dist/components/network/UserCardsNFTPage.svelte +24 -137
- package/dist/components/profile/ActivityTimeline.svelte +17 -91
- package/dist/components/profile/ProfileCard.svelte +4 -4
- package/dist/components/profile/ProjectsGrid.svelte +28 -106
- package/dist/components/profile/ProjectsGrid.svelte.d.ts +2 -12
- package/dist/components/profile/PublicProfilePage.svelte +34 -186
- package/dist/components/profile/TeamsShowcase.svelte +12 -114
- package/dist/components/profile/TeamsShowcase.svelte.d.ts +2 -12
- package/dist/index.d.ts +36 -0
- package/dist/index.js +24 -0
- package/dist/reference-data.d.ts +171 -0
- package/dist/reference-data.js +47 -0
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -166,3 +166,27 @@ export { default as UserCardsNFTPage } from './components/network/UserCardsNFTPa
|
|
|
166
166
|
export { default as TeamCrewTablePage } from './components/network/TeamCrewTablePage.svelte';
|
|
167
167
|
// Auth extensions
|
|
168
168
|
export { default as TwoFactorAuthPage } from './components/TwoFactorAuthPage.svelte';
|
|
169
|
+
// Stripe-first content page and domain primitives
|
|
170
|
+
export { default as ContentPageShell } from './components/content/ContentPageShell.svelte';
|
|
171
|
+
export { default as ContentPageHeader } from './components/content/ContentPageHeader.svelte';
|
|
172
|
+
export { default as SectionHeader } from './components/content/SectionHeader.svelte';
|
|
173
|
+
export { default as PageToolbar } from './components/content/PageToolbar.svelte';
|
|
174
|
+
export { default as MetricBlock } from './components/content/MetricBlock.svelte';
|
|
175
|
+
export { default as DescriptionList } from './components/content/DescriptionList.svelte';
|
|
176
|
+
export { default as StatusBadge } from './components/content/StatusBadge.svelte';
|
|
177
|
+
export { default as FilterToolbar } from './components/content/FilterToolbar.svelte';
|
|
178
|
+
export { default as DataState } from './components/content/DataState.svelte';
|
|
179
|
+
export { default as ProjectCard } from './components/content/ProjectCard.svelte';
|
|
180
|
+
export { default as TeamCard } from './components/content/TeamCard.svelte';
|
|
181
|
+
export { default as FileList } from './components/content/FileList.svelte';
|
|
182
|
+
export { default as IntegrationCard } from './components/content/IntegrationCard.svelte';
|
|
183
|
+
export { default as ApiKeyList } from './components/content/ApiKeyList.svelte';
|
|
184
|
+
export { default as SecurityEventTable } from './components/content/SecurityEventTable.svelte';
|
|
185
|
+
export { default as MemberList } from './components/content/MemberList.svelte';
|
|
186
|
+
export { default as ImportDropzone } from './components/content/ImportDropzone.svelte';
|
|
187
|
+
export { default as NetworkUserCard } from './components/content/NetworkUserCard.svelte';
|
|
188
|
+
export { default as NetworkTable } from './components/content/NetworkTable.svelte';
|
|
189
|
+
export { default as OtpInput } from './components/content/OtpInput.svelte';
|
|
190
|
+
export { default as TwoFactorStepper } from './components/content/TwoFactorStepper.svelte';
|
|
191
|
+
export { default as SystemErrorState } from './components/content/SystemErrorState.svelte';
|
|
192
|
+
export { referenceDemoData } from './reference-data.js';
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
export interface DemoMember {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
email: string;
|
|
5
|
+
role: string;
|
|
6
|
+
department: string;
|
|
7
|
+
status: 'active' | 'invited' | 'inactive';
|
|
8
|
+
}
|
|
9
|
+
export interface DemoProject {
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
status: 'active' | 'completed' | 'on-hold';
|
|
14
|
+
members: number;
|
|
15
|
+
tasks: number;
|
|
16
|
+
progress: number;
|
|
17
|
+
tags: string[];
|
|
18
|
+
}
|
|
19
|
+
export interface DemoTeam {
|
|
20
|
+
id: string;
|
|
21
|
+
name: string;
|
|
22
|
+
description: string;
|
|
23
|
+
totalMembers: number;
|
|
24
|
+
members: Array<{
|
|
25
|
+
name: string;
|
|
26
|
+
role?: string;
|
|
27
|
+
}>;
|
|
28
|
+
color?: string;
|
|
29
|
+
rating?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface DemoIntegration {
|
|
32
|
+
id: string;
|
|
33
|
+
name: string;
|
|
34
|
+
description: string;
|
|
35
|
+
account: string;
|
|
36
|
+
connected: boolean;
|
|
37
|
+
}
|
|
38
|
+
export interface DemoApiKey {
|
|
39
|
+
id: string;
|
|
40
|
+
name: string;
|
|
41
|
+
prefix: string;
|
|
42
|
+
createdAt: string;
|
|
43
|
+
lastUsedAt: string;
|
|
44
|
+
}
|
|
45
|
+
export interface DemoSecurityEvent {
|
|
46
|
+
id: string;
|
|
47
|
+
event: string;
|
|
48
|
+
actor: string;
|
|
49
|
+
location: string;
|
|
50
|
+
createdAt: string;
|
|
51
|
+
severity: 'info' | 'warning' | 'danger';
|
|
52
|
+
}
|
|
53
|
+
export interface DemoNotification {
|
|
54
|
+
id: string;
|
|
55
|
+
title: string;
|
|
56
|
+
detail: string;
|
|
57
|
+
unread: boolean;
|
|
58
|
+
}
|
|
59
|
+
export declare const referenceDemoData: {
|
|
60
|
+
organization: {
|
|
61
|
+
id: string;
|
|
62
|
+
name: string;
|
|
63
|
+
plan: string;
|
|
64
|
+
members: number;
|
|
65
|
+
};
|
|
66
|
+
members: ({
|
|
67
|
+
id: string;
|
|
68
|
+
name: string;
|
|
69
|
+
email: string;
|
|
70
|
+
role: string;
|
|
71
|
+
department: string;
|
|
72
|
+
status: "active";
|
|
73
|
+
} | {
|
|
74
|
+
id: string;
|
|
75
|
+
name: string;
|
|
76
|
+
email: string;
|
|
77
|
+
role: string;
|
|
78
|
+
department: string;
|
|
79
|
+
status: "invited";
|
|
80
|
+
} | {
|
|
81
|
+
id: string;
|
|
82
|
+
name: string;
|
|
83
|
+
email: string;
|
|
84
|
+
role: string;
|
|
85
|
+
department: string;
|
|
86
|
+
status: "inactive";
|
|
87
|
+
})[];
|
|
88
|
+
projects: ({
|
|
89
|
+
id: string;
|
|
90
|
+
name: string;
|
|
91
|
+
description: string;
|
|
92
|
+
status: "active";
|
|
93
|
+
members: number;
|
|
94
|
+
tasks: number;
|
|
95
|
+
progress: number;
|
|
96
|
+
tags: string[];
|
|
97
|
+
} | {
|
|
98
|
+
id: string;
|
|
99
|
+
name: string;
|
|
100
|
+
description: string;
|
|
101
|
+
status: "completed";
|
|
102
|
+
members: number;
|
|
103
|
+
tasks: number;
|
|
104
|
+
progress: number;
|
|
105
|
+
tags: string[];
|
|
106
|
+
} | {
|
|
107
|
+
id: string;
|
|
108
|
+
name: string;
|
|
109
|
+
description: string;
|
|
110
|
+
status: "on-hold";
|
|
111
|
+
members: number;
|
|
112
|
+
tasks: number;
|
|
113
|
+
progress: number;
|
|
114
|
+
tags: string[];
|
|
115
|
+
})[];
|
|
116
|
+
teams: {
|
|
117
|
+
id: string;
|
|
118
|
+
name: string;
|
|
119
|
+
description: string;
|
|
120
|
+
totalMembers: number;
|
|
121
|
+
members: {
|
|
122
|
+
name: string;
|
|
123
|
+
}[];
|
|
124
|
+
}[];
|
|
125
|
+
integrations: ({
|
|
126
|
+
id: string;
|
|
127
|
+
name: string;
|
|
128
|
+
description: string;
|
|
129
|
+
account: string;
|
|
130
|
+
connected: true;
|
|
131
|
+
} | {
|
|
132
|
+
id: string;
|
|
133
|
+
name: string;
|
|
134
|
+
description: string;
|
|
135
|
+
account: string;
|
|
136
|
+
connected: false;
|
|
137
|
+
})[];
|
|
138
|
+
apiKeys: {
|
|
139
|
+
id: string;
|
|
140
|
+
name: string;
|
|
141
|
+
prefix: string;
|
|
142
|
+
createdAt: string;
|
|
143
|
+
lastUsedAt: string;
|
|
144
|
+
}[];
|
|
145
|
+
securityEvents: ({
|
|
146
|
+
id: string;
|
|
147
|
+
event: string;
|
|
148
|
+
actor: string;
|
|
149
|
+
location: string;
|
|
150
|
+
createdAt: string;
|
|
151
|
+
severity: "info";
|
|
152
|
+
} | {
|
|
153
|
+
id: string;
|
|
154
|
+
event: string;
|
|
155
|
+
actor: string;
|
|
156
|
+
location: string;
|
|
157
|
+
createdAt: string;
|
|
158
|
+
severity: "warning";
|
|
159
|
+
})[];
|
|
160
|
+
notifications: ({
|
|
161
|
+
id: string;
|
|
162
|
+
title: string;
|
|
163
|
+
detail: string;
|
|
164
|
+
unread: true;
|
|
165
|
+
} | {
|
|
166
|
+
id: string;
|
|
167
|
+
title: string;
|
|
168
|
+
detail: string;
|
|
169
|
+
unread: false;
|
|
170
|
+
})[];
|
|
171
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export const referenceDemoData = {
|
|
2
|
+
organization: { id: 'acme', name: 'Acme Corporation', plan: 'Enterprise', members: 1250 },
|
|
3
|
+
members: [
|
|
4
|
+
{ id: '1', name: 'Alex Chen', email: 'alex@acme.com', role: 'Admin', department: 'Engineering', status: 'active' },
|
|
5
|
+
{ id: '2', name: 'Sarah Kim', email: 'sarah@acme.com', role: 'Editor', department: 'Design', status: 'active' },
|
|
6
|
+
{ id: '3', name: 'Mike Johnson', email: 'mike@acme.com', role: 'Viewer', department: 'Marketing', status: 'invited' },
|
|
7
|
+
{ id: '4', name: 'Lisa Wang', email: 'lisa@acme.com', role: 'Editor', department: 'Engineering', status: 'active' },
|
|
8
|
+
{ id: '5', name: 'Tom Brown', email: 'tom@acme.com', role: 'Viewer', department: 'Sales', status: 'inactive' },
|
|
9
|
+
],
|
|
10
|
+
projects: [
|
|
11
|
+
{ id: '1', name: 'Dashboard Redesign', description: 'Modern admin dashboard with real-time analytics and customizable widgets.', status: 'active', members: 8, tasks: 34, progress: 72, tags: ['UI', 'Analytics'] },
|
|
12
|
+
{ id: '2', name: 'API Gateway v2', description: 'High-performance API gateway with rate limiting and circuit breaker patterns.', status: 'active', members: 5, tasks: 21, progress: 45, tags: ['Backend', 'Infra'] },
|
|
13
|
+
{ id: '3', name: 'Mobile App', description: 'Cross-platform mobile application built with shared native modules.', status: 'completed', members: 12, tasks: 56, progress: 100, tags: ['Mobile', 'Product'] },
|
|
14
|
+
{ id: '4', name: 'Data Pipeline', description: 'Real-time data processing pipeline for event streaming.', status: 'on-hold', members: 3, tasks: 18, progress: 20, tags: ['Data', 'Streaming'] },
|
|
15
|
+
{ id: '5', name: 'Access Review', description: 'Quarterly access certification and role ownership workflow.', status: 'active', members: 4, tasks: 16, progress: 63, tags: ['Security', 'RBAC'] },
|
|
16
|
+
{ id: '6', name: 'Billing Portal', description: 'Self-service plans, invoices, and subscription controls.', status: 'active', members: 6, tasks: 27, progress: 58, tags: ['Billing', 'Portal'] },
|
|
17
|
+
{ id: '7', name: 'Warehouse Console', description: 'Receiving, transfers, cycle counts, and exception handling.', status: 'completed', members: 9, tasks: 48, progress: 100, tags: ['Inventory', 'Operations'] },
|
|
18
|
+
{ id: '8', name: 'Notification Center', description: 'Priority routing, delivery preferences, and read-state controls.', status: 'active', members: 5, tasks: 22, progress: 74, tags: ['Messaging', 'Workflow'] },
|
|
19
|
+
{ id: '9', name: 'Partner Directory', description: 'Supplier, customer, and integration partner records.', status: 'active', members: 7, tasks: 31, progress: 46, tags: ['Directory', 'CRM'] },
|
|
20
|
+
{ id: '10', name: 'Audit Export', description: 'Scheduled evidence packages for security and compliance review.', status: 'on-hold', members: 3, tasks: 14, progress: 28, tags: ['Audit', 'Export'] },
|
|
21
|
+
{ id: '11', name: 'Team Onboarding', description: 'Invitations, import validation, and first-week account setup.', status: 'active', members: 5, tasks: 19, progress: 81, tags: ['People', 'Onboarding'] },
|
|
22
|
+
{ id: '12', name: 'AI Prompt Library', description: 'Governed operational prompts with ownership and usage signals.', status: 'completed', members: 4, tasks: 24, progress: 100, tags: ['AI', 'Governance'] },
|
|
23
|
+
],
|
|
24
|
+
teams: [
|
|
25
|
+
{ id: '1', name: 'Frontend Platform', description: 'Core UI component library and design system.', totalMembers: 8, members: [{ name: 'Alice' }, { name: 'Bob' }, { name: 'Carol' }] },
|
|
26
|
+
{ id: '2', name: 'Backend Services', description: 'API development, services architecture, and reliability.', totalMembers: 5, members: [{ name: 'Dave' }, { name: 'Eve' }] },
|
|
27
|
+
{ id: '3', name: 'Design Systems', description: 'Research, visual design, and accessibility standards.', totalMembers: 6, members: [{ name: 'Frank' }, { name: 'Grace' }] },
|
|
28
|
+
],
|
|
29
|
+
integrations: [
|
|
30
|
+
{ id: 'repo', name: 'Source Control', description: 'Pull requests, issues, and repository activity.', account: 'alexchen', connected: true },
|
|
31
|
+
{ id: 'chat', name: 'ChatOps', description: 'Team notifications and direct messages.', account: '@alex.chen', connected: true },
|
|
32
|
+
{ id: 'drive', name: 'Cloud Drive', description: 'Shared files and document previews.', account: 'alex@example.com', connected: false },
|
|
33
|
+
],
|
|
34
|
+
apiKeys: [
|
|
35
|
+
{ id: 'key-1', name: 'Local development', prefix: 'sv_demo_dev_', createdAt: '2026-08-01', lastUsedAt: 'Today, 09:20' },
|
|
36
|
+
{ id: 'key-2', name: 'CI deploy', prefix: 'sv_demo_ci_', createdAt: '2026-07-18', lastUsedAt: 'Yesterday, 18:02' },
|
|
37
|
+
],
|
|
38
|
+
securityEvents: [
|
|
39
|
+
{ id: '1', event: 'Login succeeded', actor: 'Alex Chen', location: 'Shanghai, CN', createdAt: '2 minutes ago', severity: 'info' },
|
|
40
|
+
{ id: '2', event: 'API key created', actor: 'Alex Chen', location: 'Shanghai, CN', createdAt: '1 hour ago', severity: 'info' },
|
|
41
|
+
{ id: '3', event: 'Login failed', actor: 'Unknown', location: 'Unknown', createdAt: '3 hours ago', severity: 'warning' },
|
|
42
|
+
],
|
|
43
|
+
notifications: [
|
|
44
|
+
{ id: 'n1', title: 'Sarah commented on Dashboard Redesign', detail: '8 minutes ago', unread: true },
|
|
45
|
+
{ id: 'n2', title: 'Weekly security summary is ready', detail: 'Yesterday', unread: false },
|
|
46
|
+
],
|
|
47
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@svadmin/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.44.0",
|
|
4
4
|
"description": "Pre-built admin UI components — AdminApp, AutoTable, AutoForm, Sidebar, Layout",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"./components/*": "./dist/components/*"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
42
|
-
"@svadmin/core": "^0.
|
|
42
|
+
"@svadmin/core": "^0.37.0",
|
|
43
43
|
"@tanstack/svelte-query": "^6.1.38",
|
|
44
44
|
"highlight.js": "^11.11.1",
|
|
45
45
|
"isomorphic-dompurify": "^3.22.0",
|