@archireport/react-native-svg-draw 1.3.0 → 2.0.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 (179) hide show
  1. package/README.md +73 -27
  2. package/lib/commonjs/components/DrawCore/CurrentAnimatedItem.js +55 -54
  3. package/lib/commonjs/components/DrawCore/CurrentAnimatedItem.js.map +1 -1
  4. package/lib/commonjs/components/DrawCore/CurrentAnimatedText.js +3 -14
  5. package/lib/commonjs/components/DrawCore/CurrentAnimatedText.js.map +1 -1
  6. package/lib/commonjs/components/DrawCore/DrawContext.js +18 -0
  7. package/lib/commonjs/components/DrawCore/DrawContext.js.map +1 -0
  8. package/lib/commonjs/components/DrawCore/DrawPad.js +1 -13
  9. package/lib/commonjs/components/DrawCore/DrawPad.js.map +1 -1
  10. package/lib/commonjs/components/DrawCore/DrawProvider.js +103 -0
  11. package/lib/commonjs/components/DrawCore/DrawProvider.js.map +1 -0
  12. package/lib/commonjs/components/DrawCore/Item.js +0 -15
  13. package/lib/commonjs/components/DrawCore/Item.js.map +1 -1
  14. package/lib/commonjs/components/DrawCore/index.js +47 -287
  15. package/lib/commonjs/components/DrawCore/index.js.map +1 -1
  16. package/lib/commonjs/components/DrawCore/useDrawHook.js +76 -0
  17. package/lib/commonjs/components/DrawCore/useDrawHook.js.map +1 -0
  18. package/lib/commonjs/components/DrawWithOptions/ArrowSvg.js +0 -6
  19. package/lib/commonjs/components/DrawWithOptions/ArrowSvg.js.map +1 -1
  20. package/lib/commonjs/components/DrawWithOptions/CancelSvg.js +0 -6
  21. package/lib/commonjs/components/DrawWithOptions/CancelSvg.js.map +1 -1
  22. package/lib/commonjs/components/DrawWithOptions/CircleSvg.js +0 -6
  23. package/lib/commonjs/components/DrawWithOptions/CircleSvg.js.map +1 -1
  24. package/lib/commonjs/components/DrawWithOptions/CloseSvg.js +0 -6
  25. package/lib/commonjs/components/DrawWithOptions/CloseSvg.js.map +1 -1
  26. package/lib/commonjs/components/DrawWithOptions/DoubleHeadSvg.js +0 -7
  27. package/lib/commonjs/components/DrawWithOptions/DoubleHeadSvg.js.map +1 -1
  28. package/lib/commonjs/components/DrawWithOptions/PenSvg.js +0 -6
  29. package/lib/commonjs/components/DrawWithOptions/PenSvg.js.map +1 -1
  30. package/lib/commonjs/components/DrawWithOptions/SendSvg.js +0 -7
  31. package/lib/commonjs/components/DrawWithOptions/SendSvg.js.map +1 -1
  32. package/lib/commonjs/components/DrawWithOptions/SliderSvg.js +31 -0
  33. package/lib/commonjs/components/DrawWithOptions/SliderSvg.js.map +1 -0
  34. package/lib/commonjs/components/DrawWithOptions/SquareSvg.js +0 -7
  35. package/lib/commonjs/components/DrawWithOptions/SquareSvg.js.map +1 -1
  36. package/lib/commonjs/components/DrawWithOptions/TextSvg.js +0 -7
  37. package/lib/commonjs/components/DrawWithOptions/TextSvg.js.map +1 -1
  38. package/lib/commonjs/components/DrawWithOptions/ThrashSvg.js +27 -10
  39. package/lib/commonjs/components/DrawWithOptions/ThrashSvg.js.map +1 -1
  40. package/lib/commonjs/components/DrawWithOptions/index.js +126 -93
  41. package/lib/commonjs/components/DrawWithOptions/index.js.map +1 -1
  42. package/lib/commonjs/components/{DrawCore → Slider}/ColorSlider.js +47 -78
  43. package/lib/commonjs/components/Slider/ColorSlider.js.map +1 -0
  44. package/lib/commonjs/components/Slider/Sliders.js +88 -0
  45. package/lib/commonjs/components/Slider/Sliders.js.map +1 -0
  46. package/lib/commonjs/components/{DrawCore → Slider}/StrokeSlider.js +38 -57
  47. package/lib/commonjs/components/Slider/StrokeSlider.js.map +1 -0
  48. package/lib/commonjs/components/Slider/sliderStyle.js +37 -0
  49. package/lib/commonjs/components/Slider/sliderStyle.js.map +1 -0
  50. package/lib/commonjs/index.js +7 -3
  51. package/lib/commonjs/index.js.map +1 -1
  52. package/lib/commonjs/types.d.js.map +1 -1
  53. package/lib/module/components/DrawCore/CurrentAnimatedItem.js +56 -43
  54. package/lib/module/components/DrawCore/CurrentAnimatedItem.js.map +1 -1
  55. package/lib/module/components/DrawCore/CurrentAnimatedText.js +3 -7
  56. package/lib/module/components/DrawCore/CurrentAnimatedText.js.map +1 -1
  57. package/lib/module/components/DrawCore/DrawContext.js +11 -0
  58. package/lib/module/components/DrawCore/DrawContext.js.map +1 -0
  59. package/lib/module/components/DrawCore/DrawPad.js +1 -5
  60. package/lib/module/components/DrawCore/DrawPad.js.map +1 -1
  61. package/lib/module/components/DrawCore/DrawProvider.js +94 -0
  62. package/lib/module/components/DrawCore/DrawProvider.js.map +1 -0
  63. package/lib/module/components/DrawCore/Item.js +0 -8
  64. package/lib/module/components/DrawCore/Item.js.map +1 -1
  65. package/lib/module/components/DrawCore/index.js +49 -271
  66. package/lib/module/components/DrawCore/index.js.map +1 -1
  67. package/lib/module/components/DrawCore/useDrawHook.js +69 -0
  68. package/lib/module/components/DrawCore/useDrawHook.js.map +1 -0
  69. package/lib/module/components/DrawWithOptions/ArrowSvg.js +0 -1
  70. package/lib/module/components/DrawWithOptions/ArrowSvg.js.map +1 -1
  71. package/lib/module/components/DrawWithOptions/CancelSvg.js +0 -1
  72. package/lib/module/components/DrawWithOptions/CancelSvg.js.map +1 -1
  73. package/lib/module/components/DrawWithOptions/CircleSvg.js +0 -1
  74. package/lib/module/components/DrawWithOptions/CircleSvg.js.map +1 -1
  75. package/lib/module/components/DrawWithOptions/CloseSvg.js +0 -1
  76. package/lib/module/components/DrawWithOptions/CloseSvg.js.map +1 -1
  77. package/lib/module/components/DrawWithOptions/DoubleHeadSvg.js +0 -1
  78. package/lib/module/components/DrawWithOptions/DoubleHeadSvg.js.map +1 -1
  79. package/lib/module/components/DrawWithOptions/PenSvg.js +0 -1
  80. package/lib/module/components/DrawWithOptions/PenSvg.js.map +1 -1
  81. package/lib/module/components/DrawWithOptions/SendSvg.js +0 -3
  82. package/lib/module/components/DrawWithOptions/SendSvg.js.map +1 -1
  83. package/lib/module/components/DrawWithOptions/SliderSvg.js +22 -0
  84. package/lib/module/components/DrawWithOptions/SliderSvg.js.map +1 -0
  85. package/lib/module/components/DrawWithOptions/SquareSvg.js +0 -1
  86. package/lib/module/components/DrawWithOptions/SquareSvg.js.map +1 -1
  87. package/lib/module/components/DrawWithOptions/TextSvg.js +0 -3
  88. package/lib/module/components/DrawWithOptions/TextSvg.js.map +1 -1
  89. package/lib/module/components/DrawWithOptions/ThrashSvg.js +27 -5
  90. package/lib/module/components/DrawWithOptions/ThrashSvg.js.map +1 -1
  91. package/lib/module/components/DrawWithOptions/index.js +126 -73
  92. package/lib/module/components/DrawWithOptions/index.js.map +1 -1
  93. package/lib/module/components/Slider/ColorSlider.js +95 -0
  94. package/lib/module/components/Slider/ColorSlider.js.map +1 -0
  95. package/lib/module/components/Slider/Sliders.js +79 -0
  96. package/lib/module/components/Slider/Sliders.js.map +1 -0
  97. package/lib/module/components/Slider/StrokeSlider.js +82 -0
  98. package/lib/module/components/Slider/StrokeSlider.js.map +1 -0
  99. package/lib/module/components/Slider/sliderStyle.js +29 -0
  100. package/lib/module/components/Slider/sliderStyle.js.map +1 -0
  101. package/lib/module/index.js +1 -0
  102. package/lib/module/index.js.map +1 -1
  103. package/lib/module/types.d.js.map +1 -1
  104. package/lib/typescript/components/DrawCore/CurrentAnimatedItem.d.ts +1 -1
  105. package/lib/typescript/components/DrawCore/CurrentAnimatedItem.d.ts.map +1 -0
  106. package/lib/typescript/components/DrawCore/CurrentAnimatedText.d.ts +1 -1
  107. package/lib/typescript/components/DrawCore/CurrentAnimatedText.d.ts.map +1 -0
  108. package/lib/typescript/components/DrawCore/DrawContext.d.ts +14 -0
  109. package/lib/typescript/components/DrawCore/DrawContext.d.ts.map +1 -0
  110. package/lib/typescript/components/DrawCore/DrawPad.d.ts +1 -1
  111. package/lib/typescript/components/DrawCore/DrawPad.d.ts.map +1 -0
  112. package/lib/typescript/components/DrawCore/DrawProvider.d.ts +6 -0
  113. package/lib/typescript/components/DrawCore/DrawProvider.d.ts.map +1 -0
  114. package/lib/typescript/components/DrawCore/Item.d.ts +1 -1
  115. package/lib/typescript/components/DrawCore/Item.d.ts.map +1 -0
  116. package/lib/typescript/components/DrawCore/index.d.ts +4 -11
  117. package/lib/typescript/components/DrawCore/index.d.ts.map +1 -0
  118. package/lib/typescript/components/DrawCore/useDrawHook.d.ts +18 -0
  119. package/lib/typescript/components/DrawCore/useDrawHook.d.ts.map +1 -0
  120. package/lib/typescript/components/DrawWithOptions/ArrowSvg.d.ts +1 -1
  121. package/lib/typescript/components/DrawWithOptions/ArrowSvg.d.ts.map +1 -0
  122. package/lib/typescript/components/DrawWithOptions/CancelSvg.d.ts +1 -1
  123. package/lib/typescript/components/DrawWithOptions/CancelSvg.d.ts.map +1 -0
  124. package/lib/typescript/components/DrawWithOptions/CircleSvg.d.ts +1 -1
  125. package/lib/typescript/components/DrawWithOptions/CircleSvg.d.ts.map +1 -0
  126. package/lib/typescript/components/DrawWithOptions/CloseSvg.d.ts +1 -1
  127. package/lib/typescript/components/DrawWithOptions/CloseSvg.d.ts.map +1 -0
  128. package/lib/typescript/components/DrawWithOptions/DoubleHeadSvg.d.ts +1 -1
  129. package/lib/typescript/components/DrawWithOptions/DoubleHeadSvg.d.ts.map +1 -0
  130. package/lib/typescript/components/DrawWithOptions/PenSvg.d.ts +1 -1
  131. package/lib/typescript/components/DrawWithOptions/PenSvg.d.ts.map +1 -0
  132. package/lib/typescript/components/DrawWithOptions/SendSvg.d.ts +1 -1
  133. package/lib/typescript/components/DrawWithOptions/SendSvg.d.ts.map +1 -0
  134. package/lib/typescript/components/DrawWithOptions/SliderSvg.d.ts +4 -0
  135. package/lib/typescript/components/DrawWithOptions/SliderSvg.d.ts.map +1 -0
  136. package/lib/typescript/components/DrawWithOptions/SquareSvg.d.ts +1 -1
  137. package/lib/typescript/components/DrawWithOptions/SquareSvg.d.ts.map +1 -0
  138. package/lib/typescript/components/DrawWithOptions/TextSvg.d.ts +1 -1
  139. package/lib/typescript/components/DrawWithOptions/TextSvg.d.ts.map +1 -0
  140. package/lib/typescript/components/DrawWithOptions/ThrashSvg.d.ts +1 -1
  141. package/lib/typescript/components/DrawWithOptions/ThrashSvg.d.ts.map +1 -0
  142. package/lib/typescript/components/DrawWithOptions/index.d.ts +4 -5
  143. package/lib/typescript/components/DrawWithOptions/index.d.ts.map +1 -0
  144. package/lib/typescript/components/Slider/ColorSlider.d.ts +8 -0
  145. package/lib/typescript/components/Slider/ColorSlider.d.ts.map +1 -0
  146. package/lib/typescript/components/Slider/Sliders.d.ts +8 -0
  147. package/lib/typescript/components/Slider/Sliders.d.ts.map +1 -0
  148. package/lib/typescript/components/Slider/StrokeSlider.d.ts +6 -0
  149. package/lib/typescript/components/Slider/StrokeSlider.d.ts.map +1 -0
  150. package/lib/typescript/components/Slider/sliderStyle.d.ts +28 -0
  151. package/lib/typescript/components/Slider/sliderStyle.d.ts.map +1 -0
  152. package/lib/typescript/index.d.ts +2 -0
  153. package/lib/typescript/index.d.ts.map +1 -0
  154. package/package.json +32 -33
  155. package/src/components/DrawCore/CurrentAnimatedItem.tsx +166 -106
  156. package/src/components/DrawCore/DrawContext.tsx +22 -0
  157. package/src/components/DrawCore/DrawPad.tsx +3 -10
  158. package/src/components/DrawCore/DrawProvider.tsx +122 -0
  159. package/src/components/DrawCore/index.tsx +938 -1132
  160. package/src/components/DrawCore/useDrawHook.tsx +70 -0
  161. package/src/components/DrawWithOptions/SliderSvg.tsx +24 -0
  162. package/src/components/DrawWithOptions/ThrashSvg.tsx +29 -2
  163. package/src/components/DrawWithOptions/index.tsx +199 -146
  164. package/src/components/Slider/ColorSlider.tsx +144 -0
  165. package/src/components/Slider/Sliders.tsx +75 -0
  166. package/src/components/Slider/StrokeSlider.tsx +104 -0
  167. package/src/components/Slider/sliderStyle.tsx +28 -0
  168. package/src/index.tsx +1 -0
  169. package/src/types.d.ts +35 -1
  170. package/lib/commonjs/components/DrawCore/ColorSlider.js.map +0 -1
  171. package/lib/commonjs/components/DrawCore/StrokeSlider.js.map +0 -1
  172. package/lib/module/components/DrawCore/ColorSlider.js +0 -119
  173. package/lib/module/components/DrawCore/ColorSlider.js.map +0 -1
  174. package/lib/module/components/DrawCore/StrokeSlider.js +0 -93
  175. package/lib/module/components/DrawCore/StrokeSlider.js.map +0 -1
  176. package/lib/typescript/components/DrawCore/ColorSlider.d.ts +0 -12
  177. package/lib/typescript/components/DrawCore/StrokeSlider.d.ts +0 -9
  178. package/src/components/DrawCore/ColorSlider.tsx +0 -169
  179. package/src/components/DrawCore/StrokeSlider.tsx +0 -117
