@knocklabs/react 0.12.1 → 0.13.1

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 (335) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/cjs/_virtual/_rolldown/runtime.js +1 -0
  3. package/dist/cjs/index.css +1 -1
  4. package/dist/cjs/index.js +1 -2
  5. package/dist/cjs/modules/core/components/Button/Button.js +2 -2
  6. package/dist/cjs/modules/core/components/Button/Button.js.map +1 -1
  7. package/dist/cjs/modules/core/components/Button/ButtonGroup.js +2 -2
  8. package/dist/cjs/modules/core/components/Button/ButtonGroup.js.map +1 -1
  9. package/dist/cjs/modules/core/components/Button/ButtonSpinner.js +2 -2
  10. package/dist/cjs/modules/core/components/Button/ButtonSpinner.js.map +1 -1
  11. package/dist/cjs/modules/core/components/Button/index.js +1 -0
  12. package/dist/cjs/modules/core/components/Icons/Bell.js +2 -2
  13. package/dist/cjs/modules/core/components/Icons/Bell.js.map +1 -1
  14. package/dist/cjs/modules/core/components/Icons/CheckmarkCircle.js +2 -2
  15. package/dist/cjs/modules/core/components/Icons/CheckmarkCircle.js.map +1 -1
  16. package/dist/cjs/modules/core/components/Icons/ChevronDown.js +2 -2
  17. package/dist/cjs/modules/core/components/Icons/ChevronDown.js.map +1 -1
  18. package/dist/cjs/modules/core/components/Icons/CloseCircle.js +2 -2
  19. package/dist/cjs/modules/core/components/Icons/CloseCircle.js.map +1 -1
  20. package/dist/cjs/modules/core/components/Icons/index.js +1 -0
  21. package/dist/cjs/modules/core/components/Spinner/Spinner.js +3 -3
  22. package/dist/cjs/modules/core/components/Spinner/Spinner.js.map +1 -1
  23. package/dist/cjs/modules/core/components/Spinner/index.js +1 -0
  24. package/dist/cjs/modules/core/cx/index.js +2 -2
  25. package/dist/cjs/modules/core/cx/index.js.map +1 -1
  26. package/dist/cjs/modules/core/debounce/index.js +2 -2
  27. package/dist/cjs/modules/core/debounce/index.js.map +1 -1
  28. package/dist/cjs/modules/core/hooks/index.js +1 -0
  29. package/dist/cjs/modules/core/hooks/useComponentVisible.js +2 -2
  30. package/dist/cjs/modules/core/hooks/useComponentVisible.js.map +1 -1
  31. package/dist/cjs/modules/core/hooks/useOnBottomScroll.js +2 -2
  32. package/dist/cjs/modules/core/hooks/useOnBottomScroll.js.map +1 -1
  33. package/dist/cjs/modules/core/index.js +1 -0
  34. package/dist/cjs/modules/core/utils.js +2 -2
  35. package/dist/cjs/modules/core/utils.js.map +1 -1
  36. package/dist/cjs/modules/feed/components/EmptyFeed/EmptyFeed.js +2 -2
  37. package/dist/cjs/modules/feed/components/EmptyFeed/EmptyFeed.js.map +1 -1
  38. package/dist/cjs/modules/feed/components/EmptyFeed/index.js +1 -0
  39. package/dist/cjs/modules/feed/components/NotificationCell/ArchiveButton.js +2 -2
  40. package/dist/cjs/modules/feed/components/NotificationCell/ArchiveButton.js.map +1 -1
  41. package/dist/cjs/modules/feed/components/NotificationCell/Avatar.js +2 -2
  42. package/dist/cjs/modules/feed/components/NotificationCell/Avatar.js.map +1 -1
  43. package/dist/cjs/modules/feed/components/NotificationCell/NotificationCell.js +2 -2
  44. package/dist/cjs/modules/feed/components/NotificationCell/NotificationCell.js.map +1 -1
  45. package/dist/cjs/modules/feed/components/NotificationCell/index.js +1 -0
  46. package/dist/cjs/modules/feed/components/NotificationFeed/Dropdown.js +2 -2
  47. package/dist/cjs/modules/feed/components/NotificationFeed/Dropdown.js.map +1 -1
  48. package/dist/cjs/modules/feed/components/NotificationFeed/MarkAsRead.js +2 -2
  49. package/dist/cjs/modules/feed/components/NotificationFeed/MarkAsRead.js.map +1 -1
  50. package/dist/cjs/modules/feed/components/NotificationFeed/NotificationFeed.js +2 -2
  51. package/dist/cjs/modules/feed/components/NotificationFeed/NotificationFeed.js.map +1 -1
  52. package/dist/cjs/modules/feed/components/NotificationFeed/NotificationFeedHeader.js +2 -2
  53. package/dist/cjs/modules/feed/components/NotificationFeed/NotificationFeedHeader.js.map +1 -1
  54. package/dist/cjs/modules/feed/components/NotificationFeed/index.js +1 -0
  55. package/dist/cjs/modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.js +2 -2
  56. package/dist/cjs/modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.js.map +1 -1
  57. package/dist/cjs/modules/feed/components/NotificationFeedContainer/index.js +1 -0
  58. package/dist/cjs/modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.js +2 -2
  59. package/dist/cjs/modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.js.map +1 -1
  60. package/dist/cjs/modules/feed/components/NotificationFeedPopover/index.js +1 -0
  61. package/dist/cjs/modules/feed/components/NotificationIconButton/NotificationIconButton.js +2 -2
  62. package/dist/cjs/modules/feed/components/NotificationIconButton/NotificationIconButton.js.map +1 -1
  63. package/dist/cjs/modules/feed/components/NotificationIconButton/index.js +1 -0
  64. package/dist/cjs/modules/feed/components/UnseenBadge/UnseenBadge.js +2 -2
  65. package/dist/cjs/modules/feed/components/UnseenBadge/UnseenBadge.js.map +1 -1
  66. package/dist/cjs/modules/feed/components/UnseenBadge/index.js +1 -0
  67. package/dist/cjs/modules/feed/index.js +1 -0
  68. package/dist/cjs/modules/guide/components/Banner/Banner.js +2 -2
  69. package/dist/cjs/modules/guide/components/Banner/Banner.js.map +1 -1
  70. package/dist/cjs/modules/guide/components/Banner/index.js +1 -0
  71. package/dist/cjs/modules/guide/components/Card/Card.js +2 -2
  72. package/dist/cjs/modules/guide/components/Card/Card.js.map +1 -1
  73. package/dist/cjs/modules/guide/components/Card/index.js +1 -0
  74. package/dist/cjs/modules/guide/components/Modal/Modal.js +2 -2
  75. package/dist/cjs/modules/guide/components/Modal/Modal.js.map +1 -1
  76. package/dist/cjs/modules/guide/components/Modal/index.js +1 -0
  77. package/dist/cjs/modules/guide/components/Toolbar/KnockButton.js +2 -2
  78. package/dist/cjs/modules/guide/components/Toolbar/KnockButton.js.map +1 -1
  79. package/dist/cjs/modules/guide/components/Toolbar/V2/FocusChin.js +2 -2
  80. package/dist/cjs/modules/guide/components/Toolbar/V2/FocusChin.js.map +1 -1
  81. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideAnnotatedStatusDot.js +2 -2
  82. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideAnnotatedStatusDot.js.map +1 -1
  83. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideContextDetails.js +2 -2
  84. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideContextDetails.js.map +1 -1
  85. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideRow.js +2 -2
  86. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideRow.js.map +1 -1
  87. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideRowDetails.js +2 -2
  88. package/dist/cjs/modules/guide/components/Toolbar/V2/GuideRowDetails.js.map +1 -1
  89. package/dist/cjs/modules/guide/components/Toolbar/V2/Kbd.js +2 -2
  90. package/dist/cjs/modules/guide/components/Toolbar/V2/Kbd.js.map +1 -1
  91. package/dist/cjs/modules/guide/components/Toolbar/V2/V2.js +2 -2
  92. package/dist/cjs/modules/guide/components/Toolbar/V2/V2.js.map +1 -1
  93. package/dist/cjs/modules/guide/components/Toolbar/V2/helpers.js +2 -2
  94. package/dist/cjs/modules/guide/components/Toolbar/V2/helpers.js.map +1 -1
  95. package/dist/cjs/modules/guide/components/Toolbar/V2/index.js +1 -0
  96. package/dist/cjs/modules/guide/components/Toolbar/V2/useDraggable.js +2 -2
  97. package/dist/cjs/modules/guide/components/Toolbar/V2/useDraggable.js.map +1 -1
  98. package/dist/cjs/modules/guide/components/Toolbar/V2/useInspectGuideClientStore.js +2 -2
  99. package/dist/cjs/modules/guide/components/Toolbar/V2/useInspectGuideClientStore.js.map +1 -1
  100. package/dist/cjs/modules/guide/components/Toolbar/index.js +1 -0
  101. package/dist/cjs/modules/guide/components/Toolbar/shared.js +2 -2
  102. package/dist/cjs/modules/guide/components/Toolbar/shared.js.map +1 -1
  103. package/dist/cjs/modules/guide/components/Toolbar/styles.inline.js +2 -0
  104. package/dist/cjs/modules/guide/components/Toolbar/styles.inline.js.map +1 -0
  105. package/dist/cjs/modules/guide/components/Toolbar/useToolbarStyles.js +2 -2
  106. package/dist/cjs/modules/guide/components/Toolbar/useToolbarStyles.js.map +1 -1
  107. package/dist/cjs/modules/guide/components/helpers.js +2 -2
  108. package/dist/cjs/modules/guide/components/helpers.js.map +1 -1
  109. package/dist/cjs/modules/guide/components/index.js +1 -0
  110. package/dist/cjs/modules/guide/index.js +1 -0
  111. package/dist/cjs/modules/guide/providers/KnockGuideProvider.js +2 -2
  112. package/dist/cjs/modules/guide/providers/KnockGuideProvider.js.map +1 -1
  113. package/dist/cjs/modules/guide/providers/index.js +1 -0
  114. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.js +2 -2
  115. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.js.map +1 -1
  116. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthButton/index.js +1 -0
  117. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.js +2 -2
  118. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.js.map +1 -1
  119. package/dist/cjs/modules/ms-teams/components/MsTeamsAuthContainer/index.js +1 -0
  120. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.js +2 -2
  121. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.js.map +1 -1
  122. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.js +2 -2
  123. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.js.map +1 -1
  124. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.js +2 -2
  125. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.js.map +1 -1
  126. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.js +2 -2
  127. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.js.map +1 -1
  128. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.js +2 -2
  129. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.js.map +1 -1
  130. package/dist/cjs/modules/ms-teams/components/MsTeamsChannelCombobox/index.js +1 -0
  131. package/dist/cjs/modules/ms-teams/components/MsTeamsIcon/MsTeamsIcon.js +2 -2
  132. package/dist/cjs/modules/ms-teams/components/MsTeamsIcon/MsTeamsIcon.js.map +1 -1
  133. package/dist/cjs/modules/ms-teams/components/MsTeamsIcon/index.js +1 -0
  134. package/dist/cjs/modules/ms-teams/index.js +1 -0
  135. package/dist/cjs/modules/ms-teams/utils.js +2 -2
  136. package/dist/cjs/modules/ms-teams/utils.js.map +1 -1
  137. package/dist/cjs/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.js +2 -2
  138. package/dist/cjs/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.js.map +1 -1
  139. package/dist/cjs/modules/slack/components/SlackAuthButton/SlackAuthButton.js +2 -2
  140. package/dist/cjs/modules/slack/components/SlackAuthButton/SlackAuthButton.js.map +1 -1
  141. package/dist/cjs/modules/slack/components/SlackAuthButton/index.js +1 -0
  142. package/dist/cjs/modules/slack/components/SlackAuthContainer/SlackAuthContainer.js +2 -2
  143. package/dist/cjs/modules/slack/components/SlackAuthContainer/SlackAuthContainer.js.map +1 -1
  144. package/dist/cjs/modules/slack/components/SlackAuthContainer/index.js +1 -0
  145. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.js +2 -2
  146. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.js.map +1 -1
  147. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackConnectionError.js +2 -2
  148. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackConnectionError.js.map +1 -1
  149. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.js +2 -2
  150. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.js.map +1 -1
  151. package/dist/cjs/modules/slack/components/SlackChannelCombobox/index.js +1 -0
  152. package/dist/cjs/modules/slack/components/SlackIcon/SlackIcon.js +2 -2
  153. package/dist/cjs/modules/slack/components/SlackIcon/SlackIcon.js.map +1 -1
  154. package/dist/cjs/modules/slack/components/SlackIcon/index.js +1 -0
  155. package/dist/cjs/modules/slack/index.js +1 -0
  156. package/dist/cjs/modules/slack/utils.js +2 -2
  157. package/dist/cjs/modules/slack/utils.js.map +1 -1
  158. package/dist/cjs/next/KnockGuideLocationSensor.js +2 -2
  159. package/dist/cjs/next/KnockGuideLocationSensor.js.map +1 -1
  160. package/dist/cjs/next.js +1 -2
  161. package/dist/cjs/tanstack/KnockGuideLocationSensor.js +2 -2
  162. package/dist/cjs/tanstack/KnockGuideLocationSensor.js.map +1 -1
  163. package/dist/cjs/tanstack.js +1 -2
  164. package/dist/esm/index.mjs +36 -118
  165. package/dist/esm/modules/core/components/Button/Button.mjs +28 -21
  166. package/dist/esm/modules/core/components/Button/Button.mjs.map +1 -1
  167. package/dist/esm/modules/core/components/Button/ButtonGroup.mjs +11 -9
  168. package/dist/esm/modules/core/components/Button/ButtonGroup.mjs.map +1 -1
  169. package/dist/esm/modules/core/components/Button/ButtonSpinner.mjs +13 -10
  170. package/dist/esm/modules/core/components/Button/ButtonSpinner.mjs.map +1 -1
  171. package/dist/esm/modules/core/components/Button/index.mjs +3 -0
  172. package/dist/esm/modules/core/components/Icons/Bell.mjs +26 -10
  173. package/dist/esm/modules/core/components/Icons/Bell.mjs.map +1 -1
  174. package/dist/esm/modules/core/components/Icons/CheckmarkCircle.mjs +26 -10
  175. package/dist/esm/modules/core/components/Icons/CheckmarkCircle.mjs.map +1 -1
  176. package/dist/esm/modules/core/components/Icons/ChevronDown.mjs +21 -10
  177. package/dist/esm/modules/core/components/Icons/ChevronDown.mjs.map +1 -1
  178. package/dist/esm/modules/core/components/Icons/CloseCircle.mjs +18 -10
  179. package/dist/esm/modules/core/components/Icons/CloseCircle.mjs.map +1 -1
  180. package/dist/esm/modules/core/components/Icons/index.mjs +5 -0
  181. package/dist/esm/modules/core/components/Spinner/Spinner.mjs +40 -30
  182. package/dist/esm/modules/core/components/Spinner/Spinner.mjs.map +1 -1
  183. package/dist/esm/modules/core/components/Spinner/index.mjs +2 -0
  184. package/dist/esm/modules/core/cx/index.mjs +6 -5
  185. package/dist/esm/modules/core/cx/index.mjs.map +1 -1
  186. package/dist/esm/modules/core/debounce/index.mjs +14 -14
  187. package/dist/esm/modules/core/debounce/index.mjs.map +1 -1
  188. package/dist/esm/modules/core/hooks/index.mjs +2 -0
  189. package/dist/esm/modules/core/hooks/useComponentVisible.mjs +17 -18
  190. package/dist/esm/modules/core/hooks/useComponentVisible.mjs.map +1 -1
  191. package/dist/esm/modules/core/hooks/useOnBottomScroll.mjs +21 -21
  192. package/dist/esm/modules/core/hooks/useOnBottomScroll.mjs.map +1 -1
  193. package/dist/esm/modules/core/index.mjs +14 -0
  194. package/dist/esm/modules/core/utils.mjs +10 -11
  195. package/dist/esm/modules/core/utils.mjs.map +1 -1
  196. package/dist/esm/modules/feed/components/EmptyFeed/EmptyFeed.mjs +23 -14
  197. package/dist/esm/modules/feed/components/EmptyFeed/EmptyFeed.mjs.map +1 -1
  198. package/dist/esm/modules/feed/components/EmptyFeed/index.mjs +2 -0
  199. package/dist/esm/modules/feed/components/NotificationCell/ArchiveButton.mjs +42 -40
  200. package/dist/esm/modules/feed/components/NotificationCell/ArchiveButton.mjs.map +1 -1
  201. package/dist/esm/modules/feed/components/NotificationCell/Avatar.mjs +24 -15
  202. package/dist/esm/modules/feed/components/NotificationCell/Avatar.mjs.map +1 -1
  203. package/dist/esm/modules/feed/components/NotificationCell/NotificationCell.mjs +88 -64
  204. package/dist/esm/modules/feed/components/NotificationCell/NotificationCell.mjs.map +1 -1
  205. package/dist/esm/modules/feed/components/NotificationCell/index.mjs +3 -0
  206. package/dist/esm/modules/feed/components/NotificationFeed/Dropdown.mjs +22 -17
  207. package/dist/esm/modules/feed/components/NotificationFeed/Dropdown.mjs.map +1 -1
  208. package/dist/esm/modules/feed/components/NotificationFeed/MarkAsRead.mjs +26 -21
  209. package/dist/esm/modules/feed/components/NotificationFeed/MarkAsRead.mjs.map +1 -1
  210. package/dist/esm/modules/feed/components/NotificationFeed/NotificationFeed.mjs +78 -68
  211. package/dist/esm/modules/feed/components/NotificationFeed/NotificationFeed.mjs.map +1 -1
  212. package/dist/esm/modules/feed/components/NotificationFeed/NotificationFeedHeader.mjs +33 -17
  213. package/dist/esm/modules/feed/components/NotificationFeed/NotificationFeedHeader.mjs.map +1 -1
  214. package/dist/esm/modules/feed/components/NotificationFeed/index.mjs +4 -0
  215. package/dist/esm/modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.mjs +11 -9
  216. package/dist/esm/modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.mjs.map +1 -1
  217. package/dist/esm/modules/feed/components/NotificationFeedContainer/index.mjs +2 -0
  218. package/dist/esm/modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.mjs +62 -65
  219. package/dist/esm/modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.mjs.map +1 -1
  220. package/dist/esm/modules/feed/components/NotificationFeedPopover/index.mjs +2 -0
  221. package/dist/esm/modules/feed/components/NotificationIconButton/NotificationIconButton.mjs +22 -17
  222. package/dist/esm/modules/feed/components/NotificationIconButton/NotificationIconButton.mjs.map +1 -1
  223. package/dist/esm/modules/feed/components/NotificationIconButton/index.mjs +2 -0
  224. package/dist/esm/modules/feed/components/UnseenBadge/UnseenBadge.mjs +27 -23
  225. package/dist/esm/modules/feed/components/UnseenBadge/UnseenBadge.mjs.map +1 -1
  226. package/dist/esm/modules/feed/components/UnseenBadge/index.mjs +2 -0
  227. package/dist/esm/modules/feed/index.mjs +18 -0
  228. package/dist/esm/modules/guide/components/Banner/Banner.mjs +138 -129
  229. package/dist/esm/modules/guide/components/Banner/Banner.mjs.map +1 -1
  230. package/dist/esm/modules/guide/components/Banner/index.mjs +2 -0
  231. package/dist/esm/modules/guide/components/Card/Card.mjs +184 -167
  232. package/dist/esm/modules/guide/components/Card/Card.mjs.map +1 -1
  233. package/dist/esm/modules/guide/components/Card/index.mjs +2 -0
  234. package/dist/esm/modules/guide/components/Modal/Modal.mjs +188 -168
  235. package/dist/esm/modules/guide/components/Modal/Modal.mjs.map +1 -1
  236. package/dist/esm/modules/guide/components/Modal/index.mjs +2 -0
  237. package/dist/esm/modules/guide/components/Toolbar/KnockButton.mjs +46 -24
  238. package/dist/esm/modules/guide/components/Toolbar/KnockButton.mjs.map +1 -1
  239. package/dist/esm/modules/guide/components/Toolbar/V2/FocusChin.mjs +174 -111
  240. package/dist/esm/modules/guide/components/Toolbar/V2/FocusChin.mjs.map +1 -1
  241. package/dist/esm/modules/guide/components/Toolbar/V2/GuideAnnotatedStatusDot.mjs +82 -19
  242. package/dist/esm/modules/guide/components/Toolbar/V2/GuideAnnotatedStatusDot.mjs.map +1 -1
  243. package/dist/esm/modules/guide/components/Toolbar/V2/GuideContextDetails.mjs +189 -47
  244. package/dist/esm/modules/guide/components/Toolbar/V2/GuideContextDetails.mjs.map +1 -1
  245. package/dist/esm/modules/guide/components/Toolbar/V2/GuideRow.mjs +229 -143
  246. package/dist/esm/modules/guide/components/Toolbar/V2/GuideRow.mjs.map +1 -1
  247. package/dist/esm/modules/guide/components/Toolbar/V2/GuideRowDetails.mjs +180 -68
  248. package/dist/esm/modules/guide/components/Toolbar/V2/GuideRowDetails.mjs.map +1 -1
  249. package/dist/esm/modules/guide/components/Toolbar/V2/Kbd.mjs +17 -14
  250. package/dist/esm/modules/guide/components/Toolbar/V2/Kbd.mjs.map +1 -1
  251. package/dist/esm/modules/guide/components/Toolbar/V2/V2.mjs +315 -159
  252. package/dist/esm/modules/guide/components/Toolbar/V2/V2.mjs.map +1 -1
  253. package/dist/esm/modules/guide/components/Toolbar/V2/helpers.mjs +9 -11
  254. package/dist/esm/modules/guide/components/Toolbar/V2/helpers.mjs.map +1 -1
  255. package/dist/esm/modules/guide/components/Toolbar/V2/index.mjs +2 -0
  256. package/dist/esm/modules/guide/components/Toolbar/V2/useDraggable.mjs +66 -74
  257. package/dist/esm/modules/guide/components/Toolbar/V2/useDraggable.mjs.map +1 -1
  258. package/dist/esm/modules/guide/components/Toolbar/V2/useInspectGuideClientStore.mjs +136 -192
  259. package/dist/esm/modules/guide/components/Toolbar/V2/useInspectGuideClientStore.mjs.map +1 -1
  260. package/dist/esm/modules/guide/components/Toolbar/index.mjs +3 -0
  261. package/dist/esm/modules/guide/components/Toolbar/shared.mjs +6 -5
  262. package/dist/esm/modules/guide/components/Toolbar/shared.mjs.map +1 -1
  263. package/dist/esm/modules/guide/components/Toolbar/styles.inline.mjs +6 -0
  264. package/dist/esm/modules/guide/components/Toolbar/styles.inline.mjs.map +1 -0
  265. package/dist/esm/modules/guide/components/Toolbar/useToolbarStyles.mjs +13 -12
  266. package/dist/esm/modules/guide/components/Toolbar/useToolbarStyles.mjs.map +1 -1
  267. package/dist/esm/modules/guide/components/helpers.mjs +15 -15
  268. package/dist/esm/modules/guide/components/helpers.mjs.map +1 -1
  269. package/dist/esm/modules/guide/components/index.mjs +9 -0
  270. package/dist/esm/modules/guide/index.mjs +8 -0
  271. package/dist/esm/modules/guide/providers/KnockGuideProvider.mjs +19 -17
  272. package/dist/esm/modules/guide/providers/KnockGuideProvider.mjs.map +1 -1
  273. package/dist/esm/modules/guide/providers/index.mjs +2 -0
  274. package/dist/esm/modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.mjs +78 -52
  275. package/dist/esm/modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.mjs.map +1 -1
  276. package/dist/esm/modules/ms-teams/components/MsTeamsAuthButton/index.mjs +2 -0
  277. package/dist/esm/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.mjs +33 -16
  278. package/dist/esm/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.mjs.map +1 -1
  279. package/dist/esm/modules/ms-teams/components/MsTeamsAuthContainer/index.mjs +2 -0
  280. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.mjs +60 -28
  281. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.mjs.map +1 -1
  282. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.mjs +47 -39
  283. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.mjs.map +1 -1
  284. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.mjs +11 -14
  285. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.mjs.map +1 -1
  286. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.mjs +23 -11
  287. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.mjs.map +1 -1
  288. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.mjs +41 -33
  289. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.mjs.map +1 -1
  290. package/dist/esm/modules/ms-teams/components/MsTeamsChannelCombobox/index.mjs +2 -0
  291. package/dist/esm/modules/ms-teams/components/MsTeamsIcon/MsTeamsIcon.mjs +99 -15
  292. package/dist/esm/modules/ms-teams/components/MsTeamsIcon/MsTeamsIcon.mjs.map +1 -1
  293. package/dist/esm/modules/ms-teams/components/MsTeamsIcon/index.mjs +2 -0
  294. package/dist/esm/modules/ms-teams/index.mjs +7 -0
  295. package/dist/esm/modules/ms-teams/utils.mjs +6 -5
  296. package/dist/esm/modules/ms-teams/utils.mjs.map +1 -1
  297. package/dist/esm/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.mjs +48 -32
  298. package/dist/esm/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.mjs.map +1 -1
  299. package/dist/esm/modules/slack/components/SlackAuthButton/SlackAuthButton.mjs +82 -58
  300. package/dist/esm/modules/slack/components/SlackAuthButton/SlackAuthButton.mjs.map +1 -1
  301. package/dist/esm/modules/slack/components/SlackAuthButton/index.mjs +2 -0
  302. package/dist/esm/modules/slack/components/SlackAuthContainer/SlackAuthContainer.mjs +33 -16
  303. package/dist/esm/modules/slack/components/SlackAuthContainer/SlackAuthContainer.mjs.map +1 -1
  304. package/dist/esm/modules/slack/components/SlackAuthContainer/index.mjs +2 -0
  305. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.mjs +100 -66
  306. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.mjs.map +1 -1
  307. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackConnectionError.mjs +11 -14
  308. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackConnectionError.mjs.map +1 -1
  309. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.mjs +23 -11
  310. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.mjs.map +1 -1
  311. package/dist/esm/modules/slack/components/SlackChannelCombobox/index.mjs +2 -0
  312. package/dist/esm/modules/slack/components/SlackIcon/SlackIcon.mjs +32 -12
  313. package/dist/esm/modules/slack/components/SlackIcon/SlackIcon.mjs.map +1 -1
  314. package/dist/esm/modules/slack/components/SlackIcon/index.mjs +2 -0
  315. package/dist/esm/modules/slack/index.mjs +7 -0
  316. package/dist/esm/modules/slack/utils.mjs +6 -5
  317. package/dist/esm/modules/slack/utils.mjs.map +1 -1
  318. package/dist/esm/next/KnockGuideLocationSensor.mjs +37 -37
  319. package/dist/esm/next/KnockGuideLocationSensor.mjs.map +1 -1
  320. package/dist/esm/next.mjs +2 -5
  321. package/dist/esm/tanstack/KnockGuideLocationSensor.mjs +16 -19
  322. package/dist/esm/tanstack/KnockGuideLocationSensor.mjs.map +1 -1
  323. package/dist/esm/tanstack.mjs +2 -5
  324. package/dist/index.css +1 -1
  325. package/package.json +20 -22
  326. package/dist/cjs/index.js.map +0 -1
  327. package/dist/cjs/modules/guide/components/Toolbar/styles.css.inline.js +0 -2
  328. package/dist/cjs/modules/guide/components/Toolbar/styles.css.inline.js.map +0 -1
  329. package/dist/cjs/next.js.map +0 -1
  330. package/dist/cjs/tanstack.js.map +0 -1
  331. package/dist/esm/index.mjs.map +0 -1
  332. package/dist/esm/modules/guide/components/Toolbar/styles.css.inline.mjs +0 -5
  333. package/dist/esm/modules/guide/components/Toolbar/styles.css.inline.mjs.map +0 -1
  334. package/dist/esm/next.mjs.map +0 -1
  335. package/dist/esm/tanstack.mjs.map +0 -1
