@bikdotai/bik-component-library 0.0.821-2 → 0.0.821-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/dist/cjs/assets/icons/ManifestGlass.svg.js +2 -0
  2. package/dist/cjs/assets/icons/ManifestGlass.svg.js.map +1 -0
  3. package/dist/cjs/assets/icons/playOutline.svg.js +2 -0
  4. package/dist/cjs/assets/icons/playOutline.svg.js.map +1 -0
  5. package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js +1 -1
  6. package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js.map +1 -1
  7. package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js +1 -1
  8. package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js.map +1 -1
  9. package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js +1 -1
  10. package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js.map +1 -1
  11. package/dist/cjs/components/BikGiftedChat/GiftedChat/types.js.map +1 -1
  12. package/dist/cjs/components/TypographyStyle.js +20 -41
  13. package/dist/cjs/components/TypographyStyle.js.map +1 -1
  14. package/dist/cjs/components/agent-builder/AgentBuilder.js +2 -0
  15. package/dist/cjs/components/agent-builder/AgentBuilder.js.map +1 -0
  16. package/dist/cjs/components/agent-builder/AgentBuilder.styled.js +285 -0
  17. package/dist/cjs/components/agent-builder/AgentBuilder.styled.js.map +1 -0
  18. package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js +2 -0
  19. package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js.map +1 -0
  20. package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js +2 -0
  21. package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -0
  22. package/dist/cjs/components/agent-builder/components/AiTextArea.js +2 -0
  23. package/dist/cjs/components/agent-builder/components/AiTextArea.js.map +1 -0
  24. package/dist/cjs/components/agent-builder/components/DiscardModal.js +2 -0
  25. package/dist/cjs/components/agent-builder/components/DiscardModal.js.map +1 -0
  26. package/dist/cjs/components/agent-builder/components/GoLiveModal.js +2 -0
  27. package/dist/cjs/components/agent-builder/components/GoLiveModal.js.map +1 -0
  28. package/dist/cjs/components/agent-builder/components/InstructionsField.js +2 -0
  29. package/dist/cjs/components/agent-builder/components/InstructionsField.js.map +1 -0
  30. package/dist/cjs/components/agent-builder/components/MentionPicker.js +47 -0
  31. package/dist/cjs/components/agent-builder/components/MentionPicker.js.map +1 -0
  32. package/dist/cjs/components/agent-builder/components/RichTextField.js +2 -0
  33. package/dist/cjs/components/agent-builder/components/RichTextField.js.map +1 -0
  34. package/dist/cjs/components/agent-builder/components/SelectableListSection.js +2 -0
  35. package/dist/cjs/components/agent-builder/components/SelectableListSection.js.map +1 -0
  36. package/dist/cjs/components/agent-builder/components/StepRail.js +2 -0
  37. package/dist/cjs/components/agent-builder/components/StepRail.js.map +1 -0
  38. package/dist/cjs/components/agent-builder/components/StepSectionHeader.js +2 -0
  39. package/dist/cjs/components/agent-builder/components/StepSectionHeader.js.map +1 -0
  40. package/dist/cjs/components/agent-builder/constants/charLimits.js +2 -0
  41. package/dist/cjs/components/agent-builder/constants/charLimits.js.map +1 -0
  42. package/dist/cjs/components/agent-builder/constants/editorStyle.js +2 -0
  43. package/dist/cjs/components/agent-builder/constants/editorStyle.js.map +1 -0
  44. package/dist/cjs/components/agent-builder/constants/steps.js +2 -0
  45. package/dist/cjs/components/agent-builder/constants/steps.js.map +1 -0
  46. package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js +2 -0
  47. package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js.map +1 -0
  48. package/dist/cjs/components/agent-builder/hooks/useAgentDraft.js +2 -0
  49. package/dist/cjs/components/agent-builder/hooks/useAgentDraft.js.map +1 -0
  50. package/dist/cjs/components/agent-builder/steps/Step1About.js +2 -0
  51. package/dist/cjs/components/agent-builder/steps/Step1About.js.map +1 -0
  52. package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js +2 -0
  53. package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -0
  54. package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js +2 -0
  55. package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js.map +1 -0
  56. package/dist/cjs/components/agent-builder/steps/Step4HandoverRules.js +2 -0
  57. package/dist/cjs/components/agent-builder/steps/Step4HandoverRules.js.map +1 -0
  58. package/dist/cjs/components/agent-builder/utils/mentionSerialization.js +4 -0
  59. package/dist/cjs/components/agent-builder/utils/mentionSerialization.js.map +1 -0
  60. package/dist/cjs/components/agent-listing/AgentListing.js +2 -0
  61. package/dist/cjs/components/agent-listing/AgentListing.js.map +1 -0
  62. package/dist/cjs/components/agent-listing/AgentListing.styled.js +115 -0
  63. package/dist/cjs/components/agent-listing/AgentListing.styled.js.map +1 -0
  64. package/dist/cjs/components/agent-listing/AgentListingFilters.js +2 -0
  65. package/dist/cjs/components/agent-listing/AgentListingFilters.js.map +1 -0
  66. package/dist/cjs/components/agent-listing/AgentListingHeader.js +2 -0
  67. package/dist/cjs/components/agent-listing/AgentListingHeader.js.map +1 -0
  68. package/dist/cjs/components/agent-listing/AgentTable.js +2 -0
  69. package/dist/cjs/components/agent-listing/AgentTable.js.map +1 -0
  70. package/dist/cjs/components/agent-listing/AgentTableRow.js +2 -0
  71. package/dist/cjs/components/agent-listing/AgentTableRow.js.map +1 -0
  72. package/dist/cjs/components/avatar/Avatar.js +1 -1
  73. package/dist/cjs/components/avatar/Avatar.js.map +1 -1
  74. package/dist/cjs/components/avatar/Avatar.styled.js +4 -4
  75. package/dist/cjs/components/avatar/Avatar.styled.js.map +1 -1
  76. package/dist/cjs/components/avatar/AvatarHelper.js +1 -1
  77. package/dist/cjs/components/avatar/AvatarHelper.js.map +1 -1
  78. package/dist/cjs/components/bik-layout/BikSidebar.js.map +1 -1
  79. package/dist/cjs/components/bik-layout/CommonStyles.js +1 -1
  80. package/dist/cjs/components/bik-layout/CommonStyles.js.map +1 -1
  81. package/dist/cjs/components/button/Button.js +1 -1
  82. package/dist/cjs/components/button/Button.js.map +1 -1
  83. package/dist/cjs/components/button/Button.styled.js +13 -13
  84. package/dist/cjs/components/button/Button.styled.js.map +1 -1
  85. package/dist/cjs/components/button/themes.js +6 -6
  86. package/dist/cjs/components/button/themes.js.map +1 -1
  87. package/dist/cjs/components/checkBox/CheckBox.js +1 -1
  88. package/dist/cjs/components/checkBox/CheckBox.js.map +1 -1
  89. package/dist/cjs/components/country-code-picker/CountryCodePicker.js.map +1 -1
  90. package/dist/cjs/components/country-code-picker/CountryPicker.js.map +1 -1
  91. package/dist/cjs/components/dropdown/Dropdown.js +1 -1
  92. package/dist/cjs/components/dropdown/Dropdown.js.map +1 -1
  93. package/dist/cjs/components/dropdown/DropdownPopover/index.js +1 -1
  94. package/dist/cjs/components/dropdown/DropdownPopover/index.js.map +1 -1
  95. package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +1 -1
  96. package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
  97. package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js +8 -9
  98. package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js.map +1 -1
  99. package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.js.map +1 -1
  100. package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.styled.js.map +1 -1
  101. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +1 -1
  102. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js.map +1 -1
  103. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +9 -9
  104. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
  105. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js +1 -1
  106. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
  107. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js +2 -6
  108. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js.map +1 -1
  109. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +1 -1
  110. package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
  111. package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +1 -1
  112. package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js.map +1 -1
  113. package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +1 -1
  114. package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js.map +1 -1
  115. package/dist/cjs/components/dropdown-button/DropdownButton.js +1 -1
  116. package/dist/cjs/components/dropdown-button/DropdownButton.js.map +1 -1
  117. package/dist/cjs/components/dropdown-button/DropdownButton.style.js +6 -20
  118. package/dist/cjs/components/dropdown-button/DropdownButton.style.js.map +1 -1
  119. package/dist/cjs/components/fab-menu/FABMenu.js.map +1 -1
  120. package/dist/cjs/components/icon-button/IconButton.js +1 -1
  121. package/dist/cjs/components/icon-button/IconButton.js.map +1 -1
  122. package/dist/cjs/components/icon-button/IconButton.styled.js +12 -18
  123. package/dist/cjs/components/icon-button/IconButton.styled.js.map +1 -1
  124. package/dist/cjs/components/icon-button/theme.js +1 -1
  125. package/dist/cjs/components/icon-button/theme.js.map +1 -1
  126. package/dist/cjs/components/input/Input.js +1 -1
  127. package/dist/cjs/components/input/Input.js.map +1 -1
  128. package/dist/cjs/components/input/Input.styled.js +16 -27
  129. package/dist/cjs/components/input/Input.styled.js.map +1 -1
  130. package/dist/cjs/components/input-with-vars/InputWithVariables.js +3 -3
  131. package/dist/cjs/components/input-with-vars/InputWithVariables.js.map +1 -1
  132. package/dist/cjs/components/list-item/ListItem.js +1 -1
  133. package/dist/cjs/components/list-item/ListItem.js.map +1 -1
  134. package/dist/cjs/components/list-item/ListItem.styled.js +6 -6
  135. package/dist/cjs/components/list-item/ListItem.styled.js.map +1 -1
  136. package/dist/cjs/components/list-item/themes.js +20 -32
  137. package/dist/cjs/components/list-item/themes.js.map +1 -1
  138. package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js +1 -1
  139. package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js.map +1 -1
  140. package/dist/cjs/components/multi-level-dropdown/MenuItem.js +1 -1
  141. package/dist/cjs/components/multi-level-dropdown/MenuItem.js.map +1 -1
  142. package/dist/cjs/components/multi-level-dropdown/MenuList.js +1 -1
  143. package/dist/cjs/components/multi-level-dropdown/MenuList.js.map +1 -1
  144. package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js +1 -1
  145. package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
  146. package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js +29 -32
  147. package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
  148. package/dist/cjs/components/tag/Tag.js +1 -1
  149. package/dist/cjs/components/tag/Tag.js.map +1 -1
  150. package/dist/cjs/components/tag/Tag.styled.js +4 -4
  151. package/dist/cjs/components/tag/Tag.styled.js.map +1 -1
  152. package/dist/cjs/components/tag/model.js.map +1 -1
  153. package/dist/cjs/components/variable-picker-v3/Content.js +1 -1
  154. package/dist/cjs/components/variable-picker-v3/Content.js.map +1 -1
  155. package/dist/cjs/components/variable-picker-v3/model.js.map +1 -1
  156. package/dist/cjs/components/whats-new/WhatsNew.js +1 -1
  157. package/dist/cjs/components/whats-new/WhatsNew.js.map +1 -1
  158. package/dist/cjs/components/whats-new/WhatsNewButton.js +2 -2
  159. package/dist/cjs/components/whats-new/WhatsNewButton.js.map +1 -1
  160. package/dist/cjs/components/whats-new/WhatsNewPanel.js.map +1 -1
  161. package/dist/cjs/constants/Theme.js +1 -1
  162. package/dist/cjs/constants/Theme.js.map +1 -1
  163. package/dist/cjs/editor/BikEditor.js +1 -1
  164. package/dist/cjs/editor/BikEditor.js.map +1 -1
  165. package/dist/cjs/editor/BikEditor.styles.js +14 -1
  166. package/dist/cjs/editor/BikEditor.styles.js.map +1 -1
  167. package/dist/cjs/editor/BikEditor.types.js.map +1 -1
  168. package/dist/cjs/editor/BikEditor.utils.js +2 -2
  169. package/dist/cjs/editor/BikEditor.utils.js.map +1 -1
  170. package/dist/cjs/editor/extensions/buildExtensions.js +1 -1
  171. package/dist/cjs/editor/extensions/buildExtensions.js.map +1 -1
  172. package/dist/cjs/editor/extensions/editorDropdown.styles.js +15 -10
  173. package/dist/cjs/editor/extensions/editorDropdown.styles.js.map +1 -1
  174. package/dist/cjs/editor/extensions/mention/MentionDropdown.js +1 -1
  175. package/dist/cjs/editor/extensions/mention/MentionDropdown.js.map +1 -1
  176. package/dist/cjs/editor/extensions/mention/MentionExtension.js +1 -1
  177. package/dist/cjs/editor/extensions/mention/MentionExtension.js.map +1 -1
  178. package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js +1 -1
  179. package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js.map +1 -1
  180. package/dist/cjs/index.js +1 -1
  181. package/dist/esm/assets/icons/ManifestGlass.svg.js +6 -0
  182. package/dist/esm/assets/icons/ManifestGlass.svg.js.map +1 -0
  183. package/dist/esm/assets/icons/playOutline.svg.js +6 -0
  184. package/dist/esm/assets/icons/playOutline.svg.js.map +1 -0
  185. package/dist/esm/components/BikGiftedChat/Bubble/Bubble.js +59 -61
  186. package/dist/esm/components/BikGiftedChat/Bubble/Bubble.js.map +1 -1
  187. package/dist/esm/components/BikGiftedChat/GiftedChat/Day.d.ts +0 -6
  188. package/dist/esm/components/BikGiftedChat/GiftedChat/Day.js +88 -124
  189. package/dist/esm/components/BikGiftedChat/GiftedChat/Day.js.map +1 -1
  190. package/dist/esm/components/BikGiftedChat/GiftedChat/GiftedChat.js +128 -225
  191. package/dist/esm/components/BikGiftedChat/GiftedChat/GiftedChat.js.map +1 -1
  192. package/dist/esm/components/BikGiftedChat/GiftedChat/types.d.ts +2 -6
  193. package/dist/esm/components/BikGiftedChat/GiftedChat/types.js.map +1 -1
  194. package/dist/esm/components/TypographyStyle.d.ts +0 -8
  195. package/dist/esm/components/TypographyStyle.js +40 -63
  196. package/dist/esm/components/TypographyStyle.js.map +1 -1
  197. package/dist/esm/components/agent-builder/AgentBuilder.d.ts +18 -0
  198. package/dist/esm/components/agent-builder/AgentBuilder.js +190 -0
  199. package/dist/esm/components/agent-builder/AgentBuilder.js.map +1 -0
  200. package/dist/esm/components/agent-builder/AgentBuilder.model.d.ts +73 -0
  201. package/dist/esm/components/agent-builder/AgentBuilder.styled.d.ts +121 -0
  202. package/dist/esm/components/agent-builder/AgentBuilder.styled.js +353 -0
  203. package/dist/esm/components/agent-builder/AgentBuilder.styled.js.map +1 -0
  204. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.d.ts +10 -0
  205. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js +70 -0
  206. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js.map +1 -0
  207. package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.d.ts +12 -0
  208. package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js +73 -0
  209. package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -0
  210. package/dist/esm/components/agent-builder/components/AiTextArea.d.ts +14 -0
  211. package/dist/esm/components/agent-builder/components/AiTextArea.js +44 -0
  212. package/dist/esm/components/agent-builder/components/AiTextArea.js.map +1 -0
  213. package/dist/esm/components/agent-builder/components/DiscardModal.d.ts +18 -0
  214. package/dist/esm/components/agent-builder/components/DiscardModal.js +54 -0
  215. package/dist/esm/components/agent-builder/components/DiscardModal.js.map +1 -0
  216. package/dist/esm/components/agent-builder/components/GoLiveModal.d.ts +18 -0
  217. package/dist/esm/components/agent-builder/components/GoLiveModal.js +73 -0
  218. package/dist/esm/components/agent-builder/components/GoLiveModal.js.map +1 -0
  219. package/dist/esm/components/agent-builder/components/InstructionsField.d.ts +2 -0
  220. package/dist/esm/components/agent-builder/components/InstructionsField.js +81 -0
  221. package/dist/esm/components/agent-builder/components/InstructionsField.js.map +1 -0
  222. package/dist/esm/components/agent-builder/components/MentionPicker.d.ts +12 -0
  223. package/dist/esm/components/agent-builder/components/MentionPicker.js +154 -0
  224. package/dist/esm/components/agent-builder/components/MentionPicker.js.map +1 -0
  225. package/dist/esm/components/agent-builder/components/RichTextField.d.ts +21 -0
  226. package/dist/esm/components/agent-builder/components/RichTextField.js +66 -0
  227. package/dist/esm/components/agent-builder/components/RichTextField.js.map +1 -0
  228. package/dist/esm/components/agent-builder/components/SelectableListSection.d.ts +19 -0
  229. package/dist/esm/components/agent-builder/components/SelectableListSection.js +79 -0
  230. package/dist/esm/components/agent-builder/components/SelectableListSection.js.map +1 -0
  231. package/dist/esm/components/agent-builder/components/StepRail.d.ts +2 -0
  232. package/dist/esm/components/agent-builder/components/StepRail.js +35 -0
  233. package/dist/esm/components/agent-builder/components/StepRail.js.map +1 -0
  234. package/dist/esm/components/agent-builder/components/StepSectionHeader.d.ts +7 -0
  235. package/dist/esm/components/agent-builder/components/StepSectionHeader.js +15 -0
  236. package/dist/esm/components/agent-builder/components/StepSectionHeader.js.map +1 -0
  237. package/dist/esm/components/agent-builder/constants/charLimits.d.ts +21 -0
  238. package/dist/esm/components/agent-builder/constants/charLimits.js +18 -0
  239. package/dist/esm/components/agent-builder/constants/charLimits.js.map +1 -0
  240. package/dist/esm/components/agent-builder/constants/editorStyle.d.ts +8 -0
  241. package/dist/esm/components/agent-builder/constants/editorStyle.js +10 -0
  242. package/dist/esm/components/agent-builder/constants/editorStyle.js.map +1 -0
  243. package/dist/esm/components/agent-builder/constants/steps.d.ts +13 -0
  244. package/dist/esm/components/agent-builder/constants/steps.js +32 -0
  245. package/dist/esm/components/agent-builder/constants/steps.js.map +1 -0
  246. package/dist/esm/components/agent-builder/context/AgentBuilderContext.d.ts +53 -0
  247. package/dist/esm/components/agent-builder/context/AgentBuilderContext.js +118 -0
  248. package/dist/esm/components/agent-builder/context/AgentBuilderContext.js.map +1 -0
  249. package/dist/esm/components/agent-builder/hooks/useAgentDraft.d.ts +24 -0
  250. package/dist/esm/components/agent-builder/hooks/useAgentDraft.js +27 -0
  251. package/dist/esm/components/agent-builder/hooks/useAgentDraft.js.map +1 -0
  252. package/dist/esm/components/agent-builder/index.d.ts +7 -0
  253. package/dist/esm/components/agent-builder/steps/Step1About.d.ts +2 -0
  254. package/dist/esm/components/agent-builder/steps/Step1About.js +43 -0
  255. package/dist/esm/components/agent-builder/steps/Step1About.js.map +1 -0
  256. package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.d.ts +2 -0
  257. package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js +148 -0
  258. package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -0
  259. package/dist/esm/components/agent-builder/steps/Step3HowItResponds.d.ts +2 -0
  260. package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js +112 -0
  261. package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js.map +1 -0
  262. package/dist/esm/components/agent-builder/steps/Step4HandoverRules.d.ts +2 -0
  263. package/dist/esm/components/agent-builder/steps/Step4HandoverRules.js +83 -0
  264. package/dist/esm/components/agent-builder/steps/Step4HandoverRules.js.map +1 -0
  265. package/dist/esm/components/agent-builder/utils/mentionSerialization.d.ts +55 -0
  266. package/dist/esm/components/agent-builder/utils/mentionSerialization.js +95 -0
  267. package/dist/esm/components/agent-builder/utils/mentionSerialization.js.map +1 -0
  268. package/dist/esm/components/agent-listing/AgentListing.d.ts +18 -0
  269. package/dist/esm/components/agent-listing/AgentListing.js +141 -0
  270. package/dist/esm/components/agent-listing/AgentListing.js.map +1 -0
  271. package/dist/esm/components/agent-listing/AgentListing.model.d.ts +69 -0
  272. package/dist/esm/components/agent-listing/AgentListing.styled.d.ts +56 -0
  273. package/dist/esm/components/agent-listing/AgentListing.styled.js +145 -0
  274. package/dist/esm/components/agent-listing/AgentListing.styled.js.map +1 -0
  275. package/dist/esm/components/agent-listing/AgentListingFilters.d.ts +16 -0
  276. package/dist/esm/components/agent-listing/AgentListingFilters.js +81 -0
  277. package/dist/esm/components/agent-listing/AgentListingFilters.js.map +1 -0
  278. package/dist/esm/components/agent-listing/AgentListingHeader.d.ts +8 -0
  279. package/dist/esm/components/agent-listing/AgentListingHeader.js +40 -0
  280. package/dist/esm/components/agent-listing/AgentListingHeader.js.map +1 -0
  281. package/dist/esm/components/agent-listing/AgentTable.d.ts +10 -0
  282. package/dist/esm/components/agent-listing/AgentTable.js +33 -0
  283. package/dist/esm/components/agent-listing/AgentTable.js.map +1 -0
  284. package/dist/esm/components/agent-listing/AgentTableRow.d.ts +10 -0
  285. package/dist/esm/components/agent-listing/AgentTableRow.js +88 -0
  286. package/dist/esm/components/agent-listing/AgentTableRow.js.map +1 -0
  287. package/dist/esm/components/agent-listing/index.d.ts +2 -0
  288. package/dist/esm/components/avatar/Avatar.d.ts +1 -2
  289. package/dist/esm/components/avatar/Avatar.js +73 -51
  290. package/dist/esm/components/avatar/Avatar.js.map +1 -1
  291. package/dist/esm/components/avatar/Avatar.styled.js +8 -8
  292. package/dist/esm/components/avatar/Avatar.styled.js.map +1 -1
  293. package/dist/esm/components/avatar/AvatarHelper.d.ts +4 -5
  294. package/dist/esm/components/avatar/AvatarHelper.js +4 -4
  295. package/dist/esm/components/avatar/AvatarHelper.js.map +1 -1
  296. package/dist/esm/components/bik-layout/BikSidebar.js.map +1 -1
  297. package/dist/esm/components/bik-layout/CommonStyles.js +1 -1
  298. package/dist/esm/components/bik-layout/CommonStyles.js.map +1 -1
  299. package/dist/esm/components/bik-layout/index.d.ts +0 -2
  300. package/dist/esm/components/button/Button.js +31 -31
  301. package/dist/esm/components/button/Button.js.map +1 -1
  302. package/dist/esm/components/button/Button.styled.d.ts +1 -1
  303. package/dist/esm/components/button/Button.styled.js +20 -20
  304. package/dist/esm/components/button/Button.styled.js.map +1 -1
  305. package/dist/esm/components/button/model.d.ts +3 -3
  306. package/dist/esm/components/button/themes.d.ts +2 -2
  307. package/dist/esm/components/button/themes.js +17 -31
  308. package/dist/esm/components/button/themes.js.map +1 -1
  309. package/dist/esm/components/checkBox/CheckBox.d.ts +0 -1
  310. package/dist/esm/components/checkBox/CheckBox.js +63 -82
  311. package/dist/esm/components/checkBox/CheckBox.js.map +1 -1
  312. package/dist/esm/components/country-code-picker/CountryCodePicker.d.ts +1 -1
  313. package/dist/esm/components/country-code-picker/CountryCodePicker.js.map +1 -1
  314. package/dist/esm/components/country-code-picker/CountryPicker.d.ts +1 -1
  315. package/dist/esm/components/country-code-picker/CountryPicker.js.map +1 -1
  316. package/dist/esm/components/dropdown/Dropdown.js +67 -67
  317. package/dist/esm/components/dropdown/Dropdown.js.map +1 -1
  318. package/dist/esm/components/dropdown/DropdownPopover/index.js +61 -74
  319. package/dist/esm/components/dropdown/DropdownPopover/index.js.map +1 -1
  320. package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +174 -183
  321. package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
  322. package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.d.ts +1 -1
  323. package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js +4 -5
  324. package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js.map +1 -1
  325. package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.d.ts +1 -1
  326. package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.js.map +1 -1
  327. package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.styled.d.ts +1 -1
  328. package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.styled.js.map +1 -1
  329. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.d.ts +1 -3
  330. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +20 -29
  331. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js.map +1 -1
  332. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.d.ts +1 -3
  333. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +87 -93
  334. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
  335. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.d.ts +1 -3
  336. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js +61 -68
  337. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
  338. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.d.ts +1 -2
  339. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js +2 -7
  340. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js.map +1 -1
  341. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.d.ts +1 -3
  342. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +10 -18
  343. package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
  344. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.d.ts +1 -1
  345. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +18 -18
  346. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js.map +1 -1
  347. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.d.ts +0 -1
  348. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +17 -43
  349. package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js.map +1 -1
  350. package/dist/esm/components/dropdown/OpenedDropdown/utils/iterationOnOptions.d.ts +0 -2
  351. package/dist/esm/components/dropdown/hooks/useDropdown.d.ts +0 -2
  352. package/dist/esm/components/dropdown/type.d.ts +1 -6
  353. package/dist/esm/components/dropdown-button/DropdownButton.d.ts +1 -3
  354. package/dist/esm/components/dropdown-button/DropdownButton.js +17 -71
  355. package/dist/esm/components/dropdown-button/DropdownButton.js.map +1 -1
  356. package/dist/esm/components/dropdown-button/DropdownButton.style.d.ts +2 -9
  357. package/dist/esm/components/dropdown-button/DropdownButton.style.js +9 -35
  358. package/dist/esm/components/dropdown-button/DropdownButton.style.js.map +1 -1
  359. package/dist/esm/components/fab-menu/FABMenu.d.ts +1 -1
  360. package/dist/esm/components/fab-menu/FABMenu.js.map +1 -1
  361. package/dist/esm/components/icon-button/IconButton.js +32 -36
  362. package/dist/esm/components/icon-button/IconButton.js.map +1 -1
  363. package/dist/esm/components/icon-button/IconButton.styled.d.ts +1 -3
  364. package/dist/esm/components/icon-button/IconButton.styled.js +14 -20
  365. package/dist/esm/components/icon-button/IconButton.styled.js.map +1 -1
  366. package/dist/esm/components/icon-button/model.d.ts +1 -12
  367. package/dist/esm/components/icon-button/theme.js +10 -12
  368. package/dist/esm/components/icon-button/theme.js.map +1 -1
  369. package/dist/esm/components/input/Input.js +115 -119
  370. package/dist/esm/components/input/Input.js.map +1 -1
  371. package/dist/esm/components/input/Input.model.d.ts +3 -2
  372. package/dist/esm/components/input/Input.styled.d.ts +1 -8
  373. package/dist/esm/components/input/Input.styled.js +22 -34
  374. package/dist/esm/components/input/Input.styled.js.map +1 -1
  375. package/dist/esm/components/input-with-vars/InputWithVariables.d.ts +2 -0
  376. package/dist/esm/components/input-with-vars/InputWithVariables.js +81 -75
  377. package/dist/esm/components/input-with-vars/InputWithVariables.js.map +1 -1
  378. package/dist/esm/components/list-item/List.model.d.ts +1 -2
  379. package/dist/esm/components/list-item/ListItem.js +38 -40
  380. package/dist/esm/components/list-item/ListItem.js.map +1 -1
  381. package/dist/esm/components/list-item/ListItem.styled.d.ts +1 -2
  382. package/dist/esm/components/list-item/ListItem.styled.js +8 -8
  383. package/dist/esm/components/list-item/ListItem.styled.js.map +1 -1
  384. package/dist/esm/components/list-item/themes.d.ts +2 -2
  385. package/dist/esm/components/list-item/themes.js +6 -20
  386. package/dist/esm/components/list-item/themes.js.map +1 -1
  387. package/dist/esm/components/multi-level-dropdown/GroupedMenuList.d.ts +0 -1
  388. package/dist/esm/components/multi-level-dropdown/GroupedMenuList.js +28 -30
  389. package/dist/esm/components/multi-level-dropdown/GroupedMenuList.js.map +1 -1
  390. package/dist/esm/components/multi-level-dropdown/MenuItem.d.ts +0 -1
  391. package/dist/esm/components/multi-level-dropdown/MenuItem.js +54 -57
  392. package/dist/esm/components/multi-level-dropdown/MenuItem.js.map +1 -1
  393. package/dist/esm/components/multi-level-dropdown/MenuList.d.ts +0 -1
  394. package/dist/esm/components/multi-level-dropdown/MenuList.js +42 -46
  395. package/dist/esm/components/multi-level-dropdown/MenuList.js.map +1 -1
  396. package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js +59 -95
  397. package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
  398. package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.d.ts +3 -13
  399. package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js +41 -50
  400. package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
  401. package/dist/esm/components/multi-level-dropdown/type.d.ts +0 -1
  402. package/dist/esm/components/tag/Tag.d.ts +1 -1
  403. package/dist/esm/components/tag/Tag.js +18 -22
  404. package/dist/esm/components/tag/Tag.js.map +1 -1
  405. package/dist/esm/components/tag/Tag.styled.d.ts +1 -3
  406. package/dist/esm/components/tag/Tag.styled.js +7 -7
  407. package/dist/esm/components/tag/Tag.styled.js.map +1 -1
  408. package/dist/esm/components/tag/model.d.ts +1 -5
  409. package/dist/esm/components/tag/model.js.map +1 -1
  410. package/dist/esm/components/variable-picker-v3/Content.js +69 -69
  411. package/dist/esm/components/variable-picker-v3/Content.js.map +1 -1
  412. package/dist/esm/components/variable-picker-v3/model.d.ts +2 -0
  413. package/dist/esm/components/variable-picker-v3/model.js.map +1 -1
  414. package/dist/esm/components/whats-new/WhatsNew.d.ts +0 -2
  415. package/dist/esm/components/whats-new/WhatsNew.js +19 -23
  416. package/dist/esm/components/whats-new/WhatsNew.js.map +1 -1
  417. package/dist/esm/components/whats-new/WhatsNew.types.d.ts +0 -2
  418. package/dist/esm/components/whats-new/WhatsNewButton.js +38 -34
  419. package/dist/esm/components/whats-new/WhatsNewButton.js.map +1 -1
  420. package/dist/esm/components/whats-new/WhatsNewPanel.js.map +1 -1
  421. package/dist/esm/constants/Theme.d.ts +0 -36
  422. package/dist/esm/constants/Theme.js +1 -21
  423. package/dist/esm/constants/Theme.js.map +1 -1
  424. package/dist/esm/editor/BikEditor.js +19 -18
  425. package/dist/esm/editor/BikEditor.js.map +1 -1
  426. package/dist/esm/editor/BikEditor.styles.js +13 -0
  427. package/dist/esm/editor/BikEditor.styles.js.map +1 -1
  428. package/dist/esm/editor/BikEditor.types.d.ts +14 -0
  429. package/dist/esm/editor/BikEditor.types.js.map +1 -1
  430. package/dist/esm/editor/BikEditor.utils.js +76 -75
  431. package/dist/esm/editor/BikEditor.utils.js.map +1 -1
  432. package/dist/esm/editor/extensions/buildExtensions.d.ts +1 -0
  433. package/dist/esm/editor/extensions/buildExtensions.js +31 -29
  434. package/dist/esm/editor/extensions/buildExtensions.js.map +1 -1
  435. package/dist/esm/editor/extensions/editorDropdown.styles.d.ts +2 -8
  436. package/dist/esm/editor/extensions/editorDropdown.styles.js +22 -18
  437. package/dist/esm/editor/extensions/editorDropdown.styles.js.map +1 -1
  438. package/dist/esm/editor/extensions/mention/MentionDropdown.js +34 -28
  439. package/dist/esm/editor/extensions/mention/MentionDropdown.js.map +1 -1
  440. package/dist/esm/editor/extensions/mention/MentionExtension.d.ts +2 -2
  441. package/dist/esm/editor/extensions/mention/MentionExtension.js +81 -60
  442. package/dist/esm/editor/extensions/mention/MentionExtension.js.map +1 -1
  443. package/dist/esm/icons/Arrows/Chevron/ChevronUp.d.ts +2 -1
  444. package/dist/esm/icons/Arrows/Chevron/ChevronUp.js +28 -24
  445. package/dist/esm/icons/Arrows/Chevron/ChevronUp.js.map +1 -1
  446. package/dist/esm/icons/index.d.ts +24 -24
  447. package/dist/esm/index.d.ts +2 -1
  448. package/dist/esm/index.js +806 -798
  449. package/dist/esm/index.js.map +1 -1
  450. package/package.json +3 -2
  451. package/dist/cjs/components/bik-layout/BikSidebarV2/BikSidebarV2.js +0 -2
  452. package/dist/cjs/components/bik-layout/BikSidebarV2/BikSidebarV2.js.map +0 -1
  453. package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Popup.js +0 -2
  454. package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Popup.js.map +0 -1
  455. package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Styles.js +0 -294
  456. package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Styles.js.map +0 -1
  457. package/dist/cjs/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js +0 -2
  458. package/dist/cjs/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js.map +0 -1
  459. package/dist/cjs/components/dual-icon-button/DualIconButton.js +0 -2
  460. package/dist/cjs/components/dual-icon-button/DualIconButton.js.map +0 -1
  461. package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js +0 -33
  462. package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js.map +0 -1
  463. package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.d.ts +0 -33
  464. package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.js +0 -272
  465. package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.js.map +0 -1
  466. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2.model.d.ts +0 -27
  467. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.d.ts +0 -12
  468. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.js +0 -53
  469. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.js.map +0 -1
  470. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.d.ts +0 -44
  471. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.js +0 -310
  472. package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.js.map +0 -1
  473. package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.d.ts +0 -2
  474. package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js +0 -107
  475. package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js.map +0 -1
  476. package/dist/esm/components/dual-icon-button/DualIconButton.d.ts +0 -3
  477. package/dist/esm/components/dual-icon-button/DualIconButton.js +0 -53
  478. package/dist/esm/components/dual-icon-button/DualIconButton.js.map +0 -1
  479. package/dist/esm/components/dual-icon-button/DualIconButton.styled.d.ts +0 -7
  480. package/dist/esm/components/dual-icon-button/DualIconButton.styled.js +0 -40
  481. package/dist/esm/components/dual-icon-button/DualIconButton.styled.js.map +0 -1
  482. package/dist/esm/components/dual-icon-button/index.d.ts +0 -2
  483. package/dist/esm/components/dual-icon-button/model.d.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"CountryCodePicker.js","sources":["../../../../src/components/country-code-picker/CountryCodePicker.tsx"],"sourcesContent":["import { Placement, PositioningStrategy } from '@popperjs/core';\nimport DownIcon from '@src/assets/icons/chevronDown.svg';\nimport React, { useEffect, useState } from 'react';\nimport {\n\tCountriesData,\n\tCountryCode,\n} from '@src/components/country-code-picker/CountryCodePicker.modal';\nimport {\n\tStyledCountryPickerOption,\n\tStyledCountryPickerWrapper,\n} from '@src/components/country-code-picker/CountryCodePicker.styled';\nimport { DropdownPopover } from '@src/components/dropdown';\nimport { DropdownOption, SingleOption } from '@src/components/dropdown/type';\nimport { BodySecondary } from '@src/components/TypographyStyle';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const CountryCodePicker: React.FC<{\n\tversion: '1.0' | '2.0' | '3.0';\n\tonCountrySelect: (country: CountryCode) => void;\n\tselectedCountry: CountryCode;\n\tpopoverWidth?: string;\n\theight?: string;\n\tplacement?: Placement;\n\tplacementStrategy?: PositioningStrategy;\n\tdisabled?: boolean;\n\thideFlagImage?: boolean;\n\tcontainerStyles?: React.CSSProperties;\n\tcodeColor?: string;\n\tdialColor?: string;\n\tcountryTextStyle?: React.CSSProperties;\n\tonDropdownClick?: () => void;\n}> = (props) => {\n\tconst [selectedCountry, setSelectedCountry] = useState<{\n\t\tname: string;\n\t\tdial: string;\n\t\tcode: string;\n\t}>(\n\t\tprops.selectedCountry ?? {\n\t\t\tname: 'India',\n\t\t\tdial: '+91',\n\t\t\tcode: 'IN',\n\t\t},\n\t);\n\tconst selectedFlag = `https://flagcdn.com/${selectedCountry.code?.toLowerCase()}.svg`;\n\n\tuseEffect(() => {\n\t\tif (props.selectedCountry) {\n\t\t\tsetSelectedCountry(props.selectedCountry);\n\t\t}\n\t}, [props.selectedCountry?.code]);\n\n\tconst getCountryOptions = (): DropdownOption[] => {\n\t\treturn CountriesData.map((country) => {\n\t\t\tconst flag = `https://flagcdn.com/${country.code?.toLowerCase()}.svg`;\n\t\t\treturn {\n\t\t\t\tvalue: country.code,\n\t\t\t\tlabel: country.dial,\n\t\t\t\tsearchKey: country.name,\n\t\t\t\tcustomComponent: (\n\t\t\t\t\t<StyledCountryPickerOption>\n\t\t\t\t\t\t{!props.hideFlagImage && (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={flag}\n\t\t\t\t\t\t\t\tclassName=\"country-flag__option\"\n\t\t\t\t\t\t\t\talt={country.name}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<BodySecondary style={props.countryTextStyle ?? {}}>\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: props.codeColor ?? COLORS.text.primary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.code}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: props.dialColor ?? COLORS.text.primary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.dial}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t</StyledCountryPickerOption>\n\t\t\t\t),\n\t\t\t\tselected: selectedCountry.code === country.code,\n\t\t\t};\n\t\t});\n\t};\n\n\treturn (\n\t\t<DropdownPopover\n\t\t\tversion={props.version}\n\t\t\tisSearchable\n\t\t\twidth={props.popoverWidth ?? '200px'}\n\t\t\tplacement={props.placement ?? 'bottom-start'}\n\t\t\tstrategy={props.placementStrategy ?? 'absolute'}\n\t\t\toptions={getCountryOptions()}\n\t\t\tdisabled={props.disabled}\n\t\t\tonSelect={(option) => {\n\t\t\t\tconst matchingOption = CountriesData.filter(\n\t\t\t\t\t(country) => country.code === (option as SingleOption).value,\n\t\t\t\t);\n\t\t\t\tsetSelectedCountry(matchingOption[0]);\n\t\t\t\tprops.onCountrySelect(matchingOption[0]);\n\t\t\t}}\n\t\t>\n\t\t\t<StyledCountryPickerWrapper\n\t\t\t\theight={props.height}\n\t\t\t\tstyle={props.containerStyles}\n\t\t\t\tonClick={() => {\n\t\t\t\t\tconsole.log('hello');\n\t\t\t\t\tprops.onDropdownClick?.();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<div className=\"content__wrapper\">\n\t\t\t\t\t{!props.hideFlagImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={selectedFlag}\n\t\t\t\t\t\t\tclassName=\"country-flag__selected-option\"\n\t\t\t\t\t\t\talt={selectedCountry.name}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t<BodySecondary style={props.countryTextStyle ?? {}}>\n\t\t\t\t\t\t{selectedCountry.dial}\n\t\t\t\t\t</BodySecondary>\n\t\t\t\t</div>\n\t\t\t\t<DownIcon width={24} height={24} color={COLORS.content.primary} />\n\t\t\t</StyledCountryPickerWrapper>\n\t\t</DropdownPopover>\n\t);\n};\n"],"names":["CountryCodePicker","props","selectedCountry","setSelectedCountry","useState","selectedFlag","useEffect","getCountryOptions","CountriesData","country","flag","StyledCountryPickerOption","jsx","BodySecondary","COLORS","DropdownPopover","option","matchingOption","jsxs","StyledCountryPickerWrapper","DownIcon"],"mappings":"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"}
