@pie-lib/editable-html 7.17.4-next.45 → 7.17.4-next.450
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.json +165 -0
- package/CHANGELOG.md +286 -0
- package/lib/editor.js +373 -178
- package/lib/editor.js.map +1 -1
- package/lib/index.js +63 -52
- package/lib/index.js.map +1 -1
- package/lib/parse-html.js.map +1 -1
- package/lib/plugins/characters/custom-popover.js +70 -0
- package/lib/plugins/characters/custom-popover.js.map +1 -0
- package/lib/plugins/characters/index.js +266 -0
- package/lib/plugins/characters/index.js.map +1 -0
- package/lib/plugins/characters/utils.js +382 -0
- package/lib/plugins/characters/utils.js.map +1 -0
- package/lib/plugins/image/alt-dialog.js +119 -0
- package/lib/plugins/image/alt-dialog.js.map +1 -0
- package/lib/plugins/image/component.js +253 -77
- package/lib/plugins/image/component.js.map +1 -1
- package/lib/plugins/image/image-toolbar.js +95 -61
- package/lib/plugins/image/image-toolbar.js.map +1 -1
- package/lib/plugins/image/index.js +62 -20
- package/lib/plugins/image/index.js.map +1 -1
- package/lib/plugins/image/insert-image-handler.js +9 -15
- package/lib/plugins/image/insert-image-handler.js.map +1 -1
- package/lib/plugins/index.js +20 -12
- package/lib/plugins/index.js.map +1 -1
- package/lib/plugins/list/index.js +82 -14
- package/lib/plugins/list/index.js.map +1 -1
- package/lib/plugins/math/index.js +50 -55
- package/lib/plugins/math/index.js.map +1 -1
- package/lib/plugins/media/index.js +26 -25
- package/lib/plugins/media/index.js.map +1 -1
- package/lib/plugins/media/media-dialog.js +45 -56
- package/lib/plugins/media/media-dialog.js.map +1 -1
- package/lib/plugins/media/media-toolbar.js +24 -30
- package/lib/plugins/media/media-toolbar.js.map +1 -1
- package/lib/plugins/media/media-wrapper.js +28 -35
- package/lib/plugins/media/media-wrapper.js.map +1 -1
- package/lib/plugins/respArea/drag-in-the-blank/choice.js +68 -46
- package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +1 -1
- package/lib/plugins/respArea/drag-in-the-blank/index.js +12 -12
- package/lib/plugins/respArea/drag-in-the-blank/index.js.map +1 -1
- package/lib/plugins/respArea/explicit-constructed-response/index.js +10 -9
- package/lib/plugins/respArea/explicit-constructed-response/index.js.map +1 -1
- package/lib/plugins/respArea/icons/index.js +11 -11
- package/lib/plugins/respArea/icons/index.js.map +1 -1
- package/lib/plugins/respArea/index.js +58 -42
- package/lib/plugins/respArea/index.js.map +1 -1
- package/lib/plugins/respArea/inline-dropdown/index.js +8 -8
- package/lib/plugins/respArea/inline-dropdown/index.js.map +1 -1
- package/lib/plugins/respArea/utils.js +5 -5
- package/lib/plugins/respArea/utils.js.map +1 -1
- package/lib/plugins/table/icons/index.js +12 -12
- package/lib/plugins/table/icons/index.js.map +1 -1
- package/lib/plugins/table/index.js +83 -27
- package/lib/plugins/table/index.js.map +1 -1
- package/lib/plugins/table/table-toolbar.js +41 -50
- package/lib/plugins/table/table-toolbar.js.map +1 -1
- package/lib/plugins/toolbar/default-toolbar.js +14 -11
- package/lib/plugins/toolbar/default-toolbar.js.map +1 -1
- package/lib/plugins/toolbar/done-button.js +5 -5
- package/lib/plugins/toolbar/done-button.js.map +1 -1
- package/lib/plugins/toolbar/editor-and-toolbar.js +43 -43
- package/lib/plugins/toolbar/editor-and-toolbar.js.map +1 -1
- package/lib/plugins/toolbar/index.js +5 -5
- package/lib/plugins/toolbar/index.js.map +1 -1
- package/lib/plugins/toolbar/toolbar-buttons.js +49 -52
- package/lib/plugins/toolbar/toolbar-buttons.js.map +1 -1
- package/lib/plugins/toolbar/toolbar.js +60 -64
- package/lib/plugins/toolbar/toolbar.js.map +1 -1
- package/lib/plugins/utils.js +1 -1
- package/lib/plugins/utils.js.map +1 -1
- package/lib/serialization.js +32 -9
- package/lib/serialization.js.map +1 -1
- package/lib/theme.js.map +1 -1
- package/package.json +7 -6
- package/src/editor.jsx +196 -31
- package/src/index.jsx +20 -3
- package/src/plugins/characters/custom-popover.js +45 -0
- package/src/plugins/characters/index.jsx +244 -0
- package/src/plugins/characters/utils.js +448 -0
- package/src/plugins/image/alt-dialog.jsx +69 -0
- package/src/plugins/image/component.jsx +204 -21
- package/src/plugins/image/image-toolbar.jsx +68 -22
- package/src/plugins/image/index.jsx +47 -9
- package/src/plugins/index.jsx +4 -1
- package/src/plugins/list/index.jsx +67 -5
- package/src/plugins/math/index.jsx +31 -37
- package/src/plugins/media/index.jsx +3 -0
- package/src/plugins/media/media-dialog.js +1 -1
- package/src/plugins/respArea/drag-in-the-blank/choice.jsx +28 -1
- package/src/plugins/respArea/explicit-constructed-response/index.jsx +3 -3
- package/src/plugins/respArea/index.jsx +50 -31
- package/src/plugins/table/index.jsx +63 -14
- package/src/plugins/toolbar/default-toolbar.jsx +8 -0
- package/src/plugins/toolbar/editor-and-toolbar.jsx +12 -4
- package/src/plugins/toolbar/toolbar-buttons.jsx +13 -2
- package/src/plugins/toolbar/toolbar.jsx +14 -4
- package/src/serialization.jsx +19 -3
|
@@ -1,10 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports["default"] = exports.TableToolbar = void 0;
|
|
7
9
|
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
+
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
+
|
|
16
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
17
|
+
|
|
18
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
+
|
|
20
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
+
|
|
22
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
+
|
|
24
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
|
+
|
|
8
26
|
var _react = _interopRequireDefault(require("react"));
|
|
9
27
|
|
|
10
28
|
var _styles = require("@material-ui/core/styles");
|
|
@@ -23,60 +41,36 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
23
41
|
|
|
24
42
|
var _debug = _interopRequireDefault(require("debug"));
|
|
25
43
|
|
|
26
|
-
function
|
|
27
|
-
|
|
28
|
-
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
29
|
-
|
|
30
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
31
|
-
|
|
32
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
33
|
-
|
|
34
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
44
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
35
45
|
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
39
|
-
|
|
40
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
41
|
-
|
|
42
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
43
|
-
|
|
44
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
45
|
-
|
|
46
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
47
|
-
|
|
48
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
46
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
49
47
|
|
|
50
48
|
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:table-toolbar');
|
|
51
49
|
|
|
52
|
-
var TableToolbar =
|
|
53
|
-
|
|
54
|
-
function (_React$Component) {
|
|
55
|
-
_inherits(TableToolbar, _React$Component);
|
|
50
|
+
var TableToolbar = /*#__PURE__*/function (_React$Component) {
|
|
51
|
+
(0, _inherits2["default"])(TableToolbar, _React$Component);
|
|
56
52
|
|
|
57
|
-
|
|
58
|
-
var _getPrototypeOf2;
|
|
53
|
+
var _super = _createSuper(TableToolbar);
|
|
59
54
|
|
|
55
|
+
function TableToolbar() {
|
|
60
56
|
var _this;
|
|
61
57
|
|
|
62
|
-
|
|
58
|
+
(0, _classCallCheck2["default"])(this, TableToolbar);
|
|
63
59
|
|
|
64
60
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
65
61
|
args[_key] = arguments[_key];
|
|
66
62
|
}
|
|
67
63
|
|
|
68
|
-
_this =
|
|
69
|
-
|
|
70
|
-
_defineProperty(_assertThisInitialized(_this), "onDone", function (e) {
|
|
64
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
65
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onDone", function (e) {
|
|
71
66
|
var onDone = _this.props.onDone;
|
|
72
67
|
e.preventDefault();
|
|
73
68
|
onDone();
|
|
74
69
|
});
|
|
75
|
-
|
|
76
70
|
return _this;
|
|
77
71
|
}
|
|
78
72
|
|
|
79
|
-
|
|
73
|
+
(0, _createClass2["default"])(TableToolbar, [{
|
|
80
74
|
key: "render",
|
|
81
75
|
value: function render() {
|
|
82
76
|
var _this$props = this.props,
|
|
@@ -92,42 +86,40 @@ function (_React$Component) {
|
|
|
92
86
|
hasBorder = _this$props.hasBorder,
|
|
93
87
|
classes = _this$props.classes;
|
|
94
88
|
log('[render] hasBorder:', hasBorder);
|
|
95
|
-
return _react["default"].createElement("div", {
|
|
89
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
96
90
|
className: classes.tableToolbar
|
|
97
|
-
}, _react["default"].createElement("div", {
|
|
91
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
98
92
|
className: classes.toolbarButtons
|
|
99
|
-
}, _react["default"].createElement(_toolbarButtons.Button, {
|
|
93
|
+
}, /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
100
94
|
onClick: onAddRow
|
|
101
|
-
}, _react["default"].createElement(_icons.AddRow, null)), _react["default"].createElement(_toolbarButtons.Button, {
|
|
95
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.AddRow, null)), /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
102
96
|
onClick: onRemoveRow
|
|
103
|
-
}, _react["default"].createElement(_icons.RemoveRow, null)), _react["default"].createElement(_toolbarButtons.Button, {
|
|
97
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.RemoveRow, null)), /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
104
98
|
onClick: onAddColumn
|
|
105
|
-
}, _react["default"].createElement(_icons.AddColumn, null)), _react["default"].createElement(_toolbarButtons.Button, {
|
|
99
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.AddColumn, null)), /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
106
100
|
onClick: onRemoveColumn
|
|
107
|
-
}, _react["default"].createElement(_icons.RemoveColumn, null)), _react["default"].createElement(_toolbarButtons.Button, {
|
|
101
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.RemoveColumn, null)), /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
108
102
|
onClick: onRemoveTable
|
|
109
|
-
}, _react["default"].createElement(_icons.RemoveTable, null)), plugins.map(function (p, index) {
|
|
110
|
-
return _react["default"].createElement(_defaultToolbar.ToolbarButton,
|
|
103
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.RemoveTable, null)), plugins.map(function (p, index) {
|
|
104
|
+
return /*#__PURE__*/_react["default"].createElement(_defaultToolbar.ToolbarButton, (0, _extends2["default"])({
|
|
111
105
|
key: "plugin-".concat(index)
|
|
112
106
|
}, p.toolbar, {
|
|
113
107
|
value: value,
|
|
114
108
|
onChange: onChange
|
|
115
109
|
}));
|
|
116
|
-
}), _react["default"].createElement(_toolbarButtons.Button, {
|
|
110
|
+
}), /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
117
111
|
onClick: onToggleBorder,
|
|
118
112
|
active: hasBorder
|
|
119
|
-
}, _react["default"].createElement(_BorderAll["default"], null))), _react["default"].createElement(_doneButton.DoneButton, {
|
|
113
|
+
}, /*#__PURE__*/_react["default"].createElement(_BorderAll["default"], null))), /*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
|
|
120
114
|
onClick: this.onDone
|
|
121
115
|
}));
|
|
122
116
|
}
|
|
123
117
|
}]);
|
|
124
|
-
|
|
125
118
|
return TableToolbar;
|
|
126
119
|
}(_react["default"].Component);
|
|
127
120
|
|
|
128
121
|
exports.TableToolbar = TableToolbar;
|
|
129
|
-
|
|
130
|
-
_defineProperty(TableToolbar, "propTypes", {
|
|
122
|
+
(0, _defineProperty2["default"])(TableToolbar, "propTypes", {
|
|
131
123
|
plugins: _propTypes["default"].array.isRequired,
|
|
132
124
|
value: _propTypes["default"].object.isRequired,
|
|
133
125
|
onChange: _propTypes["default"].func.isRequired,
|
|
@@ -141,8 +133,7 @@ _defineProperty(TableToolbar, "propTypes", {
|
|
|
141
133
|
onDone: _propTypes["default"].func.isRequired,
|
|
142
134
|
classes: _propTypes["default"].object.isRequired
|
|
143
135
|
});
|
|
144
|
-
|
|
145
|
-
_defineProperty(TableToolbar, "defaultProps", {
|
|
136
|
+
(0, _defineProperty2["default"])(TableToolbar, "defaultProps", {
|
|
146
137
|
plugins: [],
|
|
147
138
|
value: {},
|
|
148
139
|
onChange: function onChange() {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"table-toolbar.js","names":["log","debug","TableToolbar","e","onDone","props","preventDefault","plugins","value","onChange","onAddRow","onRemoveRow","onAddColumn","onRemoveColumn","onRemoveTable","onToggleBorder","hasBorder","classes","tableToolbar","toolbarButtons","map","p","index","toolbar","React","Component","PropTypes","array","isRequired","object","func","bool","styles","width","display","justifyContent","withStyles"],"sources":["../../../src/plugins/table/table-toolbar.jsx"],"sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Button } from '../toolbar/toolbar-buttons';\nimport { DoneButton } from '../toolbar/done-button';\nimport BorderAll from '@material-ui/icons/BorderAll';\nimport { ToolbarButton } from '../toolbar/default-toolbar';\n\nimport { AddRow, AddColumn, RemoveColumn, RemoveRow, RemoveTable } from './icons';\nimport PropTypes from 'prop-types';\nimport debug from 'debug';\n\nconst log = debug('@pie-lib:editable-html:plugins:table-toolbar');\n\nexport class TableToolbar extends React.Component {\n static propTypes = {\n plugins: PropTypes.array.isRequired,\n value: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n onAddRow: PropTypes.func.isRequired,\n onRemoveRow: PropTypes.func.isRequired,\n onAddColumn: PropTypes.func.isRequired,\n onRemoveColumn: PropTypes.func.isRequired,\n onRemoveTable: PropTypes.func.isRequired,\n onToggleBorder: PropTypes.func.isRequired,\n hasBorder: PropTypes.bool,\n onDone: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired\n };\n\n static defaultProps = {\n plugins: [],\n value: {},\n onChange: () => {}\n };\n\n onDone = e => {\n const { onDone } = this.props;\n e.preventDefault();\n onDone();\n };\n\n render() {\n const {\n plugins,\n value,\n onChange,\n onAddRow,\n onRemoveRow,\n onAddColumn,\n onRemoveColumn,\n onRemoveTable,\n onToggleBorder,\n hasBorder,\n classes\n } = this.props;\n log('[render] hasBorder:', hasBorder);\n\n return (\n <div className={classes.tableToolbar}>\n <div className={classes.toolbarButtons}>\n <Button onClick={onAddRow}>\n <AddRow />\n </Button>\n <Button onClick={onRemoveRow}>\n <RemoveRow />\n </Button>\n <Button onClick={onAddColumn}>\n <AddColumn />\n </Button>\n <Button onClick={onRemoveColumn}>\n <RemoveColumn />\n </Button>\n <Button onClick={onRemoveTable}>\n <RemoveTable />\n </Button>\n {plugins.map((p, index) => (\n <ToolbarButton\n key={`plugin-${index}`}\n {...p.toolbar}\n value={value}\n onChange={onChange}\n />\n ))}\n <Button onClick={onToggleBorder} active={hasBorder}>\n <BorderAll />\n </Button>\n </div>\n <DoneButton onClick={this.onDone} />\n </div>\n );\n }\n}\n\nconst styles = () => ({\n tableToolbar: {\n width: '100%',\n display: 'flex',\n justifyContent: 'space-between'\n },\n toolbarButtons: {\n display: 'flex'\n }\n});\nexport default withStyles(styles)(TableToolbar);\n"],"mappings":"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"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
|
-
exports["default"] = exports.
|
|
8
|
+
exports["default"] = exports.ToolbarButton = exports.DefaultToolbar = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
11
|
|
|
8
12
|
var _doneButton = require("./done-button");
|
|
9
13
|
|
|
@@ -21,10 +25,6 @@ var _toolbarButtons = require("./toolbar-buttons");
|
|
|
21
25
|
|
|
22
26
|
var _debug = _interopRequireDefault(require("debug"));
|
|
23
27
|
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
25
|
-
|
|
26
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
27
|
-
|
|
28
28
|
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:toolbar');
|
|
29
29
|
|
|
30
30
|
var ToolbarButton = function ToolbarButton(props) {
|
|
@@ -36,18 +36,21 @@ var ToolbarButton = function ToolbarButton(props) {
|
|
|
36
36
|
if (props.isMark) {
|
|
37
37
|
var isActive = (0, _utils.hasMark)(props.value, props.type);
|
|
38
38
|
log('[ToolbarButton] mark:isActive: ', isActive);
|
|
39
|
-
return _react["default"].createElement(_toolbarButtons.MarkButton, {
|
|
39
|
+
return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.MarkButton, {
|
|
40
40
|
active: isActive,
|
|
41
41
|
label: props.type,
|
|
42
42
|
onToggle: onToggle,
|
|
43
43
|
mark: props.type
|
|
44
44
|
}, props.icon);
|
|
45
45
|
} else {
|
|
46
|
+
var disabled = props.disabled;
|
|
47
|
+
|
|
46
48
|
var _isActive = props.isActive ? props.isActive(props.value, props.type) : (0, _utils.hasBlock)(props.value, props.type);
|
|
47
49
|
|
|
48
50
|
log('[ToolbarButton] block:isActive: ', _isActive);
|
|
49
|
-
return _react["default"].createElement(_toolbarButtons.Button, {
|
|
51
|
+
return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.Button, {
|
|
50
52
|
active: _isActive,
|
|
53
|
+
disabled: disabled,
|
|
51
54
|
onClick: function onClick() {
|
|
52
55
|
return props.onClick(props.value, props.onChange);
|
|
53
56
|
},
|
|
@@ -77,17 +80,17 @@ var DefaultToolbar = function DefaultToolbar(_ref) {
|
|
|
77
80
|
var filtered = plugins.filter(isActiveToolbarPlugin(pluginProps)).map(function (p) {
|
|
78
81
|
return p.toolbar;
|
|
79
82
|
});
|
|
80
|
-
return _react["default"].createElement("div", {
|
|
83
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
81
84
|
className: classes.defaultToolbar
|
|
82
|
-
}, _react["default"].createElement("div", {
|
|
85
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
83
86
|
className: classes.buttonsContainer
|
|
84
87
|
}, filtered.map(function (p, index) {
|
|
85
|
-
return _react["default"].createElement(ToolbarButton,
|
|
88
|
+
return /*#__PURE__*/_react["default"].createElement(ToolbarButton, (0, _extends2["default"])({}, p, {
|
|
86
89
|
key: index,
|
|
87
90
|
value: value,
|
|
88
91
|
onChange: onChange
|
|
89
92
|
}));
|
|
90
|
-
})), showDone && !deletable && _react["default"].createElement(_doneButton.DoneButton, {
|
|
93
|
+
})), showDone && !deletable && /*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
|
|
91
94
|
onClick: onDone
|
|
92
95
|
}));
|
|
93
96
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"default-toolbar.js","names":["log","debug","ToolbarButton","props","onToggle","c","value","change","onChange","isMark","isActive","hasMark","type","icon","disabled","hasBlock","onClick","buttonStyles","isActiveToolbarPlugin","plugin","isDisabled","name","toolbar","DefaultToolbar","plugins","pluginProps","onDone","classes","showDone","deletable","filtered","filter","map","p","defaultToolbar","buttonsContainer","index","propTypes","PropTypes","object","isRequired","array","SlatePropTypes","func","bool","addArea","defaultProps","toolbarStyles","display","width","justifyContent","alignItems","withStyles"],"sources":["../../../src/plugins/toolbar/default-toolbar.jsx"],"sourcesContent":["import { DoneButton } from './done-button';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport SlatePropTypes from 'slate-prop-types';\n\nimport { hasBlock, hasMark } from '../utils';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { Button, MarkButton } from './toolbar-buttons';\nimport debug from 'debug';\n\nconst log = debug('@pie-lib:editable-html:plugins:toolbar');\n\nexport const ToolbarButton = props => {\n const onToggle = () => {\n const c = props.onToggle(props.value.change(), props);\n\n props.onChange(c);\n };\n\n if (props.isMark) {\n const isActive = hasMark(props.value, props.type);\n\n log('[ToolbarButton] mark:isActive: ', isActive);\n\n return (\n <MarkButton active={isActive} label={props.type} onToggle={onToggle} mark={props.type}>\n {props.icon}\n </MarkButton>\n );\n } else {\n const { disabled } = props;\n const isActive = props.isActive\n ? props.isActive(props.value, props.type)\n : hasBlock(props.value, props.type);\n\n log('[ToolbarButton] block:isActive: ', isActive);\n\n return (\n <Button\n active={isActive}\n disabled={disabled}\n onClick={() => props.onClick(props.value, props.onChange)}\n extraStyles={props.buttonStyles}\n >\n {props.icon}\n </Button>\n );\n }\n};\n\nconst isActiveToolbarPlugin = props => plugin => {\n const isDisabled = (props[plugin.name] || {}).disabled;\n\n return plugin && plugin.toolbar && !isDisabled;\n};\n\nexport const DefaultToolbar = ({\n plugins,\n pluginProps,\n value,\n onChange,\n onDone,\n classes,\n showDone,\n deletable\n}) => {\n const filtered = plugins.filter(isActiveToolbarPlugin(pluginProps)).map(p => p.toolbar);\n\n return (\n <div className={classes.defaultToolbar}>\n <div className={classes.buttonsContainer}>\n {filtered.map((p, index) => {\n return <ToolbarButton {...p} key={index} value={value} onChange={onChange} />;\n })}\n </div>\n {showDone && !deletable && <DoneButton onClick={onDone} />}\n </div>\n );\n};\n\nDefaultToolbar.propTypes = {\n classes: PropTypes.object.isRequired,\n plugins: PropTypes.array.isRequired,\n pluginProps: PropTypes.object,\n value: SlatePropTypes.value.isRequired,\n onChange: PropTypes.func.isRequired,\n onDone: PropTypes.func.isRequired,\n showDone: PropTypes.bool,\n addArea: PropTypes.bool,\n deletable: PropTypes.bool\n};\n\nDefaultToolbar.defaultProps = {\n pluginProps: {}\n};\n\nconst toolbarStyles = () => ({\n defaultToolbar: {\n display: 'flex',\n width: '100%',\n justifyContent: 'space-between'\n },\n buttonsContainer: {\n alignItems: 'center',\n display: 'flex',\n width: '100%'\n }\n});\n\nexport default withStyles(toolbarStyles)(DefaultToolbar);\n"],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
|
-
exports.
|
|
8
|
+
exports.RawDoneButton = exports.DoneButton = void 0;
|
|
7
9
|
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
9
11
|
|
|
@@ -15,12 +17,10 @@ var _styles = require("@material-ui/core/styles");
|
|
|
15
17
|
|
|
16
18
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
19
|
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
-
|
|
20
20
|
var RawDoneButton = function RawDoneButton(_ref) {
|
|
21
21
|
var classes = _ref.classes,
|
|
22
22
|
onClick = _ref.onClick;
|
|
23
|
-
return _react["default"].createElement(_IconButton["default"], {
|
|
23
|
+
return /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
|
|
24
24
|
"aria-label": "Done",
|
|
25
25
|
className: classes.iconRoot,
|
|
26
26
|
onClick: onClick,
|
|
@@ -28,7 +28,7 @@ var RawDoneButton = function RawDoneButton(_ref) {
|
|
|
28
28
|
label: classes.label,
|
|
29
29
|
root: classes.iconRoot
|
|
30
30
|
}
|
|
31
|
-
}, _react["default"].createElement(_Check["default"], null));
|
|
31
|
+
}, /*#__PURE__*/_react["default"].createElement(_Check["default"], null));
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
exports.RawDoneButton = RawDoneButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"done-button.js","names":["RawDoneButton","classes","onClick","iconRoot","label","root","propTypes","PropTypes","object","isRequired","func","styles","verticalAlign","width","height","color","padding","DoneButton","withStyles"],"sources":["../../../src/plugins/toolbar/done-button.jsx"],"sourcesContent":["import React from 'react';\n\nimport IconButton from '@material-ui/core/IconButton';\nimport Check from '@material-ui/icons/Check';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\n\nexport const RawDoneButton = ({ classes, onClick }) => (\n <IconButton\n aria-label=\"Done\"\n className={classes.iconRoot}\n onClick={onClick}\n classes={{\n label: classes.label,\n root: classes.iconRoot\n }}\n >\n <Check />\n </IconButton>\n);\n\nRawDoneButton.propTypes = {\n classes: PropTypes.object.isRequired,\n onClick: PropTypes.func\n};\n\nconst styles = {\n iconRoot: {\n verticalAlign: 'top',\n width: '28px',\n height: '28px',\n color: 'var(--editable-html-toolbar-check, #00bb00)',\n padding: '4px'\n }\n};\nexport const DoneButton = withStyles(styles)(RawDoneButton);\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AAEO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB;EAAA,IAAGC,OAAH,QAAGA,OAAH;EAAA,IAAYC,OAAZ,QAAYA,OAAZ;EAAA,oBAC3B,gCAAC,sBAAD;IACE,cAAW,MADb;IAEE,SAAS,EAAED,OAAO,CAACE,QAFrB;IAGE,OAAO,EAAED,OAHX;IAIE,OAAO,EAAE;MACPE,KAAK,EAAEH,OAAO,CAACG,KADR;MAEPC,IAAI,EAAEJ,OAAO,CAACE;IAFP;EAJX,gBASE,gCAAC,iBAAD,OATF,CAD2B;AAAA,CAAtB;;;AAcPH,aAAa,CAACM,SAAd,GAA0B;EACxBL,OAAO,EAAEM,qBAAA,CAAUC,MAAV,CAAiBC,UADF;EAExBP,OAAO,EAAEK,qBAAA,CAAUG;AAFK,CAA1B;AAKA,IAAMC,MAAM,GAAG;EACbR,QAAQ,EAAE;IACRS,aAAa,EAAE,KADP;IAERC,KAAK,EAAE,MAFC;IAGRC,MAAM,EAAE,MAHA;IAIRC,KAAK,EAAE,6CAJC;IAKRC,OAAO,EAAE;EALD;AADG,CAAf;AASO,IAAMC,UAAU,GAAG,IAAAC,kBAAA,EAAWP,MAAX,EAAmBX,aAAnB,CAAnB"}
|
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports["default"] = exports.EditorAndToolbar = void 0;
|
|
7
9
|
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
+
|
|
16
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
+
|
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
+
|
|
20
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
21
|
+
|
|
8
22
|
var _react = _interopRequireDefault(require("react"));
|
|
9
23
|
|
|
10
24
|
var _toolbar = _interopRequireDefault(require("./toolbar"));
|
|
@@ -25,48 +39,29 @@ var _slateDevEnvironment = require("slate-dev-environment");
|
|
|
25
39
|
|
|
26
40
|
var _renderUi = require("@pie-lib/render-ui");
|
|
27
41
|
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
-
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
31
|
-
|
|
32
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
33
|
-
|
|
34
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
35
|
-
|
|
36
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
37
|
-
|
|
38
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
42
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
39
43
|
|
|
40
|
-
function
|
|
41
|
-
|
|
42
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
43
|
-
|
|
44
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
45
|
-
|
|
46
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
47
|
-
|
|
48
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
44
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
49
45
|
|
|
50
46
|
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:toolbar:editor-and-toolbar');
|
|
51
47
|
|
|
52
|
-
var EditorAndToolbar =
|
|
53
|
-
|
|
54
|
-
function (_React$Component) {
|
|
55
|
-
_inherits(EditorAndToolbar, _React$Component);
|
|
48
|
+
var EditorAndToolbar = /*#__PURE__*/function (_React$Component) {
|
|
49
|
+
(0, _inherits2["default"])(EditorAndToolbar, _React$Component);
|
|
56
50
|
|
|
57
|
-
|
|
58
|
-
_classCallCheck(this, EditorAndToolbar);
|
|
51
|
+
var _super = _createSuper(EditorAndToolbar);
|
|
59
52
|
|
|
60
|
-
|
|
53
|
+
function EditorAndToolbar() {
|
|
54
|
+
(0, _classCallCheck2["default"])(this, EditorAndToolbar);
|
|
55
|
+
return _super.apply(this, arguments);
|
|
61
56
|
}
|
|
62
57
|
|
|
63
|
-
|
|
58
|
+
(0, _createClass2["default"])(EditorAndToolbar, [{
|
|
64
59
|
key: "componentDidMount",
|
|
65
|
-
|
|
60
|
+
value:
|
|
66
61
|
/** This is an interim fix until this PR is merged in slate:
|
|
67
62
|
* https://github.com/ianstormtaylor/slate/pull/2236
|
|
68
63
|
*/
|
|
69
|
-
|
|
64
|
+
function componentDidMount() {
|
|
70
65
|
if (_slateDevEnvironment.IS_FIREFOX) {
|
|
71
66
|
this.editorRef.tmp.isUpdatingSelection = true;
|
|
72
67
|
}
|
|
@@ -89,13 +84,14 @@ function (_React$Component) {
|
|
|
89
84
|
disableUnderline = _this$props.disableUnderline,
|
|
90
85
|
pluginProps = _this$props.pluginProps,
|
|
91
86
|
toolbarOpts = _this$props.toolbarOpts,
|
|
92
|
-
onDataChange = _this$props.onDataChange
|
|
87
|
+
onDataChange = _this$props.onDataChange,
|
|
88
|
+
toolbarRef = _this$props.toolbarRef;
|
|
93
89
|
var inFocus = value.isFocused || focusedNode !== null && focusedNode !== undefined;
|
|
94
90
|
var holderNames = (0, _classnames["default"])(classes.editorHolder, inFocus && classes.editorInFocus, readOnly && classes.readOnly, disableUnderline && classes.disabledUnderline);
|
|
95
91
|
var clonedChildren = children;
|
|
96
92
|
|
|
97
93
|
if (typeof children !== 'string') {
|
|
98
|
-
clonedChildren = _react["default"].cloneElement(children, {
|
|
94
|
+
clonedChildren = /*#__PURE__*/_react["default"].cloneElement(children, {
|
|
99
95
|
ref: function ref(el) {
|
|
100
96
|
return _this.editorRef = el;
|
|
101
97
|
}
|
|
@@ -103,13 +99,13 @@ function (_React$Component) {
|
|
|
103
99
|
}
|
|
104
100
|
|
|
105
101
|
log('[render] inFocus: ', inFocus, 'value.isFocused:', value.isFocused, 'focused node: ', focusedNode);
|
|
106
|
-
return _react["default"].createElement("div", {
|
|
107
|
-
className: classes.root
|
|
108
|
-
}, _react["default"].createElement("div", {
|
|
102
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
103
|
+
className: (0, _classnames["default"])(classes.root, toolbarOpts && toolbarOpts.error && classes.error)
|
|
104
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
109
105
|
className: holderNames
|
|
110
|
-
}, _react["default"].createElement("div", {
|
|
106
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
111
107
|
className: classes.children
|
|
112
|
-
}, clonedChildren)), _react["default"].createElement(_toolbar["default"], {
|
|
108
|
+
}, clonedChildren)), /*#__PURE__*/_react["default"].createElement(_toolbar["default"], {
|
|
113
109
|
autoWidth: autoWidth,
|
|
114
110
|
plugins: plugins,
|
|
115
111
|
focusedNode: focusedNode,
|
|
@@ -118,24 +114,24 @@ function (_React$Component) {
|
|
|
118
114
|
onChange: onChange,
|
|
119
115
|
onDone: onDone,
|
|
120
116
|
onDataChange: onDataChange,
|
|
117
|
+
toolbarRef: toolbarRef,
|
|
121
118
|
pluginProps: pluginProps,
|
|
122
119
|
toolbarOpts: toolbarOpts
|
|
123
120
|
}));
|
|
124
121
|
}
|
|
125
122
|
}]);
|
|
126
|
-
|
|
127
123
|
return EditorAndToolbar;
|
|
128
124
|
}(_react["default"].Component);
|
|
129
125
|
|
|
130
126
|
exports.EditorAndToolbar = EditorAndToolbar;
|
|
131
|
-
|
|
132
|
-
_defineProperty(EditorAndToolbar, "propTypes", {
|
|
127
|
+
(0, _defineProperty2["default"])(EditorAndToolbar, "propTypes", {
|
|
133
128
|
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
|
|
134
129
|
value: _slatePropTypes["default"].value.isRequired,
|
|
135
130
|
plugins: _propTypes["default"].array.isRequired,
|
|
136
131
|
onChange: _propTypes["default"].func.isRequired,
|
|
137
132
|
onDone: _propTypes["default"].func.isRequired,
|
|
138
133
|
onDataChange: _propTypes["default"].func,
|
|
134
|
+
toolbarRef: _propTypes["default"].func,
|
|
139
135
|
focusedNode: _slatePropTypes["default"].node,
|
|
140
136
|
readOnly: _propTypes["default"].bool,
|
|
141
137
|
disableUnderline: _propTypes["default"].bool,
|
|
@@ -144,10 +140,10 @@ _defineProperty(EditorAndToolbar, "propTypes", {
|
|
|
144
140
|
pluginProps: _propTypes["default"].object,
|
|
145
141
|
toolbarOpts: _propTypes["default"].shape({
|
|
146
142
|
position: _propTypes["default"].oneOf(['bottom', 'top']),
|
|
147
|
-
alwaysVisible: _propTypes["default"].bool
|
|
143
|
+
alwaysVisible: _propTypes["default"].bool,
|
|
144
|
+
error: _propTypes["default"].string
|
|
148
145
|
})
|
|
149
146
|
});
|
|
150
|
-
|
|
151
147
|
var style = {
|
|
152
148
|
root: {
|
|
153
149
|
position: 'relative',
|
|
@@ -159,7 +155,8 @@ var style = {
|
|
|
159
155
|
wordBreak: 'break-word',
|
|
160
156
|
overflow: 'visible',
|
|
161
157
|
maxHeight: '500px',
|
|
162
|
-
|
|
158
|
+
// needed in order to be able to put the focus before a void element when it is the first one in the editor
|
|
159
|
+
padding: '5px'
|
|
163
160
|
}
|
|
164
161
|
},
|
|
165
162
|
children: {
|
|
@@ -254,6 +251,9 @@ var style = {
|
|
|
254
251
|
backgroundColor: _theme.primary
|
|
255
252
|
}
|
|
256
253
|
}
|
|
254
|
+
},
|
|
255
|
+
error: {
|
|
256
|
+
border: '2px solid red'
|
|
257
257
|
}
|
|
258
258
|
};
|
|
259
259
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/plugins/toolbar/editor-and-toolbar.jsx"],"names":["log","EditorAndToolbar","IS_FIREFOX","editorRef","tmp","isUpdatingSelection","props","classes","children","value","plugins","onChange","onDone","focusedNode","autoWidth","readOnly","disableUnderline","pluginProps","toolbarOpts","onDataChange","inFocus","isFocused","undefined","holderNames","editorHolder","editorInFocus","disabledUnderline","clonedChildren","React","cloneElement","ref","el","root","Component","PropTypes","oneOfType","arrayOf","node","isRequired","SlatePropTypes","array","func","bool","object","shape","position","oneOf","alwaysVisible","style","padding","border","borderRadius","cursor","wordBreak","overflow","maxHeight","overflowY","color","text","backgroundColor","background","left","right","bottom","height","content","transition","pointerEvents","transform","primary","display","backgroundSize","backgroundImage","backgroundRepeat","backgroundPosition"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,2DAAN,CAAZ;;IAEaC,gB;;;;;;;;;;;;;;AAoBX;;;wCAGoB;AAClB,UAAIC,+BAAJ,EAAgB;AACd,aAAKC,SAAL,CAAeC,GAAf,CAAmBC,mBAAnB,GAAyC,IAAzC;AACD;AACF;;;6BAEQ;AAAA;;AAAA,wBAeH,KAAKC,KAfF;AAAA,UAELC,OAFK,eAELA,OAFK;AAAA,UAGLC,QAHK,eAGLA,QAHK;AAAA,UAILC,KAJK,eAILA,KAJK;AAAA,UAKLC,OALK,eAKLA,OALK;AAAA,UAMLC,QANK,eAMLA,QANK;AAAA,UAOLC,MAPK,eAOLA,MAPK;AAAA,UAQLC,WARK,eAQLA,WARK;AAAA,UASLC,SATK,eASLA,SATK;AAAA,UAULC,QAVK,eAULA,QAVK;AAAA,UAWLC,gBAXK,eAWLA,gBAXK;AAAA,UAYLC,WAZK,eAYLA,WAZK;AAAA,UAaLC,WAbK,eAaLA,WAbK;AAAA,UAcLC,YAdK,eAcLA,YAdK;AAiBP,UAAMC,OAAO,GAAGX,KAAK,CAACY,SAAN,IAAoBR,WAAW,KAAK,IAAhB,IAAwBA,WAAW,KAAKS,SAA5E;AACA,UAAMC,WAAW,GAAG,4BAClBhB,OAAO,CAACiB,YADU,EAElBJ,OAAO,IAAIb,OAAO,CAACkB,aAFD,EAGlBV,QAAQ,IAAIR,OAAO,CAACQ,QAHF,EAIlBC,gBAAgB,IAAIT,OAAO,CAACmB,iBAJV,CAApB;AAMA,UAAIC,cAAc,GAAGnB,QAArB;;AAEA,UAAI,OAAOA,QAAP,KAAoB,QAAxB,EAAkC;AAChCmB,QAAAA,cAAc,GAAGC,kBAAMC,YAAN,CAAmBrB,QAAnB,EAA6B;AAC5CsB,UAAAA,GAAG,EAAE,aAAAC,EAAE;AAAA,mBAAK,KAAI,CAAC5B,SAAL,GAAiB4B,EAAtB;AAAA;AADqC,SAA7B,CAAjB;AAGD;;AAED/B,MAAAA,GAAG,CACD,oBADC,EAEDoB,OAFC,EAGD,kBAHC,EAIDX,KAAK,CAACY,SAJL,EAKD,gBALC,EAMDR,WANC,CAAH;AASA,aACE;AAAK,QAAA,SAAS,EAAEN,OAAO,CAACyB;AAAxB,SACE;AAAK,QAAA,SAAS,EAAET;AAAhB,SACE;AAAK,QAAA,SAAS,EAAEhB,OAAO,CAACC;AAAxB,SAAmCmB,cAAnC,CADF,CADF,EAIE,gCAAC,mBAAD;AACE,QAAA,SAAS,EAAEb,SADb;AAEE,QAAA,OAAO,EAAEJ,OAFX;AAGE,QAAA,WAAW,EAAEG,WAHf;AAIE,QAAA,KAAK,EAAEJ,KAJT;AAKE,QAAA,SAAS,EAAEW,OALb;AAME,QAAA,QAAQ,EAAET,QANZ;AAOE,QAAA,MAAM,EAAEC,MAPV;AAQE,QAAA,YAAY,EAAEO,YARhB;AASE,QAAA,WAAW,EAAEF,WATf;AAUE,QAAA,WAAW,EAAEC;AAVf,QAJF,CADF;AAmBD;;;;EAzFmCU,kBAAMK,S;;;;gBAA/BhC,gB,eACQ;AACjBO,EAAAA,QAAQ,EAAE0B,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,OAAV,CAAkBF,sBAAUG,IAA5B,CAAD,EAAoCH,sBAAUG,IAA9C,CAApB,EAAyEC,UADlE;AAEjB7B,EAAAA,KAAK,EAAE8B,2BAAe9B,KAAf,CAAqB6B,UAFX;AAGjB5B,EAAAA,OAAO,EAAEwB,sBAAUM,KAAV,CAAgBF,UAHR;AAIjB3B,EAAAA,QAAQ,EAAEuB,sBAAUO,IAAV,CAAeH,UAJR;AAKjB1B,EAAAA,MAAM,EAAEsB,sBAAUO,IAAV,CAAeH,UALN;AAMjBnB,EAAAA,YAAY,EAAEe,sBAAUO,IANP;AAOjB5B,EAAAA,WAAW,EAAE0B,2BAAeF,IAPX;AAQjBtB,EAAAA,QAAQ,EAAEmB,sBAAUQ,IARH;AASjB1B,EAAAA,gBAAgB,EAAEkB,sBAAUQ,IATX;AAUjB5B,EAAAA,SAAS,EAAEoB,sBAAUQ,IAVJ;AAWjBnC,EAAAA,OAAO,EAAE2B,sBAAUS,MAAV,CAAiBL,UAXT;AAYjBrB,EAAAA,WAAW,EAAEiB,sBAAUS,MAZN;AAajBzB,EAAAA,WAAW,EAAEgB,sBAAUU,KAAV,CAAgB;AAC3BC,IAAAA,QAAQ,EAAEX,sBAAUY,KAAV,CAAgB,CAAC,QAAD,EAAW,KAAX,CAAhB,CADiB;AAE3BC,IAAAA,aAAa,EAAEb,sBAAUQ;AAFE,GAAhB;AAbI,C;;AA2FrB,IAAMM,KAAK,GAAG;AACZhB,EAAAA,IAAI,EAAE;AACJa,IAAAA,QAAQ,EAAE,UADN;AAEJI,IAAAA,OAAO,EAAE,KAFL;AAGJC,IAAAA,MAAM,EAAE,gBAHJ;AAIJC,IAAAA,YAAY,EAAE,KAJV;AAKJC,IAAAA,MAAM,EAAE,MALJ;AAMJ,oCAAgC;AAC9BC,MAAAA,SAAS,EAAE,YADmB;AAE9BC,MAAAA,QAAQ,EAAE,SAFoB;AAG9BC,MAAAA,SAAS,EAAE,OAHmB;AAI9BN,MAAAA,OAAO,EAAE;AAJqB;AAN5B,GADM;AAcZzC,EAAAA,QAAQ,EAAE;AACRyC,IAAAA,OAAO,EAAE;AADD,GAdE;AAiBZzB,EAAAA,YAAY,EAAE;AACZqB,IAAAA,QAAQ,EAAE,UADE;AAEZI,IAAAA,OAAO,EAAE,KAFG;AAGZO,IAAAA,SAAS,EAAE,QAHC;AAIZC,IAAAA,KAAK,EAAEA,gBAAMC,IAAN,EAJK;AAKZC,IAAAA,eAAe,EAAEF,gBAAMG,UAAN,EALL;AAMZ,iBAAa;AACXC,MAAAA,IAAI,EAAE,GADK;AAEXC,MAAAA,KAAK,EAAE,GAFI;AAGXC,MAAAA,MAAM,EAAE,GAHG;AAIXC,MAAAA,MAAM,EAAE,KAJG;AAKXC,MAAAA,OAAO,EAAE,IALE;AAMXpB,MAAAA,QAAQ,EAAE,UANC;AAOXqB,MAAAA,UAAU,EAAE,yDAPD;AAQXC,MAAAA,aAAa,EAAE,MARJ;AASXR,MAAAA,eAAe,EAAE;AATN,KAND;AAiBZ,gBAAY;AACVE,MAAAA,IAAI,EAAE,GADI;AAEVC,MAAAA,KAAK,EAAE,GAFG;AAGVC,MAAAA,MAAM,EAAE,GAHE;AAIVC,MAAAA,MAAM,EAAE,KAJE;AAKVC,MAAAA,OAAO,EAAE,IALC;AAMVpB,MAAAA,QAAQ,EAAE,UANA;AAOVuB,MAAAA,SAAS,EAAE,WAPD;AAQVF,MAAAA,UAAU,EACR,mFATQ;AAUVP,MAAAA,eAAe,EAAE;AAVP,KAjBA;AA6BZ,eAAW;AACT,kBAAY;AACVS,QAAAA,SAAS,EAAE,WADD;AAEVT,QAAAA,eAAe,EAAEU,cAFP;AAGVL,QAAAA,MAAM,EAAE;AAHE;AADH,KA7BC;AAoCZ,eAAW;AACT,kBAAY;AACVI,QAAAA,SAAS,EAAE,WADD;AAEVT,QAAAA,eAAe,EAAE,OAFP;AAGVK,QAAAA,MAAM,EAAE;AAHE;AADH;AApCC,GAjBF;AA6DZtC,EAAAA,iBAAiB,EAAE;AACjB,iBAAa;AACX4C,MAAAA,OAAO,EAAE;AADE,KADI;AAIjB,gBAAY;AACVA,MAAAA,OAAO,EAAE;AADC;AAJK,GA7DP;AAsEZvD,EAAAA,QAAQ,EAAE;AACR,iBAAa;AACX6C,MAAAA,UAAU,EAAE,aADD;AAEXW,MAAAA,cAAc,EAAE,SAFL;AAGXC,MAAAA,eAAe,EAAE,oEAHN;AAIXC,MAAAA,gBAAgB,EAAE,UAJP;AAKXC,MAAAA,kBAAkB,EAAE;AALT,KADL;AAQR,gBAAY;AACVb,MAAAA,IAAI,EAAE,GADI;AAEVC,MAAAA,KAAK,EAAE,GAFG;AAGVC,MAAAA,MAAM,EAAE,GAHE;AAIVC,MAAAA,MAAM,EAAE,KAJE;AAKVC,MAAAA,OAAO,EAAE,IALC;AAMVpB,MAAAA,QAAQ,EAAE,UANA;AAOVuB,MAAAA,SAAS,EAAE,WAPD;AAQVF,MAAAA,UAAU,EAAE,iFARF;AASVP,MAAAA,eAAe,EAAE;AATP,KARJ;AAmBR,eAAW;AACT,kBAAY;AACVS,QAAAA,SAAS,EAAE,WADD;AAEVT,QAAAA,eAAe,EAAE,OAFP;AAGVK,QAAAA,MAAM,EAAE;AAHE;AADH;AAnBH,GAtEE;AAiGZvC,EAAAA,aAAa,EAAE;AACb,gBAAY;AACV2C,MAAAA,SAAS,EAAE,WADD;AAEVT,MAAAA,eAAe,EAAEU,cAFP;AAGVL,MAAAA,MAAM,EAAE;AAHE,KADC;AAMb,eAAW;AACT,kBAAY;AACVL,QAAAA,eAAe,EAAEU;AADP;AADH;AANE;AAjGH,CAAd;;eA+Ge,wBAAWrB,KAAX,EAAkB/C,gBAAlB,C","sourcesContent":["import React from 'react';\nimport Toolbar from './toolbar';\nimport classNames from 'classnames';\nimport debug from 'debug';\nimport { primary } from '../../theme';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport SlatePropTypes from 'slate-prop-types';\nimport { IS_FIREFOX } from 'slate-dev-environment';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('@pie-lib:editable-html:plugins:toolbar:editor-and-toolbar');\n\nexport class EditorAndToolbar extends React.Component {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n value: SlatePropTypes.value.isRequired,\n plugins: PropTypes.array.isRequired,\n onChange: PropTypes.func.isRequired,\n onDone: PropTypes.func.isRequired,\n onDataChange: PropTypes.func,\n focusedNode: SlatePropTypes.node,\n readOnly: PropTypes.bool,\n disableUnderline: PropTypes.bool,\n autoWidth: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n pluginProps: PropTypes.object,\n toolbarOpts: PropTypes.shape({\n position: PropTypes.oneOf(['bottom', 'top']),\n alwaysVisible: PropTypes.bool\n })\n };\n\n /** This is an interim fix until this PR is merged in slate:\n * https://github.com/ianstormtaylor/slate/pull/2236\n */\n componentDidMount() {\n if (IS_FIREFOX) {\n this.editorRef.tmp.isUpdatingSelection = true;\n }\n }\n\n render() {\n const {\n classes,\n children,\n value,\n plugins,\n onChange,\n onDone,\n focusedNode,\n autoWidth,\n readOnly,\n disableUnderline,\n pluginProps,\n toolbarOpts,\n onDataChange\n } = this.props;\n\n const inFocus = value.isFocused || (focusedNode !== null && focusedNode !== undefined);\n const holderNames = classNames(\n classes.editorHolder,\n inFocus && classes.editorInFocus,\n readOnly && classes.readOnly,\n disableUnderline && classes.disabledUnderline\n );\n let clonedChildren = children;\n\n if (typeof children !== 'string') {\n clonedChildren = React.cloneElement(children, {\n ref: el => (this.editorRef = el)\n });\n }\n\n log(\n '[render] inFocus: ',\n inFocus,\n 'value.isFocused:',\n value.isFocused,\n 'focused node: ',\n focusedNode\n );\n\n return (\n <div className={classes.root}>\n <div className={holderNames}>\n <div className={classes.children}>{clonedChildren}</div>\n </div>\n <Toolbar\n autoWidth={autoWidth}\n plugins={plugins}\n focusedNode={focusedNode}\n value={value}\n isFocused={inFocus}\n onChange={onChange}\n onDone={onDone}\n onDataChange={onDataChange}\n pluginProps={pluginProps}\n toolbarOpts={toolbarOpts}\n />\n </div>\n );\n }\n}\n\nconst style = {\n root: {\n position: 'relative',\n padding: '0px',\n border: '1px solid #ccc',\n borderRadius: '4px',\n cursor: 'text',\n '& [data-slate-editor=\"true\"]': {\n wordBreak: 'break-word',\n overflow: 'visible',\n maxHeight: '500px',\n padding: '5px 0'\n }\n },\n children: {\n padding: '10px 16px'\n },\n editorHolder: {\n position: 'relative',\n padding: '0px',\n overflowY: 'scroll',\n color: color.text(),\n backgroundColor: color.background(),\n '&::before': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transition: 'background-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',\n pointerEvents: 'none',\n backgroundColor: 'rgba(0, 0, 0, 0.42)'\n },\n '&::after': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transform: 'scaleX(0)',\n transition:\n 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 200ms linear',\n backgroundColor: 'rgba(0, 0, 0, 0.42)'\n },\n '&:focus': {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: primary,\n height: '2px'\n }\n },\n '&:hover': {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: 'black',\n height: '2px'\n }\n }\n },\n disabledUnderline: {\n '&::before': {\n display: 'none'\n },\n '&::after': {\n display: 'none'\n }\n },\n\n readOnly: {\n '&::before': {\n background: 'transparent',\n backgroundSize: '5px 1px',\n backgroundImage: 'linear-gradient(to right, rgba(0, 0, 0, 0.42) 33%, transparent 0%)',\n backgroundRepeat: 'repeat-x',\n backgroundPosition: 'left top'\n },\n '&::after': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transform: 'scaleX(0)',\n transition: 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 0ms linear',\n backgroundColor: 'rgba(0, 0, 0, 0)'\n },\n '&:hover': {\n '&::after': {\n transform: 'scaleX(0)',\n backgroundColor: 'black',\n height: '2px'\n }\n }\n },\n editorInFocus: {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: primary,\n height: '2px'\n },\n '&:hover': {\n '&::after': {\n backgroundColor: primary\n }\n }\n }\n};\n\nexport default withStyles(style)(EditorAndToolbar);\n"],"file":"editor-and-toolbar.js"}
|
|
1
|
+
{"version":3,"file":"editor-and-toolbar.js","names":["log","debug","EditorAndToolbar","IS_FIREFOX","editorRef","tmp","isUpdatingSelection","props","classes","children","value","plugins","onChange","onDone","focusedNode","autoWidth","readOnly","disableUnderline","pluginProps","toolbarOpts","onDataChange","toolbarRef","inFocus","isFocused","undefined","holderNames","classNames","editorHolder","editorInFocus","disabledUnderline","clonedChildren","React","cloneElement","ref","el","root","error","Component","PropTypes","oneOfType","arrayOf","node","isRequired","SlatePropTypes","array","func","bool","object","shape","position","oneOf","alwaysVisible","string","style","padding","border","borderRadius","cursor","wordBreak","overflow","maxHeight","overflowY","color","text","backgroundColor","background","left","right","bottom","height","content","transition","pointerEvents","transform","primary","display","backgroundSize","backgroundImage","backgroundRepeat","backgroundPosition","withStyles"],"sources":["../../../src/plugins/toolbar/editor-and-toolbar.jsx"],"sourcesContent":["import React from 'react';\nimport Toolbar from './toolbar';\nimport classNames from 'classnames';\nimport debug from 'debug';\nimport { primary } from '../../theme';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport SlatePropTypes from 'slate-prop-types';\nimport { IS_FIREFOX } from 'slate-dev-environment';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('@pie-lib:editable-html:plugins:toolbar:editor-and-toolbar');\n\nexport class EditorAndToolbar extends React.Component {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n value: SlatePropTypes.value.isRequired,\n plugins: PropTypes.array.isRequired,\n onChange: PropTypes.func.isRequired,\n onDone: PropTypes.func.isRequired,\n onDataChange: PropTypes.func,\n toolbarRef: PropTypes.func,\n focusedNode: SlatePropTypes.node,\n readOnly: PropTypes.bool,\n disableUnderline: PropTypes.bool,\n autoWidth: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n pluginProps: PropTypes.object,\n toolbarOpts: PropTypes.shape({\n position: PropTypes.oneOf(['bottom', 'top']),\n alwaysVisible: PropTypes.bool,\n error: PropTypes.string\n })\n };\n\n /** This is an interim fix until this PR is merged in slate:\n * https://github.com/ianstormtaylor/slate/pull/2236\n */\n componentDidMount() {\n if (IS_FIREFOX) {\n this.editorRef.tmp.isUpdatingSelection = true;\n }\n }\n\n render() {\n const {\n classes,\n children,\n value,\n plugins,\n onChange,\n onDone,\n focusedNode,\n autoWidth,\n readOnly,\n disableUnderline,\n pluginProps,\n toolbarOpts,\n onDataChange,\n toolbarRef\n } = this.props;\n\n const inFocus = value.isFocused || (focusedNode !== null && focusedNode !== undefined);\n const holderNames = classNames(\n classes.editorHolder,\n inFocus && classes.editorInFocus,\n readOnly && classes.readOnly,\n disableUnderline && classes.disabledUnderline\n );\n let clonedChildren = children;\n\n if (typeof children !== 'string') {\n clonedChildren = React.cloneElement(children, {\n ref: el => (this.editorRef = el)\n });\n }\n\n log(\n '[render] inFocus: ',\n inFocus,\n 'value.isFocused:',\n value.isFocused,\n 'focused node: ',\n focusedNode\n );\n\n return (\n <div className={classNames(classes.root, toolbarOpts && toolbarOpts.error && classes.error)}>\n <div className={holderNames}>\n <div className={classes.children}>{clonedChildren}</div>\n </div>\n <Toolbar\n autoWidth={autoWidth}\n plugins={plugins}\n focusedNode={focusedNode}\n value={value}\n isFocused={inFocus}\n onChange={onChange}\n onDone={onDone}\n onDataChange={onDataChange}\n toolbarRef={toolbarRef}\n pluginProps={pluginProps}\n toolbarOpts={toolbarOpts}\n />\n </div>\n );\n }\n}\n\nconst style = {\n root: {\n position: 'relative',\n padding: '0px',\n border: '1px solid #ccc',\n borderRadius: '4px',\n cursor: 'text',\n '& [data-slate-editor=\"true\"]': {\n wordBreak: 'break-word',\n overflow: 'visible',\n maxHeight: '500px',\n // needed in order to be able to put the focus before a void element when it is the first one in the editor\n padding: '5px'\n }\n },\n children: {\n padding: '10px 16px'\n },\n editorHolder: {\n position: 'relative',\n padding: '0px',\n overflowY: 'scroll',\n color: color.text(),\n backgroundColor: color.background(),\n '&::before': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transition: 'background-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',\n pointerEvents: 'none',\n backgroundColor: 'rgba(0, 0, 0, 0.42)'\n },\n '&::after': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transform: 'scaleX(0)',\n transition:\n 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 200ms linear',\n backgroundColor: 'rgba(0, 0, 0, 0.42)'\n },\n '&:focus': {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: primary,\n height: '2px'\n }\n },\n '&:hover': {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: 'black',\n height: '2px'\n }\n }\n },\n disabledUnderline: {\n '&::before': {\n display: 'none'\n },\n '&::after': {\n display: 'none'\n }\n },\n\n readOnly: {\n '&::before': {\n background: 'transparent',\n backgroundSize: '5px 1px',\n backgroundImage: 'linear-gradient(to right, rgba(0, 0, 0, 0.42) 33%, transparent 0%)',\n backgroundRepeat: 'repeat-x',\n backgroundPosition: 'left top'\n },\n '&::after': {\n left: '0',\n right: '0',\n bottom: '0',\n height: '1px',\n content: '\"\"',\n position: 'absolute',\n transform: 'scaleX(0)',\n transition: 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 0ms linear',\n backgroundColor: 'rgba(0, 0, 0, 0)'\n },\n '&:hover': {\n '&::after': {\n transform: 'scaleX(0)',\n backgroundColor: 'black',\n height: '2px'\n }\n }\n },\n editorInFocus: {\n '&::after': {\n transform: 'scaleX(1)',\n backgroundColor: primary,\n height: '2px'\n },\n '&:hover': {\n '&::after': {\n backgroundColor: primary\n }\n }\n },\n error: {\n border: '2px solid red'\n }\n};\n\nexport default withStyles(style)(EditorAndToolbar);\n"],"mappings":"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"}
|