@dosgato/api 0.0.8 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/access/access.resolver.d.ts +1 -0
- package/dist/access/access.resolver.js +11 -1
- package/dist/access/access.resolver.js.map +1 -1
- package/dist/asset/asset.database.d.ts +5 -3
- package/dist/asset/asset.database.js +31 -9
- package/dist/asset/asset.database.js.map +1 -1
- package/dist/asset/asset.model.d.ts +4 -0
- package/dist/asset/asset.model.js +25 -7
- package/dist/asset/asset.model.js.map +1 -1
- package/dist/asset/asset.routes.d.ts +2 -0
- package/dist/asset/asset.routes.js +73 -0
- package/dist/asset/asset.routes.js.map +1 -0
- package/dist/asset/asset.service.d.ts +3 -0
- package/dist/asset/asset.service.js +79 -6
- package/dist/asset/asset.service.js.map +1 -1
- package/dist/assetrule/assetrule.resolver.d.ts +2 -2
- package/dist/assetrule/assetrule.resolver.js +4 -3
- package/dist/assetrule/assetrule.resolver.js.map +1 -1
- package/dist/assetrule/assetrule.service.d.ts +2 -2
- package/dist/assetrule/assetrule.service.js +23 -10
- package/dist/assetrule/assetrule.service.js.map +1 -1
- package/dist/datarule/datarule.database.js +2 -1
- package/dist/datarule/datarule.database.js.map +1 -1
- package/dist/datarule/datarule.resolver.d.ts +3 -3
- package/dist/datarule/datarule.resolver.js +4 -3
- package/dist/datarule/datarule.resolver.js.map +1 -1
- package/dist/datarule/datarule.service.d.ts +3 -3
- package/dist/datarule/datarule.service.js +36 -27
- package/dist/datarule/datarule.service.js.map +1 -1
- package/dist/globalrule/globalrule.resolver.d.ts +3 -3
- package/dist/globalrule/globalrule.resolver.js +8 -6
- package/dist/globalrule/globalrule.resolver.js.map +1 -1
- package/dist/globalrule/globalrule.service.d.ts +3 -3
- package/dist/globalrule/globalrule.service.js +20 -24
- package/dist/globalrule/globalrule.service.js.map +1 -1
- package/dist/index.js +3 -22
- package/dist/index.js.map +1 -1
- package/dist/internal.d.ts +1 -0
- package/dist/internal.js +1 -0
- package/dist/internal.js.map +1 -1
- package/dist/page/page.service.js +1 -1
- package/dist/page/page.service.js.map +1 -1
- package/dist/pagerule/pagerule.database.js +1 -1
- package/dist/pagerule/pagerule.database.js.map +1 -1
- package/dist/pagerule/pagerule.resolver.d.ts +3 -3
- package/dist/pagerule/pagerule.resolver.js +8 -6
- package/dist/pagerule/pagerule.resolver.js.map +1 -1
- package/dist/pagerule/pagerule.service.d.ts +3 -3
- package/dist/pagerule/pagerule.service.js +50 -30
- package/dist/pagerule/pagerule.service.js.map +1 -1
- package/dist/pagetree/pagetree.service.js +14 -14
- package/dist/pagetree/pagetree.service.js.map +1 -1
- package/dist/role/role.database.d.ts +2 -1
- package/dist/role/role.database.js +7 -2
- package/dist/role/role.database.js.map +1 -1
- package/dist/role/role.resolver.d.ts +2 -2
- package/dist/role/role.resolver.js +14 -13
- package/dist/role/role.resolver.js.map +1 -1
- package/dist/role/role.service.d.ts +2 -2
- package/dist/role/role.service.js +38 -23
- package/dist/role/role.service.js.map +1 -1
- package/dist/scalars/urlsafestring.d.ts +1 -0
- package/dist/scalars/urlsafestring.js +2 -2
- package/dist/scalars/urlsafestring.js.map +1 -1
- package/dist/siterule/siterule.resolver.d.ts +3 -3
- package/dist/siterule/siterule.resolver.js +8 -6
- package/dist/siterule/siterule.resolver.js.map +1 -1
- package/dist/siterule/siterule.service.d.ts +3 -3
- package/dist/siterule/siterule.service.js +29 -29
- package/dist/siterule/siterule.service.js.map +1 -1
- package/dist/templaterule/templaterule.database.js +4 -2
- package/dist/templaterule/templaterule.database.js.map +1 -1
- package/dist/templaterule/templaterule.resolver.d.ts +3 -3
- package/dist/templaterule/templaterule.resolver.js +8 -6
- package/dist/templaterule/templaterule.resolver.js.map +1 -1
- package/dist/templaterule/templaterule.service.d.ts +3 -3
- package/dist/templaterule/templaterule.service.js +33 -30
- package/dist/templaterule/templaterule.service.js.map +1 -1
- package/dist/user/user.database.d.ts +1 -0
- package/dist/user/user.database.js +3 -0
- package/dist/user/user.database.js.map +1 -1
- package/dist/user/user.resolver.d.ts +1 -0
- package/dist/user/user.resolver.js +16 -0
- package/dist/user/user.resolver.js.map +1 -1
- package/dist/user/user.service.d.ts +1 -0
- package/dist/user/user.service.js +23 -2
- package/dist/user/user.service.js.map +1 -1
- package/dist/util/filehandler.d.ts +12 -7
- package/dist/util/filehandler.js +58 -14
- package/dist/util/filehandler.js.map +1 -1
- package/package.json +9 -6
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
|
|
2
|
-
import { Site, DosGatoService, SiteRule, SiteRuleFilter, CreateSiteRuleInput, UpdateSiteRuleInput, Pagetree } from '../internal.js';
|
|
2
|
+
import { Site, DosGatoService, SiteRule, SiteRuleFilter, CreateSiteRuleInput, SiteRuleResponse, UpdateSiteRuleInput, Pagetree } from '../internal.js';
|
|
3
3
|
export declare class SiteRuleServiceInternal extends BaseService {
|
|
4
4
|
findById(ruleId: string): Promise<SiteRule | undefined>;
|
|
5
5
|
findByRoleId(roleId: string, filter?: SiteRuleFilter): Promise<SiteRule[]>;
|
|
@@ -12,8 +12,8 @@ export declare class SiteRuleService extends DosGatoService<SiteRule> {
|
|
|
12
12
|
findByRoleId(roleId: string, filter?: SiteRuleFilter): Promise<SiteRule[]>;
|
|
13
13
|
findBySiteId(siteId?: string): Promise<SiteRule[]>;
|
|
14
14
|
findByPagetree(pagetree: Pagetree): Promise<SiteRule[]>;
|
|
15
|
-
create(args: CreateSiteRuleInput): Promise<
|
|
16
|
-
update(args: UpdateSiteRuleInput): Promise<
|
|
15
|
+
create(args: CreateSiteRuleInput, validateOnly?: boolean): Promise<SiteRuleResponse>;
|
|
16
|
+
update(args: UpdateSiteRuleInput, validateOnly?: boolean): Promise<SiteRuleResponse>;
|
|
17
17
|
delete(ruleId: string): Promise<ValidatedResponse>;
|
|
18
18
|
applies(rule: SiteRule, site: Site): Promise<boolean>;
|
|
19
19
|
asOrMorePowerful(ruleA: SiteRule, ruleB: SiteRule): boolean;
|
|
@@ -56,29 +56,32 @@ export class SiteRuleService extends DosGatoService {
|
|
|
56
56
|
async findByPagetree(pagetree) {
|
|
57
57
|
return await this.removeUnauthorized(await this.raw.findByPagetree(pagetree));
|
|
58
58
|
}
|
|
59
|
-
async create(args) {
|
|
59
|
+
async create(args, validateOnly) {
|
|
60
60
|
const role = await this.svc(RoleServiceInternal).findById(args.roleId);
|
|
61
61
|
if (!role)
|
|
62
62
|
throw new Error('Role to be modified does not exist.');
|
|
63
63
|
if (!await this.svc(RoleService).mayCreateRules(role))
|
|
64
64
|
throw new Error('You are not permitted to add rules to this role.');
|
|
65
65
|
const newRule = new SiteRule({ id: '0', roleId: args.roleId, siteId: args.siteId, ...args.grants });
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
await globalSiteRulesCache.clear();
|
|
73
|
-
const rule = await this.loaders.get(siteRulesByIdLoader).load(String(ruleId));
|
|
74
|
-
return new SiteRuleResponse({ siteRule: rule, success: true });
|
|
66
|
+
const response = new SiteRuleResponse({ success: true });
|
|
67
|
+
const rules = await this.findByRoleId(args.roleId);
|
|
68
|
+
if (rules.some((r) => {
|
|
69
|
+
return r.siteId === args.siteId;
|
|
70
|
+
})) {
|
|
71
|
+
response.addMessage('The proposed rule has the same site as an existing rule for this role.');
|
|
75
72
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
73
|
+
if (await this.tooPowerful(newRule))
|
|
74
|
+
response.addMessage('The proposed rule would have more privilege than you currently have, so you cannot create it.');
|
|
75
|
+
if (validateOnly || response.hasErrors())
|
|
76
|
+
return response;
|
|
77
|
+
const ruleId = await createSiteRule(args);
|
|
78
|
+
this.loaders.clear();
|
|
79
|
+
if (!newRule.siteId)
|
|
80
|
+
await globalSiteRulesCache.clear();
|
|
81
|
+
response.siteRule = await this.loaders.get(siteRulesByIdLoader).load(String(ruleId));
|
|
82
|
+
return response;
|
|
83
|
+
}
|
|
84
|
+
async update(args, validateOnly) {
|
|
82
85
|
const rule = await this.raw.findById(args.ruleId);
|
|
83
86
|
if (!rule)
|
|
84
87
|
throw new Error('Rule to be updated does not exist.');
|
|
@@ -91,20 +94,17 @@ export class SiteRuleService extends DosGatoService {
|
|
|
91
94
|
siteId: args.siteId ?? rule.siteId,
|
|
92
95
|
...updatedGrants
|
|
93
96
|
});
|
|
97
|
+
const response = new SiteRuleResponse({ success: true });
|
|
94
98
|
if (await this.tooPowerful(newRule))
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
catch (err) {
|
|
105
|
-
console.error(err);
|
|
106
|
-
throw new Error('An error occurred while updating the asset rule.');
|
|
107
|
-
}
|
|
99
|
+
response.addMessage('The updated rule would have more privilege than you currently have, so you cannot create it.');
|
|
100
|
+
if (validateOnly || response.hasErrors())
|
|
101
|
+
return response;
|
|
102
|
+
await updateSiteRule(args);
|
|
103
|
+
this.loaders.clear();
|
|
104
|
+
if (!rule.siteId || !newRule.siteId)
|
|
105
|
+
await globalSiteRulesCache.clear();
|
|
106
|
+
response.siteRule = await this.raw.findById(args.ruleId);
|
|
107
|
+
return response;
|
|
108
108
|
}
|
|
109
109
|
async delete(ruleId) {
|
|
110
110
|
const rule = await this.raw.findById(ruleId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"siterule.service.js","sourceRoot":"","sources":["../../src/siterule/siterule.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"siterule.service.js","sourceRoot":"","sources":["../../src/siterule/siterule.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,7 +50,8 @@ export async function createTemplateRule(args) {
|
|
|
50
50
|
binds.push(args.roleId);
|
|
51
51
|
if (args.templateId) {
|
|
52
52
|
columns.push('templateId');
|
|
53
|
-
|
|
53
|
+
const templateId = await db.getval('SELECT id FROM templates WHERE `key` = ?', [args.templateId]);
|
|
54
|
+
binds.push(templateId);
|
|
54
55
|
}
|
|
55
56
|
if (args.grants?.use) {
|
|
56
57
|
columns.push('`use`');
|
|
@@ -63,7 +64,8 @@ export async function updateTemplateRule(args) {
|
|
|
63
64
|
const binds = [];
|
|
64
65
|
if (typeof args.templateId !== 'undefined') {
|
|
65
66
|
updates.push('templateId = ?');
|
|
66
|
-
|
|
67
|
+
const templateId = await db.getval('SELECT id FROM templates WHERE `key` = ?', [args.templateId]);
|
|
68
|
+
binds.push(templateId);
|
|
67
69
|
}
|
|
68
70
|
if (isNotNull(args.grants?.use)) {
|
|
69
71
|
updates.push('`use` = ?');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templaterule.database.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChC,OAAO,EAAE,YAAY,EAAwE,MAAM,gBAAgB,CAAA;AACnH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAEzC,SAAS,cAAc,CAAE,MAA0B;IACjD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE;QACtB,KAAK,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KAChE;IACD,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE;QAC1B,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;KACxE;IACD,IAAI,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE;QAC9B,MAAM,GAAG,GAAG,EAAE,CAAA;QACd,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAA;QACpF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACxD,IAAI,WAAW,CAAC,MAAM;YAAE,GAAG,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;QAC9F,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;KAC3B;IACD,IAAI,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE;QAC/B,IAAI,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACtC,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAA;SAC5G;aAAM;YACL,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;SACtE;QACD,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAA;KAC7E;IACD,IAAI,MAAM,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;KAC5B;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAE,MAA0B;IAChE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;IACtD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC;mCACG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;0CACT,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACxE,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAE,IAA6B;IACrE,MAAM,OAAO,GAAa,CAAC,QAAQ,CAAC,CAAA;IACpC,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"templaterule.database.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.database.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Context } from '@txstate-mws/graphql-server';
|
|
2
|
-
import { Role, Template, TemplateRule, CreateTemplateRuleInput, UpdateTemplateRuleInput } from '../internal.js';
|
|
2
|
+
import { Role, Template, TemplateRule, TemplateRuleResponse, CreateTemplateRuleInput, UpdateTemplateRuleInput } from '../internal.js';
|
|
3
3
|
export declare class TemplateRuleResolver {
|
|
4
4
|
role(ctx: Context, templaterule: TemplateRule): Promise<Role | undefined>;
|
|
5
5
|
template(ctx: Context, templaterule: TemplateRule): Promise<Template | null | undefined>;
|
|
6
6
|
permissions(templaterule: TemplateRule): TemplateRule;
|
|
7
|
-
createTemplateRule(ctx: Context, args: CreateTemplateRuleInput): Promise<
|
|
8
|
-
updateTemplateRule(ctx: Context, args: UpdateTemplateRuleInput): Promise<
|
|
7
|
+
createTemplateRule(ctx: Context, args: CreateTemplateRuleInput, validateOnly?: boolean): Promise<TemplateRuleResponse>;
|
|
8
|
+
updateTemplateRule(ctx: Context, args: UpdateTemplateRuleInput, validateOnly?: boolean): Promise<TemplateRuleResponse>;
|
|
9
9
|
}
|
|
10
10
|
export declare class TemplateRulePermissionsResolver {
|
|
11
11
|
write(ctx: Context, rule: TemplateRule): Promise<boolean>;
|
|
@@ -27,11 +27,11 @@ let TemplateRuleResolver = class TemplateRuleResolver {
|
|
|
27
27
|
permissions(templaterule) {
|
|
28
28
|
return templaterule;
|
|
29
29
|
}
|
|
30
|
-
async createTemplateRule(ctx, args) {
|
|
31
|
-
return await ctx.svc(TemplateRuleService).create(args);
|
|
30
|
+
async createTemplateRule(ctx, args, validateOnly) {
|
|
31
|
+
return await ctx.svc(TemplateRuleService).create(args, validateOnly);
|
|
32
32
|
}
|
|
33
|
-
async updateTemplateRule(ctx, args) {
|
|
34
|
-
return await ctx.svc(TemplateRuleService).update(args);
|
|
33
|
+
async updateTemplateRule(ctx, args, validateOnly) {
|
|
34
|
+
return await ctx.svc(TemplateRuleService).update(args, validateOnly);
|
|
35
35
|
}
|
|
36
36
|
};
|
|
37
37
|
__decorate([
|
|
@@ -64,16 +64,18 @@ __decorate([
|
|
|
64
64
|
Mutation(returns => TemplateRuleResponse),
|
|
65
65
|
__param(0, Ctx()),
|
|
66
66
|
__param(1, Arg('args', type => CreateTemplateRuleInput)),
|
|
67
|
+
__param(2, Arg('validateOnly', { nullable: true })),
|
|
67
68
|
__metadata("design:type", Function),
|
|
68
|
-
__metadata("design:paramtypes", [Context, CreateTemplateRuleInput]),
|
|
69
|
+
__metadata("design:paramtypes", [Context, CreateTemplateRuleInput, Boolean]),
|
|
69
70
|
__metadata("design:returntype", Promise)
|
|
70
71
|
], TemplateRuleResolver.prototype, "createTemplateRule", null);
|
|
71
72
|
__decorate([
|
|
72
73
|
Mutation(returns => TemplateRuleResponse),
|
|
73
74
|
__param(0, Ctx()),
|
|
74
75
|
__param(1, Arg('args', type => UpdateTemplateRuleInput)),
|
|
76
|
+
__param(2, Arg('validateOnly', { nullable: true })),
|
|
75
77
|
__metadata("design:type", Function),
|
|
76
|
-
__metadata("design:paramtypes", [Context, UpdateTemplateRuleInput]),
|
|
78
|
+
__metadata("design:paramtypes", [Context, UpdateTemplateRuleInput, Boolean]),
|
|
77
79
|
__metadata("design:returntype", Promise)
|
|
78
80
|
], TemplateRuleResolver.prototype, "updateTemplateRule", null);
|
|
79
81
|
TemplateRuleResolver = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templaterule.resolver.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAChF,OAAO,EACL,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,uBAAuB,EACnF,oBAAoB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,EAC5F,MAAM,gBAAgB,CAAA;AAGhB,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAEzB,AAAN,KAAK,CAAC,IAAI,CAAS,GAAY,EAAU,YAA0B;QACjE,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IACvE,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,CAAS,GAAY,EAAU,YAA0B;QACrE,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAA;;YAC3C,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;IAC9E,CAAC;IAMD,WAAW,CAAU,YAA0B;QAC7C,OAAO,YAAY,CAAA;IACrB,CAAC;IAGK,AAAN,KAAK,CAAC,kBAAkB,CAAS,GAAY,EAAgD,IAA6B;
|
|
1
|
+
{"version":3,"file":"templaterule.resolver.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
|
|
2
|
-
import { Template, DosGatoService, TemplateRule, TemplateRuleFilter, CreateTemplateRuleInput, UpdateTemplateRuleInput } from '../internal.js';
|
|
2
|
+
import { Template, DosGatoService, TemplateRule, TemplateRuleFilter, CreateTemplateRuleInput, TemplateRuleResponse, UpdateTemplateRuleInput } from '../internal.js';
|
|
3
3
|
export declare class TemplateRuleServiceInternal extends BaseService {
|
|
4
4
|
findById(ruleId: string): Promise<TemplateRule | undefined>;
|
|
5
5
|
findByRoleId(roleId: string, filter?: TemplateRuleFilter): Promise<TemplateRule[]>;
|
|
@@ -8,8 +8,8 @@ export declare class TemplateRuleService extends DosGatoService<TemplateRule> {
|
|
|
8
8
|
raw: TemplateRuleServiceInternal;
|
|
9
9
|
findById(ruleId: string): Promise<TemplateRule | undefined>;
|
|
10
10
|
findByRoleId(roleId: string, filter?: TemplateRuleFilter): Promise<TemplateRule[]>;
|
|
11
|
-
create(args: CreateTemplateRuleInput): Promise<
|
|
12
|
-
update(args: UpdateTemplateRuleInput): Promise<
|
|
11
|
+
create(args: CreateTemplateRuleInput, validateOnly?: boolean): Promise<TemplateRuleResponse>;
|
|
12
|
+
update(args: UpdateTemplateRuleInput, validateOnly?: boolean): Promise<TemplateRuleResponse>;
|
|
13
13
|
delete(ruleId: string): Promise<ValidatedResponse>;
|
|
14
14
|
applies(rule: TemplateRule, template: Template): Promise<boolean>;
|
|
15
15
|
asOrMorePowerful(ruleA: TemplateRule, ruleB: TemplateRule): boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
|
|
2
2
|
import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
|
|
3
|
-
import { Cache } from 'txstate-utils';
|
|
4
|
-
import { DosGatoService, tooPowerfulHelper, getTemplateRules, TemplateRule, RoleService, createTemplateRule, TemplateRuleResponse, updateTemplateRule, deleteTemplateRule, RoleServiceInternal } from '../internal.js';
|
|
3
|
+
import { Cache, isNull, someAsync } from 'txstate-utils';
|
|
4
|
+
import { DosGatoService, tooPowerfulHelper, getTemplateRules, TemplateRule, RoleService, createTemplateRule, TemplateRuleResponse, updateTemplateRule, deleteTemplateRule, RoleServiceInternal, TemplateServiceInternal } from '../internal.js';
|
|
5
5
|
const templateRulesByIdLoader = new PrimaryKeyLoader({
|
|
6
6
|
fetch: async (ids) => {
|
|
7
7
|
return await getTemplateRules({ ids });
|
|
@@ -34,29 +34,35 @@ export class TemplateRuleService extends DosGatoService {
|
|
|
34
34
|
async findByRoleId(roleId, filter) {
|
|
35
35
|
return await this.removeUnauthorized(await this.raw.findByRoleId(roleId, filter));
|
|
36
36
|
}
|
|
37
|
-
async create(args) {
|
|
37
|
+
async create(args, validateOnly) {
|
|
38
38
|
const role = await this.svc(RoleServiceInternal).findById(args.roleId);
|
|
39
39
|
if (!role)
|
|
40
40
|
throw new Error('Role to be modified does not exist.');
|
|
41
41
|
if (!await this.svc(RoleService).mayCreateRules(role))
|
|
42
42
|
throw new Error('You are not permitted to add rules to this role.');
|
|
43
43
|
const newRule = new TemplateRule({ id: '0', roleId: args.roleId, templateId: args.templateId, ...args.grants });
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
catch (err) {
|
|
55
|
-
console.error(err);
|
|
56
|
-
throw new Error('An unknown error occurred while creating the role.');
|
|
44
|
+
const response = new TemplateRuleResponse({ success: true });
|
|
45
|
+
const rules = await this.findByRoleId(args.roleId);
|
|
46
|
+
if (await someAsync(rules, async (r) => {
|
|
47
|
+
if (isNull(r.templateId))
|
|
48
|
+
return false;
|
|
49
|
+
const template = await this.svc(TemplateServiceInternal).findById(r.templateId);
|
|
50
|
+
return template?.key === args.templateId;
|
|
51
|
+
})) {
|
|
52
|
+
response.addMessage('The proposed rule has the same template as an existing rule for this role.');
|
|
57
53
|
}
|
|
54
|
+
if (await this.tooPowerful(newRule))
|
|
55
|
+
response.addMessage('The proposed rule would have more privilege than you currently have, so you cannot create it.');
|
|
56
|
+
if (validateOnly || response.hasErrors())
|
|
57
|
+
return response;
|
|
58
|
+
const ruleId = await createTemplateRule(args);
|
|
59
|
+
this.loaders.clear();
|
|
60
|
+
if (!newRule.templateId)
|
|
61
|
+
await globalTemplateRulesCache.clear();
|
|
62
|
+
response.templateRule = await this.raw.findById(String(ruleId));
|
|
63
|
+
return response;
|
|
58
64
|
}
|
|
59
|
-
async update(args) {
|
|
65
|
+
async update(args, validateOnly) {
|
|
60
66
|
const rule = await this.raw.findById(args.ruleId);
|
|
61
67
|
if (!rule)
|
|
62
68
|
throw new Error('Rule to be updated does not exist.');
|
|
@@ -68,20 +74,17 @@ export class TemplateRuleService extends DosGatoService {
|
|
|
68
74
|
siteId: args.templateId ?? rule.templateId,
|
|
69
75
|
grants: { use: args.grants?.use ?? rule.grants.use }
|
|
70
76
|
});
|
|
77
|
+
const response = new TemplateRuleResponse({ success: true });
|
|
71
78
|
if (await this.tooPowerful(newRule))
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
catch (err) {
|
|
82
|
-
console.error(err);
|
|
83
|
-
throw new Error('An error occurred while updating the template rule.');
|
|
84
|
-
}
|
|
79
|
+
response.addMessage('The updated template rule would have more privilege than you currently have, so you cannot update it.');
|
|
80
|
+
if (validateOnly || response.hasErrors())
|
|
81
|
+
return response;
|
|
82
|
+
await updateTemplateRule(args);
|
|
83
|
+
this.loaders.clear();
|
|
84
|
+
if (!rule.templateId || !newRule.templateId)
|
|
85
|
+
await globalTemplateRulesCache.clear();
|
|
86
|
+
response.templateRule = await this.raw.findById(args.ruleId);
|
|
87
|
+
return response;
|
|
85
88
|
}
|
|
86
89
|
async delete(ruleId) {
|
|
87
90
|
const rule = await this.raw.findById(ruleId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templaterule.service.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"templaterule.service.js","sourceRoot":"","sources":["../../src/templaterule/templaterule.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ export declare function getUsersManagingGroups(groupIds: string[], direct?: bool
|
|
|
17
17
|
key: string;
|
|
18
18
|
value: User;
|
|
19
19
|
}[]>;
|
|
20
|
+
export declare function createUser(id: string, name: string, email: string, trained: boolean, system: boolean): Promise<number>;
|
|
20
21
|
export declare function updateUser(id: string, name: string | undefined, email: string | undefined, trained: boolean | undefined): Promise<void>;
|
|
21
22
|
export declare function disableUsers(users: User[]): Promise<number>;
|
|
22
23
|
export declare function enableUsers(users: User[]): Promise<number>;
|
|
@@ -105,6 +105,9 @@ export async function getUsersManagingGroups(groupIds, direct) {
|
|
|
105
105
|
return unique(all, row => [row.id, row.groupId])
|
|
106
106
|
.map(row => ({ key: String(row.groupId), value: new User(row) }));
|
|
107
107
|
}
|
|
108
|
+
export async function createUser(id, name, email, trained, system) {
|
|
109
|
+
return await db.insert('INSERT INTO users (login, name, email, trained) VALUES (?, ?, ?, ?, ?)', [id, name, email, trained, system]);
|
|
110
|
+
}
|
|
108
111
|
export async function updateUser(id, name, email, trained) {
|
|
109
112
|
const updates = [];
|
|
110
113
|
const binds = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.database.js","sourceRoot":"","sources":["../../src/user/user.database.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user.database.js","sourceRoot":"","sources":["../../src/user/user.database.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export declare class UserResolver {
|
|
|
7
7
|
sitesOwned(ctx: Context, user: User): Promise<Site[]>;
|
|
8
8
|
sitesManaged(ctx: Context, user: User): Promise<Site[]>;
|
|
9
9
|
permissions(user: User): User;
|
|
10
|
+
createUser(ctx: Context, userId: string, name: string, email: string, trained: boolean | undefined, system: boolean | undefined, validateOnly?: boolean): Promise<UserResponse>;
|
|
10
11
|
updateUser(ctx: Context, userId: string, args: UpdateUserInput, validateOnly?: boolean): Promise<UserResponse>;
|
|
11
12
|
disableUsers(ctx: Context, userIds: string[]): Promise<UsersResponse>;
|
|
12
13
|
enableUsers(ctx: Context, userIds: string[]): Promise<UsersResponse>;
|
|
@@ -32,6 +32,9 @@ let UserResolver = class UserResolver {
|
|
|
32
32
|
permissions(user) {
|
|
33
33
|
return user;
|
|
34
34
|
}
|
|
35
|
+
async createUser(ctx, userId, name, email, trained, system, validateOnly) {
|
|
36
|
+
return await ctx.svc(UserService).createUser(userId, name, email, trained, system, validateOnly);
|
|
37
|
+
}
|
|
35
38
|
async updateUser(ctx, userId, args, validateOnly) {
|
|
36
39
|
return await ctx.svc(UserService).updateUser(userId, args, validateOnly);
|
|
37
40
|
}
|
|
@@ -91,6 +94,19 @@ __decorate([
|
|
|
91
94
|
__metadata("design:paramtypes", [User]),
|
|
92
95
|
__metadata("design:returntype", void 0)
|
|
93
96
|
], UserResolver.prototype, "permissions", null);
|
|
97
|
+
__decorate([
|
|
98
|
+
Mutation(returns => UserResponse),
|
|
99
|
+
__param(0, Ctx()),
|
|
100
|
+
__param(1, Arg('userId', type => ID)),
|
|
101
|
+
__param(2, Arg('name')),
|
|
102
|
+
__param(3, Arg('email')),
|
|
103
|
+
__param(4, Arg('trained', type => Boolean, { nullable: true })),
|
|
104
|
+
__param(5, Arg('system', type => Boolean, { nullable: true })),
|
|
105
|
+
__param(6, Arg('validateOnly', { nullable: true })),
|
|
106
|
+
__metadata("design:type", Function),
|
|
107
|
+
__metadata("design:paramtypes", [Context, String, String, String, Object, Object, Boolean]),
|
|
108
|
+
__metadata("design:returntype", Promise)
|
|
109
|
+
], UserResolver.prototype, "createUser", null);
|
|
94
110
|
__decorate([
|
|
95
111
|
Mutation(returns => UserResponse),
|
|
96
112
|
__param(0, Ctx()),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.resolver.js","sourceRoot":"","sources":["../../src/user/user.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EACL,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAC3E,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAC3E,MAAM,gBAAgB,CAAA;AAGhB,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEjB,AAAN,KAAK,CAAC,KAAK,CAAS,GAAY,EAAiB,MAAkB;QACjE,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAChD,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAS,GAAY,EAAU,IAAU,EAA8N,MAAe;QAChS,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAClE,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAS,GAAY,EAAU,IAAU,EAA6L,MAAe;QAC9P,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IACjE,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CAAS,GAAY,EAAU,IAAU;QACvD,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC1E,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAS,GAAY,EAAU,IAAU;QACzD,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC5E,CAAC;IAGD,WAAW,CAAU,IAAU;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CAAS,GAAY,EAA6B,MAAc,EAAwC,IAAqB,EAA2C,YAAsB;QAC5M,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,CAAA;IAC1E,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CAAS,GAAY,EAAgC,OAAiB;QACtF,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IACzD,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CAAS,GAAY,EAAgC,OAAiB;QACrF,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACxD,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"user.resolver.js","sourceRoot":"","sources":["../../src/user/user.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ export declare class UserService extends DosGatoService<User, RedactedUser | Use
|
|
|
18
18
|
findGroupManagers(groupId: string, direct?: boolean): Promise<User[] | (User | RedactedUser)[]>;
|
|
19
19
|
findByInternalId(id: number): Promise<User | RedactedUser | undefined>;
|
|
20
20
|
findById(id: string): Promise<User | RedactedUser | undefined>;
|
|
21
|
+
createUser(id: string, name: string, email: string, trained: boolean | undefined, system: boolean | undefined, validateOnly?: boolean): Promise<UserResponse>;
|
|
21
22
|
updateUser(id: string, args: UpdateUserInput, validateOnly?: boolean): Promise<UserResponse>;
|
|
22
23
|
disableUsers(ids: string[]): Promise<UsersResponse>;
|
|
23
24
|
enableUsers(ids: string[]): Promise<UsersResponse>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BaseService } from '@txstate-mws/graphql-server';
|
|
1
|
+
import { BaseService, MutationMessageType } from '@txstate-mws/graphql-server';
|
|
2
2
|
import { ManyJoinedLoader, PrimaryKeyLoader } from 'dataloader-factory';
|
|
3
3
|
import { isNotBlank, isNotNull, someAsync, unique, isBlank } from 'txstate-utils';
|
|
4
|
-
import { DosGatoService, GroupService, UserResponse, getUsers, getUsersInGroup, getUsersWithRole, getUsersBySite, getUsersByInternalId, UsersResponse, updateUser, disableUsers, enableUsers, getUsersManagingGroups } from '../internal.js';
|
|
4
|
+
import { DosGatoService, GroupService, UserResponse, getUsers, createUser, getUsersInGroup, getUsersWithRole, getUsersBySite, getUsersByInternalId, UsersResponse, updateUser, disableUsers, enableUsers, getUsersManagingGroups } from '../internal.js';
|
|
5
5
|
const usersByInternalIdLoader = new PrimaryKeyLoader({
|
|
6
6
|
fetch: async (ids) => {
|
|
7
7
|
return await getUsersByInternalId(ids);
|
|
@@ -126,6 +126,27 @@ export class UserService extends DosGatoService {
|
|
|
126
126
|
async findById(id) {
|
|
127
127
|
return await this.removeUnauthorized(await this.raw.findById(id));
|
|
128
128
|
}
|
|
129
|
+
async createUser(id, name, email, trained, system, validateOnly) {
|
|
130
|
+
if (!(await this.mayCreate()))
|
|
131
|
+
throw new Error('Current user is not permitted to create users.');
|
|
132
|
+
const response = new UserResponse({ success: true });
|
|
133
|
+
const existing = await this.raw.findById(id);
|
|
134
|
+
if (existing)
|
|
135
|
+
response.addMessage('Login is already present, update the user instead.', 'userId', MutationMessageType.error);
|
|
136
|
+
if (isBlank(name))
|
|
137
|
+
response.addMessage('Name is required.', 'name');
|
|
138
|
+
if (isBlank(email))
|
|
139
|
+
response.addMessage('E-mail address is required.', 'email');
|
|
140
|
+
if (!/^\s*[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}\s*$/i.test(email)) {
|
|
141
|
+
response.addMessage('Please enter a valid email address.', 'email');
|
|
142
|
+
}
|
|
143
|
+
if (validateOnly || response.hasErrors())
|
|
144
|
+
return response;
|
|
145
|
+
await createUser(id, name, email, !!trained, !!system);
|
|
146
|
+
this.loaders.clear();
|
|
147
|
+
response.user = await this.raw.findById(id);
|
|
148
|
+
return response;
|
|
149
|
+
}
|
|
129
150
|
async updateUser(id, args, validateOnly) {
|
|
130
151
|
const user = await this.raw.findById(id);
|
|
131
152
|
if (!user)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/user/user.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/user/user.service.ts"],"names":[],"mappings":"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"}
|