@gympass/yoga 7.87.1 → 7.88.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (928) hide show
  1. package/cjs/Accordion/Accordion.theme.js +44 -33
  2. package/cjs/Accordion/index.js +34 -10
  3. package/cjs/Accordion/web/Accordion.js +300 -150
  4. package/cjs/Accordion/web/Accordion.test.js +139 -0
  5. package/cjs/Accordion/web/Content.js +47 -19
  6. package/cjs/Accordion/web/Small.js +56 -20
  7. package/cjs/Accordion/web/Summary.js +52 -19
  8. package/cjs/Accordion/web/index.js +40 -19
  9. package/cjs/ActionRequirement/ActionRequirement.theme.js +23 -9
  10. package/cjs/ActionRequirement/index.js +34 -10
  11. package/cjs/ActionRequirement/index.native.js +35 -1
  12. package/cjs/ActionRequirement/native/ActionRequirement.js +85 -1
  13. package/cjs/ActionRequirement/native/ActionRequirement.test.js +72 -0
  14. package/cjs/ActionRequirement/native/ActionRequirementStyles.js +106 -1
  15. package/cjs/ActionRequirement/native/index.js +39 -1
  16. package/cjs/ActionRequirement/web/ActionRequirement.js +120 -68
  17. package/cjs/ActionRequirement/web/ActionRequirement.test.js +66 -0
  18. package/cjs/ActionRequirement/web/ActionRequirementStyles.js +104 -43
  19. package/cjs/ActionRequirement/web/index.js +38 -15
  20. package/cjs/AutoComplete/AutoComplete.theme.js +73 -37
  21. package/cjs/AutoComplete/index.js +34 -10
  22. package/cjs/AutoComplete/web/AutoComplete.js +350 -213
  23. package/cjs/AutoComplete/web/AutoComplete.test.js +158 -0
  24. package/cjs/AutoComplete/web/index.js +34 -10
  25. package/cjs/Avatar/Avatar.theme.js +23 -9
  26. package/cjs/Avatar/index.js +36 -13
  27. package/cjs/Avatar/index.native.js +37 -1
  28. package/cjs/Avatar/native/Avatar.js +169 -1
  29. package/cjs/Avatar/native/Avatar.test.js +62 -0
  30. package/cjs/Avatar/native/AvatarCircle.js +82 -1
  31. package/cjs/Avatar/web/Avatar.js +144 -134
  32. package/cjs/Avatar/web/Avatar.test.js +79 -0
  33. package/cjs/Avatar/web/AvatarCircle.js +81 -40
  34. package/cjs/Banner/Banner.theme.js +28 -16
  35. package/cjs/Banner/index.js +34 -10
  36. package/cjs/Banner/index.native.js +35 -1
  37. package/cjs/Banner/native/Banner.js +181 -1
  38. package/cjs/Banner/native/Banner.test.js +136 -0
  39. package/cjs/Banner/native/index.js +35 -1
  40. package/cjs/Banner/web/Banner.js +162 -129
  41. package/cjs/Banner/web/Banner.test.js +136 -0
  42. package/cjs/Banner/web/index.js +34 -10
  43. package/cjs/BottomSheet/BottomSheet.theme.js +42 -30
  44. package/cjs/BottomSheet/index.js +34 -10
  45. package/cjs/BottomSheet/web/BottomSheet.js +81 -35
  46. package/cjs/BottomSheet/web/BottomSheet.test.js +70 -0
  47. package/cjs/BottomSheet/web/Content.js +50 -25
  48. package/cjs/BottomSheet/web/Footer.js +47 -20
  49. package/cjs/BottomSheet/web/Header.js +49 -24
  50. package/cjs/BottomSheet/web/index.js +40 -19
  51. package/cjs/Box/index.js +34 -10
  52. package/cjs/Box/index.native.js +35 -1
  53. package/cjs/Box/native/Box.js +37 -1
  54. package/cjs/Box/native/Box.test.js +44 -0
  55. package/cjs/Box/native/index.js +35 -1
  56. package/cjs/Box/web/Box.js +36 -14
  57. package/cjs/Box/web/Box.test.js +44 -0
  58. package/cjs/Box/web/index.js +34 -10
  59. package/cjs/Button/Button.theme.js +132 -118
  60. package/cjs/Button/index.js +42 -22
  61. package/cjs/Button/index.native.js +41 -1
  62. package/cjs/Button/native/Button.js +231 -1
  63. package/cjs/Button/native/Button.test.js +365 -0
  64. package/cjs/Button/native/Icon.js +184 -1
  65. package/cjs/Button/native/Link.js +92 -1
  66. package/cjs/Button/native/Text.js +158 -1
  67. package/cjs/Button/native/withTouchable.js +117 -1
  68. package/cjs/Button/web/Button.js +140 -88
  69. package/cjs/Button/web/Button.test.js +971 -0
  70. package/cjs/Button/web/Icon.js +138 -72
  71. package/cjs/Button/web/Link.js +134 -48
  72. package/cjs/Button/web/Outline.js +134 -21
  73. package/cjs/Button/web/StyledButton.js +151 -22
  74. package/cjs/Button/web/Text.js +149 -46
  75. package/cjs/Card/Card.native.theme.js +55 -44
  76. package/cjs/Card/Card.theme.js +150 -135
  77. package/cjs/Card/Card.web.theme.js +52 -40
  78. package/cjs/Card/index.js +31 -8
  79. package/cjs/Card/index.native.js +34 -1
  80. package/cjs/Card/native/Card/Actions.js +41 -1
  81. package/cjs/Card/native/Card/Card.js +209 -1
  82. package/cjs/Card/native/Card/Card.test.js +43 -0
  83. package/cjs/Card/native/Card/Content.js +37 -1
  84. package/cjs/Card/native/Card/Header.js +37 -1
  85. package/cjs/Card/native/Card/index.js +41 -1
  86. package/cjs/Card/native/EventCard/EventCard.js +240 -1
  87. package/cjs/Card/native/EventCard/EventCard.test.js +94 -0
  88. package/cjs/Card/native/EventCard/index.js +35 -1
  89. package/cjs/Card/native/GymCard/CheckIn/Avatar.js +82 -1
  90. package/cjs/Card/native/GymCard/CheckIn/CheckIn.js +141 -1
  91. package/cjs/Card/native/GymCard/CheckIn/CheckIn.test.js +69 -0
  92. package/cjs/Card/native/GymCard/CheckIn/Content.js +51 -1
  93. package/cjs/Card/native/GymCard/CheckIn/Header.js +54 -1
  94. package/cjs/Card/native/GymCard/CheckIn/index.js +35 -1
  95. package/cjs/Card/native/GymCard/index.js +38 -1
  96. package/cjs/Card/native/PlanCard/Actions.js +63 -1
  97. package/cjs/Card/native/PlanCard/Content.js +162 -1
  98. package/cjs/Card/native/PlanCard/List.js +146 -1
  99. package/cjs/Card/native/PlanCard/PlanCard.js +146 -1
  100. package/cjs/Card/native/PlanCard/PlanCard.test.js +123 -0
  101. package/cjs/Card/native/PlanCard/Subtitle.js +55 -1
  102. package/cjs/Card/native/PlanCard/Tag.js +90 -1
  103. package/cjs/Card/native/PlanCard/index.js +48 -1
  104. package/cjs/Card/native/index.js +47 -1
  105. package/cjs/Card/web/Card/Actions.js +39 -23
  106. package/cjs/Card/web/Card/Card.js +149 -63
  107. package/cjs/Card/web/Card/Card.test.js +42 -0
  108. package/cjs/Card/web/Card/Content.js +36 -12
  109. package/cjs/Card/web/Card/Header.js +37 -20
  110. package/cjs/Card/web/Card/index.js +40 -19
  111. package/cjs/Card/web/EventCard/EventCard.js +205 -85
  112. package/cjs/Card/web/EventCard/EventCard.test.js +48 -0
  113. package/cjs/Card/web/EventCard/index.js +34 -10
  114. package/cjs/Card/web/PlanCard/Actions.js +60 -32
  115. package/cjs/Card/web/PlanCard/Content.js +177 -99
  116. package/cjs/Card/web/PlanCard/List.js +175 -91
  117. package/cjs/Card/web/PlanCard/List.test.js +62 -0
  118. package/cjs/Card/web/PlanCard/PlanCard.js +204 -89
  119. package/cjs/Card/web/PlanCard/PlanCard.test.js +177 -0
  120. package/cjs/Card/web/PlanCard/Subtitle.js +53 -28
  121. package/cjs/Card/web/PlanCard/Tag.js +50 -30
  122. package/cjs/Card/web/PlanCard/index.js +47 -28
  123. package/cjs/Card/web/index.js +43 -16
  124. package/cjs/Checkbox/CheckIcon.js +24 -6
  125. package/cjs/Checkbox/Checkbox.theme.js +63 -54
  126. package/cjs/Checkbox/CheckboxSwitch.theme.js +84 -70
  127. package/cjs/Checkbox/index.js +25 -9
  128. package/cjs/Checkbox/index.native.js +26 -1
  129. package/cjs/Checkbox/native/Checkbox.js +304 -1
  130. package/cjs/Checkbox/native/Checkbox.test.js +129 -0
  131. package/cjs/Checkbox/native/Switch.js +196 -1
  132. package/cjs/Checkbox/native/Switch.test.js +73 -0
  133. package/cjs/Checkbox/native/index.js +41 -1
  134. package/cjs/Checkbox/web/Checkbox.js +339 -175
  135. package/cjs/Checkbox/web/Checkbox.test.js +160 -0
  136. package/cjs/Checkbox/web/Switch.js +190 -76
  137. package/cjs/Checkbox/web/Switch.test.js +66 -0
  138. package/cjs/Checkbox/web/index.js +40 -12
  139. package/cjs/Chips/index.js +34 -10
  140. package/cjs/Chips/index.native.js +35 -1
  141. package/cjs/Chips/native/Chips.js +210 -1
  142. package/cjs/Chips/native/Chips.test.js +131 -0
  143. package/cjs/Chips/native/Counter.js +66 -1
  144. package/cjs/Chips/native/index.js +35 -1
  145. package/cjs/Chips/web/Chips.js +238 -116
  146. package/cjs/Chips/web/Chips.test.js +125 -0
  147. package/cjs/Chips/web/Counter.js +57 -24
  148. package/cjs/Chips/web/index.js +34 -10
  149. package/cjs/Datepicker/Datepicker.theme.js +30 -16
  150. package/cjs/Datepicker/index.js +34 -10
  151. package/cjs/Datepicker/web/Calendar.js +320 -289
  152. package/cjs/Datepicker/web/Datepicker.js +349 -251
  153. package/cjs/Datepicker/web/Datepicker.test.js +246 -0
  154. package/cjs/Datepicker/web/index.js +34 -10
  155. package/cjs/Dialog/Dialog.theme.js +41 -29
  156. package/cjs/Dialog/index.js +34 -10
  157. package/cjs/Dialog/web/Content.js +56 -20
  158. package/cjs/Dialog/web/Dialog.js +171 -108
  159. package/cjs/Dialog/web/Dialog.test.js +92 -0
  160. package/cjs/Dialog/web/Footer.js +51 -23
  161. package/cjs/Dialog/web/Header.js +56 -20
  162. package/cjs/Dialog/web/index.js +40 -19
  163. package/cjs/Divider/Divider.theme.js +23 -9
  164. package/cjs/Divider/index.js +34 -10
  165. package/cjs/Divider/index.native.js +35 -1
  166. package/cjs/Divider/native/Divider.js +63 -1
  167. package/cjs/Divider/native/Divider.test.js +67 -0
  168. package/cjs/Divider/native/index.js +35 -1
  169. package/cjs/Divider/web/Divider.js +84 -51
  170. package/cjs/Divider/web/Divider.test.js +49 -0
  171. package/cjs/Divider/web/index.js +34 -10
  172. package/cjs/Drawer/Drawer.theme.js +33 -20
  173. package/cjs/Drawer/index.js +34 -10
  174. package/cjs/Drawer/web/Content.js +43 -18
  175. package/cjs/Drawer/web/Drawer.js +83 -34
  176. package/cjs/Drawer/web/Drawer.test.js +56 -0
  177. package/cjs/Drawer/web/Footer.js +52 -21
  178. package/cjs/Drawer/web/Header.js +51 -22
  179. package/cjs/Drawer/web/index.js +40 -19
  180. package/cjs/Dropdown/Dropdown.theme.js +179 -165
  181. package/cjs/Dropdown/index.js +34 -10
  182. package/cjs/Dropdown/index.native.js +35 -1
  183. package/cjs/Dropdown/native/Backdrop.js +180 -1
  184. package/cjs/Dropdown/native/Backdrop.test.js +45 -0
  185. package/cjs/Dropdown/native/Dropdown.js +240 -1
  186. package/cjs/Dropdown/native/Dropdown.test.js +97 -0
  187. package/cjs/Dropdown/native/Options.android.js +111 -1
  188. package/cjs/Dropdown/native/Options.ios.js +125 -1
  189. package/cjs/Dropdown/native/index.js +35 -1
  190. package/cjs/Dropdown/web/Dropdown.js +395 -208
  191. package/cjs/Dropdown/web/Dropdown.test.js +114 -0
  192. package/cjs/Dropdown/web/index.js +34 -10
  193. package/cjs/Feedback/Feedback.theme.js +27 -13
  194. package/cjs/Feedback/index.js +34 -10
  195. package/cjs/Feedback/web/Feedback.js +130 -85
  196. package/cjs/Feedback/web/Feedback.test.js +96 -0
  197. package/cjs/Feedback/web/StyledFeedback.js +125 -52
  198. package/cjs/Feedback/web/index.js +38 -15
  199. package/cjs/Grid/Grid.theme.js +40 -26
  200. package/cjs/Grid/index.js +33 -9
  201. package/cjs/Grid/web/Col.js +93 -80
  202. package/cjs/Grid/web/Col.test.js +62 -0
  203. package/cjs/Grid/web/Container.js +92 -40
  204. package/cjs/Grid/web/Container.test.js +38 -0
  205. package/cjs/Grid/web/Hide.js +73 -66
  206. package/cjs/Grid/web/Hide.test.js +44 -0
  207. package/cjs/Grid/web/Row.js +63 -25
  208. package/cjs/Grid/web/Row.test.js +38 -0
  209. package/cjs/Grid/web/index.js +46 -20
  210. package/cjs/Header/Header.theme.js +32 -19
  211. package/cjs/Header/index.js +34 -10
  212. package/cjs/Header/web/GympassLogo.js +97 -41
  213. package/cjs/Header/web/Header.js +106 -64
  214. package/cjs/Header/web/Header.test.js +61 -0
  215. package/cjs/Header/web/Logo.js +38 -19
  216. package/cjs/Header/web/index.js +34 -10
  217. package/cjs/Heading/Heading.theme.js +36 -24
  218. package/cjs/Heading/index.js +34 -10
  219. package/cjs/Heading/web/BackButton.js +86 -44
  220. package/cjs/Heading/web/Heading.js +96 -64
  221. package/cjs/Heading/web/Heading.test.js +76 -0
  222. package/cjs/Heading/web/RightButton.js +88 -48
  223. package/cjs/Heading/web/StyledHeading.js +75 -26
  224. package/cjs/Heading/web/Title.js +72 -36
  225. package/cjs/Heading/web/index.js +40 -19
  226. package/cjs/Icon/Icon.js +161 -116
  227. package/cjs/Icon/Icon.theme.js +23 -9
  228. package/cjs/Icon/index.js +34 -10
  229. package/cjs/Icon/index.native.js +35 -1
  230. package/cjs/Icon/native/Icon.test.js +90 -0
  231. package/cjs/Icon/native/index.js +35 -1
  232. package/cjs/Icon/web/Icon.test.js +90 -0
  233. package/cjs/Icon/web/index.js +34 -10
  234. package/cjs/Input/Input.theme.js +78 -63
  235. package/cjs/Input/index.js +29 -13
  236. package/cjs/Input/index.native.js +29 -1
  237. package/cjs/Input/native/Email.js +65 -1
  238. package/cjs/Input/native/Email.test.js +37 -0
  239. package/cjs/Input/native/Helper.js +117 -1
  240. package/cjs/Input/native/Input.js +385 -1
  241. package/cjs/Input/native/Input.test.js +155 -0
  242. package/cjs/Input/native/Number.js +57 -1
  243. package/cjs/Input/native/Number.test.js +37 -0
  244. package/cjs/Input/native/Password.js +194 -1
  245. package/cjs/Input/native/Password.test.js +132 -0
  246. package/cjs/Input/native/Tel.js +64 -1
  247. package/cjs/Input/native/Tel.test.js +37 -0
  248. package/cjs/Input/native/index.js +50 -1
  249. package/cjs/Input/web/Email.js +55 -21
  250. package/cjs/Input/web/Email.test.js +37 -0
  251. package/cjs/Input/web/Field.js +142 -29
  252. package/cjs/Input/web/Fieldset.js +69 -18
  253. package/cjs/Input/web/Helper.js +121 -70
  254. package/cjs/Input/web/Input.js +310 -215
  255. package/cjs/Input/web/Input.test.js +152 -0
  256. package/cjs/Input/web/Label.js +60 -21
  257. package/cjs/Input/web/Legend.js +102 -40
  258. package/cjs/Input/web/Number.js +55 -21
  259. package/cjs/Input/web/Number.test.js +37 -0
  260. package/cjs/Input/web/Password.js +162 -96
  261. package/cjs/Input/web/Password.test.js +107 -0
  262. package/cjs/Input/web/Phone.js +171 -121
  263. package/cjs/Input/web/Phone.style.js +320 -26
  264. package/cjs/Input/web/Phone.test.js +112 -0
  265. package/cjs/Input/web/Tel.js +53 -21
  266. package/cjs/Input/web/Tel.test.js +37 -0
  267. package/cjs/Input/web/data-images.js +43 -9
  268. package/cjs/Input/web/index.js +52 -28
  269. package/cjs/List/List.theme.js +44 -33
  270. package/cjs/List/index.js +26 -10
  271. package/cjs/List/index.native.js +26 -1
  272. package/cjs/List/native/List.js +71 -1
  273. package/cjs/List/native/List.test.js +111 -0
  274. package/cjs/List/native/ListItem.js +137 -1
  275. package/cjs/List/native/index.js +41 -1
  276. package/cjs/List/web/LinkItem.js +86 -25
  277. package/cjs/List/web/List.js +94 -44
  278. package/cjs/List/web/List.test.js +87 -0
  279. package/cjs/List/web/ListItem.js +81 -27
  280. package/cjs/List/web/index.js +43 -16
  281. package/cjs/Menu/Menu.theme.js +59 -49
  282. package/cjs/Menu/index.js +40 -19
  283. package/cjs/Menu/web/Menu.js +44 -42
  284. package/cjs/Menu/web/Menu.test.js +147 -0
  285. package/cjs/Menu/web/MenuAction.js +39 -22
  286. package/cjs/Menu/web/MenuItem.js +179 -86
  287. package/cjs/Menu/web/MenuList.js +89 -67
  288. package/cjs/Popover/Popover.theme.js +23 -9
  289. package/cjs/Popover/index.js +34 -10
  290. package/cjs/Popover/web/Popover.js +165 -110
  291. package/cjs/Popover/web/Popover.test.js +63 -0
  292. package/cjs/Popover/web/index.js +34 -10
  293. package/cjs/Popover/web/styles.js +141 -72
  294. package/cjs/Progress/Progress.theme.js +36 -26
  295. package/cjs/Progress/index.js +34 -10
  296. package/cjs/Progress/index.native.js +35 -1
  297. package/cjs/Progress/native/Progress.js +219 -1
  298. package/cjs/Progress/native/Progress.test.js +157 -0
  299. package/cjs/Progress/native/index.js +35 -1
  300. package/cjs/Progress/web/Progress.js +211 -88
  301. package/cjs/Progress/web/Progress.test.js +157 -0
  302. package/cjs/Progress/web/index.js +34 -10
  303. package/cjs/RadioGroup/RadioGroup.theme.js +69 -54
  304. package/cjs/RadioGroup/RadioGroupContext.js +25 -9
  305. package/cjs/RadioGroup/index.js +26 -10
  306. package/cjs/RadioGroup/index.native.js +27 -1
  307. package/cjs/RadioGroup/native/Button/RadioButton.js +141 -1
  308. package/cjs/RadioGroup/native/Button/RadioButton.test.js +93 -0
  309. package/cjs/RadioGroup/native/Radio/Radio.js +199 -1
  310. package/cjs/RadioGroup/native/Radio/Radio.test.js +97 -0
  311. package/cjs/RadioGroup/native/RadioGroup.js +135 -1
  312. package/cjs/RadioGroup/native/RadioGroup.test.js +79 -0
  313. package/cjs/RadioGroup/native/index.js +44 -1
  314. package/cjs/RadioGroup/web/Button/RadioButton.js +175 -78
  315. package/cjs/RadioGroup/web/Button/RadioButton.test.js +110 -0
  316. package/cjs/RadioGroup/web/Radio/Radio.js +238 -83
  317. package/cjs/RadioGroup/web/Radio/Radio.test.js +96 -0
  318. package/cjs/RadioGroup/web/RadioGroup.js +116 -62
  319. package/cjs/RadioGroup/web/RadioGroup.test.js +105 -0
  320. package/cjs/RadioGroup/web/index.js +43 -16
  321. package/cjs/Rating/Rating.theme.js +29 -17
  322. package/cjs/Rating/index.js +34 -10
  323. package/cjs/Rating/index.native.js +35 -1
  324. package/cjs/Rating/native/Rating.js +225 -1
  325. package/cjs/Rating/native/Rating.test.js +112 -0
  326. package/cjs/Rating/native/index.js +35 -1
  327. package/cjs/Rating/web/Rating.js +216 -162
  328. package/cjs/Rating/web/Rating.test.js +169 -0
  329. package/cjs/Rating/web/index.js +34 -10
  330. package/cjs/Result/Result.theme.js +23 -9
  331. package/cjs/Result/index.native.js +41 -1
  332. package/cjs/Result/native/Attendances.js +84 -1
  333. package/cjs/Result/native/Details.js +149 -1
  334. package/cjs/Result/native/Rate.js +69 -1
  335. package/cjs/Result/native/Result.js +128 -1
  336. package/cjs/Result/native/Result.test.js +151 -0
  337. package/cjs/Result/native/ResultButton.js +50 -1
  338. package/cjs/Result/native/Tags.js +93 -1
  339. package/cjs/Result/native/TinyTextIcon.js +57 -1
  340. package/cjs/Result/native/index.js +35 -1
  341. package/cjs/Skeleton/Skeleton.theme.js +40 -28
  342. package/cjs/Skeleton/index.js +34 -10
  343. package/cjs/Skeleton/index.native.js +35 -1
  344. package/cjs/Skeleton/native/Skeleton.js +170 -1
  345. package/cjs/Skeleton/native/Skeleton.test.js +63 -0
  346. package/cjs/Skeleton/native/index.js +35 -1
  347. package/cjs/Skeleton/web/Skeleton.js +126 -57
  348. package/cjs/Skeleton/web/Skeleton.test.js +63 -0
  349. package/cjs/Skeleton/web/index.js +34 -10
  350. package/cjs/Slider/Slider.theme.js +79 -64
  351. package/cjs/Slider/index.js +34 -10
  352. package/cjs/Slider/index.native.js +35 -1
  353. package/cjs/Slider/native/Label.js +68 -1
  354. package/cjs/Slider/native/Marker.js +114 -1
  355. package/cjs/Slider/native/Slider.js +197 -1
  356. package/cjs/Slider/native/Slider.test.js +128 -0
  357. package/cjs/Slider/native/Step.js +57 -1
  358. package/cjs/Slider/native/Tooltip.js +205 -1
  359. package/cjs/Slider/web/Marker.js +109 -67
  360. package/cjs/Slider/web/Slider.js +209 -155
  361. package/cjs/Slider/web/Slider.test.js +100 -0
  362. package/cjs/Slider/web/Tooltip.js +196 -76
  363. package/cjs/Snackbar/Snackbar.theme.js +77 -68
  364. package/cjs/Snackbar/index.js +34 -10
  365. package/cjs/Snackbar/index.native.js +35 -1
  366. package/cjs/Snackbar/native/Snackbar.js +268 -1
  367. package/cjs/Snackbar/native/Snackbar.test.js +129 -0
  368. package/cjs/Snackbar/native/SnackbarAnimationWrapper.js +138 -1
  369. package/cjs/Snackbar/native/index.js +35 -1
  370. package/cjs/Snackbar/web/Snackbar.js +233 -141
  371. package/cjs/Snackbar/web/Snackbar.test.js +149 -0
  372. package/cjs/Snackbar/web/index.js +34 -10
  373. package/cjs/Spinner/Spinner.theme.js +23 -9
  374. package/cjs/Spinner/index.js +34 -10
  375. package/cjs/Spinner/web/Spinner.js +121 -59
  376. package/cjs/Spinner/web/Spinner.test.js +35 -0
  377. package/cjs/Spinner/web/index.js +34 -10
  378. package/cjs/Stepper/Stepper.theme.js +53 -44
  379. package/cjs/Stepper/activeDot.js +23 -9
  380. package/cjs/Stepper/index.js +25 -9
  381. package/cjs/Stepper/index.native.js +26 -1
  382. package/cjs/Stepper/native/Dots.js +105 -1
  383. package/cjs/Stepper/native/Line.js +98 -1
  384. package/cjs/Stepper/native/Step.js +61 -1
  385. package/cjs/Stepper/native/Stepper.js +125 -1
  386. package/cjs/Stepper/native/Stepper.test.js +87 -0
  387. package/cjs/Stepper/native/index.js +41 -1
  388. package/cjs/Stepper/web/Dots.js +121 -62
  389. package/cjs/Stepper/web/Line.js +59 -23
  390. package/cjs/Stepper/web/Step.js +56 -25
  391. package/cjs/Stepper/web/Stepper.js +117 -66
  392. package/cjs/Stepper/web/Stepper.test.js +86 -0
  393. package/cjs/Stepper/web/index.js +40 -12
  394. package/cjs/Tag/Tag.theme.js +54 -45
  395. package/cjs/Tag/index.js +36 -13
  396. package/cjs/Tag/index.native.js +37 -1
  397. package/cjs/Tag/native/Informative.js +155 -1
  398. package/cjs/Tag/native/Tag.js +154 -1
  399. package/cjs/Tag/native/Tag.test.js +97 -0
  400. package/cjs/Tag/native/index.js +35 -1
  401. package/cjs/Tag/web/Informative.js +135 -82
  402. package/cjs/Tag/web/Tag.js +111 -48
  403. package/cjs/Tag/web/Tag.test.js +104 -0
  404. package/cjs/Tag/web/index.js +34 -10
  405. package/cjs/Text/Text.theme.js +91 -80
  406. package/cjs/Text/index.js +38 -22
  407. package/cjs/Text/index.native.js +39 -1
  408. package/cjs/Text/native/Text.js +169 -1
  409. package/cjs/Text/native/Text.test.js +173 -0
  410. package/cjs/Text/native/index.js +56 -1
  411. package/cjs/Text/sharedTextStyle.js +61 -39
  412. package/cjs/Text/textStyle.android.js +55 -28
  413. package/cjs/Text/textStyle.ios.js +37 -21
  414. package/cjs/Text/textStyle.web.js +45 -24
  415. package/cjs/Text/web/Text.js +163 -93
  416. package/cjs/Text/web/Text.test.js +174 -0
  417. package/cjs/Text/web/index.js +55 -20
  418. package/cjs/TextArea/TextArea.theme.js +35 -11
  419. package/cjs/TextArea/index.js +34 -10
  420. package/cjs/TextArea/index.native.js +35 -1
  421. package/cjs/TextArea/native/TextArea.js +92 -1
  422. package/cjs/TextArea/native/TextArea.test.js +35 -0
  423. package/cjs/TextArea/native/index.js +35 -1
  424. package/cjs/TextArea/web/TextArea.js +195 -140
  425. package/cjs/TextArea/web/TextArea.test.js +35 -0
  426. package/cjs/TextArea/web/index.js +34 -10
  427. package/cjs/Theme/Provider/Provider.js +88 -80
  428. package/cjs/Theme/Provider/index.js +29 -7
  429. package/cjs/Theme/Provider/index.native.js +35 -1
  430. package/cjs/Theme/Provider/native/index.js +35 -1
  431. package/cjs/Theme/Provider/web/FontLoader.js +49 -29
  432. package/cjs/Theme/Provider/web/FontLoader.test.js +39 -0
  433. package/cjs/Theme/Provider/web/GlobalStyle.js +36 -15
  434. package/cjs/Theme/Provider/web/GlobalStyle.test.js +44 -0
  435. package/cjs/Theme/Provider/web/ThemeProvider.js +74 -28
  436. package/cjs/Theme/Provider/web/expectCssMatches.js +28 -20
  437. package/cjs/Theme/Provider/web/index.js +40 -12
  438. package/cjs/Theme/helpers/themeGenerator/index.js +34 -10
  439. package/cjs/Theme/helpers/themeGenerator/themeGenerator.js +28 -20
  440. package/cjs/Theme/helpers/themeGenerator/themeGenerator.test.js +37 -28
  441. package/cjs/Theme/helpers/themeReader/base.test.js +56 -42
  442. package/cjs/Theme/helpers/themeReader/index.js +47 -36
  443. package/cjs/Theme/helpers/themeReader/native/native.test.js +61 -0
  444. package/cjs/Theme/helpers/themeReader/web/web.test.js +55 -0
  445. package/cjs/Theme/index.js +47 -21
  446. package/cjs/Theme/index.native.js +46 -1
  447. package/cjs/Theme/theme/index.js +34 -10
  448. package/cjs/Theme/theme/theme.js +84 -185
  449. package/cjs/hooks/index.js +24 -25
  450. package/cjs/hooks/useCombinedRefs.js +34 -22
  451. package/cjs/hooks/useKeyPress.js +37 -27
  452. package/cjs/hooks/usePortal.js +43 -41
  453. package/cjs/index.js +163 -165
  454. package/cjs/index.native.js +122 -1
  455. package/cjs/shared/HiddenInput.js +44 -16
  456. package/cjs/shared/index.js +48 -16
  457. package/cjs/shared/index.native.js +36 -1
  458. package/cjs/shared/propTypes/charLength.js +34 -23
  459. package/cjs/shared/propTypes/deprecated.js +28 -17
  460. package/cjs/shared/propTypes/index.js +49 -24
  461. package/cjs/shared/propTypes/limitChildren.js +30 -18
  462. package/cjs/shared/propTypes/max.js +32 -25
  463. package/cjs/shared/propTypes/typeof.js +45 -25
  464. package/esm/Accordion/Accordion.theme.js +25 -28
  465. package/esm/Accordion/index.js +5 -2
  466. package/esm/Accordion/web/Accordion.js +268 -125
  467. package/esm/Accordion/web/Accordion.test.js +90 -96
  468. package/esm/Accordion/web/Content.js +19 -11
  469. package/esm/Accordion/web/Small.js +27 -10
  470. package/esm/Accordion/web/Summary.js +25 -11
  471. package/esm/Accordion/web/index.js +8 -5
  472. package/esm/ActionRequirement/ActionRequirement.theme.js +4 -4
  473. package/esm/ActionRequirement/index.js +5 -2
  474. package/esm/ActionRequirement/index.native.js +5 -2
  475. package/esm/ActionRequirement/native/ActionRequirement.js +45 -36
  476. package/esm/ActionRequirement/native/ActionRequirement.test.js +41 -37
  477. package/esm/ActionRequirement/native/ActionRequirementStyles.js +67 -23
  478. package/esm/ActionRequirement/native/index.js +10 -3
  479. package/esm/ActionRequirement/web/ActionRequirement.js +90 -44
  480. package/esm/ActionRequirement/web/ActionRequirement.test.js +37 -30
  481. package/esm/ActionRequirement/web/ActionRequirementStyles.js +70 -26
  482. package/esm/ActionRequirement/web/index.js +10 -3
  483. package/esm/AutoComplete/AutoComplete.theme.js +45 -29
  484. package/esm/AutoComplete/index.js +5 -2
  485. package/esm/AutoComplete/web/AutoComplete.js +315 -185
  486. package/esm/AutoComplete/web/AutoComplete.test.js +114 -131
  487. package/esm/AutoComplete/web/index.js +5 -2
  488. package/esm/Avatar/Avatar.theme.js +4 -4
  489. package/esm/Avatar/index.js +6 -3
  490. package/esm/Avatar/index.native.js +6 -3
  491. package/esm/Avatar/native/Avatar.js +114 -97
  492. package/esm/Avatar/native/Avatar.test.js +29 -36
  493. package/esm/Avatar/native/AvatarCircle.js +51 -21
  494. package/esm/Avatar/web/Avatar.js +107 -107
  495. package/esm/Avatar/web/Avatar.test.js +42 -49
  496. package/esm/Avatar/web/AvatarCircle.js +52 -24
  497. package/esm/Banner/Banner.theme.js +9 -11
  498. package/esm/Banner/index.js +5 -2
  499. package/esm/Banner/index.native.js +5 -2
  500. package/esm/Banner/native/Banner.js +134 -103
  501. package/esm/Banner/native/Banner.test.js +98 -88
  502. package/esm/Banner/native/index.js +5 -2
  503. package/esm/Banner/web/Banner.js +135 -99
  504. package/esm/Banner/web/Banner.test.js +98 -94
  505. package/esm/Banner/web/index.js +5 -2
  506. package/esm/BottomSheet/BottomSheet.theme.js +23 -25
  507. package/esm/BottomSheet/index.js +5 -2
  508. package/esm/BottomSheet/web/BottomSheet.js +54 -22
  509. package/esm/BottomSheet/web/BottomSheet.test.js +39 -40
  510. package/esm/BottomSheet/web/Content.js +22 -17
  511. package/esm/BottomSheet/web/Footer.js +19 -12
  512. package/esm/BottomSheet/web/Header.js +21 -16
  513. package/esm/BottomSheet/web/index.js +8 -5
  514. package/esm/Box/index.js +5 -2
  515. package/esm/Box/index.native.js +5 -2
  516. package/esm/Box/native/Box.js +7 -4
  517. package/esm/Box/native/Box.test.js +19 -14
  518. package/esm/Box/native/index.js +5 -2
  519. package/esm/Box/web/Box.js +7 -4
  520. package/esm/Box/web/Box.test.js +19 -14
  521. package/esm/Box/web/index.js +5 -2
  522. package/esm/Button/Button.theme.js +112 -112
  523. package/esm/Button/index.js +9 -6
  524. package/esm/Button/index.native.js +8 -5
  525. package/esm/Button/native/Button.js +173 -85
  526. package/esm/Button/native/Button.test.js +276 -409
  527. package/esm/Button/native/Icon.js +133 -60
  528. package/esm/Button/native/Link.js +55 -26
  529. package/esm/Button/native/Text.js +125 -69
  530. package/esm/Button/native/withTouchable.js +75 -49
  531. package/esm/Button/web/Button.js +103 -61
  532. package/esm/Button/web/Button.test.js +826 -1253
  533. package/esm/Button/web/Icon.js +103 -45
  534. package/esm/Button/web/Link.js +112 -37
  535. package/esm/Button/web/Outline.js +113 -19
  536. package/esm/Button/web/StyledButton.js +130 -20
  537. package/esm/Button/web/Text.js +128 -36
  538. package/esm/Card/Card.native.theme.js +35 -38
  539. package/esm/Card/Card.theme.js +130 -129
  540. package/esm/Card/Card.web.theme.js +32 -34
  541. package/esm/Card/index.js +6 -2
  542. package/esm/Card/index.native.js +7 -2
  543. package/esm/Card/native/Card/Actions.js +8 -9
  544. package/esm/Card/native/Card/Card.js +155 -66
  545. package/esm/Card/native/Card/Card.test.js +17 -12
  546. package/esm/Card/native/Card/Content.js +7 -8
  547. package/esm/Card/native/Card/Header.js +7 -8
  548. package/esm/Card/native/Card/index.js +8 -5
  549. package/esm/Card/native/EventCard/EventCard.js +177 -134
  550. package/esm/Card/native/EventCard/EventCard.test.js +57 -49
  551. package/esm/Card/native/EventCard/index.js +5 -2
  552. package/esm/Card/native/GymCard/CheckIn/Avatar.js +45 -15
  553. package/esm/Card/native/GymCard/CheckIn/CheckIn.js +100 -53
  554. package/esm/Card/native/GymCard/CheckIn/CheckIn.test.js +39 -32
  555. package/esm/Card/native/GymCard/CheckIn/Content.js +21 -11
  556. package/esm/Card/native/GymCard/CheckIn/Header.js +23 -10
  557. package/esm/Card/native/GymCard/CheckIn/index.js +5 -2
  558. package/esm/Card/native/GymCard/index.js +7 -4
  559. package/esm/Card/native/PlanCard/Actions.js +25 -20
  560. package/esm/Card/native/PlanCard/Content.js +110 -51
  561. package/esm/Card/native/PlanCard/List.js +98 -58
  562. package/esm/Card/native/PlanCard/PlanCard.js +102 -39
  563. package/esm/Card/native/PlanCard/PlanCard.test.js +90 -74
  564. package/esm/Card/native/PlanCard/Subtitle.js +23 -13
  565. package/esm/Card/native/PlanCard/Tag.js +57 -29
  566. package/esm/Card/native/PlanCard/index.js +10 -7
  567. package/esm/Card/native/index.js +10 -5
  568. package/esm/Card/web/Card/Actions.js +9 -12
  569. package/esm/Card/web/Card/Card.js +115 -42
  570. package/esm/Card/web/Card/Card.test.js +16 -11
  571. package/esm/Card/web/Card/Content.js +7 -4
  572. package/esm/Card/web/Card/Header.js +8 -11
  573. package/esm/Card/web/Card/index.js +8 -5
  574. package/esm/Card/web/EventCard/EventCard.js +169 -53
  575. package/esm/Card/web/EventCard/EventCard.test.js +20 -22
  576. package/esm/Card/web/EventCard/index.js +5 -2
  577. package/esm/Card/web/PlanCard/Actions.js +25 -20
  578. package/esm/Card/web/PlanCard/Content.js +138 -66
  579. package/esm/Card/web/PlanCard/List.js +135 -59
  580. package/esm/Card/web/PlanCard/List.test.js +33 -24
  581. package/esm/Card/web/PlanCard/PlanCard.js +166 -62
  582. package/esm/Card/web/PlanCard/PlanCard.test.js +134 -139
  583. package/esm/Card/web/PlanCard/Subtitle.js +23 -13
  584. package/esm/Card/web/PlanCard/Tag.js +21 -16
  585. package/esm/Card/web/PlanCard/index.js +10 -7
  586. package/esm/Card/web/index.js +8 -4
  587. package/esm/Checkbox/CheckIcon.js +5 -2
  588. package/esm/Checkbox/Checkbox.theme.js +43 -48
  589. package/esm/Checkbox/CheckboxSwitch.theme.js +64 -64
  590. package/esm/Checkbox/index.js +5 -2
  591. package/esm/Checkbox/index.native.js +5 -2
  592. package/esm/Checkbox/native/Checkbox.js +243 -146
  593. package/esm/Checkbox/native/Checkbox.test.js +81 -88
  594. package/esm/Checkbox/native/Switch.js +137 -86
  595. package/esm/Checkbox/native/Switch.test.js +37 -41
  596. package/esm/Checkbox/native/index.js +6 -3
  597. package/esm/Checkbox/web/Checkbox.js +305 -144
  598. package/esm/Checkbox/web/Checkbox.test.js +100 -122
  599. package/esm/Checkbox/web/Switch.js +160 -56
  600. package/esm/Checkbox/web/Switch.test.js +31 -44
  601. package/esm/Checkbox/web/index.js +6 -3
  602. package/esm/Chips/index.js +5 -2
  603. package/esm/Chips/index.native.js +5 -2
  604. package/esm/Chips/native/Chips.js +155 -78
  605. package/esm/Chips/native/Chips.test.js +81 -116
  606. package/esm/Chips/native/Counter.js +29 -13
  607. package/esm/Chips/native/index.js +5 -2
  608. package/esm/Chips/web/Chips.js +198 -80
  609. package/esm/Chips/web/Chips.test.js +77 -103
  610. package/esm/Chips/web/Counter.js +27 -12
  611. package/esm/Chips/web/index.js +5 -2
  612. package/esm/Datepicker/Datepicker.theme.js +11 -11
  613. package/esm/Datepicker/index.js +5 -2
  614. package/esm/Datepicker/web/Calendar.js +281 -259
  615. package/esm/Datepicker/web/Datepicker.js +304 -212
  616. package/esm/Datepicker/web/Datepicker.test.js +174 -198
  617. package/esm/Datepicker/web/index.js +5 -2
  618. package/esm/Dialog/Dialog.theme.js +22 -24
  619. package/esm/Dialog/index.js +5 -2
  620. package/esm/Dialog/web/Content.js +28 -11
  621. package/esm/Dialog/web/Dialog.js +133 -79
  622. package/esm/Dialog/web/Dialog.test.js +56 -59
  623. package/esm/Dialog/web/Footer.js +24 -15
  624. package/esm/Dialog/web/Header.js +28 -11
  625. package/esm/Dialog/web/index.js +8 -5
  626. package/esm/Divider/Divider.theme.js +4 -4
  627. package/esm/Divider/index.js +5 -2
  628. package/esm/Divider/index.native.js +5 -2
  629. package/esm/Divider/native/Divider.js +24 -20
  630. package/esm/Divider/native/Divider.test.js +40 -25
  631. package/esm/Divider/native/index.js +5 -2
  632. package/esm/Divider/web/Divider.js +56 -32
  633. package/esm/Divider/web/Divider.test.js +22 -25
  634. package/esm/Divider/web/index.js +5 -2
  635. package/esm/Drawer/Drawer.theme.js +14 -15
  636. package/esm/Drawer/index.js +5 -2
  637. package/esm/Drawer/web/Content.js +14 -9
  638. package/esm/Drawer/web/Drawer.js +55 -20
  639. package/esm/Drawer/web/Drawer.test.js +27 -27
  640. package/esm/Drawer/web/Footer.js +25 -13
  641. package/esm/Drawer/web/Header.js +24 -14
  642. package/esm/Drawer/web/index.js +8 -5
  643. package/esm/Dropdown/Dropdown.theme.js +159 -159
  644. package/esm/Dropdown/index.js +5 -2
  645. package/esm/Dropdown/index.native.js +5 -2
  646. package/esm/Dropdown/native/Backdrop.js +138 -74
  647. package/esm/Dropdown/native/Backdrop.test.js +16 -20
  648. package/esm/Dropdown/native/Dropdown.js +199 -121
  649. package/esm/Dropdown/native/Dropdown.test.js +60 -62
  650. package/esm/Dropdown/native/Options.android.js +68 -53
  651. package/esm/Dropdown/native/Options.ios.js +80 -54
  652. package/esm/Dropdown/native/index.js +5 -2
  653. package/esm/Dropdown/web/Dropdown.js +371 -176
  654. package/esm/Dropdown/web/Dropdown.test.js +74 -74
  655. package/esm/Dropdown/web/index.js +5 -2
  656. package/esm/Feedback/Feedback.theme.js +8 -8
  657. package/esm/Feedback/index.js +5 -2
  658. package/esm/Feedback/web/Feedback.js +102 -62
  659. package/esm/Feedback/web/Feedback.test.js +61 -82
  660. package/esm/Feedback/web/StyledFeedback.js +90 -32
  661. package/esm/Feedback/web/index.js +6 -3
  662. package/esm/Grid/Grid.theme.js +20 -20
  663. package/esm/Grid/index.js +7 -2
  664. package/esm/Grid/web/Col.js +57 -61
  665. package/esm/Grid/web/Col.test.js +28 -37
  666. package/esm/Grid/web/Container.js +64 -26
  667. package/esm/Grid/web/Container.test.js +12 -11
  668. package/esm/Grid/web/Hide.js +37 -46
  669. package/esm/Grid/web/Hide.test.js +16 -26
  670. package/esm/Grid/web/Row.js +35 -14
  671. package/esm/Grid/web/Row.test.js +12 -11
  672. package/esm/Grid/web/index.js +10 -5
  673. package/esm/Header/Header.theme.js +13 -14
  674. package/esm/Header/index.js +5 -2
  675. package/esm/Header/web/GympassLogo.js +67 -33
  676. package/esm/Header/web/Header.js +76 -44
  677. package/esm/Header/web/Header.test.js +32 -32
  678. package/esm/Header/web/Logo.js +9 -10
  679. package/esm/Header/web/index.js +5 -2
  680. package/esm/Heading/Heading.theme.js +17 -19
  681. package/esm/Heading/index.js +5 -2
  682. package/esm/Heading/web/BackButton.js +59 -32
  683. package/esm/Heading/web/Heading.js +68 -46
  684. package/esm/Heading/web/Heading.test.js +43 -48
  685. package/esm/Heading/web/RightButton.js +59 -31
  686. package/esm/Heading/web/StyledHeading.js +44 -15
  687. package/esm/Heading/web/Title.js +44 -25
  688. package/esm/Heading/web/index.js +8 -5
  689. package/esm/Icon/Icon.js +133 -90
  690. package/esm/Icon/Icon.theme.js +4 -4
  691. package/esm/Icon/index.js +5 -2
  692. package/esm/Icon/index.native.js +5 -2
  693. package/esm/Icon/native/Icon.test.js +60 -51
  694. package/esm/Icon/native/index.js +5 -2
  695. package/esm/Icon/web/Icon.test.js +60 -51
  696. package/esm/Icon/web/index.js +5 -2
  697. package/esm/Input/Input.theme.js +58 -57
  698. package/esm/Input/index.js +5 -2
  699. package/esm/Input/index.native.js +5 -2
  700. package/esm/Input/native/Email.js +33 -11
  701. package/esm/Input/native/Email.test.js +11 -10
  702. package/esm/Input/native/Helper.js +72 -47
  703. package/esm/Input/native/Input.js +320 -189
  704. package/esm/Input/native/Input.test.js +101 -150
  705. package/esm/Input/native/Number.js +28 -11
  706. package/esm/Input/native/Number.test.js +11 -10
  707. package/esm/Input/native/Password.js +151 -97
  708. package/esm/Input/native/Password.test.js +87 -103
  709. package/esm/Input/native/Tel.js +33 -11
  710. package/esm/Input/native/Tel.test.js +11 -10
  711. package/esm/Input/native/index.js +12 -6
  712. package/esm/Input/web/Email.js +28 -11
  713. package/esm/Input/web/Email.test.js +11 -10
  714. package/esm/Input/web/Field.js +122 -26
  715. package/esm/Input/web/Fieldset.js +47 -16
  716. package/esm/Input/web/Helper.js +84 -51
  717. package/esm/Input/web/Input.js +273 -171
  718. package/esm/Input/web/Input.test.js +94 -138
  719. package/esm/Input/web/Label.js +35 -14
  720. package/esm/Input/web/Legend.js +75 -27
  721. package/esm/Input/web/Number.js +28 -11
  722. package/esm/Input/web/Number.test.js +11 -10
  723. package/esm/Input/web/Password.js +130 -73
  724. package/esm/Input/web/Password.test.js +68 -74
  725. package/esm/Input/web/Phone.js +133 -91
  726. package/esm/Input/web/Phone.style.js +294 -21
  727. package/esm/Input/web/Phone.test.js +95 -92
  728. package/esm/Input/web/Tel.js +27 -12
  729. package/esm/Input/web/Tel.test.js +11 -10
  730. package/esm/Input/web/data-images.js +18 -3
  731. package/esm/Input/web/index.js +14 -7
  732. package/esm/List/List.theme.js +24 -27
  733. package/esm/List/index.js +5 -2
  734. package/esm/List/index.native.js +5 -2
  735. package/esm/List/native/List.js +42 -21
  736. package/esm/List/native/List.test.js +75 -93
  737. package/esm/List/native/ListItem.js +95 -37
  738. package/esm/List/native/index.js +6 -3
  739. package/esm/List/web/LinkItem.js +59 -16
  740. package/esm/List/web/List.js +65 -30
  741. package/esm/List/web/List.test.js +48 -46
  742. package/esm/List/web/ListItem.js +55 -19
  743. package/esm/List/web/index.js +8 -4
  744. package/esm/Menu/Menu.theme.js +39 -43
  745. package/esm/Menu/index.js +8 -5
  746. package/esm/Menu/web/Menu.js +13 -31
  747. package/esm/Menu/web/Menu.test.js +112 -97
  748. package/esm/Menu/web/MenuAction.js +10 -13
  749. package/esm/Menu/web/MenuItem.js +139 -54
  750. package/esm/Menu/web/MenuList.js +57 -48
  751. package/esm/Popover/Popover.theme.js +4 -4
  752. package/esm/Popover/index.js +5 -2
  753. package/esm/Popover/web/Popover.js +130 -87
  754. package/esm/Popover/web/Popover.test.js +34 -33
  755. package/esm/Popover/web/index.js +5 -2
  756. package/esm/Popover/web/styles.js +108 -57
  757. package/esm/Progress/Progress.theme.js +16 -20
  758. package/esm/Progress/index.js +5 -2
  759. package/esm/Progress/index.native.js +5 -2
  760. package/esm/Progress/native/Progress.js +166 -71
  761. package/esm/Progress/native/Progress.test.js +116 -204
  762. package/esm/Progress/native/index.js +5 -2
  763. package/esm/Progress/web/Progress.js +187 -68
  764. package/esm/Progress/web/Progress.test.js +116 -204
  765. package/esm/Progress/web/index.js +5 -2
  766. package/esm/RadioGroup/RadioGroup.theme.js +49 -48
  767. package/esm/RadioGroup/RadioGroupContext.js +6 -3
  768. package/esm/RadioGroup/index.js +5 -2
  769. package/esm/RadioGroup/index.native.js +5 -2
  770. package/esm/RadioGroup/native/Button/RadioButton.js +102 -53
  771. package/esm/RadioGroup/native/Button/RadioButton.test.js +48 -74
  772. package/esm/RadioGroup/native/Radio/Radio.js +157 -74
  773. package/esm/RadioGroup/native/Radio/Radio.test.js +51 -89
  774. package/esm/RadioGroup/native/RadioGroup.js +95 -54
  775. package/esm/RadioGroup/native/RadioGroup.test.js +44 -38
  776. package/esm/RadioGroup/native/index.js +8 -4
  777. package/esm/RadioGroup/web/Button/RadioButton.js +139 -50
  778. package/esm/RadioGroup/web/Button/RadioButton.test.js +64 -98
  779. package/esm/RadioGroup/web/Radio/Radio.js +209 -60
  780. package/esm/RadioGroup/web/Radio/Radio.test.js +54 -89
  781. package/esm/RadioGroup/web/RadioGroup.js +83 -45
  782. package/esm/RadioGroup/web/RadioGroup.test.js +65 -66
  783. package/esm/RadioGroup/web/index.js +8 -4
  784. package/esm/Rating/Rating.theme.js +10 -12
  785. package/esm/Rating/index.js +5 -2
  786. package/esm/Rating/index.native.js +5 -2
  787. package/esm/Rating/native/Rating.js +152 -141
  788. package/esm/Rating/native/Rating.test.js +80 -110
  789. package/esm/Rating/native/index.js +5 -2
  790. package/esm/Rating/web/Rating.js +178 -135
  791. package/esm/Rating/web/Rating.test.js +115 -151
  792. package/esm/Rating/web/index.js +5 -2
  793. package/esm/Result/Result.theme.js +4 -4
  794. package/esm/Result/index.native.js +8 -5
  795. package/esm/Result/native/Attendances.js +43 -44
  796. package/esm/Result/native/Details.js +112 -79
  797. package/esm/Result/native/Rate.js +36 -32
  798. package/esm/Result/native/Result.js +80 -68
  799. package/esm/Result/native/Result.test.js +122 -101
  800. package/esm/Result/native/ResultButton.js +20 -13
  801. package/esm/Result/native/Tags.js +60 -36
  802. package/esm/Result/native/TinyTextIcon.js +27 -16
  803. package/esm/Result/native/index.js +5 -2
  804. package/esm/Skeleton/Skeleton.theme.js +20 -22
  805. package/esm/Skeleton/index.js +5 -2
  806. package/esm/Skeleton/index.native.js +5 -2
  807. package/esm/Skeleton/native/Skeleton.js +115 -67
  808. package/esm/Skeleton/native/Skeleton.test.js +32 -70
  809. package/esm/Skeleton/native/index.js +5 -2
  810. package/esm/Skeleton/web/Skeleton.js +97 -40
  811. package/esm/Skeleton/web/Skeleton.test.js +32 -69
  812. package/esm/Skeleton/web/index.js +5 -2
  813. package/esm/Slider/Slider.theme.js +59 -58
  814. package/esm/Slider/index.js +5 -2
  815. package/esm/Slider/index.native.js +5 -2
  816. package/esm/Slider/native/Label.js +27 -13
  817. package/esm/Slider/native/Marker.js +57 -42
  818. package/esm/Slider/native/Slider.js +132 -119
  819. package/esm/Slider/native/Slider.test.js +83 -100
  820. package/esm/Slider/native/Step.js +21 -8
  821. package/esm/Slider/native/Tooltip.js +154 -67
  822. package/esm/Slider/web/Marker.js +80 -52
  823. package/esm/Slider/web/Slider.js +180 -134
  824. package/esm/Slider/web/Slider.test.js +59 -68
  825. package/esm/Slider/web/Tooltip.js +161 -53
  826. package/esm/Snackbar/Snackbar.theme.js +59 -64
  827. package/esm/Snackbar/index.js +5 -2
  828. package/esm/Snackbar/index.native.js +5 -2
  829. package/esm/Snackbar/native/Snackbar.js +194 -148
  830. package/esm/Snackbar/native/Snackbar.test.js +74 -66
  831. package/esm/Snackbar/native/SnackbarAnimationWrapper.js +97 -107
  832. package/esm/Snackbar/native/index.js +5 -2
  833. package/esm/Snackbar/web/Snackbar.js +198 -106
  834. package/esm/Snackbar/web/Snackbar.test.js +127 -110
  835. package/esm/Snackbar/web/index.js +5 -2
  836. package/esm/Spinner/Spinner.theme.js +4 -4
  837. package/esm/Spinner/index.js +5 -2
  838. package/esm/Spinner/web/Spinner.js +91 -39
  839. package/esm/Spinner/web/Spinner.test.js +10 -12
  840. package/esm/Spinner/web/index.js +5 -2
  841. package/esm/Stepper/Stepper.theme.js +33 -38
  842. package/esm/Stepper/activeDot.js +4 -4
  843. package/esm/Stepper/index.js +5 -2
  844. package/esm/Stepper/index.native.js +5 -2
  845. package/esm/Stepper/native/Dots.js +63 -42
  846. package/esm/Stepper/native/Line.js +54 -26
  847. package/esm/Stepper/native/Step.js +28 -14
  848. package/esm/Stepper/native/Stepper.js +83 -46
  849. package/esm/Stepper/native/Stepper.test.js +55 -74
  850. package/esm/Stepper/native/index.js +6 -3
  851. package/esm/Stepper/web/Dots.js +89 -40
  852. package/esm/Stepper/web/Line.js +30 -11
  853. package/esm/Stepper/web/Step.js +28 -14
  854. package/esm/Stepper/web/Stepper.js +86 -42
  855. package/esm/Stepper/web/Stepper.test.js +54 -73
  856. package/esm/Stepper/web/index.js +6 -3
  857. package/esm/Tag/Tag.theme.js +34 -39
  858. package/esm/Tag/index.js +6 -3
  859. package/esm/Tag/index.native.js +6 -3
  860. package/esm/Tag/native/Informative.js +114 -59
  861. package/esm/Tag/native/Tag.js +107 -61
  862. package/esm/Tag/native/Tag.test.js +60 -80
  863. package/esm/Tag/native/index.js +5 -2
  864. package/esm/Tag/web/Informative.js +101 -56
  865. package/esm/Tag/web/Tag.js +83 -35
  866. package/esm/Tag/web/Tag.test.js +63 -88
  867. package/esm/Tag/web/index.js +5 -2
  868. package/esm/Text/Text.theme.js +72 -75
  869. package/esm/Text/index.js +21 -2
  870. package/esm/Text/index.native.js +21 -2
  871. package/esm/Text/native/Text.js +110 -59
  872. package/esm/Text/native/Text.test.js +147 -160
  873. package/esm/Text/native/index.js +34 -2
  874. package/esm/Text/sharedTextStyle.js +42 -34
  875. package/esm/Text/textStyle.android.js +26 -20
  876. package/esm/Text/textStyle.ios.js +8 -13
  877. package/esm/Text/textStyle.web.js +16 -16
  878. package/esm/Text/web/Text.js +114 -64
  879. package/esm/Text/web/Text.test.js +148 -160
  880. package/esm/Text/web/index.js +34 -2
  881. package/esm/TextArea/TextArea.theme.js +6 -3
  882. package/esm/TextArea/index.js +5 -2
  883. package/esm/TextArea/index.native.js +5 -2
  884. package/esm/TextArea/native/TextArea.js +42 -37
  885. package/esm/TextArea/native/TextArea.test.js +10 -9
  886. package/esm/TextArea/native/index.js +5 -2
  887. package/esm/TextArea/web/TextArea.js +157 -108
  888. package/esm/TextArea/web/TextArea.test.js +10 -9
  889. package/esm/TextArea/web/index.js +5 -2
  890. package/esm/Theme/Provider/Provider.js +59 -63
  891. package/esm/Theme/Provider/index.js +5 -2
  892. package/esm/Theme/Provider/index.native.js +5 -2
  893. package/esm/Theme/Provider/native/index.js +5 -2
  894. package/esm/Theme/Provider/web/FontLoader.js +19 -18
  895. package/esm/Theme/Provider/web/FontLoader.test.js +15 -10
  896. package/esm/Theme/Provider/web/GlobalStyle.js +18 -10
  897. package/esm/Theme/Provider/web/GlobalStyle.test.js +20 -16
  898. package/esm/Theme/Provider/web/ThemeProvider.js +46 -17
  899. package/esm/Theme/Provider/web/expectCssMatches.js +11 -17
  900. package/esm/Theme/Provider/web/index.js +6 -3
  901. package/esm/Theme/helpers/themeGenerator/index.js +5 -2
  902. package/esm/Theme/helpers/themeGenerator/themeGenerator.js +9 -15
  903. package/esm/Theme/helpers/themeGenerator/themeGenerator.test.js +15 -19
  904. package/esm/Theme/helpers/themeReader/base.test.js +29 -32
  905. package/esm/Theme/helpers/themeReader/index.js +19 -26
  906. package/esm/Theme/helpers/themeReader/native/native.test.js +36 -51
  907. package/esm/Theme/helpers/themeReader/web/web.test.js +30 -39
  908. package/esm/Theme/index.js +11 -5
  909. package/esm/Theme/index.native.js +10 -6
  910. package/esm/Theme/theme/index.js +5 -2
  911. package/esm/Theme/theme/theme.js +56 -139
  912. package/esm/hooks/index.js +3 -3
  913. package/esm/hooks/useCombinedRefs.js +13 -18
  914. package/esm/hooks/useKeyPress.js +15 -21
  915. package/esm/hooks/usePortal.js +21 -36
  916. package/esm/index.js +90 -38
  917. package/esm/index.native.js +58 -26
  918. package/esm/shared/HiddenInput.js +15 -7
  919. package/esm/shared/index.js +16 -3
  920. package/esm/shared/index.native.js +14 -2
  921. package/esm/shared/propTypes/charLength.js +15 -18
  922. package/esm/shared/propTypes/deprecated.js +9 -12
  923. package/esm/shared/propTypes/index.js +12 -6
  924. package/esm/shared/propTypes/limitChildren.js +11 -13
  925. package/esm/shared/propTypes/max.js +13 -20
  926. package/esm/shared/propTypes/typeof.js +16 -16
  927. package/package.json +3 -3
  928. package/typings/index.d.ts +434 -0
