@pie-element/hotspot 11.1.1 → 11.1.2-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.
Files changed (354) hide show
  1. package/configure.js +2 -0
  2. package/controller.js +1 -0
  3. package/dist/author/DeleteWidget.d.ts +38 -0
  4. package/dist/author/DeleteWidget.js +46 -0
  5. package/dist/author/button.d.ts +31 -0
  6. package/dist/author/button.js +27 -0
  7. package/dist/author/buttons/circle.d.ts +18 -0
  8. package/dist/author/buttons/circle.js +25 -0
  9. package/dist/author/buttons/polygon.d.ts +18 -0
  10. package/dist/author/buttons/polygon.js +36 -0
  11. package/dist/author/buttons/rectangle.d.ts +18 -0
  12. package/dist/author/buttons/rectangle.js +36 -0
  13. package/dist/author/defaults.d.ts +157 -0
  14. package/dist/author/defaults.js +119 -0
  15. package/dist/author/hotspot-circle.d.ts +21 -0
  16. package/dist/author/hotspot-circle.js +124 -0
  17. package/dist/author/hotspot-container.d.ts +29 -0
  18. package/dist/author/hotspot-container.js +210 -0
  19. package/dist/author/hotspot-drawable.d.ts +31 -0
  20. package/dist/author/hotspot-drawable.js +312 -0
  21. package/dist/author/hotspot-palette.d.ts +14 -0
  22. package/dist/author/hotspot-palette.js +72 -0
  23. package/dist/author/hotspot-polygon.d.ts +38 -0
  24. package/dist/author/hotspot-polygon.js +200 -0
  25. package/dist/author/hotspot-rectangle.d.ts +20 -0
  26. package/dist/author/hotspot-rectangle.js +119 -0
  27. package/dist/author/icons.d.ts +9 -0
  28. package/dist/author/icons.js +4 -0
  29. package/dist/author/image-konva.d.ts +19 -0
  30. package/dist/author/image-konva.js +49 -0
  31. package/dist/author/index.d.ts +52 -0
  32. package/dist/author/index.js +143 -0
  33. package/dist/author/root.d.ts +15 -0
  34. package/dist/author/root.js +215 -0
  35. package/dist/author/shapes/circle.d.ts +18 -0
  36. package/dist/author/shapes/circle.js +47 -0
  37. package/dist/author/shapes/index.d.ts +12 -0
  38. package/dist/author/shapes/polygon.d.ts +19 -0
  39. package/dist/author/shapes/polygon.js +51 -0
  40. package/dist/author/shapes/rectagle.d.ts +18 -0
  41. package/dist/author/shapes/rectagle.js +57 -0
  42. package/dist/author/shapes/utils.d.ts +19 -0
  43. package/dist/author/shapes/utils.js +16 -0
  44. package/dist/author/upload-control.d.ts +29 -0
  45. package/dist/author/upload-control.js +28 -0
  46. package/dist/author/utils.d.ts +24 -0
  47. package/dist/author/utils.js +83 -0
  48. package/dist/browser/ReactKonva-Z9-1H-UZ.js +19329 -0
  49. package/dist/browser/ReactKonva-Z9-1H-UZ.js.map +1 -0
  50. package/dist/browser/author/index.js +42297 -0
  51. package/dist/browser/author/index.js.map +1 -0
  52. package/dist/browser/browser-CfnAFove.js +210 -0
  53. package/dist/browser/browser-CfnAFove.js.map +1 -0
  54. package/dist/browser/controller/index.js +198 -0
  55. package/dist/browser/controller/index.js.map +1 -0
  56. package/dist/browser/delivery/index.js +2460 -0
  57. package/dist/browser/delivery/index.js.map +1 -0
  58. package/dist/browser/hotspot.css +2 -0
  59. package/dist/browser/isEqual-D3CTSc6W.js +601 -0
  60. package/dist/browser/isEqual-D3CTSc6W.js.map +1 -0
  61. package/dist/controller/defaults.d.ts +35 -0
  62. package/dist/controller/defaults.js +29 -0
  63. package/dist/controller/index.d.ts +22 -0
  64. package/dist/controller/index.js +154 -0
  65. package/dist/controller/utils.d.ts +10 -0
  66. package/dist/controller/utils.js +13 -0
  67. package/dist/delivery/hotspot/circle.d.ts +19 -0
  68. package/dist/delivery/hotspot/circle.js +100 -0
  69. package/dist/delivery/hotspot/container.d.ts +16 -0
  70. package/dist/delivery/hotspot/container.js +150 -0
  71. package/dist/delivery/hotspot/icons.d.ts +10 -0
  72. package/dist/delivery/hotspot/icons.js +4 -0
  73. package/dist/delivery/hotspot/image-konva-tooltip.d.ts +19 -0
  74. package/dist/delivery/hotspot/image-konva-tooltip.js +66 -0
  75. package/dist/delivery/hotspot/index.d.ts +17 -0
  76. package/dist/delivery/hotspot/index.js +114 -0
  77. package/dist/delivery/hotspot/polygon.d.ts +21 -0
  78. package/dist/delivery/hotspot/polygon.js +108 -0
  79. package/dist/delivery/hotspot/rectangle.d.ts +19 -0
  80. package/dist/delivery/hotspot/rectangle.js +104 -0
  81. package/dist/delivery/index.d.ts +20 -0
  82. package/dist/delivery/index.js +107 -0
  83. package/dist/delivery/session-updater.d.ts +10 -0
  84. package/dist/delivery/session-updater.js +14 -0
  85. package/dist/index.d.ts +1 -0
  86. package/dist/index.iife.d.ts +8 -0
  87. package/dist/index.iife.js +169 -0
  88. package/dist/index.js +2 -0
  89. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_DataView.js +6 -0
  90. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Hash.js +16 -0
  91. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_ListCache.js +16 -0
  92. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Map.js +6 -0
  93. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_MapCache.js +16 -0
  94. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Promise.js +6 -0
  95. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Set.js +6 -0
  96. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_SetCache.js +11 -0
  97. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Stack.js +14 -0
  98. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Symbol.js +5 -0
  99. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Uint8Array.js +5 -0
  100. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_WeakMap.js +6 -0
  101. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayEach.js +7 -0
  102. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayFilter.js +10 -0
  103. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayLikeKeys.js +15 -0
  104. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayPush.js +7 -0
  105. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arraySome.js +7 -0
  106. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignValue.js +10 -0
  107. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assocIndexOf.js +8 -0
  108. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssign.js +8 -0
  109. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignIn.js +8 -0
  110. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignValue.js +12 -0
  111. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseClone.js +57 -0
  112. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseCreate.js +14 -0
  113. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetAllKeys.js +9 -0
  114. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetTag.js +10 -0
  115. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsArguments.js +9 -0
  116. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsEqual.js +8 -0
  117. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsEqualDeep.js +30 -0
  118. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsMap.js +9 -0
  119. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNative.js +11 -0
  120. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsSet.js +9 -0
  121. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsTypedArray.js +11 -0
  122. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeys.js +12 -0
  123. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeysIn.js +13 -0
  124. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTimes.js +7 -0
  125. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUnary.js +8 -0
  126. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cacheHas.js +6 -0
  127. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneArrayBuffer.js +8 -0
  128. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneBuffer.js +10 -0
  129. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneDataView.js +8 -0
  130. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneRegExp.js +8 -0
  131. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneSymbol.js +8 -0
  132. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneTypedArray.js +8 -0
  133. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyArray.js +8 -0
  134. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyObject.js +14 -0
  135. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbols.js +8 -0
  136. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbolsIn.js +8 -0
  137. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_coreJsData.js +5 -0
  138. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_defineProperty.js +10 -0
  139. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalArrays.js +35 -0
  140. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalByTag.js +35 -0
  141. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalObjects.js +32 -0
  142. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_freeGlobal.js +4 -0
  143. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeys.js +9 -0
  144. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeysIn.js +9 -0
  145. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMapData.js +8 -0
  146. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getNative.js +9 -0
  147. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getPrototype.js +5 -0
  148. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getRawTag.js +14 -0
  149. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbols.js +10 -0
  150. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbolsIn.js +11 -0
  151. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getTag.js +23 -0
  152. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getValue.js +6 -0
  153. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashClear.js +7 -0
  154. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashDelete.js +7 -0
  155. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashGet.js +13 -0
  156. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashHas.js +9 -0
  157. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashSet.js +9 -0
  158. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneArray.js +8 -0
  159. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneByTag.js +33 -0
  160. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneObject.js +9 -0
  161. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIndex.js +8 -0
  162. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKeyable.js +7 -0
  163. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isMasked.js +11 -0
  164. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isPrototype.js +8 -0
  165. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheClear.js +6 -0
  166. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheDelete.js +9 -0
  167. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheGet.js +8 -0
  168. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheHas.js +7 -0
  169. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheSet.js +8 -0
  170. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheClear.js +13 -0
  171. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheDelete.js +8 -0
  172. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheGet.js +7 -0
  173. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheHas.js +7 -0
  174. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheSet.js +8 -0
  175. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapToArray.js +9 -0
  176. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeCreate.js +5 -0
  177. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeys.js +5 -0
  178. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeysIn.js +8 -0
  179. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nodeUtil.js +9 -0
  180. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_objectToString.js +7 -0
  181. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overArg.js +8 -0
  182. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_root.js +5 -0
  183. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setCacheAdd.js +7 -0
  184. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setCacheHas.js +6 -0
  185. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setToArray.js +9 -0
  186. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackClear.js +7 -0
  187. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackDelete.js +7 -0
  188. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackGet.js +6 -0
  189. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackHas.js +6 -0
  190. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackSet.js +16 -0
  191. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toSource.js +15 -0
  192. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/cloneDeep.js +8 -0
  193. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/eq.js +6 -0
  194. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArguments.js +10 -0
  195. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArray.js +4 -0
  196. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLike.js +8 -0
  197. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isBuffer.js +6 -0
  198. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEmpty.js +21 -0
  199. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEqual.js +7 -0
  200. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isFunction.js +11 -0
  201. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isLength.js +7 -0
  202. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isMap.js +7 -0
  203. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObject.js +7 -0
  204. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObjectLike.js +6 -0
  205. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSet.js +7 -0
  206. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isTypedArray.js +7 -0
  207. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keys.js +9 -0
  208. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keysIn.js +9 -0
  209. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubArray.js +6 -0
  210. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubFalse.js +6 -0
  211. package/package.json +78 -16
  212. package/CHANGELOG.json +0 -997
  213. package/CHANGELOG.md +0 -2214
  214. package/LICENSE.md +0 -5
  215. package/README.md +0 -1
  216. package/configure/CHANGELOG.json +0 -682
  217. package/configure/CHANGELOG.md +0 -1951
  218. package/configure/lib/DeleteWidget.js +0 -64
  219. package/configure/lib/DeleteWidget.js.map +0 -1
  220. package/configure/lib/button.js +0 -42
  221. package/configure/lib/button.js.map +0 -1
  222. package/configure/lib/buttons/circle.js +0 -33
  223. package/configure/lib/buttons/circle.js.map +0 -1
  224. package/configure/lib/buttons/polygon.js +0 -39
  225. package/configure/lib/buttons/polygon.js.map +0 -1
  226. package/configure/lib/buttons/rectangle.js +0 -39
  227. package/configure/lib/buttons/rectangle.js.map +0 -1
  228. package/configure/lib/defaults.js +0 -155
  229. package/configure/lib/defaults.js.map +0 -1
  230. package/configure/lib/hotspot-circle.js +0 -192
  231. package/configure/lib/hotspot-circle.js.map +0 -1
  232. package/configure/lib/hotspot-container.js +0 -320
  233. package/configure/lib/hotspot-container.js.map +0 -1
  234. package/configure/lib/hotspot-drawable.js +0 -519
  235. package/configure/lib/hotspot-drawable.js.map +0 -1
  236. package/configure/lib/hotspot-palette.js +0 -107
  237. package/configure/lib/hotspot-palette.js.map +0 -1
  238. package/configure/lib/hotspot-polygon.js +0 -293
  239. package/configure/lib/hotspot-polygon.js.map +0 -1
  240. package/configure/lib/hotspot-rectangle.js +0 -190
  241. package/configure/lib/hotspot-rectangle.js.map +0 -1
  242. package/configure/lib/icons.js +0 -7
  243. package/configure/lib/icons.js.map +0 -1
  244. package/configure/lib/image-konva.js +0 -66
  245. package/configure/lib/image-konva.js.map +0 -1
  246. package/configure/lib/index.js +0 -194
  247. package/configure/lib/index.js.map +0 -1
  248. package/configure/lib/root.js +0 -330
  249. package/configure/lib/root.js.map +0 -1
  250. package/configure/lib/shapes/circle.js +0 -84
  251. package/configure/lib/shapes/circle.js.map +0 -1
  252. package/configure/lib/shapes/index.js +0 -50
  253. package/configure/lib/shapes/index.js.map +0 -1
  254. package/configure/lib/shapes/polygon.js +0 -82
  255. package/configure/lib/shapes/polygon.js.map +0 -1
  256. package/configure/lib/shapes/rectagle.js +0 -84
  257. package/configure/lib/shapes/rectagle.js.map +0 -1
  258. package/configure/lib/shapes/utils.js +0 -21
  259. package/configure/lib/shapes/utils.js.map +0 -1
  260. package/configure/lib/upload-control.js +0 -41
  261. package/configure/lib/upload-control.js.map +0 -1
  262. package/configure/lib/utils.js +0 -185
  263. package/configure/lib/utils.js.map +0 -1
  264. package/configure/package.json +0 -26
  265. package/configure/src/DeleteWidget.jsx +0 -51
  266. package/configure/src/__tests__/DeleteWidget.test.jsx +0 -366
  267. package/configure/src/__tests__/button.test.jsx +0 -198
  268. package/configure/src/__tests__/hotspot-circle.test.jsx +0 -259
  269. package/configure/src/__tests__/hotspot-container.test.js +0 -366
  270. package/configure/src/__tests__/hotspot-drawable.test.js +0 -271
  271. package/configure/src/__tests__/hotspot-palette.test.jsx +0 -71
  272. package/configure/src/__tests__/image-konva.test.jsx +0 -226
  273. package/configure/src/__tests__/index.test.js +0 -329
  274. package/configure/src/__tests__/root.test.js +0 -400
  275. package/configure/src/__tests__/utils.test.js +0 -241
  276. package/configure/src/button.jsx +0 -35
  277. package/configure/src/buttons/circle.jsx +0 -18
  278. package/configure/src/buttons/polygon.jsx +0 -29
  279. package/configure/src/buttons/rectangle.jsx +0 -29
  280. package/configure/src/defaults.js +0 -109
  281. package/configure/src/hotspot-circle.jsx +0 -183
  282. package/configure/src/hotspot-container.jsx +0 -330
  283. package/configure/src/hotspot-drawable.jsx +0 -527
  284. package/configure/src/hotspot-palette.jsx +0 -90
  285. package/configure/src/hotspot-polygon.jsx +0 -294
  286. package/configure/src/hotspot-rectangle.jsx +0 -169
  287. package/configure/src/icons.js +0 -5
  288. package/configure/src/image-konva.jsx +0 -63
  289. package/configure/src/index.js +0 -208
  290. package/configure/src/root.jsx +0 -346
  291. package/configure/src/shapes/circle.js +0 -81
  292. package/configure/src/shapes/index.js +0 -4
  293. package/configure/src/shapes/polygon.js +0 -81
  294. package/configure/src/shapes/rectagle.js +0 -82
  295. package/configure/src/shapes/utils.js +0 -16
  296. package/configure/src/upload-control.jsx +0 -33
  297. package/configure/src/utils.js +0 -210
  298. package/controller/CHANGELOG.json +0 -362
  299. package/controller/CHANGELOG.md +0 -1304
  300. package/controller/lib/defaults.js +0 -33
  301. package/controller/lib/defaults.js.map +0 -1
  302. package/controller/lib/index.js +0 -341
  303. package/controller/lib/index.js.map +0 -1
  304. package/controller/lib/utils.js +0 -32
  305. package/controller/lib/utils.js.map +0 -1
  306. package/controller/package.json +0 -18
  307. package/controller/src/__tests__/index.test.js +0 -419
  308. package/controller/src/__tests__/utils.test.js +0 -5
  309. package/controller/src/defaults.js +0 -19
  310. package/controller/src/index.js +0 -328
  311. package/controller/src/utils.js +0 -29
  312. package/docs/config-schema.json +0 -2023
  313. package/docs/config-schema.json.md +0 -1495
  314. package/docs/demo/config.js +0 -8
  315. package/docs/demo/generate.js +0 -118
  316. package/docs/demo/index.html +0 -1
  317. package/docs/demo/session.js +0 -11
  318. package/docs/pie-schema.json +0 -1204
  319. package/docs/pie-schema.json.md +0 -851
  320. package/lib/hotspot/circle.js +0 -156
  321. package/lib/hotspot/circle.js.map +0 -1
  322. package/lib/hotspot/container.js +0 -206
  323. package/lib/hotspot/container.js.map +0 -1
  324. package/lib/hotspot/icons.js +0 -8
  325. package/lib/hotspot/icons.js.map +0 -1
  326. package/lib/hotspot/image-konva-tooltip.js +0 -86
  327. package/lib/hotspot/image-konva-tooltip.js.map +0 -1
  328. package/lib/hotspot/index.js +0 -163
  329. package/lib/hotspot/index.js.map +0 -1
  330. package/lib/hotspot/polygon.js +0 -203
  331. package/lib/hotspot/polygon.js.map +0 -1
  332. package/lib/hotspot/rectangle.js +0 -175
  333. package/lib/hotspot/rectangle.js.map +0 -1
  334. package/lib/index.js +0 -213
  335. package/lib/index.js.map +0 -1
  336. package/lib/session-updater.js +0 -42
  337. package/lib/session-updater.js.map +0 -1
  338. package/src/__tests__/container.test.jsx +0 -58
  339. package/src/__tests__/index.test.js +0 -123
  340. package/src/__tests__/session-updater.test.jsx +0 -69
  341. package/src/hotspot/__tests__/circle.test.jsx +0 -464
  342. package/src/hotspot/__tests__/container.test.jsx +0 -546
  343. package/src/hotspot/__tests__/image-konva-tooltip.test.jsx +0 -510
  344. package/src/hotspot/__tests__/polygon.test.jsx +0 -502
  345. package/src/hotspot/__tests__/rectangle.test.jsx +0 -418
  346. package/src/hotspot/circle.jsx +0 -152
  347. package/src/hotspot/container.jsx +0 -217
  348. package/src/hotspot/icons.js +0 -7
  349. package/src/hotspot/image-konva-tooltip.jsx +0 -76
  350. package/src/hotspot/index.jsx +0 -165
  351. package/src/hotspot/polygon.jsx +0 -195
  352. package/src/hotspot/rectangle.jsx +0 -171
  353. package/src/index.js +0 -226
  354. package/src/session-updater.js +0 -29
