@ifc-lite/ids 1.14.11 → 1.15.2

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 (119) hide show
  1. package/dist/audit/coherence/index.d.ts +12 -0
  2. package/dist/audit/coherence/index.d.ts.map +1 -0
  3. package/dist/audit/coherence/index.js +392 -0
  4. package/dist/audit/coherence/index.js.map +1 -0
  5. package/dist/audit/coherence/regex.d.ts +57 -0
  6. package/dist/audit/coherence/regex.d.ts.map +1 -0
  7. package/dist/audit/coherence/regex.js +111 -0
  8. package/dist/audit/coherence/regex.js.map +1 -0
  9. package/dist/audit/ifc-schema/index.d.ts +4 -0
  10. package/dist/audit/ifc-schema/index.d.ts.map +1 -0
  11. package/dist/audit/ifc-schema/index.js +637 -0
  12. package/dist/audit/ifc-schema/index.js.map +1 -0
  13. package/dist/audit/index.d.ts +37 -0
  14. package/dist/audit/index.d.ts.map +1 -0
  15. package/dist/audit/index.js +60 -0
  16. package/dist/audit/index.js.map +1 -0
  17. package/dist/audit/parser-shim.d.ts +13 -0
  18. package/dist/audit/parser-shim.d.ts.map +1 -0
  19. package/dist/audit/parser-shim.js +66 -0
  20. package/dist/audit/parser-shim.js.map +1 -0
  21. package/dist/audit/structural/index.d.ts +22 -0
  22. package/dist/audit/structural/index.d.ts.map +1 -0
  23. package/dist/audit/structural/index.js +441 -0
  24. package/dist/audit/structural/index.js.map +1 -0
  25. package/dist/audit/types.d.ts +91 -0
  26. package/dist/audit/types.d.ts.map +1 -0
  27. package/dist/audit/types.js +5 -0
  28. package/dist/audit/types.js.map +1 -0
  29. package/dist/audit/xsd/index.d.ts +13 -0
  30. package/dist/audit/xsd/index.d.ts.map +1 -0
  31. package/dist/audit/xsd/index.js +203 -0
  32. package/dist/audit/xsd/index.js.map +1 -0
  33. package/dist/bridge/classifications.d.ts +15 -0
  34. package/dist/bridge/classifications.d.ts.map +1 -0
  35. package/dist/bridge/classifications.js +114 -0
  36. package/dist/bridge/classifications.js.map +1 -0
  37. package/dist/bridge/data-accessor.d.ts +16 -0
  38. package/dist/bridge/data-accessor.d.ts.map +1 -0
  39. package/dist/bridge/data-accessor.js +205 -0
  40. package/dist/bridge/data-accessor.js.map +1 -0
  41. package/dist/bridge/data-types.d.ts +11 -0
  42. package/dist/bridge/data-types.d.ts.map +1 -0
  43. package/dist/bridge/data-types.js +47 -0
  44. package/dist/bridge/data-types.js.map +1 -0
  45. package/dist/bridge/index.d.ts +17 -0
  46. package/dist/bridge/index.d.ts.map +1 -0
  47. package/dist/bridge/index.js +20 -0
  48. package/dist/bridge/index.js.map +1 -0
  49. package/dist/bridge/materials.d.ts +11 -0
  50. package/dist/bridge/materials.d.ts.map +1 -0
  51. package/dist/bridge/materials.js +68 -0
  52. package/dist/bridge/materials.js.map +1 -0
  53. package/dist/bridge/predefined-types.d.ts +19 -0
  54. package/dist/bridge/predefined-types.d.ts.map +1 -0
  55. package/dist/bridge/predefined-types.js +84 -0
  56. package/dist/bridge/predefined-types.js.map +1 -0
  57. package/dist/bridge/properties.d.ts +20 -0
  58. package/dist/bridge/properties.d.ts.map +1 -0
  59. package/dist/bridge/properties.js +168 -0
  60. package/dist/bridge/properties.js.map +1 -0
  61. package/dist/bridge/schema-version.d.ts +10 -0
  62. package/dist/bridge/schema-version.d.ts.map +1 -0
  63. package/dist/bridge/schema-version.js +25 -0
  64. package/dist/bridge/schema-version.js.map +1 -0
  65. package/dist/bridge/units.d.ts +18 -0
  66. package/dist/bridge/units.d.ts.map +1 -0
  67. package/dist/bridge/units.js +55 -0
  68. package/dist/bridge/units.js.map +1 -0
  69. package/dist/constraints/comparators.d.ts +32 -0
  70. package/dist/constraints/comparators.d.ts.map +1 -0
  71. package/dist/constraints/comparators.js +94 -0
  72. package/dist/constraints/comparators.js.map +1 -0
  73. package/dist/constraints/index.d.ts.map +1 -1
  74. package/dist/constraints/index.js +68 -54
  75. package/dist/constraints/index.js.map +1 -1
  76. package/dist/constraints/xsd-cast.d.ts +20 -0
  77. package/dist/constraints/xsd-cast.d.ts.map +1 -0
  78. package/dist/constraints/xsd-cast.js +89 -0
  79. package/dist/constraints/xsd-cast.js.map +1 -0
  80. package/dist/facets/attribute-facet.d.ts.map +1 -1
  81. package/dist/facets/attribute-facet.js +51 -4
  82. package/dist/facets/attribute-facet.js.map +1 -1
  83. package/dist/facets/entity-facet.d.ts.map +1 -1
  84. package/dist/facets/entity-facet.js +55 -5
  85. package/dist/facets/entity-facet.js.map +1 -1
  86. package/dist/facets/partof-facet.d.ts.map +1 -1
  87. package/dist/facets/partof-facet.js +33 -3
  88. package/dist/facets/partof-facet.js.map +1 -1
  89. package/dist/facets/property-facet.d.ts.map +1 -1
  90. package/dist/facets/property-facet.js +119 -25
  91. package/dist/facets/property-facet.js.map +1 -1
  92. package/dist/facets/test-helpers.d.ts +7 -1
  93. package/dist/facets/test-helpers.d.ts.map +1 -1
  94. package/dist/facets/test-helpers.js +4 -0
  95. package/dist/facets/test-helpers.js.map +1 -1
  96. package/dist/index.d.ts +2 -0
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +4 -0
  99. package/dist/index.js.map +1 -1
  100. package/dist/parser/xml-parser.d.ts.map +1 -1
  101. package/dist/parser/xml-parser.js +166 -64
  102. package/dist/parser/xml-parser.js.map +1 -1
  103. package/dist/translation/locales/de.d.ts +1 -0
  104. package/dist/translation/locales/de.d.ts.map +1 -1
  105. package/dist/translation/locales/de.js +1 -0
  106. package/dist/translation/locales/de.js.map +1 -1
  107. package/dist/translation/locales/en.d.ts +1 -0
  108. package/dist/translation/locales/en.d.ts.map +1 -1
  109. package/dist/translation/locales/en.js +1 -0
  110. package/dist/translation/locales/en.js.map +1 -1
  111. package/dist/translation/locales/fr.d.ts +1 -0
  112. package/dist/translation/locales/fr.d.ts.map +1 -1
  113. package/dist/translation/locales/fr.js +1 -0
  114. package/dist/translation/locales/fr.js.map +1 -1
  115. package/dist/types.d.ts +115 -6
  116. package/dist/types.d.ts.map +1 -1
  117. package/dist/validation/validator.js +45 -3
  118. package/dist/validation/validator.js.map +1 -1
  119. package/package.json +7 -2
