@pie-lib/mask-markup 1.33.1 → 1.33.2-beta-7

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 (47) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/lib/__tests__/drag-in-the-blank.test.js +71 -0
  3. package/lib/__tests__/index.test.js +50 -0
  4. package/lib/__tests__/mask.test.js +149 -0
  5. package/lib/__tests__/serialization.test.js +45 -0
  6. package/lib/__tests__/utils.js +17 -0
  7. package/lib/__tests__/with-mask.test.js +65 -0
  8. package/lib/choices/__tests__/index.test.js +85 -0
  9. package/lib/choices/choice.js +14 -5
  10. package/lib/choices/index.js +1 -1
  11. package/lib/componentize.js +1 -1
  12. package/lib/components/__tests__/blank.test.js +234 -0
  13. package/lib/components/__tests__/correct-input.test.js +63 -0
  14. package/lib/components/__tests__/dropdown.test.js +70 -0
  15. package/lib/components/__tests__/input.test.js +64 -0
  16. package/lib/components/blank.js +1 -1
  17. package/lib/components/correct-input.js +1 -1
  18. package/lib/components/dropdown.js +1 -1
  19. package/lib/components/input.js +1 -1
  20. package/lib/constructed-response.js +3 -3
  21. package/lib/customizable.js +1 -1
  22. package/lib/drag-in-the-blank.js +1 -1
  23. package/lib/index.js +1 -1
  24. package/lib/inline-dropdown.js +1 -1
  25. package/lib/mask.js +1 -1
  26. package/lib/serialization.js +1 -1
  27. package/lib/with-mask.js +1 -1
  28. package/package.json +7 -7
  29. package/src/choices/choice.jsx +13 -4
  30. package/src/constructed-response.jsx +1 -1
  31. package/LICENSE.md +0 -5
  32. package/NEXT.CHANGELOG.json +0 -1
  33. package/lib/choices/choice.js.map +0 -1
  34. package/lib/choices/index.js.map +0 -1
  35. package/lib/componentize.js.map +0 -1
  36. package/lib/components/blank.js.map +0 -1
  37. package/lib/components/correct-input.js.map +0 -1
  38. package/lib/components/dropdown.js.map +0 -1
  39. package/lib/components/input.js.map +0 -1
  40. package/lib/constructed-response.js.map +0 -1
  41. package/lib/customizable.js.map +0 -1
  42. package/lib/drag-in-the-blank.js.map +0 -1
  43. package/lib/index.js.map +0 -1
  44. package/lib/inline-dropdown.js.map +0 -1
  45. package/lib/mask.js.map +0 -1
  46. package/lib/serialization.js.map +0 -1
  47. package/lib/with-mask.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
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
+ ## [1.33.2](https://github.com/pie-framework/pie-lib/compare/@pie-lib/mask-markup@1.33.1...@pie-lib/mask-markup@1.33.2) (2025-11-27)
7
+
8
+ **Note:** Version bump only for package @pie-lib/mask-markup
9
+
10
+
11
+
12
+
13
+
6
14
  ## [1.33.1](https://github.com/pie-framework/pie-lib/compare/@pie-lib/mask-markup@1.29.2...@pie-lib/mask-markup@1.33.1) (2025-10-22)
7
15
 
