@dosgato/api 1.2.3 → 1.3.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 (147) hide show
  1. package/dist/access/access.resolver.d.ts +11 -11
  2. package/dist/access/access.resolver.js +33 -33
  3. package/dist/access/access.resolver.js.map +1 -1
  4. package/dist/asset/asset.database.js +26 -13
  5. package/dist/asset/asset.database.js.map +1 -1
  6. package/dist/asset/asset.model.d.ts +3 -0
  7. package/dist/asset/asset.model.js +1 -0
  8. package/dist/asset/asset.model.js.map +1 -1
  9. package/dist/asset/asset.resolver.d.ts +6 -6
  10. package/dist/asset/asset.resolver.js +18 -18
  11. package/dist/asset/asset.resolver.js.map +1 -1
  12. package/dist/asset/asset.routes.js +30 -35
  13. package/dist/asset/asset.routes.js.map +1 -1
  14. package/dist/asset/asset.service.d.ts +8 -8
  15. package/dist/asset/asset.service.js +52 -64
  16. package/dist/asset/asset.service.js.map +1 -1
  17. package/dist/assetfolder/assetfolder.database.js +23 -10
  18. package/dist/assetfolder/assetfolder.database.js.map +1 -1
  19. package/dist/assetfolder/assetfolder.model.d.ts +2 -0
  20. package/dist/assetfolder/assetfolder.model.js.map +1 -1
  21. package/dist/assetfolder/assetfolder.resolver.d.ts +6 -6
  22. package/dist/assetfolder/assetfolder.resolver.js +18 -18
  23. package/dist/assetfolder/assetfolder.resolver.js.map +1 -1
  24. package/dist/assetfolder/assetfolder.service.d.ts +9 -9
  25. package/dist/assetfolder/assetfolder.service.js +41 -52
  26. package/dist/assetfolder/assetfolder.service.js.map +1 -1
  27. package/dist/assetrule/assetrule.service.d.ts +2 -2
  28. package/dist/assetrule/assetrule.service.js +14 -16
  29. package/dist/assetrule/assetrule.service.js.map +1 -1
  30. package/dist/data/data.database.js +7 -7
  31. package/dist/data/data.database.js.map +1 -1
  32. package/dist/data/data.model.d.ts +3 -0
  33. package/dist/data/data.model.js +4 -1
  34. package/dist/data/data.model.js.map +1 -1
  35. package/dist/data/data.resolver.d.ts +8 -8
  36. package/dist/data/data.resolver.js +25 -25
  37. package/dist/data/data.resolver.js.map +1 -1
  38. package/dist/data/data.service.d.ts +11 -12
  39. package/dist/data/data.service.js +49 -62
  40. package/dist/data/data.service.js.map +1 -1
  41. package/dist/datafolder/datafolder.database.js +2 -1
  42. package/dist/datafolder/datafolder.database.js.map +1 -1
  43. package/dist/datafolder/datafolder.model.d.ts +2 -0
  44. package/dist/datafolder/datafolder.model.js +2 -0
  45. package/dist/datafolder/datafolder.model.js.map +1 -1
  46. package/dist/datafolder/datafolder.resolver.d.ts +6 -6
  47. package/dist/datafolder/datafolder.resolver.js +18 -18
  48. package/dist/datafolder/datafolder.resolver.js.map +1 -1
  49. package/dist/datafolder/datafolder.service.d.ts +7 -7
  50. package/dist/datafolder/datafolder.service.js +41 -45
  51. package/dist/datafolder/datafolder.service.js.map +1 -1
  52. package/dist/dataroot/dataroot.resolver.d.ts +1 -1
  53. package/dist/dataroot/dataroot.resolver.js +3 -3
  54. package/dist/dataroot/dataroot.resolver.js.map +1 -1
  55. package/dist/dataroot/dataroot.service.d.ts +3 -3
  56. package/dist/dataroot/dataroot.service.js +8 -8
  57. package/dist/dataroot/dataroot.service.js.map +1 -1
  58. package/dist/datarule/datarule.model.d.ts +1 -0
  59. package/dist/datarule/datarule.model.js +2 -1
  60. package/dist/datarule/datarule.model.js.map +1 -1
  61. package/dist/datarule/datarule.service.d.ts +4 -4
  62. package/dist/datarule/datarule.service.js +18 -21
  63. package/dist/datarule/datarule.service.js.map +1 -1
  64. package/dist/globalrule/globalrule.service.d.ts +3 -3
  65. package/dist/globalrule/globalrule.service.js +13 -21
  66. package/dist/globalrule/globalrule.service.js.map +1 -1
  67. package/dist/group/group.resolver.d.ts +2 -2
  68. package/dist/group/group.resolver.js +6 -6
  69. package/dist/group/group.resolver.js.map +1 -1
  70. package/dist/group/group.service.d.ts +7 -7
  71. package/dist/group/group.service.js +46 -49
  72. package/dist/group/group.service.js.map +1 -1
  73. package/dist/index.d.ts +1 -2
  74. package/dist/index.js +9 -7
  75. package/dist/index.js.map +1 -1
  76. package/dist/organization/organization.service.d.ts +2 -2
  77. package/dist/organization/organization.service.js +7 -7
  78. package/dist/organization/organization.service.js.map +1 -1
  79. package/dist/page/page.bootstrap.js +3 -3
  80. package/dist/page/page.bootstrap.js.map +1 -1
  81. package/dist/page/page.database.js +28 -14
  82. package/dist/page/page.database.js.map +1 -1
  83. package/dist/page/page.model.d.ts +2 -0
  84. package/dist/page/page.model.js.map +1 -1
  85. package/dist/page/page.resolver.d.ts +8 -8
  86. package/dist/page/page.resolver.js +24 -24
  87. package/dist/page/page.resolver.js.map +1 -1
  88. package/dist/page/page.routes.js +34 -40
  89. package/dist/page/page.routes.js.map +1 -1
  90. package/dist/page/page.service.d.ts +20 -16
  91. package/dist/page/page.service.js +80 -105
  92. package/dist/page/page.service.js.map +1 -1
  93. package/dist/pagerule/pagerule.service.d.ts +2 -2
  94. package/dist/pagerule/pagerule.service.js +15 -18
  95. package/dist/pagerule/pagerule.service.js.map +1 -1
  96. package/dist/pagetree/pagetree.resolver.d.ts +5 -5
  97. package/dist/pagetree/pagetree.resolver.js +18 -18
  98. package/dist/pagetree/pagetree.resolver.js.map +1 -1
  99. package/dist/pagetree/pagetree.service.d.ts +5 -7
  100. package/dist/pagetree/pagetree.service.js +26 -72
  101. package/dist/pagetree/pagetree.service.js.map +1 -1
  102. package/dist/role/role.resolver.d.ts +3 -3
  103. package/dist/role/role.resolver.js +9 -9
  104. package/dist/role/role.resolver.js.map +1 -1
  105. package/dist/role/role.service.d.ts +6 -7
  106. package/dist/role/role.service.js +32 -32
  107. package/dist/role/role.service.js.map +1 -1
  108. package/dist/site/site.database.js +3 -7
  109. package/dist/site/site.database.js.map +1 -1
  110. package/dist/site/site.resolver.d.ts +7 -7
  111. package/dist/site/site.resolver.js +30 -30
  112. package/dist/site/site.resolver.js.map +1 -1
  113. package/dist/site/site.service.d.ts +13 -11
  114. package/dist/site/site.service.js +50 -57
  115. package/dist/site/site.service.js.map +1 -1
  116. package/dist/sitecomment/sitecomment.routes.js +3 -4
  117. package/dist/sitecomment/sitecomment.routes.js.map +1 -1
  118. package/dist/sitecomment/sitecomment.service.d.ts +1 -1
  119. package/dist/sitecomment/sitecomment.service.js +5 -9
  120. package/dist/sitecomment/sitecomment.service.js.map +1 -1
  121. package/dist/siterule/siterule.service.d.ts +2 -2
  122. package/dist/siterule/siterule.service.js +13 -15
  123. package/dist/siterule/siterule.service.js.map +1 -1
  124. package/dist/template/template.resolver.d.ts +2 -2
  125. package/dist/template/template.resolver.js +6 -6
  126. package/dist/template/template.resolver.js.map +1 -1
  127. package/dist/template/template.service.d.ts +4 -4
  128. package/dist/template/template.service.js +21 -25
  129. package/dist/template/template.service.js.map +1 -1
  130. package/dist/templaterule/templaterule.service.d.ts +2 -2
  131. package/dist/templaterule/templaterule.service.js +11 -13
  132. package/dist/templaterule/templaterule.service.js.map +1 -1
  133. package/dist/user/user.service.d.ts +6 -6
  134. package/dist/user/user.service.js +30 -31
  135. package/dist/user/user.service.js.map +1 -1
  136. package/dist/util/authservice.d.ts +18 -28
  137. package/dist/util/authservice.js +29 -152
  138. package/dist/util/authservice.js.map +1 -1
  139. package/dist/util/context.d.ts +24 -0
  140. package/dist/util/context.js +105 -0
  141. package/dist/util/context.js.map +1 -0
  142. package/dist/util/index.d.ts +2 -0
  143. package/dist/util/index.js +4 -0
  144. package/dist/util/index.js.map +1 -1
  145. package/dist/version/version.resolver.js +3 -3
  146. package/dist/version/version.resolver.js.map +1 -1
  147. package/package.json +2 -2