@@ -2,6 +2,7 @@
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  import { matchConstraint, formatConstraint } from '../constraints/index.js';
5
+ import { ifcMeasureToXsdTypes, literalCastsUnderAnyType } from '../constraints/xsd-cast.js';
5
6
  /** IFC data type names (IFCLABEL, IFCREAL, etc.) are case-insensitive */
6
7
  const DATATYPE_OPTS = { caseInsensitive: true };
7
8
  /**
@@ -38,23 +39,45 @@ export function checkPropertyFacet(facet, expressId, accessor) {
38
39
  },
39
40
  };
40
41
  }
41
- // Check each matching property set for the property
42
- // Track the most specific failure so we can return it instead of a generic PROPERTY_MISSING
43
- let lastFailure;
42
+ // Per IDS spec, when the property-set baseName matches multiple sets
43
+ // (pattern / enumeration cases), ALL of them must satisfy the
44
+ // requirement. A single-set match collapses to the same iteration
45
+ // with one element, so the semantics are uniform.
46
+ let lastPass;
47
+ let firstFailure;
44
48
  for (const pset of matchingPsets) {
45
49
  const result = checkPropertyInPset(facet, pset);
46
50
  if (result.passed) {
47
- return result;
51
+ lastPass = result;
52
+ continue;
48
53
  }
49
- // Keep the most specific failure (value/datatype mismatch over property-missing)
50
- if (!lastFailure ||
51
- (result.failure?.type !== 'PROPERTY_MISSING' && lastFailure.failure?.type === 'PROPERTY_MISSING')) {
52
- lastFailure = result;
54
+ if (!firstFailure) {
55
+ firstFailure = result;
56
+ }
57
+ else if (firstFailure.failure?.type === 'PROPERTY_MISSING' &&
58
+ result.failure?.type !== 'PROPERTY_MISSING') {
59
+ // Prefer the more specific failure for reporting.
60
+ firstFailure = result;
53
61
  }
54
62
  }
55
- // Return the most specific failure if we have one (e.g., value or datatype mismatch)
56
- if (lastFailure && lastFailure.failure?.type !== 'PROPERTY_MISSING') {
57
- return lastFailure;
63
+ if (firstFailure) {
64
+ if (firstFailure.failure?.type !== 'PROPERTY_MISSING') {
65
+ return firstFailure;
66
+ }
67
+ // Only PROPERTY_MISSING failures with no passing pset → fall
68
+ // through to the generic missing-property error below so the
69
+ // available-property list reflects every pset we checked.
70
+ if (!lastPass) {
71
+ // proceed to PROPERTY_MISSING fallthrough below
72
+ }
73
+ else {
74
+ // Some psets passed and some are missing the property —
75
+ // iteration must report the missing-pset failure.
76
+ return firstFailure;
77
+ }
78
+ }
79
+ else if (lastPass) {
80
+ return lastPass;
58
81
  }
59
82
  // Property not found in any matching pset
60
83
  const psetNames = matchingPsets.map((p) => p.name).join(', ');
@@ -98,27 +121,62 @@ function checkPropertyInPset(facet, pset) {
98
121
  },
99
122
  };
100
123
  }
101
- // Check each matching property try all, return first pass, track best failure
102
- let bestFailure;
124
+ // Per IDS spec: when the baseName constraint matches multiple
125
+ // properties (pattern / enumeration cases), ALL of them must satisfy
126
+ // the value constraint — not just one. Iterate every matching
127
+ // property and only report `pass` if every check passes.
128
+ let lastPass;
129
+ let firstFailure;
103
130
  for (const prop of matchingProps) {
104
131
  const result = checkSingleProperty(facet, pset, prop);
105
132
  if (result.passed) {
106
- return result;
133
+ lastPass = result;
134
+ continue;
135
+ }
136
+ if (!firstFailure) {
137
+ firstFailure = result;
107
138
  }
108
- // Prefer value/bounds/datatype failures over generic missing
109
- if (!bestFailure ||
110
- (result.failure?.type !== 'PROPERTY_MISSING' && bestFailure.failure?.type === 'PROPERTY_MISSING')) {
111
- bestFailure = result;
139
+ else if (firstFailure.failure?.type === 'PROPERTY_MISSING' &&
140
+ result.failure?.type !== 'PROPERTY_MISSING') {
141
+ // Prefer the more specific failure when reporting back.
142
+ firstFailure = result;
112
143
  }
113
144
  }
114
- return bestFailure;
145
+ if (firstFailure)
146
+ return firstFailure;
147
+ return lastPass;
115
148
  }
116
149
  /**
117
150
  * Check a single property against the facet's dataType and value constraints.
118
151
  */
