@salutejs/plasma-new-hope 0.77.1-canary.1197.8831064988.0 → 0.77.1-canary.1201.8930079977.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (357) hide show
  1. package/cjs/components/Combobox/Combobox.css +17 -7
  2. package/cjs/components/Combobox/ui/ComboboxDivider/ComboboxDivider.css +15 -6
  3. package/cjs/components/Combobox/ui/ComboboxDivider/ComboboxDivider.js +2 -2
  4. package/cjs/components/Combobox/ui/ComboboxFooter/ComboboxFooter.css +15 -6
  5. package/cjs/components/Combobox/ui/ComboboxFooter/ComboboxFooter.js +2 -2
  6. package/cjs/components/Combobox/ui/ComboboxGroup/ComboboxGroup.css +15 -6
  7. package/cjs/components/Combobox/ui/ComboboxGroup/ComboboxGroup.js +2 -2
  8. package/cjs/components/Combobox/ui/ComboboxHeader/ComboboxHeader.css +15 -6
  9. package/cjs/components/Combobox/ui/ComboboxHeader/ComboboxHeader.js +2 -2
  10. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.css +4 -23
  11. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.js +81 -10
  12. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.js.map +1 -1
  13. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js +21 -9
  14. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  15. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.styles_s4sk53.css +4 -0
  16. package/cjs/components/Combobox/utils/index.js +23 -0
  17. package/cjs/components/Combobox/utils/index.js.map +1 -0
  18. package/cjs/components/Dropdown/Dropdown.css +25 -2
  19. package/cjs/components/Dropdown/Dropdown.js +138 -54
  20. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  21. package/cjs/components/Dropdown/Dropdown.styles.js +40 -7
  22. package/cjs/components/Dropdown/Dropdown.styles.js.map +1 -1
  23. package/cjs/components/Dropdown/Dropdown.styles_1tihqkp.css +3 -0
  24. package/cjs/components/Dropdown/Dropdown.tokens.js +26 -23
  25. package/cjs/components/Dropdown/Dropdown.tokens.js.map +1 -1
  26. package/cjs/components/Dropdown/hooks/useHashMaps.js +31 -0
  27. package/cjs/components/Dropdown/hooks/useHashMaps.js.map +1 -0
  28. package/cjs/components/Dropdown/hooks/useKeyboardNavigation.js +200 -0
  29. package/cjs/components/Dropdown/hooks/useKeyboardNavigation.js.map +1 -0
  30. package/cjs/components/Dropdown/reducers/focusedPathReducer.js +37 -0
  31. package/cjs/components/Dropdown/reducers/focusedPathReducer.js.map +1 -0
  32. package/cjs/components/Dropdown/reducers/pathReducer.js +41 -0
  33. package/cjs/components/Dropdown/reducers/pathReducer.js.map +1 -0
  34. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +119 -0
  35. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -0
  36. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.css +7 -4
  37. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +79 -100
  38. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  39. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +90 -5
  40. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
  41. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles_1o4szyu.css +5 -0
  42. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +30 -0
  43. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -0
  44. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles_12e50g5.css +4 -0
  45. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.css +4 -0
  46. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +112 -0
  47. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js.map +1 -0
  48. package/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base.js +1 -1
  49. package/cjs/components/Dropdown/ui/DropdownItemOld/variations/_size/base.js.map +1 -0
  50. package/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base.js +1 -1
  51. package/cjs/components/Dropdown/ui/DropdownItemOld/variations/_view/base.js.map +1 -0
  52. package/cjs/components/Dropdown/utils/index.js +16 -0
  53. package/cjs/components/Dropdown/utils/index.js.map +1 -1
  54. package/cjs/components/Pagination/Pagination.css +14 -7
  55. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +14 -7
  56. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  57. package/cjs/components/Select/Select.css +14 -7
  58. package/cjs/components/Select/ui/SelectDivider/SelectDivider.css +15 -6
  59. package/cjs/components/Select/ui/SelectDivider/SelectDivider.js +2 -2
  60. package/cjs/components/Select/ui/SelectFooter/SelectFooter.css +15 -6
  61. package/cjs/components/Select/ui/SelectFooter/SelectFooter.js +2 -2
  62. package/cjs/components/Select/ui/SelectGroup/SelectGroup.css +15 -6
  63. package/cjs/components/Select/ui/SelectGroup/SelectGroup.js +2 -2
  64. package/cjs/components/Select/ui/SelectHeader/SelectHeader.css +15 -6
  65. package/cjs/components/Select/ui/SelectHeader/SelectHeader.js +2 -2
  66. package/cjs/components/Select/ui/SelectItem/SelectItem.css +16 -7
  67. package/cjs/components/Select/ui/SelectItem/SelectItem.js +3 -3
  68. package/cjs/components/Select/ui/SelectItem/SelectItem.js.map +1 -1
  69. package/cjs/components/Select/ui/SelectItem/SelectItem.styles.js +2 -2
  70. package/cjs/components/Select/ui/SelectItem/SelectItem.styles.js.map +1 -1
  71. package/cjs/components/Select/ui/SelectItem/{SelectItem.styles_6h17aw.css → SelectItem.styles_vk39mp.css} +1 -1
  72. package/cjs/components/TextField/TextField.js +2 -2
  73. package/cjs/components/TextField/TextField.js.map +1 -1
  74. package/cjs/components/_Icon/Icon.assets/DisclosureRight.js +1 -2
  75. package/cjs/components/_Icon/Icon.assets/DisclosureRight.js.map +1 -1
  76. package/cjs/index.css +18 -8
  77. package/cjs/index.js +8 -2
  78. package/cjs/index.js.map +1 -1
  79. package/es/components/Combobox/Combobox.css +17 -7
  80. package/es/components/Combobox/ui/ComboboxDivider/ComboboxDivider.css +15 -6
  81. package/es/components/Combobox/ui/ComboboxDivider/ComboboxDivider.js +2 -2
  82. package/es/components/Combobox/ui/ComboboxFooter/ComboboxFooter.css +15 -6
  83. package/es/components/Combobox/ui/ComboboxFooter/ComboboxFooter.js +2 -2
  84. package/es/components/Combobox/ui/ComboboxGroup/ComboboxGroup.css +15 -6
  85. package/es/components/Combobox/ui/ComboboxGroup/ComboboxGroup.js +2 -2
  86. package/es/components/Combobox/ui/ComboboxHeader/ComboboxHeader.css +15 -6
  87. package/es/components/Combobox/ui/ComboboxHeader/ComboboxHeader.js +2 -2
  88. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.css +4 -23
  89. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.js +82 -11
  90. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.js.map +1 -1
  91. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js +19 -10
  92. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  93. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.styles_s4sk53.css +4 -0
  94. package/es/components/Combobox/utils/index.js +19 -0
  95. package/es/components/Combobox/utils/index.js.map +1 -0
  96. package/es/components/Dropdown/Dropdown.css +25 -2
  97. package/es/components/Dropdown/Dropdown.js +144 -60
  98. package/es/components/Dropdown/Dropdown.js.map +1 -1
  99. package/es/components/Dropdown/Dropdown.styles.js +39 -7
  100. package/es/components/Dropdown/Dropdown.styles.js.map +1 -1
  101. package/es/components/Dropdown/Dropdown.styles_1tihqkp.css +3 -0
  102. package/es/components/Dropdown/Dropdown.tokens.js +26 -23
  103. package/es/components/Dropdown/Dropdown.tokens.js.map +1 -1
  104. package/es/components/Dropdown/hooks/useHashMaps.js +27 -0
  105. package/es/components/Dropdown/hooks/useHashMaps.js.map +1 -0
  106. package/es/components/Dropdown/hooks/useKeyboardNavigation.js +196 -0
  107. package/es/components/Dropdown/hooks/useKeyboardNavigation.js.map +1 -0
  108. package/es/components/Dropdown/reducers/focusedPathReducer.js +33 -0
  109. package/es/components/Dropdown/reducers/focusedPathReducer.js.map +1 -0
  110. package/es/components/Dropdown/reducers/pathReducer.js +37 -0
  111. package/es/components/Dropdown/reducers/pathReducer.js.map +1 -0
  112. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +115 -0
  113. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -0
  114. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.css +7 -4
  115. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +80 -100
  116. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  117. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +89 -5
  118. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
  119. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles_1o4szyu.css +5 -0
  120. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +23 -0
  121. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -0
  122. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles_12e50g5.css +4 -0
  123. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.css +4 -0
  124. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +107 -0
  125. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js.map +1 -0
  126. package/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base.js +1 -1
  127. package/es/components/Dropdown/ui/DropdownItemOld/variations/_size/base.js.map +1 -0
  128. package/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base.js +1 -1
  129. package/es/components/Dropdown/ui/DropdownItemOld/variations/_view/base.js.map +1 -0
  130. package/es/components/Dropdown/utils/index.js +16 -2
  131. package/es/components/Dropdown/utils/index.js.map +1 -1
  132. package/es/components/Pagination/Pagination.css +14 -7
  133. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +14 -7
  134. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  135. package/es/components/Select/Select.css +14 -7
  136. package/es/components/Select/ui/SelectDivider/SelectDivider.css +15 -6
  137. package/es/components/Select/ui/SelectDivider/SelectDivider.js +2 -2
  138. package/es/components/Select/ui/SelectFooter/SelectFooter.css +15 -6
  139. package/es/components/Select/ui/SelectFooter/SelectFooter.js +2 -2
  140. package/es/components/Select/ui/SelectGroup/SelectGroup.css +15 -6
  141. package/es/components/Select/ui/SelectGroup/SelectGroup.js +2 -2
  142. package/es/components/Select/ui/SelectHeader/SelectHeader.css +15 -6
  143. package/es/components/Select/ui/SelectHeader/SelectHeader.js +2 -2
  144. package/es/components/Select/ui/SelectItem/SelectItem.css +16 -7
  145. package/es/components/Select/ui/SelectItem/SelectItem.js +3 -3
  146. package/es/components/Select/ui/SelectItem/SelectItem.js.map +1 -1
  147. package/es/components/Select/ui/SelectItem/SelectItem.styles.js +2 -2
  148. package/es/components/Select/ui/SelectItem/SelectItem.styles.js.map +1 -1
  149. package/es/components/Select/ui/SelectItem/{SelectItem.styles_6h17aw.css → SelectItem.styles_vk39mp.css} +1 -1
  150. package/es/components/TextField/TextField.js +3 -3
  151. package/es/components/TextField/TextField.js.map +1 -1
  152. package/es/components/_Icon/Icon.assets/DisclosureRight.js +1 -2
  153. package/es/components/_Icon/Icon.assets/DisclosureRight.js.map +1 -1
  154. package/es/index.css +18 -8
  155. package/es/index.js +4 -1
  156. package/es/index.js.map +1 -1
  157. package/package.json +3 -3
  158. package/styled-components/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.js +91 -2
  159. package/styled-components/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js +27 -7
  160. package/styled-components/cjs/components/Combobox/utils/index.js +23 -0
  161. package/styled-components/cjs/components/Dropdown/Dropdown.js +140 -54
  162. package/styled-components/cjs/components/Dropdown/Dropdown.styles.js +22 -7
  163. package/styled-components/cjs/components/Dropdown/Dropdown.tokens.js +26 -23
  164. package/styled-components/cjs/components/Dropdown/hooks/useHashMaps.js +29 -0
  165. package/styled-components/cjs/components/Dropdown/hooks/useKeyboardNavigation.js +199 -0
  166. package/styled-components/cjs/components/Dropdown/index.js +9 -1
  167. package/styled-components/cjs/components/Dropdown/reducers/focusedPathReducer.js +40 -0
  168. package/styled-components/cjs/components/Dropdown/reducers/pathReducer.js +44 -0
  169. package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +114 -0
  170. package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.type.js +5 -0
  171. package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +77 -105
  172. package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +83 -18
  173. package/styled-components/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +33 -0
  174. package/styled-components/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.type.js +5 -0
  175. package/styled-components/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +119 -0
  176. package/styled-components/cjs/components/Dropdown/ui/index.js +19 -5
  177. package/styled-components/cjs/components/Dropdown/utils/index.js +15 -1
  178. package/styled-components/cjs/components/Dropdown/variations/_size/tokens.json +1 -9
  179. package/styled-components/cjs/components/Dropdown/variations/_view/tokens.json +1 -1
  180. package/styled-components/cjs/components/Select/ui/SelectItem/SelectItem.js +1 -1
  181. package/styled-components/cjs/components/Select/ui/SelectItem/SelectItem.styles.js +1 -1
  182. package/styled-components/cjs/components/TextField/TextField.js +4 -4
  183. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureRight.js +1 -2
  184. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +25 -0
  185. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.js +11 -0
  186. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +292 -0
  187. package/styled-components/es/components/Combobox/ui/ComboboxItem/ComboboxItem.js +90 -3
  188. package/styled-components/es/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.js +23 -6
  189. package/styled-components/es/components/Combobox/utils/index.js +15 -0
  190. package/styled-components/es/components/Dropdown/Dropdown.js +142 -55
  191. package/styled-components/es/components/Dropdown/Dropdown.styles.js +18 -5
  192. package/styled-components/es/components/Dropdown/Dropdown.tokens.js +26 -23
  193. package/styled-components/es/components/Dropdown/hooks/useHashMaps.js +23 -0
  194. package/styled-components/es/components/Dropdown/hooks/useKeyboardNavigation.js +193 -0
  195. package/styled-components/es/components/Dropdown/index.js +1 -0
  196. package/styled-components/es/components/Dropdown/reducers/focusedPathReducer.js +34 -0
  197. package/styled-components/es/components/Dropdown/reducers/pathReducer.js +38 -0
  198. package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +108 -0
  199. package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.type.js +1 -0
  200. package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +78 -107
  201. package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +80 -14
  202. package/styled-components/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +25 -0
  203. package/styled-components/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.type.js +1 -0
  204. package/styled-components/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +111 -0
  205. package/styled-components/es/components/Dropdown/ui/index.js +3 -1
  206. package/styled-components/es/components/Dropdown/utils/index.js +15 -1
  207. package/styled-components/es/components/Dropdown/variations/_size/tokens.json +1 -9
  208. package/styled-components/es/components/Dropdown/variations/_view/tokens.json +1 -1
  209. package/styled-components/es/components/Select/ui/SelectItem/SelectItem.js +2 -2
  210. package/styled-components/es/components/Select/ui/SelectItem/SelectItem.styles.js +1 -1
  211. package/styled-components/es/components/TextField/TextField.js +4 -4
  212. package/styled-components/es/components/_Icon/Icon.assets/DisclosureRight.js +1 -2
  213. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.config.js +19 -0
  214. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.js +5 -0
  215. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Dropdown.stories.tsx +292 -0
  216. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.d.ts +15 -13
  217. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.d.ts.map +1 -1
  218. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.d.ts +5 -1
  219. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.styles.d.ts.map +1 -1
  220. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.type.d.ts +59 -2
  221. package/types/components/Combobox/ui/ComboboxItem/ComboboxItem.type.d.ts.map +1 -1
  222. package/types/components/Combobox/utils/index.d.ts +4 -0
  223. package/types/components/Combobox/utils/index.d.ts.map +1 -0
  224. package/types/components/Dropdown/Dropdown.d.ts +4 -4
  225. package/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  226. package/types/components/Dropdown/Dropdown.styles.d.ts +8 -1
  227. package/types/components/Dropdown/Dropdown.styles.d.ts.map +1 -1
  228. package/types/components/Dropdown/Dropdown.tokens.d.ts +24 -22
  229. package/types/components/Dropdown/Dropdown.tokens.d.ts.map +1 -1
  230. package/types/components/Dropdown/Dropdown.types.d.ts +64 -40
  231. package/types/components/Dropdown/Dropdown.types.d.ts.map +1 -1
  232. package/types/components/Dropdown/hooks/useHashMaps.d.ts +6 -0
  233. package/types/components/Dropdown/hooks/useHashMaps.d.ts.map +1 -0
  234. package/types/components/Dropdown/hooks/useKeyboardNavigation.d.ts +23 -0
  235. package/types/components/Dropdown/hooks/useKeyboardNavigation.d.ts.map +1 -0
  236. package/types/components/Dropdown/index.d.ts +3 -1
  237. package/types/components/Dropdown/index.d.ts.map +1 -1
  238. package/types/components/Dropdown/reducers/focusedPathReducer.d.ts +16 -0
  239. package/types/components/Dropdown/reducers/focusedPathReducer.d.ts.map +1 -0
  240. package/types/components/Dropdown/reducers/pathReducer.d.ts +20 -0
  241. package/types/components/Dropdown/reducers/pathReducer.d.ts.map +1 -0
  242. package/types/components/Dropdown/ui/DropdownInner/DropdownInner.d.ts +5 -0
  243. package/types/components/Dropdown/ui/DropdownInner/DropdownInner.d.ts.map +1 -0
  244. package/types/components/Dropdown/ui/DropdownInner/DropdownInner.type.d.ts +26 -0
  245. package/types/components/Dropdown/ui/DropdownInner/DropdownInner.type.d.ts.map +1 -0
  246. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.d.ts +2 -56
  247. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.d.ts.map +1 -1
  248. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts +5 -2
  249. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts.map +1 -1
  250. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts +44 -38
  251. package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts.map +1 -1
  252. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.d.ts +7 -0
  253. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.d.ts.map +1 -0
  254. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItem.type.d.ts +60 -0
  255. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItem.type.d.ts.map +1 -0
  256. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.d.ts +58 -0
  257. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.d.ts.map +1 -0
  258. package/types/components/Dropdown/ui/DropdownItemOld/variations/_size/base.d.ts.map +1 -0
  259. package/types/components/Dropdown/ui/DropdownItemOld/variations/_view/base.d.ts.map +1 -0
  260. package/types/components/Dropdown/ui/index.d.ts +3 -1
  261. package/types/components/Dropdown/ui/index.d.ts.map +1 -1
  262. package/types/components/Dropdown/utils/index.d.ts +5 -2
  263. package/types/components/Dropdown/utils/index.d.ts.map +1 -1
  264. package/types/components/Select/ui/SelectItem/SelectItem.d.ts +2 -2
  265. package/types/components/Select/ui/SelectItem/SelectItem.d.ts.map +1 -1
  266. package/types/components/Select/ui/SelectItem/SelectItem.type.d.ts +2 -2
  267. package/types/components/Select/utils/index.d.ts +1 -1
  268. package/types/components/TextField/TextField.d.ts +2 -2
  269. package/types/components/TextField/TextField.d.ts.map +1 -1
  270. package/types/components/_Icon/Icon.assets/DisclosureRight.d.ts.map +1 -1
  271. package/types/examples/plasma_b2c/components/Dropdown/Dropdown.config.d.ts.map +1 -0
  272. package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts +13 -0
  273. package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts.map +1 -0
  274. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +2 -2
  275. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  276. package/types/examples/plasma_web/components/TextField/TextField.d.ts +2 -2
  277. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  278. package/types/examples/sds_engineer/components/TextField/TextField.d.ts +2 -2
  279. package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -1
  280. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.styles_936wgl.css +0 -1
  281. package/cjs/components/Dropdown/Dropdown.styles_1daxhqh.css +0 -2
  282. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles_1juhjtq.css +0 -4
  283. package/cjs/components/Dropdown/ui/DropdownItem/variations/_size/base.js.map +0 -1
  284. package/cjs/components/Dropdown/ui/DropdownItem/variations/_view/base.js.map +0 -1
  285. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.styles_936wgl.css +0 -1
  286. package/es/components/Dropdown/Dropdown.styles_1daxhqh.css +0 -2
  287. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles_1juhjtq.css +0 -4
  288. package/es/components/Dropdown/ui/DropdownItem/variations/_size/base.js.map +0 -1
  289. package/es/components/Dropdown/ui/DropdownItem/variations/_view/base.js.map +0 -1
  290. package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +0 -80
  291. package/styled-components/cjs/components/Dropdown/ui/DropdownItem/variations/_size/tokens.json +0 -19
  292. package/styled-components/cjs/components/Dropdown/ui/DropdownItem/variations/_view/tokens.json +0 -9
  293. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.config.js +0 -27
  294. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.js +0 -13
  295. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.stories.tsx +0 -194
  296. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.config.js +0 -27
  297. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.js +0 -13
  298. package/styled-components/cjs/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.stories.tsx +0 -195
  299. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Normal/Dropdown.config.js +0 -27
  300. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Normal/Dropdown.js +0 -13
  301. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Normal/Dropdown.stories.tsx +0 -195
  302. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Tight/Dropdown.config.js +0 -27
  303. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Tight/Dropdown.js +0 -13
  304. package/styled-components/cjs/examples/plasma_web/components/Dropdown/Tight/Dropdown.stories.tsx +0 -195
  305. package/styled-components/cjs/examples/sds_engineer/components/Dropdown/Dropdown.config.js +0 -22
  306. package/styled-components/cjs/examples/sds_engineer/components/Dropdown/Dropdown.js +0 -21
  307. package/styled-components/cjs/examples/sds_engineer/components/Dropdown/Dropdown.stories.tsx +0 -277
  308. package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +0 -80
  309. package/styled-components/es/components/Dropdown/ui/DropdownItem/variations/_size/tokens.json +0 -19
  310. package/styled-components/es/components/Dropdown/ui/DropdownItem/variations/_view/tokens.json +0 -9
  311. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.config.js +0 -21
  312. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.js +0 -7
  313. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.stories.tsx +0 -194
  314. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.config.js +0 -21
  315. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.js +0 -7
  316. package/styled-components/es/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.stories.tsx +0 -195
  317. package/styled-components/es/examples/plasma_web/components/Dropdown/Normal/Dropdown.config.js +0 -21
  318. package/styled-components/es/examples/plasma_web/components/Dropdown/Normal/Dropdown.js +0 -7
  319. package/styled-components/es/examples/plasma_web/components/Dropdown/Normal/Dropdown.stories.tsx +0 -195
  320. package/styled-components/es/examples/plasma_web/components/Dropdown/Tight/Dropdown.config.js +0 -21
  321. package/styled-components/es/examples/plasma_web/components/Dropdown/Tight/Dropdown.js +0 -7
  322. package/styled-components/es/examples/plasma_web/components/Dropdown/Tight/Dropdown.stories.tsx +0 -195
  323. package/styled-components/es/examples/sds_engineer/components/Dropdown/Dropdown.config.js +0 -16
  324. package/styled-components/es/examples/sds_engineer/components/Dropdown/Dropdown.js +0 -15
  325. package/styled-components/es/examples/sds_engineer/components/Dropdown/Dropdown.stories.tsx +0 -277
  326. package/types/components/Dropdown/ui/DropdownItem/variations/_size/base.d.ts.map +0 -1
  327. package/types/components/Dropdown/ui/DropdownItem/variations/_view/base.d.ts.map +0 -1
  328. package/types/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.config.d.ts.map +0 -1
  329. package/types/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.d.ts +0 -30
  330. package/types/examples/plasma_b2c/components/Dropdown/Normal/Dropdown.d.ts.map +0 -1
  331. package/types/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.config.d.ts +0 -18
  332. package/types/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.config.d.ts.map +0 -1
  333. package/types/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.d.ts +0 -30
  334. package/types/examples/plasma_b2c/components/Dropdown/Tight/Dropdown.d.ts.map +0 -1
  335. package/types/examples/plasma_web/components/Dropdown/Normal/Dropdown.config.d.ts +0 -18
  336. package/types/examples/plasma_web/components/Dropdown/Normal/Dropdown.config.d.ts.map +0 -1
  337. package/types/examples/plasma_web/components/Dropdown/Normal/Dropdown.d.ts +0 -30
  338. package/types/examples/plasma_web/components/Dropdown/Normal/Dropdown.d.ts.map +0 -1
  339. package/types/examples/plasma_web/components/Dropdown/Tight/Dropdown.config.d.ts +0 -18
  340. package/types/examples/plasma_web/components/Dropdown/Tight/Dropdown.config.d.ts.map +0 -1
  341. package/types/examples/plasma_web/components/Dropdown/Tight/Dropdown.d.ts +0 -30
  342. package/types/examples/plasma_web/components/Dropdown/Tight/Dropdown.d.ts.map +0 -1
  343. package/types/examples/sds_engineer/components/Dropdown/Dropdown.config.d.ts +0 -15
  344. package/types/examples/sds_engineer/components/Dropdown/Dropdown.config.d.ts.map +0 -1
  345. package/types/examples/sds_engineer/components/Dropdown/Dropdown.d.ts +0 -51
  346. package/types/examples/sds_engineer/components/Dropdown/Dropdown.d.ts.map +0 -1
  347. /package/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base_x642ct.css +0 -0
  348. /package/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base_x642ct.css +0 -0
  349. /package/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base_x642ct.css +0 -0
  350. /package/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base_x642ct.css +0 -0
  351. /package/styled-components/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base.js +0 -0
  352. /package/styled-components/cjs/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base.js +0 -0
  353. /package/styled-components/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base.js +0 -0
  354. /package/styled-components/es/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base.js +0 -0
  355. /package/types/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_size/base.d.ts +0 -0
  356. /package/types/components/Dropdown/ui/{DropdownItem → DropdownItemOld}/variations/_view/base.d.ts +0 -0
  357. /package/types/examples/plasma_b2c/components/Dropdown/{Normal/Dropdown.config.d.ts → Dropdown.config.d.ts} +0 -0
