@mattermost/compass-ui 0.1.0-alpha.11 → 0.1.0-alpha.13

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 (380) hide show
  1. package/README.md +15 -3
  2. package/dist/compass-ui-standalone.css +270 -276
  3. package/dist/compass-ui.css +293 -290
  4. package/dist/components/action-button/ActionButton.cjs.map +1 -1
  5. package/dist/components/action-button/ActionButton.d.ts +2 -1
  6. package/dist/components/action-button/ActionButton.d.ts.map +1 -1
  7. package/dist/components/action-button/ActionButton.js.map +1 -1
  8. package/dist/components/admin-console-header/AdminConsoleHeader.cjs.map +1 -1
  9. package/dist/components/admin-console-header/AdminConsoleHeader.d.ts +3 -1
  10. package/dist/components/admin-console-header/AdminConsoleHeader.d.ts.map +1 -1
  11. package/dist/components/admin-console-header/AdminConsoleHeader.js.map +1 -1
  12. package/dist/components/admin-panel/AdminPanel.cjs +1 -1
  13. package/dist/components/admin-panel/AdminPanel.cjs.map +1 -1
  14. package/dist/components/admin-panel/AdminPanel.d.ts +13 -6
  15. package/dist/components/admin-panel/AdminPanel.d.ts.map +1 -1
  16. package/dist/components/admin-panel/AdminPanel.js +21 -15
  17. package/dist/components/admin-panel/AdminPanel.js.map +1 -1
  18. package/dist/components/admin-panel-footer/AdminPanelFooter.cjs.map +1 -1
  19. package/dist/components/admin-panel-footer/AdminPanelFooter.d.ts +8 -4
  20. package/dist/components/admin-panel-footer/AdminPanelFooter.d.ts.map +1 -1
  21. package/dist/components/admin-panel-footer/AdminPanelFooter.js.map +1 -1
  22. package/dist/components/admin-panel-header/AdminPanelHeader.cjs +1 -1
  23. package/dist/components/admin-panel-header/AdminPanelHeader.cjs.map +1 -1
  24. package/dist/components/admin-panel-header/AdminPanelHeader.css +1 -1
  25. package/dist/components/admin-panel-header/AdminPanelHeader.d.ts +11 -4
  26. package/dist/components/admin-panel-header/AdminPanelHeader.d.ts.map +1 -1
  27. package/dist/components/admin-panel-header/AdminPanelHeader.js +25 -23
  28. package/dist/components/admin-panel-header/AdminPanelHeader.js.map +1 -1
  29. package/dist/components/admin-panel-header/AdminPanelHeader.module.scss.cjs +1 -1
  30. package/dist/components/admin-panel-header/AdminPanelHeader.module.scss.js +10 -10
  31. package/dist/components/attachment-card/AttachmentCard.cjs +1 -1
  32. package/dist/components/attachment-card/AttachmentCard.cjs.map +1 -1
  33. package/dist/components/attachment-card/AttachmentCard.d.ts +18 -5
  34. package/dist/components/attachment-card/AttachmentCard.d.ts.map +1 -1
  35. package/dist/components/attachment-card/AttachmentCard.js +85 -79
  36. package/dist/components/attachment-card/AttachmentCard.js.map +1 -1
  37. package/dist/components/card-button/CardButton.css +1 -1
  38. package/dist/components/card-button/CardButton.module.scss.cjs +1 -1
  39. package/dist/components/card-button/CardButton.module.scss.js +7 -7
  40. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.cjs +1 -1
  41. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.cjs.map +1 -1
  42. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.d.ts +5 -4
  43. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.d.ts.map +1 -1
  44. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.js +7 -7
  45. package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.js.map +1 -1
  46. package/dist/components/channel-sidebar-item/ChannelSidebarItem.cjs +1 -1
  47. package/dist/components/channel-sidebar-item/ChannelSidebarItem.cjs.map +1 -1
  48. package/dist/components/channel-sidebar-item/ChannelSidebarItem.d.ts +10 -4
  49. package/dist/components/channel-sidebar-item/ChannelSidebarItem.d.ts.map +1 -1
  50. package/dist/components/channel-sidebar-item/ChannelSidebarItem.js +64 -60
  51. package/dist/components/channel-sidebar-item/ChannelSidebarItem.js.map +1 -1
  52. package/dist/components/chip/Chip.cjs.map +1 -1
  53. package/dist/components/chip/Chip.css +1 -1
  54. package/dist/components/chip/Chip.d.ts +4 -0
  55. package/dist/components/chip/Chip.d.ts.map +1 -1
  56. package/dist/components/chip/Chip.js.map +1 -1
  57. package/dist/components/chip/Chip.module.scss.cjs +1 -1
  58. package/dist/components/chip/Chip.module.scss.js +11 -11
  59. package/dist/components/combobox/Combobox.cjs +1 -1
  60. package/dist/components/combobox/Combobox.cjs.map +1 -1
  61. package/dist/components/combobox/Combobox.css +1 -1
  62. package/dist/components/combobox/Combobox.d.ts +24 -1
  63. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  64. package/dist/components/combobox/Combobox.js +307 -271
  65. package/dist/components/combobox/Combobox.js.map +1 -1
  66. package/dist/components/combobox/Combobox.module.scss.cjs +1 -1
  67. package/dist/components/combobox/Combobox.module.scss.js +28 -26
  68. package/dist/components/combobox/Combobox.module.scss.js.map +1 -1
  69. package/dist/components/date-range-picker/DateRangePicker.cjs +1 -1
  70. package/dist/components/date-range-picker/DateRangePicker.cjs.map +1 -1
  71. package/dist/components/date-range-picker/DateRangePicker.css +1 -1
  72. package/dist/components/date-range-picker/DateRangePicker.d.ts +18 -2
  73. package/dist/components/date-range-picker/DateRangePicker.d.ts.map +1 -1
  74. package/dist/components/date-range-picker/DateRangePicker.js +134 -126
  75. package/dist/components/date-range-picker/DateRangePicker.js.map +1 -1
  76. package/dist/components/date-range-picker/DateRangePicker.module.scss.cjs +1 -1
  77. package/dist/components/date-range-picker/DateRangePicker.module.scss.js +26 -26
  78. package/dist/components/emoji-popover/EmojiPopover.cjs +1 -1
  79. package/dist/components/emoji-popover/EmojiPopover.cjs.map +1 -1
  80. package/dist/components/emoji-popover/EmojiPopover.d.ts +25 -4
  81. package/dist/components/emoji-popover/EmojiPopover.d.ts.map +1 -1
  82. package/dist/components/emoji-popover/EmojiPopover.js +84 -73
  83. package/dist/components/emoji-popover/EmojiPopover.js.map +1 -1
  84. package/dist/components/empty-state/EmptyState.cjs +1 -1
  85. package/dist/components/empty-state/EmptyState.cjs.map +1 -1
  86. package/dist/components/empty-state/EmptyState.d.ts +3 -3
  87. package/dist/components/empty-state/EmptyState.d.ts.map +1 -1
  88. package/dist/components/empty-state/EmptyState.js +11 -9
  89. package/dist/components/empty-state/EmptyState.js.map +1 -1
  90. package/dist/components/error-message/ErrorMessage.cjs +1 -1
  91. package/dist/components/error-message/ErrorMessage.cjs.map +1 -1
  92. package/dist/components/error-message/ErrorMessage.d.ts +3 -3
  93. package/dist/components/error-message/ErrorMessage.d.ts.map +1 -1
  94. package/dist/components/error-message/ErrorMessage.js +10 -9
  95. package/dist/components/error-message/ErrorMessage.js.map +1 -1
  96. package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.cjs.map +1 -1
  97. package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.d.ts +7 -6
  98. package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.d.ts.map +1 -1
  99. package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.js.map +1 -1
  100. package/dist/components/global-banner/GlobalBanner.cjs +1 -1
  101. package/dist/components/global-banner/GlobalBanner.cjs.map +1 -1
  102. package/dist/components/global-banner/GlobalBanner.d.ts +10 -5
  103. package/dist/components/global-banner/GlobalBanner.d.ts.map +1 -1
  104. package/dist/components/global-banner/GlobalBanner.js +33 -26
  105. package/dist/components/global-banner/GlobalBanner.js.map +1 -1
  106. package/dist/components/icon-button/IconButton.css +1 -1
  107. package/dist/components/icon-button/IconButton.module.scss.cjs +1 -1
  108. package/dist/components/icon-button/IconButton.module.scss.js +15 -15
  109. package/dist/components/image-preview/ImagePreview.cjs +1 -1
  110. package/dist/components/image-preview/ImagePreview.cjs.map +1 -1
  111. package/dist/components/image-preview/ImagePreview.css +1 -1
  112. package/dist/components/image-preview/ImagePreview.d.ts +12 -1
  113. package/dist/components/image-preview/ImagePreview.d.ts.map +1 -1
  114. package/dist/components/image-preview/ImagePreview.js +25 -20
  115. package/dist/components/image-preview/ImagePreview.js.map +1 -1
  116. package/dist/components/image-preview/ImagePreview.module.scss.cjs +1 -1
  117. package/dist/components/image-preview/ImagePreview.module.scss.js +15 -15
  118. package/dist/components/link-preview/LinkPreview.cjs +1 -1
  119. package/dist/components/link-preview/LinkPreview.cjs.map +1 -1
  120. package/dist/components/link-preview/LinkPreview.d.ts +12 -6
  121. package/dist/components/link-preview/LinkPreview.d.ts.map +1 -1
  122. package/dist/components/link-preview/LinkPreview.js +19 -16
  123. package/dist/components/link-preview/LinkPreview.js.map +1 -1
  124. package/dist/components/mention-badge/MentionBadge.cjs +1 -1
  125. package/dist/components/mention-badge/MentionBadge.cjs.map +1 -1
  126. package/dist/components/mention-badge/MentionBadge.d.ts +3 -1
  127. package/dist/components/mention-badge/MentionBadge.d.ts.map +1 -1
  128. package/dist/components/mention-badge/MentionBadge.js +18 -23
  129. package/dist/components/mention-badge/MentionBadge.js.map +1 -1
  130. package/dist/components/menu-group-heading/MenuGroupHeading.cjs.map +1 -1
  131. package/dist/components/menu-group-heading/MenuGroupHeading.d.ts +3 -3
  132. package/dist/components/menu-group-heading/MenuGroupHeading.d.ts.map +1 -1
  133. package/dist/components/menu-group-heading/MenuGroupHeading.js.map +1 -1
  134. package/dist/components/menu-item/MenuItem.cjs +1 -1
  135. package/dist/components/menu-item/MenuItem.cjs.map +1 -1
  136. package/dist/components/menu-item/MenuItem.d.ts +2 -0
  137. package/dist/components/menu-item/MenuItem.d.ts.map +1 -1
  138. package/dist/components/menu-item/MenuItem.js +29 -28
  139. package/dist/components/menu-item/MenuItem.js.map +1 -1
  140. package/dist/components/message-actions/MessageActions.cjs +1 -1
  141. package/dist/components/message-actions/MessageActions.cjs.map +1 -1
  142. package/dist/components/message-actions/MessageActions.d.ts +26 -2
  143. package/dist/components/message-actions/MessageActions.d.ts.map +1 -1
  144. package/dist/components/message-actions/MessageActions.js +67 -55
  145. package/dist/components/message-actions/MessageActions.js.map +1 -1
  146. package/dist/components/message-header/MessageHeader.cjs.map +1 -1
  147. package/dist/components/message-header/MessageHeader.d.ts +5 -3
  148. package/dist/components/message-header/MessageHeader.d.ts.map +1 -1
  149. package/dist/components/message-header/MessageHeader.js.map +1 -1
  150. package/dist/components/message-separator/MessageSeparator.cjs +1 -1
  151. package/dist/components/message-separator/MessageSeparator.cjs.map +1 -1
  152. package/dist/components/message-separator/MessageSeparator.d.ts +8 -4
  153. package/dist/components/message-separator/MessageSeparator.d.ts.map +1 -1
  154. package/dist/components/message-separator/MessageSeparator.js +16 -14
  155. package/dist/components/message-separator/MessageSeparator.js.map +1 -1
  156. package/dist/components/modal/Modal.cjs +1 -1
  157. package/dist/components/modal/Modal.cjs.map +1 -1
  158. package/dist/components/modal/Modal.d.ts +17 -3
  159. package/dist/components/modal/Modal.d.ts.map +1 -1
  160. package/dist/components/modal/Modal.js +38 -26
  161. package/dist/components/modal/Modal.js.map +1 -1
  162. package/dist/components/modal-header/ModalHeader.cjs +1 -1
  163. package/dist/components/modal-header/ModalHeader.cjs.map +1 -1
  164. package/dist/components/modal-header/ModalHeader.css +1 -1
  165. package/dist/components/modal-header/ModalHeader.d.ts +16 -1
  166. package/dist/components/modal-header/ModalHeader.d.ts.map +1 -1
  167. package/dist/components/modal-header/ModalHeader.js +72 -57
  168. package/dist/components/modal-header/ModalHeader.js.map +1 -1
  169. package/dist/components/modal-header/ModalHeader.module.scss.cjs +1 -1
  170. package/dist/components/modal-header/ModalHeader.module.scss.js +15 -13
  171. package/dist/components/modal-header/ModalHeader.module.scss.js.map +1 -1
  172. package/dist/components/more-unreads-banner/MoreUnreadsBanner.cjs +1 -1
  173. package/dist/components/more-unreads-banner/MoreUnreadsBanner.cjs.map +1 -1
  174. package/dist/components/more-unreads-banner/MoreUnreadsBanner.d.ts +4 -1
  175. package/dist/components/more-unreads-banner/MoreUnreadsBanner.d.ts.map +1 -1
  176. package/dist/components/more-unreads-banner/MoreUnreadsBanner.js +11 -10
  177. package/dist/components/more-unreads-banner/MoreUnreadsBanner.js.map +1 -1
  178. package/dist/components/new-message-banner/NewMessageBanner.cjs +1 -1
  179. package/dist/components/new-message-banner/NewMessageBanner.cjs.map +1 -1
  180. package/dist/components/new-message-banner/NewMessageBanner.d.ts +15 -3
  181. package/dist/components/new-message-banner/NewMessageBanner.d.ts.map +1 -1
  182. package/dist/components/new-message-banner/NewMessageBanner.js +30 -22
  183. package/dist/components/new-message-banner/NewMessageBanner.js.map +1 -1
  184. package/dist/components/pagination-dots/PaginationDots.cjs +1 -1
  185. package/dist/components/pagination-dots/PaginationDots.cjs.map +1 -1
  186. package/dist/components/pagination-dots/PaginationDots.css +1 -1
  187. package/dist/components/pagination-dots/PaginationDots.d.ts +5 -1
  188. package/dist/components/pagination-dots/PaginationDots.d.ts.map +1 -1
  189. package/dist/components/pagination-dots/PaginationDots.js +22 -19
  190. package/dist/components/pagination-dots/PaginationDots.js.map +1 -1
  191. package/dist/components/pagination-dots/PaginationDots.module.scss.cjs +1 -1
  192. package/dist/components/pagination-dots/PaginationDots.module.scss.js +10 -10
  193. package/dist/components/permalink-preview/PermalinkPreview.cjs +1 -1
  194. package/dist/components/permalink-preview/PermalinkPreview.cjs.map +1 -1
  195. package/dist/components/permalink-preview/PermalinkPreview.d.ts +16 -5
  196. package/dist/components/permalink-preview/PermalinkPreview.d.ts.map +1 -1
  197. package/dist/components/permalink-preview/PermalinkPreview.js +39 -35
  198. package/dist/components/permalink-preview/PermalinkPreview.js.map +1 -1
  199. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.cjs +1 -1
  200. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.cjs.map +1 -1
  201. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.d.ts +8 -1
  202. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.d.ts.map +1 -1
  203. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.js +20 -17
  204. package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.js.map +1 -1
  205. package/dist/components/popover-notice/PopoverNotice.cjs +1 -1
  206. package/dist/components/popover-notice/PopoverNotice.cjs.map +1 -1
  207. package/dist/components/popover-notice/PopoverNotice.d.ts +13 -5
  208. package/dist/components/popover-notice/PopoverNotice.d.ts.map +1 -1
  209. package/dist/components/popover-notice/PopoverNotice.js +58 -48
  210. package/dist/components/popover-notice/PopoverNotice.js.map +1 -1
  211. package/dist/components/profile-popover/ProfilePopover.cjs +1 -1
  212. package/dist/components/profile-popover/ProfilePopover.cjs.map +1 -1
  213. package/dist/components/profile-popover/ProfilePopover.d.ts +34 -12
  214. package/dist/components/profile-popover/ProfilePopover.d.ts.map +1 -1
  215. package/dist/components/profile-popover/ProfilePopover.js +122 -106
  216. package/dist/components/profile-popover/ProfilePopover.js.map +1 -1
  217. package/dist/components/progress-bar/ProgressBar.cjs +1 -1
  218. package/dist/components/progress-bar/ProgressBar.cjs.map +1 -1
  219. package/dist/components/progress-bar/ProgressBar.d.ts +4 -3
  220. package/dist/components/progress-bar/ProgressBar.d.ts.map +1 -1
  221. package/dist/components/progress-bar/ProgressBar.js +9 -7
  222. package/dist/components/progress-bar/ProgressBar.js.map +1 -1
  223. package/dist/components/radio/Radio.css +1 -1
  224. package/dist/components/radio/Radio.module.scss.cjs +1 -1
  225. package/dist/components/radio/Radio.module.scss.js +12 -12
  226. package/dist/components/reaction-button/ReactionButton.cjs +1 -1
  227. package/dist/components/reaction-button/ReactionButton.cjs.map +1 -1
  228. package/dist/components/reaction-button/ReactionButton.d.ts +3 -1
  229. package/dist/components/reaction-button/ReactionButton.d.ts.map +1 -1
  230. package/dist/components/reaction-button/ReactionButton.js +20 -18
  231. package/dist/components/reaction-button/ReactionButton.js.map +1 -1
  232. package/dist/components/reactions-row/ReactionsRow.cjs +1 -1
  233. package/dist/components/reactions-row/ReactionsRow.cjs.map +1 -1
  234. package/dist/components/reactions-row/ReactionsRow.d.ts +10 -2
  235. package/dist/components/reactions-row/ReactionsRow.d.ts.map +1 -1
  236. package/dist/components/reactions-row/ReactionsRow.js +33 -28
  237. package/dist/components/reactions-row/ReactionsRow.js.map +1 -1
  238. package/dist/components/right-sidebar-header/RightSidebarHeader.cjs +1 -1
  239. package/dist/components/right-sidebar-header/RightSidebarHeader.cjs.map +1 -1
  240. package/dist/components/right-sidebar-header/RightSidebarHeader.d.ts +15 -7
  241. package/dist/components/right-sidebar-header/RightSidebarHeader.d.ts.map +1 -1
  242. package/dist/components/right-sidebar-header/RightSidebarHeader.js +23 -19
  243. package/dist/components/right-sidebar-header/RightSidebarHeader.js.map +1 -1
  244. package/dist/components/scrollbar/Scrollbar.cjs +1 -1
  245. package/dist/components/scrollbar/Scrollbar.cjs.map +1 -1
  246. package/dist/components/scrollbar/Scrollbar.css +1 -1
  247. package/dist/components/scrollbar/Scrollbar.d.ts +2 -2
  248. package/dist/components/scrollbar/Scrollbar.d.ts.map +1 -1
  249. package/dist/components/scrollbar/Scrollbar.js +24 -15
  250. package/dist/components/scrollbar/Scrollbar.js.map +1 -1
  251. package/dist/components/scrollbar/Scrollbar.module.scss.cjs +1 -1
  252. package/dist/components/scrollbar/Scrollbar.module.scss.js +4 -4
  253. package/dist/components/scrollbar/simplebar-vendor.css +1 -0
  254. package/dist/components/search-input/SearchInput.cjs +1 -1
  255. package/dist/components/search-input/SearchInput.cjs.map +1 -1
  256. package/dist/components/search-input/SearchInput.d.ts +5 -0
  257. package/dist/components/search-input/SearchInput.d.ts.map +1 -1
  258. package/dist/components/search-input/SearchInput.js +92 -85
  259. package/dist/components/search-input/SearchInput.js.map +1 -1
  260. package/dist/components/search-tip-banner/SearchTipBanner.cjs +1 -1
  261. package/dist/components/search-tip-banner/SearchTipBanner.cjs.map +1 -1
  262. package/dist/components/search-tip-banner/SearchTipBanner.d.ts +8 -5
  263. package/dist/components/search-tip-banner/SearchTipBanner.d.ts.map +1 -1
  264. package/dist/components/search-tip-banner/SearchTipBanner.js +17 -16
  265. package/dist/components/search-tip-banner/SearchTipBanner.js.map +1 -1
  266. package/dist/components/section-notice/SectionNotice.cjs +1 -1
  267. package/dist/components/section-notice/SectionNotice.cjs.map +1 -1
  268. package/dist/components/section-notice/SectionNotice.d.ts +16 -3
  269. package/dist/components/section-notice/SectionNotice.d.ts.map +1 -1
  270. package/dist/components/section-notice/SectionNotice.js +64 -48
  271. package/dist/components/section-notice/SectionNotice.js.map +1 -1
  272. package/dist/components/select/Select.cjs +1 -1
  273. package/dist/components/select/Select.cjs.map +1 -1
  274. package/dist/components/select/Select.d.ts +8 -1
  275. package/dist/components/select/Select.d.ts.map +1 -1
  276. package/dist/components/select/Select.js +81 -79
  277. package/dist/components/select/Select.js.map +1 -1
  278. package/dist/components/spinner/Spinner.cjs.map +1 -1
  279. package/dist/components/spinner/Spinner.css +1 -1
  280. package/dist/components/spinner/Spinner.d.ts +1 -0
  281. package/dist/components/spinner/Spinner.d.ts.map +1 -1
  282. package/dist/components/spinner/Spinner.js.map +1 -1
  283. package/dist/components/spinner/Spinner.module.scss.cjs +1 -1
  284. package/dist/components/spinner/Spinner.module.scss.js +5 -5
  285. package/dist/components/status-badge/StatusBadge.css +1 -1
  286. package/dist/components/status-badge/StatusBadge.module.scss.cjs +1 -1
  287. package/dist/components/status-badge/StatusBadge.module.scss.js +11 -11
  288. package/dist/components/switch/Switch.css +1 -1
  289. package/dist/components/switch/Switch.module.scss.cjs +1 -1
  290. package/dist/components/switch/Switch.module.scss.js +14 -14
  291. package/dist/components/tabs/Tabs.cjs +1 -1
  292. package/dist/components/tabs/Tabs.cjs.map +1 -1
  293. package/dist/components/tabs/Tabs.css +1 -1
  294. package/dist/components/tabs/Tabs.d.ts +11 -3
  295. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  296. package/dist/components/tabs/Tabs.js +56 -53
  297. package/dist/components/tabs/Tabs.js.map +1 -1
  298. package/dist/components/tabs/Tabs.module.scss.cjs +1 -1
  299. package/dist/components/tabs/Tabs.module.scss.js +9 -9
  300. package/dist/components/tag/Tag.cjs +1 -1
  301. package/dist/components/tag/Tag.cjs.map +1 -1
  302. package/dist/components/tag/Tag.d.ts +3 -3
  303. package/dist/components/tag/Tag.d.ts.map +1 -1
  304. package/dist/components/tag/Tag.js +12 -11
  305. package/dist/components/tag/Tag.js.map +1 -1
  306. package/dist/components/thread-footer/ThreadFooter.cjs +1 -1
  307. package/dist/components/thread-footer/ThreadFooter.cjs.map +1 -1
  308. package/dist/components/thread-footer/ThreadFooter.css +1 -1
  309. package/dist/components/thread-footer/ThreadFooter.d.ts +19 -3
  310. package/dist/components/thread-footer/ThreadFooter.d.ts.map +1 -1
  311. package/dist/components/thread-footer/ThreadFooter.js +53 -48
  312. package/dist/components/thread-footer/ThreadFooter.js.map +1 -1
  313. package/dist/components/thread-footer/ThreadFooter.module.scss.cjs +1 -1
  314. package/dist/components/thread-footer/ThreadFooter.module.scss.js +18 -18
  315. package/dist/components/thread-list-item/ThreadListItem.cjs +1 -1
  316. package/dist/components/thread-list-item/ThreadListItem.cjs.map +1 -1
  317. package/dist/components/thread-list-item/ThreadListItem.d.ts +15 -7
  318. package/dist/components/thread-list-item/ThreadListItem.d.ts.map +1 -1
  319. package/dist/components/thread-list-item/ThreadListItem.js +66 -62
  320. package/dist/components/thread-list-item/ThreadListItem.js.map +1 -1
  321. package/dist/components/toast/Toast.cjs +1 -1
  322. package/dist/components/toast/Toast.cjs.map +1 -1
  323. package/dist/components/toast/Toast.d.ts +8 -3
  324. package/dist/components/toast/Toast.d.ts.map +1 -1
  325. package/dist/components/toast/Toast.js +47 -39
  326. package/dist/components/toast/Toast.js.map +1 -1
  327. package/dist/components/tour-point/TourPoint.cjs +1 -1
  328. package/dist/components/tour-point/TourPoint.cjs.map +1 -1
  329. package/dist/components/tour-point/TourPoint.css +1 -1
  330. package/dist/components/tour-point/TourPoint.d.ts +19 -5
  331. package/dist/components/tour-point/TourPoint.d.ts.map +1 -1
  332. package/dist/components/tour-point/TourPoint.js +66 -54
  333. package/dist/components/tour-point/TourPoint.js.map +1 -1
  334. package/dist/components/tour-point/TourPoint.module.scss.cjs +1 -1
  335. package/dist/components/tour-point/TourPoint.module.scss.js +28 -28
  336. package/dist/components/unread-badge/UnreadBadge.css +1 -1
  337. package/dist/components/unread-badge/UnreadBadge.module.scss.cjs +1 -1
  338. package/dist/components/unread-badge/UnreadBadge.module.scss.js +5 -5
  339. package/dist/components/user-avatar/UserAvatar.css +1 -1
  340. package/dist/components/user-avatar/UserAvatar.module.scss.cjs +1 -1
  341. package/dist/components/user-avatar/UserAvatar.module.scss.js +26 -26
  342. package/dist/components/user-avatar-group/UserAvatarGroup.cjs +1 -1
  343. package/dist/components/user-avatar-group/UserAvatarGroup.cjs.map +1 -1
  344. package/dist/components/user-avatar-group/UserAvatarGroup.css +1 -1
  345. package/dist/components/user-avatar-group/UserAvatarGroup.d.ts +8 -1
  346. package/dist/components/user-avatar-group/UserAvatarGroup.d.ts.map +1 -1
  347. package/dist/components/user-avatar-group/UserAvatarGroup.js +22 -18
  348. package/dist/components/user-avatar-group/UserAvatarGroup.js.map +1 -1
  349. package/dist/components/user-avatar-group/UserAvatarGroup.module.scss.cjs +1 -1
  350. package/dist/components/user-avatar-group/UserAvatarGroup.module.scss.js +14 -14
  351. package/dist/index.cjs +1 -1
  352. package/dist/index.d.ts +1 -1
  353. package/dist/index.d.ts.map +1 -1
  354. package/dist/index.js +44 -46
  355. package/dist/index.js.map +1 -1
  356. package/dist/utils/props.cjs +2 -0
  357. package/dist/utils/props.cjs.map +1 -0
  358. package/dist/utils/props.d.ts +13 -0
  359. package/dist/utils/props.d.ts.map +1 -0
  360. package/dist/utils/props.js +7 -0
  361. package/dist/utils/props.js.map +1 -0
  362. package/package.json +1 -9
  363. package/dist/components/team-sidebar/TeamSidebar.cjs +0 -2
  364. package/dist/components/team-sidebar/TeamSidebar.cjs.map +0 -1
  365. package/dist/components/team-sidebar/TeamSidebar.css +0 -1
  366. package/dist/components/team-sidebar/TeamSidebar.d.ts +0 -21
  367. package/dist/components/team-sidebar/TeamSidebar.d.ts.map +0 -1
  368. package/dist/components/team-sidebar/TeamSidebar.js +0 -85
  369. package/dist/components/team-sidebar/TeamSidebar.js.map +0 -1
  370. package/dist/components/team-sidebar/TeamSidebar.module.scss.cjs +0 -2
  371. package/dist/components/team-sidebar/TeamSidebar.module.scss.cjs.map +0 -1
  372. package/dist/components/team-sidebar/TeamSidebar.module.scss.js +0 -13
  373. package/dist/components/team-sidebar/TeamSidebar.module.scss.js.map +0 -1
  374. package/dist/components/team-sidebar/index.cjs +0 -2
  375. package/dist/components/team-sidebar/index.cjs.map +0 -1
  376. package/dist/components/team-sidebar/index.d.ts +0 -3
  377. package/dist/components/team-sidebar/index.d.ts.map +0 -1
  378. package/dist/components/team-sidebar/index.js +0 -5
  379. package/dist/components/team-sidebar/index.js.map +0 -1
  380. package/dist/node_modules/simplebar-react/dist/simplebar.min.css +0 -1
