@ifc-lite/parser 6.5.0 → 7.1.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.
- package/README.md +21 -0
- package/dist/columnar-parser-root-attributes.d.ts +2 -5
- package/dist/columnar-parser-root-attributes.d.ts.map +1 -1
- package/dist/columnar-parser-root-attributes.js +22 -2
- package/dist/columnar-parser-root-attributes.js.map +1 -1
- package/dist/columnar-parser.d.ts +4 -0
- package/dist/columnar-parser.d.ts.map +1 -1
- package/dist/columnar-parser.js +2 -47
- package/dist/columnar-parser.js.map +1 -1
- package/dist/cost-category-buckets.d.ts +5 -0
- package/dist/cost-category-buckets.d.ts.map +1 -0
- package/dist/cost-category-buckets.js +37 -0
- package/dist/cost-category-buckets.js.map +1 -0
- package/dist/cost-compatibility-tree.d.ts +4 -0
- package/dist/cost-compatibility-tree.d.ts.map +1 -0
- package/dist/cost-compatibility-tree.js +46 -0
- package/dist/cost-compatibility-tree.js.map +1 -0
- package/dist/cost-evaluation-arithmetic.d.ts +16 -0
- package/dist/cost-evaluation-arithmetic.d.ts.map +1 -0
- package/dist/cost-evaluation-arithmetic.js +181 -0
- package/dist/cost-evaluation-arithmetic.js.map +1 -0
- package/dist/cost-evaluation-context.d.ts +20 -0
- package/dist/cost-evaluation-context.d.ts.map +1 -0
- package/dist/cost-evaluation-context.js +54 -0
- package/dist/cost-evaluation-context.js.map +1 -0
- package/dist/cost-evaluation-result.d.ts +5 -0
- package/dist/cost-evaluation-result.d.ts.map +1 -0
- package/dist/cost-evaluation-result.js +20 -0
- package/dist/cost-evaluation-result.js.map +1 -0
- package/dist/cost-evaluator.d.ts +6 -0
- package/dist/cost-evaluator.d.ts.map +1 -0
- package/dist/cost-evaluator.js +398 -0
- package/dist/cost-evaluator.js.map +1 -0
- package/dist/cost-extractor.d.ts +4 -8
- package/dist/cost-extractor.d.ts.map +1 -1
- package/dist/cost-extractor.js +346 -334
- package/dist/cost-extractor.js.map +1 -1
- package/dist/cost-overlay.d.ts +72 -0
- package/dist/cost-overlay.d.ts.map +1 -0
- package/dist/cost-overlay.js +5 -0
- package/dist/cost-overlay.js.map +1 -0
- package/dist/cost-quantities.d.ts +5 -0
- package/dist/cost-quantities.d.ts.map +1 -0
- package/dist/cost-quantities.js +116 -0
- package/dist/cost-quantities.js.map +1 -0
- package/dist/cost-quantity-evaluator.d.ts +23 -0
- package/dist/cost-quantity-evaluator.d.ts.map +1 -0
- package/dist/cost-quantity-evaluator.js +153 -0
- package/dist/cost-quantity-evaluator.js.map +1 -0
- package/dist/cost-reader.d.ts +59 -0
- package/dist/cost-reader.d.ts.map +1 -0
- package/dist/cost-reader.js +210 -0
- package/dist/cost-reader.js.map +1 -0
- package/dist/cost-relationships.d.ts +7 -0
- package/dist/cost-relationships.d.ts.map +1 -0
- package/dist/cost-relationships.js +237 -0
- package/dist/cost-relationships.js.map +1 -0
- package/dist/cost-step-lexemes.d.ts +16 -0
- package/dist/cost-step-lexemes.d.ts.map +1 -0
- package/dist/cost-step-lexemes.js +131 -0
- package/dist/cost-step-lexemes.js.map +1 -0
- package/dist/cost-types.d.ts +218 -76
- package/dist/cost-types.d.ts.map +1 -1
- package/dist/cost-units.d.ts +38 -0
- package/dist/cost-units.d.ts.map +1 -0
- package/dist/cost-units.js +348 -0
- package/dist/cost-units.js.map +1 -0
- package/dist/cost-value-evaluation-session.d.ts +19 -0
- package/dist/cost-value-evaluation-session.d.ts.map +1 -0
- package/dist/cost-value-evaluation-session.js +25 -0
- package/dist/cost-value-evaluation-session.js.map +1 -0
- package/dist/cost.d.ts +5 -0
- package/dist/cost.d.ts.map +1 -0
- package/dist/cost.js +6 -0
- package/dist/cost.js.map +1 -0
- package/dist/entity-extractor.d.ts.map +1 -1
- package/dist/entity-extractor.js +5 -2
- package/dist/entity-extractor.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/on-demand-extractors.d.ts +3 -4
- package/dist/on-demand-extractors.d.ts.map +1 -1
- package/dist/on-demand-extractors.js +9 -6
- package/dist/on-demand-extractors.js.map +1 -1
- package/dist/project-units.d.ts.map +1 -1
- package/dist/project-units.js +8 -2
- package/dist/project-units.js.map +1 -1
- package/dist/property-unit.d.ts +24 -0
- package/dist/property-unit.d.ts.map +1 -0
- package/dist/property-unit.js +29 -0
- package/dist/property-unit.js.map +1 -0
- package/dist/step-entity-parameters.d.ts +9 -0
- package/dist/step-entity-parameters.d.ts.map +1 -0
- package/dist/step-entity-parameters.js +30 -0
- package/dist/step-entity-parameters.js.map +1 -0
- package/dist/worker-parser.d.ts +29 -1
- package/dist/worker-parser.d.ts.map +1 -1
- package/dist/worker-parser.js +80 -7
- package/dist/worker-parser.js.map +1 -1
- package/package.json +6 -5
- package/dist/cost-schedule-2x3.d.ts +0 -31
- package/dist/cost-schedule-2x3.d.ts.map +0 -1
- package/dist/cost-schedule-2x3.js +0 -75
- package/dist/cost-schedule-2x3.js.map +0 -1
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
import { Decimal } from 'decimal.js';
|
|
5
|
+
import { asEnum, asString } from './cost-reader.js';
|
|
6
|
+
const PREFIX_SCALE = {
|
|
7
|
+
EXA: '1e18', PETA: '1e15', TERA: '1e12', GIGA: '1e9', MEGA: '1e6',
|
|
8
|
+
KILO: '1e3', HECTO: '1e2', DECA: '1e1', DECI: '1e-1', CENTI: '1e-2',
|
|
9
|
+
MILLI: '1e-3', MICRO: '1e-6', NANO: '1e-9', PICO: '1e-12',
|
|
10
|
+
FEMTO: '1e-15', ATTO: '1e-18',
|
|
11
|
+
};
|
|
12
|
+
const PREFIX_SYMBOL = {
|
|
13
|
+
EXA: 'E', PETA: 'P', TERA: 'T', GIGA: 'G', MEGA: 'M', KILO: 'k', HECTO: 'h',
|
|
14
|
+
DECA: 'da', DECI: 'd', CENTI: 'c', MILLI: 'm', MICRO: 'µ', NANO: 'n',
|
|
15
|
+
PICO: 'p', FEMTO: 'f', ATTO: 'a',
|
|
16
|
+
};
|
|
17
|
+
function siSymbol(dimension, prefix) {
|
|
18
|
+
const stem = dimension === 'mass' ? 'g' : dimension === 'time' ? 's' : dimension === 'length' ||
|
|
19
|
+
dimension === 'area' || dimension === 'volume' ? 'm' : undefined;
|
|
20
|
+
if (!stem)
|
|
21
|
+
return dimension === 'number' ? '1' : undefined;
|
|
22
|
+
const exponent = dimension === 'area' ? '²' : dimension === 'volume' ? '³' : '';
|
|
23
|
+
return `${prefix ? PREFIX_SYMBOL[prefix] ?? prefix : ''}${stem}${exponent}`;
|
|
24
|
+
}
|
|
25
|
+
function namedSymbol(name) {
|
|
26
|
+
const symbols = { HOUR: 'h', MINUTE: 'min', FOOT: 'ft', INCH: 'in' };
|
|
27
|
+
return name ? symbols[name.toUpperCase()] ?? name : undefined;
|
|
28
|
+
}
|
|
29
|
+
function significantDigits(value) {
|
|
30
|
+
return (value.match(/\d/g) ?? []).length;
|
|
31
|
+
}
|
|
32
|
+
function exactProduct(left, right, precision) {
|
|
33
|
+
const ExactDecimal = Decimal.clone({ precision });
|
|
34
|
+
return new ExactDecimal(left).mul(right).toString();
|
|
35
|
+
}
|
|
36
|
+
const MAX_CONVERSION_SCALE_DIGITS = 10_000;
|
|
37
|
+
const MAX_CONVERSION_SCALE_WORK = 100_000;
|
|
38
|
+
function dimensionForUnitType(unitType) {
|
|
39
|
+
switch (unitType) {
|
|
40
|
+
case 'LENGTHUNIT': return 'length';
|
|
41
|
+
case 'AREAUNIT': return 'area';
|
|
42
|
+
case 'VOLUMEUNIT': return 'volume';
|
|
43
|
+
case 'MASSUNIT': return 'mass';
|
|
44
|
+
case 'TIMEUNIT': return 'time';
|
|
45
|
+
case 'USERDEFINED': return 'number';
|
|
46
|
+
default: return undefined;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function siScale(dimension, prefix, name) {
|
|
50
|
+
if (!dimension)
|
|
51
|
+
return undefined;
|
|
52
|
+
const expectedName = {
|
|
53
|
+
length: 'METRE', area: 'SQUARE_METRE', volume: 'CUBIC_METRE', mass: 'GRAM', time: 'SECOND',
|
|
54
|
+
};
|
|
55
|
+
if (expectedName[dimension] !== name)
|
|
56
|
+
return undefined;
|
|
57
|
+
const prefixScale = new Decimal(prefix ? PREFIX_SCALE[prefix] ?? '1' : '1');
|
|
58
|
+
if (dimension === 'mass') {
|
|
59
|
+
// IFC mass SI units are grams; canonical evaluation uses kilograms.
|
|
60
|
+
return prefixScale.mul('0.001').toString();
|
|
61
|
+
}
|
|
62
|
+
const exponent = dimension === 'area' ? 2 : dimension === 'volume' ? 3 : 1;
|
|
63
|
+
return prefixScale.pow(exponent).toString();
|
|
64
|
+
}
|
|
65
|
+
function dimensionForMeasure(type) {
|
|
66
|
+
switch (type) {
|
|
67
|
+
case 'IFCLENGTHMEASURE': return 'length';
|
|
68
|
+
case 'IFCAREAMEASURE': return 'area';
|
|
69
|
+
case 'IFCVOLUMEMEASURE': return 'volume';
|
|
70
|
+
case 'IFCMASSMEASURE': return 'mass';
|
|
71
|
+
case 'IFCTIMEMEASURE': return 'time';
|
|
72
|
+
case 'IFCCOUNTMEASURE': return 'count';
|
|
73
|
+
case 'IFCNUMERICMEASURE':
|
|
74
|
+
case 'IFCREAL':
|
|
75
|
+
case 'IFCINTEGER': return 'number';
|
|
76
|
+
default: return undefined;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
export class CostUnitResolver {
|
|
80
|
+
reader;
|
|
81
|
+
diagnostics;
|
|
82
|
+
Units = new Map();
|
|
83
|
+
MeasuresWithUnit = new Map();
|
|
84
|
+
ProjectUnits = new Map();
|
|
85
|
+
Currency;
|
|
86
|
+
conversionScaleWork = 0;
|
|
87
|
+
conversionScaleBudgetReported = false;
|
|
88
|
+
constructor(reader, diagnostics) {
|
|
89
|
+
this.reader = reader;
|
|
90
|
+
this.diagnostics = diagnostics;
|
|
91
|
+
this.readProjectUnits();
|
|
92
|
+
}
|
|
93
|
+
resolve(expressId) {
|
|
94
|
+
const active = new Set();
|
|
95
|
+
const stack = [{ id: expressId, exit: false }];
|
|
96
|
+
while (stack.length > 0) {
|
|
97
|
+
const frame = stack.pop();
|
|
98
|
+
if (frame.exit) {
|
|
99
|
+
active.delete(frame.id);
|
|
100
|
+
if (!this.Units.has(frame.id))
|
|
101
|
+
this.buildConversionUnit(frame.id);
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
if (this.Units.has(frame.id))
|
|
105
|
+
continue;
|
|
106
|
+
const entity = this.reader.get(frame.id);
|
|
107
|
+
if (!entity) {
|
|
108
|
+
this.warn('MISSING_REFERENCE', `Unit #${frame.id} cannot be resolved`, frame.id);
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
if (active.has(frame.id)) {
|
|
112
|
+
this.warn('UNSUPPORTED_UNIT', `Cyclic unit definition at #${frame.id}`, frame.id);
|
|
113
|
+
this.Units.set(frame.id, this.unresolvedUnit(frame.id));
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
if (entity.type.toUpperCase() !== 'IFCCONVERSIONBASEDUNIT') {
|
|
117
|
+
this.Units.set(frame.id, this.buildSimpleUnit(frame.id));
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
active.add(frame.id);
|
|
121
|
+
stack.push({ id: frame.id, exit: true });
|
|
122
|
+
const measureId = this.reference(frame.id, 3, 'ConversionFactor');
|
|
123
|
+
const dependency = measureId === undefined ? undefined : this.reference(measureId, 1, 'UnitComponent');
|
|
124
|
+
if (dependency !== undefined && !this.Units.has(dependency)) {
|
|
125
|
+
stack.push({ id: dependency, exit: false });
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return this.Units.get(expressId);
|
|
129
|
+
}
|
|
130
|
+
buildSimpleUnit(expressId) {
|
|
131
|
+
const entity = this.reader.get(expressId);
|
|
132
|
+
if (!entity)
|
|
133
|
+
return { expressId, Type: 'Unresolved' };
|
|
134
|
+
const attributes = entity.attributes ?? [];
|
|
135
|
+
const type = entity.type.toUpperCase();
|
|
136
|
+
let unit;
|
|
137
|
+
if (type === 'IFCMONETARYUNIT') {
|
|
138
|
+
unit = {
|
|
139
|
+
expressId,
|
|
140
|
+
Type: 'IfcMonetaryUnit',
|
|
141
|
+
Currency: asEnum(attributes[0]) ?? asString(attributes[0]),
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
const UnitType = asEnum(attributes[1]);
|
|
146
|
+
const Dimension = dimensionForUnitType(UnitType);
|
|
147
|
+
if (type === 'IFCSIUNIT') {
|
|
148
|
+
const prefixCandidate = asEnum(attributes[2]);
|
|
149
|
+
const validPrefix = !this.reader.attributePresent(expressId, 2) ||
|
|
150
|
+
(prefixCandidate !== undefined && PREFIX_SCALE[prefixCandidate] !== undefined);
|
|
151
|
+
const Prefix = validPrefix ? prefixCandidate : undefined;
|
|
152
|
+
const Name = asEnum(attributes[3]);
|
|
153
|
+
unit = {
|
|
154
|
+
expressId,
|
|
155
|
+
Type: 'IfcSIUnit',
|
|
156
|
+
UnitType,
|
|
157
|
+
Prefix,
|
|
158
|
+
Name,
|
|
159
|
+
Symbol: siSymbol(Dimension, Prefix),
|
|
160
|
+
Dimension,
|
|
161
|
+
Scale: validPrefix ? siScale(Dimension, Prefix, Name) : undefined,
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
else if (type === 'IFCCONVERSIONBASEDUNITWITHOFFSET') {
|
|
165
|
+
// Offset units cannot safely participate in multiplicative cost-rate arithmetic.
|
|
166
|
+
unit = {
|
|
167
|
+
expressId,
|
|
168
|
+
Type: 'IfcConversionBasedUnitWithOffset',
|
|
169
|
+
UnitType,
|
|
170
|
+
Name: asString(attributes[2]),
|
|
171
|
+
Symbol: namedSymbol(asString(attributes[2])),
|
|
172
|
+
Dimension,
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
unit = {
|
|
177
|
+
expressId,
|
|
178
|
+
Type: entity.type,
|
|
179
|
+
UnitType,
|
|
180
|
+
Name: asString(attributes[2]),
|
|
181
|
+
Symbol: namedSymbol(asString(attributes[2])),
|
|
182
|
+
Dimension,
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
if (!unit.Currency && unit.Scale === undefined) {
|
|
187
|
+
this.warn('UNSUPPORTED_UNIT', `Unsupported or unresolved ${unit.Type} #${expressId}`, expressId);
|
|
188
|
+
}
|
|
189
|
+
return unit;
|
|
190
|
+
}
|
|
191
|
+
unresolvedUnit(expressId) {
|
|
192
|
+
const entity = this.reader.get(expressId);
|
|
193
|
+
const attributes = entity?.attributes ?? [];
|
|
194
|
+
return {
|
|
195
|
+
expressId,
|
|
196
|
+
Type: entity?.type === 'IFCCONVERSIONBASEDUNIT' ? 'IfcConversionBasedUnit' : entity?.type ?? 'Unresolved',
|
|
197
|
+
UnitType: asEnum(attributes[1]),
|
|
198
|
+
Name: asString(attributes[2]),
|
|
199
|
+
Symbol: namedSymbol(asString(attributes[2])),
|
|
200
|
+
Dimension: dimensionForUnitType(asEnum(attributes[1])),
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
buildConversionUnit(expressId) {
|
|
204
|
+
const entity = this.reader.get(expressId);
|
|
205
|
+
if (!entity)
|
|
206
|
+
return;
|
|
207
|
+
const attributes = entity.attributes ?? [];
|
|
208
|
+
const UnitType = asEnum(attributes[1]);
|
|
209
|
+
const factor = this.readMeasure(this.reference(expressId, 3, 'ConversionFactor'));
|
|
210
|
+
const Dimension = dimensionForUnitType(UnitType);
|
|
211
|
+
const compatible = factor?.Unit.Dimension === Dimension && factor?.ValueDimension === Dimension;
|
|
212
|
+
const Scale = compatible && factor?.Unit.Scale
|
|
213
|
+
? this.conversionScale(factor.Value, factor.Unit.Scale, expressId) : undefined;
|
|
214
|
+
const validScale = Scale !== undefined && new Decimal(Scale).isFinite() && new Decimal(Scale).gt(0);
|
|
215
|
+
const unit = {
|
|
216
|
+
expressId, Type: 'IfcConversionBasedUnit', UnitType,
|
|
217
|
+
Name: asString(attributes[2]), Symbol: namedSymbol(asString(attributes[2])),
|
|
218
|
+
Dimension,
|
|
219
|
+
Scale: validScale ? Scale : undefined,
|
|
220
|
+
};
|
|
221
|
+
this.Units.set(expressId, unit);
|
|
222
|
+
if (!compatible && factor) {
|
|
223
|
+
this.warn('INCOMPATIBLE_UNIT', `Conversion unit #${expressId} has an incompatible factor dimension`, expressId);
|
|
224
|
+
}
|
|
225
|
+
else if (Scale !== undefined && !validScale) {
|
|
226
|
+
this.warn('INVALID_NUMBER', `Conversion unit #${expressId} has a non-positive or non-finite scale`, expressId);
|
|
227
|
+
}
|
|
228
|
+
else if (unit.Scale === undefined && this.conversionScaleWork <= MAX_CONVERSION_SCALE_WORK) {
|
|
229
|
+
this.warn('UNSUPPORTED_UNIT', `Unsupported or unresolved ${unit.Type} #${expressId}`, expressId);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
conversionScale(left, right, expressId) {
|
|
233
|
+
const precision = significantDigits(left) + significantDigits(right) + 2;
|
|
234
|
+
if (precision > MAX_CONVERSION_SCALE_DIGITS ||
|
|
235
|
+
this.conversionScaleWork + precision > MAX_CONVERSION_SCALE_WORK) {
|
|
236
|
+
this.conversionScaleWork = MAX_CONVERSION_SCALE_WORK + 1;
|
|
237
|
+
if (!this.conversionScaleBudgetReported) {
|
|
238
|
+
this.conversionScaleBudgetReported = true;
|
|
239
|
+
this.warn('UNSUPPORTED_UNIT', `Conversion unit #${expressId} exceeds the exact scale evaluation budget`, expressId);
|
|
240
|
+
}
|
|
241
|
+
return undefined;
|
|
242
|
+
}
|
|
243
|
+
this.conversionScaleWork += precision;
|
|
244
|
+
return exactProduct(left, right, precision);
|
|
245
|
+
}
|
|
246
|
+
resolveMeasureWithUnit(expressId) {
|
|
247
|
+
const measure = this.readMeasureHeader(expressId);
|
|
248
|
+
if (!measure)
|
|
249
|
+
return undefined;
|
|
250
|
+
this.resolve(measure.unitId);
|
|
251
|
+
return this.readMeasure(expressId);
|
|
252
|
+
}
|
|
253
|
+
/** Preserve the former best-effort rate marker without weakening canonical validation. */
|
|
254
|
+
compatibilityMeasureWithUnit(expressId, canonical) {
|
|
255
|
+
if (expressId === undefined)
|
|
256
|
+
return undefined;
|
|
257
|
+
const entity = this.reader.get(expressId);
|
|
258
|
+
if (!entity || entity.type.toUpperCase() !== 'IFCMEASUREWITHUNIT')
|
|
259
|
+
return undefined;
|
|
260
|
+
const unitId = this.reader.referenceLexeme(expressId, 1);
|
|
261
|
+
// ValueComponent and UnitComponent are SELECTs whose compatibility fields
|
|
262
|
+
// have always degraded independently. Do not let a malformed value hide a
|
|
263
|
+
// valid display unit. Avoid retrying a genuinely dangling unit reference.
|
|
264
|
+
const Unit = canonical?.Unit ?? (unitId === undefined ? undefined
|
|
265
|
+
: this.Units.get(unitId) ?? (this.reader.get(unitId) ? this.resolve(unitId) : undefined));
|
|
266
|
+
return { Value: this.reader.decimalLexeme(expressId, 0), Unit };
|
|
267
|
+
}
|
|
268
|
+
readMeasureHeader(expressId) {
|
|
269
|
+
if (expressId === undefined)
|
|
270
|
+
return undefined;
|
|
271
|
+
const entity = this.reader.get(expressId);
|
|
272
|
+
if (!entity || entity.type.toUpperCase() !== 'IFCMEASUREWITHUNIT') {
|
|
273
|
+
this.warn('MISSING_REFERENCE', `IfcMeasureWithUnit #${expressId} cannot be resolved`, expressId);
|
|
274
|
+
return undefined;
|
|
275
|
+
}
|
|
276
|
+
const value = entity.attributes?.[0];
|
|
277
|
+
const typedValue = this.reader.decimalLexeme(expressId, 0);
|
|
278
|
+
const unitId = this.reference(expressId, 1, 'UnitComponent');
|
|
279
|
+
if (typedValue === undefined || unitId === undefined) {
|
|
280
|
+
this.warn('INVALID_NUMBER', `IfcMeasureWithUnit #${expressId} has no supported value`, expressId);
|
|
281
|
+
return undefined;
|
|
282
|
+
}
|
|
283
|
+
const typedName = Array.isArray(value) && typeof value[0] === 'string' ? value[0].toUpperCase() : undefined;
|
|
284
|
+
const dimension = dimensionForMeasure(typedName);
|
|
285
|
+
if (dimension === undefined && typedName !== 'IFCMONETARYMEASURE') {
|
|
286
|
+
this.warn('INCOMPATIBLE_UNIT', `IfcMeasureWithUnit #${expressId} has unsupported value type ${typedName ?? '(missing)'}`, expressId);
|
|
287
|
+
return undefined;
|
|
288
|
+
}
|
|
289
|
+
return { value: typedValue, unitId, dimension, type: typedName };
|
|
290
|
+
}
|
|
291
|
+
readMeasure(expressId) {
|
|
292
|
+
const header = this.readMeasureHeader(expressId);
|
|
293
|
+
if (expressId === undefined || !header)
|
|
294
|
+
return undefined;
|
|
295
|
+
const unit = this.Units.get(header.unitId);
|
|
296
|
+
if (!unit)
|
|
297
|
+
return undefined;
|
|
298
|
+
this.MeasuresWithUnit.set(expressId, {
|
|
299
|
+
expressId, ValueComponent: header.value,
|
|
300
|
+
UnitComponent: unit.expressId,
|
|
301
|
+
ValueType: header.type,
|
|
302
|
+
ValueDimension: header.dimension,
|
|
303
|
+
});
|
|
304
|
+
return { Value: header.value, Unit: unit, ValueType: header.type, ValueDimension: header.dimension };
|
|
305
|
+
}
|
|
306
|
+
readProjectUnits() {
|
|
307
|
+
const projectId = this.reader.ids('IFCPROJECT')[0];
|
|
308
|
+
const assignmentId = projectId === undefined ? undefined : this.reference(projectId, 8, 'UnitsInContext');
|
|
309
|
+
const assignment = assignmentId === undefined ? undefined : this.reader.get(assignmentId);
|
|
310
|
+
const unitIds = assignment?.type.toUpperCase() === 'IFCUNITASSIGNMENT'
|
|
311
|
+
? this.references(assignmentId, 0, 'Units') ?? []
|
|
312
|
+
: [];
|
|
313
|
+
const currencies = new Set();
|
|
314
|
+
for (const unitId of unitIds) {
|
|
315
|
+
const unit = this.resolve(unitId);
|
|
316
|
+
if (!unit)
|
|
317
|
+
continue;
|
|
318
|
+
if (unit.Currency)
|
|
319
|
+
currencies.add(unit.Currency);
|
|
320
|
+
if (unit.Dimension && unit.Scale !== undefined && !this.ProjectUnits.has(unit.Dimension)) {
|
|
321
|
+
this.ProjectUnits.set(unit.Dimension, unit);
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
if (currencies.size === 1)
|
|
325
|
+
this.Currency = [...currencies][0];
|
|
326
|
+
else if (currencies.size > 1) {
|
|
327
|
+
this.warn('MIXED_CURRENCY', `IfcUnitAssignment #${assignmentId} declares conflicting project currencies`, assignmentId);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
warn(Code, Message, expressId) {
|
|
331
|
+
this.diagnostics.push({ Code, Message, Severity: 'warning', expressId });
|
|
332
|
+
}
|
|
333
|
+
reference(expressId, index, label) {
|
|
334
|
+
const ref = this.reader.referenceLexeme(expressId, index);
|
|
335
|
+
if (ref === undefined && this.reader.attributePresent(expressId, index)) {
|
|
336
|
+
this.warn('MISSING_REFERENCE', `${label} on #${expressId} is not an entity reference`, expressId);
|
|
337
|
+
}
|
|
338
|
+
return ref;
|
|
339
|
+
}
|
|
340
|
+
references(expressId, index, label) {
|
|
341
|
+
const refs = this.reader.referenceListLexeme(expressId, index);
|
|
342
|
+
if (refs === undefined && this.reader.attributePresent(expressId, index)) {
|
|
343
|
+
this.warn('INVALID_LIST', `${label} on #${expressId} must contain only entity references`, expressId);
|
|
344
|
+
}
|
|
345
|
+
return refs;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
//# sourceMappingURL=cost-units.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost-units.js","sourceRoot":"","sources":["../src/cost-units.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { EvaluatedCost } from './cost-evaluation-arithmetic.js';
|
|
2
|
+
export interface ValueEvaluationSession {
|
|
3
|
+
memo: Map<number, EvaluatedCost>;
|
|
4
|
+
categoryMemo: Map<string, EvaluatedCost>;
|
|
5
|
+
state: Map<number, 1 | 2>;
|
|
6
|
+
budget: ValueEvaluationBudget;
|
|
7
|
+
work: number;
|
|
8
|
+
locallyExhausted: boolean;
|
|
9
|
+
readonly exhausted: boolean;
|
|
10
|
+
owner: number;
|
|
11
|
+
}
|
|
12
|
+
export interface ValueEvaluationBudget {
|
|
13
|
+
work: number;
|
|
14
|
+
exhausted: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare function valueEvaluationBudget(): ValueEvaluationBudget;
|
|
17
|
+
export declare function valueEvaluationSession(owner: number, budget?: ValueEvaluationBudget): ValueEvaluationSession;
|
|
18
|
+
export declare function consumeValueEvaluationWork(session: ValueEvaluationSession, amount?: number): boolean;
|
|
19
|
+
//# sourceMappingURL=cost-value-evaluation-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost-value-evaluation-session.d.ts","sourceRoot":"","sources":["../src/cost-value-evaluation-session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACjC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACzC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,qBAAqB,IAAI,qBAAqB,CAE7D;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,qBAA+C,GACtD,sBAAsB,CAMxB;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAI,GAAG,OAAO,CAO/F"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
export function valueEvaluationBudget() {
|
|
5
|
+
return { work: 0, exhausted: false };
|
|
6
|
+
}
|
|
7
|
+
export function valueEvaluationSession(owner, budget = valueEvaluationBudget()) {
|
|
8
|
+
return {
|
|
9
|
+
memo: new Map(), categoryMemo: new Map(), state: new Map(), budget, owner,
|
|
10
|
+
work: 0, locallyExhausted: false,
|
|
11
|
+
get exhausted() { return this.locallyExhausted || budget.exhausted; },
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export function consumeValueEvaluationWork(session, amount = 1) {
|
|
15
|
+
if (session.exhausted)
|
|
16
|
+
return false;
|
|
17
|
+
session.work += amount;
|
|
18
|
+
session.budget.work += amount;
|
|
19
|
+
if (session.work > 100_000)
|
|
20
|
+
session.locallyExhausted = true;
|
|
21
|
+
if (session.budget.work > 1_000_000)
|
|
22
|
+
session.budget.exhausted = true;
|
|
23
|
+
return !session.exhausted;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=cost-value-evaluation-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost-value-evaluation-session.js","sourceRoot":"","sources":["../src/cost-value-evaluation-session.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAoB/D,MAAM,UAAU,qBAAqB;IACnC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,SAAgC,qBAAqB,EAAE;IAEvD,OAAO;QACL,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK;QACzE,IAAI,EAAE,CAAC,EAAE,gBAAgB,EAAE,KAAK;QAChC,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,gBAAgB,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;KACtE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAA+B,EAAE,MAAM,GAAG,CAAC;IACpF,IAAI,OAAO,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;IAC9B,IAAI,OAAO,CAAC,IAAI,GAAG,OAAO;QAAE,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC5D,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;IACrE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;AAC5B,CAAC"}
|
package/dist/cost.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { extractCostOnDemand } from './cost-extractor.js';
|
|
2
|
+
export type { CostExtractionOptions, CostMutationOverlay } from './cost-overlay.js';
|
|
3
|
+
export { evaluateCostItem, evaluateCostValue } from './cost-evaluator.js';
|
|
4
|
+
export type { CostAppliedValue, CostDiagnostic, CostDiagnosticCode, CostEvaluationOptions, CostEvaluationResult, CostExtraction, CostGraphExtraction, CostItemInfo, CostMeasureWithUnitInfo, CostQuantityDimension, CostQuantityInfo, CostRelationshipInfo, CostRelationshipType, CostScheduleInfo, CostSchemaVersion, CostUnitInfo, CostValueInfo, CostValueUnitBasis, } from './cost-types.js';
|
|
5
|
+
//# sourceMappingURL=cost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost.d.ts","sourceRoot":"","sources":["../src/cost.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,iBAAiB,CAAC"}
|
package/dist/cost.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
export { extractCostOnDemand } from './cost-extractor.js';
|
|
5
|
+
export { evaluateCostItem, evaluateCostValue } from './cost-evaluator.js';
|
|
6
|
+
//# sourceMappingURL=cost.js.map
|
package/dist/cost.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost.js","sourceRoot":"","sources":["../src/cost.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-extractor.d.ts","sourceRoot":"","sources":["../src/entity-extractor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entity-extractor.d.ts","sourceRoot":"","sources":["../src/entity-extractor.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEvE,YAAY,EAAE,SAAS,EAAE,CAAC;AA+C1B,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAiB;IAE/B;;;;;OAKG;gBACS,MAAM,EAAE,UAAU,GAAG,cAAc;IAI/C;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;IA0D/C,OAAO,CAAC,eAAe;IAiFvB,OAAO,CAAC,mBAAmB;CA8J5B"}
|
package/dist/entity-extractor.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import { createLogger } from '@ifc-lite/data';
|
|
8
8
|
import { decodeIfcString } from '@ifc-lite/encoding';
|
|
9
9
|
import { isIndexableExpressId } from './express-id.js';
|
|
10
|
+
import { entityParameters } from './step-entity-parameters.js';
|
|
10
11
|
import { StepTextScan } from './step-lexing.js';
|
|
11
12
|
import { STEP_TRIVIA } from './step-trivia.js';
|
|
12
13
|
import { asSourceBytes } from './source-bytes.js';
|
|
@@ -19,7 +20,7 @@ const MAX_PARSE_DEPTH = 100;
|
|
|
19
20
|
* Compiled once: `extractEntity` is on the hot path for every entity in a
|
|
20
21
|
* model.
|
|
21
22
|
*/
|
|
22
|
-
const ENTITY_RECORD_RE = new RegExp(`^#(\\d+)\\s*=\\s*(\\w+)${STEP_TRIVIA}\\(
|
|
23
|
+
const ENTITY_RECORD_RE = new RegExp(`^#(\\d+)\\s*=\\s*(\\w+)${STEP_TRIVIA}\\(`);
|
|
23
24
|
/**
|
|
24
25
|
* `TYPE(inner)` for a positional typed-value attribute, same trivia
|
|
25
26
|
* tolerance as {@link ENTITY_RECORD_RE}. Case-insensitive and dot-all
|
|
@@ -93,7 +94,9 @@ export class EntityExtractor {
|
|
|
93
94
|
// canonical, but this legacy eager adapter re-reads the record and must
|
|
94
95
|
// not reintroduce the file's spelling into EntityIndexBuilder.byType.
|
|
95
96
|
const type = match[2].toUpperCase();
|
|
96
|
-
const paramsText = match[
|
|
97
|
+
const paramsText = entityParameters(entityText, match[0].length);
|
|
98
|
+
if (paramsText === undefined)
|
|
99
|
+
return null;
|
|
97
100
|
// Parse attributes (simplified - handles basic types)
|
|
98
101
|
const { attributes, enumAttrIndices } = this.parseAttributes(paramsText);
|
|
99
102
|
const entity = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-extractor.js","sourceRoot":"","sources":["../src/entity-extractor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAuB,MAAM,mBAAmB,CAAC;AAIvE,MAAM,GAAG,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;AAE5C,kGAAkG;AAClG,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,0BAA0B,WAAW,
|
|
1
|
+
{"version":3,"file":"entity-extractor.js","sourceRoot":"","sources":["../src/entity-extractor.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -34,8 +34,7 @@ export { extractClassifications, getClassificationsForElement, getClassification
|
|
|
34
34
|
export { extractScheduleOnDemand, parseIso8601Duration, type ScheduleExtraction, type ScheduleTaskInfo, type ScheduleTaskTimeInfo, type ScheduleSequenceInfo, type WorkScheduleInfo, type WorkCalendarInfo, type WorkTimeInfo, type RecurrencePatternInfo, type TimePeriodInfo, type SequenceTypeEnum, type TaskDurationType, } from './schedule-extractor.js';
|
|
35
35
|
export { extractStructuralOnDemand, type StructuralExtraction, type StructuralAnalysisModelInfo, type StructuralMemberInfo, type StructuralConnectionInfo, type StructuralActivityInfo, type StructuralLoadGroupInfo, type StructuralResultGroupInfo, type StructuralLoadInfo, type StructuralLoadConfigurationInfo, type StructuralLoadConfigurationEntry, type StructuralLoadDropReason, type BoundaryConditionInfo, } from './structural-extractor.js';
|
|
36
36
|
export { serializeScheduleToStep, type SerializeScheduleOptions, type SerializeScheduleResult, } from './schedule-serializer.js';
|
|
37
|
-
export
|
|
38
|
-
export type { CostExtraction, CostItemInfo, CostScheduleInfo, CostValueInfo, CostValueUnitBasis, } from './cost-types.js';
|
|
37
|
+
export * from './cost.js';
|
|
39
38
|
export { secondsToIso8601Duration } from './iso8601-duration.js';
|
|
40
39
|
export { deterministicGlobalId } from './deterministic-global-id.js';
|
|
41
40
|
export { SCHEMA_REGISTRY, getEntityMetadata, getAllAttributesForEntity, getInheritanceChainForEntity, isKnownEntity } from './generated/schema-registry.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -66,7 +66,7 @@ export { extractStructuralOnDemand, } from './structural-extractor.js';
|
|
|
66
66
|
export { serializeScheduleToStep, } from './schedule-serializer.js';
|
|
67
67
|
// Cost (5D) extractor — IfcCostItem, IfcCostValue, IfcCostSchedule, IfcRelNests,
|
|
68
68
|
// IfcRelAssignsToControl. Read model + extraction only (#4322).
|
|
69
|
-
export
|
|
69
|
+
export * from './cost.js';
|
|
70
70
|
// Signed ISO 8601 duration codec — shared by the schedule extractor (decode)
|
|
71
71
|
// and serializer (encode), and by any other schedule consumer that needs to
|
|
72
72
|
// go from seconds to an `IfcDuration` string or back. See the module doc
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|