119
152
  function checkSingleProperty(facet, pset, prop) {
120
- // Check data type if specified (IFC type names are case-insensitive)
121
- if (facet.dataType) {
153
+ // Per IDS spec, a property whose stored value is "no value" (null,
154
+ // undefined, empty string, or IfcLogical UNKNOWN) fails ANY check —
155
+ // including a name-only existence check. Detect those up front so
156
+ // the rest of the function can assume `prop.value` is meaningful.
157
+ if (prop.value === null ||
158
+ prop.value === undefined ||
159
+ prop.value === '') {
160
+ return {
161
+ passed: false,
162
+ actualValue: '(empty)',
163
+ expectedValue: facet.value
164
+ ? formatConstraint(facet.value)
165
+ : `property "${pset.name}.${prop.name}" must have a value`,
166
+ failure: {
167
+ type: 'PROPERTY_VALUE_MISMATCH',
168
+ field: `${pset.name}.${prop.name}`,
169
+ actual: '(empty)',
170
+ expected: facet.value ? formatConstraint(facet.value) : 'a non-empty value',
171
+ },
172
+ };
173
+ }
174
+ // Check data type if specified (IFC type names are case-insensitive).
175
+ // Skip the gate when the property carries no `dataType` AT ALL — for
176
+ // multi-typed table values (`IfcPropertyTableValue`) we deliberately
177
+ // omit a single representative type so the value match against the
178
+ // expanded `values[]` array can still satisfy the requirement.
179
+ if (facet.dataType && prop.dataType) {
122
180
  if (!matchConstraint(facet.dataType, prop.dataType, DATATYPE_OPTS)) {
123
181
  return {
124
182
  passed: false,
@@ -136,7 +194,12 @@ function checkSingleProperty(facet, pset, prop) {
136
194
  // Check value if specified
137
195
  if (facet.value) {
138
196
  const propValue = prop.value;
139
- if (propValue === null || propValue === undefined) {
197
+ if (propValue === null ||
198
+ propValue === undefined ||
199
+ // Per IDS spec: empty strings and IfcLogical UNKNOWN values are
200
+ // treated as "no value" — they fail any value check, including
201
+ // a name-only check that the property exists with a value.
202
+ propValue === '') {
140
203
  return {
141
204
  passed: false,
142
205
  actualValue: '(empty)',
@@ -149,18 +212,49 @@ function checkSingleProperty(facet, pset, prop) {
149
212
  },
150
213
  };
151
214
  }
152
- if (!matchConstraint(facet.value, propValue)) {
215
+ // Strict XSD-cast gate: the IDS literal MUST cast successfully
216
+ // under at least one of the IFC measure's XSD types. Mirrors the
217
+ // attribute facet's check — an `IFCINTEGER` slot rejects `42.0`,
218
+ // an `IFCBOOLEAN` slot rejects numeric literals, etc. The shared
219
+ // `ifcMeasureToXsdTypes` mapping turns the parser-side measure
220
+ // name into the XSD types the cast helper understands.
221
+ if (facet.value.type === 'simpleValue') {
222
+ const xsdTypes = ifcMeasureToXsdTypes(prop.dataType);
223
+ if (xsdTypes.length > 0 &&
224
+ !literalCastsUnderAnyType(facet.value.value, xsdTypes)) {
225
+ return {
226
+ passed: false,
227
+ actualValue: String(propValue),
228
+ expectedValue: formatConstraint(facet.value),
229
+ failure: {
230
+ type: 'PROPERTY_VALUE_MISMATCH',
231
+ field: `${pset.name}.${prop.name}`,
232
+ actual: String(propValue),
233
+ expected: formatConstraint(facet.value),
234
+ },
235
+ };
236
+ }
237
+ }
238
+ // Multi-valued IFC properties (IfcPropertyEnumeratedValue,
239
+ // IfcPropertyListValue) pass if ANY individual value satisfies the
240
+ // constraint, per upstream ifctester semantics.
241
+ const candidateValues = prop.values && prop.values.length > 0 ? prop.values : [propValue];
242
+ const anyMatch = candidateValues.some((v) => matchConstraint(facet.value, v));
243
+ if (!anyMatch) {
153
244
  const failureType = facet.value.type === 'bounds'
154
245
  ? 'PROPERTY_OUT_OF_BOUNDS'
155
246
  : 'PROPERTY_VALUE_MISMATCH';
247
+ const actualDisplay = prop.values && prop.values.length > 0
248
+ ? prop.values.join(', ')
249
+ : String(propValue);
156
250
  return {
157
251
  passed: false,
158
- actualValue: String(propValue),
252
+ actualValue: actualDisplay,
159
253
  expectedValue: formatConstraint(facet.value),
160
254
  failure: {
161
255
  type: failureType,
162
256
  field: `${pset.name}.${prop.name}`,
163
- actual: String(propValue),
257
+ actual: actualDisplay,
164
258
  expected: formatConstraint(facet.value),
165
259
  },
166
260
  };
@@ -1 +1 @@
1
- {"version":3,"file":"property-facet.js","sourceRoot":"","sources":["../../src/facets/property-facet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"property-facet.js","sourceRoot":"","sources":["../../src/facets/property-facet.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAY/D,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAqB,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAE5F,yEAAyE;AACzE,MAAM,aAAa,GAAiB,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AAE9D;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAuB,EACvB,SAAiB,EACjB,QAAyB;IAEzB,uCAAuC;IACvC,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAEzD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,MAAM,EAAE,KAAK;YACb,aAAa,EAAE,aAAa,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG;YAC3G,OAAO,EAAE;gBACP,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC1C,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC;aAC9C;SACF,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACjD,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAC9C,CAAC;IAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,OAAO;YACL,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,cAAc,IAAI,QAAQ;YACvC,aAAa,EAAE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC;YAClD,OAAO,EAAE;gBACP,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,aAAa;gBACpB,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC7C,OAAO,EAAE,EAAE,cAAc,EAAE;aAC5B;SACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,8DAA8D;IAC9D,kEAAkE;IAClE,kDAAkD;IAClD,IAAI,QAAsC,CAAC;IAC3C,IAAI,YAA0C,CAAC;IAE/C,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,QAAQ,GAAG,MAAM,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,YAAY,GAAG,MAAM,CAAC;QACxB,CAAC;aAAM,IACL,YAAY,CAAC,OAAO,EAAE,IAAI,KAAK,kBAAkB;YACjD,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,kBAAkB,EAC3C,CAAC;YACD,kDAAkD;YAClD,YAAY,GAAG,MAAM,CAAC;QACxB,CAAC;IACH,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACtD,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,6DAA6D;QAC7D,6DAA6D;QAC7D,0DAA0D;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,gDAAgD;QAClD,CAAC;aAAM,CAAC;YACN,wDAAwD;YACxD,kDAAkD;YAClD,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,0CAA0C;IAC1C,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,aAAa;SACjC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;SACvE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;QACL,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,cAAc,IAAI,QAAQ;QACvC,aAAa,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;QAC3F,OAAO,EAAE;YACP,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC1C,OAAO,EAAE;gBACP,WAAW,EAAE,SAAS;gBACtB,mBAAmB,EAAE,cAAc;aACpC;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,KAAuB,EACvB,IAAqB;IAErB,2BAA2B;IAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACpD,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAC3C,CAAC;IAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACvC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC1C,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI,CAAC,IAAI;oBACtB,mBAAmB,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;iBACnE;aACF;SACF,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,qEAAqE;IACrE,8DAA8D;IAC9D,yDAAyD;IACzD,IAAI,QAAsC,CAAC;IAC3C,IAAI,YAA0C,CAAC;IAE/C,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,QAAQ,GAAG,MAAM,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,YAAY,GAAG,MAAM,CAAC;QACxB,CAAC;aAAM,IACL,YAAY,CAAC,OAAO,EAAE,IAAI,KAAK,kBAAkB;YACjD,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,kBAAkB,EAC3C,CAAC;YACD,wDAAwD;YACxD,YAAY,GAAG,MAAM,CAAC;QACxB,CAAC;IACH,CAAC;IAED,IAAI,YAAY;QAAE,OAAO,YAAY,CAAC;IACtC,OAAO,QAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,KAAuB,EACvB,IAAqB,EACrB,IAA2C;IAE3C,mEAAmE;IACnE,oEAAoE;IACpE,kEAAkE;IAClE,kEAAkE;IAClE,IACE,IAAI,CAAC,KAAK,KAAK,IAAI;QACnB,IAAI,CAAC,KAAK,KAAK,SAAS;QACxB,IAAI,CAAC,KAAK,KAAK,EAAE,EACjB,CAAC;QACD,OAAO;YACL,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,KAAK,CAAC,KAAK;gBACxB,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC/B,CAAC,CAAC,aAAa,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,qBAAqB;YAC5D,OAAO,EAAE;gBACP,IAAI,EAAE,yBAAyB;gBAC/B,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBAClC,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB;aAC5E;SACF,CAAC;IACJ,CAAC;IACD,sEAAsE;IACtE,qEAAqE;IACrE,qEAAqE;IACrE,mEAAmE;IACnE,+DAA+D;IAC/D,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;YACnE,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,GAAG;gBAC3D,aAAa,EAAE,YAAY,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC7D,OAAO,EAAE;oBACP,IAAI,EAAE,4BAA4B;oBAClC,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;oBAClC,MAAM,EAAE,IAAI,CAAC,QAAQ;oBACrB,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;iBAC3C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAE7B,IACE,SAAS,KAAK,IAAI;YAClB,SAAS,KAAK,SAAS;YACvB,gEAAgE;YAChE,+DAA+D;YAC/D,2DAA2D;YAC3D,SAAS,KAAK,EAAE,EAChB,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,SAAS;gBACtB,aAAa,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC5C,OAAO,EAAE;oBACP,IAAI,EAAE,yBAAyB;oBAC/B,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;oBAClC,MAAM,EAAE,SAAS;oBACjB,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;iBACxC;aACF,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,iEAAiE;QACjE,iEAAiE;QACjE,iEAAiE;QACjE,+DAA+D;QAC/D,uDAAuD;QACvD,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrD,IACE,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACnB,CAAC,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,EACtD,CAAC;gBACD,OAAO;oBACL,MAAM,EAAE,KAAK;oBACb,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC;oBAC9B,aAAa,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC5C,OAAO,EAAE;wBACP,IAAI,EAAE,yBAAyB;wBAC/B,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;wBAClC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;wBACzB,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;qBACxC;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,2DAA2D;QAC3D,mEAAmE;QACnE,gDAAgD;QAChD,MAAM,eAAe,GACnB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEpE,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1C,eAAe,CAAC,KAAK,CAAC,KAAM,EAAE,CAAC,CAAC,CACjC,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,WAAW,GACf,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAC3B,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,yBAAyB,CAAC;YAEhC,MAAM,aAAa,GACjB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBACnC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAExB,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,aAAa;gBAC1B,aAAa,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC5C,OAAO,EAAE;oBACP,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;oBAClC,MAAM,EAAE,aAAa;oBACrB,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;iBACxC;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE;QACxD,aAAa,EAAE,KAAK,CAAC,KAAK;YACxB,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC;YAC/B,CAAC,CAAC,iBAAiB;KACtB,CAAC;AACJ,CAAC"}
@@ -29,7 +29,13 @@ interface MockEntity {
29
29
  relation: string;
30
30
  predefinedType?: string;
31
31
  };
32
- attributes?: Record<string, string>;
32
+ attributes?: Record<string, string | number | boolean>;
33
+ /**
34
+ * Optional per-attribute XSD-type metadata, mirroring the schema
35
+ * lookup the production accessor performs via `getAttributeXsdTypes`.
36
+ * Lets attribute-facet tests exercise the strict-cast gate.
37
+ */
38
+ attributeXsdTypes?: Record<string, readonly string[]>;
33
39
  }
34
40
  export declare function createMockAccessor(entities: MockEntity[]): IFCDataAccessor;
35
41
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../src/facets/test-helpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EAOhB,MAAM,aAAa,CAAC;AAErB,UAAU,UAAU;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;QACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,MAAM,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,eAAe,CAmG1E"}
1
+ {"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../src/facets/test-helpers.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EAOhB,MAAM,aAAa,CAAC;AAErB,UAAU,UAAU;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;QACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,MAAM,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACvD;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;CACvD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,eAAe,CA6G1E"}
@@ -97,6 +97,10 @@ export function createMockAccessor(entities) {
97
97
  return undefined;
98
98
  return entity.attributes[attributeName];
99
99
  },
100
+ getAttributeXsdTypes(expressId, attributeName) {
101
+ const entity = entityMap.get(expressId);
102
+ return entity?.attributeXsdTypes?.[attributeName];
103
+ },
100
104
  };
101
105
  }
102
106
  //# sourceMappingURL=test-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-helpers.js","sourceRoot":"","sources":["../../src/facets/test-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-helpers.js","sourceRoot":"","sources":["../../src/facets/test-helpers.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,6 +13,8 @@ export { parseIDS, IDSParseError } from './parser/xml-parser.js';
13
13
  export { validateIDS } from './validation/validator.js';
14
14
  export { checkFacet, filterByFacet, checkEntityFacet, filterByEntityFacet, checkAttributeFacet, checkPropertyFacet, checkClassificationFacet, checkMaterialFacet, checkPartOfFacet, type FacetCheckResult, } from './facets/index.js';
15
15
  export { matchConstraint, formatConstraint, getConstraintMismatchReason, } from './constraints/index.js';
16
+ export { auditIDSDocument, auditIDSStructure } from './audit/index.js';
17
+ export type { IDSAuditCode, IDSAuditIssue, IDSAuditOptions, IDSAuditReport, IDSAuditSeverity, } from './audit/types.js';
16
18
  export { createTranslationService } from './translation/index.js';
17
19
  export { en, de, fr } from './translation/locales/index.js';
18
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAMH,YAAY,EAEV,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EAGtB,QAAQ,EACR,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,cAAc,EAGd,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EAGnB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EAGX,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EAGV,gBAAgB,EAChB,kBAAkB,EAGlB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMjE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGlE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAMH,YAAY,EAEV,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EAGtB,QAAQ,EACR,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,cAAc,EAGd,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EAGnB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EAGX,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EAGV,gBAAgB,EAChB,kBAAkB,EAGlB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMjE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,YAAY,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,cAAc,EACd,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGlE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC"}
package/dist/index.js CHANGED
@@ -18,6 +18,10 @@ export { checkFacet, filterByFacet, checkEntityFacet, filterByEntityFacet, check
18
18
  // ============================================================================
19
19
  export { matchConstraint, formatConstraint, getConstraintMismatchReason, } from './constraints/index.js';
20
20
  // ============================================================================
21
+ // Audit (IDS document correctness)
22
+ // ============================================================================
23
+ export { auditIDSDocument, auditIDSStructure } from './audit/index.js';
24
+ // ============================================================================
21
25
  // Translation
22
26
  // ============================================================================
23
27
  export { createTranslationService } from './translation/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAyE/D,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEjE,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,mBAAmB,CAAC;AAE3B,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,0CAA0C;AAC1C,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAyE/D,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEjE,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,mBAAmB,CAAC;AAE3B,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AASvE,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,0CAA0C;AAC1C,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"xml-parser.d.ts","sourceRoot":"","sources":["../../src/parser/xml-parser.ts"],"names":[],"mappings":"AAIA;;;GAGG;AAEH,OAAO,KAAK,EACV,WAAW,EAoBZ,MAAM,aAAa,CAAC;AAKrB,gDAAgD;AAChD,qBAAa,aAAc,SAAQ,KAAK;IAG7B,OAAO,CAAC,EAAE,MAAM;gBADvB,OAAO,EAAE,MAAM,EACR,OAAO,CAAC,EAAE,MAAM,YAAA;CAK1B;AAiBD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CA6DtE"}
1
+ {"version":3,"file":"xml-parser.d.ts","sourceRoot":"","sources":["../../src/parser/xml-parser.ts"],"names":[],"mappings":"AAIA;;;GAGG;AAEH,OAAO,KAAK,EACV,WAAW,EAoBZ,MAAM,aAAa,CAAC;AAKrB,gDAAgD;AAChD,qBAAa,aAAc,SAAQ,KAAK;IAG7B,OAAO,CAAC,EAAE,MAAM;gBADvB,OAAO,EAAE,MAAM,EACR,OAAO,CAAC,EAAE,MAAM,YAAA;CAK1B;AAiBD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CAuEtE"}