@better-auth/electron 1.7.0-beta.1 → 1.7.0-beta.3
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/client.mjs +3 -21
- package/dist/index.mjs +1 -1
- package/dist/preload.d.mts +20 -14
- package/dist/proxy.mjs +1 -1
- package/dist/{version-C22JHwcK.mjs → version-CLqkeI3u.mjs} +1 -1
- package/package.json +6 -6
package/dist/client.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as PACKAGE_VERSION } from "./version-
|
|
1
|
+
import { t as PACKAGE_VERSION } from "./version-CLqkeI3u.mjs";
|
|
2
2
|
import { n as isProcessType, r as parseProtocolScheme, t as getChannelPrefixWithDelimiter } from "./utils-DxDKRT6e.mjs";
|
|
3
3
|
import { BetterAuthError } from "@better-auth/core/error";
|
|
4
4
|
import { base64, base64Url } from "@better-auth/utils/base64";
|
|
@@ -11,6 +11,7 @@ import { signInSocial } from "better-auth/api";
|
|
|
11
11
|
import { parseSetCookieHeader } from "better-auth/cookies";
|
|
12
12
|
import electron, { shell } from "electron";
|
|
13
13
|
import { isDevelopment as isDevelopment$1 } from "@better-auth/core/env";
|
|
14
|
+
import { isPublicRoutableHost } from "@better-auth/core/utils/host";
|
|
14
15
|
import { resolve } from "node:path";
|
|
15
16
|
//#region src/user.ts
|
|
16
17
|
const { net } = electron;
|
|
@@ -37,7 +38,7 @@ async function fetchUserImage(baseURL, url, options) {
|
|
|
37
38
|
parsed = new URL(relative, base);
|
|
38
39
|
}
|
|
39
40
|
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") return null;
|
|
40
|
-
if (!isDevelopment$1() &&
|
|
41
|
+
if (!isDevelopment$1() && !isPublicRoutableHost(parsed.hostname)) return null;
|
|
41
42
|
resolvedUrl = parsed.href;
|
|
42
43
|
} catch {
|
|
43
44
|
return null;
|
|
@@ -116,25 +117,6 @@ async function decodeDataImageUrl(url, options) {
|
|
|
116
117
|
return null;
|
|
117
118
|
}
|
|
118
119
|
}
|
|
119
|
-
function isLocalOrigin(parsed) {
|
|
120
|
-
const hostname = parsed.hostname.toLowerCase();
|
|
121
|
-
if (hostname === "localhost") return true;
|
|
122
|
-
const m = hostname.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/);
|
|
123
|
-
if (m) {
|
|
124
|
-
const a = Number(m[1]);
|
|
125
|
-
const b = Number(m[2]);
|
|
126
|
-
if (a === 127) return true;
|
|
127
|
-
if (a === 10) return true;
|
|
128
|
-
if (a === 172 && b >= 16 && b <= 31) return true;
|
|
129
|
-
if (a === 192 && b === 168) return true;
|
|
130
|
-
if (a === 169 && b === 254) return true;
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
const h = hostname.replace(/^\[|\]$/g, "");
|
|
134
|
-
if (h === "::1" || /^(0:){7}1$/.test(h) || h === "0:0:0:0:0:0:0:1") return true;
|
|
135
|
-
if (/^fe[89ab][0-9a-f]/i.test(h)) return true;
|
|
136
|
-
return false;
|
|
137
|
-
}
|
|
138
120
|
function detectImageType(bytes) {
|
|
139
121
|
if (bytes.length < 12) return null;
|
|
140
122
|
if (bytes[0] === 137 && bytes[1] === 80 && bytes[2] === 78 && bytes[3] === 71 && bytes[4] === 13 && bytes[5] === 10 && bytes[6] === 26 && bytes[7] === 10) return "image/png";
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as PACKAGE_VERSION } from "./version-
|
|
1
|
+
import { t as PACKAGE_VERSION } from "./version-CLqkeI3u.mjs";
|
|
2
2
|
import { createAuthMiddleware } from "@better-auth/core/api";
|
|
3
3
|
import { APIError, BASE_ERROR_CODES } from "@better-auth/core/error";
|
|
4
4
|
import { base64Url } from "@better-auth/utils/base64";
|
package/dist/preload.d.mts
CHANGED
|
@@ -819,7 +819,7 @@ interface AppleProfile {
|
|
|
819
819
|
* The email address is either the user's real email address or the proxy
|
|
820
820
|
* address, depending on their status private email relay service.
|
|
821
821
|
*/
|
|
822
|
-
email
|
|
822
|
+
email?: string;
|
|
823
823
|
/**
|
|
824
824
|
* A string or Boolean value that indicates whether the service verifies
|
|
825
825
|
* the email. The value can either be a string ("true" or "false") or a
|
|
@@ -867,7 +867,7 @@ interface AppleNonConformUser {
|
|
|
867
867
|
email: string;
|
|
868
868
|
}
|
|
869
869
|
interface AppleOptions extends ProviderOptions<AppleProfile> {
|
|
870
|
-
clientId: string;
|
|
870
|
+
clientId: string | string[];
|
|
871
871
|
appBundleIdentifier?: string | undefined;
|
|
872
872
|
audience?: (string | string[]) | undefined;
|
|
873
873
|
}
|
|
@@ -914,7 +914,7 @@ interface CognitoProfile {
|
|
|
914
914
|
[key: string]: any;
|
|
915
915
|
}
|
|
916
916
|
interface CognitoOptions extends ProviderOptions<CognitoProfile> {
|
|
917
|
-
clientId: string;
|
|
917
|
+
clientId: string | string[];
|
|
918
918
|
/**
|
|
919
919
|
* The Cognito domain (e.g., "your-app.auth.us-east-1.amazoncognito.com")
|
|
920
920
|
*/
|
|
@@ -967,7 +967,7 @@ interface DiscordProfile extends Record<string, any> {
|
|
|
967
967
|
/** whether the email on this account has been verified */
|
|
968
968
|
verified: boolean;
|
|
969
969
|
/** the user's email */
|
|
970
|
-
email
|
|
970
|
+
email?: string | null;
|
|
971
971
|
/**
|
|
972
972
|
* the flags on a user's account:
|
|
973
973
|
* https://discord.com/developers/docs/resources/user#user-object-user-flags
|
|
@@ -1009,8 +1009,8 @@ interface DiscordOptions extends ProviderOptions<DiscordProfile> {
|
|
|
1009
1009
|
interface FacebookProfile {
|
|
1010
1010
|
id: string;
|
|
1011
1011
|
name: string;
|
|
1012
|
-
email
|
|
1013
|
-
email_verified
|
|
1012
|
+
email?: string;
|
|
1013
|
+
email_verified?: boolean;
|
|
1014
1014
|
picture: {
|
|
1015
1015
|
data: {
|
|
1016
1016
|
height: number;
|
|
@@ -1021,7 +1021,7 @@ interface FacebookProfile {
|
|
|
1021
1021
|
};
|
|
1022
1022
|
}
|
|
1023
1023
|
interface FacebookOptions extends ProviderOptions<FacebookProfile> {
|
|
1024
|
-
clientId: string;
|
|
1024
|
+
clientId: string | string[];
|
|
1025
1025
|
/**
|
|
1026
1026
|
* Extend list of fields to retrieve from the Facebook user profile.
|
|
1027
1027
|
*
|
|
@@ -1071,7 +1071,7 @@ interface GithubProfile {
|
|
|
1071
1071
|
company: string;
|
|
1072
1072
|
blog: string;
|
|
1073
1073
|
location: string;
|
|
1074
|
-
email: string;
|
|
1074
|
+
email: string | null;
|
|
1075
1075
|
hireable: boolean;
|
|
1076
1076
|
bio: string;
|
|
1077
1077
|
twitter_username: string;
|
|
@@ -1125,7 +1125,7 @@ interface MicrosoftEntraIDProfile extends Record<string, any> {
|
|
|
1125
1125
|
/** The primary username that represents the user */
|
|
1126
1126
|
preferred_username: string;
|
|
1127
1127
|
/** User's email address */
|
|
1128
|
-
email
|
|
1128
|
+
email?: string;
|
|
1129
1129
|
/** Human-readable value that identifies the subject of the token */
|
|
1130
1130
|
name: string;
|
|
1131
1131
|
/** Matches the parameter included in the original authorize request */
|
|
@@ -1204,7 +1204,7 @@ interface MicrosoftEntraIDProfile extends Record<string, any> {
|
|
|
1204
1204
|
given_name: string;
|
|
1205
1205
|
}
|
|
1206
1206
|
interface MicrosoftOptions extends ProviderOptions<MicrosoftEntraIDProfile> {
|
|
1207
|
-
clientId: string;
|
|
1207
|
+
clientId: string | string[];
|
|
1208
1208
|
/**
|
|
1209
1209
|
* The tenant ID of the Microsoft account
|
|
1210
1210
|
* @default "common"
|
|
@@ -1255,7 +1255,7 @@ interface GoogleProfile {
|
|
|
1255
1255
|
sub: string;
|
|
1256
1256
|
}
|
|
1257
1257
|
interface GoogleOptions extends ProviderOptions<GoogleProfile> {
|
|
1258
|
-
clientId: string;
|
|
1258
|
+
clientId: string | string[];
|
|
1259
1259
|
/**
|
|
1260
1260
|
* The access type to use for the authorization code request
|
|
1261
1261
|
*/
|
|
@@ -1539,8 +1539,8 @@ interface LinkedInProfile {
|
|
|
1539
1539
|
country: string;
|
|
1540
1540
|
language: string;
|
|
1541
1541
|
};
|
|
1542
|
-
email
|
|
1543
|
-
email_verified
|
|
1542
|
+
email?: string;
|
|
1543
|
+
email_verified?: boolean;
|
|
1544
1544
|
}
|
|
1545
1545
|
interface LinkedInOptions extends ProviderOptions<LinkedInProfile> {
|
|
1546
1546
|
clientId: string;
|
|
@@ -4838,7 +4838,12 @@ interface InternalAdapter<_Options extends BetterAuthOptions = BetterAuthOptions
|
|
|
4838
4838
|
updateSession(sessionToken: string, session: Partial<Session> & Record<string, any>): Promise<Session | null>;
|
|
4839
4839
|
deleteSession(token: string): Promise<void>;
|
|
4840
4840
|
deleteAccounts(userId: string): Promise<void>;
|
|
4841
|
-
|
|
4841
|
+
/**
|
|
4842
|
+
* Delete an account by its primary key.
|
|
4843
|
+
*
|
|
4844
|
+
* @param id - The account row's primary key (the `id` column, not the `accountId` column).
|
|
4845
|
+
*/
|
|
4846
|
+
deleteAccount(id: string): Promise<void>;
|
|
4842
4847
|
deleteSessions(userIdOrSessionTokens: string | string[]): Promise<void>;
|
|
4843
4848
|
findOAuthUser(email: string, accountId: string, providerId: string): Promise<{
|
|
4844
4849
|
user: User;
|
|
@@ -4865,6 +4870,7 @@ interface InternalAdapter<_Options extends BetterAuthOptions = BetterAuthOptions
|
|
|
4865
4870
|
findVerificationValue(identifier: string): Promise<Verification | null>;
|
|
4866
4871
|
deleteVerificationByIdentifier(identifier: string): Promise<void>;
|
|
4867
4872
|
updateVerificationByIdentifier(identifier: string, data: Partial<Verification>): Promise<Verification>;
|
|
4873
|
+
refreshUserSessions(user: User): Promise<void>;
|
|
4868
4874
|
}
|
|
4869
4875
|
type CreateCookieGetterFn = (cookieName: string, overrideAttributes?: Partial<CookieOptions> | undefined) => BetterAuthCookie;
|
|
4870
4876
|
type CheckPasswordFn<Options extends BetterAuthOptions = BetterAuthOptions> = (userId: string, ctx: GenericEndpointContext<Options>) => Promise<boolean>;
|
package/dist/proxy.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as PACKAGE_VERSION } from "./version-
|
|
1
|
+
import { t as PACKAGE_VERSION } from "./version-CLqkeI3u.mjs";
|
|
2
2
|
import { r as parseProtocolScheme } from "./utils-DxDKRT6e.mjs";
|
|
3
3
|
import { parseCookies } from "better-auth/cookies";
|
|
4
4
|
//#region src/proxy.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@better-auth/electron",
|
|
3
|
-
"version": "1.7.0-beta.
|
|
3
|
+
"version": "1.7.0-beta.3",
|
|
4
4
|
"description": "Better Auth integration for Electron applications.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -78,10 +78,10 @@
|
|
|
78
78
|
"devDependencies": {
|
|
79
79
|
"@types/better-sqlite3": "^7.6.13",
|
|
80
80
|
"better-sqlite3": "^12.6.2",
|
|
81
|
-
"electron": "^
|
|
81
|
+
"electron": "^41.2.2",
|
|
82
82
|
"tsdown": "0.21.1",
|
|
83
|
-
"@better-auth/core": "1.7.0-beta.
|
|
84
|
-
"better-auth": "1.7.0-beta.
|
|
83
|
+
"@better-auth/core": "1.7.0-beta.3",
|
|
84
|
+
"better-auth": "1.7.0-beta.3"
|
|
85
85
|
},
|
|
86
86
|
"peerDependencies": {
|
|
87
87
|
"@better-auth/utils": "0.4.0",
|
|
@@ -89,8 +89,8 @@
|
|
|
89
89
|
"better-call": "1.3.5",
|
|
90
90
|
"conf": "^15.0.2",
|
|
91
91
|
"electron": ">=36.0.0",
|
|
92
|
-
"@better-auth/core": "^1.7.0-beta.
|
|
93
|
-
"better-auth": "^1.7.0-beta.
|
|
92
|
+
"@better-auth/core": "^1.7.0-beta.3",
|
|
93
|
+
"better-auth": "^1.7.0-beta.3"
|
|
94
94
|
},
|
|
95
95
|
"peerDependenciesMeta": {
|
|
96
96
|
"electron": {
|