@@ -29,11 +29,11 @@ export declare class GroupService extends DosGatoService<Group> {
29
29
  setGroupUsers(groupId: string, userIds: string[]): Promise<ValidatedResponse>;
30
30
  addSubgroup(parentId: string, childId: string): Promise<ValidatedResponse>;
31
31
  removeSubgroup(parentId: string, childId: string): Promise<ValidatedResponse>;
32
- mayView(group: Group): Promise<boolean>;
33
- mayViewManagerUI(): Promise<boolean>;
34
- mayCreate(): Promise<boolean>;
35
- mayUpdate(group: Group): Promise<boolean>;
36
- mayDelete(group: Group): Promise<boolean>;
37
- mayManageUsers(group: Group): Promise<boolean>;
38
- mayManageGroups(group: Group): Promise<boolean>;
32
+ mayView(group: Group): boolean;
33
+ mayViewManagerUI(): boolean;
34
+ mayCreate(): boolean;
35
+ mayUpdate(group: Group): boolean;
36
+ mayDelete(group: Group): boolean;
37
+ mayManageUsers(group: Group): boolean;
38
+ mayManageGroups(group: Group): boolean;
39
39
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
2
2
  import { ManyJoinedLoader, PrimaryKeyLoader } from 'dataloader-factory';
3
- import { unique, isNotNull, someAsync, mapConcurrent } from 'txstate-utils';
3
+ import { unique, isNotNull, mapConcurrent } from 'txstate-utils';
4
4
  import { GroupResponse, getGroups, getGroupsWithUser, getGroupsWithRole, groupHierarchyCache, createGroup, updateGroup, deleteGroup, addUserToGroups, removeUserFromGroups, removeSubgroup, addSubgroup, groupNameIsUnique, UserService, DosGatoService, setUserGroups, setGroupUsers } from '../internal.js';
5
5
  const groupsByIdLoader = new PrimaryKeyLoader({
6
6
  fetch: async (ids) => {
@@ -94,28 +94,28 @@ export class GroupService extends DosGatoService {
94
94
  this.raw = this.svc(GroupServiceInternal);
95
95
  }
96
96
  async find(filter) {
97
- return await this.removeUnauthorized(await this.raw.find(filter));
97
+ return this.removeUnauthorized(await this.raw.find(filter));
98
98
  }
99
99
  async findById(id) {
100
- return await this.removeUnauthorized(await this.raw.findById(id));
100
+ return this.removeUnauthorized(await this.raw.findById(id));
101
101
  }
102
102
  async findByUserId(userId, direct) {
103
- return await this.removeUnauthorized(await this.raw.findByUserId(userId, direct));
103
+ return this.removeUnauthorized(await this.raw.findByUserId(userId, direct));
104
104
  }
105
105
  async getSubgroups(groupId, recursive = true) {
106
- return await this.removeUnauthorized(await this.raw.getSubgroups(groupId, recursive));
106
+ return this.removeUnauthorized(await this.raw.getSubgroups(groupId, recursive));
107
107
  }
108
108
  async getAllSubs(groupIds) {
109
- return await this.removeUnauthorized(await this.raw.getAllSubs(groupIds));
109
+ return this.removeUnauthorized(await this.raw.getAllSubs(groupIds));
110
110
  }
111
111
  async getSuperGroups(groupId, recursive = true) {
112
- return await this.removeUnauthorized(await this.raw.getSuperGroups(groupId, recursive));
112
+ return this.removeUnauthorized(await this.raw.getSuperGroups(groupId, recursive));
113
113
  }
114
114
  async getAllSupers(groupIds) {
115
- return await this.removeUnauthorized(await this.raw.getAllSupers(groupIds));
115
+ return this.removeUnauthorized(await this.raw.getAllSupers(groupIds));
116
116
  }
117
117
  async findByRoleId(roleId, direct, filter) {
118
- return await this.removeUnauthorized(await this.raw.findByRoleId(roleId, direct, filter));
118
+ return this.removeUnauthorized(await this.raw.findByRoleId(roleId, direct, filter));
119
119
  }
120
120
  async create(name, parentId, validateOnly) {
121
121
  let parentGroup;
@@ -124,8 +124,8 @@ export class GroupService extends DosGatoService {
124
124
  if (!parentGroup)
125
125
  throw new Error('Parent group does not exist.');
126
126
  }
127
- if (!(await this.mayCreate()))
128
- throw new Error('Current user is not permitted to create groups.');
127
+ if (!this.mayCreate())
128
+ throw new Error('You are not permitted to create groups.');
129
129
  if (!(await groupNameIsUnique(name))) {
130
130
  const response = new GroupResponse({});
131
131
  response.addMessage(`Group ${name} already exists.`, 'name');
@@ -147,8 +147,8 @@ export class GroupService extends DosGatoService {
147
147
  const group = await this.findById(id);
148
148
  if (!group)
149
149
  throw new Error('Group to be updated does not exist.');
150
- if (!(await this.mayUpdate(group)))
151
- throw new Error('Current user is not permitted to update group names.');
150
+ if (!this.mayUpdate(group))
151
+ throw new Error('You are not permitted to update group names.');
152
152
  const response = new GroupResponse({ success: true });
153
153
  if (name !== group.name && !(await groupNameIsUnique(name))) {
154
154
  response.addMessage(`Group ${name} already exists.`, 'name');
@@ -165,8 +165,8 @@ export class GroupService extends DosGatoService {
165
165
  const group = await this.findById(id);
166
166
  if (!group)
167
167
  throw new Error('Group to be deleted does not exist.');
168
- if (!(await this.mayDelete(group)))
169
- throw new Error('Current user is not permitted to delete groups.');
168
+ if (!this.mayDelete(group))
169
+ throw new Error('You are not permitted to delete groups.');
170
170
  try {
171
171
  await deleteGroup(id);
172
172
  await groupHierarchyCache.clear();
@@ -179,42 +179,42 @@ export class GroupService extends DosGatoService {
179
179
  }
180
180
  async addUserToGroups(groupIds, userId) {
181
181
  const groups = (await Promise.all(groupIds.map(async (id) => await this.raw.findById(id)))).filter(isNotNull);
182
- if (await someAsync(groups, async (g) => !(await this.mayManageUsers(g)))) {
183
- throw new Error('Current user is not permitted to add user to one or more groups.');
182
+ if (groups.some(g => !this.mayManageUsers(g))) {
183
+ throw new Error('You are not permitted to add user to one or more groups.');
184
184
  }
185
185
  const user = await this.svc(UserService).findById(userId);
186
186
  if (!user)
187
- throw new Error('Cannot add user who does not exist');
187
+ throw new Error('Cannot add user who does not exist.');
188
188
  try {
189
189
  await addUserToGroups(groups.map(g => g.id), user.internalId);
190
190
  return new ValidatedResponse({ success: true });
191
191
  }
192
192
  catch (err) {
193
193
  console.error(err);
194
- throw new Error('Unable to add user to one or more groups');
194
+ throw new Error('Unable to add user to one or more groups.');
195
195
  }
196
196
  }
197
197
  async removeUserFromGroup(groupIds, userId) {
198
198
  const groups = (await Promise.all(groupIds.map(async (id) => await this.raw.findById(id)))).filter(isNotNull);
199
- if (await someAsync(groups, async (g) => !(await this.mayManageUsers(g)))) {
200
- throw new Error('Current user is not permitted to remove user from one or more groups.');
199
+ if (groups.some(g => !this.mayManageUsers(g))) {
200
+ throw new Error('You are not permitted to remove user from one or more groups.');
201
201
  }
202
202
  const user = await this.svc(UserService).findById(userId);
203
203
  if (!user)
204
- throw new Error('Cannot add user who does not exist');
204
+ throw new Error('Cannot add user who does not exist.');
205
205
  try {
206
206
  const removed = await removeUserFromGroups(groupIds, user.internalId);
207
207
  return new ValidatedResponse({ success: true });
208
208
  }
209
209
  catch (err) {
210
210
  console.error(err);
211
- throw new Error('Unable to remove user from one or more groups');
211
+ throw new Error('Unable to remove user from one or more groups.');
212
212
  }
213
213
  }
214
214
  async setUserGroups(userId, groupIds) {
215
215
  const groups = (await Promise.all(groupIds.map(async (id) => await this.raw.findById(id)))).filter(isNotNull);
216
- if (await someAsync(groups, async (g) => !(await this.mayManageUsers(g)))) {
217
- throw new Error('Current user is not permitted to manage users for one or more groups.');
216
+ if (groups.some(g => !this.mayManageUsers(g))) {
217
+ throw new Error('You are not permitted to manage users for one or more groups.');
218
218
  }
219
219
  const user = await this.svc(UserService).findById(userId);
220
220
  if (!user)
@@ -232,8 +232,8 @@ export class GroupService extends DosGatoService {
232
232
  const group = await this.findById(groupId);
233
233
  if (!group)
234
234
  throw new Error('Group to be deleted does not exist.');
235
- if (!(await this.mayManageUsers(group))) {
236
- throw new Error('Current user is not permitted to manage users for this group.');
235
+ if (!this.mayManageUsers(group)) {
236
+ throw new Error('You are not permitted to manage users for this group.');
237
237
  }
238
238
  const users = (await mapConcurrent(userIds, async (id) => await this.svc(UserService).findById(id))).filter(isNotNull);
239
239
  if (!users.length)
@@ -250,8 +250,8 @@ export class GroupService extends DosGatoService {
250
250
  throw new Error('Group to be updated does not exist.');
251
251
  if (!childGroup)
252
252
  throw new Error('Group to be added as a subgroup does not exist.');
253
- if (!(await this.mayManageGroups(parentGroup)))
254
- throw new Error(`Current user is not permitted add a subgroup to group ${parentGroup.name}.`);
253
+ if (!this.mayManageGroups(parentGroup))
254
+ throw new Error(`You are not permitted add a subgroup to group ${parentGroup.name}.`);
255
255
  try {
256
256
  await addSubgroup(parentId, childId);
257
257
  await groupHierarchyCache.clear();
@@ -271,8 +271,8 @@ export class GroupService extends DosGatoService {
271
271
  throw new Error('Group to be updated does not exist.');
272
272
  if (!childGroup)
273
273
  throw new Error('Group to be added as a subgroup does not exist.');
274
- if (!(await this.mayManageGroups(parentGroup)))
275
- throw new Error(`Current user is not permitted remove subgroups from group ${parentGroup.name}.`);
274
+ if (!this.mayManageGroups(parentGroup))
275
+ throw new Error(`You are not permitted remove subgroups from group ${parentGroup.name}.`);
276
276
  try {
277
277
  const removed = await removeSubgroup(parentId, childId);
278
278
  if (removed) {
@@ -290,31 +290,28 @@ export class GroupService extends DosGatoService {
290
290
  throw new Error(`An unknown error occurred while removing subgroup ${childGroup.name} from group ${parentGroup.name}.`);
291
291
  }
292
292
  }
293
- async mayView(group) {
294
- if (await this.haveGlobalPerm('manageAccess'))
293
+ mayView(group) {
294
+ if (this.haveGlobalPerm('manageAccess'))
295
295
  return true;
296
- return !!(await this.currentGroupsById(group.id));
296
+ return !!this.ctx.authInfo.groupsById[group.id];
297
297
  }
298
- async mayViewManagerUI() {
299
- const user = await this.currentUser();
300
- if (!user)
301
- return false;
302
- return await this.haveGlobalPerm('manageAccess');
298
+ mayViewManagerUI() {
299
+ return this.haveGlobalPerm('manageAccess');
303
300
  }
304
- async mayCreate() {
305
- return await this.haveGlobalPerm('manageAccess');
301
+ mayCreate() {
302
+ return this.haveGlobalPerm('manageAccess');
306
303
  }
307
- async mayUpdate(group) {
308
- return await this.haveGlobalPerm('manageAccess');
304
+ mayUpdate(group) {
305
+ return this.haveGlobalPerm('manageAccess');
309
306
  }
310
- async mayDelete(group) {
311
- return await this.haveGlobalPerm('manageAccess');
307
+ mayDelete(group) {
308
+ return this.haveGlobalPerm('manageAccess');
312
309
  }
313
- async mayManageUsers(group) {
314
- return await this.haveGlobalPerm('manageAccess');
310
+ mayManageUsers(group) {
311
+ return this.haveGlobalPerm('manageAccess');
315
312
  }
316
- async mayManageGroups(group) {
317
- return await this.haveGlobalPerm('manageAccess');
313
+ mayManageGroups(group) {
314
+ return this.haveGlobalPerm('manageAccess');
318
315
  }
319
316
  }
320
317
  //# sourceMappingURL=group.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"group.service.js","sourceRoot":"","sources":["../../src/group/group.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACvE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EACyB,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,iBAAiB,EAC5F,mBAAmB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAC1D,eAAe,EAAE,oBAAoB,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EACrF,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAC1D,MAAM,gBAAgB,CAAA;AAEvB,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;IAC5C,KAAK,EAAE,KAAK,EAAE,GAAa,EAAE,EAAE;QAC7B,OAAO,MAAM,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IACjC,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC;IAChD,KAAK,EAAE,KAAK,EAAE,OAAiB,EAAE,EAAE;QACjC,OAAO,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;IACD,QAAQ,EAAE,gBAAgB;CAC3B,CAAC,CAAA;AAEF,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC;IAChD,KAAK,EAAE,KAAK,EAAE,OAAiB,EAAE,MAAoB,EAAE,EAAE;QACvD,OAAO,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACjD,CAAC;IACD,QAAQ,EAAE,gBAAgB;CAC3B,CAAC,CAAA;AAEF,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IACnD,KAAK,CAAC,IAAI,CAAE,MAAoB;QAC9B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAA;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACrF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,MAAc,EAAE,MAAgB;QAClD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9E,IAAI,GAAG,GAAG,YAAY,CAAA;QACtB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAClD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YAC9D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;gBACjC,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC,EAAE,IAAI,CAAC,CAAA;aACzD;iBAAM;gBACL,GAAG,GAAG,cAAc,CAAA;aACrB;SACF;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,OAAe,EAAE,YAAqB,IAAI;QAC5D,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,CAAA;QAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAA;QACrB,MAAM,SAAS,GAAG,SAAS;YACzB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC,CAAC,KAAK,CAAC,QAAmB,CAAA;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,QAAkB;QAClC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;IACxG,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,OAAe,EAAE,SAAS,GAAG,IAAI;QACrD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,CAAA;QAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAA;QACrB,MAAM,WAAW,GAAG,SAAS;YAC3B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC,CAAC,KAAK,CAAC,OAAkB,CAAA;QAC5B,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,QAAkB;QACpC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;IAC1G,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,MAAc,EAAE,MAAgB,EAAE,MAAoB;QACxE,IAAI,GAAY,CAAA;QAChB,IAAI,MAAM,EAAE;YACV,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SACxE;aAAM;YACL,mEAAmE;YACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACxE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAC9D,GAAG,GAAG,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC3F,IAAI,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;gBACvB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACtC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;aAC9C;SACF;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,cAAqB;IAAvD;;QACE,QAAG,GAAG,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;IA2NtC,CAAC;IAzNC,KAAK,CAAC,IAAI,CAAE,MAAoB;QAC9B,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,MAAc,EAAE,MAAgB;QAClD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACnF,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,OAAe,EAAE,YAAqB,IAAI;QAC5D,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IACvF,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,QAAkB;QAClC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC3E,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,OAAe,EAAE,SAAS,GAAG,IAAI;QACrD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IACzF,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,QAAkB;QACpC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,MAAc,EAAE,MAAgB,EAAE,MAAoB;QACxE,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC3F,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,IAAY,EAAE,QAAiB,EAAE,YAAsB;QACnE,IAAI,WAA8B,CAAA;QAClC,IAAI,QAAQ,EAAE;YACZ,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC3C,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;SAClE;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACjG,IAAI,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE;YACpC,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;YACtC,QAAQ,CAAC,UAAU,CAAC,SAAS,IAAI,kBAAkB,EAAE,MAAM,CAAC,CAAA;YAC5D,OAAO,QAAQ,CAAA;SAChB;aAAM;YACL,IAAI,YAAY,EAAE;gBAChB,OAAO,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;aAC1D;iBAAM;gBACL,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;gBACpD,MAAM,mBAAmB,CAAC,KAAK,EAAE,CAAA;gBACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;gBAC/E,OAAO,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;aAC7D;SACF;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,EAAU,EAAE,IAAY,EAAE,YAAsB;QAC5D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAClE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;QAC3G,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACrD,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE;YAC3D,QAAQ,CAAC,UAAU,CAAC,SAAS,IAAI,kBAAkB,EAAE,MAAM,CAAC,CAAA;SAC7D;QACD,IAAI,YAAY,IAAI,QAAQ,CAAC,SAAS,EAAE;YAAE,OAAO,QAAQ,CAAA;QACzD,MAAM,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QAC3B,MAAM,mBAAmB,CAAC,KAAK,EAAE,CAAA;QACjC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QACpB,QAAQ,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,EAAU;QACtB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAClE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACtG,IAAI;YACF,MAAM,WAAW,CAAC,EAAE,CAAC,CAAA;YACrB,MAAM,mBAAmB,CAAC,KAAK,EAAE,CAAA;YACjC,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,8DAA8D,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;SAC7F;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAE,QAAkB,EAAE,MAAc;QACvD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC3G,IAAI,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAChF,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;SACpF;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QAChE,IAAI;YACF,MAAM,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YAC7D,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC5D;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAE,QAAkB,EAAE,MAAc;QAC3D,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC3G,IAAI,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAChF,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;SACzF;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QAChE,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YACrE,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;SACjE;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAE,MAAc,EAAE,QAAkB;QACrD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC3G,IAAI,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAChF,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;SACzF;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;QACxF,IAAI;YACF,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YAC9C,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,+CAA+C,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;SAC1E;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAE,OAAe,EAAE,OAAiB;QACrD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAClE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;SACjF;QACD,MAAM,KAAK,GAAG,CAAC,MAAM,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACtH,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACpE,MAAM,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;QAC3D,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,WAAW,CAAE,QAAgB,EAAE,OAAe;QAClD,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;SACvB,CAAC,CAAA;QACF,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACnF,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;QAC7I,IAAI;YACF,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACpC,MAAM,mBAAmB,CAAC,KAAK,EAAE,CAAA;YACjC,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;SAChD;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,8DAA8D,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;SACnG;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,QAAgB,EAAE,OAAe;QACrD,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;SACvB,CAAC,CAAA;QACF,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACnF,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;QACjJ,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACvD,IAAI,OAAO,EAAE;gBACX,MAAM,mBAAmB,CAAC,KAAK,EAAE,CAAA;gBACjC,OAAO,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;aAChD;iBAAM;gBACL,MAAM,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAA;gBACxC,QAAQ,CAAC,UAAU,CAAC,qDAAqD,UAAU,CAAC,IAAI,yBAAyB,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;gBACrI,OAAO,QAAQ,CAAA;aAChB;SACF;QAAC,OAAO,GAAQ,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,IAAI,KAAK,CAAC,qDAAqD,UAAU,CAAC,IAAI,eAAe,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;SACxH;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAE,KAAY;QACzB,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC;YAAE,OAAO,IAAI,CAAA;QAC1D,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QACrC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;QACvB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,SAAS,CAAE,KAAY;QAC3B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,SAAS,CAAE,KAAY;QAC3B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,KAAY;QAChC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,eAAe,CAAE,KAAY;QACjC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,CAAC;CACF"}
1
+ {"version":3,"file":"group.service.js","sourceRoot":"","sources":["../../src/group/group.service.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -68,8 +68,7 @@ export interface DGStartOpts extends Omit<GQLStartOpts, 'resolvers'> {
68
68
  path: string;
69
69
  templateKey: string;
70
70
  pagetreeType: PagetreeType;
71
- roles: Role[];
72
- }, operation: DGRestrictOperations) => boolean;
71
+ }, operation: DGRestrictOperations, roles: Role[]) => boolean;
73
72
  }
74
73
  export declare class DGServer {
75
74
  protected gqlServer: GQLServer;
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
- import { Context, GQLServer, gqlDevLogger } from '@txstate-mws/graphql-server';
1
+ import { GQLServer, gqlDevLogger } from '@txstate-mws/graphql-server';
2
2
  import { prodLogger } from 'fastify-txstate';
3
3
  import { DateTime } from 'luxon';
4
4
  import { Cache, isBlank, isNotBlank, omit } from 'txstate-utils';
5
5
  import { migrations, resetdb } from './migrations.js';
6
- import { DateTimeScalar, UrlSafeString, UrlSafeStringScalar, AssetPermissionsResolver, AssetResolver, AssetRuleResolver, AssetRulePermissionsResolver, DataPermissionsResolver, DataResolver, DataRuleResolver, DataRulePermissionsResolver, AssetFolderResolver, AssetFolderPermissionsResolver, PagePermissionsResolver, PageResolver, PageRulePermissionsResolver, PageRuleResolver, PagetreePermissionsResolver, PagetreeResolver, RolePermissionsResolver, RoleResolver, SitePermissionsResolver, SiteResolver, SiteCommentResolver, SiteRulePermissionsResolver, SiteRuleResolver, TemplateAreaResolver, TemplatePermissionsResolver, TemplateResolver, UserPermissionsResolver, UserResolver, DataFolderPermissionsResolver, DataFolderResolver, GroupPermissionsResolver, GroupResolver, GlobalRulePermissionsResolver, GlobalRuleResolver, VersionResolver, OrganizationResolver, AccessResolver, TemplateRulePermissionsResolver, TemplateRuleResolver, logMutation, templateRegistry, syncRegistryWithDB, UserServiceInternal, DataRootResolver, DataRootPermissionsResolver, updateLastLogin, createAssetRoutes, UrlSafePath, UrlSafePathScalar, AssetResizeResolver, compressDownloads, scheduler, DayOfWeek, createPageRoutes, bootstrap, fileHandler, FilenameSafeString, FilenameSafeStringScalar, FilenameSafePath, FilenameSafePathScalar, createCommentRoutes, SiteServiceInternal, createRole, createPageRule, createAssetRule, addRolesToUser, VersionedService, duplicateSite, createUser, systemContext, UserService, PageService } from './internal.js';
6
+ import { DateTimeScalar, UrlSafeString, UrlSafeStringScalar, AssetPermissionsResolver, AssetResolver, AssetRuleResolver, AssetRulePermissionsResolver, DataPermissionsResolver, DataResolver, DataRuleResolver, DataRulePermissionsResolver, AssetFolderResolver, AssetFolderPermissionsResolver, PagePermissionsResolver, PageResolver, PageRulePermissionsResolver, PageRuleResolver, PagetreePermissionsResolver, PagetreeResolver, RolePermissionsResolver, RoleResolver, SitePermissionsResolver, SiteResolver, SiteCommentResolver, SiteRulePermissionsResolver, SiteRuleResolver, TemplateAreaResolver, TemplatePermissionsResolver, TemplateResolver, UserPermissionsResolver, UserResolver, DataFolderPermissionsResolver, DataFolderResolver, GroupPermissionsResolver, GroupResolver, GlobalRulePermissionsResolver, GlobalRuleResolver, VersionResolver, OrganizationResolver, AccessResolver, TemplateRulePermissionsResolver, TemplateRuleResolver, logMutation, templateRegistry, syncRegistryWithDB, UserServiceInternal, DataRootResolver, DataRootPermissionsResolver, updateLastLogin, createAssetRoutes, UrlSafePath, UrlSafePathScalar, AssetResizeResolver, compressDownloads, scheduler, DayOfWeek, createPageRoutes, bootstrap, fileHandler, FilenameSafeString, FilenameSafeStringScalar, FilenameSafePath, FilenameSafePathScalar, createCommentRoutes, SiteServiceInternal, createRole, createPageRule, createAssetRule, addRolesToUser, VersionedService, duplicateSite, createUser, systemContext, UserService, DGContext } from './internal.js';
7
7
  const loginCache = new Cache(async (userId, tokenIssuedAt) => {
8
8
  await updateLastLogin(userId, tokenIssuedAt);
9
9
  });
@@ -91,9 +91,8 @@ export class DGServer {
91
91
  }
92
92
  }, { freshseconds: 12 * 3600 });
93
93
  this.app.addHook('onRequest', async (req) => {
94
- const ctx = new Context(req);
94
+ const ctx = new DGContext(req);
95
95
  await ctx.waitForAuth();
96
- await ctx.svc(PageService).loadRoles();
97
96
  await createTrainingSite.get(ctx.svc(UserService).login);
98
97
  });
99
98
  }
@@ -158,14 +157,17 @@ export class DGServer {
158
157
  ]);
159
158
  };
160
159
  await scheduler.schedule('compressDownloads', compressDownloads, { duringHour: 5, duringDayOfWeek: DayOfWeek.TUESDAY });
160
+ if (opts.customContext && !(opts.customContext.prototype instanceof DGContext || opts.customContext === DGContext))
161
+ throw new Error('Custom context must extend DGContext from dosgato-api, not just Context from graphql-server.');
161
162
  await this.gqlServer.start({
162
163
  ...opts,
164
+ customContext: opts.customContext ?? DGContext,
163
165
  send401: true,
164
166
  send403: async (ctx) => {
165
- const userSvc = ctx.svc(UserService);
166
- if (['anonymous', 'render'].includes(userSvc.login))
167
+ const dgCtx = ctx;
168
+ if (['anonymous', 'render'].includes(dgCtx.login))
167
169
  return false;
168
- const user = await userSvc.currentUser();
170
+ const user = dgCtx.authInfo.user;
169
171
  return (!user || user.disabled);
170
172
  },
171
173
  resolvers,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAqB,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAEjG,OAAO,EAA8B,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEhE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EACL,cAAc,EAAE,aAAa,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,aAAa,EAC3F,iBAAiB,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,YAAY,EACtF,gBAAgB,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,8BAA8B,EAClG,uBAAuB,EAAE,YAAY,EAAE,2BAA2B,EAAE,gBAAgB,EACpF,2BAA2B,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,YAAY,EACpF,uBAAuB,EAAE,YAAY,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,gBAAgB,EACzG,oBAAoB,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,YAAY,EAC1G,6BAA6B,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,aAAa,EAC1F,6BAA6B,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EACxF,cAAc,EAAoB,+BAA+B,EAAE,oBAAoB,EACvF,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EACxF,2BAA2B,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAC/F,mBAAmB,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EACtG,kBAAkB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,mBAAmB,EAC3G,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAClG,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAgC,WAAW,EACjG,MAAM,eAAe,CAAA;AAEtB,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,MAAc,EAAE,aAAqB,EAAE,EAAE;IAC3E,MAAM,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAC9C,CAAC,CAAC,CAAA;AAEF,KAAK,UAAU,WAAW,CAAE,SAAiB,EAAE,aAAqB,EAAE,KAAa,EAAE,IAAS,EAAE,SAAc,EAAE,IAAS,EAAE,MAAuB;IAChJ,MAAM,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACpE,CAAC;AA8DD,MAAM,OAAO,QAAQ;IAInB,YAAa,MAA8B;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAA;QACzG,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAA;QAClF,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAE,IAAiB;QAC5B,gBAAgB,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QACvD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC1E,gBAAgB,CAAC,cAAc,EAAE,CAAA;QACjC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,MAAM,CAAA;QAE1G,IAAI,aAAa;YAAE,MAAM,OAAO,EAAE,CAAA;QAClC,MAAM,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAEjC,+BAA+B;QAC/B,MAAM,kBAAkB,EAAE,CAAA;QAE1B,MAAM,WAAW,CAAC,IAAI,EAAE,CAAA;QACxB,IAAI,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,MAAM,EAAE;YACzD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YAChC,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAA;YACvB,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,EAAE;gBACzC,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;gBACzC,MAAM,SAAS,EAAE,CAAA;aAClB;YACD,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;SAClC;QAED,MAAM,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjC,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAiC,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAC7E,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAE,OAAO,EAAE,CAAA;YAC7E,OAAO,CAAC,IAAI,CAAC,UAAU;gBACrB,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBACpC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAClD,CAAC,CAAC,CAAA;QACF,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE;YACtC,SAAS,gBAAgB,CAAE,MAAc,EAAE,YAAoB;gBAC7D,OAAO,MAAM,GAAG,GAAG,GAAG,YAAY,CAAA;YACpC,CAAC;YACD,MAAM,kBAAkB,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;gBAC5D,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAAE,OAAM;gBACvE,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;gBAC3B,IAAI;oBACF,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;oBAC9D,IAAI,CAAC,IAAI,EAAE;wBACT,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;wBAClK,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;4BAC7B,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAA;4BAC1G,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;yBACvE;qBACF;oBACD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM;wBAAE,OAAM;oBACjD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;oBACvF,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE;wBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;wBACxD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;wBACrE,IAAI,IAAI;4BAAE,SAAQ;wBAClB,MAAM,oBAAoB,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;wBACxF,IAAI,CAAC,oBAAoB;4BAAE,SAAQ;wBACnC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;wBAC9G,sHAAsH;wBACtH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAA;wBAC9D,MAAM,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;wBAC3J,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;wBAC5H,MAAM,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;qBAChD;iBACF;gBAAC,OAAO,CAAM,EAAE;oBACf,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI;wBAAE,OAAO,CAAC,IAAI,CAAC,kDAAkD,MAAM,oDAAoD,CAAC,CAAA;;wBAC1I,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;iBACtB;YACH,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;YAE/B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE;gBACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC5B,MAAM,GAAG,CAAC,WAAW,EAAE,CAAA;gBACvB,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAA;gBACtC,MAAM,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAA;YAC1D,CAAC,CAAC,CAAA;SACH;QAED,MAAM,SAAS,GAAuB;YACpC,cAAc;YACd,aAAa;YACb,wBAAwB;YACxB,mBAAmB;YACnB,iBAAiB;YACjB,4BAA4B;YAC5B,mBAAmB;YACnB,8BAA8B;YAC9B,YAAY;YACZ,uBAAuB;YACvB,gBAAgB;YAChB,2BAA2B;YAC3B,kBAAkB;YAClB,6BAA6B;YAC7B,gBAAgB;YAChB,2BAA2B;YAC3B,kBAAkB;YAClB,6BAA6B;YAC7B,aAAa;YACb,wBAAwB;YACxB,oBAAoB;YACpB,YAAY;YACZ,uBAAuB;YACvB,gBAAgB;YAChB,2BAA2B;YAC3B,gBAAgB;YAChB,2BAA2B;YAC3B,YAAY;YACZ,uBAAuB;YACvB,YAAY;YACZ,mBAAmB;YACnB,uBAAuB;YACvB,gBAAgB;YAChB,2BAA2B;YAC3B,oBAAoB;YACpB,gBAAgB;YAChB,2BAA2B;YAC3B,oBAAoB;YACpB,+BAA+B;YAC/B,YAAY;YACZ,uBAAuB;YACvB,eAAe;SAChB,CAAC;QACD,SAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAA;QAEpD,MAAM,UAAU,GAA+C;YAC7D,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,sBAAsB,EAAE;YAC1D,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,wBAAwB,EAAE;YAC9D,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE;YAChD,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE;YACpD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE;SAC3C,CAAA;QACD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAA;QAE3C,MAAM,KAAK,GAAG,KAAK,EAAE,GAAG,IAAyI,EAAE,EAAE;YACnK,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;gBACrB,WAAW,CAAC,GAAG,IAAI,CAAC;gBACpB,WAAW,CAAC,GAAG,IAAI,CAAC;aACrB,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAA;QAEvH,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YACzB,GAAG,IAAI;YACP,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;gBAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;gBACpC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO,KAAK,CAAA;gBACjE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAA;gBACxC,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAA;YACjC,CAAC;YACD,SAAS;YACT,UAAU;YACV,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;CACF;AAED,cAAc,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export declare class OrganizationService extends DosGatoService<Organization> {
8
8
  raw: OrganizationServiceInternal;
9
9
  find(filter?: OrganizationFilter): Promise<Organization[]>;
10
10
  findById(id: string): Promise<Organization | undefined>;
11
- mayView(org: Organization): Promise<boolean>;
12
- mayCreate(): Promise<boolean>;
11
+ mayView(org: Organization): boolean;
12
+ mayCreate(): boolean;
13
13
  create(name: string, externalId?: string): Promise<OrganizationResponse>;
14
14
  }
@@ -25,19 +25,19 @@ export class OrganizationService extends DosGatoService {
25
25
  this.raw = this.svc(OrganizationServiceInternal);
26
26
  }
27
27
  async find(filter) {
28
- return await this.removeUnauthorized(await this.raw.find(filter));
28
+ return this.removeUnauthorized(await this.raw.find(filter));
29
29
  }
30
30
  async findById(id) {
31
- return await this.removeUnauthorized(await this.raw.findById(id));
31
+ return this.removeUnauthorized(await this.raw.findById(id));
32
32
  }
33
- async mayView(org) {
34
- return await this.svc(SiteService).mayViewManagerUI();
33
+ mayView(org) {
34
+ return this.svc(SiteService).mayViewManagerUI();
35
35
  }
36
- async mayCreate() {
37
- return (await this.currentSiteRules()).some(r => r.grants.governance);
36
+ mayCreate() {
37
+ return this.ctx.authInfo.siteRules.some(r => r.grants.governance);
38
38
  }
39
39
  async create(name, externalId) {
40
- if (!await this.mayCreate())
40
+ if (!this.mayCreate())
41
41
  throw new Error('You are not permitted to create organizations.');
42
42
  const internalId = await createOrganization(name, externalId);
43
43
  return new OrganizationResponse({ success: true, organization: await this.raw.findById(String(internalId)) });
@@ -1 +1 @@
1
- {"version":3,"file":"organization.service.js","sourceRoot":"","sources":["../../src/organization/organization.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,gBAAgB,EAA8C,oBAAoB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEpK,MAAM,uBAAuB,GAAG,IAAI,gBAAgB,CAAC;IACnD,KAAK,EAAE,KAAK,EAAE,GAAa,EAAE,EAAE;QAC7B,OAAO,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IACxC,CAAC;IACD,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;CACzB,CAAC,CAAA;AAEF,MAAM,OAAO,2BAA4B,SAAQ,WAAW;IAC1D,KAAK,CAAC,IAAI,CAAE,MAA2B;QACrC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QAC/D,KAAK,MAAM,GAAG,IAAI,IAAI;YAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,cAA4B;IAArE;;QACE,QAAG,GAAG,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IAuB7C,CAAC;IArBC,KAAK,CAAC,IAAI,CAAE,MAA2B;QACrC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,OAAO,CAAE,GAAiB;QAC9B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACvE,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,IAAY,EAAE,UAAmB;QAC7C,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QAC9F,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAC7D,OAAO,IAAI,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAA;IAC/G,CAAC;CACF"}
1
+ {"version":3,"file":"organization.service.js","sourceRoot":"","sources":["../../src/organization/organization.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,gBAAgB,EAA8C,oBAAoB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEpK,MAAM,uBAAuB,GAAG,IAAI,gBAAgB,CAAC;IACnD,KAAK,EAAE,KAAK,EAAE,GAAa,EAAE,EAAE;QAC7B,OAAO,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IACxC,CAAC;IACD,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;CACzB,CAAC,CAAA;AAEF,MAAM,OAAO,2BAA4B,SAAQ,WAAW;IAC1D,KAAK,CAAC,IAAI,CAAE,MAA2B;QACrC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QAC/D,KAAK,MAAM,GAAG,IAAI,IAAI;YAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,cAA4B;IAArE;;QACE,QAAG,GAAG,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IAuB7C,CAAC;IArBC,KAAK,CAAC,IAAI,CAAE,MAA2B;QACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,EAAU;QACxB,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,OAAO,CAAE,GAAiB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAA;IACjD,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,IAAY,EAAE,UAAmB;QAC7C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACxF,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAC7D,OAAO,IAAI,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAA;IAC/G,CAAC;CACF"}
@@ -1,8 +1,7 @@
1
- import { MockContext } from '@txstate-mws/graphql-server';
2
1
  import { readdir, readFile } from 'fs/promises';
3
2
  import { createReadStream } from 'fs';
4
3
  import { groupby, rescue, sortby } from 'txstate-utils';
5
- import { SiteService, PageService, PageServiceInternal, createAsset, placeFile, VersionedService, AssetFolderServiceInternal, requestResizes } from '../internal.js';
4
+ import { SiteService, PageService, PageServiceInternal, createAsset, placeFile, VersionedService, AssetFolderServiceInternal, requestResizes, DGMockContext } from '../internal.js';
6
5
  import { lookup } from 'mime-types';
7
6
  async function gatherFiles(path) {
8
7
  const files = (await rescue(readdir(path, { withFileTypes: true }))) ?? [];
@@ -22,7 +21,8 @@ export async function bootstrap() {
22
21
  for (let i = 2; i < 100 && filesByLength[String(i)]; i++) {
23
22
  await Promise.all(sortby(filesByLength[i], 'name').map(async (file) => {
24
23
  try {
25
- const ctx = new MockContext({ sub: 'su01' });
24
+ const ctx = new DGMockContext({ sub: 'su01' });
25
+ await ctx.waitForAuth();
26
26
  if (file.name.endsWith('.json')) {
27
27
  const path = file.name.split('.').slice(0, -1);
28
28
  const pageRecord = JSON.parse(await readFile(file.fpath, { encoding: 'utf8' }));
@@ -1 +1 @@
1
- {"version":3,"file":"page.bootstrap.js","sourceRoot":"","sources":["../../src/page/page.bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page.bootstrap.js","sourceRoot":"","sources":["../../src/page/page.bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,WAAW,EAAmB,WAAW,EAAE,mBAAmB,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACpM,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,KAAK,UAAU,WAAW,CAAE,IAAY;IACtC,MAAM,KAAK,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1E,MAAM,GAAG,GAAsC,EAAE,CAAA;IACjD,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;QACvC,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;QACpC,IAAI,IAAI,CAAC,WAAW,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;;YACxD,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAC,CAAA;IACH,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxD,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YAClE,IAAI;gBACF,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC9C,MAAM,GAAG,CAAC,WAAW,EAAE,CAAA;gBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;oBAC9C,MAAM,UAAU,GAAe,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;oBAE3F,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;wBACrB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;wBACxE,IAAI,CAAC,IAAI,CAAC,OAAO;4BAAE,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;qBAC5G;yBAAM;wBACL,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;wBACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;wBAClC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;wBACjF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;wBACzI,IAAI,CAAC,IAAI,CAAC,OAAO;4BAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;qBAC9D;iBACF;qBAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;oBAE9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;wBAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;oBAEhF,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;oBACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBAClC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;oBAExF,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC3C,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,0BAA0B,CAAC,CAAA;oBAE5F,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE;wBACjE,GAAG,IAAI;wBACP,QAAQ,EAAE,MAAM,CAAC,EAAE;qBACpB,CAAC,CAAA;oBACF,IAAI,CAAC,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;oBACtE,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;iBAC5B;aACF;YAAC,OAAO,CAAM,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;aACjB;QACH,CAAC,CAAC,CAAC,CAAA;KACJ;AACH,CAAC"}
@@ -2,14 +2,14 @@
2
2
  import db from 'mysql2-async/db';
3
3
  import { nanoid } from 'nanoid';
4
4
  import { isNotBlank, isNotNull, keyby, unique, sortby } from 'txstate-utils';
5
- import { Page, normalizePath, getPageIndexes, DeleteState, numerate, DeleteStateAll, DeleteStateInput, DeleteStateDefault, systemContext, migratePage, collectComponents, templateRegistry, appendPath } from '../internal.js';
5
+ import { Page, normalizePath, getPageIndexes, DeleteState, numerate, DeleteStateAll, DeleteStateInput, DeleteStateDefault, systemContext, migratePage, collectComponents, templateRegistry, appendPath, shiftPath } from '../internal.js';
6
6
  import { DateTime } from 'luxon';
7
- async function convertPathsToIDPaths(pathstrings) {
7
+ async function convertPathsToIDPaths(pathstrings, tdb = db) {
8
8
  var _a;
9
9
  const paths = pathstrings.map(normalizePath).map(p => p.split(/\//).filter(isNotBlank));
10
10
  const names = new Set(paths.flat());
11
11
  const binds = [];
12
- const rows = names.size ? await db.getall(`SELECT id, name, path FROM pages WHERE name IN (${db.in(binds, Array.from(names))})`, binds) : [];
12
+ const rows = names.size ? await tdb.getall(`SELECT id, name, path FROM pages WHERE name IN (${db.in(binds, Array.from(names))})`, binds) : [];
13
13
  const rowsByNameAndIDPath = {};
14
14
  for (const row of rows) {
15
15
  rowsByNameAndIDPath[_a = row.name] ?? (rowsByNameAndIDPath[_a] = {});
@@ -92,7 +92,7 @@ export function processDeletedFilters(filter, tableName, orphansJoins, excludeOr
92
92
  }
93
93
  return { binds, where, joins };
94
94
  }
95
- async function processFilters(filter) {
95
+ async function processFilters(filter, tdb = db) {
96
96
  const { binds, where, joins } = processDeletedFilters(filter, 'pages', new Map(), ' AND sites.deletedAt IS NULL AND pagetrees.deletedAt IS NULL', ' AND (sites.deletedAt IS NOT NULL OR pagetrees.deletedAt IS NOT NULL)');
97
97
  if (filter == null)
98
98
  return { binds, joins, where };
@@ -134,7 +134,7 @@ async function processFilters(filter) {
134
134
  (async () => {
135
135
  // named paths e.g. /site1/about
136
136
  if (filter.paths?.length) {
137
- const idpaths = await convertPathsToIDPaths(filter.paths);
137
+ const idpaths = await convertPathsToIDPaths(filter.paths, tdb);
138
138
  const ids = ['-1', ...idpaths.map(p => p.split(/\//).slice(-1)[0]).filter(isNotBlank)];
139
139
  where.push(`pages.id IN (${db.in(binds, ids)})`);
140
140
  }
@@ -142,7 +142,7 @@ async function processFilters(filter) {
142
142
  (async () => {
143
143
  // beneath a named path e.g. /site1/about
144
144
  if (filter.beneath?.length) {
145
- const idpaths = await convertPathsToIDPaths(filter.beneath);
145
+ const idpaths = await convertPathsToIDPaths(filter.beneath, tdb);
146
146
  const ors = idpaths.flatMap(p => ['pages.path LIKE ?', 'pages.path = ?']);
147
147
  if (ors.length) {
148
148
  binds.push(...idpaths.flatMap(p => [`${p}/%`, p]));
@@ -155,7 +155,7 @@ async function processFilters(filter) {
155
155
  (async () => {
156
156
  // direct children of a named path e.g. /site1/about
157
157
  if (filter.parentPaths?.length) {
158
- const idpaths = await convertPathsToIDPaths(filter.parentPaths);
158
+ const idpaths = await convertPathsToIDPaths(filter.parentPaths, tdb);
159
159
  where.push(`pages.path IN (${db.in(binds, ['-1', ...idpaths])})`);
160
160
  }
161
161
  })()
@@ -180,10 +180,10 @@ async function processFilters(filter) {
180
180
  return { binds, where, joins };
181
181
  }
182
182
  export async function getPages(filter, tdb = db) {
183
- const { binds, where, joins } = await processFilters(filter);
183
+ const { binds, where, joins } = await processFilters(filter, tdb);
184
184
  if (filter.noresults)
185
185
  return [];
186
- const pages = await tdb.getall(`
186
+ const pagerows = await tdb.getall(`
187
187
  SELECT pages.*, pagetrees.type as pagetreeType, sites.deletedAt IS NOT NULL OR pagetrees.deletedAt IS NOT NULL as orphaned, tags.tag IS NOT NULL as published
188
188
  FROM pages
189
189
  INNER JOIN pagetrees ON pages.pagetreeId = pagetrees.id
@@ -192,7 +192,20 @@ export async function getPages(filter, tdb = db) {
192
192
  ${joins.size ? Array.from(joins.values()).join('\n') : ''}
193
193
  ${where.length ? `WHERE (${where.join(') AND (')})` : ''}
194
194
  ORDER BY pages.\`path\`, pages.displayOrder, pages.name`, binds);
195
- return pages.map(p => new Page(p));
195
+ const pages = pagerows.map(p => new Page(p));
196
+ const ancestorIds = new Set();
197
+ for (const p of pages) {
198
+ for (const id of p.pathSplit)
199
+ ancestorIds.add(id);
200
+ }
201
+ const abinds = [];
202
+ const ancestorrows = ancestorIds.size ? await tdb.getall(`SELECT id, name FROM pages WHERE id IN (${db.in(abinds, Array.from(ancestorIds))})`, abinds) : [];
203
+ const namesById = keyby(ancestorrows, 'id');
204
+ for (const p of pages) {
205
+ p.resolvedPath = `/${p.pathSplit.map(id => namesById[id].name).join('/')}${p.pathSplit.length ? '/' : ''}${p.name}`;
206
+ p.resolvedPathWithoutSitename = shiftPath(p.resolvedPath);
207
+ }
208
+ return pages;
196
209
  }
197
210
  export async function getPagesByPath(paths, filter) {
198
211
  const pages = await getPages({ ...filter, paths });
@@ -311,10 +324,11 @@ export async function movePages(pages, parent, aboveTarget) {
311
324
  await Promise.all(filteredPages.map(async (page, index) => await db.update('UPDATE pages SET displayOrder = ? WHERE id = ?', [displayOrder + index, page.internalId])));
312
325
  // correct the path column for pages and all their descendants
313
326
  for (const p of filteredPages) {
314
- const descendants = (await db.getall('SELECT * FROM pages WHERE id=? OR path LIKE ?', [p.internalId, p.pathAsParent + '%'])).map(r => new Page(r));
327
+ const descendants = await db.getall('SELECT dataId as id, name, id as internalId, path FROM pages WHERE id=? OR path LIKE ?', [p.internalId, p.pathAsParent + '%']);
315
328
  const pathsize = p.pathSplit.length;
316
329
  for (const d of descendants) {
317
- const newPath = `/${[...parent.pathSplit, parent.internalId, ...d.pathSplit.slice(pathsize)].join('/')}`;
330
+ const dpathSplit = d.path.split(/\//).filter(isNotBlank);
331
+ const newPath = `/${[...parent.pathSplit, parent.internalId, ...dpathSplit.slice(pathsize)].join('/')}`;
318
332
  await db.update('UPDATE pages SET name=?, path=? WHERE id=?', [newnames.get(d.id) ?? d.name, newPath, d.internalId]);
319
333
  }
320
334
  }
@@ -354,8 +368,8 @@ async function handleCopy(db, versionedService, userId, page, parent, parentPath
354
368
  INSERT INTO pages (name, pagetreeId, dataId, linkId, path, displayOrder, siteId, title, templateKey)
355
369
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`, [newPageName, parent.pagetreeId, newDataId, newLinkId, parent.pathAsParent, displayOrder, parent.siteInternalId, migrated.title, migrated.templateKey]);
356
370
  if (includeChildren) {
357
- const children = (await db.getall('SELECT * FROM pages WHERE path = ? AND deleteState != ?', [page.pathAsParent, DeleteState.DELETED])).map(r => new Page(r));
358
- const newParent = new Page(await db.getrow('SELECT * FROM pages WHERE id = ?', [newInternalId]));
371
+ const children = await getPages({ internalIdPaths: [page.pathAsParent], deleteStates: [DeleteStateInput.NOTDELETED] }, db);
372
+ const newParent = (await getPages({ internalIds: [newInternalId] }, db))[0];
359
373
  for (const child of children) {
360
374
  await handleCopy(db, versionedService, userId, child, newParent, newPagePath, child.displayOrder, true);
361
375
  }