@dosgato/api 1.7.12 → 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 (50) 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 +40 -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/scheduledpublish/scheduledpublish.cron.d.ts +1 -0
  25. package/dist/scheduledpublish/scheduledpublish.cron.js +40 -0
  26. package/dist/scheduledpublish/scheduledpublish.cron.js.map +1 -0
  27. package/dist/scheduledpublish/scheduledpublish.database.d.ts +38 -0
  28. package/dist/scheduledpublish/scheduledpublish.database.js +86 -0
  29. package/dist/scheduledpublish/scheduledpublish.database.js.map +1 -0
  30. package/dist/scheduledpublish/scheduledpublish.model.d.ts +76 -0
  31. package/dist/scheduledpublish/scheduledpublish.model.js +283 -0
  32. package/dist/scheduledpublish/scheduledpublish.model.js.map +1 -0
  33. package/dist/scheduledpublish/scheduledpublish.resolver.d.ts +16 -0
  34. package/dist/scheduledpublish/scheduledpublish.resolver.js +143 -0
  35. package/dist/scheduledpublish/scheduledpublish.resolver.js.map +1 -0
  36. package/dist/scheduledpublish/scheduledpublish.service.d.ts +22 -0
  37. package/dist/scheduledpublish/scheduledpublish.service.js +170 -0
  38. package/dist/scheduledpublish/scheduledpublish.service.js.map +1 -0
  39. package/dist/template/template.model.d.ts +1 -0
  40. package/dist/template/template.model.js +7 -0
  41. package/dist/template/template.model.js.map +1 -1
  42. package/dist/util/authservice.d.ts +1 -0
  43. package/dist/util/authservice.js +5 -0
  44. package/dist/util/authservice.js.map +1 -1
  45. package/dist/versionedservice/service.d.ts +7 -1
  46. package/dist/versionedservice/service.js +67 -17
  47. package/dist/versionedservice/service.js.map +1 -1
  48. package/dist/versionedservice/types.d.ts +4 -1
  49. package/dist/versionedservice/types.js.map +1 -1
  50. package/package.json +2 -2
