@ebay/ui-core-react 7.3.0 → 7.3.2

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 (961) hide show
  1. package/CONTRIBUTING.md +236 -0
  2. package/LICENSE.md +21 -0
  3. package/dist/ebay-dialog-base/components/animation/index.js +1 -0
  4. package/dist/ebay-dialog-base/components/animation.d.ts.map +1 -0
  5. package/dist/ebay-svg/index.js +1 -0
  6. package/dist/ebay-svg/symbols.d.ts +3 -0
  7. package/dist/ebay-svg/symbols.d.ts.map +1 -0
  8. package/jest.config.js +52 -0
  9. package/package.json +1 -1
  10. package/src/common/__mocks__/random-id.ts +2 -0
  11. package/src/common/component-utils/array.polyfill.flat.ts +34 -0
  12. package/src/common/component-utils/forwardRef.tsx +15 -0
  13. package/src/common/component-utils/index.ts +2 -0
  14. package/src/common/component-utils/utils.ts +23 -0
  15. package/src/common/debounce.ts +11 -0
  16. package/src/common/event-utils/__tests__/helpers.ts +4 -0
  17. package/src/common/event-utils/__tests__/use-key-press.spec.tsx +30 -0
  18. package/src/common/event-utils/__tests__/use-roving-index.spec.tsx +81 -0
  19. package/src/common/event-utils/index.ts +128 -0
  20. package/src/common/event-utils/types.ts +38 -0
  21. package/src/common/event-utils/use-key-press.ts +38 -0
  22. package/src/common/event-utils/use-roving-index.ts +41 -0
  23. package/src/common/floating-label-utils/hooks.tsx +162 -0
  24. package/src/common/notice-utils/notice-content.tsx +19 -0
  25. package/src/common/notice-utils/notice-cta.tsx +15 -0
  26. package/src/common/notice-utils/notice-footer.tsx +15 -0
  27. package/src/common/notice-utils/notice-title.tsx +19 -0
  28. package/src/common/random-id.ts +14 -0
  29. package/src/common/range.ts +2 -0
  30. package/src/common/tooltip-utils/constants.ts +96 -0
  31. package/src/common/tooltip-utils/index.ts +7 -0
  32. package/src/common/tooltip-utils/tooltip-close-button.tsx +10 -0
  33. package/src/common/tooltip-utils/tooltip-content.tsx +62 -0
  34. package/src/common/tooltip-utils/tooltip-footer.tsx +15 -0
  35. package/src/common/tooltip-utils/tooltip-host.tsx +24 -0
  36. package/src/common/tooltip-utils/tooltip.tsx +49 -0
  37. package/src/common/tooltip-utils/types.ts +7 -0
  38. package/src/common/tooltip-utils/use-tooltip.ts +39 -0
  39. package/src/ebay-alert-dialog/__tests__/index.spec.tsx +36 -0
  40. package/src/ebay-alert-dialog/__tests__/index.stories.tsx +77 -0
  41. package/src/ebay-alert-dialog/__tests__/render.spec.tsx +16 -0
  42. package/src/ebay-alert-dialog/alert-dialog.tsx +53 -0
  43. package/src/ebay-alert-dialog/index.ts +1 -0
  44. package/src/ebay-badge/__tests__/index.spec.tsx +47 -0
  45. package/src/ebay-badge/__tests__/index.stories.tsx +31 -0
  46. package/src/ebay-badge/badge.tsx +32 -0
  47. package/src/ebay-badge/index.ts +1 -0
  48. package/src/ebay-breadcrumbs/__tests__/index.spec.tsx +40 -0
  49. package/src/ebay-breadcrumbs/__tests__/index.stories.tsx +94 -0
  50. package/src/ebay-breadcrumbs/__tests__/render.spec.tsx +59 -0
  51. package/src/ebay-breadcrumbs/breadcrumb-item.tsx +39 -0
  52. package/src/ebay-breadcrumbs/breadcrumbs.tsx +61 -0
  53. package/src/ebay-breadcrumbs/index.ts +2 -0
  54. package/src/ebay-button/__tests__/index.spec.tsx +131 -0
  55. package/src/ebay-button/__tests__/index.stories.tsx +406 -0
  56. package/src/ebay-button/button-cell.tsx +21 -0
  57. package/src/ebay-button/button-expand.tsx +18 -0
  58. package/src/ebay-button/button-loading.tsx +11 -0
  59. package/src/ebay-button/button-text.tsx +10 -0
  60. package/src/ebay-button/button.tsx +154 -0
  61. package/src/ebay-button/index.ts +3 -0
  62. package/src/ebay-button/types.ts +9 -0
  63. package/src/ebay-calendar/__tests__/__snapshots__/render.spec.tsx.snap +27 -0
  64. package/src/ebay-calendar/__tests__/index.spec.tsx +99 -0
  65. package/src/ebay-calendar/__tests__/index.stories.tsx +65 -0
  66. package/src/ebay-calendar/__tests__/render.spec.tsx +68 -0
  67. package/src/ebay-calendar/calendar.tsx +461 -0
  68. package/src/ebay-calendar/date-utils.ts +63 -0
  69. package/src/ebay-calendar/index.ts +1 -0
  70. package/src/ebay-carousel/__tests__/__snapshots__/index.spec.tsx.snap +39 -0
  71. package/src/ebay-carousel/__tests__/index.spec.tsx +55 -0
  72. package/src/ebay-carousel/__tests__/index.stories.tsx +68 -0
  73. package/src/ebay-carousel/carousel-control-button.tsx +45 -0
  74. package/src/ebay-carousel/carousel-item.tsx +52 -0
  75. package/src/ebay-carousel/carousel-list.tsx +102 -0
  76. package/src/ebay-carousel/carousel.tsx +137 -0
  77. package/src/ebay-carousel/helpers.ts +159 -0
  78. package/src/ebay-carousel/index.ts +2 -0
  79. package/src/ebay-carousel/scroll-to-transition.ts +123 -0
  80. package/src/ebay-carousel/types.ts +11 -0
  81. package/src/ebay-checkbox/__tests__/index.spec.tsx +36 -0
  82. package/src/ebay-checkbox/__tests__/index.stories.tsx +162 -0
  83. package/src/ebay-checkbox/__tests__/render.spec.tsx +39 -0
  84. package/src/ebay-checkbox/checkbox.tsx +89 -0
  85. package/src/ebay-checkbox/index.ts +1 -0
  86. package/src/ebay-confirm-dialog/__tests__/index.spec.tsx +59 -0
  87. package/src/ebay-confirm-dialog/__tests__/index.stories.tsx +70 -0
  88. package/src/ebay-confirm-dialog/__tests__/render.spec.tsx +42 -0
  89. package/src/ebay-confirm-dialog/confirm-dialog.tsx +63 -0
  90. package/src/ebay-confirm-dialog/index.ts +1 -0
  91. package/src/ebay-cta-button/__tests__/index.spec.tsx +48 -0
  92. package/src/ebay-cta-button/__tests__/index.stories.tsx +58 -0
  93. package/src/ebay-cta-button/cta-button.tsx +40 -0
  94. package/src/ebay-cta-button/index.ts +1 -0
  95. package/src/ebay-date-textbox/__tests__/__snapshots__/render.spec.tsx.snap +27 -0
  96. package/src/ebay-date-textbox/__tests__/index.spec.tsx +148 -0
  97. package/src/ebay-date-textbox/__tests__/index.stories.tsx +55 -0
  98. package/src/ebay-date-textbox/__tests__/render.spec.tsx +94 -0
  99. package/src/ebay-date-textbox/date-textbox.tsx +227 -0
  100. package/src/ebay-date-textbox/index.ts +1 -0
  101. package/src/ebay-dialog-base/__tests__/index.spec.tsx +83 -0
  102. package/src/ebay-dialog-base/__tests__/mocks.tsx +38 -0
  103. package/src/ebay-dialog-base/__tests__/server.spec.tsx +33 -0
  104. package/src/ebay-dialog-base/components/animation.ts +144 -0
  105. package/src/ebay-dialog-base/components/dialog-actions.tsx +9 -0
  106. package/src/ebay-dialog-base/components/dialog-close-button.tsx +9 -0
  107. package/src/ebay-dialog-base/components/dialog-footer.tsx +9 -0
  108. package/src/ebay-dialog-base/components/dialog-header.tsx +10 -0
  109. package/src/ebay-dialog-base/components/dialog-previous-button.tsx +23 -0
  110. package/src/ebay-dialog-base/components/dialogBase.tsx +234 -0
  111. package/src/ebay-dialog-base/dialog-base-with-state.tsx +61 -0
  112. package/src/ebay-dialog-base/index.ts +8 -0
  113. package/src/ebay-drawer-dialog/__tests__/index.spec.tsx +53 -0
  114. package/src/ebay-drawer-dialog/__tests__/index.stories.tsx +244 -0
  115. package/src/ebay-drawer-dialog/components/drawer.tsx +120 -0
  116. package/src/ebay-drawer-dialog/index.ts +1 -0
  117. package/src/ebay-eek/__tests__/index.spec.tsx +81 -0
  118. package/src/ebay-eek/__tests__/index.stories.tsx +102 -0
  119. package/src/ebay-eek/__tests__/render.spec.tsx +49 -0
  120. package/src/ebay-eek/eek-rating.tsx +46 -0
  121. package/src/ebay-eek/eek-util.ts +34 -0
  122. package/src/ebay-eek/index.ts +1 -0
  123. package/src/ebay-fake-menu/__tests__/index.spec.tsx +79 -0
  124. package/src/ebay-fake-menu/__tests__/index.stories.tsx +127 -0
  125. package/src/ebay-fake-menu/__tests__/render.spec.tsx +70 -0
  126. package/src/ebay-fake-menu/index.ts +3 -0
  127. package/src/ebay-fake-menu/menu-item-separator.tsx +17 -0
  128. package/src/ebay-fake-menu/menu-item.tsx +84 -0
  129. package/src/ebay-fake-menu/menu.tsx +58 -0
  130. package/src/ebay-fake-menu-button/__tests__/__snapshots__/render.spec.tsx.snap +79 -0
  131. package/src/ebay-fake-menu-button/__tests__/index.spec.tsx +99 -0
  132. package/src/ebay-fake-menu-button/__tests__/index.stories.tsx +202 -0
  133. package/src/ebay-fake-menu-button/__tests__/render.spec.tsx +166 -0
  134. package/src/ebay-fake-menu-button/index.ts +8 -0
  135. package/src/ebay-fake-menu-button/menu-button-item.tsx +6 -0
  136. package/src/ebay-fake-menu-button/menu-button-label.tsx +7 -0
  137. package/src/ebay-fake-menu-button/menu-button-separator.tsx +17 -0
  138. package/src/ebay-fake-menu-button/menu-button.tsx +147 -0
  139. package/src/ebay-fake-tabs/__tests__/index.spec.tsx +35 -0
  140. package/src/ebay-fake-tabs/__tests__/index.stories.tsx +54 -0
  141. package/src/ebay-fake-tabs/fake-tabs.tsx +41 -0
  142. package/src/ebay-fake-tabs/index.ts +2 -0
  143. package/src/ebay-fake-tabs/tab.tsx +23 -0
  144. package/src/ebay-field/__tests__/index.spec.tsx +42 -0
  145. package/src/ebay-field/__tests__/index.stories.tsx +159 -0
  146. package/src/ebay-field/description.tsx +30 -0
  147. package/src/ebay-field/field.tsx +24 -0
  148. package/src/ebay-field/index.ts +4 -0
  149. package/src/ebay-field/label.tsx +31 -0
  150. package/src/ebay-field/types.ts +7 -0
  151. package/src/ebay-fullscreen-dialog/__tests__/index.spec.tsx +52 -0
  152. package/src/ebay-fullscreen-dialog/__tests__/index.stories.tsx +96 -0
  153. package/src/ebay-fullscreen-dialog/__tests__/render.spec.tsx +44 -0
  154. package/src/ebay-fullscreen-dialog/fullscreen-dialog.tsx +32 -0
  155. package/src/ebay-fullscreen-dialog/index.ts +1 -0
  156. package/src/ebay-icon/__tests__/constants.ts +782 -0
  157. package/src/ebay-icon/__tests__/index.spec.tsx +46 -0
  158. package/src/ebay-icon/__tests__/index.stories.tsx +47 -0
  159. package/src/ebay-icon/icon.tsx +104 -0
  160. package/src/ebay-icon/index.ts +2 -0
  161. package/src/ebay-icon/types.ts +779 -0
  162. package/src/ebay-icon-button/__tests__/index.spec.tsx +59 -0
  163. package/src/ebay-icon-button/__tests__/index.stories.tsx +64 -0
  164. package/src/ebay-icon-button/__tests__/render.spec.tsx +61 -0
  165. package/src/ebay-icon-button/icon-button.tsx +84 -0
  166. package/src/ebay-icon-button/index.ts +1 -0
  167. package/src/ebay-infotip/__tests__/__snapshots__/render.spec.tsx.snap +40 -0
  168. package/src/ebay-infotip/__tests__/index.spec.tsx +108 -0
  169. package/src/ebay-infotip/__tests__/index.stories.tsx +204 -0
  170. package/src/ebay-infotip/__tests__/render.spec.tsx +121 -0
  171. package/src/ebay-infotip/ebay-infotip-content.tsx +10 -0
  172. package/src/ebay-infotip/ebay-infotip-heading.tsx +13 -0
  173. package/src/ebay-infotip/ebay-infotip-host.tsx +37 -0
  174. package/src/ebay-infotip/ebay-infotip.tsx +125 -0
  175. package/src/ebay-infotip/index.ts +5 -0
  176. package/src/ebay-infotip/types.ts +1 -0
  177. package/src/ebay-inline-notice/__tests__/index.spec.tsx +68 -0
  178. package/src/ebay-inline-notice/__tests__/index.stories.tsx +95 -0
  179. package/src/ebay-inline-notice/index.ts +3 -0
  180. package/src/ebay-inline-notice/inline-notice.tsx +62 -0
  181. package/src/ebay-inline-notice/types.ts +1 -0
  182. package/src/ebay-lightbox-dialog/__tests__/index.spec.tsx +52 -0
  183. package/src/ebay-lightbox-dialog/__tests__/index.stories.tsx +274 -0
  184. package/src/ebay-lightbox-dialog/index.ts +1 -0
  185. package/src/ebay-lightbox-dialog/lightbox-dialog.tsx +38 -0
  186. package/src/ebay-listbox-button/__tests__/__snapshots__/render.spec.tsx.snap +118 -0
  187. package/src/ebay-listbox-button/__tests__/index.spec.tsx +221 -0
  188. package/src/ebay-listbox-button/__tests__/index.stories.tsx +183 -0
  189. package/src/ebay-listbox-button/__tests__/render.spec.tsx +140 -0
  190. package/src/ebay-listbox-button/__tests__/statefull-test.tsx +34 -0
  191. package/src/ebay-listbox-button/index.ts +2 -0
  192. package/src/ebay-listbox-button/listbox-button-option.tsx +40 -0
  193. package/src/ebay-listbox-button/listbox-button.tsx +320 -0
  194. package/src/ebay-menu/__tests__/index.spec.tsx +287 -0
  195. package/src/ebay-menu/__tests__/index.stories.tsx +160 -0
  196. package/src/ebay-menu/index.ts +11 -0
  197. package/src/ebay-menu/menu-item-separator.tsx +17 -0
  198. package/src/ebay-menu/menu-item.tsx +69 -0
  199. package/src/ebay-menu/menu.tsx +174 -0
  200. package/src/ebay-menu/types.ts +30 -0
  201. package/src/ebay-menu-button/__tests__/__snapshots__/render.spec.tsx.snap +118 -0
  202. package/src/ebay-menu-button/__tests__/index.spec.tsx +104 -0
  203. package/src/ebay-menu-button/__tests__/index.stories.tsx +325 -0
  204. package/src/ebay-menu-button/__tests__/render.spec.tsx +202 -0
  205. package/src/ebay-menu-button/index.ts +10 -0
  206. package/src/ebay-menu-button/menu-button-item.tsx +4 -0
  207. package/src/ebay-menu-button/menu-button-label.tsx +5 -0
  208. package/src/ebay-menu-button/menu-button-separator.tsx +17 -0
  209. package/src/ebay-menu-button/menu-button.tsx +169 -0
  210. package/src/ebay-menu-button/types.ts +39 -0
  211. package/src/ebay-notice-base/components/ebay-notice-content/__tests__/index.spec.tsx +29 -0
  212. package/src/ebay-notice-base/components/ebay-notice-content/index.ts +1 -0
  213. package/src/ebay-notice-base/components/ebay-notice-content/notice-content.tsx +12 -0
  214. package/src/ebay-notice-base/components/ebay-notice-title/index.ts +1 -0
  215. package/src/ebay-notice-base/components/ebay-notice-title/notice-title.tsx +13 -0
  216. package/src/ebay-notice-base/index.ts +2 -0
  217. package/src/ebay-page-notice/__tests__/__snapshots__/render.spec.tsx.snap +112 -0
  218. package/src/ebay-page-notice/__tests__/index.spec.tsx +91 -0
  219. package/src/ebay-page-notice/__tests__/index.stories.tsx +117 -0
  220. package/src/ebay-page-notice/__tests__/render.spec.tsx +175 -0
  221. package/src/ebay-page-notice/index.ts +5 -0
  222. package/src/ebay-page-notice/page-notice-cta.tsx +15 -0
  223. package/src/ebay-page-notice/page-notice-footer.tsx +15 -0
  224. package/src/ebay-page-notice/page-notice-title.tsx +16 -0
  225. package/src/ebay-page-notice/page-notice.tsx +77 -0
  226. package/src/ebay-pagination/__tests__/__snapshots__/render.spec.tsx.snap +53 -0
  227. package/src/ebay-pagination/__tests__/helpers.spec.ts +171 -0
  228. package/src/ebay-pagination/__tests__/index.spec.tsx +130 -0
  229. package/src/ebay-pagination/__tests__/index.stories.tsx +317 -0
  230. package/src/ebay-pagination/__tests__/render.spec.tsx +129 -0
  231. package/src/ebay-pagination/const.ts +5 -0
  232. package/src/ebay-pagination/helpers.ts +119 -0
  233. package/src/ebay-pagination/index.ts +3 -0
  234. package/src/ebay-pagination/pagination-item.tsx +126 -0
  235. package/src/ebay-pagination/pagination.tsx +193 -0
  236. package/src/ebay-pagination/types.ts +2 -0
  237. package/src/ebay-panel-dialog/__tests__/index.spec.tsx +52 -0
  238. package/src/ebay-panel-dialog/__tests__/index.stories.tsx +124 -0
  239. package/src/ebay-panel-dialog/index.ts +1 -0
  240. package/src/ebay-panel-dialog/panel-dialog.tsx +40 -0
  241. package/src/ebay-progress-bar/__tests__/index.spec.tsx +41 -0
  242. package/src/ebay-progress-bar/__tests__/index.stories.tsx +50 -0
  243. package/src/ebay-progress-bar/index.ts +1 -0
  244. package/src/ebay-progress-bar/progress-bar.tsx +23 -0
  245. package/src/ebay-progress-spinner/__tests__/index.spec.tsx +19 -0
  246. package/src/ebay-progress-spinner/__tests__/index.stories.tsx +24 -0
  247. package/src/ebay-progress-spinner/index.ts +1 -0
  248. package/src/ebay-progress-spinner/progress-spinner.tsx +42 -0
  249. package/src/ebay-progress-stepper/__tests__/__snapshots__/index.spec.tsx.snap +183 -0
  250. package/src/ebay-progress-stepper/__tests__/index.spec.tsx +129 -0
  251. package/src/ebay-progress-stepper/__tests__/index.stories.tsx +170 -0
  252. package/src/ebay-progress-stepper/ebay-progress-step.tsx +58 -0
  253. package/src/ebay-progress-stepper/ebay-progress-stepper.tsx +68 -0
  254. package/src/ebay-progress-stepper/ebay-progress-title.tsx +13 -0
  255. package/src/ebay-progress-stepper/index.ts +4 -0
  256. package/src/ebay-progress-stepper/types.ts +3 -0
  257. package/src/ebay-radio/__tests__/index.spec.tsx +48 -0
  258. package/src/ebay-radio/__tests__/index.stories.tsx +193 -0
  259. package/src/ebay-radio/__tests__/render.spec.tsx +57 -0
  260. package/src/ebay-radio/index.ts +1 -0
  261. package/src/ebay-radio/radio.tsx +85 -0
  262. package/src/ebay-section-notice/__tests__/index.spec.tsx +109 -0
  263. package/src/ebay-section-notice/__tests__/index.stories.tsx +199 -0
  264. package/src/ebay-section-notice/index.ts +9 -0
  265. package/src/ebay-section-notice/section-notice-cta.tsx +15 -0
  266. package/src/ebay-section-notice/section-notice-footer.tsx +15 -0
  267. package/src/ebay-section-notice/section-notice-title.tsx +15 -0
  268. package/src/ebay-section-notice/section-notice.tsx +107 -0
  269. package/src/ebay-section-title/__tests__/index.spec.tsx +62 -0
  270. package/src/ebay-section-title/__tests__/index.stories.tsx +79 -0
  271. package/src/ebay-section-title/cta.tsx +26 -0
  272. package/src/ebay-section-title/index.ts +5 -0
  273. package/src/ebay-section-title/info.tsx +19 -0
  274. package/src/ebay-section-title/overflow.tsx +19 -0
  275. package/src/ebay-section-title/section-title.tsx +41 -0
  276. package/src/ebay-section-title/subtitle.tsx +19 -0
  277. package/src/ebay-section-title/title.tsx +19 -0
  278. package/src/ebay-segmented-buttons/__tests__/index.spec.tsx +42 -0
  279. package/src/ebay-segmented-buttons/__tests__/index.stories.tsx +52 -0
  280. package/src/ebay-segmented-buttons/button.tsx +39 -0
  281. package/src/ebay-segmented-buttons/index.ts +3 -0
  282. package/src/ebay-segmented-buttons/segmented-buttons.tsx +47 -0
  283. package/src/ebay-segmented-buttons/types.ts +15 -0
  284. package/src/ebay-select/__tests__/__snapshots__/render.spec.tsx.snap +16 -0
  285. package/src/ebay-select/__tests__/index.spec.tsx +99 -0
  286. package/src/ebay-select/__tests__/index.stories.tsx +221 -0
  287. package/src/ebay-select/__tests__/render.spec.tsx +92 -0
  288. package/src/ebay-select/ebay-select-option.tsx +10 -0
  289. package/src/ebay-select/ebay-select.tsx +164 -0
  290. package/src/ebay-select/index.ts +2 -0
  291. package/src/ebay-signal/__tests__/index.spec.tsx +26 -0
  292. package/src/ebay-signal/__tests__/index.stories.tsx +37 -0
  293. package/src/ebay-signal/index.ts +1 -0
  294. package/src/ebay-signal/signal.tsx +15 -0
  295. package/src/ebay-snackbar-dialog/__tests__/index.spec.tsx +151 -0
  296. package/src/ebay-snackbar-dialog/__tests__/index.stories.tsx +83 -0
  297. package/src/ebay-snackbar-dialog/components/ebay-snackbar-dialog-action.tsx +12 -0
  298. package/src/ebay-snackbar-dialog/components/ebay-snackbar-dialog.tsx +132 -0
  299. package/src/ebay-snackbar-dialog/index.ts +2 -0
  300. package/src/ebay-split-button/__tests__/__snapshots__/render.spec.tsx.snap +118 -0
  301. package/src/ebay-split-button/__tests__/index.spec.tsx +168 -0
  302. package/src/ebay-split-button/__tests__/index.stories.tsx +241 -0
  303. package/src/ebay-split-button/__tests__/render.spec.tsx +156 -0
  304. package/src/ebay-split-button/index.ts +5 -0
  305. package/src/ebay-split-button/split-button.tsx +54 -0
  306. package/src/ebay-split-button/types.ts +19 -0
  307. package/src/ebay-star-rating/__tests__/__snapshots__/index.spec.tsx.snap +307 -0
  308. package/src/ebay-star-rating/__tests__/index.spec.tsx +30 -0
  309. package/src/ebay-star-rating/__tests__/index.stories.tsx +35 -0
  310. package/src/ebay-star-rating/index.ts +1 -0
  311. package/src/ebay-star-rating/star-rating.tsx +29 -0
  312. package/src/ebay-star-rating-select/__tests__/__snapshots__/index.spec.tsx.snap +679 -0
  313. package/src/ebay-star-rating-select/__tests__/index.spec.tsx +105 -0
  314. package/src/ebay-star-rating-select/__tests__/index.stories.tsx +73 -0
  315. package/src/ebay-star-rating-select/__tests__/mocks.tsx +26 -0
  316. package/src/ebay-star-rating-select/index.ts +1 -0
  317. package/src/ebay-star-rating-select/star-rating-select.tsx +95 -0
  318. package/src/ebay-svg/__tests__/index.stories.tsx +16 -0
  319. package/src/ebay-svg/index.ts +1 -0
  320. package/src/ebay-svg/svg.tsx +23 -0
  321. package/src/ebay-svg/symbols.tsx +808 -0
  322. package/src/ebay-switch/__tests__/index.spec.tsx +28 -0
  323. package/src/ebay-switch/__tests__/index.stories.tsx +71 -0
  324. package/src/ebay-switch/__tests__/render.spec.tsx +37 -0
  325. package/src/ebay-switch/ebay-switch.tsx +56 -0
  326. package/src/ebay-switch/index.ts +1 -0
  327. package/src/ebay-tabs/__tests__/index.spec.tsx +205 -0
  328. package/src/ebay-tabs/__tests__/index.stories.tsx +301 -0
  329. package/src/ebay-tabs/index.ts +4 -0
  330. package/src/ebay-tabs/tab-panel.tsx +32 -0
  331. package/src/ebay-tabs/tab.tsx +38 -0
  332. package/src/ebay-tabs/tabs.tsx +104 -0
  333. package/src/ebay-tabs/types.ts +19 -0
  334. package/src/ebay-textbox/__tests__/__snapshots__/render.spec.tsx.snap +57 -0
  335. package/src/ebay-textbox/__tests__/index.spec.tsx +155 -0
  336. package/src/ebay-textbox/__tests__/index.stories.tsx +391 -0
  337. package/src/ebay-textbox/__tests__/render.spec.tsx +140 -0
  338. package/src/ebay-textbox/index.ts +7 -0
  339. package/src/ebay-textbox/postfix-icon.tsx +21 -0
  340. package/src/ebay-textbox/postfix-text.tsx +8 -0
  341. package/src/ebay-textbox/prefix-icon.tsx +12 -0
  342. package/src/ebay-textbox/prefix-text.tsx +8 -0
  343. package/src/ebay-textbox/textbox.tsx +209 -0
  344. package/src/ebay-textbox/types.ts +18 -0
  345. package/src/ebay-toast-dialog/__tests__/index.spec.tsx +41 -0
  346. package/src/ebay-toast-dialog/__tests__/index.stories.tsx +131 -0
  347. package/src/ebay-toast-dialog/components/toast.tsx +26 -0
  348. package/src/ebay-toast-dialog/index.ts +1 -0
  349. package/src/ebay-tooltip/__tests__/index.spec.tsx +183 -0
  350. package/src/ebay-tooltip/__tests__/index.stories.tsx +104 -0
  351. package/src/ebay-tooltip/__tests__/render.spec.tsx +79 -0
  352. package/src/ebay-tooltip/ebay-tooltip-content.tsx +11 -0
  353. package/src/ebay-tooltip/ebay-tooltip-host.tsx +11 -0
  354. package/src/ebay-tooltip/ebay-tooltip.tsx +96 -0
  355. package/src/ebay-tooltip/index.ts +8 -0
  356. package/src/ebay-tourtip/__tests__/__snapshots__/render.spec.tsx.snap +14 -0
  357. package/src/ebay-tourtip/__tests__/index.spec.tsx +105 -0
  358. package/src/ebay-tourtip/__tests__/index.stories.tsx +116 -0
  359. package/src/ebay-tourtip/__tests__/render.spec.tsx +214 -0
  360. package/src/ebay-tourtip/ebay-tourtip-content.tsx +11 -0
  361. package/src/ebay-tourtip/ebay-tourtip-footer.tsx +19 -0
  362. package/src/ebay-tourtip/ebay-tourtip-heading.tsx +23 -0
  363. package/src/ebay-tourtip/ebay-tourtip-host.tsx +11 -0
  364. package/src/ebay-tourtip/ebay-tourtip.tsx +89 -0
  365. package/src/ebay-tourtip/index.ts +6 -0
  366. package/src/ebay-video/__tests__/index.spec.tsx +39 -0
  367. package/src/ebay-video/__tests__/index.stories.tsx +147 -0
  368. package/src/ebay-video/__tests__/render.spec.tsx +55 -0
  369. package/src/ebay-video/const.ts +16 -0
  370. package/src/ebay-video/controls.tsx +42 -0
  371. package/src/ebay-video/index.ts +9 -0
  372. package/src/ebay-video/reportButton.tsx +13 -0
  373. package/src/ebay-video/shaka-player.d.ts +4 -0
  374. package/src/ebay-video/source.tsx +7 -0
  375. package/src/ebay-video/types.ts +10 -0
  376. package/src/ebay-video/video.tsx +291 -0
  377. package/src/events/index.ts +30 -0
  378. package/src/utils/index.ts +9 -0
  379. package/tsconfig.json +42 -0
  380. package/vite.config.mjs +50 -0
  381. package/ebay-dialog-base/components/animation/index.js +0 -1
  382. package/ebay-dialog-base/components/animation.d.ts.map +0 -1
  383. package/ebay-svg/index.js +0 -1
  384. package/ebay-svg/symbols.d.ts +0 -2
  385. package/ebay-svg/symbols.d.ts.map +0 -1
  386. /package/{array.polyfill.flat-5BAolFdk.js → dist/array.polyfill.flat-5BAolFdk.js} +0 -0
  387. /package/{badge-CoHKfiPt.js → dist/badge-CoHKfiPt.js} +0 -0
  388. /package/{button-DGuEBUDJ.js → dist/button-DGuEBUDJ.js} +0 -0
  389. /package/{calendar-lAu6VfAb.js → dist/calendar-lAu6VfAb.js} +0 -0
  390. /package/{common → dist/common}/__mocks__/random-id.d.ts +0 -0
  391. /package/{common → dist/common}/__mocks__/random-id.d.ts.map +0 -0
  392. /package/{common → dist/common}/component-utils/array.polyfill.flat.d.ts +0 -0
  393. /package/{common → dist/common}/component-utils/array.polyfill.flat.d.ts.map +0 -0
  394. /package/{common → dist/common}/component-utils/forwardRef/index.js +0 -0
  395. /package/{common → dist/common}/component-utils/forwardRef.d.ts +0 -0
  396. /package/{common → dist/common}/component-utils/forwardRef.d.ts.map +0 -0
  397. /package/{common → dist/common}/component-utils/index.d.ts +0 -0
  398. /package/{common → dist/common}/component-utils/index.d.ts.map +0 -0
  399. /package/{common → dist/common}/component-utils/index.js +0 -0
  400. /package/{common → dist/common}/component-utils/utils/index.js +0 -0
  401. /package/{common → dist/common}/component-utils/utils.d.ts +0 -0
  402. /package/{common → dist/common}/component-utils/utils.d.ts.map +0 -0
  403. /package/{common → dist/common}/debounce.d.ts +0 -0
  404. /package/{common → dist/common}/debounce.d.ts.map +0 -0
  405. /package/{common → dist/common}/event-utils/index.d.ts +0 -0
  406. /package/{common → dist/common}/event-utils/index.d.ts.map +0 -0
  407. /package/{common → dist/common}/event-utils/index.js +0 -0
  408. /package/{common → dist/common}/event-utils/types.d.ts +0 -0
  409. /package/{common → dist/common}/event-utils/types.d.ts.map +0 -0
  410. /package/{common → dist/common}/event-utils/use-key-press.d.ts +0 -0
  411. /package/{common → dist/common}/event-utils/use-key-press.d.ts.map +0 -0
  412. /package/{common → dist/common}/event-utils/use-roving-index.d.ts +0 -0
  413. /package/{common → dist/common}/event-utils/use-roving-index.d.ts.map +0 -0
  414. /package/{common → dist/common}/floating-label-utils/hooks/index.js +0 -0
  415. /package/{common → dist/common}/floating-label-utils/hooks.d.ts +0 -0
  416. /package/{common → dist/common}/floating-label-utils/hooks.d.ts.map +0 -0
  417. /package/{common → dist/common}/notice-utils/notice-content.d.ts +0 -0
  418. /package/{common → dist/common}/notice-utils/notice-content.d.ts.map +0 -0
  419. /package/{common → dist/common}/notice-utils/notice-cta/index.js +0 -0
  420. /package/{common → dist/common}/notice-utils/notice-cta.d.ts +0 -0
  421. /package/{common → dist/common}/notice-utils/notice-cta.d.ts.map +0 -0
  422. /package/{common → dist/common}/notice-utils/notice-footer.d.ts +0 -0
  423. /package/{common → dist/common}/notice-utils/notice-footer.d.ts.map +0 -0
  424. /package/{common → dist/common}/notice-utils/notice-title.d.ts +0 -0
  425. /package/{common → dist/common}/notice-utils/notice-title.d.ts.map +0 -0
  426. /package/{common → dist/common}/random-id/index.js +0 -0
  427. /package/{common → dist/common}/random-id.d.ts +0 -0
  428. /package/{common → dist/common}/random-id.d.ts.map +0 -0
  429. /package/{common → dist/common}/range.d.ts +0 -0
  430. /package/{common → dist/common}/range.d.ts.map +0 -0
  431. /package/{common → dist/common}/tooltip-utils/constants/index.js +0 -0
  432. /package/{common → dist/common}/tooltip-utils/constants.d.ts +0 -0
  433. /package/{common → dist/common}/tooltip-utils/constants.d.ts.map +0 -0
  434. /package/{common → dist/common}/tooltip-utils/index.d.ts +0 -0
  435. /package/{common → dist/common}/tooltip-utils/index.d.ts.map +0 -0
  436. /package/{common → dist/common}/tooltip-utils/index.js +0 -0
  437. /package/{common → dist/common}/tooltip-utils/tooltip-close-button.d.ts +0 -0
  438. /package/{common → dist/common}/tooltip-utils/tooltip-close-button.d.ts.map +0 -0
  439. /package/{common → dist/common}/tooltip-utils/tooltip-content.d.ts +0 -0
  440. /package/{common → dist/common}/tooltip-utils/tooltip-content.d.ts.map +0 -0
  441. /package/{common → dist/common}/tooltip-utils/tooltip-footer.d.ts +0 -0
  442. /package/{common → dist/common}/tooltip-utils/tooltip-footer.d.ts.map +0 -0
  443. /package/{common → dist/common}/tooltip-utils/tooltip-host.d.ts +0 -0
  444. /package/{common → dist/common}/tooltip-utils/tooltip-host.d.ts.map +0 -0
  445. /package/{common → dist/common}/tooltip-utils/tooltip.d.ts +0 -0
  446. /package/{common → dist/common}/tooltip-utils/tooltip.d.ts.map +0 -0
  447. /package/{common → dist/common}/tooltip-utils/types.d.ts +0 -0
  448. /package/{common → dist/common}/tooltip-utils/types.d.ts.map +0 -0
  449. /package/{common → dist/common}/tooltip-utils/use-tooltip.d.ts +0 -0
  450. /package/{common → dist/common}/tooltip-utils/use-tooltip.d.ts.map +0 -0
  451. /package/{debounce-BQsYxxOL.js → dist/debounce-BQsYxxOL.js} +0 -0
  452. /package/{dialog-previous-button-CpuFLkQp.js → dist/dialog-previous-button-CpuFLkQp.js} +0 -0
  453. /package/{drawer-rqXAEeqd.js → dist/drawer-rqXAEeqd.js} +0 -0
  454. /package/{ebay-alert-dialog → dist/ebay-alert-dialog}/alert-dialog.d.ts +0 -0
  455. /package/{ebay-alert-dialog → dist/ebay-alert-dialog}/alert-dialog.d.ts.map +0 -0
  456. /package/{ebay-alert-dialog → dist/ebay-alert-dialog}/index.d.ts +0 -0
  457. /package/{ebay-alert-dialog → dist/ebay-alert-dialog}/index.d.ts.map +0 -0
  458. /package/{ebay-alert-dialog → dist/ebay-alert-dialog}/index.js +0 -0
  459. /package/{ebay-badge → dist/ebay-badge}/badge.d.ts +0 -0
  460. /package/{ebay-badge → dist/ebay-badge}/badge.d.ts.map +0 -0
  461. /package/{ebay-badge → dist/ebay-badge}/index.d.ts +0 -0
  462. /package/{ebay-badge → dist/ebay-badge}/index.d.ts.map +0 -0
  463. /package/{ebay-badge → dist/ebay-badge}/index.js +0 -0
  464. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/breadcrumb-item.d.ts +0 -0
  465. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/breadcrumb-item.d.ts.map +0 -0
  466. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/breadcrumbs.d.ts +0 -0
  467. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/breadcrumbs.d.ts.map +0 -0
  468. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/index.d.ts +0 -0
  469. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/index.d.ts.map +0 -0
  470. /package/{ebay-breadcrumbs → dist/ebay-breadcrumbs}/index.js +0 -0
  471. /package/{ebay-button → dist/ebay-button}/button-cell.d.ts +0 -0
  472. /package/{ebay-button → dist/ebay-button}/button-cell.d.ts.map +0 -0
  473. /package/{ebay-button → dist/ebay-button}/button-expand.d.ts +0 -0
  474. /package/{ebay-button → dist/ebay-button}/button-expand.d.ts.map +0 -0
  475. /package/{ebay-button → dist/ebay-button}/button-loading.d.ts +0 -0
  476. /package/{ebay-button → dist/ebay-button}/button-loading.d.ts.map +0 -0
  477. /package/{ebay-button → dist/ebay-button}/button-text.d.ts +0 -0
  478. /package/{ebay-button → dist/ebay-button}/button-text.d.ts.map +0 -0
  479. /package/{ebay-button → dist/ebay-button}/button.d.ts +0 -0
  480. /package/{ebay-button → dist/ebay-button}/button.d.ts.map +0 -0
  481. /package/{ebay-button → dist/ebay-button}/index.d.ts +0 -0
  482. /package/{ebay-button → dist/ebay-button}/index.d.ts.map +0 -0
  483. /package/{ebay-button → dist/ebay-button}/index.js +0 -0
  484. /package/{ebay-button → dist/ebay-button}/types.d.ts +0 -0
  485. /package/{ebay-button → dist/ebay-button}/types.d.ts.map +0 -0
  486. /package/{ebay-calendar → dist/ebay-calendar}/calendar.d.ts +0 -0
  487. /package/{ebay-calendar → dist/ebay-calendar}/calendar.d.ts.map +0 -0
  488. /package/{ebay-calendar → dist/ebay-calendar}/date-utils.d.ts +0 -0
  489. /package/{ebay-calendar → dist/ebay-calendar}/date-utils.d.ts.map +0 -0
  490. /package/{ebay-calendar → dist/ebay-calendar}/index.d.ts +0 -0
  491. /package/{ebay-calendar → dist/ebay-calendar}/index.d.ts.map +0 -0
  492. /package/{ebay-calendar → dist/ebay-calendar}/index.js +0 -0
  493. /package/{ebay-carousel → dist/ebay-carousel}/carousel-control-button.d.ts +0 -0
  494. /package/{ebay-carousel → dist/ebay-carousel}/carousel-control-button.d.ts.map +0 -0
  495. /package/{ebay-carousel → dist/ebay-carousel}/carousel-item.d.ts +0 -0
  496. /package/{ebay-carousel → dist/ebay-carousel}/carousel-item.d.ts.map +0 -0
  497. /package/{ebay-carousel → dist/ebay-carousel}/carousel-list.d.ts +0 -0
  498. /package/{ebay-carousel → dist/ebay-carousel}/carousel-list.d.ts.map +0 -0
  499. /package/{ebay-carousel → dist/ebay-carousel}/carousel.d.ts +0 -0
  500. /package/{ebay-carousel → dist/ebay-carousel}/carousel.d.ts.map +0 -0
  501. /package/{ebay-carousel → dist/ebay-carousel}/helpers.d.ts +0 -0
  502. /package/{ebay-carousel → dist/ebay-carousel}/helpers.d.ts.map +0 -0
  503. /package/{ebay-carousel → dist/ebay-carousel}/index.d.ts +0 -0
  504. /package/{ebay-carousel → dist/ebay-carousel}/index.d.ts.map +0 -0
  505. /package/{ebay-carousel → dist/ebay-carousel}/index.js +0 -0
  506. /package/{ebay-carousel → dist/ebay-carousel}/scroll-to-transition.d.ts +0 -0
  507. /package/{ebay-carousel → dist/ebay-carousel}/scroll-to-transition.d.ts.map +0 -0
  508. /package/{ebay-carousel → dist/ebay-carousel}/types.d.ts +0 -0
  509. /package/{ebay-carousel → dist/ebay-carousel}/types.d.ts.map +0 -0
  510. /package/{ebay-checkbox → dist/ebay-checkbox}/checkbox.d.ts +0 -0
  511. /package/{ebay-checkbox → dist/ebay-checkbox}/checkbox.d.ts.map +0 -0
  512. /package/{ebay-checkbox → dist/ebay-checkbox}/index.d.ts +0 -0
  513. /package/{ebay-checkbox → dist/ebay-checkbox}/index.d.ts.map +0 -0
  514. /package/{ebay-checkbox → dist/ebay-checkbox}/index.js +0 -0
  515. /package/{ebay-confirm-dialog → dist/ebay-confirm-dialog}/confirm-dialog.d.ts +0 -0
  516. /package/{ebay-confirm-dialog → dist/ebay-confirm-dialog}/confirm-dialog.d.ts.map +0 -0
  517. /package/{ebay-confirm-dialog → dist/ebay-confirm-dialog}/index.d.ts +0 -0
  518. /package/{ebay-confirm-dialog → dist/ebay-confirm-dialog}/index.d.ts.map +0 -0
  519. /package/{ebay-confirm-dialog → dist/ebay-confirm-dialog}/index.js +0 -0
  520. /package/{ebay-cta-button → dist/ebay-cta-button}/cta-button.d.ts +0 -0
  521. /package/{ebay-cta-button → dist/ebay-cta-button}/cta-button.d.ts.map +0 -0
  522. /package/{ebay-cta-button → dist/ebay-cta-button}/index.d.ts +0 -0
  523. /package/{ebay-cta-button → dist/ebay-cta-button}/index.d.ts.map +0 -0
  524. /package/{ebay-cta-button → dist/ebay-cta-button}/index.js +0 -0
  525. /package/{ebay-date-textbox → dist/ebay-date-textbox}/date-textbox.d.ts +0 -0
  526. /package/{ebay-date-textbox → dist/ebay-date-textbox}/date-textbox.d.ts.map +0 -0
  527. /package/{ebay-date-textbox → dist/ebay-date-textbox}/index.d.ts +0 -0
  528. /package/{ebay-date-textbox → dist/ebay-date-textbox}/index.d.ts.map +0 -0
  529. /package/{ebay-date-textbox → dist/ebay-date-textbox}/index.js +0 -0
  530. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/animation.d.ts +0 -0
  531. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-actions.d.ts +0 -0
  532. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-actions.d.ts.map +0 -0
  533. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-close-button.d.ts +0 -0
  534. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-close-button.d.ts.map +0 -0
  535. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-footer/index.js +0 -0
  536. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-footer.d.ts +0 -0
  537. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-footer.d.ts.map +0 -0
  538. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-header/index.js +0 -0
  539. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-header.d.ts +0 -0
  540. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-header.d.ts.map +0 -0
  541. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-previous-button.d.ts +0 -0
  542. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialog-previous-button.d.ts.map +0 -0
  543. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialogBase.d.ts +0 -0
  544. /package/{ebay-dialog-base → dist/ebay-dialog-base}/components/dialogBase.d.ts.map +0 -0
  545. /package/{ebay-dialog-base → dist/ebay-dialog-base}/dialog-base-with-state.d.ts +0 -0
  546. /package/{ebay-dialog-base → dist/ebay-dialog-base}/dialog-base-with-state.d.ts.map +0 -0
  547. /package/{ebay-dialog-base → dist/ebay-dialog-base}/index.d.ts +0 -0
  548. /package/{ebay-dialog-base → dist/ebay-dialog-base}/index.d.ts.map +0 -0
  549. /package/{ebay-dialog-base → dist/ebay-dialog-base}/index.js +0 -0
  550. /package/{ebay-drawer-dialog → dist/ebay-drawer-dialog}/components/drawer.d.ts +0 -0
  551. /package/{ebay-drawer-dialog → dist/ebay-drawer-dialog}/components/drawer.d.ts.map +0 -0
  552. /package/{ebay-drawer-dialog → dist/ebay-drawer-dialog}/index.d.ts +0 -0
  553. /package/{ebay-drawer-dialog → dist/ebay-drawer-dialog}/index.d.ts.map +0 -0
  554. /package/{ebay-drawer-dialog → dist/ebay-drawer-dialog}/index.js +0 -0
  555. /package/{ebay-eek → dist/ebay-eek}/eek-rating.d.ts +0 -0
  556. /package/{ebay-eek → dist/ebay-eek}/eek-rating.d.ts.map +0 -0
  557. /package/{ebay-eek → dist/ebay-eek}/eek-util.d.ts +0 -0
  558. /package/{ebay-eek → dist/ebay-eek}/eek-util.d.ts.map +0 -0
  559. /package/{ebay-eek → dist/ebay-eek}/index.d.ts +0 -0
  560. /package/{ebay-eek → dist/ebay-eek}/index.d.ts.map +0 -0
  561. /package/{ebay-eek → dist/ebay-eek}/index.js +0 -0
  562. /package/{ebay-fake-menu → dist/ebay-fake-menu}/index.d.ts +0 -0
  563. /package/{ebay-fake-menu → dist/ebay-fake-menu}/index.d.ts.map +0 -0
  564. /package/{ebay-fake-menu → dist/ebay-fake-menu}/index.js +0 -0
  565. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu-item/index.js +0 -0
  566. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu-item-separator.d.ts +0 -0
  567. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu-item-separator.d.ts.map +0 -0
  568. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu-item.d.ts +0 -0
  569. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu-item.d.ts.map +0 -0
  570. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu.d.ts +0 -0
  571. /package/{ebay-fake-menu → dist/ebay-fake-menu}/menu.d.ts.map +0 -0
  572. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/index.d.ts +0 -0
  573. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/index.d.ts.map +0 -0
  574. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/index.js +0 -0
  575. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button/index.js +0 -0
  576. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-item.d.ts +0 -0
  577. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-item.d.ts.map +0 -0
  578. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-label.d.ts +0 -0
  579. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-label.d.ts.map +0 -0
  580. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-separator.d.ts +0 -0
  581. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button-separator.d.ts.map +0 -0
  582. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button.d.ts +0 -0
  583. /package/{ebay-fake-menu-button → dist/ebay-fake-menu-button}/menu-button.d.ts.map +0 -0
  584. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/fake-tabs.d.ts +0 -0
  585. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/fake-tabs.d.ts.map +0 -0
  586. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/index.d.ts +0 -0
  587. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/index.d.ts.map +0 -0
  588. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/index.js +0 -0
  589. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/tab.d.ts +0 -0
  590. /package/{ebay-fake-tabs → dist/ebay-fake-tabs}/tab.d.ts.map +0 -0
  591. /package/{ebay-field → dist/ebay-field}/description.d.ts +0 -0
  592. /package/{ebay-field → dist/ebay-field}/description.d.ts.map +0 -0
  593. /package/{ebay-field → dist/ebay-field}/field.d.ts +0 -0
  594. /package/{ebay-field → dist/ebay-field}/field.d.ts.map +0 -0
  595. /package/{ebay-field → dist/ebay-field}/index.d.ts +0 -0
  596. /package/{ebay-field → dist/ebay-field}/index.d.ts.map +0 -0
  597. /package/{ebay-field → dist/ebay-field}/index.js +0 -0
  598. /package/{ebay-field → dist/ebay-field}/label.d.ts +0 -0
  599. /package/{ebay-field → dist/ebay-field}/label.d.ts.map +0 -0
  600. /package/{ebay-field → dist/ebay-field}/types.d.ts +0 -0
  601. /package/{ebay-field → dist/ebay-field}/types.d.ts.map +0 -0
  602. /package/{ebay-fullscreen-dialog → dist/ebay-fullscreen-dialog}/fullscreen-dialog.d.ts +0 -0
  603. /package/{ebay-fullscreen-dialog → dist/ebay-fullscreen-dialog}/fullscreen-dialog.d.ts.map +0 -0
  604. /package/{ebay-fullscreen-dialog → dist/ebay-fullscreen-dialog}/index.d.ts +0 -0
  605. /package/{ebay-fullscreen-dialog → dist/ebay-fullscreen-dialog}/index.d.ts.map +0 -0
  606. /package/{ebay-fullscreen-dialog → dist/ebay-fullscreen-dialog}/index.js +0 -0
  607. /package/{ebay-icon → dist/ebay-icon}/icon.d.ts +0 -0
  608. /package/{ebay-icon → dist/ebay-icon}/icon.d.ts.map +0 -0
  609. /package/{ebay-icon → dist/ebay-icon}/index.d.ts +0 -0
  610. /package/{ebay-icon → dist/ebay-icon}/index.d.ts.map +0 -0
  611. /package/{ebay-icon → dist/ebay-icon}/index.js +0 -0
  612. /package/{ebay-icon → dist/ebay-icon}/types.d.ts +0 -0
  613. /package/{ebay-icon → dist/ebay-icon}/types.d.ts.map +0 -0
  614. /package/{ebay-icon-button → dist/ebay-icon-button}/icon-button.d.ts +0 -0
  615. /package/{ebay-icon-button → dist/ebay-icon-button}/icon-button.d.ts.map +0 -0
  616. /package/{ebay-icon-button → dist/ebay-icon-button}/index.d.ts +0 -0
  617. /package/{ebay-icon-button → dist/ebay-icon-button}/index.d.ts.map +0 -0
  618. /package/{ebay-icon-button → dist/ebay-icon-button}/index.js +0 -0
  619. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-content.d.ts +0 -0
  620. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-content.d.ts.map +0 -0
  621. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-heading.d.ts +0 -0
  622. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-heading.d.ts.map +0 -0
  623. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-host.d.ts +0 -0
  624. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip-host.d.ts.map +0 -0
  625. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip.d.ts +0 -0
  626. /package/{ebay-infotip → dist/ebay-infotip}/ebay-infotip.d.ts.map +0 -0
  627. /package/{ebay-infotip → dist/ebay-infotip}/index.d.ts +0 -0
  628. /package/{ebay-infotip → dist/ebay-infotip}/index.d.ts.map +0 -0
  629. /package/{ebay-infotip → dist/ebay-infotip}/index.js +0 -0
  630. /package/{ebay-infotip → dist/ebay-infotip}/types.d.ts +0 -0
  631. /package/{ebay-infotip → dist/ebay-infotip}/types.d.ts.map +0 -0
  632. /package/{ebay-inline-notice → dist/ebay-inline-notice}/index.d.ts +0 -0
  633. /package/{ebay-inline-notice → dist/ebay-inline-notice}/index.d.ts.map +0 -0
  634. /package/{ebay-inline-notice → dist/ebay-inline-notice}/index.js +0 -0
  635. /package/{ebay-inline-notice → dist/ebay-inline-notice}/inline-notice.d.ts +0 -0
  636. /package/{ebay-inline-notice → dist/ebay-inline-notice}/inline-notice.d.ts.map +0 -0
  637. /package/{ebay-inline-notice → dist/ebay-inline-notice}/types.d.ts +0 -0
  638. /package/{ebay-inline-notice → dist/ebay-inline-notice}/types.d.ts.map +0 -0
  639. /package/{ebay-lightbox-dialog → dist/ebay-lightbox-dialog}/index.d.ts +0 -0
  640. /package/{ebay-lightbox-dialog → dist/ebay-lightbox-dialog}/index.d.ts.map +0 -0
  641. /package/{ebay-lightbox-dialog → dist/ebay-lightbox-dialog}/index.js +0 -0
  642. /package/{ebay-lightbox-dialog → dist/ebay-lightbox-dialog}/lightbox-dialog.d.ts +0 -0
  643. /package/{ebay-lightbox-dialog → dist/ebay-lightbox-dialog}/lightbox-dialog.d.ts.map +0 -0
  644. /package/{ebay-listbox-button → dist/ebay-listbox-button}/index.d.ts +0 -0
  645. /package/{ebay-listbox-button → dist/ebay-listbox-button}/index.d.ts.map +0 -0
  646. /package/{ebay-listbox-button → dist/ebay-listbox-button}/index.js +0 -0
  647. /package/{ebay-listbox-button → dist/ebay-listbox-button}/listbox-button-option.d.ts +0 -0
  648. /package/{ebay-listbox-button → dist/ebay-listbox-button}/listbox-button-option.d.ts.map +0 -0
  649. /package/{ebay-listbox-button → dist/ebay-listbox-button}/listbox-button.d.ts +0 -0
  650. /package/{ebay-listbox-button → dist/ebay-listbox-button}/listbox-button.d.ts.map +0 -0
  651. /package/{ebay-menu → dist/ebay-menu}/index.d.ts +0 -0
  652. /package/{ebay-menu → dist/ebay-menu}/index.d.ts.map +0 -0
  653. /package/{ebay-menu → dist/ebay-menu}/index.js +0 -0
  654. /package/{ebay-menu → dist/ebay-menu}/menu-item-separator.d.ts +0 -0
  655. /package/{ebay-menu → dist/ebay-menu}/menu-item-separator.d.ts.map +0 -0
  656. /package/{ebay-menu → dist/ebay-menu}/menu-item.d.ts +0 -0
  657. /package/{ebay-menu → dist/ebay-menu}/menu-item.d.ts.map +0 -0
  658. /package/{ebay-menu → dist/ebay-menu}/menu.d.ts +0 -0
  659. /package/{ebay-menu → dist/ebay-menu}/menu.d.ts.map +0 -0
  660. /package/{ebay-menu → dist/ebay-menu}/types.d.ts +0 -0
  661. /package/{ebay-menu → dist/ebay-menu}/types.d.ts.map +0 -0
  662. /package/{ebay-menu-button → dist/ebay-menu-button}/index.d.ts +0 -0
  663. /package/{ebay-menu-button → dist/ebay-menu-button}/index.d.ts.map +0 -0
  664. /package/{ebay-menu-button → dist/ebay-menu-button}/index.js +0 -0
  665. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-item.d.ts +0 -0
  666. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-item.d.ts.map +0 -0
  667. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-label.d.ts +0 -0
  668. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-label.d.ts.map +0 -0
  669. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-separator.d.ts +0 -0
  670. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button-separator.d.ts.map +0 -0
  671. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button.d.ts +0 -0
  672. /package/{ebay-menu-button → dist/ebay-menu-button}/menu-button.d.ts.map +0 -0
  673. /package/{ebay-menu-button → dist/ebay-menu-button}/types.d.ts +0 -0
  674. /package/{ebay-menu-button → dist/ebay-menu-button}/types.d.ts.map +0 -0
  675. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-content/index.d.ts +0 -0
  676. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-content/index.d.ts.map +0 -0
  677. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-content/notice-content.d.ts +0 -0
  678. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-content/notice-content.d.ts.map +0 -0
  679. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-title/index.d.ts +0 -0
  680. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-title/index.d.ts.map +0 -0
  681. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-title/notice-title.d.ts +0 -0
  682. /package/{ebay-notice-base → dist/ebay-notice-base}/components/ebay-notice-title/notice-title.d.ts.map +0 -0
  683. /package/{ebay-notice-base → dist/ebay-notice-base}/index.d.ts +0 -0
  684. /package/{ebay-notice-base → dist/ebay-notice-base}/index.d.ts.map +0 -0
  685. /package/{ebay-notice-base → dist/ebay-notice-base}/index.js +0 -0
  686. /package/{ebay-page-notice → dist/ebay-page-notice}/index.d.ts +0 -0
  687. /package/{ebay-page-notice → dist/ebay-page-notice}/index.d.ts.map +0 -0
  688. /package/{ebay-page-notice → dist/ebay-page-notice}/index.js +0 -0
  689. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-cta.d.ts +0 -0
  690. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-cta.d.ts.map +0 -0
  691. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-footer.d.ts +0 -0
  692. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-footer.d.ts.map +0 -0
  693. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-title.d.ts +0 -0
  694. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice-title.d.ts.map +0 -0
  695. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice.d.ts +0 -0
  696. /package/{ebay-page-notice → dist/ebay-page-notice}/page-notice.d.ts.map +0 -0
  697. /package/{ebay-pagination → dist/ebay-pagination}/const.d.ts +0 -0
  698. /package/{ebay-pagination → dist/ebay-pagination}/const.d.ts.map +0 -0
  699. /package/{ebay-pagination → dist/ebay-pagination}/helpers.d.ts +0 -0
  700. /package/{ebay-pagination → dist/ebay-pagination}/helpers.d.ts.map +0 -0
  701. /package/{ebay-pagination → dist/ebay-pagination}/index.d.ts +0 -0
  702. /package/{ebay-pagination → dist/ebay-pagination}/index.d.ts.map +0 -0
  703. /package/{ebay-pagination → dist/ebay-pagination}/index.js +0 -0
  704. /package/{ebay-pagination → dist/ebay-pagination}/pagination-item.d.ts +0 -0
  705. /package/{ebay-pagination → dist/ebay-pagination}/pagination-item.d.ts.map +0 -0
  706. /package/{ebay-pagination → dist/ebay-pagination}/pagination.d.ts +0 -0
  707. /package/{ebay-pagination → dist/ebay-pagination}/pagination.d.ts.map +0 -0
  708. /package/{ebay-pagination → dist/ebay-pagination}/types.d.ts +0 -0
  709. /package/{ebay-pagination → dist/ebay-pagination}/types.d.ts.map +0 -0
  710. /package/{ebay-panel-dialog → dist/ebay-panel-dialog}/index.d.ts +0 -0
  711. /package/{ebay-panel-dialog → dist/ebay-panel-dialog}/index.d.ts.map +0 -0
  712. /package/{ebay-panel-dialog → dist/ebay-panel-dialog}/index.js +0 -0
  713. /package/{ebay-panel-dialog → dist/ebay-panel-dialog}/panel-dialog.d.ts +0 -0
  714. /package/{ebay-panel-dialog → dist/ebay-panel-dialog}/panel-dialog.d.ts.map +0 -0
  715. /package/{ebay-progress-bar → dist/ebay-progress-bar}/index.d.ts +0 -0
  716. /package/{ebay-progress-bar → dist/ebay-progress-bar}/index.d.ts.map +0 -0
  717. /package/{ebay-progress-bar → dist/ebay-progress-bar}/index.js +0 -0
  718. /package/{ebay-progress-bar → dist/ebay-progress-bar}/progress-bar.d.ts +0 -0
  719. /package/{ebay-progress-bar → dist/ebay-progress-bar}/progress-bar.d.ts.map +0 -0
  720. /package/{ebay-progress-spinner → dist/ebay-progress-spinner}/index.d.ts +0 -0
  721. /package/{ebay-progress-spinner → dist/ebay-progress-spinner}/index.d.ts.map +0 -0
  722. /package/{ebay-progress-spinner → dist/ebay-progress-spinner}/index.js +0 -0
  723. /package/{ebay-progress-spinner → dist/ebay-progress-spinner}/progress-spinner.d.ts +0 -0
  724. /package/{ebay-progress-spinner → dist/ebay-progress-spinner}/progress-spinner.d.ts.map +0 -0
  725. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-step.d.ts +0 -0
  726. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-step.d.ts.map +0 -0
  727. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-stepper.d.ts +0 -0
  728. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-stepper.d.ts.map +0 -0
  729. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-title.d.ts +0 -0
  730. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/ebay-progress-title.d.ts.map +0 -0
  731. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/index.d.ts +0 -0
  732. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/index.d.ts.map +0 -0
  733. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/index.js +0 -0
  734. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/types.d.ts +0 -0
  735. /package/{ebay-progress-stepper → dist/ebay-progress-stepper}/types.d.ts.map +0 -0
  736. /package/{ebay-radio → dist/ebay-radio}/index.d.ts +0 -0
  737. /package/{ebay-radio → dist/ebay-radio}/index.d.ts.map +0 -0
  738. /package/{ebay-radio → dist/ebay-radio}/index.js +0 -0
  739. /package/{ebay-radio → dist/ebay-radio}/radio/index.js +0 -0
  740. /package/{ebay-radio → dist/ebay-radio}/radio.d.ts +0 -0
  741. /package/{ebay-radio → dist/ebay-radio}/radio.d.ts.map +0 -0
  742. /package/{ebay-section-notice → dist/ebay-section-notice}/index.d.ts +0 -0
  743. /package/{ebay-section-notice → dist/ebay-section-notice}/index.d.ts.map +0 -0
  744. /package/{ebay-section-notice → dist/ebay-section-notice}/index.js +0 -0
  745. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-cta.d.ts +0 -0
  746. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-cta.d.ts.map +0 -0
  747. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-footer.d.ts +0 -0
  748. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-footer.d.ts.map +0 -0
  749. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-title.d.ts +0 -0
  750. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice-title.d.ts.map +0 -0
  751. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice.d.ts +0 -0
  752. /package/{ebay-section-notice → dist/ebay-section-notice}/section-notice.d.ts.map +0 -0
  753. /package/{ebay-section-title → dist/ebay-section-title}/cta.d.ts +0 -0
  754. /package/{ebay-section-title → dist/ebay-section-title}/cta.d.ts.map +0 -0
  755. /package/{ebay-section-title → dist/ebay-section-title}/index.d.ts +0 -0
  756. /package/{ebay-section-title → dist/ebay-section-title}/index.d.ts.map +0 -0
  757. /package/{ebay-section-title → dist/ebay-section-title}/index.js +0 -0
  758. /package/{ebay-section-title → dist/ebay-section-title}/info.d.ts +0 -0
  759. /package/{ebay-section-title → dist/ebay-section-title}/info.d.ts.map +0 -0
  760. /package/{ebay-section-title → dist/ebay-section-title}/overflow.d.ts +0 -0
  761. /package/{ebay-section-title → dist/ebay-section-title}/overflow.d.ts.map +0 -0
  762. /package/{ebay-section-title → dist/ebay-section-title}/section-title.d.ts +0 -0
  763. /package/{ebay-section-title → dist/ebay-section-title}/section-title.d.ts.map +0 -0
  764. /package/{ebay-section-title → dist/ebay-section-title}/subtitle.d.ts +0 -0
  765. /package/{ebay-section-title → dist/ebay-section-title}/subtitle.d.ts.map +0 -0
  766. /package/{ebay-section-title → dist/ebay-section-title}/title.d.ts +0 -0
  767. /package/{ebay-section-title → dist/ebay-section-title}/title.d.ts.map +0 -0
  768. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/button.d.ts +0 -0
  769. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/button.d.ts.map +0 -0
  770. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/index.d.ts +0 -0
  771. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/index.d.ts.map +0 -0
  772. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/index.js +0 -0
  773. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/segmented-buttons.d.ts +0 -0
  774. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/segmented-buttons.d.ts.map +0 -0
  775. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/types.d.ts +0 -0
  776. /package/{ebay-segmented-buttons → dist/ebay-segmented-buttons}/types.d.ts.map +0 -0
  777. /package/{ebay-select → dist/ebay-select}/ebay-select-option.d.ts +0 -0
  778. /package/{ebay-select → dist/ebay-select}/ebay-select-option.d.ts.map +0 -0
  779. /package/{ebay-select → dist/ebay-select}/ebay-select.d.ts +0 -0
  780. /package/{ebay-select → dist/ebay-select}/ebay-select.d.ts.map +0 -0
  781. /package/{ebay-select → dist/ebay-select}/index.d.ts +0 -0
  782. /package/{ebay-select → dist/ebay-select}/index.d.ts.map +0 -0
  783. /package/{ebay-select → dist/ebay-select}/index.js +0 -0
  784. /package/{ebay-signal → dist/ebay-signal}/index.d.ts +0 -0
  785. /package/{ebay-signal → dist/ebay-signal}/index.d.ts.map +0 -0
  786. /package/{ebay-signal → dist/ebay-signal}/index.js +0 -0
  787. /package/{ebay-signal → dist/ebay-signal}/signal.d.ts +0 -0
  788. /package/{ebay-signal → dist/ebay-signal}/signal.d.ts.map +0 -0
  789. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/components/ebay-snackbar-dialog-action.d.ts +0 -0
  790. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/components/ebay-snackbar-dialog-action.d.ts.map +0 -0
  791. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/components/ebay-snackbar-dialog.d.ts +0 -0
  792. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/components/ebay-snackbar-dialog.d.ts.map +0 -0
  793. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/index.d.ts +0 -0
  794. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/index.d.ts.map +0 -0
  795. /package/{ebay-snackbar-dialog → dist/ebay-snackbar-dialog}/index.js +0 -0
  796. /package/{ebay-split-button → dist/ebay-split-button}/index.d.ts +0 -0
  797. /package/{ebay-split-button → dist/ebay-split-button}/index.d.ts.map +0 -0
  798. /package/{ebay-split-button → dist/ebay-split-button}/index.js +0 -0
  799. /package/{ebay-split-button → dist/ebay-split-button}/split-button.d.ts +0 -0
  800. /package/{ebay-split-button → dist/ebay-split-button}/split-button.d.ts.map +0 -0
  801. /package/{ebay-split-button → dist/ebay-split-button}/types.d.ts +0 -0
  802. /package/{ebay-split-button → dist/ebay-split-button}/types.d.ts.map +0 -0
  803. /package/{ebay-star-rating → dist/ebay-star-rating}/index.d.ts +0 -0
  804. /package/{ebay-star-rating → dist/ebay-star-rating}/index.d.ts.map +0 -0
  805. /package/{ebay-star-rating → dist/ebay-star-rating}/index.js +0 -0
  806. /package/{ebay-star-rating → dist/ebay-star-rating}/star-rating.d.ts +0 -0
  807. /package/{ebay-star-rating → dist/ebay-star-rating}/star-rating.d.ts.map +0 -0
  808. /package/{ebay-star-rating-select → dist/ebay-star-rating-select}/index.d.ts +0 -0
  809. /package/{ebay-star-rating-select → dist/ebay-star-rating-select}/index.d.ts.map +0 -0
  810. /package/{ebay-star-rating-select → dist/ebay-star-rating-select}/index.js +0 -0
  811. /package/{ebay-star-rating-select → dist/ebay-star-rating-select}/star-rating-select.d.ts +0 -0
  812. /package/{ebay-star-rating-select → dist/ebay-star-rating-select}/star-rating-select.d.ts.map +0 -0
  813. /package/{ebay-svg → dist/ebay-svg}/index.d.ts +0 -0
  814. /package/{ebay-svg → dist/ebay-svg}/index.d.ts.map +0 -0
  815. /package/{ebay-svg → dist/ebay-svg}/svg.d.ts +0 -0
  816. /package/{ebay-svg → dist/ebay-svg}/svg.d.ts.map +0 -0
  817. /package/{ebay-switch → dist/ebay-switch}/ebay-switch.d.ts +0 -0
  818. /package/{ebay-switch → dist/ebay-switch}/ebay-switch.d.ts.map +0 -0
  819. /package/{ebay-switch → dist/ebay-switch}/index.d.ts +0 -0
  820. /package/{ebay-switch → dist/ebay-switch}/index.d.ts.map +0 -0
  821. /package/{ebay-switch → dist/ebay-switch}/index.js +0 -0
  822. /package/{ebay-tabs → dist/ebay-tabs}/index.d.ts +0 -0
  823. /package/{ebay-tabs → dist/ebay-tabs}/index.d.ts.map +0 -0
  824. /package/{ebay-tabs → dist/ebay-tabs}/index.js +0 -0
  825. /package/{ebay-tabs → dist/ebay-tabs}/tab-panel.d.ts +0 -0
  826. /package/{ebay-tabs → dist/ebay-tabs}/tab-panel.d.ts.map +0 -0
  827. /package/{ebay-tabs → dist/ebay-tabs}/tab.d.ts +0 -0
  828. /package/{ebay-tabs → dist/ebay-tabs}/tab.d.ts.map +0 -0
  829. /package/{ebay-tabs → dist/ebay-tabs}/tabs.d.ts +0 -0
  830. /package/{ebay-tabs → dist/ebay-tabs}/tabs.d.ts.map +0 -0
  831. /package/{ebay-tabs → dist/ebay-tabs}/types.d.ts +0 -0
  832. /package/{ebay-tabs → dist/ebay-tabs}/types.d.ts.map +0 -0
  833. /package/{ebay-textbox → dist/ebay-textbox}/index.d.ts +0 -0
  834. /package/{ebay-textbox → dist/ebay-textbox}/index.d.ts.map +0 -0
  835. /package/{ebay-textbox → dist/ebay-textbox}/index.js +0 -0
  836. /package/{ebay-textbox → dist/ebay-textbox}/postfix-icon.d.ts +0 -0
  837. /package/{ebay-textbox → dist/ebay-textbox}/postfix-icon.d.ts.map +0 -0
  838. /package/{ebay-textbox → dist/ebay-textbox}/postfix-text.d.ts +0 -0
  839. /package/{ebay-textbox → dist/ebay-textbox}/postfix-text.d.ts.map +0 -0
  840. /package/{ebay-textbox → dist/ebay-textbox}/prefix-icon.d.ts +0 -0
  841. /package/{ebay-textbox → dist/ebay-textbox}/prefix-icon.d.ts.map +0 -0
  842. /package/{ebay-textbox → dist/ebay-textbox}/prefix-text.d.ts +0 -0
  843. /package/{ebay-textbox → dist/ebay-textbox}/prefix-text.d.ts.map +0 -0
  844. /package/{ebay-textbox → dist/ebay-textbox}/textbox.d.ts +0 -0
  845. /package/{ebay-textbox → dist/ebay-textbox}/textbox.d.ts.map +0 -0
  846. /package/{ebay-textbox → dist/ebay-textbox}/types.d.ts +0 -0
  847. /package/{ebay-textbox → dist/ebay-textbox}/types.d.ts.map +0 -0
  848. /package/{ebay-toast-dialog → dist/ebay-toast-dialog}/components/toast.d.ts +0 -0
  849. /package/{ebay-toast-dialog → dist/ebay-toast-dialog}/components/toast.d.ts.map +0 -0
  850. /package/{ebay-toast-dialog → dist/ebay-toast-dialog}/index.d.ts +0 -0
  851. /package/{ebay-toast-dialog → dist/ebay-toast-dialog}/index.d.ts.map +0 -0
  852. /package/{ebay-toast-dialog → dist/ebay-toast-dialog}/index.js +0 -0
  853. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip-content.d.ts +0 -0
  854. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip-content.d.ts.map +0 -0
  855. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip-host.d.ts +0 -0
  856. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip-host.d.ts.map +0 -0
  857. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip.d.ts +0 -0
  858. /package/{ebay-tooltip → dist/ebay-tooltip}/ebay-tooltip.d.ts.map +0 -0
  859. /package/{ebay-tooltip → dist/ebay-tooltip}/index.d.ts +0 -0
  860. /package/{ebay-tooltip → dist/ebay-tooltip}/index.d.ts.map +0 -0
  861. /package/{ebay-tooltip → dist/ebay-tooltip}/index.js +0 -0
  862. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-content.d.ts +0 -0
  863. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-content.d.ts.map +0 -0
  864. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-footer.d.ts +0 -0
  865. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-footer.d.ts.map +0 -0
  866. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-heading.d.ts +0 -0
  867. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-heading.d.ts.map +0 -0
  868. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-host.d.ts +0 -0
  869. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip-host.d.ts.map +0 -0
  870. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip.d.ts +0 -0
  871. /package/{ebay-tourtip → dist/ebay-tourtip}/ebay-tourtip.d.ts.map +0 -0
  872. /package/{ebay-tourtip → dist/ebay-tourtip}/index.d.ts +0 -0
  873. /package/{ebay-tourtip → dist/ebay-tourtip}/index.d.ts.map +0 -0
  874. /package/{ebay-tourtip → dist/ebay-tourtip}/index.js +0 -0
  875. /package/{ebay-video → dist/ebay-video}/const.d.ts +0 -0
  876. /package/{ebay-video → dist/ebay-video}/const.d.ts.map +0 -0
  877. /package/{ebay-video → dist/ebay-video}/controls.d.ts +0 -0
  878. /package/{ebay-video → dist/ebay-video}/controls.d.ts.map +0 -0
  879. /package/{ebay-video → dist/ebay-video}/index.d.ts +0 -0
  880. /package/{ebay-video → dist/ebay-video}/index.d.ts.map +0 -0
  881. /package/{ebay-video → dist/ebay-video}/index.js +0 -0
  882. /package/{ebay-video → dist/ebay-video}/reportButton.d.ts +0 -0
  883. /package/{ebay-video → dist/ebay-video}/reportButton.d.ts.map +0 -0
  884. /package/{ebay-video → dist/ebay-video}/source.d.ts +0 -0
  885. /package/{ebay-video → dist/ebay-video}/source.d.ts.map +0 -0
  886. /package/{ebay-video → dist/ebay-video}/types.d.ts +0 -0
  887. /package/{ebay-video → dist/ebay-video}/types.d.ts.map +0 -0
  888. /package/{ebay-video → dist/ebay-video}/video.d.ts +0 -0
  889. /package/{ebay-video → dist/ebay-video}/video.d.ts.map +0 -0
  890. /package/{events → dist/events}/index.d.ts +0 -0
  891. /package/{events → dist/events}/index.d.ts.map +0 -0
  892. /package/{events → dist/events}/index.js +0 -0
  893. /package/{icon-TuxfQndO.js → dist/icon-TuxfQndO.js} +0 -0
  894. /package/{icon-button-Cwaj-eT9.js → dist/icon-button-Cwaj-eT9.js} +0 -0
  895. /package/{label-CnrpYJ-g.js → dist/label-CnrpYJ-g.js} +0 -0
  896. /package/{menu-CV-INYLM.js → dist/menu-CV-INYLM.js} +0 -0
  897. /package/{menu-_LzP6yje.js → dist/menu-_LzP6yje.js} +0 -0
  898. /package/{menu-button-BZ66jxvI.js → dist/menu-button-BZ66jxvI.js} +0 -0
  899. /package/{notice-content-9iF4T8uB.js → dist/notice-content-9iF4T8uB.js} +0 -0
  900. /package/{notice-content-C0ZStfuX.js → dist/notice-content-C0ZStfuX.js} +0 -0
  901. /package/{notice-footer-Cw1DMzoB.js → dist/notice-footer-Cw1DMzoB.js} +0 -0
  902. /package/{progress-spinner-U2qOANON.js → dist/progress-spinner-U2qOANON.js} +0 -0
  903. /package/{range-DOsPN0h5.js → dist/range-DOsPN0h5.js} +0 -0
  904. /package/{textbox-dUhinDwj.js → dist/textbox-dUhinDwj.js} +0 -0
  905. /package/{use-roving-index-DoAVBgsp.js → dist/use-roving-index-DoAVBgsp.js} +0 -0
  906. /package/{use-tooltip-CL3_zAeg.js → dist/use-tooltip-CL3_zAeg.js} +0 -0
  907. /package/{utils → dist/utils}/index.d.ts +0 -0
  908. /package/{utils → dist/utils}/index.d.ts.map +0 -0
  909. /package/{utils → dist/utils}/index.js +0 -0
  910. /package/{ebay-alert-dialog → src/ebay-alert-dialog}/README.md +0 -0
  911. /package/{ebay-badge → src/ebay-badge}/README.md +0 -0
  912. /package/{ebay-breadcrumbs → src/ebay-breadcrumbs}/README.md +0 -0
  913. /package/{ebay-button → src/ebay-button}/README.md +0 -0
  914. /package/{ebay-calendar → src/ebay-calendar}/README.md +0 -0
  915. /package/{ebay-carousel → src/ebay-carousel}/README.md +0 -0
  916. /package/{ebay-checkbox → src/ebay-checkbox}/README.md +0 -0
  917. /package/{ebay-confirm-dialog → src/ebay-confirm-dialog}/README.md +0 -0
  918. /package/{ebay-cta-button → src/ebay-cta-button}/README.md +0 -0
  919. /package/{ebay-date-textbox → src/ebay-date-textbox}/README.md +0 -0
  920. /package/{ebay-dialog-base → src/ebay-dialog-base}/README.md +0 -0
  921. /package/{ebay-drawer-dialog → src/ebay-drawer-dialog}/README.md +0 -0
  922. /package/{ebay-eek → src/ebay-eek}/README.md +0 -0
  923. /package/{ebay-fake-menu → src/ebay-fake-menu}/README.md +0 -0
  924. /package/{ebay-fake-menu-button → src/ebay-fake-menu-button}/README.md +0 -0
  925. /package/{ebay-fake-tabs → src/ebay-fake-tabs}/README.md +0 -0
  926. /package/{ebay-field → src/ebay-field}/README.md +0 -0
  927. /package/{ebay-fullscreen-dialog → src/ebay-fullscreen-dialog}/README.md +0 -0
  928. /package/{ebay-icon → src/ebay-icon}/README.md +0 -0
  929. /package/{ebay-icon-button → src/ebay-icon-button}/README.md +0 -0
  930. /package/{ebay-infotip → src/ebay-infotip}/README.md +0 -0
  931. /package/{ebay-inline-notice → src/ebay-inline-notice}/README.md +0 -0
  932. /package/{ebay-lightbox-dialog → src/ebay-lightbox-dialog}/README.md +0 -0
  933. /package/{ebay-listbox-button → src/ebay-listbox-button}/README.md +0 -0
  934. /package/{ebay-menu → src/ebay-menu}/README.md +0 -0
  935. /package/{ebay-menu-button → src/ebay-menu-button}/README.md +0 -0
  936. /package/{ebay-page-notice → src/ebay-page-notice}/README.md +0 -0
  937. /package/{ebay-pagination → src/ebay-pagination}/README.md +0 -0
  938. /package/{ebay-panel-dialog → src/ebay-panel-dialog}/README.md +0 -0
  939. /package/{ebay-progress-bar → src/ebay-progress-bar}/README.md +0 -0
  940. /package/{ebay-progress-spinner → src/ebay-progress-spinner}/README.md +0 -0
  941. /package/{ebay-progress-stepper → src/ebay-progress-stepper}/README.md +0 -0
  942. /package/{ebay-radio → src/ebay-radio}/README.md +0 -0
  943. /package/{ebay-section-notice → src/ebay-section-notice}/README.md +0 -0
  944. /package/{ebay-section-title → src/ebay-section-title}/README.md +0 -0
  945. /package/{ebay-segmented-buttons → src/ebay-segmented-buttons}/README.md +0 -0
  946. /package/{ebay-select → src/ebay-select}/README.md +0 -0
  947. /package/{ebay-signal → src/ebay-signal}/README.md +0 -0
  948. /package/{ebay-snackbar-dialog → src/ebay-snackbar-dialog}/README.md +0 -0
  949. /package/{ebay-split-button → src/ebay-split-button}/README.md +0 -0
  950. /package/{ebay-star-rating → src/ebay-star-rating}/README.md +0 -0
  951. /package/{ebay-star-rating-select → src/ebay-star-rating-select}/README.md +0 -0
  952. /package/{ebay-svg → src/ebay-svg}/README.md +0 -0
  953. /package/{ebay-switch → src/ebay-switch}/README.md +0 -0
  954. /package/{ebay-tabs → src/ebay-tabs}/README.md +0 -0
  955. /package/{ebay-textbox → src/ebay-textbox}/README.md +0 -0
  956. /package/{ebay-toast-dialog → src/ebay-toast-dialog}/README.md +0 -0
  957. /package/{ebay-tooltip → src/ebay-tooltip}/README.md +0 -0
  958. /package/{ebay-tourtip → src/ebay-tourtip}/README.md +0 -0
  959. /package/{ebay-video → src/ebay-video}/README.md +0 -0
  960. /package/{events → src/events}/README.md +0 -0
  961. /package/{utils → src/utils}/README.md +0 -0
