@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,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),h=require("@knocklabs/react-core"),d=require("@telegraph/combobox"),p=require("@telegraph/icon"),_=require("@telegraph/layout"),A=require("@telegraph/typography"),x=require("lucide-react");;/* empty css */const T=require("../../utils.js"),v=require("../SlackAddChannelInput/SlackAddChannelInput.js"),F=require("./SlackConnectionError.js"),O=require("./SlackErrorMessage.js");;/* empty css */const D=c=>c&&typeof c=="object"&&"default"in c?c:{default:c},n=D(u),H=1e3,R=({slackChannelsRecipientObject:c,queryOptions:q,inputMessages:o})=>{const{t:i}=h.useTranslations(),{connectionStatus:a,errorLabel:b}=h.useKnockSlackClient(),{data:S,isLoading:k}=h.useSlackChannels({queryOptions:q}),l=u.useMemo(()=>T.sortSlackChannelsAlphabetically(S),[S]),{data:m,updateConnectedChannels:f,error:s,updating:y}=h.useConnectedSlackChannels({slackChannelsRecipientObject:c}),t=u.useMemo(()=>{const e=new Map(l.map(r=>[r.id,r]));return(m==null?void 0:m.filter(r=>e.has(r.channel_id||"")))||[]},[m,l]),C=u.useMemo(()=>a==="disconnected"||a==="error"||!!s,[s,a]),E=u.useMemo(()=>a==="connecting"||a==="disconnecting"||k,[a,k]),L=u.useMemo(()=>{const e={disconnected:i("slackSearchbarDisconnected"),noChannelsConnected:i("slackSearchbarNoChannelsConnected"),noSlackChannelsFound:i("slackSearchbarNoChannelsFound"),channelsError:i("slackSearchbarChannelsError")};if(a==="disconnected")return(o==null?void 0:o.disconnected)||e.disconnected;if(a==="error")return(o==null?void 0:o.error)||b;if(!E&&l.length===0)return(o==null?void 0:o.noSlackChannelsFound)||e.noSlackChannelsFound;const r=(t==null?void 0:t.length)||0;return t&&r===0?(o==null?void 0:o.noChannelsConnected)||e.noChannelsConnected:""},[a,E,l,t,o,b,i]),N=u.useMemo(()=>t.map(e=>e.channel_id),[t]);return l.length>H?n.default.createElement(v,{inErrorState:C,connectedChannels:t||[],updateConnectedChannels:f,connectedChannelsError:s,connectedChannelsUpdating:y}):n.default.createElement(_.Stack,{className:"tgph rsk-combobox__grid",gap:"3"},n.default.createElement(A.Text,{color:"gray",size:"2",as:"div",minHeight:"8",className:"rsk-combobox__label"},"Channels"),n.default.createElement(d.Combobox.Root,{value:N,onValueChange:e=>{const r=e.map(g=>({channel_id:g}));f(r).catch(console.error)},placeholder:L??"",disabled:C||l.length===0,errored:C,closeOnSelect:!1,layout:"wrap",modal:!1},n.default.createElement(d.Combobox.Trigger,null),n.default.createElement(d.Combobox.Content,null,n.default.createElement(d.Combobox.Search,{label:i("slackSearchChannels"),className:"rsk-combobox__search"}),n.default.createElement(d.Combobox.Options,{maxHeight:"36"},l.map(e=>n.default.createElement(d.Combobox.Option,{key:e.id,value:e.id},n.default.createElement(_.Stack,{align:"center",gap:"1"},n.default.createElement(p.Icon,{icon:e.is_private?x.Lock:x.Hash,size:"0","aria-hidden":!0}),e.name)))),n.default.createElement(d.Combobox.Empty,null))),n.default.createElement(F,null),!!s&&n.default.createElement(O,{message:s}))};exports.SlackChannelCombobox=R;
2
- //# sourceMappingURL=SlackChannelCombobox.js.map
1
+ "use strict";;/* empty css */const e=require("../../utils.js"),t=require("./SlackErrorMessage.js"),n=require("./SlackConnectionError.js"),r=require("../SlackAddChannelInput/SlackAddChannelInput.js");;/* empty css */let i=require("@knocklabs/react-core"),a=require("react"),o=require("react/jsx-runtime"),s=require("@telegraph/icon"),c=require("@telegraph/layout"),l=require("@telegraph/typography"),u=require("lucide-react"),d=require("@telegraph/combobox");var f=1e3,p=({slackChannelsRecipientObject:p,queryOptions:m,inputMessages:h})=>{let{t:g}=(0,i.useTranslations)(),{connectionStatus:_,errorLabel:v}=(0,i.useKnockSlackClient)(),{data:y,isLoading:b}=(0,i.useSlackChannels)({queryOptions:m}),x=(0,a.useMemo)(()=>e.sortSlackChannelsAlphabetically(y),[y]),{data:S,updateConnectedChannels:C,error:w,updating:T}=(0,i.useConnectedSlackChannels)({slackChannelsRecipientObject:p}),E=(0,a.useMemo)(()=>{let e=new Map(x.map(e=>[e.id,e]));return S?.filter(t=>e.has(t.channel_id||``))||[]},[S,x]),D=(0,a.useMemo)(()=>_===`disconnected`||_===`error`||!!w,[w,_]),O=(0,a.useMemo)(()=>_===`connecting`||_===`disconnecting`||b,[_,b]),k=(0,a.useMemo)(()=>{let e={disconnected:g(`slackSearchbarDisconnected`),noChannelsConnected:g(`slackSearchbarNoChannelsConnected`),noSlackChannelsFound:g(`slackSearchbarNoChannelsFound`),channelsError:g(`slackSearchbarChannelsError`)};if(_===`disconnected`)return h?.disconnected||e.disconnected;if(_===`error`)return h?.error||v;if(!O&&x.length===0)return h?.noSlackChannelsFound||e.noSlackChannelsFound;let t=E?.length||0;return E&&t===0?h?.noChannelsConnected||e.noChannelsConnected:``},[_,O,x,E,h,v,g]),A=(0,a.useMemo)(()=>E.map(e=>e.channel_id),[E]);return x.length>f?(0,o.jsx)(r.default,{inErrorState:D,connectedChannels:E||[],updateConnectedChannels:C,connectedChannelsError:w,connectedChannelsUpdating:T}):(0,o.jsxs)(c.Stack,{className:`tgph rsk-combobox__grid`,gap:`3`,children:[(0,o.jsx)(l.Text,{color:`gray`,size:`2`,as:`div`,minHeight:`8`,className:`rsk-combobox__label`,children:`Channels`}),(0,o.jsxs)(d.Combobox.Root,{value:A,onValueChange:e=>{let t=e.map(e=>({channel_id:e}));C(t).catch(console.error)},placeholder:k??``,disabled:D||x.length===0,errored:D,closeOnSelect:!1,layout:`wrap`,modal:!1,children:[(0,o.jsx)(d.Combobox.Trigger,{}),(0,o.jsxs)(d.Combobox.Content,{children:[(0,o.jsx)(d.Combobox.Search,{label:g(`slackSearchChannels`),className:`rsk-combobox__search`}),(0,o.jsx)(d.Combobox.Options,{maxHeight:`36`,children:x.map(e=>(0,o.jsx)(d.Combobox.Option,{value:e.id,children:(0,o.jsxs)(c.Stack,{align:`center`,gap:`1`,children:[(0,o.jsx)(s.Icon,{icon:e.is_private?u.Lock:u.Hash,size:`0`,"aria-hidden":!0}),e.name]})},e.id))}),(0,o.jsx)(d.Combobox.Empty,{})]})]}),(0,o.jsx)(n.default,{}),!!w&&(0,o.jsx)(t.default,{message:w})]})};exports.SlackChannelCombobox=p;
2
+ //# sourceMappingURL=SlackChannelCombobox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlackChannelCombobox.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport {\n RecipientObject,\n SlackChannelQueryOptions,\n useConnectedSlackChannels,\n useKnockSlackClient,\n useSlackChannels,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Icon } from \"@telegraph/icon\";\nimport { Stack } from \"@telegraph/layout\";\nimport { Text } from \"@telegraph/typography\";\nimport { Hash, Lock } from \"lucide-react\";\nimport { useMemo } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\nimport { sortSlackChannelsAlphabetically } from \"../../utils\";\nimport SlackAddChannelInput from \"../SlackAddChannelInput/SlackAddChannelInput\";\n\nimport SlackConnectionError from \"./SlackConnectionError\";\nimport SlackErrorMessage from \"./SlackErrorMessage\";\nimport \"./styles.css\";\n\nconst MAX_ALLOWED_CHANNELS = 1000;\n\nexport type SlackChannelComboboxInputMessages = {\n disconnected: string;\n error: string;\n noChannelsConnected: string;\n noSlackChannelsFound: string;\n};\n\nexport interface SlackChannelComboboxProps {\n slackChannelsRecipientObject: RecipientObject;\n queryOptions?: SlackChannelQueryOptions;\n inputMessages?: SlackChannelComboboxInputMessages;\n}\n\nexport const SlackChannelCombobox: FunctionComponent<\n SlackChannelComboboxProps\n> = ({ slackChannelsRecipientObject, queryOptions, inputMessages }) => {\n const { t } = useTranslations();\n\n // Gather API data\n const { connectionStatus, errorLabel: connectionErrorLabel } =\n useKnockSlackClient();\n\n const { data: unsortedSlackChannels, isLoading: slackChannelsLoading } =\n useSlackChannels({ queryOptions });\n\n const slackChannels = useMemo(\n () => sortSlackChannelsAlphabetically(unsortedSlackChannels),\n [unsortedSlackChannels],\n );\n\n const {\n data: connectedChannels,\n updateConnectedChannels,\n error: connectedChannelsError,\n updating: connectedChannelsUpdating,\n } = useConnectedSlackChannels({ slackChannelsRecipientObject });\n\n const currentConnectedChannels = useMemo<SlackChannelConnection[]>(() => {\n // Used to make sure we're only showing currently available channels to select from.\n // There are cases where a channel is \"connected\" in Knock, but it wouldn't be\n // posting to it if the channel is private and the Slackbot doesn't belong to it,\n // so the channel won't show up here and it won't be posted to.\n const slackChannelsMap = new Map(\n slackChannels.map((channel) => [channel.id, channel]),\n );\n\n return (\n connectedChannels?.filter((connectedChannel) => {\n return slackChannelsMap.has(connectedChannel.channel_id || \"\");\n }) || []\n );\n }, [connectedChannels, slackChannels]);\n\n const inErrorState = useMemo(\n () =>\n connectionStatus === \"disconnected\" ||\n connectionStatus === \"error\" ||\n !!connectedChannelsError,\n [connectedChannelsError, connectionStatus],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\" ||\n slackChannelsLoading,\n\n [connectionStatus, slackChannelsLoading],\n );\n\n // Construct placeholder text\n const searchPlaceholder = useMemo(() => {\n const DEFAULT_INPUT_MESSAGES = {\n disconnected: t(\"slackSearchbarDisconnected\"),\n noChannelsConnected: t(\"slackSearchbarNoChannelsConnected\"),\n noSlackChannelsFound: t(\"slackSearchbarNoChannelsFound\"),\n channelsError: t(\"slackSearchbarChannelsError\"),\n };\n\n // Connection status message\n if (connectionStatus === \"disconnected\") {\n return inputMessages?.disconnected || DEFAULT_INPUT_MESSAGES.disconnected;\n }\n\n if (connectionStatus === \"error\") {\n return inputMessages?.error || connectionErrorLabel;\n }\n\n // Channels status messages\n if (!inLoadingState && slackChannels.length === 0) {\n return (\n inputMessages?.noSlackChannelsFound ||\n DEFAULT_INPUT_MESSAGES.noSlackChannelsFound\n );\n }\n\n const numberConnectedChannels = currentConnectedChannels?.length || 0;\n\n if (currentConnectedChannels && numberConnectedChannels === 0) {\n return (\n inputMessages?.noChannelsConnected ||\n DEFAULT_INPUT_MESSAGES.noChannelsConnected\n );\n }\n\n return \"\";\n }, [\n connectionStatus,\n inLoadingState,\n slackChannels,\n currentConnectedChannels,\n inputMessages,\n connectionErrorLabel,\n t,\n ]);\n\n const comboboxValue = useMemo(\n () => currentConnectedChannels.map((connection) => connection.channel_id),\n [currentConnectedChannels],\n );\n\n if (slackChannels.length > MAX_ALLOWED_CHANNELS) {\n return (\n <SlackAddChannelInput\n inErrorState={inErrorState}\n connectedChannels={currentConnectedChannels || []}\n updateConnectedChannels={updateConnectedChannels}\n connectedChannelsError={connectedChannelsError}\n connectedChannelsUpdating={connectedChannelsUpdating}\n />\n );\n }\n\n return (\n <Stack className=\"tgph rsk-combobox__grid\" gap=\"3\">\n <Text\n color=\"gray\"\n size=\"2\"\n as=\"div\"\n minHeight=\"8\"\n className=\"rsk-combobox__label\"\n >\n Channels\n </Text>\n <Combobox.Root\n value={comboboxValue}\n onValueChange={(channelIds) => {\n const updatedConnections = channelIds.map<SlackChannelConnection>(\n (channelId) => ({\n channel_id: channelId,\n }),\n );\n\n updateConnectedChannels(updatedConnections).catch(console.error);\n }}\n placeholder={searchPlaceholder ?? \"\"}\n disabled={inErrorState || slackChannels.length === 0}\n errored={inErrorState}\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\n label={t(\"slackSearchChannels\")}\n className=\"rsk-combobox__search\"\n />\n <Combobox.Options maxHeight=\"36\">\n {slackChannels.map((channel) => (\n <Combobox.Option key={channel.id} value={channel.id}>\n <Stack align=\"center\" gap=\"1\">\n <Icon\n icon={channel.is_private ? Lock : Hash}\n size=\"0\"\n aria-hidden\n />\n {channel.name}\n </Stack>\n </Combobox.Option>\n ))}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n <SlackConnectionError />\n {!!connectedChannelsError && (\n <SlackErrorMessage message={connectedChannelsError} />\n )}\n </Stack>\n );\n};\n"],"names":["MAX_ALLOWED_CHANNELS","SlackChannelCombobox","slackChannelsRecipientObject","queryOptions","inputMessages","t","useTranslations","connectionStatus","errorLabel","connectionErrorLabel","useKnockSlackClient","data","unsortedSlackChannels","isLoading","slackChannelsLoading","useSlackChannels","slackChannels","useMemo","sortSlackChannelsAlphabetically","connectedChannels","updateConnectedChannels","error","connectedChannelsError","updating","connectedChannelsUpdating","useConnectedSlackChannels","currentConnectedChannels","slackChannelsMap","Map","map","channel","id","filter","connectedChannel","has","channel_id","inErrorState","inLoadingState","searchPlaceholder","DEFAULT_INPUT_MESSAGES","disconnected","noChannelsConnected","noSlackChannelsFound","channelsError","length","numberConnectedChannels","comboboxValue","connection","React","SlackAddChannelInput","Stack","Text","Combobox","channelIds","updatedConnections","channelId","catch","console","Icon","is_private","Lock","Hash","name","SlackConnectionError","SlackErrorMessage"],"mappings":"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"}
1
+ {"version":3,"file":"SlackChannelCombobox.js","names":[],"sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport {\n RecipientObject,\n SlackChannelQueryOptions,\n useConnectedSlackChannels,\n useKnockSlackClient,\n useSlackChannels,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport { Combobox } from \"@telegraph/combobox\";\nimport { Icon } from \"@telegraph/icon\";\nimport { Stack } from \"@telegraph/layout\";\nimport { Text } from \"@telegraph/typography\";\nimport { Hash, Lock } from \"lucide-react\";\nimport { useMemo } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\nimport { sortSlackChannelsAlphabetically } from \"../../utils\";\nimport SlackAddChannelInput from \"../SlackAddChannelInput/SlackAddChannelInput\";\n\nimport SlackConnectionError from \"./SlackConnectionError\";\nimport SlackErrorMessage from \"./SlackErrorMessage\";\nimport \"./styles.css\";\n\nconst MAX_ALLOWED_CHANNELS = 1000;\n\nexport type SlackChannelComboboxInputMessages = {\n disconnected: string;\n error: string;\n noChannelsConnected: string;\n noSlackChannelsFound: string;\n};\n\nexport interface SlackChannelComboboxProps {\n slackChannelsRecipientObject: RecipientObject;\n queryOptions?: SlackChannelQueryOptions;\n inputMessages?: SlackChannelComboboxInputMessages;\n}\n\nexport const SlackChannelCombobox: FunctionComponent<\n SlackChannelComboboxProps\n> = ({ slackChannelsRecipientObject, queryOptions, inputMessages }) => {\n const { t } = useTranslations();\n\n // Gather API data\n const { connectionStatus, errorLabel: connectionErrorLabel } =\n useKnockSlackClient();\n\n const { data: unsortedSlackChannels, isLoading: slackChannelsLoading } =\n useSlackChannels({ queryOptions });\n\n const slackChannels = useMemo(\n () => sortSlackChannelsAlphabetically(unsortedSlackChannels),\n [unsortedSlackChannels],\n );\n\n const {\n data: connectedChannels,\n updateConnectedChannels,\n error: connectedChannelsError,\n updating: connectedChannelsUpdating,\n } = useConnectedSlackChannels({ slackChannelsRecipientObject });\n\n const currentConnectedChannels = useMemo<SlackChannelConnection[]>(() => {\n // Used to make sure we're only showing currently available channels to select from.\n // There are cases where a channel is \"connected\" in Knock, but it wouldn't be\n // posting to it if the channel is private and the Slackbot doesn't belong to it,\n // so the channel won't show up here and it won't be posted to.\n const slackChannelsMap = new Map(\n slackChannels.map((channel) => [channel.id, channel]),\n );\n\n return (\n connectedChannels?.filter((connectedChannel) => {\n return slackChannelsMap.has(connectedChannel.channel_id || \"\");\n }) || []\n );\n }, [connectedChannels, slackChannels]);\n\n const inErrorState = useMemo(\n () =>\n connectionStatus === \"disconnected\" ||\n connectionStatus === \"error\" ||\n !!connectedChannelsError,\n [connectedChannelsError, connectionStatus],\n );\n\n const inLoadingState = useMemo(\n () =>\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\" ||\n slackChannelsLoading,\n\n [connectionStatus, slackChannelsLoading],\n );\n\n // Construct placeholder text\n const searchPlaceholder = useMemo(() => {\n const DEFAULT_INPUT_MESSAGES = {\n disconnected: t(\"slackSearchbarDisconnected\"),\n noChannelsConnected: t(\"slackSearchbarNoChannelsConnected\"),\n noSlackChannelsFound: t(\"slackSearchbarNoChannelsFound\"),\n channelsError: t(\"slackSearchbarChannelsError\"),\n };\n\n // Connection status message\n if (connectionStatus === \"disconnected\") {\n return inputMessages?.disconnected || DEFAULT_INPUT_MESSAGES.disconnected;\n }\n\n if (connectionStatus === \"error\") {\n return inputMessages?.error || connectionErrorLabel;\n }\n\n // Channels status messages\n if (!inLoadingState && slackChannels.length === 0) {\n return (\n inputMessages?.noSlackChannelsFound ||\n DEFAULT_INPUT_MESSAGES.noSlackChannelsFound\n );\n }\n\n const numberConnectedChannels = currentConnectedChannels?.length || 0;\n\n if (currentConnectedChannels && numberConnectedChannels === 0) {\n return (\n inputMessages?.noChannelsConnected ||\n DEFAULT_INPUT_MESSAGES.noChannelsConnected\n );\n }\n\n return \"\";\n }, [\n connectionStatus,\n inLoadingState,\n slackChannels,\n currentConnectedChannels,\n inputMessages,\n connectionErrorLabel,\n t,\n ]);\n\n const comboboxValue = useMemo(\n () => currentConnectedChannels.map((connection) => connection.channel_id),\n [currentConnectedChannels],\n );\n\n if (slackChannels.length > MAX_ALLOWED_CHANNELS) {\n return (\n <SlackAddChannelInput\n inErrorState={inErrorState}\n connectedChannels={currentConnectedChannels || []}\n updateConnectedChannels={updateConnectedChannels}\n connectedChannelsError={connectedChannelsError}\n connectedChannelsUpdating={connectedChannelsUpdating}\n />\n );\n }\n\n return (\n <Stack className=\"tgph rsk-combobox__grid\" gap=\"3\">\n <Text\n color=\"gray\"\n size=\"2\"\n as=\"div\"\n minHeight=\"8\"\n className=\"rsk-combobox__label\"\n >\n Channels\n </Text>\n <Combobox.Root\n value={comboboxValue}\n onValueChange={(channelIds) => {\n const updatedConnections = channelIds.map<SlackChannelConnection>(\n (channelId) => ({\n channel_id: channelId,\n }),\n );\n\n updateConnectedChannels(updatedConnections).catch(console.error);\n }}\n placeholder={searchPlaceholder ?? \"\"}\n disabled={inErrorState || slackChannels.length === 0}\n errored={inErrorState}\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\n label={t(\"slackSearchChannels\")}\n className=\"rsk-combobox__search\"\n />\n <Combobox.Options maxHeight=\"36\">\n {slackChannels.map((channel) => (\n <Combobox.Option key={channel.id} value={channel.id}>\n <Stack align=\"center\" gap=\"1\">\n <Icon\n icon={channel.is_private ? Lock : Hash}\n size=\"0\"\n aria-hidden\n />\n {channel.name}\n </Stack>\n </Combobox.Option>\n ))}\n </Combobox.Options>\n <Combobox.Empty />\n </Combobox.Content>\n </Combobox.Root>\n <SlackConnectionError />\n {!!connectedChannelsError && (\n <SlackErrorMessage message={connectedChannelsError} />\n )}\n </Stack>\n );\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("react"),n=require("@knocklabs/react-core"),c=require("./SlackErrorMessage.js"),o=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=o(r),a=()=>{const{t:e}=n.useTranslations(),{connectionStatus:t}=n.useKnockSlackClient();return t==="disconnected"||t==="error"?s.default.createElement(c,{message:e(t==="disconnected"?"slackConnectionErrorOccurred":"slackConnectionErrorExists")}):null};module.exports=a;
2
- //# sourceMappingURL=SlackConnectionError.js.map
1
+ "use strict";const e=require("./SlackErrorMessage.js");let t=require("@knocklabs/react-core"),n=require("react/jsx-runtime");var r=()=>{let{t:r}=(0,t.useTranslations)(),{connectionStatus:i}=(0,t.useKnockSlackClient)();return i===`disconnected`||i===`error`?(0,n.jsx)(e.default,{message:r(i===`disconnected`?`slackConnectionErrorOccurred`:`slackConnectionErrorExists`)}):null};exports.default=r;
2
+ //# sourceMappingURL=SlackConnectionError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlackConnectionError.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackConnectionError.tsx"],"sourcesContent":["import { useKnockSlackClient, useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport SlackErrorMessage from \"./SlackErrorMessage\";\n\nconst SlackConnectionError: FunctionComponent = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockSlackClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <SlackErrorMessage\n message={\n connectionStatus === \"disconnected\"\n ? t(\"slackConnectionErrorOccurred\")\n : t(\"slackConnectionErrorExists\")\n }\n />\n );\n }\n\n return null;\n};\n\nexport default SlackConnectionError;\n"],"names":["SlackConnectionError","t","useTranslations","connectionStatus","useKnockSlackClient","React","SlackErrorMessage"],"mappings":"4KAKMA,EAA0CA,IAAM,CAC9C,KAAA,CAAEC,EAAAA,GAAMC,kBAAgB,EACxB,CAAEC,iBAAAA,GAAqBC,sBAAoB,EAE7CD,OAAAA,IAAqB,gBAAkBA,IAAqB,QAE5DE,EAAA,QAAA,cAACC,EACC,CAAA,QAEML,EADJE,IAAqB,eACf,+BACA,4BAD8B,CAGtC,CAAA,EAIC,IACT"}
1
+ {"version":3,"file":"SlackConnectionError.js","names":[],"sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackConnectionError.tsx"],"sourcesContent":["import { useKnockSlackClient, useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport SlackErrorMessage from \"./SlackErrorMessage\";\n\nconst SlackConnectionError: FunctionComponent = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockSlackClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <SlackErrorMessage\n message={\n connectionStatus === \"disconnected\"\n ? t(\"slackConnectionErrorOccurred\")\n : t(\"slackConnectionErrorExists\")\n }\n />\n );\n }\n\n return null;\n};\n\nexport default SlackConnectionError;\n"],"mappings":"6HAKA,IAAM,MAAgD,CACpD,GAAM,CAAE,MAAA,EAAA,EAAA,gBAAA,CAAsB,EACxB,CAAE,qBAAA,EAAA,EAAA,oBAAA,CAAyC,EAcjD,OAZI,IAAqB,gBAAkB,IAAqB,SAE5D,EAAA,EAAA,IAAA,CAAC,EAAA,QAAD,CACE,QAEM,EADJ,IAAqB,eACf,+BACA,4BAA4B,CAErC,CAAA,EAIE,IACT"}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("react"),a=require("@telegraph/icon"),c=require("@telegraph/typography"),o=require("lucide-react"),l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=l(r),n=({message:e})=>t.default.createElement("div",{className:"rsk-combobox__error"},t.default.createElement("span",null,t.default.createElement(a.Icon,{icon:o.Info,color:"black",size:"1","aria-hidden":!0})),t.default.createElement(c.Text,{as:"div",color:"black",size:"1"},e));module.exports=n;
2
- //# sourceMappingURL=SlackErrorMessage.js.map
1
+ "use strict";let e=require("react/jsx-runtime"),t=require("@telegraph/icon"),n=require("@telegraph/typography"),r=require("lucide-react");var i=({message:i})=>(0,e.jsxs)(`div`,{className:`rsk-combobox__error`,children:[(0,e.jsx)(`span`,{children:(0,e.jsx)(t.Icon,{icon:r.Info,color:`black`,size:`1`,"aria-hidden":!0})}),(0,e.jsx)(n.Text,{as:`div`,color:`black`,size:`1`,children:i})]});exports.default=i;
2
+ //# sourceMappingURL=SlackErrorMessage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlackErrorMessage.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.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 SlackErrorMessage: FunctionComponent<Props> = ({ message }) => {\n return (\n <div className=\"rsk-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 SlackErrorMessage;\n"],"names":["SlackErrorMessage","message","React","Icon","Info","Text"],"mappings":"+LASMA,EAA8CA,CAAC,CAAEC,QAAAA,CAAQ,IAE3DC,EAAAA,QAAA,cAAC,MAAI,CAAA,UAAU,qBACb,EAAAA,UAAA,cAAC,OACC,KAAAA,EAAAA,QAAA,cAACC,EAAK,KAAA,CAAA,KAAMC,EAAAA,KAAM,MAAM,QAAQ,KAAK,IAAI,cAAW,EAAA,CAAA,CACtD,EACAF,EAAA,QAAA,cAACG,EAAAA,KAAK,CAAA,GAAG,MAAM,MAAM,QAAQ,KAAK,GAC/BJ,EAAAA,CACH,CACF"}
1
+ {"version":3,"file":"SlackErrorMessage.js","names":[],"sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackErrorMessage.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 SlackErrorMessage: FunctionComponent<Props> = ({ message }) => {\n return (\n <div className=\"rsk-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 SlackErrorMessage;\n"],"mappings":"0IASA,IAAM,GAA+C,CAAE,cAEnD,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,+BAAf,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,UACE,EAAA,EAAA,IAAA,CAAC,EAAA,KAAD,CAAM,KAAM,EAAA,KAAM,MAAM,QAAQ,KAAK,IAAI,cAAA,EAAa,CAAA,CAClD,CAAA,GACN,EAAA,EAAA,IAAA,CAAC,EAAA,KAAD,CAAM,GAAG,MAAM,MAAM,QAAQ,KAAK,aAC/B,CACG,CAAA,CACH"}
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./SlackChannelCombobox.js");exports.SlackChannelCombobox=e.SlackChannelCombobox;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=a(l),s=({height:e,width:c})=>t.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",style:{height:e,width:c},viewBox:"0 0 122.8 122.8"},t.default.createElement("path",{d:"M25.8 77.6c0 7.1-5.8 12.9-12.9 12.9S0 84.7 0 77.6s5.8-12.9 12.9-12.9h12.9v12.9zm6.5 0c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9v32.3c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V77.6z",fill:"#e01e5a"}),t.default.createElement("path",{d:"M45.2 25.8c-7.1 0-12.9-5.8-12.9-12.9S38.1 0 45.2 0s12.9 5.8 12.9 12.9v12.9H45.2zm0 6.5c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H12.9C5.8 58.1 0 52.3 0 45.2s5.8-12.9 12.9-12.9h32.3z",fill:"#36c5f0"}),t.default.createElement("path",{d:"M97 45.2c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9-5.8 12.9-12.9 12.9H97V45.2zm-6.5 0c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V12.9C64.7 5.8 70.5 0 77.6 0s12.9 5.8 12.9 12.9v32.3z",fill:"#2eb67d"}),t.default.createElement("path",{d:"M77.6 97c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9-12.9-5.8-12.9-12.9V97h12.9zm0-6.5c-7.1 0-12.9-5.8-12.9-12.9s5.8-12.9 12.9-12.9h32.3c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H77.6z",fill:"#ecb22e"}));exports.SlackIcon=s;
2
- //# sourceMappingURL=SlackIcon.js.map
1
+ "use strict";let e=require("react/jsx-runtime");var t=({height:t,width:n})=>(0,e.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,style:{height:t,width:n},viewBox:`0 0 122.8 122.8`,children:[(0,e.jsx)(`path`,{d:`M25.8 77.6c0 7.1-5.8 12.9-12.9 12.9S0 84.7 0 77.6s5.8-12.9 12.9-12.9h12.9v12.9zm6.5 0c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9v32.3c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V77.6z`,fill:`#e01e5a`}),(0,e.jsx)(`path`,{d:`M45.2 25.8c-7.1 0-12.9-5.8-12.9-12.9S38.1 0 45.2 0s12.9 5.8 12.9 12.9v12.9H45.2zm0 6.5c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H12.9C5.8 58.1 0 52.3 0 45.2s5.8-12.9 12.9-12.9h32.3z`,fill:`#36c5f0`}),(0,e.jsx)(`path`,{d:`M97 45.2c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9-5.8 12.9-12.9 12.9H97V45.2zm-6.5 0c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V12.9C64.7 5.8 70.5 0 77.6 0s12.9 5.8 12.9 12.9v32.3z`,fill:`#2eb67d`}),(0,e.jsx)(`path`,{d:`M77.6 97c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9-12.9-5.8-12.9-12.9V97h12.9zm0-6.5c-7.1 0-12.9-5.8-12.9-12.9s5.8-12.9 12.9-12.9h32.3c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H77.6z`,fill:`#ecb22e`})]});exports.SlackIcon=t;
2
+ //# sourceMappingURL=SlackIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlackIcon.js","sources":["../../../../../../src/modules/slack/components/SlackIcon/SlackIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nexport interface SlackIconProps {\n height: string;\n width: string;\n}\n\nexport const SlackIcon: FunctionComponent<SlackIconProps> = ({\n height,\n width,\n}) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ height, width }}\n viewBox=\"0 0 122.8 122.8\"\n >\n <path\n d=\"M25.8 77.6c0 7.1-5.8 12.9-12.9 12.9S0 84.7 0 77.6s5.8-12.9 12.9-12.9h12.9v12.9zm6.5 0c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9v32.3c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V77.6z\"\n fill=\"#e01e5a\"\n ></path>\n <path\n d=\"M45.2 25.8c-7.1 0-12.9-5.8-12.9-12.9S38.1 0 45.2 0s12.9 5.8 12.9 12.9v12.9H45.2zm0 6.5c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H12.9C5.8 58.1 0 52.3 0 45.2s5.8-12.9 12.9-12.9h32.3z\"\n fill=\"#36c5f0\"\n ></path>\n <path\n d=\"M97 45.2c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9-5.8 12.9-12.9 12.9H97V45.2zm-6.5 0c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V12.9C64.7 5.8 70.5 0 77.6 0s12.9 5.8 12.9 12.9v32.3z\"\n fill=\"#2eb67d\"\n ></path>\n <path\n d=\"M77.6 97c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9-12.9-5.8-12.9-12.9V97h12.9zm0-6.5c-7.1 0-12.9-5.8-12.9-12.9s5.8-12.9 12.9-12.9h32.3c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H77.6z\"\n fill=\"#ecb22e\"\n ></path>\n </svg>\n );\n};\n"],"names":["SlackIcon","height","width","React"],"mappings":"wKAOaA,EAA+CA,CAAC,CAC3DC,OAAAA,EACAC,MAAAA,CACF,IAEKC,EAAAA,QAAA,cAAA,MAAA,CACC,MAAM,6BACN,MAAO,CAAEF,OAAAA,EAAQC,MAAAA,CAAAA,EACjB,QAAQ,mBAERC,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,4LACF,KAAK,SACN,CAAA,EACAA,UAAA,cAAA,OAAA,CACC,EAAE,2LACF,KAAK,SACN,CAAA,EACAA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,4LACF,KAAK,SAAA,CACN,EACDA,UAAA,cAAC,OACC,CAAA,EAAE,+LACF,KAAK,UACN,CACH"}
1
+ {"version":3,"file":"SlackIcon.js","names":[],"sources":["../../../../../../src/modules/slack/components/SlackIcon/SlackIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nexport interface SlackIconProps {\n height: string;\n width: string;\n}\n\nexport const SlackIcon: FunctionComponent<SlackIconProps> = ({\n height,\n width,\n}) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ height, width }}\n viewBox=\"0 0 122.8 122.8\"\n >\n <path\n d=\"M25.8 77.6c0 7.1-5.8 12.9-12.9 12.9S0 84.7 0 77.6s5.8-12.9 12.9-12.9h12.9v12.9zm6.5 0c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9v32.3c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V77.6z\"\n fill=\"#e01e5a\"\n ></path>\n <path\n d=\"M45.2 25.8c-7.1 0-12.9-5.8-12.9-12.9S38.1 0 45.2 0s12.9 5.8 12.9 12.9v12.9H45.2zm0 6.5c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H12.9C5.8 58.1 0 52.3 0 45.2s5.8-12.9 12.9-12.9h32.3z\"\n fill=\"#36c5f0\"\n ></path>\n <path\n d=\"M97 45.2c0-7.1 5.8-12.9 12.9-12.9s12.9 5.8 12.9 12.9-5.8 12.9-12.9 12.9H97V45.2zm-6.5 0c0 7.1-5.8 12.9-12.9 12.9s-12.9-5.8-12.9-12.9V12.9C64.7 5.8 70.5 0 77.6 0s12.9 5.8 12.9 12.9v32.3z\"\n fill=\"#2eb67d\"\n ></path>\n <path\n d=\"M77.6 97c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9-12.9-5.8-12.9-12.9V97h12.9zm0-6.5c-7.1 0-12.9-5.8-12.9-12.9s5.8-12.9 12.9-12.9h32.3c7.1 0 12.9 5.8 12.9 12.9s-5.8 12.9-12.9 12.9H77.6z\"\n fill=\"#ecb22e\"\n ></path>\n </svg>\n );\n};\n"],"mappings":"gDAOA,IAAa,GAAgD,CAC3D,SACA,YAGE,EAAA,EAAA,KAAA,CAAC,MAAD,CACE,MAAM,6BACN,MAAO,CAAE,SAAQ,OAAM,EACvB,QAAQ,2BAHV,EAKE,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,EAAE,4LACF,KAAK,SACA,CAAA,GACP,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,EAAE,2LACF,KAAK,SACA,CAAA,GACP,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,EAAE,4LACF,KAAK,SACA,CAAA,GACP,EAAA,EAAA,IAAA,CAAC,OAAD,CACE,EAAE,+LACF,KAAK,SACA,CAAA,CACJ"}
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./SlackIcon.js");exports.SlackIcon=e.SlackIcon;
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./components/SlackAuthButton/SlackAuthButton.js");require("./components/SlackAuthButton/index.js");const t=require("./components/SlackAuthContainer/SlackAuthContainer.js");require("./components/SlackAuthContainer/index.js");const n=require("./components/SlackChannelCombobox/SlackChannelCombobox.js");require("./components/SlackChannelCombobox/index.js"),exports.SlackAuthButton=e.SlackAuthButton,exports.SlackAuthContainer=t.SlackAuthContainer,exports.SlackChannelCombobox=n.SlackChannelCombobox;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=e=>[...e].sort((a,l)=>a.name.toLowerCase().localeCompare(l.name.toLowerCase()));exports.sortSlackChannelsAlphabetically=o;
2
- //# sourceMappingURL=utils.js.map
1
+ "use strict";var e=e=>[...e].sort((e,t)=>e.name.toLowerCase().localeCompare(t.name.toLowerCase()));exports.sortSlackChannelsAlphabetically=e;
2
+ //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/modules/slack/utils.ts"],"sourcesContent":["import { SlackChannel } from \"@knocklabs/client\";\n\nexport const sortSlackChannelsAlphabetically = (\n channels: readonly SlackChannel[],\n) =>\n [...channels].sort((channel1, channel2) =>\n channel1.name.toLowerCase().localeCompare(channel2.name.toLowerCase()),\n );\n"],"names":["sortSlackChannelsAlphabetically","channels","sort","channel1","channel2","name","toLowerCase","localeCompare"],"mappings":"gFAEaA,MAAAA,EACXC,GAEA,CAAC,GAAGA,CAAQ,EAAEC,KAAK,CAACC,EAAUC,IAC5BD,EAASE,KAAKC,cAAcC,cAAcH,EAASC,KAAKC,aAAa,CACvE"}
1
+ {"version":3,"file":"utils.js","names":[],"sources":["../../../../src/modules/slack/utils.ts"],"sourcesContent":["import { SlackChannel } from \"@knocklabs/client\";\n\nexport const sortSlackChannelsAlphabetically = (\n channels: readonly SlackChannel[],\n) =>\n [...channels].sort((channel1, channel2) =>\n channel1.name.toLowerCase().localeCompare(channel2.name.toLowerCase()),\n );\n"],"mappings":"aAEA,IAAa,EACX,GAEA,CAAC,GAAG,CAAQ,CAAC,CAAC,MAAM,EAAU,IAC5B,EAAS,KAAK,YAAY,CAAC,CAAC,cAAc,EAAS,KAAK,YAAY,CAAC,CACvE"}
@@ -1,2 +1,2 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("@knocklabs/react-core"),c=require("next/navigation.js"),i=require("next/router.js"),l=require("react"),u=require("../modules/core/utils.js"),f=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},s=f(l),d=()=>{const e=i.useRouter(),{client:o}=a.useGuideContext();return s.default.useEffect(()=>{const n=u.checkForWindow();if(!n)return;o.store.state.location||o.setLocation(n.location.href),o.removeLocationChangeEventListeners();const t=r=>{o.setLocation(n.location.origin+r)};return e.events.on("routeChangeComplete",t),()=>{e.events.off("routeChangeComplete",t)}},[o]),null},h=()=>{const e=c.usePathname(),n=c.useSearchParams().toString(),{client:t}=a.useGuideContext();return s.default.useEffect(()=>{t.removeLocationChangeEventListeners()},[t]),s.default.useEffect(()=>{const r=u.checkForWindow();r&&t.setLocation(r.location.href)},[t,e,n]),null},m={PagesRouter:d,AppRouter:h};exports.KnockGuideLocationSensor=m;
2
- //# sourceMappingURL=KnockGuideLocationSensor.js.map
1
+ "use client";"use strict";const e=require("../_virtual/_rolldown/runtime.js"),t=require("../modules/core/utils.js");let n=require("@knocklabs/react-core"),r=require("react");r=e.__toESM(r);let i=require("next/navigation.js"),a=require("next/router.js");var o={PagesRouter:()=>{let e=(0,a.useRouter)(),{client:i}=(0,n.useGuideContext)();return r.default.useEffect(()=>{let n=t.checkForWindow();if(!n)return;i.store.state.location||i.setLocation(n.location.href),i.removeLocationChangeEventListeners();let r=e=>{i.setLocation(n.location.origin+e)};return e.events.on(`routeChangeComplete`,r),()=>{e.events.off(`routeChangeComplete`,r)}},[i]),null},AppRouter:()=>{let e=(0,i.usePathname)(),a=(0,i.useSearchParams)().toString(),{client:o}=(0,n.useGuideContext)();return r.default.useEffect(()=>{o.removeLocationChangeEventListeners()},[o]),r.default.useEffect(()=>{let e=t.checkForWindow();e&&o.setLocation(e.location.href)},[o,e,a]),null}};exports.KnockGuideLocationSensor=o;
2
+ //# sourceMappingURL=KnockGuideLocationSensor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KnockGuideLocationSensor.js","sources":["../../../src/next/KnockGuideLocationSensor.tsx"],"sourcesContent":["\"use client\";\n\nimport { useGuideContext } from \"@knocklabs/react-core\";\n// Note the .js suffix for Next 15 ESM friendliness:\nimport { usePathname, useSearchParams } from \"next/navigation.js\";\nimport { useRouter } from \"next/router.js\";\nimport React from \"react\";\n\nimport { checkForWindow } from \"../modules/core/utils\";\n\nconst PagesRouter: React.FC = () => {\n const router = useRouter();\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n // Set the initial location if not yet set.\n if (!client.store.state.location) {\n client.setLocation(win.location.href);\n }\n\n // If you are using this helper module, then that means we are detecting\n // route changes from next's router rather than from the global history\n // object which the guide client does by default, so ensure we don't have\n // any event listeners hanging around unnecessarily.\n client.removeLocationChangeEventListeners();\n\n // Attach a route change event listener to the nextjs router. Note, here url\n // is the pathname and any query parameters of the new route but does not\n // include the domain or origin.\n const handleRouteChangeComplete = (url: string) => {\n client.setLocation(win.location.origin + url);\n };\n router.events.on(\"routeChangeComplete\", handleRouteChangeComplete);\n\n return () => {\n router.events.off(\"routeChangeComplete\", handleRouteChangeComplete);\n };\n // We want to run this effect once per client instance and `router` is not\n // guaranteed to be referentially stable.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [client]);\n\n return null;\n};\n\nconst AppRouter: React.FC = () => {\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const queryStr = searchParams.toString();\n\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n // Same here, remove any location change event listeners on the window\n // object in case they are attached.\n client.removeLocationChangeEventListeners();\n }, [client]);\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n client.setLocation(win.location.href);\n }, [client, pathname, queryStr]);\n\n return null;\n};\n\nexport const KnockGuideLocationSensor = {\n PagesRouter,\n AppRouter,\n};\n"],"names":["PagesRouter","router","useRouter","client","useGuideContext","React","useEffect","win","checkForWindow","store","state","location","setLocation","href","removeLocationChangeEventListeners","handleRouteChangeComplete","url","origin","events","on","off","AppRouter","pathname","usePathname","queryStr","useSearchParams","toString","KnockGuideLocationSensor"],"mappings":"0TAUMA,EAAwBA,IAAM,CAClC,MAAMC,EAASC,EAAAA,UAAU,EACnB,CAAEC,OAAAA,GAAWC,kBAAgB,EAEnCC,OAAAA,EAAAA,QAAMC,UAAU,IAAM,CACpB,MAAMC,EAAMC,EAAAA,eAAe,EAC3B,GAAI,CAACD,EAAK,OAGLJ,EAAOM,MAAMC,MAAMC,UACfC,EAAAA,YAAYL,EAAII,SAASE,IAAI,EAOtCV,EAAOW,mCAAmC,EAKpCC,MAAAA,EAA6BC,GAAgB,CACjDb,EAAOS,YAAYL,EAAII,SAASM,OAASD,CAAG,CAC9C,EACOE,OAAAA,EAAAA,OAAOC,GAAG,sBAAuBJ,CAAyB,EAE1D,IAAM,CACJG,EAAAA,OAAOE,IAAI,sBAAuBL,CAAyB,CACpE,CAAA,EAIC,CAACZ,CAAM,CAAC,EAEJ,IACT,EAEMkB,EAAsBA,IAAM,CAChC,MAAMC,EAAWC,EAAAA,YAAY,EAEvBC,EADeC,EAAAA,gBAAgB,EACPC,SAAS,EAEjC,CAAEvB,OAAAA,GAAWC,kBAAgB,EAEnCC,OAAAA,EAAAA,QAAMC,UAAU,IAAM,CAGpBH,EAAOW,mCAAmC,CAAA,EACzC,CAACX,CAAM,CAAC,EAEXE,EAAAA,QAAMC,UAAU,IAAM,CACpB,MAAMC,EAAMC,EAAAA,eAAe,EACtBD,GAEEK,EAAAA,YAAYL,EAAII,SAASE,IAAI,CACnC,EAAA,CAACV,EAAQmB,EAAUE,CAAQ,CAAC,EAExB,IACT,EAEaG,EAA2B,CACtC3B,YAAAA,EACAqB,UAAAA,CACF"}
1
+ {"version":3,"file":"KnockGuideLocationSensor.js","names":[],"sources":["../../../src/next/KnockGuideLocationSensor.tsx"],"sourcesContent":["\"use client\";\n\nimport { useGuideContext } from \"@knocklabs/react-core\";\n// Note the .js suffix for Next 15 ESM friendliness:\nimport { usePathname, useSearchParams } from \"next/navigation.js\";\nimport { useRouter } from \"next/router.js\";\nimport React from \"react\";\n\nimport { checkForWindow } from \"../modules/core/utils\";\n\nconst PagesRouter: React.FC = () => {\n const router = useRouter();\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n // Set the initial location if not yet set.\n if (!client.store.state.location) {\n client.setLocation(win.location.href);\n }\n\n // If you are using this helper module, then that means we are detecting\n // route changes from next's router rather than from the global history\n // object which the guide client does by default, so ensure we don't have\n // any event listeners hanging around unnecessarily.\n client.removeLocationChangeEventListeners();\n\n // Attach a route change event listener to the nextjs router. Note, here url\n // is the pathname and any query parameters of the new route but does not\n // include the domain or origin.\n const handleRouteChangeComplete = (url: string) => {\n client.setLocation(win.location.origin + url);\n };\n router.events.on(\"routeChangeComplete\", handleRouteChangeComplete);\n\n return () => {\n router.events.off(\"routeChangeComplete\", handleRouteChangeComplete);\n };\n // We want to run this effect once per client instance and `router` is not\n // guaranteed to be referentially stable.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [client]);\n\n return null;\n};\n\nconst AppRouter: React.FC = () => {\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const queryStr = searchParams.toString();\n\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n // Same here, remove any location change event listeners on the window\n // object in case they are attached.\n client.removeLocationChangeEventListeners();\n }, [client]);\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n client.setLocation(win.location.href);\n }, [client, pathname, queryStr]);\n\n return null;\n};\n\nexport const KnockGuideLocationSensor = {\n PagesRouter,\n AppRouter,\n};\n"],"mappings":"6PAuEA,IAAa,EAA2B,CACtC,gBA9DkC,CAClC,IAAM,GAAA,EAAA,EAAA,UAAA,CAAmB,EACnB,CAAE,WAAA,EAAA,EAAA,gBAAA,CAA2B,EAiCnC,OA/BA,EAAA,QAAM,cAAgB,CACpB,IAAM,EAAM,EAAA,eAAe,EAC3B,GAAI,CAAC,EAAK,OAGL,EAAO,MAAM,MAAM,UACtB,EAAO,YAAY,EAAI,SAAS,IAAI,EAOtC,EAAO,mCAAmC,EAK1C,IAAM,EAA6B,GAAgB,CACjD,EAAO,YAAY,EAAI,SAAS,OAAS,CAAG,CAC9C,EAGA,OAFA,EAAO,OAAO,GAAG,sBAAuB,CAAyB,MAEpD,CACX,EAAO,OAAO,IAAI,sBAAuB,CAAyB,CACpE,CAIF,EAAG,CAAC,CAAM,CAAC,EAEJ,IACT,EA2BE,cAzBgC,CAChC,IAAM,GAAA,EAAA,EAAA,YAAA,CAAuB,EAEvB,GAAA,EAAA,EAAA,gBAAA,CAAW,CAAA,CAAa,SAAS,EAEjC,CAAE,WAAA,EAAA,EAAA,gBAAA,CAA2B,EAenC,OAbA,EAAA,QAAM,cAAgB,CAGpB,EAAO,mCAAmC,CAC5C,EAAG,CAAC,CAAM,CAAC,EAEX,EAAA,QAAM,cAAgB,CACpB,IAAM,EAAM,EAAA,eAAe,EACtB,GAEL,EAAO,YAAY,EAAI,SAAS,IAAI,CACtC,EAAG,CAAC,EAAQ,EAAU,CAAQ,CAAC,EAExB,IACT,CAKA"}
package/dist/cjs/next.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./next/KnockGuideLocationSensor.js");exports.KnockGuideLocationSensor=o.KnockGuideLocationSensor;
2
- //# sourceMappingURL=next.js.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./next/KnockGuideLocationSensor.js");exports.KnockGuideLocationSensor=e.KnockGuideLocationSensor;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@knocklabs/react-core"),r=require("@tanstack/react-router"),i=require("react"),u=require("../modules/core/utils.js"),s=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=s(i),a=()=>{const{href:e}=r.useLocation(),{client:t}=c.useGuideContext();return n.default.useEffect(()=>{t.removeLocationChangeEventListeners()},[t]),n.default.useEffect(()=>{const o=u.checkForWindow();o&&t.setLocation(o.location.origin+e)},[t,e]),null};exports.KnockGuideLocationSensor=a;
2
- //# sourceMappingURL=KnockGuideLocationSensor.js.map
1
+ "use strict";const e=require("../_virtual/_rolldown/runtime.js"),t=require("../modules/core/utils.js");let n=require("@knocklabs/react-core"),r=require("react");r=e.__toESM(r);let i=require("@tanstack/react-router");var a=()=>{let{href:e}=(0,i.useLocation)(),{client:a}=(0,n.useGuideContext)();return r.default.useEffect(()=>{a.removeLocationChangeEventListeners()},[a]),r.default.useEffect(()=>{let n=t.checkForWindow();n&&a.setLocation(n.location.origin+e)},[a,e]),null};exports.KnockGuideLocationSensor=a;
2
+ //# sourceMappingURL=KnockGuideLocationSensor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KnockGuideLocationSensor.js","sources":["../../../src/tanstack/KnockGuideLocationSensor.tsx"],"sourcesContent":["import { useGuideContext } from \"@knocklabs/react-core\";\nimport { useLocation } from \"@tanstack/react-router\";\nimport React from \"react\";\n\nimport { checkForWindow } from \"../modules/core/utils\";\n\nexport const KnockGuideLocationSensor: React.FC = () => {\n const { href } = useLocation();\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n client.removeLocationChangeEventListeners();\n }, [client]);\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n // href here is the full path of the location, including pathname, search,\n // and hash but does not include the origin.\n client.setLocation(win.location.origin + href);\n }, [client, href]);\n\n return null;\n};\n"],"names":["KnockGuideLocationSensor","href","useLocation","client","useGuideContext","React","useEffect","removeLocationChangeEventListeners","win","checkForWindow","setLocation","location","origin"],"mappings":"qRAMaA,EAAqCA,IAAM,CAChD,KAAA,CAAEC,KAAAA,GAASC,cAAY,EACvB,CAAEC,OAAAA,GAAWC,kBAAgB,EAEnCC,OAAAA,EAAAA,QAAMC,UAAU,IAAM,CACpBH,EAAOI,mCAAmC,CAAA,EACzC,CAACJ,CAAM,CAAC,EAEXE,EAAAA,QAAMC,UAAU,IAAM,CACpB,MAAME,EAAMC,EAAAA,eAAe,EACtBD,GAILL,EAAOO,YAAYF,EAAIG,SAASC,OAASX,CAAI,CAAA,EAC5C,CAACE,EAAQF,CAAI,CAAC,EAEV,IACT"}
1
+ {"version":3,"file":"KnockGuideLocationSensor.js","names":[],"sources":["../../../src/tanstack/KnockGuideLocationSensor.tsx"],"sourcesContent":["import { useGuideContext } from \"@knocklabs/react-core\";\nimport { useLocation } from \"@tanstack/react-router\";\nimport React from \"react\";\n\nimport { checkForWindow } from \"../modules/core/utils\";\n\nexport const KnockGuideLocationSensor: React.FC = () => {\n const { href } = useLocation();\n const { client } = useGuideContext();\n\n React.useEffect(() => {\n client.removeLocationChangeEventListeners();\n }, [client]);\n\n React.useEffect(() => {\n const win = checkForWindow();\n if (!win) return;\n\n // href here is the full path of the location, including pathname, search,\n // and hash but does not include the origin.\n client.setLocation(win.location.origin + href);\n }, [client, href]);\n\n return null;\n};\n"],"mappings":"wNAMA,IAAa,MAA2C,CACtD,GAAM,CAAE,SAAA,EAAA,EAAA,YAAA,CAAqB,EACvB,CAAE,WAAA,EAAA,EAAA,gBAAA,CAA2B,EAenC,OAbA,EAAA,QAAM,cAAgB,CACpB,EAAO,mCAAmC,CAC5C,EAAG,CAAC,CAAM,CAAC,EAEX,EAAA,QAAM,cAAgB,CACpB,IAAM,EAAM,EAAA,eAAe,EACtB,GAIL,EAAO,YAAY,EAAI,SAAS,OAAS,CAAI,CAC/C,EAAG,CAAC,EAAQ,CAAI,CAAC,EAEV,IACT"}
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./tanstack/KnockGuideLocationSensor.js");exports.KnockGuideLocationSensor=o.KnockGuideLocationSensor;
2
- //# sourceMappingURL=tanstack.js.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./tanstack/KnockGuideLocationSensor.js");exports.KnockGuideLocationSensor=e.KnockGuideLocationSensor;
@@ -1,119 +1,37 @@
1
1
  "use client";