@@ -1,17 +1,34 @@
1
- import e from "react";
2
- import { useTranslations as r } from "@knocklabs/react-core";
3
- /* empty css */
4
- import { MsTeamsIcon as m } from "../MsTeamsIcon/MsTeamsIcon.mjs";
5
- /* empty css */
6
- const l = ({
7
- actionButton: t
8
- }) => {
9
- const {
10
- t: a
11
- } = r();
12
- return /* @__PURE__ */ e.createElement("div", { className: "rtk-auth" }, /* @__PURE__ */ e.createElement("div", { className: "rtk-auth__header" }, /* @__PURE__ */ e.createElement(m, { height: "32px", width: "32px" }), /* @__PURE__ */ e.createElement("div", null, t)), /* @__PURE__ */ e.createElement("div", { className: "rtk-auth__title" }, "Microsoft Teams"), /* @__PURE__ */ e.createElement("div", { className: "rtk-auth__description" }, a("msTeamsConnectContainerDescription")));
1
+ /* empty css */
2
+ import { MsTeamsIcon as e } from "../MsTeamsIcon/MsTeamsIcon.mjs";
3
+ import "../MsTeamsIcon/index.mjs";
4
+ /* empty css */
5
+ import { useTranslations as t } from "@knocklabs/react-core";
6
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
7
+ //#region src/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.tsx
8
+ var i = ({ actionButton: i }) => {
9
+ let { t: a } = t();
10
+ return /* @__PURE__ */ r("div", {
11
+ className: "rtk-auth",
12
+ children: [
13
+ /* @__PURE__ */ r("div", {
14
+ className: "rtk-auth__header",
15
+ children: [/* @__PURE__ */ n(e, {
16
+ height: "32px",
17
+ width: "32px"
18
+ }), /* @__PURE__ */ n("div", { children: i })]
19
+ }),
20
+ /* @__PURE__ */ n("div", {
21
+ className: "rtk-auth__title",
22
+ children: "Microsoft Teams"
23
+ }),
24
+ /* @__PURE__ */ n("div", {
25
+ className: "rtk-auth__description",
26
+ children: a("msTeamsConnectContainerDescription")
27
+ })
28
+ ]
29
+ });
13
30
  };
14
- export {
15
- l as MsTeamsAuthContainer
16
- };
17
- //# sourceMappingURL=MsTeamsAuthContainer.mjs.map
31
+ //#endregion
32
+ export { i as MsTeamsAuthContainer };
33
+
34
+ //# sourceMappingURL=MsTeamsAuthContainer.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsAuthContainer.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.tsx"],"sourcesContent":["import { useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\nimport { MsTeamsIcon } from \"../MsTeamsIcon\";\n\nimport \"./styles.css\";\n\nexport interface MsTeamsAuthContainerProps {\n actionButton: React.ReactElement;\n}\n\nexport const MsTeamsAuthContainer: FunctionComponent<\n MsTeamsAuthContainerProps\n> = ({ actionButton }) => {\n const { t } = useTranslations();\n\n return (\n <div className=\"rtk-auth\">\n <div className=\"rtk-auth__header\">\n <MsTeamsIcon height=\"32px\" width=\"32px\" />\n <div>{actionButton}</div>\n </div>\n <div className=\"rtk-auth__title\">Microsoft Teams</div>\n <div className=\"rtk-auth__description\">\n {t(\"msTeamsConnectContainerDescription\")}\n </div>\n </div>\n );\n};\n"],"names":["MsTeamsAuthContainer","actionButton","t","useTranslations","React","MsTeamsIcon"],"mappings":";;;;;AAYO,MAAMA,IAETA,CAAC;AAAA,EAAEC,cAAAA;AAAa,MAAM;AAClB,QAAA;AAAA,IAAEC,GAAAA;AAAAA,MAAMC,EAAgB;AAE9B,SACGC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,8CACZ,OAAI,EAAA,WAAU,mBACb,GAAAA,gBAAAA,EAAA,cAACC,GAAY,EAAA,QAAO,QAAO,OAAM,QAAM,GACvCD,gBAAAA,EAAA,cAAC,OAAKH,MAAAA,CAAa,CACrB,GACCG,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,kBAAkB,GAAA,iBAAe,GAChDA,gBAAAA,EAAA,cAAC,SAAI,WAAU,2BACZF,EAAE,oCAAoC,CACzC,CACF;AAEJ;"}
1
+ {"version":3,"file":"MsTeamsAuthContainer.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.tsx"],"sourcesContent":["import { useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\nimport { MsTeamsIcon } from \"../MsTeamsIcon\";\n\nimport \"./styles.css\";\n\nexport interface MsTeamsAuthContainerProps {\n actionButton: React.ReactElement;\n}\n\nexport const MsTeamsAuthContainer: FunctionComponent<\n MsTeamsAuthContainerProps\n> = ({ actionButton }) => {\n const { t } = useTranslations();\n\n return (\n <div className=\"rtk-auth\">\n <div className=\"rtk-auth__header\">\n <MsTeamsIcon height=\"32px\" width=\"32px\" />\n <div>{actionButton}</div>\n </div>\n <div className=\"rtk-auth__title\">Microsoft Teams</div>\n <div className=\"rtk-auth__description\">\n {t(\"msTeamsConnectContainerDescription\")}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;;AAYA,IAAa,KAER,EAAE,sBAAmB;CACxB,IAAM,EAAE,SAAM,EAAgB;CAE9B,OACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD;KAAa,QAAO;KAAO,OAAM;IAAQ,CAAA,GACzC,kBAAC,OAAD,EAAA,UAAM,EAAkB,CAAA,CACrB;;GACL,kBAAC,OAAD;IAAK,WAAU;cAAkB;GAAoB,CAAA;GACrD,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAE,oCAAoC;GACpC,CAAA;EACF;;AAET"}
@@ -0,0 +1,2 @@
1
+ import { MsTeamsAuthContainer as e } from "./MsTeamsAuthContainer.mjs";
2
+ export { e as MsTeamsAuthContainer };
@@ -1,29 +1,61 @@
1
- import e, { useState as g, useCallback as d } from "react";
2
- import { useConnectedMsTeamsChannels as f } from "@knocklabs/react-core";
3
- import { Icon as C } from "@telegraph/icon";
4
- import { Stack as r } from "@telegraph/layout";
5
- import { Text as n } from "@telegraph/typography";
6
- import { CornerDownRight as h } from "lucide-react";
7
- /* empty css */
8
- import { MsTeamsChannelInTeamCombobox as u } from "./MsTeamsChannelInTeamCombobox.mjs";
9
- import _ from "./MsTeamsConnectionError.mjs";
10
- import { MsTeamsTeamCombobox as E } from "./MsTeamsTeamCombobox.mjs";
11
- /* empty css */
12
- const w = ({
13
- msTeamsChannelsRecipientObject: o,
14
- teamQueryOptions: s,
15
- channelQueryOptions: l
16
- }) => {
17
- const [t, i] = g(null), {
18
- data: a
19
- } = f({
20
- msTeamsChannelsRecipientObject: o
21
- }), c = d((p) => (a == null ? void 0 : a.filter((m) => m.ms_teams_team_id === p && !!m.ms_teams_channel_id).length) ?? 0, [a]);
22
- return /* @__PURE__ */ e.createElement(r, { className: "tgph rtk-combobox__grid", gap: "3" }, /* @__PURE__ */ e.createElement(n, { color: "gray", size: "2", as: "div" }, "Team"), /* @__PURE__ */ e.createElement(E, { team: t, onTeamChange: i, getChannelCount: c, queryOptions: s }), /* @__PURE__ */ e.createElement(r, { alignItems: "center", gap: "3", minHeight: "8", style: {
23
- alignSelf: "start"
24
- } }, /* @__PURE__ */ e.createElement(C, { color: "gray", size: "1", icon: h, "aria-hidden": !0 }), /* @__PURE__ */ e.createElement(n, { color: "gray", size: "2", as: "div" }, "Channels")), /* @__PURE__ */ e.createElement(u, { teamId: t == null ? void 0 : t.id, msTeamsChannelsRecipientObject: o, queryOptions: l }), /* @__PURE__ */ e.createElement(_, null));
1
+ /* empty css */
2
+ import { MsTeamsChannelInTeamCombobox as e } from "./MsTeamsChannelInTeamCombobox.mjs";
3
+ import t from "./MsTeamsConnectionError.mjs";
4
+ import { MsTeamsTeamCombobox as n } from "./MsTeamsTeamCombobox.mjs";
5
+ /* empty css */
6
+ import { useConnectedMsTeamsChannels as r } from "@knocklabs/react-core";
7
+ import { useCallback as i, useState as a } from "react";
8
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
9
+ import { Icon as c } from "@telegraph/icon";
10
+ import { Stack as l } from "@telegraph/layout";
11
+ import { Text as u } from "@telegraph/typography";
12
+ import { CornerDownRight as d } from "lucide-react";
13
+ //#region src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.tsx
14
+ var f = ({ msTeamsChannelsRecipientObject: f, teamQueryOptions: p, channelQueryOptions: m }) => {
15
+ let [h, g] = a(null), { data: _ } = r({ msTeamsChannelsRecipientObject: f }), v = i((e) => _?.filter((t) => t.ms_teams_team_id === e && !!t.ms_teams_channel_id).length ?? 0, [_]);
16
+ return /* @__PURE__ */ s(l, {
17
+ className: "tgph rtk-combobox__grid",
18
+ gap: "3",
19
+ children: [
20
+ /* @__PURE__ */ o(u, {
21
+ color: "gray",
22
+ size: "2",
23
+ as: "div",
24
+ children: "Team"
25
+ }),
26
+ /* @__PURE__ */ o(n, {
27
+ team: h,
28
+ onTeamChange: g,
29
+ getChannelCount: v,
30
+ queryOptions: p
31
+ }),
32
+ /* @__PURE__ */ s(l, {
33
+ alignItems: "center",
34
+ gap: "3",
35
+ minHeight: "8",
36
+ style: { alignSelf: "start" },
37
+ children: [/* @__PURE__ */ o(c, {
38
+ color: "gray",
39
+ size: "1",
40
+ icon: d,
41
+ "aria-hidden": !0
42
+ }), /* @__PURE__ */ o(u, {
43
+ color: "gray",
44
+ size: "2",
45
+ as: "div",
46
+ children: "Channels"
47
+ })]
48
+ }),
49
+ /* @__PURE__ */ o(e, {
50
+ teamId: h?.id,
51
+ msTeamsChannelsRecipientObject: f,
52
+ queryOptions: m
53
+ }),
54
+ /* @__PURE__ */ o(t, {})
55
+ ]
56
+ });
25
57
  };
26
- export {
27
- w as default
28
- };
29
- //# sourceMappingURL=MsTeamsChannelCombobox.mjs.map
58
+ //#endregion
59
+ export { f as default };
60
+
61
+ //# sourceMappingURL=MsTeamsChannelCombobox.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsChannelCombobox.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.tsx"],"sourcesContent":["import { MsTeamsTeam } from \"@knocklabs/client\";\nimport {\n MsTeamsChannelQueryOptions,\n MsTeamsTeamQueryOptions,\n RecipientObject,\n useConnectedMsTeamsChannels,\n} from \"@knocklabs/react-core\";\nimport { Icon } from \"@telegraph/icon\";\nimport { Stack } from \"@telegraph/layout\";\nimport { Text } from \"@telegraph/typography\";\nimport { CornerDownRight } from \"lucide-react\";\nimport { FunctionComponent, useCallback, useState } from \"react\";\n\nimport \"../../theme.css\";\n\nimport { MsTeamsChannelInTeamCombobox } from \"./MsTeamsChannelInTeamCombobox\";\nimport MsTeamsConnectionError from \"./MsTeamsConnectionError\";\nimport { MsTeamsTeamCombobox } from \"./MsTeamsTeamCombobox\";\nimport \"./styles.css\";\n\ninterface Props {\n msTeamsChannelsRecipientObject: RecipientObject;\n teamQueryOptions?: MsTeamsTeamQueryOptions;\n channelQueryOptions?: MsTeamsChannelQueryOptions;\n}\n\nconst MsTeamsChannelCombobox: FunctionComponent<Props> = ({\n msTeamsChannelsRecipientObject,\n teamQueryOptions,\n channelQueryOptions,\n}) => {\n const [selectedTeam, setSelectedTeam] = useState<MsTeamsTeam | null>(null);\n\n const { data: currentConnections } = useConnectedMsTeamsChannels({\n msTeamsChannelsRecipientObject,\n });\n\n const getChannelCount = useCallback(\n (teamId: string) =>\n currentConnections?.filter(\n (connection) =>\n connection.ms_teams_team_id === teamId &&\n !!connection.ms_teams_channel_id,\n ).length ?? 0,\n [currentConnections],\n );\n\n return (\n <Stack className=\"tgph rtk-combobox__grid\" gap=\"3\">\n <Text color=\"gray\" size=\"2\" as=\"div\">\n Team\n </Text>\n <MsTeamsTeamCombobox\n team={selectedTeam}\n onTeamChange={setSelectedTeam}\n getChannelCount={getChannelCount}\n queryOptions={teamQueryOptions}\n />\n <Stack\n alignItems=\"center\"\n gap=\"3\"\n minHeight=\"8\"\n style={{ alignSelf: \"start\" }}\n >\n <Icon color=\"gray\" size=\"1\" icon={CornerDownRight} aria-hidden />\n <Text color=\"gray\" size=\"2\" as=\"div\">\n Channels\n </Text>\n </Stack>\n <MsTeamsChannelInTeamCombobox\n teamId={selectedTeam?.id}\n msTeamsChannelsRecipientObject={msTeamsChannelsRecipientObject}\n queryOptions={channelQueryOptions}\n />\n <MsTeamsConnectionError />\n </Stack>\n );\n};\n\nexport default MsTeamsChannelCombobox;\n"],"names":["MsTeamsChannelCombobox","msTeamsChannelsRecipientObject","teamQueryOptions","channelQueryOptions","selectedTeam","setSelectedTeam","useState","data","currentConnections","useConnectedMsTeamsChannels","getChannelCount","useCallback","teamId","filter","connection","ms_teams_team_id","ms_teams_channel_id","length","React","Stack","Text","MsTeamsTeamCombobox","alignSelf","Icon","CornerDownRight","MsTeamsChannelInTeamCombobox","id","MsTeamsConnectionError"],"mappings":";;;;;;;;;;;AA0BA,MAAMA,IAAmDA,CAAC;AAAA,EACxDC,gCAAAA;AAAAA,EACAC,kBAAAA;AAAAA,EACAC,qBAAAA;AACF,MAAM;AACJ,QAAM,CAACC,GAAcC,CAAe,IAAIC,EAA6B,IAAI,GAEnE;AAAA,IAAEC,MAAMC;AAAAA,MAAuBC,EAA4B;AAAA,IAC/DR,gCAAAA;AAAAA,EAAAA,CACD,GAEKS,IAAkBC,EACtB,CAACC,OACCJ,KAAAA,gBAAAA,EAAoBK,OACjBC,OACCA,EAAWC,qBAAqBH,KAChC,CAAC,CAACE,EAAWE,qBACfC,WAAU,GACd,CAACT,CAAkB,CACrB;AAEA,SACGU,gBAAAA,EAAA,cAAAC,GAAA,EAAM,WAAU,2BAA0B,KAAI,IAC7C,GAAAD,gBAAAA,EAAA,cAACE,GAAK,EAAA,OAAM,QAAO,MAAK,KAAI,IAAG,SAAK,MAEpC,GACAF,gBAAAA,EAAA,cAACG,GACC,EAAA,MAAMjB,GACN,cAAcC,GACd,iBAAAK,GACA,cAAcR,GAAiB,GAEhCgB,gBAAAA,EAAA,cAAAC,GAAA,EACC,YAAW,UACX,KAAI,KACJ,WAAU,KACV,OAAO;AAAA,IAAEG,WAAW;AAAA,EAAA,KAEpBJ,gBAAAA,EAAA,cAACK,GAAK,EAAA,OAAM,QAAO,MAAK,KAAI,MAAMC,GAAiB,eAAW,GAAA,CAAA,GAC7DN,gBAAAA,EAAA,cAAAE,GAAA,EAAK,OAAM,QAAO,MAAK,KAAI,IAAG,MAAK,GAAA,UAEpC,CACF,mCACCK,GACC,EAAA,QAAQrB,KAAAA,gBAAAA,EAAcsB,IACtB,gCAAAzB,GACA,cAAcE,EAAoB,CAAA,GAEpCe,gBAAAA,EAAA,cAACS,OAAsB,CACzB;AAEJ;"}
1
+ {"version":3,"file":"MsTeamsChannelCombobox.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.tsx"],"sourcesContent":["import { MsTeamsTeam } from \"@knocklabs/client\";\nimport {\n MsTeamsChannelQueryOptions,\n MsTeamsTeamQueryOptions,\n RecipientObject,\n useConnectedMsTeamsChannels,\n} from \"@knocklabs/react-core\";\nimport { Icon } from \"@telegraph/icon\";\nimport { Stack } from \"@telegraph/layout\";\nimport { Text } from \"@telegraph/typography\";\nimport { CornerDownRight } from \"lucide-react\";\nimport { FunctionComponent, useCallback, useState } from \"react\";\n\nimport \"../../theme.css\";\n\nimport { MsTeamsChannelInTeamCombobox } from \"./MsTeamsChannelInTeamCombobox\";\nimport MsTeamsConnectionError from \"./MsTeamsConnectionError\";\nimport { MsTeamsTeamCombobox } from \"./MsTeamsTeamCombobox\";\nimport \"./styles.css\";\n\ninterface Props {\n msTeamsChannelsRecipientObject: RecipientObject;\n teamQueryOptions?: MsTeamsTeamQueryOptions;\n channelQueryOptions?: MsTeamsChannelQueryOptions;\n}\n\nconst MsTeamsChannelCombobox: FunctionComponent<Props> = ({\n msTeamsChannelsRecipientObject,\n teamQueryOptions,\n channelQueryOptions,\n}) => {\n const [selectedTeam, setSelectedTeam] = useState<MsTeamsTeam | null>(null);\n\n const { data: currentConnections } = useConnectedMsTeamsChannels({\n msTeamsChannelsRecipientObject,\n });\n\n const getChannelCount = useCallback(\n (teamId: string) =>\n currentConnections?.filter(\n (connection) =>\n connection.ms_teams_team_id === teamId &&\n !!connection.ms_teams_channel_id,\n ).length ?? 0,\n [currentConnections],\n );\n\n return (\n <Stack className=\"tgph rtk-combobox__grid\" gap=\"3\">\n <Text color=\"gray\" size=\"2\" as=\"div\">\n Team\n </Text>\n <MsTeamsTeamCombobox\n team={selectedTeam}\n onTeamChange={setSelectedTeam}\n getChannelCount={getChannelCount}\n queryOptions={teamQueryOptions}\n />\n <Stack\n alignItems=\"center\"\n gap=\"3\"\n minHeight=\"8\"\n style={{ alignSelf: \"start\" }}\n >\n <Icon color=\"gray\" size=\"1\" icon={CornerDownRight} aria-hidden />\n <Text color=\"gray\" size=\"2\" as=\"div\">\n Channels\n </Text>\n </Stack>\n <MsTeamsChannelInTeamCombobox\n teamId={selectedTeam?.id}\n msTeamsChannelsRecipientObject={msTeamsChannelsRecipientObject}\n queryOptions={channelQueryOptions}\n />\n <MsTeamsConnectionError />\n </Stack>\n );\n};\n\nexport default MsTeamsChannelCombobox;\n"],"mappings":";;;;;;;;;;;;;AA0BA,IAAM,KAAoD,EACxD,mCACA,qBACA,6BACI;CACJ,IAAM,CAAC,GAAc,KAAmB,EAA6B,IAAI,GAEnE,EAAE,MAAM,MAAuB,EAA4B,EAC/D,kCACF,CAAC,GAEK,IAAkB,GACrB,MACC,GAAoB,QACjB,MACC,EAAW,qBAAqB,KAChC,CAAC,CAAC,EAAW,mBACjB,CAAC,CAAC,UAAU,GACd,CAAC,CAAkB,CACrB;CAEA,OACE,kBAAC,GAAD;EAAO,WAAU;EAA0B,KAAI;YAA/C;GACE,kBAAC,GAAD;IAAM,OAAM;IAAO,MAAK;IAAI,IAAG;cAAM;GAE/B,CAAA;GACN,kBAAC,GAAD;IACE,MAAM;IACN,cAAc;IACG;IACjB,cAAc;GACf,CAAA;GACD,kBAAC,GAAD;IACE,YAAW;IACX,KAAI;IACJ,WAAU;IACV,OAAO,EAAE,WAAW,QAAQ;cAJ9B,CAME,kBAAC,GAAD;KAAM,OAAM;KAAO,MAAK;KAAI,MAAM;KAAiB,eAAA;IAAa,CAAA,GAChE,kBAAC,GAAD;KAAM,OAAM;KAAO,MAAK;KAAI,IAAG;eAAM;IAE/B,CAAA,CACD;;GACP,kBAAC,GAAD;IACE,QAAQ,GAAc;IACU;IAChC,cAAc;GACf,CAAA;GACD,kBAAC,GAAD,CAAyB,CAAA;EACpB;;AAEX"}
@@ -1,40 +1,48 @@
1
- import n, { useMemo as c, useCallback as b } from "react";
2
- import { useKnockMsTeamsClient as g, useMsTeamsChannels as x, useConnectedMsTeamsChannels as M } from "@knocklabs/react-core";
3
- import { Combobox as t } from "@telegraph/combobox";
4
- import { Box as y } from "@telegraph/layout";
5
- import { sortByDisplayName as S } from "../../utils.mjs";
6
- import O from "./MsTeamsErrorMessage.mjs";
7
- const V = ({
8
- teamId: r,
9
- msTeamsChannelsRecipientObject: h,
10
- queryOptions: _
11
- }) => {
12
- const {
13
- connectionStatus: s
14
- } = g(), {
15
- data: o = []
16
- } = x({
17
- teamId: r,
18
- queryOptions: _
19
- }), p = c(() => S(o), [o]), {
20
- data: a,
21
- updateConnectedChannels: u,
22
- error: l
23
- } = M({
24
- msTeamsChannelsRecipientObject: h
25
- }), C = c(() => s === "disconnected" || s === "error" || !!l, [s, l]), E = c(() => s === "connecting" || s === "disconnecting", [s]), i = b((e) => o.some((d) => d.id === e), [o]), T = c(() => a == null ? void 0 : a.filter((e) => e.ms_teams_channel_id && i(e.ms_teams_channel_id)).map((e) => e.ms_teams_channel_id), [a, i]);
26
- return /* @__PURE__ */ n.createElement(n.Fragment, null, /* @__PURE__ */ n.createElement(y, { w: "full", minW: "0" }, /* @__PURE__ */ n.createElement(t.Root, { value: T, onValueChange: (e) => {
27
- const d = e.map((m) => ({
28
- ms_teams_team_id: r,
29
- ms_teams_channel_id: m
30
- })), f = [...(a == null ? void 0 : a.filter((m) => !m.ms_teams_channel_id || !i(m.ms_teams_channel_id))) ?? [], ...d];
31
- u(f).catch(console.error);
32
- }, placeholder: "Select channels", disabled: r === void 0 || C || E || o.length === 0, closeOnSelect: !1, layout: "wrap", modal: (
33
- // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.
34
- !1
35
- ) }, /* @__PURE__ */ n.createElement(t.Trigger, null), /* @__PURE__ */ n.createElement(t.Content, null, /* @__PURE__ */ n.createElement(t.Search, { className: "rtk-combobox__search" }), /* @__PURE__ */ n.createElement(t.Options, { maxHeight: "36" }, p.map((e) => /* @__PURE__ */ n.createElement(t.Option, { key: e.id, value: e.id }, e.displayName))), /* @__PURE__ */ n.createElement(t.Empty, null)))), !!l && /* @__PURE__ */ n.createElement(O, { message: l }));
1
+ import { sortByDisplayName as e } from "../../utils.mjs";
2
+ import t from "./MsTeamsErrorMessage.mjs";
3
+ import { useConnectedMsTeamsChannels as n, useKnockMsTeamsClient as r, useMsTeamsChannels as i } from "@knocklabs/react-core";
4
+ import { useCallback as a, useMemo as o } from "react";
5
+ import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
6
+ import { Box as u } from "@telegraph/layout";
7
+ import { Combobox as d } from "@telegraph/combobox";
8
+ //#region src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.tsx
9
+ var f = ({ teamId: f, msTeamsChannelsRecipientObject: p, queryOptions: m }) => {
10
+ let { connectionStatus: h } = r(), { data: g = [] } = i({
11
+ teamId: f,
12
+ queryOptions: m
13
+ }), _ = o(() => e(g), [g]), { data: v, updateConnectedChannels: y, error: b } = n({ msTeamsChannelsRecipientObject: p }), x = o(() => h === "disconnected" || h === "error" || !!b, [h, b]), S = o(() => h === "connecting" || h === "disconnecting", [h]), C = a((e) => g.some((t) => t.id === e), [g]), w = o(() => v?.filter((e) => e.ms_teams_channel_id && C(e.ms_teams_channel_id)).map((e) => e.ms_teams_channel_id), [v, C]);
14
+ return /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ c(u, {
15
+ w: "full",
16
+ minW: "0",
17
+ children: /* @__PURE__ */ l(d.Root, {
18
+ value: w,
19
+ onValueChange: (e) => {
20
+ let t = e.map((e) => ({
21
+ ms_teams_team_id: f,
22
+ ms_teams_channel_id: e
23
+ })), n = [...v?.filter((e) => !e.ms_teams_channel_id || !C(e.ms_teams_channel_id)) ?? [], ...t];
24
+ y(n).catch(console.error);
25
+ },
26
+ placeholder: "Select channels",
27
+ disabled: f === void 0 || x || S || g.length === 0,
28
+ closeOnSelect: !1,
29
+ layout: "wrap",
30
+ modal: !1,
31
+ children: [/* @__PURE__ */ c(d.Trigger, {}), /* @__PURE__ */ l(d.Content, { children: [
32
+ /* @__PURE__ */ c(d.Search, { className: "rtk-combobox__search" }),
33
+ /* @__PURE__ */ c(d.Options, {
34
+ maxHeight: "36",
35
+ children: _.map((e) => /* @__PURE__ */ c(d.Option, {
36
+ value: e.id,
37
+ children: e.displayName
38
+ }, e.id))
39
+ }),
40
+ /* @__PURE__ */ c(d.Empty, {})
41
+ ] })]
42
+ })
43
+ }), !!b && /* @__PURE__ */ c(t, { message: b })] });
36
44
  };
