@propellerads/button-drop-down 2.2.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/CHANGELOG.md +24 -10
  2. package/dist/button-drop-down.cjs.development.js +12 -41
  3. package/dist/button-drop-down.cjs.development.js.map +1 -1
  4. package/dist/button-drop-down.cjs.production.min.js +1 -1
  5. package/dist/button-drop-down.cjs.production.min.js.map +1 -1
  6. package/dist/button-drop-down.esm.js +10 -41
  7. package/dist/button-drop-down.esm.js.map +1 -1
  8. package/dist/index.d.ts +20 -0
  9. package/dist/style.d.ts +4 -0
  10. package/package.json +7 -6
  11. package/dist/AdFormat/index.d.ts +0 -32
  12. package/dist/AdFormat/style.d.ts +0 -29
  13. package/dist/Alert/src/index.d.ts +0 -4
  14. package/dist/Alert/src/style.d.ts +0 -8
  15. package/dist/Alert/src/types.d.ts +0 -14
  16. package/dist/ArrowButton/index.d.ts +0 -20
  17. package/dist/ArrowButton/style.d.ts +0 -1
  18. package/dist/Badge/src/index.d.ts +0 -4
  19. package/dist/Badge/src/style.d.ts +0 -8
  20. package/dist/Badge/src/types.d.ts +0 -19
  21. package/dist/Button/src/index.d.ts +0 -4
  22. package/dist/Button/src/style.d.ts +0 -13
  23. package/dist/Button/src/types.d.ts +0 -48
  24. package/dist/ButtonDropDown/src/index.d.ts +0 -30
  25. package/dist/ButtonDropDown/src/style.d.ts +0 -3
  26. package/dist/Card/rollup.config.d.ts +0 -15
  27. package/dist/Card/src/index.d.ts +0 -37
  28. package/dist/Card/src/style.d.ts +0 -5
  29. package/dist/CheckboxCardGroup/rollup.config.d.ts +0 -15
  30. package/dist/CheckboxCardGroup/src/index.d.ts +0 -23
  31. package/dist/CheckboxCardGroup/src/styles.d.ts +0 -9
  32. package/dist/CodeViewer/index.d.ts +0 -25
  33. package/dist/CodeViewer/style.d.ts +0 -3
  34. package/dist/Collapser/rollup.config.d.ts +0 -15
  35. package/dist/Collapser/src/index.d.ts +0 -28
  36. package/dist/Collapser/src/style.d.ts +0 -4
  37. package/dist/ColorPicker/index.d.ts +0 -38
  38. package/dist/CookieMessage/src/index.d.ts +0 -3
  39. package/dist/CookieMessage/src/style.d.ts +0 -9
  40. package/dist/CookieMessage/src/types.d.ts +0 -13
  41. package/dist/Countdown/index.d.ts +0 -29
  42. package/dist/Currency/rollup.config.d.ts +0 -15
  43. package/dist/Currency/src/index.d.ts +0 -43
  44. package/dist/Currency/src/style.d.ts +0 -2
  45. package/dist/DatePicker/DatePickerControls/index.d.ts +0 -49
  46. package/dist/DatePicker/DatePickerControls/style.d.ts +0 -4
  47. package/dist/DatePicker/DatePickerInput/index.d.ts +0 -21
  48. package/dist/DatePicker/DatePickerInput/styles.d.ts +0 -1
  49. package/dist/DatePicker/DatePickerPresets/index.d.ts +0 -25
  50. package/dist/DatePicker/DatePickerPresets/style.d.ts +0 -2
  51. package/dist/DatePicker/defaultProps.d.ts +0 -9
  52. package/dist/DatePicker/helpers.d.ts +0 -15
  53. package/dist/DatePicker/index.d.ts +0 -91
  54. package/dist/DatePicker/style.d.ts +0 -14
  55. package/dist/EditableField/rollup.config.d.ts +0 -15
  56. package/dist/EditableField/src/index.d.ts +0 -56
  57. package/dist/EditableField/src/style.d.ts +0 -7
  58. package/dist/EmptyState/src/index.d.ts +0 -3
  59. package/dist/EmptyState/src/style.d.ts +0 -5
  60. package/dist/EmptyState/src/types.d.ts +0 -9
  61. package/dist/ErrorLabel/rollup.config.d.ts +0 -15
  62. package/dist/ErrorLabel/src/ErrorsList/ErrorItem/index.d.ts +0 -20
  63. package/dist/ErrorLabel/src/ErrorsList/ErrorItem/style.d.ts +0 -1
  64. package/dist/ErrorLabel/src/ErrorsList/index.d.ts +0 -30
  65. package/dist/ErrorLabel/src/ErrorsList/style.d.ts +0 -2
  66. package/dist/ErrorLabel/src/constants.d.ts +0 -9
  67. package/dist/ErrorLabel/src/index.d.ts +0 -27
  68. package/dist/ErrorLabel/src/style.d.ts +0 -2
  69. package/dist/FormattedNumber/index.d.ts +0 -16
  70. package/dist/Header/HeaderBalance/index.d.ts +0 -20
  71. package/dist/Header/HeaderBalance/style.d.ts +0 -6
  72. package/dist/Header/HeaderDivider/index.d.ts +0 -2
  73. package/dist/Header/HeaderDivider/style.d.ts +0 -1
  74. package/dist/Header/HeaderDropdown/index.d.ts +0 -16
  75. package/dist/Header/HeaderDropdown/style.d.ts +0 -1
  76. package/dist/Header/HeaderDropdownList/index.d.ts +0 -14
  77. package/dist/Header/HeaderDropdownList/style.d.ts +0 -1
  78. package/dist/Header/HeaderItem/index.d.ts +0 -38
  79. package/dist/Header/HeaderItem/style.d.ts +0 -4
  80. package/dist/Header/HeaderTime/index.d.ts +0 -14
  81. package/dist/Header/HeaderTime/style.d.ts +0 -1
  82. package/dist/Header/__test__/header.balance.test.d.ts +0 -1
  83. package/dist/Header/__test__/header.item.test.d.ts +0 -1
  84. package/dist/Header/__test__/header.test.d.ts +0 -1
  85. package/dist/Header/__test__/header.time.test.d.ts +0 -1
  86. package/dist/Header/index.d.ts +0 -126
  87. package/dist/Header/rollup.config.d.ts +0 -15
  88. package/dist/Header/style.d.ts +0 -3
  89. package/dist/Header/themes/contex.d.ts +0 -56
  90. package/dist/Header/themes/variables.d.ts +0 -82
  91. package/dist/Hint/rollup.config.d.ts +0 -15
  92. package/dist/Hint/src/index.d.ts +0 -20
  93. package/dist/Hint/src/style.d.ts +0 -4
  94. package/dist/Icon/src/createSvg.d.ts +0 -7
  95. package/dist/Icon/src/icons/Add.d.ts +0 -2
  96. package/dist/Icon/src/icons/AddCircle.d.ts +0 -2
  97. package/dist/Icon/src/icons/AddCircleBracket.d.ts +0 -2
  98. package/dist/Icon/src/icons/AddFiled.d.ts +0 -2
  99. package/dist/Icon/src/icons/AddImage.d.ts +0 -2
  100. package/dist/Icon/src/icons/AirlineStops.d.ts +0 -2
  101. package/dist/Icon/src/icons/AmericanExpress.d.ts +0 -2
  102. package/dist/Icon/src/icons/Announcement.d.ts +0 -2
  103. package/dist/Icon/src/icons/Apps.d.ts +0 -2
  104. package/dist/Icon/src/icons/Archive.d.ts +0 -2
  105. package/dist/Icon/src/icons/ArrowDown.d.ts +0 -2
  106. package/dist/Icon/src/icons/ArrowDownFull.d.ts +0 -2
  107. package/dist/Icon/src/icons/ArrowLeft.d.ts +0 -2
  108. package/dist/Icon/src/icons/ArrowPageFirst.d.ts +0 -2
  109. package/dist/Icon/src/icons/ArrowPageLast.d.ts +0 -2
  110. package/dist/Icon/src/icons/ArrowRight.d.ts +0 -2
  111. package/dist/Icon/src/icons/ArrowRightFull.d.ts +0 -2
  112. package/dist/Icon/src/icons/ArrowUp.d.ts +0 -2
  113. package/dist/Icon/src/icons/ArrowUpFull.d.ts +0 -2
  114. package/dist/Icon/src/icons/Assistance.d.ts +0 -2
  115. package/dist/Icon/src/icons/AutoRenew.d.ts +0 -2
  116. package/dist/Icon/src/icons/Bank.d.ts +0 -2
  117. package/dist/Icon/src/icons/Bell.d.ts +0 -2
  118. package/dist/Icon/src/icons/BellActive.d.ts +0 -2
  119. package/dist/Icon/src/icons/BellCrossed.d.ts +0 -2
  120. package/dist/Icon/src/icons/Block.d.ts +0 -2
  121. package/dist/Icon/src/icons/BlockedImage.d.ts +0 -2
  122. package/dist/Icon/src/icons/BorderAll.d.ts +0 -2
  123. package/dist/Icon/src/icons/Build.d.ts +0 -2
  124. package/dist/Icon/src/icons/Burger.d.ts +0 -2
  125. package/dist/Icon/src/icons/Cancel.d.ts +0 -2
  126. package/dist/Icon/src/icons/Card.d.ts +0 -2
  127. package/dist/Icon/src/icons/Case.d.ts +0 -2
  128. package/dist/Icon/src/icons/Check.d.ts +0 -2
  129. package/dist/Icon/src/icons/CheckCircle.d.ts +0 -2
  130. package/dist/Icon/src/icons/Chrome.d.ts +0 -2
  131. package/dist/Icon/src/icons/ChromeColored.d.ts +0 -2
  132. package/dist/Icon/src/icons/CircleNotification.d.ts +0 -2
  133. package/dist/Icon/src/icons/Close.d.ts +0 -2
  134. package/dist/Icon/src/icons/Code.d.ts +0 -2
  135. package/dist/Icon/src/icons/Columns.d.ts +0 -2
  136. package/dist/Icon/src/icons/Comment.d.ts +0 -2
  137. package/dist/Icon/src/icons/Copy.d.ts +0 -2
  138. package/dist/Icon/src/icons/Crop.d.ts +0 -2
  139. package/dist/Icon/src/icons/Crown.d.ts +0 -2
  140. package/dist/Icon/src/icons/Cup.d.ts +0 -2
  141. package/dist/Icon/src/icons/Date.d.ts +0 -2
  142. package/dist/Icon/src/icons/Delete.d.ts +0 -2
  143. package/dist/Icon/src/icons/DeleteForever.d.ts +0 -2
  144. package/dist/Icon/src/icons/Desktop.d.ts +0 -2
  145. package/dist/Icon/src/icons/Diamond.d.ts +0 -2
  146. package/dist/Icon/src/icons/Download.d.ts +0 -2
  147. package/dist/Icon/src/icons/DragIndicator.d.ts +0 -2
  148. package/dist/Icon/src/icons/Draggable.d.ts +0 -2
  149. package/dist/Icon/src/icons/Ebanx.d.ts +0 -2
  150. package/dist/Icon/src/icons/Edit.d.ts +0 -2
  151. package/dist/Icon/src/icons/Epayments.d.ts +0 -2
  152. package/dist/Icon/src/icons/Error.d.ts +0 -2
  153. package/dist/Icon/src/icons/Eye.d.ts +0 -2
  154. package/dist/Icon/src/icons/Facebook.d.ts +0 -2
  155. package/dist/Icon/src/icons/Favorite.d.ts +0 -2
  156. package/dist/Icon/src/icons/File.d.ts +0 -2
  157. package/dist/Icon/src/icons/Filter.d.ts +0 -2
  158. package/dist/Icon/src/icons/FilterList.d.ts +0 -2
  159. package/dist/Icon/src/icons/Fingerprint.d.ts +0 -2
  160. package/dist/Icon/src/icons/Fire.d.ts +0 -2
  161. package/dist/Icon/src/icons/FlightUp.d.ts +0 -2
  162. package/dist/Icon/src/icons/Forth.d.ts +0 -2
  163. package/dist/Icon/src/icons/Funnel.d.ts +0 -2
  164. package/dist/Icon/src/icons/Gamepad.d.ts +0 -2
  165. package/dist/Icon/src/icons/Geo.d.ts +0 -2
  166. package/dist/Icon/src/icons/GiftBox.d.ts +0 -2
  167. package/dist/Icon/src/icons/HourGlass.d.ts +0 -2
  168. package/dist/Icon/src/icons/Http.d.ts +0 -2
  169. package/dist/Icon/src/icons/Infinity.d.ts +0 -2
  170. package/dist/Icon/src/icons/Info.d.ts +0 -2
  171. package/dist/Icon/src/icons/InfoOutline.d.ts +0 -2
  172. package/dist/Icon/src/icons/Insert.d.ts +0 -2
  173. package/dist/Icon/src/icons/Instagram.d.ts +0 -2
  174. package/dist/Icon/src/icons/Lamp.d.ts +0 -2
  175. package/dist/Icon/src/icons/Language.d.ts +0 -2
  176. package/dist/Icon/src/icons/LaughingSmile.d.ts +0 -2
  177. package/dist/Icon/src/icons/LineChart.d.ts +0 -2
  178. package/dist/Icon/src/icons/Link.d.ts +0 -2
  179. package/dist/Icon/src/icons/Linkedin.d.ts +0 -2
  180. package/dist/Icon/src/icons/LocalAtm.d.ts +0 -2
  181. package/dist/Icon/src/icons/Lock.d.ts +0 -2
  182. package/dist/Icon/src/icons/LockOpen.d.ts +0 -2
  183. package/dist/Icon/src/icons/LogOut.d.ts +0 -2
  184. package/dist/Icon/src/icons/LpViews.d.ts +0 -2
  185. package/dist/Icon/src/icons/Mail.d.ts +0 -2
  186. package/dist/Icon/src/icons/MailFilled.d.ts +0 -2
  187. package/dist/Icon/src/icons/ManageHistory.d.ts +0 -2
  188. package/dist/Icon/src/icons/MissedCall.d.ts +0 -2
  189. package/dist/Icon/src/icons/Monetization.d.ts +0 -2
  190. package/dist/Icon/src/icons/Money.d.ts +0 -2
  191. package/dist/Icon/src/icons/MoreHorizontal.d.ts +0 -2
  192. package/dist/Icon/src/icons/MoreVertical.d.ts +0 -2
  193. package/dist/Icon/src/icons/NoMoney.d.ts +0 -2
  194. package/dist/Icon/src/icons/Offer.d.ts +0 -2
  195. package/dist/Icon/src/icons/OfferFilled.d.ts +0 -2
  196. package/dist/Icon/src/icons/OnlinePrediction.d.ts +0 -2
  197. package/dist/Icon/src/icons/OpenInNew.d.ts +0 -2
  198. package/dist/Icon/src/icons/Pause.d.ts +0 -2
  199. package/dist/Icon/src/icons/Paypal.d.ts +0 -2
  200. package/dist/Icon/src/icons/Pdf.d.ts +0 -2
  201. package/dist/Icon/src/icons/People.d.ts +0 -2
  202. package/dist/Icon/src/icons/Phone.d.ts +0 -2
  203. package/dist/Icon/src/icons/PhotoCamera.d.ts +0 -2
  204. package/dist/Icon/src/icons/Pie.d.ts +0 -2
  205. package/dist/Icon/src/icons/PieOutline.d.ts +0 -2
  206. package/dist/Icon/src/icons/Play.d.ts +0 -2
  207. package/dist/Icon/src/icons/PlayCircleFilled.d.ts +0 -2
  208. package/dist/Icon/src/icons/Pop.d.ts +0 -2
  209. package/dist/Icon/src/icons/Postback.d.ts +0 -2
  210. package/dist/Icon/src/icons/Present.d.ts +0 -2
  211. package/dist/Icon/src/icons/PrivacyTip.d.ts +0 -2
  212. package/dist/Icon/src/icons/Propeller.d.ts +0 -2
  213. package/dist/Icon/src/icons/Push.d.ts +0 -2
  214. package/dist/Icon/src/icons/Qiwi.d.ts +0 -2
  215. package/dist/Icon/src/icons/QrCode.d.ts +0 -2
  216. package/dist/Icon/src/icons/Question.d.ts +0 -2
  217. package/dist/Icon/src/icons/QuestionMark.d.ts +0 -2
  218. package/dist/Icon/src/icons/Receipt.d.ts +0 -2
  219. package/dist/Icon/src/icons/Refresh.d.ts +0 -2
  220. package/dist/Icon/src/icons/SaveAs.d.ts +0 -2
  221. package/dist/Icon/src/icons/Search.d.ts +0 -2
  222. package/dist/Icon/src/icons/Segment.d.ts +0 -2
  223. package/dist/Icon/src/icons/Sent.d.ts +0 -2
  224. package/dist/Icon/src/icons/Settings.d.ts +0 -2
  225. package/dist/Icon/src/icons/Shield.d.ts +0 -2
  226. package/dist/Icon/src/icons/ShoppingBag.d.ts +0 -2
  227. package/dist/Icon/src/icons/ShoppingCart.d.ts +0 -2
  228. package/dist/Icon/src/icons/Site.d.ts +0 -2
  229. package/dist/Icon/src/icons/Skril.d.ts +0 -2
  230. package/dist/Icon/src/icons/Skype.d.ts +0 -2
  231. package/dist/Icon/src/icons/Smile.d.ts +0 -2
  232. package/dist/Icon/src/icons/SnowFlake.d.ts +0 -2
  233. package/dist/Icon/src/icons/SpeedFast.d.ts +0 -2
  234. package/dist/Icon/src/icons/Star.d.ts +0 -2
  235. package/dist/Icon/src/icons/Stat.d.ts +0 -2
  236. package/dist/Icon/src/icons/Stop.d.ts +0 -2
  237. package/dist/Icon/src/icons/Support.d.ts +0 -2
  238. package/dist/Icon/src/icons/SurveyOffer.d.ts +0 -2
  239. package/dist/Icon/src/icons/SwipeDown.d.ts +0 -2
  240. package/dist/Icon/src/icons/Tablet.d.ts +0 -2
  241. package/dist/Icon/src/icons/Target.d.ts +0 -2
  242. package/dist/Icon/src/icons/Telegram.d.ts +0 -2
  243. package/dist/Icon/src/icons/Tell.d.ts +0 -2
  244. package/dist/Icon/src/icons/ThumbUp.d.ts +0 -2
  245. package/dist/Icon/src/icons/Time.d.ts +0 -2
  246. package/dist/Icon/src/icons/Touch.d.ts +0 -2
  247. package/dist/Icon/src/icons/Twitter.d.ts +0 -2
  248. package/dist/Icon/src/icons/Update.d.ts +0 -2
  249. package/dist/Icon/src/icons/Upload.d.ts +0 -2
  250. package/dist/Icon/src/icons/User.d.ts +0 -2
  251. package/dist/Icon/src/icons/UserAdd.d.ts +0 -2
  252. package/dist/Icon/src/icons/Users.d.ts +0 -2
  253. package/dist/Icon/src/icons/Verified.d.ts +0 -2
  254. package/dist/Icon/src/icons/Vk.d.ts +0 -2
  255. package/dist/Icon/src/icons/Wallet.d.ts +0 -2
  256. package/dist/Icon/src/icons/Warning.d.ts +0 -2
  257. package/dist/Icon/src/icons/Webmoney.d.ts +0 -2
  258. package/dist/Icon/src/icons/WordPress.d.ts +0 -2
  259. package/dist/Icon/src/icons/YandexMoney.d.ts +0 -2
  260. package/dist/Icon/src/index.d.ts +0 -166
  261. package/dist/Icon/src/style.d.ts +0 -8
  262. package/dist/Icon/src/types.d.ts +0 -274
  263. package/dist/ImageUploader/rollup.config.d.ts +0 -15
  264. package/dist/ImageUploader/src/index.d.ts +0 -30
  265. package/dist/ImageUploader/src/styles.d.ts +0 -8
  266. package/dist/InputCheckbox/src/index.d.ts +0 -3
  267. package/dist/InputCheckbox/src/style.d.ts +0 -13
  268. package/dist/InputCheckbox/src/types.d.ts +0 -13
  269. package/dist/InputNumber/src/allowJavaScriptModules.d.ts +0 -1
  270. package/dist/InputNumber/src/index.d.ts +0 -3
  271. package/dist/InputNumber/src/style.d.ts +0 -8
  272. package/dist/InputNumber/src/types.d.ts +0 -27
  273. package/dist/InputPassword/src/allowJavaScriptModules.d.ts +0 -1
  274. package/dist/InputPassword/src/index.d.ts +0 -3
  275. package/dist/InputPassword/src/style.d.ts +0 -9
  276. package/dist/InputPassword/src/types.d.ts +0 -22
  277. package/dist/InputText/rollup.config.d.ts +0 -15
  278. package/dist/InputText/src/index.d.ts +0 -68
  279. package/dist/InputText/src/style.d.ts +0 -4
  280. package/dist/KYCForm/src/KYCDocumentParts/index.d.ts +0 -7
  281. package/dist/KYCForm/src/KYCDocumentParts/style.d.ts +0 -10
  282. package/dist/KYCForm/src/KYCDocumentParts/types.d.ts +0 -34
  283. package/dist/KYCForm/src/KYCErrorLabel/index.d.ts +0 -3
  284. package/dist/KYCForm/src/KYCErrorLabel/style.d.ts +0 -4
  285. package/dist/KYCForm/src/KYCErrorLabel/types.d.ts +0 -7
  286. package/dist/KYCForm/src/KYCFormItem/index.d.ts +0 -3
  287. package/dist/KYCForm/src/KYCFormItem/style.d.ts +0 -4
  288. package/dist/KYCForm/src/KYCFormItem/types.d.ts +0 -13
  289. package/dist/KYCForm/src/KYCStatusScreen/index.d.ts +0 -9
  290. package/dist/KYCForm/src/KYCStatusScreen/style.d.ts +0 -6
  291. package/dist/KYCForm/src/KYCStatusScreen/types.d.ts +0 -21
  292. package/dist/KYCForm/src/allowJavaScriptModules.d.ts +0 -1
  293. package/dist/KYCForm/src/constants.d.ts +0 -15
  294. package/dist/KYCForm/src/document.types.d.ts +0 -31
  295. package/dist/KYCForm/src/index.d.ts +0 -10
  296. package/dist/KYCForm/src/labels.types.d.ts +0 -35
  297. package/dist/KYCForm/src/style.d.ts +0 -5
  298. package/dist/KYCForm/src/types.d.ts +0 -17
  299. package/dist/KYCForm/src/utils.d.ts +0 -9
  300. package/dist/Label/rollup.config.d.ts +0 -15
  301. package/dist/Label/src/index.d.ts +0 -16
  302. package/dist/Label/src/style.d.ts +0 -2
  303. package/dist/MoneyDashboard/index.d.ts +0 -22
  304. package/dist/MoneyDashboard/style.d.ts +0 -4
  305. package/dist/MultiSelect/rollup.config.d.ts +0 -15
  306. package/dist/MultiSelect/src/index.d.ts +0 -51
  307. package/dist/MultiSelect/src/style.d.ts +0 -18
  308. package/dist/PageHeader/rollup.config.d.ts +0 -15
  309. package/dist/PageHeader/src/index.d.ts +0 -16
  310. package/dist/PageHeader/src/style.d.ts +0 -3
  311. package/dist/Pagination/src/allowJavaScriptModules.d.ts +0 -1
  312. package/dist/Pagination/src/styles.d.ts +0 -7
  313. package/dist/Pagination/src/types.d.ts +0 -26
  314. package/dist/PasswordValidator/src/index.d.ts +0 -9
  315. package/dist/PasswordValidator/src/style.d.ts +0 -7
  316. package/dist/PasswordValidator/src/types.d.ts +0 -23
  317. package/dist/Popup/src/index.d.ts +0 -5
  318. package/dist/Popup/src/styles.d.ts +0 -20
  319. package/dist/Popup/src/types.d.ts +0 -23
  320. package/dist/RadioCardGroup/rollup.config.d.ts +0 -15
  321. package/dist/RadioCardGroup/src/index.d.ts +0 -33
  322. package/dist/RadioCardGroup/src/style.d.ts +0 -7
  323. package/dist/RadioCardGroup/src/themes/index.d.ts +0 -21
  324. package/dist/RadioGroup/src/RadioOption/index.d.ts +0 -39
  325. package/dist/RadioGroup/src/RadioOption/style.d.ts +0 -16
  326. package/dist/RadioGroup/src/allowJavaScriptModules.d.ts +0 -1
  327. package/dist/RadioGroup/src/index.d.ts +0 -4
  328. package/dist/RadioGroup/src/style.d.ts +0 -4
  329. package/dist/RadioGroup/src/types.d.ts +0 -28
  330. package/dist/Select/src/allowJavaScriptModules.d.ts +0 -1
  331. package/dist/Select/src/index.d.ts +0 -3
  332. package/dist/Select/src/style.d.ts +0 -5
  333. package/dist/Select/src/types.d.ts +0 -30
  334. package/dist/SingleDatePicker/__test__/SingleDatePicker.test.d.ts +0 -1
  335. package/dist/SingleDatePicker/src/DatePickerControls/index.d.ts +0 -3
  336. package/dist/SingleDatePicker/src/DatePickerControls/style.d.ts +0 -4
  337. package/dist/SingleDatePicker/src/allowJavaScriptModules.d.ts +0 -1
  338. package/dist/SingleDatePicker/src/helpers.d.ts +0 -5
  339. package/dist/SingleDatePicker/src/index.d.ts +0 -4
  340. package/dist/SingleDatePicker/src/styles.d.ts +0 -6
  341. package/dist/SingleDatePicker/src/types.d.ts +0 -30
  342. package/dist/Slider/index.d.ts +0 -28
  343. package/dist/Slider/styles.d.ts +0 -37
  344. package/dist/SmartHint/rollup.config.d.ts +0 -15
  345. package/dist/SmartHint/src/index.d.ts +0 -36
  346. package/dist/SmartHint/src/style.d.ts +0 -12
  347. package/dist/SmartTooltip/rollup.config.d.ts +0 -15
  348. package/dist/SmartTooltip/src/index.d.ts +0 -4
  349. package/dist/SmartTooltip/src/style.d.ts +0 -8
  350. package/dist/Spinner/src/index.d.ts +0 -4
  351. package/dist/Spinner/src/style.d.ts +0 -12
  352. package/dist/Spinner/src/types.d.ts +0 -21
  353. package/dist/StyleVariables/index.d.ts +0 -30
  354. package/dist/StyleVariables/types.d.ts +0 -30
  355. package/dist/SuccessLabel/src/index.d.ts +0 -3
  356. package/dist/SuccessLabel/src/style.d.ts +0 -7
  357. package/dist/SuccessLabel/src/types.d.ts +0 -8
  358. package/dist/SuchModuleSoPackage/index.d.ts +0 -1
  359. package/dist/Switch/rollup.config.d.ts +0 -15
  360. package/dist/Switch/src/index.d.ts +0 -30
  361. package/dist/Switch/src/style.d.ts +0 -2
  362. package/dist/Table/__test__/table.test.d.ts +0 -1
  363. package/dist/Table/src/index.d.ts +0 -21
  364. package/dist/Table/src/propsGetter.d.ts +0 -9
  365. package/dist/Table/src/style.d.ts +0 -21
  366. package/dist/Table/src/types.d.ts +0 -114
  367. package/dist/Table/src/useLoadingState.d.ts +0 -5
  368. package/dist/Table/src/useTableShadow.d.ts +0 -2
  369. package/dist/Tabs/index.d.ts +0 -33
  370. package/dist/Tabs/style.d.ts +0 -6
  371. package/dist/TagsInput/src/allowJavaScriptModules.d.ts +0 -0
  372. package/dist/TagsInput/src/index.d.ts +0 -5
  373. package/dist/TagsInput/src/style.d.ts +0 -45
  374. package/dist/TextMaxLength/src/allowJavaScriptModules.d.ts +0 -1
  375. package/dist/TextMaxLength/src/index.d.ts +0 -3
  376. package/dist/TextMaxLength/src/style.d.ts +0 -4
  377. package/dist/TextMaxLength/src/types.d.ts +0 -7
  378. package/dist/Textarea/src/allowJavaScriptModules.d.ts +0 -1
  379. package/dist/Textarea/src/index.d.ts +0 -3
  380. package/dist/Textarea/src/style.d.ts +0 -8
  381. package/dist/Textarea/src/types.d.ts +0 -22
  382. package/dist/ThemeAnnotation/src/components/Input.d.ts +0 -1
  383. package/dist/ThemeAnnotation/src/index.d.ts +0 -5
  384. package/dist/ThemeAnnotation/src/types.d.ts +0 -9
  385. package/dist/TimePicker/src/allowJavaScriptModules.d.ts +0 -1
  386. package/dist/TimePicker/src/index.d.ts +0 -4
  387. package/dist/TimePicker/src/style.d.ts +0 -4
  388. package/dist/TimePicker/src/types.d.ts +0 -11
  389. package/dist/Title/src/index.d.ts +0 -3
  390. package/dist/Title/src/style.d.ts +0 -5
  391. package/dist/Title/src/types.d.ts +0 -13
  392. package/dist/Tooltip/index.d.ts +0 -24