1
+ {"version":3,"file":"CountryCodePicker.js","sources":["../../../../src/components/country-code-picker/CountryCodePicker.tsx"],"sourcesContent":["import { Placement, PositioningStrategy } from '@popperjs/core';\nimport DownIcon from '@src/assets/icons/chevronDown.svg';\nimport React, { useEffect, useState } from 'react';\nimport {\n\tCountriesData,\n\tCountryCode,\n} from '@src/components/country-code-picker/CountryCodePicker.modal';\nimport {\n\tStyledCountryPickerOption,\n\tStyledCountryPickerWrapper,\n} from '@src/components/country-code-picker/CountryCodePicker.styled';\nimport { DropdownPopover } from '@src/components/dropdown';\nimport { DropdownOption, SingleOption } from '@src/components/dropdown/type';\nimport { BodySecondary } from '@src/components/TypographyStyle';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const CountryCodePicker: React.FC<{\n\tversion: '1.0' | '2.0';\n\tonCountrySelect: (country: CountryCode) => void;\n\tselectedCountry: CountryCode;\n\tpopoverWidth?: string;\n\theight?: string;\n\tplacement?: Placement;\n\tplacementStrategy?: PositioningStrategy;\n\tdisabled?: boolean;\n\thideFlagImage?: boolean;\n\tcontainerStyles?: React.CSSProperties;\n\tcodeColor?: string;\n\tdialColor?: string;\n\tcountryTextStyle?: React.CSSProperties;\n\tonDropdownClick?: () => void;\n}> = (props) => {\n\tconst [selectedCountry, setSelectedCountry] = useState<{\n\t\tname: string;\n\t\tdial: string;\n\t\tcode: string;\n\t}>(\n\t\tprops.selectedCountry ?? {\n\t\t\tname: 'India',\n\t\t\tdial: '+91',\n\t\t\tcode: 'IN',\n\t\t},\n\t);\n\tconst selectedFlag = `https://flagcdn.com/${selectedCountry.code?.toLowerCase()}.svg`;\n\n\tuseEffect(() => {\n\t\tif (props.selectedCountry) {\n\t\t\tsetSelectedCountry(props.selectedCountry);\n\t\t}\n\t}, [props.selectedCountry?.code]);\n\n\tconst getCountryOptions = (): DropdownOption[] => {\n\t\treturn CountriesData.map((country) => {\n\t\t\tconst flag = `https://flagcdn.com/${country.code?.toLowerCase()}.svg`;\n\t\t\treturn {\n\t\t\t\tvalue: country.code,\n\t\t\t\tlabel: country.dial,\n\t\t\t\tsearchKey: country.name,\n\t\t\t\tcustomComponent: (\n\t\t\t\t\t<StyledCountryPickerOption>\n\t\t\t\t\t\t{!props.hideFlagImage && (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={flag}\n\t\t\t\t\t\t\t\tclassName=\"country-flag__option\"\n\t\t\t\t\t\t\t\talt={country.name}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<BodySecondary style={props.countryTextStyle ?? {}}>\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: props.codeColor ?? COLORS.text.primary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.code}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: props.dialColor ?? COLORS.text.primary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.dial}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t</StyledCountryPickerOption>\n\t\t\t\t),\n\t\t\t\tselected: selectedCountry.code === country.code,\n\t\t\t};\n\t\t});\n\t};\n\n\treturn (\n\t\t<DropdownPopover\n\t\t\tversion={props.version}\n\t\t\tisSearchable\n\t\t\twidth={props.popoverWidth ?? '200px'}\n\t\t\tplacement={props.placement ?? 'bottom-start'}\n\t\t\tstrategy={props.placementStrategy ?? 'absolute'}\n\t\t\toptions={getCountryOptions()}\n\t\t\tdisabled={props.disabled}\n\t\t\tonSelect={(option) => {\n\t\t\t\tconst matchingOption = CountriesData.filter(\n\t\t\t\t\t(country) => country.code === (option as SingleOption).value,\n\t\t\t\t);\n\t\t\t\tsetSelectedCountry(matchingOption[0]);\n\t\t\t\tprops.onCountrySelect(matchingOption[0]);\n\t\t\t}}\n\t\t>\n\t\t\t<StyledCountryPickerWrapper\n\t\t\t\theight={props.height}\n\t\t\t\tstyle={props.containerStyles}\n\t\t\t\tonClick={() => {\n\t\t\t\t\tconsole.log('hello');\n\t\t\t\t\tprops.onDropdownClick?.();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<div className=\"content__wrapper\">\n\t\t\t\t\t{!props.hideFlagImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={selectedFlag}\n\t\t\t\t\t\t\tclassName=\"country-flag__selected-option\"\n\t\t\t\t\t\t\talt={selectedCountry.name}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t<BodySecondary style={props.countryTextStyle ?? {}}>\n\t\t\t\t\t\t{selectedCountry.dial}\n\t\t\t\t\t</BodySecondary>\n\t\t\t\t</div>\n\t\t\t\t<DownIcon width={24} height={24} color={COLORS.content.primary} />\n\t\t\t</StyledCountryPickerWrapper>\n\t\t</DropdownPopover>\n\t);\n};\n"],"names":["CountryCodePicker","props","selectedCountry","setSelectedCountry","useState","selectedFlag","useEffect","getCountryOptions","CountriesData","country","flag","StyledCountryPickerOption","jsx","BodySecondary","COLORS","DropdownPopover","option","matchingOption","jsxs","StyledCountryPickerWrapper","DownIcon"],"mappings":"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"}
@@ -8,7 +8,7 @@ export interface CountryPickerProps {
8
8
  /**
9
9
  * Version of the dropdown popover to use
10
10
  */
11
- version: '1.0' | '2.0' | '3.0';
11
+ version: '1.0' | '2.0';
12
12
  /**
13
13
  * Callback function when a country is selected
14
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CountryPicker.js","sources":["../../../../src/components/country-code-picker/CountryPicker.tsx"],"sourcesContent":["import { Placement, PositioningStrategy } from '@popperjs/core';\nimport DownIcon from '@src/assets/icons/chevronDown.svg';\nimport React, { useMemo, useState } from 'react';\nimport {\n\tCountriesData,\n\tCountryCode,\n} from '@src/components/country-code-picker/CountryCodePicker.modal';\nimport {\n\tStyledCountryOption,\n\tStyledCountryPickerContainer,\n} from '@src/components/country-code-picker/CountryPicker.styled';\nimport { DropdownPopover } from '@src/components/dropdown';\nimport { DropdownOption, SingleOption } from '@src/components/dropdown/type';\nimport { BodySecondary } from '@src/components/TypographyStyle';\nimport { COLORS } from '@src/constants/Theme';\n\n/**\n * Props for the CountryPicker component\n */\nexport interface CountryPickerProps {\n\t/**\n\t * Version of the dropdown popover to use\n\t */\n\tversion: '1.0' | '2.0' | '3.0';\n\t/**\n\t * Callback function when a country is selected\n\t */\n\tonCountrySelect: (country: CountryCode) => void;\n\t/**\n\t * Currently selected country\n\t */\n\tselectedCountry?: CountryCode;\n\t/**\n\t * Width of the popover dropdown\n\t * @default \"300px\"\n\t */\n\tpopoverWidth?: string;\n\t/**\n\t * Height of the picker container\n\t */\n\theight?: string;\n\t/**\n\t * Placement of the dropdown relative to the trigger\n\t * @default \"bottom-start\"\n\t */\n\tplacement?: Placement;\n\t/**\n\t * Positioning strategy for the dropdown\n\t * @default \"absolute\"\n\t */\n\tplacementStrategy?: PositioningStrategy;\n\t/**\n\t * Whether the picker is disabled\n\t * @default false\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * Whether to hide the flag image\n\t * @default false\n\t */\n\thideFlagImage?: boolean;\n\t/**\n\t * Custom styles for the container\n\t */\n\tcontainerStyles?: React.CSSProperties;\n\t/**\n\t * Placeholder text when no country is selected\n\t * @default \"Select a country\"\n\t */\n\tplaceholder?: string;\n\t/**\n\t * Whether to show country code alongside name\n\t * @default true\n\t */\n\tshowCountryCode?: boolean;\n\t/**\n\t * Custom text style for the country name\n\t */\n\tcountryTextStyle?: React.CSSProperties;\n\t/**\n\t * Callback when dropdown is clicked\n\t */\n\tonDropdownClick?: () => void;\n}\n\nexport const CountryPicker: React.FC<CountryPickerProps> = ({\n\tversion,\n\tonCountrySelect,\n\tselectedCountry,\n\tpopoverWidth = '300px',\n\theight,\n\tplacement = 'bottom-start',\n\tplacementStrategy = 'absolute',\n\tdisabled = false,\n\thideFlagImage = false,\n\tcontainerStyles,\n\tplaceholder = 'Select a country',\n\tshowCountryCode = true,\n\tcountryTextStyle,\n\tonDropdownClick,\n}) => {\n\tconst [internalSelectedCountry, setInternalSelectedCountry] = useState<\n\t\tCountryCode | undefined\n\t>(selectedCountry);\n\n\t// Derive the current selected country (controlled vs uncontrolled)\n\tconst currentCountry = selectedCountry ?? internalSelectedCountry;\n\n\tconst selectedFlag = currentCountry\n\t\t? `https://flagcdn.com/${currentCountry.code?.toLowerCase()}.svg`\n\t\t: undefined;\n\n\tconst getCountryOptions = useMemo((): DropdownOption[] => {\n\t\treturn CountriesData.map((country) => {\n\t\t\tconst flag = `https://flagcdn.com/${country.code?.toLowerCase()}.svg`;\n\t\t\treturn {\n\t\t\t\tvalue: country.code,\n\t\t\t\tlabel: country.name,\n\t\t\t\tsearchKey: country.name,\n\t\t\t\tcustomComponent: (\n\t\t\t\t\t<StyledCountryOption>\n\t\t\t\t\t\t{!hideFlagImage && (\n\t\t\t\t\t\t\t<img src={flag} className=\"country-flag\" alt={country.name} />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div className=\"country-info\">\n\t\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: COLORS.text.primary,\n\t\t\t\t\t\t\t\t\t...countryTextStyle,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.name}\n\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t{showCountryCode && (\n\t\t\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\tcolor: COLORS.text.secondary,\n\t\t\t\t\t\t\t\t\t\tfontSize: '12px',\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{country.code}\n\t\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</StyledCountryOption>\n\t\t\t\t),\n\t\t\t\tselected: currentCountry?.code === country.code,\n\t\t\t};\n\t\t});\n\t}, [currentCountry?.code, hideFlagImage, showCountryCode, countryTextStyle]);\n\n\tconst handleCountrySelect = (option: SingleOption) => {\n\t\tconst matchingCountry = CountriesData.find(\n\t\t\t(country) => country.code === option.value,\n\t\t);\n\t\tif (matchingCountry) {\n\t\t\t// Only update internal state if in uncontrolled mode\n\t\t\tif (selectedCountry === undefined) {\n\t\t\t\tsetInternalSelectedCountry(matchingCountry);\n\t\t\t}\n\t\t\tonCountrySelect(matchingCountry);\n\t\t}\n\t};\n\n\treturn (\n\t\t<DropdownPopover\n\t\t\tversion={version}\n\t\t\tisSearchable\n\t\t\twidth={popoverWidth}\n\t\t\tplacement={placement}\n\t\t\tstrategy={placementStrategy}\n\t\t\toptions={getCountryOptions}\n\t\t\tdisabled={disabled}\n\t\t\tonSelect={(option) => handleCountrySelect(option as SingleOption)}\n\t\t>\n\t\t\t<StyledCountryPickerContainer\n\t\t\t\theight={height}\n\t\t\t\tstyle={containerStyles}\n\t\t\t\tonClick={onDropdownClick}\n\t\t\t\tdisabled={disabled}\n\t\t\t>\n\t\t\t\t<div className=\"content__wrapper\">\n\t\t\t\t\t{currentCountry ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{!hideFlagImage && selectedFlag && (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={selectedFlag}\n\t\t\t\t\t\t\t\t\tclassName=\"country-flag\"\n\t\t\t\t\t\t\t\t\talt={currentCountry.name}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<BodySecondary style={countryTextStyle}>\n\t\t\t\t\t\t\t\t{currentCountry.name}\n\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tcolor: COLORS.text.disabled,\n\t\t\t\t\t\t\t\t...countryTextStyle,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{placeholder}\n\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t<DownIcon\n\t\t\t\t\twidth={24}\n\t\t\t\t\theight={24}\n\t\t\t\t\tcolor={disabled ? COLORS.text.disabled : COLORS.content.primary}\n\t\t\t\t/>\n\t\t\t</StyledCountryPickerContainer>\n\t\t</DropdownPopover>\n\t);\n};\n"],"names":["CountryPicker","version","onCountrySelect","selectedCountry","popoverWidth","height","placement","placementStrategy","disabled","hideFlagImage","containerStyles","placeholder","showCountryCode","countryTextStyle","onDropdownClick","internalSelectedCountry","setInternalSelectedCountry","useState","currentCountry","selectedFlag","getCountryOptions","useMemo","CountriesData","country","flag","StyledCountryOption","jsxs","jsx","BodySecondary","COLORS","handleCountrySelect","option","matchingCountry","DropdownPopover","StyledCountryPickerContainer","Fragment","DownIcon"],"mappings":"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"}
1
+ {"version":3,"file":"CountryPicker.js","sources":["../../../../src/components/country-code-picker/CountryPicker.tsx"],"sourcesContent":["import { Placement, PositioningStrategy } from '@popperjs/core';\nimport DownIcon from '@src/assets/icons/chevronDown.svg';\nimport React, { useMemo, useState } from 'react';\nimport {\n\tCountriesData,\n\tCountryCode,\n} from '@src/components/country-code-picker/CountryCodePicker.modal';\nimport {\n\tStyledCountryOption,\n\tStyledCountryPickerContainer,\n} from '@src/components/country-code-picker/CountryPicker.styled';\nimport { DropdownPopover } from '@src/components/dropdown';\nimport { DropdownOption, SingleOption } from '@src/components/dropdown/type';\nimport { BodySecondary } from '@src/components/TypographyStyle';\nimport { COLORS } from '@src/constants/Theme';\n\n/**\n * Props for the CountryPicker component\n */\nexport interface CountryPickerProps {\n\t/**\n\t * Version of the dropdown popover to use\n\t */\n\tversion: '1.0' | '2.0';\n\t/**\n\t * Callback function when a country is selected\n\t */\n\tonCountrySelect: (country: CountryCode) => void;\n\t/**\n\t * Currently selected country\n\t */\n\tselectedCountry?: CountryCode;\n\t/**\n\t * Width of the popover dropdown\n\t * @default \"300px\"\n\t */\n\tpopoverWidth?: string;\n\t/**\n\t * Height of the picker container\n\t */\n\theight?: string;\n\t/**\n\t * Placement of the dropdown relative to the trigger\n\t * @default \"bottom-start\"\n\t */\n\tplacement?: Placement;\n\t/**\n\t * Positioning strategy for the dropdown\n\t * @default \"absolute\"\n\t */\n\tplacementStrategy?: PositioningStrategy;\n\t/**\n\t * Whether the picker is disabled\n\t * @default false\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * Whether to hide the flag image\n\t * @default false\n\t */\n\thideFlagImage?: boolean;\n\t/**\n\t * Custom styles for the container\n\t */\n\tcontainerStyles?: React.CSSProperties;\n\t/**\n\t * Placeholder text when no country is selected\n\t * @default \"Select a country\"\n\t */\n\tplaceholder?: string;\n\t/**\n\t * Whether to show country code alongside name\n\t * @default true\n\t */\n\tshowCountryCode?: boolean;\n\t/**\n\t * Custom text style for the country name\n\t */\n\tcountryTextStyle?: React.CSSProperties;\n\t/**\n\t * Callback when dropdown is clicked\n\t */\n\tonDropdownClick?: () => void;\n}\n\nexport const CountryPicker: React.FC<CountryPickerProps> = ({\n\tversion,\n\tonCountrySelect,\n\tselectedCountry,\n\tpopoverWidth = '300px',\n\theight,\n\tplacement = 'bottom-start',\n\tplacementStrategy = 'absolute',\n\tdisabled = false,\n\thideFlagImage = false,\n\tcontainerStyles,\n\tplaceholder = 'Select a country',\n\tshowCountryCode = true,\n\tcountryTextStyle,\n\tonDropdownClick,\n}) => {\n\tconst [internalSelectedCountry, setInternalSelectedCountry] = useState<\n\t\tCountryCode | undefined\n\t>(selectedCountry);\n\n\t// Derive the current selected country (controlled vs uncontrolled)\n\tconst currentCountry = selectedCountry ?? internalSelectedCountry;\n\n\tconst selectedFlag = currentCountry\n\t\t? `https://flagcdn.com/${currentCountry.code?.toLowerCase()}.svg`\n\t\t: undefined;\n\n\tconst getCountryOptions = useMemo((): DropdownOption[] => {\n\t\treturn CountriesData.map((country) => {\n\t\t\tconst flag = `https://flagcdn.com/${country.code?.toLowerCase()}.svg`;\n\t\t\treturn {\n\t\t\t\tvalue: country.code,\n\t\t\t\tlabel: country.name,\n\t\t\t\tsearchKey: country.name,\n\t\t\t\tcustomComponent: (\n\t\t\t\t\t<StyledCountryOption>\n\t\t\t\t\t\t{!hideFlagImage && (\n\t\t\t\t\t\t\t<img src={flag} className=\"country-flag\" alt={country.name} />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div className=\"country-info\">\n\t\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor: COLORS.text.primary,\n\t\t\t\t\t\t\t\t\t...countryTextStyle,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{country.name}\n\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t{showCountryCode && (\n\t\t\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\tcolor: COLORS.text.secondary,\n\t\t\t\t\t\t\t\t\t\tfontSize: '12px',\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{country.code}\n\t\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</StyledCountryOption>\n\t\t\t\t),\n\t\t\t\tselected: currentCountry?.code === country.code,\n\t\t\t};\n\t\t});\n\t}, [currentCountry?.code, hideFlagImage, showCountryCode, countryTextStyle]);\n\n\tconst handleCountrySelect = (option: SingleOption) => {\n\t\tconst matchingCountry = CountriesData.find(\n\t\t\t(country) => country.code === option.value,\n\t\t);\n\t\tif (matchingCountry) {\n\t\t\t// Only update internal state if in uncontrolled mode\n\t\t\tif (selectedCountry === undefined) {\n\t\t\t\tsetInternalSelectedCountry(matchingCountry);\n\t\t\t}\n\t\t\tonCountrySelect(matchingCountry);\n\t\t}\n\t};\n\n\treturn (\n\t\t<DropdownPopover\n\t\t\tversion={version}\n\t\t\tisSearchable\n\t\t\twidth={popoverWidth}\n\t\t\tplacement={placement}\n\t\t\tstrategy={placementStrategy}\n\t\t\toptions={getCountryOptions}\n\t\t\tdisabled={disabled}\n\t\t\tonSelect={(option) => handleCountrySelect(option as SingleOption)}\n\t\t>\n\t\t\t<StyledCountryPickerContainer\n\t\t\t\theight={height}\n\t\t\t\tstyle={containerStyles}\n\t\t\t\tonClick={onDropdownClick}\n\t\t\t\tdisabled={disabled}\n\t\t\t>\n\t\t\t\t<div className=\"content__wrapper\">\n\t\t\t\t\t{currentCountry ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{!hideFlagImage && selectedFlag && (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={selectedFlag}\n\t\t\t\t\t\t\t\t\tclassName=\"country-flag\"\n\t\t\t\t\t\t\t\t\talt={currentCountry.name}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<BodySecondary style={countryTextStyle}>\n\t\t\t\t\t\t\t\t{currentCountry.name}\n\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<BodySecondary\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tcolor: COLORS.text.disabled,\n\t\t\t\t\t\t\t\t...countryTextStyle,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{placeholder}\n\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t<DownIcon\n\t\t\t\t\twidth={24}\n\t\t\t\t\theight={24}\n\t\t\t\t\tcolor={disabled ? COLORS.text.disabled : COLORS.content.primary}\n\t\t\t\t/>\n\t\t\t</StyledCountryPickerContainer>\n\t\t</DropdownPopover>\n\t);\n};\n"],"names":["CountryPicker","version","onCountrySelect","selectedCountry","popoverWidth","height","placement","placementStrategy","disabled","hideFlagImage","containerStyles","placeholder","showCountryCode","countryTextStyle","onDropdownClick","internalSelectedCountry","setInternalSelectedCountry","useState","currentCountry","selectedFlag","getCountryOptions","useMemo","CountriesData","country","flag","StyledCountryOption","jsxs","jsx","BodySecondary","COLORS","handleCountrySelect","option","matchingCountry","DropdownPopover","StyledCountryPickerContainer","Fragment","DownIcon"],"mappings":"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"}
@@ -1,144 +1,144 @@
1
- import { jsx as n, Fragment as b, jsxs as p } from "react/jsx-runtime";
2
- import { useState as g, useRef as q, useEffect as W } from "react";
3
- import { COLORS as r, BASE_COLORS as G } from "../../constants/Theme.js";
1
+ import { jsx as n, Fragment as S, jsxs as C } from "react/jsx-runtime";
2
+ import { useState as g, useRef as G, useEffect as b } from "react";
3
+ import { COLORS as d } from "../../constants/Theme.js";
4
4
  import J from "../../assets/icons/chevronDown.svg.js";
5
5
  import { InputStyleContext as K } from "../input/context/InputStyleProvider.js";
6
6
  import Q from "./ChipInput.js";
7
7
  import { DropdownPopover as X } from "./DropdownPopover/index.js";
8
8
  import { getSelectedOptionsAsText as Y } from "./OpenedDropdown/utils/iterationOnOptions.js";
9
9
  import { Input as Z } from "../input/Input.js";
10
- function O() {
10
+ function W() {
11
11
  }
12
- const $ = ({
13
- placeHolder: a,
12
+ const _ = ({
13
+ placeHolder: r,
14
14
  size: E,
15
- onSelect: M,
16
- defaultOptions: o,
17
- disabled: v,
18
- noErrorHint: k,
15
+ onSelect: w,
16
+ defaultOptions: s,
17
+ disabled: u,
18
+ noErrorHint: M,
19
19
  placeHolderHeight: x,
20
- showPlaceholderWhenSelected: w = !1,
21
- inputStyle: A = {},
22
- inputType: S = "default",
23
- onDeleteChip: R,
24
- truncatedText: T,
25
- showLeadingIconInPlaceholder: L = !1,
20
+ showPlaceholderWhenSelected: O = !1,
21
+ inputStyle: k = {},
22
+ inputType: v = "default",
23
+ onDeleteChip: T,
24
+ truncatedText: A,
25
+ showLeadingIconInPlaceholder: R = !1,
26
26
  showTrailingIconPlaceholder: V = !1,
27
27
  showLabelsOnMoreHover: j = !1,
28
28
  value: l,
29
- showSelected: h = !1,
29
+ showSelected: f = !1,
30
30
  ...t
31
31
  }) => {
32
- const [f, z] = g(!1), [y, I] = g(!1), i = E ?? "default", F = q(), [s, c] = g(
33
- o ?? []
32
+ const [y, z] = g(!1), [F, p] = g(!1), i = E ?? "default", L = G(), [o, a] = g(
33
+ s ?? []
34
34
  );
35
- function B(e) {
36
- Array.isArray(e) ? c([...e]) : c([e]), M?.(e);
35
+ function N(e) {
36
+ Array.isArray(e) ? a([...e]) : a([e]), w?.(e);
37
37
  }
38
- W(() => {
38
+ b(() => {
39
39
  const e = [];
40
- t?.options?.forEach((d) => {
41
- d.options ? d.options.forEach((u) => {
42
- u.selected && e.push({
43
- ...u,
44
- label: u.label
40
+ t?.options?.forEach((c) => {
41
+ c.options ? c.options.forEach((m) => {
42
+ m.selected && e.push({
43
+ ...m,
44
+ label: m.label
45
45
  });
46
- }) : d.selected && e.push(d);
47
- }), c([...e]);
48
- }, [t.options]), W(() => {
49
- o && c([...o]);
50
- }, [o]);
51
- const N = Y(s), U = w ? a : N ?? a ?? "Select an option", m = t.buttonWidth, C = m ?? t.width ?? "100%", _ = t.dropdownWidth ?? C;
52
- return /* @__PURE__ */ n(b, { children: /* @__PURE__ */ n(
46
+ }) : c.selected && e.push(c);
47
+ }), a([...e]);
48
+ }, [t.options]), b(() => {
49
+ s && a([...s]);
50
+ }, [s]);
51
+ const U = Y(o), q = O ? r : U ?? r ?? "Select an option", h = t.buttonWidth, I = h ?? t.width ?? "100%", B = t.dropdownWidth ?? I;
52
+ return /* @__PURE__ */ n(S, { children: /* @__PURE__ */ n(
53
53
  K.Provider,
54
54
  {
55
55
  value: {
56
56
  InputWrapper: {
57
57
  height: x || (i === "x-small" ? 24 : i === "small" ? 32 : 48),
58
- width: C,
59
- ...m ? { maxWidth: m } : {},
58
+ width: I,
59
+ ...h ? { maxWidth: h } : {},
60
60
  zIndex: 1,
61
61
  cursor: "pointer",
62
62
  padding: i === "x-small" ? "4px 8px" : "6px 8px",
63
- backgroundColor: t.version === "3.0" ? f || y ? r.surface.hovered : r.surface.standard : h && l !== void 0 ? G.positive[100] : y ? r.background.inactive : r.surface.standard,
63
+ backgroundColor: f && l !== void 0 ? d.background.positive.light : F ? "#E0E0E0" : "#ffffff",
64
64
  transition: "background-color 0.3s ease",
65
- ...A
65
+ ...k
66
66
  },
67
67
  input: {
68
68
  minHeight: "100%",
69
69
  maxWidth: "100%",
70
- color: h && l !== void 0 ? r.content.positive : "inherit"
70
+ color: f && l !== void 0 ? d.content.positive : "inherit"
71
71
  }
72
72
  },
73
73
  children: /* @__PURE__ */ n(
74
74
  "div",
75
75
  {
76
- onMouseEnter: () => I(!0),
77
- onMouseLeave: () => I(!1),
76
+ onMouseEnter: () => p(!0),
77
+ onMouseLeave: () => p(!1),
78
78
  style: t.width ? { width: t.width } : void 0,
79
- children: /* @__PURE__ */ p(
79
+ children: /* @__PURE__ */ C(
80
80
  X,
81
81
  {
82
82
  "data-test": t["data-test"],
83
- ref: F,
84
- onSelect: B,
85
- disabled: v,
83
+ ref: L,
84
+ onSelect: N,
85
+ disabled: u,
86
86
  onDropdownVisbilityChange: (e) => z(e),
87
87
  ...t,
88
- width: _,
88
+ width: B,
89
89
  children: [
90
- S == "default" && /* @__PURE__ */ n(
90
+ v == "default" && /* @__PURE__ */ n(
91
91
  Z,
92
92
  {
93
93
  version: t.version,
94
- noErrorHint: k,
95
- state: v ? "disabled" : "none",
96
- value: l === void 0 ? U : l,
94
+ noErrorHint: M,
95
+ state: u ? "disabled" : "none",
96
+ value: l === void 0 ? q : l,
97
97
  errorMessage: t.error,
98
98
  variant: i,
99
- placeholder: a ?? "Select an option",
100
- onChangeText: O,
101
- leftIcon: L && s[0]?.leadingIcon ? {
102
- icon: () => /* @__PURE__ */ n(b, { children: s[0]?.leadingIcon })
99
+ placeholder: r ?? "Select an option",
100
+ onChangeText: W,
101
+ leftIcon: R && o[0]?.leadingIcon ? {
102
+ icon: () => /* @__PURE__ */ n(S, { children: o[0]?.leadingIcon })
103
103
  } : void 0,
104
104
  rightIcon: {
105
- icon: () => /* @__PURE__ */ p(
105
+ icon: () => /* @__PURE__ */ C(
106
106
  "div",
107
107
  {
108
108
  style: {
109
109
  display: "flex"
110
110
  },
111
111
  children: [
112
- V && s[0]?.trailingIcon,
112
+ V && o[0]?.trailingIcon,
113
113
  /* @__PURE__ */ n(
114
114
  J,
115
115
  {
116
116
  style: {
117
- transform: f ? "rotate(180deg)" : "rotate(0deg)"
117
+ transform: y ? "rotate(180deg)" : "rotate(0deg)"
118
118
  },
119
- onClick: O,
119
+ onClick: W,
120
120
  width: i === "x-small" ? 16 : i === "small" ? 20 : 24,
121
121
  height: i === "x-small" ? 16 : i === "small" ? 20 : 24,
122
- color: h ? r.content.positive : r.content.primary
122
+ color: f ? d.content.positive : d.content.primary
123
123
  }
124
124
  )
125
125
  ]
126
126
  }
127
127
  )
128
128
  },
129
- truncateText: T ?? !0
129
+ truncateText: A ?? !0
130
130
  }
131
131
  ),
132
- S == "chip" && /* @__PURE__ */ n(
132
+ v == "chip" && /* @__PURE__ */ n(
133
133
  Q,
134
134
  {
135
- placeholder: a ?? "Select options",
136
- chips: s,
135
+ placeholder: r ?? "Select options",
136
+ chips: o,
137
137
  onDeleteChip: (e) => {
138
- R?.(e);
138
+ T?.(e);
139
139
  },
140
140
  errorMessage: t.error,
141
- isDropdownOpened: f,
141
+ isDropdownOpened: y,
142
142
  sizeToUse: i,
143
143
  containerStyle: {
144
144
  width: t.width ?? "100%",
@@ -155,8 +155,8 @@ const $ = ({
155
155
  }
156
156
  ) });
157
157
  };
158
- $.displayName = "Dropdown";
158
+ _.displayName = "Dropdown";
159
159
  export {
160
- $ as Dropdown
160
+ _ as Dropdown
161
161
  };
162
162
  //# sourceMappingURL=Dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../../../src/components/dropdown/Dropdown.tsx"],"sourcesContent":["import React, { Ref, useEffect, useRef, useState } from 'react';\nimport { BASE_COLORS, COLORS } from '@src/constants/Theme';\nimport DownIcon from '../../assets/icons/chevronDown.svg';\nimport { Input } from '../input';\nimport { InputStyleContext } from '../input/context/InputStyleProvider';\nimport ChipInput from './ChipInput';\nimport { DropdownPopover } from './DropdownPopover';\nimport { getSelectedOptionsAsText } from './OpenedDropdown/utils/iterationOnOptions';\nimport {\n\tDropdownOption,\n\tGroupedOption,\n\tOpenDropdownProps,\n\tSingleOption,\n} from './type';\n\nexport type DropdownProps = OpenDropdownProps & {\n\tplaceHolder?: string;\n\tsize?: 'default' | 'small' | 'x-small';\n\tdisabled?: boolean;\n\tnoErrorHint?: boolean;\n\tbuttonWidth?: string;\n\tplaceHolderHeight?: string;\n\tshowPlaceholderWhenSelected?: boolean;\n\tinputStyle?: React.CSSProperties;\n\tinputType?: 'chip' | 'default';\n\tonDeleteChip?: (chip: SingleOption) => void;\n\ttruncatedText?: boolean;\n\t'data-test'?: string;\n\tshowLeadingIconInPlaceholder?: boolean;\n\tshowTrailingIconPlaceholder?: boolean;\n\tshowLabelsOnMoreHover?: boolean;\n\tbackgroundColor?: string;\n\tvalue?: string;\n\tshowSelected?: boolean;\n};\n\nfunction noop() {\n\t/** empty */\n}\n\nexport const Dropdown: React.FC<DropdownProps> = ({\n\tplaceHolder,\n\tsize,\n\tonSelect,\n\tdefaultOptions,\n\tdisabled,\n\tnoErrorHint,\n\tplaceHolderHeight,\n\tshowPlaceholderWhenSelected = false,\n\tinputStyle = {},\n\tinputType = 'default',\n\tonDeleteChip,\n\ttruncatedText,\n\tshowLeadingIconInPlaceholder = false,\n\tshowTrailingIconPlaceholder = false,\n\tshowLabelsOnMoreHover = false,\n\tvalue,\n\tshowSelected = false,\n\t...openDropdownProps\n}) => {\n\tconst [isDropdownOpened, setDropdownOpenFlag] = useState(false);\n\tconst [isHovering, setIsHovering] = useState(false);\n\tconst sizeToUse = size ?? 'default';\n\tconst dropdownVisibilityRef = useRef<{\n\t\topenDropdown: boolean;\n\t}>();\n\tconst [selectedOption, setSelectedOption] = useState<DropdownOption[]>(\n\t\tdefaultOptions ?? [],\n\t);\n\tfunction handleSelection(option: DropdownOption | DropdownOption[]) {\n\t\tif (Array.isArray(option)) {\n\t\t\tsetSelectedOption([...option]);\n\t\t} else {\n\t\t\tsetSelectedOption([...[option]]);\n\t\t}\n\t\tonSelect?.(option);\n\t}\n\n\tuseEffect(() => {\n\t\tconst flatSelectedOption: SingleOption[] = [];\n\t\topenDropdownProps?.options?.forEach((option) => {\n\t\t\tif ((option as GroupedOption).options) {\n\t\t\t\t(option as GroupedOption).options.forEach((op) => {\n\t\t\t\t\tif (op.selected) {\n\t\t\t\t\t\tflatSelectedOption.push({\n\t\t\t\t\t\t\t...op,\n\t\t\t\t\t\t\tlabel: op.label,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tif ((option as SingleOption).selected) {\n\t\t\t\t\tflatSelectedOption.push(option as SingleOption);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetSelectedOption([...flatSelectedOption]);\n\t}, [openDropdownProps.options]);\n\n\tuseEffect(() => {\n\t\tif (defaultOptions) {\n\t\t\tsetSelectedOption([...defaultOptions]);\n\t\t}\n\t}, [defaultOptions]);\n\n\tconst textVal = getSelectedOptionsAsText(selectedOption);\n\tconst displayText = showPlaceholderWhenSelected\n\t\t? placeHolder\n\t\t: textVal ?? placeHolder ?? 'Select an option';\n\n\tconst configuredMaxWidth = openDropdownProps.buttonWidth;\n\n\t// Shared width for the input wrapper and dropdown popover\n\tconst inputWidth = configuredMaxWidth ?? openDropdownProps.width ?? '100%';\n\n\t// Width passed to dropdown popover — matches input box width\n\tconst dropdownWidth = openDropdownProps.dropdownWidth ?? inputWidth;\n\n\treturn (\n\t\t<>\n\t\t\t<InputStyleContext.Provider\n\t\t\t\tvalue={{\n\t\t\t\t\tInputWrapper: {\n\t\t\t\t\t\theight: placeHolderHeight\n\t\t\t\t\t\t\t? placeHolderHeight\n\t\t\t\t\t\t\t: sizeToUse === 'x-small'\n\t\t\t\t\t\t\t? 24\n\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t? 32\n\t\t\t\t\t\t\t: 48,\n\t\t\t\t\t\twidth: inputWidth,\n\t\t\t\t\t\t...(configuredMaxWidth ? { maxWidth: configuredMaxWidth } : {}),\n\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\tpadding: sizeToUse === 'x-small' ? '4px 8px' : '6px 8px',\n\t\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\t\topenDropdownProps.version === '3.0'\n\t\t\t\t\t\t\t\t? isDropdownOpened || isHovering\n\t\t\t\t\t\t\t\t\t? COLORS.surface.hovered\n\t\t\t\t\t\t\t\t\t: COLORS.surface.standard\n\t\t\t\t\t\t\t\t: showSelected && value !== undefined\n\t\t\t\t\t\t\t\t? BASE_COLORS.positive['100']\n\t\t\t\t\t\t\t\t: isHovering\n\t\t\t\t\t\t\t\t? COLORS.background.inactive\n\t\t\t\t\t\t\t\t: COLORS.surface.standard,\n\t\t\t\t\t\ttransition: 'background-color 0.3s ease',\n\t\t\t\t\t\t...inputStyle,\n\t\t\t\t\t},\n\t\t\t\t\tinput: {\n\t\t\t\t\t\tminHeight: '100%',\n\t\t\t\t\t\tmaxWidth: '100%',\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\tshowSelected && value !== undefined\n\t\t\t\t\t\t\t\t? COLORS.content.positive\n\t\t\t\t\t\t\t\t: 'inherit',\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tonMouseEnter={() => setIsHovering(true)}\n\t\t\t\t\tonMouseLeave={() => setIsHovering(false)}\n\t\t\t\t\tstyle={\n\t\t\t\t\t\topenDropdownProps.width\n\t\t\t\t\t\t\t? { width: openDropdownProps.width }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<DropdownPopover\n\t\t\t\t\t\tdata-test={openDropdownProps['data-test']}\n\t\t\t\t\t\tref={\n\t\t\t\t\t\t\tdropdownVisibilityRef as Ref<{\n\t\t\t\t\t\t\t\topenDropdown: boolean;\n\t\t\t\t\t\t\t}>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSelect={handleSelection}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tonDropdownVisbilityChange={(isOpen) => setDropdownOpenFlag(isOpen)}\n\t\t\t\t\t\t{...openDropdownProps}\n\t\t\t\t\t\twidth={dropdownWidth}\n\t\t\t\t\t>\n\t\t\t\t\t\t{inputType == 'default' && (\n\t\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t\tversion={openDropdownProps.version}\n\t\t\t\t\t\t\t\tnoErrorHint={noErrorHint}\n\t\t\t\t\t\t\t\tstate={disabled ? 'disabled' : 'none'}\n\t\t\t\t\t\t\t\tvalue={value === undefined ? displayText : value}\n\t\t\t\t\t\t\t\terrorMessage={openDropdownProps.error}\n\t\t\t\t\t\t\t\tvariant={sizeToUse}\n\t\t\t\t\t\t\t\tplaceholder={placeHolder ?? 'Select an option'}\n\t\t\t\t\t\t\t\tonChangeText={noop}\n\t\t\t\t\t\t\t\tleftIcon={\n\t\t\t\t\t\t\t\t\tshowLeadingIconInPlaceholder && selectedOption[0]?.leadingIcon\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\ticon: () => <>{selectedOption[0]?.leadingIcon}</>,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trightIcon={{\n\t\t\t\t\t\t\t\t\ticon: () => (\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{showTrailingIconPlaceholder &&\n\t\t\t\t\t\t\t\t\t\t\t\t(selectedOption[0] as SingleOption)?.trailingIcon}\n\t\t\t\t\t\t\t\t\t\t\t<DownIcon\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\t\t\ttransform: isDropdownOpened\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'rotate(180deg)'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'rotate(0deg)',\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={noop}\n\t\t\t\t\t\t\t\t\t\t\t\twidth={\n\t\t\t\t\t\t\t\t\t\t\t\t\tsizeToUse === 'x-small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 16\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 20\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 24\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\theight={\n\t\t\t\t\t\t\t\t\t\t\t\t\tsizeToUse === 'x-small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 16\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 20\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 24\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tcolor={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSelected\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? COLORS.content.positive\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: COLORS.content.primary\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\ttruncateText={truncatedText ?? true}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{inputType == 'chip' && (\n\t\t\t\t\t\t\t<ChipInput\n\t\t\t\t\t\t\t\tplaceholder={placeHolder ?? 'Select options'}\n\t\t\t\t\t\t\t\tchips={selectedOption as SingleOption[]}\n\t\t\t\t\t\t\t\tonDeleteChip={(chip) => {\n\t\t\t\t\t\t\t\t\tonDeleteChip?.(chip);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\terrorMessage={openDropdownProps.error}\n\t\t\t\t\t\t\t\tisDropdownOpened={isDropdownOpened}\n\t\t\t\t\t\t\t\tsizeToUse={sizeToUse}\n\t\t\t\t\t\t\t\tcontainerStyle={{\n\t\t\t\t\t\t\t\t\twidth: openDropdownProps.width ?? '100%',\n\t\t\t\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tshowLabelsOnMoreHover={showLabelsOnMoreHover}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</DropdownPopover>\n\t\t\t\t</div>\n\t\t\t</InputStyleContext.Provider>\n\t\t</>\n\t);\n};\n\nDropdown.displayName = 'Dropdown';\n"],"names":["noop","Dropdown","placeHolder","size","onSelect","defaultOptions","disabled","noErrorHint","placeHolderHeight","showPlaceholderWhenSelected","inputStyle","inputType","onDeleteChip","truncatedText","showLeadingIconInPlaceholder","showTrailingIconPlaceholder","showLabelsOnMoreHover","value","showSelected","openDropdownProps","isDropdownOpened","setDropdownOpenFlag","useState","isHovering","setIsHovering","sizeToUse","dropdownVisibilityRef","useRef","selectedOption","setSelectedOption","handleSelection","option","useEffect","flatSelectedOption","op","textVal","getSelectedOptionsAsText","displayText","configuredMaxWidth","inputWidth","dropdownWidth","jsx","Fragment","InputStyleContext","COLORS","BASE_COLORS","jsxs","DropdownPopover","isOpen","Input","DownIcon","ChipInput","chip"],"mappings":";;;;;;;;;AAoCA,SAASA,IAAO;AAEhB;AAEO,MAAMC,IAAoC,CAAC;AAAA,EACjD,aAAAC;AAAA,EACA,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,6BAAAC,IAA8B;AAAA,EAC9B,YAAAC,IAAa,CAAA;AAAA,EACb,WAAAC,IAAY;AAAA,EACZ,cAAAC;AAAA,EACA,eAAAC;AAAA,EACA,8BAAAC,IAA+B;AAAA,EAC/B,6BAAAC,IAA8B;AAAA,EAC9B,uBAAAC,IAAwB;AAAA,EACxB,OAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,GAAGC;AACJ,MAAM;AACL,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAS,EAAK,GACxD,CAACC,GAAYC,CAAa,IAAIF,EAAS,EAAK,GAC5CG,IAAYtB,KAAQ,WACpBuB,IAAwBC,EAAA,GAGxB,CAACC,GAAgBC,CAAiB,IAAIP;AAAA,IAC3CjB,KAAkB,CAAA;AAAA,EAAC;AAEpB,WAASyB,EAAgBC,GAA2C;AACnE,IAAI,MAAM,QAAQA,CAAM,IACvBF,EAAkB,CAAC,GAAGE,CAAM,CAAC,IAE7BF,EAAkB,CAAKE,CAAO,CAAC,GAEhC3B,IAAW2B,CAAM;AAAA,EAClB;AAEA,EAAAC,EAAU,MAAM;AACf,UAAMC,IAAqC,CAAA;AAC3C,IAAAd,GAAmB,SAAS,QAAQ,CAACY,MAAW;AAC/C,MAAKA,EAAyB,UAC5BA,EAAyB,QAAQ,QAAQ,CAACG,MAAO;AACjD,QAAIA,EAAG,YACND,EAAmB,KAAK;AAAA,UACvB,GAAGC;AAAA,UACH,OAAOA,EAAG;AAAA,QAAA,CACV;AAAA,MAEH,CAAC,IAEIH,EAAwB,YAC5BE,EAAmB,KAAKF,CAAsB;AAAA,IAGjD,CAAC,GAEDF,EAAkB,CAAC,GAAGI,CAAkB,CAAC;AAAA,EAC1C,GAAG,CAACd,EAAkB,OAAO,CAAC,GAE9Ba,EAAU,MAAM;AACf,IAAI3B,KACHwB,EAAkB,CAAC,GAAGxB,CAAc,CAAC;AAAA,EAEvC,GAAG,CAACA,CAAc,CAAC;AAEnB,QAAM8B,IAAUC,EAAyBR,CAAc,GACjDS,IAAc5B,IACjBP,IACAiC,KAAWjC,KAAe,oBAEvBoC,IAAqBnB,EAAkB,aAGvCoB,IAAaD,KAAsBnB,EAAkB,SAAS,QAG9DqB,IAAgBrB,EAAkB,iBAAiBoB;AAEzD,SACC,gBAAAE,EAAAC,GAAA,EACC,UAAA,gBAAAD;AAAA,IAACE,EAAkB;AAAA,IAAlB;AAAA,MACA,OAAO;AAAA,QACN,cAAc;AAAA,UACb,QAAQnC,MAELiB,MAAc,YACd,KACAA,MAAc,UACd,KACA;AAAA,UACH,OAAOc;AAAA,UACP,GAAID,IAAqB,EAAE,UAAUA,EAAA,IAAuB,CAAA;AAAA,UAC5D,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR,SAASb,MAAc,YAAY,YAAY;AAAA,UAC/C,iBACCN,EAAkB,YAAY,QAC3BC,KAAoBG,IACnBqB,EAAO,QAAQ,UACfA,EAAO,QAAQ,WAChB1B,KAAgBD,MAAU,SAC1B4B,EAAY,SAAS,GAAK,IAC1BtB,IACAqB,EAAO,WAAW,WAClBA,EAAO,QAAQ;AAAA,UACnB,YAAY;AAAA,UACZ,GAAGlC;AAAA,QAAA;AAAA,QAEJ,OAAO;AAAA,UACN,WAAW;AAAA,UACX,UAAU;AAAA,UACV,OACCQ,KAAgBD,MAAU,SACvB2B,EAAO,QAAQ,WACf;AAAA,QAAA;AAAA,MACL;AAAA,MAGD,UAAA,gBAAAH;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,cAAc,MAAMjB,EAAc,EAAI;AAAA,UACtC,cAAc,MAAMA,EAAc,EAAK;AAAA,UACvC,OACCL,EAAkB,QACf,EAAE,OAAOA,EAAkB,UAC3B;AAAA,UAGJ,UAAA,gBAAA2B;AAAA,YAACC;AAAA,YAAA;AAAA,cACA,aAAW5B,EAAkB,WAAW;AAAA,cACxC,KACCO;AAAA,cAID,UAAUI;AAAA,cACV,UAAAxB;AAAA,cACA,2BAA2B,CAAC0C,MAAW3B,EAAoB2B,CAAM;AAAA,cAChE,GAAG7B;AAAA,cACJ,OAAOqB;AAAA,cAEN,UAAA;AAAA,gBAAA7B,KAAa,aACb,gBAAA8B;AAAA,kBAACQ;AAAA,kBAAA;AAAA,oBACA,SAAS9B,EAAkB;AAAA,oBAC3B,aAAAZ;AAAA,oBACA,OAAOD,IAAW,aAAa;AAAA,oBAC/B,OAAOW,MAAU,SAAYoB,IAAcpB;AAAA,oBAC3C,cAAcE,EAAkB;AAAA,oBAChC,SAASM;AAAA,oBACT,aAAavB,KAAe;AAAA,oBAC5B,cAAcF;AAAA,oBACd,UACCc,KAAgCc,EAAe,CAAC,GAAG,cAChD;AAAA,sBACA,MAAM,MAAM,gBAAAa,EAAAC,GAAA,EAAG,UAAAd,EAAe,CAAC,GAAG,YAAA,CAAY;AAAA,oBAAA,IAE9C;AAAA,oBAEJ,WAAW;AAAA,sBACV,MAAM,MACL,gBAAAkB;AAAA,wBAAC;AAAA,wBAAA;AAAA,0BACA,OAAO;AAAA,4BACN,SAAS;AAAA,0BAAA;AAAA,0BAGT,UAAA;AAAA,4BAAA/B,KACCa,EAAe,CAAC,GAAoB;AAAA,4BACtC,gBAAAa;AAAA,8BAACS;AAAAA,8BAAA;AAAA,gCACA,OAAO;AAAA,kCACN,WAAW9B,IACR,mBACA;AAAA,gCAAA;AAAA,gCAEJ,SAASpB;AAAA,gCACT,OACCyB,MAAc,YACX,KACAA,MAAc,UACd,KACA;AAAA,gCAEJ,QACCA,MAAc,YACX,KACAA,MAAc,UACd,KACA;AAAA,gCAEJ,OACCP,IACG0B,EAAO,QAAQ,WACfA,EAAO,QAAQ;AAAA,8BAAA;AAAA,4BAAA;AAAA,0BAEpB;AAAA,wBAAA;AAAA,sBAAA;AAAA,oBACD;AAAA,oBAGF,cAAc/B,KAAiB;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAGhCF,KAAa,UACb,gBAAA8B;AAAA,kBAACU;AAAA,kBAAA;AAAA,oBACA,aAAajD,KAAe;AAAA,oBAC5B,OAAO0B;AAAA,oBACP,cAAc,CAACwB,MAAS;AACvB,sBAAAxC,IAAewC,CAAI;AAAA,oBACpB;AAAA,oBACA,cAAcjC,EAAkB;AAAA,oBAChC,kBAAAC;AAAA,oBACA,WAAAK;AAAA,oBACA,gBAAgB;AAAA,sBACf,OAAON,EAAkB,SAAS;AAAA,sBAClC,QAAQ;AAAA,oBAAA;AAAA,oBAET,uBAAAH;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACD;AAAA,YAAA;AAAA,UAAA;AAAA,QAEF;AAAA,MAAA;AAAA,IACD;AAAA,EAAA,GAEF;AAEF;AAEAf,EAAS,cAAc;"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../../../src/components/dropdown/Dropdown.tsx"],"sourcesContent":["import React, { Ref, useEffect, useRef, useState } from 'react';\nimport { COLORS } from '@src/constants/Theme';\nimport DownIcon from '../../assets/icons/chevronDown.svg';\nimport { Input } from '../input';\nimport { InputStyleContext } from '../input/context/InputStyleProvider';\nimport ChipInput from './ChipInput';\nimport { DropdownPopover } from './DropdownPopover';\nimport { getSelectedOptionsAsText } from './OpenedDropdown/utils/iterationOnOptions';\nimport {\n\tDropdownOption,\n\tGroupedOption,\n\tOpenDropdownProps,\n\tSingleOption,\n} from './type';\n\nexport type DropdownProps = OpenDropdownProps & {\n\tplaceHolder?: string;\n\tsize?: 'default' | 'small' | 'x-small';\n\tdisabled?: boolean;\n\tnoErrorHint?: boolean;\n\tbuttonWidth?: string;\n\tplaceHolderHeight?: string;\n\tshowPlaceholderWhenSelected?: boolean;\n\tinputStyle?: React.CSSProperties;\n\tinputType?: 'chip' | 'default';\n\tonDeleteChip?: (chip: SingleOption) => void;\n\ttruncatedText?: boolean;\n\t'data-test'?: string;\n\tshowLeadingIconInPlaceholder?: boolean;\n\tshowTrailingIconPlaceholder?: boolean;\n\tshowLabelsOnMoreHover?: boolean;\n\tbackgroundColor?: string;\n\tvalue?: string;\n\tshowSelected?: boolean;\n};\n\nfunction noop() {\n\t/** empty */\n}\n\nexport const Dropdown: React.FC<DropdownProps> = ({\n\tplaceHolder,\n\tsize,\n\tonSelect,\n\tdefaultOptions,\n\tdisabled,\n\tnoErrorHint,\n\tplaceHolderHeight,\n\tshowPlaceholderWhenSelected = false,\n\tinputStyle = {},\n\tinputType = 'default',\n\tonDeleteChip,\n\ttruncatedText,\n\tshowLeadingIconInPlaceholder = false,\n\tshowTrailingIconPlaceholder = false,\n\tshowLabelsOnMoreHover = false,\n\tvalue,\n\tshowSelected = false,\n\t...openDropdownProps\n}) => {\n\tconst [isDropdownOpened, setDropdownOpenFlag] = useState(false);\n\tconst [isHovering, setIsHovering] = useState(false);\n\tconst sizeToUse = size ?? 'default';\n\tconst dropdownVisibilityRef = useRef<{\n\t\topenDropdown: boolean;\n\t}>();\n\tconst [selectedOption, setSelectedOption] = useState<DropdownOption[]>(\n\t\tdefaultOptions ?? [],\n\t);\n\tfunction handleSelection(option: DropdownOption | DropdownOption[]) {\n\t\tif (Array.isArray(option)) {\n\t\t\tsetSelectedOption([...option]);\n\t\t} else {\n\t\t\tsetSelectedOption([...[option]]);\n\t\t}\n\t\tonSelect?.(option);\n\t}\n\n\tuseEffect(() => {\n\t\tconst flatSelectedOption: SingleOption[] = [];\n\t\topenDropdownProps?.options?.forEach((option) => {\n\t\t\tif ((option as GroupedOption).options) {\n\t\t\t\t(option as GroupedOption).options.forEach((op) => {\n\t\t\t\t\tif (op.selected) {\n\t\t\t\t\t\tflatSelectedOption.push({\n\t\t\t\t\t\t\t...op,\n\t\t\t\t\t\t\tlabel: op.label,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tif ((option as SingleOption).selected) {\n\t\t\t\t\tflatSelectedOption.push(option as SingleOption);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetSelectedOption([...flatSelectedOption]);\n\t}, [openDropdownProps.options]);\n\n\tuseEffect(() => {\n\t\tif (defaultOptions) {\n\t\t\tsetSelectedOption([...defaultOptions]);\n\t\t}\n\t}, [defaultOptions]);\n\n\tconst textVal = getSelectedOptionsAsText(selectedOption);\n\tconst displayText = showPlaceholderWhenSelected\n\t\t? placeHolder\n\t\t: textVal ?? placeHolder ?? 'Select an option';\n\n\tconst configuredMaxWidth = openDropdownProps.buttonWidth;\n\n\t// Shared width for the input wrapper and dropdown popover\n\tconst inputWidth = configuredMaxWidth ?? openDropdownProps.width ?? '100%';\n\n\t// Width passed to dropdown popover — matches input box width\n\tconst dropdownWidth = openDropdownProps.dropdownWidth ?? inputWidth;\n\n\treturn (\n\t\t<>\n\t\t\t<InputStyleContext.Provider\n\t\t\t\tvalue={{\n\t\t\t\t\tInputWrapper: {\n\t\t\t\t\t\theight: placeHolderHeight\n\t\t\t\t\t\t\t? placeHolderHeight\n\t\t\t\t\t\t\t: sizeToUse === 'x-small'\n\t\t\t\t\t\t\t? 24\n\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t? 32\n\t\t\t\t\t\t\t: 48,\n\t\t\t\t\t\twidth: inputWidth,\n\t\t\t\t\t\t...(configuredMaxWidth ? { maxWidth: configuredMaxWidth } : {}),\n\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\tpadding: sizeToUse === 'x-small' ? '4px 8px' : '6px 8px',\n\t\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\t\tshowSelected && value !== undefined\n\t\t\t\t\t\t\t\t? COLORS.background.positive.light\n\t\t\t\t\t\t\t\t: isHovering\n\t\t\t\t\t\t\t\t? '#E0E0E0'\n\t\t\t\t\t\t\t\t: '#ffffff',\n\t\t\t\t\t\ttransition: 'background-color 0.3s ease',\n\t\t\t\t\t\t...inputStyle,\n\t\t\t\t\t},\n\t\t\t\t\tinput: {\n\t\t\t\t\t\tminHeight: '100%',\n\t\t\t\t\t\tmaxWidth: '100%',\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\tshowSelected && value !== undefined\n\t\t\t\t\t\t\t\t? COLORS.content.positive\n\t\t\t\t\t\t\t\t: 'inherit',\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tonMouseEnter={() => setIsHovering(true)}\n\t\t\t\t\tonMouseLeave={() => setIsHovering(false)}\n\t\t\t\t\tstyle={\n\t\t\t\t\t\topenDropdownProps.width\n\t\t\t\t\t\t\t? { width: openDropdownProps.width }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<DropdownPopover\n\t\t\t\t\t\tdata-test={openDropdownProps['data-test']}\n\t\t\t\t\t\tref={\n\t\t\t\t\t\t\tdropdownVisibilityRef as Ref<{\n\t\t\t\t\t\t\t\topenDropdown: boolean;\n\t\t\t\t\t\t\t}>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSelect={handleSelection}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tonDropdownVisbilityChange={(isOpen) => setDropdownOpenFlag(isOpen)}\n\t\t\t\t\t\t{...openDropdownProps}\n\t\t\t\t\t\twidth={dropdownWidth}\n\t\t\t\t\t>\n\t\t\t\t\t\t{inputType == 'default' && (\n\t\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t\tversion={openDropdownProps.version}\n\t\t\t\t\t\t\t\tnoErrorHint={noErrorHint}\n\t\t\t\t\t\t\t\tstate={disabled ? 'disabled' : 'none'}\n\t\t\t\t\t\t\t\tvalue={value === undefined ? displayText : value}\n\t\t\t\t\t\t\t\terrorMessage={openDropdownProps.error}\n\t\t\t\t\t\t\t\tvariant={sizeToUse}\n\t\t\t\t\t\t\t\tplaceholder={placeHolder ?? 'Select an option'}\n\t\t\t\t\t\t\t\tonChangeText={noop}\n\t\t\t\t\t\t\t\tleftIcon={\n\t\t\t\t\t\t\t\t\tshowLeadingIconInPlaceholder && selectedOption[0]?.leadingIcon\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\ticon: () => <>{selectedOption[0]?.leadingIcon}</>,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trightIcon={{\n\t\t\t\t\t\t\t\t\ticon: () => (\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{showTrailingIconPlaceholder &&\n\t\t\t\t\t\t\t\t\t\t\t\t(selectedOption[0] as SingleOption)?.trailingIcon}\n\t\t\t\t\t\t\t\t\t\t\t<DownIcon\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\t\t\ttransform: isDropdownOpened\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'rotate(180deg)'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'rotate(0deg)',\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={noop}\n\t\t\t\t\t\t\t\t\t\t\t\twidth={\n\t\t\t\t\t\t\t\t\t\t\t\t\tsizeToUse === 'x-small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 16\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 20\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 24\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\theight={\n\t\t\t\t\t\t\t\t\t\t\t\t\tsizeToUse === 'x-small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 16\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: sizeToUse === 'small'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 20\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 24\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tcolor={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshowSelected\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? COLORS.content.positive\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: COLORS.content.primary\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\ttruncateText={truncatedText ?? true}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{inputType == 'chip' && (\n\t\t\t\t\t\t\t<ChipInput\n\t\t\t\t\t\t\t\tplaceholder={placeHolder ?? 'Select options'}\n\t\t\t\t\t\t\t\tchips={selectedOption as SingleOption[]}\n\t\t\t\t\t\t\t\tonDeleteChip={(chip) => {\n\t\t\t\t\t\t\t\t\tonDeleteChip?.(chip);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\terrorMessage={openDropdownProps.error}\n\t\t\t\t\t\t\t\tisDropdownOpened={isDropdownOpened}\n\t\t\t\t\t\t\t\tsizeToUse={sizeToUse}\n\t\t\t\t\t\t\t\tcontainerStyle={{\n\t\t\t\t\t\t\t\t\twidth: openDropdownProps.width ?? '100%',\n\t\t\t\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tshowLabelsOnMoreHover={showLabelsOnMoreHover}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</DropdownPopover>\n\t\t\t\t</div>\n\t\t\t</InputStyleContext.Provider>\n\t\t</>\n\t);\n};\n\nDropdown.displayName = 'Dropdown';\n"],"names":["noop","Dropdown","placeHolder","size","onSelect","defaultOptions","disabled","noErrorHint","placeHolderHeight","showPlaceholderWhenSelected","inputStyle","inputType","onDeleteChip","truncatedText","showLeadingIconInPlaceholder","showTrailingIconPlaceholder","showLabelsOnMoreHover","value","showSelected","openDropdownProps","isDropdownOpened","setDropdownOpenFlag","useState","isHovering","setIsHovering","sizeToUse","dropdownVisibilityRef","useRef","selectedOption","setSelectedOption","handleSelection","option","useEffect","flatSelectedOption","op","textVal","getSelectedOptionsAsText","displayText","configuredMaxWidth","inputWidth","dropdownWidth","jsx","Fragment","InputStyleContext","COLORS","jsxs","DropdownPopover","isOpen","Input","DownIcon","ChipInput","chip"],"mappings":"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"}
@@ -1,102 +1,89 @@
1
- import { jsx as a, Fragment as b, jsxs as v } from "react/jsx-runtime";
2
- import j, { useState as s, useRef as A, useImperativeHandle as _, useEffect as g } from "react";
3
- import { usePopper as F } from "react-popper";
4
- import { COLORS as h } from "../../../constants/Theme.js";
5
- import { OverLapAbs as N, OpenDropdownContainer as T } from "../Common.styled.js";
6
- import { Tooltip as V } from "../../tooltips/Tooltip.js";
7
- import { DropShadow as Z } from "../../dropShadow/DropShadow.js";
8
- import { OpenedDropdown as q } from "../OpenedDropdown/components/OpennedDropdown.js";
9
- const w = j.forwardRef(
1
+ import { jsx as l, Fragment as o, jsxs as v } from "react/jsx-runtime";
2
+ import A, { useState as n, useRef as H, useImperativeHandle as M, useEffect as b } from "react";
3
+ import { usePopper as _ } from "react-popper";
4
+ import { OverLapAbs as k, OpenDropdownContainer as F } from "../Common.styled.js";
5
+ import { Tooltip as L } from "../../tooltips/Tooltip.js";
6
+ import { DropShadow as N } from "../../dropShadow/DropShadow.js";
7
+ import { OpenedDropdown as T } from "../OpenedDropdown/components/OpennedDropdown.js";
8
+ const V = A.forwardRef(
10
9
  ({
11
- children: d,
12
- onDropdownVisbilityChange: S,
13
- version: l = "1.0",
14
- tooltipContent: c,
15
- tooltipDirection: E,
16
- showTooltipArrow: R,
17
- isChildLoading: y,
18
- forceOpen: f,
10
+ children: c,
11
+ onDropdownVisbilityChange: h,
12
+ version: r = "1.0",
13
+ tooltipContent: f,
14
+ tooltipDirection: y,
15
+ showTooltipArrow: E,
16
+ isChildLoading: S,
17
+ forceOpen: d,
19
18
  ...e
20
- }, x) => {
21
- const n = x, [t, i] = s(!1), [C, o] = s(!1), [O, z] = s(null), [H, I] = s(null), u = A(null), { styles: M, attributes: k } = F(O, H, {
19
+ }, R) => {
20
+ const s = R, [t, a] = n(!1), [g, x] = n(null), [C, O] = n(null), m = H(null), { styles: z, attributes: I } = _(g, C, {
22
21
  placement: e.placement,
23
22
  strategy: e.strategy
24
- }), L = (r) => {
25
- l === "2.0" && e.isMultiSelect && r && e.onSelect?.([...r]), i(!1), e?.onClose?.();
23
+ }), j = (i) => {
24
+ r === "2.0" && e.isMultiSelect && i && e.onSelect?.([...i]), a(!1), e?.onClose?.();
26
25
  };
27
- _(
28
- n,
26
+ M(
27
+ s,
29
28
  () => ({
30
29
  openDropdown: t
31
30
  }),
32
31
  []
33
- ), g(() => {
34
- n?.current && (n.current.openDropdown = t);
35
- }, [t]), g(() => {
36
- S?.(t);
32
+ ), b(() => {
33
+ s?.current && (s.current.openDropdown = t);
34
+ }, [t]), b(() => {
35
+ h?.(t);
37
36
  }, [t]);
38
- const m = () => /* @__PURE__ */ v(b, { children: [
37
+ const u = () => /* @__PURE__ */ v(o, { children: [
39
38
  /* @__PURE__ */ v(
40
39
  "div",
41
40
  {
42
- style: {
43
- position: "relative",
44
- ...l === "3.0" && {
45
- backgroundColor: t || C ? h.surface.hovered : h.surface.standard,
46
- transition: "background-color 0.3s ease",
47
- borderRadius: 4
48
- }
49
- },
50
- ref: z,
51
- onMouseEnter: l === "3.0" ? () => o(!0) : void 0,
52
- onMouseLeave: l === "3.0" ? () => o(!1) : void 0,
41
+ style: { position: "relative" },
42
+ ref: x,
53
43
  children: [
54
- /* @__PURE__ */ a(
55
- N,
44
+ /* @__PURE__ */ l(
45
+ k,
56
46
  {
57
- ref: u,
47
+ ref: m,
58
48
  allowEvents: e.allowEvents,
59
49
  disabled: e.disabled,
60
- onClick: (r) => {
61
- e.onDropdownOpen?.(), t ? (i(!1), r.preventDefault()) : e.disabled || i(!0);
50
+ onClick: (i) => {
51
+ e.onDropdownOpen?.(), t ? (a(!1), i.preventDefault()) : e.disabled || a(!0);
62
52
  },
63
- isChildLoading: y,
64
- children: e.allowEvents ? d : null
53
+ isChildLoading: S,
54
+ children: e.allowEvents ? c : null
65
55
  }
66
56
  ),
67
- e.allowEvents ? null : d
57
+ e.allowEvents ? null : c
68
58
  ]
69
59
  }
70
60
  ),
71
- (t || f) && /* @__PURE__ */ a(
72
- T,
61
+ (t || d) && /* @__PURE__ */ l(
62
+ F,
73
63
  {
74
- ref: I,
64
+ ref: O,
75
65
  style: {
76
- ...M.popper,
66
+ ...z.popper,
77
67
  zIndex: e.dropdownZIndex ?? 3
78
68
  },
79
- ...k.popper,
69
+ ...I.popper,
80
70
  "data-test": e["data-test"],
81
- children: /* @__PURE__ */ a(
82
- Z,
71
+ children: /* @__PURE__ */ l(
72
+ N,
83
73
  {
84
74
  level: "z2",
85
75
  position: "down",
86
- style: {
87
- borderRadius: l === "3.0" ? 4 : 8,
88
- boxShadow: "0 2px 8px 0 rgba(0, 0, 0, 0.12)"
89
- },
90
- children: /* @__PURE__ */ a(
91
- q,
76
+ style: { borderRadius: 8 },
77
+ children: /* @__PURE__ */ l(
78
+ T,
92
79
  {
93
80
  ...e,
94
- onSelect: (r) => {
95
- l === "2.0" && e.isMultiSelect || (e.onSelect?.(r), i(!1));
81
+ onSelect: (i) => {
82
+ r === "2.0" && e.isMultiSelect || (e.onSelect?.(i), a(!1));
96
83
  },
97
- onClose: L,
98
- version: l,
99
- headerRef: u,
84
+ onClose: j,
85
+ version: r,
86
+ headerRef: m,
100
87
  zeroState: e?.zeroState,
101
88
  isDraggable: e.isDraggable,
102
89
  onOptionsReorder: e.onOptionsReorder
@@ -107,19 +94,19 @@ const w = j.forwardRef(
107
94
  }
108
95
  )
109
96
  ] });
110
- return /* @__PURE__ */ a(b, { children: !t && !f && c !== void 0 ? /* @__PURE__ */ a(
111
- V,
97
+ return /* @__PURE__ */ l(o, { children: !t && !d && f !== void 0 ? /* @__PURE__ */ l(
98
+ L,
112
99
  {
113
- body: c,
114
- placement: E,
115
- hideArrow: !R,
116
- children: /* @__PURE__ */ a("div", { "data-test": e["data-test"], children: m() })
100
+ body: f,
101
+ placement: y,
102
+ hideArrow: !E,
103
+ children: /* @__PURE__ */ l("div", { "data-test": e["data-test"], children: u() })
117
104
  }
118
- ) : m() });
105
+ ) : u() });
119
106
  }
120
107
  );
121
- w.displayName = "DropdownPopover";
108
+ V.displayName = "DropdownPopover";
122
109
  export {
123
- w as DropdownPopover
110
+ V as DropdownPopover
124
111
  };
125
112
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/dropdown/DropdownPopover/index.tsx"],"sourcesContent":["import React, {\n\tLegacyRef,\n\tRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { usePopper } from 'react-popper';\nimport { DropShadow } from '@src/components/dropShadow';\nimport { Placement, Tooltip } from '@src/components/tooltips';\nimport { COLORS } from '@src/constants/Theme';\nimport { OpenDropdownContainer, OverLapAbs } from '../Common.styled';\nimport { OpenedDropdown } from '../OpenedDropdown';\nimport { OpenDropdownProps } from '../type';\n\ntype DropdownProps = OpenDropdownProps & {\n\tisLoading?: boolean;\n\tchildren?: React.ReactNode;\n\tdisabled?: boolean;\n\tonDropdownOpen?: () => void;\n\tonDropdownVisbilityChange?: (isOpen: boolean) => void;\n\ttooltipContent?: string;\n\ttooltipDirection?: Placement;\n\tshowTooltipArrow?: boolean;\n\tallowEvents?: boolean;\n\t'data-test'?: string;\n\tisChildLoading?: boolean;\n\t/**\n\t * If true, forces the dropdown to remain open regardless of user interaction or internal state.\n\t * This prop overrides the internal openDropdown state, ensuring the dropdown stays open.\n\t * Use this prop when you need to programmatically control the dropdown's visibility from a parent component.\n\t */\n\tforceOpen?: boolean;\n};\n\nexport const DropdownPopover = React.forwardRef<\n\t{\n\t\topenDropdown: boolean;\n\t},\n\tDropdownProps\n>(\n\t(\n\t\t{\n\t\t\tchildren,\n\t\t\tonDropdownVisbilityChange,\n\t\t\tversion = '1.0',\n\t\t\ttooltipContent,\n\t\t\ttooltipDirection,\n\t\t\tshowTooltipArrow,\n\t\t\tisChildLoading,\n\t\t\tforceOpen,\n\t\t\t...openDropdownProps\n\t\t},\n\t\tunTypedRef,\n\t) => {\n\t\tconst ref = unTypedRef as React.RefObject<{ openDropdown: boolean }>;\n\t\tconst [openDropdown, setDropdownVisibility] = useState(false);\n\t\tconst [isHovering, setIsHovering] = useState(false);\n\t\tconst [referenceElement, setReferenceElement] = useState(null);\n\t\tconst [popperElement, setPopperElement] = useState(null);\n\t\tconst headerRef = useRef(null);\n\n\t\tconst { styles, attributes } = usePopper(referenceElement, popperElement, {\n\t\t\tplacement: openDropdownProps.placement,\n\t\t\tstrategy: openDropdownProps.strategy,\n\t\t});\n\n\t\tconst onCloseHandle = (data) => {\n\t\t\tif (version === '2.0' && openDropdownProps.isMultiSelect && data) {\n\t\t\t\topenDropdownProps.onSelect?.([...data]);\n\t\t\t}\n\t\t\tsetDropdownVisibility(false);\n\t\t\topenDropdownProps?.onClose?.();\n\t\t};\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => {\n\t\t\t\treturn {\n\t\t\t\t\topenDropdown: openDropdown,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tif (ref?.current) ref.current.openDropdown = openDropdown;\n\t\t}, [openDropdown]);\n\n\t\tuseEffect(() => {\n\t\t\tonDropdownVisbilityChange?.(openDropdown);\n\t\t}, [openDropdown]);\n\n\t\tconst dropDownComponent = () => {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\t\t...(version === '3.0' && {\n\t\t\t\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\t\t\t\topenDropdown || isHovering\n\t\t\t\t\t\t\t\t\t\t? COLORS.surface.hovered\n\t\t\t\t\t\t\t\t\t\t: COLORS.surface.standard,\n\t\t\t\t\t\t\t\ttransition: 'background-color 0.3s ease',\n\t\t\t\t\t\t\t\tborderRadius: 4,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t}}\n\t\t\t\t\t\t/** This assigment is mentioned as per react-popper's docs, so typecasting */\n\t\t\t\t\t\tref={setReferenceElement as LegacyRef<HTMLDivElement>}\n\t\t\t\t\t\tonMouseEnter={\n\t\t\t\t\t\t\tversion === '3.0' ? () => setIsHovering(true) : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonMouseLeave={\n\t\t\t\t\t\t\tversion === '3.0' ? () => setIsHovering(false) : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<OverLapAbs\n\t\t\t\t\t\t\tref={headerRef}\n\t\t\t\t\t\t\tallowEvents={openDropdownProps.allowEvents}\n\t\t\t\t\t\t\tdisabled={openDropdownProps.disabled}\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\topenDropdownProps.onDropdownOpen?.();\n\t\t\t\t\t\t\t\tif (!openDropdown) {\n\t\t\t\t\t\t\t\t\tif (!openDropdownProps.disabled) setDropdownVisibility(true);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tsetDropdownVisibility(false);\n\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tisChildLoading={isChildLoading}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{openDropdownProps.allowEvents ? children : null}\n\t\t\t\t\t\t</OverLapAbs>\n\t\t\t\t\t\t{openDropdownProps.allowEvents ? null : children}\n\t\t\t\t\t</div>\n\t\t\t\t\t{(openDropdown || forceOpen) && (\n\t\t\t\t\t\t<OpenDropdownContainer\n\t\t\t\t\t\t\t/** This assigment is mentioned as per react-popper's docs, so typecasting */\n\t\t\t\t\t\t\tref={setPopperElement as Ref<HTMLDivElement>}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t...styles['popper'],\n\t\t\t\t\t\t\t\tzIndex: openDropdownProps.dropdownZIndex ?? 3,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t{...attributes['popper']}\n\t\t\t\t\t\t\tdata-test={openDropdownProps['data-test']}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<DropShadow\n\t\t\t\t\t\t\t\tlevel={'z2'}\n\t\t\t\t\t\t\t\tposition={'down'}\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tborderRadius: version === '3.0' ? 4 : 8,\n\t\t\t\t\t\t\t\t\tboxShadow: '0 2px 8px 0 rgba(0, 0, 0, 0.12)',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<OpenedDropdown\n\t\t\t\t\t\t\t\t\t{...openDropdownProps}\n\t\t\t\t\t\t\t\t\tonSelect={(options) => {\n\t\t\t\t\t\t\t\t\t\tif (version === '2.0' && openDropdownProps.isMultiSelect) {\n\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\topenDropdownProps.onSelect?.(options);\n\t\t\t\t\t\t\t\t\t\t\tsetDropdownVisibility(false);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tonClose={onCloseHandle}\n\t\t\t\t\t\t\t\t\tversion={version}\n\t\t\t\t\t\t\t\t\theaderRef={headerRef}\n\t\t\t\t\t\t\t\t\tzeroState={openDropdownProps?.zeroState}\n\t\t\t\t\t\t\t\t\tisDraggable={openDropdownProps.isDraggable}\n\t\t\t\t\t\t\t\t\tonOptionsReorder={openDropdownProps.onOptionsReorder}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</DropShadow>\n\t\t\t\t\t\t</OpenDropdownContainer>\n\t\t\t\t\t)}\n\t\t\t\t</>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{!openDropdown && !forceOpen && tooltipContent !== undefined ? (\n\t\t\t\t\t<Tooltip\n\t\t\t\t\t\tbody={tooltipContent}\n\t\t\t\t\t\tplacement={tooltipDirection}\n\t\t\t\t\t\thideArrow={!showTooltipArrow}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div data-test={openDropdownProps['data-test']}>\n\t\t\t\t\t\t\t{dropDownComponent()}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t) : (\n\t\t\t\t\tdropDownComponent()\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t},\n);\n\nDropdownPopover.displayName = 'DropdownPopover';\n"],"names":["DropdownPopover","React","children","onDropdownVisbilityChange","version","tooltipContent","tooltipDirection","showTooltipArrow","isChildLoading","forceOpen","openDropdownProps","unTypedRef","ref","openDropdown","setDropdownVisibility","useState","isHovering","setIsHovering","referenceElement","setReferenceElement","popperElement","setPopperElement","headerRef","useRef","styles","attributes","usePopper","onCloseHandle","data","useImperativeHandle","useEffect","dropDownComponent","jsxs","Fragment","COLORS","jsx","OverLapAbs","e","OpenDropdownContainer","DropShadow","OpenedDropdown","options","Tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/dropdown/DropdownPopover/index.tsx"],"sourcesContent":["import React, {\n\tLegacyRef,\n\tRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport { usePopper } from 'react-popper';\nimport { DropShadow } from '@src/components/dropShadow';\nimport { Placement, Tooltip } from '@src/components/tooltips';\nimport { OpenDropdownContainer, OverLapAbs } from '../Common.styled';\nimport { OpenedDropdown } from '../OpenedDropdown';\nimport { OpenDropdownProps } from '../type';\n\ntype DropdownProps = OpenDropdownProps & {\n\tisLoading?: boolean;\n\tchildren?: React.ReactNode;\n\tdisabled?: boolean;\n\tonDropdownOpen?: () => void;\n\tonDropdownVisbilityChange?: (isOpen: boolean) => void;\n\ttooltipContent?: string;\n\ttooltipDirection?: Placement;\n\tshowTooltipArrow?: boolean;\n\tallowEvents?: boolean;\n\t'data-test'?: string;\n\tisChildLoading?: boolean;\n\t/**\n\t * If true, forces the dropdown to remain open regardless of user interaction or internal state.\n\t * This prop overrides the internal openDropdown state, ensuring the dropdown stays open.\n\t * Use this prop when you need to programmatically control the dropdown's visibility from a parent component.\n\t */\n\tforceOpen?: boolean;\n};\n\nexport const DropdownPopover = React.forwardRef<\n\t{\n\t\topenDropdown: boolean;\n\t},\n\tDropdownProps\n>(\n\t(\n\t\t{\n\t\t\tchildren,\n\t\t\tonDropdownVisbilityChange,\n\t\t\tversion = '1.0',\n\t\t\ttooltipContent,\n\t\t\ttooltipDirection,\n\t\t\tshowTooltipArrow,\n\t\t\tisChildLoading,\n\t\t\tforceOpen,\n\t\t\t...openDropdownProps\n\t\t},\n\t\tunTypedRef,\n\t) => {\n\t\tconst ref = unTypedRef as React.RefObject<{ openDropdown: boolean }>;\n\t\tconst [openDropdown, setDropdownVisibility] = useState(false);\n\t\tconst [referenceElement, setReferenceElement] = useState(null);\n\t\tconst [popperElement, setPopperElement] = useState(null);\n\t\tconst headerRef = useRef(null);\n\n\t\tconst { styles, attributes } = usePopper(referenceElement, popperElement, {\n\t\t\tplacement: openDropdownProps.placement,\n\t\t\tstrategy: openDropdownProps.strategy,\n\t\t});\n\n\t\tconst onCloseHandle = (data) => {\n\t\t\tif (version === '2.0' && openDropdownProps.isMultiSelect && data) {\n\t\t\t\topenDropdownProps.onSelect?.([...data]);\n\t\t\t}\n\t\t\tsetDropdownVisibility(false);\n\t\t\topenDropdownProps?.onClose?.();\n\t\t};\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => {\n\t\t\t\treturn {\n\t\t\t\t\topenDropdown: openDropdown,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tif (ref?.current) ref.current.openDropdown = openDropdown;\n\t\t}, [openDropdown]);\n\n\t\tuseEffect(() => {\n\t\t\tonDropdownVisbilityChange?.(openDropdown);\n\t\t}, [openDropdown]);\n\n\t\tconst dropDownComponent = () => {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{ position: 'relative' }}\n\t\t\t\t\t\t/** This assigment is mentioned as per react-popper's docs, so typecasting */\n\t\t\t\t\t\tref={setReferenceElement as LegacyRef<HTMLDivElement>}\n\t\t\t\t\t>\n\t\t\t\t\t\t<OverLapAbs\n\t\t\t\t\t\t\tref={headerRef}\n\t\t\t\t\t\t\tallowEvents={openDropdownProps.allowEvents}\n\t\t\t\t\t\t\tdisabled={openDropdownProps.disabled}\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\topenDropdownProps.onDropdownOpen?.();\n\t\t\t\t\t\t\t\tif (!openDropdown) {\n\t\t\t\t\t\t\t\t\tif (!openDropdownProps.disabled) setDropdownVisibility(true);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tsetDropdownVisibility(false);\n\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tisChildLoading={isChildLoading}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{openDropdownProps.allowEvents ? children : null}\n\t\t\t\t\t\t</OverLapAbs>\n\t\t\t\t\t\t{openDropdownProps.allowEvents ? null : children}\n\t\t\t\t\t</div>\n\t\t\t\t\t{(openDropdown || forceOpen) && (\n\t\t\t\t\t\t<OpenDropdownContainer\n\t\t\t\t\t\t\t/** This assigment is mentioned as per react-popper's docs, so typecasting */\n\t\t\t\t\t\t\tref={setPopperElement as Ref<HTMLDivElement>}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t...styles['popper'],\n\t\t\t\t\t\t\t\tzIndex: openDropdownProps.dropdownZIndex ?? 3,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t{...attributes['popper']}\n\t\t\t\t\t\t\tdata-test={openDropdownProps['data-test']}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<DropShadow\n\t\t\t\t\t\t\t\tlevel={'z2'}\n\t\t\t\t\t\t\t\tposition={'down'}\n\t\t\t\t\t\t\t\tstyle={{ borderRadius: 8 }}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<OpenedDropdown\n\t\t\t\t\t\t\t\t\t{...openDropdownProps}\n\t\t\t\t\t\t\t\t\tonSelect={(options) => {\n\t\t\t\t\t\t\t\t\t\tif (version === '2.0' && openDropdownProps.isMultiSelect) {\n\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\topenDropdownProps.onSelect?.(options);\n\t\t\t\t\t\t\t\t\t\t\tsetDropdownVisibility(false);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tonClose={onCloseHandle}\n\t\t\t\t\t\t\t\t\tversion={version}\n\t\t\t\t\t\t\t\t\theaderRef={headerRef}\n\t\t\t\t\t\t\t\t\tzeroState={openDropdownProps?.zeroState}\n\t\t\t\t\t\t\t\t\tisDraggable={openDropdownProps.isDraggable}\n\t\t\t\t\t\t\t\t\tonOptionsReorder={openDropdownProps.onOptionsReorder}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</DropShadow>\n\t\t\t\t\t\t</OpenDropdownContainer>\n\t\t\t\t\t)}\n\t\t\t\t</>\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{!openDropdown && !forceOpen && tooltipContent !== undefined ? (\n\t\t\t\t\t<Tooltip\n\t\t\t\t\t\tbody={tooltipContent}\n\t\t\t\t\t\tplacement={tooltipDirection}\n\t\t\t\t\t\thideArrow={!showTooltipArrow}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div data-test={openDropdownProps['data-test']}>\n\t\t\t\t\t\t\t{dropDownComponent()}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t) : (\n\t\t\t\t\tdropDownComponent()\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t},\n);\n\nDropdownPopover.displayName = 'DropdownPopover';\n"],"names":["DropdownPopover","React","children","onDropdownVisbilityChange","version","tooltipContent","tooltipDirection","showTooltipArrow","isChildLoading","forceOpen","openDropdownProps","unTypedRef","ref","openDropdown","setDropdownVisibility","useState","referenceElement","setReferenceElement","popperElement","setPopperElement","headerRef","useRef","styles","attributes","usePopper","onCloseHandle","data","useImperativeHandle","useEffect","dropDownComponent","jsxs","Fragment","jsx","OverLapAbs","e","OpenDropdownContainer","DropShadow","OpenedDropdown","options","Tooltip"],"mappings":";;;;;;;AAmCO,MAAMA,IAAkBC,EAAM;AAAA,EAMpC,CACC;AAAA,IACC,UAAAC;AAAA,IACA,2BAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,gBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAEJC,MACI;AACJ,UAAMC,IAAMD,GACN,CAACE,GAAcC,CAAqB,IAAIC,EAAS,EAAK,GACtD,CAACC,GAAkBC,CAAmB,IAAIF,EAAS,IAAI,GACvD,CAACG,GAAeC,CAAgB,IAAIJ,EAAS,IAAI,GACjDK,IAAYC,EAAO,IAAI,GAEvB,EAAE,QAAAC,GAAQ,YAAAC,EAAA,IAAeC,EAAUR,GAAkBE,GAAe;AAAA,MACzE,WAAWR,EAAkB;AAAA,MAC7B,UAAUA,EAAkB;AAAA,IAAA,CAC5B,GAEKe,IAAgB,CAACC,MAAS;AAC/B,MAAItB,MAAY,SAASM,EAAkB,iBAAiBgB,KAC3DhB,EAAkB,WAAW,CAAC,GAAGgB,CAAI,CAAC,GAEvCZ,EAAsB,EAAK,GAC3BJ,GAAmB,UAAA;AAAA,IACpB;AAEA,IAAAiB;AAAA,MACCf;AAAA,MACA,OACQ;AAAA,QACN,cAAAC;AAAA,MAAA;AAAA,MAGF,CAAA;AAAA,IAAC,GAGFe,EAAU,MAAM;AACf,MAAIhB,GAAK,YAASA,EAAI,QAAQ,eAAeC;AAAA,IAC9C,GAAG,CAACA,CAAY,CAAC,GAEjBe,EAAU,MAAM;AACf,MAAAzB,IAA4BU,CAAY;AAAA,IACzC,GAAG,CAACA,CAAY,CAAC;AAEjB,UAAMgB,IAAoB,MAExB,gBAAAC,EAAAC,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,OAAO,EAAE,UAAU,WAAA;AAAA,UAEnB,KAAKb;AAAA,UAEL,UAAA;AAAA,YAAA,gBAAAe;AAAA,cAACC;AAAA,cAAA;AAAA,gBACA,KAAKb;AAAA,gBACL,aAAaV,EAAkB;AAAA,gBAC/B,UAAUA,EAAkB;AAAA,gBAC5B,SAAS,CAACwB,MAAM;AACf,kBAAAxB,EAAkB,iBAAA,GACbG,KAGJC,EAAsB,EAAK,GAC3BoB,EAAE,eAAA,KAHGxB,EAAkB,YAAUI,EAAsB,EAAI;AAAA,gBAK7D;AAAA,gBACA,gBAAAN;AAAA,gBAEC,UAAAE,EAAkB,cAAcR,IAAW;AAAA,cAAA;AAAA,YAAA;AAAA,YAE5CQ,EAAkB,cAAc,OAAOR;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,OAEvCW,KAAgBJ,MACjB,gBAAAuB;AAAA,QAACG;AAAA,QAAA;AAAA,UAEA,KAAKhB;AAAA,UACL,OAAO;AAAA,YACN,GAAGG,EAAO;AAAA,YACV,QAAQZ,EAAkB,kBAAkB;AAAA,UAAA;AAAA,UAE5C,GAAGa,EAAW;AAAA,UACf,aAAWb,EAAkB,WAAW;AAAA,UAExC,UAAA,gBAAAsB;AAAA,YAACI;AAAA,YAAA;AAAA,cACA,OAAO;AAAA,cACP,UAAU;AAAA,cACV,OAAO,EAAE,cAAc,EAAA;AAAA,cAEvB,UAAA,gBAAAJ;AAAA,gBAACK;AAAA,gBAAA;AAAA,kBACC,GAAG3B;AAAA,kBACJ,UAAU,CAAC4B,MAAY;AACtB,oBAAIlC,MAAY,SAASM,EAAkB,kBAG1CA,EAAkB,WAAW4B,CAAO,GACpCxB,EAAsB,EAAK;AAAA,kBAE7B;AAAA,kBACA,SAASW;AAAA,kBACT,SAAArB;AAAA,kBACA,WAAAgB;AAAA,kBACA,WAAWV,GAAmB;AAAA,kBAC9B,aAAaA,EAAkB;AAAA,kBAC/B,kBAAkBA,EAAkB;AAAA,gBAAA;AAAA,cAAA;AAAA,YACrC;AAAA,UAAA;AAAA,QACD;AAAA,MAAA;AAAA,IACD,GAEF;AAIF,kCAEG,UAAA,CAACG,KAAgB,CAACJ,KAAaJ,MAAmB,SAClD,gBAAA2B;AAAA,MAACO;AAAA,MAAA;AAAA,QACA,MAAMlC;AAAA,QACN,WAAWC;AAAA,QACX,WAAW,CAACC;AAAA,QAEZ,4BAAC,OAAA,EAAI,aAAWG,EAAkB,WAAW,GAC3C,cAAkB,CACpB;AAAA,MAAA;AAAA,IAAA,IAGDmB,IAAkB,CAEpB;AAAA,EAEF;AACD;AAEA7B,EAAgB,cAAc;"}