@pie-lib/editable-html 13.0.14-beta.6 → 13.0.14-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 (39) hide show
  1. package/lib/__tests__/editor-utils.test.js +164 -0
  2. package/lib/__tests__/serialization.test.js +241 -0
  3. package/lib/__tests__/utils.js +79 -0
  4. package/lib/plugins/image/__tests__/component.test.js +96 -0
  5. package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +131 -0
  6. package/lib/plugins/image/__tests__/image-toolbar.test.js +21 -0
  7. package/lib/plugins/image/__tests__/index.test.js +86 -0
  8. package/lib/plugins/image/__tests__/insert-image-handler.test.js +112 -0
  9. package/lib/plugins/image/__tests__/mock-change.js +22 -0
  10. package/lib/plugins/list/__tests__/index.test.js +63 -0
  11. package/lib/plugins/math/__tests__/index.test.js +284 -0
  12. package/lib/plugins/media/__tests__/index.test.js +69 -0
  13. package/lib/plugins/respArea/drag-in-the-blank/__tests__/choice.test.js +93 -0
  14. package/lib/plugins/table/__tests__/index.test.js +416 -0
  15. package/lib/plugins/table/__tests__/table-toolbar.test.js +81 -0
  16. package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +153 -0
  17. package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +47 -0
  18. package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +112 -0
  19. package/lib/plugins/toolbar/__tests__/toolbar.test.js +118 -0
  20. package/package.json +3 -3
  21. package/src/__tests__/editor-utils.test.js +162 -0
  22. package/src/__tests__/serialization.test.js +290 -0
  23. package/src/__tests__/utils.js +36 -0
  24. package/src/plugins/image/__tests__/component.test.jsx +73 -0
  25. package/src/plugins/image/__tests__/image-toolbar-logic.test.jsx +90 -0
  26. package/src/plugins/image/__tests__/image-toolbar.test.jsx +12 -0
  27. package/src/plugins/image/__tests__/index.test.js +92 -0
  28. package/src/plugins/image/__tests__/insert-image-handler.test.js +113 -0
  29. package/src/plugins/image/__tests__/mock-change.js +15 -0
  30. package/src/plugins/list/__tests__/index.test.js +52 -0
  31. package/src/plugins/math/__tests__/index.test.jsx +264 -0
  32. package/src/plugins/media/__tests__/index.test.js +75 -0
  33. package/src/plugins/respArea/drag-in-the-blank/__tests__/choice.test.js +71 -0
  34. package/src/plugins/table/__tests__/index.test.jsx +401 -0
  35. package/src/plugins/table/__tests__/table-toolbar.test.jsx +75 -0
  36. package/src/plugins/toolbar/__tests__/default-toolbar.test.jsx +123 -0
  37. package/src/plugins/toolbar/__tests__/editor-and-toolbar.test.jsx +40 -0
  38. package/src/plugins/toolbar/__tests__/toolbar-buttons.test.jsx +97 -0
  39. package/src/plugins/toolbar/__tests__/toolbar.test.jsx +112 -0
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _slate = require("slate");
9
+ var _component = require("../component");
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
+ describe('Image Component', function () {
13
+ var createImageNode = function createImageNode() {
14
+ var dataProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
15
+ return _slate.Block.fromJSON({
16
+ type: 'image',
17
+ data: _slate.Data.create(_objectSpread({
18
+ width: 50,
19
+ height: 50,
20
+ src: 'test-image.jpg'
21
+ }, dataProps))
22
+ });
23
+ };
24
+ var createMockEditor = function createMockEditor() {
25
+ return {
26
+ value: {},
27
+ change: jest.fn()
28
+ };
29
+ };
30
+ var defaultClasses = {
31
+ active: 'active',
32
+ loading: 'loading',
33
+ pendingDelete: 'pendingDelete'
34
+ };
35
+ var defaultProps = {
36
+ node: createImageNode(),
37
+ editor: createMockEditor(),
38
+ classes: defaultClasses,
39
+ onDelete: jest.fn()
40
+ };
41
+ it('renders correctly with default props', function () {
42
+ var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, defaultProps)),
43
+ container = _render.container;
44
+ expect(container.firstChild).toBeInTheDocument();
45
+ });
46
+ it('renders image with correct dimensions', function () {
47
+ var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, defaultProps)),
48
+ container = _render2.container;
49
+ var img = container.querySelector('img');
50
+ expect(img).toBeInTheDocument();
51
+ });
52
+ it('renders with custom width and height', function () {
53
+ var node = createImageNode({
54
+ width: 100,
55
+ height: 200
56
+ });
57
+ var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
58
+ node: node
59
+ }))),
60
+ container = _render3.container;
61
+ var img = container.querySelector('img');
62
+ expect(img).toBeInTheDocument();
63
+ });
64
+ it('renders with loading class when loading', function () {
65
+ var node = createImageNode({
66
+ loading: true
67
+ });
68
+ var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
69
+ node: node
70
+ }))),
71
+ container = _render4.container;
72
+ expect(container.firstChild).toBeInTheDocument();
73
+ });
74
+ it('renders with active class when active', function () {
75
+ var node = createImageNode({
76
+ active: true
77
+ });
78
+ var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
79
+ node: node
80
+ }))),
81
+ container = _render5.container;
82
+ expect(container.firstChild).toBeInTheDocument();
83
+ });
84
+ it('handles image with source', function () {
85
+ var node = createImageNode({
86
+ src: 'test-image.jpg'
87
+ });
88
+ var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
89
+ node: node
90
+ }))),
91
+ container = _render6.container;
92
+ var img = container.querySelector('img');
93
+ expect(img).toHaveAttribute('src', 'test-image.jpg');
94
+ });
95
+ });
96
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfc2xhdGUiLCJfY29tcG9uZW50Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJkZXNjcmliZSIsImNyZWF0ZUltYWdlTm9kZSIsImRhdGFQcm9wcyIsInVuZGVmaW5lZCIsIkJsb2NrIiwiZnJvbUpTT04iLCJ0eXBlIiwiZGF0YSIsIkRhdGEiLCJjcmVhdGUiLCJ3aWR0aCIsImhlaWdodCIsInNyYyIsImNyZWF0ZU1vY2tFZGl0b3IiLCJ2YWx1ZSIsImNoYW5nZSIsImplc3QiLCJmbiIsImRlZmF1bHRDbGFzc2VzIiwiYWN0aXZlIiwibG9hZGluZyIsInBlbmRpbmdEZWxldGUiLCJkZWZhdWx0UHJvcHMiLCJub2RlIiwiZWRpdG9yIiwiY2xhc3NlcyIsIm9uRGVsZXRlIiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIkNvbXBvbmVudCIsImNvbnRhaW5lciIsImV4cGVjdCIsImZpcnN0Q2hpbGQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsIl9yZW5kZXIyIiwiaW1nIiwicXVlcnlTZWxlY3RvciIsIl9yZW5kZXIzIiwiX2V4dGVuZHMyIiwiX3JlbmRlcjQiLCJfcmVuZGVyNSIsIl9yZW5kZXI2IiwidG9IYXZlQXR0cmlidXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2NvbXBvbmVudC50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgeyBCbG9jaywgRGF0YSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudCc7XG5cbmRlc2NyaWJlKCdJbWFnZSBDb21wb25lbnQnLCAoKSA9PiB7XG4gIGNvbnN0IGNyZWF0ZUltYWdlTm9kZSA9IChkYXRhUHJvcHMgPSB7fSkgPT4ge1xuICAgIHJldHVybiBCbG9jay5mcm9tSlNPTih7XG4gICAgICB0eXBlOiAnaW1hZ2UnLFxuICAgICAgZGF0YTogRGF0YS5jcmVhdGUoe1xuICAgICAgICB3aWR0aDogNTAsXG4gICAgICAgIGhlaWdodDogNTAsXG4gICAgICAgIHNyYzogJ3Rlc3QtaW1hZ2UuanBnJyxcbiAgICAgICAgLi4uZGF0YVByb3BzLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlTW9ja0VkaXRvciA9ICgpID0+ICh7XG4gICAgdmFsdWU6IHt9LFxuICAgIGNoYW5nZTogamVzdC5mbigpLFxuICB9KTtcblxuICBjb25zdCBkZWZhdWx0Q2xhc3NlcyA9IHtcbiAgICBhY3RpdmU6ICdhY3RpdmUnLFxuICAgIGxvYWRpbmc6ICdsb2FkaW5nJyxcbiAgICBwZW5kaW5nRGVsZXRlOiAncGVuZGluZ0RlbGV0ZScsXG4gIH07XG5cbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIG5vZGU6IGNyZWF0ZUltYWdlTm9kZSgpLFxuICAgIGVkaXRvcjogY3JlYXRlTW9ja0VkaXRvcigpLFxuICAgIGNsYXNzZXM6IGRlZmF1bHRDbGFzc2VzLFxuICAgIG9uRGVsZXRlOiBqZXN0LmZuKCksXG4gIH07XG5cbiAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGVmYXVsdCBwcm9wcycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgaW1hZ2Ugd2l0aCBjb3JyZWN0IGRpbWVuc2lvbnMnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q29tcG9uZW50IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb25zdCBpbWcgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignaW1nJyk7XG4gICAgZXhwZWN0KGltZykudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBjdXN0b20gd2lkdGggYW5kIGhlaWdodCcsICgpID0+IHtcbiAgICBjb25zdCBub2RlID0gY3JlYXRlSW1hZ2VOb2RlKHsgd2lkdGg6IDEwMCwgaGVpZ2h0OiAyMDAgfSk7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q29tcG9uZW50IHsuLi5kZWZhdWx0UHJvcHN9IG5vZGU9e25vZGV9IC8+KTtcbiAgICBjb25zdCBpbWcgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignaW1nJyk7XG4gICAgZXhwZWN0KGltZykudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBsb2FkaW5nIGNsYXNzIHdoZW4gbG9hZGluZycsICgpID0+IHtcbiAgICBjb25zdCBub2RlID0gY3JlYXRlSW1hZ2VOb2RlKHsgbG9hZGluZzogdHJ1ZSB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBhY3RpdmUgY2xhc3Mgd2hlbiBhY3RpdmUnLCAoKSA9PiB7XG4gICAgY29uc3Qgbm9kZSA9IGNyZWF0ZUltYWdlTm9kZSh7IGFjdGl2ZTogdHJ1ZSB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2hhbmRsZXMgaW1hZ2Ugd2l0aCBzb3VyY2UnLCAoKSA9PiB7XG4gICAgY29uc3Qgbm9kZSA9IGNyZWF0ZUltYWdlTm9kZSh7IHNyYzogJ3Rlc3QtaW1hZ2UuanBnJyB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGNvbnN0IGltZyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdpbWcnKTtcbiAgICBleHBlY3QoaW1nKS50b0hhdmVBdHRyaWJ1dGUoJ3NyYycsICd0ZXN0LWltYWdlLmpwZycpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUF5QyxTQUFBSSxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULENBQUEsRUFBQUksQ0FBQSxZQUFBSixDQUFBO0FBQUEsU0FBQVUsY0FBQVosQ0FBQSxhQUFBQyxDQUFBLE1BQUFBLENBQUEsR0FBQVksU0FBQSxDQUFBQyxNQUFBLEVBQUFiLENBQUEsVUFBQUMsQ0FBQSxXQUFBVyxTQUFBLENBQUFaLENBQUEsSUFBQVksU0FBQSxDQUFBWixDQUFBLFFBQUFBLENBQUEsT0FBQUYsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsT0FBQWEsT0FBQSxXQUFBZCxDQUFBLFFBQUFlLGdCQUFBLGFBQUFoQixDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxDQUFBRCxDQUFBLFNBQUFFLE1BQUEsQ0FBQWMseUJBQUEsR0FBQWQsTUFBQSxDQUFBZSxnQkFBQSxDQUFBbEIsQ0FBQSxFQUFBRyxNQUFBLENBQUFjLHlCQUFBLENBQUFmLENBQUEsS0FBQUgsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsR0FBQWEsT0FBQSxXQUFBZCxDQUFBLElBQUFFLE1BQUEsQ0FBQWdCLGNBQUEsQ0FBQW5CLENBQUEsRUFBQUMsQ0FBQSxFQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFOLENBQUEsRUFBQUQsQ0FBQSxpQkFBQUQsQ0FBQTtBQUV6Q29CLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxZQUFNO0VBQ2hDLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBQSxFQUF1QjtJQUFBLElBQW5CQyxTQUFTLEdBQUFULFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFVLFNBQUEsR0FBQVYsU0FBQSxNQUFHLENBQUMsQ0FBQztJQUNyQyxPQUFPVyxZQUFLLENBQUNDLFFBQVEsQ0FBQztNQUNwQkMsSUFBSSxFQUFFLE9BQU87TUFDYkMsSUFBSSxFQUFFQyxXQUFJLENBQUNDLE1BQU0sQ0FBQWpCLGFBQUE7UUFDZmtCLEtBQUssRUFBRSxFQUFFO1FBQ1RDLE1BQU0sRUFBRSxFQUFFO1FBQ1ZDLEdBQUcsRUFBRTtNQUFnQixHQUNsQlYsU0FBUyxDQUNiO0lBQ0gsQ0FBQyxDQUFDO0VBQ0osQ0FBQztFQUVELElBQU1XLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUE7SUFBQSxPQUFVO01BQzlCQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO01BQ1RDLE1BQU0sRUFBRUMsSUFBSSxDQUFDQyxFQUFFLENBQUM7SUFDbEIsQ0FBQztFQUFBLENBQUM7RUFFRixJQUFNQyxjQUFjLEdBQUc7SUFDckJDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCQyxPQUFPLEVBQUUsU0FBUztJQUNsQkMsYUFBYSxFQUFFO0VBQ2pCLENBQUM7RUFFRCxJQUFNQyxZQUFZLEdBQUc7SUFDbkJDLElBQUksRUFBRXRCLGVBQWUsQ0FBQyxDQUFDO0lBQ3ZCdUIsTUFBTSxFQUFFWCxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzFCWSxPQUFPLEVBQUVQLGNBQWM7SUFDdkJRLFFBQVEsRUFBRVYsSUFBSSxDQUFDQyxFQUFFLENBQUM7RUFDcEIsQ0FBQztFQUVEVSxFQUFFLENBQUMsc0NBQXNDLEVBQUUsWUFBTTtJQUMvQyxJQUFBQyxPQUFBLEdBQXNCLElBQUFDLGNBQU0sZUFBQ3hELE1BQUEsWUFBQXlELGFBQUEsQ0FBQ3BELFVBQUEsQ0FBQXFELFNBQVMsRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBckRVLFNBQVMsR0FBQUosT0FBQSxDQUFUSSxTQUFTO0lBQ2pCQyxNQUFNLENBQUNELFNBQVMsQ0FBQ0UsVUFBVSxDQUFDLENBQUNDLGlCQUFpQixDQUFDLENBQUM7RUFDbEQsQ0FBQyxDQUFDO0VBRUZSLEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRSxZQUFNO0lBQ2hELElBQUFTLFFBQUEsR0FBc0IsSUFBQVAsY0FBTSxlQUFDeEQsTUFBQSxZQUFBeUQsYUFBQSxDQUFDcEQsVUFBQSxDQUFBcUQsU0FBUyxFQUFLVCxZQUFlLENBQUMsQ0FBQztNQUFyRFUsU0FBUyxHQUFBSSxRQUFBLENBQVRKLFNBQVM7SUFDakIsSUFBTUssR0FBRyxHQUFHTCxTQUFTLENBQUNNLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDMUNMLE1BQU0sQ0FBQ0ksR0FBRyxDQUFDLENBQUNGLGlCQUFpQixDQUFDLENBQUM7RUFDakMsQ0FBQyxDQUFDO0VBRUZSLEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxZQUFNO0lBQy9DLElBQU1KLElBQUksR0FBR3RCLGVBQWUsQ0FBQztNQUFFUyxLQUFLLEVBQUUsR0FBRztNQUFFQyxNQUFNLEVBQUU7SUFBSSxDQUFDLENBQUM7SUFDekQsSUFBQTRCLFFBQUEsR0FBc0IsSUFBQVYsY0FBTSxlQUFDeEQsTUFBQSxZQUFBeUQsYUFBQSxDQUFDcEQsVUFBQSxDQUFBcUQsU0FBUyxNQUFBUyxTQUFBLGlCQUFLbEIsWUFBWTtRQUFFQyxJQUFJLEVBQUVBO01BQUssRUFBRSxDQUFDLENBQUM7TUFBakVTLFNBQVMsR0FBQU8sUUFBQSxDQUFUUCxTQUFTO0lBQ2pCLElBQU1LLEdBQUcsR0FBR0wsU0FBUyxDQUFDTSxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQzFDTCxNQUFNLENBQUNJLEdBQUcsQ0FBQyxDQUFDRixpQkFBaUIsQ0FBQyxDQUFDO0VBQ2pDLENBQUMsQ0FBQztFQUVGUixFQUFFLENBQUMseUNBQXlDLEVBQUUsWUFBTTtJQUNsRCxJQUFNSixJQUFJLEdBQUd0QixlQUFlLENBQUM7TUFBRW1CLE9BQU8sRUFBRTtJQUFLLENBQUMsQ0FBQztJQUMvQyxJQUFBcUIsUUFBQSxHQUFzQixJQUFBWixjQUFNLGVBQUN4RCxNQUFBLFlBQUF5RCxhQUFBLENBQUNwRCxVQUFBLENBQUFxRCxTQUFTLE1BQUFTLFNBQUEsaUJBQUtsQixZQUFZO1FBQUVDLElBQUksRUFBRUE7TUFBSyxFQUFFLENBQUMsQ0FBQztNQUFqRVMsU0FBUyxHQUFBUyxRQUFBLENBQVRULFNBQVM7SUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDRSxVQUFVLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUMsQ0FBQztFQUNsRCxDQUFDLENBQUM7RUFFRlIsRUFBRSxDQUFDLHVDQUF1QyxFQUFFLFlBQU07SUFDaEQsSUFBTUosSUFBSSxHQUFHdEIsZUFBZSxDQUFDO01BQUVrQixNQUFNLEVBQUU7SUFBSyxDQUFDLENBQUM7SUFDOUMsSUFBQXVCLFFBQUEsR0FBc0IsSUFBQWIsY0FBTSxlQUFDeEQsTUFBQSxZQUFBeUQsYUFBQSxDQUFDcEQsVUFBQSxDQUFBcUQsU0FBUyxNQUFBUyxTQUFBLGlCQUFLbEIsWUFBWTtRQUFFQyxJQUFJLEVBQUVBO01BQUssRUFBRSxDQUFDLENBQUM7TUFBakVTLFNBQVMsR0FBQVUsUUFBQSxDQUFUVixTQUFTO0lBQ2pCQyxNQUFNLENBQUNELFNBQVMsQ0FBQ0UsVUFBVSxDQUFDLENBQUNDLGlCQUFpQixDQUFDLENBQUM7RUFDbEQsQ0FBQyxDQUFDO0VBRUZSLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxZQUFNO0lBQ3BDLElBQU1KLElBQUksR0FBR3RCLGVBQWUsQ0FBQztNQUFFVyxHQUFHLEVBQUU7SUFBaUIsQ0FBQyxDQUFDO0lBQ3ZELElBQUErQixRQUFBLEdBQXNCLElBQUFkLGNBQU0sZUFBQ3hELE1BQUEsWUFBQXlELGFBQUEsQ0FBQ3BELFVBQUEsQ0FBQXFELFNBQVMsTUFBQVMsU0FBQSxpQkFBS2xCLFlBQVk7UUFBRUMsSUFBSSxFQUFFQTtNQUFLLEVBQUUsQ0FBQyxDQUFDO01BQWpFUyxTQUFTLEdBQUFXLFFBQUEsQ0FBVFgsU0FBUztJQUNqQixJQUFNSyxHQUFHLEdBQUdMLFNBQVMsQ0FBQ00sYUFBYSxDQUFDLEtBQUssQ0FBQztJQUMxQ0wsTUFBTSxDQUFDSSxHQUFHLENBQUMsQ0FBQ08sZUFBZSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQztFQUN0RCxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ var _react = require("@testing-library/react");
8
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
9
+ var _imageToolbar = require("../image-toolbar");
10
+ var _react2 = _interopRequireDefault(require("react"));
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ // Mock the alt-dialog component to avoid complex modal rendering in tests
14
+ jest.mock('../alt-dialog', function () {
15
+ return function AltDialog(_ref) {
16
+ var alt = _ref.alt,
17
+ onDone = _ref.onDone;
18
+ return /*#__PURE__*/_react2["default"].createElement("div", {
19
+ "data-testid": "alt-dialog"
20
+ }, /*#__PURE__*/_react2["default"].createElement("input", {
21
+ "data-testid": "alt-input",
22
+ defaultValue: alt,
23
+ onChange: function onChange(e) {
24
+ return onDone(e.target.value);
25
+ }
26
+ }));
27
+ };
28
+ });
29
+ describe('ImageToolbar', function () {
30
+ var onChange;
31
+ beforeEach(function () {
32
+ onChange = jest.fn();
33
+ });
34
+ var renderComponent = function renderComponent() {
35
+ var extras = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36
+ var props = _objectSpread({
37
+ onChange: onChange,
38
+ imageLoaded: true
39
+ }, extras);
40
+ return (0, _react.render)(/*#__PURE__*/_react2["default"].createElement(_imageToolbar.ImageToolbar, props));
41
+ };
42
+ describe('rendering', function () {
43
+ it('renders alignment buttons', function () {
44
+ renderComponent();
45
+ expect(_react.screen.getByText('left')).toBeInTheDocument();
46
+ expect(_react.screen.getByText('center')).toBeInTheDocument();
47
+ expect(_react.screen.getByText('right')).toBeInTheDocument();
48
+ });
49
+ it('renders alt text button', function () {
50
+ renderComponent();
51
+ expect(_react.screen.getByText('Alt text')).toBeInTheDocument();
52
+ });
53
+ it('does not render alignment buttons when disabled', function () {
54
+ renderComponent({
55
+ disableImageAlignmentButtons: true
56
+ });
57
+ expect(_react.screen.queryByText('left')).not.toBeInTheDocument();
58
+ expect(_react.screen.queryByText('center')).not.toBeInTheDocument();
59
+ expect(_react.screen.queryByText('right')).not.toBeInTheDocument();
60
+ });
61
+ it('shows active state for selected alignment', function () {
62
+ var _renderComponent = renderComponent({
63
+ alignment: 'center'
64
+ }),
65
+ container = _renderComponent.container;
66
+ // The MarkButton component uses aria-pressed for active state
67
+ var centerButton = _react.screen.getByText('center').closest('button');
68
+ expect(centerButton).toHaveAttribute('aria-pressed', 'true');
69
+ });
70
+ });
71
+ describe('user interactions', function () {
72
+ it('calls onChange with alignment when left is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
73
+ var user;
74
+ return _regenerator["default"].wrap(function (_context) {
75
+ while (1) switch (_context.prev = _context.next) {
76
+ case 0:
77
+ user = _userEvent["default"].setup();
78
+ renderComponent();
79
+ _context.next = 1;
80
+ return user.click(_react.screen.getByText('left'));
81
+ case 1:
82
+ expect(onChange).toHaveBeenCalledWith({
83
+ alignment: 'left'
84
+ });
85
+ case 2:
86
+ case "end":
87
+ return _context.stop();
88
+ }
89
+ }, _callee);
90
+ })));
91
+ it('calls onChange with alignment when center is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
92
+ var user;
93
+ return _regenerator["default"].wrap(function (_context2) {
94
+ while (1) switch (_context2.prev = _context2.next) {
95
+ case 0:
96
+ user = _userEvent["default"].setup();
97
+ renderComponent();
98
+ _context2.next = 1;
99
+ return user.click(_react.screen.getByText('center'));
100
+ case 1:
101
+ expect(onChange).toHaveBeenCalledWith({
102
+ alignment: 'center'
103
+ });
104
+ case 2:
105
+ case "end":
106
+ return _context2.stop();
107
+ }
108
+ }, _callee2);
109
+ })));
110
+ it('calls onChange with alignment when right is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
111
+ var user;
112
+ return _regenerator["default"].wrap(function (_context3) {
113
+ while (1) switch (_context3.prev = _context3.next) {
114
+ case 0:
115
+ user = _userEvent["default"].setup();
116
+ renderComponent();
117
+ _context3.next = 1;
118
+ return user.click(_react.screen.getByText('right'));
119
+ case 1:
120
+ expect(onChange).toHaveBeenCalledWith({
121
+ alignment: 'right'
122
+ });
123
+ case 2:
124
+ case "end":
125
+ return _context3.stop();
126
+ }
127
+ }, _callee3);
128
+ })));
129
+ });
130
+ });
131
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3VzZXJFdmVudCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfaW1hZ2VUb29sYmFyIiwiX3JlYWN0MiIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiamVzdCIsIm1vY2siLCJBbHREaWFsb2ciLCJfcmVmIiwiYWx0Iiwib25Eb25lIiwiY3JlYXRlRWxlbWVudCIsImRlZmF1bHRWYWx1ZSIsIm9uQ2hhbmdlIiwidGFyZ2V0IiwidmFsdWUiLCJkZXNjcmliZSIsImJlZm9yZUVhY2giLCJmbiIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsInVuZGVmaW5lZCIsInByb3BzIiwiaW1hZ2VMb2FkZWQiLCJyZW5kZXIiLCJJbWFnZVRvb2xiYXIiLCJpdCIsImV4cGVjdCIsInNjcmVlbiIsImdldEJ5VGV4dCIsInRvQmVJblRoZURvY3VtZW50IiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsInF1ZXJ5QnlUZXh0Iiwibm90IiwiX3JlbmRlckNvbXBvbmVudCIsImFsaWdubWVudCIsImNvbnRhaW5lciIsImNlbnRlckJ1dHRvbiIsImNsb3Nlc3QiLCJ0b0hhdmVBdHRyaWJ1dGUiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVzZXIiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInVzZXJFdmVudCIsInNldHVwIiwiY2xpY2siLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInN0b3AiLCJfY2FsbGVlMiIsIl9jb250ZXh0MiIsIl9jYWxsZWUzIiwiX2NvbnRleHQzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2ltYWdlLXRvb2xiYXItbG9naWMudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyLCBzY3JlZW4gfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB1c2VyRXZlbnQgZnJvbSAnQHRlc3RpbmctbGlicmFyeS91c2VyLWV2ZW50JztcbmltcG9ydCB7IEltYWdlVG9vbGJhciB9IGZyb20gJy4uL2ltYWdlLXRvb2xiYXInO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuLy8gTW9jayB0aGUgYWx0LWRpYWxvZyBjb21wb25lbnQgdG8gYXZvaWQgY29tcGxleCBtb2RhbCByZW5kZXJpbmcgaW4gdGVzdHNcbmplc3QubW9jaygnLi4vYWx0LWRpYWxvZycsICgpID0+IHtcbiAgcmV0dXJuIGZ1bmN0aW9uIEFsdERpYWxvZyh7IGFsdCwgb25Eb25lIH0pIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBkYXRhLXRlc3RpZD1cImFsdC1kaWFsb2dcIj5cbiAgICAgICAgPGlucHV0IGRhdGEtdGVzdGlkPVwiYWx0LWlucHV0XCIgZGVmYXVsdFZhbHVlPXthbHR9IG9uQ2hhbmdlPXsoZSkgPT4gb25Eb25lKGUudGFyZ2V0LnZhbHVlKX0gLz5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG59KTtcblxuZGVzY3JpYmUoJ0ltYWdlVG9vbGJhcicsICgpID0+IHtcbiAgbGV0IG9uQ2hhbmdlO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICB9KTtcblxuICBjb25zdCByZW5kZXJDb21wb25lbnQgPSAoZXh0cmFzID0ge30pID0+IHtcbiAgICBjb25zdCBwcm9wcyA9IHtcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgaW1hZ2VMb2FkZWQ6IHRydWUsXG4gICAgICAuLi5leHRyYXMsXG4gICAgfTtcblxuICAgIHJldHVybiByZW5kZXIoPEltYWdlVG9vbGJhciB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICBkZXNjcmliZSgncmVuZGVyaW5nJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIGFsaWdubWVudCBidXR0b25zJywgKCkgPT4ge1xuICAgICAgcmVuZGVyQ29tcG9uZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnbGVmdCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ2NlbnRlcicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ3JpZ2h0JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBhbHQgdGV4dCBidXR0b24nLCAoKSA9PiB7XG4gICAgICByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdBbHQgdGV4dCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90IHJlbmRlciBhbGlnbm1lbnQgYnV0dG9ucyB3aGVuIGRpc2FibGVkJywgKCkgPT4ge1xuICAgICAgcmVuZGVyQ29tcG9uZW50KHsgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9uczogdHJ1ZSB9KTtcbiAgICAgIGV4cGVjdChzY3JlZW4ucXVlcnlCeVRleHQoJ2xlZnQnKSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlUZXh0KCdjZW50ZXInKSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlUZXh0KCdyaWdodCcpKS5ub3QudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG93cyBhY3RpdmUgc3RhdGUgZm9yIHNlbGVjdGVkIGFsaWdubWVudCcsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoeyBhbGlnbm1lbnQ6ICdjZW50ZXInIH0pO1xuICAgICAgLy8gVGhlIE1hcmtCdXR0b24gY29tcG9uZW50IHVzZXMgYXJpYS1wcmVzc2VkIGZvciBhY3RpdmUgc3RhdGVcbiAgICAgIGNvbnN0IGNlbnRlckJ1dHRvbiA9IHNjcmVlbi5nZXRCeVRleHQoJ2NlbnRlcicpLmNsb3Nlc3QoJ2J1dHRvbicpO1xuICAgICAgZXhwZWN0KGNlbnRlckJ1dHRvbikudG9IYXZlQXR0cmlidXRlKCdhcmlhLXByZXNzZWQnLCAndHJ1ZScpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgndXNlciBpbnRlcmFjdGlvbnMnLCAoKSA9PiB7XG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gbGVmdCBpcyBjbGlja2VkJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgICAgcmVuZGVyQ29tcG9uZW50KCk7XG5cbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soc2NyZWVuLmdldEJ5VGV4dCgnbGVmdCcpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IGFsaWdubWVudDogJ2xlZnQnIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gY2VudGVyIGlzIGNsaWNrZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoKTtcblxuICAgICAgYXdhaXQgdXNlci5jbGljayhzY3JlZW4uZ2V0QnlUZXh0KCdjZW50ZXInKSk7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoeyBhbGlnbm1lbnQ6ICdjZW50ZXInIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gcmlnaHQgaXMgY2xpY2tlZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHVzZXIgPSB1c2VyRXZlbnQuc2V0dXAoKTtcbiAgICAgIHJlbmRlckNvbXBvbmVudCgpO1xuXG4gICAgICBhd2FpdCB1c2VyLmNsaWNrKHNjcmVlbi5nZXRCeVRleHQoJ3JpZ2h0JykpO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHsgYWxpZ25tZW50OiAncmlnaHQnIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxhQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxPQUFBLEdBQUFGLHNCQUFBLENBQUFGLE9BQUE7QUFBMEIsU0FBQUssUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNB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
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _imageToolbar = _interopRequireDefault(require("../image-toolbar"));
6
+ var _react2 = require("@testing-library/react");
7
+ it('renders image toolbar', function () {
8
+ var classes = {
9
+ holder: 'holder'
10
+ };
11
+ var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_imageToolbar["default"], {
12
+ percent: 50,
13
+ classes: classes,
14
+ onChange: jest.fn()
15
+ })),
16
+ container = _render.container;
17
+
18
+ // Verify the toolbar is rendered
19
+ expect(container.firstChild).toBeInTheDocument();
20
+ });
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pbWFnZVRvb2xiYXIiLCJfcmVhY3QyIiwiaXQiLCJjbGFzc2VzIiwiaG9sZGVyIiwiX3JlbmRlciIsInJlbmRlciIsImNyZWF0ZUVsZW1lbnQiLCJwZXJjZW50Iiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGx1Z2lucy9pbWFnZS9fX3Rlc3RzX18vaW1hZ2UtdG9vbGJhci50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFRvb2xiYXIgZnJvbSAnLi4vaW1hZ2UtdG9vbGJhcic7XG5pbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcblxuaXQoJ3JlbmRlcnMgaW1hZ2UgdG9vbGJhcicsICgpID0+IHtcbiAgY29uc3QgY2xhc3NlcyA9IHsgaG9sZGVyOiAnaG9sZGVyJyB9O1xuXG4gIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPFRvb2xiYXIgcGVyY2VudD17NTB9IGNsYXNzZXM9e2NsYXNzZXN9IG9uQ2hhbmdlPXtqZXN0LmZuKCl9IC8+KTtcblxuICAvLyBWZXJpZnkgdGhlIHRvb2xiYXIgaXMgcmVuZGVyZWRcbiAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGFBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUVBRyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsWUFBTTtFQUNoQyxJQUFNQyxPQUFPLEdBQUc7SUFBRUMsTUFBTSxFQUFFO0VBQVMsQ0FBQztFQUVwQyxJQUFBQyxPQUFBLEdBQXNCLElBQUFDLGNBQU0sZUFBQ1QsTUFBQSxZQUFBVSxhQUFBLENBQUNQLGFBQUEsV0FBTztNQUFDUSxPQUFPLEVBQUUsRUFBRztNQUFDTCxPQUFPLEVBQUVBLE9BQVE7TUFBQ00sUUFBUSxFQUFFQyxJQUFJLENBQUNDLEVBQUUsQ0FBQztJQUFFLENBQUUsQ0FBQyxDQUFDO0lBQXJGQyxTQUFTLEdBQUFQLE9BQUEsQ0FBVE8sU0FBUzs7RUFFakI7RUFDQUMsTUFBTSxDQUFDRCxTQUFTLENBQUNFLFVBQVUsQ0FBQyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2xELENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _ = _interopRequireDefault(require("../"));
5
+ describe('image plugin', function () {
6
+ var value = {};
7
+ var imageSupport = {
8
+ "delete": jest.fn(),
9
+ add: jest.fn()
10
+ };
11
+ var imagePlugin = (0, _["default"])({
12
+ onDelete: function onDelete(src, done) {
13
+ imageSupport["delete"](src, function (e) {
14
+ done(e, value);
15
+ });
16
+ },
17
+ insertImageRequested: function insertImageRequested(node, getHandler) {
18
+ var handler = getHandler(function () {
19
+ return value;
20
+ });
21
+ imageSupport.add(handler);
22
+ }
23
+ });
24
+ describe('normalizeNode', function () {
25
+ it('should exit the function if the node is not of type document', function () {
26
+ var returnValue = imagePlugin.normalizeNode({
27
+ object: 'image'
28
+ });
29
+ expect(returnValue).toEqual(undefined);
30
+ });
31
+ it('should exit if the function if there are no changes needed', function () {
32
+ var nodes = [{
33
+ object: 'text',
34
+ text: 'Before Image'
35
+ }, {
36
+ type: 'image'
37
+ }, {
38
+ object: 'text',
39
+ text: 'After Image'
40
+ }];
41
+ var returnValue = imagePlugin.normalizeNode({
42
+ object: 'document',
43
+ findDescendant: jest.fn(function (callback) {
44
+ nodes.forEach(function (n) {
45
+ return callback(n);
46
+ });
47
+ })
48
+ });
49
+ expect(returnValue).toEqual(undefined);
50
+ });
51
+ it('should return a function if there is a node with an empty text before an image', function () {
52
+ var nodes = [{
53
+ object: 'text',
54
+ text: '',
55
+ key: '1'
56
+ }, {
57
+ type: 'image',
58
+ key: '2'
59
+ }, {
60
+ object: 'text',
61
+ text: 'After Image',
62
+ key: '3'
63
+ }];
64
+ var findDescendant = jest.fn(function (callback) {
65
+ nodes.forEach(function (n) {
66
+ return callback(n);
67
+ });
68
+ });
69
+ var change = {
70
+ withoutNormalization: jest.fn(function (callback) {
71
+ callback();
72
+ }),
73
+ insertTextByKey: jest.fn()
74
+ };
75
+ var returnValue = imagePlugin.normalizeNode({
76
+ object: 'document',
77
+ findDescendant: findDescendant
78
+ });
79
+ expect(returnValue).toEqual(expect.any(Function));
80
+ returnValue(change);
81
+ expect(change.withoutNormalization).toHaveBeenCalledWith(expect.any(Function));
82
+ expect(change.insertTextByKey).toHaveBeenCalledWith('1', 0, ' ');
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJkZXNjcmliZSIsInZhbHVlIiwiaW1hZ2VTdXBwb3J0IiwiamVzdCIsImZuIiwiYWRkIiwiaW1hZ2VQbHVnaW4iLCJJbWFnZVRvb2xiYXIiLCJvbkRlbGV0ZSIsInNyYyIsImRvbmUiLCJlIiwiaW5zZXJ0SW1hZ2VSZXF1ZXN0ZWQiLCJub2RlIiwiZ2V0SGFuZGxlciIsImhhbmRsZXIiLCJpdCIsInJldHVyblZhbHVlIiwibm9ybWFsaXplTm9kZSIsIm9iamVjdCIsImV4cGVjdCIsInRvRXF1YWwiLCJ1bmRlZmluZWQiLCJub2RlcyIsInRleHQiLCJ0eXBlIiwiZmluZERlc2NlbmRhbnQiLCJjYWxsYmFjayIsImZvckVhY2giLCJuIiwia2V5IiwiY2hhbmdlIiwid2l0aG91dE5vcm1hbGl6YXRpb24iLCJpbnNlcnRUZXh0QnlLZXkiLCJhbnkiLCJGdW5jdGlvbiIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2luZGV4LnRlc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEltYWdlVG9vbGJhciBmcm9tICcuLi8nO1xuXG5kZXNjcmliZSgnaW1hZ2UgcGx1Z2luJywgKCkgPT4ge1xuICBsZXQgdmFsdWUgPSB7fTtcblxuICBjb25zdCBpbWFnZVN1cHBvcnQgPSB7XG4gICAgZGVsZXRlOiBqZXN0LmZuKCksXG4gICAgYWRkOiBqZXN0LmZuKCksXG4gIH07XG5cbiAgY29uc3QgaW1hZ2VQbHVnaW4gPSBJbWFnZVRvb2xiYXIoe1xuICAgIG9uRGVsZXRlOiAoc3JjLCBkb25lKSA9PiB7XG4gICAgICBpbWFnZVN1cHBvcnQuZGVsZXRlKHNyYywgKGUpID0+IHtcbiAgICAgICAgZG9uZShlLCB2YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGluc2VydEltYWdlUmVxdWVzdGVkOiAobm9kZSwgZ2V0SGFuZGxlcikgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlciA9IGdldEhhbmRsZXIoKCkgPT4gdmFsdWUpO1xuICAgICAgaW1hZ2VTdXBwb3J0LmFkZChoYW5kbGVyKTtcbiAgICB9LFxuICB9KTtcblxuICBkZXNjcmliZSgnbm9ybWFsaXplTm9kZScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGV4aXQgdGhlIGZ1bmN0aW9uIGlmIHRoZSBub2RlIGlzIG5vdCBvZiB0eXBlIGRvY3VtZW50JywgKCkgPT4ge1xuICAgICAgY29uc3QgcmV0dXJuVmFsdWUgPSBpbWFnZVBsdWdpbi5ub3JtYWxpemVOb2RlKHsgb2JqZWN0OiAnaW1hZ2UnIH0pO1xuXG4gICAgICBleHBlY3QocmV0dXJuVmFsdWUpLnRvRXF1YWwodW5kZWZpbmVkKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZXhpdCBpZiB0aGUgZnVuY3Rpb24gaWYgdGhlcmUgYXJlIG5vIGNoYW5nZXMgbmVlZGVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQmVmb3JlIEltYWdlJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQWZ0ZXIgSW1hZ2UnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGNvbnN0IHJldHVyblZhbHVlID0gaW1hZ2VQbHVnaW4ubm9ybWFsaXplTm9kZSh7XG4gICAgICAgIG9iamVjdDogJ2RvY3VtZW50JyxcbiAgICAgICAgZmluZERlc2NlbmRhbnQ6IGplc3QuZm4oKGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgbm9kZXMuZm9yRWFjaCgobikgPT4gY2FsbGJhY2sobikpO1xuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgICAgZXhwZWN0KHJldHVyblZhbHVlKS50b0VxdWFsKHVuZGVmaW5lZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBhIGZ1bmN0aW9uIGlmIHRoZXJlIGlzIGEgbm9kZSB3aXRoIGFuIGVtcHR5IHRleHQgYmVmb3JlIGFuIGltYWdlJywgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnJyxcbiAgICAgICAgICBrZXk6ICcxJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgICAga2V5OiAnMicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQWZ0ZXIgSW1hZ2UnLFxuICAgICAgICAgIGtleTogJzMnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGNvbnN0IGZpbmREZXNjZW5kYW50ID0gamVzdC5mbigoY2FsbGJhY2spID0+IHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaCgobikgPT4gY2FsbGJhY2sobikpO1xuICAgICAgfSk7XG4gICAgICBjb25zdCBjaGFuZ2UgPSB7XG4gICAgICAgIHdpdGhvdXROb3JtYWxpemF0aW9uOiBqZXN0LmZuKChjYWxsYmFjaykgPT4ge1xuICAgICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICAgIH0pLFxuICAgICAgICBpbnNlcnRUZXh0QnlLZXk6IGplc3QuZm4oKSxcbiAgICAgIH07XG4gICAgICBjb25zdCByZXR1cm5WYWx1ZSA9IGltYWdlUGx1Z2luLm5vcm1hbGl6ZU5vZGUoe1xuICAgICAgICBvYmplY3Q6ICdkb2N1bWVudCcsXG4gICAgICAgIGZpbmREZXNjZW5kYW50LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChyZXR1cm5WYWx1ZSkudG9FcXVhbChleHBlY3QuYW55KEZ1bmN0aW9uKSk7XG5cbiAgICAgIHJldHVyblZhbHVlKGNoYW5nZSk7XG5cbiAgICAgIGV4cGVjdChjaGFuZ2Uud2l0aG91dE5vcm1hbGl6YXRpb24pLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5hbnkoRnVuY3Rpb24pKTtcbiAgICAgIGV4cGVjdChjaGFuZ2UuaW5zZXJ0VGV4dEJ5S2V5KS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnMScsIDAsICcgJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLENBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBQyxRQUFRLENBQUMsY0FBYyxFQUFFLFlBQU07RUFDN0IsSUFBSUMsS0FBSyxHQUFHLENBQUMsQ0FBQztFQUVkLElBQU1DLFlBQVksR0FBRztJQUNuQixVQUFRQyxJQUFJLENBQUNDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pCQyxHQUFHLEVBQUVGLElBQUksQ0FBQ0MsRUFBRSxDQUFDO0VBQ2YsQ0FBQztFQUVELElBQU1FLFdBQVcsR0FBRyxJQUFBQyxZQUFZLEVBQUM7SUFDL0JDLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFHQyxHQUFHLEVBQUVDLElBQUksRUFBSztNQUN2QlIsWUFBWSxVQUFPLENBQUNPLEdBQUcsRUFBRSxVQUFDRSxDQUFDLEVBQUs7UUFDOUJELElBQUksQ0FBQ0MsQ0FBQyxFQUFFVixLQUFLLENBQUM7TUFDaEIsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNEVyxvQkFBb0IsRUFBRSxTQUF0QkEsb0JBQW9CQSxDQUFHQyxJQUFJLEVBQUVDLFVBQVUsRUFBSztNQUMxQyxJQUFNQyxPQUFPLEdBQUdELFVBQVUsQ0FBQztRQUFBLE9BQU1iLEtBQUs7TUFBQSxFQUFDO01BQ3ZDQyxZQUFZLENBQUNHLEdBQUcsQ0FBQ1UsT0FBTyxDQUFDO0lBQzNCO0VBQ0YsQ0FBQyxDQUFDO0VBRUZmLFFBQVEsQ0FBQyxlQUFlLEVBQUUsWUFBTTtJQUM5QmdCLEVBQUUsQ0FBQyw4REFBOEQsRUFBRSxZQUFNO01B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
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _mockChange = _interopRequireWildcard(require("./mock-change"));
6
+ var _slate = require("slate");
7
+ var _insertImageHandler = _interopRequireDefault(require("../insert-image-handler"));
8
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
9
+ expect.extend({
10
+ toMatchData: function toMatchData(received, argument) {
11
+ var argData = _slate.Data.create(argument);
12
+ var pass = argData.equals(received.data);
13
+ if (pass) {
14
+ return {
15
+ message: function message() {
16
+ return "expected ".concat(received.toJSON(), " not to be divisible by ").concat(argData.toJSON());
17
+ },
18
+ pass: true
19
+ };
20
+ } else {
21
+ return {
22
+ message: function message() {
23
+ return "expected ".concat(received.toJSON(), " to be divisible by ").concat(argData.toJSON());
24
+ },
25
+ pass: false
26
+ };
27
+ }
28
+ }
29
+ });
30
+ describe('insert image handler', function () {
31
+ var _change, document, value;
32
+ beforeEach(function () {
33
+ document = new _mockChange.MockDocument();
34
+ _change = new _mockChange["default"]();
35
+ value = {
36
+ change: function change() {
37
+ return _change;
38
+ },
39
+ document: document
40
+ };
41
+ });
42
+ var block = {
43
+ key: 1
44
+ };
45
+ var onChange = jest.fn();
46
+ var handler = new _insertImageHandler["default"](block, function () {}, function () {
47
+ return value;
48
+ }, onChange);
49
+ test('it constructs', function () {
50
+ expect(handler).not.toEqual(undefined);
51
+ });
52
+ describe('fileChosen', function () {
53
+ var fileReader;
54
+ beforeEach(function () {
55
+ fileReader = {
56
+ readAsDataURL: jest.fn()
57
+ };
58
+ global.FileReader = function () {
59
+ return fileReader;
60
+ };
61
+ handler.fileChosen({});
62
+ });
63
+ test('calls readAsDataURL', function () {
64
+ expect(fileReader.readAsDataURL).toBeCalledWith({});
65
+ });
66
+ test('calls onChange with src -> dataUrl', function () {
67
+ fileReader.result = 'dataURL';
68
+ fileReader.onload();
69
+ expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
70
+ expect(_change.setNodeByKey.mock.calls[0][1]).toMatchData({
71
+ src: 'dataURL'
72
+ });
73
+ expect(onChange).toBeCalledWith(_change);
74
+ });
75
+ });
76
+ describe('progress', function () {
77
+ test('calls change w/ percent', function () {
78
+ handler.progress(40, 40, 100);
79
+ expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
80
+ expect(_change.setNodeByKey.mock.calls[0][1].data.toJS()).toMatchObject({
81
+ percent: 40
82
+ });
83
+ });
84
+ });
85
+ describe('done', function () {
86
+ test('calls setNodeByKey', function () {
87
+ handler.done(null, 'src');
88
+ expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
89
+ expect(_change.setNodeByKey.mock.calls[0][1].data.toJS()).toMatchObject({
90
+ src: 'src',
91
+ loaded: true,
92
+ percent: 100
93
+ });
94
+ });
95
+ });
96
+ describe('cancel', function () {
97
+ beforeEach(function () {
98
+ document.getChild = jest.fn().mockReturnValue({
99
+ data: _slate.Data.create({}),
100
+ key: block.key
101
+ });
102
+ handler.cancel();
103
+ });
104
+ test('calls onChange', function () {
105
+ expect(onChange).toBeCalled();
106
+ });
107
+ test('calls removeNodeByKey', function () {
108
+ expect(_change.removeNodeByKey).toBeCalledWith(block.key);
109
+ });
110
+ });
111
+ });
112
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9ja0NoYW5nZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9zbGF0ZSIsIl9pbnNlcnRJbWFnZUhhbmRsZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJleHBlY3QiLCJleHRlbmQiLCJ0b01hdGNoRGF0YSIsInJlY2VpdmVkIiwiYXJndW1lbnQiLCJhcmdEYXRhIiwiRGF0YSIsImNyZWF0ZSIsInBhc3MiLCJlcXVhbHMiLCJkYXRhIiwibWVzc2FnZSIsImNvbmNhdCIsInRvSlNPTiIsImRlc2NyaWJlIiwiY2hhbmdlIiwiZG9jdW1lbnQiLCJ2YWx1ZSIsImJlZm9yZUVhY2giLCJNb2NrRG9jdW1lbnQiLCJNb2NrQ2hhbmdlIiwiYmxvY2siLCJrZXkiLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsImhhbmRsZXIiLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJ0ZXN0Iiwibm90IiwidG9FcXVhbCIsInVuZGVmaW5lZCIsImZpbGVSZWFkZXIiLCJyZWFkQXNEYXRhVVJMIiwiZ2xvYmFsIiwiRmlsZVJlYWRlciIsImZpbGVDaG9zZW4iLCJ0b0JlQ2FsbGVkV2l0aCIsInJlc3VsdCIsIm9ubG9hZCIsInNldE5vZGVCeUtleSIsImFueXRoaW5nIiwibW9jayIsImNhbGxzIiwic3JjIiwicHJvZ3Jlc3MiLCJ0b0pTIiwidG9NYXRjaE9iamVjdCIsInBlcmNlbnQiLCJkb25lIiwibG9hZGVkIiwiZ2V0Q2hpbGQiLCJtb2NrUmV0dXJuVmFsdWUiLCJjYW5jZWwiLCJ0b0JlQ2FsbGVkIiwicmVtb3ZlTm9kZUJ5S2V5Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2luc2VydC1pbWFnZS1oYW5kbGVyLnRlc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1vY2tDaGFuZ2UsIHsgTW9ja0RvY3VtZW50IH0gZnJvbSAnLi9tb2NrLWNoYW5nZSc7XG5cbmltcG9ydCB7IERhdGEgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgSW5zZXJ0SW1hZ2VIYW5kbGVyIGZyb20gJy4uL2luc2VydC1pbWFnZS1oYW5kbGVyJztcblxuZXhwZWN0LmV4dGVuZCh7XG4gIHRvTWF0Y2hEYXRhOiAocmVjZWl2ZWQsIGFyZ3VtZW50KSA9PiB7XG4gICAgY29uc3QgYXJnRGF0YSA9IERhdGEuY3JlYXRlKGFyZ3VtZW50KTtcbiAgICBjb25zdCBwYXNzID0gYXJnRGF0YS5lcXVhbHMocmVjZWl2ZWQuZGF0YSk7XG4gICAgaWYgKHBhc3MpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1lc3NhZ2U6ICgpID0+IGBleHBlY3RlZCAke3JlY2VpdmVkLnRvSlNPTigpfSBub3QgdG8gYmUgZGl2aXNpYmxlIGJ5ICR7YXJnRGF0YS50b0pTT04oKX1gLFxuICAgICAgICBwYXNzOiB0cnVlLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWVzc2FnZTogKCkgPT4gYGV4cGVjdGVkICR7cmVjZWl2ZWQudG9KU09OKCl9IHRvIGJlIGRpdmlzaWJsZSBieSAke2FyZ0RhdGEudG9KU09OKCl9YCxcbiAgICAgICAgcGFzczogZmFsc2UsXG4gICAgICB9O1xuICAgIH1cbiAgfSxcbn0pO1xuZGVzY3JpYmUoJ2luc2VydCBpbWFnZSBoYW5kbGVyJywgKCkgPT4ge1xuICBsZXQgY2hhbmdlLCBkb2N1bWVudCwgdmFsdWU7XG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGRvY3VtZW50ID0gbmV3IE1vY2tEb2N1bWVudCgpO1xuICAgIGNoYW5nZSA9IG5ldyBNb2NrQ2hhbmdlKCk7XG4gICAgdmFsdWUgPSB7XG4gICAgICBjaGFuZ2U6ICgpID0+IGNoYW5nZSxcbiAgICAgIGRvY3VtZW50LFxuICAgIH07XG4gIH0pO1xuXG4gIGNvbnN0IGJsb2NrID0geyBrZXk6IDEgfTtcbiAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgY29uc3QgaGFuZGxlciA9IG5ldyBJbnNlcnRJbWFnZUhhbmRsZXIoXG4gICAgYmxvY2ssXG4gICAgKCkgPT4ge30sXG4gICAgKCkgPT4gdmFsdWUsXG4gICAgb25DaGFuZ2UsXG4gICk7XG5cbiAgdGVzdCgnaXQgY29uc3RydWN0cycsICgpID0+IHtcbiAgICBleHBlY3QoaGFuZGxlcikubm90LnRvRXF1YWwodW5kZWZpbmVkKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2ZpbGVDaG9zZW4nLCAoKSA9PiB7XG4gICAgbGV0IGZpbGVSZWFkZXI7XG4gICAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICBmaWxlUmVhZGVyID0ge1xuICAgICAgICByZWFkQXNEYXRhVVJMOiBqZXN0LmZuKCksXG4gICAgICB9O1xuXG4gICAgICBnbG9iYWwuRmlsZVJlYWRlciA9ICgpID0+IGZpbGVSZWFkZXI7XG4gICAgICBoYW5kbGVyLmZpbGVDaG9zZW4oe30pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnY2FsbHMgcmVhZEFzRGF0YVVSTCcsICgpID0+IHtcbiAgICAgIGV4cGVjdChmaWxlUmVhZGVyLnJlYWRBc0RhdGFVUkwpLnRvQmVDYWxsZWRXaXRoKHt9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggc3JjIC0+IGRhdGFVcmwnLCAoKSA9PiB7XG4gICAgICBmaWxlUmVhZGVyLnJlc3VsdCA9ICdkYXRhVVJMJztcbiAgICAgIGZpbGVSZWFkZXIub25sb2FkKCk7XG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleSkudG9CZUNhbGxlZFdpdGgoYmxvY2sua2V5LCBleHBlY3QuYW55dGhpbmcoKSk7XG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdKS50b01hdGNoRGF0YSh7XG4gICAgICAgIHNyYzogJ2RhdGFVUkwnLFxuICAgICAgfSk7XG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvQmVDYWxsZWRXaXRoKGNoYW5nZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdwcm9ncmVzcycsICgpID0+IHtcbiAgICB0ZXN0KCdjYWxscyBjaGFuZ2Ugdy8gcGVyY2VudCcsICgpID0+IHtcbiAgICAgIGhhbmRsZXIucHJvZ3Jlc3MoNDAsIDQwLCAxMDApO1xuICAgICAgZXhwZWN0KGNoYW5nZS5zZXROb2RlQnlLZXkpLnRvQmVDYWxsZWRXaXRoKGJsb2NrLmtleSwgZXhwZWN0LmFueXRoaW5nKCkpO1xuXG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdLmRhdGEudG9KUygpKS50b01hdGNoT2JqZWN0KHtcbiAgICAgICAgcGVyY2VudDogNDAsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2RvbmUnLCAoKSA9PiB7XG4gICAgdGVzdCgnY2FsbHMgc2V0Tm9kZUJ5S2V5JywgKCkgPT4ge1xuICAgICAgaGFuZGxlci5kb25lKG51bGwsICdzcmMnKTtcblxuICAgICAgZXhwZWN0KGNoYW5nZS5zZXROb2RlQnlLZXkpLnRvQmVDYWxsZWRXaXRoKGJsb2NrLmtleSwgZXhwZWN0LmFueXRoaW5nKCkpO1xuXG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdLmRhdGEudG9KUygpKS50b01hdGNoT2JqZWN0KHtcbiAgICAgICAgc3JjOiAnc3JjJyxcbiAgICAgICAgbG9hZGVkOiB0cnVlLFxuICAgICAgICBwZXJjZW50OiAxMDAsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2NhbmNlbCcsICgpID0+IHtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIGRvY3VtZW50LmdldENoaWxkID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7IGRhdGE6IERhdGEuY3JlYXRlKHt9KSwga2V5OiBibG9jay5rZXkgfSk7XG4gICAgICBoYW5kbGVyLmNhbmNlbCgpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnY2FsbHMgb25DaGFuZ2UnLCAoKSA9PiB7XG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvQmVDYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NhbGxzIHJlbW92ZU5vZGVCeUtleScsICgpID0+IHtcbiAgICAgIGV4cGVjdChjaGFuZ2UucmVtb3ZlTm9kZUJ5S2V5KS50b0JlQ2FsbGVkV2l0aChibG9jay5rZXkpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsbUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUF5RCxTQUFBRCx3QkFBQUssQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQVAsdUJBQUEsWUFBQUEsd0JBQUFLLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFELENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsTUFBQU0sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxtQkFBQVQsQ0FBQSxpQkFBQUEsQ0FBQSxnQkFBQVUsT0FBQSxDQUFBVixDQUFBLDBCQUFBQSxDQUFBLFNBQUFRLENBQUEsTUFBQUYsQ0FBQSxHQUFBTCxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxRQUFBRyxDQUFBLENBQUFLLEdBQUEsQ0FBQVgsQ0FBQSxVQUFBTSxDQUFBLENBQUFNLEdBQUEsQ0FBQVosQ0FBQSxHQUFBTSxDQUFBLENB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
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MockDocument = MockDocument;
7
+ exports["default"] = MockChange;
8
+ var _slate = require("slate");
9
+ function MockChange() {
10
+ this.setNodeByKey = jest.fn().mockReturnValue(this);
11
+ this.removeNodeByKey = jest.fn().mockReturnValue(this);
12
+ this.insertInline = jest.fn().mockReturnValue(this);
13
+ this.moveFocusTo = jest.fn().mockReturnValue(this);
14
+ this.moveAnchorTo = jest.fn().mockReturnValue(this);
15
+ }
16
+ function MockDocument() {
17
+ this.getChild = jest.fn().mockReturnValue({
18
+ data: _slate.Data.create({})
19
+ });
20
+ this.getDescendant = jest.fn();
21
+ }
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc2xhdGUiLCJyZXF1aXJlIiwiTW9ja0NoYW5nZSIsInNldE5vZGVCeUtleSIsImplc3QiLCJmbiIsIm1vY2tSZXR1cm5WYWx1ZSIsInJlbW92ZU5vZGVCeUtleSIsImluc2VydElubGluZSIsIm1vdmVGb2N1c1RvIiwibW92ZUFuY2hvclRvIiwiTW9ja0RvY3VtZW50IiwiZ2V0Q2hpbGQiLCJkYXRhIiwiRGF0YSIsImNyZWF0ZSIsImdldERlc2NlbmRhbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGx1Z2lucy9pbWFnZS9fX3Rlc3RzX18vbW9jay1jaGFuZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YSB9IGZyb20gJ3NsYXRlJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTW9ja0NoYW5nZSgpIHtcbiAgdGhpcy5zZXROb2RlQnlLZXkgPSBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKHRoaXMpO1xuICB0aGlzLnJlbW92ZU5vZGVCeUtleSA9IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUodGhpcyk7XG4gIHRoaXMuaW5zZXJ0SW5saW5lID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh0aGlzKTtcbiAgdGhpcy5tb3ZlRm9jdXNUbyA9IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUodGhpcyk7XG4gIHRoaXMubW92ZUFuY2hvclRvID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh0aGlzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIE1vY2tEb2N1bWVudCgpIHtcbiAgdGhpcy5nZXRDaGlsZCA9IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoeyBkYXRhOiBEYXRhLmNyZWF0ZSh7fSkgfSk7XG5cbiAgdGhpcy5nZXREZXNjZW5kYW50ID0gamVzdC5mbigpO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBRWUsU0FBU0MsVUFBVUEsQ0FBQSxFQUFHO0VBQ25DLElBQUksQ0FBQ0MsWUFBWSxHQUFHQyxJQUFJLENBQUNDLEVBQUUsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQyxJQUFJLENBQUM7RUFDbkQsSUFBSSxDQUFDQyxlQUFlLEdBQUdILElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUMsQ0FBQ0MsZUFBZSxDQUFDLElBQUksQ0FBQztFQUN0RCxJQUFJLENBQUNFLFlBQVksR0FBR0osSUFBSSxDQUFDQyxFQUFFLENBQUMsQ0FBQyxDQUFDQyxlQUFlLENBQUMsSUFBSSxDQUFDO0VBQ25ELElBQUksQ0FBQ0csV0FBVyxHQUFHTCxJQUFJLENBQUNDLEVBQUUsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQyxJQUFJLENBQUM7RUFDbEQsSUFBSSxDQUFDSSxZQUFZLEdBQUdOLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUMsQ0FBQ0MsZUFBZSxDQUFDLElBQUksQ0FBQztBQUNyRDtBQUVPLFNBQVNLLFlBQVlBLENBQUEsRUFBRztFQUM3QixJQUFJLENBQUNDLFFBQVEsR0FBR1IsSUFBSSxDQUFDQyxFQUFFLENBQUMsQ0FBQyxDQUFDQyxlQUFlLENBQUM7SUFBRU8sSUFBSSxFQUFFQyxXQUFJLENBQUNDLE1BQU0sQ0FBQyxDQUFDLENBQUM7RUFBRSxDQUFDLENBQUM7RUFFcEUsSUFBSSxDQUFDQyxhQUFhLEdBQUdaLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7QUFDaEMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _index = _interopRequireWildcard(require("../index"));
6
+ var _debug = _interopRequireDefault(require("debug"));
7
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
8
+ var log = (0, _debug["default"])('@pie-lib:editable-html:test:plugins:list');
9
+ describe('ListPlugin', function () {
10
+ var next;
11
+ describe('deserialize', function () {
12
+ next = jest.fn();
13
+ var assertDeserialize = function assertDeserialize(tagName, expectedType) {
14
+ it("should deserialize ".concat(tagName, " to ").concat(expectedType), function () {
15
+ var out = _index.serialization.deserialize({
16
+ tagName: tagName,
17
+ children: [],
18
+ childNodes: []
19
+ }, next);
20
+ expect(out).toMatchObject({
21
+ object: 'block',
22
+ type: expectedType
23
+ });
24
+ expect(next).toHaveBeenCalledWith([]);
25
+ });
26
+ };
27
+ assertDeserialize('ul', 'ul_list');
28
+ assertDeserialize('ol', 'ol_list');
29
+ assertDeserialize('li', 'list_item');
30
+ });
31
+ describe('serialize', function () {
32
+ var assertSerialize = function assertSerialize(type, expectedType) {
33
+ it("should serialize ".concat(type, " to ").concat(expectedType), function () {
34
+ var out = _index.serialization.serialize({
35
+ object: 'block',
36
+ type: type
37
+ }, {});
38
+ log('out: ', out);
39
+ expect(out.type).toMatch(expectedType);
40
+ });
41
+ };
42
+ assertSerialize('ul_list', 'ul');
43
+ assertSerialize('ol_list', 'ol');
44
+ assertSerialize('list_item', 'li');
45
+ });
46
+ describe('renderNode', function () {
47
+ var plugin = (0, _index["default"])({});
48
+ var assertRenderNode = function assertRenderNode(type, expectedType) {
49
+ it("should renderNode ".concat(type, " to ").concat(expectedType), function () {
50
+ var out = plugin.renderNode({
51
+ node: {
52
+ type: type
53
+ }
54
+ });
55
+ expect(out.type).toMatch(expectedType);
56
+ });
57
+ };
58
+ assertRenderNode('ul_list', 'ul');
59
+ assertRenderNode('ol_list', 'ol');
60
+ assertRenderNode('list_item', 'li');
61
+ });
62
+ });
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5kZXgiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZGVidWciLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJsb2ciLCJkZWJ1ZyIsImRlc2NyaWJlIiwibmV4dCIsImplc3QiLCJmbiIsImFzc2VydERlc2VyaWFsaXplIiwidGFnTmFtZSIsImV4cGVjdGVkVHlwZSIsIml0IiwiY29uY2F0Iiwib3V0Iiwic2VyaWFsaXphdGlvbiIsImRlc2VyaWFsaXplIiwiY2hpbGRyZW4iLCJjaGlsZE5vZGVzIiwiZXhwZWN0IiwidG9NYXRjaE9iamVjdCIsIm9iamVjdCIsInR5cGUiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsImFzc2VydFNlcmlhbGl6ZSIsInNlcmlhbGl6ZSIsInRvTWF0Y2giLCJwbHVnaW4iLCJMaXN0IiwiYXNzZXJ0UmVuZGVyTm9kZSIsInJlbmRlck5vZGUiLCJub2RlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvbGlzdC9fX3Rlc3RzX18vaW5kZXgudGVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdCwgeyBzZXJpYWxpemF0aW9uIH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcblxuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6dGVzdDpwbHVnaW5zOmxpc3QnKTtcblxuZGVzY3JpYmUoJ0xpc3RQbHVnaW4nLCAoKSA9PiB7XG4gIGxldCBuZXh0O1xuXG4gIGRlc2NyaWJlKCdkZXNlcmlhbGl6ZScsICgpID0+IHtcbiAgICBuZXh0ID0gamVzdC5mbigpO1xuXG4gICAgY29uc3QgYXNzZXJ0RGVzZXJpYWxpemUgPSAodGFnTmFtZSwgZXhwZWN0ZWRUeXBlKSA9PiB7XG4gICAgICBpdChgc2hvdWxkIGRlc2VyaWFsaXplICR7dGFnTmFtZX0gdG8gJHtleHBlY3RlZFR5cGV9YCwgKCkgPT4ge1xuICAgICAgICBjb25zdCBvdXQgPSBzZXJpYWxpemF0aW9uLmRlc2VyaWFsaXplKHsgdGFnTmFtZSwgY2hpbGRyZW46IFtdLCBjaGlsZE5vZGVzOiBbXSB9LCBuZXh0KTtcblxuICAgICAgICBleHBlY3Qob3V0KS50b01hdGNoT2JqZWN0KHsgb2JqZWN0OiAnYmxvY2snLCB0eXBlOiBleHBlY3RlZFR5cGUgfSk7XG4gICAgICAgIGV4cGVjdChuZXh0KS50b0hhdmVCZWVuQ2FsbGVkV2l0aChbXSk7XG4gICAgICB9KTtcbiAgICB9O1xuICAgIGFzc2VydERlc2VyaWFsaXplKCd1bCcsICd1bF9saXN0Jyk7XG4gICAgYXNzZXJ0RGVzZXJpYWxpemUoJ29sJywgJ29sX2xpc3QnKTtcbiAgICBhc3NlcnREZXNlcmlhbGl6ZSgnbGknLCAnbGlzdF9pdGVtJyk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzZXJpYWxpemUnLCAoKSA9PiB7XG4gICAgY29uc3QgYXNzZXJ0U2VyaWFsaXplID0gKHR5cGUsIGV4cGVjdGVkVHlwZSkgPT4ge1xuICAgICAgaXQoYHNob3VsZCBzZXJpYWxpemUgJHt0eXBlfSB0byAke2V4cGVjdGVkVHlwZX1gLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IG91dCA9IHNlcmlhbGl6YXRpb24uc2VyaWFsaXplKHsgb2JqZWN0OiAnYmxvY2snLCB0eXBlIH0sIHt9KTtcbiAgICAgICAgbG9nKCdvdXQ6ICcsIG91dCk7XG4gICAgICAgIGV4cGVjdChvdXQudHlwZSkudG9NYXRjaChleHBlY3RlZFR5cGUpO1xuICAgICAgfSk7XG4gICAgfTtcbiAgICBhc3NlcnRTZXJpYWxpemUoJ3VsX2xpc3QnLCAndWwnKTtcbiAgICBhc3NlcnRTZXJpYWxpemUoJ29sX2xpc3QnLCAnb2wnKTtcbiAgICBhc3NlcnRTZXJpYWxpemUoJ2xpc3RfaXRlbScsICdsaScpO1xuICB9KTtcblxuICBkZXNjcmliZSgncmVuZGVyTm9kZScsICgpID0+IHtcbiAgICBsZXQgcGx1Z2luID0gTGlzdCh7fSk7XG5cbiAgICBjb25zdCBhc3NlcnRSZW5kZXJOb2RlID0gKHR5cGUsIGV4cGVjdGVkVHlwZSkgPT4ge1xuICAgICAgaXQoYHNob3VsZCByZW5kZXJOb2RlICR7dHlwZX0gdG8gJHtleHBlY3RlZFR5cGV9YCwgKCkgPT4ge1xuICAgICAgICBjb25zdCBvdXQgPSBwbHVnaW4ucmVuZGVyTm9kZSh7IG5vZGU6IHsgdHlwZSB9IH0pO1xuICAgICAgICBleHBlY3Qob3V0LnR5cGUpLnRvTWF0Y2goZXhwZWN0ZWRUeXBlKTtcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBhc3NlcnRSZW5kZXJOb2RlKCd1bF9saXN0JywgJ3VsJyk7XG4gICAgYXNzZXJ0UmVuZGVyTm9kZSgnb2xfbGlzdCcsICdvbCcpO1xuICAgIGFzc2VydFJlbmRlck5vZGUoJ2xpc3RfaXRlbScsICdsaScpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQTBCLFNBQUFELHdCQUFBSSxDQUFBLEVBQUFDLENBQUEsNkJBQUFDLE9BQUEsTUFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBTix1QkFBQSxZQUFBQSx3QkFBQUksQ0FBQSxFQUFBQyxDQUFBLFNBQUFBLENBQUEsSUFBQUQsQ0FBQSxJQUFBQSxDQUFBLENBQUFLLFVBQUEsU0FBQUwsQ0FBQSxNQUFBTSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxLQUFBQyxTQUFBLG1CQUFBVCxDQUFBLGlCQUFBQSxDQUFBLGdCQUFBVSxPQUFBLENBQUFWLENBQUEsMEJBQUFBLENBQUEsU0FBQVEsQ0FBQSxNQUFBRixDQUFBLEdBQUFMLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLFFBQUFHLENBQUEsQ0FBQUssR0FBQSxDQUFBWCxDQUFBLFVBQUFNLENBQUEsQ0FBQU0sR0FBQSxDQUFBWixDQUFBLEdBQUFNLENBQUEsQ0FBQU8sR0FBQSxDQUFBYixDQUFBLEVBQUFRLENBQUEsY0FBQU0sRUFBQSxJQUFBZCxDQUFBLGdCQUFBYyxFQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBaEIsQ0FBQSxFQUFBYyxFQUFBLE9BQUFQLENBQUEsSUFBQUQsQ0FBQSxHQUFBVyxNQUFBLENBQUFDLGNBQUEsS0FBQUQsTUFBQSxDQUFBRSx3QkFBQSxDQUFBbkIsQ0FBQSxFQUFBYyxFQUFBLE9BQUFQLENBQUEsQ0FBQUssR0FBQSxJQUFBTCxDQUFBLENBQUFNLEdBQUEsSUFBQVAsQ0FBQSxDQUFBRSxDQUFBLEVBQUFNLEVBQUEsRUFBQVAsQ0FBQSxJQUFBQyxDQUFBLENBQUFNLEVBQUEsSUFBQWQsQ0FBQSxDQUFBYyxFQUFBLFdBQUFOLENBQUEsS0FBQVIsQ0FBQSxFQUFBQyxDQUFBO0FBRTFCLElBQU1tQixHQUFHLEdBQUcsSUFBQUMsaUJBQUssRUFBQywwQ0FBMEMsQ0FBQztBQUU3REMsUUFBUSxDQUFDLFlBQVksRUFBRSxZQUFNO0VBQzNCLElBQUlDLElBQUk7RUFFUkQsUUFBUSxDQUFDLGFBQWEsRUFBRSxZQUFNO0lBQzVCQyxJQUFJLEdBQUdDLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7SUFFaEIsSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBSUMsT0FBTyxFQUFFQyxZQUFZLEVBQUs7TUFDbkRDLEVBQUUsdUJBQUFDLE1BQUEsQ0FBdUJILE9BQU8sVUFBQUcsTUFBQSxDQUFPRixZQUFZLEdBQUksWUFBTTtRQUMzRCxJQUFNRyxHQUFHLEdBQUdDLG9CQUFhLENBQUNDLFdBQVcsQ0FBQztVQUFFTixPQUFPLEVBQVBBLE9BQU87VUFBRU8sUUFBUSxFQUFFLEVBQUU7VUFBRUMsVUFBVSxFQUFFO1FBQUcsQ0FBQyxFQUFFWixJQUFJLENBQUM7UUFFdEZhLE1BQU0sQ0FBQ0wsR0FBRyxDQUFDLENBQUNNLGFBQWEsQ0FBQztVQUFFQyxNQUFNLEVBQUUsT0FBTztVQUFFQyxJQUFJLEVBQUVYO1FBQWEsQ0FBQyxDQUFDO1FBQ2xFUSxNQUFNLENBQUNiLElBQUksQ0FBQyxDQUFDaUIsb0JBQW9CLENBQUMsRUFBRSxDQUFDO01BQ3ZDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRGQsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUNsQ0EsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztJQUNsQ0EsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQztFQUN0QyxDQUFDLENBQUM7RUFFRkosUUFBUSxDQUFDLFdBQVcsRUFBRSxZQUFNO0lBQzFCLElBQU1tQixlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUlGLElBQUksRUFBRVgsWUFBWSxFQUFLO01BQzlDQyxFQUFFLHFCQUFBQyxNQUFBLENBQXFCUyxJQUFJLFVBQUFULE1BQUEsQ0FBT0YsWUFBWSxHQUFJLFlBQU07UUFDdEQsSUFBTUcsR0FBRyxHQUFHQyxvQkFBYSxDQUFDVSxTQUFTLENBQUM7VUFBRUosTUFBTSxFQUFFLE9BQU87VUFBRUMsSUFBSSxFQUFKQTtRQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNsRW5CLEdBQUcsQ0FBQyxPQUFPLEVBQUVXLEdBQUcsQ0FBQztRQUNqQkssTUFBTSxDQUFDTCxHQUFHLENBQUNRLElBQUksQ0FBQyxDQUFDSSxPQUFPLENBQUNmLFlBQVksQ0FBQztNQUN4QyxDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0RhLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2hDQSxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztJQUNoQ0EsZUFBZSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7RUFDcEMsQ0FBQyxDQUFDO0VBRUZuQixRQUFRLENBQUMsWUFBWSxFQUFFLFlBQU07SUFDM0IsSUFBSXNCLE1BQU0sR0FBRyxJQUFBQyxpQkFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXJCLElBQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUlQLElBQUksRUFBRVgsWUFBWSxFQUFLO01BQy9DQyxFQUFFLHNCQUFBQyxNQUFBLENBQXNCUyxJQUFJLFVBQUFULE1BQUEsQ0FBT0YsWUFBWSxHQUFJLFlBQU07UUFDdkQsSUFBTUcsR0FBRyxHQUFHYSxNQUFNLENBQUNHLFVBQVUsQ0FBQztVQUFFQyxJQUFJLEVBQUU7WUFBRVQsSUFBSSxFQUFKQTtVQUFLO1FBQUUsQ0FBQyxDQUFDO1FBQ2pESCxNQUFNLENBQUNMLEdBQUcsQ0FBQ1EsSUFBSSxDQUFDLENBQUNJLE9BQU8sQ0FBQ2YsWUFBWSxDQUFDO01BQ3hDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRGtCLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7SUFDakNBLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7SUFDakNBLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7RUFDckMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119