@atlaskit/editor-core 185.1.1 → 185.1.3
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 +13 -0
- package/dist/cjs/create-editor/create-editor.js +4 -0
- package/dist/cjs/editor-next/editor-internal.js +2 -1
- package/dist/cjs/test-utils.js +4 -0
- package/dist/cjs/ui/Appearance/Chromeless.js +4 -2
- package/dist/cjs/ui/Appearance/Comment/Comment.js +5 -6
- package/dist/cjs/ui/Appearance/FullPage/FullPage.js +2 -1
- package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +2 -4
- package/dist/cjs/ui/Appearance/FullPage/StyledComponents.js +1 -1
- package/dist/cjs/ui/Appearance/Mobile.js +29 -4
- package/dist/cjs/ui/AppearanceComponents/Mobile.js +7 -5
- package/dist/cjs/ui/ContextPanel/index.js +7 -1
- package/dist/cjs/ui/PluginSlot/index.js +11 -5
- package/dist/cjs/ui/PluginSlot/mount-plugin-hooks.js +34 -0
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/create-editor/create-editor.js +4 -0
- package/dist/es2019/editor-next/editor-internal.js +2 -1
- package/dist/es2019/test-utils.js +4 -0
- package/dist/es2019/ui/Appearance/Chromeless.js +4 -2
- package/dist/es2019/ui/Appearance/Comment/Comment.js +5 -6
- package/dist/es2019/ui/Appearance/FullPage/FullPage.js +2 -1
- package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +2 -4
- package/dist/es2019/ui/Appearance/FullPage/StyledComponents.js +6 -1
- package/dist/es2019/ui/Appearance/Mobile.js +29 -4
- package/dist/es2019/ui/AppearanceComponents/Mobile.js +7 -6
- package/dist/es2019/ui/ContextPanel/index.js +6 -1
- package/dist/es2019/ui/PluginSlot/index.js +11 -5
- package/dist/es2019/ui/PluginSlot/mount-plugin-hooks.js +27 -0
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/create-editor/create-editor.js +4 -0
- package/dist/esm/editor-next/editor-internal.js +2 -1
- package/dist/esm/test-utils.js +4 -0
- package/dist/esm/ui/Appearance/Chromeless.js +4 -2
- package/dist/esm/ui/Appearance/Comment/Comment.js +5 -6
- package/dist/esm/ui/Appearance/FullPage/FullPage.js +2 -1
- package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +2 -4
- package/dist/esm/ui/Appearance/FullPage/StyledComponents.js +1 -1
- package/dist/esm/ui/Appearance/Mobile.js +29 -4
- package/dist/esm/ui/AppearanceComponents/Mobile.js +6 -5
- package/dist/esm/ui/ContextPanel/index.js +5 -1
- package/dist/esm/ui/PluginSlot/index.js +11 -5
- package/dist/esm/ui/PluginSlot/mount-plugin-hooks.js +27 -0
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/create-editor/get-plugins.d.ts +2 -1
- package/dist/types/test-utils.d.ts +2 -1
- package/dist/types/types/editor-appearance-component.d.ts +3 -1
- package/dist/types/types/editor-config.d.ts +2 -1
- package/dist/types/ui/Appearance/FullPage/FullPageContentArea.d.ts +3 -1
- package/dist/types/ui/Appearance/Mobile.d.ts +1 -1
- package/dist/types/ui/AppearanceComponents/Mobile.d.ts +8 -8
- package/dist/types/ui/ContextPanel/index.d.ts +1 -0
- package/dist/types/ui/PluginSlot/index.d.ts +3 -1
- package/dist/types/ui/PluginSlot/mount-plugin-hooks.d.ts +10 -0
- package/dist/types-ts4.5/create-editor/get-plugins.d.ts +2 -1
- package/dist/types-ts4.5/test-utils.d.ts +2 -1
- package/dist/types-ts4.5/types/editor-appearance-component.d.ts +3 -1
- package/dist/types-ts4.5/types/editor-config.d.ts +2 -1
- package/dist/types-ts4.5/ui/Appearance/FullPage/FullPageContentArea.d.ts +3 -1
- package/dist/types-ts4.5/ui/Appearance/Mobile.d.ts +1 -1
- package/dist/types-ts4.5/ui/AppearanceComponents/Mobile.d.ts +8 -8
- package/dist/types-ts4.5/ui/ContextPanel/index.d.ts +1 -0
- package/dist/types-ts4.5/ui/PluginSlot/index.d.ts +3 -1
- package/dist/types-ts4.5/ui/PluginSlot/mount-plugin-hooks.d.ts +10 -0
- package/package.json +6 -6
- package/report.api.md +3 -0
- package/tmp/api-report-tmp.d.ts +2426 -0
- package/dist/cjs/ui/WidthEmitter/index.js +0 -64
- package/dist/es2019/ui/WidthEmitter/index.js +0 -56
- package/dist/esm/ui/WidthEmitter/index.js +0 -53
- package/dist/types/ui/WidthEmitter/index.d.ts +0 -7
- package/dist/types-ts4.5/ui/WidthEmitter/index.d.ts +0 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/editor-core
|
|
2
2
|
|
|
3
|
+
## 185.1.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`7cd4abcdc0d`](https://bitbucket.org/atlassian/atlassian-frontend/commits/7cd4abcdc0d) - Fix workaround in `editor-plugin-width`. This involved removing `WidthEmitter` in `editor-core`, removing `containerWidth` from `WidthPluginState`. This change also introduces `usePluginHook` for an `EditorPlugin` - this enables a react hook to be mounted for plugins (in all appearances).
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
|
|
10
|
+
## 185.1.2
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 185.1.1
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -66,6 +66,9 @@ function processPluginsList(plugins) {
|
|
|
66
66
|
if (plugin.contentComponent) {
|
|
67
67
|
acc.contentComponents.push(plugin.contentComponent);
|
|
68
68
|
}
|
|
69
|
+
if (plugin.usePluginHook) {
|
|
70
|
+
acc.pluginHooks.push(plugin.usePluginHook);
|
|
71
|
+
}
|
|
69
72
|
if (plugin.primaryToolbarComponent) {
|
|
70
73
|
acc.primaryToolbarComponents.push(plugin.primaryToolbarComponent);
|
|
71
74
|
}
|
|
@@ -84,6 +87,7 @@ function processPluginsList(plugins) {
|
|
|
84
87
|
marks: [],
|
|
85
88
|
pmPlugins: [],
|
|
86
89
|
contentComponents: [],
|
|
90
|
+
pluginHooks: [],
|
|
87
91
|
primaryToolbarComponents: [],
|
|
88
92
|
secondaryToolbarComponents: [],
|
|
89
93
|
onEditorViewStateUpdatedCallbacks: []
|
|
@@ -142,7 +142,8 @@ function EditorInternalWithoutHooks(_ref) {
|
|
|
142
142
|
persistScrollGutter: props.persistScrollGutter,
|
|
143
143
|
enableToolbarMinWidth: ((_props$featureFlags = props.featureFlags) === null || _props$featureFlags === void 0 ? void 0 : _props$featureFlags.toolbarMinWidthOverflow) != null ? !!((_props$featureFlags2 = props.featureFlags) !== null && _props$featureFlags2 !== void 0 && _props$featureFlags2.toolbarMinWidthOverflow) : props.allowUndoRedoButtons,
|
|
144
144
|
useStickyToolbar: props.useStickyToolbar,
|
|
145
|
-
featureFlags: featureFlags
|
|
145
|
+
featureFlags: featureFlags,
|
|
146
|
+
pluginHooks: config.pluginHooks
|
|
146
147
|
}));
|
|
147
148
|
}
|
|
148
149
|
}), (0, _react.jsx)(_PortalProvider.PortalRenderer, {
|
package/dist/cjs/test-utils.js
CHANGED
|
@@ -91,6 +91,9 @@ function lightProcessPluginsList(editorPlugins) {
|
|
|
91
91
|
if (editorPlugin.contentComponent) {
|
|
92
92
|
acc.contentComponents.push(editorPlugin.contentComponent);
|
|
93
93
|
}
|
|
94
|
+
if (editorPlugin.usePluginHook) {
|
|
95
|
+
acc.pluginHooks.push(editorPlugin.usePluginHook);
|
|
96
|
+
}
|
|
94
97
|
if (editorPlugin.onEditorViewStateUpdated) {
|
|
95
98
|
acc.onEditorViewStateUpdatedCallbacks.push(editorPlugin.onEditorViewStateUpdated);
|
|
96
99
|
}
|
|
@@ -100,6 +103,7 @@ function lightProcessPluginsList(editorPlugins) {
|
|
|
100
103
|
marks: [],
|
|
101
104
|
plugins: [],
|
|
102
105
|
contentComponents: [],
|
|
106
|
+
pluginHooks: [],
|
|
103
107
|
onEditorViewStateUpdatedCallbacks: []
|
|
104
108
|
});
|
|
105
109
|
}
|
|
@@ -57,7 +57,8 @@ var Editor = /*#__PURE__*/function (_React$Component) {
|
|
|
57
57
|
popupsBoundariesElement = _this$props.popupsBoundariesElement,
|
|
58
58
|
popupsScrollableElement = _this$props.popupsScrollableElement,
|
|
59
59
|
disabled = _this$props.disabled,
|
|
60
|
-
dispatchAnalyticsEvent = _this$props.dispatchAnalyticsEvent
|
|
60
|
+
dispatchAnalyticsEvent = _this$props.dispatchAnalyticsEvent,
|
|
61
|
+
pluginHooks = _this$props.pluginHooks;
|
|
61
62
|
var maxContentSizeReached = Boolean(maxContentSize === null || maxContentSize === void 0 ? void 0 : maxContentSize.maxContentSizeReached);
|
|
62
63
|
return (0, _react2.jsx)(_WithFlash.default, {
|
|
63
64
|
animate: maxContentSizeReached
|
|
@@ -82,7 +83,8 @@ var Editor = /*#__PURE__*/function (_React$Component) {
|
|
|
82
83
|
containerElement: _this.containerElement,
|
|
83
84
|
disabled: !!disabled,
|
|
84
85
|
dispatchAnalyticsEvent: dispatchAnalyticsEvent,
|
|
85
|
-
wrapperElement: _this.containerElement
|
|
86
|
+
wrapperElement: _this.containerElement,
|
|
87
|
+
pluginHooks: pluginHooks
|
|
86
88
|
}), editorDOMElement)));
|
|
87
89
|
});
|
|
88
90
|
return _this;
|
|
@@ -29,7 +29,6 @@ var _commonStyles = require("@atlaskit/editor-plugin-table/ui/common-styles");
|
|
|
29
29
|
var _WithFlash = _interopRequireDefault(require("../../WithFlash"));
|
|
30
30
|
var _ui = require("@atlaskit/editor-common/ui");
|
|
31
31
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
32
|
-
var _WidthEmitter = _interopRequireDefault(require("../../WidthEmitter"));
|
|
33
32
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
34
33
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
35
34
|
var _reactIntlNext = require("react-intl-next");
|
|
@@ -93,7 +92,8 @@ var Editor = /*#__PURE__*/function (_React$Component) {
|
|
|
93
92
|
disabled = _this$props.disabled,
|
|
94
93
|
dispatchAnalyticsEvent = _this$props.dispatchAnalyticsEvent,
|
|
95
94
|
intl = _this$props.intl,
|
|
96
|
-
useStickyToolbar = _this$props.useStickyToolbar
|
|
95
|
+
useStickyToolbar = _this$props.useStickyToolbar,
|
|
96
|
+
pluginHooks = _this$props.pluginHooks;
|
|
97
97
|
var maxContentSizeReached = Boolean(maxContentSize === null || maxContentSize === void 0 ? void 0 : maxContentSize.maxContentSizeReached);
|
|
98
98
|
var showSecondaryToolbar = !!onSave || !!onCancel || !!customSecondaryToolbarComponents;
|
|
99
99
|
var isShortcutToFocusToolbar = function isShortcutToFocusToolbar(event) {
|
|
@@ -164,11 +164,10 @@ var Editor = /*#__PURE__*/function (_React$Component) {
|
|
|
164
164
|
popupsScrollableElement: popupsScrollableElement,
|
|
165
165
|
containerElement: _this.containerElement,
|
|
166
166
|
disabled: !!disabled,
|
|
167
|
-
wrapperElement: _this.wrapperElementRef.current
|
|
167
|
+
wrapperElement: _this.wrapperElementRef.current,
|
|
168
|
+
pluginHooks: pluginHooks
|
|
168
169
|
}), editorDOMElement);
|
|
169
|
-
})), (0, _react2.jsx)(
|
|
170
|
-
editorView: editorView
|
|
171
|
-
})), showSecondaryToolbar && (0, _react2.jsx)("div", {
|
|
170
|
+
}))), showSecondaryToolbar && (0, _react2.jsx)("div", {
|
|
172
171
|
css: secondaryToolbarStyle,
|
|
173
172
|
"data-testid": "ak-editor-secondary-toolbar"
|
|
174
173
|
}, (0, _react2.jsx)(_buttonGroup.default, null, !!onSave && (0, _react2.jsx)(_customThemeButton.default, {
|
|
@@ -132,7 +132,8 @@ var FullPageEditor = /*#__PURE__*/function (_React$Component) {
|
|
|
132
132
|
providerFactory: props.providerFactory,
|
|
133
133
|
scrollContainer: this.scrollContainer,
|
|
134
134
|
scrollContainerRef: this.scrollContainerRef,
|
|
135
|
-
wrapperElement: this.wrapperElementRef.current
|
|
135
|
+
wrapperElement: this.wrapperElementRef.current,
|
|
136
|
+
pluginHooks: props.pluginHooks
|
|
136
137
|
})));
|
|
137
138
|
}
|
|
138
139
|
}]);
|
|
@@ -12,7 +12,6 @@ var _reactIntlNext = require("react-intl-next");
|
|
|
12
12
|
var _Addon = require("../../Addon");
|
|
13
13
|
var _ContextPanel = _interopRequireDefault(require("../../ContextPanel"));
|
|
14
14
|
var _PluginSlot = _interopRequireDefault(require("../../PluginSlot"));
|
|
15
|
-
var _WidthEmitter = _interopRequireDefault(require("../../WidthEmitter"));
|
|
16
15
|
var _StyledComponents = require("./StyledComponents");
|
|
17
16
|
var _messages = _interopRequireDefault(require("./messages"));
|
|
18
17
|
/** @jsx jsx */
|
|
@@ -54,6 +53,7 @@ var Content = /*#__PURE__*/_react2.default.memo(function (props) {
|
|
|
54
53
|
providerFactory: props.providerFactory,
|
|
55
54
|
appearance: props.appearance,
|
|
56
55
|
items: props.contentComponents,
|
|
56
|
+
pluginHooks: props.pluginHooks,
|
|
57
57
|
contentArea: props.contentArea,
|
|
58
58
|
popupsMountPoint: props.popupsMountPoint,
|
|
59
59
|
popupsBoundariesElement: props.popupsBoundariesElement,
|
|
@@ -66,9 +66,7 @@ var Content = /*#__PURE__*/_react2.default.memo(function (props) {
|
|
|
66
66
|
css: _StyledComponents.sidebarArea
|
|
67
67
|
}, props.contextPanel || (0, _react.jsx)(_ContextPanel.default, {
|
|
68
68
|
visible: false
|
|
69
|
-
}))
|
|
70
|
-
editorView: props.editorView
|
|
71
|
-
}));
|
|
69
|
+
})));
|
|
72
70
|
});
|
|
73
71
|
});
|
|
74
72
|
});
|
|
@@ -25,7 +25,7 @@ ScrollContainer.displayName = 'ScrollContainer';
|
|
|
25
25
|
|
|
26
26
|
// transition used to match scrollbar with config panel opening animation
|
|
27
27
|
// only use animation when opening as there is a bug with floating toolbars.
|
|
28
|
-
var positionedOverEditorStyle = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding:
|
|
28
|
+
var positionedOverEditorStyle = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding-right: ", "px;\n transition: padding 500ms ", ";\n\n .fabric-editor-popup-scroll-parent {\n padding-left: ", "px;\n transition: padding 500ms ", ";\n }\n"])), _editorSharedStyles.akEditorContextPanelWidth, _editorSharedStyles.akEditorSwoopCubicBezier, _editorSharedStyles.akEditorContextPanelWidth, _editorSharedStyles.akEditorSwoopCubicBezier);
|
|
29
29
|
exports.positionedOverEditorStyle = positionedOverEditorStyle;
|
|
30
30
|
var contentArea = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: row;\n height: calc(100% - ", ");\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n transition: padding 0ms ", ";\n"])), _editorSharedStyles.ATLASSIAN_NAVIGATION_HEIGHT, _editorSharedStyles.akEditorSwoopCubicBezier);
|
|
31
31
|
exports.contentArea = contentArea;
|
|
@@ -7,19 +7,44 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = Mobile;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _Mobile = require("../AppearanceComponents/Mobile");
|
|
10
|
-
var
|
|
10
|
+
var _PluginSlot = _interopRequireDefault(require("../PluginSlot"));
|
|
11
11
|
function Mobile(_ref) {
|
|
12
|
+
var _innerRef$current;
|
|
12
13
|
var editorView = _ref.editorView,
|
|
13
14
|
maxHeight = _ref.maxHeight,
|
|
14
15
|
persistScrollGutter = _ref.persistScrollGutter,
|
|
15
16
|
editorDOMElement = _ref.editorDOMElement,
|
|
16
|
-
disabled = _ref.disabled
|
|
17
|
+
disabled = _ref.disabled,
|
|
18
|
+
contentComponents = _ref.contentComponents,
|
|
19
|
+
editorActions = _ref.editorActions,
|
|
20
|
+
eventDispatcher = _ref.eventDispatcher,
|
|
21
|
+
dispatchAnalyticsEvent = _ref.dispatchAnalyticsEvent,
|
|
22
|
+
providerFactory = _ref.providerFactory,
|
|
23
|
+
appearance = _ref.appearance,
|
|
24
|
+
popupsMountPoint = _ref.popupsMountPoint,
|
|
25
|
+
popupsBoundariesElement = _ref.popupsBoundariesElement,
|
|
26
|
+
popupsScrollableElement = _ref.popupsScrollableElement,
|
|
27
|
+
innerRef = _ref.innerRef,
|
|
28
|
+
pluginHooks = _ref.pluginHooks;
|
|
17
29
|
return /*#__PURE__*/_react.default.createElement(_Mobile.MobileAppearance, {
|
|
30
|
+
ref: innerRef,
|
|
18
31
|
editorView: editorView || null,
|
|
19
32
|
maxHeight: maxHeight,
|
|
20
33
|
persistScrollGutter: persistScrollGutter,
|
|
21
34
|
editorDisabled: disabled
|
|
22
|
-
}, editorDOMElement,
|
|
23
|
-
editorView: editorView
|
|
35
|
+
}, editorDOMElement, /*#__PURE__*/_react.default.createElement(_PluginSlot.default, {
|
|
36
|
+
editorView: editorView,
|
|
37
|
+
editorActions: editorActions,
|
|
38
|
+
eventDispatcher: eventDispatcher,
|
|
39
|
+
dispatchAnalyticsEvent: dispatchAnalyticsEvent,
|
|
40
|
+
providerFactory: providerFactory,
|
|
41
|
+
appearance: appearance,
|
|
42
|
+
popupsMountPoint: popupsMountPoint,
|
|
43
|
+
popupsBoundariesElement: popupsBoundariesElement,
|
|
44
|
+
popupsScrollableElement: popupsScrollableElement,
|
|
45
|
+
containerElement: (_innerRef$current = innerRef === null || innerRef === void 0 ? void 0 : innerRef.current) !== null && _innerRef$current !== void 0 ? _innerRef$current : null,
|
|
46
|
+
disabled: !!disabled,
|
|
47
|
+
wrapperElement: null,
|
|
48
|
+
pluginHooks: pluginHooks
|
|
24
49
|
}));
|
|
25
50
|
}
|
|
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.MobileAppearance =
|
|
8
|
+
exports.MobileAppearance = void 0;
|
|
9
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _react2 = require("@emotion/react");
|
|
@@ -22,7 +22,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
22
22
|
var mobileEditor = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n min-height: 30px;\n width: 100%;\n max-width: inherit;\n box-sizing: border-box;\n word-wrap: break-word;\n\n div > .ProseMirror {\n outline: none;\n white-space: pre-wrap;\n padding: 0;\n margin: 0;\n }\n"])));
|
|
23
23
|
var ContentArea = (0, _ContentStyles.createEditorContentStyle)();
|
|
24
24
|
ContentArea.displayName = 'ContentArea';
|
|
25
|
-
function MobileAppearance(_ref) {
|
|
25
|
+
var MobileAppearance = /*#__PURE__*/(0, _react.forwardRef)(function MobileAppearance(_ref, ref) {
|
|
26
26
|
var editorView = _ref.editorView,
|
|
27
27
|
persistScrollGutter = _ref.persistScrollGutter,
|
|
28
28
|
children = _ref.children,
|
|
@@ -59,7 +59,8 @@ function MobileAppearance(_ref) {
|
|
|
59
59
|
return (0, _react2.jsx)(_WithFlash.default, {
|
|
60
60
|
animate: maxContentSizeReached
|
|
61
61
|
}, (0, _react2.jsx)("div", {
|
|
62
|
-
css: mobileEditor
|
|
62
|
+
css: mobileEditor,
|
|
63
|
+
ref: ref
|
|
63
64
|
}, (0, _react2.jsx)(_Addon.ClickAreaMobile, {
|
|
64
65
|
editorView: editorView || undefined,
|
|
65
66
|
minHeight: minHeight,
|
|
@@ -69,7 +70,7 @@ function MobileAppearance(_ref) {
|
|
|
69
70
|
}, (0, _react2.jsx)(ContentArea, null, (0, _react2.jsx)("div", {
|
|
70
71
|
className: "ak-editor-content-area"
|
|
71
72
|
}, children)))));
|
|
72
|
-
}, [children, editorView, persistScrollGutter, editorDisabled]);
|
|
73
|
+
}, [children, editorView, persistScrollGutter, editorDisabled, ref]);
|
|
73
74
|
return (0, _react2.jsx)(_WithPluginState.default, {
|
|
74
75
|
plugins: {
|
|
75
76
|
maxContentSize: _maxContentSize.pluginKey,
|
|
@@ -77,4 +78,5 @@ function MobileAppearance(_ref) {
|
|
|
77
78
|
},
|
|
78
79
|
render: render
|
|
79
80
|
});
|
|
80
|
-
}
|
|
81
|
+
});
|
|
82
|
+
exports.MobileAppearance = MobileAppearance;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
@@ -17,7 +18,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
17
18
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
18
19
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
20
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
20
|
-
var _react =
|
|
21
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
22
|
var _react2 = require("@emotion/react");
|
|
22
23
|
var _Transition = _interopRequireDefault(require("react-transition-group/Transition"));
|
|
23
24
|
var _colors = require("@atlaskit/theme/colors");
|
|
@@ -30,6 +31,8 @@ var _document = require("../../utils/document");
|
|
|
30
31
|
var _excluded = ["actions"];
|
|
31
32
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
32
33
|
/** @jsx jsx */
|
|
34
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
33
36
|
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; }
|
|
34
37
|
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; }
|
|
35
38
|
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); }; }
|
|
@@ -185,6 +188,8 @@ function ContextPanelWithActions(_ref2) {
|
|
|
185
188
|
props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
|
|
186
189
|
var eventDispatcher = actions._privateGetEventDispatcher();
|
|
187
190
|
var editorView = actions._privateGetEditorView();
|
|
191
|
+
var _useContext = (0, _react.useContext)(_ui.WidthContext),
|
|
192
|
+
width = _useContext.width;
|
|
188
193
|
if (!eventDispatcher) {
|
|
189
194
|
return (0, _react2.jsx)(SwappableContentArea, (0, _extends2.default)({
|
|
190
195
|
editorView: editorView
|
|
@@ -201,6 +206,7 @@ function ContextPanelWithActions(_ref2) {
|
|
|
201
206
|
widthState = _ref3.widthState;
|
|
202
207
|
var firstContent = contextPanel && contextPanel.contents.find(Boolean);
|
|
203
208
|
var editorWidth = _objectSpread(_objectSpread({}, widthState), {}, {
|
|
209
|
+
containerWidth: width,
|
|
204
210
|
contentBreakoutModes: editorView ? (0, _document.getChildBreakoutModes)(editorView.state.doc, editorView.state.schema) : []
|
|
205
211
|
});
|
|
206
212
|
return (0, _react2.jsx)(SwappableContentArea, (0, _extends2.default)({}, props, {
|
|
@@ -15,9 +15,10 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
15
15
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
16
16
|
var _react = _interopRequireDefault(require("react"));
|
|
17
17
|
var _react2 = require("@emotion/react");
|
|
18
|
-
var _analytics = require("
|
|
18
|
+
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
19
19
|
var _utils = require("../../utils");
|
|
20
20
|
var _ErrorBoundary = require("../ErrorBoundary");
|
|
21
|
+
var _mountPluginHooks = require("./mount-plugin-hooks");
|
|
21
22
|
var _templateObject;
|
|
22
23
|
/** @jsx jsx */
|
|
23
24
|
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); }; }
|
|
@@ -108,16 +109,21 @@ var PluginSlot = /*#__PURE__*/function (_React$Component) {
|
|
|
108
109
|
containerElement = _this$props2.containerElement,
|
|
109
110
|
disabled = _this$props2.disabled,
|
|
110
111
|
dispatchAnalyticsEvent = _this$props2.dispatchAnalyticsEvent,
|
|
111
|
-
wrapperElement = _this$props2.wrapperElement
|
|
112
|
-
|
|
112
|
+
wrapperElement = _this$props2.wrapperElement,
|
|
113
|
+
pluginHooks = _this$props2.pluginHooks;
|
|
114
|
+
if (!items && !pluginHooks || !editorView) {
|
|
113
115
|
return null;
|
|
114
116
|
}
|
|
115
117
|
return (0, _react2.jsx)(_ErrorBoundary.ErrorBoundary, {
|
|
116
118
|
component: _analytics.ACTION_SUBJECT.PLUGIN_SLOT,
|
|
117
119
|
fallbackComponent: null
|
|
118
|
-
}, (0, _react2.jsx)(
|
|
120
|
+
}, (0, _react2.jsx)(_mountPluginHooks.MountPluginHooks, {
|
|
121
|
+
editorView: editorView,
|
|
122
|
+
pluginHooks: pluginHooks,
|
|
123
|
+
containerElement: containerElement
|
|
124
|
+
}), (0, _react2.jsx)("div", {
|
|
119
125
|
css: pluginsComponentsWrapper
|
|
120
|
-
}, items.map(function (component, key) {
|
|
126
|
+
}, items === null || items === void 0 ? void 0 : items.map(function (component, key) {
|
|
121
127
|
var props = {
|
|
122
128
|
key: key
|
|
123
129
|
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.MountPluginHooks = MountPluginHooks;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
function MountPluginHook(_ref) {
|
|
10
|
+
var usePluginHook = _ref.usePluginHook,
|
|
11
|
+
editorView = _ref.editorView,
|
|
12
|
+
containerElement = _ref.containerElement;
|
|
13
|
+
usePluginHook({
|
|
14
|
+
editorView: editorView,
|
|
15
|
+
containerElement: containerElement
|
|
16
|
+
});
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
function MountPluginHooks(_ref2) {
|
|
20
|
+
var pluginHooks = _ref2.pluginHooks,
|
|
21
|
+
editorView = _ref2.editorView,
|
|
22
|
+
containerElement = _ref2.containerElement;
|
|
23
|
+
if (!editorView) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, pluginHooks === null || pluginHooks === void 0 ? void 0 : pluginHooks.map(function (usePluginHook, key) {
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(MountPluginHook, {
|
|
28
|
+
key: key,
|
|
29
|
+
usePluginHook: usePluginHook,
|
|
30
|
+
editorView: editorView,
|
|
31
|
+
containerElement: containerElement
|
|
32
|
+
});
|
|
33
|
+
}));
|
|
34
|
+
}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.version = exports.nextMajorVersion = exports.name = void 0;
|
|
7
7
|
var name = "@atlaskit/editor-core";
|
|
8
8
|
exports.name = name;
|
|
9
|
-
var version = "185.1.
|
|
9
|
+
var version = "185.1.3";
|
|
10
10
|
exports.version = version;
|
|
11
11
|
var nextMajorVersion = function nextMajorVersion() {
|
|
12
12
|
return [Number(version.split('.')[0]) + 1, 0, 0].join('.');
|
package/dist/cjs/version.json
CHANGED
|
@@ -47,6 +47,9 @@ export function processPluginsList(plugins) {
|
|
|
47
47
|
if (plugin.contentComponent) {
|
|
48
48
|
acc.contentComponents.push(plugin.contentComponent);
|
|
49
49
|
}
|
|
50
|
+
if (plugin.usePluginHook) {
|
|
51
|
+
acc.pluginHooks.push(plugin.usePluginHook);
|
|
52
|
+
}
|
|
50
53
|
if (plugin.primaryToolbarComponent) {
|
|
51
54
|
acc.primaryToolbarComponents.push(plugin.primaryToolbarComponent);
|
|
52
55
|
}
|
|
@@ -65,6 +68,7 @@ export function processPluginsList(plugins) {
|
|
|
65
68
|
marks: [],
|
|
66
69
|
pmPlugins: [],
|
|
67
70
|
contentComponents: [],
|
|
71
|
+
pluginHooks: [],
|
|
68
72
|
primaryToolbarComponents: [],
|
|
69
73
|
secondaryToolbarComponents: [],
|
|
70
74
|
onEditorViewStateUpdatedCallbacks: []
|
|
@@ -138,7 +138,8 @@ export function EditorInternalWithoutHooks({
|
|
|
138
138
|
persistScrollGutter: props.persistScrollGutter,
|
|
139
139
|
enableToolbarMinWidth: ((_props$featureFlags = props.featureFlags) === null || _props$featureFlags === void 0 ? void 0 : _props$featureFlags.toolbarMinWidthOverflow) != null ? !!((_props$featureFlags2 = props.featureFlags) !== null && _props$featureFlags2 !== void 0 && _props$featureFlags2.toolbarMinWidthOverflow) : props.allowUndoRedoButtons,
|
|
140
140
|
useStickyToolbar: props.useStickyToolbar,
|
|
141
|
-
featureFlags: featureFlags
|
|
141
|
+
featureFlags: featureFlags,
|
|
142
|
+
pluginHooks: config.pluginHooks
|
|
142
143
|
}));
|
|
143
144
|
}
|
|
144
145
|
}), jsx(PortalRenderer, {
|
|
@@ -41,6 +41,9 @@ function lightProcessPluginsList(editorPlugins) {
|
|
|
41
41
|
if (editorPlugin.contentComponent) {
|
|
42
42
|
acc.contentComponents.push(editorPlugin.contentComponent);
|
|
43
43
|
}
|
|
44
|
+
if (editorPlugin.usePluginHook) {
|
|
45
|
+
acc.pluginHooks.push(editorPlugin.usePluginHook);
|
|
46
|
+
}
|
|
44
47
|
if (editorPlugin.onEditorViewStateUpdated) {
|
|
45
48
|
acc.onEditorViewStateUpdatedCallbacks.push(editorPlugin.onEditorViewStateUpdated);
|
|
46
49
|
}
|
|
@@ -50,6 +53,7 @@ function lightProcessPluginsList(editorPlugins) {
|
|
|
50
53
|
marks: [],
|
|
51
54
|
plugins: [],
|
|
52
55
|
contentComponents: [],
|
|
56
|
+
pluginHooks: [],
|
|
53
57
|
onEditorViewStateUpdatedCallbacks: []
|
|
54
58
|
});
|
|
55
59
|
}
|
|
@@ -54,7 +54,8 @@ export default class Editor extends React.Component {
|
|
|
54
54
|
popupsBoundariesElement,
|
|
55
55
|
popupsScrollableElement,
|
|
56
56
|
disabled,
|
|
57
|
-
dispatchAnalyticsEvent
|
|
57
|
+
dispatchAnalyticsEvent,
|
|
58
|
+
pluginHooks
|
|
58
59
|
} = this.props;
|
|
59
60
|
const maxContentSizeReached = Boolean(maxContentSize === null || maxContentSize === void 0 ? void 0 : maxContentSize.maxContentSizeReached);
|
|
60
61
|
return jsx(WithFlash, {
|
|
@@ -82,7 +83,8 @@ export default class Editor extends React.Component {
|
|
|
82
83
|
containerElement: this.containerElement,
|
|
83
84
|
disabled: !!disabled,
|
|
84
85
|
dispatchAnalyticsEvent: dispatchAnalyticsEvent,
|
|
85
|
-
wrapperElement: this.containerElement
|
|
86
|
+
wrapperElement: this.containerElement,
|
|
87
|
+
pluginHooks: pluginHooks
|
|
86
88
|
}), editorDOMElement)));
|
|
87
89
|
});
|
|
88
90
|
}
|
|
@@ -16,7 +16,6 @@ import { tableCommentEditorStyles } from '@atlaskit/editor-plugin-table/ui/commo
|
|
|
16
16
|
import WithFlash from '../../WithFlash';
|
|
17
17
|
import { WidthConsumer } from '@atlaskit/editor-common/ui';
|
|
18
18
|
import { akEditorMobileBreakoutPoint } from '@atlaskit/editor-shared-styles';
|
|
19
|
-
import WidthEmitter from '../../WidthEmitter';
|
|
20
19
|
import { GRID_GUTTER } from '@atlaskit/editor-common/styles';
|
|
21
20
|
import classnames from 'classnames';
|
|
22
21
|
import { injectIntl } from 'react-intl-next';
|
|
@@ -119,7 +118,8 @@ class Editor extends React.Component {
|
|
|
119
118
|
disabled,
|
|
120
119
|
dispatchAnalyticsEvent,
|
|
121
120
|
intl,
|
|
122
|
-
useStickyToolbar
|
|
121
|
+
useStickyToolbar,
|
|
122
|
+
pluginHooks
|
|
123
123
|
} = this.props;
|
|
124
124
|
const maxContentSizeReached = Boolean(maxContentSize === null || maxContentSize === void 0 ? void 0 : maxContentSize.maxContentSizeReached);
|
|
125
125
|
const showSecondaryToolbar = !!onSave || !!onCancel || !!customSecondaryToolbarComponents;
|
|
@@ -194,11 +194,10 @@ class Editor extends React.Component {
|
|
|
194
194
|
popupsScrollableElement: popupsScrollableElement,
|
|
195
195
|
containerElement: this.containerElement,
|
|
196
196
|
disabled: !!disabled,
|
|
197
|
-
wrapperElement: this.wrapperElementRef.current
|
|
197
|
+
wrapperElement: this.wrapperElementRef.current,
|
|
198
|
+
pluginHooks: pluginHooks
|
|
198
199
|
}), editorDOMElement);
|
|
199
|
-
})), jsx(
|
|
200
|
-
editorView: editorView
|
|
201
|
-
})), showSecondaryToolbar && jsx("div", {
|
|
200
|
+
}))), showSecondaryToolbar && jsx("div", {
|
|
202
201
|
css: secondaryToolbarStyle,
|
|
203
202
|
"data-testid": "ak-editor-secondary-toolbar"
|
|
204
203
|
}, jsx(ButtonGroup, null, !!onSave && jsx(Button, {
|
|
@@ -113,7 +113,8 @@ export class FullPageEditor extends React.Component {
|
|
|
113
113
|
providerFactory: props.providerFactory,
|
|
114
114
|
scrollContainer: this.scrollContainer,
|
|
115
115
|
scrollContainerRef: this.scrollContainerRef,
|
|
116
|
-
wrapperElement: this.wrapperElementRef.current
|
|
116
|
+
wrapperElement: this.wrapperElementRef.current,
|
|
117
|
+
pluginHooks: props.pluginHooks
|
|
117
118
|
})));
|
|
118
119
|
}
|
|
119
120
|
}
|
|
@@ -7,7 +7,6 @@ import { injectIntl } from 'react-intl-next';
|
|
|
7
7
|
import { ClickAreaBlock } from '../../Addon';
|
|
8
8
|
import ContextPanel from '../../ContextPanel';
|
|
9
9
|
import PluginSlot from '../../PluginSlot';
|
|
10
|
-
import WidthEmitter from '../../WidthEmitter';
|
|
11
10
|
import { contentArea, editorContentAreaStyle, sidebarArea, ScrollContainer, editorContentGutterStyle, positionedOverEditorStyle } from './StyledComponents';
|
|
12
11
|
import messages from './messages';
|
|
13
12
|
export const CONTENT_AREA_TEST_ID = 'ak-editor-fp-content-area';
|
|
@@ -46,6 +45,7 @@ const Content = /*#__PURE__*/React.memo(props => {
|
|
|
46
45
|
providerFactory: props.providerFactory,
|
|
47
46
|
appearance: props.appearance,
|
|
48
47
|
items: props.contentComponents,
|
|
48
|
+
pluginHooks: props.pluginHooks,
|
|
49
49
|
contentArea: props.contentArea,
|
|
50
50
|
popupsMountPoint: props.popupsMountPoint,
|
|
51
51
|
popupsBoundariesElement: props.popupsBoundariesElement,
|
|
@@ -58,8 +58,6 @@ const Content = /*#__PURE__*/React.memo(props => {
|
|
|
58
58
|
css: sidebarArea
|
|
59
59
|
}, props.contextPanel || jsx(ContextPanel, {
|
|
60
60
|
visible: false
|
|
61
|
-
}))
|
|
62
|
-
editorView: props.editorView
|
|
63
|
-
}))));
|
|
61
|
+
})))));
|
|
64
62
|
});
|
|
65
63
|
export const FullPageContentArea = injectIntl(Content);
|
|
@@ -30,8 +30,13 @@ ScrollContainer.displayName = 'ScrollContainer';
|
|
|
30
30
|
// transition used to match scrollbar with config panel opening animation
|
|
31
31
|
// only use animation when opening as there is a bug with floating toolbars.
|
|
32
32
|
export const positionedOverEditorStyle = css`
|
|
33
|
-
padding:
|
|
33
|
+
padding-right: ${akEditorContextPanelWidth}px;
|
|
34
34
|
transition: padding 500ms ${akEditorSwoopCubicBezier};
|
|
35
|
+
|
|
36
|
+
.fabric-editor-popup-scroll-parent {
|
|
37
|
+
padding-left: ${akEditorContextPanelWidth}px;
|
|
38
|
+
transition: padding 500ms ${akEditorSwoopCubicBezier};
|
|
39
|
+
}
|
|
35
40
|
`;
|
|
36
41
|
export const contentArea = css`
|
|
37
42
|
display: flex;
|
|
@@ -1,19 +1,44 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { MobileAppearance } from '../AppearanceComponents/Mobile';
|
|
3
|
-
import
|
|
3
|
+
import PluginSlot from '../PluginSlot';
|
|
4
4
|
export default function Mobile({
|
|
5
5
|
editorView,
|
|
6
6
|
maxHeight,
|
|
7
7
|
persistScrollGutter,
|
|
8
8
|
editorDOMElement,
|
|
9
|
-
disabled
|
|
9
|
+
disabled,
|
|
10
|
+
contentComponents,
|
|
11
|
+
editorActions,
|
|
12
|
+
eventDispatcher,
|
|
13
|
+
dispatchAnalyticsEvent,
|
|
14
|
+
providerFactory,
|
|
15
|
+
appearance,
|
|
16
|
+
popupsMountPoint,
|
|
17
|
+
popupsBoundariesElement,
|
|
18
|
+
popupsScrollableElement,
|
|
19
|
+
innerRef,
|
|
20
|
+
pluginHooks
|
|
10
21
|
}) {
|
|
22
|
+
var _innerRef$current;
|
|
11
23
|
return /*#__PURE__*/React.createElement(MobileAppearance, {
|
|
24
|
+
ref: innerRef,
|
|
12
25
|
editorView: editorView || null,
|
|
13
26
|
maxHeight: maxHeight,
|
|
14
27
|
persistScrollGutter: persistScrollGutter,
|
|
15
28
|
editorDisabled: disabled
|
|
16
|
-
}, editorDOMElement,
|
|
17
|
-
editorView: editorView
|
|
29
|
+
}, editorDOMElement, /*#__PURE__*/React.createElement(PluginSlot, {
|
|
30
|
+
editorView: editorView,
|
|
31
|
+
editorActions: editorActions,
|
|
32
|
+
eventDispatcher: eventDispatcher,
|
|
33
|
+
dispatchAnalyticsEvent: dispatchAnalyticsEvent,
|
|
34
|
+
providerFactory: providerFactory,
|
|
35
|
+
appearance: appearance,
|
|
36
|
+
popupsMountPoint: popupsMountPoint,
|
|
37
|
+
popupsBoundariesElement: popupsBoundariesElement,
|
|
38
|
+
popupsScrollableElement: popupsScrollableElement,
|
|
39
|
+
containerElement: (_innerRef$current = innerRef === null || innerRef === void 0 ? void 0 : innerRef.current) !== null && _innerRef$current !== void 0 ? _innerRef$current : null,
|
|
40
|
+
disabled: !!disabled,
|
|
41
|
+
wrapperElement: null,
|
|
42
|
+
pluginHooks: pluginHooks
|
|
18
43
|
}));
|
|
19
44
|
}
|