@transferwise/components 0.0.0-experimental-e789c10 → 0.0.0-experimental-c84454a

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 (239) hide show
  1. package/build/dateInput/DateInput.js +5 -12
  2. package/build/dateInput/DateInput.js.map +1 -1
  3. package/build/dateInput/DateInput.mjs +4 -11
  4. package/build/dateInput/DateInput.mjs.map +1 -1
  5. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.js +8 -16
  6. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.js.map +1 -1
  7. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.mjs +6 -14
  8. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.mjs.map +1 -1
  9. package/build/index.js +7 -12
  10. package/build/index.js.map +1 -1
  11. package/build/index.mjs +3 -9
  12. package/build/index.mjs.map +1 -1
  13. package/build/inputs/SelectInput.js +890 -0
  14. package/build/inputs/SelectInput.js.map +1 -0
  15. package/build/inputs/SelectInput.messages.js.map +1 -0
  16. package/build/inputs/SelectInput.messages.mjs.map +1 -0
  17. package/build/inputs/SelectInput.mjs +881 -0
  18. package/build/inputs/SelectInput.mjs.map +1 -0
  19. package/build/inputs/{SelectInput/BottomSheet/SelectInputBottomSheet.js → _BottomSheet.js} +7 -7
  20. package/build/inputs/_BottomSheet.js.map +1 -0
  21. package/build/inputs/{SelectInput/BottomSheet/SelectInputBottomSheet.mjs → _BottomSheet.mjs} +7 -7
  22. package/build/inputs/_BottomSheet.mjs.map +1 -0
  23. package/build/inputs/{SelectInput/ButtonInput/SelectInputButtonInput.js → _ButtonInput.js} +5 -5
  24. package/build/inputs/_ButtonInput.js.map +1 -0
  25. package/build/inputs/{SelectInput/ButtonInput/SelectInputButtonInput.mjs → _ButtonInput.mjs} +5 -5
  26. package/build/inputs/_ButtonInput.mjs.map +1 -0
  27. package/build/inputs/{SelectInput/Popover/SelectInputPopover.js → _Popover.js} +7 -7
  28. package/build/inputs/_Popover.js.map +1 -0
  29. package/build/inputs/{SelectInput/Popover/SelectInputPopover.mjs → _Popover.mjs} +7 -7
  30. package/build/inputs/_Popover.mjs.map +1 -0
  31. package/build/main.css +126 -126
  32. package/build/moneyInput/MoneyInput.js +2 -9
  33. package/build/moneyInput/MoneyInput.js.map +1 -1
  34. package/build/moneyInput/MoneyInput.mjs +1 -8
  35. package/build/moneyInput/MoneyInput.mjs.map +1 -1
  36. package/build/phoneNumberInput/PhoneNumberInput.js +3 -10
  37. package/build/phoneNumberInput/PhoneNumberInput.js.map +1 -1
  38. package/build/phoneNumberInput/PhoneNumberInput.mjs +2 -9
  39. package/build/phoneNumberInput/PhoneNumberInput.mjs.map +1 -1
  40. package/build/styles/main.css +126 -126
  41. package/build/styles/sentimentSurface/SentimentSurface.css +36 -36
  42. package/build/types/index.d.ts +1 -1
  43. package/build/types/index.d.ts.map +1 -1
  44. package/build/types/inputs/{SelectInput/SelectInput.types.d.ts → SelectInput.d.ts} +38 -12
  45. package/build/types/inputs/SelectInput.d.ts.map +1 -0
  46. package/build/types/inputs/SelectInput.messages.d.ts.map +1 -0
  47. package/build/types/inputs/{SelectInput/BottomSheet/SelectInputBottomSheet.d.ts → _BottomSheet.d.ts} +3 -3
  48. package/build/types/inputs/_BottomSheet.d.ts.map +1 -0
  49. package/build/types/inputs/_ButtonInput.d.ts +5 -0
  50. package/build/types/inputs/_ButtonInput.d.ts.map +1 -0
  51. package/build/types/inputs/{SelectInput/Popover/SelectInputPopover.d.ts → _Popover.d.ts} +3 -3
  52. package/build/types/inputs/_Popover.d.ts.map +1 -0
  53. package/package.json +1 -1
  54. package/src/index.ts +1 -0
  55. package/src/inputs/{SelectInput/_stories/SelectInput.docs.mdx → SelectInput.docs.mdx} +1 -0
  56. package/src/inputs/SelectInput.less +219 -0
  57. package/src/inputs/{SelectInput/_stories/SelectInput.story.tsx → SelectInput.story.tsx} +8 -11
  58. package/src/inputs/{SelectInput/_stories/SelectInput.test.story.tsx → SelectInput.test.story.tsx} +10 -6
  59. package/src/inputs/{SelectInput/SelectInput.test.tsx → SelectInput.test.tsx} +11 -9
  60. package/src/inputs/SelectInput.tsx +1269 -0
  61. package/src/inputs/{SelectInput/BottomSheet/SelectInputBottomSheet.tsx → _BottomSheet.tsx} +7 -7
  62. package/src/inputs/{SelectInput/ButtonInput/SelectInputButtonInput.tsx → _ButtonInput.tsx} +5 -5
  63. package/src/inputs/{SelectInput/Popover/SelectInputPopover.tsx → _Popover.tsx} +7 -7
  64. package/src/main.css +126 -126
  65. package/src/main.less +1 -1
  66. package/src/sentimentSurface/SentimentSurface.css +36 -36
  67. package/src/sentimentSurface/SentimentSurface.less +12 -12
  68. package/build/inputs/SelectInput/BottomSheet/SelectInputBottomSheet.js.map +0 -1
  69. package/build/inputs/SelectInput/BottomSheet/SelectInputBottomSheet.mjs.map +0 -1
  70. package/build/inputs/SelectInput/ButtonInput/SelectInputButtonInput.js.map +0 -1
  71. package/build/inputs/SelectInput/ButtonInput/SelectInputButtonInput.mjs.map +0 -1
  72. package/build/inputs/SelectInput/ClearButton/SelectInputClearButton.js +0 -26
  73. package/build/inputs/SelectInput/ClearButton/SelectInputClearButton.js.map +0 -1
  74. package/build/inputs/SelectInput/ClearButton/SelectInputClearButton.mjs +0 -24
  75. package/build/inputs/SelectInput/ClearButton/SelectInputClearButton.mjs.map +0 -1
  76. package/build/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.js +0 -59
  77. package/build/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.js.map +0 -1
  78. package/build/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.mjs +0 -56
  79. package/build/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.mjs.map +0 -1
  80. package/build/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.js +0 -50
  81. package/build/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.js.map +0 -1
  82. package/build/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.mjs +0 -48
  83. package/build/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.mjs.map +0 -1
  84. package/build/inputs/SelectInput/ItemView/SelectInputItemView.js +0 -47
  85. package/build/inputs/SelectInput/ItemView/SelectInputItemView.js.map +0 -1
  86. package/build/inputs/SelectInput/ItemView/SelectInputItemView.mjs +0 -45
  87. package/build/inputs/SelectInput/ItemView/SelectInputItemView.mjs.map +0 -1
  88. package/build/inputs/SelectInput/Option/SelectInputOption.js +0 -42
  89. package/build/inputs/SelectInput/Option/SelectInputOption.js.map +0 -1
  90. package/build/inputs/SelectInput/Option/SelectInputOption.mjs +0 -40
  91. package/build/inputs/SelectInput/Option/SelectInputOption.mjs.map +0 -1
  92. package/build/inputs/SelectInput/OptionContent/SelectInputOptionContent.js +0 -40
  93. package/build/inputs/SelectInput/OptionContent/SelectInputOptionContent.js.map +0 -1
  94. package/build/inputs/SelectInput/OptionContent/SelectInputOptionContent.mjs +0 -38
  95. package/build/inputs/SelectInput/OptionContent/SelectInputOptionContent.mjs.map +0 -1
  96. package/build/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.js +0 -48
  97. package/build/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.js.map +0 -1
  98. package/build/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.mjs +0 -46
  99. package/build/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.mjs.map +0 -1
  100. package/build/inputs/SelectInput/Options/SelectInputOptions.js +0 -300
  101. package/build/inputs/SelectInput/Options/SelectInputOptions.js.map +0 -1
  102. package/build/inputs/SelectInput/Options/SelectInputOptions.mjs +0 -298
  103. package/build/inputs/SelectInput/Options/SelectInputOptions.mjs.map +0 -1
  104. package/build/inputs/SelectInput/Popover/SelectInputPopover.js.map +0 -1
  105. package/build/inputs/SelectInput/Popover/SelectInputPopover.mjs.map +0 -1
  106. package/build/inputs/SelectInput/SelectInput.contexts.js +0 -29
  107. package/build/inputs/SelectInput/SelectInput.contexts.js.map +0 -1
  108. package/build/inputs/SelectInput/SelectInput.contexts.mjs +0 -24
  109. package/build/inputs/SelectInput/SelectInput.contexts.mjs.map +0 -1
  110. package/build/inputs/SelectInput/SelectInput.js +0 -222
  111. package/build/inputs/SelectInput/SelectInput.js.map +0 -1
  112. package/build/inputs/SelectInput/SelectInput.messages.js.map +0 -1
  113. package/build/inputs/SelectInput/SelectInput.messages.mjs.map +0 -1
  114. package/build/inputs/SelectInput/SelectInput.mjs +0 -216
  115. package/build/inputs/SelectInput/SelectInput.mjs.map +0 -1
  116. package/build/inputs/SelectInput/SelectInput.utils.js +0 -164
  117. package/build/inputs/SelectInput/SelectInput.utils.js.map +0 -1
  118. package/build/inputs/SelectInput/SelectInput.utils.mjs +0 -154
  119. package/build/inputs/SelectInput/SelectInput.utils.mjs.map +0 -1
  120. package/build/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.js +0 -42
  121. package/build/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.js.map +0 -1
  122. package/build/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.mjs +0 -36
  123. package/build/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.mjs.map +0 -1
  124. package/build/styles/inputs/SelectInput/BottomSheet/SelectInputBottomSheet.css +0 -96
  125. package/build/styles/inputs/SelectInput/ButtonInput/SelectInputButtonInput.css +0 -16
  126. package/build/styles/inputs/SelectInput/ClearButton/SelectInputClearButton.css +0 -46
  127. package/build/styles/inputs/SelectInput/ItemView/SelectInputItemView.css +0 -16
  128. package/build/styles/inputs/SelectInput/Option/SelectInputOption.css +0 -33
  129. package/build/styles/inputs/SelectInput/OptionContent/SelectInputOptionContent.css +0 -37
  130. package/build/styles/inputs/SelectInput/Options/SelectInputOptions.css +0 -81
  131. package/build/styles/inputs/SelectInput/Popover/SelectInputPopover.css +0 -46
  132. package/build/types/inputs/SelectInput/BottomSheet/SelectInputBottomSheet.d.ts.map +0 -1
  133. package/build/types/inputs/SelectInput/BottomSheet/index.d.ts +0 -3
  134. package/build/types/inputs/SelectInput/BottomSheet/index.d.ts.map +0 -1
  135. package/build/types/inputs/SelectInput/ButtonInput/SelectInputButtonInput.d.ts +0 -5
  136. package/build/types/inputs/SelectInput/ButtonInput/SelectInputButtonInput.d.ts.map +0 -1
  137. package/build/types/inputs/SelectInput/ButtonInput/index.d.ts +0 -3
  138. package/build/types/inputs/SelectInput/ButtonInput/index.d.ts.map +0 -1
  139. package/build/types/inputs/SelectInput/ClearButton/SelectInputClearButton.d.ts +0 -7
  140. package/build/types/inputs/SelectInput/ClearButton/SelectInputClearButton.d.ts.map +0 -1
  141. package/build/types/inputs/SelectInput/ClearButton/index.d.ts +0 -3
  142. package/build/types/inputs/SelectInput/ClearButton/index.d.ts.map +0 -1
  143. package/build/types/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.d.ts +0 -16
  144. package/build/types/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.d.ts.map +0 -1
  145. package/build/types/inputs/SelectInput/DefaultRenderTrigger/index.d.ts +0 -2
  146. package/build/types/inputs/SelectInput/DefaultRenderTrigger/index.d.ts.map +0 -1
  147. package/build/types/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.d.ts +0 -9
  148. package/build/types/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.d.ts.map +0 -1
  149. package/build/types/inputs/SelectInput/ItemView/GroupItemView/index.d.ts +0 -3
  150. package/build/types/inputs/SelectInput/ItemView/GroupItemView/index.d.ts.map +0 -1
  151. package/build/types/inputs/SelectInput/ItemView/SelectInputItemView.d.ts +0 -11
  152. package/build/types/inputs/SelectInput/ItemView/SelectInputItemView.d.ts.map +0 -1
  153. package/build/types/inputs/SelectInput/ItemView/index.d.ts +0 -4
  154. package/build/types/inputs/SelectInput/ItemView/index.d.ts.map +0 -1
  155. package/build/types/inputs/SelectInput/Option/SelectInputOption.d.ts +0 -11
  156. package/build/types/inputs/SelectInput/Option/SelectInputOption.d.ts.map +0 -1
  157. package/build/types/inputs/SelectInput/Option/index.d.ts +0 -3
  158. package/build/types/inputs/SelectInput/Option/index.d.ts.map +0 -1
  159. package/build/types/inputs/SelectInput/OptionContent/SelectInputOptionContent.d.ts +0 -13
  160. package/build/types/inputs/SelectInput/OptionContent/SelectInputOptionContent.d.ts.map +0 -1
  161. package/build/types/inputs/SelectInput/OptionContent/index.d.ts +0 -3
  162. package/build/types/inputs/SelectInput/OptionContent/index.d.ts.map +0 -1
  163. package/build/types/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.d.ts +0 -9
  164. package/build/types/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.d.ts.map +0 -1
  165. package/build/types/inputs/SelectInput/Options/OptionsContainer/index.d.ts +0 -3
  166. package/build/types/inputs/SelectInput/Options/OptionsContainer/index.d.ts.map +0 -1
  167. package/build/types/inputs/SelectInput/Options/SelectInputOptions.d.ts +0 -21
  168. package/build/types/inputs/SelectInput/Options/SelectInputOptions.d.ts.map +0 -1
  169. package/build/types/inputs/SelectInput/Options/index.d.ts +0 -4
  170. package/build/types/inputs/SelectInput/Options/index.d.ts.map +0 -1
  171. package/build/types/inputs/SelectInput/Popover/SelectInputPopover.d.ts.map +0 -1
  172. package/build/types/inputs/SelectInput/Popover/index.d.ts +0 -3
  173. package/build/types/inputs/SelectInput/Popover/index.d.ts.map +0 -1
  174. package/build/types/inputs/SelectInput/SelectInput.contexts.d.ts +0 -33
  175. package/build/types/inputs/SelectInput/SelectInput.contexts.d.ts.map +0 -1
  176. package/build/types/inputs/SelectInput/SelectInput.d.ts +0 -10
  177. package/build/types/inputs/SelectInput/SelectInput.d.ts.map +0 -1
  178. package/build/types/inputs/SelectInput/SelectInput.messages.d.ts.map +0 -1
  179. package/build/types/inputs/SelectInput/SelectInput.types.d.ts.map +0 -1
  180. package/build/types/inputs/SelectInput/SelectInput.utils.d.ts +0 -60
  181. package/build/types/inputs/SelectInput/SelectInput.utils.d.ts.map +0 -1
  182. package/build/types/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.d.ts +0 -12
  183. package/build/types/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.d.ts.map +0 -1
  184. package/build/types/inputs/SelectInput/TriggerButton/index.d.ts +0 -3
  185. package/build/types/inputs/SelectInput/TriggerButton/index.d.ts.map +0 -1
  186. package/build/types/inputs/SelectInput/components.d.ts +0 -10
  187. package/build/types/inputs/SelectInput/components.d.ts.map +0 -1
  188. package/build/types/inputs/SelectInput/index.d.ts +0 -10
  189. package/build/types/inputs/SelectInput/index.d.ts.map +0 -1
  190. package/src/inputs/SelectInput/BottomSheet/SelectInputBottomSheet.css +0 -96
  191. package/src/inputs/SelectInput/BottomSheet/index.ts +0 -2
  192. package/src/inputs/SelectInput/ButtonInput/SelectInputButtonInput.css +0 -16
  193. package/src/inputs/SelectInput/ButtonInput/index.ts +0 -2
  194. package/src/inputs/SelectInput/ClearButton/SelectInputClearButton.css +0 -46
  195. package/src/inputs/SelectInput/ClearButton/SelectInputClearButton.less +0 -39
  196. package/src/inputs/SelectInput/ClearButton/SelectInputClearButton.tsx +0 -27
  197. package/src/inputs/SelectInput/ClearButton/index.ts +0 -2
  198. package/src/inputs/SelectInput/DefaultRenderTrigger/SelectInputDefaultRenderTrigger.tsx +0 -74
  199. package/src/inputs/SelectInput/DefaultRenderTrigger/index.ts +0 -5
  200. package/src/inputs/SelectInput/ItemView/GroupItemView/SelectInputGroupItemView.tsx +0 -61
  201. package/src/inputs/SelectInput/ItemView/GroupItemView/index.ts +0 -2
  202. package/src/inputs/SelectInput/ItemView/SelectInputItemView.css +0 -16
  203. package/src/inputs/SelectInput/ItemView/SelectInputItemView.less +0 -17
  204. package/src/inputs/SelectInput/ItemView/SelectInputItemView.tsx +0 -48
  205. package/src/inputs/SelectInput/ItemView/index.ts +0 -3
  206. package/src/inputs/SelectInput/Option/SelectInputOption.css +0 -33
  207. package/src/inputs/SelectInput/Option/SelectInputOption.less +0 -32
  208. package/src/inputs/SelectInput/Option/SelectInputOption.tsx +0 -57
  209. package/src/inputs/SelectInput/Option/index.ts +0 -2
  210. package/src/inputs/SelectInput/OptionContent/SelectInputOptionContent.css +0 -37
  211. package/src/inputs/SelectInput/OptionContent/SelectInputOptionContent.less +0 -38
  212. package/src/inputs/SelectInput/OptionContent/SelectInputOptionContent.tsx +0 -72
  213. package/src/inputs/SelectInput/OptionContent/index.ts +0 -2
  214. package/src/inputs/SelectInput/Options/OptionsContainer/SelectInputOptionsContainer.tsx +0 -59
  215. package/src/inputs/SelectInput/Options/OptionsContainer/index.ts +0 -2
  216. package/src/inputs/SelectInput/Options/SelectInputOptions.css +0 -81
  217. package/src/inputs/SelectInput/Options/SelectInputOptions.less +0 -77
  218. package/src/inputs/SelectInput/Options/SelectInputOptions.tsx +0 -411
  219. package/src/inputs/SelectInput/Options/index.ts +0 -3
  220. package/src/inputs/SelectInput/Popover/SelectInputPopover.css +0 -46
  221. package/src/inputs/SelectInput/Popover/index.ts +0 -2
  222. package/src/inputs/SelectInput/SelectInput.contexts.tsx +0 -40
  223. package/src/inputs/SelectInput/SelectInput.less +0 -22
  224. package/src/inputs/SelectInput/SelectInput.tsx +0 -257
  225. package/src/inputs/SelectInput/SelectInput.types.ts +0 -113
  226. package/src/inputs/SelectInput/SelectInput.utils.ts +0 -205
  227. package/src/inputs/SelectInput/TriggerButton/SelectInputTriggerButton.tsx +0 -36
  228. package/src/inputs/SelectInput/TriggerButton/index.ts +0 -5
  229. package/src/inputs/SelectInput/components.ts +0 -10
  230. package/src/inputs/SelectInput/index.ts +0 -12
  231. package/build/inputs/{SelectInput/SelectInput.messages.js → SelectInput.messages.js} +0 -0
  232. package/build/inputs/{SelectInput/SelectInput.messages.mjs → SelectInput.messages.mjs} +0 -0
  233. package/build/styles/inputs/{SelectInput/SelectInput.css → SelectInput.css} +90 -90
  234. package/build/types/inputs/{SelectInput/SelectInput.messages.d.ts → SelectInput.messages.d.ts} +0 -0
  235. package/src/inputs/{SelectInput/SelectInput.css → SelectInput.css} +90 -90
  236. /package/src/inputs/{SelectInput/SelectInput.messages.ts → SelectInput.messages.ts} +0 -0
  237. /package/src/inputs/{SelectInput/BottomSheet/SelectInputBottomSheet.less → _BottomSheet.less} +0 -0
  238. /package/src/inputs/{SelectInput/ButtonInput/SelectInputButtonInput.less → _ButtonInput.less} +0 -0
  239. /package/src/inputs/{SelectInput/Popover/SelectInputPopover.less → _Popover.less} +0 -0
