occam-furtle 2.0.342 → 3.0.2

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.
Files changed (116) hide show
  1. package/example.js +5905 -1786
  2. package/lib/context/block.js +81 -41
  3. package/lib/context/file/furtle.js +260 -0
  4. package/lib/context/file/nominal.js +956 -0
  5. package/lib/context/file.js +146 -271
  6. package/lib/context.js +210 -0
  7. package/lib/element/assignment/array.js +116 -14
  8. package/lib/element/assignment/object.js +116 -14
  9. package/lib/element/assignment/variable.js +121 -14
  10. package/lib/element/assignments/variable.js +120 -13
  11. package/lib/element/declaration/procedure.js +120 -12
  12. package/lib/element/error.js +118 -13
  13. package/lib/element/every.js +116 -13
  14. package/lib/element/expression.js +127 -20
  15. package/lib/element/label.js +119 -12
  16. package/lib/element/nodeQuery.js +116 -14
  17. package/lib/element/nodesQuery.js +116 -14
  18. package/lib/element/parameter/named.js +117 -15
  19. package/lib/element/parameter.js +116 -14
  20. package/lib/element/parameters/named.js +116 -14
  21. package/lib/element/parameters.js +115 -13
  22. package/lib/element/primitive.js +115 -13
  23. package/lib/element/procedure/anonymous.js +118 -16
  24. package/lib/element/procedure.js +118 -16
  25. package/lib/element/procedureCall.js +116 -14
  26. package/lib/element/reduce.js +116 -14
  27. package/lib/element/reference.js +119 -12
  28. package/lib/element/returnBlock.js +116 -14
  29. package/lib/element/some.js +115 -13
  30. package/lib/element/statement/return.js +120 -13
  31. package/lib/element/step.js +121 -14
  32. package/lib/element/term/bracketed.js +120 -13
  33. package/lib/element/term/comparison.js +117 -15
  34. package/lib/element/term/logical.js +118 -16
  35. package/lib/element/term/negated.js +116 -14
  36. package/lib/element/term.js +127 -18
  37. package/lib/element/terms.js +125 -14
  38. package/lib/element/ternary.js +117 -15
  39. package/lib/element/variable.js +127 -19
  40. package/lib/element.js +1 -8
  41. package/lib/index.js +5 -5
  42. package/lib/log.js +13 -12
  43. package/lib/metaTypeNames.js +26 -0
  44. package/lib/metaTypes.js +66 -0
  45. package/lib/nodeProperties.js +17 -21
  46. package/lib/nodeProperty.js +4 -7
  47. package/lib/utilities/context.js +8 -37
  48. package/lib/utilities/customGrammar.js +49 -0
  49. package/lib/utilities/element.js +91 -37
  50. package/lib/utilities/lineIndex.js +26 -0
  51. package/lib/utilities/node.js +1 -8
  52. package/lib/utilities/primitive.js +14 -5
  53. package/lib/utilities/string.js +30 -19
  54. package/lib/utilities/term.js +14 -5
  55. package/lib/utilities/terms.js +7 -3
  56. package/package.json +2 -2
  57. package/src/context/block.js +20 -32
  58. package/src/context/file/furtle.js +141 -0
  59. package/src/context/file/nominal.js +946 -0
  60. package/src/context/file.js +32 -209
  61. package/src/context.js +74 -0
  62. package/src/element/assignment/array.js +6 -8
  63. package/src/element/assignment/object.js +6 -8
  64. package/src/element/assignment/variable.js +7 -8
  65. package/src/element/assignments/variable.js +7 -8
  66. package/src/element/declaration/procedure.js +6 -6
  67. package/src/element/error.js +4 -6
  68. package/src/element/every.js +5 -6
  69. package/src/element/expression.js +6 -7
  70. package/src/element/label.js +6 -7
  71. package/src/element/nodeQuery.js +6 -8
  72. package/src/element/nodesQuery.js +6 -8
  73. package/src/element/parameter/named.js +7 -8
  74. package/src/element/parameter.js +6 -8
  75. package/src/element/parameters/named.js +8 -9
  76. package/src/element/parameters.js +6 -8
  77. package/src/element/primitive.js +5 -7
  78. package/src/element/procedure/anonymous.js +7 -9
  79. package/src/element/procedure.js +6 -8
  80. package/src/element/procedureCall.js +6 -8
  81. package/src/element/reduce.js +5 -7
  82. package/src/element/reference.js +6 -7
  83. package/src/element/returnBlock.js +5 -7
  84. package/src/element/some.js +5 -7
  85. package/src/element/statement/return.js +7 -8
  86. package/src/element/step.js +6 -7
  87. package/src/element/term/bracketed.js +7 -8
  88. package/src/element/term/comparison.js +6 -8
  89. package/src/element/term/logical.js +6 -8
  90. package/src/element/term/negated.js +6 -8
  91. package/src/element/term.js +12 -9
  92. package/src/element/terms.js +16 -9
  93. package/src/element/ternary.js +6 -8
  94. package/src/element/variable.js +24 -14
  95. package/src/element.js +0 -8
  96. package/src/index.js +1 -1
  97. package/src/log.js +11 -11
  98. package/src/metaTypeNames.js +5 -0
  99. package/src/metaTypes.js +71 -0
  100. package/src/nodeProperties.js +23 -32
  101. package/src/nodeProperty.js +5 -10
  102. package/src/utilities/context.js +7 -45
  103. package/src/utilities/customGrammar.js +40 -0
  104. package/src/utilities/element.js +158 -64
  105. package/src/utilities/lineIndex.js +21 -0
  106. package/src/utilities/node.js +0 -5
  107. package/src/utilities/primitive.js +22 -5
  108. package/src/utilities/string.js +33 -19
  109. package/src/utilities/term.js +22 -5
  110. package/src/utilities/terms.js +12 -4
  111. package/test/context/release.js +477 -46
  112. package/test/helpers/furtle.js +1 -1
  113. package/test/helpers/nominal.js +2 -3
  114. package/test/main.js +1 -1
  115. package/test/context/file.js +0 -127
  116. package/test/helpers/constants.js +0 -17
@@ -8,15 +8,43 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
+ var _element = /*#__PURE__*/ _interop_require_default(require("../../element"));
11
12
  var _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
12
13
  var _elements = require("../../elements");
13
14
  var _types = require("../../types");
14
15
  var _term = require("../../utilities/term");
16
+ function _assert_this_initialized(self) {
17
+ if (self === void 0) {
18
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
19
+ }
20
+ return self;
21
+ }
22
+ function _call_super(_this, derived, args) {
23
+ derived = _get_prototype_of(derived);
24
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
25
+ }
15
26
  function _class_call_check(instance, Constructor) {
16
27
  if (!(instance instanceof Constructor)) {
17
28
  throw new TypeError("Cannot call a class as a function");
18
29
  }
19
30
  }
