@pie-element/number-line 11.3.4-next.3 → 12.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/CHANGELOG.md +0 -11
  2. package/configure/CHANGELOG.md +0 -11
  3. package/configure/lib/arrows.js +68 -103
  4. package/configure/lib/arrows.js.map +1 -1
  5. package/configure/lib/card-bar.js +41 -62
  6. package/configure/lib/card-bar.js.map +1 -1
  7. package/configure/lib/defaults.js +5 -7
  8. package/configure/lib/defaults.js.map +1 -1
  9. package/configure/lib/domain.js +60 -116
  10. package/configure/lib/domain.js.map +1 -1
  11. package/configure/lib/index.js +124 -194
  12. package/configure/lib/index.js.map +1 -1
  13. package/configure/lib/main.js +586 -722
  14. package/configure/lib/main.js.map +1 -1
  15. package/configure/lib/number-text-field.js +15 -86
  16. package/configure/lib/number-text-field.js.map +1 -1
  17. package/configure/lib/point-config.js +69 -129
  18. package/configure/lib/point-config.js.map +1 -1
  19. package/configure/lib/size.js +43 -77
  20. package/configure/lib/size.js.map +1 -1
  21. package/configure/lib/ticks.js +89 -151
  22. package/configure/lib/ticks.js.map +1 -1
  23. package/configure/lib/utils.js +2 -4
  24. package/configure/lib/utils.js.map +1 -1
  25. package/configure/package.json +10 -7
  26. package/controller/CHANGELOG.md +0 -11
  27. package/controller/lib/defaults.js +5 -6
  28. package/controller/lib/defaults.js.map +1 -1
  29. package/controller/lib/index.js +171 -286
  30. package/controller/lib/index.js.map +1 -1
  31. package/controller/lib/tickUtils.js +96 -169
  32. package/controller/lib/tickUtils.js.map +1 -1
  33. package/controller/lib/utils.js +55 -88
  34. package/controller/lib/utils.js.map +1 -1
  35. package/controller/package.json +3 -3
  36. package/lib/data-converter.js +19 -23
  37. package/lib/data-converter.js.map +1 -1
  38. package/lib/draggable/index.js +104 -43
  39. package/lib/draggable/index.js.map +1 -1
  40. package/lib/index.js +118 -205
  41. package/lib/index.js.map +1 -1
  42. package/lib/number-line/colors.js +3 -13
  43. package/lib/number-line/colors.js.map +1 -1
  44. package/lib/number-line/feedback.js +53 -69
  45. package/lib/number-line/feedback.js.map +1 -1
  46. package/lib/number-line/graph/arrow.js +19 -38
  47. package/lib/number-line/graph/arrow.js.map +1 -1
  48. package/lib/number-line/graph/elements/base.js +7 -13
  49. package/lib/number-line/graph/elements/base.js.map +1 -1
  50. package/lib/number-line/graph/elements/builder.js +6 -7
  51. package/lib/number-line/graph/elements/builder.js.map +1 -1
  52. package/lib/number-line/graph/elements/line.js +209 -265
  53. package/lib/number-line/graph/elements/line.js.map +1 -1
  54. package/lib/number-line/graph/elements/point.js +170 -201
  55. package/lib/number-line/graph/elements/point.js.map +1 -1
  56. package/lib/number-line/graph/elements/ray.js +147 -185
  57. package/lib/number-line/graph/elements/ray.js.map +1 -1
  58. package/lib/number-line/graph/index.js +217 -283
  59. package/lib/number-line/graph/index.js.map +1 -1
  60. package/lib/number-line/graph/line.js +12 -22
  61. package/lib/number-line/graph/line.js.map +1 -1
  62. package/lib/number-line/graph/stacks.js +31 -54
  63. package/lib/number-line/graph/stacks.js.map +1 -1
  64. package/lib/number-line/graph/tick-utils.js +120 -209
  65. package/lib/number-line/graph/tick-utils.js.map +1 -1
  66. package/lib/number-line/graph/ticks.js +144 -225
  67. package/lib/number-line/graph/ticks.js.map +1 -1
  68. package/lib/number-line/index.js +331 -395
  69. package/lib/number-line/index.js.map +1 -1
  70. package/lib/number-line/point-chooser/button.js +33 -58
  71. package/lib/number-line/point-chooser/button.js.map +1 -1
  72. package/lib/number-line/point-chooser/img.js +2 -3
  73. package/lib/number-line/point-chooser/img.js.map +1 -1
  74. package/lib/number-line/point-chooser/index.js +152 -148
  75. package/lib/number-line/point-chooser/index.js.map +1 -1
  76. package/lib/number-line/point-chooser/styles.js +29 -52
  77. package/lib/number-line/point-chooser/styles.js.map +1 -1
  78. package/lib/number-line/transitions/fade.js +70 -49
  79. package/lib/number-line/transitions/fade.js.map +1 -1
  80. package/lib/number-line/transitions/index.js +2 -4
  81. package/lib/number-line/transitions/index.js.map +1 -1
  82. package/package.json +16 -13
  83. package/esm/configure.js +0 -84095
  84. package/esm/configure.js.map +0 -1
  85. package/esm/controller.js +0 -68122
  86. package/esm/controller.js.map +0 -1
  87. package/esm/element.js +0 -44487
  88. package/esm/element.js.map +0 -1
  89. package/esm/package.json +0 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/tickUtils.js"],"names":["decimalTickValues","fractionTickValues","labelMultiplier","fractionRange","start","end","interval","m","math","mod","abs","equal","Error","e","subtract","direction","larger","largerEq","smallerEq","compareFn","out","next","push","add","zbrErrorMessage","zeroBasedRange","fraction","length","a","multiplier","smaller","s","r","map","v","multiply","reverse","fmin","b","fmax","simpleRange","positiveRange","negativeRange","together","concat","closeTo","precision","expectedDiff","Math","pow","receivedDiff","limit","min","max","getMinorLimits","domain","width","number","divide","isMultiple","multiple","src","n","d","normalizeTicks","ticks","opts","useLimit","minorLimits","minor","major","isMajorMultiple","multiplyBy","round","buildTickDataAsFractions","rng","o","filter","x","type","modulo","generateMinorValues","decimal","forEach","value","decimalValue","generateMajorValuesForMinor","i","num","ticksData","output","buildTickData","undefined","toString","multiplierKey","result"],"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// All these functions are duplicated in src/number-line/graph/tick-utils\n\n/*This will store the possible decimal tick values*/\nconst decimalTickValues = [0.001, 0.01, 0.02, 0.04, 0.05, 0.1, 0.125, 0.2, 0.25, 0.5];\n\n/*This will store the possible fraction tick values*/\nconst fractionTickValues = [\n '1/1000',\n '1/100',\n '1/64',\n '1/50',\n '1/32',\n '1/25',\n '1/20',\n '1/16',\n '1/15',\n '1/12',\n '1/10',\n '1/9',\n '1/8',\n '1/7',\n '1/6',\n '1/5',\n '1/4',\n '1/3',\n '1/2',\n];\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.*/\nconst 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\nconst 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\nconst zbrErrorMessage = (start, end) =>\n `Can only do a positive or negative range, but got: start: ${start} and end:${end}`;\n\nconst 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 */\nconst 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\nconst 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\nconst 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 */\nconst 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\nconst 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 */\nconst 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 * */\nexport const generateMinorValues = (minorLimits) => {\n let out = { fraction: [], decimal: [] };\n decimalTickValues.forEach((value) => {\n if (value >= minorLimits.min && value <= minorLimits.max) {\n out.decimal.push(value);\n }\n });\n fractionTickValues.forEach((value) => {\n let decimalValue = math.number(math.fraction(value));\n if (decimalValue >= minorLimits.min && decimalValue <= minorLimits.max) {\n out.fraction.push(value);\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 domain object containing min and max values.\n * @param width number representing width of number line.\n * @return out object containing three arrays 1. fraction values, 2. decimal values,\n * */\nexport const generateMajorValuesForMinor = (minor, domain, width) => {\n let out = { decimal: [], fraction: [] };\n let fraction = math.fraction(math.number(math.number(minor)));\n let n = fraction.n;\n let d = fraction.d;\n if (n >= 1 && d === 1) {\n for (let i = 1; i <= 10; i++) {\n let num = math.number(math.multiply(n, i));\n //Here we check if this major value can plot at least 2 points on number line.\n let ticksData = { minor: minor, major: num };\n let output = buildTickData(domain, width, ticksData, { fraction: undefined });\n if (output.filter((x) => x.type === 'major').length > 1) {\n out.fraction.push(num.toString());\n out.decimal.push(num);\n }\n }\n } else {\n for (const multiplierKey in labelMultiplier[d]) {\n let num = math.multiply(math.fraction(n, d), labelMultiplier[d][multiplierKey]);\n //Here we check if this major value can plot at least 2 points on number line.\n let ticksData = { minor: minor, major: math.number(num) };\n let output = buildTickData(domain, width, ticksData, { fraction: undefined });\n if (output.filter((x) => x.type === 'major').length > 1) {\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 }\n }\n }\n return out;\n};\n\nconst 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"],"file":"tickUtils.js"}