package/CHANGELOG.md CHANGED
@@ -1,26 +1,40 @@
1
- #### `2.2.0`
1
+ ## `2.5.0`
2
+
3
+ * Added `isDisabled` prop for a single drop-down `option`
4
+
5
+ ## `2.4.0`
6
+
7
+ * migrated to TypeScript
8
+
9
+ ## `2.3.0`
10
+
11
+ * updated peerDependencies
12
+
13
+ ## `2.2.0`
2
14
 
3
15
  * added props mouse enter and leave
4
16
 
5
- #### `2.1.0`
17
+ ## `2.1.0`
6
18
 
7
19
  * edit package json main and module data
8
20
 
9
- #### `2.0.0`
21
+ ## `2.0.0`
10
22
 
11
23
  * update dependencies, remove rollup add tdx
12
24
 
13
- #### `1.2.0`
25
+ ## `1.2.0`
26
+
14
27
  * update dependencies
15
28
 
16
- #### `1.1.0`
29
+ ## `1.1.0`
30
+
17
31
  * update dependencies
18
32
 
19
- #### `1.0.1`
33
+ ## `1.0.1`
20
34
 
21
- Add hover state
22
- Fix items height
35
+ * Add hover state
36
+ * Fix items height
23
37
 
24
- #### `1.0.0`
38
+ ## `1.0.0`
25
39
 
