@pie-lib/editable-html 11.1.1 → 11.3.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -4
- package/NEXT.CHANGELOG.json +1 -0
- package/lib/__tests__/editor.test.js +470 -0
- package/lib/__tests__/serialization.test.js +246 -0
- package/lib/__tests__/utils.js +106 -0
- package/lib/block-tags.js +25 -0
- package/lib/constants.js +16 -0
- package/lib/editor.js +349 -88
- package/lib/index.js +26 -10
- package/lib/parse-html.js +1 -1
- package/lib/plugins/characters/custom-popper.js +1 -1
- package/lib/plugins/characters/index.js +9 -4
- package/lib/plugins/characters/utils.js +13 -13
- package/lib/plugins/css/icons/index.js +37 -0
- package/lib/plugins/css/index.js +397 -0
- package/lib/plugins/customPlugin/index.js +114 -0
- package/lib/plugins/html/icons/index.js +1 -1
- package/lib/plugins/html/index.js +12 -8
- package/lib/plugins/image/__tests__/component.test.js +51 -0
- package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +56 -0
- package/lib/plugins/image/__tests__/image-toolbar.test.js +26 -0
- package/lib/plugins/image/__tests__/index.test.js +98 -0
- package/lib/plugins/image/__tests__/insert-image-handler.test.js +125 -0
- package/lib/plugins/image/__tests__/mock-change.js +25 -0
- package/lib/plugins/image/alt-dialog.js +1 -1
- package/lib/plugins/image/component.js +1 -1
- package/lib/plugins/image/image-toolbar.js +1 -1
- package/lib/plugins/image/index.js +3 -2
- package/lib/plugins/image/insert-image-handler.js +14 -5
- package/lib/plugins/index.js +271 -12
- package/lib/plugins/list/__tests__/index.test.js +79 -0
- package/lib/plugins/list/index.js +131 -1
- package/lib/plugins/math/__tests__/index.test.js +300 -0
- package/lib/plugins/math/index.js +92 -57
- package/lib/plugins/media/__tests__/index.test.js +71 -0
- package/lib/plugins/media/index.js +6 -3
- package/lib/plugins/media/media-dialog.js +99 -58
- package/lib/plugins/media/media-toolbar.js +1 -1
- package/lib/plugins/media/media-wrapper.js +1 -1
- package/lib/plugins/rendering/index.js +46 -0
- package/lib/plugins/respArea/drag-in-the-blank/choice.js +6 -3
- package/lib/plugins/respArea/drag-in-the-blank/index.js +1 -1
- package/lib/plugins/respArea/explicit-constructed-response/index.js +12 -10
- package/lib/plugins/respArea/icons/index.js +1 -1
- package/lib/plugins/respArea/index.js +70 -22
- package/lib/plugins/respArea/inline-dropdown/index.js +11 -6
- package/lib/plugins/respArea/math-templated/index.js +130 -0
- package/lib/plugins/respArea/utils.js +17 -2
- package/lib/plugins/table/CustomTablePlugin.js +133 -0
- package/lib/plugins/table/__tests__/index.test.js +442 -0
- package/lib/plugins/table/__tests__/table-toolbar.test.js +54 -0
- package/lib/plugins/table/icons/index.js +1 -1
- package/lib/plugins/table/index.js +44 -60
- package/lib/plugins/table/table-toolbar.js +34 -5
- package/lib/plugins/textAlign/icons/index.js +226 -0
- package/lib/plugins/textAlign/index.js +34 -0
- package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +128 -0
- package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +51 -0
- package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +54 -0
- package/lib/plugins/toolbar/__tests__/toolbar.test.js +120 -0
- package/lib/plugins/toolbar/default-toolbar.js +83 -28
- package/lib/plugins/toolbar/done-button.js +6 -3
- package/lib/plugins/toolbar/editor-and-toolbar.js +19 -20
- package/lib/plugins/toolbar/index.js +1 -1
- package/lib/plugins/toolbar/toolbar-buttons.js +45 -12
- package/lib/plugins/toolbar/toolbar.js +36 -12
- package/lib/plugins/utils.js +1 -1
- package/lib/serialization.js +234 -45
- package/lib/theme.js +1 -1
- package/package.json +6 -6
- package/src/__tests__/editor.test.jsx +363 -0
- package/src/__tests__/serialization.test.js +291 -0
- package/src/__tests__/utils.js +36 -0
- package/src/block-tags.js +17 -0
- package/src/constants.js +7 -0
- package/src/editor.jsx +303 -49
- package/src/index.jsx +19 -10
- package/src/plugins/characters/index.jsx +11 -3
- package/src/plugins/characters/utils.js +12 -12
- package/src/plugins/css/icons/index.jsx +17 -0
- package/src/plugins/css/index.jsx +346 -0
- package/src/plugins/customPlugin/index.jsx +85 -0
- package/src/plugins/html/index.jsx +9 -6
- package/src/plugins/image/__tests__/__snapshots__/component.test.jsx.snap +51 -0
- package/src/plugins/image/__tests__/__snapshots__/image-toolbar-logic.test.jsx.snap +27 -0
- package/src/plugins/image/__tests__/__snapshots__/image-toolbar.test.jsx.snap +44 -0
- package/src/plugins/image/__tests__/component.test.jsx +41 -0
- package/src/plugins/image/__tests__/image-toolbar-logic.test.jsx +42 -0
- package/src/plugins/image/__tests__/image-toolbar.test.jsx +11 -0
- package/src/plugins/image/__tests__/index.test.js +95 -0
- package/src/plugins/image/__tests__/insert-image-handler.test.js +113 -0
- package/src/plugins/image/__tests__/mock-change.js +15 -0
- package/src/plugins/image/index.jsx +2 -1
- package/src/plugins/image/insert-image-handler.js +13 -6
- package/src/plugins/index.jsx +248 -5
- package/src/plugins/list/__tests__/index.test.js +54 -0
- package/src/plugins/list/index.jsx +130 -0
- package/src/plugins/math/__tests__/__snapshots__/index.test.jsx.snap +48 -0
- package/src/plugins/math/__tests__/index.test.jsx +245 -0
- package/src/plugins/math/index.jsx +87 -56
- package/src/plugins/media/__tests__/index.test.js +75 -0
- package/src/plugins/media/index.jsx +3 -2
- package/src/plugins/media/media-dialog.js +106 -57
- package/src/plugins/rendering/index.js +31 -0
- package/src/plugins/respArea/drag-in-the-blank/choice.jsx +4 -1
- package/src/plugins/respArea/explicit-constructed-response/index.jsx +10 -8
- package/src/plugins/respArea/index.jsx +53 -7
- package/src/plugins/respArea/inline-dropdown/index.jsx +13 -6
- package/src/plugins/respArea/math-templated/index.jsx +104 -0
- package/src/plugins/respArea/utils.jsx +11 -0
- package/src/plugins/table/CustomTablePlugin.js +113 -0
- package/src/plugins/table/__tests__/__snapshots__/table-toolbar.test.jsx.snap +44 -0
- package/src/plugins/table/__tests__/index.test.jsx +401 -0
- package/src/plugins/table/__tests__/table-toolbar.test.jsx +42 -0
- package/src/plugins/table/index.jsx +46 -59
- package/src/plugins/table/table-toolbar.jsx +39 -2
- package/src/plugins/textAlign/icons/index.jsx +139 -0
- package/src/plugins/textAlign/index.jsx +23 -0
- package/src/plugins/toolbar/__tests__/__snapshots__/default-toolbar.test.jsx.snap +923 -0
- package/src/plugins/toolbar/__tests__/__snapshots__/editor-and-toolbar.test.jsx.snap +20 -0
- package/src/plugins/toolbar/__tests__/__snapshots__/toolbar-buttons.test.jsx.snap +36 -0
- package/src/plugins/toolbar/__tests__/__snapshots__/toolbar.test.jsx.snap +46 -0
- package/src/plugins/toolbar/__tests__/default-toolbar.test.jsx +94 -0
- package/src/plugins/toolbar/__tests__/editor-and-toolbar.test.jsx +37 -0
- package/src/plugins/toolbar/__tests__/toolbar-buttons.test.jsx +51 -0
- package/src/plugins/toolbar/__tests__/toolbar.test.jsx +106 -0
- package/src/plugins/toolbar/default-toolbar.jsx +80 -20
- package/src/plugins/toolbar/done-button.jsx +3 -1
- package/src/plugins/toolbar/editor-and-toolbar.jsx +18 -13
- package/src/plugins/toolbar/toolbar-buttons.jsx +52 -11
- package/src/plugins/toolbar/toolbar.jsx +31 -8
- package/src/serialization.jsx +213 -38
- package/README.md +0 -45
- package/deploy.sh +0 -16
- package/lib/editor.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/parse-html.js.map +0 -1
- package/lib/plugins/characters/custom-popper.js.map +0 -1
- package/lib/plugins/characters/index.js.map +0 -1
- package/lib/plugins/characters/utils.js.map +0 -1
- package/lib/plugins/html/icons/index.js.map +0 -1
- package/lib/plugins/html/index.js.map +0 -1
- package/lib/plugins/image/alt-dialog.js.map +0 -1
- package/lib/plugins/image/component.js.map +0 -1
- package/lib/plugins/image/image-toolbar.js.map +0 -1
- package/lib/plugins/image/index.js.map +0 -1
- package/lib/plugins/image/insert-image-handler.js.map +0 -1
- package/lib/plugins/index.js.map +0 -1
- package/lib/plugins/list/index.js.map +0 -1
- package/lib/plugins/math/index.js.map +0 -1
- package/lib/plugins/media/index.js.map +0 -1
- package/lib/plugins/media/media-dialog.js.map +0 -1
- package/lib/plugins/media/media-toolbar.js.map +0 -1
- package/lib/plugins/media/media-wrapper.js.map +0 -1
- package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +0 -1
- package/lib/plugins/respArea/drag-in-the-blank/index.js.map +0 -1
- package/lib/plugins/respArea/explicit-constructed-response/index.js.map +0 -1
- package/lib/plugins/respArea/icons/index.js.map +0 -1
- package/lib/plugins/respArea/index.js.map +0 -1
- package/lib/plugins/respArea/inline-dropdown/index.js.map +0 -1
- package/lib/plugins/respArea/utils.js.map +0 -1
- package/lib/plugins/table/icons/index.js.map +0 -1
- package/lib/plugins/table/index.js.map +0 -1
- package/lib/plugins/table/table-toolbar.js.map +0 -1
- package/lib/plugins/toolbar/default-toolbar.js.map +0 -1
- package/lib/plugins/toolbar/done-button.js.map +0 -1
- package/lib/plugins/toolbar/editor-and-toolbar.js.map +0 -1
- package/lib/plugins/toolbar/index.js.map +0 -1
- package/lib/plugins/toolbar/toolbar-buttons.js.map +0 -1
- package/lib/plugins/toolbar/toolbar.js.map +0 -1
- package/lib/plugins/utils.js.map +0 -1
- package/lib/serialization.js.map +0 -1
- package/lib/theme.js.map +0 -1
- package/playground/image/data.js +0 -59
- package/playground/image/index.html +0 -22
- package/playground/image/index.jsx +0 -81
- package/playground/index.html +0 -25
- package/playground/mathquill/index.html +0 -22
- package/playground/mathquill/index.jsx +0 -155
- package/playground/package.json +0 -15
- package/playground/prod-test/index.html +0 -22
- package/playground/prod-test/index.jsx +0 -28
- package/playground/schema-override/data.js +0 -29
- package/playground/schema-override/image-plugin.jsx +0 -41
- package/playground/schema-override/index.html +0 -21
- package/playground/schema-override/index.jsx +0 -97
- package/playground/serialization/data.js +0 -29
- package/playground/serialization/image-plugin.jsx +0 -41
- package/playground/serialization/index.html +0 -22
- package/playground/serialization/index.jsx +0 -12
- package/playground/static.json +0 -3
- package/playground/table-examples.html +0 -70
- package/playground/webpack.config.js +0 -42
- package/static.json +0 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = TextAlign;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
13
|
+
|
|
14
|
+
var _icons = _interopRequireDefault(require("./icons"));
|
|
15
|
+
|
|
16
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:characters');
|
|
17
|
+
/**
|
|
18
|
+
* Plugin in order to be able to change alignment for the selected text(s) element(s).
|
|
19
|
+
* @param opts
|
|
20
|
+
* @constructor
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
function TextAlign(opts) {
|
|
24
|
+
var plugin = {
|
|
25
|
+
name: 'textAlign',
|
|
26
|
+
toolbar: {
|
|
27
|
+
icon: /*#__PURE__*/_react["default"].createElement(_icons["default"], opts),
|
|
28
|
+
ariaLabel: 'Text Align',
|
|
29
|
+
onClick: function onClick() {}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
return plugin;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3RleHRBbGlnbi9pbmRleC5qc3giXSwibmFtZXMiOlsibG9nIiwiVGV4dEFsaWduIiwib3B0cyIsInBsdWdpbiIsIm5hbWUiLCJ0b29sYmFyIiwiaWNvbiIsImFyaWFMYWJlbCIsIm9uQ2xpY2siXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSwyQ0FBTixDQUFaO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDZSxTQUFTQyxTQUFULENBQW1CQyxJQUFuQixFQUF5QjtBQUN0QyxNQUFNQyxNQUFNLEdBQUc7QUFDYkMsSUFBQUEsSUFBSSxFQUFFLFdBRE87QUFFYkMsSUFBQUEsT0FBTyxFQUFFO0FBQ1BDLE1BQUFBLElBQUksZUFBRSxnQ0FBQyxpQkFBRCxFQUFtQkosSUFBbkIsQ0FEQztBQUVQSyxNQUFBQSxTQUFTLEVBQUUsWUFGSjtBQUdQQyxNQUFBQSxPQUFPLEVBQUUsbUJBQU0sQ0FBRTtBQUhWO0FBRkksR0FBZjtBQVNBLFNBQU9MLE1BQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IFRleHRBbGlnbkljb24gZnJvbSAnLi9pY29ucyc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnBsdWdpbnM6Y2hhcmFjdGVycycpO1xuXG4vKipcbiAqIFBsdWdpbiBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGNoYW5nZSBhbGlnbm1lbnQgZm9yIHRoZSBzZWxlY3RlZCB0ZXh0KHMpIGVsZW1lbnQocykuXG4gKiBAcGFyYW0gb3B0c1xuICogQGNvbnN0cnVjdG9yXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFRleHRBbGlnbihvcHRzKSB7XG4gIGNvbnN0IHBsdWdpbiA9IHtcbiAgICBuYW1lOiAndGV4dEFsaWduJyxcbiAgICB0b29sYmFyOiB7XG4gICAgICBpY29uOiA8VGV4dEFsaWduSWNvbiB7Li4ub3B0c30gLz4sXG4gICAgICBhcmlhTGFiZWw6ICdUZXh0IEFsaWduJyxcbiAgICAgIG9uQ2xpY2s6ICgpID0+IHt9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIHBsdWdpbjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
+
|
|
7
|
+
var _utils = require("../../../__tests__/utils");
|
|
8
|
+
|
|
9
|
+
var _enzyme = require("enzyme");
|
|
10
|
+
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
|
|
13
|
+
var _slate = require("slate");
|
|
14
|
+
|
|
15
|
+
var _defaultToolbar = require("../default-toolbar");
|
|
16
|
+
|
|
17
|
+
var _doneButton = require("../done-button");
|
|
18
|
+
|
|
19
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
20
|
+
|
|
21
|
+
var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer"));
|
|
22
|
+
|
|
23
|
+
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; }
|
|
24
|
+
|
|
25
|
+
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; }
|
|
26
|
+
|
|
27
|
+
(0, _utils.mockMathInput)();
|
|
28
|
+
jest.mock('@material-ui/core/IconButton', function () {
|
|
29
|
+
return function (props) {
|
|
30
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
31
|
+
className: props.className,
|
|
32
|
+
style: props.style,
|
|
33
|
+
ariaLabel: props['aria-label']
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
var node = _slate.Inline.fromJSON({
|
|
39
|
+
type: 'i'
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
var value;
|
|
43
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:test:toolbar');
|
|
44
|
+
describe('default-toolbar', function () {
|
|
45
|
+
var w;
|
|
46
|
+
var onDone = jest.fn();
|
|
47
|
+
var onChange = jest.fn();
|
|
48
|
+
|
|
49
|
+
var wrapper = function wrapper(extras) {
|
|
50
|
+
var defaults = {
|
|
51
|
+
classes: {},
|
|
52
|
+
value: _slate.Value.fromJSON({}),
|
|
53
|
+
plugins: [],
|
|
54
|
+
className: 'className',
|
|
55
|
+
onDone: onDone,
|
|
56
|
+
onChange: onChange,
|
|
57
|
+
deletable: false,
|
|
58
|
+
showDone: true
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
62
|
+
|
|
63
|
+
return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, props));
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
describe('snapshot', function () {
|
|
67
|
+
it('renders', function () {
|
|
68
|
+
expect(w).toMatchSnapshot();
|
|
69
|
+
});
|
|
70
|
+
it('renders 1 plugins', function () {
|
|
71
|
+
w = wrapper({
|
|
72
|
+
plugins: [{
|
|
73
|
+
toolbar: {},
|
|
74
|
+
name: 'plugin-one'
|
|
75
|
+
}]
|
|
76
|
+
});
|
|
77
|
+
expect(w).toMatchSnapshot();
|
|
78
|
+
expect(w.find(_defaultToolbar.ToolbarButton)).toHaveLength(1);
|
|
79
|
+
});
|
|
80
|
+
it('renders 2 plugins', function () {
|
|
81
|
+
w = wrapper({
|
|
82
|
+
plugins: [{
|
|
83
|
+
toolbar: {},
|
|
84
|
+
name: 'plugin-one'
|
|
85
|
+
}, {
|
|
86
|
+
toolbar: {},
|
|
87
|
+
name: 'plugin-two'
|
|
88
|
+
}]
|
|
89
|
+
});
|
|
90
|
+
expect(w).toMatchSnapshot();
|
|
91
|
+
expect(w.find(_defaultToolbar.ToolbarButton)).toHaveLength(2);
|
|
92
|
+
});
|
|
93
|
+
it('renders 1 plugins, 1 is disabled', function () {
|
|
94
|
+
w = wrapper({
|
|
95
|
+
pluginProps: {
|
|
96
|
+
'plugin-one': {
|
|
97
|
+
disabled: true
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
plugins: [{
|
|
101
|
+
toolbar: {},
|
|
102
|
+
name: 'plugin-one'
|
|
103
|
+
}, {
|
|
104
|
+
toolbar: {},
|
|
105
|
+
name: 'plugin-two'
|
|
106
|
+
}]
|
|
107
|
+
});
|
|
108
|
+
expect(w).toMatchSnapshot();
|
|
109
|
+
expect(w.find(_defaultToolbar.ToolbarButton)).toHaveLength(1);
|
|
110
|
+
});
|
|
111
|
+
it('renders without done button', function () {
|
|
112
|
+
w = wrapper({
|
|
113
|
+
deletable: false
|
|
114
|
+
});
|
|
115
|
+
expect(w).toMatchSnapshot();
|
|
116
|
+
expect(w.find(_doneButton.DoneButton)).toHaveLength(1);
|
|
117
|
+
});
|
|
118
|
+
it('renders with done button', function () {
|
|
119
|
+
w = wrapper({
|
|
120
|
+
deletable: true
|
|
121
|
+
});
|
|
122
|
+
expect(w).toMatchSnapshot();
|
|
123
|
+
expect(w.find(_doneButton.DoneButton)).toHaveLength(0);
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
describe('logic', function () {});
|
|
127
|
+
});
|
|
128
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvX190ZXN0c19fL2RlZmF1bHQtdG9vbGJhci50ZXN0LmpzeCJdLCJuYW1lcyI6WyJqZXN0IiwibW9jayIsInByb3BzIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJub2RlIiwiSW5saW5lIiwiZnJvbUpTT04iLCJ0eXBlIiwidmFsdWUiLCJsb2ciLCJkZXNjcmliZSIsInciLCJvbkRvbmUiLCJmbiIsIm9uQ2hhbmdlIiwid3JhcHBlciIsImV4dHJhcyIsImRlZmF1bHRzIiwiY2xhc3NlcyIsIlZhbHVlIiwicGx1Z2lucyIsImRlbGV0YWJsZSIsInNob3dEb25lIiwiaXQiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiLCJ0b29sYmFyIiwibmFtZSIsImZpbmQiLCJUb29sYmFyQnV0dG9uIiwidG9IYXZlTGVuZ3RoIiwicGx1Z2luUHJvcHMiLCJkaXNhYmxlZCIsIkRvbmVCdXR0b24iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQTtBQUVBQSxJQUFJLENBQUNDLElBQUwsQ0FBVSw4QkFBVixFQUEwQyxZQUFNO0FBQzlDLFNBQU8sVUFBQ0MsS0FBRDtBQUFBLHdCQUFXO0FBQUssTUFBQSxTQUFTLEVBQUVBLEtBQUssQ0FBQ0MsU0FBdEI7QUFBaUMsTUFBQSxLQUFLLEVBQUVELEtBQUssQ0FBQ0UsS0FBOUM7QUFBcUQsTUFBQSxTQUFTLEVBQUVGLEtBQUssQ0FBQyxZQUFEO0FBQXJFLE1BQVg7QUFBQSxHQUFQO0FBQ0QsQ0FGRDs7QUFJQSxJQUFJRyxJQUFJLEdBQUdDLGNBQU9DLFFBQVAsQ0FBZ0I7QUFBRUMsRUFBQUEsSUFBSSxFQUFFO0FBQVIsQ0FBaEIsQ0FBWDs7QUFDQSxJQUFJQyxLQUFKO0FBQ0EsSUFBTUMsR0FBRyxHQUFHLHVCQUFNLHFDQUFOLENBQVo7QUFFQUMsUUFBUSxDQUFDLGlCQUFELEVBQW9CLFlB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QyxZQUE5QixDQUEyQyxDQUEzQztBQUNELEtBZEMsQ0FBRjtBQWVBUCxJQUFBQSxFQUFFLENBQUMsNkJBQUQsRUFBZ0MsWUFBTTtBQUN0Q1osTUFBQUEsQ0FBQyxHQUFHSSxPQUFPLENBQUM7QUFDVk0sUUFBQUEsU0FBUyxFQUFFO0FBREQsT0FBRCxDQUFYO0FBSUFHLE1BQUFBLE1BQU0sQ0FBQ2IsQ0FBRCxDQUFOLENBQVVjLGVBQVY7QUFDQUQsTUFBQUEsTUFBTSxDQUFDYixDQUFDLENBQUNpQixJQUFGLENBQU9LLHNCQUFQLENBQUQsQ0FBTixDQUEyQkgsWUFBM0IsQ0FBd0MsQ0FBeEM7QUFDRCxLQVBDLENBQUY7QUFRQVAsSUFBQUEsRUFBRSxDQUFDLDBCQUFELEVBQTZCLFlBQU07QUFDbkNaLE1BQUFBLENBQUMsR0FBR0ksT0FBTyxDQUFDO0FBQ1ZNLFFBQUFBLFNBQVMsRUFBRTtBQURELE9BQUQsQ0FBWDtBQUlBRyxNQUFBQSxNQUFNLENBQUNiLENBQUQsQ0FBTixDQUFVYyxlQUFWO0FBQ0FELE1BQUFBLE1BQU0sQ0FBQ2IsQ0FBQyxDQUFDaUIsSUFBRixDQUFPSyxzQkFBUCxDQUFELENBQU4sQ0FBMkJILFlBQTNCLENBQXdDLENBQXhDO0FBQ0QsS0FQQyxDQUFGO0FBUUQsR0FwRE8sQ0FBUjtBQXFEQXBCLEVBQUFBLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBTSxDQUFFLENBQWxCLENBQVI7QUFDRCxDQXpFTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xhc3NPYmplY3QsIG1vY2tJY29uQnV0dG9uLCBtb2NrTWF0aElucHV0IH0gZnJvbSAnLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcbmltcG9ydCB7IHNoYWxsb3cgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgRGF0YSwgVmFsdWUsIElubGluZSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IERlZmF1bHRUb29sYmFyLCBUb29sYmFyQnV0dG9uIH0gZnJvbSAnLi4vZGVmYXVsdC10b29sYmFyJztcbmltcG9ydCB7IERvbmVCdXR0b24gfSBmcm9tICcuLi9kb25lLWJ1dHRvbic7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IHJlbmRlcmVyIGZyb20gJ3JlYWN0LXRlc3QtcmVuZGVyZXInO1xuXG5tb2NrTWF0aElucHV0KCk7XG5cbmplc3QubW9jaygnQG1hdGVyaWFsLXVpL2NvcmUvSWNvbkJ1dHRvbicsICgpID0+IHtcbiAgcmV0dXJuIChwcm9wcykgPT4gPGRpdiBjbGFzc05hbWU9e3Byb3BzLmNsYXNzTmFtZX0gc3R5bGU9e3Byb3BzLnN0eWxlfSBhcmlhTGFiZWw9e3Byb3BzWydhcmlhLWxhYmVsJ119IC8+O1xufSk7XG5cbmxldCBub2RlID0gSW5saW5lLmZyb21KU09OKHsgdHlwZTogJ2knIH0pO1xubGV0IHZhbHVlO1xuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6dGVzdDp0b29sYmFyJyk7XG5cbmRlc2NyaWJlKCdkZWZhdWx0LXRvb2xiYXInLCAoKSA9PiB7XG4gIGxldCB3O1xuICBsZXQgb25Eb25lID0gamVzdC5mbigpO1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGNvbnN0IHdyYXBwZXIgPSAoZXh0cmFzKSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBjbGFzc2VzOiB7fSxcbiAgICAgIHZhbHVlOiBWYWx1ZS5mcm9tSlNPTih7fSksXG4gICAgICBwbHVnaW5zOiBbXSxcbiAgICAgIGNsYXNzTmFtZTogJ2NsYXNzTmFtZScsXG4gICAgICBvbkRvbmUsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIGRlbGV0YWJsZTogZmFsc2UsXG4gICAgICBzaG93RG9uZTogdHJ1ZSxcbiAgICB9O1xuICAgIGNvbnN0IHByb3BzID0geyAuLi5kZWZhdWx0cywgLi4uZXh0cmFzIH07XG4gICAgcmV0dXJuIHNoYWxsb3coPERlZmF1bHRUb29sYmFyIHsuLi5wcm9wc30gLz4pO1xuICB9O1xuXG4gIGRlc2NyaWJlKCdzbmFwc2hvdCcsICgpID0+IHtcbiAgICBpdCgncmVuZGVycycsICgpID0+IHtcbiAgICAgIGV4cGVjdCh3KS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgICBpdCgncmVuZGVycyAxIHBsdWdpbnMnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7XG4gICAgICAgIHBsdWdpbnM6IFt7IHRvb2xiYXI6IHt9LCBuYW1lOiAncGx1Z2luLW9uZScgfV0sXG4gICAgICB9KTtcbiAgICAgIGV4cGVjdCh3KS50b01hdGNoU25hcHNob3QoKTtcbiAgICAgIGV4cGVjdCh3LmZpbmQoVG9vbGJhckJ1dHRvbikpLnRvSGF2ZUxlbmd0aCgxKTtcbiAgICB9KTtcbiAgICBpdCgncmVuZGVycyAyIHBsdWdpbnMnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7XG4gICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICB7IHRvb2xiYXI6IHt9LCBuYW1lOiAncGx1Z2luLW9uZScgfSxcbiAgICAgICAgICB7IHRvb2xiYXI6IHt9LCBuYW1lOiAncGx1Z2luLXR3bycgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgICAgZXhwZWN0KHcuZmluZChUb29sYmFyQnV0dG9uKSkudG9IYXZlTGVuZ3RoKDIpO1xuICAgIH0pO1xuICAgIGl0KCdyZW5kZXJzIDEgcGx1Z2lucywgMSBpcyBkaXNhYmxlZCcsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKHtcbiAgICAgICAgcGx1Z2luUHJvcHM6IHtcbiAgICAgICAgICAncGx1Z2luLW9uZSc6IHtcbiAgICAgICAgICAgIGRpc2FibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICB7IHRvb2xiYXI6IHt9LCBuYW1lOiAncGx1Z2luLW9uZScgfSxcbiAgICAgICAgICB7IHRvb2xiYXI6IHt9LCBuYW1lOiAncGx1Z2luLXR3bycgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgICAgZXhwZWN0KHcuZmluZChUb29sYmFyQnV0dG9uKSkudG9IYXZlTGVuZ3RoKDEpO1xuICAgIH0pO1xuICAgIGl0KCdyZW5kZXJzIHdpdGhvdXQgZG9uZSBidXR0b24nLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7XG4gICAgICAgIGRlbGV0YWJsZTogZmFsc2UsXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgICAgZXhwZWN0KHcuZmluZChEb25lQnV0dG9uKSkudG9IYXZlTGVuZ3RoKDEpO1xuICAgIH0pO1xuICAgIGl0KCdyZW5kZXJzIHdpdGggZG9uZSBidXR0b24nLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7XG4gICAgICAgIGRlbGV0YWJsZTogdHJ1ZSxcbiAgICAgIH0pO1xuXG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgICBleHBlY3Qody5maW5kKERvbmVCdXR0b24pKS50b0hhdmVMZW5ndGgoMCk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnbG9naWMnLCAoKSA9PiB7fSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _utils = require("../../../__tests__/utils");
|
|
6
|
+
|
|
7
|
+
var _slate = require("slate");
|
|
8
|
+
|
|
9
|
+
var _editorAndToolbar = require("../editor-and-toolbar");
|
|
10
|
+
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
|
|
13
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
14
|
+
|
|
15
|
+
var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer"));
|
|
16
|
+
|
|
17
|
+
jest.mock('../toolbar', function () {
|
|
18
|
+
return function () {
|
|
19
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, "---- toolbar ------ ");
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
(0, _utils.mockIconButton)();
|
|
23
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:test:editor-and-toolbar');
|
|
24
|
+
describe('toolbar', function () {
|
|
25
|
+
var onDelete, classes;
|
|
26
|
+
beforeEach(function () {
|
|
27
|
+
onDelete = jest.fn();
|
|
28
|
+
classes = (0, _utils.classObject)('root', 'editorHolder', 'editorInFocus');
|
|
29
|
+
});
|
|
30
|
+
it('renders', function () {
|
|
31
|
+
var value = _slate.Value.fromJSON({});
|
|
32
|
+
|
|
33
|
+
Object.defineProperty(value, 'isFocused', {
|
|
34
|
+
get: jest.fn(function () {
|
|
35
|
+
return true;
|
|
36
|
+
})
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_editorAndToolbar.EditorAndToolbar, {
|
|
40
|
+
classes: classes,
|
|
41
|
+
value: value,
|
|
42
|
+
plugins: [],
|
|
43
|
+
onDone: jest.fn(),
|
|
44
|
+
onChange: jest.fn()
|
|
45
|
+
}, "children")).toJSON();
|
|
46
|
+
|
|
47
|
+
log('tree: ', JSON.stringify(tree, null, ' '));
|
|
48
|
+
expect(tree).toMatchSnapshot();
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvX190ZXN0c19fL2VkaXRvci1hbmQtdG9vbGJhci50ZXN0LmpzeCJdLCJuYW1lcyI6WyJqZXN0IiwibW9jayIsImxvZyIsImRlc2NyaWJlIiwib25EZWxldGUiLCJjbGFzc2VzIiwiYmVmb3JlRWFjaCIsImZuIiwiaXQiLCJ2YWx1ZSIsIlZhbHVlIiwiZnJvbUpTT04iLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldCIsInRyZWUiLCJyZW5kZXJlciIsImNyZWF0ZSIsInRvSlNPTiIsIkpTT04iLCJzdHJpbmdpZnkiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQUEsSUFBSSxDQUFDQyxJQUFMLENBQVUsWUFBVixFQUF3QjtBQUFBLFNBQU07QUFBQSx3QkFBTSxvRUFBTjtBQUFBLEdBQU47QUFBQSxDQUF4QjtBQUVBO0FBRUEsSUFBTUMsR0FBRyxHQUFHLHVCQUFNLGdEQUFOLENBQVo7QUFFQUMsUUFBUSxDQUFDLFNBQUQsRUFBWSxZQUFNO0FBQ3hCLE1BQUlDLFFBQUosRUFBY0MsT0FBZDtBQUVBQyxFQUFBQSxVQUFVLENBQUMsWUFBTTtBQUNmRixJQUFBQSxRQUFRLEdBQUdKLElBQUksQ0FBQ08sRUFBTCxFQUFYO0FBQ0FGLElBQUFBLE9BQU8sR0FBRyx3QkFBWSxNQUFaLEVBQW9CLGNBQXBCLEVBQW9DLGVBQXBDLENBQVY7QUFDRCxHQUhTLENBQVY7QUFLQUcsRUFBQUEsRUFBRSxDQUFDLFNBQUQsRUFBWSxZQUFNO0FBQ2xCLFFBQU1DLEtBQUssR0FBR0MsYUFBTUMsUUFBTixDQUFlLEVBQWYsQ0FBZDs7QUFDQUMsSUFBQUEsTUFBTSxDQUFDQyxjQUFQLENBQXNCSixLQUF0QixFQUE2QixXQUE3QixFQUEwQztBQUFFSyxNQUFBQSxHQUFHLEVBQUVkLElBQUksQ0FBQ08sRUFBTCxDQUFRO0FBQUEsZUFBTSxJQUFOO0FBQUEsT0FBUjtBQUFQLEtBQTFDOztBQUVBLFFBQU1RLElBQUksR0FBR0MsOEJBQ1ZDLE1BRFUsZUFFVCxnQ0FBQyxrQ0FBRDtBQUFrQixNQUFBLE9BQU8sRUFBRVosT0FBM0I7QUFBb0MsTUFBQSxLQUFLLEVBQUVJLEtBQTNDO0FBQWtELE1BQUEsT0FBTyxFQUFFLEVBQTNEO0FBQStELE1BQUEsTUFBTSxFQUFFVCxJQUFJLENBQUNPLEVBQUwsRUFBdkU7QUFBa0YsTUFBQSxRQUFRLEVBQUVQLElBQUksQ0FBQ08sRUFBTDtBQUE1RixrQkFGUyxFQU1WVyxNQU5VLEVBQWI7O0FBT0FoQixJQUFBQSxHQUFHLENBQUMsUUFBRCxFQUFXaUIsSUFBSSxDQUFDQyxTQUFMLENBQWVMLElBQWYsRUFBcUIsSUFBckIsRUFBMkIsSUFBM0IsQ0FBWCxDQUFIO0FBQ0FNLElBQUFBLE1BQU0sQ0FBQ04sSUFBRCxDQUFOLENBQWFPLGVBQWI7QUFDRCxHQWJDLENBQUY7QUFjRCxDQXRCTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xhc3NPYmplY3QsIG1vY2tJY29uQnV0dG9uIH0gZnJvbSAnLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcblxuaW1wb3J0IHsgRGF0YSwgVmFsdWUgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBFZGl0b3JBbmRUb29sYmFyLCBnZXRDbG9uZWRDaGlsZHJlbiB9IGZyb20gJy4uL2VkaXRvci1hbmQtdG9vbGJhcic7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCByZW5kZXJlciBmcm9tICdyZWFjdC10ZXN0LXJlbmRlcmVyJztcblxuamVzdC5tb2NrKCcuLi90b29sYmFyJywgKCkgPT4gKCkgPT4gPGRpdj4tLS0tIHRvb2xiYXIgLS0tLS0tIDwvZGl2Pik7XG5cbm1vY2tJY29uQnV0dG9uKCk7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnRlc3Q6ZWRpdG9yLWFuZC10b29sYmFyJyk7XG5cbmRlc2NyaWJlKCd0b29sYmFyJywgKCkgPT4ge1xuICBsZXQgb25EZWxldGUsIGNsYXNzZXM7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25EZWxldGUgPSBqZXN0LmZuKCk7XG4gICAgY2xhc3NlcyA9IGNsYXNzT2JqZWN0KCdyb290JywgJ2VkaXRvckhvbGRlcicsICdlZGl0b3JJbkZvY3VzJyk7XG4gIH0pO1xuXG4gIGl0KCdyZW5kZXJzJywgKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gVmFsdWUuZnJvbUpTT04oe30pO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh2YWx1ZSwgJ2lzRm9jdXNlZCcsIHsgZ2V0OiBqZXN0LmZuKCgpID0+IHRydWUpIH0pO1xuXG4gICAgY29uc3QgdHJlZSA9IHJlbmRlcmVyXG4gICAgICAuY3JlYXRlKFxuICAgICAgICA8RWRpdG9yQW5kVG9vbGJhciBjbGFzc2VzPXtjbGFzc2VzfSB2YWx1ZT17dmFsdWV9IHBsdWdpbnM9e1tdfSBvbkRvbmU9e2plc3QuZm4oKX0gb25DaGFuZ2U9e2plc3QuZm4oKX0+XG4gICAgICAgICAgY2hpbGRyZW5cbiAgICAgICAgPC9FZGl0b3JBbmRUb29sYmFyPixcbiAgICAgIClcbiAgICAgIC50b0pTT04oKTtcbiAgICBsb2coJ3RyZWU6ICcsIEpTT04uc3RyaW5naWZ5KHRyZWUsIG51bGwsICcgICcpKTtcbiAgICBleHBlY3QodHJlZSkudG9NYXRjaFNuYXBzaG90KCk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _utils = require("../../../__tests__/utils");
|
|
6
|
+
|
|
7
|
+
var _slate = require("slate");
|
|
8
|
+
|
|
9
|
+
var _toolbarButtons = require("../toolbar-buttons");
|
|
10
|
+
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
|
|
13
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
14
|
+
|
|
15
|
+
var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer"));
|
|
16
|
+
|
|
17
|
+
(0, _utils.mockIconButton)();
|
|
18
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:test:editor-and-toolbar');
|
|
19
|
+
describe('Button', function () {
|
|
20
|
+
it('renders', function () {
|
|
21
|
+
var classes = (0, _utils.classObject)('root');
|
|
22
|
+
|
|
23
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawButton, {
|
|
24
|
+
onClick: jest.fn(),
|
|
25
|
+
classes: classes
|
|
26
|
+
}, "children")).toJSON();
|
|
27
|
+
|
|
28
|
+
expect(tree).toMatchSnapshot();
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
describe('MarkButton', function () {
|
|
32
|
+
var classes = (0, _utils.classObject)('button', 'root', 'active');
|
|
33
|
+
it('renders not active', function () {
|
|
34
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawMarkButton, {
|
|
35
|
+
mark: 'i',
|
|
36
|
+
onToggle: jest.fn(),
|
|
37
|
+
active: false,
|
|
38
|
+
classes: classes
|
|
39
|
+
}, "children")).toJSON();
|
|
40
|
+
|
|
41
|
+
expect(tree).toMatchSnapshot();
|
|
42
|
+
});
|
|
43
|
+
it('renders active', function () {
|
|
44
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawMarkButton, {
|
|
45
|
+
mark: 'i',
|
|
46
|
+
onToggle: jest.fn(),
|
|
47
|
+
active: true,
|
|
48
|
+
classes: classes
|
|
49
|
+
}, "children")).toJSON();
|
|
50
|
+
|
|
51
|
+
expect(tree).toMatchSnapshot();
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvX190ZXN0c19fL3Rvb2xiYXItYnV0dG9ucy50ZXN0LmpzeCJdLCJuYW1lcyI6WyJsb2ciLCJkZXNjcmliZSIsIml0IiwiY2xhc3NlcyIsInRyZWUiLCJyZW5kZXJlciIsImNyZWF0ZSIsImplc3QiLCJmbiIsInRvSlNPTiIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBO0FBRUEsSUFBTUEsR0FBRyxHQUFHLHVCQUFNLGdEQUFOLENBQVo7QUFFQUMsUUFBUSxDQUFDLFFBQUQsRUFBVyxZQUFNO0FBQ3ZCQyxFQUFBQSxFQUFFLENBQUMsU0FBRCxFQUFZLFlBQU07QUFDbEIsUUFBTUMsT0FBTyxHQUFHLHdCQUFZLE1BQVosQ0FBaEI7O0FBQ0EsUUFBTUMsSUFBSSxHQUFHQyw4QkFDVkMsTUFEVSxlQUVULGdDQUFDLHlCQUFEO0FBQVcsTUFBQSxPQUFPLEVBQUVDLElBQUksQ0FBQ0MsRUFBTCxFQUFwQjtBQUErQixNQUFBLE9BQU8sRUFBRUw7QUFBeEMsa0JBRlMsRUFNVk0sTUFOVSxFQUFiOztBQU9BQyxJQUFBQSxNQUFNLENBQUNOLElBQUQsQ0FBTixDQUFhTyxlQUFiO0FBQ0QsR0FWQyxDQUFGO0FBV0QsQ0FaTyxDQUFSO0FBY0FWLFFBQVEsQ0FBQyxZQUFELEVBQWUsWUFBTTtBQUMzQixNQUFNRSxPQUFPLEdBQUcsd0JBQVksUUFBWixFQUFzQixNQUF0QixFQUE4QixRQUE5QixDQUFoQjtBQUVBRCxFQUFBQSxFQUFFLENBQUMsb0JBQUQsRUFBdUIsWUFBTTtBQUM3QixRQUFNRSxJQUFJLEdBQUdDLDhCQUNWQyxNQURVLGVBRVQsZ0NBQUMsNkJBQUQ7QUFBZSxNQUFBLElBQUksRUFBRSxHQUFyQjtBQUEwQixNQUFBLFFBQVEsRUFBRUMsSUFBSSxDQUFDQyxFQUFMLEVBQXBDO0FBQStDLE1BQUEsTUFBTSxFQUFFLEtBQXZEO0FBQThELE1BQUEsT0FBTyxFQUFFTDtBQUF2RSxrQkFGUyxFQU1WTSxNQU5VLEVBQWI7O0FBT0FDLElBQUFBLE1BQU0sQ0FBQ04sSUFBRCxDQUFOLENBQWFPLGVBQWI7QUFDRCxHQVRDLENBQUY7QUFXQVQsRUFBQUEsRUFBRSxDQUFDLGdCQUFELEVBQW1CLFlBQU07QUFDekIsUUFBTUUsSUFBSSxHQUFHQyw4QkFDVkMsTUFEVSxlQUVULGdDQUFDLDZCQUFEO0FBQWUsTUFBQSxJQUFJLEVBQUUsR0FBckI7QUFBMEIsTUFBQSxRQUFRLEVBQUVDLElBQUksQ0FBQ0MsRUFBTCxFQUFwQztBQUErQyxNQUFBLE1BQU0sRUFBRSxJQUF2RDtBQUE2RCxNQUFBLE9BQU8sRUFBRUw7QUFBdEUsa0JBRlMsRUFNVk0sTUFOVSxFQUFiOztBQU9BQyxJQUFBQSxNQUFNLENBQUNOLElBQUQsQ0FBTixDQUFhTyxlQUFiO0FBQ0QsR0FUQyxDQUFGO0FBVUQsQ0F4Qk8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsYXNzT2JqZWN0LCBtb2NrSWNvbkJ1dHRvbiB9IGZyb20gJy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5cbmltcG9ydCB7IERhdGEgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBSYXdNYXJrQnV0dG9uLCBSYXdCdXR0b24gfSBmcm9tICcuLi90b29sYmFyLWJ1dHRvbnMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5pbXBvcnQgcmVuZGVyZXIgZnJvbSAncmVhY3QtdGVzdC1yZW5kZXJlcic7XG5cbm1vY2tJY29uQnV0dG9uKCk7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnRlc3Q6ZWRpdG9yLWFuZC10b29sYmFyJyk7XG5cbmRlc2NyaWJlKCdCdXR0b24nLCAoKSA9PiB7XG4gIGl0KCdyZW5kZXJzJywgKCkgPT4ge1xuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc09iamVjdCgncm9vdCcpO1xuICAgIGNvbnN0IHRyZWUgPSByZW5kZXJlclxuICAgICAgLmNyZWF0ZShcbiAgICAgICAgPFJhd0J1dHRvbiBvbkNsaWNrPXtqZXN0LmZuKCl9IGNsYXNzZXM9e2NsYXNzZXN9PlxuICAgICAgICAgIGNoaWxkcmVuXG4gICAgICAgIDwvUmF3QnV0dG9uPixcbiAgICAgIClcbiAgICAgIC50b0pTT04oKTtcbiAgICBleHBlY3QodHJlZSkudG9NYXRjaFNuYXBzaG90KCk7XG4gIH0pO1xufSk7XG5cbmRlc2NyaWJlKCdNYXJrQnV0dG9uJywgKCkgPT4ge1xuICBjb25zdCBjbGFzc2VzID0gY2xhc3NPYmplY3QoJ2J1dHRvbicsICdyb290JywgJ2FjdGl2ZScpO1xuXG4gIGl0KCdyZW5kZXJzIG5vdCBhY3RpdmUnLCAoKSA9PiB7XG4gICAgY29uc3QgdHJlZSA9IHJlbmRlcmVyXG4gICAgICAuY3JlYXRlKFxuICAgICAgICA8UmF3TWFya0J1dHRvbiBtYXJrPXsnaSd9IG9uVG9nZ2xlPXtqZXN0LmZuKCl9IGFjdGl2ZT17ZmFsc2V9IGNsYXNzZXM9e2NsYXNzZXN9PlxuICAgICAgICAgIGNoaWxkcmVuXG4gICAgICAgIDwvUmF3TWFya0J1dHRvbj4sXG4gICAgICApXG4gICAgICAudG9KU09OKCk7XG4gICAgZXhwZWN0KHRyZWUpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICB9KTtcblxuICBpdCgncmVuZGVycyBhY3RpdmUnLCAoKSA9PiB7XG4gICAgY29uc3QgdHJlZSA9IHJlbmRlcmVyXG4gICAgICAuY3JlYXRlKFxuICAgICAgICA8UmF3TWFya0J1dHRvbiBtYXJrPXsnaSd9IG9uVG9nZ2xlPXtqZXN0LmZuKCl9IGFjdGl2ZT17dHJ1ZX0gY2xhc3Nlcz17Y2xhc3Nlc30+XG4gICAgICAgICAgY2hpbGRyZW5cbiAgICAgICAgPC9SYXdNYXJrQnV0dG9uPixcbiAgICAgIClcbiAgICAgIC50b0pTT04oKTtcbiAgICBleHBlY3QodHJlZSkudG9NYXRjaFNuYXBzaG90KCk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _utils = require("../../../__tests__/utils");
|
|
6
|
+
|
|
7
|
+
var _enzyme = require("enzyme");
|
|
8
|
+
|
|
9
|
+
var _slate = require("slate");
|
|
10
|
+
|
|
11
|
+
var _toolbar = require("../toolbar");
|
|
12
|
+
|
|
13
|
+
var _react = _interopRequireDefault(require("react"));
|
|
14
|
+
|
|
15
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
16
|
+
|
|
17
|
+
var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer"));
|
|
18
|
+
|
|
19
|
+
(0, _utils.mockMathInput)();
|
|
20
|
+
jest.mock('@material-ui/core/IconButton', function () {
|
|
21
|
+
return function (props) {
|
|
22
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
23
|
+
className: props.className,
|
|
24
|
+
style: props.style,
|
|
25
|
+
ariaLabel: props['aria-label']
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
var node = _slate.Inline.fromJSON({
|
|
31
|
+
type: 'i'
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
var parentNode = _slate.Inline.fromJSON({
|
|
35
|
+
type: 'i'
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
var value;
|
|
39
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:test:toolbar');
|
|
40
|
+
describe('toolbar', function () {
|
|
41
|
+
var onDelete, classes, document, toolbarOpts;
|
|
42
|
+
beforeEach(function () {
|
|
43
|
+
onDelete = jest.fn();
|
|
44
|
+
toolbarOpts = {
|
|
45
|
+
position: 'bottom',
|
|
46
|
+
alwaysVisible: false
|
|
47
|
+
};
|
|
48
|
+
value = _slate.Value.fromJSON({});
|
|
49
|
+
document = {
|
|
50
|
+
getClosestInline: jest.fn().mockReturnValue(node),
|
|
51
|
+
getParent: jest.fn().mockReturnValue()
|
|
52
|
+
};
|
|
53
|
+
Object.defineProperties(value, {
|
|
54
|
+
isCollapsed: {
|
|
55
|
+
get: jest.fn(function () {
|
|
56
|
+
return true;
|
|
57
|
+
})
|
|
58
|
+
},
|
|
59
|
+
startKey: {
|
|
60
|
+
get: jest.fn(function () {
|
|
61
|
+
return '1';
|
|
62
|
+
})
|
|
63
|
+
},
|
|
64
|
+
document: {
|
|
65
|
+
get: jest.fn(function () {
|
|
66
|
+
return document;
|
|
67
|
+
})
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
classes = (0, _utils.classObject)('iconRoot', 'inline', 'toolbar', 'focused', 'shared', 'inline', 'pie-toolbar');
|
|
71
|
+
});
|
|
72
|
+
test('renders custom toolbar', function () {
|
|
73
|
+
var plugins = [{
|
|
74
|
+
deleteNode: function deleteNode() {
|
|
75
|
+
return true;
|
|
76
|
+
},
|
|
77
|
+
toolbar: {
|
|
78
|
+
supports: function supports() {
|
|
79
|
+
return true;
|
|
80
|
+
},
|
|
81
|
+
customToolbar: function customToolbar() {
|
|
82
|
+
return function () {
|
|
83
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, " --------- custom toolbar ----------- ");
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}];
|
|
88
|
+
|
|
89
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_toolbar.Toolbar, {
|
|
90
|
+
toolbarOpts: toolbarOpts,
|
|
91
|
+
plugins: plugins,
|
|
92
|
+
classes: classes,
|
|
93
|
+
value: value,
|
|
94
|
+
onDone: jest.fn(),
|
|
95
|
+
onChange: jest.fn()
|
|
96
|
+
})).toJSON();
|
|
97
|
+
|
|
98
|
+
log('tree: ', JSON.stringify(tree, null, ' '));
|
|
99
|
+
expect(tree).toMatchSnapshot();
|
|
100
|
+
});
|
|
101
|
+
describe('default', function () {
|
|
102
|
+
var plugins;
|
|
103
|
+
beforeEach(function () {
|
|
104
|
+
plugins = [];
|
|
105
|
+
});
|
|
106
|
+
test('renders default toolbar', function () {
|
|
107
|
+
var tree = _reactTestRenderer["default"].create( /*#__PURE__*/_react["default"].createElement(_toolbar.Toolbar, {
|
|
108
|
+
toolbarOpts: toolbarOpts,
|
|
109
|
+
plugins: plugins,
|
|
110
|
+
classes: classes,
|
|
111
|
+
value: value,
|
|
112
|
+
onDone: jest.fn(),
|
|
113
|
+
onChange: jest.fn()
|
|
114
|
+
})).toJSON();
|
|
115
|
+
|
|
116
|
+
expect(tree).toMatchSnapshot();
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvX190ZXN0c19fL3Rvb2xiYXIudGVzdC5qc3giXSwibmFtZXMiOlsiamVzdCIsIm1vY2siLCJwcm9wcyIsImNsYXNzTmFtZSIsInN0eWxlIiwibm9kZSIsIklubGluZSIsImZyb21KU09OIiwidHlwZSIsInBhcmVudE5vZGUiLCJ2YWx1ZSIsImxvZyIsImRlc2NyaWJlIiwib25EZWxldGUiLCJjbGFzc2VzIiwiZG9jdW1lbnQiLCJ0b29sYmFyT3B0cyIsImJlZm9yZUVhY2giLCJmbiIsInBvc2l0aW9uIiwiYWx3YXlzVmlzaWJsZSIsIlZhbHVlIiwiZ2V0Q2xvc2VzdElubGluZSIsIm1vY2tSZXR1cm5WYWx1ZSIsImdldFBhcmVudCIsIk9iamVjdCIsImRlZmluZVByb3BlcnRpZXMiLCJpc0NvbGxhcHNlZCIsImdldCIsInN0YXJ0S2V5IiwidGVzdCIsInBsdWdpbnMiLCJkZWxldGVOb2RlIiwidG9vbGJhciIsInN1cHBvcnRzIiwiY3VzdG9tVG9vbGJhciIsInRyZWUiLCJyZW5kZXJlciIsImNyZWF0ZSIsInRvSlNPTiIsIkpTT04iLCJzdHJpbmdpZnkiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTtBQUVBQSxJQUFJLENBQUNDLElBQUwsQ0FBVSw4QkFBVixFQUEwQyxZQUFNO0FBQzlDLFNBQU8sVUFBQ0MsS0FBRDtBQUFBLHdCQUFXO0FBQUssTUFBQSxTQUFTLEVBQUVBLEtBQUssQ0FBQ0MsU0FBdEI7QUFBaUMsTUFBQSxLQUFLLEVBQUVELEtBQUssQ0FBQ0UsS0FBOUM7QUFBcUQsTUFBQSxTQUFTLEVBQUVGLEtBQUssQ0FBQyxZQUFEO0FBQXJFLE1BQVg7QUFBQSxHQUFQO0FBQ0QsQ0FGRDs7QUFJQSxJQUFJRyxJQUFJLEdBQUdDLGNBQU9DLFFBQVAsQ0FBZ0I7QUFBRUMsRUFB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LENBQUo7QUE0QkEvQixFQUFBQSxRQUFRLENBQUMsU0FBRCxFQUFZLFlBQU07QUFDeEIsUUFBSW1CLE9BQUo7QUFFQWQsSUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZmMsTUFBQUEsT0FBTyxHQUFHLEVBQVY7QUFDRCxLQUZTLENBQVY7QUFJQUQsSUFBQUEsSUFBSSxDQUFDLHlCQUFELEVBQTRCLFlBQU07QUFDcEMsVUFBTU0sSUFBSSxHQUFHQyw4QkFDVkMsTUFEVSxlQUVULGdDQUFDLGdCQUFEO0FBQ0UsUUFBQSxXQUFXLEVBQUV0QixXQURmO0FBRUUsUUFBQSxPQUFPLEVBQUVlLE9BRlg7QUFHRSxRQUFBLE9BQU8sRUFBRWpCLE9BSFg7QUFJRSxRQUFBLEtBQUssRUFBRUosS0FKVDtBQUtFLFFBQUEsTUFBTSxFQUFFVixJQUFJLENBQUNrQixFQUFMLEVBTFY7QUFNRSxRQUFBLFFBQVEsRUFBRWxCLElBQUksQ0FBQ2tCLEVBQUw7QUFOWixRQUZTLEVBV1ZxQixNQVhVLEVBQWI7O0FBWUFHLE1BQUFBLE1BQU0sQ0FBQ04sSUFBRCxDQUFOLENBQWFPLGVBQWI7QUFDRCxLQWRHLENBQUo7QUFlRCxHQXRCTyxDQUFSO0FBdUJELENBbkZPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbGFzc09iamVjdCwgbW9ja0ljb25CdXR0b24sIG1vY2tNYXRoSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuaW1wb3J0IHsgc2hhbGxvdyB9IGZyb20gJ2VuenltZSc7XG5cbmltcG9ydCB7IERhdGEsIFZhbHVlLCBJbmxpbmUgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUb29sYmFyLCBEZWZhdWx0VG9vbGJhciB9IGZyb20gJy4uL3Rvb2xiYXInO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5pbXBvcnQgcmVuZGVyZXIgZnJvbSAncmVhY3QtdGVzdC1yZW5kZXJlcic7XG5cbm1vY2tNYXRoSW5wdXQoKTtcblxuamVzdC5tb2NrKCdAbWF0ZXJpYWwtdWkvY29yZS9JY29uQnV0dG9uJywgKCkgPT4ge1xuICByZXR1cm4gKHByb3BzKSA9PiA8ZGl2IGNsYXNzTmFtZT17cHJvcHMuY2xhc3NOYW1lfSBzdHlsZT17cHJvcHMuc3R5bGV9IGFyaWFMYWJlbD17cHJvcHNbJ2FyaWEtbGFiZWwnXX0gLz47XG59KTtcblxubGV0IG5vZGUgPSBJbmxpbmUuZnJvbUpTT04oeyB0eXBlOiAnaScgfSk7XG5sZXQgcGFyZW50Tm9kZSA9IElubGluZS5mcm9tSlNPTih7XG4gIHR5cGU6ICdpJyxcbn0pO1xubGV0IHZhbHVlO1xuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6dGVzdDp0b29sYmFyJyk7XG5cbmRlc2NyaWJlKCd0b29sYmFyJywgKCkgPT4ge1xuICBsZXQgb25EZWxldGUsIGNsYXNzZXMsIGRvY3VtZW50LCB0b29sYmFyT3B0cztcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBvbkRlbGV0ZSA9IGplc3QuZm4oKTtcblxuICAgIHRvb2xiYXJPcHRzID0ge1xuICAgICAgcG9zaXRpb246ICdib3R0b20nLFxuICAgICAgYWx3YXlzVmlzaWJsZTogZmFsc2UsXG4gICAgfTtcblxuICAgIHZhbHVlID0gVmFsdWUuZnJvbUpTT04oe30pO1xuICAgIGRvY3VtZW50ID0ge1xuICAgICAgZ2V0Q2xvc2VzdElubGluZTogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZShub2RlKSxcbiAgICAgIGdldFBhcmVudDogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSgpLFxuICAgIH07XG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyh2YWx1ZSwge1xuICAgICAgaXNDb2xsYXBzZWQ6IHtcbiAgICAgICAgZ2V0OiBqZXN0LmZuKCgpID0+IHRydWUpLFxuICAgICAgfSxcbiAgICAgIHN0YXJ0S2V5OiB7XG4gICAgICAgIGdldDogamVzdC5mbigoKSA9PiAnMScpLFxuICAgICAgfSxcbiAgICAgIGRvY3VtZW50OiB7XG4gICAgICAgIGdldDogamVzdC5mbigoKSA9PiBkb2N1bWVudCksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY2xhc3NlcyA9IGNsYXNzT2JqZWN0KCdpY29uUm9vdCcsICdpbmxpbmUnLCAndG9vbGJhcicsICdmb2N1c2VkJywgJ3NoYXJlZCcsICdpbmxpbmUnLCAncGllLXRvb2xiYXInKTtcbiAgfSk7XG5cbiAgdGVzdCgncmVuZGVycyBjdXN0b20gdG9vbGJhcicsICgpID0+IHtcbiAgICBjb25zdCBwbHVnaW5zID0gW1xuICAgICAge1xuICAgICAgICBkZWxldGVOb2RlOiAoKSA9PiB0cnVlLFxuICAgICAgICB0b29sYmFyOiB7XG4gICAgICAgICAgc3VwcG9ydHM6ICgpID0+IHRydWUsXG4gICAgICAgICAgY3VzdG9tVG9vbGJhcjogKCkgPT4gKCkgPT4gPGRpdj4gLS0tLS0tLS0tIGN1c3RvbSB0b29sYmFyIC0tLS0tLS0tLS0tIDwvZGl2PixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0IHRyZWUgPSByZW5kZXJlclxuICAgICAgLmNyZWF0ZShcbiAgICAgICAgPFRvb2xiYXJcbiAgICAgICAgICB0b29sYmFyT3B0cz17dG9vbGJhck9wdHN9XG4gICAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICBvbkRvbmU9e2plc3QuZm4oKX1cbiAgICAgICAgICBvbkNoYW5nZT17amVzdC5mbigpfVxuICAgICAgICAvPixcbiAgICAgIClcbiAgICAgIC50b0pTT04oKTtcblxuICAgIGxvZygndHJlZTogJywgSlNPTi5zdHJpbmdpZnkodHJlZSwgbnVsbCwgJyAgJykpO1xuICAgIGV4cGVjdCh0cmVlKS50b01hdGNoU25hcHNob3QoKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2RlZmF1bHQnLCAoKSA9PiB7XG4gICAgbGV0IHBsdWdpbnM7XG5cbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIHBsdWdpbnMgPSBbXTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ3JlbmRlcnMgZGVmYXVsdCB0b29sYmFyJywgKCkgPT4ge1xuICAgICAgY29uc3QgdHJlZSA9IHJlbmRlcmVyXG4gICAgICAgIC5jcmVhdGUoXG4gICAgICAgICAgPFRvb2xiYXJcbiAgICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICAgIHBsdWdpbnM9e3BsdWdpbnN9XG4gICAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgb25Eb25lPXtqZXN0LmZuKCl9XG4gICAgICAgICAgICBvbkNoYW5nZT17amVzdC5mbigpfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICAgIC50b0pTT04oKTtcbiAgICAgIGV4cGVjdCh0cmVlKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -27,8 +27,6 @@ var _toolbarButtons = require("./toolbar-buttons");
|
|
|
27
27
|
|
|
28
28
|
var _debug = _interopRequireDefault(require("debug"));
|
|
29
29
|
|
|
30
|
-
var _immutable = require("immutable");
|
|
31
|
-
|
|
32
30
|
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; }
|
|
33
31
|
|
|
34
32
|
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; }
|
|
@@ -42,29 +40,45 @@ var ToolbarButton = function ToolbarButton(props) {
|
|
|
42
40
|
};
|
|
43
41
|
|
|
44
42
|
if (props.isMark) {
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
43
|
+
var _isActive = (0, _utils.hasMark)(props.value, props.type);
|
|
44
|
+
|
|
45
|
+
var fnToCall = props.type === 'css' ? function () {
|
|
46
|
+
return props.onClick(props.value, props.onChange, props.getFocusedValue);
|
|
47
|
+
} : onToggle;
|
|
48
|
+
log('[ToolbarButton] mark:isActive: ', _isActive);
|
|
49
|
+
var ariaLabel;
|
|
50
|
+
|
|
51
|
+
if (props.type === 'sup') {
|
|
52
|
+
ariaLabel = 'Superscript (marks text as superscripted)';
|
|
53
|
+
} else if (props.type === 'sub') {
|
|
54
|
+
ariaLabel = 'Subscript (marks text as subscripted)';
|
|
55
|
+
} else {
|
|
56
|
+
ariaLabel = props.type;
|
|
57
|
+
}
|
|
57
58
|
|
|
58
|
-
|
|
59
|
-
return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
59
|
+
return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.MarkButton, {
|
|
60
60
|
active: _isActive,
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
},
|
|
65
|
-
extraStyles: props.buttonStyles
|
|
61
|
+
onToggle: fnToCall,
|
|
62
|
+
mark: props.type,
|
|
63
|
+
label: ariaLabel
|
|
66
64
|
}, props.icon);
|
|
67
65
|
}
|
|
66
|
+
|
|
67
|
+
var disabled = props.disabled;
|
|
68
|
+
var isActive = props.isActive ? props.isActive(props.value, props.type) : (0, _utils.hasBlock)(props.value, props.type);
|
|
69
|
+
log('[ToolbarButton] block:isActive: ', isActive);
|
|
70
|
+
|
|
71
|
+
var newIcon = /*#__PURE__*/_react["default"].cloneElement(props.icon);
|
|
72
|
+
|
|
73
|
+
return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
74
|
+
ariaLabel: props.ariaLabel,
|
|
75
|
+
active: isActive,
|
|
76
|
+
disabled: disabled,
|
|
77
|
+
onClick: function onClick(event) {
|
|
78
|
+
return props.onClick(props.value, props.onChange, props.getFocusedValue, event);
|
|
79
|
+
},
|
|
80
|
+
extraStyles: props.buttonStyles
|
|
81
|
+
}, newIcon);
|
|
68
82
|
};
|
|
69
83
|
|
|
70
84
|
exports.ToolbarButton = ToolbarButton;
|
|
@@ -79,7 +93,8 @@ ToolbarButton.propTypes = {
|
|
|
79
93
|
onChange: _propTypes["default"].func,
|
|
80
94
|
onClick: _propTypes["default"].func,
|
|
81
95
|
type: _propTypes["default"].string,
|
|
82
|
-
value: _propTypes["default"].object
|
|
96
|
+
value: _propTypes["default"].object,
|
|
97
|
+
ariaLabel: _propTypes["default"].string
|
|
83
98
|
};
|
|
84
99
|
|
|
85
100
|
var isActiveToolbarPlugin = function isActiveToolbarPlugin(props) {
|
|
@@ -99,7 +114,10 @@ var DefaultToolbar = function DefaultToolbar(_ref) {
|
|
|
99
114
|
classes = _ref.classes,
|
|
100
115
|
showDone = _ref.showDone,
|
|
101
116
|
deletable = _ref.deletable,
|
|
102
|
-
isHtmlMode = _ref.isHtmlMode
|
|
117
|
+
isHtmlMode = _ref.isHtmlMode,
|
|
118
|
+
doneButtonRef = _ref.doneButtonRef,
|
|
119
|
+
onBlur = _ref.onBlur,
|
|
120
|
+
onFocus = _ref.onFocus;
|
|
103
121
|
pluginProps = _objectSpread({
|
|
104
122
|
// disable HTML plugin by default, at least for now
|
|
105
123
|
html: {
|
|
@@ -108,6 +126,17 @@ var DefaultToolbar = function DefaultToolbar(_ref) {
|
|
|
108
126
|
}, pluginProps);
|
|
109
127
|
var filtered;
|
|
110
128
|
|
|
129
|
+
var handleFocus = function handleFocus(event) {
|
|
130
|
+
var _doneButtonRef$curren, _event$target;
|
|
131
|
+
|
|
132
|
+
var doneButtonClassName = doneButtonRef === null || doneButtonRef === void 0 ? void 0 : (_doneButtonRef$curren = doneButtonRef.current) === null || _doneButtonRef$curren === void 0 ? void 0 : _doneButtonRef$curren.className;
|
|
133
|
+
var isRawDoneButton = doneButtonClassName && ((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.closest("[class*=\"".concat(doneButtonClassName, "\"]")));
|
|
134
|
+
|
|
135
|
+
if (onFocus && !isRawDoneButton) {
|
|
136
|
+
onFocus(event);
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
|
|
111
140
|
if (isHtmlMode) {
|
|
112
141
|
filtered = plugins.filter(function (plugin) {
|
|
113
142
|
return isActiveToolbarPlugin(pluginProps)(plugin) && (plugin.name === 'characters' || plugin.name === 'html');
|
|
@@ -120,8 +149,28 @@ var DefaultToolbar = function DefaultToolbar(_ref) {
|
|
|
120
149
|
});
|
|
121
150
|
}
|
|
122
151
|
|
|
152
|
+
var isListActive = plugins.some(function (plugin) {
|
|
153
|
+
return isActiveToolbarPlugin(pluginProps)(plugin) && ['ul_list', 'ol_list'].includes(plugin.name) && plugin.toolbar.isActive(value, plugin.name);
|
|
154
|
+
});
|
|
155
|
+
var isTableActive = plugins.some(function (plugin) {
|
|
156
|
+
return isActiveToolbarPlugin(pluginProps)(plugin) && plugin.name === 'table' && plugin.utils && plugin.utils.isSelectionInTable && plugin.utils.isSelectionInTable(value);
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
var isToolbarButtonDisabled = function isToolbarButtonDisabled(plugin) {
|
|
160
|
+
if (plugin.type === 'table') {
|
|
161
|
+
return isListActive;
|
|
162
|
+
} else if (plugin.type === 'ul_list' || plugin.type === 'ol_list') {
|
|
163
|
+
return isTableActive;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
return plugin.disabled;
|
|
167
|
+
};
|
|
168
|
+
|
|
123
169
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
124
|
-
className: classes.defaultToolbar
|
|
170
|
+
className: classes.defaultToolbar,
|
|
171
|
+
onFocus: handleFocus,
|
|
172
|
+
tabIndex: "1",
|
|
173
|
+
onBlur: onBlur
|
|
125
174
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
126
175
|
className: classes.buttonsContainer
|
|
127
176
|
}, filtered.map(function (p, index) {
|
|
@@ -129,9 +178,11 @@ var DefaultToolbar = function DefaultToolbar(_ref) {
|
|
|
129
178
|
key: index,
|
|
130
179
|
value: value,
|
|
131
180
|
onChange: onChange,
|
|
132
|
-
getFocusedValue: getFocusedValue
|
|
181
|
+
getFocusedValue: getFocusedValue,
|
|
182
|
+
disabled: isToolbarButtonDisabled(p)
|
|
133
183
|
}));
|
|
134
|
-
})), showDone && !deletable &&
|
|
184
|
+
})), showDone && !deletable && /*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
|
|
185
|
+
doneButtonRef: doneButtonRef,
|
|
135
186
|
onClick: onDone
|
|
136
187
|
}));
|
|
137
188
|
};
|
|
@@ -147,7 +198,11 @@ DefaultToolbar.propTypes = {
|
|
|
147
198
|
onDone: _propTypes["default"].func.isRequired,
|
|
148
199
|
showDone: _propTypes["default"].bool,
|
|
149
200
|
addArea: _propTypes["default"].bool,
|
|
150
|
-
deletable: _propTypes["default"].bool
|
|
201
|
+
deletable: _propTypes["default"].bool,
|
|
202
|
+
isHtmlMode: _propTypes["default"].bool,
|
|
203
|
+
doneButtonRef: _propTypes["default"].func,
|
|
204
|
+
onBlur: _propTypes["default"].func,
|
|
205
|
+
onFocus: _propTypes["default"].func
|
|
151
206
|
};
|
|
152
207
|
DefaultToolbar.defaultProps = {
|
|
153
208
|
pluginProps: {}
|
|
@@ -171,4 +226,4 @@ var toolbarStyles = function toolbarStyles() {
|
|
|
171
226
|
var _default = (0, _styles.withStyles)(toolbarStyles)(DefaultToolbar);
|
|
172
227
|
|
|
173
228
|
exports["default"] = _default;
|
|
174
|
-
//# sourceMappingURL=default-toolbar.js.map
|
|
229
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvZGVmYXVsdC10b29sYmFyLmpzeCJdLCJuYW1lcyI6WyJsb2ciLCJUb29sYmFyQnV0dG9uIiwicHJvcHMiLCJvblRvZ2dsZSIsImMiLCJ2YWx1ZSIsImNoYW5nZSIsIm9uQ2hhbmdlIiwiaXNNYXJrIiwiaXNBY3RpdmUiLCJ0eXBlIiwiZm5Ub0NhbGwiLCJvbkNsaWNrIiwiZ2V0Rm9jdXNlZFZhbHVlIiwiYXJpYUxhYmVsIiwiaWNvbiIsImRpc2FibGVkIiwibmV3SWNvbiIsIlJlYWN0IiwiY2xvbmVFbGVtZW50IiwiZXZlbnQiLCJidXR0b25TdHlsZXMiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJib29sIiwiYW55IiwiZnVuYyIsInN0cmluZyIsImlzQWN0aXZlVG9vbGJhclBsdWdpbiIsInBsdWdpbiIsImlzRGlzYWJsZWQiLCJuYW1lIiwidG9vbGJhciIsIkRlZmF1bHRUb29sYmFyIiwicGx1Z2lucyIsInBsdWdpblByb3BzIiwib25Eb25lIiwiY2xhc3NlcyIsInNob3dEb25lIiwiZGVsZXRhYmxlIiwiaXNIdG1sTW9kZSIsImRvbmVCdXR0b25SZWYiLCJvbkJsdXIiLCJvbkZvY3VzIiwiaHRtbCIsImZpbHRlcmVkIiwiaGFuZGxlRm9jdXMiLCJkb25lQnV0dG9uQ2xhc3NOYW1lIiwiY3VycmVudCIsImNsYXNzTmFtZSIsImlzUmF3RG9uZUJ1dHRvbiIsInRhcmdldCIsImNsb3Nlc3QiLCJmaWx0ZXIiLCJtYXAiLCJwIiwiaXNMaXN0QWN0aXZlIiwic29tZSIsImluY2x1ZGVzIiwiaXNUYWJsZUFjdGl2ZSIsInV0aWxzIiwiaXNTZWxlY3Rpb25JblRhYmxlIiwiaXNUb29sYmFyQnV0dG9uRGlzYWJsZWQiLCJkZWZhdWx0VG9vbGJhciIsImJ1dHRvbnNDb250YWluZXIiLCJpbmRleCIsImlzUmVxdWlyZWQiLCJhcnJheSIsIlNsYXRlUHJvcFR5cGVzIiwiYWRkQXJlYSIsImRlZmF1bHRQcm9wcyIsInRvb2xiYXJTdHlsZXMiLCJkaXNwbGF5Iiwid2lkdGgiLCJqdXN0aWZ5Q29udGVudCIsImFsaWduSXRlbXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFFQTs7QUFDQTs7Ozs7O0FBRUEsSUFBTUEsR0FBRyxHQUFHLHVCQUFNLHdDQUFOLENBQVo7O0FBRU8sSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDQyxLQUFELEVBQVc7QUFDdEMsTUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVcsR0FBTTtBQUNyQixRQUFNQyxDQUFDLEdBQUdGLEtBQUssQ0FBQ0MsUUFBTixDQUFlRCxLQUFLLENBQUNHLEtBQU4sQ0FBWUMsTUFBWixFQUFmLEVBQXFDSixLQUFyQyxDQUFWO0FBRUFBLElBQUFBLEtBQUssQ0FBQ0ssUUFBTixDQUFlSCxDQUFmO0FBQ0QsR0FKRDs7QUFNQSxNQUFJRixLQUFLLENBQUNNLE1BQVYsRUFBa0I7QUFDaEIsUUFBTUMsU0FBUSxHQUFHLG9CQUFRUCxLQUFLLENBQUNHLEtBQWQsRUFBcUJILEtBQUssQ0FBQ1EsSUFBM0IsQ0FBakI7O0FBQ0EsUUFBTUMsUUFBUSxHQUNaVCxLQUFLLENBQUNRLElBQU4sS0FBZSxLQUFmLEdBQXVCO0FBQUEsYUFBTVIsS0FBSyxDQUFDVSxPQUFOLENBQWNWLEtBQUssQ0FBQ0csS0FBcEIsRUFBMkJILEtBQUssQ0FBQ0ssUUFBakMsRUFBMkNMLEtBQUssQ0FBQ1csZUFBakQsQ0FBTjtBQUFBLEtBQXZCLEdBQWlHVixRQURuRztBQUdBSCxJQUFBQSxHQUFHLENBQUMsaUNBQUQsRUFBb0NTLFNBQXBDLENBQUg7QUFFQSxRQUFJSyxTQUFKOztBQUVBLFFBQUlaLEtBQUssQ0FBQ1EsSUFBTixLQUFlLEtBQW5CLEVBQTBCO0FBQ3hCSSxNQUFBQSxTQUFTLEdBQUcsMkNBQVo7QUFDRCxLQUZELE1BRU8sSUFBSVosS0FBSyxDQUFDUSxJQUFOLEtBQWUsS0FBbkIsRUFB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QnV0dG9uIH0gZnJvbSAnLi9kb25lLWJ1dHRvbic7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTbGF0ZVByb3BUeXBlcyBmcm9tICdzbGF0ZS1wcm9wLXR5cGVzJztcblxuaW1wb3J0IHsgaGFzQmxvY2ssIGhhc01hcmsgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcblxuaW1wb3J0IHsgQnV0dG9uLCBNYXJrQnV0dG9uIH0gZnJvbSAnLi90b29sYmFyLWJ1dHRvbnMnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcblxuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6cGx1Z2luczp0b29sYmFyJyk7XG5cbmV4cG9ydCBjb25zdCBUb29sYmFyQnV0dG9uID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IG9uVG9nZ2xlID0gKCkgPT4ge1xuICAgIGNvbnN0IGMgPSBwcm9wcy5vblRvZ2dsZShwcm9wcy52YWx1ZS5jaGFuZ2UoKSwgcHJvcHMpO1xuXG4gICAgcHJvcHMub25DaGFuZ2UoYyk7XG4gIH07XG5cbiAgaWYgKHByb3BzLmlzTWFyaykge1xuICAgIGNvbnN0IGlzQWN0aXZlID0gaGFzTWFyayhwcm9wcy52YWx1ZSwgcHJvcHMudHlwZSk7XG4gICAgY29uc3QgZm5Ub0NhbGwgPVxuICAgICAgcHJvcHMudHlwZSA9PT0gJ2NzcycgPyAoKSA9PiBwcm9wcy5vbkNsaWNrKHByb3BzLnZhbHVlLCBwcm9wcy5vbkNoYW5nZSwgcHJvcHMuZ2V0Rm9jdXNlZFZhbHVlKSA6IG9uVG9nZ2xlO1xuXG4gICAgbG9nKCdbVG9vbGJhckJ1dHRvbl0gbWFyazppc0FjdGl2ZTogJywgaXNBY3RpdmUpO1xuXG4gICAgbGV0IGFyaWFMYWJlbDtcblxuICAgIGlmIChwcm9wcy50eXBlID09PSAnc3VwJykge1xuICAgICAgYXJpYUxhYmVsID0gJ1N1cGVyc2NyaXB0IChtYXJrcyB0ZXh0IGFzIHN1cGVyc2NyaXB0ZWQpJztcbiAgICB9IGVsc2UgaWYgKHByb3BzLnR5cGUgPT09ICdzdWInKSB7XG4gICAgICBhcmlhTGFiZWwgPSAnU3Vic2NyaXB0IChtYXJrcyB0ZXh0IGFzIHN1YnNjcmlwdGVkKSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFyaWFMYWJlbCA9IHByb3BzLnR5cGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxNYXJrQnV0dG9uIGFjdGl2ZT17aXNBY3RpdmV9IG9uVG9nZ2xlPXtmblRvQ2FsbH0gbWFyaz17cHJvcHMudHlwZX0gbGFiZWw9e2FyaWFMYWJlbH0+XG4gICAgICAgIHtwcm9wcy5pY29ufVxuICAgICAgPC9NYXJrQnV0dG9uPlxuICAgICk7XG4gIH1cblxuICBjb25zdCB7IGRpc2FibGVkIH0gPSBwcm9wcztcbiAgY29uc3QgaXNBY3RpdmUgPSBwcm9wcy5pc0FjdGl2ZSA/IHByb3BzLmlzQWN0aXZlKHByb3BzLnZhbHVlLCBwcm9wcy50eXBlKSA6IGhhc0Jsb2NrKHByb3BzLnZhbHVlLCBwcm9wcy50eXBlKTtcblxuICBsb2coJ1tUb29sYmFyQnV0dG9uXSBibG9jazppc0FjdGl2ZTogJywgaXNBY3RpdmUpO1xuICBjb25zdCBuZXdJY29uID0gUmVhY3QuY2xvbmVFbGVtZW50KHByb3BzLmljb24pO1xuXG4gIHJldHVybiAoXG4gICAgPEJ1dHRvblxuICAgICAgYXJpYUxhYmVsPXtwcm9wcy5hcmlhTGFiZWx9XG4gICAgICBhY3RpdmU9e2lzQWN0aXZlfVxuICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgb25DbGljaz17KGV2ZW50KSA9PiBwcm9wcy5vbkNsaWNrKHByb3BzLnZhbHVlLCBwcm9wcy5vbkNoYW5nZSwgcHJvcHMuZ2V0Rm9jdXNlZFZhbHVlLCBldmVudCl9XG4gICAgICBleHRyYVN0eWxlcz17cHJvcHMuYnV0dG9uU3R5bGVzfVxuICAgID5cbiAgICAgIHtuZXdJY29ufVxuICAgIDwvQnV0dG9uPlxuICApO1xufTtcblxuVG9vbGJhckJ1dHRvbi5wcm9wVHlwZXMgPSB7XG4gIGJ1dHRvblN0eWxlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICBpY29uOiBQcm9wVHlwZXMuYW55LFxuICBpc0FjdGl2ZTogUHJvcFR5cGVzLmJvb2wsXG4gIGlzTWFyazogUHJvcFR5cGVzLmJvb2wsXG4gIGdldEZvY3VzZWRWYWx1ZTogUHJvcFR5cGVzLmZ1bmMsXG4gIG9uVG9nZ2xlOiBQcm9wVHlwZXMuZnVuYyxcbiAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbiAgdHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgdmFsdWU6IFByb3BUeXBlcy5vYmplY3QsXG4gIGFyaWFMYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbn07XG5cbmNvbnN0IGlzQWN0aXZlVG9vbGJhclBsdWdpbiA9IChwcm9wcykgPT4gKHBsdWdpbikgPT4ge1xuICBjb25zdCBpc0Rpc2FibGVkID0gKHByb3BzW3BsdWdpbi5uYW1lXSB8fCB7fSkuZGlzYWJsZWQ7XG5cbiAgcmV0dXJuIHBsdWdpbiAmJiBwbHVnaW4udG9vbGJhciAmJiAhaXNEaXNhYmxlZDtcbn07XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0VG9vbGJhciA9ICh7XG4gIHBsdWdpbnMsXG4gIHBsdWdpblByb3BzLFxuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIGdldEZvY3VzZWRWYWx1ZSxcbiAgb25Eb25lLFxuICBjbGFzc2VzLFxuICBzaG93RG9uZSxcbiAgZGVsZXRhYmxlLFxuICBpc0h0bWxNb2RlLFxuICBkb25lQnV0dG9uUmVmLFxuICBvbkJsdXIsXG4gIG9uRm9jdXMsXG59KSA9PiB7XG4gIHBsdWdpblByb3BzID0ge1xuICAgIC8vIGRpc2FibGUgSFRNTCBwbHVnaW4gYnkgZGVmYXVsdCwgYXQgbGVhc3QgZm9yIG5vd1xuICAgIGh0bWw6IHsgZGlzYWJsZWQ6IHRydWUgfSxcbiAgICAuLi5wbHVnaW5Qcm9wcyxcbiAgfTtcbiAgbGV0IGZpbHRlcmVkO1xuXG4gIGNvbnN0IGhhbmRsZUZvY3VzID0gKGV2ZW50KSA9PiB7XG4gICAgY29uc3QgZG9uZUJ1dHRvbkNsYXNzTmFtZSA9IGRvbmVCdXR0b25SZWY/LmN1cnJlbnQ/LmNsYXNzTmFtZTtcbiAgICBjb25zdCBpc1Jhd0RvbmVCdXR0b24gPSBkb25lQnV0dG9uQ2xhc3NOYW1lICYmIGV2ZW50LnRhcmdldD8uY2xvc2VzdChgW2NsYXNzKj1cIiR7ZG9uZUJ1dHRvbkNsYXNzTmFtZX1cIl1gKTtcblxuICAgIGlmIChvbkZvY3VzICYmICFpc1Jhd0RvbmVCdXR0b24pIHtcbiAgICAgIG9uRm9jdXMoZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBpZiAoaXNIdG1sTW9kZSkge1xuICAgIGZpbHRlcmVkID0gcGx1Z2luc1xuICAgICAgLmZpbHRlcigocGx1Z2luKSA9PiB7XG4gICAgICAgIHJldHVybiBpc0FjdGl2ZVRvb2xiYXJQbHVnaW4ocGx1Z2luUHJvcHMpKHBsdWdpbikgJiYgKHBsdWdpbi5uYW1lID09PSAnY2hhcmFjdGVycycgfHwgcGx1Z2luLm5hbWUgPT09ICdodG1sJyk7XG4gICAgICB9KVxuICAgICAgLm1hcCgocCkgPT4gcC50b29sYmFyKTtcbiAgfSBlbHNlIHtcbiAgICBmaWx0ZXJlZCA9IHBsdWdpbnMuZmlsdGVyKGlzQWN0aXZlVG9vbGJhclBsdWdpbihwbHVnaW5Qcm9wcykpLm1hcCgocCkgPT4gcC50b29sYmFyKTtcbiAgfVxuXG4gIGNvbnN0IGlzTGlzdEFjdGl2ZSA9IHBsdWdpbnMuc29tZSgocGx1Z2luKSA9PlxuICAgICAgaXNBY3RpdmVUb29sYmFyUGx1Z2luKHBsdWdpblByb3BzKShwbHVnaW4pICYmXG4gICAgICBbJ3VsX2xpc3QnLCAnb2xfbGlzdCddLmluY2x1ZGVzKHBsdWdpbi5uYW1lKSAmJlxuICAgICAgcGx1Z2luLnRvb2xiYXIuaXNBY3RpdmUodmFsdWUsIHBsdWdpbi5uYW1lKVxuICApO1xuXG4gIGNvbnN0IGlzVGFibGVBY3RpdmUgPSBwbHVnaW5zLnNvbWUoKHBsdWdpbikgPT5cbiAgICAgIGlzQWN0aXZlVG9vbGJhclBsdWdpbihwbHVnaW5Qcm9wcykocGx1Z2luKSAmJlxuICAgICAgcGx1Z2luLm5hbWUgPT09ICd0YWJsZScgJiZcbiAgICAgIHBsdWdpbi51dGlscyAmJlxuICAgICAgcGx1Z2luLnV0aWxzLmlzU2VsZWN0aW9uSW5UYWJsZSAmJlxuICAgICAgcGx1Z2luLnV0aWxzLmlzU2VsZWN0aW9uSW5UYWJsZSh2YWx1ZSlcbiAgKTtcblxuICBjb25zdCBpc1Rvb2xiYXJCdXR0b25EaXNhYmxlZCA9IChwbHVnaW4pID0+IHtcbiAgICBpZiAocGx1Z2luLnR5cGUgPT09ICd0YWJsZScpIHtcbiAgICAgIHJldHVybiBpc0xpc3RBY3RpdmU7XG4gICAgfSBlbHNlIGlmIChwbHVnaW4udHlwZSA9PT0gJ3VsX2xpc3QnIHx8IHBsdWdpbi50eXBlID09PSAnb2xfbGlzdCcpIHtcbiAgICAgIHJldHVybiBpc1RhYmxlQWN0aXZlO1xuICAgIH1cbiAgICByZXR1cm4gcGx1Z2luLmRpc2FibGVkO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuZGVmYXVsdFRvb2xiYXJ9IG9uRm9jdXM9e2hhbmRsZUZvY3VzfSB0YWJJbmRleD1cIjFcIiBvbkJsdXI9e29uQmx1cn0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5idXR0b25zQ29udGFpbmVyfT5cbiAgICAgICAge2ZpbHRlcmVkLm1hcCgocCwgaW5kZXgpID0+IHtcbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFRvb2xiYXJCdXR0b25cbiAgICAgICAgICAgICAgey4uLnB9XG4gICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICBnZXRGb2N1c2VkVmFsdWU9e2dldEZvY3VzZWRWYWx1ZX1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2lzVG9vbGJhckJ1dHRvbkRpc2FibGVkKHApfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApO1xuICAgICAgICB9KX1cbiAgICAgIDwvZGl2PlxuICAgICAge3Nob3dEb25lICYmICFkZWxldGFibGUgJiYgPERvbmVCdXR0b24gZG9uZUJ1dHRvblJlZj17ZG9uZUJ1dHRvblJlZn0gb25DbGljaz17b25Eb25lfSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbkRlZmF1bHRUb29sYmFyLnByb3BUeXBlcyA9IHtcbiAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICBwbHVnaW5zOiBQcm9wVHlwZXMuYXJyYXkuaXNSZXF1aXJlZCxcbiAgcGx1Z2luUHJvcHM6IFByb3BUeXBlcy5vYmplY3QsXG4gIHZhbHVlOiBTbGF0ZVByb3BUeXBlcy52YWx1ZS5pc1JlcXVpcmVkLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgZ2V0Rm9jdXNlZFZhbHVlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvbkRvbmU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHNob3dEb25lOiBQcm9wVHlwZXMuYm9vbCxcbiAgYWRkQXJlYTogUHJvcFR5cGVzLmJvb2wsXG4gIGRlbGV0YWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gIGlzSHRtbE1vZGU6IFByb3BUeXBlcy5ib29sLFxuICBkb25lQnV0dG9uUmVmOiBQcm9wVHlwZXMuZnVuYyxcbiAgb25CbHVyOiBQcm9wVHlwZXMuZnVuYyxcbiAgb25Gb2N1czogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5EZWZhdWx0VG9vbGJhci5kZWZhdWx0UHJvcHMgPSB7XG4gIHBsdWdpblByb3BzOiB7fSxcbn07XG5cbmNvbnN0IHRvb2xiYXJTdHlsZXMgPSAoKSA9PiAoe1xuICBkZWZhdWx0VG9vbGJhcjoge1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICB3aWR0aDogJzEwMCUnLFxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gIH0sXG4gIGJ1dHRvbnNDb250YWluZXI6IHtcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgd2lkdGg6ICcxMDAlJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKHRvb2xiYXJTdHlsZXMpKERlZmF1bHRUb29sYmFyKTtcbiJdfQ==
|