@pie-lib/math-input 6.13.0-beta.0 → 6.13.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.
Files changed (45) hide show
  1. package/CHANGELOG.json +6 -1536
  2. package/CHANGELOG.md +128 -125
  3. package/package.json +4 -2
  4. package/src/__tests__/math-input-test.jsx +1 -1
  5. package/src/index.jsx +1 -1
  6. package/src/keypad/index.jsx +3 -3
  7. package/lib/__tests__/math-input-test.js +0 -109
  8. package/lib/horizontal-keypad.js +0 -124
  9. package/lib/index.js +0 -76
  10. package/lib/keypad/__tests__/index.test.js +0 -41
  11. package/lib/keypad/__tests__/keys-layout.test.js +0 -15
  12. package/lib/keypad/index.js +0 -512
  13. package/lib/keypad/keys-layout.js +0 -34
  14. package/lib/keys/__tests__/utils.test.js +0 -60
  15. package/lib/keys/basic-operators.js +0 -41
  16. package/lib/keys/chars.js +0 -17
  17. package/lib/keys/comparison.js +0 -49
  18. package/lib/keys/constants.js +0 -43
  19. package/lib/keys/digits.js +0 -53
  20. package/lib/keys/edit.js +0 -17
  21. package/lib/keys/exponent.js +0 -36
  22. package/lib/keys/fractions.js +0 -34
  23. package/lib/keys/geometry.js +0 -169
  24. package/lib/keys/grades.js +0 -295
  25. package/lib/keys/index.js +0 -54
  26. package/lib/keys/log.js +0 -32
  27. package/lib/keys/logic.js +0 -23
  28. package/lib/keys/matrices.js +0 -23
  29. package/lib/keys/misc.js +0 -74
  30. package/lib/keys/navigation.js +0 -25
  31. package/lib/keys/operators.js +0 -18
  32. package/lib/keys/statistics.js +0 -47
  33. package/lib/keys/sub-sup.js +0 -23
  34. package/lib/keys/trigonometry.js +0 -53
  35. package/lib/keys/utils.js +0 -120
  36. package/lib/keys/vars.js +0 -29
  37. package/lib/math-input.js +0 -192
  38. package/lib/mq/__tests__/input.test.js +0 -119
  39. package/lib/mq/__tests__/static.test.js +0 -74
  40. package/lib/mq/common-mq-styles.js +0 -110
  41. package/lib/mq/custom-elements.js +0 -23
  42. package/lib/mq/index.js +0 -32
  43. package/lib/mq/input.js +0 -247
  44. package/lib/mq/static.js +0 -356
  45. package/lib/updateSpans.js +0 -23
