@drivy/cobalt 0.13.1 → 0.14.3

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 (343) hide show
  1. package/_virtual/_tslib.js +39 -1
  2. package/_virtual/_tslib.js.map +1 -1
  3. package/cjs/tokens/icons.js +8 -0
  4. package/cjs/tokens/icons.js.map +1 -1
  5. package/components/Accordion/index.js +1 -1
  6. package/components/Accordion/index.js.map +1 -1
  7. package/components/Calendar/CalendarView/CalendarViewMonth.js +1 -1
  8. package/components/Calendar/CalendarView/CalendarViewMonth.js.map +1 -1
  9. package/components/Chip/index.js +1 -1
  10. package/components/Chip/index.js.map +1 -1
  11. package/components/Flag/index.js +1 -1
  12. package/components/Flag/index.js.map +1 -1
  13. package/components/Form/RadioWithDetails.js +21 -0
  14. package/components/Form/RadioWithDetails.js.map +1 -0
  15. package/components/Form/TextArea.js +7 -5
  16. package/components/Form/TextArea.js.map +1 -1
  17. package/components/Form/field.js +3 -3
  18. package/components/Form/field.js.map +1 -1
  19. package/components/Icon/__generated__/AirportIcon.js +2 -2
  20. package/components/Icon/__generated__/AirportIcon.js.map +1 -1
  21. package/components/Icon/__generated__/ArrowLeftIcon.js +2 -2
  22. package/components/Icon/__generated__/ArrowLeftIcon.js.map +1 -1
  23. package/components/Icon/__generated__/ArrowRightIcon.js +2 -2
  24. package/components/Icon/__generated__/ArrowRightIcon.js.map +1 -1
  25. package/components/Icon/__generated__/BinIcon.js +2 -2
  26. package/components/Icon/__generated__/BinIcon.js.map +1 -1
  27. package/components/Icon/__generated__/BriefcaseIcon.js +2 -2
  28. package/components/Icon/__generated__/BriefcaseIcon.js.map +1 -1
  29. package/components/Icon/__generated__/BulbIcon.js +3 -3
  30. package/components/Icon/__generated__/BulbIcon.js.map +1 -1
  31. package/components/Icon/__generated__/CameraIcon.js +2 -2
  32. package/components/Icon/__generated__/CameraIcon.js.map +1 -1
  33. package/components/Icon/__generated__/CarCheckIcon.js +2 -2
  34. package/components/Icon/__generated__/CarCheckIcon.js.map +1 -1
  35. package/components/Icon/__generated__/CarDrivyOpenIcon.js +2 -2
  36. package/components/Icon/__generated__/CarDrivyOpenIcon.js.map +1 -1
  37. package/components/Icon/__generated__/CarGroupIcon.js +2 -2
  38. package/components/Icon/__generated__/CarGroupIcon.js.map +1 -1
  39. package/components/Icon/__generated__/CarIcon.js +2 -2
  40. package/components/Icon/__generated__/CarIcon.js.map +1 -1
  41. package/components/Icon/__generated__/CarLockIcon.js +2 -2
  42. package/components/Icon/__generated__/CarLockIcon.js.map +1 -1
  43. package/components/Icon/__generated__/CarReturnIcon.js +24 -0
  44. package/components/Icon/__generated__/CarReturnIcon.js.map +1 -0
  45. package/components/Icon/__generated__/CarSearchIcon.js +2 -2
  46. package/components/Icon/__generated__/CarSearchIcon.js.map +1 -1
  47. package/components/Icon/__generated__/CarTypeAntiqueIcon.js +2 -2
  48. package/components/Icon/__generated__/CarTypeAntiqueIcon.js.map +1 -1
  49. package/components/Icon/__generated__/CarTypeCabrioletIcon.js +2 -2
  50. package/components/Icon/__generated__/CarTypeCabrioletIcon.js.map +1 -1
  51. package/components/Icon/__generated__/CarTypeCampervanIcon.js +2 -2
  52. package/components/Icon/__generated__/CarTypeCampervanIcon.js.map +1 -1
  53. package/components/Icon/__generated__/CarTypeCityIcon.js +2 -2
  54. package/components/Icon/__generated__/CarTypeCityIcon.js.map +1 -1
  55. package/components/Icon/__generated__/CarTypeConvertibleIcon.js +2 -2
  56. package/components/Icon/__generated__/CarTypeConvertibleIcon.js.map +1 -1
  57. package/components/Icon/__generated__/CarTypeCoupeIcon.js +2 -2
  58. package/components/Icon/__generated__/CarTypeCoupeIcon.js.map +1 -1
  59. package/components/Icon/__generated__/CarTypeFamilyIcon.js +2 -2
  60. package/components/Icon/__generated__/CarTypeFamilyIcon.js.map +1 -1
  61. package/components/Icon/__generated__/CarTypeFourFourIcon.js +2 -2
  62. package/components/Icon/__generated__/CarTypeFourFourIcon.js.map +1 -1
  63. package/components/Icon/__generated__/CarTypeMinibusIcon.js +2 -2
  64. package/components/Icon/__generated__/CarTypeMinibusIcon.js.map +1 -1
  65. package/components/Icon/__generated__/CarTypeSedanIcon.js +2 -2
  66. package/components/Icon/__generated__/CarTypeSedanIcon.js.map +1 -1
  67. package/components/Icon/__generated__/CarTypeUtilityIcon.js +2 -2
  68. package/components/Icon/__generated__/CarTypeUtilityIcon.js.map +1 -1
  69. package/components/Icon/__generated__/CheckCircleIcon.js +2 -2
  70. package/components/Icon/__generated__/CheckCircleIcon.js.map +1 -1
  71. package/components/Icon/__generated__/CheckIcon.js +2 -2
  72. package/components/Icon/__generated__/CheckIcon.js.map +1 -1
  73. package/components/Icon/__generated__/ChevronDownIcon.js +2 -2
  74. package/components/Icon/__generated__/ChevronDownIcon.js.map +1 -1
  75. package/components/Icon/__generated__/ChevronLeftIcon.js +2 -2
  76. package/components/Icon/__generated__/ChevronLeftIcon.js.map +1 -1
  77. package/components/Icon/__generated__/ChevronRightIcon.js +2 -2
  78. package/components/Icon/__generated__/ChevronRightIcon.js.map +1 -1
  79. package/components/Icon/__generated__/ChevronUpIcon.js +2 -2
  80. package/components/Icon/__generated__/ChevronUpIcon.js.map +1 -1
  81. package/components/Icon/__generated__/CloseIcon.js +2 -2
  82. package/components/Icon/__generated__/CloseIcon.js.map +1 -1
  83. package/components/Icon/__generated__/ContactMailIcon.js +2 -2
  84. package/components/Icon/__generated__/ContactMailIcon.js.map +1 -1
  85. package/components/Icon/__generated__/ContactPhoneIcon.js +2 -2
  86. package/components/Icon/__generated__/ContactPhoneIcon.js.map +1 -1
  87. package/components/Icon/__generated__/ContextualPaperclipIcon.js +2 -2
  88. package/components/Icon/__generated__/ContextualPaperclipIcon.js.map +1 -1
  89. package/components/Icon/__generated__/ContextualQuestionIcon.js +2 -2
  90. package/components/Icon/__generated__/ContextualQuestionIcon.js.map +1 -1
  91. package/components/Icon/__generated__/ContextualWarningCircleFilledIcon.js +2 -2
  92. package/components/Icon/__generated__/ContextualWarningCircleFilledIcon.js.map +1 -1
  93. package/components/Icon/__generated__/ContextualWarningCircleIcon.js +2 -2
  94. package/components/Icon/__generated__/ContextualWarningCircleIcon.js.map +1 -1
  95. package/components/Icon/__generated__/CreditCardIcon.js +2 -2
  96. package/components/Icon/__generated__/CreditCardIcon.js.map +1 -1
  97. package/components/Icon/__generated__/DirectionsIcon.js +2 -2
  98. package/components/Icon/__generated__/DirectionsIcon.js.map +1 -1
  99. package/components/Icon/__generated__/DotsHorizontalIcon.js +2 -2
  100. package/components/Icon/__generated__/DotsHorizontalIcon.js.map +1 -1
  101. package/components/Icon/__generated__/DotsVerticalIcon.js +2 -2
  102. package/components/Icon/__generated__/DotsVerticalIcon.js.map +1 -1
  103. package/components/Icon/__generated__/DownloadIcon.js +2 -2
  104. package/components/Icon/__generated__/DownloadIcon.js.map +1 -1
  105. package/components/Icon/__generated__/EarthIcon.js +2 -2
  106. package/components/Icon/__generated__/EarthIcon.js.map +1 -1
  107. package/components/Icon/__generated__/EditIcon.js +2 -2
  108. package/components/Icon/__generated__/EditIcon.js.map +1 -1
  109. package/components/Icon/__generated__/ExternalLinkIcon.js +2 -2
  110. package/components/Icon/__generated__/ExternalLinkIcon.js.map +1 -1
  111. package/components/Icon/__generated__/EyeIcon.js +2 -2
  112. package/components/Icon/__generated__/EyeIcon.js.map +1 -1
  113. package/components/Icon/__generated__/FiltersIcon.js +2 -2
  114. package/components/Icon/__generated__/FiltersIcon.js.map +1 -1
  115. package/components/Icon/__generated__/FlagIcon.js +2 -2
  116. package/components/Icon/__generated__/FlagIcon.js.map +1 -1
  117. package/components/Icon/__generated__/GeolocationIcon.js +2 -2
  118. package/components/Icon/__generated__/GeolocationIcon.js.map +1 -1
  119. package/components/Icon/__generated__/GraphUpIcon.js +2 -2
  120. package/components/Icon/__generated__/GraphUpIcon.js.map +1 -1
  121. package/components/Icon/__generated__/IncidentIcon.js +2 -2
  122. package/components/Icon/__generated__/IncidentIcon.js.map +1 -1
  123. package/components/Icon/__generated__/InfoFilledIcon.js +2 -2
  124. package/components/Icon/__generated__/InfoFilledIcon.js.map +1 -1
  125. package/components/Icon/__generated__/InfoIcon.js +2 -2
  126. package/components/Icon/__generated__/InfoIcon.js.map +1 -1
  127. package/components/Icon/__generated__/InstantIcon.js +2 -2
  128. package/components/Icon/__generated__/InstantIcon.js.map +1 -1
  129. package/components/Icon/__generated__/KeyIcon.js +2 -2
  130. package/components/Icon/__generated__/KeyIcon.js.map +1 -1
  131. package/components/Icon/__generated__/LoadingIcon.js +2 -2
  132. package/components/Icon/__generated__/LoadingIcon.js.map +1 -1
  133. package/components/Icon/__generated__/LocalityIcon.js +2 -2
  134. package/components/Icon/__generated__/LocalityIcon.js.map +1 -1
  135. package/components/Icon/__generated__/LocationMapIcon.js +2 -2
  136. package/components/Icon/__generated__/LocationMapIcon.js.map +1 -1
  137. package/components/Icon/__generated__/LocationParkingIcon.js +2 -2
  138. package/components/Icon/__generated__/LocationParkingIcon.js.map +1 -1
  139. package/components/Icon/__generated__/LocationPinIcon.js +2 -2
  140. package/components/Icon/__generated__/LocationPinIcon.js.map +1 -1
  141. package/components/Icon/__generated__/LogoutIcon.js +2 -2
  142. package/components/Icon/__generated__/LogoutIcon.js.map +1 -1
  143. package/components/Icon/__generated__/MapIcon.js +23 -0
  144. package/components/Icon/__generated__/MapIcon.js.map +1 -0
  145. package/components/Icon/__generated__/MeetDriverIcon.js +2 -2
  146. package/components/Icon/__generated__/MeetDriverIcon.js.map +1 -1
  147. package/components/Icon/__generated__/MeetOwnerIcon.js +2 -2
  148. package/components/Icon/__generated__/MeetOwnerIcon.js.map +1 -1
  149. package/components/Icon/__generated__/MenuListIcon.js +2 -2
  150. package/components/Icon/__generated__/MenuListIcon.js.map +1 -1
  151. package/components/Icon/__generated__/MileageIcon.js +2 -2
  152. package/components/Icon/__generated__/MileageIcon.js.map +1 -1
  153. package/components/Icon/__generated__/MiscGiftIcon.js +2 -2
  154. package/components/Icon/__generated__/MiscGiftIcon.js.map +1 -1
  155. package/components/Icon/__generated__/NotificationIcon.js +2 -2
  156. package/components/Icon/__generated__/NotificationIcon.js.map +1 -1
  157. package/components/Icon/__generated__/OptionAirConditioningIcon.js +2 -2
  158. package/components/Icon/__generated__/OptionAirConditioningIcon.js.map +1 -1
  159. package/components/Icon/__generated__/OptionAndroidAutoIcon.js +23 -0
  160. package/components/Icon/__generated__/OptionAndroidAutoIcon.js.map +1 -0
  161. package/components/Icon/__generated__/OptionAppleCarplayIcon.js +24 -0
  162. package/components/Icon/__generated__/OptionAppleCarplayIcon.js.map +1 -0
  163. package/components/Icon/__generated__/OptionAudioInputIcon.js +2 -2
  164. package/components/Icon/__generated__/OptionAudioInputIcon.js.map +1 -1
  165. package/components/Icon/__generated__/OptionBabySeatIcon.js +2 -2
  166. package/components/Icon/__generated__/OptionBabySeatIcon.js.map +1 -1
  167. package/components/Icon/__generated__/OptionBikeRackIcon.js +2 -2
  168. package/components/Icon/__generated__/OptionBikeRackIcon.js.map +1 -1
  169. package/components/Icon/__generated__/OptionBluetoothAudioIcon.js +23 -0
  170. package/components/Icon/__generated__/OptionBluetoothAudioIcon.js.map +1 -0
  171. package/components/Icon/__generated__/OptionCdPlayerIcon.js +2 -2
  172. package/components/Icon/__generated__/OptionCdPlayerIcon.js.map +1 -1
  173. package/components/Icon/__generated__/OptionChainsIcon.js +2 -2
  174. package/components/Icon/__generated__/OptionChainsIcon.js.map +1 -1
  175. package/components/Icon/__generated__/OptionCruiseControlIcon.js +2 -2
  176. package/components/Icon/__generated__/OptionCruiseControlIcon.js.map +1 -1
  177. package/components/Icon/__generated__/OptionDashcamIcon.js +23 -0
  178. package/components/Icon/__generated__/OptionDashcamIcon.js.map +1 -0
  179. package/components/Icon/__generated__/OptionGpsIcon.js +2 -2
  180. package/components/Icon/__generated__/OptionGpsIcon.js.map +1 -1
  181. package/components/Icon/__generated__/OptionHasTrailerIcon.js +2 -2
  182. package/components/Icon/__generated__/OptionHasTrailerIcon.js.map +1 -1
  183. package/components/Icon/__generated__/OptionHitchIcon.js +2 -2
  184. package/components/Icon/__generated__/OptionHitchIcon.js.map +1 -1
  185. package/components/Icon/__generated__/OptionRoofBoxIcon.js +2 -2
  186. package/components/Icon/__generated__/OptionRoofBoxIcon.js.map +1 -1
  187. package/components/Icon/__generated__/OptionSkiRackIcon.js +2 -2
  188. package/components/Icon/__generated__/OptionSkiRackIcon.js.map +1 -1
  189. package/components/Icon/__generated__/OptionSnowTireIcon.js +2 -2
  190. package/components/Icon/__generated__/OptionSnowTireIcon.js.map +1 -1
  191. package/components/Icon/__generated__/OptionWheelchairAccessibleIcon.js +2 -2
  192. package/components/Icon/__generated__/OptionWheelchairAccessibleIcon.js.map +1 -1
  193. package/components/Icon/__generated__/PeopleUserIcon.js +2 -2
  194. package/components/Icon/__generated__/PeopleUserIcon.js.map +1 -1
  195. package/components/Icon/__generated__/PhotosIcon.js +2 -2
  196. package/components/Icon/__generated__/PhotosIcon.js.map +1 -1
  197. package/components/Icon/__generated__/PlugIcon.js +2 -2
  198. package/components/Icon/__generated__/PlugIcon.js.map +1 -1
  199. package/components/Icon/__generated__/PlusIcon.js +23 -0
  200. package/components/Icon/__generated__/PlusIcon.js.map +1 -0
  201. package/components/Icon/__generated__/RaceFlagIcon.js +24 -0
  202. package/components/Icon/__generated__/RaceFlagIcon.js.map +1 -0
  203. package/components/Icon/__generated__/RefreshIcon.js +2 -2
  204. package/components/Icon/__generated__/RefreshIcon.js.map +1 -1
  205. package/components/Icon/__generated__/ResetIcon.js +2 -2
  206. package/components/Icon/__generated__/ResetIcon.js.map +1 -1
  207. package/components/Icon/__generated__/RideIcon.js +2 -2
  208. package/components/Icon/__generated__/RideIcon.js.map +1 -1
  209. package/components/Icon/__generated__/SearchIcon.js +2 -2
  210. package/components/Icon/__generated__/SearchIcon.js.map +1 -1
  211. package/components/Icon/__generated__/ServiceBatteryIcon.js +2 -2
  212. package/components/Icon/__generated__/ServiceBatteryIcon.js.map +1 -1
  213. package/components/Icon/__generated__/ServiceCleaningIcon.js +2 -2
  214. package/components/Icon/__generated__/ServiceCleaningIcon.js.map +1 -1
  215. package/components/Icon/__generated__/ServiceFuelIcon.js +2 -2
  216. package/components/Icon/__generated__/ServiceFuelIcon.js.map +1 -1
  217. package/components/Icon/__generated__/ServiceHealingIcon.js +2 -2
  218. package/components/Icon/__generated__/ServiceHealingIcon.js.map +1 -1
  219. package/components/Icon/__generated__/ServiceLockedIcon.js +2 -2
  220. package/components/Icon/__generated__/ServiceLockedIcon.js.map +1 -1
  221. package/components/Icon/__generated__/ServiceTollsIcon.js +2 -2
  222. package/components/Icon/__generated__/ServiceTollsIcon.js.map +1 -1
  223. package/components/Icon/__generated__/ServiceUnlockedIcon.js +2 -2
  224. package/components/Icon/__generated__/ServiceUnlockedIcon.js.map +1 -1
  225. package/components/Icon/__generated__/SettingsIcon.js +2 -2
  226. package/components/Icon/__generated__/SettingsIcon.js.map +1 -1
  227. package/components/Icon/__generated__/ShareIcon.js +2 -2
  228. package/components/Icon/__generated__/ShareIcon.js.map +1 -1
  229. package/components/Icon/__generated__/ShopIcon.js +2 -2
  230. package/components/Icon/__generated__/ShopIcon.js.map +1 -1
  231. package/components/Icon/__generated__/SocialFacebookIcon.js +2 -2
  232. package/components/Icon/__generated__/SocialFacebookIcon.js.map +1 -1
  233. package/components/Icon/__generated__/SocialLinkedinIcon.js +2 -2
  234. package/components/Icon/__generated__/SocialLinkedinIcon.js.map +1 -1
  235. package/components/Icon/__generated__/SocialTwitterIcon.js +2 -2
  236. package/components/Icon/__generated__/SocialTwitterIcon.js.map +1 -1
  237. package/components/Icon/__generated__/SocialWhatsappIcon.js +2 -2
  238. package/components/Icon/__generated__/SocialWhatsappIcon.js.map +1 -1
  239. package/components/Icon/__generated__/StarIcon.js +2 -2
  240. package/components/Icon/__generated__/StarIcon.js.map +1 -1
  241. package/components/Icon/__generated__/SubwayIcon.js +2 -2
  242. package/components/Icon/__generated__/SubwayIcon.js.map +1 -1
  243. package/components/Icon/__generated__/TimeAlertIcon.js +2 -2
  244. package/components/Icon/__generated__/TimeAlertIcon.js.map +1 -1
  245. package/components/Icon/__generated__/TimeBackwardsIcon.js +2 -2
  246. package/components/Icon/__generated__/TimeBackwardsIcon.js.map +1 -1
  247. package/components/Icon/__generated__/TimeCalendarIcon.js +2 -2
  248. package/components/Icon/__generated__/TimeCalendarIcon.js.map +1 -1
  249. package/components/Icon/__generated__/TimeForwardIcon.js +2 -2
  250. package/components/Icon/__generated__/TimeForwardIcon.js.map +1 -1
  251. package/components/Icon/__generated__/TrainIcon.js +2 -2
  252. package/components/Icon/__generated__/TrainIcon.js.map +1 -1
  253. package/components/Icon/__generated__/UserShieldIcon.js +2 -2
  254. package/components/Icon/__generated__/UserShieldIcon.js.map +1 -1
  255. package/components/Icon/__generated__/VerifiedSealIcon.js +2 -2
  256. package/components/Icon/__generated__/VerifiedSealIcon.js.map +1 -1
  257. package/components/Icon/__generated__/WrenchIcon.js +2 -2
  258. package/components/Icon/__generated__/WrenchIcon.js.map +1 -1
  259. package/components/Icon/index.js +3 -3
  260. package/components/Icon/index.js.map +1 -1
  261. package/components/Modal/index.js +3 -3
  262. package/components/Modal/index.js.map +1 -1
  263. package/components/PhotoDropzone/index.js +189 -0
  264. package/components/PhotoDropzone/index.js.map +1 -0
  265. package/components/Popover/index.js +1 -1
  266. package/components/Popover/index.js.map +1 -1
  267. package/components/ProgressBar/index.js +1 -1
  268. package/components/ProgressBar/index.js.map +1 -1
  269. package/components/utils/validateFile.js +99 -0
  270. package/components/utils/validateFile.js.map +1 -0
  271. package/hooks/useBreakpoint.js +3 -3
  272. package/hooks/useBreakpoint.js.map +1 -1
  273. package/icons/car-return.js +4 -0
  274. package/icons/car-return.js.map +1 -0
  275. package/icons/car-return.svg +1 -0
  276. package/icons/index.js +8 -0
  277. package/icons/index.js.map +1 -1
  278. package/icons/map.js +4 -0
  279. package/icons/map.js.map +1 -0
  280. package/icons/map.svg +1 -0
  281. package/icons/option-android-auto.js +4 -0
  282. package/icons/option-android-auto.js.map +1 -0
  283. package/icons/option-android-auto.svg +1 -0
  284. package/icons/option-apple-carplay.js +4 -0
  285. package/icons/option-apple-carplay.js.map +1 -0
  286. package/icons/option-apple-carplay.svg +1 -0
  287. package/icons/option-bluetooth-audio.js +4 -0
  288. package/icons/option-bluetooth-audio.js.map +1 -0
  289. package/icons/option-bluetooth-audio.svg +1 -0
  290. package/icons/option-dashcam.js +4 -0
  291. package/icons/option-dashcam.js.map +1 -0
  292. package/icons/option-dashcam.svg +1 -0
  293. package/icons/plus.js +4 -0
  294. package/icons/plus.js.map +1 -0
  295. package/icons/plus.svg +1 -0
  296. package/icons/race-flag.js +4 -0
  297. package/icons/race-flag.js.map +1 -0
  298. package/icons/race-flag.svg +1 -0
  299. package/index.js +10 -0
  300. package/index.js.map +1 -1
  301. package/package.json +40 -38
  302. package/styles/components/Calendar/CalendarRangePicker/index.scss +1 -1
  303. package/styles/components/Form/Checkmark.scss +2 -2
  304. package/styles/components/Form/RadioWithDetails.scss +143 -0
  305. package/styles/components/Form/form.scss +15 -3
  306. package/styles/components/Form/index.scss +1 -0
  307. package/styles/components/Modal/index.scss +2 -0
  308. package/styles/components/PhotoDropzone/index.scss +112 -0
  309. package/styles/components.scss +1 -0
  310. package/styles/core/border-radius.scss +1 -0
  311. package/tokens/icons.js +8 -0
  312. package/tokens/icons.js.map +1 -1
  313. package/types/components/Button/index.d.ts +8 -8
  314. package/types/components/Buttons/BrandButton/index.d.ts +2 -2
  315. package/types/components/Buttons/DefaultButton/index.d.ts +2 -2
  316. package/types/components/Buttons/GhostButton/index.d.ts +2 -2
  317. package/types/components/Form/Autocomplete/index.d.ts +3 -2
  318. package/types/components/Form/CheckablePill.d.ts +1 -0
  319. package/types/components/Form/Checkmark.d.ts +1 -0
  320. package/types/components/Form/ComposedField.d.ts +1 -0
  321. package/types/components/Form/RadioWithDetails.d.ts +10 -0
  322. package/types/components/Form/Select.d.ts +1 -0
  323. package/types/components/Form/Slider.d.ts +4 -1
  324. package/types/components/Form/Stepper.d.ts +1 -0
  325. package/types/components/Form/TextArea.d.ts +5 -0
  326. package/types/components/Form/TextInput.d.ts +4 -3
  327. package/types/components/Form/field.d.ts +2 -0
  328. package/types/components/Icon/__generated__/CarReturnIcon.d.ts +10 -0
  329. package/types/components/Icon/__generated__/MapIcon.d.ts +10 -0
  330. package/types/components/Icon/__generated__/OptionAndroidAutoIcon.d.ts +10 -0
  331. package/types/components/Icon/__generated__/OptionAppleCarplayIcon.d.ts +10 -0
  332. package/types/components/Icon/__generated__/OptionBluetoothAudioIcon.d.ts +10 -0
  333. package/types/components/Icon/__generated__/OptionDashcamIcon.d.ts +10 -0
  334. package/types/components/Icon/__generated__/PlusIcon.d.ts +10 -0
  335. package/types/components/Icon/__generated__/RaceFlagIcon.d.ts +10 -0
  336. package/types/components/Icon/__generated__/index.d.ts +8 -0
  337. package/types/components/Icon/index.d.ts +1 -1
  338. package/types/components/PhotoDropzone/index.d.ts +12 -0
  339. package/types/components/utils/validateFile.d.ts +1 -0
  340. package/types/icons/index.d.ts +8 -0
  341. package/types/index.d.ts +2 -0
  342. package/types/tokens/index.d.ts +8 -0
  343. package/utilities.css +260 -0
