@adminiumjs/manifest 0.3.42 → 0.3.44
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/automations.js +1 -1
- package/dist/automations.js.map +1 -1
- package/dist/change-guards.js +1 -1
- package/dist/change-guards.js.map +1 -1
- package/dist/check.d.ts +81 -0
- package/dist/check.d.ts.map +1 -0
- package/dist/check.js +130 -0
- package/dist/check.js.map +1 -0
- package/dist/expire.d.ts +46 -0
- package/dist/expire.d.ts.map +1 -0
- package/dist/expire.js +59 -0
- package/dist/expire.js.map +1 -0
- package/dist/formula.d.ts +6 -1
- package/dist/formula.d.ts.map +1 -1
- package/dist/formula.js +34 -6
- package/dist/formula.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/page-config.d.ts +10 -1
- package/dist/page-config.d.ts.map +1 -1
- package/dist/page-config.js +81 -1
- package/dist/page-config.js.map +1 -1
- package/dist/people.d.ts +55 -4
- package/dist/people.d.ts.map +1 -1
- package/dist/people.js +88 -8
- package/dist/people.js.map +1 -1
- package/dist/public-access.d.ts +24 -1
- package/dist/public-access.d.ts.map +1 -1
- package/dist/public-access.js +201 -8
- package/dist/public-access.js.map +1 -1
- package/dist/roles.d.ts +4 -0
- package/dist/roles.d.ts.map +1 -1
- package/dist/roles.js +5 -0
- package/dist/roles.js.map +1 -1
- package/dist/schema.d.ts +822 -5
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +456 -20
- package/dist/schema.js.map +1 -1
- package/dist/validate.js +1 -1
- package/dist/validate.js.map +1 -1
- package/dist/words.d.ts +3 -1
- package/dist/words.d.ts.map +1 -1
- package/dist/words.js +167 -0
- package/dist/words.js.map +1 -1
- package/package.json +2 -2
package/dist/automations.js
CHANGED
|
@@ -380,7 +380,7 @@ export function templateRequiredPlaceholdersOf(content) {
|
|
|
380
380
|
const NUMBERS = ['int', 'bigint', 'decimal', 'money', 'float'];
|
|
381
381
|
const DATES = ['date', 'timestamptz'];
|
|
382
382
|
/** The rules through which Adminium fills a column itself. */
|
|
383
|
-
const DECIDING = ['copy', 'sequence', 'code', 'rollup', 'stamp', 'formula', 'format', 'lookup', 'perNight', 'customerKey', 'codeLast4'];
|
|
383
|
+
const DECIDING = ['copy', 'sequence', 'code', 'rollup', 'stamp', 'formula', 'format', 'lookup', 'band', 'perNight', 'customerKey', 'codeLast4'];
|
|
384
384
|
/**
|
|
385
385
|
* Everything wrong with a manifest's shipped rules that the manifest itself
|
|
386
386
|
* can see: a table, a column, a role or a template that is not its own; a
|
package/dist/automations.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automations.js","sourceRoot":"","sources":["../src/automations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"automations.js","sourceRoot":"","sources":["../src/automations.ts"],"names":[],"mappings":"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"}
|
package/dist/change-guards.js
CHANGED
|
@@ -67,7 +67,7 @@ export const changeGuardSchema = z
|
|
|
67
67
|
/** A column's guards: every one that holds a change is met. */
|
|
68
68
|
export const changeGuardsSchema = z.array(changeGuardSchema).min(1).max(8);
|
|
69
69
|
/** The column rules through which Adminium decides a column's value: nobody changes one, so no guard holds anything there. */
|
|
70
|
-
const DECIDED = ['copy', 'sequence', 'code', 'rollup', 'stamp', 'formula', 'format', 'lookup', 'perNight', 'customerKey', 'codeLast4'];
|
|
70
|
+
const DECIDED = ['copy', 'sequence', 'code', 'rollup', 'stamp', 'formula', 'format', 'lookup', 'band', 'perNight', 'customerKey', 'codeLast4'];
|
|
71
71
|
/** Everything wrong with one column's `changes`, as the manifest can see it. */
|
|
72
72
|
export function changeGuardIssues(index, table, column, guards, here) {
|
|
73
73
|
const out = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-guards.js","sourceRoot":"","sources":["../src/change-guards.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,SAAS,EAA0D,MAAM,WAAW,CAAC;AAE5G,uCAAuC;AACvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,0EAA0E;IAC1E,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,sDAAsD;IACtD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrD,qHAAqH;IACrH,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACpC,0GAA0G;IAC1G,EAAE,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IAC/B,4GAA4G;IAC5G,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC1D,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE;IAC/H,OAAO,EAAE,wEAAwE;CAClF,CAAC,CAAC;AAGL,+DAA+D;AAC/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE3E,8HAA8H;AAC9H,MAAM,OAAO,GAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"change-guards.js","sourceRoot":"","sources":["../src/change-guards.ts"],"names":[],"mappings":"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"}
|
package/dist/check.d.ts
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* THE DESIGN QUESTION.
|
|
3
|
+
*
|
|
4
|
+
* An order line may name a design a shopper made with an add-on (the
|
|
5
|
+
* Customiser): what they typed, chose and uploaded on a ready-made design and
|
|
6
|
+
* a base. Whether that design may be ordered as it is, and which priced
|
|
7
|
+
* features it uses, is the add-on's to say and Adminium's to hold the line to.
|
|
8
|
+
*
|
|
9
|
+
* The host says where the question is asked — `check`, on the line's table:
|
|
10
|
+
* the add-on that answers, the line's link to its design, and where the line
|
|
11
|
+
* keeps the features it pays for (rows of a child table, one a feature). The add-on says
|
|
12
|
+
* what it reads to answer — `addOn.checker`: its designs table, and a short
|
|
13
|
+
* list of keyed reads that start from the design row (its ready-made design,
|
|
14
|
+
* that design's parts, the base, its areas, the features).
|
|
15
|
+
*
|
|
16
|
+
* Adminium reads those rows, asks, checks the answer, and refuses a line
|
|
17
|
+
* whose design does not stand or whose features do not match what it pays
|
|
18
|
+
* for. This file holds the words and what one manifest can check of them.
|
|
19
|
+
* Pure, and nothing imported from the manifest's own schema file.
|
|
20
|
+
*/
|
|
21
|
+
import { z } from 'zod';
|
|
22
|
+
import { type ReferenceIssue } from './refs.js';
|
|
23
|
+
/** The most keyed reads a checker declares. */
|
|
24
|
+
export declare const CHECKER_READS_MAX = 8;
|
|
25
|
+
export declare const checkSchema: z.ZodObject<{
|
|
26
|
+
by: z.ZodObject<{
|
|
27
|
+
addOn: z.ZodString;
|
|
28
|
+
}, z.core.$strict>;
|
|
29
|
+
needs: z.ZodOptional<z.ZodString>;
|
|
30
|
+
design: z.ZodString;
|
|
31
|
+
paid: z.ZodOptional<z.ZodObject<{
|
|
32
|
+
table: z.ZodString;
|
|
33
|
+
via: z.ZodString;
|
|
34
|
+
feature: z.ZodString;
|
|
35
|
+
}, z.core.$strict>>;
|
|
36
|
+
}, z.core.$strict>;
|
|
37
|
+
export type Check = z.infer<typeof checkSchema>;
|
|
38
|
+
/** One keyed read: the rows of one of the add-on's own tables whose `by.column` holds a value of `by.from` (`design.<column>` or `<earlier read>.<column>`). */
|
|
39
|
+
export declare const checkReadSchema: z.ZodObject<{
|
|
40
|
+
id: z.ZodString;
|
|
41
|
+
table: z.ZodString;
|
|
42
|
+
by: z.ZodObject<{
|
|
43
|
+
column: z.ZodString;
|
|
44
|
+
from: z.ZodString;
|
|
45
|
+
}, z.core.$strict>;
|
|
46
|
+
}, z.core.$strict>;
|
|
47
|
+
export type CheckRead = z.infer<typeof checkReadSchema>;
|
|
48
|
+
export declare const checkerSchema: z.ZodObject<{
|
|
49
|
+
design: z.ZodString;
|
|
50
|
+
reads: z.ZodArray<z.ZodObject<{
|
|
51
|
+
id: z.ZodString;
|
|
52
|
+
table: z.ZodString;
|
|
53
|
+
by: z.ZodObject<{
|
|
54
|
+
column: z.ZodString;
|
|
55
|
+
from: z.ZodString;
|
|
56
|
+
}, z.core.$strict>;
|
|
57
|
+
}, z.core.$strict>>;
|
|
58
|
+
}, z.core.$strict>;
|
|
59
|
+
export type Checker = z.infer<typeof checkerSchema>;
|
|
60
|
+
/** What the checks read of a table. */
|
|
61
|
+
export interface CheckTableShape {
|
|
62
|
+
ref: string;
|
|
63
|
+
columns: readonly {
|
|
64
|
+
ref: string;
|
|
65
|
+
type: string;
|
|
66
|
+
nullable?: boolean | undefined;
|
|
67
|
+
references?: string | undefined;
|
|
68
|
+
rules?: Readonly<Record<string, unknown>> | undefined;
|
|
69
|
+
}[];
|
|
70
|
+
}
|
|
71
|
+
/** Everything wrong with a line table's design rule that this manifest can see. */
|
|
72
|
+
export declare function checkIssues(table: CheckTableShape, check: Check, ctx: {
|
|
73
|
+
key: string;
|
|
74
|
+
kind: 'app' | 'add-on';
|
|
75
|
+
tables: ReadonlyMap<string, CheckTableShape>;
|
|
76
|
+
named: ReadonlySet<string>;
|
|
77
|
+
features: ReadonlyMap<string, readonly string[]>;
|
|
78
|
+
}, at: (...rest: (string | number)[]) => (string | number)[]): ReferenceIssue[];
|
|
79
|
+
/** Everything wrong with an add-on's `checker` that its own manifest can see. */
|
|
80
|
+
export declare function checkerIssues(checker: Checker, tables: ReadonlyMap<string, CheckTableShape>): ReferenceIssue[];
|
|
81
|
+
//# sourceMappingURL=check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAI3D,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAOnC,eAAO,MAAM,WAAW;;;;;;;;;;;kBAUb,CAAC;AACZ,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAMhD,gKAAgK;AAChK,eAAO,MAAM,eAAe;;;;;;;kBAMjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,aAAa;;;;;;;;;;kBAMf,CAAC;AACZ,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAIpD,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,SAAS;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAChC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;KACvD,EAAE,CAAC;CACL;AAED,mFAAmF;AACnF,wBAAgB,WAAW,CACzB,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE;IACH,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;CAClD,EACD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GACxD,cAAc,EAAE,CAqClB;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,cAAc,EAAE,CAqB9G"}
|
package/dist/check.js
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
2
|
+
/**
|
|
3
|
+
* THE DESIGN QUESTION.
|
|
4
|
+
*
|
|
5
|
+
* An order line may name a design a shopper made with an add-on (the
|
|
6
|
+
* Customiser): what they typed, chose and uploaded on a ready-made design and
|
|
7
|
+
* a base. Whether that design may be ordered as it is, and which priced
|
|
8
|
+
* features it uses, is the add-on's to say and Adminium's to hold the line to.
|
|
9
|
+
*
|
|
10
|
+
* The host says where the question is asked — `check`, on the line's table:
|
|
11
|
+
* the add-on that answers, the line's link to its design, and where the line
|
|
12
|
+
* keeps the features it pays for (rows of a child table, one a feature). The add-on says
|
|
13
|
+
* what it reads to answer — `addOn.checker`: its designs table, and a short
|
|
14
|
+
* list of keyed reads that start from the design row (its ready-made design,
|
|
15
|
+
* that design's parts, the base, its areas, the features).
|
|
16
|
+
*
|
|
17
|
+
* Adminium reads those rows, asks, checks the answer, and refuses a line
|
|
18
|
+
* whose design does not stand or whose features do not match what it pays
|
|
19
|
+
* for. This file holds the words and what one manifest can check of them.
|
|
20
|
+
* Pure, and nothing imported from the manifest's own schema file.
|
|
21
|
+
*/
|
|
22
|
+
import { z } from 'zod';
|
|
23
|
+
import { refSchema } from './refs.js';
|
|
24
|
+
const addOnKey = z.string().regex(/^[a-z][a-z0-9-]{1,79}$/, 'an add-on key');
|
|
25
|
+
/** The most keyed reads a checker declares. */
|
|
26
|
+
export const CHECKER_READS_MAX = 8;
|
|
27
|
+
// ── the host's rule ──────────────────────────────────────────────────────────
|
|
28
|
+
/** Where a line keeps the features it pays for: rows of a child table, each naming one feature. */
|
|
29
|
+
const paidSchema = z.object({ table: refSchema, via: refSchema, feature: refSchema }).strict();
|
|
30
|
+
export const checkSchema = z
|
|
31
|
+
.object({
|
|
32
|
+
by: z.object({ addOn: addOnKey }).strict(),
|
|
33
|
+
/** The rule is live only while this feature's add-ons are there. */
|
|
34
|
+
needs: z.string().regex(/^[a-z][a-z0-9-]{0,39}$/, 'a feature id').optional(),
|
|
35
|
+
/** The line's link to the add-on's designs: a column with rules.addOnLink into the add-on. */
|
|
36
|
+
design: refSchema,
|
|
37
|
+
/** The features the line pays for. Absent: it pays for none, and a design that uses one is refused. */
|
|
38
|
+
paid: paidSchema.optional(),
|
|
39
|
+
})
|
|
40
|
+
.strict();
|
|
41
|
+
// ── the add-on's side ────────────────────────────────────────────────────────
|
|
42
|
+
const readId = z.string().regex(/^[a-z][a-z0-9_]{0,39}$/, 'a read id is snake_case');
|
|
43
|
+
/** One keyed read: the rows of one of the add-on's own tables whose `by.column` holds a value of `by.from` (`design.<column>` or `<earlier read>.<column>`). */
|
|
44
|
+
export const checkReadSchema = z
|
|
45
|
+
.object({
|
|
46
|
+
id: readId,
|
|
47
|
+
table: refSchema,
|
|
48
|
+
by: z.object({ column: refSchema, from: z.string().regex(/^[a-z][a-z0-9_]{0,39}\.[a-z][a-z0-9_]*$/, '"design.<column>" or "<an earlier read>.<column>"') }).strict(),
|
|
49
|
+
})
|
|
50
|
+
.strict();
|
|
51
|
+
export const checkerSchema = z
|
|
52
|
+
.object({
|
|
53
|
+
/** The add-on's own table of designs: what a line's design link points at. */
|
|
54
|
+
design: refSchema,
|
|
55
|
+
reads: z.array(checkReadSchema).max(CHECKER_READS_MAX),
|
|
56
|
+
})
|
|
57
|
+
.strict();
|
|
58
|
+
/** Everything wrong with a line table's design rule that this manifest can see. */
|
|
59
|
+
export function checkIssues(table, check, ctx, at) {
|
|
60
|
+
const out = [];
|
|
61
|
+
const here = (...rest) => at('check', ...rest);
|
|
62
|
+
const column = (of, ref) => of.columns.find((candidate) => candidate.ref === ref);
|
|
63
|
+
// Who answers.
|
|
64
|
+
if (ctx.kind !== 'app')
|
|
65
|
+
out.push({ path: here(), message: "an app's order lines are checked: an add-on's own tables carry no design rule" });
|
|
66
|
+
else if (check.by.addOn === ctx.key || !ctx.named.has(check.by.addOn)) {
|
|
67
|
+
out.push({ path: here('by', 'addOn'), message: `"${check.by.addOn}" is not an add-on this manifest names: add it to addOns.requires or addOns.suggests` });
|
|
68
|
+
}
|
|
69
|
+
if (check.needs !== undefined) {
|
|
70
|
+
const feature = ctx.features.get(check.needs);
|
|
71
|
+
if (feature === undefined)
|
|
72
|
+
out.push({ path: here('needs'), message: `"${check.needs}" is not one of the app's addOns.features` });
|
|
73
|
+
else if (!feature.includes(check.by.addOn))
|
|
74
|
+
out.push({ path: here('needs'), message: `the feature "${check.needs}" does not need "${check.by.addOn}", so it cannot switch this rule` });
|
|
75
|
+
}
|
|
76
|
+
// The line's design: a link into the add-on that answers.
|
|
77
|
+
const design = column(table, check.design);
|
|
78
|
+
if (design === undefined)
|
|
79
|
+
out.push({ path: here('design'), message: `"${table.ref}" has no column "${check.design}"` });
|
|
80
|
+
else if (design.rules?.['addOnLink']?.addOn !== check.by.addOn) {
|
|
81
|
+
out.push({ path: here('design'), message: `"${table.ref}.${check.design}" names the line's design: a column with rules.addOnLink into "${check.by.addOn}"` });
|
|
82
|
+
}
|
|
83
|
+
// The features the line pays for: rows of a child of the line, each naming one.
|
|
84
|
+
const paid = check.paid;
|
|
85
|
+
if (paid !== undefined) {
|
|
86
|
+
const children = ctx.tables.get(paid.table);
|
|
87
|
+
if (children === undefined)
|
|
88
|
+
out.push({ path: here('paid', 'table'), message: `"${paid.table}" is not one of this manifest's tables` });
|
|
89
|
+
else {
|
|
90
|
+
const via = column(children, paid.via);
|
|
91
|
+
if (via === undefined || via.type !== 'fk' || via.references !== table.ref)
|
|
92
|
+
out.push({ path: here('paid', 'via'), message: `"${paid.table}.${paid.via}" is not a foreign key to "${table.ref}", so its rows are no feature of the line` });
|
|
93
|
+
const feature = column(children, paid.feature);
|
|
94
|
+
if (feature === undefined)
|
|
95
|
+
out.push({ path: here('paid', 'feature'), message: `"${paid.table}" has no column "${paid.feature}"` });
|
|
96
|
+
else if (!['text', 'int', 'bigint', 'fk', 'enum'].includes(feature.type))
|
|
97
|
+
out.push({ path: here('paid', 'feature'), message: `"${paid.table}.${paid.feature}" names a feature: a text, enum, whole-number or link column, not ${feature.type}` });
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return out;
|
|
101
|
+
}
|
|
102
|
+
/** Everything wrong with an add-on's `checker` that its own manifest can see. */
|
|
103
|
+
export function checkerIssues(checker, tables) {
|
|
104
|
+
const out = [];
|
|
105
|
+
const at = (...rest) => ['addOn', 'checker', ...rest];
|
|
106
|
+
const own = (ref, path) => {
|
|
107
|
+
const found = tables.get(ref);
|
|
108
|
+
if (found === undefined)
|
|
109
|
+
out.push({ path, message: `"${ref}" is not one of this add-on's own tables: a checker reads its own tables and no others` });
|
|
110
|
+
return found;
|
|
111
|
+
};
|
|
112
|
+
const has = (of, ref) => of === undefined || of.columns.some((candidate) => candidate.ref === ref);
|
|
113
|
+
const read = new Map([['design', own(checker.design, at('design'))]]);
|
|
114
|
+
checker.reads.forEach((one, r) => {
|
|
115
|
+
if (read.has(one.id))
|
|
116
|
+
out.push({ path: at('reads', r, 'id'), message: one.id === 'design' ? '"design" is the design row itself: name the read otherwise' : `two reads are called "${one.id}"` });
|
|
117
|
+
const table = own(one.table, at('reads', r, 'table'));
|
|
118
|
+
if (!has(table, one.by.column))
|
|
119
|
+
out.push({ path: at('reads', r, 'by', 'column'), message: `"${one.table}" has no column "${one.by.column}"` });
|
|
120
|
+
const [head = '', ref = ''] = one.by.from.split('.');
|
|
121
|
+
if (!read.has(head))
|
|
122
|
+
out.push({ path: at('reads', r, 'by', 'from'), message: `"${one.by.from}": a read is keyed by a column of the design or of an earlier read` });
|
|
123
|
+
else if (!has(read.get(head), ref))
|
|
124
|
+
out.push({ path: at('reads', r, 'by', 'from'), message: `"${read.get(head).ref}" has no column "${ref}"` });
|
|
125
|
+
if (!read.has(one.id))
|
|
126
|
+
read.set(one.id, table);
|
|
127
|
+
});
|
|
128
|
+
return out;
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":"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"}
|
package/dist/expire.d.ts
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A TABLE WHOSE ROWS ARE LET GO SOME DAYS AFTER A MOMENT OF THEIRS (`expire`).
|
|
3
|
+
*
|
|
4
|
+
* An add-on keeps rows a stranger made and may never come back to: a design
|
|
5
|
+
* saved and never ordered holds a person's words, photos and logos, and
|
|
6
|
+
* keeping it for nothing is keeping personal data for nothing. A table of
|
|
7
|
+
* the add-on's own says so:
|
|
8
|
+
*
|
|
9
|
+
* expire: { after: 'updated_at', days: 90, unless: { column: 'state', equals: 'ordered' } }
|
|
10
|
+
*
|
|
11
|
+
* Once a day the server removes each row whose `after` lies more than `days`
|
|
12
|
+
* days back, unless its `unless` column holds the value given (an ordered
|
|
13
|
+
* design stays, whatever its age). A row whose `after` is empty is kept: no
|
|
14
|
+
* moment, no age. The row's files go the way any removed row's do.
|
|
15
|
+
*
|
|
16
|
+
* Only an add-on's own table may say it: an app's rows are its owner's to
|
|
17
|
+
* keep, and a person's are erased by name.
|
|
18
|
+
*
|
|
19
|
+
* Pure.
|
|
20
|
+
*/
|
|
21
|
+
import { z } from 'zod';
|
|
22
|
+
/** The fewest and the most days a row may be kept. */
|
|
23
|
+
export declare const EXPIRE_DAYS_MIN = 1;
|
|
24
|
+
export declare const EXPIRE_DAYS_MAX = 3650;
|
|
25
|
+
export declare const expireSchema: z.ZodObject<{
|
|
26
|
+
after: z.ZodString;
|
|
27
|
+
days: z.ZodNumber;
|
|
28
|
+
unless: z.ZodOptional<z.ZodObject<{
|
|
29
|
+
column: z.ZodString;
|
|
30
|
+
equals: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
|
|
31
|
+
}, z.core.$strict>>;
|
|
32
|
+
}, z.core.$strict>;
|
|
33
|
+
export type Expire = z.infer<typeof expireSchema>;
|
|
34
|
+
/** Everything wrong with one table's `expire` that the table alone shows. */
|
|
35
|
+
export declare function expireIssues(table: {
|
|
36
|
+
expire?: Expire | undefined;
|
|
37
|
+
columns: readonly {
|
|
38
|
+
ref: string;
|
|
39
|
+
type: string;
|
|
40
|
+
enum?: readonly string[] | undefined;
|
|
41
|
+
}[];
|
|
42
|
+
}): {
|
|
43
|
+
path: (string | number)[];
|
|
44
|
+
message: string;
|
|
45
|
+
}[];
|
|
46
|
+
//# sourceMappingURL=expire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expire.d.ts","sourceRoot":"","sources":["../src/expire.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,sDAAsD;AACtD,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,eAAO,MAAM,YAAY;;;;;;;kBAQd,CAAC;AACZ,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAKlD,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,EAAE,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,CAe9M"}
|