occam-languages 2.2.48 → 2.2.50
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/lib/context.js +21 -5
- package/lib/element.js +3 -2
- package/package.json +1 -1
- package/src/context.js +30 -6
- package/src/element.js +3 -1
package/lib/context.js
CHANGED
|
@@ -8,7 +8,9 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return Context;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
+
const _necessary = require("necessary");
|
|
11
12
|
const _constants = require("./constants");
|
|
13
|
+
const { isBoolean } = _necessary.jsonUtilities;
|
|
12
14
|
class Context {
|
|
13
15
|
constructor(context){
|
|
14
16
|
this.context = context;
|
|
@@ -16,15 +18,29 @@ class Context {
|
|
|
16
18
|
getContext() {
|
|
17
19
|
return this.context;
|
|
18
20
|
}
|
|
19
|
-
commit() {
|
|
20
|
-
const context = this; ///
|
|
21
|
-
return context;
|
|
22
|
-
}
|
|
23
21
|
getDepth() {
|
|
24
22
|
let depth = this.context.getDepth();
|
|
25
23
|
depth++;
|
|
26
24
|
return depth;
|
|
27
25
|
}
|
|
26
|
+
commit(context, recursive = false) {
|
|
27
|
+
const contextBoolean = isBoolean(context);
|
|
28
|
+
if (contextBoolean) {
|
|
29
|
+
recursive = context; ///
|
|
30
|
+
context = undefined;
|
|
31
|
+
}
|
|
32
|
+
if (context === undefined) {
|
|
33
|
+
context = this.context;
|
|
34
|
+
}
|
|
35
|
+
this.merge(context);
|
|
36
|
+
if (recursive) {
|
|
37
|
+
context = context.commit(recursive);
|
|
38
|
+
}
|
|
39
|
+
return context;
|
|
40
|
+
}
|
|
41
|
+
merge(context) {
|
|
42
|
+
///
|
|
43
|
+
}
|
|
28
44
|
isReleased() {
|
|
29
45
|
return this.context.isReleased();
|
|
30
46
|
}
|
|
@@ -76,4 +92,4 @@ class Context {
|
|
|
76
92
|
}
|
|
77
93
|
}
|
|
78
94
|
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBqc29uVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgeyBET1VCTEVfU1BBQ0UsIFRSQUNFX0xFVkVMLCBERUJVR19MRVZFTCwgSU5GT19MRVZFTCwgRVJST1JfTEVWRUwsIFdBUk5JTkdfTEVWRUwgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuY29uc3QgeyBpc0Jvb2xlYW4gfSA9IGpzb25VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0KSB7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgfVxuXG4gIGdldENvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dDtcbiAgfVxuXG4gIGdldERlcHRoKCkge1xuICAgIGxldCBkZXB0aCA9IHRoaXMuY29udGV4dC5nZXREZXB0aCgpO1xuXG4gICAgZGVwdGgrKztcblxuICAgIHJldHVybiBkZXB0aDtcbiAgfVxuXG4gIGNvbW1pdChjb250ZXh0LCByZWN1cnNpdmUgPSBmYWxzZSkge1xuICAgIGNvbnN0IGNvbnRleHRCb29sZWFuID0gaXNCb29sZWFuKGNvbnRleHQpO1xuXG4gICAgaWYgKGNvbnRleHRCb29sZWFuKSB7XG4gICAgICByZWN1cnNpdmUgPSBjb250ZXh0OyAgLy8vXG5cbiAgICAgIGNvbnRleHQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29udGV4dCA9IHRoaXMuY29udGV4dDtcbiAgICB9XG5cbiAgICB0aGlzLm1lcmdlKGNvbnRleHQpO1xuXG4gICAgaWYgKHJlY3Vyc2l2ZSkge1xuICAgICAgY29udGV4dCA9IGNvbnRleHQuY29tbWl0KHJlY3Vyc2l2ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbnRleHQ7XG4gIH1cblxuICBtZXJnZShjb250ZXh0KSB7XG4gICAgLy8vXG4gIH1cblxuICBpc1JlbGVhc2VkKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmlzUmVsZWFzZWQoKTsgfVxuXG4gIGlzVW5yZWxlYXNlZCgpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5pc1VucmVsZWFzZWQoKTsgfVxuXG4gIGdldFJlbGVhc2VDb250ZXh0KCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFJlbGVhc2VDb250ZXh0KCk7IH1cblxuICBub2Rlc0FzU3RyaW5nKG5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5ub2Rlc0FzU3RyaW5nKG5vZGUpOyB9XG5cbiAgbm9kZUFzU3RyaW5nKG5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSk7IH1cblxuICB0cmFjZShtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBUUkFDRV9MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICBkZWJ1ZyhtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBERUJVR19MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICBpbmZvKG1lc3NhZ2UpIHtcbiAgICBjb25zdCBsZXZlbCA9IElORk9fTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgd2FybmluZyhtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBXQVJOSU5HX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2UpIHtcbiAgICBjb25zdCBsZXZlbCA9IEVSUk9SX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKTtcbiAgfVxuXG4gIHdyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpIHtcbiAgICBjb25zdCBkZXB0aCA9IHRoaXMuZ2V0RGVwdGgoKSxcbiAgICAgICAgICBpbmRlbnQgPSBET1VCTEVfU1BBQ0UucmVwZWF0KGRlcHRoKTtcblxuICAgIG1lc3NhZ2UgPSBgJHtpbmRlbnR9JHttZXNzYWdlfWA7ICAvLy9cblxuICAgIGNvbnN0IHJlbGVhc2VDb250ZXh0ID0gdGhpcy5nZXRSZWxlYXNlQ29udGV4dCgpO1xuXG4gICAgcmVsZWFzZUNvbnRleHQud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICBicmVhayhub2RlLCBicmVha1BvaW50LCBjb250aW51bmF0aW9uKSB7IHJldHVybiB0aGlzLmNvbnRleHQuYnJlYWsobm9kZSwgYnJlYWtQb2ludCwgY29udGludW5hdGlvbik7IH1cblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoQ2xhc3MsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBjb250ZXh0ID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpO1xuXG4gICAgY29udGV4dCA9IG5ldyBDbGFzcyhjb250ZXh0LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpOyAgLy8vXG5cbiAgICByZXR1cm4gY29udGV4dDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbnRleHQiLCJpc0Jvb2xlYW4iLCJqc29uVXRpbGl0aWVzIiwiY29udGV4dCIsImdldENvbnRleHQiLCJnZXREZXB0aCIsImRlcHRoIiwiY29tbWl0IiwicmVjdXJzaXZlIiwiY29udGV4dEJvb2xlYW4iLCJ1bmRlZmluZWQiLCJtZXJnZSIsImlzUmVsZWFzZWQiLCJpc1VucmVsZWFzZWQiLCJnZXRSZWxlYXNlQ29udGV4dCIsIm5vZGVzQXNTdHJpbmciLCJub2RlIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwibGV2ZWwiLCJUUkFDRV9MRVZFTCIsIndyaXRlVG9Mb2ciLCJkZWJ1ZyIsIkRFQlVHX0xFVkVMIiwiaW5mbyIsIklORk9fTEVWRUwiLCJ3YXJuaW5nIiwiV0FSTklOR19MRVZFTCIsImVycm9yIiwiRVJST1JfTEVWRUwiLCJpbmRlbnQiLCJET1VCTEVfU1BBQ0UiLCJyZXBlYXQiLCJyZWxlYXNlQ29udGV4dCIsImJyZWFrIiwiYnJlYWtQb2ludCIsImNvbnRpbnVuYXRpb24iLCJmcm9tTm90aGluZyIsIkNsYXNzIiwicmVtYWluaW5nQXJndW1lbnRzIiwicG9wIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXFCQTs7OzJCQU5TOzJCQUVpRTtBQUUvRixNQUFNLEVBQUVDLFNBQVMsRUFBRSxHQUFHQyx3QkFBYTtBQUVwQixNQUFNRjtJQUNuQixZQUFZRyxPQUFPLENBQUU7UUFDbkIsSUFBSSxDQUFDQSxPQUFPLEdBQUdBO0lBQ2pCO0lBRUFDLGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQ0QsT0FBTztJQUNyQjtJQUVBRSxXQUFXO1FBQ1QsSUFBSUMsUUFBUSxJQUFJLENBQUNILE9BQU8sQ0FBQ0UsUUFBUTtRQUVqQ0M7UUFFQSxPQUFPQTtJQUNUO0lBRUFDLE9BQU9KLE9BQU8sRUFBRUssWUFBWSxLQUFLLEVBQUU7UUFDakMsTUFBTUMsaUJBQWlCUixVQUFVRTtRQUVqQyxJQUFJTSxnQkFBZ0I7WUFDbEJELFlBQVlMLFNBQVUsR0FBRztZQUV6QkEsVUFBVU87UUFDWjtRQUVBLElBQUlQLFlBQVlPLFdBQVc7WUFDekJQLFVBQVUsSUFBSSxDQUFDQSxPQUFPO1FBQ3hCO1FBRUEsSUFBSSxDQUFDUSxLQUFLLENBQUNSO1FBRVgsSUFBSUssV0FBVztZQUNiTCxVQUFVQSxRQUFRSSxNQUFNLENBQUNDO1FBQzNCO1FBRUEsT0FBT0w7SUFDVDtJQUVBUSxNQUFNUixPQUFPLEVBQUU7SUFDYixHQUFHO0lBQ0w7SUFFQVMsYUFBYTtRQUFFLE9BQU8sSUFBSSxDQUFDVCxPQUFPLENBQUNTLFVBQVU7SUFBSTtJQUVqREMsZUFBZTtRQUFFLE9BQU8sSUFBSSxDQUFDVixPQUFPLENBQUNVLFlBQVk7SUFBSTtJQUVyREMsb0JBQW9CO1FBQUUsT0FBTyxJQUFJLENBQUNYLE9BQU8sQ0FBQ1csaUJBQWlCO0lBQUk7SUFFL0RDLGNBQWNDLElBQUksRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDYixPQUFPLENBQUNZLGFBQWEsQ0FBQ0M7SUFBTztJQUUvREMsYUFBYUQsSUFBSSxFQUFFO1FBQUUsT0FBTyxJQUFJLENBQUNiLE9BQU8sQ0FBQ2MsWUFBWSxDQUFDRDtJQUFPO0lBRTdERSxNQUFNQyxPQUFPLEVBQUU7UUFDYixNQUFNQyxRQUFRQyxzQkFBVztRQUV6QixJQUFJLENBQUNDLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQUksTUFBTUosT0FBTyxFQUFFO1FBQ2IsTUFBTUMsUUFBUUksc0JBQVc7UUFFekIsSUFBSSxDQUFDRixVQUFVLENBQUNGLE9BQU9EO0lBQ3pCO0lBRUFNLEtBQUtOLE9BQU8sRUFBRTtRQUNaLE1BQU1DLFFBQVFNLHFCQUFVO1FBRXhCLElBQUksQ0FBQ0osVUFBVSxDQUFDRixPQUFPRDtJQUN6QjtJQUVBUSxRQUFRUixPQUFPLEVBQUU7UUFDZixNQUFNQyxRQUFRUSx3QkFBYTtRQUUzQixJQUFJLENBQUNOLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQVUsTUFBTVYsT0FBTyxFQUFFO1FBQ2IsTUFBTUMsUUFBUVUsc0JBQVc7UUFFekIsSUFBSSxDQUFDUixVQUFVLENBQUNGLE9BQU9EO0lBQ3pCO0lBRUFHLFdBQVdGLEtBQUssRUFBRUQsT0FBTyxFQUFFO1FBQ3pCLE1BQU1iLFFBQVEsSUFBSSxDQUFDRCxRQUFRLElBQ3JCMEIsU0FBU0MsdUJBQVksQ0FBQ0MsTUFBTSxDQUFDM0I7UUFFbkNhLFVBQVUsR0FBR1ksU0FBU1osU0FBUyxFQUFHLEdBQUc7UUFFckMsTUFBTWUsaUJBQWlCLElBQUksQ0FBQ3BCLGlCQUFpQjtRQUU3Q29CLGVBQWVaLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDbkM7SUFFQWdCLE1BQU1uQixJQUFJLEVBQUVvQixVQUFVLEVBQUVDLGFBQWEsRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDbEMsT0FBTyxDQUFDZ0MsS0FBSyxDQUFDbkIsTUFBTW9CLFlBQVlDO0lBQWdCO0lBRXJHLE9BQU9DLFlBQVlDLEtBQUssRUFBRSxHQUFHQyxrQkFBa0IsRUFBRTtRQUMvQyxJQUFJckMsVUFBVXFDLG1CQUFtQkMsR0FBRztRQUVwQ3RDLFVBQVUsSUFBSW9DLE1BQU1wQyxZQUFZcUMscUJBQXNCLEdBQUc7UUFFekQsT0FBT3JDO0lBQ1Q7QUFDRiJ9
|
package/lib/element.js
CHANGED
|
@@ -46,7 +46,8 @@ class Element {
|
|
|
46
46
|
this.breakPoint = breakPoint;
|
|
47
47
|
}
|
|
48
48
|
commit(context) {
|
|
49
|
-
|
|
49
|
+
const recursive = true;
|
|
50
|
+
context = context.commit(recursive); ///
|
|
50
51
|
this.context = context;
|
|
51
52
|
}
|
|
52
53
|
break(context, continuation) {
|
|
@@ -60,4 +61,4 @@ class Element {
|
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lbGVtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgYnJlYWtQb2ludCBmcm9tIFwiLi91dGlsaXRpZXMvYnJlYWtQb2ludFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KSB7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMuYnJlYWtQb2ludCA9IGJyZWFrUG9pbnQ7XG4gIH1cblxuICBnZXRDb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQ7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlO1xuICB9XG5cbiAgZ2V0QnJlYWtQb2ludCgpIHtcbiAgICByZXR1cm4gdGhpcy5icmVha1BvaW50O1xuICB9XG5cbiAgc2V0Q29udGV4dChjb250ZXh0KSB7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgfVxuXG4gIHNldFN0cmluZyhzdHJpbmcpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgfVxuXG4gIHNldE5vZGUobm9kZSkge1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gIH1cblxuICBzZXRCcmVha1BvaW50KGJyZWFrUG9pbnQpIHtcbiAgICB0aGlzLmJyZWFrUG9pbnQgPSBicmVha1BvaW50O1xuICB9XG5cbiAgY29tbWl0KGNvbnRleHQpIHtcbiAgICBjb25zdCByZWN1cnNpdmUgPSB0cnVlO1xuXG4gICAgY29udGV4dCA9IGNvbnRleHQuY29tbWl0KHJlY3Vyc2l2ZSk7ICAvLy9cblxuICAgIHRoaXMuY29udGV4dCA9IGNvbnRleHQ7XG4gIH1cblxuICBicmVhayhjb250ZXh0LCBjb250aW51YXRpb24pIHtcbiAgICByZXR1cm4gY29udGV4dC5icmVhayh0aGlzLm5vZGUsIHRoaXMuYnJlYWtQb2ludCwgKGJyZWFrUG9pbnQpID0+IHtcbiAgICAgIHRoaXMuYnJlYWtQb2ludCA9IGJyZWFrUG9pbnQ7XG5cbiAgICAgIHJldHVybiBjb250aW51YXRpb24oKTtcbiAgICB9KTtcbiAgfVxuXG4gIG1hdGNoTm9kZShub2RlKSB7IHJldHVybiB0aGlzLm5vZGUubWF0Y2gobm9kZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiZ2V0Q29udGV4dCIsImdldFN0cmluZyIsImdldE5vZGUiLCJnZXRCcmVha1BvaW50Iiwic2V0Q29udGV4dCIsInNldFN0cmluZyIsInNldE5vZGUiLCJzZXRCcmVha1BvaW50IiwiY29tbWl0IiwicmVjdXJzaXZlIiwiYnJlYWsiLCJjb250aW51YXRpb24iLCJtYXRjaE5vZGUiLCJtYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUFxQkE7OzttRUFGRTs7Ozs7O0FBRVIsTUFBTUE7SUFDbkIsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxDQUFFO1FBQzdDLElBQUksQ0FBQ0gsT0FBTyxHQUFHQTtRQUNmLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsVUFBVSxHQUFHQTtJQUNwQjtJQUVBQyxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUNKLE9BQU87SUFDckI7SUFFQUssWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDSixNQUFNO0lBQ3BCO0lBRUFLLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0osSUFBSTtJQUNsQjtJQUVBSyxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0osVUFBVTtJQUN4QjtJQUVBSyxXQUFXUixPQUFPLEVBQUU7UUFDbEIsSUFBSSxDQUFDQSxPQUFPLEdBQUdBO0lBQ2pCO0lBRUFTLFVBQVVSLE1BQU0sRUFBRTtRQUNoQixJQUFJLENBQUNBLE1BQU0sR0FBR0E7SUFDaEI7SUFFQVMsUUFBUVIsSUFBSSxFQUFFO1FBQ1osSUFBSSxDQUFDQSxJQUFJLEdBQUdBO0lBQ2Q7SUFFQVMsY0FBY1IsVUFBVSxFQUFFO1FBQ3hCLElBQUksQ0FBQ0EsVUFBVSxHQUFHQTtJQUNwQjtJQUVBUyxPQUFPWixPQUFPLEVBQUU7UUFDZCxNQUFNYSxZQUFZO1FBRWxCYixVQUFVQSxRQUFRWSxNQUFNLENBQUNDLFlBQWEsR0FBRztRQUV6QyxJQUFJLENBQUNiLE9BQU8sR0FBR0E7SUFDakI7SUFFQWMsTUFBTWQsT0FBTyxFQUFFZSxZQUFZLEVBQUU7UUFDM0IsT0FBT2YsUUFBUWMsS0FBSyxDQUFDLElBQUksQ0FBQ1osSUFBSSxFQUFFLElBQUksQ0FBQ0MsVUFBVSxFQUFFLENBQUNBO1lBQ2hELElBQUksQ0FBQ0EsVUFBVSxHQUFHQTtZQUVsQixPQUFPWTtRQUNUO0lBQ0Y7SUFFQUMsVUFBVWQsSUFBSSxFQUFFO1FBQUUsT0FBTyxJQUFJLENBQUNBLElBQUksQ0FBQ2UsS0FBSyxDQUFDZjtJQUFPO0FBQ2xEIn0=
|
package/package.json
CHANGED
package/src/context.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { jsonUtilities } from "necessary";
|
|
4
|
+
|
|
3
5
|
import { DOUBLE_SPACE, TRACE_LEVEL, DEBUG_LEVEL, INFO_LEVEL, ERROR_LEVEL, WARNING_LEVEL } from "./constants";
|
|
4
6
|
|
|
7
|
+
const { isBoolean } = jsonUtilities;
|
|
8
|
+
|
|
5
9
|
export default class Context {
|
|
6
10
|
constructor(context) {
|
|
7
11
|
this.context = context;
|
|
@@ -11,12 +15,6 @@ export default class Context {
|
|
|
11
15
|
return this.context;
|
|
12
16
|
}
|
|
13
17
|
|
|
14
|
-
commit() {
|
|
15
|
-
const context = this; ///
|
|
16
|
-
|
|
17
|
-
return context;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
18
|
getDepth() {
|
|
21
19
|
let depth = this.context.getDepth();
|
|
22
20
|
|
|
@@ -25,6 +23,32 @@ export default class Context {
|
|
|
25
23
|
return depth;
|
|
26
24
|
}
|
|
27
25
|
|
|
26
|
+
commit(context, recursive = false) {
|
|
27
|
+
const contextBoolean = isBoolean(context);
|
|
28
|
+
|
|
29
|
+
if (contextBoolean) {
|
|
30
|
+
recursive = context; ///
|
|
31
|
+
|
|
32
|
+
context = undefined;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (context === undefined) {
|
|
36
|
+
context = this.context;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
this.merge(context);
|
|
40
|
+
|
|
41
|
+
if (recursive) {
|
|
42
|
+
context = context.commit(recursive);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return context;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
merge(context) {
|
|
49
|
+
///
|
|
50
|
+
}
|
|
51
|
+
|
|
28
52
|
isReleased() { return this.context.isReleased(); }
|
|
29
53
|
|
|
30
54
|
isUnreleased() { return this.context.isUnreleased(); }
|