@pie-lib/editable-html 7.17.4-next.42 → 7.17.4-next.437

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 (95) hide show
  1. package/CHANGELOG.json +165 -0
  2. package/CHANGELOG.md +286 -0
  3. package/lib/editor.js +325 -178
  4. package/lib/editor.js.map +1 -1
  5. package/lib/index.js +63 -52
  6. package/lib/index.js.map +1 -1
  7. package/lib/parse-html.js.map +1 -1
  8. package/lib/plugins/characters/custom-popover.js +70 -0
  9. package/lib/plugins/characters/custom-popover.js.map +1 -0
  10. package/lib/plugins/characters/index.js +266 -0
  11. package/lib/plugins/characters/index.js.map +1 -0
  12. package/lib/plugins/characters/utils.js +382 -0
  13. package/lib/plugins/characters/utils.js.map +1 -0
  14. package/lib/plugins/image/component.js +251 -77
  15. package/lib/plugins/image/component.js.map +1 -1
  16. package/lib/plugins/image/image-toolbar.js +49 -63
  17. package/lib/plugins/image/image-toolbar.js.map +1 -1
  18. package/lib/plugins/image/index.js +56 -19
  19. package/lib/plugins/image/index.js.map +1 -1
  20. package/lib/plugins/image/insert-image-handler.js +9 -15
  21. package/lib/plugins/image/insert-image-handler.js.map +1 -1
  22. package/lib/plugins/index.js +20 -12
  23. package/lib/plugins/index.js.map +1 -1
  24. package/lib/plugins/list/index.js +82 -14
  25. package/lib/plugins/list/index.js.map +1 -1
  26. package/lib/plugins/math/index.js +50 -55
  27. package/lib/plugins/math/index.js.map +1 -1
  28. package/lib/plugins/media/index.js +26 -25
  29. package/lib/plugins/media/index.js.map +1 -1
  30. package/lib/plugins/media/media-dialog.js +45 -56
  31. package/lib/plugins/media/media-dialog.js.map +1 -1
  32. package/lib/plugins/media/media-toolbar.js +24 -30
  33. package/lib/plugins/media/media-toolbar.js.map +1 -1
  34. package/lib/plugins/media/media-wrapper.js +28 -35
  35. package/lib/plugins/media/media-wrapper.js.map +1 -1
  36. package/lib/plugins/respArea/drag-in-the-blank/choice.js +68 -46
  37. package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +1 -1
  38. package/lib/plugins/respArea/drag-in-the-blank/index.js +12 -12
  39. package/lib/plugins/respArea/drag-in-the-blank/index.js.map +1 -1
  40. package/lib/plugins/respArea/explicit-constructed-response/index.js +10 -9
  41. package/lib/plugins/respArea/explicit-constructed-response/index.js.map +1 -1
  42. package/lib/plugins/respArea/icons/index.js +11 -11
  43. package/lib/plugins/respArea/icons/index.js.map +1 -1
  44. package/lib/plugins/respArea/index.js +58 -42
  45. package/lib/plugins/respArea/index.js.map +1 -1
  46. package/lib/plugins/respArea/inline-dropdown/index.js +8 -8
  47. package/lib/plugins/respArea/inline-dropdown/index.js.map +1 -1
  48. package/lib/plugins/respArea/utils.js +5 -5
  49. package/lib/plugins/respArea/utils.js.map +1 -1
  50. package/lib/plugins/table/icons/index.js +12 -12
  51. package/lib/plugins/table/icons/index.js.map +1 -1
  52. package/lib/plugins/table/index.js +83 -27
  53. package/lib/plugins/table/index.js.map +1 -1
  54. package/lib/plugins/table/table-toolbar.js +41 -50
  55. package/lib/plugins/table/table-toolbar.js.map +1 -1
  56. package/lib/plugins/toolbar/default-toolbar.js +14 -11
  57. package/lib/plugins/toolbar/default-toolbar.js.map +1 -1
  58. package/lib/plugins/toolbar/done-button.js +5 -5
  59. package/lib/plugins/toolbar/done-button.js.map +1 -1
  60. package/lib/plugins/toolbar/editor-and-toolbar.js +43 -43
  61. package/lib/plugins/toolbar/editor-and-toolbar.js.map +1 -1
  62. package/lib/plugins/toolbar/index.js +5 -5
  63. package/lib/plugins/toolbar/index.js.map +1 -1
  64. package/lib/plugins/toolbar/toolbar-buttons.js +49 -52
  65. package/lib/plugins/toolbar/toolbar-buttons.js.map +1 -1
  66. package/lib/plugins/toolbar/toolbar.js +60 -64
  67. package/lib/plugins/toolbar/toolbar.js.map +1 -1
  68. package/lib/plugins/utils.js +1 -1
  69. package/lib/plugins/utils.js.map +1 -1
  70. package/lib/serialization.js +32 -9
  71. package/lib/serialization.js.map +1 -1
  72. package/lib/theme.js.map +1 -1
  73. package/package.json +5 -5
  74. package/src/editor.jsx +165 -30
  75. package/src/index.jsx +20 -3
  76. package/src/plugins/characters/custom-popover.js +45 -0
  77. package/src/plugins/characters/index.jsx +244 -0
  78. package/src/plugins/characters/utils.js +448 -0
  79. package/src/plugins/image/component.jsx +202 -21
  80. package/src/plugins/image/image-toolbar.jsx +26 -20
  81. package/src/plugins/image/index.jsx +40 -9
  82. package/src/plugins/index.jsx +4 -1
  83. package/src/plugins/list/index.jsx +67 -5
  84. package/src/plugins/math/index.jsx +31 -37
  85. package/src/plugins/media/index.jsx +3 -0
  86. package/src/plugins/media/media-dialog.js +1 -1
  87. package/src/plugins/respArea/drag-in-the-blank/choice.jsx +28 -1
  88. package/src/plugins/respArea/explicit-constructed-response/index.jsx +3 -3
  89. package/src/plugins/respArea/index.jsx +51 -31
  90. package/src/plugins/table/index.jsx +61 -14
  91. package/src/plugins/toolbar/default-toolbar.jsx +8 -0
  92. package/src/plugins/toolbar/editor-and-toolbar.jsx +12 -4
  93. package/src/plugins/toolbar/toolbar-buttons.jsx +13 -2
  94. package/src/plugins/toolbar/toolbar.jsx +14 -4
  95. package/src/serialization.jsx +19 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/plugins/toolbar/toolbar.jsx"],"names":["log","getCustomToolbar","plugin","node","value","handleDone","onDataChange","toolbar","CustomToolbarComp","customToolbar","Toolbar","props","type","marks","some","mark","blocks","onChange","onToggle","change","e","preventDefault","fn","finishEditing","onDone","deleteNode","persist","onDeleteClick","state","classes","plugins","pluginProps","toolbarOpts","autoWidth","isFocused","parentNode","find","p","supports","parentPlugin","done","handler","onToolbarDone","handleDataChange","key","data","CustomToolbar","filteredPlugins","filterPlugins","parentExtraStyles","pluginStyles","pluginExtraStyles","extraStyles","deletable","customToolbarShowDone","showDone","alwaysVisible","defaultToolbarShowDone","hasDoneButton","names","toolbarWithNoDone","toolbarTop","position","toolbarRight","alignment","focused","fullWidth","onClick","shared","iconRoot","onDeleteMouseDown","root","React","Component","zIndex","PropTypes","number","SlatePropTypes","isRequired","array","object","onImageClick","func","bool","shape","oneOf","style","cursor","justifyContent","background","minWidth","margin","padding","boxShadow","boxSizing","display","top","right","width","height","verticalAlign","label","color","index"],"mappings":"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","sourcesContent":["import { DoneButton } from './done-button';\nimport Delete from '@material-ui/icons/Delete';\nimport IconButton from '@material-ui/core/IconButton';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport classNames from 'classnames';\nimport debug from 'debug';\nimport SlatePropTypes from 'slate-prop-types';\nimport debounce from 'lodash/debounce';\n\nimport { findSingleNode, findParentNode } from '../utils';\nimport { withStyles } from '@material-ui/core/styles';\nimport DefaultToolbar from './default-toolbar';\n\nconst log = debug('@pie-lib:editable-html:plugins:toolbar');\n\nconst getCustomToolbar = (plugin, node, value, handleDone, onDataChange) => {\n if (!plugin) {\n return;\n }\n if (!plugin.toolbar) {\n return;\n }\n if (plugin.toolbar.CustomToolbarComp) {\n /**\n * Using a pre-defined Component should be preferred\n * as the rendering of it (and it's children) can be optimized by React.\n * If you keep re-defining the comp with an inline function\n * then react will have to re-render.\n */\n return plugin.toolbar.CustomToolbarComp;\n } else if (typeof plugin.toolbar.customToolbar === 'function') {\n log('deprecated - use CustomToolbarComp');\n return plugin.toolbar.customToolbar(node, value, handleDone, onDataChange);\n }\n};\n\nexport class Toolbar extends React.Component {\n static propTypes = {\n zIndex: PropTypes.number,\n value: SlatePropTypes.value.isRequired,\n plugins: PropTypes.array,\n plugin: PropTypes.object,\n onImageClick: PropTypes.func,\n onDone: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n isFocused: PropTypes.bool,\n autoWidth: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n pluginProps: PropTypes.object,\n toolbarOpts: PropTypes.shape({\n position: PropTypes.oneOf(['bottom', 'top']),\n alignment: PropTypes.oneOf(['left', 'right']),\n alwaysVisible: PropTypes.bool,\n showDone: PropTypes.bool\n }),\n onDataChange: PropTypes.func\n };\n\n constructor(props) {\n super(props);\n this.state = {\n change: null\n };\n }\n\n hasMark = type => {\n const { value } = this.props;\n return value.marks.some(mark => mark.type == type);\n };\n\n hasBlock = type => {\n const { value } = this.props;\n return value.blocks.some(node => node.type == type);\n };\n\n onToggle = plugin => {\n const { value, onChange } = this.props;\n\n if (!plugin.onToggle) return;\n\n const change = plugin.onToggle(value.change());\n onChange(change);\n };\n\n onClick = e => {\n log('[onClick]');\n e.preventDefault();\n };\n\n onButtonClick = fn => {\n return e => {\n e.preventDefault();\n fn();\n };\n };\n\n onToolbarDone = (change, finishEditing) => {\n log('[onToolbarDone] change: ', change, 'finishEditing: ', finishEditing);\n const { onChange, onDone } = this.props;\n\n if (change) {\n onChange(change, () => {\n if (finishEditing) {\n onDone();\n }\n });\n } else {\n if (finishEditing) {\n log('[onToolbarChange] call onDone');\n onDone();\n }\n }\n };\n\n onDeleteClick = debounce(\n (e, plugin, node, value, onChange) => plugin.deleteNode(e, node, value, onChange),\n 500\n );\n\n onDeleteMouseDown = (e, plugin, node, value, onChange) => {\n e.persist();\n this.onDeleteClick(e, plugin, node, value, onChange);\n };\n\n render() {\n const {\n classes,\n plugins,\n pluginProps,\n toolbarOpts,\n value,\n autoWidth,\n onChange,\n isFocused,\n onDone\n } = this.props;\n\n const node = findSingleNode(value);\n const parentNode = findParentNode(value, node);\n\n log(' --------------> [render] node: ', node);\n log('[render] node: ', node);\n\n const plugin = plugins.find(p => {\n if (!node) {\n return;\n }\n\n if (p.toolbar) {\n return p.toolbar.supports && p.toolbar.supports(node, value);\n }\n });\n const parentPlugin = plugins.find(p => {\n if (!parentNode) {\n return;\n }\n\n if (p.toolbar) {\n return p.toolbar.supports && p.toolbar.supports(parentNode, value);\n }\n });\n\n log('[render] plugin: ', plugin);\n\n const handleDone = (change, done) => {\n let handler = onDone;\n\n if (plugin && plugin.toolbar && plugin.toolbar.customToolbar) {\n handler = this.onToolbarDone;\n }\n\n handler(change, done);\n\n if (parentPlugin && parentPlugin.handleDone) {\n parentPlugin.handleDone(value, node, plugin, onChange);\n }\n };\n\n const handleDataChange = (key, data) => {\n this.props.onDataChange(key, data);\n };\n\n const CustomToolbar = getCustomToolbar(\n plugin,\n node,\n value,\n handleDone,\n this.props.onDataChange\n );\n\n const filteredPlugins =\n plugin && plugin.filterPlugins ? plugin.filterPlugins(node, plugins) : plugins;\n\n log('[render] CustomToolbar: ', CustomToolbar);\n const parentExtraStyles =\n parentPlugin && parentPlugin.pluginStyles\n ? parentPlugin.pluginStyles(node, parentNode, plugin)\n : {};\n const pluginExtraStyles =\n plugin && plugin.pluginStyles ? plugin.pluginStyles(node, parentNode, plugin) : {};\n const extraStyles = {\n ...pluginExtraStyles,\n ...parentExtraStyles\n };\n\n const deletable = node && plugin && plugin.deleteNode;\n const customToolbarShowDone =\n node && plugin && plugin.toolbar && plugin.toolbar.showDone && !toolbarOpts.alwaysVisible;\n\n // If there is a toolbarOpts we check if the showDone is not equal to false\n const defaultToolbarShowDone = !toolbarOpts || toolbarOpts.showDone !== false;\n\n const hasDoneButton = defaultToolbarShowDone || customToolbarShowDone;\n\n const names = classNames(classes.toolbar, {\n [classes.toolbarWithNoDone]: !hasDoneButton,\n [classes.toolbarTop]: toolbarOpts.position === 'top',\n [classes.toolbarRight]: toolbarOpts.alignment === 'right',\n [classes.focused]: toolbarOpts.alwaysVisible || isFocused,\n [classes.autoWidth]: autoWidth,\n [classes.fullWidth]: !autoWidth\n });\n\n return (\n <div className={names} style={extraStyles} onClick={this.onClick}>\n {CustomToolbar ? (\n <CustomToolbar\n node={node}\n value={value}\n onToolbarDone={this.onToolbarDone}\n onDataChange={handleDataChange}\n pluginProps={pluginProps}\n />\n ) : (\n <DefaultToolbar\n plugins={filteredPlugins}\n pluginProps={pluginProps}\n value={value}\n onChange={onChange}\n showDone={defaultToolbarShowDone}\n onDone={handleDone}\n deletable={deletable}\n />\n )}\n\n <div className={classes.shared}>\n {deletable && (\n <IconButton\n aria-label=\"Delete\"\n className={classes.iconRoot}\n onMouseDown={e => this.onDeleteMouseDown(e, plugin, node, value, onChange)}\n classes={{\n root: classes.iconRoot\n }}\n >\n <Delete />\n </IconButton>\n )}\n {customToolbarShowDone && <DoneButton onClick={handleDone} />}\n </div>\n </div>\n );\n }\n}\n\nconst style = {\n toolbar: {\n position: 'absolute',\n zIndex: 10,\n cursor: 'pointer',\n justifyContent: 'space-between',\n background: 'var(--editable-html-toolbar-bg, #efefef)',\n minWidth: '280px',\n margin: '5px 0 0 0',\n padding: '2px',\n boxShadow:\n '0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12)',\n boxSizing: 'border-box',\n display: 'none'\n },\n toolbarWithNoDone: {\n minWidth: '265px'\n },\n toolbarTop: {\n top: '-45px'\n },\n toolbarRight: {\n right: 0\n },\n fullWidth: {\n width: '100%'\n },\n autoWidth: {\n width: 'auto'\n },\n focused: {\n display: 'flex'\n },\n iconRoot: {\n width: '28px',\n height: '28px',\n padding: '4px',\n verticalAlign: 'top'\n },\n label: {\n color: 'var(--editable-html-toolbar-check, #00bb00)'\n },\n shared: {\n display: 'flex'\n }\n};\nexport default withStyles(style, { index: 1000 })(Toolbar);\n"],"file":"toolbar.js"}
1
+ {"version":3,"file":"toolbar.js","names":["log","debug","getCustomToolbar","plugin","node","value","handleDone","onDataChange","toolbar","CustomToolbarComp","customToolbar","Toolbar","props","type","marks","some","mark","blocks","onChange","onToggle","change","e","preventDefault","fn","finishEditing","onDone","debounce","deleteNode","persist","onDeleteClick","state","classes","plugins","pluginProps","toolbarOpts","autoWidth","isFocused","toolbarRef","findSingleNode","parentNode","findParentNode","find","p","supports","parentPlugin","done","Change","handler","onToolbarDone","handleDataChange","key","data","CustomToolbar","filteredPlugins","filterPlugins","parentExtraStyles","pluginStyles","pluginExtraStyles","extraStyles","deletable","customToolbarShowDone","showDone","alwaysVisible","defaultToolbarShowDone","hasDoneButton","names","classNames","toolbarWithNoDone","toolbarTop","position","toolbarRight","alignment","focused","fullWidth","onClick","shared","iconRoot","onDeleteMouseDown","root","React","Component","zIndex","PropTypes","number","SlatePropTypes","isRequired","array","object","onImageClick","func","bool","shape","oneOf","ref","style","cursor","justifyContent","background","minWidth","margin","padding","boxShadow","boxSizing","display","top","right","width","height","verticalAlign","label","color","withStyles","index"],"sources":["../../../src/plugins/toolbar/toolbar.jsx"],"sourcesContent":["import React from 'react';\nimport { Change } from 'slate';\nimport Delete from '@material-ui/icons/Delete';\nimport IconButton from '@material-ui/core/IconButton';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport debug from 'debug';\nimport SlatePropTypes from 'slate-prop-types';\nimport debounce from 'lodash/debounce';\n\nimport { DoneButton } from './done-button';\n\nimport { findSingleNode, findParentNode } from '../utils';\nimport { withStyles } from '@material-ui/core/styles';\nimport DefaultToolbar from './default-toolbar';\n\nconst log = debug('@pie-lib:editable-html:plugins:toolbar');\n\nconst getCustomToolbar = (plugin, node, value, handleDone, onDataChange) => {\n if (!plugin) {\n return;\n }\n if (!plugin.toolbar) {\n return;\n }\n if (plugin.toolbar.CustomToolbarComp) {\n /**\n * Using a pre-defined Component should be preferred\n * as the rendering of it (and it's children) can be optimized by React.\n * If you keep re-defining the comp with an inline function\n * then react will have to re-render.\n */\n return plugin.toolbar.CustomToolbarComp;\n } else if (typeof plugin.toolbar.customToolbar === 'function') {\n log('deprecated - use CustomToolbarComp');\n return plugin.toolbar.customToolbar(node, value, handleDone, onDataChange);\n }\n};\n\nexport class Toolbar extends React.Component {\n static propTypes = {\n zIndex: PropTypes.number,\n value: SlatePropTypes.value.isRequired,\n plugins: PropTypes.array,\n plugin: PropTypes.object,\n onImageClick: PropTypes.func,\n onDone: PropTypes.func.isRequired,\n toolbarRef: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n isFocused: PropTypes.bool,\n autoWidth: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n pluginProps: PropTypes.object,\n toolbarOpts: PropTypes.shape({\n position: PropTypes.oneOf(['bottom', 'top']),\n alignment: PropTypes.oneOf(['left', 'right']),\n alwaysVisible: PropTypes.bool,\n ref: PropTypes.func,\n showDone: PropTypes.bool\n }),\n onDataChange: PropTypes.func\n };\n\n constructor(props) {\n super(props);\n this.state = {\n change: null\n };\n }\n\n hasMark = type => {\n const { value } = this.props;\n return value.marks.some(mark => mark.type == type);\n };\n\n hasBlock = type => {\n const { value } = this.props;\n return value.blocks.some(node => node.type == type);\n };\n\n onToggle = plugin => {\n const { value, onChange } = this.props;\n\n if (!plugin.onToggle) return;\n\n const change = plugin.onToggle(value.change());\n onChange(change);\n };\n\n onClick = e => {\n log('[onClick]');\n e.preventDefault();\n };\n\n onButtonClick = fn => {\n return e => {\n e.preventDefault();\n fn();\n };\n };\n\n onToolbarDone = (change, finishEditing) => {\n log('[onToolbarDone] change: ', change, 'finishEditing: ', finishEditing);\n const { onChange, onDone } = this.props;\n\n if (change) {\n onChange(change, () => {\n if (finishEditing) {\n onDone();\n }\n });\n } else {\n if (finishEditing) {\n log('[onToolbarChange] call onDone');\n onDone();\n }\n }\n };\n\n onDeleteClick = debounce(\n (e, plugin, node, value, onChange) => plugin.deleteNode(e, node, value, onChange),\n 500\n );\n\n onDeleteMouseDown = (e, plugin, node, value, onChange) => {\n e.persist();\n this.onDeleteClick(e, plugin, node, value, onChange);\n };\n\n render() {\n const {\n classes,\n plugins,\n pluginProps,\n toolbarOpts,\n value,\n autoWidth,\n onChange,\n isFocused,\n onDone,\n toolbarRef\n } = this.props;\n\n const node = findSingleNode(value);\n const parentNode = findParentNode(value, node);\n\n log(' --------------> [render] node: ', node);\n log('[render] node: ', node);\n\n const plugin = plugins.find(p => {\n if (!node) {\n return;\n }\n\n if (p.toolbar) {\n return p.toolbar.supports && p.toolbar.supports(node, value);\n }\n });\n const parentPlugin = plugins.find(p => {\n if (!parentNode) {\n return;\n }\n\n if (p.toolbar) {\n return p.toolbar.supports && p.toolbar.supports(parentNode, value);\n }\n });\n\n log('[render] plugin: ', plugin);\n\n const handleDone = (change, done) => {\n // use handler only if this is an actual Slate Change\n if (!(change instanceof Change)) {\n return;\n }\n\n let handler = onDone;\n\n if (plugin && plugin.toolbar && plugin.toolbar.customToolbar) {\n handler = this.onToolbarDone;\n }\n\n handler(change, done);\n\n if (parentPlugin && parentPlugin.handleDone) {\n parentPlugin.handleDone(value, node, plugin, onChange);\n }\n };\n\n const handleDataChange = (key, data) => {\n this.props.onDataChange(key, data);\n };\n\n const CustomToolbar = getCustomToolbar(\n plugin,\n node,\n value,\n handleDone,\n this.props.onDataChange\n );\n\n const filteredPlugins =\n plugin && plugin.filterPlugins ? plugin.filterPlugins(node, plugins) : plugins;\n\n log('[render] CustomToolbar: ', CustomToolbar);\n const parentExtraStyles =\n parentPlugin && parentPlugin.pluginStyles\n ? parentPlugin.pluginStyles(node, parentNode, plugin)\n : {};\n const pluginExtraStyles =\n plugin && plugin.pluginStyles ? plugin.pluginStyles(node, parentNode, plugin) : {};\n const extraStyles = {\n ...pluginExtraStyles,\n ...parentExtraStyles\n };\n\n const deletable = node && plugin && plugin.deleteNode;\n const customToolbarShowDone =\n node && plugin && plugin.toolbar && plugin.toolbar.showDone && !toolbarOpts.alwaysVisible;\n\n // If there is a toolbarOpts we check if the showDone is not equal to false\n const defaultToolbarShowDone = !toolbarOpts || toolbarOpts.showDone !== false;\n\n const hasDoneButton = defaultToolbarShowDone || customToolbarShowDone;\n\n const names = classNames(classes.toolbar, {\n [classes.toolbarWithNoDone]: !hasDoneButton,\n [classes.toolbarTop]: toolbarOpts.position === 'top',\n [classes.toolbarRight]: toolbarOpts.alignment === 'right',\n [classes.focused]: toolbarOpts.alwaysVisible || isFocused,\n [classes.autoWidth]: autoWidth,\n [classes.fullWidth]: !autoWidth\n });\n\n return (\n <div className={names} style={extraStyles} onClick={this.onClick} ref={toolbarRef}>\n {CustomToolbar ? (\n <CustomToolbar\n node={node}\n value={value}\n onToolbarDone={this.onToolbarDone}\n onDataChange={handleDataChange}\n pluginProps={pluginProps}\n />\n ) : (\n <DefaultToolbar\n plugins={filteredPlugins}\n pluginProps={pluginProps}\n value={value}\n onChange={onChange}\n showDone={defaultToolbarShowDone}\n onDone={handleDone}\n deletable={deletable}\n />\n )}\n\n <div className={classes.shared}>\n {deletable && (\n <IconButton\n aria-label=\"Delete\"\n className={classes.iconRoot}\n onMouseDown={e => this.onDeleteMouseDown(e, plugin, node, value, onChange)}\n classes={{\n root: classes.iconRoot\n }}\n >\n <Delete />\n </IconButton>\n )}\n {customToolbarShowDone && <DoneButton onClick={handleDone} />}\n </div>\n </div>\n );\n }\n}\n\nconst style = {\n toolbar: {\n position: 'absolute',\n zIndex: 10,\n cursor: 'pointer',\n justifyContent: 'space-between',\n background: 'var(--editable-html-toolbar-bg, #efefef)',\n minWidth: '280px',\n margin: '5px 0 0 0',\n padding: '2px',\n boxShadow:\n '0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12)',\n boxSizing: 'border-box',\n display: 'none'\n },\n toolbarWithNoDone: {\n minWidth: '265px'\n },\n toolbarTop: {\n top: '-45px'\n },\n toolbarRight: {\n right: 0\n },\n fullWidth: {\n width: '100%'\n },\n autoWidth: {\n width: 'auto'\n },\n focused: {\n display: 'flex'\n },\n iconRoot: {\n width: '28px',\n height: '28px',\n padding: '4px',\n verticalAlign: 'top'\n },\n label: {\n color: 'var(--editable-html-toolbar-check, #00bb00)'\n },\n shared: {\n display: 'flex'\n }\n};\nexport default withStyles(style, { index: 1000 })(Toolbar);\n"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.hasNode = exports.hasBlock = exports.hasMark = exports.findParentNode = exports.findSingleNode = void 0;
6
+ exports.hasNode = exports.hasMark = exports.hasBlock = exports.findSingleNode = exports.findParentNode = void 0;
7
7
 
8
8
  var findSingleNode = function findSingleNode(value) {
9
9
  if (!value || !value.isCollapsed || !value.startKey) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/plugins/utils.js"],"names":["findSingleNode","value","isCollapsed","startKey","inline","document","getClosestInline","block","getClosestBlock","findParentNode","node","getParent","key","hasMark","type","marks","some","mark","hasBlock","blocks","hasNode","nodes"],"mappings":";;;;;;;AAAO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAAAC,KAAK,EAAI;AACrC,MAAI,CAACA,KAAD,IAAU,CAACA,KAAK,CAACC,WAAjB,IAAgC,CAACD,KAAK,CAACE,QAA3C,EAAqD;AACnD;AACD;;AAED,MAAMC,MAAM,GAAGH,KAAK,CAACI,QAAN,CAAeC,gBAAf,CAAgCL,KAAK,CAACE,QAAtC,CAAf;;AAEA,MAAIC,MAAJ,EAAY;AACV,WAAOA,MAAP;AACD;;AAED,MAAMG,KAAK,GAAGN,KAAK,CAACI,QAAN,CAAeG,eAAf,CAA+BP,KAAK,CAACE,QAArC,CAAd;;AAEA,MAAII,KAAJ,EAAW;AACT,WAAOA,KAAP;AACD;AACF,CAhBM;;;;AAkBA,IAAME,cAAc,GAAG,SAAjBA,cAAiB,CAACR,KAAD,EAAQS,IAAR,EAAiB;AAC7C,MAAI,CAACT,KAAD,IAAU,CAACS,IAAf,EAAqB;AACnB;AACD;;AAED,SAAOT,KAAK,CAACI,QAAN,CAAeM,SAAf,CAAyBD,IAAI,CAACE,GAA9B,CAAP;AACD,CANM;;;;AAQA,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACZ,KAAD,EAAQa,IAAR;AAAA,SAAiBb,KAAK,IAAIA,KAAK,CAACc,KAAN,CAAYC,IAAZ,CAAiB,UAAAC,IAAI;AAAA,WAAIA,IAAI,CAACH,IAAL,IAAaA,IAAjB;AAAA,GAArB,CAA1B;AAAA,CAAhB;;;;AAEA,IAAMI,QAAQ,GAAG,SAAXA,QAAW,CAACjB,KAAD,EAAQa,IAAR;AAAA,SAAiBb,KAAK,IAAIA,KAAK,CAACkB,MAAN,CAAaH,IAAb,CAAkB,UAAAN,IAAI;AAAA,WAAIA,IAAI,CAACI,IAAL,IAAaA,IAAjB;AAAA,GAAtB,CAA1B;AAAA,CAAjB;;;;AAEA,IAAMM,OAAO,GAAG,SAAVA,OAAU,OAAeN,IAAf;AAAA,MAAGT,QAAH,QAAGA,QAAH;AAAA,SACrBA,QAAQ,IAAIA,QAAQ,CAACgB,KAAT,CAAeL,IAAf,CAAoB,UAAAN,IAAI;AAAA,WAAIA,IAAI,CAACI,IAAL,IAAaA,IAAjB;AAAA,GAAxB,CADS;AAAA,CAAhB","sourcesContent":["export const findSingleNode = value => {\n if (!value || !value.isCollapsed || !value.startKey) {\n return;\n }\n\n const inline = value.document.getClosestInline(value.startKey);\n\n if (inline) {\n return inline;\n }\n\n const block = value.document.getClosestBlock(value.startKey);\n\n if (block) {\n return block;\n }\n};\n\nexport const findParentNode = (value, node) => {\n if (!value || !node) {\n return;\n }\n\n return value.document.getParent(node.key);\n};\n\nexport const hasMark = (value, type) => value && value.marks.some(mark => mark.type == type);\n\nexport const hasBlock = (value, type) => value && value.blocks.some(node => node.type == type);\n\nexport const hasNode = ({ document }, type) =>\n document && document.nodes.some(node => node.type == type);\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["findSingleNode","value","isCollapsed","startKey","inline","document","getClosestInline","block","getClosestBlock","findParentNode","node","getParent","key","hasMark","type","marks","some","mark","hasBlock","blocks","hasNode","nodes"],"sources":["../../src/plugins/utils.js"],"sourcesContent":["export const findSingleNode = value => {\n if (!value || !value.isCollapsed || !value.startKey) {\n return;\n }\n\n const inline = value.document.getClosestInline(value.startKey);\n\n if (inline) {\n return inline;\n }\n\n const block = value.document.getClosestBlock(value.startKey);\n\n if (block) {\n return block;\n }\n};\n\nexport const findParentNode = (value, node) => {\n if (!value || !node) {\n return;\n }\n\n return value.document.getParent(node.key);\n};\n\nexport const hasMark = (value, type) => value && value.marks.some(mark => mark.type == type);\n\nexport const hasBlock = (value, type) => value && value.blocks.some(node => node.type == type);\n\nexport const hasNode = ({ document }, type) =>\n document && document.nodes.some(node => node.type == type);\n"],"mappings":";;;;;;;AAAO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAAAC,KAAK,EAAI;EACrC,IAAI,CAACA,KAAD,IAAU,CAACA,KAAK,CAACC,WAAjB,IAAgC,CAACD,KAAK,CAACE,QAA3C,EAAqD;IACnD;EACD;;EAED,IAAMC,MAAM,GAAGH,KAAK,CAACI,QAAN,CAAeC,gBAAf,CAAgCL,KAAK,CAACE,QAAtC,CAAf;;EAEA,IAAIC,MAAJ,EAAY;IACV,OAAOA,MAAP;EACD;;EAED,IAAMG,KAAK,GAAGN,KAAK,CAACI,QAAN,CAAeG,eAAf,CAA+BP,KAAK,CAACE,QAArC,CAAd;;EAEA,IAAII,KAAJ,EAAW;IACT,OAAOA,KAAP;EACD;AACF,CAhBM;;;;AAkBA,IAAME,cAAc,GAAG,SAAjBA,cAAiB,CAACR,KAAD,EAAQS,IAAR,EAAiB;EAC7C,IAAI,CAACT,KAAD,IAAU,CAACS,IAAf,EAAqB;IACnB;EACD;;EAED,OAAOT,KAAK,CAACI,QAAN,CAAeM,SAAf,CAAyBD,IAAI,CAACE,GAA9B,CAAP;AACD,CANM;;;;AAQA,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACZ,KAAD,EAAQa,IAAR;EAAA,OAAiBb,KAAK,IAAIA,KAAK,CAACc,KAAN,CAAYC,IAAZ,CAAiB,UAAAC,IAAI;IAAA,OAAIA,IAAI,CAACH,IAAL,IAAaA,IAAjB;EAAA,CAArB,CAA1B;AAAA,CAAhB;;;;AAEA,IAAMI,QAAQ,GAAG,SAAXA,QAAW,CAACjB,KAAD,EAAQa,IAAR;EAAA,OAAiBb,KAAK,IAAIA,KAAK,CAACkB,MAAN,CAAaH,IAAb,CAAkB,UAAAN,IAAI;IAAA,OAAIA,IAAI,CAACI,IAAL,IAAaA,IAAjB;EAAA,CAAtB,CAA1B;AAAA,CAAjB;;;;AAEA,IAAMM,OAAO,GAAG,SAAVA,OAAU,OAAeN,IAAf;EAAA,IAAGT,QAAH,QAAGA,QAAH;EAAA,OACrBA,QAAQ,IAAIA,QAAQ,CAACgB,KAAT,CAAeL,IAAf,CAAoB,UAAAN,IAAI;IAAA,OAAIA,IAAI,CAACI,IAAL,IAAaA,IAAjB;EAAA,CAAxB,CADS;AAAA,CAAhB"}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
- exports.valueToHtml = exports.htmlToValue = exports.TEXT_RULE = exports.reactAttributes = exports.parseStyleString = exports.BLOCK_TAGS = void 0;
8
+ exports.valueToHtml = exports.reactAttributes = exports.parseStyleString = exports.htmlToValue = exports.getBase64 = exports.TEXT_RULE = exports.BLOCK_TAGS = void 0;
7
9
 
8
10
  var _slateHtmlSerializer = _interopRequireDefault(require("slate-html-serializer"));
9
11
 
@@ -27,8 +29,6 @@ var _respArea = require("./plugins/respArea");
27
29
 
28
30
  var _slate = require("slate");
29
31
 
30
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
-
32
32
  var log = (0, _debug["default"])('@pie-lib:editable-html:serialization');
33
33
  /**
34
34
  * Tags to blocks.
@@ -79,9 +79,27 @@ var parseStyleString = function parseStyleString(s) {
79
79
 
80
80
  exports.parseStyleString = parseStyleString;
81
81
 
82
+ var getBase64 = function getBase64(file) {
83
+ return new Promise(function (resolve, reject) {
84
+ var reader = new FileReader();
85
+ reader.readAsDataURL(file);
86
+
87
+ reader.onload = function () {
88
+ return resolve(reader.result);
89
+ };
90
+
91
+ reader.onerror = function (error) {
92
+ return reject(error);
93
+ };
94
+ });
95
+ };
96
+
97
+ exports.getBase64 = getBase64;
98
+
82
99
  var reactAttributes = function reactAttributes(o) {
83
100
  return (0, _toStyle.object)(o, {
84
- camelize: true
101
+ camelize: true,
102
+ addUnits: false
85
103
  });
86
104
  };
87
105
 
@@ -150,7 +168,7 @@ var blocks = {
150
168
  for (key in BLOCK_TAGS) {
151
169
  if (BLOCK_TAGS[key] === object.type) {
152
170
  var Tag = key;
153
- return _react["default"].createElement(Tag, jsonData.attributes, children);
171
+ return /*#__PURE__*/_react["default"].createElement(Tag, jsonData.attributes, children);
154
172
  }
155
173
  }
156
174
  }
@@ -171,7 +189,7 @@ var marks = {
171
189
  for (var key in MARK_TAGS) {
172
190
  if (MARK_TAGS[key] === object.type) {
173
191
  var Tag = key;
174
- return _react["default"].createElement(Tag, null, children);
192
+ return /*#__PURE__*/_react["default"].createElement(Tag, null, children);
175
193
  }
176
194
  }
177
195
  }
@@ -222,7 +240,7 @@ var TEXT_RULE = {
222
240
  serialize: function serialize(obj, children) {
223
241
  if (obj.object === 'string') {
224
242
  return children.split('\n').reduce(function (array, text, i) {
225
- if (i !== 0) array.push(_react["default"].createElement("br", null));
243
+ if (i !== 0) array.push( /*#__PURE__*/_react["default"].createElement("br", null));
226
244
  array.push(text);
227
245
  return array;
228
246
  }, []);
@@ -361,7 +379,7 @@ serializer.deserialize = function deserialize(html) {
361
379
  };
362
380
  var i;
363
381
 
364
- for (i = 0; i < 1000; i++) {
382
+ for (i = 0; i < 3000; i++) {
365
383
  json.schema.rules.push({
366
384
  match: {
367
385
  object: 'document'
@@ -384,7 +402,12 @@ serializer.deserialize = function deserialize(html) {
384
402
  };
385
403
 
386
404
  var htmlToValue = function htmlToValue(html) {
387
- return serializer.deserialize(html);
405
+ try {
406
+ return serializer.deserialize(html);
407
+ } catch (e) {
408
+ console.log("Couldn't parse html: ", e);
409
+ return {};
410
+ }
388
411
  };
389
412
 
390
413
  exports.htmlToValue = htmlToValue;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/serialization.jsx"],"names":["log","BLOCK_TAGS","div","span","p","blockquote","pre","h1","h2","h3","h4","h5","h6","MARK_TAGS","b","em","u","s","code","strong","parseStyleString","regex","match","result","exec","trim","reactAttributes","o","camelize","attributesToMap","el","acc","attribute","value","getAttribute","styleString","reactStyleObject","attributes","blocks","deserialize","next","block","tagName","toLowerCase","childNodes","length","cn","object","type","data","reduce","nodes","serialize","children","jsonData","toJSON","key","Tag","marks","mark","Mark","isMark","findPreviousText","nodeName","previousSibling","TEXT_RULE","normalize","leaves","text","nodeValue","obj","split","array","i","push","RULES","listSerialization","mathSerialization","mediaSerialization","imgSerialization","tableSerialization","responseAreaSerialization","allWhitespace","node","test","textContent","defaultParseHtml","html","DOMParser","Error","parsed","parseFromString","body","textNodes","document","createTreeWalker","NodeFilter","SHOW_TEXT","n","nextNode","parentNode","removeChild","parseHtml","window","serializer","Html","defaultBlock","rules","_extends","Object","assign","target","arguments","source","prototype","hasOwnProperty","call","options","undefined","_options$toJSON","fragment","Array","from","deserializeElements","memo","original","_block","isVoid","json","schema","ret","Value","fromJSON","htmlToValue","valueToHtml"],"mappings":"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","sourcesContent":["import Html from 'slate-html-serializer';\nimport React from 'react';\nimport debug from 'debug';\nimport { object as toStyleObject } from 'to-style';\n\nimport { serialization as imgSerialization } from './plugins/image';\nimport { serialization as mathSerialization } from './plugins/math';\nimport { serialization as mediaSerialization } from './plugins/media';\nimport { serialization as listSerialization } from './plugins/list';\nimport { serialization as tableSerialization } from './plugins/table';\nimport { serialization as responseAreaSerialization } from './plugins/respArea';\nimport { Mark, Value } from 'slate';\n\nconst log = debug('@pie-lib:editable-html:serialization');\n\n/**\n * Tags to blocks.\n *\n * @type {Object}\n */\n\nexport const BLOCK_TAGS = {\n div: 'div',\n span: 'span',\n p: 'paragraph',\n blockquote: 'quote',\n pre: 'code',\n h1: 'heading-one',\n h2: 'heading-two',\n h3: 'heading-three',\n h4: 'heading-four',\n h5: 'heading-five',\n h6: 'heading-six'\n};\n\n/**\n * Tags to marks.\n *\n * @type {Object}\n */\n\nconst MARK_TAGS = {\n b: 'bold',\n em: 'italic',\n u: 'underline',\n s: 'strikethrough',\n code: 'code',\n strong: 'bold'\n};\n\nexport const parseStyleString = s => {\n const regex = /([\\w-]*)\\s*:\\s*([^;]*)/g;\n let match;\n const result = {};\n while ((match = regex.exec(s))) {\n result[match[1]] = match[2].trim();\n }\n return result;\n};\n\nexport const reactAttributes = o => toStyleObject(o, { camelize: true });\n\nconst attributesToMap = el => (acc, attribute) => {\n const value = el.getAttribute(attribute);\n if (value) {\n if (attribute === 'style') {\n const styleString = el.getAttribute(attribute);\n const reactStyleObject = reactAttributes(parseStyleString(styleString));\n acc['style'] = reactStyleObject;\n } else {\n acc[attribute] = el.getAttribute(attribute);\n }\n }\n return acc;\n};\n\nconst attributes = ['border', 'cellpadding', 'cellspacing', 'class', 'style'];\n\n/**\n * Serializer rules.\n *\n * @type {Array}\n */\n\nconst blocks = {\n deserialize(el, next) {\n log('[blocks:deserialize] block: ', el);\n const block = BLOCK_TAGS[el.tagName.toLowerCase()];\n if (!block) return;\n log('[blocks:deserialize] block: ', block);\n\n if (el.childNodes.length === 1) {\n const cn = el.childNodes[0];\n if (cn && cn.tagName && cn.tagName.toLowerCase() === block) {\n log('[we have a child node of the same]...');\n return;\n }\n }\n\n return {\n object: 'block',\n type: block,\n /**\n * Here for rendering styles for all block elements\n */\n data: { attributes: attributes.reduce(attributesToMap(el), {}) },\n nodes: next(el.childNodes)\n };\n },\n serialize: (object, children) => {\n if (object.object !== 'block') return;\n\n const jsonData = object.data.toJSON();\n\n log('[blocks:serialize] object: ', object, children);\n let key;\n\n for (key in BLOCK_TAGS) {\n if (BLOCK_TAGS[key] === object.type) {\n const Tag = key;\n\n return <Tag {...jsonData.attributes}>{children}</Tag>;\n }\n }\n }\n};\n\nconst marks = {\n deserialize(el, next) {\n const mark = MARK_TAGS[el.tagName.toLowerCase()];\n if (!mark) return;\n log('[deserialize] mark: ', mark);\n return {\n object: 'mark',\n type: mark,\n nodes: next(el.childNodes)\n };\n },\n serialize(object, children) {\n if (Mark.isMark(object)) {\n for (var key in MARK_TAGS) {\n if (MARK_TAGS[key] === object.type) {\n const Tag = key;\n return <Tag>{children}</Tag>;\n }\n }\n }\n }\n};\n\nconst findPreviousText = el => {\n if (el.nodeName === '#text') {\n return el;\n }\n\n if (el.previousSibling) {\n return findPreviousText(el.previousSibling);\n }\n\n return null;\n};\n\nexport const TEXT_RULE = {\n deserialize(el) {\n /**\n * This needs to be called on the dom element in order to merge the adjacent text nodes together\n * */\n el.normalize();\n\n if (el.tagName && el.tagName.toLowerCase() === 'br') {\n return {\n object: 'text',\n leaves: [\n {\n object: 'leaf',\n text: '\\n'\n }\n ]\n };\n }\n\n if (el.nodeName === '#text') {\n if (el.nodeValue && el.nodeValue.match(/<!--.*?-->/)) return;\n\n log('[text:deserialize] return text object..');\n return {\n object: 'text',\n leaves: [\n {\n object: 'leaf',\n text: el.nodeValue\n }\n ]\n };\n }\n },\n\n serialize(obj, children) {\n if (obj.object === 'string') {\n return children.split('\\n').reduce((array, text, i) => {\n if (i !== 0) array.push(<br />);\n array.push(text);\n return array;\n }, []);\n }\n }\n};\n\nconst RULES = [\n listSerialization,\n mathSerialization,\n mediaSerialization,\n imgSerialization,\n tableSerialization,\n responseAreaSerialization,\n TEXT_RULE,\n blocks,\n marks\n];\n\nfunction allWhitespace(node) {\n // Use ECMA-262 Edition 3 String and RegExp features\n return !/[^\\t\\n\\r ]/.test(node.textContent);\n}\n\nfunction defaultParseHtml(html) {\n if (typeof DOMParser === 'undefined') {\n throw new Error(\n 'The native `DOMParser` global which the `Html` serializer uses by default is not present in this environment. You must supply the `options.parseHtml` function instead.'\n );\n }\n\n const parsed = new DOMParser().parseFromString(html, 'text/html');\n\n const { body } = parsed;\n var textNodes = document.createTreeWalker(body, NodeFilter.SHOW_TEXT, null, null);\n var n = textNodes.nextNode();\n\n while (n) {\n if (allWhitespace(n) || n.nodeValue === '\\u200B') {\n n.parentNode.removeChild(n);\n }\n n = textNodes.nextNode();\n }\n\n return body;\n}\n\n/** If this lib is used on the server side, we need to bypass using the DOMParser - just put in a stub. */\nconst parseHtml =\n typeof window === 'undefined'\n ? () => ({\n childNodes: []\n })\n : defaultParseHtml;\n\nconst serializer = new Html({\n defaultBlock: 'div',\n rules: RULES,\n parseHtml\n});\n\nconst _extends =\n Object.assign ||\n function(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n/**\n * This is needed in order to override the function that eventually leads\n * to the max iteration of 12, which in most cases it's not enough. The newer versions\n * have a different way to calculate this, but updating to a newer version of slate\n * requires a lot of work fixing other issues. So we just increase the rules by 1000,\n * which means a lot of iterations.\n * Below is the code that calculates the max iterations.\n * var max = schema.stack.plugins.length + schema.rules.length + 1;\n */\nserializer.deserialize = function deserialize(html) {\n const options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const _options$toJSON = options.toJSON;\n const toJSON = _options$toJSON === undefined ? false : _options$toJSON;\n const defaultBlock = this.defaultBlock;\n const parseHtml = this.parseHtml;\n\n const fragment = parseHtml(html);\n const children = Array.from(fragment.childNodes);\n let nodes = this.deserializeElements(children);\n\n // COMPAT: ensure that all top-level inline nodes are wrapped into a block.\n nodes = nodes.reduce(function(memo, node, i, original) {\n if (node.object === 'block') {\n memo.push(node);\n return memo;\n }\n\n if (i > 0 && original[i - 1].object !== 'block') {\n const _block = memo[memo.length - 1];\n\n _block.nodes.push(node);\n return memo;\n }\n\n const block = _extends({ object: 'block', data: {}, isVoid: false }, defaultBlock, {\n nodes: [node]\n });\n\n memo.push(block);\n return memo;\n }, []);\n\n if (nodes.length === 0) {\n nodes = [\n _extends({ object: 'block', data: {}, isVoid: false }, defaultBlock, {\n nodes: [{ object: 'text', leaves: [{ object: 'leaf', text: '', marks: [] }] }]\n })\n ];\n }\n\n const json = {\n object: 'value',\n document: {\n object: 'document',\n data: {},\n nodes: nodes\n },\n schema: {\n rules: []\n }\n };\n\n let i;\n\n for (i = 0; i < 1000; i++) {\n json.schema.rules.push({\n match: { object: 'document' },\n nodes: [{ match: { object: 'block' } }]\n });\n }\n\n const ret = toJSON ? json : Value.fromJSON(json);\n\n if (ret) {\n return ret;\n }\n\n return null;\n};\n\nexport const htmlToValue = html => serializer.deserialize(html);\n\nexport const valueToHtml = value => serializer.serialize(value);\n\n/**\n *\n * <div><div>a</div></div> -> <div>a</div>\n *\n * <div><div>a</div><div>b</div></div> -> <div>a</div><div>b</div>\n * <div><div>a</div>4444<div>b</div></div> -> <div>a</div>4444<div>b</div>\n */\n"],"file":"serialization.js"}
1
+ {"version":3,"file":"serialization.js","names":["log","debug","BLOCK_TAGS","div","span","p","blockquote","pre","h1","h2","h3","h4","h5","h6","MARK_TAGS","b","em","u","s","code","strong","parseStyleString","regex","match","result","exec","trim","getBase64","file","Promise","resolve","reject","reader","FileReader","readAsDataURL","onload","onerror","error","reactAttributes","o","toStyleObject","camelize","addUnits","attributesToMap","el","acc","attribute","value","getAttribute","styleString","reactStyleObject","attributes","blocks","deserialize","next","block","tagName","toLowerCase","childNodes","length","cn","object","type","data","reduce","nodes","serialize","children","jsonData","toJSON","key","Tag","marks","mark","Mark","isMark","findPreviousText","nodeName","previousSibling","TEXT_RULE","normalize","leaves","text","nodeValue","obj","split","array","i","push","RULES","listSerialization","mathSerialization","mediaSerialization","imgSerialization","tableSerialization","responseAreaSerialization","allWhitespace","node","test","textContent","defaultParseHtml","html","DOMParser","Error","parsed","parseFromString","body","textNodes","document","createTreeWalker","NodeFilter","SHOW_TEXT","n","nextNode","parentNode","removeChild","parseHtml","window","serializer","Html","defaultBlock","rules","_extends","Object","assign","target","arguments","source","prototype","hasOwnProperty","call","options","undefined","_options$toJSON","fragment","Array","from","deserializeElements","memo","original","_block","isVoid","json","schema","ret","Value","fromJSON","htmlToValue","e","console","valueToHtml"],"sources":["../src/serialization.jsx"],"sourcesContent":["import Html from 'slate-html-serializer';\nimport React from 'react';\nimport debug from 'debug';\nimport { object as toStyleObject } from 'to-style';\n\nimport { serialization as imgSerialization } from './plugins/image';\nimport { serialization as mathSerialization } from './plugins/math';\nimport { serialization as mediaSerialization } from './plugins/media';\nimport { serialization as listSerialization } from './plugins/list';\nimport { serialization as tableSerialization } from './plugins/table';\nimport { serialization as responseAreaSerialization } from './plugins/respArea';\nimport { Mark, Value } from 'slate';\n\nconst log = debug('@pie-lib:editable-html:serialization');\n\n/**\n * Tags to blocks.\n *\n * @type {Object}\n */\n\nexport const BLOCK_TAGS = {\n div: 'div',\n span: 'span',\n p: 'paragraph',\n blockquote: 'quote',\n pre: 'code',\n h1: 'heading-one',\n h2: 'heading-two',\n h3: 'heading-three',\n h4: 'heading-four',\n h5: 'heading-five',\n h6: 'heading-six'\n};\n\n/**\n * Tags to marks.\n *\n * @type {Object}\n */\n\nconst MARK_TAGS = {\n b: 'bold',\n em: 'italic',\n u: 'underline',\n s: 'strikethrough',\n code: 'code',\n strong: 'bold'\n};\n\nexport const parseStyleString = s => {\n const regex = /([\\w-]*)\\s*:\\s*([^;]*)/g;\n let match;\n const result = {};\n while ((match = regex.exec(s))) {\n result[match[1]] = match[2].trim();\n }\n return result;\n};\n\nexport const getBase64 = file => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => resolve(reader.result);\n reader.onerror = error => reject(error);\n });\n};\n\nexport const reactAttributes = o => toStyleObject(o, { camelize: true, addUnits: false });\n\nconst attributesToMap = el => (acc, attribute) => {\n const value = el.getAttribute(attribute);\n if (value) {\n if (attribute === 'style') {\n const styleString = el.getAttribute(attribute);\n const reactStyleObject = reactAttributes(parseStyleString(styleString));\n acc['style'] = reactStyleObject;\n } else {\n acc[attribute] = el.getAttribute(attribute);\n }\n }\n return acc;\n};\n\nconst attributes = ['border', 'cellpadding', 'cellspacing', 'class', 'style'];\n\n/**\n * Serializer rules.\n *\n * @type {Array}\n */\n\nconst blocks = {\n deserialize(el, next) {\n log('[blocks:deserialize] block: ', el);\n const block = BLOCK_TAGS[el.tagName.toLowerCase()];\n if (!block) return;\n log('[blocks:deserialize] block: ', block);\n\n if (el.childNodes.length === 1) {\n const cn = el.childNodes[0];\n if (cn && cn.tagName && cn.tagName.toLowerCase() === block) {\n log('[we have a child node of the same]...');\n return;\n }\n }\n\n return {\n object: 'block',\n type: block,\n /**\n * Here for rendering styles for all block elements\n */\n data: { attributes: attributes.reduce(attributesToMap(el), {}) },\n nodes: next(el.childNodes)\n };\n },\n serialize: (object, children) => {\n if (object.object !== 'block') return;\n\n const jsonData = object.data.toJSON();\n\n log('[blocks:serialize] object: ', object, children);\n let key;\n\n for (key in BLOCK_TAGS) {\n if (BLOCK_TAGS[key] === object.type) {\n const Tag = key;\n\n return <Tag {...jsonData.attributes}>{children}</Tag>;\n }\n }\n }\n};\n\nconst marks = {\n deserialize(el, next) {\n const mark = MARK_TAGS[el.tagName.toLowerCase()];\n if (!mark) return;\n log('[deserialize] mark: ', mark);\n return {\n object: 'mark',\n type: mark,\n nodes: next(el.childNodes)\n };\n },\n serialize(object, children) {\n if (Mark.isMark(object)) {\n for (var key in MARK_TAGS) {\n if (MARK_TAGS[key] === object.type) {\n const Tag = key;\n return <Tag>{children}</Tag>;\n }\n }\n }\n }\n};\n\nconst findPreviousText = el => {\n if (el.nodeName === '#text') {\n return el;\n }\n\n if (el.previousSibling) {\n return findPreviousText(el.previousSibling);\n }\n\n return null;\n};\n\nexport const TEXT_RULE = {\n deserialize(el) {\n /**\n * This needs to be called on the dom element in order to merge the adjacent text nodes together\n * */\n el.normalize();\n\n if (el.tagName && el.tagName.toLowerCase() === 'br') {\n return {\n object: 'text',\n leaves: [\n {\n object: 'leaf',\n text: '\\n'\n }\n ]\n };\n }\n\n if (el.nodeName === '#text') {\n if (el.nodeValue && el.nodeValue.match(/<!--.*?-->/)) return;\n\n log('[text:deserialize] return text object..');\n return {\n object: 'text',\n leaves: [\n {\n object: 'leaf',\n text: el.nodeValue\n }\n ]\n };\n }\n },\n\n serialize(obj, children) {\n if (obj.object === 'string') {\n return children.split('\\n').reduce((array, text, i) => {\n if (i !== 0) array.push(<br />);\n array.push(text);\n return array;\n }, []);\n }\n }\n};\n\nconst RULES = [\n listSerialization,\n mathSerialization,\n mediaSerialization,\n imgSerialization,\n tableSerialization,\n responseAreaSerialization,\n TEXT_RULE,\n blocks,\n marks\n];\n\nfunction allWhitespace(node) {\n // Use ECMA-262 Edition 3 String and RegExp features\n return !/[^\\t\\n\\r ]/.test(node.textContent);\n}\n\nfunction defaultParseHtml(html) {\n if (typeof DOMParser === 'undefined') {\n throw new Error(\n 'The native `DOMParser` global which the `Html` serializer uses by default is not present in this environment. You must supply the `options.parseHtml` function instead.'\n );\n }\n\n const parsed = new DOMParser().parseFromString(html, 'text/html');\n\n const { body } = parsed;\n var textNodes = document.createTreeWalker(body, NodeFilter.SHOW_TEXT, null, null);\n var n = textNodes.nextNode();\n\n while (n) {\n if (allWhitespace(n) || n.nodeValue === '\\u200B') {\n n.parentNode.removeChild(n);\n }\n n = textNodes.nextNode();\n }\n\n return body;\n}\n\n/** If this lib is used on the server side, we need to bypass using the DOMParser - just put in a stub. */\nconst parseHtml =\n typeof window === 'undefined'\n ? () => ({\n childNodes: []\n })\n : defaultParseHtml;\n\nconst serializer = new Html({\n defaultBlock: 'div',\n rules: RULES,\n parseHtml\n});\n\nconst _extends =\n Object.assign ||\n function(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n/**\n * This is needed in order to override the function that eventually leads\n * to the max iteration of 12, which in most cases it's not enough. The newer versions\n * have a different way to calculate this, but updating to a newer version of slate\n * requires a lot of work fixing other issues. So we just increase the rules by 1000,\n * which means a lot of iterations.\n * Below is the code that calculates the max iterations.\n * var max = schema.stack.plugins.length + schema.rules.length + 1;\n */\nserializer.deserialize = function deserialize(html) {\n const options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const _options$toJSON = options.toJSON;\n const toJSON = _options$toJSON === undefined ? false : _options$toJSON;\n const defaultBlock = this.defaultBlock;\n const parseHtml = this.parseHtml;\n\n const fragment = parseHtml(html);\n const children = Array.from(fragment.childNodes);\n let nodes = this.deserializeElements(children);\n\n // COMPAT: ensure that all top-level inline nodes are wrapped into a block.\n nodes = nodes.reduce(function(memo, node, i, original) {\n if (node.object === 'block') {\n memo.push(node);\n return memo;\n }\n\n if (i > 0 && original[i - 1].object !== 'block') {\n const _block = memo[memo.length - 1];\n\n _block.nodes.push(node);\n return memo;\n }\n\n const block = _extends({ object: 'block', data: {}, isVoid: false }, defaultBlock, {\n nodes: [node]\n });\n\n memo.push(block);\n return memo;\n }, []);\n\n if (nodes.length === 0) {\n nodes = [\n _extends({ object: 'block', data: {}, isVoid: false }, defaultBlock, {\n nodes: [{ object: 'text', leaves: [{ object: 'leaf', text: '', marks: [] }] }]\n })\n ];\n }\n\n const json = {\n object: 'value',\n document: {\n object: 'document',\n data: {},\n nodes: nodes\n },\n schema: {\n rules: []\n }\n };\n\n let i;\n\n for (i = 0; i < 3000; i++) {\n json.schema.rules.push({\n match: { object: 'document' },\n nodes: [{ match: { object: 'block' } }]\n });\n }\n\n const ret = toJSON ? json : Value.fromJSON(json);\n\n if (ret) {\n return ret;\n }\n\n return null;\n};\n\nexport const htmlToValue = html => {\n try {\n return serializer.deserialize(html);\n } catch (e) {\n console.log(\"Couldn't parse html: \", e);\n return {};\n }\n};\n\nexport const valueToHtml = value => serializer.serialize(value);\n\n/**\n *\n * <div><div>a</div></div> -> <div>a</div>\n *\n * <div><div>a</div><div>b</div></div> -> <div>a</div><div>b</div>\n * <div><div>a</div>4444<div>b</div></div> -> <div>a</div>4444<div>b</div>\n */\n"],"mappings":"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"}
package/lib/theme.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme.js"],"names":["primary"],"mappings":";;;;;;AAAO,IAAMA,OAAO,GAAG,SAAhB","sourcesContent":["export const primary = '#304ffe';\n"],"file":"theme.js"}
1
+ {"version":3,"file":"theme.js","names":["primary"],"sources":["../src/theme.js"],"sourcesContent":["export const primary = '#304ffe';\n"],"mappings":";;;;;;AAAO,IAAMA,OAAO,GAAG,SAAhB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/editable-html",
3
- "version": "7.17.4-next.42+985c4382",
3
+ "version": "7.17.4-next.437+7133506c",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "main": "lib/index.js",
@@ -11,9 +11,9 @@
11
11
  "@material-ui/icons": "^3.0.2",
12
12
  "@material-ui/styles": "^3.0.0-alpha.10",
13
13
  "@pie-lib/drag": "^1.1.52",
14
- "@pie-lib/math-rendering": "^2.3.9",
15
- "@pie-lib/math-toolbar": "^1.8.1-next.42+985c4382",
16
- "@pie-lib/render-ui": "^4.12.0",
14
+ "@pie-lib/math-rendering": "^2.3.10-next.437+7133506c",
15
+ "@pie-lib/math-toolbar": "^1.8.1-next.437+7133506c",
16
+ "@pie-lib/render-ui": "^4.12.1-next.437+7133506c",
17
17
  "change-case": "^3.0.2",
18
18
  "classnames": "^2.2.6",
19
19
  "debug": "^4.1.1",
@@ -46,6 +46,6 @@
46
46
  "publishConfig": {
47
47
  "access": "public"
48
48
  },
49
- "gitHead": "985c438271eab63669ced70263c7263e5be7cbd7",
49
+ "gitHead": "7133506c26c247c6be91245284e61ccd14789d4f",
50
50
  "scripts": {}
51
51
  }