@pie-lib/editable-html 13.0.8 → 13.1.0-beta.1
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 +0 -28
- package/lib/__tests__/editor-utils.test.js +164 -0
- package/lib/__tests__/editor-utils.test.js.map +1 -0
- package/lib/__tests__/serialization.test.js +241 -0
- package/lib/__tests__/serialization.test.js.map +1 -0
- package/lib/__tests__/utils.js +79 -0
- package/lib/__tests__/utils.js.map +1 -0
- package/lib/plugins/image/__tests__/component.test.js +96 -0
- package/lib/plugins/image/__tests__/component.test.js.map +1 -0
- package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +131 -0
- package/lib/plugins/image/__tests__/image-toolbar-logic.test.js.map +1 -0
- package/lib/plugins/image/__tests__/image-toolbar.test.js +21 -0
- package/lib/plugins/image/__tests__/image-toolbar.test.js.map +1 -0
- package/lib/plugins/image/__tests__/index.test.js +86 -0
- package/lib/plugins/image/__tests__/index.test.js.map +1 -0
- package/lib/plugins/image/__tests__/insert-image-handler.test.js +112 -0
- package/lib/plugins/image/__tests__/insert-image-handler.test.js.map +1 -0
- package/lib/plugins/image/__tests__/mock-change.js +22 -0
- package/lib/plugins/image/__tests__/mock-change.js.map +1 -0
- package/lib/plugins/list/__tests__/index.test.js +63 -0
- package/lib/plugins/list/__tests__/index.test.js.map +1 -0
- package/lib/plugins/math/__tests__/index.test.js +284 -0
- package/lib/plugins/math/__tests__/index.test.js.map +1 -0
- package/lib/plugins/media/__tests__/index.test.js +69 -0
- package/lib/plugins/media/__tests__/index.test.js.map +1 -0
- package/lib/plugins/respArea/drag-in-the-blank/__tests__/choice.test.js +93 -0
- package/lib/plugins/respArea/drag-in-the-blank/__tests__/choice.test.js.map +1 -0
- package/lib/plugins/respArea/math-templated/index.js +2 -2
- package/lib/plugins/respArea/math-templated/index.js.map +1 -1
- package/lib/plugins/table/__tests__/index.test.js +416 -0
- package/lib/plugins/table/__tests__/index.test.js.map +1 -0
- package/lib/plugins/table/__tests__/table-toolbar.test.js +81 -0
- package/lib/plugins/table/__tests__/table-toolbar.test.js.map +1 -0
- package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +153 -0
- package/lib/plugins/toolbar/__tests__/default-toolbar.test.js.map +1 -0
- package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +47 -0
- package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js.map +1 -0
- package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +112 -0
- package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js.map +1 -0
- package/lib/plugins/toolbar/__tests__/toolbar.test.js +118 -0
- package/lib/plugins/toolbar/__tests__/toolbar.test.js.map +1 -0
- package/lib/shared/alert-dialog.js +68 -0
- package/package.json +7 -7
- package/src/__tests__/utils.js +1 -1
- package/src/plugins/respArea/math-templated/index.jsx +1 -1
- package/LICENSE.md +0 -5
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _react2 = require("@testing-library/react");
|
|
9
|
+
var _slate = require("slate");
|
|
10
|
+
var _defaultToolbar = require("../default-toolbar");
|
|
11
|
+
// Mock the DoneButton component directly to avoid styled component issues
|
|
12
|
+
jest.mock('../done-button', function () {
|
|
13
|
+
return {
|
|
14
|
+
DoneButton: function DoneButton(props) {
|
|
15
|
+
return /*#__PURE__*/_react["default"].createElement("button", {
|
|
16
|
+
"aria-label": "Done",
|
|
17
|
+
onClick: props.onClick,
|
|
18
|
+
"data-testid": "done-button"
|
|
19
|
+
}, "Done");
|
|
20
|
+
},
|
|
21
|
+
RawDoneButton: function RawDoneButton(props) {
|
|
22
|
+
return /*#__PURE__*/_react["default"].createElement("button", {
|
|
23
|
+
"aria-label": "Done",
|
|
24
|
+
onClick: props.onClick,
|
|
25
|
+
className: "RawDoneButton"
|
|
26
|
+
}, "Done");
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
describe('default-toolbar', function () {
|
|
31
|
+
var onDone;
|
|
32
|
+
var onChange;
|
|
33
|
+
var getFocusedValue;
|
|
34
|
+
var defaultProps;
|
|
35
|
+
beforeEach(function () {
|
|
36
|
+
onDone = jest.fn();
|
|
37
|
+
onChange = jest.fn();
|
|
38
|
+
getFocusedValue = jest.fn();
|
|
39
|
+
defaultProps = {
|
|
40
|
+
classes: {},
|
|
41
|
+
value: _slate.Value.fromJSON({}),
|
|
42
|
+
plugins: [],
|
|
43
|
+
className: 'className',
|
|
44
|
+
onDone: onDone,
|
|
45
|
+
onChange: onChange,
|
|
46
|
+
getFocusedValue: getFocusedValue,
|
|
47
|
+
deletable: false,
|
|
48
|
+
showDone: true
|
|
49
|
+
};
|
|
50
|
+
});
|
|
51
|
+
describe('rendering', function () {
|
|
52
|
+
it('renders toolbar', function () {
|
|
53
|
+
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
54
|
+
deletable: false
|
|
55
|
+
}))),
|
|
56
|
+
container = _render.container;
|
|
57
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
58
|
+
});
|
|
59
|
+
it('renders with 1 plugin', function () {
|
|
60
|
+
var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
61
|
+
plugins: [{
|
|
62
|
+
toolbar: {
|
|
63
|
+
icon: /*#__PURE__*/_react["default"].createElement("span", null, "Icon1")
|
|
64
|
+
},
|
|
65
|
+
name: 'plugin-one'
|
|
66
|
+
}]
|
|
67
|
+
}))),
|
|
68
|
+
container = _render2.container;
|
|
69
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
70
|
+
// Should render plugin toolbar button
|
|
71
|
+
});
|
|
72
|
+
it('renders with 2 plugins', function () {
|
|
73
|
+
var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
74
|
+
plugins: [{
|
|
75
|
+
toolbar: {
|
|
76
|
+
icon: /*#__PURE__*/_react["default"].createElement("span", null, "Icon1")
|
|
77
|
+
},
|
|
78
|
+
name: 'plugin-one'
|
|
79
|
+
}, {
|
|
80
|
+
toolbar: {
|
|
81
|
+
icon: /*#__PURE__*/_react["default"].createElement("span", null, "Icon2")
|
|
82
|
+
},
|
|
83
|
+
name: 'plugin-two'
|
|
84
|
+
}]
|
|
85
|
+
}))),
|
|
86
|
+
container = _render3.container;
|
|
87
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
88
|
+
// Should render both plugin toolbar buttons
|
|
89
|
+
});
|
|
90
|
+
it('renders only enabled plugins when one is disabled', function () {
|
|
91
|
+
var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
92
|
+
pluginProps: {
|
|
93
|
+
'plugin-one': {
|
|
94
|
+
disabled: true
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
plugins: [{
|
|
98
|
+
toolbar: {
|
|
99
|
+
icon: /*#__PURE__*/_react["default"].createElement("span", null, "Icon1")
|
|
100
|
+
},
|
|
101
|
+
name: 'plugin-one'
|
|
102
|
+
}, {
|
|
103
|
+
toolbar: {
|
|
104
|
+
icon: /*#__PURE__*/_react["default"].createElement("span", null, "Icon2")
|
|
105
|
+
},
|
|
106
|
+
name: 'plugin-two'
|
|
107
|
+
}]
|
|
108
|
+
}))),
|
|
109
|
+
container = _render4.container;
|
|
110
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
111
|
+
// Only plugin-two should be rendered (plugin-one is disabled)
|
|
112
|
+
});
|
|
113
|
+
it('renders done button when not deletable', function () {
|
|
114
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
115
|
+
deletable: false
|
|
116
|
+
})));
|
|
117
|
+
expect(_react2.screen.getByLabelText('Done')).toBeInTheDocument();
|
|
118
|
+
});
|
|
119
|
+
it('does not render done button when deletable', function () {
|
|
120
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
121
|
+
deletable: true
|
|
122
|
+
})));
|
|
123
|
+
expect(_react2.screen.queryByLabelText('Done')).not.toBeInTheDocument();
|
|
124
|
+
});
|
|
125
|
+
it('does not render done button when showDone is false', function () {
|
|
126
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
127
|
+
showDone: false,
|
|
128
|
+
deletable: false
|
|
129
|
+
})));
|
|
130
|
+
expect(_react2.screen.queryByLabelText('Done')).not.toBeInTheDocument();
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
describe('interactions', function () {
|
|
134
|
+
it('calls onDone when done button is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
135
|
+
var doneButton;
|
|
136
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
137
|
+
while (1) switch (_context.prev = _context.next) {
|
|
138
|
+
case 0:
|
|
139
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_defaultToolbar.DefaultToolbar, (0, _extends2["default"])({}, defaultProps, {
|
|
140
|
+
deletable: false
|
|
141
|
+
})));
|
|
142
|
+
doneButton = _react2.screen.getByLabelText('Done');
|
|
143
|
+
_react2.fireEvent.click(doneButton);
|
|
144
|
+
expect(onDone).toHaveBeenCalled();
|
|
145
|
+
case 1:
|
|
146
|
+
case "end":
|
|
147
|
+
return _context.stop();
|
|
148
|
+
}
|
|
149
|
+
}, _callee);
|
|
150
|
+
})));
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
//# sourceMappingURL=default-toolbar.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-toolbar.test.js","names":["_react","_interopRequireDefault","require","_react2","_slate","_defaultToolbar","jest","mock","DoneButton","props","createElement","onClick","RawDoneButton","className","describe","onDone","onChange","getFocusedValue","defaultProps","beforeEach","fn","classes","value","Value","fromJSON","plugins","deletable","showDone","it","_render","render","DefaultToolbar","_extends2","container","expect","firstChild","toBeInTheDocument","_render2","toolbar","icon","name","_render3","_render4","pluginProps","disabled","screen","getByLabelText","queryByLabelText","not","_asyncToGenerator2","_regenerator","mark","_callee","doneButton","wrap","_context","prev","next","fireEvent","click","toHaveBeenCalled","stop"],"sources":["../../../../src/plugins/toolbar/__tests__/default-toolbar.test.jsx"],"sourcesContent":["import React from 'react';\nimport { fireEvent, render, screen } from '@testing-library/react';\nimport { Value } from 'slate';\nimport { DefaultToolbar } from '../default-toolbar';\n\n// Mock the DoneButton component directly to avoid styled component issues\njest.mock('../done-button', () => ({\n DoneButton: (props) => (\n <button aria-label=\"Done\" onClick={props.onClick} data-testid=\"done-button\">\n Done\n </button>\n ),\n RawDoneButton: (props) => (\n <button aria-label=\"Done\" onClick={props.onClick} className=\"RawDoneButton\">\n Done\n </button>\n ),\n}));\n\ndescribe('default-toolbar', () => {\n let onDone;\n let onChange;\n let getFocusedValue;\n let defaultProps;\n\n beforeEach(() => {\n onDone = jest.fn();\n onChange = jest.fn();\n getFocusedValue = jest.fn();\n\n defaultProps = {\n classes: {},\n value: Value.fromJSON({}),\n plugins: [],\n className: 'className',\n onDone,\n onChange,\n getFocusedValue,\n deletable: false,\n showDone: true,\n };\n });\n\n describe('rendering', () => {\n it('renders toolbar', () => {\n const { container } = render(<DefaultToolbar {...defaultProps} deletable={false} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with 1 plugin', () => {\n const { container } = render(\n <DefaultToolbar {...defaultProps} plugins={[{ toolbar: { icon: <span>Icon1</span> }, name: 'plugin-one' }]} />,\n );\n\n expect(container.firstChild).toBeInTheDocument();\n // Should render plugin toolbar button\n });\n\n it('renders with 2 plugins', () => {\n const { container } = render(\n <DefaultToolbar\n {...defaultProps}\n plugins={[\n { toolbar: { icon: <span>Icon1</span> }, name: 'plugin-one' },\n { toolbar: { icon: <span>Icon2</span> }, name: 'plugin-two' },\n ]}\n />,\n );\n\n expect(container.firstChild).toBeInTheDocument();\n // Should render both plugin toolbar buttons\n });\n\n it('renders only enabled plugins when one is disabled', () => {\n const { container } = render(\n <DefaultToolbar\n {...defaultProps}\n pluginProps={{\n 'plugin-one': {\n disabled: true,\n },\n }}\n plugins={[\n { toolbar: { icon: <span>Icon1</span> }, name: 'plugin-one' },\n { toolbar: { icon: <span>Icon2</span> }, name: 'plugin-two' },\n ]}\n />,\n );\n\n expect(container.firstChild).toBeInTheDocument();\n // Only plugin-two should be rendered (plugin-one is disabled)\n });\n\n it('renders done button when not deletable', () => {\n render(<DefaultToolbar {...defaultProps} deletable={false} />);\n\n expect(screen.getByLabelText('Done')).toBeInTheDocument();\n });\n\n it('does not render done button when deletable', () => {\n render(<DefaultToolbar {...defaultProps} deletable={true} />);\n\n expect(screen.queryByLabelText('Done')).not.toBeInTheDocument();\n });\n\n it('does not render done button when showDone is false', () => {\n render(<DefaultToolbar {...defaultProps} showDone={false} deletable={false} />);\n\n expect(screen.queryByLabelText('Done')).not.toBeInTheDocument();\n });\n });\n\n describe('interactions', () => {\n it('calls onDone when done button is clicked', async () => {\n render(<DefaultToolbar {...defaultProps} deletable={false} />);\n\n const doneButton = screen.getByLabelText('Done');\n fireEvent.click(doneButton);\n\n expect(onDone).toHaveBeenCalled();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _utils = require("../../../__tests__/utils");
|
|
5
|
+
var _slate = require("slate");
|
|
6
|
+
var _editorAndToolbar = require("../editor-and-toolbar");
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
9
|
+
var _react2 = require("@testing-library/react");
|
|
10
|
+
jest.mock('../toolbar', function () {
|
|
11
|
+
return function () {
|
|
12
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, "---- toolbar ------ ");
|
|
13
|
+
};
|
|
14
|
+
});
|
|
15
|
+
(0, _utils.mockIconButton)();
|
|
16
|
+
var log = (0, _debug["default"])('@pie-lib:editable-html:test:editor-and-toolbar');
|
|
17
|
+
describe('toolbar', function () {
|
|
18
|
+
var onDelete, classes;
|
|
19
|
+
beforeEach(function () {
|
|
20
|
+
onDelete = jest.fn();
|
|
21
|
+
classes = (0, _utils.classObject)('root', 'editorHolder', 'editorInFocus');
|
|
22
|
+
});
|
|
23
|
+
it('renders EditorAndToolbar component', function () {
|
|
24
|
+
var value = _slate.Value.fromJSON({});
|
|
25
|
+
Object.defineProperty(value, 'isFocused', {
|
|
26
|
+
get: jest.fn(function () {
|
|
27
|
+
return true;
|
|
28
|
+
})
|
|
29
|
+
});
|
|
30
|
+
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_editorAndToolbar.EditorAndToolbar, {
|
|
31
|
+
classes: classes,
|
|
32
|
+
value: value,
|
|
33
|
+
plugins: [],
|
|
34
|
+
onDone: jest.fn(),
|
|
35
|
+
onChange: jest.fn()
|
|
36
|
+
}, "children")),
|
|
37
|
+
container = _render.container;
|
|
38
|
+
|
|
39
|
+
// Verify component rendered
|
|
40
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
41
|
+
// Verify toolbar is present
|
|
42
|
+
expect(_react2.screen.getByText('---- toolbar ------')).toBeInTheDocument();
|
|
43
|
+
// Verify children are rendered
|
|
44
|
+
expect(_react2.screen.getByText('children')).toBeInTheDocument();
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=editor-and-toolbar.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-and-toolbar.test.js","names":["_utils","require","_slate","_editorAndToolbar","_react","_interopRequireDefault","_debug","_react2","jest","mock","createElement","mockIconButton","log","debug","describe","onDelete","classes","beforeEach","fn","classObject","it","value","Value","fromJSON","Object","defineProperty","get","_render","render","EditorAndToolbar","plugins","onDone","onChange","container","expect","firstChild","toBeInTheDocument","screen","getByText"],"sources":["../../../../src/plugins/toolbar/__tests__/editor-and-toolbar.test.jsx"],"sourcesContent":["import { classObject, mockIconButton } from '../../../__tests__/utils';\n\nimport { Value } from 'slate';\nimport { EditorAndToolbar } from '../editor-and-toolbar';\nimport React from 'react';\nimport debug from 'debug';\nimport { render, screen } from '@testing-library/react';\n\njest.mock('../toolbar', () => () => <div>---- toolbar ------ </div>);\n\nmockIconButton();\n\nconst log = debug('@pie-lib:editable-html:test:editor-and-toolbar');\n\ndescribe('toolbar', () => {\n let onDelete, classes;\n\n beforeEach(() => {\n onDelete = jest.fn();\n classes = classObject('root', 'editorHolder', 'editorInFocus');\n });\n\n it('renders EditorAndToolbar component', () => {\n const value = Value.fromJSON({});\n Object.defineProperty(value, 'isFocused', { get: jest.fn(() => true) });\n\n const { container } = render(\n <EditorAndToolbar classes={classes} value={value} plugins={[]} onDone={jest.fn()} onChange={jest.fn()}>\n children\n </EditorAndToolbar>,\n );\n\n // Verify component rendered\n expect(container.firstChild).toBeInTheDocument();\n // Verify toolbar is present\n expect(screen.getByText('---- toolbar ------')).toBeInTheDocument();\n // Verify children are rendered\n expect(screen.getByText('children')).toBeInTheDocument();\n });\n});\n"],"mappings":";;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAEAO,IAAI,CAACC,IAAI,CAAC,YAAY,EAAE;EAAA,OAAM;IAAA,oBAAML,MAAA,YAAAM,aAAA,cAAK,sBAAyB,CAAC;EAAA;AAAA,EAAC;AAEpE,IAAAC,qBAAc,EAAC,CAAC;AAEhB,IAAMC,GAAG,GAAG,IAAAC,iBAAK,EAAC,gDAAgD,CAAC;AAEnEC,QAAQ,CAAC,SAAS,EAAE,YAAM;EACxB,IAAIC,QAAQ,EAAEC,OAAO;EAErBC,UAAU,CAAC,YAAM;IACfF,QAAQ,GAAGP,IAAI,CAACU,EAAE,CAAC,CAAC;IACpBF,OAAO,GAAG,IAAAG,kBAAW,EAAC,MAAM,EAAE,cAAc,EAAE,eAAe,CAAC;EAChE,CAAC,CAAC;EAEFC,EAAE,CAAC,oCAAoC,EAAE,YAAM;IAC7C,IAAMC,KAAK,GAAGC,YAAK,CAACC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChCC,MAAM,CAACC,cAAc,CAACJ,KAAK,EAAE,WAAW,EAAE;MAAEK,GAAG,EAAElB,IAAI,CAACU,EAAE,CAAC;QAAA,OAAM,IAAI;MAAA;IAAE,CAAC,CAAC;IAEvE,IAAAS,OAAA,GAAsB,IAAAC,cAAM,eAC1BxB,MAAA,YAAAM,aAAA,CAACP,iBAAA,CAAA0B,gBAAgB;QAACb,OAAO,EAAEA,OAAQ;QAACK,KAAK,EAAEA,KAAM;QAACS,OAAO,EAAE,EAAG;QAACC,MAAM,EAAEvB,IAAI,CAACU,EAAE,CAAC,CAAE;QAACc,QAAQ,EAAExB,IAAI,CAACU,EAAE,CAAC;MAAE,GAAC,UAErF,CACpB,CAAC;MAJOe,SAAS,GAAAN,OAAA,CAATM,SAAS;;IAMjB;IACAC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAChD;IACAF,MAAM,CAACG,cAAM,CAACC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAACF,iBAAiB,CAAC,CAAC;IACnE;IACAF,MAAM,CAACG,cAAM,CAACC,SAAS,CAAC,UAAU,CAAC,CAAC,CAACF,iBAAiB,CAAC,CAAC;EAC1D,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _utils = require("../../../__tests__/utils");
|
|
7
|
+
var _toolbarButtons = require("../toolbar-buttons");
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _react2 = require("@testing-library/react");
|
|
10
|
+
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
11
|
+
// Mock IconButton
|
|
12
|
+
jest.mock('@mui/material/IconButton', function () {
|
|
13
|
+
return function IconButton(_ref) {
|
|
14
|
+
var children = _ref.children,
|
|
15
|
+
onClick = _ref.onClick,
|
|
16
|
+
className = _ref.className;
|
|
17
|
+
return /*#__PURE__*/_react["default"].createElement("button", {
|
|
18
|
+
onClick: onClick,
|
|
19
|
+
className: className,
|
|
20
|
+
"data-testid": "icon-button"
|
|
21
|
+
}, children);
|
|
22
|
+
};
|
|
23
|
+
});
|
|
24
|
+
describe('Button', function () {
|
|
25
|
+
var onClick = jest.fn();
|
|
26
|
+
beforeEach(function () {
|
|
27
|
+
onClick.mockClear();
|
|
28
|
+
});
|
|
29
|
+
it('renders with children', function () {
|
|
30
|
+
var classes = (0, _utils.classObject)('root');
|
|
31
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawButton, {
|
|
32
|
+
onClick: onClick,
|
|
33
|
+
classes: classes
|
|
34
|
+
}, "children"));
|
|
35
|
+
expect(_react2.screen.getByText('children')).toBeInTheDocument();
|
|
36
|
+
});
|
|
37
|
+
it('calls onClick when clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
38
|
+
var user, classes, button;
|
|
39
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
40
|
+
while (1) switch (_context.prev = _context.next) {
|
|
41
|
+
case 0:
|
|
42
|
+
user = _userEvent["default"].setup();
|
|
43
|
+
classes = (0, _utils.classObject)('root');
|
|
44
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawButton, {
|
|
45
|
+
onClick: onClick,
|
|
46
|
+
classes: classes
|
|
47
|
+
}, "children"));
|
|
48
|
+
button = _react2.screen.getByText('children');
|
|
49
|
+
_context.next = 1;
|
|
50
|
+
return user.click(button);
|
|
51
|
+
case 1:
|
|
52
|
+
expect(onClick).toHaveBeenCalled();
|
|
53
|
+
case 2:
|
|
54
|
+
case "end":
|
|
55
|
+
return _context.stop();
|
|
56
|
+
}
|
|
57
|
+
}, _callee);
|
|
58
|
+
})));
|
|
59
|
+
});
|
|
60
|
+
describe('MarkButton', function () {
|
|
61
|
+
var classes = (0, _utils.classObject)('button', 'root', 'active');
|
|
62
|
+
var onToggle = jest.fn();
|
|
63
|
+
beforeEach(function () {
|
|
64
|
+
onToggle.mockClear();
|
|
65
|
+
});
|
|
66
|
+
it('renders when not active', function () {
|
|
67
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawMarkButton, {
|
|
68
|
+
mark: 'i',
|
|
69
|
+
onToggle: onToggle,
|
|
70
|
+
active: false,
|
|
71
|
+
classes: classes
|
|
72
|
+
}, "children"));
|
|
73
|
+
var button = _react2.screen.getByText('children');
|
|
74
|
+
expect(button).toBeInTheDocument();
|
|
75
|
+
expect(button).toHaveAttribute('aria-pressed', 'false');
|
|
76
|
+
});
|
|
77
|
+
it('renders when active', function () {
|
|
78
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawMarkButton, {
|
|
79
|
+
mark: 'i',
|
|
80
|
+
onToggle: onToggle,
|
|
81
|
+
active: true,
|
|
82
|
+
classes: classes
|
|
83
|
+
}, "children"));
|
|
84
|
+
var button = _react2.screen.getByText('children');
|
|
85
|
+
expect(button).toBeInTheDocument();
|
|
86
|
+
expect(button).toHaveAttribute('aria-pressed', 'true');
|
|
87
|
+
});
|
|
88
|
+
it('calls onToggle when clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
89
|
+
var user, button;
|
|
90
|
+
return _regenerator["default"].wrap(function (_context2) {
|
|
91
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
92
|
+
case 0:
|
|
93
|
+
user = _userEvent["default"].setup();
|
|
94
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbarButtons.RawMarkButton, {
|
|
95
|
+
mark: 'i',
|
|
96
|
+
onToggle: onToggle,
|
|
97
|
+
active: false,
|
|
98
|
+
classes: classes
|
|
99
|
+
}, "children"));
|
|
100
|
+
button = _react2.screen.getByText('children');
|
|
101
|
+
_context2.next = 1;
|
|
102
|
+
return user.click(button);
|
|
103
|
+
case 1:
|
|
104
|
+
expect(onToggle).toHaveBeenCalled();
|
|
105
|
+
case 2:
|
|
106
|
+
case "end":
|
|
107
|
+
return _context2.stop();
|
|
108
|
+
}
|
|
109
|
+
}, _callee2);
|
|
110
|
+
})));
|
|
111
|
+
});
|
|
112
|
+
//# sourceMappingURL=toolbar-buttons.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar-buttons.test.js","names":["_utils","require","_toolbarButtons","_react","_interopRequireDefault","_react2","_userEvent","jest","mock","IconButton","_ref","children","onClick","className","createElement","describe","fn","beforeEach","mockClear","it","classes","classObject","render","RawButton","expect","screen","getByText","toBeInTheDocument","_asyncToGenerator2","_regenerator","mark","_callee","user","button","wrap","_context","prev","next","userEvent","setup","click","toHaveBeenCalled","stop","onToggle","RawMarkButton","active","toHaveAttribute","_callee2","_context2"],"sources":["../../../../src/plugins/toolbar/__tests__/toolbar-buttons.test.jsx"],"sourcesContent":["import { classObject } from '../../../__tests__/utils';\nimport { RawButton, RawMarkButton } from '../toolbar-buttons';\nimport React from 'react';\nimport { render, screen } from '@testing-library/react';\nimport userEvent from '@testing-library/user-event';\n\n// Mock IconButton\njest.mock('@mui/material/IconButton', () => {\n return function IconButton({ children, onClick, className }) {\n return (\n <button onClick={onClick} className={className} data-testid=\"icon-button\">\n {children}\n </button>\n );\n };\n});\n\ndescribe('Button', () => {\n const onClick = jest.fn();\n\n beforeEach(() => {\n onClick.mockClear();\n });\n\n it('renders with children', () => {\n const classes = classObject('root');\n render(\n <RawButton onClick={onClick} classes={classes}>\n children\n </RawButton>,\n );\n\n expect(screen.getByText('children')).toBeInTheDocument();\n });\n\n it('calls onClick when clicked', async () => {\n const user = userEvent.setup();\n const classes = classObject('root');\n render(\n <RawButton onClick={onClick} classes={classes}>\n children\n </RawButton>,\n );\n\n const button = screen.getByText('children');\n await user.click(button);\n\n expect(onClick).toHaveBeenCalled();\n });\n});\n\ndescribe('MarkButton', () => {\n const classes = classObject('button', 'root', 'active');\n const onToggle = jest.fn();\n\n beforeEach(() => {\n onToggle.mockClear();\n });\n\n it('renders when not active', () => {\n render(\n <RawMarkButton mark={'i'} onToggle={onToggle} active={false} classes={classes}>\n children\n </RawMarkButton>,\n );\n\n const button = screen.getByText('children');\n expect(button).toBeInTheDocument();\n expect(button).toHaveAttribute('aria-pressed', 'false');\n });\n\n it('renders when active', () => {\n render(\n <RawMarkButton mark={'i'} onToggle={onToggle} active={true} classes={classes}>\n children\n </RawMarkButton>,\n );\n\n const button = screen.getByText('children');\n expect(button).toBeInTheDocument();\n expect(button).toHaveAttribute('aria-pressed', 'true');\n });\n\n it('calls onToggle when clicked', async () => {\n const user = userEvent.setup();\n render(\n <RawMarkButton mark={'i'} onToggle={onToggle} active={false} classes={classes}>\n children\n </RawMarkButton>,\n );\n\n const button = screen.getByText('children');\n await user.click(button);\n\n expect(onToggle).toHaveBeenCalled();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
5
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
6
|
+
var _utils = require("../../../__tests__/utils");
|
|
7
|
+
var _slate = require("slate");
|
|
8
|
+
var _toolbar = require("../toolbar");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _react2 = require("@testing-library/react");
|
|
11
|
+
var _excluded = ["children", "onClick", "buttonRef"];
|
|
12
|
+
(0, _utils.mockMathInput)();
|
|
13
|
+
jest.mock('@mui/material/IconButton', function () {
|
|
14
|
+
return function (props) {
|
|
15
|
+
var children = props.children,
|
|
16
|
+
onClick = props.onClick,
|
|
17
|
+
buttonRef = props.buttonRef,
|
|
18
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
19
|
+
return /*#__PURE__*/_react["default"].createElement("button", (0, _extends2["default"])({
|
|
20
|
+
onClick: onClick
|
|
21
|
+
}, rest), children);
|
|
22
|
+
};
|
|
23
|
+
});
|
|
24
|
+
var node = _slate.Inline.fromJSON({
|
|
25
|
+
type: 'i'
|
|
26
|
+
});
|
|
27
|
+
var parentNode = _slate.Inline.fromJSON({
|
|
28
|
+
type: 'i'
|
|
29
|
+
});
|
|
30
|
+
var value;
|
|
31
|
+
describe('toolbar', function () {
|
|
32
|
+
var onDelete, classes, document, toolbarOpts;
|
|
33
|
+
beforeEach(function () {
|
|
34
|
+
onDelete = jest.fn();
|
|
35
|
+
toolbarOpts = {
|
|
36
|
+
position: 'bottom',
|
|
37
|
+
alwaysVisible: false
|
|
38
|
+
};
|
|
39
|
+
value = _slate.Value.fromJSON({});
|
|
40
|
+
document = {
|
|
41
|
+
getClosestInline: jest.fn().mockReturnValue(node),
|
|
42
|
+
getParent: jest.fn().mockReturnValue()
|
|
43
|
+
};
|
|
44
|
+
Object.defineProperties(value, {
|
|
45
|
+
isCollapsed: {
|
|
46
|
+
get: jest.fn(function () {
|
|
47
|
+
return true;
|
|
48
|
+
})
|
|
49
|
+
},
|
|
50
|
+
startKey: {
|
|
51
|
+
get: jest.fn(function () {
|
|
52
|
+
return '1';
|
|
53
|
+
})
|
|
54
|
+
},
|
|
55
|
+
document: {
|
|
56
|
+
get: jest.fn(function () {
|
|
57
|
+
return document;
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
classes = (0, _utils.classObject)('iconRoot', 'inline', 'toolbar', 'focused', 'shared', 'inline', 'pie-toolbar');
|
|
62
|
+
});
|
|
63
|
+
test('renders custom toolbar', function () {
|
|
64
|
+
var plugins = [{
|
|
65
|
+
deleteNode: function deleteNode() {
|
|
66
|
+
return true;
|
|
67
|
+
},
|
|
68
|
+
toolbar: {
|
|
69
|
+
supports: function supports() {
|
|
70
|
+
return true;
|
|
71
|
+
},
|
|
72
|
+
customToolbar: function customToolbar() {
|
|
73
|
+
return function () {
|
|
74
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, "custom toolbar content");
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}];
|
|
79
|
+
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbar.Toolbar, {
|
|
80
|
+
toolbarOpts: toolbarOpts,
|
|
81
|
+
plugins: plugins,
|
|
82
|
+
classes: classes,
|
|
83
|
+
value: value,
|
|
84
|
+
onDone: jest.fn(),
|
|
85
|
+
onChange: jest.fn()
|
|
86
|
+
})),
|
|
87
|
+
container = _render.container;
|
|
88
|
+
|
|
89
|
+
// Verify the custom toolbar content is rendered
|
|
90
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
91
|
+
expect(_react2.screen.getByText('custom toolbar content')).toBeInTheDocument();
|
|
92
|
+
});
|
|
93
|
+
describe('default', function () {
|
|
94
|
+
var plugins;
|
|
95
|
+
beforeEach(function () {
|
|
96
|
+
plugins = [];
|
|
97
|
+
});
|
|
98
|
+
test('renders default toolbar', function () {
|
|
99
|
+
var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_toolbar.Toolbar, {
|
|
100
|
+
toolbarOpts: toolbarOpts,
|
|
101
|
+
plugins: plugins,
|
|
102
|
+
classes: classes,
|
|
103
|
+
value: value,
|
|
104
|
+
onDone: jest.fn(),
|
|
105
|
+
onChange: jest.fn()
|
|
106
|
+
})),
|
|
107
|
+
container = _render2.container;
|
|
108
|
+
|
|
109
|
+
// Verify the toolbar is rendered
|
|
110
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
111
|
+
|
|
112
|
+
// The default toolbar should render the DefaultToolbar component
|
|
113
|
+
// which includes a Done button
|
|
114
|
+
expect(_react2.screen.getByLabelText('Done')).toBeInTheDocument();
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
//# sourceMappingURL=toolbar.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.test.js","names":["_utils","require","_slate","_toolbar","_react","_interopRequireDefault","_react2","_excluded","mockMathInput","jest","mock","props","children","onClick","buttonRef","rest","_objectWithoutProperties2","createElement","_extends2","node","Inline","fromJSON","type","parentNode","value","describe","onDelete","classes","document","toolbarOpts","beforeEach","fn","position","alwaysVisible","Value","getClosestInline","mockReturnValue","getParent","Object","defineProperties","isCollapsed","get","startKey","classObject","test","plugins","deleteNode","toolbar","supports","customToolbar","_render","render","Toolbar","onDone","onChange","container","expect","firstChild","toBeInTheDocument","screen","getByText","_render2","getByLabelText"],"sources":["../../../../src/plugins/toolbar/__tests__/toolbar.test.jsx"],"sourcesContent":["import { classObject, mockMathInput } from '../../../__tests__/utils';\nimport { Inline, Value } from 'slate';\nimport { Toolbar } from '../toolbar';\nimport React from 'react';\nimport { render, screen } from '@testing-library/react';\n\nmockMathInput();\n\njest.mock('@mui/material/IconButton', () => {\n return (props) => {\n const { children, onClick, buttonRef, ...rest } = props;\n return (\n <button onClick={onClick} {...rest}>\n {children}\n </button>\n );\n };\n});\n\nlet node = Inline.fromJSON({ type: 'i' });\nlet parentNode = Inline.fromJSON({\n type: 'i',\n});\nlet value;\n\ndescribe('toolbar', () => {\n let onDelete, classes, document, toolbarOpts;\n\n beforeEach(() => {\n onDelete = jest.fn();\n\n toolbarOpts = {\n position: 'bottom',\n alwaysVisible: false,\n };\n\n value = Value.fromJSON({});\n document = {\n getClosestInline: jest.fn().mockReturnValue(node),\n getParent: jest.fn().mockReturnValue(),\n };\n\n Object.defineProperties(value, {\n isCollapsed: {\n get: jest.fn(() => true),\n },\n startKey: {\n get: jest.fn(() => '1'),\n },\n document: {\n get: jest.fn(() => document),\n },\n });\n\n classes = classObject('iconRoot', 'inline', 'toolbar', 'focused', 'shared', 'inline', 'pie-toolbar');\n });\n\n test('renders custom toolbar', () => {\n const plugins = [\n {\n deleteNode: () => true,\n toolbar: {\n supports: () => true,\n customToolbar: () => () => <div>custom toolbar content</div>,\n },\n },\n ];\n\n const { container } = render(\n <Toolbar\n toolbarOpts={toolbarOpts}\n plugins={plugins}\n classes={classes}\n value={value}\n onDone={jest.fn()}\n onChange={jest.fn()}\n />,\n );\n\n // Verify the custom toolbar content is rendered\n expect(container.firstChild).toBeInTheDocument();\n expect(screen.getByText('custom toolbar content')).toBeInTheDocument();\n });\n\n describe('default', () => {\n let plugins;\n\n beforeEach(() => {\n plugins = [];\n });\n\n test('renders default toolbar', () => {\n const { container } = render(\n <Toolbar\n toolbarOpts={toolbarOpts}\n plugins={plugins}\n classes={classes}\n value={value}\n onDone={jest.fn()}\n onChange={jest.fn()}\n />,\n );\n\n // Verify the toolbar is rendered\n expect(container.firstChild).toBeInTheDocument();\n\n // The default toolbar should render the DefaultToolbar component\n // which includes a Done button\n expect(screen.getByLabelText('Done')).toBeInTheDocument();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _material = require("@mui/material");
|
|
11
|
+
var _styles = require("@mui/material/styles");
|
|
12
|
+
var StyledDialogTitle = (0, _styles.styled)(_material.DialogTitle)(function () {
|
|
13
|
+
return {
|
|
14
|
+
fontSize: 'max(1.25rem, 18px)'
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
var StyledDialogContentText = (0, _styles.styled)(_material.DialogContentText)(function () {
|
|
18
|
+
return {
|
|
19
|
+
fontSize: 'max(1rem, 14px)'
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
var AlertDialog = function AlertDialog(_ref) {
|
|
23
|
+
var text = _ref.text,
|
|
24
|
+
title = _ref.title,
|
|
25
|
+
onClose = _ref.onClose,
|
|
26
|
+
onConfirm = _ref.onConfirm,
|
|
27
|
+
open = _ref.open,
|
|
28
|
+
onCloseText = _ref.onCloseText,
|
|
29
|
+
onConfirmText = _ref.onConfirmText,
|
|
30
|
+
disableAutoFocus = _ref.disableAutoFocus,
|
|
31
|
+
disableEnforceFocus = _ref.disableEnforceFocus,
|
|
32
|
+
disableRestoreFocus = _ref.disableRestoreFocus;
|
|
33
|
+
return /*#__PURE__*/_react["default"].createElement(_material.Dialog, {
|
|
34
|
+
open: open,
|
|
35
|
+
disableAutoFocus: disableAutoFocus,
|
|
36
|
+
disableEnforceFocus: disableEnforceFocus,
|
|
37
|
+
disableRestoreFocus: disableRestoreFocus,
|
|
38
|
+
onClose: onClose
|
|
39
|
+
}, title && /*#__PURE__*/_react["default"].createElement(StyledDialogTitle, null, title), text && /*#__PURE__*/_react["default"].createElement(_material.DialogContent, null, /*#__PURE__*/_react["default"].createElement(StyledDialogContentText, null, text)), /*#__PURE__*/_react["default"].createElement(_material.DialogActions, null, onClose && /*#__PURE__*/_react["default"].createElement(_material.Button, {
|
|
40
|
+
onClick: onClose,
|
|
41
|
+
color: "primary"
|
|
42
|
+
}, onCloseText), onConfirm && /*#__PURE__*/_react["default"].createElement(_material.Button, {
|
|
43
|
+
autoFocus: true,
|
|
44
|
+
onClick: onConfirm,
|
|
45
|
+
color: "primary"
|
|
46
|
+
}, onConfirmText)));
|
|
47
|
+
};
|
|
48
|
+
AlertDialog.defaultProps = {
|
|
49
|
+
onCloseText: 'CANCEL',
|
|
50
|
+
onConfirmText: 'OK',
|
|
51
|
+
disableAutoFocus: false,
|
|
52
|
+
disableEnforceFocus: false,
|
|
53
|
+
disableRestoreFocus: false
|
|
54
|
+
};
|
|
55
|
+
AlertDialog.propTypes = {
|
|
56
|
+
text: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
57
|
+
title: _propTypes["default"].string,
|
|
58
|
+
onClose: _propTypes["default"].func,
|
|
59
|
+
onConfirm: _propTypes["default"].func,
|
|
60
|
+
open: _propTypes["default"].bool,
|
|
61
|
+
onConfirmText: _propTypes["default"].string,
|
|
62
|
+
onCloseText: _propTypes["default"].string,
|
|
63
|
+
disableAutoFocus: _propTypes["default"].bool,
|
|
64
|
+
disableEnforceFocus: _propTypes["default"].bool,
|
|
65
|
+
disableRestoreFocus: _propTypes["default"].bool
|
|
66
|
+
};
|
|
67
|
+
var _default = exports["default"] = AlertDialog;
|
|
68
|
+
//# sourceMappingURL=alert-dialog.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-lib/editable-html",
|
|
3
|
-
"version": "13.0.
|
|
3
|
+
"version": "13.1.0-beta.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
"@emotion/styled": "^11.14.1",
|
|
16
16
|
"@mui/icons-material": "^7.3.4",
|
|
17
17
|
"@mui/material": "^7.3.4",
|
|
18
|
-
"@pie-lib/drag": "^4.0.
|
|
19
|
-
"@pie-lib/math-input": "^
|
|
20
|
-
"@pie-lib/math-rendering": "^5.
|
|
21
|
-
"@pie-lib/math-toolbar": "^3.0.
|
|
22
|
-
"@pie-lib/render-ui": "^6.1.
|
|
18
|
+
"@pie-lib/drag": "^4.0.2",
|
|
19
|
+
"@pie-lib/math-input-mathlive": "^1.0.7",
|
|
20
|
+
"@pie-lib/math-rendering": "^5.0.2",
|
|
21
|
+
"@pie-lib/math-toolbar": "^3.1.0-beta.2",
|
|
22
|
+
"@pie-lib/render-ui": "^6.1.0",
|
|
23
23
|
"change-case": "^3.0.2",
|
|
24
24
|
"classnames": "^2.2.6",
|
|
25
25
|
"debug": "^4.1.1",
|
|
@@ -51,6 +51,6 @@
|
|
|
51
51
|
"publishConfig": {
|
|
52
52
|
"access": "public"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "433bcb776c2975739e7417f133d31cd996164116",
|
|
55
55
|
"scripts": {}
|
|
56
56
|
}
|
package/src/__tests__/utils.js
CHANGED
|
@@ -28,7 +28,7 @@ export function mockIconButton() {
|
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
30
|
export function mockMathInput() {
|
|
31
|
-
jest.mock('@pie-lib/math-input', () => ({
|
|
31
|
+
jest.mock('@pie-lib/math-input-mathlive', () => ({
|
|
32
32
|
addBrackets: jest.fn((s) => s),
|
|
33
33
|
removeBrackets: jest.fn((s) => s),
|
|
34
34
|
...mockComponents('Keypad', 'MathQuillInput', 'EditableMathInput', 'HorizontalKeypad'),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { styled } from '@mui/material/styles';
|
|
4
|
-
import { mq } from '@pie-lib/math-input';
|
|
4
|
+
import { mq } from '@pie-lib/math-input-mathlive';
|
|
5
5
|
|
|
6
6
|
const StyledSpanContainer = styled('span')(() => ({
|
|
7
7
|
display: 'inline-flex',
|
package/LICENSE.md
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
Copyright 2019 CoreSpring Inc
|
|
2
|
-
|
|
3
|
-
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
|
4
|
-
|
|
5
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|