@@ -1,400 +0,0 @@
1
- import { render } from '@testing-library/react';
2
- import React from 'react';
3
- import { Root } from '../root';
4
- import defaultValues from '../defaults';
5
-
6
- jest.mock('react-konva', () => {
7
- const React = require('react');
8
- return {
9
- Stage: ({ children, ...props }) => React.createElement('div', { 'data-testid': 'stage', ...props }, children),
10
- Layer: ({ children, ...props }) => React.createElement('div', { 'data-testid': 'layer', ...props }, children),
11
- Rect: (props) => React.createElement('div', { 'data-testid': 'rect', ...props }),
12
- Circle: (props) => React.createElement('div', { 'data-testid': 'circle', ...props }),
13
- Line: (props) => React.createElement('div', { 'data-testid': 'line', ...props }),
14
- Group: ({ children, ...props }) => React.createElement('div', { 'data-testid': 'group', ...props }, children),
15
- Image: (props) => React.createElement('div', { 'data-testid': 'image', ...props }),
16
- };
17
- });
18
-
19
- jest.mock('@pie-lib/config-ui', () => ({
20
- InputContainer: (props) => <div {...props}>{props.children}</div>,
21
- NumberTextField: (props) => <input type="number" {...props} />,
22
- choiceUtils: {
23
- firstAvailableIndex: jest.fn(),
24
- },
25
- settings: {
26
- Panel: (props) => <div {...props} />,
27
- toggle: jest.fn(),
28
- radio: jest.fn(),
29
- dropdown: jest.fn(),
30
- },
31
- layout: {
32
- ConfigLayout: ({ children }) => <div>{children}</div>,
33
- },
34
- }));
35
-
36
- const model = () => ({
37
- prompt: 'This is the question prompt',
38
- imageUrl: 'https://cdn.fluence.net/image/0240eb1455ce4c4bb6180232347b6aef_W',
39
- shapes: {
40
- rectangles: [
41
- {
42
- id: '0',
43
- height: 140,
44
- width: 130,
45
- x: 1,
46
- y: 1,
47
- correct: true,
48
- },
49
- {
50
- id: '1',
51
- height: 140,
52
- width: 130,
53
- x: 140,
54
- y: 1,
55
- },
56
- {
57
- id: '2',
58
- height: 140,
59
- width: 130,
60
- x: 280,
61
- y: 1,
62
- },
63
- ],
64
- polygons: [
65
- {
66
- points: [
67
- { x: 1, y: 148 },
68
- { x: 1, y: 288 },
69
- { y: 288, x: 129 },
70
- { y: 148, x: 129 },
71
- ],
72
- correct: true,
73
- id: '3',
74
- },
75
- {
76
- id: '4',
77
- points: [
78
- { y: 151, x: 141 },
79
- { y: 289, x: 141 },
80
- { y: 289, x: 269 },
81
- { x: 269, y: 151 },
82
- ],
83
- correct: false,
84
- },
85
- {
86
- points: [
87
- { x: 279, y: 149.99999999999997 },
88
- { x: 279, y: 289 },
89
- { x: 407, y: 289 },
90
- {
91
- x: 407,
92
- y: 149.99999999999997,
93
- },
94
- ],
95
- correct: false,
96
- id: '5',
97
- },
98
- ],
99
- circles: [
100
- {
101
- id: '6',
102
- radius: 70,
103
- x: 100,
104
- y: 100,
105
- correct: false,
106
- },
107
- ],
108
- },
109
- dimensions: { height: 300, width: 400 },
110
- hotspotColor: 'rgba(137, 183, 244, 0.65)',
111
- hotspotList: ['rgba(137, 183, 244, 0.65)', 'rgba(217, 30, 24, 0.65)', 'rgba(254, 241, 96, 0.65)'],
112
- outlineColor: 'blue',
113
- outlineList: ['blue', 'red', 'yellow'],
114
- configure: {},
115
- multipleCorrect: true,
116
- partialScoring: false,
117
- });
118
-
119
- describe('Root', () => {
120
- let initialModel = model();
121
-
122
- describe('logic', () => {
123
- let onColorChanged = jest.fn();
124
-
125
- const createInstance = (config, onUpdateImageDimension, onUpdateShapes) => {
126
- const props = {
127
- classes: {},
128
- configuration: config || defaultValues.configuration,
129
- model: {
130
- ...initialModel,
131
- dimensions: { width: 200, height: 300 },
132
- shapes: {
133
- rectangles: [{ x: 10, y: 10, height: 100, width: 100 }],
134
- polygons: [
135
- {
136
- points: [
137
- { x: 0, y: 200 },
138
- { x: 200, y: 200 },
139
- { x: 100, y: 300 },
140
- ],
141
- },
142
- ],
143
- },
144
- },
145
- onColorChanged,
146
- onUpdateImageDimension,
147
- onUpdateShapes,
148
- };
149
-
150
- return new Root(props);
151
- };
152
-
153
- describe('handleColorChange', () => {
154
- it('calls onColorChanged', () => {
155
- const instance = createInstance();
156
- instance.handleColorChange('type', 'color');
157
-
158
- expect(onColorChanged).toHaveBeenLastCalledWith('typeColor', 'color');
159
- });
160
- });
161
-
162
- describe('KEEP IMAGE ASPECT RATIO: handleOnUpdateImageDimensions: calls onUpdateImageDimension & onUpdateShapes', () => {
163
- let onUpdateImageDimension = jest.fn();
164
- let onUpdateShapes = jest.fn();
165
-
166
- it('increase width with 100%:', () => {
167
- const instance = createInstance(undefined, onUpdateImageDimension, onUpdateShapes);
168
- instance.handleOnUpdateImageDimensions(400, 'width');
169
-
170
- expect(onUpdateImageDimension).toBeCalledWith({
171
- width: 400,
172
- height: 600,
173
- });
174
- expect(onUpdateShapes).toBeCalledWith({
175
- rectangles: [{ x: 20, y: 20, height: 200, width: 200, index: 0 }],
176
- polygons: [
177
- {
178
- points: [
179
- { x: 0, y: 400 },
180
- { x: 400, y: 400 },
181
- { x: 200, y: 600 },
182
- ],
183
- index: 1,
184
- },
185
- ],
186
- circles: [],
187
- });
188
- });
189
-
190
- it('decrease width with 50%', () => {
191
- const instance = createInstance(undefined, onUpdateImageDimension, onUpdateShapes);
192
- instance.handleOnUpdateImageDimensions(100, 'width');
193
-
194
- expect(onUpdateImageDimension).toBeCalledWith({
195
- width: 100,
196
- height: 150,
197
- });
198
- expect(onUpdateShapes).toBeCalledWith({
199
- rectangles: [{ x: 5, y: 5, height: 50, width: 50, index: 0 }],
200
- polygons: [
201
- {
202
- points: [
203
- { x: 0, y: 100 },
204
- { x: 100, y: 100 },
205
- { x: 50, y: 150 },
206
- ],
207
- index: 1,
208
- },
209
- ],
210
- circles: [],
211
- });
212
- });
213
-
214
- it('increase height with 50%:', () => {
215
- const instance = createInstance(undefined, onUpdateImageDimension, onUpdateShapes);
216
- instance.handleOnUpdateImageDimensions(450, 'height');
217
-
218
- expect(onUpdateImageDimension).toBeCalledWith({
219
- width: 300,
220
- height: 450,
221
- });
222
- expect(onUpdateShapes).toBeCalledWith({
223
- rectangles: [{ x: 15, y: 15, height: 150, width: 150, index: 0 }],
224
- polygons: [
225
- {
226
- points: [
227
- { x: 0, y: 300 },
228
- { x: 300, y: 300 },
229
- { x: 150, y: 450 },
230
- ],
231
- index: 1,
232
- },
233
- ],
234
- circles: [],
235
- });
236
- });
237
-
238
- it('decrease height with 10%', () => {
239
- const instance = createInstance(undefined, onUpdateImageDimension, onUpdateShapes);
240
- instance.handleOnUpdateImageDimensions(270, 'height');
241
-
242
- expect(onUpdateImageDimension).toBeCalledWith({
243
- width: 180,
244
- height: 270,
245
- });
246
- expect(onUpdateShapes).toBeCalledWith({
247
- rectangles: [{ x: 9, y: 9, height: 90, width: 90, index: 0 }],
248
- polygons: [
249
- {
250
- points: [
251
- { x: 0, y: 180 },
252
- { x: 180, y: 180 },
253
- { x: 90, y: 270 },
254
- ],
255
- index: 1,
256
- },
257
- ],
258
- circles: [],
259
- });
260
- });
261
- });
262
-
263
- describe('DO NOT KEEP IMAGE ASPECT RATIO: handleOnUpdateImageDimensions: calls onUpdateImageDimension & onUpdateShapes', () => {
264
- let onUpdateImageDimension = jest.fn();
265
- let onUpdateShapes = jest.fn();
266
-
267
- it('increase width with 100%:', () => {
268
- const instance = createInstance(
269
- {
270
- ...defaultValues.configuration,
271
- preserveAspectRatio: {
272
- enabled: false,
273
- },
274
- },
275
- onUpdateImageDimension,
276
- onUpdateShapes,
277
- );
278
- instance.handleOnUpdateImageDimensions(400, 'width');
279
-
280
- expect(onUpdateImageDimension).toBeCalledWith({
281
- width: 400,
282
- height: 300,
283
- });
284
- expect(onUpdateShapes).toBeCalledWith({
285
- rectangles: [{ x: 20, y: 10, height: 100, width: 200, index: 0 }],
286
- polygons: [
287
- {
288
- points: [
289
- { x: 0, y: 200 },
290
- { x: 400, y: 200 },
291
- { x: 200, y: 300 },
292
- ],
293
- index: 1,
294
- },
295
- ],
296
- circles: [],
297
- });
298
- });
299
-
300
- it('decrease width with 50%', () => {
301
- const instance = createInstance(
302
- {
303
- ...defaultValues.configuration,
304
- preserveAspectRatio: {
305
- enabled: false,
306
- },
307
- },
308
- onUpdateImageDimension,
309
- onUpdateShapes,
310
- );
311
- instance.handleOnUpdateImageDimensions(100, 'width');
312
-
313
- expect(onUpdateImageDimension).toBeCalledWith({
314
- width: 100,
315
- height: 300,
316
- });
317
- expect(onUpdateShapes).toBeCalledWith({
318
- rectangles: [{ x: 5, y: 10, height: 100, width: 50, index: 0 }],
319
- polygons: [
320
- {
321
- points: [
322
- { x: 0, y: 200 },
323
- { x: 100, y: 200 },
324
- { x: 50, y: 300 },
325
- ],
326
- index: 1,
327
- },
328
- ],
329
- circles: [],
330
- });
331
- });
332
-
333
- it('increase height with 50%:', () => {
334
- const instance = createInstance(
335
- {
336
- ...defaultValues.configuration,
337
- preserveAspectRatio: {
338
- enabled: false,
339
- },
340
- },
341
- onUpdateImageDimension,
342
- onUpdateShapes,
343
- );
344
- instance.handleOnUpdateImageDimensions(450, 'height');
345
-
346
- expect(onUpdateImageDimension).toBeCalledWith({
347
- width: 200,
348
- height: 450,
349
- });
350
- expect(onUpdateShapes).toBeCalledWith({
351
- rectangles: [{ x: 10, y: 15, height: 150, width: 100, index: 0 }],
352
- polygons: [
353
- {
354
- index: 1,
355
- points: [
356
- { x: 0, y: 300 },
357
- { x: 200, y: 300 },
358
- { x: 100, y: 450 },
359
- ],
360
- },
361
- ],
362
- circles: [],
363
- });
364
- });
365
-
366
- it('decrease height with 10%', () => {
367
- const instance = createInstance(
368
- {
369
- ...defaultValues.configuration,
370
- preserveAspectRatio: {
371
- enabled: false,
372
- },
373
- },
374
- onUpdateImageDimension,
375
- onUpdateShapes,
376
- );
377
- instance.handleOnUpdateImageDimensions(270, 'height');
378
-
379
- expect(onUpdateImageDimension).toBeCalledWith({
380
- width: 200,
381
- height: 270,
382
- });
383
- expect(onUpdateShapes).toBeCalledWith({
384
- rectangles: [{ x: 10, y: 9, height: 90, width: 100, index: 0 }],
385
- polygons: [
386
- {
387
- points: [
388
- { x: 0, y: 180 },
389
- { x: 200, y: 180 },
390
- { x: 100, y: 270 },
391
- ],
392
- index: 1,
393
- },
394
- ],
395
- circles: [],
396
- });
397
- });
398
- });
399
- });
400
- });
@@ -1,241 +0,0 @@
1
- import React from 'react';
2
- import { updateImageDimensions, getUpdatedRectangle, getUpdatedPolygon, getAllShapes, groupShapes } from '../utils';
3
-
4
- const width = 200;
5
- const height = 100;
6
- const imageDimensions = { width, height };
7
-
8
- describe('updateImageDimensions', () => {
9
- it.each`
10
- initialDimensions | nextDimensions | keepAspectRatio | resizeType | expectedWidth | expectedHeight
11
- ${imageDimensions} | ${{
12
- width,
13
- height: 300,
14
- }} | ${true} | ${'height'} | ${600} | ${300}
15
- ${imageDimensions} | ${{
16
- width: 400,
17
- height,
18
- }} | ${true} | ${'width'} | ${400} | ${200}
19
- ${imageDimensions} | ${{
20
- width,
21
- height: 300,
22
- }} | ${true} | ${undefined} | ${200} | ${100}
23
- ${imageDimensions} | ${{
24
- width: 600,
25
- height,
26
- }} | ${true} | ${undefined} | ${600} | ${300}
27
- ${imageDimensions} | ${{
28
- width,
29
- height: 300,
30
- }} | ${false} | ${'height'} | ${200} | ${300}
31
- ${imageDimensions} | ${{
32
- width: 600,
33
- height,
34
- }} | ${false} | ${'width'} | ${600} | ${100}
35
- ${imageDimensions} | ${{
36
- width: 10,
37
- height: 10,
38
- }} | ${false} | ${undefined} | ${10} | ${10}
39
- `(
40
- 'initialDimensions = $initialDimensions, nextDimensions = $nextDimensions, keepAspectRatio = $keepAspectRatio, resizeType = $resizeType => width = $expectedWidth & height = $expectedHeight',
41
- async ({ initialDimensions, nextDimensions, keepAspectRatio, resizeType, expectedWidth, expectedHeight }) => {
42
- const result = updateImageDimensions(initialDimensions, nextDimensions, keepAspectRatio, resizeType);
43
-
44
- expect(result).toEqual({
45
- width: expectedWidth,
46
- height: expectedHeight,
47
- });
48
- },
49
- );
50
- });
51
-
52
- describe('getUpdatedRectangle', () => {
53
- const rectangle = (x, y, w, h) => ({ x, y, width: w, height: h });
54
- const heightUpdateLarge = { width, height: 300 };
55
- const heightUpdateSmall = { width, height: 50 };
56
- const widthUpdateLarge = { width: 300, height };
57
- const widthUpdateSmall = { width: 100, height };
58
- const bothUpdate = { width: 20, height: 50 };
59
-
60
- it.each`
61
- initialDimensions | nextDimensions | shape | expected
62
- ${imageDimensions} | ${heightUpdateLarge} | ${rectangle(10, 10, 100, 50)} | ${rectangle(10, 30, 100, 150)}
63
- ${imageDimensions} | ${heightUpdateSmall} | ${rectangle(10, 10, 100, 50)} | ${rectangle(10, 5, 100, 25)}
64
- ${imageDimensions} | ${bothUpdate} | ${rectangle(10, 10, 100, 50)} | ${rectangle(1, 5, 10, 25)}
65
- ${imageDimensions} | ${widthUpdateLarge} | ${rectangle(10, 10, 100, 50)} | ${rectangle(15, 10, 150, 50)}
66
- ${imageDimensions} | ${widthUpdateSmall} | ${rectangle(10, 10, 100, 50)} | ${rectangle(5, 10, 50, 50)}
67
- `(
68
- 'initialDimensions = $initialDimensions, nextDimensions = $nextDimensions, shape = $shape => $expected',
69
- async ({ initialDimensions, nextDimensions, shape, expected }) => {
70
- const result = getUpdatedRectangle(initialDimensions, nextDimensions, shape);
71
-
72
- expect(result).toEqual(expected);
73
- },
74
- );
75
- });
76
-
77
- describe('getUpdatedPolygon', () => {
78
- const updatedDimensions = { width: width / 2, height: height * 2 };
79
-
80
- const point = (x, y) => ({ x, y });
81
- const updatedPoint = (x, y) => ({ x: x / 2, y: y * 2 });
82
-
83
- const triangle = [point(10, 10), point(100, 10), point(100, 100)];
84
- const triangleUpdated = [updatedPoint(10, 10), updatedPoint(100, 10), updatedPoint(100, 100)];
85
-
86
- const square = [point(10, 10), point(100, 10), point(100, 100), point(10, 100)];
87
- const squareUpdated = [updatedPoint(10, 10), updatedPoint(100, 10), updatedPoint(100, 100), updatedPoint(10, 100)];
88
-
89
- const pentagon = [point(10, 10), point(20, 0), point(30, 0), point(40, 10), point(25, 20)];
90
- const pentagonUpdated = [
91
- updatedPoint(10, 10),
92
- updatedPoint(20, 0),
93
- updatedPoint(30, 0),
94
- updatedPoint(40, 10),
95
- updatedPoint(25, 20),
96
- ];
97
-
98
- const hexagon = [point(10, 10), point(20, 0), point(30, 0), point(40, 10), point(30, 20), point(20, 20)];
99
- const hexagonUpdated = [
100
- updatedPoint(10, 10),
101
- updatedPoint(20, 0),
102
- updatedPoint(30, 0),
103
- updatedPoint(40, 10),
104
- updatedPoint(30, 20),
105
- updatedPoint(20, 20),
106
- ];
107
-
108
- const polygon = (points) => ({ points });
109
-
110
- it.each`
111
- initialDimensions | nextDimensions | shape | expected
112
- ${imageDimensions} | ${updatedDimensions} | ${polygon(triangle)} | ${polygon(triangleUpdated)}
113
- ${imageDimensions} | ${updatedDimensions} | ${polygon(square)} | ${polygon(squareUpdated)}
114
- ${imageDimensions} | ${updatedDimensions} | ${polygon(pentagon)} | ${polygon(pentagonUpdated)}
115
- ${imageDimensions} | ${updatedDimensions} | ${polygon(hexagon)} | ${polygon(hexagonUpdated)}
116
- `(
117
- 'initialDimensions = $initialDimensions, nextDimensions = $nextDimensions, shape = $shape => $expected',
118
- async ({ initialDimensions, nextDimensions, shape, expected }) => {
119
- const result = getUpdatedPolygon(initialDimensions, nextDimensions, shape);
120
-
121
- expect(result).toEqual(expected);
122
- },
123
- );
124
- });
125
-
126
- const shapesArray = [
127
- {
128
- height: 100,
129
- width: 100,
130
- x: 1,
131
- y: 1,
132
- group: 'rectangles',
133
- index: 0,
134
- },
135
- {
136
- height: 200,
137
- width: 200,
138
- x: 200,
139
- y: 1,
140
- group: 'rectangles',
141
- index: 1,
142
- },
143
- {
144
- points: [
145
- { x: 1, y: 200 },
146
- { x: 1, y: 200 },
147
- { y: 200, x: 200 },
148
- { y: 200, x: 200 },
149
- ],
150
- group: 'polygons',
151
- index: 2,
152
- },
153
- {
154
- points: [
155
- { x: 200, y: 100 },
156
- { x: 200, y: 200 },
157
- { x: 400, y: 200 },
158
- { x: 400, y: 200 },
159
- ],
160
- group: 'polygons',
161
- index: 3,
162
- },
163
- {
164
- radius: 50,
165
- x: 300,
166
- y: 150,
167
- group: 'circles',
168
- index: 4,
169
- },
170
- ];
171
-
172
- const shapesMap = {
173
- rectangles: [
174
- {
175
- height: 100,
176
- width: 100,
177
- x: 1,
178
- y: 1,
179
- index: 0,
180
- },
181
- {
182
- height: 200,
183
- width: 200,
184
- x: 200,
185
- y: 1,
186
- index: 1,
187
- },
188
- ],
189
- polygons: [
190
- {
191
- points: [
192
- { x: 1, y: 200 },
193
- { x: 1, y: 200 },
194
- { y: 200, x: 200 },
195
- { y: 200, x: 200 },
196
- ],
197
- index: 2,
198
- },
199
- {
200
- points: [
201
- { x: 200, y: 100 },
202
- { x: 200, y: 200 },
203
- { x: 400, y: 200 },
204
- { x: 400, y: 200 },
205
- ],
206
- index: 3,
207
- },
208
- ],
209
- circles: [
210
- {
211
- radius: 50,
212
- x: 300,
213
- y: 150,
214
- index: 4,
215
- },
216
- ],
217
- };
218
-
219
- describe('getAllShapes', () => {
220
- it.each`
221
- shapesMap | expected
222
- ${shapesMap} | ${shapesArray}
223
- ${null} | ${[]}
224
- ${undefined} | ${[]}
225
- ${{}} | ${[]}
226
- `('TURNS shapes = $shapesMap INTO $expected', async ({ shapesMap, expected }) => {
227
- expect(getAllShapes(shapesMap)).toEqual(expected);
228
- });
229
- });
230
-
231
- describe('groupShapes', () => {
232
- it.each`
233
- shapesArray | expected
234
- ${shapesArray} | ${shapesMap}
235
- ${null} | ${{ rectangles: [], polygons: [], circles: [] }}
236
- ${undefined} | ${{ rectangles: [], polygons: [], circles: [] }}
237
- ${[]} | ${{ rectangles: [], polygons: [], circles: [] }}
238
- `('TURNS shapes = $shapesArray INTO $expected', async ({ shapesArray, expected }) => {
239
- expect(groupShapes(shapesArray)).toEqual(expected);
240
- });
241
- });
@@ -1,35 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { styled } from '@mui/material/styles';
4
- import Button from '@mui/material/Button';
5
-
6
- const StyledButton = styled(Button)(({ theme }) => ({
7
- marginLeft: theme.spacing(1),
8
- }));
9
-
10
- const RawButton = ({ className, label, onClick, disabled }) => (
11
- <StyledButton
12
- onClick={onClick}
13
- disabled={disabled}
14
- className={className}
15
- size="small"
16
- variant="contained">
17
- {label}
18
- </StyledButton>
19
- );
20
-
21
- RawButton.propTypes = {
22
- className: PropTypes.string,
23
- disabled: PropTypes.bool,
24
- label: PropTypes.string,
25
- onClick: PropTypes.func,
26
- };
27
-
28
- RawButton.defaultProps = {
29
- className: '',
30
- disabled: false,
31
- label: 'Add',
32
- onClick: () => {},
33
- };
34
-
35
- export default RawButton;
@@ -1,18 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
-
4
- export const CircleButton = ({ isActive = false }) => (
5
- <svg xmlns="http://www.w3.org/2000/svg" width="48" height="32" viewBox="56 0 48 32" fill="none">
6
- <path
7
- fillRule="evenodd"
8
- clipRule="evenodd"
9
- d="M56 4C56 1.79086 57.7909 0 60 0H99C101.209 0 103 1.79086 103 4V28.0001C103 30.2093 101.209 32.0001 99 32.0001H60C57.7909 32.0001 56 30.2093 56 28.0001V4Z"
10
- fill={isActive ? '#D3D4D9' : '#ECEDF1'}
11
- />
12
- <circle cx="79" cy="16" r="7.5" stroke="black" />
13
- </svg>
14
- );
15
-
16
- CircleButton.propTypes = {
17
- isActive: PropTypes.bool,
18
- };