@pie-element/drawing-response 10.3.4-next.3 → 11.0.0-beta.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 (83) hide show
  1. package/configure/lib/button.js +23 -47
  2. package/configure/lib/button.js.map +1 -1
  3. package/configure/lib/defaults.js +2 -3
  4. package/configure/lib/defaults.js.map +1 -1
  5. package/configure/lib/image-container.js +238 -327
  6. package/configure/lib/image-container.js.map +1 -1
  7. package/configure/lib/index.js +115 -182
  8. package/configure/lib/index.js.map +1 -1
  9. package/configure/lib/root.js +194 -260
  10. package/configure/lib/root.js.map +1 -1
  11. package/configure/package.json +9 -7
  12. package/configure/src/__tests__/image-container.test.jsx +101 -37
  13. package/configure/src/__tests__/index.test.js +27 -5
  14. package/configure/src/__tests__/root.test.jsx +37 -21
  15. package/configure/src/button.jsx +14 -24
  16. package/configure/src/image-container.jsx +73 -77
  17. package/configure/src/index.js +12 -2
  18. package/configure/src/root.jsx +24 -25
  19. package/controller/lib/defaults.js +2 -3
  20. package/controller/lib/defaults.js.map +1 -1
  21. package/controller/lib/index.js +39 -65
  22. package/controller/lib/index.js.map +1 -1
  23. package/controller/package.json +1 -1
  24. package/lib/drawing-response/button.js +35 -60
  25. package/lib/drawing-response/button.js.map +1 -1
  26. package/lib/drawing-response/constants.js +2 -3
  27. package/lib/drawing-response/constants.js.map +1 -1
  28. package/lib/drawing-response/container.js +270 -351
  29. package/lib/drawing-response/container.js.map +1 -1
  30. package/lib/drawing-response/drawable-circle.js +65 -104
  31. package/lib/drawing-response/drawable-circle.js.map +1 -1
  32. package/lib/drawing-response/drawable-eraser.js +50 -86
  33. package/lib/drawing-response/drawable-eraser.js.map +1 -1
  34. package/lib/drawing-response/drawable-free-path.js +56 -97
  35. package/lib/drawing-response/drawable-free-path.js.map +1 -1
  36. package/lib/drawing-response/drawable-helper.js +16 -28
  37. package/lib/drawing-response/drawable-helper.js.map +1 -1
  38. package/lib/drawing-response/drawable-image.js +30 -49
  39. package/lib/drawing-response/drawable-image.js.map +1 -1
  40. package/lib/drawing-response/drawable-line.js +60 -99
  41. package/lib/drawing-response/drawable-line.js.map +1 -1
  42. package/lib/drawing-response/drawable-main.js +273 -345
  43. package/lib/drawing-response/drawable-main.js.map +1 -1
  44. package/lib/drawing-response/drawable-palette.js +123 -166
  45. package/lib/drawing-response/drawable-palette.js.map +1 -1
  46. package/lib/drawing-response/drawable-rectangle.js +65 -104
  47. package/lib/drawing-response/drawable-rectangle.js.map +1 -1
  48. package/lib/drawing-response/drawable-text.js +201 -313
  49. package/lib/drawing-response/drawable-text.js.map +1 -1
  50. package/lib/drawing-response/drawable-transformer.js +36 -79
  51. package/lib/drawing-response/drawable-transformer.js.map +1 -1
  52. package/lib/drawing-response/factory.js +6 -19
  53. package/lib/drawing-response/factory.js.map +1 -1
  54. package/lib/drawing-response/icon.js +8 -24
  55. package/lib/drawing-response/icon.js.map +1 -1
  56. package/lib/drawing-response/index.js +74 -116
  57. package/lib/drawing-response/index.js.map +1 -1
  58. package/lib/index.js +51 -102
  59. package/lib/index.js.map +1 -1
  60. package/package.json +13 -12
  61. package/src/__tests__/drawing-index-test.jsx +90 -27
  62. package/src/drawing-response/__tests__/container.test.jsx +56 -36
  63. package/src/drawing-response/__tests__/drawing-main.test.jsx +158 -139
  64. package/src/drawing-response/button.jsx +23 -34
  65. package/src/drawing-response/container.jsx +39 -40
  66. package/src/drawing-response/drawable-image.jsx +17 -20
  67. package/src/drawing-response/drawable-main.jsx +67 -60
  68. package/src/drawing-response/drawable-palette.jsx +48 -54
  69. package/src/drawing-response/drawable-text.jsx +26 -38
  70. package/src/drawing-response/index.jsx +21 -20
  71. package/src/index.js +17 -2
  72. package/configure/src/__tests__/__snapshots__/image-container.test.jsx.snap +0 -45
  73. package/configure/src/__tests__/__snapshots__/root.test.jsx.snap +0 -185
  74. package/esm/configure.js +0 -16151
  75. package/esm/configure.js.map +0 -1
  76. package/esm/controller.js +0 -814
  77. package/esm/controller.js.map +0 -1
  78. package/esm/element.js +0 -54130
  79. package/esm/element.js.map +0 -1
  80. package/esm/package.json +0 -3
  81. package/src/__tests__/__snapshots__/drawing-index-test.jsx.snap +0 -23
  82. package/src/drawing-response/__tests__/__snapshots__/container.test.jsx.snap +0 -396
  83. package/src/drawing-response/__tests__/__snapshots__/drawing-main.test.jsx.snap +0 -247
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/drawing-response/drawable-main.jsx"],"names":["translator","Translator","DrawableMain","props","onSessionChange","session","TextEntry","drawableDimensions","drawables","state","newSession","width","map","d","toJson","texts","all","text","id","attrs","value","setState","isOver","e","document","body","style","overflow","newDrawable","textIsSelected","toolActive","fillColor","outlineColor","scale","length","target","getStage","getPointerPosition","x","y","type","startx","starty","createdAt","Date","drawableToAdd","registerMovement","push","handleSessionChange","bind","updatedNewDrawable","newDrawables","allData","sort","a","b","lastElement","pop","updatedAt","nextProps","currentDrawables","drawablesString","JSON","stringify","sessionDrawableString","drawable","drawableArray","currentTexts","setAll","classes","disabled","imageDimensions","imageUrl","paintColor","backgroundImageEnabled","language","draggable","paint","drawableProps","forceUpdate","toggleTextSelected","stage","onMouseOverElement","onMouseOutElement","listeners","onMouseUp","handleMouseUp","onTouchEnd","onMouseMove","handleMouseMove","onTouchMove","onMouseDown","handleMouseDown","onTouchStart","imageHeight","height","imageWidth","wrapper","undoControls","handleUndo","t","lng","handleClearAll","base","renderTextareas","ref","active","layer","key","render","React","Component","styles","display","flexWrap","justifyContent","position","left","touchAction","top","cursor","marginTop","marginRight","propTypes","PropTypes","object","isRequired","bool","string","func","number"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport omit from 'lodash/omit';\nimport cloneDeep from 'lodash/cloneDeep';\nimport isEqual from 'lodash/isEqual';\nimport classnames from 'classnames';\nimport { Layer, Stage } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\nimport ImageBackground from './drawable-image';\nimport Button from './button';\nimport factory from './factory';\n\nexport class DrawableMain extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n drawables: [],\n newDrawable: [],\n textIsSelected: false,\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.session) {\n const { TextEntry } = nextProps;\n const { drawables: currentDrawables } = this.state;\n\n if (nextProps.session.drawables) {\n const newDrawables = cloneDeep(nextProps.session.drawables);\n const drawablesString = JSON.stringify(currentDrawables);\n const sessionDrawableString = JSON.stringify((newDrawables || []).map((drawable) => omit(drawable, 'type')));\n\n if (drawablesString !== sessionDrawableString) {\n const drawableArray = nextProps.session.drawables;\n\n this.setState({\n drawables: drawableArray.map((drawable) => factory(drawable.type, drawable)),\n });\n }\n\n const currentTexts = TextEntry.all.map((text) => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] && TextEntry[`text_${text.id}`].attrs),\n value: TextEntry[`textarea_${text.id}`] && TextEntry[`textarea_${text.id}`].value,\n }));\n\n if (!isEqual(currentTexts, nextProps.session.texts)) {\n TextEntry.setAll(nextProps.session.texts || []);\n }\n }\n } else {\n this.handleSessionChange();\n }\n }\n\n handleSessionChange = () => {\n const { onSessionChange, session, TextEntry, drawableDimensions } = this.props;\n const { drawables } = this.state;\n\n const newSession = {\n width: drawableDimensions.width,\n drawables: drawables.map((d) => d.toJson()),\n texts: TextEntry.all.map((text) => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] && TextEntry[`text_${text.id}`].attrs),\n value: TextEntry[`textarea_${text.id}`] && TextEntry[`textarea_${text.id}`].value,\n })),\n };\n\n if (!isEqual(newSession, session)) {\n onSessionChange({\n ...session,\n ...newSession,\n });\n }\n };\n\n onMouseOverElement = () => this.setState({ isOver: true });\n\n onMouseOutElement = () => this.setState({ isOver: false });\n\n handleMouseDown = (e) => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'hidden';\n\n const { newDrawable, textIsSelected } = this.state;\n const { toolActive, fillColor, outlineColor, scale } = this.props;\n\n if (newDrawable.length === 0 && !textIsSelected) {\n const { x, y } = e.target.getStage().getPointerPosition();\n\n const newDrawable = factory(toolActive.type, {\n startx: x / scale,\n starty: y / scale,\n fillColor,\n outlineColor,\n createdAt: new Date(),\n });\n\n this.setState({\n newDrawable: [newDrawable],\n });\n }\n };\n\n handleMouseUp = (e) => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'initial';\n\n const { newDrawable, drawables } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const { x, y } = e.target.getStage().getPointerPosition();\n const drawableToAdd = newDrawable[0];\n\n drawableToAdd.registerMovement(x / scale, y / scale);\n drawables.push(drawableToAdd);\n\n this.setState(\n {\n newDrawable: [],\n drawables,\n },\n this.handleSessionChange.bind(this, drawableToAdd),\n );\n }\n };\n\n handleMouseMove = (e) => {\n const { newDrawable } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const { x, y } = e.target.getStage().getPointerPosition();\n const updatedNewDrawable = newDrawable[0];\n\n updatedNewDrawable.registerMovement(x / scale, y / scale);\n\n this.setState({\n newDrawable: [updatedNewDrawable],\n });\n }\n };\n\n handleUndo = () => {\n const { drawables } = this.state;\n const { TextEntry } = this.props;\n\n const newDrawables = [...drawables];\n const allData = [...drawables, ...TextEntry.all];\n\n allData.sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt));\n const lastElement = allData[allData.length - 1];\n\n if (lastElement && lastElement.type === 'text-entry') {\n TextEntry.all.pop();\n this.setState({ updatedAt: new Date() }, this.handleSessionChange);\n } else {\n newDrawables.pop();\n this.setState({ drawables: newDrawables }, this.handleSessionChange);\n }\n };\n\n handleClearAll = () => {\n const { TextEntry } = this.props;\n\n TextEntry.all = [];\n this.setState({ drawables: [], updatedAt: new Date() }, this.handleSessionChange);\n };\n\n toggleTextSelected = (textIsSelected) => this.setState({ textIsSelected });\n\n render() {\n const {\n classes,\n disabled,\n drawableDimensions,\n fillColor,\n imageDimensions,\n imageUrl,\n paintColor,\n outlineColor,\n TextEntry,\n backgroundImageEnabled = true,\n toolActive: { type },\n scale,\n language,\n } = this.props;\n const { isOver, newDrawable } = this.state;\n\n const draggable = type === 'Select';\n const paint = type === 'PaintBucket';\n const drawables = [...this.state.drawables, ...this.state.newDrawable];\n\n const drawableProps = {\n draggable: draggable && !disabled,\n disabled,\n paint,\n fillColor,\n forceUpdate: () => this.setState({ updatedAt: new Date() }),\n paintColor,\n outlineColor,\n toggleTextSelected: this.toggleTextSelected,\n handleSessionChange: this.handleSessionChange,\n stage: this.stage,\n onMouseOverElement: this.onMouseOverElement,\n onMouseOutElement: this.onMouseOutElement,\n scale,\n };\n\n let listeners = {};\n\n if (!disabled) {\n listeners = {\n onMouseUp: this.handleMouseUp,\n onTouchEnd: this.handleMouseUp,\n onMouseMove: this.handleMouseMove,\n onTouchMove: this.handleMouseMove,\n };\n\n if (!draggable) {\n listeners.onMouseDown = this.handleMouseDown;\n listeners.onTouchStart = this.handleMouseDown;\n }\n }\n\n const imageHeight = imageDimensions?.height * scale;\n const imageWidth = imageDimensions?.width * scale;\n\n return (\n <div className={classes.wrapper}>\n <div className={classes.undoControls}>\n <Button\n disabled={disabled}\n onClick={this.handleUndo}\n label={translator.t('common:undo', { lng: language })}\n />\n <Button\n disabled={disabled}\n onClick={this.handleClearAll}\n label={translator.t('common:clearAll', { lng: language })}\n />\n </div>\n <div className={classes.base}>\n {backgroundImageEnabled && imageUrl && (\n <ImageBackground dimensions={{ height: imageHeight, width: imageWidth }} url={imageUrl} />\n )}\n\n {TextEntry.renderTextareas()}\n\n <Stage\n scaleX={scale}\n scaleY={scale}\n ref={(ref) => {\n this.stage = ref;\n }}\n className={classnames(classes.stage, {\n [classes.active]: draggable && (isOver || (newDrawable && newDrawable.length === 1)),\n })}\n height={drawableDimensions.height}\n width={drawableDimensions.width}\n {...listeners}\n >\n <Layer\n ref={(ref) => {\n this.layer = ref;\n }}\n >\n {drawables.map((drawable, key) => drawable.render({ ...drawableProps, key }))}\n {/* Text Entry is a special case */}\n {TextEntry.render(drawableProps)}\n </Layer>\n </Stage>\n </div>\n </div>\n );\n }\n}\n\nconst styles = () => ({\n wrapper: {\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'flex-end',\n },\n base: {\n position: 'relative',\n width: '100%',\n },\n stage: {\n left: 0,\n position: 'absolute',\n touchAction: 'none',\n top: 0,\n },\n active: {\n cursor: 'pointer',\n },\n undoControls: {\n marginTop: -43,\n marginRight: 10,\n position: 'absolute',\n },\n});\n\nDrawableMain.propTypes = {\n classes: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n drawableDimensions: PropTypes.object.isRequired,\n imageDimensions: PropTypes.object.isRequired,\n fillColor: PropTypes.string.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n paintColor: PropTypes.string.isRequired,\n outlineColor: PropTypes.string.isRequired,\n imageUrl: PropTypes.string.isRequired,\n TextEntry: PropTypes.object.isRequired,\n toolActive: PropTypes.object.isRequired,\n session: PropTypes.object.isRequired,\n backgroundImageEnabled: PropTypes.bool.isRequired,\n scale: PropTypes.number.isRequired,\n language: PropTypes.string,\n};\n\nexport default withStyles(styles)(DrawableMain);\n"],"file":"drawable-main.js"}
1
+ {"version":3,"file":"drawable-main.js","names":["_react","_interopRequireDefault","require","_propTypes","_omit","_cloneDeep","_isEqual","_reactKonva","_styles","_translator","_drawableImage","_button","_factory","translator","Translator","Wrapper","styled","display","flexWrap","justifyContent","Base","position","width","UndoControls","marginTop","marginRight","DrawableMain","React","Component","constructor","props","_defineProperty2","default","onSessionChange","session","TextEntry","drawableDimensions","drawables","state","newSession","map","d","toJson","texts","all","text","id","attrs","value","isEqual","setState","isOver","e","document","body","style","overflow","newDrawable","textIsSelected","toolActive","fillColor","outlineColor","scale","length","stage","target","getStage","x","y","getPointerPosition","factory","type","startx","starty","createdAt","Date","drawableToAdd","registerMovement","push","handleSessionChange","bind","updatedNewDrawable","newDrawables","allData","sort","a","b","lastElement","pop","updatedAt","layer","componentWillUnmount","UNSAFE_componentWillReceiveProps","nextProps","currentDrawables","cloneDeep","drawablesString","JSON","stringify","sessionDrawableString","drawable","omit","drawableArray","currentTexts","setAll","render","disabled","imageDimensions","imageUrl","paintColor","backgroundImageEnabled","language","draggable","paint","drawableProps","forceUpdate","toggleTextSelected","onMouseOverElement","onMouseOutElement","listeners","onMouseUp","handleMouseUp","onTouchEnd","onMouseMove","handleMouseMove","onTouchMove","onMouseDown","handleMouseDown","onTouchStart","imageHeight","height","imageWidth","createElement","onClick","handleUndo","label","t","lng","handleClearAll","dimensions","url","renderTextareas","left","top","touchAction","cursor","Stage","_extends2","key","scaleX","scaleY","ref","Layer","exports","propTypes","PropTypes","bool","object","isRequired","string","func","number","_default"],"sources":["../../src/drawing-response/drawable-main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport omit from 'lodash/omit';\nimport cloneDeep from 'lodash/cloneDeep';\nimport isEqual from 'lodash/isEqual';\nimport { Layer, Stage } from 'react-konva';\nimport { styled } from '@mui/material/styles';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\nimport ImageBackground from './drawable-image';\nimport Button from './button';\nimport factory from './factory';\n\nconst Wrapper = styled('div')({\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'flex-end',\n});\n\nconst Base = styled('div')({\n position: 'relative',\n width: '100%',\n});\n\nconst UndoControls = styled('div')({\n marginTop: -43,\n marginRight: 10,\n position: 'absolute',\n});\n\nexport class DrawableMain extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n drawables: [],\n newDrawable: [],\n textIsSelected: false,\n };\n this.stage = null;\n this.layer = null;\n }\n\n componentWillUnmount() {\n // Clean up refs to prevent React Konva errors\n this.stage = null;\n this.layer = null;\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.session) {\n const { TextEntry } = nextProps;\n const { drawables: currentDrawables } = this.state;\n\n if (nextProps.session.drawables) {\n const newDrawables = cloneDeep(nextProps.session.drawables);\n const drawablesString = JSON.stringify(currentDrawables);\n const sessionDrawableString = JSON.stringify((newDrawables || []).map((drawable) => omit(drawable, 'type')));\n\n if (drawablesString !== sessionDrawableString) {\n const drawableArray = nextProps.session.drawables;\n\n this.setState({\n drawables: drawableArray.map((drawable) => factory(drawable.type, drawable)),\n });\n }\n\n const currentTexts = TextEntry.all.map((text) => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] && TextEntry[`text_${text.id}`].attrs),\n value: TextEntry[`textarea_${text.id}`] && TextEntry[`textarea_${text.id}`].value,\n }));\n\n if (!isEqual(currentTexts, nextProps.session.texts)) {\n TextEntry.setAll(nextProps.session.texts || []);\n }\n }\n } else {\n this.handleSessionChange();\n }\n }\n\n handleSessionChange = () => {\n const { onSessionChange, session, TextEntry, drawableDimensions } = this.props;\n const { drawables } = this.state;\n\n const newSession = {\n width: drawableDimensions.width,\n drawables: drawables.map((d) => d.toJson()),\n texts: TextEntry.all.map((text) => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] && TextEntry[`text_${text.id}`].attrs),\n value: TextEntry[`textarea_${text.id}`] && TextEntry[`textarea_${text.id}`].value,\n })),\n };\n\n if (!isEqual(newSession, session)) {\n onSessionChange({\n ...session,\n ...newSession,\n });\n }\n };\n\n onMouseOverElement = () => this.setState({ isOver: true });\n\n onMouseOutElement = () => this.setState({ isOver: false });\n\n handleMouseDown = (e) => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'hidden';\n\n const { newDrawable, textIsSelected } = this.state;\n const { toolActive, fillColor, outlineColor, scale } = this.props;\n\n if (newDrawable.length === 0 && !textIsSelected) {\n const stage = e.target.getStage();\n if (!stage) return;\n\n const { x, y } = stage.getPointerPosition();\n\n const newDrawable = factory(toolActive.type, {\n startx: x / scale,\n starty: y / scale,\n fillColor,\n outlineColor,\n createdAt: new Date(),\n });\n\n this.setState({\n newDrawable: [newDrawable],\n });\n }\n };\n\n handleMouseUp = (e) => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'initial';\n\n const { newDrawable, drawables } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const stage = e.target.getStage();\n if (!stage) return;\n\n const { x, y } = stage.getPointerPosition();\n const drawableToAdd = newDrawable[0];\n\n drawableToAdd.registerMovement(x / scale, y / scale);\n drawables.push(drawableToAdd);\n\n this.setState(\n {\n newDrawable: [],\n drawables,\n },\n this.handleSessionChange.bind(this, drawableToAdd),\n );\n }\n };\n\n handleMouseMove = (e) => {\n const { newDrawable } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const stage = e.target.getStage();\n if (!stage) return;\n\n const { x, y } = stage.getPointerPosition();\n const updatedNewDrawable = newDrawable[0];\n\n updatedNewDrawable.registerMovement(x / scale, y / scale);\n\n this.setState({\n newDrawable: [updatedNewDrawable],\n });\n }\n };\n\n handleUndo = () => {\n const { drawables } = this.state;\n const { TextEntry } = this.props;\n\n const newDrawables = [...drawables];\n const allData = [...drawables, ...TextEntry.all];\n\n allData.sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt));\n const lastElement = allData[allData.length - 1];\n\n if (lastElement && lastElement.type === 'text-entry') {\n TextEntry.all.pop();\n this.setState({ updatedAt: new Date() }, this.handleSessionChange);\n } else {\n newDrawables.pop();\n this.setState({ drawables: newDrawables }, this.handleSessionChange);\n }\n };\n\n handleClearAll = () => {\n const { TextEntry } = this.props;\n\n TextEntry.all = [];\n this.setState({ drawables: [], updatedAt: new Date() }, this.handleSessionChange);\n };\n\n toggleTextSelected = (textIsSelected) => this.setState({ textIsSelected });\n\n render() {\n const {\n disabled,\n drawableDimensions,\n fillColor,\n imageDimensions,\n imageUrl,\n paintColor,\n outlineColor,\n TextEntry,\n backgroundImageEnabled = true,\n toolActive: { type },\n scale,\n language,\n } = this.props;\n const { isOver, newDrawable } = this.state;\n\n const draggable = type === 'Select';\n const paint = type === 'PaintBucket';\n const drawables = [...this.state.drawables, ...this.state.newDrawable];\n\n const drawableProps = {\n draggable: draggable && !disabled,\n disabled,\n paint,\n fillColor,\n forceUpdate: () => this.setState({ updatedAt: new Date() }),\n paintColor,\n outlineColor,\n toggleTextSelected: this.toggleTextSelected,\n handleSessionChange: this.handleSessionChange,\n stage: this.stage,\n onMouseOverElement: this.onMouseOverElement,\n onMouseOutElement: this.onMouseOutElement,\n scale,\n };\n\n let listeners = {};\n\n if (!disabled) {\n listeners = {\n onMouseUp: this.handleMouseUp,\n onTouchEnd: this.handleMouseUp,\n onMouseMove: this.handleMouseMove,\n onTouchMove: this.handleMouseMove,\n };\n\n if (!draggable) {\n listeners.onMouseDown = this.handleMouseDown;\n listeners.onTouchStart = this.handleMouseDown;\n }\n }\n\n const imageHeight = imageDimensions?.height * scale;\n const imageWidth = imageDimensions?.width * scale;\n\n return (\n <Wrapper>\n <UndoControls>\n <Button\n disabled={disabled}\n onClick={this.handleUndo}\n label={translator.t('common:undo', { lng: language })}\n />\n <Button\n disabled={disabled}\n onClick={this.handleClearAll}\n label={translator.t('common:clearAll', { lng: language })}\n />\n </UndoControls>\n <Base>\n {backgroundImageEnabled && imageUrl && (\n <ImageBackground dimensions={{ height: imageHeight, width: imageWidth }} url={imageUrl} />\n )}\n\n {TextEntry.renderTextareas()}\n\n {/* Wrap Stage in a styled div instead of styling Stage directly */}\n <div\n style={{\n position: 'absolute',\n left: 0,\n top: 0,\n touchAction: 'none',\n cursor: draggable && (isOver || newDrawable.length === 1) ? 'pointer' : 'default',\n }}\n >\n <Stage\n key=\"drawing-stage\"\n scaleX={scale}\n scaleY={scale}\n ref={(ref) => (this.stage = ref)}\n height={drawableDimensions.height}\n width={drawableDimensions.width}\n {...listeners}\n >\n <Layer ref={(ref) => (this.layer = ref)}>\n {drawables.map((drawable, key) => drawable.render({ ...drawableProps, key }))}\n {TextEntry.render(drawableProps)}\n </Layer>\n </Stage>\n </div>\n </Base>\n </Wrapper>\n );\n }\n}\n\nDrawableMain.propTypes = {\n disabled: PropTypes.bool,\n drawableDimensions: PropTypes.object.isRequired,\n imageDimensions: PropTypes.object.isRequired,\n fillColor: PropTypes.string.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n paintColor: PropTypes.string.isRequired,\n outlineColor: PropTypes.string.isRequired,\n imageUrl: PropTypes.string.isRequired,\n TextEntry: PropTypes.object.isRequired,\n toolActive: PropTypes.object.isRequired,\n session: PropTypes.object.isRequired,\n backgroundImageEnabled: PropTypes.bool.isRequired,\n scale: PropTypes.number.isRequired,\n language: PropTypes.string,\n};\n\nexport default DrawableMain;\n"],"mappings":"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","ignoreList":[]}
@@ -1,183 +1,140 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports["default"] = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
7
+ exports.default = void 0;
22
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
9
  var _react = _interopRequireDefault(require("react"));