@@ -0,0 +1,189 @@
1
+ import { __read, __awaiter, __generator } from '../../_virtual/_tslib.js';
2
+ import VisuallyHidden from '@reach/visually-hidden';
3
+ import React, { useRef, useState } from 'react';
4
+ import cx from 'classnames';
5
+ import '../Icon/index.js';
6
+ import { validateFile } from '../utils/validateFile.js';
7
+ import Popover from '../Popover/index.js';
8
+ import ContextualWarningCircleFilledIcon from '../Icon/__generated__/ContextualWarningCircleFilledIcon.js';
9
+ import BinIcon from '../Icon/__generated__/BinIcon.js';
10
+ import PlusIcon from '../Icon/__generated__/PlusIcon.js';
11
+ import LoadingIcon from '../Icon/__generated__/LoadingIcon.js';
12
+
13
+ var ACCEPTED_MAX_SIZE_MB = 10;
14
+ var ACCEPTED_PHOTOS_TYPES = ["jpg", "jpeg", "png", "gif"];
15
+ var ERROR_DISPLAY_TIME = 6000;
16
+ var ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(", ");
17
+ var preventEventDefaults = function (e) {
18
+ e.preventDefault && e.preventDefault();
19
+ e.stopPropagation && e.stopPropagation();
20
+ };
21
+ var isEnterOrSpaceKey = function (event) {
22
+ return event.key === "Enter" || event.key === " ";
23
+ };
24
+ var PhotoDropzone = function (_a) {
25
+ var className = _a.className, description = _a.description, deletePopoverContent = _a.deletePopoverContent, errorContent = _a.errorContent, onDropped = _a.onDropped, onPhotoDelete = _a.onPhotoDelete, _b = _a.initialImageUrl, initialImageUrl = _b === void 0 ? "" : _b;
26
+ var fileInputRef = useRef(null);
27
+ var deleteButtonRef = useRef(null);
28
+ var _c = __read(useState(false), 2), isDragging = _c[0], setIsDragging = _c[1];
29
+ var _d = __read(useState(false), 2), isLoading = _d[0], setIsLoading = _d[1];
30
+ var _e = __read(useState(false), 2), isErrored = _e[0], setIsErrored = _e[1];
31
+ var _f = __read(useState(initialImageUrl), 2), imagePreviewUrl = _f[0], setImagePreviewUrl = _f[1];
32
+ var _g = __read(useState(false), 2), displayDeletion = _g[0], setDisplayDeletion = _g[1];
33
+ var _h = __read(useState(false), 2), showDeletePopover = _h[0], setShowDeletePopover = _h[1];
34
+ var openDeletePopover = function (event) {
35
+ event && preventEventDefaults(event);
36
+ setShowDeletePopover(true);
37
+ };
38
+ var closeDeletePopover = function (event) {
39
+ event && preventEventDefaults(event);
40
+ setShowDeletePopover(false);
41
+ };
42
+ var onDropzoneMouseEnter = function (event) {
43
+ event && preventEventDefaults(event);
44
+ if (imagePreviewUrl)
45
+ setDisplayDeletion(true);
46
+ };
47
+ var onDropzoneMouseLeave = function (event) {
48
+ event && preventEventDefaults(event);
49
+ if (displayDeletion && !showDeletePopover)
50
+ setDisplayDeletion(false);
51
+ };
52
+ var onDropzoneClick = function (event) {
53
+ var _a;
54
+ event && preventEventDefaults(event);
55
+ if (isLoading)
56
+ return;
57
+ if (isErrored)
58
+ setIsErrored(false);
59
+ if (imagePreviewUrl) {
60
+ if (showDeletePopover)
61
+ closeDeletePopover();
62
+ return setDisplayDeletion(!displayDeletion);
63
+ }
64
+ (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click();
65
+ };
66
+ var onDropzoneKey = function (event) {
67
+ if (showDeletePopover)
68
+ return;
69
+ if (isEnterOrSpaceKey(event)) {
70
+ onDropzoneClick();
71
+ }
72
+ };
73
+ var onDeleteKey = function (event) {
74
+ if (isEnterOrSpaceKey(event)) {
75
+ openDeletePopover(event);
76
+ }
77
+ };
78
+ var onDelete = function () {
79
+ if (fileInputRef.current)
80
+ fileInputRef.current.value = "";
81
+ closeDeletePopover();
82
+ setImagePreviewUrl("");
83
+ onPhotoDelete && onPhotoDelete();
84
+ };
85
+ var onDragEnter = function (event) {
86
+ preventEventDefaults(event);
87
+ if (isErrored)
88
+ setIsErrored(false);
89
+ !imagePreviewUrl && setIsDragging(true);
90
+ };
91
+ var onDragLeave = function (event) {
92
+ preventEventDefaults(event);
93
+ setIsDragging(false);
94
+ };
95
+ var processFile = function (fileToProcess) { return __awaiter(void 0, void 0, void 0, function () {
96
+ var isValidFile, imageSrc;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0:
100
+ setIsDragging(false);
101
+ setIsErrored(false);
102
+ setIsLoading(true);
103
+ return [4 /*yield*/, validateFile(fileToProcess, function (fileToValidate, extension) {
104
+ var maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000;
105
+ var acceptedFileTypes = ACCEPTED_PHOTOS_TYPES;
106
+ if (fileToValidate.size > maxFileSize) {
107
+ return false;
108
+ }
109
+ else if (!extension || !acceptedFileTypes.includes(extension)) {
110
+ return false;
111
+ }
112
+ else {
113
+ return true;
114
+ }
115
+ })];
116
+ case 1:
117
+ isValidFile = _a.sent();
118
+ if (!isValidFile) return [3 /*break*/, 3];
119
+ imageSrc = URL.createObjectURL(fileToProcess);
120
+ setImagePreviewUrl(imageSrc);
121
+ return [4 /*yield*/, onDropped(fileToProcess)];
122
+ case 2:
123
+ _a.sent();
124
+ setIsLoading(false);
125
+ return [3 /*break*/, 4];
126
+ case 3:
127
+ setIsLoading(false);
128
+ setIsErrored(true);
129
+ setTimeout(function () {
130
+ setIsErrored(false);
131
+ }, ERROR_DISPLAY_TIME);
132
+ _a.label = 4;
133
+ case 4: return [2 /*return*/];
134
+ }
135
+ });
136
+ }); };
137
+ var onFileInputChanged = function (event) {
138
+ var _a;
139
+ if ((_a = event.target.files) === null || _a === void 0 ? void 0 : _a.length) {
140
+ processFile(event.target.files[0]);
141
+ }
142
+ };
143
+ var onDrop = function (event) {
144
+ var _a, _b;
145
+ preventEventDefaults(event);
146
+ if (((_b = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.files) === null || _b === void 0 ? void 0 : _b.length) && !imagePreviewUrl) {
147
+ processFile(event.dataTransfer.files[0]);
148
+ }
149
+ };
150
+ var onDeleteButtonClick = showDeletePopover
151
+ ? closeDeletePopover
152
+ : openDeletePopover;
153
+ return (React.createElement("div", { tabIndex: 0, className: cx("cobalt-photo-dropzone", className, {
154
+ "cobalt-photo-dropzone--filled": imagePreviewUrl,
155
+ "cobalt-photo-dropzone--dragging": isDragging,
156
+ "cobalt-photo-dropzone--loading": isLoading,
157
+ "cobalt-photo-dropzone--errored": isErrored,
158
+ }), onMouseEnter: onDropzoneMouseEnter, onMouseLeave: onDropzoneMouseLeave, onDragEnter: onDragEnter, onDragLeave: onDragLeave,
159
+ // Not on click because we also use mouseEnter listener
160
+ onMouseUp: onDropzoneClick, onTouchEnd: onDropzoneClick, onKeyUp: onDropzoneKey, onDrop: onDrop,
161
+ // Need to reset those listeners to avoid default browser behaviour
162
+ onDragStart: preventEventDefaults, onDragEnd: preventEventDefaults, onDragOver: preventEventDefaults },
163
+ isErrored && (React.createElement("div", { className: "cobalt-photo-dropzone__description" },
164
+ React.createElement(ContextualWarningCircleFilledIcon, { color: "red" }),
165
+ errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB))),
166
+ isLoading && (React.createElement("div", { className: "cobalt-photo-dropzone__description" },
167
+ React.createElement(LoadingIcon, null))),
168
+ !isLoading &&
169
+ !isErrored &&
170
+ (imagePreviewUrl ? (React.createElement(React.Fragment, null,
171
+ React.createElement("img", { className: "cobalt-photo-dropzone__preview", src: imagePreviewUrl }),
172
+ React.createElement("div", null,
173
+ React.createElement("button", { className: cx("cobalt-photo-dropzone__delete-button", {
174
+ "cobalt-photo-dropzone__delete-button--triggered": displayDeletion,
175
+ }), ref: deleteButtonRef,
176
+ // Must follow the click listeners on the dropzone,
177
+ // in order to have the correct events bubbling
178
+ onTouchEnd: onDeleteButtonClick, onMouseUp: onDeleteButtonClick, onKeyUp: onDeleteKey },
179
+ React.createElement(VisuallyHidden, null, "Delete"),
180
+ React.createElement(BinIcon, { color: "indigo" })),
181
+ React.createElement(Popover, { targetRef: deleteButtonRef, isOpen: showDeletePopover, close: closeDeletePopover, placement: "left-start", distance: 12, bodySpacing: false, arrow: true }, deletePopoverContent(onDelete, closeDeletePopover))))) : (React.createElement("div", { className: "cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong" },
182
+ React.createElement("p", null, description),
183
+ React.createElement(PlusIcon, null)))),
184
+ React.createElement(VisuallyHidden, null,
185
+ React.createElement("input", { ref: fileInputRef, type: "file", onChange: onFileInputChanged, accept: ACCEPTED_PHOTOS_TYPES.map(function (ext) { return ".".concat(ext); }).join(","), multiple: false }))));
186
+ };
187
+
188
+ export { PhotoDropzone as default };
189
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/PhotoDropzone/index.tsx"],"sourcesContent":["import VisuallyHidden from \"@reach/visually-hidden\"\nimport React, {\n useState,\n DragEvent as ReactDragEvent,\n useRef,\n TouchEvent as ReactTouchEvent,\n ChangeEvent as ReactChangeEvent,\n MouseEvent as ReactMouseEvent,\n KeyboardEvent as ReactKeyboardEvent,\n ReactNode,\n} from \"react\"\nimport cx from \"classnames\"\nimport {\n PlusIcon,\n BinIcon,\n LoadingIcon,\n ContextualWarningCircleFilledIcon,\n} from \"../Icon\"\nimport { validateFile } from \"../utils/validateFile\"\nimport Popover from \"../Popover\"\n\nconst ACCEPTED_MAX_SIZE_MB = 10\nconst ACCEPTED_PHOTOS_TYPES = [\"jpg\", \"jpeg\", \"png\", \"gif\"]\nconst ERROR_DISPLAY_TIME = 6000\nconst ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(\", \")\n\nexport type PhotoDropzonePropsType = {\n className?: string\n description: string\n deletePopoverContent: (onDelete: () => void, close: () => void) => ReactNode\n errorContent: (acceptedTypes: string, maxFileSize: number) => ReactNode\n onDropped: (file: File) => Promise<void> | void\n onPhotoDelete?: () => void\n initialImageUrl?: string\n}\n\nconst preventEventDefaults = (\n e: ReactDragEvent | ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n) => {\n e.preventDefault && e.preventDefault()\n e.stopPropagation && e.stopPropagation()\n}\n\nconst isEnterOrSpaceKey = (event: ReactKeyboardEvent) =>\n event.key === \"Enter\" || event.key === \" \"\n\nconst PhotoDropzone = ({\n className,\n description,\n deletePopoverContent,\n errorContent,\n onDropped,\n onPhotoDelete,\n initialImageUrl = \"\",\n}: PhotoDropzonePropsType) => {\n const fileInputRef = useRef<HTMLInputElement>(null)\n const deleteButtonRef = useRef<HTMLButtonElement>(null)\n const [isDragging, setIsDragging] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n const [isErrored, setIsErrored] = useState(false)\n const [imagePreviewUrl, setImagePreviewUrl] = useState(initialImageUrl)\n const [displayDeletion, setDisplayDeletion] = useState(false)\n const [showDeletePopover, setShowDeletePopover] = useState(false)\n\n const openDeletePopover = (\n event?: ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n ) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(true)\n }\n const closeDeletePopover = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(false)\n }\n\n const onDropzoneMouseEnter = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (imagePreviewUrl) setDisplayDeletion(true)\n }\n\n const onDropzoneMouseLeave = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (displayDeletion && !showDeletePopover) setDisplayDeletion(false)\n }\n\n const onDropzoneClick = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n if (isLoading) return\n if (isErrored) setIsErrored(false)\n if (imagePreviewUrl) {\n if (showDeletePopover) closeDeletePopover()\n return setDisplayDeletion(!displayDeletion)\n }\n fileInputRef.current?.click()\n }\n\n const onDropzoneKey = (event: ReactKeyboardEvent) => {\n if (showDeletePopover) return\n if (isEnterOrSpaceKey(event)) {\n onDropzoneClick()\n }\n }\n\n const onDeleteKey = (event: ReactKeyboardEvent) => {\n if (isEnterOrSpaceKey(event)) {\n openDeletePopover(event)\n }\n }\n\n const onDelete = () => {\n if (fileInputRef.current) fileInputRef.current.value = \"\"\n closeDeletePopover()\n setImagePreviewUrl(\"\")\n onPhotoDelete && onPhotoDelete()\n }\n\n const onDragEnter = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n if (isErrored) setIsErrored(false)\n !imagePreviewUrl && setIsDragging(true)\n }\n\n const onDragLeave = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n setIsDragging(false)\n }\n\n const processFile = async (fileToProcess: File) => {\n setIsDragging(false)\n setIsErrored(false)\n setIsLoading(true)\n\n const isValidFile = await validateFile(\n fileToProcess,\n (fileToValidate, extension) => {\n const maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000\n const acceptedFileTypes = ACCEPTED_PHOTOS_TYPES\n\n if (fileToValidate.size > maxFileSize) {\n return false\n } else if (!extension || !acceptedFileTypes.includes(extension)) {\n return false\n } else {\n return true\n }\n }\n )\n\n if (isValidFile) {\n const imageSrc = URL.createObjectURL(fileToProcess)\n setImagePreviewUrl(imageSrc)\n await onDropped(fileToProcess)\n setIsLoading(false)\n } else {\n setIsLoading(false)\n setIsErrored(true)\n setTimeout(() => {\n setIsErrored(false)\n }, ERROR_DISPLAY_TIME)\n }\n }\n\n const onFileInputChanged = (event: ReactChangeEvent<HTMLInputElement>) => {\n if (event.target.files?.length) {\n processFile(event.target.files[0])\n }\n }\n\n const onDrop = (event: ReactDragEvent<HTMLDivElement>) => {\n preventEventDefaults(event)\n if (event.dataTransfer?.files?.length && !imagePreviewUrl) {\n processFile(event.dataTransfer.files[0])\n }\n }\n\n const onDeleteButtonClick = showDeletePopover\n ? closeDeletePopover\n : openDeletePopover\n\n return (\n <div\n tabIndex={0}\n className={cx(\"cobalt-photo-dropzone\", className, {\n \"cobalt-photo-dropzone--filled\": imagePreviewUrl,\n \"cobalt-photo-dropzone--dragging\": isDragging,\n \"cobalt-photo-dropzone--loading\": isLoading,\n \"cobalt-photo-dropzone--errored\": isErrored,\n })}\n onMouseEnter={onDropzoneMouseEnter}\n onMouseLeave={onDropzoneMouseLeave}\n onDragEnter={onDragEnter}\n onDragLeave={onDragLeave}\n // Not on click because we also use mouseEnter listener\n onMouseUp={onDropzoneClick}\n onTouchEnd={onDropzoneClick}\n onKeyUp={onDropzoneKey}\n onDrop={onDrop}\n // Need to reset those listeners to avoid default browser behaviour\n onDragStart={preventEventDefaults}\n onDragEnd={preventEventDefaults}\n onDragOver={preventEventDefaults}\n >\n {isErrored && (\n <div className=\"cobalt-photo-dropzone__description\">\n <ContextualWarningCircleFilledIcon color=\"red\" />\n {errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)}\n </div>\n )}\n {isLoading && (\n <div className=\"cobalt-photo-dropzone__description\">\n <LoadingIcon />\n </div>\n )}\n {!isLoading &&\n !isErrored &&\n (imagePreviewUrl ? (\n <>\n <img\n className=\"cobalt-photo-dropzone__preview\"\n src={imagePreviewUrl}\n />\n <div>\n <button\n className={cx(\"cobalt-photo-dropzone__delete-button\", {\n \"cobalt-photo-dropzone__delete-button--triggered\":\n displayDeletion,\n })}\n ref={deleteButtonRef}\n // Must follow the click listeners on the dropzone,\n // in order to have the correct events bubbling\n onTouchEnd={onDeleteButtonClick}\n onMouseUp={onDeleteButtonClick}\n onKeyUp={onDeleteKey}\n >\n <VisuallyHidden>Delete</VisuallyHidden>\n <BinIcon color=\"indigo\" />\n </button>\n <Popover\n targetRef={deleteButtonRef}\n isOpen={showDeletePopover}\n close={closeDeletePopover}\n placement=\"left-start\"\n distance={12}\n bodySpacing={false}\n arrow\n >\n {deletePopoverContent(onDelete, closeDeletePopover)}\n </Popover>\n </div>\n </>\n ) : (\n <div className=\"cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong\">\n <p>{description}</p>\n <PlusIcon />\n </div>\n ))}\n <VisuallyHidden>\n <input\n ref={fileInputRef}\n type=\"file\"\n onChange={onFileInputChanged}\n accept={ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(\",\")}\n multiple={false}\n />\n </VisuallyHidden>\n </div>\n )\n}\n\nexport default PhotoDropzone\n"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ var Popover = function (_a) {
49
49
  onShow();
50
50
  };
