@knocklabs/react 0.2.9 → 0.2.11

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 (152) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/index.css +1 -1
  3. package/dist/cjs/modules/core/components/Button/Button.js +1 -1
  4. package/dist/cjs/modules/core/components/Button/Button.js.map +1 -1
  5. package/dist/cjs/modules/core/components/Button/ButtonGroup.js.map +1 -1
  6. package/dist/cjs/modules/core/components/Button/ButtonSpinner.js.map +1 -1
  7. package/dist/cjs/modules/core/components/Icons/Bell.js +1 -1
  8. package/dist/cjs/modules/core/components/Icons/Bell.js.map +1 -1
  9. package/dist/cjs/modules/core/components/Icons/CheckmarkCircle.js +1 -1
  10. package/dist/cjs/modules/core/components/Icons/CheckmarkCircle.js.map +1 -1
  11. package/dist/cjs/modules/core/components/Icons/ChevronDown.js +1 -1
  12. package/dist/cjs/modules/core/components/Icons/ChevronDown.js.map +1 -1
  13. package/dist/cjs/modules/core/components/Icons/CloseCircle.js +1 -1
  14. package/dist/cjs/modules/core/components/Icons/CloseCircle.js.map +1 -1
  15. package/dist/cjs/modules/core/components/Spinner/Spinner.js.map +1 -1
  16. package/dist/cjs/modules/feed/components/EmptyFeed/EmptyFeed.js.map +1 -1
  17. package/dist/cjs/modules/feed/components/NotificationFeed/NotificationFeed.js.map +1 -1
  18. package/dist/cjs/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.js.map +1 -1
  19. package/dist/cjs/modules/slack/components/SlackAuthButton/SlackAuthButton.js.map +1 -1
  20. package/dist/cjs/modules/slack/components/SlackAuthContainer/SlackAuthContainer.js.map +1 -1
  21. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.js.map +1 -1
  22. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.js.map +1 -1
  23. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackChannelOption.js.map +1 -1
  24. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTag.js.map +1 -1
  25. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.js.map +1 -1
  26. package/dist/cjs/modules/slack/components/SlackChannelCombobox/SlackConnectionError.js.map +1 -1
  27. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.js +1 -1
  28. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.js.map +1 -1
  29. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.js +1 -1
  30. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.js.map +1 -1
  31. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.js.map +1 -1
  32. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.js.map +1 -1
  33. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/LockIcon.js.map +1 -1
  34. package/dist/cjs/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.js.map +1 -1
  35. package/dist/cjs/modules/slack/components/SlackIcon/SlackIcon.js.map +1 -1
  36. package/dist/esm/modules/core/components/Button/Button.mjs +1 -1
  37. package/dist/esm/modules/core/components/Button/Button.mjs.map +1 -1
  38. package/dist/esm/modules/core/components/Button/ButtonGroup.mjs.map +1 -1
  39. package/dist/esm/modules/core/components/Button/ButtonSpinner.mjs.map +1 -1
  40. package/dist/esm/modules/core/components/Icons/Bell.mjs +2 -4
  41. package/dist/esm/modules/core/components/Icons/Bell.mjs.map +1 -1
  42. package/dist/esm/modules/core/components/Icons/CheckmarkCircle.mjs +5 -2
  43. package/dist/esm/modules/core/components/Icons/CheckmarkCircle.mjs.map +1 -1
  44. package/dist/esm/modules/core/components/Icons/ChevronDown.mjs +5 -2
  45. package/dist/esm/modules/core/components/Icons/ChevronDown.mjs.map +1 -1
  46. package/dist/esm/modules/core/components/Icons/CloseCircle.mjs +5 -2
  47. package/dist/esm/modules/core/components/Icons/CloseCircle.mjs.map +1 -1
  48. package/dist/esm/modules/core/components/Spinner/Spinner.mjs.map +1 -1
  49. package/dist/esm/modules/feed/components/EmptyFeed/EmptyFeed.mjs.map +1 -1
  50. package/dist/esm/modules/feed/components/NotificationFeed/NotificationFeed.mjs.map +1 -1
  51. package/dist/esm/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.mjs.map +1 -1
  52. package/dist/esm/modules/slack/components/SlackAuthButton/SlackAuthButton.mjs.map +1 -1
  53. package/dist/esm/modules/slack/components/SlackAuthContainer/SlackAuthContainer.mjs.map +1 -1
  54. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.mjs.map +1 -1
  55. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.mjs.map +1 -1
  56. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackChannelOption.mjs.map +1 -1
  57. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTag.mjs.map +1 -1
  58. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.mjs.map +1 -1
  59. package/dist/esm/modules/slack/components/SlackChannelCombobox/SlackConnectionError.mjs.map +1 -1
  60. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.mjs +4 -5
  61. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.mjs.map +1 -1
  62. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.mjs +5 -2
  63. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.mjs.map +1 -1
  64. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.mjs.map +1 -1
  65. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.mjs.map +1 -1
  66. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/LockIcon.mjs.map +1 -1
  67. package/dist/esm/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.mjs.map +1 -1
  68. package/dist/esm/modules/slack/components/SlackIcon/SlackIcon.mjs.map +1 -1
  69. package/dist/index.css +1 -1
  70. package/dist/types/App.d.ts +2 -1
  71. package/dist/types/App.d.ts.map +1 -1
  72. package/dist/types/modules/core/components/Button/Button.d.ts +2 -1
  73. package/dist/types/modules/core/components/Button/Button.d.ts.map +1 -1
  74. package/dist/types/modules/core/components/Button/ButtonGroup.d.ts +2 -2
  75. package/dist/types/modules/core/components/Button/ButtonGroup.d.ts.map +1 -1
  76. package/dist/types/modules/core/components/Button/ButtonSpinner.d.ts +2 -2
  77. package/dist/types/modules/core/components/Button/ButtonSpinner.d.ts.map +1 -1
  78. package/dist/types/modules/core/components/Icons/Bell.d.ts +6 -4
  79. package/dist/types/modules/core/components/Icons/Bell.d.ts.map +1 -1
  80. package/dist/types/modules/core/components/Icons/CheckmarkCircle.d.ts +6 -1
  81. package/dist/types/modules/core/components/Icons/CheckmarkCircle.d.ts.map +1 -1
  82. package/dist/types/modules/core/components/Icons/ChevronDown.d.ts +6 -1
  83. package/dist/types/modules/core/components/Icons/ChevronDown.d.ts.map +1 -1
  84. package/dist/types/modules/core/components/Icons/CloseCircle.d.ts +6 -1
  85. package/dist/types/modules/core/components/Icons/CloseCircle.d.ts.map +1 -1
  86. package/dist/types/modules/core/components/Spinner/Spinner.d.ts +2 -2
  87. package/dist/types/modules/core/components/Spinner/Spinner.d.ts.map +1 -1
  88. package/dist/types/modules/feed/components/EmptyFeed/EmptyFeed.d.ts +2 -2
  89. package/dist/types/modules/feed/components/EmptyFeed/EmptyFeed.d.ts.map +1 -1
  90. package/dist/types/modules/feed/components/NotificationFeed/NotificationFeed.d.ts +2 -2
  91. package/dist/types/modules/feed/components/NotificationFeed/NotificationFeed.d.ts.map +1 -1
  92. package/dist/types/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.d.ts +4 -2
  93. package/dist/types/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.d.ts.map +1 -1
  94. package/dist/types/modules/slack/components/SlackAuthButton/SlackAuthButton.d.ts +4 -5
  95. package/dist/types/modules/slack/components/SlackAuthButton/SlackAuthButton.d.ts.map +1 -1
  96. package/dist/types/modules/slack/components/SlackAuthContainer/SlackAuthContainer.d.ts +5 -2
  97. package/dist/types/modules/slack/components/SlackAuthContainer/SlackAuthContainer.d.ts.map +1 -1
  98. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.d.ts +5 -6
  99. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.d.ts.map +1 -1
  100. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.d.ts +4 -4
  101. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.d.ts.map +1 -1
  102. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelOption.d.ts +4 -4
  103. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackChannelOption.d.ts.map +1 -1
  104. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTag.d.ts +4 -3
  105. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTag.d.ts.map +1 -1
  106. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.d.ts +4 -3
  107. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.d.ts.map +1 -1
  108. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectionError.d.ts +2 -1
  109. package/dist/types/modules/slack/components/SlackChannelCombobox/SlackConnectionError.d.ts.map +1 -1
  110. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.d.ts +5 -3
  111. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.d.ts.map +1 -1
  112. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.d.ts +6 -1
  113. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.d.ts.map +1 -1
  114. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.d.ts +2 -1
  115. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.d.ts.map +1 -1
  116. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.d.ts +2 -1
  117. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.d.ts.map +1 -1
  118. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/LockIcon.d.ts +2 -1
  119. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/LockIcon.d.ts.map +1 -1
  120. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.d.ts +2 -1
  121. package/dist/types/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.d.ts.map +1 -1
  122. package/dist/types/modules/slack/components/SlackIcon/SlackIcon.d.ts +4 -2
  123. package/dist/types/modules/slack/components/SlackIcon/SlackIcon.d.ts.map +1 -1
  124. package/package.json +3 -3
  125. package/dist/cjs/modules/core/components/Button/styles.css.js +0 -2
  126. package/dist/cjs/modules/core/components/Button/styles.css.js.map +0 -1
  127. package/dist/cjs/modules/feed/components/EmptyFeed/styles.css.js +0 -2
  128. package/dist/cjs/modules/feed/components/EmptyFeed/styles.css.js.map +0 -1
  129. package/dist/cjs/modules/feed/components/NotificationCell/styles.css.js +0 -2
  130. package/dist/cjs/modules/feed/components/NotificationCell/styles.css.js.map +0 -1
  131. package/dist/cjs/modules/feed/components/NotificationFeed/styles.css.js +0 -2
  132. package/dist/cjs/modules/feed/components/NotificationFeed/styles.css.js.map +0 -1
  133. package/dist/cjs/modules/feed/components/NotificationFeedContainer/styles.css.js +0 -2
  134. package/dist/cjs/modules/feed/components/NotificationFeedContainer/styles.css.js.map +0 -1
  135. package/dist/cjs/modules/feed/components/NotificationFeedPopover/styles.css.js +0 -2
  136. package/dist/cjs/modules/feed/components/NotificationFeedPopover/styles.css.js.map +0 -1
  137. package/dist/cjs/modules/feed/components/NotificationIconButton/styles.css.js +0 -2
  138. package/dist/cjs/modules/feed/components/NotificationIconButton/styles.css.js.map +0 -1
  139. package/dist/cjs/modules/feed/components/UnseenBadge/styles.css.js +0 -2
  140. package/dist/cjs/modules/feed/components/UnseenBadge/styles.css.js.map +0 -1
  141. package/dist/cjs/modules/slack/components/SlackAddChannelInput/styles.css.js +0 -2
  142. package/dist/cjs/modules/slack/components/SlackAddChannelInput/styles.css.js.map +0 -1
  143. package/dist/cjs/modules/slack/components/SlackAuthButton/styles.css.js +0 -2
  144. package/dist/cjs/modules/slack/components/SlackAuthButton/styles.css.js.map +0 -1
  145. package/dist/cjs/modules/slack/components/SlackAuthContainer/styles.css.js +0 -2
  146. package/dist/cjs/modules/slack/components/SlackAuthContainer/styles.css.js.map +0 -1
  147. package/dist/cjs/modules/slack/components/SlackChannelCombobox/styles.css.js +0 -2
  148. package/dist/cjs/modules/slack/components/SlackChannelCombobox/styles.css.js.map +0 -1
  149. package/dist/cjs/modules/slack/theme.css.js +0 -2
  150. package/dist/cjs/modules/slack/theme.css.js.map +0 -1
  151. package/dist/cjs/theme.css.js +0 -2
  152. package/dist/cjs/theme.css.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SlackConnectedChannelTagList.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.tsx"],"sourcesContent":["import { SlackChannel, SlackChannelConnection } from \"@knocklabs/client\";\n\nimport SlackConnectedChannelTag from \"./SlackConnectedChannelTag\";\nimport \"./styles.css\";\n\ntype Props = {\n\tconnectedChannels: SlackChannelConnection[] | null;\n\tslackChannels: SlackChannel[];\n\tupdateConnectedChannels: (channelId: string) => void;\n}\n\nconst SlackConnectedChannelTagList = ({\n\tconnectedChannels,\n\tslackChannels,\n\tupdateConnectedChannels,\n}: Props) => {\n\tconst connectedChannelsMap = new Map(\n\t\tconnectedChannels?.map((channel) => [channel.channel_id, channel]),\n\t);\n\n\tconst channels =\n\t\tslackChannels?.filter((slackChannel) => {\n\t\t\treturn connectedChannelsMap.has(slackChannel.id || \"\");\n\t\t}) || [];\n\n\treturn (\n\t\t<div className=\"rsk-combobox__connected_channel_tag_list\">\n\t\t\t{channels.map((channel) => (\n\t\t\t\t<SlackConnectedChannelTag key={channel.id} channel={channel} updateConnectedChannels={updateConnectedChannels} />\n\t\t\t))}\n\t\t</div>\n\t);\n};\n\nexport default SlackConnectedChannelTagList;\n"],"names":["SlackConnectedChannelTagList","connectedChannels","slackChannels","updateConnectedChannels","connectedChannelsMap","Map","map","channel","channel_id","channels","filter","slackChannel","has","id","React","SlackConnectedChannelTag"],"mappings":"iLAWMA,EAA+BA,CAAC,CACrCC,kBAAAA,EACAC,cAAAA,EACAC,wBAAAA,CACM,IAAM,CACNC,MAAAA,EAAuB,IAAIC,IAChCJ,GAAAA,YAAAA,EAAmBK,IAAiBC,GAAA,CAACA,EAAQC,WAAYD,CAAO,EACjE,EAEME,GACLP,GAAAA,YAAAA,EAAeQ,OAAyBC,GAChCP,EAAqBQ,IAAID,EAAaE,IAAM,EAAE,KAChD,CAAA,EAEP,OACEC,EAAA,QAAA,cAAA,MAAA,CAAI,UAAU,4CACbL,EAASH,IAAKC,GACbO,EAAA,QAAA,cAAAC,EAAA,CAAyB,IAAKR,EAAQM,GAAI,QAAAN,EAAkB,wBAAAJ,GAC7D,CACF,CAEF"}