25
-
26
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
11
  var _renderUi = require("@pie-lib/render-ui");
29
-
30
- var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
31
-
32
- var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
33
-
34
- var _styles = require("@material-ui/core/styles");
35
-
36
- var _classnames2 = _interopRequireDefault(require("classnames"));
37
-
12
+ var _Select = _interopRequireDefault(require("@mui/material/Select"));
13
+ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
14
+ var _styles = require("@mui/material/styles");
38
15
  var _translator = _interopRequireDefault(require("@pie-lib/translator"));
16
+ const {
17
+ translator
18
+ } = _translator.default;
19
+ const BaseContainer = (0, _styles.styled)('div')(({
20
+ theme
21
+ }) => ({
22
+ marginTop: theme.spacing(2),
23
+ display: 'flex'
24
+ }));
25
+ const StyledInputContainer = (0, _styles.styled)(_renderUi.InputContainer)({
26
+ flex: 1,
27
+ fontSize: 'inherit',
28
+ width: '90%'
29
+ });
30
+ const StyledMenuItem = (0, _styles.styled)(_MenuItem.default)(({
31
+ theme,
32
+ isBlackColor
33
+ }) => ({
34
+ borderRadius: '2px',
35
+ fontSize: 'inherit',
36
+ height: '22px',
37
+ marginLeft: theme.spacing(2),
38
+ marginRight: theme.spacing(2),
39
+ marginTop: theme.spacing(2),
40
+ ...(isBlackColor && {
41
+ color: theme.palette.background.paper
42
+ })
43
+ }));
44
+ const StyledSelect = (0, _styles.styled)(_Select.default)({
45
+ fontSize: 'inherit',
46
+ transform: 'translate(0%, 40%)'
47
+ });
39
48
 