@@ -1,190 +1,385 @@
1
- var _excluded = ["isOpen", "selected"],
2
- _excluded2 = ["error", "label", "disabled", "full", "options", "onChange", "isMaxHeight"];
3
-
4
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
5
-
6
- 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); }
7
-
8
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
9
-
10
- function _taggedTemplateLiteralLoose(strings, raw) { if (!raw) { raw = strings.slice(0); } strings.raw = raw; return strings; }
11
-
12
- import React, { useCallback, useEffect, useState } from 'react';
13
- import styled, { css } from 'styled-components';
14
- import Downshift from 'downshift';
15
- import { arrayOf, func, shape, string, number, bool, oneOfType } from 'prop-types';
16
- import { ChevronDown } from '@gympass/yoga-icons';
17
- import Helper from '../../Input/web/Helper';
18
- import Input from '../../Input/web/Input';
19
- var Wrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
20
- var full = _ref.full,
21
- dropdown = _ref.theme.yoga.components.dropdown;
22
- return "\n position: relative;\n display: inline-block;\n vertical-align: top;\n \n width: " + (full ? '100%' : dropdown.width + "px") + ";\n ";
23
- });
24
- var labelTransition = css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref2) {
25
- var _ref2$theme$yoga = _ref2.theme.yoga,
26
- transition = _ref2$theme$yoga.transition,
27
- _ref2$theme$yoga$comp = _ref2$theme$yoga.components,
28
- input = _ref2$theme$yoga$comp.input,
29
- dropdown = _ref2$theme$yoga$comp.dropdown;
30
- return "\n transform: translateY(-" + (input.height / 2 - 2) + "px);\n transition-property: transform, font-size, color;\n transition-duration: " + transition.duration[1] + "ms;\n transition-timing-function: cubic-bezier(" + transition.timing[0].join() + ");\n\n font-size: " + input.label.font.size.typed + "px;\n color: " + dropdown.input.label.color + ";\n ";
31
- });
32
- var Selector = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref3) {
33
- var isOpen = _ref3.isOpen,
34
- disabled = _ref3.disabled,
35
- selected = _ref3.selected,
36
- error = _ref3.error,
37
- _ref3$theme$yoga = _ref3.theme.yoga,
38
- colors = _ref3$theme$yoga.colors,
39
- dropdown = _ref3$theme$yoga.components.dropdown;
40
- return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n ", "\n "])), !disabled ? "\n fieldset {\n " + (isOpen || selected ? "border-color: " + dropdown.hover.selector.border.color + ";" : '') + "\n\n " + (error && !isOpen ? "border-color: " + colors.feedback.attention[1] + ";\n " : '') + "\n }\n &:hover {\n fieldset {\n border-color: " + (error && !isOpen ? dropdown.hover.selector.border.error : dropdown.hover.selector.border.color) + ";\n }\n }\n " : '');
41
- });
42
- var Field = styled(Input)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n pointer-events: none;\n\n ", "\n"])), function (_ref4) {
43
- var value = _ref4.value,
44
- isOpen = _ref4.isOpen,
45
- disabled = _ref4.disabled;
46
- return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n "])), isOpen && !disabled ? css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n & ~ legend {\n max-width: max-content;\n }\n\n & ~ label {\n ", ";\n }\n "])), labelTransition) : '', value && !disabled ? css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n & ~ label {\n ", ";\n }\n "])), labelTransition) : '');
47
- });
48
- var Button = styled.button(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref5) {
49
- var disabled = _ref5.disabled,
50
- dropdown = _ref5.theme.yoga.components.dropdown;
51
- return "\n display: flex;\n align-content: center;\n align-items: center;\n justify-content: flex-end;\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n padding-right: " + dropdown.button.padding.right + "px;\n padding-top: " + dropdown.button.padding.top + "px;\n padding-bottom: " + dropdown.button.padding.bottom + "px;\n\n border: none;\n outline: none;\n background-color: transparent;\n cursor: " + (disabled ? 'not-allowed' : 'pointer') + ";\n ";
52
- });
53
- var OptionsList = styled.ul(_templateObject10 || (_templateObject10 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref6) {
54
- var isMaxHeight = _ref6.isMaxHeight,
55
- dropdown = _ref6.theme.yoga.components.dropdown;
56
- return "\n position: absolute;\n top: 46px;\n z-index: 1;\n box-sizing: border-box;\n\n width: 100%;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style-type: none;\n\n background: " + dropdown.optionsList.backgroundColor + ";\n border-width: " + dropdown.optionsList.border.width + "px;\n border-style: solid;\n border-color: " + dropdown.optionsList.border.color + ";\n border-top: none;\n\n border-radius:\n " + dropdown.option.border.radius.topLeft + "px\n " + dropdown.option.border.radius.topRight + "px\n " + dropdown.option.border.radius.bottomRight + "px\n " + dropdown.option.border.radius.bottomLeft + "px;\n\n " + (isMaxHeight && "max-height: " + dropdown.option.height * 3.5 + "px;") + "\n ";
57
- });
58
- var Option = styled.li(_templateObject11 || (_templateObject11 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref7) {
59
- var isSelected = _ref7.isSelected,
60
- highlighted = _ref7.highlighted,
61
- _ref7$theme$yoga = _ref7.theme.yoga,
62
- baseFont = _ref7$theme$yoga.baseFont,
63
- dropdown = _ref7$theme$yoga.components.dropdown;
64
- return "\n display: flex;\n align-items: center;\n height: " + dropdown.option.height + "px;\n padding:\n " + dropdown.option.padding.top + "px\n " + dropdown.option.padding.right + "px\n " + dropdown.option.padding.bottom + "px\n " + dropdown.option.padding.left + "px;\n cursor: pointer;\n\n font-family: " + baseFont.family + ";\n font-size: " + (isSelected ? dropdown.selected.option.font.size : dropdown.option.font.size) + "px;\n line-height: " + dropdown.option.font.lineHeight + "px;\n\n font-weight: " + (isSelected ? "" + dropdown.selected.option.font.weight : "" + dropdown.option.font.weight) + ";\n\n color: " + (isSelected ? dropdown.selected.option.font.color : dropdown.option.font.color) + ";\n\n " + (highlighted ? "background-color: " + dropdown.hover.option.backgroundColor + ";" : '') + "\n\n &:hover {\n background-color: " + dropdown.hover.option.backgroundColor + ";\n }\n\n &:last-child {\n border-radius:\n " + dropdown.option.border.radius.topLeft + "px\n " + dropdown.option.border.radius.topRight + "px\n " + dropdown.option.border.radius.bottomRight + "px\n " + dropdown.option.border.radius.bottomLeft + "px;\n }\n ";
65
- });
66
- var ArrowIcon = styled(function (_ref8) {
67
- var isOpen = _ref8.isOpen,
68
- selected = _ref8.selected,
69
- props = _objectWithoutPropertiesLoose(_ref8, _excluded);
70
-
71
- return /*#__PURE__*/React.createElement(ChevronDown, _extends({
72
- width: 20,
73
- height: 20
74
- }, props));
75
- })(_templateObject12 || (_templateObject12 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref9) {
76
- var isOpen = _ref9.isOpen,
77
- selected = _ref9.selected,
78
- disabled = _ref9.disabled,
79
- dropdown = _ref9.theme.yoga.components.dropdown;
80
- return "\n fill: " + dropdown.arrow.fill + ";\n " + (disabled ? "fill: " + dropdown.disabled.arrow.fill + ";" : '') + ";\n " + (selected && !disabled ? "fill: " + dropdown.selected.arrow.fill + ";" : '') + ";\n transform: rotate(" + (isOpen ? '180deg' : '0') + ");\n ";
81
- });
82
- /** Gympass Dropdown is a multiple choice type of menu. */
83
-
84
- var Dropdown = /*#__PURE__*/React.forwardRef(function (_ref10, ref) {
85
- var error = _ref10.error,
86
- label = _ref10.label,
87
- disabled = _ref10.disabled,
88
- full = _ref10.full,
89
- options = _ref10.options,
90
- onChange = _ref10.onChange,
91
- isMaxHeight = _ref10.isMaxHeight,
92
- rest = _objectWithoutPropertiesLoose(_ref10, _excluded2);
93
-
94
- var inputRef = ref || React.useRef(null);
95
- var selectedOption = options.find(function (item) {
96
- return item.selected === true;
97
- });
98
-
99
- var _useState = useState(selectedOption),
100
- localSelectedItem = _useState[0],
101
- setLocalSelectedItem = _useState[1];
102
-
103
- useEffect(function () {
104
- setLocalSelectedItem(selectedOption);
105
- }, [options]);
106
- var onLocalChange = useCallback(function (opt) {
107
- setLocalSelectedItem(opt);
108
- onChange(opt);
109
- }, [onChange]);
110
- return /*#__PURE__*/React.createElement(Downshift, {
111
- initialSelectedItem: selectedOption,
112
- selectedItemChanged: function selectedItemChanged(prevItem, item) {
113
- return prevItem !== item;
114
- },
115
- itemToString: function itemToString(item) {
116
- return item ? item.label : '';
117
- },
118
- onChange: onLocalChange,
119
- selectedItem: localSelectedItem
120
- }, function (_ref11) {
121
- var getInputProps = _ref11.getInputProps,
122
- getItemProps = _ref11.getItemProps,
123
- getRootProps = _ref11.getRootProps,
124
- getMenuProps = _ref11.getMenuProps,
125
- getToggleButtonProps = _ref11.getToggleButtonProps,
126
- selectedItem = _ref11.selectedItem,
127
- highlightedIndex = _ref11.highlightedIndex,
128
- isOpen = _ref11.isOpen;
129
- return /*#__PURE__*/React.createElement(Wrapper, _extends({
130
- full: full
131
- }, getRootProps(), rest), /*#__PURE__*/React.createElement(Selector, {
132
- isOpen: isOpen,
133
- disabled: disabled,
134
- error: error,
135
- selected: selectedItem !== null
136
- }, /*#__PURE__*/React.createElement(Field, _extends({
137
- readOnly: true,
138
- disabled: disabled,
139
- selected: selectedItem !== null,
140
- isOpen: isOpen,
141
- label: label,
142
- full: full,
143
- ref: inputRef,
144
- includeAriaAttributes: false
145
- }, getInputProps())), /*#__PURE__*/React.createElement(Button, _extends({
146
- isOpen: isOpen,
147
- disabled: disabled
148
- }, getToggleButtonProps()), /*#__PURE__*/React.createElement(ArrowIcon, {
149
- isOpen: isOpen,
150
- selected: selectedItem !== null,
151
- disabled: disabled
152
- }))), isOpen && /*#__PURE__*/React.createElement(OptionsList, _extends({
153
- isMaxHeight: isMaxHeight,
154
- selected: selectedItem !== null
155
- }, getMenuProps()), options.map(function (item, index) {
156
- return /*#__PURE__*/React.createElement(Option, getItemProps({
157
- key: item.value,
158
- item: item,
159
- isSelected: selectedItem === item,
160
- highlighted: highlightedIndex === index
161
- }), item.label);
162
- })), error && /*#__PURE__*/React.createElement(Helper, {
163
- error: error
164
- }));
165
- });
166
- });
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import { jsx, jsxs } from "react/jsx-runtime";
33
+ import React, { useCallback, useEffect, useState } from "react";
34
+ import styled, { css } from "styled-components";
35
+ import Downshift from "downshift";
36
+ import {
37
+ arrayOf,
38
+ func,
39
+ shape,
40
+ string,
41
+ number,
42
+ bool,
43
+ oneOfType
44
+ } from "prop-types";
45
+ import { ChevronDown } from "@gympass/yoga-icons";
46
+ import Helper from "../../Input/web/Helper";
47
+ import Input from "../../Input/web/Input";
48
+ const Wrapper = styled.div`
49
+ ${({
50
+ full,
51
+ theme: {
52
+ yoga: {
53
+ components: { dropdown }
54
+ }
55
+ }
56
+ }) => `
57
+ position: relative;
58
+ display: inline-block;
59
+ vertical-align: top;
60
+
61
+ width: ${full ? "100%" : `${dropdown.width}px`};
62
+ `}
63
+ `;
64
+ const labelTransition = css`
65
+ ${({
66
+ theme: {
67
+ yoga: {
68
+ transition,
69
+ components: { input, dropdown }
70
+ }
71
+ }
72
+ }) => `
73
+ transform: translateY(-${input.height / 2 - 2}px);
74
+ transition-property: transform, font-size, color;
75
+ transition-duration: ${transition.duration[1]}ms;
76
+ transition-timing-function: cubic-bezier(${transition.timing[0].join()});
77
+
78
+ font-size: ${input.label.font.size.typed}px;
79
+ color: ${dropdown.input.label.color};
80
+ `}
81
+ `;
82
+ const Selector = styled.div`
83
+ ${({
84
+ isOpen,
85
+ disabled,
86
+ selected,
87
+ error,
88
+ theme: {
89
+ yoga: {
90
+ colors,
91
+ components: { dropdown }
92
+ }
93
+ }
94
+ }) => css`
95
+ ${!disabled ? `
96
+ fieldset {
97
+ ${isOpen || selected ? `border-color: ${dropdown.hover.selector.border.color};` : ""}
98
+
99
+ ${error && !isOpen ? `border-color: ${colors.feedback.attention[1]};
100
+ ` : ""}
101
+ }
102
+ &:hover {
103
+ fieldset {
104
+ border-color: ${error && !isOpen ? dropdown.hover.selector.border.error : dropdown.hover.selector.border.color};
105
+ }
106
+ }
107
+ ` : ""}
108
+ `}
109
+ `;
110
+ const Field = styled(Input)`
111
+ pointer-events: none;
112
+
113
+ ${({ value, isOpen, disabled }) => css`
114
+ ${isOpen && !disabled ? css`
115
+ & ~ legend {
116
+ max-width: max-content;
117
+ }
118
+
119
+ & ~ label {
120
+ ${labelTransition};
121
+ }
122
+ ` : ""}
123
+
124
+ ${value && !disabled ? css`
125
+ & ~ label {
126
+ ${labelTransition};
127
+ }
128
+ ` : ""}
129
+ `}
130
+ `;
131
+ const Button = styled.button`
132
+ ${({
133
+ disabled,
134
+ theme: {
135
+ yoga: {
136
+ components: { dropdown }
137
+ }
138
+ }
139
+ }) => `
140
+ display: flex;
141
+ align-content: center;
142
+ align-items: center;
143
+ justify-content: flex-end;
144
+ position: absolute;
145
+ top: 0;
146
+ left: 0;
147
+
148
+ width: 100%;
149
+ padding-right: ${dropdown.button.padding.right}px;
150
+ padding-top: ${dropdown.button.padding.top}px;
151
+ padding-bottom: ${dropdown.button.padding.bottom}px;
152
+
153
+ border: none;
154
+ outline: none;
155
+ background-color: transparent;
156
+ cursor: ${disabled ? "not-allowed" : "pointer"};
157
+ `}
158
+ `;
159
+ const OptionsList = styled.ul`
160
+ ${({
161
+ isMaxHeight,
162
+ theme: {
163
+ yoga: {
164
+ components: { dropdown }
165
+ }
166
+ }
167
+ }) => `
168
+ position: absolute;
169
+ top: 46px;
170
+ z-index: 1;
171
+ box-sizing: border-box;
172
+
173
+ width: 100%;
174
+ margin: 0;
175
+ padding: 0;
176
+ overflow-y: auto;
177
+ list-style-type: none;
178
+
179
+ background: ${dropdown.optionsList.backgroundColor};
180
+ border-width: ${dropdown.optionsList.border.width}px;
181
+ border-style: solid;
182
+ border-color: ${dropdown.optionsList.border.color};
183
+ border-top: none;
184
+
185
+ border-radius:
186
+ ${dropdown.option.border.radius.topLeft}px
187
+ ${dropdown.option.border.radius.topRight}px
188
+ ${dropdown.option.border.radius.bottomRight}px
189
+ ${dropdown.option.border.radius.bottomLeft}px;
190
+
191
+ ${isMaxHeight && `max-height: ${dropdown.option.height * 3.5}px;`}
192
+ `}
193
+ `;
194
+ const Option = styled.li`
195
+ ${({
196
+ isSelected,
197
+ highlighted,
198
+ theme: {
199
+ yoga: {
200
+ baseFont,
201
+ components: { dropdown }
202
+ }
203
+ }
204
+ }) => `
205
+ display: flex;
206
+ align-items: center;
207
+ height: ${dropdown.option.height}px;
208
+ padding:
209
+ ${dropdown.option.padding.top}px
210
+ ${dropdown.option.padding.right}px
211
+ ${dropdown.option.padding.bottom}px
212
+ ${dropdown.option.padding.left}px;
213
+ cursor: pointer;
214
+
215
+ font-family: ${baseFont.family};
216
+ font-size: ${isSelected ? dropdown.selected.option.font.size : dropdown.option.font.size}px;
217
+ line-height: ${dropdown.option.font.lineHeight}px;
218
+
219
+ font-weight: ${isSelected ? `${dropdown.selected.option.font.weight}` : `${dropdown.option.font.weight}`};
220
+
221
+ color: ${isSelected ? dropdown.selected.option.font.color : dropdown.option.font.color};
222
+
223
+ ${highlighted ? `background-color: ${dropdown.hover.option.backgroundColor};` : ""}
224
+
225
+ &:hover {
226
+ background-color: ${dropdown.hover.option.backgroundColor};
227
+ }
228
+
229
+ &:last-child {
230
+ border-radius:
231
+ ${dropdown.option.border.radius.topLeft}px
232
+ ${dropdown.option.border.radius.topRight}px
233
+ ${dropdown.option.border.radius.bottomRight}px
234
+ ${dropdown.option.border.radius.bottomLeft}px;
235
+ }
236
+ `}
237
+ `;
238
+ const ArrowIcon = styled((_a) => {
239
+ var _b = _a, { isOpen, selected } = _b, props = __objRest(_b, ["isOpen", "selected"]);
240
+ return /* @__PURE__ */ jsx(ChevronDown, __spreadValues({ width: 20, height: 20 }, props));
241
+ })`
242
+ ${({
243
+ isOpen,
244
+ selected,
245
+ disabled,
246
+ theme: {
247
+ yoga: {
248
+ components: { dropdown }
249
+ }
250
+ }
251
+ }) => `
252
+ fill: ${dropdown.arrow.fill};
253
+ ${disabled ? `fill: ${dropdown.disabled.arrow.fill};` : ""};
254
+ ${selected && !disabled ? `fill: ${dropdown.selected.arrow.fill};` : ""};
255
+ transform: rotate(${isOpen ? "180deg" : "0"});
256
+ `}
257
+ `;
258
+ const Dropdown = React.forwardRef(
259
+ (_c, ref) => {
260
+ var _d = _c, { error, label, disabled, full, options, onChange, isMaxHeight } = _d, rest = __objRest(_d, ["error", "label", "disabled", "full", "options", "onChange", "isMaxHeight"]);
261
+ const inputRef = ref || React.useRef(null);
262
+ const selectedOption = options.find((item) => item.selected === true);
263
+ const [localSelectedItem, setLocalSelectedItem] = useState(selectedOption);
264
+ useEffect(() => {
265
+ setLocalSelectedItem(selectedOption);
266
+ }, [options]);
267
+ const onLocalChange = useCallback(
268
+ (opt) => {
269
+ setLocalSelectedItem(opt);
270
+ onChange(opt);
271
+ },
272
+ [onChange]
273
+ );
274
+ return /* @__PURE__ */ jsx(
275
+ Downshift,
276
+ {
277
+ initialSelectedItem: selectedOption,
278
+ selectedItemChanged: (prevItem, item) => prevItem !== item,
279
+ itemToString: (item) => item ? item.label : "",
280
+ onChange: onLocalChange,
281
+ selectedItem: localSelectedItem,
282
+ children: ({
283
+ getInputProps,
284
+ getItemProps,
285
+ getRootProps,
286
+ getMenuProps,
287
+ getToggleButtonProps,
288
+ selectedItem,
289
+ highlightedIndex,
290
+ isOpen
291
+ }) => /* @__PURE__ */ jsxs(Wrapper, __spreadProps(__spreadValues(__spreadValues({ full }, getRootProps()), rest), { children: [
292
+ /* @__PURE__ */ jsxs(
293
+ Selector,
294
+ {
295
+ isOpen,
296
+ disabled,
297
+ error,
298
+ selected: selectedItem !== null,
299
+ children: [
300
+ /* @__PURE__ */ jsx(
301
+ Field,
302
+ __spreadValues({
303
+ readOnly: true,
304
+ disabled,
305
+ selected: selectedItem !== null,
306
+ isOpen,
307
+ label,
308
+ full,
309
+ ref: inputRef,
310
+ includeAriaAttributes: false
311
+ }, getInputProps())
312
+ ),
313
+ /* @__PURE__ */ jsx(
314
+ Button,
315
+ __spreadProps(__spreadValues({
316
+ isOpen,
317
+ disabled
318
+ }, getToggleButtonProps()), {
319
+ children: /* @__PURE__ */ jsx(
320
+ ArrowIcon,
321
+ {
322
+ isOpen,
323
+ selected: selectedItem !== null,
324
+ disabled
325
+ }
326
+ )
327
+ })
328
+ )
329
+ ]
330
+ }
331
+ ),
332
+ isOpen && /* @__PURE__ */ jsx(
333
+ OptionsList,
334
+ __spreadProps(__spreadValues({
335
+ isMaxHeight,
336
+ selected: selectedItem !== null
337
+ }, getMenuProps()), {
338
+ children: options.map((item, index) => /* @__PURE__ */ jsx(
339
+ Option,
340
+ __spreadProps(__spreadValues({}, getItemProps({
341
+ key: item.value,
342
+ item,
343
+ isSelected: selectedItem === item,
344
+ highlighted: highlightedIndex === index
345
+ })), {
346
+ children: item.label
347
+ })
348
+ ))
349
+ })
350
+ ),
351
+ error && /* @__PURE__ */ jsx(Helper, { error })
352
+ ] }))
353
+ }
354
+ );
355
+ }
356
+ );
167
357
  Dropdown.propTypes = {
168
358
  label: string,
169
359
  disabled: bool,
170
360
  error: string,
171
361
  full: bool,
172
-
173
362
  /** { label (string), value (string or number), selected: (boolean) } */
174
- options: arrayOf(shape({
175
- label: string,
176
- value: oneOfType([string, number]),
177
- selected: bool
178
- })).isRequired,
363
+ options: arrayOf(
364
+ shape({
365
+ label: string,
366
+ value: oneOfType([string, number]),
367
+ selected: bool
368
+ })
369
+ ).isRequired,
179
370
  onChange: func,
180
371
  isMaxHeight: bool
181
372
  };
182
373
  Dropdown.defaultProps = {
183
- label: '',
184
- error: undefined,
374
+ label: "",
375
+ error: void 0,
185
376
  full: false,
186
377
  disabled: false,
187
- onChange: function onChange() {},
378
+ onChange: () => {
379
+ },
188
380
  isMaxHeight: true
189
381
  };
190
- export default Dropdown;
382
+ var Dropdown_default = Dropdown;
383
+ export {
384
+ Dropdown_default as default
385
+ };