@pie-lib/mask-markup 1.30.6-esmbeta.0 → 1.31.0-mui-update.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.
- package/CHANGELOG.md +36 -0
- package/lib/choices/choice.js +74 -203
- package/lib/choices/choice.js.map +1 -1
- package/lib/choices/index.js +19 -52
- package/lib/choices/index.js.map +1 -1
- package/lib/componentize.js +1 -5
- package/lib/componentize.js.map +1 -1
- package/lib/components/blank.js +292 -357
- package/lib/components/blank.js.map +1 -1
- package/lib/components/correct-input.js +41 -65
- package/lib/components/correct-input.js.map +1 -1
- package/lib/components/dropdown.js +203 -248
- package/lib/components/dropdown.js.map +1 -1
- package/lib/components/input.js +10 -17
- package/lib/components/input.js.map +1 -1
- package/lib/constructed-response.js +38 -52
- package/lib/constructed-response.js.map +1 -1
- package/lib/customizable.js +5 -9
- package/lib/customizable.js.map +1 -1
- package/lib/drag-in-the-blank.js +117 -96
- package/lib/drag-in-the-blank.js.map +1 -1
- package/lib/index.js +0 -7
- package/lib/index.js.map +1 -1
- package/lib/inline-dropdown.js +4 -12
- package/lib/inline-dropdown.js.map +1 -1
- package/lib/mask.js +40 -112
- package/lib/mask.js.map +1 -1
- package/lib/serialization.js +8 -48
- package/lib/serialization.js.map +1 -1
- package/lib/with-mask.js +26 -55
- package/lib/with-mask.js.map +1 -1
- package/package.json +12 -17
- package/src/choices/choice.jsx +58 -154
- package/src/choices/index.jsx +8 -2
- package/src/components/blank.jsx +272 -262
- package/src/components/correct-input.jsx +33 -39
- package/src/components/dropdown.jsx +165 -156
- package/src/constructed-response.jsx +22 -18
- package/src/drag-in-the-blank.jsx +97 -39
- package/src/mask.jsx +18 -27
- package/esm/index.js +0 -81026
- package/esm/index.js.map +0 -1
- package/esm/package.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/blank.jsx"],"names":["log","DRAG_TYPE","useStyles","content","border","color","primary","minWidth","touchAction","overflow","whiteSpace","chip","backgroundColor","background","text","fontSize","maxWidth","position","borderRadius","chipLabel","pointerEvents","display","padding","marginTop","marginBottom","hidden","opacity","dragged","left","correct","incorrect","over","parentOver","grey","BlankContent","updateDimensions","e","preventDefault","touchStartTimer","setTimeout","startDrag","props","connectDragSource","disabled","rootRef","state","height","width","imageElement","spanRef","querySelector","onload","handleImageLoad","handleElements","addEventListener","handleTouchStart","passive","prevProps","currentChoice","choice","prevChoice","JSON","stringify","setState","removeEventListener","style","offsetWidth","offsetHeight","widthWithPadding","heightWithPadding","responseAreaWidth","parseFloat","emptyResponseAreaWidth","responseAreaHeight","emptyResponseAreaHeight","adjustedWidth","adjustedHeight","prevState","parent","childNodes","forEach","elem","Element","HTMLDocument","setAttribute","isNaN","rootStyle","minHeight","classes","isOver","dragItem","draggedLabel","value","label","ref","ReactDOM","findDOMNode","innerHTML","addDraggableFalseAttributes","undefined","getRootDimensions","React","Component","defaultProps","propTypes","id","PropTypes","oneOfType","string","number","bool","duplicates","object","onChange","func","StyledBlankContent","connectedBlankContent","connectDropTarget","tileTarget","drop","monitor","draggedItem","getItem","instanceId","dropped","canDrop","DropTile","connect","dropTarget","tileSource","canDrag","beginDrag","fromChoice","endDrag","dropResult","getDropResult","DragDropTile","dragSource","isDragging"],"mappings":"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","sourcesContent":["import grey from '@material-ui/core/colors/grey';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport debug from 'debug';\nimport { DragSource, DropTarget } from '@pie-lib/drag';\nimport { withStyles } from '@material-ui/core/styles';\nimport Chip from '@material-ui/core/Chip';\nimport classnames from 'classnames';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('pie-lib:mask-markup:blank');\nexport const DRAG_TYPE = 'MaskBlank';\n\nconst useStyles = withStyles(() => ({\n content: {\n border: `solid 0px ${color.primary()}`,\n minWidth: '200px',\n touchAction: 'none',\n overflow: 'hidden',\n whiteSpace: 'nowrap', // Prevent line wrapping\n },\n chip: {\n backgroundColor: color.background(),\n border: `2px dashed ${color.text()}`,\n color: color.text(),\n fontSize: 'inherit',\n maxWidth: '374px',\n position: 'relative',\n borderRadius: '3px',\n },\n chipLabel: {\n whiteSpace: 'normal',\n // Added for touch devices, for image content.\n // This will prevent the context menu from appearing and not allowing other interactions with the image.\n // If interactions with the image in the token will be requested we should handle only the context Menu.\n pointerEvents: 'none',\n '& img': {\n display: 'block',\n padding: '2px 0',\n },\n // Remove default <p> margins to ensure consistent spacing across all wrapped content (p, span, div, math)\n // Padding for top and bottom will instead be controlled by the container for consistent layout\n // Ensures consistent behavior with pie-api-browser, where marginTop is already removed by a Bootstrap stylesheet\n '& p': {\n marginTop: '0',\n marginBottom: '0',\n },\n '& mjx-frac': {\n fontSize: '120% !important',\n },\n },\n hidden: {\n color: 'transparent',\n opacity: 0,\n },\n dragged: {\n position: 'absolute',\n left: 16,\n maxWidth: '60px',\n },\n correct: {\n border: `solid 1px ${color.correct()}`,\n },\n incorrect: {\n border: `solid 1px ${color.incorrect()}`,\n },\n over: {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n },\n parentOver: {\n border: `1px solid ${grey[500]}`,\n backgroundColor: `${grey[300]}`,\n },\n}));\n\nexport class BlankContent extends React.Component {\n constructor() {\n super();\n this.state = {\n height: 0,\n width: 0,\n };\n }\n\n handleImageLoad = () => {\n this.updateDimensions();\n };\n\n handleElements() {\n const imageElement = this.spanRef?.querySelector('img');\n\n if (imageElement) {\n imageElement.onload = this.handleImageLoad;\n } else {\n setTimeout(() => {\n this.updateDimensions();\n }, 300);\n }\n }\n\n componentDidMount() {\n this.handleElements();\n if (this.rootRef) {\n this.rootRef.addEventListener('touchstart', this.handleTouchStart, { passive: false });\n }\n }\n\n componentDidUpdate(prevProps) {\n renderMath(this.rootRef);\n const { choice: currentChoice } = this.props;\n const { choice: prevChoice } = prevProps;\n\n if (JSON.stringify(currentChoice) !== JSON.stringify(prevChoice)) {\n if (!currentChoice) {\n this.setState({\n height: 0,\n width: 0,\n });\n return;\n }\n this.handleElements();\n }\n }\n\n componentWillUnmount() {\n if (this.rootRef) {\n this.rootRef.removeEventListener('touchstart', this.handleTouchStart);\n }\n }\n\n handleTouchStart = (e) => {\n e.preventDefault();\n this.touchStartTimer = setTimeout(() => {\n this.startDrag();\n }, 300); // Start drag after 300ms (touch and hold duration)\n };\n\n startDrag = () => {\n const { connectDragSource, disabled } = this.props;\n if (!disabled) {\n connectDragSource(this.rootRef);\n }\n };\n\n updateDimensions() {\n if (this.spanRef && this.rootRef) {\n // Temporarily set rootRef width to 'auto' for natural measurement\n this.rootRef.style.width = 'auto';\n\n // Get the natural dimensions of the content\n const width = this.spanRef.offsetWidth || 0;\n const height = this.spanRef.offsetHeight || 0;\n\n const widthWithPadding = width + 24; // 12px padding on each side\n const heightWithPadding = height + 24; // 12px padding on top and bottom\n\n const responseAreaWidth = parseFloat(this.props.emptyResponseAreaWidth) || 0;\n const responseAreaHeight = parseFloat(this.props.emptyResponseAreaHeight) || 0;\n\n const adjustedWidth = widthWithPadding <= responseAreaWidth ? responseAreaWidth : widthWithPadding;\n const adjustedHeight = heightWithPadding <= responseAreaHeight ? responseAreaHeight : heightWithPadding;\n\n this.setState((prevState) => ({\n width: adjustedWidth > responseAreaWidth ? adjustedWidth : prevState.width,\n height: adjustedHeight > responseAreaHeight ? adjustedHeight : prevState.height,\n }));\n\n this.rootRef.style.width = `${adjustedWidth}px`;\n this.rootRef.style.height = `${adjustedHeight}px`;\n }\n }\n\n addDraggableFalseAttributes(parent) {\n parent.childNodes.forEach((elem) => {\n if (elem instanceof Element || elem instanceof HTMLDocument) {\n elem.setAttribute('draggable', false);\n }\n });\n }\n\n getRootDimensions() {\n // Handle potential non-numeric values\n const responseAreaWidth = !isNaN(parseFloat(this.props.emptyResponseAreaWidth))\n ? parseFloat(this.props.emptyResponseAreaWidth)\n : 0;\n const responseAreaHeight = !isNaN(parseFloat(this.props.emptyResponseAreaHeight))\n ? parseFloat(this.props.emptyResponseAreaHeight)\n : 0;\n\n const rootStyle = {\n height: this.state.height || responseAreaHeight,\n width: this.state.width || responseAreaWidth,\n };\n\n // add minWidth, minHeight if width and height are not defined\n // minWidth, minHeight will be also in model in the future\n return {\n ...rootStyle,\n ...(responseAreaWidth ? {} : { minWidth: 90 }),\n ...(responseAreaHeight ? {} : { minHeight: 32 }),\n };\n }\n\n render() {\n const { disabled, choice, classes, isOver, dragItem, correct } = this.props;\n const draggedLabel = dragItem && isOver && dragItem.choice.value;\n const label = choice && choice.value;\n\n return (\n // TODO the Chip element is causing drag problems on touch devices. Avoid using Chip and consider refactoring the code. Keep in mind that Chip is a span with a button role, which interferes with seamless touch device dragging.\n <Chip\n clickable={false}\n disabled={true}\n ref={(ref) => {\n //eslint-disable-next-line\n this.rootRef = ReactDOM.findDOMNode(ref);\n }}\n component=\"span\"\n label={\n <React.Fragment>\n <span\n className={classnames(classes.chipLabel, isOver && classes.over, {\n [classes.hidden]: draggedLabel,\n })}\n ref={(ref) => {\n if (ref) {\n //eslint-disable-next-line\n this.spanRef = ReactDOM.findDOMNode(ref);\n ref.innerHTML = label || '';\n this.addDraggableFalseAttributes(ref);\n }\n }}\n >\n {' '}\n </span>\n {draggedLabel && (\n <span\n className={classnames(classes.chipLabel, isOver && classes.over, classes.dragged)}\n ref={(ref) => {\n if (ref) {\n //eslint-disable-next-line\n this.spanRef = ReactDOM.findDOMNode(ref);\n ref.innerHTML = draggedLabel || '';\n this.addDraggableFalseAttributes(ref);\n }\n }}\n >\n {' '}\n </span>\n )}\n </React.Fragment>\n }\n className={classnames(classes.chip, isOver && classes.over, isOver && classes.parentOver, {\n [classes.correct]: correct !== undefined && correct,\n [classes.incorrect]: correct !== undefined && !correct,\n })}\n variant={disabled ? 'outlined' : undefined}\n style={{\n ...this.getRootDimensions(),\n }}\n />\n );\n }\n}\n\nBlankContent.defaultProps = {\n emptyResponseAreaWidth: 0,\n emptyResponseAreaHeight: 0,\n};\n\nBlankContent.propTypes = {\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n disabled: PropTypes.bool,\n duplicates: PropTypes.bool,\n choice: PropTypes.object,\n classes: PropTypes.object,\n isOver: PropTypes.bool,\n dragItem: PropTypes.object,\n correct: PropTypes.bool,\n onChange: PropTypes.func,\n emptyResponseAreaWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n emptyResponseAreaHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nconst StyledBlankContent = useStyles(BlankContent);\n\nconst connectedBlankContent = useStyles(({ connectDragSource, connectDropTarget, ...props }) => {\n const { classes, isOver } = props;\n\n return connectDropTarget(\n connectDragSource(\n <span className={classnames(classes.content, isOver && classes.over)}>\n <StyledBlankContent {...props} />\n </span>,\n ),\n );\n});\n\nconst tileTarget = {\n drop(props, monitor) {\n const draggedItem = monitor.getItem();\n\n log('props.instanceId', props.instanceId, 'draggedItem.instanceId:', draggedItem.instanceId);\n\n if (draggedItem.id !== props.id) {\n props.onChange(props.id, draggedItem.choice.id);\n }\n\n return {\n dropped: draggedItem.id !== props.id,\n };\n },\n canDrop(props, monitor) {\n const draggedItem = monitor.getItem();\n\n return draggedItem.instanceId === props.instanceId;\n },\n};\n\nconst DropTile = DropTarget(DRAG_TYPE, tileTarget, (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver(),\n dragItem: monitor.getItem(),\n}))(connectedBlankContent);\n\nconst tileSource = {\n canDrag(props) {\n return !props.disabled && !!props.choice;\n },\n beginDrag(props) {\n return {\n id: props.id,\n choice: props.choice,\n instanceId: props.instanceId,\n fromChoice: true,\n };\n },\n endDrag(props, monitor) {\n // this will be null if it did not drop\n const dropResult = monitor.getDropResult();\n\n if (!dropResult || dropResult.dropped) {\n const draggedItem = monitor.getItem();\n\n if (draggedItem.fromChoice) {\n props.onChange(props.id, undefined);\n }\n }\n },\n};\n\nconst DragDropTile = DragSource(DRAG_TYPE, tileSource, (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n isDragging: monitor.isDragging(),\n}))(DropTile);\n\nexport default DragDropTile;\n"],"file":"blank.js"}
|
|
1
|
+
{"version":3,"file":"blank.js","names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_propTypes","_mathRendering","_debug","_core","_utilities","_styles","_Chip","_classnames","_renderUi","_colors","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","log","debug","StyledContent","styled","border","concat","color","primary","minWidth","touchAction","overflow","whiteSpace","StyledChip","Chip","backgroundColor","background","text","fontSize","maxWidth","position","borderRadius","grey","correct","incorrect","StyledChipLabel","pointerEvents","display","padding","marginTop","marginBottom","opacity","left","BlankContent","_ref","disabled","choice","isOver","dragItem","emptyResponseAreaWidth","emptyResponseAreaHeight","rootRef","useRef","spanRef","_useState","useState","height","width","_useState2","_slicedToArray2","dimensions","setDimensions","handleImageLoad","updateDimensions","handleElements","_spanRef$current","imageElement","current","querySelector","onload","setTimeout","style","offsetWidth","offsetHeight","widthWithPadding","heightWithPadding","responseAreaWidth","parseFloat","responseAreaHeight","adjustedWidth","adjustedHeight","prevState","addDraggableFalseAttributes","parent","childNodes","elem","Element","HTMLDocument","setAttribute","getRootDimensions","isNaN","rootStyle","minHeight","useEffect","renderMath","JSON","stringify","draggedLabel","value","label","createElement","clickable","ref","component","Fragment","className","classnames","over","hidden","innerHTML","dragged","parentOver","undefined","variant","defaultProps","propTypes","id","PropTypes","oneOfType","string","number","bool","duplicates","object","onChange","func","instanceId","DragDropBlank","_ref4","_dragItem$data","_useDraggable","useDraggable","data","fromChoice","type","dragAttributes","attributes","dragListeners","listeners","setDragNodeRef","setNodeRef","transform","isDragging","_useDroppable","useDroppable","accepts","setDropNodeRef","active","node","CSS","Translate","toString","_extends2","_default","exports"],"sources":["../../src/components/blank.jsx"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport debug from 'debug';\nimport { useDraggable, useDroppable } from '@dnd-kit/core';\nimport { CSS } from '@dnd-kit/utilities';\nimport { styled } from '@mui/material/styles';\nimport Chip from '@mui/material/Chip';\nimport classnames from 'classnames';\nimport { color } from '@pie-lib/render-ui';\nimport { grey } from '@mui/material/colors';\n\nconst log = debug('pie-lib:mask-markup:blank');\n\nconst StyledContent = styled('span')(() => ({\n border: `solid 0px ${color.primary()}`,\n minWidth: '200px',\n touchAction: 'none',\n overflow: 'hidden',\n whiteSpace: 'nowrap', // Prevent line wrapping\n '&.over': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n },\n}));\n\nconst StyledChip = styled(Chip)(() => ({\n backgroundColor: color.background(),\n border: `2px dashed ${color.text()}`,\n color: color.text(),\n fontSize: 'inherit',\n maxWidth: '374px',\n position: 'relative',\n borderRadius: '3px',\n '&.over': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n },\n '&.parentOver': {\n border: `1px solid ${grey[500]}`,\n backgroundColor: `${grey[300]}`,\n },\n '&.correct': {\n border: `solid 1px ${color.correct()}`,\n },\n '&.incorrect': {\n border: `solid 1px ${color.incorrect()}`,\n },\n}));\n\nconst StyledChipLabel = styled('span')(() => ({\n whiteSpace: 'normal',\n // Added for touch devices, for image content.\n // This will prevent the context menu from appearing and not allowing other interactions with the image.\n // If interactions with the image in the token will be requested we should handle only the context Menu.\n pointerEvents: 'none',\n '& img': {\n display: 'block',\n padding: '2px 0',\n },\n // Remove default <p> margins to ensure consistent spacing across all wrapped content (p, span, div, math)\n // Padding for top and bottom will instead be controlled by the container for consistent layout\n // Ensures consistent behavior with pie-api-browser, where marginTop is already removed by a Bootstrap stylesheet\n '& p': {\n marginTop: '0',\n marginBottom: '0',\n },\n '& mjx-frac': {\n fontSize: '120% !important',\n },\n '&.over': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n },\n '&.hidden': {\n color: 'transparent',\n opacity: 0,\n },\n '&.dragged': {\n position: 'absolute',\n left: 16,\n maxWidth: '60px',\n },\n}));\n\nfunction BlankContent({ \n disabled, \n choice, \n isOver, \n dragItem, \n correct,\n emptyResponseAreaWidth,\n emptyResponseAreaHeight,\n}) {\n const rootRef = useRef(null);\n const spanRef = useRef(null);\n const [dimensions, setDimensions] = useState({ height: 0, width: 0 });\n\n const handleImageLoad = () => {\n updateDimensions();\n };\n\n const handleElements = () => {\n const imageElement = spanRef.current?.querySelector('img');\n if (imageElement) {\n imageElement.onload = handleImageLoad;\n } else {\n setTimeout(() => {\n updateDimensions();\n }, 300);\n }\n };\n\n const updateDimensions = () => {\n if (spanRef.current && rootRef.current) {\n // Temporarily set rootRef width to 'auto' for natural measurement\n rootRef.current.style.width = 'auto';\n\n // Get the natural dimensions of the content\n const width = spanRef.current.offsetWidth || 0;\n const height = spanRef.current.offsetHeight || 0;\n\n const widthWithPadding = width + 24; // 12px padding on each side\n const heightWithPadding = height + 24; // 12px padding on top and bottom\n\n const responseAreaWidth = parseFloat(emptyResponseAreaWidth) || 0;\n const responseAreaHeight = parseFloat(emptyResponseAreaHeight) || 0;\n\n const adjustedWidth = widthWithPadding <= responseAreaWidth ? responseAreaWidth : widthWithPadding;\n const adjustedHeight = heightWithPadding <= responseAreaHeight ? responseAreaHeight : heightWithPadding;\n\n setDimensions(prevState => ({\n width: adjustedWidth > responseAreaWidth ? adjustedWidth : prevState.width,\n height: adjustedHeight > responseAreaHeight ? adjustedHeight : prevState.height,\n }));\n\n rootRef.current.style.width = `${adjustedWidth}px`;\n rootRef.current.style.height = `${adjustedHeight}px`;\n }\n };\n\n const addDraggableFalseAttributes = (parent) => {\n if (parent && parent.childNodes) {\n parent.childNodes.forEach((elem) => {\n if (elem instanceof Element || elem instanceof HTMLDocument) {\n elem.setAttribute('draggable', false);\n }\n });\n }\n };\n\n const getRootDimensions = () => {\n // Handle potential non-numeric values\n const responseAreaWidth = !isNaN(parseFloat(emptyResponseAreaWidth))\n ? parseFloat(emptyResponseAreaWidth)\n : 0;\n const responseAreaHeight = !isNaN(parseFloat(emptyResponseAreaHeight))\n ? parseFloat(emptyResponseAreaHeight)\n : 0;\n\n const rootStyle = {\n height: dimensions.height || responseAreaHeight,\n width: dimensions.width || responseAreaWidth,\n };\n\n // add minWidth, minHeight if width and height are not defined\n return {\n ...rootStyle,\n ...(responseAreaWidth ? {} : { minWidth: 90 }),\n ...(responseAreaHeight ? {} : { minHeight: 32 }),\n };\n };\n\n useEffect(() => {\n handleElements();\n }, []);\n\n useEffect(() => {\n if (rootRef.current) {\n renderMath(rootRef.current);\n }\n });\n\n useEffect(() => {\n if (JSON.stringify(choice) !== JSON.stringify(choice)) {\n if (!choice) {\n setDimensions({ height: 0, width: 0 });\n return;\n }\n handleElements();\n }\n }, [choice]);\n\n const draggedLabel = dragItem && isOver && dragItem.choice && dragItem.choice.value;\n const label = choice && choice.value;\n\n return (\n <StyledChip\n clickable={false}\n disabled={true}\n ref={rootRef}\n component=\"span\"\n label={\n <React.Fragment>\n <StyledChipLabel\n className={classnames({\n over: isOver,\n hidden: draggedLabel,\n })}\n ref={(ref) => {\n if (ref) {\n spanRef.current = ref;\n ref.innerHTML = label || '';\n addDraggableFalseAttributes(ref);\n }\n }}\n >\n {' '}\n </StyledChipLabel>\n {draggedLabel && (\n <StyledChipLabel\n className={classnames({\n over: isOver,\n dragged: true,\n })}\n ref={(ref) => {\n if (ref) {\n ref.innerHTML = draggedLabel || '';\n addDraggableFalseAttributes(ref);\n }\n }}\n >\n {' '}\n </StyledChipLabel>\n )}\n </React.Fragment>\n }\n className={classnames({\n over: isOver,\n parentOver: isOver,\n correct: correct !== undefined && correct,\n incorrect: correct !== undefined && !correct,\n })}\n variant={disabled ? 'outlined' : undefined}\n style={{\n ...getRootDimensions(),\n }}\n />\n );\n}\n\nBlankContent.defaultProps = {\n emptyResponseAreaWidth: 0,\n emptyResponseAreaHeight: 0,\n};\n\nBlankContent.propTypes = {\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n disabled: PropTypes.bool,\n duplicates: PropTypes.bool,\n choice: PropTypes.object,\n isOver: PropTypes.bool,\n dragItem: PropTypes.object,\n correct: PropTypes.bool,\n onChange: PropTypes.func,\n emptyResponseAreaWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n emptyResponseAreaHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n instanceId: PropTypes.string,\n};\n\n// New functional component using @dnd-kit hooks\nfunction DragDropBlank({ \n id, \n disabled, \n duplicates, \n choice, \n correct, \n onChange, \n emptyResponseAreaWidth, \n emptyResponseAreaHeight,\n instanceId \n}) {\n // Setup draggable functionality\n const {\n attributes: dragAttributes,\n listeners: dragListeners,\n setNodeRef: setDragNodeRef,\n transform,\n isDragging,\n } = useDraggable({\n id: `mask-blank-drag-${id}`,\n disabled: disabled || !choice,\n data: {\n id: id,\n choice: choice,\n instanceId: instanceId,\n fromChoice: false, // This is from a blank, not from choices\n type: 'MaskBlank',\n },\n });\n\n // Setup droppable functionality\n const {\n setNodeRef: setDropNodeRef,\n isOver,\n active: dragItem,\n } = useDroppable({\n id: `mask-blank-drop-${id}`,\n data: {\n id: id,\n accepts: ['MaskBlank'],\n instanceId: instanceId,\n },\n });\n\n // Combine refs for both drag and drop\n const setNodeRef = (node) => {\n setDragNodeRef(node);\n setDropNodeRef(node);\n };\n\n const style = {\n transform: CSS.Translate.toString(transform),\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <StyledContent \n ref={setNodeRef}\n style={style}\n className={isOver ? 'over' : ''}\n {...dragAttributes}\n {...dragListeners}\n >\n <BlankContent\n id={id}\n disabled={disabled}\n duplicates={duplicates}\n choice={choice}\n isOver={isOver}\n dragItem={dragItem?.data?.current}\n correct={correct}\n onChange={onChange}\n emptyResponseAreaWidth={emptyResponseAreaWidth}\n emptyResponseAreaHeight={emptyResponseAreaHeight}\n instanceId={instanceId}\n />\n </StyledContent>\n );\n}\n\nDragDropBlank.defaultProps = {\n emptyResponseAreaWidth: 0,\n emptyResponseAreaHeight: 0,\n};\n\nDragDropBlank.propTypes = {\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n disabled: PropTypes.bool,\n duplicates: PropTypes.bool,\n choice: PropTypes.object,\n correct: PropTypes.bool,\n onChange: PropTypes.func,\n emptyResponseAreaWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n emptyResponseAreaHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n instanceId: PropTypes.string,\n};\n\nexport default DragDropBlank;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,39 +1,30 @@
|
|
|
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
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
-
|
|
16
11
|
var _react = _interopRequireDefault(require("react"));
|
|
17
|
-
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
var _classnames3 = _interopRequireDefault(require("classnames"));
|
|
21
|
-
|
|
22
|
-
var _styles = require("@material-ui/core/styles");
|
|
23
|
-
|
|
12
|
+
var _OutlinedInput = _interopRequireDefault(require("@mui/material/OutlinedInput"));
|
|
13
|
+
var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
14
|
+
var _styles = require("@mui/material/styles");
|
|
24
15
|
var _renderUi = require("@pie-lib/render-ui");
|
|
25
|
-
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var correctStyle = function correctStyle(color) {
|
|
29
|
-
return {
|
|
30
|
-
borderColor: "".concat(color, " !important")
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
var _default = (0, _styles.withStyles)(function () {
|
|
16
|
+
var _excluded = ["correct", "charactersLimit", "disabled", "isBox", "isConstructedResponse", "width", "spellCheck"];
|
|
17
|
+
var StyledOutlinedInput = (0, _styles.styled)(_OutlinedInput["default"])(function () {
|
|
35
18
|
return {
|
|
36
|
-
|
|
19
|
+
padding: '2px',
|
|
20
|
+
borderRadius: '4px',
|
|
21
|
+
fontSize: 'inherit',
|
|
22
|
+
display: 'inline-block',
|
|
23
|
+
verticalAlign: 'middle',
|
|
24
|
+
'& fieldset': {
|
|
25
|
+
border: 0
|
|
26
|
+
},
|
|
27
|
+
'& .MuiOutlinedInput-input': {
|
|
37
28
|
color: _renderUi.color.text(),
|
|
38
29
|
backgroundColor: _renderUi.color.background(),
|
|
39
30
|
borderRadius: '4px !important',
|
|
@@ -50,43 +41,30 @@ var _default = (0, _styles.withStyles)(function () {
|
|
|
50
41
|
borderColor: 'initial'
|
|
51
42
|
}
|
|
52
43
|
},
|
|
53
|
-
'
|
|
44
|
+
'&.Mui-focused': {
|
|
54
45
|
borderColor: _renderUi.color.primaryDark()
|
|
46
|
+
},
|
|
47
|
+
'&.crInput': {
|
|
48
|
+
padding: '8px !important'
|
|
49
|
+
},
|
|
50
|
+
'&.correct': {
|
|
51
|
+
borderColor: "".concat(_renderUi.color.correct(), " !important")
|
|
52
|
+
},
|
|
53
|
+
'&.incorrect': {
|
|
54
|
+
borderColor: "".concat(_renderUi.color.incorrect(), " !important")
|
|
55
55
|
}
|
|
56
|
-
},
|
|
57
|
-
crInput: {
|
|
58
|
-
padding: '8px !important'
|
|
59
|
-
},
|
|
60
|
-
correct: correctStyle(_renderUi.color.correct()),
|
|
61
|
-
incorrect: correctStyle(_renderUi.color.incorrect()),
|
|
62
|
-
box: {
|
|
63
|
-
fontSize: 'inherit',
|
|
64
|
-
display: 'inline-block',
|
|
65
|
-
verticalAlign: 'middle'
|
|
66
|
-
},
|
|
67
|
-
outlinedInput: {
|
|
68
|
-
padding: '2px',
|
|
69
|
-
borderRadius: '4px',
|
|
70
|
-
'& fieldset': {
|
|
71
|
-
border: 0
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
notchedOutline: {
|
|
75
|
-
borderColor: _renderUi.color.correct()
|
|
76
56
|
}
|
|
77
57
|
};
|
|
78
|
-
})
|
|
79
|
-
|
|
80
|
-
|
|
58
|
+
});
|
|
59
|
+
var CorrectInput = function CorrectInput(props) {
|
|
81
60
|
var correct = props.correct,
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
61
|
+
charactersLimit = props.charactersLimit,
|
|
62
|
+
disabled = props.disabled,
|
|
63
|
+
isBox = props.isBox,
|
|
64
|
+
isConstructedResponse = props.isConstructedResponse,
|
|
65
|
+
width = props.width,
|
|
66
|
+
spellCheck = props.spellCheck,
|
|
67
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
90
68
|
var label = typeof correct === 'boolean' ? correct ? 'correct' : 'incorrect' : undefined;
|
|
91
69
|
var inputProps = charactersLimit ? {
|
|
92
70
|
maxLength: charactersLimit,
|
|
@@ -94,25 +72,23 @@ var _default = (0, _styles.withStyles)(function () {
|
|
|
94
72
|
} : {
|
|
95
73
|
'aria-label': 'Enter answer'
|
|
96
74
|
};
|
|
97
|
-
|
|
98
75
|
if (width) {
|
|
99
76
|
inputProps.style = {
|
|
100
77
|
width: "".concat(width + Math.round(width / 10) + 1, "ch") // added some extra space for capital letters
|
|
101
|
-
|
|
102
78
|
};
|
|
103
79
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
80
|
+
return /*#__PURE__*/_react["default"].createElement(StyledOutlinedInput, (0, _extends2["default"])({
|
|
81
|
+
className: (0, _classnames2["default"])({
|
|
82
|
+
disabledInput: disabled,
|
|
83
|
+
box: isBox
|
|
84
|
+
}),
|
|
107
85
|
classes: {
|
|
108
|
-
input: (0,
|
|
86
|
+
input: (0, _classnames2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, label, label), "crInput", isConstructedResponse))
|
|
109
87
|
},
|
|
110
88
|
inputProps: inputProps,
|
|
111
|
-
labelWidth: 0,
|
|
112
89
|
disabled: disabled,
|
|
113
90
|
spellCheck: spellCheck
|
|
114
91
|
}, rest));
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
exports["default"] = _default;
|
|
92
|
+
};
|
|
93
|
+
var _default = exports["default"] = CorrectInput;
|
|
118
94
|
//# sourceMappingURL=correct-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"correct-input.js","names":["_react","_interopRequireDefault","require","_OutlinedInput","_classnames2","_styles","_renderUi","_excluded","StyledOutlinedInput","styled","OutlinedInput","padding","borderRadius","fontSize","display","verticalAlign","border","color","text","backgroundColor","background","borderWidth","borderStyle","opacity","cursor","borderColor","primary","primaryDark","concat","correct","incorrect","CorrectInput","props","charactersLimit","disabled","isBox","isConstructedResponse","width","spellCheck","rest","_objectWithoutProperties2","label","undefined","inputProps","maxLength","style","Math","round","createElement","_extends2","className","classnames","disabledInput","box","classes","input","_defineProperty2","_default","exports"],"sources":["../../src/components/correct-input.jsx"],"sourcesContent":["import React from 'react';\nimport OutlinedInput from '@mui/material/OutlinedInput';\nimport classnames from 'classnames';\nimport { styled } from '@mui/material/styles';\nimport { color } from '@pie-lib/render-ui';\n\nconst StyledOutlinedInput = styled(OutlinedInput)(() => ({\n padding: '2px',\n borderRadius: '4px',\n fontSize: 'inherit',\n display: 'inline-block',\n verticalAlign: 'middle',\n '& fieldset': {\n border: 0,\n },\n '& .MuiOutlinedInput-input': {\n color: color.text(),\n backgroundColor: color.background(),\n borderRadius: '4px !important',\n borderWidth: '1px',\n borderStyle: 'solid',\n padding: '10px 20px 10px 10px',\n '&:disabled': {\n opacity: 0.8,\n cursor: 'not-allowed !important',\n },\n '&:hover': {\n borderColor: color.primary(),\n '&:disabled': {\n borderColor: 'initial',\n },\n },\n '&.Mui-focused': {\n borderColor: color.primaryDark(),\n },\n '&.crInput': {\n padding: '8px !important',\n },\n '&.correct': {\n borderColor: `${color.correct()} !important`,\n },\n '&.incorrect': {\n borderColor: `${color.incorrect()} !important`,\n },\n },\n}));\n\nconst CorrectInput = (props) => {\n const {\n correct,\n charactersLimit,\n disabled,\n isBox,\n isConstructedResponse,\n width,\n spellCheck,\n ...rest\n } = props;\n\n const label = typeof correct === 'boolean' ? (correct ? 'correct' : 'incorrect') : undefined;\n const inputProps = charactersLimit\n ? { maxLength: charactersLimit, 'aria-label': 'Enter answer' }\n : { 'aria-label': 'Enter answer' };\n\n if (width) {\n inputProps.style = {\n width: `${width + Math.round(width / 10) + 1}ch`, // added some extra space for capital letters\n };\n }\n\n return (\n <StyledOutlinedInput\n className={classnames({\n disabledInput: disabled,\n box: isBox,\n })}\n classes={{\n input: classnames({\n [label]: label,\n crInput: isConstructedResponse,\n }),\n }}\n inputProps={inputProps}\n disabled={disabled}\n spellCheck={spellCheck}\n {...rest}\n />\n );\n};\n\nexport default CorrectInput;\n\n"],"mappings":"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","ignoreList":[]}
|