@datagrok-libraries/bio 5.27.0 → 5.27.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/.eslintrc.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "env": {
3
3
  "browser": true,
4
- "es2021": true
4
+ "es2022": true
5
5
  },
6
6
  "extends": [
7
7
  "google"
package/package.json CHANGED
@@ -1,10 +1,14 @@
1
1
  {
2
2
  "name": "@datagrok-libraries/bio",
3
+ "author": {
4
+ "name": "Aleksandr Tanas",
5
+ "email": "atanas@datagrok.ai"
6
+ },
3
7
  "publishConfig": {
4
8
  "access": "public"
5
9
  },
6
10
  "friendlyName": "Datagrok bio library",
7
- "version": "5.27.0",
11
+ "version": "5.27.1",
8
12
  "description": "",
9
13
  "dependencies": {
10
14
  "@datagrok-libraries/gridext": "^1.3.22",
@@ -30,7 +34,7 @@
30
34
  "link": "npm link",
31
35
  "link-api": "npm link datagrok-api",
32
36
  "link-utils": "npm link @datagrok-libraries/utils",
33
- "link-all": "npm link datagrok-api @datagrok-libraries/utils",
37
+ "link-all": "npm link datagrok-api @datagrok-libraries/utils @datagrok-libraries/gridext",
34
38
  "build-bio": "tsc",
35
39
  "build": "tsc",
36
40
  "lint": "eslint \"./src/**/*.ts\"",
@@ -5,14 +5,18 @@ export declare class DistanceMatrix {
5
5
  get data(): Float32Array;
6
6
  get size(): number;
7
7
  /**
8
- * @param {Float64Array} data Distance data
9
- * @param {number} m Number of original observations
8
+ * @param {Float32Array} data Distance data
9
+ * @param {number} size Number of original observations
10
10
  */
11
11
  constructor(data?: Float32Array, size?: number);
12
12
  private _linearizeIJ;
13
13
  get(i: number, j: number): number;
14
14
  set(i: number, j: number, value: number): void;
15
15
  static calc<TObj>(list: Indexable<TObj>, method: (a: TObj, b: TObj) => number): DistanceMatrix;
16
+ square(): void;
17
+ add(other: DistanceMatrix): void;
18
+ sqrt(): void;
19
+ normalize(): void;
16
20
  }
17
21
  export interface Indexable<TObj> {
18
22
  [index: number]: TObj;
@@ -1 +1 @@
1
- {"version":3,"file":"distance-matrix.d.ts","sourceRoot":"","sources":["distance-matrix.ts"],"names":[],"mappings":"AAIA,2FAA2F;AAC3F,qBAAa,cAAc;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,IAAI,IAAI,YAAY,CAAuB;IAE/C,IAAI,IAAI,IAAI,MAAM,CAAuB;IAEzC;;;OAGG;gBACS,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM;IAqB9C,OAAO,CAAC,YAAY;IAKpB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IASxB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAIvC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,KAAK,MAAM,GAAG,cAAc;CAS/F;AAED,MAAM,WAAW,SAAS,CAAC,IAAI;IAC7B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,MAAM,IAAI,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"distance-matrix.d.ts","sourceRoot":"","sources":["distance-matrix.ts"],"names":[],"mappings":"AAIA,2FAA2F;AAC3F,qBAAa,cAAc;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,IAAI,IAAI,YAAY,CAAuB;IAE/C,IAAI,IAAI,IAAI,MAAM,CAAuB;IAEzC;;;OAGG;gBACS,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM;IAqB9C,OAAO,CAAC,YAAY;IAKpB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IASxB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAIvC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,KAAK,MAAM,GAAG,cAAc;IAWvF,MAAM;IAMN,GAAG,CAAC,KAAK,EAAE,cAAc;IAQzB,IAAI;IAMJ,SAAS;CAOjB;AAED,MAAM,WAAW,SAAS,CAAC,IAAI;IAC7B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,MAAM,IAAI,MAAM,CAAC;CACtB"}
@@ -3,8 +3,8 @@ export class DistanceMatrix {
3
3
  get data() { return this._data; }
4
4
  get size() { return this._size; }
5
5
  /**
6
- * @param {Float64Array} data Distance data
7
- * @param {number} m Number of original observations
6
+ * @param {Float32Array} data Distance data
7
+ * @param {number} size Number of original observations
8
8
  */
9
9
  constructor(data, size) {
10
10
  if (size == undefined) {
@@ -53,5 +53,30 @@ export class DistanceMatrix {
53
53
  }
54
54
  return res;
55
55
  }
56
+ // squares each value in matrix in place
57
+ square() {
58
+ for (let i = 0; i < this._data.length; i++)
59
+ this._data[i] = Math.pow(this._data[i], 2);
60
+ }
61
+ // adds another matrix to this one in place
62
+ add(other) {
63
+ if (this._size !== other._size)
64
+ throw new Error(`Matrices must have the same size. This size: ${this._size}, other size: ${other._size}`);
65
+ for (let i = 0; i < this._data.length; i++)
66
+ this._data[i] += other._data[i];
67
+ }
68
+ // square root each value in matrix in place
69
+ sqrt() {
70
+ for (let i = 0; i < this._data.length; i++)
71
+ this._data[i] = Math.sqrt(this._data[i]);
72
+ }
73
+ //normilze distance matrix in place
74
+ normalize() {
75
+ const max = Math.max(...this._data);
76
+ const min = Math.min(...this._data);
77
+ const range = max - min;
78
+ for (let i = 0; i < this._data.length; i++)
79
+ this._data[i] = range === 0 ? this._data[i] - min : (this._data[i] - min) / (max - min);
80
+ }
56
81
  }
57
82
  //# sourceMappingURL=distance-matrix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"distance-matrix.js","sourceRoot":"","sources":["distance-matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"distance-matrix.js","sourceRoot":"","sources":["distance-matrix.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,19 @@ export declare enum TreeColorNames {
29
29
  MouseOver = "MouseOver",
30
30
  Selection = "Selection"
31
31
  }
32
+ export declare enum DistanceMetric {
33
+ Euclidean = "euclidean",
34
+ Manhattan = "manhattan"
35
+ }
36
+ export declare enum LinkageMethod {
37
+ Single = "single",
38
+ Complete = "complete",
39
+ Average = "average",
40
+ Weighted = "weighted",
41
+ Centroid = "centroid",
42
+ Median = "median",
43
+ Ward = "ward"
44
+ }
32
45
  export declare const TreeDefaultPalette: {
33
46
  [name: string]: number;
34
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAIA,kHAAkH;AAClH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,YAAY,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;AAE1D,oBAAY,IAAI;IACd,MAAM,YAAY;IAClB,WAAW,iBAAiB;IAC5B,OAAO,oBAAoB;IAC3B,oBAAoB,sBAAsB;CAC3C;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,WAEpC;AAED,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAMxD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAIA,kHAAkH;AAClH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,YAAY,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;AAE1D,oBAAY,IAAI;IACd,MAAM,YAAY;IAClB,WAAW,iBAAiB;IAC5B,OAAO,oBAAoB;IAC3B,oBAAoB,sBAAsB;CAC3C;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,WAEpC;AAED,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,oBAAY,cAAc;IACxB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAGD,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAMxD,CAAC"}
@@ -17,6 +17,21 @@ export var TreeColorNames;
17
17
  TreeColorNames["MouseOver"] = "MouseOver";
18
18
  TreeColorNames["Selection"] = "Selection";
19
19
  })(TreeColorNames || (TreeColorNames = {}));
20
+ export var DistanceMetric;
21
+ (function (DistanceMetric) {
22
+ DistanceMetric["Euclidean"] = "euclidean";
23
+ DistanceMetric["Manhattan"] = "manhattan";
24
+ })(DistanceMetric || (DistanceMetric = {}));
25
+ export var LinkageMethod;
26
+ (function (LinkageMethod) {
27
+ LinkageMethod["Single"] = "single";
28
+ LinkageMethod["Complete"] = "complete";
29
+ LinkageMethod["Average"] = "average";
30
+ LinkageMethod["Weighted"] = "weighted";
31
+ LinkageMethod["Centroid"] = "centroid";
32
+ LinkageMethod["Median"] = "median";
33
+ LinkageMethod["Ward"] = "ward";
34
+ })(LinkageMethod || (LinkageMethod = {}));
20
35
  export const TreeDefaultPalette = {
21
36
  [TreeColorNames.Main]: DG.Color.categoricalPalette[12],
22
37
  [TreeColorNames.Light]: DG.Color.categoricalPalette[13],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAkBtC,MAAM,CAAN,IAAY,IAKX;AALD,WAAY,IAAI;IACd,0BAAkB,CAAA;IAClB,oCAA4B,CAAA;IAC5B,mCAA2B,CAAA;IAC3B,kDAA0C,CAAA;AAC5C,CAAC,EALW,IAAI,KAAJ,IAAI,QAKf;AAED,MAAM,UAAU,MAAM,CAAC,IAAc;IACnC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,iCAAe,CAAA;IACf,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;IACvB,yCAAuB,CAAA;AACzB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACtD,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACvD,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAC7C,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa;IAClD,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY;CAClD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAkBtC,MAAM,CAAN,IAAY,IAKX;AALD,WAAY,IAAI;IACd,0BAAkB,CAAA;IAClB,oCAA4B,CAAA;IAC5B,mCAA2B,CAAA;IAC3B,kDAA0C,CAAA;AAC5C,CAAC,EALW,IAAI,KAAJ,IAAI,QAKf;AAED,MAAM,UAAU,MAAM,CAAC,IAAc;IACnC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,iCAAe,CAAA;IACf,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;IACvB,yCAAuB,CAAA;AACzB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,yCAAuB,CAAA;IACvB,yCAAuB,CAAA;AACzB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;IACrB,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,8BAAa,CAAA;AACf,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB;AAGD,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACtD,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;IACvD,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAC7C,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa;IAClD,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY;CAClD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import * as DG from 'datagrok-api/dg';
2
- import { NodeCuttedType, NodeType } from './index';
2
+ import { DistanceMetric, NodeCuttedType, NodeType } from './index';
3
3
  import { DistanceMatrix } from './distance-matrix';
4
4
  export interface ITreeHelper {
5
5
  /** Generates data frame with row per node, parent relation, distance, annotation
@@ -43,6 +43,7 @@ export interface ITreeHelper {
43
43
  generateTree(size: number): NodeType;
44
44
  hierarchicalClustering(df: DG.DataFrame, distance: string, linkage: string): Promise<NodeType>;
45
45
  hierarchicalClusteringByDistance(distance: DistanceMatrix, linkage: string): Promise<NodeType>;
46
+ calcDistanceMatrix(df: DG.DataFrame, colNames: string[], distanceMetric?: DistanceMetric): Promise<DistanceMatrix | null>;
46
47
  }
47
48
  export declare function getTreeHelper(): Promise<ITreeHelper>;
48
49
  //# sourceMappingURL=tree-helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-helper.d.ts","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,cAAc,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACjD,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC;IAE5E,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;IAExC,WAAW,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEjE,WAAW,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEjE;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,QAAQ,GAAG,IAAI,CAAC;IAE5F;;OAEG;IACH,gBAAgB,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,KAAK,EAAE,CAAC;IAEvG,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAE9F,aAAa,CACX,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IAE3G;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAE/F,YAAY,CAAC,IAAI,EAAE,cAAc,EAC/B,MAAM,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAE5F;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjH;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,EACnE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAE/D,kFAAkF;IAClF,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IAErC,sBAAsB,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE/F,gCAAgC,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAChG;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,CAO1D"}
1
+ {"version":3,"file":"tree-helper.d.ts","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tree-helper.js","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AA8DtC,MAAM,UAAgB,aAAa;;QACjC,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAC,CAAC,CAAC;QAC9E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAElF,MAAM,GAAG,GAAgB,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAiB,CAAC;QACnG,OAAO,GAAG,CAAC;IACb,CAAC;CAAA"}
1
+ {"version":3,"file":"tree-helper.js","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAiEtC,MAAM,UAAgB,aAAa;;QACjC,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAC,CAAC,CAAC;QAC9E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAElF,MAAM,GAAG,GAAgB,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAiB,CAAC;QACnG,OAAO,GAAG,CAAC;IACb,CAAC;CAAA"}
package/tsconfig.json CHANGED
@@ -6,7 +6,7 @@
6
6
  // "incremental": true, /* Enable incremental compilation */
7
7
  "target": "es6", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
8
8
  "module": "es2020", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
9
- "lib": ["ES2021", "dom"], /* Specify library files to be included in the compilation. */
9
+ "lib": ["ES2022", "dom"], /* Specify library files to be included in the compilation. */
10
10
  // "allowJs": true, /* Allow javascript files to be compiled. */
11
11
  // "checkJs": true, /* Report errors in .js files. */
12
12
  // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */