@pie-element/number-line 7.2.2-next.25 → 7.2.2

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.
@@ -29,68 +29,14 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
29
29
 
30
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
31
 
32
- // This const will store available tick interval types.
33
32
  var TickIntervals = ['Integer', 'Fraction', 'Decimal'];
34
33
  exports.TickIntervals = TickIntervals;
35
34
 
36
35
  var Ticks = function Ticks(props) {
37
36
  var classes = props.classes,
38
- _props$ticksModel = props.ticksModel,
39
- ticksModel = _props$ticksModel === void 0 ? {
40
- tickIntervalType: 'Fraction',
41
- integerTick: 0,
42
- fractionTick: '0/1',
43
- decimalTick: 0,
44
- fractionLabel: '0/1',
45
- decimalLabel: 0
46
- } : _props$ticksModel,
37
+ ticksModel = props.ticksModel,
47
38
  onChange = props.onChange,
48
- _props$data = props.data,
49
- data = _props$data === void 0 ? {
50
- minorLimits: {
51
- min: 0,
52
- max: 1
53
- },
54
- minorValues: {
55
- fraction: [],
56
- decimal: [],
57
- rounded: []
58
- },
59
- majorValues: {
60
- fraction: [],
61
- decimal: [],
62
- rounded: []
63
- }
64
- } : _props$data;
65
- /*
66
- * Function to validate minor values object
67
- * */
68
-
69
- var validateMinorValuesObject = function validateMinorValuesObject() {
70
- if (!data.minorValues) {
71
- return false;
72
- }
73
-
74
- return !!(data.minorValues.fraction || data.minorValues.decimal || data.minorValues.rounded);
75
- };
76
- /*
77
- * Function to validate major values object
78
- * */
79
-
80
-
81
- var validateMajorValuesObject = function validateMajorValuesObject() {
82
- if (!data.majorValues) {
83
- return false;
84
- }
85
-
86
- return !!(data.majorValues.fraction || data.majorValues.decimal || data.majorValues.rounded);
87
- };
88
- /*
89
- * Function to handle tick interval type radio group change
90
- * @param e change event object
91
- * @param tickIntervalType string value for changed tick interval type
92
- * */
93
-
39
+ data = props.data;
94
40
 
95
41
  var changeTickIntervalType = function changeTickIntervalType(e, tickIntervalType) {
96
42
  if (!TickIntervals.includes(tickIntervalType)) {
@@ -102,12 +48,6 @@ var Ticks = function Ticks(props) {
102
48
  ticksModel: ticksModel
103
49
  });
104
50
  };
105
- /*
106
- * Function to handle change in integer tick interval
107
- * @param e change event object
108
- * @param integerTick number value for changed tick
109
- * */
110
-
111
51
 
112
52
  var changeIntegerTick = function changeIntegerTick(e, integerTick) {
113
53
  ticksModel.integerTick = integerTick;
@@ -117,69 +57,37 @@ var Ticks = function Ticks(props) {
117
57
  ticksModel: ticksModel
118
58
  });
119
59
  };
120
- /*
121
- * Function to handle change in fraction tick interval
122
- * @param e change event object
123
- * @param fractionTick string value for changed tick
124
- * */
125
-
126
60
 
127
61
  var changeFractionTick = function changeFractionTick(e, fractionTick) {
128
- if (validateMinorValuesObject()) {
129
- ticksModel.fractionTick = fractionTick;
130
- ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.fraction.indexOf(ticksModel.fractionTick)];
131
- onChange({
132
- ticksModel: ticksModel
133
- });
134
- }
62
+ ticksModel.fractionTick = fractionTick;
63
+ ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.fraction.indexOf(ticksModel.fractionTick)];
64
+ onChange({
65
+ ticksModel: ticksModel
66
+ });
135
67
  };
136
- /*
137
- * Function to handle change in decimal tick interval
138
- * @param e change event object
139
- * @param decimalTick number value for changed tick
140
- * */
141
-
142
68
 
143
69
  var changeDecimalTick = function changeDecimalTick(e, decimalTick) {
144
- if (validateMinorValuesObject()) {
145
- ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.rounded.indexOf(decimalTick)];
146
- ticksModel.fractionTick = data.minorValues.fraction[data.minorValues.decimal.indexOf(ticksModel.decimalTick)];
147
- onChange({
148
- ticksModel: ticksModel
149
- });
150
- }
70
+ ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.rounded.indexOf(decimalTick)];
71
+ ticksModel.fractionTick = data.minorValues.fraction[data.minorValues.decimal.indexOf(ticksModel.decimalTick)];
72
+ onChange({
73
+ ticksModel: ticksModel
74
+ });
151
75
  };
152
- /*
153
- * Function to handle change in fraction label interval value
154
- * @param e change event object
155
- * @param fractionLabel string value for changed label interval
156
- * */
157
-
158
76
 
159
77
  var changeFractionLabel = function changeFractionLabel(e, fractionLabel) {
160
- if (validateMajorValuesObject()) {
161
- ticksModel.fractionLabel = fractionLabel;
162
- ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.fraction.indexOf(ticksModel.fractionLabel)];
163
- onChange({
164
- ticksModel: ticksModel
165
- });
166
- }
78
+ ticksModel.fractionLabel = fractionLabel;
79
+ ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.fraction.indexOf(ticksModel.fractionLabel)];
80
+ onChange({
81
+ ticksModel: ticksModel
82
+ });
167
83
  };
168
- /*
169
- * Function to handle change in decimal label interval value
170
- * @param e change event object
171
- * @param decimalLabel number value for changed label interval
172
- * */
173
-
174
84
 
175
85
  var changeDecimalLabel = function changeDecimalLabel(e, decimalLabel) {
176
- if (validateMajorValuesObject()) {
177
- ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.rounded.indexOf(decimalLabel)];
178
- ticksModel.fractionLabel = data.majorValues.fraction[data.majorValues.decimal.indexOf(ticksModel.decimalLabel)];
179
- onChange({
180
- ticksModel: ticksModel
181
- });
182
- }
86
+ ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.rounded.indexOf(decimalLabel)];
87
+ ticksModel.fractionLabel = data.majorValues.fraction[data.majorValues.decimal.indexOf(ticksModel.decimalLabel)];
88
+ onChange({
89
+ ticksModel: ticksModel
90
+ });
183
91
  };
184
92
 
