@dosgato/api 1.7.11 → 1.8.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 (71) hide show
  1. package/dist/index.js +5 -2
  2. package/dist/index.js.map +1 -1
  3. package/dist/internal.d.ts +5 -0
  4. package/dist/internal.js +5 -0
  5. package/dist/internal.js.map +1 -1
  6. package/dist/migrations.js +47 -2
  7. package/dist/migrations.js.map +1 -1
  8. package/dist/page/page.database.js +2 -1
  9. package/dist/page/page.database.js.map +1 -1
  10. package/dist/page/page.indexing.d.ts +1 -0
  11. package/dist/page/page.indexing.js +19 -6
  12. package/dist/page/page.indexing.js.map +1 -1
  13. package/dist/page/page.model.d.ts +6 -0
  14. package/dist/page/page.model.js +26 -0
  15. package/dist/page/page.model.js.map +1 -1
  16. package/dist/page/page.resolver.d.ts +5 -1
  17. package/dist/page/page.resolver.js +48 -1
  18. package/dist/page/page.resolver.js.map +1 -1
  19. package/dist/page/page.routes.js +31 -21
  20. package/dist/page/page.routes.js.map +1 -1
  21. package/dist/page/page.service.d.ts +4 -1
  22. package/dist/page/page.service.js +125 -17
  23. package/dist/page/page.service.js.map +1 -1
  24. package/dist/role/role.database.d.ts +1 -0
  25. package/dist/role/role.database.js +9 -2
  26. package/dist/role/role.database.js.map +1 -1
  27. package/dist/role/role.model.d.ts +8 -0
  28. package/dist/role/role.model.js +42 -0
  29. package/dist/role/role.model.js.map +1 -1
  30. package/dist/role/role.service.js +22 -2
  31. package/dist/role/role.service.js.map +1 -1
  32. package/dist/scheduledpublish/scheduledpublish.cron.d.ts +1 -0
  33. package/dist/scheduledpublish/scheduledpublish.cron.js +40 -0
  34. package/dist/scheduledpublish/scheduledpublish.cron.js.map +1 -0
  35. package/dist/scheduledpublish/scheduledpublish.database.d.ts +38 -0
  36. package/dist/scheduledpublish/scheduledpublish.database.js +86 -0
  37. package/dist/scheduledpublish/scheduledpublish.database.js.map +1 -0
  38. package/dist/scheduledpublish/scheduledpublish.model.d.ts +76 -0
  39. package/dist/scheduledpublish/scheduledpublish.model.js +283 -0
  40. package/dist/scheduledpublish/scheduledpublish.model.js.map +1 -0
  41. package/dist/scheduledpublish/scheduledpublish.resolver.d.ts +16 -0
  42. package/dist/scheduledpublish/scheduledpublish.resolver.js +143 -0
  43. package/dist/scheduledpublish/scheduledpublish.resolver.js.map +1 -0
  44. package/dist/scheduledpublish/scheduledpublish.service.d.ts +22 -0
  45. package/dist/scheduledpublish/scheduledpublish.service.js +170 -0
  46. package/dist/scheduledpublish/scheduledpublish.service.js.map +1 -0
  47. package/dist/site/site.resolver.d.ts +2 -0
  48. package/dist/site/site.resolver.js +27 -1
  49. package/dist/site/site.resolver.js.map +1 -1
  50. package/dist/site/site.service.d.ts +2 -0
  51. package/dist/site/site.service.js +16 -0
  52. package/dist/site/site.service.js.map +1 -1
  53. package/dist/template/template.model.d.ts +1 -0
  54. package/dist/template/template.model.js +7 -0
  55. package/dist/template/template.model.js.map +1 -1
  56. package/dist/user/user.service.js +10 -1
  57. package/dist/user/user.service.js.map +1 -1
  58. package/dist/util/authservice.d.ts +1 -0
  59. package/dist/util/authservice.js +5 -0
  60. package/dist/util/authservice.js.map +1 -1
  61. package/dist/util/context.d.ts +1 -0
  62. package/dist/util/context.js +11 -3
  63. package/dist/util/context.js.map +1 -1
  64. package/dist/util/registry.js +1 -1
  65. package/dist/util/registry.js.map +1 -1
  66. package/dist/versionedservice/service.d.ts +7 -1
  67. package/dist/versionedservice/service.js +67 -17
  68. package/dist/versionedservice/service.js.map +1 -1
  69. package/dist/versionedservice/types.d.ts +4 -1
  70. package/dist/versionedservice/types.js.map +1 -1
  71. package/package.json +2 -2