2
- /* empty css */
3
- import { Button as x } from "./modules/core/components/Button/Button.mjs";
4
- import { ButtonGroup as k } from "./modules/core/components/Button/ButtonGroup.mjs";
5
- import { BellIcon as h } from "./modules/core/components/Icons/Bell.mjs";
6
- import { CheckmarkCircle as T } from "./modules/core/components/Icons/CheckmarkCircle.mjs";
7
- import { ChevronDown as v } from "./modules/core/components/Icons/ChevronDown.mjs";
8
- import { CloseCircle as A } from "./modules/core/components/Icons/CloseCircle.mjs";
9
- import { Spinner as F } from "./modules/core/components/Spinner/Spinner.mjs";
10
- import { default as b } from "./modules/core/hooks/useOnBottomScroll.mjs";
11
- import { EmptyFeed as g } from "./modules/feed/components/EmptyFeed/EmptyFeed.mjs";
12
- import { NotificationCell as y } from "./modules/feed/components/NotificationCell/NotificationCell.mjs";
13
- import { Avatar as O } from "./modules/feed/components/NotificationCell/Avatar.mjs";
14
- import { NotificationFeed as D } from "./modules/feed/components/NotificationFeed/NotificationFeed.mjs";
15
- import { NotificationFeedHeader as H } from "./modules/feed/components/NotificationFeed/NotificationFeedHeader.mjs";
16
- import { MarkAsRead as R } from "./modules/feed/components/NotificationFeed/MarkAsRead.mjs";
17
- import { NotificationFeedContainer as j } from "./modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.mjs";
18
- import { NotificationFeedPopover as z } from "./modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.mjs";
19
- import { NotificationIconButton as Q } from "./modules/feed/components/NotificationIconButton/NotificationIconButton.mjs";
20
- import { UnseenBadge as X } from "./modules/feed/components/UnseenBadge/UnseenBadge.mjs";
21
- import { Banner as Z, BannerView as _ } from "./modules/guide/components/Banner/Banner.mjs";
22
- import { Card as ee, CardView as oe } from "./modules/guide/components/Card/Card.mjs";
23
- import "@knocklabs/client";
24
- import { FilterStatus as re, I18nContext as ne, KnockFeedProvider as ae, KnockGuideContext as ie, KnockI18nProvider as se, KnockMsTeamsProvider as me, KnockProvider as ue, KnockSlackProvider as ce, feedProviderKey as pe, formatBadgeCount as fe, formatTimestamp as le, getBadgeAriaLabel as de, locales as xe, msTeamsProviderKey as Ce, renderNodeOrFallback as ke, slackProviderKey as Se, toSentenceCase as he, useAuthenticatedKnockClient as Ke, useConnectedMsTeamsChannels as Te, useConnectedSlackChannels as Me, useCreateNotificationStore as ve, useFeedSettings as Be, useGuide as Ae, useGuideContext as Pe, useGuides as Fe, useKnockAuthState as Ne, useKnockClient as be, useKnockFeed as Ge, useKnockMsTeamsClient as ge, useKnockSlackClient as we, useMsTeamsAuth as ye, useMsTeamsChannels as Ie, useMsTeamsConnectionStatus as Oe, useMsTeamsTeams as Ve, useNotificationStore as De, useNotifications as Ee, usePreferences as He, useSlackAuth as Le, useSlackChannels as Re, useSlackConnectionStatus as Ue, useStableOptions as je, useTranslations as qe } from "@knocklabs/react-core";
25
- import "@telegraph/button";
26
- import "@telegraph/icon";
27
- import "@telegraph/layout";
28
- import "@telegraph/segmented-control";
29
- import "@telegraph/tooltip";
30
- import "@telegraph/typography";
31
- import "lucide-react";
32
- import "react";
33
- /* empty css */
34
- import "@telegraph/tag";
35
- import "@telegraph/toggle";
36
- import { Modal as Je, ModalView as Qe } from "./modules/guide/components/Modal/Modal.mjs";
37
- import { KnockGuideProvider as Xe } from "./modules/guide/providers/KnockGuideProvider.mjs";
38
- import { MsTeamsAuthButton as Ze } from "./modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.mjs";
39
- import { MsTeamsAuthContainer as $e } from "./modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.mjs";
40
- import { default as oo } from "./modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.mjs";
41
- import { SlackAuthButton as ro } from "./modules/slack/components/SlackAuthButton/SlackAuthButton.mjs";
42
- import { SlackAuthContainer as ao } from "./modules/slack/components/SlackAuthContainer/SlackAuthContainer.mjs";
43
- import { SlackChannelCombobox as so } from "./modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.mjs";
44
- export {
45
- O as Avatar,
46
- Z as Banner,
47
- _ as BannerView,
48
- h as BellIcon,
49
- x as Button,
50
- k as ButtonGroup,
51
- ee as Card,
52
- oe as CardView,
53
- T as CheckmarkCircle,
54
- v as ChevronDown,
55
- A as CloseCircle,
56
- g as EmptyFeed,
57
- re as FilterStatus,
58
- ne as I18nContext,
59
- ae as KnockFeedProvider,
60
- ie as KnockGuideContext,
61
- Xe as KnockGuideProvider,
62
- se as KnockI18nProvider,
63
- me as KnockMsTeamsProvider,
64
- ue as KnockProvider,
65
- ce as KnockSlackProvider,
66
- R as MarkAsRead,
67
- Je as Modal,
68
- Qe as ModalView,
69
- Ze as MsTeamsAuthButton,
70
- $e as MsTeamsAuthContainer,
71
- oo as MsTeamsChannelCombobox,
72
- y as NotificationCell,
73
- D as NotificationFeed,
74
- j as NotificationFeedContainer,
75
- H as NotificationFeedHeader,
76
- z as NotificationFeedPopover,
77
- Q as NotificationIconButton,
78
- ro as SlackAuthButton,
79
- ao as SlackAuthContainer,
80
- so as SlackChannelCombobox,
81
- F as Spinner,
82
- X as UnseenBadge,
83
- pe as feedProviderKey,
84
- fe as formatBadgeCount,
85
- le as formatTimestamp,
86
- de as getBadgeAriaLabel,
87
- xe as locales,
88
- Ce as msTeamsProviderKey,
89
- ke as renderNodeOrFallback,
90
- Se as slackProviderKey,
91
- he as toSentenceCase,
92
- Ke as useAuthenticatedKnockClient,
93
- Te as useConnectedMsTeamsChannels,
94
- Me as useConnectedSlackChannels,
95
- ve as useCreateNotificationStore,
96
- Be as useFeedSettings,
97
- Ae as useGuide,
98
- Pe as useGuideContext,
99
- Fe as useGuides,
100
- Ne as useKnockAuthState,
101
- be as useKnockClient,
102
- Ge as useKnockFeed,
103
- ge as useKnockMsTeamsClient,
104
- we as useKnockSlackClient,
105
- ye as useMsTeamsAuth,
106
- Ie as useMsTeamsChannels,
107
- Oe as useMsTeamsConnectionStatus,
108
- Ve as useMsTeamsTeams,
109
- De as useNotificationStore,
110
- Ee as useNotifications,
111
- b as useOnBottomScroll,
112
- He as usePreferences,
113
- Le as useSlackAuth,
114
- Re as useSlackChannels,
115
- Ue as useSlackConnectionStatus,
116
- je as useStableOptions,
117
- qe as useTranslations
118
- };
119
- //# sourceMappingURL=index.mjs.map
2
+ /* empty css */
3
+ import { Spinner as e } from "./modules/core/components/Spinner/Spinner.mjs";
4
+ import { Button as t } from "./modules/core/components/Button/Button.mjs";
5
+ import { ButtonGroup as n } from "./modules/core/components/Button/ButtonGroup.mjs";
6
+ import { BellIcon as r } from "./modules/core/components/Icons/Bell.mjs";
7
+ import { CheckmarkCircle as i } from "./modules/core/components/Icons/CheckmarkCircle.mjs";
8
+ import { ChevronDown as a } from "./modules/core/components/Icons/ChevronDown.mjs";
9
+ import { CloseCircle as o } from "./modules/core/components/Icons/CloseCircle.mjs";
10
+ import s from "./modules/core/hooks/useOnBottomScroll.mjs";
11
+ import "./modules/core/index.mjs";
12
+ import { EmptyFeed as c } from "./modules/feed/components/EmptyFeed/EmptyFeed.mjs";
13
+ import { Avatar as l } from "./modules/feed/components/NotificationCell/Avatar.mjs";
14
+ import { NotificationCell as u } from "./modules/feed/components/NotificationCell/NotificationCell.mjs";
15
+ import { MarkAsRead as d } from "./modules/feed/components/NotificationFeed/MarkAsRead.mjs";
16
+ import { NotificationFeedHeader as f } from "./modules/feed/components/NotificationFeed/NotificationFeedHeader.mjs";
17
+ import { NotificationFeed as p } from "./modules/feed/components/NotificationFeed/NotificationFeed.mjs";
18
+ import { NotificationFeedContainer as m } from "./modules/feed/components/NotificationFeedContainer/NotificationFeedContainer.mjs";
19
+ import { NotificationFeedPopover as h } from "./modules/feed/components/NotificationFeedPopover/NotificationFeedPopover.mjs";
20
+ import { UnseenBadge as g } from "./modules/feed/components/UnseenBadge/UnseenBadge.mjs";
21
+ import { NotificationIconButton as _ } from "./modules/feed/components/NotificationIconButton/NotificationIconButton.mjs";
22
+ import "./modules/feed/index.mjs";
23
+ import { Banner as v, BannerView as y } from "./modules/guide/components/Banner/Banner.mjs";
24
+ import { Card as b, CardView as x } from "./modules/guide/components/Card/Card.mjs";
25
+ import { Modal as S, ModalView as C } from "./modules/guide/components/Modal/Modal.mjs";
26
+ import { KnockGuideProvider as w } from "./modules/guide/providers/KnockGuideProvider.mjs";
27
+ import "./modules/guide/index.mjs";
28
+ import { MsTeamsAuthButton as T } from "./modules/ms-teams/components/MsTeamsAuthButton/MsTeamsAuthButton.mjs";
29
+ import { MsTeamsAuthContainer as E } from "./modules/ms-teams/components/MsTeamsAuthContainer/MsTeamsAuthContainer.mjs";
30
+ import D from "./modules/ms-teams/components/MsTeamsChannelCombobox/MsTeamsChannelCombobox.mjs";
31
+ import "./modules/ms-teams/index.mjs";
32
+ import { SlackAuthButton as O } from "./modules/slack/components/SlackAuthButton/SlackAuthButton.mjs";
33
+ import { SlackAuthContainer as k } from "./modules/slack/components/SlackAuthContainer/SlackAuthContainer.mjs";
34
+ import { SlackChannelCombobox as A } from "./modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.mjs";
35
+ import "./modules/slack/index.mjs";
36
+ import { FilterStatus as j, I18nContext as M, KnockFeedProvider as N, KnockGuideContext as P, KnockI18nProvider as F, KnockMsTeamsProvider as I, KnockProvider as L, KnockSlackProvider as R, feedProviderKey as z, formatBadgeCount as B, formatTimestamp as V, getBadgeAriaLabel as H, locales as U, msTeamsProviderKey as W, renderNodeOrFallback as G, slackProviderKey as K, toSentenceCase as q, useAuthenticatedKnockClient as J, useConnectedMsTeamsChannels as Y, useConnectedSlackChannels as X, useCreateNotificationStore as Z, useFeedSettings as Q, useGuide as $, useGuideContext as ee, useGuides as te, useKnockAuthState as ne, useKnockClient as re, useKnockFeed as ie, useKnockMsTeamsClient as ae, useKnockSlackClient as oe, useMsTeamsAuth as se, useMsTeamsChannels as ce, useMsTeamsConnectionStatus as le, useMsTeamsTeams as ue, useNotificationStore as de, useNotifications as fe, usePreferences as pe, useSlackAuth as me, useSlackChannels as he, useSlackConnectionStatus as ge, useStableOptions as _e, useTranslations as ve } from "@knocklabs/react-core";
37
+ export { l as Avatar, v as Banner, y as BannerView, r as BellIcon, t as Button, n as ButtonGroup, b as Card, x as CardView, i as CheckmarkCircle, a as ChevronDown, o as CloseCircle, c as EmptyFeed, j as FilterStatus, M as I18nContext, N as KnockFeedProvider, P as KnockGuideContext, w as KnockGuideProvider, F as KnockI18nProvider, I as KnockMsTeamsProvider, L as KnockProvider, R as KnockSlackProvider, d as MarkAsRead, S as Modal, C as ModalView, T as MsTeamsAuthButton, E as MsTeamsAuthContainer, D as MsTeamsChannelCombobox, u as NotificationCell, p as NotificationFeed, m as NotificationFeedContainer, f as NotificationFeedHeader, h as NotificationFeedPopover, _ as NotificationIconButton, O as SlackAuthButton, k as SlackAuthContainer, A as SlackChannelCombobox, e as Spinner, g as UnseenBadge, z as feedProviderKey, B as formatBadgeCount, V as formatTimestamp, H as getBadgeAriaLabel, U as locales, W as msTeamsProviderKey, G as renderNodeOrFallback, K as slackProviderKey, q as toSentenceCase, J as useAuthenticatedKnockClient, Y as useConnectedMsTeamsChannels, X as useConnectedSlackChannels, Z as useCreateNotificationStore, Q as useFeedSettings, $ as useGuide, ee as useGuideContext, te as useGuides, ne as useKnockAuthState, re as useKnockClient, ie as useKnockFeed, ae as useKnockMsTeamsClient, oe as useKnockSlackClient, se as useMsTeamsAuth, ce as useMsTeamsChannels, le as useMsTeamsConnectionStatus, ue as useMsTeamsTeams, de as useNotificationStore, fe as useNotifications, s as useOnBottomScroll, pe as usePreferences, me as useSlackAuth, he as useSlackChannels, ge as useSlackConnectionStatus, _e as useStableOptions, ve as useTranslations };
@@ -1,22 +1,29 @@
1
- import { useKnockFeed as c } from "@knocklabs/react-core";
2
- import e from "react";
3
- import { ButtonSpinner as b } from "./ButtonSpinner.mjs";
4
- /* empty css */
5
- const _ = ({
6
- variant: r = "primary",
7
- loadingText: n,
8
- isLoading: t = !1,
9
- isDisabled: a = !1,
10
- isFullWidth: s = !1,
11
- onClick: l,
12
- children: o
13
- }) => {
14
- const {
15
- colorMode: u
16
- } = c(), f = ["rnf-button", `rnf-button--${r}`, s ? "rnf-button--full-width" : "", t ? "rnf-button--is-loading" : "", `rnf-button--${u}`].join(" "), m = n || /* @__PURE__ */ e.createElement("span", { className: "rnf-button__button-text-hidden" }, o);
17
- return /* @__PURE__ */ e.createElement("button", { onClick: l, className: f, disabled: t || a, type: "button" }, t && /* @__PURE__ */ e.createElement(b, { hasLabel: !!n }), t ? m : o);
1
+ /* empty css */
2
+ import { ButtonSpinner as e } from "./ButtonSpinner.mjs";
3
+ import { useKnockFeed as t } from "@knocklabs/react-core";
4
+ import "react";
5
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
6
+ //#region src/modules/core/components/Button/Button.tsx
7
+ var i = ({ variant: i = "primary", loadingText: a, isLoading: o = !1, isDisabled: s = !1, isFullWidth: c = !1, onClick: l, children: u }) => {
8
+ let { colorMode: d } = t();
9
+ return /* @__PURE__ */ r("button", {
10
+ onClick: l,
11
+ className: [
12
+ "rnf-button",
13
+ `rnf-button--${i}`,
14
+ c ? "rnf-button--full-width" : "",
15
+ o ? "rnf-button--is-loading" : "",
16
+ `rnf-button--${d}`
17
+ ].join(" "),
18
+ disabled: o || s,
19
+ type: "button",
20
+ children: [o && /* @__PURE__ */ n(e, { hasLabel: !!a }), o ? a || /* @__PURE__ */ n("span", {
21
+ className: "rnf-button__button-text-hidden",
22
+ children: u
23
+ }) : u]
24
+ });
18
25
  };
19
- export {
20
- _ as Button
21
- };
22
- //# sourceMappingURL=Button.mjs.map
26
+ //#endregion
27
+ export { i as Button };
28
+
29
+ //# sourceMappingURL=Button.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.mjs","sources":["../../../../../../src/modules/core/components/Button/Button.tsx"],"sourcesContent":["import { useKnockFeed } from \"@knocklabs/react-core\";\nimport React, { PropsWithChildren } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport { ButtonSpinner } from \"./ButtonSpinner\";\nimport \"./styles.css\";\n\nexport type ButtonProps = {\n variant: \"primary\" | \"secondary\";\n loadingText?: string;\n isLoading?: boolean;\n isDisabled?: boolean;\n isFullWidth?: boolean;\n onClick: (e: React.MouseEvent) => void;\n};\n\nexport const Button: FunctionComponent<PropsWithChildren<ButtonProps>> = ({\n variant = \"primary\",\n loadingText,\n isLoading = false,\n isDisabled = false,\n isFullWidth = false,\n onClick,\n children,\n}) => {\n const { colorMode } = useKnockFeed();\n\n const classNames = [\n \"rnf-button\",\n `rnf-button--${variant}`,\n isFullWidth ? \"rnf-button--full-width\" : \"\",\n isLoading ? \"rnf-button--is-loading\" : \"\",\n `rnf-button--${colorMode}`,\n ].join(\" \");\n\n // In this case when there's no loading text, we still want to display the original\n // content of the button, but make it hidden. That allows us to keep the button width\n // consistent and show the spinner in the middle, meaning no layout shift.\n const textToShowWhileLoading = loadingText || (\n <span className=\"rnf-button__button-text-hidden\">{children}</span>\n );\n\n return (\n <button\n onClick={onClick}\n className={classNames}\n disabled={isLoading || isDisabled}\n type=\"button\"\n >\n {isLoading && <ButtonSpinner hasLabel={!!loadingText} />}\n {isLoading ? textToShowWhileLoading : children}\n </button>\n );\n};\n"],"names":["Button","variant","loadingText","isLoading","isDisabled","isFullWidth","onClick","children","colorMode","useKnockFeed","classNames","join","textToShowWhileLoading","React","ButtonSpinner"],"mappings":";;;;AAgBO,MAAMA,IAA4DA,CAAC;AAAA,EACxEC,SAAAA,IAAU;AAAA,EACVC,aAAAA;AAAAA,EACAC,WAAAA,IAAY;AAAA,EACZC,YAAAA,IAAa;AAAA,EACbC,aAAAA,IAAc;AAAA,EACdC,SAAAA;AAAAA,EACAC,UAAAA;AACF,MAAM;AACE,QAAA;AAAA,IAAEC,WAAAA;AAAAA,MAAcC,EAAa,GAE7BC,IAAa,CACjB,cACA,eAAeT,CAAO,IACtBI,IAAc,2BAA2B,IACzCF,IAAY,2BAA2B,IACvC,eAAeK,CAAS,EAAE,EAC1BG,KAAK,GAAG,GAKJC,IAAyBV,KAC7BW,gBAAAA,EAAA,cAAC,QAAK,EAAA,WAAU,oCAAkCN,CAAS;AAI3D,SAAAM,gBAAAA,EAAA,cAAC,YACC,SAAAP,GACA,WAAWI,GACX,UAAUP,KAAaC,GACvB,MAAK,YAEJD,KAAcU,gBAAAA,EAAA,cAAAC,GAAA,EAAc,UAAU,CAAC,CAACZ,GAAe,GACvDC,IAAYS,IAAyBL,CACxC;AAEJ;"}
1
+ {"version":3,"file":"Button.mjs","names":[],"sources":["../../../../../../src/modules/core/components/Button/Button.tsx"],"sourcesContent":["import { useKnockFeed } from \"@knocklabs/react-core\";\nimport React, { PropsWithChildren } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport { ButtonSpinner } from \"./ButtonSpinner\";\nimport \"./styles.css\";\n\nexport type ButtonProps = {\n variant: \"primary\" | \"secondary\";\n loadingText?: string;\n isLoading?: boolean;\n isDisabled?: boolean;\n isFullWidth?: boolean;\n onClick: (e: React.MouseEvent) => void;\n};\n\nexport const Button: FunctionComponent<PropsWithChildren<ButtonProps>> = ({\n variant = \"primary\",\n loadingText,\n isLoading = false,\n isDisabled = false,\n isFullWidth = false,\n onClick,\n children,\n}) => {\n const { colorMode } = useKnockFeed();\n\n const classNames = [\n \"rnf-button\",\n `rnf-button--${variant}`,\n isFullWidth ? \"rnf-button--full-width\" : \"\",\n isLoading ? \"rnf-button--is-loading\" : \"\",\n `rnf-button--${colorMode}`,\n ].join(\" \");\n\n // In this case when there's no loading text, we still want to display the original\n // content of the button, but make it hidden. That allows us to keep the button width\n // consistent and show the spinner in the middle, meaning no layout shift.\n const textToShowWhileLoading = loadingText || (\n <span className=\"rnf-button__button-text-hidden\">{children}</span>\n );\n\n return (\n <button\n onClick={onClick}\n className={classNames}\n disabled={isLoading || isDisabled}\n type=\"button\"\n >\n {isLoading && <ButtonSpinner hasLabel={!!loadingText} />}\n {isLoading ? textToShowWhileLoading : children}\n </button>\n );\n};\n"],"mappings":";;;;;;AAgBA,IAAa,KAA6D,EACxE,aAAU,WACV,gBACA,eAAY,IACZ,gBAAa,IACb,iBAAc,IACd,YACA,kBACI;CACJ,IAAM,EAAE,iBAAc,EAAa;CAiBnC,OACE,kBAAC,UAAD;EACW;EACT,WAlBe;GACjB;GACA,eAAe;GACf,IAAc,2BAA2B;GACzC,IAAY,2BAA2B;GACvC,eAAe;EACjB,CAAC,CAAC,KAAK,GAYQ;EACX,UAAU,KAAa;EACvB,MAAK;YAJP,CAMG,KAAa,kBAAC,GAAD,EAAe,UAAU,CAAC,CAAC,EAAc,CAAA,GACtD,IAZ0B,KAC7B,kBAAC,QAAD;GAAM,WAAU;GAAkC;EAAe,CAAA,IAWzB,CAChC;;AAEZ"}
@@ -1,9 +1,11 @@
1
- import o from "react";
2
- /* empty css */
3
- const a = ({
4
- children: t
5
- }) => /* @__PURE__ */ o.createElement("div", { className: "rnf-button-group" }, t);
6
- export {
7
- a as ButtonGroup
8
- };
9
- //# sourceMappingURL=ButtonGroup.mjs.map
1
+ /* empty css */
2
+ import { jsx as e } from "react/jsx-runtime";
3
+ //#region src/modules/core/components/Button/ButtonGroup.tsx
4
+ var t = ({ children: t }) => /* @__PURE__ */ e("div", {
5
+ className: "rnf-button-group",
6
+ children: t
7
+ });
8
+ //#endregion
9
+ export { t as ButtonGroup };
10
+
11
+ //# sourceMappingURL=ButtonGroup.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.mjs","sources":["../../../../../../src/modules/core/components/Button/ButtonGroup.tsx"],"sourcesContent":["import { FunctionComponent, ReactNode } from \"react\";\n\nimport \"./styles.css\";\n\nexport const ButtonGroup: FunctionComponent<{\n children?: ReactNode | undefined;\n}> = ({ children }) => <div className=\"rnf-button-group\">{children}</div>;\n"],"names":["ButtonGroup","children","React"],"mappings":";;AAIO,MAAMA,IAERA,CAAC;AAAA,EAAEC,UAAAA;AAAS,MAAOC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,mBAAA,GAAoBD,CAAS;"}
1
+ {"version":3,"file":"ButtonGroup.mjs","names":[],"sources":["../../../../../../src/modules/core/components/Button/ButtonGroup.tsx"],"sourcesContent":["import { FunctionComponent, ReactNode } from \"react\";\n\nimport \"./styles.css\";\n\nexport const ButtonGroup: FunctionComponent<{\n children?: ReactNode | undefined;\n}> = ({ children }) => <div className=\"rnf-button-group\">{children}</div>;\n"],"mappings":";;;AAIA,IAAa,KAEP,EAAE,kBAAe,kBAAC,OAAD;CAAK,WAAU;CAAoB;AAAc,CAAA"}
@@ -1,10 +1,13 @@
1
- import t from "react";
2
- import { Spinner as n } from "../Spinner/Spinner.mjs";
3
- /* empty css */
4
- const l = ({
5
- hasLabel: e
6
- }) => /* @__PURE__ */ t.createElement("div", { className: `rnf-button-spinner rnf-button-spinner--${e ? "with-label" : "without-label"}` }, /* @__PURE__ */ t.createElement(n, null));
7
- export {
8
- l as ButtonSpinner
9
- };
10
- //# sourceMappingURL=ButtonSpinner.mjs.map
1
+ import { Spinner as e } from "../Spinner/Spinner.mjs";
2
+ import "../Spinner/index.mjs";
3
+ /* empty css */
4
+ import { jsx as t } from "react/jsx-runtime";
5
+ //#region src/modules/core/components/Button/ButtonSpinner.tsx
6
+ var n = ({ hasLabel: n }) => /* @__PURE__ */ t("div", {
7
+ className: `rnf-button-spinner rnf-button-spinner--${n ? "with-label" : "without-label"}`,
8
+ children: /* @__PURE__ */ t(e, {})
9
+ });
10
+ //#endregion
11
+ export { n as ButtonSpinner };
12
+
13
+ //# sourceMappingURL=ButtonSpinner.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonSpinner.mjs","sources":["../../../../../../src/modules/core/components/Button/ButtonSpinner.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nimport { Spinner } from \"../Spinner\";\n\nimport \"./styles.css\";\n\ntype ButtonSpinnerProps = {\n hasLabel: boolean;\n};\n\nexport const ButtonSpinner: FunctionComponent<ButtonSpinnerProps> = ({\n hasLabel,\n}) => (\n <div\n className={`rnf-button-spinner rnf-button-spinner--${\n hasLabel ? \"with-label\" : \"without-label\"\n }`}\n >\n <Spinner />\n </div>\n);\n"],"names":["ButtonSpinner","hasLabel","React","Spinner"],"mappings":";;;AAUO,MAAMA,IAAuDA,CAAC;AAAA,EACnEC,UAAAA;AACF,MACEC,gBAAAA,EAAA,cAAC,OACC,EAAA,WAAW,0CACTD,IAAW,eAAe,eAAe,GAAA,GAG1CC,gBAAAA,EAAA,cAAAC,GAAA,IAAO,CACV;"}
1
+ {"version":3,"file":"ButtonSpinner.mjs","names":[],"sources":["../../../../../../src/modules/core/components/Button/ButtonSpinner.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nimport { Spinner } from \"../Spinner\";\n\nimport \"./styles.css\";\n\ntype ButtonSpinnerProps = {\n hasLabel: boolean;\n};\n\nexport const ButtonSpinner: FunctionComponent<ButtonSpinnerProps> = ({\n hasLabel,\n}) => (\n <div\n className={`rnf-button-spinner rnf-button-spinner--${\n hasLabel ? \"with-label\" : \"without-label\"\n }`}\n >\n <Spinner />\n </div>\n);\n"],"mappings":";;;;;AAUA,IAAa,KAAwD,EACnE,kBAEA,kBAAC,OAAD;CACE,WAAW,0CACT,IAAW,eAAe;WAG5B,kBAAC,GAAD,CAAU,CAAA;AACP,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { Button as e } from "./Button.mjs";
2
+ import { ButtonGroup as t } from "./ButtonGroup.mjs";
3
+ export { e as Button, t as ButtonGroup };