@burdenoff/microfe-auth 2026.510.127
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/README.md +12 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/auth/AuthRoot.d.ts +30 -0
- package/dist/auth/AuthRoot.d.ts.map +1 -0
- package/dist/auth/AuthRoot.js +82 -0
- package/dist/auth/AuthRoot.js.map +1 -0
- package/dist/auth/AuthRoutes.d.ts +29 -0
- package/dist/auth/AuthRoutes.d.ts.map +1 -0
- package/dist/auth/AuthRoutes.js +271 -0
- package/dist/auth/AuthRoutes.js.map +1 -0
- package/dist/auth/components/AuthIcons.d.ts +17 -0
- package/dist/auth/components/AuthIcons.d.ts.map +1 -0
- package/dist/auth/components/AuthIcons.js +197 -0
- package/dist/auth/components/AuthIcons.js.map +1 -0
- package/dist/auth/components/AuthLayout.d.ts +17 -0
- package/dist/auth/components/AuthLayout.d.ts.map +1 -0
- package/dist/auth/components/AuthLayout.js +237 -0
- package/dist/auth/components/AuthLayout.js.map +1 -0
- package/dist/auth/components/CaptchaV2.d.ts +16 -0
- package/dist/auth/components/CaptchaV2.d.ts.map +1 -0
- package/dist/auth/components/CaptchaV2.js +47 -0
- package/dist/auth/components/CaptchaV2.js.map +1 -0
- package/dist/auth/components/ConfirmActionDialog.d.ts +16 -0
- package/dist/auth/components/ConfirmActionDialog.d.ts.map +1 -0
- package/dist/auth/components/ConfirmActionDialog.js +68 -0
- package/dist/auth/components/ConfirmActionDialog.js.map +1 -0
- package/dist/auth/components/index.d.ts +4 -0
- package/dist/auth/components/index.d.ts.map +1 -0
- package/dist/auth/components/profile/UserProfileMenu.d.ts +42 -0
- package/dist/auth/components/profile/UserProfileMenu.d.ts.map +1 -0
- package/dist/auth/components/profile/UserProfileMenu.js +91 -0
- package/dist/auth/components/profile/UserProfileMenu.js.map +1 -0
- package/dist/auth/components/workspace/WorkspaceSelector.d.ts +76 -0
- package/dist/auth/components/workspace/WorkspaceSelector.d.ts.map +1 -0
- package/dist/auth/components/workspace/WorkspaceSelector.js +240 -0
- package/dist/auth/components/workspace/WorkspaceSelector.js.map +1 -0
- package/dist/auth/constants/permissions.d.ts +30 -0
- package/dist/auth/constants/permissions.d.ts.map +1 -0
- package/dist/auth/constants/permissions.js +18 -0
- package/dist/auth/constants/permissions.js.map +1 -0
- package/dist/auth/constants/sessionKeys.d.ts +18 -0
- package/dist/auth/constants/sessionKeys.d.ts.map +1 -0
- package/dist/auth/constants/sessionKeys.js +6 -0
- package/dist/auth/constants/sessionKeys.js.map +1 -0
- package/dist/auth/hooks/index.d.ts +18 -0
- package/dist/auth/hooks/index.d.ts.map +1 -0
- package/dist/auth/hooks/index.js +16 -0
- package/dist/auth/hooks/useAccountOperations.d.ts +19 -0
- package/dist/auth/hooks/useAccountOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useAccountOperations.js +52 -0
- package/dist/auth/hooks/useAccountOperations.js.map +1 -0
- package/dist/auth/hooks/useApiKeyOperations.d.ts +22 -0
- package/dist/auth/hooks/useApiKeyOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useApiKeyOperations.js +4 -0
- package/dist/auth/hooks/useAppOperations.d.ts +26 -0
- package/dist/auth/hooks/useAppOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useAppOperations.js +4 -0
- package/dist/auth/hooks/useAuthOperations.d.ts +57 -0
- package/dist/auth/hooks/useAuthOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useAuthOperations.js +236 -0
- package/dist/auth/hooks/useAuthOperations.js.map +1 -0
- package/dist/auth/hooks/useAuthPermissions.d.ts +20 -0
- package/dist/auth/hooks/useAuthPermissions.d.ts.map +1 -0
- package/dist/auth/hooks/useAuthPermissions.js +22 -0
- package/dist/auth/hooks/useAuthPermissions.js.map +1 -0
- package/dist/auth/hooks/useCaptchaV3.d.ts +13 -0
- package/dist/auth/hooks/useCaptchaV3.d.ts.map +1 -0
- package/dist/auth/hooks/useCaptchaV3.js +19 -0
- package/dist/auth/hooks/useCaptchaV3.js.map +1 -0
- package/dist/auth/hooks/useContextSwitcherData.d.ts +106 -0
- package/dist/auth/hooks/useContextSwitcherData.d.ts.map +1 -0
- package/dist/auth/hooks/useContextSwitcherData.js +466 -0
- package/dist/auth/hooks/useContextSwitcherData.js.map +1 -0
- package/dist/auth/hooks/useDelegationOperations.d.ts +25 -0
- package/dist/auth/hooks/useDelegationOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useDelegationOperations.js +4 -0
- package/dist/auth/hooks/useMfaOperations.d.ts +18 -0
- package/dist/auth/hooks/useMfaOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useMfaOperations.js +103 -0
- package/dist/auth/hooks/useMfaOperations.js.map +1 -0
- package/dist/auth/hooks/useMyWorkspaces.d.ts +45 -0
- package/dist/auth/hooks/useMyWorkspaces.d.ts.map +1 -0
- package/dist/auth/hooks/useMyWorkspaces.js +140 -0
- package/dist/auth/hooks/useMyWorkspaces.js.map +1 -0
- package/dist/auth/hooks/useOAuthOperations.d.ts +19 -0
- package/dist/auth/hooks/useOAuthOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useOAuthOperations.js +103 -0
- package/dist/auth/hooks/useOAuthOperations.js.map +1 -0
- package/dist/auth/hooks/usePasswordOperations.d.ts +13 -0
- package/dist/auth/hooks/usePasswordOperations.d.ts.map +1 -0
- package/dist/auth/hooks/usePasswordOperations.js +56 -0
- package/dist/auth/hooks/usePasswordOperations.js.map +1 -0
- package/dist/auth/hooks/useSessionOperations.d.ts +41 -0
- package/dist/auth/hooks/useSessionOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useSessionOperations.js +59 -0
- package/dist/auth/hooks/useSessionOperations.js.map +1 -0
- package/dist/auth/hooks/useSsoOperations.d.ts +65 -0
- package/dist/auth/hooks/useSsoOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useSsoOperations.js +236 -0
- package/dist/auth/hooks/useSsoOperations.js.map +1 -0
- package/dist/auth/hooks/useTokenRefresh.d.ts +56 -0
- package/dist/auth/hooks/useTokenRefresh.d.ts.map +1 -0
- package/dist/auth/hooks/useTokenRefresh.js +53 -0
- package/dist/auth/hooks/useTokenRefresh.js.map +1 -0
- package/dist/auth/hooks/useUserOperations.d.ts +32 -0
- package/dist/auth/hooks/useUserOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useUserOperations.js +100 -0
- package/dist/auth/hooks/useUserOperations.js.map +1 -0
- package/dist/auth/hooks/useWorkspaceOperations.d.ts +35 -0
- package/dist/auth/hooks/useWorkspaceOperations.d.ts.map +1 -0
- package/dist/auth/hooks/useWorkspaceOperations.js +35 -0
- package/dist/auth/hooks/useWorkspaceOperations.js.map +1 -0
- package/dist/auth/hooks/useWorkspaceToken.d.ts +56 -0
- package/dist/auth/hooks/useWorkspaceToken.d.ts.map +1 -0
- package/dist/auth/hooks/useWorkspaceToken.js +94 -0
- package/dist/auth/hooks/useWorkspaceToken.js.map +1 -0
- package/dist/auth/index.d.ts +63 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +18 -0
- package/dist/auth/pages/ApiKeysPage.d.ts +5 -0
- package/dist/auth/pages/ApiKeysPage.d.ts.map +1 -0
- package/dist/auth/pages/AppsPage.d.ts +5 -0
- package/dist/auth/pages/AppsPage.d.ts.map +1 -0
- package/dist/auth/pages/AuditLogPage.d.ts +5 -0
- package/dist/auth/pages/AuditLogPage.d.ts.map +1 -0
- package/dist/auth/pages/AuditLogPage.js +129 -0
- package/dist/auth/pages/AuditLogPage.js.map +1 -0
- package/dist/auth/pages/DelegationsPage.d.ts +5 -0
- package/dist/auth/pages/DelegationsPage.d.ts.map +1 -0
- package/dist/auth/pages/EmailVerifyPage.d.ts +5 -0
- package/dist/auth/pages/EmailVerifyPage.d.ts.map +1 -0
- package/dist/auth/pages/EmailVerifyPage.js +166 -0
- package/dist/auth/pages/EmailVerifyPage.js.map +1 -0
- package/dist/auth/pages/LoginPage.d.ts +6 -0
- package/dist/auth/pages/LoginPage.d.ts.map +1 -0
- package/dist/auth/pages/LoginPage.js +575 -0
- package/dist/auth/pages/LoginPage.js.map +1 -0
- package/dist/auth/pages/MagicLinkPage.d.ts +6 -0
- package/dist/auth/pages/MagicLinkPage.d.ts.map +1 -0
- package/dist/auth/pages/MagicLinkPage.js +219 -0
- package/dist/auth/pages/MagicLinkPage.js.map +1 -0
- package/dist/auth/pages/MfaSetupPage.d.ts +5 -0
- package/dist/auth/pages/MfaSetupPage.d.ts.map +1 -0
- package/dist/auth/pages/MfaSetupPage.js +341 -0
- package/dist/auth/pages/MfaSetupPage.js.map +1 -0
- package/dist/auth/pages/MfaVerifyPage.d.ts +7 -0
- package/dist/auth/pages/MfaVerifyPage.d.ts.map +1 -0
- package/dist/auth/pages/MfaVerifyPage.js +189 -0
- package/dist/auth/pages/MfaVerifyPage.js.map +1 -0
- package/dist/auth/pages/OAuthCallbackPage.d.ts +7 -0
- package/dist/auth/pages/OAuthCallbackPage.d.ts.map +1 -0
- package/dist/auth/pages/OAuthCallbackPage.js +100 -0
- package/dist/auth/pages/OAuthCallbackPage.js.map +1 -0
- package/dist/auth/pages/PasswordResetPage.d.ts +6 -0
- package/dist/auth/pages/PasswordResetPage.d.ts.map +1 -0
- package/dist/auth/pages/PasswordResetPage.js +352 -0
- package/dist/auth/pages/PasswordResetPage.js.map +1 -0
- package/dist/auth/pages/ReactivatePage.d.ts +6 -0
- package/dist/auth/pages/ReactivatePage.d.ts.map +1 -0
- package/dist/auth/pages/ReactivatePage.js +217 -0
- package/dist/auth/pages/ReactivatePage.js.map +1 -0
- package/dist/auth/pages/RegisterPage.d.ts +5 -0
- package/dist/auth/pages/RegisterPage.d.ts.map +1 -0
- package/dist/auth/pages/RegisterPage.js +439 -0
- package/dist/auth/pages/RegisterPage.js.map +1 -0
- package/dist/auth/pages/SSORelayCallbackPage.d.ts +8 -0
- package/dist/auth/pages/SSORelayCallbackPage.d.ts.map +1 -0
- package/dist/auth/pages/SSORelayCallbackPage.js +48 -0
- package/dist/auth/pages/SSORelayCallbackPage.js.map +1 -0
- package/dist/auth/pages/SSORelayPage.d.ts +18 -0
- package/dist/auth/pages/SSORelayPage.d.ts.map +1 -0
- package/dist/auth/pages/SSORelayPage.js +134 -0
- package/dist/auth/pages/SSORelayPage.js.map +1 -0
- package/dist/auth/pages/SecurityPage.d.ts +5 -0
- package/dist/auth/pages/SecurityPage.d.ts.map +1 -0
- package/dist/auth/pages/SecurityPage.js +587 -0
- package/dist/auth/pages/SecurityPage.js.map +1 -0
- package/dist/auth/pages/SessionBridgePage.d.ts +14 -0
- package/dist/auth/pages/SessionBridgePage.d.ts.map +1 -0
- package/dist/auth/pages/SessionBridgePage.js +231 -0
- package/dist/auth/pages/SessionBridgePage.js.map +1 -0
- package/dist/auth/pages/SessionsPage.d.ts +5 -0
- package/dist/auth/pages/SessionsPage.d.ts.map +1 -0
- package/dist/auth/pages/SessionsPage.js +258 -0
- package/dist/auth/pages/SessionsPage.js.map +1 -0
- package/dist/auth/pages/SsoCallbackPage.d.ts +8 -0
- package/dist/auth/pages/SsoCallbackPage.d.ts.map +1 -0
- package/dist/auth/pages/SsoCallbackPage.js +188 -0
- package/dist/auth/pages/SsoCallbackPage.js.map +1 -0
- package/dist/auth/pages/SsoConfigPage.d.ts +6 -0
- package/dist/auth/pages/SsoConfigPage.d.ts.map +1 -0
- package/dist/auth/pages/SsoConfigPage.js +1144 -0
- package/dist/auth/pages/SsoConfigPage.js.map +1 -0
- package/dist/auth/pages/SsoLoginPage.d.ts +7 -0
- package/dist/auth/pages/SsoLoginPage.d.ts.map +1 -0
- package/dist/auth/pages/SsoLoginPage.js +236 -0
- package/dist/auth/pages/SsoLoginPage.js.map +1 -0
- package/dist/auth/pages/UserDetailsPage.d.ts +11 -0
- package/dist/auth/pages/UserDetailsPage.d.ts.map +1 -0
- package/dist/auth/pages/UserDetailsPage.js +338 -0
- package/dist/auth/pages/UserDetailsPage.js.map +1 -0
- package/dist/auth/pages/UserProfilePage.d.ts +5 -0
- package/dist/auth/pages/UserProfilePage.d.ts.map +1 -0
- package/dist/auth/pages/UserProfilePage.js +445 -0
- package/dist/auth/pages/UserProfilePage.js.map +1 -0
- package/dist/auth/pages/UsersPage.d.ts +5 -0
- package/dist/auth/pages/UsersPage.d.ts.map +1 -0
- package/dist/auth/pages/UsersPage.js +899 -0
- package/dist/auth/pages/UsersPage.js.map +1 -0
- package/dist/auth/providers/AuthProvider.d.ts +18 -0
- package/dist/auth/providers/AuthProvider.d.ts.map +1 -0
- package/dist/auth/providers/AuthProvider.js +36 -0
- package/dist/auth/providers/AuthProvider.js.map +1 -0
- package/dist/auth/providers/CaptchaProvider.d.ts +13 -0
- package/dist/auth/providers/CaptchaProvider.d.ts.map +1 -0
- package/dist/auth/providers/CaptchaProvider.js +21 -0
- package/dist/auth/providers/CaptchaProvider.js.map +1 -0
- package/dist/auth/store/authStore.d.ts +91 -0
- package/dist/auth/store/authStore.d.ts.map +1 -0
- package/dist/auth/store/authStore.js +314 -0
- package/dist/auth/store/authStore.js.map +1 -0
- package/dist/auth/types/index.d.ts +636 -0
- package/dist/auth/types/index.d.ts.map +1 -0
- package/dist/auth/utils/captchaConfig.d.ts +4 -0
- package/dist/auth/utils/captchaConfig.d.ts.map +1 -0
- package/dist/auth/utils/captchaConfig.js +13 -0
- package/dist/auth/utils/captchaConfig.js.map +1 -0
- package/dist/auth/utils/formatters.d.ts +37 -0
- package/dist/auth/utils/formatters.d.ts.map +1 -0
- package/dist/auth/utils/formatters.js +48 -0
- package/dist/auth/utils/formatters.js.map +1 -0
- package/dist/auth/utils/gatewayBaseUrls.d.ts +6 -0
- package/dist/auth/utils/gatewayBaseUrls.d.ts.map +1 -0
- package/dist/auth/utils/gatewayBaseUrls.js +18 -0
- package/dist/auth/utils/gatewayBaseUrls.js.map +1 -0
- package/dist/auth/utils/index.d.ts +3 -0
- package/dist/auth/utils/index.d.ts.map +1 -0
- package/dist/auth/utils/validation.d.ts +30 -0
- package/dist/auth/utils/validation.d.ts.map +1 -0
- package/dist/auth/utils/validation.js +15 -0
- package/dist/auth/utils/validation.js.map +1 -0
- package/dist/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2978 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-operations.js +944 -0
- package/dist/generated/global-operations.js.map +1 -0
- package/dist/generated/global-types.d.ts +21253 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +55214 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/microfe-auth.css +3 -0
- package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +70 -0
- package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js.map +1 -0
- package/dist/node_modules/object-assign/index.js +41 -0
- package/dist/node_modules/object-assign/index.js.map +1 -0
- package/dist/node_modules/prop-types/checkPropTypes.js +46 -0
- package/dist/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/dist/node_modules/prop-types/factoryWithThrowingShims.js +49 -0
- package/dist/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +272 -0
- package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/dist/node_modules/prop-types/index.js +16 -0
- package/dist/node_modules/prop-types/index.js.map +1 -0
- package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +10 -0
- package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/dist/node_modules/prop-types/lib/has.js +10 -0
- package/dist/node_modules/prop-types/lib/has.js.map +1 -0
- package/dist/node_modules/qrcode.react/lib/esm/index.js +959 -0
- package/dist/node_modules/qrcode.react/lib/esm/index.js.map +1 -0
- package/dist/node_modules/react-async-script/lib/esm/async-script-loader.js +114 -0
- package/dist/node_modules/react-async-script/lib/esm/async-script-loader.js.map +1 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/index.js +8 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/index.js.map +1 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/recaptcha-wrapper.js +20 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/recaptcha-wrapper.js.map +1 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/recaptcha.js +148 -0
- package/dist/node_modules/react-google-recaptcha/lib/esm/recaptcha.js.map +1 -0
- package/dist/node_modules/react-google-recaptcha-v3/dist/react-google-recaptcha-v3.esm.js +445 -0
- package/dist/node_modules/react-google-recaptcha-v3/dist/react-google-recaptcha-v3.esm.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js +84 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js +64 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/node_modules/react-is/index.js +12 -0
- package/dist/node_modules/react-is/index.js.map +1 -0
- package/dist/shared/hooks/index.d.ts +7 -0
- package/dist/shared/hooks/index.d.ts.map +1 -0
- package/dist/shared/index.d.ts +6 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/types/index.d.ts +109 -0
- package/dist/shared/types/index.d.ts.map +1 -0
- package/dist/utils/nativeBridge.d.ts +3 -0
- package/dist/utils/nativeBridge.d.ts.map +1 -0
- package/dist/utils/nativeBridge.js +2 -0
- package/package.json +114 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Format date relative to now (e.g., "2 minutes ago", "3 days ago")
|
|
3
|
+
*/
|
|
4
|
+
export declare function formatRelativeTime(dateString: string): string;
|
|
5
|
+
/**
|
|
6
|
+
* Format date to human-readable string
|
|
7
|
+
*/
|
|
8
|
+
export declare function formatDate(dateString: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* Format date and time
|
|
11
|
+
*/
|
|
12
|
+
export declare function formatDateTime(dateString: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* Mask API key (show only prefix and last 4 characters)
|
|
15
|
+
*/
|
|
16
|
+
export declare function maskApiKey(key: string, prefix: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Format IP address with location
|
|
19
|
+
*/
|
|
20
|
+
export declare function formatLocationString(ipAddress: string, location: string | null): string;
|
|
21
|
+
/**
|
|
22
|
+
* Get device icon based on user agent
|
|
23
|
+
*/
|
|
24
|
+
export declare function getDeviceIcon(userAgent: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Parse device name from user agent
|
|
27
|
+
*/
|
|
28
|
+
export declare function parseDeviceName(userAgent: string | null | undefined): string;
|
|
29
|
+
/**
|
|
30
|
+
* Parse browser name from user agent
|
|
31
|
+
*/
|
|
32
|
+
export declare function parseBrowserName(userAgent: string | null | undefined): string;
|
|
33
|
+
/**
|
|
34
|
+
* Format OAuth provider name
|
|
35
|
+
*/
|
|
36
|
+
export declare function formatOAuthProvider(provider: string): string;
|
|
37
|
+
//# sourceMappingURL=formatters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../src/auth/utils/formatters.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAyB7D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAOrD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CASzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAI9D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,MAAM,CAGR;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA4BvD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAe5E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAW7E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW5D"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
//#region src/auth/utils/formatters.ts
|
|
2
|
+
function e(e) {
|
|
3
|
+
let t = new Date(e), n = (/* @__PURE__ */ new Date()).getTime() - t.getTime(), r = Math.floor(n / 1e3), i = Math.floor(r / 60), a = Math.floor(i / 60), o = Math.floor(a / 24);
|
|
4
|
+
if (r < 60) return "just now";
|
|
5
|
+
if (i < 60) return `${i} minute${i === 1 ? "" : "s"} ago`;
|
|
6
|
+
if (a < 24) return `${a} hour${a === 1 ? "" : "s"} ago`;
|
|
7
|
+
if (o < 7) return `${o} day${o === 1 ? "" : "s"} ago`;
|
|
8
|
+
if (o < 30) {
|
|
9
|
+
let e = Math.floor(o / 7);
|
|
10
|
+
return `${e} week${e === 1 ? "" : "s"} ago`;
|
|
11
|
+
}
|
|
12
|
+
if (o < 365) {
|
|
13
|
+
let e = Math.floor(o / 30);
|
|
14
|
+
return `${e} month${e === 1 ? "" : "s"} ago`;
|
|
15
|
+
}
|
|
16
|
+
let s = Math.floor(o / 365);
|
|
17
|
+
return `${s} year${s === 1 ? "" : "s"} ago`;
|
|
18
|
+
}
|
|
19
|
+
function t(e) {
|
|
20
|
+
return new Date(e).toLocaleDateString("en-US", {
|
|
21
|
+
year: "numeric",
|
|
22
|
+
month: "short",
|
|
23
|
+
day: "numeric"
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function n(e) {
|
|
27
|
+
return new Date(e).toLocaleString("en-US", {
|
|
28
|
+
year: "numeric",
|
|
29
|
+
month: "short",
|
|
30
|
+
day: "numeric",
|
|
31
|
+
hour: "2-digit",
|
|
32
|
+
minute: "2-digit"
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function r(e) {
|
|
36
|
+
if (!e) return "Unknown Device";
|
|
37
|
+
let t = e.toLowerCase();
|
|
38
|
+
return t.includes("iphone") ? "iPhone" : t.includes("ipad") ? "iPad" : t.includes("android") ? "Android Device" : t.includes("mac") ? "Mac" : t.includes("windows") ? "Windows PC" : t.includes("linux") ? "Linux" : "Unknown Device";
|
|
39
|
+
}
|
|
40
|
+
function i(e) {
|
|
41
|
+
if (!e) return "Unknown Browser";
|
|
42
|
+
let t = e.toLowerCase();
|
|
43
|
+
return t.includes("edg") ? "Edge" : t.includes("chrome") ? "Chrome" : t.includes("firefox") ? "Firefox" : t.includes("safari") && !t.includes("chrome") ? "Safari" : t.includes("opera") ? "Opera" : "Unknown Browser";
|
|
44
|
+
}
|
|
45
|
+
//#endregion
|
|
46
|
+
export { t as formatDate, n as formatDateTime, e as formatRelativeTime, i as parseBrowserName, r as parseDeviceName };
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=formatters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatters.js","names":[],"sources":["../../../src/auth/utils/formatters.ts"],"sourcesContent":["/**\n * Format date relative to now (e.g., \"2 minutes ago\", \"3 days ago\")\n */\nexport function formatRelativeTime(dateString: string): string {\n const date = new Date(dateString);\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n const diffSecs = Math.floor(diffMs / 1000);\n const diffMins = Math.floor(diffSecs / 60);\n const diffHours = Math.floor(diffMins / 60);\n const diffDays = Math.floor(diffHours / 24);\n\n if (diffSecs < 60) return \"just now\";\n if (diffMins < 60)\n return `${diffMins} minute${diffMins !== 1 ? \"s\" : \"\"} ago`;\n if (diffHours < 24)\n return `${diffHours} hour${diffHours !== 1 ? \"s\" : \"\"} ago`;\n if (diffDays < 7) return `${diffDays} day${diffDays !== 1 ? \"s\" : \"\"} ago`;\n if (diffDays < 30) {\n const weeks = Math.floor(diffDays / 7);\n return `${weeks} week${weeks !== 1 ? \"s\" : \"\"} ago`;\n }\n if (diffDays < 365) {\n const months = Math.floor(diffDays / 30);\n return `${months} month${months !== 1 ? \"s\" : \"\"} ago`;\n }\n const years = Math.floor(diffDays / 365);\n return `${years} year${years !== 1 ? \"s\" : \"\"} ago`;\n}\n\n/**\n * Format date to human-readable string\n */\nexport function formatDate(dateString: string): string {\n const date = new Date(dateString);\n return date.toLocaleDateString(\"en-US\", {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n });\n}\n\n/**\n * Format date and time\n */\nexport function formatDateTime(dateString: string): string {\n const date = new Date(dateString);\n return date.toLocaleString(\"en-US\", {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n });\n}\n\n/**\n * Mask API key (show only prefix and last 4 characters)\n */\nexport function maskApiKey(key: string, prefix: string): string {\n if (key.length <= 12) return key;\n const last4 = key.slice(-4);\n return `${prefix}_${\"•\".repeat(20)}${last4}`;\n}\n\n/**\n * Format IP address with location\n */\nexport function formatLocationString(\n ipAddress: string,\n location: string | null,\n): string {\n if (!location) return ipAddress;\n return `${ipAddress} · ${location}`;\n}\n\n/**\n * Get device icon based on user agent\n */\nexport function getDeviceIcon(userAgent: string): string {\n const ua = userAgent.toLowerCase();\n\n if (\n ua.includes(\"mobile\") ||\n ua.includes(\"android\") ||\n ua.includes(\"iphone\")\n ) {\n return \"📱\";\n }\n\n if (ua.includes(\"ipad\") || ua.includes(\"tablet\")) {\n return \"📱\";\n }\n\n if (ua.includes(\"mac\")) {\n return \"💻\";\n }\n\n if (ua.includes(\"windows\")) {\n return \"💻\";\n }\n\n if (ua.includes(\"linux\")) {\n return \"💻\";\n }\n\n return \"🖥️\";\n}\n\n/**\n * Parse device name from user agent\n */\nexport function parseDeviceName(userAgent: string | null | undefined): string {\n if (!userAgent) return \"Unknown Device\";\n const ua = userAgent.toLowerCase();\n\n // Mobile devices\n if (ua.includes(\"iphone\")) return \"iPhone\";\n if (ua.includes(\"ipad\")) return \"iPad\";\n if (ua.includes(\"android\")) return \"Android Device\";\n\n // Desktop OS\n if (ua.includes(\"mac\")) return \"Mac\";\n if (ua.includes(\"windows\")) return \"Windows PC\";\n if (ua.includes(\"linux\")) return \"Linux\";\n\n return \"Unknown Device\";\n}\n\n/**\n * Parse browser name from user agent\n */\nexport function parseBrowserName(userAgent: string | null | undefined): string {\n if (!userAgent) return \"Unknown Browser\";\n const ua = userAgent.toLowerCase();\n\n if (ua.includes(\"edg\")) return \"Edge\";\n if (ua.includes(\"chrome\")) return \"Chrome\";\n if (ua.includes(\"firefox\")) return \"Firefox\";\n if (ua.includes(\"safari\") && !ua.includes(\"chrome\")) return \"Safari\";\n if (ua.includes(\"opera\")) return \"Opera\";\n\n return \"Unknown Browser\";\n}\n\n/**\n * Format OAuth provider name\n */\nexport function formatOAuthProvider(provider: string): string {\n const providers: Record<string, string> = {\n google: \"Google\",\n github: \"GitHub\",\n microsoft: \"Microsoft\",\n apple: \"Apple\",\n linkedin: \"LinkedIn\",\n facebook: \"Facebook\",\n };\n\n return providers[provider.toLowerCase()] || provider;\n}\n"],"mappings":";AAGA,SAAgB,EAAmB,GAA4B;CAC7D,IAAM,IAAO,IAAI,KAAK,EAAW,EAE3B,qBADM,IAAI,MAAM,EACH,SAAS,GAAG,EAAK,SAAS,EACvC,IAAW,KAAK,MAAM,IAAS,IAAK,EACpC,IAAW,KAAK,MAAM,IAAW,GAAG,EACpC,IAAY,KAAK,MAAM,IAAW,GAAG,EACrC,IAAW,KAAK,MAAM,IAAY,GAAG;AAE3C,KAAI,IAAW,GAAI,QAAO;AAC1B,KAAI,IAAW,GACb,QAAO,GAAG,EAAS,SAAS,MAAa,IAAU,KAAN,IAAS;AACxD,KAAI,IAAY,GACd,QAAO,GAAG,EAAU,OAAO,MAAc,IAAU,KAAN,IAAS;AACxD,KAAI,IAAW,EAAG,QAAO,GAAG,EAAS,MAAM,MAAa,IAAU,KAAN,IAAS;AACrE,KAAI,IAAW,IAAI;EACjB,IAAM,IAAQ,KAAK,MAAM,IAAW,EAAE;AACtC,SAAO,GAAG,EAAM,OAAO,MAAU,IAAU,KAAN,IAAS;;AAEhD,KAAI,IAAW,KAAK;EAClB,IAAM,IAAS,KAAK,MAAM,IAAW,GAAG;AACxC,SAAO,GAAG,EAAO,QAAQ,MAAW,IAAU,KAAN,IAAS;;CAEnD,IAAM,IAAQ,KAAK,MAAM,IAAW,IAAI;AACxC,QAAO,GAAG,EAAM,OAAO,MAAU,IAAU,KAAN,IAAS;;AAMhD,SAAgB,EAAW,GAA4B;AAErD,QADa,IAAI,KAAK,EAAW,CACrB,mBAAmB,SAAS;EACtC,MAAM;EACN,OAAO;EACP,KAAK;EACN,CAAC;;AAMJ,SAAgB,EAAe,GAA4B;AAEzD,QADa,IAAI,KAAK,EAAW,CACrB,eAAe,SAAS;EAClC,MAAM;EACN,OAAO;EACP,KAAK;EACL,MAAM;EACN,QAAQ;EACT,CAAC;;AA2DJ,SAAgB,EAAgB,GAA8C;AAC5E,KAAI,CAAC,EAAW,QAAO;CACvB,IAAM,IAAK,EAAU,aAAa;AAYlC,QATI,EAAG,SAAS,SAAS,GAAS,WAC9B,EAAG,SAAS,OAAO,GAAS,SAC5B,EAAG,SAAS,UAAU,GAAS,mBAG/B,EAAG,SAAS,MAAM,GAAS,QAC3B,EAAG,SAAS,UAAU,GAAS,eAC/B,EAAG,SAAS,QAAQ,GAAS,UAE1B;;AAMT,SAAgB,EAAiB,GAA8C;AAC7E,KAAI,CAAC,EAAW,QAAO;CACvB,IAAM,IAAK,EAAU,aAAa;AAQlC,QANI,EAAG,SAAS,MAAM,GAAS,SAC3B,EAAG,SAAS,SAAS,GAAS,WAC9B,EAAG,SAAS,UAAU,GAAS,YAC/B,EAAG,SAAS,SAAS,IAAI,CAAC,EAAG,SAAS,SAAS,GAAS,WACxD,EAAG,SAAS,QAAQ,GAAS,UAE1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayBaseUrls.d.ts","sourceRoot":"","sources":["../../../src/auth/utils/gatewayBaseUrls.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,sBAAsB,IAAI,eAAe,CAyBxD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//#region src/auth/utils/gatewayBaseUrls.ts
|
|
2
|
+
function e() {
|
|
3
|
+
let e = typeof window < "u" ? window.location.hostname.toLowerCase() : "";
|
|
4
|
+
return e === "app.burdenoff.com" ? {
|
|
5
|
+
globalBaseUrl: "https://graphql.burdenoff.com",
|
|
6
|
+
workspaceBaseUrl: "https://graphqlworkspaces.burdenoff.com"
|
|
7
|
+
} : e === "alphaapp.burdenoff.com" ? {
|
|
8
|
+
globalBaseUrl: "https://alphagraphql.burdenoff.com",
|
|
9
|
+
workspaceBaseUrl: "https://alphagraphqlworkspaces.burdenoff.com"
|
|
10
|
+
} : {
|
|
11
|
+
globalBaseUrl: "https://gw-global.local.burdenoff.com",
|
|
12
|
+
workspaceBaseUrl: "https://gw-wspace.local.burdenoff.com"
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
export { e as resolveGatewayBaseUrls };
|
|
17
|
+
|
|
18
|
+
//# sourceMappingURL=gatewayBaseUrls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayBaseUrls.js","names":[],"sources":["../../../src/auth/utils/gatewayBaseUrls.ts"],"sourcesContent":["export interface GatewayBaseUrls {\n globalBaseUrl: string;\n workspaceBaseUrl: string;\n}\n\nexport function resolveGatewayBaseUrls(): GatewayBaseUrls {\n const hostname =\n typeof window !== \"undefined\" ? window.location.hostname.toLowerCase() : \"\";\n\n // Production\n if (hostname === \"app.burdenoff.com\") {\n return {\n globalBaseUrl: \"https://graphql.burdenoff.com\",\n workspaceBaseUrl: \"https://graphqlworkspaces.burdenoff.com\",\n };\n }\n\n // Alpha / staging\n if (hostname === \"alphaapp.burdenoff.com\") {\n return {\n globalBaseUrl: \"https://alphagraphql.burdenoff.com\",\n workspaceBaseUrl: \"https://alphagraphqlworkspaces.burdenoff.com\",\n };\n }\n\n // Everything else is local development (localhost, 127.0.0.1, app.local.burdenoff.com, etc.)\n return {\n globalBaseUrl: \"https://gw-global.local.burdenoff.com\",\n workspaceBaseUrl: \"https://gw-wspace.local.burdenoff.com\",\n };\n}\n"],"mappings":";AAKA,SAAgB,IAA0C;CACxD,IAAM,IACJ,OAAO,SAAW,MAAc,OAAO,SAAS,SAAS,aAAa,GAAG;AAmB3E,QAhBI,MAAa,sBACR;EACL,eAAe;EACf,kBAAkB;EACnB,GAIC,MAAa,2BACR;EACL,eAAe;EACf,kBAAkB;EACnB,GAII;EACL,eAAe;EACf,kBAAkB;EACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { PasswordStrength } from '../types';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Validate email format
|
|
5
|
+
*/
|
|
6
|
+
export declare function validateEmail(email: string): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Validate password requirements
|
|
9
|
+
*/
|
|
10
|
+
export declare function validatePassword(password: string): {
|
|
11
|
+
valid: boolean;
|
|
12
|
+
errors: string[];
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Calculate password strength using Zxcvbn-like algorithm
|
|
16
|
+
* Returns a score from 0-4 (0 = very weak, 4 = very strong)
|
|
17
|
+
*/
|
|
18
|
+
export declare function calculatePasswordStrength(password: string): PasswordStrength;
|
|
19
|
+
/**
|
|
20
|
+
* Validate MFA code format (6 digits)
|
|
21
|
+
*/
|
|
22
|
+
export declare function validateMfaCode(code: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Validate API key name
|
|
25
|
+
*/
|
|
26
|
+
export declare function validateApiKeyName(name: string): {
|
|
27
|
+
valid: boolean;
|
|
28
|
+
error?: string;
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/auth/utils/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAClD,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CA2BA;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAqD5E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAaA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
//#region src/auth/utils/validation.ts
|
|
2
|
+
function e(e) {
|
|
3
|
+
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e);
|
|
4
|
+
}
|
|
5
|
+
function t(e) {
|
|
6
|
+
let t = [];
|
|
7
|
+
return e.length < 8 && t.push("Password must be at least 8 characters long"), /[A-Z]/.test(e) || t.push("Password must contain at least one uppercase letter"), /[a-z]/.test(e) || t.push("Password must contain at least one lowercase letter"), /[0-9]/.test(e) || t.push("Password must contain at least one number"), /[!@#$%^&*(),.?":{}|<>]/.test(e) || t.push("Password must contain at least one special character"), {
|
|
8
|
+
valid: t.length === 0,
|
|
9
|
+
errors: t
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { e as validateEmail, t as validatePassword };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","names":[],"sources":["../../../src/auth/utils/validation.ts"],"sourcesContent":["import type { PasswordStrength } from \"../types\";\n\n/**\n * Validate email format\n */\nexport function validateEmail(email: string): boolean {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n return emailRegex.test(email);\n}\n\n/**\n * Validate password requirements\n */\nexport function validatePassword(password: string): {\n valid: boolean;\n errors: string[];\n} {\n const errors: string[] = [];\n\n if (password.length < 8) {\n errors.push(\"Password must be at least 8 characters long\");\n }\n\n if (!/[A-Z]/.test(password)) {\n errors.push(\"Password must contain at least one uppercase letter\");\n }\n\n if (!/[a-z]/.test(password)) {\n errors.push(\"Password must contain at least one lowercase letter\");\n }\n\n if (!/[0-9]/.test(password)) {\n errors.push(\"Password must contain at least one number\");\n }\n\n if (!/[!@#$%^&*(),.?\":{}|<>]/.test(password)) {\n errors.push(\"Password must contain at least one special character\");\n }\n\n return {\n valid: errors.length === 0,\n errors,\n };\n}\n\n/**\n * Calculate password strength using Zxcvbn-like algorithm\n * Returns a score from 0-4 (0 = very weak, 4 = very strong)\n */\nexport function calculatePasswordStrength(password: string): PasswordStrength {\n let score: 0 | 1 | 2 | 3 | 4 = 0;\n const feedback: string[] = [];\n\n // Length check\n if (password.length >= 8) score++;\n if (password.length >= 12) score++;\n if (password.length >= 16) score++;\n\n // Complexity checks\n if (/[a-z]/.test(password) && /[A-Z]/.test(password)) score++;\n if (/[0-9]/.test(password)) score++;\n if (/[!@#$%^&*(),.?\":{}|<>]/.test(password)) score++;\n\n // Common patterns\n if (/^[a-z]+$/.test(password.toLowerCase())) {\n feedback.push(\"Add uppercase letters, numbers, and symbols\");\n score = Math.max(0, score - 1) as 0 | 1 | 2 | 3 | 4;\n }\n\n if (/^[0-9]+$/.test(password)) {\n feedback.push(\"Avoid using only numbers\");\n score = 0;\n }\n\n if (/(.)\\1{2,}/.test(password)) {\n feedback.push(\"Avoid repeating characters\");\n score = Math.max(0, score - 1) as 0 | 1 | 2 | 3 | 4;\n }\n\n // Common passwords\n const commonPasswords = [\"password\", \"123456\", \"qwerty\", \"admin\", \"letmein\"];\n if (commonPasswords.some((p) => password.toLowerCase().includes(p))) {\n feedback.push(\"Avoid using common passwords\");\n score = 0;\n }\n\n // Ensure score is 0-4\n score = Math.min(4, Math.max(0, score)) as 0 | 1 | 2 | 3 | 4;\n\n // Crack time estimation\n const crackTime =\n score === 0\n ? \"less than 1 second\"\n : score === 1\n ? \"less than 1 minute\"\n : score === 2\n ? \"less than 1 hour\"\n : score === 3\n ? \"less than 1 day\"\n : \"centuries\";\n\n return { score, feedback, crackTime };\n}\n\n/**\n * Validate MFA code format (6 digits)\n */\nexport function validateMfaCode(code: string): boolean {\n return /^\\d{6}$/.test(code);\n}\n\n/**\n * Validate API key name\n */\nexport function validateApiKeyName(name: string): {\n valid: boolean;\n error?: string;\n} {\n if (!name || name.trim().length === 0) {\n return { valid: false, error: \"API key name is required\" };\n }\n\n if (name.length > 100) {\n return {\n valid: false,\n error: \"API key name must be less than 100 characters\",\n };\n }\n\n return { valid: true };\n}\n"],"mappings":";AAKA,SAAgB,EAAc,GAAwB;AAEpD,QADmB,6BACD,KAAK,EAAM;;AAM/B,SAAgB,EAAiB,GAG/B;CACA,IAAM,IAAmB,EAAE;AAsB3B,QApBI,EAAS,SAAS,KACpB,EAAO,KAAK,8CAA8C,EAGvD,QAAQ,KAAK,EAAS,IACzB,EAAO,KAAK,sDAAsD,EAG/D,QAAQ,KAAK,EAAS,IACzB,EAAO,KAAK,sDAAsD,EAG/D,QAAQ,KAAK,EAAS,IACzB,EAAO,KAAK,4CAA4C,EAGrD,yBAAyB,KAAK,EAAS,IAC1C,EAAO,KAAK,uDAAuD,EAG9D;EACL,OAAO,EAAO,WAAW;EACzB;EACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/dev/main.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,uBAAuB,CAAC"}
|