@grexx/grexxlinter 0.2.350 → 0.2.351
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/cli.js +49 -10
- package/lsp.js +36 -0
- package/package.json +1 -1
- package/schemas/activityAttribute.schema.json +0 -7
- package/schemas/attribute.schema.json +0 -10
- package/schemas/conditionList.schema.json +50 -69
- package/schemas/datasetColumn.schema.json +0 -15
- package/schemas/datasetRight.schema.json +0 -1
- package/schemas/form.schema.json +74 -90
- package/schemas/formRight.schema.json +0 -1
- package/schemas/formfield.schema.json +0 -10
- package/schemas/ifthenelse.schema.json +57 -73
- package/schemas/llmModel.schema.json +0 -27
- package/schemas/requestContext.schema.json +0 -10
package/cli.js
CHANGED
|
@@ -14951,8 +14951,32 @@ function lintDocument(ctx, input) {
|
|
|
14951
14951
|
const schema = validate.schema;
|
|
14952
14952
|
const forbidden = /* @__PURE__ */ new Set();
|
|
14953
14953
|
for (const e of errors) if (e.keyword === "false schema") forbidden.add(e.instancePath);
|
|
14954
|
+
const anyOfRe = /^(.*\/anyOf)\/\d+\/required$/;
|
|
14955
|
+
const reqAnyGroups = /* @__PURE__ */ new Map();
|
|
14956
|
+
for (const e of errors) {
|
|
14957
|
+
const m = e.keyword === "required" ? anyOfRe.exec(e.schemaPath) : null;
|
|
14958
|
+
if (!m) continue;
|
|
14959
|
+
const key2 = `${m[1]}@${e.instancePath}`;
|
|
14960
|
+
const g = reqAnyGroups.get(key2) ?? { instancePath: e.instancePath, fields: [], err: e };
|
|
14961
|
+
g.fields.push(String(e.params.missingProperty));
|
|
14962
|
+
reqAnyGroups.set(key2, g);
|
|
14963
|
+
}
|
|
14964
|
+
const emittedReqAny = /* @__PURE__ */ new Set();
|
|
14954
14965
|
for (const e of errors) {
|
|
14955
14966
|
if (META_KEYWORDS.has(e.keyword)) continue;
|
|
14967
|
+
if (e.keyword === "required") {
|
|
14968
|
+
const m = anyOfRe.exec(e.schemaPath);
|
|
14969
|
+
const key2 = m ? `${m[1]}@${e.instancePath}` : null;
|
|
14970
|
+
const g = key2 ? reqAnyGroups.get(key2) : null;
|
|
14971
|
+
if (g && g.fields.length >= 2) {
|
|
14972
|
+
if (!emittedReqAny.has(key2)) {
|
|
14973
|
+
emittedReqAny.add(key2);
|
|
14974
|
+
const state = describeState(schema, g.err, input.value, ctx.registry.resolveRef);
|
|
14975
|
+
push("required-field", g.instancePath, null, `missing at least one of: ${g.fields.join(", ")}${state ? ` ${state}` : ""}`);
|
|
14976
|
+
}
|
|
14977
|
+
continue;
|
|
14978
|
+
}
|
|
14979
|
+
}
|
|
14956
14980
|
const { field, path } = locate(e);
|
|
14957
14981
|
if ((e.keyword === "additionalProperties" || e.keyword === "unevaluatedProperties") && forbidden.has(path)) {
|
|
14958
14982
|
continue;
|
|
@@ -14966,6 +14990,18 @@ function lintDocument(ctx, input) {
|
|
|
14966
14990
|
push("value-case", path, field, `"${String(actual)}" should be "${want}" (case/format mismatch)`);
|
|
14967
14991
|
continue;
|
|
14968
14992
|
}
|
|
14993
|
+
const got = actual === void 0 ? "absent" : JSON.stringify(actual);
|
|
14994
|
+
push("invalid-value", path, field, `got ${got} \u2014 ${humanize(e)}`);
|
|
14995
|
+
continue;
|
|
14996
|
+
}
|
|
14997
|
+
if (e.keyword === "type") {
|
|
14998
|
+
const actual = valueAtPointer(input.value, e.instancePath);
|
|
14999
|
+
const recv = actual === null ? "null" : Array.isArray(actual) ? "array" : typeof actual;
|
|
15000
|
+
let val = JSON.stringify(actual) ?? "";
|
|
15001
|
+
if (val.length > 60) val = `${val.slice(0, 57)}\u2026"`;
|
|
15002
|
+
const expected = String(e.params.type);
|
|
15003
|
+
push("invalid-type", path, field, `expected ${expected} but received ${recv}${actual === void 0 ? "" : ` with value ${val}`}`);
|
|
15004
|
+
continue;
|
|
14969
15005
|
}
|
|
14970
15006
|
const rule = ruleForKeyword(e.keyword);
|
|
14971
15007
|
let message = humanize(e);
|
|
@@ -15014,7 +15050,7 @@ function isLintableYaml(text) {
|
|
|
15014
15050
|
// src/cli.ts
|
|
15015
15051
|
var PARALLEL_THRESHOLD = 200;
|
|
15016
15052
|
var MAX_WORKERS = 8;
|
|
15017
|
-
var VERSION = true ? "0.2.
|
|
15053
|
+
var VERSION = true ? "0.2.351" : "0.0.0-dev";
|
|
15018
15054
|
function isNewer(latest, current) {
|
|
15019
15055
|
const a = latest.split(".").map(Number);
|
|
15020
15056
|
const b = current.split(".").map(Number);
|
|
@@ -15035,7 +15071,7 @@ function checkForUpdate(disabled) {
|
|
|
15035
15071
|
}
|
|
15036
15072
|
var VALID_RULES = new Set(LINT_RULE_DESCRIPTORS.map((d) => d.id));
|
|
15037
15073
|
function parseArgs(argv) {
|
|
15038
|
-
const args = { paths: [], off: [], format: "text", quiet: false, noUpdateCheck: false };
|
|
15074
|
+
const args = { paths: [], off: [], format: "text", quiet: false, errorsOnly: false, noUpdateCheck: false };
|
|
15039
15075
|
for (let i = 0; i < argv.length; i++) {
|
|
15040
15076
|
const a = argv[i];
|
|
15041
15077
|
if (a === "--settings") args.settingsFile = argv[++i];
|
|
@@ -15050,6 +15086,7 @@ function parseArgs(argv) {
|
|
|
15050
15086
|
else if (a === "--format") args.format = argv[++i];
|
|
15051
15087
|
else if (a === "--report") args.report = argv[++i];
|
|
15052
15088
|
else if (a === "--quiet") args.quiet = true;
|
|
15089
|
+
else if (a === "--errors-only") args.errorsOnly = true;
|
|
15053
15090
|
else if (a === "--no-update-check") args.noUpdateCheck = true;
|
|
15054
15091
|
else if (a.startsWith("--")) throw new Error(`unknown option: ${a}`);
|
|
15055
15092
|
else args.paths.push(a);
|
|
@@ -15088,18 +15125,19 @@ var COLORS = { error: "\x1B[31m", warning: "\x1B[33m", info: "\x1B[36m" };
|
|
|
15088
15125
|
var RESET = "\x1B[0m";
|
|
15089
15126
|
var useColor = process.stdout.isTTY;
|
|
15090
15127
|
var paint = (s, c) => useColor ? `${c}${s}${RESET}` : s;
|
|
15091
|
-
function printText(results, settings, quiet) {
|
|
15128
|
+
function printText(results, settings, quiet, errorsOnly) {
|
|
15092
15129
|
for (const r of results) {
|
|
15093
15130
|
if (r.skipped) continue;
|
|
15094
|
-
|
|
15131
|
+
const msgs = errorsOnly ? r.messages.filter((m) => m.severity === "error") : r.messages;
|
|
15132
|
+
if (quiet && msgs.length === 0) continue;
|
|
15095
15133
|
const rel = r.file ? relative(process.cwd(), r.file) : "<input>";
|
|
15096
15134
|
const head = `${rel}${r.casetype ? ` (${r.casetype})` : ""}`;
|
|
15097
|
-
if (
|
|
15135
|
+
if (msgs.length === 0) {
|
|
15098
15136
|
if (!quiet) console.log(`${paint("ok", COLORS.info)} ${head}`);
|
|
15099
15137
|
continue;
|
|
15100
15138
|
}
|
|
15101
15139
|
console.log(head);
|
|
15102
|
-
for (const m of
|
|
15140
|
+
for (const m of msgs) {
|
|
15103
15141
|
const loc = m.path || "/";
|
|
15104
15142
|
console.log(` ${paint(m.severity.padEnd(7), COLORS[m.severity])} ${m.rule.padEnd(16)} ${loc} ${m.message}`);
|
|
15105
15143
|
}
|
|
@@ -15111,8 +15149,9 @@ function printText(results, settings, quiet) {
|
|
|
15111
15149
|
${s.files} file(s)${skipped ? `, ${skipped} skipped` : ""} \u2014 ${paint(`${s.errors} error(s)`, COLORS.error)}, ${paint(`${s.warnings} warning(s)`, COLORS.warning)}, ${s.infos} info(s) [fail-on: ${settings.failOn}]`
|
|
15112
15150
|
);
|
|
15113
15151
|
}
|
|
15114
|
-
function printReport(results, kind) {
|
|
15115
|
-
|
|
15152
|
+
function printReport(results, kind, errorsOnly) {
|
|
15153
|
+
let msgs = results.filter((r) => !r.skipped).flatMap((r) => r.messages);
|
|
15154
|
+
if (errorsOnly) msgs = msgs.filter((m) => m.severity === "error");
|
|
15116
15155
|
if (kind === "rules") {
|
|
15117
15156
|
const by2 = /* @__PURE__ */ new Map();
|
|
15118
15157
|
for (const m of msgs) {
|
|
@@ -15231,12 +15270,12 @@ async function main() {
|
|
|
15231
15270
|
results = lintFiles(files, ctx, settings);
|
|
15232
15271
|
}
|
|
15233
15272
|
if (args.report) {
|
|
15234
|
-
printReport(results, args.report);
|
|
15273
|
+
printReport(results, args.report, args.errorsOnly);
|
|
15235
15274
|
} else if (args.format === "json") {
|
|
15236
15275
|
const active = results.filter((r) => !r.skipped);
|
|
15237
15276
|
console.log(JSON.stringify({ summary: summarize(active), results }, null, 2));
|
|
15238
15277
|
} else {
|
|
15239
|
-
printText(results, settings, args.quiet);
|
|
15278
|
+
printText(results, settings, args.quiet, args.errorsOnly);
|
|
15240
15279
|
}
|
|
15241
15280
|
const latest = await updatePromise;
|
|
15242
15281
|
if (latest) {
|
package/lsp.js
CHANGED
|
@@ -23915,8 +23915,32 @@ function lintDocument(ctx2, input) {
|
|
|
23915
23915
|
const schema = validate.schema;
|
|
23916
23916
|
const forbidden = /* @__PURE__ */ new Set();
|
|
23917
23917
|
for (const e of errors) if (e.keyword === "false schema") forbidden.add(e.instancePath);
|
|
23918
|
+
const anyOfRe = /^(.*\/anyOf)\/\d+\/required$/;
|
|
23919
|
+
const reqAnyGroups = /* @__PURE__ */ new Map();
|
|
23920
|
+
for (const e of errors) {
|
|
23921
|
+
const m = e.keyword === "required" ? anyOfRe.exec(e.schemaPath) : null;
|
|
23922
|
+
if (!m) continue;
|
|
23923
|
+
const key2 = `${m[1]}@${e.instancePath}`;
|
|
23924
|
+
const g = reqAnyGroups.get(key2) ?? { instancePath: e.instancePath, fields: [], err: e };
|
|
23925
|
+
g.fields.push(String(e.params.missingProperty));
|
|
23926
|
+
reqAnyGroups.set(key2, g);
|
|
23927
|
+
}
|
|
23928
|
+
const emittedReqAny = /* @__PURE__ */ new Set();
|
|
23918
23929
|
for (const e of errors) {
|
|
23919
23930
|
if (META_KEYWORDS.has(e.keyword)) continue;
|
|
23931
|
+
if (e.keyword === "required") {
|
|
23932
|
+
const m = anyOfRe.exec(e.schemaPath);
|
|
23933
|
+
const key2 = m ? `${m[1]}@${e.instancePath}` : null;
|
|
23934
|
+
const g = key2 ? reqAnyGroups.get(key2) : null;
|
|
23935
|
+
if (g && g.fields.length >= 2) {
|
|
23936
|
+
if (!emittedReqAny.has(key2)) {
|
|
23937
|
+
emittedReqAny.add(key2);
|
|
23938
|
+
const state = describeState(schema, g.err, input.value, ctx2.registry.resolveRef);
|
|
23939
|
+
push("required-field", g.instancePath, null, `missing at least one of: ${g.fields.join(", ")}${state ? ` ${state}` : ""}`);
|
|
23940
|
+
}
|
|
23941
|
+
continue;
|
|
23942
|
+
}
|
|
23943
|
+
}
|
|
23920
23944
|
const { field, path } = locate(e);
|
|
23921
23945
|
if ((e.keyword === "additionalProperties" || e.keyword === "unevaluatedProperties") && forbidden.has(path)) {
|
|
23922
23946
|
continue;
|
|
@@ -23930,6 +23954,18 @@ function lintDocument(ctx2, input) {
|
|
|
23930
23954
|
push("value-case", path, field, `"${String(actual)}" should be "${want}" (case/format mismatch)`);
|
|
23931
23955
|
continue;
|
|
23932
23956
|
}
|
|
23957
|
+
const got = actual === void 0 ? "absent" : JSON.stringify(actual);
|
|
23958
|
+
push("invalid-value", path, field, `got ${got} \u2014 ${humanize(e)}`);
|
|
23959
|
+
continue;
|
|
23960
|
+
}
|
|
23961
|
+
if (e.keyword === "type") {
|
|
23962
|
+
const actual = valueAtPointer(input.value, e.instancePath);
|
|
23963
|
+
const recv = actual === null ? "null" : Array.isArray(actual) ? "array" : typeof actual;
|
|
23964
|
+
let val = JSON.stringify(actual) ?? "";
|
|
23965
|
+
if (val.length > 60) val = `${val.slice(0, 57)}\u2026"`;
|
|
23966
|
+
const expected = String(e.params.type);
|
|
23967
|
+
push("invalid-type", path, field, `expected ${expected} but received ${recv}${actual === void 0 ? "" : ` with value ${val}`}`);
|
|
23968
|
+
continue;
|
|
23933
23969
|
}
|
|
23934
23970
|
const rule = ruleForKeyword(e.keyword);
|
|
23935
23971
|
let message = humanize(e);
|
package/package.json
CHANGED
|
@@ -106,12 +106,5 @@
|
|
|
106
106
|
],
|
|
107
107
|
"title": "activityAttribute",
|
|
108
108
|
"type": "object",
|
|
109
|
-
"allOf": [
|
|
110
|
-
{
|
|
111
|
-
"properties": {
|
|
112
|
-
"allowHTML": false
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
],
|
|
116
109
|
"$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/activityAttribute.json."
|
|
117
110
|
}
|
|
@@ -226,16 +226,6 @@
|
|
|
226
226
|
"title": "attribute",
|
|
227
227
|
"type": "object",
|
|
228
228
|
"allOf": [
|
|
229
|
-
{
|
|
230
|
-
"properties": {
|
|
231
|
-
"calculatedTemplate": false
|
|
232
|
-
}
|
|
233
|
-
},
|
|
234
|
-
{
|
|
235
|
-
"properties": {
|
|
236
|
-
"linkToPlatform": false
|
|
237
|
-
}
|
|
238
|
-
},
|
|
239
229
|
{
|
|
240
230
|
"if": {
|
|
241
231
|
"properties": {
|
|
@@ -1,86 +1,67 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$id": "https://grexx.net/studio-next/schemas/conditionList.schema.json",
|
|
3
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
-
"additionalProperties": false,
|
|
5
|
-
"properties": {
|
|
6
|
-
"_id": {
|
|
7
|
-
"type": "string"
|
|
8
|
-
},
|
|
9
|
-
"_interfaceID": {
|
|
10
|
-
"type": "string"
|
|
11
|
-
},
|
|
12
|
-
"_isInterface": {
|
|
13
|
-
"type": "boolean"
|
|
14
|
-
},
|
|
15
|
-
"_knownIDs": {
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string"
|
|
2
|
+
"$id" : "https://grexx.net/studio-next/schemas/conditionList.schema.json",
|
|
3
|
+
"$schema" : "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"additionalProperties" : false,
|
|
5
|
+
"properties" : {
|
|
6
|
+
"_id" : {
|
|
7
|
+
"type" : "string"
|
|
8
|
+
},
|
|
9
|
+
"_interfaceID" : {
|
|
10
|
+
"type" : "string"
|
|
11
|
+
},
|
|
12
|
+
"_isInterface" : {
|
|
13
|
+
"type" : "boolean"
|
|
14
|
+
},
|
|
15
|
+
"_knownIDs" : {
|
|
16
|
+
"items" : {
|
|
17
|
+
"type" : "string"
|
|
18
18
|
},
|
|
19
|
-
"type": "array"
|
|
19
|
+
"type" : "array"
|
|
20
20
|
},
|
|
21
|
-
"_origin": {
|
|
22
|
-
"type": "string"
|
|
21
|
+
"_origin" : {
|
|
22
|
+
"type" : "string"
|
|
23
23
|
},
|
|
24
|
-
"_src": {
|
|
25
|
-
"type": "string"
|
|
24
|
+
"_src" : {
|
|
25
|
+
"type" : "string"
|
|
26
26
|
},
|
|
27
|
-
"_type": {
|
|
28
|
-
"const": "conditionList"
|
|
27
|
+
"_type" : {
|
|
28
|
+
"const" : "conditionList"
|
|
29
29
|
},
|
|
30
|
-
"_uid": {
|
|
31
|
-
"description": "Deterministic UUID derived from case-ID.",
|
|
32
|
-
"format": "uuid",
|
|
33
|
-
"type": "string"
|
|
30
|
+
"_uid" : {
|
|
31
|
+
"description" : "Deterministic UUID derived from case-ID.",
|
|
32
|
+
"format" : "uuid",
|
|
33
|
+
"type" : "string"
|
|
34
34
|
},
|
|
35
|
-
"conditions": {
|
|
36
|
-
"items": {
|
|
37
|
-
"$ref": "abstractCondition.schema.json"
|
|
35
|
+
"conditions" : {
|
|
36
|
+
"items" : {
|
|
37
|
+
"$ref" : "abstractCondition.schema.json"
|
|
38
38
|
},
|
|
39
|
-
"type": "array"
|
|
39
|
+
"type" : "array"
|
|
40
40
|
},
|
|
41
|
-
"description": {
|
|
42
|
-
"$ref": "template/inlineTemplate.schema.json"
|
|
41
|
+
"description" : {
|
|
42
|
+
"$ref" : "template/inlineTemplate.schema.json"
|
|
43
43
|
},
|
|
44
|
-
"inactive": {
|
|
45
|
-
"type": "boolean"
|
|
44
|
+
"inactive" : {
|
|
45
|
+
"type" : "boolean"
|
|
46
46
|
},
|
|
47
|
-
"interfaceStudioProduct": {
|
|
48
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
47
|
+
"interfaceStudioProduct" : {
|
|
48
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
49
49
|
},
|
|
50
|
-
"metaCaseToOtap": {
|
|
51
|
-
"type": "boolean"
|
|
50
|
+
"metaCaseToOtap" : {
|
|
51
|
+
"type" : "boolean"
|
|
52
52
|
},
|
|
53
|
-
"negate": {
|
|
54
|
-
"type": "boolean"
|
|
53
|
+
"negate" : {
|
|
54
|
+
"type" : "boolean"
|
|
55
55
|
},
|
|
56
|
-
"ourProductId": {
|
|
57
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
56
|
+
"ourProductId" : {
|
|
57
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
58
58
|
},
|
|
59
|
-
"type": {
|
|
60
|
-
"enum": [
|
|
61
|
-
|
|
62
|
-
"OR"
|
|
63
|
-
],
|
|
64
|
-
"type": "string"
|
|
59
|
+
"type" : {
|
|
60
|
+
"enum" : [ "AND", "OR" ],
|
|
61
|
+
"type" : "string"
|
|
65
62
|
}
|
|
66
63
|
},
|
|
67
|
-
"required": [
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
"title": "conditionList",
|
|
72
|
-
"type": "object",
|
|
73
|
-
"allOf": [
|
|
74
|
-
{
|
|
75
|
-
"properties": {
|
|
76
|
-
"hasValidConfiguration": false
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"properties": {
|
|
81
|
-
"wasEverFullyConfigured": false
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/conditionList.json."
|
|
86
|
-
}
|
|
64
|
+
"required" : [ "_type", "_uid" ],
|
|
65
|
+
"title" : "conditionList",
|
|
66
|
+
"type" : "object"
|
|
67
|
+
}
|
|
@@ -106,16 +106,6 @@
|
|
|
106
106
|
"title": "datasetColumn",
|
|
107
107
|
"type": "object",
|
|
108
108
|
"allOf": [
|
|
109
|
-
{
|
|
110
|
-
"properties": {
|
|
111
|
-
"columnType": false
|
|
112
|
-
}
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
"properties": {
|
|
116
|
-
"hasValidConfiguration": false
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
109
|
{
|
|
120
110
|
"if": {
|
|
121
111
|
"anyOf": [
|
|
@@ -180,11 +170,6 @@
|
|
|
180
170
|
}
|
|
181
171
|
}
|
|
182
172
|
},
|
|
183
|
-
{
|
|
184
|
-
"properties": {
|
|
185
|
-
"wasEverFullyConfigured": false
|
|
186
|
-
}
|
|
187
|
-
},
|
|
188
173
|
{
|
|
189
174
|
"if": {
|
|
190
175
|
"properties": {
|
package/schemas/form.schema.json
CHANGED
|
@@ -1,119 +1,103 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$id": "https://grexx.net/studio-next/schemas/form.schema.json",
|
|
3
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
-
"additionalProperties": false,
|
|
5
|
-
"properties": {
|
|
6
|
-
"_id": {
|
|
7
|
-
"type": "string"
|
|
8
|
-
},
|
|
9
|
-
"_interfaceID": {
|
|
10
|
-
"type": "string"
|
|
11
|
-
},
|
|
12
|
-
"_isInterface": {
|
|
13
|
-
"type": "boolean"
|
|
14
|
-
},
|
|
15
|
-
"_knownIDs": {
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string"
|
|
2
|
+
"$id" : "https://grexx.net/studio-next/schemas/form.schema.json",
|
|
3
|
+
"$schema" : "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"additionalProperties" : false,
|
|
5
|
+
"properties" : {
|
|
6
|
+
"_id" : {
|
|
7
|
+
"type" : "string"
|
|
8
|
+
},
|
|
9
|
+
"_interfaceID" : {
|
|
10
|
+
"type" : "string"
|
|
11
|
+
},
|
|
12
|
+
"_isInterface" : {
|
|
13
|
+
"type" : "boolean"
|
|
14
|
+
},
|
|
15
|
+
"_knownIDs" : {
|
|
16
|
+
"items" : {
|
|
17
|
+
"type" : "string"
|
|
18
18
|
},
|
|
19
|
-
"type": "array"
|
|
19
|
+
"type" : "array"
|
|
20
20
|
},
|
|
21
|
-
"_origin": {
|
|
22
|
-
"type": "string"
|
|
21
|
+
"_origin" : {
|
|
22
|
+
"type" : "string"
|
|
23
23
|
},
|
|
24
|
-
"_src": {
|
|
25
|
-
"type": "string"
|
|
24
|
+
"_src" : {
|
|
25
|
+
"type" : "string"
|
|
26
26
|
},
|
|
27
|
-
"_type": {
|
|
28
|
-
"const": "form"
|
|
27
|
+
"_type" : {
|
|
28
|
+
"const" : "form"
|
|
29
29
|
},
|
|
30
|
-
"_uid": {
|
|
31
|
-
"description": "Deterministic UUID derived from case-ID.",
|
|
32
|
-
"format": "uuid",
|
|
33
|
-
"type": "string"
|
|
30
|
+
"_uid" : {
|
|
31
|
+
"description" : "Deterministic UUID derived from case-ID.",
|
|
32
|
+
"format" : "uuid",
|
|
33
|
+
"type" : "string"
|
|
34
34
|
},
|
|
35
|
-
"condition": {
|
|
36
|
-
"$ref": "conditionList.schema.json"
|
|
35
|
+
"condition" : {
|
|
36
|
+
"$ref" : "conditionList.schema.json"
|
|
37
37
|
},
|
|
38
|
-
"cssClass": {
|
|
39
|
-
"items": {
|
|
40
|
-
"type": "string"
|
|
38
|
+
"cssClass" : {
|
|
39
|
+
"items" : {
|
|
40
|
+
"type" : "string"
|
|
41
41
|
},
|
|
42
|
-
"type": "array"
|
|
42
|
+
"type" : "array"
|
|
43
43
|
},
|
|
44
|
-
"dataset": {
|
|
45
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
44
|
+
"dataset" : {
|
|
45
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
46
46
|
},
|
|
47
|
-
"description": {
|
|
48
|
-
"$ref": "template/inlineTemplate.schema.json"
|
|
47
|
+
"description" : {
|
|
48
|
+
"$ref" : "template/inlineTemplate.schema.json"
|
|
49
49
|
},
|
|
50
|
-
"formGroup": {
|
|
51
|
-
"$ref": "formGroup.schema.json"
|
|
50
|
+
"formGroup" : {
|
|
51
|
+
"$ref" : "formGroup.schema.json"
|
|
52
52
|
},
|
|
53
|
-
"formLogic": {
|
|
54
|
-
"items": {
|
|
55
|
-
"$ref": "abstractRule.schema.json"
|
|
53
|
+
"formLogic" : {
|
|
54
|
+
"items" : {
|
|
55
|
+
"$ref" : "abstractRule.schema.json"
|
|
56
56
|
},
|
|
57
|
-
"type": "array"
|
|
57
|
+
"type" : "array"
|
|
58
58
|
},
|
|
59
|
-
"formVersion": {
|
|
60
|
-
"type": "string"
|
|
59
|
+
"formVersion" : {
|
|
60
|
+
"type" : "string"
|
|
61
61
|
},
|
|
62
|
-
"inactive": {
|
|
63
|
-
"type": "boolean"
|
|
62
|
+
"inactive" : {
|
|
63
|
+
"type" : "boolean"
|
|
64
64
|
},
|
|
65
|
-
"instruction": {
|
|
66
|
-
"$ref": "template/inlineTemplate.schema.json"
|
|
65
|
+
"instruction" : {
|
|
66
|
+
"$ref" : "template/inlineTemplate.schema.json"
|
|
67
67
|
},
|
|
68
|
-
"interfaceStudioProduct": {
|
|
69
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
68
|
+
"interfaceStudioProduct" : {
|
|
69
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
70
70
|
},
|
|
71
|
-
"isMultiTaskForm": {
|
|
72
|
-
"type": "boolean"
|
|
71
|
+
"isMultiTaskForm" : {
|
|
72
|
+
"type" : "boolean"
|
|
73
73
|
},
|
|
74
|
-
"logic": {
|
|
75
|
-
"additionalProperties": true,
|
|
76
|
-
"type": "object"
|
|
74
|
+
"logic" : {
|
|
75
|
+
"additionalProperties" : true,
|
|
76
|
+
"type" : "object"
|
|
77
77
|
},
|
|
78
|
-
"metaCaseToOtap": {
|
|
79
|
-
"type": "boolean"
|
|
78
|
+
"metaCaseToOtap" : {
|
|
79
|
+
"type" : "boolean"
|
|
80
80
|
},
|
|
81
|
-
"name": {
|
|
82
|
-
"$ref": "common.schema.json#/$defs/multilanguageStringStructure"
|
|
81
|
+
"name" : {
|
|
82
|
+
"$ref" : "common.schema.json#/$defs/multilanguageStringStructure"
|
|
83
83
|
},
|
|
84
|
-
"onStart": {
|
|
85
|
-
"items": {
|
|
86
|
-
"$ref": "abstractRule.schema.json"
|
|
84
|
+
"onStart" : {
|
|
85
|
+
"items" : {
|
|
86
|
+
"$ref" : "abstractRule.schema.json"
|
|
87
87
|
},
|
|
88
|
-
"type": "array"
|
|
88
|
+
"type" : "array"
|
|
89
89
|
},
|
|
90
|
-
"ourProductId": {
|
|
91
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
90
|
+
"ourProductId" : {
|
|
91
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
92
92
|
},
|
|
93
|
-
"rights": {
|
|
94
|
-
"items": {
|
|
95
|
-
"$ref": "formRight.schema.json"
|
|
93
|
+
"rights" : {
|
|
94
|
+
"items" : {
|
|
95
|
+
"$ref" : "formRight.schema.json"
|
|
96
96
|
},
|
|
97
|
-
"type": "array"
|
|
97
|
+
"type" : "array"
|
|
98
98
|
}
|
|
99
99
|
},
|
|
100
|
-
"required": [
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
"title": "form",
|
|
105
|
-
"type": "object",
|
|
106
|
-
"allOf": [
|
|
107
|
-
{
|
|
108
|
-
"properties": {
|
|
109
|
-
"isMultiTaskForm": false
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"properties": {
|
|
114
|
-
"onStart": false
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
],
|
|
118
|
-
"$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/form.json."
|
|
119
|
-
}
|
|
100
|
+
"required" : [ "_type", "_uid" ],
|
|
101
|
+
"title" : "form",
|
|
102
|
+
"type" : "object"
|
|
103
|
+
}
|
|
@@ -1,94 +1,78 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$id": "https://grexx.net/studio-next/schemas/ifthenelse.schema.json",
|
|
3
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
-
"additionalProperties": false,
|
|
5
|
-
"properties": {
|
|
6
|
-
"_id": {
|
|
7
|
-
"type": "string"
|
|
8
|
-
},
|
|
9
|
-
"_interfaceID": {
|
|
10
|
-
"type": "string"
|
|
11
|
-
},
|
|
12
|
-
"_isInterface": {
|
|
13
|
-
"type": "boolean"
|
|
14
|
-
},
|
|
15
|
-
"_knownIDs": {
|
|
16
|
-
"items": {
|
|
17
|
-
"type": "string"
|
|
2
|
+
"$id" : "https://grexx.net/studio-next/schemas/ifthenelse.schema.json",
|
|
3
|
+
"$schema" : "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"additionalProperties" : false,
|
|
5
|
+
"properties" : {
|
|
6
|
+
"_id" : {
|
|
7
|
+
"type" : "string"
|
|
8
|
+
},
|
|
9
|
+
"_interfaceID" : {
|
|
10
|
+
"type" : "string"
|
|
11
|
+
},
|
|
12
|
+
"_isInterface" : {
|
|
13
|
+
"type" : "boolean"
|
|
14
|
+
},
|
|
15
|
+
"_knownIDs" : {
|
|
16
|
+
"items" : {
|
|
17
|
+
"type" : "string"
|
|
18
18
|
},
|
|
19
|
-
"type": "array"
|
|
19
|
+
"type" : "array"
|
|
20
20
|
},
|
|
21
|
-
"_origin": {
|
|
22
|
-
"type": "string"
|
|
21
|
+
"_origin" : {
|
|
22
|
+
"type" : "string"
|
|
23
23
|
},
|
|
24
|
-
"_src": {
|
|
25
|
-
"type": "string"
|
|
24
|
+
"_src" : {
|
|
25
|
+
"type" : "string"
|
|
26
26
|
},
|
|
27
|
-
"_type": {
|
|
28
|
-
"const": "ifthenelse"
|
|
27
|
+
"_type" : {
|
|
28
|
+
"const" : "ifthenelse"
|
|
29
29
|
},
|
|
30
|
-
"_uid": {
|
|
31
|
-
"description": "Deterministic UUID derived from case-ID.",
|
|
32
|
-
"format": "uuid",
|
|
33
|
-
"type": "string"
|
|
30
|
+
"_uid" : {
|
|
31
|
+
"description" : "Deterministic UUID derived from case-ID.",
|
|
32
|
+
"format" : "uuid",
|
|
33
|
+
"type" : "string"
|
|
34
34
|
},
|
|
35
|
-
"description": {
|
|
36
|
-
"$ref": "template/inlineTemplate.schema.json"
|
|
35
|
+
"description" : {
|
|
36
|
+
"$ref" : "template/inlineTemplate.schema.json"
|
|
37
37
|
},
|
|
38
|
-
"else": {
|
|
39
|
-
"items": {
|
|
40
|
-
"$ref": "abstractRule.schema.json"
|
|
38
|
+
"else" : {
|
|
39
|
+
"items" : {
|
|
40
|
+
"$ref" : "abstractRule.schema.json"
|
|
41
41
|
},
|
|
42
|
-
"type": "array"
|
|
42
|
+
"type" : "array"
|
|
43
43
|
},
|
|
44
|
-
"if": {
|
|
45
|
-
"$ref": "abstractCondition.schema.json"
|
|
44
|
+
"if" : {
|
|
45
|
+
"$ref" : "abstractCondition.schema.json"
|
|
46
46
|
},
|
|
47
|
-
"inactive": {
|
|
48
|
-
"type": "boolean"
|
|
47
|
+
"inactive" : {
|
|
48
|
+
"type" : "boolean"
|
|
49
49
|
},
|
|
50
|
-
"interfaceStudioProduct": {
|
|
51
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
50
|
+
"interfaceStudioProduct" : {
|
|
51
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
52
52
|
},
|
|
53
|
-
"metaCaseToOtap": {
|
|
54
|
-
"type": "boolean"
|
|
53
|
+
"metaCaseToOtap" : {
|
|
54
|
+
"type" : "boolean"
|
|
55
55
|
},
|
|
56
|
-
"ourProductId": {
|
|
57
|
-
"$ref": "common.schema.json#/$defs/caseIdOrFileReference"
|
|
56
|
+
"ourProductId" : {
|
|
57
|
+
"$ref" : "common.schema.json#/$defs/caseIdOrFileReference"
|
|
58
58
|
},
|
|
59
|
-
"progressTemplate": {
|
|
60
|
-
"$ref": "template/inlineTemplate.schema.json"
|
|
59
|
+
"progressTemplate" : {
|
|
60
|
+
"$ref" : "template/inlineTemplate.schema.json"
|
|
61
61
|
},
|
|
62
|
-
"progressTitle": {
|
|
63
|
-
"$ref": "common.schema.json#/$defs/multilanguageStringStructure"
|
|
62
|
+
"progressTitle" : {
|
|
63
|
+
"$ref" : "common.schema.json#/$defs/multilanguageStringStructure"
|
|
64
64
|
},
|
|
65
|
-
"showProgress": {
|
|
66
|
-
"type": "boolean"
|
|
65
|
+
"showProgress" : {
|
|
66
|
+
"type" : "boolean"
|
|
67
67
|
},
|
|
68
|
-
"then": {
|
|
69
|
-
"items": {
|
|
70
|
-
"$ref": "abstractRule.schema.json"
|
|
68
|
+
"then" : {
|
|
69
|
+
"items" : {
|
|
70
|
+
"$ref" : "abstractRule.schema.json"
|
|
71
71
|
},
|
|
72
|
-
"type": "array"
|
|
72
|
+
"type" : "array"
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
|
-
"required": [
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
"title": "ifthenelse",
|
|
80
|
-
"type": "object",
|
|
81
|
-
"allOf": [
|
|
82
|
-
{
|
|
83
|
-
"properties": {
|
|
84
|
-
"hasValidConfiguration": false
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"properties": {
|
|
89
|
-
"wasEverFullyConfigured": false
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
],
|
|
93
|
-
"$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/ifthenelse.json."
|
|
94
|
-
}
|
|
75
|
+
"required" : [ "_type", "_uid" ],
|
|
76
|
+
"title" : "ifthenelse",
|
|
77
|
+
"type" : "object"
|
|
78
|
+
}
|
|
@@ -88,32 +88,5 @@
|
|
|
88
88
|
],
|
|
89
89
|
"title": "llmModel",
|
|
90
90
|
"type": "object",
|
|
91
|
-
"allOf": [
|
|
92
|
-
{
|
|
93
|
-
"properties": {
|
|
94
|
-
"llmFrequencyPenalty": false
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"properties": {
|
|
99
|
-
"llmMaxCompletionTokens": false
|
|
100
|
-
}
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
"properties": {
|
|
104
|
-
"llmPresencePenalty": false
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
"properties": {
|
|
109
|
-
"llmTemperature": false
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"properties": {
|
|
114
|
-
"llmTopP": false
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
],
|
|
118
91
|
"$comment": "Conditionals generated by packages/schemas/scripts/extend.mjs from rules/llmModel.json."
|
|
119
92
|
}
|
|
@@ -92,11 +92,6 @@
|
|
|
92
92
|
"title": "requestContext",
|
|
93
93
|
"type": "object",
|
|
94
94
|
"allOf": [
|
|
95
|
-
{
|
|
96
|
-
"properties": {
|
|
97
|
-
"hasValidConfiguration": false
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
95
|
{
|
|
101
96
|
"if": {
|
|
102
97
|
"anyOf": [
|
|
@@ -149,11 +144,6 @@
|
|
|
149
144
|
}
|
|
150
145
|
}
|
|
151
146
|
},
|
|
152
|
-
{
|
|
153
|
-
"properties": {
|
|
154
|
-
"wasEverFullyConfigured": false
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
147
|
{
|
|
158
148
|
"if": {
|
|
159
149
|
"properties": {
|