31
+ function _construct(Parent, args, Class) {
32
+ if (_is_native_reflect_construct()) {
33
+ _construct = Reflect.construct;
34
+ } else {
35
+ _construct = function construct(Parent, args, Class) {
36
+ var a = [
37
+ null
38
+ ];
39
+ a.push.apply(a, args);
40
+ var Constructor = Function.bind.apply(Parent, a);
41
+ var instance = new Constructor();
42
+ if (Class) _set_prototype_of(instance, Class.prototype);
43
+ return instance;
44
+ };
45
+ }
46
+ return _construct.apply(null, arguments);
47
+ }
20
48
  function _defineProperties(target, props) {
21
49
  for(var i = 0; i < props.length; i++){
22
50
  var descriptor = props[i];
@@ -44,26 +72,100 @@ function _define_property(obj, key, value) {
44
72
  }
45
73
  return obj;
46
74
  }
75
+ function _get_prototype_of(o) {
76
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
77
+ return o.__proto__ || Object.getPrototypeOf(o);
78
+ };
79
+ return _get_prototype_of(o);
80
+ }
81
+ function _inherits(subClass, superClass) {
82
+ if (typeof superClass !== "function" && superClass !== null) {
83
+ throw new TypeError("Super expression must either be null or a function");
84
+ }
85
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
86
+ constructor: {
87
+ value: subClass,
88
+ writable: true,
89
+ configurable: true
90
+ }
91
+ });
92
+ if (superClass) _set_prototype_of(subClass, superClass);
93
+ }
47
94
  function _interop_require_default(obj) {
48
95
  return obj && obj.__esModule ? obj : {
49
96
  default: obj
50
97
  };
51
98
  }
99
+ function _is_native_function(fn) {
100
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
101
+ }
102
+ function _possible_constructor_return(self, call) {
103
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
104
+ return call;
105
+ }
106
+ return _assert_this_initialized(self);
107
+ }
108
+ function _set_prototype_of(o, p) {
109
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
110
+ o.__proto__ = p;
111
+ return o;
112
+ };
113
+ return _set_prototype_of(o, p);
114
+ }
115
+ function _type_of(obj) {
116
+ "@swc/helpers - typeof";
117
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
118
+ }
119
+ function _wrap_native_super(Class) {
120
+ var _cache = typeof Map === "function" ? new Map() : undefined;
121
+ _wrap_native_super = function wrapNativeSuper(Class) {
122
+ if (Class === null || !_is_native_function(Class)) return Class;
123
+ if (typeof Class !== "function") {
124
+ throw new TypeError("Super expression must either be null or a function");
125
+ }
126
+ if (typeof _cache !== "undefined") {
127
+ if (_cache.has(Class)) return _cache.get(Class);
128
+ _cache.set(Class, Wrapper);
129
+ }
130
+ function Wrapper() {
131
+ return _construct(Class, arguments, _get_prototype_of(this).constructor);
132
+ }
133
+ Wrapper.prototype = Object.create(Class.prototype, {
134
+ constructor: {
135
+ value: Wrapper,
136
+ enumerable: false,
137
+ writable: true,
138
+ configurable: true
139
+ }
140
+ });
141
+ return _set_prototype_of(Wrapper, Class);
142
+ };
143
+ return _wrap_native_super(Class);
144
+ }
145
+ function _is_native_reflect_construct() {
146
+ try {
147
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
148
+ } catch (_) {}
149
+ return (_is_native_reflect_construct = function() {
150
+ return !!result;
151
+ })();
152
+ }
52
153
  var _NegatedTerm;