51
51
  var TippyComp = lazy ? LazyTippy : Tippy;
52
- return isMobile ? (React.createElement(MobilePopover, { isOpen: isOpen, onDismiss: close, bodySpacing: bodySpacing, ariaLabel: ariaLabel, onShow: onShow, onHidden: onHidden }, children)) : (React.createElement(TippyComp, __assign({ content: bodySpacing ? (React.createElement("div", { className: "cobalt-popover--bodySpacing" }, children)) : (children) }, defaultTippyProps, { visible: isOpen, reference: targetRef, theme: defaultTippyProps.theme + " " + theme, offset: [0, distance] }, { arrow: arrow, placement: placement, zIndex: zIndex }, { onHidden: onTippyClose, onShow: onTippyOpen, onClickOutside: close })));
52
+ return isMobile ? (React.createElement(MobilePopover, { isOpen: isOpen, onDismiss: close, bodySpacing: bodySpacing, ariaLabel: ariaLabel, onShow: onShow, onHidden: onHidden }, children)) : (React.createElement(TippyComp, __assign({ content: bodySpacing ? (React.createElement("div", { className: "cobalt-popover--bodySpacing" }, children)) : (children) }, defaultTippyProps, { visible: isOpen, reference: targetRef, theme: "".concat(defaultTippyProps.theme, " ").concat(theme), offset: [0, distance] }, { arrow: arrow, placement: placement, zIndex: zIndex }, { onHidden: onTippyClose, onShow: onTippyOpen, onClickOutside: close })));
53
53
  };