185
93
  return /*#__PURE__*/_react["default"].createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ticks.jsx"],"names":["TickIntervals","Ticks","props","classes","ticksModel","tickIntervalType","integerTick","fractionTick","decimalTick","fractionLabel","decimalLabel","onChange","data","minorLimits","min","max","minorValues","fraction","decimal","rounded","majorValues","validateMinorValuesObject","validateMajorValuesObject","changeTickIntervalType","e","includes","changeIntegerTick","toString","changeFractionTick","indexOf","changeDecimalTick","changeFractionLabel","changeDecimalLabel","displayFlex","flexCol1","tableFixed","radioInputs","labelWidth","math","number","ceil","nl","numberTextField","round","flexCol2","propTypes","PropTypes","object","isRequired","func","shape","string","styles","display","gap","width","alignItems","paddingTop","paddingBottom","maxWidth"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { NumberTextFieldCustom } from '@pie-lib/pie-toolbox/config-ui';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport RadioGroup from '@material-ui/core/RadioGroup';\nimport Radio from '@material-ui/core/Radio';\nimport * as math from 'mathjs';\n\n// This const will store available tick interval types.\nexport const TickIntervals = ['Integer', 'Fraction', 'Decimal'];\n\nexport const Ticks = (props) => {\n const {\n classes,\n ticksModel = {\n tickIntervalType: 'Fraction',\n integerTick: 0,\n fractionTick: '0/1',\n decimalTick: 0,\n fractionLabel: '0/1',\n decimalLabel: 0,\n },\n onChange,\n data = {\n minorLimits: { min: 0, max: 1 },\n minorValues: { fraction: [], decimal: [], rounded: [] },\n majorValues: { fraction: [], decimal: [], rounded: [] },\n }, // added default values if not present in model.\n } = props;\n\n /*\n * Function to validate minor values object\n * */\n const validateMinorValuesObject = () => {\n if (!data.minorValues) {\n return false;\n }\n return !!(data.minorValues.fraction || data.minorValues.decimal || data.minorValues.rounded);\n };\n\n /*\n * Function to validate major values object\n * */\n const validateMajorValuesObject = () => {\n if (!data.majorValues) {\n return false;\n }\n return !!(data.majorValues.fraction || data.majorValues.decimal || data.majorValues.rounded);\n };\n\n /*\n * Function to handle tick interval type radio group change\n * @param e change event object\n * @param tickIntervalType string value for changed tick interval type\n * */\n const changeTickIntervalType = (e, tickIntervalType) => {\n if (!TickIntervals.includes(tickIntervalType)) {\n return;\n }\n ticksModel.tickIntervalType = tickIntervalType;\n onChange({ ticksModel });\n };\n\n /*\n * Function to handle change in integer tick interval\n * @param e change event object\n * @param integerTick number value for changed tick\n * */\n const changeIntegerTick = (e, integerTick) => {\n ticksModel.integerTick = integerTick;\n ticksModel.fractionTick = integerTick.toString();\n ticksModel.decimalTick = integerTick;\n onChange({ ticksModel });\n };\n\n /*\n * Function to handle change in fraction tick interval\n * @param e change event object\n * @param fractionTick string value for changed tick\n * */\n const changeFractionTick = (e, fractionTick) => {\n if (validateMinorValuesObject()) {\n ticksModel.fractionTick = fractionTick;\n ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.fraction.indexOf(ticksModel.fractionTick)];\n onChange({ ticksModel });\n }\n };\n\n /*\n * Function to handle change in decimal tick interval\n * @param e change event object\n * @param decimalTick number value for changed tick\n * */\n const changeDecimalTick = (e, decimalTick) => {\n if (validateMinorValuesObject()) {\n ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.rounded.indexOf(decimalTick)];\n ticksModel.fractionTick = data.minorValues.fraction[data.minorValues.decimal.indexOf(ticksModel.decimalTick)];\n onChange({ ticksModel });\n }\n };\n\n /*\n * Function to handle change in fraction label interval value\n * @param e change event object\n * @param fractionLabel string value for changed label interval\n * */\n const changeFractionLabel = (e, fractionLabel) => {\n if (validateMajorValuesObject()) {\n ticksModel.fractionLabel = fractionLabel;\n ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.fraction.indexOf(ticksModel.fractionLabel)];\n onChange({ ticksModel });\n }\n };\n\n /*\n * Function to handle change in decimal label interval value\n * @param e change event object\n * @param decimalLabel number value for changed label interval\n * */\n const changeDecimalLabel = (e, decimalLabel) => {\n if (validateMajorValuesObject()) {\n ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.rounded.indexOf(decimalLabel)];\n ticksModel.fractionLabel = data.majorValues.fraction[data.majorValues.decimal.indexOf(ticksModel.decimalLabel)];\n onChange({ ticksModel });\n }\n };\n\n return (\n <div className={classes.displayFlex}>\n <div className={classes.flexCol1}>\n <label>Tick Interval</label>\n <RadioGroup\n aria-label=\"tick-interval-type\"\n name=\"tickIntervalType\"\n value={ticksModel.tickIntervalType}\n onChange={changeTickIntervalType}\n >\n <table className={classes.tableFixed}>\n <tbody>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Integer\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Integer'} />}\n label=\"Integer\"\n disabled={data.minorLimits.max < 1}\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={ticksModel.integerTick}\n min={math.number(math.ceil(data.minorLimits.min))}\n max={math.number(math.ceil(data.minorLimits.max))}\n step={1}\n onlyIntegersAllowed={true}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeIntegerTick}\n variant={'outlined'}\n type={'number'}\n disabled={ticksModel.tickIntervalType !== 'Integer' || data.minorLimits.max < 1}\n />\n </td>\n </tr>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Fraction\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Fraction'} />}\n label=\"Unit Fraction\"\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={ticksModel.fractionTick}\n min={math.number(data.minorLimits.min)}\n max={math.number(data.minorLimits.max)}\n customValues={data.minorValues.fraction}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeFractionTick}\n variant={'outlined'}\n type={'text'}\n disabled={ticksModel.tickIntervalType !== 'Fraction'}\n />\n </td>\n </tr>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Decimal\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Decimal'} />}\n label=\"Decimal\"\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={math.number(math.round(ticksModel.decimalTick, 3))}\n min={math.number(data.minorLimits.min)}\n max={math.number(data.minorLimits.max)}\n customValues={data.minorValues.rounded}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeDecimalTick}\n variant={'outlined'}\n type={'number'}\n disabled={ticksModel.tickIntervalType !== 'Decimal'}\n />\n </td>\n </tr>\n </tbody>\n </table>\n </RadioGroup>\n </div>\n <div className={classes.flexCol2}>\n <label>Label Interval</label>\n <NumberTextFieldCustom\n value={\n ticksModel.tickIntervalType === 'Fraction'\n ? ticksModel.fractionLabel\n : math.number(math.round(ticksModel.decimalLabel, 3))\n }\n className={classes.numberTextField}\n variant={'outlined'}\n customValues={\n ticksModel.tickIntervalType === 'Fraction' ? data.majorValues.fraction : data.majorValues.rounded\n }\n type={ticksModel.tickIntervalType === 'Fraction' ? 'text' : 'number'}\n onChange={ticksModel.tickIntervalType === 'Fraction' ? changeFractionLabel : changeDecimalLabel}\n />\n </div>\n </div>\n );\n};\nTicks.propTypes = {\n classes: PropTypes.object.isRequired,\n onChange: PropTypes.func,\n ticksModel: PropTypes.shape({\n integerTick: PropTypes.number,\n decimalTick: PropTypes.number,\n fractionTick: PropTypes.string,\n tickIntervalType: PropTypes.string,\n fractionLabel: PropTypes.string,\n decimalLabel: PropTypes.number,\n }),\n data: PropTypes.object,\n};\n\nconst styles = () => ({\n displayFlex: {\n display: 'flex',\n },\n flexCol1: {\n display: 'flex',\n 'flex-flow': 'column',\n gap: '10px',\n width: '65%',\n },\n flexCol2: {\n display: 'flex',\n 'flex-flow': 'column',\n gap: '10px',\n },\n radioInputs: {\n display: 'flex',\n alignItems: 'center',\n paddingTop: '5px',\n paddingBottom: '5px',\n },\n numberTextField: {\n maxWidth: '145px',\n },\n tableFixed: {\n 'table-layout': 'fixed',\n width: '100%',\n },\n labelWidth: {\n width: '35%',\n },\n});\nexport default withStyles(styles)(Ticks);\n"],"file":"ticks.js"}
