@ifc-lite/rules 0.2.0 → 0.3.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 (49) hide show
  1. package/README.md +1 -1
  2. package/dist/engine/rule-engine-requirements.d.ts.map +1 -1
  3. package/dist/engine/rule-engine-requirements.js +5 -0
  4. package/dist/engine/rule-engine-requirements.js.map +1 -1
  5. package/dist/engine/rule-engine-sets.d.ts.map +1 -1
  6. package/dist/engine/rule-engine-sets.js +1 -0
  7. package/dist/engine/rule-engine-sets.js.map +1 -1
  8. package/dist/engine/rule-engine.d.ts.map +1 -1
  9. package/dist/engine/rule-engine.js +37 -6
  10. package/dist/engine/rule-engine.js.map +1 -1
  11. package/dist/filter/filter-evaluate.d.ts.map +1 -1
  12. package/dist/filter/filter-evaluate.js +2 -0
  13. package/dist/filter/filter-evaluate.js.map +1 -1
  14. package/dist/filter/filter-iteration-source.d.ts.map +1 -1
  15. package/dist/filter/filter-iteration-source.js +2 -0
  16. package/dist/filter/filter-iteration-source.js.map +1 -1
  17. package/dist/filter/filter-model-fact.d.ts +29 -0
  18. package/dist/filter/filter-model-fact.d.ts.map +1 -0
  19. package/dist/filter/filter-model-fact.js +96 -0
  20. package/dist/filter/filter-model-fact.js.map +1 -0
  21. package/dist/filter/filter-rule-guards.d.ts.map +1 -1
  22. package/dist/filter/filter-rule-guards.js +8 -0
  23. package/dist/filter/filter-rule-guards.js.map +1 -1
  24. package/dist/filter/filter-rules.d.ts +4 -1
  25. package/dist/filter/filter-rules.d.ts.map +1 -1
  26. package/dist/filter/filter-rules.js +2 -1
  27. package/dist/filter/filter-rules.js.map +1 -1
  28. package/dist/filter/read-subject.d.ts.map +1 -1
  29. package/dist/filter/read-subject.js +3 -0
  30. package/dist/filter/read-subject.js.map +1 -1
  31. package/dist/ids/rule-to-ids-facets.d.ts.map +1 -1
  32. package/dist/ids/rule-to-ids-facets.js +2 -0
  33. package/dist/ids/rule-to-ids-facets.js.map +1 -1
  34. package/dist/index.d.ts +1 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +1 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/rule-set/requirement-text.d.ts.map +1 -1
  39. package/dist/rule-set/requirement-text.js +7 -0
  40. package/dist/rule-set/requirement-text.js.map +1 -1
  41. package/dist/rule-set/rule-set-io-requirement.js +1 -1
  42. package/dist/rule-set/rule-set-io-requirement.js.map +1 -1
  43. package/dist/rule-set/rule-set-io-subject.d.ts.map +1 -1
  44. package/dist/rule-set/rule-set-io-subject.js +7 -1
  45. package/dist/rule-set/rule-set-io-subject.js.map +1 -1
  46. package/dist/rule-set/rule-set.d.ts +2 -2
  47. package/dist/rule-set/rule-set.d.ts.map +1 -1
  48. package/dist/rule-set/rule-set.js.map +1 -1
  49. package/package.json +6 -6
@@ -16,7 +16,7 @@
16
16
  * the version constant, so every consumer can import it without pulling in
17
17
  * `JSON.parse` or DOM download machinery.
18
18
  */
19
- import type { AttributeRule, PropertyRule, QuantityRule, ClassificationRule, GroupRule, NumericOp } from '../filter/filter-rules.js';
19
+ import type { AttributeRule, PropertyRule, QuantityRule, ClassificationRule, GroupRule, ModelFactRule, NumericOp } from '../filter/filter-rules.js';
20
20
  import type { FilterGroup } from '../filter/filter-groups.js';
21
21
  export declare const RULE_SET_VERSION: 1;