40
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
-
42
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
-
44
- var translator = _translator["default"].translator; // TODO: Change Palette so will render inputs and colors dynamically
45
-
46
- var Palette = /*#__PURE__*/function (_React$Component) {
47
- (0, _inherits2["default"])(Palette, _React$Component);
48
-
49
- var _super = _createSuper(Palette);
50
-
51
- function Palette() {
52
- var _this;
53
-
54
- (0, _classCallCheck2["default"])(this, Palette);
55
-
56
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
57
- args[_key] = arguments[_key];
58
- }
59
-
60
- _this = _super.call.apply(_super, [this].concat(args));
61
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (name) {
62
- return function (event) {
63
- var value = event.target.value;
64
- var _this$props = _this.props,
65
- onFillColorChange = _this$props.onFillColorChange,
66
- onOutlineColorChange = _this$props.onOutlineColorChange,
67
- onPaintColorChange = _this$props.onPaintColorChange;
68
-
69
- if (name === 'fill') {
70
- onFillColorChange(value);
71
- } else if (name === 'outline') {
72
- onOutlineColorChange(value);
73
- } else {
74
- onPaintColorChange(value);
75
- }
76
- };
49
+ // TODO: Change Palette so will render inputs and colors dynamically
50
+ class Palette extends _react.default.Component {
51
+ constructor(...args) {
52
+ super(...args);
53
+ (0, _defineProperty2.default)(this, "onChange", name => event => {
54
+ const {
55
+ value
56
+ } = event.target;
57
+ const {
58
+ onFillColorChange,
59
+ onOutlineColorChange,
60
+ onPaintColorChange
61
+ } = this.props;
62
+ if (name === 'fill') {
63
+ onFillColorChange(value);
64
+ } else if (name === 'outline') {
65
+ onOutlineColorChange(value);
66
+ } else {
67
+ onPaintColorChange(value);
68
+ }
77
69
  });
78
- return _this;
79
70
  }
80
-
81
- (0, _createClass2["default"])(Palette, [{
82
- key: "render",
83
- value: function render() {
84
- var _this$props2 = this.props,
85
- classes = _this$props2.classes,
86
- fillColor = _this$props2.fillColor,
87
- outlineColor = _this$props2.outlineColor,
88
- fillList = _this$props2.fillList,
89
- outlineList = _this$props2.outlineList,
90
- language = _this$props2.language;
91
- return /*#__PURE__*/_react["default"].createElement("div", {
92
- className: classes.base
93
- }, /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
94
- label: translator.t('drawingResponse.fillColor', {
95
- lng: language
96
- }),
97
- className: classes.input
98
- }, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
99
- className: classes.select,
100
- onChange: this.onChange('fill'),
101
- value: fillColor
102
- }, fillList.map(function (_ref) {
103
- var value = _ref.value,
104
- label = _ref.label;
105
- return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
106
- key: value,
107
- value: value,
108
- className: (0, _classnames2["default"])(classes.item, (0, _defineProperty2["default"])({}, classes.blackColorItem, value === 'black')),
109
- style: {
110
- backgroundColor: value
111
- }
112
- }, label);
113
- }))), /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
114
- label: translator.t('drawingResponse.outlineColor', {
115
- lng: language
116
- }),
117
- className: classes.input
118
- }, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
119
- className: classes.select,
120
- onChange: this.onChange('outline'),
121
- value: outlineColor
122
- }, outlineList.map(function (_ref2) {
123
- var value = _ref2.value,
124
- label = _ref2.label;
125
- return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
126
- key: value,
127
- value: value,
128
- className: classes.item,
129
- style: {
130
- border: "2px solid ".concat(value)
131
- }
132
- }, label);
133
- }))));
134
- }
135
- }]);
136
- return Palette;
137
- }(_react["default"].Component);
138
-
139
- var styles = function styles(theme) {
140
- return {
141
- base: {
142
- marginTop: theme.spacing.unit * 2,
143
- display: 'flex'
144
- },
145
- input: {
146
- flex: 1,
147
- fontSize: 'inherit',
148
- width: '90%'
149
- },
150
- item: {
151
- borderRadius: '2px',
152
- fontSize: 'inherit',
153
- height: '22px',
154
- marginLeft: theme.spacing.unit * 2,
155
- marginRight: theme.spacing.unit * 2,
156
- marginTop: theme.spacing.unit * 2
157
- },
158
- blackColorItem: {
159
- color: theme.palette.background.paper
160
- },
161
- select: {
162
- fontSize: 'inherit',
163
- transform: 'translate(0%, 40%)'
164
- }
165
- };
166
- };
167
-
71
+ render() {
72
+ const {
73
+ fillColor,
74
+ outlineColor,
75
+ fillList,
76
+ outlineList,
77
+ language
78
+ } = this.props;
79
+ return /*#__PURE__*/_react.default.createElement(BaseContainer, null, /*#__PURE__*/_react.default.createElement(StyledInputContainer, {
80
+ label: translator.t('drawingResponse.fillColor', {
81
+ lng: language
82
+ })
83
+ }, /*#__PURE__*/_react.default.createElement(StyledSelect, {
84
+ onChange: this.onChange('fill'),
85
+ value: fillColor,
86
+ variant: "standard",
87
+ MenuProps: {
88
+ transitionDuration: {
89
+ enter: 225,
90
+ exit: 195
91
+ }
92
+ }
93
+ }, fillList.map(({
94
+ value,
95
+ label
96
+ }) => /*#__PURE__*/_react.default.createElement(StyledMenuItem, {
97
+ key: value,
98
+ value: value,
99
+ isBlackColor: value === 'black',
100
+ style: {
101
+ backgroundColor: value
102
+ }
103
+ }, label)))), /*#__PURE__*/_react.default.createElement(StyledInputContainer, {
104
+ label: translator.t('drawingResponse.outlineColor', {
105
+ lng: language
106
+ })
107
+ }, /*#__PURE__*/_react.default.createElement(StyledSelect, {
108
+ onChange: this.onChange('outline'),
109
+ value: outlineColor,
110
+ variant: "standard",
111
+ MenuProps: {
112
+ transitionDuration: {
113
+ enter: 225,
114
+ exit: 195
115
+ }
116
+ }
117
+ }, outlineList.map(({
118
+ value,
119
+ label
120
+ }) => /*#__PURE__*/_react.default.createElement(StyledMenuItem, {
121
+ key: value,
122
+ value: value,
123
+ style: {
124
+ border: `2px solid ${value}`
125
+ }
126
+ }, label)))));
127
+ }
128
+ }
168
129
  Palette.propTypes = {
169
- classes: _propTypes["default"].object.isRequired,
170
- fillColor: _propTypes["default"].string.isRequired,
171
- fillList: _propTypes["default"].array.isRequired,
172
- onFillColorChange: _propTypes["default"].func.isRequired,
173
- onOutlineColorChange: _propTypes["default"].func.isRequired,
174
- onPaintColorChange: _propTypes["default"].func.isRequired,
175
- outlineColor: _propTypes["default"].string.isRequired,
176
- outlineList: _propTypes["default"].array.isRequired,
177
- language: _propTypes["default"].string
130
+ fillColor: _propTypes.default.string.isRequired,
131
+ fillList: _propTypes.default.array.isRequired,
132
+ onFillColorChange: _propTypes.default.func.isRequired,
133
+ onOutlineColorChange: _propTypes.default.func.isRequired,
134
+ onPaintColorChange: _propTypes.default.func.isRequired,
135
+ outlineColor: _propTypes.default.string.isRequired,
136
+ outlineList: _propTypes.default.array.isRequired,
137
+ language: _propTypes.default.string
178
138
  };