@@ -1,15 +1,15 @@
1
1
  import { jsx as e, jsxs as a } from "react/jsx-runtime";
2
- import __D from "@mattermost/compass-icons/components/chevron-down.js";const D=__D&&__D.default?__D.default:__D;
3
- import __H from "@mattermost/compass-icons/components/chevron-up.js";const H=__H&&__H.default?__H.default:__H;
4
- import __L from "@mattermost/compass-icons/components/cog-outline.js";const L=__L&&__L.default?__L.default:__L;
5
- import __M from "@mattermost/compass-icons/components/mattermost.js";const M=__M&&__M.default?__M.default:__M;
6
- import T from "../button/Button.js";
7
- import r, { IconSlotContext as U } from "../icon/Icon.js";
8
- import q from "../icon-button/IconButton.js";
2
+ import __L from "@mattermost/compass-icons/components/chevron-down.js";const L=__L&&__L.default?__L.default:__L;
3
+ import __M from "@mattermost/compass-icons/components/chevron-up.js";const M=__M&&__M.default?__M.default:__M;
4
+ import __T from "@mattermost/compass-icons/components/cog-outline.js";const T=__T&&__T.default?__T.default:__T;
5
+ import __U from "@mattermost/compass-icons/components/mattermost.js";const U=__U&&__U.default?__U.default:__U;
6
+ import q from "../button/Button.js";
7
+ import r, { IconSlotContext as E } from "../icon/Icon.js";
8
+ import F from "../icon-button/IconButton.js";
9
9
  import p from "../tag/Tag.js";