@@ -0,0 +1,22 @@
1
+ import { BaseService } from '@txstate-mws/graphql-server';
2
+ import { DosGatoService, type ScheduledPublishFilter, type ScheduledPublish, ScheduledPublishResponse, type CreateScheduledPublishInput, type UpdateScheduledPublishInput } from '../internal.js';
3
+ export declare class ScheduledPublishServiceInternal extends BaseService {
4
+ find(filter?: ScheduledPublishFilter): Promise<ScheduledPublish[]>;
5
+ findById(id: number): Promise<ScheduledPublish | undefined>;
6
+ findByPageInternalId(pageInternalId: number, filter?: ScheduledPublishFilter): Promise<ScheduledPublish[]>;
7
+ count(filter?: ScheduledPublishFilter): Promise<number>;
8
+ }
9
+ export declare class ScheduledPublishService extends DosGatoService<ScheduledPublish> {
10
+ raw: ScheduledPublishServiceInternal;
11
+ find(filter?: ScheduledPublishFilter): Promise<ScheduledPublish[]>;
12
+ findById(id: number): Promise<ScheduledPublish | undefined>;
13
+ findByPageInternalId(pageInternalId: number, filter?: ScheduledPublishFilter): Promise<ScheduledPublish[]>;
14
+ count(filter?: ScheduledPublishFilter): Promise<number>;
15
+ mayView(sp: ScheduledPublish): boolean;
16
+ private loadPages;
17
+ create(args: CreateScheduledPublishInput, validateOnly?: boolean): Promise<ScheduledPublishResponse>;
18
+ update(scheduledPublishId: string, args: UpdateScheduledPublishInput, validateOnly?: boolean): Promise<ScheduledPublishResponse>;
19
+ cancel(scheduledPublishId: string): Promise<ScheduledPublishResponse>;
20
+ mayEdit(schedule: ScheduledPublish): Promise<boolean>;
21
+ mayCancel(schedule: ScheduledPublish): Promise<boolean>;
22
+ }
@@ -0,0 +1,170 @@
1
+ import { BaseService, MutationMessageType } from '@txstate-mws/graphql-server';
2
+ import { OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
3
+ import { DateTime } from 'luxon';
4
+ import { DosGatoService, ScheduledPublishStatus, ScheduledPublishAction, ScheduledPublishRecurrence, ScheduledPublishResponse, PageServiceInternal, PageService, getScheduledPublishes, countScheduledPublishes, createScheduledPublish, updateScheduledPublish, updateScheduledPublishStatus } from '../internal.js';
5
+ const scheduledPublishByIdLoader = new PrimaryKeyLoader({
6
+ fetch: async (ids) => {
7
+ return await getScheduledPublishes({ internalIds: ids, statuses: [ScheduledPublishStatus.PENDING, ScheduledPublishStatus.COMPLETED, ScheduledPublishStatus.FAILED, ScheduledPublishStatus.CANCELLED] });
8
+ },
9
+ extractId: (item) => item.internalId
10
+ });
11
+ const scheduledPublishByPageInternalIdLoader = new OneToManyLoader({
12
+ fetch: async (pageInternalIds, filter) => {
13
+ return await getScheduledPublishes({ ...filter, pageInternalIds });
14
+ },
15
+ extractKey: (sp) => sp.pageInternalId,
16
+ idLoader: scheduledPublishByIdLoader
17
+ });
18
+ export class ScheduledPublishServiceInternal extends BaseService {
19
+ async find(filter) {
20
+ const schedules = await getScheduledPublishes(filter);
21
+ for (const sp of schedules) {
22
+ this.loaders.get(scheduledPublishByIdLoader).prime(sp.internalId, sp);
23
+ }
24
+ return schedules;
25
+ }
26
+ async findById(id) {
27
+ return await this.loaders.get(scheduledPublishByIdLoader).load(id);
28
+ }
29
+ async findByPageInternalId(pageInternalId, filter) {
30
+ return await this.loaders.get(scheduledPublishByPageInternalIdLoader, filter).load(pageInternalId);
31
+ }
32
+ async count(filter) {
33
+ return await countScheduledPublishes(filter);
34
+ }
35
+ }
36
+ export class ScheduledPublishService extends DosGatoService {
37
+ raw = this.svc(ScheduledPublishServiceInternal);
38
+ async find(filter) {
39
+ const schedules = await this.raw.find(filter);
40
+ await this.loadPages(schedules);
41
+ return this.removeUnauthorized(schedules);
42
+ }
43
+ async findById(id) {
44
+ const sp = await this.raw.findById(id);
45
+ if (sp)
46
+ await this.loadPages([sp]);
47
+ return this.removeUnauthorized(sp);
48
+ }
49
+ async findByPageInternalId(pageInternalId, filter) {
50
+ const schedules = await this.raw.findByPageInternalId(pageInternalId, filter);
51
+ await this.loadPages(schedules);
52
+ return this.removeUnauthorized(schedules);
53
+ }
54
+ async count(filter) {
55
+ return await this.raw.count(filter);
56
+ }
57
+ mayView(sp) {
58
+ if (!sp.page)
59
+ return false;
60
+ return this.svc(PageService).mayViewForEdit(sp.page);
61
+ }
62
+ async loadPages(schedules) {
63
+ const pageSvc = this.svc(PageServiceInternal);
64
+ await Promise.all(schedules.map(async (sp) => {
65
+ sp.page ??= await pageSvc.findByInternalId(sp.pageInternalId);
66
+ }));
67
+ }
68
+ async create(args, validateOnly) {
69
+ const page = await this.svc(PageServiceInternal).findById(args.pageId);
70
+ if (!page)
71
+ throw new Error('Page not found.');
72
+ const parent = page.parentInternalId ? await this.svc(PageServiceInternal).findByInternalId(page.parentInternalId) : null;
73
+ const pageSvc = this.svc(PageService);
74
+ const response = new ScheduledPublishResponse({ success: true });
75
+ if (args.action === ScheduledPublishAction.UNPUBLISH) {
76
+ if (!await pageSvc.mayScheduleUnpublish(page))
77
+ throw new Error('You are not permitted to schedule an unpublish for this page, or an active unpublish schedule already exists.');
78
+ }
79
+ else {
80
+ if (!await pageSvc.maySchedulePublish(page))
81
+ throw new Error('You are not permitted to schedule a publish for this page, or an active publish schedule already exists.');
82
+ if (parent && !parent.published)
83
+ response.addMessage('This page\'s parent is not published. If the parent page is still not published at the targeted time, this scheduled publish will fail.', 'targetDate', MutationMessageType.warning);
84
+ }
85
+ validate(response, args);
86
+ if (response.hasErrors() || validateOnly)
87
+ return response;
88
+ const recurrence = args.recurrence
89
+ ? { recur: args.recurrence.type, recurInterval: args.recurrence.interval ?? 1, timezone: args.recurrence.timezone ?? process.env.TZ ?? 'America/Chicago' }
90
+ : undefined;
91
+ const id = await createScheduledPublish(page.internalId, args.action, args.targetDate.toJSDate(), this.login, recurrence);
92
+ this.loaders.clear();
93
+ const created = await this.raw.findById(id);
94
+ response.scheduledPublish = created;
95
+ return response;
96
+ }
97
+ async update(scheduledPublishId, args, validateOnly) {
98
+ const schedule = await this.raw.findById(Number(scheduledPublishId));
99
+ if (!schedule || !await this.mayEdit(schedule))
100
+ throw new Error('You are not permitted to edit this schedule.');
101
+ if ((schedule.action === ScheduledPublishAction.UNPUBLISH && args.action !== ScheduledPublishAction.UNPUBLISH) ||
102
+ (schedule.action !== ScheduledPublishAction.UNPUBLISH && args.action === ScheduledPublishAction.UNPUBLISH)) {
103
+ throw new Error('An unpublish schedule cannot be changed to a publish schedule, and vice versa.');
104
+ }
105
+ const response = new ScheduledPublishResponse({ success: true });
106
+ validate(response, args);
107
+ if (response.hasErrors() || validateOnly)
108
+ return response;
109
+ await updateScheduledPublish(schedule.internalId, {
110
+ action: args.action,
111
+ targetDate: args.targetDate.toJSDate(),
112
+ recur: args.recurrence?.type ?? null,
113
+ recurInterval: args.recurrence ? (args.recurrence.interval ?? 1) : null,
114
+ timezone: args.recurrence ? (args.recurrence.timezone ?? process.env.TZ ?? 'America/Chicago') : null,
115
+ updatedBy: this.login
116
+ });
117
+ this.loaders.clear();
118
+ const updated = await this.raw.findById(schedule.internalId);
119
+ response.scheduledPublish = updated;
120
+ return response;
121
+ }
122
+ async cancel(scheduledPublishId) {
123
+ const schedule = await this.raw.findById(Number(scheduledPublishId));
124
+ if (!schedule || !await this.mayCancel(schedule))
125
+ throw new Error('You are not permitted to cancel this schedule.');
126
+ await updateScheduledPublishStatus(schedule.internalId, ScheduledPublishStatus.CANCELLED);
127
+ this.loaders.clear();
128
+ const cancelled = await this.raw.findById(schedule.internalId);
129
+ return new ScheduledPublishResponse({ success: true, scheduledPublish: cancelled });
130
+ }
131
+ async mayEdit(schedule) {
132
+ if (schedule.status !== ScheduledPublishStatus.PENDING)
133
+ return false;
134
+ const page = schedule.page ?? await this.svc(PageServiceInternal).findByInternalId(schedule.pageInternalId);
135
+ if (!page)
136
+ return false;
137
+ if (schedule.action === ScheduledPublishAction.UNPUBLISH) {
138
+ return await this.svc(PageService).mayScheduleUnpublish(page, schedule.internalId);
139
+ }
140
+ else {
141
+ return await this.svc(PageService).maySchedulePublish(page, schedule.internalId);
142
+ }
143
+ }
144
+ async mayCancel(schedule) {
145
+ return await this.mayEdit(schedule);
146
+ }
147
+ }
148
+ const maxRecurInterval = {
149
+ [ScheduledPublishRecurrence.DAY]: 365,
150
+ [ScheduledPublishRecurrence.WEEK]: 52,
151
+ [ScheduledPublishRecurrence.MONTH]: 12
152
+ };
153
+ function validate(response, args) {
154
+ if (args.targetDate <= DateTime.now().plus({ minutes: 5 })) {
155
+ response.addMessage('Target date must be at least 5 minutes in the future.', 'args.targetDate', MutationMessageType.error);
156
+ }
157
+ if (args.targetDate > DateTime.now().plus({ years: 1 })) {
158
+ response.addMessage('Target date may not be more than a year in the future.', 'args.targetDate', MutationMessageType.error);
159
+ }
160
+ if (args.recurrence) {
161
+ const interval = args.recurrence.interval ?? 1;
162
+ if (interval < 1) {
163
+ response.addMessage('Recurrence interval must be at least 1.', 'args.recurrence.interval', MutationMessageType.error);
164
+ }
165
+ else if (interval > maxRecurInterval[args.recurrence.type]) {
166
+ response.addMessage(`Recurrence interval may not exceed ${maxRecurInterval[args.recurrence.type]} for ${args.recurrence.type} recurrence.`, 'args.recurrence.interval', MutationMessageType.error);
167
+ }
168
+ }
169
+ }
170
+ //# sourceMappingURL=scheduledpublish.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduledpublish.service.js","sourceRoot":"","sources":["../../src/scheduledpublish/scheduledpublish.service.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export declare class Template {
16
16
  areas: TemplateArea[];
17
17
  templateProperties?: any;
18
18
  displayCategory?: string;
19
+ templateTheme?: string;
19
20
  _areasByName: Record<string, TemplateArea | undefined>;
20
21
  constructor(row: any);
21
22
  }
