@pie-lib/editable-html 11.4.0 → 11.6.0

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.
Files changed (106) hide show
  1. package/CHANGELOG.md +24 -52
  2. package/package.json +8 -7
  3. package/src/editor.jsx +2 -2
  4. package/src/plugins/media/media-dialog.js +1 -1
  5. package/src/plugins/respArea/drag-in-the-blank/choice.jsx +1 -1
  6. package/src/plugins/toolbar/editor-and-toolbar.jsx +1 -1
  7. package/lib/block-tags.js +0 -25
  8. package/lib/block-tags.js.map +0 -1
  9. package/lib/constants.js +0 -16
  10. package/lib/constants.js.map +0 -1
  11. package/lib/editor.js +0 -1355
  12. package/lib/editor.js.map +0 -1
  13. package/lib/index.js +0 -269
  14. package/lib/index.js.map +0 -1
  15. package/lib/parse-html.js +0 -16
  16. package/lib/parse-html.js.map +0 -1
  17. package/lib/plugins/characters/custom-popper.js +0 -73
  18. package/lib/plugins/characters/custom-popper.js.map +0 -1
  19. package/lib/plugins/characters/index.js +0 -305
  20. package/lib/plugins/characters/index.js.map +0 -1
  21. package/lib/plugins/characters/utils.js +0 -381
  22. package/lib/plugins/characters/utils.js.map +0 -1
  23. package/lib/plugins/css/icons/index.js +0 -37
  24. package/lib/plugins/css/icons/index.js.map +0 -1
  25. package/lib/plugins/css/index.js +0 -397
  26. package/lib/plugins/css/index.js.map +0 -1
  27. package/lib/plugins/customPlugin/index.js +0 -114
  28. package/lib/plugins/customPlugin/index.js.map +0 -1
  29. package/lib/plugins/html/icons/index.js +0 -38
  30. package/lib/plugins/html/icons/index.js.map +0 -1
  31. package/lib/plugins/html/index.js +0 -80
  32. package/lib/plugins/html/index.js.map +0 -1
  33. package/lib/plugins/image/alt-dialog.js +0 -129
  34. package/lib/plugins/image/alt-dialog.js.map +0 -1
  35. package/lib/plugins/image/component.js +0 -419
  36. package/lib/plugins/image/component.js.map +0 -1
  37. package/lib/plugins/image/image-toolbar.js +0 -177
  38. package/lib/plugins/image/image-toolbar.js.map +0 -1
  39. package/lib/plugins/image/index.js +0 -263
  40. package/lib/plugins/image/index.js.map +0 -1
  41. package/lib/plugins/image/insert-image-handler.js +0 -161
  42. package/lib/plugins/image/insert-image-handler.js.map +0 -1
  43. package/lib/plugins/index.js +0 -402
  44. package/lib/plugins/index.js.map +0 -1
  45. package/lib/plugins/list/index.js +0 -334
  46. package/lib/plugins/list/index.js.map +0 -1
  47. package/lib/plugins/math/index.js +0 -454
  48. package/lib/plugins/math/index.js.map +0 -1
  49. package/lib/plugins/media/index.js +0 -387
  50. package/lib/plugins/media/index.js.map +0 -1
  51. package/lib/plugins/media/media-dialog.js +0 -709
  52. package/lib/plugins/media/media-dialog.js.map +0 -1
  53. package/lib/plugins/media/media-toolbar.js +0 -101
  54. package/lib/plugins/media/media-toolbar.js.map +0 -1
  55. package/lib/plugins/media/media-wrapper.js +0 -93
  56. package/lib/plugins/media/media-wrapper.js.map +0 -1
  57. package/lib/plugins/rendering/index.js +0 -46
  58. package/lib/plugins/rendering/index.js.map +0 -1
  59. package/lib/plugins/respArea/drag-in-the-blank/choice.js +0 -254
  60. package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +0 -1
  61. package/lib/plugins/respArea/drag-in-the-blank/index.js +0 -97
  62. package/lib/plugins/respArea/drag-in-the-blank/index.js.map +0 -1
  63. package/lib/plugins/respArea/explicit-constructed-response/index.js +0 -57
  64. package/lib/plugins/respArea/explicit-constructed-response/index.js.map +0 -1
  65. package/lib/plugins/respArea/icons/index.js +0 -95
  66. package/lib/plugins/respArea/icons/index.js.map +0 -1
  67. package/lib/plugins/respArea/index.js +0 -341
  68. package/lib/plugins/respArea/index.js.map +0 -1
  69. package/lib/plugins/respArea/inline-dropdown/index.js +0 -75
  70. package/lib/plugins/respArea/inline-dropdown/index.js.map +0 -1
  71. package/lib/plugins/respArea/math-templated/index.js +0 -130
  72. package/lib/plugins/respArea/math-templated/index.js.map +0 -1
  73. package/lib/plugins/respArea/utils.js +0 -125
  74. package/lib/plugins/respArea/utils.js.map +0 -1
  75. package/lib/plugins/table/CustomTablePlugin.js +0 -133
  76. package/lib/plugins/table/CustomTablePlugin.js.map +0 -1
  77. package/lib/plugins/table/icons/index.js +0 -69
  78. package/lib/plugins/table/icons/index.js.map +0 -1
  79. package/lib/plugins/table/index.js +0 -483
  80. package/lib/plugins/table/index.js.map +0 -1
  81. package/lib/plugins/table/table-toolbar.js +0 -187
  82. package/lib/plugins/table/table-toolbar.js.map +0 -1
  83. package/lib/plugins/textAlign/icons/index.js +0 -226
  84. package/lib/plugins/textAlign/icons/index.js.map +0 -1
  85. package/lib/plugins/textAlign/index.js +0 -34
  86. package/lib/plugins/textAlign/index.js.map +0 -1
  87. package/lib/plugins/toolbar/default-toolbar.js +0 -229
  88. package/lib/plugins/toolbar/default-toolbar.js.map +0 -1
  89. package/lib/plugins/toolbar/done-button.js +0 -53
  90. package/lib/plugins/toolbar/done-button.js.map +0 -1
  91. package/lib/plugins/toolbar/editor-and-toolbar.js +0 -286
  92. package/lib/plugins/toolbar/editor-and-toolbar.js.map +0 -1
  93. package/lib/plugins/toolbar/index.js +0 -34
  94. package/lib/plugins/toolbar/index.js.map +0 -1
  95. package/lib/plugins/toolbar/toolbar-buttons.js +0 -194
  96. package/lib/plugins/toolbar/toolbar-buttons.js.map +0 -1
  97. package/lib/plugins/toolbar/toolbar.js +0 -376
  98. package/lib/plugins/toolbar/toolbar.js.map +0 -1
  99. package/lib/plugins/utils.js +0 -62
  100. package/lib/plugins/utils.js.map +0 -1
  101. package/lib/serialization.js +0 -677
  102. package/lib/serialization.js.map +0 -1
  103. package/lib/shared/alert-dialog.js +0 -75
  104. package/lib/shared/index.js +0 -136
  105. package/lib/theme.js +0 -9
  106. package/lib/theme.js.map +0 -1
