better-auth 1.2.2-beta.5 → 1.2.2
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/plugins/index.d.cts +3 -3
- package/dist/client/plugins/index.d.mts +3 -3
- package/dist/client/plugins/index.d.ts +3 -3
- package/dist/plugins/admin/access/index.cjs +18 -2
- package/dist/plugins/admin/access/index.d.cts +23 -23
- package/dist/plugins/admin/access/index.d.mts +23 -23
- package/dist/plugins/admin/access/index.d.ts +23 -23
- package/dist/plugins/admin/access/index.mjs +18 -2
- package/dist/plugins/admin/index.cjs +1 -1
- package/dist/plugins/admin/index.d.cts +29 -4
- package/dist/plugins/admin/index.d.mts +29 -4
- package/dist/plugins/admin/index.d.ts +29 -4
- package/dist/plugins/admin/index.mjs +1 -1
- package/dist/plugins/index.cjs +1 -1
- package/dist/plugins/index.mjs +1 -1
- package/dist/shared/{better-auth.BGjbSDNr.mjs → better-auth.B3YXOPWc.mjs} +46 -4
- package/dist/shared/{better-auth.BWtlZYUl.cjs → better-auth.CuAZQpGO.cjs} +46 -4
- package/package.json +1 -1
|
@@ -660,7 +660,7 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
660
660
|
id: "better-auth-client";
|
|
661
661
|
$InferServerPlugin: ReturnType<typeof admin<{
|
|
662
662
|
ac: O["ac"] extends AccessControl ? O["ac"] : AccessControl<{
|
|
663
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
663
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
664
664
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
665
665
|
}>;
|
|
666
666
|
roles: O["roles"] extends Record<string, Role> ? O["roles"] : {
|
|
@@ -675,10 +675,10 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
675
675
|
} ? keyof O["roles"] : "admin" | "user">(data: {
|
|
676
676
|
role: R;
|
|
677
677
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
678
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
678
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
679
679
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
680
680
|
})]?: (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
681
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
681
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
682
682
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
683
683
|
})[key][number][]; };
|
|
684
684
|
}) => boolean;
|
|
@@ -660,7 +660,7 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
660
660
|
id: "better-auth-client";
|
|
661
661
|
$InferServerPlugin: ReturnType<typeof admin<{
|
|
662
662
|
ac: O["ac"] extends AccessControl ? O["ac"] : AccessControl<{
|
|
663
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
663
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
664
664
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
665
665
|
}>;
|
|
666
666
|
roles: O["roles"] extends Record<string, Role> ? O["roles"] : {
|
|
@@ -675,10 +675,10 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
675
675
|
} ? keyof O["roles"] : "admin" | "user">(data: {
|
|
676
676
|
role: R;
|
|
677
677
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
678
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
678
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
679
679
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
680
680
|
})]?: (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
681
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
681
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
682
682
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
683
683
|
})[key][number][]; };
|
|
684
684
|
}) => boolean;
|
|
@@ -660,7 +660,7 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
660
660
|
id: "better-auth-client";
|
|
661
661
|
$InferServerPlugin: ReturnType<typeof admin<{
|
|
662
662
|
ac: O["ac"] extends AccessControl ? O["ac"] : AccessControl<{
|
|
663
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
663
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
664
664
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
665
665
|
}>;
|
|
666
666
|
roles: O["roles"] extends Record<string, Role> ? O["roles"] : {
|
|
@@ -675,10 +675,10 @@ declare const adminClient: <O extends AdminClientOptions>(options?: O) => {
|
|
|
675
675
|
} ? keyof O["roles"] : "admin" | "user">(data: {
|
|
676
676
|
role: R;
|
|
677
677
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
678
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
678
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
679
679
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
680
680
|
})]?: (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
681
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
681
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
682
682
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
683
683
|
})[key][number][]; };
|
|
684
684
|
}) => boolean;
|
|
@@ -4,12 +4,28 @@ const plugins_access_index = require('../../access/index.cjs');
|
|
|
4
4
|
require('../../../shared/better-auth.ANpbi45u.cjs');
|
|
5
5
|
|
|
6
6
|
const defaultStatements = {
|
|
7
|
-
user: [
|
|
7
|
+
user: [
|
|
8
|
+
"create",
|
|
9
|
+
"list",
|
|
10
|
+
"set-role",
|
|
11
|
+
"ban",
|
|
12
|
+
"impersonate",
|
|
13
|
+
"delete",
|
|
14
|
+
"set-password"
|
|
15
|
+
],
|
|
8
16
|
session: ["list", "revoke", "delete"]
|
|
9
17
|
};
|
|
10
18
|
const defaultAc = plugins_access_index.createAccessControl(defaultStatements);
|
|
11
19
|
const adminAc = defaultAc.newRole({
|
|
12
|
-
user: [
|
|
20
|
+
user: [
|
|
21
|
+
"create",
|
|
22
|
+
"list",
|
|
23
|
+
"set-role",
|
|
24
|
+
"ban",
|
|
25
|
+
"impersonate",
|
|
26
|
+
"delete",
|
|
27
|
+
"set-password"
|
|
28
|
+
],
|
|
13
29
|
session: ["list", "revoke", "delete"]
|
|
14
30
|
});
|
|
15
31
|
const userAc = defaultAc.newRole({
|
|
@@ -3,111 +3,111 @@ import '../../../shared/better-auth.Bi8FQwDD.cjs';
|
|
|
3
3
|
import 'zod';
|
|
4
4
|
|
|
5
5
|
declare const defaultStatements: {
|
|
6
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
6
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
7
7
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
8
8
|
};
|
|
9
9
|
declare const defaultAc: {
|
|
10
10
|
newRole<K extends "session" | "user">(statements: Subset<K, {
|
|
11
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
11
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
12
12
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
13
13
|
}>): {
|
|
14
14
|
authorize<K_1 extends K>(request: K_1 extends infer T extends keyof Subset<K, {
|
|
15
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
15
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
16
16
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
17
17
|
}> ? { [key in T]?: Subset<K, {
|
|
18
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
18
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
19
19
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
20
20
|
}>[key] | {
|
|
21
21
|
actions: Subset<K, {
|
|
22
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
22
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
23
23
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
24
24
|
}>[key];
|
|
25
25
|
connector: "OR" | "AND";
|
|
26
26
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
27
27
|
statements: Subset<K, {
|
|
28
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
28
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
29
29
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
30
30
|
}>;
|
|
31
31
|
};
|
|
32
32
|
statements: {
|
|
33
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
33
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
34
34
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
37
|
declare const adminAc: {
|
|
38
38
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
39
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
39
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
40
40
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
41
41
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
42
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
42
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
43
43
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
44
44
|
}>[key] | {
|
|
45
45
|
actions: Subset<"session" | "user", {
|
|
46
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
46
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
47
47
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
48
48
|
}>[key];
|
|
49
49
|
connector: "OR" | "AND";
|
|
50
50
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
51
51
|
statements: Subset<"session" | "user", {
|
|
52
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
52
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
53
53
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
54
54
|
}>;
|
|
55
55
|
};
|
|
56
56
|
declare const userAc: {
|
|
57
57
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
58
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
58
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
59
59
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
60
60
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
61
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
61
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
62
62
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
63
63
|
}>[key] | {
|
|
64
64
|
actions: Subset<"session" | "user", {
|
|
65
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
65
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
66
66
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
67
67
|
}>[key];
|
|
68
68
|
connector: "OR" | "AND";
|
|
69
69
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
70
70
|
statements: Subset<"session" | "user", {
|
|
71
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
71
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
72
72
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
73
73
|
}>;
|
|
74
74
|
};
|
|
75
75
|
declare const defaultRoles: {
|
|
76
76
|
admin: {
|
|
77
77
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
78
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
78
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
79
79
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
80
80
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
81
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
81
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
82
82
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
83
83
|
}>[key] | {
|
|
84
84
|
actions: Subset<"session" | "user", {
|
|
85
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
85
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
86
86
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
87
87
|
}>[key];
|
|
88
88
|
connector: "OR" | "AND";
|
|
89
89
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
90
90
|
statements: Subset<"session" | "user", {
|
|
91
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
91
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
92
92
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
93
93
|
}>;
|
|
94
94
|
};
|
|
95
95
|
user: {
|
|
96
96
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
97
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
97
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
98
98
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
99
99
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
100
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
100
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
101
101
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
102
102
|
}>[key] | {
|
|
103
103
|
actions: Subset<"session" | "user", {
|
|
104
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
104
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
105
105
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
106
106
|
}>[key];
|
|
107
107
|
connector: "OR" | "AND";
|
|
108
108
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
109
109
|
statements: Subset<"session" | "user", {
|
|
110
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
110
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
111
111
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
112
112
|
}>;
|
|
113
113
|
};
|
|
@@ -3,111 +3,111 @@ import '../../../shared/better-auth.Bi8FQwDD.mjs';
|
|
|
3
3
|
import 'zod';
|
|
4
4
|
|
|
5
5
|
declare const defaultStatements: {
|
|
6
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
6
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
7
7
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
8
8
|
};
|
|
9
9
|
declare const defaultAc: {
|
|
10
10
|
newRole<K extends "session" | "user">(statements: Subset<K, {
|
|
11
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
11
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
12
12
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
13
13
|
}>): {
|
|
14
14
|
authorize<K_1 extends K>(request: K_1 extends infer T extends keyof Subset<K, {
|
|
15
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
15
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
16
16
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
17
17
|
}> ? { [key in T]?: Subset<K, {
|
|
18
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
18
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
19
19
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
20
20
|
}>[key] | {
|
|
21
21
|
actions: Subset<K, {
|
|
22
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
22
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
23
23
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
24
24
|
}>[key];
|
|
25
25
|
connector: "OR" | "AND";
|
|
26
26
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
27
27
|
statements: Subset<K, {
|
|
28
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
28
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
29
29
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
30
30
|
}>;
|
|
31
31
|
};
|
|
32
32
|
statements: {
|
|
33
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
33
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
34
34
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
37
|
declare const adminAc: {
|
|
38
38
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
39
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
39
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
40
40
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
41
41
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
42
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
42
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
43
43
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
44
44
|
}>[key] | {
|
|
45
45
|
actions: Subset<"session" | "user", {
|
|
46
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
46
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
47
47
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
48
48
|
}>[key];
|
|
49
49
|
connector: "OR" | "AND";
|
|
50
50
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
51
51
|
statements: Subset<"session" | "user", {
|
|
52
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
52
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
53
53
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
54
54
|
}>;
|
|
55
55
|
};
|
|
56
56
|
declare const userAc: {
|
|
57
57
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
58
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
58
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
59
59
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
60
60
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
61
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
61
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
62
62
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
63
63
|
}>[key] | {
|
|
64
64
|
actions: Subset<"session" | "user", {
|
|
65
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
65
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
66
66
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
67
67
|
}>[key];
|
|
68
68
|
connector: "OR" | "AND";
|
|
69
69
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
70
70
|
statements: Subset<"session" | "user", {
|
|
71
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
71
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
72
72
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
73
73
|
}>;
|
|
74
74
|
};
|
|
75
75
|
declare const defaultRoles: {
|
|
76
76
|
admin: {
|
|
77
77
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
78
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
78
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
79
79
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
80
80
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
81
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
81
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
82
82
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
83
83
|
}>[key] | {
|
|
84
84
|
actions: Subset<"session" | "user", {
|
|
85
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
85
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
86
86
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
87
87
|
}>[key];
|
|
88
88
|
connector: "OR" | "AND";
|
|
89
89
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
90
90
|
statements: Subset<"session" | "user", {
|
|
91
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
91
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
92
92
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
93
93
|
}>;
|
|
94
94
|
};
|
|
95
95
|
user: {
|
|
96
96
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
97
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
97
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
98
98
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
99
99
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
100
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
100
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
101
101
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
102
102
|
}>[key] | {
|
|
103
103
|
actions: Subset<"session" | "user", {
|
|
104
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
104
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
105
105
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
106
106
|
}>[key];
|
|
107
107
|
connector: "OR" | "AND";
|
|
108
108
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
109
109
|
statements: Subset<"session" | "user", {
|
|
110
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
110
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
111
111
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
112
112
|
}>;
|
|
113
113
|
};
|
|
@@ -3,111 +3,111 @@ import '../../../shared/better-auth.Bi8FQwDD.js';
|
|
|
3
3
|
import 'zod';
|
|
4
4
|
|
|
5
5
|
declare const defaultStatements: {
|
|
6
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
6
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
7
7
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
8
8
|
};
|
|
9
9
|
declare const defaultAc: {
|
|
10
10
|
newRole<K extends "session" | "user">(statements: Subset<K, {
|
|
11
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
11
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
12
12
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
13
13
|
}>): {
|
|
14
14
|
authorize<K_1 extends K>(request: K_1 extends infer T extends keyof Subset<K, {
|
|
15
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
15
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
16
16
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
17
17
|
}> ? { [key in T]?: Subset<K, {
|
|
18
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
18
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
19
19
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
20
20
|
}>[key] | {
|
|
21
21
|
actions: Subset<K, {
|
|
22
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
22
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
23
23
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
24
24
|
}>[key];
|
|
25
25
|
connector: "OR" | "AND";
|
|
26
26
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
27
27
|
statements: Subset<K, {
|
|
28
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
28
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
29
29
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
30
30
|
}>;
|
|
31
31
|
};
|
|
32
32
|
statements: {
|
|
33
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
33
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
34
34
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
37
|
declare const adminAc: {
|
|
38
38
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
39
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
39
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
40
40
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
41
41
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
42
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
42
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
43
43
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
44
44
|
}>[key] | {
|
|
45
45
|
actions: Subset<"session" | "user", {
|
|
46
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
46
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
47
47
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
48
48
|
}>[key];
|
|
49
49
|
connector: "OR" | "AND";
|
|
50
50
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
51
51
|
statements: Subset<"session" | "user", {
|
|
52
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
52
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
53
53
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
54
54
|
}>;
|
|
55
55
|
};
|
|
56
56
|
declare const userAc: {
|
|
57
57
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
58
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
58
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
59
59
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
60
60
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
61
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
61
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
62
62
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
63
63
|
}>[key] | {
|
|
64
64
|
actions: Subset<"session" | "user", {
|
|
65
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
65
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
66
66
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
67
67
|
}>[key];
|
|
68
68
|
connector: "OR" | "AND";
|
|
69
69
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
70
70
|
statements: Subset<"session" | "user", {
|
|
71
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
71
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
72
72
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
73
73
|
}>;
|
|
74
74
|
};
|
|
75
75
|
declare const defaultRoles: {
|
|
76
76
|
admin: {
|
|
77
77
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
78
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
78
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
79
79
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
80
80
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
81
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
81
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
82
82
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
83
83
|
}>[key] | {
|
|
84
84
|
actions: Subset<"session" | "user", {
|
|
85
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
85
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
86
86
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
87
87
|
}>[key];
|
|
88
88
|
connector: "OR" | "AND";
|
|
89
89
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
90
90
|
statements: Subset<"session" | "user", {
|
|
91
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
91
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
92
92
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
93
93
|
}>;
|
|
94
94
|
};
|
|
95
95
|
user: {
|
|
96
96
|
authorize<K extends "session" | "user">(request: K extends infer T extends keyof Subset<"session" | "user", {
|
|
97
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
97
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
98
98
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
99
99
|
}> ? { [key in T]?: Subset<"session" | "user", {
|
|
100
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
100
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
101
101
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
102
102
|
}>[key] | {
|
|
103
103
|
actions: Subset<"session" | "user", {
|
|
104
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
104
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
105
105
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
106
106
|
}>[key];
|
|
107
107
|
connector: "OR" | "AND";
|
|
108
108
|
} | undefined; } : never, connector?: "OR" | "AND"): AuthortizeResponse;
|
|
109
109
|
statements: Subset<"session" | "user", {
|
|
110
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
110
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
111
111
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
112
112
|
}>;
|
|
113
113
|
};
|
|
@@ -2,12 +2,28 @@ import { createAccessControl } from '../../access/index.mjs';
|
|
|
2
2
|
import '../../../shared/better-auth.DdzSJf-n.mjs';
|
|
3
3
|
|
|
4
4
|
const defaultStatements = {
|
|
5
|
-
user: [
|
|
5
|
+
user: [
|
|
6
|
+
"create",
|
|
7
|
+
"list",
|
|
8
|
+
"set-role",
|
|
9
|
+
"ban",
|
|
10
|
+
"impersonate",
|
|
11
|
+
"delete",
|
|
12
|
+
"set-password"
|
|
13
|
+
],
|
|
6
14
|
session: ["list", "revoke", "delete"]
|
|
7
15
|
};
|
|
8
16
|
const defaultAc = createAccessControl(defaultStatements);
|
|
9
17
|
const adminAc = defaultAc.newRole({
|
|
10
|
-
user: [
|
|
18
|
+
user: [
|
|
19
|
+
"create",
|
|
20
|
+
"list",
|
|
21
|
+
"set-role",
|
|
22
|
+
"ban",
|
|
23
|
+
"impersonate",
|
|
24
|
+
"delete",
|
|
25
|
+
"set-password"
|
|
26
|
+
],
|
|
11
27
|
session: ["list", "revoke", "delete"]
|
|
12
28
|
});
|
|
13
29
|
const userAc = defaultAc.newRole({
|
|
@@ -1193,6 +1193,30 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1193
1193
|
[key: string]: Role;
|
|
1194
1194
|
};
|
|
1195
1195
|
}>)[];
|
|
1196
|
+
metadata: {
|
|
1197
|
+
openapi: {
|
|
1198
|
+
operationId: string;
|
|
1199
|
+
summary: string;
|
|
1200
|
+
description: string;
|
|
1201
|
+
responses: {
|
|
1202
|
+
200: {
|
|
1203
|
+
description: string;
|
|
1204
|
+
content: {
|
|
1205
|
+
"application/json": {
|
|
1206
|
+
schema: {
|
|
1207
|
+
type: "object";
|
|
1208
|
+
properties: {
|
|
1209
|
+
status: {
|
|
1210
|
+
type: string;
|
|
1211
|
+
};
|
|
1212
|
+
};
|
|
1213
|
+
};
|
|
1214
|
+
};
|
|
1215
|
+
};
|
|
1216
|
+
};
|
|
1217
|
+
};
|
|
1218
|
+
};
|
|
1219
|
+
};
|
|
1196
1220
|
} & {
|
|
1197
1221
|
use: any[];
|
|
1198
1222
|
};
|
|
@@ -1202,10 +1226,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1202
1226
|
<C extends [{
|
|
1203
1227
|
body: {
|
|
1204
1228
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1205
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1229
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1206
1230
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1207
1231
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1208
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1232
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1209
1233
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1210
1234
|
})[key][number]>; };
|
|
1211
1235
|
userId?: string;
|
|
@@ -1293,10 +1317,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1293
1317
|
$Infer: {
|
|
1294
1318
|
body: {
|
|
1295
1319
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1296
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1320
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1297
1321
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1298
1322
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1299
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1323
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1300
1324
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1301
1325
|
})[key][number]>; };
|
|
1302
1326
|
userId?: string;
|
|
@@ -1322,6 +1346,7 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1322
1346
|
readonly YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS: "You are not allowed to impersonate users";
|
|
1323
1347
|
readonly YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS: "You are not allowed to revoke users sessions";
|
|
1324
1348
|
readonly YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users";
|
|
1349
|
+
readonly YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD: "You are not allowed to set users password";
|
|
1325
1350
|
};
|
|
1326
1351
|
schema: {
|
|
1327
1352
|
user: {
|
|
@@ -1193,6 +1193,30 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1193
1193
|
[key: string]: Role;
|
|
1194
1194
|
};
|
|
1195
1195
|
}>)[];
|
|
1196
|
+
metadata: {
|
|
1197
|
+
openapi: {
|
|
1198
|
+
operationId: string;
|
|
1199
|
+
summary: string;
|
|
1200
|
+
description: string;
|
|
1201
|
+
responses: {
|
|
1202
|
+
200: {
|
|
1203
|
+
description: string;
|
|
1204
|
+
content: {
|
|
1205
|
+
"application/json": {
|
|
1206
|
+
schema: {
|
|
1207
|
+
type: "object";
|
|
1208
|
+
properties: {
|
|
1209
|
+
status: {
|
|
1210
|
+
type: string;
|
|
1211
|
+
};
|
|
1212
|
+
};
|
|
1213
|
+
};
|
|
1214
|
+
};
|
|
1215
|
+
};
|
|
1216
|
+
};
|
|
1217
|
+
};
|
|
1218
|
+
};
|
|
1219
|
+
};
|
|
1196
1220
|
} & {
|
|
1197
1221
|
use: any[];
|
|
1198
1222
|
};
|
|
@@ -1202,10 +1226,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1202
1226
|
<C extends [{
|
|
1203
1227
|
body: {
|
|
1204
1228
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1205
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1229
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1206
1230
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1207
1231
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1208
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1232
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1209
1233
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1210
1234
|
})[key][number]>; };
|
|
1211
1235
|
userId?: string;
|
|
@@ -1293,10 +1317,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1293
1317
|
$Infer: {
|
|
1294
1318
|
body: {
|
|
1295
1319
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1296
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1320
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1297
1321
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1298
1322
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1299
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1323
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1300
1324
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1301
1325
|
})[key][number]>; };
|
|
1302
1326
|
userId?: string;
|
|
@@ -1322,6 +1346,7 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1322
1346
|
readonly YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS: "You are not allowed to impersonate users";
|
|
1323
1347
|
readonly YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS: "You are not allowed to revoke users sessions";
|
|
1324
1348
|
readonly YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users";
|
|
1349
|
+
readonly YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD: "You are not allowed to set users password";
|
|
1325
1350
|
};
|
|
1326
1351
|
schema: {
|
|
1327
1352
|
user: {
|
|
@@ -1193,6 +1193,30 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1193
1193
|
[key: string]: Role;
|
|
1194
1194
|
};
|
|
1195
1195
|
}>)[];
|
|
1196
|
+
metadata: {
|
|
1197
|
+
openapi: {
|
|
1198
|
+
operationId: string;
|
|
1199
|
+
summary: string;
|
|
1200
|
+
description: string;
|
|
1201
|
+
responses: {
|
|
1202
|
+
200: {
|
|
1203
|
+
description: string;
|
|
1204
|
+
content: {
|
|
1205
|
+
"application/json": {
|
|
1206
|
+
schema: {
|
|
1207
|
+
type: "object";
|
|
1208
|
+
properties: {
|
|
1209
|
+
status: {
|
|
1210
|
+
type: string;
|
|
1211
|
+
};
|
|
1212
|
+
};
|
|
1213
|
+
};
|
|
1214
|
+
};
|
|
1215
|
+
};
|
|
1216
|
+
};
|
|
1217
|
+
};
|
|
1218
|
+
};
|
|
1219
|
+
};
|
|
1196
1220
|
} & {
|
|
1197
1221
|
use: any[];
|
|
1198
1222
|
};
|
|
@@ -1202,10 +1226,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1202
1226
|
<C extends [{
|
|
1203
1227
|
body: {
|
|
1204
1228
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1205
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1229
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1206
1230
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1207
1231
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1208
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1232
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1209
1233
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1210
1234
|
})[key][number]>; };
|
|
1211
1235
|
userId?: string;
|
|
@@ -1293,10 +1317,10 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1293
1317
|
$Infer: {
|
|
1294
1318
|
body: {
|
|
1295
1319
|
permission: { [key in keyof (O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1296
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1320
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1297
1321
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1298
1322
|
})]?: Array<(O["ac"] extends AccessControl<infer S extends Statements> ? S : {
|
|
1299
|
-
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete"];
|
|
1323
|
+
readonly user: readonly ["create", "list", "set-role", "ban", "impersonate", "delete", "set-password"];
|
|
1300
1324
|
readonly session: readonly ["list", "revoke", "delete"];
|
|
1301
1325
|
})[key][number]>; };
|
|
1302
1326
|
userId?: string;
|
|
@@ -1322,6 +1346,7 @@ declare const admin: <O extends AdminOptions>(options?: O) => {
|
|
|
1322
1346
|
readonly YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS: "You are not allowed to impersonate users";
|
|
1323
1347
|
readonly YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS: "You are not allowed to revoke users sessions";
|
|
1324
1348
|
readonly YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users";
|
|
1349
|
+
readonly YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD: "You are not allowed to set users password";
|
|
1325
1350
|
};
|
|
1326
1351
|
schema: {
|
|
1327
1352
|
user: {
|
package/dist/plugins/index.cjs
CHANGED
|
@@ -8,7 +8,7 @@ const account = require('../shared/better-auth.BzKRBwSF.cjs');
|
|
|
8
8
|
const plugins_magicLink_index = require('./magic-link/index.cjs');
|
|
9
9
|
const plugins_phoneNumber_index = require('./phone-number/index.cjs');
|
|
10
10
|
const plugins_anonymous_index = require('./anonymous/index.cjs');
|
|
11
|
-
const admin = require('../shared/better-auth.
|
|
11
|
+
const admin = require('../shared/better-auth.CuAZQpGO.cjs');
|
|
12
12
|
const plugins_genericOauth_index = require('./generic-oauth/index.cjs');
|
|
13
13
|
const plugins_jwt_index = require('./jwt/index.cjs');
|
|
14
14
|
const plugins_multiSession_index = require('./multi-session/index.cjs');
|
package/dist/plugins/index.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export { H as HIDE_METADATA, N as optionsMiddleware } from '../shared/better-aut
|
|
|
7
7
|
export { magicLink } from './magic-link/index.mjs';
|
|
8
8
|
export { phoneNumber } from './phone-number/index.mjs';
|
|
9
9
|
export { anonymous } from './anonymous/index.mjs';
|
|
10
|
-
export { a as admin } from '../shared/better-auth.
|
|
10
|
+
export { a as admin } from '../shared/better-auth.B3YXOPWc.mjs';
|
|
11
11
|
export { genericOAuth } from './generic-oauth/index.mjs';
|
|
12
12
|
export { getJwtToken, jwt } from './jwt/index.mjs';
|
|
13
13
|
export { multiSession } from './multi-session/index.mjs';
|
|
@@ -22,7 +22,8 @@ const ADMIN_ERROR_CODES = {
|
|
|
22
22
|
YOU_ARE_NOT_ALLOWED_TO_BAN_USERS: "You are not allowed to ban users",
|
|
23
23
|
YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS: "You are not allowed to impersonate users",
|
|
24
24
|
YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS: "You are not allowed to revoke users sessions",
|
|
25
|
-
YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users"
|
|
25
|
+
YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users",
|
|
26
|
+
YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD: "You are not allowed to set users password"
|
|
26
27
|
};
|
|
27
28
|
|
|
28
29
|
const hasPermission = (input) => {
|
|
@@ -925,12 +926,53 @@ const admin = (options) => {
|
|
|
925
926
|
{
|
|
926
927
|
method: "POST",
|
|
927
928
|
body: z.object({
|
|
928
|
-
newPassword: z.string(
|
|
929
|
-
|
|
929
|
+
newPassword: z.string({
|
|
930
|
+
description: "The new password"
|
|
931
|
+
}),
|
|
932
|
+
userId: z.string({
|
|
933
|
+
description: "The user id"
|
|
934
|
+
})
|
|
930
935
|
}),
|
|
931
|
-
use: [adminMiddleware]
|
|
936
|
+
use: [adminMiddleware],
|
|
937
|
+
metadata: {
|
|
938
|
+
openapi: {
|
|
939
|
+
operationId: "setUserPassword",
|
|
940
|
+
summary: "Set a user's password",
|
|
941
|
+
description: "Set a user's password",
|
|
942
|
+
responses: {
|
|
943
|
+
200: {
|
|
944
|
+
description: "Password set",
|
|
945
|
+
content: {
|
|
946
|
+
"application/json": {
|
|
947
|
+
schema: {
|
|
948
|
+
type: "object",
|
|
949
|
+
properties: {
|
|
950
|
+
status: {
|
|
951
|
+
type: "boolean"
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
}
|
|
932
961
|
},
|
|
933
962
|
async (ctx) => {
|
|
963
|
+
const canSetUserPassword = hasPermission({
|
|
964
|
+
userId: ctx.context.session.user.id,
|
|
965
|
+
role: ctx.context.session.user.role,
|
|
966
|
+
options: ctx.context.adminOptions,
|
|
967
|
+
permission: {
|
|
968
|
+
user: ["set-password"]
|
|
969
|
+
}
|
|
970
|
+
});
|
|
971
|
+
if (!canSetUserPassword) {
|
|
972
|
+
throw new APIError("FORBIDDEN", {
|
|
973
|
+
message: ADMIN_ERROR_CODES.YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD
|
|
974
|
+
});
|
|
975
|
+
}
|
|
934
976
|
const hashedPassword = await ctx.context.password.hash(
|
|
935
977
|
ctx.body.newPassword
|
|
936
978
|
);
|
|
@@ -24,7 +24,8 @@ const ADMIN_ERROR_CODES = {
|
|
|
24
24
|
YOU_ARE_NOT_ALLOWED_TO_BAN_USERS: "You are not allowed to ban users",
|
|
25
25
|
YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS: "You are not allowed to impersonate users",
|
|
26
26
|
YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS: "You are not allowed to revoke users sessions",
|
|
27
|
-
YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users"
|
|
27
|
+
YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS: "You are not allowed to delete users",
|
|
28
|
+
YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD: "You are not allowed to set users password"
|
|
28
29
|
};
|
|
29
30
|
|
|
30
31
|
const hasPermission = (input) => {
|
|
@@ -927,12 +928,53 @@ const admin = (options) => {
|
|
|
927
928
|
{
|
|
928
929
|
method: "POST",
|
|
929
930
|
body: zod.z.object({
|
|
930
|
-
newPassword: zod.z.string(
|
|
931
|
-
|
|
931
|
+
newPassword: zod.z.string({
|
|
932
|
+
description: "The new password"
|
|
933
|
+
}),
|
|
934
|
+
userId: zod.z.string({
|
|
935
|
+
description: "The user id"
|
|
936
|
+
})
|
|
932
937
|
}),
|
|
933
|
-
use: [call.adminMiddleware]
|
|
938
|
+
use: [call.adminMiddleware],
|
|
939
|
+
metadata: {
|
|
940
|
+
openapi: {
|
|
941
|
+
operationId: "setUserPassword",
|
|
942
|
+
summary: "Set a user's password",
|
|
943
|
+
description: "Set a user's password",
|
|
944
|
+
responses: {
|
|
945
|
+
200: {
|
|
946
|
+
description: "Password set",
|
|
947
|
+
content: {
|
|
948
|
+
"application/json": {
|
|
949
|
+
schema: {
|
|
950
|
+
type: "object",
|
|
951
|
+
properties: {
|
|
952
|
+
status: {
|
|
953
|
+
type: "boolean"
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
}
|
|
961
|
+
}
|
|
962
|
+
}
|
|
934
963
|
},
|
|
935
964
|
async (ctx) => {
|
|
965
|
+
const canSetUserPassword = hasPermission({
|
|
966
|
+
userId: ctx.context.session.user.id,
|
|
967
|
+
role: ctx.context.session.user.role,
|
|
968
|
+
options: ctx.context.adminOptions,
|
|
969
|
+
permission: {
|
|
970
|
+
user: ["set-password"]
|
|
971
|
+
}
|
|
972
|
+
});
|
|
973
|
+
if (!canSetUserPassword) {
|
|
974
|
+
throw new betterCall.APIError("FORBIDDEN", {
|
|
975
|
+
message: ADMIN_ERROR_CODES.YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD
|
|
976
|
+
});
|
|
977
|
+
}
|
|
936
978
|
const hashedPassword = await ctx.context.password.hash(
|
|
937
979
|
ctx.body.newPassword
|
|
938
980
|
);
|