@bernierllc/backoff-retry 0.1.1 → 0.3.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/CHANGELOG.md +13 -0
- package/README.md +110 -0
- package/dist/enhancement-manager.d.ts +205 -0
- package/dist/enhancement-manager.d.ts.map +1 -0
- package/dist/enhancement-manager.js +533 -0
- package/dist/enhancement-manager.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/memory-protection.js +1 -1
- package/dist/memory-protection.js.map +1 -1
- package/dist/neveradmin/components/RetryAnalyticsPage.d.ts +15 -0
- package/dist/neveradmin/components/RetryAnalyticsPage.d.ts.map +1 -0
- package/dist/neveradmin/components/RetryAnalyticsPage.js +28 -0
- package/dist/neveradmin/components/RetryAnalyticsPage.js.map +1 -0
- package/dist/neveradmin/components/RetryConfigurationPage.d.ts +15 -0
- package/dist/neveradmin/components/RetryConfigurationPage.d.ts.map +1 -0
- package/dist/neveradmin/components/RetryConfigurationPage.js +28 -0
- package/dist/neveradmin/components/RetryConfigurationPage.js.map +1 -0
- package/dist/neveradmin/components/RetryEnhancementsPage.d.ts +15 -0
- package/dist/neveradmin/components/RetryEnhancementsPage.d.ts.map +1 -0
- package/dist/neveradmin/components/RetryEnhancementsPage.js +28 -0
- package/dist/neveradmin/components/RetryEnhancementsPage.js.map +1 -0
- package/dist/neveradmin/components/RetryOperationsPage.d.ts +15 -0
- package/dist/neveradmin/components/RetryOperationsPage.d.ts.map +1 -0
- package/dist/neveradmin/components/RetryOperationsPage.js +28 -0
- package/dist/neveradmin/components/RetryOperationsPage.js.map +1 -0
- package/dist/neveradmin/components/RetryOverviewPage.d.ts +15 -0
- package/dist/neveradmin/components/RetryOverviewPage.d.ts.map +1 -0
- package/dist/neveradmin/components/RetryOverviewPage.js +28 -0
- package/dist/neveradmin/components/RetryOverviewPage.js.map +1 -0
- package/dist/neveradmin/components/index.d.ts +7 -0
- package/dist/neveradmin/components/index.d.ts.map +1 -0
- package/dist/neveradmin/components/index.js +32 -0
- package/dist/neveradmin/components/index.js.map +1 -0
- package/dist/neveradmin/components/types.d.ts +64 -0
- package/dist/neveradmin/components/types.d.ts.map +1 -0
- package/dist/neveradmin/components/types.js +10 -0
- package/dist/neveradmin/components/types.js.map +1 -0
- package/dist/neveradmin/hooks/index.d.ts +5 -0
- package/dist/neveradmin/hooks/index.d.ts.map +1 -0
- package/dist/neveradmin/hooks/index.js +28 -0
- package/dist/neveradmin/hooks/index.js.map +1 -0
- package/dist/neveradmin/hooks/useRetryConfiguration.d.ts +23 -0
- package/dist/neveradmin/hooks/useRetryConfiguration.d.ts.map +1 -0
- package/dist/neveradmin/hooks/useRetryConfiguration.js +162 -0
- package/dist/neveradmin/hooks/useRetryConfiguration.js.map +1 -0
- package/dist/neveradmin/hooks/useRetryEnhancements.d.ts +39 -0
- package/dist/neveradmin/hooks/useRetryEnhancements.d.ts.map +1 -0
- package/dist/neveradmin/hooks/useRetryEnhancements.js +197 -0
- package/dist/neveradmin/hooks/useRetryEnhancements.js.map +1 -0
- package/dist/neveradmin/hooks/useRetryOperations.d.ts +28 -0
- package/dist/neveradmin/hooks/useRetryOperations.d.ts.map +1 -0
- package/dist/neveradmin/hooks/useRetryOperations.js +166 -0
- package/dist/neveradmin/hooks/useRetryOperations.js.map +1 -0
- package/dist/neveradmin/hooks/useRetryStats.d.ts +19 -0
- package/dist/neveradmin/hooks/useRetryStats.d.ts.map +1 -0
- package/dist/neveradmin/hooks/useRetryStats.js +81 -0
- package/dist/neveradmin/hooks/useRetryStats.js.map +1 -0
- package/dist/neveradmin/index.d.ts +6 -0
- package/dist/neveradmin/index.d.ts.map +1 -0
- package/dist/neveradmin/index.js +29 -0
- package/dist/neveradmin/index.js.map +1 -0
- package/dist/neveradmin/registration.d.ts +33 -0
- package/dist/neveradmin/registration.d.ts.map +1 -0
- package/dist/neveradmin/registration.js +96 -0
- package/dist/neveradmin/registration.js.map +1 -0
- package/dist/neveradmin/types.d.ts +88 -0
- package/dist/neveradmin/types.d.ts.map +1 -0
- package/dist/neveradmin/types.js +10 -0
- package/dist/neveradmin/types.js.map +1 -0
- package/dist/neveradmin/utils/formatting.d.ts +41 -0
- package/dist/neveradmin/utils/formatting.d.ts.map +1 -0
- package/dist/neveradmin/utils/formatting.js +142 -0
- package/dist/neveradmin/utils/formatting.js.map +1 -0
- package/dist/neveradmin/utils/index.d.ts +4 -0
- package/dist/neveradmin/utils/index.d.ts.map +1 -0
- package/dist/neveradmin/utils/index.js +27 -0
- package/dist/neveradmin/utils/index.js.map +1 -0
- package/dist/neveradmin/utils/permissions.d.ts +74 -0
- package/dist/neveradmin/utils/permissions.d.ts.map +1 -0
- package/dist/neveradmin/utils/permissions.js +152 -0
- package/dist/neveradmin/utils/permissions.js.map +1 -0
- package/dist/neveradmin/utils/validation.d.ts +38 -0
- package/dist/neveradmin/utils/validation.d.ts.map +1 -0
- package/dist/neveradmin/utils/validation.js +142 -0
- package/dist/neveradmin/utils/validation.js.map +1 -0
- package/dist/retry-manager.d.ts +32 -11
- package/dist/retry-manager.d.ts.map +1 -1
- package/dist/retry-manager.js +128 -82
- package/dist/retry-manager.js.map +1 -1
- package/dist/security/index.d.ts +3 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +26 -0
- package/dist/security/index.js.map +1 -0
- package/dist/security/secure-storage.d.ts +61 -0
- package/dist/security/secure-storage.d.ts.map +1 -0
- package/dist/security/secure-storage.js +418 -0
- package/dist/security/secure-storage.js.map +1 -0
- package/dist/security/security-manager.d.ts +172 -0
- package/dist/security/security-manager.d.ts.map +1 -0
- package/dist/security/security-manager.js +417 -0
- package/dist/security/security-manager.js.map +1 -0
- package/dist/storage/backend-selector.d.ts +96 -0
- package/dist/storage/backend-selector.d.ts.map +1 -0
- package/dist/storage/backend-selector.js +466 -0
- package/dist/storage/backend-selector.js.map +1 -0
- package/dist/storage/index.d.ts +7 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +30 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/memory-storage.d.ts +55 -0
- package/dist/storage/memory-storage.d.ts.map +1 -0
- package/dist/storage/memory-storage.js +106 -0
- package/dist/storage/memory-storage.js.map +1 -0
- package/dist/storage/postgresql-storage.d.ts +77 -0
- package/dist/storage/postgresql-storage.d.ts.map +1 -0
- package/dist/storage/postgresql-storage.js +314 -0
- package/dist/storage/postgresql-storage.js.map +1 -0
- package/dist/storage/redis-cluster-storage.d.ts +88 -0
- package/dist/storage/redis-cluster-storage.d.ts.map +1 -0
- package/dist/storage/redis-cluster-storage.js +414 -0
- package/dist/storage/redis-cluster-storage.js.map +1 -0
- package/dist/storage/redis-storage.d.ts +67 -0
- package/dist/storage/redis-storage.d.ts.map +1 -0
- package/dist/storage/redis-storage.js +236 -0
- package/dist/storage/redis-storage.js.map +1 -0
- package/dist/storage/types.d.ts +55 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/types.js +10 -0
- package/dist/storage/types.js.map +1 -0
- package/dist/types.d.ts +7 -32
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -1
- package/package.json +15 -2
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
Copyright (c) 2025 Bernier LLC
|
|
4
|
+
|
|
5
|
+
This file is licensed to the client under a limited-use license.
|
|
6
|
+
The client may use and modify this code *only within the scope of the project it was delivered for*.
|
|
7
|
+
Redistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.registerBackoffRetryUtility = registerBackoffRetryUtility;
|
|
11
|
+
exports.createRetryAdminContext = createRetryAdminContext;
|
|
12
|
+
/**
|
|
13
|
+
* Registers the backoff-retry utility with NeverAdmin
|
|
14
|
+
*/
|
|
15
|
+
function registerBackoffRetryUtility(retryManager, enhancementManager) {
|
|
16
|
+
return {
|
|
17
|
+
id: 'backoff-retry',
|
|
18
|
+
name: 'Backoff Retry Manager',
|
|
19
|
+
version: '1.0.0',
|
|
20
|
+
description: 'Manage retry operations, monitor performance, and configure retry policies',
|
|
21
|
+
icon: 'RefreshCw',
|
|
22
|
+
permissions: [
|
|
23
|
+
'retry:read',
|
|
24
|
+
'retry:write',
|
|
25
|
+
'retry:admin',
|
|
26
|
+
'retry:moderate',
|
|
27
|
+
'retry:configure'
|
|
28
|
+
],
|
|
29
|
+
pages: [
|
|
30
|
+
{
|
|
31
|
+
path: '/admin/retry',
|
|
32
|
+
title: 'Retry Overview',
|
|
33
|
+
component: 'RetryOverviewPage',
|
|
34
|
+
permissions: ['retry:read'],
|
|
35
|
+
icon: 'BarChart3',
|
|
36
|
+
description: 'View retry statistics and performance metrics'
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
path: '/admin/retry/operations',
|
|
40
|
+
title: 'Retry Operations',
|
|
41
|
+
component: 'RetryOperationsPage',
|
|
42
|
+
permissions: ['retry:read'],
|
|
43
|
+
icon: 'List',
|
|
44
|
+
description: 'List and manage active retry operations'
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
path: '/admin/retry/configuration',
|
|
48
|
+
title: 'Configuration',
|
|
49
|
+
component: 'RetryConfigurationPage',
|
|
50
|
+
permissions: ['retry:configure'],
|
|
51
|
+
icon: 'Settings',
|
|
52
|
+
description: 'Configure retry policies and storage settings'
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
path: '/admin/retry/enhancements',
|
|
56
|
+
title: 'Enhancements',
|
|
57
|
+
component: 'RetryEnhancementsPage',
|
|
58
|
+
permissions: ['retry:admin'],
|
|
59
|
+
icon: 'Zap',
|
|
60
|
+
description: 'Manage enhancement features and auto-upgrade settings'
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
path: '/admin/retry/analytics',
|
|
64
|
+
title: 'Analytics',
|
|
65
|
+
component: 'RetryAnalyticsPage',
|
|
66
|
+
permissions: ['retry:read'],
|
|
67
|
+
icon: 'TrendingUp',
|
|
68
|
+
description: 'Detailed analytics and performance insights'
|
|
69
|
+
}
|
|
70
|
+
],
|
|
71
|
+
hooks: [
|
|
72
|
+
'useRetryStats',
|
|
73
|
+
'useRetryOperations',
|
|
74
|
+
'useRetryConfiguration',
|
|
75
|
+
'useRetryEnhancements'
|
|
76
|
+
],
|
|
77
|
+
config: {
|
|
78
|
+
enableRealTimeUpdates: true,
|
|
79
|
+
enableBulkOperations: true,
|
|
80
|
+
enableAdvancedAnalytics: true,
|
|
81
|
+
enableEnhancementManagement: true,
|
|
82
|
+
defaultRefreshInterval: 5000
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Creates the NeverAdmin context for backoff-retry
|
|
88
|
+
*/
|
|
89
|
+
function createRetryAdminContext(retryManager, enhancementManager) {
|
|
90
|
+
return {
|
|
91
|
+
retryManager,
|
|
92
|
+
enhancementManager,
|
|
93
|
+
// Additional context methods will be added here
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=registration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../src/neveradmin/registration.ts"],"names":[],"mappings":";AAAA;;;;;;EAME;;AA6BF,kEAyEC;AAKD,0DASC;AA1FD;;GAEG;AACH,SAAgB,2BAA2B,CACzC,YAA0B,EAC1B,kBAAsC;IAEtC,OAAO;QACL,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,4EAA4E;QACzF,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE;YACX,YAAY;YACZ,aAAa;YACb,aAAa;YACb,gBAAgB;YAChB,iBAAiB;SAClB;QACD,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,gBAAgB;gBACvB,SAAS,EAAE,mBAAmB;gBAC9B,WAAW,EAAE,CAAC,YAAY,CAAC;gBAC3B,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,+CAA+C;aAC7D;YACD;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,KAAK,EAAE,kBAAkB;gBACzB,SAAS,EAAE,qBAAqB;gBAChC,WAAW,EAAE,CAAC,YAAY,CAAC;gBAC3B,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,yCAAyC;aACvD;YACD;gBACE,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,eAAe;gBACtB,SAAS,EAAE,wBAAwB;gBACnC,WAAW,EAAE,CAAC,iBAAiB,CAAC;gBAChC,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,+CAA+C;aAC7D;YACD;gBACE,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,cAAc;gBACrB,SAAS,EAAE,uBAAuB;gBAClC,WAAW,EAAE,CAAC,aAAa,CAAC;gBAC5B,IAAI,EAAE,KAAK;gBACX,WAAW,EAAE,uDAAuD;aACrE;YACD;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,oBAAoB;gBAC/B,WAAW,EAAE,CAAC,YAAY,CAAC;gBAC3B,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,6CAA6C;aAC3D;SACF;QACD,KAAK,EAAE;YACL,eAAe;YACf,oBAAoB;YACpB,uBAAuB;YACvB,sBAAsB;SACvB;QACD,MAAM,EAAE;YACN,qBAAqB,EAAE,IAAI;YAC3B,oBAAoB,EAAE,IAAI;YAC1B,uBAAuB,EAAE,IAAI;YAC7B,2BAA2B,EAAE,IAAI;YACjC,sBAAsB,EAAE,IAAI;SAC7B;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CACrC,YAA0B,EAC1B,kBAAsC;IAEtC,OAAO;QACL,YAAY;QACZ,kBAAkB;QAClB,gDAAgD;KACjD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { RetryManager } from '../retry-manager';
|
|
2
|
+
import { EnhancementManager } from '../enhancement-manager';
|
|
3
|
+
export interface RetryOverviewStats {
|
|
4
|
+
totalRetries: number;
|
|
5
|
+
successfulRetries: number;
|
|
6
|
+
failedRetries: number;
|
|
7
|
+
successRate: number;
|
|
8
|
+
averageRetryTime: number;
|
|
9
|
+
activeRetries: number;
|
|
10
|
+
memoryUsage: {
|
|
11
|
+
current: number;
|
|
12
|
+
max: number;
|
|
13
|
+
percentage: number;
|
|
14
|
+
};
|
|
15
|
+
performanceScore: number;
|
|
16
|
+
}
|
|
17
|
+
export interface RetryOperation {
|
|
18
|
+
id: string;
|
|
19
|
+
status: 'pending' | 'retrying' | 'completed' | 'failed' | 'cancelled';
|
|
20
|
+
operation: string;
|
|
21
|
+
attempts: number;
|
|
22
|
+
maxAttempts: number;
|
|
23
|
+
lastAttempt: Date;
|
|
24
|
+
nextRetry?: Date;
|
|
25
|
+
totalTime: number;
|
|
26
|
+
error?: string;
|
|
27
|
+
metadata?: Record<string, any>;
|
|
28
|
+
}
|
|
29
|
+
export interface RetryFilterOptions {
|
|
30
|
+
status?: string[];
|
|
31
|
+
operation?: string;
|
|
32
|
+
dateRange?: {
|
|
33
|
+
start: Date;
|
|
34
|
+
end: Date;
|
|
35
|
+
};
|
|
36
|
+
limit?: number;
|
|
37
|
+
offset?: number;
|
|
38
|
+
}
|
|
39
|
+
export interface RetryBulkAction {
|
|
40
|
+
action: 'cancel' | 'retry' | 'delete';
|
|
41
|
+
retryIds: string[];
|
|
42
|
+
}
|
|
43
|
+
export interface RetryConfiguration {
|
|
44
|
+
storage: {
|
|
45
|
+
type: 'memory' | 'redis';
|
|
46
|
+
enabled: boolean;
|
|
47
|
+
autoUpgrade: boolean;
|
|
48
|
+
thresholdNotifications: boolean;
|
|
49
|
+
memoryThreshold: number;
|
|
50
|
+
};
|
|
51
|
+
memoryProtection: {
|
|
52
|
+
maxMemoryUsage: number;
|
|
53
|
+
maxRetryStates: number;
|
|
54
|
+
cleanupInterval: number;
|
|
55
|
+
evictionPolicy: 'lru' | 'fifo' | 'random';
|
|
56
|
+
};
|
|
57
|
+
defaultOptions: {
|
|
58
|
+
maxRetries: number;
|
|
59
|
+
initialDelayMs: number;
|
|
60
|
+
maxDelayMs: number;
|
|
61
|
+
backoffMultiplier: number;
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export interface NeverAdminRetryContext {
|
|
65
|
+
retryManager: RetryManager;
|
|
66
|
+
enhancementManager: EnhancementManager;
|
|
67
|
+
stats: RetryOverviewStats;
|
|
68
|
+
operations: RetryOperation[];
|
|
69
|
+
configuration: RetryConfiguration;
|
|
70
|
+
}
|
|
71
|
+
export interface RetryAdminPermissions {
|
|
72
|
+
'retry:read': boolean;
|
|
73
|
+
'retry:write': boolean;
|
|
74
|
+
'retry:admin': boolean;
|
|
75
|
+
'retry:moderate': boolean;
|
|
76
|
+
'retry:configure': boolean;
|
|
77
|
+
}
|
|
78
|
+
export interface RetryAdminUser {
|
|
79
|
+
id: string;
|
|
80
|
+
tenantId: string;
|
|
81
|
+
permissions: RetryAdminPermissions;
|
|
82
|
+
retryQuota?: {
|
|
83
|
+
maxRetries: number;
|
|
84
|
+
usedRetries: number;
|
|
85
|
+
resetDate: Date;
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/neveradmin/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
Copyright (c) 2025 Bernier LLC
|
|
4
|
+
|
|
5
|
+
This file is licensed to the client under a limited-use license.
|
|
6
|
+
The client may use and modify this code *only within the scope of the project it was delivered for*.
|
|
7
|
+
Redistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/neveradmin/types.ts"],"names":[],"mappings":";AAAA;;;;;;EAME"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Format bytes to human readable format
|
|
3
|
+
*/
|
|
4
|
+
export declare function formatBytes(bytes: number, decimals?: number): string;
|
|
5
|
+
/**
|
|
6
|
+
* Format milliseconds to human readable duration
|
|
7
|
+
*/
|
|
8
|
+
export declare function formatDuration(ms: number): string;
|
|
9
|
+
/**
|
|
10
|
+
* Format percentage with 1 decimal place
|
|
11
|
+
*/
|
|
12
|
+
export declare function formatPercentage(value: number): string;
|
|
13
|
+
/**
|
|
14
|
+
* Format date to relative time (e.g., "2 minutes ago")
|
|
15
|
+
*/
|
|
16
|
+
export declare function formatRelativeTime(date: Date): string;
|
|
17
|
+
/**
|
|
18
|
+
* Format retry status for display
|
|
19
|
+
*/
|
|
20
|
+
export declare function formatRetryStatus(status: string): string;
|
|
21
|
+
/**
|
|
22
|
+
* Get color for retry status
|
|
23
|
+
*/
|
|
24
|
+
export declare function getStatusColor(status: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Format memory usage for display
|
|
27
|
+
*/
|
|
28
|
+
export declare function formatMemoryUsage(current: number, max: number): string;
|
|
29
|
+
/**
|
|
30
|
+
* Get memory usage color based on percentage
|
|
31
|
+
*/
|
|
32
|
+
export declare function getMemoryUsageColor(percentage: number): string;
|
|
33
|
+
/**
|
|
34
|
+
* Format performance score for display
|
|
35
|
+
*/
|
|
36
|
+
export declare function formatPerformanceScore(score: number): string;
|
|
37
|
+
/**
|
|
38
|
+
* Get performance score color
|
|
39
|
+
*/
|
|
40
|
+
export declare function getPerformanceScoreColor(score: number): string;
|
|
41
|
+
//# sourceMappingURL=formatting.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../../src/neveradmin/utils/formatting.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,CAU/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAarD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CASxD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CASrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM9D"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
Copyright (c) 2025 Bernier LLC
|
|
4
|
+
|
|
5
|
+
This file is licensed to the client under a limited-use license.
|
|
6
|
+
The client may use and modify this code *only within the scope of the project it was delivered for*.
|
|
7
|
+
Redistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.formatBytes = formatBytes;
|
|
11
|
+
exports.formatDuration = formatDuration;
|
|
12
|
+
exports.formatPercentage = formatPercentage;
|
|
13
|
+
exports.formatRelativeTime = formatRelativeTime;
|
|
14
|
+
exports.formatRetryStatus = formatRetryStatus;
|
|
15
|
+
exports.getStatusColor = getStatusColor;
|
|
16
|
+
exports.formatMemoryUsage = formatMemoryUsage;
|
|
17
|
+
exports.getMemoryUsageColor = getMemoryUsageColor;
|
|
18
|
+
exports.formatPerformanceScore = formatPerformanceScore;
|
|
19
|
+
exports.getPerformanceScoreColor = getPerformanceScoreColor;
|
|
20
|
+
/**
|
|
21
|
+
* Format bytes to human readable format
|
|
22
|
+
*/
|
|
23
|
+
function formatBytes(bytes, decimals = 2) {
|
|
24
|
+
if (bytes === 0)
|
|
25
|
+
return '0 Bytes';
|
|
26
|
+
const k = 1024;
|
|
27
|
+
const dm = decimals < 0 ? 0 : decimals;
|
|
28
|
+
const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
29
|
+
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
30
|
+
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Format milliseconds to human readable duration
|
|
34
|
+
*/
|
|
35
|
+
function formatDuration(ms) {
|
|
36
|
+
if (ms < 1000)
|
|
37
|
+
return `${ms}ms`;
|
|
38
|
+
if (ms < 60000)
|
|
39
|
+
return `${(ms / 1000).toFixed(1)}s`;
|
|
40
|
+
if (ms < 3600000)
|
|
41
|
+
return `${(ms / 60000).toFixed(1)}m`;
|
|
42
|
+
return `${(ms / 3600000).toFixed(1)}h`;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Format percentage with 1 decimal place
|
|
46
|
+
*/
|
|
47
|
+
function formatPercentage(value) {
|
|
48
|
+
return `${value.toFixed(1)}%`;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Format date to relative time (e.g., "2 minutes ago")
|
|
52
|
+
*/
|
|
53
|
+
function formatRelativeTime(date) {
|
|
54
|
+
const now = new Date();
|
|
55
|
+
const diff = now.getTime() - date.getTime();
|
|
56
|
+
const seconds = Math.floor(diff / 1000);
|
|
57
|
+
const minutes = Math.floor(seconds / 60);
|
|
58
|
+
const hours = Math.floor(minutes / 60);
|
|
59
|
+
const days = Math.floor(hours / 24);
|
|
60
|
+
if (days > 0)
|
|
61
|
+
return `${days} day${days === 1 ? '' : 's'} ago`;
|
|
62
|
+
if (hours > 0)
|
|
63
|
+
return `${hours} hour${hours === 1 ? '' : 's'} ago`;
|
|
64
|
+
if (minutes > 0)
|
|
65
|
+
return `${minutes} minute${minutes === 1 ? '' : 's'} ago`;
|
|
66
|
+
if (seconds > 0)
|
|
67
|
+
return `${seconds} second${seconds === 1 ? '' : 's'} ago`;
|
|
68
|
+
return 'just now';
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Format retry status for display
|
|
72
|
+
*/
|
|
73
|
+
function formatRetryStatus(status) {
|
|
74
|
+
const statusMap = {
|
|
75
|
+
pending: 'Pending',
|
|
76
|
+
retrying: 'Retrying',
|
|
77
|
+
completed: 'Completed',
|
|
78
|
+
failed: 'Failed',
|
|
79
|
+
cancelled: 'Cancelled'
|
|
80
|
+
};
|
|
81
|
+
return statusMap[status] || status;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get color for retry status
|
|
85
|
+
*/
|
|
86
|
+
function getStatusColor(status) {
|
|
87
|
+
const colorMap = {
|
|
88
|
+
pending: 'text-yellow-600',
|
|
89
|
+
retrying: 'text-blue-600',
|
|
90
|
+
completed: 'text-green-600',
|
|
91
|
+
failed: 'text-red-600',
|
|
92
|
+
cancelled: 'text-gray-600'
|
|
93
|
+
};
|
|
94
|
+
return colorMap[status] || 'text-gray-600';
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Format memory usage for display
|
|
98
|
+
*/
|
|
99
|
+
function formatMemoryUsage(current, max) {
|
|
100
|
+
return `${formatBytes(current)} / ${formatBytes(max)}`;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Get memory usage color based on percentage
|
|
104
|
+
*/
|
|
105
|
+
function getMemoryUsageColor(percentage) {
|
|
106
|
+
if (percentage >= 90)
|
|
107
|
+
return 'text-red-600';
|
|
108
|
+
if (percentage >= 75)
|
|
109
|
+
return 'text-yellow-600';
|
|
110
|
+
if (percentage >= 50)
|
|
111
|
+
return 'text-orange-600';
|
|
112
|
+
return 'text-green-600';
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Format performance score for display
|
|
116
|
+
*/
|
|
117
|
+
function formatPerformanceScore(score) {
|
|
118
|
+
if (score >= 0.9)
|
|
119
|
+
return 'Excellent';
|
|
120
|
+
if (score >= 0.7)
|
|
121
|
+
return 'Good';
|
|
122
|
+
if (score >= 0.5)
|
|
123
|
+
return 'Fair';
|
|
124
|
+
if (score >= 0.3)
|
|
125
|
+
return 'Poor';
|
|
126
|
+
return 'Critical';
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get performance score color
|
|
130
|
+
*/
|
|
131
|
+
function getPerformanceScoreColor(score) {
|
|
132
|
+
if (score >= 0.9)
|
|
133
|
+
return 'text-green-600';
|
|
134
|
+
if (score >= 0.7)
|
|
135
|
+
return 'text-blue-600';
|
|
136
|
+
if (score >= 0.5)
|
|
137
|
+
return 'text-yellow-600';
|
|
138
|
+
if (score >= 0.3)
|
|
139
|
+
return 'text-orange-600';
|
|
140
|
+
return 'text-red-600';
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=formatting.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../../src/neveradmin/utils/formatting.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/neveradmin/utils/index.ts"],"names":[],"mappings":"AAQA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
Copyright (c) 2025 Bernier LLC
|
|
4
|
+
|
|
5
|
+
This file is licensed to the client under a limited-use license.
|
|
6
|
+
The client may use and modify this code *only within the scope of the project it was delivered for*.
|
|
7
|
+
Redistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
21
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
__exportStar(require("./formatting"), exports);
|
|
25
|
+
__exportStar(require("./validation"), exports);
|
|
26
|
+
__exportStar(require("./permissions"), exports);
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/neveradmin/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;;EAME;;;;;;;;;;;;;;;;AAEF,+CAA6B;AAC7B,+CAA6B;AAC7B,gDAA8B"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { RetryAdminPermissions, RetryAdminUser } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Check if user has specific retry permission
|
|
4
|
+
*/
|
|
5
|
+
export declare function hasRetryPermission(user: RetryAdminUser, permission: keyof RetryAdminPermissions): boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Check if user has any of the specified permissions
|
|
8
|
+
*/
|
|
9
|
+
export declare function hasAnyRetryPermission(user: RetryAdminUser, permissions: (keyof RetryAdminPermissions)[]): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Check if user has all of the specified permissions
|
|
12
|
+
*/
|
|
13
|
+
export declare function hasAllRetryPermissions(user: RetryAdminUser, permissions: (keyof RetryAdminPermissions)[]): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Check if user can read retry data
|
|
16
|
+
*/
|
|
17
|
+
export declare function canReadRetryData(user: RetryAdminUser): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Check if user can write retry data
|
|
20
|
+
*/
|
|
21
|
+
export declare function canWriteRetryData(user: RetryAdminUser): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Check if user can administer retry system
|
|
24
|
+
*/
|
|
25
|
+
export declare function canAdminRetrySystem(user: RetryAdminUser): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Check if user can moderate retry operations
|
|
28
|
+
*/
|
|
29
|
+
export declare function canModerateRetryOperations(user: RetryAdminUser): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Check if user can configure retry settings
|
|
32
|
+
*/
|
|
33
|
+
export declare function canConfigureRetrySettings(user: RetryAdminUser): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Check if user can cancel retry operations
|
|
36
|
+
*/
|
|
37
|
+
export declare function canCancelRetryOperations(user: RetryAdminUser): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Check if user can retry failed operations
|
|
40
|
+
*/
|
|
41
|
+
export declare function canRetryFailedOperations(user: RetryAdminUser): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Check if user can manage enhancements
|
|
44
|
+
*/
|
|
45
|
+
export declare function canManageEnhancements(user: RetryAdminUser): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Check if user has exceeded their retry quota
|
|
48
|
+
*/
|
|
49
|
+
export declare function hasExceededRetryQuota(user: RetryAdminUser): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Get remaining retry quota for user
|
|
52
|
+
*/
|
|
53
|
+
export declare function getRemainingRetryQuota(user: RetryAdminUser): number;
|
|
54
|
+
/**
|
|
55
|
+
* Check if user's retry quota has reset
|
|
56
|
+
*/
|
|
57
|
+
export declare function hasRetryQuotaReset(user: RetryAdminUser): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Get permission level for user (0-4, where 4 is highest)
|
|
60
|
+
*/
|
|
61
|
+
export declare function getRetryPermissionLevel(user: RetryAdminUser): number;
|
|
62
|
+
/**
|
|
63
|
+
* Check if user has sufficient permissions for an action
|
|
64
|
+
*/
|
|
65
|
+
export declare function hasSufficientPermissions(user: RetryAdminUser, requiredLevel: number): boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Get all permissions for a user
|
|
68
|
+
*/
|
|
69
|
+
export declare function getAllUserPermissions(user: RetryAdminUser): string[];
|
|
70
|
+
/**
|
|
71
|
+
* Check if user belongs to specific tenant
|
|
72
|
+
*/
|
|
73
|
+
export declare function belongsToTenant(user: RetryAdminUser, tenantId: string): boolean;
|
|
74
|
+
//# sourceMappingURL=permissions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../src/neveradmin/utils/permissions.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEjE;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,cAAc,EACpB,UAAU,EAAE,MAAM,qBAAqB,GACtC,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,cAAc,EACpB,WAAW,EAAE,CAAC,MAAM,qBAAqB,CAAC,EAAE,GAC3C,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,cAAc,EACpB,WAAW,EAAE,CAAC,MAAM,qBAAqB,CAAC,EAAE,GAC3C,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAE9D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAEjE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAExE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAEvE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAEtE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAEtE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAEnE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAGnE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAGnE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAGhE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAMpE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,GACpB,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,EAAE,CAIpE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE/E"}
|