1
+ {"version":3,"sources":["../src/ticks.jsx"],"names":["TickIntervals","Ticks","props","classes","ticksModel","onChange","data","changeTickIntervalType","e","tickIntervalType","includes","changeIntegerTick","integerTick","fractionTick","toString","decimalTick","changeFractionTick","minorValues","decimal","fraction","indexOf","changeDecimalTick","rounded","changeFractionLabel","fractionLabel","decimalLabel","majorValues","changeDecimalLabel","displayFlex","flexCol1","tableFixed","radioInputs","labelWidth","minorLimits","max","math","number","ceil","min","nl","numberTextField","round","flexCol2","propTypes","PropTypes","object","isRequired","func","shape","string","styles","display","gap","width","alignItems","paddingTop","paddingBottom","maxWidth"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { NumberTextFieldCustom } from '@pie-lib/pie-toolbox/config-ui';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport RadioGroup from '@material-ui/core/RadioGroup';\nimport Radio from '@material-ui/core/Radio';\nimport * as math from 'mathjs';\n\nexport const TickIntervals = ['Integer', 'Fraction', 'Decimal'];\n\nexport const Ticks = (props) => {\n const { classes, ticksModel, onChange, data } = props;\n\n const changeTickIntervalType = (e, tickIntervalType) => {\n if (!TickIntervals.includes(tickIntervalType)) {\n return;\n }\n ticksModel.tickIntervalType = tickIntervalType;\n onChange({ ticksModel });\n };\n\n const changeIntegerTick = (e, integerTick) => {\n ticksModel.integerTick = integerTick;\n ticksModel.fractionTick = integerTick.toString();\n ticksModel.decimalTick = integerTick;\n onChange({ ticksModel });\n };\n\n const changeFractionTick = (e, fractionTick) => {\n ticksModel.fractionTick = fractionTick;\n ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.fraction.indexOf(ticksModel.fractionTick)];\n onChange({ ticksModel });\n };\n\n const changeDecimalTick = (e, decimalTick) => {\n ticksModel.decimalTick = data.minorValues.decimal[data.minorValues.rounded.indexOf(decimalTick)];\n ticksModel.fractionTick = data.minorValues.fraction[data.minorValues.decimal.indexOf(ticksModel.decimalTick)];\n onChange({ ticksModel });\n };\n\n const changeFractionLabel = (e, fractionLabel) => {\n ticksModel.fractionLabel = fractionLabel;\n ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.fraction.indexOf(ticksModel.fractionLabel)];\n onChange({ ticksModel });\n };\n\n const changeDecimalLabel = (e, decimalLabel) => {\n ticksModel.decimalLabel = data.majorValues.decimal[data.majorValues.rounded.indexOf(decimalLabel)];\n ticksModel.fractionLabel = data.majorValues.fraction[data.majorValues.decimal.indexOf(ticksModel.decimalLabel)];\n onChange({ ticksModel });\n };\n\n return (\n <div className={classes.displayFlex}>\n <div className={classes.flexCol1}>\n <label>Tick Interval</label>\n <RadioGroup\n aria-label=\"tick-interval-type\"\n name=\"tickIntervalType\"\n value={ticksModel.tickIntervalType}\n onChange={changeTickIntervalType}\n >\n <table className={classes.tableFixed}>\n <tbody>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Integer\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Integer'} />}\n label=\"Integer\"\n disabled={data.minorLimits.max < 1}\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={ticksModel.integerTick}\n min={math.number(math.ceil(data.minorLimits.min))}\n max={math.number(math.ceil(data.minorLimits.max))}\n step={1}\n onlyIntegersAllowed={true}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeIntegerTick}\n variant={'outlined'}\n type={'number'}\n disabled={ticksModel.tickIntervalType !== 'Integer' || data.minorLimits.max < 1}\n />\n </td>\n </tr>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Fraction\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Fraction'} />}\n label=\"Unit Fraction\"\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={ticksModel.fractionTick}\n min={math.number(data.minorLimits.min)}\n max={math.number(data.minorLimits.max)}\n customValues={data.minorValues.fraction}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeFractionTick}\n variant={'outlined'}\n type={'text'}\n disabled={ticksModel.tickIntervalType !== 'Fraction'}\n />\n </td>\n </tr>\n <tr className={classes.radioInputs}>\n <td className={classes.labelWidth}>\n <FormControlLabel\n value=\"Decimal\"\n control={<Radio checked={ticksModel.tickIntervalType === 'Decimal'} />}\n label=\"Decimal\"\n />\n </td>\n <td>\n <NumberTextFieldCustom\n value={math.number(math.round(ticksModel.decimalTick, 3))}\n min={math.number(data.minorLimits.min)}\n max={math.number(data.minorLimits.max)}\n customValues={data.minorValues.rounded}\n className={classes.nl}\n inputClassName={classes.numberTextField}\n onChange={changeDecimalTick}\n variant={'outlined'}\n type={'number'}\n disabled={ticksModel.tickIntervalType !== 'Decimal'}\n />\n </td>\n </tr>\n </tbody>\n </table>\n </RadioGroup>\n </div>\n <div className={classes.flexCol2}>\n <label>Label Interval</label>\n <NumberTextFieldCustom\n value={\n ticksModel.tickIntervalType === 'Fraction'\n ? ticksModel.fractionLabel\n : math.number(math.round(ticksModel.decimalLabel, 3))\n }\n className={classes.numberTextField}\n variant={'outlined'}\n customValues={\n ticksModel.tickIntervalType === 'Fraction' ? data.majorValues.fraction : data.majorValues.rounded\n }\n type={ticksModel.tickIntervalType === 'Fraction' ? 'text' : 'number'}\n onChange={ticksModel.tickIntervalType === 'Fraction' ? changeFractionLabel : changeDecimalLabel}\n />\n </div>\n </div>\n );\n};\nTicks.propTypes = {\n classes: PropTypes.object.isRequired,\n onChange: PropTypes.func,\n ticksModel: PropTypes.shape({\n integerTick: PropTypes.number,\n decimalTick: PropTypes.number,\n fractionTick: PropTypes.string,\n tickIntervalType: PropTypes.string,\n fractionLabel: PropTypes.string,\n decimalLabel: PropTypes.number,\n }),\n data: PropTypes.object,\n};\n\nconst styles = () => ({\n displayFlex: {\n display: 'flex',\n },\n flexCol1: {\n display: 'flex',\n 'flex-flow': 'column',\n gap: '10px',\n width: '65%',\n },\n flexCol2: {\n display: 'flex',\n 'flex-flow': 'column',\n gap: '10px',\n },\n radioInputs: {\n display: 'flex',\n alignItems: 'center',\n paddingTop: '5px',\n paddingBottom: '5px',\n },\n numberTextField: {\n maxWidth: '145px',\n },\n tableFixed: {\n 'table-layout': 'fixed',\n width: '100%',\n },\n labelWidth: {\n width: '35%',\n },\n});\nexport default withStyles(styles)(Ticks);\n"],"file":"ticks.js"}
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@pie-element/number-line-configure",
3
3
  "private": true,
4
- "version": "6.2.1",
4
+ "version": "6.2.2",
5
5
  "main": "lib/index.js",
6
6
  "module": "src/index.js",
7
7
  "dependencies": {
8
8
  "@material-ui/core": "^3.9.2",
9
9
  "@pie-framework/pie-configure-events": "^1.3.0",
10
- "@pie-lib/pie-toolbox": "1.4.8",
10
+ "@pie-lib/pie-toolbox": "1.4.7",
11
11
  "react": "^16.8.1",
12
12
  "react-dom": "^16.8.1"
13
13
  }
@@ -3,6 +3,17 @@
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
+ ## [5.1.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line-controller@5.1.1...@pie-element/number-line-controller@5.1.2) (2024-01-08)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * update pie-lib/pie-toolbox PD-3352,PD-3348, PD-3296 ([48b1952](https://github.com/pie-framework/pie-elements/commit/48b1952831835ead598b692abb3d492ec9adb564))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [5.1.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/number-line-controller@5.1.0...@pie-element/number-line-controller@5.1.1) (2024-01-04)
7
18
 
8
19
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/number-line-controller",
3
3
  "private": true,
4
- "version": "5.1.1",
4
+ "version": "5.1.2",
5
5
  "description": "Controller logic for @pie-ui/number-line",
6
6
  "keywords": [
7
7
  "pie",
@@ -14,7 +14,7 @@
14
14
  "access": "public"
15
15
  },
16
16
  "dependencies": {
17
- "@pie-lib/pie-toolbox": "1.4.8",
17
+ "@pie-lib/pie-toolbox": "1.4.7",
18
18
  "lodash": "^4.17.15"
19
19
  },
20
20
  "author": "",
@@ -27,8 +27,6 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
27
27
 
28
28
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
29
 
30
- /*This const will store possible multiplier for label interval that needs to be multiplied
31
- with tick interval with denominator represented with object key.*/
32
30
  var labelMultiplier = {
33
31
  1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
34
32
  2: [1, 2, 4, 6, 8, 10],
@@ -205,12 +203,6 @@ var limit = function limit(v, min, max) {
205
203
 
206
204
  return v;
207
205
  };
208
- /*
209
- * Function to get tick interval limits based on min, max and width entered by the user.
210
- * @param domain object containing max and min value.
211
- * @param width number represents width of number line.
212
- * */
213
-
214
206
 
215
207
  var getMinorLimits = function getMinorLimits(domain, width) {
216
208
  var end = domain.max - domain.min;
@@ -296,13 +288,6 @@ var buildTickDataAsFractions = function buildTickDataAsFractions(domain, width,
296
288
  });
297
289
  return o;
298
290
  };
299
- /*
300
- * This function will generate tick interval values based on min and max limits of ticks.
301
- * @param minorLimits object containing min and max values
302
- * @return out object containing three arrays 1. fraction values, 2. decimal values,
303
- * 3. rounded decimal values upto 3 point precision for tick intervals.
304
- * */
305
-
306
291
 
307
292
  exports.buildTickDataAsFractions = buildTickDataAsFractions;
308
293
 
@@ -334,14 +319,6 @@ var generateMinorValues = function generateMinorValues(minorLimits) {
334
319
 
335
320
  return out;
336
321
  };
337
- /*
338
- * This function will generate label interval values for provided tick interval value.
339
- * @param minor number representing tick interval value.
340
- * @param minorValues object containing array of tick intervals.
341
- * @return out object containing three arrays 1. fraction values, 2. decimal values,
342
- * 3. rounded decimal values upto 3 point precision for label intervals.
343
- * */
344
-
345
322
 
346
323
  exports.generateMinorValues = generateMinorValues;