@@ -1,295 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.normalizeAdditionalKeys = exports.keysForGrade = exports.gradeSets = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var comparison = _interopRequireWildcard(require("./comparison"));
15
-
16
- var vars = _interopRequireWildcard(require("./vars"));
17
-
18
- var fractions = _interopRequireWildcard(require("./fractions"));
19
-
20
- var exponent = _interopRequireWildcard(require("./exponent"));
21
-
22
- var misc = _interopRequireWildcard(require("./misc"));
23
-
24
- var constants = _interopRequireWildcard(require("./constants"));
25
-
26
- var trigonometry = _interopRequireWildcard(require("./trigonometry"));
27
-
28
- var geometry = _interopRequireWildcard(require("./geometry"));
29
-
30
- var operators = _interopRequireWildcard(require("./operators"));
31
-
32
- var log = _interopRequireWildcard(require("./log"));
33
-
34
- var subSup = _interopRequireWildcard(require("./sub-sup"));
35
-
36
- var statistics = _interopRequireWildcard(require("./statistics"));
37
-
38
- var basicOperators = _interopRequireWildcard(require("./basic-operators"));
39
-
40
- var matrices = _interopRequireWildcard(require("./matrices"));
41
-
42
- var _digits = _interopRequireDefault(require("./digits"));
43
-
44
- var logic = _interopRequireWildcard(require("./logic"));
45
-
46
- var nav = _interopRequireWildcard(require("./navigation"));
47
-
48
- var edit = _interopRequireWildcard(require("./edit"));
49
-
50
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
51
-
52
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
53
-
54
- var hs = [[fractions.blankOverBlank, misc.percentage, vars.x, exponent.squared, exponent.squareRoot], [operators.circleDot, vars.y, subSup.subscript, exponent.xToPowerOfN, exponent.nthRoot], [misc.plusMinus, comparison.lessThan, comparison.greaterThan, comparison.lessThanEqual, comparison.greaterThanEqual], [constants.pi, vars.theta, misc.parenthesis, misc.brackets, misc.absValue], [misc.notEqual, trigonometry.sin, trigonometry.cos, trigonometry.tan, geometry.degree]];
55
-
56
- var advancedAlgebra = function () {
57
- var out = (0, _toConsumableArray2["default"])(hs.map(function (arr) {
58
- return (0, _toConsumableArray2["default"])(arr);
59
- }));
60
- out[0].push({
61
- name: 'i',
62
- latex: 'i',
63
- write: 'i'
64
- });
65
- out[1].push(log.log);
66
- out[2].push(log.logSubscript);
67
- out[3].push(log.ln);
68
- out[4].push(constants.eulers);
69
- return out;
70
- }();
71
-
72
- var statisticsSet = function () {
73
- var out = (0, _toConsumableArray2["default"])(hs.map(function (arr) {
74
- return (0, _toConsumableArray2["default"])(arr);
75
- }));
76
- out[0].push(statistics.mu);
77
- out[1].push(statistics.xBar);
78
- out[2].push(statistics.yBar);
79
- out[3].push(statistics.sigma);
80
- out[4].push(statistics.smallSigma);
81
- return out;
82
- }();
83
-
84
- var gradeSets = [{
85
- predicate: function predicate(n) {
86
- return n >= 3 && n <= 5;
87
- },
88
- set: [[comparison.lessThan, comparison.greaterThan], [fractions.xOverBlank, fractions.xBlankBlank], [vars.x, logic.longDivision], [exponent.squared, exponent.xToPowerOfN]]
89
- }, {
90
- predicate: function predicate(n) {
91
- return n >= 6 && n <= 7;
92
- },
93
- set: [[geometry.degree, comparison.lessThan, comparison.greaterThan], [operators.circleDot, comparison.lessThanEqual, comparison.greaterThanEqual], [vars.x, vars.y, exponent.squared, exponent.xToPowerOfN], [misc.plusMinus, fractions.xOverBlank, fractions.xBlankBlank, exponent.squareRoot], [constants.pi, misc.parenthesis, misc.absValue, exponent.nthRoot]]
94
- }, {
95
- predicate: function predicate(n) {
96
- return n >= 8 || n === 'HS';
97
- },
98
- set: hs
99
- }, {
100
- predicate: 'non-negative-integers',
101
- set: [[_digits["default"].seven, _digits["default"].eight, _digits["default"].nine], [_digits["default"].four, _digits["default"].five, _digits["default"].six], [_digits["default"].one, _digits["default"].two, _digits["default"].three], [_digits["default"].zero, {
102
- name: '',
103
- latex: '',
104
- write: ''
105
- }, {
106
- name: '',
107
- latex: '',
108
- write: ''
109
- }], [nav.left, nav.right, edit.del]]
110
- }, {
111
- predicate: 'integers',
112
- set: [[_digits["default"].seven, _digits["default"].eight, _digits["default"].nine], [_digits["default"].four, _digits["default"].five, _digits["default"].six], [_digits["default"].one, _digits["default"].two, _digits["default"].three], [_digits["default"].zero, {
113
- name: '',
114
- latex: '',
115
- write: ''
116
- }, basicOperators.minus], [nav.left, nav.right, edit.del]]
117
- }, {
118
- predicate: 'decimals',
119
- set: [[_digits["default"].seven, _digits["default"].eight, _digits["default"].nine], [_digits["default"].four, _digits["default"].five, _digits["default"].six], [_digits["default"].one, _digits["default"].two, _digits["default"].three], [_digits["default"].zero, _digits["default"].decimalPoint, basicOperators.minus], [nav.left, nav.right, edit.del]]
120
- }, {
121
- predicate: 'fractions',
122
- set: [[_digits["default"].seven, _digits["default"].eight, _digits["default"].nine], [_digits["default"].four, _digits["default"].five, _digits["default"].six], [_digits["default"].one, _digits["default"].two, _digits["default"].three], [_digits["default"].zero, fractions.blankOverBlank, basicOperators.minus], [nav.left, nav.right, edit.del]]
123
- }, {
124
- predicate: 'geometry',
125
- set: [[fractions.blankOverBlank, geometry.degree, geometry.primeArcminute, geometry.doublePrimeArcSecond, geometry.congruentTo, geometry.similarTo], [operators.circleDot, geometry.angle, geometry.measureOfAngle, geometry.triangle, geometry.notCongruentTo, misc.notSimilar], [trigonometry.sin, trigonometry.cos, trigonometry.tan, constants.pi, exponent.squareRoot, exponent.nthRoot], [trigonometry.csc, trigonometry.sec, trigonometry.cot, vars.theta, subSup.subscript, exponent.xToPowerOfN], [geometry.overline, geometry.overRightArrow, geometry.overLeftRightArrow, geometry.overArc, geometry.perpindicular, geometry.parallel]]
126
- }, // {
127
- // predicate: 'miscellaneous',
128
- // set: [
129
- // [
130
- // subSup.superscript,
131
- // subSup.subscript,
132
- // fractions.blankOverBlank,
133
- // misc.percentage,
134
- // geometry.segment,
135
- // geometry.parallel
136
- // ],
137
- // [
138
- // exponent.squareRoot,
139
- // exponent.nthRoot,
140
- // misc.absValue,
141
- // misc.parenthesis,
142
- // geometry.perpindicular,
143
- // geometry.angle
144
- // ],
145
- // [
146
- // comparison.lessThan,
147
- // comparison.greaterThan,
148
- // geometry.degree,
149
- // misc.approx,
150
- // geometry.measureOfAngle,
151
- // geometry.triangle
152
- // ],
153
- // [
154
- // misc.nApprox,
155
- // misc.notEqual,
156
- // geometry.congruentTo,
157
- // geometry.notCongruentTo,
158
- // geometry.parallelogram,
159
- // geometry.circledDot
160
- // ],
161
- // [
162
- // misc.similar,
163
- // misc.notSimilar,
164
- // comparison.lessThanEqual,
165
- // comparison.greaterThanEqual,
166
- // vars.x,
167
- // vars.y
168
- // ]
169
- // ]
170
- // },
171
- // {
172
- // predicate: 'everything',
173
- // set: [
174
- // [
175
- // subSup.superscript,
176
- // subSup.subscript,
177
- // fractions.blankOverBlank,
178
- // misc.percentage,
179
- // geometry.segment,
180
- // geometry.parallel
181
- // ],
182
- // [
183
- // exponent.squareRoot,
184
- // exponent.nthRoot,
185
- // misc.absValue,
186
- // misc.parenthesis,
187
- // geometry.perpindicular,
188
- // geometry.angle
189
- // ],
190
- // [
191
- // comparison.lessThan,
192
- // comparison.greaterThan,
193
- // geometry.degree,
194
- // misc.approx,
195
- // geometry.measureOfAngle,
196
- // geometry.triangle
197
- // ],
198
- // [
199
- // misc.nApprox,
200
- // misc.notEqual,
201
- // geometry.congruentTo,
202
- // geometry.notCongruentTo,
203
- // geometry.parallelogram,
204
- // geometry.circledDot
205
- // ],
206
- // [
207
- // misc.similar,
208
- // misc.notSimilar,
209
- // comparison.lessThanEqual,
210
- // comparison.greaterThanEqual,
211
- // vars.x,
212
- // vars.y
213
- // ]
214
- // ]
215
- // },
216
- {
217
- predicate: 'advanced-algebra',
218
- set: advancedAlgebra
219
- }, {
220
- predicate: 'statistics',
221
- set: statisticsSet
222
- }, {
223
- predicate: 'item-authoring',
224
- set: [[basicOperators.divide, fractions.blankOverBlank, logic.longDivision, constants.halfInfinity, exponent.squared, exponent.squareRoot, geometry.overline, geometry.overRightArrow, geometry.overLeftRightArrow, log.log], [basicOperators.multiply, operators.circleDot, {
225
- name: '',
226
- latex: '',
227
- write: ''
228
- }, subSup.subscript, exponent.xToPowerOfN, exponent.nthRoot, geometry.perpindicular, geometry.parallel, geometry.overArc, log.logSubscript], [misc.plusMinus, constants.pi, vars.theta, geometry.degree, geometry.angle, geometry.leftArrow, geometry.rightArrow, geometry.triangle, geometry.square, log.ln], [misc.notEqual, misc.absValue, statistics.smallSigma, statistics.mu, logic.therefore, statistics.sigma, geometry.leftrightArrow, trigonometry.sin, trigonometry.cos, trigonometry.tan], [comparison.lessThanEqual, comparison.greaterThanEqual, {
229
- name: '',
230
- latex: '',
231
- write: ''
232
- }, {
233
- name: '',
234
- latex: '',
235
- write: ''
236
- }, constants.infinity, {
237
- name: '',
238
- latex: '',
239
- write: ''
240
- }, {
241
- name: '',
242
- latex: '',
243
- write: ''
244
- }, trigonometry.csc, trigonometry.sec, trigonometry.cot]]
245
- }, // for grade 1-2, we want to display the base set only
246
- // we need it here because we don't want to display the default set (grade 8)
247
- {
248
- predicate: function predicate(n) {
249
- return n >= 1 && n <= 2;
250
- },
251
- set: []
252
- }];
253
- exports.gradeSets = gradeSets;
254
-
255
- var keysForGrade = function keysForGrade(n) {
256
- var number = parseInt(n, 10);
257
- n = isNaN(number) ? n : number;
258
-
259
- if (!n) {
260
- return [];
261
- }
262
-
263
- var match = gradeSets.find(function (gs) {
264
- if (typeof gs.predicate === 'string') {
265
- return gs.predicate === n;
266
- } else {
267
- return gs.predicate(n);
268
- }
269
- });
270
-
271
- if (match) {
272
- return match.set || [];
273
- } // if the grade is not found, return the default set which is grade 8 (as per PD-3549), for mode language it is not the default
274
-
275
-
276
- if (n !== 'language') {
277
- return gradeSets[2].set;
278
- }
279
- };
280
-
281
- exports.keysForGrade = keysForGrade;
282
- var ALL_KEYS = [].concat((0, _toConsumableArray2["default"])(Object.values(basicOperators)), (0, _toConsumableArray2["default"])(Object.values(comparison)), (0, _toConsumableArray2["default"])(Object.values(constants)), (0, _toConsumableArray2["default"])(Object.values(_digits["default"])), (0, _toConsumableArray2["default"])(Object.values(exponent)), (0, _toConsumableArray2["default"])(Object.values(fractions)), (0, _toConsumableArray2["default"])(Object.values(geometry)), (0, _toConsumableArray2["default"])(Object.values(log)), (0, _toConsumableArray2["default"])(Object.values(matrices)), (0, _toConsumableArray2["default"])(Object.values(misc)), (0, _toConsumableArray2["default"])(Object.values(operators)), (0, _toConsumableArray2["default"])(Object.values(statistics)), (0, _toConsumableArray2["default"])(Object.values(subSup)), (0, _toConsumableArray2["default"])(Object.values(trigonometry)), (0, _toConsumableArray2["default"])(Object.values(vars)));
283
-
284
- var normalizeAdditionalKeys = function normalizeAdditionalKeys(additionalKeys) {
285
- return (additionalKeys || []).map(function (additionalkey) {
286
- var latex = additionalkey.latex;
287
- var predefinedKey = (ALL_KEYS || []).find(function (key) {
288
- return latex === key.latex || latex === key.write || latex === key.command || latex === key.otherNotation;
289
- });
290
- return !latex ? additionalkey : predefinedKey || additionalkey;
291
- });
292
- };
293
-
294
- exports.normalizeAdditionalKeys = normalizeAdditionalKeys;
295
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL2dyYWRlcy5qcyJdLCJuYW1lcyI6WyJocyIsImZyYWN0aW9ucyIsImJsYW5rT3ZlckJsYW5rIiwibWlzYyIsInBlcmNlbnRhZ2UiLCJ2YXJzIiwieCIsImV4cG9uZW50Iiwic3F1YXJlZCIsInNxdWFyZVJvb3QiLCJvcGVyYXRvcnMiLCJjaXJjbGVEb3QiLCJ5Iiwic3ViU3VwIiwic3Vic2NyaXB0IiwieFRvUG93ZXJPZk4iLCJudGhSb290IiwicGx1c01pbnVzIiwiY29tcGFyaXNvbiIsImxlc3NUaGFuIiwiZ3JlYXRlclRoYW4iLCJsZXNzVGhhbkVxdWFsIiwiZ3JlYXRlclRoYW5FcXVhbCIsImNvbnN0YW50cyIsInBpIiwidGhldGEiLCJwYXJlbnRoZXNpcyIsImJyYWNrZXRzIiwiYWJzVmFsdWUiLCJub3RFcXVhbCIsInRyaWdvbm9tZXRyeSIsInNpbiIsImNvcyIsInRhbiIsImdlb21ldHJ5IiwiZGVncmVlIiwiYWR2YW5jZWRBbGdlYnJhIiwib3V0IiwibWFwIiwiYXJyIiwicHVzaCIsIm5hbWUiLCJsYXRleCIsIndyaXRlIiwibG9nIiwibG9nU3Vic2NyaXB0IiwibG4iLCJldWxlcnMiLCJzdGF0aXN0aWNzU2V0Iiwic3RhdGlzdGljcyIsIm11IiwieEJhciIsInlCYXIiLCJzaWdtYSIsInNtYWxsU2lnbWEiLCJncmFkZVNldHMiLCJwcmVkaWNhdGUiLCJuIiwic2V0IiwieE92ZXJCbGFuayIsInhCbGFua0JsYW5rIiwibG9naWMiLCJsb25nRGl2aXNpb24iLCJkaWdpdHMiLCJzZXZlbiIsImVpZ2h0IiwibmluZSIsImZvdXIiLCJmaXZlIiwic2l4Iiwib25lIiwidHdvIiwidGhyZWUiLCJ6ZXJvIiwibmF2IiwibGVmdCIsInJpZ2h0IiwiZWRpdCIsImRlbCIsImJhc2ljT3BlcmF0b3JzIiwibWludXMiLCJkZWNpbWFsUG9pbnQiLCJwcmltZUFyY21pbnV0ZSIsImRvdWJsZVByaW1lQXJjU2Vjb25kIiwiY29uZ3J1ZW50VG8iLCJzaW1pbGFyVG8iLCJhbmdsZSIsIm1lYXN1cmVPZkFuZ2xlIiwidHJpYW5nbGUiLCJub3RDb25ncnVlbnRUbyIsIm5vdFNpbWlsYXIiLCJjc2MiLCJzZWMiLCJjb3QiLCJvdmVybGluZSIsIm92ZXJSaWdodEFycm93Iiwib3ZlckxlZnRSaWdodEFycm93Iiwib3ZlckFyYyIsInBlcnBpbmRpY3VsYXIiLCJwYXJhbGxlbCIsImRpdmlkZSIsImhhbGZJbmZpbml0eSIsIm11bHRpcGx5IiwibGVmdEFycm93IiwicmlnaHRBcnJvdyIsInNxdWFyZSIsInRoZXJlZm9yZSIsImxlZnRyaWdodEFycm93IiwiaW5maW5pdHkiLCJrZXlzRm9yR3JhZGUiLCJudW1iZXIiLCJwYXJzZUludCIsImlzTmFOIiwibWF0Y2giLCJmaW5kIiwiZ3MiLCJBTExfS0VZUyIsIk9iamVjdCIsInZhbHVlcyIsIm1hdHJpY2VzIiwibm9ybWFsaXplQWRkaXRpb25hbEtleXMiLCJhZGRpdGlvbmFsS2V5cyIsImFkZGl0aW9uYWxrZXkiLCJwcmVkZWZpbmVkS2V5Iiwia2V5IiwiY29tbWFuZCIsIm90aGVyTm90YXRpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRUEsSUFBTUEsRUFBRSxHQUFHLENBQ1QsQ0FBQ0MsU0FBUyxDQUFDQyxjQUFYLEVBQTJCQyxJQUFJLENBQUNDLFVBQWhDLEVBQTRDQyxJQUFJLENBQUNDLENBQWpELEVBQW9EQyxRQUFRLENBQUNDLE9BQTdELEVBQXNFRCxRQUFRLENBQUNFLFVBQS9FLENBRFMsRUFFVCxDQUFDQyxTQUFTLENBQUNDLFNBQVgsRUFBc0JOLElBQUksQ0FBQ08sQ0FBM0IsRUFBOEJDLE1BQU0sQ0FBQ0MsU0FBckMsRUFBZ0RQLFFBQVEsQ0FBQ1EsV0FBekQsRUFBc0VSLFFB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LE1BQVAsQ0FBY2pILElBQWQsQ0FmUyxFQUFkOztBQWtCTyxJQUFNbUgsdUJBQXVCLEdBQUcsU0FBMUJBLHVCQUEwQixDQUFDQyxjQUFELEVBQW9CO0FBQ3pELFNBQU8sQ0FBQ0EsY0FBYyxJQUFJLEVBQW5CLEVBQXVCbkYsR0FBdkIsQ0FBMkIsVUFBQ29GLGFBQUQsRUFBbUI7QUFDbkQsUUFBUWhGLEtBQVIsR0FBa0JnRixhQUFsQixDQUFRaEYsS0FBUjtBQUNBLFFBQU1pRixhQUFhLEdBQUcsQ0FBQ1AsUUFBUSxJQUFJLEVBQWIsRUFBaUJGLElBQWpCLENBQ3BCLFVBQUNVLEdBQUQ7QUFBQSxhQUFTbEYsS0FBSyxLQUFLa0YsR0FBRyxDQUFDbEYsS0FBZCxJQUF1QkEsS0FBSyxLQUFLa0YsR0FBRyxDQUFDakYsS0FBckMsSUFBOENELEtBQUssS0FBS2tGLEdBQUcsQ0FBQ0MsT0FBNUQsSUFBdUVuRixLQUFLLEtBQUtrRixHQUFHLENBQUNFLGFBQTlGO0FBQUEsS0FEb0IsQ0FBdEI7QUFJQSxXQUFPLENBQUNwRixLQUFELEdBQVNnRixhQUFULEdBQXlCQyxhQUFhLElBQUlELGFBQWpEO0FBQ0QsR0FQTSxDQUFQO0FBUUQsQ0FUTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNvbXBhcmlzb24gZnJvbSAnLi9jb21wYXJpc29uJztcbmltcG9ydCAqIGFzIHZhcnMgZnJvbSAnLi92YXJzJztcbmltcG9ydCAqIGFzIGZyYWN0aW9ucyBmcm9tICcuL2ZyYWN0aW9ucyc7XG5pbXBvcnQgKiBhcyBleHBvbmVudCBmcm9tICcuL2V4cG9uZW50JztcbmltcG9ydCAqIGFzIG1pc2MgZnJvbSAnLi9taXNjJztcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgKiBhcyB0cmlnb25vbWV0cnkgZnJvbSAnLi90cmlnb25vbWV0cnknO1xuaW1wb3J0ICogYXMgZ2VvbWV0cnkgZnJvbSAnLi9nZW9tZXRyeSc7XG5pbXBvcnQgKiBhcyBvcGVyYXRvcnMgZnJvbSAnLi9vcGVyYXRvcnMnO1xuaW1wb3J0ICogYXMgbG9nIGZyb20gJy4vbG9nJztcbmltcG9ydCAqIGFzIHN1YlN1cCBmcm9tICcuL3N1Yi1zdXAnO1xuaW1wb3J0ICogYXMgc3RhdGlzdGljcyBmcm9tICcuL3N0YXRpc3RpY3MnO1xuaW1wb3J0ICogYXMgYmFzaWNPcGVyYXRvcnMgZnJvbSAnLi9iYXNpYy1vcGVyYXRvcnMnO1xuaW1wb3J0ICogYXMgbWF0cmljZXMgZnJvbSAnLi9tYXRyaWNlcyc7XG5pbXBvcnQgZGlnaXRzIGZyb20gJy4vZGlnaXRzJztcbmltcG9ydCAqIGFzIGxvZ2ljIGZyb20gJy4vbG9naWMnO1xuaW1wb3J0ICogYXMgbmF2IGZyb20gJy4vbmF2aWdhdGlvbic7XG5pbXBvcnQgKiBhcyBlZGl0IGZyb20gJy4vZWRpdCc7XG5cbmNvbnN0IGhzID0gW1xuICBbZnJhY3Rpb25zLmJsYW5rT3ZlckJsYW5rLCBtaXNjLnBlcmNlbnRhZ2UsIHZhcnMueCwgZXhwb25lbnQuc3F1YXJlZCwgZXhwb25lbnQuc3F1YXJlUm9vdF0sXG4gIFtvcGVyYXRvcnMuY2lyY2xlRG90LCB2YXJzLnksIHN1YlN1cC5zdWJzY3JpcHQsIGV4cG9uZW50LnhUb1Bvd2VyT2ZOLCBleHBvbmVudC5udGhSb290XSxcbiAgW21pc2MucGx1c01pbnVzLCBjb21wYXJpc29uLmxlc3NUaGFuLCBjb21wYXJpc29uLmdyZWF0ZXJUaGFuLCBjb21wYXJpc29uLmxlc3NUaGFuRXF1YWwsIGNvbXBhcmlzb24uZ3JlYXRlclRoYW5FcXVhbF0sXG4gIFtjb25zdGFudHMucGksIHZhcnMudGhldGEsIG1pc2MucGFyZW50aGVzaXMsIG1pc2MuYnJhY2tldHMsIG1pc2MuYWJzVmFsdWVdLFxuICBbbWlzYy5ub3RFcXVhbCwgdHJpZ29ub21ldHJ5LnNpbiwgdHJpZ29ub21ldHJ5LmNvcywgdHJpZ29ub21ldHJ5LnRhbiwgZ2VvbWV0cnkuZGVncmVlXSxcbl07XG5cbmNvbnN0IGFkdmFuY2VkQWxnZWJyYSA9ICgoKSA9PiB7XG4gIGNvbnN0IG91dCA9IFsuLi5ocy5tYXAoKGFycikgPT4gWy4uLmFycl0pXTtcblxuICBvdXRbMF0ucHVzaCh7IG5hbWU6ICdpJywgbGF0ZXg6ICdpJywgd3JpdGU6ICdpJyB9KTtcbiAgb3V0WzFdLnB1c2gobG9nLmxvZyk7XG4gIG91dFsyXS5wdXNoKGxvZy5sb2dTdWJzY3JpcHQpO1xuICBvdXRbM10ucHVzaChsb2cubG4pO1xuICBvdXRbNF0ucHVzaChjb25zdGFudHMuZXVsZXJzKTtcbiAgcmV0dXJuIG91dDtcbn0pKCk7XG5cbmNvbnN0IHN0YXRpc3RpY3NTZXQgPSAoKCkgPT4ge1xuICBjb25zdCBvdXQgPSBbLi4uaHMubWFwKChhcnIpID0+IFsuLi5hcnJdKV07XG4gIG91dFswXS5wdXNoKHN0YXRpc3RpY3MubXUpO1xuICBvdXRbMV0ucHVzaChzdGF0aXN0aWNzLnhCYXIpO1xuICBvdXRbMl0ucHVzaChzdGF0aXN0aWNzLnlCYXIpO1xuICBvdXRbM10ucHVzaChzdGF0aXN0aWNzLnNpZ21hKTtcbiAgb3V0WzRdLnB1c2goc3RhdGlzdGljcy5zbWFsbFNpZ21hKTtcbiAgcmV0dXJuIG91dDtcbn0pKCk7XG5cbmV4cG9ydCBjb25zdCBncmFkZVNldHMgPSBbXG4gIHtcbiAgICBwcmVkaWNhdGU6IChuKSA9PiBuID49IDMgJiYgbiA8PSA1LFxuICAgIHNldDogW1xuICAgICAgW2NvbXBhcmlzb24ubGVzc1RoYW4sIGNvbXBhcmlzb24uZ3JlYXRlclRoYW5dLFxuICAgICAgW2ZyYWN0aW9ucy54T3ZlckJsYW5rLCBmcmFjdGlvbnMueEJsYW5rQmxhbmtdLFxuICAgICAgW3ZhcnMueCwgbG9naWMubG9uZ0RpdmlzaW9uXSxcbiAgICAgIFtleHBvbmVudC5zcXVhcmVkLCBleHBvbmVudC54VG9Qb3dlck9mTl0sXG4gICAgXSxcbiAgfSxcbiAge1xuICAgIHByZWRpY2F0ZTogKG4pID0+IG4gPj0gNiAmJiBuIDw9IDcsXG4gICAgc2V0OiBbXG4gICAgICBbZ2VvbWV0cnkuZGVncmVlLCBjb21wYXJpc29uLmxlc3NUaGFuLCBjb21wYXJpc29uLmdyZWF0ZXJUaGFuXSxcbiAgICAgIFtvcGVyYXRvcnMuY2lyY2xlRG90LCBjb21wYXJpc29uLmxlc3NUaGFuRXF1YWwsIGNvbXBhcmlzb24uZ3JlYXRlclRoYW5FcXVhbF0sXG4gICAgICBbdmFycy54LCB2YXJzLnksIGV4cG9uZW50LnNxdWFyZWQsIGV4cG9uZW50LnhUb1Bvd2VyT2ZOXSxcbiAgICAgIFttaXNjLnBsdXNNaW51cywgZnJhY3Rpb25zLnhPdmVyQmxhbmssIGZyYWN0aW9ucy54QmxhbmtCbGFuaywgZXhwb25lbnQuc3F1YXJlUm9vdF0sXG4gICAgICBbY29uc3RhbnRzLnBpLCBtaXNjLnBhcmVudGhlc2lzLCBtaXNjLmFic1ZhbHVlLCBleHBvbmVudC5udGhSb290XSxcbiAgICBdLFxuICB9LFxuICB7XG4gICAgcHJlZGljYXRlOiAobikgPT4gbiA+PSA4IHx8IG4gPT09ICdIUycsXG4gICAgc2V0OiBocyxcbiAgfSxcbiAge1xuICAgIHByZWRpY2F0ZTogJ25vbi1uZWdhdGl2ZS1pbnRlZ2VycycsXG4gICAgc2V0OiBbXG4gICAgICBbZGlnaXRzLnNldmVuLCBkaWdpdHMuZWlnaHQsIGRpZ2l0cy5uaW5lXSxcbiAgICAgIFtkaWdpdHMuZm91ciwgZGlnaXRzLmZpdmUsIGRpZ2l0cy5zaXhdLFxuICAgICAgW2RpZ2l0cy5vbmUsIGRpZ2l0cy50d28sIGRpZ2l0cy50aHJlZV0sXG4gICAgICBbZGlnaXRzLnplcm8sIHsgbmFtZTogJycsIGxhdGV4OiAnJywgd3JpdGU6ICcnIH0sIHsgbmFtZTogJycsIGxhdGV4OiAnJywgd3JpdGU6ICcnIH1dLFxuICAgICAgW25hdi5sZWZ0LCBuYXYucmlnaHQsIGVkaXQuZGVsXSxcbiAgICBdLFxuICB9LFxuICB7XG4gICAgcHJlZGljYXRlOiAnaW50ZWdlcnMnLFxuICAgIHNldDogW1xuICAgICAgW2RpZ2l0cy5zZXZlbiwgZGlnaXRzLmVpZ2h0LCBkaWdpdHMubmluZV0sXG4gICAgICBbZGlnaXRzLmZvdXIsIGRpZ2l0cy5maXZlLCBkaWdpdHMuc2l4XSxcbiAgICAgIFtkaWdpdHMub25lLCBkaWdpdHMudHdvLCBkaWdpdHMudGhyZWVdLFxuICAgICAgW2RpZ2l0cy56ZXJvLCB7IG5hbWU6ICcnLCBsYXRleDogJycsIHdyaXRlOiAnJyB9LCBiYXNpY09wZXJhdG9ycy5taW51c10sXG4gICAgICBbbmF2LmxlZnQsIG5hdi5yaWdodCwgZWRpdC5kZWxdLFxuICAgIF0sXG4gIH0sXG4gIHtcbiAgICBwcmVkaWNhdGU6ICdkZWNpbWFscycsXG4gICAgc2V0OiBbXG4gICAgICBbZGlnaXRzLnNldmVuLCBkaWdpdHMuZWlnaHQsIGRpZ2l0cy5uaW5lXSxcbiAgICAgIFtkaWdpdHMuZm91ciwgZGlnaXRzLmZpdmUsIGRpZ2l0cy5zaXhdLFxuICAgICAgW2RpZ2l0cy5vbmUsIGRpZ2l0cy50d28sIGRpZ2l0cy50aHJlZV0sXG4gICAgICBbZGlnaXRzLnplcm8sIGRpZ2l0cy5kZWNpbWFsUG9pbnQsIGJhc2ljT3BlcmF0b3JzLm1pbnVzXSxcbiAgICAgIFtuYXYubGVmdCwgbmF2LnJpZ2h0LCBlZGl0LmRlbF0sXG4gICAgXSxcbiAgfSxcbiAge1xuICAgIHByZWRpY2F0ZTogJ2ZyYWN0aW9ucycsXG4gICAgc2V0OiBbXG4gICAgICBbZGlnaXRzLnNldmVuLCBkaWdpdHMuZWlnaHQsIGRpZ2l0cy5uaW5lXSxcbiAgICAgIFtkaWdpdHMuZm91ciwgZGlnaXRzLmZpdmUsIGRpZ2l0cy5zaXhdLFxuICAgICAgW2RpZ2l0cy5vbmUsIGRpZ2l0cy50d28sIGRpZ2l0cy50aHJlZV0sXG4gICAgICBbZGlnaXRzLnplcm8sIGZyYWN0aW9ucy5ibGFua092ZXJCbGFuaywgYmFzaWNPcGVyYXRvcnMubWludXNdLFxuICAgICAgW25hdi5sZWZ0LCBuYXYucmlnaHQsIGVkaXQuZGVsXSxcbiAgICBdLFxuICB9LFxuICB7XG4gICAgcHJlZGljYXRlOiAnZ2VvbWV0cnknLFxuICAgIHNldDogW1xuICAgICAgW1xuICAgICAgICBmcmFjdGlvbnMuYmxhbmtPdmVyQmxhbmssXG4gICAgICAgIGdlb21ldHJ5LmRlZ3JlZSxcbiAgICAgICAgZ2VvbWV0cnkucHJpbWVBcmNtaW51dGUsXG4gICAgICAgIGdlb21ldHJ5LmRvdWJsZVByaW1lQXJjU2Vjb25kLFxuICAgICAgICBnZW9tZXRyeS5jb25ncnVlbnRUbyxcbiAgICAgICAgZ2VvbWV0cnkuc2ltaWxhclRvLFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgb3BlcmF0b3JzLmNpcmNsZURvdCxcbiAgICAgICAgZ2VvbWV0cnkuYW5nbGUsXG4gICAgICAgIGdlb21ldHJ5Lm1lYXN1cmVPZkFuZ2xlLFxuICAgICAgICBnZW9tZXRyeS50cmlhbmdsZSxcbiAgICAgICAgZ2VvbWV0cnkubm90Q29uZ3J1ZW50VG8sXG4gICAgICAgIG1pc2Mubm90U2ltaWxhcixcbiAgICAgIF0sXG4gICAgICBbdHJpZ29ub21ldHJ5LnNpbiwgdHJpZ29ub21ldHJ5LmNvcywgdHJpZ29ub21ldHJ5LnRhbiwgY29uc3RhbnRzLnBpLCBleHBvbmVudC5zcXVhcmVSb290LCBleHBvbmVudC5udGhSb290XSxcbiAgICAgIFt0cmlnb25vbWV0cnkuY3NjLCB0cmlnb25vbWV0cnkuc2VjLCB0cmlnb25vbWV0cnkuY290LCB2YXJzLnRoZXRhLCBzdWJTdXAuc3Vic2NyaXB0LCBleHBvbmVudC54VG9Qb3dlck9mTl0sXG4gICAgICBbXG4gICAgICAgIGdlb21ldHJ5Lm92ZXJsaW5lLFxuICAgICAgICBnZW9tZXRyeS5vdmVyUmlnaHRBcnJvdyxcbiAgICAgICAgZ2VvbWV0cnkub3ZlckxlZnRSaWdodEFycm93LFxuICAgICAgICBnZW9tZXRyeS5vdmVyQXJjLFxuICAgICAgICBnZW9tZXRyeS5wZXJwaW5kaWN1bGFyLFxuICAgICAgICBnZW9tZXRyeS5wYXJhbGxlbCxcbiAgICAgIF0sXG4gICAgXSxcbiAgfSxcbiAgLy8ge1xuICAvLyAgIHByZWRpY2F0ZTogJ21pc2NlbGxhbmVvdXMnLFxuICAvLyAgIHNldDogW1xuICAvLyAgICAgW1xuICAvLyAgICAgICBzdWJTdXAuc3VwZXJzY3JpcHQsXG4gIC8vICAgICAgIHN1YlN1cC5zdWJzY3JpcHQsXG4gIC8vICAgICAgIGZyYWN0aW9ucy5ibGFua092ZXJCbGFuayxcbiAgLy8gICAgICAgbWlzYy5wZXJjZW50YWdlLFxuICAvLyAgICAgICBnZW9tZXRyeS5zZWdtZW50LFxuICAvLyAgICAgICBnZW9tZXRyeS5wYXJhbGxlbFxuICAvLyAgICAgXSxcbiAgLy8gICAgIFtcbiAgLy8gICAgICAgZXhwb25lbnQuc3F1YXJlUm9vdCxcbiAgLy8gICAgICAgZXhwb25lbnQubnRoUm9vdCxcbiAgLy8gICAgICAgbWlzYy5hYnNWYWx1ZSxcbiAgLy8gICAgICAgbWlzYy5wYXJlbnRoZXNpcyxcbiAgLy8gICAgICAgZ2VvbWV0cnkucGVycGluZGljdWxhcixcbiAgLy8gICAgICAgZ2VvbWV0cnkuYW5nbGVcbiAgLy8gICAgIF0sXG4gIC8vICAgICBbXG4gIC8vICAgICAgIGNvbXBhcmlzb24ubGVzc1RoYW4sXG4gIC8vICAgICAgIGNvbXBhcmlzb24uZ3JlYXRlclRoYW4sXG4gIC8vICAgICAgIGdlb21ldHJ5LmRlZ3JlZSxcbiAgLy8gICAgICAgbWlzYy5hcHByb3gsXG4gIC8vICAgICAgIGdlb21ldHJ5Lm1lYXN1cmVPZkFuZ2xlLFxuICAvLyAgICAgICBnZW9tZXRyeS50cmlhbmdsZVxuICAvLyAgICAgXSxcbiAgLy8gICAgIFtcbiAgLy8gICAgICAgbWlzYy5uQXBwcm94LFxuICAvLyAgICAgICBtaXNjLm5vdEVxdWFsLFxuICAvLyAgICAgICBnZW9tZXRyeS5jb25ncnVlbnRUbyxcbiAgLy8gICAgICAgZ2VvbWV0cnkubm90Q29uZ3J1ZW50VG8sXG4gIC8vICAgICAgIGdlb21ldHJ5LnBhcmFsbGVsb2dyYW0sXG4gIC8vICAgICAgIGdlb21ldHJ5LmNpcmNsZWREb3RcbiAgLy8gICAgIF0sXG4gIC8vICAgICBbXG4gIC8vICAgICAgIG1pc2Muc2ltaWxhcixcbiAgLy8gICAgICAgbWlzYy5ub3RTaW1pbGFyLFxuICAvLyAgICAgICBjb21wYXJpc29uLmxlc3NUaGFuRXF1YWwsXG4gIC8vICAgICAgIGNvbXBhcmlzb24uZ3JlYXRlclRoYW5FcXVhbCxcbiAgLy8gICAgICAgdmFycy54LFxuICAvLyAgICAgICB2YXJzLnlcbiAgLy8gICAgIF1cbiAgLy8gICBdXG4gIC8vIH0sXG4gIC8vIHtcbiAgLy8gICBwcmVkaWNhdGU6ICdldmVyeXRoaW5nJyxcbiAgLy8gICBzZXQ6IFtcbiAgLy8gICAgIFtcbiAgLy8gICAgICAgc3ViU3VwLnN1cGVyc2NyaXB0LFxuICAvLyAgICAgICBzdWJTdXAuc3Vic2NyaXB0LFxuICAvLyAgICAgICBmcmFjdGlvbnMuYmxhbmtPdmVyQmxhbmssXG4gIC8vICAgICAgIG1pc2MucGVyY2VudGFnZSxcbiAgLy8gICAgICAgZ2VvbWV0cnkuc2VnbWVudCxcbiAgLy8gICAgICAgZ2VvbWV0cnkucGFyYWxsZWxcbiAgLy8gICAgIF0sXG4gIC8vICAgICBbXG4gIC8vICAgICAgIGV4cG9uZW50LnNxdWFyZVJvb3QsXG4gIC8vICAgICAgIGV4cG9uZW50Lm50aFJvb3QsXG4gIC8vICAgICAgIG1pc2MuYWJzVmFsdWUsXG4gIC8vICAgICAgIG1pc2MucGFyZW50aGVzaXMsXG4gIC8vICAgICAgIGdlb21ldHJ5LnBlcnBpbmRpY3VsYXIsXG4gIC8vICAgICAgIGdlb21ldHJ5LmFuZ2xlXG4gIC8vICAgICBdLFxuICAvLyAgICAgW1xuICAvLyAgICAgICBjb21wYXJpc29uLmxlc3NUaGFuLFxuICAvLyAgICAgICBjb21wYXJpc29uLmdyZWF0ZXJUaGFuLFxuICAvLyAgICAgICBnZW9tZXRyeS5kZWdyZWUsXG4gIC8vICAgICAgIG1pc2MuYXBwcm94LFxuICAvLyAgICAgICBnZW9tZXRyeS5tZWFzdXJlT2ZBbmdsZSxcbiAgLy8gICAgICAgZ2VvbWV0cnkudHJpYW5nbGVcbiAgLy8gICAgIF0sXG4gIC8vICAgICBbXG4gIC8vICAgICAgIG1pc2MubkFwcHJveCxcbiAgLy8gICAgICAgbWlzYy5ub3RFcXVhbCxcbiAgLy8gICAgICAgZ2VvbWV0cnkuY29uZ3J1ZW50VG8sXG4gIC8vICAgICAgIGdlb21ldHJ5Lm5vdENvbmdydWVudFRvLFxuICAvLyAgICAgICBnZW9tZXRyeS5wYXJhbGxlbG9ncmFtLFxuICAvLyAgICAgICBnZW9tZXRyeS5jaXJjbGVkRG90XG4gIC8vICAgICBdLFxuICAvLyAgICAgW1xuICAvLyAgICAgICBtaXNjLnNpbWlsYXIsXG4gIC8vICAgICAgIG1pc2Mubm90U2ltaWxhcixcbiAgLy8gICAgICAgY29tcGFyaXNvbi5sZXNzVGhhbkVxdWFsLFxuICAvLyAgICAgICBjb21wYXJpc29uLmdyZWF0ZXJUaGFuRXF1YWwsXG4gIC8vICAgICAgIHZhcnMueCxcbiAgLy8gICAgICAgdmFycy55XG4gIC8vICAgICBdXG4gIC8vICAgXVxuICAvLyB9LFxuICB7XG4gICAgcHJlZGljYXRlOiAnYWR2YW5jZWQtYWxnZWJyYScsXG4gICAgc2V0OiBhZHZhbmNlZEFsZ2VicmEsXG4gIH0sXG4gIHtcbiAgICBwcmVkaWNhdGU6ICdzdGF0aXN0aWNzJyxcbiAgICBzZXQ6IHN0YXRpc3RpY3NTZXQsXG4gIH0sXG4gIHtcbiAgICBwcmVkaWNhdGU6ICdpdGVtLWF1dGhvcmluZycsXG4gICAgc2V0OiBbXG4gICAgICBbXG4gICAgICAgIGJhc2ljT3BlcmF0b3JzLmRpdmlkZSxcbiAgICAgICAgZnJhY3Rpb25zLmJsYW5rT3ZlckJsYW5rLFxuICAgICAgICBsb2dpYy5sb25nRGl2aXNpb24sXG4gICAgICAgIGNvbnN0YW50cy5oYWxmSW5maW5pdHksXG4gICAgICAgIGV4cG9uZW50LnNxdWFyZWQsXG4gICAgICAgIGV4cG9uZW50LnNxdWFyZVJvb3QsXG4gICAgICAgIGdlb21ldHJ5Lm92ZXJsaW5lLFxuICAgICAgICBnZW9tZXRyeS5vdmVyUmlnaHRBcnJvdyxcbiAgICAgICAgZ2VvbWV0cnkub3ZlckxlZnRSaWdodEFycm93LFxuICAgICAgICBsb2cubG9nLFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgYmFzaWNPcGVyYXRvcnMubXVsdGlwbHksXG4gICAgICAgIG9wZXJhdG9ycy5jaXJjbGVEb3QsXG4gICAgICAgIHsgbmFtZTogJycsIGxhdGV4OiAnJywgd3JpdGU6ICcnIH0sXG4gICAgICAgIHN1YlN1cC5zdWJzY3JpcHQsXG4gICAgICAgIGV4cG9uZW50LnhUb1Bvd2VyT2ZOLFxuICAgICAgICBleHBvbmVudC5udGhSb290LFxuICAgICAgICBnZW9tZXRyeS5wZXJwaW5kaWN1bGFyLFxuICAgICAgICBnZW9tZXRyeS5wYXJhbGxlbCxcbiAgICAgICAgZ2VvbWV0cnkub3ZlckFyYyxcbiAgICAgICAgbG9nLmxvZ1N1YnNjcmlwdCxcbiAgICAgIF0sXG4gICAgICBbXG4gICAgICAgIG1pc2MucGx1c01pbnVzLFxuICAgICAgICBjb25zdGFudHMucGksXG4gICAgICAgIHZhcnMudGhldGEsXG4gICAgICAgIGdlb21ldHJ5LmRlZ3JlZSxcbiAgICAgICAgZ2VvbWV0cnkuYW5nbGUsXG4gICAgICAgIGdlb21ldHJ5LmxlZnRBcnJvdyxcbiAgICAgICAgZ2VvbWV0cnkucmlnaHRBcnJvdyxcbiAgICAgICAgZ2VvbWV0cnkudHJpYW5nbGUsXG4gICAgICAgIGdlb21ldHJ5LnNxdWFyZSxcbiAgICAgICAgbG9nLmxuLFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgbWlzYy5ub3RFcXVhbCxcbiAgICAgICAgbWlzYy5hYnNWYWx1ZSxcbiAgICAgICAgc3RhdGlzdGljcy5zbWFsbFNpZ21hLFxuICAgICAgICBzdGF0aXN0aWNzLm11LFxuICAgICAgICBsb2dpYy50aGVyZWZvcmUsXG4gICAgICAgIHN0YXRpc3RpY3Muc2lnbWEsXG4gICAgICAgIGdlb21ldHJ5LmxlZnRyaWdodEFycm93LFxuICAgICAgICB0cmlnb25vbWV0cnkuc2luLFxuICAgICAgICB0cmlnb25vbWV0cnkuY29zLFxuICAgICAgICB0cmlnb25vbWV0cnkudGFuLFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgY29tcGFyaXNvbi5sZXNzVGhhbkVxdWFsLFxuICAgICAgICBjb21wYXJpc29uLmdyZWF0ZXJUaGFuRXF1YWwsXG4gICAgICAgIHsgbmFtZTogJycsIGxhdGV4OiAnJywgd3JpdGU6ICcnIH0sXG4gICAgICAgIHsgbmFtZTogJycsIGxhdGV4OiAnJywgd3JpdGU6ICcnIH0sXG4gICAgICAgIGNvbnN0YW50cy5pbmZpbml0eSxcbiAgICAgICAgeyBuYW1lOiAnJywgbGF0ZXg6ICcnLCB3cml0ZTogJycgfSxcbiAgICAgICAgeyBuYW1lOiAnJywgbGF0ZXg6ICcnLCB3cml0ZTogJycgfSxcbiAgICAgICAgdHJpZ29ub21ldHJ5LmNzYyxcbiAgICAgICAgdHJpZ29ub21ldHJ5LnNlYyxcbiAgICAgICAgdHJpZ29ub21ldHJ5LmNvdCxcbiAgICAgIF0sXG4gICAgXSxcbiAgfSxcbiAgLy8gZm9yIGdyYWRlIDEtMiwgd2Ugd2FudCB0byBkaXNwbGF5IHRoZSBiYXNlIHNldCBvbmx5XG4gIC8vIHdlIG5lZWQgaXQgaGVyZSBiZWNhdXNlIHdlIGRvbid0IHdhbnQgdG8gZGlzcGxheSB0aGUgZGVmYXVsdCBzZXQgKGdyYWRlIDgpXG4gIHtcbiAgICBwcmVkaWNhdGU6IChuKSA9PiBuID49IDEgJiYgbiA8PSAyLFxuICAgIHNldDogW10sXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3Qga2V5c0ZvckdyYWRlID0gKG4pID0+IHtcbiAgY29uc3QgbnVtYmVyID0gcGFyc2VJbnQobiwgMTApO1xuICBuID0gaXNOYU4obnVtYmVyKSA/IG4gOiBudW1iZXI7XG4gIGlmICghbikge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGNvbnN0IG1hdGNoID0gZ3JhZGVTZXRzLmZpbmQoKGdzKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBncy5wcmVkaWNhdGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gZ3MucHJlZGljYXRlID09PSBuO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZ3MucHJlZGljYXRlKG4pO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1hdGNoKSB7XG4gICAgcmV0dXJuIG1hdGNoLnNldCB8fCBbXTtcbiAgfVxuXG4gIC8vIGlmIHRoZSBncmFkZSBpcyBub3QgZm91bmQsIHJldHVybiB0aGUgZGVmYXVsdCBzZXQgd2hpY2ggaXMgZ3JhZGUgOCAoYXMgcGVyIFBELTM1NDkpLCBmb3IgbW9kZSBsYW5ndWFnZSBpdCBpcyBub3QgdGhlIGRlZmF1bHRcbiAgaWYgKG4gIT09ICdsYW5ndWFnZScpIHtcbiAgICByZXR1cm4gZ3JhZGVTZXRzWzJdLnNldDtcbiAgfVxufTtcblxuY29uc3QgQUxMX0tFWVMgPSBbXG4gIC4uLk9iamVjdC52YWx1ZXMoYmFzaWNPcGVyYXRvcnMpLFxuICAuLi5PYmplY3QudmFsdWVzKGNvbXBhcmlzb24pLFxuICAuLi5PYmplY3QudmFsdWVzKGNvbnN0YW50cyksXG4gIC4uLk9iamVjdC52YWx1ZXMoZGlnaXRzKSxcbiAgLi4uT2JqZWN0LnZhbHVlcyhleHBvbmVudCksXG4gIC4uLk9iamVjdC52YWx1ZXMoZnJhY3Rpb25zKSxcbiAgLi4uT2JqZWN0LnZhbHVlcyhnZW9tZXRyeSksXG4gIC4uLk9iamVjdC52YWx1ZXMobG9nKSxcbiAgLi4uT2JqZWN0LnZhbHVlcyhtYXRyaWNlcyksXG4gIC4uLk9iamVjdC52YWx1ZXMobWlzYyksXG4gIC4uLk9iamVjdC52YWx1ZXMob3BlcmF0b3JzKSxcbiAgLi4uT2JqZWN0LnZhbHVlcyhzdGF0aXN0aWNzKSxcbiAgLi4uT2JqZWN0LnZhbHVlcyhzdWJTdXApLFxuICAuLi5PYmplY3QudmFsdWVzKHRyaWdvbm9tZXRyeSksXG4gIC4uLk9iamVjdC52YWx1ZXModmFycyksXG5dO1xuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplQWRkaXRpb25hbEtleXMgPSAoYWRkaXRpb25hbEtleXMpID0+IHtcbiAgcmV0dXJuIChhZGRpdGlvbmFsS2V5cyB8fCBbXSkubWFwKChhZGRpdGlvbmFsa2V5KSA9PiB7XG4gICAgY29uc3QgeyBsYXRleCB9ID0gYWRkaXRpb25hbGtleTtcbiAgICBjb25zdCBwcmVkZWZpbmVkS2V5ID0gKEFMTF9LRVlTIHx8IFtdKS5maW5kKFxuICAgICAgKGtleSkgPT4gbGF0ZXggPT09IGtleS5sYXRleCB8fCBsYXRleCA9PT0ga2V5LndyaXRlIHx8IGxhdGV4ID09PSBrZXkuY29tbWFuZCB8fCBsYXRleCA9PT0ga2V5Lm90aGVyTm90YXRpb24sXG4gICAgKTtcblxuICAgIHJldHVybiAhbGF0ZXggPyBhZGRpdGlvbmFsa2V5IDogcHJlZGVmaW5lZEtleSB8fCBhZGRpdGlvbmFsa2V5O1xuICB9KTtcbn07XG4iXX0=
package/lib/keys/index.js DELETED
@@ -1,54 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.misc = exports.fractions = exports.exponent = exports.comparison = exports.baseSet = void 0;
11
-
12
- var _digits = _interopRequireDefault(require("./digits"));
13
-
14
- var nav = _interopRequireWildcard(require("./navigation"));
15
-
16
- var edit = _interopRequireWildcard(require("./edit"));
17
-
18
- var _basicOperators = require("./basic-operators");
19
-
20
- var comparison = _interopRequireWildcard(require("./comparison"));
21
-
22
- exports.comparison = comparison;
23
-
24
- var fractions = _interopRequireWildcard(require("./fractions"));
25
-
26
- exports.fractions = fractions;
27
-
28
- var exponent = _interopRequireWildcard(require("./exponent"));
29
-
30
- exports.exponent = exponent;
31
-
32
- var misc = _interopRequireWildcard(require("./misc"));
33
-
34
- exports.misc = misc;
35
-
36
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
-
38
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
-
40
- var one = _digits["default"].one,
41
- two = _digits["default"].two,
42
- three = _digits["default"].three,
43
- four = _digits["default"].four,
44
- five = _digits["default"].five,
45
- six = _digits["default"].six,
46
- seven = _digits["default"].seven,
47
- eight = _digits["default"].eight,
48
- nine = _digits["default"].nine,
49
- zero = _digits["default"].zero,
50
- comma = _digits["default"].comma,
51
- decimalPoint = _digits["default"].decimalPoint;
52
- var baseSet = [[seven, eight, nine, _basicOperators.divide], [four, five, six, _basicOperators.multiply], [one, two, three, _basicOperators.minus], [zero, decimalPoint, comma, _basicOperators.plus], [nav.left, nav.right, edit.del, _basicOperators.equals]];
53
- exports.baseSet = baseSet;
54
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL2luZGV4LmpzIl0sIm5hbWVzIjpbIm9uZSIsImRpZ2l0cyIsInR3byIsInRocmVlIiwiZm91ciIsImZpdmUiLCJzaXgiLCJzZXZlbiIsImVpZ2h0IiwibmluZSIsInplcm8iLCJjb21tYSIsImRlY2ltYWxQb2ludCIsImJhc2VTZXQiLCJkaXZpZGUiLCJtdWx0aXBseSIsIm1pbnVzIiwicGx1cyIsIm5hdiIsImxlZnQiLCJyaWdodCIsImVkaXQiLCJkZWwiLCJlcXVhbHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBWUE7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7Ozs7O0FBYkEsSUFBUUEsR0FBUixHQUE0RkMsa0JBQTVGLENBQVFELEdBQVI7QUFBQSxJQUFhRSxHQUFiLEdBQTRGRCxrQkFBNUYsQ0FBYUMsR0FBYjtBQUFBLElBQWtCQyxLQUFsQixHQUE0RkYsa0JBQTVGLENBQWtCRSxLQUFsQjtBQUFBLElBQXlCQyxJQUF6QixHQUE0Rkgsa0JBQTVGLENBQXlCRyxJQUF6QjtBQUFBLElBQStCQyxJQUEvQixHQUE0Rkosa0JBQTVGLENBQStCSSxJQUEvQjtBQUFBLElBQXFDQyxHQUFyQyxHQUE0Rkwsa0JBQTVGLENBQXFDSyxHQUFyQztBQUFBLElBQTBDQyxLQUExQyxHQUE0Rk4sa0JBQTVGLENBQTBDTSxLQUExQztBQUFBLElBQWlEQyxLQUFqRCxHQUE0RlAsa0JBQTVGLENBQWlETyxLQUFqRDtBQUFBLElBQXdEQyxJQUF4RCxHQUE0RlIsa0JBQTVGLENBQXdEUSxJQUF4RDtBQUFBLElBQThEQyxJQUE5RCxHQUE0RlQsa0JBQTVGLENBQThEUyxJQUE5RDtBQUFBLElBQW9FQyxLQUFwRSxHQUE0RlYsa0JBQTVGLENBQW9FVSxLQUFwRTtBQUFBLElBQTJFQyxZQUEzRSxHQUE0Rlgsa0JBQTVGLENBQTJFVyxZQUEzRTtBQUVPLElBQU1DLE9BQU8sR0FBRyxDQUNyQixDQUFDTixLQUFELEVBQVFDLEtBQVIsRUFBZUMsSUFBZixFQUFxQkssc0JBQXJCLENBRHFCLEVBRXJCLENBQUNWLElBQUQsRUFBT0MsSUFBUCxFQUFhQyxHQUFiLEVBQWtCUyx3QkFBbEIsQ0FGcUIsRUFHckIsQ0FBQ2YsR0FBRCxFQUFNRSxHQUFOLEVBQVdDLEtBQVgsRUFBa0JhLHFCQUFsQixDQUhxQixFQUlyQixDQUFDTixJQUFELEVBQU9FLFlBQVAsRUFBcUJELEtBQXJCLEVBQTRCTSxvQkFBNUIsQ0FKcUIsRUFLckIsQ0FBQ0MsR0FBRyxDQUFDQyxJQUFMLEVBQVdELEdBQUcsQ0FBQ0UsS0FBZixFQUFzQkMsSUFBSSxDQUFDQyxHQUEzQixFQUFnQ0Msc0JBQWhDLENBTHFCLENBQWhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRpZ2l0cyBmcm9tICcuL2RpZ2l0cyc7XG5pbXBvcnQgKiBhcyBuYXYgZnJvbSAnLi9uYXZpZ2F0aW9uJztcbmltcG9ydCAqIGFzIGVkaXQgZnJvbSAnLi9lZGl0JztcbmltcG9ydCB7IGRpdmlkZSwgbXVsdGlwbHksIHBsdXMsIG1pbnVzLCBlcXVhbHMgfSBmcm9tICcuL2Jhc2ljLW9wZXJhdG9ycyc7XG5cbmNvbnN0IHsgb25lLCB0d28sIHRocmVlLCBmb3VyLCBmaXZlLCBzaXgsIHNldmVuLCBlaWdodCwgbmluZSwgemVybywgY29tbWEsIGRlY2ltYWxQb2ludCB9ID0gZGlnaXRzO1xuXG5leHBvcnQgY29uc3QgYmFzZVNldCA9IFtcbiAgW3NldmVuLCBlaWdodCwgbmluZSwgZGl2aWRlXSxcbiAgW2ZvdXIsIGZpdmUsIHNpeCwgbXVsdGlwbHldLFxuICBbb25lLCB0d28sIHRocmVlLCBtaW51c10sXG4gIFt6ZXJvLCBkZWNpbWFsUG9pbnQsIGNvbW1hLCBwbHVzXSxcbiAgW25hdi5sZWZ0LCBuYXYucmlnaHQsIGVkaXQuZGVsLCBlcXVhbHNdLFxuXTtcblxuaW1wb3J0ICogYXMgY29tcGFyaXNvbiBmcm9tICcuL2NvbXBhcmlzb24nO1xuaW1wb3J0ICogYXMgZnJhY3Rpb25zIGZyb20gJy4vZnJhY3Rpb25zJztcbmltcG9ydCAqIGFzIGV4cG9uZW50IGZyb20gJy4vZXhwb25lbnQnO1xuaW1wb3J0ICogYXMgbWlzYyBmcm9tICcuL21pc2MnO1xuXG5leHBvcnQgeyBjb21wYXJpc29uLCBmcmFjdGlvbnMsIGV4cG9uZW50LCBtaXNjIH07XG4iXX0=
package/lib/keys/log.js DELETED
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.logSubscript = exports.log = exports.ln = void 0;
7
-
8
- var _utils = require("./utils");
9
-
10
- var set = (0, _utils.mkSet)('log');
11
- var log = set({
12
- name: 'Log',
13
- label: 'log',
14
- command: '\\log',
15
- latex: '\\log'
16
- });
17
- exports.log = log;
18
- var logSubscript = set({
19
- name: 'log base n',
20
- label: 'log s',
21
- latex: '\\log_{}',
22
- command: ['\\log', '_']
23
- });
24
- exports.logSubscript = logSubscript;
25
- var ln = set({
26
- name: 'natural log',
27
- label: 'ln',
28
- command: '\\ln',
29
- latex: '\\ln'
30
- });
31
- exports.ln = ln;
32
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL2xvZy5qcyJdLCJuYW1lcyI6WyJzZXQiLCJsb2ciLCJuYW1lIiwibGFiZWwiLCJjb21tYW5kIiwibGF0ZXgiLCJsb2dTdWJzY3JpcHQiLCJsbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBLElBQU1BLEdBQUcsR0FBRyxrQkFBTSxLQUFOLENBQVo7QUFFTyxJQUFNQyxHQUFHLEdBQUdELEdBQUcsQ0FBQztBQUNyQkUsRUFBQUEsSUFBSSxFQUFFLEtBRGU7QUFFckJDLEVBQUFBLEtBQUssRUFBRSxLQUZjO0FBR3JCQyxFQUFBQSxPQUFPLEVBQUUsT0FIWTtBQUlyQkMsRUFBQUEsS0FBSyxFQUFFO0FBSmMsQ0FBRCxDQUFmOztBQU1BLElBQU1DLFlBQVksR0FBR04sR0FBRyxDQUFDO0FBQzlCRSxFQUFBQSxJQUFJLEVBQUUsWUFEd0I7QUFFOUJDLEVBQUFBLEtBQUssRUFBRSxPQUZ1QjtBQUc5QkUsRUFBQUEsS0FBSyxFQUFFLFVBSHVCO0FBSTlCRCxFQUFBQSxPQUFPLEVBQUUsQ0FBQyxPQUFELEVBQVUsR0FBVjtBQUpxQixDQUFELENBQXhCOztBQU1BLElBQU1HLEVBQUUsR0FBR1AsR0FBRyxDQUFDO0FBQ3BCRSxFQUFBQSxJQUFJLEVBQUUsYUFEYztBQUVwQkMsRUFBQUEsS0FBSyxFQUFFLElBRmE7QUFHcEJDLEVBQUFBLE9BQU8sRUFBRSxNQUhXO0FBSXBCQyxFQUFBQSxLQUFLLEVBQUU7QUFKYSxDQUFELENBQWQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBta1NldCB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBzZXQgPSBta1NldCgnbG9nJyk7XG5cbmV4cG9ydCBjb25zdCBsb2cgPSBzZXQoe1xuICBuYW1lOiAnTG9nJyxcbiAgbGFiZWw6ICdsb2cnLFxuICBjb21tYW5kOiAnXFxcXGxvZycsXG4gIGxhdGV4OiAnXFxcXGxvZycsXG59KTtcbmV4cG9ydCBjb25zdCBsb2dTdWJzY3JpcHQgPSBzZXQoe1xuICBuYW1lOiAnbG9nIGJhc2UgbicsXG4gIGxhYmVsOiAnbG9nIHMnLFxuICBsYXRleDogJ1xcXFxsb2dfe30nLFxuICBjb21tYW5kOiBbJ1xcXFxsb2cnLCAnXyddLFxufSk7XG5leHBvcnQgY29uc3QgbG4gPSBzZXQoe1xuICBuYW1lOiAnbmF0dXJhbCBsb2cnLFxuICBsYWJlbDogJ2xuJyxcbiAgY29tbWFuZDogJ1xcXFxsbicsXG4gIGxhdGV4OiAnXFxcXGxuJyxcbn0pO1xuIl19
package/lib/keys/logic.js DELETED
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.therefore = exports.longDivision = void 0;
7
-
8
- var _utils = require("./utils");
9
-
10
- var set = (0, _utils.mkSet)('logic');
11
- var therefore = set({
12
- name: 'Therefore',
13
- label: '∴',
14
- write: '∴'
15
- });
16
- exports.therefore = therefore;
17
- var longDivision = set({
18
- name: 'Long division',
19
- latex: '\\longdiv{}',
20
- command: '\\longdiv'
21
- });
22
- exports.longDivision = longDivision;
23
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL2xvZ2ljLmpzIl0sIm5hbWVzIjpbInNldCIsInRoZXJlZm9yZSIsIm5hbWUiLCJsYWJlbCIsIndyaXRlIiwibG9uZ0RpdmlzaW9uIiwibGF0ZXgiLCJjb21tYW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUEsSUFBTUEsR0FBRyxHQUFHLGtCQUFNLE9BQU4sQ0FBWjtBQUVPLElBQU1DLFNBQVMsR0FBR0QsR0FBRyxDQUFDO0FBQzNCRSxFQUFBQSxJQUFJLEVBQUUsV0FEcUI7QUFFM0JDLEVBQUFBLEtBQUssRUFBRSxHQUZvQjtBQUczQkMsRUFBQUEsS0FBSyxFQUFFO0FBSG9CLENBQUQsQ0FBckI7O0FBTUEsSUFBTUMsWUFBWSxHQUFHTCxHQUFHLENBQUM7QUFDOUJFLEVBQUFBLElBQUksRUFBRSxlQUR3QjtBQUU5QkksRUFBQUEsS0FBSyxFQUFFLGFBRnVCO0FBRzlCQyxFQUFBQSxPQUFPLEVBQUU7QUFIcUIsQ0FBRCxDQUF4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1rU2V0IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IHNldCA9IG1rU2V0KCdsb2dpYycpO1xuXG5leHBvcnQgY29uc3QgdGhlcmVmb3JlID0gc2V0KHtcbiAgbmFtZTogJ1RoZXJlZm9yZScsXG4gIGxhYmVsOiAn4oi0JyxcbiAgd3JpdGU6ICfiiLQnLFxufSk7XG5cbmV4cG9ydCBjb25zdCBsb25nRGl2aXNpb24gPSBzZXQoe1xuICBuYW1lOiAnTG9uZyBkaXZpc2lvbicsXG4gIGxhdGV4OiAnXFxcXGxvbmdkaXZ7fScsXG4gIGNvbW1hbmQ6ICdcXFxcbG9uZ2RpdicsXG59KTtcbiJdfQ==
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.singleCellMatrix = exports.doubleCellMatrix = void 0;
7
-
8
- var _utils = require("./utils");
9
-
10
- var set = (0, _utils.mkSet)('matrices');
11
- var singleCellMatrix = set({
12
- name: 'Single Cell Matrix',
13
- label: '[ ]',
14
- write: '\\begin{pmatrix}\\end{pmatrix}'
15
- });
16
- exports.singleCellMatrix = singleCellMatrix;
17
- var doubleCellMatrix = set({
18
- name: 'Double Cell Matrix',
19
- label: '[ ] [ ] \\\\newline [ ] [ ]',
20
- write: '\\begin{bmatrix}&\\\\&\\end{bmatrix}'
21
- });
22
- exports.doubleCellMatrix = doubleCellMatrix;
23
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL21hdHJpY2VzLmpzIl0sIm5hbWVzIjpbInNldCIsInNpbmdsZUNlbGxNYXRyaXgiLCJuYW1lIiwibGFiZWwiLCJ3cml0ZSIsImRvdWJsZUNlbGxNYXRyaXgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQSxJQUFNQSxHQUFHLEdBQUcsa0JBQU0sVUFBTixDQUFaO0FBRU8sSUFBTUMsZ0JBQWdCLEdBQUdELEdBQUcsQ0FBQztBQUNsQ0UsRUFBQUEsSUFBSSxFQUFFLG9CQUQ0QjtBQUVsQ0MsRUFBQUEsS0FBSyxFQUFFLEtBRjJCO0FBR2xDQyxFQUFBQSxLQUFLLEVBQUU7QUFIMkIsQ0FBRCxDQUE1Qjs7QUFNQSxJQUFNQyxnQkFBZ0IsR0FBR0wsR0FBRyxDQUFDO0FBQ2xDRSxFQUFBQSxJQUFJLEVBQUUsb0JBRDRCO0FBRWxDQyxFQUFBQSxLQUFLLEVBQUUsNkJBRjJCO0FBR2xDQyxFQUFBQSxLQUFLLEVBQUU7QUFIMkIsQ0FBRCxDQUE1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1rU2V0IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IHNldCA9IG1rU2V0KCdtYXRyaWNlcycpO1xuXG5leHBvcnQgY29uc3Qgc2luZ2xlQ2VsbE1hdHJpeCA9IHNldCh7XG4gIG5hbWU6ICdTaW5nbGUgQ2VsbCBNYXRyaXgnLFxuICBsYWJlbDogJ1sgXScsXG4gIHdyaXRlOiAnXFxcXGJlZ2lue3BtYXRyaXh9XFxcXGVuZHtwbWF0cml4fScsXG59KTtcblxuZXhwb3J0IGNvbnN0IGRvdWJsZUNlbGxNYXRyaXggPSBzZXQoe1xuICBuYW1lOiAnRG91YmxlIENlbGwgTWF0cml4JyxcbiAgbGFiZWw6ICdbIF0gWyBdIFxcXFxcXFxcbmV3bGluZSBbIF0gWyBdJyxcbiAgd3JpdGU6ICdcXFxcYmVnaW57Ym1hdHJpeH0mXFxcXFxcXFwmXFxcXGVuZHtibWF0cml4fScsXG59KTtcbiJdfQ==
package/lib/keys/misc.js DELETED
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.similar = exports.plusMinus = exports.percentage = exports.parenthesis = exports.notSimilar = exports.notEqual = exports.nApprox = exports.brackets = exports.approx = exports.absValue = void 0;
7
-
8
- var _utils = require("./utils");
9
-
10
- var set = (0, _utils.mkSet)('misc');
11
- var plusMinus = set({
12
- name: 'Plus or Minus',
13
- latex: '\\pm',
14
- write: '\\pm'
15
- });
16
- exports.plusMinus = plusMinus;
17
- var absValue = set({
18
- name: 'Absolute Value',
19
- latex: '\\abs{}',
20
- symbol: '| |',
21
- command: '|'
22
- });
23
- exports.absValue = absValue;
24
- var parenthesis = set({
25
- name: 'Parenthesis',
26
- latex: '\\left(\\right)',
27
- symbol: '( )',
28
- command: '('
29
- });
30
- exports.parenthesis = parenthesis;
31
- var brackets = set({
32
- name: 'Brackets',
33
- latex: '\\left[\\right]',
34
- symbol: '[ ]',
35
- command: '['
36
- });
37
- exports.brackets = brackets;
38
- var percentage = set({
39
- name: 'Percent',
40
- latex: '%',
41
- command: '%'
42
- });
43
- exports.percentage = percentage;
44
- var approx = set({
45
- latex: '\\approx',
46
- command: '\\approx',
47
- ariaLabel: 'Approximately equal to'
48
- });
49
- exports.approx = approx;
50
- var nApprox = set({
51
- latex: '\\napprox',
52
- command: '\\napprox',
53
- ariaLabel: 'Not pproximately equal to'
54
- });
55
- exports.nApprox = nApprox;
56
- var notEqual = set({
57
- latex: '\\neq',
58
- command: '\\neq',
59
- ariaLabel: 'Not equals'
60
- });
61
- exports.notEqual = notEqual;
62
- var similar = set({
63
- latex: '\\sim',
64
- command: '\\sim',
65
- ariaLabel: 'Similar'
66
- });
67
- exports.similar = similar;
68
- var notSimilar = set({
69
- latex: '\\nsim',
70
- command: '\\nsim',
71
- ariaLabel: 'Not similar'
72
- });
73
- exports.notSimilar = notSimilar;
74
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL21pc2MuanMiXSwibmFtZXMiOlsic2V0IiwicGx1c01pbnVzIiwibmFtZSIsImxhdGV4Iiwid3JpdGUiLCJhYnNWYWx1ZSIsInN5bWJvbCIsImNvbW1hbmQiLCJwYXJlbnRoZXNpcyIsImJyYWNrZXRzIiwicGVyY2VudGFnZSIsImFwcHJveCIsImFyaWFMYWJlbCIsIm5BcHByb3giLCJub3RFcXVhbCIsInNpbWlsYXIiLCJub3RTaW1pbGFyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUEsSUFBTUEsR0FBRyxHQUFHLGtCQUFNLE1BQU4sQ0FBWjtBQUVPLElBQU1DLFNBQVMsR0FBR0QsR0FBRyxDQUFDO0FBQzNCRSxFQUFBQSxJQUFJLEVBQUUsZUFEcUI7QUFFM0JDLEVBQUFBLEtBQUssRUFBRSxNQUZvQjtBQUczQkMsRUFBQUEsS0FBSyxFQUFFO0FBSG9CLENBQUQsQ0FBckI7O0FBTUEsSUFBTUMsUUFBUSxHQUFHTCxHQUFHLENBQUM7QUFDMUJFLEVBQUFBLElBQUksRUFBRSxnQkFEb0I7QUFFMUJDLEVBQUFBLEtBQUssRUFBRSxTQUZtQjtBQUcxQkcsRUFBQUEsTUFBTSxFQUFFLEtBSGtCO0FBSTFCQyxFQUFBQSxPQUFPLEVBQUU7QUFKaUIsQ0FBRCxDQUFwQjs7QUFPQSxJQUFNQyxXQUFXLEdBQUdSLEdBQUcsQ0FBQztBQUM3QkUsRUFBQUEsSUFBSSxFQUFFLGFBRHVCO0FBRTdCQyxFQUFBQSxLQUFLLEVBQUUsaUJBRnNCO0FBRzdCRyxFQUFBQSxNQUFNLEVBQUUsS0FIcUI7QUFJN0JDLEVBQUFBLE9BQU8sRUFBRTtBQUpvQixDQUFELENBQXZCOztBQU9BLElBQU1FLFFBQVEsR0FBR1QsR0FBRyxDQUFDO0FBQzFCRSxFQUFBQSxJQUFJLEVBQUUsVUFEb0I7QUFFMUJDLEVBQUFBLEtBQUssRUFBRSxpQkFGbUI7QUFHMUJHLEVBQUFBLE1BQU0sRUFBRSxLQUhrQjtBQUkxQkMsRUFBQUEsT0FBTyxFQUFFO0FBSmlCLENBQUQsQ0FBcEI7O0FBT0EsSUFBTUcsVUFBVSxHQUFHVixHQUFHLENBQUM7QUFDNUJFLEVBQUFBLElBQUksRUFBRSxTQURzQjtBQUU1QkMsRUFBQUEsS0FBSyxFQUFFLEdBRnFCO0FBRzVCSSxFQUFBQSxPQUFPLEVBQUU7QUFIbUIsQ0FBRCxDQUF0Qjs7QUFNQSxJQUFNSSxNQUFNLEdBQUdYLEdBQUcsQ0FBQztBQUN4QkcsRUFBQUEsS0FBSyxFQUFFLFVBRGlCO0FBRXhCSSxFQUFBQSxPQUFPLEVBQUUsVUFGZTtBQUd4QkssRUFBQUEsU0FBUyxFQUFFO0FBSGEsQ0FBRCxDQUFsQjs7QUFNQSxJQUFNQyxPQUFPLEdBQUdiLEdBQUcsQ0FBQztBQUN6QkcsRUFBQUEsS0FBSyxFQUFFLFdBRGtCO0FBRXpCSSxFQUFBQSxPQUFPLEVBQUUsV0FGZ0I7QUFHekJLLEVBQUFBLFNBQVMsRUFBRTtBQUhjLENBQUQsQ0FBbkI7O0FBTUEsSUFBTUUsUUFBUSxHQUFHZCxHQUFHLENBQUM7QUFDMUJHLEVBQUFBLEtBQUssRUFBRSxPQURtQjtBQUUxQkksRUFBQUEsT0FBTyxFQUFFLE9BRmlCO0FBRzFCSyxFQUFBQSxTQUFTLEVBQUU7QUFIZSxDQUFELENBQXBCOztBQU1BLElBQU1HLE9BQU8sR0FBR2YsR0FBRyxDQUFDO0FBQ3pCRyxFQUFBQSxLQUFLLEVBQUUsT0FEa0I7QUFFekJJLEVBQUFBLE9BQU8sRUFBRSxPQUZnQjtBQUd6QkssRUFBQUEsU0FBUyxFQUFFO0FBSGMsQ0FBRCxDQUFuQjs7QUFLQSxJQUFNSSxVQUFVLEdBQUdoQixHQUFHLENBQUM7QUFDNUJHLEVBQUFBLEtBQUssRUFBRSxRQURxQjtBQUU1QkksRUFBQUEsT0FBTyxFQUFFLFFBRm1CO0FBRzVCSyxFQUFBQSxTQUFTLEVBQUU7QUFIaUIsQ0FBRCxDQUF0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1rU2V0IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IHNldCA9IG1rU2V0KCdtaXNjJyk7XG5cbmV4cG9ydCBjb25zdCBwbHVzTWludXMgPSBzZXQoe1xuICBuYW1lOiAnUGx1cyBvciBNaW51cycsXG4gIGxhdGV4OiAnXFxcXHBtJyxcbiAgd3JpdGU6ICdcXFxccG0nLFxufSk7XG5cbmV4cG9ydCBjb25zdCBhYnNWYWx1ZSA9IHNldCh7XG4gIG5hbWU6ICdBYnNvbHV0ZSBWYWx1ZScsXG4gIGxhdGV4OiAnXFxcXGFic3t9JyxcbiAgc3ltYm9sOiAnfCB8JyxcbiAgY29tbWFuZDogJ3wnLFxufSk7XG5cbmV4cG9ydCBjb25zdCBwYXJlbnRoZXNpcyA9IHNldCh7XG4gIG5hbWU6ICdQYXJlbnRoZXNpcycsXG4gIGxhdGV4OiAnXFxcXGxlZnQoXFxcXHJpZ2h0KScsXG4gIHN5bWJvbDogJyggKScsXG4gIGNvbW1hbmQ6ICcoJyxcbn0pO1xuXG5leHBvcnQgY29uc3QgYnJhY2tldHMgPSBzZXQoe1xuICBuYW1lOiAnQnJhY2tldHMnLFxuICBsYXRleDogJ1xcXFxsZWZ0W1xcXFxyaWdodF0nLFxuICBzeW1ib2w6ICdbIF0nLFxuICBjb21tYW5kOiAnWycsXG59KTtcblxuZXhwb3J0IGNvbnN0IHBlcmNlbnRhZ2UgPSBzZXQoe1xuICBuYW1lOiAnUGVyY2VudCcsXG4gIGxhdGV4OiAnJScsXG4gIGNvbW1hbmQ6ICclJyxcbn0pO1xuXG5leHBvcnQgY29uc3QgYXBwcm94ID0gc2V0KHtcbiAgbGF0ZXg6ICdcXFxcYXBwcm94JyxcbiAgY29tbWFuZDogJ1xcXFxhcHByb3gnLFxuICBhcmlhTGFiZWw6ICdBcHByb3hpbWF0ZWx5IGVxdWFsIHRvJyxcbn0pO1xuXG5leHBvcnQgY29uc3QgbkFwcHJveCA9IHNldCh7XG4gIGxhdGV4OiAnXFxcXG5hcHByb3gnLFxuICBjb21tYW5kOiAnXFxcXG5hcHByb3gnLFxuICBhcmlhTGFiZWw6ICdOb3QgcHByb3hpbWF0ZWx5IGVxdWFsIHRvJyxcbn0pO1xuXG5leHBvcnQgY29uc3Qgbm90RXF1YWwgPSBzZXQoe1xuICBsYXRleDogJ1xcXFxuZXEnLFxuICBjb21tYW5kOiAnXFxcXG5lcScsXG4gIGFyaWFMYWJlbDogJ05vdCBlcXVhbHMnLFxufSk7XG5cbmV4cG9ydCBjb25zdCBzaW1pbGFyID0gc2V0KHtcbiAgbGF0ZXg6ICdcXFxcc2ltJyxcbiAgY29tbWFuZDogJ1xcXFxzaW0nLFxuICBhcmlhTGFiZWw6ICdTaW1pbGFyJyxcbn0pO1xuZXhwb3J0IGNvbnN0IG5vdFNpbWlsYXIgPSBzZXQoe1xuICBsYXRleDogJ1xcXFxuc2ltJyxcbiAgY29tbWFuZDogJ1xcXFxuc2ltJyxcbiAgYXJpYUxhYmVsOiAnTm90IHNpbWlsYXInLFxufSk7XG4iXX0=
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.right = exports.left = void 0;
7
-
8
- var _chars = require("./chars");
9
-
10
- var _utils = require("./utils");
11
-
12
- var set = (0, _utils.mkSet)('navigation');
13
- var left = set({
14
- label: _chars.LEFT_ARROW,
15
- keystroke: 'Left',
16
- ariaLabel: 'Move cursor left'
17
- });
18
- exports.left = left;
19
- var right = set({
20
- label: _chars.RIGHT_ARROW,
21
- keystroke: 'Right',
22
- ariaLabel: 'Move cursor right'
23
- });
24
- exports.right = right;
25
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL25hdmlnYXRpb24uanMiXSwibmFtZXMiOlsic2V0IiwibGVmdCIsImxhYmVsIiwiTEVGVF9BUlJPVyIsImtleXN0cm9rZSIsImFyaWFMYWJlbCIsInJpZ2h0IiwiUklHSFRfQVJST1ciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQSxJQUFNQSxHQUFHLEdBQUcsa0JBQU0sWUFBTixDQUFaO0FBRU8sSUFBTUMsSUFBSSxHQUFHRCxHQUFHLENBQUM7QUFBRUUsRUFBQUEsS0FBSyxFQUFFQyxpQkFBVDtBQUFxQkMsRUFBQUEsU0FBUyxFQUFFLE1BQWhDO0FBQXdDQyxFQUFBQSxTQUFTLEVBQUU7QUFBbkQsQ0FBRCxDQUFoQjs7QUFFQSxJQUFNQyxLQUFLLEdBQUdOLEdBQUcsQ0FBQztBQUFFRSxFQUFBQSxLQUFLLEVBQUVLLGtCQUFUO0FBQXNCSCxFQUFBQSxTQUFTLEVBQUUsT0FBakM7QUFBMENDLEVBQUFBLFNBQVMsRUFBRTtBQUFyRCxDQUFELENBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTEVGVF9BUlJPVywgUklHSFRfQVJST1cgfSBmcm9tICcuL2NoYXJzJztcbmltcG9ydCB7IG1rU2V0IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IHNldCA9IG1rU2V0KCduYXZpZ2F0aW9uJyk7XG5cbmV4cG9ydCBjb25zdCBsZWZ0ID0gc2V0KHsgbGFiZWw6IExFRlRfQVJST1csIGtleXN0cm9rZTogJ0xlZnQnLCBhcmlhTGFiZWw6ICdNb3ZlIGN1cnNvciBsZWZ0JyB9KTtcblxuZXhwb3J0IGNvbnN0IHJpZ2h0ID0gc2V0KHsgbGFiZWw6IFJJR0hUX0FSUk9XLCBrZXlzdHJva2U6ICdSaWdodCcsIGFyaWFMYWJlbDogJ01vdmUgY3Vyc29yIHJpZ2h0JyB9KTtcbiJdfQ==
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.circleDot = void 0;
7
-
8
- var _utils = require("./utils");
9
-
10
- var set = (0, _utils.mkSet)('operators');
11
- var circleDot = set({
12
- name: 'CircleDot',
13
- label: '⋅',
14
- write: '\\cdot',
15
- ariaLabel: 'Dot multiplier'
16
- });
17
- exports.circleDot = circleDot;
18
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXlzL29wZXJhdG9ycy5qcyJdLCJuYW1lcyI6WyJzZXQiLCJjaXJjbGVEb3QiLCJuYW1lIiwibGFiZWwiLCJ3cml0ZSIsImFyaWFMYWJlbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBLElBQU1BLEdBQUcsR0FBRyxrQkFBTSxXQUFOLENBQVo7QUFFTyxJQUFNQyxTQUFTLEdBQUdELEdBQUcsQ0FBQztBQUMzQkUsRUFBQUEsSUFBSSxFQUFFLFdBRHFCO0FBRTNCQyxFQUFBQSxLQUFLLEVBQUUsR0FGb0I7QUFHM0JDLEVBQUFBLEtBQUssRUFBRSxRQUhvQjtBQUkzQkMsRUFBQUEsU0FBUyxFQUFFO0FBSmdCLENBQUQsQ0FBckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBta1NldCB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBzZXQgPSBta1NldCgnb3BlcmF0b3JzJyk7XG5cbmV4cG9ydCBjb25zdCBjaXJjbGVEb3QgPSBzZXQoe1xuICBuYW1lOiAnQ2lyY2xlRG90JyxcbiAgbGFiZWw6ICfii4UnLFxuICB3cml0ZTogJ1xcXFxjZG90JyxcbiAgYXJpYUxhYmVsOiAnRG90IG11bHRpcGxpZXInLFxufSk7XG4iXX0=