@blue-labs/language 3.4.1 → 3.4.3

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.
@@ -24,6 +24,7 @@ export declare class Merger extends NodeResolver {
24
24
  * @returns A new BlueNode with the merged content
25
25
  */
26
26
  merge(target: BlueNode, source: BlueNode, limits: Limits): BlueNode;
27
+ private mergeWithContext;
27
28
  /**
28
29
  * Merges the properties and items of a source node into a target node
29
30
  * @param target - The target node to merge into
@@ -41,14 +42,13 @@ export declare class Merger extends NodeResolver {
41
42
  */
42
43
  private mergeChildren;
43
44
  /**
44
- * Merges a property from source into target
45
+ * Merges source properties into target using copy-on-write for properties map
45
46
  * @param target - The target node
46
- * @param sourceKey - The property key
47
- * @param sourceValue - The property value to merge
47
+ * @param sourceProperties - The properties to merge from source
48
48
  * @param limits - The limits to apply
49
- * @returns A new BlueNode with the merged property
49
+ * @returns A new BlueNode with merged properties
50
50
  */
51
- private mergeProperty;
51
+ private mergeProperties;
52
52
  /**
53
53
  * Resolves a node by creating a new node and merging the source into it
54
54
  * @param node - The node to resolve
@@ -56,5 +56,14 @@ export declare class Merger extends NodeResolver {
56
56
  * @returns A ResolvedBlueNode containing the resolved content
57
57
  */
58
58
  resolve(node: BlueNode, limits: Limits): ResolvedBlueNode;
59
+ private resolveWithContext;
60
+ private createResolutionContext;
61
+ private resolveTypeNode;
62
+ private resolveAndExtendTypeNode;
63
+ private createResolvedTypeCacheKey;
64
+ private canReuseResolvedSubtree;
65
+ private getCurrentPointer;
66
+ private enterPathSegment;
67
+ private exitPathSegment;
59
68
  }
60
69
  //# sourceMappingURL=Merger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Merger.d.ts","sourceRoot":"","sources":["../../../src/lib/merge/Merger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAKhD;;GAEG;AACH,qBAAa,MAAO,SAAQ,YAAY;IACtC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAe;IAEnC;;;;OAIG;gBACS,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY;IAM1E;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ;IA2B1E;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAyCnB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAmDrB;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IA4BrB;;;;;OAKG;IACI,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;CAWjE"}