347
324
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/number-line/graph/tick-utils.js"],"names":["labelMultiplier","fractionSnapTo","min","max","interval","value","fmax","fmin","mod","v","half","div","math","largerEq","abs","d","sub","fn","fn2","snapTo","out","fraction","number","fractionRange","start","end","m","equal","Error","e","subtract","direction","larger","smallerEq","compareFn","next","push","add","zbrErrorMessage","zeroBasedRange","length","a","multiplier","smaller","s","r","map","multiply","reverse","b","simpleRange","positiveRange","negativeRange","together","concat","closeTo","precision","expectedDiff","Math","pow","receivedDiff","limit","getMinorLimits","domain","width","divide","isMultiple","multiple","src","n","normalizeTicks","ticks","opts","useLimit","minorLimits","minor","major","isMajorMultiple","multiplyBy","round","buildTickDataAsFractions","rng","o","filter","x","type","modulo","generateMinorValues","denoms","startValue","floor","endValue","ceil","decimal","rounded","i","denom","val","generateMajorValuesForMinor","minorValues","minorValue","indexOf","split","num","toString","multiplierKey","buildTickData","result","snapElements","elements","size","Number","isFinite","undefined","domainPosition"],"mappings":"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","sourcesContent":["import * as math from 'mathjs';\nimport uniqWith from 'lodash/uniqWith';\nimport isObject from 'lodash/isObject';\nimport isNumber from 'lodash/isNumber';\n\n/*This const will store possible multiplier for label interval that needs to be multiplied \nwith tick interval with denominator represented with object key.*/\nexport const labelMultiplier = {\n 1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n 2: [1, 2, 4, 6, 8, 10],\n 3: [1, 3, 6, 9],\n 4: [1, 2, 4, 8],\n 5: [1, 5, 10],\n 6: [1, 2, 3, 6],\n 7: [1, 7],\n 8: [1, 2, 4, 8],\n 9: [1, 3, 9],\n 10: [1, 2, 5, 10],\n 12: [1, 2, 3, 4, 6],\n 15: [1, 3, 5],\n 16: [1, 2, 4, 8],\n 20: [1, 2, 4, 5, 10],\n 25: [1, 5],\n 32: [1, 2, 4, 8],\n 50: [1, 2, 5, 10],\n 64: [1, 2, 4, 8],\n 100: [1, 2, 4, 5, 10],\n 1000: [1, 2, 4, 5, 8, 10],\n};\n\nexport const fractionSnapTo = (min, max, interval, value) => {\n value = fmax(fmin(value, max), min);\n const mod = value.mod(interval);\n let v;\n\n const half = interval.div(2);\n if (math.largerEq(math.abs(mod), half)) {\n const d = interval.sub(math.abs(mod));\n const fn = math.largerEq(value, 0) ? 'add' : 'sub';\n v = value[fn](d);\n } else {\n const fn2 = math.largerEq(value, 0) ? 'sub' : 'add';\n v = value[fn2](math.abs(mod));\n }\n return v;\n};\n\nexport const snapTo = (min, max, interval, value) => {\n const out = fractionSnapTo(math.fraction(min), math.fraction(max), math.fraction(interval), math.fraction(value));\n return math.number(out);\n};\n\nexport const fractionRange = (start, end, interval) => {\n const m = math.mod(math.abs(start), math.abs(interval));\n if (!math.equal(m, 0)) {\n throw new Error('start point must be divisible by interval');\n }\n\n if (math.equal(start, end)) {\n return [];\n }\n\n const e = math.subtract(end, math.mod(end, math.abs(interval)));\n\n const direction = math.larger(interval, 0) ? 'positive' : 'negative';\n\n if (direction === 'negative' && math.largerEq(end, start)) {\n throw new Error('start must be > than end when doing a negative decrement');\n }\n if (direction === 'positive' && math.smallerEq(end, start)) {\n throw new Error('start must be < end when doing increments');\n }\n const compareFn = direction === 'positive' ? math.smallerEq : math.equal(e, end) ? math.largerEq : math.larger;\n const out = [];\n\n let next = start;\n while (compareFn(next, e)) {\n out.push(next);\n next = math.add(next, interval);\n }\n return out;\n};\n\nexport const zbrErrorMessage = (start, end) =>\n `Can only do a positive or negative range, but got: start: ${start} and end:${end}`;\n\nexport const zeroBasedRange = (start, end, interval) => {\n start = math.fraction(start);\n end = math.fraction(end);\n interval = math.fraction(interval);\n\n const length = math.abs(math.subtract(end, start));\n\n if (math.larger(length, math.abs(end))) {\n throw new Error(zbrErrorMessage(start, end));\n }\n const a = {\n start: math.abs(start),\n end: math.abs(end),\n interval: math.abs(interval),\n multiplier: math.smaller(interval, 0) ? -1 : 1,\n };\n\n const m = math.mod(a.start, a.interval);\n const s = math.larger(m, 0) ? math.add(math.subtract(a.start, m), a.interval) : a.start;\n\n const r = fractionRange(s, a.end, a.interval);\n const out = a.multiplier === -1 ? r.map((v) => math.multiply(v, -1)) : r;\n\n if (math.smaller(interval, 0)) {\n out.reverse();\n }\n return out;\n};\n\nconst fmin = (a, b) => {\n a = math.fraction(a);\n b = math.fraction(b);\n return math.smaller(a, b) ? a : b;\n};\n\nconst fmax = (a, b) => {\n a = math.fraction(a);\n b = math.fraction(b);\n return math.larger(a, b) ? a : b;\n};\n/**\n * the lodash range was causing too much variance in the rounding errors\n * such that it was hard to round the numbers.\n * This is a more simplistic version but makes rounding work.\n */\nexport const simpleRange = (start, end, interval) => {\n start = math.fraction(start);\n end = math.fraction(end);\n interval = math.fraction(interval);\n\n const positiveRange = math.larger(end, 0) ? zeroBasedRange(fmax(0, start), end, interval) : [];\n\n const negativeRange = math.smaller(start, 0) ? zeroBasedRange(fmin(0, end), start, math.multiply(interval, -1)) : [];\n let together = negativeRange.concat(positiveRange);\n\n const out = uniqWith(together, math.equal);\n return out;\n};\n\nexport const closeTo = (a, b, precision) => {\n precision = precision || 2;\n const expectedDiff = Math.pow(10, -precision) / 2;\n const receivedDiff = Math.abs(a - b);\n return receivedDiff < expectedDiff;\n};\n\nconst limit = (v, min, max) => {\n if (math.smaller(fraction(v), fraction(min))) {\n return min;\n }\n\n if (math.larger(fraction(v), fraction(max))) {\n return max;\n }\n\n return v;\n};\n\n/*\n * Function to get tick interval limits based on min, max and width entered by the user.\n * @param domain object containing max and min value.\n * @param width number represents width of number line.\n * */\nexport const getMinorLimits = (domain, width) => {\n const end = domain.max - domain.min;\n const min = math.number(math.multiply(10, math.divide(math.fraction(end), width)));\n const max = math.number(math.multiply(20, min));\n return {\n min: min,\n max: max,\n };\n};\n\nexport const isMultiple = (multiple, src) => {\n const mod = math.mod(multiple, src);\n return math.equal(mod, 0);\n};\n\n/**\n * Accepts a fraction object {n,d,s} or number.\n * @param {*} v\n * @return mathjs.fraction\n */\nexport const fraction = (v) => {\n if (isObject(v)) {\n return math.fraction(v.n * v.s, v.d);\n } else if (isNumber(v)) {\n return math.fraction(v);\n }\n};\n\nexport const normalizeTicks = (domain, width, ticks, opts) => {\n const useLimit = opts ? opts.limit !== false : true;\n const minorLimits = getMinorLimits(domain, width);\n\n const minor = useLimit ? limit(fraction(ticks.minor), minorLimits.min, minorLimits.max) : fraction(ticks.minor);\n const major = useLimit ? limit(fraction(ticks.major), minor, math.multiply(minor, 20)) : fraction(ticks.major);\n\n const isMajorMultiple = isMultiple(major, minor);\n\n if (!isMajorMultiple) {\n const multiplier = math.divide(major, minor);\n const multiplyBy = multiplier <= 2 ? 2 : Math.round(multiplier);\n\n // major must be a multiple of minor\n return { minor, major: math.multiply(minor, multiplyBy) };\n }\n\n return { major, minor };\n};\n\n/**\n * Build ticks as an array of mathjs Fractions\n */\nexport const buildTickDataAsFractions = (domain, width, ticks, opts) => {\n ticks = normalizeTicks(domain, width, ticks, opts);\n const rng = simpleRange(domain.min, domain.max, ticks.minor);\n\n const o = rng\n .filter((x) => math.smallerEq(x, math.fraction(domain.max)))\n .map((x) => {\n let type = 'minor';\n const modulo = math.mod(x, ticks.major);\n\n if (closeTo(math.number(modulo), 0)) {\n type = 'major';\n }\n\n return { x, type };\n });\n\n return o;\n};\n\n/*\n * This function will generate tick interval values based on min and max limits of ticks.\n * @param minorLimits object containing min and max values\n * @return out object containing three arrays 1. fraction values, 2. decimal values,\n * 3. rounded decimal values upto 3 point precision for tick intervals.\n * */\nexport const generateMinorValues = (minorLimits) => {\n const denoms = [1000, 100, 64, 50, 32, 25, 20, 16, 15, 12, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1];\n const startValue = math.floor(minorLimits.min);\n const endValue = math.ceil(minorLimits.max);\n let out = { fraction: [], decimal: [], rounded: [] };\n for (let i = startValue; i < endValue; i++) {\n denoms.map((denom) => {\n let val = math.add(i, math.fraction(1, denom));\n if (val <= minorLimits.max && val >= minorLimits.min) {\n out.fraction.push(val.n + '/' + val.d);\n out.decimal.push(math.number(val));\n out.rounded.push(math.number(math.round(val, 3)));\n }\n });\n }\n return out;\n};\n\n/*\n * This function will generate label interval values for provided tick interval value.\n * @param minor number representing tick interval value.\n * @param minorValues object containing array of tick intervals.\n * @return out object containing three arrays 1. fraction values, 2. decimal values,\n * 3. rounded decimal values upto 3 point precision for label intervals.\n * */\nexport const generateMajorValuesForMinor = (minor, minorValues) => {\n let out = { decimal: [], fraction: [], rounded: [] };\n let minorValue = math.number(minor);\n let fraction = minorValues.fraction[minorValues.decimal.indexOf(minorValue)];\n let n = math.number(fraction.split('/')[0]);\n let d = math.number(fraction.split('/')[1]);\n if (n >= 1 && d === 1) {\n for (let i = 1; i <= 10; i++) {\n let num = math.number(math.multiply(n, i));\n out.fraction.push(num.toString());\n out.decimal.push(num);\n out.rounded.push(num);\n }\n } else {\n for (const multiplierKey in labelMultiplier[d]) {\n let num = math.multiply(math.fraction(n, d), labelMultiplier[d][multiplierKey]);\n if (num.d !== 1) {\n out.fraction.push(num.n + '/' + num.d);\n } else {\n out.fraction.push(num.n.toString());\n }\n out.decimal.push(math.number(num));\n out.rounded.push(math.number(math.round(num, 3)));\n }\n }\n return out;\n};\n\nexport const buildTickData = (domain, width, ticks, opts) => {\n const result = buildTickDataAsFractions(domain, width, ticks, opts);\n\n const out = result.map((o) => (opts.fraction ? o : { ...o, x: math.number(o.x) || 0 }));\n\n return out;\n};\n\nexport const snapElements = (domain, ticks, elements) => {\n return elements.map((e) => {\n const size = Number.isFinite(e.size) ? snapTo(0, e.size, ticks.minor, e.size) : undefined;\n const domainPosition = snapTo(domain.min, domain.max, ticks.minor, e.domainPosition);\n const out = { ...e, domainPosition };\n\n if (Number.isFinite(size)) {\n out.size = size;\n }\n\n return out;\n });\n};\n"],"file":"tick-utils.js"}
1
+ {"version":3,"sources":["../../../src/number-line/graph/tick-utils.js"],"names":["labelMultiplier","fractionSnapTo","min","max","interval","value","fmax","fmin","mod","v","half","div","math","largerEq","abs","d","sub","fn","fn2","snapTo","out","fraction","number","fractionRange","start","end","m","equal","Error","e","subtract","direction","larger","smallerEq","compareFn","next","push","add","zbrErrorMessage","zeroBasedRange","length","a","multiplier","smaller","s","r","map","multiply","reverse","b","simpleRange","positiveRange","negativeRange","together","concat","closeTo","precision","expectedDiff","Math","pow","receivedDiff","limit","getMinorLimits","domain","width","divide","isMultiple","multiple","src","n","normalizeTicks","ticks","opts","useLimit","minorLimits","minor","major","isMajorMultiple","multiplyBy","round","buildTickDataAsFractions","rng","o","filter","x","type","modulo","generateMinorValues","denoms","startValue","floor","endValue","ceil","decimal","rounded","i","denom","val","generateMajorValuesForMinor","minorValues","minorValue","indexOf","split","num","toString","multiplierKey","buildTickData","result","snapElements","elements","size","Number","isFinite","undefined","domainPosition"],"mappings":"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","sourcesContent":["import * as math from 'mathjs';\nimport uniqWith from 'lodash/uniqWith';\nimport isObject from 'lodash/isObject';\nimport isNumber from 'lodash/isNumber';\n\nexport const labelMultiplier = {\n 1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n 2: [1, 2, 4, 6, 8, 10],\n 3: [1, 3, 6, 9],\n 4: [1, 2, 4, 8],\n 5: [1, 5, 10],\n 6: [1, 2, 3, 6],\n 7: [1, 7],\n 8: [1, 2, 4, 8],\n 9: [1, 3, 9],\n 10: [1, 2, 5, 10],\n 12: [1, 2, 3, 4, 6],\n 15: [1, 3, 5],\n 16: [1, 2, 4, 8],\n 20: [1, 2, 4, 5, 10],\n 25: [1, 5],\n 32: [1, 2, 4, 8],\n 50: [1, 2, 5, 10],\n 64: [1, 2, 4, 8],\n 100: [1, 2, 4, 5, 10],\n 1000: [1, 2, 4, 5, 8, 10],\n};\n\nexport const fractionSnapTo = (min, max, interval, value) => {\n value = fmax(fmin(value, max), min);\n const mod = value.mod(interval);\n let v;\n\n const half = interval.div(2);\n if (math.largerEq(math.abs(mod), half)) {\n const d = interval.sub(math.abs(mod));\n const fn = math.largerEq(value, 0) ? 'add' : 'sub';\n v = value[fn](d);\n } else {\n const fn2 = math.largerEq(value, 0) ? 'sub' : 'add';\n v = value[fn2](math.abs(mod));\n }\n return v;\n};\n\nexport const snapTo = (min, max, interval, value) => {\n const out = fractionSnapTo(math.fraction(min), math.fraction(max), math.fraction(interval), math.fraction(value));\n return math.number(out);\n};\n\nexport const fractionRange = (start, end, interval) => {\n const m = math.mod(math.abs(start), math.abs(interval));\n if (!math.equal(m, 0)) {\n throw new Error('start point must be divisible by interval');\n }\n\n if (math.equal(start, end)) {\n return [];\n }\n\n const e = math.subtract(end, math.mod(end, math.abs(interval)));\n\n const direction = math.larger(interval, 0) ? 'positive' : 'negative';\n\n if (direction === 'negative' && math.largerEq(end, start)) {\n throw new Error('start must be > than end when doing a negative decrement');\n }\n if (direction === 'positive' && math.smallerEq(end, start)) {\n throw new Error('start must be < end when doing increments');\n }\n const compareFn = direction === 'positive' ? math.smallerEq : math.equal(e, end) ? math.largerEq : math.larger;\n const out = [];\n\n let next = start;\n while (compareFn(next, e)) {\n out.push(next);\n next = math.add(next, interval);\n }\n return out;\n};\n\nexport const zbrErrorMessage = (start, end) =>\n `Can only do a positive or negative range, but got: start: ${start} and end:${end}`;\n\nexport const zeroBasedRange = (start, end, interval) => {\n start = math.fraction(start);\n end = math.fraction(end);\n interval = math.fraction(interval);\n\n const length = math.abs(math.subtract(end, start));\n\n if (math.larger(length, math.abs(end))) {\n throw new Error(zbrErrorMessage(start, end));\n }\n const a = {\n start: math.abs(start),\n end: math.abs(end),\n interval: math.abs(interval),\n multiplier: math.smaller(interval, 0) ? -1 : 1,\n };\n\n const m = math.mod(a.start, a.interval);\n const s = math.larger(m, 0) ? math.add(math.subtract(a.start, m), a.interval) : a.start;\n\n const r = fractionRange(s, a.end, a.interval);\n const out = a.multiplier === -1 ? r.map((v) => math.multiply(v, -1)) : r;\n\n if (math.smaller(interval, 0)) {\n out.reverse();\n }\n return out;\n};\n\nconst fmin = (a, b) => {\n a = math.fraction(a);\n b = math.fraction(b);\n return math.smaller(a, b) ? a : b;\n};\n\nconst fmax = (a, b) => {\n a = math.fraction(a);\n b = math.fraction(b);\n return math.larger(a, b) ? a : b;\n};\n/**\n * the lodash range was causing too much variance in the rounding errors\n * such that it was hard to round the numbers.\n * This is a more simplistic version but makes rounding work.\n */\nexport const simpleRange = (start, end, interval) => {\n start = math.fraction(start);\n end = math.fraction(end);\n interval = math.fraction(interval);\n\n const positiveRange = math.larger(end, 0) ? zeroBasedRange(fmax(0, start), end, interval) : [];\n\n const negativeRange = math.smaller(start, 0) ? zeroBasedRange(fmin(0, end), start, math.multiply(interval, -1)) : [];\n let together = negativeRange.concat(positiveRange);\n\n const out = uniqWith(together, math.equal);\n return out;\n};\n\nexport const closeTo = (a, b, precision) => {\n precision = precision || 2;\n const expectedDiff = Math.pow(10, -precision) / 2;\n const receivedDiff = Math.abs(a - b);\n return receivedDiff < expectedDiff;\n};\n\nconst limit = (v, min, max) => {\n if (math.smaller(fraction(v), fraction(min))) {\n return min;\n }\n\n if (math.larger(fraction(v), fraction(max))) {\n return max;\n }\n\n return v;\n};\n\nexport const getMinorLimits = (domain, width) => {\n const end = domain.max - domain.min;\n const min = math.number(math.multiply(10, math.divide(math.fraction(end), width)));\n const max = math.number(math.multiply(20, min));\n return {\n min: min,\n max: max,\n };\n};\n\nexport const isMultiple = (multiple, src) => {\n const mod = math.mod(multiple, src);\n return math.equal(mod, 0);\n};\n\n/**\n * Accepts a fraction object {n,d,s} or number.\n * @param {*} v\n * @return mathjs.fraction\n */\nexport const fraction = (v) => {\n if (isObject(v)) {\n return math.fraction(v.n * v.s, v.d);\n } else if (isNumber(v)) {\n return math.fraction(v);\n }\n};\n\nexport const normalizeTicks = (domain, width, ticks, opts) => {\n const useLimit = opts ? opts.limit !== false : true;\n const minorLimits = getMinorLimits(domain, width);\n\n const minor = useLimit ? limit(fraction(ticks.minor), minorLimits.min, minorLimits.max) : fraction(ticks.minor);\n const major = useLimit ? limit(fraction(ticks.major), minor, math.multiply(minor, 20)) : fraction(ticks.major);\n\n const isMajorMultiple = isMultiple(major, minor);\n\n if (!isMajorMultiple) {\n const multiplier = math.divide(major, minor);\n const multiplyBy = multiplier <= 2 ? 2 : Math.round(multiplier);\n\n // major must be a multiple of minor\n return { minor, major: math.multiply(minor, multiplyBy) };\n }\n\n return { major, minor };\n};\n\n/**\n * Build ticks as an array of mathjs Fractions\n */\nexport const buildTickDataAsFractions = (domain, width, ticks, opts) => {\n ticks = normalizeTicks(domain, width, ticks, opts);\n const rng = simpleRange(domain.min, domain.max, ticks.minor);\n\n const o = rng\n .filter((x) => math.smallerEq(x, math.fraction(domain.max)))\n .map((x) => {\n let type = 'minor';\n const modulo = math.mod(x, ticks.major);\n\n if (closeTo(math.number(modulo), 0)) {\n type = 'major';\n }\n\n return { x, type };\n });\n\n return o;\n};\n\nexport const generateMinorValues = (minorLimits) => {\n const denoms = [1000, 100, 64, 50, 32, 25, 20, 16, 15, 12, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1];\n const startValue = math.floor(minorLimits.min);\n const endValue = math.ceil(minorLimits.max);\n let out = { fraction: [], decimal: [], rounded: [] };\n for (let i = startValue; i < endValue; i++) {\n denoms.map((denom) => {\n let val = math.add(i, math.fraction(1, denom));\n if (val <= minorLimits.max && val >= minorLimits.min) {\n out.fraction.push(val.n + '/' + val.d);\n out.decimal.push(math.number(val));\n out.rounded.push(math.number(math.round(val, 3)));\n }\n });\n }\n return out;\n};\n\nexport const generateMajorValuesForMinor = (minor, minorValues) => {\n let out = { decimal: [], fraction: [], rounded: [] };\n let minorValue = math.number(minor);\n let fraction = minorValues.fraction[minorValues.decimal.indexOf(minorValue)];\n let n = math.number(fraction.split('/')[0]);\n let d = math.number(fraction.split('/')[1]);\n if (n >= 1 && d === 1) {\n for (let i = 1; i <= 10; i++) {\n let num = math.number(math.multiply(n, i));\n out.fraction.push(num.toString());\n out.decimal.push(num);\n out.rounded.push(num);\n }\n } else {\n for (const multiplierKey in labelMultiplier[d]) {\n let num = math.multiply(math.fraction(n, d), labelMultiplier[d][multiplierKey]);\n if (num.d !== 1) {\n out.fraction.push(num.n + '/' + num.d);\n } else {\n out.fraction.push(num.n.toString());\n }\n out.decimal.push(math.number(num));\n out.rounded.push(math.number(math.round(num, 3)));\n }\n }\n return out;\n};\n\nexport const buildTickData = (domain, width, ticks, opts) => {\n const result = buildTickDataAsFractions(domain, width, ticks, opts);\n\n const out = result.map((o) => (opts.fraction ? o : { ...o, x: math.number(o.x) || 0 }));\n\n return out;\n};\n\nexport const snapElements = (domain, ticks, elements) => {\n return elements.map((e) => {\n const size = Number.isFinite(e.size) ? snapTo(0, e.size, ticks.minor, e.size) : undefined;\n const domainPosition = snapTo(domain.min, domain.max, ticks.minor, e.domainPosition);\n const out = { ...e, domainPosition };\n\n if (Number.isFinite(size)) {\n out.size = size;\n }\n\n return out;\n });\n};\n"],"file":"tick-utils.js"}
@@ -151,13 +151,11 @@ var PointChooser = /*#__PURE__*/function (_React$Component) {
151
151
  }, /*#__PURE__*/_react["default"].createElement(DeleteIcon, {
152
152
  classes: classes
153
153
  })), /*#__PURE__*/_react["default"].createElement(_button["default"], {
154
- className: classes.buttonText,
155
154
  onClick: onUndoElement,
156
155
  label: translator.t('common:undo', {
157
156
  lng: language
158
157
  })
159
158
  }), /*#__PURE__*/_react["default"].createElement(_button["default"], {
160
- className: classes.buttonText,
161
159
  onClick: onClearElements,
162
160
  label: translator.t('numberLine.clearAll', {
163
161
  lng: language
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/number-line/point-chooser/index.jsx"],"names":["translator","Translator","DeleteIcon","classes","deleteIcon","propTypes","PropTypes","object","RawPoint","props","iconKey","active","onClick","names","string","isRequired","bool","func","Point","styles","Points","selectPoint","selected","icons","iconTags","map","key","bind","toLowerCase","elementSelector","array","PointChooser","elementType","showDeleteButton","onDeleteClick","onUndoElement","onClearElements","onElementType","language","pointChooser","controls","deleteIconHolder","buttonText","t","lng","React","Component","DEFAULT_TYPE"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\nimport injectSheet from 'react-jss';\nimport styles from './styles';\nimport PropTypes from 'prop-types';\nimport Button from './button';\nimport Translator from '@pie-lib/pie-toolbox/translator';\n\nconst { translator } = Translator;\n\nconst DeleteIcon = ({ classes }) => {\n return (\n <svg\n className={classes.deleteIcon}\n fill=\"#000000\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\" />\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n </svg>\n );\n};\n\nDeleteIcon.propTypes = {\n classes: PropTypes.object,\n};\n\nconst RawPoint = (props) => {\n const { iconKey, active, classes, onClick } = props;\n const names = classNames(classes[iconKey], { active });\n return (\n <span role=\"presentation\" key={iconKey} onClick={onClick}>\n <a className={names}>&nbsp;</a>\n </span>\n );\n};\n\nRawPoint.propTypes = {\n iconKey: PropTypes.string.isRequired,\n active: PropTypes.bool,\n classes: PropTypes.object,\n onClick: PropTypes.func,\n};\n\nexport const Point = injectSheet(styles)(RawPoint);\n\nconst Points = ({ selectPoint, classes, selected, icons }) => {\n const iconTags = icons.map((key) => {\n let active = key === selected;\n let onClick = active ? () => {} : selectPoint.bind(null, key);\n return <Point key={key.toLowerCase()} iconKey={key.toLowerCase()} active={active} onClick={onClick} />; //icon(key, active);\n });\n\n return <div className={classes.elementSelector}>{iconTags}</div>;\n};\n\nPoints.propTypes = {\n selectPoint: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n selected: PropTypes.string,\n icons: PropTypes.array,\n};\n\nexport class PointChooser extends React.Component {\n static defaultProps = {\n showDeleteButton: false,\n elementType: PointChooser.DEFAULT_TYPE,\n icons: ['pf', 'lff', 'lef', 'lfe', 'lee', 'rfn', 'rfp', 'ren', 'rep'],\n };\n\n static propTypes = {\n classes: PropTypes.object.isRequired,\n elementType: PropTypes.string,\n showDeleteButton: PropTypes.bool,\n onDeleteClick: PropTypes.func.isRequired,\n onElementType: PropTypes.func.isRequired,\n onUndoElement: PropTypes.func.isRequired,\n onClearElements: PropTypes.func.isRequired,\n icons: PropTypes.array,\n language: PropTypes.string,\n };\n\n render() {\n const {\n elementType,\n showDeleteButton,\n onDeleteClick,\n onUndoElement,\n onClearElements,\n icons,\n classes,\n onElementType,\n language,\n } = this.props;\n\n return (\n <div className={classes.pointChooser}>\n <Points selected={elementType} classes={classes} selectPoint={onElementType} icons={icons} />\n <div className={classes.controls}>\n {showDeleteButton && (\n <span className={classes.deleteIconHolder} onClick={onDeleteClick}>\n <DeleteIcon classes={classes} />\n </span>\n )}\n <Button\n className={classes.buttonText}\n onClick={onUndoElement}\n label={translator.t('common:undo', { lng: language })}\n />\n <Button\n className={classes.buttonText}\n onClick={onClearElements}\n label={translator.t('numberLine.clearAll', { lng: language })}\n />\n </div>\n </div>\n );\n }\n}\n\nexport default injectSheet(styles)(PointChooser);\n\nPointChooser.DEFAULT_TYPE = 'pf';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/number-line/point-chooser/index.jsx"],"names":["translator","Translator","DeleteIcon","classes","deleteIcon","propTypes","PropTypes","object","RawPoint","props","iconKey","active","onClick","names","string","isRequired","bool","func","Point","styles","Points","selectPoint","selected","icons","iconTags","map","key","bind","toLowerCase","elementSelector","array","PointChooser","elementType","showDeleteButton","onDeleteClick","onUndoElement","onClearElements","onElementType","language","pointChooser","controls","deleteIconHolder","t","lng","React","Component","DEFAULT_TYPE"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\nimport injectSheet from 'react-jss';\nimport styles from './styles';\nimport PropTypes from 'prop-types';\nimport Button from './button';\nimport Translator from '@pie-lib/pie-toolbox/translator';\n\nconst { translator } = Translator;\n\nconst DeleteIcon = ({ classes }) => {\n return (\n <svg\n className={classes.deleteIcon}\n fill=\"#000000\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\" />\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n </svg>\n );\n};\n\nDeleteIcon.propTypes = {\n classes: PropTypes.object,\n};\n\nconst RawPoint = (props) => {\n const { iconKey, active, classes, onClick } = props;\n const names = classNames(classes[iconKey], { active });\n return (\n <span role=\"presentation\" key={iconKey} onClick={onClick}>\n <a className={names}>&nbsp;</a>\n </span>\n );\n};\n\nRawPoint.propTypes = {\n iconKey: PropTypes.string.isRequired,\n active: PropTypes.bool,\n classes: PropTypes.object,\n onClick: PropTypes.func,\n};\n\nexport const Point = injectSheet(styles)(RawPoint);\n\nconst Points = ({ selectPoint, classes, selected, icons }) => {\n const iconTags = icons.map((key) => {\n let active = key === selected;\n let onClick = active ? () => {} : selectPoint.bind(null, key);\n return <Point key={key.toLowerCase()} iconKey={key.toLowerCase()} active={active} onClick={onClick} />; //icon(key, active);\n });\n\n return <div className={classes.elementSelector}>{iconTags}</div>;\n};\n\nPoints.propTypes = {\n selectPoint: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n selected: PropTypes.string,\n icons: PropTypes.array,\n};\n\nexport class PointChooser extends React.Component {\n static defaultProps = {\n showDeleteButton: false,\n elementType: PointChooser.DEFAULT_TYPE,\n icons: ['pf', 'lff', 'lef', 'lfe', 'lee', 'rfn', 'rfp', 'ren', 'rep'],\n };\n\n static propTypes = {\n classes: PropTypes.object.isRequired,\n elementType: PropTypes.string,\n showDeleteButton: PropTypes.bool,\n onDeleteClick: PropTypes.func.isRequired,\n onElementType: PropTypes.func.isRequired,\n onUndoElement: PropTypes.func.isRequired,\n onClearElements: PropTypes.func.isRequired,\n icons: PropTypes.array,\n language: PropTypes.string,\n };\n\n render() {\n const {\n elementType,\n showDeleteButton,\n onDeleteClick,\n onUndoElement,\n onClearElements,\n icons,\n classes,\n onElementType,\n language\n } = this.props;\n\n return (\n <div className={classes.pointChooser}>\n <Points selected={elementType} classes={classes} selectPoint={onElementType} icons={icons} />\n <div className={classes.controls}>\n {showDeleteButton && (\n <span className={classes.deleteIconHolder} onClick={onDeleteClick}>\n <DeleteIcon classes={classes} />\n </span>\n )}\n <Button onClick={onUndoElement} label={translator.t('common:undo', { lng: language })} />\n <Button onClick={onClearElements} label={translator.t('numberLine.clearAll', { lng: language })} />\n </div>\n </div>\n );\n }\n}\n\nexport default injectSheet(styles)(PointChooser);\n\nPointChooser.DEFAULT_TYPE = 'pf';\n"],"file":"index.js"}
@@ -83,9 +83,6 @@ var _default = {
83
83
  display: 'flex',
84
84
  paddingTop: '7px'
85
85
  },
86
- buttonText: {
87
- textWrap: 'nowrap'
88
- },
89
86
  pf: styleElement(0),
90
87
  lff: styleElement(1),
91
88
  lef: styleElement(2),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/number-line/point-chooser/styles.js"],"names":["iconHeight","iconWidth","noselect","styleElement","index","display","width","height","position","top","cursor","background","img","backgroundPosition","textDecoration","pointChooser","justifyContent","borderRadius","padding","deleteIconHolder","deleteIcon","fill","transition","opacity","elementSelector","Object","assign","controls","paddingTop","buttonText","textWrap","pf","lff","lef","lfe","lee","rfn","rfp","ren","rep"],"mappings":";;;;;;;;;AAGA;;AAHA,IAAMA,UAAU,GAAG,EAAnB;AACA,IAAMC,SAAS,GAAG,EAAlB;;AAIA,IAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAO;AACtB,6BAAyB;AAAO;AADV;AAEtB,2BAAuB;AAAO;AAFR;AAGtB,0BAAsB;AAAO;AAHP;AAItB,wBAAoB;AAAO;AAJL;AAKtB,uBAAmB;AAAO;AALJ;AAMtB,mBAAe;AAAO;AACxB;;AAPwB,GAAP;AAAA,CAAjB;;AAUA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD;AAAA,SAAY;AAC/BC,IAAAA,OAAO,EAAE,cADsB;AAE/BC,IAAAA,KAAK,EAAEL,SAFwB;AAG/BM,IAAAA,MAAM,EAAEP,UAHuB;AAI/BQ,IAAAA,QAAQ,EAAE,UAJqB;AAK/BC,IAAAA,GAAG,EAAE,KAL0B;AAM/BC,IAAAA,MAAM,EAAE,SANuB;AAO/BC,IAAAA,UAAU,gBAASC,eAAT,gBAAkBR,KAAK,GAAGH,SAA1B,WAPqB;AAQ/B,gCAA4B;AAC1BY,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8B,IAAID,UAAlC;AADQ,KARG;AAW/B,eAAW;AACTc,MAAAA,cAAc,EAAE,MADP;AAETD,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8BD,UAA9B;AAFT;AAXoB,GAAZ;AAAA,CAArB;;eAiBe;AACbe,EAAAA,YAAY,EAAE;AACZV,IAAAA,OAAO,EAAE,MADG;AAEZW,IAAAA,cAAc,EAAE,eAFJ;AAGZC,IAAAA,YAAY,EAAE,KAHF;AAIZC,IAAAA,OAAO,EAAE;AAJG,GADD;AAObC,EAAAA,gBAAgB,EAAE;AAChBX,IAAAA,QAAQ,EAAE,UADM;AAEhBC,IAAAA,GAAG,EAAE,KAFW;AAGhBH,IAAAA,KAAK,EAAE;AAHS,GAPL;AAYbc,EAAAA,UAAU,EAAE;AACVC,IAAAA,IAAI,EAAE,OADI;AAEVX,IAAAA,MAAM,EAAE,SAFE;AAGVY,IAAAA,UAAU,EAAE,sBAHF;AAIV,eAAW;AACTC,MAAAA,OAAO,EAAE;AADA;AAJD,GAZC;AAoBbC,EAAAA,eAAe,EAAEC,MAAM,CAACC,MAAP,CACf;AACEpB,IAAAA,KAAK,EAAE,KADT;AAEEY,IAAAA,OAAO,EAAE;AAFX,GADe,EAKfhB,QAAQ,EALO,CApBJ;AA2BbyB,EAAAA,QAAQ,EAAE;AACRtB,IAAAA,OAAO,EAAE,MADD;AAERuB,IAAAA,UAAU,EAAE;AAFJ,GA3BG;AA+BbC,EAAAA,UAAU,EAAE;AACVC,IAAAA,QAAQ,EAAE;AADA,GA/BC;AAkCbC,EAAAA,EAAE,EAAE5B,YAAY,CAAC,CAAD,CAlCH;AAmCb6B,EAAAA,GAAG,EAAE7B,YAAY,CAAC,CAAD,CAnCJ;AAoCb8B,EAAAA,GAAG,EAAE9B,YAAY,CAAC,CAAD,CApCJ;AAqCb+B,EAAAA,GAAG,EAAE/B,YAAY,CAAC,CAAD,CArCJ;AAsCbgC,EAAAA,GAAG,EAAEhC,YAAY,CAAC,CAAD,CAtCJ;AAuCbiC,EAAAA,GAAG,EAAEjC,YAAY,CAAC,CAAD,CAvCJ;AAwCbkC,EAAAA,GAAG,EAAElC,YAAY,CAAC,CAAD,CAxCJ;AAyCbmC,EAAAA,GAAG,EAAEnC,YAAY,CAAC,CAAD,CAzCJ;AA0CboC,EAAAA,GAAG,EAAEpC,YAAY,CAAC,CAAD;AA1CJ,C","sourcesContent":["const iconHeight = 41;\nconst iconWidth = 42;\n\nimport img from './img';\n\nconst noselect = () => ({\n '-webkit-touch-callout': 'none' /* iOS Safari */,\n '-webkit-user-select': 'none' /* Safari */,\n '-khtml-user-select': 'none' /* Konqueror HTML */,\n '-moz-user-select': 'none' /* Firefox */,\n '-ms-user-select': 'none' /* Internet Explorer/Edge */,\n 'user-select': 'none' /* Non-prefixed version, currently\n supported by Chrome and Opera */,\n});\n\nconst styleElement = (index) => ({\n display: 'inline-block',\n width: iconWidth,\n height: iconHeight,\n position: 'relative',\n top: '1px',\n cursor: 'pointer',\n background: `url(${img}) -${index * iconWidth}px 0px`,\n '&.active, &.active:hover': {\n backgroundPosition: `-${index * iconWidth}px -${2 * iconHeight}px`,\n },\n '&:hover': {\n textDecoration: 'none',\n backgroundPosition: `-${index * iconWidth}px -${iconHeight}px`,\n },\n});\n\nexport default {\n pointChooser: {\n display: 'flex',\n justifyContent: 'space-between',\n borderRadius: '4px',\n padding: '1px',\n },\n deleteIconHolder: {\n position: 'relative',\n top: '3px',\n width: '30px',\n },\n deleteIcon: {\n fill: 'black',\n cursor: 'pointer',\n transition: 'opacity 100ms linear',\n '&:hover': {\n opacity: '0.5',\n },\n },\n elementSelector: Object.assign(\n {\n width: '55%',\n padding: '1px',\n },\n noselect(),\n ),\n controls: {\n display: 'flex',\n paddingTop: '7px',\n },\n buttonText: {\n textWrap: 'nowrap',\n },\n pf: styleElement(0),\n lff: styleElement(1),\n lef: styleElement(2),\n lfe: styleElement(3),\n lee: styleElement(4),\n rfn: styleElement(5),\n rfp: styleElement(6),\n ren: styleElement(7),\n rep: styleElement(8),\n};\n"],"file":"styles.js"}
1
+ {"version":3,"sources":["../../../src/number-line/point-chooser/styles.js"],"names":["iconHeight","iconWidth","noselect","styleElement","index","display","width","height","position","top","cursor","background","img","backgroundPosition","textDecoration","pointChooser","justifyContent","borderRadius","padding","deleteIconHolder","deleteIcon","fill","transition","opacity","elementSelector","Object","assign","controls","paddingTop","pf","lff","lef","lfe","lee","rfn","rfp","ren","rep"],"mappings":";;;;;;;;;AAGA;;AAHA,IAAMA,UAAU,GAAG,EAAnB;AACA,IAAMC,SAAS,GAAG,EAAlB;;AAIA,IAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAO;AACtB,6BAAyB;AAAO;AADV;AAEtB,2BAAuB;AAAO;AAFR;AAGtB,0BAAsB;AAAO;AAHP;AAItB,wBAAoB;AAAO;AAJL;AAKtB,uBAAmB;AAAO;AALJ;AAMtB,mBAAe;AAAO;AACxB;;AAPwB,GAAP;AAAA,CAAjB;;AAUA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD;AAAA,SAAY;AAC/BC,IAAAA,OAAO,EAAE,cADsB;AAE/BC,IAAAA,KAAK,EAAEL,SAFwB;AAG/BM,IAAAA,MAAM,EAAEP,UAHuB;AAI/BQ,IAAAA,QAAQ,EAAE,UAJqB;AAK/BC,IAAAA,GAAG,EAAE,KAL0B;AAM/BC,IAAAA,MAAM,EAAE,SANuB;AAO/BC,IAAAA,UAAU,gBAASC,eAAT,gBAAkBR,KAAK,GAAGH,SAA1B,WAPqB;AAQ/B,gCAA4B;AAC1BY,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8B,IAAID,UAAlC;AADQ,KARG;AAW/B,eAAW;AACTc,MAAAA,cAAc,EAAE,MADP;AAETD,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8BD,UAA9B;AAFT;AAXoB,GAAZ;AAAA,CAArB;;eAiBe;AACbe,EAAAA,YAAY,EAAE;AACZV,IAAAA,OAAO,EAAE,MADG;AAEZW,IAAAA,cAAc,EAAE,eAFJ;AAGZC,IAAAA,YAAY,EAAE,KAHF;AAIZC,IAAAA,OAAO,EAAE;AAJG,GADD;AAObC,EAAAA,gBAAgB,EAAE;AAChBX,IAAAA,QAAQ,EAAE,UADM;AAEhBC,IAAAA,GAAG,EAAE,KAFW;AAGhBH,IAAAA,KAAK,EAAE;AAHS,GAPL;AAYbc,EAAAA,UAAU,EAAE;AACVC,IAAAA,IAAI,EAAE,OADI;AAEVX,IAAAA,MAAM,EAAE,SAFE;AAGVY,IAAAA,UAAU,EAAE,sBAHF;AAIV,eAAW;AACTC,MAAAA,OAAO,EAAE;AADA;AAJD,GAZC;AAoBbC,EAAAA,eAAe,EAAEC,MAAM,CAACC,MAAP,CACf;AACEpB,IAAAA,KAAK,EAAE,KADT;AAEEY,IAAAA,OAAO,EAAE;AAFX,GADe,EAKfhB,QAAQ,EALO,CApBJ;AA2BbyB,EAAAA,QAAQ,EAAE;AACRtB,IAAAA,OAAO,EAAE,MADD;AAERuB,IAAAA,UAAU,EAAE;AAFJ,GA3BG;AA+BbC,EAAAA,EAAE,EAAE1B,YAAY,CAAC,CAAD,CA/BH;AAgCb2B,EAAAA,GAAG,EAAE3B,YAAY,CAAC,CAAD,CAhCJ;AAiCb4B,EAAAA,GAAG,EAAE5B,YAAY,CAAC,CAAD,CAjCJ;AAkCb6B,EAAAA,GAAG,EAAE7B,YAAY,CAAC,CAAD,CAlCJ;AAmCb8B,EAAAA,GAAG,EAAE9B,YAAY,CAAC,CAAD,CAnCJ;AAoCb+B,EAAAA,GAAG,EAAE/B,YAAY,CAAC,CAAD,CApCJ;AAqCbgC,EAAAA,GAAG,EAAEhC,YAAY,CAAC,CAAD,CArCJ;AAsCbiC,EAAAA,GAAG,EAAEjC,YAAY,CAAC,CAAD,CAtCJ;AAuCbkC,EAAAA,GAAG,EAAElC,YAAY,CAAC,CAAD;AAvCJ,C","sourcesContent":["const iconHeight = 41;\nconst iconWidth = 42;\n\nimport img from './img';\n\nconst noselect = () => ({\n '-webkit-touch-callout': 'none' /* iOS Safari */,\n '-webkit-user-select': 'none' /* Safari */,\n '-khtml-user-select': 'none' /* Konqueror HTML */,\n '-moz-user-select': 'none' /* Firefox */,\n '-ms-user-select': 'none' /* Internet Explorer/Edge */,\n 'user-select': 'none' /* Non-prefixed version, currently\n supported by Chrome and Opera */,\n});\n\nconst styleElement = (index) => ({\n display: 'inline-block',\n width: iconWidth,\n height: iconHeight,\n position: 'relative',\n top: '1px',\n cursor: 'pointer',\n background: `url(${img}) -${index * iconWidth}px 0px`,\n '&.active, &.active:hover': {\n backgroundPosition: `-${index * iconWidth}px -${2 * iconHeight}px`,\n },\n '&:hover': {\n textDecoration: 'none',\n backgroundPosition: `-${index * iconWidth}px -${iconHeight}px`,\n },\n});\n\nexport default {\n pointChooser: {\n display: 'flex',\n justifyContent: 'space-between',\n borderRadius: '4px',\n padding: '1px',\n },\n deleteIconHolder: {\n position: 'relative',\n top: '3px',\n width: '30px',\n },\n deleteIcon: {\n fill: 'black',\n cursor: 'pointer',\n transition: 'opacity 100ms linear',\n '&:hover': {\n opacity: '0.5',\n },\n },\n elementSelector: Object.assign(\n {\n width: '55%',\n padding: '1px',\n },\n noselect(),\n ),\n controls: {\n display: 'flex',\n paddingTop: '7px',\n },\n pf: styleElement(0),\n lff: styleElement(1),\n lef: styleElement(2),\n lfe: styleElement(3),\n lee: styleElement(4),\n rfn: styleElement(5),\n rfp: styleElement(6),\n ren: styleElement(7),\n rep: styleElement(8),\n};\n"],"file":"styles.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/number-line",
3
- "version": "7.2.2-next.25+658a55358",
3
+ "version": "7.2.2",
4
4
  "repository": "pie-framework/pie-elements",
5
5
  "description": "",
6
6
  "publishConfig": {
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "dependencies": {
10
10
  "@material-ui/core": "^3.9.2",
11
- "@pie-lib/pie-toolbox": "1.4.8",
11
+ "@pie-lib/pie-toolbox": "1.4.7",
12
12
  "classnames": "^2.2.5",
13
13
  "d3-scale": "^3.2.1",
14
14
  "d3-selection": "^1.4.1",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "author": "pie framework developers",
25
25
  "license": "ISC",
26
- "gitHead": "658a55358181271b508f7d550467eefadcd71544",
26
+ "gitHead": "eb3cc5d6d16b67f7ccc1cf295a832f8dab4d679e",
27
27
  "scripts": {
28
28
  "postpublish": "../../scripts/postpublish"
29
29
  },