@paroicms/server 1.109.6 → 1.110.1
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/ddl/main.ddl.sql +51 -10
- package/dist/admin-backend/account/account-role.queries.d.ts +3 -0
- package/dist/admin-backend/account/account-role.queries.js +18 -0
- package/dist/admin-backend/account/account-role.queries.js.map +1 -0
- package/dist/admin-backend/account/account-role.resolver.d.ts +3 -0
- package/dist/admin-backend/account/account-role.resolver.js +49 -0
- package/dist/admin-backend/account/account-role.resolver.js.map +1 -0
- package/dist/admin-backend/account/account.queries.d.ts +11 -2
- package/dist/admin-backend/account/account.queries.js +114 -25
- package/dist/admin-backend/account/account.queries.js.map +1 -1
- package/dist/admin-backend/account/account.resolver.js +126 -10
- package/dist/admin-backend/account/account.resolver.js.map +1 -1
- package/dist/admin-backend/account/author-account.queries.d.ts +12 -0
- package/dist/admin-backend/account/author-account.queries.js +110 -0
- package/dist/admin-backend/account/author-account.queries.js.map +1 -0
- package/dist/admin-backend/account/author-account.resolver.d.ts +3 -0
- package/dist/admin-backend/account/author-account.resolver.js +39 -0
- package/dist/admin-backend/account/author-account.resolver.js.map +1 -0
- package/dist/admin-backend/auth/auth.helper.d.ts +2 -0
- package/dist/admin-backend/auth/auth.helper.js +10 -2
- package/dist/admin-backend/auth/auth.helper.js.map +1 -1
- package/dist/admin-backend/auth/auth.service.d.ts +1 -1
- package/dist/admin-backend/auth/auth.service.js +145 -65
- package/dist/admin-backend/auth/auth.service.js.map +1 -1
- package/dist/admin-backend/auth/auth.types.d.ts +3 -1
- package/dist/admin-backend/auth/authorization.helper.d.ts +11 -0
- package/dist/admin-backend/auth/authorization.helper.js +37 -0
- package/dist/admin-backend/auth/authorization.helper.js.map +1 -0
- package/dist/admin-backend/auth/special-account.helper.d.ts +10 -0
- package/dist/admin-backend/auth/special-account.helper.js +38 -0
- package/dist/admin-backend/auth/special-account.helper.js.map +1 -0
- package/dist/admin-backend/backup/backup.resolver.js +2 -2
- package/dist/admin-backend/backup/backup.resolver.js.map +1 -1
- package/dist/admin-backend/document/document.resolver.extend.js +1 -3
- package/dist/admin-backend/document/document.resolver.extend.js.map +1 -1
- package/dist/admin-backend/document/document.resolver.js +95 -13
- package/dist/admin-backend/document/document.resolver.js.map +1 -1
- package/dist/admin-backend/event-log/event-log.queries.d.ts +24 -0
- package/dist/admin-backend/event-log/event-log.queries.js +84 -0
- package/dist/admin-backend/event-log/event-log.queries.js.map +1 -0
- package/dist/admin-backend/event-log/event-log.resolver.d.ts +3 -0
- package/dist/admin-backend/event-log/event-log.resolver.js +21 -0
- package/dist/admin-backend/event-log/event-log.resolver.js.map +1 -0
- package/dist/admin-backend/event-log/event-log.service.d.ts +11 -0
- package/dist/admin-backend/event-log/event-log.service.js +290 -0
- package/dist/admin-backend/event-log/event-log.service.js.map +1 -0
- package/dist/admin-backend/event-log/event-log.types.d.ts +142 -0
- package/dist/admin-backend/event-log/event-log.types.js +2 -0
- package/dist/admin-backend/event-log/event-log.types.js.map +1 -0
- package/dist/admin-backend/fields/fields.resolver.js +3 -2
- package/dist/admin-backend/fields/fields.resolver.js.map +1 -1
- package/dist/admin-backend/lnode/lnode-wrap.resolver.js +6 -6
- package/dist/admin-backend/lnode/lnode-wrap.resolver.js.map +1 -1
- package/dist/admin-backend/login/login.controller.js +32 -3
- package/dist/admin-backend/login/login.controller.js.map +1 -1
- package/dist/admin-backend/media/media-upload.controller.js +15 -0
- package/dist/admin-backend/media/media-upload.controller.js.map +1 -1
- package/dist/admin-backend/media/media.resolver.extend.js +1 -3
- package/dist/admin-backend/media/media.resolver.extend.js.map +1 -1
- package/dist/admin-backend/media/media.resolver.js +70 -11
- package/dist/admin-backend/media/media.resolver.js.map +1 -1
- package/dist/admin-backend/migration/migration.resolver.js +3 -3
- package/dist/admin-backend/migration/migration.resolver.js.map +1 -1
- package/dist/admin-backend/node/node.resolver.extend.js +1 -3
- package/dist/admin-backend/node/node.resolver.extend.js.map +1 -1
- package/dist/admin-backend/node/node.resolver.js +6 -5
- package/dist/admin-backend/node/node.resolver.js.map +1 -1
- package/dist/admin-backend/part/part.resolver.extend.js +2 -5
- package/dist/admin-backend/part/part.resolver.extend.js.map +1 -1
- package/dist/admin-backend/part/part.resolver.js +56 -10
- package/dist/admin-backend/part/part.resolver.js.map +1 -1
- package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js +7 -7
- package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js.map +1 -1
- package/dist/common/data-format.d.ts +5 -1
- package/dist/common/data-format.js +3 -1
- package/dist/common/data-format.js.map +1 -1
- package/dist/connector/app-conf/app-conf-formatter.js +4 -1
- package/dist/connector/app-conf/app-conf-formatter.js.map +1 -1
- package/dist/connector/app-conf/app-conf.types.d.ts +3 -3
- package/dist/connector/db-init/db-constants.d.ts +1 -1
- package/dist/connector/db-init/db-constants.js +1 -1
- package/dist/connector/db-init/ddl-migration.js +60 -0
- package/dist/connector/db-init/ddl-migration.js.map +1 -1
- package/dist/connector/row-types.d.ts +5 -3
- package/dist/connector/site-schema/site-schema-factory.js +76 -0
- package/dist/connector/site-schema/site-schema-factory.js.map +1 -1
- package/dist/graphql/apollo-server-init.js +6 -0
- package/dist/graphql/apollo-server-init.js.map +1 -1
- package/dist/maintenance/maintenance-task.d.ts +1 -1
- package/dist/maintenance/maintenance-task.js +5 -0
- package/dist/maintenance/maintenance-task.js.map +1 -1
- package/dist/protected-site/protected-access-token.d.ts +3 -3
- package/dist/protected-site/protected-access-token.js +3 -3
- package/dist/protected-site/protected-access-token.js.map +1 -1
- package/dist/protected-site/protected-site.req-handler.js +4 -4
- package/dist/protected-site/protected-site.req-handler.js.map +1 -1
- package/dist/public-api/password-reset/password-reset.service.js +9 -6
- package/dist/public-api/password-reset/password-reset.service.js.map +1 -1
- package/dist/rendered-site/feed/feed-generator.js +2 -2
- package/dist/rendered-site/feed/feed-generator.js.map +1 -1
- package/dist/site-context/load-site-context.js +1 -3
- package/dist/site-context/load-site-context.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +28 -28
- package/schema.graphql +43 -0
- package/dist/helpers/special-account.helpers.d.ts +0 -9
- package/dist/helpers/special-account.helpers.js +0 -36
- package/dist/helpers/special-account.helpers.js.map +0 -1
package/ddl/main.ddl.sql
CHANGED
|
@@ -8,16 +8,7 @@ create table PaMetadata (
|
|
|
8
8
|
primary key (dbSchema, k)
|
|
9
9
|
);
|
|
10
10
|
|
|
11
|
-
insert into PaMetadata (dbSchema, k, val) values ('main', 'dbSchemaVersion', '
|
|
12
|
-
|
|
13
|
-
create table PaAccount (
|
|
14
|
-
id integer not null primary key autoincrement,
|
|
15
|
-
email varchar(200) not null unique,
|
|
16
|
-
name varchar(200),
|
|
17
|
-
preferences text,
|
|
18
|
-
passwordHash varchar(200),
|
|
19
|
-
passwordResetToken varchar(200)
|
|
20
|
-
);
|
|
11
|
+
insert into PaMetadata (dbSchema, k, val) values ('main', 'dbSchemaVersion', '26');
|
|
21
12
|
|
|
22
13
|
create table PaNode (
|
|
23
14
|
id integer not null primary key autoincrement,
|
|
@@ -29,6 +20,8 @@ create table PaNode (
|
|
|
29
20
|
);
|
|
30
21
|
|
|
31
22
|
create index PaNode_typeName_idx on PaNode (typeName);
|
|
23
|
+
create index PaNode_parentId_idx on PaNode (parentId);
|
|
24
|
+
create index PaNode_publishDate_idx on PaNode (publishDate);
|
|
32
25
|
|
|
33
26
|
create table PaOrderedNode (
|
|
34
27
|
nodeId integer not null primary key references PaNode (id) on delete cascade,
|
|
@@ -42,6 +35,7 @@ create table PaPartNode (
|
|
|
42
35
|
);
|
|
43
36
|
|
|
44
37
|
create index PaPartNode_listName_idx on PaPartNode (listName);
|
|
38
|
+
create index PaPartNode_documentNodeId_idx on PaPartNode (documentNodeId);
|
|
45
39
|
|
|
46
40
|
create table PaLNode (
|
|
47
41
|
nodeId integer not null references PaNode (id),
|
|
@@ -70,6 +64,9 @@ create table PaFieldLabeling (
|
|
|
70
64
|
primary key (field, nodeId, termId)
|
|
71
65
|
);
|
|
72
66
|
|
|
67
|
+
create index PaFieldLabeling_nodeId_idx on PaFieldLabeling (nodeId);
|
|
68
|
+
create index PaFieldLabeling_termId_idx on PaFieldLabeling (termId);
|
|
69
|
+
|
|
73
70
|
create table PaFieldVarchar (
|
|
74
71
|
field varchar(100) not null,
|
|
75
72
|
nodeId integer not null references PaNode (id) on delete cascade,
|
|
@@ -81,6 +78,8 @@ create table PaFieldVarchar (
|
|
|
81
78
|
primary key (field, nodeId, language)
|
|
82
79
|
);
|
|
83
80
|
|
|
81
|
+
create index PaFieldVarchar_nodeId_idx on PaFieldVarchar (nodeId);
|
|
82
|
+
|
|
84
83
|
create table PaFieldText (
|
|
85
84
|
field varchar(100) not null,
|
|
86
85
|
nodeId integer not null references PaNode (id) on delete cascade,
|
|
@@ -93,6 +92,48 @@ create table PaFieldText (
|
|
|
93
92
|
primary key (field, nodeId, language)
|
|
94
93
|
);
|
|
95
94
|
|
|
95
|
+
create index PaFieldText_nodeId_idx on PaFieldText (nodeId);
|
|
96
|
+
|
|
96
97
|
create index PaFieldVarchar_plugin_idx on PaFieldVarchar (plugin);
|
|
97
98
|
create index PaFieldText_plugin_idx on PaFieldText (plugin);
|
|
98
99
|
create index PaFieldLabeling_plugin_idx on PaFieldLabeling (plugin);
|
|
100
|
+
|
|
101
|
+
create table PaAccount (
|
|
102
|
+
id integer not null primary key autoincrement,
|
|
103
|
+
email varchar(200) not null unique,
|
|
104
|
+
name varchar(200),
|
|
105
|
+
preferences text,
|
|
106
|
+
passwordHash varchar(200),
|
|
107
|
+
passwordResetToken varchar(200),
|
|
108
|
+
loginMethod varchar(50),
|
|
109
|
+
active tinyint(1) not null default 1
|
|
110
|
+
);
|
|
111
|
+
|
|
112
|
+
create table PaAccountRole (
|
|
113
|
+
accountId integer not null references PaAccount (id) on delete cascade,
|
|
114
|
+
role varchar(100) not null,
|
|
115
|
+
primary key (accountId, role)
|
|
116
|
+
);
|
|
117
|
+
|
|
118
|
+
create table PaAuthorAccount (
|
|
119
|
+
authorNodeId integer not null references PaNode (id) on delete cascade,
|
|
120
|
+
accountId integer not null references PaAccount (id) on delete cascade,
|
|
121
|
+
primary key (authorNodeId, accountId)
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
create index PaAuthorAccount_accountId_idx on PaAuthorAccount (accountId);
|
|
125
|
+
|
|
126
|
+
create table PaEventLog (
|
|
127
|
+
id integer not null primary key autoincrement,
|
|
128
|
+
eventType varchar(100) not null,
|
|
129
|
+
actorId integer references PaAccount (id),
|
|
130
|
+
targetType varchar(50) not null,
|
|
131
|
+
targetId varchar(100) not null,
|
|
132
|
+
eventData text,
|
|
133
|
+
createdAt timestamp not null default current_timestamp
|
|
134
|
+
);
|
|
135
|
+
|
|
136
|
+
create index PaEventLog_eventType_idx on PaEventLog (eventType);
|
|
137
|
+
create index PaEventLog_actorId_idx on PaEventLog (actorId);
|
|
138
|
+
create index PaEventLog_targetType_targetId_idx on PaEventLog (targetType, targetId);
|
|
139
|
+
create index PaEventLog_createdAt_idx on PaEventLog (createdAt);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { SiteContext } from "../../site-context/site-context.types.js";
|
|
2
|
+
export declare function getAccountRoles(siteContext: Pick<SiteContext, "cn">, accountId: string): Promise<string[]>;
|
|
3
|
+
export declare function updateAccountRoles(siteContext: Pick<SiteContext, "cn">, accountId: string, roles: string[]): Promise<void>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type } from "arktype";
|
|
2
|
+
const RoleRowAT = type({
|
|
3
|
+
role: "string",
|
|
4
|
+
"+": "reject",
|
|
5
|
+
});
|
|
6
|
+
export async function getAccountRoles(siteContext, accountId) {
|
|
7
|
+
const rows = await siteContext.cn("PaAccountRole").select("role").where("accountId", accountId);
|
|
8
|
+
return rows.map((row) => RoleRowAT.assert(row).role);
|
|
9
|
+
}
|
|
10
|
+
export async function updateAccountRoles(siteContext, accountId, roles) {
|
|
11
|
+
await siteContext.cn.transaction(async (tx) => {
|
|
12
|
+
await tx("PaAccountRole").where("accountId", accountId).delete();
|
|
13
|
+
if (roles.length > 0) {
|
|
14
|
+
await tx("PaAccountRole").insert(roles.map((role) => ({ accountId, role })));
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=account-role.queries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-role.queries.js","sourceRoot":"","sources":["../../../src/admin-backend/account/account-role.queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAG/B,MAAM,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,QAAQ;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAoC,EACpC,SAAiB;IAEjB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAEhG,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAoC,EACpC,SAAiB,EACjB,KAAe;IAEf,MAAM,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC5C,MAAM,EAAE,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;QAEjE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ApiError } from "@paroicms/public-server-lib";
|
|
2
|
+
import { siteReadyGuard } from "../../graphql/graphql.types.js";
|
|
3
|
+
import { permissionGuard } from "../auth/authorization.helper.js";
|
|
4
|
+
import { loadAccountRoles } from "../auth/special-account.helper.js";
|
|
5
|
+
import { recordEvent } from "../event-log/event-log.service.js";
|
|
6
|
+
import { updateAccountRoles } from "./account-role.queries.js";
|
|
7
|
+
import { getAccount } from "./account.queries.js";
|
|
8
|
+
export const accountRoleResolvers = {
|
|
9
|
+
Query: {
|
|
10
|
+
accountRoles: async (_parent, { accountId }, { siteContext, httpContext }) => {
|
|
11
|
+
siteReadyGuard(siteContext);
|
|
12
|
+
await permissionGuard(siteContext, httpContext, "site.manageUsers");
|
|
13
|
+
const account = await getAccount(siteContext, accountId);
|
|
14
|
+
return await loadAccountRoles(siteContext, account);
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
Mutation: {
|
|
18
|
+
updateAccountRoles: async (_parent, { accountId, roles }, { siteContext, httpContext }) => {
|
|
19
|
+
siteReadyGuard(siteContext);
|
|
20
|
+
const authorizedAccount = await permissionGuard(siteContext, httpContext, "site.manageUsers");
|
|
21
|
+
if (accountId === authorizedAccount.accountId) {
|
|
22
|
+
const currentRoles = await loadAccountRoles(siteContext, authorizedAccount);
|
|
23
|
+
if (currentRoles.includes("admin") && !roles.includes("admin")) {
|
|
24
|
+
throw new ApiError("Cannot remove your own admin role", 403);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
await updateAccountRoles(siteContext, accountId, roles);
|
|
28
|
+
const account = await getAccount(siteContext, accountId);
|
|
29
|
+
recordEvent(siteContext, {
|
|
30
|
+
eventType: "account.update",
|
|
31
|
+
actorId: authorizedAccount.accountId,
|
|
32
|
+
targetType: "account",
|
|
33
|
+
targetId: accountId,
|
|
34
|
+
eventData: {
|
|
35
|
+
accountId,
|
|
36
|
+
email: account.email,
|
|
37
|
+
changedFields: ["roles"],
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
return account;
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
Account: {
|
|
44
|
+
roles: async (parent, _args, { siteContext }) => {
|
|
45
|
+
return await loadAccountRoles(siteContext, parent);
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=account-role.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-role.resolver.js","sourceRoot":"","sources":["../../../src/admin-backend/account/account-role.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAuB,MAAM,gCAAgC,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,oBAAoB,GAAiC;IAChE,KAAK,EAAE;QACL,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;YAC3E,cAAc,CAAC,WAAW,CAAC,CAAC;YAC5B,MAAM,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YACzD,OAAO,MAAM,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;KACF;IAED,QAAQ,EAAE;QACR,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;YACxF,cAAc,CAAC,WAAW,CAAC,CAAC;YAC5B,MAAM,iBAAiB,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;YAE9F,IAAI,SAAS,KAAK,iBAAiB,CAAC,SAAS,EAAE,CAAC;gBAC9C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;gBAC5E,IAAI,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/D,MAAM,IAAI,QAAQ,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,MAAM,kBAAkB,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAExD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAEzD,WAAW,CAAC,WAAW,EAAE;gBACvB,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,iBAAiB,CAAC,SAAS;gBACpC,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE;oBACT,SAAS;oBACT,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,aAAa,EAAE,CAAC,OAAO,CAAC;iBACS;aACpC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;KACF;IAED,OAAO,EAAE;QACP,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;YAC9C,OAAO,MAAM,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;KACF;CACF,CAAC"}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
import type { LoginMethod } from "@paroicms/public-anywhere-lib";
|
|
1
2
|
import { type Account, type AuthenticatedAccount } from "../../common/data-format.js";
|
|
2
3
|
import type { AccountRow } from "../../connector/row-types.js";
|
|
3
4
|
import type { SiteContext } from "../../site-context/site-context.types.js";
|
|
4
5
|
export declare function findAccountByIdAndEmail(siteContext: Pick<SiteContext, "cn">, payload: {
|
|
5
6
|
id: string;
|
|
6
7
|
email: string;
|
|
7
|
-
}): Promise<
|
|
8
|
-
export declare function findAccountByEmail(siteContext: Pick<SiteContext, "cn">, email: string): Promise<
|
|
8
|
+
}): Promise<AccountRow>;
|
|
9
|
+
export declare function findAccountByEmail(siteContext: Pick<SiteContext, "cn">, email: string): Promise<AccountRow | undefined>;
|
|
9
10
|
export declare function getAccount(siteContext: SiteContext, id: string): Promise<Account>;
|
|
10
11
|
export declare function getAuthenticatedAccount(siteContext: SiteContext, id: string): Promise<AuthenticatedAccount>;
|
|
11
12
|
export declare function getAllAccounts(siteContext: SiteContext): Promise<Account[]>;
|
|
12
13
|
export interface AccountPreferencesInput {
|
|
13
14
|
language?: string;
|
|
15
|
+
currentAuthorNodeId?: string;
|
|
14
16
|
}
|
|
15
17
|
export declare function setAccountPreferences(siteContext: SiteContext, accountId: string, values: AccountPreferencesInput): Promise<void>;
|
|
18
|
+
export declare function updateAccountLoginMethod(siteContext: Pick<SiteContext, "cn">, accountId: string, loginMethod: LoginMethod): Promise<void>;
|
|
19
|
+
export declare function updateAccountActive(siteContext: Pick<SiteContext, "cn">, accountId: string, active: boolean): Promise<void>;
|
|
16
20
|
export interface CreateAccountInput {
|
|
17
21
|
email: string;
|
|
18
22
|
language: string;
|
|
@@ -20,6 +24,11 @@ export interface CreateAccountInput {
|
|
|
20
24
|
accountType: "local" | "google";
|
|
21
25
|
}
|
|
22
26
|
export declare function createAccount(siteContext: SiteContext, payload: CreateAccountInput): Promise<Account>;
|
|
27
|
+
export declare function insertSpecialAccount(siteContext: Pick<SiteContext, "cn">, payload: {
|
|
28
|
+
email: string;
|
|
29
|
+
name: string;
|
|
30
|
+
loginMethod: "localDev" | "platformAdmin";
|
|
31
|
+
}): Promise<string>;
|
|
23
32
|
export interface UpdateAccountInput {
|
|
24
33
|
email?: string;
|
|
25
34
|
name?: string;
|
|
@@ -3,7 +3,6 @@ import { ApiError } from "@paroicms/public-server-lib";
|
|
|
3
3
|
import { type } from "arktype";
|
|
4
4
|
import { formatAccount, formatAuthenticatedAccount, } from "../../common/data-format.js";
|
|
5
5
|
import { simpleI18n } from "../../context.js";
|
|
6
|
-
import { getDevAccount, getPlatformAdminAccount, isDevAccountId, parsePlatformAdminAccountId, } from "../../helpers/special-account.helpers.js";
|
|
7
6
|
import { executeHook } from "../../plugin-services/make-backend-plugin-service.js";
|
|
8
7
|
const AccountRowAT = type({
|
|
9
8
|
id: "number",
|
|
@@ -11,6 +10,8 @@ const AccountRowAT = type({
|
|
|
11
10
|
name: "string|null",
|
|
12
11
|
preferences: "string|null",
|
|
13
12
|
passwordResetToken: "string|null",
|
|
13
|
+
loginMethod: "string|null",
|
|
14
|
+
active: "0|1",
|
|
14
15
|
"+": "reject",
|
|
15
16
|
}).pipe((r) => ({
|
|
16
17
|
id: String(r.id),
|
|
@@ -18,26 +19,33 @@ const AccountRowAT = type({
|
|
|
18
19
|
name: r.name ?? undefined,
|
|
19
20
|
preferences: r.preferences ?? undefined,
|
|
20
21
|
passwordResetToken: r.passwordResetToken ?? undefined,
|
|
22
|
+
loginMethod: formatLoginMethod(r.loginMethod),
|
|
23
|
+
active: r.active === 1,
|
|
21
24
|
}));
|
|
22
25
|
const FindAccountByIdAndEmailRowAT = type({
|
|
23
26
|
id: "number",
|
|
24
27
|
email: "string",
|
|
25
28
|
name: "string|null",
|
|
26
29
|
preferences: "string|null",
|
|
30
|
+
loginMethod: "string|null",
|
|
31
|
+
active: "0|1",
|
|
27
32
|
"+": "reject",
|
|
28
33
|
}).pipe((r) => ({
|
|
29
34
|
id: String(r.id),
|
|
30
35
|
email: r.email,
|
|
31
36
|
name: r.name ?? undefined,
|
|
32
37
|
preferences: r.preferences ?? undefined,
|
|
38
|
+
loginMethod: formatLoginMethod(r.loginMethod),
|
|
39
|
+
active: r.active === 1,
|
|
33
40
|
}));
|
|
34
41
|
export async function findAccountByIdAndEmail(siteContext, payload) {
|
|
42
|
+
const normalizedEmail = payload.email.trim().toLowerCase();
|
|
35
43
|
const account = await siteContext
|
|
36
44
|
.cn("PaAccount as a")
|
|
37
|
-
.select("a.id", "a.email", "a.name", "a.preferences")
|
|
45
|
+
.select("a.id", "a.email", "a.name", "a.preferences", "a.loginMethod", "a.active")
|
|
38
46
|
.where({
|
|
39
47
|
"a.id": payload.id,
|
|
40
|
-
"a.email":
|
|
48
|
+
"a.email": normalizedEmail,
|
|
41
49
|
})
|
|
42
50
|
.first();
|
|
43
51
|
if (!account)
|
|
@@ -50,6 +58,8 @@ const FindAccountByEmailRowAT = type({
|
|
|
50
58
|
name: "string|null",
|
|
51
59
|
preferences: "string|null",
|
|
52
60
|
passwordHash: "string|null",
|
|
61
|
+
loginMethod: "string|null",
|
|
62
|
+
active: "0|1",
|
|
53
63
|
"+": "reject",
|
|
54
64
|
}).pipe((r) => ({
|
|
55
65
|
id: String(r.id),
|
|
@@ -57,12 +67,23 @@ const FindAccountByEmailRowAT = type({
|
|
|
57
67
|
name: r.name ?? undefined,
|
|
58
68
|
preferences: r.preferences ?? undefined,
|
|
59
69
|
passwordHash: r.passwordHash ?? undefined,
|
|
70
|
+
loginMethod: formatLoginMethod(r.loginMethod),
|
|
71
|
+
active: r.active === 1,
|
|
60
72
|
}));
|
|
61
73
|
export async function findAccountByEmail(siteContext, email) {
|
|
74
|
+
const normalizedEmail = email.trim().toLowerCase();
|
|
62
75
|
const account = await siteContext
|
|
63
76
|
.cn("PaAccount as a")
|
|
64
|
-
.select([
|
|
65
|
-
|
|
77
|
+
.select([
|
|
78
|
+
"a.id",
|
|
79
|
+
"a.email",
|
|
80
|
+
"a.name",
|
|
81
|
+
"a.preferences",
|
|
82
|
+
"a.passwordHash",
|
|
83
|
+
"a.loginMethod",
|
|
84
|
+
"a.active",
|
|
85
|
+
])
|
|
86
|
+
.where("a.email", normalizedEmail)
|
|
66
87
|
.first();
|
|
67
88
|
if (!account)
|
|
68
89
|
return;
|
|
@@ -73,23 +94,21 @@ const GetAccountRowAT = type({
|
|
|
73
94
|
email: "string",
|
|
74
95
|
name: "string|null",
|
|
75
96
|
passwordResetToken: "string|null",
|
|
97
|
+
loginMethod: "string|null",
|
|
98
|
+
active: "0|1",
|
|
76
99
|
"+": "reject",
|
|
77
100
|
}).pipe((r) => ({
|
|
78
101
|
id: String(r.id),
|
|
79
102
|
email: r.email,
|
|
80
103
|
name: r.name ?? undefined,
|
|
81
104
|
passwordResetToken: r.passwordResetToken ?? undefined,
|
|
105
|
+
loginMethod: formatLoginMethod(r.loginMethod),
|
|
106
|
+
active: r.active === 1,
|
|
82
107
|
}));
|
|
83
108
|
export async function getAccount(siteContext, id) {
|
|
84
|
-
if (isDevAccountId(id))
|
|
85
|
-
return formatAccount(getDevAccount(id));
|
|
86
|
-
const parsedPlatformAccountId = parsePlatformAdminAccountId(id);
|
|
87
|
-
if (parsedPlatformAccountId) {
|
|
88
|
-
return formatAccount(getPlatformAdminAccount(parsedPlatformAccountId));
|
|
89
|
-
}
|
|
90
109
|
const found = await siteContext
|
|
91
110
|
.cn("PaAccount as a")
|
|
92
|
-
.select(["a.id", "a.email", "a.name", "a.passwordResetToken"])
|
|
111
|
+
.select(["a.id", "a.email", "a.name", "a.passwordResetToken", "a.loginMethod", "a.active"])
|
|
93
112
|
.where("a.id", id)
|
|
94
113
|
.first();
|
|
95
114
|
if (!found)
|
|
@@ -98,15 +117,17 @@ export async function getAccount(siteContext, id) {
|
|
|
98
117
|
return formatAccount(account);
|
|
99
118
|
}
|
|
100
119
|
export async function getAuthenticatedAccount(siteContext, id) {
|
|
101
|
-
if (isDevAccountId(id))
|
|
102
|
-
return formatAuthenticatedAccount(getDevAccount(id));
|
|
103
|
-
const parsedPlatformAccountId = parsePlatformAdminAccountId(id);
|
|
104
|
-
if (parsedPlatformAccountId) {
|
|
105
|
-
return formatAuthenticatedAccount(getPlatformAdminAccount(parsedPlatformAccountId));
|
|
106
|
-
}
|
|
107
120
|
const found = await siteContext
|
|
108
121
|
.cn("PaAccount as a")
|
|
109
|
-
.select([
|
|
122
|
+
.select([
|
|
123
|
+
"a.id",
|
|
124
|
+
"a.email",
|
|
125
|
+
"a.name",
|
|
126
|
+
"a.preferences",
|
|
127
|
+
"a.passwordResetToken",
|
|
128
|
+
"a.loginMethod",
|
|
129
|
+
"a.active",
|
|
130
|
+
])
|
|
110
131
|
.where("a.id", id)
|
|
111
132
|
.first();
|
|
112
133
|
if (!found)
|
|
@@ -117,7 +138,15 @@ export async function getAuthenticatedAccount(siteContext, id) {
|
|
|
117
138
|
export async function getAllAccounts(siteContext) {
|
|
118
139
|
const accounts = await siteContext
|
|
119
140
|
.cn("PaAccount as a")
|
|
120
|
-
.select([
|
|
141
|
+
.select([
|
|
142
|
+
"a.id",
|
|
143
|
+
"a.email",
|
|
144
|
+
"a.name",
|
|
145
|
+
"a.preferences",
|
|
146
|
+
"a.passwordResetToken",
|
|
147
|
+
"a.loginMethod",
|
|
148
|
+
"a.active",
|
|
149
|
+
]);
|
|
121
150
|
const parsedAccounts = accounts
|
|
122
151
|
.map((account) => {
|
|
123
152
|
return AccountRowAT.assert(account);
|
|
@@ -131,6 +160,15 @@ export async function setAccountPreferences(siteContext, accountId, values) {
|
|
|
131
160
|
.where({ id: accountId })
|
|
132
161
|
.update({ preferences: JSON.stringify(values) });
|
|
133
162
|
}
|
|
163
|
+
export async function updateAccountLoginMethod(siteContext, accountId, loginMethod) {
|
|
164
|
+
await siteContext.cn("PaAccount").where({ id: accountId }).update({ loginMethod });
|
|
165
|
+
}
|
|
166
|
+
export async function updateAccountActive(siteContext, accountId, active) {
|
|
167
|
+
await siteContext
|
|
168
|
+
.cn("PaAccount")
|
|
169
|
+
.where({ id: accountId })
|
|
170
|
+
.update({ active: active ? 1 : 0 });
|
|
171
|
+
}
|
|
134
172
|
const CreateAccountInsertedAT = type({
|
|
135
173
|
id: "number",
|
|
136
174
|
"+": "reject",
|
|
@@ -138,13 +176,14 @@ const CreateAccountInsertedAT = type({
|
|
|
138
176
|
id: String(r.id),
|
|
139
177
|
}));
|
|
140
178
|
export async function createAccount(siteContext, payload) {
|
|
141
|
-
const
|
|
179
|
+
const normalizedEmail = payload.email.trim().toLowerCase();
|
|
180
|
+
const account = await findAccountByEmail(siteContext, normalizedEmail);
|
|
142
181
|
if (account)
|
|
143
182
|
throw new ApiError("email already exists", 409);
|
|
144
183
|
const [inserted] = await siteContext
|
|
145
184
|
.cn("PaAccount")
|
|
146
185
|
.insert({
|
|
147
|
-
email:
|
|
186
|
+
email: normalizedEmail,
|
|
148
187
|
name: payload.name,
|
|
149
188
|
preferences: JSON.stringify({ language: payload.language }),
|
|
150
189
|
})
|
|
@@ -167,6 +206,25 @@ export async function createAccount(siteContext, payload) {
|
|
|
167
206
|
});
|
|
168
207
|
return formatAccount(newAccount);
|
|
169
208
|
}
|
|
209
|
+
export async function insertSpecialAccount(siteContext, payload) {
|
|
210
|
+
const CreateAccountInsertedAT = type({
|
|
211
|
+
id: "number",
|
|
212
|
+
"+": "reject",
|
|
213
|
+
}).pipe((r) => ({
|
|
214
|
+
id: String(r.id),
|
|
215
|
+
}));
|
|
216
|
+
const normalizedEmail = payload.email.trim().toLowerCase();
|
|
217
|
+
const [inserted] = await siteContext
|
|
218
|
+
.cn("PaAccount")
|
|
219
|
+
.insert({
|
|
220
|
+
email: normalizedEmail,
|
|
221
|
+
name: payload.name,
|
|
222
|
+
loginMethod: payload.loginMethod,
|
|
223
|
+
active: 1,
|
|
224
|
+
})
|
|
225
|
+
.returning("id");
|
|
226
|
+
return CreateAccountInsertedAT.assert(inserted).id;
|
|
227
|
+
}
|
|
170
228
|
async function createGoogleAccount(siteContext, { payload, newAccount, }) {
|
|
171
229
|
const subject = simpleI18n.translate({
|
|
172
230
|
key: "accountCreation.subject",
|
|
@@ -190,10 +248,14 @@ export async function updateAccount(siteContext, accountId, payload) {
|
|
|
190
248
|
const account = await findAccountById(siteContext, accountId);
|
|
191
249
|
if (!account)
|
|
192
250
|
throw new ApiError("Account not found", 404);
|
|
193
|
-
|
|
251
|
+
const updatePayload = {
|
|
252
|
+
...payload,
|
|
253
|
+
email: payload.email ? payload.email.trim().toLowerCase() : undefined,
|
|
254
|
+
};
|
|
255
|
+
await siteContext.cn("PaAccount").where({ id: account.id }).update(updatePayload);
|
|
194
256
|
return formatAccount({
|
|
195
257
|
...account,
|
|
196
|
-
email:
|
|
258
|
+
email: updatePayload.email ?? account.email,
|
|
197
259
|
name: payload.name ?? account.name,
|
|
198
260
|
});
|
|
199
261
|
}
|
|
@@ -201,7 +263,18 @@ export async function deleteAccount(siteContext, accountId) {
|
|
|
201
263
|
const account = await findAccountById(siteContext, accountId);
|
|
202
264
|
if (!account)
|
|
203
265
|
throw new ApiError("Account not found", 404);
|
|
204
|
-
|
|
266
|
+
const eventCount = await siteContext
|
|
267
|
+
.cn("PaEventLog")
|
|
268
|
+
.where("actorId", accountId)
|
|
269
|
+
.count("* as count")
|
|
270
|
+
.first();
|
|
271
|
+
const isReferenced = eventCount && eventCount.count > 0;
|
|
272
|
+
if (isReferenced) {
|
|
273
|
+
await updateAccountActive(siteContext, accountId, false);
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
await siteContext.cn("PaAccount").where({ id: account.id }).delete();
|
|
277
|
+
}
|
|
205
278
|
}
|
|
206
279
|
export async function resetAccountPassword(siteContext, accountId) {
|
|
207
280
|
const account = await findAccountById(siteContext, accountId);
|
|
@@ -217,6 +290,7 @@ const FindAccountByIdRowAT = type({
|
|
|
217
290
|
preferences: "string|null",
|
|
218
291
|
passwordHash: "string|null",
|
|
219
292
|
passwordResetToken: "string|null",
|
|
293
|
+
active: "0|1",
|
|
220
294
|
"+": "reject",
|
|
221
295
|
}).pipe((data) => ({
|
|
222
296
|
id: String(data.id),
|
|
@@ -225,6 +299,7 @@ const FindAccountByIdRowAT = type({
|
|
|
225
299
|
preferences: data.preferences ?? undefined,
|
|
226
300
|
passwordHash: data.passwordHash ?? undefined,
|
|
227
301
|
passwordResetToken: data.passwordResetToken ?? undefined,
|
|
302
|
+
active: data.active === 1,
|
|
228
303
|
}));
|
|
229
304
|
async function findAccountById(siteContext, id) {
|
|
230
305
|
const found = await siteContext
|
|
@@ -236,6 +311,7 @@ async function findAccountById(siteContext, id) {
|
|
|
236
311
|
"a.preferences",
|
|
237
312
|
"a.passwordHash",
|
|
238
313
|
"a.passwordResetToken",
|
|
314
|
+
"a.active",
|
|
239
315
|
])
|
|
240
316
|
.where("a.id", id)
|
|
241
317
|
.first();
|
|
@@ -271,4 +347,17 @@ function getAccountLanguage(siteContext, account) {
|
|
|
271
347
|
const preferences = account.preferences ? JSON.parse(account.preferences) : undefined;
|
|
272
348
|
return preferences?.language ?? siteContext.siteSchema.defaultLanguage;
|
|
273
349
|
}
|
|
350
|
+
function formatLoginMethod(loginMethod) {
|
|
351
|
+
if (!loginMethod)
|
|
352
|
+
return;
|
|
353
|
+
switch (loginMethod) {
|
|
354
|
+
case "local":
|
|
355
|
+
case "localDev":
|
|
356
|
+
case "platform":
|
|
357
|
+
case "platformAdmin":
|
|
358
|
+
return loginMethod;
|
|
359
|
+
default:
|
|
360
|
+
throw new Error(`Invalid login method "${loginMethod}"`);
|
|
361
|
+
}
|
|
362
|
+
}
|
|
274
363
|
//# sourceMappingURL=account.queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.queries.js","sourceRoot":"","sources":["../../../src/admin-backend/account/account.queries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"account.queries.js","sourceRoot":"","sources":["../../../src/admin-backend/account/account.queries.ts"],"names":[],"mappings":"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"}
|