@@ -1,195 +0,0 @@
1
- import React, { useState } from 'react';
2
- import type { ComponentProps } from 'react';
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import { action } from '@storybook/addon-actions';
5
- import styled from 'styled-components';
6
-
7
- import { WithTheme, argTypesFromConfig } from '../../../../_helpers';
8
- import { mergeConfig } from '../../../../../engines';
9
- import { dropdownConfig } from '../../../../../components/Dropdown';
10
- import { Button } from '../../Button/Button';
11
- import { Radiobox } from '../../Radiobox/Radiobox';
12
- import { Checkbox } from '../../Checkbox/Checkbox';
13
- import type { DropdownPlacement, DropdownTrigger } from '../../../../../components/Dropdown/Dropdown.types';
14
-
15
- import { Dropdown, DropdownItem } from './Dropdown';
16
- import { config } from './Dropdown.config';
17
-
18
- const placements: Array<DropdownPlacement> = ['top', 'bottom', 'right', 'left', 'auto'];
19
- const triggers: Array<DropdownTrigger> = ['click', 'hover'];
20
-
21
- type StoryDropdownPropsCustom = {
22
- skidding?: number;
23
- distance?: number;
24
- };
25
-
26
- type StoryDropdownProps = ComponentProps<typeof Dropdown> & StoryDropdownPropsCustom;
27
-
28
- const meta: Meta<StoryDropdownProps> = {
29
- title: 'plasma_b2c/Dropdown',
30
- decorators: [WithTheme],
31
- component: Dropdown,
32
- argTypes: {
33
- placement: {
34
- options: placements,
35
- control: {
36
- type: 'select',
37
- },
38
- },
39
- trigger: {
40
- options: triggers,
41
- control: {
42
- type: 'select',
43
- },
44
- },
45
- ...argTypesFromConfig(mergeConfig(dropdownConfig, config)),
46
- },
47
- args: {
48
- placement: 'bottom',
49
- trigger: 'click',
50
- closeOnOverlayClick: false,
51
- closeOnEsc: true,
52
- isFocusTrapped: true,
53
- skidding: 0,
54
- distance: 0,
55
- },
56
- };
57
-
58
- export default meta;
59
-
60
- const onSelect = action('onSelect');
61
- const onClick = action('onClick');
62
- const onChange = action('onChange');
63
-
64
- const getDropdownItems = (slug: string, elemCount: number) =>
65
- [...Array(elemCount).keys()].map((num) => ({
66
- value: `${slug}_${num}`,
67
- child: `${slug} ${num}`,
68
- }));
69
-
70
- const StyledRadiobox = styled(Radiobox)`
71
- margin-right: 0.5rem;
72
- `;
73
-
74
- const StyledCheckbox = styled(Checkbox)`
75
- margin-left: auto;
76
- `;
77
-
78
- const StyledDisclosureRightIcon = styled.div`
79
- width: 1.25rem;
80
- height: 1.25rem;
81
- margin-left: auto;
82
- `;
83
-
84
- const DisclosureRightIcon = (props) => (
85
- <StyledDisclosureRightIcon>
86
- <svg width="100%" viewBox="0 0 24 24" fill="none" {...props}>
87
- <path
88
- d="M9.883 8.707a1 1 0 011.414-1.414L16.004 12l-4.707 4.707a1 1 0 01-1.414-1.414L13.176 12 9.883 8.707z"
89
- fill="currentColor"
90
- />
91
- </svg>
92
- </StyledDisclosureRightIcon>
93
- );
94
-
95
- const StoryTight = (args: StoryDropdownProps) => {
96
- const [selected, setSelected] = useState('');
97
- const [isOpen, setIsOpen] = useState(false);
98
- const [isOpenDropdown2, setIsOpenDropdown2] = useState(false);
99
-
100
- const { skidding, distance, placement, ...rest } = args;
101
-
102
- const onMainClose = () => {
103
- setIsOpen(false);
104
- setIsOpenDropdown2(false);
105
- };
106
-
107
- const onMainToggle = (openValue: boolean) => {
108
- setIsOpen(openValue);
109
-
110
- if (!openValue) {
111
- onMainClose();
112
- }
113
- };
114
-
115
- const handleSelect = (value: string, text: string) => {
116
- setSelected(value);
117
- onSelect(value, text);
118
- setIsOpen(false);
119
- };
120
-
121
- return (
122
- <div>
123
- <h3>This is header</h3>
124
- <Dropdown
125
- target={<Button>Target</Button>}
126
- isOpen={isOpen}
127
- onToggle={onMainToggle}
128
- offset={[Number(skidding), Number(distance)]}
129
- placement={placement}
130
- {...rest}
131
- >
132
- {getDropdownItems('item', 6).map((item) => (
133
- <DropdownItem
134
- key={item.value}
135
- isSelected={Boolean(item.value === selected)}
136
- onSelect={() => handleSelect(item.value, item.child)}
137
- onClick={onClick}
138
- value={item.value}
139
- >
140
- {item.child}
141
- </DropdownItem>
142
- ))}
143
- <Dropdown
144
- target={<DropdownItem contentRight={DisclosureRightIcon} name="test" text="Nested dropdown" />}
145
- onToggle={(is) => setIsOpenDropdown2(is)}
146
- isOpen={isOpenDropdown2}
147
- offset={[0, 0]}
148
- isNested
149
- {...rest}
150
- >
151
- <DropdownItem contentRight={StyledCheckbox} value="checked" onChange={onChange} text="Checkbox" />
152
- {getDropdownItems('nested', 4).map((item) => (
153
- <DropdownItem
154
- key={item.value}
155
- isSelected={Boolean(item.value === selected)}
156
- onSelect={() => handleSelect(item.value, item.child)}
157
- onClick={onClick}
158
- value={item.value}
159
- >
160
- {item.child}
161
- </DropdownItem>
162
- ))}
163
- <DropdownItem
164
- contentLeft={StyledRadiobox}
165
- name="radio"
166
- value="1"
167
- onChange={onChange}
168
- text="Radiobox 1"
169
- />
170
- <DropdownItem
171
- contentLeft={StyledRadiobox}
172
- name="radio"
173
- value="2"
174
- onChange={onChange}
175
- text="Radiobox 2"
176
- />
177
- </Dropdown>
178
-
179
- <DropdownItem
180
- isSelected={selected === 'disabled'}
181
- onSelect={() => handleSelect('disabled', 'disabled')}
182
- onClick={onClick}
183
- value="disabled"
184
- disabled
185
- >
186
- disabled
187
- </DropdownItem>
188
- </Dropdown>
189
- </div>
190
- );
191
- };
192
-
193
- export const Tight: StoryObj<StoryDropdownProps> = {
194
- render: (args) => <StoryTight {...args} />,
195
- };
@@ -1,21 +0,0 @@
1
- import { css } from 'styled-components';
2
- import { dropdownTokens } from '../../../../../components/Dropdown';
3
- var dropdownSizeCommon = /*#__PURE__*/"\n ".concat(dropdownTokens.width, ": 12.5rem;\n ").concat(dropdownTokens.height, ": auto;\n ").concat(dropdownTokens.borderRadius, ": 0.5rem;\n ").concat(dropdownTokens.paddingTop, ": 0.125rem;\n ").concat(dropdownTokens.paddingRight, ": 0.0625rem;\n ").concat(dropdownTokens.paddingBottom, ": 0.125rem;\n ").concat(dropdownTokens.paddingLeft, ": 0.125rem;\n");
4
- var dropdownItemSizeCommon = /*#__PURE__*/"\n ".concat(dropdownTokens.itemWidth, ": auto;\n ").concat(dropdownTokens.itemHeight, ": auto;\n ").concat(dropdownTokens.itemMarginTop, ": 0;\n ").concat(dropdownTokens.itemMarginRight, ": 0;\n ").concat(dropdownTokens.itemMarginBottom, ": 0;\n ").concat(dropdownTokens.itemMarginLeft, ": 0;\n");
5
- export var config = {
6
- defaults: {
7
- view: 'default',
8
- size: 'm'
9
- },
10
- variations: {
11
- size: {
12
- xs: /*#__PURE__*/css(["", ";", ";", ":0.5625rem;", ":0.5rem;", ":0.5625rem;", ":0.5rem;", ":0.375rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
13
- s: /*#__PURE__*/css(["", ";", ";", ":0.6875rem;", ":0.75rem;", ":0.6875rem;", ":0.75rem;", ":0.5rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
14
- m: /*#__PURE__*/css(["", ";", ";", ":0.875rem;", ":0.875rem;", ":0.875rem;", ":0.875rem;", ":0.625rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
15
- l: /*#__PURE__*/css(["", ";", ";", ":1.0625rem;", ":1rem;", ":1.0625rem;", ":1rem;", ":0.75rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight)
16
- },
17
- view: {
18
- "default": /*#__PURE__*/css(["", ":0.4;", ":var(--surface-solid-card);", ":var(--shadow-down-soft-s);", ":var(--plasma-colors-transparent);", ":var(--surface-transparent-secondary);", ":inherit;", ":inherit;", ":inherit;", ":inherit;", ":var(--text-primary);"], dropdownTokens.disabledOpacity, dropdownTokens.background, dropdownTokens.boxShadow, dropdownTokens.itemBackground, dropdownTokens.itemBackgroundHover, dropdownTokens.itemBackgroundSelected, dropdownTokens.itemColorSelected, dropdownTokens.itemBackgroundSelectedHover, dropdownTokens.itemColorSelectedHover, dropdownTokens.itemColor)
19
- }
20
- }
21
- };
@@ -1,7 +0,0 @@
1
- import { dropdownConfig, dropdownItemConfig } from '../../../../../components/Dropdown';
2
- import { component, mergeConfig } from '../../../../../engines';
3
- import { config } from './Dropdown.config';
4
- var mergedConfig = /*#__PURE__*/mergeConfig(dropdownConfig, config);
5
- export var Dropdown = /*#__PURE__*/component(mergedConfig);
6
- var mergedItemConfig = /*#__PURE__*/mergeConfig(dropdownItemConfig);
7
- export var DropdownItem = /*#__PURE__*/component(mergedItemConfig);
@@ -1,195 +0,0 @@
1
- import React, { useState } from 'react';
2
- import type { ComponentProps } from 'react';
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import { action } from '@storybook/addon-actions';
5
- import styled from 'styled-components';
6
-
7
- import { WithTheme, argTypesFromConfig } from '../../../../_helpers';
8
- import { mergeConfig } from '../../../../../engines';
9
- import { dropdownConfig } from '../../../../../components/Dropdown';
10
- import { Button } from '../../Button/Button';
11
- import { Radiobox } from '../../Radiobox/Radiobox';
12
- import { Checkbox } from '../../Checkbox/Checkbox';
13
- import type { DropdownPlacement, DropdownTrigger } from '../../../../../components/Dropdown/Dropdown.types';
14
-
15
- import { Dropdown, DropdownItem } from './Dropdown';
16
- import { config } from './Dropdown.config';
17
-
18
- const placements: Array<DropdownPlacement> = ['top', 'bottom', 'right', 'left', 'auto'];
19
- const triggers: Array<DropdownTrigger> = ['click', 'hover'];
20
-
21
- type StoryDropdownPropsCustom = {
22
- skidding?: number;
23
- distance?: number;
24
- };
25
-
26
- type StoryDropdownProps = ComponentProps<typeof Dropdown> & StoryDropdownPropsCustom;
27
-
28
- const meta: Meta<StoryDropdownProps> = {
29
- title: 'plasma_web/Dropdown',
30
- decorators: [WithTheme],
31
- component: Dropdown,
32
- argTypes: {
33
- placement: {
34
- options: placements,
35
- control: {
36
- type: 'select',
37
- },
38
- },
39
- trigger: {
40
- options: triggers,
41
- control: {
42
- type: 'select',
43
- },
44
- },
45
- ...argTypesFromConfig(mergeConfig(dropdownConfig, config)),
46
- },
47
- args: {
48
- placement: 'bottom',
49
- trigger: 'click',
50
- closeOnOverlayClick: false,
51
- closeOnEsc: true,
52
- isFocusTrapped: true,
53
- skidding: 0,
54
- distance: 0,
55
- },
56
- };
57
-
58
- export default meta;
59
-
60
- const onSelect = action('onSelect');
61
- const onClick = action('onClick');
62
- const onChange = action('onChange');
63
-
64
- const getDropdownItems = (slug: string, elemCount: number) =>
65
- [...Array(elemCount).keys()].map((num) => ({
66
- value: `${slug}_${num}`,
67
- child: `${slug} ${num}`,
68
- }));
69
-
70
- const StyledRadiobox = styled(Radiobox)`
71
- margin-right: 0.5rem;
72
- `;
73
-
74
- const StyledCheckbox = styled(Checkbox)`
75
- margin-left: auto;
76
- `;
77
-
78
- const StyledDisclosureRightIcon = styled.div`
79
- width: 1.25rem;
80
- height: 1.25rem;
81
- margin-left: auto;
82
- `;
83
-
84
- const DisclosureRightIcon = (props) => (
85
- <StyledDisclosureRightIcon>
86
- <svg width="100%" viewBox="0 0 24 24" fill="none" {...props}>
87
- <path
88
- d="M9.883 8.707a1 1 0 011.414-1.414L16.004 12l-4.707 4.707a1 1 0 01-1.414-1.414L13.176 12 9.883 8.707z"
89
- fill="currentColor"
90
- />
91
- </svg>
92
- </StyledDisclosureRightIcon>
93
- );
94
-
95
- const StoryNormal = (args: StoryDropdownProps) => {
96
- const [selected, setSelected] = useState('');
97
- const [isOpen, setIsOpen] = useState(false);
98
- const [isOpenDropdown2, setIsOpenDropdown2] = useState(false);
99
-
100
- const { skidding, distance, placement, ...rest } = args;
101
-
102
- const onMainClose = () => {
103
- setIsOpen(false);
104
- setIsOpenDropdown2(false);
105
- };
106
-
107
- const onMainToggle = (openValue: boolean) => {
108
- setIsOpen(openValue);
109
-
110
- if (!openValue) {
111
- onMainClose();
112
- }
113
- };
114
-
115
- const handleSelect = (value: string, text: string) => {
116
- setSelected(value);
117
- onSelect(value, text);
118
- setIsOpen(false);
119
- };
120
-
121
- return (
122
- <div>
123
- <h3>This is header</h3>
124
- <Dropdown
125
- target={<Button>Target</Button>}
126
- isOpen={isOpen}
127
- onToggle={onMainToggle}
128
- offset={[Number(skidding), Number(distance)]}
129
- placement={placement}
130
- {...rest}
131
- >
132
- {getDropdownItems('item', 6).map((item) => (
133
- <DropdownItem
134
- key={item.value}
135
- isSelected={Boolean(item.value === selected)}
136
- onSelect={() => handleSelect(item.value, item.child)}
137
- onClick={onClick}
138
- value={item.value}
139
- >
140
- {item.child}
141
- </DropdownItem>
142
- ))}
143
- <Dropdown
144
- target={<DropdownItem contentRight={DisclosureRightIcon} name="test" text="Nested dropdown" />}
145
- onToggle={(is) => setIsOpenDropdown2(is)}
146
- isOpen={isOpenDropdown2}
147
- offset={[0, 0]}
148
- isNested
149
- {...rest}
150
- >
151
- <DropdownItem contentRight={StyledCheckbox} value="checked" onChange={onChange} text="Checkbox" />
152
- {getDropdownItems('nested', 4).map((item) => (
153
- <DropdownItem
154
- key={item.value}
155
- isSelected={Boolean(item.value === selected)}
156
- onSelect={() => handleSelect(item.value, item.child)}
157
- onClick={onClick}
158
- value={item.value}
159
- >
160
- {item.child}
161
- </DropdownItem>
162
- ))}
163
- <DropdownItem
164
- contentLeft={StyledRadiobox}
165
- name="radio"
166
- value="1"
167
- onChange={onChange}
168
- text="Radiobox 1"
169
- />
170
- <DropdownItem
171
- contentLeft={StyledRadiobox}
172
- name="radio"
173
- value="2"
174
- onChange={onChange}
175
- text="Radiobox 2"
176
- />
177
- </Dropdown>
178
-
179
- <DropdownItem
180
- isSelected={selected === 'disabled'}
181
- onSelect={() => handleSelect('disabled', 'disabled')}
182
- onClick={onClick}
183
- value="disabled"
184
- disabled
185
- >
186
- disabled
187
- </DropdownItem>
188
- </Dropdown>
189
- </div>
190
- );
191
- };
192
-
193
- export const Normal: StoryObj<StoryDropdownProps> = {
194
- render: (args) => <StoryNormal {...args} />,
195
- };
@@ -1,21 +0,0 @@
1
- import { css } from 'styled-components';
2
- import { dropdownTokens } from '../../../../../components/Dropdown';
3
- var dropdownSizeCommon = /*#__PURE__*/"\n ".concat(dropdownTokens.width, ": 12.5rem;\n ").concat(dropdownTokens.height, ": auto;\n ").concat(dropdownTokens.borderRadius, ": 0.5rem;\n ").concat(dropdownTokens.paddingTop, ": 0.125rem;\n ").concat(dropdownTokens.paddingRight, ": 0.0625rem;\n ").concat(dropdownTokens.paddingBottom, ": 0.125rem;\n ").concat(dropdownTokens.paddingLeft, ": 0.125rem;\n");
4
- var dropdownItemSizeCommon = /*#__PURE__*/"\n ".concat(dropdownTokens.itemWidth, ": auto;\n ").concat(dropdownTokens.itemHeight, ": auto;\n ").concat(dropdownTokens.itemMarginTop, ": 0;\n ").concat(dropdownTokens.itemMarginRight, ": 0;\n ").concat(dropdownTokens.itemMarginBottom, ": 0;\n ").concat(dropdownTokens.itemMarginLeft, ": 0;\n");
5
- export var config = {
6
- defaults: {
7
- view: 'default',
8
- size: 'm'
9
- },
10
- variations: {
11
- size: {
12
- xs: /*#__PURE__*/css(["", ";", ";", ":0.3125rem;", ":0.5rem;", ":0.3125rem;", ":0.5rem;", ":0.375rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
13
- s: /*#__PURE__*/css(["", ";", ";", ":0.4375rem;", ":0.75rem;", ":0.4375rem;", ":0.75rem;", ":0.5rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
14
- m: /*#__PURE__*/css(["", ";", ";", ":0.625rem;", ":0.875rem;", ":0.625rem;", ":0.875rem;", ":0.625rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight),
15
- l: /*#__PURE__*/css(["", ";", ";", ":0.8125rem;", ":1rem;", ":0.8125rem;", ":1rem;", ":0.75rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], dropdownSizeCommon, dropdownItemSizeCommon, dropdownTokens.itemPaddingTop, dropdownTokens.itemPaddingRight, dropdownTokens.itemPaddingBottom, dropdownTokens.itemPaddingLeft, dropdownTokens.itemBorderRadius, dropdownTokens.itemFontFamily, dropdownTokens.itemFontSize, dropdownTokens.itemFontStyle, dropdownTokens.itemFontWeightBold, dropdownTokens.itemFontLetterSpacing, dropdownTokens.itemFontLineHeight)
16
- },
17
- view: {
18
- "default": /*#__PURE__*/css(["", ":0.4;", ":var(--surface-solid-card);", ":var(--shadow-down-soft-s);", ":var(--plasma-colors-transparent);", ":var(--surface-transparent-secondary);", ":inherit;", ":inherit;", ":inherit;", ":inherit;", ":var(--text-primary);"], dropdownTokens.disabledOpacity, dropdownTokens.background, dropdownTokens.boxShadow, dropdownTokens.itemBackground, dropdownTokens.itemBackgroundHover, dropdownTokens.itemBackgroundSelected, dropdownTokens.itemColorSelected, dropdownTokens.itemBackgroundSelectedHover, dropdownTokens.itemColorSelectedHover, dropdownTokens.itemColor)
19
- }
20
- }
21
- };
@@ -1,7 +0,0 @@
1
- import { dropdownConfig, dropdownItemConfig } from '../../../../../components/Dropdown';
2
- import { component, mergeConfig } from '../../../../../engines';
3
- import { config } from './Dropdown.config';
4
- var mergedConfig = /*#__PURE__*/mergeConfig(dropdownConfig, config);
5
- export var Dropdown = /*#__PURE__*/component(mergedConfig);
6
- var mergedItemConfig = /*#__PURE__*/mergeConfig(dropdownItemConfig);
7
- export var DropdownItem = /*#__PURE__*/component(mergedItemConfig);
@@ -1,195 +0,0 @@
1
- import React, { useState } from 'react';
2
- import type { ComponentProps } from 'react';
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import { action } from '@storybook/addon-actions';
5
- import styled from 'styled-components';
6
-
7
- import { WithTheme, argTypesFromConfig } from '../../../../_helpers';
8
- import { mergeConfig } from '../../../../../engines';
9
- import { dropdownConfig } from '../../../../../components/Dropdown';
10
- import { Button } from '../../Button/Button';
11
- import { Radiobox } from '../../Radiobox/Radiobox';
12
- import { Checkbox } from '../../Checkbox/Checkbox';
13
- import type { DropdownPlacement, DropdownTrigger } from '../../../../../components/Dropdown/Dropdown.types';
14
-
15
- import { Dropdown, DropdownItem } from './Dropdown';
16
- import { config } from './Dropdown.config';
17
-
18
- const placements: Array<DropdownPlacement> = ['top', 'bottom', 'right', 'left', 'auto'];
19
- const triggers: Array<DropdownTrigger> = ['click', 'hover'];
20
-
21
- type StoryDropdownPropsCustom = {
22
- skidding?: number;
23
- distance?: number;
24
- };
25
-
26
- type StoryDropdownProps = ComponentProps<typeof Dropdown> & StoryDropdownPropsCustom;
27
-
28
- const meta: Meta<StoryDropdownProps> = {
29
- title: 'plasma_web/Dropdown',
30
- decorators: [WithTheme],
31
- component: Dropdown,
32
- argTypes: {
33
- placement: {
34
- options: placements,
35
- control: {
36
- type: 'select',
37
- },
38
- },
39
- trigger: {
40
- options: triggers,
41
- control: {
42
- type: 'select',
43
- },
44
- },
45
- ...argTypesFromConfig(mergeConfig(dropdownConfig, config)),
46
- },
47
- args: {
48
- placement: 'bottom',
49
- trigger: 'click',
50
- closeOnOverlayClick: false,
51
- closeOnEsc: true,
52
- isFocusTrapped: true,
53
- skidding: 0,
54
- distance: 0,
55
- },
56
- };
57
-
58
- export default meta;
59
-
60
- const onSelect = action('onSelect');
61
- const onClick = action('onClick');
62
- const onChange = action('onChange');
63
-
64
- const getDropdownItems = (slug: string, elemCount: number) =>
65
- [...Array(elemCount).keys()].map((num) => ({
66
- value: `${slug}_${num}`,
67
- child: `${slug} ${num}`,
68
- }));
69
-
70
- const StyledRadiobox = styled(Radiobox)`
71
- margin-right: 0.5rem;
72
- `;
73
-
74
- const StyledCheckbox = styled(Checkbox)`
75
- margin-left: auto;
76
- `;
77
-
78
- const StyledDisclosureRightIcon = styled.div`
79
- width: 1.25rem;
80
- height: 1.25rem;
81
- margin-left: auto;
82
- `;
83
-
84
- const DisclosureRightIcon = (props) => (
85
- <StyledDisclosureRightIcon>
86
- <svg width="100%" viewBox="0 0 24 24" fill="none" {...props}>
87
- <path
88
- d="M9.883 8.707a1 1 0 011.414-1.414L16.004 12l-4.707 4.707a1 1 0 01-1.414-1.414L13.176 12 9.883 8.707z"
89
- fill="currentColor"
90
- />
91
- </svg>
92
- </StyledDisclosureRightIcon>
93
- );
94
-
95
- const StoryTight = (args: StoryDropdownProps) => {
96
- const [selected, setSelected] = useState('');
97
- const [isOpen, setIsOpen] = useState(false);
98
- const [isOpenDropdown2, setIsOpenDropdown2] = useState(false);
99
-
100
- const { skidding, distance, placement, ...rest } = args;
101
-
102
- const onMainClose = () => {
103
- setIsOpen(false);
104
- setIsOpenDropdown2(false);
105
- };
106
-
107
- const onMainToggle = (openValue: boolean) => {
108
- setIsOpen(openValue);
109
-
110
- if (!openValue) {
111
- onMainClose();
112
- }
113
- };
114
-
115
- const handleSelect = (value: string, text: string) => {
116
- setSelected(value);
117
- onSelect(value, text);
118
- setIsOpen(false);
119
- };
120
-
121
- return (
122
- <div>
123
- <h3>This is header</h3>
124
- <Dropdown
125
- target={<Button>Target</Button>}
126
- isOpen={isOpen}
127
- onToggle={onMainToggle}
128
- offset={[Number(skidding), Number(distance)]}
129
- placement={placement}
130
- {...rest}
131
- >
132
- {getDropdownItems('item', 6).map((item) => (
133
- <DropdownItem
134
- key={item.value}
135
- isSelected={Boolean(item.value === selected)}
136
- onSelect={() => handleSelect(item.value, item.child)}
137
- onClick={onClick}
138
- value={item.value}
139
- >
140
- {item.child}
141
- </DropdownItem>
142
- ))}
143
- <Dropdown
144
- target={<DropdownItem contentRight={DisclosureRightIcon} name="test" text="Nested dropdown" />}
145
- onToggle={(is) => setIsOpenDropdown2(is)}
146
- isOpen={isOpenDropdown2}
147
- offset={[0, 0]}
148
- isNested
149
- {...rest}
150
- >
151
- <DropdownItem contentRight={StyledCheckbox} value="checked" onChange={onChange} text="Checkbox" />
152
- {getDropdownItems('nested', 4).map((item) => (
153
- <DropdownItem
154
- key={item.value}
155
- isSelected={Boolean(item.value === selected)}
156
- onSelect={() => handleSelect(item.value, item.child)}
157
- onClick={onClick}
158
- value={item.value}
159
- >
160
- {item.child}
161
- </DropdownItem>
162
- ))}
163
- <DropdownItem
164
- contentLeft={StyledRadiobox}
165
- name="radio"
166
- value="1"
167
- onChange={onChange}
168
- text="Radiobox 1"
169
- />
170
- <DropdownItem
171
- contentLeft={StyledRadiobox}
172
- name="radio"
173
- value="2"
174
- onChange={onChange}
175
- text="Radiobox 2"
176
- />
177
- </Dropdown>
178
-
179
- <DropdownItem
180
- isSelected={selected === 'disabled'}
181
- onSelect={() => handleSelect('disabled', 'disabled')}
182
- onClick={onClick}
183
- value="disabled"
184
- disabled
185
- >
186
- disabled
187
- </DropdownItem>
188
- </Dropdown>
189
- </div>
190
- );
191
- };
192
-
193
- export const Tight: StoryObj<StoryDropdownProps> = {
194
- render: (args) => <StoryTight {...args} />,
195
- };