@@ -0,0 +1,320 @@
1
+ import React, {
2
+ Children, cloneElement, useEffect, useRef, useState,
3
+ ComponentProps, FC, KeyboardEvent, ReactElement, useCallback
4
+ } from 'react'
5
+ import classNames from 'classnames'
6
+ import { EbayIcon } from '../ebay-icon'
7
+ import { EbayChangeEventHandler, Key } from '../common/event-utils/types'
8
+ import { filterByType } from '../common/component-utils'
9
+ import EbayListboxButtonOption from './listbox-button-option'
10
+
11
+ export type ChangeEventProps = {
12
+ index: number;
13
+ selected: string[];
14
+ wasClicked: boolean;
15
+ }
16
+
17
+ export type EbayListboxButtonProps = Omit<ComponentProps<'input'>, 'onChange'> & {
18
+ selected?: number;
19
+ borderless?: boolean;
20
+ fluid?: boolean;
21
+ maxHeight?: string;
22
+ prefixId?: string;
23
+ prefixLabel?: string;
24
+ floatingLabel?: string;
25
+ unselectedText?: string;
26
+ onChange?: EbayChangeEventHandler<HTMLButtonElement, ChangeEventProps>;
27
+ onCollapse?: () => void;
28
+ onExpand?: () => void;
29
+ }
30
+
31
+ const ListboxButton: FC<EbayListboxButtonProps> = ({
32
+ children,
33
+ name,
34
+ value,
35
+ selected,
36
+ borderless,
37
+ fluid,
38
+ className,
39
+ maxHeight,
40
+ prefixId,
41
+ prefixLabel,
42
+ floatingLabel,
43
+ unselectedText = '-',
44
+ onChange = () => {},
45
+ onCollapse = () => {},
46
+ onExpand = () => {},
47
+ ...rest
48
+ }) => {
49
+ const optionsContainerRef = useRef<HTMLDivElement>(null)
50
+ const optionsParentContainerRef = useRef<HTMLDivElement>()
51
+ const optionsByIndexRef = useRef(new Map())
52
+ const buttonRef = useRef<HTMLButtonElement>()
53
+
54
+ const listBoxButtonOptions = filterByType(children, EbayListboxButtonOption)
55
+ if (!listBoxButtonOptions.length) {
56
+ throw new Error(`EbayListboxButton: Please use a
57
+ EbayListboxButtonOption that defines the options of the listbox`)
58
+ }
59
+ const getInitialSelectedOption = (): { option: any, index: number } => {
60
+ const selectedIndex = selected !== undefined ? selected : listBoxButtonOptions.findIndex(({ props }) =>
61
+ value !== undefined && props.value === value)
62
+ const index = selectedIndex > -1 || floatingLabel ? selectedIndex : undefined
63
+ return {
64
+ option: listBoxButtonOptions[index],
65
+ index
66
+ }
67
+ }
68
+
69
+ // Get the default Selected value and set it in the state
70
+ const {
71
+ option: selectedOptionFromValue,
72
+ index: initialSelectedOptionIndex
73
+ } = getInitialSelectedOption()
74
+ // Update the selected option to the state
75
+ const [selectedOption, setSelectedOption] = useState(selectedOptionFromValue)
76
+ const [selectedIndex, setSelectedIndex] = useState(initialSelectedOptionIndex)
77
+ // Update the expanded status to the state
78
+ const [expanded, setExpanded] = useState<boolean|undefined>()
79
+ // Additional flag to avoid multiple re-render when users tries to open and close
80
+ const [optionsOpened, setOptionsOpened] = useState(false)
81
+ const [wasClicked, setWasClicked] = useState<boolean>()
82
+
83
+ useEffect(() => {
84
+ setSelectedOption(selectedOptionFromValue)
85
+ }, [value])
86
+
87
+ const childrenArray = Children.toArray(children) as ReactElement[]
88
+ const getSelectedValueByIndex = (index: number) => childrenArray[index].props.value
89
+ const getIndexByValue = useCallback((selectedValue) =>
90
+ childrenArray.findIndex(({ props }) => props.value === selectedValue), [childrenArray])
91
+ const getSelectedOption = (currentIndex: number) => optionsByIndexRef.current.get(currentIndex)
92
+ const setActiveDescendant = (index: number) => {
93
+ const optionsContainerEle = optionsContainerRef.current
94
+ optionsContainerEle?.setAttribute(`aria-activedescendant`, getSelectedOption(index).id)
95
+ }
96
+
97
+ const collapseListbox = () => {
98
+ setExpanded(false)
99
+ onCollapse()
100
+ }
101
+
102
+ const expandListbox = () => {
103
+ setExpanded(true)
104
+ onExpand()
105
+ }
106
+
107
+ const toggleListbox = () => {
108
+ if (expanded) {
109
+ collapseListbox()
110
+ } else {
111
+ expandListbox()
112
+ }
113
+ }
114
+
115
+ const onOptionsSelect = (e, index) => {
116
+ // OnSelect set the selectedValue to the state and expanded to false to close the list box
117
+ setSelectedOption(childrenArray[index])
118
+ setSelectedIndex(index)
119
+ collapseListbox()
120
+ setActiveDescendant(index)
121
+ buttonRef.current.focus()
122
+ onChange(e, { index, selected: [getSelectedValueByIndex(index)], wasClicked })
123
+ setWasClicked(false)
124
+ }
125
+
126
+ const reset = () => {
127
+ collapseListbox()
128
+ setSelectedOption(childrenArray[initialSelectedOptionIndex])
129
+ }
130
+
131
+ const makeOptionActive = (index: number) => {
132
+ const optionEle = optionsContainerRef.current.children[index]
133
+ optionEle.setAttribute(`aria-selected`, 'true')
134
+ optionEle.classList.add(`listbox-button__option--active`)
135
+ }
136
+
137
+ const makeOptionInActive = (index: number) => {
138
+ const optionEle = optionsContainerRef.current.children[index]
139
+ optionEle.setAttribute(`aria-selected`, 'false')
140
+ optionEle.classList.remove(`listbox-button__option--active`)
141
+ }
142
+
143
+ // Followed the implementation from W3
144
+ // https://www.w3.org/TR/wai-aria-practices/examples/listbox/listbox-collapsible.html
145
+ const scrollOptions = (index: number) => {
146
+ const listboxOptionsContainerNode = optionsParentContainerRef.current
147
+ const currentTarget = getSelectedOption(index)
148
+ if (listboxOptionsContainerNode.scrollHeight > listboxOptionsContainerNode.clientHeight) {
149
+ const scrollBottom = listboxOptionsContainerNode.clientHeight + listboxOptionsContainerNode.scrollTop
150
+ const elementBottom = currentTarget.offsetTop + currentTarget.offsetHeight
151
+ if (elementBottom > scrollBottom) {
152
+ listboxOptionsContainerNode.scrollTop = elementBottom - listboxOptionsContainerNode.clientHeight
153
+ } else if (currentTarget.offsetTop < listboxOptionsContainerNode.scrollTop) {
154
+ listboxOptionsContainerNode.scrollTop = currentTarget.offsetTop
155
+ }
156
+ }
157
+ }
158
+
159
+ const makeSelections = (updatedIndex) => {
160
+ makeOptionActive(selectedIndex === undefined || updatedIndex === -1 ? 0 : updatedIndex)
161
+ makeOptionInActive(selectedIndex === undefined || selectedIndex === -1 ? 0 : selectedIndex)
162
+ scrollOptions(updatedIndex)
163
+ setActiveDescendant(updatedIndex)
164
+ setSelectedIndex(updatedIndex)
165
+ setSelectedOption(childrenArray[updatedIndex])
166
+ }
167
+
168
+ const focusOptionsContainer = (focusOptions?: FocusOptions) =>
169
+ setTimeout(() => optionsContainerRef?.current?.focus(focusOptions), 0)
170
+ const onButtonClick = () => {
171
+ toggleListbox()
172
+ setOptionsOpened(true)
173
+ focusOptionsContainer({ preventScroll: true })
174
+ }
175
+ const onButtonKeyup = (e: KeyboardEvent<HTMLButtonElement>) => {
176
+ switch (e.key as Key) {
177
+ case 'Escape':
178
+ collapseListbox()
179
+ break
180
+ case 'Enter':
181
+ focusOptionsContainer()
182
+ break
183
+ default:
184
+ break
185
+ }
186
+ }
187
+ const onOptionContainerKeydown = (e: KeyboardEvent): void => {
188
+ switch (e.key as Key) {
189
+ case ' ':
190
+ case 'PageUp':
191
+ case 'PageDown':
192
+ case 'Home':
193
+ case 'End':
194
+ e.preventDefault()
195
+ break
196
+ case 'Down':
197
+ case 'ArrowDown':
198
+ e.preventDefault()
199
+ if (selectedIndex !== listBoxButtonOptions.length - 1) {
200
+ makeSelections(selectedIndex < listBoxButtonOptions.length - 1 ? selectedIndex + 1 : 0)
201
+ }
202
+ break
203
+ case 'Up':
204
+ case 'ArrowUp':
205
+ e.preventDefault()
206
+ if (selectedIndex !== 0) {
207
+ makeSelections(selectedIndex > 0 ? selectedIndex - 1 : listBoxButtonOptions.length - 1)
208
+ }
209
+ break
210
+ case 'Enter':
211
+ collapseListbox()
212
+ setTimeout(() => setSelectedOption(childrenArray[selectedIndex]))
213
+ setTimeout(() => buttonRef.current.focus(), 0)
214
+ onChange(e as any, {
215
+ index: selectedIndex,
216
+ selected: [getSelectedValueByIndex(selectedIndex)],
217
+ wasClicked
218
+ })
219
+ break
220
+ case 'Esc':
221
+ case 'Escape':
222
+ reset()
223
+ break
224
+ default:
225
+ break
226
+ }
227
+ }
228
+
229
+ // We want to mimic the select box behavior, so we take the onSelect that passed
230
+ // at the parent level and use it for the OnClick on the list box since it is a fake dropdown
231
+ const updateListBoxButtonOptions = listBoxButtonOptions
232
+ .map((child, index) => cloneElement(child, {
233
+ index,
234
+ key: index,
235
+ selected: selectedOption && child.props.value === selectedOption.props.value,
236
+ onClick: (e) => onOptionsSelect(e, index),
237
+ innerRef: optionNode => !optionNode
238
+ ? optionsByIndexRef.current.delete(index)
239
+ : optionsByIndexRef.current.set(index, optionNode)
240
+ }))
241
+ const wrapperClassName = classNames('listbox-button', className, { 'listbox-button--fluid': fluid })
242
+ const buttonClassName = classNames('btn', {
243
+ 'btn--form': !borderless,
244
+ 'btn--borderless': borderless,
245
+ 'btn--floating-label': floatingLabel && selectedOption
246
+ })
247
+ const expandBtnTextId = prefixId && 'expand-btn-text'
248
+
249
+
250
+ const buttonLabel = (
251
+ <>
252
+ {floatingLabel && <span className="btn__floating-label">{floatingLabel}</span>}
253
+ {prefixLabel && <span className="btn__label">{prefixLabel}</span>}
254
+ <span className="btn__text" id={expandBtnTextId}>
255
+ {selectedOption?.props.children || unselectedText}
256
+ </span>
257
+ </>
258
+ )
259
+
260
+ return (
261
+ <span className={wrapperClassName}>
262
+ <button
263
+ {...rest}
264
+ type="button"
265
+ className={buttonClassName}
266
+ aria-expanded={!!expanded}
267
+ aria-haspopup="listbox"
268
+ aria-labelledby={prefixId && `${prefixId} ${expandBtnTextId}`}
269
+ onClick={onButtonClick}
270
+ // https://stackoverflow.com/questions/17769005/onclick-and-onblur-ordering-issue
271
+ onMouseDown={(e) => e.preventDefault()}
272
+ onKeyUp={onButtonKeyup}
273
+ ref={buttonRef}
274
+ >
275
+ <span className="btn__cell">
276
+ {buttonLabel}
277
+ <EbayIcon name="chevronDown12" />
278
+ </span>
279
+ </button>
280
+ {(expanded || optionsOpened) &&
281
+ <div
282
+ className="listbox-button__listbox"
283
+ ref={optionsParentContainerRef}
284
+ style={{ maxHeight: maxHeight }}>
285
+ <div
286
+ className="listbox-button__options"
287
+ role="listbox"
288
+ tabIndex={expanded ? 0 : -1}
289
+ ref={optionsContainerRef}
290
+ onKeyDown={(e) => onOptionContainerKeydown(e)}
291
+ // adding onMouseDown preventDefault b/c on IE the onClick event is not being fired on each
292
+ // option https://stackoverflow.com/questions/17769005/onclick-and-onblur-ordering-issue
293
+ onMouseDown={(e) => {
294
+ e.preventDefault()
295
+ setWasClicked(true)
296
+ }}
297
+ onBlur={() => {
298
+ collapseListbox()
299
+ setTimeout(() => buttonRef.current.focus(), 0)
300
+ }}
301
+ >
302
+ {updateListBoxButtonOptions}
303
+ </div>
304
+ </div>}
305
+ <select
306
+ hidden
307
+ className="listbox-button__native"
308
+ name={name}
309
+ onChange={(e) => onOptionsSelect(e, getIndexByValue(e.target.value))}
310
+ value={selectedOption ? selectedOption?.props.value : ''}>
311
+ {
312
+ updateListBoxButtonOptions.map((option, i) =>
313
+ <option value={option.props.value} key={i} />)
314
+ }
315
+ </select>
316
+ </span>
317
+ )
318
+ }
319
+
320
+ export default ListboxButton
@@ -0,0 +1,287 @@
1
+ import React from 'react'
2
+ import { render, fireEvent, screen } from '@testing-library/react'
3
+ import { act } from '@testing-library/react-hooks/dom'
4
+
5
+ import { EbayMenu, EbayMenuItem } from '../index'
6
+ import { WithBadges, WithSeparator, Radio } from './index.stories'
7
+
8
+ const onKeyDownSpy = jest.fn()
9
+ const onClickSpy = jest.fn()
10
+ const onSelectSpy = jest.fn()
11
+ const onChangeSpy = jest.fn()
12
+
13
+ describe('<EbayMenu>', () => {
14
+ describe('rendering', () => {
15
+ describe('with separators', () => {
16
+ beforeEach(() => {
17
+ render(<WithSeparator />)
18
+ })
19
+
20
+ it('should render the menu', () => {
21
+ expect(screen.getByRole('menu')).toBeInTheDocument()
22
+ })
23
+
24
+ it('should render the menu items', () => {
25
+ expect(screen.getAllByRole('menuitem')).toHaveLength(5)
26
+ })
27
+
28
+ it('should render the menu separators', () => {
29
+ expect(screen.getAllByRole('separator')).toHaveLength(1)
30
+ })
31
+ })
32
+
33
+ describe('with badges', () => {
34
+ beforeEach(() => {
35
+ render(<WithBadges />)
36
+ })
37
+
38
+ it('should render the menu', () => {
39
+ expect(screen.getByRole('menu')).toBeInTheDocument()
40
+ })
41
+
42
+ it('should render the menu items', () => {
43
+ expect(screen.getAllByRole('menuitem')).toHaveLength(3)
44
+ })
45
+
46
+ it('should render the menu badges', () => {
47
+ expect(screen.getByLabelText('item 1 (5 unread items)')).toBeInTheDocument()
48
+ expect(screen.getByLabelText('item 2 (23 unread items)')).toBeInTheDocument()
49
+ })
50
+ })
51
+
52
+ describe('with radio buttons', () => {
53
+ beforeEach(() => {
54
+ render(<Radio />)
55
+ })
56
+
57
+ it('should render the menu', () => {
58
+ expect(screen.getByRole('menu')).toBeInTheDocument()
59
+ })
60
+
61
+ it('should render the menu radio buttons', () => {
62
+ expect(screen.getAllByRole('menuitemradio')).toHaveLength(3)
63
+ })
64
+ })
65
+ })
66
+
67
+ describe('interaction', () => {
68
+ beforeEach(() => {
69
+ render(
70
+ <EbayMenu onClick={onClickSpy} onSelect={onSelectSpy} onKeyDown={onKeyDownSpy}>
71
+ <EbayMenuItem value="1">item1</EbayMenuItem>
72
+ <EbayMenuItem value="2">item2</EbayMenuItem>
73
+ </EbayMenu>
74
+ )
75
+ })
76
+
77
+ it('should fire onClick, onSelect event', async () => {
78
+ await act(() => {
79
+ fireEvent.click(screen.getByText('item2'))
80
+ })
81
+
82
+ const expectedProps = {
83
+ index: 1,
84
+ checked: [1]
85
+ }
86
+
87
+ expect(onClickSpy).toHaveBeenCalledWith(expect.any(Object))
88
+ expect(onSelectSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
89
+ })
90
+
91
+ it('should fire onKeyDown event', async () => {
92
+ const [item1] = screen.getAllByRole('menuitem')
93
+
94
+ await act(() => {
95
+ fireEvent.keyDown(item1, { key: 'Esc' })
96
+ })
97
+
98
+ const expectedProps = {
99
+ index: 0,
100
+ checked: []
101
+ }
102
+
103
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
104
+ })
105
+
106
+ it('should fire onKeyDown, onSelect event', async () => {
107
+ const [item1, item2] = screen.getAllByRole('menuitem')
108
+
109
+ await act(() => {
110
+ fireEvent.keyDown(item2, { key: 'Enter' })
111
+ })
112
+
113
+ const expectedProps = {
114
+ index: 1,
115
+ checked: [1]
116
+ }
117
+
118
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
119
+ expect(onSelectSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
120
+ })
121
+ })
122
+
123
+ describe('type="radio"', () => {
124
+ beforeEach(() => {
125
+ render(
126
+ <EbayMenu
127
+ type="radio"
128
+ onClick={onClickSpy}
129
+ onChange={onChangeSpy}
130
+ onKeyDown={onKeyDownSpy}
131
+ >
132
+ <EbayMenuItem value="1" checked>item1</EbayMenuItem>
133
+ <EbayMenuItem value="2">item2</EbayMenuItem>
134
+ </EbayMenu>
135
+ )
136
+ })
137
+ it('should fire onClick, onChange event', async () => {
138
+ const [item1, item2] = screen.getAllByRole('menuitemradio')
139
+
140
+ expect(item1).toHaveAttribute('aria-checked', 'true')
141
+ expect(item2).toHaveAttribute('aria-checked', 'false')
142
+
143
+ await act(() => {
144
+ fireEvent.click(item2)
145
+ })
146
+
147
+ const expectedProps = {
148
+ index: 1,
149
+ indexes: [1],
150
+ checked: [1],
151
+ checkedValues: ['2']
152
+ }
153
+
154
+ expect(onClickSpy).toHaveBeenCalledWith(expect.any(Object))
155
+ expect(onChangeSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
156
+
157
+ expect(item1).toHaveAttribute('aria-checked', 'false')
158
+ expect(item2).toHaveAttribute('aria-checked', 'true')
159
+ })
160
+
161
+ it('should fire onKeyDown event', async () => {
162
+ const [item1] = screen.getAllByRole('menuitemradio')
163
+
164
+ await act(() => {
165
+ fireEvent.keyDown(item1, { key: 'Esc' })
166
+ })
167
+
168
+ const expectedProps = {
169
+ index: 0,
170
+ indexes: [0],
171
+ checked: [0],
172
+ checkedValues: ['1']
173
+ }
174
+
175
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
176
+ })
177
+
178
+ it('should fire onKeyDown, onChange event', async () => {
179
+ const [item1, item2] = screen.getAllByRole('menuitemradio')
180
+
181
+ await act(() => {
182
+ fireEvent.keyDown(item2, { key: 'Enter' })
183
+ })
184
+
185
+ const expectedProps = {
186
+ index: 1,
187
+ indexes: [1],
188
+ checked: [1],
189
+ checkedValues: ['2']
190
+ }
191
+
192
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
193
+ expect(onChangeSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
194
+ })
195
+ })
196
+
197
+ describe('type="checkbox"', () => {
198
+ beforeEach(() => {
199
+ render(
200
+ <EbayMenu
201
+ type="checkbox"
202
+ onClick={onClickSpy}
203
+ onChange={onChangeSpy}
204
+ onKeyDown={onKeyDownSpy}
205
+ >
206
+ <EbayMenuItem value="1" checked>item1</EbayMenuItem>
207
+ <EbayMenuItem value="2">item2</EbayMenuItem>
208
+ </EbayMenu>
209
+ )
210
+ })
211
+ it('should fire onClick, onChange event', async () => {
212
+ const [item1, item2] = screen.getAllByRole('menuitemcheckbox')
213
+
214
+ expect(item1).toHaveAttribute('aria-checked', 'true')
215
+ expect(item2).toHaveAttribute('aria-checked', 'false')
216
+
217
+ await act(() => {
218
+ fireEvent.click(item2)
219
+ })
220
+
221
+ let expectedProps = {
222
+ index: 1,
223
+ indexes: [0, 1],
224
+ checked: [0, 1],
225
+ checkedValues: ['1', '2']
226
+ }
227
+
228
+ expect(onClickSpy).toHaveBeenCalledWith(expect.any(Object))
229
+ expect(onChangeSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
230
+
231
+ expect(item1).toHaveAttribute('aria-checked', 'true')
232
+ expect(item2).toHaveAttribute('aria-checked', 'true')
233
+
234
+ await act(() => {
235
+ fireEvent.click(item1)
236
+ })
237
+
238
+ expectedProps = {
239
+ index: 0,
240
+ indexes: [1],
241
+ checked: [1],
242
+ checkedValues: ['2']
243
+ }
244
+
245
+ expect(onClickSpy).toHaveBeenCalledWith(expect.any(Object))
246
+ expect(onChangeSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
247
+
248
+ expect(item1).toHaveAttribute('aria-checked', 'false')
249
+ expect(item2).toHaveAttribute('aria-checked', 'true')
250
+ })
251
+
252
+ it('should fire onKeyDown event', async () => {
253
+ const [item1] = screen.getAllByRole('menuitemcheckbox')
254
+
255
+ await act(() => {
256
+ fireEvent.keyDown(item1, { key: 'Esc' })
257
+ })
258
+
259
+ const expectedProps = {
260
+ index: 0,
261
+ indexes: [0],
262
+ checked: [0],
263
+ checkedValues: ['1']
264
+ }
265
+
266
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
267
+ })
268
+
269
+ it('should fire onKeyDown, onChange event', async () => {
270
+ const [item1, item2] = screen.getAllByRole('menuitemcheckbox')
271
+
272
+ await act(() => {
273
+ fireEvent.keyDown(item2, { key: ' ' })
274
+ })
275
+
276
+ const expectedProps = {
277
+ index: 1,
278
+ indexes: [0, 1],
279
+ checked: [0, 1],
280
+ checkedValues: ['1', '2']
281
+ }
282
+
283
+ expect(onKeyDownSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
284
+ expect(onChangeSpy).toHaveBeenCalledWith(expect.any(Object), expectedProps)
285
+ })
286
+ })
287
+ })