@dosgato/api 0.0.20 → 0.0.22
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/asset/asset.database.js +1 -1
- package/dist/asset/asset.routes.js +2 -11
- package/dist/asset/asset.routes.js.map +1 -1
- package/dist/asset/asset.service.js +1 -1
- package/dist/asset/asset.service.js.map +1 -1
- package/dist/data/data.database.d.ts +3 -2
- package/dist/data/data.database.js +32 -15
- package/dist/data/data.database.js.map +1 -1
- package/dist/data/data.model.d.ts +3 -2
- package/dist/data/data.model.js +8 -3
- package/dist/data/data.model.js.map +1 -1
- package/dist/data/data.resolver.d.ts +1 -0
- package/dist/data/data.resolver.js +11 -0
- package/dist/data/data.resolver.js.map +1 -1
- package/dist/data/data.service.d.ts +2 -0
- package/dist/data/data.service.js +29 -12
- package/dist/data/data.service.js.map +1 -1
- package/dist/index.js +2 -1
- 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/migrations.js +7 -0
- package/dist/migrations.js.map +1 -1
- package/dist/page/page.database.d.ts +21 -1
- package/dist/page/page.database.js +46 -18
- package/dist/page/page.database.js.map +1 -1
- package/dist/page/page.model.d.ts +2 -0
- package/dist/page/page.model.js +5 -1
- package/dist/page/page.model.js.map +1 -1
- package/dist/page/page.resolver.d.ts +1 -1
- package/dist/page/page.resolver.js +5 -6
- package/dist/page/page.resolver.js.map +1 -1
- package/dist/page/page.routes.d.ts +15 -0
- package/dist/page/page.routes.js +154 -0
- package/dist/page/page.routes.js.map +1 -0
- package/dist/page/page.service.d.ts +3 -2
- package/dist/page/page.service.js +41 -15
- package/dist/page/page.service.js.map +1 -1
- package/dist/pagetree/pagetree.database.js +1 -1
- package/dist/pagetree/pagetree.database.js.map +1 -1
- package/dist/util/authservice.d.ts +2 -1
- package/dist/util/authservice.js +10 -1
- package/dist/util/authservice.js.map +1 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +5 -0
- package/dist/util/index.js.map +1 -1
- package/dist/versionedservice/service.d.ts +10 -5
- package/dist/versionedservice/service.js +38 -30
- package/dist/versionedservice/service.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.model.js","sourceRoot":"","sources":["../../src/page/page.model.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"page.model.js","sourceRoot":"","sources":["../../src/page/page.model.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE5D,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,yDAAc,CAAA;IACd,mEAAmB,CAAA;IACnB,mDAAW,CAAA;AACb,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,gBAAgB,CAAC,WAAW,EAAE;IAC5B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,2EAA2E;IACxF,YAAY,EAAE;QACZ,UAAU,EAAE,EAAE,WAAW,EAAE,sBAAsB,EAAE;QACnD,eAAe,EAAE,EAAE,WAAW,EAAE,gGAAgG,EAAE;QAClI,OAAO,EAAE,EAAE,WAAW,EAAE,sDAAsD,EAAE;KACjF;CACF,CAAC,CAAA;AAGK,IAAM,IAAI,GAAV,MAAM,IAAI;IA2Cf,YAAa,GAAQ;QACnB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,EAAE,CAAA;QACxB,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACxC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACpE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACjE,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAA;QACpC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACxB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACvC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACnD,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IACnJ,CAAC;CACF,CAAA;AAxDC;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,6CAA6C,EAAE,CAAC;;gCACxE;AAEV;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,6DAA6D,EAAE,CAAC;;kCACjG;AAEZ;IAAC,KAAK,CAAC;QACL,WAAW,EAAE,2DAA2D;YACtE,+EAA+E;YAC/E,0EAA0E;YAC1E,iFAAiF;YACjF,iFAAiF;YACjF,iFAAiF;YACjF,yFAAyF;YACzF,+EAA+E;YAC/E,gFAAgF;KACnF,CAAC;;oCACY;AAEd;IAAC,KAAK,CAAC,EAAE,WAAW,EAAE,sDAAsD,EAAE,CAAC;;qCAC/D;AAEhB;IAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4DAA4D,EAAE,CAAC;8BACzF,QAAQ;uCAAA;AAEpB;IAAC,KAAK,CAAC,EAAE,WAAW,EAAE,4EAA4E,EAAE,CAAC;;yCAC7E;AA7Bb,IAAI;IADhB,UAAU,CAAC,EAAE,WAAW,EAAE,oFAAoF,EAAE,CAAC;;GACrG,IAAI,CA2DhB;SA3DY,IAAI;AA8DV,IAAM,UAAU,GAAhB,MAAM,UAAU;CA4DtB,CAAA;AAvDC;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uCAC1B;AAEd;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;;2CAChF;AAElB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC;;yCAC3G;AAEvB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4DAA4D,EAAE,CAAC;;+CAC7F;AAEtB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;;2CAC1F;AAElB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,sGAAsG,EAAE,CAAC;;gDACtI;AAEvB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC;;qDAC/F;AAE5B;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC;;uDACzF;AAE9B;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8DAA8D,EAAE,CAAC;;uDACvF;AAE9B;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2EAA2E,EAAE,CAAC;;iDAC9G;AAE9B;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gOAAgO,EAAE,CAAC;;yCAC3Q;AAEhB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,iKAAiK,EAAE,CAAC;;2CAC1M;AAElB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2KAA2K,EAAE,CAAC;;+CAChN;AAEtB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,wQAAwQ,EAAE,CAAC;;gDAC5S;AAEvB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,oFAAoF,EAAE,CAAC;;6CAC3H;AAEnB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uFAAuF,EAAE,CAAC;;wCACnI;AAEd;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CAC1B;AAEvB;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,oFAAoF,EAAE,CAAC;;4CACzH;AAzDN,UAAU;IADtB,SAAS,EAAE;GACC,UAAU,CA4DtB;SA5DY,UAAU;AA+DhB,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,iBAAiB;IAIjD,YAAa,MAAgD;QAC3D,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,CAAA;IAC1B,CAAC;CACF,CAAA;AAPC;IAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACnB,IAAI;0CAAA;AAFA,YAAY;IADxB,UAAU,EAAE;;GACA,YAAY,CAQxB;SARY,YAAY;AAWlB,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,iBAAiB;IAIlD,YAAa,MAAmD;QAC9D,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;QACnB,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,EAAE,CAAA;IAClC,CAAC;CACF,CAAA;AAPC;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;;4CACT;AAFF,aAAa;IADzB,UAAU,EAAE;;GACA,aAAa,CAQzB;SARY,aAAa;AAWnB,IAAM,eAAe,GAArB,MAAM,eAAe;CAAG,CAAA;AAAlB,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CAAG;SAAlB,eAAe;AAE5B,MAAM,CAAN,IAAY,cASX;AATD,WAAY,cAAc;IACxB,2CAAyB,CAAA;IACzB,mCAAiB,CAAA;IACjB,+BAAa,CAAA;IACb,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;IACvB,mCAAiB,CAAA;IACjB,uCAAqB,CAAA;AACvB,CAAC,EATW,cAAc,KAAd,cAAc,QASzB;AACD,gBAAgB,CAAC,cAAc,EAAE;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,uEAAuE;CACrF,CAAC,CAAA;AAGK,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAGhC,CAAA;AAFC;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;;wDACC;AAFR,oBAAoB;IADhC,SAAS,EAAE;GACC,oBAAoB,CAGhC;SAHY,oBAAoB;AAM1B,IAAM,aAAa,GAAnB,MAAM,aAAa;CAYzB,CAAA;AAXC;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;;6CACH;AAEf;IAAC,KAAK,EAAE;;6CACO;AAEf;IAAC,KAAK,EAAE;;2CACK;AAEb;IAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4QAA4Q,EAAE,CAAC;8BACzU,oBAAoB;8CAAA;AAXnB,aAAa;IADzB,SAAS,EAAE;GACC,aAAa,CAYzB;SAZY,aAAa;AAc1B,8CAA8C;AAC9C,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,8BAAa,CAAA;IACb,8BAAa,CAAA,CAAC,wBAAwB;AACxC,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAED,gBAAgB,CAAC,aAAa,EAAE;IAC9B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,gCAAgC;IAC7C,YAAY,EAAE;QACZ,IAAI,EAAE,EAAE,WAAW,EAAE,yCAAyC,EAAE;QAChE,IAAI,EAAE,EAAE,WAAW,EAAE,2BAA2B,EAAE;QAClD,IAAI,EAAE,EAAE,WAAW,EAAE,6BAA6B,EAAE;KACrD;CACF,CAAC,CAAA"}
|
|
@@ -15,7 +15,7 @@ export declare class PageResolver {
|
|
|
15
15
|
pagetree(ctx: Context, page: Page): Promise<Pagetree | undefined>;
|
|
16
16
|
site(ctx: Context, page: Page): Promise<Site | undefined>;
|
|
17
17
|
data(ctx: Context, page: Page, published?: boolean, version?: number, schemaversion?: DateTime): Promise<PageData>;
|
|
18
|
-
dataByPath(ctx: Context, page: Page,
|
|
18
|
+
dataByPath(ctx: Context, page: Page, paths: string[], published?: boolean, version?: number, schemaversion?: DateTime): Promise<{}>;
|
|
19
19
|
templates(ctx: Context, page: Page, filter?: TemplateFilter): Promise<Template[]>;
|
|
20
20
|
createdAt(ctx: Context, page: Page): Promise<DateTime>;
|
|
21
21
|
createdBy(ctx: Context, page: Page): Promise<User | import("../internal.js").RedactedUser | undefined>;
|
|
@@ -66,9 +66,9 @@ let PageResolver = class PageResolver {
|
|
|
66
66
|
async data(ctx, page, published, version, schemaversion) {
|
|
67
67
|
return await ctx.svc(PageService).getData(page, version, published, schemaversion);
|
|
68
68
|
}
|
|
69
|
-
async dataByPath(ctx, page,
|
|
69
|
+
async dataByPath(ctx, page, paths, published, version, schemaversion) {
|
|
70
70
|
const data = await ctx.svc(PageService).getData(page, version, published, schemaversion);
|
|
71
|
-
return get(data, path);
|
|
71
|
+
return paths.reduce((ret, path) => ({ ...ret, [path]: get(data, path) }), {});
|
|
72
72
|
}
|
|
73
73
|
async templates(ctx, page, filter) {
|
|
74
74
|
return await ctx.svc(PageService).getApprovedTemplates(page, filter);
|
|
@@ -90,8 +90,7 @@ let PageResolver = class PageResolver {
|
|
|
90
90
|
return await ctx.svc(UserService).findById(data.modifiedBy);
|
|
91
91
|
}
|
|
92
92
|
async published(ctx, page) {
|
|
93
|
-
|
|
94
|
-
return !!tag;
|
|
93
|
+
return await ctx.svc(PageService).isPublished(page);
|
|
95
94
|
}
|
|
96
95
|
async live(ctx, page) {
|
|
97
96
|
const [published, pagetree] = await Promise.all([
|
|
@@ -283,12 +282,12 @@ __decorate([
|
|
|
283
282
|
FieldResolver(returns => JsonData, { nullable: true, description: 'Accepts a dot-separated path identifying data you need and returns only the data it points to. Compared to `data`, this can help avoid transferring a lot of unnecessary bytes if you only need a specific page property.' }),
|
|
284
283
|
__param(0, Ctx()),
|
|
285
284
|
__param(1, Root()),
|
|
286
|
-
__param(2, Arg('
|
|
285
|
+
__param(2, Arg('paths', type => [String])),
|
|
287
286
|
__param(3, Arg('published', { nullable: true, description: 'Return the published version of the data. When true, version arg is ignored. Throws when there is no published version.' })),
|
|
288
287
|
__param(4, Arg('version', type => Int, { nullable: true, description: 'Return the specified version of the data. Ignored when published arg is true. Default is latest and may fail if user has improper permissions.' })),
|
|
289
288
|
__param(5, Arg('schemaversion', { nullable: true, description: 'Specify the preferred schema version. The API will perform any necessary migrations on the data prior to return. Default is the latest schemaversion.' })),
|
|
290
289
|
__metadata("design:type", Function),
|
|
291
|
-
__metadata("design:paramtypes", [Context, Page,
|
|
290
|
+
__metadata("design:paramtypes", [Context, Page, Array, Boolean, Number, DateTime]),
|
|
292
291
|
__metadata("design:returntype", Promise)
|
|
293
292
|
], PageResolver.prototype, "dataByPath", null);
|
|
294
293
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.resolver.js","sourceRoot":"","sources":["../../src/page/page.resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page.resolver.js","sourceRoot":"","sources":["../../src/page/page.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { PageData } from '@dosgato/templating';
|
|
2
|
+
import type { FastifyInstance } from 'fastify';
|
|
3
|
+
export interface PageExport {
|
|
4
|
+
name: string;
|
|
5
|
+
linkId: string;
|
|
6
|
+
data: PageData & {
|
|
7
|
+
legacyId?: string;
|
|
8
|
+
};
|
|
9
|
+
version: number;
|
|
10
|
+
createdBy: string;
|
|
11
|
+
createdAt: string;
|
|
12
|
+
modifiedBy: string;
|
|
13
|
+
modifiedAt: string;
|
|
14
|
+
}
|
|
15
|
+
export declare function createPageRoutes(app: FastifyInstance): Promise<void>;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Context } from '@txstate-mws/graphql-server';
|
|
2
|
+
import { HttpError } from 'fastify-txstate';
|
|
3
|
+
import db from 'mysql2-async/db';
|
|
4
|
+
import { isNotBlank, pick } from 'txstate-utils';
|
|
5
|
+
import { createPage, getEnabledUser, getPageIndexes, GlobalRuleService, numerate, PageService, PageServiceInternal, PagetreeServiceInternal, SiteServiceInternal, VersionedService } from '../internal.js';
|
|
6
|
+
async function handleUpload(req) {
|
|
7
|
+
const file = await req.file();
|
|
8
|
+
if (!file)
|
|
9
|
+
throw new HttpError(400, 'Must upload a file to import.');
|
|
10
|
+
if (file.mimetype !== 'application/json')
|
|
11
|
+
throw new HttpError(400, 'Import files must be in JSON format.');
|
|
12
|
+
let pageRecord;
|
|
13
|
+
try {
|
|
14
|
+
pageRecord = JSON.parse((await file.toBuffer()).toString('utf8'));
|
|
15
|
+
if (!pageRecord.name || !pageRecord.linkId || !pageRecord.data.templateKey)
|
|
16
|
+
throw new Error('not export file');
|
|
17
|
+
}
|
|
18
|
+
catch (e) {
|
|
19
|
+
throw new HttpError(400, 'Uploaded JSON file was not a Dos Gato export file.');
|
|
20
|
+
}
|
|
21
|
+
return pageRecord;
|
|
22
|
+
}
|
|
23
|
+
export async function createPageRoutes(app) {
|
|
24
|
+
// skipping this because asset.routes.ts does it
|
|
25
|
+
// await app.register(multipart)
|
|
26
|
+
app.post('/pages/:parentPageId', async (req, res) => {
|
|
27
|
+
if (!req.isMultipart())
|
|
28
|
+
throw new HttpError(400, 'Page import must be multipart.');
|
|
29
|
+
const ctx = new Context(req);
|
|
30
|
+
const svcPageInternal = ctx.svc(PageServiceInternal);
|
|
31
|
+
const svcPage = ctx.svc(PageService);
|
|
32
|
+
const user = await getEnabledUser(ctx); // throws if not authorized
|
|
33
|
+
const parent = await svcPageInternal.findById(req.params.parentPageId);
|
|
34
|
+
if (!parent)
|
|
35
|
+
throw new HttpError(404, 'Specified page does not exist.');
|
|
36
|
+
const above = req.body?.abovePage ? await svcPageInternal.findById(req.body?.abovePage) : undefined;
|
|
37
|
+
if (!(await svcPage.mayCreate(parent)))
|
|
38
|
+
throw new HttpError(403, `Current user is not permitted to import pages beneath ${String(parent.name)}.`);
|
|
39
|
+
const pageRecord = await handleUpload(req);
|
|
40
|
+
if (!req.body?.migrate)
|
|
41
|
+
delete pageRecord.data.legacyId;
|
|
42
|
+
if (pageRecord.data.legacyId) {
|
|
43
|
+
const [allowed, existing] = await Promise.all([
|
|
44
|
+
ctx.svc(GlobalRuleService).mayOverrideStamps(),
|
|
45
|
+
await svcPageInternal.find({ legacyIds: [pageRecord.data.legacyId] })
|
|
46
|
+
]);
|
|
47
|
+
if (!allowed)
|
|
48
|
+
throw new HttpError(403, 'You are not permitted to migrate content from another CMS.');
|
|
49
|
+
if (existing.length)
|
|
50
|
+
throw new HttpError(400, 'Another page has that legacy id. Use /pages/update/:id instead.');
|
|
51
|
+
}
|
|
52
|
+
if (req.body?.publishedAt || req.body?.publishedBy) {
|
|
53
|
+
if (!pageRecord.data.legacyId)
|
|
54
|
+
throw new HttpError(400, 'Only pages being imported from another system may override published stamps.');
|
|
55
|
+
}
|
|
56
|
+
const pages = await svcPageInternal.getPageChildren(parent, false);
|
|
57
|
+
const nameSet = new Set(pages.map(p => p.name));
|
|
58
|
+
let newPageName = pageRecord.name;
|
|
59
|
+
while (nameSet.has(newPageName))
|
|
60
|
+
newPageName = numerate(newPageName);
|
|
61
|
+
// at the time of writing this comment, template usage is approved for an entire pagetree, so
|
|
62
|
+
// it should be safe to simply check if the targeted parent/sibling is allowed to use this template
|
|
63
|
+
try {
|
|
64
|
+
await svcPage.validatePageTemplates(parent, pageRecord.data, true);
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
throw new HttpError(403, e.message);
|
|
68
|
+
}
|
|
69
|
+
const pagetree = (await ctx.svc(PagetreeServiceInternal).findById(parent.pagetreeId));
|
|
70
|
+
const site = (await ctx.svc(SiteServiceInternal).findById(pagetree.siteId));
|
|
71
|
+
const response = await svcPage.validatePageData(pageRecord.data, site, pagetree, parent, pageRecord.name);
|
|
72
|
+
if (!response.success)
|
|
73
|
+
throw new HttpError(422, 'Exported page data does not validate.');
|
|
74
|
+
const page = await createPage(ctx.svc(VersionedService), user.id, parent, above, pageRecord.name, pageRecord.data, pageRecord.linkId, {
|
|
75
|
+
...req.body,
|
|
76
|
+
...pick(pageRecord, 'createdBy', 'createdAt', 'modifiedBy', 'modifiedAt')
|
|
77
|
+
});
|
|
78
|
+
return { id: page.id, linkId: page.linkId };
|
|
79
|
+
});
|
|
80
|
+
app.post('/pages/update/:pageid', async (req, res) => {
|
|
81
|
+
if (!req.isMultipart())
|
|
82
|
+
throw new HttpError(400, 'Page update from export file must be multipart.');
|
|
83
|
+
const ctx = new Context(req);
|
|
84
|
+
const user = await getEnabledUser(ctx); // throws if not authorized
|
|
85
|
+
const svcPageInternal = ctx.svc(PageServiceInternal);
|
|
86
|
+
const svcPage = ctx.svc(PageService);
|
|
87
|
+
const versionedService = ctx.svc(VersionedService);
|
|
88
|
+
const page = await svcPageInternal.findById(req.params.assetid);
|
|
89
|
+
if (!page)
|
|
90
|
+
throw new HttpError(404, 'Specified page does not exist.');
|
|
91
|
+
if (!(await svcPage.mayUpdate(page)))
|
|
92
|
+
throw new HttpError(403, `You are not permitted to update page ${String(page.name)}.`);
|
|
93
|
+
const pageRecord = await handleUpload(req);
|
|
94
|
+
if (!req.body?.migrate)
|
|
95
|
+
delete pageRecord.data.legacyId;
|
|
96
|
+
if (pageRecord.data.legacyId) {
|
|
97
|
+
const allowed = await ctx.svc(GlobalRuleService).mayOverrideStamps();
|
|
98
|
+
if (!allowed)
|
|
99
|
+
throw new HttpError(403, 'You are not permitted to migrate content from another CMS.');
|
|
100
|
+
}
|
|
101
|
+
if (req.body?.publishedAt || req.body?.publishedBy) {
|
|
102
|
+
if (!pageRecord.data.legacyId)
|
|
103
|
+
throw new HttpError(400, 'Only pages being imported from another system may override published stamps.');
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
await svcPage.validatePageTemplates(page, pageRecord.data, true);
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
throw new HttpError(403, e.message);
|
|
110
|
+
}
|
|
111
|
+
const pagetree = (await ctx.svc(PagetreeServiceInternal).findById(page.pagetreeId));
|
|
112
|
+
const site = (await ctx.svc(SiteServiceInternal).findById(pagetree.siteId));
|
|
113
|
+
const response = await svcPage.validatePageData(pageRecord.data, site, pagetree, page, pageRecord.name);
|
|
114
|
+
if (!response.success)
|
|
115
|
+
throw new HttpError(422, 'Exported page data does not validate.');
|
|
116
|
+
const indexes = getPageIndexes(pageRecord.data);
|
|
117
|
+
if (pageRecord.data.legacyId)
|
|
118
|
+
indexes.push({ name: 'legacyId', values: [pageRecord.data.legacyId] });
|
|
119
|
+
const modifiedBy = pageRecord.data.legacyId ? (pageRecord.modifiedBy || user.id) : user.id; // || is intended - to catch blanks
|
|
120
|
+
const modifiedAt = pageRecord.data.legacyId ? pageRecord.modifiedAt ? new Date(pageRecord.modifiedAt) : undefined : undefined;
|
|
121
|
+
await db.transaction(async (db) => {
|
|
122
|
+
await versionedService.update(page.dataId, pageRecord.data, indexes, { user: modifiedBy, date: modifiedAt }, db);
|
|
123
|
+
if (pageRecord.data.legacyId && req.body?.publishedAt)
|
|
124
|
+
await versionedService.tag(page.dataId, 'published', undefined, req.body.publishedBy ?? modifiedBy, new Date(req.body.publishedAt), db);
|
|
125
|
+
});
|
|
126
|
+
return 'Success.';
|
|
127
|
+
});
|
|
128
|
+
app.get('/pages/:id', async (req, res) => {
|
|
129
|
+
const ctx = new Context(req);
|
|
130
|
+
const page = await ctx.svc(PageServiceInternal).findById(req.params.id);
|
|
131
|
+
if (!page)
|
|
132
|
+
throw new HttpError(404);
|
|
133
|
+
const [path, data] = await Promise.all([
|
|
134
|
+
ctx.svc(PageServiceInternal).getPath(page),
|
|
135
|
+
ctx.svc(VersionedService).get(page.dataId)
|
|
136
|
+
]);
|
|
137
|
+
if (!data)
|
|
138
|
+
throw new HttpError(500, 'Page found but data was missing.');
|
|
139
|
+
void res.header('Cache-Control', 'no-cache');
|
|
140
|
+
void res.header('Content-Type', 'application/json');
|
|
141
|
+
void res.header('Content-Disposition', 'attachment;filename=' + path.split('/').filter(isNotBlank).join('.') + '.json');
|
|
142
|
+
return {
|
|
143
|
+
name: page.name,
|
|
144
|
+
linkId: page.linkId,
|
|
145
|
+
data: data.data,
|
|
146
|
+
version: data.version,
|
|
147
|
+
createdBy: data.createdBy,
|
|
148
|
+
createdAt: data.created,
|
|
149
|
+
modifiedBy: data.modifiedBy,
|
|
150
|
+
modifiedAt: data.modified
|
|
151
|
+
};
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=page.routes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page.routes.js","sourceRoot":"","sources":["../../src/page/page.routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,9 +34,10 @@ export declare class PageService extends DosGatoService<Page> {
|
|
|
34
34
|
mayViewLatest(page: Page): Promise<boolean>;
|
|
35
35
|
mayViewManagerUI(): Promise<boolean>;
|
|
36
36
|
isInArchive(page: Page): Promise<boolean>;
|
|
37
|
+
isPublished(page: Page): Promise<boolean>;
|
|
37
38
|
mayCreate(page: Page): Promise<boolean>;
|
|
38
39
|
mayUpdate(page: Page): Promise<boolean>;
|
|
39
|
-
mayPublish(page: Page): Promise<boolean>;
|
|
40
|
+
mayPublish(page: Page, parentBeingPublished?: boolean): Promise<boolean>;
|
|
40
41
|
mayUnpublish(page: Page): Promise<boolean>;
|
|
41
42
|
mayMove(page: Page): Promise<boolean>;
|
|
42
43
|
mayDelete(page: Page): Promise<boolean>;
|
|
@@ -47,7 +48,7 @@ export declare class PageService extends DosGatoService<Page> {
|
|
|
47
48
|
movePages(dataIds: string[], targetId: string, above?: boolean): Promise<PagesResponse>;
|
|
48
49
|
copyPages(dataIds: string[], targetId: string, above?: boolean, includeChildren?: boolean): Promise<PageResponse>;
|
|
49
50
|
validatePageTemplates(page: Page, data: PageData, create: boolean): Promise<void>;
|
|
50
|
-
validatePageData(data: PageData, site: Site | undefined, pagetree: Pagetree | undefined, parent: Page | undefined, name: string, linkId
|
|
51
|
+
validatePageData(data: PageData, site: Site | undefined, pagetree: Pagetree | undefined, parent: Page | undefined, name: string, linkId?: string, pageId?: string): Promise<PageResponse>;
|
|
51
52
|
createPage(name: string, data: PageData, targetId: string, above?: boolean, validateOnly?: boolean): Promise<PageResponse>;
|
|
52
53
|
updatePage(dataId: string, dataVersion: number, data: PageData, comment?: string, validateOnly?: boolean): Promise<PageResponse>;
|
|
53
54
|
renamePage(dataId: string, name: string, validateOnly?: boolean): Promise<PageResponse>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server';
|
|
2
2
|
import { OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
3
|
+
import db from 'mysql2-async/db';
|
|
4
|
+
import { filterAsync, intersect, isNotNull, keyby, someAsync, stringify, unique } from 'txstate-utils';
|
|
5
5
|
import { VersionedService, templateRegistry, DosGatoService, PageResponse, PagesResponse, createPage, getPages, movePages, deletePages, renamePage, TemplateService, getPageIndexes, undeletePages, validatePage, DeletedFilter, copyPages, TemplateType, migratePage, PagetreeServiceInternal, collectTemplates, TemplateServiceInternal, SiteServiceInternal, PagetreeType, DeleteState, publishPageDeletions } from '../internal.js';
|
|
6
6
|
const pagesByInternalIdLoader = new PrimaryKeyLoader({
|
|
7
7
|
fetch: async (internalIds) => {
|
|
@@ -58,8 +58,8 @@ export class PageServiceInternal extends BaseService {
|
|
|
58
58
|
if (filter.linkIdsReferenced?.length) {
|
|
59
59
|
const searchRule = { indexName: 'link_page', in: filter.linkIdsReferenced.map(linkId => (stringify({ linkId }))) };
|
|
60
60
|
const [dataIdsLatest, dataIdsPublished] = await Promise.all([
|
|
61
|
-
this.svc(VersionedService).find([searchRule], '
|
|
62
|
-
this.svc(VersionedService).find([searchRule], 'published')
|
|
61
|
+
this.svc(VersionedService).find([searchRule], 'page'),
|
|
62
|
+
this.svc(VersionedService).find([searchRule], 'page', 'published')
|
|
63
63
|
]);
|
|
64
64
|
const dataIds = unique([...dataIdsLatest, ...dataIdsPublished]);
|
|
65
65
|
if (filter.ids?.length)
|
|
@@ -90,8 +90,8 @@ export class PageServiceInternal extends BaseService {
|
|
|
90
90
|
async findByTemplate(key, filter) {
|
|
91
91
|
const searchRule = { indexName: 'template', equal: key };
|
|
92
92
|
const [dataIdsLatest, dataIdsPublished] = await Promise.all([
|
|
93
|
-
this.svc(VersionedService).find([searchRule], '
|
|
94
|
-
this.svc(VersionedService).find([searchRule], 'published')
|
|
93
|
+
this.svc(VersionedService).find([searchRule], 'page'),
|
|
94
|
+
this.svc(VersionedService).find([searchRule], 'page', 'published')
|
|
95
95
|
]);
|
|
96
96
|
let dataIds = unique([...dataIdsLatest, ...dataIdsPublished]);
|
|
97
97
|
if (!dataIds.length)
|
|
@@ -139,6 +139,10 @@ export class PageServiceInternal extends BaseService {
|
|
|
139
139
|
}, toSchemaVersion);
|
|
140
140
|
}
|
|
141
141
|
async processFilters(filter) {
|
|
142
|
+
if (filter.legacyIds?.length) {
|
|
143
|
+
const pages = await this.svc(VersionedService).find([{ indexName: 'legacyId', in: filter.legacyIds }], 'page', filter.published ? 'published' : 'latest');
|
|
144
|
+
filter.ids = intersect({ skipEmpty: true }, filter.ids, pages);
|
|
145
|
+
}
|
|
142
146
|
if (filter.referencedByPageIds?.length) {
|
|
143
147
|
// TODO: refactor this to use VersionedService indexes instead of rescanning the data
|
|
144
148
|
const verService = this.svc(VersionedService);
|
|
@@ -245,6 +249,10 @@ export class PageService extends DosGatoService {
|
|
|
245
249
|
const pagetree = await this.svc(PagetreeServiceInternal).findById(page.pagetreeId);
|
|
246
250
|
return pagetree.type === PagetreeType.ARCHIVE;
|
|
247
251
|
}
|
|
252
|
+
async isPublished(page) {
|
|
253
|
+
const tag = await this.svc(VersionedService).getTag(page.dataId, 'published');
|
|
254
|
+
return !!tag;
|
|
255
|
+
}
|
|
248
256
|
// authenticated user may create pages underneath given page
|
|
249
257
|
async mayCreate(page) {
|
|
250
258
|
if (await this.isInArchive(page))
|
|
@@ -256,22 +264,35 @@ export class PageService extends DosGatoService {
|
|
|
256
264
|
return false;
|
|
257
265
|
return await this.havePagePerm(page, 'update');
|
|
258
266
|
}
|
|
259
|
-
async mayPublish(page) {
|
|
267
|
+
async mayPublish(page, parentBeingPublished) {
|
|
260
268
|
if (await this.isInArchive(page))
|
|
261
269
|
return false;
|
|
270
|
+
if (page.parentInternalId && !parentBeingPublished) {
|
|
271
|
+
const parent = await this.raw.findByInternalId(page.parentInternalId);
|
|
272
|
+
if (!await this.isPublished(parent))
|
|
273
|
+
return false;
|
|
274
|
+
}
|
|
262
275
|
return await this.havePagePerm(page, 'publish');
|
|
263
276
|
}
|
|
264
277
|
async mayUnpublish(page) {
|
|
278
|
+
if (!page.parentInternalId)
|
|
279
|
+
return false; // root page of a site/pagetree cannot be unpublished - the site launch should be disabled instead
|
|
265
280
|
if (await this.isInArchive(page))
|
|
266
281
|
return false;
|
|
282
|
+
if (!await this.isPublished(page))
|
|
283
|
+
return false;
|
|
267
284
|
return await this.havePagePerm(page, 'unpublish');
|
|
268
285
|
}
|
|
269
286
|
async mayMove(page) {
|
|
287
|
+
if (!page.parentInternalId)
|
|
288
|
+
return false; // root page of a site/pagetree cannot be moved
|
|
270
289
|
if (await this.isInArchive(page))
|
|
271
290
|
return false;
|
|
272
291
|
return await this.havePagePerm(page, 'move');
|
|
273
292
|
}
|
|
274
293
|
async mayDelete(page) {
|
|
294
|
+
if (!page.parentInternalId)
|
|
295
|
+
return false; // root page of a site/pagetree cannot be deleted
|
|
275
296
|
if (await this.isInArchive(page))
|
|
276
297
|
return false;
|
|
277
298
|
return await this.havePagePerm(page, 'delete');
|
|
@@ -300,8 +321,8 @@ export class PageService extends DosGatoService {
|
|
|
300
321
|
throw new Error('Current user is not permitted to copy pages to this location.');
|
|
301
322
|
}
|
|
302
323
|
// Is this page allowed to be copied here?
|
|
303
|
-
const pageData = (await
|
|
304
|
-
await
|
|
324
|
+
const pageData = (await Promise.all(pages.map(async (page) => await this.svc(VersionedService).get(page.id)))).filter(isNotNull);
|
|
325
|
+
await Promise.all(pageData.map(async (d) => await this.validatePageTemplates(parent, d.data, true)));
|
|
305
326
|
const newPage = await copyPages(this.svc(VersionedService), this.login, pages, parent, aboveTarget, includeChildren);
|
|
306
327
|
return new PageResponse({ success: true, page: newPage });
|
|
307
328
|
}
|
|
@@ -350,14 +371,13 @@ export class PageService extends DosGatoService {
|
|
|
350
371
|
await this.validatePageTemplates(parent, data, true);
|
|
351
372
|
const pagetree = (await this.svc(PagetreeServiceInternal).findById(parent.pagetreeId));
|
|
352
373
|
const site = (await this.svc(SiteServiceInternal).findById(pagetree.siteId));
|
|
353
|
-
const
|
|
354
|
-
const response = await this.validatePageData(data, site, pagetree, parent, name, linkId);
|
|
374
|
+
const response = await this.validatePageData(data, site, pagetree, parent, name);
|
|
355
375
|
const pages = await this.raw.getPageChildren(parent, false);
|
|
356
376
|
if (pages.some(p => p.name === name)) {
|
|
357
377
|
response.addMessage('A page with this name already exists', 'name');
|
|
358
378
|
}
|
|
359
379
|
if (!validateOnly && response.success) {
|
|
360
|
-
response.page = await createPage(this.svc(VersionedService), this.login, parent, aboveTarget, name, data
|
|
380
|
+
response.page = await createPage(this.svc(VersionedService), this.login, parent, aboveTarget, name, data);
|
|
361
381
|
this.loaders.clear();
|
|
362
382
|
}
|
|
363
383
|
return response;
|
|
@@ -461,12 +481,15 @@ export class PageService extends DosGatoService {
|
|
|
461
481
|
const children = (await Promise.all(pages.map(async (page) => await this.getPageChildren(page, true)))).flat();
|
|
462
482
|
pages = [...pages, ...children];
|
|
463
483
|
}
|
|
464
|
-
if (await someAsync(pages, async (page) => !(await this.mayPublish(page)))) {
|
|
484
|
+
if (await someAsync(pages, async (page) => !(await this.mayPublish(page, true)))) {
|
|
465
485
|
throw new Error('Current user is not permitted to publish one or more pages');
|
|
466
486
|
}
|
|
467
487
|
pages = pages.filter(p => !p.deleted);
|
|
468
488
|
try {
|
|
469
|
-
await
|
|
489
|
+
await db.transaction(async (db) => {
|
|
490
|
+
for (const p of pages)
|
|
491
|
+
await this.svc(VersionedService).tag(p.dataId, 'published', undefined, this.login);
|
|
492
|
+
});
|
|
470
493
|
this.loaders.clear();
|
|
471
494
|
return new ValidatedResponse({ success: true });
|
|
472
495
|
}
|
|
@@ -483,7 +506,10 @@ export class PageService extends DosGatoService {
|
|
|
483
506
|
throw new Error('Current user is not permitted to unpublish one or more pages');
|
|
484
507
|
}
|
|
485
508
|
try {
|
|
486
|
-
await
|
|
509
|
+
await db.transaction(async (db) => {
|
|
510
|
+
for (const p of pages)
|
|
511
|
+
await this.svc(VersionedService).removeTag(p.dataId, 'published');
|
|
512
|
+
});
|
|
487
513
|
this.loaders.clear();
|
|
488
514
|
return new ValidatedResponse({ success: true });
|
|
489
515
|
}
|