@@ -7,17 +7,24 @@ export declare enum RuleType {
7
7
  DATA = "data",
8
8
  TEMPLATE = "template"
9
9
  }
10
+ export declare enum RoleAccessLevel {
11
+ EDITOR = "editor",
12
+ CONTRIBUTOR = "contributor",
13
+ READONLY = "readonly"
14
+ }
10
15
  export declare class Role {
11
16
  id: string;
12
17
  name: string;
13
18
  description?: string;
14
19
  siteId?: string;
20
+ access?: RoleAccessLevel;
15
21
  constructor(row: any);
16
22
  }
17
23
  export declare class RoleInput {
18
24
  name: string;
19
25
  description?: string;
20
26
  siteId?: string;
27
+ access?: RoleAccessLevel;
21
28
  }
22
29
  export declare class RoleFilter {
23
30
  ids?: string[];
@@ -26,6 +33,7 @@ export declare class RoleFilter {
26
33
  users?: string[];
27
34
  names?: string[];
28
35
  notNames?: string[];
36
+ accessLevels?: RoleAccessLevel[];
29
37
  }
30
38
  export declare class RoleResponse extends ValidatedResponse {
31
39
  role?: Role;
@@ -23,16 +23,44 @@ export var RuleType;
23
23
  registerEnumType(RuleType, {
24
24
  name: 'RuleType'
25
25
  });
26
+ export var RoleAccessLevel;
27
+ (function (RoleAccessLevel) {
28
+ RoleAccessLevel["EDITOR"] = "editor";
29
+ RoleAccessLevel["CONTRIBUTOR"] = "contributor";
30
+ RoleAccessLevel["READONLY"] = "readonly";
31
+ })(RoleAccessLevel || (RoleAccessLevel = {}));
32
+ registerEnumType(RoleAccessLevel, {
33
+ name: 'RoleAccessLevel',
34
+ description: `The level of access granted by a role. This is a general indicator of the level
35
+ of access granted by a role, but the specific permissions granted by a role are determined by
36
+ the rules associated with the role.`,
37
+ valuesConfig: {
38
+ EDITOR: {
39
+ description: `An editor has the necessary permissions to create, update, move, publish,
40
+ unpublish, and delete pages in all pagetrees in a given site. They can also create, update, move,
41
+ and delete that site's assets.`
42
+ },
43
+ CONTRIBUTOR: {
44
+ description: `A contributor has limited permissions on a given site. They might only have access to a
45
+ specific page or set of pages, or they might only have access to a particular type of pagetree.`
46
+ },
47
+ READONLY: {
48
+ description: 'A readonly role has the necessary permissions to view pages in a given site, but cannot make any changes.'
49
+ }
50
+ }
51
+ });
26
52
  let Role = class Role {
27
53
  id;
28
54
  name;
29
55
  description;
30
56
  siteId;
57
+ access;
31
58
  constructor(row) {
32
59
  this.id = String(row.id);
33
60
  this.name = row.name;
34
61
  this.description = optionalString(row.description);
35
62
  this.siteId = optionalString(row.siteId);
63
+ this.access = row.access;
36
64
  }
37
65
  };
38
66
  __decorate([
@@ -51,6 +79,10 @@ __decorate([
51
79
  Field({ nullable: true }),
52
80
  __metadata("design:type", String)
53
81
  ], Role.prototype, "siteId", void 0);
82
+ __decorate([
83
+ Field(type => RoleAccessLevel, { nullable: true }),
84
+ __metadata("design:type", String)
85
+ ], Role.prototype, "access", void 0);
54
86
  Role = __decorate([
55
87
  ObjectType({
56
88
  description: `A role links a user or group to a set of rules that grant
@@ -66,6 +98,7 @@ let RoleInput = class RoleInput {
66
98
  name;
67
99
  description;
68
100
  siteId;
101
+ access;
69
102
  };
70
103
  __decorate([
71
104
  Field(type => UrlSafeString, { description: 'name of the role' }),
@@ -79,6 +112,10 @@ __decorate([
79
112
  Field(type => ID, { nullable: true, description: 'Optional site ID to associate the role with a specific site.' }),
80
113
  __metadata("design:type", String)
81
114
  ], RoleInput.prototype, "siteId", void 0);
115
+ __decorate([
116
+ Field(type => RoleAccessLevel, { nullable: true }),
117
+ __metadata("design:type", String)
118
+ ], RoleInput.prototype, "access", void 0);
82
119
  RoleInput = __decorate([
83
120
  InputType()
84
121
  ], RoleInput);
@@ -90,6 +127,7 @@ let RoleFilter = class RoleFilter {
90
127
  users;
91
128
  names;
92
129
  notNames;
130
+ accessLevels;
93
131
  };
94
132
  __decorate([
95
133
  Field(type => [ID], { nullable: true }),
@@ -115,6 +153,10 @@ __decorate([
115
153
  Field(type => [UrlSafeString], { nullable: true, description: 'Exclude roles matching one of the given names.' }),
116
154
  __metadata("design:type", Array)
117
155
  ], RoleFilter.prototype, "notNames", void 0);
156
+ __decorate([
157
+ Field(type => [RoleAccessLevel], { nullable: true, description: 'Return roles matching any of the given access levels.' }),
158
+ __metadata("design:type", Array)
159
+ ], RoleFilter.prototype, "accessLevels", void 0);
118
160
  RoleFilter = __decorate([
119
161
  InputType()
120
162
  ], RoleFilter);
@@ -1 +1 @@
1
- {"version":3,"file":"role.model.js","sourceRoot":"","sources":["../../src/role/role.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role.model.js","sourceRoot":"","sources":["../../src/role/role.model.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
2
2
  import { ManyJoinedLoader, OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
3
- import { intersect, isNotNull, unique } from 'txstate-utils';
4
- import { DosGatoService, GroupService, UserService, RoleResponse, addRolesToUser, createRole, deleteRole, getRoles, getRolesWithGroup, getRolesWithManager, getRolesForUsers, removeRoleFromUser, updateRole, removeRoleFromGroup, addRoleToGroups, GroupServiceInternal, GlobalRuleServiceInternal, SiteRuleServiceInternal, AssetRuleServiceInternal, DataRuleServiceInternal, PageRuleServiceInternal, TemplateRuleServiceInternal, GlobalRuleService, AssetRuleService, DataRuleService, PageRuleService, SiteRuleService, TemplateRuleService, roleNameIsUnique, assignRoleToUsers } from '../internal.js';
3
+ import { intersect, isBlank, isNotNull, unique } from 'txstate-utils';
4
+ import { DosGatoService, GroupService, UserService, RoleResponse, addRolesToUser, createRole, deleteRole, getRoles, getRolesWithGroup, getRolesWithManager, getRolesForUsers, removeRoleFromUser, updateRole, removeRoleFromGroup, addRoleToGroups, GroupServiceInternal, GlobalRuleServiceInternal, SiteRuleServiceInternal, AssetRuleServiceInternal, DataRuleServiceInternal, PageRuleServiceInternal, TemplateRuleServiceInternal, GlobalRuleService, AssetRuleService, DataRuleService, PageRuleService, SiteRuleService, TemplateRuleService, roleNameIsUnique, assignRoleToUsers, accessLevelUniqueForSite } from '../internal.js';
5
5
  const rolesByIdLoader = new PrimaryKeyLoader({
6
6
  fetch: async (ids) => {
7
7
  return await getRoles({ ids });
@@ -126,6 +126,15 @@ export class RoleService extends DosGatoService {
126
126
  if (input.description && input.description.length > 200) {
127
127
  response.addMessage('Role description cannot exceed 200 characters', 'description');
128
128
  }
129
+ if (input.siteId && isBlank(input.access)) {
130
+ response.addMessage('Access level must be specified when creating a site-specific role.', 'access');
131
+ }
132
+ // We only allow one role per site to be designated as the editor role. Same for the read-only role.
133
+ if (input.siteId && input.access && input.access !== 'contributor') {
134
+ if (!await accessLevelUniqueForSite(input.siteId, input.access, input.name)) {
135
+ response.addMessage(`A role with ${input.access} access level already exists for this site.`, 'access');
136
+ }
137
+ }
129
138
  if (validateOnly || response.hasErrors())
130
139
  return response;
131
140
  const id = await createRole(input);
@@ -145,6 +154,15 @@ export class RoleService extends DosGatoService {
145
154
  if (input.description && input.description.length > 200) {
146
155
  response.addMessage('Role description cannot exceed 200 characters', 'description');
147
156
  }
157
+ if (input.siteId && isBlank(input.access)) {
158
+ response.addMessage('Access level must be specified when creating a site-specific role.', 'access');
159
+ }
160
+ // We only allow one role per site to be designated as the editor role. Same for the read-only role.
161
+ if (input.siteId && input.access && input.access !== 'contributor') {
162
+ if (!await accessLevelUniqueForSite(input.siteId, input.access, input.name)) {
163
+ response.addMessage(`A role with ${input.access} access level already exists for this site.`, 'access');
164
+ }
165
+ }
148
166
  if (validateOnly || response.hasErrors()) {
149
167
  return response;
150
168
  }
@@ -265,6 +283,8 @@ export class RoleService extends DosGatoService {
265
283
  mayView(role) {
266
284
  if (this.haveGlobalPerm('manageAccess'))
267
285
  return true;
286
+ if (role.siteId && (this.ctx.authInfo.ownedOrManagedSiteIds?.includes(role.siteId) || this.ctx.authInfo.pageSiteIds?.includes(role.siteId)))
287
+ return true;
268
288
  return this.ctx.authInfo.roles.some(r => r.id === role.id);
269
289
  }
270
290
  mayViewManagerUI() {
@@ -1 +1 @@
1
- {"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../src/role/role.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../src/role/role.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function executeScheduledPublishes(): Promise<void>;
@@ -0,0 +1,40 @@
1
+ import { getDueSchedules, updateScheduledPublishStatus, createScheduledPublish, ScheduledPublishStatus, ScheduledPublishAction, ScheduledPublishRecurrence, PageService, userContext } from '../internal.js';
2
+ const recurDurationKey = {
3
+ [ScheduledPublishRecurrence.DAY]: 'days',
4
+ [ScheduledPublishRecurrence.WEEK]: 'weeks',
5
+ [ScheduledPublishRecurrence.MONTH]: 'months'
6
+ };
7
+ export async function executeScheduledPublishes() {
8
+ const due = await getDueSchedules();
9
+ for (const schedule of due) {
10
+ let permissionsError = false;
11
+ try {
12
+ const ctx = await userContext(schedule.updatedBy);
13
+ if (schedule.action === ScheduledPublishAction.UNPUBLISH) {
14
+ await ctx.svc(PageService).unpublishPages([schedule.pageDataId]);
15
+ }
16
+ else {
17
+ await ctx.svc(PageService).publishPages([schedule.pageDataId], schedule.action === ScheduledPublishAction.PUBLISH_WITH_SUBPAGES);
18
+ }
19
+ await updateScheduledPublishStatus(schedule.internalId, ScheduledPublishStatus.COMPLETED);
20
+ }
21
+ catch (err) {
22
+ console.error('Scheduled publish failed:', err);
23
+ permissionsError = err.message.includes('permitted');
24
+ await updateScheduledPublishStatus(schedule.internalId, ScheduledPublishStatus.FAILED, err.message);
25
+ }
26
+ if (schedule.recurrence && !permissionsError) {
27
+ try {
28
+ const { type, interval, timezone } = schedule.recurrence;
29
+ const nextDate = schedule.targetDate
30
+ .setZone(timezone)
31
+ .plus({ [recurDurationKey[type]]: interval });
32
+ await createScheduledPublish(schedule.pageInternalId, schedule.action, nextDate.toJSDate(), schedule.updatedBy, { recur: type, recurInterval: interval, timezone });
33
+ }
34
+ catch (err) {
35
+ console.error('Failed to reschedule recurring publish:', err);
36
+ }
37
+ }
38
+ }
39
+ }
40
+ //# sourceMappingURL=scheduledpublish.cron.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduledpublish.cron.js","sourceRoot":"","sources":["../../src/scheduledpublish/scheduledpublish.cron.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,sBAAsB,EAC7F,sBAAsB,EAAE,0BAA0B,EAAE,WAAW,EAAE,WAAW,EAC7E,MAAM,gBAAgB,CAAA;AAEvB,MAAM,gBAAgB,GAAoE;IACxF,CAAC,0BAA0B,CAAC,GAAG,CAAC,EAAE,MAAM;IACxC,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,OAAO;IAC1C,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,QAAQ;CAC7C,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,MAAM,GAAG,GAAG,MAAM,eAAe,EAAE,CAAA;IACnC,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,gBAAgB,GAAG,KAAK,CAAA;QAC5B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,SAAS,EAAE,CAAC;gBACzD,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;YAClE,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,KAAK,sBAAsB,CAAC,qBAAqB,CAAC,CAAA;YAClI,CAAC;YACD,MAAM,4BAA4B,CAAC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;QAC3F,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;YAC/C,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;YACpD,MAAM,4BAA4B,CAAC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;QACrG,CAAC;QACD,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;gBACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU;qBACjC,OAAO,CAAC,QAAQ,CAAC;qBACjB,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAC/C,MAAM,sBAAsB,CAC1B,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,QAAQ,EAAE,EACnB,QAAQ,CAAC,SAAS,EAClB,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACnD,CAAA;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { type Queryable } from 'mysql2-async';
2
+ import { ScheduledPublish, ScheduledPublishAction, type ScheduledPublishFilter, type ScheduledPublishRecurrence, ScheduledPublishStatus } from '../internal.js';
3
+ export interface ScheduledPublishRow {
4
+ id: number;
5
+ pageInternalId: number;
6
+ pageDataId: string | null;
7
+ dataId: string | null;
8
+ action: ScheduledPublishAction;
9
+ targetDate: Date;
10
+ status: ScheduledPublishStatus;
11
+ recur: ScheduledPublishRecurrence | null;
12
+ recurInterval: number | null;
13
+ timezone: string | null;
14
+ error: string | null;
15
+ createdAt: Date;
16
+ createdBy: string;
17
+ updatedAt: Date;
18
+ updatedBy: string;
19
+ }
20
+ export declare function getScheduledPublishes(filter?: ScheduledPublishFilter, tdb?: Queryable): Promise<ScheduledPublish[]>;
21
+ export declare function countScheduledPublishes(filter?: ScheduledPublishFilter, tdb?: Queryable): Promise<number>;
22
+ export interface ScheduledPublishRecurrenceData {
23
+ recur: ScheduledPublishRecurrence;
24
+ recurInterval: number;
25
+ timezone: string;
26
+ }
27
+ export declare function createScheduledPublish(pageInternalId: number, action: ScheduledPublishAction, targetDate: Date, createdBy: string, recurrence?: ScheduledPublishRecurrenceData): Promise<number>;
28
+ export declare function updateScheduledPublish(id: number, updates: {
29
+ action: ScheduledPublishAction;
30
+ targetDate: Date;
31
+ recur: ScheduledPublishRecurrence | null;
32
+ recurInterval: number | null;
33
+ timezone: string | null;
34
+ updatedBy: string;
35
+ }, tdb?: Queryable): Promise<void>;
36
+ export declare function updateScheduledPublishStatus(id: number, status: ScheduledPublishStatus, error?: string, tdb?: Queryable): Promise<void>;
37
+ export declare function cancelActiveSchedulesForPages(pageInternalIds: number[], tdb?: Queryable): Promise<void>;
38
+ export declare function getDueSchedules(tdb?: Queryable): Promise<ScheduledPublish[]>;
@@ -0,0 +1,86 @@
1
+ import db from 'mysql2-async/db';
2
+ import { ScheduledPublish, ScheduledPublishAction, ScheduledPublishStatus } from '../internal.js';
3
+ function processFilters(filter) {
4
+ const binds = [];
5
+ const where = [];
6
+ const joins = new Map();
7
+ const statuses = filter?.statuses ?? [ScheduledPublishStatus.PENDING];
8
+ where.push(`sp.status IN (${db.in(binds, statuses)})`);
9
+ if (filter?.ids?.length) {
10
+ where.push(`sp.id IN (${db.in(binds, filter.ids)})`);
11
+ }
12
+ if (filter?.internalIds?.length) {
13
+ where.push(`sp.id IN (${db.in(binds, filter.internalIds)})`);
14
+ }
15
+ if (filter?.pageInternalIds?.length) {
16
+ where.push(`sp.pageInternalId IN (${db.in(binds, filter.pageInternalIds)})`);
17
+ }
18
+ if (filter?.pageIds?.length) {
19
+ joins.set('p', 'INNER JOIN pages p ON p.id = sp.pageInternalId');
20
+ where.push(`p.dataId IN (${db.in(binds, filter.pageIds)})`);
21
+ }
22
+ if (filter?.actions?.length) {
23
+ where.push(`sp.action IN (${db.in(binds, filter.actions)})`);
24
+ }
25
+ if (filter?.targetDateBefore) {
26
+ binds.push(filter.targetDateBefore.toUTC().toSQL());
27
+ where.push('sp.targetDate < ?');
28
+ }
29
+ if (filter?.targetDateAfter) {
30
+ binds.push(filter.targetDateAfter.toUTC().toSQL());
31
+ where.push('sp.targetDate > ?');
32
+ }
33
+ return { binds, where, joins };
34
+ }
35
+ export async function getScheduledPublishes(filter, tdb = db) {
36
+ const { binds, where, joins } = processFilters(filter);
37
+ const query = `SELECT sp.*, pages.dataId AS pageDataId FROM scheduledpublishes sp
38
+ INNER JOIN pages ON pages.id = sp.pageInternalId
39
+ ${[...joins.values()].join('\n')}
40
+ WHERE (${where.join(') AND (')})
41
+ ORDER BY sp.targetDate ASC`;
42
+ const rows = await tdb.getall(query, binds);
43
+ return rows.map((row) => new ScheduledPublish(row));
44
+ }
45
+ export async function countScheduledPublishes(filter, tdb = db) {
46
+ const { binds, where, joins } = processFilters(filter);
47
+ const query = `SELECT COUNT(*) FROM scheduledpublishes sp
48
+ ${[...joins.values()].join('\n')}
49
+ WHERE (${where.join(') AND (')})`;
50
+ return await tdb.getval(query, binds) ?? 0;
51
+ }
52
+ export async function createScheduledPublish(pageInternalId, action, targetDate, createdBy, recurrence) {
53
+ return await db.transaction(async (db) => {
54
+ await db.getrow('SELECT id FROM pages WHERE id = ? FOR UPDATE', [pageInternalId]);
55
+ const conflictingActions = action === ScheduledPublishAction.UNPUBLISH
56
+ ? [ScheduledPublishAction.UNPUBLISH]
57
+ : [ScheduledPublishAction.PUBLISH, ScheduledPublishAction.PUBLISH_WITH_SUBPAGES];
58
+ const binds = [ScheduledPublishStatus.PENDING, pageInternalId];
59
+ const existing = await db.getval(`SELECT id FROM scheduledpublishes WHERE status = ? AND pageInternalId = ? AND action IN (${db.in(binds, conflictingActions)}) LIMIT 1`, binds);
60
+ if (existing)
61
+ throw new Error('An active schedule of this type already exists for this page.');
62
+ return await db.insert(`INSERT INTO scheduledpublishes (pageInternalId, action, targetDate, status, recur, recurInterval, timezone, createdAt, createdBy, updatedAt, updatedBy)
63
+ VALUES (?, ?, ?, ?, ?, ?, ?, NOW(), ?, NOW(), ?)`, [pageInternalId, action, targetDate, ScheduledPublishStatus.PENDING, recurrence?.recur ?? null, recurrence?.recurInterval ?? null, recurrence?.timezone ?? null, createdBy, createdBy]);
64
+ });
65
+ }
66
+ export async function updateScheduledPublish(id, updates, tdb = db) {
67
+ await tdb.update('UPDATE scheduledpublishes SET action = ?, targetDate = ?, recur = ?, recurInterval = ?, timezone = ?, updatedAt = NOW(), updatedBy = ? WHERE id = ?', [updates.action, updates.targetDate, updates.recur, updates.recurInterval, updates.timezone, updates.updatedBy, id]);
68
+ }
69
+ export async function updateScheduledPublishStatus(id, status, error, tdb = db) {
70
+ const binds = [status, error ?? null, id];
71
+ await tdb.update('UPDATE scheduledpublishes SET status = ?, error = ? WHERE id = ?', binds);
72
+ }
73
+ export async function cancelActiveSchedulesForPages(pageInternalIds, tdb = db) {
74
+ if (!pageInternalIds.length)
75
+ return;
76
+ const binds = [ScheduledPublishStatus.CANCELLED, ScheduledPublishStatus.PENDING];
77
+ await tdb.update(`UPDATE scheduledpublishes SET status = ? WHERE status = ? AND pageInternalId IN (${db.in(binds, pageInternalIds)})`, binds);
78
+ }
79
+ export async function getDueSchedules(tdb = db) {
80
+ const rows = await tdb.getall(`SELECT sp.*, p.dataId AS pageDataId FROM scheduledpublishes sp
81
+ INNER JOIN pages p ON p.id = sp.pageInternalId
82
+ WHERE sp.status = ? AND sp.targetDate <= NOW()
83
+ ORDER BY sp.targetDate ASC`, [ScheduledPublishStatus.PENDING]);
84
+ return rows.map((row) => new ScheduledPublish(row));
85
+ }
86
+ //# sourceMappingURL=scheduledpublish.database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduledpublish.database.js","sourceRoot":"","sources":["../../src/scheduledpublish/scheduledpublish.database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import { ValidatedResponse, type ValidatedResponseArgs } from '@txstate-mws/graphql-server';
2
+ import { DateTime } from 'luxon';
3
+ import { type ScheduledPublishRow, type Page } from '../internal.js';
4
+ export declare enum ScheduledPublishAction {
5
+ PUBLISH = "PUBLISH",
6
+ PUBLISH_WITH_SUBPAGES = "PUBLISH_WITH_SUBPAGES",
7
+ UNPUBLISH = "UNPUBLISH"
8
+ }
9
+ export declare enum ScheduledPublishStatus {
10
+ PENDING = "PENDING",
11
+ COMPLETED = "COMPLETED",
12
+ FAILED = "FAILED",
13
+ CANCELLED = "CANCELLED"
14
+ }
15
+ export declare enum ScheduledPublishRecurrence {
16
+ DAY = "DAY",
17
+ WEEK = "WEEK",
18
+ MONTH = "MONTH"
19
+ }
20
+ export declare class ScheduledPublishRecurrenceInfo {
21
+ type: ScheduledPublishRecurrence;
22
+ interval: number;
23
+ timezone: string;
24
+ constructor(type: ScheduledPublishRecurrence, interval: number, timezone: string);
25
+ }
26
+ export declare class ScheduledPublish {
27
+ id: string;
28
+ internalId: number;
29
+ pageInternalId: number;
30
+ pageDataId: string;
31
+ page?: Page;
32
+ action: ScheduledPublishAction;
33
+ targetDate: DateTime;
34
+ status: ScheduledPublishStatus;
35
+ recurrence?: ScheduledPublishRecurrenceInfo;
36
+ error?: string;
37
+ createdAt: DateTime;
38
+ createdBy: string;
39
+ updatedAt: DateTime;
40
+ updatedBy: string;
41
+ constructor(row: ScheduledPublishRow);
42
+ }
43
+ export declare class ScheduledPublishFilter {
44
+ ids?: string[];
45
+ internalIds?: number[];
46
+ pageIds?: string[];
47
+ pageInternalIds?: number[];
48
+ actions?: ScheduledPublishAction[];
49
+ statuses?: ScheduledPublishStatus[];
50
+ targetDateBefore?: DateTime;
51
+ targetDateAfter?: DateTime;
52
+ }
53
+ export declare class ScheduledPublishRecurrenceInput {
54
+ type: ScheduledPublishRecurrence;
55
+ interval?: number;
56
+ timezone?: string;
57
+ }
58
+ export declare class CreateScheduledPublishInput {
59
+ pageId: string;
60
+ action: ScheduledPublishAction;
61
+ targetDate: DateTime;
62
+ recurrence?: ScheduledPublishRecurrenceInput;
63
+ }
64
+ export declare class UpdateScheduledPublishInput {
65
+ action: ScheduledPublishAction;
66
+ targetDate: DateTime;
67
+ recurrence?: ScheduledPublishRecurrenceInput | null;
68
+ }
69
+ export declare class ScheduledPublishResponse extends ValidatedResponse {
70
+ scheduledPublish?: ScheduledPublish;
71
+ constructor(config?: ValidatedResponseArgs & {
72
+ scheduledPublish?: ScheduledPublish;
73
+ });
74
+ }
75
+ export declare class ScheduledPublishPermissions {
76
+ }