54
54
 
55
55
  export { Popover as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/Popover/index.tsx"],"sourcesContent":["import React, { useEffect, useCallback, PropsWithChildren } from \"react\"\nimport Tippy, { TippyProps } from \"@tippyjs/react\"\nimport { sticky } from \"tippy.js\"\n\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport Modal, { ModalPropsType } from \"../Modal\"\nimport LazyTippy from \"./LazyTippy\"\nimport { zIndexes } from \"../../tokens\"\n\nexport type PopoverPropsType = PropsWithChildren<{\n isOpen: boolean\n close: () => void\n \"aria-label\"?: string\n bodySpacing?: boolean\n onShow?: () => void\n onHidden?: () => void\n // Desktop props\n targetRef: TippyProps[\"reference\"]\n arrow?: boolean\n placement?: TippyProps[\"placement\"]\n theme?: string\n distance?: number\n zIndex?: number\n /**\n * __Only for desktop popover__\n *\n * Allow to render the content only when the popover is mounted in the DOM\n * Useful to render async content in the popover\n */\n lazy?: boolean\n}>\n\nconst ESC_KEY_CODE = 27\n\nconst defaultTippyProps: Omit<TippyProps, \"content\" | \"children\" | \"visible\"> =\n {\n animation: \"shift-away-subtle\",\n interactive: true,\n interactiveBorder: 10,\n delay: [0, 0],\n duration: [200, 150],\n maxWidth: 500,\n sticky: true,\n plugins: [sticky],\n theme: \"light cobalt-popover\",\n inertia: true,\n }\n\nconst MobilePopover = ({\n isOpen,\n children,\n ariaLabel = \"Popover mobile modal\",\n onDismiss,\n bodySpacing,\n onShow,\n onHidden,\n}: PropsWithChildren<{\n ariaLabel?: ModalPropsType[\"aria-label\"]\n isOpen: ModalPropsType[\"isOpen\"]\n onDismiss?: () => void\n bodySpacing: ModalPropsType[\"bodySpacing\"]\n onShow: ModalPropsType[\"onShow\"]\n onHidden: ModalPropsType[\"onHidden\"]\n}>) => {\n return (\n <Modal\n aria-label={ariaLabel}\n isOpen={isOpen}\n onDismissAttempt={onDismiss}\n bodySpacing={bodySpacing}\n onShow={onShow}\n onHidden={onHidden}\n >\n {children}\n </Modal>\n )\n}\n\nconst Popover = ({\n isOpen,\n targetRef,\n close,\n \"aria-label\": ariaLabel,\n children,\n bodySpacing = true,\n onShow,\n onHidden,\n // Desktop props\n arrow = false,\n placement = \"bottom-start\",\n theme = \"\",\n distance = 8,\n zIndex = zIndexes.dropdown,\n lazy,\n}: PopoverPropsType) => {\n const { breakpoint } = useBreakpoint()\n const isMobile = breakpoint === \"sm\" || breakpoint === \"xs\"\n\n const escListener = useCallback(\n (event: KeyboardEvent) => {\n if (event.keyCode === ESC_KEY_CODE && isOpen) close()\n },\n [isOpen, close]\n )\n\n useEffect(() => {\n window.addEventListener(\"keydown\", escListener)\n\n return () => window.removeEventListener(\"keydown\", escListener)\n }, [escListener])\n\n const onTippyClose = () => {\n if (onHidden) onHidden()\n }\n\n const onTippyOpen = () => {\n if (onShow) onShow()\n }\n\n const TippyComp = lazy ? LazyTippy : Tippy\n\n return isMobile ? (\n <MobilePopover\n isOpen={isOpen}\n onDismiss={close}\n bodySpacing={bodySpacing}\n ariaLabel={ariaLabel}\n onShow={onShow}\n onHidden={onHidden}\n >\n {children}\n </MobilePopover>\n ) : (\n <TippyComp\n content={\n bodySpacing ? (\n <div className=\"cobalt-popover--bodySpacing\">{children}</div>\n ) : (\n children\n )\n }\n {...defaultTippyProps}\n visible={isOpen}\n reference={targetRef}\n theme={`${defaultTippyProps.theme} ${theme}`}\n offset={[0, distance]}\n {...{ arrow, placement, zIndex }}\n onHidden={onTippyClose}\n onShow={onTippyOpen}\n onClickOutside={close}\n />\n )\n}\n\nexport default Popover\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/Popover/index.tsx"],"sourcesContent":["import React, { useEffect, useCallback, PropsWithChildren } from \"react\"\nimport Tippy, { TippyProps } from \"@tippyjs/react\"\nimport { sticky } from \"tippy.js\"\n\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport Modal, { ModalPropsType } from \"../Modal\"\nimport LazyTippy from \"./LazyTippy\"\nimport { zIndexes } from \"../../tokens\"\n\nexport type PopoverPropsType = PropsWithChildren<{\n isOpen: boolean\n close: () => void\n \"aria-label\"?: string\n bodySpacing?: boolean\n onShow?: () => void\n onHidden?: () => void\n // Desktop props\n targetRef: TippyProps[\"reference\"]\n arrow?: boolean\n placement?: TippyProps[\"placement\"]\n theme?: string\n distance?: number\n zIndex?: number\n /**\n * __Only for desktop popover__\n *\n * Allow to render the content only when the popover is mounted in the DOM\n * Useful to render async content in the popover\n */\n lazy?: boolean\n}>\n\nconst ESC_KEY_CODE = 27\n\nconst defaultTippyProps: Omit<TippyProps, \"content\" | \"children\" | \"visible\"> =\n {\n animation: \"shift-away-subtle\",\n interactive: true,\n interactiveBorder: 10,\n delay: [0, 0],\n duration: [200, 150],\n maxWidth: 500,\n sticky: true,\n plugins: [sticky],\n theme: \"light cobalt-popover\",\n inertia: true,\n }\n\nconst MobilePopover = ({\n isOpen,\n children,\n ariaLabel = \"Popover mobile modal\",\n onDismiss,\n bodySpacing,\n onShow,\n onHidden,\n}: PropsWithChildren<{\n ariaLabel?: ModalPropsType[\"aria-label\"]\n isOpen: ModalPropsType[\"isOpen\"]\n onDismiss?: () => void\n bodySpacing: ModalPropsType[\"bodySpacing\"]\n onShow: ModalPropsType[\"onShow\"]\n onHidden: ModalPropsType[\"onHidden\"]\n}>) => {\n return (\n <Modal\n aria-label={ariaLabel}\n isOpen={isOpen}\n onDismissAttempt={onDismiss}\n bodySpacing={bodySpacing}\n onShow={onShow}\n onHidden={onHidden}\n >\n {children}\n </Modal>\n )\n}\n\nconst Popover = ({\n isOpen,\n targetRef,\n close,\n \"aria-label\": ariaLabel,\n children,\n bodySpacing = true,\n onShow,\n onHidden,\n // Desktop props\n arrow = false,\n placement = \"bottom-start\",\n theme = \"\",\n distance = 8,\n zIndex = zIndexes.dropdown,\n lazy,\n}: PopoverPropsType) => {\n const { breakpoint } = useBreakpoint()\n const isMobile = breakpoint === \"sm\" || breakpoint === \"xs\"\n\n const escListener = useCallback(\n (event: KeyboardEvent) => {\n if (event.keyCode === ESC_KEY_CODE && isOpen) close()\n },\n [isOpen, close]\n )\n\n useEffect(() => {\n window.addEventListener(\"keydown\", escListener)\n\n return () => window.removeEventListener(\"keydown\", escListener)\n }, [escListener])\n\n const onTippyClose = () => {\n if (onHidden) onHidden()\n }\n\n const onTippyOpen = () => {\n if (onShow) onShow()\n }\n\n const TippyComp = lazy ? LazyTippy : Tippy\n\n return isMobile ? (\n <MobilePopover\n isOpen={isOpen}\n onDismiss={close}\n bodySpacing={bodySpacing}\n ariaLabel={ariaLabel}\n onShow={onShow}\n onHidden={onHidden}\n >\n {children}\n </MobilePopover>\n ) : (\n <TippyComp\n content={\n bodySpacing ? (\n <div className=\"cobalt-popover--bodySpacing\">{children}</div>\n ) : (\n children\n )\n }\n {...defaultTippyProps}\n visible={isOpen}\n reference={targetRef}\n theme={`${defaultTippyProps.theme} ${theme}`}\n offset={[0, distance]}\n {...{ arrow, placement, zIndex }}\n onHidden={onTippyClose}\n onShow={onTippyOpen}\n onClickOutside={close}\n />\n )\n}\n\nexport default Popover\n"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ var ProgressBar = function (_a) {
14
14
  React.createElement("g", { fill: "none", fillRule: "evenodd", stroke: "none", strokeWidth: "1" },
15
15
  React.createElement("path", { d: "M12,22 C17.5228475,22 22,17.5228475 22,12 C22,6.4771525 17.5228475,2 12,2 C6.4771525,2 2,6.4771525 2,12 C2,17.5228475 6.4771525,22 12,22 Z M10.039794,16.4579825 L10.3868138,16.8048824 C10.7382605,17.1562077 11.3079394,17.1562077 11.6593861,16.8048824 L12.0064058,16.4579825 L18.3862862,10.0803058 C18.7379046,9.72880879 18.7379046,9.15879074 18.3862862,8.80729375 L17.6922467,8.11349398 C17.3408,7.76216867 16.771121,7.76216867 16.4196743,8.11349398 L11.0398301,13.5249288 L8.08032565,10.5664466 C7.72887895,10.2151213 7.15920001,10.2151213 6.80775331,10.5664466 L6.11371383,11.2602463 C5.76209539,11.6117433 5.76209539,12.1817614 6.11371383,12.5332584 L10.039794,16.4579825 Z", fill: "#b4bbc6" })))))),
