@pie-lib/graphing-solution-set 4.1.0-beta.7 → 5.0.0-next.35

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 (332) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +20 -0
  2. package/dist/autosize-input.d.ts +10 -0
  3. package/dist/autosize-input.js +66 -0
  4. package/dist/axis/arrow.d.ts +13 -0
  5. package/dist/axis/arrow.js +34 -0
  6. package/dist/axis/axes.d.ts +132 -0
  7. package/dist/axis/axes.js +214 -0
  8. package/dist/axis/index.d.ts +10 -0
  9. package/dist/bg.d.ts +51 -0
  10. package/dist/bg.js +44 -0
  11. package/dist/container/actions.d.ts +15 -0
  12. package/dist/container/actions.js +7 -0
  13. package/dist/container/index.d.ts +58 -0
  14. package/dist/container/index.js +48 -0
  15. package/dist/container/marks.d.ts +10 -0
  16. package/dist/container/marks.js +11 -0
  17. package/dist/container/middleware.d.ts +10 -0
  18. package/dist/container/middleware.js +4 -0
  19. package/dist/container/reducer.d.ts +14 -0
  20. package/dist/container/reducer.js +7 -0
  21. package/dist/coordinates-label.d.ts +50 -0
  22. package/dist/coordinates-label.js +46 -0
  23. package/dist/graph-with-controls.d.ts +85 -0
  24. package/dist/graph-with-controls.js +155 -0
  25. package/dist/graph.d.ts +119 -0
  26. package/dist/graph.js +221 -0
  27. package/dist/grid-setup.d.ts +27 -0
  28. package/dist/grid-setup.js +307 -0
  29. package/dist/grid.d.ts +43 -0
  30. package/dist/grid.js +59 -0
  31. package/dist/index.d.ts +14 -0
  32. package/dist/index.js +6 -0
  33. package/dist/labels.d.ts +73 -0
  34. package/dist/labels.js +134 -0
  35. package/dist/mark-label.d.ts +50 -0
  36. package/dist/mark-label.js +84 -0
  37. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Axis.js +67 -0
  38. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/AxisRenderer.js +66 -0
  39. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Ticks.js +39 -0
  40. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/constants/orientation.js +9 -0
  41. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/createPoint.js +14 -0
  42. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getAxisRangePaddingConfig.js +13 -0
  43. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getLabelTransform.js +16 -0
  44. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickFormatter.js +8 -0
  45. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickPosition.js +14 -0
  46. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/Grid.js +43 -0
  47. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridColumns.js +46 -0
  48. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridRows.js +46 -0
  49. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/utils/getScaleBandwidth.js +6 -0
  50. package/dist/node_modules/.bun/@visx_group@4.0.0_d84c32d47042070f/node_modules/@visx/group/esm/Group.js +17 -0
  51. package/dist/node_modules/.bun/@visx_point@4.0.0/node_modules/@visx/point/esm/Point.js +20 -0
  52. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/coerceNumber.js +10 -0
  53. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/getTicks.js +7 -0
  54. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/toString.js +6 -0
  55. package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/Line.js +27 -0
  56. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/Text.js +27 -0
  57. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/hooks/useText.js +68 -0
  58. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/getStringWidth.js +19 -0
  59. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/memoize.js +13 -0
  60. package/dist/node_modules/.bun/balanced-match@0.4.2/node_modules/balanced-match/index.js +32 -0
  61. package/dist/node_modules/.bun/balanced-match@1.0.2/node_modules/balanced-match/index.js +33 -0
  62. package/dist/node_modules/.bun/classnames@2.5.1/node_modules/classnames/index.js +32 -0
  63. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +16 -0
  64. package/dist/node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js +28 -0
  65. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/formula_evaluator.js +37 -0
  66. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/lexer.js +509 -0
  67. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/math_function.js +108 -0
  68. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix.js +31 -0
  69. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix_evaluator.js +45 -0
  70. package/dist/node_modules/.bun/reduce-css-calc@1.3.0/node_modules/reduce-css-calc/index.js +49 -0
  71. package/dist/node_modules/.bun/reduce-function-call@1.0.3/node_modules/reduce-function-call/index.js +34 -0
  72. package/dist/node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js +185 -0
  73. package/dist/node_modules/.bun/redux@5.0.1/node_modules/redux/dist/redux.js +198 -0
  74. package/dist/toggle-bar.d.ts +40 -0
  75. package/dist/tool-menu.d.ts +21 -0
  76. package/dist/tool-menu.js +188 -0
  77. package/dist/tools/index.d.ts +17 -0
  78. package/dist/tools/index.js +12 -0
  79. package/dist/tools/line/component.d.ts +113 -0
  80. package/dist/tools/line/component.js +58 -0
  81. package/dist/tools/line/index.d.ts +13 -0
  82. package/dist/tools/line/index.js +6 -0
  83. package/dist/tools/polygon/component.d.ts +117 -0
  84. package/dist/tools/polygon/component.js +194 -0
  85. package/dist/tools/polygon/index.d.ts +19 -0
  86. package/dist/tools/polygon/index.js +55 -0
  87. package/dist/tools/polygon/line.d.ts +125 -0
  88. package/dist/tools/polygon/polygon.d.ts +122 -0
  89. package/dist/tools/polygon/polygon.js +62 -0
  90. package/dist/tools/shared/arrow-head.d.ts +43 -0
  91. package/dist/tools/shared/arrow-head.js +37 -0
  92. package/dist/tools/shared/line/index.d.ts +240 -0
  93. package/dist/tools/shared/line/index.js +320 -0
  94. package/dist/tools/shared/line/line-path.d.ts +57 -0
  95. package/dist/tools/shared/line/with-root-edge.d.ts +143 -0
  96. package/dist/tools/shared/point/arrow-point.d.ts +57 -0
  97. package/dist/tools/shared/point/arrow-point.js +47 -0
  98. package/dist/tools/shared/point/arrow.d.ts +46 -0
  99. package/dist/tools/shared/point/arrow.js +36 -0
  100. package/dist/tools/shared/point/base-point.d.ts +50 -0
  101. package/dist/tools/shared/point/base-point.js +88 -0
  102. package/dist/tools/shared/point/index.d.ts +217 -0
  103. package/dist/tools/shared/point/index.js +51 -0
  104. package/dist/tools/shared/styles.d.ts +24 -0
  105. package/dist/tools/shared/styles.js +17 -0
  106. package/dist/tools/shared/types.d.ts +15 -0
  107. package/dist/tools/shared/types.js +10 -0
  108. package/dist/undo-redo.d.ts +20 -0
  109. package/dist/undo-redo.js +33 -0
  110. package/dist/use-debounce.d.ts +9 -0
  111. package/dist/use-debounce.js +13 -0
  112. package/dist/utils.d.ts +58 -0
  113. package/dist/utils.js +72 -0
  114. package/package.json +52 -42
  115. package/CHANGELOG.json +0 -1
  116. package/CHANGELOG.md +0 -449
  117. package/lib/__tests__/bg.test.js +0 -282
  118. package/lib/__tests__/bg.test.js.map +0 -1
  119. package/lib/__tests__/coordinates-label.test.js +0 -276
  120. package/lib/__tests__/coordinates-label.test.js.map +0 -1
  121. package/lib/__tests__/graph-with-controls.test.js +0 -256
  122. package/lib/__tests__/graph-with-controls.test.js.map +0 -1
  123. package/lib/__tests__/graph.test.js +0 -113
  124. package/lib/__tests__/graph.test.js.map +0 -1
  125. package/lib/__tests__/grid-setup.test.js +0 -729
  126. package/lib/__tests__/grid-setup.test.js.map +0 -1
  127. package/lib/__tests__/grid.test.js +0 -29
  128. package/lib/__tests__/grid.test.js.map +0 -1
  129. package/lib/__tests__/labels.test.js +0 -45
  130. package/lib/__tests__/labels.test.js.map +0 -1
  131. package/lib/__tests__/mark-label.test.js +0 -133
  132. package/lib/__tests__/mark-label.test.js.map +0 -1
  133. package/lib/__tests__/toggle-bar.test.js +0 -146
  134. package/lib/__tests__/toggle-bar.test.js.map +0 -1
  135. package/lib/__tests__/tool-menu.test.js +0 -540
  136. package/lib/__tests__/tool-menu.test.js.map +0 -1
  137. package/lib/__tests__/undo-redo.test.js +0 -31
  138. package/lib/__tests__/undo-redo.test.js.map +0 -1
  139. package/lib/__tests__/use-debounce.test.js +0 -24
  140. package/lib/__tests__/use-debounce.test.js.map +0 -1
  141. package/lib/__tests__/utils.js +0 -70
  142. package/lib/__tests__/utils.js.map +0 -1
  143. package/lib/__tests__/utils.test.js +0 -123
  144. package/lib/__tests__/utils.test.js.map +0 -1
  145. package/lib/axis/__tests__/arrow.test.js +0 -60
  146. package/lib/axis/__tests__/arrow.test.js.map +0 -1
  147. package/lib/axis/__tests__/axes.test.js +0 -160
  148. package/lib/axis/__tests__/axes.test.js.map +0 -1
  149. package/lib/axis/arrow.js +0 -79
  150. package/lib/axis/arrow.js.map +0 -1
  151. package/lib/axis/axes.js +0 -327
  152. package/lib/axis/axes.js.map +0 -1
  153. package/lib/axis/index.js +0 -21
  154. package/lib/axis/index.js.map +0 -1
  155. package/lib/bg.js +0 -114
  156. package/lib/bg.js.map +0 -1
  157. package/lib/container/__tests__/actions.test.js +0 -108
  158. package/lib/container/__tests__/actions.test.js.map +0 -1
  159. package/lib/container/__tests__/index.test.js +0 -346
  160. package/lib/container/__tests__/index.test.js.map +0 -1
  161. package/lib/container/__tests__/marks.test.js +0 -259
  162. package/lib/container/__tests__/marks.test.js.map +0 -1
  163. package/lib/container/__tests__/middleware.test.js +0 -244
  164. package/lib/container/__tests__/middleware.test.js.map +0 -1
  165. package/lib/container/__tests__/reducer.test.js +0 -450
  166. package/lib/container/__tests__/reducer.test.js.map +0 -1
  167. package/lib/container/actions.js +0 -18
  168. package/lib/container/actions.js.map +0 -1
  169. package/lib/container/index.js +0 -129
  170. package/lib/container/index.js.map +0 -1
  171. package/lib/container/marks.js +0 -22
  172. package/lib/container/marks.js.map +0 -1
  173. package/lib/container/middleware.js +0 -19
  174. package/lib/container/middleware.js.map +0 -1
  175. package/lib/container/reducer.js +0 -18
  176. package/lib/container/reducer.js.map +0 -1
  177. package/lib/coordinates-label.js +0 -77
  178. package/lib/coordinates-label.js.map +0 -1
  179. package/lib/graph-with-controls.js +0 -297
  180. package/lib/graph-with-controls.js.map +0 -1
  181. package/lib/graph.js +0 -353
  182. package/lib/graph.js.map +0 -1
  183. package/lib/grid-setup.js +0 -414
  184. package/lib/grid-setup.js.map +0 -1
  185. package/lib/grid.js +0 -131
  186. package/lib/grid.js.map +0 -1
  187. package/lib/index.js +0 -40
  188. package/lib/index.js.map +0 -1
  189. package/lib/labels.js +0 -199
  190. package/lib/labels.js.map +0 -1
  191. package/lib/mark-label.js +0 -159
  192. package/lib/mark-label.js.map +0 -1
  193. package/lib/toggle-bar.js +0 -248
  194. package/lib/toggle-bar.js.map +0 -1
  195. package/lib/tool-menu.js +0 -218
  196. package/lib/tool-menu.js.map +0 -1
  197. package/lib/tools/index.js +0 -24
  198. package/lib/tools/index.js.map +0 -1
  199. package/lib/tools/line/__tests__/component.test.js +0 -45
  200. package/lib/tools/line/__tests__/component.test.js.map +0 -1
  201. package/lib/tools/line/component.js +0 -92
  202. package/lib/tools/line/component.js.map +0 -1
  203. package/lib/tools/line/index.js +0 -11
  204. package/lib/tools/line/index.js.map +0 -1
  205. package/lib/tools/polygon/__tests__/component.test.js +0 -501
  206. package/lib/tools/polygon/__tests__/component.test.js.map +0 -1
  207. package/lib/tools/polygon/__tests__/index.test.js +0 -92
  208. package/lib/tools/polygon/__tests__/index.test.js.map +0 -1
  209. package/lib/tools/polygon/__tests__/line.test.js +0 -30
  210. package/lib/tools/polygon/__tests__/line.test.js.map +0 -1
  211. package/lib/tools/polygon/__tests__/polygon.test.js +0 -61
  212. package/lib/tools/polygon/__tests__/polygon.test.js.map +0 -1
  213. package/lib/tools/polygon/component.js +0 -358
  214. package/lib/tools/polygon/component.js.map +0 -1
  215. package/lib/tools/polygon/index.js +0 -89
  216. package/lib/tools/polygon/index.js.map +0 -1
  217. package/lib/tools/polygon/line.js +0 -114
  218. package/lib/tools/polygon/line.js.map +0 -1
  219. package/lib/tools/polygon/polygon.js +0 -128
  220. package/lib/tools/polygon/polygon.js.map +0 -1
  221. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
  222. package/lib/tools/shared/__tests__/arrow-head.test.js.map +0 -1
  223. package/lib/tools/shared/arrow-head.js +0 -62
  224. package/lib/tools/shared/arrow-head.js.map +0 -1
  225. package/lib/tools/shared/line/__tests__/index.test.js +0 -725
  226. package/lib/tools/shared/line/__tests__/index.test.js.map +0 -1
  227. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -64
  228. package/lib/tools/shared/line/__tests__/line-path.test.js.map +0 -1
  229. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -618
  230. package/lib/tools/shared/line/__tests__/with-root-edge.test.js.map +0 -1
  231. package/lib/tools/shared/line/index.js +0 -539
  232. package/lib/tools/shared/line/index.js.map +0 -1
  233. package/lib/tools/shared/line/line-path.js +0 -121
  234. package/lib/tools/shared/line/line-path.js.map +0 -1
  235. package/lib/tools/shared/line/with-root-edge.js +0 -121
  236. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  237. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
  238. package/lib/tools/shared/point/__tests__/arrow-point.test.js.map +0 -1
  239. package/lib/tools/shared/point/__tests__/arrow.test.js +0 -619
  240. package/lib/tools/shared/point/__tests__/arrow.test.js.map +0 -1
  241. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
  242. package/lib/tools/shared/point/__tests__/base-point.test.js.map +0 -1
  243. package/lib/tools/shared/point/arrow-point.js +0 -86
  244. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  245. package/lib/tools/shared/point/arrow.js +0 -70
  246. package/lib/tools/shared/point/arrow.js.map +0 -1
  247. package/lib/tools/shared/point/base-point.js +0 -137
  248. package/lib/tools/shared/point/base-point.js.map +0 -1
  249. package/lib/tools/shared/point/index.js +0 -80
  250. package/lib/tools/shared/point/index.js.map +0 -1
  251. package/lib/tools/shared/styles.js +0 -26
  252. package/lib/tools/shared/styles.js.map +0 -1
  253. package/lib/tools/shared/types.js +0 -15
  254. package/lib/tools/shared/types.js.map +0 -1
  255. package/lib/undo-redo.js +0 -67
  256. package/lib/undo-redo.js.map +0 -1
  257. package/lib/use-debounce.js +0 -25
  258. package/lib/use-debounce.js.map +0 -1
  259. package/lib/utils.js +0 -235
  260. package/lib/utils.js.map +0 -1
  261. package/src/__tests__/bg.test.jsx +0 -250
  262. package/src/__tests__/coordinates-label.test.jsx +0 -243
  263. package/src/__tests__/graph-with-controls.test.jsx +0 -184
  264. package/src/__tests__/graph.test.jsx +0 -93
  265. package/src/__tests__/grid-setup.test.jsx +0 -645
  266. package/src/__tests__/grid.test.jsx +0 -23
  267. package/src/__tests__/labels.test.jsx +0 -41
  268. package/src/__tests__/mark-label.test.jsx +0 -66
  269. package/src/__tests__/toggle-bar.test.jsx +0 -106
  270. package/src/__tests__/tool-menu.test.jsx +0 -453
  271. package/src/__tests__/undo-redo.test.jsx +0 -26
  272. package/src/__tests__/use-debounce.test.js +0 -21
  273. package/src/__tests__/utils.js +0 -41
  274. package/src/__tests__/utils.test.js +0 -105
  275. package/src/axis/__tests__/arrow.test.jsx +0 -43
  276. package/src/axis/__tests__/axes.test.jsx +0 -182
  277. package/src/axis/arrow.jsx +0 -57
  278. package/src/axis/axes.jsx +0 -284
  279. package/src/axis/index.js +0 -3
  280. package/src/bg.jsx +0 -96
  281. package/src/container/__tests__/actions.test.js +0 -105
  282. package/src/container/__tests__/index.test.jsx +0 -227
  283. package/src/container/__tests__/marks.test.js +0 -172
  284. package/src/container/__tests__/middleware.test.js +0 -235
  285. package/src/container/__tests__/reducer.test.js +0 -324
  286. package/src/container/actions.js +0 -8
  287. package/src/container/index.jsx +0 -93
  288. package/src/container/marks.js +0 -14
  289. package/src/container/middleware.js +0 -7
  290. package/src/container/reducer.js +0 -5
  291. package/src/coordinates-label.jsx +0 -62
  292. package/src/graph-with-controls.jsx +0 -242
  293. package/src/graph.jsx +0 -333
  294. package/src/grid-setup.jsx +0 -432
  295. package/src/grid.jsx +0 -133
  296. package/src/index.js +0 -7
  297. package/src/labels.jsx +0 -173
  298. package/src/mark-label.jsx +0 -125
  299. package/src/toggle-bar.jsx +0 -221
  300. package/src/tool-menu.jsx +0 -235
  301. package/src/tools/index.js +0 -8
  302. package/src/tools/line/__tests__/component.test.jsx +0 -37
  303. package/src/tools/line/component.jsx +0 -77
  304. package/src/tools/line/index.js +0 -4
  305. package/src/tools/polygon/__tests__/component.test.jsx +0 -487
  306. package/src/tools/polygon/__tests__/index.test.js +0 -65
  307. package/src/tools/polygon/__tests__/line.test.jsx +0 -23
  308. package/src/tools/polygon/__tests__/polygon.test.jsx +0 -44
  309. package/src/tools/polygon/component.jsx +0 -324
  310. package/src/tools/polygon/index.js +0 -52
  311. package/src/tools/polygon/line.jsx +0 -80
  312. package/src/tools/polygon/polygon.jsx +0 -93
  313. package/src/tools/shared/__tests__/arrow-head.test.jsx +0 -33
  314. package/src/tools/shared/arrow-head.jsx +0 -46
  315. package/src/tools/shared/line/__tests__/index.test.jsx +0 -553
  316. package/src/tools/shared/line/__tests__/line-path.test.jsx +0 -56
  317. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +0 -488
  318. package/src/tools/shared/line/index.jsx +0 -471
  319. package/src/tools/shared/line/line-path.jsx +0 -85
  320. package/src/tools/shared/line/with-root-edge.jsx +0 -97
  321. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +0 -91
  322. package/src/tools/shared/point/__tests__/arrow.test.jsx +0 -469
  323. package/src/tools/shared/point/__tests__/base-point.test.jsx +0 -87
  324. package/src/tools/shared/point/arrow-point.jsx +0 -60
  325. package/src/tools/shared/point/arrow.jsx +0 -40
  326. package/src/tools/shared/point/base-point.jsx +0 -113
  327. package/src/tools/shared/point/index.jsx +0 -58
  328. package/src/tools/shared/styles.js +0 -20
  329. package/src/tools/shared/types.js +0 -8
  330. package/src/undo-redo.jsx +0 -37
  331. package/src/use-debounce.js +0 -13
  332. package/src/utils.js +0 -230