37
- export {
38
- V as MsTeamsChannelInTeamCombobox
39
- };
40
- //# sourceMappingURL=MsTeamsChannelInTeamCombobox.mjs.map
45
+ //#endregion
46
+ export { f as MsTeamsChannelInTeamCombobox };
47
+
48
+ //# sourceMappingURL=MsTeamsChannelInTeamCombobox.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsChannelInTeamCombobox.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.tsx"],"sourcesContent":["import { MsTeamsChannelConnection } from \"@knocklabs/client\";\nimport {\n MsTeamsChannelQueryOptions,\n RecipientObject,\n useConnectedMsTeamsChannels,\n useKnockMsTeamsClient,\n useMsTeamsChannels,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Box } from \"@telegraph/layout\";\nimport { FunctionComponent, useCallback, useMemo } from \"react\";\n\nimport { sortByDisplayName } from \"../../utils\";\n\nimport MsTeamsErrorMessage from \"./MsTeamsErrorMessage\";\n\ninterface MsTeamsChannelInTeamComboboxProps {\n teamId?: string;\n msTeamsChannelsRecipientObject: RecipientObject;\n queryOptions?: MsTeamsChannelQueryOptions;\n}\n\nexport const MsTeamsChannelInTeamCombobox: FunctionComponent<\n MsTeamsChannelInTeamComboboxProps\n> = ({ teamId, msTeamsChannelsRecipientObject, queryOptions }) => {\n const { connectionStatus } = useKnockMsTeamsClient();\n\n const { data: availableChannels = [] } = useMsTeamsChannels({\n teamId,\n queryOptions,\n });\n\n const sortedChannels = useMemo(\n () => sortByDisplayName(availableChannels),\n [availableChannels],\n );\n\n const {\n data: currentConnections,\n updateConnectedChannels,\n error: connectedChannelsError,\n } = useConnectedMsTeamsChannels({ msTeamsChannelsRecipientObject });\n\n const inErrorState = useMemo(\n () =>\n connectionStatus === \"disconnected\" ||\n connectionStatus === \"error\" ||\n !!connectedChannelsError,\n [connectionStatus, connectedChannelsError],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" || connectionStatus === \"disconnecting\",\n [connectionStatus],\n );\n\n const isChannelInThisTeam = useCallback(\n (channelId: string) =>\n availableChannels.some((channel) => channel.id === channelId),\n [availableChannels],\n );\n\n const comboboxValue = useMemo(\n () =>\n currentConnections\n ?.filter(\n (connection) =>\n connection.ms_teams_channel_id &&\n isChannelInThisTeam(connection.ms_teams_channel_id),\n )\n .map((connection) => connection.ms_teams_channel_id),\n [currentConnections, isChannelInThisTeam],\n );\n\n return (\n <>\n <Box w=\"full\" minW=\"0\">\n <Combobox.Root\n value={comboboxValue}\n onValueChange={(channelIds) => {\n const connectedChannelsInThisTeam =\n channelIds.map<MsTeamsChannelConnection>((channelId) => ({\n ms_teams_team_id: teamId,\n ms_teams_channel_id: channelId,\n }));\n const connectedChannelsInOtherTeams =\n currentConnections?.filter(\n (connection) =>\n !connection.ms_teams_channel_id ||\n !isChannelInThisTeam(connection.ms_teams_channel_id),\n ) ?? [];\n\n const updatedConnections = [\n ...connectedChannelsInOtherTeams,\n ...connectedChannelsInThisTeam,\n ];\n\n updateConnectedChannels(updatedConnections).catch(console.error);\n }}\n placeholder=\"Select channels\"\n disabled={\n teamId === undefined ||\n inErrorState ||\n inLoadingState ||\n availableChannels.length === 0\n }\n closeOnSelect={false}\n layout=\"wrap\"\n modal={\n // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.\n false\n }\n >\n <Combobox.Trigger />\n <Combobox.Content>\n <Combobox.Search className=\"rtk-combobox__search\" />\n <Combobox.Options maxHeight=\"36\">\n {sortedChannels.map((channel) => (\n <Combobox.Option key={channel.id} value={channel.id}>\n {channel.displayName}\n </Combobox.Option>\n ))}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n </Box>\n {!!connectedChannelsError && (\n <MsTeamsErrorMessage message={connectedChannelsError} />\n )}\n </>\n );\n};\n"],"names":["MsTeamsChannelInTeamCombobox","teamId","msTeamsChannelsRecipientObject","queryOptions","connectionStatus","useKnockMsTeamsClient","data","availableChannels","useMsTeamsChannels","sortedChannels","useMemo","sortByDisplayName","currentConnections","updateConnectedChannels","error","connectedChannelsError","useConnectedMsTeamsChannels","inErrorState","inLoadingState","isChannelInThisTeam","useCallback","channelId","some","channel","id","comboboxValue","filter","connection","ms_teams_channel_id","map","React","Box","Combobox","channelIds","connectedChannelsInThisTeam","ms_teams_team_id","updatedConnections","catch","console","undefined","length","displayName","MsTeamsErrorMessage"],"mappings":";;;;;;AAsBO,MAAMA,IAETA,CAAC;AAAA,EAAEC,QAAAA;AAAAA,EAAQC,gCAAAA;AAAAA,EAAgCC,cAAAA;AAAa,MAAM;AAC1D,QAAA;AAAA,IAAEC,kBAAAA;AAAAA,MAAqBC,EAAsB,GAE7C;AAAA,IAAEC,MAAMC,IAAoB,CAAA;AAAA,MAAOC,EAAmB;AAAA,IAC1DP,QAAAA;AAAAA,IACAE,cAAAA;AAAAA,EAAAA,CACD,GAEKM,IAAiBC,EACrB,MAAMC,EAAkBJ,CAAiB,GACzC,CAACA,CAAiB,CACpB,GAEM;AAAA,IACJD,MAAMM;AAAAA,IACNC,yBAAAA;AAAAA,IACAC,OAAOC;AAAAA,MACLC,EAA4B;AAAA,IAAEd,gCAAAA;AAAAA,EAAAA,CAAgC,GAE5De,IAAeP,EACnB,MACEN,MAAqB,kBACrBA,MAAqB,WACrB,CAAC,CAACW,GACJ,CAACX,GAAkBW,CAAsB,CAC3C,GAEMG,IAAiBR,EACrB,MACEN,MAAqB,gBAAgBA,MAAqB,iBAC5D,CAACA,CAAgB,CACnB,GAEMe,IAAsBC,EAC1B,CAACC,MACCd,EAAkBe,KAAMC,CAAYA,MAAAA,EAAQC,OAAOH,CAAS,GAC9D,CAACd,CAAiB,CACpB,GAEMkB,IAAgBf,EACpB,MACEE,KAAAA,gBAAAA,EACIc,OACCC,CACCA,MAAAA,EAAWC,uBACXT,EAAoBQ,EAAWC,mBAAmB,GAErDC,IAAKF,CAAeA,MAAAA,EAAWC,sBACpC,CAAChB,GAAoBO,CAAmB,CAC1C;AAEA,SAEIW,gBAAAA,EAAA,cAAAA,EAAA,UAAA,MAAAA,gBAAAA,EAAA,cAACC,GAAI,EAAA,GAAE,QAAO,MAAK,OAChBD,gBAAAA,EAAA,cAAAE,EAAS,MAAT,EACC,OAAOP,GACP,eAAgBQ,CAAeA,MAAA;AACvBC,UAAAA,IACJD,EAAWJ,IAA+BR,CAAeA,OAAA;AAAA,MACvDc,kBAAkBlC;AAAAA,MAClB2B,qBAAqBP;AAAAA,IAAAA,EACrB,GAQEe,IAAqB,CACzB,IAPAxB,KAAAA,gBAAAA,EAAoBc,OACjBC,CAAAA,MACC,CAACA,EAAWC,uBACZ,CAACT,EAAoBQ,EAAWC,mBAAmB,OAClD,CAAE,GAIP,GAAGM,CAA2B;AAGhCrB,IAAAA,EAAwBuB,CAAkB,EAAEC,MAAMC,QAAQxB,KAAK;AAAA,EAAA,GAEjE,aAAY,mBACZ,UACEb,MAAWsC,UACXtB,KACAC,KACAX,EAAkBiC,WAAW,GAE/B,eAAe,IACf,QAAO,QACP;AAAA;AAAA,IAEE;AAAA,IAGF,GAAAV,gBAAAA,EAAA,cAACE,EAAS,SAAT,IAAgB,mCAChBA,EAAS,SAAT,MACCF,gBAAAA,EAAA,cAACE,EAAS,QAAT,EAAgB,WAAU,uBAAsB,CAAA,GACjDF,gBAAAA,EAAA,cAACE,EAAS,SAAT,EAAiB,WAAU,KACzBvB,GAAAA,EAAeoB,IAAKN,CAAAA,MAClBO,gBAAAA,EAAA,cAAAE,EAAS,QAAT,EAAgB,KAAKT,EAAQC,IAAI,OAAOD,EAAQC,GAC9CD,GAAAA,EAAQkB,WACX,CACD,CACH,GACCX,gBAAAA,EAAA,cAAAE,EAAS,OAAT,IAAc,CACjB,CACF,CACF,GACC,CAAC,CAACjB,KACAe,gBAAAA,EAAA,cAAAY,GAAA,EAAoB,SAAS3B,EAC/B,CAAA,CACH;AAEJ;"}
1
+ {"version":3,"file":"MsTeamsChannelInTeamCombobox.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelInTeamCombobox.tsx"],"sourcesContent":["import { MsTeamsChannelConnection } from \"@knocklabs/client\";\nimport {\n MsTeamsChannelQueryOptions,\n RecipientObject,\n useConnectedMsTeamsChannels,\n useKnockMsTeamsClient,\n useMsTeamsChannels,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Box } from \"@telegraph/layout\";\nimport { FunctionComponent, useCallback, useMemo } from \"react\";\n\nimport { sortByDisplayName } from \"../../utils\";\n\nimport MsTeamsErrorMessage from \"./MsTeamsErrorMessage\";\n\ninterface MsTeamsChannelInTeamComboboxProps {\n teamId?: string;\n msTeamsChannelsRecipientObject: RecipientObject;\n queryOptions?: MsTeamsChannelQueryOptions;\n}\n\nexport const MsTeamsChannelInTeamCombobox: FunctionComponent<\n MsTeamsChannelInTeamComboboxProps\n> = ({ teamId, msTeamsChannelsRecipientObject, queryOptions }) => {\n const { connectionStatus } = useKnockMsTeamsClient();\n\n const { data: availableChannels = [] } = useMsTeamsChannels({\n teamId,\n queryOptions,\n });\n\n const sortedChannels = useMemo(\n () => sortByDisplayName(availableChannels),\n [availableChannels],\n );\n\n const {\n data: currentConnections,\n updateConnectedChannels,\n error: connectedChannelsError,\n } = useConnectedMsTeamsChannels({ msTeamsChannelsRecipientObject });\n\n const inErrorState = useMemo(\n () =>\n connectionStatus === \"disconnected\" ||\n connectionStatus === \"error\" ||\n !!connectedChannelsError,\n [connectionStatus, connectedChannelsError],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" || connectionStatus === \"disconnecting\",\n [connectionStatus],\n );\n\n const isChannelInThisTeam = useCallback(\n (channelId: string) =>\n availableChannels.some((channel) => channel.id === channelId),\n [availableChannels],\n );\n\n const comboboxValue = useMemo(\n () =>\n currentConnections\n ?.filter(\n (connection) =>\n connection.ms_teams_channel_id &&\n isChannelInThisTeam(connection.ms_teams_channel_id),\n )\n .map((connection) => connection.ms_teams_channel_id),\n [currentConnections, isChannelInThisTeam],\n );\n\n return (\n <>\n <Box w=\"full\" minW=\"0\">\n <Combobox.Root\n value={comboboxValue}\n onValueChange={(channelIds) => {\n const connectedChannelsInThisTeam =\n channelIds.map<MsTeamsChannelConnection>((channelId) => ({\n ms_teams_team_id: teamId,\n ms_teams_channel_id: channelId,\n }));\n const connectedChannelsInOtherTeams =\n currentConnections?.filter(\n (connection) =>\n !connection.ms_teams_channel_id ||\n !isChannelInThisTeam(connection.ms_teams_channel_id),\n ) ?? [];\n\n const updatedConnections = [\n ...connectedChannelsInOtherTeams,\n ...connectedChannelsInThisTeam,\n ];\n\n updateConnectedChannels(updatedConnections).catch(console.error);\n }}\n placeholder=\"Select channels\"\n disabled={\n teamId === undefined ||\n inErrorState ||\n inLoadingState ||\n availableChannels.length === 0\n }\n closeOnSelect={false}\n layout=\"wrap\"\n modal={\n // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.\n false\n }\n >\n <Combobox.Trigger />\n <Combobox.Content>\n <Combobox.Search className=\"rtk-combobox__search\" />\n <Combobox.Options maxHeight=\"36\">\n {sortedChannels.map((channel) => (\n <Combobox.Option key={channel.id} value={channel.id}>\n {channel.displayName}\n </Combobox.Option>\n ))}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n </Box>\n {!!connectedChannelsError && (\n <MsTeamsErrorMessage message={connectedChannelsError} />\n )}\n </>\n );\n};\n"],"mappings":";;;;;;;;AAsBA,IAAa,KAER,EAAE,WAAQ,mCAAgC,sBAAmB;CAChE,IAAM,EAAE,wBAAqB,EAAsB,GAE7C,EAAE,MAAM,IAAoB,CAAC,MAAM,EAAmB;EAC1D;EACA;CACF,CAAC,GAEK,IAAiB,QACf,EAAkB,CAAiB,GACzC,CAAC,CAAiB,CACpB,GAEM,EACJ,MAAM,GACN,4BACA,OAAO,MACL,EAA4B,EAAE,kCAA+B,CAAC,GAE5D,IAAe,QAEjB,MAAqB,kBACrB,MAAqB,WACrB,CAAC,CAAC,GACJ,CAAC,GAAkB,CAAsB,CAC3C,GAEM,IAAiB,QAEnB,MAAqB,gBAAgB,MAAqB,iBAC5D,CAAC,CAAgB,CACnB,GAEM,IAAsB,GACzB,MACC,EAAkB,MAAM,MAAY,EAAQ,OAAO,CAAS,GAC9D,CAAC,CAAiB,CACpB,GAEM,IAAgB,QAElB,GACI,QACC,MACC,EAAW,uBACX,EAAoB,EAAW,mBAAmB,CACtD,CAAC,CACA,KAAK,MAAe,EAAW,mBAAmB,GACvD,CAAC,GAAoB,CAAmB,CAC1C;CAEA,OACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;EAAK,GAAE;EAAO,MAAK;YACjB,kBAAC,EAAS,MAAV;GACE,OAAO;GACP,gBAAgB,MAAe;IAC7B,IAAM,IACJ,EAAW,KAA+B,OAAe;KACvD,kBAAkB;KAClB,qBAAqB;IACvB,EAAE,GAQE,IAAqB,CACzB,GAPA,GAAoB,QACjB,MACC,CAAC,EAAW,uBACZ,CAAC,EAAoB,EAAW,mBAAmB,CACvD,KAAK,CAAC,GAIN,GAAG,CACL;IAEA,EAAwB,CAAkB,CAAC,CAAC,MAAM,QAAQ,KAAK;GACjE;GACA,aAAY;GACZ,UACE,MAAW,KAAA,KACX,KACA,KACA,EAAkB,WAAW;GAE/B,eAAe;GACf,QAAO;GACP,OAEE;aAjCJ,CAoCE,kBAAC,EAAS,SAAV,CAAmB,CAAA,GACnB,kBAAC,EAAS,SAAV,EAAA,UAAA;IACE,kBAAC,EAAS,QAAV,EAAiB,WAAU,uBAAwB,CAAA;IACnD,kBAAC,EAAS,SAAV;KAAkB,WAAU;eACzB,EAAe,KAAK,MACnB,kBAAC,EAAS,QAAV;MAAkC,OAAO,EAAQ;gBAC9C,EAAQ;KACM,GAFK,EAAQ,EAEb,CAClB;IACe,CAAA;IAClB,kBAAC,EAAS,OAAV,CAAiB,CAAA;GACD,EAAA,CAAA,CACL;;CACZ,CAAA,GACJ,CAAC,CAAC,KACD,kBAAC,GAAD,EAAqB,SAAS,EAAyB,CAAA,CAEzD,EAAA,CAAA;AAEN"}
@@ -1,15 +1,12 @@
1
- import n from "react";
2
- import { useTranslations as o, useKnockMsTeamsClient as s } from "@knocklabs/react-core";
3
- import t from "./MsTeamsErrorMessage.mjs";
4
- const i = () => {
5
- const {
6
- t: r
7
- } = o(), {
8
- connectionStatus: e
9
- } = s();
10
- return e === "disconnected" || e === "error" ? /* @__PURE__ */ n.createElement(t, { message: r(e === "disconnected" ? "msTeamsConnectionErrorOccurred" : "msTeamsConnectionErrorExists") }) : null;
1
+ import e from "./MsTeamsErrorMessage.mjs";
2
+ import { useKnockMsTeamsClient as t, useTranslations as n } from "@knocklabs/react-core";
3
+ import { jsx as r } from "react/jsx-runtime";
4
+ //#region src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.tsx
5
+ var i = () => {
6
+ let { t: i } = n(), { connectionStatus: a } = t();
7
+ return a === "disconnected" || a === "error" ? /* @__PURE__ */ r(e, { message: i(a === "disconnected" ? "msTeamsConnectionErrorOccurred" : "msTeamsConnectionErrorExists") }) : null;
11
8
  };
12
- export {
13
- i as default
14
- };
15
- //# sourceMappingURL=MsTeamsConnectionError.mjs.map
9
+ //#endregion
10
+ export { i as default };
11
+
12
+ //# sourceMappingURL=MsTeamsConnectionError.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsConnectionError.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.tsx"],"sourcesContent":["import { useKnockMsTeamsClient, useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport MsTeamsErrorMessage from \"./MsTeamsErrorMessage\";\n\nconst MsTeamsConnectionError: FunctionComponent = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockMsTeamsClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <MsTeamsErrorMessage\n message={\n connectionStatus === \"disconnected\"\n ? t(\"msTeamsConnectionErrorOccurred\")\n : t(\"msTeamsConnectionErrorExists\")\n }\n />\n );\n }\n\n return null;\n};\n\nexport default MsTeamsConnectionError;\n"],"names":["MsTeamsConnectionError","t","useTranslations","connectionStatus","useKnockMsTeamsClient","React","MsTeamsErrorMessage"],"mappings":";;;AAKA,MAAMA,IAA4CA,MAAM;AAChD,QAAA;AAAA,IAAEC,GAAAA;AAAAA,MAAMC,EAAgB,GACxB;AAAA,IAAEC,kBAAAA;AAAAA,MAAqBC,EAAsB;AAE/CD,SAAAA,MAAqB,kBAAkBA,MAAqB,UAE5DE,gBAAAA,EAAA,cAACC,GACC,EAAA,SAEML,EADJE,MAAqB,iBACf,mCACA,8BADgC,EAGxC,CAAA,IAIC;AACT;"}
1
+ {"version":3,"file":"MsTeamsConnectionError.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsConnectionError.tsx"],"sourcesContent":["import { useKnockMsTeamsClient, useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport MsTeamsErrorMessage from \"./MsTeamsErrorMessage\";\n\nconst MsTeamsConnectionError: FunctionComponent = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockMsTeamsClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <MsTeamsErrorMessage\n message={\n connectionStatus === \"disconnected\"\n ? t(\"msTeamsConnectionErrorOccurred\")\n : t(\"msTeamsConnectionErrorExists\")\n }\n />\n );\n }\n\n return null;\n};\n\nexport default MsTeamsConnectionError;\n"],"mappings":";;;;AAKA,IAAM,UAAkD;CACtD,IAAM,EAAE,SAAM,EAAgB,GACxB,EAAE,wBAAqB,EAAsB;CAcnD,OAZI,MAAqB,kBAAkB,MAAqB,UAE5D,kBAAC,GAAD,EACE,SAEM,EADJ,MAAqB,iBACf,mCACA,8BAA8B,EAEvC,CAAA,IAIE;AACT"}
@@ -1,11 +1,23 @@
1
- import e from "react";
2
- import { Icon as o } from "@telegraph/icon";
3
- import { Text as t } from "@telegraph/typography";
4
- import { Info as a } from "lucide-react";
5
- const s = ({
6
- message: r
7
- }) => /* @__PURE__ */ e.createElement("div", { className: "rtk-combobox__error" }, /* @__PURE__ */ e.createElement("span", null, /* @__PURE__ */ e.createElement(o, { icon: a, color: "black", size: "1", "aria-hidden": !0 })), /* @__PURE__ */ e.createElement(t, { as: "div", color: "black", size: "1" }, r));
8
- export {
9
- s as default
10
- };
11
- //# sourceMappingURL=MsTeamsErrorMessage.mjs.map
1
+ import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
+ import { Icon as n } from "@telegraph/icon";
3
+ import { Text as r } from "@telegraph/typography";
4
+ import { Info as i } from "lucide-react";
5
+ //#region src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.tsx
6
+ var a = ({ message: a }) => /* @__PURE__ */ t("div", {
7
+ className: "rtk-combobox__error",
8
+ children: [/* @__PURE__ */ e("span", { children: /* @__PURE__ */ e(n, {
9
+ icon: i,
10
+ color: "black",
11
+ size: "1",
12
+ "aria-hidden": !0
13
+ }) }), /* @__PURE__ */ e(r, {
14
+ as: "div",
15
+ color: "black",
16
+ size: "1",
17
+ children: a
18
+ })]
19
+ });
20
+ //#endregion
21
+ export { a as default };
22
+
23
+ //# sourceMappingURL=MsTeamsErrorMessage.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsErrorMessage.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.tsx"],"sourcesContent":["import { Icon } from \"@telegraph/icon\";\nimport { Text } from \"@telegraph/typography\";\nimport { Info } from \"lucide-react\";\nimport { FunctionComponent } from \"react\";\n\ninterface Props {\n message?: string;\n}\n\nconst MsTeamsErrorMessage: FunctionComponent<Props> = ({ message }) => {\n return (\n <div className=\"rtk-combobox__error\">\n <span>\n <Icon icon={Info} color=\"black\" size=\"1\" aria-hidden />\n </span>\n <Text as=\"div\" color=\"black\" size=\"1\">\n {message}\n </Text>\n </div>\n );\n};\n\nexport default MsTeamsErrorMessage;\n"],"names":["MsTeamsErrorMessage","message","React","Icon","Info","Text"],"mappings":";;;;AASA,MAAMA,IAAgDA,CAAC;AAAA,EAAEC,SAAAA;AAAQ,MAE7DC,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,sBACb,GAAAA,gBAAAA,EAAA,cAAC,QACC,MAAAA,gBAAAA,EAAA,cAACC,GAAK,EAAA,MAAMC,GAAM,OAAM,SAAQ,MAAK,KAAI,eAAW,GAAA,CAAA,CACtD,GACAF,gBAAAA,EAAA,cAACG,GAAK,EAAA,IAAG,OAAM,OAAM,SAAQ,MAAK,IAC/BJ,GAAAA,CACH,CACF;"}
1
+ {"version":3,"file":"MsTeamsErrorMessage.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsErrorMessage.tsx"],"sourcesContent":["import { Icon } from \"@telegraph/icon\";\nimport { Text } from \"@telegraph/typography\";\nimport { Info } from \"lucide-react\";\nimport { FunctionComponent } from \"react\";\n\ninterface Props {\n message?: string;\n}\n\nconst MsTeamsErrorMessage: FunctionComponent<Props> = ({ message }) => {\n return (\n <div className=\"rtk-combobox__error\">\n <span>\n <Icon icon={Info} color=\"black\" size=\"1\" aria-hidden />\n </span>\n <Text as=\"div\" color=\"black\" size=\"1\">\n {message}\n </Text>\n </div>\n );\n};\n\nexport default MsTeamsErrorMessage;\n"],"mappings":";;;;;AASA,IAAM,KAAiD,EAAE,iBAErD,kBAAC,OAAD;CAAK,WAAU;WAAf,CACE,kBAAC,QAAD,EAAA,UACE,kBAAC,GAAD;EAAM,MAAM;EAAM,OAAM;EAAQ,MAAK;EAAI,eAAA;CAAa,CAAA,EAClD,CAAA,GACN,kBAAC,GAAD;EAAM,IAAG;EAAM,OAAM;EAAQ,MAAK;YAC/B;CACG,CAAA,CACH"}
@@ -1,34 +1,42 @@
1
- import e, { useMemo as c } from "react";
2
- import { useKnockMsTeamsClient as E, useMsTeamsTeams as T } from "@knocklabs/react-core";
3
- import { Combobox as o } from "@telegraph/combobox";
4
- import { Box as b } from "@telegraph/layout";
5
- import { sortByDisplayName as h } from "../../utils.mjs";
6
- const N = ({
7
- team: s,
8
- onTeamChange: m,
9
- getChannelCount: d,
10
- queryOptions: u
11
- }) => {
12
- const {
13
- connectionStatus: n
14
- } = E(), {
15
- data: i,
16
- isLoading: l
17
- } = T({
18
- queryOptions: u
19
- }), r = c(() => h(i), [i]), p = c(() => n === "disconnected" || n === "error", [n]), f = c(() => n === "connecting" || n === "disconnecting" || l, [n, l]);
20
- return /* @__PURE__ */ e.createElement(b, { w: "full", minW: "0" }, /* @__PURE__ */ e.createElement(o.Root, { value: s == null ? void 0 : s.id, onValueChange: (t) => {
21
- const a = r.find((g) => g.id === t);
22
- a && m(a);
23
- }, placeholder: "Select team", disabled: p || f || r.length === 0, modal: (
24
- // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.
25
- !1
26
- ) }, /* @__PURE__ */ e.createElement(o.Trigger, null), /* @__PURE__ */ e.createElement(o.Content, null, /* @__PURE__ */ e.createElement(o.Search, { className: "rtk-combobox__search" }), /* @__PURE__ */ e.createElement(o.Options, { maxHeight: "36" }, r.map((t) => {
27
- const a = d(t.id);
28
- return /* @__PURE__ */ e.createElement(o.Option, { key: t.id, value: t.id }, a > 0 ? `${t.displayName} (${a})` : t.displayName);
29
- })), /* @__PURE__ */ e.createElement(o.Empty, null))));
1
+ import { sortByDisplayName as e } from "../../utils.mjs";
2
+ import { useKnockMsTeamsClient as t, useMsTeamsTeams as n } from "@knocklabs/react-core";
3
+ import { useMemo as r } from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import { Box as o } from "@telegraph/layout";
6
+ import { Combobox as s } from "@telegraph/combobox";
7
+ //#region src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.tsx
8
+ var c = ({ team: c, onTeamChange: l, getChannelCount: u, queryOptions: d }) => {
9
+ let { connectionStatus: f } = t(), { data: p, isLoading: m } = n({ queryOptions: d }), h = r(() => e(p), [p]), g = r(() => f === "disconnected" || f === "error", [f]), _ = r(() => f === "connecting" || f === "disconnecting" || m, [f, m]);
10
+ return /* @__PURE__ */ i(o, {
11
+ w: "full",
12
+ minW: "0",
13
+ children: /* @__PURE__ */ a(s.Root, {
14
+ value: c?.id,
15
+ onValueChange: (e) => {
16
+ let t = h.find((t) => t.id === e);
17
+ t && l(t);
18
+ },
19
+ placeholder: "Select team",
20
+ disabled: g || _ || h.length === 0,
21
+ modal: !1,
22
+ children: [/* @__PURE__ */ i(s.Trigger, {}), /* @__PURE__ */ a(s.Content, { children: [
23
+ /* @__PURE__ */ i(s.Search, { className: "rtk-combobox__search" }),
24
+ /* @__PURE__ */ i(s.Options, {
25
+ maxHeight: "36",
26
+ children: h.map((e) => {
27
+ let t = u(e.id);
28
+ return /* @__PURE__ */ i(s.Option, {
29
+ value: e.id,
30
+ children: t > 0 ? `${e.displayName} (${t})` : e.displayName
31
+ }, e.id);
32
+ })
33
+ }),
34
+ /* @__PURE__ */ i(s.Empty, {})
35
+ ] })]
36
+ })
37
+ });
30
38
  };
31
- export {
32
- N as MsTeamsTeamCombobox
33
- };
34
- //# sourceMappingURL=MsTeamsTeamCombobox.mjs.map
39
+ //#endregion
40
+ export { c as MsTeamsTeamCombobox };
41
+
42
+ //# sourceMappingURL=MsTeamsTeamCombobox.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsTeamsTeamCombobox.mjs","sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.tsx"],"sourcesContent":["import { MsTeamsTeam } from \"@knocklabs/client\";\nimport {\n MsTeamsTeamQueryOptions,\n useKnockMsTeamsClient,\n useMsTeamsTeams,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Box } from \"@telegraph/layout\";\nimport { FunctionComponent, useMemo } from \"react\";\n\nimport { sortByDisplayName } from \"../../utils\";\n\ninterface MsTeamsTeamComboboxProps {\n team: MsTeamsTeam | null;\n onTeamChange: (team: MsTeamsTeam) => void;\n getChannelCount: (teamId: string) => number;\n queryOptions?: MsTeamsTeamQueryOptions;\n}\n\nexport const MsTeamsTeamCombobox: FunctionComponent<\n MsTeamsTeamComboboxProps\n> = ({ team, onTeamChange, getChannelCount, queryOptions }) => {\n const { connectionStatus } = useKnockMsTeamsClient();\n\n const { data: teams, isLoading: isLoadingTeams } = useMsTeamsTeams({\n queryOptions,\n });\n\n const sortedTeams = useMemo(() => sortByDisplayName(teams), [teams]);\n\n const inErrorState = useMemo(\n () => connectionStatus === \"disconnected\" || connectionStatus === \"error\",\n [connectionStatus],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\" ||\n isLoadingTeams,\n [connectionStatus, isLoadingTeams],\n );\n\n return (\n <Box w=\"full\" minW=\"0\">\n <Combobox.Root\n value={team?.id}\n onValueChange={(teamId) => {\n const selectedTeam = sortedTeams.find((team) => team.id === teamId);\n if (selectedTeam) {\n onTeamChange(selectedTeam);\n }\n }}\n placeholder=\"Select team\"\n disabled={inErrorState || inLoadingState || sortedTeams.length === 0}\n modal={\n // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.\n false\n }\n >\n <Combobox.Trigger />\n <Combobox.Content>\n <Combobox.Search className=\"rtk-combobox__search\" />\n <Combobox.Options maxHeight=\"36\">\n {sortedTeams.map((team) => {\n const channelCount = getChannelCount(team.id);\n return (\n <Combobox.Option key={team.id} value={team.id}>\n {channelCount > 0\n ? `${team.displayName} (${channelCount})`\n : team.displayName}\n </Combobox.Option>\n );\n })}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n </Box>\n );\n};\n"],"names":["MsTeamsTeamCombobox","team","onTeamChange","getChannelCount","queryOptions","connectionStatus","useKnockMsTeamsClient","data","teams","isLoading","isLoadingTeams","useMsTeamsTeams","sortedTeams","useMemo","sortByDisplayName","inErrorState","inLoadingState","React","Box","Combobox","id","teamId","selectedTeam","find","length","map","channelCount","displayName"],"mappings":";;;;;AAmBO,MAAMA,IAETA,CAAC;AAAA,EAAEC,MAAAA;AAAAA,EAAMC,cAAAA;AAAAA,EAAcC,iBAAAA;AAAAA,EAAiBC,cAAAA;AAAa,MAAM;AACvD,QAAA;AAAA,IAAEC,kBAAAA;AAAAA,MAAqBC,EAAsB,GAE7C;AAAA,IAAEC,MAAMC;AAAAA,IAAOC,WAAWC;AAAAA,MAAmBC,EAAgB;AAAA,IACjEP,cAAAA;AAAAA,EAAAA,CACD,GAEKQ,IAAcC,EAAQ,MAAMC,EAAkBN,CAAK,GAAG,CAACA,CAAK,CAAC,GAE7DO,IAAeF,EACnB,MAAMR,MAAqB,kBAAkBA,MAAqB,SAClE,CAACA,CAAgB,CACnB,GAEMW,IAAiBH,EACrB,MACER,MAAqB,gBACrBA,MAAqB,mBACrBK,GACF,CAACL,GAAkBK,CAAc,CACnC;AAEA,SACGO,gBAAAA,EAAA,cAAAC,GAAA,EAAI,GAAE,QAAO,MAAK,OACjBD,gBAAAA,EAAA,cAACE,EAAS,MAAT,EACC,OAAOlB,KAAAA,gBAAAA,EAAMmB,IACb,eAAgBC,CAAWA,MAAA;AACzB,UAAMC,IAAeV,EAAYW,KAAMtB,CAAAA,MAASA,EAAKmB,OAAOC,CAAM;AAClE,IAAIC,KACFpB,EAAaoB,CAAY;AAAA,EAC3B,GAEF,aAAY,eACZ,UAAUP,KAAgBC,KAAkBJ,EAAYY,WAAW,GACnE;AAAA;AAAA,IAEE;AAAA,IAGF,GAAAP,gBAAAA,EAAA,cAACE,EAAS,SAAT,IAAgB,mCAChBA,EAAS,SAAT,MACCF,gBAAAA,EAAA,cAACE,EAAS,QAAT,EAAgB,WAAU,uBAAA,CAAsB,GACjDF,gBAAAA,EAAA,cAACE,EAAS,SAAT,EAAiB,WAAU,KACzBP,GAAAA,EAAYa,IAAKxB,CAAAA,MAAS;AACnByB,UAAAA,IAAevB,EAAgBF,EAAKmB,EAAE;AAC5C,2CACGD,EAAS,QAAT,EAAgB,KAAKlB,EAAKmB,IAAI,OAAOnB,EAAKmB,MACxCM,IAAe,IACZ,GAAGzB,EAAK0B,WAAW,KAAKD,CAAY,MACpCzB,EAAK0B,WACX;AAAA,EAAA,CAEH,CACH,GACAV,gBAAAA,EAAA,cAACE,EAAS,OAAT,IAAc,CACjB,CACF,CACF;AAEJ;"}
1
+ {"version":3,"file":"MsTeamsTeamCombobox.mjs","names":[],"sources":["../../../../../../src/modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsTeamCombobox.tsx"],"sourcesContent":["import { MsTeamsTeam } from \"@knocklabs/client\";\nimport {\n MsTeamsTeamQueryOptions,\n useKnockMsTeamsClient,\n useMsTeamsTeams,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Box } from \"@telegraph/layout\";\nimport { FunctionComponent, useMemo } from \"react\";\n\nimport { sortByDisplayName } from \"../../utils\";\n\ninterface MsTeamsTeamComboboxProps {\n team: MsTeamsTeam | null;\n onTeamChange: (team: MsTeamsTeam) => void;\n getChannelCount: (teamId: string) => number;\n queryOptions?: MsTeamsTeamQueryOptions;\n}\n\nexport const MsTeamsTeamCombobox: FunctionComponent<\n MsTeamsTeamComboboxProps\n> = ({ team, onTeamChange, getChannelCount, queryOptions }) => {\n const { connectionStatus } = useKnockMsTeamsClient();\n\n const { data: teams, isLoading: isLoadingTeams } = useMsTeamsTeams({\n queryOptions,\n });\n\n const sortedTeams = useMemo(() => sortByDisplayName(teams), [teams]);\n\n const inErrorState = useMemo(\n () => connectionStatus === \"disconnected\" || connectionStatus === \"error\",\n [connectionStatus],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\" ||\n isLoadingTeams,\n [connectionStatus, isLoadingTeams],\n );\n\n return (\n <Box w=\"full\" minW=\"0\">\n <Combobox.Root\n value={team?.id}\n onValueChange={(teamId) => {\n const selectedTeam = sortedTeams.find((team) => team.id === teamId);\n if (selectedTeam) {\n onTeamChange(selectedTeam);\n }\n }}\n placeholder=\"Select team\"\n disabled={inErrorState || inLoadingState || sortedTeams.length === 0}\n modal={\n // Modal comboboxes cause page layout to shift when body has padding. See KNO-7854.\n false\n }\n >\n <Combobox.Trigger />\n <Combobox.Content>\n <Combobox.Search className=\"rtk-combobox__search\" />\n <Combobox.Options maxHeight=\"36\">\n {sortedTeams.map((team) => {\n const channelCount = getChannelCount(team.id);\n return (\n <Combobox.Option key={team.id} value={team.id}>\n {channelCount > 0\n ? `${team.displayName} (${channelCount})`\n : team.displayName}\n </Combobox.Option>\n );\n })}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n </Box>\n );\n};\n"],"mappings":";;;;;;;AAmBA,IAAa,KAER,EAAE,SAAM,iBAAc,oBAAiB,sBAAmB;CAC7D,IAAM,EAAE,wBAAqB,EAAsB,GAE7C,EAAE,MAAM,GAAO,WAAW,MAAmB,EAAgB,EACjE,gBACF,CAAC,GAEK,IAAc,QAAc,EAAkB,CAAK,GAAG,CAAC,CAAK,CAAC,GAE7D,IAAe,QACb,MAAqB,kBAAkB,MAAqB,SAClE,CAAC,CAAgB,CACnB,GAEM,IAAiB,QAEnB,MAAqB,gBACrB,MAAqB,mBACrB,GACF,CAAC,GAAkB,CAAc,CACnC;CAEA,OACE,kBAAC,GAAD;EAAK,GAAE;EAAO,MAAK;YACjB,kBAAC,EAAS,MAAV;GACE,OAAO,GAAM;GACb,gBAAgB,MAAW;IACzB,IAAM,IAAe,EAAY,MAAM,MAAS,EAAK,OAAO,CAAM;IAClE,AAAI,KACF,EAAa,CAAY;GAE7B;GACA,aAAY;GACZ,UAAU,KAAgB,KAAkB,EAAY,WAAW;GACnE,OAEE;aAZJ,CAeE,kBAAC,EAAS,SAAV,CAAmB,CAAA,GACnB,kBAAC,EAAS,SAAV,EAAA,UAAA;IACE,kBAAC,EAAS,QAAV,EAAiB,WAAU,uBAAwB,CAAA;IACnD,kBAAC,EAAS,SAAV;KAAkB,WAAU;eACzB,EAAY,KAAK,MAAS;MACzB,IAAM,IAAe,EAAgB,EAAK,EAAE;MAC5C,OACE,kBAAC,EAAS,QAAV;OAA+B,OAAO,EAAK;iBACxC,IAAe,IACZ,GAAG,EAAK,YAAY,IAAI,EAAa,KACrC,EAAK;MACM,GAJK,EAAK,EAIV;KAErB,CAAC;IACe,CAAA;IAClB,kBAAC,EAAS,OAAV,CAAiB,CAAA;GACD,EAAA,CAAA,CACL;;CACZ,CAAA;AAET"}
@@ -0,0 +1,2 @@
1
+ import e from "./MsTeamsChannelCombobox.mjs";
2
+ export { e as MsTeamsChannelCombobox };