@paroicms/server 1.109.5 → 1.110.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/ddl/main.ddl.sql +51 -10
  2. package/dist/admin-backend/account/account-role.queries.d.ts +3 -0
  3. package/dist/admin-backend/account/account-role.queries.js +18 -0
  4. package/dist/admin-backend/account/account-role.queries.js.map +1 -0
  5. package/dist/admin-backend/account/account-role.resolver.d.ts +3 -0
  6. package/dist/admin-backend/account/account-role.resolver.js +49 -0
  7. package/dist/admin-backend/account/account-role.resolver.js.map +1 -0
  8. package/dist/admin-backend/account/account.queries.d.ts +11 -2
  9. package/dist/admin-backend/account/account.queries.js +114 -25
  10. package/dist/admin-backend/account/account.queries.js.map +1 -1
  11. package/dist/admin-backend/account/account.resolver.js +126 -10
  12. package/dist/admin-backend/account/account.resolver.js.map +1 -1
  13. package/dist/admin-backend/account/author-account.queries.d.ts +12 -0
  14. package/dist/admin-backend/account/author-account.queries.js +110 -0
  15. package/dist/admin-backend/account/author-account.queries.js.map +1 -0
  16. package/dist/admin-backend/account/author-account.resolver.d.ts +3 -0
  17. package/dist/admin-backend/account/author-account.resolver.js +39 -0
  18. package/dist/admin-backend/account/author-account.resolver.js.map +1 -0
  19. package/dist/admin-backend/auth/auth.helper.d.ts +2 -0
  20. package/dist/admin-backend/auth/auth.helper.js +10 -2
  21. package/dist/admin-backend/auth/auth.helper.js.map +1 -1
  22. package/dist/admin-backend/auth/auth.service.d.ts +1 -1
  23. package/dist/admin-backend/auth/auth.service.js +147 -67
  24. package/dist/admin-backend/auth/auth.service.js.map +1 -1
  25. package/dist/admin-backend/auth/auth.types.d.ts +3 -1
  26. package/dist/admin-backend/auth/authorization.helper.d.ts +11 -0
  27. package/dist/admin-backend/auth/authorization.helper.js +37 -0
  28. package/dist/admin-backend/auth/authorization.helper.js.map +1 -0
  29. package/dist/admin-backend/auth/special-account.helper.d.ts +10 -0
  30. package/dist/admin-backend/auth/special-account.helper.js +38 -0
  31. package/dist/admin-backend/auth/special-account.helper.js.map +1 -0
  32. package/dist/admin-backend/backup/backup.resolver.js +2 -2
  33. package/dist/admin-backend/backup/backup.resolver.js.map +1 -1
  34. package/dist/admin-backend/document/document.resolver.extend.js +1 -3
  35. package/dist/admin-backend/document/document.resolver.extend.js.map +1 -1
  36. package/dist/admin-backend/document/document.resolver.js +95 -13
  37. package/dist/admin-backend/document/document.resolver.js.map +1 -1
  38. package/dist/admin-backend/event-log/event-log.queries.d.ts +24 -0
  39. package/dist/admin-backend/event-log/event-log.queries.js +84 -0
  40. package/dist/admin-backend/event-log/event-log.queries.js.map +1 -0
  41. package/dist/admin-backend/event-log/event-log.resolver.d.ts +3 -0
  42. package/dist/admin-backend/event-log/event-log.resolver.js +21 -0
  43. package/dist/admin-backend/event-log/event-log.resolver.js.map +1 -0
  44. package/dist/admin-backend/event-log/event-log.service.d.ts +11 -0
  45. package/dist/admin-backend/event-log/event-log.service.js +290 -0
  46. package/dist/admin-backend/event-log/event-log.service.js.map +1 -0
  47. package/dist/admin-backend/event-log/event-log.types.d.ts +142 -0
  48. package/dist/admin-backend/event-log/event-log.types.js +2 -0
  49. package/dist/admin-backend/event-log/event-log.types.js.map +1 -0
  50. package/dist/admin-backend/fields/fields.resolver.js +3 -2
  51. package/dist/admin-backend/fields/fields.resolver.js.map +1 -1
  52. package/dist/admin-backend/lnode/lnode-wrap.resolver.js +6 -6
  53. package/dist/admin-backend/lnode/lnode-wrap.resolver.js.map +1 -1
  54. package/dist/admin-backend/login/login.controller.js +32 -3
  55. package/dist/admin-backend/login/login.controller.js.map +1 -1
  56. package/dist/admin-backend/media/media-upload.controller.js +15 -0
  57. package/dist/admin-backend/media/media-upload.controller.js.map +1 -1
  58. package/dist/admin-backend/media/media.resolver.extend.js +1 -3
  59. package/dist/admin-backend/media/media.resolver.extend.js.map +1 -1
  60. package/dist/admin-backend/media/media.resolver.js +70 -11
  61. package/dist/admin-backend/media/media.resolver.js.map +1 -1
  62. package/dist/admin-backend/migration/migration.resolver.js +3 -3
  63. package/dist/admin-backend/migration/migration.resolver.js.map +1 -1
  64. package/dist/admin-backend/node/node.resolver.extend.js +1 -3
  65. package/dist/admin-backend/node/node.resolver.extend.js.map +1 -1
  66. package/dist/admin-backend/node/node.resolver.js +6 -5
  67. package/dist/admin-backend/node/node.resolver.js.map +1 -1
  68. package/dist/admin-backend/part/part.resolver.extend.js +2 -5
  69. package/dist/admin-backend/part/part.resolver.extend.js.map +1 -1
  70. package/dist/admin-backend/part/part.resolver.js +56 -10
  71. package/dist/admin-backend/part/part.resolver.js.map +1 -1
  72. package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js +7 -7
  73. package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js.map +1 -1
  74. package/dist/admin-backend/unprotected/unprotected.resolver.js +3 -2
  75. package/dist/admin-backend/unprotected/unprotected.resolver.js.map +1 -1
  76. package/dist/common/data-format.d.ts +5 -1
  77. package/dist/common/data-format.js +6 -2
  78. package/dist/common/data-format.js.map +1 -1
  79. package/dist/connector/app-conf/app-conf-formatter.js +4 -1
  80. package/dist/connector/app-conf/app-conf-formatter.js.map +1 -1
  81. package/dist/connector/app-conf/app-conf.types.d.ts +3 -3
  82. package/dist/connector/db-init/db-constants.d.ts +1 -1
  83. package/dist/connector/db-init/db-constants.js +1 -1
  84. package/dist/connector/db-init/db-init.d.ts +2 -0
  85. package/dist/connector/db-init/db-init.js +2 -2
  86. package/dist/connector/db-init/db-init.js.map +1 -1
  87. package/dist/connector/db-init/ddl-migration.d.ts +2 -0
  88. package/dist/connector/db-init/ddl-migration.js +191 -1
  89. package/dist/connector/db-init/ddl-migration.js.map +1 -1
  90. package/dist/connector/row-types.d.ts +5 -3
  91. package/dist/connector/site-schema/site-schema-factory.js +76 -0
  92. package/dist/connector/site-schema/site-schema-factory.js.map +1 -1
  93. package/dist/graphql/apollo-server-init.js +6 -0
  94. package/dist/graphql/apollo-server-init.js.map +1 -1
  95. package/dist/maintenance/maintenance-task.d.ts +1 -1
  96. package/dist/maintenance/maintenance-task.js +5 -0
  97. package/dist/maintenance/maintenance-task.js.map +1 -1
  98. package/dist/protected-site/protected-access-token.d.ts +3 -3
  99. package/dist/protected-site/protected-access-token.js +3 -3
  100. package/dist/protected-site/protected-access-token.js.map +1 -1
  101. package/dist/protected-site/protected-site.req-handler.js +4 -4
  102. package/dist/protected-site/protected-site.req-handler.js.map +1 -1
  103. package/dist/public-api/password-reset/password-reset.controller.js +4 -11
  104. package/dist/public-api/password-reset/password-reset.controller.js.map +1 -1
  105. package/dist/public-api/password-reset/password-reset.service.js +9 -6
  106. package/dist/public-api/password-reset/password-reset.service.js.map +1 -1
  107. package/dist/rendered-site/feed/feed-generator.js +2 -2
  108. package/dist/rendered-site/feed/feed-generator.js.map +1 -1
  109. package/dist/site-context/load-site-context.js +3 -5
  110. package/dist/site-context/load-site-context.js.map +1 -1
  111. package/dist/site-context/main-medias-databases.js +1 -1
  112. package/dist/site-context/main-medias-databases.js.map +1 -1
  113. package/dist/tsconfig.tsbuildinfo +1 -1
  114. package/package.json +11 -11
  115. package/schema.graphql +46 -2
  116. package/dist/helpers/special-account.helpers.d.ts +0 -9
  117. package/dist/helpers/special-account.helpers.js +0 -36
  118. package/dist/helpers/special-account.helpers.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paroicms/server",