@@ -1 +0,0 @@
1
- {"version":3,"file":"with-root-edge.test.js","names":["_testUtils","require","_react","_interopRequireDefault","_withRootEdge","_utils","_plot","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","xy","utils","jest","mock","React","out","lineBase","fn","Component","lineToolComponent","props","createElement","describe","Comp","onChange","beforeEach","rootEdgeToFromToWrapper","_extends2","renderComponent","extras","defaults","mark","root","edge","render","it","_renderComponent","container","expect","firstChild","toBeInTheDocument","_renderComponent2","_renderComponent3","_renderComponent4","_renderComponent5","_renderComponent6","getByTestId","wrappedComponent","_renderComponent7","_renderComponent8","undefined","_renderComponent9","not","toHaveBeenCalled","_renderComponent0","_renderComponent1","disabled","correctness","graphProps","getGraphProps","_renderComponent10","_renderComponent11","fill","onClick","onDragStart","onDragStop","_renderComponent12","_renderComponent13","_renderComponent14","_renderComponent15","x","y","label","rootEdgeComponent","_renderComponent16","buildingMark","building","_renderComponent17","completeMark","_renderComponent18","disabledMark","_renderComponent19","correctMark","_renderComponent20","_renderComponent21","_renderComponent22","middle","_renderComponent23","_renderComponent24","type","customGraphProps","_renderComponent25","_renderComponent26","labelNode","document","_renderComponent27","_renderComponent28","labelModeEnabled","_renderComponent29","coordinatesOnHover","_renderComponent30","_renderComponent31","_renderComponent32","_renderComponent33","getPoints","dataPoints","enableCurve","withRootEdge","from","to","_renderComponent34","mockReturnValue","_renderComponent35","_renderComponent36","_renderComponent37","_renderComponent38","points","Array","_","i","_renderComponent39","_renderComponent40","_renderComponent41","_renderComponent42","_renderComponent43","_renderComponent44","_renderComponent45","_renderComponent46","strokeWidth","_renderComponent47","_renderComponent48","_renderComponent49","_renderComponent50"],"sources":["../../../../../src/tools/shared/line/__tests__/with-root-edge.test.jsx"],"sourcesContent":["import { render } from '@pie-lib/test-utils';\nimport React from 'react';\nimport { rootEdgeComponent, rootEdgeToFromToWrapper, withRootEdge } from '../with-root-edge';\nimport { graphProps as getGraphProps } from '../../../../__tests__/utils';\nimport { utils } from '@pie-lib/plot';\n\nconst { xy } = utils;\n\njest.mock('../index', () => {\n const React = require('react');\n const out = {\n lineBase: jest.fn((Component) => Component),\n lineToolComponent: jest.fn((Component) => {\n return (props) => <Component {...props} />;\n }),\n };\n return out;\n});\n\ndescribe('rootEdgeToFromToWrapper', () => {\n let Comp;\n let onChange;\n\n beforeEach(() => {\n onChange = jest.fn();\n Comp = rootEdgeToFromToWrapper((props) => <div data-testid=\"wrapped-component\" {...props} />);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n mark: { root: xy(1, 1), edge: xy(2, 2) },\n onChange,\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with only root point', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with root and edge points', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(5, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with negative coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(-5, -5), edge: xy(-1, -1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with decimal coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(0.5, 0.5), edge: xy(1.5, 1.5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('coordinate transformation', () => {\n it('converts root/edge to from/to for wrapped component', () => {\n const { getByTestId } = renderComponent({\n mark: { root: xy(1, 1), edge: xy(2, 2) },\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('handles mark without edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with undefined edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1), edge: undefined },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('onChange handling', () => {\n it('passes onChange handler to wrapped component', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n expect(onChange).not.toHaveBeenCalled();\n });\n\n it('provides onChange prop to wrapped component', () => {\n const { getByTestId } = renderComponent();\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n });\n\n describe('prop forwarding', () => {\n it('forwards additional props to wrapped component', () => {\n const { getByTestId } = renderComponent({\n disabled: true,\n correctness: 'correct',\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('forwards graphProps', () => {\n const graphProps = getGraphProps();\n const { getByTestId } = renderComponent({\n graphProps,\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('forwards all standard props', () => {\n const { getByTestId } = renderComponent({\n disabled: false,\n correctness: 'incorrect',\n fill: '#ff0000',\n onClick: jest.fn(),\n onDragStart: jest.fn(),\n onDragStop: jest.fn(),\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles mark with same root and edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1), edge: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with zero coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(0, 0) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with large coordinate values', () => {\n const { container } = renderComponent({\n mark: { root: xy(1000, 1000), edge: xy(2000, 2000) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with labels', () => {\n const { container } = renderComponent({\n mark: {\n root: { x: 1, y: 1, label: 'Root' },\n edge: { x: 2, y: 2, label: 'Edge' },\n },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n\ndescribe('rootEdgeComponent', () => {\n let onChange;\n let Comp;\n let mark;\n\n beforeEach(() => {\n onChange = jest.fn();\n mark = { root: xy(0, 0), edge: xy(1, 1) };\n Comp = rootEdgeComponent((props) => <text data-testid=\"root-edge-comp\" {...props} />);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n mark,\n graphProps: getGraphProps(),\n onChange,\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with building mark', () => {\n const buildingMark = { root: xy(0, 0), building: true };\n const { container } = renderComponent({ mark: buildingMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with complete mark', () => {\n const completeMark = { root: xy(0, 0), edge: xy(5, 5), building: false };\n const { container } = renderComponent({ mark: completeMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with disabled mark', () => {\n const disabledMark = { root: xy(0, 0), edge: xy(1, 1), disabled: true };\n const { container } = renderComponent({ mark: disabledMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with correctness state', () => {\n const correctMark = { root: xy(0, 0), edge: xy(1, 1), correctness: 'correct' };\n const { container } = renderComponent({ mark: correctMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('mark variations', () => {\n it('handles mark without edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with middle point', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(2, 2), middle: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with custom fill', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(1, 1), fill: '#00ff00' },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with type property', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(1, 1), type: 'parabola' },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('prop forwarding', () => {\n it('forwards graphProps correctly', () => {\n const customGraphProps = getGraphProps(0, 10, 0, 10);\n const { container } = renderComponent({ graphProps: customGraphProps });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onClick handler', () => {\n const onClick = jest.fn();\n const { container } = renderComponent({ onClick });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards labelNode', () => {\n const labelNode = document.createElement('foreignObject');\n const { container } = renderComponent({ labelNode });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards labelModeEnabled', () => {\n const { container } = renderComponent({ labelModeEnabled: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards coordinatesOnHover', () => {\n const { container } = renderComponent({ coordinatesOnHover: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles vertical line (same x coordinates)', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 0), edge: xy(1, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles horizontal line (same y coordinates)', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 1), edge: xy(5, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles diagonal line', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(5, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles negative slope', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 5), edge: xy(5, 0) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n\ndescribe('withRootEdge', () => {\n let getPoints;\n let Comp;\n\n beforeEach(() => {\n getPoints = jest.fn(() => ({\n dataPoints: [\n { x: 0, y: 0 },\n { x: 1, y: 1 },\n { x: 2, y: 4 },\n ],\n enableCurve: true,\n }));\n Comp = withRootEdge(getPoints);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n from: xy(0, 0),\n to: xy(2, 2),\n graphProps: getGraphProps(),\n onChange: jest.fn(),\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('calls getPoints with correct parameters', () => {\n renderComponent();\n expect(getPoints).toHaveBeenCalled();\n });\n\n it('renders with curve enabled', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1), xy(2, 2)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with curve disabled', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1), xy(2, 2)],\n enableCurve: false,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('data points handling', () => {\n it('handles empty data points', () => {\n getPoints.mockReturnValue({\n dataPoints: [],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles single data point', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(1, 1)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles many data points', () => {\n const points = Array.from({ length: 100 }, (_, i) => xy(i, i * i));\n getPoints.mockReturnValue({\n dataPoints: points,\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles negative coordinate data points', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(-5, -5), xy(-3, -3), xy(-1, -1)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('prop handling', () => {\n it('forwards onClick handler', () => {\n const onClick = jest.fn();\n const { container } = renderComponent({ onClick });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onDragStart handler', () => {\n const onDragStart = jest.fn();\n const { container } = renderComponent({ onDragStart });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onDragStop handler', () => {\n const onDragStop = jest.fn();\n const { container } = renderComponent({ onDragStop });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards disabled state', () => {\n const { container } = renderComponent({ disabled: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards correctness state', () => {\n const { container } = renderComponent({ correctness: 'correct' });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards custom props', () => {\n const { container } = renderComponent({\n fill: '#ff0000',\n strokeWidth: 5,\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles undefined to point', () => {\n const { container } = renderComponent({ to: undefined });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles same from and to points', () => {\n const { container } = renderComponent({\n from: xy(1, 1),\n to: xy(1, 1),\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles different graph scales', () => {\n const customGraphProps = getGraphProps(-10, 10, -10, 10);\n const { container } = renderComponent({ graphProps: customGraphProps });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles getPoints returning enableCurve as undefined', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1)],\n // enableCurve is undefined\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n"],"mappings":";;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAAsC,SAAAM,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEtC,IAAQoB,EAAE,GAAKC,WAAK,CAAZD,EAAE;AAEVE,IAAI,CAACC,IAAI,CAAC,UAAU,EAAE,YAAM;EAC1B,IAAMC,KAAK,GAAG/B,OAAO,CAAC,OAAO,CAAC;EAC9B,IAAMgC,GAAG,GAAG;IACVC,QAAQ,EAAEJ,IAAI,CAACK,EAAE,CAAC,UAACC,SAAS;MAAA,OAAKA,SAAS;IAAA,EAAC;IAC3CC,iBAAiB,EAAEP,IAAI,CAACK,EAAE,CAAC,UAACC,SAAS,EAAK;MACxC,OAAO,UAACE,KAAK;QAAA,oBAAKN,KAAA,CAAAO,aAAA,CAACH,SAAS,EAAKE,KAAQ,CAAC;MAAA;IAC5C,CAAC;EACH,CAAC;EACD,OAAOL,GAAG;AACZ,CAAC,CAAC;AAEFO,QAAQ,CAAC,yBAAyB,EAAE,YAAM;EACxC,IAAIC,IAAI;EACR,IAAIC,QAAQ;EAEZC,UAAU,CAAC,YAAM;IACfD,QAAQ,GAAGZ,IAAI,CAACK,EAAE,CAAC,CAAC;IACpBM,IAAI,GAAG,IAAAG,qCAAuB,EAAC,UAACN,KAAK;MAAA,oBAAKpC,MAAA,YAAAqC,aAAA,YAAAM,SAAA;QAAK,eAAY;MAAmB,GAAKP,KAAK,CAAG,CAAC;IAAA,EAAC;EAC/F,CAAC,CAAC;EAEF,IAAMQ,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,MAAM,EAAK;IAClC,IAAMC,QAAQ,GAAG;MACfC,IAAI,EAAE;QAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;MAAE,CAAC;MACxCc,QAAQ,EAARA;IACF,CAAC;IACD,IAAMJ,KAAK,GAAAlB,aAAA,CAAAA,aAAA,KAAQ4B,QAAQ,GAAKD,MAAM,CAAE;IACxC,OAAO,IAAAK,iBAAM,eAAClD,MAAA,YAAAqC,aAAA,CAACE,IAAI,EAAKH,KAAQ,CAAC,CAAC;EACpC,CAAC;EAEDE,QAAQ,CAAC,WAAW,EAAE,YAAM;IAC1Ba,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAAC,gBAAA,GAAsBR,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAD,gBAAA,CAATC,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,8BAA8B,EAAE,YAAM;MACvC,IAAAM,iBAAA,GAAsBb,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzB,CAAC,CAAC;QAFM2B,SAAS,GAAAI,iBAAA,CAATJ,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,mCAAmC,EAAE,YAAM;MAC5C,IAAAO,iBAAA,GAAsBd,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAAK,iBAAA,CAATL,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,mCAAmC,EAAE,YAAM;MAC5C,IAAAQ,iBAAA,GAAsBf,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;UAAE;QAC7C,CAAC,CAAC;QAFM2B,SAAS,GAAAM,iBAAA,CAATN,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,kCAAkC,EAAE,YAAM;MAC3C,IAAAS,iBAAA,GAAsBhB,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,GAAG,EAAE,GAAG;UAAE;QACjD,CAAC,CAAC;QAFM2B,SAAS,GAAAO,iBAAA,CAATP,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,2BAA2B,EAAE,YAAM;IAC1Ca,EAAE,CAAC,qDAAqD,EAAE,YAAM;MAC9D,IAAAU,iBAAA,GAAwBjB,eAAe,CAAC;UACtCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFMoC,WAAW,GAAAD,iBAAA,CAAXC,WAAW;MAInB,IAAMC,gBAAgB,GAAGD,WAAW,CAAC,mBAAmB,CAAC;MACzDR,MAAM,CAACS,gBAAgB,CAAC,CAACP,iBAAiB,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEFL,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpC,IAAAa,iBAAA,GAAsBpB,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzB,CAAC,CAAC;QAFM2B,SAAS,GAAAW,iBAAA,CAATX,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,kCAAkC,EAAE,YAAM;MAC3C,IAAAc,iBAAA,GAAsBrB,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEiB;UAAU;QAC1C,CAAC,CAAC;QAFMb,SAAS,GAAAY,iBAAA,CAATZ,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,mBAAmB,EAAE,YAAM;IAClCa,EAAE,CAAC,8CAA8C,EAAE,YAAM;MACvD,IAAAgB,iBAAA,GAAsBvB,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAc,iBAAA,CAATd,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;MAChDF,MAAM,CAACd,QAAQ,CAAC,CAAC4B,GAAG,CAACC,gBAAgB,CAAC,CAAC;IACzC,CAAC,CAAC;IAEFlB,EAAE,CAAC,6CAA6C,EAAE,YAAM;MACtD,IAAAmB,iBAAA,GAAwB1B,eAAe,CAAC,CAAC;QAAjCkB,WAAW,GAAAQ,iBAAA,CAAXR,WAAW;MACnB,IAAMC,gBAAgB,GAAGD,WAAW,CAAC,mBAAmB,CAAC;MACzDR,MAAM,CAACS,gBAAgB,CAAC,CAACP,iBAAiB,CAAC,CAAC;IAC9C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,iBAAiB,EAAE,YAAM;IAChCa,EAAE,CAAC,gDAAgD,EAAE,YAAM;MACzD,IAAAoB,iBAAA,GAAwB3B,eAAe,CAAC;UACtC4B,QAAQ,EAAE,IAAI;UACdC,WAAW,EAAE;QACf,CAAC,CAAC;QAHMX,WAAW,GAAAS,iBAAA,CAAXT,WAAW;MAKnB,IAAMC,gBAAgB,GAAGD,WAAW,CAAC,mBAAmB,CAAC;MACzDR,MAAM,CAACS,gBAAgB,CAAC,CAACP,iBAAiB,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEFL,EAAE,CAAC,qBAAqB,EAAE,YAAM;MAC9B,IAAMuB,UAAU,GAAG,IAAAC,iBAAa,EAAC,CAAC;MAClC,IAAAC,kBAAA,GAAwBhC,eAAe,CAAC;UACtC8B,UAAU,EAAVA;QACF,CAAC,CAAC;QAFMZ,WAAW,GAAAc,kBAAA,CAAXd,WAAW;MAInB,IAAMC,gBAAgB,GAAGD,WAAW,CAAC,mBAAmB,CAAC;MACzDR,MAAM,CAACS,gBAAgB,CAAC,CAACP,iBAAiB,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEFL,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAA0B,kBAAA,GAAwBjC,eAAe,CAAC;UACtC4B,QAAQ,EAAE,KAAK;UACfC,WAAW,EAAE,WAAW;UACxBK,IAAI,EAAE,SAAS;UACfC,OAAO,EAAEnD,IAAI,CAACK,EAAE,CAAC,CAAC;UAClB+C,WAAW,EAAEpD,IAAI,CAACK,EAAE,CAAC,CAAC;UACtBgD,UAAU,EAAErD,IAAI,CAACK,EAAE,CAAC;QACtB,CAAC,CAAC;QAPM6B,WAAW,GAAAe,kBAAA,CAAXf,WAAW;MASnB,IAAMC,gBAAgB,GAAGD,WAAW,CAAC,mBAAmB,CAAC;MACzDR,MAAM,CAACS,gBAAgB,CAAC,CAACP,iBAAiB,CAAC,CAAC;IAC9C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,YAAY,EAAE,YAAM;IAC3Ba,EAAE,CAAC,sCAAsC,EAAE,YAAM;MAC/C,IAAA+B,kBAAA,GAAsBtC,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAA6B,kBAAA,CAAT7B,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,oCAAoC,EAAE,YAAM;MAC7C,IAAAgC,kBAAA,GAAsBvC,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAA8B,kBAAA,CAAT9B,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,2CAA2C,EAAE,YAAM;MACpD,IAAAiC,kBAAA,GAAsBxC,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,IAAI,EAAE,IAAI;UAAE;QACrD,CAAC,CAAC;QAFM2B,SAAS,GAAA+B,kBAAA,CAAT/B,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAAkC,kBAAA,GAAsBzC,eAAe,CAAC;UACpCG,IAAI,EAAE;YACJC,IAAI,EAAE;cAAEsC,CAAC,EAAE,CAAC;cAAEC,CAAC,EAAE,CAAC;cAAEC,KAAK,EAAE;YAAO,CAAC;YACnCvC,IAAI,EAAE;cAAEqC,CAAC,EAAE,CAAC;cAAEC,CAAC,EAAE,CAAC;cAAEC,KAAK,EAAE;YAAO;UACpC;QACF,CAAC,CAAC;QALMnC,SAAS,GAAAgC,kBAAA,CAAThC,SAAS;MAMjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFlB,QAAQ,CAAC,mBAAmB,EAAE,YAAM;EAClC,IAAIE,QAAQ;EACZ,IAAID,IAAI;EACR,IAAIQ,IAAI;EAERN,UAAU,CAAC,YAAM;IACfD,QAAQ,GAAGZ,IAAI,CAACK,EAAE,CAAC,CAAC;IACpBc,IAAI,GAAG;MAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;IAAE,CAAC;IACzCa,IAAI,GAAG,IAAAkD,+BAAiB,EAAC,UAACrD,KAAK;MAAA,oBAAKpC,MAAA,YAAAqC,aAAA,aAAAM,SAAA;QAAM,eAAY;MAAgB,GAAKP,KAAK,CAAG,CAAC;IAAA,EAAC;EACvF,CAAC,CAAC;EAEF,IAAMQ,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,MAAM,EAAK;IAClC,IAAMC,QAAQ,GAAG;MACfC,IAAI,EAAJA,IAAI;MACJ2B,UAAU,EAAE,IAAAC,iBAAa,EAAC,CAAC;MAC3BnC,QAAQ,EAARA;IACF,CAAC;IACD,IAAMJ,KAAK,GAAAlB,aAAA,CAAAA,aAAA,KAAQ4B,QAAQ,GAAKD,MAAM,CAAE;IACxC,OAAO,IAAAK,iBAAM,eAAClD,MAAA,YAAAqC,aAAA,CAACE,IAAI,EAAKH,KAAQ,CAAC,CAAC;EACpC,CAAC;EAEDE,QAAQ,CAAC,WAAW,EAAE,YAAM;IAC1Ba,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAAuC,kBAAA,GAAsB9C,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAqC,kBAAA,CAATrC,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAMwC,YAAY,GAAG;QAAE3C,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEkE,QAAQ,EAAE;MAAK,CAAC;MACvD,IAAAC,kBAAA,GAAsBjD,eAAe,CAAC;UAAEG,IAAI,EAAE4C;QAAa,CAAC,CAAC;QAArDtC,SAAS,GAAAwC,kBAAA,CAATxC,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAM2C,YAAY,GAAG;QAAE9C,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEkE,QAAQ,EAAE;MAAM,CAAC;MACxE,IAAAG,kBAAA,GAAsBnD,eAAe,CAAC;UAAEG,IAAI,EAAE+C;QAAa,CAAC,CAAC;QAArDzC,SAAS,GAAA0C,kBAAA,CAAT1C,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAM6C,YAAY,GAAG;QAAEhD,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAE8C,QAAQ,EAAE;MAAK,CAAC;MACvE,IAAAyB,kBAAA,GAAsBrD,eAAe,CAAC;UAAEG,IAAI,EAAEiD;QAAa,CAAC,CAAC;QAArD3C,SAAS,GAAA4C,kBAAA,CAAT5C,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,gCAAgC,EAAE,YAAM;MACzC,IAAM+C,WAAW,GAAG;QAAElD,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAAE+C,WAAW,EAAE;MAAU,CAAC;MAC9E,IAAA0B,kBAAA,GAAsBvD,eAAe,CAAC;UAAEG,IAAI,EAAEmD;QAAY,CAAC,CAAC;QAApD7C,SAAS,GAAA8C,kBAAA,CAAT9C,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,iBAAiB,EAAE,YAAM;IAChCa,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpC,IAAAiD,kBAAA,GAAsBxD,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzB,CAAC,CAAC;QAFM2B,SAAS,GAAA+C,kBAAA,CAAT/C,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,gCAAgC,EAAE,YAAM;MACzC,IAAAkD,kBAAA,GAAsBzD,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE4E,MAAM,EAAE5E,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QAC3D,CAAC,CAAC;QAFM2B,SAAS,GAAAgD,kBAAA,CAAThD,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,+BAA+B,EAAE,YAAM;MACxC,IAAAoD,kBAAA,GAAsB3D,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEoD,IAAI,EAAE;UAAU;QAC1D,CAAC,CAAC;QAFMzB,SAAS,GAAAkD,kBAAA,CAATlD,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,iCAAiC,EAAE,YAAM;MAC1C,IAAAqD,kBAAA,GAAsB5D,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE+E,IAAI,EAAE;UAAW;QAC3D,CAAC,CAAC;QAFMpD,SAAS,GAAAmD,kBAAA,CAATnD,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,iBAAiB,EAAE,YAAM;IAChCa,EAAE,CAAC,+BAA+B,EAAE,YAAM;MACxC,IAAMuD,gBAAgB,GAAG,IAAA/B,iBAAa,EAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;MACpD,IAAAgC,kBAAA,GAAsB/D,eAAe,CAAC;UAAE8B,UAAU,EAAEgC;QAAiB,CAAC,CAAC;QAA/DrD,SAAS,GAAAsD,kBAAA,CAATtD,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAM4B,OAAO,GAAGnD,IAAI,CAACK,EAAE,CAAC,CAAC;MACzB,IAAA2E,kBAAA,GAAsBhE,eAAe,CAAC;UAAEmC,OAAO,EAAPA;QAAQ,CAAC,CAAC;QAA1C1B,SAAS,GAAAuD,kBAAA,CAATvD,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,oBAAoB,EAAE,YAAM;MAC7B,IAAM0D,SAAS,GAAGC,QAAQ,CAACzE,aAAa,CAAC,eAAe,CAAC;MACzD,IAAA0E,kBAAA,GAAsBnE,eAAe,CAAC;UAAEiE,SAAS,EAATA;QAAU,CAAC,CAAC;QAA5CxD,SAAS,GAAA0D,kBAAA,CAAT1D,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpC,IAAA6D,kBAAA,GAAsBpE,eAAe,CAAC;UAAEqE,gBAAgB,EAAE;QAAK,CAAC,CAAC;QAAzD5D,SAAS,GAAA2D,kBAAA,CAAT3D,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAA+D,kBAAA,GAAsBtE,eAAe,CAAC;UAAEuE,kBAAkB,EAAE;QAAK,CAAC,CAAC;QAA3D9D,SAAS,GAAA6D,kBAAA,CAAT7D,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,YAAY,EAAE,YAAM;IAC3Ba,EAAE,CAAC,4CAA4C,EAAE,YAAM;MACrD,IAAAiE,kBAAA,GAAsBxE,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAA+D,kBAAA,CAAT/D,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,8CAA8C,EAAE,YAAM;MACvD,IAAAkE,kBAAA,GAAsBzE,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAAgE,kBAAA,CAAThE,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,uBAAuB,EAAE,YAAM;MAChC,IAAAmE,kBAAA,GAAsB1E,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAAiE,kBAAA,CAATjE,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,wBAAwB,EAAE,YAAM;MACjC,IAAAoE,kBAAA,GAAsB3E,eAAe,CAAC;UACpCG,IAAI,EAAE;YAAEC,IAAI,EAAEtB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAEuB,IAAI,EAAEvB,EAAE,CAAC,CAAC,EAAE,CAAC;UAAE;QACzC,CAAC,CAAC;QAFM2B,SAAS,GAAAkE,kBAAA,CAATlE,SAAS;MAGjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFlB,QAAQ,CAAC,cAAc,EAAE,YAAM;EAC7B,IAAIkF,SAAS;EACb,IAAIjF,IAAI;EAERE,UAAU,CAAC,YAAM;IACf+E,SAAS,GAAG5F,IAAI,CAACK,EAAE,CAAC;MAAA,OAAO;QACzBwF,UAAU,EAAE,CACV;UAAEnC,CAAC,EAAE,CAAC;UAAEC,CAAC,EAAE;QAAE,CAAC,EACd;UAAED,CAAC,EAAE,CAAC;UAAEC,CAAC,EAAE;QAAE,CAAC,EACd;UAAED,CAAC,EAAE,CAAC;UAAEC,CAAC,EAAE;QAAE,CAAC,CACf;QACDmC,WAAW,EAAE;MACf,CAAC;IAAA,CAAC,CAAC;IACHnF,IAAI,GAAG,IAAAoF,0BAAY,EAACH,SAAS,CAAC;EAChC,CAAC,CAAC;EAEF,IAAM5E,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,MAAM,EAAK;IAClC,IAAMC,QAAQ,GAAG;MACf8E,IAAI,EAAElG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACdmG,EAAE,EAAEnG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACZgD,UAAU,EAAE,IAAAC,iBAAa,EAAC,CAAC;MAC3BnC,QAAQ,EAAEZ,IAAI,CAACK,EAAE,CAAC;IACpB,CAAC;IACD,IAAMG,KAAK,GAAAlB,aAAA,CAAAA,aAAA,KAAQ4B,QAAQ,GAAKD,MAAM,CAAE;IACxC,OAAO,IAAAK,iBAAM,eAAClD,MAAA,YAAAqC,aAAA,CAACE,IAAI,EAAKH,KAAQ,CAAC,CAAC;EACpC,CAAC;EAEDE,QAAQ,CAAC,WAAW,EAAE,YAAM;IAC1Ba,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAA2E,kBAAA,GAAsBlF,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAyE,kBAAA,CAATzE,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,yCAAyC,EAAE,YAAM;MAClDP,eAAe,CAAC,CAAC;MACjBU,MAAM,CAACkE,SAAS,CAAC,CAACnD,gBAAgB,CAAC,CAAC;IACtC,CAAC,CAAC;IAEFlB,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrCqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,CAAC/F,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1CgG,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAM,kBAAA,GAAsBpF,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAA2E,kBAAA,CAAT3E,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtCqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,CAAC/F,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1CgG,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAO,kBAAA,GAAsBrF,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAA4E,kBAAA,CAAT5E,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,sBAAsB,EAAE,YAAM;IACrCa,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpCqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,EAAE;QACdC,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAQ,kBAAA,GAAsBtF,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAA6E,kBAAA,CAAT7E,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpCqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,CAAC/F,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtBgG,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAS,kBAAA,GAAsBvF,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAA8E,kBAAA,CAAT9E,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAMiF,MAAM,GAAGC,KAAK,CAACT,IAAI,CAAC;QAAExG,MAAM,EAAE;MAAI,CAAC,EAAE,UAACkH,CAAC,EAAEC,CAAC;QAAA,OAAK7G,EAAE,CAAC6G,CAAC,EAAEA,CAAC,GAAGA,CAAC,CAAC;MAAA,EAAC;MAClEf,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAEW,MAAM;QAClBV,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAc,kBAAA,GAAsB5F,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAmF,kBAAA,CAATnF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,yCAAyC,EAAE,YAAM;MAClDqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,CAAC/F,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChDgG,WAAW,EAAE;MACf,CAAC,CAAC;MACF,IAAAe,kBAAA,GAAsB7F,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAAoF,kBAAA,CAATpF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,eAAe,EAAE,YAAM;IAC9Ba,EAAE,CAAC,0BAA0B,EAAE,YAAM;MACnC,IAAM4B,OAAO,GAAGnD,IAAI,CAACK,EAAE,CAAC,CAAC;MACzB,IAAAyG,kBAAA,GAAsB9F,eAAe,CAAC;UAAEmC,OAAO,EAAPA;QAAQ,CAAC,CAAC;QAA1C1B,SAAS,GAAAqF,kBAAA,CAATrF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,8BAA8B,EAAE,YAAM;MACvC,IAAM6B,WAAW,GAAGpD,IAAI,CAACK,EAAE,CAAC,CAAC;MAC7B,IAAA0G,kBAAA,GAAsB/F,eAAe,CAAC;UAAEoC,WAAW,EAAXA;QAAY,CAAC,CAAC;QAA9C3B,SAAS,GAAAsF,kBAAA,CAATtF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAM8B,UAAU,GAAGrD,IAAI,CAACK,EAAE,CAAC,CAAC;MAC5B,IAAA2G,kBAAA,GAAsBhG,eAAe,CAAC;UAAEqC,UAAU,EAAVA;QAAW,CAAC,CAAC;QAA7C5B,SAAS,GAAAuF,kBAAA,CAATvF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,yBAAyB,EAAE,YAAM;MAClC,IAAA0F,kBAAA,GAAsBjG,eAAe,CAAC;UAAE4B,QAAQ,EAAE;QAAK,CAAC,CAAC;QAAjDnB,SAAS,GAAAwF,kBAAA,CAATxF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAA2F,kBAAA,GAAsBlG,eAAe,CAAC;UAAE6B,WAAW,EAAE;QAAU,CAAC,CAAC;QAAzDpB,SAAS,GAAAyF,kBAAA,CAATzF,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,uBAAuB,EAAE,YAAM;MAChC,IAAA4F,kBAAA,GAAsBnG,eAAe,CAAC;UACpCkC,IAAI,EAAE,SAAS;UACfkE,WAAW,EAAE;QACf,CAAC,CAAC;QAHM3F,SAAS,GAAA0F,kBAAA,CAAT1F,SAAS;MAIjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlB,QAAQ,CAAC,YAAY,EAAE,YAAM;IAC3Ba,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAA8F,kBAAA,GAAsBrG,eAAe,CAAC;UAAEiF,EAAE,EAAE3D;QAAU,CAAC,CAAC;QAAhDb,SAAS,GAAA4F,kBAAA,CAAT5F,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,iCAAiC,EAAE,YAAM;MAC1C,IAAA+F,kBAAA,GAAsBtG,eAAe,CAAC;UACpCgF,IAAI,EAAElG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;UACdmG,EAAE,EAAEnG,EAAE,CAAC,CAAC,EAAE,CAAC;QACb,CAAC,CAAC;QAHM2B,SAAS,GAAA6F,kBAAA,CAAT7F,SAAS;MAIjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,gCAAgC,EAAE,YAAM;MACzC,IAAMuD,gBAAgB,GAAG,IAAA/B,iBAAa,EAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;MACxD,IAAAwE,kBAAA,GAAsBvG,eAAe,CAAC;UAAE8B,UAAU,EAAEgC;QAAiB,CAAC,CAAC;QAA/DrD,SAAS,GAAA8F,kBAAA,CAAT9F,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;IAEFL,EAAE,CAAC,sDAAsD,EAAE,YAAM;MAC/DqE,SAAS,CAACO,eAAe,CAAC;QACxBN,UAAU,EAAE,CAAC/F,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/B;MACF,CAAC,CAAC;MACF,IAAA0H,kBAAA,GAAsBxG,eAAe,CAAC,CAAC;QAA/BS,SAAS,GAAA+F,kBAAA,CAAT/F,SAAS;MACjBC,MAAM,CAACD,SAAS,CAACE,UAAU,CAAC,CAACC,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1,539 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.styles = exports.lineToolComponent = exports.lineTool = exports.lineBase = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
- var _react = _interopRequireDefault(require("react"));
16
- var _lodashEs = require("lodash-es");
17
- var _point = require("../point");
18
- var _plot = require("@pie-lib/plot");
19
- var _propTypes = _interopRequireDefault(require("prop-types"));
20
- var _styles = require("../styles");
21
- var _reactDom = _interopRequireDefault(require("react-dom"));
22
- var _markLabel = _interopRequireDefault(require("../../../mark-label"));
23
- var _renderUi = require("@pie-lib/render-ui");
24
- var _utils = require("../../../utils");
25
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
26
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
27
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
- var lineTool = exports.lineTool = function lineTool(type, Component) {
30
- return function () {
31
- return {
32
- type: type,
33
- Component: Component,
34
- addPoint: function addPoint(point, mark) {
35
- if (mark && (0, _utils.equalPoints)(mark.root, point)) {
36
- return mark;
37
- }
38
- if (!mark) {
39
- return {
40
- type: type,
41
- building: true,
42
- from: point
43
- };
44
- }
45
- if ((0, _utils.equalPoints)(point, mark.from)) {
46
- return _objectSpread({}, mark);
47
- }
48
- return _objectSpread(_objectSpread({}, mark), {}, {
49
- building: false,
50
- to: point
51
- });
52
- }
53
- };
54
- };
55
- };
56
- var lineToolComponent = exports.lineToolComponent = function lineToolComponent(Component) {
57
- var _LineToolComponent;
58
- return _LineToolComponent = /*#__PURE__*/function (_React$Component) {
59
- function LineToolComponent(props) {
60
- var _this;
61
- (0, _classCallCheck2["default"])(this, LineToolComponent);
62
- _this = _callSuper(this, LineToolComponent, [props]);
63
- (0, _defineProperty2["default"])(_this, "startDrag", function () {
64
- return _this.setState({
65
- mark: _objectSpread({}, _this.props.mark)
66
- });
67
- });
68
- (0, _defineProperty2["default"])(_this, "stopDrag", function () {
69
- var _this$props = _this.props,
70
- onChange = _this$props.onChange,
71
- mark = _this$props.mark;
72
- var update = _objectSpread({}, _this.state.mark);
73
- _this.setState({
74
- mark: undefined
75
- }, function () {
76
- var type = update.type;
77
- var shouldNotChange = type && (type === 'parabola' || type === 'sine' || type === 'absolute' || type === 'exponential') && (0, _utils.sameAxes)(update.from, update.to);
78
- if (!shouldNotChange && type && type === 'exponential' && update.from && update.to) {
79
- shouldNotChange = update.from.y === 0 || update.to.y === 0 || update.from.y * update.to.y < 0;
80
- }
81
- if (!(0, _lodashEs.isEqual)(mark, update) && !shouldNotChange) {
82
- onChange(mark, update);
83
- }
84
- });
85
- });
86
- (0, _defineProperty2["default"])(_this, "changeMark", function (_ref) {
87
- var from = _ref.from,
88
- to = _ref.to,
89
- middle = _ref.middle;
90
- var mark = _objectSpread(_objectSpread({}, _this.state.mark), {}, {
91
- from: from,
92
- to: to
93
- });
94
- if (middle) {
95
- mark = _objectSpread(_objectSpread({}, mark), {}, {
96
- middle: middle
97
- });
98
- }
99
- _this.setState({
100
- mark: mark
101
- });
102
- });
103
- (0, _defineProperty2["default"])(_this, "changeMarkProps", function (_ref2) {
104
- var from = _ref2.from,
105
- to = _ref2.to,
106
- middle = _ref2.middle;
107
- var _this$props2 = _this.props,
108
- onChange = _this$props2.onChange,
109
- mark = _this$props2.mark;
110
- var update = _objectSpread(_objectSpread({}, mark), _this.state.mark);
111
- if (from) {
112
- update = _objectSpread(_objectSpread({}, update), {}, {
113
- from: from
114
- });
115
- }
116
- if (to) {
117
- update = _objectSpread(_objectSpread({}, update), {}, {
118
- to: to
119
- });
120
- }
121
- if (middle) {
122
- update = _objectSpread(_objectSpread({}, update), {}, {
123
- middle: middle
124
- });
125
- }
126
- if (!(0, _lodashEs.isEqual)(mark, update)) {
127
- onChange(mark, update);
128
- }
129
- });
130
- _this.state = {};
131
- return _this;
132
- }
133
- (0, _inherits2["default"])(LineToolComponent, _React$Component);
134
- return (0, _createClass2["default"])(LineToolComponent, [{
135
- key: "render",
136
- value: function render() {
137
- var _this$props3 = this.props,
138
- graphProps = _this$props3.graphProps,
139
- onClick = _this$props3.onClick,
140
- labelNode = _this$props3.labelNode,
141
- labelModeEnabled = _this$props3.labelModeEnabled,
142
- coordinatesOnHover = _this$props3.coordinatesOnHover,
143
- gssLineData = _this$props3.gssLineData;
144
- var mark = this.state.mark ? this.state.mark : this.props.mark;
145
- var from = (0, _lodashEs.cloneDeep)(mark.from);
146
- var to = (0, _lodashEs.cloneDeep)(mark.to);
147
- var middle = (0, _lodashEs.cloneDeep)(mark.middle);
148
-
149
- // SET DISABLED
150
- // if it's a background mark, we need to force disable it
151
- if (from && mark.isBackground) {
152
- from.disabled = true;
153
- }
154
- if (to && mark.isBackground) {
155
- to.disabled = true;
156
- }
157
- if (middle && mark.isBackground) {
158
- middle.disabled = true;
159
- }
160
- return /*#__PURE__*/_react["default"].createElement(Component, {
161
- disabled: mark.disabled,
162
- coordinatesOnHover: coordinatesOnHover,
163
- correctness: mark.correctness,
164
- from: from,
165
- to: to,
166
- middle: middle,
167
- graphProps: graphProps,
168
- fill: mark && mark.fill,
169
- gssLineData: gssLineData,
170
- onChange: this.changeMark,
171
- changeMarkProps: this.changeMarkProps,
172
- onClick: onClick,
173
- onDragStart: this.startDrag,
174
- onDragStop: this.stopDrag,
175
- labelNode: labelNode,
176
- labelModeEnabled: labelModeEnabled
177
- });
178
- }
179
- }]);
180
- }(_react["default"].Component), (0, _defineProperty2["default"])(_LineToolComponent, "propTypes", _objectSpread(_objectSpread({}, _plot.types.ToolPropTypeFields), {}, {
181
- graphProps: _plot.types.GraphPropsType.isRequired
182
- })), _LineToolComponent;
183
- };
184
- var dragOpts = function dragOpts() {
185
- return {
186
- bounds: function bounds(props, _ref3) {
187
- var domain = _ref3.domain,
188
- range = _ref3.range;
189
- var area = _plot.utils.lineToArea(props.from, props.to);
190
- return _plot.utils.bounds(area, domain, range);
191
- },
192
- anchorPoint: function anchorPoint(props) {
193
- var from = props.from;
194
- return from;
195
- },
196
- fromDelta: function fromDelta(props, delta) {
197
- var from = props.from,
198
- to = props.to;
199
- return {
200
- from: _plot.utils.point(from).add(_plot.utils.point(delta)),
201
- to: _plot.utils.point(to).add(_plot.utils.point(delta))
202
- };
203
- }
204
- };
205
- };
206
- var lineBase = exports.lineBase = function lineBase(Comp, opts) {
207
- var DraggableComp = (0, _plot.gridDraggable)(dragOpts())(Comp);
208
- var FromPoint = opts && opts.from ? opts.from : _point.BasePoint;
209
- var ToPoint = opts && opts.to ? opts.to : _point.BasePoint;
210
- var LineBase = /*#__PURE__*/function (_React$Component2) {
211
- function LineBase() {
212
- var _this2;
213
- (0, _classCallCheck2["default"])(this, LineBase);
214
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
215
- args[_key] = arguments[_key];
216
- }
217
- _this2 = _callSuper(this, LineBase, [].concat(args));
218
- (0, _defineProperty2["default"])(_this2, "onChangePoint", function (point) {
219
- var _this2$props = _this2.props,
220
- middle = _this2$props.middle,
221
- onChange = _this2$props.onChange;
222
- var from = point.from,
223
- to = point.to;
224
-
225
- // because point.from.label and point.to.label can be different
226
- if (!(0, _utils.equalPoints)(from, to)) {
227
- if (middle) {
228
- point.middle = _objectSpread(_objectSpread({}, middle), (0, _utils.getMiddleOfTwoPoints)(from, to));
229
- }
230
- onChange(point);
231
- }
232
- });
233
- (0, _defineProperty2["default"])(_this2, "dragComp", function (_ref4) {
234
- var draggedFrom = _ref4.from,
235
- draggedTo = _ref4.to;
236
- var _this2$props2 = _this2.props,
237
- from = _this2$props2.from,
238
- to = _this2$props2.to,
239
- onChange = _this2$props2.onChange,
240
- middle = _this2$props2.middle;
241
- if (from.label) {
242
- draggedFrom.label = from.label;
243
- }
244
- if (to.label) {
245
- draggedTo.label = to.label;
246
- }
247
- var updated = {
248
- from: draggedFrom,
249
- to: draggedTo
250
- };
251
- if (middle) {
252
- updated.middle = _objectSpread(_objectSpread({}, middle), (0, _utils.getMiddleOfTwoPoints)(draggedFrom, draggedTo));
253
- }
254
- onChange(updated);
255
- });
256
- (0, _defineProperty2["default"])(_this2, "dragFrom", function (draggedFrom) {
257
- var _this2$props3 = _this2.props,
258
- from = _this2$props3.from,
259
- to = _this2$props3.to;
260
- if (from.label) {
261
- draggedFrom.label = from.label;
262
- }
263
- if (!(0, _utils.equalPoints)(draggedFrom, to)) {
264
- _this2.onChangePoint({
265
- from: draggedFrom,
266
- to: to
267
- });
268
- }
269
- });
270
- (0, _defineProperty2["default"])(_this2, "dragTo", function (draggedTo) {
271
- var _this2$props4 = _this2.props,
272
- from = _this2$props4.from,
273
- to = _this2$props4.to;
274
- if (to.label) {
275
- draggedTo.label = to.label;
276
- }
277
- if (!(0, _utils.equalPoints)(from, draggedTo)) {
278
- _this2.onChangePoint({
279
- from: from,
280
- to: draggedTo
281
- });
282
- }
283
- });
284
- (0, _defineProperty2["default"])(_this2, "labelChange", function (point, type) {
285
- var changeMarkProps = _this2.props.changeMarkProps;
286
- var update = _objectSpread({}, point);
287
- if (!point.label || (0, _lodashEs.isEmpty)(point.label)) {
288
- delete update.label;
289
- }
290
- changeMarkProps((0, _defineProperty2["default"])({}, type, update));
291
- });
292
- (0, _defineProperty2["default"])(_this2, "clickPoint", function (point, type, data) {
293
- var _this2$props5 = _this2.props,
294
- changeMarkProps = _this2$props5.changeMarkProps,
295
- disabled = _this2$props5.disabled,
296
- from = _this2$props5.from,
297
- to = _this2$props5.to,
298
- labelModeEnabled = _this2$props5.labelModeEnabled,
299
- onClick = _this2$props5.onClick;
300
- if (!labelModeEnabled) {
301
- onClick(point || data);
302
- return;
303
- }
304
- if (disabled) {
305
- return;
306
- }
307
- if (type === 'middle' && !point && from && to) {
308
- point = _objectSpread(_objectSpread({}, point), (0, _utils.getMiddleOfTwoPoints)(from, to));
309
- }
310
- changeMarkProps((0, _defineProperty2["default"])({
311
- from: from,
312
- to: to
313
- }, type, _objectSpread({
314
- label: ''
315
- }, point)));
316
- if (_this2.input[type]) {
317
- _this2.input[type].focus();
318
- }
319
- });
320
- // IMPORTANT, do not remove
321
- (0, _defineProperty2["default"])(_this2, "input", {});
322
- return _this2;
323
- }
324
- (0, _inherits2["default"])(LineBase, _React$Component2);
325
- return (0, _createClass2["default"])(LineBase, [{
326
- key: "render",
327
- value: function render() {
328
- var _this3 = this;
329
- var _this$props4 = this.props,
330
- coordinatesOnHover = _this$props4.coordinatesOnHover,
331
- graphProps = _this$props4.graphProps,
332
- fill = _this$props4.fill,
333
- gssLineData = _this$props4.gssLineData,
334
- onDragStart = _this$props4.onDragStart,
335
- onDragStop = _this$props4.onDragStop,
336
- from = _this$props4.from,
337
- to = _this$props4.to,
338
- middle = _this$props4.middle,
339
- disabled = _this$props4.disabled,
340
- correctness = _this$props4.correctness,
341
- onClick = _this$props4.onClick,
342
- labelNode = _this$props4.labelNode,
343
- labelModeEnabled = _this$props4.labelModeEnabled;
344
- var common = {
345
- graphProps: graphProps,
346
- fill: fill,
347
- onDragStart: onDragStart,
348
- onDragStop: onDragStop,
349
- disabled: disabled,
350
- correctness: correctness,
351
- onClick: onClick
352
- };
353
- if (gssLineData && gssLineData.selectedTool === 'solutionSet') {
354
- //removing dragging option for line if solution set is clicked.
355
- common = {
356
- graphProps: graphProps,
357
- fill: fill,
358
- disabled: disabled,
359
- correctness: correctness,
360
- onClick: onClick
361
- };
362
- }
363
- var angle = to ? _plot.trig.toDegrees(_plot.trig.angle(from, to)) : 0;
364
- var fromLabelNode = null;
365
- var toLabelNode = null;
366
- var lineLabelNode = null;
367
- if (labelNode) {
368
- if (from && Object.prototype.hasOwnProperty.call(from, 'label')) {
369
- fromLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
370
- inputRef: function inputRef(r) {
371
- return _this3.input.from = r;
372
- },
373
- disabled: !labelModeEnabled,
374
- mark: from,
375
- graphProps: graphProps,
376
- onChange: function onChange(label) {
377
- return _this3.labelChange(_objectSpread(_objectSpread({}, from), {}, {
378
- label: label
379
- }), 'from');
380
- }
381
- }), labelNode);
382
- }
383
- if (to && Object.prototype.hasOwnProperty.call(to, 'label')) {
384
- toLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
385
- inputRef: function inputRef(r) {
386
- return _this3.input.to = r;
387
- },
388
- disabled: !labelModeEnabled,
389
- mark: to,
390
- graphProps: graphProps,
391
- onChange: function onChange(label) {
392
- return _this3.labelChange(_objectSpread(_objectSpread({}, to), {}, {
393
- label: label
394
- }), 'to');
395
- }
396
- }), labelNode);
397
- }
398
- if (middle && Object.prototype.hasOwnProperty.call(middle, 'label')) {
399
- lineLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
400
- inputRef: function inputRef(r) {
401
- return _this3.input.middle = r;
402
- },
403
- disabled: !labelModeEnabled,
404
- mark: middle,
405
- graphProps: graphProps,
406
- onChange: function onChange(label) {
407
- return _this3.labelChange(_objectSpread(_objectSpread({}, middle), {}, {
408
- label: label
409
- }), 'middle');
410
- }
411
- }), labelNode);
412
- }
413
- }
414
- if (gssLineData && gssLineData.selectedTool === 'solutionSet') {
415
- //removing dragging feature of line and point if solution set is true.
416
- return /*#__PURE__*/_react["default"].createElement("g", null, to && /*#__PURE__*/_react["default"].createElement(DraggableComp, (0, _extends2["default"])({
417
- from: from,
418
- to: to,
419
- middle: middle
420
- }, common)), lineLabelNode, /*#__PURE__*/_react["default"].createElement(FromPoint, (0, _extends2["default"])({
421
- x: from.x,
422
- y: from.y,
423
- labelNode: labelNode,
424
- coordinatesOnHover: coordinatesOnHover
425
- }, common)), fromLabelNode, to && /*#__PURE__*/_react["default"].createElement(ToPoint, (0, _extends2["default"])({
426
- x: to.x,
427
- y: to.y,
428
- angle: angle //angle + 45}
429
- ,
430
- labelNode: labelNode,
431
- coordinatesOnHover: coordinatesOnHover
432
- }, common)), toLabelNode);
433
- } else {
434
- return /*#__PURE__*/_react["default"].createElement("g", null, to && /*#__PURE__*/_react["default"].createElement(DraggableComp, (0, _extends2["default"])({
435
- from: from,
436
- to: to,
437
- middle: middle,
438
- onDrag: this.dragComp
439
- }, common, {
440
- onClick: function onClick(data) {
441
- return _this3.clickPoint(middle, 'middle', data);
442
- }
443
- })), lineLabelNode, /*#__PURE__*/_react["default"].createElement(FromPoint, (0, _extends2["default"])({
444
- x: from.x,
445
- y: from.y,
446
- labelNode: labelNode,
447
- coordinatesOnHover: coordinatesOnHover,
448
- onDrag: this.dragFrom
449
- }, common, {
450
- onClick: function onClick(data) {
451
- return _this3.clickPoint(from, 'from', data);
452
- }
453
- })), fromLabelNode, to && /*#__PURE__*/_react["default"].createElement(ToPoint, (0, _extends2["default"])({
454
- x: to.x,
455
- y: to.y,
456
- angle: angle //angle + 45}
457
- ,
458
- labelNode: labelNode,
459
- coordinatesOnHover: coordinatesOnHover,
460
- onDrag: this.dragTo
461
- }, common, {
462
- onClick: function onClick(data) {
463
- return _this3.clickPoint(to, 'to', data);
464
- }
465
- })), toLabelNode);
466
- }
467
- }
468
- }]);
469
- }(_react["default"].Component);
470
- (0, _defineProperty2["default"])(LineBase, "propTypes", {
471
- coordinatesOnHover: _propTypes["default"].bool,
472
- graphProps: _plot.types.GraphPropsType,
473
- from: _plot.types.PointType,
474
- to: _plot.types.PointType,
475
- middle: _plot.types.PointType,
476
- onChange: _propTypes["default"].func,
477
- onDragStart: _propTypes["default"].func,
478
- onDragStop: _propTypes["default"].func,
479
- onClick: _propTypes["default"].func,
480
- correctness: _propTypes["default"].string,
481
- fill: _propTypes["default"].string,
482
- gssLineData: _propTypes["default"].object,
483
- disabled: _propTypes["default"].bool,
484
- labelNode: _propTypes["default"].object,
485
- labelModeEnabled: _propTypes["default"].bool,
486
- changeMarkProps: _propTypes["default"].func
487
- });
488
- return LineBase;
489
- };
490
- var styles = exports.styles = {
491
- line: function line() {
492
- return {
493
- fill: 'transparent',
494
- stroke: _renderUi.color.defaults.BLACK,
495
- strokeWidth: 4,
496
- transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',
497
- '&:hover': {
498
- strokeWidth: 6,
499
- stroke: _renderUi.color.defaults.BLACK
500
- }
501
- };
502
- },
503
- dashedLine: function dashedLine() {
504
- return {
505
- fill: 'transparent',
506
- stroke: _renderUi.color.defaults.BLACK,
507
- strokeWidth: 4,
508
- transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',
509
- '&:hover': {
510
- strokeWidth: 6,
511
- stroke: _renderUi.color.defaults.BLACK
512
- },
513
- strokeDasharray: '3,3'
514
- };
515
- },
516
- arrow: function arrow() {
517
- return {
518
- fill: _renderUi.color.defaults.SECONDARY
519
- };
520
- },
521
- disabledArrow: function disabledArrow() {
522
- return _objectSpread({}, (0, _styles.disabled)());
523
- },
524
- disabled: function disabled() {
525
- return _objectSpread(_objectSpread({}, (0, _styles.disabled)('stroke')), {}, {
526
- strokeWidth: 2
527
- });
528
- },
529
- correct: function correct(theme, key) {
530
- return _objectSpread({}, (0, _styles.correct)(key));
531
- },
532
- incorrect: function incorrect(theme, key) {
533
- return _objectSpread({}, (0, _styles.incorrect)(key));
534
- },
535
- missing: function missing(theme, key) {
536
- return _objectSpread({}, (0, _styles.missing)(key));
537
- }
538
- };
539
- //# sourceMappingURL=index.js.map