treenode.ts 0.5.0 → 0.6.0
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/dist/TreeNode.d.ts +4 -0
- package/dist/TreeNode.d.ts.map +1 -1
- package/dist/TreeNode.js +71 -0
- package/dist/TreeNode.js.map +1 -1
- package/package.json +1 -1
- package/dist/treenode.ts.d.ts +0 -96
- package/dist/tsdoc-metadata.json +0 -11
package/dist/TreeNode.d.ts
CHANGED
|
@@ -61,6 +61,10 @@ export declare class TreeNode<T> {
|
|
|
61
61
|
* Iterates over a node's children and returns a new root node.
|
|
62
62
|
*/
|
|
63
63
|
map<U>(callback: (node: TreeNode<T>) => U): TreeNode<U>;
|
|
64
|
+
/**
|
|
65
|
+
* Iterates over a node's children and returns a new root node.
|
|
66
|
+
*/
|
|
67
|
+
mapAsync<U>(callback: (node: TreeNode<T>, parent?: TreeNode<U>) => Promise<U>, parent?: TreeNode<U>): Promise<TreeNode<U>>;
|
|
64
68
|
/**
|
|
65
69
|
* Breadth-first search, return true in the callback to end iteration.
|
|
66
70
|
*/
|
package/dist/TreeNode.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeNode.d.ts","sourceRoot":"","sources":["../src/TreeNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;;GAGG;AACH,oBAAY,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,IAAI,CAAC;AAEtE;;;GAGG;AACH,oBAAY,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;AAExD;;GAEG;AACH,qBAAa,QAAQ,CAAC,CAAC;IAEZ,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAC1B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAFvB,KAAK,EAAE,CAAC,EACR,MAAM,GAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAW,EACjC,QAAQ,GAAE,QAAQ,CAAC,CAAC,CAAC,EAAO;IAGrC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAMjD;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAGlB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,EAAE,CAGtB;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAMpC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAI/B;;OAEG;IACH,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC;IASnB;;OAEG;IACH,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC;IAUpB;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"TreeNode.d.ts","sourceRoot":"","sources":["../src/TreeNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;;GAGG;AACH,oBAAY,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,IAAI,CAAC;AAEtE;;;GAGG;AACH,oBAAY,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;AAExD;;GAEG;AACH,qBAAa,QAAQ,CAAC,CAAC;IAEZ,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAC1B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAFvB,KAAK,EAAE,CAAC,EACR,MAAM,GAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAW,EACjC,QAAQ,GAAE,QAAQ,CAAC,CAAC,CAAC,EAAO;IAGrC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAMjD;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAGlB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,EAAE,CAGtB;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAMpC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAI/B;;OAEG;IACH,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC;IASnB;;OAEG;IACH,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC;IAUpB;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAU5C;;OAEG;IACH,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE;IAUrB;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IAUvD;;OAEG;IACG,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAUhI;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAcxD;;OAEG;IACH,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAWpD;;OAEG;IACH,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAWrD;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE;IAQ9C;;OAEG;IACH,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC;CAM1B"}
|
package/dist/TreeNode.js
CHANGED
|
@@ -1,4 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
2
38
|
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
3
39
|
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
|
|
4
40
|
to[j] = from[i];
|
|
@@ -100,6 +136,7 @@ var TreeNode = /** @class */ (function () {
|
|
|
100
136
|
* Returns a node given a list of indices
|
|
101
137
|
*/
|
|
102
138
|
TreeNode.prototype.fetch = function (indices) {
|
|
139
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
103
140
|
var node = this;
|
|
104
141
|
for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {
|
|
105
142
|
var i = indices_1[_i];
|
|
@@ -134,6 +171,40 @@ var TreeNode = /** @class */ (function () {
|
|
|
134
171
|
});
|
|
135
172
|
return node;
|
|
136
173
|
};
|
|
174
|
+
/**
|
|
175
|
+
* Iterates over a node's children and returns a new root node.
|
|
176
|
+
*/
|
|
177
|
+
TreeNode.prototype.mapAsync = function (callback, parent) {
|
|
178
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
179
|
+
var node, _a, _b;
|
|
180
|
+
var _this = this;
|
|
181
|
+
return __generator(this, function (_c) {
|
|
182
|
+
switch (_c.label) {
|
|
183
|
+
case 0:
|
|
184
|
+
_a = TreeNode.bind;
|
|
185
|
+
return [4 /*yield*/, callback(this, parent)];
|
|
186
|
+
case 1:
|
|
187
|
+
node = new (_a.apply(TreeNode, [void 0, _c.sent()]))();
|
|
188
|
+
_b = node;
|
|
189
|
+
return [4 /*yield*/, Promise.all(this.children.map(function (child) { return __awaiter(_this, void 0, void 0, function () {
|
|
190
|
+
var newChild;
|
|
191
|
+
return __generator(this, function (_a) {
|
|
192
|
+
switch (_a.label) {
|
|
193
|
+
case 0: return [4 /*yield*/, child.mapAsync(callback, node)];
|
|
194
|
+
case 1:
|
|
195
|
+
newChild = _a.sent();
|
|
196
|
+
newChild.parent = node;
|
|
197
|
+
return [2 /*return*/, newChild];
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
}); }))];
|
|
201
|
+
case 2:
|
|
202
|
+
_b.children = _c.sent();
|
|
203
|
+
return [2 /*return*/, node];
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
});
|
|
207
|
+
};
|
|
137
208
|
/**
|
|
138
209
|
* Breadth-first search, return true in the callback to end iteration.
|
|
139
210
|
*/
|
package/dist/TreeNode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeNode.js","sourceRoot":"","sources":["../src/TreeNode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TreeNode.js","sourceRoot":"","sources":["../src/TreeNode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA;;GAEG;AACH;IACE,kBACS,KAAQ,EACR,MAAiC,EACjC,QAA4B;QAD5B,uBAAA,EAAA,aAAiC;QACjC,yBAAA,EAAA,aAA4B;QAF5B,UAAK,GAAL,KAAK,CAAG;QACR,WAAM,GAAN,MAAM,CAA2B;QACjC,aAAQ,GAAR,QAAQ,CAAoB;IAClC,CAAC;IAEJ;;OAEG;IACI,cAAK,GAAZ,UAAgB,IAAmB;QACjC,IAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAC,KAAK,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAA/B,CAA+B,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IAKD,sBAAI,2BAAK;QAHT;;WAEG;aACH;YACE,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;;;OAAA;IAKD,sBAAI,6BAAO;QAHX;;WAEG;aACH;YACE,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC,CAAC,OAAO;YACpC,uCAAW,IAAI,CAAC,MAAM,CAAC,OAAO,IAAE,IAAI,CAAC,KAAK,GAAE;QAC9C,CAAC;;;OAAA;IAKD,sBAAI,iCAAW;QAHf;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,CAAC;;;OAAA;IAED;;OAEG;IACH,sBAAG,GAAH,UAAI,KAAkB;QACpB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,2BAAQ,GAAR,UAAS,KAAQ;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAI,KAAK,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,uBAAI,GAAJ;QACE,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACxB,IAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACpB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,wBAAK,GAAL;QACE,IAAM,IAAI,GAAG,IAAI,QAAQ,CAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK;YACtC,IAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;YACvB,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,wBAAK,GAAL,UAAM,OAAiB;QACrB,4DAA4D;QAC5D,IAAI,IAAI,GAAgB,IAAI,CAAC;QAC7B,KAAgB,UAAO,EAAP,mBAAO,EAAP,qBAAO,EAAP,IAAO,EAAE;YAApB,IAAM,CAAC,gBAAA;YACV,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;SACxB;QACD,OAAO,IAAI,IAAI,IAAI,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,uBAAI,GAAJ;QACE,IAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,IAAM,SAAS,GAAG,UAAC,IAAiB;YAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACnB,IAAI,IAAI,CAAC,MAAM;gBAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,sBAAG,GAAH,UAAO,QAAkC;QACvC,IAAM,IAAI,GAAG,IAAI,QAAQ,CAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK;YACtC,IAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;YACvB,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACG,2BAAQ,GAAd,UAAkB,QAAiE,EAAE,MAAoB;;;;;;;6BACtF,QAAQ;wBAAI,qBAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAA;;wBAAnD,IAAI,GAAG,cAAI,QAAQ,WAAI,SAA4B,KAAC;wBAC1D,KAAA,IAAI,CAAA;wBAAY,qBAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAO,KAAK;;;;gDAC7C,qBAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;4CAA/C,QAAQ,GAAG,SAAoC;4CACrD,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;4CACvB,sBAAO,QAAQ,EAAC;;;iCACjB,CAAC,CAAC,EAAA;;wBAJH,GAAK,QAAQ,GAAG,SAIb,CAAC;wBACJ,sBAAO,IAAI,EAAC;;;;KACb;IAED;;OAEG;IACH,0BAAO,GAAP,UAAQ,QAA2B;QACjC,IAAM,KAAK,GAAkB,CAAC,IAAI,CAAC,CAAC;QAEpC,OAAO,KAAK,CAAC,MAAM,EAAE;YACnB,IAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAiB,CAAC;YAC1C,IAAI,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;gBACtE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAC9B;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,sBAAG,GAAH,UAAI,QAA2B;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACtE,IAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;SACvB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,uBAAI,GAAJ,UAAK,QAA2B;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACtE,IAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;SACvB;QAED,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,0BAAO,GAAP,UAAQ,MAAsB;QAC5B,IAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAC,IAAI;YAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,2BAAQ,GAAR;QACE,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAE,EAAhB,CAAgB,CAAC;SACzD,CAAC;IACJ,CAAC;IACH,eAAC;AAAD,CAAC,AArMD,IAqMC;AArMY,4BAAQ"}
|
package/package.json
CHANGED
package/dist/treenode.ts.d.ts
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* @public
|
|
4
|
-
*/
|
|
5
|
-
export declare interface IParseable<T> {
|
|
6
|
-
model: T;
|
|
7
|
-
children: IParseable<T>[];
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Search callback passed to `.pre`, `.post`, and `.breadth`.
|
|
12
|
-
* @public
|
|
13
|
-
*/
|
|
14
|
-
export declare type SearchCallback<T> = (node: TreeNode<T>) => boolean | void;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Search methods on TreeNode, passed to `.flatten`.
|
|
18
|
-
* @public
|
|
19
|
-
*/
|
|
20
|
-
export declare type SearchStrategy = "pre" | "post" | "breadth";
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @public
|
|
24
|
-
*/
|
|
25
|
-
export declare class TreeNode<T> {
|
|
26
|
-
model: T;
|
|
27
|
-
parent: TreeNode<T> | null;
|
|
28
|
-
children: TreeNode<T>[];
|
|
29
|
-
constructor(model: T, parent?: TreeNode<T> | null, children?: TreeNode<T>[]);
|
|
30
|
-
/**
|
|
31
|
-
* Parses object into a tree and returns the root node.
|
|
32
|
-
*/
|
|
33
|
-
static parse<T>(tree: IParseable<T>): TreeNode<T>;
|
|
34
|
-
/**
|
|
35
|
-
* Index of the node among its siblings.
|
|
36
|
-
*/
|
|
37
|
-
get index(): number;
|
|
38
|
-
/**
|
|
39
|
-
* Indices from the root to the node.
|
|
40
|
-
*/
|
|
41
|
-
get indices(): number[];
|
|
42
|
-
/**
|
|
43
|
-
* Returns true if the node has children.
|
|
44
|
-
*/
|
|
45
|
-
get hasChildren(): boolean;
|
|
46
|
-
/**
|
|
47
|
-
* Add node as a child.
|
|
48
|
-
*/
|
|
49
|
-
add(child: TreeNode<T>): TreeNode<T>;
|
|
50
|
-
/**
|
|
51
|
-
* Add model as a child.
|
|
52
|
-
*/
|
|
53
|
-
addModel(model: T): TreeNode<T>;
|
|
54
|
-
/**
|
|
55
|
-
* Remove current node and its children from the tree and return.
|
|
56
|
-
*/
|
|
57
|
-
drop(): TreeNode<T>;
|
|
58
|
-
/**
|
|
59
|
-
* Returns a shallow-copy.
|
|
60
|
-
*/
|
|
61
|
-
clone(): TreeNode<T>;
|
|
62
|
-
/**
|
|
63
|
-
* Returns a node given a list of indices
|
|
64
|
-
*/
|
|
65
|
-
fetch(indices: number[]): TreeNode<T> | null;
|
|
66
|
-
/**
|
|
67
|
-
* Returns list of nodes to the root.
|
|
68
|
-
*/
|
|
69
|
-
path(): TreeNode<T>[];
|
|
70
|
-
/**
|
|
71
|
-
* Iterates over a node's children and returns a new root node.
|
|
72
|
-
*/
|
|
73
|
-
map<U>(callback: (node: TreeNode<T>) => U): TreeNode<U>;
|
|
74
|
-
/**
|
|
75
|
-
* Breadth-first search, return true in the callback to end iteration.
|
|
76
|
-
*/
|
|
77
|
-
breadth(callback: SearchCallback<T>): TreeNode<T> | null;
|
|
78
|
-
/**
|
|
79
|
-
* Depth-first pre-order search, return true in the callback to end iteration.
|
|
80
|
-
*/
|
|
81
|
-
pre(callback: SearchCallback<T>): TreeNode<T> | null;
|
|
82
|
-
/**
|
|
83
|
-
* Depth-first post-order search, return true in the callback to end iteration.
|
|
84
|
-
*/
|
|
85
|
-
post(callback: SearchCallback<T>): TreeNode<T> | null;
|
|
86
|
-
/**
|
|
87
|
-
* Returns a list of nodes.
|
|
88
|
-
*/
|
|
89
|
-
flatten(method: SearchStrategy): TreeNode<T>[];
|
|
90
|
-
/**
|
|
91
|
-
* Returns an object representation of the tree.
|
|
92
|
-
*/
|
|
93
|
-
toObject(): IParseable<T>;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
export { }
|
package/dist/tsdoc-metadata.json
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
|
2
|
-
// It should be published with your NPM package. It should not be tracked by Git.
|
|
3
|
-
{
|
|
4
|
-
"tsdocVersion": "0.12",
|
|
5
|
-
"toolPackages": [
|
|
6
|
-
{
|
|
7
|
-
"packageName": "@microsoft/api-extractor",
|
|
8
|
-
"packageVersion": "7.15.1"
|
|
9
|
-
}
|
|
10
|
-
]
|
|
11
|
-
}
|