@@ -1 +1 @@
1
- {"version":3,"names":["React","Svg","Defs","Path","G","Mask","Use","SvgComponent","props"],"sources":["TextSvg.tsx"],"sourcesContent":["import * as React from 'react';\nimport Svg, { SvgProps, Defs, Path, G, Mask, Use } from 'react-native-svg';\n\nfunction SvgComponent(props: SvgProps) {\n return (\n <Svg viewBox=\"0 0 28 28\" {...props}>\n <Defs>\n <Path\n id=\"prefix__a\"\n d=\"M23.333 3.5c.645 0 1.167.522 1.167 1.167v3.5a1.166 1.166 0 01-2.333 0V5.833h-7.001v16.333H17.5c.601 0 1.096.456 1.16 1.04l.007.127c0 .645-.523 1.167-1.167 1.167l-3.482-.001L14 24.5h-3.5a1.167 1.167 0 010-2.333l2.333-.001V5.833h-7v2.334a1.166 1.166 0 11-2.333 0v-3.5c0-.645.522-1.167 1.167-1.167z\"\n />\n </Defs>\n <G fill=\"none\" fillRule=\"evenodd\">\n <Mask id=\"prefix__b\" fill=\"#fff\">\n <Use xlinkHref=\"#prefix__a\" />\n </Mask>\n <Use fill=\"#000\" fillRule=\"nonzero\" xlinkHref=\"#prefix__a\" />\n <G fill=\"#FFF\" mask=\"url(#prefix__b)\">\n <Path d=\"M0 0h28v28H0z\" />\n </G>\n </G>\n </Svg>\n );\n}\n\nexport default SvgComponent;\n"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAOC,GAAP,IAAwBC,IAAxB,EAA8BC,IAA9B,EAAoCC,CAApC,EAAuCC,IAAvC,EAA6CC,GAA7C,QAAwD,kBAAxD;;AAEA,SAASC,YAAT,CAAsBC,KAAtB,EAAuC;EACrC,oBACE,oBAAC,GAAD;IAAK,OAAO,EAAC;EAAb,GAA6BA,KAA7B,gBACE,oBAAC,IAAD,qBACE,oBAAC,IAAD;IACE,EAAE,EAAC,WADL;IAEE,CAAC,EAAC;EAFJ,EADF,CADF,eAOE,oBAAC,CAAD;IAAG,IAAI,EAAC,MAAR;IAAe,QAAQ,EAAC;EAAxB,gBACE,oBAAC,IAAD;IAAM,EAAE,EAAC,WAAT;IAAqB,IAAI,EAAC;EAA1B,gBACE,oBAAC,GAAD;IAAK,SAAS,EAAC;EAAf,EADF,CADF,eAIE,oBAAC,GAAD;IAAK,IAAI,EAAC,MAAV;IAAiB,QAAQ,EAAC,SAA1B;IAAoC,SAAS,EAAC;EAA9C,EAJF,eAKE,oBAAC,CAAD;IAAG,IAAI,EAAC,MAAR;IAAe,IAAI,EAAC;EAApB,gBACE,oBAAC,IAAD;IAAM,CAAC,EAAC;EAAR,EADF,CALF,CAPF,CADF;AAmBD;;AAED,eAAeD,YAAf"}
1
+ {"version":3,"names":["React","Svg","Defs","Path","G","Mask","Use","SvgComponent","props"],"sourceRoot":"../../../../src","sources":["components/DrawWithOptions/TextSvg.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,IAAcC,IAAI,EAAEC,IAAI,EAAEC,CAAC,EAAEC,IAAI,EAAEC,GAAG,QAAQ,kBAAkB;AAE1E,SAASC,YAAY,CAACC,KAAe,EAAE;EACrC,oBACE,oBAAC,GAAG;IAAC,OAAO,EAAC;EAAW,GAAKA,KAAK,gBAChC,oBAAC,IAAI,qBACH,oBAAC,IAAI;IACH,EAAE,EAAC,WAAW;IACd,CAAC,EAAC;EAAyS,EAC3S,CACG,eACP,oBAAC,CAAC;IAAC,IAAI,EAAC,MAAM;IAAC,QAAQ,EAAC;EAAS,gBAC/B,oBAAC,IAAI;IAAC,EAAE,EAAC,WAAW;IAAC,IAAI,EAAC;EAAM,gBAC9B,oBAAC,GAAG;IAAC,SAAS,EAAC;EAAY,EAAG,CACzB,eACP,oBAAC,GAAG;IAAC,IAAI,EAAC,MAAM;IAAC,QAAQ,EAAC,SAAS;IAAC,SAAS,EAAC;EAAY,EAAG,eAC7D,oBAAC,CAAC;IAAC,IAAI,EAAC,MAAM;IAAC,IAAI,EAAC;EAAiB,gBACnC,oBAAC,IAAI;IAAC,CAAC,EAAC;EAAe,EAAG,CACxB,CACF,CACA;AAEV;AAEA,eAAeD,YAAY"}
@@ -1,15 +1,37 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
2
  import React from 'react';
4
3
  import Svg, { Path } from 'react-native-svg';
5
-
6
4
  function ThrashSvg(props) {
7
5
  return /*#__PURE__*/React.createElement(Svg, _extends({
8
- viewBox: "0 0 28 29"
6
+ width: "25",
7
+ height: "25",
8
+ viewBox: "0 0 25 25",
9
+ fill: "none"
9
10
  }, props), /*#__PURE__*/React.createElement(Path, {
10
- d: "M14 0a3.5 3.5 0 013.5 3.5l-.001 1.166h4.668c.601 0 1.096.456 1.16 1.04l.006.127c0 .645-.522 1.167-1.166 1.167l-1.168-.001L21 22.167a3.5 3.5 0 01-3.308 3.494l-.192.006H5.833a3.5 3.5 0 01-3.5-3.5V6.999L1.167 7a1.166 1.166 0 01-1.16-1.04L0 5.833c0-.644.522-1.166 1.167-1.166l4.666-.001V3.5A3.5 3.5 0 019.141.005L9.333 0zM6.982 7l-2.316-.001v15.168c0 .601.456 1.096 1.04 1.16l.127.006H17.5c.644 0 1.167-.522 1.167-1.166l-.001-15.168h-2.315L16.333 7h-.018l-9.298-.001L7 7h-.018zm2.351 3.5c.645 0 1.167.522 1.167 1.167v7a1.166 1.166 0 01-2.333 0v-7c0-.645.522-1.167 1.166-1.167zm4.667 0c.644 0 1.167.522 1.167 1.167v7a1.167 1.167 0 01-2.334 0v-7c0-.645.523-1.167 1.167-1.167zm0-8.167H9.333c-.644 0-1.166.523-1.166 1.167l-.001 1.166h7V3.5c0-.601-.454-1.096-1.039-1.16L14 2.333z"
11
+ d: "M3.5 6.5L5.5 6.5L21.5 6.5",
12
+ stroke: "currentColor",
13
+ "stroke-width": "2",
14
+ "stroke-linecap": "round",
15
+ "stroke-linejoin": "round"
16
+ }), /*#__PURE__*/React.createElement(Path, {
17
+ d: "M8.5 6.5V4.5C8.5 3.96957 8.71071 3.46086 9.08579 3.08579C9.46086 2.71071 9.96957 2.5 10.5 2.5L14.5 2.5C15.0304 2.5 15.5391 2.71071 15.9142 3.08579C16.2893 3.46086 16.5 3.96957 16.5 4.5V6.5M19.5 6.5L19.5 20.5C19.5 21.0304 19.2893 21.5391 18.9142 21.9142C18.5391 22.2893 18.0304 22.5 17.5 22.5L7.5 22.5C6.96957 22.5 6.46086 22.2893 6.08579 21.9142C5.71071 21.5391 5.5 21.0304 5.5 20.5L5.5 6.5L19.5 6.5Z",
18
+ stroke: "currentColor",
19
+ "stroke-width": "2",
20
+ "stroke-linecap": "round",
21
+ "stroke-linejoin": "round"
22
+ }), /*#__PURE__*/React.createElement(Path, {
23
+ d: "M10.5 11.5L10.5 17.5",
24
+ stroke: "currentColor",
25
+ "stroke-width": "2",
26
+ "stroke-linecap": "round",
27
+ "stroke-linejoin": "round"
28
+ }), /*#__PURE__*/React.createElement(Path, {
29
+ d: "M14.5 11.5L14.5 17.5",
30
+ stroke: "currentColor",
31
+ "stroke-width": "2",
32
+ "stroke-linecap": "round",
33
+ "stroke-linejoin": "round"
11
34
  }));
12
35
  }
13
-
14
36
  export default ThrashSvg;
15
37
  //# sourceMappingURL=ThrashSvg.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Svg","Path","ThrashSvg","props"],"sources":["ThrashSvg.tsx"],"sourcesContent":["import React from 'react';\nimport Svg, { SvgProps, Path } from 'react-native-svg';\n\nfunction ThrashSvg(props: SvgProps) {\n return (\n <Svg viewBox=\"0 0 28 29\" {...props}>\n <Path d=\"M14 0a3.5 3.5 0 013.5 3.5l-.001 1.166h4.668c.601 0 1.096.456 1.16 1.04l.006.127c0 .645-.522 1.167-1.166 1.167l-1.168-.001L21 22.167a3.5 3.5 0 01-3.308 3.494l-.192.006H5.833a3.5 3.5 0 01-3.5-3.5V6.999L1.167 7a1.166 1.166 0 01-1.16-1.04L0 5.833c0-.644.522-1.166 1.167-1.166l4.666-.001V3.5A3.5 3.5 0 019.141.005L9.333 0zM6.982 7l-2.316-.001v15.168c0 .601.456 1.096 1.04 1.16l.127.006H17.5c.644 0 1.167-.522 1.167-1.166l-.001-15.168h-2.315L16.333 7h-.018l-9.298-.001L7 7h-.018zm2.351 3.5c.645 0 1.167.522 1.167 1.167v7a1.166 1.166 0 01-2.333 0v-7c0-.645.522-1.167 1.166-1.167zm4.667 0c.644 0 1.167.522 1.167 1.167v7a1.167 1.167 0 01-2.334 0v-7c0-.645.523-1.167 1.167-1.167zm0-8.167H9.333c-.644 0-1.166.523-1.166 1.167l-.001 1.166h7V3.5c0-.601-.454-1.096-1.039-1.16L14 2.333z\" />\n </Svg>\n );\n}\n\nexport default ThrashSvg;\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,GAAP,IAAwBC,IAAxB,QAAoC,kBAApC;;AAEA,SAASC,SAAT,CAAmBC,KAAnB,EAAoC;EAClC,oBACE,oBAAC,GAAD;IAAK,OAAO,EAAC;EAAb,GAA6BA,KAA7B,gBACE,oBAAC,IAAD;IAAM,CAAC,EAAC;EAAR,EADF,CADF;AAKD;;AAED,eAAeD,SAAf"}
1
+ {"version":3,"names":["React","Svg","Path","ThrashSvg","props"],"sourceRoot":"../../../../src","sources":["components/DrawWithOptions/ThrashSvg.tsx"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,GAAG,IAAcC,IAAI,QAAQ,kBAAkB;AAEtD,SAASC,SAAS,CAACC,KAAe,EAAE;EAClC,oBACE,oBAAC,GAAG;IAAC,KAAK,EAAC,IAAI;IAAC,MAAM,EAAC,IAAI;IAAC,OAAO,EAAC,WAAW;IAAC,IAAI,EAAC;EAAM,GAAKA,KAAK,gBACnE,oBAAC,IAAI;IACH,CAAC,EAAC,2BAA2B;IAC7B,MAAM,EAAC,cAAc;IACrB,gBAAa,GAAG;IAChB,kBAAe,OAAO;IACtB,mBAAgB;EAAO,EACvB,eACF,oBAAC,IAAI;IACH,CAAC,EAAC,kZAAkZ;IACpZ,MAAM,EAAC,cAAc;IACrB,gBAAa,GAAG;IAChB,kBAAe,OAAO;IACtB,mBAAgB;EAAO,EACvB,eACF,oBAAC,IAAI;IACH,CAAC,EAAC,sBAAsB;IACxB,MAAM,EAAC,cAAc;IACrB,gBAAa,GAAG;IAChB,kBAAe,OAAO;IACtB,mBAAgB;EAAO,EACvB,eACF,oBAAC,IAAI;IACH,CAAC,EAAC,sBAAsB;IACxB,MAAM,EAAC,cAAc;IACrB,gBAAa,GAAG;IAChB,kBAAe,OAAO;IACtB,mBAAgB;EAAO,EACvB,CACE;AAEV;AAEA,eAAeD,SAAS"}
@@ -1,39 +1,49 @@
1
- import React, { useCallback, useEffect, useRef, useState } from 'react';
1
+ import React, { useCallback, useEffect, useState } from 'react';
2
2
  import { Pressable, View, StyleSheet, Keyboard } from 'react-native';
3
- import DrawCore from '../DrawCore';
4
- import PenSvg from './PenSvg';
5
3
  import DoubleHeadSvg from './DoubleHeadSvg';
6
4
  import CircleSvg from './CircleSvg';
7
5
  import SquareSvg from './SquareSvg';
8
6
  import ArrowSvg from './ArrowSvg';
9
7
  import TextSvg from './TextSvg';
10
8
  import CloseSvg from './CloseSvg';
9
+ import PenSvg from './PenSvg';
10
+ import useDrawHook from '../DrawCore/useDrawHook';
11
+ import Sliders from '../Slider/Sliders';
12
+ import DrawCore from '../DrawCore';
11
13
  import ThrashSvg from './ThrashSvg';
12
- import SendSvg from './SendSvg';
13
14
  import CancelSvg from './CancelSvg';
15
+ import SendSvg from './SendSvg';
14
16
  const styles = StyleSheet.create({
15
17
  container: {
16
- flex: 1,
17
- backgroundColor: '#000000'
18
+ flex: 1
19
+ },
20
+ actionButton: {
21
+ backgroundColor: 'grey',
22
+ padding: 10,
23
+ justifyContent: 'center',
24
+ alignContent: 'center',
25
+ alignItems: 'center',
26
+ height: 40,
27
+ borderRadius: 20,
28
+ width: 40
18
29
  },
19
30
  option: {
20
- width: 30,
21
- height: 30,
31
+ width: 22,
32
+ height: 20,
22
33
  justifyContent: 'center',
23
34
  alignItems: 'center',
24
- marginHorizontal: 4
35
+ marginHorizontal: 8
25
36
  },
26
37
  toolbar: {
27
38
  flexDirection: 'row',
28
- alignItems: 'center',
29
39
  justifyContent: 'space-between',
30
40
  paddingBottom: 30,
31
41
  paddingTop: 15,
32
42
  paddingHorizontal: 15
33
43
  },
34
44
  drawOptions: {
35
- flexDirection: 'row',
36
- alignItems: 'center'
45
+ flex: 1,
46
+ paddingHorizontal: 10
37
47
  },
38
48
  sendButton: {
39
49
  backgroundColor: '#3a6cff',
@@ -53,23 +63,21 @@ const styles = StyleSheet.create({
53
63
  paddingHorizontal: 20
54
64
  }
55
65
  });
56
- export default function DrawWithOptions(_ref) {
66
+ export default function DrawWithOption(_ref) {
57
67
  let {
58
- close,
59
- takeSnapshot,
60
68
  linearGradient,
61
69
  image,
62
- defaultDrawingMode = 'ellipse'
70
+ close,
71
+ takeSnapshot
63
72
  } = _ref;
64
- const drawRef = useRef(null);
65
- const [drawingMode, setDrawingMode] = useState(defaultDrawingMode);
66
- const [selectedItem, setSelectedItem] = useState(false);
67
- const [cancelEnabled, setCancelEnabled] = useState(false);
68
- const onPressSend = useCallback(() => {
69
- if (drawRef.current) {
70
- takeSnapshot === null || takeSnapshot === void 0 ? void 0 : takeSnapshot(drawRef.current.takeSnapshot());
71
- }
72
- }, [takeSnapshot]);
73
+ const {
74
+ itemIsSelected,
75
+ cancelLastAction,
76
+ takeSnapshot: takeSnapshotAction,
77
+ deleteSelectedItem,
78
+ dispatchDrawStates,
79
+ drawState
80
+ } = useDrawHook();
73
81
  const [showToolbar, setShowToolbar] = useState(true);
74
82
  useEffect(() => {
75
83
  const sudDidHide = Keyboard.addListener('keyboardDidHide', () => {
@@ -80,126 +88,171 @@ export default function DrawWithOptions(_ref) {
80
88
  if (event.endCoordinates.height > 100) {
81
89
  setShowToolbar(false);
82
90
  }
83
- }); // cleanup function
91
+ });
84
92
 
93
+ // cleanup function
85
94
  return () => {
86
95
  sudDidShow.remove();
87
96
  sudDidHide.remove();
88
97
  };
89
98
  }, []);
99
+ const takeSnapshotAndGetUri = useCallback(async () => {
100
+ if (takeSnapshot) {
101
+ takeSnapshot(takeSnapshotAction());
102
+ }
103
+ }, [takeSnapshot, takeSnapshotAction]);
90
104
  return /*#__PURE__*/React.createElement(View, {
91
105
  style: styles.container
92
106
  }, /*#__PURE__*/React.createElement(View, {
93
107
  style: styles.toolbar
108
+ }, /*#__PURE__*/React.createElement(View, {
109
+ style: styles.actionButton
94
110
  }, /*#__PURE__*/React.createElement(Pressable, {
95
- style: styles.option,
96
111
  onPress: close
97
112
  }, /*#__PURE__*/React.createElement(CloseSvg, {
98
113
  height: 20,
99
114
  width: 20,
100
115
  fill: "#ffffff"
101
- })), /*#__PURE__*/React.createElement(View, {
116
+ }))), /*#__PURE__*/React.createElement(View, {
102
117
  style: styles.drawOptions
118
+ }, /*#__PURE__*/React.createElement(View, {
119
+ style: {
120
+ flexDirection: 'row',
121
+ alignSelf: 'center',
122
+ borderWidth: 1,
123
+ borderColor: 'grey',
124
+ borderRadius: 25,
125
+ height: 40,
126
+ paddingHorizontal: 10,
127
+ paddingVertical: 10
128
+ }
103
129
  }, /*#__PURE__*/React.createElement(Pressable, {
104
130
  style: styles.option,
105
131
  onPress: () => {
106
- setDrawingMode('pen');
132
+ dispatchDrawStates({
133
+ type: 'SET_DRAWING_MODE',
134
+ drawingMode: 'pen'
135
+ });
107
136
  }
108
137
  }, /*#__PURE__*/React.createElement(PenSvg, {
109
138
  height: 23,
110
139
  width: 22,
111
140
  stroke: "#ffffff",
112
141
  strokeWidth: "2",
113
- opacity: drawingMode === 'pen' ? 1 : 0.5
142
+ opacity: drawState.drawingMode === 'pen' ? 1 : 0.5
114
143
  })), /*#__PURE__*/React.createElement(Pressable, {
115
144
  style: styles.option,
116
145
  onPress: () => {
117
- setDrawingMode('doubleHead');
146
+ dispatchDrawStates({
147
+ type: 'SET_DRAWING_MODE',
148
+ drawingMode: 'doubleHead'
149
+ });
118
150
  }
119
151
  }, /*#__PURE__*/React.createElement(DoubleHeadSvg, {
120
152
  height: 20,
121
153
  width: 20,
122
154
  fill: "#ffffff",
123
- opacity: drawingMode === 'doubleHead' ? 1 : 0.5
155
+ opacity: drawState.drawingMode === 'doubleHead' ? 1 : 0.5
124
156
  })), /*#__PURE__*/React.createElement(Pressable, {
125
157
  style: styles.option,
126
158
  onPress: () => {
127
- setDrawingMode('singleHead');
159
+ dispatchDrawStates({
160
+ type: 'SET_DRAWING_MODE',
161
+ drawingMode: 'singleHead'
162
+ });
128
163
  }
129
164
  }, /*#__PURE__*/React.createElement(ArrowSvg, {
130
165
  height: 23,
131
166
  width: 23,
132
167
  fill: "#ffffff",
133
- opacity: drawingMode === 'singleHead' ? 1 : 0.5
168
+ opacity: drawState.drawingMode === 'singleHead' ? 1 : 0.5
134
169
  })), /*#__PURE__*/React.createElement(Pressable, {
135
170
  style: styles.option,
136
171
  onPress: () => {
137
- setDrawingMode('rectangle');
172
+ dispatchDrawStates({
173
+ type: 'SET_DRAWING_MODE',
174
+ drawingMode: 'rectangle'
175
+ });
138
176
  }
139
177
  }, /*#__PURE__*/React.createElement(SquareSvg, {
140
178
  height: 27,
141
179
  width: 27,
142
180
  fill: "#ffffff",
143
- opacity: drawingMode === 'rectangle' ? 1 : 0.5
181
+ opacity: drawState.drawingMode === 'rectangle' ? 1 : 0.5
144
182
  })), /*#__PURE__*/React.createElement(Pressable, {
145
183
  style: styles.option,
146
184
  onPress: () => {
147
- setDrawingMode('ellipse');
185
+ dispatchDrawStates({
186
+ type: 'SET_DRAWING_MODE',
187
+ drawingMode: 'ellipse'
188
+ });
148
189
  }
149
190
  }, /*#__PURE__*/React.createElement(CircleSvg, {
150
191
  fill: "#ffffff",
151
192
  height: 26,
152
193
  width: 26,
153
- opacity: drawingMode === 'ellipse' ? 1 : 0.5
194
+ opacity: drawState.drawingMode === 'ellipse' ? 1 : 0.5
154
195
  })), /*#__PURE__*/React.createElement(Pressable, {
155
196
  style: styles.option,
156
197
  onPress: () => {
157
- setDrawingMode('text');
198
+ dispatchDrawStates({
199
+ type: 'SET_DRAWING_MODE',
200
+ drawingMode: 'text'
201
+ });
158
202
  }
159
203
  }, /*#__PURE__*/React.createElement(TextSvg, {
160
204
  height: 28,
161
205
  width: 28,
162
- fill: "#ffffff",
163
- opacity: drawingMode === 'text' ? 1 : 0.5
164
- })))), /*#__PURE__*/React.createElement(DrawCore, {
165
- ref: drawRef,
166
- drawingMode: drawingMode,
167
- image: image,
168
- linearGradient: linearGradient,
169
- onSelectionChange: setSelectedItem,
170
- onCancelChange: setCancelEnabled
171
- }), showToolbar ? /*#__PURE__*/React.createElement(View, {
206
+ color: 'grey',
207
+ opacity: drawState.drawingMode === 'text' ? 1 : 0.5
208
+ })))), /*#__PURE__*/React.createElement(View, {
209
+ style: styles.actionButton
210
+ }, /*#__PURE__*/React.createElement(Pressable, {
211
+ onPress: takeSnapshotAndGetUri
212
+ }, /*#__PURE__*/React.createElement(SendSvg, {
213
+ height: 20,
214
+ width: 20,
215
+ fill: "#ffffff"
216
+ })))), /*#__PURE__*/React.createElement(View, {
217
+ style: {
218
+ marginHorizontal: 0,
219
+ flex: 1
220
+ }
221
+ }, /*#__PURE__*/React.createElement(DrawCore, {
222
+ image: image
223
+ })), /*#__PURE__*/React.createElement(Sliders, {
224
+ linearGradient: linearGradient
225
+ }), /*#__PURE__*/React.createElement(View, {
226
+ style: {
227
+ height: 70
228
+ }
229
+ }, showToolbar ? /*#__PURE__*/React.createElement(View, {
172
230
  style: styles.bottomToolBar
173
- }, selectedItem ? /*#__PURE__*/React.createElement(Pressable, {
174
- style: styles.option,
175
- onPress: () => {
176
- var _drawRef$current;
177
-
178
- (_drawRef$current = drawRef.current) === null || _drawRef$current === void 0 ? void 0 : _drawRef$current.deleteSelectedItem();
231
+ }, itemIsSelected.value ? /*#__PURE__*/React.createElement(View, {
232
+ style: {
233
+ ...styles.actionButton,
234
+ marginRight: 10
179
235
  }
236
+ }, /*#__PURE__*/React.createElement(Pressable, {
237
+ style: styles.option,
238
+ onPress: deleteSelectedItem
180
239
  }, /*#__PURE__*/React.createElement(ThrashSvg, {
181
240
  width: 28,
182
241
  height: 28,
183
- fill: "white"
184
- })) : null, cancelEnabled ? /*#__PURE__*/React.createElement(Pressable, {
185
- style: styles.option,
186
- onPress: () => {
187
- var _drawRef$current2;
188
-
189
- (_drawRef$current2 = drawRef.current) === null || _drawRef$current2 === void 0 ? void 0 : _drawRef$current2.cancelLastAction();
242
+ color: "white",
243
+ strokeWidth: 2
244
+ }))) : null, drawState.cancelEnabled ? /*#__PURE__*/React.createElement(View, {
245
+ style: {
246
+ ...styles.actionButton
190
247
  }
248
+ }, /*#__PURE__*/React.createElement(Pressable, {
249
+ style: styles.option,
250
+ onPress: cancelLastAction
191
251
  }, /*#__PURE__*/React.createElement(CancelSvg, {
192
- width: 27,
193
- height: 27,
194
- stroke: "#ffffff",
252
+ width: 28,
253
+ height: 28,
254
+ color: 'grey',
195
255
  strokeWidth: 2
196
- })) : null, /*#__PURE__*/React.createElement(Pressable, {
197
- style: styles.sendButton,
198
- onPress: onPressSend
199
- }, /*#__PURE__*/React.createElement(SendSvg, {
200
- fill: "#fff",
201
- width: 20,
202
- height: 20
203
- }))) : null);
256
+ }))) : null) : null));
204
257
  }
