@pie-lib/plot 3.1.0-next.5 → 3.1.1-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1,16 @@
1
- []
1
+ [
2
+ {
3
+ "type": "fix",
4
+ "scope": null,
5
+ "subject": "solve conflicts with dev",
6
+ "merge": null,
7
+ "header": "fix: solve conflicts with dev",
8
+ "body": null,
9
+ "footer": null,
10
+ "notes": [],
11
+ "hash": "50d83c31e1e4d5e719b714ff4bd7aafa797db6d2",
12
+ "gitTags": "",
13
+ "committerDate": "2026-01-28 12:46:38 +0200",
14
+ "isTagged": false
15
+ }
16
+ ]
package/lib/draggable.js CHANGED
@@ -1,5 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.string.iterator.js");
9
+ require("core-js/modules/es.weak-map.js");
10
+ require("core-js/modules/web.dom-collections.iterator.js");
3
11
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
12
  var _typeof = require("@babel/runtime/helpers/typeof");
5
13
  Object.defineProperty(exports, "__esModule", {
@@ -1 +1 @@
1
- {"version":3,"file":"draggable.js","names":["_reactDraggable","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","_superPropGet","p","_get2","LocalDraggable","exports","_Draggable","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","componentWillReceiveProps","next","setState","x","y","Draggable"],"sources":["../src/draggable.jsx"],"sourcesContent":["import Draggable, { DraggableCore } from 'react-draggable';\n\nexport default class LocalDraggable extends Draggable {\n componentWillReceiveProps(next) {\n super.componentWillReceiveProps(next);\n //Remove the x/y state as these values have now been updated and will come through as props.\n this.setState({ x: 0, y: 0 });\n }\n}\n\nexport { DraggableCore };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA2D,SAAAD,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,wBAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,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,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAmB,WAAAnB,CAAA,EAAAK,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAArB,CAAA,EAAAsB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAApB,CAAA,EAAAyB,WAAA,IAAApB,CAAA,CAAAqB,KAAA,CAAA1B,CAAA,EAAAD,CAAA;AAAA,SAAAuB,0BAAA,cAAAtB,CAAA,IAAA2B,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAd,IAAA,CAAAQ,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAA3B,CAAA,aAAAsB,yBAAA,YAAAA,0BAAA,aAAAtB,CAAA;AAAA,SAAA8B,cAAA9B,CAAA,EAAAK,CAAA,EAAAN,CAAA,EAAAG,CAAA,QAAA6B,CAAA,OAAAC,KAAA,iBAAAZ,gBAAA,iBAAAlB,CAAA,GAAAF,CAAA,CAAA4B,SAAA,GAAA5B,CAAA,GAAAK,CAAA,EAAAN,CAAA,cAAAG,CAAA,yBAAA6B,CAAA,aAAA/B,CAAA,WAAA+B,CAAA,CAAAL,KAAA,CAAA3B,CAAA,EAAAC,CAAA,OAAA+B,CAAA;AAAA,IAEtCE,cAAc,GAAAC,OAAA,qCAAAC,UAAA;EAAA,SAAAF,eAAA;IAAA,IAAAG,gBAAA,mBAAAH,cAAA;IAAA,OAAAd,UAAA,OAAAc,cAAA,EAAAI,SAAA;EAAA;EAAA,IAAAC,UAAA,aAAAL,cAAA,EAAAE,UAAA;EAAA,WAAAI,aAAA,aAAAN,cAAA;IAAAO,GAAA;IAAAC,KAAA,EACjC,SAAAC,yBAAyBA,CAACC,IAAI,EAAE;MAC9Bb,aAAA,CAAAG,cAAA,yCAAgCU,IAAI;MACpC;MACA,IAAI,CAACC,QAAQ,CAAC;QAAEC,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC,CAAC;IAC/B;EAAC;AAAA,EALyCC,0BAAS","ignoreList":[]}
1
+ {"version":3,"file":"draggable.js","names":["_reactDraggable","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","_superPropGet","p","_get2","LocalDraggable","exports","_Draggable","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","componentWillReceiveProps","next","setState","x","y","Draggable"],"sources":["../src/draggable.jsx"],"sourcesContent":["import Draggable, { DraggableCore } from 'react-draggable';\n\nexport default class LocalDraggable extends Draggable {\n componentWillReceiveProps(next) {\n super.componentWillReceiveProps(next);\n //Remove the x/y state as these values have now been updated and will come through as props.\n this.setState({ x: 0, y: 0 });\n }\n}\n\nexport { DraggableCore };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA2D,SAAAD,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,wBAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,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,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAmB,WAAAnB,CAAA,EAAAK,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAArB,CAAA,EAAAsB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAApB,CAAA,EAAAyB,WAAA,IAAApB,CAAA,CAAAqB,KAAA,CAAA1B,CAAA,EAAAD,CAAA;AAAA,SAAAuB,0BAAA,cAAAtB,CAAA,IAAA2B,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAd,IAAA,CAAAQ,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAA3B,CAAA,aAAAsB,yBAAA,YAAAA,0BAAA,aAAAtB,CAAA;AAAA,SAAA8B,cAAA9B,CAAA,EAAAK,CAAA,EAAAN,CAAA,EAAAG,CAAA,QAAA6B,CAAA,OAAAC,KAAA,iBAAAZ,gBAAA,iBAAAlB,CAAA,GAAAF,CAAA,CAAA4B,SAAA,GAAA5B,CAAA,GAAAK,CAAA,EAAAN,CAAA,cAAAG,CAAA,yBAAA6B,CAAA,aAAA/B,CAAA,WAAA+B,CAAA,CAAAL,KAAA,CAAA3B,CAAA,EAAAC,CAAA,OAAA+B,CAAA;AAAA,IAEtCE,cAAc,GAAAC,OAAA,qCAAAC,UAAA;EAAA,SAAAF,eAAA;IAAA,IAAAG,gBAAA,mBAAAH,cAAA;IAAA,OAAAd,UAAA,OAAAc,cAAA,EAAAI,SAAA;EAAA;EAAA,IAAAC,UAAA,aAAAL,cAAA,EAAAE,UAAA;EAAA,WAAAI,aAAA,aAAAN,cAAA;IAAAO,GAAA;IAAAC,KAAA,EACjC,SAAAC,yBAAyBA,CAACC,IAAI,EAAE;MAC9Bb,aAAA,CAAAG,cAAA,yCAAgCU,IAAI;MACpC;MACA,IAAI,CAACC,QAAQ,CAAC;QAAEC,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC,CAAC;IAC/B;EAAC;AAAA,EALyCC,0BAAS","ignoreList":[]}
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.create = void 0;
9
+ require("core-js/modules/es.function.bind.js");
10
+ require("core-js/modules/es.parse-int.js");
8
11
  var _invariant = _interopRequireDefault(require("invariant"));
9
12
  var _utils = require("./utils");
10
13
  var _d3Scale = require("d3-scale");
@@ -1 +1 @@
1
- {"version":3,"file":"graph-props.js","names":["_invariant","_interopRequireDefault","require","_utils","_d3Scale","createSnapMinAndMax","_ref","min","max","step","parseInt","create","exports","domain","range","size","getRootNode","invariant","domainMinMax","rangeMinMax","scale","x","scaleLinear","width","y","height","snap","snapTo","bind"],"sources":["../src/graph-props.js"],"sourcesContent":["import invariant from 'invariant';\nimport { snapTo } from './utils';\nimport { scaleLinear } from 'd3-scale';\n\nconst createSnapMinAndMax = ({ min, max, step }) => {\n // for graphing, if step is a value with decimals, we have to calculate the min & max for the grid taking in consideration that 0 has to be exactly in the middle\n // for example, if min: -5 & max: 5 & step: 0.75, in order to keep 0 in the middle we have to set min: -4.5 & max: 4.5\n\n return {\n step,\n min: parseInt(min / step) * step,\n max: parseInt(max / step) * step,\n };\n};\n\nexport const create = (domain, range, size, getRootNode) => {\n invariant(domain.min < domain.max, 'domain: min must be less than max');\n invariant(range.min < range.max, 'range: min must be less than max');\n\n const domainMinMax = createSnapMinAndMax(domain);\n const rangeMinMax = createSnapMinAndMax(range);\n\n const scale = {\n x: scaleLinear()\n .domain([domain.min, domain.max])\n .range([0, size.width]),\n y: scaleLinear()\n .domain([range.max, range.min])\n .range([0, size.height]),\n };\n\n const snap = {\n x: snapTo.bind(null, domainMinMax.min, domainMinMax.max, domainMinMax.step),\n y: snapTo.bind(null, rangeMinMax.min, rangeMinMax.max, rangeMinMax.step),\n };\n\n return { scale, snap, domain, range, size, getRootNode };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAA2B;EAAA,IAArBC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IAAEC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI;EAC3C;EACA;;EAEA,OAAO;IACLA,IAAI,EAAJA,IAAI;IACJF,GAAG,EAAEG,QAAQ,CAACH,GAAG,GAAGE,IAAI,CAAC,GAAGA,IAAI;IAChCD,GAAG,EAAEE,QAAQ,CAACF,GAAG,GAAGC,IAAI,CAAC,GAAGA;EAC9B,CAAC;AACH,CAAC;AAEM,IAAME,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAEC,WAAW,EAAK;EAC1D,IAAAC,qBAAS,EAACJ,MAAM,CAACN,GAAG,GAAGM,MAAM,CAACL,GAAG,EAAE,mCAAmC,CAAC;EACvE,IAAAS,qBAAS,EAACH,KAAK,CAACP,GAAG,GAAGO,KAAK,CAACN,GAAG,EAAE,kCAAkC,CAAC;EAEpE,IAAMU,YAAY,GAAGb,mBAAmB,CAACQ,MAAM,CAAC;EAChD,IAAMM,WAAW,GAAGd,mBAAmB,CAACS,KAAK,CAAC;EAE9C,IAAMM,KAAK,GAAG;IACZC,CAAC,EAAE,IAAAC,oBAAW,EAAC,CAAC,CACbT,MAAM,CAAC,CAACA,MAAM,CAACN,GAAG,EAAEM,MAAM,CAACL,GAAG,CAAC,CAAC,CAChCM,KAAK,CAAC,CAAC,CAAC,EAAEC,IAAI,CAACQ,KAAK,CAAC,CAAC;IACzBC,CAAC,EAAE,IAAAF,oBAAW,EAAC,CAAC,CACbT,MAAM,CAAC,CAACC,KAAK,CAACN,GAAG,EAAEM,KAAK,CAACP,GAAG,CAAC,CAAC,CAC9BO,KAAK,CAAC,CAAC,CAAC,EAAEC,IAAI,CAACU,MAAM,CAAC;EAC3B,CAAC;EAED,IAAMC,IAAI,GAAG;IACXL,CAAC,EAAEM,aAAM,CAACC,IAAI,CAAC,IAAI,EAAEV,YAAY,CAACX,GAAG,EAAEW,YAAY,CAACV,GAAG,EAAEU,YAAY,CAACT,IAAI,CAAC;IAC3Ee,CAAC,EAAEG,aAAM,CAACC,IAAI,CAAC,IAAI,EAAET,WAAW,CAACZ,GAAG,EAAEY,WAAW,CAACX,GAAG,EAAEW,WAAW,CAACV,IAAI;EACzE,CAAC;EAED,OAAO;IAAEW,KAAK,EAALA,KAAK;IAAEM,IAAI,EAAJA,IAAI;IAAEb,MAAM,EAANA,MAAM;IAAEC,KAAK,EAALA,KAAK;IAAEC,IAAI,EAAJA,IAAI;IAAEC,WAAW,EAAXA;EAAY,CAAC;AAC1D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"graph-props.js","names":["_invariant","_interopRequireDefault","require","_utils","_d3Scale","createSnapMinAndMax","_ref","min","max","step","parseInt","create","exports","domain","range","size","getRootNode","invariant","domainMinMax","rangeMinMax","scale","x","scaleLinear","width","y","height","snap","snapTo","bind"],"sources":["../src/graph-props.js"],"sourcesContent":["import invariant from 'invariant';\nimport { snapTo } from './utils';\nimport { scaleLinear } from 'd3-scale';\n\nconst createSnapMinAndMax = ({ min, max, step }) => {\n // for graphing, if step is a value with decimals, we have to calculate the min & max for the grid taking in consideration that 0 has to be exactly in the middle\n // for example, if min: -5 & max: 5 & step: 0.75, in order to keep 0 in the middle we have to set min: -4.5 & max: 4.5\n\n return {\n step,\n min: parseInt(min / step) * step,\n max: parseInt(max / step) * step,\n };\n};\n\nexport const create = (domain, range, size, getRootNode) => {\n invariant(domain.min < domain.max, 'domain: min must be less than max');\n invariant(range.min < range.max, 'range: min must be less than max');\n\n const domainMinMax = createSnapMinAndMax(domain);\n const rangeMinMax = createSnapMinAndMax(range);\n\n const scale = {\n x: scaleLinear()\n .domain([domain.min, domain.max])\n .range([0, size.width]),\n y: scaleLinear()\n .domain([range.max, range.min])\n .range([0, size.height]),\n };\n\n const snap = {\n x: snapTo.bind(null, domainMinMax.min, domainMinMax.max, domainMinMax.step),\n y: snapTo.bind(null, rangeMinMax.min, rangeMinMax.max, rangeMinMax.step),\n };\n\n return { scale, snap, domain, range, size, getRootNode };\n};\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAA2B;EAAA,IAArBC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IAAEC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI;EAC3C;EACA;;EAEA,OAAO;IACLA,IAAI,EAAJA,IAAI;IACJF,GAAG,EAAEG,QAAQ,CAACH,GAAG,GAAGE,IAAI,CAAC,GAAGA,IAAI;IAChCD,GAAG,EAAEE,QAAQ,CAACF,GAAG,GAAGC,IAAI,CAAC,GAAGA;EAC9B,CAAC;AACH,CAAC;AAEM,IAAME,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAEC,WAAW,EAAK;EAC1D,IAAAC,qBAAS,EAACJ,MAAM,CAACN,GAAG,GAAGM,MAAM,CAACL,GAAG,EAAE,mCAAmC,CAAC;EACvE,IAAAS,qBAAS,EAACH,KAAK,CAACP,GAAG,GAAGO,KAAK,CAACN,GAAG,EAAE,kCAAkC,CAAC;EAEpE,IAAMU,YAAY,GAAGb,mBAAmB,CAACQ,MAAM,CAAC;EAChD,IAAMM,WAAW,GAAGd,mBAAmB,CAACS,KAAK,CAAC;EAE9C,IAAMM,KAAK,GAAG;IACZC,CAAC,EAAE,IAAAC,oBAAW,EAAC,CAAC,CACbT,MAAM,CAAC,CAACA,MAAM,CAACN,GAAG,EAAEM,MAAM,CAACL,GAAG,CAAC,CAAC,CAChCM,KAAK,CAAC,CAAC,CAAC,EAAEC,IAAI,CAACQ,KAAK,CAAC,CAAC;IACzBC,CAAC,EAAE,IAAAF,oBAAW,EAAC,CAAC,CACbT,MAAM,CAAC,CAACC,KAAK,CAACN,GAAG,EAAEM,KAAK,CAACP,GAAG,CAAC,CAAC,CAC9BO,KAAK,CAAC,CAAC,CAAC,EAAEC,IAAI,CAACU,MAAM,CAAC;EAC3B,CAAC;EAED,IAAMC,IAAI,GAAG;IACXL,CAAC,EAAEM,aAAM,CAACC,IAAI,CAAC,IAAI,EAAEV,YAAY,CAACX,GAAG,EAAEW,YAAY,CAACV,GAAG,EAAEU,YAAY,CAACT,IAAI,CAAC;IAC3Ee,CAAC,EAAEG,aAAM,CAACC,IAAI,CAAC,IAAI,EAAET,WAAW,CAACZ,GAAG,EAAEY,WAAW,CAACX,GAAG,EAAEW,WAAW,CAACV,IAAI;EACzE,CAAC;EAED,OAAO;IAAEW,KAAK,EAALA,KAAK;IAAEM,IAAI,EAAJA,IAAI;IAAEb,MAAM,EAANA,MAAM;IAAEC,KAAK,EAALA,KAAK;IAAEC,IAAI,EAAJA,IAAI;IAAEC,WAAW,EAAXA;EAAY,CAAC;AAC1D,CAAC","ignoreList":[]}
@@ -1,5 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.string.iterator.js");
9
+ require("core-js/modules/es.weak-map.js");
10
+ require("core-js/modules/web.dom-collections.iterator.js");
3
11
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
12
  var _typeof = require("@babel/runtime/helpers/typeof");
5
13
  Object.defineProperty(exports, "__esModule", {
@@ -15,6 +23,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
15
23
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
24
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
25
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
26
+ require("core-js/modules/es.number.to-fixed.js");
18
27
  var _react = _interopRequireDefault(require("react"));
19
28
  var _propTypes = _interopRequireDefault(require("prop-types"));
20
29
  var _types = require("./types");
@@ -232,10 +241,10 @@ var gridDraggable = exports.gridDraggable = function gridDraggable(opts) {
232
241
  var graphProps = _this.props.graphProps;
233
242
  var scale = graphProps.scale,
234
243
  snap = graphProps.snap;
235
- var _clientPoint2 = (0, _d3Selection.clientPoint)(e.target, e),
236
- _clientPoint3 = (0, _slicedToArray2["default"])(_clientPoint2, 2),
237
- rawX = _clientPoint3[0],
238
- rawY = _clientPoint3[1];
244
+ var _pointer = (0, _d3Selection.pointer)(e, e.target),
245
+ _pointer2 = (0, _slicedToArray2["default"])(_pointer, 2),
246
+ rawX = _pointer2[0],
247
+ rawY = _pointer2[1];
239
248
  var x = scale.x.invert(rawX);
240
249
  var y = scale.y.invert(rawY);
241
250
  x = snap.x(x);
@@ -1 +1 @@
1
- {"version":3,"file":"grid-draggable.js","names":["_react","_interopRequireDefault","require","_propTypes","_types","_draggable","_debug","utils","_interopRequireWildcard","_isFunction","_invariant","_d3Selection","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","log","debug","deltaFn","exports","scale","snap","val","delta","normalized","inverted","invert","fixDecimalsArithmetic","toFixed","gridDraggable","opts","Comp","_GridDraggable","invariant","isFunction","fromDelta","bounds","anchorPoint","_React$Component","GridDraggable","props","_this","_classCallCheck2","_defineProperty2","graphProps","domain","range","x","step","y","onDragStart","document","activeElement","blur","setState","startX","clientX","startY","clientY","_opts$anchorPoint","key","event","K","toUpperCase","end","concat","start","state","Math","abs","out","grid","scaled","left","right","top","bottom","node","svg","ownerSVGElement","createSVGPoint","point","touches","length","touch","getScreenCTM","matrixTransform","inverse","rect","getBoundingClientRect","clientLeft","clientTop","dd","rootNode","getRootNode","clientPoint","getClientPoint","_clientPoint","_slicedToArray2","rawX","rawY","xOutside","deltaX","min","max","yOutside","deltaY","_this$props","onDrag","getScaledBounds","skipDragOutsideOfBounds","dragArg","applyDelta","undefined","pos","position","p","getDelta","_this$props2","onDragStop","onClick","lastX","lastY","isClick","tiny","_clientPoint2","target","_clientPoint3","_inherits2","_createClass2","value","render","_this$props3","disabled","rest","_objectWithoutProperties2","onMouseDown","nativeEvent","preventDefault","isDragging","createElement","DraggableCore","onStart","onStop","axis","_extends2","React","Component","PropTypes","bool","func","onMove","GraphPropsType","isRequired"],"sources":["../src/grid-draggable.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { GraphPropsType } from './types';\nimport { DraggableCore } from './draggable';\nimport debug from 'debug';\nimport * as utils from './utils';\nimport isFunction from 'lodash/isFunction';\nimport invariant from 'invariant';\nimport { clientPoint } from 'd3-selection';\n\nconst log = debug('pie-lib:plot:grid-draggable');\n\nexport const deltaFn = (scale, snap, val) => (delta) => {\n const normalized = delta + scale(0);\n const inverted = scale.invert(normalized);\n\n const fixDecimalsArithmetic = (snap(val + inverted).toFixed(4) * 1000) / 1000;\n\n return fixDecimalsArithmetic;\n};\n\n/**\n * Creates a Component that is draggable, within a bounded grid.\n * @param {*} opts\n */\nexport const gridDraggable = (opts) => (Comp) => {\n invariant(\n !!opts && isFunction(opts.fromDelta) && isFunction(opts.bounds) && isFunction(opts.anchorPoint),\n 'You must supply an object with: { anchorPoint: Function, fromDelta: Function, bounds: Function }',\n );\n return class GridDraggable extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDrag: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n onMove: PropTypes.func,\n graphProps: GraphPropsType.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n startX: null,\n startY: null,\n };\n }\n\n grid = () => {\n const { graphProps } = this.props;\n const { scale, domain, range } = graphProps;\n return {\n x: scale.x(domain.step) - scale.x(0),\n y: scale.y(range.step) - scale.y(0),\n };\n };\n onStart = (e) => {\n const { onDragStart } = this.props;\n if (document.activeElement) {\n document.activeElement.blur();\n }\n this.setState({ startX: e.clientX, startY: e.clientY });\n if (onDragStart) {\n onDragStart();\n }\n };\n position = () => {\n const { x, y } = opts.anchorPoint(this.props);\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n\n return {\n anchorPoint: {\n x,\n y,\n },\n x: deltaFn(scale.x, snap.x, x),\n y: deltaFn(scale.y, snap.y, y),\n };\n };\n\n tiny = (key, event) => {\n const K = key.toUpperCase();\n const end = event[`client${K}`];\n const start = this.state[`start${K}`];\n const delta = Math.abs(end - start);\n const out = delta < Math.abs(this.grid()[key]) / 10;\n log('[tiny] key: ', key, 'delta: ', delta, 'out: ', out);\n return out;\n };\n\n getScaledBounds = () => {\n const bounds = opts.bounds(this.props, this.props.graphProps);\n log('bounds: ', bounds);\n const grid = this.grid();\n\n const scaled = {\n left: bounds.left * grid.x,\n right: bounds.right * grid.x,\n top: bounds.top * grid.y,\n bottom: bounds.bottom * grid.y,\n };\n log('[getScaledBounds]: ', scaled);\n return scaled;\n };\n\n /**\n * Retrieves the coordinates of a mouse or touch event relative to an SVG element.\n * This method has been overwritten from the d3-selection library's clientPoint to handle touch events and improve clarity.\n * @param {Element} node - The SVG element.\n * @param {Event} event - The mouse or touch event.\n * @returns {Array} - An array containing the coordinates [x, y] relative to the SVG element.\n */\n getClientPoint = (node, event) => {\n if (!node || !event) {\n return null;\n }\n const svg = node.ownerSVGElement || node;\n\n if (svg && svg.createSVGPoint) {\n let point = svg.createSVGPoint();\n // Check if it's a touch event and use the first touch point\n if (event.touches && event.touches.length > 0) {\n const touch = event.touches[0];\n point.x = touch.clientX;\n point.y = touch.clientY;\n } else {\n // Fall back to mouse event properties\n point.x = event.clientX;\n point.y = event.clientY;\n }\n if (node.getScreenCTM) {\n point = point.matrixTransform(node.getScreenCTM().inverse());\n return [point.x, point.y];\n } else {\n return null;\n }\n }\n\n const rect = node.getBoundingClientRect();\n if (rect) {\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n } else {\n return null;\n }\n };\n\n skipDragOutsideOfBounds = (dd, e, graphProps) => {\n // Ignore drag movement outside of the domain and range.\n const rootNode = graphProps.getRootNode();\n const clientPoint = this.getClientPoint(rootNode, e);\n\n if (clientPoint === null) {\n return true; // Indicate that the drag is outside of bounds\n }\n\n const [rawX, rawY] = clientPoint;\n const { scale, domain, range } = graphProps;\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n\n const xOutside = (dd.deltaX > 0 && x < domain.min) || (dd.deltaX < 0 && x > domain.max);\n const yOutside = (dd.deltaY > 0 && y > range.max) || (dd.deltaY < 0 && y < range.min);\n return xOutside || yOutside;\n };\n\n onDrag = (e, dd) => {\n const { onDrag, graphProps } = this.props;\n\n if (!onDrag) {\n return;\n }\n\n const bounds = this.getScaledBounds();\n\n if (dd.deltaX < 0 && dd.deltaX < bounds.left) {\n return;\n }\n\n if (dd.deltaX > 0 && dd.deltaX > bounds.right) {\n return;\n }\n\n if (dd.deltaY < 0 && dd.deltaY < bounds.top) {\n return;\n }\n\n if (dd.deltaY > 0 && dd.deltaY > bounds.bottom) {\n return;\n }\n\n if (this.skipDragOutsideOfBounds(dd, e, graphProps)) {\n return;\n }\n\n const dragArg = this.applyDelta({ x: dd.deltaX, y: dd.deltaY });\n\n if (dragArg !== undefined || dragArg !== null) {\n onDrag(dragArg);\n }\n };\n\n getDelta = (point) => {\n const pos = this.position();\n\n const p = {\n x: pos.x(point.x),\n y: pos.y(point.y),\n };\n\n return utils.getDelta(pos.anchorPoint, p);\n };\n\n applyDelta = (point) => {\n const delta = this.getDelta(point);\n log('[applyDelta] delta:', delta);\n return opts.fromDelta(this.props, delta);\n };\n\n onStop = (e, dd) => {\n log('[onStop] dd:', dd);\n const { onDragStop, onClick } = this.props;\n\n if (onDragStop) {\n onDragStop();\n }\n\n log('[onStop] lastX/Y: ', dd.lastX, dd.lastY);\n const isClick = this.tiny('x', e) && this.tiny('y', e);\n\n if (isClick) {\n if (onClick) {\n log('call onClick');\n this.setState({ startX: null });\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n const [rawX, rawY] = clientPoint(e.target, e);\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n x = snap.x(x);\n y = snap.y(y);\n onClick({ x, y });\n return false;\n }\n }\n\n this.setState({ startX: null, startY: null });\n // return false to prevent state updates in the underlying draggable - a move will have triggered an update already.\n return false;\n };\n\n render() {\n const { disabled, ...rest } = this.props;\n const grid = this.grid();\n\n // prevent the text select icon from rendering.\n const onMouseDown = (e) => e.nativeEvent.preventDefault();\n\n /**\n * TODO: This shouldnt be necessary, we should be able to use the r-d classnames.\n * But they aren't being unset. If we continue with this lib, we'll have to fix this.\n */\n const isDragging = this.state ? !!this.state.startX : false;\n\n return (\n <DraggableCore\n disabled={disabled}\n onMouseDown={onMouseDown}\n onStart={this.onStart}\n onDrag={this.onDrag}\n onStop={this.onStop}\n axis={opts.axis || 'both'}\n grid={[grid.x, grid.y]}\n >\n <Comp {...rest} disabled={disabled} isDragging={isDragging} />\n </DraggableCore>\n );\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"grid-draggable.js","names":["_react","_interopRequireDefault","require","_propTypes","_types","_draggable","_debug","utils","_interopRequireWildcard","_isFunction","_invariant","_d3Selection","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","log","debug","deltaFn","exports","scale","snap","val","delta","normalized","inverted","invert","fixDecimalsArithmetic","toFixed","gridDraggable","opts","Comp","_GridDraggable","invariant","isFunction","fromDelta","bounds","anchorPoint","_React$Component","GridDraggable","props","_this","_classCallCheck2","_defineProperty2","graphProps","domain","range","x","step","y","onDragStart","document","activeElement","blur","setState","startX","clientX","startY","clientY","_opts$anchorPoint","key","event","K","toUpperCase","end","concat","start","state","Math","abs","out","grid","scaled","left","right","top","bottom","node","svg","ownerSVGElement","createSVGPoint","point","touches","length","touch","getScreenCTM","matrixTransform","inverse","rect","getBoundingClientRect","clientLeft","clientTop","dd","rootNode","getRootNode","clientPoint","getClientPoint","_clientPoint","_slicedToArray2","rawX","rawY","xOutside","deltaX","min","max","yOutside","deltaY","_this$props","onDrag","getScaledBounds","skipDragOutsideOfBounds","dragArg","applyDelta","undefined","pos","position","p","getDelta","_this$props2","onDragStop","onClick","lastX","lastY","isClick","tiny","_pointer","pointer","target","_pointer2","_inherits2","_createClass2","value","render","_this$props3","disabled","rest","_objectWithoutProperties2","onMouseDown","nativeEvent","preventDefault","isDragging","createElement","DraggableCore","onStart","onStop","axis","_extends2","React","Component","PropTypes","bool","func","onMove","GraphPropsType","isRequired"],"sources":["../src/grid-draggable.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { GraphPropsType } from './types';\nimport { DraggableCore } from './draggable';\nimport debug from 'debug';\nimport * as utils from './utils';\nimport isFunction from 'lodash/isFunction';\nimport invariant from 'invariant';\nimport { pointer } from 'd3-selection';\n\nconst log = debug('pie-lib:plot:grid-draggable');\n\nexport const deltaFn = (scale, snap, val) => (delta) => {\n const normalized = delta + scale(0);\n const inverted = scale.invert(normalized);\n\n const fixDecimalsArithmetic = (snap(val + inverted).toFixed(4) * 1000) / 1000;\n\n return fixDecimalsArithmetic;\n};\n\n/**\n * Creates a Component that is draggable, within a bounded grid.\n * @param {*} opts\n */\nexport const gridDraggable = (opts) => (Comp) => {\n invariant(\n !!opts && isFunction(opts.fromDelta) && isFunction(opts.bounds) && isFunction(opts.anchorPoint),\n 'You must supply an object with: { anchorPoint: Function, fromDelta: Function, bounds: Function }',\n );\n return class GridDraggable extends React.Component {\n static propTypes = {\n disabled: PropTypes.bool,\n onDragStart: PropTypes.func,\n onDrag: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n onMove: PropTypes.func,\n graphProps: GraphPropsType.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n startX: null,\n startY: null,\n };\n }\n\n grid = () => {\n const { graphProps } = this.props;\n const { scale, domain, range } = graphProps;\n return {\n x: scale.x(domain.step) - scale.x(0),\n y: scale.y(range.step) - scale.y(0),\n };\n };\n onStart = (e) => {\n const { onDragStart } = this.props;\n if (document.activeElement) {\n document.activeElement.blur();\n }\n this.setState({ startX: e.clientX, startY: e.clientY });\n if (onDragStart) {\n onDragStart();\n }\n };\n position = () => {\n const { x, y } = opts.anchorPoint(this.props);\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n\n return {\n anchorPoint: {\n x,\n y,\n },\n x: deltaFn(scale.x, snap.x, x),\n y: deltaFn(scale.y, snap.y, y),\n };\n };\n\n tiny = (key, event) => {\n const K = key.toUpperCase();\n const end = event[`client${K}`];\n const start = this.state[`start${K}`];\n const delta = Math.abs(end - start);\n const out = delta < Math.abs(this.grid()[key]) / 10;\n log('[tiny] key: ', key, 'delta: ', delta, 'out: ', out);\n return out;\n };\n\n getScaledBounds = () => {\n const bounds = opts.bounds(this.props, this.props.graphProps);\n log('bounds: ', bounds);\n const grid = this.grid();\n\n const scaled = {\n left: bounds.left * grid.x,\n right: bounds.right * grid.x,\n top: bounds.top * grid.y,\n bottom: bounds.bottom * grid.y,\n };\n log('[getScaledBounds]: ', scaled);\n return scaled;\n };\n\n /**\n * Retrieves the coordinates of a mouse or touch event relative to an SVG element.\n * This method has been overwritten from the d3-selection library's clientPoint to handle touch events and improve clarity.\n * @param {Element} node - The SVG element.\n * @param {Event} event - The mouse or touch event.\n * @returns {Array} - An array containing the coordinates [x, y] relative to the SVG element.\n */\n getClientPoint = (node, event) => {\n if (!node || !event) {\n return null;\n }\n const svg = node.ownerSVGElement || node;\n\n if (svg && svg.createSVGPoint) {\n let point = svg.createSVGPoint();\n // Check if it's a touch event and use the first touch point\n if (event.touches && event.touches.length > 0) {\n const touch = event.touches[0];\n point.x = touch.clientX;\n point.y = touch.clientY;\n } else {\n // Fall back to mouse event properties\n point.x = event.clientX;\n point.y = event.clientY;\n }\n if (node.getScreenCTM) {\n point = point.matrixTransform(node.getScreenCTM().inverse());\n return [point.x, point.y];\n } else {\n return null;\n }\n }\n\n const rect = node.getBoundingClientRect();\n if (rect) {\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n } else {\n return null;\n }\n };\n\n skipDragOutsideOfBounds = (dd, e, graphProps) => {\n // Ignore drag movement outside of the domain and range.\n const rootNode = graphProps.getRootNode();\n const clientPoint = this.getClientPoint(rootNode, e);\n\n if (clientPoint === null) {\n return true; // Indicate that the drag is outside of bounds\n }\n\n const [rawX, rawY] = clientPoint;\n const { scale, domain, range } = graphProps;\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n\n const xOutside = (dd.deltaX > 0 && x < domain.min) || (dd.deltaX < 0 && x > domain.max);\n const yOutside = (dd.deltaY > 0 && y > range.max) || (dd.deltaY < 0 && y < range.min);\n return xOutside || yOutside;\n };\n\n onDrag = (e, dd) => {\n const { onDrag, graphProps } = this.props;\n\n if (!onDrag) {\n return;\n }\n\n const bounds = this.getScaledBounds();\n\n if (dd.deltaX < 0 && dd.deltaX < bounds.left) {\n return;\n }\n\n if (dd.deltaX > 0 && dd.deltaX > bounds.right) {\n return;\n }\n\n if (dd.deltaY < 0 && dd.deltaY < bounds.top) {\n return;\n }\n\n if (dd.deltaY > 0 && dd.deltaY > bounds.bottom) {\n return;\n }\n\n if (this.skipDragOutsideOfBounds(dd, e, graphProps)) {\n return;\n }\n\n const dragArg = this.applyDelta({ x: dd.deltaX, y: dd.deltaY });\n\n if (dragArg !== undefined || dragArg !== null) {\n onDrag(dragArg);\n }\n };\n\n getDelta = (point) => {\n const pos = this.position();\n\n const p = {\n x: pos.x(point.x),\n y: pos.y(point.y),\n };\n\n return utils.getDelta(pos.anchorPoint, p);\n };\n\n applyDelta = (point) => {\n const delta = this.getDelta(point);\n log('[applyDelta] delta:', delta);\n return opts.fromDelta(this.props, delta);\n };\n\n onStop = (e, dd) => {\n log('[onStop] dd:', dd);\n const { onDragStop, onClick } = this.props;\n\n if (onDragStop) {\n onDragStop();\n }\n\n log('[onStop] lastX/Y: ', dd.lastX, dd.lastY);\n const isClick = this.tiny('x', e) && this.tiny('y', e);\n\n if (isClick) {\n if (onClick) {\n log('call onClick');\n this.setState({ startX: null });\n const { graphProps } = this.props;\n const { scale, snap } = graphProps;\n const [rawX, rawY] = pointer(e, e.target);\n let x = scale.x.invert(rawX);\n let y = scale.y.invert(rawY);\n x = snap.x(x);\n y = snap.y(y);\n onClick({ x, y });\n return false;\n }\n }\n\n this.setState({ startX: null, startY: null });\n // return false to prevent state updates in the underlying draggable - a move will have triggered an update already.\n return false;\n };\n\n render() {\n const { disabled, ...rest } = this.props;\n const grid = this.grid();\n\n // prevent the text select icon from rendering.\n const onMouseDown = (e) => e.nativeEvent.preventDefault();\n\n /**\n * TODO: This shouldnt be necessary, we should be able to use the r-d classnames.\n * But they aren't being unset. If we continue with this lib, we'll have to fix this.\n */\n const isDragging = this.state ? !!this.state.startX : false;\n\n return (\n <DraggableCore\n disabled={disabled}\n onMouseDown={onMouseDown}\n onStart={this.onStart}\n onDrag={this.onDrag}\n onStop={this.onStop}\n axis={opts.axis || 'both'}\n grid={[grid.x, grid.y]}\n >\n <Comp {...rest} disabled={disabled} isDragging={isDragging} />\n </DraggableCore>\n );\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
package/lib/index.js CHANGED
@@ -1,5 +1,12 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
3
10
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
11
  var _typeof = require("@babel/runtime/helpers/typeof");
5
12
  Object.defineProperty(exports, "__esModule", {
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_root","_interopRequireDefault","require","_draggable","_gridDraggable","utils","_interopRequireWildcard","exports","trig","types","_graphProps","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sources":["../src/index.js"],"sourcesContent":["import Root from './root';\nimport Draggable from './draggable';\nimport { gridDraggable } from './grid-draggable';\nimport * as utils from './utils';\nimport * as trig from './trig';\nimport * as types from './types';\nimport { create as createGraphProps } from './graph-props';\n\nexport { Root, Draggable, gridDraggable, utils, trig, types, createGraphProps };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAC,uBAAA,CAAAJ,OAAA;AAAiCK,OAAA,CAAAF,KAAA,GAAAA,KAAA;AACjC,IAAAG,IAAA,GAAAF,uBAAA,CAAAJ,OAAA;AAA+BK,OAAA,CAAAC,IAAA,GAAAA,IAAA;AAC/B,IAAAC,KAAA,GAAAH,uBAAA,CAAAJ,OAAA;AAAiCK,OAAA,CAAAE,KAAA,GAAAA,KAAA;AACjC,IAAAC,WAAA,GAAAR,OAAA;AAA2D,SAAAI,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,wBAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,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,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_root","_interopRequireDefault","require","_draggable","_gridDraggable","utils","_interopRequireWildcard","exports","trig","types","_graphProps","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sources":["../src/index.js"],"sourcesContent":["import Root from './root';\nimport Draggable from './draggable';\nimport { gridDraggable } from './grid-draggable';\nimport * as utils from './utils';\nimport * as trig from './trig';\nimport * as types from './types';\nimport { create as createGraphProps } from './graph-props';\n\nexport { Root, Draggable, gridDraggable, utils, trig, types, createGraphProps };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAC,uBAAA,CAAAJ,OAAA;AAAiCK,OAAA,CAAAF,KAAA,GAAAA,KAAA;AACjC,IAAAG,IAAA,GAAAF,uBAAA,CAAAJ,OAAA;AAA+BK,OAAA,CAAAC,IAAA,GAAAA,IAAA;AAC/B,IAAAC,KAAA,GAAAH,uBAAA,CAAAJ,OAAA;AAAiCK,OAAA,CAAAE,KAAA,GAAAA,KAAA;AACjC,IAAAC,WAAA,GAAAR,OAAA;AAA2D,SAAAI,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,wBAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,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,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA","ignoreList":[]}
package/lib/label.js CHANGED
@@ -1,5 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.iterator.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/es.string.iterator.js");
14
+ require("core-js/modules/es.weak-map.js");
15
+ require("core-js/modules/web.dom-collections.for-each.js");
16
+ require("core-js/modules/web.dom-collections.iterator.js");
3
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
18
  var _typeof = require("@babel/runtime/helpers/typeof");
5
19
  Object.defineProperty(exports, "__esModule", {
package/lib/label.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","names":["_react","_interopRequireWildcard","require","_renderUi","_editableHtmlTipTap","_interopRequireDefault","_propTypes","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","styles","axisLabel","fontSize","textAlign","margin","padding","chartLabel","disabledLabel","pointerEvents","width","editLabel","position","backgroundColor","borderRadius","boxShadow","zIndex","rotateLeftLabel","transform","transformOrigin","rotateRightLabel","customBottom","displayNone","display","LabelComponent","props","graphHeight","graphWidth","isChartBottomLabel","isDefineChartBottomLabel","isChartLeftLabel","isDefineChartLeftLabel","placeholder","text","side","onChange","_props$mathMlOptions","mathMlOptions","charactersLimit","titleHeight","_useState","useState","_useState2","_slicedToArray2","rotatedToHorizontal","setRotatedToHorizontal","activePlugins","isChart","chartValue","defaultStyle","top","concat","left","rotatedStyle","rotateLabel","exitEditMode","requestAnimationFrame","_document$activeEleme","_document$activeEleme2","document","activeElement","blur","createElement","Readable","onClick","style","isEmptyString","extractTextFromHTML","dangerouslySetInnerHTML","__html","markup","toolbarOpts","noPadding","noBorder","disableScrollbar","onDone","propTypes","PropTypes","bool","number","string","func","object","_default","exports"],"sources":["../src/label.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport PropTypes from 'prop-types';\nimport { extractTextFromHTML, isEmptyString } from './utils';\n\nconst styles = {\n axisLabel: {\n fontSize: 12,\n textAlign: 'center',\n margin: 4,\n padding: '4px 0',\n },\n chartLabel: {\n fontSize: 16,\n textAlign: 'center',\n margin: 4,\n padding: '4px 0',\n },\n disabledLabel: {\n pointerEvents: 'none',\n width: '100%',\n },\n editLabel: {\n position: 'absolute',\n backgroundColor: 'white',\n borderRadius: 4,\n boxShadow: '0px 5px 8px rgba(0,0,0,0.15)',\n zIndex: 10,\n },\n rotateLeftLabel: {\n transform: 'rotate(-90deg)',\n transformOrigin: '0 0',\n position: 'absolute',\n },\n rotateRightLabel: {\n transform: 'rotate(90deg)',\n transformOrigin: '0 0',\n position: 'absolute',\n },\n customBottom: {\n position: 'absolute',\n },\n displayNone: {\n display: 'none',\n },\n};\n\nconst LabelComponent = (props) => {\n const {\n disabledLabel,\n graphHeight,\n graphWidth,\n isChartBottomLabel,\n isDefineChartBottomLabel,\n isChartLeftLabel,\n isDefineChartLeftLabel,\n placeholder,\n text,\n side,\n onChange,\n mathMlOptions = {},\n charactersLimit,\n titleHeight,\n } = props;\n\n const [rotatedToHorizontal, setRotatedToHorizontal] = useState(false);\n\n const activePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];\n\n const isChart = isChartBottomLabel || isChartLeftLabel || isDefineChartBottomLabel || isDefineChartLeftLabel;\n\n const chartValue = side === 'left' && isDefineChartLeftLabel && graphHeight - 220;\n\n const defaultStyle = {\n width: chartValue || (side === 'left' || side === 'right' ? graphHeight - 8 : graphWidth - 8),\n top:\n chartValue ||\n (isChartLeftLabel && `${graphHeight - 70}px`) ||\n (side === 'left' && `${graphHeight - 8}px`) ||\n (isChartBottomLabel && `${graphHeight - 60 + titleHeight}px`) ||\n (side === 'bottom' && `${graphHeight - 120 + titleHeight}px`) ||\n 0,\n left:\n (side === 'right' && `${graphWidth - 8}px`) ||\n ((isDefineChartLeftLabel || isDefineChartBottomLabel) && '40px') ||\n (isChartBottomLabel && '-10px') ||\n 0,\n };\n\n const rotatedStyle = {\n width: graphWidth - 8,\n top: side === 'right' ? `${graphHeight - 22}px` : 0,\n left: 0,\n };\n\n const rotateLabel = () => {\n if (!disabledLabel && (side === 'left' || side === 'right')) {\n setRotatedToHorizontal(true);\n }\n };\n\n const exitEditMode = () => {\n setRotatedToHorizontal(false);\n\n // blur active element because rotation is causing editing issues on exit\n requestAnimationFrame(() => {\n document.activeElement?.blur?.();\n });\n };\n\n return (\n <Readable false>\n <div\n onClick={rotateLabel}\n style={{\n ...(rotatedToHorizontal ? rotatedStyle : defaultStyle),\n ...(isChart ? styles.chartLabel : styles.axisLabel),\n ...(side === 'left' && !rotatedToHorizontal ? styles.rotateLeftLabel : {}),\n ...(side === 'right' && !rotatedToHorizontal ? styles.rotateRightLabel : {}),\n ...(rotatedToHorizontal ? styles.editLabel : {}),\n ...(isChartBottomLabel || isDefineChartBottomLabel ? styles.customBottom : {}),\n ...(disabledLabel && !isChart && isEmptyString(extractTextFromHTML(text)) && styles.displayNone),\n }}\n >\n {disabledLabel ? (\n <div style={styles.disabledLabel} dangerouslySetInnerHTML={{ __html: text || '' }} />\n ) : (\n <EditableHtml\n markup={text || ''}\n onChange={onChange}\n placeholder={!disabledLabel && placeholder}\n toolbarOpts={{\n position: side === 'bottom' ? 'top' : 'bottom',\n noPadding: true,\n noBorder: true,\n }}\n disableScrollbar\n activePlugins={activePlugins}\n onDone={exitEditMode}\n mathMlOptions={mathMlOptions}\n charactersLimit={charactersLimit}\n />\n )}\n </div>\n </Readable>\n );\n};\n\nLabelComponent.propTypes = {\n disabledLabel: PropTypes.bool,\n graphHeight: PropTypes.number,\n graphWidth: PropTypes.number,\n isChartBottomLabel: PropTypes.bool,\n isDefineChartBottomLabel: PropTypes.bool,\n isChartLeftLabel: PropTypes.bool,\n isDefineChartLeftLabel: PropTypes.bool,\n placeholder: PropTypes.string,\n text: PropTypes.string,\n side: PropTypes.string,\n onChange: PropTypes.func,\n mathMlOptions: PropTypes.object,\n charactersLimit: PropTypes.number,\n titleHeight: PropTypes.number,\n};\n\nexport default LabelComponent;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"label.js","names":["_react","_interopRequireWildcard","require","_renderUi","_editableHtmlTipTap","_interopRequireDefault","_propTypes","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","styles","axisLabel","fontSize","textAlign","margin","padding","chartLabel","disabledLabel","pointerEvents","width","editLabel","position","backgroundColor","borderRadius","boxShadow","zIndex","rotateLeftLabel","transform","transformOrigin","rotateRightLabel","customBottom","displayNone","display","LabelComponent","props","graphHeight","graphWidth","isChartBottomLabel","isDefineChartBottomLabel","isChartLeftLabel","isDefineChartLeftLabel","placeholder","text","side","onChange","_props$mathMlOptions","mathMlOptions","charactersLimit","titleHeight","_useState","useState","_useState2","_slicedToArray2","rotatedToHorizontal","setRotatedToHorizontal","activePlugins","isChart","chartValue","defaultStyle","top","concat","left","rotatedStyle","rotateLabel","exitEditMode","requestAnimationFrame","_document$activeEleme","_document$activeEleme2","document","activeElement","blur","createElement","Readable","onClick","style","isEmptyString","extractTextFromHTML","dangerouslySetInnerHTML","__html","markup","toolbarOpts","noPadding","noBorder","disableScrollbar","onDone","propTypes","PropTypes","bool","number","string","func","object","_default","exports"],"sources":["../src/label.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport PropTypes from 'prop-types';\nimport { extractTextFromHTML, isEmptyString } from './utils';\n\nconst styles = {\n axisLabel: {\n fontSize: 12,\n textAlign: 'center',\n margin: 4,\n padding: '4px 0',\n },\n chartLabel: {\n fontSize: 16,\n textAlign: 'center',\n margin: 4,\n padding: '4px 0',\n },\n disabledLabel: {\n pointerEvents: 'none',\n width: '100%',\n },\n editLabel: {\n position: 'absolute',\n backgroundColor: 'white',\n borderRadius: 4,\n boxShadow: '0px 5px 8px rgba(0,0,0,0.15)',\n zIndex: 10,\n },\n rotateLeftLabel: {\n transform: 'rotate(-90deg)',\n transformOrigin: '0 0',\n position: 'absolute',\n },\n rotateRightLabel: {\n transform: 'rotate(90deg)',\n transformOrigin: '0 0',\n position: 'absolute',\n },\n customBottom: {\n position: 'absolute',\n },\n displayNone: {\n display: 'none',\n },\n};\n\nconst LabelComponent = (props) => {\n const {\n disabledLabel,\n graphHeight,\n graphWidth,\n isChartBottomLabel,\n isDefineChartBottomLabel,\n isChartLeftLabel,\n isDefineChartLeftLabel,\n placeholder,\n text,\n side,\n onChange,\n mathMlOptions = {},\n charactersLimit,\n titleHeight,\n } = props;\n\n const [rotatedToHorizontal, setRotatedToHorizontal] = useState(false);\n\n const activePlugins = ['bold', 'italic', 'underline', 'strikethrough', 'math'];\n\n const isChart = isChartBottomLabel || isChartLeftLabel || isDefineChartBottomLabel || isDefineChartLeftLabel;\n\n const chartValue = side === 'left' && isDefineChartLeftLabel && graphHeight - 220;\n\n const defaultStyle = {\n width: chartValue || (side === 'left' || side === 'right' ? graphHeight - 8 : graphWidth - 8),\n top:\n chartValue ||\n (isChartLeftLabel && `${graphHeight - 70}px`) ||\n (side === 'left' && `${graphHeight - 8}px`) ||\n (isChartBottomLabel && `${graphHeight - 60 + titleHeight}px`) ||\n (side === 'bottom' && `${graphHeight - 120 + titleHeight}px`) ||\n 0,\n left:\n (side === 'right' && `${graphWidth - 8}px`) ||\n ((isDefineChartLeftLabel || isDefineChartBottomLabel) && '40px') ||\n (isChartBottomLabel && '-10px') ||\n 0,\n };\n\n const rotatedStyle = {\n width: graphWidth - 8,\n top: side === 'right' ? `${graphHeight - 22}px` : 0,\n left: 0,\n };\n\n const rotateLabel = () => {\n if (!disabledLabel && (side === 'left' || side === 'right')) {\n setRotatedToHorizontal(true);\n }\n };\n\n const exitEditMode = () => {\n setRotatedToHorizontal(false);\n\n // blur active element because rotation is causing editing issues on exit\n requestAnimationFrame(() => {\n document.activeElement?.blur?.();\n });\n };\n\n return (\n <Readable false>\n <div\n onClick={rotateLabel}\n style={{\n ...(rotatedToHorizontal ? rotatedStyle : defaultStyle),\n ...(isChart ? styles.chartLabel : styles.axisLabel),\n ...(side === 'left' && !rotatedToHorizontal ? styles.rotateLeftLabel : {}),\n ...(side === 'right' && !rotatedToHorizontal ? styles.rotateRightLabel : {}),\n ...(rotatedToHorizontal ? styles.editLabel : {}),\n ...(isChartBottomLabel || isDefineChartBottomLabel ? styles.customBottom : {}),\n ...(disabledLabel && !isChart && isEmptyString(extractTextFromHTML(text)) && styles.displayNone),\n }}\n >\n {disabledLabel ? (\n <div style={styles.disabledLabel} dangerouslySetInnerHTML={{ __html: text || '' }} />\n ) : (\n <EditableHtml\n markup={text || ''}\n onChange={onChange}\n placeholder={!disabledLabel && placeholder}\n toolbarOpts={{\n position: side === 'bottom' ? 'top' : 'bottom',\n noPadding: true,\n noBorder: true,\n }}\n disableScrollbar\n activePlugins={activePlugins}\n onDone={exitEditMode}\n mathMlOptions={mathMlOptions}\n charactersLimit={charactersLimit}\n />\n )}\n </div>\n </Readable>\n );\n};\n\nLabelComponent.propTypes = {\n disabledLabel: PropTypes.bool,\n graphHeight: PropTypes.number,\n graphWidth: PropTypes.number,\n isChartBottomLabel: PropTypes.bool,\n isDefineChartBottomLabel: PropTypes.bool,\n isChartLeftLabel: PropTypes.bool,\n isDefineChartLeftLabel: PropTypes.bool,\n placeholder: PropTypes.string,\n text: PropTypes.string,\n side: PropTypes.string,\n onChange: PropTypes.func,\n mathMlOptions: PropTypes.object,\n charactersLimit: PropTypes.number,\n titleHeight: PropTypes.number,\n};\n\nexport default LabelComponent;\n"],"mappings":"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","ignoreList":[]}
package/lib/root.js CHANGED
@@ -1,5 +1,25 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.iterator.js");
6
+ require("core-js/modules/es.array.filter.js");
7
+ require("core-js/modules/es.array.for-each.js");
8
+ require("core-js/modules/es.array.from.js");
9
+ require("core-js/modules/es.array.is-array.js");
10
+ require("core-js/modules/es.array.slice.js");
11
+ require("core-js/modules/es.date.to-string.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.object.define-properties.js");
14
+ require("core-js/modules/es.object.define-property.js");
15
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
17
+ require("core-js/modules/es.object.keys.js");
18
+ require("core-js/modules/es.reflect.construct.js");
19
+ require("core-js/modules/es.regexp.exec.js");
20
+ require("core-js/modules/es.regexp.to-string.js");
21
+ require("core-js/modules/es.string.iterator.js");
22
+ require("core-js/modules/web.dom-collections.for-each.js");
3
23
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
24
  Object.defineProperty(exports, "__esModule", {
5
25
  value: true
@@ -12,6 +32,15 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
12
32
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
33
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
34
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
35
+ require("core-js/modules/es.array.concat.js");
36
+ require("core-js/modules/es.array.iterator.js");
37
+ require("core-js/modules/es.array.map.js");
38
+ require("core-js/modules/es.array.reverse.js");
39
+ require("core-js/modules/es.function.bind.js");
40
+ require("core-js/modules/es.object.to-string.js");
41
+ require("core-js/modules/es.parse-int.js");
42
+ require("core-js/modules/web.dom-collections.iterator.js");
43
+ require("core-js/modules/web.timers.js");
15
44
  var _react = _interopRequireDefault(require("react"));
16
45
  var _styles = require("@mui/material/styles");
17
46
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -116,7 +145,7 @@ var Root = exports.Root = /*#__PURE__*/function (_React$Component) {
116
145
  var _this;
117
146
  (0, _classCallCheck2["default"])(this, Root);
118
147
  _this = _callSuper(this, Root, [props]);
119
- (0, _defineProperty2["default"])(_this, "mouseMove", function (g) {
148
+ (0, _defineProperty2["default"])(_this, "mouseMove", function (g, event) {
120
149
  var _this$props = _this.props,
121
150
  graphProps = _this$props.graphProps,
122
151
  onMouseMove = _this$props.onMouseMove;
@@ -125,7 +154,7 @@ var Root = exports.Root = /*#__PURE__*/function (_React$Component) {
125
154
  }
126
155
  var scale = graphProps.scale,
127
156
  snap = graphProps.snap;
128
- var coords = (0, _d3Selection.mouse)(g.node());
157
+ var coords = (0, _d3Selection.pointer)(event, g.node());
129
158
  var x = scale.x.invert(coords[0]);
130
159
  var y = scale.y.invert(coords[1]);
131
160
  var snapped = {
package/lib/root.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"root.js","names":["_react","_interopRequireDefault","require","_styles","_propTypes","_d3Selection","_renderUi","_editableHtmlTipTap","_types","_label","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","prototype","valueOf","StyledRoot","styled","_ref","theme","border","concat","color","primaryLight","defaults","TEXT","backgroundColor","palette","common","white","touchAction","position","boxSizing","Wrapper","display","DefineChartSvg","paddingLeft","overflow","ChartSvg","GraphBox","cursor","userSelect","GraphTitle","_ref2","fontSize","typography","padding","spacing","textAlign","pointerEvents","marginRight","ChartTitle","_ref3","TopPixelGuides","paddingTop","TopPixelIndicator","flexDirection","alignItems","width","SidePixelGuides","SidePixelIndicator","height","marginBottom","Root","exports","_React$Component","props","_this","_classCallCheck2","g","_this$props","graphProps","onMouseMove","scale","snap","coords","mouse","node","x","invert","y","snapped","newValue","side","_this$props2","labels","onChangeLabels","isChart","titleElement","titleRef","titleHeight","clientHeight","setState","prevTitle","title","resizeObserver","ResizeObserver","setupVisibilityObserver","setTimeout","measureTitleHeight","entries","_iterator","_step","entry","_entry$contentRect","contentRect","err","observe","disconnect","state","_inherits2","_createClass2","key","componentDidMount","select","on","mouseMove","bind","componentWillUnmount","cleanupVisibilityObserver","componentDidUpdate","prevProps","render","_this2","_this$props3","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","_this$props3$mathMlOp","mathMlOptions","labelsCharactersLimit","_graphProps$size","size","_graphProps$size$widt","_graphProps$size$heig","domain","range","topPadding","leftPadding","isEmptyString","extractTextFromHTML","left","isEmptyObject","rightPadding","right","finalWidth","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","createElement","style","marginLeft","_toConsumableArray2","map","Readable","ref","className","dangerouslySetInnerHTML","__html","markup","onChange","placeholder","toolbarOpts","noPadding","noBorder","activePlugins","disableScrollbar","onKeyDown","handleKeyDown","text","top","disabledLabel","graphHeight","graphWidth","onChangeLabel","charactersLimit","isChartLeftLabel","isDefineChartLeftLabel","transform","marginTop","reverse","bottom","isChartBottomLabel","isDefineChartBottomLabel","React","Component","PropTypes","string","ChildrenType","bool","GraphPropsType","isRequired","object","func","number","_default"],"sources":["../src/root.jsx"],"sourcesContent":["import React from 'react';\nimport { styled } from '@mui/material/styles';\nimport PropTypes from 'prop-types';\nimport { select, mouse } from 'd3-selection';\n\nimport { color, Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { ChildrenType } from './types';\nimport { GraphPropsType } from './types';\nimport Label from './label';\nimport { extractTextFromHTML, isEmptyObject, isEmptyString } from './utils';\n\nconst StyledRoot = styled('div')(({ theme }) => ({\n border: `solid 1px ${color.primaryLight()}`,\n color: color.defaults.TEXT,\n backgroundColor: theme.palette.common.white,\n touchAction: 'none',\n position: 'relative',\n boxSizing: 'unset', // to override the default border-box in IBX that breaks the component width layout\n}));\n\nconst Wrapper = styled('div')({\n display: 'flex',\n position: 'relative',\n});\n\nconst DefineChartSvg = styled('svg')({\n paddingLeft: '50px',\n overflow: 'visible',\n});\n\nconst ChartSvg = styled('svg')({\n overflow: 'visible',\n});\n\nconst GraphBox = styled('g')({\n cursor: 'pointer',\n userSelect: 'none',\n});\n\nconst GraphTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 2,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst ChartTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 4,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst TopPixelGuides = styled('div')({\n display: 'flex',\n paddingTop: '6px',\n});\n\nconst TopPixelIndicator = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100px',\n pointerEvents: 'none',\n userSelect: 'none',\n});\n\nconst SidePixelGuides = styled('div')({\n width: '70px',\n display: 'flex',\n flexDirection: 'column',\n marginRight: '6px',\n});\n\nconst SidePixelIndicator = styled('div')({\n textAlign: 'right',\n height: '20px',\n pointerEvents: 'none',\n userSelect: 'none',\n '&:not(:last-child)': {\n marginBottom: '80px',\n },\n});\n\nexport class Root extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n titleHeight: 0,\n };\n this.resizeObserver = null;\n }\n\n static propTypes = {\n title: PropTypes.string,\n children: ChildrenType,\n defineChart: PropTypes.bool,\n disabledLabels: PropTypes.bool,\n disabledTitle: PropTypes.bool,\n graphProps: GraphPropsType.isRequired,\n isChart: PropTypes.bool,\n labels: PropTypes.object,\n labelsPlaceholders: PropTypes.object,\n onChangeTitle: PropTypes.func,\n onMouseMove: PropTypes.func,\n showLabels: PropTypes.bool,\n showTitle: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n rootRef: PropTypes.func,\n onChangeLabels: PropTypes.func,\n titlePlaceholder: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n };\n\n mouseMove = (g) => {\n const { graphProps, onMouseMove } = this.props;\n\n if (!onMouseMove) {\n return;\n }\n\n const { scale, snap } = graphProps;\n const coords = mouse(g.node());\n const x = scale.x.invert(coords[0]);\n const y = scale.y.invert(coords[1]);\n\n const snapped = {\n x: snap.x(x),\n y: snap.y(y),\n };\n\n onMouseMove(snapped);\n };\n\n componentDidMount() {\n const g = select(this.g);\n g.on('mousemove', this.mouseMove.bind(this, g));\n this.measureTitleHeight();\n this.setupVisibilityObserver();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n this.cleanupVisibilityObserver();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.title !== this.props.title) {\n this.measureTitleHeight();\n }\n }\n\n onChangeLabel = (newValue, side) => {\n const { labels, onChangeLabels, isChart } = this.props;\n\n if (!onChangeLabels) {\n return;\n }\n\n if (isChart) {\n if (side === 'left') {\n onChangeLabels('range', newValue);\n } else {\n onChangeLabels('domain', newValue);\n }\n\n return;\n }\n\n onChangeLabels({\n ...labels,\n [side]: newValue,\n });\n };\n\n measureTitleHeight = () => {\n const titleElement = this.titleRef;\n if (titleElement) {\n const titleHeight = titleElement.clientHeight;\n this.setState({ titleHeight, prevTitle: this.props.title });\n\n if (!this.resizeObserver && typeof ResizeObserver !== 'undefined') {\n this.setupVisibilityObserver();\n }\n }\n };\n\n handleKeyDown = () => {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 0);\n };\n\n // handle edge case where chart is hidden with display:none and then shown with display:block\n setupVisibilityObserver = () => {\n if (typeof ResizeObserver !== 'undefined' && this.titleRef) {\n this.resizeObserver = new ResizeObserver((entries) => {\n for (let entry of entries) {\n const { width, height } = entry.contentRect;\n // trigger if element becomes visible and we haven't measured this height yet\n if (width > 0 && height > 0) {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 10);\n break;\n }\n }\n });\n\n this.resizeObserver.observe(this.titleRef);\n }\n };\n\n cleanupVisibilityObserver = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n };\n\n render() {\n const {\n disabledTitle,\n disabledLabels,\n labels,\n labelsPlaceholders,\n titlePlaceholder,\n graphProps,\n children,\n defineChart,\n onChangeTitle,\n isChart,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n rootRef,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const {\n size: { width = 500, height = 500 },\n domain,\n range,\n } = graphProps;\n\n const topPadding = 40;\n const leftPadding = isEmptyString(extractTextFromHTML(labels?.left)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const rightPadding =\n isEmptyString(extractTextFromHTML(labels?.right)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const finalWidth = width + leftPadding + rightPadding + (domain.padding || 0) * 2;\n const finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;\n\n const activeTitlePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'superscript',\n 'subscript',\n 'strikethrough',\n 'math',\n // 'languageCharacters'\n ];\n\n const actualHeight = defineChart && showPixelGuides ? height - 160 : height;\n const nbOfVerticalLines = parseInt(width / 100);\n const nbOfHorizontalLines = parseInt(actualHeight / 100);\n const sideGridlinesPadding = parseInt(actualHeight % 100);\n const { titleHeight } = this.state;\n\n return (\n <StyledRoot>\n {showPixelGuides && (\n <TopPixelGuides style={{ marginLeft: isChart ? 80 : showLabels ? 30 : 10 }}>\n {[...Array(nbOfVerticalLines + 1).keys()].map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <TopPixelIndicator>\n <div>{value * 100}px</div>\n <div>|</div>\n </TopPixelIndicator>\n </Readable>\n ))}\n </TopPixelGuides>\n )}\n {showTitle &&\n (disabledTitle ? (\n <div\n ref={(r) => (this.titleRef = r)}\n style={{\n ...(isChart && { width: finalWidth }),\n ...(isEmptyString(extractTextFromHTML(title)) && { display: 'none' }),\n }}\n >\n {isChart ? (\n <ChartTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n ) : (\n <GraphTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n )}\n </div>\n ) : (\n <div ref={(r) => (this.titleRef = r)}>\n {isChart ? (\n <ChartTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) ||\n (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </ChartTitle>\n ) : (\n <GraphTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) ||\n (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </GraphTitle>\n )}\n </div>\n ))}\n {showLabels && !isChart && (\n <Label\n side=\"top\"\n text={labels.top}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.top}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'top')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n <Wrapper>\n {showLabels && (\n <Label\n side=\"left\"\n text={labels.left}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.left}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n isChartLeftLabel={isChart && !defineChart}\n isDefineChartLeftLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'left')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {defineChart ? (\n <DefineChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </DefineChartSvg>\n ) : (\n <ChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </ChartSvg>\n )}\n {showLabels && !isChart && (\n <Label\n side=\"right\"\n text={labels.right}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.right}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'right')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {showPixelGuides && (\n <SidePixelGuides\n style={{\n paddingTop: sideGridlinesPadding,\n marginTop: 31,\n }}\n >\n {[...Array(nbOfHorizontalLines + 1).keys()].reverse().map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <SidePixelIndicator>━ {value * 100}px</SidePixelIndicator>\n </Readable>\n ))}\n </SidePixelGuides>\n )}\n </Wrapper>\n {showLabels && (\n <Label\n side=\"bottom\"\n text={labels.bottom}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.bottom}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n titleHeight={titleHeight}\n isChartBottomLabel={isChart && !defineChart}\n isDefineChartBottomLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'bottom')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n </StyledRoot>\n );\n }\n}\n\nexport default Root;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"root.js","names":["_react","_interopRequireDefault","require","_styles","_propTypes","_d3Selection","_renderUi","_editableHtmlTipTap","_types","_label","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","prototype","valueOf","StyledRoot","styled","_ref","theme","border","concat","color","primaryLight","defaults","TEXT","backgroundColor","palette","common","white","touchAction","position","boxSizing","Wrapper","display","DefineChartSvg","paddingLeft","overflow","ChartSvg","GraphBox","cursor","userSelect","GraphTitle","_ref2","fontSize","typography","padding","spacing","textAlign","pointerEvents","marginRight","ChartTitle","_ref3","TopPixelGuides","paddingTop","TopPixelIndicator","flexDirection","alignItems","width","SidePixelGuides","SidePixelIndicator","height","marginBottom","Root","exports","_React$Component","props","_this","_classCallCheck2","g","event","_this$props","graphProps","onMouseMove","scale","snap","coords","pointer","node","x","invert","y","snapped","newValue","side","_this$props2","labels","onChangeLabels","isChart","titleElement","titleRef","titleHeight","clientHeight","setState","prevTitle","title","resizeObserver","ResizeObserver","setupVisibilityObserver","setTimeout","measureTitleHeight","entries","_iterator","_step","entry","_entry$contentRect","contentRect","err","observe","disconnect","state","_inherits2","_createClass2","key","componentDidMount","select","on","mouseMove","bind","componentWillUnmount","cleanupVisibilityObserver","componentDidUpdate","prevProps","render","_this2","_this$props3","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","_this$props3$mathMlOp","mathMlOptions","labelsCharactersLimit","_graphProps$size","size","_graphProps$size$widt","_graphProps$size$heig","domain","range","topPadding","leftPadding","isEmptyString","extractTextFromHTML","left","isEmptyObject","rightPadding","right","finalWidth","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","createElement","style","marginLeft","_toConsumableArray2","map","Readable","ref","className","dangerouslySetInnerHTML","__html","markup","onChange","placeholder","toolbarOpts","noPadding","noBorder","activePlugins","disableScrollbar","onKeyDown","handleKeyDown","text","top","disabledLabel","graphHeight","graphWidth","onChangeLabel","charactersLimit","isChartLeftLabel","isDefineChartLeftLabel","transform","marginTop","reverse","bottom","isChartBottomLabel","isDefineChartBottomLabel","React","Component","PropTypes","string","ChildrenType","bool","GraphPropsType","isRequired","object","func","number","_default"],"sources":["../src/root.jsx"],"sourcesContent":["import React from 'react';\nimport { styled } from '@mui/material/styles';\nimport PropTypes from 'prop-types';\nimport { select, pointer } from 'd3-selection';\n\nimport { color, Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { ChildrenType } from './types';\nimport { GraphPropsType } from './types';\nimport Label from './label';\nimport { extractTextFromHTML, isEmptyObject, isEmptyString } from './utils';\n\nconst StyledRoot = styled('div')(({ theme }) => ({\n border: `solid 1px ${color.primaryLight()}`,\n color: color.defaults.TEXT,\n backgroundColor: theme.palette.common.white,\n touchAction: 'none',\n position: 'relative',\n boxSizing: 'unset', // to override the default border-box in IBX that breaks the component width layout\n}));\n\nconst Wrapper = styled('div')({\n display: 'flex',\n position: 'relative',\n});\n\nconst DefineChartSvg = styled('svg')({\n paddingLeft: '50px',\n overflow: 'visible',\n});\n\nconst ChartSvg = styled('svg')({\n overflow: 'visible',\n});\n\nconst GraphBox = styled('g')({\n cursor: 'pointer',\n userSelect: 'none',\n});\n\nconst GraphTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 2,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst ChartTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 4,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst TopPixelGuides = styled('div')({\n display: 'flex',\n paddingTop: '6px',\n});\n\nconst TopPixelIndicator = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100px',\n pointerEvents: 'none',\n userSelect: 'none',\n});\n\nconst SidePixelGuides = styled('div')({\n width: '70px',\n display: 'flex',\n flexDirection: 'column',\n marginRight: '6px',\n});\n\nconst SidePixelIndicator = styled('div')({\n textAlign: 'right',\n height: '20px',\n pointerEvents: 'none',\n userSelect: 'none',\n '&:not(:last-child)': {\n marginBottom: '80px',\n },\n});\n\nexport class Root extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n titleHeight: 0,\n };\n this.resizeObserver = null;\n }\n\n static propTypes = {\n title: PropTypes.string,\n children: ChildrenType,\n defineChart: PropTypes.bool,\n disabledLabels: PropTypes.bool,\n disabledTitle: PropTypes.bool,\n graphProps: GraphPropsType.isRequired,\n isChart: PropTypes.bool,\n labels: PropTypes.object,\n labelsPlaceholders: PropTypes.object,\n onChangeTitle: PropTypes.func,\n onMouseMove: PropTypes.func,\n showLabels: PropTypes.bool,\n showTitle: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n rootRef: PropTypes.func,\n onChangeLabels: PropTypes.func,\n titlePlaceholder: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n };\n\n mouseMove = (g, event) => {\n const { graphProps, onMouseMove } = this.props;\n\n if (!onMouseMove) {\n return;\n }\n\n const { scale, snap } = graphProps;\n const coords = pointer(event, g.node());\n const x = scale.x.invert(coords[0]);\n const y = scale.y.invert(coords[1]);\n\n const snapped = {\n x: snap.x(x),\n y: snap.y(y),\n };\n\n onMouseMove(snapped);\n };\n\n componentDidMount() {\n const g = select(this.g);\n g.on('mousemove', this.mouseMove.bind(this, g));\n this.measureTitleHeight();\n this.setupVisibilityObserver();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n this.cleanupVisibilityObserver();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.title !== this.props.title) {\n this.measureTitleHeight();\n }\n }\n\n onChangeLabel = (newValue, side) => {\n const { labels, onChangeLabels, isChart } = this.props;\n\n if (!onChangeLabels) {\n return;\n }\n\n if (isChart) {\n if (side === 'left') {\n onChangeLabels('range', newValue);\n } else {\n onChangeLabels('domain', newValue);\n }\n\n return;\n }\n\n onChangeLabels({\n ...labels,\n [side]: newValue,\n });\n };\n\n measureTitleHeight = () => {\n const titleElement = this.titleRef;\n if (titleElement) {\n const titleHeight = titleElement.clientHeight;\n this.setState({ titleHeight, prevTitle: this.props.title });\n\n if (!this.resizeObserver && typeof ResizeObserver !== 'undefined') {\n this.setupVisibilityObserver();\n }\n }\n };\n\n handleKeyDown = () => {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 0);\n };\n\n // handle edge case where chart is hidden with display:none and then shown with display:block\n setupVisibilityObserver = () => {\n if (typeof ResizeObserver !== 'undefined' && this.titleRef) {\n this.resizeObserver = new ResizeObserver((entries) => {\n for (let entry of entries) {\n const { width, height } = entry.contentRect;\n // trigger if element becomes visible and we haven't measured this height yet\n if (width > 0 && height > 0) {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 10);\n break;\n }\n }\n });\n\n this.resizeObserver.observe(this.titleRef);\n }\n };\n\n cleanupVisibilityObserver = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n };\n\n render() {\n const {\n disabledTitle,\n disabledLabels,\n labels,\n labelsPlaceholders,\n titlePlaceholder,\n graphProps,\n children,\n defineChart,\n onChangeTitle,\n isChart,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n rootRef,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const {\n size: { width = 500, height = 500 },\n domain,\n range,\n } = graphProps;\n\n const topPadding = 40;\n const leftPadding = isEmptyString(extractTextFromHTML(labels?.left)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const rightPadding =\n isEmptyString(extractTextFromHTML(labels?.right)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const finalWidth = width + leftPadding + rightPadding + (domain.padding || 0) * 2;\n const finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;\n\n const activeTitlePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'superscript',\n 'subscript',\n 'strikethrough',\n 'math',\n // 'languageCharacters'\n ];\n\n const actualHeight = defineChart && showPixelGuides ? height - 160 : height;\n const nbOfVerticalLines = parseInt(width / 100);\n const nbOfHorizontalLines = parseInt(actualHeight / 100);\n const sideGridlinesPadding = parseInt(actualHeight % 100);\n const { titleHeight } = this.state;\n\n return (\n <StyledRoot>\n {showPixelGuides && (\n <TopPixelGuides style={{ marginLeft: isChart ? 80 : showLabels ? 30 : 10 }}>\n {[...Array(nbOfVerticalLines + 1).keys()].map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <TopPixelIndicator>\n <div>{value * 100}px</div>\n <div>|</div>\n </TopPixelIndicator>\n </Readable>\n ))}\n </TopPixelGuides>\n )}\n {showTitle &&\n (disabledTitle ? (\n <div\n ref={(r) => (this.titleRef = r)}\n style={{\n ...(isChart && { width: finalWidth }),\n ...(isEmptyString(extractTextFromHTML(title)) && { display: 'none' }),\n }}\n >\n {isChart ? (\n <ChartTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n ) : (\n <GraphTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n )}\n </div>\n ) : (\n <div ref={(r) => (this.titleRef = r)}>\n {isChart ? (\n <ChartTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) ||\n (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </ChartTitle>\n ) : (\n <GraphTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) ||\n (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </GraphTitle>\n )}\n </div>\n ))}\n {showLabels && !isChart && (\n <Label\n side=\"top\"\n text={labels.top}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.top}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'top')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n <Wrapper>\n {showLabels && (\n <Label\n side=\"left\"\n text={labels.left}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.left}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n isChartLeftLabel={isChart && !defineChart}\n isDefineChartLeftLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'left')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {defineChart ? (\n <DefineChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </DefineChartSvg>\n ) : (\n <ChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </ChartSvg>\n )}\n {showLabels && !isChart && (\n <Label\n side=\"right\"\n text={labels.right}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.right}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'right')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {showPixelGuides && (\n <SidePixelGuides\n style={{\n paddingTop: sideGridlinesPadding,\n marginTop: 31,\n }}\n >\n {[...Array(nbOfHorizontalLines + 1).keys()].reverse().map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <SidePixelIndicator>━ {value * 100}px</SidePixelIndicator>\n </Readable>\n ))}\n </SidePixelGuides>\n )}\n </Wrapper>\n {showLabels && (\n <Label\n side=\"bottom\"\n text={labels.bottom}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.bottom}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n titleHeight={titleHeight}\n isChartBottomLabel={isChart && !defineChart}\n isDefineChartBottomLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'bottom')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n </StyledRoot>\n );\n }\n}\n\nexport default Root;\n"],"mappings":"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","ignoreList":[]}
package/lib/trig.js CHANGED
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.toRadians = exports.toDegrees = exports.hypotenuse = exports.getOpposingSide = exports.edges = exports.diffEdge = exports.angle = exports.acuteYAngle = exports.acuteXAngle = void 0;
9
+ require("core-js/modules/es.array.concat.js");
10
+ require("core-js/modules/es.function.bind.js");
11
+ require("core-js/modules/es.number.is-finite.js");
8
12
  var _utils = require("./utils");
9
13
  var _pointGeometry = _interopRequireDefault(require("@mapbox/point-geometry"));
10
14
  var _debug = _interopRequireDefault(require("debug"));
package/lib/trig.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"trig.js","names":["_utils","require","_pointGeometry","_interopRequireDefault","_debug","log","debug","toDegrees","exports","radians","Math","PI","toRadians","degrees","angle","a","b","vd","y","hd","x","atan2","NINETY","ONE_EIGHTY","TWO_SEVENTY","acuteXAngle","abs","acuteYAngle","hypotenuse","alpha","out","sin","edges","domain","range","destX","max","min","destY","aToB","diffEdge","xy","dX","dY","bToA","getOpposingSide","hyp","getShortestSide","xh","yh","Number","isFinite","isNaN","Infinity","console","warn","bounds","l","enabled","bind","concat","xRadians","yRadians","xSide","xH","ySide","yH","side","Error","point","Point","multiplier","multByPoint","normalized","add"],"sources":["../src/trig.js"],"sourcesContent":["import { xy } from './utils';\nimport Point from '@mapbox/point-geometry';\nimport debug from 'debug';\nconst log = debug('pie-lib:plot:trig');\n\nexport const toDegrees = (radians) => radians * (180 / Math.PI);\nexport const toRadians = (degrees) => degrees * (Math.PI / 180);\n/**\n * return angle in radians between 2 points using counting degrees counter clockwise\n *\n * 0,0 + 1,1 = 45 in radians\n * 1,1 + 0,0 = 45?\n * @param {Point} a\n * @param {Point} b\n */\nexport const angle = (a, b) => {\n const vd = b.y - a.y;\n const hd = b.x - a.x;\n log(a, b, 'vd: ', vd, 'hd: ', hd);\n const radians = Math.atan2(vd, hd);\n return radians < 0 ? radians + Math.PI * 2 : radians;\n};\n\nconst NINETY = Math.PI / 2;\nconst ONE_EIGHTY = Math.PI;\nconst TWO_SEVENTY = ONE_EIGHTY + NINETY;\n\nexport const acuteXAngle = (a) => {\n log(toDegrees(a));\n\n if (a < NINETY) {\n return a;\n }\n\n if (a < ONE_EIGHTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n if (a < TWO_SEVENTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n return Math.abs(Math.PI * 2 - a);\n};\n\nexport const acuteYAngle = (a) => NINETY - acuteXAngle(a);\n\nexport const hypotenuse = (a, alpha) => {\n const out = Math.abs(a / Math.sin(alpha));\n\n return out;\n};\n\n/**\n * return 2 edge points for a,b within domain + range.\n * - one edge is from following a -> b to the bounds\n * - one edge is from following b -> a to the bounds\n * @param {{min: number, max: number}} domain\n * @param {{min: number, max: number}} range\n * @param {{x: number, y: number}} a\n * @param {{x: number, y: number}} b\n * @returns [{x: number, y: number}, {x: number, y: number}]\n */\nexport const edges = (domain, range) => (a, b) => {\n // const xDest =\n const destX = a.x < b.x ? domain.max : domain.min;\n const destY = a.y < b.y ? range.max : range.min;\n const aToB = diffEdge(xy(destX, destY), a, b);\n\n const dX = b.x < a.x ? domain.max : domain.min;\n const dY = b.y < a.y ? range.max : range.min;\n const bToA = diffEdge(xy(dX, dY), b, a);\n return [aToB, bToA];\n};\n\n/** get length of side A of a triangle from H and angle Alpha */\nexport const getOpposingSide = (hyp, angle) => {\n log('[getOpposingSide] hyp: ', hyp, 'angle:', angle);\n return Math.abs(hyp * Math.sin(angle));\n};\n\nconst getShortestSide = (xh, yh) => {\n if (Number.isFinite(xh) && Number.isFinite(yh)) {\n if (xh === 0 && yh > 0) {\n return 'y';\n }\n if (yh === 0 && xh > 0) {\n return 'x';\n }\n return xh < yh ? 'x' : 'y';\n }\n if (isNaN(xh) && !isNaN(yh)) {\n return 'y';\n }\n if (!isNaN(xh) && isNaN(yh)) {\n return 'x';\n }\n if (xh === Infinity) {\n return 'y';\n }\n if (yh === Infinity) {\n return 'x';\n }\n\n // eslint-disable-next-line no-console\n console.warn('hypotenuse - which is shorter? x:', xh, 'y:', yh);\n};\n/**\n * return the difference between bounds and a as a Point\n * @param {*} bounds\n */\nexport const diffEdge = (bounds, a, b) => {\n let l = log.enabled ? log.bind(log, `diffEdge: [${a.x},${a.y} -> ${b.x},${b.y}]`) : () => {};\n const xRadians = angle(a, b);\n l('x angle', toDegrees(xRadians));\n const yRadians = Math.abs(xRadians - toRadians(90));\n l('y angle', toDegrees(yRadians));\n const xSide = Math.abs(a.x - bounds.x);\n\n /**\n * Draw 2 triangles:\n * 1 with a horizontal line from a to the graph x edge\n * 1 with a vertical line from a to the graph y edge\n * Calculate the hypotenuse for both, whichever is shorter\n * indicates that we should use that triangle to get the edge point.\n */\n const xH = hypotenuse(xSide, yRadians);\n\n const ySide = Math.abs(a.y - bounds.y);\n const yH = hypotenuse(ySide, xRadians);\n\n l('x: side', xSide, 'h:', xH);\n l('y: side', ySide, 'h:', yH);\n const side = getShortestSide(xH, yH);\n\n if (side !== 'x' && side !== 'y') {\n throw new Error('Cant decide which hypotenuse to use');\n }\n const point =\n side === 'x' ? new Point(xSide, getOpposingSide(xH, xRadians)) : new Point(getOpposingSide(yH, yRadians), ySide);\n\n l('point:', point);\n const multiplier = new Point(b.x < a.x ? -1 : 1, b.y < a.y ? -1 : 1);\n l('multiplier:', multiplier);\n const out = point.multByPoint(multiplier);\n l('out:', out);\n const normalized = out.add(new Point(a.x, a.y));\n l('normalized:', normalized);\n return normalized;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"trig.js","names":["_utils","require","_pointGeometry","_interopRequireDefault","_debug","log","debug","toDegrees","exports","radians","Math","PI","toRadians","degrees","angle","a","b","vd","y","hd","x","atan2","NINETY","ONE_EIGHTY","TWO_SEVENTY","acuteXAngle","abs","acuteYAngle","hypotenuse","alpha","out","sin","edges","domain","range","destX","max","min","destY","aToB","diffEdge","xy","dX","dY","bToA","getOpposingSide","hyp","getShortestSide","xh","yh","Number","isFinite","isNaN","Infinity","console","warn","bounds","l","enabled","bind","concat","xRadians","yRadians","xSide","xH","ySide","yH","side","Error","point","Point","multiplier","multByPoint","normalized","add"],"sources":["../src/trig.js"],"sourcesContent":["import { xy } from './utils';\nimport Point from '@mapbox/point-geometry';\nimport debug from 'debug';\nconst log = debug('pie-lib:plot:trig');\n\nexport const toDegrees = (radians) => radians * (180 / Math.PI);\nexport const toRadians = (degrees) => degrees * (Math.PI / 180);\n/**\n * return angle in radians between 2 points using counting degrees counter clockwise\n *\n * 0,0 + 1,1 = 45 in radians\n * 1,1 + 0,0 = 45?\n * @param {Point} a\n * @param {Point} b\n */\nexport const angle = (a, b) => {\n const vd = b.y - a.y;\n const hd = b.x - a.x;\n log(a, b, 'vd: ', vd, 'hd: ', hd);\n const radians = Math.atan2(vd, hd);\n return radians < 0 ? radians + Math.PI * 2 : radians;\n};\n\nconst NINETY = Math.PI / 2;\nconst ONE_EIGHTY = Math.PI;\nconst TWO_SEVENTY = ONE_EIGHTY + NINETY;\n\nexport const acuteXAngle = (a) => {\n log(toDegrees(a));\n\n if (a < NINETY) {\n return a;\n }\n\n if (a < ONE_EIGHTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n if (a < TWO_SEVENTY) {\n return Math.abs(ONE_EIGHTY - a);\n }\n\n return Math.abs(Math.PI * 2 - a);\n};\n\nexport const acuteYAngle = (a) => NINETY - acuteXAngle(a);\n\nexport const hypotenuse = (a, alpha) => {\n const out = Math.abs(a / Math.sin(alpha));\n\n return out;\n};\n\n/**\n * return 2 edge points for a,b within domain + range.\n * - one edge is from following a -> b to the bounds\n * - one edge is from following b -> a to the bounds\n * @param {{min: number, max: number}} domain\n * @param {{min: number, max: number}} range\n * @param {{x: number, y: number}} a\n * @param {{x: number, y: number}} b\n * @returns [{x: number, y: number}, {x: number, y: number}]\n */\nexport const edges = (domain, range) => (a, b) => {\n // const xDest =\n const destX = a.x < b.x ? domain.max : domain.min;\n const destY = a.y < b.y ? range.max : range.min;\n const aToB = diffEdge(xy(destX, destY), a, b);\n\n const dX = b.x < a.x ? domain.max : domain.min;\n const dY = b.y < a.y ? range.max : range.min;\n const bToA = diffEdge(xy(dX, dY), b, a);\n return [aToB, bToA];\n};\n\n/** get length of side A of a triangle from H and angle Alpha */\nexport const getOpposingSide = (hyp, angle) => {\n log('[getOpposingSide] hyp: ', hyp, 'angle:', angle);\n return Math.abs(hyp * Math.sin(angle));\n};\n\nconst getShortestSide = (xh, yh) => {\n if (Number.isFinite(xh) && Number.isFinite(yh)) {\n if (xh === 0 && yh > 0) {\n return 'y';\n }\n if (yh === 0 && xh > 0) {\n return 'x';\n }\n return xh < yh ? 'x' : 'y';\n }\n if (isNaN(xh) && !isNaN(yh)) {\n return 'y';\n }\n if (!isNaN(xh) && isNaN(yh)) {\n return 'x';\n }\n if (xh === Infinity) {\n return 'y';\n }\n if (yh === Infinity) {\n return 'x';\n }\n\n // eslint-disable-next-line no-console\n console.warn('hypotenuse - which is shorter? x:', xh, 'y:', yh);\n};\n/**\n * return the difference between bounds and a as a Point\n * @param {*} bounds\n */\nexport const diffEdge = (bounds, a, b) => {\n let l = log.enabled ? log.bind(log, `diffEdge: [${a.x},${a.y} -> ${b.x},${b.y}]`) : () => {};\n const xRadians = angle(a, b);\n l('x angle', toDegrees(xRadians));\n const yRadians = Math.abs(xRadians - toRadians(90));\n l('y angle', toDegrees(yRadians));\n const xSide = Math.abs(a.x - bounds.x);\n\n /**\n * Draw 2 triangles:\n * 1 with a horizontal line from a to the graph x edge\n * 1 with a vertical line from a to the graph y edge\n * Calculate the hypotenuse for both, whichever is shorter\n * indicates that we should use that triangle to get the edge point.\n */\n const xH = hypotenuse(xSide, yRadians);\n\n const ySide = Math.abs(a.y - bounds.y);\n const yH = hypotenuse(ySide, xRadians);\n\n l('x: side', xSide, 'h:', xH);\n l('y: side', ySide, 'h:', yH);\n const side = getShortestSide(xH, yH);\n\n if (side !== 'x' && side !== 'y') {\n throw new Error('Cant decide which hypotenuse to use');\n }\n const point =\n side === 'x' ? new Point(xSide, getOpposingSide(xH, xRadians)) : new Point(getOpposingSide(yH, yRadians), ySide);\n\n l('point:', point);\n const multiplier = new Point(b.x < a.x ? -1 : 1, b.y < a.y ? -1 : 1);\n l('multiplier:', multiplier);\n const out = point.multByPoint(multiplier);\n l('out:', out);\n const normalized = out.add(new Point(a.x, a.y));\n l('normalized:', normalized);\n return normalized;\n};\n"],"mappings":"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","ignoreList":[]}
package/lib/types.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["_propTypes","_interopRequireDefault","require","BaseDomainRangeType","exports","min","PropTypes","number","isRequired","max","step","DomainType","shape","RangeType","SizeType","width","height","PointType","x","y","ChildrenType","oneOfType","arrayOf","node","ScaleType","func","SnapType","GraphPropsType","scale","snap","domain","range","size"],"sources":["../src/types.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const BaseDomainRangeType = {\n min: PropTypes.number.isRequired,\n max: PropTypes.number.isRequired,\n step: PropTypes.number,\n};\n\nexport const DomainType = PropTypes.shape(BaseDomainRangeType);\n\nexport const RangeType = PropTypes.shape(BaseDomainRangeType);\n\nexport const SizeType = PropTypes.shape({\n width: PropTypes.number.isRequired,\n height: PropTypes.number.isRequired,\n});\n\nexport const PointType = PropTypes.shape({\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n});\n\nexport const ChildrenType = PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired;\n\nexport const ScaleType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const SnapType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const GraphPropsType = PropTypes.shape({\n scale: ScaleType.isRequired,\n snap: SnapType.isRequired,\n domain: DomainType.isRequired,\n range: RangeType.isRequired,\n size: SizeType.isRequired,\n});\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG;EACjCE,GAAG,EAAEC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCC,GAAG,EAAEH,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCE,IAAI,EAAEJ,qBAAS,CAACC;AAClB,CAAC;AAEM,IAAMI,UAAU,GAAAP,OAAA,CAAAO,UAAA,GAAGL,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEvD,IAAMU,SAAS,GAAAT,OAAA,CAAAS,SAAA,GAAGP,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEtD,IAAMW,QAAQ,GAAAV,OAAA,CAAAU,QAAA,GAAGR,qBAAS,CAACM,KAAK,CAAC;EACtCG,KAAK,EAAET,qBAAS,CAACC,MAAM,CAACC,UAAU;EAClCQ,MAAM,EAAEV,qBAAS,CAACC,MAAM,CAACC;AAC3B,CAAC,CAAC;AAEK,IAAMS,SAAS,GAAAb,OAAA,CAAAa,SAAA,GAAGX,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC9BW,CAAC,EAAEb,qBAAS,CAACC,MAAM,CAACC;AACtB,CAAC,CAAC;AAEK,IAAMY,YAAY,GAAAhB,OAAA,CAAAgB,YAAA,GAAGd,qBAAS,CAACe,SAAS,CAAC,CAACf,qBAAS,CAACgB,OAAO,CAAChB,qBAAS,CAACiB,IAAI,CAAC,EAAEjB,qBAAS,CAACiB,IAAI,CAAC,CAAC,CAACf,UAAU;AAExG,IAAMgB,SAAS,GAAApB,OAAA,CAAAoB,SAAA,GAAGlB,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMkB,QAAQ,GAAAtB,OAAA,CAAAsB,QAAA,GAAGpB,qBAAS,CAACM,KAAK,CAAC;EACtCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMmB,cAAc,GAAAvB,OAAA,CAAAuB,cAAA,GAAGrB,qBAAS,CAACM,KAAK,CAAC;EAC5CgB,KAAK,EAAEJ,SAAS,CAAChB,UAAU;EAC3BqB,IAAI,EAAEH,QAAQ,CAAClB,UAAU;EACzBsB,MAAM,EAAEnB,UAAU,CAACH,UAAU;EAC7BuB,KAAK,EAAElB,SAAS,CAACL,UAAU;EAC3BwB,IAAI,EAAElB,QAAQ,CAACN;AACjB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":["_propTypes","_interopRequireDefault","require","BaseDomainRangeType","exports","min","PropTypes","number","isRequired","max","step","DomainType","shape","RangeType","SizeType","width","height","PointType","x","y","ChildrenType","oneOfType","arrayOf","node","ScaleType","func","SnapType","GraphPropsType","scale","snap","domain","range","size"],"sources":["../src/types.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const BaseDomainRangeType = {\n min: PropTypes.number.isRequired,\n max: PropTypes.number.isRequired,\n step: PropTypes.number,\n};\n\nexport const DomainType = PropTypes.shape(BaseDomainRangeType);\n\nexport const RangeType = PropTypes.shape(BaseDomainRangeType);\n\nexport const SizeType = PropTypes.shape({\n width: PropTypes.number.isRequired,\n height: PropTypes.number.isRequired,\n});\n\nexport const PointType = PropTypes.shape({\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n});\n\nexport const ChildrenType = PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired;\n\nexport const ScaleType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const SnapType = PropTypes.shape({\n x: PropTypes.func.isRequired,\n y: PropTypes.func.isRequired,\n});\n\nexport const GraphPropsType = PropTypes.shape({\n scale: ScaleType.isRequired,\n snap: SnapType.isRequired,\n domain: DomainType.isRequired,\n range: RangeType.isRequired,\n size: SizeType.isRequired,\n});\n"],"mappings":";;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG;EACjCE,GAAG,EAAEC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCC,GAAG,EAAEH,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCE,IAAI,EAAEJ,qBAAS,CAACC;AAClB,CAAC;AAEM,IAAMI,UAAU,GAAAP,OAAA,CAAAO,UAAA,GAAGL,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEvD,IAAMU,SAAS,GAAAT,OAAA,CAAAS,SAAA,GAAGP,qBAAS,CAACM,KAAK,CAACT,mBAAmB,CAAC;AAEtD,IAAMW,QAAQ,GAAAV,OAAA,CAAAU,QAAA,GAAGR,qBAAS,CAACM,KAAK,CAAC;EACtCG,KAAK,EAAET,qBAAS,CAACC,MAAM,CAACC,UAAU;EAClCQ,MAAM,EAAEV,qBAAS,CAACC,MAAM,CAACC;AAC3B,CAAC,CAAC;AAEK,IAAMS,SAAS,GAAAb,OAAA,CAAAa,SAAA,GAAGX,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC9BW,CAAC,EAAEb,qBAAS,CAACC,MAAM,CAACC;AACtB,CAAC,CAAC;AAEK,IAAMY,YAAY,GAAAhB,OAAA,CAAAgB,YAAA,GAAGd,qBAAS,CAACe,SAAS,CAAC,CAACf,qBAAS,CAACgB,OAAO,CAAChB,qBAAS,CAACiB,IAAI,CAAC,EAAEjB,qBAAS,CAACiB,IAAI,CAAC,CAAC,CAACf,UAAU;AAExG,IAAMgB,SAAS,GAAApB,OAAA,CAAAoB,SAAA,GAAGlB,qBAAS,CAACM,KAAK,CAAC;EACvCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMkB,QAAQ,GAAAtB,OAAA,CAAAsB,QAAA,GAAGpB,qBAAS,CAACM,KAAK,CAAC;EACtCM,CAAC,EAAEZ,qBAAS,CAACmB,IAAI,CAACjB,UAAU;EAC5BW,CAAC,EAAEb,qBAAS,CAACmB,IAAI,CAACjB;AACpB,CAAC,CAAC;AAEK,IAAMmB,cAAc,GAAAvB,OAAA,CAAAuB,cAAA,GAAGrB,qBAAS,CAACM,KAAK,CAAC;EAC5CgB,KAAK,EAAEJ,SAAS,CAAChB,UAAU;EAC3BqB,IAAI,EAAEH,QAAQ,CAAClB,UAAU;EACzBsB,MAAM,EAAEnB,UAAU,CAACH,UAAU;EAC7BuB,KAAK,EAAElB,SAAS,CAACL,UAAU;EAC3BwB,IAAI,EAAElB,QAAQ,CAACN;AACjB,CAAC,CAAC","ignoreList":[]}
package/lib/utils.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
@@ -11,6 +12,22 @@ exports.getInterval = getInterval;
11
12
  exports.polygonToArea = exports.point = exports.lineToArea = exports.isEmptyString = exports.isEmptyObject = exports.isDomainRangeEqual = void 0;
12
13
  exports.snapTo = snapTo;
13
14
  exports.xy = exports.tickCount = void 0;
15
+ require("core-js/modules/es.array.concat.js");
16
+ require("core-js/modules/es.array.filter.js");
17
+ require("core-js/modules/es.array.map.js");
18
+ require("core-js/modules/es.array.reduce.js");
19
+ require("core-js/modules/es.array.sort.js");
20
+ require("core-js/modules/es.array.splice.js");
21
+ require("core-js/modules/es.number.constructor.js");
22
+ require("core-js/modules/es.number.is-finite.js");
23
+ require("core-js/modules/es.number.to-fixed.js");
24
+ require("core-js/modules/es.object.keys.js");
25
+ require("core-js/modules/es.object.to-string.js");
26
+ require("core-js/modules/es.parse-float.js");
27
+ require("core-js/modules/es.regexp.exec.js");
28
+ require("core-js/modules/es.string.replace.js");
29
+ require("core-js/modules/es.string.trim.js");
30
+ require("core-js/modules/es.string.sub.js");
14
31
  var _invariant = _interopRequireDefault(require("invariant"));
15
32
  var _range = _interopRequireDefault(require("lodash/range"));
16
33
  var _pointGeometry = _interopRequireDefault(require("@mapbox/point-geometry"));
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["_invariant","_interopRequireDefault","require","_range","_pointGeometry","_head","_tail","_isEqual","xy","exports","x","y","buildSizeArray","size","padding","Number","isFinite","Math","max","invariant","half","round","tickCount","min","step","abs","getInterval","domain","ticks","major","minor","Error","concat","distance","minorTicks","normalizedMajor","isNaN","divider","raw","parseFloat","toFixed","mkRange","interval","range","splice","length","snapTo","value","rng","filter","v","reduce","prev","curr","currentDistance","previousDistance","buildTickModel","scaleFn","map","r","index","isMajor","polygonToArea","points","h","head","area","left","top","bottom","right","tail","a","p","lineToArea","from","to","bounds","point","o","Point","getDelta","sub","bandKey","d","label","isDomainRangeEqual","graphProps","nextGraphProps","isEqual","findLongestWord","longestWord","replace","split","sort","b","amountToIncreaseWidth","extractTextFromHTML","htmlString","_doc$body","parser","DOMParser","doc","parseFromString","body","textContent","isEmptyObject","obj","Object","keys","constructor","isEmptyString","str","trim"],"sources":["../src/utils.js"],"sourcesContent":["import invariant from 'invariant';\nimport range from 'lodash/range';\nimport Point from '@mapbox/point-geometry';\nimport head from 'lodash/head';\nimport tail from 'lodash/tail';\nimport isEqual from 'lodash/isEqual';\n\nexport const xy = (x, y) => ({ x, y });\n\nexport const buildSizeArray = (size, padding) => {\n padding = Number.isFinite(padding) ? Math.max(padding, 0) : 0;\n invariant(padding < size, 'padding must be less than size');\n const half = Math.round(padding * 0.5);\n return [half, size - half];\n};\n\nexport const tickCount = (min, max, step) => {\n invariant(min < max, 'min must be less than max');\n const size = Math.abs(min - max);\n return Math.round(size / step);\n};\n\nexport function getInterval(domain, ticks) {\n const { min, max } = domain;\n const { major, minor } = ticks;\n\n if (min >= max) {\n throw new Error(`min is > max: ${min} > ${max}`);\n }\n\n const distance = max - min;\n const minorTicks = minor > 0 ? minor + 1 : 1;\n const normalizedMajor = major - 1;\n\n if (isNaN(normalizedMajor)) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n if (normalizedMajor <= 0) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n const divider = normalizedMajor * minorTicks;\n const raw = distance / divider;\n return parseFloat(Number(raw).toFixed(4));\n}\n\nconst mkRange = (min, max, interval) => {\n const raw = range(min, max, interval);\n /* Fix the last step due to rounding errors */\n raw.splice(raw.length, 1, max);\n return raw;\n};\n\nexport function snapTo(min, max, interval, value) {\n if (value >= max) {\n return max;\n }\n\n if (value <= min) {\n return min;\n }\n\n let rng = mkRange(min, max, interval);\n\n rng = rng.filter((v) => {\n return Math.abs(value - v) <= interval;\n });\n\n return (\n rng.length &&\n rng.reduce((prev, curr) => {\n const currentDistance = Math.abs(curr - value);\n const previousDistance = Math.abs(prev - value);\n return currentDistance <= previousDistance ? curr : prev;\n })\n );\n}\n\nexport function buildTickModel(domain, ticks, interval, scaleFn) {\n const rng = mkRange(domain.min, domain.max, interval);\n\n return rng.map((r, index) => {\n const isMajor = index % (ticks.minor + 1) === 0;\n\n return {\n value: r,\n major: isMajor,\n x: scaleFn(r),\n };\n });\n}\n\nexport const polygonToArea = (points) => {\n const h = head(points);\n const area = {\n left: h.x,\n top: h.y,\n bottom: h.y,\n right: h.x,\n };\n return tail(points).reduce((a, p) => {\n a.left = Math.min(a.left, p.x);\n a.top = Math.max(a.top, p.y);\n a.bottom = Math.min(a.bottom, p.y);\n a.right = Math.max(a.right, p.x);\n return a;\n }, area);\n};\n\nexport const lineToArea = (from, to) => {\n const left = Math.min(from.x, to.x);\n const top = Math.max(from.y, to.y);\n const bottom = Math.min(from.y, to.y);\n const right = Math.max(from.x, to.x);\n return { left, top, bottom, right };\n};\n\nexport const bounds = (area, domain, range) => {\n return {\n left: domain.min - area.left,\n right: Math.abs(area.right - domain.max),\n top: Math.abs(area.top - range.max),\n bottom: range.min - area.bottom,\n };\n};\n\nexport const point = (o) => new Point(o.x, o.y);\nexport const getDelta = (from, to) => {\n return point(to).sub(point(from));\n};\n\nexport const bandKey = (d, index) => `${index}-${d.label || '-'}`;\n\nexport const isDomainRangeEqual = (graphProps, nextGraphProps) => {\n return isEqual(graphProps.domain, nextGraphProps.domain) && isEqual(graphProps.range, nextGraphProps.range);\n};\n\n// findLongestWord is also used in graphing\nexport const findLongestWord = (label) => {\n let longestWord = (label || '')\n .replace(/<[^>]+>/g, '')\n .split(' ')\n .sort((a, b) => b.length - a.length);\n\n return longestWord[0].length;\n};\n\n// amountToIncreaseWidth is also used in graphing\nexport const amountToIncreaseWidth = (longestWord) => {\n if (!longestWord) {\n return 0;\n }\n\n return longestWord * 20;\n};\n\nexport const extractTextFromHTML = (htmlString) => {\n const parser = new DOMParser();\n const doc = parser?.parseFromString(htmlString, 'text/html');\n return doc?.body?.textContent || '';\n};\n\nexport const isEmptyObject = (obj) => {\n return obj && Object.keys(obj).length === 0 && obj.constructor === Object;\n};\n\nexport const isEmptyString = (str) => {\n return typeof str === 'string' && str.trim() === '';\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["_invariant","_interopRequireDefault","require","_range","_pointGeometry","_head","_tail","_isEqual","xy","exports","x","y","buildSizeArray","size","padding","Number","isFinite","Math","max","invariant","half","round","tickCount","min","step","abs","getInterval","domain","ticks","major","minor","Error","concat","distance","minorTicks","normalizedMajor","isNaN","divider","raw","parseFloat","toFixed","mkRange","interval","range","splice","length","snapTo","value","rng","filter","v","reduce","prev","curr","currentDistance","previousDistance","buildTickModel","scaleFn","map","r","index","isMajor","polygonToArea","points","h","head","area","left","top","bottom","right","tail","a","p","lineToArea","from","to","bounds","point","o","Point","getDelta","sub","bandKey","d","label","isDomainRangeEqual","graphProps","nextGraphProps","isEqual","findLongestWord","longestWord","replace","split","sort","b","amountToIncreaseWidth","extractTextFromHTML","htmlString","_doc$body","parser","DOMParser","doc","parseFromString","body","textContent","isEmptyObject","obj","Object","keys","constructor","isEmptyString","str","trim"],"sources":["../src/utils.js"],"sourcesContent":["import invariant from 'invariant';\nimport range from 'lodash/range';\nimport Point from '@mapbox/point-geometry';\nimport head from 'lodash/head';\nimport tail from 'lodash/tail';\nimport isEqual from 'lodash/isEqual';\n\nexport const xy = (x, y) => ({ x, y });\n\nexport const buildSizeArray = (size, padding) => {\n padding = Number.isFinite(padding) ? Math.max(padding, 0) : 0;\n invariant(padding < size, 'padding must be less than size');\n const half = Math.round(padding * 0.5);\n return [half, size - half];\n};\n\nexport const tickCount = (min, max, step) => {\n invariant(min < max, 'min must be less than max');\n const size = Math.abs(min - max);\n return Math.round(size / step);\n};\n\nexport function getInterval(domain, ticks) {\n const { min, max } = domain;\n const { major, minor } = ticks;\n\n if (min >= max) {\n throw new Error(`min is > max: ${min} > ${max}`);\n }\n\n const distance = max - min;\n const minorTicks = minor > 0 ? minor + 1 : 1;\n const normalizedMajor = major - 1;\n\n if (isNaN(normalizedMajor)) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n if (normalizedMajor <= 0) {\n throw new Error('Tick Frequency must be 2 or higher');\n }\n\n const divider = normalizedMajor * minorTicks;\n const raw = distance / divider;\n return parseFloat(Number(raw).toFixed(4));\n}\n\nconst mkRange = (min, max, interval) => {\n const raw = range(min, max, interval);\n /* Fix the last step due to rounding errors */\n raw.splice(raw.length, 1, max);\n return raw;\n};\n\nexport function snapTo(min, max, interval, value) {\n if (value >= max) {\n return max;\n }\n\n if (value <= min) {\n return min;\n }\n\n let rng = mkRange(min, max, interval);\n\n rng = rng.filter((v) => {\n return Math.abs(value - v) <= interval;\n });\n\n return (\n rng.length &&\n rng.reduce((prev, curr) => {\n const currentDistance = Math.abs(curr - value);\n const previousDistance = Math.abs(prev - value);\n return currentDistance <= previousDistance ? curr : prev;\n })\n );\n}\n\nexport function buildTickModel(domain, ticks, interval, scaleFn) {\n const rng = mkRange(domain.min, domain.max, interval);\n\n return rng.map((r, index) => {\n const isMajor = index % (ticks.minor + 1) === 0;\n\n return {\n value: r,\n major: isMajor,\n x: scaleFn(r),\n };\n });\n}\n\nexport const polygonToArea = (points) => {\n const h = head(points);\n const area = {\n left: h.x,\n top: h.y,\n bottom: h.y,\n right: h.x,\n };\n return tail(points).reduce((a, p) => {\n a.left = Math.min(a.left, p.x);\n a.top = Math.max(a.top, p.y);\n a.bottom = Math.min(a.bottom, p.y);\n a.right = Math.max(a.right, p.x);\n return a;\n }, area);\n};\n\nexport const lineToArea = (from, to) => {\n const left = Math.min(from.x, to.x);\n const top = Math.max(from.y, to.y);\n const bottom = Math.min(from.y, to.y);\n const right = Math.max(from.x, to.x);\n return { left, top, bottom, right };\n};\n\nexport const bounds = (area, domain, range) => {\n return {\n left: domain.min - area.left,\n right: Math.abs(area.right - domain.max),\n top: Math.abs(area.top - range.max),\n bottom: range.min - area.bottom,\n };\n};\n\nexport const point = (o) => new Point(o.x, o.y);\nexport const getDelta = (from, to) => {\n return point(to).sub(point(from));\n};\n\nexport const bandKey = (d, index) => `${index}-${d.label || '-'}`;\n\nexport const isDomainRangeEqual = (graphProps, nextGraphProps) => {\n return isEqual(graphProps.domain, nextGraphProps.domain) && isEqual(graphProps.range, nextGraphProps.range);\n};\n\n// findLongestWord is also used in graphing\nexport const findLongestWord = (label) => {\n let longestWord = (label || '')\n .replace(/<[^>]+>/g, '')\n .split(' ')\n .sort((a, b) => b.length - a.length);\n\n return longestWord[0].length;\n};\n\n// amountToIncreaseWidth is also used in graphing\nexport const amountToIncreaseWidth = (longestWord) => {\n if (!longestWord) {\n return 0;\n }\n\n return longestWord * 20;\n};\n\nexport const extractTextFromHTML = (htmlString) => {\n const parser = new DOMParser();\n const doc = parser?.parseFromString(htmlString, 'text/html');\n return doc?.body?.textContent || '';\n};\n\nexport const isEmptyObject = (obj) => {\n return obj && Object.keys(obj).length === 0 && obj.constructor === Object;\n};\n\nexport const isEmptyString = (str) => {\n return typeof str === 'string' && str.trim() === '';\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "3.1.0-next.5",
6
+ "version": "3.1.1-next.0",
7
7
  "description": "Some underlying components for building charts/graphs",
8
8
  "keywords": [
9
9
  "react",
@@ -18,26 +18,26 @@
18
18
  "dependencies": {
19
19
  "@emotion/react": "^11.14.0",
20
20
  "@emotion/style": "^0.8.0",
21
- "@mapbox/point-geometry": "^0.1.0",
21
+ "@mapbox/point-geometry": "^1.1.0",
22
22
  "@mui/icons-material": "^7.3.4",
23
23
  "@mui/material": "^7.3.4",
24
- "@pie-lib/editable-html-tip-tap": "1.1.0-next.5",
25
- "@pie-lib/render-ui": "5.1.0-next.5",
24
+ "@pie-lib/editable-html-tip-tap": "^1.1.1-next.0",
25
+ "@pie-lib/render-ui": "^5.1.1-next.0",
26
26
  "assert": "^1.4.1",
27
- "d3-scale": "^2.1.2",
28
- "d3-selection": "^1.3.2",
27
+ "d3-scale": "^4.0.2",
28
+ "d3-selection": "^3.0.0",
29
29
  "debug": "^4.1.1",
30
30
  "invariant": "^2.2.4",
31
- "lodash": "^4.17.11",
31
+ "lodash": "^4.17.23",
32
32
  "prop-types": "^15.7.2",
33
33
  "react": "^18.2.0",
34
- "react-draggable": "^3.1.1",
34
+ "react-draggable": "^3.3.0",
35
35
  "react-redux": "^6.0.0",
36
36
  "redux": "^4.0.1"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": "^18.2.0"
40
40
  },
41
- "gitHead": "e51620791bab7434375dc0a101c39dc5926a457d",
41
+ "gitHead": "7bb08145106e65c83a8f4a51902cf669d1be19ac",
42
42
  "scripts": {}
43
43
  }
@@ -2,10 +2,10 @@ import { render } from '@testing-library/react';
2
2
  import React from 'react';
3
3
  import { gridDraggable } from '../grid-draggable';
4
4
  import { getDelta } from '../utils';
5
- import { clientPoint } from 'd3-selection';
5
+ import { pointer } from 'd3-selection';
6
6
 
7
7
  jest.mock('d3-selection', () => ({
8
- clientPoint: jest.fn().mockReturnValue([0, 0]),
8
+ pointer: jest.fn().mockReturnValue([0, 0]),
9
9
  }));
10
10
 
11
11
  let mockDraggableCoreProps;
@@ -438,7 +438,7 @@ describe('gridDraggable', () => {
438
438
  const onDragStop = jest.fn();
439
439
  const props = { ...defaultProps, onClick, onDragStop };
440
440
 
441
- clientPoint.mockReturnValue([0, 0]);
441
+ pointer.mockReturnValue([0, 0]);
442
442
 
443
443
  const Comp = gridDraggable(defaultOptions)(() => <div>Test</div>);
444
444
  render(<Comp {...props} />);
@@ -460,7 +460,7 @@ describe('gridDraggable', () => {
460
460
  graphProps.snap.x = jest.fn().mockReturnValue(2);
461
461
  graphProps.snap.y = jest.fn().mockReturnValue(2);
462
462
 
463
- clientPoint.mockReturnValue([1.7, 2.3]);
463
+ pointer.mockReturnValue([1.7, 2.3]);
464
464
 
465
465
  const propsWithGraphProps = { ...props, graphProps };
466
466
  const Comp = gridDraggable(defaultOptions)(() => <div>Test</div>);
@@ -1,11 +1,11 @@
1
1
  import { render, cleanup } from '@testing-library/react';
2
2
  import React from 'react';
3
3
  import { Root } from '../root';
4
- import { select, mouse } from 'd3-selection';
4
+ import { select, pointer } from 'd3-selection';
5
5
 
6
6
  jest.mock('d3-selection', () => ({
7
7
  select: jest.fn(),
8
- mouse: jest.fn(),
8
+ pointer: jest.fn(),
9
9
  }));
10
10
 
11
11
  const scaleMock = () => {
@@ -48,7 +48,7 @@ describe('root', () => {
48
48
  select.mockReturnValue({
49
49
  on: mockOn,
50
50
  });
51
- mouse.mockReturnValue([0, 0]);
51
+ pointer.mockReturnValue([0, 0]);
52
52
 
53
53
  defaultProps = {
54
54
  classes: {},
@@ -62,9 +62,7 @@ describe('root', () => {
62
62
  });
63
63
 
64
64
  it('renders with children', () => {
65
- const { container, getByText } = render(
66
- <Root {...defaultProps}>hi</Root>
67
- );
65
+ const { container, getByText } = render(<Root {...defaultProps}>hi</Root>);
68
66
  expect(container.firstChild).toBeInTheDocument();
69
67
  expect(getByText('hi')).toBeInTheDocument();
70
68
  });
@@ -100,7 +98,7 @@ describe('root', () => {
100
98
  });
101
99
 
102
100
  describe('mouseMove function', () => {
103
- it('calls mouse with correct arguments', () => {
101
+ it('calls pointer with correct arguments', () => {
104
102
  const onMouseMove = jest.fn();
105
103
  const gp = graphProps();
106
104
  const props = {
@@ -110,6 +108,7 @@ describe('root', () => {
110
108
  };
111
109
 
112
110
  const mockNode = document.createElement('div');
111
+ const mockEvent = { clientX: 10, clientY: 20 };
113
112
  const mockSelection = {
114
113
  _groups: [[mockNode]],
115
114
  node: () => mockNode,
@@ -122,17 +121,17 @@ describe('root', () => {
122
121
  mockOn(event, handler);
123
122
  // When 'mousemove' is registered, immediately test it
124
123
  if (event === 'mousemove' && handler) {
125
- mouse.mockReturnValue([10, 20]);
126
- // Handler is bound with mockSelection as first arg, so call with no args
127
- handler();
124
+ pointer.mockReturnValue([10, 20]);
125
+ // Handler is bound with mockSelection as first arg, so call with event
126
+ handler(mockEvent);
128
127
  }
129
128
  },
130
129
  });
131
130
 
132
131
  render(<Root {...props}>hi</Root>);
133
132
 
134
- // Verify mouse was called with the correct node
135
- expect(mouse).toHaveBeenCalledWith(mockNode);
133
+ // Verify pointer was called with the event and correct node
134
+ expect(pointer).toHaveBeenCalledWith(mockEvent, mockNode);
136
135
  });
137
136
 
138
137
  it('calls scale.x.invert and scale.y.invert', () => {
@@ -145,6 +144,7 @@ describe('root', () => {
145
144
  };
146
145
 
147
146
  const mockNode = document.createElement('div');
147
+ const mockEvent = { clientX: 15, clientY: 25 };
148
148
  const mockSelection = {
149
149
  _groups: [[mockNode]],
150
150
  node: () => mockNode,
@@ -155,8 +155,8 @@ describe('root', () => {
155
155
  on: (event, handler) => {
156
156
  mockOn(event, handler);
157
157
  if (event === 'mousemove' && handler) {
158
- mouse.mockReturnValue([15, 25]);
159
- handler();
158
+ pointer.mockReturnValue([15, 25]);
159
+ handler(mockEvent);
160
160
  }
161
161
  },
162
162
  });
@@ -179,6 +179,7 @@ describe('root', () => {
179
179
  };
180
180
 
181
181
  const mockNode = document.createElement('div');
182
+ const mockEvent = { clientX: 100, clientY: 200 };
182
183
  const mockSelection = {
183
184
  _groups: [[mockNode]],
184
185
  node: () => mockNode,
@@ -189,7 +190,7 @@ describe('root', () => {
189
190
  on: (event, handler) => {
190
191
  mockOn(event, handler);
191
192
  if (event === 'mousemove' && handler) {
192
- mouse.mockReturnValue([15, 25]);
193
+ pointer.mockReturnValue([100, 200]);
193
194
  handler();
194
195
  }
195
196
  },
@@ -216,6 +217,7 @@ describe('root', () => {
216
217
  };
217
218
 
218
219
  const mockNode = document.createElement('div');
220
+ const mockEvent = { clientX: 100, clientY: 200 };
219
221
  const mockSelection = {
220
222
  _groups: [[mockNode]],
221
223
  node: () => mockNode,
@@ -226,8 +228,8 @@ describe('root', () => {
226
228
  on: (event, handler) => {
227
229
  mockOn(event, handler);
228
230
  if (event === 'mousemove' && handler) {
229
- mouse.mockReturnValue([100, 200]);
230
- handler();
231
+ pointer.mockReturnValue([100, 200]);
232
+ handler(mockEvent);
231
233
  }
232
234
  },
233
235
  });
@@ -245,6 +247,7 @@ describe('root', () => {
245
247
  };
246
248
 
247
249
  const mockNode = document.createElement('div');
250
+ const mockEvent = { clientX: 100, clientY: 200 };
248
251
  const mockSelection = {
249
252
  _groups: [[mockNode]],
250
253
  node: () => mockNode,
@@ -255,9 +258,9 @@ describe('root', () => {
255
258
  on: (event, handler) => {
256
259
  mockOn(event, handler);
257
260
  if (event === 'mousemove' && handler) {
258
- mouse.mockReturnValue([100, 200]);
261
+ pointer.mockReturnValue([100, 200]);
259
262
  // Should not throw error when onMouseMove is not provided
260
- expect(() => handler()).not.toThrow();
263
+ expect(() => handler(mockEvent)).not.toThrow();
261
264
  }
262
265
  },
263
266
  });
@@ -1,4 +1,3 @@
1
- import { AssertionError } from 'assert';
2
1
  import * as utils from '../utils';
3
2
 
4
3
  const xy = utils.xy;
@@ -53,7 +52,7 @@ describe('utils', () => {
53
52
  let scaleFn;
54
53
 
55
54
  beforeEach(() => {
56
- scaleFn = jest.fn(function(v) {
55
+ scaleFn = jest.fn(function (v) {
57
56
  return v;
58
57
  });
59
58
  });
@@ -6,7 +6,7 @@ import debug from 'debug';
6
6
  import * as utils from './utils';
7
7
  import isFunction from 'lodash/isFunction';
8
8
  import invariant from 'invariant';
9
- import { clientPoint } from 'd3-selection';
9
+ import { pointer } from 'd3-selection';
10
10
 
11
11
  const log = debug('pie-lib:plot:grid-draggable');
12
12
 
@@ -235,7 +235,7 @@ export const gridDraggable = (opts) => (Comp) => {
235
235
  this.setState({ startX: null });
236
236
  const { graphProps } = this.props;
237
237
  const { scale, snap } = graphProps;
238
- const [rawX, rawY] = clientPoint(e.target, e);
238
+ const [rawX, rawY] = pointer(e, e.target);
239
239
  let x = scale.x.invert(rawX);
240
240
  let y = scale.y.invert(rawY);
241
241
  x = snap.x(x);
package/src/root.jsx CHANGED
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { styled } from '@mui/material/styles';
3
3
  import PropTypes from 'prop-types';
4
- import { select, mouse } from 'd3-selection';
4
+ import { select, pointer } from 'd3-selection';
5
5
 
6
6
  import { color, Readable } from '@pie-lib/render-ui';
7
7
  import EditableHtml from '@pie-lib/editable-html-tip-tap';
@@ -126,7 +126,7 @@ export class Root extends React.Component {
126
126
  labelsCharactersLimit: PropTypes.number,
127
127
  };
128
128
 
129
- mouseMove = (g) => {
129
+ mouseMove = (g, event) => {
130
130
  const { graphProps, onMouseMove } = this.props;
131
131
 
132
132
  if (!onMouseMove) {
@@ -134,7 +134,7 @@ export class Root extends React.Component {
134
134
  }
135
135
 
136
136
  const { scale, snap } = graphProps;
137
- const coords = mouse(g.node());
137
+ const coords = pointer(event, g.node());
138
138
  const x = scale.x.invert(coords[0]);
139
139
  const y = scale.y.invert(coords[1]);
140
140