@lionweb/validation 0.5.0-beta.8 → 0.5.0

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.
Files changed (157) hide show
  1. package/README.md +20 -21
  2. package/dist/diff/LionwebDiff.d.ts +40 -0
  3. package/dist/diff/LionwebDiff.d.ts.map +1 -0
  4. package/dist/diff/LionwebDiff.js +158 -0
  5. package/dist/diff/LionwebDiff.js.map +1 -0
  6. package/dist/index.d.ts +5 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +5 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/issues/JsonContext.d.ts +11 -0
  11. package/dist/issues/JsonContext.d.ts.map +1 -0
  12. package/dist/issues/JsonContext.js +25 -0
  13. package/dist/issues/JsonContext.js.map +1 -0
  14. package/dist/issues/LanguageIssues.d.ts +75 -0
  15. package/dist/issues/LanguageIssues.d.ts.map +1 -0
  16. package/dist/issues/LanguageIssues.js +110 -0
  17. package/dist/issues/LanguageIssues.js.map +1 -0
  18. package/dist/issues/ReferenceIssues.d.ts +43 -0
  19. package/dist/issues/ReferenceIssues.d.ts.map +1 -0
  20. package/dist/issues/ReferenceIssues.js +53 -0
  21. package/dist/issues/ReferenceIssues.js.map +1 -0
  22. package/dist/issues/SyntaxIssues.d.ts +53 -0
  23. package/dist/issues/SyntaxIssues.d.ts.map +1 -0
  24. package/dist/issues/SyntaxIssues.js +81 -0
  25. package/dist/issues/SyntaxIssues.js.map +1 -0
  26. package/dist/issues/ValidationIssue.d.ts +9 -0
  27. package/dist/issues/ValidationIssue.d.ts.map +1 -0
  28. package/dist/issues/ValidationIssue.js +9 -0
  29. package/dist/issues/ValidationIssue.js.map +1 -0
  30. package/dist/issues/index.d.ts +6 -0
  31. package/dist/issues/index.d.ts.map +1 -0
  32. package/dist/issues/index.js +6 -0
  33. package/dist/issues/index.js.map +1 -0
  34. package/dist/json/ChunkUtils.d.ts +26 -0
  35. package/dist/json/ChunkUtils.d.ts.map +1 -0
  36. package/dist/json/ChunkUtils.js +46 -0
  37. package/dist/json/ChunkUtils.js.map +1 -0
  38. package/dist/json/LanguageUtils.d.ts +9 -0
  39. package/dist/json/LanguageUtils.d.ts.map +1 -0
  40. package/dist/json/LanguageUtils.js +30 -0
  41. package/dist/json/LanguageUtils.js.map +1 -0
  42. package/dist/json/LionWebJson.d.ts +56 -0
  43. package/dist/json/LionWebJson.d.ts.map +1 -0
  44. package/dist/json/LionWebJson.js +28 -0
  45. package/dist/json/LionWebJson.js.map +1 -0
  46. package/dist/json/LionWebJsonChunkWrapper.d.ts +25 -0
  47. package/dist/json/LionWebJsonChunkWrapper.d.ts.map +1 -0
  48. package/dist/json/LionWebJsonChunkWrapper.js +53 -0
  49. package/dist/json/LionWebJsonChunkWrapper.js.map +1 -0
  50. package/dist/json/LionWebLanguageDefinition.d.ts +48 -0
  51. package/dist/json/LionWebLanguageDefinition.d.ts.map +1 -0
  52. package/dist/json/LionWebLanguageDefinition.js +126 -0
  53. package/dist/json/LionWebLanguageDefinition.js.map +1 -0
  54. package/dist/json/NodeUtils.d.ts +26 -0
  55. package/dist/json/NodeUtils.d.ts.map +1 -0
  56. package/dist/json/NodeUtils.js +60 -0
  57. package/dist/json/NodeUtils.js.map +1 -0
  58. package/dist/json/index.d.ts +7 -0
  59. package/dist/json/index.d.ts.map +1 -0
  60. package/dist/json/index.js +7 -0
  61. package/dist/json/index.js.map +1 -0
  62. package/dist/runners/FileUtils.d.ts +6 -0
  63. package/dist/runners/FileUtils.d.ts.map +1 -0
  64. package/dist/runners/FileUtils.js +77 -0
  65. package/dist/runners/FileUtils.js.map +1 -0
  66. package/dist/runners/RunCheckFolder.d.ts +2 -0
  67. package/dist/runners/RunCheckFolder.d.ts.map +1 -0
  68. package/dist/runners/RunCheckFolder.js +4 -0
  69. package/dist/runners/RunCheckFolder.js.map +1 -0
  70. package/dist/runners/RunCheckFolderWithLanguage.d.ts +2 -0
  71. package/dist/runners/RunCheckFolderWithLanguage.d.ts.map +1 -0
  72. package/dist/runners/RunCheckFolderWithLanguage.js +36 -0
  73. package/dist/runners/RunCheckFolderWithLanguage.js.map +1 -0
  74. package/dist/runners/RunCheckOneFile.d.ts +2 -0
  75. package/dist/runners/RunCheckOneFile.d.ts.map +1 -0
  76. package/dist/runners/RunCheckOneFile.js +4 -0
  77. package/dist/runners/RunCheckOneFile.js.map +1 -0
  78. package/dist/runners/RunCheckOneFileWithLanguage.d.ts +2 -0
  79. package/dist/runners/RunCheckOneFileWithLanguage.d.ts.map +1 -0
  80. package/dist/runners/RunCheckOneFileWithLanguage.js +22 -0
  81. package/dist/runners/RunCheckOneFileWithLanguage.js.map +1 -0
  82. package/dist/runners/RunLioncoreDiff.d.ts +2 -0
  83. package/dist/runners/RunLioncoreDiff.d.ts.map +1 -0
  84. package/dist/runners/RunLioncoreDiff.js +22 -0
  85. package/dist/runners/RunLioncoreDiff.js.map +1 -0
  86. package/dist/runners/Utils.d.ts +7 -0
  87. package/dist/runners/Utils.d.ts.map +1 -0
  88. package/dist/runners/Utils.js +49 -0
  89. package/dist/runners/Utils.js.map +1 -0
  90. package/dist/runners/index.d.ts +3 -0
  91. package/dist/runners/index.d.ts.map +1 -0
  92. package/dist/runners/index.js +3 -0
  93. package/dist/runners/index.js.map +1 -0
  94. package/dist/validators/LionWebLanguageReferenceValidator.d.ts +24 -0
  95. package/dist/validators/LionWebLanguageReferenceValidator.d.ts.map +1 -0
  96. package/dist/validators/LionWebLanguageReferenceValidator.js +109 -0
  97. package/dist/validators/LionWebLanguageReferenceValidator.js.map +1 -0
  98. package/dist/validators/LionWebLanguageValidator.d.ts +12 -0
  99. package/dist/validators/LionWebLanguageValidator.d.ts.map +1 -0
  100. package/dist/validators/LionWebLanguageValidator.js +35 -0
  101. package/dist/validators/LionWebLanguageValidator.js.map +1 -0
  102. package/dist/validators/LionWebReferenceValidator.d.ts +45 -0
  103. package/dist/validators/LionWebReferenceValidator.d.ts.map +1 -0
  104. package/dist/validators/LionWebReferenceValidator.js +210 -0
  105. package/dist/validators/LionWebReferenceValidator.js.map +1 -0
  106. package/dist/validators/LionWebSyntaxValidator.d.ts +88 -0
  107. package/dist/validators/LionWebSyntaxValidator.d.ts.map +1 -0
  108. package/dist/validators/LionWebSyntaxValidator.js +244 -0
  109. package/dist/validators/LionWebSyntaxValidator.js.map +1 -0
  110. package/dist/validators/LionWebValidator.d.ts +24 -0
  111. package/dist/validators/LionWebValidator.d.ts.map +1 -0
  112. package/dist/validators/LionWebValidator.js +59 -0
  113. package/dist/validators/LionWebValidator.js.map +1 -0
  114. package/dist/validators/SimpleFieldValidator.d.ts +27 -0
  115. package/dist/validators/SimpleFieldValidator.d.ts.map +1 -0
  116. package/dist/validators/SimpleFieldValidator.js +77 -0
  117. package/dist/validators/SimpleFieldValidator.js.map +1 -0
  118. package/dist/validators/ValidationResult.d.ts +8 -0
  119. package/dist/validators/ValidationResult.d.ts.map +1 -0
  120. package/dist/validators/ValidationResult.js +15 -0
  121. package/dist/validators/ValidationResult.js.map +1 -0
  122. package/dist/validators/index.d.ts +8 -0
  123. package/dist/validators/index.d.ts.map +1 -0
  124. package/dist/validators/index.js +8 -0
  125. package/dist/validators/index.js.map +1 -0
  126. package/package.json +12 -10
  127. package/src/diff/LionwebDiff.ts +6 -6
  128. package/src/index.ts +4 -0
  129. package/src/issues/JsonContext.ts +31 -0
  130. package/src/issues/LanguageIssues.ts +3 -2
  131. package/src/issues/ReferenceIssues.ts +3 -2
  132. package/src/issues/SyntaxIssues.ts +2 -1
  133. package/src/issues/ValidationIssue.ts +1 -31
  134. package/src/issues/index.ts +5 -0
  135. package/src/json/ChunkUtils.ts +1 -1
  136. package/src/json/LanguageUtils.ts +43 -2
  137. package/src/json/LionWebJson.ts +2 -0
  138. package/src/json/LionWebJsonChunkWrapper.ts +4 -11
  139. package/src/json/LionWebLanguageDefinition.ts +24 -17
  140. package/src/json/NodeUtils.ts +1 -1
  141. package/src/json/index.ts +6 -0
  142. package/src/runners/FileUtils.ts +87 -0
  143. package/src/runners/RunCheckFolder.ts +2 -33
  144. package/src/runners/RunCheckFolderWithLanguage.ts +5 -5
  145. package/src/runners/RunCheckOneFile.ts +2 -13
  146. package/src/runners/RunCheckOneFileWithLanguage.ts +4 -4
  147. package/src/runners/RunLioncoreDiff.ts +2 -2
  148. package/src/runners/Utils.ts +37 -3
  149. package/src/runners/index.ts +2 -0
  150. package/src/validators/LionWebLanguageReferenceValidator.ts +7 -7
  151. package/src/validators/LionWebLanguageValidator.ts +7 -7
  152. package/src/validators/LionWebReferenceValidator.ts +20 -7
  153. package/src/validators/LionWebSyntaxValidator.ts +8 -6
  154. package/src/validators/LionWebValidator.ts +8 -8
  155. package/src/validators/SimpleFieldValidator.ts +5 -5
  156. package/src/validators/ValidationResult.ts +1 -1
  157. package/src/validators/index.ts +7 -0