@@ -1,37 +0,0 @@
1
- .np-select-input-option-content-container {
2
- display: flex;
3
- align-items: center;
4
- -moz-column-gap: 8px;
5
- column-gap: 8px;
6
- -moz-column-gap: var(--size-8);
7
- column-gap: var(--size-8);
8
- color: #37517e;
9
- color: var(--color-content-primary);
10
- }
11
- .np-select-input-option-content-icon {
12
- display: flex;
13
- }
14
- .np-select-input-option-content-icon--not-within-trigger {
15
- align-self: flex-start;
16
- }
17
- .np-select-input-option-content-text {
18
- display: flex;
19
- flex: 1;
20
- flex-direction: column;
21
- overflow: hidden;
22
- }
23
- .np-select-input-option-content-text-secondary {
24
- color: #5d7079;
25
- color: var(--color-content-secondary);
26
- }
27
- .np-select-input-option-content-text-within-trigger {
28
- overflow: hidden;
29
- text-overflow: ellipsis;
30
- white-space: nowrap;
31
- }
32
- .np-select-input-option-content-text-line-1 > :not([hidden]) ~ :not([hidden]) {
33
- margin-right: 8px;
34
- margin-right: var(--size-8);
35
- margin-left: 8px;
36
- margin-left: var(--size-8);
37
- }
@@ -1,38 +0,0 @@
1
- .np-select-input-option-content-container {
2
- display: flex;
3
- align-items: center;
4
- column-gap: var(--size-8);
5
- color: var(--color-content-primary);
6
- }
7
-
8
- .np-select-input-option-content-icon {
9
- display: flex;
10
-
11
- &--not-within-trigger {
12
- align-self: flex-start;
13
- }
14
- }
15
-
16
- .np-select-input-option-content-text {
17
- display: flex;
18
- flex: 1;
19
- flex-direction: column;
20
- overflow: hidden;
21
- }
22
-
23
- .np-select-input-option-content-text-secondary {
24
- color: var(--color-content-secondary);
25
- }
26
-
27
- .np-select-input-option-content-text-within-trigger {
28
- overflow: hidden;
29
- text-overflow: ellipsis;
30
- white-space: nowrap;
31
- }
32
-
33
- .np-select-input-option-content-text-line-1 {
34
- > :not([hidden]) ~ :not([hidden]) {
35
- margin-right: var(--size-8);
36
- margin-left: var(--size-8);
37
- }
38
- }
@@ -1,72 +0,0 @@
1
- import { clsx } from 'clsx';
2
- import { useContext } from 'react';
3
- import { SelectInputOptionContentWithinTriggerContext } from '../SelectInput.contexts';
4
-
5
- export interface SelectInputOptionContentProps {
6
- title: React.ReactNode;
7
- note?: string;
8
- description?: string;
9
- icon?: React.ReactNode;
10
- }
11
-
12
- /**
13
- * Component for rendering structured content within a SelectInput option.
14
- * Supports title, optional note, description, and icon with different styling
15
- * based on whether it's rendered within the trigger button or the dropdown.
16
- */
17
- export function SelectInputOptionContent({
18
- title,
19
- note,
20
- description,
21
- icon,
22
- }: SelectInputOptionContentProps) {
23
- const withinTrigger = useContext(SelectInputOptionContentWithinTriggerContext);
24
-
25
- return (
26
- <div
27
- className={clsx(
28
- 'np-select-input-option-content-container',
29
- (note || description) && 'np-text-body-large',
30
- )}
31
- >
32
- {icon ? (
33
- <div
34
- className={clsx(
35
- 'np-select-input-option-content-icon',
36
- !withinTrigger && 'np-select-input-option-content-icon--not-within-trigger',
37
- )}
38
- >
39
- {icon}
40
- </div>
41
- ) : null}
42
-
43
- <div className="np-select-input-option-content-text">
44
- <div
45
- className={clsx(
46
- 'np-select-input-option-content-text-line-1',
47
- withinTrigger && 'np-select-input-option-content-text-within-trigger',
48
- )}
49
- >
50
- <div className="d-inline">{title}</div>
51
- {note ? (
52
- <span className="np-select-input-option-content-text-secondary np-text-body-default">
53
- {note}
54
- </span>
55
- ) : null}
56
- </div>
57
-
58
- {description ? (
59
- <div
60
- className={clsx(
61
- 'np-select-input-option-content-text-secondary np-text-body-default',
62
- withinTrigger &&
63
- 'np-select-input-option-content-text-within-trigger np-select-input-option-description-in-trigger',
64
- )}
65
- >
66
- {description}
67
- </div>
68
- ) : null}
69
- </div>
70
- </div>
71
- );
72
- }
@@ -1,2 +0,0 @@
1
- export { SelectInputOptionContent } from './SelectInputOptionContent';
2
- export type { SelectInputOptionContentProps } from './SelectInputOptionContent';
@@ -1,59 +0,0 @@
1
- import { forwardRef, useEffect } from 'react';
2
- import { useEffectEvent } from '../../../../common/hooks/useEffectEvent';
3
-
4
- export interface SelectInputOptionsContainerProps extends React.ComponentPropsWithRef<'div'> {
5
- onAriaActiveDescendantChange: (value: React.AriaAttributes['aria-activedescendant']) => void;
6
- }
7
-
8
- /**
9
- * Container component for SelectInput options.
10
- * Handles keyboard navigation and accessibility features.
11
- */
12
- export const SelectInputOptionsContainer = forwardRef(function SelectInputOptionsContainer(
13
- {
14
- 'aria-orientation': ariaOrientation,
15
- 'aria-activedescendant': ariaActiveDescendant,
16
- role,
17
- tabIndex,
18
- onAriaActiveDescendantChange,
19
- onKeyDown,
20
- ...restProps
21
- }: SelectInputOptionsContainerProps,
22
- ref: React.ForwardedRef<HTMLDivElement | null>,
23
- ) {
24
- const handleAriaActiveDescendantChange = useEffectEvent(onAriaActiveDescendantChange);
25
- useEffect(() => {
26
- handleAriaActiveDescendantChange(ariaActiveDescendant);
27
- }, [ariaActiveDescendant, handleAriaActiveDescendantChange]);
28
-
29
- return (
30
- <div
31
- ref={ref}
32
- role="none"
33
- onKeyDown={(event) => {
34
- // Prevent confirmation close without an active item
35
- if (event.key === 'Enter' && ariaActiveDescendant == null) {
36
- return;
37
- }
38
-
39
- // Required to make ListBox focusable
40
- if (event.key === 'Tab') {
41
- return;
42
- }
43
-
44
- // Prevent absorbing Escape early
45
- if (event.key === 'Escape') {
46
- onKeyDown?.({
47
- ...event,
48
- preventDefault: () => {},
49
- stopPropagation: () => {},
50
- });
51
- return;
52
- }
53
-
54
- onKeyDown?.(event);
55
- }}
56
- {...restProps}
57
- />
58
- );
59
- });
@@ -1,2 +0,0 @@
1
- export { SelectInputOptionsContainer } from './SelectInputOptionsContainer';
2
- export type { SelectInputOptionsContainerProps } from './SelectInputOptionsContainer';
@@ -1,81 +0,0 @@
1
- .np-select-input-options-container {
2
- display: flex;
3
- height: 100%;
4
- flex-direction: column;
5
- }
6
- .np-select-input-options-container:focus {
7
- outline: none;
8
- }
9
- @media (min-width: 576px) {
10
- .np-select-input-options-container {
11
- max-height: 28rem /* 448px */;
12
- }
13
- }
14
- .np-select-input-options-status {
15
- display: flex;
16
- align-items: center;
17
- -moz-column-gap: 8px;
18
- column-gap: 8px;
19
- -moz-column-gap: var(--size-8);
20
- column-gap: var(--size-8);
21
- padding: 8px 24px 0px;
22
- padding: var(--size-8) var(--size-24) 0px;
23
- }
24
- .np-select-input-options-status-icon {
25
- padding: 0 4px;
26
- padding: 0 var(--size-4);
27
- color: #768e9c;
28
- color: var(--color-content-tertiary);
29
- }
30
- .np-select-input-query-container {
31
- display: flex;
32
- flex-direction: column;
33
- padding: 8px;
34
- padding: var(--size-8);
35
- }
36
- .np-select-input-listbox-container {
37
- position: relative;
38
- height: var(--initial-height);
39
- scroll-padding-top: 8px;
40
- scroll-padding-top: var(--size-8);
41
- scroll-padding-bottom: 8px;
42
- scroll-padding-bottom: var(--size-8);
43
- overflow-y: auto;
44
- }
45
- @media (min-width: 576px) {
46
- .np-select-input-listbox-container {
47
- height: auto;
48
- }
49
- }
50
- .np-select-input-listbox-container--virtualized {
51
- /* The wrapping element shrinks this as needed */
52
- height: 100vh;
53
- }
54
- .np-select-input-listbox-container--has-group {
55
- scroll-padding-top: 32px;
56
- scroll-padding-top: var(--size-32);
57
- }
58
- .np-select-input-listbox {
59
- border-radius: 10px;
60
- border-radius: var(--radius-small);
61
- padding: 8px;
62
- padding: var(--size-8);
63
- --ring-outline-offset: calc(-1 * var(--ring-outline-width));
64
- }
65
- .np-select-input-listbox:focus {
66
- outline: none;
67
- }
68
- .np-select-input-listbox:focus-visible {
69
- outline: var(--ring-outline-color) solid var(--ring-outline-width);
70
- outline-offset: var(--ring-outline-offset);
71
- }
72
- .np-select-input-listbox-container--virtualized .np-select-input-listbox {
73
- /* Adopted from `VList` in virtua: https://github.com/inokawa/virtua/blob/7f6ed5b37df6b480d4ff350f3960067c5b3519d2/src/react/VList.tsx#L113-L116 */
74
- overflow-y: auto;
75
- contain: strict;
76
- height: 100%;
77
- }
78
- .np-select-input-footer {
79
- padding: 4px 24px 16px;
80
- padding: var(--size-4) var(--size-24) var(--size-16);
81
- }
@@ -1,77 +0,0 @@
1
- @import (reference) "../../../../node_modules/@transferwise/neptune-css/src/less/ring.less";
2
-
3
- .np-select-input-options-container {
4
- display: flex;
5
- height: 100%;
6
- flex-direction: column;
7
-
8
- &:focus {
9
- outline: none;
10
- }
11
-
12
- @media (--screen-sm) {
13
- & {
14
- max-height: 28rem /* 448px */;
15
- }
16
- }
17
- }
18
-
19
- .np-select-input-options-status {
20
- display: flex;
21
- align-items: center;
22
- column-gap: var(--size-8);
23
- padding: var(--size-8) var(--size-24) 0px;
24
- }
25
-
26
- .np-select-input-options-status-icon {
27
- padding: 0 var(--size-4);
28
- color: var(--color-content-tertiary);
29
- }
30
-
31
- .np-select-input-query-container {
32
- display: flex;
33
- flex-direction: column;
34
- padding: var(--size-8);
35
- }
36
-
37
- .np-select-input-listbox-container {
38
- position: relative;
39
- height: var(--initial-height);
40
- scroll-padding-top: var(--size-8);
41
- scroll-padding-bottom: var(--size-8);
42
- overflow-y: auto;
43
-
44
- @media (--screen-sm) {
45
- & {
46
- height: auto;
47
- }
48
- }
49
-
50
- &--virtualized {
51
- /* The wrapping element shrinks this as needed */
52
- height: 100vh;
53
- }
54
-
55
- &--has-group {
56
- scroll-padding-top: var(--size-32);
57
- }
58
- }
59
-
60
- .np-select-input-listbox {
61
- border-radius: var(--radius-small);
62
- padding: var(--size-8);
63
-
64
- .focus-ring();
65
- --ring-outline-offset: calc(-1 * var(--ring-outline-width));
66
-
67
- .np-select-input-listbox-container--virtualized & {
68
- /* Adopted from `VList` in virtua: https://github.com/inokawa/virtua/blob/7f6ed5b37df6b480d4ff350f3960067c5b3519d2/src/react/VList.tsx#L113-L116 */
69
- overflow-y: auto;
70
- contain: strict;
71
- height: 100%;
72
- }
73
- }
74
-
75
- .np-select-input-footer {
76
- padding: var(--size-4) var(--size-24) var(--size-16);
77
- }