26
- Add '@propellerads/button-drop-down' component
40
+ * Add '@propellerads/button-drop-down' component
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
3
5
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
6
 
5
7
  var React = require('react');
6
8
  var React__default = _interopDefault(React);
7
- var PropTypes = _interopDefault(require('prop-types'));
8
9
  var Button = require('@propellerads/button');
9
10
  var Button__default = _interopDefault(Button);
10
11
  var styled = _interopDefault(require('styled-components'));
@@ -29,29 +30,19 @@ var BUTTON_DROPDOWN_TYPE = Button.BUTTON_TYPE;
29
30
  var ButtonDropDownList = function ButtonDropDownList(props) {
30
31
  var option = props.option,
31
32
  _onClick = props.onClick;
32
- return /*#__PURE__*/React__default.createElement(Button__default, {
33
+ return React__default.createElement(Button__default, {
33
34
  elementId: option.id,
34
35
  type: Button.BUTTON_TYPE.PLAIN,
35
36
  onClick: function onClick() {
36
37
  return _onClick(option);
37
- }
38
- }, /*#__PURE__*/React__default.createElement(ButtonDropDownListItemContainer, null, option.title));
39
- };
40
-
41
- var ButtonDropDownListProps = /*#__PURE__*/PropTypes.shape({
42
- id: /*#__PURE__*/PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
43
- title: PropTypes.string.isRequired
44
- }).isRequired;
45
- ButtonDropDownList.propTypes = {
46
- option: ButtonDropDownListProps,
47
- onClick: PropTypes.func.isRequired
48
- };
49
- ButtonDropDownList.defaultProps = {
50
- option: {}
38
+ },
39
+ isDisabled: option.isDisabled
40
+ }, React__default.createElement(ButtonDropDownListItemContainer, null, option.title));
51
41
  };
