@authrim/sveltekit 0.1.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/LICENSE +191 -0
- package/README.md +531 -0
- package/dist/__tests__/client-events.test.d.ts +2 -0
- package/dist/__tests__/client-events.test.d.ts.map +1 -0
- package/dist/__tests__/client-events.test.js +225 -0
- package/dist/__tests__/providers.test.d.ts +2 -0
- package/dist/__tests__/providers.test.d.ts.map +1 -0
- package/dist/__tests__/providers.test.js +68 -0
- package/dist/__tests__/response.test.d.ts +2 -0
- package/dist/__tests__/response.test.d.ts.map +1 -0
- package/dist/__tests__/response.test.js +99 -0
- package/dist/__tests__/stores.test.d.ts +2 -0
- package/dist/__tests__/stores.test.d.ts.map +1 -0
- package/dist/__tests__/stores.test.js +91 -0
- package/dist/client.d.ts +25 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +411 -0
- package/dist/components/AuthProvider.svelte +56 -0
- package/dist/components/AuthProvider.svelte.d.ts +34 -0
- package/dist/components/AuthProvider.svelte.d.ts.map +1 -0
- package/dist/components/ProtectedRoute.svelte +71 -0
- package/dist/components/ProtectedRoute.svelte.d.ts +38 -0
- package/dist/components/ProtectedRoute.svelte.d.ts.map +1 -0
- package/dist/components/SignInButton.svelte +93 -0
- package/dist/components/SignInButton.svelte.d.ts +43 -0
- package/dist/components/SignInButton.svelte.d.ts.map +1 -0
- package/dist/components/SignOutButton.svelte +72 -0
- package/dist/components/SignOutButton.svelte.d.ts +40 -0
- package/dist/components/SignOutButton.svelte.d.ts.map +1 -0
- package/dist/components/UserProfile.svelte +71 -0
- package/dist/components/UserProfile.svelte.d.ts +51 -0
- package/dist/components/UserProfile.svelte.d.ts.map +1 -0
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +5 -0
- package/dist/direct-auth/ciba.d.ts +47 -0
- package/dist/direct-auth/ciba.d.ts.map +1 -0
- package/dist/direct-auth/ciba.js +77 -0
- package/dist/direct-auth/consent.d.ts +85 -0
- package/dist/direct-auth/consent.d.ts.map +1 -0
- package/dist/direct-auth/consent.js +57 -0
- package/dist/direct-auth/device-flow.d.ts +40 -0
- package/dist/direct-auth/device-flow.d.ts.map +1 -0
- package/dist/direct-auth/device-flow.js +45 -0
- package/dist/direct-auth/email-code.d.ts +48 -0
- package/dist/direct-auth/email-code.d.ts.map +1 -0
- package/dist/direct-auth/email-code.js +265 -0
- package/dist/direct-auth/index.d.ts +9 -0
- package/dist/direct-auth/index.d.ts.map +1 -0
- package/dist/direct-auth/index.js +8 -0
- package/dist/direct-auth/login-challenge.d.ts +41 -0
- package/dist/direct-auth/login-challenge.d.ts.map +1 -0
- package/dist/direct-auth/login-challenge.js +34 -0
- package/dist/direct-auth/passkey.d.ts +30 -0
- package/dist/direct-auth/passkey.d.ts.map +1 -0
- package/dist/direct-auth/passkey.js +392 -0
- package/dist/direct-auth/session.d.ts +48 -0
- package/dist/direct-auth/session.d.ts.map +1 -0
- package/dist/direct-auth/session.js +219 -0
- package/dist/direct-auth/social.d.ts +56 -0
- package/dist/direct-auth/social.d.ts.map +1 -0
- package/dist/direct-auth/social.js +484 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/providers/crypto.d.ts +13 -0
- package/dist/providers/crypto.d.ts.map +1 -0
- package/dist/providers/crypto.js +27 -0
- package/dist/providers/http.d.ts +30 -0
- package/dist/providers/http.d.ts.map +1 -0
- package/dist/providers/http.js +65 -0
- package/dist/providers/index.d.ts +4 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +3 -0
- package/dist/providers/storage.d.ts +21 -0
- package/dist/providers/storage.d.ts.map +1 -0
- package/dist/providers/storage.js +83 -0
- package/dist/server/handle.d.ts +46 -0
- package/dist/server/handle.d.ts.map +1 -0
- package/dist/server/handle.js +60 -0
- package/dist/server/index.d.ts +4 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +3 -0
- package/dist/server/load.d.ts +83 -0
- package/dist/server/load.d.ts.map +1 -0
- package/dist/server/load.js +86 -0
- package/dist/server/session.d.ts +44 -0
- package/dist/server/session.d.ts.map +1 -0
- package/dist/server/session.js +50 -0
- package/dist/stores/auth.d.ts +56 -0
- package/dist/stores/auth.d.ts.map +1 -0
- package/dist/stores/auth.js +64 -0
- package/dist/stores/index.d.ts +2 -0
- package/dist/stores/index.d.ts.map +1 -0
- package/dist/stores/index.js +1 -0
- package/dist/types.d.ts +164 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +4 -0
- package/dist/ui/account/LinkAccountButton.svelte +133 -0
- package/dist/ui/account/LinkAccountButton.svelte.d.ts +37 -0
- package/dist/ui/account/LinkAccountButton.svelte.d.ts.map +1 -0
- package/dist/ui/account/LinkedAccountsList.svelte +233 -0
- package/dist/ui/account/LinkedAccountsList.svelte.d.ts +32 -0
- package/dist/ui/account/LinkedAccountsList.svelte.d.ts.map +1 -0
- package/dist/ui/account/UnlinkAccountButton.svelte +179 -0
- package/dist/ui/account/UnlinkAccountButton.svelte.d.ts +28 -0
- package/dist/ui/account/UnlinkAccountButton.svelte.d.ts.map +1 -0
- package/dist/ui/account/index.d.ts +7 -0
- package/dist/ui/account/index.d.ts.map +1 -0
- package/dist/ui/account/index.js +6 -0
- package/dist/ui/context.d.ts +17 -0
- package/dist/ui/context.d.ts.map +1 -0
- package/dist/ui/context.js +71 -0
- package/dist/ui/forms/CIBARequestCard.svelte +315 -0
- package/dist/ui/forms/CIBARequestCard.svelte.d.ts +50 -0
- package/dist/ui/forms/CIBARequestCard.svelte.d.ts.map +1 -0
- package/dist/ui/forms/ClientInfo.svelte +232 -0
- package/dist/ui/forms/ClientInfo.svelte.d.ts +35 -0
- package/dist/ui/forms/ClientInfo.svelte.d.ts.map +1 -0
- package/dist/ui/forms/ConsentScopesList.svelte +109 -0
- package/dist/ui/forms/ConsentScopesList.svelte.d.ts +30 -0
- package/dist/ui/forms/ConsentScopesList.svelte.d.ts.map +1 -0
- package/dist/ui/forms/EmailCodeForm.svelte +224 -0
- package/dist/ui/forms/EmailCodeForm.svelte.d.ts +39 -0
- package/dist/ui/forms/EmailCodeForm.svelte.d.ts.map +1 -0
- package/dist/ui/forms/OrgSelector.svelte +95 -0
- package/dist/ui/forms/OrgSelector.svelte.d.ts +37 -0
- package/dist/ui/forms/OrgSelector.svelte.d.ts.map +1 -0
- package/dist/ui/forms/PasskeyConditionalInput.svelte +173 -0
- package/dist/ui/forms/PasskeyConditionalInput.svelte.d.ts +36 -0
- package/dist/ui/forms/PasskeyConditionalInput.svelte.d.ts.map +1 -0
- package/dist/ui/forms/QRCodeDisplay.svelte +122 -0
- package/dist/ui/forms/QRCodeDisplay.svelte.d.ts +27 -0
- package/dist/ui/forms/QRCodeDisplay.svelte.d.ts.map +1 -0
- package/dist/ui/forms/SocialLoginButtons.svelte +209 -0
- package/dist/ui/forms/SocialLoginButtons.svelte.d.ts +33 -0
- package/dist/ui/forms/SocialLoginButtons.svelte.d.ts.map +1 -0
- package/dist/ui/forms/UserCodeInput.svelte +183 -0
- package/dist/ui/forms/UserCodeInput.svelte.d.ts +34 -0
- package/dist/ui/forms/UserCodeInput.svelte.d.ts.map +1 -0
- package/dist/ui/forms/index.d.ts +13 -0
- package/dist/ui/forms/index.d.ts.map +1 -0
- package/dist/ui/forms/index.js +12 -0
- package/dist/ui/helpers/AuthError.svelte +124 -0
- package/dist/ui/helpers/AuthError.svelte.d.ts +26 -0
- package/dist/ui/helpers/AuthError.svelte.d.ts.map +1 -0
- package/dist/ui/helpers/AuthLoading.svelte +83 -0
- package/dist/ui/helpers/AuthLoading.svelte.d.ts +25 -0
- package/dist/ui/helpers/AuthLoading.svelte.d.ts.map +1 -0
- package/dist/ui/helpers/OTPInput.svelte +214 -0
- package/dist/ui/helpers/OTPInput.svelte.d.ts +34 -0
- package/dist/ui/helpers/OTPInput.svelte.d.ts.map +1 -0
- package/dist/ui/helpers/ResendCodeButton.svelte +140 -0
- package/dist/ui/helpers/ResendCodeButton.svelte.d.ts +28 -0
- package/dist/ui/helpers/ResendCodeButton.svelte.d.ts.map +1 -0
- package/dist/ui/helpers/index.d.ts +8 -0
- package/dist/ui/helpers/index.d.ts.map +1 -0
- package/dist/ui/helpers/index.js +7 -0
- package/dist/ui/index.d.ts +43 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +48 -0
- package/dist/ui/passkey/PasskeyDeleteButton.svelte +177 -0
- package/dist/ui/passkey/PasskeyDeleteButton.svelte.d.ts +26 -0
- package/dist/ui/passkey/PasskeyDeleteButton.svelte.d.ts.map +1 -0
- package/dist/ui/passkey/PasskeyList.svelte +225 -0
- package/dist/ui/passkey/PasskeyList.svelte.d.ts +30 -0
- package/dist/ui/passkey/PasskeyList.svelte.d.ts.map +1 -0
- package/dist/ui/passkey/PasskeyRegisterButton.svelte +52 -0
- package/dist/ui/passkey/PasskeyRegisterButton.svelte.d.ts +38 -0
- package/dist/ui/passkey/PasskeyRegisterButton.svelte.d.ts.map +1 -0
- package/dist/ui/passkey/index.d.ts +7 -0
- package/dist/ui/passkey/index.d.ts.map +1 -0
- package/dist/ui/passkey/index.js +6 -0
- package/dist/ui/session/SessionExpiryIndicator.svelte +109 -0
- package/dist/ui/session/SessionExpiryIndicator.svelte.d.ts +23 -0
- package/dist/ui/session/SessionExpiryIndicator.svelte.d.ts.map +1 -0
- package/dist/ui/session/SessionList.svelte +231 -0
- package/dist/ui/session/SessionList.svelte.d.ts +31 -0
- package/dist/ui/session/SessionList.svelte.d.ts.map +1 -0
- package/dist/ui/session/SessionRevokeButton.svelte +72 -0
- package/dist/ui/session/SessionRevokeButton.svelte.d.ts +26 -0
- package/dist/ui/session/SessionRevokeButton.svelte.d.ts.map +1 -0
- package/dist/ui/session/index.d.ts +7 -0
- package/dist/ui/session/index.d.ts.map +1 -0
- package/dist/ui/session/index.js +6 -0
- package/dist/ui/shared/Alert.svelte +246 -0
- package/dist/ui/shared/Alert.svelte.d.ts +36 -0
- package/dist/ui/shared/Alert.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Badge.svelte +100 -0
- package/dist/ui/shared/Badge.svelte.d.ts +35 -0
- package/dist/ui/shared/Badge.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Button.svelte +213 -0
- package/dist/ui/shared/Button.svelte.d.ts +42 -0
- package/dist/ui/shared/Button.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Card.svelte +85 -0
- package/dist/ui/shared/Card.svelte.d.ts +39 -0
- package/dist/ui/shared/Card.svelte.d.ts.map +1 -0
- package/dist/ui/shared/CountdownTimer.svelte +150 -0
- package/dist/ui/shared/CountdownTimer.svelte.d.ts +30 -0
- package/dist/ui/shared/CountdownTimer.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Dialog.svelte +240 -0
- package/dist/ui/shared/Dialog.svelte.d.ts +39 -0
- package/dist/ui/shared/Dialog.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Input.svelte +192 -0
- package/dist/ui/shared/Input.svelte.d.ts +42 -0
- package/dist/ui/shared/Input.svelte.d.ts.map +1 -0
- package/dist/ui/shared/LanguageSwitcher.svelte +99 -0
- package/dist/ui/shared/LanguageSwitcher.svelte.d.ts +31 -0
- package/dist/ui/shared/LanguageSwitcher.svelte.d.ts.map +1 -0
- package/dist/ui/shared/Spinner.svelte +75 -0
- package/dist/ui/shared/Spinner.svelte.d.ts +24 -0
- package/dist/ui/shared/Spinner.svelte.d.ts.map +1 -0
- package/dist/ui/shared/index.d.ts +13 -0
- package/dist/ui/shared/index.d.ts.map +1 -0
- package/dist/ui/shared/index.js +12 -0
- package/dist/ui/styles/base.css +168 -0
- package/dist/ui/styles/theme.css +279 -0
- package/dist/ui/templates/AccountSettingsTemplate.svelte +205 -0
- package/dist/ui/templates/AccountSettingsTemplate.svelte.d.ts +49 -0
- package/dist/ui/templates/AccountSettingsTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/CIBATemplate.svelte +227 -0
- package/dist/ui/templates/CIBATemplate.svelte.d.ts +45 -0
- package/dist/ui/templates/CIBATemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/ConsentTemplate.svelte +549 -0
- package/dist/ui/templates/ConsentTemplate.svelte.d.ts +76 -0
- package/dist/ui/templates/ConsentTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/DeviceFlowTemplate.svelte +228 -0
- package/dist/ui/templates/DeviceFlowTemplate.svelte.d.ts +47 -0
- package/dist/ui/templates/DeviceFlowTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/LoginTemplate.svelte +234 -0
- package/dist/ui/templates/LoginTemplate.svelte.d.ts +49 -0
- package/dist/ui/templates/LoginTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/ReauthTemplate.svelte +269 -0
- package/dist/ui/templates/ReauthTemplate.svelte.d.ts +54 -0
- package/dist/ui/templates/ReauthTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/SignUpTemplate.svelte +345 -0
- package/dist/ui/templates/SignUpTemplate.svelte.d.ts +53 -0
- package/dist/ui/templates/SignUpTemplate.svelte.d.ts.map +1 -0
- package/dist/ui/templates/index.d.ts +14 -0
- package/dist/ui/templates/index.d.ts.map +1 -0
- package/dist/ui/templates/index.js +13 -0
- package/dist/ui/types.d.ts +151 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +4 -0
- package/dist/utils/context.d.ts +12 -0
- package/dist/utils/context.d.ts.map +1 -0
- package/dist/utils/context.js +26 -0
- package/dist/utils/error-mapping.d.ts +29 -0
- package/dist/utils/error-mapping.d.ts.map +1 -0
- package/dist/utils/error-mapping.js +38 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/response.d.ts +21 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +84 -0
- package/dist/utils/sensitive-data.d.ts +9 -0
- package/dist/utils/sensitive-data.d.ts.map +1 -0
- package/dist/utils/sensitive-data.js +56 -0
- package/dist/utils/ssr.d.ts +38 -0
- package/dist/utils/ssr.d.ts.map +1 -0
- package/dist/utils/ssr.js +73 -0
- package/dist/utils/webauthn-converters.d.ts +9 -0
- package/dist/utils/webauthn-converters.d.ts.map +1 -0
- package/dist/utils/webauthn-converters.js +75 -0
- package/package.json +111 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { SocialProvider } from '../../types.js';
|
|
2
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
3
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
+
$$bindings?: Bindings;
|
|
5
|
+
} & Exports;
|
|
6
|
+
(internal: unknown, props: Props & {
|
|
7
|
+
$$events?: Events;
|
|
8
|
+
$$slots?: Slots;
|
|
9
|
+
}): Exports & {
|
|
10
|
+
$set?: any;
|
|
11
|
+
$on?: any;
|
|
12
|
+
};
|
|
13
|
+
z_$$bindings?: Bindings;
|
|
14
|
+
}
|
|
15
|
+
declare const SignUpTemplate: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
+
availableProviders?: SocialProvider[];
|
|
17
|
+
enablePasskey?: boolean;
|
|
18
|
+
enableEmailCode?: boolean;
|
|
19
|
+
loading?: boolean;
|
|
20
|
+
loadingProvider?: SocialProvider | undefined;
|
|
21
|
+
error?: string;
|
|
22
|
+
title?: string;
|
|
23
|
+
subtitle?: string;
|
|
24
|
+
class?: string;
|
|
25
|
+
setStep?: (newStep: "form" | "code") => void;
|
|
26
|
+
setResendTime?: (time: number) => void;
|
|
27
|
+
}, {
|
|
28
|
+
'passkey-signup': CustomEvent<{
|
|
29
|
+
name: string;
|
|
30
|
+
}>;
|
|
31
|
+
'social-signup': CustomEvent<{
|
|
32
|
+
provider: SocialProvider;
|
|
33
|
+
}>;
|
|
34
|
+
'email-submit': CustomEvent<{
|
|
35
|
+
email: string;
|
|
36
|
+
name: string;
|
|
37
|
+
}>;
|
|
38
|
+
'code-submit': CustomEvent<{
|
|
39
|
+
code: string;
|
|
40
|
+
}>;
|
|
41
|
+
'code-resend': CustomEvent<void>;
|
|
42
|
+
'dismiss-error': CustomEvent<void>;
|
|
43
|
+
} & {
|
|
44
|
+
[evt: string]: CustomEvent<any>;
|
|
45
|
+
}, {
|
|
46
|
+
footer: {};
|
|
47
|
+
}, {
|
|
48
|
+
setStep: (newStep: "form" | "code") => void;
|
|
49
|
+
setResendTime: (time: number) => void;
|
|
50
|
+
}, string>;
|
|
51
|
+
type SignUpTemplate = InstanceType<typeof SignUpTemplate>;
|
|
52
|
+
export default SignUpTemplate;
|
|
53
|
+
//# sourceMappingURL=SignUpTemplate.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SignUpTemplate.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/ui/templates/SignUpTemplate.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAmLrD,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AAUD,QAAA,MAAM,cAAc;yBAtB8S,cAAc,EAAE;;;;sBAA8H,cAAc,GAAG,SAAS;;;;;wBAnG7c,MAAM,GAAG,MAAM;2BAIZ,MAAM;;;cAgGR,MAAM;;;kBACH,cAAc;;;eAClB,MAAM;cAAQ,MAAM;;;cACtB,MAAM;;;;;;;;;uBAvGJ,MAAM,GAAG,MAAM;0BAIZ,MAAM;UAqHmE,CAAC;AACxF,KAAK,cAAc,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authrim UI Template Components
|
|
3
|
+
*
|
|
4
|
+
* These are reference implementations, not production-ready pages.
|
|
5
|
+
* Copy and customize for your specific requirements.
|
|
6
|
+
*/
|
|
7
|
+
export { default as LoginTemplate } from "./LoginTemplate.svelte";
|
|
8
|
+
export { default as SignUpTemplate } from "./SignUpTemplate.svelte";
|
|
9
|
+
export { default as AccountSettingsTemplate } from "./AccountSettingsTemplate.svelte";
|
|
10
|
+
export { default as ConsentTemplate } from "./ConsentTemplate.svelte";
|
|
11
|
+
export { default as DeviceFlowTemplate } from "./DeviceFlowTemplate.svelte";
|
|
12
|
+
export { default as CIBATemplate } from "./CIBATemplate.svelte";
|
|
13
|
+
export { default as ReauthTemplate } from "./ReauthTemplate.svelte";
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/ui/templates/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authrim UI Template Components
|
|
3
|
+
*
|
|
4
|
+
* These are reference implementations, not production-ready pages.
|
|
5
|
+
* Copy and customize for your specific requirements.
|
|
6
|
+
*/
|
|
7
|
+
export { default as LoginTemplate } from "./LoginTemplate.svelte";
|
|
8
|
+
export { default as SignUpTemplate } from "./SignUpTemplate.svelte";
|
|
9
|
+
export { default as AccountSettingsTemplate } from "./AccountSettingsTemplate.svelte";
|
|
10
|
+
export { default as ConsentTemplate } from "./ConsentTemplate.svelte";
|
|
11
|
+
export { default as DeviceFlowTemplate } from "./DeviceFlowTemplate.svelte";
|
|
12
|
+
export { default as CIBATemplate } from "./CIBATemplate.svelte";
|
|
13
|
+
export { default as ReauthTemplate } from "./ReauthTemplate.svelte";
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authrim UI Component Types
|
|
3
|
+
*/
|
|
4
|
+
import type { SocialProvider } from "../types.js";
|
|
5
|
+
export type Size = "sm" | "md" | "lg";
|
|
6
|
+
export type Variant = "primary" | "secondary" | "outline" | "ghost" | "destructive";
|
|
7
|
+
export type EmailCodeStep = "email" | "code";
|
|
8
|
+
export interface EmailCodeFormProps {
|
|
9
|
+
step: EmailCodeStep;
|
|
10
|
+
email: string;
|
|
11
|
+
maskedEmail?: string;
|
|
12
|
+
loading?: boolean;
|
|
13
|
+
error?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface SocialLoginButtonsProps {
|
|
16
|
+
providers: SocialProvider[];
|
|
17
|
+
layout?: "horizontal" | "vertical" | "grid";
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
loadingProvider?: SocialProvider;
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface PasskeyItemDisplay {
|
|
23
|
+
credentialId: string;
|
|
24
|
+
name?: string;
|
|
25
|
+
createdAt?: Date;
|
|
26
|
+
lastUsedAt?: Date;
|
|
27
|
+
deviceType?: "platform" | "cross-platform";
|
|
28
|
+
}
|
|
29
|
+
export interface PasskeyListProps {
|
|
30
|
+
passkeys: PasskeyItemDisplay[];
|
|
31
|
+
loading?: boolean;
|
|
32
|
+
deletingId?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface SessionItemDisplay {
|
|
35
|
+
sessionId: string;
|
|
36
|
+
deviceName?: string;
|
|
37
|
+
browser?: string;
|
|
38
|
+
os?: string;
|
|
39
|
+
ip?: string;
|
|
40
|
+
location?: string;
|
|
41
|
+
createdAt?: Date;
|
|
42
|
+
lastActiveAt?: Date;
|
|
43
|
+
expiresAt?: Date;
|
|
44
|
+
isCurrent?: boolean;
|
|
45
|
+
}
|
|
46
|
+
export interface SessionListProps {
|
|
47
|
+
sessions: SessionItemDisplay[];
|
|
48
|
+
currentSessionId?: string;
|
|
49
|
+
loading?: boolean;
|
|
50
|
+
revokingId?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface LinkedAccountDisplay {
|
|
53
|
+
accountId: string;
|
|
54
|
+
provider: SocialProvider;
|
|
55
|
+
email?: string;
|
|
56
|
+
name?: string;
|
|
57
|
+
linkedAt?: Date;
|
|
58
|
+
}
|
|
59
|
+
export interface LinkedAccountsListProps {
|
|
60
|
+
accounts: LinkedAccountDisplay[];
|
|
61
|
+
loading?: boolean;
|
|
62
|
+
unlinkingId?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface AuthLoadingProps {
|
|
65
|
+
message?: string;
|
|
66
|
+
size?: Size;
|
|
67
|
+
}
|
|
68
|
+
export interface AuthErrorProps {
|
|
69
|
+
message: string;
|
|
70
|
+
dismissible?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface OTPInputProps {
|
|
73
|
+
length?: number;
|
|
74
|
+
value: string;
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
}
|
|
77
|
+
export interface ResendCodeButtonProps {
|
|
78
|
+
disabled?: boolean;
|
|
79
|
+
remainingTime?: number;
|
|
80
|
+
}
|
|
81
|
+
export interface EmailSubmitEvent {
|
|
82
|
+
email: string;
|
|
83
|
+
}
|
|
84
|
+
export interface CodeSubmitEvent {
|
|
85
|
+
code: string;
|
|
86
|
+
}
|
|
87
|
+
export interface SocialClickEvent {
|
|
88
|
+
provider: SocialProvider;
|
|
89
|
+
}
|
|
90
|
+
export interface PasskeyDeleteEvent {
|
|
91
|
+
credentialId: string;
|
|
92
|
+
}
|
|
93
|
+
export interface SessionRevokeEvent {
|
|
94
|
+
sessionId: string;
|
|
95
|
+
}
|
|
96
|
+
export interface AccountUnlinkEvent {
|
|
97
|
+
accountId: string;
|
|
98
|
+
provider: SocialProvider;
|
|
99
|
+
}
|
|
100
|
+
export type AlertVariant = "success" | "error" | "warning" | "info";
|
|
101
|
+
export interface ConsentAllowEvent {
|
|
102
|
+
selectedOrgId: string | null;
|
|
103
|
+
actingAsUserId?: string;
|
|
104
|
+
}
|
|
105
|
+
export interface OrgChangeEvent {
|
|
106
|
+
orgId: string | null;
|
|
107
|
+
}
|
|
108
|
+
export interface DeviceCodeEvent {
|
|
109
|
+
userCode: string;
|
|
110
|
+
}
|
|
111
|
+
export interface DeviceCodeChangeEvent {
|
|
112
|
+
value: string;
|
|
113
|
+
}
|
|
114
|
+
export interface CIBAApproveEvent {
|
|
115
|
+
authReqId: string;
|
|
116
|
+
}
|
|
117
|
+
export interface CIBADenyEvent {
|
|
118
|
+
authReqId: string;
|
|
119
|
+
}
|
|
120
|
+
export interface ReauthEvent {
|
|
121
|
+
challengeId: string;
|
|
122
|
+
}
|
|
123
|
+
export interface ReauthSocialEvent {
|
|
124
|
+
challengeId: string;
|
|
125
|
+
provider: import("../types.js").SocialProvider;
|
|
126
|
+
}
|
|
127
|
+
export interface LanguageChangeEvent {
|
|
128
|
+
locale: string;
|
|
129
|
+
}
|
|
130
|
+
export interface LoginTemplateProps {
|
|
131
|
+
availableProviders?: SocialProvider[];
|
|
132
|
+
enablePasskey?: boolean;
|
|
133
|
+
enableEmailCode?: boolean;
|
|
134
|
+
loading?: boolean;
|
|
135
|
+
error?: string;
|
|
136
|
+
}
|
|
137
|
+
export interface SignUpTemplateProps {
|
|
138
|
+
availableProviders?: SocialProvider[];
|
|
139
|
+
enablePasskey?: boolean;
|
|
140
|
+
enableEmailCode?: boolean;
|
|
141
|
+
loading?: boolean;
|
|
142
|
+
error?: string;
|
|
143
|
+
}
|
|
144
|
+
export interface AccountSettingsTemplateProps {
|
|
145
|
+
passkeys?: PasskeyItemDisplay[];
|
|
146
|
+
sessions?: SessionItemDisplay[];
|
|
147
|
+
linkedAccounts?: LinkedAccountDisplay[];
|
|
148
|
+
currentSessionId?: string;
|
|
149
|
+
loading?: boolean;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/ui/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/types.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Svelte Context utilities for Authrim
|
|
3
|
+
*
|
|
4
|
+
* Svelte 4: setContext/getContext
|
|
5
|
+
* Svelte 5: 互換性維持(将来の $state rune 対応準備)
|
|
6
|
+
*/
|
|
7
|
+
import type { AuthrimClient } from '../types.js';
|
|
8
|
+
export declare const AUTH_CONTEXT_KEY: unique symbol;
|
|
9
|
+
export declare function setAuthContext(auth: AuthrimClient): void;
|
|
10
|
+
export declare function getAuthContext(): AuthrimClient;
|
|
11
|
+
export declare function hasAuthContext(): boolean;
|
|
12
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/lib/utils/context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,eAAO,MAAM,gBAAgB,eAAoB,CAAC;AAElD,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAExD;AAED,wBAAgB,cAAc,IAAI,aAAa,CAQ9C;AAED,wBAAgB,cAAc,IAAI,OAAO,CAMxC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Svelte Context utilities for Authrim
|
|
3
|
+
*
|
|
4
|
+
* Svelte 4: setContext/getContext
|
|
5
|
+
* Svelte 5: 互換性維持(将来の $state rune 対応準備)
|
|
6
|
+
*/
|
|
7
|
+
import { setContext, getContext } from 'svelte';
|
|
8
|
+
export const AUTH_CONTEXT_KEY = Symbol('authrim');
|
|
9
|
+
export function setAuthContext(auth) {
|
|
10
|
+
setContext(AUTH_CONTEXT_KEY, auth);
|
|
11
|
+
}
|
|
12
|
+
export function getAuthContext() {
|
|
13
|
+
const auth = getContext(AUTH_CONTEXT_KEY);
|
|
14
|
+
if (!auth) {
|
|
15
|
+
throw new Error('Auth context not found. Make sure to wrap your component with AuthProvider.');
|
|
16
|
+
}
|
|
17
|
+
return auth;
|
|
18
|
+
}
|
|
19
|
+
export function hasAuthContext() {
|
|
20
|
+
try {
|
|
21
|
+
return !!getContext(AUTH_CONTEXT_KEY);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common Error Mapping Utilities
|
|
3
|
+
*/
|
|
4
|
+
export declare const ERROR_CODE_MAP: {
|
|
5
|
+
readonly network_error: "AR001001";
|
|
6
|
+
readonly email_code_invalid: "AR002001";
|
|
7
|
+
readonly email_code_expired: "AR002002";
|
|
8
|
+
readonly email_code_too_many_attempts: "AR002003";
|
|
9
|
+
readonly challenge_expired: "AR002004";
|
|
10
|
+
readonly challenge_invalid: "AR002005";
|
|
11
|
+
readonly passkey_not_found: "AR003001";
|
|
12
|
+
readonly passkey_verification_failed: "AR003002";
|
|
13
|
+
readonly passkey_not_supported: "AR003003";
|
|
14
|
+
readonly passkey_cancelled: "AR003004";
|
|
15
|
+
readonly passkey_invalid_credential: "AR003005";
|
|
16
|
+
readonly popup_blocked: "AR004001";
|
|
17
|
+
readonly popup_closed: "AR004002";
|
|
18
|
+
readonly oauth_error: "AR004003";
|
|
19
|
+
readonly invalid_response: "AR004004";
|
|
20
|
+
readonly state_mismatch: "AR004005";
|
|
21
|
+
readonly invalid_state: "AR004006";
|
|
22
|
+
readonly token_error: "AR004007";
|
|
23
|
+
};
|
|
24
|
+
export declare function getAuthrimCode(code: string, defaultCode?: string): string;
|
|
25
|
+
type InputSeverity = 'fatal' | 'error' | 'warning';
|
|
26
|
+
type OutputSeverity = 'info' | 'warn' | 'error' | 'critical';
|
|
27
|
+
export declare function mapSeverity(severity: InputSeverity): OutputSeverity;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=error-mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-mapping.d.ts","sourceRoot":"","sources":["../../src/lib/utils/error-mapping.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;CA0BjB,CAAC;AAEX,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,SAAa,GAAG,MAAM,CAE7E;AAED,KAAK,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;AACnD,KAAK,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;AAQ7D,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,CAEnE"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common Error Mapping Utilities
|
|
3
|
+
*/
|
|
4
|
+
export const ERROR_CODE_MAP = {
|
|
5
|
+
// Network errors (AR001xxx)
|
|
6
|
+
network_error: 'AR001001',
|
|
7
|
+
// Email code errors (AR002xxx)
|
|
8
|
+
email_code_invalid: 'AR002001',
|
|
9
|
+
email_code_expired: 'AR002002',
|
|
10
|
+
email_code_too_many_attempts: 'AR002003',
|
|
11
|
+
challenge_expired: 'AR002004',
|
|
12
|
+
challenge_invalid: 'AR002005',
|
|
13
|
+
// Passkey errors (AR003xxx)
|
|
14
|
+
passkey_not_found: 'AR003001',
|
|
15
|
+
passkey_verification_failed: 'AR003002',
|
|
16
|
+
passkey_not_supported: 'AR003003',
|
|
17
|
+
passkey_cancelled: 'AR003004',
|
|
18
|
+
passkey_invalid_credential: 'AR003005',
|
|
19
|
+
// Social login errors (AR004xxx)
|
|
20
|
+
popup_blocked: 'AR004001',
|
|
21
|
+
popup_closed: 'AR004002',
|
|
22
|
+
oauth_error: 'AR004003',
|
|
23
|
+
invalid_response: 'AR004004',
|
|
24
|
+
state_mismatch: 'AR004005',
|
|
25
|
+
invalid_state: 'AR004006',
|
|
26
|
+
token_error: 'AR004007',
|
|
27
|
+
};
|
|
28
|
+
export function getAuthrimCode(code, defaultCode = 'AR000000') {
|
|
29
|
+
return ERROR_CODE_MAP[code] || defaultCode;
|
|
30
|
+
}
|
|
31
|
+
const SEVERITY_MAP = {
|
|
32
|
+
fatal: 'critical',
|
|
33
|
+
error: 'error',
|
|
34
|
+
warning: 'warn',
|
|
35
|
+
};
|
|
36
|
+
export function mapSeverity(severity) {
|
|
37
|
+
return SEVERITY_MAP[severity] || 'error';
|
|
38
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { sanitizeForLogging, sanitizeJsonForLogging, maskValue, } from './sensitive-data.js';
|
|
2
|
+
export { getAuthrimCode, mapSeverity, ERROR_CODE_MAP } from './error-mapping.js';
|
|
3
|
+
export { convertToPublicKeyCredentialRequestOptions, convertToPublicKeyCredentialCreationOptions, assertionResponseToJSON, attestationResponseToJSON, } from './webauthn-converters.js';
|
|
4
|
+
export { success, failure, failureFromParams, toAuthError, authResultToResponse, wrapWithAuthResponse, } from './response.js';
|
|
5
|
+
export { AUTH_CONTEXT_KEY, setAuthContext, getAuthContext, hasAuthContext } from './context.js';
|
|
6
|
+
export { isBrowser, isServer, onBrowser, onServer, getWindow, getDocument, getLocalStorage, getSessionStorage, } from './ssr.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,SAAS,GACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EACL,0CAA0C,EAC1C,2CAA2C,EAC3C,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,OAAO,EACP,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,EACL,SAAS,EACT,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,GAClB,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { sanitizeForLogging, sanitizeJsonForLogging, maskValue, } from './sensitive-data.js';
|
|
2
|
+
export { getAuthrimCode, mapSeverity, ERROR_CODE_MAP } from './error-mapping.js';
|
|
3
|
+
export { convertToPublicKeyCredentialRequestOptions, convertToPublicKeyCredentialCreationOptions, assertionResponseToJSON, attestationResponseToJSON, } from './webauthn-converters.js';
|
|
4
|
+
export { success, failure, failureFromParams, toAuthError, authResultToResponse, wrapWithAuthResponse, } from './response.js';
|
|
5
|
+
export { AUTH_CONTEXT_KEY, setAuthContext, getAuthContext, hasAuthContext } from './context.js';
|
|
6
|
+
export { isBrowser, isServer, onBrowser, onServer, getWindow, getDocument, getLocalStorage, getSessionStorage, } from './ssr.js';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response utilities for Authrim Svelte SDK
|
|
3
|
+
*/
|
|
4
|
+
import type { AuthResult, DirectAuthError } from '@authrim/core';
|
|
5
|
+
import type { AuthResponse, AuthError, AuthSessionData } from '../types.js';
|
|
6
|
+
export declare function success<T>(data: T): AuthResponse<T>;
|
|
7
|
+
export declare function failure<T>(error: AuthError): AuthResponse<T>;
|
|
8
|
+
export declare function failureFromParams(params: {
|
|
9
|
+
code: string;
|
|
10
|
+
error: string;
|
|
11
|
+
message: string;
|
|
12
|
+
retryable: boolean;
|
|
13
|
+
severity: 'info' | 'warn' | 'error' | 'critical';
|
|
14
|
+
cause?: unknown;
|
|
15
|
+
}): AuthResponse<never>;
|
|
16
|
+
export declare function toAuthError(error: DirectAuthError): AuthError;
|
|
17
|
+
export declare function authResultToResponse(result: AuthResult & {
|
|
18
|
+
redirectTo?: string;
|
|
19
|
+
}): AuthResponse<AuthSessionData>;
|
|
20
|
+
export declare function wrapWithAuthResponse<T>(fn: () => Promise<T>, defaultErrorCode?: string): Promise<AuthResponse<T>>;
|
|
21
|
+
//# sourceMappingURL=response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/lib/utils/response.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5E,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAEnD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAE5D;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,YAAY,CAAC,KAAK,CAAC,CAYtB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,CAQ7D;AAiBD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3C,YAAY,CAAC,eAAe,CAAC,CAqB/B;AAED,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,gBAAgB,SAAa,GAC5B,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAkB1B"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response utilities for Authrim Svelte SDK
|
|
3
|
+
*/
|
|
4
|
+
export function success(data) {
|
|
5
|
+
return { data, error: null };
|
|
6
|
+
}
|
|
7
|
+
export function failure(error) {
|
|
8
|
+
return { data: null, error };
|
|
9
|
+
}
|
|
10
|
+
export function failureFromParams(params) {
|
|
11
|
+
return {
|
|
12
|
+
data: null,
|
|
13
|
+
error: {
|
|
14
|
+
code: params.code,
|
|
15
|
+
error: params.error,
|
|
16
|
+
message: params.message,
|
|
17
|
+
retryable: params.retryable,
|
|
18
|
+
severity: params.severity,
|
|
19
|
+
cause: params.cause,
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export function toAuthError(error) {
|
|
24
|
+
return {
|
|
25
|
+
code: error.code,
|
|
26
|
+
error: error.error,
|
|
27
|
+
message: error.error_description || error.error || 'An error occurred',
|
|
28
|
+
retryable: error.meta?.retryable ?? false,
|
|
29
|
+
severity: mapSeverity(error.meta?.severity),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function mapSeverity(severity) {
|
|
33
|
+
switch (severity) {
|
|
34
|
+
case 'info':
|
|
35
|
+
return 'info';
|
|
36
|
+
case 'warn':
|
|
37
|
+
case 'warning':
|
|
38
|
+
return 'warn';
|
|
39
|
+
case 'critical':
|
|
40
|
+
case 'fatal':
|
|
41
|
+
return 'critical';
|
|
42
|
+
default:
|
|
43
|
+
return 'error';
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export function authResultToResponse(result) {
|
|
47
|
+
if (result.success && result.session && result.user) {
|
|
48
|
+
return success({
|
|
49
|
+
session: result.session,
|
|
50
|
+
user: result.user,
|
|
51
|
+
nextAction: result.nextAction,
|
|
52
|
+
redirectTo: result.redirectTo,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
if (result.error) {
|
|
56
|
+
return failure(toAuthError(result.error));
|
|
57
|
+
}
|
|
58
|
+
return failureFromParams({
|
|
59
|
+
code: 'AR000000',
|
|
60
|
+
error: 'unknown_error',
|
|
61
|
+
message: 'Unknown error occurred',
|
|
62
|
+
retryable: false,
|
|
63
|
+
severity: 'error',
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
export async function wrapWithAuthResponse(fn, defaultErrorCode = 'AR000000') {
|
|
67
|
+
try {
|
|
68
|
+
const data = await fn();
|
|
69
|
+
return success(data);
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
if (error && typeof error === 'object' && 'code' in error) {
|
|
73
|
+
return failure(toAuthError(error));
|
|
74
|
+
}
|
|
75
|
+
return failureFromParams({
|
|
76
|
+
code: defaultErrorCode,
|
|
77
|
+
error: 'unknown_error',
|
|
78
|
+
message: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
79
|
+
retryable: false,
|
|
80
|
+
severity: 'error',
|
|
81
|
+
cause: error,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sensitive Data Handling Utilities
|
|
3
|
+
*
|
|
4
|
+
* センシティブ情報のログ出力時マスキング
|
|
5
|
+
*/
|
|
6
|
+
export declare function maskValue(value: string, visibleChars?: number): string;
|
|
7
|
+
export declare function sanitizeForLogging<T extends Record<string, unknown>>(obj: T, additionalFields?: string[]): T;
|
|
8
|
+
export declare function sanitizeJsonForLogging(jsonString: string, additionalFields?: string[]): string;
|
|
9
|
+
//# sourceMappingURL=sensitive-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sensitive-data.d.ts","sourceRoot":"","sources":["../../src/lib/utils/sensitive-data.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsBH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAOjE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClE,GAAG,EAAE,CAAC,EACN,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAC1B,CAAC,CAkBH;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAQ9F"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sensitive Data Handling Utilities
|
|
3
|
+
*
|
|
4
|
+
* センシティブ情報のログ出力時マスキング
|
|
5
|
+
*/
|
|
6
|
+
const SENSITIVE_FIELDS = new Set([
|
|
7
|
+
'code_verifier',
|
|
8
|
+
'codeVerifier',
|
|
9
|
+
'code',
|
|
10
|
+
'auth_code',
|
|
11
|
+
'authCode',
|
|
12
|
+
'token',
|
|
13
|
+
'access_token',
|
|
14
|
+
'accessToken',
|
|
15
|
+
'refresh_token',
|
|
16
|
+
'refreshToken',
|
|
17
|
+
'id_token',
|
|
18
|
+
'idToken',
|
|
19
|
+
'secret',
|
|
20
|
+
'password',
|
|
21
|
+
'credential',
|
|
22
|
+
'private_key',
|
|
23
|
+
'privateKey',
|
|
24
|
+
]);
|
|
25
|
+
export function maskValue(value, visibleChars = 4) {
|
|
26
|
+
if (!value || value.length <= visibleChars * 2) {
|
|
27
|
+
return '***';
|
|
28
|
+
}
|
|
29
|
+
const start = value.slice(0, visibleChars);
|
|
30
|
+
const end = value.slice(-visibleChars);
|
|
31
|
+
return `${start}...${end}`;
|
|
32
|
+
}
|
|
33
|
+
export function sanitizeForLogging(obj, additionalFields) {
|
|
34
|
+
const fieldsToMask = new Set([...SENSITIVE_FIELDS, ...(additionalFields || [])]);
|
|
35
|
+
const sanitized = { ...obj };
|
|
36
|
+
for (const key of Object.keys(sanitized)) {
|
|
37
|
+
const value = sanitized[key];
|
|
38
|
+
if (fieldsToMask.has(key) && typeof value === 'string') {
|
|
39
|
+
sanitized[key] = maskValue(value);
|
|
40
|
+
}
|
|
41
|
+
else if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
42
|
+
sanitized[key] = sanitizeForLogging(value, additionalFields);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return sanitized;
|
|
46
|
+
}
|
|
47
|
+
export function sanitizeJsonForLogging(jsonString, additionalFields) {
|
|
48
|
+
try {
|
|
49
|
+
const parsed = JSON.parse(jsonString);
|
|
50
|
+
const sanitized = sanitizeForLogging(parsed, additionalFields);
|
|
51
|
+
return JSON.stringify(sanitized);
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return maskValue(jsonString, 10);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SSR Utilities for Authrim Svelte SDK
|
|
3
|
+
*
|
|
4
|
+
* ブラウザ/サーバー環境の判定とSSR対応ヘルパー
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Check if running in browser environment
|
|
8
|
+
*/
|
|
9
|
+
export declare function isBrowser(): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Check if running in server environment
|
|
12
|
+
*/
|
|
13
|
+
export declare function isServer(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Execute callback only in browser environment
|
|
16
|
+
*/
|
|
17
|
+
export declare function onBrowser<T>(callback: () => T): T | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Execute callback only in server environment
|
|
20
|
+
*/
|
|
21
|
+
export declare function onServer<T>(callback: () => T): T | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Safe window access (returns undefined on server)
|
|
24
|
+
*/
|
|
25
|
+
export declare function getWindow(): Window | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Safe document access (returns undefined on server)
|
|
28
|
+
*/
|
|
29
|
+
export declare function getDocument(): Document | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Safe localStorage access (returns null on server)
|
|
32
|
+
*/
|
|
33
|
+
export declare function getLocalStorage(): Storage | null;
|
|
34
|
+
/**
|
|
35
|
+
* Safe sessionStorage access (returns null on server)
|
|
36
|
+
*/
|
|
37
|
+
export declare function getSessionStorage(): Storage | null;
|
|
38
|
+
//# sourceMappingURL=ssr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssr.d.ts","sourceRoot":"","sources":["../../src/lib/utils/ssr.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAK7D;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAK5D;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,GAAG,SAAS,CAE9C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,GAAG,SAAS,CAElD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,GAAG,IAAI,CAOhD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,GAAG,IAAI,CAOlD"}
|