@@ -0,0 +1,126 @@
1
+ import { LION_CORE_BUILTINS_INAMED_NAME, } from "./LionWebJson.js";
2
+ import { NodeUtils } from "./NodeUtils.js";
3
+ export const LIONWEB_M3_PROPERTY_KEY = "Property";
4
+ export const LIONWEB_M3_CONCEPT_KEY = "Concept";
5
+ export const LIONWEB_M3_INTERFACE_KEY = "Interface";
6
+ export const LIONWEB_M3_ANNOTATION_KEY = "Annotation";
7
+ export const LIONWEB_M3_REFERENCE_KEY = "Reference";
8
+ export const LIONWEB_M3_LANGUAGE_KEY = "Language";
9
+ export const LIONWEB_M3_LANGUAGE_VERSION_KEY = "Language-version";
10
+ export const LIONWEB_M3_IKEYED_KEY_KEY = "IKeyed-key";
11
+ export const LIONWEB_M3_PROPERTY_TYPE_KEY = "Property-type";
12
+ /**
13
+ * Collection of language definitions
14
+ */
15
+ // export class LionwebLanguages {
16
+ // // The builtin language of LionWeb.
17
+ // static M3 = LionCore_M3 as LionWebJsonChunk;
18
+ //
19
+ // languageMap = new Map<string, Map<string, Map<string, LionwebLanguageDefinition>>>();
20
+ //
21
+ // setLanguage(lionWebLanguage: LionwebLanguageDefinition) {
22
+ // // Assume LwNode is a concept of type "Language"
23
+ // let language = this.languageMap.get(lionWebLanguage.languageId.name);
24
+ // if (language === undefined) {
25
+ // language = new Map<string, Map<string, LionwebLanguageDefinition>>();
26
+ // this.languageMap.set(lionWebLanguage.languageId.name, language);
27
+ // }
28
+ // let version = language.get(lionWebLanguage.languageId.version);
29
+ // if (version === undefined) {
30
+ // version = new Map<string, LionwebLanguageDefinition>();
31
+ // language.set(lionWebLanguage.languageId.version, version);
32
+ // }
33
+ // let key = version.get(lionWebLanguage.languageId.key);
34
+ // if (key === undefined) {
35
+ // version.set(lionWebLanguage.languageId.key, lionWebLanguage);
36
+ // }
37
+ // }
38
+ //
39
+ // getLanguage(pointer: LionWebJsonMetaPointer): LionwebLanguageDefinition {
40
+ // return this.languageMap.get(pointer.language)?.get(pointer.version)?.get(pointer.key);
41
+ // }
42
+ // }
43
+ /**
44
+ * Represents a LionWeb serialiation chunk which represents a language definition / metamodel
45
+ */
46
+ export class LionWebLanguageDefinition {
47
+ /**
48
+ * Assume chunk represents a language metamodel according to Lionweb M3.
49
+ * @param chunk
50
+ */
51
+ constructor(chunk) {
52
+ this.languageId = null;
53
+ /**
54
+ * All nodes in the language
55
+ */
56
+ this.nodeKeymap = new Map();
57
+ // console.log("CHUNK " + JSON.stringify(chunk))
58
+ const languageNodes = chunk.findNodesOfConcept(LIONWEB_M3_LANGUAGE_KEY);
59
+ if (languageNodes.length !== 1) {
60
+ // TODO Better error handling.
61
+ console.error("1 Expected exactly one Language node, found " + languageNodes.length + " => " + JSON.stringify(languageNodes));
62
+ }
63
+ else {
64
+ const languageNode = languageNodes[0];
65
+ this.setLanguage(languageNode);
66
+ }
67
+ this.languageChunkWrapper = chunk;
68
+ }
69
+ setLanguage(languageNode) {
70
+ // Assume LwNode is a concept of type "Language"
71
+ const nameProp = languageNode.properties.find(prop => prop.property.key === LION_CORE_BUILTINS_INAMED_NAME);
72
+ const versionProp = languageNode.properties.find(prop => prop.property.key === LIONWEB_M3_LANGUAGE_VERSION_KEY);
73
+ const keyProp = languageNode.properties.find(prop => prop.property.key === LIONWEB_M3_IKEYED_KEY_KEY);
74
+ this.languageId = {
75
+ name: nameProp?.value,
76
+ version: versionProp?.value,
77
+ key: keyProp?.value
78
+ };
79
+ }
80
+ /**
81
+ * Store the node `node` under `key`.
82
+ * @param key
83
+ * @param node
84
+ */
85
+ setNodeByKey(key, node) {
86
+ this.nodeKeymap.set(key, node);
87
+ }
88
+ getNodeByKey(key) {
89
+ return this.nodeKeymap.get(key);
90
+ }
91
+ getNodeByMetaPointer(metaPointer) {
92
+ // console.log("get metapointer " + JSON.stringify(metaPointer))
93
+ const result = this.languageChunkWrapper.jsonChunk.nodes.find(n => {
94
+ // console.log(" looking into " + JSON.stringify(n));
95
+ const keyProp = NodeUtils.findLwProperty(n, LIONWEB_M3_IKEYED_KEY_KEY);
96
+ // const versionProp = NodeUtils.findLwProperty(n, "Language-version");
97
+ // return ((!!keyProp) && (keyProp.value === metaPointer.key) && (!!versionProp) && (versionProp.value === metaPointer.version));
98
+ // console.log(" getNodeByMetaPointer.looking into " + node.id + " found " + JSON.stringify(keyProp));
99
+ return ((!!keyProp) && (keyProp.value === metaPointer.key));
100
+ });
101
+ return result;
102
+ }
103
+ getPropertyByKey(key) {
104
+ // console.log("get property by key " + key)
105
+ const propertyNode = this.languageChunkWrapper.findNodesOfConcept(LIONWEB_M3_PROPERTY_KEY).find(n => {
106
+ // console.log(" looking into " + JSON.stringify(n));
107
+ const keyProp = n.properties.find(prop => {
108
+ return prop.property.key === LIONWEB_M3_IKEYED_KEY_KEY && prop.value === key;
109
+ });
110
+ return keyProp;
111
+ });
112
+ return propertyNode;
113
+ }
114
+ getConceptByKey(key) {
115
+ // console.log("get property by key " + key)
116
+ const conceptNode = this.languageChunkWrapper.findNodesOfConcept(LIONWEB_M3_CONCEPT_KEY).find(n => {
117
+ // console.log(" looking into " + JSON.stringify(n));
118
+ const keyProp = n.properties.find(prop => {
119
+ return prop.property.key === LIONWEB_M3_IKEYED_KEY_KEY && prop.value === key;
120
+ });
121
+ return keyProp;
122
+ });
123
+ return conceptNode;
124
+ }
125
+ }
126
+ //# sourceMappingURL=LionWebLanguageDefinition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LionWebLanguageDefinition.js","sourceRoot":"","sources":["../../src/json/LionWebLanguageDefinition.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { LionWebJsonChild, LionWebJsonNode, LionWebJsonProperty, LionWebJsonReference, LionWebJsonReferenceTarget } from "./LionWebJson.js";
2
+ /**
3
+ * Utility functions for LionWebJsonNode's
4
+ */
5
+ export declare class NodeUtils {
6
+ /**
7
+ * Find property with key equals `key` in `node`.
8
+ * @param node
9
+ * @param key
10
+ */
11
+ static findLwProperty(node: LionWebJsonNode, key: string): LionWebJsonProperty | null;
12
+ /**
13
+ * Find containment child with key equals `key` in `node`.
14
+ * @param node
15
+ * @param key
16
+ */
17
+ static findLwChild(node: LionWebJsonNode, key: string): LionWebJsonChild | null;
18
+ static findLwReference(node: LionWebJsonNode, key: string): LionWebJsonReference | null;
19
+ static findLwReferenceTarget(lwReferenceTargets: LionWebJsonReferenceTarget[], target: LionWebJsonReferenceTarget): LionWebJsonReferenceTarget | null;
20
+ /**
21
+ * Get all nodes that are children for `node`: both the containment and annotaion children
22
+ * @param node
23
+ */
24
+ static allChildren(node: LionWebJsonNode): string[];
25
+ }
26
+ //# sourceMappingURL=NodeUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeUtils.d.ts","sourceRoot":"","sources":["../../src/json/NodeUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC7B,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,qBAAa,SAAS;IAClB;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IASrF;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAS/E,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI;IASvF,MAAM,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,0BAA0B,EAAE,EAAE,MAAM,EAAE,0BAA0B,GAAG,0BAA0B,GAAG,IAAI;IASrJ;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,EAAE;CAStD"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Utility functions for LionWebJsonNode's
3
+ */
4
+ export class NodeUtils {
5
+ /**
6
+ * Find property with key equals `key` in `node`.
7
+ * @param node
8
+ * @param key
9
+ */
10
+ static findLwProperty(node, key) {
11
+ for (const property of node.properties) {
12
+ if (property.property.key === key) {
13
+ return property;
14
+ }
15
+ }
16
+ return null;
17
+ }
18
+ /**
19
+ * Find containment child with key equals `key` in `node`.
20
+ * @param node
21
+ * @param key
22
+ */
23
+ static findLwChild(node, key) {
24
+ for (const containment of node.containments) {
25
+ if (containment.containment.key === key) {
26
+ return containment;
27
+ }
28
+ }
29
+ return null;
30
+ }
31
+ static findLwReference(node, key) {
32
+ for (const reference of node.references) {
33
+ if (reference.reference.key === key) {
34
+ return reference;
35
+ }
36
+ }
37
+ return null;
38
+ }
39
+ static findLwReferenceTarget(lwReferenceTargets, target) {
40
+ for (const refTarget of lwReferenceTargets) {
41
+ if (refTarget.reference === target.reference && refTarget.resolveInfo === target.resolveInfo) {
42
+ return refTarget;
43
+ }
44
+ }
45
+ return null;
46
+ }
47
+ /**
48
+ * Get all nodes that are children for `node`: both the containment and annotaion children
49
+ * @param node
50
+ */
51
+ static allChildren(node) {
52
+ const result = [];
53
+ for (const containment of node.containments) {
54
+ result.push(...containment.children);
55
+ }
56
+ result.push(...node.annotations);
57
+ return result;
58
+ }
59
+ }
60
+ //# sourceMappingURL=NodeUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeUtils.js","sourceRoot":"","sources":["../../src/json/NodeUtils.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,OAAO,SAAS;IAClB;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,IAAqB,EAAE,GAAW;QACpD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBAChC,OAAO,QAAQ,CAAC;YACpB,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,IAAqB,EAAE,GAAW;QACjD,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1C,IAAI,WAAW,CAAC,WAAW,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBACtC,OAAO,WAAW,CAAC;YACvB,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAqB,EAAE,GAAW;QACrD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,kBAAgD,EAAE,MAAkC;QAC7G,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;YACzC,IAAI,SAAS,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3F,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,IAAqB;QACpC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;CAEJ"}
@@ -0,0 +1,7 @@
1
+ export * from "./NodeUtils.js";
2
+ export * from "./ChunkUtils.js";
3
+ export * from "./LionWebJson.js";
4
+ export * from "./LionWebJsonChunkWrapper.js";
5
+ export * from "./LionWebLanguageDefinition.js";
6
+ export * from "./LanguageUtils.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/json/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from "./NodeUtils.js";
2
+ export * from "./ChunkUtils.js";
3
+ export * from "./LionWebJson.js";
4
+ export * from "./LionWebJsonChunkWrapper.js";
5
+ export * from "./LionWebLanguageDefinition.js";
6
+ export * from "./LanguageUtils.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/json/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { ValidationResult } from "../validators/ValidationResult.js";
2
+ export declare function validateFile(file: string): void;
3
+ export declare function validateFileResult(file: string): ValidationResult;
4
+ export declare function validateFileResultWithLanguage(file: string, languageFile?: string | null): ValidationResult;
5
+ export declare function validateFolder(folder: string): void;
6
+ //# sourceMappingURL=FileUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUtils.d.ts","sourceRoot":"","sources":["../../src/runners/FileUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAG/C;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAYjE;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB,CA2B3G;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAgCnD"}
@@ -0,0 +1,77 @@
1
+ import fs from "fs";
2
+ import { LionWebJsonChunkWrapper, LionWebLanguageDefinition } from "../json/index.js";
3
+ import { LionWebValidator } from "../validators/LionWebValidator.js";
4
+ import { ValidationResult } from "../validators/ValidationResult.js";
5
+ import { getFilesRecursive, printIssues } from "./Utils.js";
6
+ export function validateFile(file) {
7
+ const result = validateFileResult(file);
8
+ printIssues(result);
9
+ }
10
+ export function validateFileResult(file) {
11
+ if (file !== null) {
12
+ const jsonString1 = fs.readFileSync(file, "utf-8");
13
+ const json1 = JSON.parse(jsonString1);
14
+ const validator = new LionWebValidator(json1, null);
15
+ validator.validateSyntax();
16
+ validator.validateReferences();
17
+ validator.validateForLanguage();
18
+ return validator.validationResult;
19
+ }
20
+ return new ValidationResult();
21
+ }
22
+ export function validateFileResultWithLanguage(file, languageFile) {
23
+ let langDef = null;
24
+ if (languageFile !== undefined && languageFile !== null) {
25
+ const jsonString1 = fs.readFileSync(file, "utf-8");
26
+ const languageJson = JSON.parse(jsonString1);
27
+ const validator = new LionWebValidator(languageJson, null);
28
+ validator.validateSyntax();
29
+ validator.validateReferences();
30
+ validator.validateForLanguage();
31
+ if (validator.validationResult.hasErrors()) {
32
+ return validator.validationResult;
33
+ }
34
+ langDef = new LionWebLanguageDefinition(new LionWebJsonChunkWrapper(languageJson));
35
+ }
36
+ if (file !== null) {
37
+ const fileString = fs.readFileSync(file, "utf-8");
38
+ const fileJson = JSON.parse(fileString);
39
+ const validator = new LionWebValidator(fileJson, langDef);
40
+ validator.validateSyntax();
41
+ validator.validateReferences();
42
+ validator.validateForLanguage();
43
+ return validator.validationResult;
44
+ }
45
+ return new ValidationResult();
46
+ }
47
+ export function validateFolder(folder) {
48
+ let totalErrors = 0;
49
+ let totalSucceed = 0;
50
+ let totalFailed = 0;
51
+ for (const f of getFilesRecursive(folder, [])) {
52
+ const jsonString1 = fs.readFileSync(f, "utf-8");
53
+ const json1 = JSON.parse(jsonString1);
54
+ const validator = new LionWebValidator(json1, null);
55
+ try {
56
+ validator.validateAll();
57
+ if (!validator.validationResult.hasErrors()) {
58
+ totalSucceed += 1;
59
+ console.log("V PASSED " + f);
60
+ printIssues(validator.validationResult, f);
61
+ }
62
+ else {
63
+ printIssues(validator.validationResult, f);
64
+ totalFailed += 1;
65
+ totalErrors += validator.validationResult.issues.length;
66
+ }
67
+ }
68
+ catch (e) {
69
+ console.log("EXCEPTION in file: " + f);
70
+ console.log("EXCEPTION " + e?.stack);
71
+ }
72
+ }
73
+ console.log("Total without errors: " + totalSucceed);
74
+ console.log("Total with errors: " + totalFailed);
75
+ console.log("Total number of errors: " + totalErrors);
76
+ }
77
+ //# sourceMappingURL=FileUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUtils.js","sourceRoot":"","sources":["../../src/runners/FileUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RunCheckFolder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckFolder.d.ts","sourceRoot":"","sources":["../../src/runners/RunCheckFolder.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { validateFolder } from "./FileUtils.js";
2
+ const folder = process.argv[2];
3
+ validateFolder(folder);
4
+ //# sourceMappingURL=RunCheckFolder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckFolder.js","sourceRoot":"","sources":["../../src/runners/RunCheckFolder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE/B,cAAc,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RunCheckFolderWithLanguage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckFolderWithLanguage.d.ts","sourceRoot":"","sources":["../../src/runners/RunCheckFolderWithLanguage.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import fs from "fs";
2
+ import { LionWebLanguageDefinition } from "../json/LionWebLanguageDefinition.js";
3
+ import { LionWebValidator } from "../validators/LionWebValidator.js";
4
+ import { getFilesRecursive, printIssues } from "./Utils.js";
5
+ const folder = process.argv[2];
6
+ const language = process.argv[3];
7
+ let totalSucceed = 0;
8
+ let totalFailed = 0;
9
+ const languageString = fs.readFileSync(language, "utf-8");
10
+ const languageJson = JSON.parse(languageString);
11
+ const languageValidator = new LionWebValidator(languageJson, null);
12
+ languageValidator.validateSyntax();
13
+ languageValidator.validateReferences();
14
+ if (languageValidator.validationResult.hasErrors()) {
15
+ console.log("===== Language errors, ignoring folder ======");
16
+ printIssues(languageValidator.validationResult);
17
+ process.exit(1);
18
+ }
19
+ for (const modelFile of getFilesRecursive(folder, [])) {
20
+ const jsonString1 = fs.readFileSync(modelFile, "utf-8");
21
+ const jsonModel = JSON.parse(jsonString1);
22
+ const modelValidator = new LionWebValidator(jsonModel, new LionWebLanguageDefinition(languageValidator.chunk));
23
+ modelValidator.validateAll();
24
+ if (modelValidator.validationResult.hasErrors()) {
25
+ totalFailed++;
26
+ // console.log("FAILED: " + modelFile)
27
+ printIssues(modelValidator.validationResult, modelFile);
28
+ }
29
+ else {
30
+ console.log("SUCCEEDED: " + modelFile);
31
+ totalSucceed++;
32
+ }
33
+ }
34
+ console.log("Total without errors: " + totalSucceed);
35
+ console.log("Total with errors: " + totalFailed);
36
+ //# sourceMappingURL=RunCheckFolderWithLanguage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckFolderWithLanguage.js","sourceRoot":"","sources":["../../src/runners/RunCheckFolderWithLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE5D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEjC,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,WAAW,GAAG,CAAC,CAAC;AAGpB,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AAChD,MAAM,iBAAiB,GAAG,IAAI,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAEnE,iBAAiB,CAAC,cAAc,EAAE,CAAC;AACnC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;AACvC,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC7D,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,KAAK,MAAM,SAAS,IAAI,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;IACpD,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,gBAAgB,CAAC,SAAS,EAAE,IAAI,yBAAyB,CAAC,iBAAiB,CAAC,KAAgC,CAAC,CAAC,CAAC;IAE1I,cAAc,CAAC,WAAW,EAAE,CAAC;IAC7B,IAAI,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC;QAC9C,WAAW,EAAE,CAAC;QACd,sCAAsC;QACtC,WAAW,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;QACvC,YAAY,EAAE,CAAC;IACnB,CAAC;AACL,CAAC;AAED,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,YAAY,CAAC,CAAC;AACrD,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,WAAW,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RunCheckOneFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckOneFile.d.ts","sourceRoot":"","sources":["../../src/runners/RunCheckOneFile.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { validateFile } from "./FileUtils.js";
2
+ const file1 = process.argv[2];
3
+ validateFile(file1);
4
+ //# sourceMappingURL=RunCheckOneFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckOneFile.js","sourceRoot":"","sources":["../../src/runners/RunCheckOneFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE9B,YAAY,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RunCheckOneFileWithLanguage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckOneFileWithLanguage.d.ts","sourceRoot":"","sources":["../../src/runners/RunCheckOneFileWithLanguage.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import fs from "fs";
2
+ import { LionWebLanguageDefinition } from "../json/LionWebLanguageDefinition.js";
3
+ import { LionWebValidator } from "../validators/LionWebValidator.js";
4
+ import { printIssues } from "./Utils.js";
5
+ const modelFile = process.argv[2];
6
+ const language = process.argv[3];
7
+ if (modelFile !== null) {
8
+ const jsonString1 = fs.readFileSync(modelFile, "utf-8");
9
+ const jsonModel = JSON.parse(jsonString1);
10
+ const languageString = fs.readFileSync(language, "utf-8");
11
+ const languageJson = JSON.parse(languageString);
12
+ const languageValidator = new LionWebValidator(languageJson, null);
13
+ languageValidator.validateSyntax();
14
+ languageValidator.validateReferences();
15
+ console.log("===== Language errors ======");
16
+ printIssues(languageValidator.validationResult);
17
+ const modelValidator = new LionWebValidator(jsonModel, new LionWebLanguageDefinition(languageValidator.chunk));
18
+ modelValidator.validateAll();
19
+ console.log("===== Model errors ======");
20
+ printIssues(modelValidator.validationResult);
21
+ }
22
+ //# sourceMappingURL=RunCheckOneFileWithLanguage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunCheckOneFileWithLanguage.js","sourceRoot":"","sources":["../../src/runners/RunCheckOneFileWithLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEjC,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;IACrB,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAEhD,MAAM,iBAAiB,GAAG,IAAI,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAEnE,iBAAiB,CAAC,cAAc,EAAE,CAAC;IACnC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;IAC3C,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAEhD,MAAM,cAAc,GAAG,IAAI,gBAAgB,CAAC,SAAS,EAAE,IAAI,yBAAyB,CAAC,iBAAiB,CAAC,KAAgC,CAAC,CAAC,CAAC;IAC1I,cAAc,CAAC,WAAW,EAAE,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACxC,WAAW,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RunLioncoreDiff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunLioncoreDiff.d.ts","sourceRoot":"","sources":["../../src/runners/RunLioncoreDiff.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import fs from "fs";
2
+ import { LwDiff } from "../diff/LionwebDiff.js";
3
+ const file1 = process.argv[2];
4
+ const file2 = process.argv[3];
5
+ if (file1 !== null && file1 !== undefined) {
6
+ const jsonString1 = fs.readFileSync(file1, "utf-8");
7
+ const json1 = JSON.parse(jsonString1);
8
+ const jsonString2 = fs.readFileSync(file2, "utf-8");
9
+ const json2 = JSON.parse(jsonString2);
10
+ const lwDiff = new LwDiff();
11
+ lwDiff.diffLwChunk(json1, json2);
12
+ if (lwDiff.errors.length === 0) {
13
+ console.log("LwDiff: equal");
14
+ }
15
+ else {
16
+ console.log("LwDiff: " + lwDiff.errors);
17
+ }
18
+ }
19
+ else {
20
+ console.log("Error in arguments");
21
+ }
22
+ //# sourceMappingURL=RunLioncoreDiff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunLioncoreDiff.js","sourceRoot":"","sources":["../../src/runners/RunLioncoreDiff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGhD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE9B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,WAAW,CAAC,KAAyB,EAAE,KAAyB,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;AACL,CAAC;KAAM,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { ValidationResult } from "../validators/ValidationResult.js";
2
+ export declare function getFilesRecursive(dirPath: string, arrayOfFiles: string[]): string[];
3
+ export declare function getFilesDirect(dirPath: string, arrayOfFiles: string[]): string[];
4
+ export declare function getAllDirectories(dirPath: string, arrayOfDirs: string[]): string[];
5
+ export declare function printIssues(result: ValidationResult, file?: string): void;
6
+ export declare function issuestoString(vresult: ValidationResult, file?: string): string;
7
+ //# sourceMappingURL=Utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../src/runners/Utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAaxE;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAUrE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAavE;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAEzE;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAI/E"}
@@ -0,0 +1,49 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ export function getFilesRecursive(dirPath, arrayOfFiles) {
4
+ const files = fs.readdirSync(dirPath);
5
+ arrayOfFiles = arrayOfFiles || [];
6
+ files.forEach(function (file) {
7
+ if (fs.statSync(dirPath + "/" + file).isDirectory()) {
8
+ arrayOfFiles = getFilesRecursive(dirPath + "/" + file, arrayOfFiles);
9
+ // arrayOfFiles.push(path.join(dirPath, "/", file));
10
+ }
11
+ else {
12
+ arrayOfFiles.push(path.join(dirPath, "/", file));
13
+ }
14
+ });
15
+ return arrayOfFiles;
16
+ }
17
+ export function getFilesDirect(dirPath, arrayOfFiles) {
18
+ const files = fs.readdirSync(dirPath);
19
+ arrayOfFiles = arrayOfFiles || [];
20
+ files.forEach(function (file) {
21
+ if (fs.statSync(dirPath + "/" + file).isFile()) {
22
+ arrayOfFiles.push(file);
23
+ }
24
+ });
25
+ return arrayOfFiles;
26
+ }
27
+ export function getAllDirectories(dirPath, arrayOfDirs) {
28
+ const files = fs.readdirSync(dirPath, { withFileTypes: true });
29
+ arrayOfDirs = arrayOfDirs || [];
30
+ files.forEach(function (file) {
31
+ if (file.isDirectory()) {
32
+ arrayOfDirs = getAllDirectories(dirPath + "/" + file.name, arrayOfDirs);
33
+ arrayOfDirs.push(path.join(dirPath, "/", file.name));
34
+ }
35
+ else {
36
+ // ignore files
37
+ }
38
+ });
39
+ return arrayOfDirs;
40
+ }
41
+ export function printIssues(result, file) {
42
+ result.issues.forEach(issue => console.log((file == undefined ? "" : `File ${file}: `) + issue.errorMsg()));
43
+ }
44
+ export function issuestoString(vresult, file) {
45
+ let result = "";
46
+ vresult.issues.forEach(issue => result += (file == undefined ? "" : `File ${file}: `) + issue.errorMsg() + "\n");
47
+ return result;
48
+ }
49
+ //# sourceMappingURL=Utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/runners/Utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,YAAsB;IACrE,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;IAElC,KAAK,CAAC,OAAO,CAAC,UAAU,IAAY;QAChC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAClD,YAAY,GAAG,iBAAiB,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC;YACrE,oDAAoD;QACxD,CAAC;aAAM,CAAC;YACJ,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QACrD,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,YAAsB;IAClE,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;IAElC,KAAK,CAAC,OAAO,CAAC,UAAU,IAAY;QAChC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,WAAqB;IACpE,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC,CAAC,CAAC;IAC7D,WAAW,GAAG,WAAW,IAAI,EAAE,CAAC;IAEhC,KAAK,CAAC,OAAO,CAAC,UAAU,IAAe;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,WAAW,GAAG,iBAAiB,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACxE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACJ,eAAe;QACnB,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAwB,EAAE,IAAa;IAC/D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAChH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAyB,EAAE,IAAa;IACnE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;IACjH,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./FileUtils.js";
2
+ export * from "./Utils.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runners/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./FileUtils.js";
2
+ export * from "./Utils.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runners/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { JsonContext } from "./../issues/JsonContext.js";
2
+ import { LionWebJsonProperty } from "../json/LionWebJson.js";
3
+ import { LionWebJsonChunkWrapper } from "../json/LionWebJsonChunkWrapper.js";
4
+ import { LionWebLanguageDefinition } from "../json/LionWebLanguageDefinition.js";
5
+ import { SimpleFieldValidator } from "./SimpleFieldValidator.js";
6
+ import { ValidationResult } from "./ValidationResult.js";
7
+ /**
8
+ * Check against the language definition
9
+ */
10
+ export declare class LionWebLanguageReferenceValidator {
11
+ validationResult: ValidationResult;
12
+ language: LionWebLanguageDefinition;
13
+ simpleFieldValidator: SimpleFieldValidator;
14
+ constructor(validationResult: ValidationResult, lang: LionWebLanguageDefinition);
15
+ validate(obj: LionWebJsonChunkWrapper): void;
16
+ private validateContainment;
17
+ private validateReference;
18
+ /**
19
+ * Checks wwhether the value of `prop1` is correct in relation with its property definition in the referred language.
20
+ * @param prop
21
+ */
22
+ validateProperty(prop: LionWebJsonProperty, context: JsonContext): void;
23
+ }
24
+ //# sourceMappingURL=LionWebLanguageReferenceValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LionWebLanguageReferenceValidator.d.ts","sourceRoot":"","sources":["../../src/validators/LionWebLanguageReferenceValidator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAMH,mBAAmB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAiF,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAChK,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,qBAAa,iCAAiC;IAC1C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,QAAQ,EAAE,yBAAyB,CAAC;IACpC,oBAAoB,EAAE,oBAAoB,CAAC;gBAE/B,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,yBAAyB;IAW/E,QAAQ,CAAC,GAAG,EAAE,uBAAuB,GAAG,IAAI;IAuB5C,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,iBAAiB;IAezB;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI;CAuC1E"}