@foxford/ui 2.89.0-beta-fed2f07-20251216 → 2.89.0-beta-116bdf3-20251218

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 (2082) hide show
  1. package/assets/add-reaction.svg +1 -0
  2. package/assets/afghanistan.svg +1 -0
  3. package/assets/airplay.svg +1 -0
  4. package/assets/aland-islands.svg +1 -0
  5. package/assets/alarm-add.svg +1 -0
  6. package/assets/alarm-clock.svg +1 -0
  7. package/assets/alarm-warning.svg +1 -0
  8. package/assets/albania.svg +1 -0
  9. package/assets/algebra.svg +1 -0
  10. package/assets/algeria.svg +1 -0
  11. package/assets/algorithms_color.svg +1 -0
  12. package/assets/align-center-justify.svg +1 -0
  13. package/assets/align-center.svg +1 -0
  14. package/assets/align-justify.svg +1 -0
  15. package/assets/align-left-justify.svg +1 -0
  16. package/assets/align-left.svg +1 -0
  17. package/assets/align-right-justify.svg +1 -0
  18. package/assets/align-right.svg +1 -0
  19. package/assets/american-samoa.svg +1 -0
  20. package/assets/analytics_2_color.svg +1 -0
  21. package/assets/analytics_3_color.svg +1 -0
  22. package/assets/analytics_color.svg +1 -0
  23. package/assets/andorra.svg +1 -0
  24. package/assets/angola.svg +1 -0
  25. package/assets/anguilla.svg +1 -0
  26. package/assets/annotation-user.svg +1 -0
  27. package/assets/annotation.svg +1 -0
  28. package/assets/antigua-and-barbuda.svg +1 -0
  29. package/assets/apple-auth-mono-color.svg +1 -0
  30. package/assets/apple-authorization.svg +1 -0
  31. package/assets/archive.svg +1 -0
  32. package/assets/archive_color.svg +1 -0
  33. package/assets/argentina.svg +1 -0
  34. package/assets/armenia.svg +1 -0
  35. package/assets/arrow-circle-down-fill-tin-fill.svg +1 -0
  36. package/assets/arrow-circle-down-fill.svg +1 -0
  37. package/assets/arrow-circle-down-left-fill-tin-fill.svg +1 -0
  38. package/assets/arrow-circle-down-left-fill.svg +1 -0
  39. package/assets/arrow-circle-down-left.svg +1 -0
  40. package/assets/arrow-circle-down-right-fill-tin-fill.svg +1 -0
  41. package/assets/arrow-circle-down-right-fill.svg +1 -0
  42. package/assets/arrow-circle-down-right.svg +1 -0
  43. package/assets/arrow-circle-down.svg +1 -0
  44. package/assets/arrow-circle-left-fill-tin-fill.svg +1 -0
  45. package/assets/arrow-circle-left-fill.svg +1 -0
  46. package/assets/arrow-circle-left.svg +1 -0
  47. package/assets/arrow-circle-right-fill-tin-fill.svg +1 -0
  48. package/assets/arrow-circle-right-fill.svg +1 -0
  49. package/assets/arrow-circle-right.svg +1 -0
  50. package/assets/arrow-circle-up-fill-tin-fill.svg +1 -0
  51. package/assets/arrow-circle-up-fill.svg +1 -0
  52. package/assets/arrow-circle-up-left-fill-tin-fill.svg +1 -0
  53. package/assets/arrow-circle-up-left-fill.svg +1 -0
  54. package/assets/arrow-circle-up-left.svg +1 -0
  55. package/assets/arrow-circle-up-right-fill-tin-fill.svg +1 -0
  56. package/assets/arrow-circle-up-right-fill.svg +1 -0
  57. package/assets/arrow-circle-up-right.svg +1 -0
  58. package/assets/arrow-circle-up.svg +1 -0
  59. package/assets/arrow-down-arrow-up.svg +1 -0
  60. package/assets/arrow-down-fill.svg +1 -0
  61. package/assets/arrow-down-left-fill.svg +1 -0
  62. package/assets/arrow-down-left.svg +1 -0
  63. package/assets/arrow-down-right-fill.svg +1 -0
  64. package/assets/arrow-down-right.svg +1 -0
  65. package/assets/arrow-down-short-wide.svg +1 -0
  66. package/assets/arrow-down-wide-short.svg +1 -0
  67. package/assets/arrow-down.svg +1 -0
  68. package/assets/arrow-left-fill.svg +1 -0
  69. package/assets/arrow-left.svg +1 -0
  70. package/assets/arrow-narrow-down-fill.svg +1 -0
  71. package/assets/arrow-narrow-down.svg +1 -0
  72. package/assets/arrow-narrow-left-fill.svg +1 -0
  73. package/assets/arrow-narrow-left.svg +1 -0
  74. package/assets/arrow-narrow-right-fill.svg +1 -0
  75. package/assets/arrow-narrow-right.svg +1 -0
  76. package/assets/arrow-narrow-up-fill.svg +1 -0
  77. package/assets/arrow-narrow-up.svg +1 -0
  78. package/assets/arrow-right-fill.svg +1 -0
  79. package/assets/arrow-right.svg +1 -0
  80. package/assets/arrow-sm-down-fill.svg +1 -0
  81. package/assets/arrow-sm-down.svg +1 -0
  82. package/assets/arrow-sm-left-fill.svg +1 -0
  83. package/assets/arrow-sm-left.svg +1 -0
  84. package/assets/arrow-sm-right-fill.svg +1 -0
  85. package/assets/arrow-sm-right.svg +1 -0
  86. package/assets/arrow-sm-up-fill.svg +1 -0
  87. package/assets/arrow-sm-up.svg +1 -0
  88. package/assets/arrow-spin-fill.svg +1 -0
  89. package/assets/arrow-spin.svg +1 -0
  90. package/assets/arrow-square-down-fill.svg +1 -0
  91. package/assets/arrow-square-down-left-fill.svg +1 -0
  92. package/assets/arrow-square-down-left.svg +1 -0
  93. package/assets/arrow-square-down-right-fill.svg +1 -0
  94. package/assets/arrow-square-down-right.svg +1 -0
  95. package/assets/arrow-square-down.svg +1 -0
  96. package/assets/arrow-square-left-fill.svg +1 -0
  97. package/assets/arrow-square-left.svg +1 -0
  98. package/assets/arrow-square-right-fill.svg +1 -0
  99. package/assets/arrow-square-right.svg +1 -0
  100. package/assets/arrow-square-up-fill.svg +1 -0
  101. package/assets/arrow-square-up-left-fill.svg +1 -0
  102. package/assets/arrow-square-up-left.svg +1 -0
  103. package/assets/arrow-square-up-right-fill.svg +1 -0
  104. package/assets/arrow-square-up-right.svg +1 -0
  105. package/assets/arrow-square-up.svg +1 -0
  106. package/assets/arrow-up-1-9.svg +1 -0
  107. package/assets/arrow-up-9-1.svg +1 -0
  108. package/assets/arrow-up-fill.svg +1 -0
  109. package/assets/arrow-up-left-fill.svg +1 -0
  110. package/assets/arrow-up-left.svg +1 -0
  111. package/assets/arrow-up-right-fill.svg +1 -0
  112. package/assets/arrow-up-right.svg +1 -0
  113. package/assets/arrow-up-short-wide.svg +1 -0
  114. package/assets/arrow-up-wide-short.svg +1 -0
  115. package/assets/arrow-up.svg +1 -0
  116. package/assets/arrows-left-right.svg +1 -0
  117. package/assets/arrows-up-down.svg +1 -0
  118. package/assets/art_color.svg +1 -0
  119. package/assets/aruba.svg +1 -0
  120. package/assets/astronomy_color.svg +1 -0
  121. package/assets/at-sign.svg +1 -0
  122. package/assets/australia.svg +1 -0
  123. package/assets/austria.svg +1 -0
  124. package/assets/azerbaijan.svg +1 -0
  125. package/assets/back-arrow.svg +1 -0
  126. package/assets/back-chevron.svg +1 -0
  127. package/assets/badge-check.svg +1 -0
  128. package/assets/badge.svg +1 -0
  129. package/assets/bag-shopping.svg +1 -0
  130. package/assets/bahamas.svg +1 -0
  131. package/assets/bahrain.svg +1 -0
  132. package/assets/ban.svg +1 -0
  133. package/assets/bangladesh.svg +1 -0
  134. package/assets/bank.svg +1 -0
  135. package/assets/barbados.svg +1 -0
  136. package/assets/bars-progress.svg +1 -0
  137. package/assets/basket-shopping.svg +1 -0
  138. package/assets/battery-bolt.svg +1 -0
  139. package/assets/battery-empty.svg +1 -0
  140. package/assets/battery-full.svg +1 -0
  141. package/assets/battery-off.svg +1 -0
  142. package/assets/battery-warning.svg +1 -0
  143. package/assets/belarus.svg +1 -0
  144. package/assets/belgium.svg +1 -0
  145. package/assets/belize.svg +1 -0
  146. package/assets/benin.svg +1 -0
  147. package/assets/bermuda.svg +1 -0
  148. package/assets/bhutan.svg +1 -0
  149. package/assets/biology.svg +1 -0
  150. package/assets/biology_color.svg +1 -0
  151. package/assets/blackBoard_default.svg +1 -0
  152. package/assets/blackboard.svg +1 -0
  153. package/assets/bloger_color.svg +1 -0
  154. package/assets/blogging.svg +1 -0
  155. package/assets/blogging_color.svg +1 -0
  156. package/assets/blueprint_color.svg +1 -0
  157. package/assets/bluetooth-off.svg +1 -0
  158. package/assets/bluetooth-on.svg +1 -0
  159. package/assets/body_human_color.svg +1 -0
  160. package/assets/bold.svg +1 -0
  161. package/assets/bolivia.svg +1 -0
  162. package/assets/bolt-fill.svg +1 -0
  163. package/assets/bolt.svg +1 -0
  164. package/assets/book-fill.svg +1 -0
  165. package/assets/book-open.svg +1 -0
  166. package/assets/book.svg +1 -0
  167. package/assets/book_default.svg +1 -0
  168. package/assets/bookmark-fill.svg +1 -0
  169. package/assets/bookmark-stack.svg +1 -0
  170. package/assets/bookmark.svg +1 -0
  171. package/assets/books.svg +1 -0
  172. package/assets/books_color.svg +1 -0
  173. package/assets/border-bottom.svg +1 -0
  174. package/assets/border-clear.svg +1 -0
  175. package/assets/border-horizontal.svg +1 -0
  176. package/assets/border-inner.svg +1 -0
  177. package/assets/border-left.svg +1 -0
  178. package/assets/border-outer.svg +1 -0
  179. package/assets/border-right.svg +1 -0
  180. package/assets/border-top-left.svg +1 -0
  181. package/assets/border-top.svg +1 -0
  182. package/assets/border-vertical.svg +1 -0
  183. package/assets/bosnia-and-herzegovina.svg +1 -0
  184. package/assets/botswana.svg +1 -0
  185. package/assets/bottom-alignment.svg +1 -0
  186. package/assets/bracket-curly-right.svg +1 -0
  187. package/assets/bracket-curly.svg +1 -0
  188. package/assets/bracket-round-right.svg +1 -0
  189. package/assets/bracket-round.svg +1 -0
  190. package/assets/bracket-square-right.svg +1 -0
  191. package/assets/bracket-square.svg +1 -0
  192. package/assets/brackets-curly.svg +1 -0
  193. package/assets/brackets-round.svg +1 -0
  194. package/assets/brackets-square.svg +1 -0
  195. package/assets/brazil.svg +1 -0
  196. package/assets/bright-full-fill.svg +1 -0
  197. package/assets/bright-low-fill.svg +1 -0
  198. package/assets/briight-full.svg +1 -0
  199. package/assets/briight-low.svg +1 -0
  200. package/assets/british-indian-ocean_territory.svg +1 -0
  201. package/assets/british-virgin-islands.svg +1 -0
  202. package/assets/browser.svg +1 -0
  203. package/assets/brunei.svg +1 -0
  204. package/assets/brush.svg +1 -0
  205. package/assets/building.svg +1 -0
  206. package/assets/bulgaria.svg +1 -0
  207. package/assets/burger_default.svg +1 -0
  208. package/assets/burkina-faso.svg +1 -0
  209. package/assets/burundi.svg +1 -0
  210. package/assets/bus.svg +1 -0
  211. package/assets/calendar-add.svg +1 -0
  212. package/assets/calendar-edit.svg +1 -0
  213. package/assets/calendar-export.svg +1 -0
  214. package/assets/calendar-fill.svg +1 -0
  215. package/assets/calendar-import.svg +1 -0
  216. package/assets/calendar-minus.svg +1 -0
  217. package/assets/calendar-remove.svg +1 -0
  218. package/assets/calendar-tick.svg +1 -0
  219. package/assets/calendar-user.svg +1 -0
  220. package/assets/calendar-warning.svg +1 -0
  221. package/assets/calendar.svg +1 -0
  222. package/assets/calendar_color.svg +1 -0
  223. package/assets/calendar_default.svg +1 -0
  224. package/assets/calendar_simple_default.svg +1 -0
  225. package/assets/calendars.svg +1 -0
  226. package/assets/cambodia.svg +1 -0
  227. package/assets/camera-off.svg +1 -0
  228. package/assets/camera.svg +1 -0
  229. package/assets/cameroon.svg +1 -0
  230. package/assets/camp.svg +1 -0
  231. package/assets/camps_default.svg +1 -0
  232. package/assets/canada.svg +1 -0
  233. package/assets/canary-islands.svg +1 -0
  234. package/assets/cancel_default.svg +1 -0
  235. package/assets/cape-verde.svg +1 -0
  236. package/assets/car.svg +1 -0
  237. package/assets/card-flip.svg +1 -0
  238. package/assets/caret-down-fill.svg +1 -0
  239. package/assets/caret-down.svg +1 -0
  240. package/assets/caret-left-fill.svg +1 -0
  241. package/assets/caret-left-to-line-fill.svg +1 -0
  242. package/assets/caret-left-to-line.svg +1 -0
  243. package/assets/caret-left.svg +1 -0
  244. package/assets/caret-right-fill.svg +1 -0
  245. package/assets/caret-right-to-line-fill.svg +1 -0
  246. package/assets/caret-right-to-line.svg +1 -0
  247. package/assets/caret-right.svg +1 -0
  248. package/assets/caret-up-fill.svg +1 -0
  249. package/assets/caret-up.svg +1 -0
  250. package/assets/cart-arrow-down.svg +1 -0
  251. package/assets/cart-arrow-up.svg +1 -0
  252. package/assets/cart-close.svg +1 -0
  253. package/assets/cart-fast.svg +1 -0
  254. package/assets/cart-minus.svg +1 -0
  255. package/assets/cart-notif.svg +1 -0
  256. package/assets/cart-plus.svg +1 -0
  257. package/assets/cart-tick.svg +1 -0
  258. package/assets/cart.svg +1 -0
  259. package/assets/cart_default.svg +1 -0
  260. package/assets/case_color.svg +1 -0
  261. package/assets/cayman-islands.svg +1 -0
  262. package/assets/central-african-republic.svg +1 -0
  263. package/assets/certificate-check.svg +1 -0
  264. package/assets/certificate.svg +1 -0
  265. package/assets/ceuta.svg +1 -0
  266. package/assets/chad.svg +1 -0
  267. package/assets/chart-area.svg +1 -0
  268. package/assets/chart-bar.svg +1 -0
  269. package/assets/chart-bullet.svg +1 -0
  270. package/assets/chart-column.svg +1 -0
  271. package/assets/chart-gantt.svg +1 -0
  272. package/assets/chart-line-down.svg +1 -0
  273. package/assets/chart-line-up.svg +1 -0
  274. package/assets/chart-line.svg +1 -0
  275. package/assets/chart-mixed.svg +1 -0
  276. package/assets/chart-network.svg +1 -0
  277. package/assets/chart-pie.svg +1 -0
  278. package/assets/chart-pyramid.svg +1 -0
  279. package/assets/chart-radar.svg +1 -0
  280. package/assets/chart-scatter-3d.svg +1 -0
  281. package/assets/chart-scatter-bubble.svg +1 -0
  282. package/assets/chart-scatter.svg +1 -0
  283. package/assets/chart-simple-horizontal.svg +1 -0
  284. package/assets/chart-simple.svg +1 -0
  285. package/assets/chart-tree-map.svg +1 -0
  286. package/assets/chart-user-square.svg +1 -0
  287. package/assets/chart-waterfall.svg +1 -0
  288. package/assets/check-circle-fill.svg +1 -0
  289. package/assets/check-circle.svg +1 -0
  290. package/assets/check-double-fill.svg +1 -0
  291. package/assets/check-double.svg +1 -0
  292. package/assets/check-fill.svg +1 -0
  293. package/assets/check.svg +1 -0
  294. package/assets/checkCircle_default.svg +1 -0
  295. package/assets/check_default.svg +1 -0
  296. package/assets/chemistry.svg +1 -0
  297. package/assets/chemistry_color.svg +1 -0
  298. package/assets/chess_alt_color.svg +1 -0
  299. package/assets/chess_color.svg +1 -0
  300. package/assets/chevron-down-fill.svg +1 -0
  301. package/assets/chevron-down-left-fill.svg +1 -0
  302. package/assets/chevron-down-left.svg +1 -0
  303. package/assets/chevron-down-right-fill.svg +1 -0
  304. package/assets/chevron-down-right.svg +1 -0
  305. package/assets/chevron-down-small-fill.svg +1 -0
  306. package/assets/chevron-down-small.svg +1 -0
  307. package/assets/chevron-down.svg +1 -0
  308. package/assets/chevron-left-fill.svg +1 -0
  309. package/assets/chevron-left-small-fill.svg +1 -0
  310. package/assets/chevron-left-small.svg +1 -0
  311. package/assets/chevron-left.svg +1 -0
  312. package/assets/chevron-right-fill.svg +1 -0
  313. package/assets/chevron-right-small-fill.svg +1 -0
  314. package/assets/chevron-right-small.svg +1 -0
  315. package/assets/chevron-right.svg +1 -0
  316. package/assets/chevron-selector-horizontal.svg +1 -0
  317. package/assets/chevron-selector-vertical.svg +1 -0
  318. package/assets/chevron-up-fill.svg +1 -0
  319. package/assets/chevron-up-left-fill.svg +1 -0
  320. package/assets/chevron-up-left.svg +1 -0
  321. package/assets/chevron-up-right-fill.svg +1 -0
  322. package/assets/chevron-up-right.svg +1 -0
  323. package/assets/chevron-up-small-fill.svg +1 -0
  324. package/assets/chevron-up-small.svg +1 -0
  325. package/assets/chevron-up.svg +1 -0
  326. package/assets/chevronDown_default.svg +1 -0
  327. package/assets/chevronLeft_default.svg +1 -0
  328. package/assets/chevronRight_default.svg +1 -0
  329. package/assets/chevronUp_default.svg +1 -0
  330. package/assets/children.svg +1 -0
  331. package/assets/chile.svg +1 -0
  332. package/assets/china.svg +1 -0
  333. package/assets/chinese_color.svg +1 -0
  334. package/assets/circle-dollar-to-slot.svg +1 -0
  335. package/assets/circle-dollar.svg +1 -0
  336. package/assets/circle-notch.svg +1 -0
  337. package/assets/circle-pause.svg +1 -0
  338. package/assets/circle-play.svg +1 -0
  339. package/assets/circle-quarter.svg +1 -0
  340. package/assets/circle-quarters.svg +1 -0
  341. package/assets/circle-three-quarters.svg +1 -0
  342. package/assets/circle-user-fill.svg +1 -0
  343. package/assets/city.svg +1 -0
  344. package/assets/clipboard-export.svg +1 -0
  345. package/assets/clipboard-import.svg +1 -0
  346. package/assets/clipboard-list-alt.svg +1 -0
  347. package/assets/clipboard-minus.svg +1 -0
  348. package/assets/clipboard-plus.svg +1 -0
  349. package/assets/clipboard-text.svg +1 -0
  350. package/assets/clipboard.svg +1 -0
  351. package/assets/clock-add.svg +1 -0
  352. package/assets/clock-done.svg +1 -0
  353. package/assets/clock-fill.svg +1 -0
  354. package/assets/clock-remove.svg +1 -0
  355. package/assets/clock-warning.svg +1 -0
  356. package/assets/clock.svg +1 -0
  357. package/assets/clockFilled_default.svg +1 -0
  358. package/assets/clock_default.svg +1 -0
  359. package/assets/close-cirlce-fill.svg +1 -0
  360. package/assets/close-cirlce.svg +1 -0
  361. package/assets/close-fill.svg +1 -0
  362. package/assets/close-large-fill.svg +1 -0
  363. package/assets/close-large.svg +1 -0
  364. package/assets/close.svg +1 -0
  365. package/assets/cloud-add.svg +1 -0
  366. package/assets/cloud-bolt.svg +1 -0
  367. package/assets/cloud-done.svg +1 -0
  368. package/assets/cloud-download.svg +1 -0
  369. package/assets/cloud-error.svg +1 -0
  370. package/assets/cloud-export.svg +1 -0
  371. package/assets/cloud-import.svg +1 -0
  372. package/assets/cloud-off.svg +1 -0
  373. package/assets/cloud-question.svg +1 -0
  374. package/assets/cloud-remove.svg +1 -0
  375. package/assets/cloud-upload.svg +1 -0
  376. package/assets/cloud-warning.svg +1 -0
  377. package/assets/cloud.svg +1 -0
  378. package/assets/club.svg +1 -0
  379. package/assets/cocos-island.svg +1 -0
  380. package/assets/code.svg +1 -0
  381. package/assets/coin-vertical.svg +1 -0
  382. package/assets/coin.svg +1 -0
  383. package/assets/coins.svg +1 -0
  384. package/assets/coins_default.svg +1 -0
  385. package/assets/college_color.svg +1 -0
  386. package/assets/colombia.svg +1 -0
  387. package/assets/columns-2.svg +1 -0
  388. package/assets/columns-3.svg +1 -0
  389. package/assets/comoros.svg +1 -0
  390. package/assets/compass.svg +1 -0
  391. package/assets/computer.svg +1 -0
  392. package/assets/constrict.svg +1 -0
  393. package/assets/cook-islands.svg +1 -0
  394. package/assets/copy-fill.svg +1 -0
  395. package/assets/copy.svg +1 -0
  396. package/assets/copy_default.svg +4 -0
  397. package/assets/corner-down-left-fill.svg +1 -0
  398. package/assets/corner-down-left.svg +1 -0
  399. package/assets/corner-down-right-fill.svg +1 -0
  400. package/assets/corner-down-right.svg +1 -0
  401. package/assets/corner-left-down-fill.svg +1 -0
  402. package/assets/corner-left-down.svg +1 -0
  403. package/assets/corner-left-up-fill.svg +1 -0
  404. package/assets/corner-left-up.svg +1 -0
  405. package/assets/corner-right-down-fill.svg +1 -0
  406. package/assets/corner-right-down.svg +1 -0
  407. package/assets/corner-right-up-fill.svg +1 -0
  408. package/assets/corner-right-up.svg +1 -0
  409. package/assets/corner-up-left-fill.svg +1 -0
  410. package/assets/corner-up-left.svg +1 -0
  411. package/assets/corner-up-right-fill.svg +1 -0
  412. package/assets/corner-up-right.svg +1 -0
  413. package/assets/costa-rica.svg +1 -0
  414. package/assets/cource_color.svg +1 -0
  415. package/assets/courses_default.svg +1 -0
  416. package/assets/creativity_color.svg +1 -0
  417. package/assets/credit-card-add.svg +1 -0
  418. package/assets/credit-card-remove.svg +1 -0
  419. package/assets/credit-card-scan.svg +1 -0
  420. package/assets/credit-card.svg +1 -0
  421. package/assets/croatia.svg +1 -0
  422. package/assets/crop.svg +1 -0
  423. package/assets/cross_default.svg +1 -0
  424. package/assets/crown.svg +1 -0
  425. package/assets/cuba.svg +1 -0
  426. package/assets/cube-sharp.svg +1 -0
  427. package/assets/cube-vr.svg +1 -0
  428. package/assets/cube.svg +1 -0
  429. package/assets/curacao.svg +1 -0
  430. package/assets/cursor-fill.svg +1 -0
  431. package/assets/cursor.svg +1 -0
  432. package/assets/cyprus.svg +1 -0
  433. package/assets/czech-republic.svg +1 -0
  434. package/assets/dash.svg +1 -0
  435. package/assets/delete-fill.svg +1 -0
  436. package/assets/delete.svg +1 -0
  437. package/assets/democratic-republic-of_congo.svg +1 -0
  438. package/assets/denmark.svg +1 -0
  439. package/assets/development_1_color.svg +1 -0
  440. package/assets/development_2_color.svg +1 -0
  441. package/assets/diagram-cells.svg +1 -0
  442. package/assets/diagram-lean-canvas.svg +1 -0
  443. package/assets/diagram-nested.svg +1 -0
  444. package/assets/diagram-next.svg +1 -0
  445. package/assets/diagram-predecessor.svg +1 -0
  446. package/assets/diagram-previous.svg +1 -0
  447. package/assets/diagram-project.svg +1 -0
  448. package/assets/diagram-sankey.svg +1 -0
  449. package/assets/diagram-subtask.svg +1 -0
  450. package/assets/diagram-successor.svg +1 -0
  451. package/assets/diagram-venn.svg +1 -0
  452. package/assets/dialog_default.svg +1 -0
  453. package/assets/dialpad-circle.svg +1 -0
  454. package/assets/dialpad-square.svg +1 -0
  455. package/assets/diamond-simple.svg +1 -0
  456. package/assets/diamond.svg +1 -0
  457. package/assets/diamondFilled_default.svg +1 -0
  458. package/assets/diamond_default.svg +1 -0
  459. package/assets/dice-five.svg +1 -0
  460. package/assets/dice-four.svg +1 -0
  461. package/assets/dice-one.svg +1 -0
  462. package/assets/dice-six.svg +1 -0
  463. package/assets/dice-three.svg +1 -0
  464. package/assets/dice-two.svg +1 -0
  465. package/assets/digital_professions_color.svg +1 -0
  466. package/assets/diploma_color.svg +1 -0
  467. package/assets/disc.svg +1 -0
  468. package/assets/discount-badge.svg +1 -0
  469. package/assets/discount-circle.svg +1 -0
  470. package/assets/discount_default.svg +1 -0
  471. package/assets/dislike.svg +1 -0
  472. package/assets/distribute-spacing-horizontal.svg +1 -0
  473. package/assets/distribute-spacing-vertical.svg +1 -0
  474. package/assets/djibouti.svg +1 -0
  475. package/assets/doc.svg +1 -0
  476. package/assets/document-layout-center.svg +1 -0
  477. package/assets/document-layout-left.svg +1 -0
  478. package/assets/document-layout-right.svg +1 -0
  479. package/assets/document_default.svg +1 -0
  480. package/assets/dominica.svg +1 -0
  481. package/assets/dominican-republic.svg +1 -0
  482. package/assets/door-closed.svg +1 -0
  483. package/assets/door-open.svg +1 -0
  484. package/assets/double-xp-fill.svg +1 -0
  485. package/assets/download-fill.svg +1 -0
  486. package/assets/download.svg +1 -0
  487. package/assets/draw-square-t.svg +1 -0
  488. package/assets/draw-square.svg +1 -0
  489. package/assets/drawing-tablet.svg +1 -0
  490. package/assets/drawing_color.svg +1 -0
  491. package/assets/dropDownArrow_default.svg +1 -0
  492. package/assets/early_education_color.svg +1 -0
  493. package/assets/east-timor.svg +1 -0
  494. package/assets/ecology.svg +1 -0
  495. package/assets/ecology_color.svg +1 -0
  496. package/assets/economy_color.svg +1 -0
  497. package/assets/ecuador.svg +1 -0
  498. package/assets/edit-fill.svg +1 -0
  499. package/assets/edit-pen-fill.svg +1 -0
  500. package/assets/edit-pen.svg +1 -0
  501. package/assets/edit.svg +1 -0
  502. package/assets/edit_default.svg +1 -0
  503. package/assets/education_color.svg +1 -0
  504. package/assets/education_program_color.svg +1 -0
  505. package/assets/educont-auth-mono-color.svg +1 -0
  506. package/assets/educont-authorization.svg +1 -0
  507. package/assets/egypt.svg +1 -0
  508. package/assets/el-salvador.svg +1 -0
  509. package/assets/elementary_color.svg +1 -0
  510. package/assets/email_default.svg +1 -0
  511. package/assets/emotional_intelligence_color.svg +1 -0
  512. package/assets/england.svg +1 -0
  513. package/assets/english-to-chinese.svg +1 -0
  514. package/assets/english.svg +1 -0
  515. package/assets/english_color.svg +1 -0
  516. package/assets/enter-fill.svg +1 -0
  517. package/assets/enter.svg +1 -0
  518. package/assets/equatorial-guinea.svg +1 -0
  519. package/assets/eritrea.svg +1 -0
  520. package/assets/estonia.svg +1 -0
  521. package/assets/ethiopia.svg +1 -0
  522. package/assets/european-union.svg +1 -0
  523. package/assets/exam-test_color.svg +1 -0
  524. package/assets/exam_color.svg +1 -0
  525. package/assets/expand.svg +1 -0
  526. package/assets/export-fill.svg +1 -0
  527. package/assets/export.svg +1 -0
  528. package/assets/external-link-fill.svg +1 -0
  529. package/assets/external-link.svg +1 -0
  530. package/assets/externalLink_default.svg +1 -0
  531. package/assets/externat_default.svg +1 -0
  532. package/assets/eye-close-fill.svg +1 -0
  533. package/assets/eye-close.svg +1 -0
  534. package/assets/eye-dropper-full.svg +1 -0
  535. package/assets/eye-dropper-half.svg +1 -0
  536. package/assets/eye-dropper.svg +1 -0
  537. package/assets/eye-fill.svg +1 -0
  538. package/assets/eye-slash-fill.svg +1 -0
  539. package/assets/eye-slash.svg +1 -0
  540. package/assets/eye.svg +1 -0
  541. package/assets/eye_default.svg +1 -0
  542. package/assets/face-frown-fill.svg +1 -0
  543. package/assets/face-frown.svg +1 -0
  544. package/assets/face-id.svg +1 -0
  545. package/assets/face-smile-fill.svg +1 -0
  546. package/assets/face-smile.svg +1 -0
  547. package/assets/facebook-social-color.svg +1 -0
  548. package/assets/facebook-social.svg +1 -0
  549. package/assets/falkland-islands.svg +1 -0
  550. package/assets/family-house.svg +1 -0
  551. package/assets/family.svg +1 -0
  552. package/assets/faroe-islands.svg +1 -0
  553. package/assets/fast-timer.svg +1 -0
  554. package/assets/figma.svg +1 -0
  555. package/assets/fiji.svg +1 -0
  556. package/assets/file-add-alt-1.svg +1 -0
  557. package/assets/file-add.svg +1 -0
  558. package/assets/file-bookmark.svg +1 -0
  559. package/assets/file-dashed-line.svg +1 -0
  560. package/assets/file-download.svg +1 -0
  561. package/assets/file-edit-corner.svg +1 -0
  562. package/assets/file-edit.svg +1 -0
  563. package/assets/file-exclamation-corner.svg +1 -0
  564. package/assets/file-horizontal.svg +1 -0
  565. package/assets/file-import.svg +1 -0
  566. package/assets/file-info-corner.svg +1 -0
  567. package/assets/file-info.svg +1 -0
  568. package/assets/file-link.svg +1 -0
  569. package/assets/file-minus-corner.svg +1 -0
  570. package/assets/file-minus.svg +1 -0
  571. package/assets/file-move.svg +1 -0
  572. package/assets/file-off.svg +1 -0
  573. package/assets/file-pdf.svg +1 -0
  574. package/assets/file-question-corner.svg +1 -0
  575. package/assets/file-question.svg +1 -0
  576. package/assets/file-remove.svg +1 -0
  577. package/assets/file-shredder.svg +1 -0
  578. package/assets/file-text.svg +1 -0
  579. package/assets/file-tick.svg +1 -0
  580. package/assets/file-upload.svg +1 -0
  581. package/assets/file-warning.svg +1 -0
  582. package/assets/file-zipper.svg +1 -0
  583. package/assets/file.svg +1 -0
  584. package/assets/fileBordered_default.svg +1 -0
  585. package/assets/file_default.svg +1 -0
  586. package/assets/files.svg +1 -0
  587. package/assets/filter-fill.svg +1 -0
  588. package/assets/filter.svg +1 -0
  589. package/assets/finance_color.svg +1 -0
  590. package/assets/financial_battle_color.svg +1 -0
  591. package/assets/financial_literature_color.svg +1 -0
  592. package/assets/fingerprint.svg +1 -0
  593. package/assets/finland.svg +1 -0
  594. package/assets/fire-alt.svg +1 -0
  595. package/assets/fire-fill.svg +1 -0
  596. package/assets/fire-small-fill.svg +1 -0
  597. package/assets/fire.svg +1 -0
  598. package/assets/fire_default.svg +1 -0
  599. package/assets/fizra_2_color.svg +1 -0
  600. package/assets/fizra_color.svg +1 -0
  601. package/assets/fizra_elementary_color.svg +1 -0
  602. package/assets/flag.svg +1 -0
  603. package/assets/flash-cards.svg +1 -0
  604. package/assets/flashlight.svg +1 -0
  605. package/assets/folder-add.svg +1 -0
  606. package/assets/folder-export.svg +1 -0
  607. package/assets/folder-import.svg +1 -0
  608. package/assets/folder-info.svg +1 -0
  609. package/assets/folder-minus.svg +1 -0
  610. package/assets/folder-move.svg +1 -0
  611. package/assets/folder-notif.svg +1 -0
  612. package/assets/folder-question.svg +1 -0
  613. package/assets/folder-remove.svg +1 -0
  614. package/assets/folder-tick.svg +1 -0
  615. package/assets/folder-warning.svg +1 -0
  616. package/assets/folder.svg +1 -0
  617. package/assets/folder_color.svg +1 -0
  618. package/assets/font-case.svg +1 -0
  619. package/assets/font.svg +1 -0
  620. package/assets/food_color.svg +1 -0
  621. package/assets/foreign_language_color.svg +1 -0
  622. package/assets/forward-fill.svg +1 -0
  623. package/assets/forward.svg +1 -0
  624. package/assets/fox-coin.svg +1 -0
  625. package/assets/fox-coins.svg +1 -0
  626. package/assets/france.svg +1 -0
  627. package/assets/french-polynesia.svg +1 -0
  628. package/assets/french_color.svg +1 -0
  629. package/assets/gabon.svg +1 -0
  630. package/assets/gallery-thumbnails.svg +1 -0
  631. package/assets/gambia.svg +1 -0
  632. package/assets/game.svg +1 -0
  633. package/assets/game_profession_dev_color.svg +1 -0
  634. package/assets/game_profession_producer_color.svg +1 -0
  635. package/assets/game_profession_screenwriter_color.svg +1 -0
  636. package/assets/games_color.svg +1 -0
  637. package/assets/gem.svg +1 -0
  638. package/assets/geography.svg +1 -0
  639. package/assets/geography_color.svg +1 -0
  640. package/assets/geography_elementary_color.svg +1 -0
  641. package/assets/geometry_color.svg +1 -0
  642. package/assets/georgia.svg +1 -0
  643. package/assets/german_color.svg +1 -0
  644. package/assets/germany.svg +1 -0
  645. package/assets/ghana.svg +1 -0
  646. package/assets/gibraltar.svg +1 -0
  647. package/assets/gift-alt-fill.svg +1 -0
  648. package/assets/gift-box.svg +1 -0
  649. package/assets/gift-card.svg +1 -0
  650. package/assets/gift-fill.svg +1 -0
  651. package/assets/gift.svg +1 -0
  652. package/assets/globe.svg +1 -0
  653. package/assets/goal.svg +1 -0
  654. package/assets/gold.svg +1 -0
  655. package/assets/google-auth-mono-color.svg +1 -0
  656. package/assets/google-authorization.svg +1 -0
  657. package/assets/gps-off.svg +1 -0
  658. package/assets/gps.svg +1 -0
  659. package/assets/greece.svg +1 -0
  660. package/assets/greenland.svg +1 -0
  661. package/assets/grenada.svg +1 -0
  662. package/assets/grid-circle-fill.svg +1 -0
  663. package/assets/grid-circle.svg +1 -0
  664. package/assets/grid-fill.svg +1 -0
  665. package/assets/grid-plus-fill.svg +1 -0
  666. package/assets/grid-plus.svg +1 -0
  667. package/assets/grid.svg +1 -0
  668. package/assets/grip-dots-fill.svg +1 -0
  669. package/assets/grip-dots-vertical-fill.svg +1 -0
  670. package/assets/grip-dots-vertical.svg +1 -0
  671. package/assets/grip-dots.svg +1 -0
  672. package/assets/group_color.svg +1 -0
  673. package/assets/guam.svg +1 -0
  674. package/assets/guatemala.svg +1 -0
  675. package/assets/guernsey.svg +1 -0
  676. package/assets/guinea-bissau.svg +1 -0
  677. package/assets/guinea.svg +1 -0
  678. package/assets/guyana.svg +1 -0
  679. package/assets/h1.svg +1 -0
  680. package/assets/h2.svg +1 -0
  681. package/assets/haiti.svg +1 -0
  682. package/assets/hand-left.svg +1 -0
  683. package/assets/hand-right.svg +1 -0
  684. package/assets/hand-slash.svg +1 -0
  685. package/assets/hard-drive.svg +1 -0
  686. package/assets/hashtag-lock.svg +1 -0
  687. package/assets/hashtag.svg +1 -0
  688. package/assets/hat.svg +1 -0
  689. package/assets/heading.svg +1 -0
  690. package/assets/headphones.svg +1 -0
  691. package/assets/headphones_default.svg +1 -0
  692. package/assets/heart-circle-fill.svg +1 -0
  693. package/assets/heart-circle.svg +1 -0
  694. package/assets/heart-crack.svg +1 -0
  695. package/assets/heart-fill.svg +1 -0
  696. package/assets/heart-half-stroke.svg +1 -0
  697. package/assets/heart-half.svg +1 -0
  698. package/assets/heart.svg +1 -0
  699. package/assets/help-circle-fill.svg +1 -0
  700. package/assets/help-circle.svg +1 -0
  701. package/assets/help-seal-fill.svg +1 -0
  702. package/assets/help-seal.svg +1 -0
  703. package/assets/help.svg +1 -0
  704. package/assets/hexagon.svg +1 -0
  705. package/assets/history.svg +1 -0
  706. package/assets/history_alt_color.svg +1 -0
  707. package/assets/history_color.svg +1 -0
  708. package/assets/home_default.svg +1 -0
  709. package/assets/home_school_color.svg +1 -0
  710. package/assets/honduras.svg +1 -0
  711. package/assets/hong-kong.svg +1 -0
  712. package/assets/horizontal-rule.svg +1 -0
  713. package/assets/hotel.svg +1 -0
  714. package/assets/hourglass-end.svg +1 -0
  715. package/assets/hourglass-half.svg +1 -0
  716. package/assets/hourglass-start.svg +1 -0
  717. package/assets/hourglass.svg +1 -0
  718. package/assets/house-alt-fill.svg +1 -0
  719. package/assets/house-empty.svg +1 -0
  720. package/assets/house-fill.svg +1 -0
  721. package/assets/house.svg +1 -0
  722. package/assets/hungary.svg +1 -0
  723. package/assets/i-cursor.svg +1 -0
  724. package/assets/iceland.svg +1 -0
  725. package/assets/image-add.svg +1 -0
  726. package/assets/image-edit.svg +1 -0
  727. package/assets/image-error.svg +1 -0
  728. package/assets/image-export.svg +1 -0
  729. package/assets/image-import.svg +1 -0
  730. package/assets/image-remove.svg +1 -0
  731. package/assets/image-tick.svg +1 -0
  732. package/assets/image-user.svg +1 -0
  733. package/assets/image.svg +1 -0
  734. package/assets/import-fill.svg +1 -0
  735. package/assets/import.svg +1 -0
  736. package/assets/inbox-add.svg +1 -0
  737. package/assets/inbox-check.svg +1 -0
  738. package/assets/inbox-export.svg +1 -0
  739. package/assets/inbox-import.svg +1 -0
  740. package/assets/inbox-information.svg +1 -0
  741. package/assets/inbox-minus.svg +1 -0
  742. package/assets/inbox-move.svg +1 -0
  743. package/assets/inbox-notif.svg +1 -0
  744. package/assets/inbox-remove.svg +1 -0
  745. package/assets/inbox-warning.svg +1 -0
  746. package/assets/inbox.svg +1 -0
  747. package/assets/income.svg +1 -0
  748. package/assets/indent.svg +1 -0
  749. package/assets/india.svg +1 -0
  750. package/assets/indonesia.svg +1 -0
  751. package/assets/industry.svg +1 -0
  752. package/assets/infinity.svg +1 -0
  753. package/assets/info-circle-fill.svg +1 -0
  754. package/assets/info-circle.svg +1 -0
  755. package/assets/infoInverse_default.svg +1 -0
  756. package/assets/info_default.svg +1 -0
  757. package/assets/informatics_color.svg +1 -0
  758. package/assets/information.svg +1 -0
  759. package/assets/instagram-social-color.svg +1 -0
  760. package/assets/instagram-social.svg +1 -0
  761. package/assets/iran.svg +1 -0
  762. package/assets/iraq.svg +1 -0
  763. package/assets/ireland.svg +1 -0
  764. package/assets/isle-of-man.svg +1 -0
  765. package/assets/israel.svg +1 -0
  766. package/assets/italic.svg +1 -0
  767. package/assets/italy.svg +1 -0
  768. package/assets/items.svg +1 -0
  769. package/assets/ivory-coast.svg +1 -0
  770. package/assets/jamaica.svg +1 -0
  771. package/assets/japan.svg +1 -0
  772. package/assets/jersey.svg +1 -0
  773. package/assets/jordan.svg +1 -0
  774. package/assets/journalistic_color.svg +1 -0
  775. package/assets/kazakhstan.svg +1 -0
  776. package/assets/kenya.svg +1 -0
  777. package/assets/kerning.svg +1 -0
  778. package/assets/key-tiny.svg +1 -0
  779. package/assets/key.svg +1 -0
  780. package/assets/keyboard-close.svg +1 -0
  781. package/assets/keyboard.svg +1 -0
  782. package/assets/kiribati.svg +1 -0
  783. package/assets/kuwait.svg +1 -0
  784. package/assets/kyrgyzstan.svg +1 -0
  785. package/assets/lamp-charge-fill.svg +1 -0
  786. package/assets/lamp-charge.svg +1 -0
  787. package/assets/lamp-off-fill.svg +1 -0
  788. package/assets/lamp-off.svg +1 -0
  789. package/assets/lamp-on-fill.svg +1 -0
  790. package/assets/lamp-on.svg +1 -0
  791. package/assets/lamp-warning-fill.svg +1 -0
  792. package/assets/lamp-warning.svg +1 -0
  793. package/assets/laos.svg +1 -0
  794. package/assets/laptop-arrow-down.svg +1 -0
  795. package/assets/laptop-arrow-up.svg +1 -0
  796. package/assets/laptop-error.svg +1 -0
  797. package/assets/laptop-exclamation.svg +1 -0
  798. package/assets/laptop-signal.svg +1 -0
  799. package/assets/laptop-tick.svg +1 -0
  800. package/assets/laptop.svg +1 -0
  801. package/assets/lasso.svg +1 -0
  802. package/assets/latvia.svg +1 -0
  803. package/assets/lebanon.svg +1 -0
  804. package/assets/left-alignment.svg +1 -0
  805. package/assets/left-indent.svg +1 -0
  806. package/assets/left-to-right-text-direction.svg +1 -0
  807. package/assets/lesotho.svg +1 -0
  808. package/assets/lessons_default.svg +1 -0
  809. package/assets/letter-chinese-a.svg +1 -0
  810. package/assets/liberia.svg +1 -0
  811. package/assets/libya.svg +1 -0
  812. package/assets/liechtenstein.svg +1 -0
  813. package/assets/light-warning-on.svg +1 -0
  814. package/assets/light-warning.svg +1 -0
  815. package/assets/lightning-fill.svg +1 -0
  816. package/assets/lightning.svg +1 -0
  817. package/assets/like.svg +1 -0
  818. package/assets/line-columns.svg +1 -0
  819. package/assets/line-height.svg +1 -0
  820. package/assets/lines-leaning.svg +1 -0
  821. package/assets/link-fill.svg +1 -0
  822. package/assets/link-slash.svg +1 -0
  823. package/assets/link.svg +1 -0
  824. package/assets/list-circle.svg +1 -0
  825. package/assets/list-ol.svg +1 -0
  826. package/assets/list-ul-level.svg +1 -0
  827. package/assets/list-ul.svg +1 -0
  828. package/assets/list.svg +1 -0
  829. package/assets/list_default.svg +1 -0
  830. package/assets/literature.svg +1 -0
  831. package/assets/literature_alt_color.svg +1 -0
  832. package/assets/literature_color.svg +1 -0
  833. package/assets/lithuania.svg +1 -0
  834. package/assets/loader-fill.svg +1 -0
  835. package/assets/loader.svg +1 -0
  836. package/assets/loading.svg +1 -0
  837. package/assets/location-check.svg +1 -0
  838. package/assets/lock-a.svg +1 -0
  839. package/assets/lock-fill.svg +1 -0
  840. package/assets/lock-hashtag.svg +1 -0
  841. package/assets/lock-slash.svg +1 -0
  842. package/assets/lock.svg +1 -0
  843. package/assets/log-in-fill.svg +1 -0
  844. package/assets/log-in.svg +1 -0
  845. package/assets/log-out-fill.svg +1 -0
  846. package/assets/log-out.svg +1 -0
  847. package/assets/logic_color.svg +1 -0
  848. package/assets/login_default.svg +3 -0
  849. package/assets/logoped_color.svg +1 -0
  850. package/assets/logout_default.svg +1 -0
  851. package/assets/loop.svg +1 -0
  852. package/assets/luxembourg.svg +1 -0
  853. package/assets/macao.svg +1 -0
  854. package/assets/madagascar.svg +1 -0
  855. package/assets/mail-add.svg +1 -0
  856. package/assets/mail-block.svg +1 -0
  857. package/assets/mail-edit.svg +1 -0
  858. package/assets/mail-fill.svg +1 -0
  859. package/assets/mail-info.svg +1 -0
  860. package/assets/mail-minus.svg +1 -0
  861. package/assets/mail-notif.svg +1 -0
  862. package/assets/mail-open.svg +1 -0
  863. package/assets/mail-refresh.svg +1 -0
  864. package/assets/mail-remove.svg +1 -0
  865. package/assets/mail-tick.svg +1 -0
  866. package/assets/mail-warning.svg +1 -0
  867. package/assets/mail.ru-authorization.svg +1 -0
  868. package/assets/mail.svg +1 -0
  869. package/assets/mailru-auth-mono-color.svg +1 -0
  870. package/assets/malawi.svg +1 -0
  871. package/assets/malaysia.svg +1 -0
  872. package/assets/maldives.svg +1 -0
  873. package/assets/mali.svg +1 -0
  874. package/assets/malta.svg +1 -0
  875. package/assets/map-location-pin.svg +1 -0
  876. package/assets/map-marker-add.svg +1 -0
  877. package/assets/map-marker-error.svg +1 -0
  878. package/assets/map-marker-off.svg +1 -0
  879. package/assets/map-marker-remove.svg +1 -0
  880. package/assets/map-marker-warning.svg +1 -0
  881. package/assets/map-marker.svg +1 -0
  882. package/assets/map.svg +1 -0
  883. package/assets/marshall-island.svg +1 -0
  884. package/assets/martinique.svg +1 -0
  885. package/assets/materials_color.svg +1 -0
  886. package/assets/math_color.svg +1 -0
  887. package/assets/math_elementary_color.svg +1 -0
  888. package/assets/mathematics.svg +1 -0
  889. package/assets/mauritania.svg +1 -0
  890. package/assets/mauritius.svg +1 -0
  891. package/assets/maximize.svg +1 -0
  892. package/assets/medal-fill.svg +1 -0
  893. package/assets/medal.svg +1 -0
  894. package/assets/medicine_color.svg +1 -0
  895. package/assets/megaphone_color.svg +1 -0
  896. package/assets/memo-check.svg +1 -0
  897. package/assets/memo-pencil.svg +1 -0
  898. package/assets/menu-fill.svg +1 -0
  899. package/assets/menu.svg +1 -0
  900. package/assets/message-circle-chat-fill.svg +1 -0
  901. package/assets/message-circle-chat.svg +1 -0
  902. package/assets/message-circle-export.svg +1 -0
  903. package/assets/message-circle-import.svg +1 -0
  904. package/assets/message-circle-info.svg +1 -0
  905. package/assets/message-circle-lines.svg +1 -0
  906. package/assets/message-circle-minus.svg +1 -0
  907. package/assets/message-circle-notif.svg +1 -0
  908. package/assets/message-circle-plus.svg +1 -0
  909. package/assets/message-circle-question.svg +1 -0
  910. package/assets/message-circle-tick.svg +1 -0
  911. package/assets/message-circle-warning.svg +1 -0
  912. package/assets/message-circle-xmark.svg +1 -0
  913. package/assets/message-circle.svg +1 -0
  914. package/assets/message-square-arrow-down.svg +1 -0
  915. package/assets/message-square-chat.svg +1 -0
  916. package/assets/message-square-export.svg +1 -0
  917. package/assets/message-square-info.svg +1 -0
  918. package/assets/message-square-lines-fill.svg +1 -0
  919. package/assets/message-square-lines.svg +1 -0
  920. package/assets/message-square-minus.svg +1 -0
  921. package/assets/message-square-notif.svg +1 -0
  922. package/assets/message-square-plus.svg +1 -0
  923. package/assets/message-square-question.svg +1 -0
  924. package/assets/message-square-remove.svg +1 -0
  925. package/assets/message-square-tick.svg +1 -0
  926. package/assets/message-square-warning.svg +1 -0
  927. package/assets/message-square.svg +1 -0
  928. package/assets/message_default.svg +1 -0
  929. package/assets/mexico.svg +1 -0
  930. package/assets/micronesia.svg +1 -0
  931. package/assets/microphone-off.svg +1 -0
  932. package/assets/microphone.svg +1 -0
  933. package/assets/mini_group_color.svg +1 -0
  934. package/assets/minimize.svg +1 -0
  935. package/assets/minus-circle-fill.svg +1 -0
  936. package/assets/minus-circle.svg +1 -0
  937. package/assets/minus-fill.svg +1 -0
  938. package/assets/minus.svg +1 -0
  939. package/assets/mix.svg +1 -0
  940. package/assets/mobile-bolt.svg +1 -0
  941. package/assets/mobile-remove.svg +1 -0
  942. package/assets/mobile-signal-out.svg +1 -0
  943. package/assets/mobile-signal.svg +1 -0
  944. package/assets/mobile-slash.svg +1 -0
  945. package/assets/mobile-tick.svg +1 -0
  946. package/assets/mobile.svg +1 -0
  947. package/assets/modem.svg +1 -0
  948. package/assets/moldova.svg +1 -0
  949. package/assets/monaco.svg +1 -0
  950. package/assets/mongolia.svg +1 -0
  951. package/assets/montenegro.svg +1 -0
  952. package/assets/montserrat.svg +1 -0
  953. package/assets/moon-fill.svg +1 -0
  954. package/assets/moon.svg +1 -0
  955. package/assets/more-horizontal-fill.svg +1 -0
  956. package/assets/more-horizontal.svg +1 -0
  957. package/assets/more-vertical-fill.svg +1 -0
  958. package/assets/more-vertical.svg +1 -0
  959. package/assets/morocco.svg +1 -0
  960. package/assets/motorcycle.svg +1 -0
  961. package/assets/mouse.svg +1 -0
  962. package/assets/move-down.svg +1 -0
  963. package/assets/move-left.svg +1 -0
  964. package/assets/move-right.svg +1 -0
  965. package/assets/move-up.svg +1 -0
  966. package/assets/move.svg +1 -0
  967. package/assets/mozambique.svg +1 -0
  968. package/assets/multi_discipline_color.svg +1 -0
  969. package/assets/music-note-off.svg +1 -0
  970. package/assets/music-note.svg +1 -0
  971. package/assets/music.svg +1 -0
  972. package/assets/music_color.svg +1 -0
  973. package/assets/myanmar.svg +1 -0
  974. package/assets/namibia.svg +1 -0
  975. package/assets/native_language_color.svg +1 -0
  976. package/assets/natural_sciences_color.svg +1 -0
  977. package/assets/nauru.svg +1 -0
  978. package/assets/navigation-forward.svg +1 -0
  979. package/assets/navigation.svg +1 -0
  980. package/assets/nepal.svg +1 -0
  981. package/assets/netherlands.svg +1 -0
  982. package/assets/new-zealand.svg +1 -0
  983. package/assets/next-fast.svg +1 -0
  984. package/assets/next.svg +1 -0
  985. package/assets/nicaragua.svg +1 -0
  986. package/assets/niger.svg +1 -0
  987. package/assets/nigeria.svg +1 -0
  988. package/assets/niue.svg +1 -0
  989. package/assets/norfolk-island.svg +1 -0
  990. package/assets/north-korea.svg +1 -0
  991. package/assets/northern-marianas-islands.svg +1 -0
  992. package/assets/norway.svg +1 -0
  993. package/assets/note-sticky.svg +1 -0
  994. package/assets/notebook.svg +1 -0
  995. package/assets/notif-fill.svg +1 -0
  996. package/assets/notif-off-fill.svg +1 -0
  997. package/assets/notif-off.svg +1 -0
  998. package/assets/notif.svg +1 -0
  999. package/assets/objective_default.svg +1 -0
  1000. package/assets/objects-align-bottom.svg +1 -0
  1001. package/assets/objects-align-center-horizontal.svg +1 -0
  1002. package/assets/objects-align-center-vertical.svg +1 -0
  1003. package/assets/objects-align-left.svg +1 -0
  1004. package/assets/objects-align-right.svg +1 -0
  1005. package/assets/objects-align-top.svg +1 -0
  1006. package/assets/objects-column.svg +1 -0
  1007. package/assets/obz_color.svg +1 -0
  1008. package/assets/obz_elementary_color.svg +1 -0
  1009. package/assets/octagon.svg +1 -0
  1010. package/assets/ok-authorization.svg +1 -0
  1011. package/assets/ok-social-color.svg +1 -0
  1012. package/assets/ok-social.svg +1 -0
  1013. package/assets/olympiad_color.svg +1 -0
  1014. package/assets/oman.svg +1 -0
  1015. package/assets/outcome.svg +1 -0
  1016. package/assets/overline.svg +1 -0
  1017. package/assets/ovz_color.svg +1 -0
  1018. package/assets/page_default.svg +1 -0
  1019. package/assets/paint-roller.svg +1 -0
  1020. package/assets/paintbrush.svg +1 -0
  1021. package/assets/pakistan.svg +1 -0
  1022. package/assets/palau.svg +1 -0
  1023. package/assets/palestine.svg +1 -0
  1024. package/assets/palette-fill.svg +1 -0
  1025. package/assets/palette.svg +1 -0
  1026. package/assets/panama.svg +1 -0
  1027. package/assets/paperclip-slash.svg +1 -0
  1028. package/assets/paperclip.svg +1 -0
  1029. package/assets/papua-new-guinea.svg +1 -0
  1030. package/assets/paragraph.svg +1 -0
  1031. package/assets/paraguay.svg +1 -0
  1032. package/assets/parchment.svg +1 -0
  1033. package/assets/parent.svg +1 -0
  1034. package/assets/pause-circle.svg +1 -0
  1035. package/assets/pause-fill.svg +1 -0
  1036. package/assets/pause-square.svg +1 -0
  1037. package/assets/pause-thin-fill.svg +1 -0
  1038. package/assets/pause-thin.svg +1 -0
  1039. package/assets/pause.svg +1 -0
  1040. package/assets/pen-nib-off.svg +1 -0
  1041. package/assets/pen-nib.svg +1 -0
  1042. package/assets/pen-ruler.svg +1 -0
  1043. package/assets/pen-slash.svg +1 -0
  1044. package/assets/pen.svg +1 -0
  1045. package/assets/pencil-off.svg +1 -0
  1046. package/assets/pencil.svg +1 -0
  1047. package/assets/pencil_default.svg +1 -0
  1048. package/assets/pentagon.svg +1 -0
  1049. package/assets/people.svg +1 -0
  1050. package/assets/percentage.svg +1 -0
  1051. package/assets/person_default.svg +1 -0
  1052. package/assets/peru.svg +1 -0
  1053. package/assets/philippines.svg +1 -0
  1054. package/assets/phone-add.svg +1 -0
  1055. package/assets/phone-call.svg +1 -0
  1056. package/assets/phone-fill.svg +1 -0
  1057. package/assets/phone-flip.svg +1 -0
  1058. package/assets/phone-incoming.svg +1 -0
  1059. package/assets/phone-missed.svg +1 -0
  1060. package/assets/phone-office.svg +1 -0
  1061. package/assets/phone-outgoing.svg +1 -0
  1062. package/assets/phone-pause.svg +1 -0
  1063. package/assets/phone-received.svg +1 -0
  1064. package/assets/phone-remove.svg +1 -0
  1065. package/assets/phone-slash.svg +1 -0
  1066. package/assets/phone.svg +1 -0
  1067. package/assets/phoneNoFill_default.svg +1 -0
  1068. package/assets/phone_color.svg +1 -0
  1069. package/assets/phone_default.svg +1 -0
  1070. package/assets/photo-off.svg +1 -0
  1071. package/assets/photo.svg +1 -0
  1072. package/assets/physic_chemistry_color.svg +1 -0
  1073. package/assets/physics.svg +1 -0
  1074. package/assets/physics_color.svg +1 -0
  1075. package/assets/picture_color.svg +1 -0
  1076. package/assets/pin-fill.svg +1 -0
  1077. package/assets/pin-location.svg +1 -0
  1078. package/assets/pin.svg +1 -0
  1079. package/assets/pitcairn-islands.svg +1 -0
  1080. package/assets/play-circle.svg +1 -0
  1081. package/assets/play-fill.svg +1 -0
  1082. package/assets/play-pause.svg +1 -0
  1083. package/assets/play-square.svg +1 -0
  1084. package/assets/play.svg +1 -0
  1085. package/assets/playPause_default.svg +1 -0
  1086. package/assets/play_default.svg +1 -0
  1087. package/assets/plug.svg +1 -0
  1088. package/assets/plus-circle-fill.svg +1 -0
  1089. package/assets/plus-circle.svg +1 -0
  1090. package/assets/plus-fill.svg +1 -0
  1091. package/assets/plus-large-fill.svg +1 -0
  1092. package/assets/plus-large.svg +1 -0
  1093. package/assets/plus.svg +1 -0
  1094. package/assets/plusThin_default.svg +1 -0
  1095. package/assets/plus_default.svg +1 -0
  1096. package/assets/podcast.svg +1 -0
  1097. package/assets/podium.svg +1 -0
  1098. package/assets/pointer-down.svg +1 -0
  1099. package/assets/pointer-left.svg +1 -0
  1100. package/assets/pointer-right.svg +1 -0
  1101. package/assets/pointer-up.svg +1 -0
  1102. package/assets/poland.svg +1 -0
  1103. package/assets/portugal.svg +1 -0
  1104. package/assets/power-bank.svg +1 -0
  1105. package/assets/power-off-fill.svg +1 -0
  1106. package/assets/power-off.svg +1 -0
  1107. package/assets/present_default.svg +15 -0
  1108. package/assets/presentation-chart.svg +1 -0
  1109. package/assets/presentation.svg +1 -0
  1110. package/assets/previous-fast.svg +1 -0
  1111. package/assets/previous.svg +1 -0
  1112. package/assets/priceTag_default.svg +1 -0
  1113. package/assets/print.svg +1 -0
  1114. package/assets/print_color.svg +1 -0
  1115. package/assets/print_default.svg +1 -0
  1116. package/assets/product_pack_color.svg +1 -0
  1117. package/assets/prof_default.svg +1 -0
  1118. package/assets/program_color.svg +1 -0
  1119. package/assets/programming.svg +1 -0
  1120. package/assets/programming_color.svg +1 -0
  1121. package/assets/projector.svg +1 -0
  1122. package/assets/pronunciation_color.svg +1 -0
  1123. package/assets/psychology_color.svg +1 -0
  1124. package/assets/puerto-rico.svg +1 -0
  1125. package/assets/qatar.svg +1 -0
  1126. package/assets/questionFilled_default.svg +1 -0
  1127. package/assets/radar.svg +1 -0
  1128. package/assets/radioChecked_default.svg +1 -0
  1129. package/assets/radioNotChecked_default.svg +1 -0
  1130. package/assets/rap_and_culture_color.svg +1 -0
  1131. package/assets/reciept.svg +1 -0
  1132. package/assets/rectangle-code.svg +1 -0
  1133. package/assets/rectangle-terminal.svg +1 -0
  1134. package/assets/rectangle-vertical.svg +1 -0
  1135. package/assets/rectangle-wide.svg +1 -0
  1136. package/assets/rectangles-mixed-fill.svg +1 -0
  1137. package/assets/rectangles-mixed.svg +1 -0
  1138. package/assets/redo-fill.svg +1 -0
  1139. package/assets/redo.svg +1 -0
  1140. package/assets/refresh-clock.svg +1 -0
  1141. package/assets/refresh-fill.svg +1 -0
  1142. package/assets/refresh.svg +1 -0
  1143. package/assets/reload_default.svg +1 -0
  1144. package/assets/repeat-vertical.svg +1 -0
  1145. package/assets/repeat.svg +1 -0
  1146. package/assets/reply.svg +1 -0
  1147. package/assets/republic-of-macedonia.svg +1 -0
  1148. package/assets/republic-of-the_congo.svg +1 -0
  1149. package/assets/resize-handle.svg +1 -0
  1150. package/assets/rewinding-left.svg +1 -0
  1151. package/assets/rewinding-right.svg +1 -0
  1152. package/assets/rhombus.svg +1 -0
  1153. package/assets/right-alignment.svg +1 -0
  1154. package/assets/right-indent.svg +1 -0
  1155. package/assets/right-to-left-text-direction.svg +1 -0
  1156. package/assets/robot_color.svg +1 -0
  1157. package/assets/robotechnics_color.svg +1 -0
  1158. package/assets/rocket-fill.svg +1 -0
  1159. package/assets/rocket.svg +1 -0
  1160. package/assets/romania.svg +1 -0
  1161. package/assets/rotate-fill.svg +1 -0
  1162. package/assets/rotate-left-fill.svg +1 -0
  1163. package/assets/rotate-left.svg +1 -0
  1164. package/assets/rotate-right-fill.svg +1 -0
  1165. package/assets/rotate-right.svg +1 -0
  1166. package/assets/rotate.svg +1 -0
  1167. package/assets/route.svg +1 -0
  1168. package/assets/rss.svg +1 -0
  1169. package/assets/rus_native_language_color.svg +1 -0
  1170. package/assets/russia.svg +1 -0
  1171. package/assets/russian_color.svg +1 -0
  1172. package/assets/rwanda.svg +1 -0
  1173. package/assets/sahrawi-arab-democratic_republic.svg +1 -0
  1174. package/assets/samoa.svg +1 -0
  1175. package/assets/san-marino.svg +1 -0
  1176. package/assets/sao-tome-and_prince.svg +1 -0
  1177. package/assets/saudi-arabia.svg +1 -0
  1178. package/assets/sb-auth-mono-color.svg +1 -0
  1179. package/assets/sb-authorization.svg +1 -0
  1180. package/assets/scan.svg +1 -0
  1181. package/assets/school-bag.svg +1 -0
  1182. package/assets/school.svg +1 -0
  1183. package/assets/school_preparation_color.svg +1 -0
  1184. package/assets/school_preparing_color.svg +1 -0
  1185. package/assets/school_program_color.svg +1 -0
  1186. package/assets/scissors.svg +1 -0
  1187. package/assets/scotland.svg +1 -0
  1188. package/assets/screen-export.svg +1 -0
  1189. package/assets/screen-import.svg +1 -0
  1190. package/assets/screen-remove.svg +1 -0
  1191. package/assets/screen-sharing.svg +1 -0
  1192. package/assets/screen.svg +1 -0
  1193. package/assets/screencast.svg +1 -0
  1194. package/assets/scribble.svg +1 -0
  1195. package/assets/seal.svg +1 -0
  1196. package/assets/search-out.svg +1 -0
  1197. package/assets/search-zoom.svg +1 -0
  1198. package/assets/search.svg +1 -0
  1199. package/assets/search_default.svg +1 -0
  1200. package/assets/seconds-10-right.svg +1 -0
  1201. package/assets/seconds-10.svg +1 -0
  1202. package/assets/seconds-15-right.svg +1 -0
  1203. package/assets/seconds-15.svg +1 -0
  1204. package/assets/seconds-5-right.svg +1 -0
  1205. package/assets/seconds-5.svg +1 -0
  1206. package/assets/send-angle.svg +1 -0
  1207. package/assets/send-forward.svg +1 -0
  1208. package/assets/send.svg +1 -0
  1209. package/assets/sending-left.svg +1 -0
  1210. package/assets/sending-right.svg +1 -0
  1211. package/assets/senegal.svg +1 -0
  1212. package/assets/serbia.svg +1 -0
  1213. package/assets/server.svg +1 -0
  1214. package/assets/server_color.svg +1 -0
  1215. package/assets/settings-fill.svg +1 -0
  1216. package/assets/settings.svg +1 -0
  1217. package/assets/settings_1_color.svg +1 -0
  1218. package/assets/settings_2_color.svg +1 -0
  1219. package/assets/settings_3_color.svg +1 -0
  1220. package/assets/settings_default.svg +1 -0
  1221. package/assets/seychelles.svg +1 -0
  1222. package/assets/shapes.svg +1 -0
  1223. package/assets/share-fill.svg +1 -0
  1224. package/assets/share.svg +1 -0
  1225. package/assets/sharpCross_default.svg +1 -0
  1226. package/assets/shield-check.svg +1 -0
  1227. package/assets/shield-error.svg +1 -0
  1228. package/assets/shield-keyhole.svg +1 -0
  1229. package/assets/shield-minus.svg +1 -0
  1230. package/assets/shield-plus.svg +1 -0
  1231. package/assets/shield-slash.svg +1 -0
  1232. package/assets/shield-warning.svg +1 -0
  1233. package/assets/shield.svg +1 -0
  1234. package/assets/shop.svg +1 -0
  1235. package/assets/shopping_color.svg +1 -0
  1236. package/assets/sidebar.svg +1 -0
  1237. package/assets/sierra-leone.svg +1 -0
  1238. package/assets/sigma.svg +1 -0
  1239. package/assets/signal-off.svg +1 -0
  1240. package/assets/signal-steam-off.svg +1 -0
  1241. package/assets/signal-steam-warning.svg +1 -0
  1242. package/assets/signal-steam.svg +1 -0
  1243. package/assets/signal-warning.svg +1 -0
  1244. package/assets/signal.svg +1 -0
  1245. package/assets/signature.svg +1 -0
  1246. package/assets/singapore.svg +1 -0
  1247. package/assets/sint-maarten.svg +1 -0
  1248. package/assets/slash-flip.svg +1 -0
  1249. package/assets/slash.svg +1 -0
  1250. package/assets/slide.svg +1 -0
  1251. package/assets/sliders.svg +1 -0
  1252. package/assets/slovakia.svg +1 -0
  1253. package/assets/slovenia.svg +1 -0
  1254. package/assets/social_color.svg +1 -0
  1255. package/assets/social_elementary_color.svg +1 -0
  1256. package/assets/social_sciences_color.svg +1 -0
  1257. package/assets/solomon-islands.svg +1 -0
  1258. package/assets/somalia.svg +1 -0
  1259. package/assets/sort-amount-down.svg +1 -0
  1260. package/assets/sort-amount-up.svg +1 -0
  1261. package/assets/sort-down-fill.svg +1 -0
  1262. package/assets/sort-down.svg +1 -0
  1263. package/assets/sort-fill.svg +1 -0
  1264. package/assets/sort-up-fill.svg +1 -0
  1265. package/assets/sort-up.svg +1 -0
  1266. package/assets/sort.svg +1 -0
  1267. package/assets/sort_default.svg +1 -0
  1268. package/assets/south-africa.svg +1 -0
  1269. package/assets/south-korea.svg +1 -0
  1270. package/assets/south-sudan.svg +1 -0
  1271. package/assets/spain.svg +1 -0
  1272. package/assets/spanish_color.svg +1 -0
  1273. package/assets/spell-check.svg +1 -0
  1274. package/assets/spelling_color.svg +1 -0
  1275. package/assets/sport.svg +1 -0
  1276. package/assets/square-a-lock.svg +1 -0
  1277. package/assets/square-check-fill.svg +1 -0
  1278. package/assets/square-check.svg +1 -0
  1279. package/assets/square-code.svg +1 -0
  1280. package/assets/square-dashed.svg +1 -0
  1281. package/assets/square-dazzle.svg +1 -0
  1282. package/assets/square-kanban.svg +1 -0
  1283. package/assets/square-list.svg +1 -0
  1284. package/assets/square-minus-fill.svg +1 -0
  1285. package/assets/square-minus.svg +1 -0
  1286. package/assets/square-poll-horizontal.svg +1 -0
  1287. package/assets/square-poll-vertical.svg +1 -0
  1288. package/assets/square-quarters.svg +1 -0
  1289. package/assets/square-ring.svg +1 -0
  1290. package/assets/square-small.svg +1 -0
  1291. package/assets/square-t.svg +1 -0
  1292. package/assets/square-terminal.svg +1 -0
  1293. package/assets/square.svg +1 -0
  1294. package/assets/sri-lanka.svg +1 -0
  1295. package/assets/st-barts.svg +1 -0
  1296. package/assets/st-lucia.svg +1 -0
  1297. package/assets/st-vincent-and-the-grenadines.svg +1 -0
  1298. package/assets/star-blink.svg +1 -0
  1299. package/assets/star-circle.svg +1 -0
  1300. package/assets/star-fill.svg +1 -0
  1301. package/assets/star-half-stroke.svg +1 -0
  1302. package/assets/star-half.svg +1 -0
  1303. package/assets/star-sparkle.svg +1 -0
  1304. package/assets/star-warning.svg +1 -0
  1305. package/assets/star.svg +1 -0
  1306. package/assets/star_default.svg +1 -0
  1307. package/assets/stars.svg +1 -0
  1308. package/assets/stopwatch.svg +1 -0
  1309. package/assets/strikethrough.svg +1 -0
  1310. package/assets/structure.svg +1 -0
  1311. package/assets/student-fill.svg +1 -0
  1312. package/assets/student.svg +1 -0
  1313. package/assets/student_default.svg +1 -0
  1314. package/assets/subdirectory.svg +1 -0
  1315. package/assets/subscript.svg +1 -0
  1316. package/assets/sudan.svg +1 -0
  1317. package/assets/superscript.svg +1 -0
  1318. package/assets/support.svg +1 -0
  1319. package/assets/suriname.svg +1 -0
  1320. package/assets/swaziland.svg +1 -0
  1321. package/assets/sweden.svg +1 -0
  1322. package/assets/switch-horizontal.svg +1 -0
  1323. package/assets/switch-vertical.svg +1 -0
  1324. package/assets/switzerland.svg +1 -0
  1325. package/assets/syria.svg +1 -0
  1326. package/assets/t-bank-authorization.svg +1 -0
  1327. package/assets/table-cells-large.svg +1 -0
  1328. package/assets/table-cells.svg +1 -0
  1329. package/assets/table-columns.svg +1 -0
  1330. package/assets/table-layout.svg +1 -0
  1331. package/assets/table-list.svg +1 -0
  1332. package/assets/table-rows.svg +1 -0
  1333. package/assets/table.svg +1 -0
  1334. package/assets/tablet.svg +1 -0
  1335. package/assets/tag-fill.svg +1 -0
  1336. package/assets/tag.svg +1 -0
  1337. package/assets/tags-fill.svg +1 -0
  1338. package/assets/tags.svg +1 -0
  1339. package/assets/taiwan.svg +1 -0
  1340. package/assets/tajikistan.svg +1 -0
  1341. package/assets/tanzania.svg +1 -0
  1342. package/assets/target_default.svg +1 -0
  1343. package/assets/task-fill.svg +1 -0
  1344. package/assets/task.svg +1 -0
  1345. package/assets/tasks_color.svg +1 -0
  1346. package/assets/tasks_default.svg +4 -0
  1347. package/assets/tbank-auth-mono-color.svg +1 -0
  1348. package/assets/teacher.svg +1 -0
  1349. package/assets/technology_color.svg +1 -0
  1350. package/assets/telegram-social-color.svg +1 -0
  1351. package/assets/telegram-social.svg +1 -0
  1352. package/assets/terminal.svg +1 -0
  1353. package/assets/terminal_color.svg +1 -0
  1354. package/assets/test.svg +1 -0
  1355. package/assets/test_color.svg +1 -0
  1356. package/assets/text-big.svg +1 -0
  1357. package/assets/text-erase.svg +1 -0
  1358. package/assets/text-height.svg +1 -0
  1359. package/assets/text-move-left.svg +1 -0
  1360. package/assets/text-move-right.svg +1 -0
  1361. package/assets/text-note.svg +1 -0
  1362. package/assets/text-size.svg +1 -0
  1363. package/assets/text-small.svg +1 -0
  1364. package/assets/text-width.svg +1 -0
  1365. package/assets/text.svg +1 -0
  1366. package/assets/textbook_color.svg +1 -0
  1367. package/assets/textbook_default.svg +1 -0
  1368. package/assets/thailand.svg +1 -0
  1369. package/assets/theory_color.svg +1 -0
  1370. package/assets/ticket-simple.svg +1 -0
  1371. package/assets/tiktok-social.svg +1 -0
  1372. package/assets/time-off.svg +1 -0
  1373. package/assets/timer.svg +1 -0
  1374. package/assets/tinkoff-authorization.svg +1 -0
  1375. package/assets/tinyCross_default.svg +1 -0
  1376. package/assets/togo.svg +1 -0
  1377. package/assets/tokelau.svg +1 -0
  1378. package/assets/tonga.svg +1 -0
  1379. package/assets/top-alignment.svg +1 -0
  1380. package/assets/train.svg +1 -0
  1381. package/assets/training_color.svg +1 -0
  1382. package/assets/translate_color.svg +1 -0
  1383. package/assets/trash-arrow-up-fill.svg +1 -0
  1384. package/assets/trash-arrow-up.svg +1 -0
  1385. package/assets/trash-blank-fill.svg +1 -0
  1386. package/assets/trash-blank.svg +1 -0
  1387. package/assets/trash-check-fill.svg +1 -0
  1388. package/assets/trash-check.svg +1 -0
  1389. package/assets/trash-clock.svg +1 -0
  1390. package/assets/trash-fill.svg +1 -0
  1391. package/assets/trash-list-fill.svg +1 -0
  1392. package/assets/trash-list.svg +1 -0
  1393. package/assets/trash-plus-fill.svg +1 -0
  1394. package/assets/trash-plus.svg +1 -0
  1395. package/assets/trash-slash-fill.svg +1 -0
  1396. package/assets/trash-slash.svg +1 -0
  1397. package/assets/trash-undo-fill.svg +1 -0
  1398. package/assets/trash-undo.svg +1 -0
  1399. package/assets/trash-xmark-fill.svg +1 -0
  1400. package/assets/trash-xmark.svg +1 -0
  1401. package/assets/trash.svg +1 -0
  1402. package/assets/triangle.svg +1 -0
  1403. package/assets/trinidad-and-tobago.svg +1 -0
  1404. package/assets/trophy.svg +1 -0
  1405. package/assets/trophy_color.svg +1 -0
  1406. package/assets/trophy_default.svg +1 -0
  1407. package/assets/tunisia.svg +1 -0
  1408. package/assets/turkey.svg +1 -0
  1409. package/assets/turkmenistan.svg +1 -0
  1410. package/assets/turks-and-caicos.svg +1 -0
  1411. package/assets/tutor_color.svg +1 -0
  1412. package/assets/tuvalu.svg +1 -0
  1413. package/assets/tv.svg +1 -0
  1414. package/assets/twenty-thirty-five-authorization.svg +1 -0
  1415. package/assets/uganda.svg +1 -0
  1416. package/assets/ukraine.svg +1 -0
  1417. package/assets/un2035-auth-mono-color.svg +1 -0
  1418. package/assets/underline.svg +1 -0
  1419. package/assets/undo-fill.svg +1 -0
  1420. package/assets/undo.svg +1 -0
  1421. package/assets/united-arab-emirates.svg +1 -0
  1422. package/assets/united-kingdom.svg +1 -0
  1423. package/assets/united-states.svg +1 -0
  1424. package/assets/university.svg +1 -0
  1425. package/assets/unlock.svg +1 -0
  1426. package/assets/unsort_default.svg +1 -0
  1427. package/assets/upload-fill.svg +1 -0
  1428. package/assets/upload.svg +1 -0
  1429. package/assets/uruguay.svg +1 -0
  1430. package/assets/usb-flash-drive.svg +1 -0
  1431. package/assets/user-add.svg +1 -0
  1432. package/assets/user-block.svg +1 -0
  1433. package/assets/user-circle.svg +1 -0
  1434. package/assets/user-edit.svg +1 -0
  1435. package/assets/user-heart.svg +1 -0
  1436. package/assets/user-lock.svg +1 -0
  1437. package/assets/user-minus.svg +1 -0
  1438. package/assets/user-question.svg +1 -0
  1439. package/assets/user-remove.svg +1 -0
  1440. package/assets/user-square.svg +1 -0
  1441. package/assets/user-tick.svg +1 -0
  1442. package/assets/user.svg +1 -0
  1443. package/assets/users-fill.svg +1 -0
  1444. package/assets/users.svg +1 -0
  1445. package/assets/uzbekistan.svg +1 -0
  1446. package/assets/vanuatu.svg +1 -0
  1447. package/assets/vatican-city.svg +1 -0
  1448. package/assets/vault.svg +1 -0
  1449. package/assets/venezuela.svg +1 -0
  1450. package/assets/video-add.svg +1 -0
  1451. package/assets/video-export.svg +1 -0
  1452. package/assets/video-fill.svg +1 -0
  1453. package/assets/video-import.svg +1 -0
  1454. package/assets/video-slash-fill.svg +1 -0
  1455. package/assets/video_default.svg +1 -0
  1456. package/assets/vietnam.svg +1 -0
  1457. package/assets/virgin-islands.svg +1 -0
  1458. package/assets/vk-auth-mono-color.svg +1 -0
  1459. package/assets/vk-authorization.svg +1 -0
  1460. package/assets/vk-social-color.svg +1 -0
  1461. package/assets/vk-social.svg +1 -0
  1462. package/assets/voicemail.svg +1 -0
  1463. package/assets/volume-add.svg +1 -0
  1464. package/assets/volume-min.svg +1 -0
  1465. package/assets/volume-minus.svg +1 -0
  1466. package/assets/volume-off.svg +1 -0
  1467. package/assets/volume-remove.svg +1 -0
  1468. package/assets/volume.svg +1 -0
  1469. package/assets/wales.svg +1 -0
  1470. package/assets/wallet-add.svg +1 -0
  1471. package/assets/wallet-remove.svg +1 -0
  1472. package/assets/wallet-transfer.svg +1 -0
  1473. package/assets/wallet.svg +1 -0
  1474. package/assets/wallet_default.svg +1 -0
  1475. package/assets/wand-magic-sparkles.svg +1 -0
  1476. package/assets/wand-magic.svg +1 -0
  1477. package/assets/warning-circle-check.svg +1 -0
  1478. package/assets/warning-circle-fill.svg +1 -0
  1479. package/assets/warning-circle.svg +1 -0
  1480. package/assets/warning-seal-fill.svg +1 -0
  1481. package/assets/warning-seal.svg +1 -0
  1482. package/assets/warning-triangle-fill.svg +1 -0
  1483. package/assets/warning-triangle.svg +1 -0
  1484. package/assets/warning.svg +1 -0
  1485. package/assets/watch.svg +1 -0
  1486. package/assets/webcam-slash-off.svg +1 -0
  1487. package/assets/webcam.svg +1 -0
  1488. package/assets/weight.svg +1 -0
  1489. package/assets/whatsapp-social-color.svg +1 -0
  1490. package/assets/whatsapp-social-fill.svg +1 -0
  1491. package/assets/whatsapp-social.svg +1 -0
  1492. package/assets/wifi-off.svg +1 -0
  1493. package/assets/wifi-warning.svg +1 -0
  1494. package/assets/wifi.svg +1 -0
  1495. package/assets/window.svg +1 -0
  1496. package/assets/work.svg +1 -0
  1497. package/assets/world_color.svg +1 -0
  1498. package/assets/world_elementary_color.svg +1 -0
  1499. package/assets/yandex-auth-mono-color.svg +1 -0
  1500. package/assets/yandex-authorization.svg +1 -0
  1501. package/assets/yemen.svg +1 -0
  1502. package/assets/youtube-alt-social-color.svg +1 -0
  1503. package/assets/youtube-alt-social.svg +1 -0
  1504. package/assets/youtube-social.svg +1 -0
  1505. package/assets/zambia.svg +1 -0
  1506. package/assets/zimbabwe.svg +1 -0
  1507. package/components/AccordionItem/AccordionItem.js +1 -1
  1508. package/components/AccordionItem/AccordionItem.js.map +1 -1
  1509. package/components/AccordionItem/AccordionItem.mjs +1 -1
  1510. package/components/AccordionItem/AccordionItem.mjs.map +1 -1
  1511. package/components/AddElement/AddElement.js +2 -0
  1512. package/components/AddElement/AddElement.js.map +1 -0
  1513. package/components/AddElement/AddElement.mjs +2 -0
  1514. package/components/AddElement/AddElement.mjs.map +1 -0
  1515. package/components/AddElement/sizes.js +2 -0
  1516. package/components/AddElement/sizes.js.map +1 -0
  1517. package/components/AddElement/sizes.mjs +2 -0
  1518. package/components/AddElement/sizes.mjs.map +1 -0
  1519. package/components/AddElement/style.js +2 -0
  1520. package/components/AddElement/style.js.map +1 -0
  1521. package/components/AddElement/style.mjs +2 -0
  1522. package/components/AddElement/style.mjs.map +1 -0
  1523. package/components/Alert/Alert.js +1 -1
  1524. package/components/Alert/Alert.js.map +1 -1
  1525. package/components/Alert/Alert.mjs +1 -1
  1526. package/components/Alert/Alert.mjs.map +1 -1
  1527. package/components/Arrow/Arrow.js +1 -1
  1528. package/components/Arrow/Arrow.js.map +1 -1
  1529. package/components/Arrow/Arrow.mjs +1 -1
  1530. package/components/Arrow/Arrow.mjs.map +1 -1
  1531. package/components/Button/Button.js +1 -1
  1532. package/components/Button/Button.js.map +1 -1
  1533. package/components/Button/Button.mjs +1 -1
  1534. package/components/Button/Button.mjs.map +1 -1
  1535. package/components/Checkbox/images/check-default.svg.js +2 -0
  1536. package/components/Checkbox/images/check-default.svg.js.map +1 -0
  1537. package/components/Checkbox/images/check-default.svg.mjs +2 -0
  1538. package/components/Checkbox/images/check-default.svg.mjs.map +1 -0
  1539. package/components/Checkbox/images/check.svg.js +2 -0
  1540. package/components/Checkbox/images/check.svg.js.map +1 -0
  1541. package/components/Checkbox/images/check.svg.mjs +2 -0
  1542. package/components/Checkbox/images/check.svg.mjs.map +1 -0
  1543. package/components/Checkbox/style.js +1 -1
  1544. package/components/Checkbox/style.js.map +1 -1
  1545. package/components/Checkbox/style.mjs +1 -1
  1546. package/components/Checkbox/style.mjs.map +1 -1
  1547. package/components/Chip/Chip.js +1 -1
  1548. package/components/Chip/Chip.js.map +1 -1
  1549. package/components/Chip/Chip.mjs +1 -1
  1550. package/components/Chip/Chip.mjs.map +1 -1
  1551. package/components/DialogComponent/DialogComponent.js +1 -1
  1552. package/components/DialogComponent/DialogComponent.js.map +1 -1
  1553. package/components/DialogComponent/DialogComponent.mjs +1 -1
  1554. package/components/DialogComponent/DialogComponent.mjs.map +1 -1
  1555. package/components/Dropdown/Dropdown.js +1 -1
  1556. package/components/Dropdown/Dropdown.js.map +1 -1
  1557. package/components/Dropdown/Dropdown.mjs +1 -1
  1558. package/components/Dropdown/Dropdown.mjs.map +1 -1
  1559. package/components/Dropdown/DropdownMenuNoOptions.js +1 -1
  1560. package/components/Dropdown/DropdownMenuNoOptions.js.map +1 -1
  1561. package/components/Dropdown/DropdownMenuNoOptions.mjs +1 -1
  1562. package/components/Dropdown/DropdownMenuNoOptions.mjs.map +1 -1
  1563. package/components/Dropdown/style.js +1 -1
  1564. package/components/Dropdown/style.js.map +1 -1
  1565. package/components/Dropdown/style.mjs +1 -1
  1566. package/components/Dropdown/style.mjs.map +1 -1
  1567. package/components/FormLabel/FormLabel.js +1 -1
  1568. package/components/FormLabel/FormLabel.js.map +1 -1
  1569. package/components/FormLabel/FormLabel.mjs +1 -1
  1570. package/components/FormLabel/FormLabel.mjs.map +1 -1
  1571. package/components/Icon/Icon.js +1 -1
  1572. package/components/Icon/Icon.js.map +1 -1
  1573. package/components/Icon/Icon.mjs +1 -1
  1574. package/components/Icon/Icon.mjs.map +1 -1
  1575. package/components/Icon/bg-worker.js +2 -0
  1576. package/components/Icon/bg-worker.js.map +1 -0
  1577. package/components/Icon/bg-worker.mjs +2 -0
  1578. package/components/Icon/bg-worker.mjs.map +1 -0
  1579. package/components/Icon/constants.js +2 -0
  1580. package/components/Icon/constants.js.map +1 -0
  1581. package/components/Icon/constants.mjs +2 -0
  1582. package/components/Icon/constants.mjs.map +1 -0
  1583. package/components/Icon/list/default.js +2 -0
  1584. package/components/Icon/list/default.js.map +1 -0
  1585. package/components/Icon/list/default.mjs +2 -0
  1586. package/components/Icon/list/default.mjs.map +1 -0
  1587. package/components/Icon/list/icon-pack.js +2 -0
  1588. package/components/Icon/list/icon-pack.js.map +1 -0
  1589. package/components/Icon/list/icon-pack.mjs +2 -0
  1590. package/components/Icon/list/icon-pack.mjs.map +1 -0
  1591. package/components/Icon/list/index.js +2 -0
  1592. package/components/Icon/list/index.js.map +1 -0
  1593. package/components/Icon/list/index.mjs +2 -0
  1594. package/components/Icon/list/index.mjs.map +1 -0
  1595. package/components/Icon/style.js +1 -1
  1596. package/components/Icon/style.js.map +1 -1
  1597. package/components/Icon/style.mjs +1 -1
  1598. package/components/Icon/style.mjs.map +1 -1
  1599. package/components/Input/Input.js +1 -1
  1600. package/components/Input/Input.js.map +1 -1
  1601. package/components/Input/Input.mjs +1 -1
  1602. package/components/Input/Input.mjs.map +1 -1
  1603. package/components/InputCheckbox/images/checked.svg.js +2 -0
  1604. package/components/InputCheckbox/images/checked.svg.js.map +1 -0
  1605. package/components/InputCheckbox/images/checked.svg.mjs +2 -0
  1606. package/components/InputCheckbox/images/checked.svg.mjs.map +1 -0
  1607. package/components/InputCheckbox/images/indeterminate.svg.js +2 -0
  1608. package/components/InputCheckbox/images/indeterminate.svg.js.map +1 -0
  1609. package/components/InputCheckbox/images/indeterminate.svg.mjs +2 -0
  1610. package/components/InputCheckbox/images/indeterminate.svg.mjs.map +1 -0
  1611. package/components/InputCheckbox/style.js +1 -1
  1612. package/components/InputCheckbox/style.js.map +1 -1
  1613. package/components/InputCheckbox/style.mjs +1 -1
  1614. package/components/InputCheckbox/style.mjs.map +1 -1
  1615. package/components/MenuContainer/MenuContainer.js +1 -1
  1616. package/components/MenuContainer/MenuContainer.js.map +1 -1
  1617. package/components/MenuContainer/MenuContainer.mjs +1 -1
  1618. package/components/MenuContainer/MenuContainer.mjs.map +1 -1
  1619. package/components/Modal/Close.js +1 -1
  1620. package/components/Modal/Close.js.map +1 -1
  1621. package/components/Modal/Close.mjs +1 -1
  1622. package/components/Modal/Close.mjs.map +1 -1
  1623. package/components/Notification/Notification.js +1 -1
  1624. package/components/Notification/Notification.js.map +1 -1
  1625. package/components/Notification/Notification.mjs +1 -1
  1626. package/components/Notification/Notification.mjs.map +1 -1
  1627. package/components/Notification/constants.js +1 -1
  1628. package/components/Notification/constants.js.map +1 -1
  1629. package/components/Notification/constants.mjs +1 -1
  1630. package/components/Notification/constants.mjs.map +1 -1
  1631. package/components/PopoverComponent/PopoverComponent.js +1 -1
  1632. package/components/PopoverComponent/PopoverComponent.js.map +1 -1
  1633. package/components/PopoverComponent/PopoverComponent.mjs +1 -1
  1634. package/components/PopoverComponent/PopoverComponent.mjs.map +1 -1
  1635. package/components/ProgressLine/ProgressLine.js +1 -1
  1636. package/components/ProgressLine/ProgressLine.js.map +1 -1
  1637. package/components/ProgressLine/ProgressLine.mjs +1 -1
  1638. package/components/ProgressLine/ProgressLine.mjs.map +1 -1
  1639. package/components/ProgressLine/style.js +1 -1
  1640. package/components/ProgressLine/style.js.map +1 -1
  1641. package/components/ProgressLine/style.mjs +1 -1
  1642. package/components/ProgressLine/style.mjs.map +1 -1
  1643. package/components/TabList/TabList.js +1 -1
  1644. package/components/TabList/TabList.js.map +1 -1
  1645. package/components/TabList/TabList.mjs +1 -1
  1646. package/components/TabList/TabList.mjs.map +1 -1
  1647. package/components/TabList/TabListMenuTab.js +1 -1
  1648. package/components/TabList/TabListMenuTab.js.map +1 -1
  1649. package/components/TabList/TabListMenuTab.mjs +1 -1
  1650. package/components/TabList/TabListMenuTab.mjs.map +1 -1
  1651. package/components/Textarea/Textarea.js +1 -1
  1652. package/components/Textarea/Textarea.js.map +1 -1
  1653. package/components/Textarea/Textarea.mjs +1 -1
  1654. package/components/Textarea/Textarea.mjs.map +1 -1
  1655. package/components/TooltipComponent/TooltipComponent.js +1 -1
  1656. package/components/TooltipComponent/TooltipComponent.js.map +1 -1
  1657. package/components/TooltipComponent/TooltipComponent.mjs +1 -1
  1658. package/components/TooltipComponent/TooltipComponent.mjs.map +1 -1
  1659. package/dts/index.d.ts +463 -2050
  1660. package/index.js +1 -1
  1661. package/index.mjs +1 -1
  1662. package/package.json +9 -4
  1663. package/shared/utils/isNil.js +2 -0
  1664. package/shared/utils/isNil.js.map +1 -0
  1665. package/shared/utils/isNil.mjs +2 -0
  1666. package/shared/utils/isNil.mjs.map +1 -0
  1667. package/components/Arrow/images/chevronUpDefault.svg.js +0 -2
  1668. package/components/Arrow/images/chevronUpDefault.svg.js.map +0 -1
  1669. package/components/Arrow/images/chevronUpDefault.svg.mjs +0 -2
  1670. package/components/Arrow/images/chevronUpDefault.svg.mjs.map +0 -1
  1671. package/components/Checkbox/images/checkDefault.svg.js +0 -2
  1672. package/components/Checkbox/images/checkDefault.svg.js.map +0 -1
  1673. package/components/Checkbox/images/checkDefault.svg.mjs +0 -2
  1674. package/components/Checkbox/images/checkDefault.svg.mjs.map +0 -1
  1675. package/components/Icon/iconPack.js +0 -2
  1676. package/components/Icon/iconPack.js.map +0 -1
  1677. package/components/Icon/iconPack.mjs +0 -2
  1678. package/components/Icon/iconPack.mjs.map +0 -1
  1679. package/components/Icon/iconsDefault.js +0 -2
  1680. package/components/Icon/iconsDefault.js.map +0 -1
  1681. package/components/Icon/iconsDefault.mjs +0 -2
  1682. package/components/Icon/iconsDefault.mjs.map +0 -1
  1683. package/components/Icon/images/blackBoard_default.svg.js +0 -2
  1684. package/components/Icon/images/blackBoard_default.svg.js.map +0 -1
  1685. package/components/Icon/images/blackBoard_default.svg.mjs +0 -2
  1686. package/components/Icon/images/blackBoard_default.svg.mjs.map +0 -1
  1687. package/components/Icon/images/book_default.svg.js +0 -2
  1688. package/components/Icon/images/book_default.svg.js.map +0 -1
  1689. package/components/Icon/images/book_default.svg.mjs +0 -2
  1690. package/components/Icon/images/book_default.svg.mjs.map +0 -1
  1691. package/components/Icon/images/burger_default.svg.js +0 -2
  1692. package/components/Icon/images/burger_default.svg.js.map +0 -1
  1693. package/components/Icon/images/burger_default.svg.mjs +0 -2
  1694. package/components/Icon/images/burger_default.svg.mjs.map +0 -1
  1695. package/components/Icon/images/calendar_default.svg.js +0 -2
  1696. package/components/Icon/images/calendar_default.svg.js.map +0 -1
  1697. package/components/Icon/images/calendar_default.svg.mjs +0 -2
  1698. package/components/Icon/images/calendar_default.svg.mjs.map +0 -1
  1699. package/components/Icon/images/calendar_simple_default.svg.js +0 -2
  1700. package/components/Icon/images/calendar_simple_default.svg.js.map +0 -1
  1701. package/components/Icon/images/calendar_simple_default.svg.mjs +0 -2
  1702. package/components/Icon/images/calendar_simple_default.svg.mjs.map +0 -1
  1703. package/components/Icon/images/camps_default.svg.js +0 -2
  1704. package/components/Icon/images/camps_default.svg.js.map +0 -1
  1705. package/components/Icon/images/camps_default.svg.mjs +0 -2
  1706. package/components/Icon/images/camps_default.svg.mjs.map +0 -1
  1707. package/components/Icon/images/cancel_default.svg.js +0 -2
  1708. package/components/Icon/images/cancel_default.svg.js.map +0 -1
  1709. package/components/Icon/images/cancel_default.svg.mjs +0 -2
  1710. package/components/Icon/images/cancel_default.svg.mjs.map +0 -1
  1711. package/components/Icon/images/cart_default.svg.js +0 -2
  1712. package/components/Icon/images/cart_default.svg.js.map +0 -1
  1713. package/components/Icon/images/cart_default.svg.mjs +0 -2
  1714. package/components/Icon/images/cart_default.svg.mjs.map +0 -1
  1715. package/components/Icon/images/checkCircle_default.svg.js +0 -2
  1716. package/components/Icon/images/checkCircle_default.svg.js.map +0 -1
  1717. package/components/Icon/images/checkCircle_default.svg.mjs +0 -2
  1718. package/components/Icon/images/checkCircle_default.svg.mjs.map +0 -1
  1719. package/components/Icon/images/check_default.svg.js +0 -2
  1720. package/components/Icon/images/check_default.svg.js.map +0 -1
  1721. package/components/Icon/images/check_default.svg.mjs +0 -2
  1722. package/components/Icon/images/check_default.svg.mjs.map +0 -1
  1723. package/components/Icon/images/chevronDown_default.svg.js +0 -2
  1724. package/components/Icon/images/chevronDown_default.svg.js.map +0 -1
  1725. package/components/Icon/images/chevronDown_default.svg.mjs +0 -2
  1726. package/components/Icon/images/chevronDown_default.svg.mjs.map +0 -1
  1727. package/components/Icon/images/chevronLeft_default.svg.js +0 -2
  1728. package/components/Icon/images/chevronLeft_default.svg.js.map +0 -1
  1729. package/components/Icon/images/chevronLeft_default.svg.mjs +0 -2
  1730. package/components/Icon/images/chevronLeft_default.svg.mjs.map +0 -1
  1731. package/components/Icon/images/chevronRight_default.svg.js +0 -2
  1732. package/components/Icon/images/chevronRight_default.svg.js.map +0 -1
  1733. package/components/Icon/images/chevronRight_default.svg.mjs +0 -2
  1734. package/components/Icon/images/chevronRight_default.svg.mjs.map +0 -1
  1735. package/components/Icon/images/chevronUp_default.svg.js +0 -2
  1736. package/components/Icon/images/chevronUp_default.svg.js.map +0 -1
  1737. package/components/Icon/images/chevronUp_default.svg.mjs +0 -2
  1738. package/components/Icon/images/chevronUp_default.svg.mjs.map +0 -1
  1739. package/components/Icon/images/clockFilled_default.svg.js +0 -2
  1740. package/components/Icon/images/clockFilled_default.svg.js.map +0 -1
  1741. package/components/Icon/images/clockFilled_default.svg.mjs +0 -2
  1742. package/components/Icon/images/clockFilled_default.svg.mjs.map +0 -1
  1743. package/components/Icon/images/clock_default.svg.js +0 -2
  1744. package/components/Icon/images/clock_default.svg.js.map +0 -1
  1745. package/components/Icon/images/clock_default.svg.mjs +0 -2
  1746. package/components/Icon/images/clock_default.svg.mjs.map +0 -1
  1747. package/components/Icon/images/coins_default.svg.js +0 -2
  1748. package/components/Icon/images/coins_default.svg.js.map +0 -1
  1749. package/components/Icon/images/coins_default.svg.mjs +0 -2
  1750. package/components/Icon/images/coins_default.svg.mjs.map +0 -1
  1751. package/components/Icon/images/copy_default.svg.js +0 -2
  1752. package/components/Icon/images/copy_default.svg.js.map +0 -1
  1753. package/components/Icon/images/copy_default.svg.mjs +0 -2
  1754. package/components/Icon/images/copy_default.svg.mjs.map +0 -1
  1755. package/components/Icon/images/courses_default.svg.js +0 -2
  1756. package/components/Icon/images/courses_default.svg.js.map +0 -1
  1757. package/components/Icon/images/courses_default.svg.mjs +0 -2
  1758. package/components/Icon/images/courses_default.svg.mjs.map +0 -1
  1759. package/components/Icon/images/cross_default.svg.js +0 -2
  1760. package/components/Icon/images/cross_default.svg.js.map +0 -1
  1761. package/components/Icon/images/cross_default.svg.mjs +0 -2
  1762. package/components/Icon/images/cross_default.svg.mjs.map +0 -1
  1763. package/components/Icon/images/dialog_default.svg.js +0 -2
  1764. package/components/Icon/images/dialog_default.svg.js.map +0 -1
  1765. package/components/Icon/images/dialog_default.svg.mjs +0 -2
  1766. package/components/Icon/images/dialog_default.svg.mjs.map +0 -1
  1767. package/components/Icon/images/diamondFilled_default.svg.js +0 -2
  1768. package/components/Icon/images/diamondFilled_default.svg.js.map +0 -1
  1769. package/components/Icon/images/diamondFilled_default.svg.mjs +0 -2
  1770. package/components/Icon/images/diamondFilled_default.svg.mjs.map +0 -1
  1771. package/components/Icon/images/diamond_default.svg.js +0 -2
  1772. package/components/Icon/images/diamond_default.svg.js.map +0 -1
  1773. package/components/Icon/images/diamond_default.svg.mjs +0 -2
  1774. package/components/Icon/images/diamond_default.svg.mjs.map +0 -1
  1775. package/components/Icon/images/discount_default.svg.js +0 -2
  1776. package/components/Icon/images/discount_default.svg.js.map +0 -1
  1777. package/components/Icon/images/discount_default.svg.mjs +0 -2
  1778. package/components/Icon/images/discount_default.svg.mjs.map +0 -1
  1779. package/components/Icon/images/document_default.svg.js +0 -2
  1780. package/components/Icon/images/document_default.svg.js.map +0 -1
  1781. package/components/Icon/images/document_default.svg.mjs +0 -2
  1782. package/components/Icon/images/document_default.svg.mjs.map +0 -1
  1783. package/components/Icon/images/dropDownArrow_default.svg.js +0 -2
  1784. package/components/Icon/images/dropDownArrow_default.svg.js.map +0 -1
  1785. package/components/Icon/images/dropDownArrow_default.svg.mjs +0 -2
  1786. package/components/Icon/images/dropDownArrow_default.svg.mjs.map +0 -1
  1787. package/components/Icon/images/edit_default.svg.js +0 -2
  1788. package/components/Icon/images/edit_default.svg.js.map +0 -1
  1789. package/components/Icon/images/edit_default.svg.mjs +0 -2
  1790. package/components/Icon/images/edit_default.svg.mjs.map +0 -1
  1791. package/components/Icon/images/email_default.svg.js +0 -2
  1792. package/components/Icon/images/email_default.svg.js.map +0 -1
  1793. package/components/Icon/images/email_default.svg.mjs +0 -2
  1794. package/components/Icon/images/email_default.svg.mjs.map +0 -1
  1795. package/components/Icon/images/externalLink_default.svg.js +0 -2
  1796. package/components/Icon/images/externalLink_default.svg.js.map +0 -1
  1797. package/components/Icon/images/externalLink_default.svg.mjs +0 -2
  1798. package/components/Icon/images/externalLink_default.svg.mjs.map +0 -1
  1799. package/components/Icon/images/externat_default.svg.js +0 -2
  1800. package/components/Icon/images/externat_default.svg.js.map +0 -1
  1801. package/components/Icon/images/externat_default.svg.mjs +0 -2
  1802. package/components/Icon/images/externat_default.svg.mjs.map +0 -1
  1803. package/components/Icon/images/eye_default.svg.js +0 -2
  1804. package/components/Icon/images/eye_default.svg.js.map +0 -1
  1805. package/components/Icon/images/eye_default.svg.mjs +0 -2
  1806. package/components/Icon/images/eye_default.svg.mjs.map +0 -1
  1807. package/components/Icon/images/fileBordered_default.svg.js +0 -2
  1808. package/components/Icon/images/fileBordered_default.svg.js.map +0 -1
  1809. package/components/Icon/images/fileBordered_default.svg.mjs +0 -2
  1810. package/components/Icon/images/fileBordered_default.svg.mjs.map +0 -1
  1811. package/components/Icon/images/file_default.svg.js +0 -2
  1812. package/components/Icon/images/file_default.svg.js.map +0 -1
  1813. package/components/Icon/images/file_default.svg.mjs +0 -2
  1814. package/components/Icon/images/file_default.svg.mjs.map +0 -1
  1815. package/components/Icon/images/fire_default.svg.js +0 -2
  1816. package/components/Icon/images/fire_default.svg.js.map +0 -1
  1817. package/components/Icon/images/fire_default.svg.mjs +0 -2
  1818. package/components/Icon/images/fire_default.svg.mjs.map +0 -1
  1819. package/components/Icon/images/headphones_default.svg.js +0 -2
  1820. package/components/Icon/images/headphones_default.svg.js.map +0 -1
  1821. package/components/Icon/images/headphones_default.svg.mjs +0 -2
  1822. package/components/Icon/images/headphones_default.svg.mjs.map +0 -1
  1823. package/components/Icon/images/home_default.svg.js +0 -2
  1824. package/components/Icon/images/home_default.svg.js.map +0 -1
  1825. package/components/Icon/images/home_default.svg.mjs +0 -2
  1826. package/components/Icon/images/home_default.svg.mjs.map +0 -1
  1827. package/components/Icon/images/infoInverse_default.svg.js +0 -2
  1828. package/components/Icon/images/infoInverse_default.svg.js.map +0 -1
  1829. package/components/Icon/images/infoInverse_default.svg.mjs +0 -2
  1830. package/components/Icon/images/infoInverse_default.svg.mjs.map +0 -1
  1831. package/components/Icon/images/info_default.svg.js +0 -2
  1832. package/components/Icon/images/info_default.svg.js.map +0 -1
  1833. package/components/Icon/images/info_default.svg.mjs +0 -2
  1834. package/components/Icon/images/info_default.svg.mjs.map +0 -1
  1835. package/components/Icon/images/lessons_default.svg.js +0 -2
  1836. package/components/Icon/images/lessons_default.svg.js.map +0 -1
  1837. package/components/Icon/images/lessons_default.svg.mjs +0 -2
  1838. package/components/Icon/images/lessons_default.svg.mjs.map +0 -1
  1839. package/components/Icon/images/list_default.svg.js +0 -2
  1840. package/components/Icon/images/list_default.svg.js.map +0 -1
  1841. package/components/Icon/images/list_default.svg.mjs +0 -2
  1842. package/components/Icon/images/list_default.svg.mjs.map +0 -1
  1843. package/components/Icon/images/login_default.svg.js +0 -2
  1844. package/components/Icon/images/login_default.svg.js.map +0 -1
  1845. package/components/Icon/images/login_default.svg.mjs +0 -2
  1846. package/components/Icon/images/login_default.svg.mjs.map +0 -1
  1847. package/components/Icon/images/logout_default.svg.js +0 -2
  1848. package/components/Icon/images/logout_default.svg.js.map +0 -1
  1849. package/components/Icon/images/logout_default.svg.mjs +0 -2
  1850. package/components/Icon/images/logout_default.svg.mjs.map +0 -1
  1851. package/components/Icon/images/message_default.svg.js +0 -2
  1852. package/components/Icon/images/message_default.svg.js.map +0 -1
  1853. package/components/Icon/images/message_default.svg.mjs +0 -2
  1854. package/components/Icon/images/message_default.svg.mjs.map +0 -1
  1855. package/components/Icon/images/objective_default.svg.js +0 -2
  1856. package/components/Icon/images/objective_default.svg.js.map +0 -1
  1857. package/components/Icon/images/objective_default.svg.mjs +0 -2
  1858. package/components/Icon/images/objective_default.svg.mjs.map +0 -1
  1859. package/components/Icon/images/page_default.svg.js +0 -2
  1860. package/components/Icon/images/page_default.svg.js.map +0 -1
  1861. package/components/Icon/images/page_default.svg.mjs +0 -2
  1862. package/components/Icon/images/page_default.svg.mjs.map +0 -1
  1863. package/components/Icon/images/pencil_default.svg.js +0 -2
  1864. package/components/Icon/images/pencil_default.svg.js.map +0 -1
  1865. package/components/Icon/images/pencil_default.svg.mjs +0 -2
  1866. package/components/Icon/images/pencil_default.svg.mjs.map +0 -1
  1867. package/components/Icon/images/person_default.svg.js +0 -2
  1868. package/components/Icon/images/person_default.svg.js.map +0 -1
  1869. package/components/Icon/images/person_default.svg.mjs +0 -2
  1870. package/components/Icon/images/person_default.svg.mjs.map +0 -1
  1871. package/components/Icon/images/phoneNoFill_default.svg.js +0 -2
  1872. package/components/Icon/images/phoneNoFill_default.svg.js.map +0 -1
  1873. package/components/Icon/images/phoneNoFill_default.svg.mjs +0 -2
  1874. package/components/Icon/images/phoneNoFill_default.svg.mjs.map +0 -1
  1875. package/components/Icon/images/phone_default.svg.js +0 -2
  1876. package/components/Icon/images/phone_default.svg.js.map +0 -1
  1877. package/components/Icon/images/phone_default.svg.mjs +0 -2
  1878. package/components/Icon/images/phone_default.svg.mjs.map +0 -1
  1879. package/components/Icon/images/playPause_default.svg.js +0 -2
  1880. package/components/Icon/images/playPause_default.svg.js.map +0 -1
  1881. package/components/Icon/images/playPause_default.svg.mjs +0 -2
  1882. package/components/Icon/images/playPause_default.svg.mjs.map +0 -1
  1883. package/components/Icon/images/play_default.svg.js +0 -2
  1884. package/components/Icon/images/play_default.svg.js.map +0 -1
  1885. package/components/Icon/images/play_default.svg.mjs +0 -2
  1886. package/components/Icon/images/play_default.svg.mjs.map +0 -1
  1887. package/components/Icon/images/plusThin_default.svg.js +0 -2
  1888. package/components/Icon/images/plusThin_default.svg.js.map +0 -1
  1889. package/components/Icon/images/plusThin_default.svg.mjs +0 -2
  1890. package/components/Icon/images/plusThin_default.svg.mjs.map +0 -1
  1891. package/components/Icon/images/plus_default.svg.js +0 -2
  1892. package/components/Icon/images/plus_default.svg.js.map +0 -1
  1893. package/components/Icon/images/plus_default.svg.mjs +0 -2
  1894. package/components/Icon/images/plus_default.svg.mjs.map +0 -1
  1895. package/components/Icon/images/present_default.svg.js +0 -2
  1896. package/components/Icon/images/present_default.svg.js.map +0 -1
  1897. package/components/Icon/images/present_default.svg.mjs +0 -2
  1898. package/components/Icon/images/present_default.svg.mjs.map +0 -1
  1899. package/components/Icon/images/priceTag_default.svg.js +0 -2
  1900. package/components/Icon/images/priceTag_default.svg.js.map +0 -1
  1901. package/components/Icon/images/priceTag_default.svg.mjs +0 -2
  1902. package/components/Icon/images/priceTag_default.svg.mjs.map +0 -1
  1903. package/components/Icon/images/print_default.svg.js +0 -2
  1904. package/components/Icon/images/print_default.svg.js.map +0 -1
  1905. package/components/Icon/images/print_default.svg.mjs +0 -2
  1906. package/components/Icon/images/print_default.svg.mjs.map +0 -1
  1907. package/components/Icon/images/prof_default.svg.js +0 -2
  1908. package/components/Icon/images/prof_default.svg.js.map +0 -1
  1909. package/components/Icon/images/prof_default.svg.mjs +0 -2
  1910. package/components/Icon/images/prof_default.svg.mjs.map +0 -1
  1911. package/components/Icon/images/questionFilled_default.svg.js +0 -2
  1912. package/components/Icon/images/questionFilled_default.svg.js.map +0 -1
  1913. package/components/Icon/images/questionFilled_default.svg.mjs +0 -2
  1914. package/components/Icon/images/questionFilled_default.svg.mjs.map +0 -1
  1915. package/components/Icon/images/radioChecked_default.svg.js +0 -2
  1916. package/components/Icon/images/radioChecked_default.svg.js.map +0 -1
  1917. package/components/Icon/images/radioChecked_default.svg.mjs +0 -2
  1918. package/components/Icon/images/radioChecked_default.svg.mjs.map +0 -1
  1919. package/components/Icon/images/radioNotChecked_default.svg.js +0 -2
  1920. package/components/Icon/images/radioNotChecked_default.svg.js.map +0 -1
  1921. package/components/Icon/images/radioNotChecked_default.svg.mjs +0 -2
  1922. package/components/Icon/images/radioNotChecked_default.svg.mjs.map +0 -1
  1923. package/components/Icon/images/reload_default.svg.js +0 -2
  1924. package/components/Icon/images/reload_default.svg.js.map +0 -1
  1925. package/components/Icon/images/reload_default.svg.mjs +0 -2
  1926. package/components/Icon/images/reload_default.svg.mjs.map +0 -1
  1927. package/components/Icon/images/search_default.svg.js +0 -2
  1928. package/components/Icon/images/search_default.svg.js.map +0 -1
  1929. package/components/Icon/images/search_default.svg.mjs +0 -2
  1930. package/components/Icon/images/search_default.svg.mjs.map +0 -1
  1931. package/components/Icon/images/settings_default.svg.js +0 -2
  1932. package/components/Icon/images/settings_default.svg.js.map +0 -1
  1933. package/components/Icon/images/settings_default.svg.mjs +0 -2
  1934. package/components/Icon/images/settings_default.svg.mjs.map +0 -1
  1935. package/components/Icon/images/sharpCross_default.svg.js +0 -2
  1936. package/components/Icon/images/sharpCross_default.svg.js.map +0 -1
  1937. package/components/Icon/images/sharpCross_default.svg.mjs +0 -2
  1938. package/components/Icon/images/sharpCross_default.svg.mjs.map +0 -1
  1939. package/components/Icon/images/sort_default.svg.js +0 -2
  1940. package/components/Icon/images/sort_default.svg.js.map +0 -1
  1941. package/components/Icon/images/sort_default.svg.mjs +0 -2
  1942. package/components/Icon/images/sort_default.svg.mjs.map +0 -1
  1943. package/components/Icon/images/star_default.svg.js +0 -2
  1944. package/components/Icon/images/star_default.svg.js.map +0 -1
  1945. package/components/Icon/images/star_default.svg.mjs +0 -2
  1946. package/components/Icon/images/star_default.svg.mjs.map +0 -1
  1947. package/components/Icon/images/student_default.svg.js +0 -2
  1948. package/components/Icon/images/student_default.svg.js.map +0 -1
  1949. package/components/Icon/images/student_default.svg.mjs +0 -2
  1950. package/components/Icon/images/student_default.svg.mjs.map +0 -1
  1951. package/components/Icon/images/target_default.svg.js +0 -2
  1952. package/components/Icon/images/target_default.svg.js.map +0 -1
  1953. package/components/Icon/images/target_default.svg.mjs +0 -2
  1954. package/components/Icon/images/target_default.svg.mjs.map +0 -1
  1955. package/components/Icon/images/tasks_default.svg.js +0 -2
  1956. package/components/Icon/images/tasks_default.svg.js.map +0 -1
  1957. package/components/Icon/images/tasks_default.svg.mjs +0 -2
  1958. package/components/Icon/images/tasks_default.svg.mjs.map +0 -1
  1959. package/components/Icon/images/textbook_default.svg.js +0 -2
  1960. package/components/Icon/images/textbook_default.svg.js.map +0 -1
  1961. package/components/Icon/images/textbook_default.svg.mjs +0 -2
  1962. package/components/Icon/images/textbook_default.svg.mjs.map +0 -1
  1963. package/components/Icon/images/tinyCross_default.svg.js +0 -2
  1964. package/components/Icon/images/tinyCross_default.svg.js.map +0 -1
  1965. package/components/Icon/images/tinyCross_default.svg.mjs +0 -2
  1966. package/components/Icon/images/tinyCross_default.svg.mjs.map +0 -1
  1967. package/components/Icon/images/trophy_default.svg.js +0 -2
  1968. package/components/Icon/images/trophy_default.svg.js.map +0 -1
  1969. package/components/Icon/images/trophy_default.svg.mjs +0 -2
  1970. package/components/Icon/images/trophy_default.svg.mjs.map +0 -1
  1971. package/components/Icon/images/unsort_default.svg.js +0 -2
  1972. package/components/Icon/images/unsort_default.svg.js.map +0 -1
  1973. package/components/Icon/images/unsort_default.svg.mjs +0 -2
  1974. package/components/Icon/images/unsort_default.svg.mjs.map +0 -1
  1975. package/components/Icon/images/video_default.svg.js +0 -2
  1976. package/components/Icon/images/video_default.svg.js.map +0 -1
  1977. package/components/Icon/images/video_default.svg.mjs +0 -2
  1978. package/components/Icon/images/video_default.svg.mjs.map +0 -1
  1979. package/components/Icon/images/wallet_default.svg.js +0 -2
  1980. package/components/Icon/images/wallet_default.svg.js.map +0 -1
  1981. package/components/Icon/images/wallet_default.svg.mjs +0 -2
  1982. package/components/Icon/images/wallet_default.svg.mjs.map +0 -1
  1983. package/components/Icon/sizes.js +0 -2
  1984. package/components/Icon/sizes.js.map +0 -1
  1985. package/components/Icon/sizes.mjs +0 -2
  1986. package/components/Icon/sizes.mjs.map +0 -1
  1987. package/components/Modal/images/tinyCrossDefault.svg.js +0 -2
  1988. package/components/Modal/images/tinyCrossDefault.svg.js.map +0 -1
  1989. package/components/Modal/images/tinyCrossDefault.svg.mjs +0 -2
  1990. package/components/Modal/images/tinyCrossDefault.svg.mjs.map +0 -1
  1991. package/icon-pack/src/collection.json.js +0 -2
  1992. package/icon-pack/src/collection.json.js.map +0 -1
  1993. package/icon-pack/src/collection.json.mjs +0 -2
  1994. package/icon-pack/src/collection.json.mjs.map +0 -1
  1995. package/icon-pack/src/icons/ArrowUp/index.js +0 -2
  1996. package/icon-pack/src/icons/ArrowUp/index.js.map +0 -1
  1997. package/icon-pack/src/icons/ArrowUp/index.mjs +0 -2
  1998. package/icon-pack/src/icons/ArrowUp/index.mjs.map +0 -1
  1999. package/icon-pack/src/icons/CheckCircle/index.js +0 -2
  2000. package/icon-pack/src/icons/CheckCircle/index.js.map +0 -1
  2001. package/icon-pack/src/icons/CheckCircle/index.mjs +0 -2
  2002. package/icon-pack/src/icons/CheckCircle/index.mjs.map +0 -1
  2003. package/icon-pack/src/icons/CheckCircleFill/index.js +0 -2
  2004. package/icon-pack/src/icons/CheckCircleFill/index.js.map +0 -1
  2005. package/icon-pack/src/icons/CheckCircleFill/index.mjs +0 -2
  2006. package/icon-pack/src/icons/CheckCircleFill/index.mjs.map +0 -1
  2007. package/icon-pack/src/icons/CheckFill/index.js +0 -2
  2008. package/icon-pack/src/icons/CheckFill/index.js.map +0 -1
  2009. package/icon-pack/src/icons/CheckFill/index.mjs +0 -2
  2010. package/icon-pack/src/icons/CheckFill/index.mjs.map +0 -1
  2011. package/icon-pack/src/icons/ChevronDown/index.js +0 -2
  2012. package/icon-pack/src/icons/ChevronDown/index.js.map +0 -1
  2013. package/icon-pack/src/icons/ChevronDown/index.mjs +0 -2
  2014. package/icon-pack/src/icons/ChevronDown/index.mjs.map +0 -1
  2015. package/icon-pack/src/icons/ChevronLeft/index.js +0 -2
  2016. package/icon-pack/src/icons/ChevronLeft/index.js.map +0 -1
  2017. package/icon-pack/src/icons/ChevronLeft/index.mjs +0 -2
  2018. package/icon-pack/src/icons/ChevronLeft/index.mjs.map +0 -1
  2019. package/icon-pack/src/icons/ChevronRight/index.js +0 -2
  2020. package/icon-pack/src/icons/ChevronRight/index.js.map +0 -1
  2021. package/icon-pack/src/icons/ChevronRight/index.mjs +0 -2
  2022. package/icon-pack/src/icons/ChevronRight/index.mjs.map +0 -1
  2023. package/icon-pack/src/icons/Close/index.js +0 -2
  2024. package/icon-pack/src/icons/Close/index.js.map +0 -1
  2025. package/icon-pack/src/icons/Close/index.mjs +0 -2
  2026. package/icon-pack/src/icons/Close/index.mjs.map +0 -1
  2027. package/icon-pack/src/icons/CloseCirlce/index.js +0 -2
  2028. package/icon-pack/src/icons/CloseCirlce/index.js.map +0 -1
  2029. package/icon-pack/src/icons/CloseCirlce/index.mjs +0 -2
  2030. package/icon-pack/src/icons/CloseCirlce/index.mjs.map +0 -1
  2031. package/icon-pack/src/icons/CloseCirlceFill/index.js +0 -2
  2032. package/icon-pack/src/icons/CloseCirlceFill/index.js.map +0 -1
  2033. package/icon-pack/src/icons/CloseCirlceFill/index.mjs +0 -2
  2034. package/icon-pack/src/icons/CloseCirlceFill/index.mjs.map +0 -1
  2035. package/icon-pack/src/icons/HelpCircle/index.js +0 -2
  2036. package/icon-pack/src/icons/HelpCircle/index.js.map +0 -1
  2037. package/icon-pack/src/icons/HelpCircle/index.mjs +0 -2
  2038. package/icon-pack/src/icons/HelpCircle/index.mjs.map +0 -1
  2039. package/icon-pack/src/icons/InfoCircle/index.js +0 -2
  2040. package/icon-pack/src/icons/InfoCircle/index.js.map +0 -1
  2041. package/icon-pack/src/icons/InfoCircle/index.mjs +0 -2
  2042. package/icon-pack/src/icons/InfoCircle/index.mjs.map +0 -1
  2043. package/icon-pack/src/icons/LoaderFill/index.js +0 -2
  2044. package/icon-pack/src/icons/LoaderFill/index.js.map +0 -1
  2045. package/icon-pack/src/icons/LoaderFill/index.mjs +0 -2
  2046. package/icon-pack/src/icons/LoaderFill/index.mjs.map +0 -1
  2047. package/icon-pack/src/icons/Minus/index.js +0 -2
  2048. package/icon-pack/src/icons/Minus/index.js.map +0 -1
  2049. package/icon-pack/src/icons/Minus/index.mjs +0 -2
  2050. package/icon-pack/src/icons/Minus/index.mjs.map +0 -1
  2051. package/icon-pack/src/icons/MinusFill/index.js +0 -2
  2052. package/icon-pack/src/icons/MinusFill/index.js.map +0 -1
  2053. package/icon-pack/src/icons/MinusFill/index.mjs +0 -2
  2054. package/icon-pack/src/icons/MinusFill/index.mjs.map +0 -1
  2055. package/icon-pack/src/icons/NotifFill/index.js +0 -2
  2056. package/icon-pack/src/icons/NotifFill/index.js.map +0 -1
  2057. package/icon-pack/src/icons/NotifFill/index.mjs +0 -2
  2058. package/icon-pack/src/icons/NotifFill/index.mjs.map +0 -1
  2059. package/icon-pack/src/icons/Plus/index.js +0 -2
  2060. package/icon-pack/src/icons/Plus/index.js.map +0 -1
  2061. package/icon-pack/src/icons/Plus/index.mjs +0 -2
  2062. package/icon-pack/src/icons/Plus/index.mjs.map +0 -1
  2063. package/icon-pack/src/icons/Redo/index.js +0 -2
  2064. package/icon-pack/src/icons/Redo/index.js.map +0 -1
  2065. package/icon-pack/src/icons/Redo/index.mjs +0 -2
  2066. package/icon-pack/src/icons/Redo/index.mjs.map +0 -1
  2067. package/icon-pack/src/icons/ResizeHandle/index.js +0 -2
  2068. package/icon-pack/src/icons/ResizeHandle/index.js.map +0 -1
  2069. package/icon-pack/src/icons/ResizeHandle/index.mjs +0 -2
  2070. package/icon-pack/src/icons/ResizeHandle/index.mjs.map +0 -1
  2071. package/icon-pack/src/icons/StarFill/index.js +0 -2
  2072. package/icon-pack/src/icons/StarFill/index.js.map +0 -1
  2073. package/icon-pack/src/icons/StarFill/index.mjs +0 -2
  2074. package/icon-pack/src/icons/StarFill/index.mjs.map +0 -1
  2075. package/icon-pack/src/icons/WarningTriangle/index.js +0 -2
  2076. package/icon-pack/src/icons/WarningTriangle/index.js.map +0 -1
  2077. package/icon-pack/src/icons/WarningTriangle/index.mjs +0 -2
  2078. package/icon-pack/src/icons/WarningTriangle/index.mjs.map +0 -1
  2079. package/icon-pack/src/icons/WarningTriangleFill/index.js +0 -2
  2080. package/icon-pack/src/icons/WarningTriangleFill/index.js.map +0 -1
  2081. package/icon-pack/src/icons/WarningTriangleFill/index.mjs +0 -2
  2082. package/icon-pack/src/icons/WarningTriangleFill/index.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import { forwardRef, useState, useRef, useEffect, useLayoutEffect, useMemo, useCallback } from 'react'\nimport { nanoid } from 'nanoid'\nimport { Close } from '@foxford/icon-pack'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport type { MergedProps } from 'hocs/withMergedProps'\nimport { useScrollMonitor } from 'hooks/useScrollMonitor'\nimport { focusFirstFocusable, focusLastFocusable } from 'shared/utils/dom'\nimport { createDebouncedCallback } from 'shared/utils/misc'\nimport { keyboardKeys } from 'shared/constants'\nimport type { Nullable } from 'shared/types'\nimport { FormInput } from 'components/FormInput'\nimport { FormInputLabel } from 'components/FormInputLabel'\nimport { MenuList } from 'components/MenuList'\nimport { MenuDivider } from 'components/MenuDivider'\nimport { ListItem } from 'components/ListItem'\nimport { InputCheckbox } from 'components/InputCheckbox'\nimport { Chip } from 'components/Chip'\nimport { IconButton } from 'components/IconButton'\nimport type { IconProps } from 'components/Icon'\nimport { DropdownMenu } from './DropdownMenu'\nimport { useFilteredOptions, useLoadedOptions } from './hooks'\nimport { SIZES, SIZES_CHECKBOX, SIZES_ICON } from './sizes'\nimport { getDropdownInputText, getDropdownSelectedOption, groupDropdownOptions } from './utils'\nimport * as Styled from './style'\nimport type { DropdownProps, DropdownOption } from './types'\n\nconst COMPONENT_NAME = 'Dropdown'\n\n/**\n *\n * Компонент для выбора одной или нескольких опций из числа доступных.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<div\\> элемента.\n */\nconst Dropdown: React.ForwardRefExoticComponent<DropdownProps> = withMergedProps<DropdownProps, HTMLDivElement>(\n forwardRef<HTMLDivElement, MergedProps<DropdownProps>>((props, ref) => {\n const {\n size = 'm',\n name = 'fox-dropdown',\n labelPosition = 'dynamic',\n searchable = true,\n primary = true,\n optionsMultiToggle = true,\n iconProps = {},\n menuProps = {},\n loadingIconProps = {},\n optionsEmptyIconProps = {},\n loading,\n autoFocus,\n disableAutoScrollToSelectedOption,\n closeMenuOnScroll,\n scrollMonitorTarget,\n contrast,\n selectedOption,\n defaultSelectedOption,\n icon,\n inputMode,\n loadingMessage,\n loadingIcon,\n maxLength,\n multiple,\n clearable,\n onChangeInput,\n onCloseMenu,\n onOpenMenu,\n onSelectOption,\n options,\n loadOptions,\n groupSelectedOptions,\n optionsMultiToggleCaption,\n optionsEmptyMessage,\n optionsEmptyIcon,\n palette,\n placeholder,\n readOnly,\n required,\n status,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n form,\n label,\n ...rootProps\n } = props\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconBaseProps: IconProps = {\n sizes: SIZES_ICON,\n color: rootProps.disabled ? 'content-disabled' : 'content-onmain-tertiary',\n }\n\n const formInputLabelId = useMemo(() => rootProps.id ?? `${name}-${nanoid()}`, [name, rootProps.id])\n const inputLabelId = useMemo(() => nanoid(), [])\n const menuListId = useMemo(() => nanoid(), [])\n\n const [filteredOptions, getFilteredOptions] = useFilteredOptions({\n options,\n })\n\n const [loadedOptions, optionsLoading, getLoadedOptions] = useLoadedOptions({\n loadOptions,\n options,\n })\n\n const [dropdownSelectedOption, setDropdownSelectedOption] = useState<DropdownOption[]>(() =>\n getDropdownSelectedOption(selectedOption !== undefined ? selectedOption : defaultSelectedOption, multiple)\n )\n\n const [inputText, setInputText] = useState<string>(() => getDropdownInputText(dropdownSelectedOption, multiple))\n\n const [focusWithin, setFocusWithin] = useState<boolean>(false)\n\n const [menuOpenRequest, setMenuOpenRequest] = useState<boolean>(false)\n\n const menuOptions: DropdownOption[] = loadOptions ? loadedOptions : filteredOptions\n const menuOptionsLoading = loadOptions ? (loading ?? optionsLoading) : loading\n\n const menuOptionsGroups: ReturnType<typeof groupDropdownOptions> = useMemo(\n () => (multiple ? groupDropdownOptions(menuOptions, dropdownSelectedOption) : [[], []]),\n [multiple, menuOptions, dropdownSelectedOption]\n )\n\n const menuOpen = menuOpenRequest && !rootProps.disabled\n\n const inputRequired = required && dropdownSelectedOption.length === 0\n const inputActive = Boolean(menuOpen || inputText || focusWithin)\n\n const multiToggleChecked = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length === 0\n const multiToggleIndeterminate = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0\n\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuRef, setMenuRef] = useState<Nullable<HTMLElement>>(null)\n const menuListRef = useRef<HTMLUListElement>(null)\n const selectedOptionRef = useRef<HTMLElement>(null)\n const menuOpenPrevRef = useRef<boolean>(menuOpen)\n\n const updateInputText = useCallback(\n (inputTextValue: string) => {\n setInputText(inputTextValue)\n\n if (onChangeInput) {\n onChangeInput(inputTextValue)\n }\n },\n [onChangeInput]\n )\n\n const updateOptions = useCallback(\n (inputTextValue: string) => {\n if (loadOptions) {\n getLoadedOptions(inputTextValue)\n } else {\n getFilteredOptions(inputTextValue)\n }\n },\n [loadOptions, getLoadedOptions, getFilteredOptions]\n )\n\n const updateOptionsDebounced = useMemo(() => {\n return createDebouncedCallback(updateOptions, 150)\n }, [updateOptions])\n\n const preventBlur = (evt: React.PointerEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n if (\n evt.target !== inputRef.current &&\n evt.target instanceof Node &&\n (evt.currentTarget.contains(evt.target) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.target)))\n ) {\n evt.preventDefault()\n }\n }\n\n useScrollMonitor({\n target: scrollMonitorTarget,\n onScrollStart: () => {\n if (closeMenuOnScroll && menuOpen) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n },\n })\n\n useLayoutEffect(() => {\n if (selectedOption === undefined) return\n\n if (!multiple && !menuOpen) {\n updateInputText(getDropdownInputText(selectedOption))\n }\n setDropdownSelectedOption(getDropdownSelectedOption(selectedOption, multiple))\n }, [multiple, selectedOption, menuOpen, updateInputText])\n\n useEffect(() => {\n if (menuOpen === menuOpenPrevRef.current) return\n\n if (menuOpen && onOpenMenu) onOpenMenu()\n if (!menuOpen && onCloseMenu) onCloseMenu()\n\n menuOpenPrevRef.current = menuOpen\n }, [menuOpen, onCloseMenu, onOpenMenu])\n\n useEffect(() => {\n if (\n !multiple &&\n !disableAutoScrollToSelectedOption &&\n menuOpen &&\n !menuOptionsLoading &&\n inputText.length === 0 &&\n menuRef &&\n selectedOptionRef.current\n ) {\n const menuRect = menuRef.getBoundingClientRect()\n const selectedOptionRect = selectedOptionRef.current.getBoundingClientRect()\n\n if (selectedOptionRect.top < menuRect.top || selectedOptionRect.bottom > menuRect.bottom) {\n setTimeout(() => {\n if (menuRef && selectedOptionRef.current) {\n menuRef.scrollTo(0, selectedOptionRef.current.offsetTop)\n }\n }, 0)\n }\n }\n }, [multiple, disableAutoScrollToSelectedOption, menuOpen, menuOptionsLoading, inputText, menuRef])\n\n return (\n <FormInputLabel\n {...rootProps}\n {...sizeProps}\n ref={ref}\n id={formInputLabelId}\n onColored={contrast}\n primary={primary}\n error={status === 'error'}\n success={status === 'success'}\n focus={focusWithin}\n icon={[icon, <Styled.ChevronIcon key='chevron' up={menuOpen} />]}\n iconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...iconProps,\n }}\n palette={{\n color: rootProps.disabled ? palette.labelColorDisabled : palette.labelColor,\n backgroundColor: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColor,\n backgroundColorHover: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColorHover,\n borderColor: rootProps.disabled ? palette.borderColorDisabled : palette.borderColor,\n }}\n onClick={(evt) => {\n if (rootProps.onClick) rootProps.onClick(evt)\n\n if (rootProps.disabled) return\n\n inputRef.current?.focus()\n\n if (!menuOpen) {\n setMenuOpenRequest(true)\n\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n } else if (menuRef && evt.target instanceof Node && !menuRef.contains(evt.target)) {\n setMenuOpenRequest(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n }\n }}\n onPointerDown={(evt) => {\n if (rootProps.onPointerDown) rootProps.onPointerDown(evt)\n\n preventBlur(evt)\n }}\n onMouseDown={(evt) => {\n if (rootProps.onMouseDown) rootProps.onMouseDown(evt)\n\n if (!window.PointerEvent) preventBlur(evt)\n }}\n onFocus={(evt) => {\n if (rootProps.onFocus) rootProps.onFocus(evt)\n\n setFocusWithin(true)\n\n if (inputRef.current && evt.target === inputRef.current && searchable && !multiple && !menuOpen) {\n updateInputText('')\n }\n }}\n onBlur={(evt) => {\n if (rootProps.onBlur) rootProps.onBlur(evt)\n\n if (\n evt.currentTarget.contains(evt.relatedTarget) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.relatedTarget))\n ) {\n return\n }\n\n setFocusWithin(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }}\n input={\n <>\n {inputRequired && !searchable && !readOnly ? (\n <Styled.InputMimic\n required\n type='text'\n inputMode='none'\n form={form}\n tabIndex={-1}\n onFocus={() => {\n inputRef.current?.focus()\n }}\n />\n ) : null}\n <FormInput\n {...sizeProps}\n ref={inputRef}\n role='combobox'\n aria-controls={menuListId}\n aria-expanded={menuOpen}\n type='text'\n autoComplete='off'\n autoCapitalize='off'\n autoCorrect='off'\n spellCheck='false'\n active={inputActive}\n label={label}\n labelId={inputLabelId}\n labelPosition={labelPosition}\n form={form}\n autoFocus={autoFocus}\n inputMode={searchable ? inputMode : 'none'}\n maxLength={maxLength}\n placeholder={placeholder}\n readOnly={readOnly || !searchable}\n required={inputRequired}\n disabled={rootProps.disabled}\n value={inputText}\n palette={{\n color: palette.color,\n colorDisabled: palette.colorDisabled,\n placeholderColor: palette.placeholderColor,\n placeholderColorDisabled: palette.placeholderColorDisabled,\n }}\n onClick={(evt) => {\n if (menuOpen && evt.currentTarget.selectionStart !== evt.currentTarget.selectionEnd) {\n evt.stopPropagation()\n }\n }}\n onChange={(evt) => {\n const inputValue = evt.currentTarget.value\n\n updateInputText(inputValue)\n updateOptionsDebounced(inputValue)\n setMenuOpenRequest(true)\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Enter.validate(evt.key)) {\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Space.validate(evt.key) && (!menuOpen || evt.currentTarget.selectionStart === 0)) {\n evt.preventDefault()\n\n if (!menuOpen) {\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n }\n\n setMenuOpenRequest((prev) => !prev)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Tab.validate(evt.key) && menuOpen) {\n evt.preventDefault()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.ArrowDown.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx + 1] ?? menuItems[0]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusFirstFocusable(menuListRef.current)\n }\n }\n\n if (keyboardKeys.ArrowUp.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx - 1] ?? menuItems[menuItems.length - 1]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusLastFocusable(menuListRef.current)\n }\n }\n }}\n />\n {dropdownSelectedOption.map((option) => (\n <input\n key={option.value}\n type='hidden'\n name={name}\n value={option.value}\n form={form}\n disabled={rootProps.disabled || option.disabled}\n />\n ))}\n </>\n }\n addon={\n <>\n {multiple && dropdownSelectedOption.length > 0 ? (\n <Chip\n size='xs'\n active\n black\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n cursor={rootProps.disabled ? 'not-allowed' : undefined}\n text={dropdownSelectedOption.length}\n textProps={{\n appearance: 'caption',\n size: 'xs',\n }}\n palette={\n rootProps.disabled\n ? {\n color: 'content-disabled',\n colorHover: 'content-disabled',\n backgroundColor: 'bg-disabled-small',\n backgroundColorHover: 'bg-disabled-small',\n }\n : undefined\n }\n onPointerDown={(evt) => {\n evt.preventDefault()\n }}\n onMouseDown={(evt) => {\n if (!window.PointerEvent) evt.preventDefault()\n }}\n discardButtonProps={{\n square: true,\n contrast: !rootProps.disabled,\n onClick: (evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption([])\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n },\n }}\n />\n ) : null}\n {!multiple && clearable && dropdownSelectedOption.length > 0 ? (\n <IconButton\n icon={<Close />}\n size='l'\n square\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(null)\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n }}\n />\n ) : null}\n </>\n }\n dropdown={\n <DropdownMenu\n {...menuProps}\n setRef={setMenuRef}\n open={menuOpen}\n popperReferenceId={formInputLabelId}\n secondary={!contrast}\n elevated={contrast}\n disableAutoFocus\n palette={{\n backgroundColor: palette.menuBackgroundColor,\n borderColor: palette.menuBorderColor,\n }}\n empty={menuOptions.length === 0}\n loading={menuOptionsLoading}\n loadingMessage={loadingMessage}\n loadingIcon={loadingIcon}\n loadingIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...loadingIconProps,\n }}\n emptyMessage={optionsEmptyMessage}\n emptyIcon={optionsEmptyIcon}\n emptyIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...optionsEmptyIconProps,\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Tab.validate(evt.key)) {\n evt.preventDefault()\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Enter.validate(evt.key)) {\n inputRef.current?.focus()\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Backspace.validate(evt.key) && !readOnly && (multiple || (!multiple && clearable))) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(multiple ? [] : null)\n\n updateInputText('')\n updateOptions('')\n }\n }}\n >\n {multiple ? (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n aria-multiselectable\n >\n {inputText.length === 0 ? (\n <>\n {optionsMultiToggle ? (\n <ListItem\n {...sizeProps}\n text={optionsMultiToggleCaption}\n disabled={rootProps.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n name={name}\n checked={multiToggleChecked}\n indeterminate={multiToggleIndeterminate}\n error={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'error')}\n success={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'success')}\n onChange={() => {\n if (!readOnly) {\n const update =\n multiToggleChecked || multiToggleIndeterminate\n ? dropdownSelectedOption.filter((option) => option.disabled)\n : menuOptions.filter((option) => !option.disabled)\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ) : null}\n {optionsMultiToggle ? <MenuDivider /> : null}\n {groupSelectedOptions\n ? menuOptionsGroups[0].map((option) => {\n const optionStatus = option.status ?? status\n const optionErrorStatus = optionStatus === 'error'\n const optionSuccessStatus = optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n active\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected\n name={name}\n value={option.value}\n checked\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = dropdownSelectedOption.filter(\n (item) => item.value !== evt.currentTarget.value\n )\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })\n : null}\n {groupSelectedOptions && menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0 ? (\n <MenuDivider />\n ) : null}\n {groupSelectedOptions\n ? menuOptionsGroups[1].map((option) => (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={false}\n name={name}\n value={option.value}\n checked={false}\n onChange={() => {\n if (!readOnly) {\n const update = [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ))\n : null}\n {!groupSelectedOptions &&\n menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n ) : (\n <>\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n )}\n </MenuList>\n ) : (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n >\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n return (\n <ListItem\n {...sizeProps}\n role='option'\n aria-selected={selected}\n ref={selected ? selectedOptionRef : undefined}\n key={option.value}\n text={option.text}\n active={selected}\n danger={Boolean(selected && status === 'error')}\n success={Boolean(selected && status === 'success')}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n const update = { ...option }\n\n if (selectedOption === undefined) {\n updateInputText(getDropdownInputText(update))\n setDropdownSelectedOption(getDropdownSelectedOption(update))\n }\n\n if (onSelectOption) onSelectOption(update)\n\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n }}\n />\n )\n })}\n </MenuList>\n )}\n </DropdownMenu>\n }\n />\n )\n }),\n {\n sizes: SIZES,\n displayName: COMPONENT_NAME,\n }\n)\n\nexport { Dropdown, COMPONENT_NAME }\n"],"names":["Dropdown","withMergedProps","forwardRef","props","ref","size","name","labelPosition","searchable","primary","optionsMultiToggle","iconProps","menuProps","loadingIconProps","optionsEmptyIconProps","loading","autoFocus","disableAutoScrollToSelectedOption","closeMenuOnScroll","scrollMonitorTarget","contrast","selectedOption","defaultSelectedOption","icon","inputMode","loadingMessage","loadingIcon","maxLength","multiple","clearable","onChangeInput","onCloseMenu","onOpenMenu","onSelectOption","options","loadOptions","groupSelectedOptions","optionsMultiToggleCaption","optionsEmptyMessage","optionsEmptyIcon","palette","placeholder","readOnly","required","status","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","form","label","rootProps","sizeProps","iconBaseProps","sizes","SIZES_ICON","color","disabled","formInputLabelId","useMemo","id","nanoid","inputLabelId","menuListId","filteredOptions","getFilteredOptions","useFilteredOptions","loadedOptions","optionsLoading","getLoadedOptions","useLoadedOptions","dropdownSelectedOption","setDropdownSelectedOption","useState","getDropdownSelectedOption","undefined","inputText","setInputText","getDropdownInputText","focusWithin","setFocusWithin","menuOpenRequest","setMenuOpenRequest","menuOptions","menuOptionsLoading","menuOptionsGroups","groupDropdownOptions","menuOpen","inputRequired","length","inputActive","Boolean","multiToggleChecked","multiToggleIndeterminate","inputRef","useRef","menuRef","setMenuRef","menuListRef","selectedOptionRef","menuOpenPrevRef","updateInputText","useCallback","inputTextValue","updateOptions","updateOptionsDebounced","createDebouncedCallback","preventBlur","evt","target","current","Node","currentTarget","contains","renderInPortal","preventDefault","useScrollMonitor","onScrollStart","focus","useLayoutEffect","useEffect","menuRect","getBoundingClientRect","selectedOptionRect","top","bottom","setTimeout","scrollTo","offsetTop","_jsx","FormInputLabel","onColored","error","success","jsx","Styled","up","labelColorDisabled","labelColor","backgroundColor","backgroundColorDisabled","backgroundColorHover","borderColor","borderColorDisabled","onClick","onPointerDown","onMouseDown","window","PointerEvent","onFocus","onBlur","relatedTarget","input","_jsxs","jsxs","_Fragment","children","type","tabIndex","FormInput","role","autoComplete","autoCapitalize","autoCorrect","spellCheck","active","labelId","value","colorDisabled","placeholderColor","placeholderColorDisabled","selectionStart","selectionEnd","stopPropagation","onChange","inputValue","onKeyDown","keyboardKeys","Enter","validate","key","Space","prev","Esc","Tab","ArrowDown","menuItems","idx","findIndex","item","focusTarget","HTMLElement","focusFirstFocusable","ArrowUp","focusLastFocusable","map","option","addon","Chip","black","marginLeft","cursor","text","textProps","appearance","colorHover","discardButtonProps","square","IconButton","Close","dropdown","DropdownMenu","setRef","open","popperReferenceId","secondary","elevated","disableAutoFocus","menuBackgroundColor","menuBorderColor","empty","emptyMessage","emptyIcon","emptyIconProps","Backspace","MenuList","ListItem","borderRadius","ellipsis","wordBreak","control","InputCheckbox","SIZES_CHECKBOX","checked","indeterminate","update","filter","MenuDivider","optionStatus","optionErrorStatus","optionSuccessStatus","_createElement","danger","selected","SIZES","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import { forwardRef, useState, useRef, useEffect, useLayoutEffect, useMemo, useCallback } from 'react'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport type { MergedProps } from 'hocs/withMergedProps'\nimport { useScrollMonitor } from 'hooks/useScrollMonitor'\nimport { focusFirstFocusable, focusLastFocusable } from 'shared/utils/dom'\nimport { createDebouncedCallback } from 'shared/utils/misc'\nimport { keyboardKeys } from 'shared/constants'\nimport type { Nullable } from 'shared/types'\nimport { FormInput } from 'components/FormInput'\nimport { FormInputLabel } from 'components/FormInputLabel'\nimport { MenuList } from 'components/MenuList'\nimport { MenuDivider } from 'components/MenuDivider'\nimport { ListItem } from 'components/ListItem'\nimport { InputCheckbox } from 'components/InputCheckbox'\nimport { Chip } from 'components/Chip'\nimport { IconButton } from 'components/IconButton'\nimport type { IconProps } from 'components/Icon'\nimport { DropdownMenu } from './DropdownMenu'\nimport { useFilteredOptions, useLoadedOptions } from './hooks'\nimport { SIZES, SIZES_CHECKBOX, SIZES_ICON } from './sizes'\nimport { getDropdownInputText, getDropdownSelectedOption, groupDropdownOptions } from './utils'\nimport * as Styled from './style'\nimport type { DropdownProps, DropdownOption } from './types'\n\nconst COMPONENT_NAME = 'Dropdown'\n\n/**\n *\n * Компонент для выбора одной или нескольких опций из числа доступных.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<div\\> элемента.\n */\nconst Dropdown: React.ForwardRefExoticComponent<DropdownProps> = withMergedProps<DropdownProps, HTMLDivElement>(\n forwardRef<HTMLDivElement, MergedProps<DropdownProps>>((props, ref) => {\n const {\n size = 'm',\n name = 'fox-dropdown',\n labelPosition = 'dynamic',\n searchable = true,\n primary = true,\n optionsMultiToggle = true,\n iconProps = {},\n menuProps = {},\n loadingIconProps = {},\n optionsEmptyIconProps = {},\n loading,\n autoFocus,\n disableAutoScrollToSelectedOption,\n closeMenuOnScroll,\n scrollMonitorTarget,\n contrast,\n selectedOption,\n defaultSelectedOption,\n icon,\n inputMode,\n loadingMessage,\n loadingIcon,\n maxLength,\n multiple,\n clearable,\n onChangeInput,\n onCloseMenu,\n onOpenMenu,\n onSelectOption,\n options,\n loadOptions,\n groupSelectedOptions,\n optionsMultiToggleCaption,\n optionsEmptyMessage,\n optionsEmptyIcon,\n palette,\n placeholder,\n readOnly,\n required,\n status,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n form,\n label,\n ...rootProps\n } = props\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconBaseProps: IconProps = {\n sizes: SIZES_ICON,\n color: rootProps.disabled ? 'content-disabled' : 'content-onmain-tertiary',\n }\n\n const formInputLabelId = useMemo(() => rootProps.id ?? `${name}-${nanoid()}`, [name, rootProps.id])\n const inputLabelId = useMemo(() => nanoid(), [])\n const menuListId = useMemo(() => nanoid(), [])\n\n const [filteredOptions, getFilteredOptions] = useFilteredOptions({\n options,\n })\n\n const [loadedOptions, optionsLoading, getLoadedOptions] = useLoadedOptions({\n loadOptions,\n options,\n })\n\n const [dropdownSelectedOption, setDropdownSelectedOption] = useState<DropdownOption[]>(() =>\n getDropdownSelectedOption(selectedOption !== undefined ? selectedOption : defaultSelectedOption, multiple)\n )\n\n const [inputText, setInputText] = useState<string>(() => getDropdownInputText(dropdownSelectedOption, multiple))\n\n const [focusWithin, setFocusWithin] = useState<boolean>(false)\n\n const [menuOpenRequest, setMenuOpenRequest] = useState<boolean>(false)\n\n const menuOptions: DropdownOption[] = loadOptions ? loadedOptions : filteredOptions\n const menuOptionsLoading = loadOptions ? (loading ?? optionsLoading) : loading\n\n const menuOptionsGroups: ReturnType<typeof groupDropdownOptions> = useMemo(\n () => (multiple ? groupDropdownOptions(menuOptions, dropdownSelectedOption) : [[], []]),\n [multiple, menuOptions, dropdownSelectedOption]\n )\n\n const menuOpen = menuOpenRequest && !rootProps.disabled\n\n const inputRequired = required && dropdownSelectedOption.length === 0\n const inputActive = Boolean(menuOpen || inputText || focusWithin)\n\n const multiToggleChecked = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length === 0\n const multiToggleIndeterminate = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0\n\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuRef, setMenuRef] = useState<Nullable<HTMLElement>>(null)\n const menuListRef = useRef<HTMLUListElement>(null)\n const selectedOptionRef = useRef<HTMLElement>(null)\n const menuOpenPrevRef = useRef<boolean>(menuOpen)\n\n const updateInputText = useCallback(\n (inputTextValue: string) => {\n setInputText(inputTextValue)\n\n if (onChangeInput) {\n onChangeInput(inputTextValue)\n }\n },\n [onChangeInput]\n )\n\n const updateOptions = useCallback(\n (inputTextValue: string) => {\n if (loadOptions) {\n getLoadedOptions(inputTextValue)\n } else {\n getFilteredOptions(inputTextValue)\n }\n },\n [loadOptions, getLoadedOptions, getFilteredOptions]\n )\n\n const updateOptionsDebounced = useMemo(() => {\n return createDebouncedCallback(updateOptions, 150)\n }, [updateOptions])\n\n const preventBlur = (evt: React.PointerEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n if (\n evt.target !== inputRef.current &&\n evt.target instanceof Node &&\n (evt.currentTarget.contains(evt.target) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.target)))\n ) {\n evt.preventDefault()\n }\n }\n\n useScrollMonitor({\n target: scrollMonitorTarget,\n onScrollStart: () => {\n if (closeMenuOnScroll && menuOpen) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n },\n })\n\n useLayoutEffect(() => {\n if (selectedOption === undefined) return\n\n if (!multiple && !menuOpen) {\n updateInputText(getDropdownInputText(selectedOption))\n }\n setDropdownSelectedOption(getDropdownSelectedOption(selectedOption, multiple))\n }, [multiple, selectedOption, menuOpen, updateInputText])\n\n useEffect(() => {\n if (menuOpen === menuOpenPrevRef.current) return\n\n if (menuOpen && onOpenMenu) onOpenMenu()\n if (!menuOpen && onCloseMenu) onCloseMenu()\n\n menuOpenPrevRef.current = menuOpen\n }, [menuOpen, onCloseMenu, onOpenMenu])\n\n useEffect(() => {\n if (\n !multiple &&\n !disableAutoScrollToSelectedOption &&\n menuOpen &&\n !menuOptionsLoading &&\n inputText.length === 0 &&\n menuRef &&\n selectedOptionRef.current\n ) {\n const menuRect = menuRef.getBoundingClientRect()\n const selectedOptionRect = selectedOptionRef.current.getBoundingClientRect()\n\n if (selectedOptionRect.top < menuRect.top || selectedOptionRect.bottom > menuRect.bottom) {\n setTimeout(() => {\n if (menuRef && selectedOptionRef.current) {\n menuRef.scrollTo(0, selectedOptionRef.current.offsetTop)\n }\n }, 0)\n }\n }\n }, [multiple, disableAutoScrollToSelectedOption, menuOpen, menuOptionsLoading, inputText, menuRef])\n\n return (\n <FormInputLabel\n {...rootProps}\n {...sizeProps}\n ref={ref}\n id={formInputLabelId}\n onColored={contrast}\n primary={primary}\n error={status === 'error'}\n success={status === 'success'}\n focus={focusWithin}\n icon={[icon, <Styled.ChevronIcon key='chevron' up={menuOpen} />]}\n iconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...iconProps,\n }}\n palette={{\n color: rootProps.disabled ? palette.labelColorDisabled : palette.labelColor,\n backgroundColor: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColor,\n backgroundColorHover: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColorHover,\n borderColor: rootProps.disabled ? palette.borderColorDisabled : palette.borderColor,\n }}\n onClick={(evt) => {\n if (rootProps.onClick) rootProps.onClick(evt)\n\n if (rootProps.disabled) return\n\n inputRef.current?.focus()\n\n if (!menuOpen) {\n setMenuOpenRequest(true)\n\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n } else if (menuRef && evt.target instanceof Node && !menuRef.contains(evt.target)) {\n setMenuOpenRequest(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n }\n }}\n onPointerDown={(evt) => {\n if (rootProps.onPointerDown) rootProps.onPointerDown(evt)\n\n preventBlur(evt)\n }}\n onMouseDown={(evt) => {\n if (rootProps.onMouseDown) rootProps.onMouseDown(evt)\n\n if (!window.PointerEvent) preventBlur(evt)\n }}\n onFocus={(evt) => {\n if (rootProps.onFocus) rootProps.onFocus(evt)\n\n setFocusWithin(true)\n\n if (inputRef.current && evt.target === inputRef.current && searchable && !multiple && !menuOpen) {\n updateInputText('')\n }\n }}\n onBlur={(evt) => {\n if (rootProps.onBlur) rootProps.onBlur(evt)\n\n if (\n evt.currentTarget.contains(evt.relatedTarget) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.relatedTarget))\n ) {\n return\n }\n\n setFocusWithin(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }}\n input={\n <>\n {inputRequired && !searchable && !readOnly ? (\n <Styled.InputMimic\n required\n type='text'\n inputMode='none'\n form={form}\n tabIndex={-1}\n onFocus={() => {\n inputRef.current?.focus()\n }}\n />\n ) : null}\n <FormInput\n {...sizeProps}\n ref={inputRef}\n role='combobox'\n aria-controls={menuListId}\n aria-expanded={menuOpen}\n type='text'\n autoComplete='off'\n autoCapitalize='off'\n autoCorrect='off'\n spellCheck='false'\n active={inputActive}\n label={label}\n labelId={inputLabelId}\n labelPosition={labelPosition}\n form={form}\n autoFocus={autoFocus}\n inputMode={searchable ? inputMode : 'none'}\n maxLength={maxLength}\n placeholder={placeholder}\n readOnly={readOnly || !searchable}\n required={inputRequired}\n disabled={rootProps.disabled}\n value={inputText}\n palette={{\n color: palette.color,\n colorDisabled: palette.colorDisabled,\n placeholderColor: palette.placeholderColor,\n placeholderColorDisabled: palette.placeholderColorDisabled,\n }}\n onClick={(evt) => {\n if (menuOpen && evt.currentTarget.selectionStart !== evt.currentTarget.selectionEnd) {\n evt.stopPropagation()\n }\n }}\n onChange={(evt) => {\n const inputValue = evt.currentTarget.value\n\n updateInputText(inputValue)\n updateOptionsDebounced(inputValue)\n setMenuOpenRequest(true)\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Enter.validate(evt.key)) {\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Space.validate(evt.key) && (!menuOpen || evt.currentTarget.selectionStart === 0)) {\n evt.preventDefault()\n\n if (!menuOpen) {\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n }\n\n setMenuOpenRequest((prev) => !prev)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Tab.validate(evt.key) && menuOpen) {\n evt.preventDefault()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.ArrowDown.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx + 1] ?? menuItems[0]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusFirstFocusable(menuListRef.current)\n }\n }\n\n if (keyboardKeys.ArrowUp.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx - 1] ?? menuItems[menuItems.length - 1]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusLastFocusable(menuListRef.current)\n }\n }\n }}\n />\n {dropdownSelectedOption.map((option) => (\n <input\n key={option.value}\n type='hidden'\n name={name}\n value={option.value}\n form={form}\n disabled={rootProps.disabled || option.disabled}\n />\n ))}\n </>\n }\n addon={\n <>\n {multiple && dropdownSelectedOption.length > 0 ? (\n <Chip\n size='xs'\n active\n black\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n cursor={rootProps.disabled ? 'not-allowed' : undefined}\n text={dropdownSelectedOption.length}\n textProps={{\n appearance: 'caption',\n size: 'xs',\n }}\n palette={\n rootProps.disabled\n ? {\n color: 'content-disabled',\n colorHover: 'content-disabled',\n backgroundColor: 'bg-disabled-small',\n backgroundColorHover: 'bg-disabled-small',\n }\n : undefined\n }\n onPointerDown={(evt) => {\n evt.preventDefault()\n }}\n onMouseDown={(evt) => {\n if (!window.PointerEvent) evt.preventDefault()\n }}\n discardButtonProps={{\n square: true,\n contrast: !rootProps.disabled,\n onClick: (evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption([])\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n },\n }}\n />\n ) : null}\n {!multiple && clearable && dropdownSelectedOption.length > 0 ? (\n <IconButton\n icon='close'\n size='l'\n square\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(null)\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n }}\n />\n ) : null}\n </>\n }\n dropdown={\n <DropdownMenu\n {...menuProps}\n setRef={setMenuRef}\n open={menuOpen}\n popperReferenceId={formInputLabelId}\n secondary={!contrast}\n elevated={contrast}\n disableAutoFocus\n palette={{\n backgroundColor: palette.menuBackgroundColor,\n borderColor: palette.menuBorderColor,\n }}\n empty={menuOptions.length === 0}\n loading={menuOptionsLoading}\n loadingMessage={loadingMessage}\n loadingIcon={loadingIcon}\n loadingIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...loadingIconProps,\n }}\n emptyMessage={optionsEmptyMessage}\n emptyIcon={optionsEmptyIcon}\n emptyIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...optionsEmptyIconProps,\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Tab.validate(evt.key)) {\n evt.preventDefault()\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Enter.validate(evt.key)) {\n inputRef.current?.focus()\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Backspace.validate(evt.key) && !readOnly && (multiple || (!multiple && clearable))) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(multiple ? [] : null)\n\n updateInputText('')\n updateOptions('')\n }\n }}\n >\n {multiple ? (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n aria-multiselectable\n >\n {inputText.length === 0 ? (\n <>\n {optionsMultiToggle ? (\n <ListItem\n {...sizeProps}\n text={optionsMultiToggleCaption}\n disabled={rootProps.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n name={name}\n checked={multiToggleChecked}\n indeterminate={multiToggleIndeterminate}\n error={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'error')}\n success={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'success')}\n onChange={() => {\n if (!readOnly) {\n const update =\n multiToggleChecked || multiToggleIndeterminate\n ? dropdownSelectedOption.filter((option) => option.disabled)\n : menuOptions.filter((option) => !option.disabled)\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ) : null}\n {optionsMultiToggle ? <MenuDivider /> : null}\n {groupSelectedOptions\n ? menuOptionsGroups[0].map((option) => {\n const optionStatus = option.status ?? status\n const optionErrorStatus = optionStatus === 'error'\n const optionSuccessStatus = optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n active\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected\n name={name}\n value={option.value}\n checked\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = dropdownSelectedOption.filter(\n (item) => item.value !== evt.currentTarget.value\n )\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })\n : null}\n {groupSelectedOptions && menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0 ? (\n <MenuDivider />\n ) : null}\n {groupSelectedOptions\n ? menuOptionsGroups[1].map((option) => (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={false}\n name={name}\n value={option.value}\n checked={false}\n onChange={() => {\n if (!readOnly) {\n const update = [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ))\n : null}\n {!groupSelectedOptions &&\n menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n ) : (\n <>\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n )}\n </MenuList>\n ) : (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n >\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n return (\n <ListItem\n {...sizeProps}\n role='option'\n aria-selected={selected}\n ref={selected ? selectedOptionRef : undefined}\n key={option.value}\n text={option.text}\n active={selected}\n danger={Boolean(selected && status === 'error')}\n success={Boolean(selected && status === 'success')}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n const update = { ...option }\n\n if (selectedOption === undefined) {\n updateInputText(getDropdownInputText(update))\n setDropdownSelectedOption(getDropdownSelectedOption(update))\n }\n\n if (onSelectOption) onSelectOption(update)\n\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n }}\n />\n )\n })}\n </MenuList>\n )}\n </DropdownMenu>\n }\n />\n )\n }),\n {\n sizes: SIZES,\n displayName: COMPONENT_NAME,\n }\n)\n\nexport { Dropdown, COMPONENT_NAME }\n"],"names":["Dropdown","withMergedProps","forwardRef","props","ref","size","name","labelPosition","searchable","primary","optionsMultiToggle","iconProps","menuProps","loadingIconProps","optionsEmptyIconProps","loading","autoFocus","disableAutoScrollToSelectedOption","closeMenuOnScroll","scrollMonitorTarget","contrast","selectedOption","defaultSelectedOption","icon","inputMode","loadingMessage","loadingIcon","maxLength","multiple","clearable","onChangeInput","onCloseMenu","onOpenMenu","onSelectOption","options","loadOptions","groupSelectedOptions","optionsMultiToggleCaption","optionsEmptyMessage","optionsEmptyIcon","palette","placeholder","readOnly","required","status","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","form","label","rootProps","sizeProps","iconBaseProps","sizes","SIZES_ICON","color","disabled","formInputLabelId","useMemo","id","nanoid","inputLabelId","menuListId","filteredOptions","getFilteredOptions","useFilteredOptions","loadedOptions","optionsLoading","getLoadedOptions","useLoadedOptions","dropdownSelectedOption","setDropdownSelectedOption","useState","getDropdownSelectedOption","undefined","inputText","setInputText","getDropdownInputText","focusWithin","setFocusWithin","menuOpenRequest","setMenuOpenRequest","menuOptions","menuOptionsLoading","menuOptionsGroups","groupDropdownOptions","menuOpen","inputRequired","length","inputActive","Boolean","multiToggleChecked","multiToggleIndeterminate","inputRef","useRef","menuRef","setMenuRef","menuListRef","selectedOptionRef","menuOpenPrevRef","updateInputText","useCallback","inputTextValue","updateOptions","updateOptionsDebounced","createDebouncedCallback","preventBlur","evt","target","current","Node","currentTarget","contains","renderInPortal","preventDefault","useScrollMonitor","onScrollStart","focus","useLayoutEffect","useEffect","menuRect","getBoundingClientRect","selectedOptionRect","top","bottom","setTimeout","scrollTo","offsetTop","_jsx","FormInputLabel","onColored","error","success","jsx","Styled","up","labelColorDisabled","labelColor","backgroundColor","backgroundColorDisabled","backgroundColorHover","borderColor","borderColorDisabled","onClick","onPointerDown","onMouseDown","window","PointerEvent","onFocus","onBlur","relatedTarget","input","_jsxs","jsxs","_Fragment","children","type","tabIndex","FormInput","role","autoComplete","autoCapitalize","autoCorrect","spellCheck","active","labelId","value","colorDisabled","placeholderColor","placeholderColorDisabled","selectionStart","selectionEnd","stopPropagation","onChange","inputValue","onKeyDown","keyboardKeys","Enter","validate","key","Space","prev","Esc","Tab","ArrowDown","menuItems","idx","findIndex","item","focusTarget","HTMLElement","focusFirstFocusable","ArrowUp","focusLastFocusable","map","option","addon","Chip","black","marginLeft","cursor","text","textProps","appearance","colorHover","discardButtonProps","square","IconButton","dropdown","DropdownMenu","setRef","open","popperReferenceId","secondary","elevated","disableAutoFocus","menuBackgroundColor","menuBorderColor","empty","emptyMessage","emptyIcon","emptyIconProps","Backspace","MenuList","ListItem","borderRadius","ellipsis","wordBreak","control","InputCheckbox","SIZES_CHECKBOX","checked","indeterminate","update","filter","MenuDivider","optionStatus","optionErrorStatus","optionSuccessStatus","_createElement","danger","selected","SIZES","displayName"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{forwardRef,useMemo,useState,useRef,useCallback,useLayoutEffect,useEffect,createElement}from'react';import{nanoid}from'nanoid';import{withMergedProps}from'../../hocs/withMergedProps.mjs';import{useScrollMonitor}from'../../hooks/useScrollMonitor.mjs';import{focusFirstFocusable,focusLastFocusable}from'../../shared/utils/dom.mjs';import{createDebouncedCallback}from'../../shared/utils/misc.mjs';import{keyboardKeys}from'../../shared/constants.mjs';import{DropdownMenu}from'./DropdownMenu.mjs';import{useFilteredOptions,useLoadedOptions}from'./hooks.mjs';import{SIZES,SIZES_ICON,SIZES_CHECKBOX}from'./sizes.mjs';import{getDropdownSelectedOption,getDropdownInputText,groupDropdownOptions}from'./utils.mjs';import{ChevronIcon,InputMimic}from'./style.mjs';import{jsx,jsxs,Fragment}from'react/jsx-runtime';import{FormInputLabel}from'../FormInputLabel/FormInputLabel.mjs';import{FormInput}from'../FormInput/FormInput.mjs';import{Chip}from'../Chip/Chip.mjs';import{IconButton}from'../IconButton/IconButton.mjs';import{Close}from'../../icon-pack/src/icons/Close/index.mjs';import{MenuList}from'../MenuList/MenuList.mjs';import{ListItem}from'../ListItem/ListItem.mjs';import{InputCheckbox}from'../InputCheckbox/InputCheckbox.mjs';import{MenuDivider}from'../MenuDivider/MenuDivider.mjs';const COMPONENT_NAME='Dropdown';const Dropdown=withMergedProps(forwardRef(((e,o)=>{const{size:t="m",name:r="fox-dropdown",labelPosition:n="dynamic",searchable:s=!0,primary:a=!0,optionsMultiToggle:l=!0,iconProps:i={},menuProps:c={},loadingIconProps:d={},optionsEmptyIconProps:u={},loading:p,autoFocus:m,disableAutoScrollToSelectedOption:b,closeMenuOnScroll:f,scrollMonitorTarget:g,contrast:v,selectedOption:C,defaultSelectedOption:k,icon:x,inputMode:I,loadingMessage:h,loadingIcon:y,maxLength:w,multiple:D,clearable:M,onChangeInput:S,onCloseMenu:j,onOpenMenu:E,onSelectOption:P,options:L,loadOptions:O,groupSelectedOptions:F,optionsMultiToggleCaption:T,optionsEmptyMessage:B,optionsEmptyIcon:z,palette:K,placeholder:R,readOnly:X,required:H,status:N,sizeXXS:Z,sizeXS:_,sizeS:A,sizeM:q,sizeL:$,sizeXL:U,form:G,label:J,...Q}=e;const V={size:t,sizeXXS:Z,sizeXS:_,sizeS:A,sizeM:q,sizeL:$,sizeXL:U};const W={sizes:SIZES_ICON,color:Q.disabled?'content-disabled':'content-onmain-tertiary'};const Y=useMemo((()=>Q.id??`${r}-${nanoid()}`),[r,Q.id]);const ee=useMemo((()=>nanoid()),[]);const oe=useMemo((()=>nanoid()),[]);const[te,re]=useFilteredOptions({options:L});const[ne,se,ae]=useLoadedOptions({loadOptions:O,options:L});const[le,ie]=useState((()=>getDropdownSelectedOption(C!==void 0?C:k,D)));const[ce,de]=useState((()=>getDropdownInputText(le,D)));const[ue,pe]=useState(!1);const[me,be]=useState(!1);const fe=O?ne:te;const ge=O?p??se:p;const ve=useMemo((()=>D?groupDropdownOptions(fe,le):[[],[]]),[D,fe,le]);const Ce=me&&!Q.disabled;const ke=H&&le.length===0;const xe=Boolean(Ce||ce||ue);const Ie=ve[0].length>0&&ve[1].length===0;const he=ve[0].length>0&&ve[1].length>0;const ye=useRef(null);const[we,De]=useState(null);const Me=useRef(null);const Se=useRef(null);const je=useRef(Ce);const Ee=useCallback((e=>{de(e),S&&S(e)}),[S]);const Pe=useCallback((e=>{O?ae(e):re(e)}),[O,ae,re]);const Le=useMemo((()=>createDebouncedCallback(Pe,150)),[Pe]);const preventBlur=e=>{e.target!==ye.current&&e.target instanceof Node&&(e.currentTarget.contains(e.target)||c.renderInPortal&&Ce&&we&&we.contains(e.target))&&e.preventDefault()};return useScrollMonitor({target:g,onScrollStart:()=>{f&&Ce&&(ye.current?.focus(),be(!1))}}),useLayoutEffect((()=>{C!==void 0&&(D||Ce||Ee(getDropdownInputText(C)),ie(getDropdownSelectedOption(C,D)))}),[D,C,Ce,Ee]),useEffect((()=>{Ce!==je.current&&(Ce&&E&&E(),!Ce&&j&&j(),je.current=Ce)}),[Ce,j,E]),useEffect((()=>{if(!D&&!b&&Ce&&!ge&&ce.length===0&&we&&Se.current){const e=we.getBoundingClientRect();const o=Se.current.getBoundingClientRect();(o.top<e.top||o.bottom>e.bottom)&&setTimeout((()=>{we&&Se.current&&we.scrollTo(0,Se.current.offsetTop)}),0)}}),[D,b,Ce,ge,ce,we]),jsx(FormInputLabel,{...Q,...V,ref:o,id:Y,onColored:v,primary:a,error:N==='error',success:N==='success',focus:ue,icon:[x,jsx(ChevronIcon,{up:Ce},'chevron')],iconProps:{...V,...W,...i},palette:{color:Q.disabled?K.labelColorDisabled:K.labelColor,backgroundColor:Q.disabled?K.backgroundColorDisabled:K.backgroundColor,backgroundColorHover:Q.disabled?K.backgroundColorDisabled:K.backgroundColorHover,borderColor:Q.disabled?K.borderColorDisabled:K.borderColor},onClick:e=>{Q.onClick&&Q.onClick(e),Q.disabled||(ye.current?.focus(),Ce?we&&e.target instanceof Node&&!we.contains(e.target)&&(be(!1),Ee(getDropdownInputText(le,D))):(be(!0),Pe(''),s&&Ee('')))},onPointerDown:e=>{Q.onPointerDown&&Q.onPointerDown(e),preventBlur(e)},onMouseDown:e=>{Q.onMouseDown&&Q.onMouseDown(e),window.PointerEvent||preventBlur(e)},onFocus:e=>{Q.onFocus&&Q.onFocus(e),pe(!0),ye.current&&e.target===ye.current&&s&&!D&&!Ce&&Ee('')},onBlur:e=>{Q.onBlur&&Q.onBlur(e),e.currentTarget.contains(e.relatedTarget)||c.renderInPortal&&Ce&&we&&we.contains(e.relatedTarget)||(pe(!1),Ee(getDropdownInputText(le,D)),be(!1))},input:jsxs(Fragment,{children:[!ke||s||X?null:jsx(InputMimic,{required:!0,type:"text",inputMode:"none",form:G,tabIndex:-1,onFocus:()=>{ye.current?.focus()}}),jsx(FormInput,{...V,ref:ye,role:"combobox","aria-controls":oe,"aria-expanded":Ce,type:"text",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off",spellCheck:"false",active:xe,label:J,labelId:ee,labelPosition:n,form:G,autoFocus:m,inputMode:s?I:'none',maxLength:w,placeholder:R,readOnly:X||!s,required:ke,disabled:Q.disabled,value:ce,palette:{color:K.color,colorDisabled:K.colorDisabled,placeholderColor:K.placeholderColor,placeholderColorDisabled:K.placeholderColorDisabled},onClick:e=>{Ce&&e.currentTarget.selectionStart!==e.currentTarget.selectionEnd&&e.stopPropagation()},onChange:e=>{const o=e.currentTarget.value;Ee(o),Le(o),be(!0)},onKeyDown:e=>{if(keyboardKeys.Enter.validate(e.key)&&(Ee(getDropdownInputText(le,D)),be(!1)),!keyboardKeys.Space.validate(e.key)||Ce&&e.currentTarget.selectionStart!==0||(e.preventDefault(),Ce||(Pe(''),s&&Ee('')),be((e=>!e))),keyboardKeys.Esc.validate(e.key)&&be(!1),keyboardKeys.Tab.validate(e.key)&&Ce&&(e.preventDefault(),be(!1)),keyboardKeys.ArrowDown.validate(e.key)&&Ce&&Me.current)if(e.preventDefault(),!D&&Se.current){const e=[...Me.current.children];const o=e.findIndex((e=>e.contains(Se.current)));const t=e[o+1]??e[0];t instanceof HTMLElement&&focusFirstFocusable(t)}else focusFirstFocusable(Me.current);if(keyboardKeys.ArrowUp.validate(e.key)&&Ce&&Me.current)if(e.preventDefault(),!D&&Se.current){const e=[...Me.current.children];const o=e.findIndex((e=>e.contains(Se.current)));const t=e[o-1]??e[e.length-1];t instanceof HTMLElement&&focusFirstFocusable(t)}else focusLastFocusable(Me.current)}}),le.map((e=>jsx("input",{type:"hidden",name:r,value:e.value,form:G,disabled:Q.disabled||e.disabled},e.value)))]}),addon:jsxs(Fragment,{children:[D&&le.length>0?jsx(Chip,{size:"xs",active:!0,black:!0,marginLeft:"var(--gap, 12px)",disabled:Q.disabled,cursor:Q.disabled?'not-allowed':void 0,text:le.length,textProps:{appearance:'caption',size:'xs'},palette:Q.disabled?{color:'content-disabled',colorHover:'content-disabled',backgroundColor:'bg-disabled-small',backgroundColorHover:'bg-disabled-small'}:void 0,onPointerDown:e=>{e.preventDefault()},onMouseDown:e=>{window.PointerEvent||e.preventDefault()},discardButtonProps:{square:!0,contrast:!Q.disabled,onClick:e=>{e.stopPropagation(),X||(C===void 0&&ie([]),P&&P([]),ye.current?.focus(),Ee(''),Pe(''),be(!0))}}}):null,!D&&M&&le.length>0?jsx(IconButton,{icon:jsx(Close,{}),size:"l",square:!0,marginLeft:"var(--gap, 12px)",disabled:Q.disabled,onClick:e=>{e.stopPropagation(),X||(C===void 0&&ie([]),P&&P(null),ye.current?.focus(),Ee(''),Pe(''),be(!0))}}):null]}),dropdown:jsx(DropdownMenu,{...c,setRef:De,open:Ce,popperReferenceId:Y,secondary:!v,elevated:v,disableAutoFocus:!0,palette:{backgroundColor:K.menuBackgroundColor,borderColor:K.menuBorderColor},empty:fe.length===0,loading:ge,loadingMessage:h,loadingIcon:y,loadingIconProps:{...V,...W,...d},emptyMessage:B,emptyIcon:z,emptyIconProps:{...V,...W,...u},onKeyDown:e=>{keyboardKeys.Tab.validate(e.key)&&(e.preventDefault(),ye.current?.focus(),be(!1)),keyboardKeys.Enter.validate(e.key)&&(ye.current?.focus(),Ee(getDropdownInputText(le,D)),be(!1)),keyboardKeys.Esc.validate(e.key)&&(ye.current?.focus(),be(!1)),keyboardKeys.Backspace.validate(e.key)&&!X&&(D||!D&&M)&&(C===void 0&&ie([]),P&&P(D?[]:null),Ee(''),Pe(''))},children:jsx(MenuList,D?{ref:Me,id:oe,role:"listbox","aria-labelledby":J?ee:void 0,"aria-multiselectable":!0,children:ce.length===0?jsxs(Fragment,{children:[l?jsx(ListItem,{...V,text:T,disabled:Q.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",name:r,checked:Ie,indeterminate:he,error:Boolean((Ie||he)&&N==='error'),success:Boolean((Ie||he)&&N==='success'),onChange:()=>{if(!X){const e=Ie||he?le.filter((e=>e.disabled)):fe.filter((e=>!e.disabled));C===void 0&&ie(e),P&&P(e)}}})}):null,l?jsx(MenuDivider,{}):null,F?ve[0].map((e=>{const o=e.status??N;const t=o==='error';const n=o==='success';return createElement(ListItem,{...V,key:e.value,active:!0,text:e.text,danger:t,success:n,disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation(),ye.current?.focus()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":!0,name:r,value:e.value,checked:!0,error:t,success:n,onChange:e=>{if(!X){const o=le.filter((o=>o.value!==e.currentTarget.value));C===void 0&&ie(o),P&&P(o)}}})})})):null,F&&ve[0].length>0&&ve[1].length>0?jsx(MenuDivider,{}):null,F?ve[1].map((e=>createElement(ListItem,{...V,key:e.value,text:e.text,disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation(),ye.current?.focus()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":!1,name:r,value:e.value,checked:!1,onChange:()=>{if(!X){const o=[...le,e];C===void 0&&ie(o),P&&P(o)}}})}))):null,!F&&fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;const t=e.status??N;const n=o&&t==='error';const s=o&&t==='success';return createElement(ListItem,{...V,key:e.value,text:e.text,danger:n,success:s,disabled:Q.disabled||e.disabled,active:o,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":o,name:r,value:e.value,checked:o,error:n,success:s,onChange:t=>{if(!X){const r=o?le.filter((e=>e.value!==t.currentTarget.value)):[...le,e];C===void 0&&ie(r),P&&P(r)}}})})}))]}):jsx(Fragment,{children:fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;const t=e.status??N;const n=o&&t==='error';const s=o&&t==='success';return createElement(ListItem,{...V,key:e.value,text:e.text,danger:n,success:s,disabled:Q.disabled||e.disabled,active:o,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":o,name:r,value:e.value,checked:o,error:n,success:s,onChange:t=>{if(!X){const r=o?le.filter((e=>e.value!==t.currentTarget.value)):[...le,e];C===void 0&&ie(r),P&&P(r)}}})})}))})}:{ref:Me,id:oe,role:"listbox","aria-labelledby":J?ee:void 0,children:fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;return createElement(ListItem,{...V,role:"option","aria-selected":o,ref:o?Se:void 0,key:e.value,text:e.text,active:o,danger:Boolean(o&&N==='error'),success:Boolean(o&&N==='success'),disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:o=>{if(o.stopPropagation(),!X){const o={...e};C===void 0&&(Ee(getDropdownInputText(o)),ie(getDropdownSelectedOption(o))),P&&P(o),ye.current?.focus(),be(!1)}}})}))})})})})),{sizes:SIZES,displayName:"Dropdown"});export{COMPONENT_NAME,Dropdown};
1
+ import{forwardRef,useMemo,useState,useRef,useCallback,useLayoutEffect,useEffect,createElement}from'react';import{nanoid}from'nanoid';import{withMergedProps}from'../../hocs/withMergedProps.mjs';import{useScrollMonitor}from'../../hooks/useScrollMonitor.mjs';import{focusFirstFocusable,focusLastFocusable}from'../../shared/utils/dom.mjs';import{createDebouncedCallback}from'../../shared/utils/misc.mjs';import{keyboardKeys}from'../../shared/constants.mjs';import{DropdownMenu}from'./DropdownMenu.mjs';import{useFilteredOptions,useLoadedOptions}from'./hooks.mjs';import{SIZES,SIZES_ICON,SIZES_CHECKBOX}from'./sizes.mjs';import{getDropdownSelectedOption,getDropdownInputText,groupDropdownOptions}from'./utils.mjs';import{ChevronIcon,InputMimic}from'./style.mjs';import{jsx,jsxs,Fragment}from'react/jsx-runtime';import{FormInputLabel}from'../FormInputLabel/FormInputLabel.mjs';import{FormInput}from'../FormInput/FormInput.mjs';import{Chip}from'../Chip/Chip.mjs';import{IconButton}from'../IconButton/IconButton.mjs';import{MenuList}from'../MenuList/MenuList.mjs';import{ListItem}from'../ListItem/ListItem.mjs';import{InputCheckbox}from'../InputCheckbox/InputCheckbox.mjs';import{MenuDivider}from'../MenuDivider/MenuDivider.mjs';const COMPONENT_NAME='Dropdown';const Dropdown=withMergedProps(forwardRef(((e,o)=>{const{size:t="m",name:r="fox-dropdown",labelPosition:n="dynamic",searchable:s=!0,primary:a=!0,optionsMultiToggle:l=!0,iconProps:i={},menuProps:c={},loadingIconProps:d={},optionsEmptyIconProps:u={},loading:p,autoFocus:m,disableAutoScrollToSelectedOption:b,closeMenuOnScroll:f,scrollMonitorTarget:g,contrast:v,selectedOption:C,defaultSelectedOption:k,icon:x,inputMode:I,loadingMessage:h,loadingIcon:y,maxLength:w,multiple:D,clearable:M,onChangeInput:S,onCloseMenu:E,onOpenMenu:j,onSelectOption:P,options:L,loadOptions:O,groupSelectedOptions:F,optionsMultiToggleCaption:T,optionsEmptyMessage:B,optionsEmptyIcon:z,palette:K,placeholder:R,readOnly:X,required:H,status:N,sizeXXS:Z,sizeXS:_,sizeS:A,sizeM:q,sizeL:$,sizeXL:U,form:G,label:J,...Q}=e;const V={size:t,sizeXXS:Z,sizeXS:_,sizeS:A,sizeM:q,sizeL:$,sizeXL:U};const W={sizes:SIZES_ICON,color:Q.disabled?'content-disabled':'content-onmain-tertiary'};const Y=useMemo((()=>Q.id??`${r}-${nanoid()}`),[r,Q.id]);const ee=useMemo((()=>nanoid()),[]);const oe=useMemo((()=>nanoid()),[]);const[te,re]=useFilteredOptions({options:L});const[ne,se,ae]=useLoadedOptions({loadOptions:O,options:L});const[le,ie]=useState((()=>getDropdownSelectedOption(C!==void 0?C:k,D)));const[ce,de]=useState((()=>getDropdownInputText(le,D)));const[ue,pe]=useState(!1);const[me,be]=useState(!1);const fe=O?ne:te;const ge=O?p??se:p;const ve=useMemo((()=>D?groupDropdownOptions(fe,le):[[],[]]),[D,fe,le]);const Ce=me&&!Q.disabled;const ke=H&&le.length===0;const xe=Boolean(Ce||ce||ue);const Ie=ve[0].length>0&&ve[1].length===0;const he=ve[0].length>0&&ve[1].length>0;const ye=useRef(null);const[we,De]=useState(null);const Me=useRef(null);const Se=useRef(null);const Ee=useRef(Ce);const je=useCallback((e=>{de(e),S&&S(e)}),[S]);const Pe=useCallback((e=>{O?ae(e):re(e)}),[O,ae,re]);const Le=useMemo((()=>createDebouncedCallback(Pe,150)),[Pe]);const preventBlur=e=>{e.target!==ye.current&&e.target instanceof Node&&(e.currentTarget.contains(e.target)||c.renderInPortal&&Ce&&we&&we.contains(e.target))&&e.preventDefault()};return useScrollMonitor({target:g,onScrollStart:()=>{f&&Ce&&(ye.current?.focus(),be(!1))}}),useLayoutEffect((()=>{C!==void 0&&(D||Ce||je(getDropdownInputText(C)),ie(getDropdownSelectedOption(C,D)))}),[D,C,Ce,je]),useEffect((()=>{Ce!==Ee.current&&(Ce&&j&&j(),!Ce&&E&&E(),Ee.current=Ce)}),[Ce,E,j]),useEffect((()=>{if(!D&&!b&&Ce&&!ge&&ce.length===0&&we&&Se.current){const e=we.getBoundingClientRect();const o=Se.current.getBoundingClientRect();(o.top<e.top||o.bottom>e.bottom)&&setTimeout((()=>{we&&Se.current&&we.scrollTo(0,Se.current.offsetTop)}),0)}}),[D,b,Ce,ge,ce,we]),jsx(FormInputLabel,{...Q,...V,ref:o,id:Y,onColored:v,primary:a,error:N==='error',success:N==='success',focus:ue,icon:[x,jsx(ChevronIcon,{up:Ce},'chevron')],iconProps:{...V,...W,...i},palette:{color:Q.disabled?K.labelColorDisabled:K.labelColor,backgroundColor:Q.disabled?K.backgroundColorDisabled:K.backgroundColor,backgroundColorHover:Q.disabled?K.backgroundColorDisabled:K.backgroundColorHover,borderColor:Q.disabled?K.borderColorDisabled:K.borderColor},onClick:e=>{Q.onClick&&Q.onClick(e),Q.disabled||(ye.current?.focus(),Ce?we&&e.target instanceof Node&&!we.contains(e.target)&&(be(!1),je(getDropdownInputText(le,D))):(be(!0),Pe(''),s&&je('')))},onPointerDown:e=>{Q.onPointerDown&&Q.onPointerDown(e),preventBlur(e)},onMouseDown:e=>{Q.onMouseDown&&Q.onMouseDown(e),window.PointerEvent||preventBlur(e)},onFocus:e=>{Q.onFocus&&Q.onFocus(e),pe(!0),ye.current&&e.target===ye.current&&s&&!D&&!Ce&&je('')},onBlur:e=>{Q.onBlur&&Q.onBlur(e),e.currentTarget.contains(e.relatedTarget)||c.renderInPortal&&Ce&&we&&we.contains(e.relatedTarget)||(pe(!1),je(getDropdownInputText(le,D)),be(!1))},input:jsxs(Fragment,{children:[!ke||s||X?null:jsx(InputMimic,{required:!0,type:"text",inputMode:"none",form:G,tabIndex:-1,onFocus:()=>{ye.current?.focus()}}),jsx(FormInput,{...V,ref:ye,role:"combobox","aria-controls":oe,"aria-expanded":Ce,type:"text",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off",spellCheck:"false",active:xe,label:J,labelId:ee,labelPosition:n,form:G,autoFocus:m,inputMode:s?I:'none',maxLength:w,placeholder:R,readOnly:X||!s,required:ke,disabled:Q.disabled,value:ce,palette:{color:K.color,colorDisabled:K.colorDisabled,placeholderColor:K.placeholderColor,placeholderColorDisabled:K.placeholderColorDisabled},onClick:e=>{Ce&&e.currentTarget.selectionStart!==e.currentTarget.selectionEnd&&e.stopPropagation()},onChange:e=>{const o=e.currentTarget.value;je(o),Le(o),be(!0)},onKeyDown:e=>{if(keyboardKeys.Enter.validate(e.key)&&(je(getDropdownInputText(le,D)),be(!1)),!keyboardKeys.Space.validate(e.key)||Ce&&e.currentTarget.selectionStart!==0||(e.preventDefault(),Ce||(Pe(''),s&&je('')),be((e=>!e))),keyboardKeys.Esc.validate(e.key)&&be(!1),keyboardKeys.Tab.validate(e.key)&&Ce&&(e.preventDefault(),be(!1)),keyboardKeys.ArrowDown.validate(e.key)&&Ce&&Me.current)if(e.preventDefault(),!D&&Se.current){const e=[...Me.current.children];const o=e.findIndex((e=>e.contains(Se.current)));const t=e[o+1]??e[0];t instanceof HTMLElement&&focusFirstFocusable(t)}else focusFirstFocusable(Me.current);if(keyboardKeys.ArrowUp.validate(e.key)&&Ce&&Me.current)if(e.preventDefault(),!D&&Se.current){const e=[...Me.current.children];const o=e.findIndex((e=>e.contains(Se.current)));const t=e[o-1]??e[e.length-1];t instanceof HTMLElement&&focusFirstFocusable(t)}else focusLastFocusable(Me.current)}}),le.map((e=>jsx("input",{type:"hidden",name:r,value:e.value,form:G,disabled:Q.disabled||e.disabled},e.value)))]}),addon:jsxs(Fragment,{children:[D&&le.length>0?jsx(Chip,{size:"xs",active:!0,black:!0,marginLeft:"var(--gap, 12px)",disabled:Q.disabled,cursor:Q.disabled?'not-allowed':void 0,text:le.length,textProps:{appearance:'caption',size:'xs'},palette:Q.disabled?{color:'content-disabled',colorHover:'content-disabled',backgroundColor:'bg-disabled-small',backgroundColorHover:'bg-disabled-small'}:void 0,onPointerDown:e=>{e.preventDefault()},onMouseDown:e=>{window.PointerEvent||e.preventDefault()},discardButtonProps:{square:!0,contrast:!Q.disabled,onClick:e=>{e.stopPropagation(),X||(C===void 0&&ie([]),P&&P([]),ye.current?.focus(),je(''),Pe(''),be(!0))}}}):null,!D&&M&&le.length>0?jsx(IconButton,{icon:"close",size:"l",square:!0,marginLeft:"var(--gap, 12px)",disabled:Q.disabled,onClick:e=>{e.stopPropagation(),X||(C===void 0&&ie([]),P&&P(null),ye.current?.focus(),je(''),Pe(''),be(!0))}}):null]}),dropdown:jsx(DropdownMenu,{...c,setRef:De,open:Ce,popperReferenceId:Y,secondary:!v,elevated:v,disableAutoFocus:!0,palette:{backgroundColor:K.menuBackgroundColor,borderColor:K.menuBorderColor},empty:fe.length===0,loading:ge,loadingMessage:h,loadingIcon:y,loadingIconProps:{...V,...W,...d},emptyMessage:B,emptyIcon:z,emptyIconProps:{...V,...W,...u},onKeyDown:e=>{keyboardKeys.Tab.validate(e.key)&&(e.preventDefault(),ye.current?.focus(),be(!1)),keyboardKeys.Enter.validate(e.key)&&(ye.current?.focus(),je(getDropdownInputText(le,D)),be(!1)),keyboardKeys.Esc.validate(e.key)&&(ye.current?.focus(),be(!1)),keyboardKeys.Backspace.validate(e.key)&&!X&&(D||!D&&M)&&(C===void 0&&ie([]),P&&P(D?[]:null),je(''),Pe(''))},children:jsx(MenuList,D?{ref:Me,id:oe,role:"listbox","aria-labelledby":J?ee:void 0,"aria-multiselectable":!0,children:ce.length===0?jsxs(Fragment,{children:[l?jsx(ListItem,{...V,text:T,disabled:Q.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",name:r,checked:Ie,indeterminate:he,error:Boolean((Ie||he)&&N==='error'),success:Boolean((Ie||he)&&N==='success'),onChange:()=>{if(!X){const e=Ie||he?le.filter((e=>e.disabled)):fe.filter((e=>!e.disabled));C===void 0&&ie(e),P&&P(e)}}})}):null,l?jsx(MenuDivider,{}):null,F?ve[0].map((e=>{const o=e.status??N;const t=o==='error';const n=o==='success';return createElement(ListItem,{...V,key:e.value,active:!0,text:e.text,danger:t,success:n,disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation(),ye.current?.focus()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":!0,name:r,value:e.value,checked:!0,error:t,success:n,onChange:e=>{if(!X){const o=le.filter((o=>o.value!==e.currentTarget.value));C===void 0&&ie(o),P&&P(o)}}})})})):null,F&&ve[0].length>0&&ve[1].length>0?jsx(MenuDivider,{}):null,F?ve[1].map((e=>createElement(ListItem,{...V,key:e.value,text:e.text,disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation(),ye.current?.focus()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":!1,name:r,value:e.value,checked:!1,onChange:()=>{if(!X){const o=[...le,e];C===void 0&&ie(o),P&&P(o)}}})}))):null,!F&&fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;const t=e.status??N;const n=o&&t==='error';const s=o&&t==='success';return createElement(ListItem,{...V,key:e.value,text:e.text,danger:n,success:s,disabled:Q.disabled||e.disabled,active:o,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":o,name:r,value:e.value,checked:o,error:n,success:s,onChange:t=>{if(!X){const r=o?le.filter((e=>e.value!==t.currentTarget.value)):[...le,e];C===void 0&&ie(r),P&&P(r)}}})})}))]}):jsx(Fragment,{children:fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;const t=e.status??N;const n=o&&t==='error';const s=o&&t==='success';return createElement(ListItem,{...V,key:e.value,text:e.text,danger:n,success:s,disabled:Q.disabled||e.disabled,active:o,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:e=>{e.stopPropagation()},control:jsx(InputCheckbox,{sizes:SIZES_CHECKBOX,form:"none",role:"option","aria-selected":o,name:r,value:e.value,checked:o,error:n,success:s,onChange:t=>{if(!X){const r=o?le.filter((e=>e.value!==t.currentTarget.value)):[...le,e];C===void 0&&ie(r),P&&P(r)}}})})}))})}:{ref:Me,id:oe,role:"listbox","aria-labelledby":J?ee:void 0,children:fe.map((e=>{const o=le.findIndex((o=>o.value===e.value))!==-1;return createElement(ListItem,{...V,role:"option","aria-selected":o,ref:o?Se:void 0,key:e.value,text:e.text,active:o,danger:Boolean(o&&N==='error'),success:Boolean(o&&N==='success'),disabled:Q.disabled||e.disabled,borderRadius:8,ellipsis:!1,textProps:{wordBreak:'break-word'},onClick:o=>{if(o.stopPropagation(),!X){const o={...e};C===void 0&&(je(getDropdownInputText(o)),ie(getDropdownSelectedOption(o))),P&&P(o),ye.current?.focus(),be(!1)}}})}))})})})})),{sizes:SIZES,displayName:"Dropdown"});export{COMPONENT_NAME,Dropdown};
2
2
  //# sourceMappingURL=Dropdown.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.mjs","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import { forwardRef, useState, useRef, useEffect, useLayoutEffect, useMemo, useCallback } from 'react'\nimport { nanoid } from 'nanoid'\nimport { Close } from '@foxford/icon-pack'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport type { MergedProps } from 'hocs/withMergedProps'\nimport { useScrollMonitor } from 'hooks/useScrollMonitor'\nimport { focusFirstFocusable, focusLastFocusable } from 'shared/utils/dom'\nimport { createDebouncedCallback } from 'shared/utils/misc'\nimport { keyboardKeys } from 'shared/constants'\nimport type { Nullable } from 'shared/types'\nimport { FormInput } from 'components/FormInput'\nimport { FormInputLabel } from 'components/FormInputLabel'\nimport { MenuList } from 'components/MenuList'\nimport { MenuDivider } from 'components/MenuDivider'\nimport { ListItem } from 'components/ListItem'\nimport { InputCheckbox } from 'components/InputCheckbox'\nimport { Chip } from 'components/Chip'\nimport { IconButton } from 'components/IconButton'\nimport type { IconProps } from 'components/Icon'\nimport { DropdownMenu } from './DropdownMenu'\nimport { useFilteredOptions, useLoadedOptions } from './hooks'\nimport { SIZES, SIZES_CHECKBOX, SIZES_ICON } from './sizes'\nimport { getDropdownInputText, getDropdownSelectedOption, groupDropdownOptions } from './utils'\nimport * as Styled from './style'\nimport type { DropdownProps, DropdownOption } from './types'\n\nconst COMPONENT_NAME = 'Dropdown'\n\n/**\n *\n * Компонент для выбора одной или нескольких опций из числа доступных.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<div\\> элемента.\n */\nconst Dropdown: React.ForwardRefExoticComponent<DropdownProps> = withMergedProps<DropdownProps, HTMLDivElement>(\n forwardRef<HTMLDivElement, MergedProps<DropdownProps>>((props, ref) => {\n const {\n size = 'm',\n name = 'fox-dropdown',\n labelPosition = 'dynamic',\n searchable = true,\n primary = true,\n optionsMultiToggle = true,\n iconProps = {},\n menuProps = {},\n loadingIconProps = {},\n optionsEmptyIconProps = {},\n loading,\n autoFocus,\n disableAutoScrollToSelectedOption,\n closeMenuOnScroll,\n scrollMonitorTarget,\n contrast,\n selectedOption,\n defaultSelectedOption,\n icon,\n inputMode,\n loadingMessage,\n loadingIcon,\n maxLength,\n multiple,\n clearable,\n onChangeInput,\n onCloseMenu,\n onOpenMenu,\n onSelectOption,\n options,\n loadOptions,\n groupSelectedOptions,\n optionsMultiToggleCaption,\n optionsEmptyMessage,\n optionsEmptyIcon,\n palette,\n placeholder,\n readOnly,\n required,\n status,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n form,\n label,\n ...rootProps\n } = props\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconBaseProps: IconProps = {\n sizes: SIZES_ICON,\n color: rootProps.disabled ? 'content-disabled' : 'content-onmain-tertiary',\n }\n\n const formInputLabelId = useMemo(() => rootProps.id ?? `${name}-${nanoid()}`, [name, rootProps.id])\n const inputLabelId = useMemo(() => nanoid(), [])\n const menuListId = useMemo(() => nanoid(), [])\n\n const [filteredOptions, getFilteredOptions] = useFilteredOptions({\n options,\n })\n\n const [loadedOptions, optionsLoading, getLoadedOptions] = useLoadedOptions({\n loadOptions,\n options,\n })\n\n const [dropdownSelectedOption, setDropdownSelectedOption] = useState<DropdownOption[]>(() =>\n getDropdownSelectedOption(selectedOption !== undefined ? selectedOption : defaultSelectedOption, multiple)\n )\n\n const [inputText, setInputText] = useState<string>(() => getDropdownInputText(dropdownSelectedOption, multiple))\n\n const [focusWithin, setFocusWithin] = useState<boolean>(false)\n\n const [menuOpenRequest, setMenuOpenRequest] = useState<boolean>(false)\n\n const menuOptions: DropdownOption[] = loadOptions ? loadedOptions : filteredOptions\n const menuOptionsLoading = loadOptions ? (loading ?? optionsLoading) : loading\n\n const menuOptionsGroups: ReturnType<typeof groupDropdownOptions> = useMemo(\n () => (multiple ? groupDropdownOptions(menuOptions, dropdownSelectedOption) : [[], []]),\n [multiple, menuOptions, dropdownSelectedOption]\n )\n\n const menuOpen = menuOpenRequest && !rootProps.disabled\n\n const inputRequired = required && dropdownSelectedOption.length === 0\n const inputActive = Boolean(menuOpen || inputText || focusWithin)\n\n const multiToggleChecked = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length === 0\n const multiToggleIndeterminate = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0\n\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuRef, setMenuRef] = useState<Nullable<HTMLElement>>(null)\n const menuListRef = useRef<HTMLUListElement>(null)\n const selectedOptionRef = useRef<HTMLElement>(null)\n const menuOpenPrevRef = useRef<boolean>(menuOpen)\n\n const updateInputText = useCallback(\n (inputTextValue: string) => {\n setInputText(inputTextValue)\n\n if (onChangeInput) {\n onChangeInput(inputTextValue)\n }\n },\n [onChangeInput]\n )\n\n const updateOptions = useCallback(\n (inputTextValue: string) => {\n if (loadOptions) {\n getLoadedOptions(inputTextValue)\n } else {\n getFilteredOptions(inputTextValue)\n }\n },\n [loadOptions, getLoadedOptions, getFilteredOptions]\n )\n\n const updateOptionsDebounced = useMemo(() => {\n return createDebouncedCallback(updateOptions, 150)\n }, [updateOptions])\n\n const preventBlur = (evt: React.PointerEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n if (\n evt.target !== inputRef.current &&\n evt.target instanceof Node &&\n (evt.currentTarget.contains(evt.target) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.target)))\n ) {\n evt.preventDefault()\n }\n }\n\n useScrollMonitor({\n target: scrollMonitorTarget,\n onScrollStart: () => {\n if (closeMenuOnScroll && menuOpen) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n },\n })\n\n useLayoutEffect(() => {\n if (selectedOption === undefined) return\n\n if (!multiple && !menuOpen) {\n updateInputText(getDropdownInputText(selectedOption))\n }\n setDropdownSelectedOption(getDropdownSelectedOption(selectedOption, multiple))\n }, [multiple, selectedOption, menuOpen, updateInputText])\n\n useEffect(() => {\n if (menuOpen === menuOpenPrevRef.current) return\n\n if (menuOpen && onOpenMenu) onOpenMenu()\n if (!menuOpen && onCloseMenu) onCloseMenu()\n\n menuOpenPrevRef.current = menuOpen\n }, [menuOpen, onCloseMenu, onOpenMenu])\n\n useEffect(() => {\n if (\n !multiple &&\n !disableAutoScrollToSelectedOption &&\n menuOpen &&\n !menuOptionsLoading &&\n inputText.length === 0 &&\n menuRef &&\n selectedOptionRef.current\n ) {\n const menuRect = menuRef.getBoundingClientRect()\n const selectedOptionRect = selectedOptionRef.current.getBoundingClientRect()\n\n if (selectedOptionRect.top < menuRect.top || selectedOptionRect.bottom > menuRect.bottom) {\n setTimeout(() => {\n if (menuRef && selectedOptionRef.current) {\n menuRef.scrollTo(0, selectedOptionRef.current.offsetTop)\n }\n }, 0)\n }\n }\n }, [multiple, disableAutoScrollToSelectedOption, menuOpen, menuOptionsLoading, inputText, menuRef])\n\n return (\n <FormInputLabel\n {...rootProps}\n {...sizeProps}\n ref={ref}\n id={formInputLabelId}\n onColored={contrast}\n primary={primary}\n error={status === 'error'}\n success={status === 'success'}\n focus={focusWithin}\n icon={[icon, <Styled.ChevronIcon key='chevron' up={menuOpen} />]}\n iconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...iconProps,\n }}\n palette={{\n color: rootProps.disabled ? palette.labelColorDisabled : palette.labelColor,\n backgroundColor: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColor,\n backgroundColorHover: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColorHover,\n borderColor: rootProps.disabled ? palette.borderColorDisabled : palette.borderColor,\n }}\n onClick={(evt) => {\n if (rootProps.onClick) rootProps.onClick(evt)\n\n if (rootProps.disabled) return\n\n inputRef.current?.focus()\n\n if (!menuOpen) {\n setMenuOpenRequest(true)\n\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n } else if (menuRef && evt.target instanceof Node && !menuRef.contains(evt.target)) {\n setMenuOpenRequest(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n }\n }}\n onPointerDown={(evt) => {\n if (rootProps.onPointerDown) rootProps.onPointerDown(evt)\n\n preventBlur(evt)\n }}\n onMouseDown={(evt) => {\n if (rootProps.onMouseDown) rootProps.onMouseDown(evt)\n\n if (!window.PointerEvent) preventBlur(evt)\n }}\n onFocus={(evt) => {\n if (rootProps.onFocus) rootProps.onFocus(evt)\n\n setFocusWithin(true)\n\n if (inputRef.current && evt.target === inputRef.current && searchable && !multiple && !menuOpen) {\n updateInputText('')\n }\n }}\n onBlur={(evt) => {\n if (rootProps.onBlur) rootProps.onBlur(evt)\n\n if (\n evt.currentTarget.contains(evt.relatedTarget) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.relatedTarget))\n ) {\n return\n }\n\n setFocusWithin(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }}\n input={\n <>\n {inputRequired && !searchable && !readOnly ? (\n <Styled.InputMimic\n required\n type='text'\n inputMode='none'\n form={form}\n tabIndex={-1}\n onFocus={() => {\n inputRef.current?.focus()\n }}\n />\n ) : null}\n <FormInput\n {...sizeProps}\n ref={inputRef}\n role='combobox'\n aria-controls={menuListId}\n aria-expanded={menuOpen}\n type='text'\n autoComplete='off'\n autoCapitalize='off'\n autoCorrect='off'\n spellCheck='false'\n active={inputActive}\n label={label}\n labelId={inputLabelId}\n labelPosition={labelPosition}\n form={form}\n autoFocus={autoFocus}\n inputMode={searchable ? inputMode : 'none'}\n maxLength={maxLength}\n placeholder={placeholder}\n readOnly={readOnly || !searchable}\n required={inputRequired}\n disabled={rootProps.disabled}\n value={inputText}\n palette={{\n color: palette.color,\n colorDisabled: palette.colorDisabled,\n placeholderColor: palette.placeholderColor,\n placeholderColorDisabled: palette.placeholderColorDisabled,\n }}\n onClick={(evt) => {\n if (menuOpen && evt.currentTarget.selectionStart !== evt.currentTarget.selectionEnd) {\n evt.stopPropagation()\n }\n }}\n onChange={(evt) => {\n const inputValue = evt.currentTarget.value\n\n updateInputText(inputValue)\n updateOptionsDebounced(inputValue)\n setMenuOpenRequest(true)\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Enter.validate(evt.key)) {\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Space.validate(evt.key) && (!menuOpen || evt.currentTarget.selectionStart === 0)) {\n evt.preventDefault()\n\n if (!menuOpen) {\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n }\n\n setMenuOpenRequest((prev) => !prev)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Tab.validate(evt.key) && menuOpen) {\n evt.preventDefault()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.ArrowDown.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx + 1] ?? menuItems[0]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusFirstFocusable(menuListRef.current)\n }\n }\n\n if (keyboardKeys.ArrowUp.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx - 1] ?? menuItems[menuItems.length - 1]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusLastFocusable(menuListRef.current)\n }\n }\n }}\n />\n {dropdownSelectedOption.map((option) => (\n <input\n key={option.value}\n type='hidden'\n name={name}\n value={option.value}\n form={form}\n disabled={rootProps.disabled || option.disabled}\n />\n ))}\n </>\n }\n addon={\n <>\n {multiple && dropdownSelectedOption.length > 0 ? (\n <Chip\n size='xs'\n active\n black\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n cursor={rootProps.disabled ? 'not-allowed' : undefined}\n text={dropdownSelectedOption.length}\n textProps={{\n appearance: 'caption',\n size: 'xs',\n }}\n palette={\n rootProps.disabled\n ? {\n color: 'content-disabled',\n colorHover: 'content-disabled',\n backgroundColor: 'bg-disabled-small',\n backgroundColorHover: 'bg-disabled-small',\n }\n : undefined\n }\n onPointerDown={(evt) => {\n evt.preventDefault()\n }}\n onMouseDown={(evt) => {\n if (!window.PointerEvent) evt.preventDefault()\n }}\n discardButtonProps={{\n square: true,\n contrast: !rootProps.disabled,\n onClick: (evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption([])\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n },\n }}\n />\n ) : null}\n {!multiple && clearable && dropdownSelectedOption.length > 0 ? (\n <IconButton\n icon={<Close />}\n size='l'\n square\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(null)\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n }}\n />\n ) : null}\n </>\n }\n dropdown={\n <DropdownMenu\n {...menuProps}\n setRef={setMenuRef}\n open={menuOpen}\n popperReferenceId={formInputLabelId}\n secondary={!contrast}\n elevated={contrast}\n disableAutoFocus\n palette={{\n backgroundColor: palette.menuBackgroundColor,\n borderColor: palette.menuBorderColor,\n }}\n empty={menuOptions.length === 0}\n loading={menuOptionsLoading}\n loadingMessage={loadingMessage}\n loadingIcon={loadingIcon}\n loadingIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...loadingIconProps,\n }}\n emptyMessage={optionsEmptyMessage}\n emptyIcon={optionsEmptyIcon}\n emptyIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...optionsEmptyIconProps,\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Tab.validate(evt.key)) {\n evt.preventDefault()\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Enter.validate(evt.key)) {\n inputRef.current?.focus()\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Backspace.validate(evt.key) && !readOnly && (multiple || (!multiple && clearable))) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(multiple ? [] : null)\n\n updateInputText('')\n updateOptions('')\n }\n }}\n >\n {multiple ? (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n aria-multiselectable\n >\n {inputText.length === 0 ? (\n <>\n {optionsMultiToggle ? (\n <ListItem\n {...sizeProps}\n text={optionsMultiToggleCaption}\n disabled={rootProps.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n name={name}\n checked={multiToggleChecked}\n indeterminate={multiToggleIndeterminate}\n error={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'error')}\n success={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'success')}\n onChange={() => {\n if (!readOnly) {\n const update =\n multiToggleChecked || multiToggleIndeterminate\n ? dropdownSelectedOption.filter((option) => option.disabled)\n : menuOptions.filter((option) => !option.disabled)\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ) : null}\n {optionsMultiToggle ? <MenuDivider /> : null}\n {groupSelectedOptions\n ? menuOptionsGroups[0].map((option) => {\n const optionStatus = option.status ?? status\n const optionErrorStatus = optionStatus === 'error'\n const optionSuccessStatus = optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n active\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected\n name={name}\n value={option.value}\n checked\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = dropdownSelectedOption.filter(\n (item) => item.value !== evt.currentTarget.value\n )\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })\n : null}\n {groupSelectedOptions && menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0 ? (\n <MenuDivider />\n ) : null}\n {groupSelectedOptions\n ? menuOptionsGroups[1].map((option) => (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={false}\n name={name}\n value={option.value}\n checked={false}\n onChange={() => {\n if (!readOnly) {\n const update = [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ))\n : null}\n {!groupSelectedOptions &&\n menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n ) : (\n <>\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n )}\n </MenuList>\n ) : (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n >\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n return (\n <ListItem\n {...sizeProps}\n role='option'\n aria-selected={selected}\n ref={selected ? selectedOptionRef : undefined}\n key={option.value}\n text={option.text}\n active={selected}\n danger={Boolean(selected && status === 'error')}\n success={Boolean(selected && status === 'success')}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n const update = { ...option }\n\n if (selectedOption === undefined) {\n updateInputText(getDropdownInputText(update))\n setDropdownSelectedOption(getDropdownSelectedOption(update))\n }\n\n if (onSelectOption) onSelectOption(update)\n\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n }}\n />\n )\n })}\n </MenuList>\n )}\n </DropdownMenu>\n }\n />\n )\n }),\n {\n sizes: SIZES,\n displayName: COMPONENT_NAME,\n }\n)\n\nexport { Dropdown, COMPONENT_NAME }\n"],"names":["COMPONENT_NAME","Dropdown","withMergedProps","forwardRef","props","ref","size","name","labelPosition","searchable","primary","optionsMultiToggle","iconProps","menuProps","loadingIconProps","optionsEmptyIconProps","loading","autoFocus","disableAutoScrollToSelectedOption","closeMenuOnScroll","scrollMonitorTarget","contrast","selectedOption","defaultSelectedOption","icon","inputMode","loadingMessage","loadingIcon","maxLength","multiple","clearable","onChangeInput","onCloseMenu","onOpenMenu","onSelectOption","options","loadOptions","groupSelectedOptions","optionsMultiToggleCaption","optionsEmptyMessage","optionsEmptyIcon","palette","placeholder","readOnly","required","status","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","form","label","rootProps","sizeProps","iconBaseProps","sizes","SIZES_ICON","color","disabled","formInputLabelId","useMemo","id","nanoid","inputLabelId","menuListId","filteredOptions","getFilteredOptions","useFilteredOptions","loadedOptions","optionsLoading","getLoadedOptions","useLoadedOptions","dropdownSelectedOption","setDropdownSelectedOption","useState","getDropdownSelectedOption","undefined","inputText","setInputText","getDropdownInputText","focusWithin","setFocusWithin","menuOpenRequest","setMenuOpenRequest","menuOptions","menuOptionsLoading","menuOptionsGroups","groupDropdownOptions","menuOpen","inputRequired","length","inputActive","Boolean","multiToggleChecked","multiToggleIndeterminate","inputRef","useRef","menuRef","setMenuRef","menuListRef","selectedOptionRef","menuOpenPrevRef","updateInputText","useCallback","inputTextValue","updateOptions","updateOptionsDebounced","createDebouncedCallback","preventBlur","evt","target","current","Node","currentTarget","contains","renderInPortal","preventDefault","useScrollMonitor","onScrollStart","focus","useLayoutEffect","useEffect","menuRect","getBoundingClientRect","selectedOptionRect","top","bottom","setTimeout","scrollTo","offsetTop","_jsx","FormInputLabel","onColored","error","success","Styled","up","labelColorDisabled","labelColor","backgroundColor","backgroundColorDisabled","backgroundColorHover","borderColor","borderColorDisabled","onClick","onPointerDown","onMouseDown","window","PointerEvent","onFocus","onBlur","relatedTarget","input","_jsxs","_Fragment","children","type","tabIndex","FormInput","role","autoComplete","autoCapitalize","autoCorrect","spellCheck","active","labelId","value","colorDisabled","placeholderColor","placeholderColorDisabled","selectionStart","selectionEnd","stopPropagation","onChange","inputValue","onKeyDown","keyboardKeys","Enter","validate","key","Space","prev","Esc","Tab","ArrowDown","menuItems","idx","findIndex","item","focusTarget","HTMLElement","focusFirstFocusable","ArrowUp","focusLastFocusable","map","option","addon","Chip","black","marginLeft","cursor","text","textProps","appearance","colorHover","discardButtonProps","square","IconButton","Close","dropdown","DropdownMenu","setRef","open","popperReferenceId","secondary","elevated","disableAutoFocus","menuBackgroundColor","menuBorderColor","empty","emptyMessage","emptyIcon","emptyIconProps","Backspace","MenuList","ListItem","borderRadius","ellipsis","wordBreak","control","InputCheckbox","SIZES_CHECKBOX","checked","indeterminate","update","filter","MenuDivider","optionStatus","optionErrorStatus","optionSuccessStatus","_createElement","danger","selected","SIZES","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.mjs","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import { forwardRef, useState, useRef, useEffect, useLayoutEffect, useMemo, useCallback } from 'react'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport type { MergedProps } from 'hocs/withMergedProps'\nimport { useScrollMonitor } from 'hooks/useScrollMonitor'\nimport { focusFirstFocusable, focusLastFocusable } from 'shared/utils/dom'\nimport { createDebouncedCallback } from 'shared/utils/misc'\nimport { keyboardKeys } from 'shared/constants'\nimport type { Nullable } from 'shared/types'\nimport { FormInput } from 'components/FormInput'\nimport { FormInputLabel } from 'components/FormInputLabel'\nimport { MenuList } from 'components/MenuList'\nimport { MenuDivider } from 'components/MenuDivider'\nimport { ListItem } from 'components/ListItem'\nimport { InputCheckbox } from 'components/InputCheckbox'\nimport { Chip } from 'components/Chip'\nimport { IconButton } from 'components/IconButton'\nimport type { IconProps } from 'components/Icon'\nimport { DropdownMenu } from './DropdownMenu'\nimport { useFilteredOptions, useLoadedOptions } from './hooks'\nimport { SIZES, SIZES_CHECKBOX, SIZES_ICON } from './sizes'\nimport { getDropdownInputText, getDropdownSelectedOption, groupDropdownOptions } from './utils'\nimport * as Styled from './style'\nimport type { DropdownProps, DropdownOption } from './types'\n\nconst COMPONENT_NAME = 'Dropdown'\n\n/**\n *\n * Компонент для выбора одной или нескольких опций из числа доступных.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<div\\> элемента.\n */\nconst Dropdown: React.ForwardRefExoticComponent<DropdownProps> = withMergedProps<DropdownProps, HTMLDivElement>(\n forwardRef<HTMLDivElement, MergedProps<DropdownProps>>((props, ref) => {\n const {\n size = 'm',\n name = 'fox-dropdown',\n labelPosition = 'dynamic',\n searchable = true,\n primary = true,\n optionsMultiToggle = true,\n iconProps = {},\n menuProps = {},\n loadingIconProps = {},\n optionsEmptyIconProps = {},\n loading,\n autoFocus,\n disableAutoScrollToSelectedOption,\n closeMenuOnScroll,\n scrollMonitorTarget,\n contrast,\n selectedOption,\n defaultSelectedOption,\n icon,\n inputMode,\n loadingMessage,\n loadingIcon,\n maxLength,\n multiple,\n clearable,\n onChangeInput,\n onCloseMenu,\n onOpenMenu,\n onSelectOption,\n options,\n loadOptions,\n groupSelectedOptions,\n optionsMultiToggleCaption,\n optionsEmptyMessage,\n optionsEmptyIcon,\n palette,\n placeholder,\n readOnly,\n required,\n status,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n form,\n label,\n ...rootProps\n } = props\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconBaseProps: IconProps = {\n sizes: SIZES_ICON,\n color: rootProps.disabled ? 'content-disabled' : 'content-onmain-tertiary',\n }\n\n const formInputLabelId = useMemo(() => rootProps.id ?? `${name}-${nanoid()}`, [name, rootProps.id])\n const inputLabelId = useMemo(() => nanoid(), [])\n const menuListId = useMemo(() => nanoid(), [])\n\n const [filteredOptions, getFilteredOptions] = useFilteredOptions({\n options,\n })\n\n const [loadedOptions, optionsLoading, getLoadedOptions] = useLoadedOptions({\n loadOptions,\n options,\n })\n\n const [dropdownSelectedOption, setDropdownSelectedOption] = useState<DropdownOption[]>(() =>\n getDropdownSelectedOption(selectedOption !== undefined ? selectedOption : defaultSelectedOption, multiple)\n )\n\n const [inputText, setInputText] = useState<string>(() => getDropdownInputText(dropdownSelectedOption, multiple))\n\n const [focusWithin, setFocusWithin] = useState<boolean>(false)\n\n const [menuOpenRequest, setMenuOpenRequest] = useState<boolean>(false)\n\n const menuOptions: DropdownOption[] = loadOptions ? loadedOptions : filteredOptions\n const menuOptionsLoading = loadOptions ? (loading ?? optionsLoading) : loading\n\n const menuOptionsGroups: ReturnType<typeof groupDropdownOptions> = useMemo(\n () => (multiple ? groupDropdownOptions(menuOptions, dropdownSelectedOption) : [[], []]),\n [multiple, menuOptions, dropdownSelectedOption]\n )\n\n const menuOpen = menuOpenRequest && !rootProps.disabled\n\n const inputRequired = required && dropdownSelectedOption.length === 0\n const inputActive = Boolean(menuOpen || inputText || focusWithin)\n\n const multiToggleChecked = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length === 0\n const multiToggleIndeterminate = menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0\n\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuRef, setMenuRef] = useState<Nullable<HTMLElement>>(null)\n const menuListRef = useRef<HTMLUListElement>(null)\n const selectedOptionRef = useRef<HTMLElement>(null)\n const menuOpenPrevRef = useRef<boolean>(menuOpen)\n\n const updateInputText = useCallback(\n (inputTextValue: string) => {\n setInputText(inputTextValue)\n\n if (onChangeInput) {\n onChangeInput(inputTextValue)\n }\n },\n [onChangeInput]\n )\n\n const updateOptions = useCallback(\n (inputTextValue: string) => {\n if (loadOptions) {\n getLoadedOptions(inputTextValue)\n } else {\n getFilteredOptions(inputTextValue)\n }\n },\n [loadOptions, getLoadedOptions, getFilteredOptions]\n )\n\n const updateOptionsDebounced = useMemo(() => {\n return createDebouncedCallback(updateOptions, 150)\n }, [updateOptions])\n\n const preventBlur = (evt: React.PointerEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n if (\n evt.target !== inputRef.current &&\n evt.target instanceof Node &&\n (evt.currentTarget.contains(evt.target) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.target)))\n ) {\n evt.preventDefault()\n }\n }\n\n useScrollMonitor({\n target: scrollMonitorTarget,\n onScrollStart: () => {\n if (closeMenuOnScroll && menuOpen) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n },\n })\n\n useLayoutEffect(() => {\n if (selectedOption === undefined) return\n\n if (!multiple && !menuOpen) {\n updateInputText(getDropdownInputText(selectedOption))\n }\n setDropdownSelectedOption(getDropdownSelectedOption(selectedOption, multiple))\n }, [multiple, selectedOption, menuOpen, updateInputText])\n\n useEffect(() => {\n if (menuOpen === menuOpenPrevRef.current) return\n\n if (menuOpen && onOpenMenu) onOpenMenu()\n if (!menuOpen && onCloseMenu) onCloseMenu()\n\n menuOpenPrevRef.current = menuOpen\n }, [menuOpen, onCloseMenu, onOpenMenu])\n\n useEffect(() => {\n if (\n !multiple &&\n !disableAutoScrollToSelectedOption &&\n menuOpen &&\n !menuOptionsLoading &&\n inputText.length === 0 &&\n menuRef &&\n selectedOptionRef.current\n ) {\n const menuRect = menuRef.getBoundingClientRect()\n const selectedOptionRect = selectedOptionRef.current.getBoundingClientRect()\n\n if (selectedOptionRect.top < menuRect.top || selectedOptionRect.bottom > menuRect.bottom) {\n setTimeout(() => {\n if (menuRef && selectedOptionRef.current) {\n menuRef.scrollTo(0, selectedOptionRef.current.offsetTop)\n }\n }, 0)\n }\n }\n }, [multiple, disableAutoScrollToSelectedOption, menuOpen, menuOptionsLoading, inputText, menuRef])\n\n return (\n <FormInputLabel\n {...rootProps}\n {...sizeProps}\n ref={ref}\n id={formInputLabelId}\n onColored={contrast}\n primary={primary}\n error={status === 'error'}\n success={status === 'success'}\n focus={focusWithin}\n icon={[icon, <Styled.ChevronIcon key='chevron' up={menuOpen} />]}\n iconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...iconProps,\n }}\n palette={{\n color: rootProps.disabled ? palette.labelColorDisabled : palette.labelColor,\n backgroundColor: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColor,\n backgroundColorHover: rootProps.disabled ? palette.backgroundColorDisabled : palette.backgroundColorHover,\n borderColor: rootProps.disabled ? palette.borderColorDisabled : palette.borderColor,\n }}\n onClick={(evt) => {\n if (rootProps.onClick) rootProps.onClick(evt)\n\n if (rootProps.disabled) return\n\n inputRef.current?.focus()\n\n if (!menuOpen) {\n setMenuOpenRequest(true)\n\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n } else if (menuRef && evt.target instanceof Node && !menuRef.contains(evt.target)) {\n setMenuOpenRequest(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n }\n }}\n onPointerDown={(evt) => {\n if (rootProps.onPointerDown) rootProps.onPointerDown(evt)\n\n preventBlur(evt)\n }}\n onMouseDown={(evt) => {\n if (rootProps.onMouseDown) rootProps.onMouseDown(evt)\n\n if (!window.PointerEvent) preventBlur(evt)\n }}\n onFocus={(evt) => {\n if (rootProps.onFocus) rootProps.onFocus(evt)\n\n setFocusWithin(true)\n\n if (inputRef.current && evt.target === inputRef.current && searchable && !multiple && !menuOpen) {\n updateInputText('')\n }\n }}\n onBlur={(evt) => {\n if (rootProps.onBlur) rootProps.onBlur(evt)\n\n if (\n evt.currentTarget.contains(evt.relatedTarget) ||\n (menuProps.renderInPortal && menuOpen && menuRef && menuRef.contains(evt.relatedTarget))\n ) {\n return\n }\n\n setFocusWithin(false)\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }}\n input={\n <>\n {inputRequired && !searchable && !readOnly ? (\n <Styled.InputMimic\n required\n type='text'\n inputMode='none'\n form={form}\n tabIndex={-1}\n onFocus={() => {\n inputRef.current?.focus()\n }}\n />\n ) : null}\n <FormInput\n {...sizeProps}\n ref={inputRef}\n role='combobox'\n aria-controls={menuListId}\n aria-expanded={menuOpen}\n type='text'\n autoComplete='off'\n autoCapitalize='off'\n autoCorrect='off'\n spellCheck='false'\n active={inputActive}\n label={label}\n labelId={inputLabelId}\n labelPosition={labelPosition}\n form={form}\n autoFocus={autoFocus}\n inputMode={searchable ? inputMode : 'none'}\n maxLength={maxLength}\n placeholder={placeholder}\n readOnly={readOnly || !searchable}\n required={inputRequired}\n disabled={rootProps.disabled}\n value={inputText}\n palette={{\n color: palette.color,\n colorDisabled: palette.colorDisabled,\n placeholderColor: palette.placeholderColor,\n placeholderColorDisabled: palette.placeholderColorDisabled,\n }}\n onClick={(evt) => {\n if (menuOpen && evt.currentTarget.selectionStart !== evt.currentTarget.selectionEnd) {\n evt.stopPropagation()\n }\n }}\n onChange={(evt) => {\n const inputValue = evt.currentTarget.value\n\n updateInputText(inputValue)\n updateOptionsDebounced(inputValue)\n setMenuOpenRequest(true)\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Enter.validate(evt.key)) {\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Space.validate(evt.key) && (!menuOpen || evt.currentTarget.selectionStart === 0)) {\n evt.preventDefault()\n\n if (!menuOpen) {\n updateOptions('')\n if (searchable) {\n updateInputText('')\n }\n }\n\n setMenuOpenRequest((prev) => !prev)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Tab.validate(evt.key) && menuOpen) {\n evt.preventDefault()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.ArrowDown.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx + 1] ?? menuItems[0]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusFirstFocusable(menuListRef.current)\n }\n }\n\n if (keyboardKeys.ArrowUp.validate(evt.key) && menuOpen && menuListRef.current) {\n evt.preventDefault()\n\n if (!multiple && selectedOptionRef.current) {\n const menuItems = [...menuListRef.current.children]\n\n const idx = menuItems.findIndex((item) => item.contains(selectedOptionRef.current as Node))\n\n const focusTarget = menuItems[idx - 1] ?? menuItems[menuItems.length - 1]\n\n if (focusTarget instanceof HTMLElement) {\n focusFirstFocusable(focusTarget)\n }\n } else {\n focusLastFocusable(menuListRef.current)\n }\n }\n }}\n />\n {dropdownSelectedOption.map((option) => (\n <input\n key={option.value}\n type='hidden'\n name={name}\n value={option.value}\n form={form}\n disabled={rootProps.disabled || option.disabled}\n />\n ))}\n </>\n }\n addon={\n <>\n {multiple && dropdownSelectedOption.length > 0 ? (\n <Chip\n size='xs'\n active\n black\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n cursor={rootProps.disabled ? 'not-allowed' : undefined}\n text={dropdownSelectedOption.length}\n textProps={{\n appearance: 'caption',\n size: 'xs',\n }}\n palette={\n rootProps.disabled\n ? {\n color: 'content-disabled',\n colorHover: 'content-disabled',\n backgroundColor: 'bg-disabled-small',\n backgroundColorHover: 'bg-disabled-small',\n }\n : undefined\n }\n onPointerDown={(evt) => {\n evt.preventDefault()\n }}\n onMouseDown={(evt) => {\n if (!window.PointerEvent) evt.preventDefault()\n }}\n discardButtonProps={{\n square: true,\n contrast: !rootProps.disabled,\n onClick: (evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption([])\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n },\n }}\n />\n ) : null}\n {!multiple && clearable && dropdownSelectedOption.length > 0 ? (\n <IconButton\n icon='close'\n size='l'\n square\n marginLeft='var(--gap, 12px)'\n disabled={rootProps.disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(null)\n\n inputRef.current?.focus()\n updateInputText('')\n updateOptions('')\n setMenuOpenRequest(true)\n }\n }}\n />\n ) : null}\n </>\n }\n dropdown={\n <DropdownMenu\n {...menuProps}\n setRef={setMenuRef}\n open={menuOpen}\n popperReferenceId={formInputLabelId}\n secondary={!contrast}\n elevated={contrast}\n disableAutoFocus\n palette={{\n backgroundColor: palette.menuBackgroundColor,\n borderColor: palette.menuBorderColor,\n }}\n empty={menuOptions.length === 0}\n loading={menuOptionsLoading}\n loadingMessage={loadingMessage}\n loadingIcon={loadingIcon}\n loadingIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...loadingIconProps,\n }}\n emptyMessage={optionsEmptyMessage}\n emptyIcon={optionsEmptyIcon}\n emptyIconProps={{\n ...sizeProps,\n ...iconBaseProps,\n ...optionsEmptyIconProps,\n }}\n onKeyDown={(evt) => {\n if (keyboardKeys.Tab.validate(evt.key)) {\n evt.preventDefault()\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Enter.validate(evt.key)) {\n inputRef.current?.focus()\n updateInputText(getDropdownInputText(dropdownSelectedOption, multiple))\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Esc.validate(evt.key)) {\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n\n if (keyboardKeys.Backspace.validate(evt.key) && !readOnly && (multiple || (!multiple && clearable))) {\n if (selectedOption === undefined) {\n setDropdownSelectedOption([])\n }\n\n if (onSelectOption) onSelectOption(multiple ? [] : null)\n\n updateInputText('')\n updateOptions('')\n }\n }}\n >\n {multiple ? (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n aria-multiselectable\n >\n {inputText.length === 0 ? (\n <>\n {optionsMultiToggle ? (\n <ListItem\n {...sizeProps}\n text={optionsMultiToggleCaption}\n disabled={rootProps.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n name={name}\n checked={multiToggleChecked}\n indeterminate={multiToggleIndeterminate}\n error={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'error')}\n success={Boolean((multiToggleChecked || multiToggleIndeterminate) && status === 'success')}\n onChange={() => {\n if (!readOnly) {\n const update =\n multiToggleChecked || multiToggleIndeterminate\n ? dropdownSelectedOption.filter((option) => option.disabled)\n : menuOptions.filter((option) => !option.disabled)\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ) : null}\n {optionsMultiToggle ? <MenuDivider /> : null}\n {groupSelectedOptions\n ? menuOptionsGroups[0].map((option) => {\n const optionStatus = option.status ?? status\n const optionErrorStatus = optionStatus === 'error'\n const optionSuccessStatus = optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n active\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected\n name={name}\n value={option.value}\n checked\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = dropdownSelectedOption.filter(\n (item) => item.value !== evt.currentTarget.value\n )\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })\n : null}\n {groupSelectedOptions && menuOptionsGroups[0].length > 0 && menuOptionsGroups[1].length > 0 ? (\n <MenuDivider />\n ) : null}\n {groupSelectedOptions\n ? menuOptionsGroups[1].map((option) => (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n inputRef.current?.focus()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={false}\n name={name}\n value={option.value}\n checked={false}\n onChange={() => {\n if (!readOnly) {\n const update = [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n ))\n : null}\n {!groupSelectedOptions &&\n menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n ) : (\n <>\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n const optionStatus = option.status ?? status\n const optionErrorStatus = selected && optionStatus === 'error'\n const optionSuccessStatus = selected && optionStatus === 'success'\n\n return (\n <ListItem\n {...sizeProps}\n key={option.value}\n text={option.text}\n danger={optionErrorStatus}\n success={optionSuccessStatus}\n disabled={rootProps.disabled || option.disabled}\n active={selected}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n }}\n control={\n <InputCheckbox\n sizes={SIZES_CHECKBOX}\n form='none'\n role='option'\n aria-selected={selected}\n name={name}\n value={option.value}\n checked={selected}\n error={optionErrorStatus}\n success={optionSuccessStatus}\n onChange={(evt) => {\n if (!readOnly) {\n const update = selected\n ? dropdownSelectedOption.filter((item) => item.value !== evt.currentTarget.value)\n : [...dropdownSelectedOption, option]\n\n if (selectedOption === undefined) {\n setDropdownSelectedOption(update)\n }\n\n if (onSelectOption) onSelectOption(update)\n }\n }}\n />\n }\n />\n )\n })}\n </>\n )}\n </MenuList>\n ) : (\n <MenuList\n ref={menuListRef}\n id={menuListId}\n role='listbox'\n aria-labelledby={label ? inputLabelId : undefined}\n >\n {menuOptions.map((option) => {\n const selected = dropdownSelectedOption.findIndex((item) => item.value === option.value) !== -1\n\n return (\n <ListItem\n {...sizeProps}\n role='option'\n aria-selected={selected}\n ref={selected ? selectedOptionRef : undefined}\n key={option.value}\n text={option.text}\n active={selected}\n danger={Boolean(selected && status === 'error')}\n success={Boolean(selected && status === 'success')}\n disabled={rootProps.disabled || option.disabled}\n borderRadius={8}\n ellipsis={false}\n textProps={{ wordBreak: 'break-word' }}\n onClick={(evt) => {\n evt.stopPropagation()\n\n if (!readOnly) {\n const update = { ...option }\n\n if (selectedOption === undefined) {\n updateInputText(getDropdownInputText(update))\n setDropdownSelectedOption(getDropdownSelectedOption(update))\n }\n\n if (onSelectOption) onSelectOption(update)\n\n inputRef.current?.focus()\n setMenuOpenRequest(false)\n }\n }}\n />\n )\n })}\n </MenuList>\n )}\n </DropdownMenu>\n }\n />\n )\n }),\n {\n sizes: SIZES,\n displayName: COMPONENT_NAME,\n }\n)\n\nexport { Dropdown, COMPONENT_NAME }\n"],"names":["COMPONENT_NAME","Dropdown","withMergedProps","forwardRef","props","ref","size","name","labelPosition","searchable","primary","optionsMultiToggle","iconProps","menuProps","loadingIconProps","optionsEmptyIconProps","loading","autoFocus","disableAutoScrollToSelectedOption","closeMenuOnScroll","scrollMonitorTarget","contrast","selectedOption","defaultSelectedOption","icon","inputMode","loadingMessage","loadingIcon","maxLength","multiple","clearable","onChangeInput","onCloseMenu","onOpenMenu","onSelectOption","options","loadOptions","groupSelectedOptions","optionsMultiToggleCaption","optionsEmptyMessage","optionsEmptyIcon","palette","placeholder","readOnly","required","status","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","form","label","rootProps","sizeProps","iconBaseProps","sizes","SIZES_ICON","color","disabled","formInputLabelId","useMemo","id","nanoid","inputLabelId","menuListId","filteredOptions","getFilteredOptions","useFilteredOptions","loadedOptions","optionsLoading","getLoadedOptions","useLoadedOptions","dropdownSelectedOption","setDropdownSelectedOption","useState","getDropdownSelectedOption","undefined","inputText","setInputText","getDropdownInputText","focusWithin","setFocusWithin","menuOpenRequest","setMenuOpenRequest","menuOptions","menuOptionsLoading","menuOptionsGroups","groupDropdownOptions","menuOpen","inputRequired","length","inputActive","Boolean","multiToggleChecked","multiToggleIndeterminate","inputRef","useRef","menuRef","setMenuRef","menuListRef","selectedOptionRef","menuOpenPrevRef","updateInputText","useCallback","inputTextValue","updateOptions","updateOptionsDebounced","createDebouncedCallback","preventBlur","evt","target","current","Node","currentTarget","contains","renderInPortal","preventDefault","useScrollMonitor","onScrollStart","focus","useLayoutEffect","useEffect","menuRect","getBoundingClientRect","selectedOptionRect","top","bottom","setTimeout","scrollTo","offsetTop","_jsx","FormInputLabel","onColored","error","success","Styled","up","labelColorDisabled","labelColor","backgroundColor","backgroundColorDisabled","backgroundColorHover","borderColor","borderColorDisabled","onClick","onPointerDown","onMouseDown","window","PointerEvent","onFocus","onBlur","relatedTarget","input","_jsxs","_Fragment","children","type","tabIndex","FormInput","role","autoComplete","autoCapitalize","autoCorrect","spellCheck","active","labelId","value","colorDisabled","placeholderColor","placeholderColorDisabled","selectionStart","selectionEnd","stopPropagation","onChange","inputValue","onKeyDown","keyboardKeys","Enter","validate","key","Space","prev","Esc","Tab","ArrowDown","menuItems","idx","findIndex","item","focusTarget","HTMLElement","focusFirstFocusable","ArrowUp","focusLastFocusable","map","option","addon","Chip","black","marginLeft","cursor","text","textProps","appearance","colorHover","discardButtonProps","square","IconButton","dropdown","DropdownMenu","setRef","open","popperReferenceId","secondary","elevated","disableAutoFocus","menuBackgroundColor","menuBorderColor","empty","emptyMessage","emptyIcon","emptyIconProps","Backspace","MenuList","ListItem","borderRadius","ellipsis","wordBreak","control","InputCheckbox","SIZES_CHECKBOX","checked","indeterminate","update","filter","MenuDivider","optionStatus","optionErrorStatus","optionSuccessStatus","_createElement","danger","selected","SIZES","displayName"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- 'use strict';var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var MenuContainer=require('../MenuContainer/MenuContainer.js');var Icon=require('../Icon/Icon.js');var Text=require('../Text/Text.js');var index=require('../../icon-pack/src/icons/Redo/index.js');exports.DropdownMenuNoOptions=e=>{const{loadingIcon:n=jsxRuntime.jsx(style.LoadingIconAnimated,{}),emptyIcon:r=jsxRuntime.jsx(index.Redo,{}),loadingIconProps:i={},emptyIconProps:t={},loading:o,loadingMessage:s,emptyMessage:a}=e;return jsxRuntime.jsxs(MenuContainer.MenuContainer,{children:[jsxRuntime.jsx(style.IconContainer,{children:jsxRuntime.jsx(Icon.Icon,o?{preset:"brand",name:typeof n=='string'?n:void 0,icon:typeof n!='string'?n:void 0,...i}:{preset:"brand",name:typeof r=='string'?r:void 0,icon:typeof r!='string'?r:void 0,...t})}),o&&s?jsxRuntime.jsx(Text.Text,{as:"p",appearance:"body",size:"inherit",color:"inherit",textAlign:"center",wordBreak:"break-word",marginRight:12,marginBottom:12,marginLeft:12,children:s}):null,!o&&a?jsxRuntime.jsx(Text.Text,{as:"p",appearance:"body",size:"inherit",color:"inherit",textAlign:"center",wordBreak:"break-word",marginRight:12,marginBottom:12,marginLeft:12,children:a}):null]})};
1
+ 'use strict';var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var MenuContainer=require('../MenuContainer/MenuContainer.js');var Icon=require('../Icon/Icon.js');var Text=require('../Text/Text.js');exports.DropdownMenuNoOptions=e=>{const{loadingIcon:n=jsxRuntime.jsx(style.LoadingIconAnimated,{}),emptyIcon:r="redo",loadingIconProps:t={},emptyIconProps:i={},loading:o,loadingMessage:s,emptyMessage:a}=e;return jsxRuntime.jsxs(MenuContainer.MenuContainer,{children:[jsxRuntime.jsx(style.IconContainer,{children:jsxRuntime.jsx(Icon.Icon,o?{preset:"brand",name:typeof n=='string'?n:void 0,icon:typeof n!='string'?n:void 0,...t}:{preset:"brand",name:typeof r=='string'?r:void 0,icon:typeof r!='string'?r:void 0,...i})}),o&&s?jsxRuntime.jsx(Text.Text,{as:"p",appearance:"body",size:"inherit",color:"inherit",textAlign:"center",wordBreak:"break-word",marginRight:12,marginBottom:12,marginLeft:12,children:s}):null,!o&&a?jsxRuntime.jsx(Text.Text,{as:"p",appearance:"body",size:"inherit",color:"inherit",textAlign:"center",wordBreak:"break-word",marginRight:12,marginBottom:12,marginLeft:12,children:a}):null]})};
2
2
  //# sourceMappingURL=DropdownMenuNoOptions.js.map