@pie-lib/editable-html 12.1.0-next.0 → 12.1.0-next.2
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 +40 -0
- package/package.json +7 -7
- package/lib/__tests__/editor-utils.test.js +0 -164
- package/lib/__tests__/serialization.test.js +0 -242
- package/lib/__tests__/utils.js +0 -79
- package/lib/block-tags.js +0 -24
- package/lib/block-tags.js.map +0 -1
- package/lib/constants.js +0 -11
- package/lib/constants.js.map +0 -1
- package/lib/editor.js +0 -1224
- package/lib/editor.js.map +0 -1
- package/lib/index.js +0 -208
- package/lib/index.js.map +0 -1
- package/lib/parse-html.js +0 -16
- package/lib/parse-html.js.map +0 -1
- package/lib/plugins/characters/custom-popper.js +0 -57
- package/lib/plugins/characters/custom-popper.js.map +0 -1
- package/lib/plugins/characters/index.js +0 -265
- package/lib/plugins/characters/index.js.map +0 -1
- package/lib/plugins/characters/utils.js +0 -378
- package/lib/plugins/characters/utils.js.map +0 -1
- package/lib/plugins/css/icons/index.js +0 -25
- package/lib/plugins/css/icons/index.js.map +0 -1
- package/lib/plugins/css/index.js +0 -338
- package/lib/plugins/css/index.js.map +0 -1
- package/lib/plugins/customPlugin/index.js +0 -98
- package/lib/plugins/customPlugin/index.js.map +0 -1
- package/lib/plugins/html/icons/index.js +0 -30
- package/lib/plugins/html/icons/index.js.map +0 -1
- package/lib/plugins/html/index.js +0 -71
- package/lib/plugins/html/index.js.map +0 -1
- package/lib/plugins/image/__tests__/component.test.js +0 -96
- package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +0 -131
- package/lib/plugins/image/__tests__/image-toolbar.test.js +0 -22
- package/lib/plugins/image/__tests__/index.test.js +0 -90
- package/lib/plugins/image/__tests__/insert-image-handler.test.js +0 -112
- package/lib/plugins/image/__tests__/mock-change.js +0 -22
- package/lib/plugins/image/alt-dialog.js +0 -100
- package/lib/plugins/image/alt-dialog.js.map +0 -1
- package/lib/plugins/image/component.js +0 -343
- package/lib/plugins/image/component.js.map +0 -1
- package/lib/plugins/image/image-toolbar.js +0 -137
- package/lib/plugins/image/image-toolbar.js.map +0 -1
- package/lib/plugins/image/index.js +0 -223
- package/lib/plugins/image/index.js.map +0 -1
- package/lib/plugins/image/insert-image-handler.js +0 -140
- package/lib/plugins/image/insert-image-handler.js.map +0 -1
- package/lib/plugins/index.js +0 -342
- package/lib/plugins/index.js.map +0 -1
- package/lib/plugins/list/__tests__/index.test.js +0 -64
- package/lib/plugins/list/index.js +0 -288
- package/lib/plugins/list/index.js.map +0 -1
- package/lib/plugins/math/__tests__/index.test.js +0 -284
- package/lib/plugins/math/index.js +0 -402
- package/lib/plugins/math/index.js.map +0 -1
- package/lib/plugins/media/__tests__/index.test.js +0 -69
- package/lib/plugins/media/index.js +0 -330
- package/lib/plugins/media/index.js.map +0 -1
- package/lib/plugins/media/media-dialog.js +0 -594
- package/lib/plugins/media/media-dialog.js.map +0 -1
- package/lib/plugins/media/media-toolbar.js +0 -76
- package/lib/plugins/media/media-toolbar.js.map +0 -1
- package/lib/plugins/media/media-wrapper.js +0 -64
- package/lib/plugins/media/media-wrapper.js.map +0 -1
- package/lib/plugins/rendering/index.js +0 -36
- package/lib/plugins/rendering/index.js.map +0 -1
- package/lib/plugins/respArea/drag-in-the-blank/choice.js +0 -271
- package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +0 -1
- package/lib/plugins/respArea/drag-in-the-blank/index.js +0 -55
- package/lib/plugins/respArea/drag-in-the-blank/index.js.map +0 -1
- package/lib/plugins/respArea/drag-in-the-blank/utils.js +0 -38
- package/lib/plugins/respArea/drag-in-the-blank/utils.js.map +0 -1
- package/lib/plugins/respArea/explicit-constructed-response/index.js +0 -50
- package/lib/plugins/respArea/explicit-constructed-response/index.js.map +0 -1
- package/lib/plugins/respArea/icons/index.js +0 -72
- package/lib/plugins/respArea/icons/index.js.map +0 -1
- package/lib/plugins/respArea/index.js +0 -287
- package/lib/plugins/respArea/index.js.map +0 -1
- package/lib/plugins/respArea/inline-dropdown/index.js +0 -67
- package/lib/plugins/respArea/inline-dropdown/index.js.map +0 -1
- package/lib/plugins/respArea/math-templated/index.js +0 -112
- package/lib/plugins/respArea/math-templated/index.js.map +0 -1
- package/lib/plugins/respArea/utils.js +0 -95
- package/lib/plugins/respArea/utils.js.map +0 -1
- package/lib/plugins/table/CustomTablePlugin.js +0 -116
- package/lib/plugins/table/CustomTablePlugin.js.map +0 -1
- package/lib/plugins/table/__tests__/index.test.js +0 -416
- package/lib/plugins/table/__tests__/table-toolbar.test.js +0 -81
- package/lib/plugins/table/icons/index.js +0 -55
- package/lib/plugins/table/icons/index.js.map +0 -1
- package/lib/plugins/table/index.js +0 -413
- package/lib/plugins/table/index.js.map +0 -1
- package/lib/plugins/table/table-toolbar.js +0 -138
- package/lib/plugins/table/table-toolbar.js.map +0 -1
- package/lib/plugins/textAlign/icons/index.js +0 -187
- package/lib/plugins/textAlign/icons/index.js.map +0 -1
- package/lib/plugins/textAlign/index.js +0 -26
- package/lib/plugins/textAlign/index.js.map +0 -1
- package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +0 -154
- package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +0 -47
- package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +0 -112
- package/lib/plugins/toolbar/__tests__/toolbar.test.js +0 -118
- package/lib/plugins/toolbar/default-toolbar.js +0 -180
- package/lib/plugins/toolbar/default-toolbar.js.map +0 -1
- package/lib/plugins/toolbar/done-button.js +0 -35
- package/lib/plugins/toolbar/done-button.js.map +0 -1
- package/lib/plugins/toolbar/editor-and-toolbar.js +0 -258
- package/lib/plugins/toolbar/editor-and-toolbar.js.map +0 -1
- package/lib/plugins/toolbar/index.js +0 -29
- package/lib/plugins/toolbar/index.js.map +0 -1
- package/lib/plugins/toolbar/toolbar-buttons.js +0 -145
- package/lib/plugins/toolbar/toolbar-buttons.js.map +0 -1
- package/lib/plugins/toolbar/toolbar.js +0 -307
- package/lib/plugins/toolbar/toolbar.js.map +0 -1
- package/lib/plugins/utils.js +0 -42
- package/lib/plugins/utils.js.map +0 -1
- package/lib/serialization.js +0 -571
- package/lib/serialization.js.map +0 -1
- package/lib/shared/alert-dialog.js +0 -68
- package/lib/theme.js +0 -8
- package/lib/theme.js.map +0 -1
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports["default"] = HtmlPlugin;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _icons = _interopRequireDefault(require("./icons"));
|
|
10
|
-
var _serialization = require("./../../serialization");
|
|
11
|
-
var toggleToRichText = function toggleToRichText(value, onChange, dismiss) {
|
|
12
|
-
var plainText = value.document.text;
|
|
13
|
-
var slateValue = dismiss ? value : (0, _serialization.htmlToValue)(plainText);
|
|
14
|
-
var change = value.change().selectAll()["delete"]().insertFragment(slateValue.document);
|
|
15
|
-
onChange(change);
|
|
16
|
-
};
|
|
17
|
-
function HtmlPlugin(opts) {
|
|
18
|
-
var isHtmlMode = opts.isHtmlMode,
|
|
19
|
-
isEditedInHtmlMode = opts.isEditedInHtmlMode,
|
|
20
|
-
toggleHtmlMode = opts.toggleHtmlMode,
|
|
21
|
-
handleAlertDialog = opts.handleAlertDialog,
|
|
22
|
-
currentValue = opts.currentValue;
|
|
23
|
-
var handleHtmlModeOn = function handleHtmlModeOn(value, onChange) {
|
|
24
|
-
var dialogProps = {
|
|
25
|
-
title: 'Warning',
|
|
26
|
-
text: 'Returning to rich text mode without saving will cause edits to be lost.',
|
|
27
|
-
onConfirmText: 'Dismiss changes',
|
|
28
|
-
onCloseText: 'Continue Editing',
|
|
29
|
-
onConfirm: function onConfirm() {
|
|
30
|
-
handleAlertDialog(false);
|
|
31
|
-
toggleToRichText(currentValue, onChange, true);
|
|
32
|
-
toggleHtmlMode();
|
|
33
|
-
},
|
|
34
|
-
onClose: function onClose() {
|
|
35
|
-
handleAlertDialog(false);
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
handleAlertDialog(true, dialogProps);
|
|
39
|
-
};
|
|
40
|
-
var handleHtmlModeOff = function handleHtmlModeOff(value, onChange) {
|
|
41
|
-
var change = value.change().selectAll()["delete"]().insertText((0, _serialization.valueToHtml)(value));
|
|
42
|
-
onChange(change);
|
|
43
|
-
};
|
|
44
|
-
return {
|
|
45
|
-
name: 'html',
|
|
46
|
-
toolbar: {
|
|
47
|
-
icon: /*#__PURE__*/_react["default"].createElement(_icons["default"], {
|
|
48
|
-
isHtmlMode: isHtmlMode
|
|
49
|
-
}),
|
|
50
|
-
ariaLabel: 'Html editor',
|
|
51
|
-
buttonStyles: {
|
|
52
|
-
margin: '0 20px 0 auto'
|
|
53
|
-
},
|
|
54
|
-
type: 'html',
|
|
55
|
-
onClick: function onClick(value, onChange) {
|
|
56
|
-
if (isHtmlMode) {
|
|
57
|
-
if (isEditedInHtmlMode) {
|
|
58
|
-
handleHtmlModeOn(value, onChange);
|
|
59
|
-
} else {
|
|
60
|
-
toggleToRichText(value, onChange);
|
|
61
|
-
toggleHtmlMode();
|
|
62
|
-
}
|
|
63
|
-
} else {
|
|
64
|
-
handleHtmlModeOff(value, onChange);
|
|
65
|
-
toggleHtmlMode();
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pY29ucyIsIl9zZXJpYWxpemF0aW9uIiwidG9nZ2xlVG9SaWNoVGV4dCIsInZhbHVlIiwib25DaGFuZ2UiLCJkaXNtaXNzIiwicGxhaW5UZXh0IiwiZG9jdW1lbnQiLCJ0ZXh0Iiwic2xhdGVWYWx1ZSIsImh0bWxUb1ZhbHVlIiwiY2hhbmdlIiwic2VsZWN0QWxsIiwiaW5zZXJ0RnJhZ21lbnQiLCJIdG1sUGx1Z2luIiwib3B0cyIsImlzSHRtbE1vZGUiLCJpc0VkaXRlZEluSHRtbE1vZGUiLCJ0b2dnbGVIdG1sTW9kZSIsImhhbmRsZUFsZXJ0RGlhbG9nIiwiY3VycmVudFZhbHVlIiwiaGFuZGxlSHRtbE1vZGVPbiIsImRpYWxvZ1Byb3BzIiwidGl0bGUiLCJvbkNvbmZpcm1UZXh0Iiwib25DbG9zZVRleHQiLCJvbkNvbmZpcm0iLCJvbkNsb3NlIiwiaGFuZGxlSHRtbE1vZGVPZmYiLCJpbnNlcnRUZXh0IiwidmFsdWVUb0h0bWwiLCJuYW1lIiwidG9vbGJhciIsImljb24iLCJjcmVhdGVFbGVtZW50IiwiYXJpYUxhYmVsIiwiYnV0dG9uU3R5bGVzIiwibWFyZ2luIiwidHlwZSIsIm9uQ2xpY2siXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGx1Z2lucy9odG1sL2luZGV4LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IEh0bWxNb2RlSWNvbiBmcm9tICcuL2ljb25zJztcbmltcG9ydCB7IGh0bWxUb1ZhbHVlLCB2YWx1ZVRvSHRtbCB9IGZyb20gJy4vLi4vLi4vc2VyaWFsaXphdGlvbic7XG5cbmNvbnN0IHRvZ2dsZVRvUmljaFRleHQgPSAodmFsdWUsIG9uQ2hhbmdlLCBkaXNtaXNzKSA9PiB7XG4gIGNvbnN0IHBsYWluVGV4dCA9IHZhbHVlLmRvY3VtZW50LnRleHQ7XG4gIGNvbnN0IHNsYXRlVmFsdWUgPSBkaXNtaXNzID8gdmFsdWUgOiBodG1sVG9WYWx1ZShwbGFpblRleHQpO1xuXG4gIGNvbnN0IGNoYW5nZSA9IHZhbHVlXG4gICAgLmNoYW5nZSgpXG4gICAgLnNlbGVjdEFsbCgpXG4gICAgLmRlbGV0ZSgpXG4gICAgLmluc2VydEZyYWdtZW50KHNsYXRlVmFsdWUuZG9jdW1lbnQpO1xuICBvbkNoYW5nZShjaGFuZ2UpO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gSHRtbFBsdWdpbihvcHRzKSB7XG4gIGNvbnN0IHsgaXNIdG1sTW9kZSwgaXNFZGl0ZWRJbkh0bWxNb2RlLCB0b2dnbGVIdG1sTW9kZSwgaGFuZGxlQWxlcnREaWFsb2csIGN1cnJlbnRWYWx1ZSB9ID0gb3B0cztcblxuICBjb25zdCBoYW5kbGVIdG1sTW9kZU9uID0gKHZhbHVlLCBvbkNoYW5nZSkgPT4ge1xuICAgIGNvbnN0IGRpYWxvZ1Byb3BzID0ge1xuICAgICAgdGl0bGU6ICdXYXJuaW5nJyxcbiAgICAgIHRleHQ6ICdSZXR1cm5pbmcgdG8gcmljaCB0ZXh0IG1vZGUgd2l0aG91dCBzYXZpbmcgd2lsbCBjYXVzZSBlZGl0cyB0byBiZSBsb3N0LicsXG4gICAgICBvbkNvbmZpcm1UZXh0OiAnRGlzbWlzcyBjaGFuZ2VzJyxcbiAgICAgIG9uQ2xvc2VUZXh0OiAnQ29udGludWUgRWRpdGluZycsXG4gICAgICBvbkNvbmZpcm06ICgpID0+IHtcbiAgICAgICAgaGFuZGxlQWxlcnREaWFsb2coZmFsc2UpO1xuICAgICAgICB0b2dnbGVUb1JpY2hUZXh0KGN1cnJlbnRWYWx1ZSwgb25DaGFuZ2UsIHRydWUpO1xuICAgICAgICB0b2dnbGVIdG1sTW9kZSgpO1xuICAgICAgfSxcbiAgICAgIG9uQ2xvc2U6ICgpID0+IHtcbiAgICAgICAgaGFuZGxlQWxlcnREaWFsb2coZmFsc2UpO1xuICAgICAgfSxcbiAgICB9O1xuXG4gICAgaGFuZGxlQWxlcnREaWFsb2codHJ1ZSwgZGlhbG9nUHJvcHMpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUh0bWxNb2RlT2ZmID0gKHZhbHVlLCBvbkNoYW5nZSkgPT4ge1xuICAgIGNvbnN0IGNoYW5nZSA9IHZhbHVlXG4gICAgICAuY2hhbmdlKClcbiAgICAgIC5zZWxlY3RBbGwoKVxuICAgICAgLmRlbGV0ZSgpXG4gICAgICAuaW5zZXJ0VGV4dCh2YWx1ZVRvSHRtbCh2YWx1ZSkpO1xuICAgIG9uQ2hhbmdlKGNoYW5nZSk7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnaHRtbCcsXG4gICAgdG9vbGJhcjoge1xuICAgICAgaWNvbjogPEh0bWxNb2RlSWNvbiBpc0h0bWxNb2RlPXtpc0h0bWxNb2RlfSAvPixcbiAgICAgIGFyaWFMYWJlbDogJ0h0bWwgZWRpdG9yJyxcbiAgICAgIGJ1dHRvblN0eWxlczoge1xuICAgICAgICBtYXJnaW46ICcwIDIwcHggMCBhdXRvJyxcbiAgICAgIH0sXG4gICAgICB0eXBlOiAnaHRtbCcsXG4gICAgICBvbkNsaWNrOiAodmFsdWUsIG9uQ2hhbmdlKSA9PiB7XG4gICAgICAgIGlmIChpc0h0bWxNb2RlKSB7XG4gICAgICAgICAgaWYgKGlzRWRpdGVkSW5IdG1sTW9kZSkge1xuICAgICAgICAgICAgaGFuZGxlSHRtbE1vZGVPbih2YWx1ZSwgb25DaGFuZ2UpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0b2dnbGVUb1JpY2hUZXh0KHZhbHVlLCBvbkNoYW5nZSk7XG4gICAgICAgICAgICB0b2dnbGVIdG1sTW9kZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBoYW5kbGVIdG1sTW9kZU9mZih2YWx1ZSwgb25DaGFuZ2UpO1xuICAgICAgICAgIHRvZ2dsZUh0bWxNb2RlKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUYsc0JBQUEs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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_icons","_serialization","toggleToRichText","value","onChange","dismiss","plainText","document","text","slateValue","htmlToValue","change","selectAll","insertFragment","HtmlPlugin","opts","isHtmlMode","isEditedInHtmlMode","toggleHtmlMode","handleAlertDialog","currentValue","handleHtmlModeOn","dialogProps","title","onConfirmText","onCloseText","onConfirm","onClose","handleHtmlModeOff","insertText","valueToHtml","name","toolbar","icon","createElement","ariaLabel","buttonStyles","margin","type","onClick"],"sources":["../../../src/plugins/html/index.jsx"],"sourcesContent":["import React from 'react';\nimport HtmlModeIcon from './icons';\nimport { htmlToValue, valueToHtml } from './../../serialization';\n\nconst toggleToRichText = (value, onChange, dismiss) => {\n const plainText = value.document.text;\n const slateValue = dismiss ? value : htmlToValue(plainText);\n\n const change = value\n .change()\n .selectAll()\n .delete()\n .insertFragment(slateValue.document);\n onChange(change);\n};\n\nexport default function HtmlPlugin(opts) {\n const { isHtmlMode, isEditedInHtmlMode, toggleHtmlMode, handleAlertDialog, currentValue } = opts;\n\n const handleHtmlModeOn = (value, onChange) => {\n const dialogProps = {\n title: 'Warning',\n text: 'Returning to rich text mode without saving will cause edits to be lost.',\n onConfirmText: 'Dismiss changes',\n onCloseText: 'Continue Editing',\n onConfirm: () => {\n handleAlertDialog(false);\n toggleToRichText(currentValue, onChange, true);\n toggleHtmlMode();\n },\n onClose: () => {\n handleAlertDialog(false);\n },\n };\n\n handleAlertDialog(true, dialogProps);\n };\n\n const handleHtmlModeOff = (value, onChange) => {\n const change = value\n .change()\n .selectAll()\n .delete()\n .insertText(valueToHtml(value));\n onChange(change);\n };\n\n return {\n name: 'html',\n toolbar: {\n icon: <HtmlModeIcon isHtmlMode={isHtmlMode} />,\n ariaLabel: 'Html editor',\n buttonStyles: {\n margin: '0 20px 0 auto',\n },\n type: 'html',\n onClick: (value, onChange) => {\n if (isHtmlMode) {\n if (isEditedInHtmlMode) {\n handleHtmlModeOn(value, onChange);\n } else {\n toggleToRichText(value, onChange);\n toggleHtmlMode();\n }\n } else {\n handleHtmlModeOff(value, onChange);\n toggleHtmlMode();\n }\n },\n },\n };\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAK;EACrD,IAAMC,SAAS,GAAGH,KAAK,CAACI,QAAQ,CAACC,IAAI;EACrC,IAAMC,UAAU,GAAGJ,OAAO,GAAGF,KAAK,GAAG,IAAAO,0BAAW,EAACJ,SAAS,CAAC;EAE3D,IAAMK,MAAM,GAAGR,KAAK,CACjBQ,MAAM,CAAC,CAAC,CACRC,SAAS,CAAC,CAAC,UACL,CAAC,CAAC,CACRC,cAAc,CAACJ,UAAU,CAACF,QAAQ,CAAC;EACtCH,QAAQ,CAACO,MAAM,CAAC;AAClB,CAAC;AAEc,SAASG,UAAUA,CAACC,IAAI,EAAE;EACvC,IAAQC,UAAU,GAA0ED,IAAI,CAAxFC,UAAU;IAAEC,kBAAkB,GAAsDF,IAAI,CAA5EE,kBAAkB;IAAEC,cAAc,GAAsCH,IAAI,CAAxDG,cAAc;IAAEC,iBAAiB,GAAmBJ,IAAI,CAAxCI,iBAAiB;IAAEC,YAAY,GAAKL,IAAI,CAArBK,YAAY;EAEvF,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIlB,KAAK,EAAEC,QAAQ,EAAK;IAC5C,IAAMkB,WAAW,GAAG;MAClBC,KAAK,EAAE,SAAS;MAChBf,IAAI,EAAE,yEAAyE;MAC/EgB,aAAa,EAAE,iBAAiB;MAChCC,WAAW,EAAE,kBAAkB;MAC/BC,SAAS,EAAE,SAAXA,SAASA,CAAA,EAAQ;QACfP,iBAAiB,CAAC,KAAK,CAAC;QACxBjB,gBAAgB,CAACkB,YAAY,EAAEhB,QAAQ,EAAE,IAAI,CAAC;QAC9Cc,cAAc,CAAC,CAAC;MAClB,CAAC;MACDS,OAAO,EAAE,SAATA,OAAOA,CAAA,EAAQ;QACbR,iBAAiB,CAAC,KAAK,CAAC;MAC1B;IACF,CAAC;IAEDA,iBAAiB,CAAC,IAAI,EAAEG,WAAW,CAAC;EACtC,CAAC;EAED,IAAMM,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIzB,KAAK,EAAEC,QAAQ,EAAK;IAC7C,IAAMO,MAAM,GAAGR,KAAK,CACjBQ,MAAM,CAAC,CAAC,CACRC,SAAS,CAAC,CAAC,UACL,CAAC,CAAC,CACRiB,UAAU,CAAC,IAAAC,0BAAW,EAAC3B,KAAK,CAAC,CAAC;IACjCC,QAAQ,CAACO,MAAM,CAAC;EAClB,CAAC;EAED,OAAO;IACLoB,IAAI,EAAE,MAAM;IACZC,OAAO,EAAE;MACPC,IAAI,eAAEpC,MAAA,YAAAqC,aAAA,CAAClC,MAAA,WAAY;QAACgB,UAAU,EAAEA;MAAW,CAAE,CAAC;MAC9CmB,SAAS,EAAE,aAAa;MACxBC,YAAY,EAAE;QACZC,MAAM,EAAE;MACV,CAAC;MACDC,IAAI,EAAE,MAAM;MACZC,OAAO,EAAE,SAATA,OAAOA,CAAGpC,KAAK,EAAEC,QAAQ,EAAK;QAC5B,IAAIY,UAAU,EAAE;UACd,IAAIC,kBAAkB,EAAE;YACtBI,gBAAgB,CAAClB,KAAK,EAAEC,QAAQ,CAAC;UACnC,CAAC,MAAM;YACLF,gBAAgB,CAACC,KAAK,EAAEC,QAAQ,CAAC;YACjCc,cAAc,CAAC,CAAC;UAClB;QACF,CAAC,MAAM;UACLU,iBAAiB,CAACzB,KAAK,EAAEC,QAAQ,CAAC;UAClCc,cAAc,CAAC,CAAC;QAClB;MACF;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
5
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
-
var _react = _interopRequireDefault(require("react"));
|
|
7
|
-
var _react2 = require("@testing-library/react");
|
|
8
|
-
var _slate = require("slate");
|
|
9
|
-
var _component = require("../component");
|
|
10
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
11
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12
|
-
describe('Image Component', function () {
|
|
13
|
-
var createImageNode = function createImageNode() {
|
|
14
|
-
var dataProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
15
|
-
return _slate.Block.fromJSON({
|
|
16
|
-
type: 'image',
|
|
17
|
-
data: _slate.Data.create(_objectSpread({
|
|
18
|
-
width: 50,
|
|
19
|
-
height: 50,
|
|
20
|
-
src: 'test-image.jpg'
|
|
21
|
-
}, dataProps))
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
var createMockEditor = function createMockEditor() {
|
|
25
|
-
return {
|
|
26
|
-
value: {},
|
|
27
|
-
change: jest.fn()
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
|
-
var defaultClasses = {
|
|
31
|
-
active: 'active',
|
|
32
|
-
loading: 'loading',
|
|
33
|
-
pendingDelete: 'pendingDelete'
|
|
34
|
-
};
|
|
35
|
-
var defaultProps = {
|
|
36
|
-
node: createImageNode(),
|
|
37
|
-
editor: createMockEditor(),
|
|
38
|
-
classes: defaultClasses,
|
|
39
|
-
onDelete: jest.fn()
|
|
40
|
-
};
|
|
41
|
-
it('renders correctly with default props', function () {
|
|
42
|
-
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, defaultProps)),
|
|
43
|
-
container = _render.container;
|
|
44
|
-
expect(container.firstChild).toBeInTheDocument();
|
|
45
|
-
});
|
|
46
|
-
it('renders image with correct dimensions', function () {
|
|
47
|
-
var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, defaultProps)),
|
|
48
|
-
container = _render2.container;
|
|
49
|
-
var img = container.querySelector('img');
|
|
50
|
-
expect(img).toBeInTheDocument();
|
|
51
|
-
});
|
|
52
|
-
it('renders with custom width and height', function () {
|
|
53
|
-
var node = createImageNode({
|
|
54
|
-
width: 100,
|
|
55
|
-
height: 200
|
|
56
|
-
});
|
|
57
|
-
var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
|
|
58
|
-
node: node
|
|
59
|
-
}))),
|
|
60
|
-
container = _render3.container;
|
|
61
|
-
var img = container.querySelector('img');
|
|
62
|
-
expect(img).toBeInTheDocument();
|
|
63
|
-
});
|
|
64
|
-
it('renders with loading class when loading', function () {
|
|
65
|
-
var node = createImageNode({
|
|
66
|
-
loading: true
|
|
67
|
-
});
|
|
68
|
-
var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
|
|
69
|
-
node: node
|
|
70
|
-
}))),
|
|
71
|
-
container = _render4.container;
|
|
72
|
-
expect(container.firstChild).toBeInTheDocument();
|
|
73
|
-
});
|
|
74
|
-
it('renders with active class when active', function () {
|
|
75
|
-
var node = createImageNode({
|
|
76
|
-
active: true
|
|
77
|
-
});
|
|
78
|
-
var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
|
|
79
|
-
node: node
|
|
80
|
-
}))),
|
|
81
|
-
container = _render5.container;
|
|
82
|
-
expect(container.firstChild).toBeInTheDocument();
|
|
83
|
-
});
|
|
84
|
-
it('handles image with source', function () {
|
|
85
|
-
var node = createImageNode({
|
|
86
|
-
src: 'test-image.jpg'
|
|
87
|
-
});
|
|
88
|
-
var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_component.Component, (0, _extends2["default"])({}, defaultProps, {
|
|
89
|
-
node: node
|
|
90
|
-
}))),
|
|
91
|
-
container = _render6.container;
|
|
92
|
-
var img = container.querySelector('img');
|
|
93
|
-
expect(img).toHaveAttribute('src', 'test-image.jpg');
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfc2xhdGUiLCJfY29tcG9uZW50Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJkZXNjcmliZSIsImNyZWF0ZUltYWdlTm9kZSIsImRhdGFQcm9wcyIsInVuZGVmaW5lZCIsIkJsb2NrIiwiZnJvbUpTT04iLCJ0eXBlIiwiZGF0YSIsIkRhdGEiLCJjcmVhdGUiLCJ3aWR0aCIsImhlaWdodCIsInNyYyIsImNyZWF0ZU1vY2tFZGl0b3IiLCJ2YWx1ZSIsImNoYW5nZSIsImplc3QiLCJmbiIsImRlZmF1bHRDbGFzc2VzIiwiYWN0aXZlIiwibG9hZGluZyIsInBlbmRpbmdEZWxldGUiLCJkZWZhdWx0UHJvcHMiLCJub2RlIiwiZWRpdG9yIiwiY2xhc3NlcyIsIm9uRGVsZXRlIiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIkNvbXBvbmVudCIsImNvbnRhaW5lciIsImV4cGVjdCIsImZpcnN0Q2hpbGQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsIl9yZW5kZXIyIiwiaW1nIiwicXVlcnlTZWxlY3RvciIsIl9yZW5kZXIzIiwiX2V4dGVuZHMyIiwiX3JlbmRlcjQiLCJfcmVuZGVyNSIsIl9yZW5kZXI2IiwidG9IYXZlQXR0cmlidXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2NvbXBvbmVudC50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgeyBEYXRhLCBCbG9jayB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudCc7XG5cbmRlc2NyaWJlKCdJbWFnZSBDb21wb25lbnQnLCAoKSA9PiB7XG4gIGNvbnN0IGNyZWF0ZUltYWdlTm9kZSA9IChkYXRhUHJvcHMgPSB7fSkgPT4ge1xuICAgIHJldHVybiBCbG9jay5mcm9tSlNPTih7XG4gICAgICB0eXBlOiAnaW1hZ2UnLFxuICAgICAgZGF0YTogRGF0YS5jcmVhdGUoe1xuICAgICAgICB3aWR0aDogNTAsXG4gICAgICAgIGhlaWdodDogNTAsXG4gICAgICAgIHNyYzogJ3Rlc3QtaW1hZ2UuanBnJyxcbiAgICAgICAgLi4uZGF0YVByb3BzLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlTW9ja0VkaXRvciA9ICgpID0+ICh7XG4gICAgdmFsdWU6IHt9LFxuICAgIGNoYW5nZTogamVzdC5mbigpLFxuICB9KTtcblxuICBjb25zdCBkZWZhdWx0Q2xhc3NlcyA9IHtcbiAgICBhY3RpdmU6ICdhY3RpdmUnLFxuICAgIGxvYWRpbmc6ICdsb2FkaW5nJyxcbiAgICBwZW5kaW5nRGVsZXRlOiAncGVuZGluZ0RlbGV0ZScsXG4gIH07XG5cbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIG5vZGU6IGNyZWF0ZUltYWdlTm9kZSgpLFxuICAgIGVkaXRvcjogY3JlYXRlTW9ja0VkaXRvcigpLFxuICAgIGNsYXNzZXM6IGRlZmF1bHRDbGFzc2VzLFxuICAgIG9uRGVsZXRlOiBqZXN0LmZuKCksXG4gIH07XG5cbiAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGVmYXVsdCBwcm9wcycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgaW1hZ2Ugd2l0aCBjb3JyZWN0IGRpbWVuc2lvbnMnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q29tcG9uZW50IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb25zdCBpbWcgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignaW1nJyk7XG4gICAgZXhwZWN0KGltZykudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBjdXN0b20gd2lkdGggYW5kIGhlaWdodCcsICgpID0+IHtcbiAgICBjb25zdCBub2RlID0gY3JlYXRlSW1hZ2VOb2RlKHsgd2lkdGg6IDEwMCwgaGVpZ2h0OiAyMDAgfSk7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q29tcG9uZW50IHsuLi5kZWZhdWx0UHJvcHN9IG5vZGU9e25vZGV9IC8+KTtcbiAgICBjb25zdCBpbWcgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignaW1nJyk7XG4gICAgZXhwZWN0KGltZykudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBsb2FkaW5nIGNsYXNzIHdoZW4gbG9hZGluZycsICgpID0+IHtcbiAgICBjb25zdCBub2RlID0gY3JlYXRlSW1hZ2VOb2RlKHsgbG9hZGluZzogdHJ1ZSB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aCBhY3RpdmUgY2xhc3Mgd2hlbiBhY3RpdmUnLCAoKSA9PiB7XG4gICAgY29uc3Qgbm9kZSA9IGNyZWF0ZUltYWdlTm9kZSh7IGFjdGl2ZTogdHJ1ZSB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2hhbmRsZXMgaW1hZ2Ugd2l0aCBzb3VyY2UnLCAoKSA9PiB7XG4gICAgY29uc3Qgbm9kZSA9IGNyZWF0ZUltYWdlTm9kZSh7IHNyYzogJ3Rlc3QtaW1hZ2UuanBnJyB9KTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDb21wb25lbnQgey4uLmRlZmF1bHRQcm9wc30gbm9kZT17bm9kZX0gLz4pO1xuICAgIGNvbnN0IGltZyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdpbWcnKTtcbiAgICBleHBlY3QoaW1nKS50b0hhdmVBdHRyaWJ1dGUoJ3NyYycsICd0ZXN0LWltYWdlLmpwZycpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUF5QyxTQUFBSSxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FB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
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
-
var _react = require("@testing-library/react");
|
|
8
|
-
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
9
|
-
var _imageToolbar = require("../image-toolbar");
|
|
10
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
11
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
-
// Mock the alt-dialog component to avoid complex modal rendering in tests
|
|
14
|
-
jest.mock('../alt-dialog', function () {
|
|
15
|
-
return function AltDialog(_ref) {
|
|
16
|
-
var alt = _ref.alt,
|
|
17
|
-
onDone = _ref.onDone;
|
|
18
|
-
return /*#__PURE__*/_react2["default"].createElement("div", {
|
|
19
|
-
"data-testid": "alt-dialog"
|
|
20
|
-
}, /*#__PURE__*/_react2["default"].createElement("input", {
|
|
21
|
-
"data-testid": "alt-input",
|
|
22
|
-
defaultValue: alt,
|
|
23
|
-
onChange: function onChange(e) {
|
|
24
|
-
return onDone(e.target.value);
|
|
25
|
-
}
|
|
26
|
-
}));
|
|
27
|
-
};
|
|
28
|
-
});
|
|
29
|
-
describe('ImageToolbar', function () {
|
|
30
|
-
var onChange;
|
|
31
|
-
beforeEach(function () {
|
|
32
|
-
onChange = jest.fn();
|
|
33
|
-
});
|
|
34
|
-
var renderComponent = function renderComponent() {
|
|
35
|
-
var extras = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
36
|
-
var props = _objectSpread({
|
|
37
|
-
onChange: onChange,
|
|
38
|
-
imageLoaded: true
|
|
39
|
-
}, extras);
|
|
40
|
-
return (0, _react.render)(/*#__PURE__*/_react2["default"].createElement(_imageToolbar.ImageToolbar, props));
|
|
41
|
-
};
|
|
42
|
-
describe('rendering', function () {
|
|
43
|
-
it('renders alignment buttons', function () {
|
|
44
|
-
renderComponent();
|
|
45
|
-
expect(_react.screen.getByText('left')).toBeInTheDocument();
|
|
46
|
-
expect(_react.screen.getByText('center')).toBeInTheDocument();
|
|
47
|
-
expect(_react.screen.getByText('right')).toBeInTheDocument();
|
|
48
|
-
});
|
|
49
|
-
it('renders alt text button', function () {
|
|
50
|
-
renderComponent();
|
|
51
|
-
expect(_react.screen.getByText('Alt text')).toBeInTheDocument();
|
|
52
|
-
});
|
|
53
|
-
it('does not render alignment buttons when disabled', function () {
|
|
54
|
-
renderComponent({
|
|
55
|
-
disableImageAlignmentButtons: true
|
|
56
|
-
});
|
|
57
|
-
expect(_react.screen.queryByText('left')).not.toBeInTheDocument();
|
|
58
|
-
expect(_react.screen.queryByText('center')).not.toBeInTheDocument();
|
|
59
|
-
expect(_react.screen.queryByText('right')).not.toBeInTheDocument();
|
|
60
|
-
});
|
|
61
|
-
it('shows active state for selected alignment', function () {
|
|
62
|
-
var _renderComponent = renderComponent({
|
|
63
|
-
alignment: 'center'
|
|
64
|
-
}),
|
|
65
|
-
container = _renderComponent.container;
|
|
66
|
-
// The MarkButton component uses aria-pressed for active state
|
|
67
|
-
var centerButton = _react.screen.getByText('center').closest('button');
|
|
68
|
-
expect(centerButton).toHaveAttribute('aria-pressed', 'true');
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
describe('user interactions', function () {
|
|
72
|
-
it('calls onChange with alignment when left is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
73
|
-
var user;
|
|
74
|
-
return _regenerator["default"].wrap(function (_context) {
|
|
75
|
-
while (1) switch (_context.prev = _context.next) {
|
|
76
|
-
case 0:
|
|
77
|
-
user = _userEvent["default"].setup();
|
|
78
|
-
renderComponent();
|
|
79
|
-
_context.next = 1;
|
|
80
|
-
return user.click(_react.screen.getByText('left'));
|
|
81
|
-
case 1:
|
|
82
|
-
expect(onChange).toHaveBeenCalledWith({
|
|
83
|
-
alignment: 'left'
|
|
84
|
-
});
|
|
85
|
-
case 2:
|
|
86
|
-
case "end":
|
|
87
|
-
return _context.stop();
|
|
88
|
-
}
|
|
89
|
-
}, _callee);
|
|
90
|
-
})));
|
|
91
|
-
it('calls onChange with alignment when center is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
92
|
-
var user;
|
|
93
|
-
return _regenerator["default"].wrap(function (_context2) {
|
|
94
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
95
|
-
case 0:
|
|
96
|
-
user = _userEvent["default"].setup();
|
|
97
|
-
renderComponent();
|
|
98
|
-
_context2.next = 1;
|
|
99
|
-
return user.click(_react.screen.getByText('center'));
|
|
100
|
-
case 1:
|
|
101
|
-
expect(onChange).toHaveBeenCalledWith({
|
|
102
|
-
alignment: 'center'
|
|
103
|
-
});
|
|
104
|
-
case 2:
|
|
105
|
-
case "end":
|
|
106
|
-
return _context2.stop();
|
|
107
|
-
}
|
|
108
|
-
}, _callee2);
|
|
109
|
-
})));
|
|
110
|
-
it('calls onChange with alignment when right is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
111
|
-
var user;
|
|
112
|
-
return _regenerator["default"].wrap(function (_context3) {
|
|
113
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
114
|
-
case 0:
|
|
115
|
-
user = _userEvent["default"].setup();
|
|
116
|
-
renderComponent();
|
|
117
|
-
_context3.next = 1;
|
|
118
|
-
return user.click(_react.screen.getByText('right'));
|
|
119
|
-
case 1:
|
|
120
|
-
expect(onChange).toHaveBeenCalledWith({
|
|
121
|
-
alignment: 'right'
|
|
122
|
-
});
|
|
123
|
-
case 2:
|
|
124
|
-
case "end":
|
|
125
|
-
return _context3.stop();
|
|
126
|
-
}
|
|
127
|
-
}, _callee3);
|
|
128
|
-
})));
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3VzZXJFdmVudCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfaW1hZ2VUb29sYmFyIiwiX3JlYWN0MiIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiamVzdCIsIm1vY2siLCJBbHREaWFsb2ciLCJfcmVmIiwiYWx0Iiwib25Eb25lIiwiY3JlYXRlRWxlbWVudCIsImRlZmF1bHRWYWx1ZSIsIm9uQ2hhbmdlIiwidGFyZ2V0IiwidmFsdWUiLCJkZXNjcmliZSIsImJlZm9yZUVhY2giLCJmbiIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsInVuZGVmaW5lZCIsInByb3BzIiwiaW1hZ2VMb2FkZWQiLCJyZW5kZXIiLCJJbWFnZVRvb2xiYXIiLCJpdCIsImV4cGVjdCIsInNjcmVlbiIsImdldEJ5VGV4dCIsInRvQmVJblRoZURvY3VtZW50IiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsInF1ZXJ5QnlUZXh0Iiwibm90IiwiX3JlbmRlckNvbXBvbmVudCIsImFsaWdubWVudCIsImNvbnRhaW5lciIsImNlbnRlckJ1dHRvbiIsImNsb3Nlc3QiLCJ0b0hhdmVBdHRyaWJ1dGUiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVzZXIiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInVzZXJFdmVudCIsInNldHVwIiwiY2xpY2siLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInN0b3AiLCJfY2FsbGVlMiIsIl9jb250ZXh0MiIsIl9jYWxsZWUzIiwiX2NvbnRleHQzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2ltYWdlLXRvb2xiYXItbG9naWMudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyLCBzY3JlZW4gfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB1c2VyRXZlbnQgZnJvbSAnQHRlc3RpbmctbGlicmFyeS91c2VyLWV2ZW50JztcbmltcG9ydCB7IEltYWdlVG9vbGJhciB9IGZyb20gJy4uL2ltYWdlLXRvb2xiYXInO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuLy8gTW9jayB0aGUgYWx0LWRpYWxvZyBjb21wb25lbnQgdG8gYXZvaWQgY29tcGxleCBtb2RhbCByZW5kZXJpbmcgaW4gdGVzdHNcbmplc3QubW9jaygnLi4vYWx0LWRpYWxvZycsICgpID0+IHtcbiAgcmV0dXJuIGZ1bmN0aW9uIEFsdERpYWxvZyh7IGFsdCwgb25Eb25lIH0pIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBkYXRhLXRlc3RpZD1cImFsdC1kaWFsb2dcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJhbHQtaW5wdXRcIlxuICAgICAgICAgIGRlZmF1bHRWYWx1ZT17YWx0fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4gb25Eb25lKGUudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG59KTtcblxuZGVzY3JpYmUoJ0ltYWdlVG9vbGJhcicsICgpID0+IHtcbiAgbGV0IG9uQ2hhbmdlO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICB9KTtcblxuICBjb25zdCByZW5kZXJDb21wb25lbnQgPSAoZXh0cmFzID0ge30pID0+IHtcbiAgICBjb25zdCBwcm9wcyA9IHtcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgaW1hZ2VMb2FkZWQ6IHRydWUsXG4gICAgICAuLi5leHRyYXMsXG4gICAgfTtcblxuICAgIHJldHVybiByZW5kZXIoPEltYWdlVG9vbGJhciB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICBkZXNjcmliZSgncmVuZGVyaW5nJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIGFsaWdubWVudCBidXR0b25zJywgKCkgPT4ge1xuICAgICAgcmVuZGVyQ29tcG9uZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnbGVmdCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ2NlbnRlcicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ3JpZ2h0JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBhbHQgdGV4dCBidXR0b24nLCAoKSA9PiB7XG4gICAgICByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdBbHQgdGV4dCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90IHJlbmRlciBhbGlnbm1lbnQgYnV0dG9ucyB3aGVuIGRpc2FibGVkJywgKCkgPT4ge1xuICAgICAgcmVuZGVyQ29tcG9uZW50KHsgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9uczogdHJ1ZSB9KTtcbiAgICAgIGV4cGVjdChzY3JlZW4ucXVlcnlCeVRleHQoJ2xlZnQnKSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlUZXh0KCdjZW50ZXInKSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlUZXh0KCdyaWdodCcpKS5ub3QudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG93cyBhY3RpdmUgc3RhdGUgZm9yIHNlbGVjdGVkIGFsaWdubWVudCcsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoeyBhbGlnbm1lbnQ6ICdjZW50ZXInIH0pO1xuICAgICAgLy8gVGhlIE1hcmtCdXR0b24gY29tcG9uZW50IHVzZXMgYXJpYS1wcmVzc2VkIGZvciBhY3RpdmUgc3RhdGVcbiAgICAgIGNvbnN0IGNlbnRlckJ1dHRvbiA9IHNjcmVlbi5nZXRCeVRleHQoJ2NlbnRlcicpLmNsb3Nlc3QoJ2J1dHRvbicpO1xuICAgICAgZXhwZWN0KGNlbnRlckJ1dHRvbikudG9IYXZlQXR0cmlidXRlKCdhcmlhLXByZXNzZWQnLCAndHJ1ZScpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgndXNlciBpbnRlcmFjdGlvbnMnLCAoKSA9PiB7XG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gbGVmdCBpcyBjbGlja2VkJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgICAgcmVuZGVyQ29tcG9uZW50KCk7XG5cbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soc2NyZWVuLmdldEJ5VGV4dCgnbGVmdCcpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IGFsaWdubWVudDogJ2xlZnQnIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gY2VudGVyIGlzIGNsaWNrZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoKTtcblxuICAgICAgYXdhaXQgdXNlci5jbGljayhzY3JlZW4uZ2V0QnlUZXh0KCdjZW50ZXInKSk7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoeyBhbGlnbm1lbnQ6ICdjZW50ZXInIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggYWxpZ25tZW50IHdoZW4gcmlnaHQgaXMgY2xpY2tlZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHVzZXIgPSB1c2VyRXZlbnQuc2V0dXAoKTtcbiAgICAgIHJlbmRlckNvbXBvbmVudCgpO1xuXG4gICAgICBhd2FpdCB1c2VyLmNsaWNrKHNjcmVlbi5nZXRCeVRleHQoJ3JpZ2h0JykpO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHsgYWxpZ25tZW50OiAncmlnaHQnIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxhQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxPQUFBLEdBQUFGLHNCQUFBLENBQUFGLE9BQUE7QUFBMEIsU0FBQUssUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFV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
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _imageToolbar = _interopRequireDefault(require("../image-toolbar"));
|
|
6
|
-
var _react2 = require("@testing-library/react");
|
|
7
|
-
var _slate = require("slate");
|
|
8
|
-
it('renders image toolbar', function () {
|
|
9
|
-
var classes = {
|
|
10
|
-
holder: 'holder'
|
|
11
|
-
};
|
|
12
|
-
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_imageToolbar["default"], {
|
|
13
|
-
percent: 50,
|
|
14
|
-
classes: classes,
|
|
15
|
-
onChange: jest.fn()
|
|
16
|
-
})),
|
|
17
|
-
container = _render.container;
|
|
18
|
-
|
|
19
|
-
// Verify the toolbar is rendered
|
|
20
|
-
expect(container.firstChild).toBeInTheDocument();
|
|
21
|
-
});
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pbWFnZVRvb2xiYXIiLCJfcmVhY3QyIiwiX3NsYXRlIiwiaXQiLCJjbGFzc2VzIiwiaG9sZGVyIiwiX3JlbmRlciIsInJlbmRlciIsImNyZWF0ZUVsZW1lbnQiLCJwZXJjZW50Iiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGx1Z2lucy9pbWFnZS9fX3Rlc3RzX18vaW1hZ2UtdG9vbGJhci50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFRvb2xiYXIgZnJvbSAnLi4vaW1hZ2UtdG9vbGJhcic7XG5pbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB7IERhdGEsIEJsb2NrLCBWYWx1ZSB9IGZyb20gJ3NsYXRlJztcblxuaXQoJ3JlbmRlcnMgaW1hZ2UgdG9vbGJhcicsICgpID0+IHtcbiAgY29uc3QgY2xhc3NlcyA9IHsgaG9sZGVyOiAnaG9sZGVyJyB9O1xuXG4gIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPFRvb2xiYXIgcGVyY2VudD17NTB9IGNsYXNzZXM9e2NsYXNzZXN9IG9uQ2hhbmdlPXtqZXN0LmZuKCl9IC8+KTtcblxuICAvLyBWZXJpZnkgdGhlIHRvb2xiYXIgaXMgcmVuZGVyZWRcbiAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGFBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUVBSSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsWUFBTTtFQUNoQyxJQUFNQyxPQUFPLEdBQUc7SUFBRUMsTUFBTSxFQUFFO0VBQVMsQ0FBQztFQUVwQyxJQUFBQyxPQUFBLEdBQXNCLElBQUFDLGNBQU0sZUFBQ1YsTUFBQSxZQUFBVyxhQUFBLENBQUNSLGFBQUEsV0FBTztNQUFDUyxPQUFPLEVBQUUsRUFBRztNQUFDTCxPQUFPLEVBQUVBLE9BQVE7TUFBQ00sUUFBUSxFQUFFQyxJQUFJLENBQUNDLEVBQUUsQ0FBQztJQUFFLENBQUUsQ0FBQyxDQUFDO0lBQXJGQyxTQUFTLEdBQUFQLE9BQUEsQ0FBVE8sU0FBUzs7RUFFakI7RUFDQUMsTUFBTSxDQUFDRCxTQUFTLENBQUNFLFVBQVUsQ0FBQyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2xELENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
var _mockChange = _interopRequireWildcard(require("./mock-change"));
|
|
6
|
-
var _slate = require("slate");
|
|
7
|
-
var _ = _interopRequireDefault(require("../"));
|
|
8
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
9
|
-
describe('image plugin', function () {
|
|
10
|
-
var value = {};
|
|
11
|
-
var imageSupport = {
|
|
12
|
-
"delete": jest.fn(),
|
|
13
|
-
add: jest.fn()
|
|
14
|
-
};
|
|
15
|
-
var imagePlugin = (0, _["default"])({
|
|
16
|
-
onDelete: function onDelete(src, done) {
|
|
17
|
-
imageSupport["delete"](src, function (e) {
|
|
18
|
-
done(e, value);
|
|
19
|
-
});
|
|
20
|
-
},
|
|
21
|
-
insertImageRequested: function insertImageRequested(node, getHandler) {
|
|
22
|
-
var handler = getHandler(function () {
|
|
23
|
-
return value;
|
|
24
|
-
});
|
|
25
|
-
imageSupport.add(handler);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
describe('normalizeNode', function () {
|
|
29
|
-
it('should exit the function if the node is not of type document', function () {
|
|
30
|
-
var returnValue = imagePlugin.normalizeNode({
|
|
31
|
-
object: 'image'
|
|
32
|
-
});
|
|
33
|
-
expect(returnValue).toEqual(undefined);
|
|
34
|
-
});
|
|
35
|
-
it('should exit if the function if there are no changes needed', function () {
|
|
36
|
-
var nodes = [{
|
|
37
|
-
object: 'text',
|
|
38
|
-
text: 'Before Image'
|
|
39
|
-
}, {
|
|
40
|
-
type: 'image'
|
|
41
|
-
}, {
|
|
42
|
-
object: 'text',
|
|
43
|
-
text: 'After Image'
|
|
44
|
-
}];
|
|
45
|
-
var returnValue = imagePlugin.normalizeNode({
|
|
46
|
-
object: 'document',
|
|
47
|
-
findDescendant: jest.fn(function (callback) {
|
|
48
|
-
nodes.forEach(function (n) {
|
|
49
|
-
return callback(n);
|
|
50
|
-
});
|
|
51
|
-
})
|
|
52
|
-
});
|
|
53
|
-
expect(returnValue).toEqual(undefined);
|
|
54
|
-
});
|
|
55
|
-
it('should return a function if there is a node with an empty text before an image', function () {
|
|
56
|
-
var nodes = [{
|
|
57
|
-
object: 'text',
|
|
58
|
-
text: '',
|
|
59
|
-
key: '1'
|
|
60
|
-
}, {
|
|
61
|
-
type: 'image',
|
|
62
|
-
key: '2'
|
|
63
|
-
}, {
|
|
64
|
-
object: 'text',
|
|
65
|
-
text: 'After Image',
|
|
66
|
-
key: '3'
|
|
67
|
-
}];
|
|
68
|
-
var findDescendant = jest.fn(function (callback) {
|
|
69
|
-
nodes.forEach(function (n) {
|
|
70
|
-
return callback(n);
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
var change = {
|
|
74
|
-
withoutNormalization: jest.fn(function (callback) {
|
|
75
|
-
callback();
|
|
76
|
-
}),
|
|
77
|
-
insertTextByKey: jest.fn()
|
|
78
|
-
};
|
|
79
|
-
var returnValue = imagePlugin.normalizeNode({
|
|
80
|
-
object: 'document',
|
|
81
|
-
findDescendant: findDescendant
|
|
82
|
-
});
|
|
83
|
-
expect(returnValue).toEqual(expect.any(Function));
|
|
84
|
-
returnValue(change);
|
|
85
|
-
expect(change.withoutNormalization).toHaveBeenCalledWith(expect.any(Function));
|
|
86
|
-
expect(change.insertTextByKey).toHaveBeenCalledWith('1', 0, ' ');
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9ja0NoYW5nZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9zbGF0ZSIsIl8iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJkZXNjcmliZSIsInZhbHVlIiwiaW1hZ2VTdXBwb3J0IiwiamVzdCIsImZuIiwiYWRkIiwiaW1hZ2VQbHVnaW4iLCJJbWFnZVRvb2xiYXIiLCJvbkRlbGV0ZSIsInNyYyIsImRvbmUiLCJpbnNlcnRJbWFnZVJlcXVlc3RlZCIsIm5vZGUiLCJnZXRIYW5kbGVyIiwiaGFuZGxlciIsIml0IiwicmV0dXJuVmFsdWUiLCJub3JtYWxpemVOb2RlIiwib2JqZWN0IiwiZXhwZWN0IiwidG9FcXVhbCIsInVuZGVmaW5lZCIsIm5vZGVzIiwidGV4dCIsInR5cGUiLCJmaW5kRGVzY2VuZGFudCIsImNhbGxiYWNrIiwiZm9yRWFjaCIsImtleSIsImNoYW5nZSIsIndpdGhvdXROb3JtYWxpemF0aW9uIiwiaW5zZXJ0VGV4dEJ5S2V5IiwiYW55IiwiRnVuY3Rpb24iLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL2ltYWdlL19fdGVzdHNfXy9pbmRleC50ZXN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNb2NrQ2hhbmdlLCB7IE1vY2tEb2N1bWVudCB9IGZyb20gJy4vbW9jay1jaGFuZ2UnO1xuXG5pbXBvcnQgeyBEYXRhIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IEltYWdlVG9vbGJhciBmcm9tICcuLi8nO1xuXG5kZXNjcmliZSgnaW1hZ2UgcGx1Z2luJywgKCkgPT4ge1xuICBsZXQgdmFsdWUgPSB7fTtcblxuICBjb25zdCBpbWFnZVN1cHBvcnQgPSB7XG4gICAgZGVsZXRlOiBqZXN0LmZuKCksXG4gICAgYWRkOiBqZXN0LmZuKCksXG4gIH07XG5cbiAgY29uc3QgaW1hZ2VQbHVnaW4gPSBJbWFnZVRvb2xiYXIoe1xuICAgIG9uRGVsZXRlOiAoc3JjLCBkb25lKSA9PiB7XG4gICAgICBpbWFnZVN1cHBvcnQuZGVsZXRlKHNyYywgKGUpID0+IHtcbiAgICAgICAgZG9uZShlLCB2YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGluc2VydEltYWdlUmVxdWVzdGVkOiAobm9kZSwgZ2V0SGFuZGxlcikgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlciA9IGdldEhhbmRsZXIoKCkgPT4gdmFsdWUpO1xuICAgICAgaW1hZ2VTdXBwb3J0LmFkZChoYW5kbGVyKTtcbiAgICB9LFxuICB9KTtcblxuICBkZXNjcmliZSgnbm9ybWFsaXplTm9kZScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGV4aXQgdGhlIGZ1bmN0aW9uIGlmIHRoZSBub2RlIGlzIG5vdCBvZiB0eXBlIGRvY3VtZW50JywgKCkgPT4ge1xuICAgICAgY29uc3QgcmV0dXJuVmFsdWUgPSBpbWFnZVBsdWdpbi5ub3JtYWxpemVOb2RlKHsgb2JqZWN0OiAnaW1hZ2UnIH0pO1xuXG4gICAgICBleHBlY3QocmV0dXJuVmFsdWUpLnRvRXF1YWwodW5kZWZpbmVkKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZXhpdCBpZiB0aGUgZnVuY3Rpb24gaWYgdGhlcmUgYXJlIG5vIGNoYW5nZXMgbmVlZGVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQmVmb3JlIEltYWdlJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQWZ0ZXIgSW1hZ2UnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGNvbnN0IHJldHVyblZhbHVlID0gaW1hZ2VQbHVnaW4ubm9ybWFsaXplTm9kZSh7XG4gICAgICAgIG9iamVjdDogJ2RvY3VtZW50JyxcbiAgICAgICAgZmluZERlc2NlbmRhbnQ6IGplc3QuZm4oKGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgbm9kZXMuZm9yRWFjaCgobikgPT4gY2FsbGJhY2sobikpO1xuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgICAgZXhwZWN0KHJldHVyblZhbHVlKS50b0VxdWFsKHVuZGVmaW5lZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBhIGZ1bmN0aW9uIGlmIHRoZXJlIGlzIGEgbm9kZSB3aXRoIGFuIGVtcHR5IHRleHQgYmVmb3JlIGFuIGltYWdlJywgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnJyxcbiAgICAgICAgICBrZXk6ICcxJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICAgICAga2V5OiAnMicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvYmplY3Q6ICd0ZXh0JyxcbiAgICAgICAgICB0ZXh0OiAnQWZ0ZXIgSW1hZ2UnLFxuICAgICAgICAgIGtleTogJzMnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGNvbnN0IGZpbmREZXNjZW5kYW50ID0gamVzdC5mbigoY2FsbGJhY2spID0+IHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaCgobikgPT4gY2FsbGJhY2sobikpO1xuICAgICAgfSk7XG4gICAgICBjb25zdCBjaGFuZ2UgPSB7XG4gICAgICAgIHdpdGhvdXROb3JtYWxpemF0aW9uOiBqZXN0LmZuKChjYWxsYmFjaykgPT4ge1xuICAgICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICAgIH0pLFxuICAgICAgICBpbnNlcnRUZXh0QnlLZXk6IGplc3QuZm4oKSxcbiAgICAgIH07XG4gICAgICBjb25zdCByZXR1cm5WYWx1ZSA9IGltYWdlUGx1Z2luLm5vcm1hbGl6ZU5vZGUoe1xuICAgICAgICBvYmplY3Q6ICdkb2N1bWVudCcsXG4gICAgICAgIGZpbmREZXNjZW5kYW50LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChyZXR1cm5WYWx1ZSkudG9FcXVhbChleHBlY3QuYW55KEZ1bmN0aW9uKSk7XG5cbiAgICAgIHJldHVyblZhbHVlKGNoYW5nZSk7XG5cbiAgICAgIGV4cGVjdChjaGFuZ2Uud2l0aG91dE5vcm1hbGl6YXRpb24pLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5hbnkoRnVuY3Rpb24pKTtcbiAgICAgIGV4cGVjdChjaGFuZ2UuaW5zZXJ0VGV4dEJ5S2V5KS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnMScsIDAsICcgJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxDQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFBK0IsU0FBQUQsd0JBQUFLLENBQUEsRUFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFQLHVCQUFBLFlBQUFBLHdCQUFBSyxDQUFBLEVBQUFDLENBQUEsU0FBQUEsQ0FBQSxJQUFBRCxDQUFBLElBQUFBLENBQUEsQ0FBQUssVUFBQSxTQUFBTCxDQUFBLE1BQUFNLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLEtBQUFDLFNBQUEsbUJBQUFULENBQUEsaUJBQUFBLENB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
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
var _mockChange = _interopRequireWildcard(require("./mock-change"));
|
|
6
|
-
var _slate = require("slate");
|
|
7
|
-
var _insertImageHandler = _interopRequireDefault(require("../insert-image-handler"));
|
|
8
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
9
|
-
expect.extend({
|
|
10
|
-
toMatchData: function toMatchData(received, argument) {
|
|
11
|
-
var argData = _slate.Data.create(argument);
|
|
12
|
-
var pass = argData.equals(received.data);
|
|
13
|
-
if (pass) {
|
|
14
|
-
return {
|
|
15
|
-
message: function message() {
|
|
16
|
-
return "expected ".concat(received.toJSON(), " not to be divisible by ").concat(argData.toJSON());
|
|
17
|
-
},
|
|
18
|
-
pass: true
|
|
19
|
-
};
|
|
20
|
-
} else {
|
|
21
|
-
return {
|
|
22
|
-
message: function message() {
|
|
23
|
-
return "expected ".concat(received.toJSON(), " to be divisible by ").concat(argData.toJSON());
|
|
24
|
-
},
|
|
25
|
-
pass: false
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
describe('insert image handler', function () {
|
|
31
|
-
var _change, document, value;
|
|
32
|
-
beforeEach(function () {
|
|
33
|
-
document = new _mockChange.MockDocument();
|
|
34
|
-
_change = new _mockChange["default"]();
|
|
35
|
-
value = {
|
|
36
|
-
change: function change() {
|
|
37
|
-
return _change;
|
|
38
|
-
},
|
|
39
|
-
document: document
|
|
40
|
-
};
|
|
41
|
-
});
|
|
42
|
-
var block = {
|
|
43
|
-
key: 1
|
|
44
|
-
};
|
|
45
|
-
var onChange = jest.fn();
|
|
46
|
-
var handler = new _insertImageHandler["default"](block, function () {}, function () {
|
|
47
|
-
return value;
|
|
48
|
-
}, onChange);
|
|
49
|
-
test('it constructs', function () {
|
|
50
|
-
expect(handler).not.toEqual(undefined);
|
|
51
|
-
});
|
|
52
|
-
describe('fileChosen', function () {
|
|
53
|
-
var fileReader;
|
|
54
|
-
beforeEach(function () {
|
|
55
|
-
fileReader = {
|
|
56
|
-
readAsDataURL: jest.fn()
|
|
57
|
-
};
|
|
58
|
-
global.FileReader = function () {
|
|
59
|
-
return fileReader;
|
|
60
|
-
};
|
|
61
|
-
handler.fileChosen({});
|
|
62
|
-
});
|
|
63
|
-
test('calls readAsDataURL', function () {
|
|
64
|
-
expect(fileReader.readAsDataURL).toBeCalledWith({});
|
|
65
|
-
});
|
|
66
|
-
test('calls onChange with src -> dataUrl', function () {
|
|
67
|
-
fileReader.result = 'dataURL';
|
|
68
|
-
fileReader.onload();
|
|
69
|
-
expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
|
|
70
|
-
expect(_change.setNodeByKey.mock.calls[0][1]).toMatchData({
|
|
71
|
-
src: 'dataURL'
|
|
72
|
-
});
|
|
73
|
-
expect(onChange).toBeCalledWith(_change);
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
describe('progress', function () {
|
|
77
|
-
test('calls change w/ percent', function () {
|
|
78
|
-
handler.progress(40, 40, 100);
|
|
79
|
-
expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
|
|
80
|
-
expect(_change.setNodeByKey.mock.calls[0][1].data.toJS()).toMatchObject({
|
|
81
|
-
percent: 40
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
describe('done', function () {
|
|
86
|
-
test('calls setNodeByKey', function () {
|
|
87
|
-
handler.done(null, 'src');
|
|
88
|
-
expect(_change.setNodeByKey).toBeCalledWith(block.key, expect.anything());
|
|
89
|
-
expect(_change.setNodeByKey.mock.calls[0][1].data.toJS()).toMatchObject({
|
|
90
|
-
src: 'src',
|
|
91
|
-
loaded: true,
|
|
92
|
-
percent: 100
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
describe('cancel', function () {
|
|
97
|
-
beforeEach(function () {
|
|
98
|
-
document.getChild = jest.fn().mockReturnValue({
|
|
99
|
-
data: _slate.Data.create({}),
|
|
100
|
-
key: block.key
|
|
101
|
-
});
|
|
102
|
-
handler.cancel();
|
|
103
|
-
});
|
|
104
|
-
test('calls onChange', function () {
|
|
105
|
-
expect(onChange).toBeCalled();
|
|
106
|
-
});
|
|
107
|
-
test('calls removeNodeByKey', function () {
|
|
108
|
-
expect(_change.removeNodeByKey).toBeCalledWith(block.key);
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9ja0NoYW5nZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9zbGF0ZSIsIl9pbnNlcnRJbWFnZUhhbmRsZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJleHBlY3QiLCJleHRlbmQiLCJ0b01hdGNoRGF0YSIsInJlY2VpdmVkIiwiYXJndW1lbnQiLCJhcmdEYXRhIiwiRGF0YSIsImNyZWF0ZSIsInBhc3MiLCJlcXVhbHMiLCJkYXRhIiwibWVzc2FnZSIsImNvbmNhdCIsInRvSlNPTiIsImRlc2NyaWJlIiwiY2hhbmdlIiwiZG9jdW1lbnQiLCJ2YWx1ZSIsImJlZm9yZUVhY2giLCJNb2NrRG9jdW1lbnQiLCJNb2NrQ2hhbmdlIiwiYmxvY2siLCJrZXkiLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsImhhbmRsZXIiLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJ0ZXN0Iiwibm90IiwidG9FcXVhbCIsInVuZGVmaW5lZCIsImZpbGVSZWFkZXIiLCJyZWFkQXNEYXRhVVJMIiwiZ2xvYmFsIiwiRmlsZVJlYWRlciIsImZpbGVDaG9zZW4iLCJ0b0JlQ2FsbGVkV2l0aCIsInJlc3VsdCIsIm9ubG9hZCIsInNldE5vZGVCeUtleSIsImFueXRoaW5nIiwibW9jayIsImNhbGxzIiwic3JjIiwicHJvZ3Jlc3MiLCJ0b0pTIiwidG9NYXRjaE9iamVjdCIsInBlcmNlbnQiLCJkb25lIiwibG9hZGVkIiwiZ2V0Q2hpbGQiLCJtb2NrUmV0dXJuVmFsdWUiLCJjYW5jZWwiLCJ0b0JlQ2FsbGVkIiwicmVtb3ZlTm9kZUJ5S2V5Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvX190ZXN0c19fL2luc2VydC1pbWFnZS1oYW5kbGVyLnRlc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1vY2tDaGFuZ2UsIHsgTW9ja0RvY3VtZW50IH0gZnJvbSAnLi9tb2NrLWNoYW5nZSc7XG5cbmltcG9ydCB7IERhdGEgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgSW5zZXJ0SW1hZ2VIYW5kbGVyIGZyb20gJy4uL2luc2VydC1pbWFnZS1oYW5kbGVyJztcblxuZXhwZWN0LmV4dGVuZCh7XG4gIHRvTWF0Y2hEYXRhOiAocmVjZWl2ZWQsIGFyZ3VtZW50KSA9PiB7XG4gICAgY29uc3QgYXJnRGF0YSA9IERhdGEuY3JlYXRlKGFyZ3VtZW50KTtcbiAgICBjb25zdCBwYXNzID0gYXJnRGF0YS5lcXVhbHMocmVjZWl2ZWQuZGF0YSk7XG4gICAgaWYgKHBhc3MpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1lc3NhZ2U6ICgpID0+IGBleHBlY3RlZCAke3JlY2VpdmVkLnRvSlNPTigpfSBub3QgdG8gYmUgZGl2aXNpYmxlIGJ5ICR7YXJnRGF0YS50b0pTT04oKX1gLFxuICAgICAgICBwYXNzOiB0cnVlLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWVzc2FnZTogKCkgPT4gYGV4cGVjdGVkICR7cmVjZWl2ZWQudG9KU09OKCl9IHRvIGJlIGRpdmlzaWJsZSBieSAke2FyZ0RhdGEudG9KU09OKCl9YCxcbiAgICAgICAgcGFzczogZmFsc2UsXG4gICAgICB9O1xuICAgIH1cbiAgfSxcbn0pO1xuZGVzY3JpYmUoJ2luc2VydCBpbWFnZSBoYW5kbGVyJywgKCkgPT4ge1xuICBsZXQgY2hhbmdlLCBkb2N1bWVudCwgdmFsdWU7XG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGRvY3VtZW50ID0gbmV3IE1vY2tEb2N1bWVudCgpO1xuICAgIGNoYW5nZSA9IG5ldyBNb2NrQ2hhbmdlKCk7XG4gICAgdmFsdWUgPSB7XG4gICAgICBjaGFuZ2U6ICgpID0+IGNoYW5nZSxcbiAgICAgIGRvY3VtZW50LFxuICAgIH07XG4gIH0pO1xuXG4gIGNvbnN0IGJsb2NrID0geyBrZXk6IDEgfTtcbiAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgY29uc3QgaGFuZGxlciA9IG5ldyBJbnNlcnRJbWFnZUhhbmRsZXIoXG4gICAgYmxvY2ssXG4gICAgKCkgPT4ge30sXG4gICAgKCkgPT4gdmFsdWUsXG4gICAgb25DaGFuZ2UsXG4gICk7XG5cbiAgdGVzdCgnaXQgY29uc3RydWN0cycsICgpID0+IHtcbiAgICBleHBlY3QoaGFuZGxlcikubm90LnRvRXF1YWwodW5kZWZpbmVkKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2ZpbGVDaG9zZW4nLCAoKSA9PiB7XG4gICAgbGV0IGZpbGVSZWFkZXI7XG4gICAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICBmaWxlUmVhZGVyID0ge1xuICAgICAgICByZWFkQXNEYXRhVVJMOiBqZXN0LmZuKCksXG4gICAgICB9O1xuXG4gICAgICBnbG9iYWwuRmlsZVJlYWRlciA9ICgpID0+IGZpbGVSZWFkZXI7XG4gICAgICBoYW5kbGVyLmZpbGVDaG9zZW4oe30pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnY2FsbHMgcmVhZEFzRGF0YVVSTCcsICgpID0+IHtcbiAgICAgIGV4cGVjdChmaWxlUmVhZGVyLnJlYWRBc0RhdGFVUkwpLnRvQmVDYWxsZWRXaXRoKHt9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NhbGxzIG9uQ2hhbmdlIHdpdGggc3JjIC0+IGRhdGFVcmwnLCAoKSA9PiB7XG4gICAgICBmaWxlUmVhZGVyLnJlc3VsdCA9ICdkYXRhVVJMJztcbiAgICAgIGZpbGVSZWFkZXIub25sb2FkKCk7XG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleSkudG9CZUNhbGxlZFdpdGgoYmxvY2sua2V5LCBleHBlY3QuYW55dGhpbmcoKSk7XG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdKS50b01hdGNoRGF0YSh7XG4gICAgICAgIHNyYzogJ2RhdGFVUkwnLFxuICAgICAgfSk7XG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvQmVDYWxsZWRXaXRoKGNoYW5nZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdwcm9ncmVzcycsICgpID0+IHtcbiAgICB0ZXN0KCdjYWxscyBjaGFuZ2Ugdy8gcGVyY2VudCcsICgpID0+IHtcbiAgICAgIGhhbmRsZXIucHJvZ3Jlc3MoNDAsIDQwLCAxMDApO1xuICAgICAgZXhwZWN0KGNoYW5nZS5zZXROb2RlQnlLZXkpLnRvQmVDYWxsZWRXaXRoKGJsb2NrLmtleSwgZXhwZWN0LmFueXRoaW5nKCkpO1xuXG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdLmRhdGEudG9KUygpKS50b01hdGNoT2JqZWN0KHtcbiAgICAgICAgcGVyY2VudDogNDAsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2RvbmUnLCAoKSA9PiB7XG4gICAgdGVzdCgnY2FsbHMgc2V0Tm9kZUJ5S2V5JywgKCkgPT4ge1xuICAgICAgaGFuZGxlci5kb25lKG51bGwsICdzcmMnKTtcblxuICAgICAgZXhwZWN0KGNoYW5nZS5zZXROb2RlQnlLZXkpLnRvQmVDYWxsZWRXaXRoKGJsb2NrLmtleSwgZXhwZWN0LmFueXRoaW5nKCkpO1xuXG4gICAgICBleHBlY3QoY2hhbmdlLnNldE5vZGVCeUtleS5tb2NrLmNhbGxzWzBdWzFdLmRhdGEudG9KUygpKS50b01hdGNoT2JqZWN0KHtcbiAgICAgICAgc3JjOiAnc3JjJyxcbiAgICAgICAgbG9hZGVkOiB0cnVlLFxuICAgICAgICBwZXJjZW50OiAxMDAsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2NhbmNlbCcsICgpID0+IHtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIGRvY3VtZW50LmdldENoaWxkID0gamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7IGRhdGE6IERhdGEuY3JlYXRlKHt9KSwga2V5OiBibG9jay5rZXkgfSk7XG4gICAgICBoYW5kbGVyLmNhbmNlbCgpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnY2FsbHMgb25DaGFuZ2UnLCAoKSA9PiB7XG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvQmVDYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NhbGxzIHJlbW92ZU5vZGVCeUtleScsICgpID0+IHtcbiAgICAgIGV4cGVjdChjaGFuZ2UucmVtb3ZlTm9kZUJ5S2V5KS50b0JlQ2FsbGVkV2l0aChibG9jay5rZXkpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsbUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUF5RCxTQUFBRCx3QkFBQUssQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQVAsdUJBQUEsWUFBQUEsd0JBQUFLLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFELENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsTUFBQU0sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxtQkFBQVQsQ0FBQSxpQkFBQUEsQ0FBQSxnQkFBQVUsT0FBQSxDQUFBVixDQUFBLDBCQUFBQSxDQUFBLFNBQUFRLENBQUEsTUFBQUYsQ0FBQSxHQUFBTCxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxRQUFBRyxDQUFBLENBQUFLLEdBQUEsQ0FBQVgsQ0FBQSxVQUFBTSxDQUFBLENBQUFNLEdBQUEsQ0FBQVosQ0FBQSxHQUFBTSxDQUFBLENB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
|