179
-
180
- var _default = (0, _styles.withStyles)(styles)(Palette);
181
-
182
- exports["default"] = _default;
139
+ var _default = exports.default = Palette;
183
140
  //# sourceMappingURL=drawable-palette.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/drawing-response/drawable-palette.jsx"],"names":["translator","Translator","Palette","name","event","value","target","props","onFillColorChange","onOutlineColorChange","onPaintColorChange","classes","fillColor","outlineColor","fillList","outlineList","language","base","t","lng","input","select","onChange","map","label","item","blackColorItem","backgroundColor","border","React","Component","styles","theme","marginTop","spacing","unit","display","flex","fontSize","width","borderRadius","height","marginLeft","marginRight","color","palette","background","paper","transform","propTypes","PropTypes","object","isRequired","string","array","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\n// TODO: Change Palette so will render inputs and colors dynamically\nclass Palette extends React.Component {\n onChange = (name) => (event) => {\n const { value } = event.target;\n const { onFillColorChange, onOutlineColorChange, onPaintColorChange } = this.props;\n\n if (name === 'fill') {\n onFillColorChange(value);\n } else if (name === 'outline') {\n onOutlineColorChange(value);\n } else {\n onPaintColorChange(value);\n }\n };\n\n render() {\n const { classes, fillColor, outlineColor, fillList, outlineList, language } = this.props;\n\n return (\n <div className={classes.base}>\n <InputContainer label={translator.t('drawingResponse.fillColor', { lng: language })} className={classes.input}>\n <Select className={classes.select} onChange={this.onChange('fill')} value={fillColor}>\n {fillList.map(({ value, label }) => (\n <MenuItem\n key={value}\n value={value}\n className={classnames(classes.item, {\n [classes.blackColorItem]: value === 'black',\n })}\n style={{ backgroundColor: value }}\n >\n {label}\n </MenuItem>\n ))}\n </Select>\n </InputContainer>\n\n <InputContainer\n label={translator.t('drawingResponse.outlineColor', { lng: language })}\n className={classes.input}\n >\n <Select className={classes.select} onChange={this.onChange('outline')} value={outlineColor}>\n {outlineList.map(({ value, label }) => (\n <MenuItem key={value} value={value} className={classes.item} style={{ border: `2px solid ${value}` }}>\n {label}\n </MenuItem>\n ))}\n </Select>\n </InputContainer>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n base: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n },\n input: {\n flex: 1,\n fontSize: 'inherit',\n width: '90%',\n },\n item: {\n borderRadius: '2px',\n fontSize: 'inherit',\n height: '22px',\n marginLeft: theme.spacing.unit * 2,\n marginRight: theme.spacing.unit * 2,\n marginTop: theme.spacing.unit * 2,\n },\n blackColorItem: {\n color: theme.palette.background.paper,\n },\n select: {\n fontSize: 'inherit',\n transform: 'translate(0%, 40%)',\n },\n});\n\nPalette.propTypes = {\n classes: PropTypes.object.isRequired,\n fillColor: PropTypes.string.isRequired,\n fillList: PropTypes.array.isRequired,\n onFillColorChange: PropTypes.func.isRequired,\n onOutlineColorChange: PropTypes.func.isRequired,\n onPaintColorChange: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n outlineList: PropTypes.array.isRequired,\n language: PropTypes.string,\n};\n\nexport default withStyles(styles)(Palette);\n"],"file":"drawable-palette.js"}