1
+ {"version":3,"file":"Merger.d.ts","sourceRoot":"","sources":["../../../src/lib/merge/Merger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAahD;;GAEG;AACH,qBAAa,MAAO,SAAQ,YAAY;IACtC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAe;IAEnC;;;;OAIG;gBACS,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY;IAM1E;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ;IAQ1E,OAAO,CAAC,gBAAgB;IA0BxB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAoCnB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IA+DrB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IA6CvB;;;;;OAKG;IACI,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAIhE,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,eAAe;IAoBvB,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;CAIxB"}
@@ -57,6 +57,7 @@ export declare class BlueNode {
57
57
  getAsNode(path: string): BlueNode | undefined;
58
58
  getAsInteger(path: string): number | undefined;
59
59
  clone(): BlueNode;
60
+ cloneShallow(): BlueNode;
60
61
  toString(): string;
61
62
  }
62
63
  //# sourceMappingURL=Node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../../src/lib/model/Node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../../src/lib/model/Node.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,aAAa,EACd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAQtD,qBAAa,QAAQ;IACnB,MAAM,CAAC,OAAO,EAAE,QAAQ,CAA2B;IAEnD,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,IAAI,CAAC,CAAW;IACxB,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,OAAO,CAAC,KAAK,CAAC,CAGO;IACrB,OAAO,CAAC,KAAK,CAAC,CAAa;IAC3B,OAAO,CAAC,UAAU,CAAC,CAA2B;IAC9C,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,IAAI,CAAC,CAAW;IACxB,OAAO,CAAC,WAAW,CAAS;gBAEhB,IAAI,CAAC,EAAE,MAAM;IAIzB,OAAO;IAIP,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ;IAK3C,cAAc;IAId,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ;IAKzD,OAAO;IAIP,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ;IAStD,WAAW;IAIX,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ;IAS9D,UAAU;IAIV,UAAU,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ;IAS5D,YAAY;IAIZ,YAAY,CAAC,SAAS,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ;IAShE,QAAQ;IAyBR,QAAQ,CACN,KAAK,EAAE,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,MAAM,GAClE,QAAQ;IAaX,QAAQ;IAIR,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,SAAS,GAAG,QAAQ;IAKjD,QAAQ,CAAC,GAAG,KAAK,EAAE,QAAQ,EAAE,GAAG,QAAQ;IAQxC,aAAa;IAIb,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,GAAG,QAAQ;IAKzE,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAQnD,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;IAOrC,OAAO,CAAC,oBAAoB;IAI5B,YAAY;IAIZ,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,GAAG,QAAQ;IAYvE,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAanD,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;IAgBrC,SAAS;IAIT,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ;IAK/C,OAAO;IAIP,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ;IAK7C,aAAa;IAIb,cAAc,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ;IAK9C;;;OAGG;IACH,UAAU,IAAI,OAAO;IAIrB,GAAG,CACD,IAAI,EAAE,MAAM,EACZ,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,QAAQ,GAAG,IAAI,GAEnD,QAAQ,GACR,MAAM,GACN,OAAO,GACP,gBAAgB,GAChB,gBAAgB,GAChB,IAAI,GACJ,SAAS;IAIb,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAS7C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAc9C,KAAK,IAAI,QAAQ;IAoBjB,YAAY,IAAI,QAAQ;IAgBxB,QAAQ,IAAI,MAAM;CAGnB"}
@@ -28,6 +28,12 @@ export declare class ResolvedBlueNode extends BlueNode {
28
28
  * @returns A new ResolvedBlueNode with the same state
29
29
  */
30
30
  clone(): ResolvedBlueNode;
31
+ /**
32
+ * Creates a shallow clone of this ResolvedBlueNode while preserving
33
+ * the resolved marker type.
34
+ * @returns A new ResolvedBlueNode with shallow-copied containers
35
+ */
36
+ cloneShallow(): ResolvedBlueNode;
31
37
  /**
32
38
  * Copies all properties from another BlueNode
33
39
  * @param source - The node to copy properties from
@@ -1 +1 @@
1
- {"version":3,"file":"ResolvedNode.d.ts","sourceRoot":"","sources":["../../../src/lib/model/ResolvedNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIlC;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C;;;OAGG;gBACS,YAAY,EAAE,QAAQ;IAKlC;;;OAGG;IACa,UAAU,IAAI,OAAO;IAIrC;;;;;OAKG;IACI,cAAc,IAAI,QAAQ;IAK1B,gBAAgB,IAAI,MAAM;IAKjC;;;OAGG;IACa,KAAK,IAAI,gBAAgB;IAKzC;;;OAGG;IACH,OAAO,CAAC,UAAU;CAsBnB"}
1
+ {"version":3,"file":"ResolvedNode.d.ts","sourceRoot":"","sources":["../../../src/lib/model/ResolvedNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIlC;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C;;;OAGG;gBACS,YAAY,EAAE,QAAQ;IAKlC;;;OAGG;IACa,UAAU,IAAI,OAAO;IAIrC;;;;;OAKG;IACI,cAAc,IAAI,QAAQ;IAK1B,gBAAgB,IAAI,MAAM;IAKjC;;;OAGG;IACa,KAAK,IAAI,gBAAgB;IAKzC;;;;OAIG;IACa,YAAY,IAAI,gBAAgB;IAKhD;;;OAGG;IACH,OAAO,CAAC,UAAU;CAsBnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blue-labs/language",
3
- "version": "3.4.1",
3
+ "version": "3.4.3",
4
4
  "dependencies": {
5
5
  "@blue-labs/repository-contract": "*",
6
6
  "@blue-labs/shared-utils": "*",