@pie-element/hotspot 9.3.4-next.3 → 10.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +0 -11
- package/configure/CHANGELOG.md +0 -11
- package/configure/lib/DeleteWidget.js +30 -43
- package/configure/lib/DeleteWidget.js.map +1 -1
- package/configure/lib/button.js +26 -45
- package/configure/lib/button.js.map +1 -1
- package/configure/lib/buttons/circle.js +20 -27
- package/configure/lib/buttons/circle.js.map +1 -1
- package/configure/lib/buttons/polygon.js +26 -33
- package/configure/lib/buttons/polygon.js.map +1 -1
- package/configure/lib/buttons/rectangle.js +26 -33
- package/configure/lib/buttons/rectangle.js.map +1 -1
- package/configure/lib/defaults.js +2 -3
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/hotspot-circle.js +132 -198
- package/configure/lib/hotspot-circle.js.map +1 -1
- package/configure/lib/hotspot-container.js +250 -355
- package/configure/lib/hotspot-container.js.map +1 -1
- package/configure/lib/hotspot-drawable.js +360 -472
- package/configure/lib/hotspot-drawable.js.map +1 -1
- package/configure/lib/hotspot-palette.js +92 -139
- package/configure/lib/hotspot-palette.js.map +1 -1
- package/configure/lib/hotspot-polygon.js +212 -317
- package/configure/lib/hotspot-polygon.js.map +1 -1
- package/configure/lib/hotspot-rectangle.js +128 -192
- package/configure/lib/hotspot-rectangle.js.map +1 -1
- package/configure/lib/icons.js.map +1 -1
- package/configure/lib/image-konva.js +46 -86
- package/configure/lib/image-konva.js.map +1 -1
- package/configure/lib/index.js +162 -222
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/root.js +302 -394
- package/configure/lib/root.js.map +1 -1
- package/configure/lib/shapes/circle.js +69 -101
- package/configure/lib/shapes/circle.js.map +1 -1
- package/configure/lib/shapes/index.js +4 -12
- package/configure/lib/shapes/index.js.map +1 -1
- package/configure/lib/shapes/polygon.js +64 -96
- package/configure/lib/shapes/polygon.js.map +1 -1
- package/configure/lib/shapes/rectagle.js +69 -101
- package/configure/lib/shapes/rectagle.js.map +1 -1
- package/configure/lib/shapes/utils.js +2 -8
- package/configure/lib/shapes/utils.js.map +1 -1
- package/configure/lib/upload-control.js +25 -52
- package/configure/lib/upload-control.js.map +1 -1
- package/configure/lib/utils.js +84 -137
- package/configure/lib/utils.js.map +1 -1
- package/configure/package.json +11 -10
- package/configure/src/__tests__/hotspot-container.test.js +50 -19
- package/configure/src/__tests__/hotspot-drawable.test.js +55 -34
- package/configure/src/__tests__/index.test.js +167 -5
- package/configure/src/__tests__/root.test.js +89 -63
- package/configure/src/button.jsx +12 -20
- package/configure/src/hotspot-circle.jsx +5 -18
- package/configure/src/hotspot-container.jsx +82 -98
- package/configure/src/hotspot-drawable.jsx +43 -45
- package/configure/src/hotspot-palette.jsx +45 -37
- package/configure/src/hotspot-polygon.jsx +4 -20
- package/configure/src/hotspot-rectangle.jsx +4 -17
- package/configure/src/index.js +12 -2
- package/configure/src/root.jsx +86 -80
- package/configure/src/upload-control.jsx +6 -16
- package/controller/CHANGELOG.md +0 -11
- package/controller/lib/defaults.js +2 -3
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +151 -205
- package/controller/lib/index.js.map +1 -1
- package/controller/lib/utils.js +14 -34
- package/controller/lib/utils.js.map +1 -1
- package/controller/package.json +2 -2
- package/lib/hotspot/circle.js +110 -169
- package/lib/hotspot/circle.js.map +1 -1
- package/lib/hotspot/container.js +174 -260
- package/lib/hotspot/container.js.map +1 -1
- package/lib/hotspot/icons.js.map +1 -1
- package/lib/hotspot/image-konva-tooltip.js +65 -112
- package/lib/hotspot/image-konva-tooltip.js.map +1 -1
- package/lib/hotspot/index.js +135 -198
- package/lib/hotspot/index.js.map +1 -1
- package/lib/hotspot/polygon.js +150 -214
- package/lib/hotspot/polygon.js.map +1 -1
- package/lib/hotspot/rectangle.js +128 -185
- package/lib/hotspot/rectangle.js.map +1 -1
- package/lib/index.js +187 -256
- package/lib/index.js.map +1 -1
- package/lib/session-updater.js +12 -18
- package/lib/session-updater.js.map +1 -1
- package/package.json +14 -11
- package/src/__tests__/container.test.jsx +27 -175
- package/src/__tests__/index.test.js +70 -30
- package/src/hotspot/circle.jsx +2 -13
- package/src/hotspot/container.jsx +35 -50
- package/src/hotspot/index.jsx +16 -28
- package/src/hotspot/polygon.jsx +4 -13
- package/src/hotspot/rectangle.jsx +5 -15
- package/src/index.js +21 -12
- package/configure/src/__tests__/DeleteWidget.test.js +0 -64
- package/configure/src/__tests__/__snapshots__/hotspot-container.test.js.snap +0 -192
- package/configure/src/__tests__/__snapshots__/hotspot-drawable.test.js.snap +0 -562
- package/configure/src/__tests__/__snapshots__/root.test.js.snap +0 -469
- package/src/__tests__/__snapshots__/container.test.jsx.snap +0 -264
- package/src/__tests__/__snapshots__/index.test.js.snap +0 -81
- package/src/__tests__/__snapshots__/polygon.test.jsx.snap +0 -192
- package/src/__tests__/__snapshots__/rectangle.test.jsx.snap +0 -127
- package/src/__tests__/polygon.test.jsx +0 -230
- package/src/__tests__/rectangle.test.jsx +0 -232
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/hotspot-polygon.jsx"],"names":["HOVERED_COLOR","PolComponent","points","xList","map","p","x","yList","y","Math","min","max","getOffset","xOffset","yOffset","reduce","acc","point","length","id","hovered","isDragging","getInitialState","props","e","width","height","isDrawing","onClick","addPolygonPoint","cancelBubble","setState","document","body","style","cursor","updateModel","onDragEnd","target","serialize","state","newPoints","currentPointCoordinate","index","changedIndex","onDeleteShape","xValues","yValues","minX","maxX","minY","maxY","classes","correct","hotspotColor","outlineColor","selectedHotspotColor","hoverOutlineColor","strokeWidth","isInProgress","showPoints","calculatedStrokeWidth","calculatedStroke","boundingBox","getBoundingBox","calculatedFill","group","handleMouseLeave","handleMouseEnter","base","handleClick","onDragStart","handleOnDragEnd","circle","handleOnDragVertex","handleDelete","nextProps","prevState","imageHeight","imageWidth","JSON","stringify","React","Component","styles","opacity","padding","propTypes","PropTypes","object","isRequired","bool","string","number","func","arrayOf","shape","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,aAAa,GAAG,SAAtB;;IAEMC,Y;;;;;;;;;;;;;;;kGA6BQ,UAACC,MAAD,EAAY;AACtB,UAAMC,KAAK,GAAGD,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,CAAT;AAAA,OAAX,CAAd;AACA,UAAMC,KAAK,GAAGL,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACG,CAAT;AAAA,OAAX,CAAd;AAEA,aAAO;AACLF,QAAAA,CAAC,EAAEG,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQN,KAAR,EADF;AAELK,QAAAA,CAAC,EAAEC,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQF,KAAR;AAFF,OAAP;AAID,K;kGAEW,UAACL,MAAD,EAAY;AACtB,4BAAmC,MAAKU,SAAL,CAAeV,MAAf,CAAnC;AAAA,UAAWW,OAAX,mBAAQP,CAAR;AAAA,UAAuBQ,OAAvB,mBAAoBN,CAApB;;AAEA,aAAON,MAAM,CAACa,MAAP,CAAc,UAACC,GAAD,EAAMC,KAAN;AAAA,6DAAoBD,GAApB,IAAyBC,KAAK,CAACX,CAAN,GAAUO,OAAnC,EAA4CI,KAAK,CAACT,CAAN,GAAUM,OAAtD;AAAA,OAAd,EAA8E,EAA9E,CAAP;AACD,K;wGAEiB,UAACZ,MAAD,EAAY;AAC5B,UAAIA,MAAM,CAACgB,MAAX,EAAmB;AACjB,+BAAiB,MAAKN,SAAL,CAAeV,MAAf,CAAjB;AAAA,YAAQI,CAAR,oBAAQA,CAAR;AAAA,YAAWE,CAAX,oBAAWA,CAAX;;AAEA,eAAO;AACLF,UAAAA,CAAC,EAADA,CADK;AAELE,UAAAA,CAAC,EAADA,CAFK;AAGLN,UAAAA,MAAM,EAANA;AAHK,SAAP;AAKD;;AAED,aAAO;AACLiB,QAAAA,EAAE,EAAE,EADC;AAELb,QAAAA,CAAC,EAAE,CAFE;AAGLE,QAAAA,CAAC,EAAE,CAHE;AAILN,QAAAA,MAAM,EAAE;AAJH,OAAP;AAMD,K;;AAGCkB,MAAAA,OAAO,EAAE,K;AACTC,MAAAA,UAAU,EAAE;OACT,MAAKC,eAAL,CAAqB,MAAKC,KAAL,CAAWrB,MAAhC,C;oGAGS,UAACsB,CAAD,EAAO;AACnB,UAAQtB,MAAR,GAAmB,MAAKqB,KAAxB,CAAQrB,MAAR;AACA,UAAMC,KAAK,GAAGD,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,CAAT;AAAA,OAAX,CAAd;AACA,UAAMC,KAAK,GAAGL,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACG,CAAT;AAAA,OAAX,CAAd;AAEA,UAAMiB,KAAK,GAAGhB,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQN,KAAR,EAAJ,GAAqBM,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQN,KAAR,EAAvC;AACA,UAAMuB,MAAM,GAAGjB,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQF,KAAR,EAAJ,GAAqBE,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQF,KAAR,EAAxC;AAEA,wBAAmC,MAAKgB,KAAxC;AAAA,UAAQI,SAAR,eAAQA,SAAR;AAAA,UAAmBC,OAAnB,eAAmBA,OAAnB;AAAA,UAA4BT,EAA5B,eAA4BA,EAA5B;;AAEA,UAAIM,KAAK,GAAG,CAAR,IAAaC,MAAM,GAAG,CAAtB,IAA2BC,SAA/B,EAA0C;AACxC;AACD;;AAED,UAAIA,SAAS,IAAIR,EAAE,KAAK,YAAxB,EAAsC;AACpC,cAAKI,KAAL,CAAWM,eAAX,CAA2BL,CAA3B;;AACA;AACD;;AAEDA,MAAAA,CAAC,CAACM,YAAF,GAAiB,IAAjB;AACAF,MAAAA,OAAO,CAACT,EAAD,CAAP;AACD,K;yGAEkB,YAAM;AACvB,YAAKY,QAAL,CAAc;AAAEX,QAAAA,OAAO,EAAE;AAAX,OAAd;;AACAY,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;AACD,K;yGAEkB,YAAM;AACvB,YAAKJ,QAAL,CAAc;AAAEX,QAAAA,OAAO,EAAE;AAAX,OAAd;;AACAY,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;AACD,K;wGAEiB,UAACX,CAAD,EAA4B;AAAA,UAAxBY,WAAwB,uEAAV,KAAU;AAC5C,yBAA0B,MAAKb,KAA/B;AAAA,UAAQc,SAAR,gBAAQA,SAAR;AAAA,UAAmBlB,EAAnB,gBAAmBA,EAAnB;;AACA,UAAMjB,MAAM,GAAGsB,CAAC,CAACc,MAAF,CAASpC,MAAT,MAAqB,MAAKqC,SAAL,CAAe,MAAKC,KAAL,CAAWtC,MAA1B,CAApC;;AAEA,UAAMuC,SAAS,GAAGvC,MAAM,CAACa,MAAP,CAAc,UAACC,GAAD,EAAM0B,sBAAN,EAA8BC,KAA9B,EAAwC;AACtE,YAAIA,KAAK,GAAG,CAAR,KAAc,CAAd,IAAmBA,KAAK,GAAG,CAAR,GAAYzC,MAAM,CAACgB,MAA1C,EAAkD;AAChD,+DACKF,GADL,IAEE;AACEV,YAAAA,CAAC,EAAEoC,sBAAsB,GAAGlB,CAAC,CAACc,MAAF,CAAShC,CAAT,EAD9B;AAEEE,YAAAA,CAAC,EAAEN,MAAM,CAACyC,KAAK,GAAG,CAAT,CAAN,GAAoBnB,CAAC,CAACc,MAAF,CAAS9B,CAAT;AAFzB,WAFF;AAOD;;AAED,eAAOQ,GAAP;AACD,OAZiB,EAYf,EAZe,CAAlB;;AAcA,YAAKe,QAAL;AACE7B,QAAAA,MAAM,EAAEuC;AADV,SAEK,MAAK7B,SAAL,CAAe6B,SAAf,CAFL;AAGEpB,QAAAA,UAAU,EAAEe,WAAW,GAAG,KAAH,GAAW,MAAKI,KAAL,CAAWnB;AAH/C;;AAMA,UAAIe,WAAJ,EAAiB;AACfC,QAAAA,SAAS,CAAClB,EAAD,EAAK;AAAEjB,UAAAA,MAAM,EAAEuC;AAAV,SAAL,CAAT;AACD;AACF,K;2GAEoB,UAACjB,CAAD,EAAIoB,YAAJ,EAAkBR,WAAlB,EAAkC;AACrD,yBAA0B,MAAKb,KAA/B;AAAA,UAAQc,SAAR,gBAAQA,SAAR;AAAA,UAAmBlB,EAAnB,gBAAmBA,EAAnB;AACA,UAAQjB,MAAR,GAAmB,MAAKsC,KAAxB,CAAQtC,MAAR;AAEA,UAAMuC,SAAS,GAAGvC,MAAM,CAACE,GAAP,CAAW,UAACa,KAAD,EAAQ0B,KAAR;AAAA,eAC3BA,KAAK,KAAKC,YAAV,GAAyB;AAAEtC,UAAAA,CAAC,EAAEkB,CAAC,CAACc,MAAF,CAAShC,CAAT,EAAL;AAAmBE,UAAAA,CAAC,EAAEgB,CAAC,CAACc,MAAF,CAAS9B,CAAT;AAAtB,SAAzB,GAAgES,KADrC;AAAA,OAAX,CAAlB;;AAIA,YAAKc,QAAL;AACE7B,QAAAA,MAAM,EAAEuC;AADV,SAEK,MAAK7B,SAAL,CAAe6B,SAAf,CAFL;AAGEpB,QAAAA,UAAU,EAAEe,WAAW,GAAG,KAAH,GAAW,MAAKI,KAAL,CAAWnB;AAH/C;;AAMA,UAAIe,WAAJ,EAAiB;AACfC,QAAAA,SAAS,CAAClB,EAAD,EAAK;AAAEjB,UAAAA,MAAM,EAAEuC;AAAV,SAAL,CAAT;AACD;AACF,K;oGAEa,YAAM;AAClB,YAAKV,QAAL,CAAc;AAAEV,QAAAA,UAAU,EAAE;AAAd,OAAd;AACD,K;qGAEc,UAACF,EAAD,EAAQ;AACrB,UAAQ0B,aAAR,GAA0B,MAAKtB,KAA/B,CAAQsB,aAAR;AACAA,MAAAA,aAAa,CAAC1B,EAAD,CAAb;AACD,K;;;;;;WAED;AACA;AACA;AAEA,4BAAejB,MAAf,EAAuB;AACrB,UAAM4C,OAAO,GAAG5C,MAAM,CAACE,GAAP,CAAW,UAACa,KAAD;AAAA,eAAWA,KAAK,CAACX,CAAjB;AAAA,OAAX,CAAhB;AACA,UAAMyC,OAAO,GAAG7C,MAAM,CAACE,GAAP,CAAW,UAACa,KAAD;AAAA,eAAWA,KAAK,CAACT,CAAjB;AAAA,OAAX,CAAhB;AACA,UAAMwC,IAAI,GAAGvC,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQqC,OAAR,EAAjB;AACA,UAAMG,IAAI,GAAGxC,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQqC,OAAR,EAAjB;AACA,UAAMI,IAAI,GAAGzC,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQsC,OAAR,EAAjB;AACA,UAAMI,IAAI,GAAG1C,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQsC,OAAR,EAAjB;AACA,aAAO;AACLzC,QAAAA,CAAC,EAAE0C,IADE;AAELxC,QAAAA,CAAC,EAAE0C,IAFE;AAGLzB,QAAAA,KAAK,EAAEwB,IAAI,GAAGD,IAHT;AAILtB,QAAAA,MAAM,EAAEyB,IAAI,GAAGD;AAJV,OAAP;AAMD;;;WAED,kBAAS;AAAA;;AACP,yBASI,KAAK3B,KATT;AAAA,UACE6B,OADF,gBACEA,OADF;AAAA,UAEEC,OAFF,gBAEEA,OAFF;AAAA,UAGElC,EAHF,gBAGEA,EAHF;AAAA,UAIEmC,YAJF,gBAIEA,YAJF;AAAA,UAKEC,YALF,gBAKEA,YALF;AAAA,UAMEC,oBANF,gBAMEA,oBANF;AAAA,UAOEC,iBAPF,gBAOEA,iBAPF;AAAA,+CAQEC,WARF;AAAA,UAQEA,WARF,sCAQgB,CARhB;AAWA,wBAAkC,KAAKlB,KAAvC;AAAA,UAAQtC,MAAR,eAAQA,MAAR;AAAA,UAAgBI,CAAhB,eAAgBA,CAAhB;AAAA,UAAmBE,CAAnB,eAAmBA,CAAnB;AAAA,UAAsBY,OAAtB,eAAsBA,OAAtB;AACA,UAAMuC,YAAY,GAAGxC,EAAE,KAAK,YAA5B;AACA,UAAMyC,UAAU,GAAGxC,OAAO,IAAID,EAAE,KAAK,YAArC;AAEA,UAAM0C,qBAAqB,GAAGR,OAAO,GAAGK,WAAH,GAAiBtC,OAAO,GAAG,CAAH,GAAO,CAApE;AACA,UAAM0C,gBAAgB,GAAGT,OAAO,GAAGE,YAAH,GAAkBnC,OAAO,GAAGpB,aAAH,GAAmB,EAA5E;AACA,UAAM+D,WAAW,GAAG,KAAKC,cAAL,CAAoB9D,MAApB,CAApB;AACA,UAAM+D,cAAc,GAAGZ,OAAO,IAAIG,oBAAX,GAAkCA,oBAAlC,GAAyDF,YAAhF;AAEA,0BACE,gCAAC,iBAAD;AAAO,QAAA,OAAO,EAAEF,OAAO,CAACc,KAAxB;AAA+B,QAAA,YAAY,EAAE,KAAKC,gBAAlD;AAAoE,QAAA,YAAY,EAAE,KAAKC;AAAvF,SACGX,iBAAiB,IAAIrC,OAArB,iBACC,gCAAC,oBAAD;AACE,QAAA,CAAC,EAAE2C,WAAW,CAACzD,CADjB;AAEE,QAAA,CAAC,EAAEyD,WAAW,CAACvD,CAFjB;AAGE,QAAA,KAAK,EAAEuD,WAAW,CAACtC,KAHrB;AAIE,QAAA,MAAM,EAAEsC,WAAW,CAACrC,MAJtB;AAKE,QAAA,MAAM,EAAE+B,iBALV;AAME,QAAA,WAAW,EAAE,CANf;AAOE,QAAA,SAAS,EAAE;AAPb,QAFJ,eAYE,gCAAC,gBAAD;AACE,QAAA,OAAO,EAAEL,OAAO,CAACiB,IADnB;AAEE,QAAA,MAAM,EAAE,KAAK9B,SAAL,CAAerC,MAAf,CAFV;AAGE,QAAA,MAAM,EAAE,CAACyD,YAHX;AAIE,QAAA,IAAI,EAAEA,YAAY,GAAG,aAAH,GAAmBM,cAJvC;AAKE,QAAA,OAAO,EAAE,KAAKK,WALhB;AAME,QAAA,KAAK,EAAE,KAAKA,WANd;AAOE,QAAA,SAAS,MAPX;AAQE,QAAA,MAAM,EAAEX,YAAY,GAAGJ,YAAH,GAAkBO,gBARxC;AASE,QAAA,WAAW,EAAEH,YAAY,GAAG,CAAH,GAAOE,qBATlC;AAUE,QAAA,WAAW,EAAE,KAAKU,WAVpB;AAWE,QAAA,UAAU,EAAE,KAAKC,eAXnB;AAYE,QAAA,SAAS,EAAE,mBAAChD,CAAD;AAAA,iBAAO,MAAI,CAACgD,eAAL,CAAqBhD,CAArB,EAAwB,IAAxB,CAAP;AAAA,SAZb;AAaE,QAAA,CAAC,EAAElB,CAbL;AAcE,QAAA,CAAC,EAAEE;AAdL,QAZF,EA6BGoD,UAAU,IACT1D,MAAM,CAACE,GAAP,CAAW,UAACa,KAAD,EAAQ0B,KAAR;AAAA,4BACT,gCAAC,kBAAD;AACE,UAAA,GAAG,EAAEA,KADP;AAEE,UAAA,SAAS,EAAES,OAAO,CAACqB,MAFrB;AAGE,UAAA,CAAC,EAAExD,KAAK,CAACX,CAHX;AAIE,UAAA,CAAC,EAAEW,KAAK,CAACT,CAJX;AAKE,UAAA,MAAM,EAAE,CALV;AAME,UAAA,IAAI,EAAEmC,KAAK,KAAK,CAAV,IAAexB,EAAE,KAAK,YAAtB,GAAqC,MAArC,GAA8C,OANtD;AAOE,UAAA,MAAM,EAAEnB,aAPV;AAQE,UAAA,WAAW,EAAE,CARf;AASE,UAAA,OAAO,EAAE,MAAI,CAACsE,WAThB;AAUE,UAAA,WAAW,EAAE,MAAI,CAACC,WAVpB;AAWE,UAAA,UAAU,EAAE,oBAAC/C,CAAD,EAAO;AACjB,YAAA,MAAI,CAACkD,kBAAL,CAAwBlD,CAAxB,EAA2BmB,KAA3B;AACD,WAbH;AAcE,UAAA,SAAS,EAAE,mBAACnB,CAAD,EAAO;AAChB,YAAA,MAAI,CAACkD,kBAAL,CAAwBlD,CAAxB,EAA2BmB,KAA3B,EAAkC,IAAlC;AACD,WAhBH;AAiBE,UAAA,SAAS;AAjBX,UADS;AAAA,OAAX,CA9BJ,EAmDG,CAAC,KAAKH,KAAL,CAAWnB,UAAZ,IAA0B,KAAKmB,KAAL,CAAWpB,OAArC,iBACC,gCAAC,wBAAD;AAAc,QAAA,CAAC,EAAEd,CAAjB;AAAoB,QAAA,CAAC,EAAEE,CAAvB;AAA0B,QAAA,EAAE,EAAEW,EAA9B;AAAkC,QAAA,iBAAiB,EAAE,KAAKwD,YAA1D;AAAwE,QAAA,MAAM,EAAEzE;AAAhF,QApDJ,CADF;AAyDD;;;WAhQD,kCAAgC0E,SAAhC,EAA2CC,SAA3C,EAAsD;AACpD,UAAQ1D,EAAR,GAAgDyD,SAAhD,CAAQzD,EAAR;AAAA,UAAYjB,MAAZ,GAAgD0E,SAAhD,CAAY1E,MAAZ;AAAA,UAAoB4E,WAApB,GAAgDF,SAAhD,CAAoBE,WAApB;AAAA,UAAiCC,UAAjC,GAAgDH,SAAhD,CAAiCG,UAAjC,CADoD,CAEpD;;AACA,UACEF,SAAS,CAACC,WAAV,KAA0BA,WAA1B,IACAD,SAAS,CAACE,UAAV,KAAyBA,UADzB,IAEAF,SAAS,CAAC1D,EAAV,KAAiByD,SAAS,CAACzD,EAF3B,IAGA6D,IAAI,CAACC,SAAL,CAAeJ,SAAS,CAAC3E,MAAzB,MAAqC8E,IAAI,CAACC,SAAL,CAAe/E,MAAf,CAJvC,EAKE;AACA,YAAMC,KAAK,GAAGD,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,iBAAOA,CAAC,CAACC,CAAT;AAAA,SAAX,CAAd;AACA,YAAMC,KAAK,GAAGL,MAAM,CAACE,GAAP,CAAW,UAACC,CAAD;AAAA,iBAAOA,CAAC,CAACG,CAAT;AAAA,SAAX,CAAd;AAEA,YAAMF,CAAC,GAAGG,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQN,KAAR,EAAd;AACA,YAAMK,CAAC,GAAGC,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQF,KAAR,EAAd;AAEA,eAAO;AACLY,UAAAA,EAAE,EAAFA,EADK;AAELb,UAAAA,CAAC,EAADA,CAFK;AAGLE,UAAAA,CAAC,EAADA,CAHK;AAILN,UAAAA,MAAM,EAANA,MAJK;AAKL4E,UAAAA,WAAW,EAAXA,WALK;AAMLC,UAAAA,UAAU,EAAVA;AANK,SAAP;AAQD;;AAED,aAAO,IAAP;AACD;;;EA3BwBG,kBAAMC,S;;AAoQjC,IAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBf,IAAAA,IAAI,EAAE;AACJlC,MAAAA,MAAM,EAAE,SADJ;AAEJkD,MAAAA,OAAO,EAAE;AAFL,KADc;AAKpBZ,IAAAA,MAAM,EAAE;AACNY,MAAAA,OAAO,EAAE;AADH,KALY;AAQpBnB,IAAAA,KAAK,EAAE;AACLoB,MAAAA,OAAO,EAAE;AADJ;AARa,GAAP;AAAA,CAAf;;AAaArF,YAAY,CAACsF,SAAb,GAAyB;AACvBnC,EAAAA,OAAO,EAAEoC,sBAAUC,MAAV,CAAiBC,UADH;AAEvBrC,EAAAA,OAAO,EAAEmC,sBAAUG,IAFI;AAGvBhE,EAAAA,SAAS,EAAE6D,sBAAUG,IAAV,CAAeD,UAHH;AAIvBvE,EAAAA,EAAE,EAAEqE,sBAAUI,MAAV,CAAiBF,UAJE;AAKvBZ,EAAAA,WAAW,EAAEU,sBAAUK,MALA;AAMvBd,EAAAA,UAAU,EAAES,sBAAUK,MANC;AAOvBvC,EAAAA,YAAY,EAAEkC,sBAAUI,MAAV,CAAiBF,UAPR;AAQvBlC,EAAAA,oBAAoB,EAAEgC,sBAAUI,MART;AASvBnC,EAAAA,iBAAiB,EAAE+B,sBAAUI,MATN;AAUvBhE,EAAAA,OAAO,EAAE4D,sBAAUM,IAAV,CAAeJ,UAVD;AAWvB7D,EAAAA,eAAe,EAAE2D,sBAAUM,IAAV,CAAeJ,UAXT;AAYvB7C,EAAAA,aAAa,EAAE2C,sBAAUM,IAAV,CAAeJ,UAZP;AAavBrD,EAAAA,SAAS,EAAEmD,sBAAUM,IAAV,CAAeJ,UAbH;AAcvBnC,EAAAA,YAAY,EAAEiC,sBAAUI,MAAV,CAAiBF,UAdR;AAevBxF,EAAAA,MAAM,EAAEsF,sBAAUO,OAAV,CACNP,sBAAUQ,KAAV,CAAgB;AACd1F,IAAAA,CAAC,EAAEkF,sBAAUK,MADC;AAEdrF,IAAAA,CAAC,EAAEgF,sBAAUK;AAFC,GAAhB,CADM,EAKNH,UApBqB;AAqBvBhC,EAAAA,WAAW,EAAE8B,sBAAUK;AArBA,CAAzB;AAwBA5F,YAAY,CAACgG,YAAb,GAA4B;AAC1B5C,EAAAA,OAAO,EAAE;AADiB,CAA5B;;eAIe,uBAAW+B,MAAX,EAAmBnF,YAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Group, Line, Circle } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles/index';\nimport { Rect } from 'react-konva/lib/ReactKonvaCore';\nimport DeleteWidget from './DeleteWidget';\n\nconst HOVERED_COLOR = '#00BFFF';\n\nclass PolComponent extends React.Component {\n static getDerivedStateFromProps(nextProps, prevState) {\n const { id, points, imageHeight, imageWidth } = nextProps;\n // we execute this code only if image dimensions changed or an hotspot was added/deleted\n if (\n prevState.imageHeight !== imageHeight ||\n prevState.imageWidth !== imageWidth ||\n prevState.id !== nextProps.id ||\n JSON.stringify(prevState.points) !== JSON.stringify(points)\n ) {\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const x = Math.min(...xList);\n const y = Math.max(...yList);\n\n return {\n id,\n x,\n y,\n points,\n imageHeight,\n imageWidth,\n };\n }\n\n return null;\n }\n\n getOffset = (points) => {\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n return {\n x: Math.min(...xList),\n y: Math.max(...yList),\n };\n };\n\n serialize = (points) => {\n const { x: xOffset, y: yOffset } = this.getOffset(points);\n\n return points.reduce((acc, point) => [...acc, point.x - xOffset, point.y - yOffset], []);\n };\n\n getInitialState = (points) => {\n if (points.length) {\n const { x, y } = this.getOffset(points);\n\n return {\n x,\n y,\n points,\n };\n }\n\n return {\n id: '',\n x: 0,\n y: 0,\n points: [],\n };\n };\n\n state = {\n hovered: false,\n isDragging: false,\n ...this.getInitialState(this.props.points),\n };\n\n handleClick = (e) => {\n const { points } = this.props;\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const width = Math.max(...xList) - Math.min(...xList);\n const height = Math.max(...yList) - Math.min(...yList);\n\n const { isDrawing, onClick, id } = this.props;\n\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n\n if (isDrawing && id === 'newPolygon') {\n this.props.addPolygonPoint(e);\n return;\n }\n\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n this.setState({ hovered: true });\n document.body.style.cursor = 'pointer';\n };\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e, updateModel = false) => {\n const { onDragEnd, id } = this.props;\n const points = e.target.points() || this.serialize(this.state.points);\n\n const newPoints = points.reduce((acc, currentPointCoordinate, index) => {\n if (index % 2 === 0 && index + 1 < points.length) {\n return [\n ...acc,\n {\n x: currentPointCoordinate + e.target.x(),\n y: points[index + 1] + e.target.y(),\n },\n ];\n }\n\n return acc;\n }, []);\n\n this.setState({\n points: newPoints,\n ...this.getOffset(newPoints),\n isDragging: updateModel ? false : this.state.isDragging,\n });\n\n if (updateModel) {\n onDragEnd(id, { points: newPoints });\n }\n };\n\n handleOnDragVertex = (e, changedIndex, updateModel) => {\n const { onDragEnd, id } = this.props;\n const { points } = this.state;\n\n const newPoints = points.map((point, index) =>\n index === changedIndex ? { x: e.target.x(), y: e.target.y() } : point,\n );\n\n this.setState({\n points: newPoints,\n ...this.getOffset(newPoints),\n isDragging: updateModel ? false : this.state.isDragging,\n });\n\n if (updateModel) {\n onDragEnd(id, { points: newPoints });\n }\n };\n\n onDragStart = () => {\n this.setState({ isDragging: true });\n };\n\n handleDelete = (id) => {\n const { onDeleteShape } = this.props;\n onDeleteShape(id);\n };\n\n // serialize(points) {\n // return points.reduce((acc, point) => [...acc, point.x, point.y], []);\n // }\n\n getBoundingBox(points) {\n const xValues = points.map((point) => point.x);\n const yValues = points.map((point) => point.y);\n const minX = Math.min(...xValues);\n const maxX = Math.max(...xValues);\n const minY = Math.min(...yValues);\n const maxY = Math.max(...yValues);\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY,\n };\n }\n\n render() {\n const {\n classes,\n correct,\n id,\n hotspotColor,\n outlineColor,\n selectedHotspotColor,\n hoverOutlineColor,\n strokeWidth = 5,\n } = this.props;\n\n const { points, x, y, hovered } = this.state;\n const isInProgress = id === 'newPolygon';\n const showPoints = hovered || id === 'newPolygon';\n\n const calculatedStrokeWidth = correct ? strokeWidth : hovered ? 1 : 0;\n const calculatedStroke = correct ? outlineColor : hovered ? HOVERED_COLOR : '';\n const boundingBox = this.getBoundingBox(points);\n const calculatedFill = correct && selectedHotspotColor ? selectedHotspotColor : hotspotColor;\n\n return (\n <Group classes={classes.group} onMouseLeave={this.handleMouseLeave} onMouseEnter={this.handleMouseEnter}>\n {hoverOutlineColor && hovered && (\n <Rect\n x={boundingBox.x}\n y={boundingBox.y}\n width={boundingBox.width}\n height={boundingBox.height}\n stroke={hoverOutlineColor}\n strokeWidth={2}\n listening={false}\n />\n )}\n <Line\n classes={classes.base}\n points={this.serialize(points)}\n closed={!isInProgress}\n fill={isInProgress ? 'transparent' : calculatedFill}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={isInProgress ? outlineColor : calculatedStroke}\n strokeWidth={isInProgress ? 1 : calculatedStrokeWidth}\n onDragStart={this.onDragStart}\n onDragMove={this.handleOnDragEnd}\n onDragEnd={(e) => this.handleOnDragEnd(e, true)}\n x={x}\n y={y}\n />\n\n {showPoints &&\n points.map((point, index) => (\n <Circle\n key={index}\n className={classes.circle}\n x={point.x}\n y={point.y}\n radius={5}\n fill={index === 0 && id === 'newPolygon' ? 'blue' : 'white'}\n stroke={HOVERED_COLOR}\n strokeWidth={1}\n onClick={this.handleClick}\n onDragStart={this.onDragStart}\n onDragMove={(e) => {\n this.handleOnDragVertex(e, index);\n }}\n onDragEnd={(e) => {\n this.handleOnDragVertex(e, index, true);\n }}\n draggable\n />\n ))}\n {!this.state.isDragging && this.state.hovered && (\n <DeleteWidget x={x} y={y} id={id} handleWidgetClick={this.handleDelete} points={points} />\n )}\n </Group>\n );\n }\n}\n\nconst styles = () => ({\n base: {\n cursor: 'pointer',\n opacity: 0.5,\n },\n circle: {\n opacity: 4,\n },\n group: {\n padding: '12px',\n },\n});\n\nPolComponent.propTypes = {\n classes: PropTypes.object.isRequired,\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n imageHeight: PropTypes.number,\n imageWidth: PropTypes.number,\n hotspotColor: PropTypes.string.isRequired,\n selectedHotspotColor: PropTypes.string,\n hoverOutlineColor: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n addPolygonPoint: PropTypes.func.isRequired,\n onDeleteShape: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n points: PropTypes.arrayOf(\n PropTypes.shape({\n x: PropTypes.number,\n y: PropTypes.number,\n }),\n ).isRequired,\n strokeWidth: PropTypes.number,\n};\n\nPolComponent.defaultProps = {\n correct: false,\n};\n\nexport default withStyles(styles)(PolComponent);\n"],"file":"hotspot-polygon.js"}
|
|
1
|
+
{"version":3,"file":"hotspot-polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactKonva","_ReactKonvaCore","_DeleteWidget","HOVERED_COLOR","PolComponent","React","Component","constructor","args","_defineProperty2","default","points","xList","map","p","x","yList","y","Math","min","max","xOffset","yOffset","getOffset","reduce","acc","point","length","id","hovered","isDragging","getInitialState","props","e","width","height","isDrawing","onClick","addPolygonPoint","cancelBubble","setState","document","body","style","cursor","updateModel","onDragEnd","target","serialize","state","newPoints","currentPointCoordinate","index","changedIndex","onDeleteShape","getDerivedStateFromProps","nextProps","prevState","imageHeight","imageWidth","JSON","stringify","getBoundingBox","xValues","yValues","minX","maxX","minY","maxY","render","correct","hotspotColor","outlineColor","selectedHotspotColor","hoverOutlineColor","strokeWidth","isInProgress","showPoints","calculatedStrokeWidth","calculatedStroke","boundingBox","calculatedFill","createElement","Group","onMouseLeave","handleMouseLeave","onMouseEnter","handleMouseEnter","Rect","stroke","listening","Line","closed","fill","handleClick","onTap","draggable","onDragStart","onDragMove","handleOnDragEnd","opacity","Circle","key","radius","handleOnDragVertex","handleWidgetClick","handleDelete","propTypes","PropTypes","bool","isRequired","string","number","func","arrayOf","shape","defaultProps","_default","exports"],"sources":["../src/hotspot-polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Group, Line, Circle } from 'react-konva';\nimport { Rect } from 'react-konva/lib/ReactKonvaCore';\nimport DeleteWidget from './DeleteWidget';\n\nconst HOVERED_COLOR = '#00BFFF';\n\nclass PolComponent extends React.Component {\n static getDerivedStateFromProps(nextProps, prevState) {\n const { id, points, imageHeight, imageWidth } = nextProps;\n // we execute this code only if image dimensions changed or an hotspot was added/deleted\n if (\n prevState.imageHeight !== imageHeight ||\n prevState.imageWidth !== imageWidth ||\n prevState.id !== nextProps.id ||\n JSON.stringify(prevState.points) !== JSON.stringify(points)\n ) {\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const x = Math.min(...xList);\n const y = Math.max(...yList);\n\n return {\n id,\n x,\n y,\n points,\n imageHeight,\n imageWidth,\n };\n }\n\n return null;\n }\n\n getOffset = (points) => {\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n return {\n x: Math.min(...xList),\n y: Math.max(...yList),\n };\n };\n\n serialize = (points) => {\n const { x: xOffset, y: yOffset } = this.getOffset(points);\n\n return points.reduce((acc, point) => [...acc, point.x - xOffset, point.y - yOffset], []);\n };\n\n getInitialState = (points) => {\n if (points.length) {\n const { x, y } = this.getOffset(points);\n\n return {\n x,\n y,\n points,\n };\n }\n\n return {\n id: '',\n x: 0,\n y: 0,\n points: [],\n };\n };\n\n state = {\n hovered: false,\n isDragging: false,\n ...this.getInitialState(this.props.points),\n };\n\n handleClick = (e) => {\n const { points } = this.props;\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const width = Math.max(...xList) - Math.min(...xList);\n const height = Math.max(...yList) - Math.min(...yList);\n\n const { isDrawing, onClick, id } = this.props;\n\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n\n if (isDrawing && id === 'newPolygon') {\n this.props.addPolygonPoint(e);\n return;\n }\n\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n this.setState({ hovered: true });\n document.body.style.cursor = 'pointer';\n };\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e, updateModel = false) => {\n const { onDragEnd, id } = this.props;\n const points = e.target.points() || this.serialize(this.state.points);\n\n const newPoints = points.reduce((acc, currentPointCoordinate, index) => {\n if (index % 2 === 0 && index + 1 < points.length) {\n return [\n ...acc,\n {\n x: currentPointCoordinate + e.target.x(),\n y: points[index + 1] + e.target.y(),\n },\n ];\n }\n\n return acc;\n }, []);\n\n this.setState({\n points: newPoints,\n ...this.getOffset(newPoints),\n isDragging: updateModel ? false : this.state.isDragging,\n });\n\n if (updateModel) {\n onDragEnd(id, { points: newPoints });\n }\n };\n\n handleOnDragVertex = (e, changedIndex, updateModel) => {\n const { onDragEnd, id } = this.props;\n const { points } = this.state;\n\n const newPoints = points.map((point, index) =>\n index === changedIndex ? { x: e.target.x(), y: e.target.y() } : point,\n );\n\n this.setState({\n points: newPoints,\n ...this.getOffset(newPoints),\n isDragging: updateModel ? false : this.state.isDragging,\n });\n\n if (updateModel) {\n onDragEnd(id, { points: newPoints });\n }\n };\n\n onDragStart = () => {\n this.setState({ isDragging: true });\n };\n\n handleDelete = (id) => {\n const { onDeleteShape } = this.props;\n onDeleteShape(id);\n };\n\n // serialize(points) {\n // return points.reduce((acc, point) => [...acc, point.x, point.y], []);\n // }\n\n getBoundingBox(points) {\n const xValues = points.map((point) => point.x);\n const yValues = points.map((point) => point.y);\n const minX = Math.min(...xValues);\n const maxX = Math.max(...xValues);\n const minY = Math.min(...yValues);\n const maxY = Math.max(...yValues);\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY,\n };\n }\n\n render() {\n const {\n correct,\n id,\n hotspotColor,\n outlineColor,\n selectedHotspotColor,\n hoverOutlineColor,\n strokeWidth = 5,\n } = this.props;\n\n const { points, x, y, hovered } = this.state;\n const isInProgress = id === 'newPolygon';\n const showPoints = hovered || id === 'newPolygon';\n\n const calculatedStrokeWidth = correct ? strokeWidth : hovered ? 1 : 0;\n const calculatedStroke = correct ? outlineColor : hovered ? HOVERED_COLOR : '';\n const boundingBox = this.getBoundingBox(points);\n const calculatedFill = correct && selectedHotspotColor ? selectedHotspotColor : hotspotColor;\n\n return (\n <Group onMouseLeave={this.handleMouseLeave} onMouseEnter={this.handleMouseEnter}>\n {hoverOutlineColor && hovered && (\n <Rect\n x={boundingBox.x}\n y={boundingBox.y}\n width={boundingBox.width}\n height={boundingBox.height}\n stroke={hoverOutlineColor}\n strokeWidth={2}\n listening={false}\n />\n )}\n <Line\n points={this.serialize(points)}\n closed={!isInProgress}\n fill={isInProgress ? 'transparent' : calculatedFill}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={isInProgress ? outlineColor : calculatedStroke}\n strokeWidth={isInProgress ? 1 : calculatedStrokeWidth}\n onDragStart={this.onDragStart}\n onDragMove={this.handleOnDragEnd}\n onDragEnd={(e) => this.handleOnDragEnd(e, true)}\n x={x}\n y={y}\n opacity={0.5}\n />\n\n {showPoints &&\n points.map((point, index) => (\n <Circle\n key={index}\n x={point.x}\n y={point.y}\n radius={5}\n fill={index === 0 && id === 'newPolygon' ? 'blue' : 'white'}\n stroke={HOVERED_COLOR}\n strokeWidth={1}\n onClick={this.handleClick}\n onDragStart={this.onDragStart}\n onDragMove={(e) => {\n this.handleOnDragVertex(e, index);\n }}\n onDragEnd={(e) => {\n this.handleOnDragVertex(e, index, true);\n }}\n draggable\n opacity={4}\n />\n ))}\n {!this.state.isDragging && this.state.hovered && (\n <DeleteWidget x={x} y={y} id={id} handleWidgetClick={this.handleDelete} points={points} />\n )}\n </Group>\n );\n }\n}\n\nPolComponent.propTypes = {\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n imageHeight: PropTypes.number,\n imageWidth: PropTypes.number,\n hotspotColor: PropTypes.string.isRequired,\n selectedHotspotColor: PropTypes.string,\n hoverOutlineColor: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n addPolygonPoint: PropTypes.func.isRequired,\n onDeleteShape: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n points: PropTypes.arrayOf(\n PropTypes.shape({\n x: PropTypes.number,\n y: PropTypes.number,\n }),\n ).isRequired,\n strokeWidth: PropTypes.number,\n};\n\nPolComponent.defaultProps = {\n correct: false,\n};\n\nexport default PolComponent;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,116 +1,78 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
7
|
+
exports.default = void 0;
|
|
22
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
9
|
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
11
|
var _reactKonva = require("react-konva");
|
|
29
|
-
|
|
30
|
-
var _index = require("@material-ui/core/styles/index");
|
|
31
|
-
|
|
32
12
|
var _DeleteWidget = _interopRequireDefault(require("./DeleteWidget"));
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
var _this;
|
|
45
|
-
|
|
46
|
-
(0, _classCallCheck2["default"])(this, RectComponent);
|
|
47
|
-
_this = _super.call(this, props);
|
|
48
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClick", function (e) {
|
|
49
|
-
var _this$props = _this.props,
|
|
50
|
-
width = _this$props.width,
|
|
51
|
-
height = _this$props.height,
|
|
52
|
-
isDrawing = _this$props.isDrawing,
|
|
53
|
-
onClick = _this$props.onClick,
|
|
54
|
-
id = _this$props.id;
|
|
55
|
-
|
|
13
|
+
class RectComponent extends _react.default.Component {
|
|
14
|
+
constructor(props) {
|
|
15
|
+
super(props);
|
|
16
|
+
(0, _defineProperty2.default)(this, "handleClick", e => {
|
|
17
|
+
const {
|
|
18
|
+
width,
|
|
19
|
+
height,
|
|
20
|
+
isDrawing,
|
|
21
|
+
onClick,
|
|
22
|
+
id
|
|
23
|
+
} = this.props;
|
|
56
24
|
if (width < 0 && height < 0 && isDrawing) {
|
|
57
25
|
return;
|
|
58
26
|
}
|
|
59
|
-
|
|
60
27
|
e.cancelBubble = true;
|
|
61
28
|
onClick(id);
|
|
62
29
|
});
|
|
63
|
-
(0, _defineProperty2
|
|
30
|
+
(0, _defineProperty2.default)(this, "handleMouseEnter", () => {
|
|
64
31
|
document.body.style.cursor = 'pointer';
|
|
65
|
-
|
|
66
|
-
_this.setState({
|
|
32
|
+
this.setState({
|
|
67
33
|
hovered: true
|
|
68
34
|
});
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
_this.trRef.current.getLayer().batchDraw();
|
|
35
|
+
this.trRef.current.setNode(this.shapeRef.current);
|
|
36
|
+
this.trRef.current.getLayer().batchDraw();
|
|
73
37
|
});
|
|
74
|
-
(0, _defineProperty2
|
|
75
|
-
|
|
38
|
+
(0, _defineProperty2.default)(this, "handleMouseLeave", () => {
|
|
39
|
+
this.setState({
|
|
76
40
|
hovered: false
|
|
77
41
|
});
|
|
78
|
-
|
|
79
42
|
document.body.style.cursor = 'default';
|
|
80
43
|
});
|
|
81
|
-
(0, _defineProperty2
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
44
|
+
(0, _defineProperty2.default)(this, "handleOnDragEnd", e => {
|
|
45
|
+
const {
|
|
46
|
+
onDragEnd,
|
|
47
|
+
id
|
|
48
|
+
} = this.props;
|
|
49
|
+
this.setState({
|
|
87
50
|
isDragging: false
|
|
88
51
|
});
|
|
89
|
-
|
|
90
52
|
onDragEnd(id, {
|
|
91
53
|
x: e.target.x(),
|
|
92
54
|
y: e.target.y()
|
|
93
55
|
});
|
|
94
56
|
});
|
|
95
|
-
(0, _defineProperty2
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
57
|
+
(0, _defineProperty2.default)(this, "onResizeEnd", () => {
|
|
58
|
+
const {
|
|
59
|
+
onDragEnd,
|
|
60
|
+
id
|
|
61
|
+
} = this.props;
|
|
62
|
+
// transformer is changing scale of the node
|
|
99
63
|
// and NOT its width or height
|
|
100
64
|
// but in the store we have only width and height
|
|
101
65
|
// to match the data better we will reset scale on transform end
|
|
66
|
+
const node = this.shapeRef.current;
|
|
67
|
+
const scaleX = node.scaleX();
|
|
68
|
+
const scaleY = node.scaleY();
|
|
102
69
|
|
|
103
|
-
|
|
104
|
-
var scaleX = node.scaleX();
|
|
105
|
-
var scaleY = node.scaleY(); // we will reset it back
|
|
106
|
-
|
|
70
|
+
// we will reset it back
|
|
107
71
|
node.scaleX(1);
|
|
108
72
|
node.scaleY(1);
|
|
109
|
-
|
|
110
|
-
_this.setState({
|
|
73
|
+
this.setState({
|
|
111
74
|
isDragging: false
|
|
112
75
|
});
|
|
113
|
-
|
|
114
76
|
onDragEnd(id, {
|
|
115
77
|
x: node.x(),
|
|
116
78
|
y: node.y(),
|
|
@@ -119,135 +81,109 @@ var RectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
119
81
|
height: Math.max(node.height() * scaleY)
|
|
120
82
|
});
|
|
121
83
|
});
|
|
122
|
-
(0, _defineProperty2
|
|
123
|
-
|
|
84
|
+
(0, _defineProperty2.default)(this, "handleDelete", id => {
|
|
85
|
+
const {
|
|
86
|
+
onDeleteShape
|
|
87
|
+
} = this.props;
|
|
124
88
|
onDeleteShape(id);
|
|
125
89
|
});
|
|
126
|
-
|
|
90
|
+
this.state = {
|
|
127
91
|
hovered: false,
|
|
128
92
|
isDragging: false
|
|
129
93
|
};
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
return _this;
|
|
94
|
+
this.shapeRef = /*#__PURE__*/_react.default.createRef();
|
|
95
|
+
this.trRef = /*#__PURE__*/_react.default.createRef();
|
|
133
96
|
}
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
}), this.state.hovered && /*#__PURE__*/_react["default"].createElement(_reactKonva.Transformer, {
|
|
200
|
-
ref: this.trRef,
|
|
201
|
-
rotateEnabled: false,
|
|
202
|
-
boundBoxFunc: function boundBoxFunc(oldBox, newBox) {
|
|
203
|
-
// limit resize
|
|
204
|
-
if (newBox.width < 10 || newBox.height < 10) {
|
|
205
|
-
return oldBox;
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
return newBox;
|
|
97
|
+
render() {
|
|
98
|
+
const {
|
|
99
|
+
correct,
|
|
100
|
+
height,
|
|
101
|
+
hotspotColor,
|
|
102
|
+
id,
|
|
103
|
+
outlineColor,
|
|
104
|
+
width,
|
|
105
|
+
x,
|
|
106
|
+
y,
|
|
107
|
+
strokeWidth = 5,
|
|
108
|
+
selectedHotspotColor,
|
|
109
|
+
hoverOutlineColor
|
|
110
|
+
} = this.props;
|
|
111
|
+
const {
|
|
112
|
+
hovered
|
|
113
|
+
} = this.state;
|
|
114
|
+
return /*#__PURE__*/_react.default.createElement(_reactKonva.Group, {
|
|
115
|
+
onMouseLeave: this.handleMouseLeave,
|
|
116
|
+
onMouseEnter: this.handleMouseEnter,
|
|
117
|
+
padding: 12
|
|
118
|
+
}, hoverOutlineColor && hovered && /*#__PURE__*/_react.default.createElement(_reactKonva.Rect, {
|
|
119
|
+
x: x,
|
|
120
|
+
y: y,
|
|
121
|
+
width: width,
|
|
122
|
+
height: height,
|
|
123
|
+
stroke: hoverOutlineColor,
|
|
124
|
+
strokeWidth: 2,
|
|
125
|
+
listening: false
|
|
126
|
+
}), /*#__PURE__*/_react.default.createElement(_reactKonva.Rect, {
|
|
127
|
+
ref: this.shapeRef,
|
|
128
|
+
width: width,
|
|
129
|
+
height: height,
|
|
130
|
+
fill: correct && selectedHotspotColor ? selectedHotspotColor : hotspotColor,
|
|
131
|
+
onClick: this.handleClick,
|
|
132
|
+
onTap: this.handleClick,
|
|
133
|
+
draggable: true,
|
|
134
|
+
stroke: hovered ? 'transparent' : outlineColor,
|
|
135
|
+
strokeWidth: correct && !hovered ? strokeWidth : 0,
|
|
136
|
+
onDragStart: () => this.setState({
|
|
137
|
+
isDragging: true
|
|
138
|
+
}),
|
|
139
|
+
onDragEnd: this.handleOnDragEnd,
|
|
140
|
+
onTransformStart: () => this.setState({
|
|
141
|
+
isDragging: true
|
|
142
|
+
}),
|
|
143
|
+
onTransformEnd: this.onResizeEnd,
|
|
144
|
+
x: x,
|
|
145
|
+
y: y,
|
|
146
|
+
opacity: 0.5,
|
|
147
|
+
cursor: "pointer"
|
|
148
|
+
}), !this.state.isDragging && this.state.hovered && /*#__PURE__*/_react.default.createElement(_DeleteWidget.default, {
|
|
149
|
+
id: id,
|
|
150
|
+
height: height,
|
|
151
|
+
width: width,
|
|
152
|
+
x: x,
|
|
153
|
+
y: y,
|
|
154
|
+
handleWidgetClick: this.handleDelete
|
|
155
|
+
}), this.state.hovered && /*#__PURE__*/_react.default.createElement(_reactKonva.Transformer, {
|
|
156
|
+
ref: this.trRef,
|
|
157
|
+
rotateEnabled: false,
|
|
158
|
+
boundBoxFunc: (oldBox, newBox) => {
|
|
159
|
+
// limit resize
|
|
160
|
+
if (newBox.width < 10 || newBox.height < 10) {
|
|
161
|
+
return oldBox;
|
|
209
162
|
}
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
var styles = function styles() {
|
|
217
|
-
return {
|
|
218
|
-
base: {
|
|
219
|
-
cursor: 'pointer',
|
|
220
|
-
opacity: 0.5
|
|
221
|
-
},
|
|
222
|
-
group: {
|
|
223
|
-
padding: '12px'
|
|
224
|
-
}
|
|
225
|
-
};
|
|
226
|
-
};
|
|
227
|
-
|
|
163
|
+
return newBox;
|
|
164
|
+
}
|
|
165
|
+
}));
|
|
166
|
+
}
|
|
167
|
+
}
|
|
228
168
|
RectComponent.propTypes = {
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
strokeWidth: _propTypes["default"].number
|
|
169
|
+
correct: _propTypes.default.bool,
|
|
170
|
+
isDrawing: _propTypes.default.bool.isRequired,
|
|
171
|
+
id: _propTypes.default.string.isRequired,
|
|
172
|
+
height: _propTypes.default.number.isRequired,
|
|
173
|
+
hotspotColor: _propTypes.default.string.isRequired,
|
|
174
|
+
selectedHotspotColor: _propTypes.default.string,
|
|
175
|
+
hoverOutlineColor: _propTypes.default.string,
|
|
176
|
+
onClick: _propTypes.default.func.isRequired,
|
|
177
|
+
onDeleteShape: _propTypes.default.func.isRequired,
|
|
178
|
+
onDragEnd: _propTypes.default.func.isRequired,
|
|
179
|
+
outlineColor: _propTypes.default.string.isRequired,
|
|
180
|
+
width: _propTypes.default.number.isRequired,
|
|
181
|
+
x: _propTypes.default.number.isRequired,
|
|
182
|
+
y: _propTypes.default.number.isRequired,
|
|
183
|
+
strokeWidth: _propTypes.default.number
|
|
245
184
|
};
|
|
246
185
|
RectComponent.defaultProps = {
|
|
247
186
|
correct: false
|
|
248
187
|
};
|
|
249
|
-
|
|
250
|
-
var _default = (0, _index.withStyles)(styles)(RectComponent);
|
|
251
|
-
|
|
252
|
-
exports["default"] = _default;
|
|
188
|
+
var _default = exports.default = RectComponent;
|
|
253
189
|
//# sourceMappingURL=hotspot-rectangle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/hotspot-rectangle.jsx"],"names":["RectComponent","props","e","width","height","isDrawing","onClick","id","cancelBubble","document","body","style","cursor","setState","hovered","trRef","current","setNode","shapeRef","getLayer","batchDraw","onDragEnd","isDragging","x","target","y","node","scaleX","scaleY","Math","max","onDeleteShape","state","React","createRef","classes","correct","hotspotColor","outlineColor","strokeWidth","selectedHotspotColor","hoverOutlineColor","group","handleMouseLeave","handleMouseEnter","base","handleClick","handleOnDragEnd","onResizeEnd","handleDelete","oldBox","newBox","Component","styles","opacity","padding","propTypes","PropTypes","object","isRequired","bool","string","number","func","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;IAEMA,a;;;;;AACJ,yBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,oGAUL,UAACC,CAAD,EAAO;AACnB,wBAAkD,MAAKD,KAAvD;AAAA,UAAQE,KAAR,eAAQA,KAAR;AAAA,UAAeC,MAAf,eAAeA,MAAf;AAAA,UAAuBC,SAAvB,eAAuBA,SAAvB;AAAA,UAAkCC,OAAlC,eAAkCA,OAAlC;AAAA,UAA2CC,EAA3C,eAA2CA,EAA3C;;AACA,UAAIJ,KAAK,GAAG,CAAR,IAAaC,MAAM,GAAG,CAAtB,IAA2BC,SAA/B,EAA0C;AACxC;AACD;;AACDH,MAAAA,CAAC,CAACM,YAAF,GAAiB,IAAjB;AACAF,MAAAA,OAAO,CAACC,EAAD,CAAP;AACD,KAjBkB;AAAA,yGAmBA,YAAM;AACvBE,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;;AACA,YAAKC,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;;AACA,YAAKC,KAAL,CAAWC,OAAX,CAAmBC,OAAnB,CAA2B,MAAKC,QAAL,CAAcF,OAAzC;;AACA,YAAKD,KAAL,CAAWC,OAAX,CAAmBG,QAAnB,GAA8BC,SAA9B;AACD,KAxBkB;AAAA,yGA0BA,YAAM;AACvB,YAAKP,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;;AACAL,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;AACD,KA7BkB;AAAA,wGA+BD,UAACV,CAAD,EAAO;AACvB,yBAA0B,MAAKD,KAA/B;AAAA,UAAQoB,SAAR,gBAAQA,SAAR;AAAA,UAAmBd,EAAnB,gBAAmBA,EAAnB;;AACA,YAAKM,QAAL,CAAc;AAAES,QAAAA,UAAU,EAAE;AAAd,OAAd;;AACAD,MAAAA,SAAS,CAACd,EAAD,EAAK;AACZgB,QAAAA,CAAC,EAAErB,CAAC,CAACsB,MAAF,CAASD,CAAT,EADS;AAEZE,QAAAA,CAAC,EAAEvB,CAAC,CAACsB,MAAF,CAASC,CAAT;AAFS,OAAL,CAAT;AAID,KAtCkB;AAAA,oGAwCL,YAAM;AAClB,yBAA0B,MAAKxB,KAA/B;AAAA,UAAQoB,SAAR,gBAAQA,SAAR;AAAA,UAAmBd,EAAnB,gBAAmBA,EAAnB,CADkB,CAElB;AACA;AACA;AACA;;AACA,UAAMmB,IAAI,GAAG,MAAKR,QAAL,CAAcF,OAA3B;AACA,UAAMW,MAAM,GAAGD,IAAI,CAACC,MAAL,EAAf;AACA,UAAMC,MAAM,GAAGF,IAAI,CAACE,MAAL,EAAf,CARkB,CAUlB;;AACAF,MAAAA,IAAI,CAACC,MAAL,CAAY,CAAZ;AACAD,MAAAA,IAAI,CAACE,MAAL,CAAY,CAAZ;;AACA,YAAKf,QAAL,CAAc;AAAES,QAAAA,UAAU,EAAE;AAAd,OAAd;;AACAD,MAAAA,SAAS,CAACd,EAAD,EAAK;AACZgB,QAAAA,CAAC,EAAEG,IAAI,CAACH,CAAL,EADS;AAEZE,QAAAA,CAAC,EAAEC,IAAI,CAACD,CAAL,EAFS;AAGZ;AACAtB,QAAAA,KAAK,EAAE0B,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYJ,IAAI,CAACvB,KAAL,KAAewB,MAA3B,CAJK;AAKZvB,QAAAA,MAAM,EAAEyB,IAAI,CAACC,GAAL,CAASJ,IAAI,CAACtB,MAAL,KAAgBwB,MAAzB;AALI,OAAL,CAAT;AAOD,KA7DkB;AAAA,qGA+DJ,UAACrB,EAAD,EAAQ;AACrB,UAAQwB,aAAR,GAA0B,MAAK9B,KAA/B,CAAQ8B,aAAR;AACAA,MAAAA,aAAa,CAACxB,EAAD,CAAb;AACD,KAlEkB;AAEjB,UAAKyB,KAAL,GAAa;AACXlB,MAAAA,OAAO,EAAE,KADE;AAEXQ,MAAAA,UAAU,EAAE;AAFD,KAAb;AAIA,UAAKJ,QAAL,gBAAgBe,kBAAMC,SAAN,EAAhB;AACA,UAAKnB,KAAL,gBAAakB,kBAAMC,SAAN,EAAb;AAPiB;AAQlB;;;;WA4DD,kBAAS;AAAA;;AACP,yBAaI,KAAKjC,KAbT;AAAA,UACEkC,OADF,gBACEA,OADF;AAAA,UAEEC,OAFF,gBAEEA,OAFF;AAAA,UAGEhC,MAHF,gBAGEA,MAHF;AAAA,UAIEiC,YAJF,gBAIEA,YAJF;AAAA,UAKE9B,EALF,gBAKEA,EALF;AAAA,UAME+B,YANF,gBAMEA,YANF;AAAA,UAOEnC,KAPF,gBAOEA,KAPF;AAAA,UAQEoB,CARF,gBAQEA,CARF;AAAA,UASEE,CATF,gBASEA,CATF;AAAA,+CAUEc,WAVF;AAAA,UAUEA,WAVF,sCAUgB,CAVhB;AAAA,UAWEC,oBAXF,gBAWEA,oBAXF;AAAA,UAYEC,iBAZF,gBAYEA,iBAZF;AAeA,UAAQ3B,OAAR,GAAoB,KAAKkB,KAAzB,CAAQlB,OAAR;AAEA,0BACE,gCAAC,iBAAD;AAAO,QAAA,OAAO,EAAEqB,OAAO,CAACO,KAAxB;AAA+B,QAAA,YAAY,EAAE,KAAKC,gBAAlD;AAAoE,QAAA,YAAY,EAAE,KAAKC;AAAvF,SACGH,iBAAiB,IAAI3B,OAArB,iBACC,gCAAC,gBAAD;AACE,QAAA,CAAC,EAAES,CADL;AAEE,QAAA,CAAC,EAAEE,CAFL;AAGE,QAAA,KAAK,EAAEtB,KAHT;AAIE,QAAA,MAAM,EAAEC,MAJV;AAKE,QAAA,MAAM,EAAEqC,iBALV;AAME,QAAA,WAAW,EAAE,CANf;AAOE,QAAA,SAAS,EAAE;AAPb,QAFJ,eAaE,gCAAC,gBAAD;AACE,QAAA,OAAO,EAAEN,OAAO,CAACU,IADnB;AAEE,QAAA,GAAG,EAAE,KAAK3B,QAFZ;AAGE,QAAA,KAAK,EAAEf,KAHT;AAIE,QAAA,MAAM,EAAEC,MAJV;AAKE,QAAA,IAAI,EAAEgC,OAAO,IAAII,oBAAX,GAAkCA,oBAAlC,GAAyDH,YALjE;AAME,QAAA,OAAO,EAAE,KAAKS,WANhB;AAOE,QAAA,KAAK,EAAE,KAAKA,WAPd;AAQE,QAAA,SAAS,MARX;AASE,QAAA,MAAM,EAAEhC,OAAO,GAAG,aAAH,GAAmBwB,YATpC;AAUE,QAAA,WAAW,EAAEF,OAAO,IAAI,CAACtB,OAAZ,GAAsByB,WAAtB,GAAoC,CAVnD;AAWE,QAAA,WAAW,EAAE;AAAA,iBAAM,MAAI,CAAC1B,QAAL,CAAc;AAAES,YAAAA,UAAU,EAAE;AAAd,WAAd,CAAN;AAAA,SAXf;AAYE,QAAA,SAAS,EAAE,KAAKyB,eAZlB;AAaE,QAAA,gBAAgB,EAAE;AAAA,iBAAM,MAAI,CAAClC,QAAL,CAAc;AAAES,YAAAA,UAAU,EAAE;AAAd,WAAd,CAAN;AAAA,SAbpB;AAcE,QAAA,cAAc,EAAE,KAAK0B,WAdvB;AAeE,QAAA,CAAC,EAAEzB,CAfL;AAgBE,QAAA,CAAC,EAAEE;AAhBL,QAbF,EA+BG,CAAC,KAAKO,KAAL,CAAWV,UAAZ,IAA0B,KAAKU,KAAL,CAAWlB,OAArC,iBACC,gCAAC,wBAAD;AAAc,QAAA,EAAE,EAAEP,EAAlB;AAAsB,QAAA,MAAM,EAAEH,MAA9B;AAAsC,QAAA,KAAK,EAAED,KAA7C;AAAoD,QAAA,CAAC,EAAEoB,CAAvD;AAA0D,QAAA,CAAC,EAAEE,CAA7D;AAAgE,QAAA,iBAAiB,EAAE,KAAKwB;AAAxF,QAhCJ,EAkCG,KAAKjB,KAAL,CAAWlB,OAAX,iBACC,gCAAC,uBAAD;AACE,QAAA,GAAG,EAAE,KAAKC,KADZ;AAEE,QAAA,aAAa,EAAE,KAFjB;AAGE,QAAA,YAAY,EAAE,sBAACmC,MAAD,EAASC,MAAT,EAAoB;AAChC;AACA,cAAIA,MAAM,CAAChD,KAAP,GAAe,EAAf,IAAqBgD,MAAM,CAAC/C,MAAP,GAAgB,EAAzC,EAA6C;AAC3C,mBAAO8C,MAAP;AACD;;AACD,iBAAOC,MAAP;AACD;AATH,QAnCJ,CADF;AAkDD;;;EAzIyBlB,kBAAMmB,S;;AA4IlC,IAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBR,IAAAA,IAAI,EAAE;AACJjC,MAAAA,MAAM,EAAE,SADJ;AAEJ0C,MAAAA,OAAO,EAAE;AAFL,KADc;AAMpBZ,IAAAA,KAAK,EAAE;AACLa,MAAAA,OAAO,EAAE;AADJ;AANa,GAAP;AAAA,CAAf;;AAWAvD,aAAa,CAACwD,SAAd,GAA0B;AACxBrB,EAAAA,OAAO,EAAEsB,sBAAUC,MAAV,CAAiBC,UADF;AAExBvB,EAAAA,OAAO,EAAEqB,sBAAUG,IAFK;AAGxBvD,EAAAA,SAAS,EAAEoD,sBAAUG,IAAV,CAAeD,UAHF;AAIxBpD,EAAAA,EAAE,EAAEkD,sBAAUI,MAAV,CAAiBF,UAJG;AAKxBvD,EAAAA,MAAM,EAAEqD,sBAAUK,MAAV,CAAiBH,UALD;AAMxBtB,EAAAA,YAAY,EAAEoB,sBAAUI,MAAV,CAAiBF,UANP;AAOxBnB,EAAAA,oBAAoB,EAAEiB,sBAAUI,MAPR;AAQxBpB,EAAAA,iBAAiB,EAAEgB,sBAAUI,MARL;AASxBvD,EAAAA,OAAO,EAAEmD,sBAAUM,IAAV,CAAeJ,UATA;AAUxB5B,EAAAA,aAAa,EAAE0B,sBAAUM,IAAV,CAAeJ,UAVN;AAWxBtC,EAAAA,SAAS,EAAEoC,sBAAUM,IAAV,CAAeJ,UAXF;AAYxBrB,EAAAA,YAAY,EAAEmB,sBAAUI,MAAV,CAAiBF,UAZP;AAaxBxD,EAAAA,KAAK,EAAEsD,sBAAUK,MAAV,CAAiBH,UAbA;AAcxBpC,EAAAA,CAAC,EAAEkC,sBAAUK,MAAV,CAAiBH,UAdI;AAexBlC,EAAAA,CAAC,EAAEgC,sBAAUK,MAAV,CAAiBH,UAfI;AAgBxBpB,EAAAA,WAAW,EAAEkB,sBAAUK;AAhBC,CAA1B;AAmBA9D,aAAa,CAACgE,YAAd,GAA6B;AAC3B5B,EAAAA,OAAO,EAAE;AADkB,CAA7B;;eAIe,uBAAWiB,MAAX,EAAmBrD,aAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Rect, Group, Transformer } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles/index';\nimport DeleteWidget from './DeleteWidget';\n\nclass RectComponent extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n hovered: false,\n isDragging: false,\n };\n this.shapeRef = React.createRef();\n this.trRef = React.createRef();\n }\n\n handleClick = (e) => {\n const { width, height, isDrawing, onClick, id } = this.props;\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n document.body.style.cursor = 'pointer';\n this.setState({ hovered: true });\n this.trRef.current.setNode(this.shapeRef.current);\n this.trRef.current.getLayer().batchDraw();\n };\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e) => {\n const { onDragEnd, id } = this.props;\n this.setState({ isDragging: false });\n onDragEnd(id, {\n x: e.target.x(),\n y: e.target.y(),\n });\n };\n\n onResizeEnd = () => {\n const { onDragEnd, id } = this.props;\n // transformer is changing scale of the node\n // and NOT its width or height\n // but in the store we have only width and height\n // to match the data better we will reset scale on transform end\n const node = this.shapeRef.current;\n const scaleX = node.scaleX();\n const scaleY = node.scaleY();\n\n // we will reset it back\n node.scaleX(1);\n node.scaleY(1);\n this.setState({ isDragging: false });\n onDragEnd(id, {\n x: node.x(),\n y: node.y(),\n // set minimal value\n width: Math.max(5, node.width() * scaleX),\n height: Math.max(node.height() * scaleY),\n });\n };\n\n handleDelete = (id) => {\n const { onDeleteShape } = this.props;\n onDeleteShape(id);\n };\n\n render() {\n const {\n classes,\n correct,\n height,\n hotspotColor,\n id,\n outlineColor,\n width,\n x,\n y,\n strokeWidth = 5,\n selectedHotspotColor,\n hoverOutlineColor,\n } = this.props;\n\n const { hovered } = this.state;\n\n return (\n <Group classes={classes.group} onMouseLeave={this.handleMouseLeave} onMouseEnter={this.handleMouseEnter}>\n {hoverOutlineColor && hovered && (\n <Rect\n x={x}\n y={y}\n width={width}\n height={height}\n stroke={hoverOutlineColor}\n strokeWidth={2}\n listening={false}\n />\n )}\n\n <Rect\n classes={classes.base}\n ref={this.shapeRef}\n width={width}\n height={height}\n fill={correct && selectedHotspotColor ? selectedHotspotColor : hotspotColor}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={hovered ? 'transparent' : outlineColor}\n strokeWidth={correct && !hovered ? strokeWidth : 0}\n onDragStart={() => this.setState({ isDragging: true })}\n onDragEnd={this.handleOnDragEnd}\n onTransformStart={() => this.setState({ isDragging: true })}\n onTransformEnd={this.onResizeEnd}\n x={x}\n y={y}\n />\n {!this.state.isDragging && this.state.hovered && (\n <DeleteWidget id={id} height={height} width={width} x={x} y={y} handleWidgetClick={this.handleDelete} />\n )}\n {this.state.hovered && (\n <Transformer\n ref={this.trRef}\n rotateEnabled={false}\n boundBoxFunc={(oldBox, newBox) => {\n // limit resize\n if (newBox.width < 10 || newBox.height < 10) {\n return oldBox;\n }\n return newBox;\n }}\n />\n )}\n </Group>\n );\n }\n}\n\nconst styles = () => ({\n base: {\n cursor: 'pointer',\n opacity: 0.5,\n },\n\n group: {\n padding: '12px',\n },\n});\n\nRectComponent.propTypes = {\n classes: PropTypes.object.isRequired,\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n height: PropTypes.number.isRequired,\n hotspotColor: PropTypes.string.isRequired,\n selectedHotspotColor: PropTypes.string,\n hoverOutlineColor: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n onDeleteShape: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n width: PropTypes.number.isRequired,\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n strokeWidth: PropTypes.number,\n};\n\nRectComponent.defaultProps = {\n correct: false,\n};\n\nexport default withStyles(styles)(RectComponent);\n"],"file":"hotspot-rectangle.js"}
|
|
1
|
+
{"version":3,"file":"hotspot-rectangle.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactKonva","_DeleteWidget","RectComponent","React","Component","constructor","props","_defineProperty2","default","e","width","height","isDrawing","onClick","id","cancelBubble","document","body","style","cursor","setState","hovered","trRef","current","setNode","shapeRef","getLayer","batchDraw","onDragEnd","isDragging","x","target","y","node","scaleX","scaleY","Math","max","onDeleteShape","state","createRef","render","correct","hotspotColor","outlineColor","strokeWidth","selectedHotspotColor","hoverOutlineColor","createElement","Group","onMouseLeave","handleMouseLeave","onMouseEnter","handleMouseEnter","padding","Rect","stroke","listening","ref","fill","handleClick","onTap","draggable","onDragStart","handleOnDragEnd","onTransformStart","onTransformEnd","onResizeEnd","opacity","handleWidgetClick","handleDelete","Transformer","rotateEnabled","boundBoxFunc","oldBox","newBox","propTypes","PropTypes","bool","isRequired","string","number","func","defaultProps","_default","exports"],"sources":["../src/hotspot-rectangle.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Rect, Group, Transformer } from 'react-konva';\nimport DeleteWidget from './DeleteWidget';\n\nclass RectComponent extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n hovered: false,\n isDragging: false,\n };\n this.shapeRef = React.createRef();\n this.trRef = React.createRef();\n }\n\n handleClick = (e) => {\n const { width, height, isDrawing, onClick, id } = this.props;\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n document.body.style.cursor = 'pointer';\n this.setState({ hovered: true });\n this.trRef.current.setNode(this.shapeRef.current);\n this.trRef.current.getLayer().batchDraw();\n };\n\n handleMouseLeave = () => {\n this.setState({ hovered: false });\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e) => {\n const { onDragEnd, id } = this.props;\n this.setState({ isDragging: false });\n onDragEnd(id, {\n x: e.target.x(),\n y: e.target.y(),\n });\n };\n\n onResizeEnd = () => {\n const { onDragEnd, id } = this.props;\n // transformer is changing scale of the node\n // and NOT its width or height\n // but in the store we have only width and height\n // to match the data better we will reset scale on transform end\n const node = this.shapeRef.current;\n const scaleX = node.scaleX();\n const scaleY = node.scaleY();\n\n // we will reset it back\n node.scaleX(1);\n node.scaleY(1);\n this.setState({ isDragging: false });\n onDragEnd(id, {\n x: node.x(),\n y: node.y(),\n // set minimal value\n width: Math.max(5, node.width() * scaleX),\n height: Math.max(node.height() * scaleY),\n });\n };\n\n handleDelete = (id) => {\n const { onDeleteShape } = this.props;\n onDeleteShape(id);\n };\n\n render() {\n const {\n correct,\n height,\n hotspotColor,\n id,\n outlineColor,\n width,\n x,\n y,\n strokeWidth = 5,\n selectedHotspotColor,\n hoverOutlineColor,\n } = this.props;\n\n const { hovered } = this.state;\n\n return (\n <Group onMouseLeave={this.handleMouseLeave} onMouseEnter={this.handleMouseEnter} padding={12}>\n {hoverOutlineColor && hovered && (\n <Rect\n x={x}\n y={y}\n width={width}\n height={height}\n stroke={hoverOutlineColor}\n strokeWidth={2}\n listening={false}\n />\n )}\n\n <Rect\n ref={this.shapeRef}\n width={width}\n height={height}\n fill={correct && selectedHotspotColor ? selectedHotspotColor : hotspotColor}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={hovered ? 'transparent' : outlineColor}\n strokeWidth={correct && !hovered ? strokeWidth : 0}\n onDragStart={() => this.setState({ isDragging: true })}\n onDragEnd={this.handleOnDragEnd}\n onTransformStart={() => this.setState({ isDragging: true })}\n onTransformEnd={this.onResizeEnd}\n x={x}\n y={y}\n opacity={0.5}\n cursor=\"pointer\"\n />\n {!this.state.isDragging && this.state.hovered && (\n <DeleteWidget id={id} height={height} width={width} x={x} y={y} handleWidgetClick={this.handleDelete} />\n )}\n {this.state.hovered && (\n <Transformer\n ref={this.trRef}\n rotateEnabled={false}\n boundBoxFunc={(oldBox, newBox) => {\n // limit resize\n if (newBox.width < 10 || newBox.height < 10) {\n return oldBox;\n }\n return newBox;\n }}\n />\n )}\n </Group>\n );\n }\n}\n\nRectComponent.propTypes = {\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n height: PropTypes.number.isRequired,\n hotspotColor: PropTypes.string.isRequired,\n selectedHotspotColor: PropTypes.string,\n hoverOutlineColor: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n onDeleteShape: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n width: PropTypes.number.isRequired,\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n strokeWidth: PropTypes.number,\n};\n\nRectComponent.defaultProps = {\n correct: false,\n};\n\nexport default RectComponent;\n"],"mappings":"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","ignoreList":[]}
|