primus-saas-react 1.0.1 → 1.0.2
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/index.d.mts +95 -58
- package/dist/index.d.ts +95 -58
- package/dist/index.js +428 -353
- package/dist/index.mjs +397 -323
- package/package.json +1 -1
- package/src/components/auth/PrimusLogin.tsx +264 -115
package/dist/index.d.mts
CHANGED
|
@@ -1,68 +1,105 @@
|
|
|
1
|
-
import React, { ReactNode } from 'react';
|
|
1
|
+
import React$1, { ReactNode } from 'react';
|
|
2
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
3
|
|
|
4
|
-
declare const AccountDashboard: React.FC<{
|
|
4
|
+
declare const AccountDashboard: React$1.FC<{
|
|
5
5
|
apiUrl?: string;
|
|
6
6
|
}>;
|
|
7
7
|
|
|
8
|
-
declare const KYCVerification: React.FC<{
|
|
8
|
+
declare const KYCVerification: React$1.FC<{
|
|
9
9
|
userId: string;
|
|
10
10
|
apiUrl?: string;
|
|
11
11
|
}>;
|
|
12
12
|
|
|
13
|
-
declare const LoanCalculator: React.FC<{
|
|
13
|
+
declare const LoanCalculator: React$1.FC<{
|
|
14
14
|
apiUrl?: string;
|
|
15
15
|
}>;
|
|
16
16
|
|
|
17
|
-
declare const CreditScoreCard: React.FC<{
|
|
17
|
+
declare const CreditScoreCard: React$1.FC<{
|
|
18
18
|
userId: string;
|
|
19
19
|
apiUrl?: string;
|
|
20
20
|
}>;
|
|
21
21
|
|
|
22
|
-
declare const QuoteComparison: React.FC<{
|
|
22
|
+
declare const QuoteComparison: React$1.FC<{
|
|
23
23
|
apiUrl?: string;
|
|
24
24
|
}>;
|
|
25
25
|
|
|
26
|
-
declare const AgentDirectory: React.FC<{
|
|
26
|
+
declare const AgentDirectory: React$1.FC<{
|
|
27
27
|
apiUrl?: string;
|
|
28
28
|
}>;
|
|
29
29
|
|
|
30
|
-
declare const FraudDetectionDashboard: React.FC<{
|
|
30
|
+
declare const FraudDetectionDashboard: React$1.FC<{
|
|
31
31
|
apiUrl?: string;
|
|
32
32
|
}>;
|
|
33
33
|
|
|
34
|
-
declare const PremiumCalculator: React.FC<{
|
|
34
|
+
declare const PremiumCalculator: React$1.FC<{
|
|
35
35
|
apiUrl?: string;
|
|
36
36
|
}>;
|
|
37
37
|
|
|
38
|
-
declare const AICopilot: React.FC<{
|
|
38
|
+
declare const AICopilot: React$1.FC<{
|
|
39
39
|
apiUrl?: string;
|
|
40
40
|
}>;
|
|
41
41
|
|
|
42
|
-
declare const FileUploader: React.FC<{
|
|
42
|
+
declare const FileUploader: React$1.FC<{
|
|
43
43
|
apiUrl?: string;
|
|
44
44
|
onUploadComplete?: (file: any) => void;
|
|
45
45
|
}>;
|
|
46
46
|
|
|
47
|
-
declare const SecurityDashboard: React.FC<{
|
|
47
|
+
declare const SecurityDashboard: React$1.FC<{
|
|
48
48
|
apiUrl?: string;
|
|
49
49
|
}>;
|
|
50
50
|
|
|
51
|
+
type SocialProvider = 'google' | 'azure' | 'github' | 'apple' | 'microsoft' | 'facebook';
|
|
51
52
|
interface PrimusLoginProps {
|
|
52
|
-
/**
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
/** Callback when login is successful */
|
|
54
|
+
onLogin?: (credentials: {
|
|
55
|
+
username: string;
|
|
56
|
+
password: string;
|
|
57
|
+
}) => void;
|
|
58
|
+
/**
|
|
59
|
+
* Social login providers to display
|
|
60
|
+
* @example socialProviders={['google', 'azure']}
|
|
61
|
+
*/
|
|
62
|
+
socialProviders?: SocialProvider[];
|
|
63
|
+
/** Callback when social provider is clicked */
|
|
64
|
+
onSocialLogin?: (provider: SocialProvider) => void;
|
|
65
|
+
/** OAuth endpoint base URL (default: /api/auth) */
|
|
66
|
+
authEndpoint?: string;
|
|
67
|
+
/** Show email/password form (default: true) */
|
|
68
|
+
showEmailLogin?: boolean;
|
|
69
|
+
/** App title displayed above form */
|
|
55
70
|
title?: string;
|
|
56
|
-
/**
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
|
|
62
|
-
/** Show loading spinner overlay */
|
|
63
|
-
showLoadingOverlay?: boolean;
|
|
71
|
+
/** Subtitle/description text */
|
|
72
|
+
subtitle?: string;
|
|
73
|
+
/** Logo element or URL */
|
|
74
|
+
logo?: React.ReactNode | string;
|
|
75
|
+
/** Force specific theme */
|
|
76
|
+
theme?: 'light' | 'dark';
|
|
64
77
|
}
|
|
65
|
-
|
|
78
|
+
/**
|
|
79
|
+
* PrimusLogin - Complete Login Component
|
|
80
|
+
*
|
|
81
|
+
* A single component that handles all login methods. Enable features via props.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```tsx
|
|
85
|
+
* // Basic email/password only
|
|
86
|
+
* <PrimusLogin onLogin={(creds) => console.log(creds)} />
|
|
87
|
+
*
|
|
88
|
+
* // With social providers
|
|
89
|
+
* <PrimusLogin
|
|
90
|
+
* socialProviders={['google', 'azure']}
|
|
91
|
+
* onSocialLogin={(provider) => redirectToOAuth(provider)}
|
|
92
|
+
* />
|
|
93
|
+
*
|
|
94
|
+
* // Social only (no email form)
|
|
95
|
+
* <PrimusLogin
|
|
96
|
+
* showEmailLogin={false}
|
|
97
|
+
* socialProviders={['google', 'github', 'azure']}
|
|
98
|
+
* />
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
declare function PrimusLogin({ onLogin, socialProviders, onSocialLogin, authEndpoint, showEmailLogin, title, subtitle, logo, theme: themeOverride, }: PrimusLoginProps): react_jsx_runtime.JSX.Element;
|
|
102
|
+
declare const LoginPage: typeof PrimusLogin;
|
|
66
103
|
|
|
67
104
|
interface PrimusUser {
|
|
68
105
|
id?: string;
|
|
@@ -88,7 +125,7 @@ interface PrimusAuthContextType {
|
|
|
88
125
|
isLoading: boolean;
|
|
89
126
|
}
|
|
90
127
|
interface PrimusProviderProps {
|
|
91
|
-
children: React.ReactNode;
|
|
128
|
+
children: React$1.ReactNode;
|
|
92
129
|
/** Base URL for authentication API (e.g., http://localhost:5221) */
|
|
93
130
|
authority: string;
|
|
94
131
|
clientId: string;
|
|
@@ -98,7 +135,7 @@ interface PrimusProviderProps {
|
|
|
98
135
|
/** Called on login failure */
|
|
99
136
|
onLoginError?: (error: string) => void;
|
|
100
137
|
}
|
|
101
|
-
declare const PrimusProvider: React.FC<PrimusProviderProps>;
|
|
138
|
+
declare const PrimusProvider: React$1.FC<PrimusProviderProps>;
|
|
102
139
|
declare const usePrimusAuth: () => PrimusAuthContextType;
|
|
103
140
|
|
|
104
141
|
type PrimusTheme = 'light' | 'dark';
|
|
@@ -159,7 +196,7 @@ declare function usePrimusTheme(): PrimusThemeContextValue;
|
|
|
159
196
|
*/
|
|
160
197
|
declare function PrimusThemeToggle(): react_jsx_runtime.JSX.Element;
|
|
161
198
|
|
|
162
|
-
declare const NotificationFeed: React.FC;
|
|
199
|
+
declare const NotificationFeed: React$1.FC;
|
|
163
200
|
|
|
164
201
|
interface PrimusNotificationCenterProps {
|
|
165
202
|
/** Override the theme from context (optional) */
|
|
@@ -245,7 +282,7 @@ interface CheckoutFormProps {
|
|
|
245
282
|
onSuccess?: (result: any) => void;
|
|
246
283
|
onError?: (error: string) => void;
|
|
247
284
|
}
|
|
248
|
-
declare const CheckoutForm: React.FC<CheckoutFormProps>;
|
|
285
|
+
declare const CheckoutForm: React$1.FC<CheckoutFormProps>;
|
|
249
286
|
|
|
250
287
|
interface Document {
|
|
251
288
|
id: string;
|
|
@@ -260,7 +297,7 @@ interface DocumentViewerProps {
|
|
|
260
297
|
onClose?: () => void;
|
|
261
298
|
onDownload?: () => void;
|
|
262
299
|
}
|
|
263
|
-
declare const DocumentViewer: React.FC<DocumentViewerProps>;
|
|
300
|
+
declare const DocumentViewer: React$1.FC<DocumentViewerProps>;
|
|
264
301
|
|
|
265
302
|
interface CreditCardProps {
|
|
266
303
|
cardHolder: string;
|
|
@@ -269,7 +306,7 @@ interface CreditCardProps {
|
|
|
269
306
|
brand?: 'visa' | 'mastercard' | 'amex';
|
|
270
307
|
variant?: 'black' | 'blue' | 'gold' | 'platinum';
|
|
271
308
|
}
|
|
272
|
-
declare const CreditCardVisual: React.FC<CreditCardProps>;
|
|
309
|
+
declare const CreditCardVisual: React$1.FC<CreditCardProps>;
|
|
273
310
|
|
|
274
311
|
interface Transaction {
|
|
275
312
|
id: string;
|
|
@@ -284,7 +321,7 @@ interface TransactionHistoryProps {
|
|
|
284
321
|
transactions: Transaction[];
|
|
285
322
|
onTransactionClick?: (id: string) => void;
|
|
286
323
|
}
|
|
287
|
-
declare const TransactionHistory: React.FC<TransactionHistoryProps>;
|
|
324
|
+
declare const TransactionHistory: React$1.FC<TransactionHistoryProps>;
|
|
288
325
|
|
|
289
326
|
interface PolicyProps {
|
|
290
327
|
policyNumber: string;
|
|
@@ -294,7 +331,7 @@ interface PolicyProps {
|
|
|
294
331
|
nextPaymentDate: string;
|
|
295
332
|
premiumAmount: number;
|
|
296
333
|
}
|
|
297
|
-
declare const PolicyCard: React.FC<PolicyProps>;
|
|
334
|
+
declare const PolicyCard: React$1.FC<PolicyProps>;
|
|
298
335
|
|
|
299
336
|
interface ClaimStep {
|
|
300
337
|
id: string;
|
|
@@ -306,7 +343,7 @@ interface ClaimStatusTrackerProps {
|
|
|
306
343
|
claimId: string;
|
|
307
344
|
steps: ClaimStep[];
|
|
308
345
|
}
|
|
309
|
-
declare const ClaimStatusTracker: React.FC<ClaimStatusTrackerProps>;
|
|
346
|
+
declare const ClaimStatusTracker: React$1.FC<ClaimStatusTrackerProps>;
|
|
310
347
|
|
|
311
348
|
interface FeatureFlag {
|
|
312
349
|
name: string;
|
|
@@ -314,27 +351,27 @@ interface FeatureFlag {
|
|
|
314
351
|
description: string;
|
|
315
352
|
rolloutPercentage?: number;
|
|
316
353
|
}
|
|
317
|
-
declare const FeatureFlagToggle: React.FC<{
|
|
354
|
+
declare const FeatureFlagToggle: React$1.FC<{
|
|
318
355
|
apiUrl?: string;
|
|
319
356
|
}>;
|
|
320
357
|
|
|
321
|
-
declare const LogViewer: React.FC<{
|
|
358
|
+
declare const LogViewer: React$1.FC<{
|
|
322
359
|
apiUrl?: string;
|
|
323
360
|
}>;
|
|
324
361
|
|
|
325
362
|
interface PrimusLayoutProps {
|
|
326
|
-
children: React.ReactNode;
|
|
327
|
-
sidebar?: React.ReactNode;
|
|
328
|
-
header?: React.ReactNode;
|
|
363
|
+
children: React$1.ReactNode;
|
|
364
|
+
sidebar?: React$1.ReactNode;
|
|
365
|
+
header?: React$1.ReactNode;
|
|
329
366
|
/** Dark mode */
|
|
330
367
|
darkMode?: boolean;
|
|
331
368
|
}
|
|
332
|
-
declare const PrimusLayout: React.FC<PrimusLayoutProps>;
|
|
369
|
+
declare const PrimusLayout: React$1.FC<PrimusLayoutProps>;
|
|
333
370
|
|
|
334
371
|
interface SidebarItem {
|
|
335
372
|
id: string;
|
|
336
373
|
label: string;
|
|
337
|
-
icon?: React.ReactNode;
|
|
374
|
+
icon?: React$1.ReactNode;
|
|
338
375
|
href?: string;
|
|
339
376
|
onClick?: () => void;
|
|
340
377
|
active?: boolean;
|
|
@@ -342,17 +379,17 @@ interface SidebarItem {
|
|
|
342
379
|
}
|
|
343
380
|
interface PrimusSidebarProps {
|
|
344
381
|
/** App logo or title */
|
|
345
|
-
logo?: React.ReactNode;
|
|
382
|
+
logo?: React$1.ReactNode;
|
|
346
383
|
/** Navigation items */
|
|
347
384
|
items: SidebarItem[];
|
|
348
385
|
/** Footer content */
|
|
349
|
-
footer?: React.ReactNode;
|
|
386
|
+
footer?: React$1.ReactNode;
|
|
350
387
|
/** Callback when item clicked */
|
|
351
388
|
onItemClick?: (item: SidebarItem) => void;
|
|
352
389
|
/** Currently active item id */
|
|
353
390
|
activeId?: string;
|
|
354
391
|
}
|
|
355
|
-
declare const PrimusSidebar: React.FC<PrimusSidebarProps>;
|
|
392
|
+
declare const PrimusSidebar: React$1.FC<PrimusSidebarProps>;
|
|
356
393
|
|
|
357
394
|
interface PrimusHeaderProps {
|
|
358
395
|
/** Page title */
|
|
@@ -363,7 +400,7 @@ interface PrimusHeaderProps {
|
|
|
363
400
|
href?: string;
|
|
364
401
|
}[];
|
|
365
402
|
/** Right side actions */
|
|
366
|
-
actions?: React.ReactNode;
|
|
403
|
+
actions?: React$1.ReactNode;
|
|
367
404
|
/** User info/avatar */
|
|
368
405
|
user?: {
|
|
369
406
|
name: string;
|
|
@@ -373,12 +410,12 @@ interface PrimusHeaderProps {
|
|
|
373
410
|
/** On user click */
|
|
374
411
|
onUserClick?: () => void;
|
|
375
412
|
}
|
|
376
|
-
declare const PrimusHeader: React.FC<PrimusHeaderProps>;
|
|
413
|
+
declare const PrimusHeader: React$1.FC<PrimusHeaderProps>;
|
|
377
414
|
|
|
378
415
|
interface Column<T> {
|
|
379
416
|
key: keyof T | string;
|
|
380
417
|
header: string;
|
|
381
|
-
render?: (value: any, row: T) => React.ReactNode;
|
|
418
|
+
render?: (value: any, row: T) => React$1.ReactNode;
|
|
382
419
|
sortable?: boolean;
|
|
383
420
|
width?: string;
|
|
384
421
|
}
|
|
@@ -398,7 +435,7 @@ interface PrimusDataTableProps<T> {
|
|
|
398
435
|
/** On row click */
|
|
399
436
|
onRowClick?: (row: T) => void;
|
|
400
437
|
/** Actions column renderer */
|
|
401
|
-
actions?: (row: T) => React.ReactNode;
|
|
438
|
+
actions?: (row: T) => React$1.ReactNode;
|
|
402
439
|
/** Empty state message */
|
|
403
440
|
emptyMessage?: string;
|
|
404
441
|
/** Search placeholder */
|
|
@@ -412,11 +449,11 @@ interface PrimusModalProps {
|
|
|
412
449
|
open: boolean;
|
|
413
450
|
onClose: () => void;
|
|
414
451
|
title?: string;
|
|
415
|
-
children: React.ReactNode;
|
|
416
|
-
footer?: React.ReactNode;
|
|
452
|
+
children: React$1.ReactNode;
|
|
453
|
+
footer?: React$1.ReactNode;
|
|
417
454
|
size?: 'sm' | 'md' | 'lg' | 'xl';
|
|
418
455
|
}
|
|
419
|
-
declare const PrimusModal: React.FC<PrimusModalProps>;
|
|
456
|
+
declare const PrimusModal: React$1.FC<PrimusModalProps>;
|
|
420
457
|
|
|
421
458
|
interface StatCardProps {
|
|
422
459
|
title: string;
|
|
@@ -425,22 +462,22 @@ interface StatCardProps {
|
|
|
425
462
|
value: number;
|
|
426
463
|
type: 'increase' | 'decrease' | 'neutral';
|
|
427
464
|
};
|
|
428
|
-
icon?: React.ReactNode;
|
|
465
|
+
icon?: React$1.ReactNode;
|
|
429
466
|
description?: string;
|
|
430
467
|
trend?: number[];
|
|
431
468
|
}
|
|
432
|
-
declare const PrimusStatCard: React.FC<StatCardProps>;
|
|
469
|
+
declare const PrimusStatCard: React$1.FC<StatCardProps>;
|
|
433
470
|
interface PrimusDashboardProps {
|
|
434
|
-
children: React.ReactNode;
|
|
471
|
+
children: React$1.ReactNode;
|
|
435
472
|
title?: string;
|
|
436
473
|
subtitle?: string;
|
|
437
|
-
actions?: React.ReactNode;
|
|
474
|
+
actions?: React$1.ReactNode;
|
|
438
475
|
}
|
|
439
|
-
declare const PrimusDashboard: React.FC<PrimusDashboardProps>;
|
|
476
|
+
declare const PrimusDashboard: React$1.FC<PrimusDashboardProps>;
|
|
440
477
|
interface DashboardGridProps {
|
|
441
|
-
children: React.ReactNode;
|
|
478
|
+
children: React$1.ReactNode;
|
|
442
479
|
columns?: 1 | 2 | 3 | 4;
|
|
443
480
|
}
|
|
444
|
-
declare const DashboardGrid: React.FC<DashboardGridProps>;
|
|
481
|
+
declare const DashboardGrid: React$1.FC<DashboardGridProps>;
|
|
445
482
|
|
|
446
|
-
export { AICopilot, AccountDashboard, AgentDirectory, CheckoutForm, CheckoutFormProps, ClaimStatusTracker, ClaimStatusTrackerProps, ClaimStep, Column, CreditCardProps, CreditCardVisual, CreditScoreCard, DashboardGrid, DashboardGridProps, Document, DocumentViewer, DocumentViewerProps, FeatureFlag, FeatureFlagToggle, FileUploader, FraudDetectionDashboard, KYCVerification, LoanCalculator, LogViewer, Notification, NotificationBell, NotificationFeed, PolicyCard, PolicyProps, PremiumCalculator, PrimusDashboard, PrimusDashboardProps, PrimusDataTable, PrimusDataTableProps, PrimusHeader, PrimusHeaderProps, PrimusLayout, PrimusLayoutProps, PrimusLogin, PrimusLoginProps, PrimusModal, PrimusModalProps, PrimusNotification, PrimusNotificationCenter, PrimusNotifications, PrimusProvider, PrimusProviderProps, PrimusSidebar, PrimusSidebarProps, PrimusStatCard, PrimusTheme, PrimusThemeProvider, PrimusThemeToggle, QuoteComparison, SecurityDashboard, SidebarItem, StatCardProps, Transaction, TransactionHistory, TransactionHistoryProps, UseRealtimeNotificationsOptions, themeColors, useNotifications, usePrimusAuth, usePrimusTheme, useRealtimeNotifications };
|
|
483
|
+
export { AICopilot, AccountDashboard, AgentDirectory, CheckoutForm, CheckoutFormProps, ClaimStatusTracker, ClaimStatusTrackerProps, ClaimStep, Column, CreditCardProps, CreditCardVisual, CreditScoreCard, DashboardGrid, DashboardGridProps, Document, DocumentViewer, DocumentViewerProps, FeatureFlag, FeatureFlagToggle, FileUploader, FraudDetectionDashboard, KYCVerification, LoanCalculator, LogViewer, LoginPage, Notification, NotificationBell, NotificationFeed, PolicyCard, PolicyProps, PremiumCalculator, PrimusDashboard, PrimusDashboardProps, PrimusDataTable, PrimusDataTableProps, PrimusHeader, PrimusHeaderProps, PrimusLayout, PrimusLayoutProps, PrimusLogin, PrimusLoginProps, PrimusModal, PrimusModalProps, PrimusNotification, PrimusNotificationCenter, PrimusNotifications, PrimusProvider, PrimusProviderProps, PrimusSidebar, PrimusSidebarProps, PrimusStatCard, PrimusTheme, PrimusThemeProvider, PrimusThemeToggle, QuoteComparison, SecurityDashboard, SidebarItem, SocialProvider, StatCardProps, Transaction, TransactionHistory, TransactionHistoryProps, UseRealtimeNotificationsOptions, themeColors, useNotifications, usePrimusAuth, usePrimusTheme, useRealtimeNotifications };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,68 +1,105 @@
|
|
|
1
|
-
import React, { ReactNode } from 'react';
|
|
1
|
+
import React$1, { ReactNode } from 'react';
|
|
2
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
3
|
|
|
4
|
-
declare const AccountDashboard: React.FC<{
|
|
4
|
+
declare const AccountDashboard: React$1.FC<{
|
|
5
5
|
apiUrl?: string;
|
|
6
6
|
}>;
|
|
7
7
|
|
|
8
|
-
declare const KYCVerification: React.FC<{
|
|
8
|
+
declare const KYCVerification: React$1.FC<{
|
|
9
9
|
userId: string;
|
|
10
10
|
apiUrl?: string;
|
|
11
11
|
}>;
|
|
12
12
|
|
|
13
|
-
declare const LoanCalculator: React.FC<{
|
|
13
|
+
declare const LoanCalculator: React$1.FC<{
|
|
14
14
|
apiUrl?: string;
|
|
15
15
|
}>;
|
|
16
16
|
|
|
17
|
-
declare const CreditScoreCard: React.FC<{
|
|
17
|
+
declare const CreditScoreCard: React$1.FC<{
|
|
18
18
|
userId: string;
|
|
19
19
|
apiUrl?: string;
|
|
20
20
|
}>;
|
|
21
21
|
|
|
22
|
-
declare const QuoteComparison: React.FC<{
|
|
22
|
+
declare const QuoteComparison: React$1.FC<{
|
|
23
23
|
apiUrl?: string;
|
|
24
24
|
}>;
|
|
25
25
|
|
|
26
|
-
declare const AgentDirectory: React.FC<{
|
|
26
|
+
declare const AgentDirectory: React$1.FC<{
|
|
27
27
|
apiUrl?: string;
|
|
28
28
|
}>;
|
|
29
29
|
|
|
30
|
-
declare const FraudDetectionDashboard: React.FC<{
|
|
30
|
+
declare const FraudDetectionDashboard: React$1.FC<{
|
|
31
31
|
apiUrl?: string;
|
|
32
32
|
}>;
|
|
33
33
|
|
|
34
|
-
declare const PremiumCalculator: React.FC<{
|
|
34
|
+
declare const PremiumCalculator: React$1.FC<{
|
|
35
35
|
apiUrl?: string;
|
|
36
36
|
}>;
|
|
37
37
|
|
|
38
|
-
declare const AICopilot: React.FC<{
|
|
38
|
+
declare const AICopilot: React$1.FC<{
|
|
39
39
|
apiUrl?: string;
|
|
40
40
|
}>;
|
|
41
41
|
|
|
42
|
-
declare const FileUploader: React.FC<{
|
|
42
|
+
declare const FileUploader: React$1.FC<{
|
|
43
43
|
apiUrl?: string;
|
|
44
44
|
onUploadComplete?: (file: any) => void;
|
|
45
45
|
}>;
|
|
46
46
|
|
|
47
|
-
declare const SecurityDashboard: React.FC<{
|
|
47
|
+
declare const SecurityDashboard: React$1.FC<{
|
|
48
48
|
apiUrl?: string;
|
|
49
49
|
}>;
|
|
50
50
|
|
|
51
|
+
type SocialProvider = 'google' | 'azure' | 'github' | 'apple' | 'microsoft' | 'facebook';
|
|
51
52
|
interface PrimusLoginProps {
|
|
52
|
-
/**
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
/** Callback when login is successful */
|
|
54
|
+
onLogin?: (credentials: {
|
|
55
|
+
username: string;
|
|
56
|
+
password: string;
|
|
57
|
+
}) => void;
|
|
58
|
+
/**
|
|
59
|
+
* Social login providers to display
|
|
60
|
+
* @example socialProviders={['google', 'azure']}
|
|
61
|
+
*/
|
|
62
|
+
socialProviders?: SocialProvider[];
|
|
63
|
+
/** Callback when social provider is clicked */
|
|
64
|
+
onSocialLogin?: (provider: SocialProvider) => void;
|
|
65
|
+
/** OAuth endpoint base URL (default: /api/auth) */
|
|
66
|
+
authEndpoint?: string;
|
|
67
|
+
/** Show email/password form (default: true) */
|
|
68
|
+
showEmailLogin?: boolean;
|
|
69
|
+
/** App title displayed above form */
|
|
55
70
|
title?: string;
|
|
56
|
-
/**
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
|
|
62
|
-
/** Show loading spinner overlay */
|
|
63
|
-
showLoadingOverlay?: boolean;
|
|
71
|
+
/** Subtitle/description text */
|
|
72
|
+
subtitle?: string;
|
|
73
|
+
/** Logo element or URL */
|
|
74
|
+
logo?: React.ReactNode | string;
|
|
75
|
+
/** Force specific theme */
|
|
76
|
+
theme?: 'light' | 'dark';
|
|
64
77
|
}
|
|
65
|
-
|
|
78
|
+
/**
|
|
79
|
+
* PrimusLogin - Complete Login Component
|
|
80
|
+
*
|
|
81
|
+
* A single component that handles all login methods. Enable features via props.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```tsx
|
|
85
|
+
* // Basic email/password only
|
|
86
|
+
* <PrimusLogin onLogin={(creds) => console.log(creds)} />
|
|
87
|
+
*
|
|
88
|
+
* // With social providers
|
|
89
|
+
* <PrimusLogin
|
|
90
|
+
* socialProviders={['google', 'azure']}
|
|
91
|
+
* onSocialLogin={(provider) => redirectToOAuth(provider)}
|
|
92
|
+
* />
|
|
93
|
+
*
|
|
94
|
+
* // Social only (no email form)
|
|
95
|
+
* <PrimusLogin
|
|
96
|
+
* showEmailLogin={false}
|
|
97
|
+
* socialProviders={['google', 'github', 'azure']}
|
|
98
|
+
* />
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
declare function PrimusLogin({ onLogin, socialProviders, onSocialLogin, authEndpoint, showEmailLogin, title, subtitle, logo, theme: themeOverride, }: PrimusLoginProps): react_jsx_runtime.JSX.Element;
|
|
102
|
+
declare const LoginPage: typeof PrimusLogin;
|
|
66
103
|
|
|
67
104
|
interface PrimusUser {
|
|
68
105
|
id?: string;
|
|
@@ -88,7 +125,7 @@ interface PrimusAuthContextType {
|
|
|
88
125
|
isLoading: boolean;
|
|
89
126
|
}
|
|
90
127
|
interface PrimusProviderProps {
|
|
91
|
-
children: React.ReactNode;
|
|
128
|
+
children: React$1.ReactNode;
|
|
92
129
|
/** Base URL for authentication API (e.g., http://localhost:5221) */
|
|
93
130
|
authority: string;
|
|
94
131
|
clientId: string;
|
|
@@ -98,7 +135,7 @@ interface PrimusProviderProps {
|
|
|
98
135
|
/** Called on login failure */
|
|
99
136
|
onLoginError?: (error: string) => void;
|
|
100
137
|
}
|
|
101
|
-
declare const PrimusProvider: React.FC<PrimusProviderProps>;
|
|
138
|
+
declare const PrimusProvider: React$1.FC<PrimusProviderProps>;
|
|
102
139
|
declare const usePrimusAuth: () => PrimusAuthContextType;
|
|
103
140
|
|
|
104
141
|
type PrimusTheme = 'light' | 'dark';
|
|
@@ -159,7 +196,7 @@ declare function usePrimusTheme(): PrimusThemeContextValue;
|
|
|
159
196
|
*/
|
|
160
197
|
declare function PrimusThemeToggle(): react_jsx_runtime.JSX.Element;
|
|
161
198
|
|
|
162
|
-
declare const NotificationFeed: React.FC;
|
|
199
|
+
declare const NotificationFeed: React$1.FC;
|
|
163
200
|
|
|
164
201
|
interface PrimusNotificationCenterProps {
|
|
165
202
|
/** Override the theme from context (optional) */
|
|
@@ -245,7 +282,7 @@ interface CheckoutFormProps {
|
|
|
245
282
|
onSuccess?: (result: any) => void;
|
|
246
283
|
onError?: (error: string) => void;
|
|
247
284
|
}
|
|
248
|
-
declare const CheckoutForm: React.FC<CheckoutFormProps>;
|
|
285
|
+
declare const CheckoutForm: React$1.FC<CheckoutFormProps>;
|
|
249
286
|
|
|
250
287
|
interface Document {
|
|
251
288
|
id: string;
|
|
@@ -260,7 +297,7 @@ interface DocumentViewerProps {
|
|
|
260
297
|
onClose?: () => void;
|
|
261
298
|
onDownload?: () => void;
|
|
262
299
|
}
|
|
263
|
-
declare const DocumentViewer: React.FC<DocumentViewerProps>;
|
|
300
|
+
declare const DocumentViewer: React$1.FC<DocumentViewerProps>;
|
|
264
301
|
|
|
265
302
|
interface CreditCardProps {
|
|
266
303
|
cardHolder: string;
|
|
@@ -269,7 +306,7 @@ interface CreditCardProps {
|
|
|
269
306
|
brand?: 'visa' | 'mastercard' | 'amex';
|
|
270
307
|
variant?: 'black' | 'blue' | 'gold' | 'platinum';
|
|
271
308
|
}
|
|
272
|
-
declare const CreditCardVisual: React.FC<CreditCardProps>;
|
|
309
|
+
declare const CreditCardVisual: React$1.FC<CreditCardProps>;
|
|
273
310
|
|
|
274
311
|
interface Transaction {
|
|
275
312
|
id: string;
|
|
@@ -284,7 +321,7 @@ interface TransactionHistoryProps {
|
|
|
284
321
|
transactions: Transaction[];
|
|
285
322
|
onTransactionClick?: (id: string) => void;
|
|
286
323
|
}
|
|
287
|
-
declare const TransactionHistory: React.FC<TransactionHistoryProps>;
|
|
324
|
+
declare const TransactionHistory: React$1.FC<TransactionHistoryProps>;
|
|
288
325
|
|
|
289
326
|
interface PolicyProps {
|
|
290
327
|
policyNumber: string;
|
|
@@ -294,7 +331,7 @@ interface PolicyProps {
|
|
|
294
331
|
nextPaymentDate: string;
|
|
295
332
|
premiumAmount: number;
|
|
296
333
|
}
|
|
297
|
-
declare const PolicyCard: React.FC<PolicyProps>;
|
|
334
|
+
declare const PolicyCard: React$1.FC<PolicyProps>;
|
|
298
335
|
|
|
299
336
|
interface ClaimStep {
|
|
300
337
|
id: string;
|
|
@@ -306,7 +343,7 @@ interface ClaimStatusTrackerProps {
|
|
|
306
343
|
claimId: string;
|
|
307
344
|
steps: ClaimStep[];
|
|
308
345
|
}
|
|
309
|
-
declare const ClaimStatusTracker: React.FC<ClaimStatusTrackerProps>;
|
|
346
|
+
declare const ClaimStatusTracker: React$1.FC<ClaimStatusTrackerProps>;
|
|
310
347
|
|
|
311
348
|
interface FeatureFlag {
|
|
312
349
|
name: string;
|
|
@@ -314,27 +351,27 @@ interface FeatureFlag {
|
|
|
314
351
|
description: string;
|
|
315
352
|
rolloutPercentage?: number;
|
|
316
353
|
}
|
|
317
|
-
declare const FeatureFlagToggle: React.FC<{
|
|
354
|
+
declare const FeatureFlagToggle: React$1.FC<{
|
|
318
355
|
apiUrl?: string;
|
|
319
356
|
}>;
|
|
320
357
|
|
|
321
|
-
declare const LogViewer: React.FC<{
|
|
358
|
+
declare const LogViewer: React$1.FC<{
|
|
322
359
|
apiUrl?: string;
|
|
323
360
|
}>;
|
|
324
361
|
|
|
325
362
|
interface PrimusLayoutProps {
|
|
326
|
-
children: React.ReactNode;
|
|
327
|
-
sidebar?: React.ReactNode;
|
|
328
|
-
header?: React.ReactNode;
|
|
363
|
+
children: React$1.ReactNode;
|
|
364
|
+
sidebar?: React$1.ReactNode;
|
|
365
|
+
header?: React$1.ReactNode;
|
|
329
366
|
/** Dark mode */
|
|
330
367
|
darkMode?: boolean;
|
|
331
368
|
}
|
|
332
|
-
declare const PrimusLayout: React.FC<PrimusLayoutProps>;
|
|
369
|
+
declare const PrimusLayout: React$1.FC<PrimusLayoutProps>;
|
|
333
370
|
|
|
334
371
|
interface SidebarItem {
|
|
335
372
|
id: string;
|
|
336
373
|
label: string;
|
|
337
|
-
icon?: React.ReactNode;
|
|
374
|
+
icon?: React$1.ReactNode;
|
|
338
375
|
href?: string;
|
|
339
376
|
onClick?: () => void;
|
|
340
377
|
active?: boolean;
|
|
@@ -342,17 +379,17 @@ interface SidebarItem {
|
|
|
342
379
|
}
|
|
343
380
|
interface PrimusSidebarProps {
|
|
344
381
|
/** App logo or title */
|
|
345
|
-
logo?: React.ReactNode;
|
|
382
|
+
logo?: React$1.ReactNode;
|
|
346
383
|
/** Navigation items */
|
|
347
384
|
items: SidebarItem[];
|
|
348
385
|
/** Footer content */
|
|
349
|
-
footer?: React.ReactNode;
|
|
386
|
+
footer?: React$1.ReactNode;
|
|
350
387
|
/** Callback when item clicked */
|
|
351
388
|
onItemClick?: (item: SidebarItem) => void;
|
|
352
389
|
/** Currently active item id */
|
|
353
390
|
activeId?: string;
|
|
354
391
|
}
|
|
355
|
-
declare const PrimusSidebar: React.FC<PrimusSidebarProps>;
|
|
392
|
+
declare const PrimusSidebar: React$1.FC<PrimusSidebarProps>;
|
|
356
393
|
|
|
357
394
|
interface PrimusHeaderProps {
|
|
358
395
|
/** Page title */
|
|
@@ -363,7 +400,7 @@ interface PrimusHeaderProps {
|
|
|
363
400
|
href?: string;
|
|
364
401
|
}[];
|
|
365
402
|
/** Right side actions */
|
|
366
|
-
actions?: React.ReactNode;
|
|
403
|
+
actions?: React$1.ReactNode;
|
|
367
404
|
/** User info/avatar */
|
|
368
405
|
user?: {
|
|
369
406
|
name: string;
|
|
@@ -373,12 +410,12 @@ interface PrimusHeaderProps {
|
|
|
373
410
|
/** On user click */
|
|
374
411
|
onUserClick?: () => void;
|
|
375
412
|
}
|
|
376
|
-
declare const PrimusHeader: React.FC<PrimusHeaderProps>;
|
|
413
|
+
declare const PrimusHeader: React$1.FC<PrimusHeaderProps>;
|
|
377
414
|
|
|
378
415
|
interface Column<T> {
|
|
379
416
|
key: keyof T | string;
|
|
380
417
|
header: string;
|
|
381
|
-
render?: (value: any, row: T) => React.ReactNode;
|
|
418
|
+
render?: (value: any, row: T) => React$1.ReactNode;
|
|
382
419
|
sortable?: boolean;
|
|
383
420
|
width?: string;
|
|
384
421
|
}
|
|
@@ -398,7 +435,7 @@ interface PrimusDataTableProps<T> {
|
|
|
398
435
|
/** On row click */
|
|
399
436
|
onRowClick?: (row: T) => void;
|
|
400
437
|
/** Actions column renderer */
|
|
401
|
-
actions?: (row: T) => React.ReactNode;
|
|
438
|
+
actions?: (row: T) => React$1.ReactNode;
|
|
402
439
|
/** Empty state message */
|
|
403
440
|
emptyMessage?: string;
|
|
404
441
|
/** Search placeholder */
|
|
@@ -412,11 +449,11 @@ interface PrimusModalProps {
|
|
|
412
449
|
open: boolean;
|
|
413
450
|
onClose: () => void;
|
|
414
451
|
title?: string;
|
|
415
|
-
children: React.ReactNode;
|
|
416
|
-
footer?: React.ReactNode;
|
|
452
|
+
children: React$1.ReactNode;
|
|
453
|
+
footer?: React$1.ReactNode;
|
|
417
454
|
size?: 'sm' | 'md' | 'lg' | 'xl';
|
|
418
455
|
}
|
|
419
|
-
declare const PrimusModal: React.FC<PrimusModalProps>;
|
|
456
|
+
declare const PrimusModal: React$1.FC<PrimusModalProps>;
|
|
420
457
|
|
|
421
458
|
interface StatCardProps {
|
|
422
459
|
title: string;
|
|
@@ -425,22 +462,22 @@ interface StatCardProps {
|
|
|
425
462
|
value: number;
|
|
426
463
|
type: 'increase' | 'decrease' | 'neutral';
|
|
427
464
|
};
|
|
428
|
-
icon?: React.ReactNode;
|
|
465
|
+
icon?: React$1.ReactNode;
|
|
429
466
|
description?: string;
|
|
430
467
|
trend?: number[];
|
|
431
468
|
}
|
|
432
|
-
declare const PrimusStatCard: React.FC<StatCardProps>;
|
|
469
|
+
declare const PrimusStatCard: React$1.FC<StatCardProps>;
|
|
433
470
|
interface PrimusDashboardProps {
|
|
434
|
-
children: React.ReactNode;
|
|
471
|
+
children: React$1.ReactNode;
|
|
435
472
|
title?: string;
|
|
436
473
|
subtitle?: string;
|
|
437
|
-
actions?: React.ReactNode;
|
|
474
|
+
actions?: React$1.ReactNode;
|
|
438
475
|
}
|
|
439
|
-
declare const PrimusDashboard: React.FC<PrimusDashboardProps>;
|
|
476
|
+
declare const PrimusDashboard: React$1.FC<PrimusDashboardProps>;
|
|
440
477
|
interface DashboardGridProps {
|
|
441
|
-
children: React.ReactNode;
|
|
478
|
+
children: React$1.ReactNode;
|
|
442
479
|
columns?: 1 | 2 | 3 | 4;
|
|
443
480
|
}
|
|
444
|
-
declare const DashboardGrid: React.FC<DashboardGridProps>;
|
|
481
|
+
declare const DashboardGrid: React$1.FC<DashboardGridProps>;
|
|
445
482
|
|
|
446
|
-
export { AICopilot, AccountDashboard, AgentDirectory, CheckoutForm, CheckoutFormProps, ClaimStatusTracker, ClaimStatusTrackerProps, ClaimStep, Column, CreditCardProps, CreditCardVisual, CreditScoreCard, DashboardGrid, DashboardGridProps, Document, DocumentViewer, DocumentViewerProps, FeatureFlag, FeatureFlagToggle, FileUploader, FraudDetectionDashboard, KYCVerification, LoanCalculator, LogViewer, Notification, NotificationBell, NotificationFeed, PolicyCard, PolicyProps, PremiumCalculator, PrimusDashboard, PrimusDashboardProps, PrimusDataTable, PrimusDataTableProps, PrimusHeader, PrimusHeaderProps, PrimusLayout, PrimusLayoutProps, PrimusLogin, PrimusLoginProps, PrimusModal, PrimusModalProps, PrimusNotification, PrimusNotificationCenter, PrimusNotifications, PrimusProvider, PrimusProviderProps, PrimusSidebar, PrimusSidebarProps, PrimusStatCard, PrimusTheme, PrimusThemeProvider, PrimusThemeToggle, QuoteComparison, SecurityDashboard, SidebarItem, StatCardProps, Transaction, TransactionHistory, TransactionHistoryProps, UseRealtimeNotificationsOptions, themeColors, useNotifications, usePrimusAuth, usePrimusTheme, useRealtimeNotifications };
|
|
483
|
+
export { AICopilot, AccountDashboard, AgentDirectory, CheckoutForm, CheckoutFormProps, ClaimStatusTracker, ClaimStatusTrackerProps, ClaimStep, Column, CreditCardProps, CreditCardVisual, CreditScoreCard, DashboardGrid, DashboardGridProps, Document, DocumentViewer, DocumentViewerProps, FeatureFlag, FeatureFlagToggle, FileUploader, FraudDetectionDashboard, KYCVerification, LoanCalculator, LogViewer, LoginPage, Notification, NotificationBell, NotificationFeed, PolicyCard, PolicyProps, PremiumCalculator, PrimusDashboard, PrimusDashboardProps, PrimusDataTable, PrimusDataTableProps, PrimusHeader, PrimusHeaderProps, PrimusLayout, PrimusLayoutProps, PrimusLogin, PrimusLoginProps, PrimusModal, PrimusModalProps, PrimusNotification, PrimusNotificationCenter, PrimusNotifications, PrimusProvider, PrimusProviderProps, PrimusSidebar, PrimusSidebarProps, PrimusStatCard, PrimusTheme, PrimusThemeProvider, PrimusThemeToggle, QuoteComparison, SecurityDashboard, SidebarItem, SocialProvider, StatCardProps, Transaction, TransactionHistory, TransactionHistoryProps, UseRealtimeNotificationsOptions, themeColors, useNotifications, usePrimusAuth, usePrimusTheme, useRealtimeNotifications };
|