@platformos/platformos-check-common 0.0.10 → 0.0.12
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/CHANGELOG.md +10 -0
- package/CLAUDE.md +150 -0
- package/dist/AugmentedPlatformOSDocset.js +1 -0
- package/dist/AugmentedPlatformOSDocset.js.map +1 -1
- package/dist/checks/deprecated-filter/index.js +15 -0
- package/dist/checks/deprecated-filter/index.js.map +1 -1
- package/dist/checks/graphql/index.d.ts +1 -0
- package/dist/checks/graphql/index.js +20 -7
- package/dist/checks/graphql/index.js.map +1 -1
- package/dist/checks/invalid-hash-assign-target/index.js +4 -3
- package/dist/checks/invalid-hash-assign-target/index.js.map +1 -1
- package/dist/checks/undefined-object/index.js +14 -13
- package/dist/checks/undefined-object/index.js.map +1 -1
- package/dist/checks/unknown-property/index.js +75 -10
- package/dist/checks/unknown-property/index.js.map +1 -1
- package/dist/checks/unknown-property/property-shape.js +14 -1
- package/dist/checks/unknown-property/property-shape.js.map +1 -1
- package/dist/checks/unused-assign/index.js +23 -1
- package/dist/checks/unused-assign/index.js.map +1 -1
- package/dist/checks/variable-name/index.js +4 -0
- package/dist/checks/variable-name/index.js.map +1 -1
- package/dist/frontmatter/index.d.ts +59 -0
- package/dist/frontmatter/index.js +301 -0
- package/dist/frontmatter/index.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/liquid-doc/arguments.js +5 -0
- package/dist/liquid-doc/arguments.js.map +1 -1
- package/dist/path.d.ts +1 -1
- package/dist/path.js +3 -1
- package/dist/path.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/AugmentedPlatformOSDocset.ts +1 -0
- package/src/checks/deprecated-filter/index.spec.ts +41 -1
- package/src/checks/deprecated-filter/index.ts +17 -0
- package/src/checks/graphql/index.spec.ts +173 -0
- package/src/checks/graphql/index.ts +21 -10
- package/src/checks/invalid-hash-assign-target/index.spec.ts +26 -0
- package/src/checks/invalid-hash-assign-target/index.ts +6 -4
- package/src/checks/undefined-object/index.spec.ts +123 -19
- package/src/checks/undefined-object/index.ts +16 -18
- package/src/checks/unknown-property/index.spec.ts +133 -0
- package/src/checks/unknown-property/index.ts +84 -10
- package/src/checks/unknown-property/property-shape.ts +15 -1
- package/src/checks/unused-assign/index.spec.ts +74 -0
- package/src/checks/unused-assign/index.ts +26 -1
- package/src/checks/variable-name/index.spec.ts +9 -0
- package/src/checks/variable-name/index.ts +5 -0
- package/src/frontmatter/index.ts +344 -0
- package/src/index.ts +3 -0
- package/src/liquid-doc/arguments.ts +3 -0
- package/src/path.ts +2 -0
|
@@ -180,7 +180,20 @@ function inferShapeFromGraphQL(content, schemaString) {
|
|
|
180
180
|
rootType = schema.getMutationType() ?? undefined;
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
|
-
|
|
183
|
+
const shape = selectionSetToShape(definition.selectionSet, rootType);
|
|
184
|
+
// platformOS always exposes a top-level 'errors' array on graphql results
|
|
185
|
+
// (GraphQL protocol-level errors), regardless of what's in the selection set.
|
|
186
|
+
const properties = new Map(shape.properties);
|
|
187
|
+
if (!properties.has('errors')) {
|
|
188
|
+
properties.set('errors', {
|
|
189
|
+
kind: 'array',
|
|
190
|
+
itemShape: {
|
|
191
|
+
kind: 'object',
|
|
192
|
+
properties: new Map([['message', { kind: 'primitive', primitiveType: 'string' }]]),
|
|
193
|
+
},
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
return { kind: 'object', properties };
|
|
184
197
|
}
|
|
185
198
|
}
|
|
186
199
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-shape.js","sourceRoot":"","sources":["../../../src/checks/unknown-property/property-shape.ts"],"names":[],"mappings":";;AA+DA,gDA8BC;AAKD,4DAYC;AA+ED,
|
|
1
|
+
{"version":3,"file":"property-shape.js","sourceRoot":"","sources":["../../../src/checks/unknown-property/property-shape.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,10 @@ exports.UnusedAssign = {
|
|
|
20
20
|
},
|
|
21
21
|
create(context) {
|
|
22
22
|
const assignedVariables = new Map();
|
|
23
|
+
// Variables assigned from a pure variable lookup (no filters, no literals).
|
|
24
|
+
// e.g. `assign errors = contract.errors` — mutations on `errors` have side
|
|
25
|
+
// effects on the original, so they count as "using" the variable.
|
|
26
|
+
const referenceAssignedVariables = new Set();
|
|
23
27
|
const usedVariables = new Set();
|
|
24
28
|
function checkVariableUsage(node) {
|
|
25
29
|
if (node.type === liquid_html_parser_1.NodeTypes.VariableLookup) {
|
|
@@ -31,7 +35,25 @@ exports.UnusedAssign = {
|
|
|
31
35
|
if ((0, utils_1.isWithinRawTagThatDoesNotParseItsContents)(ancestors))
|
|
32
36
|
return;
|
|
33
37
|
if (isLiquidTagAssign(node)) {
|
|
34
|
-
|
|
38
|
+
if (node.markup.lookups.length === 0 && node.markup.operator === '=') {
|
|
39
|
+
// Simple assignment: register as a new variable
|
|
40
|
+
assignedVariables.set(node.markup.name, node);
|
|
41
|
+
// Track pure reference assignments (VariableLookup with no filters)
|
|
42
|
+
if (node.markup.value.type === liquid_html_parser_1.NodeTypes.LiquidVariable &&
|
|
43
|
+
node.markup.value.expression.type === liquid_html_parser_1.NodeTypes.VariableLookup &&
|
|
44
|
+
node.markup.value.filters.length === 0) {
|
|
45
|
+
referenceAssignedVariables.add(node.markup.name);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
// Hash/array mutation: assign x[key]=val, assign x.key=val, assign x<<val
|
|
50
|
+
// Counts as "using" x only when x is external (not locally assigned here)
|
|
51
|
+
// or was assigned as a reference alias to another variable.
|
|
52
|
+
if (!assignedVariables.has(node.markup.name) ||
|
|
53
|
+
referenceAssignedVariables.has(node.markup.name)) {
|
|
54
|
+
usedVariables.add(node.markup.name);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
35
57
|
}
|
|
36
58
|
else if (isLiquidTagCapture(node) && node.markup.name) {
|
|
37
59
|
assignedVariables.set(node.markup.name, node);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/unused-assign/index.ts"],"names":[],"mappings":";;;AAAA,uEAMwC;AACxC,uCAA8E;AAC9E,oCAAqE;AAExD,QAAA,YAAY,GAA0B;IACjD,IAAI,EAAE;QACJ,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE;YACJ,WAAW,EACT,yFAAyF;YAC3F,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,4FAA4F;SAClG;QACD,IAAI,EAAE,sBAAc,CAAC,UAAU;QAC/B,QAAQ,EAAE,gBAAQ,CAAC,OAAO;QAC1B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,iBAAiB,GAAoD,IAAI,GAAG,EAAE,CAAC;QACrF,MAAM,aAAa,GAAgB,IAAI,GAAG,EAAE,CAAC;QAE7C,SAAS,kBAAkB,CAAC,IAAS;YACnC,IAAI,IAAI,CAAC,IAAI,KAAK,8BAAS,CAAC,cAAc,EAAE,CAAC;gBAC3C,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS;gBAC7B,IAAI,IAAA,iDAAyC,EAAC,SAAS,CAAC;oBAAE,OAAO;gBACjE,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/unused-assign/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,10 @@ exports.VariableName = {
|
|
|
49
49
|
valid: false,
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
|
+
// Variables starting with _ are valid (used as throwaway/private variables)
|
|
53
|
+
if (node.markup.name.startsWith('_')) {
|
|
54
|
+
return { valid: true };
|
|
55
|
+
}
|
|
52
56
|
const formatter = formatTypes[context.settings.format];
|
|
53
57
|
const suggestion = formatter(node.markup.name);
|
|
54
58
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/variable-name/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/variable-name/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Frontmatter schema definitions for platformOS Liquid file types.
|
|
3
|
+
*
|
|
4
|
+
* Each Liquid file type in platformOS has a YAML frontmatter section at the
|
|
5
|
+
* top of the file that configures server-side behaviour. The schema for each
|
|
6
|
+
* type is different — Pages have slug/layout, Emails have to/from/subject, etc.
|
|
7
|
+
*
|
|
8
|
+
* This module provides:
|
|
9
|
+
* - FrontmatterFieldSchema — type definition for a single field
|
|
10
|
+
* - FrontmatterSchema — type definition for a complete schema
|
|
11
|
+
* - FRONTMATTER_SCHEMAS — per-type schemas keyed by PlatformOSFileType
|
|
12
|
+
* - getFrontmatterSchema() — convenience lookup that returns undefined for
|
|
13
|
+
* types without a frontmatter schema
|
|
14
|
+
*/
|
|
15
|
+
import { PlatformOSFileType } from '@platformos/platformos-common';
|
|
16
|
+
export type FrontmatterFieldType = 'string' | 'boolean' | 'integer' | 'number' | 'array' | 'object';
|
|
17
|
+
export interface FrontmatterFieldSchema {
|
|
18
|
+
/** The expected YAML type(s) for this field's value. */
|
|
19
|
+
type: FrontmatterFieldType | FrontmatterFieldType[];
|
|
20
|
+
/** Whether this field must be present. */
|
|
21
|
+
required?: boolean;
|
|
22
|
+
/** Human-readable description of this field. */
|
|
23
|
+
description?: string;
|
|
24
|
+
/** Whether this field name is deprecated in favour of a newer one. */
|
|
25
|
+
deprecated?: boolean;
|
|
26
|
+
/** Message shown when this deprecated field is used. */
|
|
27
|
+
deprecatedMessage?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface FrontmatterSchema {
|
|
30
|
+
/** Human-readable name of the file type, used in diagnostics. */
|
|
31
|
+
name: string;
|
|
32
|
+
/**
|
|
33
|
+
* Known frontmatter fields.
|
|
34
|
+
* Checks can use this to surface unknown keys or missing required keys.
|
|
35
|
+
*/
|
|
36
|
+
fields: Record<string, FrontmatterFieldSchema>;
|
|
37
|
+
/**
|
|
38
|
+
* Whether fields not listed in `fields` are allowed without a warning.
|
|
39
|
+
* Defaults to true — schemas are additive and may not be exhaustive.
|
|
40
|
+
*/
|
|
41
|
+
allowAdditionalFields?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Per-type frontmatter schemas.
|
|
45
|
+
*
|
|
46
|
+
* Only Liquid file types are present here — GraphQL, YAML, and Asset types
|
|
47
|
+
* do not use frontmatter.
|
|
48
|
+
*
|
|
49
|
+
* Field lists are based on real-world usage in platformOS apps. Set
|
|
50
|
+
* `allowAdditionalFields: true` (the default) everywhere so that apps using
|
|
51
|
+
* custom/undocumented keys don't get false-positive warnings until the schemas
|
|
52
|
+
* are finalised.
|
|
53
|
+
*/
|
|
54
|
+
export declare const FRONTMATTER_SCHEMAS: Partial<Record<PlatformOSFileType, FrontmatterSchema>>;
|
|
55
|
+
/**
|
|
56
|
+
* Returns the frontmatter schema for a given file type, or undefined if no
|
|
57
|
+
* schema is defined for that type (e.g. GraphQL, YAML, Asset types).
|
|
58
|
+
*/
|
|
59
|
+
export declare function getFrontmatterSchema(fileType: PlatformOSFileType | undefined): FrontmatterSchema | undefined;
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Frontmatter schema definitions for platformOS Liquid file types.
|
|
4
|
+
*
|
|
5
|
+
* Each Liquid file type in platformOS has a YAML frontmatter section at the
|
|
6
|
+
* top of the file that configures server-side behaviour. The schema for each
|
|
7
|
+
* type is different — Pages have slug/layout, Emails have to/from/subject, etc.
|
|
8
|
+
*
|
|
9
|
+
* This module provides:
|
|
10
|
+
* - FrontmatterFieldSchema — type definition for a single field
|
|
11
|
+
* - FrontmatterSchema — type definition for a complete schema
|
|
12
|
+
* - FRONTMATTER_SCHEMAS — per-type schemas keyed by PlatformOSFileType
|
|
13
|
+
* - getFrontmatterSchema() — convenience lookup that returns undefined for
|
|
14
|
+
* types without a frontmatter schema
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.FRONTMATTER_SCHEMAS = void 0;
|
|
18
|
+
exports.getFrontmatterSchema = getFrontmatterSchema;
|
|
19
|
+
const platformos_common_1 = require("@platformos/platformos-common");
|
|
20
|
+
// ─── Schemas ──────────────────────────────────────────────────────────────────
|
|
21
|
+
/**
|
|
22
|
+
* Per-type frontmatter schemas.
|
|
23
|
+
*
|
|
24
|
+
* Only Liquid file types are present here — GraphQL, YAML, and Asset types
|
|
25
|
+
* do not use frontmatter.
|
|
26
|
+
*
|
|
27
|
+
* Field lists are based on real-world usage in platformOS apps. Set
|
|
28
|
+
* `allowAdditionalFields: true` (the default) everywhere so that apps using
|
|
29
|
+
* custom/undocumented keys don't get false-positive warnings until the schemas
|
|
30
|
+
* are finalised.
|
|
31
|
+
*/
|
|
32
|
+
exports.FRONTMATTER_SCHEMAS = {
|
|
33
|
+
// ── Page ─────────────────────────────────────────────────────────────────────
|
|
34
|
+
[platformos_common_1.PlatformOSFileType.Page]: {
|
|
35
|
+
name: 'Page',
|
|
36
|
+
fields: {
|
|
37
|
+
slug: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
description: 'URL slug for this page. Supports dynamic segments (e.g. users/:id).',
|
|
40
|
+
},
|
|
41
|
+
layout: {
|
|
42
|
+
type: 'string',
|
|
43
|
+
description: 'Layout template to wrap this page (path relative to app root, no extension).',
|
|
44
|
+
},
|
|
45
|
+
layout_name: {
|
|
46
|
+
type: 'string',
|
|
47
|
+
description: 'Alias for layout.',
|
|
48
|
+
deprecated: true,
|
|
49
|
+
deprecatedMessage: 'Use `layout` instead of `layout_name`.',
|
|
50
|
+
},
|
|
51
|
+
method: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
description: 'HTTP method this page responds to (get, post, put, patch, delete).',
|
|
54
|
+
},
|
|
55
|
+
authorization_policies: {
|
|
56
|
+
type: 'array',
|
|
57
|
+
description: 'List of authorization policy names that must pass before rendering.',
|
|
58
|
+
},
|
|
59
|
+
response_headers: {
|
|
60
|
+
type: 'string',
|
|
61
|
+
description: 'Liquid template that renders a JSON object of HTTP response headers.',
|
|
62
|
+
},
|
|
63
|
+
metadata: {
|
|
64
|
+
type: 'object',
|
|
65
|
+
description: 'Arbitrary metadata object (e.g. SEO title/description, robots directives).',
|
|
66
|
+
},
|
|
67
|
+
max_deep_level: {
|
|
68
|
+
type: 'integer',
|
|
69
|
+
description: 'Maximum number of dynamic URL segments to capture.',
|
|
70
|
+
},
|
|
71
|
+
searchable: {
|
|
72
|
+
type: 'boolean',
|
|
73
|
+
description: 'Whether this page is included in platformOS search indexes.',
|
|
74
|
+
},
|
|
75
|
+
format: {
|
|
76
|
+
type: 'string',
|
|
77
|
+
description: 'Response format (html, json, xml, csv, …). Often encoded in the filename.',
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
allowAdditionalFields: true,
|
|
81
|
+
},
|
|
82
|
+
// ── Layout ───────────────────────────────────────────────────────────────────
|
|
83
|
+
[platformos_common_1.PlatformOSFileType.Layout]: {
|
|
84
|
+
name: 'Layout',
|
|
85
|
+
fields: {
|
|
86
|
+
name: {
|
|
87
|
+
type: 'string',
|
|
88
|
+
description: 'Identifier used to reference this layout from pages.',
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
allowAdditionalFields: true,
|
|
92
|
+
},
|
|
93
|
+
// ── Partial ──────────────────────────────────────────────────────────────────
|
|
94
|
+
[platformos_common_1.PlatformOSFileType.Partial]: {
|
|
95
|
+
name: 'Partial',
|
|
96
|
+
fields: {
|
|
97
|
+
metadata: {
|
|
98
|
+
type: 'object',
|
|
99
|
+
description: 'Partial metadata. `metadata.params` declares accepted parameters; `metadata.name` is a human-readable label for the style guide.',
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
allowAdditionalFields: true,
|
|
103
|
+
},
|
|
104
|
+
// ── AuthorizationPolicy ──────────────────────────────────────────────────────
|
|
105
|
+
[platformos_common_1.PlatformOSFileType.Authorization]: {
|
|
106
|
+
name: 'AuthorizationPolicy',
|
|
107
|
+
fields: {
|
|
108
|
+
name: {
|
|
109
|
+
type: 'string',
|
|
110
|
+
required: true,
|
|
111
|
+
description: 'Unique identifier for this authorization policy.',
|
|
112
|
+
},
|
|
113
|
+
redirect_to: {
|
|
114
|
+
type: 'string',
|
|
115
|
+
description: 'URL to redirect the user to when the policy fails.',
|
|
116
|
+
},
|
|
117
|
+
flash_alert: {
|
|
118
|
+
type: 'string',
|
|
119
|
+
description: 'Flash alert message shown after a failed authorization redirect.',
|
|
120
|
+
},
|
|
121
|
+
flash_notice: {
|
|
122
|
+
type: 'string',
|
|
123
|
+
description: 'Flash notice message shown after a failed authorization redirect.',
|
|
124
|
+
},
|
|
125
|
+
},
|
|
126
|
+
allowAdditionalFields: true,
|
|
127
|
+
},
|
|
128
|
+
// ── Email ────────────────────────────────────────────────────────────────────
|
|
129
|
+
[platformos_common_1.PlatformOSFileType.Email]: {
|
|
130
|
+
name: 'Email',
|
|
131
|
+
fields: {
|
|
132
|
+
to: {
|
|
133
|
+
type: 'string',
|
|
134
|
+
required: true,
|
|
135
|
+
description: 'Recipient email address (may use Liquid).',
|
|
136
|
+
},
|
|
137
|
+
from: {
|
|
138
|
+
type: 'string',
|
|
139
|
+
description: 'Sender email address.',
|
|
140
|
+
},
|
|
141
|
+
reply_to: {
|
|
142
|
+
type: 'string',
|
|
143
|
+
description: 'Reply-to email address.',
|
|
144
|
+
},
|
|
145
|
+
cc: {
|
|
146
|
+
type: 'string',
|
|
147
|
+
description: 'Carbon-copy recipients.',
|
|
148
|
+
},
|
|
149
|
+
bcc: {
|
|
150
|
+
type: 'string',
|
|
151
|
+
description: 'Blind carbon-copy recipients.',
|
|
152
|
+
},
|
|
153
|
+
subject: {
|
|
154
|
+
type: 'string',
|
|
155
|
+
required: true,
|
|
156
|
+
description: 'Email subject line (may use Liquid).',
|
|
157
|
+
},
|
|
158
|
+
layout_path: {
|
|
159
|
+
type: 'string',
|
|
160
|
+
description: 'Layout partial to wrap the email body.',
|
|
161
|
+
},
|
|
162
|
+
delay: {
|
|
163
|
+
type: 'integer',
|
|
164
|
+
description: 'Seconds to delay delivery after being triggered.',
|
|
165
|
+
},
|
|
166
|
+
enabled: {
|
|
167
|
+
type: 'boolean',
|
|
168
|
+
description: 'When false, this email is never sent. Defaults to true.',
|
|
169
|
+
},
|
|
170
|
+
trigger_condition: {
|
|
171
|
+
type: ['boolean', 'string'],
|
|
172
|
+
description: 'Liquid expression or boolean; email is only sent when this evaluates to true.',
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
allowAdditionalFields: true,
|
|
176
|
+
},
|
|
177
|
+
// ── ApiCall ──────────────────────────────────────────────────────────────────
|
|
178
|
+
[platformos_common_1.PlatformOSFileType.ApiCall]: {
|
|
179
|
+
name: 'ApiCall',
|
|
180
|
+
fields: {
|
|
181
|
+
to: {
|
|
182
|
+
type: 'string',
|
|
183
|
+
required: true,
|
|
184
|
+
description: 'Target URL for the HTTP request (may use Liquid).',
|
|
185
|
+
},
|
|
186
|
+
request_type: {
|
|
187
|
+
type: 'string',
|
|
188
|
+
required: true,
|
|
189
|
+
description: 'HTTP method: GET, POST, PUT, PATCH, or DELETE.',
|
|
190
|
+
},
|
|
191
|
+
request_headers: {
|
|
192
|
+
type: 'string',
|
|
193
|
+
description: 'Liquid template rendering a JSON object of request headers.',
|
|
194
|
+
},
|
|
195
|
+
headers: {
|
|
196
|
+
type: 'string',
|
|
197
|
+
description: 'Alias for request_headers.',
|
|
198
|
+
deprecated: true,
|
|
199
|
+
deprecatedMessage: 'Use `request_headers` instead of `headers`.',
|
|
200
|
+
},
|
|
201
|
+
callback: {
|
|
202
|
+
type: 'string',
|
|
203
|
+
description: 'Liquid template executed after the HTTP response is received.',
|
|
204
|
+
},
|
|
205
|
+
delay: {
|
|
206
|
+
type: 'integer',
|
|
207
|
+
description: 'Seconds to delay the request after being triggered.',
|
|
208
|
+
},
|
|
209
|
+
enabled: {
|
|
210
|
+
type: 'boolean',
|
|
211
|
+
description: 'When false, this API call is never executed. Defaults to true.',
|
|
212
|
+
},
|
|
213
|
+
trigger_condition: {
|
|
214
|
+
type: ['boolean', 'string'],
|
|
215
|
+
description: 'Liquid expression or boolean; call is only made when this evaluates to true.',
|
|
216
|
+
},
|
|
217
|
+
format: {
|
|
218
|
+
type: 'string',
|
|
219
|
+
description: 'Request body encoding format (http, json, …).',
|
|
220
|
+
},
|
|
221
|
+
},
|
|
222
|
+
allowAdditionalFields: true,
|
|
223
|
+
},
|
|
224
|
+
// ── Sms ──────────────────────────────────────────────────────────────────────
|
|
225
|
+
[platformos_common_1.PlatformOSFileType.Sms]: {
|
|
226
|
+
name: 'SMS',
|
|
227
|
+
fields: {
|
|
228
|
+
to: {
|
|
229
|
+
type: 'string',
|
|
230
|
+
required: true,
|
|
231
|
+
description: 'Recipient phone number in E.164 format (may use Liquid).',
|
|
232
|
+
},
|
|
233
|
+
delay: {
|
|
234
|
+
type: 'integer',
|
|
235
|
+
description: 'Seconds to delay sending after being triggered.',
|
|
236
|
+
},
|
|
237
|
+
enabled: {
|
|
238
|
+
type: 'boolean',
|
|
239
|
+
description: 'When false, this SMS is never sent. Defaults to true.',
|
|
240
|
+
},
|
|
241
|
+
trigger_condition: {
|
|
242
|
+
type: ['boolean', 'string'],
|
|
243
|
+
description: 'Liquid expression or boolean; SMS is only sent when this evaluates to true.',
|
|
244
|
+
},
|
|
245
|
+
},
|
|
246
|
+
allowAdditionalFields: true,
|
|
247
|
+
},
|
|
248
|
+
// ── Migration ────────────────────────────────────────────────────────────────
|
|
249
|
+
[platformos_common_1.PlatformOSFileType.Migration]: {
|
|
250
|
+
name: 'Migration',
|
|
251
|
+
fields: {},
|
|
252
|
+
allowAdditionalFields: true,
|
|
253
|
+
},
|
|
254
|
+
// ── FormConfiguration ────────────────────────────────────────────────────────
|
|
255
|
+
[platformos_common_1.PlatformOSFileType.FormConfiguration]: {
|
|
256
|
+
name: 'FormConfiguration',
|
|
257
|
+
fields: {
|
|
258
|
+
name: {
|
|
259
|
+
type: 'string',
|
|
260
|
+
required: true,
|
|
261
|
+
description: 'Unique identifier for this form, used in include_form / function calls.',
|
|
262
|
+
},
|
|
263
|
+
resource: {
|
|
264
|
+
type: ['string', 'object'],
|
|
265
|
+
description: 'Model or resource type this form operates on.',
|
|
266
|
+
},
|
|
267
|
+
resource_owner: {
|
|
268
|
+
type: 'string',
|
|
269
|
+
description: 'Who owns the resource being created/updated.',
|
|
270
|
+
},
|
|
271
|
+
fields: {
|
|
272
|
+
type: 'object',
|
|
273
|
+
description: 'Field definitions — what data this form accepts and validates.',
|
|
274
|
+
},
|
|
275
|
+
redirect_to: {
|
|
276
|
+
type: 'string',
|
|
277
|
+
description: 'URL to redirect to after a successful form submission.',
|
|
278
|
+
},
|
|
279
|
+
flash_notice: {
|
|
280
|
+
type: 'string',
|
|
281
|
+
description: 'Flash notice message shown after a successful submission.',
|
|
282
|
+
},
|
|
283
|
+
flash_alert: {
|
|
284
|
+
type: 'string',
|
|
285
|
+
description: 'Flash alert message shown after a failed submission.',
|
|
286
|
+
},
|
|
287
|
+
},
|
|
288
|
+
allowAdditionalFields: true,
|
|
289
|
+
},
|
|
290
|
+
};
|
|
291
|
+
// ─── Lookup helper ────────────────────────────────────────────────────────────
|
|
292
|
+
/**
|
|
293
|
+
* Returns the frontmatter schema for a given file type, or undefined if no
|
|
294
|
+
* schema is defined for that type (e.g. GraphQL, YAML, Asset types).
|
|
295
|
+
*/
|
|
296
|
+
function getFrontmatterSchema(fileType) {
|
|
297
|
+
if (fileType === undefined)
|
|
298
|
+
return undefined;
|
|
299
|
+
return exports.FRONTMATTER_SCHEMAS[fileType];
|
|
300
|
+
}
|
|
301
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/frontmatter/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAqUH,oDAKC;AAxUD,qEAAmE;AAkCnE,iFAAiF;AAEjF;;;;;;;;;;GAUG;AACU,QAAA,mBAAmB,GAA2D;IACzF,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,IAAI,CAAC,EAAE;QACzB,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE;YACN,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qEAAqE;aACnF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8EAA8E;aAC5F;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mBAAmB;gBAChC,UAAU,EAAE,IAAI;gBAChB,iBAAiB,EAAE,wCAAwC;aAC5D;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oEAAoE;aAClF;YACD,sBAAsB,EAAE;gBACtB,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,qEAAqE;aACnF;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;aACpF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4EAA4E;aAC1F;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,oDAAoD;aAClE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,6DAA6D;aAC3E;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2EAA2E;aACzF;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,MAAM,CAAC,EAAE;QAC3B,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sDAAsD;aACpE;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,kIAAkI;aACrI;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,aAAa,CAAC,EAAE;QAClC,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE;YACN,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,kDAAkD;aAChE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD;aAClE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kEAAkE;aAChF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mEAAmE;aACjF;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,KAAK,CAAC,EAAE;QAC1B,IAAI,EAAE,OAAO;QACb,MAAM,EAAE;YACN,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,2CAA2C;aACzD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uBAAuB;aACrC;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+BAA+B;aAC7C;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,sCAAsC;aACpD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,kDAAkD;aAChE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,yDAAyD;aACvE;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC3B,WAAW,EACT,+EAA+E;aAClF;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,mDAAmD;aACjE;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,gDAAgD;aAC9D;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6DAA6D;aAC3E;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4BAA4B;gBACzC,UAAU,EAAE,IAAI;gBAChB,iBAAiB,EAAE,6CAA6C;aACjE;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+DAA+D;aAC7E;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,qDAAqD;aACnE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gEAAgE;aAC9E;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC3B,WAAW,EAAE,8EAA8E;aAC5F;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,GAAG,CAAC,EAAE;QACxB,IAAI,EAAE,KAAK;QACX,MAAM,EAAE;YACN,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,0DAA0D;aACxE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,iDAAiD;aAC/D;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,uDAAuD;aACrE;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC3B,WAAW,EAAE,6EAA6E;aAC3F;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,SAAS,CAAC,EAAE;QAC9B,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,EAAE;QACV,qBAAqB,EAAE,IAAI;KAC5B;IAED,gFAAgF;IAChF,CAAC,sCAAkB,CAAC,iBAAiB,CAAC,EAAE;QACtC,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACN,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,yEAAyE;aACvF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAC1B,WAAW,EAAE,+CAA+C;aAC7D;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8CAA8C;aAC5D;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gEAAgE;aAC9E;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wDAAwD;aACtE;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2DAA2D;aACzE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sDAAsD;aACpE;SACF;QACD,qBAAqB,EAAE,IAAI;KAC5B;CACF,CAAC;AAEF,iFAAiF;AAEjF;;;GAGG;AACH,SAAgB,oBAAoB,CAClC,QAAwC;IAExC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,OAAO,2BAAmB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,8 @@ export * from './context-utils';
|
|
|
6
6
|
export * from './find-root';
|
|
7
7
|
export * from './fixes';
|
|
8
8
|
export * from './ignore';
|
|
9
|
-
export { FILE_TYPE_DIRS, getAppPaths, getFileType, getModulePaths, isApiCall, isAuthorization, isEmail, isKnownLiquidFile, isLayout, isMigration, isPage, isPartial, isSms, PlatformOSFileType, } from '@platformos/platformos-common';
|
|
9
|
+
export { FILE_TYPE_DIRS, getAppPaths, getFileType, getModulePaths, isApiCall, isAuthorization, isEmail, isFormConfiguration, isKnownGraphQLFile, isKnownLiquidFile, isLayout, isMigration, isPage, isPartial, isSms, PlatformOSFileType, } from '@platformos/platformos-common';
|
|
10
|
+
export * from './frontmatter';
|
|
10
11
|
export * from './json';
|
|
11
12
|
export * from './JSONValidator';
|
|
12
13
|
export * as path from './path';
|
package/dist/index.js
CHANGED
|
@@ -36,7 +36,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.path = exports.PlatformOSFileType = exports.isSms = exports.isPartial = exports.isPage = exports.isMigration = exports.isLayout = exports.isKnownLiquidFile = exports.isEmail = exports.isAuthorization = exports.isApiCall = exports.getModulePaths = exports.getFileType = exports.getAppPaths = exports.FILE_TYPE_DIRS = void 0;
|
|
39
|
+
exports.path = exports.PlatformOSFileType = exports.isSms = exports.isPartial = exports.isPage = exports.isMigration = exports.isLayout = exports.isKnownLiquidFile = exports.isKnownGraphQLFile = exports.isFormConfiguration = exports.isEmail = exports.isAuthorization = exports.isApiCall = exports.getModulePaths = exports.getFileType = exports.getAppPaths = exports.FILE_TYPE_DIRS = void 0;
|
|
40
40
|
exports.check = check;
|
|
41
41
|
const AugmentedPlatformOSDocset_1 = require("./AugmentedPlatformOSDocset");
|
|
42
42
|
const JSONValidator_1 = require("./JSONValidator");
|
|
@@ -62,6 +62,8 @@ Object.defineProperty(exports, "getModulePaths", { enumerable: true, get: functi
|
|
|
62
62
|
Object.defineProperty(exports, "isApiCall", { enumerable: true, get: function () { return platformos_common_1.isApiCall; } });
|
|
63
63
|
Object.defineProperty(exports, "isAuthorization", { enumerable: true, get: function () { return platformos_common_1.isAuthorization; } });
|
|
64
64
|
Object.defineProperty(exports, "isEmail", { enumerable: true, get: function () { return platformos_common_1.isEmail; } });
|
|
65
|
+
Object.defineProperty(exports, "isFormConfiguration", { enumerable: true, get: function () { return platformos_common_1.isFormConfiguration; } });
|
|
66
|
+
Object.defineProperty(exports, "isKnownGraphQLFile", { enumerable: true, get: function () { return platformos_common_1.isKnownGraphQLFile; } });
|
|
65
67
|
Object.defineProperty(exports, "isKnownLiquidFile", { enumerable: true, get: function () { return platformos_common_1.isKnownLiquidFile; } });
|
|
66
68
|
Object.defineProperty(exports, "isLayout", { enumerable: true, get: function () { return platformos_common_1.isLayout; } });
|
|
67
69
|
Object.defineProperty(exports, "isMigration", { enumerable: true, get: function () { return platformos_common_1.isMigration; } });
|
|
@@ -69,6 +71,7 @@ Object.defineProperty(exports, "isPage", { enumerable: true, get: function () {
|
|
|
69
71
|
Object.defineProperty(exports, "isPartial", { enumerable: true, get: function () { return platformos_common_1.isPartial; } });
|
|
70
72
|
Object.defineProperty(exports, "isSms", { enumerable: true, get: function () { return platformos_common_1.isSms; } });
|
|
71
73
|
Object.defineProperty(exports, "PlatformOSFileType", { enumerable: true, get: function () { return platformos_common_1.PlatformOSFileType; } });
|
|
74
|
+
__exportStar(require("./frontmatter"), exports);
|
|
72
75
|
__exportStar(require("./json"), exports);
|
|
73
76
|
__exportStar(require("./JSONValidator"), exports);
|
|
74
77
|
exports.path = __importStar(require("./path"));
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -109,6 +109,9 @@ function findTypeMismatchParams(liquidDocParameters, providedParams) {
|
|
|
109
109
|
else if (arg.value.type === liquid_html_parser_1.NodeTypes.VariableLookup) {
|
|
110
110
|
continue;
|
|
111
111
|
}
|
|
112
|
+
else if (arg.value.type === liquid_html_parser_1.NodeTypes.NamedArgument) {
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
112
115
|
const liquidDocParamDef = liquidDocParameters.get(arg.name);
|
|
113
116
|
if (liquidDocParamDef && liquidDocParamDef.type) {
|
|
114
117
|
const paramType = liquidDocParamDef.type.toLowerCase();
|
|
@@ -131,6 +134,8 @@ function reportTypeMismatches(context, typeMismatchArgs, liquidDocParameters) {
|
|
|
131
134
|
const paramDef = liquidDocParameters.get(arg.name);
|
|
132
135
|
if (!paramDef || !paramDef.type)
|
|
133
136
|
continue;
|
|
137
|
+
if (arg.value.type === liquid_html_parser_1.NodeTypes.NamedArgument)
|
|
138
|
+
continue;
|
|
134
139
|
const expectedType = paramDef.type.toLowerCase();
|
|
135
140
|
const actualType = (0, utils_1.inferArgumentType)(arg.value);
|
|
136
141
|
const suggestions = generateTypeMismatchSuggestions(expectedType, arg.value.position.start, arg.value.position.end);
|