10
- import E from "../switch/Switch.js";
10
+ import G from "../switch/Switch.js";
11
11
  import l from "./AdminPanelHeader.module.scss.js";
12
- function $({
12
+ function w({
13
13
  titleId: u,
14
14
  title: f,
15
15
  subtitle: d,
@@ -32,21 +32,23 @@ function $({
32
32
  expandable: o = !1,
33
33
  isExpanded: n = !1,
34
34
  onToggleExpand: B,
35
- showDivider: j = !0,
36
- className: O = ""
35
+ expandLabel: j = "Expand section",
36
+ collapseLabel: O = "Collapse section",
37
+ showDivider: P = !0,
38
+ className: A = ""
37
39
  }) {
38
- const P = s || m || t != null || o, A = /* @__PURE__ */ e(r, { size: "20", glyph: /* @__PURE__ */ e(L, {}) });
40
+ const D = s || m || t != null || o, H = /* @__PURE__ */ e(r, { size: "20", glyph: /* @__PURE__ */ e(T, {}) });
39
41
  return /* @__PURE__ */ e(
40
42
  "header",
41
43
  {
42
44
  className: [
43
45
  l["admin-panel-header"],
44
- j ? l["admin-panel-header--divided"] : "",
45
- O
46
+ P ? l["admin-panel-header--divided"] : "",
47
+ A
46
48
  ].filter(Boolean).join(" ").trim(),
47
49
  children: /* @__PURE__ */ a("div", { className: l["admin-panel-header__main"], children: [
48
50
  /* @__PURE__ */ a("div", { className: l["admin-panel-header__start"], children: [
49
- h ? /* @__PURE__ */ e("div", { className: l["admin-panel-header__leading"], "aria-hidden": !0, children: /* @__PURE__ */ e(U.Provider, { value: { size: "20" }, children: _ ?? A }) }) : null,
51
+ h ? /* @__PURE__ */ e("div", { className: l["admin-panel-header__leading"], "aria-hidden": !0, children: /* @__PURE__ */ e(E.Provider, { value: { size: "20" }, children: _ ?? H }) }) : null,
50
52
  /* @__PURE__ */ a("div", { className: l["admin-panel-header__title-stack"], children: [
51
53
  /* @__PURE__ */ a("div", { className: l["admin-panel-header__title-row"], children: [
52
54
  /* @__PURE__ */ e("h2", { id: u, className: l["admin-panel-header__title"], children: f }),
@@ -56,7 +58,7 @@ function $({
56
58
  label: N,
57
59
  size: "x-small",
58
60
  type: "default",
59
- leadingIcon: /* @__PURE__ */ e(r, { size: "10", glyph: /* @__PURE__ */ e(M, {}) })
61
+ leadingIcon: /* @__PURE__ */ e(r, { size: "10", glyph: /* @__PURE__ */ e(U, {}) })
60
62
  }
61
63
  ) : null,
62
64
  v ? /* @__PURE__ */ e(p, { label: y, size: "x-small", type: "default" }) : null
@@ -64,9 +66,9 @@ function $({
64
66
  d != null ? /* @__PURE__ */ e("p", { className: l["admin-panel-header__subtitle"], children: d }) : null
65
67
  ] })
66
68
  ] }),
67
- P ? /* @__PURE__ */ a("div", { className: l["admin-panel-header__actions"], children: [
69
+ D ? /* @__PURE__ */ a("div", { className: l["admin-panel-header__actions"], children: [
68
70
  s ? /* @__PURE__ */ e(
69
- E,
71
+ G,
70
72
  {
71
73
  size: "medium",
72
74
  checked: b,
@@ -79,7 +81,7 @@ function $({
79
81
  }
80
82
  ) : null,
81
83
  m ? /* @__PURE__ */ e(
82
- T,
84
+ q,
83
85
  {
84
86
  type: "button",
85
87
  size: "medium",
@@ -90,19 +92,19 @@ function $({
90
92
  ) : null,
91
93
  t,
92
94
  o ? /* @__PURE__ */ e(
93
- q,
95
+ F,
94
96
  {
95
97
  type: "button",
96
98
  style: "default",
97
99
  size: "medium",
98
- "aria-label": n ? "Collapse section" : "Expand section",
100
+ "aria-label": n ? O : j,
99
101
  "aria-expanded": n,
100
102
  onClick: B,
101
103
  icon: /* @__PURE__ */ e(
102
104
  r,
103
105
  {
104
106
  size: "20",
105
- glyph: n ? /* @__PURE__ */ e(H, {}) : /* @__PURE__ */ e(D, {})
107
+ glyph: n ? /* @__PURE__ */ e(M, {}) : /* @__PURE__ */ e(L, {})
106
108
  }
107
109
  )
108
110
  }
@@ -113,6 +115,6 @@ function $({
113
115
  );
114
116
  }
115
117
  export {
116
- $ as default
118
+ w as default
117
119
  };
118
120
  //# sourceMappingURL=AdminPanelHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdminPanelHeader.js","sources":["../../../src/components/admin-panel-header/AdminPanelHeader.tsx"],"sourcesContent":["import { type ChangeEvent, type ReactNode } from 'react';\nimport ChevronDownIcon from '@mattermost/compass-icons/components/chevron-down';\nimport ChevronUpIcon from '@mattermost/compass-icons/components/chevron-up';\nimport CogOutlineIcon from '@mattermost/compass-icons/components/cog-outline';\nimport MattermostIcon from '@mattermost/compass-icons/components/mattermost';\nimport Button from '@/components/button/Button';\nimport Icon from '@/components/icon/Icon';\nimport { IconSlotContext } from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport Tag from '@/components/tag/Tag';\nimport Switch from '@/components/switch/Switch';\nimport styles from './AdminPanelHeader.module.scss';\n\n/** System Console admin panel expand/collapse (`expandedState` in Figma). */\nexport type AdminPanelExpandedState = 'collapsed' | 'expanded';\n\nexport interface AdminPanelHeaderProps {\n /** Passed to the title `h2` for `aria-labelledby` on the parent panel. */\n titleId: string;\n title: ReactNode;\n subtitle?: ReactNode;\n /** Trailing accessory actions rendered after Switch / Primary button and before expand. */\n headerActions?: ReactNode;\n iconLeft?: boolean;\n /** Icon for the 44×44 circular pill. Pass `<Icon glyph={<SomeIcon />} />` — AdminPanelHeader provides the correct size via context. */\n leadingIcon?: ReactNode;\n showBeta?: boolean;\n betaLabel?: string;\n showEnterpriseLabel?: boolean;\n enterpriseLabel?: string;\n showButton?: boolean;\n buttonLabel?: string;\n onButtonClick?: () => void;\n showSwitch?: boolean;\n switchLabel?: ReactNode;\n switchChecked?: boolean;\n defaultSwitchChecked?: boolean;\n onSwitchChange?: (\n checked: boolean,\n event: ChangeEvent<HTMLInputElement>,\n ) => void;\n switchDisabled?: boolean;\n expandable?: boolean;\n isExpanded?: boolean;\n onToggleExpand?: () => void;\n /** Bottom border under the header row (hidden when expandable and collapsed). */\n showDivider?: boolean;\n className?: string;\n}\n\n/**\n * Admin Panel Header is the titled rail for a System Console settings section: optional\n * leading icon, title with optional tags, subtitle, and trailing controls. It is composed\n * inside the [`Admin Panel`](/patterns/admin-panel) pattern; it can also be documented on\n * its own when adjusting header anatomy or behaviour.\n */\nexport default function AdminPanelHeader({\n titleId,\n title,\n subtitle,\n headerActions,\n iconLeft = false,\n leadingIcon,\n showBeta = false,\n betaLabel = 'Beta',\n showEnterpriseLabel = false,\n enterpriseLabel = 'Enterprise',\n showButton = false,\n buttonLabel = 'Button',\n onButtonClick,\n showSwitch = false,\n switchLabel = 'Off',\n switchChecked,\n defaultSwitchChecked,\n onSwitchChange,\n switchDisabled,\n expandable = false,\n isExpanded = false,\n onToggleExpand,\n showDivider = true,\n className = '',\n}: AdminPanelHeaderProps) {\n const hasActions =\n showSwitch || showButton || headerActions != null || expandable;\n\n const defaultLeading = <Icon size=\"20\" glyph={<CogOutlineIcon />} />;\n\n return (\n <header\n className={[\n styles['admin-panel-header'],\n showDivider ? styles['admin-panel-header--divided'] : '',\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <div className={styles['admin-panel-header__main']}>\n <div className={styles['admin-panel-header__start']}>\n {iconLeft ? (\n <div className={styles['admin-panel-header__leading']} aria-hidden>\n <IconSlotContext.Provider value={{ size: '20' }}>\n {leadingIcon ?? defaultLeading}\n </IconSlotContext.Provider>\n </div>\n ) : null}\n <div className={styles['admin-panel-header__title-stack']}>\n <div className={styles['admin-panel-header__title-row']}>\n <h2 id={titleId} className={styles['admin-panel-header__title']}>\n {title}\n </h2>\n {showEnterpriseLabel ? (\n <Tag\n label={enterpriseLabel}\n size=\"x-small\"\n type=\"default\"\n leadingIcon={<Icon size=\"10\" glyph={<MattermostIcon />} />}\n />\n ) : null}\n {showBeta ? (\n <Tag label={betaLabel} size=\"x-small\" type=\"default\" />\n ) : null}\n </div>\n {subtitle != null ? (\n <p className={styles['admin-panel-header__subtitle']}>\n {subtitle}\n </p>\n ) : null}\n </div>\n </div>\n {hasActions ? (\n <div className={styles['admin-panel-header__actions']}>\n {showSwitch ? (\n <Switch\n size=\"medium\"\n checked={switchChecked}\n defaultChecked={defaultSwitchChecked}\n disabled={switchDisabled}\n onChange={(e) => {\n onSwitchChange?.(e.target.checked, e);\n }}\n >\n {switchLabel}\n </Switch>\n ) : null}\n {showButton ? (\n <Button\n type=\"button\"\n size=\"medium\"\n emphasis=\"primary\"\n onClick={onButtonClick}\n >\n {buttonLabel}\n </Button>\n ) : null}\n {headerActions}\n {expandable ? (\n <IconButton\n type=\"button\"\n style=\"default\"\n size=\"medium\"\n aria-label={isExpanded ? 'Collapse section' : 'Expand section'}\n aria-expanded={isExpanded}\n onClick={onToggleExpand}\n icon={\n <Icon\n size=\"20\"\n glyph={isExpanded ? <ChevronUpIcon /> : <ChevronDownIcon />}\n />\n }\n />\n ) : null}\n </div>\n ) : null}\n </div>\n </header>\n );\n}\n"],"names":["AdminPanelHeader","titleId","title","subtitle","headerActions","iconLeft","leadingIcon","showBeta","betaLabel","showEnterpriseLabel","enterpriseLabel","showButton","buttonLabel","onButtonClick","showSwitch","switchLabel","switchChecked","defaultSwitchChecked","onSwitchChange","switchDisabled","expandable","isExpanded","onToggleExpand","showDivider","className","hasActions","defaultLeading","Icon","jsx","CogOutlineIcon","styles","jsxs","IconSlotContext","Tag","MattermostIcon","Switch","e","Button","IconButton","ChevronUpIcon","ChevronDownIcon"],"mappings":"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"}
1
+ {"version":3,"file":"AdminPanelHeader.js","sources":["../../../src/components/admin-panel-header/AdminPanelHeader.tsx"],"sourcesContent":["import { type ChangeEvent, type ReactNode } from 'react';\nimport ChevronDownIcon from '@mattermost/compass-icons/components/chevron-down';\nimport ChevronUpIcon from '@mattermost/compass-icons/components/chevron-up';\nimport CogOutlineIcon from '@mattermost/compass-icons/components/cog-outline';\nimport MattermostIcon from '@mattermost/compass-icons/components/mattermost';\nimport Button from '@/components/button/Button';\nimport Icon from '@/components/icon/Icon';\nimport { IconSlotContext } from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport Tag from '@/components/tag/Tag';\nimport Switch from '@/components/switch/Switch';\nimport styles from './AdminPanelHeader.module.scss';\n\n/** System Console admin panel expand/collapse (`expandedState` in Figma). */\nexport type AdminPanelExpandedState = 'collapsed' | 'expanded';\n\nexport interface AdminPanelHeaderProps {\n /** Passed to the title `h2` for `aria-labelledby` on the parent panel. */\n titleId: string;\n title: ReactNode;\n subtitle?: ReactNode;\n /** Trailing accessory actions rendered after Switch / Primary button and before expand. */\n headerActions?: ReactNode;\n iconLeft?: boolean;\n /** Icon for the 44×44 circular pill. Pass `<Icon glyph={<SomeIcon />} />` — AdminPanelHeader provides the correct size via context. */\n leadingIcon?: ReactNode;\n showBeta?: boolean;\n /** Default: \"Beta\". Accepts translated nodes. */\n betaLabel?: ReactNode;\n showEnterpriseLabel?: boolean;\n /** Default: \"Enterprise\". Accepts translated nodes. */\n enterpriseLabel?: ReactNode;\n showButton?: boolean;\n /** Default: \"Button\". Accepts translated nodes. */\n buttonLabel?: ReactNode;\n onButtonClick?: () => void;\n showSwitch?: boolean;\n switchLabel?: ReactNode;\n switchChecked?: boolean;\n defaultSwitchChecked?: boolean;\n onSwitchChange?: (\n checked: boolean,\n event: ChangeEvent<HTMLInputElement>,\n ) => void;\n switchDisabled?: boolean;\n expandable?: boolean;\n isExpanded?: boolean;\n onToggleExpand?: () => void;\n /** Accessible name for the expand button while collapsed. Default: \"Expand section\". */\n expandLabel?: string;\n /** Accessible name for the expand button while expanded. Default: \"Collapse section\". */\n collapseLabel?: string;\n /** Bottom border under the header row (hidden when expandable and collapsed). */\n showDivider?: boolean;\n className?: string;\n}\n\n/**\n * Admin Panel Header is the titled rail for a System Console settings section: optional\n * leading icon, title with optional tags, subtitle, and trailing controls. It is composed\n * inside the [`Admin Panel`](/patterns/admin-panel) pattern; it can also be documented on\n * its own when adjusting header anatomy or behaviour.\n */\nexport default function AdminPanelHeader({\n titleId,\n title,\n subtitle,\n headerActions,\n iconLeft = false,\n leadingIcon,\n showBeta = false,\n betaLabel = 'Beta',\n showEnterpriseLabel = false,\n enterpriseLabel = 'Enterprise',\n showButton = false,\n buttonLabel = 'Button',\n onButtonClick,\n showSwitch = false,\n switchLabel = 'Off',\n switchChecked,\n defaultSwitchChecked,\n onSwitchChange,\n switchDisabled,\n expandable = false,\n isExpanded = false,\n onToggleExpand,\n expandLabel = 'Expand section',\n collapseLabel = 'Collapse section',\n showDivider = true,\n className = '',\n}: AdminPanelHeaderProps) {\n const hasActions =\n showSwitch || showButton || headerActions != null || expandable;\n\n const defaultLeading = <Icon size=\"20\" glyph={<CogOutlineIcon />} />;\n\n return (\n <header\n className={[\n styles['admin-panel-header'],\n showDivider ? styles['admin-panel-header--divided'] : '',\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <div className={styles['admin-panel-header__main']}>\n <div className={styles['admin-panel-header__start']}>\n {iconLeft ? (\n <div className={styles['admin-panel-header__leading']} aria-hidden>\n <IconSlotContext.Provider value={{ size: '20' }}>\n {leadingIcon ?? defaultLeading}\n </IconSlotContext.Provider>\n </div>\n ) : null}\n <div className={styles['admin-panel-header__title-stack']}>\n <div className={styles['admin-panel-header__title-row']}>\n <h2 id={titleId} className={styles['admin-panel-header__title']}>\n {title}\n </h2>\n {showEnterpriseLabel ? (\n <Tag\n label={enterpriseLabel}\n size=\"x-small\"\n type=\"default\"\n leadingIcon={<Icon size=\"10\" glyph={<MattermostIcon />} />}\n />\n ) : null}\n {showBeta ? (\n <Tag label={betaLabel} size=\"x-small\" type=\"default\" />\n ) : null}\n </div>\n {subtitle != null ? (\n <p className={styles['admin-panel-header__subtitle']}>\n {subtitle}\n </p>\n ) : null}\n </div>\n </div>\n {hasActions ? (\n <div className={styles['admin-panel-header__actions']}>\n {showSwitch ? (\n <Switch\n size=\"medium\"\n checked={switchChecked}\n defaultChecked={defaultSwitchChecked}\n disabled={switchDisabled}\n onChange={(e) => {\n onSwitchChange?.(e.target.checked, e);\n }}\n >\n {switchLabel}\n </Switch>\n ) : null}\n {showButton ? (\n <Button\n type=\"button\"\n size=\"medium\"\n emphasis=\"primary\"\n onClick={onButtonClick}\n >\n {buttonLabel}\n </Button>\n ) : null}\n {headerActions}\n {expandable ? (\n <IconButton\n type=\"button\"\n style=\"default\"\n size=\"medium\"\n aria-label={isExpanded ? collapseLabel : expandLabel}\n aria-expanded={isExpanded}\n onClick={onToggleExpand}\n icon={\n <Icon\n size=\"20\"\n glyph={isExpanded ? <ChevronUpIcon /> : <ChevronDownIcon />}\n />\n }\n />\n ) : null}\n </div>\n ) : null}\n </div>\n </header>\n );\n}\n"],"names":["AdminPanelHeader","titleId","title","subtitle","headerActions","iconLeft","leadingIcon","showBeta","betaLabel","showEnterpriseLabel","enterpriseLabel","showButton","buttonLabel","onButtonClick","showSwitch","switchLabel","switchChecked","defaultSwitchChecked","onSwitchChange","switchDisabled","expandable","isExpanded","onToggleExpand","expandLabel","collapseLabel","showDivider","className","hasActions","defaultLeading","Icon","jsx","CogOutlineIcon","styles","jsxs","IconSlotContext","Tag","MattermostIcon","Switch","e","Button","IconButton","ChevronUpIcon","ChevronDownIcon"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./AdminPanelHeader.css');const e={"admin-panel-header":"_admin-panel-header_2n9e4_2","admin-panel-header--divided":"_admin-panel-header--divided_2n9e4_7","admin-panel-header__main":"_admin-panel-header__main_2n9e4_10","admin-panel-header__start":"_admin-panel-header__start_2n9e4_19","admin-panel-header__leading":"_admin-panel-header__leading_2n9e4_26","admin-panel-header__title-stack":"_admin-panel-header__title-stack_2n9e4_37","admin-panel-header__title-row":"_admin-panel-header__title-row_2n9e4_46","admin-panel-header__title":"_admin-panel-header__title_2n9e4_37","admin-panel-header__subtitle":"_admin-panel-header__subtitle_2n9e4_66","admin-panel-header__actions":"_admin-panel-header__actions_2n9e4_75"};exports.default=e;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./AdminPanelHeader.css');const e={"admin-panel-header":"_admin-panel-header_19tix_2","admin-panel-header--divided":"_admin-panel-header--divided_19tix_7","admin-panel-header__main":"_admin-panel-header__main_19tix_10","admin-panel-header__start":"_admin-panel-header__start_19tix_19","admin-panel-header__leading":"_admin-panel-header__leading_19tix_26","admin-panel-header__title-stack":"_admin-panel-header__title-stack_19tix_37","admin-panel-header__title-row":"_admin-panel-header__title-row_19tix_46","admin-panel-header__title":"_admin-panel-header__title_19tix_37","admin-panel-header__subtitle":"_admin-panel-header__subtitle_19tix_66","admin-panel-header__actions":"_admin-panel-header__actions_19tix_75"};exports.default=e;
2
2
  //# sourceMappingURL=AdminPanelHeader.module.scss.cjs.map
@@ -1,14 +1,14 @@
1
1
  import './AdminPanelHeader.css';const e = {
2
- "admin-panel-header": "_admin-panel-header_2n9e4_2",
3
- "admin-panel-header--divided": "_admin-panel-header--divided_2n9e4_7",
4
- "admin-panel-header__main": "_admin-panel-header__main_2n9e4_10",
5
- "admin-panel-header__start": "_admin-panel-header__start_2n9e4_19",
6
- "admin-panel-header__leading": "_admin-panel-header__leading_2n9e4_26",
7
- "admin-panel-header__title-stack": "_admin-panel-header__title-stack_2n9e4_37",
8
- "admin-panel-header__title-row": "_admin-panel-header__title-row_2n9e4_46",
9
- "admin-panel-header__title": "_admin-panel-header__title_2n9e4_37",
10
- "admin-panel-header__subtitle": "_admin-panel-header__subtitle_2n9e4_66",
11
- "admin-panel-header__actions": "_admin-panel-header__actions_2n9e4_75"
2
+ "admin-panel-header": "_admin-panel-header_19tix_2",
3
+ "admin-panel-header--divided": "_admin-panel-header--divided_19tix_7",
4
+ "admin-panel-header__main": "_admin-panel-header__main_19tix_10",
5
+ "admin-panel-header__start": "_admin-panel-header__start_19tix_19",
6
+ "admin-panel-header__leading": "_admin-panel-header__leading_19tix_26",
7
+ "admin-panel-header__title-stack": "_admin-panel-header__title-stack_19tix_37",
8
+ "admin-panel-header__title-row": "_admin-panel-header__title-row_19tix_46",
9
+ "admin-panel-header__title": "_admin-panel-header__title_19tix_37",
10
+ "admin-panel-header__subtitle": "_admin-panel-header__subtitle_19tix_66",
11
+ "admin-panel-header__actions": "_admin-panel-header__actions_19tix_75"
12
12
  };
13
13
  export {
14
14
  e as default
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),__O=require("@mattermost/compass-icons/components/close.js"),O=__O?.default??__O,__L=require("@mattermost/compass-icons/components/dots-vertical.js"),L=__L?.default??__L,__C=require("@mattermost/compass-icons/components/download-outline.js"),C=__C?.default??__C,__z=require("@mattermost/compass-icons/components/file-audio-outline-large.js"),z=__z?.default??__z,__w=require("@mattermost/compass-icons/components/file-code-outline-large.js"),w=__w?.default??__w,__y=require("@mattermost/compass-icons/components/file-excel-outline-large.js"),y=__y?.default??__y,__j=require("@mattermost/compass-icons/components/file-generic-outline-large.js"),j=__j?.default??__j,__P=require("@mattermost/compass-icons/components/file-image-outline-large.js"),P=__P?.default??__P,__$=require("@mattermost/compass-icons/components/file-patch-outline-large.js"),$=__$?.default??__$,__E=require("@mattermost/compass-icons/components/file-pdf-outline-large.js"),E=__E?.default??__E,__k=require("@mattermost/compass-icons/components/file-powerpoint-outline-large.js"),k=__k?.default??__k,__D=require("@mattermost/compass-icons/components/file-text-outline-large.js"),D=__D?.default??__D,__M=require("@mattermost/compass-icons/components/file-video-outline-large.js"),M=__M?.default??__M,__A=require("@mattermost/compass-icons/components/file-word-outline-large.js"),A=__A?.default??__A,__R=require("@mattermost/compass-icons/components/file-zip-outline-large.js"),R=__R?.default??__R,i=require("../icon/Icon.cjs"),s=require("../icon-button/IconButton.cjs"),U=require("../tag/Tag.cjs"),a=require("./AttachmentCard.module.scss.cjs"),B={audio:z,code:w,excel:y,generic:j,"image-icon":P,patch:$,pdf:E,powerpoint:k,text:D,video:M,word:A,zip:R},S={audio:"var(--attachment-blue)",code:void 0,excel:"var(--attachment-green)",generic:void 0,"image-icon":"var(--attachment-blue)",patch:void 0,pdf:"var(--attachment-red)",powerpoint:"var(--attachment-orange)",text:void 0,video:"var(--attachment-blue)",word:"var(--attachment-blue)",zip:void 0};function V({className:f="",fileName:r,fileMeta:d,fileType:t="generic",state:n="default",progress:o=0,thumbnailSrc:u,channelTag:m,dateTimeStamp:h,onOpen:x,onRemove:v,onDownload:p,onMore:I}){const c=n==="uploading",q=n==="uploaded",l=n==="default",F=l?"":a.default[`attachment-card--${n}`],b=[a.default["attachment-card"],F,f].filter(Boolean).join(" "),N=t!=="image-thumbnail"?B[t]:j,_=t!=="image-thumbnail"?S[t]:void 0,g=e.jsxs(e.Fragment,{children:[t==="image-thumbnail"&&u?e.jsx("img",{src:u,alt:"",className:a.default["attachment-card__thumbnail"]}):e.jsx("div",{className:a.default["attachment-card__icon"],style:_?{color:_}:void 0,children:e.jsx(i.default,{glyph:e.jsx(N,{size:40}),size:"40"})}),e.jsxs("div",{className:a.default["attachment-card__text"],children:[e.jsx("span",{className:a.default["attachment-card__filename"],children:r}),e.jsx("div",{className:a.default["attachment-card__secondary-details"],children:c?e.jsx("span",{className:a.default["attachment-card__uploading-text"],children:`Uploading… (${o}%)`}):e.jsxs(e.Fragment,{children:[m&&e.jsx(U.default,{label:m}),d&&e.jsxs("div",{className:a.default["attachment-card__details"],children:[e.jsx("span",{children:d}),h&&e.jsxs("span",{className:a.default["attachment-card__datetime"],children:[e.jsx("span",{children:"•"}),e.jsx("span",{children:h})]})]})]})})]})]});return e.jsxs("div",{className:b,children:[e.jsx("div",{className:a.default["attachment-card__container"],children:e.jsxs("div",{className:a.default["attachment-card__inner"],children:[l&&x?e.jsx("button",{type:"button",className:`${a.default["attachment-card__left"]} ${a.default["attachment-card__open"]}`,onClick:x,"aria-label":`Open ${r}`,children:g}):e.jsx("div",{className:a.default["attachment-card__left"],children:g}),e.jsx("div",{className:a.default["attachment-card__right"],children:e.jsxs("div",{className:a.default["attachment-card__actions"],children:[(q||c)&&e.jsx(s.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx(O,{}),size:"16"}),"aria-label":c?"Cancel upload":"Remove attachment",onClick:v}),l&&e.jsxs(e.Fragment,{children:[e.jsx(s.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx(L,{}),size:"16"}),"aria-label":"More options",onClick:I}),e.jsx(s.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx(C,{}),size:"16"}),"aria-label":"Download",onClick:p})]})]})})]})}),c&&e.jsx("div",{className:a.default["attachment-card__progress-bar"],children:e.jsx("div",{className:a.default["attachment-card__progress-fill"],style:{width:`${Math.min(100,Math.max(0,o))}%`}})})]})}exports.default=V;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),__P=require("@mattermost/compass-icons/components/close.js"),P=__P?.default??__P,__$=require("@mattermost/compass-icons/components/dots-vertical.js"),$=__$?.default??__$,__E=require("@mattermost/compass-icons/components/download-outline.js"),E=__E?.default??__E,__k=require("@mattermost/compass-icons/components/file-audio-outline-large.js"),k=__k?.default??__k,__D=require("@mattermost/compass-icons/components/file-code-outline-large.js"),D=__D?.default??__D,__M=require("@mattermost/compass-icons/components/file-excel-outline-large.js"),M=__M?.default??__M,__j=require("@mattermost/compass-icons/components/file-generic-outline-large.js"),j=__j?.default??__j,__U=require("@mattermost/compass-icons/components/file-image-outline-large.js"),U=__U?.default??__U,__A=require("@mattermost/compass-icons/components/file-patch-outline-large.js"),A=__A?.default??__A,__R=require("@mattermost/compass-icons/components/file-pdf-outline-large.js"),R=__R?.default??__R,__B=require("@mattermost/compass-icons/components/file-powerpoint-outline-large.js"),B=__B?.default??__B,__S=require("@mattermost/compass-icons/components/file-text-outline-large.js"),S=__S?.default??__S,__V=require("@mattermost/compass-icons/components/file-video-outline-large.js"),V=__V?.default??__V,__Y=require("@mattermost/compass-icons/components/file-word-outline-large.js"),Y=__Y?.default??__Y,__G=require("@mattermost/compass-icons/components/file-zip-outline-large.js"),G=__G?.default??__G,i=require("../icon/Icon.cjs"),r=require("../icon-button/IconButton.cjs"),W=require("../tag/Tag.cjs"),a=require("./AttachmentCard.module.scss.cjs"),Z=t=>`Uploading… (${t}%)`,H=t=>`Open ${t}`,J={audio:k,code:D,excel:M,generic:j,"image-icon":U,patch:A,pdf:R,powerpoint:B,text:S,video:V,word:Y,zip:G},K={audio:"var(--attachment-blue)",code:void 0,excel:"var(--attachment-green)",generic:void 0,"image-icon":"var(--attachment-blue)",patch:void 0,pdf:"var(--attachment-red)",powerpoint:"var(--attachment-orange)",text:void 0,video:"var(--attachment-blue)",word:"var(--attachment-blue)",zip:void 0};function Q({className:t="",fileName:d,fileMeta:o,fileType:n="generic",state:c="default",progress:u=0,thumbnailSrc:m,channelTag:h,dateTimeStamp:x,onOpen:_,onRemove:p,onDownload:v,onMore:I,formatUploadingLabel:q=Z,formatOpenLabel:F=H,cancelUploadLabel:b="Cancel upload",removeLabel:O="Remove attachment",moreLabel:L="More options",downloadLabel:N="Download"}){const l=c==="uploading",C=c==="uploaded",s=c==="default",z=s?"":a.default[`attachment-card--${c}`],w=[a.default["attachment-card"],z,t].filter(Boolean).join(" "),y=n!=="image-thumbnail"?J[n]:j,g=n!=="image-thumbnail"?K[n]:void 0,f=e.jsxs(e.Fragment,{children:[n==="image-thumbnail"&&m?e.jsx("img",{src:m,alt:"",className:a.default["attachment-card__thumbnail"]}):e.jsx("div",{className:a.default["attachment-card__icon"],style:g?{color:g}:void 0,children:e.jsx(i.default,{glyph:e.jsx(y,{size:40}),size:"40"})}),e.jsxs("div",{className:a.default["attachment-card__text"],children:[e.jsx("span",{className:a.default["attachment-card__filename"],children:d}),e.jsx("div",{className:a.default["attachment-card__secondary-details"],children:l?e.jsx("span",{className:a.default["attachment-card__uploading-text"],children:q(u)}):e.jsxs(e.Fragment,{children:[h&&e.jsx(W.default,{label:h}),o&&e.jsxs("div",{className:a.default["attachment-card__details"],children:[e.jsx("span",{children:o}),x&&e.jsxs("span",{className:a.default["attachment-card__datetime"],children:[e.jsx("span",{children:"•"}),e.jsx("span",{children:x})]})]})]})})]})]});return e.jsxs("div",{className:w,children:[e.jsx("div",{className:a.default["attachment-card__container"],children:e.jsxs("div",{className:a.default["attachment-card__inner"],children:[s&&_?e.jsx("button",{type:"button",className:`${a.default["attachment-card__left"]} ${a.default["attachment-card__open"]}`,onClick:_,"aria-label":F(d),children:f}):e.jsx("div",{className:a.default["attachment-card__left"],children:f}),e.jsx("div",{className:a.default["attachment-card__right"],children:e.jsxs("div",{className:a.default["attachment-card__actions"],children:[(C||l)&&e.jsx(r.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx(P,{}),size:"16"}),"aria-label":l?b:O,onClick:p}),s&&e.jsxs(e.Fragment,{children:[e.jsx(r.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx($,{}),size:"16"}),"aria-label":L,onClick:I}),e.jsx(r.default,{size:"small",icon:e.jsx(i.default,{glyph:e.jsx(E,{}),size:"16"}),"aria-label":N,onClick:v})]})]})})]})}),l&&e.jsx("div",{className:a.default["attachment-card__progress-bar"],children:e.jsx("div",{className:a.default["attachment-card__progress-fill"],style:{width:`${Math.min(100,Math.max(0,u))}%`}})})]})}exports.default=Q;
2
2
  //# sourceMappingURL=AttachmentCard.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentCard.cjs","sources":["../../../src/components/attachment-card/AttachmentCard.tsx"],"sourcesContent":["import type { ComponentType } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport DotsVerticalIcon from '@mattermost/compass-icons/components/dots-vertical';\nimport DownloadOutlineIcon from '@mattermost/compass-icons/components/download-outline';\nimport FileAudioOutlineLargeIcon from '@mattermost/compass-icons/components/file-audio-outline-large';\nimport FileCodeOutlineLargeIcon from '@mattermost/compass-icons/components/file-code-outline-large';\nimport FileExcelOutlineLargeIcon from '@mattermost/compass-icons/components/file-excel-outline-large';\nimport FileGenericOutlineLargeIcon from '@mattermost/compass-icons/components/file-generic-outline-large';\nimport FileImageOutlineLargeIcon from '@mattermost/compass-icons/components/file-image-outline-large';\nimport FilePatchOutlineLargeIcon from '@mattermost/compass-icons/components/file-patch-outline-large';\nimport FilePdfOutlineLargeIcon from '@mattermost/compass-icons/components/file-pdf-outline-large';\nimport FilePowerpointOutlineLargeIcon from '@mattermost/compass-icons/components/file-powerpoint-outline-large';\nimport FileTextOutlineLargeIcon from '@mattermost/compass-icons/components/file-text-outline-large';\nimport FileVideoOutlineLargeIcon from '@mattermost/compass-icons/components/file-video-outline-large';\nimport FileWordOutlineLargeIcon from '@mattermost/compass-icons/components/file-word-outline-large';\nimport FileZipOutlineLargeIcon from '@mattermost/compass-icons/components/file-zip-outline-large';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport Tag from '@/components/tag/Tag';\nimport styles from './AttachmentCard.module.scss';\n\nexport type AttachmentCardFileType =\n | 'text'\n | 'word'\n | 'excel'\n | 'powerpoint'\n | 'pdf'\n | 'image-icon'\n | 'image-thumbnail'\n | 'video'\n | 'audio'\n | 'generic'\n | 'patch'\n | 'zip'\n | 'code';\n\nexport type AttachmentCardState = 'default' | 'uploading' | 'uploaded';\n\nexport interface AttachmentCardProps {\n className?: string;\n /** File name to display. */\n fileName: string;\n /** File type + size string shown below the filename, e.g. \"TXT 15KB\". */\n fileMeta?: string;\n /** Controls the icon shown on the left. Default: \"generic\". */\n fileType?: AttachmentCardFileType;\n /** Card state. Default: \"default\" (browsing context). */\n state?: AttachmentCardState;\n /** Upload progress 0–100. Used when state=\"uploading\". */\n progress?: number;\n /** Thumbnail image URL. Used when fileType=\"image-thumbnail\". */\n thumbnailSrc?: string;\n /** Optional channel tag label shown below the filename, e.g. \"UX Design\". */\n channelTag?: string;\n /** Optional date/time stamp, e.g. \"Sep 24 5:14 PM\". */\n dateTimeStamp?: string;\n /** Called when the card is activated to open the file or its preview. */\n onOpen?: () => void;\n /** Called when the remove or cancel button is clicked. */\n onRemove?: () => void;\n /** Called when the download button is clicked (visible on hover in default state). */\n onDownload?: () => void;\n /** Called when the more-options button is clicked (visible on hover in default state). */\n onMore?: () => void;\n}\n\ntype IconComponent = ComponentType<{ size: number; className?: string }>;\n\nconst FILE_TYPE_ICONS: Record<\n Exclude<AttachmentCardFileType, 'image-thumbnail'>,\n IconComponent\n> = {\n audio: FileAudioOutlineLargeIcon,\n code: FileCodeOutlineLargeIcon,\n excel: FileExcelOutlineLargeIcon,\n generic: FileGenericOutlineLargeIcon,\n 'image-icon': FileImageOutlineLargeIcon,\n patch: FilePatchOutlineLargeIcon,\n pdf: FilePdfOutlineLargeIcon,\n powerpoint: FilePowerpointOutlineLargeIcon,\n text: FileTextOutlineLargeIcon,\n video: FileVideoOutlineLargeIcon,\n word: FileWordOutlineLargeIcon,\n zip: FileZipOutlineLargeIcon,\n};\n\nconst FILE_TYPE_COLORS: Record<\n Exclude<AttachmentCardFileType, 'image-thumbnail'>,\n string | undefined\n> = {\n audio: 'var(--attachment-blue)',\n code: undefined,\n excel: 'var(--attachment-green)',\n generic: undefined,\n 'image-icon': 'var(--attachment-blue)',\n patch: undefined,\n pdf: 'var(--attachment-red)',\n powerpoint: 'var(--attachment-orange)',\n text: undefined,\n video: 'var(--attachment-blue)',\n word: 'var(--attachment-blue)',\n zip: undefined,\n};\n\n/**\n * Attachment Cards represent a file shared in a channel, message, or task. Each card shows\n * the file's identity at a glance — type, name, size — and hosts the actions a viewer can\n * take on it.\n */\nexport default function AttachmentCard({\n className = '',\n fileName,\n fileMeta,\n fileType = 'generic',\n state = 'default',\n progress = 0,\n thumbnailSrc,\n channelTag,\n dateTimeStamp,\n onOpen,\n onRemove,\n onDownload,\n onMore,\n}: AttachmentCardProps) {\n const isUploading = state === 'uploading';\n const isUploaded = state === 'uploaded';\n const isDefault = state === 'default';\n\n const stateClass = !isDefault ? styles[`attachment-card--${state}`] : '';\n const rootClass = [styles['attachment-card'], stateClass, className]\n .filter(Boolean)\n .join(' ');\n\n const FileIcon =\n fileType !== 'image-thumbnail'\n ? FILE_TYPE_ICONS[fileType]\n : FileGenericOutlineLargeIcon;\n\n const iconColor =\n fileType !== 'image-thumbnail' ? FILE_TYPE_COLORS[fileType] : undefined;\n\n const fileIdentity = (\n <>\n {fileType === 'image-thumbnail' && thumbnailSrc ? (\n <img\n src={thumbnailSrc}\n alt=\"\"\n className={styles['attachment-card__thumbnail']}\n />\n ) : (\n <div\n className={styles['attachment-card__icon']}\n style={iconColor ? { color: iconColor } : undefined}\n >\n <Icon glyph={<FileIcon size={40} />} size=\"40\" />\n </div>\n )}\n\n <div className={styles['attachment-card__text']}>\n <span className={styles['attachment-card__filename']}>{fileName}</span>\n <div className={styles['attachment-card__secondary-details']}>\n {isUploading ? (\n <span className={styles['attachment-card__uploading-text']}>\n {`Uploading… (${progress}%)`}\n </span>\n ) : (\n <>\n {channelTag && <Tag label={channelTag} />}\n {fileMeta && (\n <div className={styles['attachment-card__details']}>\n <span>{fileMeta}</span>\n {dateTimeStamp && (\n <span className={styles['attachment-card__datetime']}>\n <span>{'•'}</span>\n <span>{dateTimeStamp}</span>\n </span>\n )}\n </div>\n )}\n </>\n )}\n </div>\n </div>\n </>\n );\n\n return (\n <div className={rootClass}>\n <div className={styles['attachment-card__container']}>\n <div className={styles['attachment-card__inner']}>\n {isDefault && onOpen ? (\n <button\n type=\"button\"\n className={`${styles['attachment-card__left']} ${styles['attachment-card__open']}`}\n onClick={onOpen}\n aria-label={`Open ${fileName}`}\n >\n {fileIdentity}\n </button>\n ) : (\n <div className={styles['attachment-card__left']}>\n {fileIdentity}\n </div>\n )}\n\n <div className={styles['attachment-card__right']}>\n <div className={styles['attachment-card__actions']}>\n {(isUploaded || isUploading) && (\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<CloseIcon />} size=\"16\" />}\n aria-label={\n isUploading ? 'Cancel upload' : 'Remove attachment'\n }\n onClick={onRemove}\n />\n )}\n {isDefault && (\n <>\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<DotsVerticalIcon />} size=\"16\" />}\n aria-label=\"More options\"\n onClick={onMore}\n />\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<DownloadOutlineIcon />} size=\"16\" />}\n aria-label=\"Download\"\n onClick={onDownload}\n />\n </>\n )}\n </div>\n </div>\n </div>\n </div>\n\n {isUploading && (\n <div className={styles['attachment-card__progress-bar']}>\n <div\n className={styles['attachment-card__progress-fill']}\n style={{ width: `${Math.min(100, Math.max(0, progress))}%` }}\n />\n </div>\n )}\n </div>\n );\n}\n"],"names":["FILE_TYPE_ICONS","FileAudioOutlineLargeIcon","FileCodeOutlineLargeIcon","FileExcelOutlineLargeIcon","FileGenericOutlineLargeIcon","FileImageOutlineLargeIcon","FilePatchOutlineLargeIcon","FilePdfOutlineLargeIcon","FilePowerpointOutlineLargeIcon","FileTextOutlineLargeIcon","FileVideoOutlineLargeIcon","FileWordOutlineLargeIcon","FileZipOutlineLargeIcon","FILE_TYPE_COLORS","AttachmentCard","className","fileName","fileMeta","fileType","state","progress","thumbnailSrc","channelTag","dateTimeStamp","onOpen","onRemove","onDownload","onMore","isUploading","isUploaded","isDefault","stateClass","styles","rootClass","FileIcon","iconColor","fileIdentity","jsxs","Fragment","jsx","Icon","Tag","IconButton","CloseIcon","DotsVerticalIcon","DownloadOutlineIcon"],"mappings":"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"}
1
+ {"version":3,"file":"AttachmentCard.cjs","sources":["../../../src/components/attachment-card/AttachmentCard.tsx"],"sourcesContent":["import type { ComponentType, ReactNode } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport DotsVerticalIcon from '@mattermost/compass-icons/components/dots-vertical';\nimport DownloadOutlineIcon from '@mattermost/compass-icons/components/download-outline';\nimport FileAudioOutlineLargeIcon from '@mattermost/compass-icons/components/file-audio-outline-large';\nimport FileCodeOutlineLargeIcon from '@mattermost/compass-icons/components/file-code-outline-large';\nimport FileExcelOutlineLargeIcon from '@mattermost/compass-icons/components/file-excel-outline-large';\nimport FileGenericOutlineLargeIcon from '@mattermost/compass-icons/components/file-generic-outline-large';\nimport FileImageOutlineLargeIcon from '@mattermost/compass-icons/components/file-image-outline-large';\nimport FilePatchOutlineLargeIcon from '@mattermost/compass-icons/components/file-patch-outline-large';\nimport FilePdfOutlineLargeIcon from '@mattermost/compass-icons/components/file-pdf-outline-large';\nimport FilePowerpointOutlineLargeIcon from '@mattermost/compass-icons/components/file-powerpoint-outline-large';\nimport FileTextOutlineLargeIcon from '@mattermost/compass-icons/components/file-text-outline-large';\nimport FileVideoOutlineLargeIcon from '@mattermost/compass-icons/components/file-video-outline-large';\nimport FileWordOutlineLargeIcon from '@mattermost/compass-icons/components/file-word-outline-large';\nimport FileZipOutlineLargeIcon from '@mattermost/compass-icons/components/file-zip-outline-large';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport Tag from '@/components/tag/Tag';\nimport styles from './AttachmentCard.module.scss';\n\nexport type AttachmentCardFileType =\n | 'text'\n | 'word'\n | 'excel'\n | 'powerpoint'\n | 'pdf'\n | 'image-icon'\n | 'image-thumbnail'\n | 'video'\n | 'audio'\n | 'generic'\n | 'patch'\n | 'zip'\n | 'code';\n\nexport type AttachmentCardState = 'default' | 'uploading' | 'uploaded';\n\nexport interface AttachmentCardProps {\n className?: string;\n /** File name to display. Also used in the default open-button name. */\n fileName: string;\n /** File type + size string shown below the filename, e.g. \"TXT 15KB\". */\n fileMeta?: ReactNode;\n /** Controls the icon shown on the left. Default: \"generic\". */\n fileType?: AttachmentCardFileType;\n /** Card state. Default: \"default\" (browsing context). */\n state?: AttachmentCardState;\n /** Upload progress 0–100. Used when state=\"uploading\". */\n progress?: number;\n /** Thumbnail image URL. Used when fileType=\"image-thumbnail\". */\n thumbnailSrc?: string;\n /** Optional channel tag label shown below the filename, e.g. \"UX Design\". */\n channelTag?: ReactNode;\n /** Optional date/time stamp, e.g. \"Sep 24 5:14 PM\". */\n dateTimeStamp?: ReactNode;\n /** Called when the card is activated to open the file or its preview. */\n onOpen?: () => void;\n /** Called when the remove or cancel button is clicked. */\n onRemove?: () => void;\n /** Called when the download button is clicked (visible on hover in default state). */\n onDownload?: () => void;\n /** Called when the more-options button is clicked (visible on hover in default state). */\n onMore?: () => void;\n /** Uploading status text. Default: `Uploading… ({progress}%)`. */\n formatUploadingLabel?: (progress: number) => ReactNode;\n /** Accessible name for the open button. Default: `Open {fileName}`. */\n formatOpenLabel?: (fileName: string) => string;\n /** Accessible name for the cancel button while uploading. Default: \"Cancel upload\". */\n cancelUploadLabel?: string;\n /** Accessible name for the remove button once uploaded. Default: \"Remove attachment\". */\n removeLabel?: string;\n /** Accessible name for the more-options button. Default: \"More options\". */\n moreLabel?: string;\n /** Accessible name for the download button. Default: \"Download\". */\n downloadLabel?: string;\n}\n\nconst defaultFormatUploadingLabel = (progress: number) =>\n `Uploading… (${progress}%)`;\nconst defaultFormatOpenLabel = (fileName: string) => `Open ${fileName}`;\n\ntype IconComponent = ComponentType<{ size: number; className?: string }>;\n\nconst FILE_TYPE_ICONS: Record<\n Exclude<AttachmentCardFileType, 'image-thumbnail'>,\n IconComponent\n> = {\n audio: FileAudioOutlineLargeIcon,\n code: FileCodeOutlineLargeIcon,\n excel: FileExcelOutlineLargeIcon,\n generic: FileGenericOutlineLargeIcon,\n 'image-icon': FileImageOutlineLargeIcon,\n patch: FilePatchOutlineLargeIcon,\n pdf: FilePdfOutlineLargeIcon,\n powerpoint: FilePowerpointOutlineLargeIcon,\n text: FileTextOutlineLargeIcon,\n video: FileVideoOutlineLargeIcon,\n word: FileWordOutlineLargeIcon,\n zip: FileZipOutlineLargeIcon,\n};\n\nconst FILE_TYPE_COLORS: Record<\n Exclude<AttachmentCardFileType, 'image-thumbnail'>,\n string | undefined\n> = {\n audio: 'var(--attachment-blue)',\n code: undefined,\n excel: 'var(--attachment-green)',\n generic: undefined,\n 'image-icon': 'var(--attachment-blue)',\n patch: undefined,\n pdf: 'var(--attachment-red)',\n powerpoint: 'var(--attachment-orange)',\n text: undefined,\n video: 'var(--attachment-blue)',\n word: 'var(--attachment-blue)',\n zip: undefined,\n};\n\n/**\n * Attachment Cards represent a file shared in a channel, message, or task. Each card shows\n * the file's identity at a glance — type, name, size — and hosts the actions a viewer can\n * take on it.\n */\nexport default function AttachmentCard({\n className = '',\n fileName,\n fileMeta,\n fileType = 'generic',\n state = 'default',\n progress = 0,\n thumbnailSrc,\n channelTag,\n dateTimeStamp,\n onOpen,\n onRemove,\n onDownload,\n onMore,\n formatUploadingLabel = defaultFormatUploadingLabel,\n formatOpenLabel = defaultFormatOpenLabel,\n cancelUploadLabel = 'Cancel upload',\n removeLabel = 'Remove attachment',\n moreLabel = 'More options',\n downloadLabel = 'Download',\n}: AttachmentCardProps) {\n const isUploading = state === 'uploading';\n const isUploaded = state === 'uploaded';\n const isDefault = state === 'default';\n\n const stateClass = !isDefault ? styles[`attachment-card--${state}`] : '';\n const rootClass = [styles['attachment-card'], stateClass, className]\n .filter(Boolean)\n .join(' ');\n\n const FileIcon =\n fileType !== 'image-thumbnail'\n ? FILE_TYPE_ICONS[fileType]\n : FileGenericOutlineLargeIcon;\n\n const iconColor =\n fileType !== 'image-thumbnail' ? FILE_TYPE_COLORS[fileType] : undefined;\n\n const fileIdentity = (\n <>\n {fileType === 'image-thumbnail' && thumbnailSrc ? (\n <img\n src={thumbnailSrc}\n alt=\"\"\n className={styles['attachment-card__thumbnail']}\n />\n ) : (\n <div\n className={styles['attachment-card__icon']}\n style={iconColor ? { color: iconColor } : undefined}\n >\n <Icon glyph={<FileIcon size={40} />} size=\"40\" />\n </div>\n )}\n\n <div className={styles['attachment-card__text']}>\n <span className={styles['attachment-card__filename']}>{fileName}</span>\n <div className={styles['attachment-card__secondary-details']}>\n {isUploading ? (\n <span className={styles['attachment-card__uploading-text']}>\n {formatUploadingLabel(progress)}\n </span>\n ) : (\n <>\n {channelTag && <Tag label={channelTag} />}\n {fileMeta && (\n <div className={styles['attachment-card__details']}>\n <span>{fileMeta}</span>\n {dateTimeStamp && (\n <span className={styles['attachment-card__datetime']}>\n <span>{'•'}</span>\n <span>{dateTimeStamp}</span>\n </span>\n )}\n </div>\n )}\n </>\n )}\n </div>\n </div>\n </>\n );\n\n return (\n <div className={rootClass}>\n <div className={styles['attachment-card__container']}>\n <div className={styles['attachment-card__inner']}>\n {isDefault && onOpen ? (\n <button\n type=\"button\"\n className={`${styles['attachment-card__left']} ${styles['attachment-card__open']}`}\n onClick={onOpen}\n aria-label={formatOpenLabel(fileName)}\n >\n {fileIdentity}\n </button>\n ) : (\n <div className={styles['attachment-card__left']}>\n {fileIdentity}\n </div>\n )}\n\n <div className={styles['attachment-card__right']}>\n <div className={styles['attachment-card__actions']}>\n {(isUploaded || isUploading) && (\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<CloseIcon />} size=\"16\" />}\n aria-label={isUploading ? cancelUploadLabel : removeLabel}\n onClick={onRemove}\n />\n )}\n {isDefault && (\n <>\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<DotsVerticalIcon />} size=\"16\" />}\n aria-label={moreLabel}\n onClick={onMore}\n />\n <IconButton\n size=\"small\"\n icon={<Icon glyph={<DownloadOutlineIcon />} size=\"16\" />}\n aria-label={downloadLabel}\n onClick={onDownload}\n />\n </>\n )}\n </div>\n </div>\n </div>\n </div>\n\n {isUploading && (\n <div className={styles['attachment-card__progress-bar']}>\n <div\n className={styles['attachment-card__progress-fill']}\n style={{ width: `${Math.min(100, Math.max(0, progress))}%` }}\n />\n </div>\n )}\n </div>\n );\n}\n"],"names":["defaultFormatUploadingLabel","progress","defaultFormatOpenLabel","fileName","FILE_TYPE_ICONS","FileAudioOutlineLargeIcon","FileCodeOutlineLargeIcon","FileExcelOutlineLargeIcon","FileGenericOutlineLargeIcon","FileImageOutlineLargeIcon","FilePatchOutlineLargeIcon","FilePdfOutlineLargeIcon","FilePowerpointOutlineLargeIcon","FileTextOutlineLargeIcon","FileVideoOutlineLargeIcon","FileWordOutlineLargeIcon","FileZipOutlineLargeIcon","FILE_TYPE_COLORS","AttachmentCard","className","fileMeta","fileType","state","thumbnailSrc","channelTag","dateTimeStamp","onOpen","onRemove","onDownload","onMore","formatUploadingLabel","formatOpenLabel","cancelUploadLabel","removeLabel","moreLabel","downloadLabel","isUploading","isUploaded","isDefault","stateClass","styles","rootClass","FileIcon","iconColor","fileIdentity","jsxs","Fragment","jsx","Icon","Tag","IconButton","CloseIcon","DotsVerticalIcon","DownloadOutlineIcon"],"mappings":"k2CA8EMA,EAA+BC,GACnC,eAAeA,CAAQ,KACnBC,EAA0BC,GAAqB,QAAQA,CAAQ,GAI/DC,EAGF,CACF,MAAOC,EACP,KAAMC,EACN,MAAOC,EACP,QAASC,EACT,aAAcC,EACd,MAAOC,EACP,IAAKC,EACL,WAAYC,EACZ,KAAMC,EACN,MAAOC,EACP,KAAMC,EACN,IAAKC,CACP,EAEMC,EAGF,CACF,MAAO,yBACP,KAAM,OACN,MAAO,0BACP,QAAS,OACT,aAAc,yBACd,MAAO,OACP,IAAK,wBACL,WAAY,2BACZ,KAAM,OACN,MAAO,yBACP,KAAM,yBACN,IAAK,MACP,EAOA,SAAwBC,EAAe,CACrC,UAAAC,EAAY,GACZ,SAAAhB,EACA,SAAAiB,EACA,SAAAC,EAAW,UACX,MAAAC,EAAQ,UACR,SAAArB,EAAW,EACX,aAAAsB,EACA,WAAAC,EACA,cAAAC,EACA,OAAAC,EACA,SAAAC,EACA,WAAAC,EACA,OAAAC,EACA,qBAAAC,EAAuB9B,EACvB,gBAAA+B,EAAkB7B,EAClB,kBAAA8B,EAAoB,gBACpB,YAAAC,EAAc,oBACd,UAAAC,EAAY,eACZ,cAAAC,EAAgB,UAClB,EAAwB,CACtB,MAAMC,EAAcd,IAAU,YACxBe,EAAaf,IAAU,WACvBgB,EAAYhB,IAAU,UAEtBiB,EAAcD,EAAkD,GAAtCE,EAAAA,QAAO,oBAAoBlB,CAAK,EAAE,EAC5DmB,EAAY,CAACD,UAAO,iBAAiB,EAAGD,EAAYpB,CAAS,EAChE,OAAO,OAAO,EACd,KAAK,GAAG,EAELuB,EACJrB,IAAa,kBACTjB,EAAgBiB,CAAQ,EACxBb,EAEAmC,EACJtB,IAAa,kBAAoBJ,EAAiBI,CAAQ,EAAI,OAE1DuB,EACJC,EAAAA,KAAAC,EAAAA,SAAA,CACG,SAAA,CAAAzB,IAAa,mBAAqBE,EACjCwB,EAAAA,IAAC,MAAA,CACC,IAAKxB,EACL,IAAI,GACJ,UAAWiB,EAAAA,QAAO,4BAA4B,CAAA,CAAA,EAGhDO,EAAAA,IAAC,MAAA,CACC,UAAWP,EAAAA,QAAO,uBAAuB,EACzC,MAAOG,EAAY,CAAE,MAAOA,GAAc,OAE1C,SAAAI,EAAAA,IAACC,WAAK,MAAOD,EAAAA,IAACL,GAAS,KAAM,EAAA,CAAI,EAAI,KAAK,IAAA,CAAK,CAAA,CAAA,EAInDG,EAAAA,KAAC,MAAA,CAAI,UAAWL,EAAAA,QAAO,uBAAuB,EAC5C,SAAA,CAAAO,MAAC,OAAA,CAAK,UAAWP,EAAAA,QAAO,2BAA2B,EAAI,SAAArC,EAAS,QAC/D,MAAA,CAAI,UAAWqC,EAAAA,QAAO,oCAAoC,EACxD,SAAAJ,EACCW,EAAAA,IAAC,OAAA,CAAK,UAAWP,EAAAA,QAAO,iCAAiC,EACtD,WAAqBvC,CAAQ,CAAA,CAChC,EAEA4C,EAAAA,KAAAC,WAAA,CACG,SAAA,CAAAtB,GAAcuB,EAAAA,IAACE,EAAAA,QAAA,CAAI,MAAOzB,CAAA,CAAY,EACtCJ,GACCyB,EAAAA,KAAC,MAAA,CAAI,UAAWL,UAAO,0BAA0B,EAC/C,SAAA,CAAAO,EAAAA,IAAC,QAAM,SAAA3B,CAAA,CAAS,EACfK,GACCoB,EAAAA,KAAC,OAAA,CAAK,UAAWL,UAAO,2BAA2B,EACjD,SAAA,CAAAO,EAAAA,IAAC,QAAM,SAAA,GAAA,CAAI,EACXA,EAAAA,IAAC,QAAM,SAAAtB,CAAA,CAAc,CAAA,CAAA,CACvB,CAAA,CAAA,CAEJ,CAAA,CAAA,CAEJ,CAAA,CAEJ,CAAA,CAAA,CACF,CAAA,EACF,EAGF,OACEoB,EAAAA,KAAC,MAAA,CAAI,UAAWJ,EACd,SAAA,CAAAM,EAAAA,IAAC,MAAA,CAAI,UAAWP,EAAAA,QAAO,4BAA4B,EACjD,gBAAC,MAAA,CAAI,UAAWA,EAAAA,QAAO,wBAAwB,EAC5C,SAAA,CAAAF,GAAaZ,EACZqB,EAAAA,IAAC,SAAA,CACC,KAAK,SACL,UAAW,GAAGP,EAAAA,QAAO,uBAAuB,CAAC,IAAIA,EAAAA,QAAO,uBAAuB,CAAC,GAChF,QAASd,EACT,aAAYK,EAAgB5B,CAAQ,EAEnC,SAAAyC,CAAA,CAAA,EAGHG,EAAAA,IAAC,MAAA,CAAI,UAAWP,EAAAA,QAAO,uBAAuB,EAC3C,SAAAI,EACH,EAGFG,EAAAA,IAAC,MAAA,CAAI,UAAWP,EAAAA,QAAO,wBAAwB,EAC7C,SAAAK,EAAAA,KAAC,MAAA,CAAI,UAAWL,EAAAA,QAAO,0BAA0B,EAC7C,SAAA,EAAAH,GAAcD,IACdW,EAAAA,IAACG,EAAAA,QAAA,CACC,KAAK,QACL,WAAOF,UAAA,CAAK,YAAQG,EAAA,EAAU,EAAI,KAAK,KAAK,EAC5C,aAAYf,EAAcJ,EAAoBC,EAC9C,QAASN,CAAA,CAAA,EAGZW,GACCO,EAAAA,KAAAC,WAAA,CACE,SAAA,CAAAC,EAAAA,IAACG,EAAAA,QAAA,CACC,KAAK,QACL,WAAOF,UAAA,CAAK,YAAQI,EAAA,EAAiB,EAAI,KAAK,KAAK,EACnD,aAAYlB,EACZ,QAASL,CAAA,CAAA,EAEXkB,EAAAA,IAACG,EAAAA,QAAA,CACC,KAAK,QACL,WAAOF,UAAA,CAAK,YAAQK,EAAA,EAAoB,EAAI,KAAK,KAAK,EACtD,aAAYlB,EACZ,QAASP,CAAA,CAAA,CACX,CAAA,CACF,CAAA,CAAA,CAEJ,CAAA,CACF,CAAA,CAAA,CACF,CAAA,CACF,EAECQ,GACCW,EAAAA,IAAC,MAAA,CAAI,UAAWP,EAAAA,QAAO,+BAA+B,EACpD,SAAAO,EAAAA,IAAC,MAAA,CACC,UAAWP,EAAAA,QAAO,gCAAgC,EAClD,MAAO,CAAE,MAAO,GAAG,KAAK,IAAI,IAAK,KAAK,IAAI,EAAGvC,CAAQ,CAAC,CAAC,GAAA,CAAI,CAAA,CAC7D,CACF,CAAA,EAEJ,CAEJ"}
@@ -1,11 +1,12 @@
1
+ import { ReactNode } from 'react';
1
2
  export type AttachmentCardFileType = 'text' | 'word' | 'excel' | 'powerpoint' | 'pdf' | 'image-icon' | 'image-thumbnail' | 'video' | 'audio' | 'generic' | 'patch' | 'zip' | 'code';
2
3
  export type AttachmentCardState = 'default' | 'uploading' | 'uploaded';
3
4
  export interface AttachmentCardProps {
4
5
  className?: string;
5
- /** File name to display. */
6
+ /** File name to display. Also used in the default open-button name. */
6
7
  fileName: string;
7
8
  /** File type + size string shown below the filename, e.g. "TXT 15KB". */
8
- fileMeta?: string;
9
+ fileMeta?: ReactNode;
9
10
  /** Controls the icon shown on the left. Default: "generic". */
10
11
  fileType?: AttachmentCardFileType;
11
12
  /** Card state. Default: "default" (browsing context). */
@@ -15,9 +16,9 @@ export interface AttachmentCardProps {
15
16
  /** Thumbnail image URL. Used when fileType="image-thumbnail". */
16
17
  thumbnailSrc?: string;
17
18
  /** Optional channel tag label shown below the filename, e.g. "UX Design". */
18
- channelTag?: string;
19
+ channelTag?: ReactNode;
19
20
  /** Optional date/time stamp, e.g. "Sep 24 5:14 PM". */
20
- dateTimeStamp?: string;
21
+ dateTimeStamp?: ReactNode;
21
22
  /** Called when the card is activated to open the file or its preview. */
22
23
  onOpen?: () => void;
23
24
  /** Called when the remove or cancel button is clicked. */
@@ -26,11 +27,23 @@ export interface AttachmentCardProps {
26
27
  onDownload?: () => void;
27
28
  /** Called when the more-options button is clicked (visible on hover in default state). */
28
29
  onMore?: () => void;
30
+ /** Uploading status text. Default: `Uploading… ({progress}%)`. */
31
+ formatUploadingLabel?: (progress: number) => ReactNode;
32
+ /** Accessible name for the open button. Default: `Open {fileName}`. */
33
+ formatOpenLabel?: (fileName: string) => string;
34
+ /** Accessible name for the cancel button while uploading. Default: "Cancel upload". */
35
+ cancelUploadLabel?: string;
36
+ /** Accessible name for the remove button once uploaded. Default: "Remove attachment". */
37
+ removeLabel?: string;
38
+ /** Accessible name for the more-options button. Default: "More options". */
39
+ moreLabel?: string;
40
+ /** Accessible name for the download button. Default: "Download". */
41
+ downloadLabel?: string;
29
42
  }
30
43
  /**
31
44
  * Attachment Cards represent a file shared in a channel, message, or task. Each card shows
32
45
  * the file's identity at a glance — type, name, size — and hosts the actions a viewer can
33
46
  * take on it.
34
47
  */
35
- export default function AttachmentCard({ className, fileName, fileMeta, fileType, state, progress, thumbnailSrc, channelTag, dateTimeStamp, onOpen, onRemove, onDownload, onMore, }: AttachmentCardProps): import("react/jsx-runtime").JSX.Element;
48
+ export default function AttachmentCard({ className, fileName, fileMeta, fileType, state, progress, thumbnailSrc, channelTag, dateTimeStamp, onOpen, onRemove, onDownload, onMore, formatUploadingLabel, formatOpenLabel, cancelUploadLabel, removeLabel, moreLabel, downloadLabel, }: AttachmentCardProps): import("react/jsx-runtime").JSX.Element;
36
49
  //# sourceMappingURL=AttachmentCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentCard.d.ts","sourceRoot":"","sources":["../../../src/components/attachment-card/AttachmentCard.tsx"],"names":[],"mappings":"AAqBA,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,MAAM,GACN,OAAO,GACP,YAAY,GACZ,KAAK,GACL,YAAY,GACZ,iBAAiB,GACjB,OAAO,GACP,OAAO,GACP,SAAS,GACT,OAAO,GACP,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;AAEvE,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,yDAAyD;IACzD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAwCD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,SAAc,EACd,QAAQ,EACR,QAAQ,EACR,QAAoB,EACpB,KAAiB,EACjB,QAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,EACb,MAAM,EACN,QAAQ,EACR,UAAU,EACV,MAAM,GACP,EAAE,mBAAmB,2CA6HrB"}
1
+ {"version":3,"file":"AttachmentCard.d.ts","sourceRoot":"","sources":["../../../src/components/attachment-card/AttachmentCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAqBtD,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,MAAM,GACN,OAAO,GACP,YAAY,GACZ,KAAK,GACL,YAAY,GACZ,iBAAiB,GACjB,OAAO,GACP,OAAO,GACP,SAAS,GACT,OAAO,GACP,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;AAEvE,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,yDAAyD;IACzD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,uDAAuD;IACvD,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,kEAAkE;IAClE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;IACvD,uEAAuE;IACvE,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,uFAAuF;IACvF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yFAAyF;IACzF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA4CD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,SAAc,EACd,QAAQ,EACR,QAAQ,EACR,QAAoB,EACpB,KAAiB,EACjB,QAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,EACb,MAAM,EACN,QAAQ,EACR,UAAU,EACV,MAAM,EACN,oBAAkD,EAClD,eAAwC,EACxC,iBAAmC,EACnC,WAAiC,EACjC,SAA0B,EAC1B,aAA0B,GAC3B,EAAE,mBAAmB,2CA2HrB"}