@hiver/connector-agent 4.16.1 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/README.md +9 -9
  2. package/app/omni-slack/SlackConnectModalIsland.d.ts +26 -0
  3. package/app/omni-slack/SlackConnectModalIsland.d.ts.map +1 -0
  4. package/app/omni-slack/index.d.ts +14 -0
  5. package/app/omni-slack/index.d.ts.map +1 -0
  6. package/app/omni-slack/provider.d.ts +15 -0
  7. package/app/omni-slack/provider.d.ts.map +1 -0
  8. package/constants/tracking-events.d.ts +8 -0
  9. package/constants/tracking-events.d.ts.map +1 -1
  10. package/features/email-logger/omni/components/LogEmailPill.d.ts.map +1 -1
  11. package/features/email-logger/omni/components/LogEmailPill.test.d.ts +2 -0
  12. package/features/email-logger/omni/components/LogEmailPill.test.d.ts.map +1 -0
  13. package/features/slack/api/channels.d.ts +11 -0
  14. package/features/slack/api/channels.d.ts.map +1 -0
  15. package/features/slack/api/conversations.d.ts +41 -0
  16. package/features/slack/api/conversations.d.ts.map +1 -0
  17. package/features/slack/api/effective-config.d.ts +21 -0
  18. package/features/slack/api/effective-config.d.ts.map +1 -0
  19. package/features/slack/api/index.d.ts +4 -0
  20. package/features/slack/api/index.d.ts.map +1 -0
  21. package/features/slack/api/linked-conv.d.ts +33 -0
  22. package/features/slack/api/linked-conv.d.ts.map +1 -0
  23. package/features/slack/api/members.d.ts +10 -0
  24. package/features/slack/api/members.d.ts.map +1 -0
  25. package/features/slack/api/messages.d.ts +10 -0
  26. package/features/slack/api/messages.d.ts.map +1 -0
  27. package/features/slack/api/normalise.d.ts +3 -0
  28. package/features/slack/api/normalise.d.ts.map +1 -0
  29. package/features/slack/api/users.d.ts +11 -0
  30. package/features/slack/api/users.d.ts.map +1 -0
  31. package/features/slack/avatar/SlackAvatar.d.ts +20 -0
  32. package/features/slack/avatar/SlackAvatar.d.ts.map +1 -0
  33. package/features/slack/avatar/cache.d.ts +10 -0
  34. package/features/slack/avatar/cache.d.ts.map +1 -0
  35. package/features/slack/avatar/index.d.ts +2 -0
  36. package/features/slack/avatar/index.d.ts.map +1 -0
  37. package/features/slack/components/AnimatedDots.d.ts +2 -0
  38. package/features/slack/components/AnimatedDots.d.ts.map +1 -0
  39. package/features/slack/components/HeroIllustration.d.ts +14 -0
  40. package/features/slack/components/HeroIllustration.d.ts.map +1 -0
  41. package/features/slack/components/LinkedConversationPanel/ChannelStateView.d.ts +21 -0
  42. package/features/slack/components/LinkedConversationPanel/ChannelStateView.d.ts.map +1 -0
  43. package/features/slack/components/LinkedConversationPanel/ChannelThreadGroup.d.ts +28 -0
  44. package/features/slack/components/LinkedConversationPanel/ChannelThreadGroup.d.ts.map +1 -0
  45. package/features/slack/components/LinkedConversationPanel/Composer.d.ts +50 -0
  46. package/features/slack/components/LinkedConversationPanel/Composer.d.ts.map +1 -0
  47. package/features/slack/components/LinkedConversationPanel/ConfirmDeleteModal.d.ts +24 -0
  48. package/features/slack/components/LinkedConversationPanel/ConfirmDeleteModal.d.ts.map +1 -0
  49. package/features/slack/components/LinkedConversationPanel/DeletedTombstone.d.ts +16 -0
  50. package/features/slack/components/LinkedConversationPanel/DeletedTombstone.d.ts.map +1 -0
  51. package/features/slack/components/LinkedConversationPanel/LoadOlderMessages.d.ts +16 -0
  52. package/features/slack/components/LinkedConversationPanel/LoadOlderMessages.d.ts.map +1 -0
  53. package/features/slack/components/LinkedConversationPanel/MentionPicker.d.ts +27 -0
  54. package/features/slack/components/LinkedConversationPanel/MentionPicker.d.ts.map +1 -0
  55. package/features/slack/components/LinkedConversationPanel/MessageItem.d.ts +31 -0
  56. package/features/slack/components/LinkedConversationPanel/MessageItem.d.ts.map +1 -0
  57. package/features/slack/components/LinkedConversationPanel/NotMemberTooltip.d.ts +5 -0
  58. package/features/slack/components/LinkedConversationPanel/NotMemberTooltip.d.ts.map +1 -0
  59. package/features/slack/components/LinkedConversationPanel/ReconnectSlackBanner.d.ts +15 -0
  60. package/features/slack/components/LinkedConversationPanel/ReconnectSlackBanner.d.ts.map +1 -0
  61. package/features/slack/components/LinkedConversationPanel/ThreadDetailView.d.ts +18 -0
  62. package/features/slack/components/LinkedConversationPanel/ThreadDetailView.d.ts.map +1 -0
  63. package/features/slack/components/LinkedConversationPanel/ThreadSkeleton.d.ts +3 -0
  64. package/features/slack/components/LinkedConversationPanel/ThreadSkeleton.d.ts.map +1 -0
  65. package/features/slack/components/LinkedConversationPanel/__tests__/MessageItem.test.d.ts +2 -0
  66. package/features/slack/components/LinkedConversationPanel/__tests__/MessageItem.test.d.ts.map +1 -0
  67. package/features/slack/components/LinkedConversationPanel/index.d.ts +27 -0
  68. package/features/slack/components/LinkedConversationPanel/index.d.ts.map +1 -0
  69. package/features/slack/components/LinkedConversationPanel/style.d.ts +114 -0
  70. package/features/slack/components/LinkedConversationPanel/style.d.ts.map +1 -0
  71. package/features/slack/components/SlackConnectModal.d.ts +29 -0
  72. package/features/slack/components/SlackConnectModal.d.ts.map +1 -0
  73. package/features/slack/components/SlackConversationTab.d.ts +10 -0
  74. package/features/slack/components/SlackConversationTab.d.ts.map +1 -0
  75. package/features/slack/components/SlackLogo.d.ts +11 -0
  76. package/features/slack/components/SlackLogo.d.ts.map +1 -0
  77. package/features/slack/components/StartModal/MemberSelect.d.ts +9 -0
  78. package/features/slack/components/StartModal/MemberSelect.d.ts.map +1 -0
  79. package/features/slack/components/StartModal/MentionTextarea.d.ts +28 -0
  80. package/features/slack/components/StartModal/MentionTextarea.d.ts.map +1 -0
  81. package/features/slack/components/StartModal/SelectField.d.ts +19 -0
  82. package/features/slack/components/StartModal/SelectField.d.ts.map +1 -0
  83. package/features/slack/components/StartModal/SlackChannelTab.d.ts +23 -0
  84. package/features/slack/components/StartModal/SlackChannelTab.d.ts.map +1 -0
  85. package/features/slack/components/StartModal/SlackThreadTab.d.ts +26 -0
  86. package/features/slack/components/StartModal/SlackThreadTab.d.ts.map +1 -0
  87. package/features/slack/components/StartModal/TabIcon.d.ts +16 -0
  88. package/features/slack/components/StartModal/TabIcon.d.ts.map +1 -0
  89. package/features/slack/components/StartModal/__tests__/MemberSelect.test.d.ts +2 -0
  90. package/features/slack/components/StartModal/__tests__/MemberSelect.test.d.ts.map +1 -0
  91. package/features/slack/components/StartModal/dropdownOmni.d.ts +121 -0
  92. package/features/slack/components/StartModal/dropdownOmni.d.ts.map +1 -0
  93. package/features/slack/components/StartModal/index.d.ts +27 -0
  94. package/features/slack/components/StartModal/index.d.ts.map +1 -0
  95. package/features/slack/components/StartModal/style.d.ts +39 -0
  96. package/features/slack/components/StartModal/style.d.ts.map +1 -0
  97. package/features/slack/components/figma-tokens.d.ts +94 -0
  98. package/features/slack/components/figma-tokens.d.ts.map +1 -0
  99. package/features/slack/components/style.d.ts +54 -0
  100. package/features/slack/components/style.d.ts.map +1 -0
  101. package/features/slack/constants/api.d.ts +13 -0
  102. package/features/slack/constants/api.d.ts.map +1 -0
  103. package/features/slack/context.d.ts +75 -0
  104. package/features/slack/context.d.ts.map +1 -0
  105. package/features/slack/hooks/__tests__/useOlderMessages.test.d.ts +2 -0
  106. package/features/slack/hooks/__tests__/useOlderMessages.test.d.ts.map +1 -0
  107. package/features/slack/hooks/useLeftChannelGuard.d.ts +5 -0
  108. package/features/slack/hooks/useLeftChannelGuard.d.ts.map +1 -0
  109. package/features/slack/hooks/useOlderMessages.d.ts +51 -0
  110. package/features/slack/hooks/useOlderMessages.d.ts.map +1 -0
  111. package/features/slack/hooks/useSlackTabLabel.d.ts +23 -0
  112. package/features/slack/hooks/useSlackTabLabel.d.ts.map +1 -0
  113. package/features/slack/messageType.d.ts +16 -0
  114. package/features/slack/messageType.d.ts.map +1 -0
  115. package/features/slack/types/wire.d.ts +205 -0
  116. package/features/slack/types/wire.d.ts.map +1 -0
  117. package/features/slack/utils/emoji.d.ts +7 -0
  118. package/features/slack/utils/emoji.d.ts.map +1 -0
  119. package/features/slack/utils/mentions.d.ts +18 -0
  120. package/features/slack/utils/mentions.d.ts.map +1 -0
  121. package/features/slack/utils/text.d.ts +7 -0
  122. package/features/slack/utils/text.d.ts.map +1 -0
  123. package/features/toast-message/ToastRoot.d.ts.map +1 -1
  124. package/index.d.ts +5 -0
  125. package/index.d.ts.map +1 -1
  126. package/index.es.js +19553 -13397
  127. package/index.umd.js +1051 -427
  128. package/main-dev.d.ts.map +1 -1
  129. package/package.json +1 -1
  130. package/testing/mocks/handlers/fetch-cards.d.ts +2 -2
  131. package/testing/mocks/handlers/slack.d.ts +36 -0
  132. package/testing/mocks/handlers/slack.d.ts.map +1 -0
  133. package/testing/mocks/handlers.d.ts.map +1 -1
