@idfkit/core 0.2.0 → 0.3.0-rc.1

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 (50) hide show
  1. package/dist/conformance.d.ts +1 -1
  2. package/dist/conformance.d.ts.map +1 -1
  3. package/dist/conformance.js +1 -1
  4. package/dist/conformance.js.map +1 -1
  5. package/dist/document.d.ts +16 -0
  6. package/dist/document.d.ts.map +1 -1
  7. package/dist/document.js +0 -0
  8. package/dist/document.js.map +1 -1
  9. package/dist/extensible.d.ts +5 -0
  10. package/dist/extensible.d.ts.map +1 -0
  11. package/dist/extensible.js +126 -0
  12. package/dist/extensible.js.map +1 -0
  13. package/dist/internal.d.ts +11 -0
  14. package/dist/internal.d.ts.map +1 -1
  15. package/dist/internal.js +11 -0
  16. package/dist/internal.js.map +1 -1
  17. package/dist/object.d.ts +34 -2
  18. package/dist/object.d.ts.map +1 -1
  19. package/dist/object.js +43 -6
  20. package/dist/object.js.map +1 -1
  21. package/dist/parse/epjson.d.ts.map +1 -1
  22. package/dist/parse/epjson.js +23 -1
  23. package/dist/parse/epjson.js.map +1 -1
  24. package/dist/parse/idf.d.ts +16 -0
  25. package/dist/parse/idf.d.ts.map +1 -1
  26. package/dist/parse/idf.js +76 -4
  27. package/dist/parse/idf.js.map +1 -1
  28. package/dist/parse/lexer.d.ts.map +1 -1
  29. package/dist/parse/lexer.js +21 -3
  30. package/dist/parse/lexer.js.map +1 -1
  31. package/dist/preserve/source.d.ts +3 -0
  32. package/dist/preserve/source.d.ts.map +1 -0
  33. package/dist/preserve/source.js +60 -0
  34. package/dist/preserve/source.js.map +1 -0
  35. package/dist/preserve/write.d.ts +2 -0
  36. package/dist/preserve/write.d.ts.map +1 -0
  37. package/dist/preserve/write.js +85 -0
  38. package/dist/preserve/write.js.map +1 -0
  39. package/dist/syntax/layer.d.ts.map +1 -1
  40. package/dist/syntax/layer.js +30 -6
  41. package/dist/syntax/layer.js.map +1 -1
  42. package/dist/write/epjson.d.ts +19 -0
  43. package/dist/write/epjson.d.ts.map +1 -1
  44. package/dist/write/epjson.js +12 -0
  45. package/dist/write/epjson.js.map +1 -1
  46. package/dist/write/idf.d.ts +23 -7
  47. package/dist/write/idf.d.ts.map +1 -1
  48. package/dist/write/idf.js +51 -7
  49. package/dist/write/idf.js.map +1 -1
  50. package/package.json +4 -4
package/dist/write/idf.js CHANGED
@@ -1,15 +1,25 @@
1
+ import { writePreserved } from '../preserve/write.js';
1
2
  /**
2
3
  * Serialize a document to IDF text.
3
4
  *
4
- * One caveat worth stating plainly: this does not round-trip formatting.
5
- * `3.0` in the input comes back as `3`, because JavaScript has a single number
6
- * type and the distinction is lost the moment the value is parsed. The models
7
- * are semantically identical and EnergyPlus reads both, but a textual diff of
8
- * input against output will show those fields. Preserving the original text
9
- * needs a concrete syntax tree, which the Python library has and this does not
10
- * yet.
5
+ * Two behaviours, chosen by how the document was read. A document read with `preserveFormatting`
6
+ * is written back per object: anything unchanged is reproduced from the characters it was read
7
+ * from, and everything between the objects is copied. A document read without it is formatted,
8
+ * which is what this writer has always done and still does by default.
9
+ *
10
+ * The caveat that used to be stated here applies to the formatting path alone: `3.0` comes back as
11
+ * `3` for a field the schema does not declare numeric. On the preserving path nothing is
12
+ * re-rendered, so nothing is lost.
11
13
  */
12
14
  export function writeIdf(document, options = {}) {
15
+ const preserved = decidePreservation(document, options);
16
+ if (preserved !== undefined) {
17
+ return writePreserved(document, preserved, {
18
+ comments: options.comments ?? true,
19
+ commentColumn: options.commentColumn ?? 30,
20
+ indent: options.indent ?? ' ',
21
+ });
22
+ }
13
23
  const compressed = options.compressed ?? false;
14
24
  // Compressed output has no comments by definition. Asking for both is not an error, because the
15
25
  // narrower request is unambiguous: comments cannot survive a single-line object.
@@ -42,6 +52,40 @@ export function writeIdf(document, options = {}) {
42
52
  }
43
53
  return parts.join('\n');
44
54
  }
55
+ /**
56
+ * The retained source to preserve from, or `undefined` to format.
57
+ *
58
+ * The branches below are the decision table, in order. Two are worth naming: preservation asked
59
+ * for on a document that has none is a quiet fallback rather than an error, and a reformatting
60
+ * control set WITHOUT asking for preservation is a request to format, so a control is never
61
+ * silently dropped in favour of the source.
62
+ */
63
+ function decidePreservation(document, options) {
64
+ if (options.preserveFormatting === false)
65
+ return undefined;
66
+ // A different output FORM is a different artifact, so granting it is honest.
67
+ if (options.compressed === true || options.comments === false)
68
+ return undefined;
69
+ const source = document.preservedSource;
70
+ const reformatting = options.indent !== undefined ||
71
+ options.commentColumn !== undefined ||
72
+ options.ordering !== undefined ||
73
+ options.versionFirst !== undefined;
74
+ // A document read from the object notation carries JSON text and preserves on that format's
75
+ // all-or-nothing terms. Handing it to this walk would emit JSON under an IDF writer's name.
76
+ if (source === undefined || source.format !== 'idf')
77
+ return undefined;
78
+ if (reformatting) {
79
+ if (options.preserveFormatting === true) {
80
+ // Names the CLASS of controls, not the one the caller happened to set: a caller who set two
81
+ // learns about both.
82
+ throw new TypeError('preserveFormatting reproduces the original text, so it cannot also apply indent, ' +
83
+ 'commentColumn, ordering or versionFirst. Pass one or the other.');
84
+ }
85
+ return undefined;
86
+ }
87
+ return source;
88
+ }
45
89
  /** Serialize one object. */
46
90
  export function writeObject(obj, options) {
47
91
  const definition = obj.schema;
@@ -1 +1 @@
1
- {"version":3,"file":"idf.js","sourceRoot":"","sources":["../../src/write/idf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idf.js","sourceRoot":"","sources":["../../src/write/idf.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idfkit/core",
3
- "version": "0.2.0",
3
+ "version": "0.3.0-rc.1",
4
4
  "description": "Fast EnergyPlus IDF and epJSON parsing and manipulation for JavaScript",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -42,11 +42,11 @@
42
42
  "node": ">=20"
43
43
  },
44
44
  "idfkit": {
45
- "conformance": "conformance-2026.8",
46
- "governance": "governance-2026.12"
45
+ "conformance": "conformance-2026.10",
46
+ "governance": "governance-2026.14"
47
47
  },
48
48
  "dependencies": {
49
- "@idfkit/schemas": "0.2.0"
49
+ "@idfkit/schemas": "0.3.0-rc.1"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@idfkit/types-v26-1": "*",