@pie-lib/text-select 1.12.8 → 1.14.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -1
- package/NEXT.CHANGELOG.json +1 -0
- package/lib/__tests__/text-select.test.js +56 -0
- package/lib/__tests__/utils.test.js +23 -0
- package/lib/index.js +9 -1
- package/lib/legend.js +1 -1
- package/lib/text-select.js +1 -1
- package/lib/token-select/__tests__/index.test.js +268 -0
- package/lib/token-select/__tests__/token.test.js +35 -0
- package/lib/token-select/index.js +4 -3
- package/lib/token-select/token.js +13 -20
- package/lib/tokenizer/__tests__/builder.test.js +399 -0
- package/lib/tokenizer/__tests__/controls.test.js +34 -0
- package/lib/tokenizer/__tests__/index.test.js +210 -0
- package/lib/tokenizer/__tests__/selection-utils.test.js +27 -0
- package/lib/tokenizer/__tests__/token-text.test.js +154 -0
- package/lib/tokenizer/builder.js +1 -1
- package/lib/tokenizer/controls.js +15 -1
- package/lib/tokenizer/index.js +1 -1
- package/lib/tokenizer/selection-utils.js +1 -1
- package/lib/tokenizer/token-text.js +12 -3
- package/lib/utils.js +1 -1
- package/package.json +7 -6
- package/src/__tests__/__snapshots__/text-select.test.jsx.snap +21 -0
- package/src/__tests__/text-select.test.jsx +34 -0
- package/src/__tests__/utils.test.jsx +27 -0
- package/src/index.js +2 -1
- package/src/token-select/__tests__/__snapshots__/index.test.jsx.snap +49 -0
- package/src/token-select/__tests__/__snapshots__/token.test.jsx.snap +31 -0
- package/src/token-select/__tests__/index.test.jsx +257 -0
- package/src/token-select/__tests__/token.test.jsx +33 -0
- package/src/token-select/index.jsx +3 -1
- package/src/token-select/token.jsx +11 -20
- package/src/tokenizer/__tests__/__snapshots__/controls.test.jsx.snap +59 -0
- package/src/tokenizer/__tests__/__snapshots__/index.test.jsx.snap +31 -0
- package/src/tokenizer/__tests__/__snapshots__/token-text.test.jsx.snap +17 -0
- package/src/tokenizer/__tests__/builder.test.js +256 -0
- package/src/tokenizer/__tests__/controls.test.jsx +25 -0
- package/src/tokenizer/__tests__/index.test.jsx +140 -0
- package/src/tokenizer/__tests__/selection-utils.test.js +26 -0
- package/src/tokenizer/__tests__/token-text.test.jsx +136 -0
- package/src/tokenizer/controls.jsx +20 -1
- package/src/tokenizer/token-text.jsx +9 -0
- package/README.md +0 -3
- package/lib/index.js.map +0 -1
- package/lib/legend.js.map +0 -1
- package/lib/text-select.js.map +0 -1
- package/lib/token-select/index.js.map +0 -1
- package/lib/token-select/token.js.map +0 -1
- package/lib/tokenizer/builder.js.map +0 -1
- package/lib/tokenizer/controls.js.map +0 -1
- package/lib/tokenizer/index.js.map +0 -1
- package/lib/tokenizer/selection-utils.js.map +0 -1
- package/lib/tokenizer/token-text.js.map +0 -1
- package/lib/utils.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,7 +3,15 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
# [1.14.0-beta.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/text-select@1.12.7...@pie-lib/text-select@1.14.0-beta.0) (2025-07-15)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-lib/text-select
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [1.13.0-beta.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/text-select@1.12.7...@pie-lib/text-select@1.13.0-beta.0) (2025-07-15)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-lib/text-select
|
|
9
17
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _textSelect = _interopRequireDefault(require("../text-select"));
|
|
6
|
+
|
|
7
|
+
var _enzyme = require("enzyme");
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
|
|
11
|
+
var _enzymeToJson = _interopRequireDefault(require("enzyme-to-json"));
|
|
12
|
+
|
|
13
|
+
describe('text-select', function () {
|
|
14
|
+
describe('snapshot', function () {
|
|
15
|
+
it('renders', function () {
|
|
16
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_textSelect["default"], {
|
|
17
|
+
text: "foo",
|
|
18
|
+
tokens: [],
|
|
19
|
+
selectedTokens: [],
|
|
20
|
+
onChange: jest.fn(),
|
|
21
|
+
maxNoOfSelections: 4
|
|
22
|
+
}));
|
|
23
|
+
expect(w).toMatchSnapshot();
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
describe('logic', function () {
|
|
27
|
+
var w, onChange;
|
|
28
|
+
beforeEach(function () {
|
|
29
|
+
onChange = jest.fn();
|
|
30
|
+
w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_textSelect["default"], {
|
|
31
|
+
text: "foo",
|
|
32
|
+
tokens: [],
|
|
33
|
+
selectedTokens: [],
|
|
34
|
+
onChange: onChange
|
|
35
|
+
}));
|
|
36
|
+
});
|
|
37
|
+
describe('change', function () {
|
|
38
|
+
it('calls onChange', function () {
|
|
39
|
+
var changeArgs = [{
|
|
40
|
+
start: 0,
|
|
41
|
+
end: 1,
|
|
42
|
+
selected: true
|
|
43
|
+
}, {
|
|
44
|
+
start: 1,
|
|
45
|
+
end: 2
|
|
46
|
+
}];
|
|
47
|
+
w.instance().change(changeArgs);
|
|
48
|
+
expect(onChange).toBeCalledWith([{
|
|
49
|
+
start: 0,
|
|
50
|
+
end: 1
|
|
51
|
+
}]);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vdGV4dC1zZWxlY3QudGVzdC5qc3giXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJpdCIsInciLCJqZXN0IiwiZm4iLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiLCJvbkNoYW5nZSIsImJlZm9yZUVhY2giLCJjaGFuZ2VBcmdzIiwic3RhcnQiLCJlbmQiLCJzZWxlY3RlZCIsImluc3RhbmNlIiwiY2hhbmdlIiwidG9CZUNhbGxlZFdpdGgiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQUEsUUFBUSxDQUFDLGFBQUQsRUFBZ0IsWUFBTTtBQUM1QkEsRUFBQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCQyxJQUFBQSxFQUFFLENBQUMsU0FBRCxFQUFZLFlBQU07QUFDbEIsVUFBTUMsQ0FBQyxHQUFHLG1DQUNSLGdDQUFDLHNCQUFEO0FBQVksUUFBQSxJQUFJLEVBQUMsS0FBakI7QUFBdUIsUUFBQSxNQUFNLEVBQUUsRUFBL0I7QUFBbUMsUUFBQSxjQUFjLEVBQUUsRUFBbkQ7QUFBdUQsUUFBQSxRQUFRLEVBQUVDLElBQUksQ0FBQ0MsRUFBTCxFQUFqRTtBQUE0RSxRQUFBLGlCQUFpQixFQUFFO0FBQS9GLFFBRFEsQ0FBVjtBQUdBQyxNQUFBQSxNQUFNLENBQUNILENBQUQsQ0FBTixDQUFVSSxlQUFWO0FBQ0QsS0FMQyxDQUFGO0FBTUQsR0FQTyxDQUFSO0FBU0FOLEVBQUFBLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBTTtBQUN0QixRQUFJRSxDQUFKLEVBQU9LLFFBQVA7QUFDQUMsSUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZkQsTUFBQUEsUUFBUSxHQUFHSixJQUFJLENBQUNDLEVBQUwsRUFBWDtBQUNBRixNQUFBQSxDQUFDLEdBQUcsbUNBQVEsZ0NBQUMsc0JBQUQ7QUFBWSxRQUFBLElBQUksRUFBQyxLQUFqQjtBQUF1QixRQUFBLE1BQU0sRUFBRSxFQUEvQjtBQUFtQyxRQUFBLGNBQWMsRUFBRSxFQUFuRDtBQUF1RCxRQUFBLFFBQVEsRUFBRUs7QUFBakUsUUFBUixDQUFKO0FBQ0QsS0FIUyxDQUFWO0FBS0FQLElBQUFBLFFBQVEsQ0FBQyxRQUFELEVBQVcsWUFBTTtBQUN2QkMsTUFBQUEsRUFBRSxDQUFDLGdCQUFELEVBQW1CLFlBQU07QUFDekIsWUFBTVEsVUFBVSxHQUFHLENBQ2pCO0FBQUVDLFVBQUFBLEtBQUssRUFBRSxDQUFUO0FBQVlDLFVBQUFBLEdBQUcsRUFBRSxDQUFqQjtBQUFvQkMsVUFBQUEsUUFBUSxFQUFFO0FBQTlCLFNBRGlCLEVBRWpCO0FBQUVGLFVBQUFBLEtBQUssRUFBRSxDQUFUO0FBQVlDLFVBQUFBLEdBQUcsRUFBRTtBQUFqQixTQUZpQixDQUFuQjtBQUtBVCxRQUFBQSxDQUFDLENBQUNXLFFBQUYsR0FBYUMsTUFBYixDQUFvQkwsVUFBcEI7QUFDQUosUUFBQUEsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJRLGNBQWpCLENBQWdDLENBQUM7QUFBRUwsVUFBQUEsS0FBSyxFQUFFLENBQVQ7QUFBWUMsVUFBQUEsR0FBRyxFQUFFO0FBQWpCLFNBQUQsQ0FBaEM7QUFDRCxPQVJDLENBQUY7QUFTRCxLQVZPLENBQVI7QUFXRCxHQWxCTyxDQUFSO0FBbUJELENBN0JPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVGV4dFNlbGVjdCBmcm9tICcuLi90ZXh0LXNlbGVjdCc7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdG9Kc29uIGZyb20gJ2VuenltZS10by1qc29uJztcbmRlc2NyaWJlKCd0ZXh0LXNlbGVjdCcsICgpID0+IHtcbiAgZGVzY3JpYmUoJ3NuYXBzaG90JywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzJywgKCkgPT4ge1xuICAgICAgY29uc3QgdyA9IHNoYWxsb3coXG4gICAgICAgIDxUZXh0U2VsZWN0IHRleHQ9XCJmb29cIiB0b2tlbnM9e1tdfSBzZWxlY3RlZFRva2Vucz17W119IG9uQ2hhbmdlPXtqZXN0LmZuKCl9IG1heE5vT2ZTZWxlY3Rpb25zPXs0fSAvPixcbiAgICAgICk7XG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdsb2dpYycsICgpID0+IHtcbiAgICBsZXQgdywgb25DaGFuZ2U7XG4gICAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgICAgIHcgPSBzaGFsbG93KDxUZXh0U2VsZWN0IHRleHQ9XCJmb29cIiB0b2tlbnM9e1tdfSBzZWxlY3RlZFRva2Vucz17W119IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pO1xuICAgIH0pO1xuXG4gICAgZGVzY3JpYmUoJ2NoYW5nZScsICgpID0+IHtcbiAgICAgIGl0KCdjYWxscyBvbkNoYW5nZScsICgpID0+IHtcbiAgICAgICAgY29uc3QgY2hhbmdlQXJncyA9IFtcbiAgICAgICAgICB7IHN0YXJ0OiAwLCBlbmQ6IDEsIHNlbGVjdGVkOiB0cnVlIH0sXG4gICAgICAgICAgeyBzdGFydDogMSwgZW5kOiAyIH0sXG4gICAgICAgIF07XG5cbiAgICAgICAgdy5pbnN0YW5jZSgpLmNoYW5nZShjaGFuZ2VBcmdzKTtcbiAgICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0JlQ2FsbGVkV2l0aChbeyBzdGFydDogMCwgZW5kOiAxIH1dKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _utils = require("../utils");
|
|
4
|
+
|
|
5
|
+
describe('logic', function () {
|
|
6
|
+
it('returns text if no html elements', function () {
|
|
7
|
+
var formattedText = (0, _utils.prepareText)("foo bar");
|
|
8
|
+
expect(formattedText).toEqual('foo bar');
|
|
9
|
+
});
|
|
10
|
+
it('replaces br with new lines', function () {
|
|
11
|
+
var formattedText = (0, _utils.prepareText)("<p>foo<br>bar</p>");
|
|
12
|
+
expect(formattedText).toEqual('foo\nbar');
|
|
13
|
+
});
|
|
14
|
+
it('replaces p with 2 new lines', function () {
|
|
15
|
+
var formattedText = (0, _utils.prepareText)("<p>foo<br>bar</p><p>bar<br>foo</p>");
|
|
16
|
+
expect(formattedText).toEqual('foo\nbar\n\nbar\nfoo');
|
|
17
|
+
});
|
|
18
|
+
it('adds p if there are no paragraphs', function () {
|
|
19
|
+
var formattedText = (0, _utils.prepareText)("foo<br>bar<br>foo");
|
|
20
|
+
expect(formattedText).toEqual('foo\nbar\nfoo');
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vdXRpbHMudGVzdC5qc3giXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJpdCIsImZvcm1hdHRlZFRleHQiLCJleHBlY3QiLCJ0b0VxdWFsIl0sIm1hcHBpbmdzIjoiOztBQUFBOztBQUVBQSxRQUFRLENBQUMsT0FBRCxFQUFVLFlBQU07QUFDdEJDLEVBQUFBLEVBQUUsQ0FBQyxrQ0FBRCxFQUFxQyxZQUFNO0FBQzNDLFFBQU1DLGFBQWEsR0FBRyxrQ0FBdEI7QUFFQUMsSUFBQUEsTUFBTSxDQUFDRCxhQUFELENBQU4sQ0FBc0JFLE9BQXRCLENBQThCLFNBQTlCO0FBQ0QsR0FKQyxDQUFGO0FBTUFILEVBQUFBLEVBQUUsQ0FBQyw0QkFBRCxFQUErQixZQUFNO0FBQ3JDLFFBQU1DLGFBQWEsR0FBRyw0Q0FBdEI7QUFFQUMsSUFBQUEsTUFBTSxDQUFDRCxhQUFELENBQU4sQ0FBc0JFLE9BQXRCLENBQThCLFVBQTlCO0FBQ0QsR0FKQyxDQUFGO0FBTUFILEVBQUFBLEVBQUUsQ0FBQyw2QkFBRCxFQUFnQyxZQUFNO0FBQ3RDLFFBQU1DLGFBQWEsR0FBRyw2REFBdEI7QUFFQUMsSUFBQUEsTUFBTSxDQUFDRCxhQUFELENBQU4sQ0FBc0JFLE9BQXRCLENBQThCLHNCQUE5QjtBQUNELEdBSkMsQ0FBRjtBQU1BSCxFQUFBQSxFQUFFLENBQUMsbUNBQUQsRUFBc0MsWUFBTTtBQUM1QyxRQUFNQyxhQUFhLEdBQUcsNENBQXRCO0FBRUFDLElBQUFBLE1BQU0sQ0FBQ0QsYUFBRCxDQUFOLENBQXNCRSxPQUF0QixDQUE4QixlQUE5QjtBQUNELEdBSkMsQ0FBRjtBQUtELENBeEJPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcmVwYXJlVGV4dCB9IGZyb20gJy4uL3V0aWxzJztcblxuZGVzY3JpYmUoJ2xvZ2ljJywgKCkgPT4ge1xuICBpdCgncmV0dXJucyB0ZXh0IGlmIG5vIGh0bWwgZWxlbWVudHMnLCAoKSA9PiB7XG4gICAgY29uc3QgZm9ybWF0dGVkVGV4dCA9IHByZXBhcmVUZXh0KGBmb28gYmFyYCk7XG5cbiAgICBleHBlY3QoZm9ybWF0dGVkVGV4dCkudG9FcXVhbCgnZm9vIGJhcicpO1xuICB9KTtcblxuICBpdCgncmVwbGFjZXMgYnIgd2l0aCBuZXcgbGluZXMnLCAoKSA9PiB7XG4gICAgY29uc3QgZm9ybWF0dGVkVGV4dCA9IHByZXBhcmVUZXh0KGA8cD5mb288YnI+YmFyPC9wPmApO1xuXG4gICAgZXhwZWN0KGZvcm1hdHRlZFRleHQpLnRvRXF1YWwoJ2Zvb1xcbmJhcicpO1xuICB9KTtcblxuICBpdCgncmVwbGFjZXMgcCB3aXRoIDIgbmV3IGxpbmVzJywgKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1hdHRlZFRleHQgPSBwcmVwYXJlVGV4dChgPHA+Zm9vPGJyPmJhcjwvcD48cD5iYXI8YnI+Zm9vPC9wPmApO1xuXG4gICAgZXhwZWN0KGZvcm1hdHRlZFRleHQpLnRvRXF1YWwoJ2Zvb1xcbmJhclxcblxcbmJhclxcbmZvbycpO1xuICB9KTtcblxuICBpdCgnYWRkcyBwIGlmIHRoZXJlIGFyZSBubyBwYXJhZ3JhcGhzJywgKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1hdHRlZFRleHQgPSBwcmVwYXJlVGV4dChgZm9vPGJyPmJhcjxicj5mb29gKTtcblxuICAgIGV4cGVjdChmb3JtYXR0ZWRUZXh0KS50b0VxdWFsKCdmb29cXG5iYXJcXG5mb28nKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
package/lib/index.js
CHANGED
|
@@ -7,6 +7,12 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
+
Object.defineProperty(exports, "Controls", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function get() {
|
|
13
|
+
return _controls["default"];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
10
16
|
Object.defineProperty(exports, "Legend", {
|
|
11
17
|
enumerable: true,
|
|
12
18
|
get: function get() {
|
|
@@ -50,6 +56,8 @@ Object.defineProperty(exports, "prepareText", {
|
|
|
50
56
|
}
|
|
51
57
|
});
|
|
52
58
|
|
|
59
|
+
var _controls = _interopRequireDefault(require("./tokenizer/controls"));
|
|
60
|
+
|
|
53
61
|
var _tokenizer = _interopRequireDefault(require("./tokenizer"));
|
|
54
62
|
|
|
55
63
|
var _tokenSelect = _interopRequireWildcard(require("./token-select"));
|
|
@@ -65,4 +73,4 @@ var _utils = require("./utils");
|
|
|
65
73
|
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); }
|
|
66
74
|
|
|
67
75
|
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; }
|
|
68
|
-
//# sourceMappingURL=
|
|
76
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29udHJvbHMgZnJvbSAnLi90b2tlbml6ZXIvY29udHJvbHMnO1xuaW1wb3J0IFRva2VuaXplciBmcm9tICcuL3Rva2VuaXplcic7XG5pbXBvcnQgVG9rZW5TZWxlY3QsIHsgVG9rZW5UeXBlcyB9IGZyb20gJy4vdG9rZW4tc2VsZWN0JztcbmltcG9ydCBUZXh0U2VsZWN0IGZyb20gJy4vdGV4dC1zZWxlY3QnO1xuaW1wb3J0IHsgTGVnZW5kIH0gZnJvbSAnLi9sZWdlbmQnO1xuaW1wb3J0IFRva2VuIGZyb20gJy4vdG9rZW4tc2VsZWN0L3Rva2VuJztcbmltcG9ydCB7IHByZXBhcmVUZXh0IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCB7IENvbnRyb2xzLCBUZXh0U2VsZWN0LCBUb2tlblR5cGVzLCBUb2tlbml6ZXIsIFRva2VuU2VsZWN0LCBUb2tlbiwgcHJlcGFyZVRleHQsIExlZ2VuZCB9O1xuIl19
|
package/lib/legend.js
CHANGED
|
@@ -96,4 +96,4 @@ var Legend = (0, _styles.withStyles)(function (theme) {
|
|
|
96
96
|
}));
|
|
97
97
|
});
|
|
98
98
|
exports.Legend = Legend;
|
|
99
|
-
//# sourceMappingURL=
|
|
99
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sZWdlbmQuanMiXSwibmFtZXMiOlsidHJhbnNsYXRvciIsIlRyYW5zbGF0b3IiLCJMZWdlbmQiLCJ0aGVtZSIsImZsZXhDb250YWluZXIiLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImdhcCIsInNwYWNpbmciLCJ1bml0IiwiYm9yZGVyQm90dG9tIiwiYm9yZGVyVG9wIiwicGFkZGluZ0JvdHRvbSIsInBhZGRpbmdUb3AiLCJtYXJnaW5Cb3R0b20iLCJjb250YWluZXIiLCJhbGlnbkl0ZW1zIiwiY29ycmVjdCIsImZvbnRTaXplIiwiY29sb3IiLCJiYWNrZ3JvdW5kQ29sb3IiLCJjb3JyZWN0U2Vjb25kYXJ5IiwiYm9yZGVyIiwiaW5jb3JyZWN0IiwibWlzc2luZyIsImluY29ycmVjdFNlY29uZGFyeSIsImNsYXNzZXMiLCJsYW5ndWFnZSIsImljb25zIiwiaWNvbk5hbWUiLCJDaGVjayIsImxhYmVsIiwidCIsImxuZyIsImNsYXNzTmFtZSIsIlJlbW92ZSIsIkNsb3NlIiwibWFwIiwiaWNvbiIsImluZGV4IiwiSWNvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsSUFBUUEsVUFBUixHQUF1QkMsc0JBQXZCLENBQVFELFVBQVI7QUFFTyxJQUFNRSxNQUFNLEdBQUcsd0JBQVcsVUFBQ0MsS0FBRDtBQUFBLFNBQVk7QUFDM0NDLElBQUFBLGFBQWEsRUFBRTtBQUNiQyxNQUFBQSxPQUFPLEVBQUUsTUFESTtBQUViQyxNQUFBQSxhQUFhLEVBQUUsS0FGRjtBQUdiQyxNQUFBQSxHQUFHLFlBQUssSUFBSUosS0FBSyxDQUFDSyxPQUFOLENBQWNDLElBQXZCLE9BSFU7QUFJYkMsTUFBQUEsWUFBWSxFQUFFLHFCQUpEO0FBS2JDLE1BQUFBLFNBQVMsRUFBRSxxQkFMRTtBQU1iQyxNQUFBQSxhQUFhLEVBQUVULEtBQUssQ0FBQ0ssT0FBTixDQUFjQyxJQU5oQjtBQU9i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RUFBRTtBQUF4RCxNQURGLGVBRUUsOENBQU9JLElBQUksQ0FBQ1AsS0FBWixDQUZGLENBREY7QUFNRCxHQVJBLENBREgsQ0FERjtBQWFELENBbkVxQixDQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IENoZWNrIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9DaGVjayc7XG5pbXBvcnQgQ2xvc2UgZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0Nsb3NlJztcbmltcG9ydCBSZW1vdmUgZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL1JlbW92ZSc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgVHJhbnNsYXRvciBmcm9tICdAcGllLWxpYi90cmFuc2xhdG9yJztcblxuY29uc3QgeyB0cmFuc2xhdG9yIH0gPSBUcmFuc2xhdG9yO1xuXG5leHBvcnQgY29uc3QgTGVnZW5kID0gd2l0aFN0eWxlcygodGhlbWUpID0+ICh7XG4gIGZsZXhDb250YWluZXI6IHtcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgZ2FwOiBgJHsyICogdGhlbWUuc3BhY2luZy51bml0fXB4YCxcbiAgICBib3JkZXJCb3R0b206ICcxcHggc29saWQgbGlnaHRncmV5JyxcbiAgICBib3JkZXJUb3A6ICcxcHggc29saWQgbGlnaHRncmV5JyxcbiAgICBwYWRkaW5nQm90dG9tOiB0aGVtZS5zcGFjaW5nLnVuaXQsXG4gICAgcGFkZGluZ1RvcDogdGhlbWUuc3BhY2luZy51bml0LFxuICAgIG1hcmdpbkJvdHRvbTogdGhlbWUuc3BhY2luZy51bml0LFxuICB9LFxuICBjb250YWluZXI6IHtcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgZ2FwOiBgJHt0aGVtZS5zcGFjaW5nLnVuaXQgLyAyfXB4YCxcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgfSxcbiAgY29ycmVjdDoge1xuICAgIGZvbnRTaXplOiAnbGFyZ2VyJyxcbiAgICBjb2xvcjogY29sb3IuY29ycmVjdCgpLFxuICAgIGJhY2tncm91bmRDb2xvcjogY29sb3IuY29ycmVjdFNlY29uZGFyeSgpLFxuICAgIGJvcmRlcjogYDJweCBzb2xpZCAke2NvbG9yLmNvcnJlY3QoKX1gLFxuICB9LFxuICBpbmNvcnJlY3Q6IHtcbiAgICBmb250U2l6ZTogJ2xhcmdlcicsXG4gICAgY29sb3I6IGNvbG9yLm1pc3NpbmcoKSxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLmluY29ycmVjdFNlY29uZGFyeSgpLFxuICAgIGJvcmRlcjogYDJweCBzb2xpZCAke2NvbG9yLm1pc3NpbmcoKX1gLFxuICB9LFxuICBtaXNzaW5nOiB7XG4gICAgZm9udFNpemU6ICdsYXJnZXInLFxuICAgIGNvbG9yOiBjb2xvci5taXNzaW5nKCksXG4gICAgYmFja2dyb3VuZENvbG9yOiBjb2xvci5pbmNvcnJlY3RTZWNvbmRhcnkoKSxcbiAgICBib3JkZXI6IGAycHggZGFzaGVkICR7Y29sb3IubWlzc2luZygpfWAsXG4gIH0sXG59KSkoKHsgY2xhc3NlcywgbGFuZ3VhZ2UgfSkgPT4ge1xuICBjb25zdCBpY29ucyA9IFtcbiAgICB7XG4gICAgICBpY29uTmFtZTogQ2hlY2ssXG4gICAgICBsYWJlbDogdHJhbnNsYXRvci50KCdzZWxlY3RUZXh0LmNvcnJlY3RBbnN3ZXJTZWxlY3RlZCcsIHsgbG5nOiBsYW5ndWFnZSB9KSxcbiAgICAgIGNsYXNzTmFtZTogY2xhc3Nlcy5jb3JyZWN0LFxuICAgIH0sXG4gICAge1xuICAgICAgaWNvbk5hbWU6IFJlbW92ZSxcbiAgICAgIGxhYmVsOiB0cmFuc2xhdG9yLnQoJ3NlbGVjdFRleHQuY29ycmVjdEFuc3dlck5vdFNlbGVjdGVkJywgeyBsbmc6IGxhbmd1YWdlIH0pLFxuICAgICAgY2xhc3NOYW1lOiBjbGFzc2VzLm1pc3NpbmcsXG4gICAgfSxcbiAgICB7XG4gICAgICBpY29uTmFtZTogQ2xvc2UsXG4gICAgICBsYWJlbDogdHJhbnNsYXRvci50KCdzZWxlY3RUZXh0LmluY29ycmVjdFNlbGVjdGlvbicsIHsgbG5nOiBsYW5ndWFnZSB9KSxcbiAgICAgIGNsYXNzTmFtZTogY2xhc3Nlcy5pbmNvcnJlY3QsXG4gICAgfSxcbiAgXTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLmZsZXhDb250YWluZXJ9PlxuICAgICAge2ljb25zLm1hcCgoaWNvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3QgSWNvbiA9IGljb24uaWNvbk5hbWU7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGRpdiBrZXk9e2luZGV4fSBjbGFzc05hbWU9e2NsYXNzZXMuY29udGFpbmVyfT5cbiAgICAgICAgICAgIDxJY29uIGNsYXNzTmFtZT17aWNvbi5jbGFzc05hbWV9IHdpZHRoPXsnMTlweCd9IGhlaWdodD17JzE5cHgnfT48L0ljb24+XG4gICAgICAgICAgICA8c3Bhbj57aWNvbi5sYWJlbH08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICk7XG4gICAgICB9KX1cbiAgICA8L2Rpdj5cbiAgKTtcbn0pO1xuIl19
|
package/lib/text-select.js
CHANGED
|
@@ -135,4 +135,4 @@ exports["default"] = TextSelect;
|
|
|
135
135
|
animationsDisabled: _propTypes["default"].bool,
|
|
136
136
|
maxNoOfSelections: _propTypes["default"].number
|
|
137
137
|
});
|
|
138
|
-
//# sourceMappingURL=
|
|
138
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90ZXh0LXNlbGVjdC5qc3giXSwibmFtZXMiOlsibG9nIiwiVGV4dFNlbGVjdCIsInRva2VucyIsIm9uQ2hhbmdlIiwicHJvcHMiLCJvdXQiLCJmaWx0ZXIiLCJ0Iiwic2VsZWN0ZWQiLCJtYXAiLCJzdGFydCIsImVuZCIsInRleHQiLCJkaXNhYmxlZCIsInNlbGVjdGVkVG9rZW5zIiwiY2xhc3NOYW1lIiwiaGlnaGxpZ2h0Q2hvaWNlcyIsIm1heE5vT2ZTZWxlY3Rpb25zIiwiYW5pbWF0aW9uc0Rpc2FibGVkIiwibm9ybWFsaXplZCIsInByZXBwZWQiLCJzZWxlY3RlZEluZGV4IiwiZmluZEluZGV4IiwicyIsImNvcnJlY3QiLCJ1bmRlZmluZWQiLCJpc01pc3NpbmciLCJzZWxlY3RhYmxlIiwicHJlZGVmaW5lZCIsImNoYW5nZSIsIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwiZnVuYyIsImJvb2wiLCJhcnJheU9mIiwic2hhcGUiLCJUb2tlblR5cGVzIiwiaXNSZXF1aXJlZCIsInN0cmluZyIsIm51bWJlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxzQkFBTixDQUFaO0FBQ0E7QUFDQTtBQUNBOztJQUNxQkMsVTs7Ozs7Ozs7Ozs7Ozs7OytGQWFWLFVBQUNDLE1BQUQsRUFBWTtBQUNuQixVQUFRQyxRQUFSLEdBQXFCLE1BQUtDLEtBQTFCLENBQVFELFFBQVI7O0FBRUEsVUFBSSxDQUFDQSxRQUFMLEVBQWU7QUFDYjtBQUNEOztBQUNELFVBQU1FLEdBQUcsR0FBR0gsTUFBTSxDQUFDSSxNQUFQLENBQWMsVUFBQ0MsQ0FBRDtBQUFBLGVBQU9BLENBQUMsQ0FBQ0MsUUFBVDtBQUFBLE9BQWQsRUFBaUNDLEdBQWpDLENBQXFDLFVBQUNGLENBQUQ7QUFBQSxlQUFRO0FBQUVHLFVBQUFB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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcblxuaW1wb3J0IFRva2VuU2VsZWN0IGZyb20gJy4vdG9rZW4tc2VsZWN0JztcbmltcG9ydCB7IG5vcm1hbGl6ZSB9IGZyb20gJy4vdG9rZW5pemVyL2J1aWxkZXInO1xuaW1wb3J0IHsgVG9rZW5UeXBlcyB9IGZyb20gJy4vdG9rZW4tc2VsZWN0L3Rva2VuJztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjp0ZXh0LXNlbGVjdCcpO1xuLyoqXG4gKiBCdWlsdCBvbiBUb2tlblNlbGVjdCB1c2VzIGJ1aWxkLm5vcm1hbGl6ZSB0byBidWlsZCB0aGUgdG9rZW4gc2V0LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXh0U2VsZWN0IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIHRva2VuczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnNoYXBlKFRva2VuVHlwZXMpKS5pc1JlcXVpcmVkLFxuICAgIHNlbGVjdGVkVG9rZW5zOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc2hhcGUoVG9rZW5UeXBlcykpLmlzUmVxdWlyZWQsXG4gICAgdGV4dDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBoaWdobGlnaHRDaG9pY2VzOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBhbmltYXRpb25zRGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIG1heE5vT2ZTZWxlY3Rpb25zOiBQcm9wVHlwZXMubnVtYmVyLFxuICB9O1xuXG4gIGNoYW5nZSA9ICh0b2tlbnMpID0+IHtcbiAgICBjb25zdCB7IG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFvbkNoYW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBvdXQgPSB0b2tlbnMuZmlsdGVyKCh0KSA9PiB0LnNlbGVjdGVkKS5tYXAoKHQpID0+ICh7IHN0YXJ0OiB0LnN0YXJ0LCBlbmQ6IHQuZW5kIH0pKTtcblxuICAgIG9uQ2hhbmdlKG91dCk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIHRleHQsXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIHRva2VucyxcbiAgICAgIHNlbGVjdGVkVG9rZW5zLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgaGlnaGxpZ2h0Q2hvaWNlcyxcbiAgICAgIG1heE5vT2ZTZWxlY3Rpb25zLFxuICAgICAgYW5pbWF0aW9uc0Rpc2FibGVkLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IG5vcm1hbGl6ZSh0ZXh0LCB0b2tlbnMpO1xuICAgIGxvZygnbm9ybWFsaXplZDogJywgbm9ybWFsaXplZCk7XG4gICAgY29uc3QgcHJlcHBlZCA9IG5vcm1hbGl6ZWQubWFwKCh0KSA9PiB7XG4gICAgICBjb25zdCBzZWxlY3RlZEluZGV4ID0gc2VsZWN0ZWRUb2tlbnMuZmluZEluZGV4KChzKSA9PiB7XG4gICAgICAgIHJldHVybiBzLnN0YXJ0ID09PSB0LnN0YXJ0ICYmIHMuZW5kID09PSB0LmVuZDtcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBzZWxlY3RlZEluZGV4ICE9PSAtMTtcbiAgICAgIGNvbnN0IGNvcnJlY3QgPSBzZWxlY3RlZCA/IHQuY29ycmVjdCA6IHVuZGVmaW5lZDtcbiAgICAgIGNvbnN0IGlzTWlzc2luZyA9IHQuaXNNaXNzaW5nO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4udCxcbiAgICAgICAgc2VsZWN0YWJsZTogIWRpc2FibGVkICYmIHQucHJlZGVmaW5lZCxcbiAgICAgICAgc2VsZWN0ZWQsXG4gICAgICAgIGNvcnJlY3QsXG4gICAgICAgIGlzTWlzc2luZyxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFRva2VuU2VsZWN0XG4gICAgICAgIGhpZ2hsaWdodENob2ljZXM9eyFkaXNhYmxlZCAmJiBoaWdobGlnaHRDaG9pY2VzfVxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgdG9rZW5zPXtwcmVwcGVkfVxuICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgIG9uQ2hhbmdlPXt0aGlzLmNoYW5nZX1cbiAgICAgICAgbWF4Tm9PZlNlbGVjdGlvbnM9e21heE5vT2ZTZWxlY3Rpb25zfVxuICAgICAgICBhbmltYXRpb25zRGlzYWJsZWQ9e2FuaW1hdGlvbnNEaXNhYmxlZH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _index = require("../index");
|
|
6
|
+
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
|
|
9
|
+
var _enzyme = require("enzyme");
|
|
10
|
+
|
|
11
|
+
describe('token-select', function () {
|
|
12
|
+
describe('snapshot', function () {
|
|
13
|
+
it('renders', function () {
|
|
14
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.TokenSelect, {
|
|
15
|
+
tokens: [{
|
|
16
|
+
text: 'foo bar',
|
|
17
|
+
start: 0,
|
|
18
|
+
end: 7,
|
|
19
|
+
predefined: true,
|
|
20
|
+
selectable: true,
|
|
21
|
+
selected: false
|
|
22
|
+
}],
|
|
23
|
+
classes: {},
|
|
24
|
+
onChange: jest.fn()
|
|
25
|
+
}));
|
|
26
|
+
expect(w).toMatchSnapshot();
|
|
27
|
+
});
|
|
28
|
+
it('renders sentences properly', function () {
|
|
29
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.TokenSelect, {
|
|
30
|
+
tokens: [{
|
|
31
|
+
text: 'foo,',
|
|
32
|
+
start: 0,
|
|
33
|
+
end: 4,
|
|
34
|
+
predefined: true,
|
|
35
|
+
selectable: true,
|
|
36
|
+
selected: false
|
|
37
|
+
}, {
|
|
38
|
+
text: '\n',
|
|
39
|
+
start: 4,
|
|
40
|
+
end: 5,
|
|
41
|
+
selected: false
|
|
42
|
+
}, {
|
|
43
|
+
text: 'bar',
|
|
44
|
+
start: 5,
|
|
45
|
+
end: 8,
|
|
46
|
+
predefined: true,
|
|
47
|
+
selectable: true,
|
|
48
|
+
selected: false
|
|
49
|
+
}],
|
|
50
|
+
classes: {},
|
|
51
|
+
onChange: jest.fn()
|
|
52
|
+
}));
|
|
53
|
+
expect(w).toMatchSnapshot();
|
|
54
|
+
});
|
|
55
|
+
it('renders paragraphs properly', function () {
|
|
56
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.TokenSelect, {
|
|
57
|
+
tokens: [{
|
|
58
|
+
text: 'foo,',
|
|
59
|
+
start: 0,
|
|
60
|
+
end: 4,
|
|
61
|
+
predefined: true,
|
|
62
|
+
selectable: true,
|
|
63
|
+
selected: false
|
|
64
|
+
}, {
|
|
65
|
+
text: '\n\n',
|
|
66
|
+
start: 4,
|
|
67
|
+
end: 5,
|
|
68
|
+
selected: false
|
|
69
|
+
}, {
|
|
70
|
+
text: 'bar',
|
|
71
|
+
start: 5,
|
|
72
|
+
end: 8,
|
|
73
|
+
predefined: true,
|
|
74
|
+
selectable: true,
|
|
75
|
+
selected: false
|
|
76
|
+
}],
|
|
77
|
+
classes: {},
|
|
78
|
+
onChange: jest.fn()
|
|
79
|
+
}));
|
|
80
|
+
expect(w).toMatchSnapshot();
|
|
81
|
+
});
|
|
82
|
+
it('renders in view mode with selected tokens', function () {
|
|
83
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.TokenSelect, {
|
|
84
|
+
disabled: true,
|
|
85
|
+
tokens: [{
|
|
86
|
+
text: 'foo,',
|
|
87
|
+
start: 0,
|
|
88
|
+
end: 4,
|
|
89
|
+
predefined: true,
|
|
90
|
+
selectable: true,
|
|
91
|
+
selected: true
|
|
92
|
+
}, {
|
|
93
|
+
text: '\n',
|
|
94
|
+
start: 4,
|
|
95
|
+
end: 5,
|
|
96
|
+
selected: false
|
|
97
|
+
}, {
|
|
98
|
+
text: 'bar',
|
|
99
|
+
start: 5,
|
|
100
|
+
end: 8,
|
|
101
|
+
predefined: true,
|
|
102
|
+
selectable: true,
|
|
103
|
+
selected: true
|
|
104
|
+
}],
|
|
105
|
+
classes: {},
|
|
106
|
+
onChange: jest.fn()
|
|
107
|
+
}));
|
|
108
|
+
expect(w).toMatchSnapshot();
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
describe('logic', function () {
|
|
112
|
+
var w, onChange;
|
|
113
|
+
beforeEach(function () {
|
|
114
|
+
onChange = jest.fn();
|
|
115
|
+
w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.TokenSelect, {
|
|
116
|
+
tokens: [{
|
|
117
|
+
text: 'foo',
|
|
118
|
+
start: 0,
|
|
119
|
+
end: 3
|
|
120
|
+
}, {
|
|
121
|
+
text: 'bar',
|
|
122
|
+
start: 4,
|
|
123
|
+
end: 7
|
|
124
|
+
}],
|
|
125
|
+
classes: {},
|
|
126
|
+
onChange: onChange
|
|
127
|
+
}));
|
|
128
|
+
});
|
|
129
|
+
describe('selectedCount', function () {
|
|
130
|
+
it('returns the correct count', function () {
|
|
131
|
+
expect(w.instance().selectedCount()).toEqual(0);
|
|
132
|
+
});
|
|
133
|
+
it('returns the correct count for 1 selected', function () {
|
|
134
|
+
w.setProps({
|
|
135
|
+
tokens: [{
|
|
136
|
+
selected: true
|
|
137
|
+
}]
|
|
138
|
+
});
|
|
139
|
+
expect(w.instance().selectedCount()).toEqual(1);
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
describe('canSelectMore', function () {
|
|
143
|
+
it('returns true for undefined max selections', function () {
|
|
144
|
+
w.setProps({
|
|
145
|
+
maxNoOfSelections: undefined
|
|
146
|
+
});
|
|
147
|
+
expect(w.instance().canSelectMore(10)).toEqual(true);
|
|
148
|
+
});
|
|
149
|
+
it('returns true for 0 max selections', function () {
|
|
150
|
+
w.setProps({
|
|
151
|
+
maxNoOfSelections: 0
|
|
152
|
+
});
|
|
153
|
+
expect(w.instance().canSelectMore(10)).toEqual(true);
|
|
154
|
+
});
|
|
155
|
+
it('returns true for -1 max selections', function () {
|
|
156
|
+
w.setProps({
|
|
157
|
+
maxNoOfSelections: -1
|
|
158
|
+
});
|
|
159
|
+
expect(w.instance().canSelectMore(10)).toEqual(true);
|
|
160
|
+
});
|
|
161
|
+
it('returns true for 5 max selections and count 4', function () {
|
|
162
|
+
w.setProps({
|
|
163
|
+
maxNoOfSelections: 5
|
|
164
|
+
});
|
|
165
|
+
expect(w.instance().canSelectMore(4)).toEqual(true);
|
|
166
|
+
});
|
|
167
|
+
it('returns true for 5 max selections and count 5', function () {
|
|
168
|
+
w.setProps({
|
|
169
|
+
maxNoOfSelections: 5
|
|
170
|
+
});
|
|
171
|
+
expect(w.instance().canSelectMore(5)).toEqual(false);
|
|
172
|
+
});
|
|
173
|
+
it('returns false for 5 max selections and count 6', function () {
|
|
174
|
+
w.setProps({
|
|
175
|
+
maxNoOfSelections: 5
|
|
176
|
+
});
|
|
177
|
+
expect(w.instance().canSelectMore(6)).toEqual(false);
|
|
178
|
+
});
|
|
179
|
+
it('returns true for 1 max selections and count 1', function () {
|
|
180
|
+
w.setProps({
|
|
181
|
+
maxNoOfSelections: 1
|
|
182
|
+
});
|
|
183
|
+
expect(w.instance().canSelectMore(1)).toEqual(true);
|
|
184
|
+
});
|
|
185
|
+
});
|
|
186
|
+
describe('toggleToken', function () {
|
|
187
|
+
it('return if clicked target is not selectable', function () {
|
|
188
|
+
w.setProps({
|
|
189
|
+
maxNoOfSelections: 1,
|
|
190
|
+
tokens: [{
|
|
191
|
+
selected: true
|
|
192
|
+
}]
|
|
193
|
+
});
|
|
194
|
+
var closest = jest.fn().mockReturnValue(null);
|
|
195
|
+
var mockedEvent = {
|
|
196
|
+
target: {
|
|
197
|
+
closest: closest
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
w.instance().toggleToken(mockedEvent);
|
|
201
|
+
expect(onChange).not.toBeCalled();
|
|
202
|
+
});
|
|
203
|
+
it('calls onChange', function () {
|
|
204
|
+
w.setProps({
|
|
205
|
+
maxNoOfSelections: 0,
|
|
206
|
+
tokens: [{
|
|
207
|
+
selected: true
|
|
208
|
+
}]
|
|
209
|
+
});
|
|
210
|
+
var closest = jest.fn().mockReturnValue({
|
|
211
|
+
dataset: {
|
|
212
|
+
indexkey: '0'
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
var mockedEvent = {
|
|
216
|
+
target: {
|
|
217
|
+
closest: closest
|
|
218
|
+
}
|
|
219
|
+
};
|
|
220
|
+
w.instance().toggleToken(mockedEvent);
|
|
221
|
+
expect(onChange).toBeCalled();
|
|
222
|
+
});
|
|
223
|
+
it('returns if max tokens have been selected', function () {
|
|
224
|
+
w.setProps({
|
|
225
|
+
maxNoOfSelections: 0,
|
|
226
|
+
tokens: [{
|
|
227
|
+
selected: true
|
|
228
|
+
}]
|
|
229
|
+
});
|
|
230
|
+
var closest = jest.fn().mockReturnValue({
|
|
231
|
+
dataset: {
|
|
232
|
+
indexkey: '0'
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
var mockedEvent = {
|
|
236
|
+
target: {
|
|
237
|
+
closest: closest
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
w.instance().toggleToken(mockedEvent);
|
|
241
|
+
expect(onChange).not.toBeCalledWith([{
|
|
242
|
+
selected: true
|
|
243
|
+
}]);
|
|
244
|
+
});
|
|
245
|
+
it('calls onChange if maxNoOfSelections is 1 and selectedCount is 1', function () {
|
|
246
|
+
w.setProps({
|
|
247
|
+
maxNoOfSelections: 1,
|
|
248
|
+
tokens: [{
|
|
249
|
+
selected: true
|
|
250
|
+
}]
|
|
251
|
+
});
|
|
252
|
+
var closest = jest.fn().mockReturnValue({
|
|
253
|
+
dataset: {
|
|
254
|
+
indexkey: '0'
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
var mockedEvent = {
|
|
258
|
+
target: {
|
|
259
|
+
closest: closest
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
w.instance().toggleToken(mockedEvent);
|
|
263
|
+
expect(onChange).toBeCalled();
|
|
264
|
+
});
|
|
265
|
+
});
|
|
266
|
+
});
|
|
267
|
+
});
|
|
268
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b2tlbi1zZWxlY3QvX190ZXN0c19fL2luZGV4LnRlc3QuanN4Il0sIm5hbWVzIjpbImRlc2NyaWJlIiwiaXQiLCJ3IiwidGV4dCIsInN0YXJ0IiwiZW5kIiwicHJlZGVmaW5lZCIsInNlbGVjdGFibGUiLCJzZWxlY3RlZCIsImplc3QiLCJmbiIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsIm9uQ2hhbmdlIiwiYmVmb3JlRWFjaCIsImluc3RhbmNlIiwic2VsZWN0ZWRDb3VudCIsInRvRXF1YWwiLCJzZXRQcm9wcyIsInRva2VucyIsIm1heE5vT2ZTZWxlY3Rpb25zIiwidW5kZWZpbmVkIiwiY2FuU2VsZWN0TW9yZSIsImNsb3Nlc3QiLCJtb2NrUmV0dXJuVmFsdWUiLCJtb2NrZWRFdmVudCIsInRhcmdldCIsInRvZ2dsZVRva2VuIiwibm90IiwidG9CZUNhbGxlZCIsImRhdGFzZXQiLCJpbmRleGtleSIsInRvQmVDYWxsZWRXaXRoIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBRUFBLFFBQVEsQ0FBQyxjQUFELEVBQWlCLFlBQU07QUFDN0JBLEVBQUFBLFFBQVEsQ0FBQyxVQUFELEVBQWEsWUFBTTtBQUN6QkMsSUFBQUEsRUFBRSxDQUFDLFNBQUQsRUFBWSxZQUFNO0FBQ2xCLFVBQU1DLENBQUMsR0FBRyxtQ0FDUixnQ0FBQyxrQkFBRDtBQUNFLFFBQUEsTUFBTSxFQUFFLENBQ047QUFDRUMsVUFBQUEsSUFBSSxFQUFFLFNBRFI7QUFFRUMsVUFBQUEsS0FBSyxFQUFFLENBRlQ7QUFHRUMsVUFBQUEsR0FBRyxFQUFFLENBSFA7QUFJRUMsVUFBQUEsVUFBVSxFQUFFLElBSmQ7QUFLRUMsVUFBQUEsVUFBVSxFQUFFLElBTGQ7QUFNRUMsVUFBQUEsUUFBUSxFQUFFO0FBTlosU0FETSxDQURWO0FBV0UsUUFBQSxPQUFPLEVBQUUsRUFYWDtBQVlFLFFBQUEsUUFBUSxFQUFFQyxJQUFJLENBQUNDLEVBQUw7QUFaWixRQURRLENBQVY7QUFnQkFDLE1BQUFBLE1BQU0sQ0FBQ1QsQ0FBRCxDQUFOLENBQVVVLGVBQVY7QUFDRCxLQWxCQyxDQUFGO0FBb0JBWCxJQUFBQSxFQUFFLENBQUMsNEJBQUQsRUFBK0IsWUFBTTtBQUNyQyxVQUFNQyxDQUFDLEdBQUcsbUNBQ1IsZ0NBQUMsa0JBQUQ7QUFDRSxRQUFBLE1BQU0sRUFBRSxDQUNOO0FBQ0VDLFVBQUFBLElBQUksRUFBRSxNQURSO0FBRUVDLFVBQUFBLEtBQUssRUFBRSxDQUZUO0FBR0VDLFVBQUFBLEdBQUcsRUFBRSxDQUhQO0FBSUVDLFVBQUFBLFVBQVUsRUFBRSxJQUpkO0FBS0VDLFVBQUFBLFVBQVUsRUFBRSxJQUxkO0FBTUVDLFVBQUFBLFFBQVEsRUFBRTtBQU5aLFNBRE0sRUFTTjtBQUNFTCxVQUFBQSxJQUFJLEVBQUUsSUFEUjtBQUVFQyxVQUFBQSxLQUFLLEVBQUUsQ0FGVDtBQUdFQyxVQUFBQSxHQUFHLEVBQUUsQ0FIUDtBQUlFRyxVQUFBQSxRQUFRLEVBQUU7QUFKWixTQVRNLEVBZU47QUFDRUwsVUFBQUEsSUFBSSxFQUFFLEtBRFI7QUFFRUMsVUFBQUEsS0FBSyxFQUFFLENBRlQ7QUFHRUMsVUFBQUEsR0FBRyxFQUFFLENBSFA7QUFJRUMsVUFBQUEsVUFBVSxFQUFFLElBSmQ7QUFLRUMsVUFBQUEsVUFBVSxFQUFFLElBTGQ7QUFNRUMsVUFBQUEsUUFBUSxFQUFFO0FBTlosU0FmTSxDQURWO0FBeUJFLFFBQUEsT0FBTyxFQUFFLEVBekJYO0FBMEJFLFFBQUEsUUFBUSxFQUFFQyxJQUFJLENBQUNDLEVBQUw7QUExQlosUUFEUSxDQUFWO0FBOEJBQyxNQUFBQSxNQUFNLENBQUNULENBQUQsQ0FBTixDQUFVVSxlQUFWO0FBQ0QsS0FoQ0MsQ0FBRjtBQWtDQVgsSUFBQUEsRUFBRSxDQUFDLDZCQUFELEVBQWdDLFlBQU07QUFDdEMsVUFBTUMsQ0FBQyxHQUFHLG1DQUNSLGdDQUFDLGtCQUFEO0FBQ0UsUUFBQSxNQUFNLEVBQUUsQ0FDTjtBQUNFQyxVQUFBQSxJQUFJLEVBQUUsTUFEUjtBQUVFQyxVQUFBQSxLQUFLLEVBQUUsQ0FGVDtBQUdFQyxVQUFBQSxHQUFHLEVBQUUsQ0FIUDtBQUlFQyxVQUFBQSxVQUFVLEVBQUUsSUFKZDtBQUtFQyxVQUFBQSxVQUFVLEVBQUUsSUFMZDtBQU1FQyxVQUFBQSxRQUFRLEVBQUU7QUFOWixTQURNLEVBU047QUFDRUwsVUFBQUEsSUFBSSxFQUFFLE1BRFI7QUFFRUMsVUFBQUEsS0FBSyxFQUFFLENBRlQ7QUFHRUMsVUFBQUEsR0FBRyxFQUFFLENBSFA7QUFJRUcsVUFBQUEsUUFBUSxFQUFFO0FBSlosU0FUTSxFQWVOO0FBQ0VMLFVBQUFBLElBQUksRUFBRSxLQURSO0FBRUVDLFVBQUFBLEtBQUssRUFBRSxDQUZUO0FBR0VDLFVBQUFBLEdBQUcsRUFBRSxDQUhQO0FBSUVDLFVBQUFBLFVBQVUsRUFBRSxJQUpkO0FBS0VDLFVBQUFBLFVBQVUsRUFBRSxJQUxkO0FBTUVDLFVBQUFBLFFBQVEsRUFBRTtBQU5aLFNBZk0sQ0FEVjtBQXlCRSxRQUFBLE9BQU8sRUFBRSxFQXpCWDtBQTBCRSxRQUFBLFFBQVEsRUFBRUMsSUFBSSxDQUFDQyxFQUFMO0FBMUJaLFFBRFEsQ0FBVjtBQThCQUMsTUFBQUEsTUFBTSxDQUFDVCxDQUFELENBQU4sQ0FBVVUsZUFBVjtBQUNELEtBaENDLENBQUY7QUFrQ0FYLElBQUFBLEVBQUUsQ0FBQywyQ0FBRCxFQUE4QyxZQUFNO0FBQ3BELFVBQU1DLENBQUMsR0FBRyxtQ0FDUixnQ0FBQyxrQkFBRDtBQUNFLFFBQUEsUUFBUSxNQURWO0FBRUUsUUFBQSxNQUFNLEVBQUUsQ0FDTjtBQUNFQyxVQUFBQSxJQUFJLEVBQUUsTUFEUjtBQUVFQyxVQUFBQSxLQUFLLEVBQUUsQ0FGVDtBQUdFQyxVQUFBQSxHQUFHLEVBQUUsQ0FIUDtBQUlFQyxVQUFBQSxVQUFVLEVBQUUsSUFKZDtBQUtFQyxVQUFBQSxVQUFVLEVBQUUsSUFMZDtBQU1FQyxVQUFBQSxRQUFRLEVBQUU7QUFOWixTQURNLEVBU047QUFDRUwsVUFBQUEsSUFBSSxFQUFFLElBRFI7QUFFRUMsVUFBQUEsS0FBSyxFQUFFLENBRlQ7QUFHRUMsVUFBQUEsR0FBRyxFQUFFLENBSFA7QUFJRUcsVUFBQUEsUUFBUSxFQUFFO0FBSlosU0FUTSxFQWVOO0FBQ0VMLFVBQUFBLElBQUksRUFBRSxLQURSO0FBRUVDLFVBQUFBLEtBQUssRUFBRSxDQUZUO0FBR0VDLFVBQUFBLEdBQUcsRUFBRSxDQUhQO0FBSUVDLFVBQUFBLFVBQVUsRUFBRSxJQUpkO0FBS0VDLFVBQUFBLFVBQVUsRUFBRSxJQUxkO0FBTUVDLFVBQUFBLFFBQVEsRUFBRTtBQU5aLFNBZk0sQ0FGVjtBQTBCRSxRQUFBLE9BQU8sRUFBRSxFQTFCWDtBQTJCRSxRQUFBLFFBQVEsRUFBRUMsSUFBSSxDQUFDQyxFQUFMO0FBM0JaLFFBRFEsQ0FBVjtBQStCQUMsTUFBQUEsTUFBTSxDQUFDVCxDQUFELENBQU4sQ0FBVVUsZUFBVjtBQUNELEtBakNDLENBQUY7QUFrQ0QsR0EzSE8sQ0FBUjtBQTZIQVosRUFBQUEsUUFBUSxDQUFDLE9BQUQsRUFBVSxZQUFNO0FBQ3RCLFFBQUlFLENBQUosRUFBT1csUUFBUDtBQUNBQyxJQUFBQSxVQUFVLENBQUMsWUFBTTtBQUNmRCxNQUFBQSxRQUFRLEdBQUdKLElBQUksQ0FBQ0MsRUFBTCxFQUFYO0FBQ0FSLE1BQUFBLENBQUMsR0FBRyxtQ0FDRixnQ0FBQyxrQkFBRDtBQUNFLFFBQUEsTUFBTSxFQUFFLENBQ047QUFDRUMsVUFBQUEsSUFBSSxFQUFFLEtBRFI7QUFFRUMsVUFBQUEsS0FBSyxFQUFFLENBRlQ7QUFHRUMsVUFBQUEsR0FBRyxFQUFFO0FBSFAsU0FETSxFQU1OO0FBQ0VGLFVBQUFBLElBQUksRUFBRSxLQURSO0FBRUVDLFVBQUFBLEtBQUssRUFBRSxDQUZUO0FBR0VDLFVBQUFBLEdBQUcsRUFBRTtBQUhQLFNBTk0sQ0FEVjtBQWFFLFFBQUEsT0FBTyxFQUFFLEVBYlg7QUFjRSxRQUFBLFFBQVEsRUFBRVE7QUFkWixRQURFLENBQUo7QUFrQkQsS0FwQlMsQ0FBVjtBQXFCQWIsSUFBQUEsUUFBUSxDQUFDLGVBQUQsRUFBa0IsWUFBTTtBQUM5QkMsTUFBQUEsRUFBRSxDQUFDLDJCQUFELEVBQThCLFlBQU07QUFDcENVLFFBQUFBLE1BQU0sQ0FBQ1QsQ0FBQyxDQUFDYSxRQUFGLEdBQWFDLGFBQWIsRUFBRCxDQUFOLENBQXFDQyxPQUFyQyxDQUE2QyxDQUE3QztBQUNELE9BRkMsQ0FBRjtBQUlBaEIsTUFBQUEsRUFBRSxDQUFDLDBDQUFELEVBQTZDLFlBQU07QUFDbkRDLFFBQUFBLENBQUMsQ0FBQ2dCLFFBQUYsQ0FBVztBQUFFQyxVQUFBQSxNQUFNLEVBQUUsQ0FBQztBQUFFWCxZQUFBQSxRQUFRLEVBQUU7QUFBWixXQUFEO0FBQVYsU0FBWDtBQUNBRyxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhQyxhQUFiLEVBQUQsQ0FBTixDQUFxQ0MsT0FBckMsQ0FBNkMsQ0FBN0M7QUFDRCxPQUhDLENBQUY7QUFJRCxLQVRPLENBQVI7QUFXQWpCLElBQUFBLFFBQVEsQ0FBQyxlQUFELEVBQWtCLFlBQU07QUFDOUJDLE1BQUFBLEVBQUUsQ0FBQywyQ0FBRCxFQUE4QyxZQUFNO0FBQ3BEQyxRQUFBQSxDQUFDLENBQUNnQixRQUFGLENBQVc7QUFBRUUsVUFBQUEsaUJBQWlCLEVBQUVDO0FBQXJCLFNBQVg7QUFDQVYsUUFBQUEsTUFBTSxDQUFDVCxDQUFDLENBQUNhLFFBQUYsR0FBYU8sYUFBYixDQUEyQixFQUEzQixDQUFELENBQU4sQ0FBdUNMLE9BQXZDLENBQStDLElBQS9DO0FBQ0QsT0FIQyxDQUFGO0FBSUFoQixNQUFBQSxFQUFFLENBQUMsbUNBQUQsRUFBc0MsWUFBTTtBQUM1Q0MsUUFBQUEsQ0FBQyxDQUFDZ0IsUUFBRixDQUFXO0FBQUVFLFVBQUFBLGlCQUFpQixFQUFFO0FBQXJCLFNBQVg7QUFDQVQsUUFBQUEsTUFBTSxDQUFDVCxDQUFDLENBQUNhLFFBQUYsR0FBYU8sYUFBYixDQUEyQixFQUEzQixDQUFELENBQU4sQ0FBdUNMLE9BQXZDLENBQStDLElBQS9DO0FBQ0QsT0FIQyxDQUFGO0FBSUFoQixNQUFBQSxFQUFFLENBQUMsb0NBQUQsRUFBdUMsWUFBTTtBQUM3Q0MsUUFBQUEsQ0FBQyxDQUFDZ0IsUUFBRixDQUFXO0FBQUVFLFVBQUFBLGlCQUFpQixFQUFFLENBQUM7QUFBdEIsU0FBWDtBQUNBVCxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhTyxhQUFiLENBQTJCLEVBQTNCLENBQUQsQ0FBTixDQUF1Q0wsT0FBdkMsQ0FBK0MsSUFBL0M7QUFDRCxPQUhDLENBQUY7QUFJQWhCLE1BQUFBLEVBQUUsQ0FBQywrQ0FBRCxFQUFrRCxZQUFNO0FBQ3hEQyxRQUFBQSxDQUFDLENBQUNnQixRQUFGLENBQVc7QUFBRUUsVUFBQUEsaUJBQWlCLEVBQUU7QUFBckIsU0FBWDtBQUNBVCxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhTyxhQUFiLENBQTJCLENBQTNCLENBQUQsQ0FBTixDQUFzQ0wsT0FBdEMsQ0FBOEMsSUFBOUM7QUFDRCxPQUhDLENBQUY7QUFLQWhCLE1BQUFBLEVBQUUsQ0FBQywrQ0FBRCxFQUFrRCxZQUFNO0FBQ3hEQyxRQUFBQSxDQUFDLENBQUNnQixRQUFGLENBQVc7QUFBRUUsVUFBQUEsaUJBQWlCLEVBQUU7QUFBckIsU0FBWDtBQUNBVCxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhTyxhQUFiLENBQTJCLENBQTNCLENBQUQsQ0FBTixDQUFzQ0wsT0FBdEMsQ0FBOEMsS0FBOUM7QUFDRCxPQUhDLENBQUY7QUFLQWhCLE1BQUFBLEVBQUUsQ0FBQyxnREFBRCxFQUFtRCxZQUFNO0FBQ3pEQyxRQUFBQSxDQUFDLENBQUNnQixRQUFGLENBQVc7QUFBRUUsVUFBQUEsaUJBQWlCLEVBQUU7QUFBckIsU0FBWDtBQUNBVCxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhTyxhQUFiLENBQTJCLENBQTNCLENBQUQsQ0FBTixDQUFzQ0wsT0FBdEMsQ0FBOEMsS0FBOUM7QUFDRCxPQUhDLENBQUY7QUFLQWhCLE1BQUFBLEVBQUUsQ0FBQywrQ0FBRCxFQUFrRCxZQUFNO0FBQ3hEQyxRQUFBQSxDQUFDLENBQUNnQixRQUFGLENBQVc7QUFBRUUsVUFBQUEsaUJBQWlCLEVBQUU7QUFBckIsU0FBWDtBQUNBVCxRQUFBQSxNQUFNLENBQUNULENBQUMsQ0FBQ2EsUUFBRixHQUFhTyxhQUFiLENBQTJCLENBQTNCLENBQUQsQ0FBTixDQUFzQ0wsT0FBdEMsQ0FBOEMsSUFBOUM7QUFDRCxPQUhDLENBQUY7QUFJRCxLQWhDTyxDQUFSO0FBa0NBakIsSUFBQUEsUUFBUSxDQUFDLGFBQUQsRUFBZ0IsWUFBTTtBQUM1QkMsTUFBQUEsRUFBRSxDQUFDLDRDQUFELEVBQStDLFlBQU07QUFDckRDLFFBQUFBLENBQUMsQ0FBQ2dCLFFBQUYsQ0FBVztBQUFFRSxVQUFBQSxpQkFBaUIsRUFBRSxDQUFyQjtBQUF3QkQsVUFBQUEsTUFBTSxFQUFFLENBQUM7QUFBRVgsWUFBQUEsUUFBUSxFQUFFO0FBQVosV0FBRDtBQUFoQyxTQUFYO0FBRUEsWUFBTWUsT0FBTyxHQUFHZCxJQUFJLENBQUNDLEVBQUwsR0FBVWMsZUFBVixDQUEwQixJQUExQixDQUFoQjtBQUNBLFlBQU1DLFdBQVcsR0FBRztBQUFFQyxVQUFBQSxNQUFNLEVBQUU7QUFBRUgsWUFBQUEsT0FBTyxFQUFQQTtBQUFGO0FBQVYsU0FBcEI7QUFFQXJCLFFBQUFBLENBQUMsQ0FBQ2EsUUFBRixHQUFhWSxXQUFiLENBQXlCRixXQUF6QjtBQUVBZCxRQUFBQSxNQUFNLENBQUNFLFFBQUQsQ0FBTixDQUFpQmUsR0FBakIsQ0FBcUJDLFVBQXJCO0FBQ0QsT0FUQyxDQUFGO0FBV0E1QixNQUFBQSxFQUFFLENBQUMsZ0JBQUQsRUFBbUIsWUFBTTtBQUN6QkMsUUFBQUEsQ0FBQyxDQUFDZ0IsUUFBRixDQUFXO0FBQUVFLFVBQUFBLGlCQUFpQixFQUFFLENBQXJCO0FBQXdCRCxVQUFBQSxNQUFNLEVBQUUsQ0FBQztBQUFFWCxZQUFBQSxRQUFRLEVBQUU7QUFBWixXQUFEO0FBQWhDLFNBQVg7QUFFQSxZQUFNZSxPQUFPLEdBQUdkLElBQUksQ0FBQ0MsRUFBTCxHQUFVYyxlQUFWLENBQTBCO0FBQ3hDTSxVQUFBQSxPQUFPLEVBQUU7QUFDUEMsWUFBQUEsUUFBUSxFQUFFO0FBREg7QUFEK0IsU0FBMUIsQ0FBaEI7QUFLQSxZQUFNTixXQUFXLEdBQUc7QUFBRUMsVUFBQUEsTUFBTSxFQUFFO0FBQUVILFlBQUFBLE9BQU8sRUFBUEE7QUFBRjtBQUFWLFNBQXBCO0FBRUFyQixRQUFBQSxDQUFDLENBQUNhLFFBQUYsR0FBYVksV0FBYixDQUF5QkYsV0FBekI7QUFFQWQsUUFBQUEsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJnQixVQUFqQjtBQUNELE9BYkMsQ0FBRjtBQWVBNUIsTUFBQUEsRUFBRSxDQUFDLDBDQUFELEVBQTZDLFlBQU07QUFDbkRDLFFBQUFBLENBQUMsQ0FBQ2dCLFFBQUYsQ0FBVztBQUFFRSxVQUFBQSxpQkFBaUIsRUFBRSxDQUFyQjtBQUF3QkQsVUFBQUEsTUFBTSxFQUFFLENBQUM7QUFBRVgsWUFBQUEsUUFBUSxFQUFFO0FBQVosV0FBRDtBQUFoQyxTQUFYO0FBRUEsWUFBTWUsT0FBTyxHQUFHZCxJQUFJLENBQUNDLEVBQUwsR0FBVWMsZUFBVixDQUEwQjtBQUN4Q00sVUFBQUEsT0FBTyxFQUFFO0FBQ1BDLFlBQUFBLFFBQVEsRUFBRTtBQURIO0FBRCtCLFNBQTFCLENBQWhCO0FBS0EsWUFBTU4sV0FBVyxHQUFHO0FBQUVDLFVBQUFBLE1BQU0sRUFBRTtBQUFFSCxZQUFBQSxPQUFPLEVBQVBBO0FBQUY7QUFBVixTQUFwQjtBQUVBckIsUUFBQUEsQ0FBQyxDQUFDYSxRQUFGLEdBQWFZLFdBQWIsQ0FBeUJGLFdBQXpCO0FBRUFkLFFBQUFBLE1BQU0sQ0FBQ0UsUUFBRCxDQUFOLENBQWlCZSxHQUFqQixDQUFxQkksY0FBckIsQ0FBb0MsQ0FBQztBQUFFeEIsVUFBQUEsUUFBUSxFQUFFO0FBQVosU0FBRCxDQUFwQztBQUNELE9BYkMsQ0FBRjtBQWVBUCxNQUFBQSxFQUFFLENBQUMsaUVBQUQsRUFBb0UsWUFBTTtBQUMxRUMsUUFBQUEsQ0FBQyxDQUFDZ0IsUUFBRixDQUFXO0FBQUVFLFVBQUFBLGlCQUFpQixFQUFFLENBQXJCO0FBQXdCRCxVQUFBQSxNQUFNLEVBQUUsQ0FBQztBQUFFWCxZQUFBQSxRQUFRLEVBQUU7QUFBWixXQUFEO0FBQWhDLFNBQVg7QUFFQSxZQUFNZSxPQUFPLEdBQUdkLElBQUksQ0FBQ0MsRUFBTCxHQUFVYyxlQUFWLENBQTBCO0FBQ3hDTSxVQUFBQSxPQUFPLEVBQUU7QUFDUEMsWUFBQUEsUUFBUSxFQUFFO0FBREg7QUFEK0IsU0FBMUIsQ0FBaEI7QUFLQSxZQUFNTixXQUFXLEdBQUc7QUFBRUMsVUFBQUEsTUFBTSxFQUFFO0FBQUVILFlBQUFBLE9BQU8sRUFBUEE7QUFBRjtBQUFWLFNBQXBCO0FBRUFyQixRQUFBQSxDQUFDLENBQUNhLFFBQUYsR0FBYVksV0FBYixDQUF5QkYsV0FBekI7QUFFQWQsUUFBQUEsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJnQixVQUFqQjtBQUNELE9BYkMsQ0FBRjtBQWNELEtBeERPLENBQVI7QUF5REQsR0E3SE8sQ0FBUjtBQThIRCxDQTVQTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVG9rZW5TZWxlY3QgfSBmcm9tICcuLi9pbmRleCc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgc2hhbGxvdyB9IGZyb20gJ2VuenltZSc7XG5cbmRlc2NyaWJlKCd0b2tlbi1zZWxlY3QnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdzbmFwc2hvdCcsICgpID0+IHtcbiAgICBpdCgncmVuZGVycycsICgpID0+IHtcbiAgICAgIGNvbnN0IHcgPSBzaGFsbG93KFxuICAgICAgICA8VG9rZW5TZWxlY3RcbiAgICAgICAgICB0b2tlbnM9e1tcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGV4dDogJ2ZvbyBiYXInLFxuICAgICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgICAgZW5kOiA3LFxuICAgICAgICAgICAgICBwcmVkZWZpbmVkOiB0cnVlLFxuICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF19XG4gICAgICAgICAgY2xhc3Nlcz17e319XG4gICAgICAgICAgb25DaGFuZ2U9e2plc3QuZm4oKX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgc2VudGVuY2VzIHByb3Blcmx5JywgKCkgPT4ge1xuICAgICAgY29uc3QgdyA9IHNoYWxsb3coXG4gICAgICAgIDxUb2tlblNlbGVjdFxuICAgICAgICAgIHRva2Vucz17W1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXh0OiAnZm9vLCcsXG4gICAgICAgICAgICAgIHN0YXJ0OiAwLFxuICAgICAgICAgICAgICBlbmQ6IDQsXG4gICAgICAgICAgICAgIHByZWRlZmluZWQ6IHRydWUsXG4gICAgICAgICAgICAgIHNlbGVjdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdcXG4nLFxuICAgICAgICAgICAgICBzdGFydDogNCxcbiAgICAgICAgICAgICAgZW5kOiA1LFxuICAgICAgICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXh0OiAnYmFyJyxcbiAgICAgICAgICAgICAgc3RhcnQ6IDUsXG4gICAgICAgICAgICAgIGVuZDogOCxcbiAgICAgICAgICAgICAgcHJlZGVmaW5lZDogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdfVxuICAgICAgICAgIGNsYXNzZXM9e3t9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtqZXN0LmZuKCl9XG4gICAgICAgIC8+LFxuICAgICAgKTtcbiAgICAgIGV4cGVjdCh3KS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIHBhcmFncmFwaHMgcHJvcGVybHknLCAoKSA9PiB7XG4gICAgICBjb25zdCB3ID0gc2hhbGxvdyhcbiAgICAgICAgPFRva2VuU2VsZWN0XG4gICAgICAgICAgdG9rZW5zPXtbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdmb28sJyxcbiAgICAgICAgICAgICAgc3RhcnQ6IDAsXG4gICAgICAgICAgICAgIGVuZDogNCxcbiAgICAgICAgICAgICAgcHJlZGVmaW5lZDogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGV4dDogJ1xcblxcbicsXG4gICAgICAgICAgICAgIHN0YXJ0OiA0LFxuICAgICAgICAgICAgICBlbmQ6IDUsXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdiYXInLFxuICAgICAgICAgICAgICBzdGFydDogNSxcbiAgICAgICAgICAgICAgZW5kOiA4LFxuICAgICAgICAgICAgICBwcmVkZWZpbmVkOiB0cnVlLFxuICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF19XG4gICAgICAgICAgY2xhc3Nlcz17e319XG4gICAgICAgICAgb25DaGFuZ2U9e2plc3QuZm4oKX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgaW4gdmlldyBtb2RlIHdpdGggc2VsZWN0ZWQgdG9rZW5zJywgKCkgPT4ge1xuICAgICAgY29uc3QgdyA9IHNoYWxsb3coXG4gICAgICAgIDxUb2tlblNlbGVjdFxuICAgICAgICAgIGRpc2FibGVkXG4gICAgICAgICAgdG9rZW5zPXtbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdmb28sJyxcbiAgICAgICAgICAgICAgc3RhcnQ6IDAsXG4gICAgICAgICAgICAgIGVuZDogNCxcbiAgICAgICAgICAgICAgcHJlZGVmaW5lZDogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXh0OiAnXFxuJyxcbiAgICAgICAgICAgICAgc3RhcnQ6IDQsXG4gICAgICAgICAgICAgIGVuZDogNSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGV4dDogJ2JhcicsXG4gICAgICAgICAgICAgIHN0YXJ0OiA1LFxuICAgICAgICAgICAgICBlbmQ6IDgsXG4gICAgICAgICAgICAgIHByZWRlZmluZWQ6IHRydWUsXG4gICAgICAgICAgICAgIHNlbGVjdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdfVxuICAgICAgICAgIGNsYXNzZXM9e3t9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtqZXN0LmZuKCl9XG4gICAgICAgIC8+LFxuICAgICAgKTtcbiAgICAgIGV4cGVjdCh3KS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2xvZ2ljJywgKCkgPT4ge1xuICAgIGxldCB3LCBvbkNoYW5nZTtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICAgICAgdyA9IHNoYWxsb3coXG4gICAgICAgIDxUb2tlblNlbGVjdFxuICAgICAgICAgIHRva2Vucz17W1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXh0OiAnZm9vJyxcbiAgICAgICAgICAgICAgc3RhcnQ6IDAsXG4gICAgICAgICAgICAgIGVuZDogMyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdiYXInLFxuICAgICAgICAgICAgICBzdGFydDogNCxcbiAgICAgICAgICAgICAgZW5kOiA3LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdfVxuICAgICAgICAgIGNsYXNzZXM9e3t9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdzZWxlY3RlZENvdW50JywgKCkgPT4ge1xuICAgICAgaXQoJ3JldHVybnMgdGhlIGNvcnJlY3QgY291bnQnLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdCh3Lmluc3RhbmNlKCkuc2VsZWN0ZWRDb3VudCgpKS50b0VxdWFsKDApO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdyZXR1cm5zIHRoZSBjb3JyZWN0IGNvdW50IGZvciAxIHNlbGVjdGVkJywgKCkgPT4ge1xuICAgICAgICB3LnNldFByb3BzKHsgdG9rZW5zOiBbeyBzZWxlY3RlZDogdHJ1ZSB9XSB9KTtcbiAgICAgICAgZXhwZWN0KHcuaW5zdGFuY2UoKS5zZWxlY3RlZENvdW50KCkpLnRvRXF1YWwoMSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGRlc2NyaWJlKCdjYW5TZWxlY3RNb3JlJywgKCkgPT4ge1xuICAgICAgaXQoJ3JldHVybnMgdHJ1ZSBmb3IgdW5kZWZpbmVkIG1heCBzZWxlY3Rpb25zJywgKCkgPT4ge1xuICAgICAgICB3LnNldFByb3BzKHsgbWF4Tm9PZlNlbGVjdGlvbnM6IHVuZGVmaW5lZCB9KTtcbiAgICAgICAgZXhwZWN0KHcuaW5zdGFuY2UoKS5jYW5TZWxlY3RNb3JlKDEwKSkudG9FcXVhbCh0cnVlKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3JldHVybnMgdHJ1ZSBmb3IgMCBtYXggc2VsZWN0aW9ucycsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiAwIH0pO1xuICAgICAgICBleHBlY3Qody5pbnN0YW5jZSgpLmNhblNlbGVjdE1vcmUoMTApKS50b0VxdWFsKHRydWUpO1xuICAgICAgfSk7XG4gICAgICBpdCgncmV0dXJucyB0cnVlIGZvciAtMSBtYXggc2VsZWN0aW9ucycsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiAtMSB9KTtcbiAgICAgICAgZXhwZWN0KHcuaW5zdGFuY2UoKS5jYW5TZWxlY3RNb3JlKDEwKSkudG9FcXVhbCh0cnVlKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3JldHVybnMgdHJ1ZSBmb3IgNSBtYXggc2VsZWN0aW9ucyBhbmQgY291bnQgNCcsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiA1IH0pO1xuICAgICAgICBleHBlY3Qody5pbnN0YW5jZSgpLmNhblNlbGVjdE1vcmUoNCkpLnRvRXF1YWwodHJ1ZSk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ3JldHVybnMgdHJ1ZSBmb3IgNSBtYXggc2VsZWN0aW9ucyBhbmQgY291bnQgNScsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiA1IH0pO1xuICAgICAgICBleHBlY3Qody5pbnN0YW5jZSgpLmNhblNlbGVjdE1vcmUoNSkpLnRvRXF1YWwoZmFsc2UpO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdyZXR1cm5zIGZhbHNlIGZvciA1IG1heCBzZWxlY3Rpb25zIGFuZCBjb3VudCA2JywgKCkgPT4ge1xuICAgICAgICB3LnNldFByb3BzKHsgbWF4Tm9PZlNlbGVjdGlvbnM6IDUgfSk7XG4gICAgICAgIGV4cGVjdCh3Lmluc3RhbmNlKCkuY2FuU2VsZWN0TW9yZSg2KSkudG9FcXVhbChmYWxzZSk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ3JldHVybnMgdHJ1ZSBmb3IgMSBtYXggc2VsZWN0aW9ucyBhbmQgY291bnQgMScsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiAxIH0pO1xuICAgICAgICBleHBlY3Qody5pbnN0YW5jZSgpLmNhblNlbGVjdE1vcmUoMSkpLnRvRXF1YWwodHJ1ZSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGRlc2NyaWJlKCd0b2dnbGVUb2tlbicsICgpID0+IHtcbiAgICAgIGl0KCdyZXR1cm4gaWYgY2xpY2tlZCB0YXJnZXQgaXMgbm90IHNlbGVjdGFibGUnLCAoKSA9PiB7XG4gICAgICAgIHcuc2V0UHJvcHMoeyBtYXhOb09mU2VsZWN0aW9uczogMSwgdG9rZW5zOiBbeyBzZWxlY3RlZDogdHJ1ZSB9XSB9KTtcblxuICAgICAgICBjb25zdCBjbG9zZXN0ID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZShudWxsKTtcbiAgICAgICAgY29uc3QgbW9ja2VkRXZlbnQgPSB7IHRhcmdldDogeyBjbG9zZXN0IH0gfTtcblxuICAgICAgICB3Lmluc3RhbmNlKCkudG9nZ2xlVG9rZW4obW9ja2VkRXZlbnQpO1xuXG4gICAgICAgIGV4cGVjdChvbkNoYW5nZSkubm90LnRvQmVDYWxsZWQoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgnY2FsbHMgb25DaGFuZ2UnLCAoKSA9PiB7XG4gICAgICAgIHcuc2V0UHJvcHMoeyBtYXhOb09mU2VsZWN0aW9uczogMCwgdG9rZW5zOiBbeyBzZWxlY3RlZDogdHJ1ZSB9XSB9KTtcblxuICAgICAgICBjb25zdCBjbG9zZXN0ID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7XG4gICAgICAgICAgZGF0YXNldDoge1xuICAgICAgICAgICAgaW5kZXhrZXk6ICcwJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgbW9ja2VkRXZlbnQgPSB7IHRhcmdldDogeyBjbG9zZXN0IH0gfTtcblxuICAgICAgICB3Lmluc3RhbmNlKCkudG9nZ2xlVG9rZW4obW9ja2VkRXZlbnQpO1xuXG4gICAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9CZUNhbGxlZCgpO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdyZXR1cm5zIGlmIG1heCB0b2tlbnMgaGF2ZSBiZWVuIHNlbGVjdGVkJywgKCkgPT4ge1xuICAgICAgICB3LnNldFByb3BzKHsgbWF4Tm9PZlNlbGVjdGlvbnM6IDAsIHRva2VuczogW3sgc2VsZWN0ZWQ6IHRydWUgfV0gfSk7XG5cbiAgICAgICAgY29uc3QgY2xvc2VzdCA9IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoe1xuICAgICAgICAgIGRhdGFzZXQ6IHtcbiAgICAgICAgICAgIGluZGV4a2V5OiAnMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IG1vY2tlZEV2ZW50ID0geyB0YXJnZXQ6IHsgY2xvc2VzdCB9IH07XG5cbiAgICAgICAgdy5pbnN0YW5jZSgpLnRvZ2dsZVRva2VuKG1vY2tlZEV2ZW50KTtcblxuICAgICAgICBleHBlY3Qob25DaGFuZ2UpLm5vdC50b0JlQ2FsbGVkV2l0aChbeyBzZWxlY3RlZDogdHJ1ZSB9XSk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIGlmIG1heE5vT2ZTZWxlY3Rpb25zIGlzIDEgYW5kIHNlbGVjdGVkQ291bnQgaXMgMScsICgpID0+IHtcbiAgICAgICAgdy5zZXRQcm9wcyh7IG1heE5vT2ZTZWxlY3Rpb25zOiAxLCB0b2tlbnM6IFt7IHNlbGVjdGVkOiB0cnVlIH1dIH0pO1xuXG4gICAgICAgIGNvbnN0IGNsb3Nlc3QgPSBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKHtcbiAgICAgICAgICBkYXRhc2V0OiB7XG4gICAgICAgICAgICBpbmRleGtleTogJzAnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBtb2NrZWRFdmVudCA9IHsgdGFyZ2V0OiB7IGNsb3Nlc3QgfSB9O1xuXG4gICAgICAgIHcuaW5zdGFuY2UoKS50b2dnbGVUb2tlbihtb2NrZWRFdmVudCk7XG5cbiAgICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0JlQ2FsbGVkKCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _token = require("../token");
|
|
6
|
+
|
|
7
|
+
var _enzyme = require("enzyme");
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
|
|
11
|
+
describe('token', function () {
|
|
12
|
+
describe('snapshot', function () {
|
|
13
|
+
it('renders', function () {
|
|
14
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_token.Token, {
|
|
15
|
+
classes: {
|
|
16
|
+
token: 'token',
|
|
17
|
+
selectable: 'selectable'
|
|
18
|
+
},
|
|
19
|
+
text: 'foo bar'
|
|
20
|
+
}));
|
|
21
|
+
expect(w).toMatchSnapshot();
|
|
22
|
+
});
|
|
23
|
+
it('renders with brs', function () {
|
|
24
|
+
var w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_token.Token, {
|
|
25
|
+
classes: {
|
|
26
|
+
token: 'token',
|
|
27
|
+
selectable: 'selectable'
|
|
28
|
+
},
|
|
29
|
+
text: 'foo \nbar'
|
|
30
|
+
}));
|
|
31
|
+
expect(w).toMatchSnapshot();
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b2tlbi1zZWxlY3QvX190ZXN0c19fL3Rva2VuLnRlc3QuanN4Il0sIm5hbWVzIjpbImRlc2NyaWJlIiwiaXQiLCJ3IiwidG9rZW4iLCJzZWxlY3RhYmxlIiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBRUFBLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBTTtBQUN0QkEsRUFBQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCQyxJQUFBQSxFQUFFLENBQUMsU0FBRCxFQUFZLFlBQU07QUFDbEIsVUFBTUMsQ0FBQyxHQUFHLG1DQUNSLGdDQUFDLFlBQUQ7QUFDRSxRQUFBLE9BQU8sRUFBRTtBQUNQQyxVQUFBQSxLQUFLLEVBQUUsT0FEQTtBQUVQQyxVQUFBQSxVQUFVLEVBQUU7QUFGTCxTQURYO0FBS0UsUUFBQSxJQUFJLEVBQUU7QUFMUixRQURRLENBQVY7QUFTQUMsTUFBQUEsTUFBTSxDQUFDSCxDQUFELENBQU4sQ0FBVUksZUFBVjtBQUNELEtBWEMsQ0FBRjtBQWFBTCxJQUFBQSxFQUFFLENBQUMsa0JBQUQsRUFBcUIsWUFBTTtBQUMzQixVQUFNQyxDQUFDLEdBQUcsbUNBQ1IsZ0NBQUMsWUFBRDtBQUNFLFFBQUEsT0FBTyxFQUFFO0FBQ1BDLFVBQUFBLEtBQUssRUFBRSxPQURBO0FBRVBDLFVBQUFBLFVBQVUsRUFBRTtBQUZMLFNBRFg7QUFLRSxRQUFBLElBQUksRUFBRTtBQUxSLFFBRFEsQ0FBVjtBQVNBQyxNQUFBQSxNQUFNLENBQUNILENBQUQsQ0FBTixDQUFVSSxlQUFWO0FBQ0QsS0FYQyxDQUFGO0FBWUQsR0ExQk8sQ0FBUjtBQTJCRCxDQTVCTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVG9rZW4gfSBmcm9tICcuLi90b2tlbic7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmRlc2NyaWJlKCd0b2tlbicsICgpID0+IHtcbiAgZGVzY3JpYmUoJ3NuYXBzaG90JywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzJywgKCkgPT4ge1xuICAgICAgY29uc3QgdyA9IHNoYWxsb3coXG4gICAgICAgIDxUb2tlblxuICAgICAgICAgIGNsYXNzZXM9e3tcbiAgICAgICAgICAgIHRva2VuOiAndG9rZW4nLFxuICAgICAgICAgICAgc2VsZWN0YWJsZTogJ3NlbGVjdGFibGUnLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdGV4dD17J2ZvbyBiYXInfVxuICAgICAgICAvPixcbiAgICAgICk7XG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRoIGJycycsICgpID0+IHtcbiAgICAgIGNvbnN0IHcgPSBzaGFsbG93KFxuICAgICAgICA8VG9rZW5cbiAgICAgICAgICBjbGFzc2VzPXt7XG4gICAgICAgICAgICB0b2tlbjogJ3Rva2VuJyxcbiAgICAgICAgICAgIHNlbGVjdGFibGU6ICdzZWxlY3RhYmxlJyxcbiAgICAgICAgICB9fVxuICAgICAgICAgIHRleHQ9eydmb28gXFxuYmFyJ31cbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -97,9 +97,10 @@ var TokenSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
97
97
|
var tokensCloned = (0, _clone["default"])(tokens);
|
|
98
98
|
var targetSpanWrapper = target.closest(".".concat(_token["default"].rootClassName));
|
|
99
99
|
var targetedTokenIndex = targetSpanWrapper && targetSpanWrapper.dataset && targetSpanWrapper.dataset.indexkey;
|
|
100
|
-
var t = targetedTokenIndex && tokensCloned[targetedTokenIndex];
|
|
100
|
+
var t = targetedTokenIndex && tokensCloned[targetedTokenIndex]; // don't toggle if we are in print mode, token correctness is defined or if it's missing
|
|
101
|
+
// (missing means that it was evaluated as correct and not selected)
|
|
101
102
|
|
|
102
|
-
if (t && t.correct === undefined && !animationsDisabled) {
|
|
103
|
+
if (t && t.correct === undefined && !animationsDisabled && !t.isMissing) {
|
|
103
104
|
var _this$props2 = _this.props,
|
|
104
105
|
onChange = _this$props2.onChange,
|
|
105
106
|
maxNoOfSelections = _this$props2.maxNoOfSelections;
|
|
@@ -246,4 +247,4 @@ var _default = (0, _styles.withStyles)(function () {
|
|
|
246
247
|
})(TokenSelect);
|
|
247
248
|
|
|
248
249
|
exports["default"] = _default;
|
|
249
|
-
//# sourceMappingURL=index.js.map
|
|
250
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi1zZWxlY3QvaW5kZXguanN4Il0sIm5hbWVzIjpbImxvZyIsIlRva2VuU2VsZWN0IiwicHJvcHMiLCJ0b2tlbnMiLCJmaWx0ZXIiLCJ0Iiwic2VsZWN0ZWQiLCJsZW5ndGgiLCJzZWxlY3RlZENvdW50IiwibWF4Tm9PZlNlbGVjdGlvbnMiLCJpc0Zpbml0ZSIsImV2ZW50IiwidGFyZ2V0IiwiYW5pbWF0aW9uc0Rpc2FibGVkIiwidG9rZW5zQ2xvbmVkIiwidGFyZ2V0U3BhbldyYXBwZXIiLCJjbG9zZXN0IiwiVG9rZW4iLCJyb290Q2xhc3NOYW1lIiwidGFyZ2V0ZWRUb2tlbkluZGV4IiwiZGF0YXNldCIsImluZGV4a2V5IiwiY29ycmVjdCIsInVuZGVmaW5lZCIsImlzTWlzc2luZyIsIm9uQ2hhbmdlIiwic2VsZWN0ZWRUb2tlbiIsInVwZGF0ZWRUb2tlbnMiLCJtYXAiLCJ0b2tlbiIsInNlbGVjdGFibGUiLCJ1cGRhdGUiLCJzcGxpY2UiLCJkaXNhYmxlZCIsImhpZ2hsaWdodENob2ljZXMiLCJpc0xpbmVCcmVhayIsInRleHQiLCJpc05ld1BhcmFncmFwaCIsInJlZHVjZXIiLCJhY2N1bXVsYXRvciIsImluZGV4IiwiY2FuU2VsZWN0TW9yZSIsInNob3dDb3JyZWN0QW5zd2VyIiwiZmluYWxBY2MiLCJwcmVkZWZpbmVkIiwicmVkdWNlUmVzdWx0IiwicmVkdWNlIiwiY2xhc3NlcyIsImNsYXNzTmFtZVByb3AiLCJjbGFzc05hbWUiLCJ0b2tlblNlbGVjdCIsImh0bWwiLCJnZW5lcmF0ZVRva2Vuc0luSHRtbCIsIl9faHRtbCIsInRvZ2dsZVRva2VuIiwiUmVhY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwic2hhcGUiLCJUb2tlblR5cGVzIiwiaXNSZXF1aXJlZCIsInN0cmluZyIsIm9iamVjdCIsImZ1bmMiLCJib29sIiwibnVtYmVyIiwiYmFja2dyb3VuZENvbG9yIiwid2hpdGVTcGFjZSJdLCJtYXBw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QkFBVztBQUFBLFNBQU87QUFDL0IrQyxJQUFBQSxXQUFXO0FBQ1RpQixNQUFBQSxlQUFlLEVBQUUsTUFEUjtBQUVUQyxNQUFBQSxVQUFVLEVBQUU7QUFGSCxPQUdOLDJCQUhNO0FBSVQsYUFBTztBQUNMQSxRQUFBQSxVQUFVLEVBQUU7QUFEUDtBQUpFO0FBRG9CLEdBQVA7QUFBQSxDQUFYLEVBU1huRSxXQVRXLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBUb2tlbiwgeyBUb2tlblR5cGVzIH0gZnJvbSAnLi90b2tlbic7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IGNsb25lIGZyb20gJ2xvZGFzaC9jbG9uZSc7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IHsgbm9TZWxlY3QgfSBmcm9tICdAcGllLWxpYi9zdHlsZS11dGlscyc7XG5pbXBvcnQgeyByZW5kZXJUb1N0cmluZyB9IGZyb20gJ3JlYWN0LWRvbS9zZXJ2ZXInO1xuaW1wb3J0IGlzRXF1YWwgZnJvbSAnbG9kYXNoL2lzRXF1YWwnO1xuXG5jb25zdCBsb2cgPSBkZWJ1ZygnQHBpZS1saWI6dGV4dC1zZWxlY3Q6dG9rZW4tc2VsZWN0Jyk7XG5cbmV4cG9ydCBjbGFzcyBUb2tlblNlbGVjdCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgdG9rZW5zOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc2hhcGUoVG9rZW5UeXBlcykpLmlzUmVxdWlyZWQsXG4gICAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgaGlnaGxpZ2h0Q2hvaWNlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgYW5pbWF0aW9uc0Rpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBtYXhOb09mU2VsZWN0aW9uczogUHJvcFR5cGVzLm51bWJlcixcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGhpZ2hsaWdodENob2ljZXM6IGZhbHNlLFxuICAgIG1heE5vT2ZTZWxlY3Rpb25zOiAwLFxuICAgIHRva2VuczogW10sXG4gIH07XG5cbiAgc2VsZWN0ZWRDb3VudCA9ICgpID0+IHRoaXMucHJvcHMudG9rZW5zLmZpbHRlcigodCkgPT4gdC5zZWxlY3RlZCkubGVuZ3RoO1xuXG4gIGNhblNlbGVjdE1vcmUgPSAoc2VsZWN0ZWRDb3VudCkgPT4ge1xuICAgIGNvbnN0IHsgbWF4Tm9PZlNlbGVjdGlvbnMgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBpZiAobWF4Tm9PZlNlbGVjdGlvbnMgPT09IDEpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGxvZygnW2NhblNlbGVjdE1vcmVdIG1heE5vT2ZTZWxlY3Rpb25zOiAnLCBtYXhOb09mU2VsZWN0aW9ucywgJ3NlbGVjdGVkQ291bnQ6ICcsIHNlbGVjdGVkQ291bnQpO1xuICAgIHJldHVybiBtYXhOb09mU2VsZWN0aW9ucyA8PSAwIHx8IChpc0Zpbml0ZShtYXhOb09mU2VsZWN0aW9ucykgJiYgc2VsZWN0ZWRDb3VudCA8IG1heE5vT2ZTZWxlY3Rpb25zKTtcbiAgfTtcblxuICAvKipcbiAgIEBmdW5jdGlvblxuICAgQHBhcmFtIHsgb2JqZWN0IH0gZXZlbnRcblxuICAgQGRlc2NyaXB0aW9uXG4gICAgZWFjaCB0b2tlbiBpcyB3cmFwcGVkIGludG8gYSBzcGFuIHRoYXQgaGFzIFRva2VuLnJvb3RDbGFzc05hbWUgY2xhc3MgYW5kIGluZGV4a2V5IGF0dHJpYnV0ZSAocmVwcmVzZW50cyB0aGUgaW5kZXggb2YgdGhlIHRva2VuKVxuICAgIHRva2VucyBhcmUgdXBkYXRlZCB3aXRoIHRoZSB0YXJnZXRlZCB0b2tlbiBoYXZpbmcgdGhlIGNvcnJlY3QgdmFsdWUgc2V0IGZvciAnc2VsZWN0ZWQnIHByb3BlcnR5XG4gICAqL1xuICB0b2dnbGVUb2tlbiA9IChldmVudCkgPT4ge1xuICAgIGNvbnN0IHsgdGFyZ2V0IH0gPSBldmVudDtcbiAgICBjb25zdCB7IHRva2VucywgYW5pbWF0aW9uc0Rpc2FibGVkIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHRva2Vuc0Nsb25lZCA9IGNsb25lKHRva2Vucyk7XG4gICAgY29uc3QgdGFyZ2V0U3BhbldyYXBwZXIgPSB0YXJnZXQuY2xvc2VzdChgLiR7VG9rZW4ucm9vdENsYXNzTmFtZX1gKTtcbiAgICBjb25zdCB0YXJnZXRlZFRva2VuSW5kZXggPSB0YXJnZXRTcGFuV3JhcHBlciAmJiB0YXJnZXRTcGFuV3JhcHBlci5kYXRhc2V0ICYmIHRhcmdldFNwYW5XcmFwcGVyLmRhdGFzZXQuaW5kZXhrZXk7XG4gICAgY29uc3QgdCA9IHRhcmdldGVkVG9rZW5JbmRleCAmJiB0b2tlbnNDbG9uZWRbdGFyZ2V0ZWRUb2tlbkluZGV4XTtcblxuICAgIC8vIGRvbid0IHRvZ2dsZSBpZiB3ZSBhcmUgaW4gcHJpbnQgbW9kZSwgdG9rZW4gY29ycmVjdG5lc3MgaXMgZGVmaW5lZCBvciBpZiBpdCdzIG1pc3NpbmdcbiAgICAvLyAobWlzc2luZyBtZWFucyB0aGF0IGl0IHdhcyBldmFsdWF0ZWQgYXMgY29ycmVjdCBhbmQgbm90IHNlbGVjdGVkKVxuICAgIGlmICh0ICYmIHQuY29ycmVjdCA9PT0gdW5kZWZpbmVkICYmICFhbmltYXRpb25zRGlzYWJsZWQgJiYgIXQuaXNNaXNzaW5nKSB7XG4gICAgICBjb25zdCB7IG9uQ2hhbmdlLCBtYXhOb09mU2VsZWN0aW9ucyB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHNlbGVjdGVkID0gIXQuc2VsZWN0ZWQ7XG5cbiAgICAgIGlmIChtYXhOb09mU2VsZWN0aW9ucyA9PT0gMSAmJiB0aGlzLnNlbGVjdGVkQ291bnQoKSA9PT0gMSkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZFRva2VuID0gKHRva2VucyB8fCBbXSkuZmlsdGVyKCh0KSA9PiB0LnNlbGVjdGVkKTtcblxuICAgICAgICBjb25zdCB1cGRhdGVkVG9rZW5zID0gdG9rZW5zQ2xvbmVkLm1hcCgodG9rZW4pID0+IHtcbiAgICAgICAgICBpZiAoaXNFcXVhbCh0b2tlbiwgc2VsZWN0ZWRUb2tlblswXSkpIHtcbiAgICAgICAgICAgIHJldHVybiB7IC4uLnRva2VuLCBzZWxlY3RlZDogZmFsc2UgfTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4geyAuLi50b2tlbiwgc2VsZWN0YWJsZTogdHJ1ZSB9O1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCB1cGRhdGUgPSB7IC4uLnQsIHNlbGVjdGVkOiAhdC5zZWxlY3RlZCB9O1xuXG4gICAgICAgIHVwZGF0ZWRUb2tlbnMuc3BsaWNlKHRhcmdldGVkVG9rZW5JbmRleCwgMSwgdXBkYXRlKTtcbiAgICAgICAgb25DaGFuZ2UodXBkYXRlZFRva2Vucyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoc2VsZWN0ZWQgJiYgbWF4Tm9PZlNlbGVjdGlvbnMgPiAwICYmIHRoaXMuc2VsZWN0ZWRDb3VudCgpID49IG1heE5vT2ZTZWxlY3Rpb25zKSB7XG4gICAgICAgICAgbG9nKCdza2lwIHRvZ2dsZSBtYXggcmVhY2hlZCcpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHVwZGF0ZSA9IHsgLi4udCwgc2VsZWN0ZWQ6ICF0LnNlbGVjdGVkIH07XG5cbiAgICAgICAgdG9rZW5zQ2xvbmVkLnNwbGljZSh0YXJnZXRlZFRva2VuSW5kZXgsIDEsIHVwZGF0ZSk7XG4gICAgICAgIG9uQ2hhbmdlKHRva2Vuc0Nsb25lZCk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGdlbmVyYXRlVG9rZW5zSW5IdG1sID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgdG9rZW5zLCBkaXNhYmxlZCwgaGlnaGxpZ2h0Q2hvaWNlcywgYW5pbWF0aW9uc0Rpc2FibGVkIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHNlbGVjdGVkQ291bnQgPSB0aGlzLnNlbGVjdGVkQ291bnQoKTtcbiAgICBjb25zdCBpc0xpbmVCcmVhayA9ICh0ZXh0KSA9PiB0ZXh0ID09PSAnXFxuJztcbiAgICBjb25zdCBpc05ld1BhcmFncmFwaCA9ICh0ZXh0KSA9PiB0ZXh0ID09PSAnXFxuXFxuJztcblxuICAgIGNvbnN0IHJlZHVjZXIgPSAoYWNjdW11bGF0b3IsIHQsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBzZWxlY3RhYmxlID0gdC5zZWxlY3RlZCB8fCAodC5zZWxlY3RhYmxlICYmIHRoaXMuY2FuU2VsZWN0TW9yZShzZWxlY3RlZENvdW50KSk7XG4gICAgICBjb25zdCBzaG93Q29ycmVjdEFuc3dlciA9IHQuY29ycmVjdCAhPT0gdW5kZWZpbmVkICYmICh0LnNlbGVjdGFibGUgfHwgdC5zZWxlY3RlZCk7XG4gICAgICBsZXQgZmluYWxBY2MgPSBhY2N1bXVsYXRvcjtcblxuICAgICAgaWYgKGlzTmV3UGFyYWdyYXBoKHQudGV4dCkpIHtcbiAgICAgICAgcmV0dXJuIGZpbmFsQWNjICsgJzwvcD48cD4nO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNMaW5lQnJlYWsodC50ZXh0KSkge1xuICAgICAgICByZXR1cm4gZmluYWxBY2MgKyAnPGJyPic7XG4gICAgICB9XG5cbiAgICAgIGlmIChcbiAgICAgICAgKHNlbGVjdGFibGUgJiYgIWRpc2FibGVkKSB8fFxuICAgICAgICBzaG93Q29ycmVjdEFuc3dlciB8fFxuICAgICAgICB0LnNlbGVjdGVkIHx8XG4gICAgICAgIHQuaXNNaXNzaW5nIHx8XG4gICAgICAgIChhbmltYXRpb25zRGlzYWJsZWQgJiYgdC5wcmVkZWZpbmVkKSAvLyBpZiB3ZSBhcmUgaW4gcHJpbnQgbW9kZVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgZmluYWxBY2MgK1xuICAgICAgICAgIHJlbmRlclRvU3RyaW5nKFxuICAgICAgICAgICAgPFRva2VuXG4gICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICB7Li4udH1cbiAgICAgICAgICAgICAgc2VsZWN0YWJsZT17c2VsZWN0YWJsZX1cbiAgICAgICAgICAgICAgaGlnaGxpZ2h0PXtoaWdobGlnaHRDaG9pY2VzfVxuICAgICAgICAgICAgICBhbmltYXRpb25zRGlzYWJsZWQ9e2FuaW1hdGlvbnNEaXNhYmxlZH1cbiAgICAgICAgICAgIC8+LFxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBhY2N1bXVsYXRvciArIHQudGV4dDtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVkdWNlUmVzdWx0ID0gKHRva2VucyB8fCBbXSkucmVkdWNlKHJlZHVjZXIsICc8cD4nKTtcblxuICAgIHJldHVybiByZWR1Y2VSZXN1bHQgKyAnPC9wPic7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgY2xhc3NlcywgY2xhc3NOYW1lOiBjbGFzc05hbWVQcm9wIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IGNsYXNzTmFtZXMoY2xhc3Nlcy50b2tlblNlbGVjdCwgY2xhc3NOYW1lUHJvcCk7XG4gICAgY29uc3QgaHRtbCA9IHRoaXMuZ2VuZXJhdGVUb2tlbnNJbkh0bWwoKTtcblxuICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfSBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IGh0bWwgfX0gb25DbGljaz17dGhpcy50b2dnbGVUb2tlbn0gLz47XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlcygoKSA9PiAoe1xuICB0b2tlblNlbGVjdDoge1xuICAgIGJhY2tncm91bmRDb2xvcjogJ25vbmUnLFxuICAgIHdoaXRlU3BhY2U6ICdwcmUnLFxuICAgIC4uLm5vU2VsZWN0KCksXG4gICAgJyYgcCc6IHtcbiAgICAgIHdoaXRlU3BhY2U6ICdicmVhay1zcGFjZXMnLFxuICAgIH0sXG4gIH0sXG59KSkoVG9rZW5TZWxlY3QpO1xuIl19
|