@@ -0,0 +1,27 @@
1
+ import { FC } from 'react';
2
+ import { ChannelMember } from '../../types/wire';
3
+ interface MentionPickerProps {
4
+ anchor: HTMLElement | null;
5
+ query: string;
6
+ members: ChannelMember[];
7
+ /** Index of the row the keyboard has highlighted (drives Enter-select). */
8
+ highlightIdx: number;
9
+ onPick: (member: ChannelMember) => void;
10
+ /** Keep highlight in sync with mouse hover so click + keyboard agree. */
11
+ onHighlightChange: (idx: number) => void;
12
+ onClose: () => void;
13
+ }
14
+ /**
15
+ * UI-10 — @ mention picker per Figma 683:670087. Shows above the
16
+ * composer with a scrollable list of channel members. Each row =
17
+ * 24px avatar + display name (Inter Medium 13/19 slate-body).
18
+ * Filtered by the `query` substring after the `@` keystroke.
19
+ *
20
+ * Keyboard handling lives in the parent composer (so the textarea keeps
21
+ * focus while the popover navigates); `highlightIdx` is owned there and
22
+ * passed down. This component renders the list + handles row clicks/hover.
23
+ * ArrowUp/Down + Enter are translated by the parent into onPick calls.
24
+ */
25
+ export declare const MentionPicker: FC<MentionPickerProps>;
26
+ export {};
27
+ //# sourceMappingURL=MentionPicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MentionPicker.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/MentionPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAa,MAAM,OAAO,CAAC;AAMtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,UAAU,kBAAkB;IAC1B,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,2EAA2E;IAC3E,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IACxC,yEAAyE;IACzE,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAiFhD,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { FC } from 'react';
2
+ import { SlackMessage } from '../../types/wire';
3
+ interface MessageItemProps {
4
+ message: SlackMessage;
5
+ /** externalUserId → display name, for rendering `<@U…>` mention
6
+ * tokens as `@DisplayName`. Falls back to `@<id>` when unknown. */
7
+ memberNames?: Map<string, string>;
8
+ /** When provided, a hover toolbar with a "Reply" action is shown on
9
+ * the row (channel list roots). Omitted → no toolbar (e.g. replies
10
+ * inside an open thread). */
11
+ onReply?: () => void;
12
+ /** Thread-detail replies: indent the content by 32px. Applied as row
13
+ * padding (not a wrapper) so the hover highlight stays full-width. */
14
+ indented?: boolean;
15
+ /** When true, paint the row with the Slack-notification highlight wash
16
+ * (deep-link arrival). Inline background overrides the :hover rule so the
17
+ * highlight holds steady while hovered. */
18
+ isHighlighted?: boolean;
19
+ }
20
+ /**
21
+ * Single Chat-UI row per Figma 683:666933 / 666934.
22
+ * Layout: 30×30 rounded-100 avatar + 8px gap + body column.
23
+ * Body column gap 4px, header row 12px gap items-baseline.
24
+ *
25
+ * The BE still emits editedAt/deletedAt for messages edited or
26
+ * deleted natively in Slack, so we render the `(edited)` badge and
27
+ * the "This message was deleted." tombstone for inbound display.
28
+ */
29
+ export declare const MessageItem: FC<MessageItemProps>;
30
+ export {};
31
+ //# sourceMappingURL=MessageItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageItem.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/MessageItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,EAAE,EAAgC,MAAM,OAAO,CAAC;AAQxE,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,6BAA6B,CAAC;AAgB/E,UAAU,gBAAgB;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB;wEACoE;IACpE,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC;;kCAE8B;IAC9B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;2EACuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;gDAE4C;IAC5C,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA0ID;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAyK5C,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { FC, ReactElement } from 'react';
2
+ export declare const NotMemberTooltip: FC<{
3
+ children: ReactElement;
4
+ }>;
5
+ //# sourceMappingURL=NotMemberTooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotMemberTooltip.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/NotMemberTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAmDzC,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,YAAY,CAAA;CAAE,CAI3D,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { FC } from 'react';
2
+ /**
3
+ * Composer replacement for the `slack_not_connected` block reason —
4
+ * the viewer reached the linked panel but has no active Slack auth
5
+ * (e.g. token revoked between the connect-status check and this read).
6
+ *
7
+ * This is a defensive surface: SlackConversationTab already gates the
8
+ * whole panel behind `userAuthState === 'connected'` and opens
9
+ * <SlackConnectModal> when auth is missing, so in practice the modal
10
+ * handles (re)connection. We still block the composer here rather than
11
+ * let a doomed send through — the whole point of the per-viewer hint
12
+ * is to avoid the wait-for-failure experience.
13
+ */
14
+ export declare const ReconnectSlackBanner: FC;
15
+ //# sourceMappingURL=ReconnectSlackBanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReconnectSlackBanner.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/ReconnectSlackBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAK3B;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,oBAAoB,EAAE,EAoClC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { FC } from 'react';
2
+ interface ThreadDetailViewProps {
3
+ /** Root ts of the thread being viewed. */
4
+ threadTs: string;
5
+ memberNames?: Map<string, string>;
6
+ hasLeftChannel: boolean;
7
+ guard?: <T>(fn: () => Promise<T>) => Promise<T>;
8
+ onBack: () => void;
9
+ }
10
+ /**
11
+ * B4 channel thread-detail (Figma 683:669379) — drilled in from the
12
+ * channel list. Lazily fetches the thread's messages (root + replies),
13
+ * shows a "‹ back" affordance, and a composer that replies INTO this
14
+ * thread. Replies are only fetched here, never in the list view.
15
+ */
16
+ export declare const ThreadDetailView: FC<ThreadDetailViewProps>;
17
+ export {};
18
+ //# sourceMappingURL=ThreadDetailView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadDetailView.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/ThreadDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAyC,MAAM,OAAO,CAAC;AA0FlE,UAAU,qBAAqB;IAC7B,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAoJtD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ export declare const ThreadSkeleton: FC;
3
+ //# sourceMappingURL=ThreadSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadSkeleton.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/ThreadSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AA+B3B,eAAO,MAAM,cAAc,EAAE,EAM5B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MessageItem.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageItem.test.d.ts","sourceRoot":"","sources":["../../../../../../src/features/slack/components/LinkedConversationPanel/__tests__/MessageItem.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ import { FC } from 'react';
2
+ /**
3
+ * UI-5 — content of the Slack tab when a Slack thread is already
4
+ * linked to the current Hiver conversation. Layout per Figma frame
5
+ * 683:666565 (and variants 665917 / 660800):
6
+ *
7
+ * ┌──────────────────────────────────────┐
8
+ * │ Parent message (pinned, not scroll) │
9
+ * ├──────────────────────────────────────┤
10
+ * │ Reply 1 │
11
+ * │ Reply 2 │
12
+ * │ ... │ ← scrollable
13
+ * ├──────────────────────────────────────┤
14
+ * │ Composer (UI-9 slot) │
15
+ * └──────────────────────────────────────┘
16
+ *
17
+ * Backend's `messages` array is reverse-chronological with the
18
+ * parent slot pinned at index 0 (cache shape — see plan-slack-m1-
19
+ * phase-4). UI-5 keeps that invariant in render: index 0 is the
20
+ * <ParentPin>, the tail is the scrollable list reversed so newest
21
+ * sits at the bottom (chat convention).
22
+ *
23
+ * The 50-entry trim flag (`isTrimmed`) renders a muted footer at
24
+ * the top of the scroll list when the cache hit the M1 cap.
25
+ */
26
+ export declare const LinkedConversationPanel: FC;
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAA8D,MAAM,OAAO,CAAC;AA2BvF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,uBAAuB,EAAE,EAqdrC,CAAC"}
@@ -0,0 +1,114 @@
1
+ import { BoxProps, ButtonProps, StackProps } from '@hiver/hiver-ui-kit';
2
+ import { StyledComponent } from '@emotion/styled';
3
+ /**
4
+ * Layout for the linked-conv tab content per Figma frame
5
+ * 683:666932. The host (outlook-ui) owns the tab bar above; we
6
+ * paint the area under it. Outer vertical borders match the
7
+ * Figma frame which has `border-l border-r border-[#e2e8f0]`.
8
+ */
9
+ export declare const LinkedRoot: StyledComponent<BoxProps>;
10
+ /**
11
+ * Pinned parent slot. Per Figma the parent message is just a
12
+ * normal Chat-UI row at the top of the panel (same px-[20px]
13
+ * py-[12px] as replies). No visible separator below it in the
14
+ * static frame — the visual separation comes from the
15
+ * subsequent rows starting at their own padded slot.
16
+ */
17
+ export declare const ParentPin: StyledComponent<BoxProps>;
18
+ export declare const RepliesScroll: StyledComponent<BoxProps>;
19
+ /**
20
+ * Top-of-list "load older" affordance. Centered, muted caption row shown
21
+ * above the message list while older history exists (or is loading /
22
+ * errored). Clickable as a fallback to the scroll-to-top trigger.
23
+ */
24
+ export declare const LoadOlderBar: StyledComponent<BoxProps>;
25
+ /**
26
+ * Thread-detail "‹ back" row (Figma 683:669379) — sits above the
27
+ * drilled-in thread, left-aligned with the message column.
28
+ */
29
+ export declare const BackRow: StyledComponent<BoxProps>;
30
+ /**
31
+ * Channel-mode scroll region (B4) — the full list of thread groups in
32
+ * the linked channel. Same scroll mechanics as RepliesScroll.
33
+ */
34
+ export declare const ChannelThreadsScroll: StyledComponent<BoxProps>;
35
+ /**
36
+ * One thread group (a root message + its "Replies (n)" link). Threads
37
+ * are separated by whitespace only — the Figma has no divider rule
38
+ * between messages.
39
+ */
40
+ export declare const ThreadGroupRoot: StyledComponent<BoxProps>;
41
+ /**
42
+ * Thread-detail reply stack (Figma 683:669746). Replies are indented
43
+ * 32px so their avatars sit under the root message's text column, and a
44
+ * vertical rail with a rounded elbow connects each reply back to the
45
+ * thread — mirroring the design's "Line 19" + "Vector 3" guide.
46
+ */
47
+ export declare const ThreadReplies: StyledComponent<BoxProps>;
48
+ /**
49
+ * The reply-threading guide (vertical rail + rounded elbow) is drawn in
50
+ * ThreadDetailView's ReplyConnector with real positioned elements rather
51
+ * than pseudo-elements here — it needs deterministic per-reply control
52
+ * (e.g. capping the rail at the LAST reply), which CSS positional
53
+ * selectors didn't deliver reliably through the styled Box.
54
+ */
55
+ /**
56
+ * Composer outer slot — Figma 683:667011 gives this a 20px
57
+ * surrounding pad and white background. The inner box (border +
58
+ * radius) is composed inside the Composer component itself.
59
+ */
60
+ export declare const ComposerSlotRoot: StyledComponent<BoxProps>;
61
+ /**
62
+ * One Chat-UI row (Figma 683:666934). Padded 20/12 with 8px gap
63
+ * between avatar and body column.
64
+ */
65
+ export declare const MessageRow: StyledComponent<StackProps>;
66
+ /**
67
+ * Floating per-message action bar, pinned to the row's top-right
68
+ * (Figma 683:661942: 26px tall white pill, 0.5px hairline border, a
69
+ * soft `0 0 2px rgba(51,65,85,0.25)` shadow, 6px radius). M1 carries a
70
+ * single icon-only "Reply" action — the reaction/emoji affordance is
71
+ * omitted.
72
+ *
73
+ * Figma floats it ~half-above the row's top edge (negative offset), so we use
74
+ * `top: -13px` (= -height/2) to overhang upward. The overhang lands outside
75
+ * the row's box, so the topmost row in a scroll container would have its pill
76
+ * clipped by `overflow-y: auto` (and, in thread mode, hidden behind the
77
+ * separately-rendered ParentPin). The scroll containers (RepliesScroll /
78
+ * ChannelThreadsScroll) reserve >= 13px top padding so that overhang stays
79
+ * inside their padding box and renders un-clipped — see those styles. A high
80
+ * z-index keeps it above adjacent rows' hover background. `overflow: hidden`
81
+ * clamps the button's hover tint to the pill's rounded corners.
82
+ */
83
+ export declare const HoverToolbar: StyledComponent<BoxProps>;
84
+ export declare const ReplyButton: StyledComponent<ButtonProps>;
85
+ export declare const DeleteButton: StyledComponent<ButtonProps>;
86
+ /**
87
+ * Avatar — 30px fully rounded per Figma 683:666937 (`size-[30px]
88
+ * rounded-[100px]`). Background per-author in production; the
89
+ * fallback uses Hiver's purple-light tint.
90
+ */
91
+ export declare const AvatarCircle: StyledComponent<BoxProps>;
92
+ export declare const MessageBodyCol: StyledComponent<BoxProps>;
93
+ /**
94
+ * Header row — author + timestamp baseline-aligned with 12px gap
95
+ * (Figma 683:666940).
96
+ */
97
+ export declare const MessageHeaderRow: StyledComponent<StackProps>;
98
+ /**
99
+ * Inbound reactions row (Figma 683:671873) — the third child of
100
+ * MessageBodyCol, so the column's 4px gap already spaces it 4px below the
101
+ * message text. Reactions wrap to the next line when they overflow the
102
+ * panel width.
103
+ */
104
+ export declare const ReactionsRow: StyledComponent<BoxProps>;
105
+ /**
106
+ * One reaction pill (Figma 683:671874 "Emoji states") — a fully-rounded
107
+ * chip holding a 12px emoji glyph + the reactor count. Neutral fill by
108
+ * default; the viewer's own reactions get the primary blue wash + hairline
109
+ * border (the component's "reacted" state). Display-only in M1, so no
110
+ * hover/cursor affordance. The 1px transparent base border keeps the box
111
+ * the same size whether or not the self-border is shown.
112
+ */
113
+ export declare const ReactionPill: StyledComponent<BoxProps>;
114
+ //# sourceMappingURL=style.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/LinkedConversationPanel/style.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAIvD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,eAAe,CAAC,QAAQ,CAQhD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,eAAe,CAAC,QAAQ,CAG/C,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,eAAe,CAAC,QAAQ,CAanD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,QAAQ,CAMlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,eAAe,CAAC,QAAQ,CAG7C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAAC,QAAQ,CAQ1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,QAAQ,CAGrD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,eAAe,CAAC,QAAQ,CAGnD,CAAC;AAEF;;;;;;GAMG;AAEH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,QAAQ,CAItD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,eAAe,CAAC,UAAU,CAuBlD,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,QAAQ,CAalD,CAAC;AAKF,eAAO,MAAM,WAAW,EAAE,eAAe,CAAC,WAAW,CAkBpD,CAAC;AAKF,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,WAAW,CAmBrD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,QAAQ,CAoBlD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,eAAe,CAAC,QAAQ,CAMpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,UAAU,CAKxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,QAAQ,CAKlD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,QAAQ,CAQlD,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { FC } from 'react';
2
+ import { ITrackingData } from '../../../context';
3
+ interface SlackConnectModalProps {
4
+ connectorId: string;
5
+ open: boolean;
6
+ onClose: () => void;
7
+ /** Fired once when user-auth transitions to `connected`. Lets a
8
+ * host (outlook-ui) re-check auth status and swap the pre-auth
9
+ * button for the Slack tab. */
10
+ onConnected?: () => void;
11
+ /** Gainsight sink. Passed as a prop (not read from SlackContext)
12
+ * because the host-triggered <SlackConnectModalIsland> mounts this
13
+ * modal WITHOUT a SlackContextProvider. */
14
+ sendTrackingEvent?: (event: string, data?: ITrackingData) => void;
15
+ }
16
+ /**
17
+ * Connect Slack modal — Figma frame 683:659445 (default) and
18
+ * 683:660125 (Connecting variant).
19
+ *
20
+ * Card 399×auto, white bg, radius 12. Top band is a 164px lavender
21
+ * (primary-subtle #e6effd) logo panel showing Hiver ⇄ Slack
22
+ * icons. Below: body copy + primary blue CTA. Close X at top-right.
23
+ *
24
+ * Reuses useUserAuthFlow from connector-cards so the OAuth popup
25
+ * + status polling is identical to other user-tier integrations.
26
+ */
27
+ export declare const SlackConnectModal: FC<SlackConnectModalProps>;
28
+ export {};
29
+ //# sourceMappingURL=SlackConnectModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackConnectModal.d.ts","sourceRoot":"","sources":["../../../../src/features/slack/components/SlackConnectModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAUxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAgB/C,UAAU,sBAAsB;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;oCAEgC;IAChC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB;;gDAE4C;IAC5C,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;CACnE;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CA6FxD,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { FC } from 'react';
2
+ interface SlackConversationTabProps {
3
+ /** Optional external trigger for parent-driven open. Internal
4
+ * state still owns visibility; the host can listen if it needs to
5
+ * track when the user opens the start flow. */
6
+ onStartFlowRequested?: () => void;
7
+ }
8
+ export declare const SlackConversationTab: FC<SlackConversationTabProps>;
9
+ export default SlackConversationTab;
10
+ //# sourceMappingURL=SlackConversationTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackConversationTab.d.ts","sourceRoot":"","sources":["../../../../src/features/slack/components/SlackConversationTab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAoC,MAAM,OAAO,CAAC;AAuB7D,UAAU,yBAAyB;IACjC;;oDAEgD;IAChD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC;AAiCD,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAqK9D,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { FC } from 'react';
2
+ /**
3
+ * Inlined Slack logomark — Slack's brand-approved four-square shape.
4
+ * Inlined rather than fetched from @hiver/hiver-ui-kit because the
5
+ * kit doesn't ship third-party logos, and a single SVG is cheaper
6
+ * than a managed asset for the empty-state hero.
7
+ */
8
+ export declare const SlackLogo: FC<{
9
+ size?: number;
10
+ }>;
11
+ //# sourceMappingURL=SlackLogo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackLogo.d.ts","sourceRoot":"","sources":["../../../../src/features/slack/components/SlackLogo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAO3C,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ import { SlackUser } from '../../types/wire';
3
+ interface MemberSelectProps {
4
+ value: SlackUser[];
5
+ onChange: (next: SlackUser[]) => void;
6
+ }
7
+ export declare const MemberSelect: FC<MemberSelectProps>;
8
+ export {};
9
+ //# sourceMappingURL=MemberSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberSelect.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/MemberSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAM3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAM7D,UAAU,iBAAiB;IACzB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;CACvC;AAuCD,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CA0G9C,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { FC } from 'react';
2
+ interface MentionTextareaProps {
3
+ /** Human-readable draft (with "@DisplayName" literals). */
4
+ value: string;
5
+ /** Reports both the display text and the Slack-mention form (picked
6
+ * mentions rewritten to `<@user_id>`) so the parent can show one and
7
+ * post the other. */
8
+ onChange: (displayText: string, slackText: string) => void;
9
+ /** Slack channel the agent picked in the Start flow. Members are fetched
10
+ * for this channel (no link exists yet, so we can't resolve via the conv).
11
+ * Mentions are disabled until a channel is selected. */
12
+ channelId: string | null;
13
+ placeholder?: string;
14
+ autoFocus?: boolean;
15
+ }
16
+ /**
17
+ * Bug 1 — message field for the Start flow that resolves @-mentions to real
18
+ * Slack mentions, mirroring the thread-reply Composer. Without this the Start
19
+ * compose posted "@name" as literal text and nobody was notified.
20
+ *
21
+ * Controlled: the parent owns the draft string (so Cancel can reset it — see
22
+ * Bug 8). This component owns only the transient mention map + picker state,
23
+ * and reuses the shared MentionPicker + mention helpers so keyboard nav
24
+ * (Bug 4) and `<@id>` conversion behave identically in both composers.
25
+ */
26
+ export declare const MentionTextarea: FC<MentionTextareaProps>;
27
+ export {};
28
+ //# sourceMappingURL=MentionTextarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MentionTextarea.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/MentionTextarea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAoE,MAAM,OAAO,CAAC;AAgB7F,UAAU,oBAAoB;IAC5B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd;;0BAEsB;IACtB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D;;6DAEyD;IACzD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CAwJpD,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { ReactNode } from 'react';
2
+ export interface SelectOption<V extends string> {
3
+ value: V;
4
+ label: ReactNode;
5
+ }
6
+ interface SelectFieldProps<V extends string> {
7
+ value: V;
8
+ options: SelectOption<V>[];
9
+ onChange: (value: V) => void;
10
+ }
11
+ /**
12
+ * Bordered select that matches Figma's field chrome. Built on a custom
13
+ * trigger + MUI Menu rather than MUI's <Select> so the border, radius,
14
+ * padding, and chevron land exactly — MUI's Select renders its own
15
+ * standard-variant input that resists `sx` overrides.
16
+ */
17
+ export declare function SelectField<V extends string>({ value, options, onChange }: SelectFieldProps<V>): import("react/jsx-runtime").JSX.Element;
18
+ export {};
19
+ //# sourceMappingURL=SelectField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/SelectField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAUjD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM;IAC5C,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,UAAU,gBAAgB,CAAC,CAAC,SAAS,MAAM;IACzC,KAAK,EAAE,CAAC,CAAC;IACT,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CAmD9F"}
@@ -0,0 +1,23 @@
1
+ import { FC } from 'react';
2
+ import { SlackUser } from '../../types/wire';
3
+ /**
4
+ * Form-state shape kept distinct from the wire type. UX uses a
5
+ * 'public' | 'private' string for the channel Type select, holds the
6
+ * picked members as full `SlackUser` objects (so chips can show name +
7
+ * avatar), and names the body field 'message'. The wire shape uses
8
+ * `isPrivate: boolean`, `memberEmails: string[]`, and `messageText` —
9
+ * StartModal transforms at the submit boundary.
10
+ */
11
+ export interface ChannelFormValues {
12
+ channelName: string;
13
+ channelType: 'public' | 'private';
14
+ members: SlackUser[];
15
+ message: string;
16
+ }
17
+ interface SlackChannelTabProps {
18
+ values: ChannelFormValues;
19
+ onChange: (next: ChannelFormValues) => void;
20
+ }
21
+ export declare const SlackChannelTab: FC<SlackChannelTabProps>;
22
+ export {};
23
+ //# sourceMappingURL=SlackChannelTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackChannelTab.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/SlackChannelTab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAM7D;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;IAClC,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,oBAAoB;IAC5B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC7C;AA6BD,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CAqCpD,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { FC } from 'react';
2
+ interface SlackThreadTabProps {
3
+ channelId: string | null;
4
+ message: string;
5
+ onChannelChange: (channelId: string | null) => void;
6
+ /** Reports both the human-readable draft and the Slack-mention form. */
7
+ onMessageChange: (message: string, slackText: string) => void;
8
+ }
9
+ /**
10
+ * UI-3 — Slack thread tab body. Pick an existing channel and write
11
+ * a thread starter. Matches Figma frame 683:665296.
12
+ *
13
+ * The channel picker keeps MUI's Autocomplete for its search + popup
14
+ * logic, but renders into our own bordered field chrome via
15
+ * `renderInput` (InputShell + BareInput) so the border/radius/padding
16
+ * match Figma exactly — see style.ts for why we don't fight MUI's
17
+ * standard-variant input. Channels render as `# name`, with a trailing
18
+ * 🔒 on private channels marking Slack's public/private indicator.
19
+ *
20
+ * On submit, parent (StartModal) calls
21
+ * POST /v1/connectors/slack/agent/start/existing-channel
22
+ * with the selected channelId + message.
23
+ */
24
+ export declare const SlackThreadTab: FC<SlackThreadTabProps>;
25
+ export {};
26
+ //# sourceMappingURL=SlackThreadTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackThreadTab.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/SlackThreadTab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAA4B,MAAM,OAAO,CAAC;AAarD,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,wEAAwE;IACxE,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/D;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAwFlD,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { FC } from 'react';
2
+ /**
3
+ * Tab-switcher icons rendered inline (not via CSS mask / <img>) so the
4
+ * stroke inherits the tab's active/inactive color through
5
+ * `stroke="currentColor"`. A masked data-URI broke here because the
6
+ * icon stroke colors contain `#`, which truncates the mask url() into
7
+ * a fragment — leaving a solid filled square. Inline SVG sidesteps that
8
+ * entirely. Paths are the exact Figma exports (thread = message bubble,
9
+ * channel = hash).
10
+ */
11
+ interface TabIconProps {
12
+ variant: 'thread' | 'channel';
13
+ }
14
+ export declare const TabIcon: FC<TabIconProps>;
15
+ export {};
16
+ //# sourceMappingURL=TabIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabIcon.d.ts","sourceRoot":"","sources":["../../../../../src/features/slack/components/StartModal/TabIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B;;;;;;;;GAQG;AACH,UAAU,YAAY;IACpB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC/B;AAED,eAAO,MAAM,OAAO,EAAE,EAAE,CAAC,YAAY,CA0BpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MemberSelect.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberSelect.test.d.ts","sourceRoot":"","sources":["../../../../../../src/features/slack/components/StartModal/__tests__/MemberSelect.test.tsx"],"names":[],"mappings":""}