3
- "version": "1.109.5",
3
+ "version": "1.110.0",
4
4
  "description": "The ParoiCMS server",
5
5
  "keywords": [
6
6
  "cms",
@@ -38,16 +38,16 @@
38
38
  "dependencies": {
39
39
  "@apollo/server": "~4.12.2",
40
40
  "@as-integrations/express5": "1.1.0",
41
- "@paroicms/admin-ui": "1.85.0",
42
- "@paroicms/internal-anywhere-lib": "1.35.3",
43
- "@paroicms/internal-server-lib": "1.22.3",
44
- "@paroicms/playground_demo1": "0.65.3",
45
- "@paroicms/public-anywhere-lib": "0.37.1",
46
- "@paroicms/public-server-lib": "0.47.2",
47
- "@paroicms/script-lib": "0.3.3",
48
- "@paroicms/server-database-media-storage": "1.24.3",
49
- "@paroicms/server-image-cache-engine": "1.29.3",
50
- "@paroicms/server-text-cache-system": "1.21.3",
41
+ "@paroicms/admin-ui": "1.86.0",
42
+ "@paroicms/internal-anywhere-lib": "1.35.5",
43
+ "@paroicms/internal-server-lib": "1.22.5",
44
+ "@paroicms/playground_demo1": "0.65.5",
45
+ "@paroicms/public-anywhere-lib": "0.38.0",
46
+ "@paroicms/public-server-lib": "0.48.0",
47
+ "@paroicms/script-lib": "0.3.5",
48
+ "@paroicms/server-database-media-storage": "1.24.5",
49
+ "@paroicms/server-image-cache-engine": "1.29.5",
50
+ "@paroicms/server-text-cache-system": "1.21.5",
51
51
  "archiver": "~7.0.1",
52
52
  "arktype": "~2.1.23",
53
53
  "bcrypt": "~6.0.0",
package/schema.graphql CHANGED
@@ -8,6 +8,7 @@ type Query {
8
8
  account(id: ID!): Account!
9
9
  allAccounts: [Account!]!
10
10
  authAccount: AuthenticatedAccount!
11
+ accountRoles(accountId: ID!): [String!]!
11
12
 
12
13
  # Document
13
14
  document(id: ID!): Document!
@@ -73,6 +74,9 @@ type Query {
73
74
 
74
75
  # Migration
75
76
  migrationInfo: MigrationInfo!
77
+
78
+ # Event Log
79
+ eventLog(offset: Int!, limit: Int!, searchText: String): PagedEventLog!
76
80
  }
77
81
 
78
82
  input PreprocessFields {
@@ -85,10 +89,16 @@ type Account {
85
89
  id: ID!
86
90
  name: String
87
91
  special: String
92
+ roles: [String!]!
93
+ linkedAuthors: [Author!]!
94
+ currentAuthor: Author
95
+ loginMethod: String
96
+ active: Boolean!
88
97
  }
89
98
 
90
99
  type AccountPreferences {
91
100
  language: String
101
+ currentAuthorNodeId: String
92
102
  }
93
103
 
94
104
  type AuthenticatedAccount {
@@ -98,6 +108,16 @@ type AuthenticatedAccount {
98
108
  name: String
99
109
  preferences: AccountPreferences
100
110
  special: String
111
+ roles: [String!]!
112
+ permissions: [String!]!
113
+ loginMethod: String!
114
+ active: Boolean!
115
+ }
116
+
117
+ type Author {
118
+ nodeId: ID!
119
+ title: String
120
+ linkedAccounts: [Account!]!
101
121
  }
102
122
 
103
123
  type BackupInfo {
@@ -214,6 +234,9 @@ type Plugin {
214
234
  }
215
235
 
216
236
  type PublicSiteConstants {
237
+ fqdn: String!
238
+ publicSiteUrl: String!
239
+ platformAuthUrl: String
217
240
  """
218
241
  A stringified `MImageVariant`
219
242
  """
@@ -223,8 +246,6 @@ type PublicSiteConstants {
223
246
  """
224
247
  faviconThumb: String
225
248
  languageWithLabels: [LanguageWithLabel!]!
226
- platformAuthUrl: String
227
- publicSiteUrl: String!
228
249
  """
229
250
  The current status of the site (e.g., `"ready"` or `"migration"`)
230
251
  """
@@ -242,6 +263,23 @@ type MigrationInfo {
242
263
  targetSiteSchemaVersion: String!
243
264
  }
244
265
 
266
+ type PagedEventLog {
267
+ items: [EventLogEntry!]!
268
+ total: Int!
269
+ offset: Int!
270
+ }
271
+
272
+ type EventLogEntry {
273
+ id: ID!
274
+ eventType: String!
275
+ actorEmail: String
276
+ actorName: String
277
+ targetType: String!
278
+ targetId: String!
279
+ eventData: String
280
+ createdAt: DateTime!
281
+ }
282
+
245
283
  type LNodeTranslation {
246
284
  language: String!
247
285
  lNodeId: ID!
@@ -299,9 +337,14 @@ type Mutation {
299
337
  # Account
300
338
  createAccount(values: CreateAccountValues!): Account!
301
339
  deleteAccount(accountId: ID!): Boolean!
340
+ reactivateAccount(accountId: ID!): Boolean!
302
341
  resetAccountPassword(accountId: ID!): Boolean!
303
342
  setAccountPreferences(accountId: ID!, values: AccountPreferencesValues!): String!
304
343
  updateAccount(accountId: ID!, values: UpdateAccountValues!): Account!
344
+ updateAccountRoles(accountId: ID!, roles: [String!]!): Account!
345
+ linkAuthorToAccount(authorNodeId: ID!, accountId: ID!): Boolean!
346
+ unlinkAuthorFromAccount(authorNodeId: ID!, accountId: ID!): Boolean!
347
+ setCurrentAuthor(accountId: ID!, authorNodeId: ID): Boolean!
305
348
 
306
349
  # Document
307
350
  createDocumentOnNode(language: String!, nodeId: ID!, values: CreateDocumentValues): Document!
@@ -364,6 +407,7 @@ type Mutation {
364
407
 
365
408
  input AccountPreferencesValues {
366
409
  language: String
410
+ currentAuthorNodeId: String
367
411
  }
368
412
 
369
413
  input CreateAccountValues {
@@ -1,9 +0,0 @@
1
- import type { AccountRow } from "../connector/row-types.js";
2
- export declare const devAccountId = "dev:0";
3
- export declare function isDevAccountId(id: string): boolean;
4
- export interface ParsedPlatformAdminAccountId {
5
- index: number;
6
- }
7
- export declare function parsePlatformAdminAccountId(id: string): ParsedPlatformAdminAccountId | undefined;
8
- export declare function getDevAccount(id: string): AccountRow;
9
- export declare function getPlatformAdminAccount({ index }: ParsedPlatformAdminAccountId): AccountRow;
@@ -1,36 +0,0 @@
1
- import { ApiError } from "@paroicms/public-server-lib";
2
- import { appConf } from "../context.js";
3
- export const devAccountId = "dev:0";
4
- export function isDevAccountId(id) {
5
- return id === devAccountId;
6
- }
7
- export function parsePlatformAdminAccountId(id) {
8
- if (!id.startsWith("pladm:"))
9
- return;
10
- return { index: Number(id.substring(6)) };
11
- }
12
- export function getDevAccount(id) {
13
- const devAccount = appConf.devAccount;
14
- if (!devAccount || devAccountId !== id) {
15
- throw new ApiError(404);
16
- }
17
- return {
18
- email: devAccount.email,
19
- id: devAccountId,
20
- name: devAccount.name,
21
- special: "dev",
22
- };
23
- }
24
- export function getPlatformAdminAccount({ index }) {
25
- const account = appConf.platformAdminAccounts?.[index];
26
- if (!account) {
27
- throw new ApiError(404);
28
- }
29
- return {
30
- id: `pladm:${index}`,
31
- email: account.email,
32
- name: account.name,
33
- special: "platformAdmin",
34
- };
35
- }
36
- //# sourceMappingURL=special-account.helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"special-account.helpers.js","sourceRoot":"","sources":["../../src/helpers/special-account.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC;AAEpC,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,OAAO,EAAE,KAAK,YAAY,CAAC;AAC7B,CAAC;AAMD,MAAM,UAAU,2BAA2B,CAAC,EAAU;IACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO;IACrC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,IAAI,CAAC,UAAU,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,OAAO,EAAE,KAAK;KACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,EAAE,KAAK,EAAgC;IAC7E,MAAM,OAAO,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO;QACL,EAAE,EAAE,SAAS,KAAK,EAAE;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,eAAe;KACzB,CAAC;AACJ,CAAC"}