16
16
  React.createElement("div", { className: "cobalt-ProgressBar__Container" },
17
- React.createElement("div", { className: "cobalt-ProgressBar__Foreground", style: { width: progress + "%" } }),
17
+ React.createElement("div", { className: "cobalt-ProgressBar__Foreground", style: { width: "".concat(progress, "%") } }),
18
18
  tick && React.createElement("div", { className: "cobalt-ProgressBar__Tick" }))));
19
19
  };
20
20
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/ProgressBar/index.tsx"],"sourcesContent":["import React from \"react\"\n\nexport interface ProgressBarProps {\n children: React.ReactNode\n progress: number\n /**\n * Visual tick at the end of the progress bar\n * @default false\n */\n tick?: boolean\n}\n\nexport const ProgressBar = ({\n progress,\n tick = false,\n children,\n}: ProgressBarProps) => (\n <div>\n <div className=\"cobalt-ProgressBar__TitleSection\">\n <div>\n <div className=\"cobalt-ProgressBar__Progression\">{progress}%</div>\n <div className=\"cobalt-ProgressBar__Title\">{children}</div>\n </div>\n {progress === 100 && (\n <div className=\"cobalt-ProgressBar__CompletedCheckbox\">\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g fill=\"none\" fillRule=\"evenodd\" stroke=\"none\" strokeWidth=\"1\">\n <path\n d=\"M12,22 C17.5228475,22 22,17.5228475 22,12 C22,6.4771525 17.5228475,2 12,2 C6.4771525,2 2,6.4771525 2,12 C2,17.5228475 6.4771525,22 12,22 Z M10.039794,16.4579825 L10.3868138,16.8048824 C10.7382605,17.1562077 11.3079394,17.1562077 11.6593861,16.8048824 L12.0064058,16.4579825 L18.3862862,10.0803058 C18.7379046,9.72880879 18.7379046,9.15879074 18.3862862,8.80729375 L17.6922467,8.11349398 C17.3408,7.76216867 16.771121,7.76216867 16.4196743,8.11349398 L11.0398301,13.5249288 L8.08032565,10.5664466 C7.72887895,10.2151213 7.15920001,10.2151213 6.80775331,10.5664466 L6.11371383,11.2602463 C5.76209539,11.6117433 5.76209539,12.1817614 6.11371383,12.5332584 L10.039794,16.4579825 Z\"\n fill=\"#b4bbc6\"\n />\n </g>\n </svg>\n </div>\n )}\n </div>\n <div className=\"cobalt-ProgressBar__Container\">\n <div\n className=\"cobalt-ProgressBar__Foreground\"\n style={{ width: `${progress}%` }}\n />\n {tick && <div className=\"cobalt-ProgressBar__Tick\" />}\n </div>\n </div>\n)\n"],"names":[],"mappings":";;IAYa,WAAW,GAAG,UAAC,EAIT;QAHjB,QAAQ,cAAA,EACR,YAAY,EAAZ,IAAI,mBAAG,KAAK,KAAA,EACZ,QAAQ,cAAA;IACc,QACtB;QACE,6BAAK,SAAS,EAAC,kCAAkC;YAC/C;gBACE,6BAAK,SAAS,EAAC,iCAAiC;oBAAE,QAAQ;wBAAQ;gBAClE,6BAAK,SAAS,EAAC,2BAA2B,IAAE,QAAQ,CAAO,CACvD;YACL,QAAQ,KAAK,GAAG,KACf,6BAAK,SAAS,EAAC,uCAAuC;gBACpD,6BACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,4BAA4B;oBAElC,2BAAG,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG;wBAC7D,8BACE,CAAC,EAAC,sqBAAsqB,EACxqB,IAAI,EAAC,SAAS,GACd,CACA,CACA,CACF,CACP,CACG;QACN,6BAAK,SAAS,EAAC,+BAA+B;YAC5C,6BACE,SAAS,EAAC,gCAAgC,EAC1C,KAAK,EAAE,EAAE,KAAK,EAAK,QAAQ,MAAG,EAAE,GAChC;YACD,IAAI,IAAI,6BAAK,SAAS,EAAC,0BAA0B,GAAG,CACjD,CACF;AAhCgB;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/ProgressBar/index.tsx"],"sourcesContent":["import React from \"react\"\n\nexport interface ProgressBarProps {\n children: React.ReactNode\n progress: number\n /**\n * Visual tick at the end of the progress bar\n * @default false\n */\n tick?: boolean\n}\n\nexport const ProgressBar = ({\n progress,\n tick = false,\n children,\n}: ProgressBarProps) => (\n <div>\n <div className=\"cobalt-ProgressBar__TitleSection\">\n <div>\n <div className=\"cobalt-ProgressBar__Progression\">{progress}%</div>\n <div className=\"cobalt-ProgressBar__Title\">{children}</div>\n </div>\n {progress === 100 && (\n <div className=\"cobalt-ProgressBar__CompletedCheckbox\">\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g fill=\"none\" fillRule=\"evenodd\" stroke=\"none\" strokeWidth=\"1\">\n <path\n d=\"M12,22 C17.5228475,22 22,17.5228475 22,12 C22,6.4771525 17.5228475,2 12,2 C6.4771525,2 2,6.4771525 2,12 C2,17.5228475 6.4771525,22 12,22 Z M10.039794,16.4579825 L10.3868138,16.8048824 C10.7382605,17.1562077 11.3079394,17.1562077 11.6593861,16.8048824 L12.0064058,16.4579825 L18.3862862,10.0803058 C18.7379046,9.72880879 18.7379046,9.15879074 18.3862862,8.80729375 L17.6922467,8.11349398 C17.3408,7.76216867 16.771121,7.76216867 16.4196743,8.11349398 L11.0398301,13.5249288 L8.08032565,10.5664466 C7.72887895,10.2151213 7.15920001,10.2151213 6.80775331,10.5664466 L6.11371383,11.2602463 C5.76209539,11.6117433 5.76209539,12.1817614 6.11371383,12.5332584 L10.039794,16.4579825 Z\"\n fill=\"#b4bbc6\"\n />\n </g>\n </svg>\n </div>\n )}\n </div>\n <div className=\"cobalt-ProgressBar__Container\">\n <div\n className=\"cobalt-ProgressBar__Foreground\"\n style={{ width: `${progress}%` }}\n />\n {tick && <div className=\"cobalt-ProgressBar__Tick\" />}\n </div>\n </div>\n)\n"],"names":[],"mappings":";;IAYa,WAAW,GAAG,UAAC,EAIT;QAHjB,QAAQ,cAAA,EACR,YAAY,EAAZ,IAAI,mBAAG,KAAK,KAAA,EACZ,QAAQ,cAAA;IACc,QACtB;QACE,6BAAK,SAAS,EAAC,kCAAkC;YAC/C;gBACE,6BAAK,SAAS,EAAC,iCAAiC;oBAAE,QAAQ;wBAAQ;gBAClE,6BAAK,SAAS,EAAC,2BAA2B,IAAE,QAAQ,CAAO,CACvD;YACL,QAAQ,KAAK,GAAG,KACf,6BAAK,SAAS,EAAC,uCAAuC;gBACpD,6BACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,4BAA4B;oBAElC,2BAAG,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG;wBAC7D,8BACE,CAAC,EAAC,sqBAAsqB,EACxqB,IAAI,EAAC,SAAS,GACd,CACA,CACA,CACF,CACP,CACG;QACN,6BAAK,SAAS,EAAC,+BAA+B;YAC5C,6BACE,SAAS,EAAC,gCAAgC,EAC1C,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,QAAQ,MAAG,EAAE,GAChC;YACD,IAAI,IAAI,6BAAK,SAAS,EAAC,0BAA0B,GAAG,CACjD,CACF;AAhCgB;;;;"}
@@ -0,0 +1,99 @@
1
+ import { __awaiter, __generator } from '../../_virtual/_tslib.js';
2
+ import typer from 'media-typer';
3
+
4
+ var MIME_SUBTYPE_TO_EXTENSION = {
5
+ gif: "gif",
6
+ jpeg: "jpg",
7
+ pdf: "pdf",
8
+ png: "png",
9
+ zip: "zip",
10
+ csv: "csv",
11
+ };
12
+ var getFileSignature = function (blob) {
13
+ return new Promise(function (resolve, reject) {
14
+ try {
15
+ var fileReader_1 = new FileReader();
16
+ fileReader_1.onloadend = function (_e) {
17
+ var header = "";
18
+ var result = fileReader_1.result;
19
+ var arr = new Uint8Array(result);
20
+ for (var i = 0; i < arr.length; i++) {
21
+ header += arr[i].toString(16);
22
+ }
23
+ resolve(header);
24
+ };
25
+ fileReader_1.readAsArrayBuffer(blob.slice(0, 4));
26
+ }
27
+ catch (e) {
28
+ reject(e);
29
+ }
30
+ });
31
+ };
32
+ var getMimetypeFromSignature = function (signature) {
33
+ switch (signature.toUpperCase()) {
34
+ case "89504E47":
35
+ return "image/png";
36
+ case "47494638":
37
+ return "image/gif";
38
+ case "25504446":
39
+ return "application/pdf";
40
+ case "FFD8FFDB":
41
+ case "FFD8FFEE":
42
+ case "FFD8FFE0":
43
+ case "FFD8FFE1":
44
+ case "FFD8FFE2":
45
+ case "FFD8FFE3":
46
+ case "FFD8FFE8":
47
+ return "image/jpeg";
48
+ case "504B0304":
49
+ return "application/zip";
50
+ default:
51
+ return null;
52
+ }
53
+ };
54
+ var getMimeType = function (file) {
55
+ return new Promise(function (resolve, reject) {
56
+ getFileSignature(file).then(function (signature) {
57
+ resolve(getMimetypeFromSignature(signature));
58
+ }, function (error) {
59
+ reject(error);
60
+ });
61
+ });
62
+ };
63
+ var getFileExtensionFromFileName = function (fileName) {
64
+ var fileTypeFromFileNameRegExp = new RegExp("(\\.)(.+)$", "i");
65
+ var fromName = fileTypeFromFileNameRegExp.exec(fileName);
66
+ if (fromName && fromName.length > 1 && fromName[2]) {
67
+ return fromName[2];
68
+ }
69
+ return null;
70
+ };
71
+ var getFileExtensionFromMimeType = function (mimeType) {
72
+ try {
73
+ var type = typer.parse(mimeType).subtype;
74
+ return MIME_SUBTYPE_TO_EXTENSION[type] || null;
75
+ }
76
+ catch (_e) {
77
+ return null;
78
+ }
79
+ };
80
+ // If this function
81
+ // - return falsy => the file is correct, file process will abort
82
+ // - return true => the file is valid to continue the file process
83
+ var validateFile = function (file, fileTypeValidator) { return __awaiter(void 0, void 0, void 0, function () {
84
+ var mimeType, extension;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0: return [4 /*yield*/, getMimeType(file)];
88
+ case 1:
89
+ mimeType = _a.sent();
90
+ extension = (mimeType && getFileExtensionFromMimeType(mimeType)) ||
91
+ getFileExtensionFromMimeType(file.type) ||
92
+ getFileExtensionFromFileName(file.name);
93
+ return [2 /*return*/, fileTypeValidator(file, extension)];
94
+ }
95
+ });
96
+ }); };
97
+
98
+ export { validateFile };
99
+ //# sourceMappingURL=validateFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateFile.js","sources":["../../../src/components/utils/validateFile.ts"],"sourcesContent":["import typer from \"media-typer\"\n\nconst MIME_SUBTYPE_TO_EXTENSION: Record<string, string> = {\n gif: \"gif\",\n jpeg: \"jpg\",\n pdf: \"pdf\",\n png: \"png\",\n zip: \"zip\",\n csv: \"csv\",\n}\n\nconst getFileSignature = (blob: Blob): Promise<string> => {\n return new Promise<string>((resolve, reject) => {\n try {\n const fileReader: FileReader = new FileReader()\n fileReader.onloadend = (_e: Event) => {\n let header = \"\"\n const result: ArrayBuffer = fileReader.result as ArrayBuffer\n const arr = new Uint8Array(result)\n\n for (let i = 0; i < arr.length; i++) {\n header += arr[i].toString(16)\n }\n resolve(header)\n }\n fileReader.readAsArrayBuffer(blob.slice(0, 4))\n } catch (e) {\n reject(e)\n }\n })\n}\n\nconst getMimetypeFromSignature = (signature: string): string | null => {\n switch (signature.toUpperCase()) {\n case \"89504E47\":\n return \"image/png\"\n case \"47494638\":\n return \"image/gif\"\n case \"25504446\":\n return \"application/pdf\"\n case \"FFD8FFDB\":\n case \"FFD8FFEE\":\n case \"FFD8FFE0\":\n case \"FFD8FFE1\":\n case \"FFD8FFE2\":\n case \"FFD8FFE3\":\n case \"FFD8FFE8\":\n return \"image/jpeg\"\n case \"504B0304\":\n return \"application/zip\"\n default:\n return null\n }\n}\n\nconst getMimeType = (file: Blob): Promise<string | null> => {\n return new Promise((resolve, reject) => {\n getFileSignature(file).then(\n (signature) => {\n resolve(getMimetypeFromSignature(signature))\n },\n (error) => {\n reject(error)\n }\n )\n })\n}\n\nconst getFileExtensionFromFileName = (fileName: string): string | null => {\n const fileTypeFromFileNameRegExp = new RegExp(`(\\\\.)(.+)$`, \"i\")\n\n const fromName = fileTypeFromFileNameRegExp.exec(fileName)\n if (fromName && fromName.length > 1 && fromName[2]) {\n return fromName[2]\n }\n\n return null\n}\n\nconst getFileExtensionFromMimeType = (mimeType: string): string | null => {\n try {\n const type = typer.parse(mimeType).subtype\n return MIME_SUBTYPE_TO_EXTENSION[type] || null\n } catch (_e) {\n return null\n }\n}\n\n// If this function\n// - return falsy => the file is correct, file process will abort\n// - return true => the file is valid to continue the file process\nexport const validateFile = async (\n file: File,\n fileTypeValidator: (\n file: File,\n extension: string | null\n ) => boolean | undefined | null\n) => {\n const mimeType = await getMimeType(file)\n const extension =\n (mimeType && getFileExtensionFromMimeType(mimeType)) ||\n getFileExtensionFromMimeType(file.type) ||\n getFileExtensionFromFileName(file.name)\n\n return fileTypeValidator(file, extension)\n}\n"],"names":[],"mappings":"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"}
@@ -12,19 +12,19 @@ var breakpointsArray = Object.keys(breakpoints)
12
12
  var cobaltBreakpoints = breakpointsArray.map(function (breakpoint, index) {
13
13
  // lowest limit
14
14
  if (index === 0) {
15
- return [breakpoint.name, "(max-width: " + (breakpoint.value - 1) + "px)"];
15
+ return [breakpoint.name, "(max-width: ".concat(breakpoint.value - 1, "px)")];
16
16
  }
17
17
  else {
18
18
  return [
19
19
  breakpoint.name,
20
- "(min-width: " + breakpointsArray[index - 1].value + "px) and (max-width: " + (breakpoint.value - 1) + "px)",
20
+ "(min-width: ".concat(breakpointsArray[index - 1].value, "px) and (max-width: ").concat(breakpoint.value - 1, "px)"),
21
21
  ];
22
22
  }
23
23
  });