1
+ {"version":3,"file":"tickUtils.js","names":["math","_interopRequireWildcard","require","_uniqWith","_interopRequireDefault","_isObject","_isNumber","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","decimalTickValues","fractionTickValues","labelMultiplier","fractionRange","start","end","interval","m","mod","abs","equal","Error","subtract","direction","larger","largerEq","smallerEq","compareFn","out","next","push","add","zbrErrorMessage","zeroBasedRange","fraction","length","a","multiplier","smaller","s","map","v","multiply","reverse","fmin","b","fmax","simpleRange","positiveRange","negativeRange","together","concat","uniqWith","closeTo","precision","expectedDiff","Math","pow","receivedDiff","limit","min","max","getMinorLimits","domain","width","number","divide","exports","isMultiple","multiple","src","isObject","d","isNumber","normalizeTicks","ticks","opts","useLimit","minorLimits","minor","major","isMajorMultiple","multiplyBy","round","buildTickDataAsFractions","rng","filter","x","type","modulo","generateMinorValues","decimal","forEach","value","decimalValue","generateMajorValuesForMinor","num","ticksData","output","buildTickData","undefined","toString","multiplierKey","result"],"sources":["../src/tickUtils.js"],"sourcesContent":["import * as math from 'mathjs';\nimport uniqWith from 'lodash/uniqWith';\nimport isObject from 'lodash/isObject';\nimport isNumber from 'lodash/isNumber';\n\n// All these functions are duplicated in src/number-line/graph/tick-utils\n\n/*This will store the possible decimal tick values*/\nconst decimalTickValues = [0.001, 0.01, 0.02, 0.04, 0.05, 0.1, 0.125, 0.2, 0.25, 0.5];\n\n/*This will store the possible fraction tick values*/\nconst fractionTickValues = [\n '1/1000',\n '1/100',\n '1/64',\n '1/50',\n '1/32',\n '1/25',\n '1/20',\n '1/16',\n '1/15',\n '1/12',\n '1/10',\n '1/9',\n '1/8',\n '1/7',\n '1/6',\n '1/5',\n '1/4',\n '1/3',\n '1/2',\n];\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.*/\nconst 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\nconst 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\nconst zbrErrorMessage = (start, end) =>\n `Can only do a positive or negative range, but got: start: ${start} and end:${end}`;\n\nconst 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 */\nconst 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\nconst 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\nconst 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 */\nconst 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\nconst 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 */\nconst 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 * */\nexport const generateMinorValues = (minorLimits) => {\n let out = { fraction: [], decimal: [] };\n decimalTickValues.forEach((value) => {\n if (value >= minorLimits.min && value <= minorLimits.max) {\n out.decimal.push(value);\n }\n });\n fractionTickValues.forEach((value) => {\n let decimalValue = math.number(math.fraction(value));\n if (decimalValue >= minorLimits.min && decimalValue <= minorLimits.max) {\n out.fraction.push(value);\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 domain object containing min and max values.\n * @param width number representing width of number line.\n * @return out object containing three arrays 1. fraction values, 2. decimal values,\n * */\nexport const generateMajorValuesForMinor = (minor, domain, width) => {\n let out = { decimal: [], fraction: [] };\n let fraction = math.fraction(math.number(math.number(minor)));\n let n = fraction.n;\n let d = fraction.d;\n if (n >= 1 && d === 1) {\n for (let i = 1; i <= 10; i++) {\n let num = math.number(math.multiply(n, i));\n //Here we check if this major value can plot at least 2 points on number line.\n let ticksData = { minor: minor, major: num };\n let output = buildTickData(domain, width, ticksData, { fraction: undefined });\n if (output.filter((x) => x.type === 'major').length > 1) {\n out.fraction.push(num.toString());\n out.decimal.push(num);\n }\n }\n } else {\n for (const multiplierKey in labelMultiplier[d]) {\n let num = math.multiply(math.fraction(n, d), labelMultiplier[d][multiplierKey]);\n //Here we check if this major value can plot at least 2 points on number line.\n let ticksData = { minor: minor, major: math.number(num) };\n let output = buildTickData(domain, width, ticksData, { fraction: undefined });\n if (output.filter((x) => x.type === 'major').length > 1) {\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 }\n }\n }\n return out;\n};\n\nconst 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"],"mappings":"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","ignoreList":[]}
@@ -1,57 +1,41 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
3
  Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
6
  exports.reloadTicksData = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
7
  var math = _interopRequireWildcard(require("mathjs"));
15
-
16
8
  var _tickUtils = require("./tickUtils");
17
-
18
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
-
20
- 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; }
21
-
22
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
-
24
- 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; }
25
-
9
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
26
10
  /*
27
11
  * This function is duplicated in configure/main.js
28
12
  * This function will update major value whenever minor value is changed or tick type is changed
29
13
  * @param graph object containing domain, ticks and width value
30
14
  * @return graph object with updated ticks values
31
15
  * */
