@dsillman2000/yaml-reference-ts 1.1.0 → 1.2.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.
package/README.md CHANGED
@@ -4,8 +4,9 @@ A Node.js TypeScript library for resolving YAML documents containing `!reference
4
4
 
5
5
  ## Features
6
6
 
7
- - **Custom YAML Tags**: Support for `!reference` and `!reference-all` tags
7
+ - **Custom YAML Tags**: Support for `!reference`, `!reference-all`, and `!flatten` tags
8
8
  - **Recursive Resolution**: Automatically resolves nested references
9
+ - **Sequence Flattening**: `!flatten` tag for flattening nested arrays
9
10
  - **Circular Reference Detection**: Prevents infinite loops with proper error messages
10
11
  - **Glob Pattern Support**: `!reference-all` supports glob patterns for multiple files
11
12
  - **CLI Interface**: Command-line tool for resolving YAML files
@@ -13,7 +14,7 @@ A Node.js TypeScript library for resolving YAML documents containing `!reference
13
14
 
14
15
  ## Spec
15
16
 
16
- This Node.js TypeScript library implements the YAML specification for cross-file references in YAML files using tags `!reference` and `!reference-all` as defined in the [yaml-reference-specs project](https://github.com/dsillman2000/yaml-reference-specs).
17
+ This Node.js TypeScript library implements the YAML specification for cross-file references in YAML files using tags `!reference`, `!reference-all` and `!flatten` tags as defined in the [yaml-reference-specs project](https://github.com/dsillman2000/yaml-reference-specs).
17
18
 
18
19
  ## Installation
19
20
 
@@ -51,7 +52,21 @@ configs: !reference-all
51
52
  files: !reference-all {glob: ./data/*.yaml}
52
53
  ```
53
54
 
54
- **Note**: Only mapping syntax is supported. Be sure to conform to the API (`!reference {path: <path>}` or `!reference-all {glob: <glob>}`).
55
+ ### Sequence Flattening
56
+
57
+ ```yaml
58
+ # Block sequence syntax
59
+ data: !flatten
60
+ - 1
61
+ - [2, 3]
62
+ - !reference
63
+ path: ./config/item.yaml
64
+
65
+ # Inline sequence syntax
66
+ simple: !flatten [1, 2, 3]
67
+ ```
68
+
69
+ **Note**: For `!reference` and `!reference-all` tags, only mapping syntax is supported. Be sure to conform to the API (`!reference {path: <path>}` or `!reference-all {glob: <glob>}`). For `!flatten` tags, only sequence syntax is supported.
55
70
 
56
71
  **Deterministic Ordering**: The `!reference-all` tag resolves files in alphabetical order to ensure consistent, predictable results across different systems and runs.
57
72
 
@@ -75,16 +90,16 @@ async function loadConfig() {
75
90
  ### API Reference
76
91
 
77
92
  #### `loadYamlWithReferences(filePath: string, allowPaths?: string[]): Promise<any>`
78
- Loads a YAML file and resolves all `!reference` and `!reference-all` tags, returning the fully resolved object. The optional `allowPaths` parameter restricts which directories can be referenced (see Path Restrictions section).
93
+ Loads a YAML file and resolves all `!reference`, `!reference-all`, and `!flatten` tags, returning the fully resolved object. The optional `allowPaths` parameter restricts which directories can be referenced (see Path Restrictions section).
79
94
 
80
95
  #### `parseYamlWithReferences(content: string, filePath: string): Promise<any>`
81
- Parses YAML content with custom tags, setting `_location` on Reference objects.
96
+ Parses YAML content with custom tags, setting `_location` on Reference and parsing Flatten objects.
82
97
 
83
98
  #### `loadYamlWithReferencesSync(filePath: string, allowPaths?: string[]): any`
84
- Loads a YAML file and resolves all `!reference` and `!reference-all` tags, returning the fully resolved object synchronously. The optional `allowPaths` parameter restricts which directories can be referenced (see Path Restrictions section).
99
+ Loads a YAML file and resolves all `!reference`, `!reference-all`, and `!flatten` tags, returning the fully resolved object synchronously. The optional `allowPaths` parameter restricts which directories can be referenced (see Path Restrictions section).
85
100
 
86
101
  #### `parseYamlWithReferencesSync(content: string, filePath: string): any`
87
- Parses YAML content with custom tags, setting `_location` on Reference objects synchronously.
102
+ Parses YAML content with custom tags, setting `_location` on Reference and parsing Flatten objects synchronously.
88
103
 
89
104
  #### `Reference` Class
90
105
  Represents a `!reference` tag with properties:
@@ -96,6 +111,10 @@ Represents a `!reference-all` tag with properties:
96
111
  - `_location`: Absolute path to the file containing the reference
97
112
  - `glob`: Glob pattern to match YAML files
98
113
 
114
+ #### `Flatten` Class
115
+ Represents a `!flatten` tag with properties:
116
+ - `sequence`: The sequence to be flattened (can contain nested arrays, Reference, and ReferenceAll objects)
117
+
99
118
  ## CLI Usage
100
119
 
101
120
  The package includes a CLI tool called `yaml-reference-cli`:
@@ -237,9 +256,18 @@ const resolved = await loadYamlWithReferences('./config/main.yaml', [
237
256
  7. Files are sorted and resolved in deterministic alphabetical order for consistent results across systems
238
257
  8. If no files match, an error is thrown
239
258
 
259
+ ### For `!flatten` tags:
260
+ 1. The sequence is parsed from the YAML (must be a sequence/array)
261
+ 3. The sequence is recursively flattened:
262
+ - Nested arrays are flattened into a single-level array
263
+ - `Reference` and `ReferenceAll` objects are resolved first, then flattened
264
+ - Other values are preserved as-is
265
+ 4. The `Flatten` object is replaced with the flattened array. No elements of the resulting array are themselves arrays.
266
+
240
267
  **Deterministic Behavior**: The library ensures predictable output by:
241
268
  - Sorting `!reference-all` file matches alphabetically before resolution
242
- - Rejecting scalar syntax (only mapping syntax is allowed)
269
+ - Rejecting scalar syntax for `!reference` and `!reference-all` tags (only mapping syntax is allowed)
270
+ - Rejecting mapping syntax for `!flatten` tags (only sequence syntax is allowed)
243
271
  - Using consistent error messages for validation failures
244
272
  - Enforcing path restrictions to prevent unauthorized file access
245
273
 
@@ -253,6 +281,7 @@ The library throws descriptive errors for:
253
281
  - Missing required properties (`path` for `!reference`, `glob` for `!reference-all`)
254
282
  - Absolute paths in `!reference` or `!reference-all` tags (only relative paths are allowed)
255
283
  - References to files outside allowed paths
284
+ - `!flatten` tag applied to non-sequence values
256
285
 
257
286
  ## Development
258
287
 
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Flatten class representing a !flatten tag in YAML
3
+ * This class is instantiated when the YAML parser encounters a !flatten tag
4
+ * The !flatten tag should be applied to Sequence nodes to flatten nested arrays
5
+ */
6
+ export declare class Flatten {
7
+ /**
8
+ * The sequence to be flattened
9
+ * This contains the raw parsed YAML document sequence
10
+ */
11
+ sequence: any[];
12
+ /**
13
+ * Creates a new Flatten instance
14
+ * @param sequence - The sequence to be flattened
15
+ * @param location - Absolute path to the file containing this flatten tag (optional, will be set later)
16
+ */
17
+ constructor(sequence: any[]);
18
+ /**
19
+ * Returns a string representation of the Flatten
20
+ */
21
+ toString(): string;
22
+ }
23
+ //# sourceMappingURL=Flatten.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flatten.d.ts","sourceRoot":"","sources":["../src/Flatten.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,OAAO;IAClB;;;OAGG;IACH,QAAQ,EAAE,GAAG,EAAE,CAAC;IAEhB;;;;OAIG;gBACS,QAAQ,EAAE,GAAG,EAAE;IAI3B;;OAEG;IACH,QAAQ,IAAI,MAAM;CAUnB"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Flatten = void 0;
4
+ /**
5
+ * Flatten class representing a !flatten tag in YAML
6
+ * This class is instantiated when the YAML parser encounters a !flatten tag
7
+ * The !flatten tag should be applied to Sequence nodes to flatten nested arrays
8
+ */
9
+ class Flatten {
10
+ /**
11
+ * Creates a new Flatten instance
12
+ * @param sequence - The sequence to be flattened
13
+ * @param location - Absolute path to the file containing this flatten tag (optional, will be set later)
14
+ */
15
+ constructor(sequence) {
16
+ this.sequence = sequence;
17
+ }
18
+ /**
19
+ * Returns a string representation of the Flatten
20
+ */
21
+ toString() {
22
+ return `Flatten { sequence: ${JSON.stringify(this.sequence)} }`;
23
+ }
24
+ /**
25
+ * Custom inspection method for Node.js console
26
+ */
27
+ [Symbol.for("nodejs.util.inspect.custom")]() {
28
+ return this.toString();
29
+ }
30
+ }
31
+ exports.Flatten = Flatten;
32
+ //# sourceMappingURL=Flatten.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flatten.js","sourceRoot":"","sources":["../src/Flatten.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,MAAa,OAAO;IAOlB;;;;OAIG;IACH,YAAY,QAAe;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AA7BD,0BA6BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../src/Reference.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,SAAS;IAClB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;gBACS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAiB3C;;OAEG;IACH,QAAQ,IAAI,MAAM;CAUrB"}
1
+ {"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../src/Reference.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,SAAS;IACpB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;gBACS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAiB3C;;OAEG;IACH,QAAQ,IAAI,MAAM;CAUnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Reference.js","sourceRoot":"","sources":["../src/Reference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC;;;GAGG;AACH,MAAa,SAAS;IAalB;;;;OAIG;IACH,YAAY,IAAY,EAAE,QAAiB;QACvC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACxD,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACX,mDAAmD,IAAI,GAAG,CAC7D,CAAC;QACN,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,QAAQ;QACJ,OAAO,sBAAsB,IAAI,CAAC,IAAI,kBAAkB,IAAI,CAAC,SAAS,KAAK,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;CACJ;AAhDD,8BAgDC"}
1
+ {"version":3,"file":"Reference.js","sourceRoot":"","sources":["../src/Reference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC;;;GAGG;AACH,MAAa,SAAS;IAapB;;;;OAIG;IACH,YAAY,IAAY,EAAE,QAAiB;QACzC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,mDAAmD,IAAI,GAAG,CAC3D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,sBAAsB,IAAI,CAAC,IAAI,kBAAkB,IAAI,CAAC,SAAS,KAAK,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AAhDD,8BAgDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReferenceAll.d.ts","sourceRoot":"","sources":["../src/ReferenceAll.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,YAAY;IACrB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;gBACS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAiB3C;;OAEG;IACH,QAAQ,IAAI,MAAM;CAUrB"}
1
+ {"version":3,"file":"ReferenceAll.d.ts","sourceRoot":"","sources":["../src/ReferenceAll.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,YAAY;IACvB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;gBACS,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAiB3C;;OAEG;IACH,QAAQ,IAAI,MAAM;CAUnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReferenceAll.js","sourceRoot":"","sources":["../src/ReferenceAll.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC;;;GAGG;AACH,MAAa,YAAY;IAarB;;;;OAIG;IACH,YAAY,IAAY,EAAE,QAAiB;QACvC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACX,sDAAsD,IAAI,GAAG,CAChE,CAAC;QACN,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,QAAQ;QACJ,OAAO,yBAAyB,IAAI,CAAC,IAAI,kBAAkB,IAAI,CAAC,SAAS,KAAK,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;CACJ;AAhDD,oCAgDC"}
1
+ {"version":3,"file":"ReferenceAll.js","sourceRoot":"","sources":["../src/ReferenceAll.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC;;;GAGG;AACH,MAAa,YAAY;IAavB;;;;OAIG;IACH,YAAY,IAAY,EAAE,QAAiB;QACzC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,GAAG,CAC9D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,yBAAyB,IAAI,CAAC,IAAI,kBAAkB,IAAI,CAAC,SAAS,KAAK,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AAhDD,oCAgDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,0CAA6C;AAC7C,gDAAkC;AAElC;;GAEG;AACH,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Bb,CAAC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,GAAQ;IAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,YAAY,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,SAAS,GAAQ,EAAE,CAAC;QAC1B,qCAAqC;QACrC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,SAAS,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,sBAAsB;IACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,QAAQ,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,kBAAkB;IAClB,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBACzD,OAAO,CAAC,KAAK,CACX,4EAA4E,CAC7E,CAAC;gBACF,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC,EAAE,CAAC,CAAC,8CAA8C;QACrD,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBACrD,OAAO,CAAC,KAAK,CACX,4EAA4E,CAC7E,CAAC;gBACF,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,QAAQ,GAAG,GAAG,CAAC;QACjB,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CACX,4EAA4E,CAC7E,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,uBAAuB;QACvB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,qBAAqB;QACrB,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAc,EACnC,QAAQ,EACR,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAC/C,CAAC;QAEF,2BAA2B;QAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QAExC,uCAAuC;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACnE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,cAAc;AACd,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CACX,gBAAgB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACzE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
  export { Reference } from "./Reference";
5
5
  export { ReferenceAll } from "./ReferenceAll";
6
+ export { Flatten } from "./Flatten";
6
7
  export { parseYamlWithReferencesSync, parseYamlWithReferences } from "./parser";
7
8
  /**
8
9
  * Convenience alias for loadAndResolve
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEhF;;;;GAIG;AACH,wBAAsB,sBAAsB,CACxC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,GAAG,CAAC,CAEd;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACtC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,GAAG,CAEL"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEhF;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,GAAG,CAAC,CAEd;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,GAAG,CAEL"}
package/dist/index.js CHANGED
@@ -3,13 +3,15 @@
3
3
  * Main exports for yaml-reference-ts library
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.parseYamlWithReferences = exports.parseYamlWithReferencesSync = exports.ReferenceAll = exports.Reference = void 0;
6
+ exports.parseYamlWithReferences = exports.parseYamlWithReferencesSync = exports.Flatten = exports.ReferenceAll = exports.Reference = void 0;
7
7
  exports.loadYamlWithReferences = loadYamlWithReferences;
8
8
  exports.loadYamlWithReferencesSync = loadYamlWithReferencesSync;
9
9
  var Reference_1 = require("./Reference");
10
10
  Object.defineProperty(exports, "Reference", { enumerable: true, get: function () { return Reference_1.Reference; } });
11
11
  var ReferenceAll_1 = require("./ReferenceAll");
12
12
  Object.defineProperty(exports, "ReferenceAll", { enumerable: true, get: function () { return ReferenceAll_1.ReferenceAll; } });
13
+ var Flatten_1 = require("./Flatten");
14
+ Object.defineProperty(exports, "Flatten", { enumerable: true, get: function () { return Flatten_1.Flatten; } });
13
15
  const resolver_1 = require("./resolver");
14
16
  var parser_1 = require("./parser");
15
17
  Object.defineProperty(exports, "parseYamlWithReferencesSync", { enumerable: true, get: function () { return parser_1.parseYamlWithReferencesSync; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAYH,wDAKC;AAOD,gEAKC;AA3BD,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,yCAAgE;AAChE,mCAAgF;AAAvE,qHAAA,2BAA2B,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAE7D;;;;GAIG;AACI,KAAK,UAAU,sBAAsB,CACxC,QAAgB,EAChB,UAAqB;IAErB,OAAO,MAAM,IAAA,yBAAc,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CACtC,QAAgB,EAChB,UAAqB;IAErB,OAAO,IAAA,6BAAkB,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAaH,wDAKC;AAOD,gEAKC;AA5BD,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,yCAAgE;AAChE,mCAAgF;AAAvE,qHAAA,2BAA2B,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAE7D;;;;GAIG;AACI,KAAK,UAAU,sBAAsB,CAC1C,QAAgB,EAChB,UAAqB;IAErB,OAAO,MAAM,IAAA,yBAAc,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CACxC,QAAgB,EAChB,UAAqB;IAErB,OAAO,IAAA,6BAAkB,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsEH;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAgBjE;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAgB5E"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkGH;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAgBjE;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAgB5E"}
package/dist/parser.js CHANGED
@@ -42,6 +42,7 @@ exports.parseYamlWithReferences = parseYamlWithReferences;
42
42
  const yaml_1 = require("yaml");
43
43
  const Reference_1 = require("./Reference");
44
44
  const ReferenceAll_1 = require("./ReferenceAll");
45
+ const Flatten_1 = require("./Flatten");
45
46
  const path = __importStar(require("path"));
46
47
  const fs = __importStar(require("fs/promises"));
47
48
  const fsSync = __importStar(require("fs"));
@@ -52,18 +53,18 @@ const referenceTag = {
52
53
  identify: (value) => value instanceof Reference_1.Reference,
53
54
  tag: "!reference",
54
55
  collection: "map",
55
- resolve: (value, _) => {
56
+ resolve: (value, onError) => {
56
57
  // value should be a YAMLMap for mapping syntax
57
58
  if (!(value instanceof yaml_1.YAMLMap)) {
58
- throw new Error('!reference tag must be followed by a mapping with a "path" property');
59
+ return onError('!reference tag must be followed by a mapping with a "path" property');
59
60
  }
60
61
  // Get the path property from the map
61
62
  const pathValue = value.get("path");
62
63
  if (!pathValue) {
63
- throw new Error('!reference tag requires a "path" property');
64
+ return onError('!reference tag requires a "path" property');
64
65
  }
65
66
  if (typeof pathValue !== "string") {
66
- throw new Error('!reference "path" property must be a string');
67
+ return onError('!reference "path" property must be a string');
67
68
  }
68
69
  return new Reference_1.Reference(pathValue);
69
70
  },
@@ -75,24 +76,51 @@ const referenceAllTag = {
75
76
  identify: (value) => value instanceof ReferenceAll_1.ReferenceAll,
76
77
  tag: "!reference-all",
77
78
  collection: "map",
78
- resolve: (value, _) => {
79
- // value should be a YAMLMap for mapping syntax
80
- if (!(value instanceof yaml_1.YAMLMap)) {
81
- throw new Error('!reference-all tag must be followed by a mapping with a "glob" property');
82
- }
79
+ resolve: (value, onError) => {
83
80
  // Get the glob property from the map
84
81
  const globValue = value.get("glob");
85
- if (!globValue) {
86
- throw new Error('!reference-all tag requires a "glob" property');
82
+ if (!globValue || globValue === null) {
83
+ return onError('!reference-all tag requires a "glob" property');
87
84
  }
88
85
  if (typeof globValue !== "string") {
89
- throw new Error('!reference-all "glob" property must be a string');
86
+ return onError('!reference-all "glob" property must be a string');
90
87
  }
91
88
  return new ReferenceAll_1.ReferenceAll(globValue);
92
89
  },
93
90
  };
91
+ const referentialTags = [referenceTag, referenceAllTag];
92
+ /**
93
+ * Custom tag for !flatten
94
+ */
95
+ const flattenTag = {
96
+ identify: (value) => value instanceof Flatten_1.Flatten,
97
+ tag: "!flatten",
98
+ collection: "seq",
99
+ resolve: (value, _) => {
100
+ const sequence = new yaml_1.Document(value, {
101
+ customTags: referentialTags,
102
+ }).toJS();
103
+ return new Flatten_1.Flatten(sequence);
104
+ },
105
+ };
106
+ /**
107
+ * Dummy illegal flag when flatten is used on a mapping.
108
+ */
109
+ const illegalFlattenOnMapping = {
110
+ identify: (value) => value instanceof Flatten_1.Flatten,
111
+ tag: "!flatten",
112
+ collection: "map",
113
+ resolve: (_, onError) => {
114
+ return onError("!flatten tag cannot be used on a mapping");
115
+ },
116
+ };
94
117
  // Custom tags array for parsing
95
- const customTags = [referenceTag, referenceAllTag];
118
+ const customTags = [
119
+ referenceTag,
120
+ referenceAllTag,
121
+ flattenTag,
122
+ illegalFlattenOnMapping,
123
+ ];
96
124
  /**
97
125
  * Parse YAML content with custom !reference and !reference-all tags
98
126
  * @param filePath - Path to the YAML file to be parsed (used for setting _location)
@@ -102,7 +130,7 @@ function parseYamlWithReferencesSync(filePath) {
102
130
  try {
103
131
  const absolutePath = path.resolve(filePath);
104
132
  const content = fsSync.readFileSync(absolutePath, "utf8");
105
- const parsed = (0, yaml_1.parse)(content, { customTags });
133
+ const parsed = (0, yaml_1.parse)(content, { customTags: customTags });
106
134
  // Process the parsed document to set _location on Reference and ReferenceAll objects
107
135
  return processParsedDocument(parsed, filePath);
108
136
  }
@@ -120,7 +148,7 @@ async function parseYamlWithReferences(filePath) {
120
148
  try {
121
149
  const absolutePath = path.resolve(filePath);
122
150
  const content = await fs.readFile(absolutePath, "utf8");
123
- const parsed = (0, yaml_1.parse)(content, { customTags });
151
+ const parsed = (0, yaml_1.parse)(content, { customTags: customTags });
124
152
  // Process the parsed document to set _location on Reference and ReferenceAll objects
125
153
  return processParsedDocument(parsed, filePath);
126
154
  }
@@ -141,6 +169,10 @@ function processParsedDocument(obj, filePath) {
141
169
  obj._location = filePath;
142
170
  return obj;
143
171
  }
172
+ if (obj instanceof Flatten_1.Flatten) {
173
+ let processed = obj.sequence.map((item) => processParsedDocument(item, filePath));
174
+ return new Flatten_1.Flatten(processed);
175
+ }
144
176
  if (Array.isArray(obj)) {
145
177
  return obj.map((item) => processParsedDocument(item, filePath));
146
178
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,12 @@
2
2
  * Resolver module for resolving !reference and !reference-all tags
3
3
  * Handles recursive resolution of references with proper path tracking
4
4
  */
5
+ /**
6
+ * Recursively flatten all arrays in an object
7
+ * @param obj - Object that may contain nested arrays
8
+ * @returns Object with all arrays flattened
9
+ */
10
+ export declare function flattenSequences(obj: any): any;
5
11
  /**
6
12
  * Load a YAML file containing references and resolve all references. (async)
7
13
  * @param filePath - Path to YAML file containing references
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoCH;;;;;GAKG;AACH,wBAAsB,cAAc,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,GAAG,CAAC,CAQd;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAC9B,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,GAAG,CAQL;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CAC/C,GAAG,EAAE,GAAG,EACR,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,EACrC,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,GAAG,CAAC,CAoCd;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC7C,GAAG,EAAE,GAAG,EACR,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,EACrC,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,GAAG,CAoCL"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqCH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CA4B9C;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,GAAG,CAAC,CASd;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,GAAG,CASL;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,GAAG,EACR,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,EACrC,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,GAAG,CAAC,CA2Cd;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,GAAG,EACR,YAAY,GAAE,GAAG,CAAC,MAAM,CAAa,EACrC,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,GAAG,CA2CL"}
package/dist/resolver.js CHANGED
@@ -37,6 +37,7 @@ var __importStar = (this && this.__importStar) || (function () {
37
37
  };
38
38
  })();
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.flattenSequences = flattenSequences;
40
41
  exports.loadAndResolve = loadAndResolve;
41
42
  exports.loadAndResolveSync = loadAndResolveSync;
42
43
  exports._recursivelyResolveReferences = _recursivelyResolveReferences;
@@ -47,6 +48,7 @@ const fsSync = __importStar(require("fs"));
47
48
  const glob_1 = require("glob");
48
49
  const Reference_1 = require("./Reference");
49
50
  const ReferenceAll_1 = require("./ReferenceAll");
51
+ const Flatten_1 = require("./Flatten");
50
52
  const parser_1 = require("./parser");
51
53
  /**
52
54
  * Normalize allowPaths to always include the parent directory of filePath
@@ -67,6 +69,38 @@ function normalizeAllowPaths(filePath, allowPaths) {
67
69
  }
68
70
  return normalizedPaths;
69
71
  }
72
+ /**
73
+ * Recursively flatten all arrays in an object
74
+ * @param obj - Object that may contain nested arrays
75
+ * @returns Object with all arrays flattened
76
+ */
77
+ function flattenSequences(obj) {
78
+ if (Array.isArray(obj)) {
79
+ const flattened = [];
80
+ for (const item of obj) {
81
+ const flattenedItem = flattenSequences(item);
82
+ if (Array.isArray(flattenedItem)) {
83
+ flattened.push(...flattenedItem);
84
+ }
85
+ else {
86
+ flattened.push(flattenedItem);
87
+ }
88
+ }
89
+ return flattened;
90
+ }
91
+ if (obj && typeof obj === "object") {
92
+ if (obj instanceof Flatten_1.Flatten) {
93
+ // Flatten the sequence inside the Flatten object
94
+ return flattenSequences(obj.sequence);
95
+ }
96
+ const result = {};
97
+ for (const [key, value] of Object.entries(obj)) {
98
+ result[key] = flattenSequences(value);
99
+ }
100
+ return result;
101
+ }
102
+ return obj;
103
+ }
70
104
  /**
71
105
  * Load a YAML file containing references and resolve all references. (async)
72
106
  * @param filePath - Path to YAML file containing references
@@ -76,7 +110,8 @@ function normalizeAllowPaths(filePath, allowPaths) {
76
110
  async function loadAndResolve(filePath, allowPaths) {
77
111
  const parsed = await (0, parser_1.parseYamlWithReferences)(filePath);
78
112
  const normalizedAllowPaths = normalizeAllowPaths(filePath, allowPaths);
79
- return await _recursivelyResolveReferences(parsed, new Set(), normalizedAllowPaths);
113
+ const resolved = await _recursivelyResolveReferences(parsed, new Set(), normalizedAllowPaths);
114
+ return flattenSequences(resolved);
80
115
  }
81
116
  /**
82
117
  * Load a YAML file containing references and resolve all references.
@@ -87,7 +122,8 @@ async function loadAndResolve(filePath, allowPaths) {
87
122
  function loadAndResolveSync(filePath, allowPaths) {
88
123
  const parsed = (0, parser_1.parseYamlWithReferencesSync)(filePath);
89
124
  const normalizedAllowPaths = normalizeAllowPaths(filePath, allowPaths);
90
- return _recursivelyResolveReferencesSync(parsed, new Set(), normalizedAllowPaths);
125
+ const resolved = _recursivelyResolveReferencesSync(parsed, new Set(), normalizedAllowPaths);
126
+ return flattenSequences(resolved);
91
127
  }
92
128
  /**
93
129
  * Recursively resolve all references in an object (async)
@@ -103,6 +139,14 @@ async function _recursivelyResolveReferences(obj, visitedPaths = new Set(), allo
103
139
  if (obj instanceof ReferenceAll_1.ReferenceAll) {
104
140
  return await resolveReferenceAll(obj, visitedPaths, allowPaths);
105
141
  }
142
+ if (obj instanceof Flatten_1.Flatten) {
143
+ // Resolve references within the sequence first, then flatten will be applied later
144
+ const resolvedSequence = [];
145
+ for (const item of obj.sequence) {
146
+ resolvedSequence.push(await _recursivelyResolveReferences(item, visitedPaths, allowPaths));
147
+ }
148
+ return new Flatten_1.Flatten(resolvedSequence);
149
+ }
106
150
  if (Array.isArray(obj)) {
107
151
  const resolvedArray = [];
108
152
  for (const item of obj) {
@@ -133,6 +177,14 @@ function _recursivelyResolveReferencesSync(obj, visitedPaths = new Set(), allowP
133
177
  if (obj instanceof ReferenceAll_1.ReferenceAll) {
134
178
  return resolveReferenceAllSync(obj, visitedPaths, allowPaths);
135
179
  }
180
+ if (obj instanceof Flatten_1.Flatten) {
181
+ // Resolve references within the sequence first, then flatten will be applied later
182
+ const resolvedSequence = [];
183
+ for (const item of obj.sequence) {
184
+ resolvedSequence.push(_recursivelyResolveReferencesSync(item, visitedPaths, allowPaths));
185
+ }
186
+ return new Flatten_1.Flatten(resolvedSequence);
187
+ }
136
188
  if (Array.isArray(obj)) {
137
189
  const resolvedArray = [];
138
190
  for (const item of obj) {
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,56 +1,59 @@
1
1
  {
2
- "name": "@dsillman2000/yaml-reference-ts",
3
- "version": "1.1.0",
4
- "description": "A Node.js TypeScript library for resolving YAML documents containing !reference and !reference-all tags",
5
- "repository": {
6
- "type": "git",
7
- "url": "https://github.com/dsillman2000/yaml-reference-ts"
8
- },
9
- "homepage": "https://github.com/dsillman2000/yaml-reference-ts#readme",
10
- "bugs": {
11
- "url": "https://github.com/dsillman2000/yaml-reference-ts/issues"
12
- },
13
- "main": "dist/index.js",
14
- "types": "dist/index.d.ts",
15
- "bin": {
16
- "yaml-reference-cli": "./dist/cli/index.js"
17
- },
18
- "scripts": {
19
- "build": "tsc",
20
- "dev": "tsc --watch",
21
- "test": "jest",
22
- "test:watch": "jest --watch",
23
- "test:coverage": "jest --coverage",
24
- "lint": "eslint --config .eslintrc.js src/**/*.ts",
25
- "prepublishOnly": "npm run build",
26
- "prepare": "npm run build"
27
- },
28
- "keywords": [
29
- "yaml",
30
- "reference",
31
- "resolver",
32
- "configuration",
33
- "typescript"
34
- ],
35
- "author": "David Sillman <dsillman2000@gmail.com>",
36
- "license": "MIT",
37
- "dependencies": {
38
- "glob": "^13.0.1",
39
- "yaml": "^2.8.2"
40
- },
41
- "devDependencies": {
42
- "@types/glob": "^8.1.0",
43
- "@types/jest": "^30.0.0",
44
- "@types/node": "^25.2.2",
45
- "@typescript-eslint/eslint-plugin": "^8.54.0",
46
- "@typescript-eslint/parser": "^8.54.0",
47
- "eslint": "^9.39.2",
48
- "jest": "^30.2.0",
49
- "ts-jest": "^29.4.6",
50
- "typescript": "^5.9.3"
51
- },
52
- "files": [
53
- "dist",
54
- "README.md"
55
- ]
2
+ "name": "@dsillman2000/yaml-reference-ts",
3
+ "version": "1.2.1",
4
+ "description": "A Node.js TypeScript library for resolving YAML documents containing !reference and !reference-all tags",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/dsillman2000/yaml-reference-ts"
8
+ },
9
+ "homepage": "https://github.com/dsillman2000/yaml-reference-ts#readme",
10
+ "bugs": {
11
+ "url": "https://github.com/dsillman2000/yaml-reference-ts/issues"
12
+ },
13
+ "main": "dist/index.js",
14
+ "types": "dist/index.d.ts",
15
+ "bin": {
16
+ "yaml-reference-cli": "./dist/cli/index.js"
17
+ },
18
+ "scripts": {
19
+ "build": "tsc",
20
+ "dev": "tsc --watch",
21
+ "test": "jest",
22
+ "test:watch": "jest --watch",
23
+ "test:coverage": "jest --coverage",
24
+ "format": "prettier --write .",
25
+ "format:check": "prettier --check .",
26
+ "lint": "eslint --config .eslintrc.js src/**/*.ts",
27
+ "prepublishOnly": "npm run build",
28
+ "prepare": "npm run build"
29
+ },
30
+ "keywords": [
31
+ "yaml",
32
+ "reference",
33
+ "resolver",
34
+ "configuration",
35
+ "typescript"
36
+ ],
37
+ "author": "David Sillman <dsillman2000@gmail.com>",
38
+ "license": "MIT",
39
+ "dependencies": {
40
+ "glob": "^13.0.1",
41
+ "yaml": "^2.8.2"
42
+ },
43
+ "devDependencies": {
44
+ "@types/glob": "^8.1.0",
45
+ "@types/jest": "^30.0.0",
46
+ "@types/node": "^25.2.2",
47
+ "@typescript-eslint/eslint-plugin": "^8.54.0",
48
+ "@typescript-eslint/parser": "^8.54.0",
49
+ "eslint": "^9.39.2",
50
+ "jest": "^30.2.0",
51
+ "prettier": "^3.6.2",
52
+ "ts-jest": "^29.4.6",
53
+ "typescript": "^5.9.3"
54
+ },
55
+ "files": [
56
+ "dist",
57
+ "README.md"
58
+ ]
56
59
  }