@lionweb/validation 0.7.0-beta.10 → 0.7.0-beta.11
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 +4 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/issues/LanguageIssues.d.ts +99 -0
- package/dist/issues/LanguageIssues.d.ts.map +1 -0
- package/dist/issues/LanguageIssues.js +146 -0
- package/dist/issues/LanguageIssues.js.map +1 -0
- package/dist/issues/ReferenceIssues.d.ts +43 -0
- package/dist/issues/ReferenceIssues.d.ts.map +1 -0
- package/dist/issues/ReferenceIssues.js +53 -0
- package/dist/issues/ReferenceIssues.js.map +1 -0
- package/dist/issues/SyntaxIssues.d.ts +53 -0
- package/dist/issues/SyntaxIssues.d.ts.map +1 -0
- package/dist/issues/SyntaxIssues.js +81 -0
- package/dist/issues/SyntaxIssues.js.map +1 -0
- package/dist/issues/ValidationIssue.d.ts +15 -0
- package/dist/issues/ValidationIssue.d.ts.map +1 -0
- package/dist/issues/ValidationIssue.js +17 -0
- package/dist/issues/ValidationIssue.js.map +1 -0
- package/dist/issues/index.d.ts +5 -0
- package/dist/issues/index.d.ts.map +1 -0
- package/dist/issues/index.js +5 -0
- package/dist/issues/index.js.map +1 -0
- package/dist/languages/CompositeLionWebLanguageWrapper.d.ts +24 -0
- package/dist/languages/CompositeLionWebLanguageWrapper.d.ts.map +1 -0
- package/dist/languages/CompositeLionWebLanguageWrapper.js +56 -0
- package/dist/languages/CompositeLionWebLanguageWrapper.js.map +1 -0
- package/dist/languages/LanguageRegistry.d.ts +19 -0
- package/dist/languages/LanguageRegistry.d.ts.map +1 -0
- package/dist/languages/LanguageRegistry.js +37 -0
- package/dist/languages/LanguageRegistry.js.map +1 -0
- package/dist/languages/LanguageUtils.d.ts +35 -0
- package/dist/languages/LanguageUtils.d.ts.map +1 -0
- package/dist/languages/LanguageUtils.js +54 -0
- package/dist/languages/LanguageUtils.js.map +1 -0
- package/dist/languages/LionCore-M3.json +2356 -0
- package/dist/languages/LionCore-builtins.json +372 -0
- package/dist/languages/LionWebLanguageWrapper.d.ts +31 -0
- package/dist/languages/LionWebLanguageWrapper.d.ts.map +1 -0
- package/dist/languages/LionWebLanguageWrapper.js +69 -0
- package/dist/languages/LionWebLanguageWrapper.js.map +1 -0
- package/dist/languages/MetaPointerMap.d.ts +11 -0
- package/dist/languages/MetaPointerMap.d.ts.map +1 -0
- package/dist/languages/MetaPointerMap.js +39 -0
- package/dist/languages/MetaPointerMap.js.map +1 -0
- package/dist/languages/index.d.ts +3 -0
- package/dist/languages/index.d.ts.map +1 -0
- package/dist/languages/index.js +3 -0
- package/dist/languages/index.js.map +1 -0
- package/dist/runners/FileUtils.d.ts +6 -0
- package/dist/runners/FileUtils.d.ts.map +1 -0
- package/dist/runners/FileUtils.js +53 -0
- package/dist/runners/FileUtils.js.map +1 -0
- package/dist/runners/RunCheckFolder.d.ts +2 -0
- package/dist/runners/RunCheckFolder.d.ts.map +1 -0
- package/dist/runners/RunCheckFolder.js +6 -0
- package/dist/runners/RunCheckFolder.js.map +1 -0
- package/dist/runners/RunCheckFolderWithLanguage.d.ts +2 -0
- package/dist/runners/RunCheckFolderWithLanguage.d.ts.map +1 -0
- package/dist/runners/RunCheckFolderWithLanguage.js +40 -0
- package/dist/runners/RunCheckFolderWithLanguage.js.map +1 -0
- package/dist/runners/RunCheckOneFile.d.ts +2 -0
- package/dist/runners/RunCheckOneFile.d.ts.map +1 -0
- package/dist/runners/RunCheckOneFile.js +6 -0
- package/dist/runners/RunCheckOneFile.js.map +1 -0
- package/dist/runners/RunCheckOneFileWithLanguage.d.ts +2 -0
- package/dist/runners/RunCheckOneFileWithLanguage.d.ts.map +1 -0
- package/dist/runners/RunCheckOneFileWithLanguage.js +31 -0
- package/dist/runners/RunCheckOneFileWithLanguage.js.map +1 -0
- package/dist/runners/RunLioncoreDiff.d.ts +2 -0
- package/dist/runners/RunLioncoreDiff.d.ts.map +1 -0
- package/dist/runners/RunLioncoreDiff.js +22 -0
- package/dist/runners/RunLioncoreDiff.js.map +1 -0
- package/dist/runners/Utils.d.ts +7 -0
- package/dist/runners/Utils.d.ts.map +1 -0
- package/dist/runners/Utils.js +48 -0
- package/dist/runners/Utils.js.map +1 -0
- package/dist/runners/index.d.ts +3 -0
- package/dist/runners/index.d.ts.map +1 -0
- package/dist/runners/index.js +3 -0
- package/dist/runners/index.js.map +1 -0
- package/dist/validators/LionWebChunkDefinitions.d.ts +9 -0
- package/dist/validators/LionWebChunkDefinitions.d.ts.map +1 -0
- package/dist/validators/LionWebChunkDefinitions.js +100 -0
- package/dist/validators/LionWebChunkDefinitions.js.map +1 -0
- package/dist/validators/LionWebLanguageReferenceValidator.d.ts +21 -0
- package/dist/validators/LionWebLanguageReferenceValidator.d.ts.map +1 -0
- package/dist/validators/LionWebLanguageReferenceValidator.js +166 -0
- package/dist/validators/LionWebLanguageReferenceValidator.js.map +1 -0
- package/dist/validators/LionWebLanguageValidator.d.ts +23 -0
- package/dist/validators/LionWebLanguageValidator.d.ts.map +1 -0
- package/dist/validators/LionWebLanguageValidator.js +66 -0
- package/dist/validators/LionWebLanguageValidator.js.map +1 -0
- package/dist/validators/LionWebReferenceValidator.d.ts +43 -0
- package/dist/validators/LionWebReferenceValidator.d.ts.map +1 -0
- package/dist/validators/LionWebReferenceValidator.js +203 -0
- package/dist/validators/LionWebReferenceValidator.js.map +1 -0
- package/dist/validators/LionWebSyntaxValidator.d.ts +9 -0
- package/dist/validators/LionWebSyntaxValidator.d.ts.map +1 -0
- package/dist/validators/LionWebSyntaxValidator.js +11 -0
- package/dist/validators/LionWebSyntaxValidator.js.map +1 -0
- package/dist/validators/LionWebValidator.d.ts +24 -0
- package/dist/validators/LionWebValidator.d.ts.map +1 -0
- package/dist/validators/LionWebValidator.js +55 -0
- package/dist/validators/LionWebValidator.js.map +1 -0
- package/dist/validators/ValidationFunctions.d.ts +60 -0
- package/dist/validators/ValidationFunctions.d.ts.map +1 -0
- package/dist/validators/ValidationFunctions.js +103 -0
- package/dist/validators/ValidationFunctions.js.map +1 -0
- package/dist/validators/generic/SyntaxValidator.d.ts +37 -0
- package/dist/validators/generic/SyntaxValidator.d.ts.map +1 -0
- package/dist/validators/generic/SyntaxValidator.js +152 -0
- package/dist/validators/generic/SyntaxValidator.js.map +1 -0
- package/dist/validators/generic/ValidationResult.d.ts +8 -0
- package/dist/validators/generic/ValidationResult.d.ts.map +1 -0
- package/dist/validators/generic/ValidationResult.js +15 -0
- package/dist/validators/generic/ValidationResult.js.map +1 -0
- package/dist/validators/generic/index.d.ts +4 -0
- package/dist/validators/generic/index.d.ts.map +1 -0
- package/dist/validators/generic/index.js +4 -0
- package/dist/validators/generic/index.js.map +1 -0
- package/dist/validators/generic/schema/DefinitionSchema.d.ts +23 -0
- package/dist/validators/generic/schema/DefinitionSchema.d.ts.map +1 -0
- package/dist/validators/generic/schema/DefinitionSchema.js +43 -0
- package/dist/validators/generic/schema/DefinitionSchema.js.map +1 -0
- package/dist/validators/generic/schema/ValidationTypes.d.ts +101 -0
- package/dist/validators/generic/schema/ValidationTypes.d.ts.map +1 -0
- package/dist/validators/generic/schema/ValidationTypes.js +43 -0
- package/dist/validators/generic/schema/ValidationTypes.js.map +1 -0
- package/dist/validators/generic/schema/index.d.ts +3 -0
- package/dist/validators/generic/schema/index.d.ts.map +1 -0
- package/dist/validators/generic/schema/index.js +3 -0
- package/dist/validators/generic/schema/index.js.map +1 -0
- package/dist/validators/index.d.ts +9 -0
- package/dist/validators/index.d.ts.map +1 -0
- package/dist/validators/index.js +9 -0
- package/dist/validators/index.js.map +1 -0
- package/package.json +4 -4
- package/src/validators/LionWebLanguageReferenceValidator.ts +3 -3
- package/src/validators/ValidationFunctions.ts +1 -8
- package/src/validators/generic/SyntaxValidator.ts +0 -52
|
@@ -20,7 +20,6 @@ import { PropertyDefinition } from "./generic/schema/ValidationTypes.js"
|
|
|
20
20
|
* @param result Any validation issues found will be put into this object.
|
|
21
21
|
* @param context The context for the error message in errors.
|
|
22
22
|
*/
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
24
23
|
export function validateId<String>(value: String, result: ValidationResult, context: JsonContext): void {
|
|
25
24
|
const idString: string = "" + value
|
|
26
25
|
const regexp = /^[a-zA-Z0-9_-][a-zA-Z0-9_-]*$/
|
|
@@ -35,7 +34,6 @@ export function validateId<String>(value: String, result: ValidationResult, cont
|
|
|
35
34
|
* @param result Any validation issues found will be put into this object.
|
|
36
35
|
* @param context The context for the error message in errors.
|
|
37
36
|
*/
|
|
38
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
39
37
|
export function validateKey<String>(value: String, result: ValidationResult, context: JsonContext): void {
|
|
40
38
|
const keyString: string = "" + value
|
|
41
39
|
const regexp = /^[a-zA-Z0-9_-][a-zA-Z0-9_-]*$/
|
|
@@ -50,7 +48,6 @@ export function validateKey<String>(value: String, result: ValidationResult, con
|
|
|
50
48
|
* @param result Any validation issues found will be put into this object.
|
|
51
49
|
* @param context The location in the overall JSON.
|
|
52
50
|
*/
|
|
53
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
54
51
|
export function validateVersion<String>(value: String, result: ValidationResult, context: JsonContext): void {
|
|
55
52
|
const versionString: string = "" + value
|
|
56
53
|
if (versionString.length === 0) {
|
|
@@ -65,7 +62,6 @@ export function validateVersion<String>(value: String, result: ValidationResult,
|
|
|
65
62
|
* @param context The location in the overall JSON.
|
|
66
63
|
* @param propDef The PropertyDefinition for this value
|
|
67
64
|
*/
|
|
68
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
69
65
|
export function validateBoolean<String>(value: String, result: ValidationResult, context: JsonContext, propDef?: PropertyDefinition): void {
|
|
70
66
|
const valueAsPrimitive = "" + value
|
|
71
67
|
if (valueAsPrimitive !== "true" && valueAsPrimitive !== "false") {
|
|
@@ -87,7 +83,6 @@ export function validateBoolean<String>(value: String, result: ValidationResult,
|
|
|
87
83
|
* @param context The location in the overall JSON.
|
|
88
84
|
* @param propDef The PropertyDefinition for this value
|
|
89
85
|
*/
|
|
90
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
91
86
|
export function validateInteger<String>(value: String, result: ValidationResult, context: JsonContext, propDef?: PropertyDefinition): void {
|
|
92
87
|
const valueAsPrimitive = "" + value
|
|
93
88
|
const regexp = /^[+-]?(0|[1-9][0-9]*)$/
|
|
@@ -103,7 +98,6 @@ export function validateInteger<String>(value: String, result: ValidationResult,
|
|
|
103
98
|
* @param context The location in the overall JSON.
|
|
104
99
|
* @param propDef The PropertyDefinition for this value
|
|
105
100
|
*/
|
|
106
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
107
101
|
export function validateJSON<String>(value: String, result: ValidationResult, context: JsonContext, propDef?: PropertyDefinition): void {
|
|
108
102
|
const valueAsPrimitive = "" + value
|
|
109
103
|
if (value === null) {
|
|
@@ -111,7 +105,7 @@ export function validateJSON<String>(value: String, result: ValidationResult, co
|
|
|
111
105
|
}
|
|
112
106
|
try {
|
|
113
107
|
JSON.parse(valueAsPrimitive)
|
|
114
|
-
} catch (
|
|
108
|
+
} catch (_) {
|
|
115
109
|
result.issue(new Language_PropertyValue_Issue(context, propDef ? propDef.name : "unknown", valueAsPrimitive, "JSON"))
|
|
116
110
|
}
|
|
117
111
|
}
|
|
@@ -122,7 +116,6 @@ export function validateJSON<String>(value: String, result: ValidationResult, co
|
|
|
122
116
|
* @param result
|
|
123
117
|
* @param context
|
|
124
118
|
*/
|
|
125
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
126
119
|
export function validateSerializationFormatVersion<String>(value: String, result: ValidationResult, context: JsonContext): void {
|
|
127
120
|
if (typeof value !== "string") {
|
|
128
121
|
result.issue(new Syntax_SerializationFormatVersion_Issue(context, JSON.stringify(value)))
|
|
@@ -62,11 +62,6 @@ export class SyntaxValidator {
|
|
|
62
62
|
return
|
|
63
63
|
}
|
|
64
64
|
for (const propertyDef of typeDef.properties) {
|
|
65
|
-
// const taggedUnion = this.schema.getTaggedUnionDefinition(propertyDef.type)
|
|
66
|
-
// if (taggedUnion !== undefined) {
|
|
67
|
-
// this.validateTaggedUnion(propertyDef, typeDef, object, jsonContext.concat(propertyDef.name))
|
|
68
|
-
// continue
|
|
69
|
-
// }
|
|
70
65
|
const expectedTypeDef = this.schema.getDefinition(propertyDef.type)
|
|
71
66
|
const validator = propertyDef.validate!
|
|
72
67
|
const propertyValue = object[propertyDef.name]
|
|
@@ -151,53 +146,6 @@ export class SyntaxValidator {
|
|
|
151
146
|
return true
|
|
152
147
|
}
|
|
153
148
|
|
|
154
|
-
/**
|
|
155
|
-
*
|
|
156
|
-
* @param propertyDef the definition of the property that has the TaggedUnionType as its type
|
|
157
|
-
* @param typeDef The object definition containing the `propertyDef`
|
|
158
|
-
* @param object The object of type `typeDef` that should have the property described by `propertyDef`
|
|
159
|
-
* @param jsonContext
|
|
160
|
-
*/
|
|
161
|
-
// validateTaggedUnion(
|
|
162
|
-
// propertyDef: PropertyDefinition,
|
|
163
|
-
// typeDef: ObjectDefinition,
|
|
164
|
-
// object: UnknownObjectType,
|
|
165
|
-
// jsonContext: JsonContext
|
|
166
|
-
// ): void {
|
|
167
|
-
// // console.log(`validateTaggedUnion ${JSON.stringify(propertyDef)}, typedef ${typeDef.name} object: ${JSON.stringify(object, null, 3)}`)
|
|
168
|
-
// const taggedObject = object[propertyDef.name]
|
|
169
|
-
// if (propertyDef.isList) {
|
|
170
|
-
// if (!Array.isArray(taggedObject)) {
|
|
171
|
-
// this.validationResult.issue(new GenericIssue(jsonContext, `Property value '${propertyDef.name}' expects an array, found '${typeof taggedObject}'`))
|
|
172
|
-
// } else {
|
|
173
|
-
// taggedObject.forEach((taggedObjectSingle, index) => {
|
|
174
|
-
// this.validateTaggedObject(taggedObjectSingle, jsonContext.concat(index))
|
|
175
|
-
// })
|
|
176
|
-
// }
|
|
177
|
-
// } else {
|
|
178
|
-
// if (!(typeof taggedObject === "object")) {
|
|
179
|
-
// this.validationResult.issue(new GenericIssue(jsonContext, `Property value '${propertyDef.name}' expects an object, found '${typeof taggedObject}'`))
|
|
180
|
-
// } else {
|
|
181
|
-
// this.validateTaggedObject(taggedObject as UnknownObjectType, jsonContext)
|
|
182
|
-
// }
|
|
183
|
-
// }
|
|
184
|
-
// }
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* Validate a single tagged object
|
|
188
|
-
* @param taggedObject
|
|
189
|
-
* @param jsonContext
|
|
190
|
-
*/
|
|
191
|
-
// validateTaggedObject(taggedObject: UnknownObjectType, jsonContext: JsonContext): void {
|
|
192
|
-
// const actualTypeName = taggedObject["messageKind"] as string
|
|
193
|
-
// const actualType = this.schema.getDefinition(actualTypeName)
|
|
194
|
-
// if (actualType === undefined || !isObjectDefinition(actualType)) {
|
|
195
|
-
// this.validationResult.issue(new GenericIssue(jsonContext, `Expected object type is ${typeof taggedObject}, should be object`))
|
|
196
|
-
// } else {
|
|
197
|
-
// this.validateObjectProperties(actualTypeName, actualType, taggedObject, jsonContext)
|
|
198
|
-
// }
|
|
199
|
-
// }
|
|
200
|
-
|
|
201
149
|
/**
|
|
202
150
|
* Check whether there are extra properties that should not be there.
|
|
203
151
|
* @param obj Object to be validated
|