@pie-lib/editable-html-tip-tap 1.0.5 → 1.0.7
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/lib/constants.js +2 -5
- package/package.json +3 -3
- package/src/constants.js +0 -2
- package/lib/__tests__/editor.test.js +0 -470
- package/lib/__tests__/serialization.test.js +0 -246
- package/lib/block-tags.js +0 -25
- package/lib/components/CharacterPicker.js.map +0 -1
- package/lib/components/EditableHtml.js.map +0 -1
- package/lib/components/MenuBar.js.map +0 -1
- package/lib/components/TiptapContainer.js.map +0 -1
- package/lib/components/buttons/done-button.js +0 -53
- package/lib/components/characters/characterUtils.js.map +0 -1
- package/lib/components/characters/custom-popper.js.map +0 -1
- package/lib/components/common/done-button.js.map +0 -1
- package/lib/components/common/toolbar-buttons.js.map +0 -1
- package/lib/components/icons/CssIcon.js.map +0 -1
- package/lib/components/icons/RespArea.js.map +0 -1
- package/lib/components/icons/TableIcons.js.map +0 -1
- package/lib/components/icons/TextAlign.js.map +0 -1
- package/lib/components/icons/index.js +0 -194
- package/lib/components/image/AltDialog.js.map +0 -1
- package/lib/components/image/ImageToolbar.js.map +0 -1
- package/lib/components/image/InsertImageHandler.js.map +0 -1
- package/lib/components/image/alt-dialog.js +0 -2
- package/lib/components/media/MediaDialog.js.map +0 -1
- package/lib/components/media/MediaToolbar.js.map +0 -1
- package/lib/components/media/MediaWrapper.js.map +0 -1
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +0 -1
- package/lib/components/respArea/DragInTheBlank/choice.js.map +0 -1
- package/lib/components/respArea/DragInTheBlank.js +0 -94
- package/lib/components/respArea/ExplicitConstructedResponse.js.map +0 -1
- package/lib/components/respArea/InlineDropdown.js.map +0 -1
- package/lib/components/respArea/ToolbarIcon.js.map +0 -1
- package/lib/components/respArea/choice.js +0 -2
- package/lib/constants.js.map +0 -1
- package/lib/editor.js +0 -1356
- package/lib/extensions/MediaView.js +0 -112
- package/lib/extensions/characters.js +0 -65
- package/lib/extensions/component.js.map +0 -1
- package/lib/extensions/css.js.map +0 -1
- package/lib/extensions/custom-toolbar-wrapper.js.map +0 -1
- package/lib/extensions/extended-table.js.map +0 -1
- package/lib/extensions/image.js.map +0 -1
- package/lib/extensions/index.js.map +0 -1
- package/lib/extensions/math.js.map +0 -1
- package/lib/extensions/media.js.map +0 -1
- package/lib/extensions/responseArea.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/old-index.js +0 -269
- package/lib/parse-html.js +0 -16
- package/lib/plugins/characters/custom-popper.js +0 -73
- package/lib/plugins/characters/index.js +0 -305
- package/lib/plugins/characters/utils.js +0 -381
- package/lib/plugins/css/icons/index.js +0 -37
- package/lib/plugins/css/index.js +0 -390
- package/lib/plugins/customPlugin/index.js +0 -114
- package/lib/plugins/html/icons/index.js +0 -38
- package/lib/plugins/html/index.js +0 -81
- package/lib/plugins/image/__tests__/component.test.js +0 -51
- package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +0 -56
- package/lib/plugins/image/__tests__/image-toolbar.test.js +0 -26
- package/lib/plugins/image/__tests__/index.test.js +0 -98
- package/lib/plugins/image/__tests__/insert-image-handler.test.js +0 -125
- package/lib/plugins/image/__tests__/mock-change.js +0 -25
- package/lib/plugins/image/alt-dialog.js +0 -129
- package/lib/plugins/image/component.js +0 -419
- package/lib/plugins/image/image-toolbar.js +0 -177
- package/lib/plugins/image/index.js +0 -263
- package/lib/plugins/image/insert-image-handler.js +0 -117
- package/lib/plugins/index.js +0 -341
- package/lib/plugins/list/__tests__/index.test.js +0 -79
- package/lib/plugins/list/index.js +0 -334
- package/lib/plugins/math/__tests__/index.test.js +0 -300
- package/lib/plugins/math/index.js +0 -454
- package/lib/plugins/media/__tests__/index.test.js +0 -71
- package/lib/plugins/media/index.js +0 -387
- package/lib/plugins/media/media-dialog.js +0 -709
- package/lib/plugins/media/media-toolbar.js +0 -101
- package/lib/plugins/media/media-wrapper.js +0 -93
- package/lib/plugins/rendering/index.js +0 -46
- package/lib/plugins/respArea/drag-in-the-blank/choice.js +0 -289
- package/lib/plugins/respArea/drag-in-the-blank/index.js +0 -94
- package/lib/plugins/respArea/explicit-constructed-response/index.js +0 -120
- package/lib/plugins/respArea/icons/index.js +0 -95
- package/lib/plugins/respArea/index.js +0 -341
- package/lib/plugins/respArea/inline-dropdown/index.js +0 -126
- package/lib/plugins/respArea/math-templated/index.js +0 -130
- package/lib/plugins/respArea/utils.js +0 -125
- package/lib/plugins/table/CustomTablePlugin.js +0 -133
- package/lib/plugins/table/__tests__/index.test.js +0 -442
- package/lib/plugins/table/__tests__/table-toolbar.test.js +0 -54
- package/lib/plugins/table/icons/index.js +0 -69
- package/lib/plugins/table/index.js +0 -483
- package/lib/plugins/table/table-toolbar.js +0 -187
- package/lib/plugins/textAlign/icons/index.js +0 -194
- package/lib/plugins/textAlign/index.js +0 -34
- package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +0 -128
- package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +0 -51
- package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +0 -54
- package/lib/plugins/toolbar/__tests__/toolbar.test.js +0 -120
- package/lib/plugins/toolbar/default-toolbar.js +0 -229
- package/lib/plugins/toolbar/done-button.js +0 -53
- package/lib/plugins/toolbar/editor-and-toolbar.js +0 -286
- package/lib/plugins/toolbar/index.js +0 -34
- package/lib/plugins/toolbar/toolbar-buttons.js +0 -194
- package/lib/plugins/toolbar/toolbar.js +0 -376
- package/lib/plugins/utils.js +0 -62
- package/lib/serialization.js +0 -677
- package/lib/shared/alert-dialog.js +0 -75
- package/lib/styles/editorContainerStyles.js.map +0 -1
- package/lib/theme.js.map +0 -1
- package/lib/utils/size.js.map +0 -1
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
|
-
var _react = _interopRequireDefault(require("react"));
|
|
13
|
-
|
|
14
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
-
|
|
16
|
-
var _styles = require("@material-ui/core/styles");
|
|
17
|
-
|
|
18
|
-
var _mathInput = require("@pie-lib/math-input");
|
|
19
|
-
|
|
20
|
-
var MathTemplated = function MathTemplated(_ref) {
|
|
21
|
-
var attributes = _ref.attributes,
|
|
22
|
-
value = _ref.value,
|
|
23
|
-
classes = _ref.classes,
|
|
24
|
-
keyToDisplay = _ref.keyToDisplay;
|
|
25
|
-
return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({}, attributes, {
|
|
26
|
-
className: classes.spanContainer
|
|
27
|
-
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
28
|
-
className: classes.responseBox
|
|
29
|
-
}, keyToDisplay), /*#__PURE__*/_react["default"].createElement("div", {
|
|
30
|
-
className: classes.mathBlock
|
|
31
|
-
}, /*#__PURE__*/_react["default"].createElement(_mathInput.mq.Static, {
|
|
32
|
-
latex: value
|
|
33
|
-
})));
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
MathTemplated.propTypes = {
|
|
37
|
-
attributes: _propTypes["default"].object,
|
|
38
|
-
classes: _propTypes["default"].object.isRequired,
|
|
39
|
-
value: _propTypes["default"].string,
|
|
40
|
-
keyToDisplay: _propTypes["default"].string
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
var styles = function styles(theme) {
|
|
44
|
-
return {
|
|
45
|
-
responseBox: {
|
|
46
|
-
background: theme.palette.grey['A100'],
|
|
47
|
-
color: theme.palette.grey['A700'],
|
|
48
|
-
display: 'inline-flex',
|
|
49
|
-
borderRight: '2px solid #C0C3CF',
|
|
50
|
-
boxSizing: 'border-box',
|
|
51
|
-
overflow: 'hidden',
|
|
52
|
-
fontSize: '12px',
|
|
53
|
-
minHeight: '36px',
|
|
54
|
-
height: '100%',
|
|
55
|
-
alignItems: 'center',
|
|
56
|
-
fontFamily: 'Symbola, Times New Roman, serif',
|
|
57
|
-
padding: '0 2px'
|
|
58
|
-
},
|
|
59
|
-
spanContainer: {
|
|
60
|
-
display: 'inline-flex',
|
|
61
|
-
border: '1px solid #C0C3CF',
|
|
62
|
-
margin: '1px 5px',
|
|
63
|
-
cursor: 'pointer',
|
|
64
|
-
alignItems: 'center',
|
|
65
|
-
justifyContent: 'center',
|
|
66
|
-
minWidth: '50px',
|
|
67
|
-
minHeight: '36px',
|
|
68
|
-
height: 'fit-content'
|
|
69
|
-
},
|
|
70
|
-
mathBlock: {
|
|
71
|
-
flex: 8,
|
|
72
|
-
color: 'var(--pie-text, black)',
|
|
73
|
-
padding: '4px !important',
|
|
74
|
-
display: 'flex',
|
|
75
|
-
alignItems: 'center',
|
|
76
|
-
justifyContent: 'center',
|
|
77
|
-
backgroundColor: 'var(--pie-background, rgba(255, 255, 255, 0))',
|
|
78
|
-
'& > .mq-math-mode sup.mq-nthroot': {
|
|
79
|
-
fontSize: '70% !important',
|
|
80
|
-
verticalAlign: '1em !important'
|
|
81
|
-
},
|
|
82
|
-
'& > .mq-math-mode .mq-sqrt-stem': {
|
|
83
|
-
borderTop: '0.07em solid',
|
|
84
|
-
marginLeft: '-1.5px',
|
|
85
|
-
marginTop: '-2px !important',
|
|
86
|
-
paddingTop: '5px !important'
|
|
87
|
-
},
|
|
88
|
-
'& .mq-overarrow-inner': {
|
|
89
|
-
paddingTop: '0 !important',
|
|
90
|
-
border: 'none !important'
|
|
91
|
-
},
|
|
92
|
-
'& .mq-overarrow.mq-arrow-both': {
|
|
93
|
-
marginTop: '0px',
|
|
94
|
-
minWidth: '1.23em',
|
|
95
|
-
'& *': {
|
|
96
|
-
lineHeight: '1 !important'
|
|
97
|
-
},
|
|
98
|
-
'&:before': {
|
|
99
|
-
top: '-0.4em',
|
|
100
|
-
left: '-1px'
|
|
101
|
-
},
|
|
102
|
-
'&:after': {
|
|
103
|
-
top: '0px !important',
|
|
104
|
-
position: 'absolute !important',
|
|
105
|
-
right: '-2px'
|
|
106
|
-
},
|
|
107
|
-
'&.mq-empty:after': {
|
|
108
|
-
top: '-0.45em'
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
'& .mq-overarrow.mq-arrow-right': {
|
|
112
|
-
'&:before': {
|
|
113
|
-
top: '-0.4em',
|
|
114
|
-
right: '-1px'
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
'& .mq-overarrow-inner-right': {
|
|
118
|
-
display: 'none !important'
|
|
119
|
-
},
|
|
120
|
-
'& .mq-overarrow-inner-left': {
|
|
121
|
-
display: 'none !important'
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
var _default = (0, _styles.withStyles)(styles)(MathTemplated);
|
|
128
|
-
|
|
129
|
-
exports["default"] = _default;
|
|
130
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL21hdGgtdGVtcGxhdGVkL2luZGV4LmpzeCJdLCJuYW1lcyI6WyJNYXRoVGVtcGxhdGVkIiwiYXR0cmlidXRlcyIsInZhbHVlIiwiY2xhc3NlcyIsImtleVRvRGlzcGxheSIsInNwYW5Db250YWluZXIiLCJyZXNwb25zZUJveCIsIm1hdGhCbG9jayIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJzdHJpbmciLCJzdHlsZXMiLCJ0aGVtZSIsImJhY2tncm91bmQiLCJwYWxldHRlIiwiZ3JleSIsImNvbG9yIiwiZGlzcGxheSIsImJvcmRlclJpZ2h0IiwiYm94U2l6aW5nIiwib3ZlcmZsb3ciLCJmb250U2l6ZSIsIm1pbkhlaWdodCIsImhlaWdodCIsImFsaWduSXRlbXMiLCJmb250RmFtaWx5IiwicGFkZGluZyIsImJvcmRlciIsIm1hcmdpbiIsImN1cnNvciIsImp1c3RpZnlDb250ZW50IiwibWluV2lkdGgiLCJmbGV4IiwiYmFja2dyb3VuZENvbG9yIiwidmVydGljYWxBbGlnbiIsImJvcmRlclRvcCIsIm1hcmdpbkxlZnQiLCJtYXJnaW5Ub3AiLCJwYWRkaW5nVG9wIiwibGluZUhlaWdodCIsInRvcCIsImxlZnQiLCJwb3NpdGlvbiIsInJpZ2h0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLElBQU1BLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0I7QUFBQSxNQUFHQyxVQUFILFFBQUdBLFVBQUg7QUFBQSxNQUFlQyxLQUFmLFFBQWVBLEtBQWY7QUFBQSxNQUFzQkMsT0FBdEIsUUFBc0JBLE9BQXRCO0FBQUEsTUFBK0JDLFlBQS9CLFFBQStCQSxZQUEvQjtBQUFBLHNCQUNwQixzRUFBVUgsVUFBVjtBQUFzQixJQUFBLFNBQVMsRUFBRUUsT0FBTyxDQUFDRTtBQUF6QyxtQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFF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LFNBTm1CO0FBVS9CLG1CQUFXO0FBQ1RELFVBQUFBLEdBQUcsRUFBRSxnQkFESTtBQUVURSxVQUFBQSxRQUFRLEVBQUUscUJBRkQ7QUFHVEMsVUFBQUEsS0FBSyxFQUFFO0FBSEUsU0FWb0I7QUFlL0IsNEJBQW9CO0FBQ2xCSCxVQUFBQSxHQUFHLEVBQUU7QUFEYTtBQWZXLE9BdEJ4QjtBQXlDVCx3Q0FBa0M7QUFDaEMsb0JBQVk7QUFDVkEsVUFBQUEsR0FBRyxFQUFFLFFBREs7QUFFVkcsVUFBQUEsS0FBSyxFQUFFO0FBRkc7QUFEb0IsT0F6Q3pCO0FBK0NULHFDQUErQjtBQUM3QjFCLFFBQUFBLE9BQU8sRUFBRTtBQURvQixPQS9DdEI7QUFrRFQsb0NBQThCO0FBQzVCQSxRQUFBQSxPQUFPLEVBQUU7QUFEbUI7QUFsRHJCO0FBMUJjLEdBQVo7QUFBQSxDQUFmOztlQWtGZSx3QkFBV04sTUFBWCxFQUFtQmIsYUFBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyBtcSB9IGZyb20gJ0BwaWUtbGliL21hdGgtaW5wdXQnO1xuXG5jb25zdCBNYXRoVGVtcGxhdGVkID0gKHsgYXR0cmlidXRlcywgdmFsdWUsIGNsYXNzZXMsIGtleVRvRGlzcGxheSB9KSA9PiAoXG4gIDxzcGFuIHsuLi5hdHRyaWJ1dGVzfSBjbGFzc05hbWU9e2NsYXNzZXMuc3BhbkNvbnRhaW5lcn0+XG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMucmVzcG9uc2VCb3h9PntrZXlUb0Rpc3BsYXl9PC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMubWF0aEJsb2NrfT5cbiAgICAgIDxtcS5TdGF0aWMgbGF0ZXg9e3ZhbHVlfSAvPlxuICAgIDwvZGl2PlxuICA8L3NwYW4+XG4pO1xuXG5NYXRoVGVtcGxhdGVkLnByb3BUeXBlcyA9IHtcbiAgYXR0cmlidXRlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAga2V5VG9EaXNwbGF5OiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcblxuY29uc3Qgc3R5bGVzID0gKHRoZW1lKSA9PiAoe1xuICByZXNwb25zZUJveDoge1xuICAgIGJhY2tncm91bmQ6IHRoZW1lLnBhbGV0dGUuZ3JleVsnQTEwMCddLFxuICAgIGNvbG9yOiB0aGVtZS5wYWxldHRlLmdyZXlbJ0E3MDAnXSxcbiAgICBkaXNwbGF5OiAnaW5saW5lLWZsZXgnLFxuICAgIGJvcmRlclJpZ2h0OiAnMnB4IHNvbGlkICNDMEMzQ0YnLFxuICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICBmb250U2l6ZTogJzEycHgnLFxuICAgIG1pbkhlaWdodDogJzM2cHgnLFxuICAgIGhlaWdodDogJzEwMCUnLFxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIGZvbnRGYW1pbHk6ICdTeW1ib2xhLCBUaW1lcyBOZXcgUm9tYW4sIHNlcmlmJyxcbiAgICBwYWRkaW5nOiAnMCAycHgnLFxuICB9LFxuICBzcGFuQ29udGFpbmVyOiB7XG4gICAgZGlzcGxheTogJ2lubGluZS1mbGV4JyxcbiAgICBib3JkZXI6ICcxcHggc29saWQgI0MwQzNDRicsXG4gICAgbWFyZ2luOiAnMXB4IDVweCcsXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgIG1pbldpZHRoOiAnNTBweCcsXG4gICAgbWluSGVpZ2h0OiAnMzZweCcsXG4gICAgaGVpZ2h0OiAnZml0LWNvbnRlbnQnLFxuICB9LFxuICBtYXRoQmxvY2s6IHtcbiAgICBmbGV4OiA4LFxuICAgIGNvbG9yOiAndmFyKC0tcGllLXRleHQsIGJsYWNrKScsXG4gICAgcGFkZGluZzogJzRweCAhaW1wb3J0YW50JyxcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgIGJhY2tncm91bmRDb2xvcjogJ3ZhcigtLXBpZS1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKScsXG4gICAgJyYgPiAubXEtbWF0aC1tb2RlIHN1cC5tcS1udGhyb290Jzoge1xuICAgICAgZm9udFNpemU6ICc3MCUgIWltcG9ydGFudCcsXG4gICAgICB2ZXJ0aWNhbEFsaWduOiAnMWVtICFpbXBvcnRhbnQnLFxuICAgIH0sXG4gICAgJyYgPiAubXEtbWF0aC1tb2RlIC5tcS1zcXJ0LXN0ZW0nOiB7XG4gICAgICBib3JkZXJUb3A6ICcwLjA3ZW0gc29saWQnLFxuICAgICAgbWFyZ2luTGVmdDogJy0xLjVweCcsXG4gICAgICBtYXJnaW5Ub3A6ICctMnB4ICFpbXBvcnRhbnQnLFxuICAgICAgcGFkZGluZ1RvcDogJzVweCAhaW1wb3J0YW50JyxcbiAgICB9LFxuICAgICcmIC5tcS1vdmVyYXJyb3ctaW5uZXInOiB7XG4gICAgICBwYWRkaW5nVG9wOiAnMCAhaW1wb3J0YW50JyxcbiAgICAgIGJvcmRlcjogJ25vbmUgIWltcG9ydGFudCcsXG4gICAgfSxcbiAgICAnJiAubXEtb3ZlcmFycm93Lm1xLWFycm93LWJvdGgnOiB7XG4gICAgICBtYXJnaW5Ub3A6ICcwcHgnLFxuICAgICAgbWluV2lkdGg6ICcxLjIzZW0nLFxuICAgICAgJyYgKic6IHtcbiAgICAgICAgbGluZUhlaWdodDogJzEgIWltcG9ydGFudCcsXG4gICAgICB9LFxuICAgICAgJyY6YmVmb3JlJzoge1xuICAgICAgICB0b3A6ICctMC40ZW0nLFxuICAgICAgICBsZWZ0OiAnLTFweCcsXG4gICAgICB9LFxuICAgICAgJyY6YWZ0ZXInOiB7XG4gICAgICAgIHRvcDogJzBweCAhaW1wb3J0YW50JyxcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZSAhaW1wb3J0YW50JyxcbiAgICAgICAgcmlnaHQ6ICctMnB4JyxcbiAgICAgIH0sXG4gICAgICAnJi5tcS1lbXB0eTphZnRlcic6IHtcbiAgICAgICAgdG9wOiAnLTAuNDVlbScsXG4gICAgICB9LFxuICAgIH0sXG4gICAgJyYgLm1xLW92ZXJhcnJvdy5tcS1hcnJvdy1yaWdodCc6IHtcbiAgICAgICcmOmJlZm9yZSc6IHtcbiAgICAgICAgdG9wOiAnLTAuNGVtJyxcbiAgICAgICAgcmlnaHQ6ICctMXB4JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAnJiAubXEtb3ZlcmFycm93LWlubmVyLXJpZ2h0Jzoge1xuICAgICAgZGlzcGxheTogJ25vbmUgIWltcG9ydGFudCcsXG4gICAgfSxcbiAgICAnJiAubXEtb3ZlcmFycm93LWlubmVyLWxlZnQnOiB7XG4gICAgICBkaXNwbGF5OiAnbm9uZSAhaW1wb3J0YW50JyxcbiAgICB9LFxuICB9LFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZXMoc3R5bGVzKShNYXRoVGVtcGxhdGVkKTtcbiJdfQ==
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.isNumber = exports.insertSnackBar = exports.getDefaultElement = exports.defaultMT = exports.defaultIDD = exports.defaultECR = exports.defaultDIB = void 0;
|
|
9
|
-
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
|
-
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
13
|
-
|
|
14
|
-
var _slate = require("slate");
|
|
15
|
-
|
|
16
|
-
var _Snackbar = _interopRequireDefault(require("@material-ui/core/Snackbar"));
|
|
17
|
-
|
|
18
|
-
var isNumber = function isNumber(val) {
|
|
19
|
-
return !isNaN(parseFloat(val)) && isFinite(val);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.isNumber = isNumber;
|
|
23
|
-
|
|
24
|
-
var insertSnackBar = function insertSnackBar(message) {
|
|
25
|
-
var prevSnacks = document.querySelectorAll('.response-area-alert');
|
|
26
|
-
prevSnacks.forEach(function (s) {
|
|
27
|
-
return s.remove();
|
|
28
|
-
});
|
|
29
|
-
var newEl = document.createElement('div');
|
|
30
|
-
newEl.className = 'response-area-alert';
|
|
31
|
-
|
|
32
|
-
var el = /*#__PURE__*/_react["default"].createElement(_Snackbar["default"], {
|
|
33
|
-
anchorOrigin: {
|
|
34
|
-
vertical: 'top',
|
|
35
|
-
horizontal: 'center'
|
|
36
|
-
},
|
|
37
|
-
open: true,
|
|
38
|
-
ContentProps: {
|
|
39
|
-
'aria-describedby': 'message-id'
|
|
40
|
-
},
|
|
41
|
-
message: /*#__PURE__*/_react["default"].createElement("span", {
|
|
42
|
-
id: "message-id"
|
|
43
|
-
}, message)
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
_reactDom["default"].render(el, newEl);
|
|
47
|
-
|
|
48
|
-
document.body.appendChild(newEl);
|
|
49
|
-
setTimeout(function () {
|
|
50
|
-
newEl.remove();
|
|
51
|
-
}, 2000);
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
exports.insertSnackBar = insertSnackBar;
|
|
55
|
-
|
|
56
|
-
var defaultECR = function defaultECR(index) {
|
|
57
|
-
return _slate.Inline.create({
|
|
58
|
-
type: 'explicit_constructed_response',
|
|
59
|
-
isVoid: true,
|
|
60
|
-
data: {
|
|
61
|
-
index: index
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
exports.defaultECR = defaultECR;
|
|
67
|
-
|
|
68
|
-
var defaultMT = function defaultMT(index) {
|
|
69
|
-
return _slate.Inline.create({
|
|
70
|
-
type: 'math_templated',
|
|
71
|
-
isVoid: true,
|
|
72
|
-
data: {
|
|
73
|
-
index: index
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
exports.defaultMT = defaultMT;
|
|
79
|
-
|
|
80
|
-
var defaultDIB = function defaultDIB(opts, index) {
|
|
81
|
-
return _slate.Inline.create({
|
|
82
|
-
type: 'drag_in_the_blank',
|
|
83
|
-
isVoid: true,
|
|
84
|
-
data: {
|
|
85
|
-
index: index,
|
|
86
|
-
duplicates: opts.options.duplicates,
|
|
87
|
-
value: null
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
exports.defaultDIB = defaultDIB;
|
|
93
|
-
|
|
94
|
-
var defaultIDD = function defaultIDD(index) {
|
|
95
|
-
return _slate.Inline.create({
|
|
96
|
-
object: 'inline',
|
|
97
|
-
type: 'inline_dropdown',
|
|
98
|
-
isVoid: true,
|
|
99
|
-
data: {
|
|
100
|
-
index: index
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
exports.defaultIDD = defaultIDD;
|
|
106
|
-
|
|
107
|
-
var getDefaultElement = function getDefaultElement(opts, index) {
|
|
108
|
-
switch (opts.type) {
|
|
109
|
-
case 'explicit-constructed-response':
|
|
110
|
-
return defaultECR(index);
|
|
111
|
-
|
|
112
|
-
case 'math-templated':
|
|
113
|
-
return defaultMT(index);
|
|
114
|
-
|
|
115
|
-
case 'drag-in-the-blank':
|
|
116
|
-
return defaultDIB(opts, index);
|
|
117
|
-
|
|
118
|
-
default:
|
|
119
|
-
// inline-dropdown
|
|
120
|
-
return defaultIDD(index);
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
exports.getDefaultElement = getDefaultElement;
|
|
125
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL3V0aWxzLmpzeCJdLCJuYW1lcyI6WyJpc051bWJlciIsInZhbCIsImlzTmFOIiwicGFyc2VGbG9hdCIsImlzRmluaXRlIiwiaW5zZXJ0U25hY2tCYXIiLCJtZXNzYWdlIiwicHJldlNuYWNrcyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJzIiwicmVtb3ZlIiwibmV3RWwiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiZWwiLCJ2ZXJ0aWNhbCIsImhvcml6b250YWwiLCJSZWFjdERPTSIsInJlbmRlciIsImJvZHkiLCJhcHBlbmRDaGlsZCIsInNldFRpbWVvdXQiLCJkZWZhdWx0RUNSIiwiaW5kZXgiLCJJbmxpbmUiLCJjcmVhdGUiLCJ0eXBlIiwiaXNWb2lkIiwiZGF0YSIsImRlZmF1bHRNVCIsImRlZmF1bHRESUIiLCJvcHRzIiwiZHVwbGljYXRlcyIsIm9wdGlvbnMiLCJ2YWx1ZSIsImRlZmF1bHRJREQiLCJvYmplY3QiLCJnZXREZWZhdWx0RWxlbWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRU8sSUFBTUEsUUFBUSxHQUFHLFNBQVhBLFFBQVcsQ0FBQ0MsR0FBRDtBQUFBLFNBQVMsQ0FBQ0MsS0FBSyxDQUFDQyxVQUFVLENBQUNGLEdBQUQsQ0FBWCxDQUFOLElBQTJCRyxRQUFRLENBQUNILEdBQUQsQ0FBNUM7QUFBQSxDQUFqQjs7OztBQUVBLElBQU1JLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsQ0FBQ0MsT0FBRCxFQUFhO0FBQ3pDLE1BQU1DLFVBQVUsR0FBR0MsUUFBUSxDQUFDQyxnQkFBVCxDQUEwQixzQkFBMUIsQ0FBbkI7QUFFQUYsRUFBQUEsVUFBVSxDQUFDRyxPQUFYLENBQW1CLFVBQUNDLENBQUQ7QUFBQSxXQUFPQSxDQUFDLENBQUNDLE1BQUYsRUFBUDtBQUFBLEdBQW5CO0FBRUEsTUFBTUMsS0FB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aW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IFNuYWNrYmFyIGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL1NuYWNrYmFyJztcblxuZXhwb3J0IGNvbnN0IGlzTnVtYmVyID0gKHZhbCkgPT4gIWlzTmFOKHBhcnNlRmxvYXQodmFsKSkgJiYgaXNGaW5pdGUodmFsKTtcblxuZXhwb3J0IGNvbnN0IGluc2VydFNuYWNrQmFyID0gKG1lc3NhZ2UpID0+IHtcbiAgY29uc3QgcHJldlNuYWNrcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5yZXNwb25zZS1hcmVhLWFsZXJ0Jyk7XG5cbiAgcHJldlNuYWNrcy5mb3JFYWNoKChzKSA9PiBzLnJlbW92ZSgpKTtcblxuICBjb25zdCBuZXdFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gIG5ld0VsLmNsYXNzTmFtZSA9ICdyZXNwb25zZS1hcmVhLWFsZXJ0JztcblxuICBjb25zdCBlbCA9IChcbiAgICA8U25hY2tiYXJcbiAgICAgIGFuY2hvck9yaWdpbj17eyB2ZXJ0aWNhbDogJ3RvcCcsIGhvcml6b250YWw6ICdjZW50ZXInIH19XG4gICAgICBvcGVuPXt0cnVlfVxuICAgICAgQ29udGVudFByb3BzPXt7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogJ21lc3NhZ2UtaWQnLFxuICAgICAgfX1cbiAgICAgIG1lc3NhZ2U9ezxzcGFuIGlkPVwibWVzc2FnZS1pZFwiPnttZXNzYWdlfTwvc3Bhbj59XG4gICAgLz5cbiAgKTtcblxuICBSZWFjdERPTS5yZW5kZXIoZWwsIG5ld0VsKTtcblxuICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG5ld0VsKTtcblxuICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICBuZXdFbC5yZW1vdmUoKTtcbiAgfSwgMjAwMCk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVmYXVsdEVDUiA9IChpbmRleCkgPT5cbiAgSW5saW5lLmNyZWF0ZSh7XG4gICAgdHlwZTogJ2V4cGxpY2l0X2NvbnN0cnVjdGVkX3Jlc3BvbnNlJyxcbiAgICBpc1ZvaWQ6IHRydWUsXG4gICAgZGF0YToge1xuICAgICAgaW5kZXgsXG4gICAgfSxcbiAgfSk7XG5leHBvcnQgY29uc3QgZGVmYXVsdE1UID0gKGluZGV4KSA9PlxuICBJbmxpbmUuY3JlYXRlKHtcbiAgICB0eXBlOiAnbWF0aF90ZW1wbGF0ZWQnLFxuICAgIGlzVm9pZDogdHJ1ZSxcbiAgICBkYXRhOiB7XG4gICAgICBpbmRleCxcbiAgICB9LFxuICB9KTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRESUIgPSAob3B0cywgaW5kZXgpID0+XG4gIElubGluZS5jcmVhdGUoe1xuICAgIHR5cGU6ICdkcmFnX2luX3RoZV9ibGFuaycsXG4gICAgaXNWb2lkOiB0cnVlLFxuICAgIGRhdGE6IHtcbiAgICAgIGluZGV4LFxuICAgICAgZHVwbGljYXRlczogb3B0cy5vcHRpb25zLmR1cGxpY2F0ZXMsXG4gICAgICB2YWx1ZTogbnVsbCxcbiAgICB9LFxuICB9KTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRJREQgPSAoaW5kZXgpID0+XG4gIElubGluZS5jcmVhdGUoe1xuICAgIG9iamVjdDogJ2lubGluZScsXG4gICAgdHlwZTogJ2lubGluZV9kcm9wZG93bicsXG4gICAgaXNWb2lkOiB0cnVlLFxuICAgIGRhdGE6IHtcbiAgICAgIGluZGV4LFxuICAgIH0sXG4gIH0pO1xuXG5leHBvcnQgY29uc3QgZ2V0RGVmYXVsdEVsZW1lbnQgPSAob3B0cywgaW5kZXgpID0+IHtcbiAgc3dpdGNoIChvcHRzLnR5cGUpIHtcbiAgICBjYXNlICdleHBsaWNpdC1jb25zdHJ1Y3RlZC1yZXNwb25zZSc6XG4gICAgICByZXR1cm4gZGVmYXVsdEVDUihpbmRleCk7XG5cbiAgICBjYXNlICdtYXRoLXRlbXBsYXRlZCc6XG4gICAgICByZXR1cm4gZGVmYXVsdE1UKGluZGV4KTtcblxuICAgIGNhc2UgJ2RyYWctaW4tdGhlLWJsYW5rJzpcbiAgICAgIHJldHVybiBkZWZhdWx0RElCKG9wdHMsIGluZGV4KTtcblxuICAgIGRlZmF1bHQ6XG4gICAgICAvLyBpbmxpbmUtZHJvcGRvd25cbiAgICAgIHJldHVybiBkZWZhdWx0SUREKGluZGV4KTtcbiAgfVxufTtcbiJdfQ==
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _slateEditTable = _interopRequireDefault(require("slate-edit-table"));
|
|
11
|
-
|
|
12
|
-
var _utils = require("slate-edit-table/dist/utils");
|
|
13
|
-
|
|
14
|
-
var _handlers = require("slate-edit-table/dist/handlers");
|
|
15
|
-
|
|
16
|
-
var _options = _interopRequireDefault(require("slate-edit-table/dist/options"));
|
|
17
|
-
|
|
18
|
-
var _changes = require("slate-edit-table/dist/changes");
|
|
19
|
-
|
|
20
|
-
function onBackspace(event, change, editor, opts) {
|
|
21
|
-
var _startCell$nodes;
|
|
22
|
-
|
|
23
|
-
var value = change.value;
|
|
24
|
-
var startBlock = value.startBlock,
|
|
25
|
-
endBlock = value.endBlock,
|
|
26
|
-
selection = value.selection,
|
|
27
|
-
document = value.document;
|
|
28
|
-
var startCell = document.getClosest(startBlock.key, opts.isCell);
|
|
29
|
-
var endCell = document.getClosest(endBlock.key, opts.isCell);
|
|
30
|
-
var startBlockIndex = startCell === null || startCell === void 0 ? void 0 : (_startCell$nodes = startCell.nodes) === null || _startCell$nodes === void 0 ? void 0 : _startCell$nodes.findIndex(function (block) {
|
|
31
|
-
return block.key == startBlock.key;
|
|
32
|
-
}); // If a cursor is collapsed at the start of the first block, do nothing
|
|
33
|
-
|
|
34
|
-
if (startBlockIndex === 0 && selection.isAtStartOf(startBlock)) {
|
|
35
|
-
if (startBlock.isVoid) {
|
|
36
|
-
// Delete the block normally if it is a void block
|
|
37
|
-
return undefined;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
event.preventDefault();
|
|
41
|
-
return change;
|
|
42
|
-
} // If "normal" deletion, we continue
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
if (startCell === endCell) {
|
|
46
|
-
return undefined;
|
|
47
|
-
} // If cursor is between multiple blocks,
|
|
48
|
-
// we clear the content of the cells.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
event.preventDefault();
|
|
52
|
-
var blocks = value.blocks; // Get all cells that contains the selection
|
|
53
|
-
|
|
54
|
-
var cells = blocks.map(function (node) {
|
|
55
|
-
return node.type === opts.typeCell ? node : document.getClosest(node.key, function (a) {
|
|
56
|
-
return a.type === opts.typeCell;
|
|
57
|
-
});
|
|
58
|
-
}).toSet(); // If the cursor is at the very end of the first cell, ignore it.
|
|
59
|
-
// If the cursor is at the very start of the last cell, ignore it.
|
|
60
|
-
// This behavior is to compensate hanging selection behaviors:
|
|
61
|
-
// https://github.com/ianstormtaylor/slate/pull/1605
|
|
62
|
-
|
|
63
|
-
var ignoreFirstCell = value.selection.collapseToStart().isAtEndOf(cells.first());
|
|
64
|
-
var ignoreLastCell = value.selection.collapseToEnd().isAtStartOf(cells.last());
|
|
65
|
-
var cellsToClear = cells;
|
|
66
|
-
|
|
67
|
-
if (ignoreFirstCell) {
|
|
68
|
-
cellsToClear = cellsToClear.rest();
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
if (ignoreLastCell) {
|
|
72
|
-
cellsToClear = cellsToClear.butLast();
|
|
73
|
-
} // Clear all the selection
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
cellsToClear.forEach(function (cell) {
|
|
77
|
-
return (0, _changes.clearCell)(opts, change, cell);
|
|
78
|
-
}); // Update the selection properly, and avoid reset of selection
|
|
79
|
-
|
|
80
|
-
var updatedStartCell = change.value.document.getDescendant(cellsToClear.first().key);
|
|
81
|
-
return change.collapseToStartOf(updatedStartCell);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
var KEY_ENTER = 'Enter';
|
|
85
|
-
var KEY_TAB = 'Tab';
|
|
86
|
-
var KEY_BACKSPACE = 'Backspace';
|
|
87
|
-
var KEY_DOWN = 'ArrowDown';
|
|
88
|
-
var KEY_UP = 'ArrowUp';
|
|
89
|
-
/**
|
|
90
|
-
* User is pressing a key in the editor
|
|
91
|
-
*/
|
|
92
|
-
|
|
93
|
-
function onKeyDown(opts, event, change, editor) {
|
|
94
|
-
// Only handle events in cells
|
|
95
|
-
if (!(0, _utils.isSelectionInTable)(opts, change.value)) {
|
|
96
|
-
return undefined;
|
|
97
|
-
} // Build arguments list
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
var args = [event, change, editor, opts];
|
|
101
|
-
|
|
102
|
-
switch (event.key) {
|
|
103
|
-
case KEY_ENTER:
|
|
104
|
-
if (event.metaKey && opts.exitBlockType) {
|
|
105
|
-
return _handlers.onModEnter.apply(void 0, args);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
return _handlers.onEnter.apply(void 0, args);
|
|
109
|
-
|
|
110
|
-
case KEY_TAB:
|
|
111
|
-
return _handlers.onTab.apply(void 0, args);
|
|
112
|
-
|
|
113
|
-
case KEY_BACKSPACE:
|
|
114
|
-
return onBackspace.apply(void 0, args);
|
|
115
|
-
|
|
116
|
-
case KEY_DOWN:
|
|
117
|
-
case KEY_UP:
|
|
118
|
-
return _handlers.onUpDown.apply(void 0, args);
|
|
119
|
-
|
|
120
|
-
default:
|
|
121
|
-
return undefined;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
var _default = function _default(opts) {
|
|
126
|
-
var core = (0, _slateEditTable["default"])(opts);
|
|
127
|
-
var tableOpts = new _options["default"](opts);
|
|
128
|
-
core.onKeyDown = onKeyDown.bind(null, tableOpts);
|
|
129
|
-
return core;
|
|
130
|
-
};
|
|
131
|
-
|
|
132
|
-
exports["default"] = _default;
|
|
133
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3RhYmxlL0N1c3RvbVRhYmxlUGx1Z2luLmpzIl0sIm5hbWVzIjpbIm9uQmFja3NwYWNlIiwiZXZlbnQiLCJjaGFuZ2UiLCJlZGl0b3IiLCJvcHRzIiwidmFsdWUiLCJzdGFydEJsb2NrIiwiZW5kQmxvY2siLCJzZWxlY3Rpb24iLCJkb2N1bWVudCIsInN0YXJ0Q2VsbCIsImdldENsb3Nlc3QiLCJrZXkiLCJpc0NlbGwiLCJlbmRDZWxsIiwic3RhcnRCbG9ja0luZGV4Iiwibm9kZXMiLCJmaW5kSW5kZXgiLCJibG9jayIsImlzQXRTdGFydE9mIiwiaXNWb2lkIiwidW5kZWZpbmVkIiwicHJldmVudERlZmF1bHQiLCJibG9ja3MiLCJjZWxscyIsIm1hcCIsIm5vZGUiLCJ0eXBlIiwidHlwZUNlbGwiLCJhIiwidG9TZXQiLCJpZ25vcmVGaXJzdENlbGwiLCJjb2xsYXBzZVRvU3RhcnQiLCJpc0F0RW5kT2YiLCJmaXJzdCIsImlnbm9yZUxhc3RDZWxsIiwiY29sbGFwc2VUb0VuZCIsImxhc3QiLCJjZWxsc1RvQ2xlYXIiLCJyZXN0IiwiYnV0TGFzdCIsImZvckVhY2giLCJjZWxsIiwidXBkYXRlZFN0YXJ0Q2VsbCIsImdldERlc2NlbmRhbnQiLCJjb2xsYXBzZVRvU3RhcnRPZiIsIktFWV9FTlRFUiIsIktFWV9UQUIiLCJLRVlfQkFDS1NQQUNFIiwiS0VZX0RPV04iLCJLRVlfVVAiLCJvbktleURvd24iLCJhcmdzIiwibWV0YUtleSIsImV4aXRCbG9ja1R5cGUiLCJvbk1vZEVudGVyIiwib25FbnRlciIsIm9uVGFiIiwib25VcERvd24iLCJjb3JlIiwidGFibGVPcHRzIiwiVGFibGVPcHRpb25zIiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsU0FBU0EsV0FBVCxDQUFxQkMsS0FBckIsRUFBNEJDLE1BQTVCLEVBQW9DQyxNQUFwQyxFQUE0Q0MsSUFBNUMs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QUFPL0IsU0FBUDtBQWZKO0FBaUJEOztlQUVjLGtCQUFDakIsSUFBRCxFQUFVO0FBQ3ZCLE1BQU11RCxJQUFJLEdBQUcsZ0NBQVV2RCxJQUFWLENBQWI7QUFFQSxNQUFNd0QsU0FBUyxHQUFHLElBQUlDLG1CQUFKLENBQWlCekQsSUFBakIsQ0FBbEI7QUFFQXVELEVBQUFBLElBQUksQ0FBQ1IsU0FBTCxHQUFpQkEsU0FBUyxDQUFDVyxJQUFWLENBQWUsSUFBZixFQUFxQkYsU0FBckIsQ0FBakI7QUFFQSxTQUFPRCxJQUFQO0FBQ0QsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFZGl0VGFibGUgZnJvbSAnc2xhdGUtZWRpdC10YWJsZSc7XG5pbXBvcnQgeyBpc1NlbGVjdGlvbkluVGFibGUgfSBmcm9tICdzbGF0ZS1lZGl0LXRhYmxlL2Rpc3QvdXRpbHMnO1xuaW1wb3J0IHsgb25FbnRlciwgb25Nb2RFbnRlciwgb25UYWIsIG9uVXBEb3duIH0gZnJvbSAnc2xhdGUtZWRpdC10YWJsZS9kaXN0L2hhbmRsZXJzJztcbmltcG9ydCBUYWJsZU9wdGlvbnMgZnJvbSAnc2xhdGUtZWRpdC10YWJsZS9kaXN0L29wdGlvbnMnO1xuaW1wb3J0IHsgY2xlYXJDZWxsIH0gZnJvbSAnc2xhdGUtZWRpdC10YWJsZS9kaXN0L2NoYW5nZXMnO1xuXG5mdW5jdGlvbiBvbkJhY2tzcGFjZShldmVudCwgY2hhbmdlLCBlZGl0b3IsIG9wdHMpIHtcbiAgY29uc3QgeyB2YWx1ZSB9ID0gY2hhbmdlO1xuICBjb25zdCB7IHN0YXJ0QmxvY2ssIGVuZEJsb2NrLCBzZWxlY3Rpb24sIGRvY3VtZW50IH0gPSB2YWx1ZTtcblxuICBjb25zdCBzdGFydENlbGwgPSBkb2N1bWVudC5nZXRDbG9zZXN0KHN0YXJ0QmxvY2sua2V5LCBvcHRzLmlzQ2VsbCk7XG4gIGNvbnN0IGVuZENlbGwgPSBkb2N1bWVudC5nZXRDbG9zZXN0KGVuZEJsb2NrLmtleSwgb3B0cy5pc0NlbGwpO1xuXG4gIGNvbnN0IHN0YXJ0QmxvY2tJbmRleCA9IHN0YXJ0Q2VsbD8ubm9kZXM/LmZpbmRJbmRleCgoYmxvY2spID0+IGJsb2NrLmtleSA9PSBzdGFydEJsb2NrLmtleSk7XG5cbiAgLy8gSWYgYSBjdXJzb3IgaXMgY29sbGFwc2VkIGF0IHRoZSBzdGFydCBvZiB0aGUgZmlyc3QgYmxvY2ssIGRvIG5vdGhpbmdcbiAgaWYgKHN0YXJ0QmxvY2tJbmRleCA9PT0gMCAmJiBzZWxlY3Rpb24uaXNBdFN0YXJ0T2Yoc3RhcnRCbG9jaykpIHtcbiAgICBpZiAoc3RhcnRCbG9jay5pc1ZvaWQpIHtcbiAgICAgIC8vIERlbGV0ZSB0aGUgYmxvY2sgbm9ybWFsbHkgaWYgaXQgaXMgYSB2b2lkIGJsb2NrXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgcmV0dXJuIGNoYW5nZTtcbiAgfVxuXG4gIC8vIElmIFwibm9ybWFsXCIgZGVsZXRpb24sIHdlIGNvbnRpbnVlXG4gIGlmIChzdGFydENlbGwgPT09IGVuZENlbGwpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLy8gSWYgY3Vyc29yIGlzIGJldHdlZW4gbXVsdGlwbGUgYmxvY2tzLFxuICAvLyB3ZSBjbGVhciB0aGUgY29udGVudCBvZiB0aGUgY2VsbHMuXG4gIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgY29uc3QgeyBibG9ja3MgfSA9IHZhbHVlO1xuXG4gIC8vIEdldCBhbGwgY2VsbHMgdGhhdCBjb250YWlucyB0aGUgc2VsZWN0aW9uXG4gIGNvbnN0IGNlbGxzID0gYmxvY2tzXG4gICAgLm1hcCgobm9kZSkgPT5cbiAgICAgIG5vZGUudHlwZSA9PT0gb3B0cy50eXBlQ2VsbCA/IG5vZGUgOiBkb2N1bWVudC5nZXRDbG9zZXN0KG5vZGUua2V5LCAoYSkgPT4gYS50eXBlID09PSBvcHRzLnR5cGVDZWxsKSxcbiAgICApXG4gICAgLnRvU2V0KCk7XG5cbiAgLy8gSWYgdGhlIGN1cnNvciBpcyBhdCB0aGUgdmVyeSBlbmQgb2YgdGhlIGZpcnN0IGNlbGwsIGlnbm9yZSBpdC5cbiAgLy8gSWYgdGhlIGN1cnNvciBpcyBhdCB0aGUgdmVyeSBzdGFydCBvZiB0aGUgbGFzdCBjZWxsLCBpZ25vcmUgaXQuXG4gIC8vIFRoaXMgYmVoYXZpb3IgaXMgdG8gY29tcGVuc2F0ZSBoYW5naW5nIHNlbGVjdGlvbiBiZWhhdmlvcnM6XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9pYW5zdG9ybXRheWxvci9zbGF0ZS9wdWxsLzE2MDVcbiAgY29uc3QgaWdub3JlRmlyc3RDZWxsID0gdmFsdWUuc2VsZWN0aW9uLmNvbGxhcHNlVG9TdGFydCgpLmlzQXRFbmRPZihjZWxscy5maXJzdCgpKTtcbiAgY29uc3QgaWdub3JlTGFzdENlbGwgPSB2YWx1ZS5zZWxlY3Rpb24uY29sbGFwc2VUb0VuZCgpLmlzQXRTdGFydE9mKGNlbGxzLmxhc3QoKSk7XG5cbiAgbGV0IGNlbGxzVG9DbGVhciA9IGNlbGxzO1xuICBpZiAoaWdub3JlRmlyc3RDZWxsKSB7XG4gICAgY2VsbHNUb0NsZWFyID0gY2VsbHNUb0NsZWFyLnJlc3QoKTtcbiAgfVxuICBpZiAoaWdub3JlTGFzdENlbGwpIHtcbiAgICBjZWxsc1RvQ2xlYXIgPSBjZWxsc1RvQ2xlYXIuYnV0TGFzdCgpO1xuICB9XG5cbiAgLy8gQ2xlYXIgYWxsIHRoZSBzZWxlY3Rpb25cbiAgY2VsbHNUb0NsZWFyLmZvckVhY2goKGNlbGwpID0+IGNsZWFyQ2VsbChvcHRzLCBjaGFuZ2UsIGNlbGwpKTtcblxuICAvLyBVcGRhdGUgdGhlIHNlbGVjdGlvbiBwcm9wZXJseSwgYW5kIGF2b2lkIHJlc2V0IG9mIHNlbGVjdGlvblxuICBjb25zdCB1cGRhdGVkU3RhcnRDZWxsID0gY2hhbmdlLnZhbHVlLmRvY3VtZW50LmdldERlc2NlbmRhbnQoY2VsbHNUb0NsZWFyLmZpcnN0KCkua2V5KTtcbiAgcmV0dXJuIGNoYW5nZS5jb2xsYXBzZVRvU3RhcnRPZih1cGRhdGVkU3RhcnRDZWxsKTtcbn1cblxuY29uc3QgS0VZX0VOVEVSID0gJ0VudGVyJztcbmNvbnN0IEtFWV9UQUIgPSAnVGFiJztcbmNvbnN0IEtFWV9CQUNLU1BBQ0UgPSAnQmFja3NwYWNlJztcbmNvbnN0IEtFWV9ET1dOID0gJ0Fycm93RG93bic7XG5jb25zdCBLRVlfVVAgPSAnQXJyb3dVcCc7XG5cbi8qKlxuICogVXNlciBpcyBwcmVzc2luZyBhIGtleSBpbiB0aGUgZWRpdG9yXG4gKi9cbmZ1bmN0aW9uIG9uS2V5RG93bihvcHRzLCBldmVudCwgY2hhbmdlLCBlZGl0b3IpIHtcbiAgLy8gT25seSBoYW5kbGUgZXZlbnRzIGluIGNlbGxzXG4gIGlmICghaXNTZWxlY3Rpb25JblRhYmxlKG9wdHMsIGNoYW5nZS52YWx1ZSkpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLy8gQnVpbGQgYXJndW1lbnRzIGxpc3RcbiAgY29uc3QgYXJncyA9IFtldmVudCwgY2hhbmdlLCBlZGl0b3IsIG9wdHNdO1xuXG4gIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgY2FzZSBLRVlfRU5URVI6XG4gICAgICBpZiAoZXZlbnQubWV0YUtleSAmJiBvcHRzLmV4aXRCbG9ja1R5cGUpIHtcbiAgICAgICAgcmV0dXJuIG9uTW9kRW50ZXIoLi4uYXJncyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gb25FbnRlciguLi5hcmdzKTtcblxuICAgIGNhc2UgS0VZX1RBQjpcbiAgICAgIHJldHVybiBvblRhYiguLi5hcmdzKTtcbiAgICBjYXNlIEtFWV9CQUNLU1BBQ0U6XG4gICAgICByZXR1cm4gb25CYWNrc3BhY2UoLi4uYXJncyk7XG4gICAgY2FzZSBLRVlfRE9XTjpcbiAgICBjYXNlIEtFWV9VUDpcbiAgICAgIHJldHVybiBvblVwRG93biguLi5hcmdzKTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCAob3B0cykgPT4ge1xuICBjb25zdCBjb3JlID0gRWRpdFRhYmxlKG9wdHMpO1xuXG4gIGNvbnN0IHRhYmxlT3B0cyA9IG5ldyBUYWJsZU9wdGlvbnMob3B0cyk7XG5cbiAgY29yZS5vbktleURvd24gPSBvbktleURvd24uYmluZChudWxsLCB0YWJsZU9wdHMpO1xuXG4gIHJldHVybiBjb3JlO1xufTtcbiJdfQ==
|