205
258
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useRef","useState","Pressable","View","StyleSheet","Keyboard","DrawCore","PenSvg","DoubleHeadSvg","CircleSvg","SquareSvg","ArrowSvg","TextSvg","CloseSvg","ThrashSvg","SendSvg","CancelSvg","styles","create","container","flex","backgroundColor","option","width","height","justifyContent","alignItems","marginHorizontal","toolbar","flexDirection","paddingBottom","paddingTop","paddingHorizontal","drawOptions","sendButton","borderRadius","marginLeft","bottomToolBar","DrawWithOptions","close","takeSnapshot","linearGradient","image","defaultDrawingMode","drawRef","drawingMode","setDrawingMode","selectedItem","setSelectedItem","cancelEnabled","setCancelEnabled","onPressSend","current","showToolbar","setShowToolbar","sudDidHide","addListener","sudDidShow","event","endCoordinates","remove","deleteSelectedItem","cancelLastAction"],"sources":["index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n Pressable,\n View,\n StyleSheet,\n ViewProps,\n ImageRequireSource,\n ImageURISource,\n Keyboard,\n} from 'react-native';\nimport DrawCore from '../DrawCore';\nimport type { DrawItemType, DrawCoreProps } from '../../types';\nimport PenSvg from './PenSvg';\nimport DoubleHeadSvg from './DoubleHeadSvg';\nimport CircleSvg from './CircleSvg';\nimport SquareSvg from './SquareSvg';\nimport ArrowSvg from './ArrowSvg';\nimport TextSvg from './TextSvg';\nimport CloseSvg from './CloseSvg';\nimport ThrashSvg from './ThrashSvg';\nimport SendSvg from './SendSvg';\nimport CancelSvg from './CancelSvg';\n\nconst styles = StyleSheet.create({\n container: { flex: 1, backgroundColor: '#000000' },\n option: {\n width: 30,\n height: 30,\n justifyContent: 'center',\n alignItems: 'center',\n marginHorizontal: 4,\n },\n toolbar: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingBottom: 30,\n paddingTop: 15,\n paddingHorizontal: 15,\n },\n drawOptions: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n sendButton: {\n backgroundColor: '#3a6cff',\n width: 48,\n height: 48,\n borderRadius: 24,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 20,\n },\n bottomToolBar: {\n flexDirection: 'row',\n justifyContent: 'flex-end',\n alignItems: 'center',\n paddingBottom: 30,\n paddingTop: 30,\n paddingHorizontal: 20,\n },\n});\n\nexport default function DrawWithOptions({\n close,\n takeSnapshot,\n linearGradient,\n image,\n defaultDrawingMode = 'ellipse',\n}: {\n close?: () => void;\n takeSnapshot?: (snap: Promise<string | undefined>) => void;\n linearGradient: React.ComponentType<{ colors: any[] } & ViewProps>;\n image?: ImageRequireSource | ImageURISource;\n defaultDrawingMode?: DrawItemType;\n}) {\n const drawRef = useRef<DrawCoreProps>(null);\n\n const [drawingMode, setDrawingMode] =\n useState<DrawItemType>(defaultDrawingMode);\n\n const [selectedItem, setSelectedItem] = useState(false);\n\n const [cancelEnabled, setCancelEnabled] = useState(false);\n\n const onPressSend = useCallback(() => {\n if (drawRef.current) {\n takeSnapshot?.(drawRef.current.takeSnapshot());\n }\n }, [takeSnapshot]);\n\n const [showToolbar, setShowToolbar] = useState(true);\n\n useEffect(() => {\n const sudDidHide = Keyboard.addListener('keyboardDidHide', () => {\n setShowToolbar(true);\n });\n\n const sudDidShow = Keyboard.addListener('keyboardDidShow', (event) => {\n // avoid events triggered by InputAccessoryView\n if (event.endCoordinates.height > 100) {\n setShowToolbar(false);\n }\n });\n\n // cleanup function\n return () => {\n sudDidShow.remove();\n sudDidHide.remove();\n };\n }, []);\n\n return (\n <View style={styles.container}>\n <View style={styles.toolbar}>\n <Pressable style={styles.option} onPress={close}>\n <CloseSvg height={20} width={20} fill=\"#ffffff\" />\n </Pressable>\n <View style={styles.drawOptions}>\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('pen');\n }}\n >\n <PenSvg\n height={23}\n width={22}\n stroke=\"#ffffff\"\n strokeWidth=\"2\"\n opacity={drawingMode === 'pen' ? 1 : 0.5}\n />\n </Pressable>\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('doubleHead');\n }}\n >\n <DoubleHeadSvg\n height={20}\n width={20}\n fill=\"#ffffff\"\n opacity={drawingMode === 'doubleHead' ? 1 : 0.5}\n />\n </Pressable>\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('singleHead');\n }}\n >\n <ArrowSvg\n height={23}\n width={23}\n fill=\"#ffffff\"\n opacity={drawingMode === 'singleHead' ? 1 : 0.5}\n />\n </Pressable>\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('rectangle');\n }}\n >\n <SquareSvg\n height={27}\n width={27}\n fill=\"#ffffff\"\n opacity={drawingMode === 'rectangle' ? 1 : 0.5}\n />\n </Pressable>\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('ellipse');\n }}\n >\n <CircleSvg\n fill=\"#ffffff\"\n height={26}\n width={26}\n opacity={drawingMode === 'ellipse' ? 1 : 0.5}\n />\n </Pressable>\n\n <Pressable\n style={styles.option}\n onPress={() => {\n setDrawingMode('text');\n }}\n >\n <TextSvg\n height={28}\n width={28}\n fill=\"#ffffff\"\n opacity={drawingMode === 'text' ? 1 : 0.5}\n />\n </Pressable>\n </View>\n </View>\n <DrawCore\n ref={drawRef}\n drawingMode={drawingMode}\n image={image}\n linearGradient={linearGradient}\n onSelectionChange={setSelectedItem}\n onCancelChange={setCancelEnabled}\n />\n\n {showToolbar ? (\n <View style={styles.bottomToolBar}>\n {selectedItem ? (\n <Pressable\n style={styles.option}\n onPress={() => {\n drawRef.current?.deleteSelectedItem();\n }}\n >\n <ThrashSvg width={28} height={28} fill=\"white\" />\n </Pressable>\n ) : null}\n {cancelEnabled ? (\n <Pressable\n style={styles.option}\n onPress={() => {\n drawRef.current?.cancelLastAction();\n }}\n >\n <CancelSvg\n width={27}\n height={27}\n stroke=\"#ffffff\"\n strokeWidth={2}\n />\n </Pressable>\n ) : null}\n <Pressable style={styles.sendButton} onPress={onPressSend}>\n <SendSvg fill=\"#fff\" width={20} height={20} />\n </Pressable>\n </View>\n ) : null}\n </View>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useCallback","useEffect","useState","Pressable","View","StyleSheet","Keyboard","DoubleHeadSvg","CircleSvg","SquareSvg","ArrowSvg","TextSvg","CloseSvg","PenSvg","useDrawHook","Sliders","DrawCore","ThrashSvg","CancelSvg","SendSvg","styles","create","container","flex","actionButton","backgroundColor","padding","justifyContent","alignContent","alignItems","height","borderRadius","width","option","marginHorizontal","toolbar","flexDirection","paddingBottom","paddingTop","paddingHorizontal","drawOptions","sendButton","marginLeft","bottomToolBar","DrawWithOption","linearGradient","image","close","takeSnapshot","itemIsSelected","cancelLastAction","takeSnapshotAction","deleteSelectedItem","dispatchDrawStates","drawState","showToolbar","setShowToolbar","sudDidHide","addListener","sudDidShow","event","endCoordinates","remove","takeSnapshotAndGetUri","alignSelf","borderWidth","borderColor","paddingVertical","type","drawingMode","value","marginRight","cancelEnabled"],"sourceRoot":"../../../../src","sources":["components/DrawWithOptions/index.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC/D,SACEC,SAAS,EACTC,IAAI,EACJC,UAAU,EAIVC,QAAQ,QACH,cAAc;AACrB,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,QAAQ,MAAM,YAAY;AACjC,OAAOC,OAAO,MAAM,WAAW;AAC/B,OAAOC,QAAQ,MAAM,YAAY;AACjC,OAAOC,MAAM,MAAM,UAAU;AAC7B,OAAOC,WAAW,MAAM,yBAAyB;AACjD,OAAOC,OAAO,MAAM,mBAAmB;AACvC,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,OAAO,MAAM,WAAW;AAE/B,MAAMC,MAAM,GAAGf,UAAU,CAACgB,MAAM,CAAC;EAC/BC,SAAS,EAAE;IAAEC,IAAI,EAAE;EAAE,CAAC;EACtBC,YAAY,EAAE;IACZC,eAAe,EAAE,MAAM;IACvBC,OAAO,EAAE,EAAE;IACXC,cAAc,EAAE,QAAQ;IACxBC,YAAY,EAAE,QAAQ;IACtBC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,EAAE;IACVC,YAAY,EAAE,EAAE;IAChBC,KAAK,EAAE;EACT,CAAC;EACDC,MAAM,EAAE;IACND,KAAK,EAAE,EAAE;IACTF,MAAM,EAAE,EAAE;IACVH,cAAc,EAAE,QAAQ;IACxBE,UAAU,EAAE,QAAQ;IACpBK,gBAAgB,EAAE;EACpB,CAAC;EACDC,OAAO,EAAE;IACPC,aAAa,EAAE,KAAK;IACpBT,cAAc,EAAE,eAAe;IAC/BU,aAAa,EAAE,EAAE;IACjBC,UAAU,EAAE,EAAE;IACdC,iBAAiB,EAAE;EACrB,CAAC;EACDC,WAAW,EAAE;IACXjB,IAAI,EAAE,CAAC;IACPgB,iBAAiB,EAAE;EACrB,CAAC;EACDE,UAAU,EAAE;IACVhB,eAAe,EAAE,SAAS;IAC1BO,KAAK,EAAE,EAAE;IACTF,MAAM,EAAE,EAAE;IACVC,YAAY,EAAE,EAAE;IAChBF,UAAU,EAAE,QAAQ;IACpBF,cAAc,EAAE,QAAQ;IACxBe,UAAU,EAAE;EACd,CAAC;EACDC,aAAa,EAAE;IACbP,aAAa,EAAE,KAAK;IACpBT,cAAc,EAAE,UAAU;IAC1BE,UAAU,EAAE,QAAQ;IACpBQ,aAAa,EAAE,EAAE;IACjBC,UAAU,EAAE,EAAE;IACdC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAe,SAASK,cAAc,OAUnC;EAAA,IAVoC;IACrCC,cAAc;IACdC,KAAK;IACLC,KAAK;IACLC;EAMF,CAAC;EACC,MAAM;IACJC,cAAc;IACdC,gBAAgB;IAChBF,YAAY,EAAEG,kBAAkB;IAChCC,kBAAkB;IAClBC,kBAAkB;IAClBC;EACF,CAAC,GAAGxC,WAAW,EAAE;EAEjB,MAAM,CAACyC,WAAW,EAAEC,cAAc,CAAC,GAAGtD,QAAQ,CAAC,IAAI,CAAC;EAEpDD,SAAS,CAAC,MAAM;IACd,MAAMwD,UAAU,GAAGnD,QAAQ,CAACoD,WAAW,CAAC,iBAAiB,EAAE,MAAM;MAC/DF,cAAc,CAAC,IAAI,CAAC;IACtB,CAAC,CAAC;IAEF,MAAMG,UAAU,GAAGrD,QAAQ,CAACoD,WAAW,CACrC,iBAAiB,EAChBE,KAA6C,IAAK;MACjD;MACA,IAAIA,KAAK,CAACC,cAAc,CAAC/B,MAAM,GAAG,GAAG,EAAE;QACrC0B,cAAc,CAAC,KAAK,CAAC;MACvB;IACF,CAAC,CACF;;IAED;IACA,OAAO,MAAM;MACXG,UAAU,CAACG,MAAM,EAAE;MACnBL,UAAU,CAACK,MAAM,EAAE;IACrB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,qBAAqB,GAAG/D,WAAW,CAAC,YAAY;IACpD,IAAIgD,YAAY,EAAE;MAChBA,YAAY,CAACG,kBAAkB,EAAE,CAAC;IACpC;EACF,CAAC,EAAE,CAACH,YAAY,EAAEG,kBAAkB,CAAC,CAAC;EACtC,oBACE,oBAAC,IAAI;IAAC,KAAK,EAAE/B,MAAM,CAACE;EAAU,gBAC5B,oBAAC,IAAI;IAAC,KAAK,EAAEF,MAAM,CAACe;EAAQ,gBAC1B,oBAAC,IAAI;IAAC,KAAK,EAAEf,MAAM,CAACI;EAAa,gBAC/B,oBAAC,SAAS;IAAC,OAAO,EAAEuB;EAAM,gBACxB,oBAAC,QAAQ;IAAC,MAAM,EAAE,EAAG;IAAC,KAAK,EAAE,EAAG;IAAC,IAAI,EAAC;EAAS,EAAG,CACxC,CACP,eACP,oBAAC,IAAI;IAAC,KAAK,EAAE3B,MAAM,CAACoB;EAAY,gBAC9B,oBAAC,IAAI;IACH,KAAK,EAAE;MACLJ,aAAa,EAAE,KAAK;MACpB4B,SAAS,EAAE,QAAQ;MACnBC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAE,MAAM;MACnBnC,YAAY,EAAE,EAAE;MAChBD,MAAM,EAAE,EAAE;MACVS,iBAAiB,EAAE,EAAE;MACrB4B,eAAe,EAAE;IACnB;EAAE,gBAEF,oBAAC,SAAS;IACR,KAAK,EAAE/C,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,MAAM;IACL,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,MAAM,EAAC,SAAS;IAChB,WAAW,EAAC,GAAG;IACf,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,KAAK,GAAG,CAAC,GAAG;EAAI,EACnD,CACQ,eACZ,oBAAC,SAAS;IACR,KAAK,EAAEjD,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,aAAa;IACZ,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,IAAI,EAAC,SAAS;IACd,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,YAAY,GAAG,CAAC,GAAG;EAAI,EAC1D,CACQ,eACZ,oBAAC,SAAS;IACR,KAAK,EAAEjD,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,QAAQ;IACP,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,IAAI,EAAC,SAAS;IACd,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,YAAY,GAAG,CAAC,GAAG;EAAI,EAC1D,CACQ,eACZ,oBAAC,SAAS;IACR,KAAK,EAAEjD,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,SAAS;IACR,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,IAAI,EAAC,SAAS;IACd,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,WAAW,GAAG,CAAC,GAAG;EAAI,EACzD,CACQ,eACZ,oBAAC,SAAS;IACR,KAAK,EAAEjD,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,SAAS;IACR,IAAI,EAAC,SAAS;IACd,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,SAAS,GAAG,CAAC,GAAG;EAAI,EACvD,CACQ,eAEZ,oBAAC,SAAS;IACR,KAAK,EAAEjD,MAAM,CAACa,MAAO;IACrB,OAAO,EAAE,MAAM;MACboB,kBAAkB,CAAC;QACjBe,IAAI,EAAE,kBAAkB;QACxBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EAAE,gBAEF,oBAAC,OAAO;IACN,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,EAAG;IACV,KAAK,EAAE,MAAO;IACd,OAAO,EAAEf,SAAS,CAACe,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG;EAAI,EACpD,CACQ,CACP,CACF,eAEP,oBAAC,IAAI;IAAC,KAAK,EAAEjD,MAAM,CAACI;EAAa,gBAC/B,oBAAC,SAAS;IAAC,OAAO,EAAEuC;EAAsB,gBACxC,oBAAC,OAAO;IAAC,MAAM,EAAE,EAAG;IAAC,KAAK,EAAE,EAAG;IAAC,IAAI,EAAC;EAAS,EAAG,CACvC,CACP,CACF,eACP,oBAAC,IAAI;IACH,KAAK,EAAE;MACL7B,gBAAgB,EAAE,CAAC;MACnBX,IAAI,EAAE;IACR;EAAE,gBAEF,oBAAC,QAAQ;IAAC,KAAK,EAAEuB;EAAM,EAAG,CACrB,eAEP,oBAAC,OAAO;IAAC,cAAc,EAAED;EAAe,EAAG,eAE3C,oBAAC,IAAI;IAAC,KAAK,EAAE;MAAEf,MAAM,EAAE;IAAG;EAAE,GACzByB,WAAW,gBACV,oBAAC,IAAI;IAAC,KAAK,EAAEnC,MAAM,CAACuB;EAAc,GAC/BM,cAAc,CAACqB,KAAK,gBACnB,oBAAC,IAAI;IAAC,KAAK,EAAE;MAAE,GAAGlD,MAAM,CAACI,YAAY;MAAE+C,WAAW,EAAE;IAAG;EAAE,gBACvD,oBAAC,SAAS;IAAC,KAAK,EAAEnD,MAAM,CAACa,MAAO;IAAC,OAAO,EAAEmB;EAAmB,gBAC3D,oBAAC,SAAS;IACR,KAAK,EAAE,EAAG;IACV,MAAM,EAAE,EAAG;IACX,KAAK,EAAC,OAAO;IACb,WAAW,EAAE;EAAE,EACf,CACQ,CACP,GACL,IAAI,EACPE,SAAS,CAACkB,aAAa,gBACtB,oBAAC,IAAI;IACH,KAAK,EAAE;MACL,GAAGpD,MAAM,CAACI;IACZ;EAAE,gBAEF,oBAAC,SAAS;IAAC,KAAK,EAAEJ,MAAM,CAACa,MAAO;IAAC,OAAO,EAAEiB;EAAiB,gBACzD,oBAAC,SAAS;IACR,KAAK,EAAE,EAAG;IACV,MAAM,EAAE,EAAG;IACX,KAAK,EAAE,MAAO;IACd,WAAW,EAAE;EAAE,EACf,CACQ,CACP,GACL,IAAI,CACH,GACL,IAAI,CACH,CACF;AAEX"}
@@ -0,0 +1,95 @@
1
+ import { sliderStyle, TRACK_R } from './sliderStyle';
2
+ import React, { useCallback } from 'react';
3
+ import { View } from 'react-native';
4
+ import { PanGestureHandler } from 'react-native-gesture-handler';
5
+ import Animated, { runOnJS, useAnimatedGestureHandler, useAnimatedStyle, useDerivedValue, useSharedValue } from 'react-native-reanimated';
6
+ import useDrawHook from '../DrawCore/useDrawHook';
7
+ const gradientColors = ['hsl(0, 100%, 100%) 00%', 'hsl(0, 100%, 50%) 10%', 'hsl(45, 100%, 50%) 20%', 'hsl(90, 100%, 50%) 30%', 'hsl(135, 100%, 50%) 40%', 'hsl(180, 100%, 50%) 50%', 'hsl(225, 100%, 50%) 60%', 'hsl(270, 100%, 50%) 70%', 'hsl(315, 100%, 50%) 80%', 'hsl(360, 100%, 50%) 90%', 'hsl(0, 100%, 0%) 100% '];
8
+ const gradientStart = {
9
+ x: 0,
10
+ y: 0
11
+ };
12
+ const gradientEnd = {
13
+ x: 1,
14
+ y: 0
15
+ };
16
+ const ColorSlider = _ref => {
17
+ let {
18
+ linearGradient: LinearGradient
19
+ } = _ref;
20
+ const {
21
+ onColorStrokeChange,
22
+ color
23
+ } = useDrawHook();
24
+ const sliderWidth = useSharedValue(0);
25
+ const position = useDerivedValue(() => {
26
+ const hslRegExp = new RegExp(/hsl\(([\d.]+),\s*(\d+)%,\s*([\d.]+)%\)/);
27
+ const res = hslRegExp.exec(color.value);
28
+ const lum = res ? parseFloat(res[3] ?? '0') : 0;
29
+ const tint = res ? parseFloat(res[1] ?? '0') : 0;
30
+ if (lum > 50) {
31
+ return sliderWidth.value * 0.1 / 50 * (100 - lum);
32
+ }
33
+ if (lum < 50) {
34
+ return sliderWidth.value - sliderWidth.value * 0.1 / 50 * lum;
35
+ }
36
+ return Math.min(sliderWidth.value, Math.max(0, sliderWidth.value * 0.1 + tint * ((sliderWidth.value - sliderWidth.value * 0.2) / 360)));
37
+ }, [sliderWidth.value]);
38
+ const wrapperOnColorChange = () => {
39
+ onColorStrokeChange();
40
+ };
41
+ const onGestureEvent = useAnimatedGestureHandler({
42
+ onStart: (_ref2, ctx) => {
43
+ let {
44
+ x
45
+ } = _ref2;
46
+ ctx.startX = x;
47
+ },
48
+ onActive: (_ref3, _ref4) => {
49
+ let {
50
+ translationX
51
+ } = _ref3;
52
+ let {
53
+ startX
54
+ } = _ref4;
55
+ const slidePos = Math.min(sliderWidth.value, startX + translationX);
56
+ if (slidePos < 0.1 * sliderWidth.value) {
57
+ color.value = `hsl(0, 100%, ${Math.min(100, 100 - slidePos / (0.1 * sliderWidth.value) * 50).toFixed(10)}%)`;
58
+ } else if (slidePos > 0.9 * sliderWidth.value) {
59
+ color.value = `hsl(0, 100%, ${Math.max(50 - (slidePos - 0.9 * sliderWidth.value) / (0.1 * sliderWidth.value) * 50, 0).toFixed(10)}%)`;
60
+ } else {
61
+ color.value = `hsl(${(slidePos - sliderWidth.value * 0.1) / (sliderWidth.value - sliderWidth.value * 0.2) * 360}, 100%, 50%)`;
62
+ }
63
+ },
64
+ onEnd: () => {
65
+ runOnJS(wrapperOnColorChange)();
66
+ }
67
+ }, []);
68
+ const style = useAnimatedStyle(() => {
69
+ return {
70
+ transform: [{
71
+ translateX: position.value - TRACK_R
72
+ }]
73
+ };
74
+ }, [position.value]);
75
+ const onLayout = useCallback(event => {
76
+ sliderWidth.value = event.nativeEvent.layout.width;
77
+ }, [sliderWidth]);
78
+ return /*#__PURE__*/React.createElement(View, {
79
+ style: sliderStyle.container
80
+ }, /*#__PURE__*/React.createElement(PanGestureHandler, {
81
+ onGestureEvent: onGestureEvent
82
+ }, /*#__PURE__*/React.createElement(Animated.View, {
83
+ style: sliderStyle.container
84
+ }, /*#__PURE__*/React.createElement(LinearGradient, {
85
+ start: gradientStart,
86
+ end: gradientEnd,
87
+ colors: gradientColors,
88
+ onLayout: onLayout,
89
+ style: sliderStyle.track
90
+ }), /*#__PURE__*/React.createElement(Animated.View, {
91
+ style: [sliderStyle.thumb, style]
92
+ }))));
93
+ };
94
+ export default ColorSlider;
95
+ //# sourceMappingURL=ColorSlider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["sliderStyle","TRACK_R","React","useCallback","View","PanGestureHandler","Animated","runOnJS","useAnimatedGestureHandler","useAnimatedStyle","useDerivedValue","useSharedValue","useDrawHook","gradientColors","gradientStart","x","y","gradientEnd","ColorSlider","linearGradient","LinearGradient","onColorStrokeChange","color","sliderWidth","position","hslRegExp","RegExp","res","exec","value","lum","parseFloat","tint","Math","min","max","wrapperOnColorChange","onGestureEvent","onStart","ctx","startX","onActive","translationX","slidePos","toFixed","onEnd","style","transform","translateX","onLayout","event","nativeEvent","layout","width","container","track","thumb"],"sourceRoot":"../../../../src","sources":["components/Slider/ColorSlider.tsx"],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ import Animated, { useAnimatedStyle } from 'react-native-reanimated';
4
+ import StrokeSlider from './StrokeSlider';
5
+ import ColorSlider from './ColorSlider';
6
+ import useDrawHook from '../DrawCore/useDrawHook';
7
+ import { StyleSheet } from 'react-native';
8
+ const styles = StyleSheet.create({
9
+ strokeContainer: {
10
+ flexDirection: 'row',
11
+ marginTop: 20,
12
+ borderColor: 'grey',
13
+ borderRadius: 20,
14
+ height: 40,
15
+ borderWidth: 1,
16
+ marginHorizontal: 20,
17
+ maxWidth: 500,
18
+ alignSelf: 'center'
19
+ },
20
+ strokeWrapper: {
21
+ flex: 1,
22
+ height: 40,
23
+ marginHorizontal: 20,
24
+ justifyContent: 'center'
25
+ },
26
+ currentColorContainer: {
27
+ borderRadius: 20,
28
+ borderWidth: 1,
29
+ borderColor: '#E5E5E5',
30
+ justifyContent: 'center',
31
+ alignContent: 'center',
32
+ alignSelf: 'center',
33
+ padding: 4
34
+ },
35
+ currentColor: {
36
+ width: 20,
37
+ height: 20,
38
+ borderRadius: 10
39
+ },
40
+ colorContainer: {
41
+ flex: 1,
42
+ height: 40,
43
+ marginHorizontal: 20,
44
+ justifyContent: 'center'
45
+ }
46
+ });
47
+ const Sliders = _ref => {
48
+ let {
49
+ linearGradient
50
+ } = _ref;
51
+ const {
52
+ strokeWidth,
53
+ color
54
+ } = useDrawHook();
55
+ const styleStrokeColor = useAnimatedStyle(() => {
56
+ return {
57
+ borderWidth: strokeWidth.value,
58
+ borderColor: color.value
59
+ };
60
+ }, [strokeWidth, color]);
61
+ return /*#__PURE__*/React.createElement(View, {
62
+ style: styles.strokeContainer
63
+ }, /*#__PURE__*/React.createElement(View, {
64
+ style: styles.strokeWrapper
65
+ }, /*#__PURE__*/React.createElement(StrokeSlider, {
66
+ minValue: 2,
67
+ maxValue: 10
68
+ })), /*#__PURE__*/React.createElement(View, {
69
+ style: styles.currentColorContainer
70
+ }, /*#__PURE__*/React.createElement(Animated.View, {
71
+ style: [styles.currentColor, styleStrokeColor]
72
+ })), /*#__PURE__*/React.createElement(View, {
73
+ style: styles.colorContainer
74
+ }, /*#__PURE__*/React.createElement(ColorSlider, {
75
+ linearGradient: linearGradient
76
+ })));
77
+ };
78
+ export default Sliders;
79
+ //# sourceMappingURL=Sliders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","Animated","useAnimatedStyle","StrokeSlider","ColorSlider","useDrawHook","StyleSheet","styles","create","strokeContainer","flexDirection","marginTop","borderColor","borderRadius","height","borderWidth","marginHorizontal","maxWidth","alignSelf","strokeWrapper","flex","justifyContent","currentColorContainer","alignContent","padding","currentColor","width","colorContainer","Sliders","linearGradient","strokeWidth","color","styleStrokeColor","value"],"sourceRoot":"../../../../src","sources":["components/Slider/Sliders.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAmB,cAAc;AAC9C,OAAOC,QAAQ,IAAIC,gBAAgB,QAAQ,yBAAyB;AACpE,OAAOC,YAAY,MAAM,gBAAgB;AACzC,OAAOC,WAAW,MAAM,eAAe;AAEvC,OAAOC,WAAW,MAAM,yBAAyB;AACjD,SAASC,UAAU,QAAQ,cAAc;AAEzC,MAAMC,MAAM,GAAGD,UAAU,CAACE,MAAM,CAAC;EAC/BC,eAAe,EAAE;IACfC,aAAa,EAAE,KAAK;IACpBC,SAAS,EAAE,EAAE;IACbC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE,EAAE;IAChBC,MAAM,EAAE,EAAE;IACVC,WAAW,EAAE,CAAC;IACdC,gBAAgB,EAAE,EAAE;IACpBC,QAAQ,EAAE,GAAG;IACbC,SAAS,EAAE;EACb,CAAC;EACDC,aAAa,EAAE;IACbC,IAAI,EAAE,CAAC;IACPN,MAAM,EAAE,EAAE;IACVE,gBAAgB,EAAE,EAAE;IACpBK,cAAc,EAAE;EAClB,CAAC;EACDC,qBAAqB,EAAE;IACrBT,YAAY,EAAE,EAAE;IAChBE,WAAW,EAAE,CAAC;IACdH,WAAW,EAAE,SAAS;IACtBS,cAAc,EAAE,QAAQ;IACxBE,YAAY,EAAE,QAAQ;IACtBL,SAAS,EAAE,QAAQ;IACnBM,OAAO,EAAE;EACX,CAAC;EACDC,YAAY,EAAE;IAAEC,KAAK,EAAE,EAAE;IAAEZ,MAAM,EAAE,EAAE;IAAED,YAAY,EAAE;EAAG,CAAC;EACzDc,cAAc,EAAE;IACdP,IAAI,EAAE,CAAC;IACPN,MAAM,EAAE,EAAE;IACVE,gBAAgB,EAAE,EAAE;IACpBK,cAAc,EAAE;EAClB;AACF,CAAC,CAAC;AAEF,MAAMO,OAAO,GAAG,QAIV;EAAA,IAJW;IACfC;EAGF,CAAC;EACC,MAAM;IAAEC,WAAW;IAAEC;EAAM,CAAC,GAAG1B,WAAW,EAAE;EAE5C,MAAM2B,gBAAgB,GAAG9B,gBAAgB,CAAC,MAAM;IAC9C,OAAO;MACLa,WAAW,EAAEe,WAAW,CAAEG,KAAK;MAC/BrB,WAAW,EAAEmB,KAAK,CAAEE;IACtB,CAAC;EACH,CAAC,EAAE,CAACH,WAAW,EAAEC,KAAK,CAAC,CAAC;EAExB,oBACE,oBAAC,IAAI;IAAC,KAAK,EAAExB,MAAM,CAACE;EAAgB,gBAClC,oBAAC,IAAI;IAAC,KAAK,EAAEF,MAAM,CAACY;EAAc,gBAChC,oBAAC,YAAY;IAAC,QAAQ,EAAE,CAAE;IAAC,QAAQ,EAAE;EAAG,EAAG,CACtC,eACP,oBAAC,IAAI;IAAC,KAAK,EAAEZ,MAAM,CAACe;EAAsB,gBACxC,oBAAC,QAAQ,CAAC,IAAI;IAAC,KAAK,EAAE,CAACf,MAAM,CAACkB,YAAY,EAAEO,gBAAgB;EAAE,EAAG,CAC5D,eACP,oBAAC,IAAI;IAAC,KAAK,EAAEzB,MAAM,CAACoB;EAAe,gBACjC,oBAAC,WAAW;IAAC,cAAc,EAAEE;EAAe,EAAG,CAC1C,CACF;AAEX,CAAC;AAED,eAAeD,OAAO"}