@jmruthers/pace-core 0.5.61 → 0.5.63
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/{DataTable-5M6MV2VY.js → DataTable-7BER7PDS.js} +6 -6
- package/dist/{DataTable-DqDDvBfI.d.ts → DataTable-D15XipLZ.d.ts} +7 -0
- package/dist/{PublicLoadingSpinner-CrMOrhNz.d.ts → PublicLoadingSpinner-CXJ-W9wZ.d.ts} +2 -2
- package/dist/{chunk-44SAHU2N.js → chunk-2LPYEFXI.js} +5 -5
- package/dist/chunk-4BWGRQBG.js +74 -0
- package/dist/chunk-4BWGRQBG.js.map +1 -0
- package/dist/{chunk-XMTHMOOM.js → chunk-BTCA3ENN.js} +4 -4
- package/dist/{chunk-ESXTFEE6.js → chunk-C7GUF747.js} +3 -3
- package/dist/{chunk-W7PPXKTZ.js → chunk-CKNY7HYS.js} +2 -2
- package/dist/{chunk-5MLDIGHB.js → chunk-FVDOEGGG.js} +3 -3
- package/dist/{chunk-HFDYTSAP.js → chunk-QVEOQVD4.js} +3 -3
- package/dist/{chunk-XDXG6QVH.js → chunk-S66AJVI2.js} +13 -6
- package/dist/chunk-S66AJVI2.js.map +1 -0
- package/dist/{chunk-E4FPK232.js → chunk-T2MQY57J.js} +2 -2
- package/dist/{chunk-4ULBJNIT.js → chunk-T6HVDA24.js} +2 -2
- package/dist/{chunk-STT7INZR.js → chunk-ULBI5JGB.js} +2 -1
- package/dist/{chunk-CGSYCF2W.js → chunk-VTJ5HCZB.js} +2 -2
- package/dist/components.d.ts +82 -5
- package/dist/components.js +258 -9
- package/dist/components.js.map +1 -1
- package/dist/{appConfig-DjpeG6P-.d.ts → formatting-BfDeV-ja.d.ts} +29 -1
- package/dist/hooks.d.ts +3 -2
- package/dist/hooks.js +5 -5
- package/dist/index.d.ts +8 -11
- package/dist/index.js +25 -14
- package/dist/index.js.map +1 -1
- package/dist/{organisation-DD0yBbGU.d.ts → organisation-t-vvQC3g.d.ts} +1 -1
- package/dist/providers.d.ts +2 -2
- package/dist/providers.js +4 -4
- package/dist/rbac/index.js +6 -6
- package/dist/types.js +1 -1
- package/dist/{usePublicRouteParams-Cu6oKazv.d.ts → usePublicRouteParams-CdoFxnJK.d.ts} +2 -63
- package/dist/useToast-Bm6TnSK-.d.ts +63 -0
- package/dist/utils.d.ts +3 -31
- package/dist/utils.js +8 -41
- package/dist/utils.js.map +1 -1
- package/docs/api/classes/ErrorBoundary.md +1 -1
- package/docs/api/classes/InvalidScopeError.md +1 -1
- package/docs/api/classes/MissingUserContextError.md +1 -1
- package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
- package/docs/api/classes/PermissionDeniedError.md +1 -1
- package/docs/api/classes/PublicErrorBoundary.md +1 -1
- package/docs/api/classes/RBACAuditManager.md +1 -1
- package/docs/api/classes/RBACCache.md +1 -1
- package/docs/api/classes/RBACEngine.md +1 -1
- package/docs/api/classes/RBACError.md +1 -1
- package/docs/api/classes/RBACNotInitializedError.md +1 -1
- package/docs/api/classes/SecureSupabaseClient.md +1 -1
- package/docs/api/classes/StorageUtils.md +1 -1
- package/docs/api/interfaces/AggregateConfig.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CardProps.md +1 -1
- package/docs/api/interfaces/ColorPalette.md +1 -1
- package/docs/api/interfaces/ColorShade.md +1 -1
- package/docs/api/interfaces/DataAccessRecord.md +1 -1
- package/docs/api/interfaces/DataTableAction.md +1 -1
- package/docs/api/interfaces/DataTableColumn.md +1 -1
- package/docs/api/interfaces/DataTableProps.md +44 -18
- package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
- package/docs/api/interfaces/EmptyStateConfig.md +1 -1
- package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
- package/docs/api/interfaces/EventContextType.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/EventProviderProps.md +1 -1
- package/docs/api/interfaces/FileSizeLimits.md +1 -1
- package/docs/api/interfaces/FileUploadProps.md +1 -1
- package/docs/api/interfaces/FooterProps.md +1 -1
- package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
- package/docs/api/interfaces/InputProps.md +1 -1
- package/docs/api/interfaces/LabelProps.md +1 -1
- package/docs/api/interfaces/LoginFormProps.md +1 -1
- package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
- package/docs/api/interfaces/NavigationContextType.md +1 -1
- package/docs/api/interfaces/NavigationGuardProps.md +1 -1
- package/docs/api/interfaces/NavigationItem.md +1 -1
- package/docs/api/interfaces/NavigationMenuProps.md +1 -1
- package/docs/api/interfaces/NavigationProviderProps.md +1 -1
- package/docs/api/interfaces/Organisation.md +1 -1
- package/docs/api/interfaces/OrganisationContextType.md +1 -1
- package/docs/api/interfaces/OrganisationMembership.md +1 -1
- package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
- package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
- package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
- package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
- package/docs/api/interfaces/PageAccessRecord.md +1 -1
- package/docs/api/interfaces/PagePermissionContextType.md +1 -1
- package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
- package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
- package/docs/api/interfaces/PaletteData.md +1 -1
- package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
- package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
- package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
- package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
- package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
- package/docs/api/interfaces/RBACConfig.md +1 -1
- package/docs/api/interfaces/RBACContextType.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RBACProviderProps.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
- package/docs/api/interfaces/RouteAccessRecord.md +1 -1
- package/docs/api/interfaces/RouteConfig.md +1 -1
- package/docs/api/interfaces/SecureDataContextType.md +1 -1
- package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
- package/docs/api/interfaces/StorageConfig.md +1 -1
- package/docs/api/interfaces/StorageFileInfo.md +1 -1
- package/docs/api/interfaces/StorageFileMetadata.md +1 -1
- package/docs/api/interfaces/StorageListOptions.md +1 -1
- package/docs/api/interfaces/StorageListResult.md +1 -1
- package/docs/api/interfaces/StorageUploadOptions.md +1 -1
- package/docs/api/interfaces/StorageUploadResult.md +1 -1
- package/docs/api/interfaces/StorageUrlOptions.md +1 -1
- package/docs/api/interfaces/StyleImport.md +1 -1
- package/docs/api/interfaces/ToastActionElement.md +1 -1
- package/docs/api/interfaces/ToastProps.md +1 -1
- package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
- package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
- package/docs/api/interfaces/UserEventAccess.md +1 -1
- package/docs/api/interfaces/UserMenuProps.md +1 -1
- package/docs/api/interfaces/UserProfile.md +1 -1
- package/docs/api/modules.md +148 -26
- package/docs/implementation-guides/data-tables.md +67 -0
- package/package.json +1 -1
- package/src/components/DataTable/DataTable.tsx +13 -0
- package/src/components/DataTable/__tests__/DataTable.default-state.test.tsx +414 -0
- package/src/components/DataTable/components/DataTableCore.tsx +19 -2
- package/src/components/DataTable/types.ts +9 -0
- package/src/components/Dialog/examples/__tests__/SmartDialogExample.unit.test.tsx +151 -0
- package/src/components/Dialog/utils/__tests__/safeHtml.unit.test.ts +611 -0
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.accessibility.test.tsx +287 -0
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.integration.test.tsx +861 -0
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.performance.test.tsx +628 -0
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.security.test.tsx +777 -0
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.unit.test.tsx +901 -0
- package/src/components/Toast/index.ts +2 -0
- package/src/components/index.ts +15 -0
- package/src/hooks/__tests__/useApiFetch.unit.test.ts +1 -1
- package/src/hooks/useFileReference.ts +37 -0
- package/src/index.ts +10 -0
- package/src/styles/base.css +208 -0
- package/src/styles/semantic.css +24 -0
- package/dist/chunk-W66AZIOH.js +0 -29
- package/dist/chunk-W66AZIOH.js.map +0 -1
- package/dist/chunk-XDXG6QVH.js.map +0 -1
- /package/dist/{DataTable-5M6MV2VY.js.map → DataTable-7BER7PDS.js.map} +0 -0
- /package/dist/{chunk-44SAHU2N.js.map → chunk-2LPYEFXI.js.map} +0 -0
- /package/dist/{chunk-XMTHMOOM.js.map → chunk-BTCA3ENN.js.map} +0 -0
- /package/dist/{chunk-ESXTFEE6.js.map → chunk-C7GUF747.js.map} +0 -0
- /package/dist/{chunk-W7PPXKTZ.js.map → chunk-CKNY7HYS.js.map} +0 -0
- /package/dist/{chunk-5MLDIGHB.js.map → chunk-FVDOEGGG.js.map} +0 -0
- /package/dist/{chunk-HFDYTSAP.js.map → chunk-QVEOQVD4.js.map} +0 -0
- /package/dist/{chunk-E4FPK232.js.map → chunk-T2MQY57J.js.map} +0 -0
- /package/dist/{chunk-4ULBJNIT.js.map → chunk-T6HVDA24.js.map} +0 -0
- /package/dist/{chunk-STT7INZR.js.map → chunk-ULBI5JGB.js.map} +0 -0
- /package/dist/{chunk-CGSYCF2W.js.map → chunk-VTJ5HCZB.js.map} +0 -0
package/src/components/index.ts
CHANGED
|
@@ -237,6 +237,16 @@ export { PasswordResetForm } from './PasswordReset';
|
|
|
237
237
|
export { FileUpload } from './FileUpload';
|
|
238
238
|
export type { FileUploadProps } from './FileUpload';
|
|
239
239
|
|
|
240
|
+
export { FileDisplay } from './FileDisplay';
|
|
241
|
+
export type { FileDisplayProps } from './FileDisplay';
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
// ============================================================================
|
|
245
|
+
// TYPES
|
|
246
|
+
// ============================================================================
|
|
247
|
+
|
|
248
|
+
export { FileCategory } from '../types/file-reference';
|
|
249
|
+
export type { FileReference, FileMetadata, FileUploadOptions } from '../types/file-reference';
|
|
240
250
|
|
|
241
251
|
// ============================================================================
|
|
242
252
|
// HOOKS
|
|
@@ -245,6 +255,11 @@ export type { FileUploadProps } from './FileUpload';
|
|
|
245
255
|
export { useStorage, useFileUpload } from '../hooks/useStorage';
|
|
246
256
|
export type { UseStorageOptions, UseStorageReturn } from '../hooks/useStorage';
|
|
247
257
|
|
|
258
|
+
export { useFileReference, useFileReferenceForRecord } from '../hooks/useFileReference';
|
|
259
|
+
export type { UseFileReferenceOptions, UseFileReferenceReturn, UseFileReferenceForRecordReturn } from '../hooks/useFileReference';
|
|
260
|
+
|
|
261
|
+
export { useToast } from '../hooks/useToast';
|
|
262
|
+
|
|
248
263
|
// RBAC Components - Use the new RBAC system
|
|
249
264
|
// For RBAC functionality, import from @jmruthers/pace-core/rbac
|
|
250
265
|
// export { PermissionGuard, AccessLevelGuard } from '@jmruthers/pace-core/rbac';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { renderHook, waitFor } from '@testing-library/react';
|
|
4
4
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
5
|
-
import { renderWithProviders
|
|
5
|
+
import { renderWithProviders } from '../../__tests__/helpers/test-utils';
|
|
6
6
|
|
|
7
7
|
// Mock fetch globally for all tests
|
|
8
8
|
const mockFetch = vi.fn();
|
|
@@ -230,3 +230,40 @@ export function useFileReferenceForRecord(
|
|
|
230
230
|
clearError
|
|
231
231
|
};
|
|
232
232
|
}
|
|
233
|
+
|
|
234
|
+
// Type definitions for the hooks
|
|
235
|
+
export type UseFileReferenceOptions = {
|
|
236
|
+
table_name: string;
|
|
237
|
+
record_id: string;
|
|
238
|
+
organisation_id: string;
|
|
239
|
+
};
|
|
240
|
+
|
|
241
|
+
export type UseFileReferenceReturn = {
|
|
242
|
+
isLoading: boolean;
|
|
243
|
+
error: string | null;
|
|
244
|
+
uploadFile: (options: FileUploadOptions, file: File) => Promise<FileUploadResult | null>;
|
|
245
|
+
getFileReference: (table_name: string, record_id: string, organisation_id: string) => Promise<FileReference | null>;
|
|
246
|
+
getFileUrl: (table_name: string, record_id: string, organisation_id: string) => Promise<string | null>;
|
|
247
|
+
getSignedUrl: (table_name: string, record_id: string, organisation_id: string, expires_in?: number) => Promise<string | null>;
|
|
248
|
+
updateFileReference: (id: string, updates: Partial<FileReference>) => Promise<FileReference | null>;
|
|
249
|
+
deleteFileReference: (table_name: string, record_id: string, organisation_id: string, delete_file?: boolean) => Promise<boolean>;
|
|
250
|
+
listFileReferences: (table_name: string, record_id: string, organisation_id: string) => Promise<FileReference[]>;
|
|
251
|
+
getFileCount: (table_name: string, record_id: string, organisation_id: string) => Promise<number>;
|
|
252
|
+
clearError: () => void;
|
|
253
|
+
};
|
|
254
|
+
|
|
255
|
+
export type UseFileReferenceForRecordReturn = {
|
|
256
|
+
isLoading: boolean;
|
|
257
|
+
error: string | null;
|
|
258
|
+
fileUrl: string | null;
|
|
259
|
+
fileReference: FileReference | null;
|
|
260
|
+
fileReferences: FileReference[];
|
|
261
|
+
fileCount: number;
|
|
262
|
+
loadFileReference: () => Promise<FileReference | null>;
|
|
263
|
+
loadFileUrl: () => Promise<string | null>;
|
|
264
|
+
loadFileReferences: () => Promise<FileReference[]>;
|
|
265
|
+
loadFileCount: () => Promise<number>;
|
|
266
|
+
deleteFile: (delete_file?: boolean) => Promise<boolean>;
|
|
267
|
+
updateFileReference: (id: string, updates: Partial<FileReference>) => Promise<FileReference | null>;
|
|
268
|
+
clearError: () => void;
|
|
269
|
+
};
|
package/src/index.ts
CHANGED
|
@@ -173,6 +173,16 @@ export { useAppConfig } from './hooks/useAppConfig';
|
|
|
173
173
|
export { cn } from './utils/cn';
|
|
174
174
|
export { setAppConfig, getAppConfig, getCurrentAppName, getCurrentAppId } from './utils/appConfig';
|
|
175
175
|
|
|
176
|
+
// FORMATTING UTILITIES
|
|
177
|
+
export {
|
|
178
|
+
formatDate,
|
|
179
|
+
formatCurrency,
|
|
180
|
+
formatNumber,
|
|
181
|
+
formatPercent,
|
|
182
|
+
formatCompactNumber,
|
|
183
|
+
formatFileSize
|
|
184
|
+
} from './utils/formatting';
|
|
185
|
+
|
|
176
186
|
// STORAGE UTILITIES
|
|
177
187
|
export { FileUpload } from './components/FileUpload/FileUpload';
|
|
178
188
|
export type { FileUploadProps } from './components/FileUpload/FileUpload';
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
@layer base {
|
|
4
|
+
|
|
5
|
+
/*base resets */
|
|
6
|
+
* {
|
|
7
|
+
font-family: 'Open Sans';
|
|
8
|
+
border-color: var(--color-border);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
body {
|
|
12
|
+
min-height: 100vh;
|
|
13
|
+
color: var(--color-foreground);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* Font definitions */
|
|
17
|
+
@font-face {
|
|
18
|
+
font-family: "Georama";
|
|
19
|
+
font-style: normal;
|
|
20
|
+
font-weight: 100 200 300 400 500 600 700 800 900;
|
|
21
|
+
font-display: swap;
|
|
22
|
+
src: url("/fonts/georama.woff2") format("woff2");
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@font-face {
|
|
26
|
+
font-family: "Georama";
|
|
27
|
+
font-style: italic;
|
|
28
|
+
font-weight: 100 200 300 400 500 600 700 800 900;
|
|
29
|
+
font-display: swap;
|
|
30
|
+
src: url("/fonts/georama-italic.woff2") format("woff2");
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@font-face {
|
|
34
|
+
font-family: "Open Sans";
|
|
35
|
+
font-style: normal;
|
|
36
|
+
font-weight: 100 200 300 400 500 600 700 800 900;
|
|
37
|
+
font-display: swap;
|
|
38
|
+
src: url("/fonts/open-sans.woff2") format("woff2");
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@font-face {
|
|
42
|
+
font-family: "Open Sans";
|
|
43
|
+
font-style: italic;
|
|
44
|
+
font-weight: 100 200 300 400 500 600 700 800 900;
|
|
45
|
+
font-display: swap;
|
|
46
|
+
src: url("/fonts/open-sans-italic.woff2") format("woff2");
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
@font-face {
|
|
50
|
+
font-family: "Reddit Mono";
|
|
51
|
+
font-style: normal;
|
|
52
|
+
font-weight: 200 300 400 500 600 700 800 900;
|
|
53
|
+
font-display: swap;
|
|
54
|
+
src: url("/fonts/reddit-mono.woff2") format("woff2");
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* Elements */
|
|
58
|
+
h1,
|
|
59
|
+
h2,
|
|
60
|
+
h3,
|
|
61
|
+
h4,
|
|
62
|
+
h5,
|
|
63
|
+
h6 {
|
|
64
|
+
margin-bottom: 0.25lh;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
h1,
|
|
68
|
+
h2,
|
|
69
|
+
h3 {
|
|
70
|
+
font-family: 'Georama';
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
h1 {
|
|
74
|
+
font-size: 2.5rem;
|
|
75
|
+
font-weight: 700;
|
|
76
|
+
line-height: 1.2;
|
|
77
|
+
color: var(--color-app-main-600);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
h2 {
|
|
81
|
+
font-size: 2rem;
|
|
82
|
+
font-weight: 700;
|
|
83
|
+
line-height: 1.3;
|
|
84
|
+
color: var(--color-app-main-600);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
h3 {
|
|
88
|
+
font-size: 1.75rem;
|
|
89
|
+
font-weight: 600;
|
|
90
|
+
line-height: 1.4;
|
|
91
|
+
color: var(--color-app-main-700);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
h4 {
|
|
95
|
+
font-size: 1.5rem;
|
|
96
|
+
font-weight: 600;
|
|
97
|
+
line-height: 1.4;
|
|
98
|
+
color: var(--color-app-main-700);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
h5 {
|
|
102
|
+
font-size: 1.25rem;
|
|
103
|
+
font-weight: 500;
|
|
104
|
+
line-height: 1.4;
|
|
105
|
+
color: var(--color-app-main-800);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
h6 {
|
|
109
|
+
font-size: 1rem;
|
|
110
|
+
font-weight: 500;
|
|
111
|
+
line-height: 1.4;
|
|
112
|
+
color: var(--color-app-main-800);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
p {
|
|
116
|
+
margin-bottom: 1rem;
|
|
117
|
+
line-height: 1.6;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
a {
|
|
121
|
+
color: var(--color-app-main-700);
|
|
122
|
+
text-decoration: none;
|
|
123
|
+
transition: color 0.2s ease;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
a:hover {
|
|
127
|
+
color: var(--color-app-acc-700);
|
|
128
|
+
text-decoration: underline;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
strong {
|
|
132
|
+
font-weight: 600;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
em {
|
|
136
|
+
font-style: italic;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
u {
|
|
140
|
+
text-decoration: underline;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
pre,
|
|
144
|
+
code {
|
|
145
|
+
font-family: "Reddit Mono";
|
|
146
|
+
font-size: 0.875em;
|
|
147
|
+
background-color: var(--color-app-sec-100);
|
|
148
|
+
padding: 0.2em 0.4em;
|
|
149
|
+
border-radius: 0.25rem;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
pre code {
|
|
153
|
+
display: inline-block;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
blockquote {
|
|
157
|
+
border-left: 4px solid var(--color-app-main-600);
|
|
158
|
+
padding: 0.5rem 1rem;
|
|
159
|
+
margin: 1.5rem 0;
|
|
160
|
+
font-style: italic;
|
|
161
|
+
color: var(--color-app-main-800);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
ul,
|
|
165
|
+
ol {
|
|
166
|
+
margin: 0.25lh 0;
|
|
167
|
+
padding-left: 1.5rem;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
ul {
|
|
171
|
+
list-style-type: disc;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
ol {
|
|
175
|
+
list-style-type: decimal;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
li {
|
|
179
|
+
margin-bottom: 0.25lh;
|
|
180
|
+
line-height: 1.6;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
hr {
|
|
184
|
+
border: 0;
|
|
185
|
+
border-top: 1px solid var(--color-app-sec-200);
|
|
186
|
+
margin: 2rem 0;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
small {
|
|
190
|
+
font-size: 0.875em;
|
|
191
|
+
color: var(--color-app-main-500);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
--app-width: 90rem;
|
|
195
|
+
|
|
196
|
+
.appGradient {
|
|
197
|
+
background: linear-gradient(145deg, var(--color-app-main-100) 10%, var(--color-app-main-200) 30%, var(--color-app-main-200) 70%, var(--color-app-main-300) 90%);
|
|
198
|
+
background-attachment: fixed;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
@layer components {
|
|
203
|
+
/* Custom component styles go here */
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
@layer utilities {
|
|
207
|
+
/* Custom utility styles go here */
|
|
208
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
@theme inline {
|
|
4
|
+
/* Semantic token mapping */
|
|
5
|
+
--color-border: var(--color-app-main-500);
|
|
6
|
+
--color-input: var(--color-app-sec-200);
|
|
7
|
+
--color-ring: var(--color-app-main-950);
|
|
8
|
+
--color-background: var(--color-app-main-50);
|
|
9
|
+
--color-foreground: var(--color-app-main-950);
|
|
10
|
+
--color-primary: var(--color-app-main-600);
|
|
11
|
+
--color-primary-foreground: var(--color-app-main-50);
|
|
12
|
+
--color-secondary: var(--color-app-sec-400);
|
|
13
|
+
--color-secondary-foreground: var(--color-app-main-950);
|
|
14
|
+
--color-destructive: var(--color-app-acc-700);
|
|
15
|
+
--color-destructive-foreground: var(--color-app-main-50);
|
|
16
|
+
--color-muted: var(--color-app-sec-100);
|
|
17
|
+
--color-muted-foreground: var(--color-app-main-700);
|
|
18
|
+
--color-accent: var(--color-app-acc-400);
|
|
19
|
+
--color-accent-foreground: var(--color-app-main-950);
|
|
20
|
+
--color-popover: var(--color-app-main-50);
|
|
21
|
+
--color-popover-foreground: var(--color-app-main-950);
|
|
22
|
+
--color-card: var(--color-app-main-50);
|
|
23
|
+
--color-card-foreground: var(--color-app-main-950);
|
|
24
|
+
}
|
package/dist/chunk-W66AZIOH.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
// src/utils/appConfig.ts
|
|
2
|
-
var currentAppConfig = null;
|
|
3
|
-
function setAppConfig(config) {
|
|
4
|
-
currentAppConfig = config;
|
|
5
|
-
}
|
|
6
|
-
function getAppConfig() {
|
|
7
|
-
if (!currentAppConfig) {
|
|
8
|
-
const appName = import.meta.env.REACT_APP_NAME || "PACE";
|
|
9
|
-
return {
|
|
10
|
-
appName,
|
|
11
|
-
appId: appName
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
return currentAppConfig;
|
|
15
|
-
}
|
|
16
|
-
function getCurrentAppName() {
|
|
17
|
-
return getAppConfig().appName;
|
|
18
|
-
}
|
|
19
|
-
function getCurrentAppId() {
|
|
20
|
-
return getAppConfig().appId;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export {
|
|
24
|
-
setAppConfig,
|
|
25
|
-
getAppConfig,
|
|
26
|
-
getCurrentAppName,
|
|
27
|
-
getCurrentAppId
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=chunk-W66AZIOH.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/appConfig.ts"],"sourcesContent":["\n/**\n * Application configuration utilities\n */\n\nexport interface AppConfig {\n appName: string;\n appId: string;\n}\n\nlet currentAppConfig: AppConfig | null = null;\n\n/**\n * Set the current application configuration\n */\nexport function setAppConfig(config: AppConfig) {\n currentAppConfig = config;\n}\n\n/**\n * Get the current application configuration\n */\nexport function getAppConfig(): AppConfig {\n if (!currentAppConfig) {\n // Fallback to environment or default\n const appName = import.meta.env.REACT_APP_NAME || 'PACE';\n return {\n appName,\n appId: appName\n };\n }\n return currentAppConfig;\n}\n\n/**\n * Get the current app name\n */\nexport function getCurrentAppName(): string {\n return getAppConfig().appName;\n}\n\n/**\n * Get the current app ID\n */\nexport function getCurrentAppId(): string {\n return getAppConfig().appId;\n}\n"],"mappings":";AAUA,IAAI,mBAAqC;AAKlC,SAAS,aAAa,QAAmB;AAC9C,qBAAmB;AACrB;AAKO,SAAS,eAA0B;AACxC,MAAI,CAAC,kBAAkB;AAErB,UAAM,UAAU,YAAY,IAAI,kBAAkB;AAClD,WAAO;AAAA,MACL;AAAA,MACA,OAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAKO,SAAS,oBAA4B;AAC1C,SAAO,aAAa,EAAE;AACxB;AAKO,SAAS,kBAA0B;AACxC,SAAO,aAAa,EAAE;AACxB;","names":[]}
|