24
24
  // highest limit
25
25
  cobaltBreakpoints.push([
26
26
  "over",
27
- "(min-width: " + breakpointsArray[breakpointsArray.length - 1].value + "px)",
27
+ "(min-width: ".concat(breakpointsArray[breakpointsArray.length - 1].value, "px)"),
28
28
  ]);
29
29
  /**
30
30
  * Hook to get the current Cobalt breakpoint according to the viewport size
@@ -1 +1 @@
1
- {"version":3,"file":"useBreakpoint.js","sources":["../../src/hooks/useBreakpoint.ts"],"sourcesContent":["import { useState, useEffect } from \"react\"\nimport { breakpoints } from \"../tokens\"\n\nexport type CobaltBreakpointType = keyof typeof breakpoints | \"over\"\n\nconst defaultBreakpoint: CobaltBreakpointType = \"md\"\n\nconst breakpointsArray = (\n Object.keys(breakpoints) as (keyof typeof breakpoints)[]\n)\n .map((bp) => ({\n name: bp,\n value: parseInt(breakpoints[bp].slice(0, -2), 10),\n }))\n .sort((a, b) => a.value - b.value)\n\nexport const cobaltBreakpoints: [CobaltBreakpointType, string][] =\n breakpointsArray.map((breakpoint, index) => {\n // lowest limit\n if (index === 0) {\n return [breakpoint.name, `(max-width: ${breakpoint.value - 1}px)`]\n } else {\n return [\n breakpoint.name,\n `(min-width: ${breakpointsArray[index - 1].value}px) and (max-width: ${\n breakpoint.value - 1\n }px)`,\n ]\n }\n })\n\n// highest limit\ncobaltBreakpoints.push([\n \"over\",\n `(min-width: ${breakpointsArray[breakpointsArray.length - 1].value}px)`,\n])\n\n/**\n * Hook to get the current Cobalt breakpoint according to the viewport size\n */\nconst useBreakpoint = () => {\n const getMediaQueriesList = () =>\n cobaltBreakpoints.map((b) => window.matchMedia(b[1]))\n\n const getBreakpoint = () => {\n const matchIndex = getMediaQueriesList().findIndex((media) => media.matches)\n return matchIndex !== -1\n ? cobaltBreakpoints[matchIndex][0]\n : defaultBreakpoint\n }\n\n const isMobileBreakpoint = (bp: CobaltBreakpointType) =>\n bp === \"sm\" || bp === \"xs\"\n\n const initialBreakpoint = getBreakpoint()\n\n const [breakpoint, setBreakpoint] =\n useState<CobaltBreakpointType>(initialBreakpoint)\n\n const [isMobile, setIsMobile] = useState(\n isMobileBreakpoint(initialBreakpoint)\n )\n\n useEffect(() => {\n const handleMediaChange = () => {\n const newBreakpoint = getBreakpoint()\n setBreakpoint(newBreakpoint)\n setIsMobile(isMobileBreakpoint(newBreakpoint))\n }\n const mediaQueriesList = getMediaQueriesList()\n mediaQueriesList.forEach((mq) => {\n // Safari < 14 only supports addListener\n mq.addEventListener\n ? mq.addEventListener(\"change\", handleMediaChange)\n : mq.addListener(handleMediaChange)\n })\n // Remove listeners on cleanup\n return () =>\n mediaQueriesList.forEach((mq) => {\n // Safari < 14 only supports removeListener\n mq.removeEventListener\n ? mq.removeEventListener(\"change\", handleMediaChange)\n : mq.removeListener(handleMediaChange)\n })\n }, []) // Empty array ensures effect is only run on mount and unmount\n\n return { breakpoint, isMobile }\n}\n\nexport default useBreakpoint\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBreakpoint.js","sources":["../../src/hooks/useBreakpoint.ts"],"sourcesContent":["import { useState, useEffect } from \"react\"\nimport { breakpoints } from \"../tokens\"\n\nexport type CobaltBreakpointType = keyof typeof breakpoints | \"over\"\n\nconst defaultBreakpoint: CobaltBreakpointType = \"md\"\n\nconst breakpointsArray = (\n Object.keys(breakpoints) as (keyof typeof breakpoints)[]\n)\n .map((bp) => ({\n name: bp,\n value: parseInt(breakpoints[bp].slice(0, -2), 10),\n }))\n .sort((a, b) => a.value - b.value)\n\nexport const cobaltBreakpoints: [CobaltBreakpointType, string][] =\n breakpointsArray.map((breakpoint, index) => {\n // lowest limit\n if (index === 0) {\n return [breakpoint.name, `(max-width: ${breakpoint.value - 1}px)`]\n } else {\n return [\n breakpoint.name,\n `(min-width: ${breakpointsArray[index - 1].value}px) and (max-width: ${\n breakpoint.value - 1\n }px)`,\n ]\n }\n })\n\n// highest limit\ncobaltBreakpoints.push([\n \"over\",\n `(min-width: ${breakpointsArray[breakpointsArray.length - 1].value}px)`,\n])\n\n/**\n * Hook to get the current Cobalt breakpoint according to the viewport size\n */\nconst useBreakpoint = () => {\n const getMediaQueriesList = () =>\n cobaltBreakpoints.map((b) => window.matchMedia(b[1]))\n\n const getBreakpoint = () => {\n const matchIndex = getMediaQueriesList().findIndex((media) => media.matches)\n return matchIndex !== -1\n ? cobaltBreakpoints[matchIndex][0]\n : defaultBreakpoint\n }\n\n const isMobileBreakpoint = (bp: CobaltBreakpointType) =>\n bp === \"sm\" || bp === \"xs\"\n\n const initialBreakpoint = getBreakpoint()\n\n const [breakpoint, setBreakpoint] =\n useState<CobaltBreakpointType>(initialBreakpoint)\n\n const [isMobile, setIsMobile] = useState(\n isMobileBreakpoint(initialBreakpoint)\n )\n\n useEffect(() => {\n const handleMediaChange = () => {\n const newBreakpoint = getBreakpoint()\n setBreakpoint(newBreakpoint)\n setIsMobile(isMobileBreakpoint(newBreakpoint))\n }\n const mediaQueriesList = getMediaQueriesList()\n mediaQueriesList.forEach((mq) => {\n // Safari < 14 only supports addListener\n mq.addEventListener\n ? mq.addEventListener(\"change\", handleMediaChange)\n : mq.addListener(handleMediaChange)\n })\n // Remove listeners on cleanup\n return () =>\n mediaQueriesList.forEach((mq) => {\n // Safari < 14 only supports removeListener\n mq.removeEventListener\n ? mq.removeEventListener(\"change\", handleMediaChange)\n : mq.removeListener(handleMediaChange)\n })\n }, []) // Empty array ensures effect is only run on mount and unmount\n\n return { breakpoint, isMobile }\n}\n\nexport default useBreakpoint\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var carReturn = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.034 16.045H4.273a.91.91 0 01-.91-.909V9.682c0-.312.01-.62.026-.922a1.591 1.591 0 11.537-3.134C4.692 3.154 6.217 1.5 8.364 1.5h6.363c2.146 0 3.672 1.654 4.438 4.126a1.59 1.59 0 01.537 3.134c.017.302.025.61.025.922v1.303L18.364 9.62a3 3 0 00-4.553 3.879H9c-.748 0-1.433.274-1.958.727H7v.037a2.995 2.995 0 00-.966 1.781v.001zm-.398-8.181c0-.91 0-4.546 3.182-4.546h5.455c3.182 0 3.182 3.637 3.182 4.546H5.636zm-.302 3.874a1.364 1.364 0 102.35-1.385 1.364 1.364 0 00-2.35 1.385z\"/><path d=\"M8.729 17.419h9.514l-2.848 3.253c-.353.406-.303 1.084.1 1.452.41.375 1.091.318 1.455-.1l4.339-4.958c.331-.442.326-.95.002-1.35l-.002-.002-4.339-4.96a1.03 1.03 0 00-1.453-.101c-.41.355-.458 1.043-.102 1.453l2.848 3.253H8.729a1.03 1.03 0 100 2.06z\"/></svg>";
2
+
3
+ export { carReturn as default };
4
+ //# sourceMappingURL=car-return.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"car-return.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.034 16.045H4.273a.91.91 0 0 1-.91-.909V9.682c0-.312.01-.62.026-.922a1.591 1.591 0 1 1 .537-3.134C4.692 3.154 6.217 1.5 8.364 1.5h6.363c2.146 0 3.672 1.654 4.438 4.126a1.59 1.59 0 0 1 .537 3.134c.017.302.025.61.025.922v1.303L18.364 9.62a3 3 0 0 0-4.553 3.879H9c-.748 0-1.433.274-1.958.727H7v.037a2.995 2.995 0 0 0-.966 1.781v.001Zm-.398-8.181c0-.91 0-4.546 3.182-4.546h5.455c3.182 0 3.182 3.637 3.182 4.546H5.636Zm-.302 3.874a1.364 1.364 0 1 0 2.35-1.385 1.364 1.364 0 0 0-2.35 1.385Z"/><path d="M8.729 17.419h9.514l-2.848 3.253c-.353.406-.303 1.084.1 1.452.41.375 1.091.318 1.455-.1l4.339-4.958c.331-.442.326-.95.002-1.35l-.002-.002-4.339-4.96a1.03 1.03 0 0 0-1.453-.101c-.41.355-.458 1.043-.102 1.453l2.848 3.253H8.729a1.03 1.03 0 1 0 0 2.06Z"/></svg>
package/icons/index.js CHANGED
@@ -9,6 +9,7 @@ export { default as carCheck } from './car-check.js';
9
9
  export { default as carDrivyOpen } from './car-drivy-open.js';
10
10
  export { default as carGroup } from './car-group.js';
11
11
  export { default as carLock } from './car-lock.js';
12
+ export { default as carReturn } from './car-return.js';
12
13
  export { default as carSearch } from './car-search.js';
13
14
  export { default as carTypeAntique } from './car-type-antique.js';
14
15
  export { default as carTypeCabriolet } from './car-type-cabriolet.js';
@@ -59,6 +60,7 @@ export { default as locationMap } from './location-map.js';
59
60
  export { default as locationParking } from './location-parking.js';
60
61
  export { default as locationPin } from './location-pin.js';
61
62
  export { default as logout } from './logout.js';
63
+ export { default as map } from './map.js';
62
64
  export { default as meetDriver } from './meet-driver.js';
63
65
  export { default as meetOwner } from './meet-owner.js';
64
66
  export { default as menuList } from './menu-list.js';
@@ -66,12 +68,16 @@ export { default as mileage } from './mileage.js';
66
68
  export { default as miscGift } from './misc-gift.js';
67
69
  export { default as notification } from './notification.js';
68
70
  export { default as optionAirConditioning } from './option-air-conditioning.js';
71
+ export { default as optionAndroidAuto } from './option-android-auto.js';
72
+ export { default as optionAppleCarplay } from './option-apple-carplay.js';
69
73
  export { default as optionAudioInput } from './option-audio-input.js';
70
74
  export { default as optionBabySeat } from './option-baby-seat.js';
71
75
  export { default as optionBikeRack } from './option-bike-rack.js';
76
+ export { default as optionBluetoothAudio } from './option-bluetooth-audio.js';
72
77
  export { default as optionCdPlayer } from './option-cd-player.js';
73
78
  export { default as optionChains } from './option-chains.js';
74
79
  export { default as optionCruiseControl } from './option-cruise-control.js';
80
+ export { default as optionDashcam } from './option-dashcam.js';
75
81
  export { default as optionGps } from './option-gps.js';
76
82
  export { default as optionHasTrailer } from './option-has-trailer.js';
77
83
  export { default as optionHitch } from './option-hitch.js';
@@ -82,6 +88,8 @@ export { default as optionWheelchairAccessible } from './option-wheelchair-acces
82
88
  export { default as peopleUser } from './people-user.js';
83
89
  export { default as photos } from './photos.js';
84
90
  export { default as plug } from './plug.js';
91
+ export { default as plus } from './plus.js';
92
+ export { default as raceFlag } from './race-flag.js';
85
93
  export { default as refresh } from './refresh.js';
86
94
  export { default as reset } from './reset.js';
87
95
  export { default as ride } from './ride.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/icons/map.js ADDED
@@ -0,0 +1,4 @@
1
+ var map = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M18.842 3.605c1.162 0 2.105.943 2.105 2.106v10.831l-8.61-8.61a7.352 7.352 0 00.189-1.664c0-.957-.21-1.863-.621-2.663h6.937zM5.158 21.5a2.106 2.106 0 01-2.106-2.105v-7.516c.8 1.2 1.78 2.474 2.853 3.832l.831 1.052.822-1.052c1.4-1.737 2.631-3.348 3.505-4.832.358-.61.663-1.21.905-1.821l4.284 4.284L8.094 21.5H5.158zm15.789-2.105a2.105 2.105 0 01-2.105 2.105H9.589L17 14.09l3.948 3.947v1.358h-.001zm-14.21-4.21C3.988 11.636 2 8.973 2 6.31 2 3.658 4.105 1.5 6.736 1.5c2.632 0 4.737 2.158 4.737 4.81 0 2.664-1.968 5.327-4.737 8.874l.001.001zM4.63 6.236a2.105 2.105 0 104.21 0 2.105 2.105 0 00-4.21 0z\"/></svg>";
2
+
3
+ export { map as default };
4
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
package/icons/map.svg ADDED
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M18.842 3.605c1.162 0 2.105.943 2.105 2.106v10.831l-8.61-8.61a7.352 7.352 0 0 0 .189-1.664c0-.957-.21-1.863-.621-2.663h6.937ZM5.158 21.5a2.106 2.106 0 0 1-2.106-2.105v-7.516c.8 1.2 1.78 2.474 2.853 3.832l.831 1.052.822-1.052c1.4-1.737 2.631-3.348 3.505-4.832.358-.61.663-1.21.905-1.821l4.284 4.284L8.094 21.5H5.158Zm15.789-2.105a2.105 2.105 0 0 1-2.105 2.105H9.589L17 14.09l3.948 3.947v1.358h-.001Zm-14.21-4.21C3.988 11.636 2 8.973 2 6.31 2 3.658 4.105 1.5 6.736 1.5c2.632 0 4.737 2.158 4.737 4.81 0 2.664-1.968 5.327-4.737 8.874l.001.001ZM4.63 6.236a2.105 2.105 0 1 0 4.21 0 2.105 2.105 0 0 0-4.21 0Z"/></svg>
@@ -0,0 +1,4 @@
1
+ var optionAndroidAuto = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M17.6 9.48l1.84-3.18c.16-.31.04-.69-.26-.85a.637.637 0 00-.83.22l-1.88 3.24a11.463 11.463 0 00-8.94 0L5.65 5.67a.643.643 0 00-.87-.2c-.28.18-.37.54-.22.83L6.4 9.48A10.78 10.78 0 001 18h22a10.78 10.78 0 00-5.4-8.52zM7 15.25a1.25 1.25 0 110-2.5 1.25 1.25 0 010 2.5zm10 0a1.25 1.25 0 110-2.5 1.25 1.25 0 010 2.5z\"/></svg>";
2
+
3
+ export { optionAndroidAuto as default };
4
+ //# sourceMappingURL=option-android-auto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-android-auto.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="m17.6 9.48 1.84-3.18c.16-.31.04-.69-.26-.85a.637.637 0 0 0-.83.22l-1.88 3.24a11.463 11.463 0 0 0-8.94 0L5.65 5.67a.643.643 0 0 0-.87-.2c-.28.18-.37.54-.22.83L6.4 9.48A10.78 10.78 0 0 0 1 18h22a10.78 10.78 0 0 0-5.4-8.52ZM7 15.25a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm10 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Z"/></svg>
@@ -0,0 +1,4 @@
1
+ var optionAppleCarplay = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11.092 7.72c-.085-.064-.182-.12-.262-.12a.374.374 0 00-.367.371v7.924a.375.375 0 00.19.323.363.363 0 00.37-.009c.07-.044 6.71-3.871 6.774-3.928a.371.371 0 00.03-.53c-.067-.074-6.624-3.949-6.735-4.031z\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.564 2C7.122 2 2.7 6.489 2.7 12s4.422 10 9.864 10c3.144 0 6.125-1.54 7.977-4.117l.005-.006a.84.84 0 00-.193-1.145.819.819 0 00-1.142.166l-.004.006c-1.545 2.148-4.028 3.429-6.643 3.429-4.526 0-8.214-3.736-8.214-8.333 0-4.598 3.688-8.333 8.214-8.333 2.62 0 5.107 1.286 6.65 3.44l.005.006a.824.824 0 001.142.168.84.84 0 00.194-1.145l-.004-.006C18.7 3.545 15.714 2 12.564 2z\"/></svg>";
2
+
3
+ export { optionAppleCarplay as default };
4
+ //# sourceMappingURL=option-apple-carplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-apple-carplay.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.092 7.72c-.085-.064-.182-.12-.262-.12a.374.374 0 0 0-.367.371v7.924a.375.375 0 0 0 .19.323.363.363 0 0 0 .37-.009c.07-.044 6.71-3.871 6.774-3.928a.371.371 0 0 0 .03-.53c-.067-.074-6.624-3.949-6.735-4.031Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.564 2C7.122 2 2.7 6.489 2.7 12s4.422 10 9.864 10c3.144 0 6.125-1.54 7.977-4.117l.005-.006a.84.84 0 0 0-.193-1.145.819.819 0 0 0-1.142.166l-.004.006c-1.545 2.148-4.028 3.429-6.643 3.429-4.526 0-8.214-3.736-8.214-8.333 0-4.598 3.688-8.333 8.214-8.333 2.62 0 5.107 1.286 6.65 3.44l.005.006a.824.824 0 0 0 1.142.168.84.84 0 0 0 .194-1.145l-.004-.006C18.7 3.545 15.714 2 12.564 2Z"/></svg>
@@ -0,0 +1,4 @@
1
+ var optionBluetoothAudio = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M17.71 7.71L12 2h-1v7.59L6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l5.71-5.71-4.3-4.29 4.3-4.29zM13 5.83l1.88 1.88L13 9.59V5.83zm1.88 10.46L13 18.17v-3.76l1.88 1.88z\"/></svg>";
2
+
3
+ export { optionBluetoothAudio as default };
4
+ //# sourceMappingURL=option-bluetooth-audio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-bluetooth-audio.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17.71 7.71 12 2h-1v7.59L6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l5.71-5.71-4.3-4.29 4.3-4.29ZM13 5.83l1.88 1.88L13 9.59V5.83Zm1.88 10.46L13 18.17v-3.76l1.88 1.88Z"/></svg>
@@ -0,0 +1,4 @@
1
+ var optionDashcam = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z\"/></svg>";
2
+
3
+ export { optionDashcam as default };
4
+ //# sourceMappingURL=option-dashcam.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-dashcam.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4Z"/></svg>
package/icons/plus.js ADDED
@@ -0,0 +1,4 @@
1
+ var plus = "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10zM7 11h4V7h2v4h4v2h-4v4h-2v-4H7v-2z\"/></svg>";
2
+
3
+ export { plus as default };
4
+ //# sourceMappingURL=plus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plus.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
package/icons/plus.svg ADDED
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10ZM7 11h4V7h2v4h4v2h-4v4h-2v-4H7v-2Z"/></svg>