8
16
  **Note:** Version bump only for package @pie-lib/mask-markup
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var React = _interopRequireWildcard(require("react"));
8
+
9
+ var _enzyme = require("enzyme");
10
+
11
+ var _dragInTheBlank = _interopRequireDefault(require("../drag-in-the-blank"));
12
+
13
+ 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); }
14
+
15
+ 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; }
16
+
17
+ var markup = "<div>\n <img src=\"https://image.shutterstock.com/image-vector/cow-jumped-over-moon-traditional-260nw-1152899330.jpg\"></img>\n <h5>Hey Diddle Diddle <i>by ?</i></h5>\n <p>1: Hey, diddle, diddle,</p>\n <p>2: The cat and the fiddle,</p>\n <p>3: The cow {{0}} over the moon;</p>\n <p>4: The little dog {{1}},</p>\n <p>5: To see such sport,</p>\n <p>6: And the dish ran away with the {{2}}.</p>\n</div>";
18
+
19
+ var choice = function choice(v, id) {
20
+ return {
21
+ value: v,
22
+ id: id
23
+ };
24
+ };
25
+
26
+ describe('DragInTheBlank', function () {
27
+ var defaultProps = {
28
+ disabled: false,
29
+ feedback: {},
30
+ markup: markup,
31
+ choices: [choice('Jumped', '0'), choice('Laughed', '1'), choice('Spoon', '2'), choice('Fork', '3'), choice('Bumped', '4'), choice('Smiled', '5')],
32
+ value: {
33
+ 0: undefined
34
+ }
35
+ };
36
+ var wrapper;
37
+ beforeEach(function () {
38
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_dragInTheBlank["default"], defaultProps));
39
+ });
40
+ describe('render', function () {
41
+ it('renders correctly with default props', function () {
42
+ expect(wrapper).toMatchSnapshot();
43
+ });
44
+ it('renders correctly with disabled prop as true', function () {
45
+ wrapper.setProps({
46
+ disabled: true
47
+ });
48
+ expect(wrapper).toMatchSnapshot();
49
+ });
50
+ it('renders correctly with feedback', function () {
51
+ wrapper.setProps({
52
+ feedback: {
53
+ 0: {
54
+ value: 'Jumped',
55
+ correct: 'Jumped'
56
+ },
57
+ 1: {
58
+ value: 'Laughed',
59
+ correct: 'Laughed'
60
+ },
61
+ 2: {
62
+ value: 'Spoon',
63
+ correct: 'Spoon'
64
+ }
65
+ }
66
+ });
67
+ expect(wrapper).toMatchSnapshot();
68
+ });
69
+ });
70
+ });
71
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vZHJhZy1pbi10aGUtYmxhbmsudGVzdC5qcyJdLCJuYW1lcyI6WyJtYXJrdXAiLCJjaG9pY2UiLCJ2IiwiaWQiLCJ2YWx1ZSIsImRlc2NyaWJlIiwiZGVmYXVsdFByb3BzIiwiZGlzYWJsZWQiLCJmZWVkYmFjayIsImNob2ljZXMiLCJ1bmRlZmluZWQiLCJ3cmFwcGVyIiwiYmVmb3JlRWFjaCIsIml0IiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90Iiwic2V0UHJvcHMiLCJjb3JyZWN0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRUEsSUFBTUEsTUFBTSx1WkFBWjs7QUFVQSxJQUFNQyxNQUFNLEdBQUcsU0FBVEEsTUFBUyxDQUFDQyxDQUFELEVBQUlDLEVBQUo7QUFBQSxTQUFZO0FBQUVDLElBQUFBLEtBQUssRUFBRUYsQ0FBVDtBQUFZQyxJQUFBQSxFQUFFLEVBQUZBO0FBQVosR0FBWjtBQUFBLENBQWY7O0FBRUFFLFFBQVEsQ0FBQyxnQkFBRCxFQUFtQixZQUFNO0FBQy9CLE1BQU1DLFlBQVksR0FBRztBQUNuQkMsSUFBQUEsUUFBUSxFQUFFLEtBRFM7QUFFbkJDLElBQUFBLFFBQVEsRUFBRSxFQUZTO0FBR25CUixJQUFBQSxNQUFNLEVBQU5BLE1BSG1CO0FBSW5CUyxJQUFBQSxPQUFPLEVBQUUsQ0FDUFIsTUFBTSxDQUFDLFFBQUQsRUFBVyxHQUFYLENBREMsRUFFUEEsTUFBTSxDQUFDLFNBQUQsRUFBWSxHQUFaLENBRkMsRUFHUEEsTUFBTSxDQUFDLE9BQUQsRUFBVSxHQUFWLENBSEMsRUFJUEEsTUFBTSxDQUFDLE1BQUQsRUFBUyxHQUFULENBSkMsRUFLUEEsTUFBTSxDQUFDLFFBQUQsRUFBVyxHQUFYLENBTEMsRUFNUEEsTUFBTSxDQUFDLFFBQUQsRUFBVyxHQUFYLENBTkMsQ0FKVTtBQWFuQkcsSUFBQUEsS0FBSyxFQUFFO0FBQ0wsU0FBR007QUFERTtBQWJZLEdBQXJCO0FBaUJBLE1BQUlDLE9BQUo7QUFFQUMsRUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZkQsSUFBQUEsT0FBTyxHQUFHLG1DQUFRLG9CQUFDLDBCQUFELEVBQW9CTCxZQUFwQixDQUFSLENBQVY7QUFDRCxHQUZTLENBQVY7QUFJQUQsRUFBQUEsUUFBUSxDQUFDLFFBQUQsRUFBVyxZQUFNO0FBQ3ZCUSxJQUFBQSxFQUFFLENBQUMsc0NBQUQsRUFBeUMsWUFBTTtBQUMvQ0MsTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FGQyxDQUFGO0FBSUFGLElBQUFBLEVBQUUsQ0FBQyw4Q0FBRCxFQUFpRCxZQUFNO0FBQ3ZERixNQUFBQSxPQUFPLENBQUNLLFFBQVIsQ0FBaUI7QUFBRVQsUUFBQUEsUUFBUSxFQUFFO0FBQVosT0FBakI7QUFDQU8sTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FIQyxDQUFGO0FBS0FGLElBQUFBLEVBQUUsQ0FBQyxpQ0FBRCxFQUFvQyxZQUFNO0FBQzFDRixNQUFBQSxPQUFPLENBQUNLLFFBQVIsQ0FBaUI7QUFDZlIsUUFBQUEsUUFBUSxFQUFFO0FBQ1IsYUFBRztBQUNESixZQUFBQSxLQUFLLEVBQUUsUUFETjtBQUVEYSxZQUFBQSxPQUFPLEVBQUU7QUFGUixXQURLO0FBS1IsYUFBRztBQUNEYixZQUFBQSxLQUFLLEVBQUUsU0FETjtBQUVEYSxZQUFBQSxPQUFPLEVBQUU7QUFGUixXQUxLO0FBU1IsYUFBRztBQUNEYixZQUFBQSxLQUFLLEVBQUUsT0FETjtBQUVEYSxZQUFBQSxPQUFPLEVBQUU7QUFGUjtBQVRLO0FBREssT0FBakI7QUFnQkFILE1BQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELEtBbEJDLENBQUY7QUFtQkQsR0E3Qk8sQ0FBUjtBQThCRCxDQXRETyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgc2hhbGxvdyB9IGZyb20gJ2VuenltZSc7XG5pbXBvcnQgRHJhZ0luVGhlQmxhbmsgZnJvbSAnLi4vZHJhZy1pbi10aGUtYmxhbmsnO1xuXG5jb25zdCBtYXJrdXAgPSBgPGRpdj5cbiAgPGltZyBzcmM9XCJodHRwczovL2ltYWdlLnNodXR0ZXJzdG9jay5jb20vaW1hZ2UtdmVjdG9yL2Nvdy1qdW1wZWQtb3Zlci1tb29uLXRyYWRpdGlvbmFsLTI2MG53LTExNTI4OTkzMzAuanBnXCI+PC9pbWc+XG4gICA8aDU+SGV5IERpZGRsZSBEaWRkbGUgPGk+YnkgPzwvaT48L2g1PlxuIDxwPjE6IEhleSwgZGlkZGxlLCBkaWRkbGUsPC9wPlxuIDxwPjI6IFRoZSBjYXQgYW5kIHRoZSBmaWRkbGUsPC9wPlxuIDxwPjM6IFRoZSBjb3cge3swfX0gb3ZlciB0aGUgbW9vbjs8L3A+XG4gPHA+NDogVGhlIGxpdHRsZSBkb2cge3sxfX0sPC9wPlxuIDxwPjU6IFRvIHNlZSBzdWNoIHNwb3J0LDwvcD5cbiA8cD42OiBBbmQgdGhlIGRpc2ggcmFuIGF3YXkgd2l0aCB0aGUge3syfX0uPC9wPlxuPC9kaXY+YDtcbmNvbnN0IGNob2ljZSA9ICh2LCBpZCkgPT4gKHsgdmFsdWU6IHYsIGlkIH0pO1xuXG5kZXNjcmliZSgnRHJhZ0luVGhlQmxhbmsnLCAoKSA9PiB7XG4gIGNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgICBkaXNhYmxlZDogZmFsc2UsXG4gICAgZmVlZGJhY2s6IHt9LFxuICAgIG1hcmt1cCxcbiAgICBjaG9pY2VzOiBbXG4gICAgICBjaG9pY2UoJ0p1bXBlZCcsICcwJyksXG4gICAgICBjaG9pY2UoJ0xhdWdoZWQnLCAnMScpLFxuICAgICAgY2hvaWNlKCdTcG9vbicsICcyJyksXG4gICAgICBjaG9pY2UoJ0ZvcmsnLCAnMycpLFxuICAgICAgY2hvaWNlKCdCdW1wZWQnLCAnNCcpLFxuICAgICAgY2hvaWNlKCdTbWlsZWQnLCAnNScpLFxuICAgIF0sXG5cbiAgICB2YWx1ZToge1xuICAgICAgMDogdW5kZWZpbmVkLFxuICAgIH0sXG4gIH07XG4gIGxldCB3cmFwcGVyO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIHdyYXBwZXIgPSBzaGFsbG93KDxEcmFnSW5UaGVCbGFuayB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdyZW5kZXInLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGVmYXVsdCBwcm9wcycsICgpID0+IHtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseSB3aXRoIGRpc2FibGVkIHByb3AgYXMgdHJ1ZScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoeyBkaXNhYmxlZDogdHJ1ZSB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseSB3aXRoIGZlZWRiYWNrJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7XG4gICAgICAgIGZlZWRiYWNrOiB7XG4gICAgICAgICAgMDoge1xuICAgICAgICAgICAgdmFsdWU6ICdKdW1wZWQnLFxuICAgICAgICAgICAgY29ycmVjdDogJ0p1bXBlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAxOiB7XG4gICAgICAgICAgICB2YWx1ZTogJ0xhdWdoZWQnLFxuICAgICAgICAgICAgY29ycmVjdDogJ0xhdWdoZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgMjoge1xuICAgICAgICAgICAgdmFsdWU6ICdTcG9vbicsXG4gICAgICAgICAgICBjb3JyZWN0OiAnU3Bvb24nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var React = _interopRequireWildcard(require("react"));
8
+
9
+ var _componentize = _interopRequireDefault(require("../componentize"));
10
+
11
+ var _serialization = require("../serialization");
12
+
13
+ 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); }
14
+
15
+ 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; }
16
+
17
+ describe('index', function () {
18
+ describe('componentize', function () {
19
+ it('should return an array with the appropriate markup', function () {
20
+ var dropDownMarkup = (0, _componentize["default"])('{{0}} foo {{1}}', 'dropdown');
21
+ expect(dropDownMarkup).toEqual({
22
+ markup: '<span data-component="dropdown" data-id="0"></span> foo <span data-component="dropdown" data-id="1"></span>'
23
+ });
24
+ });
25
+ });
26
+ describe('serialization', function () {
27
+ it('should have default node a span', function () {
28
+ expect((0, _serialization.deserialize)('something')).toEqual(expect.objectContaining({
29
+ object: 'value',
30
+ document: {
31
+ object: 'document',
32
+ data: {},
33
+ nodes: [{
34
+ object: 'block',
35
+ data: {},
36
+ isVoid: false,
37
+ type: 'span',
38
+ nodes: [{
39
+ object: 'text',
40
+ leaves: [{
41
+ text: 'something'
42
+ }]
43
+ }]
44
+ }]
45
+ }
46
+ }));
47
+ });
48
+ });
49
+ });
50
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vaW5kZXgudGVzdC5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwiZHJvcERvd25NYXJrdXAiLCJleHBlY3QiLCJ0b0VxdWFsIiwibWFya3VwIiwib2JqZWN0Q29udGFpbmluZyIsIm9iamVjdCIsImRvY3VtZW50IiwiZGF0YSIsIm5vZGVzIiwiaXNWb2lkIiwidHlwZSIsImxlYXZlcyIsInRleHQiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsUUFBUSxDQUFDLE9BQUQsRUFBVSxZQUFNO0FBQ3RCQSxFQUFBQSxRQUFRLENBQUMsY0FBRCxFQUFpQixZQUFNO0FBQzdCQyxJQUFBQSxFQUFFLENBQUMsb0RBQUQsRUFBdUQsWUFBTTtBQUM3RCxVQUFNQyxjQUFjLEdBQUcsOEJBQWEsaUJBQWIsRUFBZ0MsVUFBaEMsQ0FBdkI7QUFFQUMsTUFBQUEsTUFBTSxDQUFDRCxjQUFELENBQU4sQ0FBdUJFLE9BQXZCLENBQStCO0FBQzdCQyxRQUFBQSxNQUFNLEVBQ0o7QUFGMkIsT0FBL0I7QUFJRCxLQVBDLENBQUY7QUFRRCxHQVRPLENBQVI7QUFXQUwsRUFBQUEsUUFBUSxDQUFDLGVBQUQsRUFBa0IsWUFBTTtBQUM5QkMsSUFBQUEsRUFBRSxDQUFDLGlDQUFELEVBQW9DLFlBQU07QUFDMUNFLE1BQUFBLE1BQU0sQ0FBQyxnQ0FBWSxXQUFaLENBQUQsQ0FBTixDQUFpQ0MsT0FBakMsQ0FDRUQsTUFBTSxDQUFDRyxnQkFBUCxDQUF3QjtBQUN0QkMsUUFBQUEsTUFBTSxFQUFFLE9BRGM7QUFFdEJDLFFBQUFBLFFBQVEsRUFBRTtBQUNSRCxVQUFBQSxNQUFNLEVBQUUsVUFEQTtBQUVSRSxVQUFBQSxJQUFJLEVBQUUsRUFGRTtBQUdSQyxVQUFBQSxLQUFLLEVBQUUsQ0FDTDtBQUNFSCxZQUFBQSxNQUFNLEVBQUUsT0FEVjtBQUVFRSxZQUFBQSxJQUFJLEVBQUUsRUFGUjtBQUdFRSxZQUFBQSxNQUFNLEVBQUUsS0FIVjtBQUlFQyxZQUFBQSxJQUFJLEVBQUUsTUFKUjtBQUtFRixZQUFBQSxLQUFLLEVBQUUsQ0FBQztBQUFFSCxjQUFBQSxNQUFNLEVBQUUsTUFBVjtBQUFrQk0sY0FBQUEsTUFBTSxFQUFFLENBQUM7QUFBRUMsZ0JBQUFBLElBQUksRUFBRTtBQUFSLGVBQUQ7QUFBMUIsYUFBRDtBQUxULFdBREs7QUFIQztBQUZZLE9BQXhCLENBREY7QUFrQkQsS0FuQkMsQ0FBRjtBQW9CRCxHQXJCTyxDQUFSO0FBc0JELENBbENPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY29tcG9uZW50aXplIGZyb20gJy4uL2NvbXBvbmVudGl6ZSc7XG5pbXBvcnQgeyBkZXNlcmlhbGl6ZSB9IGZyb20gJy4uL3NlcmlhbGl6YXRpb24nO1xuXG5kZXNjcmliZSgnaW5kZXgnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdjb21wb25lbnRpemUnLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gYW4gYXJyYXkgd2l0aCB0aGUgYXBwcm9wcmlhdGUgbWFya3VwJywgKCkgPT4ge1xuICAgICAgY29uc3QgZHJvcERvd25NYXJrdXAgPSBjb21wb25lbnRpemUoJ3t7MH19IGZvbyB7ezF9fScsICdkcm9wZG93bicpO1xuXG4gICAgICBleHBlY3QoZHJvcERvd25NYXJrdXApLnRvRXF1YWwoe1xuICAgICAgICBtYXJrdXA6XG4gICAgICAgICAgJzxzcGFuIGRhdGEtY29tcG9uZW50PVwiZHJvcGRvd25cIiBkYXRhLWlkPVwiMFwiPjwvc3Bhbj4gZm9vIDxzcGFuIGRhdGEtY29tcG9uZW50PVwiZHJvcGRvd25cIiBkYXRhLWlkPVwiMVwiPjwvc3Bhbj4nLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzZXJpYWxpemF0aW9uJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgaGF2ZSBkZWZhdWx0IG5vZGUgYSBzcGFuJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KGRlc2VyaWFsaXplKCdzb21ldGhpbmcnKSkudG9FcXVhbChcbiAgICAgICAgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIG9iamVjdDogJ3ZhbHVlJyxcbiAgICAgICAgICBkb2N1bWVudDoge1xuICAgICAgICAgICAgb2JqZWN0OiAnZG9jdW1lbnQnLFxuICAgICAgICAgICAgZGF0YToge30sXG4gICAgICAgICAgICBub2RlczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb2JqZWN0OiAnYmxvY2snLFxuICAgICAgICAgICAgICAgIGRhdGE6IHt9LFxuICAgICAgICAgICAgICAgIGlzVm9pZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3NwYW4nLFxuICAgICAgICAgICAgICAgIG5vZGVzOiBbeyBvYmplY3Q6ICd0ZXh0JywgbGVhdmVzOiBbeyB0ZXh0OiAnc29tZXRoaW5nJyB9XSB9XSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
+
9
+ var React = _interopRequireWildcard(require("react"));
10
+
11
+ var _enzyme = require("enzyme");
12
+
13
+ var _mask = _interopRequireDefault(require("../mask"));
14
+
15
+ 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); }
16
+
17
+ 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; }
18
+
19
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
20
+
21
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22
+
23
+ describe('Mask', function () {
24
+ var renderChildren = jest.fn();
25
+ var onChange = jest.fn();
26
+ var defaultProps = {
27
+ renderChildren: renderChildren,
28
+ onChange: onChange,
29
+ layout: {
30
+ nodes: [{
31
+ object: 'text',
32
+ leaves: [{
33
+ text: 'Foo'
34
+ }]
35
+ }]
36
+ },
37
+ value: {}
38
+ };
39
+ var wrapper;
40
+ beforeEach(function () {
41
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_mask["default"], defaultProps));
42
+ });
43
+ describe('render', function () {
44
+ it('renders correctly with default props', function () {
45
+ expect(wrapper).toMatchSnapshot();
46
+ });
47
+ it('renders correctly a paragraph', function () {
48
+ wrapper.setProps({
49
+ layout: {
50
+ nodes: [{
51
+ type: 'p',
52
+ nodes: [{
53
+ object: 'text',
54
+ leaves: [{
55
+ text: 'Foo'
56
+ }]
57
+ }]
58
+ }]
59
+ }
60
+ });
61
+ expect(wrapper).toMatchSnapshot();
62
+ });
63
+ it('renders correctly a div', function () {
64
+ wrapper.setProps({
65
+ layout: {
66
+ nodes: [{
67
+ type: 'div',
68
+ data: {
69
+ attributes: {}
70
+ },
71
+ nodes: [{
72
+ type: 'p',
73
+ data: {
74
+ attributes: {}
75
+ },
76
+ nodes: [{
77
+ object: 'text',
78
+ leaves: [{
79
+ text: 'Foo'
80
+ }]
81
+ }]
82
+ }]
83
+ }]
84
+ }
85
+ });
86
+ expect(wrapper).toMatchSnapshot();
87
+ });
88
+ it.only('renders correctly a em', function () {
89
+ wrapper.setProps({
90
+ layout: {
91
+ nodes: [{
92
+ leaves: [{
93
+ text: 'Foo '
94
+ }],
95
+ object: 'text'
96
+ }, {
97
+ leaves: [{
98
+ marks: [{
99
+ data: undefined,
100
+ type: 'italic'
101
+ }],
102
+ text: 'x'
103
+ }],
104
+ object: 'text'
105
+ }, {
106
+ leaves: [{
107
+ text: ' bar'
108
+ }],
109
+ object: 'text'
110
+ }],
111
+ object: 'block',
112
+ type: 'div'
113
+ }
114
+ });
115
+ expect(wrapper).toMatchSnapshot();
116
+ });
117
+
118
+ var da = function da() {
119
+ return {
120
+ data: {
121
+ attributes: {}
122
+ }
123
+ };
124
+ };
125
+
126
+ it('renders without space under tbody', function () {
127
+ wrapper.setProps({
128
+ layout: {
129
+ nodes: [_objectSpread(_objectSpread({
130
+ type: 'tbody'
131
+ }, da()), {}, {
132
+ nodes: [{
133
+ object: 'text',
134
+ leaves: [{
135
+ text: ' '
136
+ }]
137
+ }, _objectSpread(_objectSpread({
138
+ type: 'tr'
139
+ }, da()), {}, {
140
+ nodes: []
141
+ })]
142
+ })]
143
+ }
144
+ });
145
+ expect(wrapper).toMatchSnapshot();
146
+ });
147
+ });
148
+ });
149
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vbWFzay50ZXN0LmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwicmVuZGVyQ2hpbGRyZW4iLCJqZXN0IiwiZm4iLCJvbkNoYW5nZSIsImRlZmF1bHRQcm9wcyIsImxheW91dCIsIm5vZGVzIiwib2JqZWN0IiwibGVhdmVzIiwidGV4dCIsInZhbHVlIiwid3JhcHBlciIsImJlZm9yZUVhY2giLCJpdCIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsInNldFByb3BzIiwidHlwZSIsImRhdGEiLCJhdHRyaWJ1dGVzIiwib25seSIsIm1hcmtzIiwidW5kZWZpbmVkIiwiZGEiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7QUFFQUEsUUFBUSxDQUFDLE1BQUQsRUFBUyxZQUFNO0FBQ3JCLE1BQU1DLGNBQWMsR0FBR0MsSUFBSSxDQUFDQyxFQUFMLEVBQXZCO0FBQ0EsTUFBTUMsUUFBUSxHQUFHRixJQUFJLENBQUNDLEVBQUwsRUFBakI7QUFDQSxNQUFNRSxZQUFZLEdBQUc7QUFDbkJKLElBQUFBLGNBQWMsRUFBZEEsY0FEbUI7QUFFbkJHLElBQUFBLFFBQVEsRUFBUkEsUUFGbUI7QUFHbkJFLElBQUFBLE1BQU0sRUFBRTtBQUNOQyxNQUFBQSxLQUFLLEVBQUUsQ0FDTDtBQUNFQyxRQUFBQSxNQUFNLEVBQUUsTUFEVjtBQUVFQyxRQUFBQSxNQUFNLEVBQUUsQ0FDTjtBQUNFQyxVQUFBQSxJQUFJLEVBQUU7QUFEUixTQURNO0FBRlYsT0FESztBQURELEtBSFc7QUFlbkJDLElBQUFBLEtBQUssRUFBRTtBQWZZLEdBQXJCO0FBaUJBLE1BQUlDLE9BQUo7QUFFQUMsRUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZkQsSUFBQUEsT0FBTyxHQUFHLG1DQUFRLG9CQUFDLGdCQUFELEVBQVVQLFlBQVYsQ0FBUixDQUFWO0FBQ0QsR0FGUyxDQUFWO0FBSUFMLEVBQUFBLFFBQVEsQ0FBQyxRQUFELEVBQVcs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RSxDQUFDLG1DQUFELEVBQXNDLFlBQU07QUFDNUNGLE1BQUFBLE9BQU8sQ0FBQ0ssUUFBUixDQUFpQjtBQUNmWCxRQUFBQSxNQUFNLEVBQUU7QUFDTkMsVUFBQUEsS0FBSyxFQUFFO0FBRUhXLFlBQUFBLElBQUksRUFBRTtBQUZILGFBR0FNLEVBQUUsRUFIRjtBQUlIakIsWUFBQUEsS0FBSyxFQUFFLENBQ0w7QUFDRUMsY0FBQUEsTUFBTSxFQUFFLE1BRFY7QUFFRUMsY0FBQUEsTUFBTSxFQUFFLENBQUM7QUFBRUMsZ0JBQUFBLElBQUksRUFBRTtBQUFSLGVBQUQ7QUFGVixhQURLO0FBS0hRLGNBQUFBLElBQUksRUFBRTtBQUxILGVBS1lNLEVBQUUsRUFMZDtBQUtrQmpCLGNBQUFBLEtBQUssRUFBRTtBQUx6QjtBQUpKO0FBREQ7QUFETyxPQUFqQjtBQWlCQVEsTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FuQkMsQ0FBRjtBQW9CRCxHQXhITyxDQUFSO0FBeUhELENBbkpPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBNYXNrIGZyb20gJy4uL21hc2snO1xuXG5kZXNjcmliZSgnTWFzaycsICgpID0+IHtcbiAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSBqZXN0LmZuKCk7XG4gIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBjb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gICAgcmVuZGVyQ2hpbGRyZW4sXG4gICAgb25DaGFuZ2UsXG4gICAgbGF5b3V0OiB7XG4gICAgICBub2RlczogW1xuICAgICAgICB7XG4gICAgICAgICAgb2JqZWN0OiAndGV4dCcsXG4gICAgICAgICAgbGVhdmVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRleHQ6ICdGb28nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHZhbHVlOiB7fSxcbiAgfTtcbiAgbGV0IHdyYXBwZXI7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgd3JhcHBlciA9IHNoYWxsb3coPE1hc2sgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICB9KTtcblxuICBkZXNjcmliZSgncmVuZGVyJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseSB3aXRoIGRlZmF1bHQgcHJvcHMnLCAoKSA9PiB7XG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgYSBwYXJhZ3JhcGgnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHtcbiAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgbm9kZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogJ3AnLFxuICAgICAgICAgICAgICBub2RlczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG9iamVjdDogJ3RleHQnLFxuICAgICAgICAgICAgICAgICAgbGVhdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnRm9vJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgYSBkaXYnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHtcbiAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgbm9kZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogJ2RpdicsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiB7fSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbm9kZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAncCcsXG4gICAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIG5vZGVzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgICAgICAgICBsZWF2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ0ZvbycsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQub25seSgncmVuZGVycyBjb3JyZWN0bHkgYSBlbScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoe1xuICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICBub2RlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBsZWF2ZXM6IFt7IHRleHQ6ICdGb28gJyB9XSxcbiAgICAgICAgICAgICAgb2JqZWN0OiAndGV4dCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBsZWF2ZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBtYXJrczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgZGF0YTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdpdGFsaWMnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIHRleHQ6ICd4JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGxlYXZlczogW3sgdGV4dDogJyBiYXInIH1dLFxuICAgICAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBvYmplY3Q6ICdibG9jaycsXG4gICAgICAgICAgdHlwZTogJ2RpdicsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgZGEgPSAoKSA9PiAoeyBkYXRhOiB7IGF0dHJpYnV0ZXM6IHt9IH0gfSk7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCBzcGFjZSB1bmRlciB0Ym9keScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoe1xuICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICBub2RlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiAndGJvZHknLFxuICAgICAgICAgICAgICAuLi5kYSgpLFxuICAgICAgICAgICAgICBub2RlczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG9iamVjdDogJ3RleHQnLFxuICAgICAgICAgICAgICAgICAgbGVhdmVzOiBbeyB0ZXh0OiAnICcgfV0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICd0cicsIC4uLmRhKCksIG5vZGVzOiBbXSB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _serialization = require("../serialization");
4
+
5
+ describe('serialization', function () {
6
+ it('ignores comments', function () {
7
+ var out = (0, _serialization.deserialize)("<!-- hi -->");
8
+ expect(out.document.nodes[0]).toEqual(expect.objectContaining({
9
+ type: 'span'
10
+ }));
11
+ });
12
+ it('ignores comments', function () {
13
+ var out = (0, _serialization.deserialize)("<!-- hi --><div>foo</div>");
14
+ expect(out.document.nodes[0]).toEqual(expect.objectContaining({
15
+ type: 'div',
16
+ nodes: [expect.objectContaining({
17
+ object: 'text',
18
+ leaves: [{
19
+ text: 'foo'
20
+ }]
21
+ })]
22
+ }));
23
+ });
24
+ it('deserializes an em', function () {
25
+ var out = (0, _serialization.deserialize)("<!-- hi --><div> <em>x</em> </div>");
26
+ expect(out.document.nodes[0]).toEqual(expect.objectContaining({
27
+ type: 'div',
28
+ nodes: [expect.objectContaining({
29
+ object: 'text'
30
+ }), expect.objectContaining({
31
+ leaves: [{
32
+ marks: [{
33
+ data: undefined,
34
+ type: 'italic'
35
+ }],
36
+ text: 'x'
37
+ }],
38
+ object: 'text'
39
+ }), expect.objectContaining({
40
+ object: 'text'
41
+ })]
42
+ }));
43
+ });
44
+ });
45
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vc2VyaWFsaXphdGlvbi50ZXN0LmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwiaXQiLCJvdXQiLCJleHBlY3QiLCJkb2N1bWVudCIsIm5vZGVzIiwidG9FcXVhbCIsIm9iamVjdENvbnRhaW5pbmciLCJ0eXBlIiwib2JqZWN0IiwibGVhdmVzIiwidGV4dCIsIm1hcmtzIiwiZGF0YSIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7QUFFQUEsUUFBUSxDQUFDLGVBQUQsRUFBa0IsWUFBTTtBQUM5QkMsRUFBQUEsRUFBRSxDQUFDLGtCQUFELEVBQXFCLFlBQU07QUFDM0IsUUFBTUMsR0FBRyxHQUFHLDhDQUFaO0FBQ0FDLElBQUFBLE1BQU0sQ0FBQ0QsR0FBRyxDQUFDRSxRQUFKLENBQWFDLEtBQWIsQ0FBbUIsQ0FBbkIsQ0FBRCxDQUFOLENBQThCQyxPQUE5QixDQUFzQ0gsTUFBTSxDQUFDSSxnQkFBUCxDQUF3QjtBQUFFQyxNQUFBQSxJQUFJLEVBQUU7QUFBUixLQUF4QixDQUF0QztBQUNELEdBSEMsQ0FBRjtBQUtBUCxFQUFBQSxFQUFFLENBQUMsa0JBQUQsRUFBcUIsWUFBTTtBQUMzQixRQUFNQyxHQUFHLEdBQUcsNERBQVo7QUFDQUMsSUFBQUEsTUFBTSxDQUFDRCxHQUFHLENBQUNFLFFBQUosQ0FBYUMsS0FBYixDQUFtQixDQUFuQixDQUFELENBQU4sQ0FBOEJDLE9BQTlCLENBQ0VILE1BQU0sQ0FBQ0ksZ0JBQVAsQ0FBd0I7QUFDdEJDLE1BQUFBLElBQUksRUFBRSxLQURnQjtBQUV0QkgsTUFBQUEsS0FBSyxFQUFFLENBQ0xGLE1BQU0sQ0FBQ0ksZ0JBQVAsQ0FBd0I7QUFDdEJFLFFBQUFBLE1BQU0sRUFBRSxNQURjO0FBRXRCQyxRQUFBQSxNQUFNLEVBQUUsQ0FBQztBQUFFQyxVQUFBQSxJQUFJLEVBQUU7QUFBUixTQUFEO0FBRmMsT0FBeEIsQ0FESztBQUZlLEtBQXhCLENBREY7QUFXRCxHQWJDLENBQUY7QUFlQVYsRUFBQUEsRUFBRSxDQUFDLG9CQUFELEVBQXVCLFlBQU07QUFDN0IsUUFBTUMsR0FBRyxHQUFHLHFFQUFaO0FBQ0FDLElBQUFBLE1BQU0sQ0FBQ0QsR0FBRyxDQUFDRSxRQUFKLENBQWFDLEtBQWIsQ0FBbUIsQ0FBbkIsQ0FBRCxDQUFOLENBQThCQyxPQUE5QixDQUNFSCxNQUFNLENBQUNJLGdCQUFQLENBQXdCO0FBQ3RCQyxNQUFBQSxJQUFJLEVBQUUsS0FEZ0I7QUFFdEJILE1BQUFBLEtBQUssRUFBRSxDQUNMRixNQUFNLENBQUNJLGdCQUFQLENBQXdCO0FBQ3RCRSxRQUFBQSxNQUFNLEVBQUU7QUFEYyxPQUF4QixDQURLLEVBSUxOLE1BQU0sQ0FBQ0ksZ0JBQVAsQ0FBd0I7QUFDdEJHLFFBQUFBLE1BQU0sRUFBRSxDQUNOO0FBQ0VFLFVBQUFBLEtBQUssRUFBRSxDQUNMO0FBQ0VDLFlBQUFBLElBQUksRUFBRUMsU0FEUjtBQUVFTixZQUFBQSxJQUFJLEVBQUU7QUFGUixXQURLLENBRFQ7QUFPRUcsVUFBQUEsSUFBSSxFQUFFO0FBUFIsU0FETSxDQURjO0FBWXRCRixRQUFBQSxNQUFNLEVBQUU7QUFaYyxPQUF4QixDQUpLLEVBa0JMTixNQUFNLENBQUNJLGdCQUFQLENBQXdCO0FBQ3RCRSxRQUFBQSxNQUFNLEVBQUU7QUFEYyxPQUF4QixDQWxCSztBQUZlLEtBQXhCLENBREY7QUEyQkQsR0E3QkMsQ0FBRjtBQThCRCxDQW5ETyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVzZXJpYWxpemUgfSBmcm9tICcuLi9zZXJpYWxpemF0aW9uJztcblxuZGVzY3JpYmUoJ3NlcmlhbGl6YXRpb24nLCAoKSA9PiB7XG4gIGl0KCdpZ25vcmVzIGNvbW1lbnRzJywgKCkgPT4ge1xuICAgIGNvbnN0IG91dCA9IGRlc2VyaWFsaXplKGA8IS0tIGhpIC0tPmApO1xuICAgIGV4cGVjdChvdXQuZG9jdW1lbnQubm9kZXNbMF0pLnRvRXF1YWwoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoeyB0eXBlOiAnc3BhbicgfSkpO1xuICB9KTtcblxuICBpdCgnaWdub3JlcyBjb21tZW50cycsICgpID0+IHtcbiAgICBjb25zdCBvdXQgPSBkZXNlcmlhbGl6ZShgPCEtLSBoaSAtLT48ZGl2PmZvbzwvZGl2PmApO1xuICAgIGV4cGVjdChvdXQuZG9jdW1lbnQubm9kZXNbMF0pLnRvRXF1YWwoXG4gICAgICBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIHR5cGU6ICdkaXYnLFxuICAgICAgICBub2RlczogW1xuICAgICAgICAgIGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICAgIG9iamVjdDogJ3RleHQnLFxuICAgICAgICAgICAgbGVhdmVzOiBbeyB0ZXh0OiAnZm9vJyB9XSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH0pO1xuXG4gIGl0KCdkZXNlcmlhbGl6ZXMgYW4gZW0nLCAoKSA9PiB7XG4gICAgY29uc3Qgb3V0ID0gZGVzZXJpYWxpemUoYDwhLS0gaGkgLS0+PGRpdj4gPGVtPng8L2VtPiA8L2Rpdj5gKTtcbiAgICBleHBlY3Qob3V0LmRvY3VtZW50Lm5vZGVzWzBdKS50b0VxdWFsKFxuICAgICAgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICB0eXBlOiAnZGl2JyxcbiAgICAgICAgbm9kZXM6IFtcbiAgICAgICAgICBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgICBsZWF2ZXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG1hcmtzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2l0YWxpYycsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgdGV4dDogJ3gnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIG9iamVjdDogJ3RleHQnLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICAgIG9iamVjdDogJ3RleHQnLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgKTtcbiAgfSk7XG59KTtcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.choice = void 0;
7
+
8
+ var choice = function choice(v, id) {
9
+ return {
10
+ label: v,
11
+ value: v,
12
+ id: id
13
+ };
14
+ };
15
+
16
+ exports.choice = choice;
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vdXRpbHMuanMiXSwibmFtZXMiOlsiY2hvaWNlIiwidiIsImlkIiwibGFiZWwiLCJ2YWx1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFPLElBQU1BLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLENBQUQsRUFBSUMsRUFBSjtBQUFBLFNBQVk7QUFBRUMsSUFBQUEsS0FBSyxFQUFFRixDQUFUO0FBQVlHLElBQUFBLEtBQUssRUFBRUgsQ0FBbkI7QUFBc0JDLElBQUFBLEVBQUUsRUFBRkE7QUFBdEIsR0FBWjtBQUFBLENBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY2hvaWNlID0gKHYsIGlkKSA9PiAoeyBsYWJlbDogdiwgdmFsdWU6IHYsIGlkIH0pO1xuIl19
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ var React = _interopRequireWildcard(require("react"));
6
+
7
+ var _enzyme = require("enzyme");
8
+
9
+ var _withMask = require("../with-mask");
10
+
11
+ 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); }
12
+
13
+ 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; }
14
+
15
+ describe('WithMask', function () {
16
+ var onChange = jest.fn();
17
+ var defaultProps = {
18
+ markup: '<p>Foo bar {{0}} over the moon;</p>',
19
+ value: {
20
+ 0: 'blank'
21
+ },
22
+ onChange: onChange
23
+ };
24
+ var Masked = (0, _withMask.withMask)('foo', function (props) {
25
+ return function (node) {
26
+ var dataset = node.data ? node.data.dataset || {} : {};
27
+
28
+ if (dataset.component === 'foo') {
29
+ return /*#__PURE__*/React.createElement("input", {
30
+ type: "text",
31
+ value: "Foo"
32
+ });
33
+ }
34
+ };
35
+ });
36
+ var wrapper;
37
+ beforeEach(function () {
38
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(Masked, defaultProps));
39
+ });
40
+ describe('render', function () {
41
+ it('renders correctly with default props', function () {
42
+ expect(wrapper).toMatchSnapshot();
43
+ });
44
+ });
45
+ describe('onChange', function () {
46
+ var event = function event(value) {
47
+ return {
48
+ target: {
49
+ value: value
50
+ }
51
+ };
52
+ };
53
+
54
+ it('should call the function', function () {
55
+ var e = event('ceva');
56
+ wrapper.simulate('change', e);
57
+ expect(onChange).toHaveBeenCalledWith({
58
+ target: {
59
+ value: 'ceva'
60
+ }
61
+ });
62
+ });
63
+ });
64
+ });
65
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vd2l0aC1tYXNrLnRlc3QuanMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsImRlZmF1bHRQcm9wcyIsIm1hcmt1cCIsInZhbHVlIiwiTWFza2VkIiwicHJvcHMiLCJub2RlIiwiZGF0YXNldCIsImRhdGEiLCJjb21wb25lbnQiLCJ3cmFwcGVyIiwiYmVmb3JlRWFjaCIsIml0IiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90IiwiZXZlbnQiLCJ0YXJnZXQiLCJlIiwic2ltdWxhdGUiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCLE1BQU1DLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxFQUFMLEVBQWpCO0FBQ0EsTUFBTUMsWUFBWSxHQUFHO0FBQ25CQyxJQUFBQSxNQUFNLEVBQUUscUNBRFc7QUFFbkJDLElBQUFBLEtBQUssRUFBRTtBQUNMLFNBQUc7QUFERSxLQUZZO0FBS25CTCxJQUFBQSxRQUFRLEVBQVJBO0FBTG1CLEdBQXJCO0FBT0EsTUFBTU0sTUFBTSxHQUFHLHdCQUFTLEtBQVQsRUFBZ0IsVUFBQ0MsS0FBRDtBQUFBLFdBQVcsVUFBQ0MsSUFBRCxFQUFVO0FBQ2xELFVBQU1DLE9BQU8sR0FBR0QsSUFBSSxDQUFDRSxJQUFMLEdBQVlGLElBQUksQ0FBQ0UsSUFBTCxDQUFVRCxPQUFWLElBQXFCLEVBQWpDLEdBQXNDLEVBQXREOztBQUVBLFVBQUlBLE9BQU8sQ0FBQ0UsU0FBUixLQUFzQixLQUExQixFQUFpQztBQUMvQiw0QkFBTztBQUFPLFVBQUEsSUFBSSxFQUFDLE1BQVo7QUFBbUIsVUFBQSxLQUFLLEVBQUM7QUFBekIsVUFBUDtBQUNEO0FBQ0YsS0FOOEI7QUFBQSxHQUFoQixDQUFmO0FBUUEsTUFBSUMsT0FBSjtBQUVBQyxFQUFBQSxVQUFVLENBQUMsWUFBTTtBQUNmRCxJQUFBQSxPQUFPLEdBQUcsbUNBQVEsb0JBQUMsTUFBRCxFQUFZVCxZQUFaLENBQVIsQ0FBVjtBQUNELEdBRlMsQ0FBVjtBQUlBSixFQUFBQSxRQUFRLENBQUMsUUFBRCxFQUFXLFlBQU07QUFDdkJlLElBQUFBLEVBQUUsQ0FBQyxzQ0FBRCxFQUF5QyxZQUFNO0FBQy9DQyxNQUFBQSxNQUFNLENBQUNILE9BQUQsQ0FBTixDQUFnQkksZUFBaEI7QUFDRCxLQUZDLENBQUY7QUFHRCxHQUpPLENBQVI7QUFNQWpCLEVBQUFBLFFBQVEsQ0FBQyxVQUFELEVBQWEsWUFBTTtBQUN6QixRQUFNa0IsS0FBSyxHQUFHLFNBQVJBLEtBQVEsQ0FBQ1osS0FBRDtBQUFBLGFBQVk7QUFDeEJhLFFBQUFBLE1BQU0sRUFBRTtBQUFFYixVQUFBQSxLQUFLLEVBQUxBO0FBQUY7QUFEZ0IsT0FBWjtBQUFBLEtBQWQ7O0FBSUFTLElBQUFBLEVBQUUsQ0FBQywwQkFBRCxFQUE2QixZQUFNO0FBQ25DLFVBQU1LLENBQUMsR0FBR0YsS0FBSyxDQUFDLE1BQUQsQ0FBZjtBQUVBTCxNQUFBQSxPQUFPLENBQUNRLFFBQVIsQ0FBaUIsUUFBakIsRUFBMkJELENBQTNCO0FBRUFKLE1BQUFBLE1BQU0sQ0FBQ2YsUUFBRCxDQUFOLENBQWlCcUIsb0JBQWpCLENBQXNDO0FBQ3BDSCxRQUFBQSxNQUFNLEVBQUU7QUFDTmIsVUFBQUEsS0FBSyxFQUFFO0FBREQ7QUFENEIsT0FBdEM7QUFLRCxLQVZDLENBQUY7QUFXRCxHQWhCTyxDQUFSO0FBaUJELENBOUNPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCB7IHdpdGhNYXNrIH0gZnJvbSAnLi4vd2l0aC1tYXNrJztcblxuZGVzY3JpYmUoJ1dpdGhNYXNrJywgKCkgPT4ge1xuICBjb25zdCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIG1hcmt1cDogJzxwPkZvbyBiYXIge3swfX0gb3ZlciB0aGUgbW9vbjs8L3A+JyxcbiAgICB2YWx1ZToge1xuICAgICAgMDogJ2JsYW5rJyxcbiAgICB9LFxuICAgIG9uQ2hhbmdlLFxuICB9O1xuICBjb25zdCBNYXNrZWQgPSB3aXRoTWFzaygnZm9vJywgKHByb3BzKSA9PiAobm9kZSkgPT4ge1xuICAgIGNvbnN0IGRhdGFzZXQgPSBub2RlLmRhdGEgPyBub2RlLmRhdGEuZGF0YXNldCB8fCB7fSA6IHt9O1xuXG4gICAgaWYgKGRhdGFzZXQuY29tcG9uZW50ID09PSAnZm9vJykge1xuICAgICAgcmV0dXJuIDxpbnB1dCB0eXBlPVwidGV4dFwiIHZhbHVlPVwiRm9vXCIgLz47XG4gICAgfVxuICB9KTtcblxuICBsZXQgd3JhcHBlcjtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICB3cmFwcGVyID0gc2hhbGxvdyg8TWFza2VkIHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkZWZhdWx0IHByb3BzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnb25DaGFuZ2UnLCAoKSA9PiB7XG4gICAgY29uc3QgZXZlbnQgPSAodmFsdWUpID0+ICh7XG4gICAgICB0YXJnZXQ6IHsgdmFsdWUgfSxcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgY2FsbCB0aGUgZnVuY3Rpb24nLCAoKSA9PiB7XG4gICAgICBjb25zdCBlID0gZXZlbnQoJ2NldmEnKTtcblxuICAgICAgd3JhcHBlci5zaW11bGF0ZSgnY2hhbmdlJywgZSk7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICB2YWx1ZTogJ2NldmEnLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var React = _interopRequireWildcard(require("react"));
8
+
9
+ var _enzyme = require("enzyme");
10
+
11
+ var _choice = require("../choice");
12
+
13
+ var _utils = require("../../__tests__/utils");
14
+
15
+ var _index = _interopRequireDefault(require("../index"));
16
+
17
+ 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); }
18
+
19
+ 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; }
20
+
21
+ describe('index', function () {
22
+ describe('Choices', function () {
23
+ var defaultProps = {
24
+ disabled: false,
25
+ choices: [(0, _utils.choice)('Jumped', '0'), (0, _utils.choice)('Laughed', '1'), (0, _utils.choice)('Spoon', '2')]
26
+ };
27
+ var wrapper;
28
+ beforeEach(function () {
29
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_index["default"], defaultProps));
30
+ });
31
+ it('renders correctly with default props', function () {
32
+ expect(wrapper).toMatchSnapshot();
33
+ });
34
+ it('renders correctly with disabled prop as true', function () {
35
+ wrapper.setProps({
36
+ disabled: true
37
+ });
38
+ expect(wrapper).toMatchSnapshot();
39
+ });
40
+ it('renders without duplicates', function () {
41
+ wrapper.setProps({
42
+ duplicates: undefined,
43
+ value: {
44
+ 0: '0',
45
+ 1: '1'
46
+ }
47
+ });
48
+ expect(wrapper).toMatchSnapshot();
49
+ });
50
+ it('renders with duplicates', function () {
51
+ wrapper.setProps({
52
+ duplicates: true,
53
+ value: {
54
+ 0: '0',
55
+ 1: '1'
56
+ }
57
+ });
58
+ expect(wrapper).toMatchSnapshot();
59
+ });
60
+ });
61
+ describe('Choice', function () {
62
+ var defaultProps = {
63
+ disabled: false,
64
+ value: '1',
65
+ label: 'Label',
66
+ targetId: '1'
67
+ };
68
+ var wrapper;
69
+ beforeEach(function () {
70
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_choice.BlankContent, defaultProps));
71
+ });
72
+ describe('render', function () {
73
+ it('renders correctly with default props', function () {
74
+ expect(wrapper).toMatchSnapshot();
75
+ });
76
+ it('renders correctly with disabled prop as true', function () {
77
+ wrapper.setProps({
78
+ disabled: true
79
+ });
80
+ expect(wrapper).toMatchSnapshot();
81
+ });
82
+ });
83
+ });
84
+ });
85
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaG9pY2VzL19fdGVzdHNfXy9pbmRleC50ZXN0LmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwiZGVmYXVsdFByb3BzIiwiZGlzYWJsZWQiLCJjaG9pY2VzIiwid3JhcHBlciIsImJlZm9yZUVhY2giLCJpdCIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsInNldFByb3BzIiwiZHVwbGljYXRlcyIsInVuZGVmaW5lZCIsInZhbHVlIiwibGFiZWwiLCJ0YXJnZXRJZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBQSxRQUFRLENBQUMsT0FBRCxFQUFVLFlBQU07QUFDdEJBLEVBQUFBLFFBQVEsQ0FBQyxTQUFELEVBQVksWUFBTTtBQUN4QixRQUFNQyxZQUFZLEdBQUc7QUFDbkJDLE1BQUFBLFFBQVEsRUFBRSxLQURTO0FBRW5CQyxNQUFBQSxPQUFPLEVBQUUsQ0FBQyxtQkFBTyxRQUFQLEVBQWlCLEdBQWpCLENBQUQsRUFBd0IsbUJBQU8sU0FBUCxFQUFrQixHQUFsQixDQUF4QixFQUFnRCxtQkFBTyxPQUFQLEVBQWdCLEdBQWhCLENBQWhEO0FBRlUsS0FBckI7QUFJQSxRQUFJQyxPQUFKO0FBRUFDLElBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2ZELE1BQUFBLE9BQU8sR0FBRyxtQ0FBUSxvQkFBQyxpQkFBRCxFQUFhSCxZQUFiLENBQVIsQ0FBVjtBQUNELEtBRlMsQ0FBVjtBQUlBSyxJQUFBQSxFQUFFLENBQUMsc0NBQUQsRUFBeUMsWUFBTTtBQUMvQ0MsTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FGQyxDQUFGO0FBSUFGLElBQUFBLEVBQUUsQ0FBQyw4Q0FBRCxFQUFpRCxZQUFNO0FBQ3ZERixNQUFBQSxPQUFPLENBQUNLLFFBQVIsQ0FBaUI7QUFBRVAsUUFBQUEsUUFBUSxFQUFFO0FBQVosT0FBakI7QUFDQUssTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FIQyxDQUFGO0FBSUFGLElBQUFBLEVBQUUsQ0FBQyw0QkFBRCxFQUErQixZQUFNO0FBQ3JDRixNQUFBQSxPQUFPLENBQUNLLFFBQVIsQ0FBaUI7QUFBRUMsUUFBQUEsVUFBVSxFQUFFQyxTQUFkO0FBQXlCQyxRQUFBQSxLQUFLLEVBQUU7QUFBRSxhQUFHLEdBQUw7QUFBVSxhQUFHO0FBQWI7QUFBaEMsT0FBakI7QUFDQUwsTUFBQUEsTUFBTSxDQUFDSCxPQUFELENBQU4sQ0FBZ0JJLGVBQWhCO0FBQ0QsS0FIQyxDQUFGO0FBS0FGLElBQUFBLEVBQUUsQ0FBQyx5QkFBRCxFQUE0QixZQUFNO0FBQ2xDRixNQUFBQSxPQUFPLENBQUNLLFFBQVIsQ0FBaUI7QUFBRUMsUUFBQUEsVUFBVSxFQUFFLElBQWQ7QUFBb0JFLFFBQUFBLEtBQUssRUFBRTtBQUFFLGFBQUcsR0FBTDtBQUFVLGFBQUc7QUFBYjtBQUEzQixPQUFqQjtBQUNBTCxNQUFBQSxNQUFNLENBQUNILE9BQUQsQ0FBTixDQUFnQkksZUFBaEI7QUFDRCxLQUhDLENBQUY7QUFJRCxHQTVCTyxDQUFSO0FBOEJBUixFQUFBQSxRQUFRLENBQUMsUUFBRCxFQUFXLFlBQU07QUFDdkIsUUFBTUMsWUFBWSxHQUFHO0FBQ25CQyxNQUFBQSxRQUFRLEVBQUUsS0FEUztBQUVuQlUsTUFBQUEsS0FBSyxFQUFFLEdBRlk7QUFHbkJDLE1BQUFBLEtBQUssRUFBRSxPQUhZO0FBSW5CQyxNQUFBQSxRQUFRLEVBQUU7QUFKUyxLQUFyQjtBQU1BLFFBQUlWLE9BQUo7QUFFQUMsSUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZkQsTUFBQUEsT0FBTyxHQUFHLG1DQUFRLG9CQUFDLG9CQUFELEVBQVlILFlBQVosQ0FBUixDQUFWO0FBQ0QsS0FGUyxDQUFWO0FBSUFELElBQUFBLFFBQVEsQ0FBQyxRQUFELEVBQVcsWUFBTTtBQUN2Qk0sTUFBQUEsRUFBRSxDQUFDLHNDQUFELEVBQXlDLFlBQU07QUFDL0NDLFFBQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELE9BRkMsQ0FBRjtBQUlBRixNQUFBQSxFQUFFLENBQUMsOENBQUQsRUFBaUQsWUFBTTtBQUN2REYsUUFBQUEsT0FBTyxDQUFDSyxRQUFSLENBQWlCO0FBQUVQLFVBQUFBLFFBQVEsRUFBRTtBQUFaLFNBQWpCO0FBQ0FLLFFBQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELE9BSEMsQ0FBRjtBQUlELEtBVE8sQ0FBUjtBQVVELEdBdkJPLENBQVI7QUF3QkQsQ0F2RE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHNoYWxsb3cgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IHsgQmxhbmtDb250ZW50IGFzIENob2ljZSB9IGZyb20gJy4uL2Nob2ljZSc7XG5pbXBvcnQgeyBjaG9pY2UgfSBmcm9tICcuLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuaW1wb3J0IENob2ljZXMgZnJvbSAnLi4vaW5kZXgnO1xuXG5kZXNjcmliZSgnaW5kZXgnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdDaG9pY2VzJywgKCkgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIGNob2ljZXM6IFtjaG9pY2UoJ0p1bXBlZCcsICcwJyksIGNob2ljZSgnTGF1Z2hlZCcsICcxJyksIGNob2ljZSgnU3Bvb24nLCAnMicpXSxcbiAgICB9O1xuICAgIGxldCB3cmFwcGVyO1xuXG4gICAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICB3cmFwcGVyID0gc2hhbGxvdyg8Q2hvaWNlcyB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkZWZhdWx0IHByb3BzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGlzYWJsZWQgcHJvcCBhcyB0cnVlJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGRpc2FibGVkOiB0cnVlIH0pO1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICAgIGl0KCdyZW5kZXJzIHdpdGhvdXQgZHVwbGljYXRlcycsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoeyBkdXBsaWNhdGVzOiB1bmRlZmluZWQsIHZhbHVlOiB7IDA6ICcwJywgMTogJzEnIH0gfSk7XG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRoIGR1cGxpY2F0ZXMnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHsgZHVwbGljYXRlczogdHJ1ZSwgdmFsdWU6IHsgMDogJzAnLCAxOiAnMScgfSB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0Nob2ljZScsICgpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBkaXNhYmxlZDogZmFsc2UsXG4gICAgICB2YWx1ZTogJzEnLFxuICAgICAgbGFiZWw6ICdMYWJlbCcsXG4gICAgICB0YXJnZXRJZDogJzEnLFxuICAgIH07XG4gICAgbGV0IHdyYXBwZXI7XG5cbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIHdyYXBwZXIgPSBzaGFsbG93KDxDaG9pY2Ugey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIH0pO1xuXG4gICAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseSB3aXRoIGRlZmF1bHQgcHJvcHMnLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkaXNhYmxlZCBwcm9wIGFzIHRydWUnLCAoKSA9PiB7XG4gICAgICAgIHdyYXBwZXIuc2V0UHJvcHMoeyBkaXNhYmxlZDogdHJ1ZSB9KTtcbiAgICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -61,6 +61,7 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
61
61
  }
