@selfdecode/sd-component-library 4.0.80 → 4.0.81

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 (265) hide show
  1. package/lib/components/meters/outline-meter/interfaces.d.ts +1 -0
  2. package/lib/components/meters/smiley-meter-v2/interfaces.d.ts +1 -1
  3. package/lib/sd-component-library101.js +4 -4
  4. package/lib/sd-component-library106.js +1 -1
  5. package/lib/sd-component-library107.js +1 -1
  6. package/lib/sd-component-library112.js +1 -1
  7. package/lib/sd-component-library113.js +2 -2
  8. package/lib/sd-component-library115.js +1 -1
  9. package/lib/sd-component-library116.js +1 -1
  10. package/lib/sd-component-library121.js +2 -2
  11. package/lib/sd-component-library122.js +2 -2
  12. package/lib/sd-component-library124.js +1 -1
  13. package/lib/sd-component-library127.js +3 -3
  14. package/lib/sd-component-library128.js +1 -1
  15. package/lib/sd-component-library130.js +2 -2
  16. package/lib/sd-component-library15.js +1 -1
  17. package/lib/sd-component-library161.js +1 -1
  18. package/lib/sd-component-library162.js +1 -1
  19. package/lib/sd-component-library165.js +1 -1
  20. package/lib/sd-component-library166.js +4 -4
  21. package/lib/sd-component-library167.js +1 -1
  22. package/lib/sd-component-library190.js +3 -3
  23. package/lib/sd-component-library193.js +60 -2
  24. package/lib/sd-component-library193.js.map +1 -1
  25. package/lib/sd-component-library194.js +3 -30
  26. package/lib/sd-component-library194.js.map +1 -1
  27. package/lib/sd-component-library195.js +2 -599
  28. package/lib/sd-component-library195.js.map +1 -1
  29. package/lib/sd-component-library196.js +30 -60
  30. package/lib/sd-component-library196.js.map +1 -1
  31. package/lib/sd-component-library197.js +599 -3
  32. package/lib/sd-component-library197.js.map +1 -1
  33. package/lib/sd-component-library198.js +23 -55
  34. package/lib/sd-component-library198.js.map +1 -1
  35. package/lib/sd-component-library199.js +14 -20
  36. package/lib/sd-component-library199.js.map +1 -1
  37. package/lib/sd-component-library200.js +5 -19
  38. package/lib/sd-component-library200.js.map +1 -1
  39. package/lib/sd-component-library201.js +3 -3
  40. package/lib/sd-component-library201.js.map +1 -1
  41. package/lib/sd-component-library202.js +57 -5
  42. package/lib/sd-component-library202.js.map +1 -1
  43. package/lib/sd-component-library210.js +1 -1
  44. package/lib/sd-component-library216.js +46 -3
  45. package/lib/sd-component-library216.js.map +1 -1
  46. package/lib/sd-component-library217.js +3 -52
  47. package/lib/sd-component-library217.js.map +1 -1
  48. package/lib/sd-component-library218.js +41 -54
  49. package/lib/sd-component-library218.js.map +1 -1
  50. package/lib/sd-component-library219.js +16 -3
  51. package/lib/sd-component-library219.js.map +1 -1
  52. package/lib/sd-component-library220.js +64 -45
  53. package/lib/sd-component-library220.js.map +1 -1
  54. package/lib/sd-component-library221.js +3 -16
  55. package/lib/sd-component-library221.js.map +1 -1
  56. package/lib/sd-component-library222.js +3 -26
  57. package/lib/sd-component-library222.js.map +1 -1
  58. package/lib/sd-component-library223.js +26 -3
  59. package/lib/sd-component-library223.js.map +1 -1
  60. package/lib/sd-component-library225.js +129 -19
  61. package/lib/sd-component-library225.js.map +1 -1
  62. package/lib/sd-component-library226.js +42 -19
  63. package/lib/sd-component-library226.js.map +1 -1
  64. package/lib/sd-component-library227.js +47 -28
  65. package/lib/sd-component-library227.js.map +1 -1
  66. package/lib/sd-component-library228.js +7 -32
  67. package/lib/sd-component-library228.js.map +1 -1
  68. package/lib/sd-component-library229.js +3 -3
  69. package/lib/sd-component-library229.js.map +1 -1
  70. package/lib/sd-component-library23.js +2 -2
  71. package/lib/sd-component-library230.js +19 -129
  72. package/lib/sd-component-library230.js.map +1 -1
  73. package/lib/sd-component-library231.js +19 -42
  74. package/lib/sd-component-library231.js.map +1 -1
  75. package/lib/sd-component-library232.js +28 -47
  76. package/lib/sd-component-library232.js.map +1 -1
  77. package/lib/sd-component-library233.js +32 -7
  78. package/lib/sd-component-library233.js.map +1 -1
  79. package/lib/sd-component-library234.js +46 -62
  80. package/lib/sd-component-library234.js.map +1 -1
  81. package/lib/sd-component-library235.js +73 -41
  82. package/lib/sd-component-library235.js.map +1 -1
  83. package/lib/sd-component-library236.js +64 -13
  84. package/lib/sd-component-library236.js.map +1 -1
  85. package/lib/sd-component-library237.js +43 -2
  86. package/lib/sd-component-library237.js.map +1 -1
  87. package/lib/sd-component-library238.js +13 -2
  88. package/lib/sd-component-library238.js.map +1 -1
  89. package/lib/sd-component-library239.js +29 -21
  90. package/lib/sd-component-library239.js.map +1 -1
  91. package/lib/sd-component-library24.js +2 -2
  92. package/lib/sd-component-library240.js +3 -109
  93. package/lib/sd-component-library240.js.map +1 -1
  94. package/lib/sd-component-library241.js +20 -43
  95. package/lib/sd-component-library241.js.map +1 -1
  96. package/lib/sd-component-library242.js +3 -24
  97. package/lib/sd-component-library242.js.map +1 -1
  98. package/lib/sd-component-library243.js +323 -51
  99. package/lib/sd-component-library243.js.map +1 -1
  100. package/lib/sd-component-library244.js +5 -48
  101. package/lib/sd-component-library244.js.map +1 -1
  102. package/lib/sd-component-library245.js +2 -75
  103. package/lib/sd-component-library245.js.map +1 -1
  104. package/lib/sd-component-library246.js +18 -38
  105. package/lib/sd-component-library246.js.map +1 -1
  106. package/lib/sd-component-library247.js +18 -25
  107. package/lib/sd-component-library247.js.map +1 -1
  108. package/lib/sd-component-library248.js +21 -21
  109. package/lib/sd-component-library248.js.map +1 -1
  110. package/lib/sd-component-library249.js +109 -20
  111. package/lib/sd-component-library249.js.map +1 -1
  112. package/lib/sd-component-library25.js +1 -1
  113. package/lib/sd-component-library250.js +47 -2
  114. package/lib/sd-component-library250.js.map +1 -1
  115. package/lib/sd-component-library251.js +22 -323
  116. package/lib/sd-component-library251.js.map +1 -1
  117. package/lib/sd-component-library252.js +53 -5
  118. package/lib/sd-component-library252.js.map +1 -1
  119. package/lib/sd-component-library253.js +21 -25
  120. package/lib/sd-component-library253.js.map +1 -1
  121. package/lib/sd-component-library254.js +22 -3
  122. package/lib/sd-component-library254.js.map +1 -1
  123. package/lib/sd-component-library255.js +40 -23
  124. package/lib/sd-component-library255.js.map +1 -1
  125. package/lib/sd-component-library256.js +27 -3
  126. package/lib/sd-component-library256.js.map +1 -1
  127. package/lib/sd-component-library257.js +30 -25
  128. package/lib/sd-component-library257.js.map +1 -1
  129. package/lib/sd-component-library258.js +50 -21
  130. package/lib/sd-component-library258.js.map +1 -1
  131. package/lib/sd-component-library259.js +131 -30
  132. package/lib/sd-component-library259.js.map +1 -1
  133. package/lib/sd-component-library260.js +62 -39
  134. package/lib/sd-component-library260.js.map +1 -1
  135. package/lib/sd-component-library261.js +62 -117
  136. package/lib/sd-component-library261.js.map +1 -1
  137. package/lib/sd-component-library262.js +30 -74
  138. package/lib/sd-component-library262.js.map +1 -1
  139. package/lib/sd-component-library263.js +15 -70
  140. package/lib/sd-component-library263.js.map +1 -1
  141. package/lib/sd-component-library264.js +120 -25
  142. package/lib/sd-component-library264.js.map +1 -1
  143. package/lib/sd-component-library265.js +117 -16
  144. package/lib/sd-component-library265.js.map +1 -1
  145. package/lib/sd-component-library266.js +10 -125
  146. package/lib/sd-component-library266.js.map +1 -1
  147. package/lib/sd-component-library267.js +39 -111
  148. package/lib/sd-component-library267.js.map +1 -1
  149. package/lib/sd-component-library268.js +9 -10
  150. package/lib/sd-component-library268.js.map +1 -1
  151. package/lib/sd-component-library269.js +49 -48
  152. package/lib/sd-component-library269.js.map +1 -1
  153. package/lib/sd-component-library270.js +89 -8
  154. package/lib/sd-component-library270.js.map +1 -1
  155. package/lib/sd-component-library271.js +89 -48
  156. package/lib/sd-component-library271.js.map +1 -1
  157. package/lib/sd-component-library272.js +48 -89
  158. package/lib/sd-component-library272.js.map +1 -1
  159. package/lib/sd-component-library273.js +2 -92
  160. package/lib/sd-component-library273.js.map +1 -1
  161. package/lib/sd-component-library274.js +2 -49
  162. package/lib/sd-component-library274.js.map +1 -1
  163. package/lib/sd-component-library278.js +2 -2
  164. package/lib/sd-component-library279.js +2 -2
  165. package/lib/sd-component-library284.js +4 -4
  166. package/lib/sd-component-library285.js +2 -3
  167. package/lib/sd-component-library285.js.map +1 -1
  168. package/lib/sd-component-library286.js +8 -3
  169. package/lib/sd-component-library286.js.map +1 -1
  170. package/lib/sd-component-library287.js +328 -3
  171. package/lib/sd-component-library287.js.map +1 -1
  172. package/lib/sd-component-library288.js +51 -2
  173. package/lib/sd-component-library288.js.map +1 -1
  174. package/lib/sd-component-library289.js +3 -8
  175. package/lib/sd-component-library289.js.map +1 -1
  176. package/lib/sd-component-library290.js +3 -328
  177. package/lib/sd-component-library290.js.map +1 -1
  178. package/lib/sd-component-library291.js +3 -51
  179. package/lib/sd-component-library291.js.map +1 -1
  180. package/lib/sd-component-library292.js +2 -58
  181. package/lib/sd-component-library292.js.map +1 -1
  182. package/lib/sd-component-library293.js +76 -25
  183. package/lib/sd-component-library293.js.map +1 -1
  184. package/lib/sd-component-library294.js +92 -50
  185. package/lib/sd-component-library294.js.map +1 -1
  186. package/lib/sd-component-library295.js +50 -90
  187. package/lib/sd-component-library295.js.map +1 -1
  188. package/lib/sd-component-library296.js +9 -25
  189. package/lib/sd-component-library296.js.map +1 -1
  190. package/lib/sd-component-library297.js +5 -35
  191. package/lib/sd-component-library297.js.map +1 -1
  192. package/lib/sd-component-library298.js +53 -5
  193. package/lib/sd-component-library298.js.map +1 -1
  194. package/lib/sd-component-library299.js +2 -4
  195. package/lib/sd-component-library299.js.map +1 -1
  196. package/lib/sd-component-library300.js +2 -9
  197. package/lib/sd-component-library300.js.map +1 -1
  198. package/lib/sd-component-library301.js +8 -4
  199. package/lib/sd-component-library301.js.map +1 -1
  200. package/lib/sd-component-library302.js +5 -4
  201. package/lib/sd-component-library302.js.map +1 -1
  202. package/lib/sd-component-library303.js +4 -19
  203. package/lib/sd-component-library303.js.map +1 -1
  204. package/lib/sd-component-library304.js +19 -3
  205. package/lib/sd-component-library304.js.map +1 -1
  206. package/lib/sd-component-library305.js +3 -34
  207. package/lib/sd-component-library305.js.map +1 -1
  208. package/lib/sd-component-library306.js +6 -2
  209. package/lib/sd-component-library306.js.map +1 -1
  210. package/lib/sd-component-library307.js +56 -75
  211. package/lib/sd-component-library307.js.map +1 -1
  212. package/lib/sd-component-library308.js +24 -91
  213. package/lib/sd-component-library308.js.map +1 -1
  214. package/lib/sd-component-library309.js +24 -52
  215. package/lib/sd-component-library309.js.map +1 -1
  216. package/lib/sd-component-library310.js +35 -9
  217. package/lib/sd-component-library310.js.map +1 -1
  218. package/lib/sd-component-library311.js +51 -5
  219. package/lib/sd-component-library311.js.map +1 -1
  220. package/lib/sd-component-library312.js +89 -49
  221. package/lib/sd-component-library312.js.map +1 -1
  222. package/lib/sd-component-library313.js +4 -28
  223. package/lib/sd-component-library313.js.map +1 -1
  224. package/lib/sd-component-library314.js +4 -21
  225. package/lib/sd-component-library314.js.map +1 -1
  226. package/lib/sd-component-library315.js +34 -6
  227. package/lib/sd-component-library315.js.map +1 -1
  228. package/lib/sd-component-library316.js +28 -89
  229. package/lib/sd-component-library316.js.map +1 -1
  230. package/lib/sd-component-library317.js +21 -32
  231. package/lib/sd-component-library317.js.map +1 -1
  232. package/lib/sd-component-library318.js +90 -2
  233. package/lib/sd-component-library318.js.map +1 -1
  234. package/lib/sd-component-library319.js +32 -2
  235. package/lib/sd-component-library319.js.map +1 -1
  236. package/lib/sd-component-library5.js +1 -1
  237. package/lib/sd-component-library59.js +1 -1
  238. package/lib/sd-component-library6.js +1 -1
  239. package/lib/sd-component-library60.js +1 -1
  240. package/lib/sd-component-library69.js +2 -2
  241. package/lib/sd-component-library70.js +3 -3
  242. package/lib/sd-component-library71.js +1 -1
  243. package/lib/sd-component-library72.js +1 -1
  244. package/lib/sd-component-library74.js +1 -1
  245. package/lib/sd-component-library75.js +1 -1
  246. package/lib/sd-component-library80.js +1 -1
  247. package/lib/sd-component-library81.js +42 -41
  248. package/lib/sd-component-library81.js.map +1 -1
  249. package/lib/sd-component-library82.js +1 -1
  250. package/lib/sd-component-library83.js +1 -1
  251. package/lib/sd-component-library84.js +41 -40
  252. package/lib/sd-component-library84.js.map +1 -1
  253. package/lib/sd-component-library87.js +33 -32
  254. package/lib/sd-component-library87.js.map +1 -1
  255. package/lib/sd-component-library89.js +39 -38
  256. package/lib/sd-component-library89.js.map +1 -1
  257. package/lib/sd-component-library93.js +2 -2
  258. package/lib/sd-component-library94.js +3 -3
  259. package/lib/sd-component-library95.js +2 -2
  260. package/lib/sd-component-library96.js +3 -3
  261. package/lib/sd-component-library97.js +2 -2
  262. package/lib/sd-component-library99.js +4 -4
  263. package/package.json +1 -1
  264. package/lib/favicon.ico +0 -0
  265. package/lib/index.html +0 -35
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library230.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-range/outline-meter-range.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n inValueHigherThanRange,\n isValueInRange,\n} from \"../../utils\";\nimport { BaseOutlineArc } from \"../base-outline-arc\";\nimport { OutlineMeterLabelPointer } from \"../outline-meter-label-pointer\";\nimport { OutlineMeterRangeProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterRange = React.forwardRef<SVGCircleElement, Props>(\n (props, pointRef) => {\n const {\n start,\n end,\n color,\n bounds,\n diameter,\n arc,\n distanceBetweenRanges,\n totalRanges,\n value,\n gaugeWidth,\n segmented,\n idx,\n pointStrokeWidth,\n innerPointRadius,\n distanceFromRanges,\n label,\n labelPosition,\n hideLabels,\n connected,\n } = props;\n\n const grey = \"#CCD0DB\";\n\n /* Arc value (in degrees) used for all ranges. */\n const arcForRanges = arc - (totalRanges - 1) * distanceBetweenRanges;\n\n /* Arc value for the current range. */\n const rangeArc = arcForRanges * (end - start);\n const valueWithinRange = isValueInRange(value, start, end, bounds);\n\n const arcStart = (360 - arc) / 2; // deg\n\n const radius = diameter / 2;\n\n const rangeArcStart =\n arcStart + distanceBetweenRanges * idx + arcForRanges * start;\n const needConnection =\n connected && inValueHigherThanRange(value, end, bounds);\n const rangeArcEnd =\n rangeArcStart +\n arcForRanges * (end - start) +\n (needConnection ? distanceBetweenRanges : 0);\n\n const { x: rangeStartX, y: rangeStartY } = getCoordinateForArc(\n radius,\n rangeArcStart\n );\n const { x: rangeEndX, y: rangeEndY } = getCoordinateForArc(\n radius,\n rangeArcEnd\n );\n\n const calculatedLabelPosition =\n labelPosition || idx === 0\n ? \"left\"\n : idx === totalRanges - 1\n ? \"right\"\n : \"top\";\n\n /* When range will be filled completely. */\n if (segmented || !valueWithinRange) {\n const fillColor =\n (segmented && valueWithinRange) ||\n (!segmented && inValueHigherThanRange(value, end, bounds))\n ? color\n : grey;\n\n const adjustedRangeArcEnd = needConnection\n ? rangeArcEnd - distanceBetweenRanges\n : rangeArcEnd;\n const { y: adjustedRangeY } = getCoordinateForArc(\n radius,\n adjustedRangeArcEnd\n );\n const { x: rangeX, y: rangeY } = getCoordinateForArc(\n radius,\n (rangeArcStart + adjustedRangeArcEnd) / 2\n );\n return (\n <g>\n <BaseOutlineArc\n startX={rangeStartX}\n startY={rangeStartY}\n endX={rangeEndX}\n endY={rangeEndY}\n startAlpha={rangeArcStart}\n endAlpha={rangeArcEnd}\n color={fillColor}\n radius={radius}\n width={gaugeWidth}\n />\n {!hideLabels && label && (\n <OutlineMeterLabelPointer\n diameter={diameter}\n position={calculatedLabelPosition}\n distanceFromRanges={distanceFromRanges}\n isInRange={valueWithinRange}\n {...((calculatedLabelPosition === \"right\" &&\n rangeStartY > diameter / 2) ||\n (calculatedLabelPosition === \"left\" &&\n adjustedRangeY > diameter / 2)\n ? {\n rangeX,\n rangeY,\n }\n : undefined)}\n />\n )}\n </g>\n );\n }\n\n const valueAlpha =\n rangeArcStart + ((value - start) / (end - start)) * rangeArc;\n\n const { x: valueX, y: valueY } = getCoordinateForArc(radius, valueAlpha);\n const valueInnerX = getInnerX(valueX, degToRad(valueAlpha), gaugeWidth);\n const valueInnerY = getInnerY(valueY, degToRad(valueAlpha), gaugeWidth);\n\n return (\n <g>\n <BaseOutlineArc\n startX={rangeStartX}\n startY={rangeStartY}\n endX={valueX}\n endY={valueY}\n startAlpha={rangeArcStart}\n endAlpha={valueAlpha}\n color={color}\n radius={radius}\n width={gaugeWidth}\n roundEnd={false}\n />\n <BaseOutlineArc\n startX={valueX}\n startY={valueY}\n endX={rangeEndX}\n endY={rangeEndY}\n startAlpha={valueAlpha}\n endAlpha={rangeArcEnd}\n color={grey}\n radius={radius}\n width={gaugeWidth}\n roundStart={false}\n />\n <circle\n cx={(valueX + valueInnerX) / 2}\n cy={(valueY + valueInnerY) / 2}\n r={pointStrokeWidth + innerPointRadius}\n strokeWidth={pointStrokeWidth}\n stroke={color}\n fill=\"white\"\n ref={pointRef}\n />\n {!hideLabels && label && (\n <OutlineMeterLabelPointer\n diameter={diameter}\n isInRange\n position={calculatedLabelPosition}\n distanceFromRanges={distanceFromRanges}\n />\n )}\n </g>\n );\n }\n);\n"],"names":["OutlineMeterRange","React","props","pointRef","start","end","color","bounds","diameter","arc","distanceBetweenRanges","totalRanges","value","gaugeWidth","segmented","idx","pointStrokeWidth","innerPointRadius","distanceFromRanges","label","labelPosition","hideLabels","connected","grey","arcForRanges","rangeArc","valueWithinRange","isValueInRange","arcStart","radius","rangeArcStart","needConnection","inValueHigherThanRange","rangeArcEnd","rangeStartX","rangeStartY","getCoordinateForArc","rangeEndX","rangeEndY","calculatedLabelPosition","fillColor","adjustedRangeArcEnd","adjustedRangeY","rangeX","rangeY","jsx","BaseOutlineArc","OutlineMeterLabelPointer","valueAlpha","valueX","valueY","valueInnerX","getInnerX","degToRad","valueInnerY","getInnerY"],"mappings":"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"}
1
+ {"version":3,"file":"sd-component-library230.js","sources":["../src/components/meters/smiley-meter-v2/constants.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { HappySmileyIcon, NeutralSmileyIcon, SadSmileyIcon } from \"./assets\";\n\n/**\n * Large Smiley meter v2 default values.\n */\nimport { SmileyGaugeColor } from \"./utils\";\n\nexport const defaultDistanceBetweenRanges = 10;\nexport const defaultSmileyWidth = 80;\n\n/**\n * Small Smiley meter v2 default values.\n */\nexport const smallSmileyMeterWidth = 100;\nexport const smallSmileyMeterHeight = 87;\nexport const smallSmileyWidth = 30;\nexport const smallSmileyInnerPointStrokeWidth = 3;\nexport const smallSmileyInnerPointRadius = 2;\nexport const smallSmileyGaugeWidth = 4;\n\nexport const COLOR_TO_ICON_MAP = new Map<SmileyGaugeColor, React.ReactNode>([\n [SmileyGaugeColor.GREEN, <HappySmileyIcon />],\n [SmileyGaugeColor.ORANGE, <NeutralSmileyIcon />],\n [SmileyGaugeColor.RED, <SadSmileyIcon />],\n]);\n"],"names":["defaultDistanceBetweenRanges","defaultSmileyWidth","smallSmileyMeterWidth","smallSmileyMeterHeight","smallSmileyWidth","smallSmileyInnerPointStrokeWidth","smallSmileyInnerPointRadius","smallSmileyGaugeWidth","COLOR_TO_ICON_MAP","SmileyGaugeColor","jsx","HappySmileyIcon","NeutralSmileyIcon","SadSmileyIcon"],"mappings":";;;;;AASO,MAAMA,IAA+B,IAC/BC,IAAqB,IAKrBC,IAAwB,KACxBC,IAAyB,IACzBC,IAAmB,IACnBC,IAAmC,GACnCC,IAA8B,GAC9BC,IAAwB,GAExBC,wBAAwB,IAAuC;AAAA,EAC1E,CAACC,EAAiB,OAAOC,gBAAAA,EAAA,IAACC,IAAgB,CAAA,CAAE;AAAA,EAC5C,CAACF,EAAiB,QAAQC,gBAAAA,EAAA,IAACE,IAAkB,CAAA,CAAE;AAAA,EAC/C,CAACH,EAAiB,KAAKC,gBAAAA,EAAA,IAACG,IAAc,CAAA,CAAE;AAC1C,CAAC;"}
@@ -1,46 +1,23 @@
1
- import { j as i } from "./sd-component-library190.js";
2
- import { getInnerX as m, getInnerY as g, getCoordinateForArc as C, degToRad as F } from "./sd-component-library86.js";
3
- const X = (p) => {
4
- const {
5
- diameter: l,
6
- arc: a,
7
- color: u = "#CCD0DB",
8
- dashHeight: e,
9
- dashWidth: x,
10
- numberOfDashes: r,
11
- distanceFromRangesToScale: t,
12
- gaugeWidth: o
13
- } = p, R = l / 2, j = (360 - a) / 2, D = a / (r - 1);
14
- return /* @__PURE__ */ i.jsx("g", { children: [...Array(r)].map((I, n) => {
15
- const c = j + n * D, { x: d, y: h } = C(R, c), s = F(c), T = m(
16
- d,
17
- s,
18
- o + t
19
- ), $ = g(
20
- h,
21
- s,
22
- o + t
23
- ), f = m(
24
- d,
25
- s,
26
- o + t + e
27
- ), B = g(
28
- h,
29
- s,
30
- o + t + e
31
- );
32
- return /* @__PURE__ */ i.jsx(
33
- "path",
34
- {
35
- d: `M${T},${$} L${f},${B}`,
36
- stroke: u,
37
- strokeWidth: x
38
- },
39
- n
40
- );
41
- }) });
1
+ import { isCorrectOutlineMeterConfig as l } from "./sd-component-library86.js";
2
+ var a = /* @__PURE__ */ ((r) => (r.GREEN = "#00B466", r.ORANGE = "#FF9900", r.RED = "#FF0000", r))(a || {});
3
+ const u = (r) => !r.some(
4
+ ({ color: t }) => !Object.values(a).includes(t)
5
+ ), f = (r, t) => l(r, t) && u(t), A = (r, t, n, i, o, d) => {
6
+ const c = r - (t - 1) * n, e = (360 - r) / 2 + n * i + c * o, s = e + c * (d - o), g = (e + s) / 2;
7
+ return {
8
+ rangeArcStart: e,
9
+ rangeArcEnd: s,
10
+ rangeArcMiddle: g
11
+ };
12
+ }, R = (r) => {
13
+ const { start: t, end: n } = r;
14
+ return t === 0 ? n < 0.6 : n === 1 ? t > 0.4 : !1;
42
15
  };
43
16
  export {
44
- X as OutlineMeterScale
17
+ a as SmileyGaugeColor,
18
+ u as areColorsValid,
19
+ R as getIsHorizontal,
20
+ A as getRangeProperties,
21
+ f as isCorrectSmileyMeterConfig
45
22
  };
46
23
  //# sourceMappingURL=sd-component-library231.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library231.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-scale/outline-meter-scale.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n} from \"../../utils\";\nimport { OutlineMeterScaleProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterScale: React.FC<Props> = (props) => {\n const {\n diameter,\n arc,\n color = \"#CCD0DB\",\n dashHeight,\n dashWidth,\n numberOfDashes,\n distanceFromRangesToScale: distanceFromRanges,\n gaugeWidth,\n } = props;\n const radius = diameter / 2;\n\n const arcStart = (360 - arc) / 2; // deg\n const degPerDash = arc / (numberOfDashes - 1);\n\n return (\n <g>\n {[...Array(numberOfDashes)].map((_, idx) => {\n const alpha = arcStart + idx * degPerDash;\n const { x, y } = getCoordinateForArc(radius, alpha);\n const alphaInRad = degToRad(alpha);\n const dashTopX = getInnerX(\n x,\n alphaInRad,\n gaugeWidth + distanceFromRanges\n );\n const dashTopY = getInnerY(\n y,\n alphaInRad,\n gaugeWidth + distanceFromRanges\n );\n const dashBottomX = getInnerX(\n x,\n alphaInRad,\n gaugeWidth + distanceFromRanges + dashHeight\n );\n const dashBottomY = getInnerY(\n y,\n alphaInRad,\n gaugeWidth + distanceFromRanges + dashHeight\n );\n return (\n <path\n key={idx}\n d={`M${dashTopX},${dashTopY} L${dashBottomX},${dashBottomY}`}\n stroke={color}\n strokeWidth={dashWidth}\n />\n );\n })}\n </g>\n );\n};\n"],"names":["OutlineMeterScale","props","diameter","arc","color","dashHeight","dashWidth","numberOfDashes","distanceFromRanges","gaugeWidth","radius","arcStart","degPerDash","jsx","_","idx","alpha","x","y","getCoordinateForArc","alphaInRad","degToRad","dashTopX","getInnerX","dashTopY","getInnerY","dashBottomX","dashBottomY"],"mappings":";;AAUa,MAAAA,IAAqC,CAACC,MAAU;AACrD,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,KAAAC;AAAA,IACA,OAAAC,IAAQ;AAAA,IACR,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,2BAA2BC;AAAA,IAC3B,YAAAC;AAAA,EACE,IAAAR,GACES,IAASR,IAAW,GAEpBS,KAAY,MAAMR,KAAO,GACzBS,IAAaT,KAAOI,IAAiB;AAGzC,SAAAM,gBAAAA,MAAC,KACE,EAAA,UAAA,CAAC,GAAG,MAAMN,CAAc,CAAC,EAAE,IAAI,CAACO,GAAGC,MAAQ;AACpC,UAAAC,IAAQL,IAAWI,IAAMH,GACzB,EAAE,GAAAK,GAAG,GAAAC,EAAA,IAAMC,EAAoBT,GAAQM,CAAK,GAC5CI,IAAaC,EAASL,CAAK,GAC3BM,IAAWC;AAAA,MACfN;AAAA,MACAG;AAAA,MACAX,IAAaD;AAAA,IAAA,GAETgB,IAAWC;AAAA,MACfP;AAAA,MACAE;AAAA,MACAX,IAAaD;AAAA,IAAA,GAETkB,IAAcH;AAAA,MAClBN;AAAA,MACAG;AAAA,MACAX,IAAaD,IAAqBH;AAAA,IAAA,GAE9BsB,IAAcF;AAAA,MAClBP;AAAA,MACAE;AAAA,MACAX,IAAaD,IAAqBH;AAAA,IAAA;AAGlC,WAAAQ,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QAEC,GAAG,IAAIS,CAAQ,IAAIE,CAAQ,KAAKE,CAAW,IAAIC,CAAW;AAAA,QAC1D,QAAQvB;AAAA,QACR,aAAaE;AAAA,MAAA;AAAA,MAHRS;AAAA,IAAA;AAAA,EAMV,CAAA,EACH,CAAA;AAEJ;"}
1
+ {"version":3,"file":"sd-component-library231.js","sources":["../src/components/meters/smiley-meter-v2/utils.ts"],"sourcesContent":["import { OutlineMeterRangeConfig } from \"../outline-meter\";\nimport { isCorrectOutlineMeterConfig } from \"../outline-meter/utils\";\nimport { SmileyMeterRange } from \"./interfaces\";\n\nexport enum SmileyGaugeColor {\n GREEN = \"#00B466\",\n ORANGE = \"#FF9900\",\n RED = \"#FF0000\",\n}\n\nexport const areColorsValid = (ranges: OutlineMeterRangeConfig[]) =>\n !ranges.some(\n ({ color }) => !Object.values(SmileyGaugeColor).includes(color as any)\n );\n\nexport const isCorrectSmileyMeterConfig = (\n value: number,\n ranges: OutlineMeterRangeConfig[]\n): ranges is SmileyMeterRange[] => {\n return isCorrectOutlineMeterConfig(value, ranges) && areColorsValid(ranges);\n};\n\nexport const getRangeProperties = (\n arc: number,\n totalRanges: number,\n distanceBetweenRanges: number,\n idx: number,\n start: number,\n end: number\n) => {\n const arcForRanges = arc - (totalRanges - 1) * distanceBetweenRanges;\n const arcStart = (360 - arc) / 2; // deg\n const rangeArcStart =\n arcStart + distanceBetweenRanges * idx + arcForRanges * start;\n const rangeArcEnd = rangeArcStart + arcForRanges * (end - start);\n\n const rangeArcMiddle = (rangeArcStart + rangeArcEnd) / 2;\n return {\n rangeArcStart,\n rangeArcEnd,\n rangeArcMiddle,\n };\n};\n\nexport const getIsHorizontal = (range: SmileyMeterRange) => {\n const { start, end } = range;\n return start === 0 ? end < 0.6 : end === 1 ? start > 0.4 : false;\n};\n"],"names":["SmileyGaugeColor","areColorsValid","ranges","color","isCorrectSmileyMeterConfig","value","isCorrectOutlineMeterConfig","getRangeProperties","arc","totalRanges","distanceBetweenRanges","idx","start","end","arcForRanges","rangeArcStart","rangeArcEnd","rangeArcMiddle","getIsHorizontal","range"],"mappings":";AAIY,IAAAA,sBAAAA,OACVA,EAAA,QAAQ,WACRA,EAAA,SAAS,WACTA,EAAA,MAAM,WAHIA,IAAAA,KAAA,CAAA,CAAA;AAML,MAAMC,IAAiB,CAACC,MAC7B,CAACA,EAAO;AAAA,EACN,CAAC,EAAE,OAAAC,EAAY,MAAA,CAAC,OAAO,OAAOH,CAAgB,EAAE,SAASG,CAAY;AACvE,GAEWC,IAA6B,CACxCC,GACAH,MAEOI,EAA4BD,GAAOH,CAAM,KAAKD,EAAeC,CAAM,GAG/DK,IAAqB,CAChCC,GACAC,GACAC,GACAC,GACAC,GACAC,MACG;AACG,QAAAC,IAAeN,KAAOC,IAAc,KAAKC,GAEzCK,KADY,MAAMP,KAAO,IAElBE,IAAwBC,IAAMG,IAAeF,GACpDI,IAAcD,IAAgBD,KAAgBD,IAAMD,IAEpDK,KAAkBF,IAAgBC,KAAe;AAChD,SAAA;AAAA,IACL,eAAAD;AAAA,IACA,aAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA;AAEJ,GAEaC,IAAkB,CAACC,MAA4B;AACpD,QAAA,EAAE,OAAAP,GAAO,KAAAC,EAAQ,IAAAM;AACvB,SAAOP,MAAU,IAAIC,IAAM,MAAMA,MAAQ,IAAID,IAAQ,MAAM;AAC7D;"}
@@ -1,50 +1,31 @@
1
- import { j as k } from "./sd-component-library190.js";
2
- import { isValueInRange as w, getInnerX as E, getInnerY as O, degToRad as r, getCoordinateForArc as V } from "./sd-component-library86.js";
3
- import { BaseNeedle as b } from "./sd-component-library297.js";
4
- const G = (x) => {
5
- const {
6
- diameter: f,
7
- value: c,
8
- arc: i,
9
- ranges: o,
10
- useSegmentedBehavior: v,
11
- innerCircleRadius: I,
12
- innerCircleStrokeWidth: A,
13
- distanceFromRange: d,
14
- needleWidth: e,
15
- needleColor: C,
16
- distanceBetweenRanges: l,
17
- gaugeWidth: g
18
- } = x, a = o.find(
19
- ({ start: s, end: y, bounds: N }) => w(c, s, y, N)
20
- );
21
- if (!a)
22
- return null;
23
- const u = f / 2, S = (360 - i) / 2, m = i - (o.length - 1) * l, { start: t, end: h, color: X } = a, Y = o.findIndex((s) => s === a), p = m * (h - t), R = S + l * Y + m * t, n = v ? R + p / 2 : R + (c - t) / (h - t) * p, { x: j, y: B } = V(u, n), F = E(
24
- j,
25
- r(n),
26
- d + g + e / 2
27
- ), M = O(
28
- B,
29
- r(n),
30
- d + g + e / 2
31
- ), T = e / 2 * Math.cos(r(n)), W = e / 2 * Math.sin(r(n));
32
- return /* @__PURE__ */ k.jsx(
33
- b,
34
- {
35
- dx: T,
36
- dy: W,
37
- color: C || X,
38
- radius: u,
39
- tipX: F,
40
- tipY: M,
41
- innerCircleStrokeWidth: A,
42
- innerCircleRadius: I,
43
- needleWidth: e
44
- }
45
- );
46
- };
1
+ import { j as a } from "./sd-component-library190.js";
2
+ import R, { createElement as g } from "react";
3
+ import { isValueInRange as f } from "./sd-component-library86.js";
4
+ import { SmileyMeterRange as d } from "./sd-component-library311.js";
5
+ const j = R.forwardRef(
6
+ (r, m) => {
7
+ const { value: s, ranges: n, distanceFromRanges: c } = r, o = n.findIndex(
8
+ ({ start: e, end: t, bounds: l }) => f(s, e, t, l)
9
+ ), i = n.map((e, t) => ({
10
+ ...e,
11
+ color: t < o ? n[o].color : e.color
12
+ }));
13
+ return /* @__PURE__ */ a.jsx(a.Fragment, { children: i.map((e, t) => /* @__PURE__ */ g(
14
+ d,
15
+ {
16
+ ...e,
17
+ ...r,
18
+ idx: t,
19
+ totalRanges: n.length,
20
+ pointerLength: c,
21
+ key: `${e.start}-${e.end}-${t}`,
22
+ isMatchedRange: o === t,
23
+ ref: m
24
+ }
25
+ )) });
26
+ }
27
+ );
47
28
  export {
48
- G as OutlineMeterNeedle
29
+ j as SmileyMeterRanges
49
30
  };
50
31
  //# sourceMappingURL=sd-component-library232.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library232.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-needle/outline-meter-needle.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n isValueInRange,\n} from \"../../utils\";\nimport { BaseNeedle } from \"../base-needle\";\nimport { OutlineMeterNeedleProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterNeedle: React.FC<Props> = (props) => {\n const {\n diameter,\n value,\n arc,\n ranges,\n useSegmentedBehavior,\n innerCircleRadius,\n innerCircleStrokeWidth,\n distanceFromRange,\n needleWidth,\n needleColor,\n distanceBetweenRanges,\n gaugeWidth,\n } = props;\n\n const matchingRange = ranges.find(({ start, end, bounds }) =>\n isValueInRange(value, start, end, bounds)\n );\n\n if (!matchingRange) return null;\n\n const radius = diameter / 2;\n\n const arcStart = (360 - arc) / 2;\n const arcForRanges = arc - (ranges.length - 1) * distanceBetweenRanges;\n const { start, end, color } = matchingRange;\n const matchingRangeIndex = ranges.findIndex((r) => r === matchingRange);\n const rangeArc = arcForRanges * (end - start);\n\n const rangeArcStart =\n arcStart +\n distanceBetweenRanges * matchingRangeIndex +\n arcForRanges * start;\n\n const valueAlpha = useSegmentedBehavior\n ? rangeArcStart + rangeArc / 2\n : rangeArcStart + ((value - start) / (end - start)) * rangeArc;\n const { x: valueX, y: valueY } = getCoordinateForArc(radius, valueAlpha);\n\n const needleTipX = getInnerX(\n valueX,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n const needleTipY = getInnerY(\n valueY,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n\n const dx = (needleWidth / 2) * Math.cos(degToRad(valueAlpha));\n const dy = (needleWidth / 2) * Math.sin(degToRad(valueAlpha));\n\n return (\n <BaseNeedle\n dx={dx}\n dy={dy}\n color={needleColor || color}\n radius={radius}\n tipX={needleTipX}\n tipY={needleTipY}\n innerCircleStrokeWidth={innerCircleStrokeWidth}\n innerCircleRadius={innerCircleRadius}\n needleWidth={needleWidth}\n />\n );\n};\n"],"names":["OutlineMeterNeedle","props","diameter","value","arc","ranges","useSegmentedBehavior","innerCircleRadius","innerCircleStrokeWidth","distanceFromRange","needleWidth","needleColor","distanceBetweenRanges","gaugeWidth","matchingRange","start","end","bounds","isValueInRange","radius","arcStart","arcForRanges","color","matchingRangeIndex","r","rangeArc","rangeArcStart","valueAlpha","valueX","valueY","getCoordinateForArc","needleTipX","getInnerX","degToRad","needleTipY","getInnerY","dx","dy","jsx","BaseNeedle"],"mappings":";;;AAYa,MAAAA,IAAsC,CAACC,MAAU;AACtD,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,aAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,YAAAC;AAAA,EACE,IAAAZ,GAEEa,IAAgBT,EAAO;AAAA,IAAK,CAAC,EAAE,OAAAU,GAAO,KAAAC,GAAK,QAAAC,QAC/CC,EAAef,GAAOY,GAAOC,GAAKC,CAAM;AAAA,EAAA;AAG1C,MAAI,CAACH;AAAsB,WAAA;AAE3B,QAAMK,IAASjB,IAAW,GAEpBkB,KAAY,MAAMhB,KAAO,GACzBiB,IAAejB,KAAOC,EAAO,SAAS,KAAKO,GAC3C,EAAE,OAAAG,GAAO,KAAAC,GAAK,OAAAM,EAAA,IAAUR,GACxBS,IAAqBlB,EAAO,UAAU,CAACmB,MAAMA,MAAMV,CAAa,GAChEW,IAAWJ,KAAgBL,IAAMD,IAEjCW,IACJN,IACAR,IAAwBW,IACxBF,IAAeN,GAEXY,IAAarB,IACfoB,IAAgBD,IAAW,IAC3BC,KAAkBvB,IAAQY,MAAUC,IAAMD,KAAUU,GAClD,EAAE,GAAGG,GAAQ,GAAGC,MAAWC,EAAoBX,GAAQQ,CAAU,GAEjEI,IAAaC;AAAA,IACjBJ;AAAA,IACAK,EAASN,CAAU;AAAA,IACnBlB,IAAoBI,IAAaH,IAAc;AAAA,EAAA,GAE3CwB,IAAaC;AAAA,IACjBN;AAAA,IACAI,EAASN,CAAU;AAAA,IACnBlB,IAAoBI,IAAaH,IAAc;AAAA,EAAA,GAG3C0B,IAAM1B,IAAc,IAAK,KAAK,IAAIuB,EAASN,CAAU,CAAC,GACtDU,IAAM3B,IAAc,IAAK,KAAK,IAAIuB,EAASN,CAAU,CAAC;AAG1D,SAAAW,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAAH;AAAA,MACA,IAAAC;AAAA,MACA,OAAO1B,KAAeW;AAAA,MACtB,QAAAH;AAAA,MACA,MAAMY;AAAA,MACN,MAAMG;AAAA,MACN,wBAAA1B;AAAA,MACA,mBAAAD;AAAA,MACA,aAAAG;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"sd-component-library232.js","sources":["../src/components/meters/smiley-meter-v2/partials/smiley-meter-ranges/smiley-meter-ranges.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { isValueInRange } from \"../../../outline-meter/utils\";\nimport { SmileyMeterRange } from \"../smiley-meter-range\";\nimport { SmileyMeterRangesProps as Props } from \"./interfaces\";\n\nexport const SmileyMeterRanges = React.forwardRef<SVGCircleElement, Props>(\n (props, pointRef) => {\n const { value, ranges, distanceFromRanges } = props;\n\n const matchingRangeIndex = ranges.findIndex(({ start, end, bounds }) =>\n isValueInRange(value, start, end, bounds)\n );\n const newRanges = ranges.map((range, idx) => ({\n ...range,\n color:\n idx < matchingRangeIndex\n ? ranges[matchingRangeIndex].color\n : range.color,\n }));\n\n return (\n <>\n {newRanges.map((range, idx) => (\n <SmileyMeterRange\n {...range}\n {...props}\n idx={idx}\n totalRanges={ranges.length}\n pointerLength={distanceFromRanges}\n key={`${range.start}-${range.end}-${idx}`}\n isMatchedRange={matchingRangeIndex === idx}\n ref={pointRef}\n />\n ))}\n </>\n );\n }\n);\n"],"names":["SmileyMeterRanges","React","props","pointRef","value","ranges","distanceFromRanges","matchingRangeIndex","start","end","bounds","isValueInRange","newRanges","range","idx","jsx","Fragment","createElement","SmileyMeterRange"],"mappings":";;;;AAMO,MAAMA,IAAoBC,EAAM;AAAA,EACrC,CAACC,GAAOC,MAAa;AACnB,UAAM,EAAE,OAAAC,GAAO,QAAAC,GAAQ,oBAAAC,EAAA,IAAuBJ,GAExCK,IAAqBF,EAAO;AAAA,MAAU,CAAC,EAAE,OAAAG,GAAO,KAAAC,GAAK,QAAAC,QACzDC,EAAeP,GAAOI,GAAOC,GAAKC,CAAM;AAAA,IAAA,GAEpCE,IAAYP,EAAO,IAAI,CAACQ,GAAOC,OAAS;AAAA,MAC5C,GAAGD;AAAA,MACH,OACEC,IAAMP,IACFF,EAAOE,CAAkB,EAAE,QAC3BM,EAAM;AAAA,IACZ,EAAA;AAEF,WAEKE,gBAAAA,EAAA,IAAAC,EAAA,UAAA,EAAA,UAAAJ,EAAU,IAAI,CAACC,GAAOC,MACrB,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACE,GAAGL;AAAA,QACH,GAAGX;AAAA,QACJ,KAAAY;AAAA,QACA,aAAaT,EAAO;AAAA,QACpB,eAAeC;AAAA,QACf,KAAK,GAAGO,EAAM,KAAK,IAAIA,EAAM,GAAG,IAAIC,CAAG;AAAA,QACvC,gBAAgBP,MAAuBO;AAAA,QACvC,KAAKX;AAAA,MAAA;AAAA,IAER,CAAA,EACH,CAAA;AAAA,EAEJ;AACF;"}
@@ -1,11 +1,36 @@
1
- import { j as m } from "./sd-component-library190.js";
2
- import { isValueInRange as x } from "./sd-component-library86.js";
3
- import { BaseMeterLabelBox as u } from "./sd-component-library243.js";
4
- const g = (t) => {
5
- const { value: o, idx: e, totalRanges: n, start: s, end: r, bounds: a } = t, i = x(o, s, r, a), l = e === 0 ? "left" : e === n - 1 ? "right" : "top";
6
- return /* @__PURE__ */ m.jsx(u, { isInRange: i, position: l, ...t });
1
+ import { j as h } from "./sd-component-library190.js";
2
+ import { getRangeProperties as p } from "./sd-component-library231.js";
3
+ import { MatchedRangeLabelBox as u } from "./sd-component-library312.js";
4
+ const b = (e) => {
5
+ const {
6
+ range: a,
7
+ arc: n,
8
+ totalRanges: o,
9
+ distanceBetweenRanges: r,
10
+ idx: s,
11
+ diameter: d,
12
+ segmented: c,
13
+ counterClockWise: i
14
+ } = e, { start: g, end: l } = a, m = d / 2, { rangeArcMiddle: x } = p(
15
+ n,
16
+ o,
17
+ r,
18
+ s,
19
+ g,
20
+ l
21
+ ), t = Math.round(x);
22
+ return /* @__PURE__ */ h.jsx(
23
+ u,
24
+ {
25
+ ...e,
26
+ ...a,
27
+ alpha: i ? 360 - t : t,
28
+ radius: m,
29
+ round: c
30
+ }
31
+ );
7
32
  };
8
33
  export {
9
- g as OutlineMeterLabelBox
34
+ b as MatchedRangeLabelBox
10
35
  };
11
36
  //# sourceMappingURL=sd-component-library233.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library233.js","sources":["../src/components/meters/outline-meter/partials/outline-meter-label-box/outline-meter-label-box.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { isValueInRange } from \"../../utils\";\nimport { BaseMeterLabelBox } from \"../base-meter-label-box\";\nimport { OutlineMeterLabelBoxProps as Props } from \"./interfaces\";\n\nexport const OutlineMeterLabelBox: React.FC<Props> = (props) => {\n const { value, idx, totalRanges, start, end, bounds } = props;\n\n const isInRange = isValueInRange(value, start, end, bounds);\n const position =\n idx === 0 ? \"left\" : idx === totalRanges - 1 ? \"right\" : \"top\";\n\n return (\n <BaseMeterLabelBox isInRange={isInRange} position={position} {...props} />\n );\n};\n"],"names":["OutlineMeterLabelBox","props","value","idx","totalRanges","start","end","bounds","isInRange","isValueInRange","position","jsx","BaseMeterLabelBox"],"mappings":";;;AAMa,MAAAA,IAAwC,CAACC,MAAU;AAC9D,QAAM,EAAE,OAAAC,GAAO,KAAAC,GAAK,aAAAC,GAAa,OAAAC,GAAO,KAAAC,GAAK,QAAAC,EAAW,IAAAN,GAElDO,IAAYC,EAAeP,GAAOG,GAAOC,GAAKC,CAAM,GACpDG,IACJP,MAAQ,IAAI,SAASA,MAAQC,IAAc,IAAI,UAAU;AAE3D,SACGO,gBAAAA,EAAAA,IAAAC,GAAA,EAAkB,WAAAJ,GAAsB,UAAAE,GAAqB,GAAGT,EAAO,CAAA;AAE5E;"}
1
+ {"version":3,"file":"sd-component-library233.js","sources":["../src/components/meters/smiley-meter-v2/partials/matched-range-label-box/matched-range-label-box.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { MatchedRangeLabelBox as LabelBox } from \"../../../common-outline-meter-partials\";\nimport { getRangeProperties } from \"../../utils\";\nimport { MatchedRangeBoxProps as Props } from \"./interfaces\";\n\nexport const MatchedRangeLabelBox: React.FC<Props> = (props) => {\n const {\n range,\n arc,\n totalRanges,\n distanceBetweenRanges,\n idx,\n diameter,\n segmented,\n counterClockWise,\n } = props;\n const { start, end } = range;\n\n const radius = diameter / 2;\n const { rangeArcMiddle: alpha } = getRangeProperties(\n arc,\n totalRanges,\n distanceBetweenRanges,\n idx,\n start,\n end\n );\n\n const roundedAlpha = Math.round(alpha);\n\n return (\n <LabelBox\n {...props}\n {...range}\n alpha={counterClockWise ? 360 - roundedAlpha : roundedAlpha}\n radius={radius}\n round={segmented}\n />\n );\n};\n"],"names":["MatchedRangeLabelBox","props","range","arc","totalRanges","distanceBetweenRanges","idx","diameter","segmented","counterClockWise","start","end","radius","alpha","getRangeProperties","roundedAlpha","jsx","LabelBox"],"mappings":";;;AAMa,MAAAA,IAAwC,CAACC,MAAU;AACxD,QAAA;AAAA,IACJ,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,aAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,KAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,kBAAAC;AAAA,EACE,IAAAR,GACE,EAAE,OAAAS,GAAO,KAAAC,EAAQ,IAAAT,GAEjBU,IAASL,IAAW,GACpB,EAAE,gBAAgBM,EAAA,IAAUC;AAAA,IAChCX;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAI;AAAA,IACAC;AAAA,EAAA,GAGII,IAAe,KAAK,MAAMF,CAAK;AAGnC,SAAAG,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACE,GAAGhB;AAAA,MACH,GAAGC;AAAA,MACJ,OAAOO,IAAmB,MAAMM,IAAeA;AAAA,MAC/C,QAAAH;AAAA,MACA,OAAOJ;AAAA,IAAA;AAAA,EAAA;AAGb;"}
@@ -1,67 +1,51 @@
1
- import { j as a } from "./sd-component-library190.js";
2
- import { getCoordinateForArc as i } from "./sd-component-library86.js";
3
- import { defaultTextBottomMargin as X } from "./sd-component-library223.js";
4
- import { getRangeProperties as Y } from "./sd-component-library298.js";
5
- import { BaseOutlineArc as b } from "./sd-component-library296.js";
6
- import { DiscreteMeterLabelPointer as w } from "./sd-component-library299.js";
7
- function z(s) {
8
- const {
9
- color: n,
10
- idx: c,
11
- gaugeWidth: d,
12
- diameter: g,
13
- arc: m,
14
- distanceBetweenRanges: l,
15
- totalRanges: p,
16
- showLabel: h,
17
- label: o,
18
- isMatchedRange: x,
19
- pointerWidth: f,
20
- pointerLength: A,
21
- horizontal: u
22
- } = s, t = g / 2, { rangeArcStart: r, rangeArcEnd: e } = Y(
23
- m,
24
- p,
25
- l,
26
- c
27
- ), { x: R, y: j } = i(
1
+ import { getCoordinateForArc as s } from "./sd-component-library86.js";
2
+ const v = (r) => {
3
+ const a = `Received ${r.map(
4
+ ({ start: e, end: t }) => `(${e},${t})`
5
+ )}`, n = (e) => console.error(e, a);
6
+ if (r.some(
7
+ ({ start: e, end: t }) => [e, t].some((o) => o < 0 || o > 1)
8
+ ))
9
+ return n("Segment values should be between 0 and 1"), !1;
10
+ if (r.reduce(
11
+ (e, { start: t }) => e + (t === 0 ? 1 : 0),
12
+ 0
13
+ ) !== 1)
14
+ return n("One segment should start from 0"), !1;
15
+ if (r.reduce((e, { end: t }) => e + (t === 1 ? 1 : 0), 0) !== 1)
16
+ return n("One segment should end by 1"), !1;
17
+ if (r.some(({ start: e, end: t }) => e >= t))
18
+ return n("Segment start should be smaller than end"), !1;
19
+ for (let e = 1; e < r.length; e++) {
20
+ const t = r[e];
21
+ if (r[e - 1].end !== t.start)
22
+ return n("Previous segment end should be equal to next segment start"), !1;
23
+ }
24
+ return !0;
25
+ }, x = ({ start: r, end: a }, n, e) => {
26
+ const t = n - e, o = Math.round(r * 360), c = Math.round(a * 360), d = c - o, { x: l, y: u } = s(n, o), { x: f, y: m } = s(
28
27
  t,
29
- r
30
- ), { x: B, y: E } = i(
28
+ o,
29
+ n
30
+ ), { x: h, y: i } = s(n, c), { x: g, y: S } = s(
31
31
  t,
32
- e
33
- ), M = (r + e) / 2;
34
- return /* @__PURE__ */ a.jsxs("g", { children: [
35
- /* @__PURE__ */ a.jsx(
36
- b,
37
- {
38
- startX: R,
39
- startY: j,
40
- endX: B,
41
- endY: E,
42
- startAlpha: r,
43
- endAlpha: e,
44
- color: n,
45
- radius: t,
46
- width: d
47
- }
48
- ),
49
- h && o && !x && /* @__PURE__ */ a.jsx(
50
- w,
51
- {
52
- alpha: M,
53
- pointerLength: A,
54
- pointerWidth: f,
55
- radius: t,
56
- color: n,
57
- textBottomMargin: X,
58
- label: o,
59
- horizontal: u
60
- }
61
- )
62
- ] });
63
- }
32
+ c,
33
+ n
34
+ );
35
+ return {
36
+ startX: l,
37
+ startY: u,
38
+ endX: h,
39
+ endY: i,
40
+ startInnerX: f,
41
+ startInnerY: m,
42
+ endInnerX: g,
43
+ endInnerY: S,
44
+ arc: d
45
+ };
46
+ };
64
47
  export {
65
- z as DiscreteRange
48
+ v as areSegmentsValid,
49
+ x as getSegmentCoordinates
66
50
  };
67
51
  //# sourceMappingURL=sd-component-library234.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library234.js","sources":["../src/components/meters/multi-option-discrete-outline-meter/partials/discrete-range/discrete-range.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\n\nimport { BaseOutlineArc } from \"../../../outline-meter/partials/base-outline-arc\";\nimport { getCoordinateForArc } from \"../../../outline-meter/utils\";\nimport { defaultTextBottomMargin } from \"../../constants\";\nimport { getRangeProperties } from \"../../utils\";\nimport { DiscreteMeterLabelPointer } from \"../discrete-meter-label-pointer\";\nimport { DiscreteRangeProps as Props } from \"./interfaces\";\n\nexport function DiscreteRange<T>(props: PropsWithChildren<Props<T>>) {\n const {\n color,\n idx,\n gaugeWidth,\n diameter,\n arc,\n distanceBetweenRanges,\n totalRanges,\n showLabel,\n label,\n isMatchedRange,\n pointerWidth,\n pointerLength,\n horizontal,\n } = props;\n\n const radius = diameter / 2;\n\n const { rangeArcStart, rangeArcEnd } = getRangeProperties(\n arc,\n totalRanges,\n distanceBetweenRanges,\n idx\n );\n\n const { x: rangeStartX, y: rangeStartY } = getCoordinateForArc(\n radius,\n rangeArcStart\n );\n const { x: rangeEndX, y: rangeEndY } = getCoordinateForArc(\n radius,\n rangeArcEnd\n );\n\n const middleArcAlpha = (rangeArcStart + rangeArcEnd) / 2;\n\n return (\n <g>\n <BaseOutlineArc\n startX={rangeStartX}\n startY={rangeStartY}\n endX={rangeEndX}\n endY={rangeEndY}\n startAlpha={rangeArcStart}\n endAlpha={rangeArcEnd}\n color={color}\n radius={radius}\n width={gaugeWidth}\n />\n\n {showLabel && label && !isMatchedRange && (\n <DiscreteMeterLabelPointer\n alpha={middleArcAlpha}\n pointerLength={pointerLength}\n pointerWidth={pointerWidth}\n radius={radius}\n color={color}\n textBottomMargin={defaultTextBottomMargin}\n label={label}\n horizontal={horizontal}\n />\n )}\n </g>\n );\n}\n"],"names":["DiscreteRange","props","color","idx","gaugeWidth","diameter","arc","distanceBetweenRanges","totalRanges","showLabel","label","isMatchedRange","pointerWidth","pointerLength","horizontal","radius","rangeArcStart","rangeArcEnd","getRangeProperties","rangeStartX","rangeStartY","getCoordinateForArc","rangeEndX","rangeEndY","middleArcAlpha","jsx","BaseOutlineArc","DiscreteMeterLabelPointer","defaultTextBottomMargin"],"mappings":";;;;;;AASO,SAASA,EAAiBC,GAAoC;AAC7D,QAAA;AAAA,IACJ,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,YAAAC;AAAA,IACA,UAAAC;AAAA,IACA,KAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,eAAAC;AAAA,IACA,YAAAC;AAAA,EACE,IAAAb,GAEEc,IAASV,IAAW,GAEpB,EAAE,eAAAW,GAAe,aAAAC,EAAA,IAAgBC;AAAA,IACrCZ;AAAA,IACAE;AAAA,IACAD;AAAA,IACAJ;AAAA,EAAA,GAGI,EAAE,GAAGgB,GAAa,GAAGC,EAAgB,IAAAC;AAAA,IACzCN;AAAA,IACAC;AAAA,EAAA,GAEI,EAAE,GAAGM,GAAW,GAAGC,EAAc,IAAAF;AAAA,IACrCN;AAAA,IACAE;AAAA,EAAA,GAGIO,KAAkBR,IAAgBC,KAAe;AAEvD,gCACG,KACC,EAAA,UAAA;AAAA,IAAAQ,gBAAAA,EAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,QAAQP;AAAA,QACR,QAAQC;AAAA,QACR,MAAME;AAAA,QACN,MAAMC;AAAA,QACN,YAAYP;AAAA,QACZ,UAAUC;AAAA,QACV,OAAAf;AAAA,QACA,QAAAa;AAAA,QACA,OAAOX;AAAA,MAAA;AAAA,IACT;AAAA,IAECK,KAAaC,KAAS,CAACC,KACtBc,gBAAAA,EAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,OAAOH;AAAA,QACP,eAAAX;AAAA,QACA,cAAAD;AAAA,QACA,QAAAG;AAAA,QACA,OAAAb;AAAA,QACA,kBAAkB0B;AAAA,QAClB,OAAAlB;AAAA,QACA,YAAAI;AAAA,MAAA;AAAA,IACF;AAAA,EAEJ,EAAA,CAAA;AAEJ;"}
1
+ {"version":3,"file":"sd-component-library234.js","sources":["../src/components/meters/donut-diagram/utils.ts"],"sourcesContent":["import { getCoordinateForArc } from \"../outline-meter/utils\";\nimport { DonutSegment } from \"./interfaces\";\n\nexport const areSegmentsValid = (\n segments: Pick<DonutSegment, \"start\" | \"end\">[]\n): boolean => {\n const receivedSegments = `Received ${segments.map(\n ({ start, end }) => `(${start},${end})`\n )}`;\n const showError = (text: string) => console.error(text, receivedSegments);\n\n if (\n segments.some(({ start, end }) =>\n [start, end].some((point) => point < 0 || point > 1)\n )\n ) {\n showError(\"Segment values should be between 0 and 1\");\n return false;\n }\n\n if (\n segments.reduce<number>(\n (acc, { start }) => acc + (start === 0 ? 1 : 0),\n 0\n ) !== 1\n ) {\n showError(\"One segment should start from 0\");\n return false;\n }\n\n if (\n segments.reduce<number>((acc, { end }) => acc + (end === 1 ? 1 : 0), 0) !==\n 1\n ) {\n showError(\"One segment should end by 1\");\n return false;\n }\n\n if (segments.some(({ start, end }) => start >= end)) {\n showError(\"Segment start should be smaller than end\");\n return false;\n }\n\n for (let i = 1; i < segments.length; i++) {\n const currentSegment = segments[i];\n const prevSegment = segments[i - 1];\n if (prevSegment.end !== currentSegment.start) {\n showError(\"Previous segment end should be equal to next segment start\");\n return false;\n }\n }\n\n return true;\n};\n\nexport const getSegmentCoordinates = (\n { start, end }: Pick<DonutSegment, \"start\" | \"end\">,\n radius: number,\n segmentWidth: number\n) => {\n const innerRadius = radius - segmentWidth;\n\n const startAlpha = Math.round(start * 360);\n const endAlpha = Math.round(end * 360);\n const arc = endAlpha - startAlpha;\n\n const { x: startX, y: startY } = getCoordinateForArc(radius, startAlpha);\n const { x: startInnerX, y: startInnerY } = getCoordinateForArc(\n innerRadius,\n startAlpha,\n radius\n );\n\n const { x: endX, y: endY } = getCoordinateForArc(radius, endAlpha);\n const { x: endInnerX, y: endInnerY } = getCoordinateForArc(\n innerRadius,\n endAlpha,\n radius\n );\n return {\n startX,\n startY,\n endX,\n endY,\n startInnerX,\n startInnerY,\n endInnerX,\n endInnerY,\n arc,\n };\n};\n"],"names":["areSegmentsValid","segments","receivedSegments","start","end","showError","text","point","acc","i","currentSegment","getSegmentCoordinates","radius","segmentWidth","innerRadius","startAlpha","endAlpha","arc","startX","startY","getCoordinateForArc","startInnerX","startInnerY","endX","endY","endInnerX","endInnerY"],"mappings":";AAGa,MAAAA,IAAmB,CAC9BC,MACY;AACN,QAAAC,IAAmB,YAAYD,EAAS;AAAA,IAC5C,CAAC,EAAE,OAAAE,GAAO,KAAAC,QAAU,IAAID,CAAK,IAAIC,CAAG;AAAA,EACrC,CAAA,IACKC,IAAY,CAACC,MAAiB,QAAQ,MAAMA,GAAMJ,CAAgB;AAExE,MACED,EAAS;AAAA,IAAK,CAAC,EAAE,OAAAE,GAAO,KAAAC,QACtB,CAACD,GAAOC,CAAG,EAAE,KAAK,CAACG,MAAUA,IAAQ,KAAKA,IAAQ,CAAC;AAAA,EAAA;AAGrD,WAAAF,EAAU,0CAA0C,GAC7C;AAGT,MACEJ,EAAS;AAAA,IACP,CAACO,GAAK,EAAE,OAAAL,QAAYK,KAAOL,MAAU,IAAI,IAAI;AAAA,IAC7C;AAAA,QACI;AAEN,WAAAE,EAAU,iCAAiC,GACpC;AAGT,MACEJ,EAAS,OAAe,CAACO,GAAK,EAAE,KAAAJ,EAAI,MAAMI,KAAOJ,MAAQ,IAAI,IAAI,IAAI,CAAC,MACtE;AAEA,WAAAC,EAAU,6BAA6B,GAChC;AAGL,MAAAJ,EAAS,KAAK,CAAC,EAAE,OAAAE,GAAO,KAAAC,QAAUD,KAASC,CAAG;AAChD,WAAAC,EAAU,0CAA0C,GAC7C;AAGT,WAASI,IAAI,GAAGA,IAAIR,EAAS,QAAQQ,KAAK;AAClC,UAAAC,IAAiBT,EAASQ,CAAC;AAE7B,QADgBR,EAASQ,IAAI,CAAC,EAClB,QAAQC,EAAe;AACrC,aAAAL,EAAU,4DAA4D,GAC/D;AAAA,EAEX;AAEO,SAAA;AACT,GAEaM,IAAwB,CACnC,EAAE,OAAAR,GAAO,KAAAC,EAAI,GACbQ,GACAC,MACG;AACH,QAAMC,IAAcF,IAASC,GAEvBE,IAAa,KAAK,MAAMZ,IAAQ,GAAG,GACnCa,IAAW,KAAK,MAAMZ,IAAM,GAAG,GAC/Ba,IAAMD,IAAWD,GAEjB,EAAE,GAAGG,GAAQ,GAAGC,MAAWC,EAAoBR,GAAQG,CAAU,GACjE,EAAE,GAAGM,GAAa,GAAGC,EAAgB,IAAAF;AAAA,IACzCN;AAAA,IACAC;AAAA,IACAH;AAAA,EAAA,GAGI,EAAE,GAAGW,GAAM,GAAGC,MAASJ,EAAoBR,GAAQI,CAAQ,GAC3D,EAAE,GAAGS,GAAW,GAAGC,EAAc,IAAAN;AAAA,IACrCN;AAAA,IACAE;AAAA,IACAJ;AAAA,EAAA;AAEK,SAAA;AAAA,IACL,QAAAM;AAAA,IACA,QAAAC;AAAA,IACA,MAAAI;AAAA,IACA,MAAAC;AAAA,IACA,aAAAH;AAAA,IACA,aAAAC;AAAA,IACA,WAAAG;AAAA,IACA,WAAAC;AAAA,IACA,KAAAT;AAAA,EAAA;AAEJ;"}
@@ -1,46 +1,78 @@
1
- import { j as M } from "./sd-component-library190.js";
2
- import { getInnerX as T, getInnerY as W, degToRad as r, getCoordinateForArc as y } from "./sd-component-library86.js";
3
- import { BaseNeedle as B } from "./sd-component-library297.js";
4
- function E(p) {
5
- const {
6
- needleColor: u,
7
- options: n,
8
- value: h,
9
- needleWidth: e,
10
- innerCircleRadius: m,
11
- innerCircleStrokeWidth: x,
12
- diameter: R,
13
- arc: a,
14
- distanceBetweenRanges: c,
15
- distanceFromRange: s,
16
- gaugeWidth: i
17
- } = p, o = n.findIndex(
18
- (F) => h === F.value
19
- ), d = R / 2, f = (360 - a) / 2, l = a - (n.length - 1) * c, g = o / n.length, v = (o + 1) / n.length, A = l * (v - g), t = f + c * o + l * g + A / 2, { x: C, y: I } = y(d, t), S = T(
20
- C,
21
- r(t),
22
- s + i + e / 2
23
- ), X = W(
1
+ import { j as n } from "./sd-component-library190.js";
2
+ import { useHover as Z } from "./sd-component-library3.js";
3
+ import { getCoordinateForArc as l } from "./sd-component-library86.js";
4
+ import { getSegmentCoordinates as O } from "./sd-component-library234.js";
5
+ import { SegmentLabel as q } from "./sd-component-library318.js";
6
+ const h = 300, G = ({
7
+ segment: o,
8
+ segmentWidth: $,
9
+ outlineWidth: f,
10
+ size: i,
11
+ mobile: a,
12
+ ...c
13
+ }) => {
14
+ const { start: p, end: x, color: u } = o, { labelOffset: j } = c, t = i / 2, d = t - $, {
15
+ startInnerX: k,
16
+ startInnerY: A,
17
+ endInnerX: M,
18
+ endInnerY: X,
19
+ endX: Y,
20
+ endY: v,
21
+ startY: S,
22
+ startX: g,
23
+ arc: e
24
+ } = O(o, t, $), r = i / 2, H = Math.round(p * 360), I = Math.round(x * 360), { isHover: L, hoverCallbacks: w } = Z(), m = L && !a, s = Math.sqrt(2) * (t + j), { x: y, y: C } = l(
25
+ s,
26
+ H,
27
+ t
28
+ ), { x: E, y: R } = l(
29
+ s,
24
30
  I,
25
- r(t),
26
- s + i + e / 2
27
- ), Y = e / 2 * Math.cos(r(t)), j = e / 2 * Math.sin(r(t));
28
- return /* @__PURE__ */ M.jsx(
29
- B,
30
- {
31
- dx: Y,
32
- dy: j,
33
- color: u,
34
- radius: d,
35
- tipX: S,
36
- tipY: X,
37
- innerCircleStrokeWidth: x,
38
- innerCircleRadius: m,
39
- needleWidth: e
40
- }
31
+ t
41
32
  );
42
- }
33
+ return /* @__PURE__ */ n.jsxs("g", { ...a ? {} : w, children: [
34
+ /* @__PURE__ */ n.jsx(
35
+ "path",
36
+ {
37
+ d: `M${r},${r} L${y},${C} A${s},${s} 0 ${e > 180 ? "1" : "0"},1 ${E},${R}Z`,
38
+ fill: "transparent"
39
+ }
40
+ ),
41
+ /* @__PURE__ */ n.jsx(
42
+ "path",
43
+ {
44
+ d: `M${r},${r} L${g},${S} A${t},${t} 0 ${e > 180 ? "1" : "0"},1 ${Y},${v}Z`,
45
+ fill: u,
46
+ strokeWidth: f,
47
+ stroke: "white"
48
+ }
49
+ ),
50
+ /* @__PURE__ */ n.jsx(
51
+ "path",
52
+ {
53
+ d: `M${r},${r} L${k},${A} A${d},${d} 0 ${e > 180 ? "1" : "0"},1 ${M},${X}Z`,
54
+ fill: "white",
55
+ style: {
56
+ transform: `scale(${m ? 0.8 : 1}`,
57
+ transformOrigin: "center",
58
+ transition: `all ${h}ms`
59
+ }
60
+ }
61
+ ),
62
+ /* @__PURE__ */ n.jsx(
63
+ q,
64
+ {
65
+ segment: o,
66
+ radius: t,
67
+ animationDuration: h,
68
+ isHover: m,
69
+ mobile: a,
70
+ ...c
71
+ }
72
+ )
73
+ ] });
74
+ };
43
75
  export {
44
- E as DiscreteMeterNeedle
76
+ G as Segment
45
77
  };
46
78
  //# sourceMappingURL=sd-component-library235.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library235.js","sources":["../src/components/meters/multi-option-discrete-outline-meter/partials/discrete-meter-needle/discrete-meter-needle.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\n\nimport { BaseNeedle } from \"../../../outline-meter/partials/base-needle\";\nimport {\n degToRad,\n getCoordinateForArc,\n getInnerX,\n getInnerY,\n} from \"../../../outline-meter/utils\";\nimport { DiscreteMeterNeedleProps as Props } from \"./interfaces\";\n\nexport function DiscreteMeterNeedle<T>(props: PropsWithChildren<Props<T>>) {\n const {\n needleColor,\n options,\n value,\n needleWidth,\n innerCircleRadius,\n innerCircleStrokeWidth,\n diameter,\n arc,\n distanceBetweenRanges,\n distanceFromRange,\n gaugeWidth,\n } = props;\n\n const matchingRangeIndex = options.findIndex(\n (option) => value === option.value\n );\n\n const radius = diameter / 2;\n\n const arcStart = (360 - arc) / 2;\n const arcForRanges = arc - (options.length - 1) * distanceBetweenRanges;\n\n const start = matchingRangeIndex / options.length;\n const end = (matchingRangeIndex + 1) / options.length;\n\n const rangeArc = arcForRanges * (end - start);\n\n const rangeArcStart =\n arcStart +\n distanceBetweenRanges * matchingRangeIndex +\n arcForRanges * start;\n\n const valueAlpha = rangeArcStart + rangeArc / 2;\n const { x: valueX, y: valueY } = getCoordinateForArc(radius, valueAlpha);\n\n const needleTipX = getInnerX(\n valueX,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n const needleTipY = getInnerY(\n valueY,\n degToRad(valueAlpha),\n distanceFromRange + gaugeWidth + needleWidth / 2\n );\n\n const dx = (needleWidth / 2) * Math.cos(degToRad(valueAlpha));\n const dy = (needleWidth / 2) * Math.sin(degToRad(valueAlpha));\n\n return (\n <BaseNeedle\n dx={dx}\n dy={dy}\n color={needleColor}\n radius={radius}\n tipX={needleTipX}\n tipY={needleTipY}\n innerCircleStrokeWidth={innerCircleStrokeWidth}\n innerCircleRadius={innerCircleRadius}\n needleWidth={needleWidth}\n />\n );\n}\n"],"names":["DiscreteMeterNeedle","props","needleColor","options","value","needleWidth","innerCircleRadius","innerCircleStrokeWidth","diameter","arc","distanceBetweenRanges","distanceFromRange","gaugeWidth","matchingRangeIndex","option","radius","arcStart","arcForRanges","start","end","rangeArc","valueAlpha","valueX","valueY","getCoordinateForArc","needleTipX","getInnerX","degToRad","needleTipY","getInnerY","dx","dy","jsx","BaseNeedle"],"mappings":";;;AAWO,SAASA,EAAuBC,GAAoC;AACnE,QAAA;AAAA,IACJ,aAAAC;AAAA,IACA,SAAAC;AAAA,IACA,OAAAC;AAAA,IACA,aAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,KAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,YAAAC;AAAA,EACE,IAAAX,GAEEY,IAAqBV,EAAQ;AAAA,IACjC,CAACW,MAAWV,MAAUU,EAAO;AAAA,EAAA,GAGzBC,IAASP,IAAW,GAEpBQ,KAAY,MAAMP,KAAO,GACzBQ,IAAeR,KAAON,EAAQ,SAAS,KAAKO,GAE5CQ,IAAQL,IAAqBV,EAAQ,QACrCgB,KAAON,IAAqB,KAAKV,EAAQ,QAEzCiB,IAAWH,KAAgBE,IAAMD,IAOjCG,IAJJL,IACAN,IAAwBG,IACxBI,IAAeC,IAEkBE,IAAW,GACxC,EAAE,GAAGE,GAAQ,GAAGC,MAAWC,EAAoBT,GAAQM,CAAU,GAEjEI,IAAaC;AAAA,IACjBJ;AAAA,IACAK,EAASN,CAAU;AAAA,IACnBV,IAAoBC,IAAaP,IAAc;AAAA,EAAA,GAE3CuB,IAAaC;AAAA,IACjBN;AAAA,IACAI,EAASN,CAAU;AAAA,IACnBV,IAAoBC,IAAaP,IAAc;AAAA,EAAA,GAG3CyB,IAAMzB,IAAc,IAAK,KAAK,IAAIsB,EAASN,CAAU,CAAC,GACtDU,IAAM1B,IAAc,IAAK,KAAK,IAAIsB,EAASN,CAAU,CAAC;AAG1D,SAAAW,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAAH;AAAA,MACA,IAAAC;AAAA,MACA,OAAO7B;AAAA,MACP,QAAAa;AAAA,MACA,MAAMU;AAAA,MACN,MAAMG;AAAA,MACN,wBAAArB;AAAA,MACA,mBAAAD;AAAA,MACA,aAAAD;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"sd-component-library235.js","sources":["../src/components/meters/donut-diagram/partials/segment/segment.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { useHover } from \"../../../../../core/custom-hooks\";\nimport { getCoordinateForArc } from \"../../../outline-meter/utils\";\nimport { getSegmentCoordinates } from \"../../utils\";\nimport { SegmentLabel } from \"../segment-label\";\nimport { SegmentProps as Props } from \"./interfaces\";\n\nconst animationDuration = 300;\n\nexport const Segment: React.FC<Props> = ({\n segment,\n segmentWidth,\n outlineWidth,\n size: diameter,\n mobile,\n ...labelProps\n}) => {\n const { start, end, color } = segment;\n const { labelOffset } = labelProps;\n\n const radius = diameter / 2;\n const innerRadius = radius - segmentWidth;\n\n const {\n startInnerX,\n startInnerY,\n endInnerX,\n endInnerY,\n endX,\n endY,\n startY,\n startX,\n arc,\n } = getSegmentCoordinates(segment, radius, segmentWidth);\n\n const center = diameter / 2;\n\n const startAlpha = Math.round(start * 360);\n const endAlpha = Math.round(end * 360);\n\n const { isHover, hoverCallbacks } = useHover();\n const showHover = isHover && !mobile;\n\n const maxRadius = Math.sqrt(2) * (radius + labelOffset);\n\n const { x: maskStartX, y: maskStartY } = getCoordinateForArc(\n maxRadius,\n startAlpha,\n radius\n );\n\n const { x: maskEndX, y: maskEndY } = getCoordinateForArc(\n maxRadius,\n endAlpha,\n radius\n );\n\n return (\n <g {...(mobile ? {} : hoverCallbacks)}>\n {/* mask */}\n <path\n d={`M${center},${center} L${maskStartX},${maskStartY} A${maxRadius},${maxRadius} 0 ${\n arc > 180 ? \"1\" : \"0\"\n },1 ${maskEndX},${maskEndY}Z`}\n fill=\"transparent\"\n />\n\n {/* colored sector */}\n <path\n d={`M${center},${center} L${startX},${startY} A${radius},${radius} 0 ${\n arc > 180 ? \"1\" : \"0\"\n },1 ${endX},${endY}Z`}\n fill={color}\n strokeWidth={outlineWidth}\n stroke=\"white\"\n />\n\n {/* white inner sector */}\n <path\n d={`M${center},${center} L${startInnerX},${startInnerY} A${innerRadius},${innerRadius} 0 ${\n arc > 180 ? \"1\" : \"0\"\n },1 ${endInnerX},${endInnerY}Z`}\n fill=\"white\"\n style={{\n transform: `scale(${showHover ? 0.8 : 1}`,\n transformOrigin: \"center\",\n transition: `all ${animationDuration}ms`,\n }}\n />\n\n <SegmentLabel\n segment={segment}\n radius={radius}\n animationDuration={animationDuration}\n isHover={showHover}\n mobile={mobile}\n {...labelProps}\n />\n </g>\n );\n};\n"],"names":["animationDuration","Segment","segment","segmentWidth","outlineWidth","diameter","mobile","labelProps","start","end","color","labelOffset","radius","innerRadius","startInnerX","startInnerY","endInnerX","endInnerY","endX","endY","startY","startX","arc","getSegmentCoordinates","center","startAlpha","endAlpha","isHover","hoverCallbacks","useHover","showHover","maxRadius","maskStartX","maskStartY","getCoordinateForArc","maskEndX","maskEndY","jsx","SegmentLabel"],"mappings":";;;;;AAQA,MAAMA,IAAoB,KAEbC,IAA2B,CAAC;AAAA,EACvC,SAAAC;AAAA,EACA,cAAAC;AAAA,EACA,cAAAC;AAAA,EACA,MAAMC;AAAA,EACN,QAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,EAAE,OAAAC,GAAO,KAAAC,GAAK,OAAAC,EAAA,IAAUR,GACxB,EAAE,aAAAS,EAAgB,IAAAJ,GAElBK,IAASP,IAAW,GACpBQ,IAAcD,IAAST,GAEvB;AAAA,IACJ,aAAAW;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,MAAAC;AAAA,IACA,MAAAC;AAAA,IACA,QAAAC;AAAA,IACA,QAAAC;AAAA,IACA,KAAAC;AAAA,EACE,IAAAC,EAAsBrB,GAASU,GAAQT,CAAY,GAEjDqB,IAASnB,IAAW,GAEpBoB,IAAa,KAAK,MAAMjB,IAAQ,GAAG,GACnCkB,IAAW,KAAK,MAAMjB,IAAM,GAAG,GAE/B,EAAE,SAAAkB,GAAS,gBAAAC,EAAe,IAAIC,EAAS,GACvCC,IAAYH,KAAW,CAACrB,GAExByB,IAAY,KAAK,KAAK,CAAC,KAAKnB,IAASD,IAErC,EAAE,GAAGqB,GAAY,GAAGC,EAAe,IAAAC;AAAA,IACvCH;AAAA,IACAN;AAAA,IACAb;AAAA,EAAA,GAGI,EAAE,GAAGuB,GAAU,GAAGC,EAAa,IAAAF;AAAA,IACnCH;AAAA,IACAL;AAAA,IACAd;AAAA,EAAA;AAGF,gCACG,KAAG,EAAA,GAAIN,IAAS,KAAKsB,GAEpB,UAAA;AAAA,IAAAS,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,GAAG,IAAIb,CAAM,IAAIA,CAAM,KAAKQ,CAAU,IAAIC,CAAU,KAAKF,CAAS,IAAIA,CAAS,MAC7ET,IAAM,MAAM,MAAM,GACpB,MAAMa,CAAQ,IAAIC,CAAQ;AAAA,QAC1B,MAAK;AAAA,MAAA;AAAA,IACP;AAAA,IAGAC,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,GAAG,IAAIb,CAAM,IAAIA,CAAM,KAAKH,CAAM,IAAID,CAAM,KAAKR,CAAM,IAAIA,CAAM,MAC/DU,IAAM,MAAM,MAAM,GACpB,MAAMJ,CAAI,IAAIC,CAAI;AAAA,QAClB,MAAMT;AAAA,QACN,aAAaN;AAAA,QACb,QAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAGAiC,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,GAAG,IAAIb,CAAM,IAAIA,CAAM,KAAKV,CAAW,IAAIC,CAAW,KAAKF,CAAW,IAAIA,CAAW,MACnFS,IAAM,MAAM,MAAM,GACpB,MAAMN,CAAS,IAAIC,CAAS;AAAA,QAC5B,MAAK;AAAA,QACL,OAAO;AAAA,UACL,WAAW,SAASa,IAAY,MAAM,CAAC;AAAA,UACvC,iBAAiB;AAAA,UACjB,YAAY,OAAO9B,CAAiB;AAAA,QACtC;AAAA,MAAA;AAAA,IACF;AAAA,IAEAqC,gBAAAA,EAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAApC;AAAA,QACA,QAAAU;AAAA,QACA,mBAAAZ;AAAA,QACA,SAAS8B;AAAA,QACT,QAAAxB;AAAA,QACC,GAAGC;AAAA,MAAA;AAAA,IACN;AAAA,EACF,EAAA,CAAA;AAEJ;"}