@pie-lib/graphing 4.0.5-next.3 → 4.0.6
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 +12 -0
- package/lib/container/index.js +10 -1
- package/lib/container/index.js.map +1 -1
- package/lib/tools/polygon/polygon.js +2 -2
- package/lib/tools/polygon/polygon.js.map +1 -1
- package/package.json +6 -6
- package/src/container/index.jsx +9 -1
- package/src/tools/polygon/polygon.jsx +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [4.0.6](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@4.0.5...@pie-lib/graphing@4.0.6) (2026-06-01)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **graphing:** make sure evaluate mode marks are not included in undo/redo history PIE-582 ([74f4820](https://github.com/pie-framework/pie-lib/commit/74f482052b5331d918212dcfd847a477f1e5e2d4))
|
|
11
|
+
|
|
12
|
+
## [4.0.5](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@4.0.4...@pie-lib/graphing@4.0.5) (2026-05-21)
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- add a bigger stroke for polygons PIE-451 ([4908eda](https://github.com/pie-framework/pie-lib/commit/4908edae1bb176575e18a5c5979cb3d4e9eb1454))
|
|
17
|
+
|
|
6
18
|
## [4.0.4](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@4.0.3...@pie-lib/graphing@4.0.4) (2026-05-15)
|
|
7
19
|
|
|
8
20
|
### Bug Fixes
|
package/lib/container/index.js
CHANGED
|
@@ -84,7 +84,16 @@ var Root = /*#__PURE__*/function (_React$Component) {
|
|
|
84
84
|
return;
|
|
85
85
|
}
|
|
86
86
|
if (!(0, _lodashEs.isEqual)(prevProps.marks, marks)) {
|
|
87
|
-
|
|
87
|
+
// Don't dispatch marks that have correctness (evaluate mode marks) into the undo history.
|
|
88
|
+
// These marks are already handled in render() via the correctnessSet path and bypass the
|
|
89
|
+
// Redux store entirely. Dispatching them would pollute the undo history and cause the graph
|
|
90
|
+
// to show the correct answer when the user presses undo after returning to gather mode.
|
|
91
|
+
var hasCorrectness = marks && marks.find(function (m) {
|
|
92
|
+
return m.correctness;
|
|
93
|
+
});
|
|
94
|
+
if (!hasCorrectness) {
|
|
95
|
+
this.store.dispatch((0, _actions.changeMarks)(marks));
|
|
96
|
+
}
|
|
88
97
|
}
|
|
89
98
|
}
|
|
90
99
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_reactRedux","require","_react","_interopRequireDefault","_redux","_reducer","_actions","_propTypes","_lodashEs","_reduxUndo","_graphWithControls","_middleware","_excluded","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","mapStateToProps","s","marks","present","mapDispatchToProps","dispatch","onChangeMarks","m","changeMarks","onUndo","ActionCreators","undo","onRedo","redo","onReset","GraphContainer","exports","connect","GraphWithControls","Root","_React$Component","props","_this","_classCallCheck2","_defineProperty2","_this$props","storeState","store","getState","isEqual","r","reducer","createStore","applyMiddleware","lastActionMiddleware","subscribe","onStoreChange","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","render","_this$props2","rest","_objectWithoutProperties2","correctnessSet","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_reactRedux","require","_react","_interopRequireDefault","_redux","_reducer","_actions","_propTypes","_lodashEs","_reduxUndo","_graphWithControls","_middleware","_excluded","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","mapStateToProps","s","marks","present","mapDispatchToProps","dispatch","onChangeMarks","m","changeMarks","onUndo","ActionCreators","undo","onRedo","redo","onReset","GraphContainer","exports","connect","GraphWithControls","Root","_React$Component","props","_this","_classCallCheck2","_defineProperty2","_this$props","storeState","store","getState","isEqual","r","reducer","createStore","applyMiddleware","lastActionMiddleware","subscribe","onStoreChange","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","hasCorrectness","find","correctness","render","_this$props2","rest","_objectWithoutProperties2","correctnessSet","createElement","_extends2","disabled","Provider","React","Component","PropTypes","func","array","_default"],"sources":["../../src/container/index.jsx"],"sourcesContent":["import { connect, Provider } from 'react-redux';\nimport React from 'react';\nimport { applyMiddleware, createStore } from 'redux';\nimport reducer from './reducer';\nimport { changeMarks } from './actions';\nimport PropTypes from 'prop-types';\nimport { isEqual } from 'lodash-es';\nimport { ActionCreators } from 'redux-undo';\nimport GraphWithControls from '../graph-with-controls';\nimport { lastActionMiddleware } from './middleware';\n\nconst mapStateToProps = (s) => ({\n marks: s.marks.present,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n onChangeMarks: (m) => dispatch(changeMarks(m)),\n onUndo: () => dispatch(ActionCreators.undo()),\n onRedo: () => dispatch(ActionCreators.redo()),\n onReset: () => dispatch(changeMarks([])),\n});\n\nexport const GraphContainer = connect(mapStateToProps, mapDispatchToProps)(GraphWithControls);\n\n/**\n * The graph component entry point with undo/redo\n * Redux is an implementation detail, hide it in the react component.\n */\nclass Root extends React.Component {\n static propTypes = {\n onChangeMarks: PropTypes.func,\n marks: PropTypes.array,\n };\n\n constructor(props) {\n super(props);\n\n const r = reducer();\n this.store = createStore(r, { marks: props.marks }, applyMiddleware(lastActionMiddleware));\n\n this.store.subscribe(this.onStoreChange);\n }\n\n componentDidUpdate(prevProps) {\n const { marks } = this.props;\n const storeState = this.store.getState();\n\n if (isEqual(storeState.marks.present, marks)) {\n return;\n }\n\n if (!isEqual(prevProps.marks, marks)) {\n // Don't dispatch marks that have correctness (evaluate mode marks) into the undo history.\n // These marks are already handled in render() via the correctnessSet path and bypass the\n // Redux store entirely. Dispatching them would pollute the undo history and cause the graph\n // to show the correct answer when the user presses undo after returning to gather mode.\n const hasCorrectness = marks && marks.find((m) => m.correctness);\n\n if (!hasCorrectness) {\n this.store.dispatch(changeMarks(marks));\n }\n }\n }\n\n onStoreChange = () => {\n const { marks, onChangeMarks } = this.props;\n const storeState = this.store.getState();\n\n if (!isEqual(storeState.marks.present, marks)) {\n onChangeMarks(storeState.marks.present);\n }\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const { onChangeMarks, marks, ...rest } = this.props;\n const correctnessSet = marks && marks.find((m) => m.correctness);\n\n if (correctnessSet) {\n return <GraphWithControls {...rest} marks={marks} disabled={correctnessSet} />;\n }\n\n return (\n <Provider store={this.store}>\n <GraphContainer {...rest} />\n </Provider>\n );\n }\n}\n\nexport default Root;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,7 +32,7 @@ var StyledPolygon = (0, _styles.styled)('polygon')(function (_ref) {
|
|
|
32
32
|
correctness = _ref.correctness;
|
|
33
33
|
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
34
34
|
fill: (0, _styles.alpha)((0, _styles2.graphingShapeFill)(), 0.2),
|
|
35
|
-
strokeWidth:
|
|
35
|
+
strokeWidth: 3,
|
|
36
36
|
stroke: _renderUi.color.defaults.BLACK
|
|
37
37
|
}, isDisabled && (0, _styles2.disabledSecondary)('stroke')), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && _objectSpread(_objectSpread({}, (0, _styles2.missing)('stroke')), {}, {
|
|
38
38
|
stroke: 'inherit'
|
|
@@ -43,7 +43,7 @@ var StyledPolyline = (0, _styles.styled)('polyline')(function (_ref2) {
|
|
|
43
43
|
correctness = _ref2.correctness;
|
|
44
44
|
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
45
45
|
fill: (0, _styles.alpha)((0, _styles2.graphingShapeFill)(), 0.0),
|
|
46
|
-
strokeWidth:
|
|
46
|
+
strokeWidth: 3,
|
|
47
47
|
stroke: _renderUi.color.defaults.BLACK,
|
|
48
48
|
pointerEvents: 'none'
|
|
49
49
|
}, isDisabled && (0, _styles2.disabledSecondary)('stroke')), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && _objectSpread(_objectSpread({}, (0, _styles2.missing)('stroke')), {}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","_ref","isDisabled","disabled","correctness","fill","alpha","graphingShapeFill","strokeWidth","stroke","color","defaults","BLACK","disabledSecondary","correct","incorrect","missing","StyledPolyline","_ref2","pointerEvents","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","createElement","_extends2","React","Component","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { alpha, styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\n\nimport * as utils from '../../utils';\nimport { correct, disabledSecondary, incorrect, missing, graphingShapeFill } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.2),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nconst StyledPolyline = styled('polyline')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.0),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n pointerEvents: 'none',\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n disabled: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, disabled, correctness, graphProps, closed, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n\n if (closed) {\n return (\n <StyledPolygon\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n } else {\n return (\n <StyledPolyline\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n }\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","_ref","isDisabled","disabled","correctness","fill","alpha","graphingShapeFill","strokeWidth","stroke","color","defaults","BLACK","disabledSecondary","correct","incorrect","missing","StyledPolyline","_ref2","pointerEvents","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","createElement","_extends2","React","Component","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { alpha, styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\n\nimport * as utils from '../../utils';\nimport { correct, disabledSecondary, incorrect, missing, graphingShapeFill } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.2),\n strokeWidth: 3,\n stroke: color.defaults.BLACK,\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nconst StyledPolyline = styled('polyline')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.0),\n strokeWidth: 3,\n stroke: color.defaults.BLACK,\n pointerEvents: 'none',\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n disabled: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, disabled, correctness, graphProps, closed, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n\n if (closed) {\n return (\n <StyledPolygon\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n } else {\n return (\n <StyledPolyline\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n }\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.6",
|
|
7
7
|
"description": "Graphing components",
|
|
8
8
|
"keywords": [
|
|
9
9
|
"react",
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
"@mapbox/point-geometry": "^1.1.0",
|
|
23
23
|
"@mui/icons-material": "^7.3.4",
|
|
24
24
|
"@mui/material": "^7.3.4",
|
|
25
|
-
"@pie-lib/drag": "^4.0.
|
|
26
|
-
"@pie-lib/editable-html-tip-tap": "^2.1.
|
|
25
|
+
"@pie-lib/drag": "^4.0.3",
|
|
26
|
+
"@pie-lib/editable-html-tip-tap": "^2.1.3",
|
|
27
27
|
"@pie-lib/graphing-utils": "^3.0.2",
|
|
28
|
-
"@pie-lib/plot": "^4.0.
|
|
29
|
-
"@pie-lib/render-ui": "^6.1.
|
|
28
|
+
"@pie-lib/plot": "^4.0.5",
|
|
29
|
+
"@pie-lib/render-ui": "^6.1.1",
|
|
30
30
|
"@pie-lib/translator": "^4.0.2",
|
|
31
31
|
"@visx/axis": "^3.0.0",
|
|
32
32
|
"@visx/clip-path": "^3.0.0",
|
|
@@ -54,6 +54,6 @@
|
|
|
54
54
|
"peerDependencies": {
|
|
55
55
|
"react": "^18.2.0"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "381e012542b7849f83aa84b08e4b6664cedff245",
|
|
58
58
|
"scripts": {}
|
|
59
59
|
}
|
package/src/container/index.jsx
CHANGED
|
@@ -50,7 +50,15 @@ class Root extends React.Component {
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
if (!isEqual(prevProps.marks, marks)) {
|
|
53
|
-
|
|
53
|
+
// Don't dispatch marks that have correctness (evaluate mode marks) into the undo history.
|
|
54
|
+
// These marks are already handled in render() via the correctnessSet path and bypass the
|
|
55
|
+
// Redux store entirely. Dispatching them would pollute the undo history and cause the graph
|
|
56
|
+
// to show the correct answer when the user presses undo after returning to gather mode.
|
|
57
|
+
const hasCorrectness = marks && marks.find((m) => m.correctness);
|
|
58
|
+
|
|
59
|
+
if (!hasCorrectness) {
|
|
60
|
+
this.store.dispatch(changeMarks(marks));
|
|
61
|
+
}
|
|
54
62
|
}
|
|
55
63
|
}
|
|
56
64
|
|
|
@@ -9,7 +9,7 @@ import { correct, disabledSecondary, incorrect, missing, graphingShapeFill } fro
|
|
|
9
9
|
|
|
10
10
|
const StyledPolygon = styled('polygon')(({ disabled: isDisabled, correctness }) => ({
|
|
11
11
|
fill: alpha(graphingShapeFill(), 0.2),
|
|
12
|
-
strokeWidth:
|
|
12
|
+
strokeWidth: 3,
|
|
13
13
|
stroke: color.defaults.BLACK,
|
|
14
14
|
...(isDisabled && disabledSecondary('stroke')),
|
|
15
15
|
...(correctness === 'correct' && correct('stroke')),
|
|
@@ -22,7 +22,7 @@ const StyledPolygon = styled('polygon')(({ disabled: isDisabled, correctness })
|
|
|
22
22
|
|
|
23
23
|
const StyledPolyline = styled('polyline')(({ disabled: isDisabled, correctness }) => ({
|
|
24
24
|
fill: alpha(graphingShapeFill(), 0.0),
|
|
25
|
-
strokeWidth:
|
|
25
|
+
strokeWidth: 3,
|
|
26
26
|
stroke: color.defaults.BLACK,
|
|
27
27
|
pointerEvents: 'none',
|
|
28
28
|
...(isDisabled && disabledSecondary('stroke')),
|