53
- var _default = (0, _elements.define)((_NegatedTerm = /*#__PURE__*/ function() {
54
- function NegatedTerm(string, type, term) {
154
+ var _default = (0, _elements.define)((_NegatedTerm = /*#__PURE__*/ function(Element) {
155
+ _inherits(NegatedTerm, Element);
156
+ function NegatedTerm(context, string, node, type, term) {
55
157
  _class_call_check(this, NegatedTerm);
56
- this.string = string;
57
- this.type = type;
58
- this.term = term;
158
+ var _this;
159
+ _this = _call_super(this, NegatedTerm, [
160
+ context,
161
+ string,
162
+ node
163
+ ]);
164
+ _this.type = type;
165
+ _this.term = term;
166
+ return _this;
59
167
  }
60
168
  _create_class(NegatedTerm, [
61
- {
62
- key: "getString",
63
- value: function getString() {
64
- return this.string;
65
- }
66
- },
67
169
  {
68
170
  key: "getType",
69
171
  value: function getType() {
@@ -80,7 +182,7 @@ var _default = (0, _elements.define)((_NegatedTerm = /*#__PURE__*/ function() {
80
182
  key: "evaluate",
81
183
  value: function evaluate(context) {
82
184
  var term;
83
- var negatedTermString = this.string; ///
185
+ var negatedTermString = this.getString(); ///
84
186
  context.trace("Evaluating the '".concat(negatedTermString, "' negated term..."));
85
187
  term = this.term.evaluate(context);
86
188
  var termType = term.getType();
@@ -100,6 +202,6 @@ var _default = (0, _elements.define)((_NegatedTerm = /*#__PURE__*/ function() {
100
202
  }
101
203
  ]);
102
204
  return NegatedTerm;
103
- }(), _define_property(_NegatedTerm, "name", "NegatedTerm"), _NegatedTerm));
205
+ }(_wrap_native_super(_element.default)), _define_property(_NegatedTerm, "name", "NegatedTerm"), _NegatedTerm));
104
206
 
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vbmVnYXRlZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgQk9PTEVBTl9UWVBFIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyB0ZXJtRnJvbUJvb2xlYW4gfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3Rlcm1cIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIE5lZ2F0ZWRUZXJtIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCB0eXBlLCB0ZXJtKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnRlcm0gPSB0ZXJtO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMudGVybTtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdGVybTtcblxuICAgIGNvbnN0IG5lZ2F0ZWRUZXJtU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7bmVnYXRlZFRlcm1TdHJpbmd9JyBuZWdhdGVkIHRlcm0uLi5gKTtcblxuICAgIHRlcm0gPSB0aGlzLnRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtVHlwZSA9IHRlcm0uZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHRlcm1UeXBlICE9PSBCT09MRUFOX1RZUEUpIHtcbiAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dGVybVN0cmluZ30nIGxlZnQgdGVybSdzIHR5cGUgaXMgJyR7dGVybVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBsZXQgYm9vbGVhbjtcblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGVybS5nZXRQcmltaXRpdmVWYWx1ZSgpO1xuXG4gICAgYm9vbGVhbiA9IHByaW1pdGl2ZVZhbHVlOyAvLy9cblxuICAgIGJvb2xlYW4gPSAhYm9vbGVhbjtcblxuICAgIHRlcm0gPSB0ZXJtRnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtU3RyaW5nID0gdGVybS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7bmVnYXRlZFRlcm1TdHJpbmd9JyBuZWdhdGVkIHRlcm0gYXMgJyR7dGVybVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTmVnYXRlZFRlcm1cIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIk5lZ2F0ZWRUZXJtIiwic3RyaW5nIiwidHlwZSIsInRlcm0iLCJnZXRTdHJpbmciLCJnZXRUeXBlIiwiZ2V0VGVybSIsImV2YWx1YXRlIiwiY29udGV4dCIsIm5lZ2F0ZWRUZXJtU3RyaW5nIiwidHJhY2UiLCJ0ZXJtVHlwZSIsIkJPT0xFQU5fVFlQRSIsInRlcm1TdHJpbmciLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJib29sZWFuIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRQcmltaXRpdmVWYWx1ZSIsInRlcm1Gcm9tQm9vbGVhbiIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUFBOzs7Z0VBTnNCO3dCQUVDO3FCQUNNO29CQUNHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFaEMsV0FBZUEsSUFBQUEsZ0JBQU0sZ0NBQUM7YUFBTUMsWUFDZEMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUk7Z0NBREpIO1FBRXhCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7OztZQUdkQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILE1BQU07WUFDcEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU0MsT0FBTztnQkFDZCxJQUFJTDtnQkFFSixJQUFNTSxvQkFBb0IsSUFBSSxDQUFDUixNQUFNLEVBQUUsR0FBRztnQkFFMUNPLFFBQVFFLEtBQUssQ0FBQyxBQUFDLG1CQUFvQyxPQUFsQkQsbUJBQWtCO2dCQUVuRE4sT0FBTyxJQUFJLENBQUNBLElBQUksQ0FBQ0ksUUFBUSxDQUFDQztnQkFFMUIsSUFBTUcsV0FBV1IsS0FBS0UsT0FBTztnQkFFN0IsSUFBSU0sYUFBYUMsbUJBQVksRUFBRTtvQkFDN0IsSUFBTUMsYUFBYVYsS0FBS0MsU0FBUyxJQUMzQlUsVUFBVSxBQUFDLFFBQTJDSCxPQUFwQ0UsWUFBVywyQkFBaUVELE9BQXhDRCxVQUFTLGlDQUE0QyxPQUFiQyxtQkFBWSxFQUFDLE9BQzNHRyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO29CQUV4QyxNQUFNQztnQkFDUjtnQkFFQSxJQUFJRztnQkFFSixJQUFNQyxpQkFBaUJoQixLQUFLaUIsaUJBQWlCO2dCQUU3Q0YsVUFBVUMsZ0JBQWdCLEdBQUc7Z0JBRTdCRCxVQUFVLENBQUNBO2dCQUVYZixPQUFPa0IsSUFBQUEscUJBQWUsRUFBQ0gsU0FBU1Y7Z0JBRWhDLElBQU1LLGNBQWFWLEtBQUtDLFNBQVM7Z0JBRWpDSSxRQUFRYyxLQUFLLENBQUMsQUFBQyxxQkFBMkRULE9BQXZDSixtQkFBa0IsdUJBQWdDLE9BQVhJLGFBQVc7Z0JBRXJGLE9BQU9WO1lBQ1Q7Ozs7S0FFQSwrQkFBT29CLFFBQU8ifQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vbmVnYXRlZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEVsZW1lbnQgZnJvbSBcIi4uLy4uL2VsZW1lbnRcIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IEJPT0xFQU5fVFlQRSB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHsgdGVybUZyb21Cb29sZWFuIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy90ZXJtXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBOZWdhdGVkVGVybSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIHR5cGUsIHRlcm0pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUpXG5cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMudGVybSA9IHRlcm07XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0KSB7XG4gICAgbGV0IHRlcm07XG5cbiAgICBjb25zdCBuZWdhdGVkVGVybVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7bmVnYXRlZFRlcm1TdHJpbmd9JyBuZWdhdGVkIHRlcm0uLi5gKTtcblxuICAgIHRlcm0gPSB0aGlzLnRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtVHlwZSA9IHRlcm0uZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHRlcm1UeXBlICE9PSBCT09MRUFOX1RZUEUpIHtcbiAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dGVybVN0cmluZ30nIGxlZnQgdGVybSdzIHR5cGUgaXMgJyR7dGVybVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBsZXQgYm9vbGVhbjtcblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGVybS5nZXRQcmltaXRpdmVWYWx1ZSgpO1xuXG4gICAgYm9vbGVhbiA9IHByaW1pdGl2ZVZhbHVlOyAvLy9cblxuICAgIGJvb2xlYW4gPSAhYm9vbGVhbjtcblxuICAgIHRlcm0gPSB0ZXJtRnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtU3RyaW5nID0gdGVybS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7bmVnYXRlZFRlcm1TdHJpbmd9JyBuZWdhdGVkIHRlcm0gYXMgJyR7dGVybVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTmVnYXRlZFRlcm1cIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIk5lZ2F0ZWRUZXJtIiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJ0eXBlIiwidGVybSIsImdldFR5cGUiLCJnZXRUZXJtIiwiZXZhbHVhdGUiLCJuZWdhdGVkVGVybVN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwidGVybVR5cGUiLCJCT09MRUFOX1RZUEUiLCJ0ZXJtU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiYm9vbGVhbiIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJ0ZXJtRnJvbUJvb2xlYW4iLCJkZWJ1ZyIsIkVsZW1lbnQiLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7Ozs4REFQb0I7Z0VBQ0U7d0JBRUM7cUJBQ007b0JBQ0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFaEMsV0FBZUEsSUFBQUEsZ0JBQU0sZ0NBQUM7O2FBQU1DLFlBQ2RDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUksRUFBRUMsSUFBSTtnQ0FEbkJMOztnQkFFeEIsa0JBRndCQTtZQUVsQkM7WUFBU0M7WUFBUUM7O1FBRXZCLE1BQUtDLElBQUksR0FBR0E7UUFDWixNQUFLQyxJQUFJLEdBQUdBOzs7OztZQUdkQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU1AsT0FBTztnQkFDZCxJQUFJSTtnQkFFSixJQUFNSSxvQkFBb0IsSUFBSSxDQUFDQyxTQUFTLElBQUksR0FBRztnQkFFL0NULFFBQVFVLEtBQUssQ0FBQyxBQUFDLG1CQUFvQyxPQUFsQkYsbUJBQWtCO2dCQUVuREosT0FBTyxJQUFJLENBQUNBLElBQUksQ0FBQ0csUUFBUSxDQUFDUDtnQkFFMUIsSUFBTVcsV0FBV1AsS0FBS0MsT0FBTztnQkFFN0IsSUFBSU0sYUFBYUMsbUJBQVksRUFBRTtvQkFDN0IsSUFBTUMsYUFBYVQsS0FBS0ssU0FBUyxJQUMzQkssVUFBVSxBQUFDLFFBQTJDSCxPQUFwQ0UsWUFBVywyQkFBaUVELE9BQXhDRCxVQUFTLGlDQUE0QyxPQUFiQyxtQkFBWSxFQUFDLE9BQzNHRyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO29CQUV4QyxNQUFNQztnQkFDUjtnQkFFQSxJQUFJRztnQkFFSixJQUFNQyxpQkFBaUJmLEtBQUtnQixpQkFBaUI7Z0JBRTdDRixVQUFVQyxnQkFBZ0IsR0FBRztnQkFFN0JELFVBQVUsQ0FBQ0E7Z0JBRVhkLE9BQU9pQixJQUFBQSxxQkFBZSxFQUFDSCxTQUFTbEI7Z0JBRWhDLElBQU1hLGNBQWFULEtBQUtLLFNBQVM7Z0JBRWpDVCxRQUFRc0IsS0FBSyxDQUFDLEFBQUMscUJBQTJEVCxPQUF2Q0wsbUJBQWtCLHVCQUFnQyxPQUFYSyxhQUFXO2dCQUVyRixPQUFPVDtZQUNUOzs7O3FCQWxEOENtQixnQkFBTyxJQW9EckQsK0JBQU9DLFFBQU8ifQ==
@@ -8,12 +8,40 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
+ var _element = /*#__PURE__*/ _interop_require_default(require("../element"));
11
12
  var _elements = require("../elements");
13
+ function _assert_this_initialized(self) {
14
+ if (self === void 0) {
15
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
16
+ }
17
+ return self;
18
+ }
19
+ function _call_super(_this, derived, args) {
20
+ derived = _get_prototype_of(derived);
21
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
22
+ }
12
23
  function _class_call_check(instance, Constructor) {
13
24
  if (!(instance instanceof Constructor)) {
14
25
  throw new TypeError("Cannot call a class as a function");
15
26
  }
16
27
  }
28
+ function _construct(Parent, args, Class) {
29
+ if (_is_native_reflect_construct()) {
30
+ _construct = Reflect.construct;
31
+ } else {
32
+ _construct = function construct(Parent, args, Class) {
33
+ var a = [
34
+ null
35
+ ];
36
+ a.push.apply(a, args);
37
+ var Constructor = Function.bind.apply(Parent, a);
38
+ var instance = new Constructor();
39
+ if (Class) _set_prototype_of(instance, Class.prototype);
40
+ return instance;
41
+ };
42
+ }
43
+ return _construct.apply(null, arguments);
44
+ }
17
45
  function _defineProperties(target, props) {
18
46
  for(var i = 0; i < props.length; i++){
19
47
  var descriptor = props[i];
@@ -41,25 +69,104 @@ function _define_property(obj, key, value) {
41
69
  }
42
70
  return obj;
43
71
  }
72
+ function _get_prototype_of(o) {
73
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
74
+ return o.__proto__ || Object.getPrototypeOf(o);
75
+ };
76
+ return _get_prototype_of(o);
77
+ }
78
+ function _inherits(subClass, superClass) {
79
+ if (typeof superClass !== "function" && superClass !== null) {
80
+ throw new TypeError("Super expression must either be null or a function");
81
+ }
82
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
83
+ constructor: {
84
+ value: subClass,
85
+ writable: true,
86
+ configurable: true
87
+ }
88
+ });
89
+ if (superClass) _set_prototype_of(subClass, superClass);
90
+ }
91
+ function _interop_require_default(obj) {
92
+ return obj && obj.__esModule ? obj : {
93
+ default: obj
94
+ };
95
+ }
96
+ function _is_native_function(fn) {
97
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
98
+ }
99
+ function _possible_constructor_return(self, call) {
100
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
101
+ return call;
102
+ }
103
+ return _assert_this_initialized(self);
104
+ }
105
+ function _set_prototype_of(o, p) {
106
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
107
+ o.__proto__ = p;
108
+ return o;
109
+ };
110
+ return _set_prototype_of(o, p);
111
+ }
112
+ function _type_of(obj) {
113
+ "@swc/helpers - typeof";
114
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
115
+ }
116
+ function _wrap_native_super(Class) {
117
+ var _cache = typeof Map === "function" ? new Map() : undefined;
118
+ _wrap_native_super = function wrapNativeSuper(Class) {
119
+ if (Class === null || !_is_native_function(Class)) return Class;
120
+ if (typeof Class !== "function") {
121
+ throw new TypeError("Super expression must either be null or a function");
122
+ }
123
+ if (typeof _cache !== "undefined") {
124
+ if (_cache.has(Class)) return _cache.get(Class);
125
+ _cache.set(Class, Wrapper);
126
+ }
127
+ function Wrapper() {
128
+ return _construct(Class, arguments, _get_prototype_of(this).constructor);
129
+ }
130
+ Wrapper.prototype = Object.create(Class.prototype, {
131
+ constructor: {
132
+ value: Wrapper,
133
+ enumerable: false,
134
+ writable: true,
135
+ configurable: true
136
+ }
137
+ });
138
+ return _set_prototype_of(Wrapper, Class);
139
+ };
140
+ return _wrap_native_super(Class);
141
+ }
142
+ function _is_native_reflect_construct() {
143
+ try {
144
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
145
+ } catch (_) {}
146
+ return (_is_native_reflect_construct = function() {
147
+ return !!result;
148
+ })();
149
+ }
44
150
  var _Term;
45
- var _default = (0, _elements.define)((_Term = /*#__PURE__*/ function() {
46
- function Term(string, variable, primitive, negatedTerm, logicalTerm, bracketedTerm, comparisonTerm) {
151
+ var _default = (0, _elements.define)((_Term = /*#__PURE__*/ function(Element) {
152
+ _inherits(Term, Element);
153
+ function Term(context, string, node, variable, primitive, negatedTerm, logicalTerm, bracketedTerm, comparisonTerm) {
47
154
  _class_call_check(this, Term);
48
- this.string = string;
49
- this.variable = variable;
50
- this.primitive = primitive;
51
- this.negatedTerm = negatedTerm;
52
- this.logicalTerm = logicalTerm;
53
- this.bracketedTerm = bracketedTerm;
54
- this.comparisonTerm = comparisonTerm;
155
+ var _this;
156
+ _this = _call_super(this, Term, [
157
+ context,
158
+ string,
159
+ node
160
+ ]);
161
+ _this.variable = variable;
162
+ _this.primitive = primitive;
163
+ _this.negatedTerm = negatedTerm;
164
+ _this.logicalTerm = logicalTerm;
165
+ _this.bracketedTerm = bracketedTerm;
166
+ _this.comparisonTerm = comparisonTerm;
167
+ return _this;
55
168
  }
56
169
  _create_class(Term, [
57
- {
58
- key: "getString",
59
- value: function getString() {
60
- return this.string;
61
- }
62
- },
63
170
  {
64
171
  key: "getVariable",
65
172
  value: function getVariable() {
@@ -171,12 +278,14 @@ var _default = (0, _elements.define)((_Term = /*#__PURE__*/ function() {
171
278
  {
172
279
  key: "fromPrimitive",
173
280
  value: function fromPrimitive(primitive, context) {
174
- var primitiveString = primitive.getString(), string = primitiveString, variable = null, negatedTerm = null, logicalTerm = null, bracketedTerm = null, comparisonTerm = null, term = new Term(string, variable, primitive, negatedTerm, logicalTerm, bracketedTerm, comparisonTerm);
281
+ var primitiveString = primitive.getString(), string = primitiveString, node = null, variable = null, negatedTerm = null, logicalTerm = null, bracketedTerm = null, comparisonTerm = null;
282
+ context = null;
283
+ var term = new Term(context, string, node, variable, primitive, negatedTerm, logicalTerm, bracketedTerm, comparisonTerm);
175
284
  return term;
176
285
  }
177
286
  }
178
287
  ]);
179
288
  return Term;
180
- }(), _define_property(_Term, "name", "Term"), _Term));
289
+ }(_wrap_native_super(_element.default)), _define_property(_Term, "name", "Term"), _Term));
181
290
 
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybSB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgdmFyaWFibGUsIHByaW1pdGl2ZSwgbmVnYXRlZFRlcm0sIGxvZ2ljYWxUZXJtLCBicmFja2V0ZWRUZXJtLCBjb21wYXJpc29uVGVybSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLnByaW1pdGl2ZSA9IHByaW1pdGl2ZTtcbiAgICB0aGlzLm5lZ2F0ZWRUZXJtID0gbmVnYXRlZFRlcm07XG4gICAgdGhpcy5sb2dpY2FsVGVybSA9IGxvZ2ljYWxUZXJtO1xuICAgIHRoaXMuYnJhY2tldGVkVGVybSA9IGJyYWNrZXRlZFRlcm07XG4gICAgdGhpcy5jb21wYXJpc29uVGVybSA9IGNvbXBhcmlzb25UZXJtO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldE5lZ2F0ZWRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLm5lZ2F0ZWRUZXJtO1xuICB9XG5cbiAgZ2V0TG9naWNhbFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubG9naWNhbFRlcm07XG4gIH1cblxuICBnZXRCcmVlZGluZ1Rlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhY2tldGVkVGVybTtcbiAgfVxuXG4gIGdldENvbXBhcmlzb25UZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBhcmlzb25UZXJtO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlVmFsdWUoKSB7XG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5nZXRWYWx1ZSgpO1xuXG4gICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy52YXJpYWJsZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMucHJpbWl0aXZlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLm5lZ2F0ZWRUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubG9naWNhbFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmxvZ2ljYWxUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuYnJhY2tldGVkVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5jb21wYXJpc29uVGVybS5nZXRUeXBlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0KSB7XG4gICAgbGV0IHRlcm07XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMucHJpbWl0aXZlLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5uZWdhdGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMubmVnYXRlZFRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxvZ2ljYWxUZXJtICE9PSBudWxsKSB7XG4gICAgICB0ZXJtID0gdGhpcy5sb2dpY2FsVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMuYnJhY2tldGVkVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29tcGFyaXNvblRlcm0gIT09IG51bGwpIHtcbiAgICAgIHRlcm0gPSB0aGlzLmNvbXBhcmlzb25UZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgaXNFcXVhbFRvKHRlcm0pIHtcbiAgICBsZXQgZXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gdGVybS5nZXRWYXJpYWJsZSgpO1xuXG4gICAgICBpZiAodmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRoaXMudmFyaWFibGUuaXNFcXVhbFRvKHZhcmlhYmxlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMucHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBwcmltaXRpdmUgPSB0ZXJtLmdldFByaW1pdGl2ZSgpO1xuXG4gICAgICBpZiAocHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnByaW1pdGl2ZS5pc0VxdWFsVG8ocHJpbWl0aXZlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJUZXJtXCI7XG5cbiAgc3RhdGljIGZyb21QcmltaXRpdmUocHJpbWl0aXZlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJpbWl0aXZlU3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICAgIHN0cmluZyA9IHByaW1pdGl2ZVN0cmluZywgLy8vXG4gICAgICAgICAgdmFyaWFibGUgPSBudWxsLFxuICAgICAgICAgIG5lZ2F0ZWRUZXJtID0gbnVsbCxcbiAgICAgICAgICBsb2dpY2FsVGVybSA9IG51bGwsXG4gICAgICAgICAgYnJhY2tldGVkVGVybSA9IG51bGwsXG4gICAgICAgICAgY29tcGFyaXNvblRlcm0gPSBudWxsLFxuICAgICAgICAgIHRlcm0gPSBuZXcgVGVybShzdHJpbmcsIHZhcmlhYmxlLCBwcmltaXRpdmUsIG5lZ2F0ZWRUZXJtLCBsb2dpY2FsVGVybSwgYnJhY2tldGVkVGVybSwgY29tcGFyaXNvblRlcm0pO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlRlcm0iLCJzdHJpbmciLCJ2YXJpYWJsZSIsInByaW1pdGl2ZSIsIm5lZ2F0ZWRUZXJtIiwibG9naWNhbFRlcm0iLCJicmFja2V0ZWRUZXJtIiwiY29tcGFyaXNvblRlcm0iLCJnZXRTdHJpbmciLCJnZXRWYXJpYWJsZSIsImdldFByaW1pdGl2ZSIsImdldE5lZ2F0ZWRUZXJtIiwiZ2V0TG9naWNhbFRlcm0iLCJnZXRCcmVlZGluZ1Rlcm0iLCJnZXRDb21wYXJpc29uVGVybSIsImdldFByaW1pdGl2ZVZhbHVlIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRWYWx1ZSIsImdldFR5cGUiLCJ0eXBlIiwiZXZhbHVhdGUiLCJjb250ZXh0IiwidGVybSIsImlzRXF1YWxUbyIsImVxdWFsVG8iLCJmcm9tUHJpbWl0aXZlIiwicHJpbWl0aXZlU3RyaW5nIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUFBOzs7d0JBRnVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBRXZCLFdBQWVBLElBQUFBLGdCQUFNLHlCQUFDO2FBQU1DLEtBQ2RDLE1BQU0sRUFBRUMsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLFdBQVcsRUFBRUMsV0FBVyxFQUFFQyxhQUFhLEVBQUVDLGNBQWM7Z0NBRHRFUDtRQUV4QixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtRQUNuQixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDQyxhQUFhLEdBQUdBO1FBQ3JCLElBQUksQ0FBQ0MsY0FBYyxHQUFHQTs7OztZQUd4QkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxNQUFNO1lBQ3BCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxRQUFRO1lBQ3RCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxTQUFTO1lBQ3ZCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxXQUFXO1lBQ3pCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxXQUFXO1lBQ3pCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxhQUFhO1lBQzNCOzs7WUFFQVEsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDUCxjQUFjO1lBQzVCOzs7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
291
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBFbGVtZW50IGZyb20gXCIuLi9lbGVtZW50XCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIHZhcmlhYmxlLCBwcmltaXRpdmUsIG5lZ2F0ZWRUZXJtLCBsb2dpY2FsVGVybSwgYnJhY2tldGVkVGVybSwgY29tcGFyaXNvblRlcm0pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUpXG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5wcmltaXRpdmUgPSBwcmltaXRpdmU7XG4gICAgdGhpcy5uZWdhdGVkVGVybSA9IG5lZ2F0ZWRUZXJtO1xuICAgIHRoaXMubG9naWNhbFRlcm0gPSBsb2dpY2FsVGVybTtcbiAgICB0aGlzLmJyYWNrZXRlZFRlcm0gPSBicmFja2V0ZWRUZXJtO1xuICAgIHRoaXMuY29tcGFyaXNvblRlcm0gPSBjb21wYXJpc29uVGVybTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldE5lZ2F0ZWRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLm5lZ2F0ZWRUZXJtO1xuICB9XG5cbiAgZ2V0TG9naWNhbFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubG9naWNhbFRlcm07XG4gIH1cblxuICBnZXRCcmVlZGluZ1Rlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhY2tldGVkVGVybTtcbiAgfVxuXG4gIGdldENvbXBhcmlzb25UZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBhcmlzb25UZXJtO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlVmFsdWUoKSB7XG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5nZXRWYWx1ZSgpO1xuXG4gICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy52YXJpYWJsZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMucHJpbWl0aXZlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLm5lZ2F0ZWRUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubG9naWNhbFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmxvZ2ljYWxUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuYnJhY2tldGVkVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5jb21wYXJpc29uVGVybS5nZXRUeXBlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0KSB7XG4gICAgbGV0IHRlcm07XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMucHJpbWl0aXZlLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5uZWdhdGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMubmVnYXRlZFRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxvZ2ljYWxUZXJtICE9PSBudWxsKSB7XG4gICAgICB0ZXJtID0gdGhpcy5sb2dpY2FsVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdGVybSA9IHRoaXMuYnJhY2tldGVkVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29tcGFyaXNvblRlcm0gIT09IG51bGwpIHtcbiAgICAgIHRlcm0gPSB0aGlzLmNvbXBhcmlzb25UZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgaXNFcXVhbFRvKHRlcm0pIHtcbiAgICBsZXQgZXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gdGVybS5nZXRWYXJpYWJsZSgpO1xuXG4gICAgICBpZiAodmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRoaXMudmFyaWFibGUuaXNFcXVhbFRvKHZhcmlhYmxlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMucHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBwcmltaXRpdmUgPSB0ZXJtLmdldFByaW1pdGl2ZSgpO1xuXG4gICAgICBpZiAocHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnByaW1pdGl2ZS5pc0VxdWFsVG8ocHJpbWl0aXZlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJUZXJtXCI7XG5cbiAgc3RhdGljIGZyb21QcmltaXRpdmUocHJpbWl0aXZlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJpbWl0aXZlU3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICAgIHN0cmluZyA9IHByaW1pdGl2ZVN0cmluZywgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgdmFyaWFibGUgPSBudWxsLFxuICAgICAgICAgIG5lZ2F0ZWRUZXJtID0gbnVsbCxcbiAgICAgICAgICBsb2dpY2FsVGVybSA9IG51bGwsXG4gICAgICAgICAgYnJhY2tldGVkVGVybSA9IG51bGwsXG4gICAgICAgICAgY29tcGFyaXNvblRlcm0gPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtID0gbmV3IFRlcm0oY29udGV4dCwgc3RyaW5nLCBub2RlLCB2YXJpYWJsZSwgcHJpbWl0aXZlLCBuZWdhdGVkVGVybSwgbG9naWNhbFRlcm0sIGJyYWNrZXRlZFRlcm0sIGNvbXBhcmlzb25UZXJtKTtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJUZXJtIiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJ2YXJpYWJsZSIsInByaW1pdGl2ZSIsIm5lZ2F0ZWRUZXJtIiwibG9naWNhbFRlcm0iLCJicmFja2V0ZWRUZXJtIiwiY29tcGFyaXNvblRlcm0iLCJnZXRWYXJpYWJsZSIsImdldFByaW1pdGl2ZSIsImdldE5lZ2F0ZWRUZXJtIiwiZ2V0TG9naWNhbFRlcm0iLCJnZXRCcmVlZGluZ1Rlcm0iLCJnZXRDb21wYXJpc29uVGVybSIsImdldFByaW1pdGl2ZVZhbHVlIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRWYWx1ZSIsImdldFR5cGUiLCJ0eXBlIiwiZXZhbHVhdGUiLCJ0ZXJtIiwiaXNFcXVhbFRvIiwiZXF1YWxUbyIsImZyb21QcmltaXRpdmUiLCJwcmltaXRpdmVTdHJpbmciLCJnZXRTdHJpbmciLCJFbGVtZW50IiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7OERBSm9CO3dCQUVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBRXZCLFdBQWVBLElBQUFBLGdCQUFNLHlCQUFDOzthQUFNQyxLQUNkQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsV0FBVyxFQUFFQyxXQUFXLEVBQUVDLGFBQWEsRUFBRUMsY0FBYztnQ0FEckZUOztnQkFFeEIsa0JBRndCQTtZQUVsQkM7WUFBU0M7WUFBUUM7O1FBRXZCLE1BQUtDLFFBQVEsR0FBR0E7UUFDaEIsTUFBS0MsU0FBUyxHQUFHQTtRQUNqQixNQUFLQyxXQUFXLEdBQUdBO1FBQ25CLE1BQUtDLFdBQVcsR0FBR0E7UUFDbkIsTUFBS0MsYUFBYSxHQUFHQTtRQUNyQixNQUFLQyxjQUFjLEdBQUdBOzs7OztZQUd4QkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTixRQUFRO1lBQ3RCOzs7WUFFQU8sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTixTQUFTO1lBQ3ZCOzs7WUFFQU8sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTixXQUFXO1lBQ3pCOzs7WUFFQU8sS0FBQUE7bUJB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
@@ -8,13 +8,41 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
+ var _element = /*#__PURE__*/ _interop_require_default(require("../element"));
11
12
  var _elements = require("../elements");
12
13
  var _string = require("../utilities/string");
14
+ function _assert_this_initialized(self) {
15
+ if (self === void 0) {
16
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
17
+ }
18
+ return self;
19
+ }
20
+ function _call_super(_this, derived, args) {
21
+ derived = _get_prototype_of(derived);
22
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
23
+ }
13
24
  function _class_call_check(instance, Constructor) {
14
25
  if (!(instance instanceof Constructor)) {
15
26
  throw new TypeError("Cannot call a class as a function");
16
27
  }
17
28
  }
29
+ function _construct(Parent, args, Class) {
30
+ if (_is_native_reflect_construct()) {
31
+ _construct = Reflect.construct;
32
+ } else {
33
+ _construct = function construct(Parent, args, Class) {
34
+ var a = [
35
+ null
36
+ ];
37
+ a.push.apply(a, args);
38
+ var Constructor = Function.bind.apply(Parent, a);
39
+ var instance = new Constructor();
40
+ if (Class) _set_prototype_of(instance, Class.prototype);
41
+ return instance;
42
+ };
43
+ }
44
+ return _construct.apply(null, arguments);
45
+ }
18
46
  function _defineProperties(target, props) {
19
47
  for(var i = 0; i < props.length; i++){
20
48
  var descriptor = props[i];
@@ -42,20 +70,99 @@ function _define_property(obj, key, value) {
42
70
  }
43
71
  return obj;
44
72
  }
73
+ function _get_prototype_of(o) {
74
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
75
+ return o.__proto__ || Object.getPrototypeOf(o);
76
+ };
77
+ return _get_prototype_of(o);
78
+ }
79
+ function _inherits(subClass, superClass) {
80
+ if (typeof superClass !== "function" && superClass !== null) {
81
+ throw new TypeError("Super expression must either be null or a function");
82
+ }
83
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
84
+ constructor: {
85
+ value: subClass,
86
+ writable: true,
87
+ configurable: true
88
+ }
89
+ });
90
+ if (superClass) _set_prototype_of(subClass, superClass);
91
+ }
92
+ function _interop_require_default(obj) {
93
+ return obj && obj.__esModule ? obj : {
94
+ default: obj
95
+ };
96
+ }
97
+ function _is_native_function(fn) {
98
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
99
+ }
100
+ function _possible_constructor_return(self, call) {
101
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
102
+ return call;
103
+ }
104
+ return _assert_this_initialized(self);
105
+ }
106
+ function _set_prototype_of(o, p) {
107
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
108
+ o.__proto__ = p;
109
+ return o;
110
+ };
111
+ return _set_prototype_of(o, p);
112
+ }
113
+ function _type_of(obj) {
114
+ "@swc/helpers - typeof";
115
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
116
+ }
117
+ function _wrap_native_super(Class) {
118
+ var _cache = typeof Map === "function" ? new Map() : undefined;
119
+ _wrap_native_super = function wrapNativeSuper(Class) {
120
+ if (Class === null || !_is_native_function(Class)) return Class;
121
+ if (typeof Class !== "function") {
122
+ throw new TypeError("Super expression must either be null or a function");
123
+ }
124
+ if (typeof _cache !== "undefined") {
125
+ if (_cache.has(Class)) return _cache.get(Class);
126
+ _cache.set(Class, Wrapper);
127
+ }
128
+ function Wrapper() {
129
+ return _construct(Class, arguments, _get_prototype_of(this).constructor);
130
+ }
131
+ Wrapper.prototype = Object.create(Class.prototype, {
132
+ constructor: {
133
+ value: Wrapper,
134
+ enumerable: false,
135
+ writable: true,
136
+ configurable: true
137
+ }
138
+ });
139
+ return _set_prototype_of(Wrapper, Class);
140
+ };
141
+ return _wrap_native_super(Class);
142
+ }
143
+ function _is_native_reflect_construct() {
144
+ try {
145
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
146
+ } catch (_) {}
147
+ return (_is_native_reflect_construct = function() {
148
+ return !!result;
149
+ })();
150
+ }
45
151
  var _Terms;
46
- var _default = (0, _elements.define)((_Terms = /*#__PURE__*/ function() {
47
- function Terms(string, array) {
152
+ var _default = (0, _elements.define)((_Terms = /*#__PURE__*/ function(Element) {
153
+ _inherits(Terms, Element);
154
+ function Terms(context, string, node, array) {
48
155
  _class_call_check(this, Terms);
49
- this.string = string;
50
- this.array = array;
156
+ var _this;
157
+ _this = _call_super(this, Terms, [
158
+ context,
159
+ string,
160
+ node
161
+ ]);
162
+ _this.array = array;
163
+ return _this;
51
164
  }
52
165
  _create_class(Terms, [
53
- {
54
- key: "getString",
55
- value: function getString() {
56
- return this.string;
57
- }
58
- },
59
166
  {
60
167
  key: "getArray",
61
168
  value: function getArray() {
@@ -100,7 +207,9 @@ var _default = (0, _elements.define)((_Terms = /*#__PURE__*/ function() {
100
207
  var termsArray = this.mapTerm(function(term) {
101
208
  term = term.evaluate(context);
102
209
  return term;
103
- }), termsString = (0, _string.termsStringFromTermsArray)(termsArray, context), string = termsString, array = termsArray, terms = new Terms(string, array);
210
+ }), termsString = (0, _string.termsStringFromTermsArray)(termsArray, context), string = termsString, array = termsArray, node = null;
211
+ context = null;
212
+ var terms = new Terms(context, string, node, array);
104
213
  return terms;
105
214
  }
106
215
  }
@@ -110,12 +219,14 @@ var _default = (0, _elements.define)((_Terms = /*#__PURE__*/ function() {
110
219
  value: function fromTerm(term, context) {
111
220
  var termsArray = [
112
221
  term
113
- ], termsString = (0, _string.termsStringFromTermsArray)(termsArray, context), string = termsString, array = termsArray, terms = new Terms(string, array);
222
+ ], termsString = (0, _string.termsStringFromTermsArray)(termsArray, context), string = termsString, array = termsArray, node = null;
223
+ context = null;
224
+ var terms = new Terms(context, string, node, array);
114
225
  return terms;
115
226
  }
116
227
  }
117
228
  ]);
118
229
  return Terms;
119
- }(), _define_property(_Terms, "name", "Terms"), _Terms));
230
+ }(_wrap_native_super(_element.default)), _define_property(_Terms, "name", "Terms"), _Terms));
120
231
 
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm1zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybXMge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIGFycmF5KSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldFRlcm0oaW5kZXgpIHtcbiAgICBjb25zdCB0ZXJtID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBhZGRUZXJtKHRlcm0pIHtcbiAgICB0aGlzLmFycmF5LnB1c2godGVybSk7XG4gIH1cblxuICBtYXBUZXJtKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5Lm1hcChjYWxsYmFjayk7IH1cblxuICBmb3JFYWNoVGVybShjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGNvbnN0IHRlcm1zQXJyYXkgPSB0aGlzLm1hcFRlcm0oKHRlcm0pID0+IHtcbiAgICAgICAgICAgIHRlcm0gPSB0ZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGVybTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0ZXJtc1N0cmluZyA9IHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkodGVybXNBcnJheSwgY29udGV4dCksXG4gICAgICAgICAgc3RyaW5nID0gdGVybXNTdHJpbmcsIC8vL1xuICAgICAgICAgIGFycmF5ID0gdGVybXNBcnJheSwgLy8vXG4gICAgICAgICAgdGVybXMgPSBuZXcgVGVybXMoc3RyaW5nLCBhcnJheSk7XG5cbiAgICByZXR1cm4gdGVybXM7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVGVybXNcIjtcblxuICBzdGF0aWMgZnJvbVRlcm0odGVybSwgY29udGV4dCkge1xuICAgIGNvbnN0IHRlcm1zQXJyYXkgPSBbXG4gICAgICAgICAgICB0ZXJtXG4gICAgICAgICAgXSxcbiAgICAgICAgICB0ZXJtc1N0cmluZyA9IHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkodGVybXNBcnJheSwgY29udGV4dCksXG4gICAgICAgICAgc3RyaW5nID0gdGVybXNTdHJpbmcsIC8vL1xuICAgICAgICAgIGFycmF5ID0gdGVybXNBcnJheSwgLy8vXG4gICAgICAgICAgdGVybXMgPSBuZXcgVGVybXMoc3RyaW5nLCBhcnJheSk7XG5cbiAgICByZXR1cm4gdGVybXM7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlRlcm1zIiwic3RyaW5nIiwiYXJyYXkiLCJnZXRTdHJpbmciLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFRlcm0iLCJpbmRleCIsInRlcm0iLCJhZGRUZXJtIiwicHVzaCIsIm1hcFRlcm0iLCJjYWxsYmFjayIsIm1hcCIsImZvckVhY2hUZXJtIiwiZm9yRWFjaCIsImV2YWx1YXRlIiwiY29udGV4dCIsInRlcm1zQXJyYXkiLCJ0ZXJtc1N0cmluZyIsInRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkiLCJ0ZXJtcyIsImZyb21UZXJtIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBS0E7OztlQUFBOzs7d0JBSHVCO3NCQUNtQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUUxQyxXQUFlQSxJQUFBQSxnQkFBTSwwQkFBQzthQUFNQyxNQUNkQyxNQUFNLEVBQUVDLEtBQUs7Z0NBRENGO1FBRXhCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTs7OztZQUdmQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLE1BQU07WUFDcEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsU0FBUyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ksTUFBTTtnQkFFaEMsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRQyxLQUFLO2dCQUNYLElBQU1DLE9BQU8sSUFBSSxDQUFDUCxLQUFLLENBQUNNLE1BQU0sSUFBSSxNQUFPLEdBQUc7Z0JBRTVDLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsUUFBUUQsSUFBSTtnQkFDVixJQUFJLENBQUNQLEtBQUssQ0FBQ1MsSUFBSSxDQUFDRjtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRQyxRQUFRO2dCQUFJLE9BQU8sSUFBSSxDQUFDWCxLQUFLLENBQUNZLEdBQUcsQ0FBQ0Q7WUFBVzs7O1lBRXJERSxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWUYsUUFBUTtnQkFBSSxJQUFJLENBQUNYLEtBQUssQ0FBQ2MsT0FBTyxDQUFDSDtZQUFXOzs7WUFFdERJLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxPQUFPO2dCQUNkLElBQU1DLGFBQWEsSUFBSSxDQUFDUCxPQUFPLENBQUMsU0FBQ0g7b0JBQ3pCQSxPQUFPQSxLQUFLUSxRQUFRLENBQUNDO29CQUVyQixPQUFPVDtnQkFDVCxJQUNBVyxjQUFjQyxJQUFBQSxpQ0FBeUIsRUFBQ0YsWUFBWUQsVUFDcERqQixTQUFTbUIsYUFDVGxCLFFBQVFpQixZQUNSRyxRQUFRLElBQUl0QixNQUFNQyxRQUFRQztnQkFFaEMsT0FBT29CO1lBQ1Q7Ozs7WUFJT0MsS0FBQUE7bUJBQVAsU0FBT0EsU0FBU2QsSUFBSSxFQUFFUyxPQUFPO2dCQUMzQixJQUFNQyxhQUFhO29CQUNYVjtpQkFDRCxFQUNEVyxjQUFjQyxJQUFBQSxpQ0FBeUIsRUFBQ0YsWUFBWUQsVUFDcERqQixTQUFTbUIsYUFDVGxCLFFBQVFpQixZQUNSRyxRQUFRLElBQUl0QixNQUFNQyxRQUFRQztnQkFFaEMsT0FBT29CO1lBQ1Q7Ozs7S0FaQSx5QkFBT0UsUUFBTyJ9
232
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm1zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgRWxlbWVudCBmcm9tIFwiLi4vZWxlbWVudFwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSlcblxuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldFRlcm0oaW5kZXgpIHtcbiAgICBjb25zdCB0ZXJtID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBhZGRUZXJtKHRlcm0pIHtcbiAgICB0aGlzLmFycmF5LnB1c2godGVybSk7XG4gIH1cblxuICBtYXBUZXJtKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5Lm1hcChjYWxsYmFjayk7IH1cblxuICBmb3JFYWNoVGVybShjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGNvbnN0IHRlcm1zQXJyYXkgPSB0aGlzLm1hcFRlcm0oKHRlcm0pID0+IHtcbiAgICAgICAgICAgIHRlcm0gPSB0ZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGVybTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0ZXJtc1N0cmluZyA9IHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkodGVybXNBcnJheSwgY29udGV4dCksXG4gICAgICAgICAgc3RyaW5nID0gdGVybXNTdHJpbmcsIC8vL1xuICAgICAgICAgIGFycmF5ID0gdGVybXNBcnJheSwgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHRlcm1zID0gbmV3IFRlcm1zKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHRlcm1zO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlRlcm1zXCI7XG5cbiAgc3RhdGljIGZyb21UZXJtKHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0ZXJtc0FycmF5ID0gW1xuICAgICAgICAgICAgdGVybVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGVybXNTdHJpbmcgPSB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5KHRlcm1zQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIHN0cmluZyA9IHRlcm1zU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHRlcm1zQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtcyA9IG5ldyBUZXJtcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGFycmF5KTtcblxuICAgIHJldHVybiB0ZXJtcztcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVGVybXMiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImFycmF5IiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRUZXJtIiwiaW5kZXgiLCJ0ZXJtIiwiYWRkVGVybSIsInB1c2giLCJtYXBUZXJtIiwiY2FsbGJhY2siLCJtYXAiLCJmb3JFYWNoVGVybSIsImZvckVhY2giLCJldmFsdWF0ZSIsInRlcm1zQXJyYXkiLCJ0ZXJtc1N0cmluZyIsInRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkiLCJ0ZXJtcyIsImZyb21UZXJtIiwiRWxlbWVudCIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU9BOzs7ZUFBQTs7OzhEQUxvQjt3QkFFRztzQkFDbUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFMUMsV0FBZUEsSUFBQUEsZ0JBQU0sMEJBQUM7O2FBQU1DLE1BQ2RDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLEtBQUs7Z0NBRGRKOztnQkFFeEIsa0JBRndCQTtZQUVsQkM7WUFBU0M7WUFBUUM7O1FBRXZCLE1BQUtDLEtBQUssR0FBR0E7Ozs7O1lBR2ZDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsS0FBSztZQUNuQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxTQUFTLElBQUksQ0FBQ0gsS0FBSyxDQUFDRyxNQUFNO2dCQUVoQyxPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFFBQVFDLEtBQUs7Z0JBQ1gsSUFBTUMsT0FBTyxJQUFJLENBQUNOLEtBQUssQ0FBQ0ssTUFBTSxJQUFJLE1BQU8sR0FBRztnQkFFNUMsT0FBT0M7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRRCxJQUFJO2dCQUNWLElBQUksQ0FBQ04sS0FBSyxDQUFDUSxJQUFJLENBQUNGO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFFBQVFDLFFBQVE7Z0JBQUksT0FBTyxJQUFJLENBQUNWLEtBQUssQ0FBQ1csR0FBRyxDQUFDRDtZQUFXOzs7WUFFckRFLEtBQUFBO21CQUFBQSxTQUFBQSxZQUFZRixRQUFRO2dCQUFJLElBQUksQ0FBQ1YsS0FBSyxDQUFDYSxPQUFPLENBQUNIO1lBQVc7OztZQUV0REksS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVNqQixPQUFPO2dCQUNkLElBQU1rQixhQUFhLElBQUksQ0FBQ04sT0FBTyxDQUFDLFNBQUNIO29CQUN6QkEsT0FBT0EsS0FBS1EsUUFBUSxDQUFDakI7b0JBRXJCLE9BQU9TO2dCQUNULElBQ0FVLGNBQWNDLElBQUFBLGlDQUF5QixFQUFDRixZQUFZbEIsVUFDcERDLFNBQVNrQixhQUNUaEIsUUFBUWUsWUFDUmhCLE9BQU87Z0JBRWJGLFVBQVU7Z0JBRVYsSUFBTXFCLFFBQVEsSUFBSXRCLE1BQU1DLFNBQVNDLFFBQVFDLE1BQU1DO2dCQUUvQyxPQUFPa0I7WUFDVDs7OztZQUlPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTYixJQUFJLEVBQUVULE9BQU87Z0JBQzNCLElBQU1rQixhQUFhO29CQUNYVDtpQkFDRCxFQUNEVSxjQUFjQyxJQUFBQSxpQ0FBeUIsRUFBQ0YsWUFBWWxCLFVBQ3BEQyxTQUFTa0IsYUFDVGhCLFFBQVFlLFlBQ1JoQixPQUFPO2dCQUViRixVQUFVO2dCQUVWLElBQU1xQixRQUFRLElBQUl0QixNQUFNQyxTQUFTQyxRQUFRQyxNQUFNQztnQkFFL0MsT0FBT2tCO1lBQ1Q7Ozs7cUJBakV3Q0UsZ0JBQU8sSUFpRC9DLHlCQUFPQyxRQUFPIn0=