1
+ {"version":3,"file":"SlackConnectedChannelTagList.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackConnectedChannelTagList.tsx"],"sourcesContent":["import { SlackChannel, SlackChannelConnection } from \"@knocklabs/client\";\nimport { FunctionComponent } from \"react\";\n\nimport SlackConnectedChannelTag from \"./SlackConnectedChannelTag\";\nimport \"./styles.css\";\n\nexport interface SlackConnectedChannelTagListProps {\n connectedChannels: SlackChannelConnection[] | null;\n slackChannels: SlackChannel[];\n updateConnectedChannels: (channelId: string) => void;\n}\n\nconst SlackConnectedChannelTagList: FunctionComponent<\n SlackConnectedChannelTagListProps\n> = ({ connectedChannels, slackChannels, updateConnectedChannels }) => {\n const connectedChannelsMap = new Map(\n connectedChannels?.map((channel) => [channel.channel_id, channel]),\n );\n\n const channels =\n slackChannels?.filter((slackChannel) => {\n return connectedChannelsMap.has(slackChannel.id || \"\");\n }) || [];\n\n return (\n <div className=\"rsk-combobox__connected_channel_tag_list\">\n {channels.map((channel) => (\n <SlackConnectedChannelTag\n key={channel.id}\n channel={channel}\n updateConnectedChannels={updateConnectedChannels}\n />\n ))}\n </div>\n );\n};\n\nexport default SlackConnectedChannelTagList;\n"],"names":["SlackConnectedChannelTagList","connectedChannels","slackChannels","updateConnectedChannels","connectedChannelsMap","Map","map","channel","channel_id","channels","filter","slackChannel","has","id","React","SlackConnectedChannelTag"],"mappings":"iLAYMA,EAEFA,CAAC,CAAEC,kBAAAA,EAAmBC,cAAAA,EAAeC,wBAAAA,CAAwB,IAAM,CAC/DC,MAAAA,EAAuB,IAAIC,IAC/BJ,GAAAA,YAAAA,EAAmBK,IAAiBC,GAAA,CAACA,EAAQC,WAAYD,CAAO,EAClE,EAEME,GACJP,GAAAA,YAAAA,EAAeQ,OAAyBC,GAC/BP,EAAqBQ,IAAID,EAAaE,IAAM,EAAE,KACjD,CAAA,EAER,OACGC,EAAA,QAAA,cAAA,MAAA,CAAI,UAAU,4CACZL,EAASH,IAAKC,GACZO,EAAA,QAAA,cAAAC,EAAA,CACC,IAAKR,EAAQM,GACb,QAAAN,EACA,wBAAAJ,GAEH,CACH,CAEJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackConnectionError.js","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackConnectionError.tsx"],"sourcesContent":["import { useKnockSlackClient, useTranslations } from \"@knocklabs/react-core\";\n\nimport InfoIcon from \"./icons/InfoIcon\";\n\nconst SlackConnectionError = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockSlackClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <div className=\"rsk-combobox__error\">\n <span>\n <InfoIcon />\n </span>\n\n <div className=\"rsk-combobox__error__text\">\n {connectionStatus === \"disconnected\"\n ? t(\"slackConnectionErrorOccurred\")\n : t(\"slackConnectionErrorExists\")}\n </div>\n </div>\n );\n }\n\n return <div />;\n};\n\nexport default SlackConnectionError;\n"],"names":["SlackConnectionError","t","useTranslations","connectionStatus","useKnockSlackClient","React","InfoIcon"],"mappings":"yKAIMA,EAAuBA,IAAM,CAC3B,KAAA,CAAEC,EAAAA,GAAMC,EAAgB,gBAAA,EACxB,CAAEC,iBAAAA,GAAqBC,EAAoB,oBAAA,EAE7CD,OAAAA,IAAqB,gBAAkBA,IAAqB,QAE5DE,EAAA,QAAA,cAAC,OAAI,UAAU,qBAAA,0BACZ,OACC,KAAAA,EAAA,QAAA,cAACC,EAAQ,IAAA,CACX,EAEAD,EAAAA,QAAA,cAAC,OAAI,UAAU,2BAAA,EAETJ,EADHE,IAAqB,eAChB,+BACA,4BAD8B,CAEtC,CACF,0BAII,MAAM,IAAA,CAChB"}
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 InfoIcon from \"./icons/InfoIcon\";\n\nconst SlackConnectionError: FunctionComponent = () => {\n const { t } = useTranslations();\n const { connectionStatus } = useKnockSlackClient();\n\n if (connectionStatus === \"disconnected\" || connectionStatus === \"error\") {\n return (\n <div className=\"rsk-combobox__error\">\n <span>\n <InfoIcon />\n </span>\n\n <div className=\"rsk-combobox__error__text\">\n {connectionStatus === \"disconnected\"\n ? t(\"slackConnectionErrorOccurred\")\n : t(\"slackConnectionErrorExists\")}\n </div>\n </div>\n );\n }\n\n return <div />;\n};\n\nexport default SlackConnectionError;\n"],"names":["SlackConnectionError","t","useTranslations","connectionStatus","useKnockSlackClient","React","InfoIcon"],"mappings":"yKAKMA,EAA0CA,IAAM,CAC9C,KAAA,CAAEC,EAAAA,GAAMC,EAAgB,gBAAA,EACxB,CAAEC,iBAAAA,GAAqBC,EAAoB,oBAAA,EAE7CD,OAAAA,IAAqB,gBAAkBA,IAAqB,QAE5DE,EAAA,QAAA,cAAC,OAAI,UAAU,qBAAA,0BACZ,OACC,KAAAA,EAAA,QAAA,cAACC,EAAQ,IAAA,CACX,EAEAD,EAAAA,QAAA,cAAC,OAAI,UAAU,2BAAA,EAETJ,EADHE,IAAqB,eAChB,+BACA,4BAD8B,CAEtC,CACF,0BAII,MAAM,IAAA,CAChB"}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("react"),a=t=>t&&typeof t=="object"&&"default"in t?t:{default:t},o=a(r),c=({isConnected:t,size:e="1rem",...n})=>o.default.createElement("svg",{height:e,width:e,role:"img",viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",...n},o.default.createElement("path",{d:"M11.3751 3.9996L5.25006 10.9996L2.62506 8.3746",stroke:t?"#5469D4":"#A5ACB8",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}));module.exports=c;
1
+ "use strict";const n=require("react"),r=t=>t&&typeof t=="object"&&"default"in t?t:{default:t},o=r(n),a=({isConnected:t,size:e="1rem"})=>o.default.createElement("svg",{height:e,width:e,role:"img",viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o.default.createElement("path",{d:"M11.3751 3.9996L5.25006 10.9996L2.62506 8.3746",stroke:t?"#5469D4":"#A5ACB8",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}));module.exports=a;
2
2
  //# sourceMappingURL=CheckmarkIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckmarkIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.tsx"],"sourcesContent":["const CheckmarkIcon = ({\n isConnected,\n size = \"1rem\",\n ...props\n}: {\n isConnected: boolean;\n size?: string;\n}) => (\n <svg\n height={size}\n width={size}\n role=\"img\"\n viewBox=\"0 0 14 15\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M11.3751 3.9996L5.25006 10.9996L2.62506 8.3746\"\n stroke={isConnected ? \"#5469D4\" : \"#A5ACB8\"}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport default CheckmarkIcon;\n"],"names":["CheckmarkIcon","isConnected","size","props","React"],"mappings":"qGAAMA,EAAgBA,CAAC,CACrBC,YAAAA,EACAC,KAAAA,EAAO,OACP,GAAGC,CAIL,IACGC,EAAAA,QAAA,cAAA,MAAA,CACC,OAAQF,EACR,MAAOA,EACP,KAAK,MACL,QAAQ,YACR,KAAK,OACL,MAAM,6BACN,GAAIC,CAEJ,EAAAC,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,iDACF,OAAQH,EAAc,UAAY,UAClC,YAAY,MACZ,cAAc,QACd,eAAe,QAAO,CAE1B"}
1
+ {"version":3,"file":"CheckmarkIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/CheckmarkIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nexport interface CheckmarkIconProps {\n isConnected: boolean;\n size?: string;\n}\n\nconst CheckmarkIcon: FunctionComponent<CheckmarkIconProps> = ({\n isConnected,\n size = \"1rem\",\n}) => (\n <svg\n height={size}\n width={size}\n role=\"img\"\n viewBox=\"0 0 14 15\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.3751 3.9996L5.25006 10.9996L2.62506 8.3746\"\n stroke={isConnected ? \"#5469D4\" : \"#A5ACB8\"}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport default CheckmarkIcon;\n"],"names":["CheckmarkIcon","isConnected","size","React"],"mappings":"qGAOMA,EAAuDA,CAAC,CAC5DC,YAAAA,EACAC,KAAAA,EAAO,MACT,IACGC,EAAAA,QAAA,cAAA,MAAA,CACC,OAAQD,EACR,MAAOA,EACP,KAAK,MACL,QAAQ,YACR,KAAK,OACL,MAAM,4BAAA,EAELC,EAAAA,QAAA,cAAA,OAAA,CACC,EAAE,iDACF,OAAQF,EAAc,UAAY,UAClC,YAAY,MACZ,cAAc,QACd,eAAe,QAAO,CAE1B"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("react"),o=L=>L&&typeof L=="object"&&"default"in L?L:{default:L},t=o(e),l=()=>t.default.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.default.createElement("path",{d:"M8.53037 7.46917L7.99988 7.99967L8.53054 8.53L11.501 11.4986L11.5014 11.4995L11.501 11.5004L11.5001 11.5008L11.4992 11.5004L8.53041 8.53167L8.00008 8.00134L7.46975 8.53167L4.501 11.5004L4.50008 11.5008L4.49916 11.5004L4.49878 11.4995L4.49916 11.4986L7.46791 8.52983L7.99824 7.9995L7.46791 7.46917L4.49916 4.50042L4.49878 4.4995L4.49916 4.49858L4.50008 4.4982L4.501 4.49858L7.46975 7.46733L8.00008 7.99766L8.53041 7.46733L11.4987 4.49905L11.4991 4.49886L11.4996 4.49905L11.4998 4.4995L11.4996 4.49995L11.4991 4.50042L8.53037 7.46917Z",fill:"#697386",stroke:"#697386",strokeWidth:"1.5"}));module.exports=l;
1
+ "use strict";const o=require("react"),l=L=>L&&typeof L=="object"&&"default"in L?L:{default:L},t=l(o),s=({width:L="16px",height:e="16px"})=>t.default.createElement("svg",{width:L,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.default.createElement("path",{d:"M8.53037 7.46917L7.99988 7.99967L8.53054 8.53L11.501 11.4986L11.5014 11.4995L11.501 11.5004L11.5001 11.5008L11.4992 11.5004L8.53041 8.53167L8.00008 8.00134L7.46975 8.53167L4.501 11.5004L4.50008 11.5008L4.49916 11.5004L4.49878 11.4995L4.49916 11.4986L7.46791 8.52983L7.99824 7.9995L7.46791 7.46917L4.49916 4.50042L4.49878 4.4995L4.49916 4.49858L4.50008 4.4982L4.501 4.49858L7.46975 7.46733L8.00008 7.99766L8.53041 7.46733L11.4987 4.49905L11.4991 4.49886L11.4996 4.49905L11.4998 4.4995L11.4996 4.49995L11.4991 4.50042L8.53037 7.46917Z",fill:"#697386",stroke:"#697386",strokeWidth:"1.5"}));module.exports=s;
2
2
  //# sourceMappingURL=CloseIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloseIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.tsx"],"sourcesContent":["const CloseIcon = () => (\n\t<svg\n\t\twidth=\"16\"\n\t\theight=\"16\"\n\t\tviewBox=\"0 0 16 16\"\n\t\tfill=\"none\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t>\n\t\t<path\n\t\t\td=\"M8.53037 7.46917L7.99988 7.99967L8.53054 8.53L11.501 11.4986L11.5014 11.4995L11.501 11.5004L11.5001 11.5008L11.4992 11.5004L8.53041 8.53167L8.00008 8.00134L7.46975 8.53167L4.501 11.5004L4.50008 11.5008L4.49916 11.5004L4.49878 11.4995L4.49916 11.4986L7.46791 8.52983L7.99824 7.9995L7.46791 7.46917L4.49916 4.50042L4.49878 4.4995L4.49916 4.49858L4.50008 4.4982L4.501 4.49858L7.46975 7.46733L8.00008 7.99766L8.53041 7.46733L11.4987 4.49905L11.4991 4.49886L11.4996 4.49905L11.4998 4.4995L11.4996 4.49995L11.4991 4.50042L8.53037 7.46917Z\"\n\t\t\tfill=\"#697386\"\n\t\t\tstroke=\"#697386\"\n\t\t\tstrokeWidth=\"1.5\"\n\t\t/>\n\t</svg>\n);\n\nexport default CloseIcon;\n"],"names":["CloseIcon","React"],"mappings":"qGAAMA,EAAYA,IACjBC,EAAA,QAAA,cAAC,MACA,CAAA,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,4BAEN,EAAAA,EAAAA,QAAA,cAAC,OACA,CAAA,EAAE,uhBACF,KAAK,UACL,OAAO,UACP,YAAY,KAAA,CAAK,CAEnB"}
1
+ {"version":3,"file":"CloseIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/CloseIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nexport interface CloseIconProps {\n width?: string;\n height?: string;\n}\n\nconst CloseIcon: FunctionComponent<CloseIconProps> = ({\n width = \"16px\",\n height = \"16px\",\n}) => (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.53037 7.46917L7.99988 7.99967L8.53054 8.53L11.501 11.4986L11.5014 11.4995L11.501 11.5004L11.5001 11.5008L11.4992 11.5004L8.53041 8.53167L8.00008 8.00134L7.46975 8.53167L4.501 11.5004L4.50008 11.5008L4.49916 11.5004L4.49878 11.4995L4.49916 11.4986L7.46791 8.52983L7.99824 7.9995L7.46791 7.46917L4.49916 4.50042L4.49878 4.4995L4.49916 4.49858L4.50008 4.4982L4.501 4.49858L7.46975 7.46733L8.00008 7.99766L8.53041 7.46733L11.4987 4.49905L11.4991 4.49886L11.4996 4.49905L11.4998 4.4995L11.4996 4.49995L11.4991 4.50042L8.53037 7.46917Z\"\n fill=\"#697386\"\n stroke=\"#697386\"\n strokeWidth=\"1.5\"\n />\n </svg>\n);\n\nexport default CloseIcon;\n"],"names":["CloseIcon","width","height","React"],"mappings":"qGAOMA,EAA+CA,CAAC,CACpDC,MAAAA,EAAQ,OACRC,OAAAA,EAAS,MACX,IACEC,UAAA,cAAC,OACC,MAAAF,EACA,OAAAC,EACA,QAAQ,YACR,KAAK,OACL,MAAM,4BAAA,0BAEL,OACC,CAAA,EAAE,uhBACF,KAAK,UACL,OAAO,UACP,YAAY,MAAK,CAErB"}
@@ -1 +1 @@
1
- {"version":3,"file":"HashtagIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.tsx"],"sourcesContent":["const HashtagIcon = () => (\n <svg\n width=\"12\"\n height=\"13\"\n viewBox=\"0 0 12 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.7904 2.22197C5.81364 2.06746 5.77568 1.90997 5.68461 1.78301C5.59353 1.65605 5.45652 1.56962 5.30271 1.54211C5.1489 1.5146 4.99043 1.54817 4.86099 1.6357C4.73155 1.72322 4.64136 1.85778 4.6096 2.01077L4.2688 3.91637H2.2C2.04087 3.91637 1.88826 3.97958 1.77574 4.0921C1.66321 4.20463 1.6 4.35724 1.6 4.51637C1.6 4.6755 1.66321 4.82811 1.77574 4.94063C1.88826 5.05315 2.04087 5.11637 2.2 5.11637H4.0546L3.5728 7.81637H1.6C1.44087 7.81637 1.28826 7.87958 1.17574 7.9921C1.06321 8.10463 1 8.25724 1 8.41637C1 8.5755 1.06321 8.72811 1.17574 8.84063C1.28826 8.95315 1.44087 9.01637 1.6 9.01637H3.358L3.1096 10.4108C3.08636 10.5653 3.12432 10.7228 3.21539 10.8497C3.30647 10.9767 3.44348 11.0631 3.59729 11.0906C3.7511 11.1181 3.90957 11.0846 4.03901 10.997C4.16845 10.9095 4.25864 10.775 4.2904 10.622L4.5772 9.01637H6.2086L5.9596 10.4108C5.9433 10.4893 5.9429 10.5703 5.95844 10.649C5.97397 10.7276 6.00511 10.8024 6.05003 10.8688C6.09495 10.9352 6.15273 10.992 6.21996 11.0357C6.28718 11.0794 6.36249 11.1092 6.44143 11.1234C6.52037 11.1375 6.60134 11.1356 6.67955 11.1179C6.75777 11.1002 6.83164 11.067 6.8968 11.0203C6.96196 10.9735 7.01709 10.9142 7.05893 10.8458C7.10077 10.7774 7.12847 10.7013 7.1404 10.622L7.4272 9.01637H9.4C9.55913 9.01637 9.71174 8.95315 9.82426 8.84063C9.93679 8.72811 10 8.5755 10 8.41637C10 8.25724 9.93679 8.10463 9.82426 7.9921C9.71174 7.87958 9.55913 7.81637 9.4 7.81637H7.642L8.1238 5.11637H10C10.1591 5.11637 10.3117 5.05315 10.4243 4.94063C10.5368 4.82811 10.6 4.6755 10.6 4.51637C10.6 4.35724 10.5368 4.20463 10.4243 4.0921C10.3117 3.97958 10.1591 3.91637 10 3.91637H8.338L8.6404 2.22197C8.6567 2.14345 8.6571 2.06246 8.64157 1.98379C8.62603 1.90511 8.59489 1.83035 8.54997 1.76392C8.50505 1.69749 8.44727 1.64073 8.38004 1.59701C8.31282 1.55329 8.23751 1.52349 8.15857 1.50937C8.07963 1.49525 7.99866 1.4971 7.92045 1.51481C7.84223 1.53252 7.76836 1.56572 7.7032 1.61246C7.63804 1.65921 7.58291 1.71854 7.54107 1.78695C7.49923 1.85536 7.47153 1.93147 7.4596 2.01077L7.1188 3.91637H5.488L5.7904 2.22197ZM6.4228 7.81637L6.904 5.11637H5.2738L4.7914 7.81637H6.4228Z\"\n fill=\"#3C4257\"\n />\n </svg>\n);\n\nexport default HashtagIcon;\n"],"names":["HashtagIcon","React"],"mappings":"qGAAMA,EAAcA,IAClBC,EAAA,QAAA,cAAC,MACC,CAAA,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,4BAEN,EAAAA,EAAAA,QAAA,cAAC,OACC,CAAA,SAAS,UACT,SAAS,UACT,EAAE,ojEACF,KAAK,SAAA,CAAS,CAElB"}
1
+ {"version":3,"file":"HashtagIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/HashtagIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nconst HashtagIcon: FunctionComponent = () => (\n <svg\n width=\"12\"\n height=\"13\"\n viewBox=\"0 0 12 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.7904 2.22197C5.81364 2.06746 5.77568 1.90997 5.68461 1.78301C5.59353 1.65605 5.45652 1.56962 5.30271 1.54211C5.1489 1.5146 4.99043 1.54817 4.86099 1.6357C4.73155 1.72322 4.64136 1.85778 4.6096 2.01077L4.2688 3.91637H2.2C2.04087 3.91637 1.88826 3.97958 1.77574 4.0921C1.66321 4.20463 1.6 4.35724 1.6 4.51637C1.6 4.6755 1.66321 4.82811 1.77574 4.94063C1.88826 5.05315 2.04087 5.11637 2.2 5.11637H4.0546L3.5728 7.81637H1.6C1.44087 7.81637 1.28826 7.87958 1.17574 7.9921C1.06321 8.10463 1 8.25724 1 8.41637C1 8.5755 1.06321 8.72811 1.17574 8.84063C1.28826 8.95315 1.44087 9.01637 1.6 9.01637H3.358L3.1096 10.4108C3.08636 10.5653 3.12432 10.7228 3.21539 10.8497C3.30647 10.9767 3.44348 11.0631 3.59729 11.0906C3.7511 11.1181 3.90957 11.0846 4.03901 10.997C4.16845 10.9095 4.25864 10.775 4.2904 10.622L4.5772 9.01637H6.2086L5.9596 10.4108C5.9433 10.4893 5.9429 10.5703 5.95844 10.649C5.97397 10.7276 6.00511 10.8024 6.05003 10.8688C6.09495 10.9352 6.15273 10.992 6.21996 11.0357C6.28718 11.0794 6.36249 11.1092 6.44143 11.1234C6.52037 11.1375 6.60134 11.1356 6.67955 11.1179C6.75777 11.1002 6.83164 11.067 6.8968 11.0203C6.96196 10.9735 7.01709 10.9142 7.05893 10.8458C7.10077 10.7774 7.12847 10.7013 7.1404 10.622L7.4272 9.01637H9.4C9.55913 9.01637 9.71174 8.95315 9.82426 8.84063C9.93679 8.72811 10 8.5755 10 8.41637C10 8.25724 9.93679 8.10463 9.82426 7.9921C9.71174 7.87958 9.55913 7.81637 9.4 7.81637H7.642L8.1238 5.11637H10C10.1591 5.11637 10.3117 5.05315 10.4243 4.94063C10.5368 4.82811 10.6 4.6755 10.6 4.51637C10.6 4.35724 10.5368 4.20463 10.4243 4.0921C10.3117 3.97958 10.1591 3.91637 10 3.91637H8.338L8.6404 2.22197C8.6567 2.14345 8.6571 2.06246 8.64157 1.98379C8.62603 1.90511 8.59489 1.83035 8.54997 1.76392C8.50505 1.69749 8.44727 1.64073 8.38004 1.59701C8.31282 1.55329 8.23751 1.52349 8.15857 1.50937C8.07963 1.49525 7.99866 1.4971 7.92045 1.51481C7.84223 1.53252 7.76836 1.56572 7.7032 1.61246C7.63804 1.65921 7.58291 1.71854 7.54107 1.78695C7.49923 1.85536 7.47153 1.93147 7.4596 2.01077L7.1188 3.91637H5.488L5.7904 2.22197ZM6.4228 7.81637L6.904 5.11637H5.2738L4.7914 7.81637H6.4228Z\"\n fill=\"#3C4257\"\n />\n </svg>\n);\n\nexport default HashtagIcon;\n"],"names":["HashtagIcon","React"],"mappings":"qGAEMA,EAAiCA,IACrCC,EAAA,QAAA,cAAC,MACC,CAAA,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,4BAEN,EAAAA,EAAAA,QAAA,cAAC,OACC,CAAA,SAAS,UACT,SAAS,UACT,EAAE,ojEACF,KAAK,SAAA,CAAS,CAElB"}
@@ -1 +1 @@
1
- {"version":3,"file":"InfoIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.tsx"],"sourcesContent":["const InfoIcon = () => (\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6.78125 1.75137C4.00285 1.75137 1.75 4.00422 1.75 6.78262C1.75 9.56102 4.00285 11.8139 6.78125 11.8139C9.55965 11.8139 11.8125 9.56102 11.8125 6.78262C11.8125 4.00422 9.55965 1.75137 6.78125 1.75137Z\"\n stroke=\"#697386\"\n strokeMiterlimit=\"10\"\n />\n <path\n d=\"M6.01562 6.01605H6.89062V9.18793\"\n stroke=\"#697386\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M5.68738 9.29697H8.09363\"\n stroke=\"#697386\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n />\n <path\n d=\"M6.78113 3.55554C6.64052 3.55554 6.50307 3.59724 6.38615 3.67536C6.26924 3.75348 6.17812 3.86451 6.12431 3.99442C6.0705 4.12432 6.05642 4.26727 6.08385 4.40518C6.11128 4.54308 6.17899 4.66976 6.27842 4.76919C6.37785 4.86861 6.50452 4.93632 6.64243 4.96376C6.78034 4.99119 6.92329 4.97711 7.05319 4.9233C7.1831 4.86949 7.29413 4.77837 7.37225 4.66146C7.45037 4.54454 7.49207 4.40709 7.49207 4.26648C7.49207 4.07793 7.41716 3.8971 7.28384 3.76377C7.15051 3.63044 6.96968 3.55554 6.78113 3.55554Z\"\n fill=\"#697386\"\n />\n </svg>\n);\n\nexport default InfoIcon;\n"],"names":["InfoIcon","React"],"mappings":"qGAAMA,EAAWA,IACdC,EAAA,QAAA,cAAA,MAAA,CACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,4BAAA,EAELA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,2MACF,OAAO,UACP,iBAAiB,IAAI,CAAA,EAEtBA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,mCACF,OAAO,UACP,cAAc,QACd,eAAe,OAAO,CAAA,EAExBA,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,2BACF,OAAO,UACP,iBAAiB,KACjB,cAAc,OAAO,CAAA,EAEvBA,EAAAA,QAAA,cAAC,QACC,EAAE,gfACF,KAAK,SAAA,CAAS,CAElB"}
1
+ {"version":3,"file":"InfoIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/InfoIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nconst InfoIcon: FunctionComponent = () => (\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6.78125 1.75137C4.00285 1.75137 1.75 4.00422 1.75 6.78262C1.75 9.56102 4.00285 11.8139 6.78125 11.8139C9.55965 11.8139 11.8125 9.56102 11.8125 6.78262C11.8125 4.00422 9.55965 1.75137 6.78125 1.75137Z\"\n stroke=\"#697386\"\n strokeMiterlimit=\"10\"\n />\n <path\n d=\"M6.01562 6.01605H6.89062V9.18793\"\n stroke=\"#697386\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M5.68738 9.29697H8.09363\"\n stroke=\"#697386\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n />\n <path\n d=\"M6.78113 3.55554C6.64052 3.55554 6.50307 3.59724 6.38615 3.67536C6.26924 3.75348 6.17812 3.86451 6.12431 3.99442C6.0705 4.12432 6.05642 4.26727 6.08385 4.40518C6.11128 4.54308 6.17899 4.66976 6.27842 4.76919C6.37785 4.86861 6.50452 4.93632 6.64243 4.96376C6.78034 4.99119 6.92329 4.97711 7.05319 4.9233C7.1831 4.86949 7.29413 4.77837 7.37225 4.66146C7.45037 4.54454 7.49207 4.40709 7.49207 4.26648C7.49207 4.07793 7.41716 3.8971 7.28384 3.76377C7.15051 3.63044 6.96968 3.55554 6.78113 3.55554Z\"\n fill=\"#697386\"\n />\n </svg>\n);\n\nexport default InfoIcon;\n"],"names":["InfoIcon","React"],"mappings":"qGAEMA,EAA8BA,IACjCC,EAAA,QAAA,cAAA,MAAA,CACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,4BAAA,EAELA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,2MACF,OAAO,UACP,iBAAiB,IAAI,CAAA,EAEtBA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,mCACF,OAAO,UACP,cAAc,QACd,eAAe,OAAO,CAAA,EAExBA,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,2BACF,OAAO,UACP,iBAAiB,KACjB,cAAc,OAAO,CAAA,EAEvBA,EAAAA,QAAA,cAAC,QACC,EAAE,gfACF,KAAK,SAAA,CAAS,CAElB"}
@@ -1 +1 @@
1
- {"version":3,"file":"LockIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/LockIcon.tsx"],"sourcesContent":["const LockIcon = () => (\n <svg\n width=\"12\"\n height=\"13\"\n viewBox=\"0 0 12 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_251_243)\">\n <path\n d=\"M8.62497 4.99975H8.24997V3.12476C8.24997 2.52802 8.01292 1.95572 7.59096 1.53377C7.169 1.11181 6.59671 0.874756 5.99997 0.874756C5.40323 0.874756 4.83094 1.11181 4.40898 1.53377C3.98702 1.95572 3.74997 2.52802 3.74997 3.12476V4.99975H3.37497C2.97728 5.00019 2.596 5.15836 2.31479 5.43957C2.03358 5.72078 1.8754 6.10206 1.87497 6.49975V10.6248C1.8754 11.0224 2.03358 11.4037 2.31479 11.6849C2.596 11.9661 2.97728 12.1243 3.37497 12.1248H8.62497C9.02266 12.1243 9.40394 11.9661 9.68515 11.6849C9.96636 11.4037 10.1245 11.0224 10.125 10.6248V6.49975C10.1245 6.10206 9.96636 5.72078 9.68515 5.43957C9.40394 5.15836 9.02266 5.00019 8.62497 4.99975ZM7.49997 4.99975H4.49997V3.12476C4.49997 2.72693 4.658 2.3454 4.93931 2.0641C5.22061 1.78279 5.60214 1.62476 5.99997 1.62476C6.39779 1.62476 6.77932 1.78279 7.06063 2.0641C7.34193 2.3454 7.49997 2.72693 7.49997 3.12476V4.99975Z\"\n fill=\"#3C4257\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_251_243\">\n <rect\n width=\"12\"\n height=\"12\"\n fill=\"white\"\n transform=\"translate(0 0.5)\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport default LockIcon;\n"],"names":["LockIcon","React"],"mappings":"qGAAMA,EAAWA,IACdC,EAAAA,QAAA,cAAA,MAAA,CACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,8BAELA,EAAAA,QAAA,cAAA,IAAA,CAAE,SAAS,qBACV,EAAAA,EAAAA,QAAA,cAAC,QACC,EAAE,y2BACF,KAAK,SAAS,CAAA,CAElB,EACCA,EAAAA,QAAA,cAAA,OAAA,6BACE,WAAS,CAAA,GAAG,iBACVA,EAAA,QAAA,cAAA,OAAA,CACC,MAAM,KACN,OAAO,KACP,KAAK,QACL,UAAU,kBAAkB,CAAA,CAEhC,CACF,CACF"}
1
+ {"version":3,"file":"LockIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/LockIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nconst LockIcon: FunctionComponent = () => (\n <svg\n width=\"12\"\n height=\"13\"\n viewBox=\"0 0 12 13\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_251_243)\">\n <path\n d=\"M8.62497 4.99975H8.24997V3.12476C8.24997 2.52802 8.01292 1.95572 7.59096 1.53377C7.169 1.11181 6.59671 0.874756 5.99997 0.874756C5.40323 0.874756 4.83094 1.11181 4.40898 1.53377C3.98702 1.95572 3.74997 2.52802 3.74997 3.12476V4.99975H3.37497C2.97728 5.00019 2.596 5.15836 2.31479 5.43957C2.03358 5.72078 1.8754 6.10206 1.87497 6.49975V10.6248C1.8754 11.0224 2.03358 11.4037 2.31479 11.6849C2.596 11.9661 2.97728 12.1243 3.37497 12.1248H8.62497C9.02266 12.1243 9.40394 11.9661 9.68515 11.6849C9.96636 11.4037 10.1245 11.0224 10.125 10.6248V6.49975C10.1245 6.10206 9.96636 5.72078 9.68515 5.43957C9.40394 5.15836 9.02266 5.00019 8.62497 4.99975ZM7.49997 4.99975H4.49997V3.12476C4.49997 2.72693 4.658 2.3454 4.93931 2.0641C5.22061 1.78279 5.60214 1.62476 5.99997 1.62476C6.39779 1.62476 6.77932 1.78279 7.06063 2.0641C7.34193 2.3454 7.49997 2.72693 7.49997 3.12476V4.99975Z\"\n fill=\"#3C4257\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_251_243\">\n <rect\n width=\"12\"\n height=\"12\"\n fill=\"white\"\n transform=\"translate(0 0.5)\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport default LockIcon;\n"],"names":["LockIcon","React"],"mappings":"qGAEMA,EAA8BA,IACjCC,EAAAA,QAAA,cAAA,MAAA,CACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,KAAK,OACL,MAAM,8BAELA,EAAAA,QAAA,cAAA,IAAA,CAAE,SAAS,qBACV,EAAAA,EAAAA,QAAA,cAAC,QACC,EAAE,y2BACF,KAAK,SAAS,CAAA,CAElB,EACCA,EAAAA,QAAA,cAAA,OAAA,6BACE,WAAS,CAAA,GAAG,iBACVA,EAAA,QAAA,cAAA,OAAA,CACC,MAAM,KACN,OAAO,KACP,KAAK,QACL,UAAU,kBAAkB,CAAA,CAEhC,CACF,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"SearchIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.tsx"],"sourcesContent":["const SearchIcon = () => (\n <svg\n width=\"14\"\n height=\"15\"\n viewBox=\"0 0 14 15\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12.4881 12.0235L9.91536 9.45071C10.5348 8.62611 10.8691 7.62242 10.868 6.5911C10.868 3.9568 8.72481 1.8136 6.09052 1.8136C3.45622 1.8136 1.31302 3.9568 1.31302 6.5911C1.31302 9.22539 3.45622 11.3686 6.09052 11.3686C7.12184 11.3697 8.12553 11.0353 8.95013 10.4159L11.5229 12.9887C11.6531 13.1051 11.823 13.1673 11.9976 13.1624C12.1722 13.1575 12.3383 13.086 12.4619 12.9624C12.5854 12.8389 12.6569 12.6728 12.6618 12.4982C12.6667 12.3236 12.6046 12.1537 12.4881 12.0235ZM2.67802 6.5911C2.67802 5.91617 2.87816 5.2564 3.25313 4.69521C3.6281 4.13403 4.16106 3.69664 4.78461 3.43836C5.40816 3.18008 6.0943 3.1125 6.75626 3.24417C7.41822 3.37584 8.02627 3.70085 8.50352 4.1781C8.98077 4.65534 9.30578 5.26339 9.43745 5.92535C9.56912 6.58731 9.50154 7.27345 9.24326 7.897C8.98497 8.52056 8.54758 9.05352 7.9864 9.42849C7.42522 9.80346 6.76545 10.0036 6.09052 10.0036C5.1858 10.0025 4.31845 9.64263 3.67872 9.0029C3.03898 8.36317 2.6791 7.49582 2.67802 6.5911Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default SearchIcon\n"],"names":["SearchIcon","React"],"mappings":"qGAAMA,EAAaA,IAChBC,UAAA,cAAC,OACA,MAAM,KACN,OAAO,KACP,QAAQ,YACR,MAAM,8BAELA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,67BACF,KAAK,eAAc,CAEvB"}
1
+ {"version":3,"file":"SearchIcon.js","sources":["../../../../../../../src/modules/slack/components/SlackChannelCombobox/icons/SearchIcon.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\nconst SearchIcon: FunctionComponent = () => (\n <svg\n width=\"14\"\n height=\"15\"\n viewBox=\"0 0 14 15\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12.4881 12.0235L9.91536 9.45071C10.5348 8.62611 10.8691 7.62242 10.868 6.5911C10.868 3.9568 8.72481 1.8136 6.09052 1.8136C3.45622 1.8136 1.31302 3.9568 1.31302 6.5911C1.31302 9.22539 3.45622 11.3686 6.09052 11.3686C7.12184 11.3697 8.12553 11.0353 8.95013 10.4159L11.5229 12.9887C11.6531 13.1051 11.823 13.1673 11.9976 13.1624C12.1722 13.1575 12.3383 13.086 12.4619 12.9624C12.5854 12.8389 12.6569 12.6728 12.6618 12.4982C12.6667 12.3236 12.6046 12.1537 12.4881 12.0235ZM2.67802 6.5911C2.67802 5.91617 2.87816 5.2564 3.25313 4.69521C3.6281 4.13403 4.16106 3.69664 4.78461 3.43836C5.40816 3.18008 6.0943 3.1125 6.75626 3.24417C7.41822 3.37584 8.02627 3.70085 8.50352 4.1781C8.98077 4.65534 9.30578 5.26339 9.43745 5.92535C9.56912 6.58731 9.50154 7.27345 9.24326 7.897C8.98497 8.52056 8.54758 9.05352 7.9864 9.42849C7.42522 9.80346 6.76545 10.0036 6.09052 10.0036C5.1858 10.0025 4.31845 9.64263 3.67872 9.0029C3.03898 8.36317 2.6791 7.49582 2.67802 6.5911Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default SearchIcon;\n"],"names":["SearchIcon","React"],"mappings":"qGAEMA,EAAgCA,IACpCC,UAAA,cAAC,OACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,MAAM,8BAELA,EAAA,QAAA,cAAA,OAAA,CACC,EAAE,67BACF,KAAK,eAAc,CAEvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackIcon.js","sources":["../../../../../../src/modules/slack/components/SlackIcon/SlackIcon.tsx"],"sourcesContent":["export const SlackIcon = ({\n height,\n width,\n}: {\n height: string;\n width: string;\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":"wKAAaA,EAAYA,CAAC,CACxBC,OAAAA,EACAC,MAAAA,CAIF,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,EAAAA,QAAA,cAAA,OAAA,CACC,EAAE,2LACF,KAAK,SACN,CAAA,EACAA,EAAAA,QAAA,cAAA,OAAA,CACC,EAAE,4LACF,KAAK,SACN,CAAA,EACDA,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,+LACF,KAAK,SACN,CAAA,CACH"}
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,EAAAA,QAAA,cAAA,OAAA,CACC,EAAE,2LACF,KAAK,SACN,CAAA,EACAA,EAAAA,QAAA,cAAA,OAAA,CACC,EAAE,4LACF,KAAK,SACN,CAAA,EACDA,EAAAA,QAAA,cAAC,OACC,CAAA,EAAE,+LACF,KAAK,SACN,CAAA,CACH"}
@@ -1,5 +1,5 @@
1
- import e from "react";
2
1
  import { useKnockFeed as c } from "@knocklabs/react-core";
2
+ import e from "react";
3
3
  import { ButtonSpinner as b } from "./ButtonSpinner.mjs";
4
4
 
5
5
  const _ = ({
@@ -1 +1 @@
1
- {"version":3,"file":"Button.mjs","sources":["../../../../../../src/modules/core/components/Button/Button.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport { useKnockFeed } from \"@knocklabs/react-core\";\nimport { ButtonSpinner } from \"./ButtonSpinner\";\n\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: React.FC<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":";;;;AAeO,MAAMA,IAAmDA,CAAC;AAAA,EAC/DC,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,cACC,eAAcT,CAAQ,IACvBI,IAAc,2BAA2B,IACzCF,IAAY,2BAA2B,IACtC,eAAcK,CAAU,EAAC,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,SAAA,GAEJD,KAAcU,gBAAAA,EAAA,cAAAC,GAAA,EAAc,UAAU,CAAC,CAACZ,GAAe,GACvDC,IAAYS,IAAyBL,CACxC;AAEJ;"}
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,cACC,eAAcT,CAAQ,IACvBI,IAAc,2BAA2B,IACzCF,IAAY,2BAA2B,IACtC,eAAcK,CAAU,EAAC,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,SAAA,GAEJD,KAAcU,gBAAAA,EAAA,cAAAC,GAAA,EAAc,UAAU,CAAC,CAACZ,GAAe,GACvDC,IAAYS,IAAyBL,CACxC;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.mjs","sources":["../../../../../../src/modules/core/components/Button/ButtonGroup.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\n\nimport \"./styles.css\";\n\nexport const ButtonGroup: React.FC<PropsWithChildren> = ({ children }) => (\n <div className=\"rnf-button-group\">{children}</div>\n);\n"],"names":["ButtonGroup","children","React"],"mappings":";;AAIO,MAAMA,IAA2CA,CAAC;AAAA,EAAEC,UAAAA;AAAS,MACjEC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,mBAAA,GAAoBD,CAAS;"}
1
+ {"version":3,"file":"ButtonGroup.mjs","sources":["../../../../../../src/modules/core/components/Button/ButtonGroup.tsx"],"sourcesContent":["import { FunctionComponent, PropsWithChildren } from \"react\";\n\nimport \"./styles.css\";\n\nexport const ButtonGroup: FunctionComponent<PropsWithChildren> = ({\n children,\n}) => <div className=\"rnf-button-group\">{children}</div>;\n"],"names":["ButtonGroup","children","React"],"mappings":";;AAIO,MAAMA,IAAoDA,CAAC;AAAA,EAChEC,UAAAA;AACF,MAAOC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,mBAAA,GAAoBD,CAAS;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonSpinner.mjs","sources":["../../../../../../src/modules/core/components/Button/ButtonSpinner.tsx"],"sourcesContent":["import React from \"react\";\nimport { Spinner } from \"../Spinner\";\n\nimport \"./styles.css\";\n\ntype ButtonSpinnerProps = {\n hasLabel: boolean;\n};\n\nexport const ButtonSpinner: React.FC<ButtonSpinnerProps> = ({ hasLabel }) => (\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":";;;AASO,MAAMA,IAA8CA,CAAC;AAAA,EAAEC,UAAAA;AAAS,MACrEC,gBAAAA,EAAA,cAAC,OACC,EAAA,WAAY,0CACVD,IAAW,eAAe,eAC3B,GAAA,GAEAC,gBAAAA,EAAA,cAAAC,GAAA,IAAO,CACV;"}
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,WAAY,0CACVD,IAAW,eAAe,eAC3B,GAAA,GAEAC,gBAAAA,EAAA,cAAAC,GAAA,IAAO,CACV;"}
@@ -1,10 +1,8 @@
1
1
  import e from "react";
2
- function n({
2
+ const n = ({
3
3
  width: r = 24,
4
4
  height: t = 24
5
- }) {
6
- return /* @__PURE__ */ e.createElement("svg", { width: r, viewBox: "0 0 24 24", fill: "none", height: t }, /* @__PURE__ */ e.createElement("path", { d: "M20.0474 16.4728C18.8436 14.9996 17.9938 14.2496 17.9938 10.1879C17.9938 6.46832 16.0944 5.14317 14.5311 4.49957C14.3235 4.41426 14.128 4.21832 14.0647 4.00504C13.7905 3.07176 13.0217 2.24957 11.9999 2.24957C10.978 2.24957 10.2088 3.07223 9.93736 4.00598C9.87408 4.2216 9.67861 4.41426 9.47096 4.49957C7.9058 5.1441 6.0083 6.46457 6.0083 10.1879C6.00596 14.2496 5.15611 14.9996 3.95237 16.4728C3.45362 17.0832 3.89049 17.9996 4.76283 17.9996H19.2416C20.1092 17.9996 20.5433 17.0803 20.0474 16.4728Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ e.createElement("path", { d: "M14.9999 17.9988V18.7488C14.9999 19.5445 14.6838 20.3075 14.1212 20.8701C13.5586 21.4327 12.7955 21.7488 11.9999 21.7488C11.2042 21.7488 10.4412 21.4327 9.87856 20.8701C9.31595 20.3075 8.99988 19.5445 8.99988 18.7488V17.9988", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }));
7
- }
5
+ }) => /* @__PURE__ */ e.createElement("svg", { width: r, viewBox: "0 0 24 24", fill: "none", height: t }, /* @__PURE__ */ e.createElement("path", { d: "M20.0474 16.4728C18.8436 14.9996 17.9938 14.2496 17.9938 10.1879C17.9938 6.46832 16.0944 5.14317 14.5311 4.49957C14.3235 4.41426 14.128 4.21832 14.0647 4.00504C13.7905 3.07176 13.0217 2.24957 11.9999 2.24957C10.978 2.24957 10.2088 3.07223 9.93736 4.00598C9.87408 4.2216 9.67861 4.41426 9.47096 4.49957C7.9058 5.1441 6.0083 6.46457 6.0083 10.1879C6.00596 14.2496 5.15611 14.9996 3.95237 16.4728C3.45362 17.0832 3.89049 17.9996 4.76283 17.9996H19.2416C20.1092 17.9996 20.5433 17.0803 20.0474 16.4728Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ e.createElement("path", { d: "M14.9999 17.9988V18.7488C14.9999 19.5445 14.6838 20.3075 14.1212 20.8701C13.5586 21.4327 12.7955 21.7488 11.9999 21.7488C11.2042 21.7488 10.4412 21.4327 9.87856 20.8701C9.31595 20.3075 8.99988 19.5445 8.99988 18.7488V17.9988", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }));
8
6
  export {
9
7
  n as BellIcon
10
8
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Bell.mjs","sources":["../../../../../../src/modules/core/components/Icons/Bell.tsx"],"sourcesContent":["function BellIcon({ width = 24, height = 24 }) {\n return (\n <svg width={width} viewBox=\"0 0 24 24\" fill=\"none\" height={height}>\n <path\n d=\"M20.0474 16.4728C18.8436 14.9996 17.9938 14.2496 17.9938 10.1879C17.9938 6.46832 16.0944 5.14317 14.5311 4.49957C14.3235 4.41426 14.128 4.21832 14.0647 4.00504C13.7905 3.07176 13.0217 2.24957 11.9999 2.24957C10.978 2.24957 10.2088 3.07223 9.93736 4.00598C9.87408 4.2216 9.67861 4.41426 9.47096 4.49957C7.9058 5.1441 6.0083 6.46457 6.0083 10.1879C6.00596 14.2496 5.15611 14.9996 3.95237 16.4728C3.45362 17.0832 3.89049 17.9996 4.76283 17.9996H19.2416C20.1092 17.9996 20.5433 17.0803 20.0474 16.4728Z\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M14.9999 17.9988V18.7488C14.9999 19.5445 14.6838 20.3075 14.1212 20.8701C13.5586 21.4327 12.7955 21.7488 11.9999 21.7488C11.2042 21.7488 10.4412 21.4327 9.87856 20.8701C9.31595 20.3075 8.99988 19.5445 8.99988 18.7488V17.9988\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\nexport { BellIcon };\n"],"names":["BellIcon","width","height","React"],"mappings":";AAAA,SAASA,EAAS;AAAA,EAAEC,OAAAA,IAAQ;AAAA,EAAIC,QAAAA,IAAS;AAAG,GAAG;AAC7C,SACGC,gBAAAA,EAAA,cAAA,OAAA,EAAI,OAAAF,GAAc,SAAQ,aAAY,MAAK,QAAO,QAAAC,EACjD,GAAAC,gBAAAA,EAAA,cAAC,QACC,EAAA,GAAE,sfACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,QAAO,CAAA,GAExBA,gBAAAA,EAAA,cAAC,UACC,GAAE,oOACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,QAAO,CAAA,CAE1B;AAEJ;"}
1
+ {"version":3,"file":"Bell.mjs","sources":["../../../../../../src/modules/core/components/Icons/Bell.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\ntype BellIconProps = {\n width?: number;\n height?: number;\n};\n\nconst BellIcon: FunctionComponent<BellIconProps> = ({\n width = 24,\n height = 24,\n}) => {\n return (\n <svg width={width} viewBox=\"0 0 24 24\" fill=\"none\" height={height}>\n <path\n d=\"M20.0474 16.4728C18.8436 14.9996 17.9938 14.2496 17.9938 10.1879C17.9938 6.46832 16.0944 5.14317 14.5311 4.49957C14.3235 4.41426 14.128 4.21832 14.0647 4.00504C13.7905 3.07176 13.0217 2.24957 11.9999 2.24957C10.978 2.24957 10.2088 3.07223 9.93736 4.00598C9.87408 4.2216 9.67861 4.41426 9.47096 4.49957C7.9058 5.1441 6.0083 6.46457 6.0083 10.1879C6.00596 14.2496 5.15611 14.9996 3.95237 16.4728C3.45362 17.0832 3.89049 17.9996 4.76283 17.9996H19.2416C20.1092 17.9996 20.5433 17.0803 20.0474 16.4728Z\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M14.9999 17.9988V18.7488C14.9999 19.5445 14.6838 20.3075 14.1212 20.8701C13.5586 21.4327 12.7955 21.7488 11.9999 21.7488C11.2042 21.7488 10.4412 21.4327 9.87856 20.8701C9.31595 20.3075 8.99988 19.5445 8.99988 18.7488V17.9988\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n\nexport { BellIcon };\n"],"names":["BellIcon","width","height","React"],"mappings":";AAOA,MAAMA,IAA6CA,CAAC;AAAA,EAClDC,OAAAA,IAAQ;AAAA,EACRC,QAAAA,IAAS;AACX,MAEKC,gBAAAA,EAAA,cAAA,OAAA,EAAI,OAAAF,GAAc,SAAQ,aAAY,MAAK,QAAO,QAAAC,EACjD,GAAAC,gBAAAA,EAAA,cAAC,QACC,EAAA,GAAE,sfACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,QAAO,CAAA,GAExBA,gBAAAA,EAAA,cAAC,UACC,GAAE,oOACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,QAAO,CAAA,CAE1B;"}
@@ -1,6 +1,9 @@
1
1
  import e from "react";
2
- const r = () => /* @__PURE__ */ e.createElement("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ e.createElement("path", { d: "M14 8.00012C14 4.68762 11.3125 2.00012 7.99997 2.00012C4.68747 2.00012 1.99997 4.68762 1.99997 8.00012C1.99997 11.3126 4.68747 14.0001 7.99997 14.0001C11.3125 14.0001 14 11.3126 14 8.00012Z", stroke: "currentColor", strokeWidth: "1.5", strokeMiterlimit: "10" }), /* @__PURE__ */ e.createElement("path", { d: "M10.9999 5.5004L6.79994 10.5004L4.99994 8.5004", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }));
2
+ const n = ({
3
+ width: t = 16,
4
+ height: r = 16
5
+ }) => /* @__PURE__ */ e.createElement("svg", { width: t, height: r, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ e.createElement("path", { d: "M14 8.00012C14 4.68762 11.3125 2.00012 7.99997 2.00012C4.68747 2.00012 1.99997 4.68762 1.99997 8.00012C1.99997 11.3126 4.68747 14.0001 7.99997 14.0001C11.3125 14.0001 14 11.3126 14 8.00012Z", stroke: "currentColor", strokeWidth: "1.5", strokeMiterlimit: "10" }), /* @__PURE__ */ e.createElement("path", { d: "M10.9999 5.5004L6.79994 10.5004L4.99994 8.5004", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }));
3
6
  export {
4
- r as CheckmarkCircle
7
+ n as CheckmarkCircle
5
8
  };
6
9
  //# sourceMappingURL=CheckmarkCircle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckmarkCircle.mjs","sources":["../../../../../../src/modules/core/components/Icons/CheckmarkCircle.tsx"],"sourcesContent":["const CheckmarkCircle = () => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 8.00012C14 4.68762 11.3125 2.00012 7.99997 2.00012C4.68747 2.00012 1.99997 4.68762 1.99997 8.00012C1.99997 11.3126 4.68747 14.0001 7.99997 14.0001C11.3125 14.0001 14 11.3126 14 8.00012Z\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n />\n <path\n d=\"M10.9999 5.5004L6.79994 10.5004L4.99994 8.5004\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport { CheckmarkCircle };\n"],"names":["CheckmarkCircle","React"],"mappings":";AAAA,MAAMA,IAAkBA,MACtBC,gBAAAA,EAAA,cAAC,OACC,EAAA,OAAM,MACN,QAAO,MACP,SAAQ,aACR,MAAK,QACL,OAAM,6BAEN,GAAAA,gBAAAA,EAAA,cAAC,UACC,GAAE,iMACF,QAAO,gBACP,aAAY,OACZ,kBAAiB,KAAI,CAAA,mCAEtB,QACC,EAAA,GAAE,kDACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,SAAO,CAE1B;"}
1
+ {"version":3,"file":"CheckmarkCircle.mjs","sources":["../../../../../../src/modules/core/components/Icons/CheckmarkCircle.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\ntype CheckmarkCircleProps = {\n width?: number;\n height?: number;\n};\n\nconst CheckmarkCircle: FunctionComponent<CheckmarkCircleProps> = ({\n width = 16,\n height = 16,\n}) => (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 8.00012C14 4.68762 11.3125 2.00012 7.99997 2.00012C4.68747 2.00012 1.99997 4.68762 1.99997 8.00012C1.99997 11.3126 4.68747 14.0001 7.99997 14.0001C11.3125 14.0001 14 11.3126 14 8.00012Z\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n />\n <path\n d=\"M10.9999 5.5004L6.79994 10.5004L4.99994 8.5004\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport { CheckmarkCircle };\n"],"names":["CheckmarkCircle","width","height","React"],"mappings":";AAOA,MAAMA,IAA2DA,CAAC;AAAA,EAChEC,OAAAA,IAAQ;AAAA,EACRC,QAAAA,IAAS;AACX,MACGC,gBAAAA,EAAA,cAAA,OAAA,EACC,OAAAF,GACA,QAAAC,GACA,SAAQ,aACR,MAAK,QACL,OAAM,6BAEN,GAAAC,gBAAAA,EAAA,cAAC,QACC,EAAA,GAAE,iMACF,QAAO,gBACP,aAAY,OACZ,kBAAiB,KAAA,CAAI,GAEvBA,gBAAAA,EAAA,cAAC,UACC,GAAE,kDACF,QAAO,gBACP,aAAY,OACZ,eAAc,SACd,gBAAe,SAAO,CAE1B;"}
@@ -1,6 +1,9 @@
1
1
  import e from "react";
2
- const o = () => /* @__PURE__ */ e.createElement("svg", { width: "8", height: "6", viewBox: "0 0 8 6", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ e.createElement("path", { d: "M1.74994 1.87512L3.99994 4.12512L6.24994 1.87512", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
2
+ const n = ({
3
+ width: o = 8,
4
+ height: t = 6
5
+ }) => /* @__PURE__ */ e.createElement("svg", { width: o, height: t, viewBox: "0 0 8 6", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ e.createElement("path", { d: "M1.74994 1.87512L3.99994 4.12512L6.24994 1.87512", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
3
6
  export {
4
- o as ChevronDown
7
+ n as ChevronDown
5
8
  };
6
9
  //# sourceMappingURL=ChevronDown.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChevronDown.mjs","sources":["../../../../../../src/modules/core/components/Icons/ChevronDown.tsx"],"sourcesContent":["const ChevronDown = () => (\n <svg\n width=\"8\"\n height=\"6\"\n viewBox=\"0 0 8 6\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.74994 1.87512L3.99994 4.12512L6.24994 1.87512\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport { ChevronDown };\n"],"names":["ChevronDown","React"],"mappings":";AAAMA,MAAAA,IAAcA,MAClBC,gBAAAA,EAAA,cAAC,OACC,EAAA,OAAM,KACN,QAAO,KACP,SAAQ,WACR,MAAK,QACL,OAAM,gCAELA,gBAAAA,EAAA,cAAA,QAAA,EACC,GAAE,oDACF,QAAO,gBACP,aAAY,KACZ,eAAc,SACd,gBAAe,QAAA,CAAO,CAE1B;"}
1
+ {"version":3,"file":"ChevronDown.mjs","sources":["../../../../../../src/modules/core/components/Icons/ChevronDown.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\ntype ChevronDownProps = {\n width?: number;\n height?: number;\n};\n\nconst ChevronDown: FunctionComponent<ChevronDownProps> = ({\n width = 8,\n height = 6,\n}) => (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 8 6\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.74994 1.87512L3.99994 4.12512L6.24994 1.87512\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n);\n\nexport { ChevronDown };\n"],"names":["ChevronDown","width","height","React"],"mappings":";AAOA,MAAMA,IAAmDA,CAAC;AAAA,EACxDC,OAAAA,IAAQ;AAAA,EACRC,QAAAA,IAAS;AACX,MACEC,gBAAAA,EAAA,cAAC,SACC,OAAAF,GACA,QAAAC,GACA,SAAQ,WACR,MAAK,QACL,OAAM,6BAEN,GAAAC,gBAAAA,EAAA,cAAC,UACC,GAAE,oDACF,QAAO,gBACP,aAAY,KACZ,eAAc,SACd,gBAAe,QAAA,CAAO,CAE1B;"}
@@ -1,6 +1,9 @@
1
1
  import C from "react";
2
- const t = () => /* @__PURE__ */ C.createElement("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ C.createElement("path", { d: "M7.00012 0.499939C3.41606 0.499939 0.500122 3.41588 0.500122 6.99994C0.500122 10.584 3.41606 13.4999 7.00012 13.4999C10.5842 13.4999 13.5001 10.584 13.5001 6.99994C13.5001 3.41588 10.5842 0.499939 7.00012 0.499939ZM9.35356 8.6465C9.40194 8.69247 9.44063 8.74766 9.46735 8.80881C9.49407 8.86997 9.50828 8.93585 9.50913 9.00259C9.50999 9.06932 9.49747 9.13555 9.47233 9.19737C9.44718 9.25919 9.40992 9.31535 9.36273 9.36254C9.31553 9.40973 9.25937 9.447 9.19755 9.47214C9.13573 9.49729 9.0695 9.5098 9.00277 9.50895C8.93604 9.50809 8.87015 9.49389 8.809 9.46717C8.74784 9.44045 8.69265 9.40176 8.64668 9.35337L7.00012 7.70712L5.35356 9.35337C5.25903 9.44318 5.13315 9.49251 5.00277 9.49084C4.87239 9.48918 4.74782 9.43664 4.65562 9.34444C4.56342 9.25224 4.51088 9.12767 4.50921 8.99729C4.50755 8.86691 4.55687 8.74103 4.64668 8.6465L6.29293 6.99994L4.64668 5.35338C4.55687 5.25884 4.50755 5.13297 4.50921 5.00259C4.51088 4.87221 4.56342 4.74764 4.65562 4.65544C4.74782 4.56324 4.87239 4.5107 5.00277 4.50903C5.13315 4.50736 5.25903 4.55669 5.35356 4.6465L7.00012 6.29275L8.64668 4.6465C8.74121 4.55669 8.86709 4.50736 8.99747 4.50903C9.12785 4.5107 9.25242 4.56324 9.34462 4.65544C9.43682 4.74764 9.48936 4.87221 9.49103 5.00259C9.4927 5.13297 9.44337 5.25884 9.35356 5.35338L7.70731 6.99994L9.35356 8.6465Z", fill: "currentColor" }));
2
+ const o = ({
3
+ width: e = 14,
4
+ height: t = 14
5
+ }) => /* @__PURE__ */ C.createElement("svg", { width: e, height: t, viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ C.createElement("path", { d: "M7.00012 0.499939C3.41606 0.499939 0.500122 3.41588 0.500122 6.99994C0.500122 10.584 3.41606 13.4999 7.00012 13.4999C10.5842 13.4999 13.5001 10.584 13.5001 6.99994C13.5001 3.41588 10.5842 0.499939 7.00012 0.499939ZM9.35356 8.6465C9.40194 8.69247 9.44063 8.74766 9.46735 8.80881C9.49407 8.86997 9.50828 8.93585 9.50913 9.00259C9.50999 9.06932 9.49747 9.13555 9.47233 9.19737C9.44718 9.25919 9.40992 9.31535 9.36273 9.36254C9.31553 9.40973 9.25937 9.447 9.19755 9.47214C9.13573 9.49729 9.0695 9.5098 9.00277 9.50895C8.93604 9.50809 8.87015 9.49389 8.809 9.46717C8.74784 9.44045 8.69265 9.40176 8.64668 9.35337L7.00012 7.70712L5.35356 9.35337C5.25903 9.44318 5.13315 9.49251 5.00277 9.49084C4.87239 9.48918 4.74782 9.43664 4.65562 9.34444C4.56342 9.25224 4.51088 9.12767 4.50921 8.99729C4.50755 8.86691 4.55687 8.74103 4.64668 8.6465L6.29293 6.99994L4.64668 5.35338C4.55687 5.25884 4.50755 5.13297 4.50921 5.00259C4.51088 4.87221 4.56342 4.74764 4.65562 4.65544C4.74782 4.56324 4.87239 4.5107 5.00277 4.50903C5.13315 4.50736 5.25903 4.55669 5.35356 4.6465L7.00012 6.29275L8.64668 4.6465C8.74121 4.55669 8.86709 4.50736 8.99747 4.50903C9.12785 4.5107 9.25242 4.56324 9.34462 4.65544C9.43682 4.74764 9.48936 4.87221 9.49103 5.00259C9.4927 5.13297 9.44337 5.25884 9.35356 5.35338L7.70731 6.99994L9.35356 8.6465Z", fill: "currentColor" }));
3
6
  export {
4
- t as CloseCircle
7
+ o as CloseCircle
5
8
  };
6
9
  //# sourceMappingURL=CloseCircle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloseCircle.mjs","sources":["../../../../../../src/modules/core/components/Icons/CloseCircle.tsx"],"sourcesContent":["const CloseCircle = () => (\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7.00012 0.499939C3.41606 0.499939 0.500122 3.41588 0.500122 6.99994C0.500122 10.584 3.41606 13.4999 7.00012 13.4999C10.5842 13.4999 13.5001 10.584 13.5001 6.99994C13.5001 3.41588 10.5842 0.499939 7.00012 0.499939ZM9.35356 8.6465C9.40194 8.69247 9.44063 8.74766 9.46735 8.80881C9.49407 8.86997 9.50828 8.93585 9.50913 9.00259C9.50999 9.06932 9.49747 9.13555 9.47233 9.19737C9.44718 9.25919 9.40992 9.31535 9.36273 9.36254C9.31553 9.40973 9.25937 9.447 9.19755 9.47214C9.13573 9.49729 9.0695 9.5098 9.00277 9.50895C8.93604 9.50809 8.87015 9.49389 8.809 9.46717C8.74784 9.44045 8.69265 9.40176 8.64668 9.35337L7.00012 7.70712L5.35356 9.35337C5.25903 9.44318 5.13315 9.49251 5.00277 9.49084C4.87239 9.48918 4.74782 9.43664 4.65562 9.34444C4.56342 9.25224 4.51088 9.12767 4.50921 8.99729C4.50755 8.86691 4.55687 8.74103 4.64668 8.6465L6.29293 6.99994L4.64668 5.35338C4.55687 5.25884 4.50755 5.13297 4.50921 5.00259C4.51088 4.87221 4.56342 4.74764 4.65562 4.65544C4.74782 4.56324 4.87239 4.5107 5.00277 4.50903C5.13315 4.50736 5.25903 4.55669 5.35356 4.6465L7.00012 6.29275L8.64668 4.6465C8.74121 4.55669 8.86709 4.50736 8.99747 4.50903C9.12785 4.5107 9.25242 4.56324 9.34462 4.65544C9.43682 4.74764 9.48936 4.87221 9.49103 5.00259C9.4927 5.13297 9.44337 5.25884 9.35356 5.35338L7.70731 6.99994L9.35356 8.6465Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport { CloseCircle };\n"],"names":["CloseCircle","React"],"mappings":";AAAMA,MAAAA,IAAcA,MACjBC,gBAAAA,EAAA,cAAA,OAAA,EACC,OAAM,MACN,QAAO,MACP,SAAQ,aACR,MAAK,QACL,OAAM,gCAELA,gBAAAA,EAAA,cAAA,QAAA,EACC,GAAE,6xCACF,MAAK,gBAAc,CAEvB;"}
1
+ {"version":3,"file":"CloseCircle.mjs","sources":["../../../../../../src/modules/core/components/Icons/CloseCircle.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\ntype CloseCircleProps = {\n width?: number;\n height?: number;\n};\n\nconst CloseCircle: FunctionComponent<CloseCircleProps> = ({\n width = 14,\n height = 14,\n}) => (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7.00012 0.499939C3.41606 0.499939 0.500122 3.41588 0.500122 6.99994C0.500122 10.584 3.41606 13.4999 7.00012 13.4999C10.5842 13.4999 13.5001 10.584 13.5001 6.99994C13.5001 3.41588 10.5842 0.499939 7.00012 0.499939ZM9.35356 8.6465C9.40194 8.69247 9.44063 8.74766 9.46735 8.80881C9.49407 8.86997 9.50828 8.93585 9.50913 9.00259C9.50999 9.06932 9.49747 9.13555 9.47233 9.19737C9.44718 9.25919 9.40992 9.31535 9.36273 9.36254C9.31553 9.40973 9.25937 9.447 9.19755 9.47214C9.13573 9.49729 9.0695 9.5098 9.00277 9.50895C8.93604 9.50809 8.87015 9.49389 8.809 9.46717C8.74784 9.44045 8.69265 9.40176 8.64668 9.35337L7.00012 7.70712L5.35356 9.35337C5.25903 9.44318 5.13315 9.49251 5.00277 9.49084C4.87239 9.48918 4.74782 9.43664 4.65562 9.34444C4.56342 9.25224 4.51088 9.12767 4.50921 8.99729C4.50755 8.86691 4.55687 8.74103 4.64668 8.6465L6.29293 6.99994L4.64668 5.35338C4.55687 5.25884 4.50755 5.13297 4.50921 5.00259C4.51088 4.87221 4.56342 4.74764 4.65562 4.65544C4.74782 4.56324 4.87239 4.5107 5.00277 4.50903C5.13315 4.50736 5.25903 4.55669 5.35356 4.6465L7.00012 6.29275L8.64668 4.6465C8.74121 4.55669 8.86709 4.50736 8.99747 4.50903C9.12785 4.5107 9.25242 4.56324 9.34462 4.65544C9.43682 4.74764 9.48936 4.87221 9.49103 5.00259C9.4927 5.13297 9.44337 5.25884 9.35356 5.35338L7.70731 6.99994L9.35356 8.6465Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport { CloseCircle };\n"],"names":["CloseCircle","width","height"],"mappings":";AAOA,MAAMA,IAAmDA,CAAC;AAAA,EACxDC,OAAAA,IAAQ;AAAA,EACRC,QAAAA,IAAS;AACX,sCACG,OACC,EAAA,OAAAD,GACA,QAAAC,GACA,SAAQ,aACR,MAAK,QACL,OAAM,6BAAA,mCAEL,QACC,EAAA,GAAE,6xCACF,MAAK,gBAAc,CAEvB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.mjs","sources":["../../../../../../src/modules/core/components/Spinner/Spinner.tsx"],"sourcesContent":["import React from \"react\";\n\ntype Speed = \"fast\" | \"slow\" | \"medium\";\n\nfunction speedSwitch(speed: Speed) {\n if (speed === \"fast\") return 600;\n if (speed === \"slow\") return 900;\n return 750;\n}\n\nexport interface SpinnerProps {\n color?: string;\n speed?: Speed;\n gap?: number;\n thickness?: number;\n size?: string;\n}\n\nexport const Spinner: React.FC<SpinnerProps> = ({\n color = \"rgba(0,0,0,0.4)\",\n speed = \"medium\",\n gap = 4,\n thickness = 4,\n size = \"1em\",\n ...props\n}) => (\n <svg\n height={size}\n width={size}\n {...props}\n style={{ animationDuration: `${speedSwitch(speed)}ms` }}\n className=\"__react-svg-spinner_circle\"\n role=\"img\"\n aria-labelledby=\"title desc\"\n viewBox=\"0 0 32 32\"\n >\n <title id=\"title\">Circle loading spinner</title>\n <desc id=\"desc\">Image of a partial circle indicating \"loading.\"</desc>\n <style\n dangerouslySetInnerHTML={{\n __html: `\n .__react-svg-spinner_circle{\n transition-property: transform;\n animation-name: __react-svg-spinner_infinite-spin;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n }\n @keyframes __react-svg-spinner_infinite-spin {\n from {transform: rotate(0deg)}\n to {transform: rotate(360deg)}\n }\n `,\n }}\n />\n <circle\n role=\"presentation\"\n cx={16}\n cy={16}\n r={14 - thickness / 2}\n stroke={color}\n fill=\"none\"\n strokeWidth={thickness}\n strokeDasharray={Math.PI * 2 * (11 - gap)}\n strokeLinecap=\"round\"\n />\n </svg>\n);\n"],"names":["speedSwitch","speed","Spinner","color","gap","thickness","size","props","React","animationDuration","__html","Math","PI"],"mappings":";AAIA,SAASA,EAAYC,GAAc;AACjC,SAAIA,MAAU,SAAe,MACzBA,MAAU,SAAe,MACtB;AACT;AAUO,MAAMC,IAAkCA,CAAC;AAAA,EAC9CC,OAAAA,IAAQ;AAAA,EACRF,OAAAA,IAAQ;AAAA,EACRG,KAAAA,IAAM;AAAA,EACNC,WAAAA,IAAY;AAAA,EACZC,MAAAA,IAAO;AAAA,EACP,GAAGC;AACL,MACEC,gBAAAA,EAAA,cAAC,SACC,QAAQF,GACR,OAAOA,GACP,GAAIC,GACJ,OAAO;AAAA,EAAEE,mBAAoB,GAAET,EAAYC,CAAK,CAAE;AAAI,GACtD,WAAU,8BACV,MAAK,OACL,mBAAgB,cAChB,SAAQ,YAER,GAAAO,gBAAAA,EAAA,cAAC,SAAM,EAAA,IAAG,WAAQ,wBAAsB,mCACvC,QAAK,EAAA,IAAG,UAAO,iDAA+C,GAC9DA,gBAAAA,EAAA,cAAA,SAAA,EACC,yBAAyB;AAAA,EACvBE,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYX,EAAE,CAAA,GAEHF,gBAAAA,EAAA,cAAA,UAAA,EACC,MAAK,gBACL,IAAI,IACJ,IAAI,IACJ,GAAG,KAAKH,IAAY,GACpB,QAAQF,GACR,MAAK,QACL,aAAaE,GACb,iBAAiBM,KAAKC,KAAK,KAAK,KAAKR,IACrC,eAAc,QAAA,CAAO,CAEzB;"}
1
+ {"version":3,"file":"Spinner.mjs","sources":["../../../../../../src/modules/core/components/Spinner/Spinner.tsx"],"sourcesContent":["import { FunctionComponent } from \"react\";\n\ntype Speed = \"fast\" | \"slow\" | \"medium\";\n\nfunction speedSwitch(speed: Speed) {\n if (speed === \"fast\") return 600;\n if (speed === \"slow\") return 900;\n return 750;\n}\n\nexport interface SpinnerProps {\n color?: string;\n speed?: Speed;\n gap?: number;\n thickness?: number;\n size?: string;\n}\n\nexport const Spinner: FunctionComponent<SpinnerProps> = ({\n color = \"rgba(0,0,0,0.4)\",\n speed = \"medium\",\n gap = 4,\n thickness = 4,\n size = \"1em\",\n ...props\n}) => (\n <svg\n height={size}\n width={size}\n {...props}\n style={{ animationDuration: `${speedSwitch(speed)}ms` }}\n className=\"__react-svg-spinner_circle\"\n role=\"img\"\n aria-labelledby=\"title desc\"\n viewBox=\"0 0 32 32\"\n >\n <title id=\"title\">Circle loading spinner</title>\n <desc id=\"desc\">Image of a partial circle indicating \"loading.\"</desc>\n <style\n dangerouslySetInnerHTML={{\n __html: `\n .__react-svg-spinner_circle{\n transition-property: transform;\n animation-name: __react-svg-spinner_infinite-spin;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n }\n @keyframes __react-svg-spinner_infinite-spin {\n from {transform: rotate(0deg)}\n to {transform: rotate(360deg)}\n }\n `,\n }}\n />\n <circle\n role=\"presentation\"\n cx={16}\n cy={16}\n r={14 - thickness / 2}\n stroke={color}\n fill=\"none\"\n strokeWidth={thickness}\n strokeDasharray={Math.PI * 2 * (11 - gap)}\n strokeLinecap=\"round\"\n />\n </svg>\n);\n"],"names":["speedSwitch","speed","Spinner","color","gap","thickness","size","props","React","animationDuration","__html","Math","PI"],"mappings":";AAIA,SAASA,EAAYC,GAAc;AACjC,SAAIA,MAAU,SAAe,MACzBA,MAAU,SAAe,MACtB;AACT;AAUO,MAAMC,IAA2CA,CAAC;AAAA,EACvDC,OAAAA,IAAQ;AAAA,EACRF,OAAAA,IAAQ;AAAA,EACRG,KAAAA,IAAM;AAAA,EACNC,WAAAA,IAAY;AAAA,EACZC,MAAAA,IAAO;AAAA,EACP,GAAGC;AACL,MACEC,gBAAAA,EAAA,cAAC,SACC,QAAQF,GACR,OAAOA,GACP,GAAIC,GACJ,OAAO;AAAA,EAAEE,mBAAoB,GAAET,EAAYC,CAAK,CAAE;AAAI,GACtD,WAAU,8BACV,MAAK,OACL,mBAAgB,cAChB,SAAQ,YAER,GAAAO,gBAAAA,EAAA,cAAC,SAAM,EAAA,IAAG,WAAQ,wBAAsB,mCACvC,QAAK,EAAA,IAAG,UAAO,iDAA+C,GAC9DA,gBAAAA,EAAA,cAAA,SAAA,EACC,yBAAyB;AAAA,EACvBE,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYX,EAAE,CAAA,GAEHF,gBAAAA,EAAA,cAAA,UAAA,EACC,MAAK,gBACL,IAAI,IACJ,IAAI,IACJ,GAAG,KAAKH,IAAY,GACpB,QAAQF,GACR,MAAK,QACL,aAAaE,GACb,iBAAiBM,KAAKC,KAAK,KAAK,KAAKR,IACrC,eAAc,QAAA,CAAO,CAEzB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"EmptyFeed.mjs","sources":["../../../../../../src/modules/feed/components/EmptyFeed/EmptyFeed.tsx"],"sourcesContent":["import React from \"react\";\nimport { useTranslations, useKnockFeed } from \"@knocklabs/react-core\";\nimport \"./styles.css\";\n\nexport const EmptyFeed: React.FC = () => {\n const { colorMode } = useKnockFeed();\n const { t } = useTranslations();\n\n return (\n <div className={`rnf-empty-feed rnf-empty-feed--${colorMode}`}>\n <div className=\"rnf-empty-feed__inner\">\n <h2 className=\"rnf-empty-feed__header\">{t(\"emptyFeedTitle\")}</h2>\n <p className=\"rnf-empty-feed__body\">{t(\"emptyFeedBody\")}</p>\n </div>\n </div>\n );\n};\n"],"names":["EmptyFeed","colorMode","useKnockFeed","t","useTranslations","React"],"mappings":";;;AAIO,MAAMA,IAAsBA,MAAM;AACjC,QAAA;AAAA,IAAEC,WAAAA;AAAAA,MAAcC,EAAa,GAC7B;AAAA,IAAEC;AAAAA,MAAMC,EAAgB;AAG5B,SAAAC,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAY,kCAAiCJ,CAAU,GAC1D,GAAAI,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,wBACb,GAAAA,gBAAAA,EAAA,cAAC,MAAG,EAAA,WAAU,4BAA0BF,EAAE,gBAAgB,CAAE,GAC3DE,gBAAAA,EAAA,cAAA,KAAA,EAAE,WAAU,uBAAA,GAAwBF,EAAE,eAAe,CAAE,CAC1D,CACF;AAEJ;"}
1
+ {"version":3,"file":"EmptyFeed.mjs","sources":["../../../../../../src/modules/feed/components/EmptyFeed/EmptyFeed.tsx"],"sourcesContent":["import { useKnockFeed, useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport \"./styles.css\";\n\nexport const EmptyFeed: FunctionComponent = () => {\n const { colorMode } = useKnockFeed();\n const { t } = useTranslations();\n\n return (\n <div className={`rnf-empty-feed rnf-empty-feed--${colorMode}`}>\n <div className=\"rnf-empty-feed__inner\">\n <h2 className=\"rnf-empty-feed__header\">{t(\"emptyFeedTitle\")}</h2>\n <p className=\"rnf-empty-feed__body\">{t(\"emptyFeedBody\")}</p>\n </div>\n </div>\n );\n};\n"],"names":["EmptyFeed","colorMode","useKnockFeed","t","useTranslations","React"],"mappings":";;;AAKO,MAAMA,IAA+BA,MAAM;AAC1C,QAAA;AAAA,IAAEC,WAAAA;AAAAA,MAAcC,EAAa,GAC7B;AAAA,IAAEC;AAAAA,MAAMC,EAAgB;AAG5B,SAAAC,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAY,kCAAiCJ,CAAU,GAC1D,GAAAI,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,wBACb,GAAAA,gBAAAA,EAAA,cAAC,MAAG,EAAA,WAAU,4BAA0BF,EAAE,gBAAgB,CAAE,GAC3DE,gBAAAA,EAAA,cAAA,KAAA,EAAE,WAAU,uBAAA,GAAwBF,EAAE,eAAe,CAAE,CAC1D,CACF;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationFeed.mjs","sources":["../../../../../../src/modules/feed/components/NotificationFeed/NotificationFeed.tsx"],"sourcesContent":["import { FeedItem, NetworkStatus, isRequestInFlight } from \"@knocklabs/client\";\nimport {\n ColorMode,\n FilterStatus,\n useFeedSettings,\n useKnockFeed,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport React, {\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport { Spinner } from \"../../../core/components/Spinner\";\nimport useOnBottomScroll from \"../../../core/hooks/useOnBottomScroll\";\nimport { EmptyFeed } from \"../EmptyFeed\";\nimport { NotificationCell, NotificationCellProps } from \"../NotificationCell\";\n\nimport {\n NotificationFeedHeader,\n NotificationFeedHeaderProps,\n} from \"./NotificationFeedHeader\";\nimport \"./styles.css\";\n\nexport type RenderItemProps = {\n item: FeedItem;\n onItemClick?: NotificationCellProps[\"onItemClick\"];\n onButtonClick?: NotificationCellProps[\"onButtonClick\"];\n};\n\nexport type RenderItem = (props: RenderItemProps) => ReactNode;\n\nexport interface NotificationFeedProps {\n EmptyComponent?: ReactNode;\n /**\n * @deprecated Use `renderHeader` instead to accept `NotificationFeedHeaderProps`\n */\n header?: ReactElement<any>;\n renderItem?: RenderItem;\n renderHeader?: (props: NotificationFeedHeaderProps) => ReactNode;\n onNotificationClick?: NotificationCellProps[\"onItemClick\"];\n onNotificationButtonClick?: NotificationCellProps[\"onButtonClick\"];\n onMarkAllAsReadClick?: (e: React.MouseEvent, unreadItems: FeedItem[]) => void;\n initialFilterStatus?: FilterStatus;\n}\n\nconst defaultRenderItem = (props: RenderItemProps) => (\n <NotificationCell key={props.item.id} {...props} />\n);\n\nconst defaultRenderHeader = (props: NotificationFeedHeaderProps) => (\n <NotificationFeedHeader {...props} />\n);\n\nconst LoadingSpinner = ({ colorMode }: { colorMode: ColorMode }) => (\n <div className=\"rnf-notification-feed__spinner-container\">\n <Spinner\n thickness={3}\n size=\"16px\"\n color={colorMode === \"dark\" ? \"rgba(255, 255, 255, 0.65)\" : undefined}\n />\n </div>\n);\n\nconst poweredByKnockUrl =\n \"https://knock.app?utm_source=powered-by-knock&utm_medium=referral&utm_campaign=knock-branding-feed\";\n\nexport const NotificationFeed: React.FC<NotificationFeedProps> = ({\n EmptyComponent = <EmptyFeed />,\n renderItem = defaultRenderItem,\n onNotificationClick,\n onNotificationButtonClick,\n onMarkAllAsReadClick,\n initialFilterStatus = FilterStatus.All,\n header,\n renderHeader = defaultRenderHeader,\n}) => {\n const [status, setStatus] = useState(initialFilterStatus);\n const { feedClient, useFeedStore, colorMode } = useKnockFeed();\n const { settings } = useFeedSettings(feedClient);\n const { t } = useTranslations();\n\n const { pageInfo, items, networkStatus } = useFeedStore();\n const containerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n setStatus(initialFilterStatus);\n }, [initialFilterStatus]);\n\n useEffect(() => {\n // When the feed client changes, or the status changes issue a re-fetch\n feedClient.fetch({ status });\n }, [feedClient, status]);\n\n const noItems = items.length === 0;\n const requestInFlight = isRequestInFlight(networkStatus);\n\n // Handle fetching more once we reach the bottom of the list\n const onBottomCallback = useCallback(() => {\n if (!requestInFlight && pageInfo.after) {\n feedClient.fetchNextPage();\n }\n }, [requestInFlight, pageInfo, feedClient]);\n\n // Once we scroll to the bottom of the view we want to automatically fetch\n // more items for the feed and bring them into the list\n useOnBottomScroll({\n ref: containerRef,\n callback: onBottomCallback,\n offset: 70,\n });\n\n return (\n <div\n className={`rnf-notification-feed rnf-notification-feed--${colorMode}`}\n >\n {header ||\n renderHeader({\n setFilterStatus: setStatus,\n filterStatus: status,\n onMarkAllAsReadClick,\n })}\n\n <div className=\"rnf-notification-feed__container\" ref={containerRef}>\n {networkStatus === NetworkStatus.loading && (\n <LoadingSpinner colorMode={colorMode} />\n )}\n\n <div className=\"rnf-notification-feed__feed-items-container\">\n {networkStatus !== NetworkStatus.loading &&\n items.map((item: FeedItem) =>\n renderItem({\n item,\n onItemClick: onNotificationClick,\n onButtonClick: onNotificationButtonClick,\n }),\n )}\n </div>\n\n {networkStatus === NetworkStatus.fetchMore && (\n <LoadingSpinner colorMode={colorMode} />\n )}\n\n {!requestInFlight && noItems && EmptyComponent}\n </div>\n\n {settings?.features.branding_required && (\n <div className=\"rnf-notification-feed__knock-branding\">\n <a href={poweredByKnockUrl} target=\"_blank\">\n {t(\"poweredBy\")}\n </a>\n </div>\n )}\n </div>\n );\n};\n"],"names":["defaultRenderItem","props","React","NotificationCell","item","id","defaultRenderHeader","NotificationFeedHeader","LoadingSpinner","colorMode","Spinner","undefined","poweredByKnockUrl","NotificationFeed","EmptyComponent","EmptyFeed","renderItem","onNotificationClick","onNotificationButtonClick","onMarkAllAsReadClick","initialFilterStatus","FilterStatus","All","header","renderHeader","status","setStatus","useState","feedClient","useFeedStore","useKnockFeed","settings","useFeedSettings","t","useTranslations","pageInfo","items","networkStatus","containerRef","useRef","useEffect","fetch","noItems","length","requestInFlight","isRequestInFlight","onBottomCallback","useCallback","after","fetchNextPage","useOnBottomScroll","ref","callback","offset","setFilterStatus","filterStatus","NetworkStatus","loading","map","onItemClick","onButtonClick","fetchMore","features","branding_required"],"mappings":"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"}
1
+ {"version":3,"file":"NotificationFeed.mjs","sources":["../../../../../../src/modules/feed/components/NotificationFeed/NotificationFeed.tsx"],"sourcesContent":["import { FeedItem, NetworkStatus, isRequestInFlight } from \"@knocklabs/client\";\nimport {\n ColorMode,\n FilterStatus,\n useFeedSettings,\n useKnockFeed,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport React, {\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport { Spinner } from \"../../../core/components/Spinner\";\nimport useOnBottomScroll from \"../../../core/hooks/useOnBottomScroll\";\nimport { EmptyFeed } from \"../EmptyFeed\";\nimport { NotificationCell, NotificationCellProps } from \"../NotificationCell\";\n\nimport {\n NotificationFeedHeader,\n NotificationFeedHeaderProps,\n} from \"./NotificationFeedHeader\";\nimport \"./styles.css\";\n\nexport type RenderItemProps<T = any> = {\n item: FeedItem<T>;\n onItemClick?: NotificationCellProps[\"onItemClick\"];\n onButtonClick?: NotificationCellProps[\"onButtonClick\"];\n};\n\nexport type RenderItem = (props: RenderItemProps) => ReactNode;\n\nexport interface NotificationFeedProps {\n EmptyComponent?: ReactNode;\n /**\n * @deprecated Use `renderHeader` instead to accept `NotificationFeedHeaderProps`\n */\n header?: ReactElement<any>;\n renderItem?: RenderItem;\n renderHeader?: (props: NotificationFeedHeaderProps) => ReactNode;\n onNotificationClick?: NotificationCellProps[\"onItemClick\"];\n onNotificationButtonClick?: NotificationCellProps[\"onButtonClick\"];\n onMarkAllAsReadClick?: (e: React.MouseEvent, unreadItems: FeedItem[]) => void;\n initialFilterStatus?: FilterStatus;\n}\n\nconst defaultRenderItem = (props: RenderItemProps) => (\n <NotificationCell key={props.item.id} {...props} />\n);\n\nconst defaultRenderHeader = (props: NotificationFeedHeaderProps) => (\n <NotificationFeedHeader {...props} />\n);\n\nconst LoadingSpinner = ({ colorMode }: { colorMode: ColorMode }) => (\n <div className=\"rnf-notification-feed__spinner-container\">\n <Spinner\n thickness={3}\n size=\"16px\"\n color={colorMode === \"dark\" ? \"rgba(255, 255, 255, 0.65)\" : undefined}\n />\n </div>\n);\n\nconst poweredByKnockUrl =\n \"https://knock.app?utm_source=powered-by-knock&utm_medium=referral&utm_campaign=knock-branding-feed\";\n\nexport const NotificationFeed: React.FC<NotificationFeedProps> = ({\n EmptyComponent = <EmptyFeed />,\n renderItem = defaultRenderItem,\n onNotificationClick,\n onNotificationButtonClick,\n onMarkAllAsReadClick,\n initialFilterStatus = FilterStatus.All,\n header,\n renderHeader = defaultRenderHeader,\n}) => {\n const [status, setStatus] = useState(initialFilterStatus);\n const { feedClient, useFeedStore, colorMode } = useKnockFeed();\n const { settings } = useFeedSettings(feedClient);\n const { t } = useTranslations();\n\n const { pageInfo, items, networkStatus } = useFeedStore();\n const containerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n setStatus(initialFilterStatus);\n }, [initialFilterStatus]);\n\n useEffect(() => {\n // When the feed client changes, or the status changes issue a re-fetch\n feedClient.fetch({ status });\n }, [feedClient, status]);\n\n const noItems = items.length === 0;\n const requestInFlight = isRequestInFlight(networkStatus);\n\n // Handle fetching more once we reach the bottom of the list\n const onBottomCallback = useCallback(() => {\n if (!requestInFlight && pageInfo.after) {\n feedClient.fetchNextPage();\n }\n }, [requestInFlight, pageInfo, feedClient]);\n\n // Once we scroll to the bottom of the view we want to automatically fetch\n // more items for the feed and bring them into the list\n useOnBottomScroll({\n ref: containerRef,\n callback: onBottomCallback,\n offset: 70,\n });\n\n return (\n <div\n className={`rnf-notification-feed rnf-notification-feed--${colorMode}`}\n >\n {header ||\n renderHeader({\n setFilterStatus: setStatus,\n filterStatus: status,\n onMarkAllAsReadClick,\n })}\n\n <div className=\"rnf-notification-feed__container\" ref={containerRef}>\n {networkStatus === NetworkStatus.loading && (\n <LoadingSpinner colorMode={colorMode} />\n )}\n\n <div className=\"rnf-notification-feed__feed-items-container\">\n {networkStatus !== NetworkStatus.loading &&\n items.map((item: FeedItem) =>\n renderItem({\n item,\n onItemClick: onNotificationClick,\n onButtonClick: onNotificationButtonClick,\n }),\n )}\n </div>\n\n {networkStatus === NetworkStatus.fetchMore && (\n <LoadingSpinner colorMode={colorMode} />\n )}\n\n {!requestInFlight && noItems && EmptyComponent}\n </div>\n\n {settings?.features.branding_required && (\n <div className=\"rnf-notification-feed__knock-branding\">\n <a href={poweredByKnockUrl} target=\"_blank\">\n {t(\"poweredBy\")}\n </a>\n </div>\n )}\n </div>\n );\n};\n"],"names":["defaultRenderItem","props","React","NotificationCell","item","id","defaultRenderHeader","NotificationFeedHeader","LoadingSpinner","colorMode","Spinner","undefined","poweredByKnockUrl","NotificationFeed","EmptyComponent","EmptyFeed","renderItem","onNotificationClick","onNotificationButtonClick","onMarkAllAsReadClick","initialFilterStatus","FilterStatus","All","header","renderHeader","status","setStatus","useState","feedClient","useFeedStore","useKnockFeed","settings","useFeedSettings","t","useTranslations","pageInfo","items","networkStatus","containerRef","useRef","useEffect","fetch","noItems","length","requestInFlight","isRequestInFlight","onBottomCallback","useCallback","after","fetchNextPage","useOnBottomScroll","ref","callback","offset","setFilterStatus","filterStatus","NetworkStatus","loading","map","onItemClick","onButtonClick","fetchMore","features","branding_required"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackAddChannelInput.mjs","sources":["../../../../../../src/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport { useTranslations } from \"@knocklabs/react-core\";\nimport { useState } from \"react\";\n\nimport { Spinner } from \"../../../core\";\nimport \"../../theme.css\";\nimport ConnectionErrorInfoBoxes from \"../SlackChannelCombobox/SlackConnectionError\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\nconst SlackAddChannelInput = ({\n inErrorState,\n connectedChannels = [],\n updateConnectedChannels,\n connectedChannelsError,\n connectedChannelsUpdating,\n}: {\n inErrorState: boolean;\n connectedChannels: SlackChannelConnection[];\n updateConnectedChannels: (channels: SlackChannelConnection[]) => void;\n connectedChannelsError: string | null;\n connectedChannelsUpdating: boolean;\n}) => {\n const { t } = useTranslations();\n const [value, setValue] = useState<string | null>(null);\n const [localError, setLocalError] = useState<string | null>(null);\n\n const submitChannel = () => {\n if (!value) {\n return;\n }\n\n if (localError) {\n setLocalError(null);\n }\n\n const alreadyConnected = connectedChannels.find(\n (channel) => channel.channel_id === value,\n );\n\n if (alreadyConnected) {\n setValue(\"\");\n return setLocalError(t(\"slackChannelAlreadyConnected\") || \"\");\n }\n\n const channelsToSendToKnock = [...connectedChannels, { channel_id: value }];\n updateConnectedChannels(channelsToSendToKnock);\n setValue(\"\");\n };\n\n return (\n <div className=\"rsk-connect-channel\">\n <input\n className={`rsk-connect-channel__input ${(inErrorState || !!localError) && !value && \"rsk-connect-channel__input--error\"}`}\n tabIndex={-1}\n id=\"slack-channel-search\"\n type=\"text\"\n placeholder={\n localError || connectedChannelsError || t(\"slackChannelId\")\n }\n onChange={(e) => setValue(e.target.value)}\n value={value || \"\"}\n />\n <button className=\"rsk-connect-channel__button\" onClick={submitChannel}>\n {connectedChannelsUpdating ? (\n <Spinner size=\"15px\" thickness={3} />\n ) : (\n <SlackIcon height=\"16px\" width=\"16px\" />\n )}\n {t(\"slackConnectChannel\")}\n </button>\n <ConnectionErrorInfoBoxes />\n </div>\n );\n};\n\nexport default SlackAddChannelInput;\n"],"names":["SlackAddChannelInput","inErrorState","connectedChannels","updateConnectedChannels","connectedChannelsError","connectedChannelsUpdating","t","useTranslations","value","setValue","useState","localError","setLocalError","submitChannel","find","channel","channel_id","channelsToSendToKnock","React","e","target","Spinner","SlackIcon","ConnectionErrorInfoBoxes"],"mappings":";;;;;;;;;AAWA,MAAMA,IAAuBA,CAAC;AAAA,EAC5BC,cAAAA;AAAAA,EACAC,mBAAAA,IAAoB,CAAE;AAAA,EACtBC,yBAAAA;AAAAA,EACAC,wBAAAA;AAAAA,EACAC,2BAAAA;AAOF,MAAM;AACE,QAAA;AAAA,IAAEC;AAAAA,MAAMC,EAAgB,GACxB,CAACC,GAAOC,CAAQ,IAAIC,EAAwB,IAAI,GAChD,CAACC,GAAYC,CAAa,IAAIF,EAAwB,IAAI,GAE1DG,IAAgBA,MAAM;AAC1B,QAAI,CAACL;AACH;AAWF,QARIG,KACFC,EAAc,IAAI,GAGKV,EAAkBY,KACxCC,CAAYA,MAAAA,EAAQC,eAAeR,CACtC;AAGEC,aAAAA,EAAS,EAAE,GACJG,EAAcN,EAAE,8BAA8B,KAAK,EAAE;AAGxDW,UAAAA,IAAwB,CAAC,GAAGf,GAAmB;AAAA,MAAEc,YAAYR;AAAAA,IAAAA,CAAO;AAC1EL,IAAAA,EAAwBc,CAAqB,GAC7CR,EAAS,EAAE;AAAA,EAAA;AAGb,SACGS,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,sBAAA,GACZA,gBAAAA,EAAA,cAAA,SAAA,EACC,WAAY,+BAA8BjB,KAAgB,CAAC,CAACU,MAAe,CAACH,KAAS,mCAAoC,IACzH,UAAU,IACV,IAAG,wBACH,MAAK,QACL,aACEG,KAAcP,KAA0BE,EAAE,gBAAgB,GAE5D,UAAWa,CAAAA,MAAMV,EAASU,EAAEC,OAAOZ,KAAK,GACxC,OAAOA,KAAS,IAAG,GAEpBU,gBAAAA,EAAA,cAAA,UAAA,EAAO,WAAU,+BAA8B,SAASL,EAAAA,GACtDR,IACCa,gBAAAA,EAAA,cAACG,KAAQ,MAAK,QAAO,WAAW,EAAK,CAAA,IAErCH,gBAAAA,EAAA,cAACI,GAAU,EAAA,QAAO,QAAO,OAAM,OAChC,CAAA,GACAhB,EAAE,qBAAqB,CAC1B,GACAY,gBAAAA,EAAA,cAACK,OAAwB,CAC3B;AAEJ;"}
1
+ {"version":3,"file":"SlackAddChannelInput.mjs","sources":["../../../../../../src/modules/slack/components/SlackAddChannelInput/SlackAddChannelInput.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport { useTranslations } from \"@knocklabs/react-core\";\nimport { useState } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport { Spinner } from \"../../../core\";\nimport \"../../theme.css\";\nimport ConnectionErrorInfoBoxes from \"../SlackChannelCombobox/SlackConnectionError\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\nexport interface SlackAddChannelInputProps {\n inErrorState: boolean;\n connectedChannels: SlackChannelConnection[];\n updateConnectedChannels: (channels: SlackChannelConnection[]) => void;\n connectedChannelsError: string | null;\n connectedChannelsUpdating: boolean;\n}\n\nconst SlackAddChannelInput: FunctionComponent<SlackAddChannelInputProps> = ({\n inErrorState,\n connectedChannels = [],\n updateConnectedChannels,\n connectedChannelsError,\n connectedChannelsUpdating,\n}) => {\n const { t } = useTranslations();\n const [value, setValue] = useState<string | null>(null);\n const [localError, setLocalError] = useState<string | null>(null);\n\n const submitChannel = () => {\n if (!value) {\n return;\n }\n\n if (localError) {\n setLocalError(null);\n }\n\n const alreadyConnected = connectedChannels.find(\n (channel) => channel.channel_id === value,\n );\n\n if (alreadyConnected) {\n setValue(\"\");\n return setLocalError(t(\"slackChannelAlreadyConnected\") || \"\");\n }\n\n const channelsToSendToKnock = [...connectedChannels, { channel_id: value }];\n updateConnectedChannels(channelsToSendToKnock);\n setValue(\"\");\n };\n\n return (\n <div className=\"rsk-connect-channel\">\n <input\n className={`rsk-connect-channel__input ${(inErrorState || !!localError) && !value && \"rsk-connect-channel__input--error\"}`}\n tabIndex={-1}\n id=\"slack-channel-search\"\n type=\"text\"\n placeholder={\n localError || connectedChannelsError || t(\"slackChannelId\")\n }\n onChange={(e) => setValue(e.target.value)}\n value={value || \"\"}\n />\n <button className=\"rsk-connect-channel__button\" onClick={submitChannel}>\n {connectedChannelsUpdating ? (\n <Spinner size=\"15px\" thickness={3} />\n ) : (\n <SlackIcon height=\"16px\" width=\"16px\" />\n )}\n {t(\"slackConnectChannel\")}\n </button>\n <ConnectionErrorInfoBoxes />\n </div>\n );\n};\n\nexport default SlackAddChannelInput;\n"],"names":["SlackAddChannelInput","inErrorState","connectedChannels","updateConnectedChannels","connectedChannelsError","connectedChannelsUpdating","t","useTranslations","value","setValue","useState","localError","setLocalError","submitChannel","find","channel","channel_id","channelsToSendToKnock","React","e","target","Spinner","SlackIcon","ConnectionErrorInfoBoxes"],"mappings":";;;;;;;;;AAoBA,MAAMA,IAAqEA,CAAC;AAAA,EAC1EC,cAAAA;AAAAA,EACAC,mBAAAA,IAAoB,CAAE;AAAA,EACtBC,yBAAAA;AAAAA,EACAC,wBAAAA;AAAAA,EACAC,2BAAAA;AACF,MAAM;AACE,QAAA;AAAA,IAAEC;AAAAA,MAAMC,EAAgB,GACxB,CAACC,GAAOC,CAAQ,IAAIC,EAAwB,IAAI,GAChD,CAACC,GAAYC,CAAa,IAAIF,EAAwB,IAAI,GAE1DG,IAAgBA,MAAM;AAC1B,QAAI,CAACL;AACH;AAWF,QARIG,KACFC,EAAc,IAAI,GAGKV,EAAkBY,KACxCC,CAAYA,MAAAA,EAAQC,eAAeR,CACtC;AAGEC,aAAAA,EAAS,EAAE,GACJG,EAAcN,EAAE,8BAA8B,KAAK,EAAE;AAGxDW,UAAAA,IAAwB,CAAC,GAAGf,GAAmB;AAAA,MAAEc,YAAYR;AAAAA,IAAAA,CAAO;AAC1EL,IAAAA,EAAwBc,CAAqB,GAC7CR,EAAS,EAAE;AAAA,EAAA;AAGb,SACGS,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,sBAAA,GACZA,gBAAAA,EAAA,cAAA,SAAA,EACC,WAAY,+BAA8BjB,KAAgB,CAAC,CAACU,MAAe,CAACH,KAAS,mCAAoC,IACzH,UAAU,IACV,IAAG,wBACH,MAAK,QACL,aACEG,KAAcP,KAA0BE,EAAE,gBAAgB,GAE5D,UAAWa,CAAAA,MAAMV,EAASU,EAAEC,OAAOZ,KAAK,GACxC,OAAOA,KAAS,IAAG,GAEpBU,gBAAAA,EAAA,cAAA,UAAA,EAAO,WAAU,+BAA8B,SAASL,EAAAA,GACtDR,IACCa,gBAAAA,EAAA,cAACG,KAAQ,MAAK,QAAO,WAAW,EAAK,CAAA,IAErCH,gBAAAA,EAAA,cAACI,GAAU,EAAA,QAAO,QAAO,OAAM,OAChC,CAAA,GACAhB,EAAE,qBAAqB,CAC1B,GACAY,gBAAAA,EAAA,cAACK,OAAwB,CAC3B;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackAuthButton.mjs","sources":["../../../../../../src/modules/slack/components/SlackAuthButton/SlackAuthButton.tsx"],"sourcesContent":["import {\n useKnockClient,\n useKnockSlackClient,\n useSlackAuth,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport { useEffect } from \"react\";\n\nimport \"../../theme.css\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\ntype Props = {\n slackClientId: string;\n redirectUrl?: string;\n onAuthenticationComplete?: (authenticationResp: string) => void;\n};\n\nconst openSlackOauthPopup = (url: string) => {\n const width = 600;\n const height = 800;\n // Calculate the position to center the window\n const screenLeft = window.screenLeft ?? window.screenX;\n const screenTop = window.screenTop ?? window.screenY;\n\n const innerWidth =\n window.innerWidth ?? document.documentElement.clientWidth ?? screen.width;\n const innerHeight =\n window.innerHeight ??\n document.documentElement.clientHeight ??\n screen.height;\n\n const left = innerWidth / 2 - width / 2 + screenLeft;\n const top = innerHeight / 2 - height / 2 + screenTop;\n\n // Window features\n const features = `width=${width},height=${height},top=${top},left=${left}`;\n\n window.open(url, \"Slack OAuth\", features);\n};\n\nexport const SlackAuthButton: React.FC<Props> = ({\n slackClientId,\n redirectUrl,\n onAuthenticationComplete,\n}) => {\n const { t } = useTranslations();\n const knock = useKnockClient();\n\n const {\n setConnectionStatus,\n connectionStatus,\n setActionLabel,\n actionLabel,\n errorLabel,\n } = useKnockSlackClient();\n\n const { buildSlackAuthUrl, disconnectFromSlack } = useSlackAuth(\n slackClientId,\n redirectUrl,\n );\n\n useEffect(() => {\n const receiveMessage = (event: MessageEvent) => {\n if (event.origin !== knock.host) {\n return;\n }\n\n try {\n if (event.data === \"authComplete\") {\n setConnectionStatus(\"connected\");\n }\n\n if (event.data === \"authFailed\") {\n setConnectionStatus(\"error\");\n }\n\n if (onAuthenticationComplete) {\n onAuthenticationComplete(event.data);\n }\n } catch (error) {\n setConnectionStatus(\"error\");\n }\n };\n\n window.addEventListener(\"message\", receiveMessage, false);\n\n // Cleanup the event listener when the component unmounts\n return () => {\n window.removeEventListener(\"message\", receiveMessage);\n };\n }, [knock.host, onAuthenticationComplete, setConnectionStatus]);\n\n const disconnectLabel = t(\"slackDisconnect\") || null;\n const reconnectLabel = t(\"slackReconnect\") || null;\n\n // Loading states\n if (\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\"\n ) {\n return (\n <div className=\"rsk-connect__button rsk-connect__button--loading\">\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span>\n {connectionStatus === \"connecting\"\n ? t(\"slackConnecting\")\n : t(\"slackDisconnecting\")}\n </span>\n </div>\n );\n }\n\n // Error state\n if (connectionStatus === \"error\") {\n return (\n <button\n onClick={() => openSlackOauthPopup(buildSlackAuthUrl())}\n className=\"rsk-connect__button rsk-connect__button--error\"\n onMouseEnter={() => setActionLabel(reconnectLabel)}\n onMouseLeave={() => setActionLabel(null)}\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span className=\"rsk-connect__button__text--error\">\n {actionLabel || errorLabel || t(\"slackError\")}\n </span>\n </button>\n );\n }\n\n // Disconnected state\n if (connectionStatus === \"disconnected\") {\n return (\n <button\n onClick={() => openSlackOauthPopup(buildSlackAuthUrl())}\n className=\"rsk-connect__button rsk-connect__button--disconnected\"\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span>{t(\"slackConnect\")}</span>\n </button>\n );\n }\n\n // Connected state\n return (\n <button\n onClick={disconnectFromSlack}\n className=\"rsk-connect__button rsk-connect__button--connected\"\n onMouseEnter={() => setActionLabel(disconnectLabel)}\n onMouseLeave={() => setActionLabel(null)}\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span className=\"rsk-connect__button__text--connected\">\n {actionLabel || t(\"slackConnected\")}\n </span>\n </button>\n );\n};\n"],"names":["openSlackOauthPopup","url","screenLeft","window","screenX","screenTop","screenY","innerWidth","document","documentElement","clientWidth","screen","width","innerHeight","clientHeight","height","left","features","open","SlackAuthButton","slackClientId","redirectUrl","onAuthenticationComplete","t","useTranslations","knock","useKnockClient","setConnectionStatus","connectionStatus","setActionLabel","actionLabel","errorLabel","useKnockSlackClient","buildSlackAuthUrl","disconnectFromSlack","useSlackAuth","useEffect","receiveMessage","event","origin","host","data","addEventListener","removeEventListener","disconnectLabel","reconnectLabel","React","SlackIcon"],"mappings":"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"}
1
+ {"version":3,"file":"SlackAuthButton.mjs","sources":["../../../../../../src/modules/slack/components/SlackAuthButton/SlackAuthButton.tsx"],"sourcesContent":["import {\n useKnockClient,\n useKnockSlackClient,\n useSlackAuth,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\nimport { useEffect } from \"react\";\n\nimport \"../../theme.css\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\nexport interface SlackAuthButtonProps {\n slackClientId: string;\n redirectUrl?: string;\n onAuthenticationComplete?: (authenticationResp: string) => void;\n}\n\nconst openSlackOauthPopup = (url: string) => {\n const width = 600;\n const height = 800;\n // Calculate the position to center the window\n const screenLeft = window.screenLeft ?? window.screenX;\n const screenTop = window.screenTop ?? window.screenY;\n\n const innerWidth =\n window.innerWidth ?? document.documentElement.clientWidth ?? screen.width;\n const innerHeight =\n window.innerHeight ??\n document.documentElement.clientHeight ??\n screen.height;\n\n const left = innerWidth / 2 - width / 2 + screenLeft;\n const top = innerHeight / 2 - height / 2 + screenTop;\n\n // Window features\n const features = `width=${width},height=${height},top=${top},left=${left}`;\n\n window.open(url, \"Slack OAuth\", features);\n};\n\nexport const SlackAuthButton: FunctionComponent<SlackAuthButtonProps> = ({\n slackClientId,\n redirectUrl,\n onAuthenticationComplete,\n}) => {\n const { t } = useTranslations();\n const knock = useKnockClient();\n\n const {\n setConnectionStatus,\n connectionStatus,\n setActionLabel,\n actionLabel,\n errorLabel,\n } = useKnockSlackClient();\n\n const { buildSlackAuthUrl, disconnectFromSlack } = useSlackAuth(\n slackClientId,\n redirectUrl,\n );\n\n useEffect(() => {\n const receiveMessage = (event: MessageEvent) => {\n if (event.origin !== knock.host) {\n return;\n }\n\n try {\n if (event.data === \"authComplete\") {\n setConnectionStatus(\"connected\");\n }\n\n if (event.data === \"authFailed\") {\n setConnectionStatus(\"error\");\n }\n\n if (onAuthenticationComplete) {\n onAuthenticationComplete(event.data);\n }\n } catch (error) {\n setConnectionStatus(\"error\");\n }\n };\n\n window.addEventListener(\"message\", receiveMessage, false);\n\n // Cleanup the event listener when the component unmounts\n return () => {\n window.removeEventListener(\"message\", receiveMessage);\n };\n }, [knock.host, onAuthenticationComplete, setConnectionStatus]);\n\n const disconnectLabel = t(\"slackDisconnect\") || null;\n const reconnectLabel = t(\"slackReconnect\") || null;\n\n // Loading states\n if (\n connectionStatus === \"connecting\" ||\n connectionStatus === \"disconnecting\"\n ) {\n return (\n <div className=\"rsk-connect__button rsk-connect__button--loading\">\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span>\n {connectionStatus === \"connecting\"\n ? t(\"slackConnecting\")\n : t(\"slackDisconnecting\")}\n </span>\n </div>\n );\n }\n\n // Error state\n if (connectionStatus === \"error\") {\n return (\n <button\n onClick={() => openSlackOauthPopup(buildSlackAuthUrl())}\n className=\"rsk-connect__button rsk-connect__button--error\"\n onMouseEnter={() => setActionLabel(reconnectLabel)}\n onMouseLeave={() => setActionLabel(null)}\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span className=\"rsk-connect__button__text--error\">\n {actionLabel || errorLabel || t(\"slackError\")}\n </span>\n </button>\n );\n }\n\n // Disconnected state\n if (connectionStatus === \"disconnected\") {\n return (\n <button\n onClick={() => openSlackOauthPopup(buildSlackAuthUrl())}\n className=\"rsk-connect__button rsk-connect__button--disconnected\"\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span>{t(\"slackConnect\")}</span>\n </button>\n );\n }\n\n // Connected state\n return (\n <button\n onClick={disconnectFromSlack}\n className=\"rsk-connect__button rsk-connect__button--connected\"\n onMouseEnter={() => setActionLabel(disconnectLabel)}\n onMouseLeave={() => setActionLabel(null)}\n >\n <SlackIcon height=\"16px\" width=\"16px\" />\n <span className=\"rsk-connect__button__text--connected\">\n {actionLabel || t(\"slackConnected\")}\n </span>\n </button>\n );\n};\n"],"names":["openSlackOauthPopup","url","screenLeft","window","screenX","screenTop","screenY","innerWidth","document","documentElement","clientWidth","screen","width","innerHeight","clientHeight","height","left","features","open","SlackAuthButton","slackClientId","redirectUrl","onAuthenticationComplete","t","useTranslations","knock","useKnockClient","setConnectionStatus","connectionStatus","setActionLabel","actionLabel","errorLabel","useKnockSlackClient","buildSlackAuthUrl","disconnectFromSlack","useSlackAuth","useEffect","receiveMessage","event","origin","host","data","addEventListener","removeEventListener","disconnectLabel","reconnectLabel","React","SlackIcon"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackAuthContainer.mjs","sources":["../../../../../../src/modules/slack/components/SlackAuthContainer/SlackAuthContainer.tsx"],"sourcesContent":["import { useTranslations } from \"@knocklabs/react-core\";\n\nimport \"../../theme.css\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\nexport const SlackAuthContainer = ({\n actionButton,\n}: {\n actionButton: React.ReactElement;\n}) => {\n const { t } = useTranslations();\n\n return (\n <div className=\"rsk-auth\">\n <div className=\"rsk-auth__header\">\n <SlackIcon height=\"32px\" width=\"32px\" />\n <div>{actionButton}</div>\n </div>\n <div className=\"rsk-auth__title\">Slack</div>\n <div className=\"rsk-auth__description\">\n {t(\"slackConnectContainerDescription\")}\n </div>\n </div>\n );\n};\n"],"names":["SlackAuthContainer","actionButton","t","useTranslations","React","SlackIcon"],"mappings":";;;;;AAOO,MAAMA,IAAqBA,CAAC;AAAA,EACjCC,cAAAA;AAGF,MAAM;AACE,QAAA;AAAA,IAAEC,GAAAA;AAAAA,MAAMC,EAAgB;AAE9B,SACGC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,8CACZ,OAAI,EAAA,WAAU,mBACb,GAAAA,gBAAAA,EAAA,cAACC,GAAU,EAAA,QAAO,QAAO,OAAM,QAAM,GACrCD,gBAAAA,EAAA,cAAC,OAAKH,MAAAA,CAAa,CACrB,GACCG,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,kBAAkB,GAAA,OAAK,GACtCA,gBAAAA,EAAA,cAAC,SAAI,WAAU,wBAAA,GACZF,EAAE,kCAAkC,CACvC,CACF;AAEJ;"}
1
+ {"version":3,"file":"SlackAuthContainer.mjs","sources":["../../../../../../src/modules/slack/components/SlackAuthContainer/SlackAuthContainer.tsx"],"sourcesContent":["import { useTranslations } from \"@knocklabs/react-core\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\nimport { SlackIcon } from \"../SlackIcon\";\n\nimport \"./styles.css\";\n\nexport interface SlackAuthContainerProps {\n actionButton: React.ReactElement;\n}\n\nexport const SlackAuthContainer: FunctionComponent<SlackAuthContainerProps> = ({\n actionButton,\n}) => {\n const { t } = useTranslations();\n\n return (\n <div className=\"rsk-auth\">\n <div className=\"rsk-auth__header\">\n <SlackIcon height=\"32px\" width=\"32px\" />\n <div>{actionButton}</div>\n </div>\n <div className=\"rsk-auth__title\">Slack</div>\n <div className=\"rsk-auth__description\">\n {t(\"slackConnectContainerDescription\")}\n </div>\n </div>\n );\n};\n"],"names":["SlackAuthContainer","actionButton","t","useTranslations","React","SlackIcon"],"mappings":";;;;;AAYO,MAAMA,IAAiEA,CAAC;AAAA,EAC7EC,cAAAA;AACF,MAAM;AACE,QAAA;AAAA,IAAEC,GAAAA;AAAAA,MAAMC,EAAgB;AAE9B,SACGC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,8CACZ,OAAI,EAAA,WAAU,mBACb,GAAAA,gBAAAA,EAAA,cAACC,GAAU,EAAA,QAAO,QAAO,OAAM,QAAM,GACrCD,gBAAAA,EAAA,cAAC,OAAKH,MAAAA,CAAa,CACrB,GACCG,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,kBAAkB,GAAA,OAAK,GACtCA,gBAAAA,EAAA,cAAC,SAAI,WAAU,wBAAA,GACZF,EAAE,kCAAkC,CACvC,CACF;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackChannelCombobox.mjs","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport {\n ContainerObject,\n SlackChannelQueryOptions,\n useConnectedSlackChannels,\n useKnockSlackClient,\n useSlackChannels,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport * as Popover from \"@radix-ui/react-popover\";\nimport * as VisuallyHidden from \"@radix-ui/react-visually-hidden\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { Spinner, useOutsideClick } from \"../../../core\";\nimport \"../../theme.css\";\nimport SlackAddChannelInput from \"../SlackAddChannelInput/SlackAddChannelInput\";\n\nimport SlackChannelListBox from \"./SlackChannelListBox\";\nimport SlackConnectedChannelTagList from \"./SlackConnectedChannelTagList\";\nimport SlackConnectionError from \"./SlackConnectionError\";\nimport { strContains } from \"./helpers\";\nimport SearchIcon from \"./icons/SearchIcon\";\nimport \"./styles.css\";\n\nconst MAX_ALLOWED_CHANNELS = 1000;\n\ntype SlackChannelComboboxInputMessages = {\n disconnected: string;\n error: string;\n singleChannelConnected: string;\n multipleChannelsConnected: string;\n noChannelsConnected: string;\n noSlackChannelsFound: string;\n};\n\ntype Props = {\n slackChannelsRecipientObject: ContainerObject;\n queryOptions?: SlackChannelQueryOptions;\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n inputContainerProps?: React.HTMLAttributes<HTMLDivElement>;\n listBoxProps?: React.HTMLAttributes<HTMLDivElement>;\n channelOptionProps?: React.HtmlHTMLAttributes<HTMLButtonElement>;\n inputMessages?: SlackChannelComboboxInputMessages;\n showConnectedChannelTags?: boolean;\n};\n\nexport const SlackChannelCombobox = ({\n slackChannelsRecipientObject,\n queryOptions,\n inputProps,\n inputContainerProps,\n listBoxProps,\n channelOptionProps,\n inputMessages,\n showConnectedChannelTags = false,\n}: Props) => {\n const { t } = useTranslations();\n\n const [comboboxListOpen, setComboboxListOpen] = useState<boolean>(false);\n const [inputValue, setInputValue] = useState(\"\");\n\n // Used to close the combobox when clicking outside of it\n const comboboxRef = useRef(null);\n useOutsideClick({\n ref: comboboxRef,\n fn: () => {\n setInputValue(\"\");\n setComboboxListOpen(false);\n },\n });\n\n // Gather API data\n const { connectionStatus, errorLabel: connectionErrorLabel } =\n useKnockSlackClient();\n\n const { data: slackChannels, isLoading: slackChannelsLoading } =\n useSlackChannels({ queryOptions });\n\n const {\n data: connectedChannels,\n updateConnectedChannels,\n loading: connectedChannelsLoading,\n error: connectedChannelsError,\n updating: connectedChannelsUpdating,\n } = useConnectedSlackChannels({ slackChannelsRecipientObject });\n\n const [currentConnectedChannels, setCurrentConnectedChannels] = useState<\n SlackChannelConnection[] | null\n >(null);\n\n useEffect(() => {\n if (comboboxListOpen) {\n // Timeout to allow for the state to update and the component to re-render\n // when we change the `comboboxListOpen` state upon focus\n setTimeout(() => {\n document.getElementById(\"slack-channel-search\")?.focus();\n }, 0);\n }\n }, [comboboxListOpen]);\n\n useEffect(() => {\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 const channels =\n connectedChannels?.filter((connectedChannel) => {\n return slackChannelsMap.has(connectedChannel.channel_id || \"\");\n }) || [];\n\n setCurrentConnectedChannels(channels);\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 multipleChannelsConnected: t(\"slackSearchbarMultipleChannels\"),\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 if (connectedChannelsError) {\n return connectedChannelsError;\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 if (currentConnectedChannels && numberConnectedChannels === 1) {\n const connectedChannel = slackChannels?.find(\n (slackChannel) =>\n slackChannel.id === currentConnectedChannels[0]?.channel_id,\n );\n\n return (\n inputMessages?.singleChannelConnected || `# ${connectedChannel?.name}`\n );\n }\n\n if (currentConnectedChannels && numberConnectedChannels > 1) {\n return (\n inputMessages?.multipleChannelsConnected ||\n `${numberConnectedChannels} channels connected`\n );\n }\n\n return \"\";\n }, [\n connectionStatus,\n inLoadingState,\n slackChannels,\n connectedChannelsError,\n currentConnectedChannels,\n inputMessages,\n connectionErrorLabel,\n t,\n ]);\n\n // Handle channel click\n const handleOptionClick = async (channelId: string) => {\n if (!currentConnectedChannels) {\n return;\n }\n\n const isChannelConnected = currentConnectedChannels.find(\n (channel) => channel.channel_id === channelId,\n );\n\n if (isChannelConnected) {\n const channelsToSendToKnock = currentConnectedChannels.filter(\n (connectedChannel) => connectedChannel.channel_id !== channelId,\n );\n\n setCurrentConnectedChannels(channelsToSendToKnock);\n updateConnectedChannels(channelsToSendToKnock);\n } else {\n const channelsToSendToKnock = [\n ...currentConnectedChannels,\n { channel_id: channelId } as SlackChannelConnection,\n ];\n\n setCurrentConnectedChannels(channelsToSendToKnock);\n updateConnectedChannels(channelsToSendToKnock);\n }\n };\n\n // Handle channel search\n const matchedChannels = slackChannels.filter((slackChannel) =>\n strContains(slackChannel.name, inputValue),\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 <div ref={comboboxRef} className=\"rsk-combobox\">\n <Popover.Root\n open={connectionStatus !== \"disconnected\" ? comboboxListOpen : false}\n >\n <VisuallyHidden.Root>\n <label htmlFor=\"slack-channel-search\">\n {t(\"slackSearchChannels\")}\n </label>\n </VisuallyHidden.Root>\n <Popover.Trigger asChild>\n <div className=\"rsk-combobox__searchbar\">\n <div\n className={\"rsk-combobox__searchbar__input-container\"}\n {...inputContainerProps}\n >\n <div\n className={`rsk-combobox__searchbar__input-container__icon ${inErrorState && \"rsk-combobox__searchbar__input-container__icon--error\"}`}\n >\n {inLoadingState ? (\n <Spinner size=\"15px\" thickness={3} />\n ) : (\n <SearchIcon />\n )}\n </div>\n\n <input\n className={`rsk-combobox__searchbar__input-container__input ${inErrorState ? \"rsk-combobox__searchbar__input-container__input--error\" : \"\"}`}\n tabIndex={-1}\n id=\"slack-channel-search\"\n type=\"text\"\n onFocus={() =>\n slackChannels.length > 0 && setComboboxListOpen(true)\n }\n onChange={(e) => setInputValue(e.target.value)}\n value={inputValue}\n placeholder={searchPlaceholder || \"\"}\n disabled={!!inErrorState}\n {...inputProps}\n />\n </div>\n\n <SlackConnectionError />\n </div>\n </Popover.Trigger>\n\n <Popover.Content>\n <SlackChannelListBox\n isLoading={slackChannelsLoading || connectedChannelsLoading}\n isUpdating={connectedChannelsUpdating}\n connectedChannels={currentConnectedChannels}\n onClick={handleOptionClick}\n slackChannels={matchedChannels}\n listBoxProps={listBoxProps}\n channelOptionProps={channelOptionProps}\n />\n </Popover.Content>\n </Popover.Root>\n {showConnectedChannelTags && (\n <SlackConnectedChannelTagList\n connectedChannels={currentConnectedChannels}\n slackChannels={slackChannels}\n updateConnectedChannels={handleOptionClick}\n />\n )}\n </div>\n );\n};\n"],"names":["MAX_ALLOWED_CHANNELS","SlackChannelCombobox","slackChannelsRecipientObject","queryOptions","inputProps","inputContainerProps","listBoxProps","channelOptionProps","inputMessages","showConnectedChannelTags","t","useTranslations","comboboxListOpen","setComboboxListOpen","useState","inputValue","setInputValue","comboboxRef","useRef","useOutsideClick","ref","fn","connectionStatus","errorLabel","connectionErrorLabel","useKnockSlackClient","data","slackChannels","isLoading","slackChannelsLoading","useSlackChannels","connectedChannels","updateConnectedChannels","loading","connectedChannelsLoading","error","connectedChannelsError","updating","connectedChannelsUpdating","useConnectedSlackChannels","currentConnectedChannels","setCurrentConnectedChannels","useEffect","setTimeout","getElementById","focus","slackChannelsMap","Map","map","channel","id","channels","filter","connectedChannel","has","channel_id","inErrorState","useMemo","inLoadingState","searchPlaceholder","DEFAULT_INPUT_MESSAGES","disconnected","multipleChannelsConnected","noChannelsConnected","noSlackChannelsFound","channelsError","length","numberConnectedChannels","find","slackChannel","singleChannelConnected","name","handleOptionClick","channelId","channelsToSendToKnock","matchedChannels","strContains","React","SlackAddChannelInput","Popover","VisuallyHidden","Spinner","SearchIcon","e","target","value","SlackConnectionError","SlackChannelListBox","SlackConnectedChannelTagList"],"mappings":"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"}
1
+ {"version":3,"file":"SlackChannelCombobox.mjs","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelCombobox.tsx"],"sourcesContent":["import { SlackChannelConnection } from \"@knocklabs/client\";\nimport {\n ContainerObject,\n SlackChannelQueryOptions,\n useConnectedSlackChannels,\n useKnockSlackClient,\n useSlackChannels,\n useTranslations,\n} from \"@knocklabs/react-core\";\nimport * as Popover from \"@radix-ui/react-popover\";\nimport * as VisuallyHidden from \"@radix-ui/react-visually-hidden\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport { FunctionComponent } from \"react\";\n\nimport { Spinner, useOutsideClick } from \"../../../core\";\nimport \"../../theme.css\";\nimport SlackAddChannelInput from \"../SlackAddChannelInput/SlackAddChannelInput\";\n\nimport SlackChannelListBox from \"./SlackChannelListBox\";\nimport SlackConnectedChannelTagList from \"./SlackConnectedChannelTagList\";\nimport SlackConnectionError from \"./SlackConnectionError\";\nimport { strContains } from \"./helpers\";\nimport SearchIcon from \"./icons/SearchIcon\";\nimport \"./styles.css\";\n\nconst MAX_ALLOWED_CHANNELS = 1000;\n\nexport type SlackChannelComboboxInputMessages = {\n disconnected: string;\n error: string;\n singleChannelConnected: string;\n multipleChannelsConnected: string;\n noChannelsConnected: string;\n noSlackChannelsFound: string;\n};\n\nexport interface SlackChannelComboboxProps {\n slackChannelsRecipientObject: ContainerObject;\n queryOptions?: SlackChannelQueryOptions;\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n inputContainerProps?: React.HTMLAttributes<HTMLDivElement>;\n listBoxProps?: React.HTMLAttributes<HTMLDivElement>;\n channelOptionProps?: React.HtmlHTMLAttributes<HTMLButtonElement>;\n inputMessages?: SlackChannelComboboxInputMessages;\n showConnectedChannelTags?: boolean;\n}\n\nexport const SlackChannelCombobox: FunctionComponent<\n SlackChannelComboboxProps\n> = ({\n slackChannelsRecipientObject,\n queryOptions,\n inputProps,\n inputContainerProps,\n listBoxProps,\n channelOptionProps,\n inputMessages,\n showConnectedChannelTags = false,\n}) => {\n const { t } = useTranslations();\n\n const [comboboxListOpen, setComboboxListOpen] = useState<boolean>(false);\n const [inputValue, setInputValue] = useState(\"\");\n\n // Used to close the combobox when clicking outside of it\n const comboboxRef = useRef(null);\n useOutsideClick({\n ref: comboboxRef,\n fn: () => {\n setInputValue(\"\");\n setComboboxListOpen(false);\n },\n });\n\n // Gather API data\n const { connectionStatus, errorLabel: connectionErrorLabel } =\n useKnockSlackClient();\n\n const { data: slackChannels, isLoading: slackChannelsLoading } =\n useSlackChannels({ queryOptions });\n\n const {\n data: connectedChannels,\n updateConnectedChannels,\n loading: connectedChannelsLoading,\n error: connectedChannelsError,\n updating: connectedChannelsUpdating,\n } = useConnectedSlackChannels({ slackChannelsRecipientObject });\n\n const [currentConnectedChannels, setCurrentConnectedChannels] = useState<\n SlackChannelConnection[] | null\n >(null);\n\n useEffect(() => {\n if (comboboxListOpen) {\n // Timeout to allow for the state to update and the component to re-render\n // when we change the `comboboxListOpen` state upon focus\n setTimeout(() => {\n document.getElementById(\"slack-channel-search\")?.focus();\n }, 0);\n }\n }, [comboboxListOpen]);\n\n useEffect(() => {\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 const channels =\n connectedChannels?.filter((connectedChannel) => {\n return slackChannelsMap.has(connectedChannel.channel_id || \"\");\n }) || [];\n\n setCurrentConnectedChannels(channels);\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 multipleChannelsConnected: t(\"slackSearchbarMultipleChannels\"),\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 if (connectedChannelsError) {\n return connectedChannelsError;\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 if (currentConnectedChannels && numberConnectedChannels === 1) {\n const connectedChannel = slackChannels?.find(\n (slackChannel) =>\n slackChannel.id === currentConnectedChannels[0]?.channel_id,\n );\n\n return (\n inputMessages?.singleChannelConnected || `# ${connectedChannel?.name}`\n );\n }\n\n if (currentConnectedChannels && numberConnectedChannels > 1) {\n return (\n inputMessages?.multipleChannelsConnected ||\n `${numberConnectedChannels} channels connected`\n );\n }\n\n return \"\";\n }, [\n connectionStatus,\n inLoadingState,\n slackChannels,\n connectedChannelsError,\n currentConnectedChannels,\n inputMessages,\n connectionErrorLabel,\n t,\n ]);\n\n // Handle channel click\n const handleOptionClick = async (channelId: string) => {\n if (!currentConnectedChannels) {\n return;\n }\n\n const isChannelConnected = currentConnectedChannels.find(\n (channel) => channel.channel_id === channelId,\n );\n\n if (isChannelConnected) {\n const channelsToSendToKnock = currentConnectedChannels.filter(\n (connectedChannel) => connectedChannel.channel_id !== channelId,\n );\n\n setCurrentConnectedChannels(channelsToSendToKnock);\n updateConnectedChannels(channelsToSendToKnock);\n } else {\n const channelsToSendToKnock = [\n ...currentConnectedChannels,\n { channel_id: channelId } as SlackChannelConnection,\n ];\n\n setCurrentConnectedChannels(channelsToSendToKnock);\n updateConnectedChannels(channelsToSendToKnock);\n }\n };\n\n // Handle channel search\n const matchedChannels = slackChannels.filter((slackChannel) =>\n strContains(slackChannel.name, inputValue),\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 <div ref={comboboxRef} className=\"rsk-combobox\">\n <Popover.Root\n open={connectionStatus !== \"disconnected\" ? comboboxListOpen : false}\n >\n <VisuallyHidden.Root>\n <label htmlFor=\"slack-channel-search\">\n {t(\"slackSearchChannels\")}\n </label>\n </VisuallyHidden.Root>\n <Popover.Trigger asChild>\n <div className=\"rsk-combobox__searchbar\">\n <div\n className={\"rsk-combobox__searchbar__input-container\"}\n {...inputContainerProps}\n >\n <div\n className={`rsk-combobox__searchbar__input-container__icon ${inErrorState && \"rsk-combobox__searchbar__input-container__icon--error\"}`}\n >\n {inLoadingState ? (\n <Spinner size=\"15px\" thickness={3} />\n ) : (\n <SearchIcon />\n )}\n </div>\n\n <input\n className={`rsk-combobox__searchbar__input-container__input ${inErrorState ? \"rsk-combobox__searchbar__input-container__input--error\" : \"\"}`}\n tabIndex={-1}\n id=\"slack-channel-search\"\n type=\"text\"\n onFocus={() =>\n slackChannels.length > 0 && setComboboxListOpen(true)\n }\n onChange={(e) => setInputValue(e.target.value)}\n value={inputValue}\n placeholder={searchPlaceholder || \"\"}\n disabled={!!inErrorState}\n {...inputProps}\n />\n </div>\n\n <SlackConnectionError />\n </div>\n </Popover.Trigger>\n\n <Popover.Content>\n <SlackChannelListBox\n isLoading={slackChannelsLoading || connectedChannelsLoading}\n isUpdating={connectedChannelsUpdating}\n connectedChannels={currentConnectedChannels}\n onClick={handleOptionClick}\n slackChannels={matchedChannels}\n listBoxProps={listBoxProps}\n channelOptionProps={channelOptionProps}\n />\n </Popover.Content>\n </Popover.Root>\n {showConnectedChannelTags && (\n <SlackConnectedChannelTagList\n connectedChannels={currentConnectedChannels}\n slackChannels={slackChannels}\n updateConnectedChannels={handleOptionClick}\n />\n )}\n </div>\n );\n};\n"],"names":["MAX_ALLOWED_CHANNELS","SlackChannelCombobox","slackChannelsRecipientObject","queryOptions","inputProps","inputContainerProps","listBoxProps","channelOptionProps","inputMessages","showConnectedChannelTags","t","useTranslations","comboboxListOpen","setComboboxListOpen","useState","inputValue","setInputValue","comboboxRef","useRef","useOutsideClick","ref","fn","connectionStatus","errorLabel","connectionErrorLabel","useKnockSlackClient","data","slackChannels","isLoading","slackChannelsLoading","useSlackChannels","connectedChannels","updateConnectedChannels","loading","connectedChannelsLoading","error","connectedChannelsError","updating","connectedChannelsUpdating","useConnectedSlackChannels","currentConnectedChannels","setCurrentConnectedChannels","useEffect","setTimeout","getElementById","focus","slackChannelsMap","Map","map","channel","id","channels","filter","connectedChannel","has","channel_id","inErrorState","useMemo","inLoadingState","searchPlaceholder","DEFAULT_INPUT_MESSAGES","disconnected","multipleChannelsConnected","noChannelsConnected","noSlackChannelsFound","channelsError","length","numberConnectedChannels","find","slackChannel","singleChannelConnected","name","handleOptionClick","channelId","channelsToSendToKnock","matchedChannels","strContains","React","SlackAddChannelInput","Popover","VisuallyHidden","Spinner","SearchIcon","e","target","value","SlackConnectionError","SlackChannelListBox","SlackConnectedChannelTagList"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlackChannelListBox.mjs","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.tsx"],"sourcesContent":["import { SlackChannel, SlackChannelConnection } from \"@knocklabs/client\";\n\nimport \"../../theme.css\";\n\nimport SlackChannelOption from \"./SlackChannelOption\";\nimport \"./styles.css\";\n\ntype Props = {\n slackChannels: SlackChannel[];\n isLoading: boolean;\n connectedChannels: SlackChannelConnection[] | null;\n onClick: (channelId: string) => void;\n listBoxProps?: React.HTMLAttributes<HTMLDivElement>;\n channelOptionProps?: React.HtmlHTMLAttributes<HTMLButtonElement>;\n isUpdating: boolean;\n};\n\nconst SlackChannelListBox = ({\n slackChannels,\n isLoading,\n connectedChannels,\n onClick,\n listBoxProps,\n channelOptionProps,\n isUpdating,\n}: Props) => {\n return (\n <div className=\"rsk-combobox__list-box\" {...listBoxProps}>\n {slackChannels.map((channel) => {\n return (\n <SlackChannelOption\n key={channel.id}\n tabIndex={0}\n channel={channel}\n isLoading={isLoading}\n isConnected={\n !!connectedChannels?.find(\n (connectedChannel) =>\n connectedChannel.channel_id === channel.id,\n )\n }\n onClick={onClick}\n channelOptionProps={channelOptionProps}\n isUpdating={isUpdating}\n />\n );\n })}\n </div>\n );\n};\n\nexport default SlackChannelListBox;\n"],"names":["SlackChannelListBox","slackChannels","isLoading","connectedChannels","onClick","listBoxProps","channelOptionProps","isUpdating","React","map","channel","SlackChannelOption","id","find","connectedChannel","channel_id"],"mappings":";;;;AAiBA,MAAMA,IAAsBA,CAAC;AAAA,EAC3BC,eAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,mBAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,oBAAAA;AAAAA,EACAC,YAAAA;AACK,MAEHC,gBAAAA,EAAA,cAAC,SAAI,WAAU,0BAA6BH,GAAAA,KACzCJ,EAAcQ,IAAKC,CAAYA,MAE5BF,gBAAAA,EAAA,cAACG,KACC,KAAKD,EAAQE,IACb,UAAU,GACV,SAAAF,GACA,WAAAR,GACA,aACE,CAAC,EAACC,KAAAA,QAAAA,EAAmBU,KAClBC,OACCA,EAAiBC,eAAeL,EAAQE,MAG9C,SAAAR,GACA,oBAAAE,GACA,YAAAC,EACA,CAAA,CAEL,CACH;"}
1
+ {"version":3,"file":"SlackChannelListBox.mjs","sources":["../../../../../../src/modules/slack/components/SlackChannelCombobox/SlackChannelListBox.tsx"],"sourcesContent":["import { SlackChannel, SlackChannelConnection } from \"@knocklabs/client\";\nimport { FunctionComponent } from \"react\";\n\nimport \"../../theme.css\";\n\nimport SlackChannelOption from \"./SlackChannelOption\";\nimport \"./styles.css\";\n\nexport interface SlackChannelListBoxProps {\n slackChannels: SlackChannel[];\n isLoading: boolean;\n connectedChannels: SlackChannelConnection[] | null;\n onClick: (channelId: string) => void;\n listBoxProps?: React.HTMLAttributes<HTMLDivElement>;\n channelOptionProps?: React.HtmlHTMLAttributes<HTMLButtonElement>;\n isUpdating: boolean;\n}\n\nconst SlackChannelListBox: FunctionComponent<SlackChannelListBoxProps> = ({\n slackChannels,\n isLoading,\n connectedChannels,\n onClick,\n listBoxProps,\n channelOptionProps,\n isUpdating,\n}) => {\n return (\n <div className=\"rsk-combobox__list-box\" {...listBoxProps}>\n {slackChannels.map((channel) => {\n return (\n <SlackChannelOption\n key={channel.id}\n tabIndex={0}\n channel={channel}\n isLoading={isLoading}\n isConnected={\n !!connectedChannels?.find(\n (connectedChannel) =>\n connectedChannel.channel_id === channel.id,\n )\n }\n onClick={onClick}\n channelOptionProps={channelOptionProps}\n isUpdating={isUpdating}\n />\n );\n })}\n </div>\n );\n};\n\nexport default SlackChannelListBox;\n"],"names":["SlackChannelListBox","slackChannels","isLoading","connectedChannels","onClick","listBoxProps","channelOptionProps","isUpdating","React","map","channel","SlackChannelOption","id","find","connectedChannel","channel_id"],"mappings":";;;;AAkBA,MAAMA,IAAmEA,CAAC;AAAA,EACxEC,eAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,mBAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,oBAAAA;AAAAA,EACAC,YAAAA;AACF,MAEIC,gBAAAA,EAAA,cAAC,SAAI,WAAU,0BAA6BH,GAAAA,KACzCJ,EAAcQ,IAAKC,CAAYA,MAE5BF,gBAAAA,EAAA,cAACG,KACC,KAAKD,EAAQE,IACb,UAAU,GACV,SAAAF,GACA,WAAAR,GACA,aACE,CAAC,EAACC,KAAAA,QAAAA,EAAmBU,KAClBC,OACCA,EAAiBC,eAAeL,EAAQE,MAG9C,SAAAR,GACA,oBAAAE,GACA,YAAAC,EACA,CAAA,CAEL,CACH;"}