@@ -1,75 +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 _icons = require("@pie-lib/icons");
17
-
18
- var InlineDropdown = function InlineDropdown(_ref) {
19
- var attributes = _ref.attributes,
20
- selectedItem = _ref.selectedItem;
21
- // TODO: Investigate
22
- // Needed because items with values inside have different positioning for some reason
23
- var html = selectedItem || '<div>&nbsp</div>';
24
- return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({}, attributes, {
25
- style: {
26
- display: 'inline-flex',
27
- height: '50px',
28
- margin: '0 5px',
29
- cursor: 'pointer'
30
- }
31
- }), /*#__PURE__*/_react["default"].createElement("div", {
32
- style: {
33
- display: 'inline-flex',
34
- minWidth: '178px',
35
- height: '36px',
36
- background: '#FFF',
37
- border: '1px solid #C0C3CF',
38
- boxSizing: 'border-box',
39
- borderRadius: '3px',
40
- position: 'relative',
41
- alignItems: 'center'
42
- }
43
- }, /*#__PURE__*/_react["default"].createElement("div", {
44
- style: {
45
- flex: 1,
46
- overflow: 'hidden',
47
- padding: '0 25px 0 8px',
48
- whiteSpace: 'nowrap',
49
- textOverflow: 'ellipsis'
50
- }
51
- }, /*#__PURE__*/_react["default"].createElement("span", {
52
- style: {
53
- display: 'inline-block',
54
- verticalAlign: 'middle'
55
- },
56
- dangerouslySetInnerHTML: {
57
- __html: html
58
- }
59
- })), /*#__PURE__*/_react["default"].createElement(_icons.Chevron, {
60
- direction: "down",
61
- style: {
62
- position: 'absolute',
63
- top: '5px',
64
- right: '5px'
65
- }
66
- })));
67
- };
68
-
69
- InlineDropdown.propTypes = {
70
- attributes: _propTypes["default"].object,
71
- selectedItem: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object])
72
- };
73
- var _default = InlineDropdown;
74
- exports["default"] = _default;
75
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/plugins/respArea/inline-dropdown/index.jsx"],"names":["InlineDropdown","attributes","selectedItem","html","display","height","margin","cursor","minWidth","background","border","boxSizing","borderRadius","position","alignItems","flex","overflow","padding","whiteSpace","textOverflow","verticalAlign","__html","top","right","propTypes","PropTypes","object","oneOfType","string"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,OAAkC;AAAA,MAA/BC,UAA+B,QAA/BA,UAA+B;AAAA,MAAnBC,YAAmB,QAAnBA,YAAmB;AACvD;AACA;AACA,MAAMC,IAAI,GAAGD,YAAY,IAAI,kBAA7B;AAEA,sBACE,sEACMD,UADN;AAEE,IAAA,KAAK,EAAE;AACLG,MAAAA,OAAO,EAAE,aADJ;AAELC,MAAAA,MAAM,EAAE,MAFH;AAGLC,MAAAA,MAAM,EAAE,OAHH;AAILC,MAAAA,MAAM,EAAE;AAJH;AAFT,mBASE;AACE,IAAA,KAAK,EAAE;AACLH,MAAAA,OAAO,EAAE,aADJ;AAELI,MAAAA,QAAQ,EAAE,OAFL;AAGLH,MAAAA,MAAM,EAAE,MAHH;AAILI,MAAAA,UAAU,EAAE,MAJP;AAKLC,MAAAA,MAAM,EAAE,mBALH;AAMLC,MAAAA,SAAS,EAAE,YANN;AAOLC,MAAAA,YAAY,EAAE,KAPT;AAQLC,MAAAA,QAAQ,EAAE,UARL;AASLC,MAAAA,UAAU,EAAE;AATP;AADT,kBAaE;AACE,IAAA,KAAK,EAAE;AACLC,MAAAA,IAAI,EAAE,CADD;AAELC,MAAAA,QAAQ,EAAE,QAFL;AAGLC,MAAAA,OAAO,EAAE,cAHJ;AAILC,MAAAA,UAAU,EAAE,QAJP;AAKLC,MAAAA,YAAY,EAAE;AALT;AADT,kBASE;AACE,IAAA,KAAK,EAAE;AACLf,MAAAA,OAAO,EAAE,cADJ;AAELgB,MAAAA,aAAa,EAAE;AAFV,KADT;AAKE,IAAA,uBAAuB,EAAE;AACvBC,MAAAA,MAAM,EAAElB;AADe;AAL3B,IATF,CAbF,eAgCE,gCAAC,cAAD;AACE,IAAA,SAAS,EAAC,MADZ;AAEE,IAAA,KAAK,EAAE;AACLU,MAAAA,QAAQ,EAAE,UADL;AAELS,MAAAA,GAAG,EAAE,KAFA;AAGLC,MAAAA,KAAK,EAAE;AAHF;AAFT,IAhCF,CATF,CADF;AAqDD,CA1DD;;AA4DAvB,cAAc,CAACwB,SAAf,GAA2B;AACzBvB,EAAAA,UAAU,EAAEwB,sBAAUC,MADG;AAEzBxB,EAAAA,YAAY,EAAEuB,sBAAUE,SAAV,CAAoB,CAACF,sBAAUG,MAAX,EAAmBH,sBAAUC,MAA7B,CAApB;AAFW,CAA3B;eAKe1B,c","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Chevron } from '@pie-lib/icons';\n\nconst InlineDropdown = ({ attributes, selectedItem }) => {\n // TODO: Investigate\n // Needed because items with values inside have different positioning for some reason\n const html = selectedItem || '<div>&nbsp</div>';\n\n return (\n <span\n {...attributes}\n style={{\n display: 'inline-flex',\n height: '50px',\n margin: '0 5px',\n cursor: 'pointer',\n }}\n >\n <div\n style={{\n display: 'inline-flex',\n minWidth: '178px',\n height: '36px',\n background: '#FFF',\n border: '1px solid #C0C3CF',\n boxSizing: 'border-box',\n borderRadius: '3px',\n position: 'relative',\n alignItems: 'center',\n }}\n >\n <div\n style={{\n flex: 1,\n overflow: 'hidden',\n padding: '0 25px 0 8px',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n }}\n >\n <span\n style={{\n display: 'inline-block',\n verticalAlign: 'middle',\n }}\n dangerouslySetInnerHTML={{\n __html: html,\n }}\n />\n </div>\n <Chevron\n direction=\"down\"\n style={{\n position: 'absolute',\n top: '5px',\n right: '5px',\n }}\n />\n </div>\n </span>\n );\n};\n\nInlineDropdown.propTypes = {\n attributes: PropTypes.object,\n selectedItem: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n};\n\nexport default InlineDropdown;\n"],"file":"index.js"}
@@ -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=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/plugins/respArea/math-templated/index.jsx"],"names":["MathTemplated","attributes","value","classes","keyToDisplay","spanContainer","responseBox","mathBlock","propTypes","PropTypes","object","isRequired","string","styles","theme","background","palette","grey","color","display","borderRight","boxSizing","overflow","fontSize","minHeight","height","alignItems","fontFamily","padding","border","margin","cursor","justifyContent","minWidth","flex","backgroundColor","verticalAlign","borderTop","marginLeft","marginTop","paddingTop","lineHeight","top","left","position","right"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { mq } from '@pie-lib/math-input';\n\nconst MathTemplated = ({ attributes, value, classes, keyToDisplay }) => (\n <span {...attributes} className={classes.spanContainer}>\n <div className={classes.responseBox}>{keyToDisplay}</div>\n <div className={classes.mathBlock}>\n <mq.Static latex={value} />\n </div>\n </span>\n);\n\nMathTemplated.propTypes = {\n attributes: PropTypes.object,\n classes: PropTypes.object.isRequired,\n value: PropTypes.string,\n keyToDisplay: PropTypes.string,\n};\n\nconst styles = (theme) => ({\n responseBox: {\n background: theme.palette.grey['A100'],\n color: theme.palette.grey['A700'],\n display: 'inline-flex',\n borderRight: '2px solid #C0C3CF',\n boxSizing: 'border-box',\n overflow: 'hidden',\n fontSize: '12px',\n minHeight: '36px',\n height: '100%',\n alignItems: 'center',\n fontFamily: 'Symbola, Times New Roman, serif',\n padding: '0 2px',\n },\n spanContainer: {\n display: 'inline-flex',\n border: '1px solid #C0C3CF',\n margin: '1px 5px',\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: '50px',\n minHeight: '36px',\n height: 'fit-content',\n },\n mathBlock: {\n flex: 8,\n color: 'var(--pie-text, black)',\n padding: '4px !important',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: 'var(--pie-background, rgba(255, 255, 255, 0))',\n '& > .mq-math-mode sup.mq-nthroot': {\n fontSize: '70% !important',\n verticalAlign: '1em !important',\n },\n '& > .mq-math-mode .mq-sqrt-stem': {\n borderTop: '0.07em solid',\n marginLeft: '-1.5px',\n marginTop: '-2px !important',\n paddingTop: '5px !important',\n },\n '& .mq-overarrow-inner': {\n paddingTop: '0 !important',\n border: 'none !important',\n },\n '& .mq-overarrow.mq-arrow-both': {\n marginTop: '0px',\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important',\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px',\n },\n '&:after': {\n top: '0px !important',\n position: 'absolute !important',\n right: '-2px',\n },\n '&.mq-empty:after': {\n top: '-0.45em',\n },\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px',\n },\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important',\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important',\n },\n },\n});\n\nexport default withStyles(styles)(MathTemplated);\n"],"file":"index.js"}
@@ -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=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/plugins/respArea/utils.jsx"],"names":["isNumber","val","isNaN","parseFloat","isFinite","insertSnackBar","message","prevSnacks","document","querySelectorAll","forEach","s","remove","newEl","createElement","className","el","vertical","horizontal","ReactDOM","render","body","appendChild","setTimeout","defaultECR","index","Inline","create","type","isVoid","data","defaultMT","defaultDIB","opts","duplicates","options","value","defaultIDD","object","getDefaultElement"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Inline } from 'slate';\nimport Snackbar from '@material-ui/core/Snackbar';\n\nexport const isNumber = (val) => !isNaN(parseFloat(val)) && isFinite(val);\n\nexport const insertSnackBar = (message) => {\n const prevSnacks = document.querySelectorAll('.response-area-alert');\n\n prevSnacks.forEach((s) => s.remove());\n\n const newEl = document.createElement('div');\n\n newEl.className = 'response-area-alert';\n\n const el = (\n <Snackbar\n anchorOrigin={{ vertical: 'top', horizontal: 'center' }}\n open={true}\n ContentProps={{\n 'aria-describedby': 'message-id',\n }}\n message={<span id=\"message-id\">{message}</span>}\n />\n );\n\n ReactDOM.render(el, newEl);\n\n document.body.appendChild(newEl);\n\n setTimeout(() => {\n newEl.remove();\n }, 2000);\n};\n\nexport const defaultECR = (index) =>\n Inline.create({\n type: 'explicit_constructed_response',\n isVoid: true,\n data: {\n index,\n },\n });\nexport const defaultMT = (index) =>\n Inline.create({\n type: 'math_templated',\n isVoid: true,\n data: {\n index,\n },\n });\n\nexport const defaultDIB = (opts, index) =>\n Inline.create({\n type: 'drag_in_the_blank',\n isVoid: true,\n data: {\n index,\n duplicates: opts.options.duplicates,\n value: null,\n },\n });\n\nexport const defaultIDD = (index) =>\n Inline.create({\n object: 'inline',\n type: 'inline_dropdown',\n isVoid: true,\n data: {\n index,\n },\n });\n\nexport const getDefaultElement = (opts, index) => {\n switch (opts.type) {\n case 'explicit-constructed-response':\n return defaultECR(index);\n\n case 'math-templated':\n return defaultMT(index);\n\n case 'drag-in-the-blank':\n return defaultDIB(opts, index);\n\n default:\n // inline-dropdown\n return defaultIDD(index);\n }\n};\n"],"file":"utils.js"}
@@ -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=CustomTablePlugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/plugins/table/CustomTablePlugin.js"],"names":["onBackspace","event","change","editor","opts","value","startBlock","endBlock","selection","document","startCell","getClosest","key","isCell","endCell","startBlockIndex","nodes","findIndex","block","isAtStartOf","isVoid","undefined","preventDefault","blocks","cells","map","node","type","typeCell","a","toSet","ignoreFirstCell","collapseToStart","isAtEndOf","first","ignoreLastCell","collapseToEnd","last","cellsToClear","rest","butLast","forEach","cell","updatedStartCell","getDescendant","collapseToStartOf","KEY_ENTER","KEY_TAB","KEY_BACKSPACE","KEY_DOWN","KEY_UP","onKeyDown","args","metaKey","exitBlockType","onModEnter","onEnter","onTab","onUpDown","core","tableOpts","TableOptions","bind"],"mappings":"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","sourcesContent":["import EditTable from 'slate-edit-table';\nimport { isSelectionInTable } from 'slate-edit-table/dist/utils';\nimport { onEnter, onModEnter, onTab, onUpDown } from 'slate-edit-table/dist/handlers';\nimport TableOptions from 'slate-edit-table/dist/options';\nimport { clearCell } from 'slate-edit-table/dist/changes';\n\nfunction onBackspace(event, change, editor, opts) {\n const { value } = change;\n const { startBlock, endBlock, selection, document } = value;\n\n const startCell = document.getClosest(startBlock.key, opts.isCell);\n const endCell = document.getClosest(endBlock.key, opts.isCell);\n\n const startBlockIndex = startCell?.nodes?.findIndex((block) => block.key == startBlock.key);\n\n // If a cursor is collapsed at the start of the first block, do nothing\n if (startBlockIndex === 0 && selection.isAtStartOf(startBlock)) {\n if (startBlock.isVoid) {\n // Delete the block normally if it is a void block\n return undefined;\n }\n\n event.preventDefault();\n return change;\n }\n\n // If \"normal\" deletion, we continue\n if (startCell === endCell) {\n return undefined;\n }\n\n // If cursor is between multiple blocks,\n // we clear the content of the cells.\n event.preventDefault();\n\n const { blocks } = value;\n\n // Get all cells that contains the selection\n const cells = blocks\n .map((node) =>\n node.type === opts.typeCell ? node : document.getClosest(node.key, (a) => a.type === opts.typeCell),\n )\n .toSet();\n\n // If the cursor is at the very end of the first cell, ignore it.\n // If the cursor is at the very start of the last cell, ignore it.\n // This behavior is to compensate hanging selection behaviors:\n // https://github.com/ianstormtaylor/slate/pull/1605\n const ignoreFirstCell = value.selection.collapseToStart().isAtEndOf(cells.first());\n const ignoreLastCell = value.selection.collapseToEnd().isAtStartOf(cells.last());\n\n let cellsToClear = cells;\n if (ignoreFirstCell) {\n cellsToClear = cellsToClear.rest();\n }\n if (ignoreLastCell) {\n cellsToClear = cellsToClear.butLast();\n }\n\n // Clear all the selection\n cellsToClear.forEach((cell) => clearCell(opts, change, cell));\n\n // Update the selection properly, and avoid reset of selection\n const updatedStartCell = change.value.document.getDescendant(cellsToClear.first().key);\n return change.collapseToStartOf(updatedStartCell);\n}\n\nconst KEY_ENTER = 'Enter';\nconst KEY_TAB = 'Tab';\nconst KEY_BACKSPACE = 'Backspace';\nconst KEY_DOWN = 'ArrowDown';\nconst KEY_UP = 'ArrowUp';\n\n/**\n * User is pressing a key in the editor\n */\nfunction onKeyDown(opts, event, change, editor) {\n // Only handle events in cells\n if (!isSelectionInTable(opts, change.value)) {\n return undefined;\n }\n\n // Build arguments list\n const args = [event, change, editor, opts];\n\n switch (event.key) {\n case KEY_ENTER:\n if (event.metaKey && opts.exitBlockType) {\n return onModEnter(...args);\n }\n return onEnter(...args);\n\n case KEY_TAB:\n return onTab(...args);\n case KEY_BACKSPACE:\n return onBackspace(...args);\n case KEY_DOWN:\n case KEY_UP:\n return onUpDown(...args);\n default:\n return undefined;\n }\n}\n\nexport default (opts) => {\n const core = EditTable(opts);\n\n const tableOpts = new TableOptions(opts);\n\n core.onKeyDown = onKeyDown.bind(null, tableOpts);\n\n return core;\n};\n"],"file":"CustomTablePlugin.js"}
@@ -1,69 +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.RemoveTable = exports.RemoveRow = exports.RemoveColumn = exports.AddRow = exports.AddColumn = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _styles = require("@material-ui/core/styles");
15
-
16
- var styles = {
17
- icon: {
18
- fill: 'grey',
19
- '&:hover': {
20
- fill: 'black'
21
- }
22
- }
23
- };
24
-
25
- var SvgIcon = function SvgIcon(Component) {
26
- return (0, _styles.withStyles)(styles)(function (props) {
27
- return /*#__PURE__*/_react["default"].createElement("svg", {
28
- xmlns: "http://www.w3.org/2000/svg",
29
- version: "1.1",
30
- width: "24",
31
- height: "24",
32
- viewBox: "0 0 24 24"
33
- }, /*#__PURE__*/_react["default"].createElement(Component, {
34
- className: props.classes.icon
35
- }));
36
- });
37
- };
38
-
39
- var AddRow = SvgIcon(function (props) {
40
- return /*#__PURE__*/_react["default"].createElement("path", (0, _extends2["default"])({}, props, {
41
- d: "M22,10A2,2 0 0,1 20,12H4A2,2 0 0,1 2,10V3H4V5H8V3H10V5H14V3H16V5H20V3H22V10M4,10H8V7H4V10M10,10H14V7H10V10M20,10V7H16V10H20M11,14H13V17H16V19H13V22H11V19H8V17H11V14Z"
42
- }));
43
- });
44
- exports.AddRow = AddRow;
45
- var RemoveRow = SvgIcon(function (props) {
46
- return /*#__PURE__*/_react["default"].createElement("path", (0, _extends2["default"])({}, props, {
47
- d: "M9.41,13L12,15.59L14.59,13L16,14.41L13.41,17L16,19.59L14.59,21L12,18.41L9.41,21L8,19.59L10.59,17L8,14.41L9.41,13M22,9A2,2 0 0,1 20,11H4A2,2 0 0,1 2,9V6A2,2 0 0,1 4,4H20A2,2 0 0,1 22,6V9M4,9H8V6H4V9M10,9H14V6H10V9M16,9H20V6H16V9Z"
48
- }));
49
- });
50
- exports.RemoveRow = RemoveRow;
51
- var AddColumn = SvgIcon(function (props) {
52
- return /*#__PURE__*/_react["default"].createElement("path", (0, _extends2["default"])({}, props, {
53
- d: "M11,2A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H2V2H11M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M15,11H18V8H20V11H23V13H20V16H18V13H15V11Z"
54
- }));
55
- });
56
- exports.AddColumn = AddColumn;
57
- var RemoveColumn = SvgIcon(function (props) {
58
- return /*#__PURE__*/_react["default"].createElement("path", (0, _extends2["default"])({}, props, {
59
- d: "M4,2H11A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H4A2,2 0 0,1 2,20V4A2,2 0 0,1 4,2M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M17.59,12L15,9.41L16.41,8L19,10.59L21.59,8L23,9.41L20.41,12L23,14.59L21.59,16L19,13.41L16.41,16L15,14.59L17.59,12Z"
60
- }));
61
- });
62
- exports.RemoveColumn = RemoveColumn;
63
- var RemoveTable = SvgIcon(function (props) {
64
- return /*#__PURE__*/_react["default"].createElement("path", (0, _extends2["default"])({}, props, {
65
- d: "M15.46,15.88L16.88,14.46L19,16.59L21.12,14.46L22.54,15.88L20.41,18L22.54,20.12L21.12,21.54L19,19.41L16.88,21.54L15.46,20.12L17.59,18L15.46,15.88M4,3H18A2,2 0 0,1 20,5V12.08C18.45,11.82 16.92,12.18 15.68,13H12V17H13.08C12.97,17.68 12.97,18.35 13.08,19H4A2,2 0 0,1 2,17V5A2,2 0 0,1 4,3M4,7V11H10V7H4M12,7V11H18V7H12M4,13V17H10V13H4Z"
66
- }));
67
- });
68
- exports.RemoveTable = RemoveTable;
69
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/plugins/table/icons/index.jsx"],"names":["styles","icon","fill","SvgIcon","Component","props","classes","AddRow","RemoveRow","AddColumn","RemoveColumn","RemoveTable"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,IAAI,EAAE;AACJC,IAAAA,IAAI,EAAE,MADF;AAEJ,eAAW;AACTA,MAAAA,IAAI,EAAE;AADG;AAFP;AADO,CAAf;;AASA,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACC,SAAD,EAAe;AAC7B,SAAO,wBAAWJ,MAAX,EAAmB,UAACK,KAAD;AAAA,wBACxB;AAAK,MAAA,KAAK,EAAC,4BAAX;AAAwC,MAAA,OAAO,EAAC,KAAhD;AAAsD,MAAA,KAAK,EAAC,IAA5D;AAAiE,MAAA,MAAM,EAAC,IAAxE;AAA6E,MAAA,OAAO,EAAC;AAArF,oBACE,gCAAC,SAAD;AAAW,MAAA,SAAS,EAAEA,KAAK,CAACC,OAAN,CAAcL;AAApC,MADF,CADwB;AAAA,GAAnB,CAAP;AAKD,CAND;;AAOO,IAAMM,MAAM,GAAGJ,OAAO,CAAC,UAACE,KAAD;AAAA,sBAC5B,sEACMA,KADN;AAEE,IAAA,CAAC,EAAC;AAFJ,KAD4B;AAAA,CAAD,CAAtB;;AAOA,IAAMG,SAAS,GAAGL,OAAO,CAAC,UAACE,KAAD;AAAA,sBAC/B,sEACMA,KADN;AAEE,IAAA,CAAC,EAAC;AAFJ,KAD+B;AAAA,CAAD,CAAzB;;AAOA,IAAMI,SAAS,GAAGN,OAAO,CAAC,UAACE,KAAD;AAAA,sBAC/B,sEACMA,KADN;AAEE,IAAA,CAAC,EAAC;AAFJ,KAD+B;AAAA,CAAD,CAAzB;;AAOA,IAAMK,YAAY,GAAGP,OAAO,CAAC,UAACE,KAAD;AAAA,sBAClC,sEACMA,KADN;AAEE,IAAA,CAAC,EAAC;AAFJ,KADkC;AAAA,CAAD,CAA5B;;AAOA,IAAMM,WAAW,GAAGR,OAAO,CAAC,UAACE,KAAD;AAAA,sBACjC,sEACMA,KADN;AAEE,IAAA,CAAC,EAAC;AAFJ,KADiC;AAAA,CAAD,CAA3B","sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\n\nconst styles = {\n icon: {\n fill: 'grey',\n '&:hover': {\n fill: 'black',\n },\n },\n};\n\nconst SvgIcon = (Component) => {\n return withStyles(styles)((props) => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">\n <Component className={props.classes.icon} />\n </svg>\n ));\n};\nexport const AddRow = SvgIcon((props) => (\n <path\n {...props}\n d=\"M22,10A2,2 0 0,1 20,12H4A2,2 0 0,1 2,10V3H4V5H8V3H10V5H14V3H16V5H20V3H22V10M4,10H8V7H4V10M10,10H14V7H10V10M20,10V7H16V10H20M11,14H13V17H16V19H13V22H11V19H8V17H11V14Z\"\n />\n));\n\nexport const RemoveRow = SvgIcon((props) => (\n <path\n {...props}\n d=\"M9.41,13L12,15.59L14.59,13L16,14.41L13.41,17L16,19.59L14.59,21L12,18.41L9.41,21L8,19.59L10.59,17L8,14.41L9.41,13M22,9A2,2 0 0,1 20,11H4A2,2 0 0,1 2,9V6A2,2 0 0,1 4,4H20A2,2 0 0,1 22,6V9M4,9H8V6H4V9M10,9H14V6H10V9M16,9H20V6H16V9Z\"\n />\n));\n\nexport const AddColumn = SvgIcon((props) => (\n <path\n {...props}\n d=\"M11,2A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H2V2H11M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M15,11H18V8H20V11H23V13H20V16H18V13H15V11Z\"\n />\n));\n\nexport const RemoveColumn = SvgIcon((props) => (\n <path\n {...props}\n d=\"M4,2H11A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H4A2,2 0 0,1 2,20V4A2,2 0 0,1 4,2M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M17.59,12L15,9.41L16.41,8L19,10.59L21.59,8L23,9.41L20.41,12L23,14.59L21.59,16L19,13.41L16.41,16L15,14.59L17.59,12Z\"\n />\n));\n\nexport const RemoveTable = SvgIcon((props) => (\n <path\n {...props}\n d=\"M15.46,15.88L16.88,14.46L19,16.59L21.12,14.46L22.54,15.88L20.41,18L22.54,20.12L21.12,21.54L19,19.41L16.88,21.54L15.46,20.12L17.59,18L15.46,15.88M4,3H18A2,2 0 0,1 20,5V12.08C18.45,11.82 16.92,12.18 15.68,13H12V17H13.08C12.97,17.68 12.97,18.35 13.08,19H4A2,2 0 0,1 2,17V5A2,2 0 0,1 4,3M4,7V11H10V7H4M12,7V11H18V7H12M4,13V17H10V13H4Z\"\n />\n));\n"],"file":"index.js"}