@@ -37,6 +37,7 @@ let Template = class Template {
37
37
  areas;
38
38
  templateProperties;
39
39
  displayCategory;
40
+ templateTheme;
40
41
  _areasByName;
41
42
  constructor(row) {
42
43
  this.id = String(row.id);
@@ -52,6 +53,8 @@ let Template = class Template {
52
53
  this.global = tmpl.type === 'data' ? tmpl.global : undefined;
53
54
  if (tmpl.type === 'page')
54
55
  this.templateProperties = tmpl.templateProperties;
56
+ if (tmpl.type === 'page')
57
+ this.templateTheme = tmpl.templateTheme;
55
58
  this.nopublish = (tmpl.type === 'data') ? !!tmpl.nopublish : false;
56
59
  }
57
60
  };
@@ -95,6 +98,10 @@ __decorate([
95
98
  Field({ nullable: true, description: 'Category underneath which this template should be displayed when asking a user to choose a template.' }),
96
99
  __metadata("design:type", String)
97
100
  ], Template.prototype, "displayCategory", void 0);
101
+ __decorate([
102
+ Field({ nullable: true, description: 'If this page template belongs to a certain theme, this will be the name of that theme. This is just informational and can be used by the front end to group templates by theme. It has no bearing on the actual rendering of the page.' }),
103
+ __metadata("design:type", String)
104
+ ], Template.prototype, "templateTheme", void 0);
98
105
  Template = __decorate([
99
106
  ObjectType({
100
107
  description: `Each page, component, and data entry has a template that defines its
@@ -1 +1 @@
1
- {"version":3,"file":"template.model.js","sourceRoot":"","sources":["../../src/template/template.model.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACjF,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE1E,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,uCAAuB,CAAA;IACvB,6BAAa,CAAA;AACf,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AACD,gBAAgB,CAAC,YAAY,EAAE;IAC7B,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,sEAAsE;IACnF,YAAY,EAAE;QACZ,IAAI,EAAE,EAAE,WAAW,EAAE,oCAAoC,EAAE;QAC3D,SAAS,EAAE,EAAE,WAAW,EAAE,yCAAyC,EAAE;QACrE,IAAI,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE;KAC1D;CACF,CAAC,CAAA;AAUK,IAAM,QAAQ,GAAd,MAAM,QAAQ;IACnB,EAAE,CAAQ;IAGV,GAAG,CAAQ;IAGX,IAAI,CAAQ;IAGZ,IAAI,CAAc;IAGlB,MAAM,CAAU;IAGhB,SAAS,CAAS;IAGlB,SAAS,CAAS;IAGlB,OAAO,CAAS;IAGhB,KAAK,CAAgB;IAGrB,kBAAkB,CAAM;IAGxB,eAAe,CAAS;IAExB,YAAY,CAA0C;IAEtD,YAAa,GAAQ;QACnB,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACxB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QAClB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAA;QAChC,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAA;QAC3C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAA;QACrH,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;QAC5D,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAA;QAC3E,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;IACpE,CAAC;CACF,CAAA;AA9CC;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,qXAAqX,EAAE,CAAC;;qCAC/Y;AAGX;IADC,KAAK,CAAC,EAAE,WAAW,EAAE,iDAAiD,EAAE,CAAC;;sCAC9D;AAGZ;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC;;sCACV;AAGlB;IADC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,+KAA+K,EAAE,CAAC;;wCACxM;AAGhB;IADC,KAAK,CAAC,EAAE,WAAW,EAAE,qFAAqF,EAAE,CAAC;;2CAC5F;AAGlB;IADC,KAAK,CAAC,EAAE,WAAW,EAAE,2HAA2H,EAAE,CAAC;;2CAClI;AAGlB;IADC,KAAK,CAAC,EAAE,WAAW,EAAE,qGAAqG,EAAE,CAAC;;yCAC9G;AAGhB;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,6OAA6O,EAAE,CAAC;;uCACzQ;AAGrB;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4cAA4c,EAAE,CAAC;;oDAC/e;AAGxB;IADC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,sGAAsG,EAAE,CAAC;;iDACvH;AA/Bb,QAAQ;IARpB,UAAU,CAAC;QACV,WAAW,EAAE;;;;;kDAKmC;KACjD,CAAC;;GACW,QAAQ,CAkDpB;;AAGM,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,GAAG,CAAW;IAGd,IAAI,CAAW;IAGf,KAAK,CAAkB;IAGvB,KAAK,CAAiB;IAGtB,SAAS,CAAU;CACpB,CAAA;AAVC;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACzB;AAGf;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CAC5B;AAGvB;IADC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CAC5B;AAGtB;IADC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACP;AAbR,cAAc;IAD1B,SAAS,EAAE;GACC,cAAc,CAc1B;;AAGM,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CAAG,CAAA;AAAtB,mBAAmB;IAD/B,UAAU,EAAE;GACA,mBAAmB,CAAG;;AAG5B,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEvB,IAAI,CAAQ;IAEZ,sBAAsB,CAAa;IACnC,mBAAmB,CAAU;IAE7B,YAAa,IAAY,EAAE,mBAA6B;QACtD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;QAC9C,IAAI,CAAC,sBAAsB,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAA;IAC5D,CAAC;IAED,qBAAqB,CAAE,kBAA0B;QAC/C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QACnD,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACpE,CAAC;CACF,CAAA;AAfC;IADC,KAAK,EAAE;;0CACI;AAFD,YAAY;IADxB,UAAU,EAAE;;GACA,YAAY,CAiBxB"}
1
+ {"version":3,"file":"template.model.js","sourceRoot":"","sources":["../../src/template/template.model.ts"],"names":[],"mappings":"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"}
@@ -20,3 +20,4 @@ export declare abstract class DosGatoService<ObjType, RedactedType = ObjType> ex
20
20
  }
21
21
  export declare function getEnabledUser(ctx: DGContext): Promise<import("../internal.js").User>;
22
22
  export declare function systemContext(): Promise<DGContext>;
23
+ export declare function userContext(login: string): Promise<DGContext>;
@@ -80,4 +80,9 @@ export async function systemContext() {
80
80
  await ctx.waitForAuth();
81
81
  return ctx;
82
82
  }
83
+ export async function userContext(login) {
84
+ const ctx = new DGMockContext({ sub: login });
85
+ await ctx.waitForAuth();
86
+ return ctx;
87
+ }
83
88
  //# sourceMappingURL=authservice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"authservice.js","sourceRoot":"","sources":["../../src/util/authservice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authservice.js","sourceRoot":"","sources":["../../src/util/authservice.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ export declare class VersionedService extends BaseService {
97
97
  comment?: string;
98
98
  version?: number;
99
99
  date?: Date;
100
- }, tdb?: Queryable): Promise<void>;
100
+ }, tdb?: Queryable): Promise<number>;
101
101
  /**
102
102
  * Restore a previous version of the object. Creates a new version. You could do
103
103
  * this with a .get and subsequent .update, but this is here for convenience.
@@ -196,6 +196,12 @@ export declare class VersionedService extends BaseService {
196
196
  * and greater will be retained. Make sure any tags you use are managed carefully.
197
197
  */
198
198
  static deleteOldVersions(olderThan: Date): Promise<void>;
199
+ /**
200
+ * Delete all index rows for an object except those belonging to the specified versions.
201
+ * This is useful for pruning indexes that will never be queried again, e.g. intermediate
202
+ * draft versions between the published version and the latest version.
203
+ */
204
+ deleteOtherIndexes(id: number, keepVersions: number[], tdb?: Queryable): Promise<void>;
199
205
  /**
200
206
  * internal method to defragment and optimize the database tables
201
207
  */
@@ -2,11 +2,11 @@
2
2
  import { BaseService } from '@txstate-mws/graphql-server';
3
3
  import { ManyJoinedLoader, OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
4
4
  import jsonPatch from 'fast-json-patch';
5
+ import { DateTime } from 'luxon';
5
6
  import db from 'mysql2-async/db';
6
7
  import { createHash } from 'node:crypto';
7
- import { clone, intersect } from 'txstate-utils';
8
+ import { batch, clone, intersect } from 'txstate-utils';
8
9
  import { NotFoundError, UpdateConflictError } from '../internal.js';
9
- import { DateTime } from 'luxon';
10
10
  const { applyPatch, compare } = jsonPatch;
11
11
  const storageLoader = new PrimaryKeyLoader({
12
12
  fetch: async (ids) => {
@@ -298,6 +298,35 @@ export class VersionedService extends BaseService {
298
298
  where.push('v.value LIKE ?');
299
299
  binds.push(zerofill(rule.startsWith) + '%');
300
300
  }
301
+ else if ('allIn' in rule) {
302
+ if (!rule.allIn.length)
303
+ return [];
304
+ const chunks = batch(rule.allIn.map(v => zerofill(v)), 500);
305
+ const chunkResults = await Promise.all(chunks.map(async (chunk) => {
306
+ const chunkWhere = [...permwhere, 'n.name=?'];
307
+ const chunkBinds = [...permbinds, rule.indexName];
308
+ const [checksums, smallvals] = sortChecksums(chunk);
309
+ const ors = [];
310
+ if (checksums.length)
311
+ ors.push(`v.checksum IN (${unhexIn(chunkBinds, checksums)})`);
312
+ if (smallvals.length)
313
+ ors.push(`v.value IN (${db.in(chunkBinds, smallvals)})`);
314
+ if (ors.length)
315
+ chunkWhere.push(ors.join(' OR '));
316
+ return await tdb.getvals(`
317
+ SELECT CAST(s.id AS CHAR(50))
318
+ FROM storage s
319
+ INNER JOIN indexes i ON i.id=s.id
320
+ INNER JOIN indexnames n ON i.name_id=n.id
321
+ INNER JOIN indexvalues v ON i.value_id=v.id
322
+ ${join.join('\n')}
323
+ WHERE (${chunkWhere.join(') AND (')})
324
+ GROUP BY s.id
325
+ HAVING COUNT(DISTINCT v.value) = ${chunk.length}
326
+ `, chunkBinds);
327
+ }));
328
+ return intersect(...chunkResults);
329
+ }
301
330
  return await tdb.getvals(`
302
331
  SELECT DISTINCT CAST(s.id AS CHAR(50))
303
332
  FROM storage s
@@ -456,13 +485,13 @@ export class VersionedService extends BaseService {
456
485
  VALUES (?, ?, ?, ?, ?, ?, ?)
457
486
  `, [current.id, current.version, current.modified, current.markedAt ?? null, current.modifiedBy, current.comment, JSON.stringify(undo)]);
458
487
  await this._setIndexes(current.id, newversion, indexes, db);
488
+ return newversion;
459
489
  }
490
+ return current.version;
460
491
  };
461
- if (tdb)
462
- await action(tdb);
463
- else
464
- await db.transaction(action, { retries: 2 });
492
+ const newversion = tdb ? await action(tdb) : await db.transaction(action, { retries: 2 });
465
493
  this.loaders.get(storageLoader).clear(id);
494
+ return newversion;
466
495
  }
467
496
  /**
468
497
  * Restore a previous version of the object. Creates a new version. You could do
@@ -686,6 +715,21 @@ export class VersionedService extends BaseService {
686
715
  await this.cleanIndexValues();
687
716
  await this.optimize();
688
717
  }
718
+ /**
719
+ * Delete all index rows for an object except those belonging to the specified versions.
720
+ * This is useful for pruning indexes that will never be queried again, e.g. intermediate
721
+ * draft versions between the published version and the latest version.
722
+ */
723
+ async deleteOtherIndexes(id, keepVersions, tdb = db) {
724
+ if (!keepVersions.length)
725
+ return;
726
+ const binds = [id];
727
+ await tdb.execute(`DELETE FROM indexes WHERE id=? AND version NOT IN (${tdb.in(binds, keepVersions)})`, binds);
728
+ (async () => {
729
+ await VersionedService.cleanIndexValues();
730
+ await VersionedService.optimize();
731
+ })().catch(console.error);
732
+ }
689
733
  /**
690
734
  * internal method to defragment and optimize the database tables
691
735
  */
@@ -694,16 +738,19 @@ export class VersionedService extends BaseService {
694
738
  return;
695
739
  try {
696
740
  VersionedService.optimizingTables = true;
697
- const tables = await db.getvals(`
698
- SELECT table_name
699
- FROM information_schema.tables
700
- WHERE data_free > 50*1024*1024 AND data_free / data_length > 0.25
701
- AND table_schema=DATABASE()
702
- AND table_name IN ('storage','versions','tags','indexes','indexvalues')
703
- order by data_free
704
- `);
705
- for (const table of tables)
706
- await db.execute(`OPTIMIZE TABLE ${table}`);
741
+ await db.transaction(async (db) => {
742
+ const tables = await db.getall(`
743
+ SELECT table_name, data_free, data_length
744
+ FROM information_schema.tables
745
+ WHERE table_schema=DATABASE()
746
+ AND table_name IN ('storage','versions','tags','indexes','indexvalues')
747
+ order by data_free
748
+ FOR UPDATE
749
+ `);
750
+ const tablesToOptimize = tables.filter(table => table.data_free > 50 * 1024 * 1024 && table.data_free / table.data_length > 0.25);
751
+ for (const table of tablesToOptimize)
752
+ await db.execute(`OPTIMIZE TABLE ${table.table_name}`);
753
+ });
707
754
  }
708
755
  finally {
709
756
  VersionedService.optimizingTables = false;
@@ -718,7 +765,10 @@ export class VersionedService extends BaseService {
718
765
  return;
719
766
  try {
720
767
  VersionedService.cleaningIndexValues = true;
721
- await db.execute('DELETE v FROM indexvalues v LEFT JOIN indexes i ON v.id=i.value_id WHERE i.value_id IS NULL');
768
+ await db.transaction(async (db) => {
769
+ await db.execute('SELECT * FROM dbversion FOR UPDATE');
770
+ await db.execute('DELETE v FROM indexvalues v LEFT JOIN indexes i ON v.id=i.value_id WHERE i.value_id IS NULL');
771
+ });
722
772
  }
723
773
  finally {
724
774
  VersionedService.cleaningIndexValues = false;
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/versionedservice/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/versionedservice/service.ts"],"names":[],"mappings":"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"}
@@ -80,7 +80,10 @@ export interface SearchNotInRule extends SearchBaseRule {
80
80
  export interface SearchStartsWithRule extends SearchBaseRule {
81
81
  startsWith: string | number;
82
82
  }
83
- export type SearchRule = SearchEqualRule | SearchNotEqualRule | SearchInRule | SearchNotInRule | SearchGreaterRule | SearchLessRule | SearchStartsWithRule;
83
+ export interface SearchAllInRule extends SearchBaseRule {
84
+ allIn: (string | number)[];
85
+ }
86
+ export type SearchRule = SearchEqualRule | SearchNotEqualRule | SearchInRule | SearchNotInRule | SearchGreaterRule | SearchLessRule | SearchStartsWithRule | SearchAllInRule;
84
87
  export declare class NotFoundError extends Error {
85
88
  constructor(message?: string);
86
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/versionedservice/types.ts"],"names":[],"mappings":"AA4FA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAa,OAAgB;QAC3B,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAC,CAAA;IACvC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAa,EAAU;QACrB,KAAK,CAAC,oCAAoC,EAAE,4DAA4D,CAAC,CAAA;IAC3G,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/versionedservice/types.ts"],"names":[],"mappings":"AA+FA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAa,OAAgB;QAC3B,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAC,CAAA;IACvC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAa,EAAU;QACrB,KAAK,CAAC,oCAAoC,EAAE,4DAA4D,CAAC,CAAA;IAC3G,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dosgato/api",
3
- "version": "1.7.12",
3
+ "version": "1.8.0",
4
4
  "description": "A CMS designed for large institutions with thousands of editors and hundreds of subsites.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "types": "./dist/index.d.ts",
10
10
  "dependencies": {
11
- "@dosgato/templating": "^1.1.4",
11
+ "@dosgato/templating": "^1.1.15",
12
12
  "@fastify/multipart": "^8.0.0",
13
13
  "@txstate-mws/graphql-server": "^2.3.7",
14
14
  "archiver": "^7.0.1",