32
- var updateMajorValue = function updateMajorValue(graph) {
33
- var domain = graph.domain,
34
- ticks = graph.ticks,
35
- width = graph.width;
36
- var majorValues = (0, _tickUtils.generateMajorValuesForMinor)(ticks.minor, domain, width);
37
-
16
+ const updateMajorValue = graph => {
17
+ const {
18
+ domain,
19
+ ticks,
20
+ width
21
+ } = graph;
22
+ const majorValues = (0, _tickUtils.generateMajorValuesForMinor)(ticks.minor, domain, width);
38
23
  if (majorValues.decimal.indexOf(ticks.major) === -1) {
39
- var currIndex = 0;
40
-
24
+ let currIndex = 0;
41
25
  if (ticks.tickIntervalType === 'Integer') {
42
26
  currIndex = majorValues.decimal.length > 4 ? 4 : majorValues.decimal.length - 1;
43
27
  } else {
44
28
  currIndex = majorValues.decimal.length - 1;
45
29
  }
46
-
47
30
  ticks.major = majorValues.decimal[currIndex];
48
31
  }
49
-
50
32
  graph.fraction = ticks.tickIntervalType === 'Fraction' && ticks.major < 1;
51
- return _objectSpread(_objectSpread({}, graph), {}, {
52
- ticks: ticks
53
- });
33
+ return {
34
+ ...graph,
35
+ ticks
36
+ };
54
37
  };
38
+
55
39
  /*
56
40
  * This function is duplicated in configure/main.js
57
41
  * This function will reload ticks data whenever graph object is changed and also sets required tick object
@@ -60,25 +44,23 @@ var updateMajorValue = function updateMajorValue(graph) {
60
44
  * @return graph object with updated ticks values
61
45
  * */
62
46
 
63
-
64
- var reloadTicksData = function reloadTicksData(graph) {
65
- var domain = graph.domain,
66
- _graph$ticks = graph.ticks,
67
- ticks = _graph$ticks === void 0 ? {} : _graph$ticks,
68
- width = graph.width; //Set tick interval type if not present for legacy number line models depending upon minor value
69
-
47
+ const reloadTicksData = graph => {
48
+ const {
49
+ domain,
50
+ ticks = {},
51
+ width
52
+ } = graph;
53
+ //Set tick interval type if not present for legacy number line models depending upon minor value
70
54
  if (!ticks.tickIntervalType) {
71
55
  if (ticks.minor > 0.5) {
72
56
  ticks.tickIntervalType = 'Integer';
73
57
  } else {
74
58
  ticks.tickIntervalType = 'Decimal';
75
59
  }
76
- } // This section will calculate minor and major values array and assign respective value
60
+ }
61
+ // This section will calculate minor and major values array and assign respective value
77
62
  // to different tick types object
78
-
79
-
80
- var minorLimits = (0, _tickUtils.getMinorLimits)(domain, width);
81
-
63
+ const minorLimits = (0, _tickUtils.getMinorLimits)(domain, width);
82
64
  if (minorLimits.min >= 1) {
83
65
  /*
84
66
  * In this scenario only integer tick will be enabled
@@ -86,7 +68,7 @@ var reloadTicksData = function reloadTicksData(graph) {
86
68
  ticks.tickIntervalType = 'Integer';
87
69
  ticks.minor = ticks.minor < 1 ? math.number(math.ceil(minorLimits.min)) : ticks.minor >= math.number(math.ceil(minorLimits.min)) && ticks.minor <= math.number(math.floor(minorLimits.max)) ? ticks.minor : math.number(math.ceil(minorLimits.min));
88
70
  ticks.integerTick = ticks.minor;
89
- var minorValues = {
71
+ const minorValues = {
90
72
  decimal: [],
91
73
  fraction: []
92
74
  };
@@ -99,103 +81,88 @@ var reloadTicksData = function reloadTicksData(graph) {
99
81
  if (ticks.tickIntervalType === 'Integer') {
100
82
  ticks.tickIntervalType = 'Fraction';
101
83
  }
102
-
103
- var _minorValues = (0, _tickUtils.generateMinorValues)(minorLimits);
104
-
105
- var minValue = math.number(math.fraction(_minorValues.fraction[0]));
106
- var maxValue = math.number(math.fraction(_minorValues.fraction[_minorValues.fraction.length - 1]));
107
-
84
+ const minorValues = (0, _tickUtils.generateMinorValues)(minorLimits);
85
+ let minValue = math.number(math.fraction(minorValues.fraction[0]));
86
+ let maxValue = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));
108
87
  if (ticks.minor < minValue || ticks.minor > maxValue) {
109
88
  switch (ticks.tickIntervalType) {
110
89
  case 'Fraction':
111
- ticks.minor = math.number(math.fraction(_minorValues.fraction[_minorValues.fraction.length - 1]));
112
- ticks.fractionTick = _minorValues.fraction[_minorValues.fraction.length - 1];
113
- ticks.decimalTick = _minorValues.decimal[0];
90
+ ticks.minor = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));
91
+ ticks.fractionTick = minorValues.fraction[minorValues.fraction.length - 1];
92
+ ticks.decimalTick = minorValues.decimal[0];
114
93
  break;
115
-
116
94
  case 'Decimal':
117
95
  case 'Integer':
118
- ticks.minor = _minorValues.decimal[_minorValues.decimal.length - 1];
119
- ticks.decimalTick = _minorValues.decimal[_minorValues.decimal.length - 1];
120
- ticks.fractionTick = _minorValues.fraction[0];
96
+ ticks.minor = minorValues.decimal[minorValues.decimal.length - 1];
97
+ ticks.decimalTick = minorValues.decimal[minorValues.decimal.length - 1];
98
+ ticks.fractionTick = minorValues.fraction[0];
121
99
  }
122
100
  } else {
123
101
  switch (ticks.tickIntervalType) {
124
102
  case 'Fraction':
125
- var fraction = math.fraction(math.number(ticks.minor));
103
+ let fraction = math.fraction(math.number(ticks.minor));
126
104
  ticks.fractionTick = fraction.n + '/' + fraction.d;
127
- ticks.decimalTick = ticks.decimalTick ? ticks.decimalTick : _minorValues.decimal[0];
105
+ ticks.decimalTick = ticks.decimalTick ? ticks.decimalTick : minorValues.decimal[0];
128
106
  break;
129
-
130
107
  case 'Decimal':
131
108
  case 'Integer':
132
109
  ticks.decimalTick = ticks.minor;
133
- ticks.fractionTick = ticks.fractionTick ? ticks.fractionTick : _minorValues.fraction[0];
110
+ ticks.fractionTick = ticks.fractionTick ? ticks.fractionTick : minorValues.fraction[0];
134
111
  }
135
112
  }
136
-
137
113
  ticks.integerTick = 1;
138
114
  } else if (minorLimits.min < 1 && minorLimits.max >= 1) {
139
115
  /*
140
116
  * In this scenario all integer, decimal or fraction tick will be enabled
141
117
  * */
142
- var _minorValues2 = (0, _tickUtils.generateMinorValues)(minorLimits);
143
-
118
+ const minorValues = (0, _tickUtils.generateMinorValues)(minorLimits);
144
119
  if (!(ticks.minor >= minorLimits.min && ticks.minor <= minorLimits.max)) {
145
120
  if (minorLimits.min > 0.5) {
146
121
  ticks.tickIntervalType = 'Integer';
147
122
  }
148
-
149
123
  switch (ticks.tickIntervalType) {
150
124
  case 'Integer':
151
125
  ticks.minor = math.number(math.ceil(minorLimits.min));
152
126
  ticks.integerTick = ticks.minor;
153
- ticks.decimalTick = minorLimits.min > 0.5 ? 0 : _minorValues2.decimal[0];
154
- ticks.fractionTick = minorLimits.min > 0.5 ? '0' : _minorValues2.fraction[0];
127
+ ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];
128
+ ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];
155
129
  break;
156
-
157
130
  case 'Decimal':
158
- ticks.minor = _minorValues2.decimal[0];
131
+ ticks.minor = minorValues.decimal[0];
159
132
  ticks.integerTick = 1;
160
133
  ticks.decimalTick = ticks.minor;
161
- ticks.fractionTick = _minorValues2.fraction[0];
134
+ ticks.fractionTick = minorValues.fraction[0];
162
135
  break;
163
-
164
136
  case 'Fraction':
165
- ticks.minor = math.number(math.fraction(_minorValues2.fraction[0]));
137
+ ticks.minor = math.number(math.fraction(minorValues.fraction[0]));
166
138
  ticks.integerTick = 1;
167
- ticks.decimalTick = _minorValues2.decimal[0];
168
- ticks.fractionTick = _minorValues2.fraction[0];
139
+ ticks.decimalTick = minorValues.decimal[0];
140
+ ticks.fractionTick = minorValues.fraction[0];
169
141
  }
170
142
  } else {
171
143
  switch (ticks.tickIntervalType) {
172
144
  case 'Integer':
173
145
  ticks.integerTick = ticks.minor;
174
- ticks.decimalTick = minorLimits.min > 0.5 ? 0 : _minorValues2.decimal[0];
175
- ticks.fractionTick = minorLimits.min > 0.5 ? '0' : _minorValues2.fraction[0];
146
+ ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];
147
+ ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];
176
148
  break;
177
-
178
149
  case 'Decimal':
179
150
  ticks.integerTick = 1;
180
151
  ticks.decimalTick = ticks.minor;
181
- ticks.fractionTick = _minorValues2.fraction[0];
152
+ ticks.fractionTick = minorValues.fraction[0];
182
153
  break;
183
-
184
154
  case 'Fraction':
185
155
  ticks.integerTick = 1;
186
- ticks.decimalTick = _minorValues2.decimal[0];
187
-
188
- var _fraction = math.fraction(math.number(ticks.minor));
189
-
190
- ticks.fractionTick = _fraction.n + '/' + _fraction.d;
156
+ ticks.decimalTick = minorValues.decimal[0];
157
+ let fraction = math.fraction(math.number(ticks.minor));
158
+ ticks.fractionTick = fraction.n + '/' + fraction.d;
191
159
  }