52
42
 
53
43
  var ButtonDropDown = function ButtonDropDown(props) {
54
- var type = props.type,
44
+ var _props$type = props.type,
45
+ type = _props$type === void 0 ? Button.BUTTON_TYPE.ADVANCED : _props$type,
55
46
  isLoading = props.isLoading,
56
47
  isDisabled = props.isDisabled,
57
48
  elementId = props.elementId,
@@ -90,9 +81,9 @@ var ButtonDropDown = function ButtonDropDown(props) {
90
81
  onClick(value);
91
82
  };
92
83
 
93
- return /*#__PURE__*/React__default.createElement(ButtonDropDownContainer, {
84
+ return React__default.createElement(ButtonDropDownContainer, {
94
85
  ref: containerRef
95
- }, /*#__PURE__*/React__default.createElement(Button__default, {
86
+ }, React__default.createElement(Button__default, {
96
87
  type: type,
97
88
  isLoading: isLoading,
98
89
  isDisabled: isDisabled,
@@ -102,8 +93,8 @@ var ButtonDropDown = function ButtonDropDown(props) {
102
93
  },
103
94
  onMouseEnter: onMouseEnter,
104
95
  onMouseLeave: onMouseLeave
105
- }, title), isExpanded && options.length > 0 && /*#__PURE__*/React__default.createElement(ButtonDropDownListContainer, null, options.map(function (option) {
106
- return /*#__PURE__*/React__default.createElement(ButtonDropDownList, {
96
+ }, title), isExpanded && options.length > 0 && React__default.createElement(ButtonDropDownListContainer, null, options.map(function (option) {
97
+ return React__default.createElement(ButtonDropDownList, {
107
98
  option: option,
108
99
  key: option.id,
109
100
  onClick: onItemClick
@@ -111,26 +102,6 @@ var ButtonDropDown = function ButtonDropDown(props) {
111
102
  })));
112
103
  };
113
104
 
114
- ButtonDropDown.propTypes = {
115
- type: /*#__PURE__*/PropTypes.oneOf( /*#__PURE__*/Object.values(BUTTON_DROPDOWN_TYPE)),
116
- options: /*#__PURE__*/PropTypes.arrayOf(ButtonDropDownListProps),
117
- elementId: PropTypes.string.isRequired,
118
- isLoading: PropTypes.bool,
119
- isDisabled: PropTypes.bool,
120
- title: PropTypes.string.isRequired,
121
- onClick: PropTypes.func.isRequired,
122
- onMouseEnter: PropTypes.func,
123
- onMouseLeave: PropTypes.func
124
- };
125
- ButtonDropDown.defaultProps = {
126
- type: BUTTON_DROPDOWN_TYPE.ADVANCED,
127
- isLoading: false,
128
- isDisabled: false,
129
- options: [],
130
- onMouseEnter: undefined,
131
- onMouseLeave: undefined
132
- };
133
-
134
105
  exports.BUTTON_DROPDOWN_TYPE = BUTTON_DROPDOWN_TYPE;
135
106
  exports.default = ButtonDropDown;
136
107
  //# sourceMappingURL=button-drop-down.cjs.development.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-drop-down.cjs.development.js","sources":["../src/style.jsx","../src/index.jsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style.jsx';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\nconst ButtonDropDownList = (props) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\nconst ButtonDropDownListProps = PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n title: PropTypes.string.isRequired,\n}).isRequired;\n\nButtonDropDownList.propTypes = {\n option: ButtonDropDownListProps,\n onClick: PropTypes.func.isRequired,\n};\n\nButtonDropDownList.defaultProps = {\n option: {},\n};\n\nconst ButtonDropDown = (props) => {\n const {\n type,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nButtonDropDown.propTypes = {\n type: PropTypes.oneOf(Object.values(BUTTON_DROPDOWN_TYPE)),\n options: PropTypes.arrayOf(ButtonDropDownListProps),\n elementId: PropTypes.string.isRequired,\n isLoading: PropTypes.bool,\n isDisabled: PropTypes.bool,\n title: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n};\n\nButtonDropDown.defaultProps = {\n type: BUTTON_DROPDOWN_TYPE.ADVANCED,\n isLoading: false,\n isDisabled: false,\n options: [],\n onMouseEnter: undefined,\n onMouseLeave: undefined,\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","BUTTON_DROPDOWN_TYPE","BUTTON_TYPE","ButtonDropDownList","props","option","onClick","React","Button","id","PLAIN","title","ButtonDropDownListProps","PropTypes","shape","oneOfType","number","string","isRequired","propTypes","func","defaultProps","ButtonDropDown","type","isLoading","isDisabled","elementId","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","length","map","oneOf","Object","values","arrayOf","bool","ADVANCED"],"mappings":"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"}
1
+ {"version":3,"file":"button-drop-down.cjs.development.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\ntype DROPDOWN_OPTION_TYPE = {\n id: string,\n title: string,\n isDisabled?: boolean,\n};\n\nconst ButtonDropDownList = (props: {option: DROPDOWN_OPTION_TYPE, onClick: (value: DROPDOWN_OPTION_TYPE) => void}) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n isDisabled={option.isDisabled}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\ninterface IProps {\n type: typeof BUTTON_TYPE,\n options: DROPDOWN_OPTION_TYPE[],\n elementId: string,\n isLoading: boolean,\n isDisabled: boolean,\n title: string,\n onClick: (value: DROPDOWN_OPTION_TYPE) => void,\n onMouseEnter: () => void | undefined,\n onMouseLeave: () => void | undefined,\n}\n\nconst ButtonDropDown = (props: IProps) => {\n const {\n type = BUTTON_TYPE.ADVANCED,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event: any) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value: DROPDOWN_OPTION_TYPE) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","BUTTON_DROPDOWN_TYPE","BUTTON_TYPE","ButtonDropDownList","props","option","onClick","React","Button","elementId","id","type","PLAIN","isDisabled","title","ButtonDropDown","ADVANCED","isLoading","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","ref","length","map","key"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var n,t,i,o=require("react"),r=e(o),s=e(require("prop-types")),u=require("@propellerads/button"),d=e(u),a=e(require("styled-components")),l=require("@propellerads/stylevariables");function c(e,n){return n||(n=e.slice(0)),e.raw=n,e}var p=a.div(n||(n=c(["\n position: relative;\n width: fit-content;\n"]))),f=a.div(t||(t=c(["\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ",";\n border-radius: ","px;\n background-color: ",";\n padding: ","px 0;\n margin-top: 2px;\n font-size: ","px;\n z-index: 1;\n"])),l.gray80,l.borderRadius,l.white,2*l.spacing,l.fontNormal),v=a.div(i||(i=c(["\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ","px ","px;\n\n &:hover {\n background-color: ",";\n }\n"])),2*l.spacing,3*l.spacing,l.gray95),m=u.BUTTON_TYPE,g=function(e){var n=e.option,t=e.onClick;return r.createElement(d,{elementId:n.id,type:u.BUTTON_TYPE.PLAIN,onClick:function(){return t(n)}},r.createElement(v,null,n.title))},E=s.shape({id:s.oneOfType([s.number,s.string]).isRequired,title:s.string.isRequired}).isRequired;g.propTypes={option:E,onClick:s.func.isRequired},g.defaultProps={option:{}};var b=function(e){var n=e.type,t=e.isLoading,i=e.isDisabled,s=e.elementId,u=e.options,a=e.title,l=e.onClick,c=e.onMouseEnter,v=void 0===c?void 0:c,m=e.onMouseLeave,E=void 0===m?void 0:m,b=o.useRef(null),y=o.useState(!1),x=y[0],L=y[1];o.useEffect((function(){var e=function(e){var n=b.current;n&&!n.contains(e.target)&&L(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),function(){document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)}}),[b]);var h=function(e){L(!1),l(e)};return r.createElement(p,{ref:b},r.createElement(d,{type:n,isLoading:t,isDisabled:i,elementId:s,onClick:function(){return L(!x)},onMouseEnter:v,onMouseLeave:E},a),x&&u.length>0&&r.createElement(f,null,u.map((function(e){return r.createElement(g,{option:e,key:e.id,onClick:h})}))))};b.propTypes={type:s.oneOf(Object.values(m)),options:s.arrayOf(E),elementId:s.string.isRequired,isLoading:s.bool,isDisabled:s.bool,title:s.string.isRequired,onClick:s.func.isRequired,onMouseEnter:s.func,onMouseLeave:s.func},b.defaultProps={type:m.ADVANCED,isLoading:!1,isDisabled:!1,options:[],onMouseEnter:void 0,onMouseLeave:void 0},exports.BUTTON_DROPDOWN_TYPE=m,exports.default=b;
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,t,i,o=require("react"),r=e(o),a=require("@propellerads/button"),d=e(a),u=e(require("styled-components")),l=require("@propellerads/stylevariables");function s(e,n){return n||(n=e.slice(0)),e.raw=n,e}var c=u.div(n||(n=s(["\n position: relative;\n width: fit-content;\n"]))),p=u.div(t||(t=s(["\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ",";\n border-radius: ","px;\n background-color: ",";\n padding: ","px 0;\n margin-top: 2px;\n font-size: ","px;\n z-index: 1;\n"])),l.gray80,l.borderRadius,l.white,2*l.spacing,l.fontNormal),f=u.div(i||(i=s(["\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ","px ","px;\n\n &:hover {\n background-color: ",";\n }\n"])),2*l.spacing,3*l.spacing,l.gray95),v=function(e){var n=e.option,t=e.onClick;return r.createElement(d,{elementId:n.id,type:a.BUTTON_TYPE.PLAIN,onClick:function(){return t(n)},isDisabled:n.isDisabled},r.createElement(f,null,n.title))};exports.BUTTON_DROPDOWN_TYPE=a.BUTTON_TYPE,exports.default=function(e){var n=e.type,t=void 0===n?a.BUTTON_TYPE.ADVANCED:n,i=e.isLoading,u=e.isDisabled,l=e.elementId,s=e.options,f=e.title,m=e.onClick,E=e.onMouseEnter,g=void 0===E?void 0:E,x=e.onMouseLeave,b=void 0===x?void 0:x,T=o.useRef(null),h=o.useState(!1),y=h[0],L=h[1];o.useEffect((function(){var e=function(e){var n=T.current;n&&!n.contains(e.target)&&L(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),function(){document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)}}),[T]);var k=function(e){L(!1),m(e)};return r.createElement(c,{ref:T},r.createElement(d,{type:t,isLoading:i,isDisabled:u,elementId:l,onClick:function(){return L(!y)},onMouseEnter:g,onMouseLeave:b},f),y&&s.length>0&&r.createElement(p,null,s.map((function(e){return r.createElement(v,{option:e,key:e.id,onClick:k})}))))};
2
2
  //# sourceMappingURL=button-drop-down.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-drop-down.cjs.production.min.js","sources":["../src/style.jsx","../src/index.jsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style.jsx';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\nconst ButtonDropDownList = (props) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\nconst ButtonDropDownListProps = PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n title: PropTypes.string.isRequired,\n}).isRequired;\n\nButtonDropDownList.propTypes = {\n option: ButtonDropDownListProps,\n onClick: PropTypes.func.isRequired,\n};\n\nButtonDropDownList.defaultProps = {\n option: {},\n};\n\nconst ButtonDropDown = (props) => {\n const {\n type,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nButtonDropDown.propTypes = {\n type: PropTypes.oneOf(Object.values(BUTTON_DROPDOWN_TYPE)),\n options: PropTypes.arrayOf(ButtonDropDownListProps),\n elementId: PropTypes.string.isRequired,\n isLoading: PropTypes.bool,\n isDisabled: PropTypes.bool,\n title: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n};\n\nButtonDropDown.defaultProps = {\n type: BUTTON_DROPDOWN_TYPE.ADVANCED,\n isLoading: false,\n isDisabled: false,\n options: [],\n onMouseEnter: undefined,\n onMouseLeave: undefined,\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","BUTTON_DROPDOWN_TYPE","BUTTON_TYPE","ButtonDropDownList","props","option","onClick","React","Button","elementId","id","type","PLAIN","title","ButtonDropDownListProps","PropTypes","shape","oneOfType","number","string","isRequired","propTypes","func","defaultProps","ButtonDropDown","isLoading","isDisabled","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","ref","length","map","key","oneOf","Object","values","arrayOf","bool","ADVANCED"],"mappings":"0TAUA,IAAMA,EAA0BC,EAAOC,oEAKjCC,EAA8BF,EAAOC,8RAMrBE,SACHC,eACGC,QACC,EAAVC,UAEEC,cAITC,EAAkCR,EAAOC,wJAIxB,EAAVK,UAA2B,EAAVA,UAGNG,UC3BXC,EAAuBC,cAE9BC,EAAqB,SAACC,OAExBC,EAEED,EAFFC,OACAC,EACEF,EADFE,eAIAC,gBAACC,GACCC,UAAWJ,EAAOK,GAClBC,KAAMT,cAAYU,MAClBN,QAAS,kBAAMA,EAAQD,KAEvBE,gBAACR,OACEM,EAAOQ,SAMVC,EAA0BC,EAAUC,MAAM,CAC9CN,GAAIK,EAAUE,UAAU,CAACF,EAAUG,OAAQH,EAAUI,SAASC,WAC9DP,MAAOE,EAAUI,OAAOC,aACvBA,WAEHjB,EAAmBkB,UAAY,CAC7BhB,OAAQS,EACRR,QAASS,EAAUO,KAAKF,YAG1BjB,EAAmBoB,aAAe,CAChClB,OAAQ,IAGV,IAAMmB,EAAiB,SAACpB,OAEpBO,EASEP,EATFO,KACAc,EAQErB,EARFqB,UACAC,EAOEtB,EAPFsB,WACAjB,EAMEL,EANFK,UACAkB,EAKEvB,EALFuB,QACAd,EAIET,EAJFS,MACAP,EAGEF,EAHFE,UAGEF,EAFFwB,aAAAA,kBAAeC,MAEbzB,EADF0B,aAAAA,kBAAeD,IAGXE,EAAeC,SAAO,QAEMC,YAAS,GAApCC,OAAYC,OAEnBC,aAAU,eACFC,EAAqB,SAACC,OACnBC,EAAWR,EAAXQ,QAEHA,IAAYA,EAAQC,SAASF,EAAMG,SACrCN,GAAY,WAIhBO,SAASC,iBAAiB,YAAaN,GACvCK,SAASC,iBAAiB,aAAcN,GACjC,WACLK,SAASE,oBAAoB,YAAaP,GAC1CK,SAASE,oBAAoB,aAAcP,MAE5C,CAACN,QAEEc,EAAc,SAACC,GACnBX,GAAY,GACZ7B,EAAQwC,WAIRvC,gBAACjB,GACCyD,IAAKhB,GAELxB,gBAACC,GACCG,KAAMA,EACNc,UAAWA,EACXC,WAAYA,EACZjB,UAAWA,EACXH,QAAS,kBAAM6B,GAAaD,IAC5BN,aAAcA,EACdE,aAAcA,GAEbjB,GAGFqB,GAAcP,EAAQqB,OAAS,GAC9BzC,gBAACd,OACEkC,EAAQsB,KAAI,SAAC5C,UACZE,gBAACJ,GACCE,OAAQA,EACR6C,IAAK7C,EAAOK,GACZJ,QAASuC,UASvBrB,EAAeH,UAAY,CACzBV,KAAMI,EAAUoC,MAAMC,OAAOC,OAAOpD,IACpC0B,QAASZ,EAAUuC,QAAQxC,GAC3BL,UAAWM,EAAUI,OAAOC,WAC5BK,UAAWV,EAAUwC,KACrB7B,WAAYX,EAAUwC,KACtB1C,MAAOE,EAAUI,OAAOC,WACxBd,QAASS,EAAUO,KAAKF,WACxBQ,aAAcb,EAAUO,KACxBQ,aAAcf,EAAUO,MAG1BE,EAAeD,aAAe,CAC5BZ,KAAMV,EAAqBuD,SAC3B/B,WAAW,EACXC,YAAY,EACZC,QAAS,GACTC,kBAAcC,EACdC,kBAAcD"}
1
+ {"version":3,"file":"button-drop-down.cjs.production.min.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\ntype DROPDOWN_OPTION_TYPE = {\n id: string,\n title: string,\n isDisabled?: boolean,\n};\n\nconst ButtonDropDownList = (props: {option: DROPDOWN_OPTION_TYPE, onClick: (value: DROPDOWN_OPTION_TYPE) => void}) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n isDisabled={option.isDisabled}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\ninterface IProps {\n type: typeof BUTTON_TYPE,\n options: DROPDOWN_OPTION_TYPE[],\n elementId: string,\n isLoading: boolean,\n isDisabled: boolean,\n title: string,\n onClick: (value: DROPDOWN_OPTION_TYPE) => void,\n onMouseEnter: () => void | undefined,\n onMouseLeave: () => void | undefined,\n}\n\nconst ButtonDropDown = (props: IProps) => {\n const {\n type = BUTTON_TYPE.ADVANCED,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event: any) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value: DROPDOWN_OPTION_TYPE) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","ButtonDropDownList","props","option","onClick","React","Button","elementId","id","type","BUTTON_TYPE","PLAIN","isDisabled","title","ADVANCED","isLoading","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","ref","length","map","key"],"mappings":"sVAUA,IAAMA,EAA0BC,EAAOC,oEAKjCC,EAA8BF,EAAOC,8RAMrBE,SACHC,eACGC,QACC,EAAVC,UAEEC,cAITC,EAAkCR,EAAOC,wJAIxB,EAAVK,UAA2B,EAAVA,UAGNG,UCpBlBC,EAAqB,SAACC,OAExBC,EAEED,EAFFC,OACAC,EACEF,EADFE,eAIAC,gBAACC,GACCC,UAAWJ,EAAOK,GAClBC,KAAMC,cAAYC,MAClBP,QAAS,kBAAMA,EAAQD,IACvBS,WAAYT,EAAOS,YAEnBP,gBAACN,OACEI,EAAOU,sCAtBoBH,8BAwCb,SAACR,SAWlBA,EATFO,KAAAA,aAAOC,cAAYI,WACnBC,EAQEb,EARFa,UACAH,EAOEV,EAPFU,WACAL,EAMEL,EANFK,UACAS,EAKEd,EALFc,QACAH,EAIEX,EAJFW,MACAT,EAGEF,EAHFE,UAGEF,EAFFe,aAAAA,kBAAeC,MAEbhB,EADFiB,aAAAA,kBAAeD,IAGXE,EAAeC,SAAuB,QAEVC,YAAS,GAApCC,OAAYC,OAEnBC,aAAU,eACFC,EAAqB,SAACC,OACnBC,EAAWR,EAAXQ,QAEHA,IAAYA,EAAQC,SAASF,EAAMG,SACrCN,GAAY,WAIhBO,SAASC,iBAAiB,YAAaN,GACvCK,SAASC,iBAAiB,aAAcN,GACjC,WACLK,SAASE,oBAAoB,YAAaP,GAC1CK,SAASE,oBAAoB,aAAcP,MAE5C,CAACN,QAEEc,EAAc,SAACC,GACnBX,GAAY,GACZpB,EAAQ+B,WAIR9B,gBAACf,GACC8C,IAAKhB,GAILf,gBAACC,GACCG,KAAMA,EACNM,UAAWA,EACXH,WAAYA,EACZL,UAAWA,EACXH,QAAS,kBAAMoB,GAAaD,IAC5BN,aAAcA,EACdE,aAAcA,GAEbN,GAGFU,GAAcP,EAAQqB,OAAS,GAC9BhC,gBAACZ,OACEuB,EAAQsB,KAAI,SAACnC,UACZE,gBAACJ,GACCE,OAAQA,EACRoC,IAAKpC,EAAOK,GACZJ,QAAS8B"}
@@ -1,5 +1,4 @@
1
1
  import React, { useRef, useState, useEffect } from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import Button, { BUTTON_TYPE } from '@propellerads/button';
4
3
  import styled from 'styled-components';
5
4
  import { gray80, borderRadius, white, spacing, fontNormal, gray95 } from '@propellerads/stylevariables';
@@ -23,29 +22,19 @@ var BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;
23
22
  var ButtonDropDownList = function ButtonDropDownList(props) {
24
23
  var option = props.option,
25
24
  _onClick = props.onClick;
26
- return /*#__PURE__*/React.createElement(Button, {
25
+ return React.createElement(Button, {
27
26
  elementId: option.id,
28
27
  type: BUTTON_TYPE.PLAIN,
29
28
  onClick: function onClick() {
30
29
  return _onClick(option);
31
- }
32
- }, /*#__PURE__*/React.createElement(ButtonDropDownListItemContainer, null, option.title));
33
- };
34
-
35
- var ButtonDropDownListProps = /*#__PURE__*/PropTypes.shape({
36
- id: /*#__PURE__*/PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
37
- title: PropTypes.string.isRequired
38
- }).isRequired;
39
- ButtonDropDownList.propTypes = {
40
- option: ButtonDropDownListProps,
41
- onClick: PropTypes.func.isRequired
42
- };
43
- ButtonDropDownList.defaultProps = {
44
- option: {}
30
+ },
31
+ isDisabled: option.isDisabled
32
+ }, React.createElement(ButtonDropDownListItemContainer, null, option.title));
45
33
  };
46
34
 
47
35
  var ButtonDropDown = function ButtonDropDown(props) {
48
- var type = props.type,
36
+ var _props$type = props.type,
37
+ type = _props$type === void 0 ? BUTTON_TYPE.ADVANCED : _props$type,
49
38
  isLoading = props.isLoading,
50
39
  isDisabled = props.isDisabled,
51
40
  elementId = props.elementId,
@@ -84,9 +73,9 @@ var ButtonDropDown = function ButtonDropDown(props) {
84
73
  onClick(value);
85
74
  };
86
75
 
87
- return /*#__PURE__*/React.createElement(ButtonDropDownContainer, {
76
+ return React.createElement(ButtonDropDownContainer, {
88
77
  ref: containerRef
89
- }, /*#__PURE__*/React.createElement(Button, {
78
+ }, React.createElement(Button, {
90
79
  type: type,
91
80
  isLoading: isLoading,
92
81
  isDisabled: isDisabled,
@@ -96,8 +85,8 @@ var ButtonDropDown = function ButtonDropDown(props) {
96
85
  },
97
86
  onMouseEnter: onMouseEnter,
98
87
  onMouseLeave: onMouseLeave
99
- }, title), isExpanded && options.length > 0 && /*#__PURE__*/React.createElement(ButtonDropDownListContainer, null, options.map(function (option) {
100
- return /*#__PURE__*/React.createElement(ButtonDropDownList, {
88
+ }, title), isExpanded && options.length > 0 && React.createElement(ButtonDropDownListContainer, null, options.map(function (option) {
89
+ return React.createElement(ButtonDropDownList, {
101
90
  option: option,
102
91
  key: option.id,
103
92
  onClick: onItemClick
@@ -105,26 +94,6 @@ var ButtonDropDown = function ButtonDropDown(props) {
105
94
  })));
106
95
  };
107
96
 
108
- ButtonDropDown.propTypes = {
109
- type: /*#__PURE__*/PropTypes.oneOf( /*#__PURE__*/Object.values(BUTTON_DROPDOWN_TYPE)),
110
- options: /*#__PURE__*/PropTypes.arrayOf(ButtonDropDownListProps),
111
- elementId: PropTypes.string.isRequired,
112
- isLoading: PropTypes.bool,
113
- isDisabled: PropTypes.bool,
114
- title: PropTypes.string.isRequired,
115
- onClick: PropTypes.func.isRequired,
116
- onMouseEnter: PropTypes.func,
117
- onMouseLeave: PropTypes.func
118
- };
119
- ButtonDropDown.defaultProps = {
120
- type: BUTTON_DROPDOWN_TYPE.ADVANCED,
121
- isLoading: false,
122
- isDisabled: false,
123
- options: [],
124
- onMouseEnter: undefined,
125
- onMouseLeave: undefined
126
- };
127
-
128
97
  export default ButtonDropDown;
129
98
  export { BUTTON_DROPDOWN_TYPE };
130
99
  //# sourceMappingURL=button-drop-down.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-drop-down.esm.js","sources":["../src/style.jsx","../src/index.jsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style.jsx';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\nconst ButtonDropDownList = (props) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\nconst ButtonDropDownListProps = PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n title: PropTypes.string.isRequired,\n}).isRequired;\n\nButtonDropDownList.propTypes = {\n option: ButtonDropDownListProps,\n onClick: PropTypes.func.isRequired,\n};\n\nButtonDropDownList.defaultProps = {\n option: {},\n};\n\nconst ButtonDropDown = (props) => {\n const {\n type,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nButtonDropDown.propTypes = {\n type: PropTypes.oneOf(Object.values(BUTTON_DROPDOWN_TYPE)),\n options: PropTypes.arrayOf(ButtonDropDownListProps),\n elementId: PropTypes.string.isRequired,\n isLoading: PropTypes.bool,\n isDisabled: PropTypes.bool,\n title: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n};\n\nButtonDropDown.defaultProps = {\n type: BUTTON_DROPDOWN_TYPE.ADVANCED,\n isLoading: false,\n isDisabled: false,\n options: [],\n onMouseEnter: undefined,\n onMouseLeave: undefined,\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","BUTTON_DROPDOWN_TYPE","BUTTON_TYPE","ButtonDropDownList","props","option","onClick","id","PLAIN","title","ButtonDropDownListProps","PropTypes","shape","oneOfType","number","string","isRequired","propTypes","func","defaultProps","ButtonDropDown","type","isLoading","isDisabled","elementId","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","length","map","oneOf","Object","values","arrayOf","bool","ADVANCED"],"mappings":"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"}
1
+ {"version":3,"file":"button-drop-down.esm.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {\n gray80,\n gray95,\n white,\n spacing,\n fontNormal,\n borderRadius,\n} from '@propellerads/stylevariables';\n\nconst ButtonDropDownContainer = styled.div`\n position: relative;\n width: fit-content;\n`;\n\nconst ButtonDropDownListContainer = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n min-width: 100%;\n width: fit-content;\n border: 1px solid ${gray80};\n border-radius: ${borderRadius}px;\n background-color: ${white};\n padding: ${spacing * 2}px 0;\n margin-top: 2px;\n font-size: ${fontNormal}px;\n z-index: 1;\n`;\n\nconst ButtonDropDownListItemContainer = styled.div`\n width: 100%;\n text-align: left;\n min-height: 32px;\n padding: ${spacing * 2}px ${spacing * 3}px;\n\n &:hover {\n background-color: ${gray95};\n }\n`;\n\nexport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n};\n","import React, {useState, useEffect, useRef} from 'react';\nimport Button, {BUTTON_TYPE} from '@propellerads/button';\n\nimport {\n ButtonDropDownContainer,\n ButtonDropDownListContainer,\n ButtonDropDownListItemContainer,\n} from './style';\n\nexport const BUTTON_DROPDOWN_TYPE = BUTTON_TYPE;\n\ntype DROPDOWN_OPTION_TYPE = {\n id: string,\n title: string,\n isDisabled?: boolean,\n};\n\nconst ButtonDropDownList = (props: {option: DROPDOWN_OPTION_TYPE, onClick: (value: DROPDOWN_OPTION_TYPE) => void}) => {\n const {\n option,\n onClick,\n } = props;\n\n return (\n <Button\n elementId={option.id}\n type={BUTTON_TYPE.PLAIN}\n onClick={() => onClick(option)}\n isDisabled={option.isDisabled}\n >\n <ButtonDropDownListItemContainer>\n {option.title}\n </ButtonDropDownListItemContainer>\n </Button>\n );\n};\n\ninterface IProps {\n type: typeof BUTTON_TYPE,\n options: DROPDOWN_OPTION_TYPE[],\n elementId: string,\n isLoading: boolean,\n isDisabled: boolean,\n title: string,\n onClick: (value: DROPDOWN_OPTION_TYPE) => void,\n onMouseEnter: () => void | undefined,\n onMouseLeave: () => void | undefined,\n}\n\nconst ButtonDropDown = (props: IProps) => {\n const {\n type = BUTTON_TYPE.ADVANCED,\n isLoading,\n isDisabled,\n elementId,\n options,\n title,\n onClick,\n onMouseEnter = undefined,\n onMouseLeave = undefined,\n } = props;\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const [isExpanded, setExpanded] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = (event: any) => {\n const {current} = containerRef;\n\n if (current && !current.contains(event.target)) {\n setExpanded(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('touchstart', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('touchstart', handleClickOutside);\n };\n }, [containerRef]);\n\n const onItemClick = (value: DROPDOWN_OPTION_TYPE) => {\n setExpanded(false);\n onClick(value);\n };\n\n return (\n <ButtonDropDownContainer\n ref={containerRef}\n >\n {/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n {/* @ts-ignore */}\n <Button\n type={type}\n isLoading={isLoading}\n isDisabled={isDisabled}\n elementId={elementId}\n onClick={() => setExpanded(!isExpanded)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {title}\n </Button>\n\n {isExpanded && options.length > 0 && (\n <ButtonDropDownListContainer>\n {options.map((option) => (\n <ButtonDropDownList\n option={option}\n key={option.id}\n onClick={onItemClick}\n />\n ))}\n </ButtonDropDownListContainer>\n )}\n </ButtonDropDownContainer>\n );\n};\n\nexport default ButtonDropDown;\n"],"names":["ButtonDropDownContainer","styled","div","ButtonDropDownListContainer","gray80","borderRadius","white","spacing","fontNormal","ButtonDropDownListItemContainer","gray95","BUTTON_DROPDOWN_TYPE","BUTTON_TYPE","ButtonDropDownList","props","option","onClick","React","Button","elementId","id","type","PLAIN","isDisabled","title","ButtonDropDown","ADVANCED","isLoading","options","onMouseEnter","undefined","onMouseLeave","containerRef","useRef","useState","isExpanded","setExpanded","useEffect","handleClickOutside","event","current","contains","target","document","addEventListener","removeEventListener","onItemClick","value","ref","length","map","key"],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { BUTTON_TYPE } from '@propellerads/button';
2
+ export declare const BUTTON_DROPDOWN_TYPE: typeof BUTTON_TYPE;
3
+ declare type DROPDOWN_OPTION_TYPE = {
4
+ id: string;
5
+ title: string;
6
+ isDisabled?: boolean;
7
+ };
8
+ interface IProps {
9
+ type: typeof BUTTON_TYPE;
10
+ options: DROPDOWN_OPTION_TYPE[];
11
+ elementId: string;
12
+ isLoading: boolean;
13
+ isDisabled: boolean;
14
+ title: string;
15
+ onClick: (value: DROPDOWN_OPTION_TYPE) => void;
16
+ onMouseEnter: () => void | undefined;
17
+ onMouseLeave: () => void | undefined;
18
+ }
19
+ declare const ButtonDropDown: (props: IProps) => JSX.Element;
20
+ export default ButtonDropDown;
@@ -0,0 +1,4 @@
1
+ declare const ButtonDropDownContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ declare const ButtonDropDownListContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ declare const ButtonDropDownListItemContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ export { ButtonDropDownContainer, ButtonDropDownListContainer, ButtonDropDownListItemContainer, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@propellerads/button-drop-down",
3
- "version": "2.2.0",
3
+ "version": "2.5.0",
4
4
  "description": "ButtonDropDown component",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/button-drop-down.esm.js",
@@ -23,10 +23,7 @@
23
23
  "dependencies": {
24
24
  "@propellerads/button": "^5.2.1",
25
25
  "@propellerads/stylevariables": "^1.3.1",
26
- "add": "^2.0.6",
27
- "prop-types": "^15.7.2",
28
- "react": "^17.0.2",
29
- "styled-components": "^5.3.0"
26
+ "add": "^2.0.6"
30
27
  },
31
28
  "devDependencies": {
32
29
  "@babel/core": "^7.10.3",
@@ -37,5 +34,9 @@
37
34
  "tslib": "^2.3.1",
38
35
  "typescript": "^4.4.2"
39
36
  },
40
- "gitHead": "7c6e78b4236ce45b20e573ff3f7fa035ec5d9296"
37
+ "peerDependencies": {
38
+ "react": "^17.0.2",
39
+ "styled-components": "5.1.1"
40
+ },
41
+ "gitHead": "444f80c0ee88777023f510ac9a0aa739f333e914"
41
42
  }
@@ -1,32 +0,0 @@
1
- export namespace componentProps {
2
- export const ads: string[];
3
- }
4
- export default AdFormat;
5
- declare function AdFormat({ name, classNames, isPreview, isSvgPreview, }: {
6
- name: any;
7
- classNames: any;
8
- isPreview: any;
9
- isSvgPreview: any;
10
- }): JSX.Element | null;
11
- declare namespace AdFormat {
12
- export namespace propTypes {
13
- export const name: PropTypes.Validator<string>;
14
- export const classNames: PropTypes.Requireable<string>;
15
- export const isPreview: PropTypes.Requireable<boolean>;
16
- export const isSvgPreview: PropTypes.Requireable<boolean>;
17
- }
18
- export namespace defaultProps {
19
- const classNames_1: string;
20
- export { classNames_1 as classNames };
21
- const isPreview_1: boolean;
22
- export { isPreview_1 as isPreview };
23
- const isSvgPreview_1: boolean;
24
- export { isSvgPreview_1 as isSvgPreview };
25
- }
26
- }
27
- import { FORMATS } from "./style";
28
- import { SVGS } from "./style";
29
- import { PREVIEWS } from "./style";
30
- import { SVG_PREVIEWS } from "./style";
31
- import PropTypes from "prop-types";
32
- export { FORMATS, SVGS, PREVIEWS, SVG_PREVIEWS };
@@ -1,29 +0,0 @@
1
- export const StyledAdFormat: import("styled-components").StyledComponent<"div", any, {}, never>;
2
- export const StyledPreview: import("styled-components").StyledComponent<"img", any, {
3
- src: any;
4
- alt: string;
5
- }, "alt" | "src">;
6
- export const PREVIEWS: {
7
- [x: string]: any;
8
- };
9
- export const SVG_PREVIEWS: {
10
- [x: string]: any;
11
- };
12
- export namespace FORMATS {
13
- export const INTERSTITIAL: string;
14
- export const NATIVE: string;
15
- export const ONCLICK: string;
16
- export const NATIVEADS: string;
17
- export const LINK: string;
18
- export const DIRECT_LINK: string;
19
- export const PUSH_LINK: string;
20
- export const WEBSITE: string;
21
- export const LANDING_PAGE: string;
22
- export const IN_PAGE_PUSH: string;
23
- export const NATIVE_WIDGET: string;
24
- export const MULTITAG: string;
25
- export const VIGNETTE: string;
26
- }
27
- export const SVGS: {
28
- [x: string]: any;
29
- };
@@ -1,4 +0,0 @@
1
- import { ALERT_TYPES, AlertProps } from './types';
2
- declare const Alert: ({ type, children, icon }: AlertProps) => JSX.Element;
3
- export default Alert;
4
- export { ALERT_TYPES };
@@ -1,8 +0,0 @@
1
- import { ALERT_TYPES } from './types';
2
- interface StyledAlertProps {
3
- type: ALERT_TYPES;
4
- }
5
- declare const StyledAlert: import("styled-components").StyledComponent<"div", any, StyledAlertProps, never>;
6
- declare const StyledIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
7
- declare const StyledMessage: import("styled-components").StyledComponent<"div", any, {}, never>;
8
- export { StyledAlert, StyledIcon, StyledMessage, ALERT_TYPES, };
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- export declare enum ALERT_TYPES {
3
- WARNING = "warning",
4
- SUCCESS = "success",
5
- DANGER = "danger",
6
- INFO = "info"
7
- }
8
- export interface AlertProps {
9
- type?: ALERT_TYPES;
10
- icon?: React.ComponentElement<any, any> | undefined;
11
- children: React.ReactChildren | string | React.ComponentElement<any, any>;
12
- }
13
- export default class Alert extends React.Component<AlertProps> {
14
- }
@@ -1,20 +0,0 @@
1
- export namespace ARROW_TYPE {
2
- export const FIRST: string;
3
- export const PREVIOUS: string;
4
- export const NEXT: string;
5
- export const LAST: string;
6
- }
7
- export default ArrowButton;
8
- declare function ArrowButton(props: any): JSX.Element;
9
- declare namespace ArrowButton {
10
- export const propTypes: {
11
- type: PropTypes.Validator<string>;
12
- isDisabled: PropTypes.Requireable<boolean>;
13
- elementId: PropTypes.Validator<string>;
14
- onClick: PropTypes.Validator<(...args: any[]) => any>;
15
- };
16
- export namespace defaultProps {
17
- export const isDisabled: boolean;
18
- }
19
- }
20
- import PropTypes from "prop-types";
@@ -1 +0,0 @@
1
- export const StyledArrowButton: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,4 +0,0 @@
1
- import { BADGE_TYPE, BadgeProps, CustomStyle } from './types';
2
- declare const Badge: ({ label, type, customStyle, icon, }: BadgeProps) => JSX.Element;
3
- export default Badge;
4
- export { BADGE_TYPE, CustomStyle };
@@ -1,8 +0,0 @@
1
- import { BADGE_TYPE, CustomStyle } from './types';
2
- interface StyledBadgeContainerProps {
3
- type: BADGE_TYPE;
4
- customStyle: CustomStyle;
5
- }
6
- declare const StyledBadgeContainer: import("styled-components").StyledComponent<"div", any, StyledBadgeContainerProps, never>;
7
- declare const StyledBadgeIcon: import("styled-components").StyledComponent<"span", any, {}, never>;
8
- export { StyledBadgeContainer, StyledBadgeIcon };
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- export declare enum BADGE_TYPE {
3
- INFO = "info",
4
- WARNING = "warning",
5
- DANGER = "danger",
6
- SUCCESS = "success"
7
- }
8
- export interface CustomStyle {
9
- color?: string;
10
- background?: string;
11
- }
12
- export interface BadgeProps {
13
- label?: React.ReactChildren | string | React.ComponentElement<any, any>;
14
- type?: BADGE_TYPE;
15
- customStyle?: CustomStyle;
16
- icon?: React.ComponentElement<any, any>;
17
- }
18
- export default class Badge extends React.Component<BadgeProps> {
19
- }
@@ -1,4 +0,0 @@
1
- import { ButtonProps, BUTTON_TYPE, BUTTON_SIZE, BUTTON_HTML_TYPE } from './types';
2
- declare const Button: ({ isLoading, htmlType, type, size, onClick, isFullWidth, elementId, isAsync, isDisabled, children, gtmAction, gtmLabel, onMouseEnter, onMouseLeave, }: ButtonProps) => JSX.Element;
3
- export default Button;
4
- export { BUTTON_TYPE, BUTTON_SIZE, BUTTON_HTML_TYPE };
@@ -1,13 +0,0 @@
1
- import { BUTTON_TYPE, BUTTON_SIZE, THEME } from './types';
2
- interface StyledButtonProps {
3
- isDisabled: boolean;
4
- isLoading: boolean;
5
- styledType: BUTTON_TYPE;
6
- isFullWidth: boolean;
7
- size: BUTTON_SIZE;
8
- theme: THEME;
9
- }
10
- declare const StyledButton: import("styled-components").StyledComponent<"button", any, {
11
- disabled: boolean;
12
- } & StyledButtonProps, "disabled">;
13
- export { StyledButton };