62
62
 
63
63
  _this = _super.call.apply(_super, [this].concat(args));
64
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "mounted", false);
64
65
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "startDrag", function () {
65
66
  var _this$props = _this.props,
66
67
  connectDragSource = _this$props.connectDragSource,
@@ -88,6 +89,8 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
88
89
  (0, _createClass2["default"])(BlankContentComp, [{
89
90
  key: "componentDidMount",
90
91
  value: function componentDidMount() {
92
+ this.mounted = true;
93
+
91
94
  if (this.dragContainerRef) {
92
95
  this.dragContainerRef.addEventListener('touchstart', this.handleTouchStart, {
93
96
  passive: false
@@ -99,6 +102,8 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
99
102
  }, {
100
103
  key: "componentWillUnmount",
101
104
  value: function componentWillUnmount() {
105
+ this.mounted = false;
106
+
102
107
  if (this.dragContainerRef) {
103
108
  this.dragContainerRef.removeEventListener('touchstart', this.handleTouchStart);
104
109
  this.dragContainerRef.removeEventListener('touchend', this.handleTouchEnd);
@@ -124,15 +129,19 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
124
129
  return connectDragSource( /*#__PURE__*/_react["default"].createElement("span", {
125
130
  className: (0, _classnames["default"])(classes.choice, disabled && classes.disabled),
126
131
  ref: function ref(_ref3) {
127
- //eslint-disable-next-line
128
- _this2.dragContainerRef = _reactDom["default"].findDOMNode(_ref3);
132
+ if (_this2.mounted) {
133
+ //eslint-disable-next-line
134
+ _this2.dragContainerRef = _reactDom["default"].findDOMNode(_ref3);
135
+ }
129
136
  }
130
137
  }, /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
131
138
  clickable: false,
132
139
  disabled: true,
133
140
  ref: function ref(_ref2) {
134
- //eslint-disable-next-line
135
- _this2.rootRef = _reactDom["default"].findDOMNode(_ref2);
141
+ if (_this2.mounted) {
142
+ //eslint-disable-next-line
143
+ _this2.rootRef = _reactDom["default"].findDOMNode(_ref2);
144
+ }
136
145
  },
137
146
  className: classes.chip,
138
147
  label: /*#__PURE__*/_react["default"].createElement("span", {
@@ -218,4 +227,4 @@ var DragDropTile = (0, _drag.DragSource)(DRAG_TYPE, tileSource, function (connec
218
227
  })(BlankContent);
219
228
  var _default = DragDropTile;
220
229
  exports["default"] = _default;
221
- //# sourceMappingURL=choice.js.map
230
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaG9pY2VzL2Nob2ljZS5qc3giXSwibmFtZXMiOlsiRFJBR19UWVBFIiwiQmxhbmtDb250ZW50Q29tcCIsInByb3BzIiwiY29ubmVjdERyYWdTb3VyY2UiLCJkaXNhYmxlZCIsImRyYWdDb250YWluZXJSZWYiLCJlIiwicHJldmVudERlZmF1bHQiLCJsb25nUHJlc3NUaW1lciIsInNldFRpbWVvdXQiLCJzdGFydERyYWciLCJjbGVhclRpbWVvdXQiLCJtb3VudGVkIiwiYWRkRXZlbnRMaXN0ZW5lciIsImhhbmRsZVRvdWNoU3RhcnQiLCJwYXNzaXZlIiwiaGFuZGxlVG91Y2hFbmQiLCJoYW5kbGVUb3VjaE1vdmUiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicm9vdFJlZiIsImNob2ljZSIsImNsYXNzZXMiLCJyZWYiLCJSZWFjdERPTSIsImZpbmRET01Ob2RlIiwiY2hpcCIsImNoaXBMYWJlbCIsImlubmVySFRNTCIsInZhbHVlIiwidW5kZWZpbmVkIiwiUmVhY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJib29sIiwib2JqZWN0IiwiZnVuYyIsIkJsYW5rQ29udGVudCIsInRoZW1lIiwiYm9yZGVyIiwicGFsZXR0ZSIsInByaW1hcnkiLCJtYWluIiwiYm9yZGVyUmFkaXVzIiwic3BhY2luZyIsInVuaXQiLCJtYXJnaW4iLCJ0cmFuc2Zvcm0iLCJiYWNrZ3JvdW5kQ29sb3IiLCJjb2xvciIsIndoaXRlIiwidGV4dCIsImFsaWduSXRlbXMiLCJkaXNwbGF5IiwiaGVpZ2h0IiwibWluSGVpZ2h0IiwiZm9udFNpemUiLCJ3aGl0ZVNwYWNlIiwibWF4V2lkdGgiLCJwb2ludGVyRXZlbnRzIiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iLCJwYWRkaW5nIiwib3BhY2l0eSIsInRpbGVTb3VyY2UiLCJjYW5EcmFnIiwiYmVnaW5EcmFnIiwiaW5zdGFuY2VJZCIsIkRyYWdEcm9wVGlsZSIsImNvbm5lY3QiLCJtb25pdG9yIiwiZHJhZ1Nv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QkFJUC9ELEtBSk8sRUFJQTtBQUNmLFdBQU87QUFDTGtCLE1BQUFBLE1BQU0sRUFBRWxCLEtBQUssQ0FBQ2tCLE1BRFQ7QUFFTDhDLE1BQUFBLFVBQVUsRUFBRWhFLEtBQUssQ0FBQ2dFO0FBRmIsS0FBUDtBQUlEO0FBVGdCLENBQW5CO0FBWUEsSUFBTUMsWUFBWSxHQUFHLHNCQUFXbkUsU0FBWCxFQUFzQitELFVBQXRCLEVBQWtDLFVBQUNLLE9BQUQsRUFBVUMsT0FBVjtBQUFBLFNBQXVCO0FBQzVFbEUsSUFBQUEsaUJBQWlCLEVBQUVpRSxPQUFPLENBQUNFLFVBQVIsRUFEeUQ7QUFFNUVDLElBQUFBLFVBQVUsRUFBRUYsT0FBTyxDQUFDRSxVQUFSO0FBRmdFLEdBQXZCO0FBQUEsQ0FBbEMsRUFHakJuQyxZQUhpQixDQUFyQjtlQUtlK0IsWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcbmltcG9ydCBDaGlwIGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL0NoaXAnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5cbmltcG9ydCB7IHJlbmRlck1hdGggfSBmcm9tICdAcGllLWxpYi9tYXRoLXJlbmRlcmluZyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgeyBEcmFnU291cmNlIH0gZnJvbSAnQHBpZS1saWIvZHJhZyc7XG5cbmV4cG9ydCBjb25zdCBEUkFHX1RZUEUgPSAnTWFza0JsYW5rJztcblxuY2xhc3MgQmxhbmtDb250ZW50Q29tcCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGNob2ljZTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGNvbm5lY3REcmFnU291cmNlOiBQcm9wVHlwZXMuZnVuYyxcbiAgfTtcblxuICBtb3VudGVkID0gZmFsc2U7XG5cbiAgc3RhcnREcmFnID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgY29ubmVjdERyYWdTb3VyY2UsIGRpc2FibGVkIH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghZGlzYWJsZWQpIHtcbiAgICAgIGNvbm5lY3REcmFnU291cmNlKHRoaXMuZHJhZ0NvbnRhaW5lclJlZik7XG4gICAgfVxuICB9O1xuXG4gIC8vIHN0YXJ0IGRyYWcgYWZ0ZXIgNTAwbXMgKHRvdWNoIGFuZCBob2xkIGR1cmF0aW9uKSBmb3IgY2hyb21lYm9va3MgYW5kIG90aGVyIHRvdWNoIGRldmljZXMgUEQtNDg4OFxuICBoYW5kbGVUb3VjaFN0YXJ0ID0gKGUpID0+IHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5sb25nUHJlc3NUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zdGFydERyYWcoZSk7XG4gICAgfSwgNTAwKTtcbiAgfTtcblxuICBoYW5kbGVUb3VjaEVuZCA9ICgpID0+IHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5sb25nUHJlc3NUaW1lcik7XG4gIH07XG5cbiAgaGFuZGxlVG91Y2hNb3ZlID0gKCkgPT4ge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLmxvbmdQcmVzc1RpbWVyKTtcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICB0aGlzLm1vdW50ZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLmRyYWdDb250YWluZXJSZWYpIHtcbiAgICAgIHRoaXMuZHJhZ0NvbnRhaW5lclJlZi5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5oYW5kbGVUb3VjaFN0YXJ0LCB7IHBhc3NpdmU6IGZhbHNlIH0pO1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5oYW5kbGVUb3VjaEVuZCk7XG4gICAgICB0aGlzLmRyYWdDb250YWluZXJSZWYuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5oYW5kbGVUb3VjaE1vdmUpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgIHRoaXMubW91bnRlZCA9IGZhbHNlO1xuXG4gICAgaWYgKHRoaXMuZHJhZ0NvbnRhaW5lclJlZikge1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmhhbmRsZVRvdWNoU3RhcnQpO1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5oYW5kbGVUb3VjaEVuZCk7XG4gICAgICB0aGlzLmRyYWdDb250YWluZXJSZWYucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5oYW5kbGVUb3VjaE1vdmUpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICByZW5kZXJNYXRoKHRoaXMucm9vdFJlZik7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBjb25uZWN0RHJhZ1NvdXJjZSwgY2hvaWNlLCBjbGFzc2VzLCBkaXNhYmxlZCB9ID0gdGhpcy5wcm9wcztcblxuICAgIC8vIFRPRE8gdGhlIENoaXAgZWxlbWVudCBpcyBjYXVzaW5nIGRyYWcgcHJvYmxlbXMgb24gdG91Y2ggZGV2aWNlcy4gQXZvaWQgdXNpbmcgQ2hpcCBhbmQgY29uc2lkZXIgcmVmYWN0b3JpbmcgdGhlIGNvZGUuIEtlZXAgaW4gbWluZCB0aGF0IENoaXAgaXMgYSBzcGFuIHdpdGggYSBidXR0b24gcm9sZSwgd2hpY2ggaW50ZXJmZXJlcyB3aXRoIHNlYW1sZXNzIHRvdWNoIGRldmljZSBkcmFnZ2luZy5cblxuICAgIHJldHVybiBjb25uZWN0RHJhZ1NvdXJjZShcbiAgICAgIDxzcGFuXG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcyhjbGFzc2VzLmNob2ljZSwgZGlzYWJsZWQgJiYgY2xhc3Nlcy5kaXNhYmxlZCl9XG4gICAgICAgIHJlZj17KHJlZikgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLm1vdW50ZWQpIHtcbiAgICAgICAgICAgIC8vZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgICAgICB0aGlzLmRyYWdDb250YWluZXJSZWYgPSBSZWFjdERPTS5maW5kRE9NTm9kZShyZWYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPENoaXBcbiAgICAgICAgICBjbGlja2FibGU9e2ZhbHNlfVxuICAgICAgICAgIGRpc2FibGVkPXt0cnVlfVxuICAgICAgICAgIHJlZj17KHJlZikgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubW91bnRlZCkge1xuICAgICAgICAgICAgICAvL2VzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgICAgICAgICB0aGlzLnJvb3RSZWYgPSBSZWFjdERPTS5maW5kRE9NTm9kZShyZWYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmNoaXB9XG4gICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmNoaXBMYWJlbH1cbiAgICAgICAgICAgICAgcmVmPXsocmVmKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlZikge1xuICAgICAgICAgICAgICAgICAgcmVmLmlubmVySFRNTCA9IGNob2ljZS52YWx1ZSB8fCAnICc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICB2YXJpYW50PXtkaXNhYmxlZCA/ICdvdXRsaW5lZCcgOiB1bmRlZmluZWR9XG4gICAgICAgIC8+XG4gICAgICA8L3NwYW4+LFxuICAgICAge30sXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQmxhbmtDb250ZW50ID0gd2l0aFN0eWxlcygodGhlbWUpID0+ICh7XG4gIGNob2ljZToge1xuICAgIGJvcmRlcjogYHNvbGlkIDBweCAke3RoZW1lLnBhbGV0dGUucHJpbWFyeS5tYWlufWAsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS5zcGFjaW5nLnVuaXQgKiAyLFxuICAgIG1hcmdpbjogdGhlbWUuc3BhY2luZy51bml0IC8gMixcbiAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUoMCwgMCknLFxuICB9LFxuICBjaGlwOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiBjb2xvci53aGl0ZSgpLFxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke2NvbG9yLnRleHQoKX1gLFxuICAgIGNvbG9yOiBjb2xvci50ZXh0KCksXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZGlzcGxheTogJ2lubGluZS1mbGV4JyxcbiAgICBoZWlnaHQ6ICdpbml0aWFsJyxcbiAgICBtaW5IZWlnaHQ6ICczMnB4JyxcbiAgICBmb250U2l6ZTogJ2luaGVyaXQnLFxuICAgIHdoaXRlU3BhY2U6ICdwcmUtd3JhcCcsXG4gICAgbWF4V2lkdGg6ICczNzRweCcsXG4gICAgLy8gQWRkZWQgZm9yIHRvdWNoIGRldmljZXMsIGZvciBpbWFnZSBjb250ZW50LlxuICAgIC8vIFRoaXMgd2lsbCBwcmV2ZW50IHRoZSBjb250ZXh0IG1lbnUgZnJvbSBhcHBlYXJpbmcgYW5kIG5vdCBhbGxvd2luZyBvdGhlciBpbnRlcmFjdGlvbnMgd2l0aCB0aGUgaW1hZ2UuXG4gICAgLy8gSWYgaW50ZXJhY3Rpb25zIHdpdGggdGhlIGltYWdlIGluIHRoZSB0b2tlbiB3aWxsIGJlIHJlcXVlc3RlZCB3ZSBzaG91bGQgaGFuZGxlIG9ubHkgdGhlIGNvbnRleHQgTWVudS5cbiAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gICAgYm9yZGVyUmFkaXVzOiAnM3B4JyxcbiAgICBwYWRkaW5nVG9wOiAnMTJweCcsXG4gICAgcGFkZGluZ0JvdHRvbTogJzEycHgnLFxuICB9LFxuICBjaGlwTGFiZWw6IHtcbiAgICB3aGl0ZVNwYWNlOiAnbm9ybWFsJyxcbiAgICAnJiBpbWcnOiB7XG4gICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgcGFkZGluZzogJzJweCAwJyxcbiAgICB9LFxuICAgICcmIG1qeC1mcmFjJzoge1xuICAgICAgZm9udFNpemU6ICcxMjAlICFpbXBvcnRhbnQnLFxuICAgIH0sXG4gIH0sXG4gIGRpc2FibGVkOiB7XG4gICAgb3BhY2l0eTogMC42LFxuICB9LFxufSkpKEJsYW5rQ29udGVudENvbXApO1xuXG5jb25zdCB0aWxlU291cmNlID0ge1xuICBjYW5EcmFnKHByb3BzKSB7XG4gICAgcmV0dXJuICFwcm9wcy5kaXNhYmxlZDtcbiAgfSxcbiAgYmVnaW5EcmFnKHByb3BzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNob2ljZTogcHJvcHMuY2hvaWNlLFxuICAgICAgaW5zdGFuY2VJZDogcHJvcHMuaW5zdGFuY2VJZCxcbiAgICB9O1xuICB9LFxufTtcblxuY29uc3QgRHJhZ0Ryb3BUaWxlID0gRHJhZ1NvdXJjZShEUkFHX1RZUEUsIHRpbGVTb3VyY2UsIChjb25uZWN0LCBtb25pdG9yKSA9PiAoe1xuICBjb25uZWN0RHJhZ1NvdXJjZTogY29ubmVjdC5kcmFnU291cmNlKCksXG4gIGlzRHJhZ2dpbmc6IG1vbml0b3IuaXNEcmFnZ2luZygpLFxufSkpKEJsYW5rQ29udGVudCk7XG5cbmV4cG9ydCBkZWZhdWx0IERyYWdEcm9wVGlsZTtcbiJdfQ==