192
160
  }
193
161
  }
194
-
195
- return updateMajorValue(_objectSpread(_objectSpread({}, graph), {}, {
196
- ticks: ticks
197
- }));
162
+ return updateMajorValue({
163
+ ...graph,
164
+ ticks
165
+ });
198
166
  };
199
-
200
167
  exports.reloadTicksData = reloadTicksData;
201
168
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils.js"],"names":["updateMajorValue","graph","domain","ticks","width","majorValues","minor","decimal","indexOf","major","currIndex","tickIntervalType","length","fraction","reloadTicksData","minorLimits","min","math","number","ceil","floor","max","integerTick","minorValues","fractionTick","decimalTick","minValue","maxValue","n","d"],"mappings":"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","sourcesContent":["import * as math from 'mathjs';\nimport { generateMajorValuesForMinor, generateMinorValues, getMinorLimits } from './tickUtils';\n\n/*\n * This function is duplicated in configure/main.js\n * This function will update major value whenever minor value is changed or tick type is changed\n * @param graph object containing domain, ticks and width value\n * @return graph object with updated ticks values\n * */\nconst updateMajorValue = (graph) => {\n const { domain, ticks, width } = graph;\n const majorValues = generateMajorValuesForMinor(ticks.minor, domain, width);\n if (majorValues.decimal.indexOf(ticks.major) === -1) {\n let currIndex = 0;\n if (ticks.tickIntervalType === 'Integer') {\n currIndex = majorValues.decimal.length > 4 ? 4 : majorValues.decimal.length - 1;\n } else {\n currIndex = majorValues.decimal.length - 1;\n }\n ticks.major = majorValues.decimal[currIndex];\n }\n graph.fraction = ticks.tickIntervalType === 'Fraction' && ticks.major < 1;\n return { ...graph, ticks };\n};\n\n/*\n * This function is duplicated in configure/main.js\n * This function will reload ticks data whenever graph object is changed and also sets required tick object\n * for rendering Ticks Components.\n * @param graph object containing domain, ticks and width value\n * @return graph object with updated ticks values\n * */\n\nexport const reloadTicksData = (graph) => {\n const { domain, ticks = {}, width } = graph;\n //Set tick interval type if not present for legacy number line models depending upon minor value\n if (!ticks.tickIntervalType) {\n if (ticks.minor > 0.5) {\n ticks.tickIntervalType = 'Integer';\n } else {\n ticks.tickIntervalType = 'Decimal';\n }\n }\n // This section will calculate minor and major values array and assign respective value\n // to different tick types object\n const minorLimits = getMinorLimits(domain, width);\n if (minorLimits.min >= 1) {\n /*\n * In this scenario only integer tick will be enabled\n * */\n ticks.tickIntervalType = 'Integer';\n ticks.minor =\n ticks.minor < 1\n ? math.number(math.ceil(minorLimits.min))\n : ticks.minor >= math.number(math.ceil(minorLimits.min)) &&\n ticks.minor <= math.number(math.floor(minorLimits.max))\n ? ticks.minor\n : math.number(math.ceil(minorLimits.min));\n ticks.integerTick = ticks.minor;\n const minorValues = { decimal: [], fraction: [] };\n ticks.fractionTick = '0';\n ticks.decimalTick = 0;\n } else if (minorLimits.min >= 0 && minorLimits.max < 1) {\n /*\n * In this scenario only decimal or fraction tick will be enabled\n * */\n if (ticks.tickIntervalType === 'Integer') {\n ticks.tickIntervalType = 'Fraction';\n }\n const minorValues = generateMinorValues(minorLimits);\n let minValue = math.number(math.fraction(minorValues.fraction[0]));\n let maxValue = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));\n if (ticks.minor < minValue || ticks.minor > maxValue) {\n switch (ticks.tickIntervalType) {\n case 'Fraction':\n ticks.minor = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));\n ticks.fractionTick = minorValues.fraction[minorValues.fraction.length - 1];\n ticks.decimalTick = minorValues.decimal[0];\n break;\n case 'Decimal':\n case 'Integer':\n ticks.minor = minorValues.decimal[minorValues.decimal.length - 1];\n ticks.decimalTick = minorValues.decimal[minorValues.decimal.length - 1];\n ticks.fractionTick = minorValues.fraction[0];\n }\n } else {\n switch (ticks.tickIntervalType) {\n case 'Fraction':\n let fraction = math.fraction(math.number(ticks.minor));\n ticks.fractionTick = fraction.n + '/' + fraction.d;\n ticks.decimalTick = ticks.decimalTick ? ticks.decimalTick : minorValues.decimal[0];\n break;\n case 'Decimal':\n case 'Integer':\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = ticks.fractionTick ? ticks.fractionTick : minorValues.fraction[0];\n }\n }\n ticks.integerTick = 1;\n } else if (minorLimits.min < 1 && minorLimits.max >= 1) {\n /*\n * In this scenario all integer, decimal or fraction tick will be enabled\n * */\n const minorValues = generateMinorValues(minorLimits);\n if (!(ticks.minor >= minorLimits.min && ticks.minor <= minorLimits.max)) {\n if (minorLimits.min > 0.5) {\n ticks.tickIntervalType = 'Integer';\n }\n switch (ticks.tickIntervalType) {\n case 'Integer':\n ticks.minor = math.number(math.ceil(minorLimits.min));\n ticks.integerTick = ticks.minor;\n ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];\n ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];\n break;\n case 'Decimal':\n ticks.minor = minorValues.decimal[0];\n ticks.integerTick = 1;\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = minorValues.fraction[0];\n break;\n case 'Fraction':\n ticks.minor = math.number(math.fraction(minorValues.fraction[0]));\n ticks.integerTick = 1;\n ticks.decimalTick = minorValues.decimal[0];\n ticks.fractionTick = minorValues.fraction[0];\n }\n } else {\n switch (ticks.tickIntervalType) {\n case 'Integer':\n ticks.integerTick = ticks.minor;\n ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];\n ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];\n break;\n case 'Decimal':\n ticks.integerTick = 1;\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = minorValues.fraction[0];\n break;\n case 'Fraction':\n ticks.integerTick = 1;\n ticks.decimalTick = minorValues.decimal[0];\n let fraction = math.fraction(math.number(ticks.minor));\n ticks.fractionTick = fraction.n + '/' + fraction.d;\n }\n }\n }\n return updateMajorValue({ ...graph, ticks });\n};\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["math","_interopRequireWildcard","require","_tickUtils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","updateMajorValue","graph","domain","ticks","width","majorValues","generateMajorValuesForMinor","minor","decimal","indexOf","major","currIndex","tickIntervalType","length","fraction","reloadTicksData","minorLimits","getMinorLimits","min","number","ceil","floor","max","integerTick","minorValues","fractionTick","decimalTick","generateMinorValues","minValue","maxValue","d","exports"],"sources":["../src/utils.js"],"sourcesContent":["import * as math from 'mathjs';\nimport { generateMajorValuesForMinor, generateMinorValues, getMinorLimits } from './tickUtils';\n\n/*\n * This function is duplicated in configure/main.js\n * This function will update major value whenever minor value is changed or tick type is changed\n * @param graph object containing domain, ticks and width value\n * @return graph object with updated ticks values\n * */\nconst updateMajorValue = (graph) => {\n const { domain, ticks, width } = graph;\n const majorValues = generateMajorValuesForMinor(ticks.minor, domain, width);\n if (majorValues.decimal.indexOf(ticks.major) === -1) {\n let currIndex = 0;\n if (ticks.tickIntervalType === 'Integer') {\n currIndex = majorValues.decimal.length > 4 ? 4 : majorValues.decimal.length - 1;\n } else {\n currIndex = majorValues.decimal.length - 1;\n }\n ticks.major = majorValues.decimal[currIndex];\n }\n graph.fraction = ticks.tickIntervalType === 'Fraction' && ticks.major < 1;\n return { ...graph, ticks };\n};\n\n/*\n * This function is duplicated in configure/main.js\n * This function will reload ticks data whenever graph object is changed and also sets required tick object\n * for rendering Ticks Components.\n * @param graph object containing domain, ticks and width value\n * @return graph object with updated ticks values\n * */\n\nexport const reloadTicksData = (graph) => {\n const { domain, ticks = {}, width } = graph;\n //Set tick interval type if not present for legacy number line models depending upon minor value\n if (!ticks.tickIntervalType) {\n if (ticks.minor > 0.5) {\n ticks.tickIntervalType = 'Integer';\n } else {\n ticks.tickIntervalType = 'Decimal';\n }\n }\n // This section will calculate minor and major values array and assign respective value\n // to different tick types object\n const minorLimits = getMinorLimits(domain, width);\n if (minorLimits.min >= 1) {\n /*\n * In this scenario only integer tick will be enabled\n * */\n ticks.tickIntervalType = 'Integer';\n ticks.minor =\n ticks.minor < 1\n ? math.number(math.ceil(minorLimits.min))\n : ticks.minor >= math.number(math.ceil(minorLimits.min)) &&\n ticks.minor <= math.number(math.floor(minorLimits.max))\n ? ticks.minor\n : math.number(math.ceil(minorLimits.min));\n ticks.integerTick = ticks.minor;\n const minorValues = { decimal: [], fraction: [] };\n ticks.fractionTick = '0';\n ticks.decimalTick = 0;\n } else if (minorLimits.min >= 0 && minorLimits.max < 1) {\n /*\n * In this scenario only decimal or fraction tick will be enabled\n * */\n if (ticks.tickIntervalType === 'Integer') {\n ticks.tickIntervalType = 'Fraction';\n }\n const minorValues = generateMinorValues(minorLimits);\n let minValue = math.number(math.fraction(minorValues.fraction[0]));\n let maxValue = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));\n if (ticks.minor < minValue || ticks.minor > maxValue) {\n switch (ticks.tickIntervalType) {\n case 'Fraction':\n ticks.minor = math.number(math.fraction(minorValues.fraction[minorValues.fraction.length - 1]));\n ticks.fractionTick = minorValues.fraction[minorValues.fraction.length - 1];\n ticks.decimalTick = minorValues.decimal[0];\n break;\n case 'Decimal':\n case 'Integer':\n ticks.minor = minorValues.decimal[minorValues.decimal.length - 1];\n ticks.decimalTick = minorValues.decimal[minorValues.decimal.length - 1];\n ticks.fractionTick = minorValues.fraction[0];\n }\n } else {\n switch (ticks.tickIntervalType) {\n case 'Fraction':\n let fraction = math.fraction(math.number(ticks.minor));\n ticks.fractionTick = fraction.n + '/' + fraction.d;\n ticks.decimalTick = ticks.decimalTick ? ticks.decimalTick : minorValues.decimal[0];\n break;\n case 'Decimal':\n case 'Integer':\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = ticks.fractionTick ? ticks.fractionTick : minorValues.fraction[0];\n }\n }\n ticks.integerTick = 1;\n } else if (minorLimits.min < 1 && minorLimits.max >= 1) {\n /*\n * In this scenario all integer, decimal or fraction tick will be enabled\n * */\n const minorValues = generateMinorValues(minorLimits);\n if (!(ticks.minor >= minorLimits.min && ticks.minor <= minorLimits.max)) {\n if (minorLimits.min > 0.5) {\n ticks.tickIntervalType = 'Integer';\n }\n switch (ticks.tickIntervalType) {\n case 'Integer':\n ticks.minor = math.number(math.ceil(minorLimits.min));\n ticks.integerTick = ticks.minor;\n ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];\n ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];\n break;\n case 'Decimal':\n ticks.minor = minorValues.decimal[0];\n ticks.integerTick = 1;\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = minorValues.fraction[0];\n break;\n case 'Fraction':\n ticks.minor = math.number(math.fraction(minorValues.fraction[0]));\n ticks.integerTick = 1;\n ticks.decimalTick = minorValues.decimal[0];\n ticks.fractionTick = minorValues.fraction[0];\n }\n } else {\n switch (ticks.tickIntervalType) {\n case 'Integer':\n ticks.integerTick = ticks.minor;\n ticks.decimalTick = minorLimits.min > 0.5 ? 0 : minorValues.decimal[0];\n ticks.fractionTick = minorLimits.min > 0.5 ? '0' : minorValues.fraction[0];\n break;\n case 'Decimal':\n ticks.integerTick = 1;\n ticks.decimalTick = ticks.minor;\n ticks.fractionTick = minorValues.fraction[0];\n break;\n case 'Fraction':\n ticks.integerTick = 1;\n ticks.decimalTick = minorValues.decimal[0];\n let fraction = math.fraction(math.number(ticks.minor));\n ticks.fractionTick = fraction.n + '/' + fraction.d;\n }\n }\n }\n return updateMajorValue({ ...graph, ticks });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,IAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAA+F,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA,MAAMkB,gBAAgB,GAAIC,KAAK,IAAK;EAClC,MAAM;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAM,CAAC,GAAGH,KAAK;EACtC,MAAMI,WAAW,GAAG,IAAAC,sCAA2B,EAACH,KAAK,CAACI,KAAK,EAAEL,MAAM,EAAEE,KAAK,CAAC;EAC3E,IAAIC,WAAW,CAACG,OAAO,CAACC,OAAO,CAACN,KAAK,CAACO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;IACnD,IAAIC,SAAS,GAAG,CAAC;IACjB,IAAIR,KAAK,CAACS,gBAAgB,KAAK,SAAS,EAAE;MACxCD,SAAS,GAAGN,WAAW,CAACG,OAAO,CAACK,MAAM,GAAG,CAAC,GAAG,CAAC,GAAGR,WAAW,CAACG,OAAO,CAACK,MAAM,GAAG,CAAC;IACjF,CAAC,MAAM;MACLF,SAAS,GAAGN,WAAW,CAACG,OAAO,CAACK,MAAM,GAAG,CAAC;IAC5C;IACAV,KAAK,CAACO,KAAK,GAAGL,WAAW,CAACG,OAAO,CAACG,SAAS,CAAC;EAC9C;EACAV,KAAK,CAACa,QAAQ,GAAGX,KAAK,CAACS,gBAAgB,KAAK,UAAU,IAAIT,KAAK,CAACO,KAAK,GAAG,CAAC;EACzE,OAAO;IAAE,GAAGT,KAAK;IAAEE;EAAM,CAAC;AAC5B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMY,eAAe,GAAId,KAAK,IAAK;EACxC,MAAM;IAAEC,MAAM;IAAEC,KAAK,GAAG,CAAC,CAAC;IAAEC;EAAM,CAAC,GAAGH,KAAK;EAC3C;EACA,IAAI,CAACE,KAAK,CAACS,gBAAgB,EAAE;IAC3B,IAAIT,KAAK,CAACI,KAAK,GAAG,GAAG,EAAE;MACrBJ,KAAK,CAACS,gBAAgB,GAAG,SAAS;IACpC,CAAC,MAAM;MACLT,KAAK,CAACS,gBAAgB,GAAG,SAAS;IACpC;EACF;EACA;EACA;EACA,MAAMI,WAAW,GAAG,IAAAC,yBAAc,EAACf,MAAM,EAAEE,KAAK,CAAC;EACjD,IAAIY,WAAW,CAACE,GAAG,IAAI,CAAC,EAAE;IACxB;AACJ;AACA;IACIf,KAAK,CAACS,gBAAgB,GAAG,SAAS;IAClCT,KAAK,CAACI,KAAK,GACTJ,KAAK,CAACI,KAAK,GAAG,CAAC,GACX9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAAC2C,IAAI,CAACJ,WAAW,CAACE,GAAG,CAAC,CAAC,GACvCf,KAAK,CAACI,KAAK,IAAI9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAAC2C,IAAI,CAACJ,WAAW,CAACE,GAAG,CAAC,CAAC,IACtDf,KAAK,CAACI,KAAK,IAAI9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAAC4C,KAAK,CAACL,WAAW,CAACM,GAAG,CAAC,CAAC,GACvDnB,KAAK,CAACI,KAAK,GACX9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAAC2C,IAAI,CAACJ,WAAW,CAACE,GAAG,CAAC,CAAC;IAC7Cf,KAAK,CAACoB,WAAW,GAAGpB,KAAK,CAACI,KAAK;IAC/B,MAAMiB,WAAW,GAAG;MAAEhB,OAAO,EAAE,EAAE;MAAEM,QAAQ,EAAE;IAAG,CAAC;IACjDX,KAAK,CAACsB,YAAY,GAAG,GAAG;IACxBtB,KAAK,CAACuB,WAAW,GAAG,CAAC;EACvB,CAAC,MAAM,IAAIV,WAAW,CAACE,GAAG,IAAI,CAAC,IAAIF,WAAW,CAACM,GAAG,GAAG,CAAC,EAAE;IACtD;AACJ;AACA;IACI,IAAInB,KAAK,CAACS,gBAAgB,KAAK,SAAS,EAAE;MACxCT,KAAK,CAACS,gBAAgB,GAAG,UAAU;IACrC;IACA,MAAMY,WAAW,GAAG,IAAAG,8BAAmB,EAACX,WAAW,CAAC;IACpD,IAAIY,QAAQ,GAAGnD,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAACqC,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,IAAIe,QAAQ,GAAGpD,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAACqC,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAACD,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAChG,IAAIV,KAAK,CAACI,KAAK,GAAGqB,QAAQ,IAAIzB,KAAK,CAACI,KAAK,GAAGsB,QAAQ,EAAE;MACpD,QAAQ1B,KAAK,CAACS,gBAAgB;QAC5B,KAAK,UAAU;UACbT,KAAK,CAACI,KAAK,GAAG9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAACqC,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAACD,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;UAC/FV,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAACD,MAAM,GAAG,CAAC,CAAC;UAC1EV,KAAK,CAACuB,WAAW,GAAGF,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UAC1C;QACF,KAAK,SAAS;QACd,KAAK,SAAS;UACZL,KAAK,CAACI,KAAK,GAAGiB,WAAW,CAAChB,OAAO,CAACgB,WAAW,CAAChB,OAAO,CAACK,MAAM,GAAG,CAAC,CAAC;UACjEV,KAAK,CAACuB,WAAW,GAAGF,WAAW,CAAChB,OAAO,CAACgB,WAAW,CAAChB,OAAO,CAACK,MAAM,GAAG,CAAC,CAAC;UACvEV,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;MAChD;IACF,CAAC,MAAM;MACL,QAAQX,KAAK,CAACS,gBAAgB;QAC5B,KAAK,UAAU;UACb,IAAIE,QAAQ,GAAGrC,IAAI,CAACqC,QAAQ,CAACrC,IAAI,CAAC0C,MAAM,CAAChB,KAAK,CAACI,KAAK,CAAC,CAAC;UACtDJ,KAAK,CAACsB,YAAY,GAAGX,QAAQ,CAAC7B,CAAC,GAAG,GAAG,GAAG6B,QAAQ,CAACgB,CAAC;UAClD3B,KAAK,CAACuB,WAAW,GAAGvB,KAAK,CAACuB,WAAW,GAAGvB,KAAK,CAACuB,WAAW,GAAGF,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UAClF;QACF,KAAK,SAAS;QACd,KAAK,SAAS;UACZL,KAAK,CAACuB,WAAW,GAAGvB,KAAK,CAACI,KAAK;UAC/BJ,KAAK,CAACsB,YAAY,GAAGtB,KAAK,CAACsB,YAAY,GAAGtB,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;MAC1F;IACF;IACAX,KAAK,CAACoB,WAAW,GAAG,CAAC;EACvB,CAAC,MAAM,IAAIP,WAAW,CAACE,GAAG,GAAG,CAAC,IAAIF,WAAW,CAACM,GAAG,IAAI,CAAC,EAAE;IACtD;AACJ;AACA;IACI,MAAME,WAAW,GAAG,IAAAG,8BAAmB,EAACX,WAAW,CAAC;IACpD,IAAI,EAAEb,KAAK,CAACI,KAAK,IAAIS,WAAW,CAACE,GAAG,IAAIf,KAAK,CAACI,KAAK,IAAIS,WAAW,CAACM,GAAG,CAAC,EAAE;MACvE,IAAIN,WAAW,CAACE,GAAG,GAAG,GAAG,EAAE;QACzBf,KAAK,CAACS,gBAAgB,GAAG,SAAS;MACpC;MACA,QAAQT,KAAK,CAACS,gBAAgB;QAC5B,KAAK,SAAS;UACZT,KAAK,CAACI,KAAK,GAAG9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAAC2C,IAAI,CAACJ,WAAW,CAACE,GAAG,CAAC,CAAC;UACrDf,KAAK,CAACoB,WAAW,GAAGpB,KAAK,CAACI,KAAK;UAC/BJ,KAAK,CAACuB,WAAW,GAAGV,WAAW,CAACE,GAAG,GAAG,GAAG,GAAG,CAAC,GAAGM,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UACtEL,KAAK,CAACsB,YAAY,GAAGT,WAAW,CAACE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAGM,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;UAC1E;QACF,KAAK,SAAS;UACZX,KAAK,CAACI,KAAK,GAAGiB,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UACpCL,KAAK,CAACoB,WAAW,GAAG,CAAC;UACrBpB,KAAK,CAACuB,WAAW,GAAGvB,KAAK,CAACI,KAAK;UAC/BJ,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;UAC5C;QACF,KAAK,UAAU;UACbX,KAAK,CAACI,KAAK,GAAG9B,IAAI,CAAC0C,MAAM,CAAC1C,IAAI,CAACqC,QAAQ,CAACU,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;UACjEX,KAAK,CAACoB,WAAW,GAAG,CAAC;UACrBpB,KAAK,CAACuB,WAAW,GAAGF,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UAC1CL,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;MAChD;IACF,CAAC,MAAM;MACL,QAAQX,KAAK,CAACS,gBAAgB;QAC5B,KAAK,SAAS;UACZT,KAAK,CAACoB,WAAW,GAAGpB,KAAK,CAACI,KAAK;UAC/BJ,KAAK,CAACuB,WAAW,GAAGV,WAAW,CAACE,GAAG,GAAG,GAAG,GAAG,CAAC,GAAGM,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UACtEL,KAAK,CAACsB,YAAY,GAAGT,WAAW,CAACE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAGM,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;UAC1E;QACF,KAAK,SAAS;UACZX,KAAK,CAACoB,WAAW,GAAG,CAAC;UACrBpB,KAAK,CAACuB,WAAW,GAAGvB,KAAK,CAACI,KAAK;UAC/BJ,KAAK,CAACsB,YAAY,GAAGD,WAAW,CAACV,QAAQ,CAAC,CAAC,CAAC;UAC5C;QACF,KAAK,UAAU;UACbX,KAAK,CAACoB,WAAW,GAAG,CAAC;UACrBpB,KAAK,CAACuB,WAAW,GAAGF,WAAW,CAAChB,OAAO,CAAC,CAAC,CAAC;UAC1C,IAAIM,QAAQ,GAAGrC,IAAI,CAACqC,QAAQ,CAACrC,IAAI,CAAC0C,MAAM,CAAChB,KAAK,CAACI,KAAK,CAAC,CAAC;UACtDJ,KAAK,CAACsB,YAAY,GAAGX,QAAQ,CAAC7B,CAAC,GAAG,GAAG,GAAG6B,QAAQ,CAACgB,CAAC;MACtD;IACF;EACF;EACA,OAAO9B,gBAAgB,CAAC;IAAE,GAAGC,KAAK;IAAEE;EAAM,CAAC,CAAC;AAC9C,CAAC;AAAC4B,OAAA,CAAAhB,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/number-line-controller",
3
3
  "private": true,
4
- "version": "7.3.3",
4
+ "version": "8.0.0-beta.1",
5
5
  "description": "Controller logic for @pie-ui/number-line",
6
6
  "keywords": [
7
7
  "pie",
@@ -14,8 +14,8 @@
14
14
  "access": "public"
15
15
  },
16
16
  "dependencies": {
17
- "@pie-lib/controller-utils": "0.22.2",
18
- "@pie-lib/feedback": "0.24.1",
17
+ "@pie-lib/controller-utils": "1.1.0-next.4",
18
+ "@pie-lib/feedback": "1.1.0-next.4",
19
19
  "lodash": "^4.17.15",
20
20
  "mathjs": "^7.5.1"
21
21
  },
@@ -4,23 +4,24 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.toSessionFormat = exports.toGraphFormat = exports.switchPosition = exports.switchGraphLine = exports.lineIsSwitched = void 0;
7
-
8
- var lineIsSwitched = function lineIsSwitched(line) {
9
- var position = line.position;
7
+ const lineIsSwitched = line => {
8
+ let {
9
+ position
10
+ } = line;
10
11
  return position.left > position.right;
11
12
  };
12
-
13
13
  exports.lineIsSwitched = lineIsSwitched;
14
-
15
- var switchGraphLine = function switchGraphLine(line) {
16
- var position = line.position;
17
-
14
+ const switchGraphLine = line => {
15
+ let {
16
+ position
17
+ } = line;
18
18
  if (position.left < position.right) {
19
19
  return line;
20
20
  }
21
-
22
- var newRightPoint = line.leftPoint,
23
- newLeftPoint = line.rightPoint;
21
+ let {
22
+ leftPoint: newRightPoint,
23
+ rightPoint: newLeftPoint
24
+ } = line;
24
25
  return {
25
26
  leftPoint: newLeftPoint,
26
27
  rightPoint: newRightPoint,
@@ -28,21 +29,19 @@ var switchGraphLine = function switchGraphLine(line) {
28
29
  type: 'line'
29
30
  };
30
31
  };
31
-
32
32
  exports.switchGraphLine = switchGraphLine;
33
-
34
- var switchPosition = function switchPosition(p) {
35
- var newRight = p.left,
36
- newLeft = p.right;
33
+ const switchPosition = p => {
34
+ let {
35
+ left: newRight,
36
+ right: newLeft
37
+ } = p;
37
38
  return {
38
39
  left: newLeft,
39
40
  right: newRight
40
41
  };
41
42
  };
42
-
43
43
  exports.switchPosition = switchPosition;
44
-
45
- var toSessionFormat = function toSessionFormat(gf) {
44
+ const toSessionFormat = gf => {
46
45
  if (gf.type === 'point') {
47
46
  return {
48
47
  type: 'point',
@@ -66,10 +65,8 @@ var toSessionFormat = function toSessionFormat(gf) {
66
65
  };
67
66
  }
68
67
  };
69
-
70
68
  exports.toSessionFormat = toSessionFormat;
71
-
72
- var toGraphFormat = function toGraphFormat(sf) {
69
+ const toGraphFormat = sf => {
73
70
  if (sf.type === 'point') {
74
71
  return {
75
72
  type: 'point',
@@ -95,6 +92,5 @@ var toGraphFormat = function toGraphFormat(sf) {
95
92
  };
96
93
  }
97
94
  };
98
-
99
95
  exports.toGraphFormat = toGraphFormat;
100
96
  //# sourceMappingURL=data-converter.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/data-converter.js"],"names":["lineIsSwitched","line","position","left","right","switchGraphLine","newRightPoint","leftPoint","newLeftPoint","rightPoint","switchPosition","type","p","newRight","newLeft","toSessionFormat","gf","pointType","domainPosition","size","direction","toGraphFormat","sf"],"mappings":"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","sourcesContent":["export const lineIsSwitched = (line) => {\n let { position } = line;\n return position.left > position.right;\n};\n\nexport const switchGraphLine = (line) => {\n let { position } = line;\n\n if (position.left < position.right) {\n return line;\n }\n\n let { leftPoint: newRightPoint, rightPoint: newLeftPoint } = line;\n\n return {\n leftPoint: newLeftPoint,\n rightPoint: newRightPoint,\n position: switchPosition(position),\n type: 'line',\n };\n};\n\nexport const switchPosition = (p) => {\n let { left: newRight, right: newLeft } = p;\n return { left: newLeft, right: newRight };\n};\n\nexport const toSessionFormat = (gf) => {\n if (gf.type === 'point') {\n return {\n type: 'point',\n pointType: gf.pointType,\n domainPosition: gf.position,\n };\n } else if (gf.type === 'line') {\n return {\n type: 'line',\n size: gf.position.right - gf.position.left,\n domainPosition: gf.position.left,\n leftPoint: gf.leftPoint,\n rightPoint: gf.rightPoint,\n };\n } else if (gf.type === 'ray') {\n return {\n type: 'ray',\n domainPosition: gf.position,\n pointType: gf.pointType,\n direction: gf.direction,\n };\n }\n};\n\nexport const toGraphFormat = (sf) => {\n if (sf.type === 'point') {\n return {\n type: 'point',\n pointType: sf.pointType,\n position: sf.domainPosition,\n };\n } else if (sf.type === 'line') {\n return {\n type: 'line',\n position: {\n left: sf.domainPosition,\n right: sf.domainPosition + sf.size,\n },\n leftPoint: sf.leftPoint,\n rightPoint: sf.rightPoint,\n };\n } else if (sf.type === 'ray') {\n return {\n type: 'ray',\n position: sf.domainPosition,\n pointType: sf.pointType,\n direction: sf.direction,\n };\n }\n};\n"],"file":"data-converter.js"}
1
+ {"version":3,"file":"data-converter.js","names":["lineIsSwitched","line","position","left","right","exports","switchGraphLine","leftPoint","newRightPoint","rightPoint","newLeftPoint","switchPosition","type","p","newRight","newLeft","toSessionFormat","gf","pointType","domainPosition","size","direction","toGraphFormat","sf"],"sources":["../src/data-converter.js"],"sourcesContent":["export const lineIsSwitched = (line) => {\n let { position } = line;\n return position.left > position.right;\n};\n\nexport const switchGraphLine = (line) => {\n let { position } = line;\n\n if (position.left < position.right) {\n return line;\n }\n\n let { leftPoint: newRightPoint, rightPoint: newLeftPoint } = line;\n\n return {\n leftPoint: newLeftPoint,\n rightPoint: newRightPoint,\n position: switchPosition(position),\n type: 'line',\n };\n};\n\nexport const switchPosition = (p) => {\n let { left: newRight, right: newLeft } = p;\n return { left: newLeft, right: newRight };\n};\n\nexport const toSessionFormat = (gf) => {\n if (gf.type === 'point') {\n return {\n type: 'point',\n pointType: gf.pointType,\n domainPosition: gf.position,\n };\n } else if (gf.type === 'line') {\n return {\n type: 'line',\n size: gf.position.right - gf.position.left,\n domainPosition: gf.position.left,\n leftPoint: gf.leftPoint,\n rightPoint: gf.rightPoint,\n };\n } else if (gf.type === 'ray') {\n return {\n type: 'ray',\n domainPosition: gf.position,\n pointType: gf.pointType,\n direction: gf.direction,\n };\n }\n};\n\nexport const toGraphFormat = (sf) => {\n if (sf.type === 'point') {\n return {\n type: 'point',\n pointType: sf.pointType,\n position: sf.domainPosition,\n };\n } else if (sf.type === 'line') {\n return {\n type: 'line',\n position: {\n left: sf.domainPosition,\n right: sf.domainPosition + sf.size,\n },\n leftPoint: sf.leftPoint,\n rightPoint: sf.rightPoint,\n };\n } else if (sf.type === 'ray') {\n return {\n type: 'ray',\n position: sf.domainPosition,\n pointType: sf.pointType,\n direction: sf.direction,\n };\n }\n};\n"],"mappings":"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","ignoreList":[]}