22
22
  export interface RuleSetFile {
@@ -64,7 +64,7 @@ export type Requirement = {
64
64
  } | UniqueRequirement | AggregateRequirement | CompareRequirement | UnitRequirement;
65
65
  /** A FilterRule minus its operator/operand — the exact input `readSubject` takes. */
66
66
  type SubjectOf<R> = Omit<R, 'op' | 'value' | 'values' | 'valueKind'>;
67
- export type Subject = SubjectOf<AttributeRule> | SubjectOf<PropertyRule> | SubjectOf<QuantityRule> | SubjectOf<ClassificationRule> | SubjectOf<GroupRule> | {
67
+ export type Subject = SubjectOf<AttributeRule> | SubjectOf<PropertyRule> | SubjectOf<QuantityRule> | SubjectOf<ClassificationRule> | SubjectOf<GroupRule> | SubjectOf<ModelFactRule> | {
68
68
  kind: 'name' | 'material' | 'storey' | 'parent' | 'type' | 'ifcType' | 'predefinedType' | 'globalId';
69
69
  };
70
70
  export interface UniqueRequirement {
@@ -1 +1 @@
1
- {"version":3,"file":"rule-set.d.ts","sourceRoot":"","sources":["../../src/rule-set/rule-set.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,SAAS,EACV,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,eAAO,MAAM,gBAAgB,EAAG,CAAU,CAAC;AAE3C,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,gBAAgB,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,uFAAuF;AACvF,MAAM,WAAW,cAAc;IAC7B,sHAAsH;IACtH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B;kDAC8C;IAC9C,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE;iGAC6F;IAC7F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,kEAAkE;IAClE,UAAU,EAAE,OAAO,GAAG,UAAU,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACrC,iBAAiB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,eAAe,CAAC;AAEpF,qFAAqF;AACrF,KAAK,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC,CAAC;AACrE,MAAM,MAAM,OAAO,GACf,SAAS,CAAC,aAAa,CAAC,GACxB,SAAS,CAAC,YAAY,CAAC,GACvB,SAAS,CAAC,YAAY,CAAC,GACvB,SAAS,CAAC,kBAAkB,CAAC,GAC7B,SAAS,CAAC,SAAS,CAAC,GACpB;IAAE,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAC9D,gBAAgB,GAAG,UAAU,CAAA;CAAE,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,KAAK,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,CAAC;QACjB;2EACmE;QACnE,QAAQ,CAAC,EAAE,SAAS,CAAC;KACtB,CAAC;IACF,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,EAAE,EAAE,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAC;CACd"}
1
+ {"version":3,"file":"rule-set.d.ts","sourceRoot":"","sources":["../../src/rule-set/rule-set.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rule-set.js","sourceRoot":"","sources":["../../src/rule-set/rule-set.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AA+B/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAU,CAAC"}
1
+ {"version":3,"file":"rule-set.js","sourceRoot":"","sources":["../../src/rule-set/rule-set.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAgC/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAU,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ifc-lite/rules",
3
- "version": "0.2.0",
3
+ "version": "0.3.2",
4
4
  "description": "Filter-rule vocabulary, evaluator and .rules.json information-validation engine for IFC-Lite",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,12 +13,12 @@
13
13
  }
14
14
  },
15
15
  "dependencies": {
16
- "@ifc-lite/data": "5.0.0",
16
+ "@ifc-lite/data": "5.3.0",
17
17
  "@ifc-lite/encoding": "2.2.0",
18
- "@ifc-lite/mutations": "2.6.0",
19
- "@ifc-lite/ids": "2.0.0",
20
- "@ifc-lite/parser": "8.0.0",
21
- "@ifc-lite/lists": "2.2.5"
18
+ "@ifc-lite/ids": "3.0.2",
19
+ "@ifc-lite/lists": "2.3.2",
20
+ "@ifc-lite/mutations": "2.7.0",
21
+ "@ifc-lite/parser": "8.2.0"
22
22
  },
23
23
  "devDependencies": {
24
24
  "@types/node": "^26.6.1",