1
+ {"version":3,"file":"drawable-palette.js","names":["_react","_interopRequireDefault","require","_propTypes","_renderUi","_Select","_MenuItem","_styles","_translator","translator","Translator","BaseContainer","styled","theme","marginTop","spacing","display","StyledInputContainer","InputContainer","flex","fontSize","width","StyledMenuItem","MenuItem","isBlackColor","borderRadius","height","marginLeft","marginRight","color","palette","background","paper","StyledSelect","Select","transform","Palette","React","Component","constructor","args","_defineProperty2","default","name","event","value","target","onFillColorChange","onOutlineColorChange","onPaintColorChange","props","render","fillColor","outlineColor","fillList","outlineList","language","createElement","label","t","lng","onChange","variant","MenuProps","transitionDuration","enter","exit","map","key","style","backgroundColor","border","propTypes","PropTypes","string","isRequired","array","func","_default","exports"],"sources":["../../src/drawing-response/drawable-palette.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport Select from '@mui/material/Select';\nimport MenuItem from '@mui/material/MenuItem';\nimport { styled } from '@mui/material/styles';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst BaseContainer = styled('div')(({ theme }) => ({\n marginTop: theme.spacing(2),\n display: 'flex',\n}));\n\nconst StyledInputContainer = styled(InputContainer)({\n flex: 1,\n fontSize: 'inherit',\n width: '90%',\n});\n\nconst StyledMenuItem = styled(MenuItem)(({ theme, isBlackColor }) => ({\n borderRadius: '2px',\n fontSize: 'inherit',\n height: '22px',\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n marginTop: theme.spacing(2),\n ...(isBlackColor && {\n color: theme.palette.background.paper,\n }),\n}));\n\nconst StyledSelect = styled(Select)({\n fontSize: 'inherit',\n transform: 'translate(0%, 40%)',\n});\n\n// TODO: Change Palette so will render inputs and colors dynamically\nclass Palette extends React.Component {\n onChange = (name) => (event) => {\n const { value } = event.target;\n const { onFillColorChange, onOutlineColorChange, onPaintColorChange } = this.props;\n\n if (name === 'fill') {\n onFillColorChange(value);\n } else if (name === 'outline') {\n onOutlineColorChange(value);\n } else {\n onPaintColorChange(value);\n }\n };\n\n render() {\n const { fillColor, outlineColor, fillList, outlineList, language } = this.props;\n\n return (\n <BaseContainer>\n <StyledInputContainer label={translator.t('drawingResponse.fillColor', { lng: language })}>\n <StyledSelect onChange={this.onChange('fill')} value={fillColor} variant='standard' MenuProps={{ transitionDuration: { enter: 225, exit: 195 } }}>\n {fillList.map(({ value, label }) => (\n <StyledMenuItem\n key={value}\n value={value}\n isBlackColor={value === 'black'}\n style={{ backgroundColor: value }}\n >\n {label}\n </StyledMenuItem>\n ))}\n </StyledSelect>\n </StyledInputContainer>\n\n <StyledInputContainer label={translator.t('drawingResponse.outlineColor', { lng: language })}>\n <StyledSelect onChange={this.onChange('outline')} value={outlineColor} variant='standard' MenuProps={{ transitionDuration: { enter: 225, exit: 195 } }}>\n {outlineList.map(({ value, label }) => (\n <StyledMenuItem key={value} value={value} style={{ border: `2px solid ${value}` }}>\n {label}\n </StyledMenuItem>\n ))}\n </StyledSelect>\n </StyledInputContainer>\n </BaseContainer>\n );\n }\n}\n\nPalette.propTypes = {\n fillColor: PropTypes.string.isRequired,\n fillList: PropTypes.array.isRequired,\n onFillColorChange: PropTypes.func.isRequired,\n onOutlineColorChange: PropTypes.func.isRequired,\n onPaintColorChange: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n outlineList: PropTypes.array.isRequired,\n language: PropTypes.string,\n};\n\nexport default Palette;\n"],"mappings":"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","ignoreList":[]}