@mattermost/compass-ui 0.1.0-alpha.27 → 0.1.0-alpha.29
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.
- package/dist/compass-ui.css +20 -2
- package/dist/components/admin-console-footer/AdminConsoleFooter.css +1 -1
- package/dist/components/admin-console-footer/AdminConsoleFooter.module.scss.cjs +1 -1
- package/dist/components/admin-console-footer/AdminConsoleFooter.module.scss.js +7 -7
- package/dist/components/admin-console-header/AdminConsoleHeader.css +1 -1
- package/dist/components/admin-console-header/AdminConsoleHeader.module.scss.cjs +1 -1
- package/dist/components/admin-console-header/AdminConsoleHeader.module.scss.js +8 -8
- package/dist/components/admin-panel/AdminPanel.css +1 -1
- package/dist/components/admin-panel/AdminPanel.module.scss.cjs +1 -1
- package/dist/components/admin-panel/AdminPanel.module.scss.js +5 -5
- package/dist/components/admin-panel-footer/AdminPanelFooter.css +1 -1
- package/dist/components/admin-panel-footer/AdminPanelFooter.module.scss.cjs +1 -1
- package/dist/components/admin-panel-footer/AdminPanelFooter.module.scss.js +5 -5
- package/dist/components/admin-panel-header/AdminPanelHeader.cjs +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.cjs.map +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.css +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.d.ts +6 -0
- package/dist/components/admin-panel-header/AdminPanelHeader.d.ts.map +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.js +145 -109
- package/dist/components/admin-panel-header/AdminPanelHeader.js.map +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.module.scss.cjs +1 -1
- package/dist/components/admin-panel-header/AdminPanelHeader.module.scss.js +11 -10
- package/dist/components/admin-panel-header/AdminPanelHeader.module.scss.js.map +1 -1
- package/dist/components/attachment-card/AttachmentCard.css +1 -1
- package/dist/components/attachment-card/AttachmentCard.module.scss.cjs +1 -1
- package/dist/components/attachment-card/AttachmentCard.module.scss.js +22 -19
- package/dist/components/attachment-card/AttachmentCard.module.scss.js.map +1 -1
- package/dist/components/button/Button.css +1 -1
- package/dist/components/button/Button.module.scss.cjs +1 -1
- package/dist/components/button/Button.module.scss.js +20 -19
- package/dist/components/button/Button.module.scss.js.map +1 -1
- package/dist/components/card-button/CardButton.css +1 -1
- package/dist/components/card-button/CardButton.module.scss.cjs +1 -1
- package/dist/components/card-button/CardButton.module.scss.js +7 -7
- package/dist/components/card-button/CardButtonGroup.css +1 -1
- package/dist/components/card-button/CardButtonGroup.module.scss.cjs +1 -1
- package/dist/components/card-button/CardButtonGroup.module.scss.js +1 -1
- package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.css +1 -1
- package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.module.scss.cjs +1 -1
- package/dist/components/channel-info-msg-header/ChannelInfoMsgHeader.module.scss.js +8 -8
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.cjs +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.cjs.map +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.css +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.d.ts +66 -7
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.d.ts.map +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.js +163 -93
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.js.map +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.module.scss.cjs +1 -1
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.module.scss.js +35 -22
- package/dist/components/channel-sidebar-item/ChannelSidebarItem.module.scss.js.map +1 -1
- package/dist/components/checkbox/Checkbox.css +1 -1
- package/dist/components/checkbox/Checkbox.module.scss.cjs +1 -1
- package/dist/components/checkbox/Checkbox.module.scss.js +7 -7
- package/dist/components/chip/Chip.cjs +1 -1
- package/dist/components/chip/Chip.cjs.map +1 -1
- package/dist/components/chip/Chip.css +1 -1
- package/dist/components/chip/Chip.d.ts.map +1 -1
- package/dist/components/chip/Chip.js +8 -8
- package/dist/components/chip/Chip.js.map +1 -1
- package/dist/components/chip/Chip.module.scss.cjs +1 -1
- package/dist/components/chip/Chip.module.scss.js +13 -10
- package/dist/components/chip/Chip.module.scss.js.map +1 -1
- package/dist/components/chip/ChipGroup.cjs +1 -1
- package/dist/components/chip/ChipGroup.cjs.map +1 -1
- package/dist/components/chip/ChipGroup.css +1 -1
- package/dist/components/chip/ChipGroup.d.ts +1 -1
- package/dist/components/chip/ChipGroup.d.ts.map +1 -1
- package/dist/components/chip/ChipGroup.js +30 -30
- package/dist/components/chip/ChipGroup.js.map +1 -1
- package/dist/components/chip/ChipGroup.module.scss.cjs +1 -1
- package/dist/components/chip/ChipGroup.module.scss.js +1 -1
- package/dist/components/combobox/Combobox.cjs +1 -1
- package/dist/components/combobox/Combobox.cjs.map +1 -1
- package/dist/components/combobox/Combobox.css +1 -1
- package/dist/components/combobox/Combobox.d.ts +10 -0
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.js +269 -252
- package/dist/components/combobox/Combobox.js.map +1 -1
- package/dist/components/combobox/Combobox.module.scss.cjs +1 -1
- package/dist/components/combobox/Combobox.module.scss.js +34 -31
- package/dist/components/combobox/Combobox.module.scss.js.map +1 -1
- package/dist/components/date-range-picker/DateRangePicker.cjs +1 -1
- package/dist/components/date-range-picker/DateRangePicker.cjs.map +1 -1
- package/dist/components/date-range-picker/DateRangePicker.css +1 -1
- package/dist/components/date-range-picker/DateRangePicker.d.ts +14 -1
- package/dist/components/date-range-picker/DateRangePicker.d.ts.map +1 -1
- package/dist/components/date-range-picker/DateRangePicker.js +217 -195
- package/dist/components/date-range-picker/DateRangePicker.js.map +1 -1
- package/dist/components/date-range-picker/DateRangePicker.module.scss.cjs +1 -1
- package/dist/components/date-range-picker/DateRangePicker.module.scss.js +29 -26
- package/dist/components/date-range-picker/DateRangePicker.module.scss.js.map +1 -1
- package/dist/components/divider/Divider.css +1 -1
- package/dist/components/divider/Divider.module.scss.cjs +1 -1
- package/dist/components/divider/Divider.module.scss.js +1 -1
- package/dist/components/dropdown/Dropdown.css +1 -1
- package/dist/components/dropdown/Dropdown.module.scss.cjs +1 -1
- package/dist/components/dropdown/Dropdown.module.scss.js +23 -22
- package/dist/components/dropdown/Dropdown.module.scss.js.map +1 -1
- package/dist/components/emoji/Emoji.css +1 -1
- package/dist/components/emoji/Emoji.module.scss.cjs +1 -1
- package/dist/components/emoji/Emoji.module.scss.js +12 -12
- package/dist/components/emoji-button/EmojiButton.css +1 -1
- package/dist/components/emoji-button/EmojiButton.module.scss.cjs +1 -1
- package/dist/components/emoji-button/EmojiButton.module.scss.js +12 -9
- package/dist/components/emoji-button/EmojiButton.module.scss.js.map +1 -1
- package/dist/components/emoji-popover/EmojiPopover.css +1 -1
- package/dist/components/emoji-popover/EmojiPopover.module.scss.cjs +1 -1
- package/dist/components/emoji-popover/EmojiPopover.module.scss.js +21 -21
- package/dist/components/empty-state/EmptyState.css +1 -1
- package/dist/components/empty-state/EmptyState.module.scss.cjs +1 -1
- package/dist/components/empty-state/EmptyState.module.scss.js +7 -7
- package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.css +1 -1
- package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.module.scss.cjs +1 -1
- package/dist/components/feature-discovery-panel/FeatureDiscoveryPanel.module.scss.js +9 -9
- package/dist/components/field/FieldClearButton.css +1 -1
- package/dist/components/field/FieldClearButton.module.scss.cjs +1 -1
- package/dist/components/field/FieldClearButton.module.scss.js +3 -3
- package/dist/components/field-message/FieldMessage.css +1 -1
- package/dist/components/field-message/FieldMessage.module.scss.cjs +1 -1
- package/dist/components/field-message/FieldMessage.module.scss.js +7 -7
- package/dist/components/global-banner/GlobalBanner.css +1 -1
- package/dist/components/global-banner/GlobalBanner.module.scss.cjs +1 -1
- package/dist/components/global-banner/GlobalBanner.module.scss.js +10 -10
- package/dist/components/icon/Icon.css +1 -1
- package/dist/components/icon/Icon.module.scss.cjs +1 -1
- package/dist/components/icon/Icon.module.scss.js +13 -13
- package/dist/components/icon-button/IconButton.css +1 -1
- package/dist/components/icon-button/IconButton.module.scss.cjs +1 -1
- package/dist/components/icon-button/IconButton.module.scss.js +19 -16
- package/dist/components/icon-button/IconButton.module.scss.js.map +1 -1
- package/dist/components/illustration/Illustration.css +1 -1
- package/dist/components/illustration/Illustration.module.scss.cjs +1 -1
- package/dist/components/illustration/Illustration.module.scss.js +1 -1
- package/dist/components/image-preview/ImagePreview.css +1 -1
- package/dist/components/image-preview/ImagePreview.module.scss.cjs +1 -1
- package/dist/components/image-preview/ImagePreview.module.scss.js +15 -15
- package/dist/components/link-preview/LinkPreview.css +1 -1
- package/dist/components/link-preview/LinkPreview.module.scss.cjs +1 -1
- package/dist/components/link-preview/LinkPreview.module.scss.js +14 -14
- package/dist/components/mention-badge/MentionBadge.css +1 -1
- package/dist/components/mention-badge/MentionBadge.module.scss.cjs +1 -1
- package/dist/components/mention-badge/MentionBadge.module.scss.js +9 -9
- package/dist/components/menu-group-heading/MenuGroupHeading.css +1 -1
- package/dist/components/menu-group-heading/MenuGroupHeading.module.scss.cjs +1 -1
- package/dist/components/menu-group-heading/MenuGroupHeading.module.scss.js +2 -2
- package/dist/components/menu-item/MenuItem.css +1 -1
- package/dist/components/menu-item/MenuItem.module.scss.cjs +1 -1
- package/dist/components/menu-item/MenuItem.module.scss.js +18 -18
- package/dist/components/message-actions/MessageActions.css +1 -1
- package/dist/components/message-actions/MessageActions.module.scss.cjs +1 -1
- package/dist/components/message-actions/MessageActions.module.scss.js +2 -2
- package/dist/components/message-header/MessageHeader.css +1 -1
- package/dist/components/message-header/MessageHeader.module.scss.cjs +1 -1
- package/dist/components/message-header/MessageHeader.module.scss.js +3 -3
- package/dist/components/message-separator/MessageSeparator.css +1 -1
- package/dist/components/message-separator/MessageSeparator.module.scss.cjs +1 -1
- package/dist/components/message-separator/MessageSeparator.module.scss.js +11 -11
- package/dist/components/modal/Modal.cjs +1 -1
- package/dist/components/modal/Modal.cjs.map +1 -1
- package/dist/components/modal/Modal.css +1 -1
- package/dist/components/modal/Modal.d.ts +11 -1
- package/dist/components/modal/Modal.d.ts.map +1 -1
- package/dist/components/modal/Modal.js +38 -36
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/Modal.module.scss.cjs +1 -1
- package/dist/components/modal/Modal.module.scss.js +11 -11
- package/dist/components/modal/ModalOverlay.cjs.map +1 -1
- package/dist/components/modal/ModalOverlay.css +1 -1
- package/dist/components/modal/ModalOverlay.d.ts +1 -1
- package/dist/components/modal/ModalOverlay.js.map +1 -1
- package/dist/components/modal/ModalOverlay.module.scss.cjs +1 -1
- package/dist/components/modal/ModalOverlay.module.scss.js +5 -5
- package/dist/components/modal-footer/ModalFooter.css +1 -1
- package/dist/components/modal-footer/ModalFooter.module.scss.cjs +1 -1
- package/dist/components/modal-footer/ModalFooter.module.scss.js +11 -11
- package/dist/components/modal-header/ModalHeader.cjs +1 -1
- package/dist/components/modal-header/ModalHeader.cjs.map +1 -1
- package/dist/components/modal-header/ModalHeader.css +1 -1
- package/dist/components/modal-header/ModalHeader.d.ts +13 -3
- package/dist/components/modal-header/ModalHeader.d.ts.map +1 -1
- package/dist/components/modal-header/ModalHeader.js +61 -55
- package/dist/components/modal-header/ModalHeader.js.map +1 -1
- package/dist/components/modal-header/ModalHeader.module.scss.cjs +1 -1
- package/dist/components/modal-header/ModalHeader.module.scss.js +18 -16
- package/dist/components/modal-header/ModalHeader.module.scss.js.map +1 -1
- package/dist/components/more-unreads-banner/MoreUnreadsBanner.css +1 -1
- package/dist/components/more-unreads-banner/MoreUnreadsBanner.module.scss.cjs +1 -1
- package/dist/components/more-unreads-banner/MoreUnreadsBanner.module.scss.js +8 -5
- package/dist/components/more-unreads-banner/MoreUnreadsBanner.module.scss.js.map +1 -1
- package/dist/components/new-message-banner/NewMessageBanner.css +1 -1
- package/dist/components/new-message-banner/NewMessageBanner.module.scss.cjs +1 -1
- package/dist/components/new-message-banner/NewMessageBanner.module.scss.js +9 -9
- package/dist/components/pagination-dots/PaginationDots.css +1 -1
- package/dist/components/pagination-dots/PaginationDots.module.scss.cjs +1 -1
- package/dist/components/pagination-dots/PaginationDots.module.scss.js +10 -10
- package/dist/components/password-input/PasswordInput.css +1 -1
- package/dist/components/password-input/PasswordInput.module.scss.cjs +1 -1
- package/dist/components/password-input/PasswordInput.module.scss.js +15 -14
- package/dist/components/password-input/PasswordInput.module.scss.js.map +1 -1
- package/dist/components/permalink-preview/PermalinkPreview.css +1 -1
- package/dist/components/permalink-preview/PermalinkPreview.module.scss.cjs +1 -1
- package/dist/components/permalink-preview/PermalinkPreview.module.scss.js +13 -13
- package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.css +1 -1
- package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.module.scss.cjs +1 -1
- package/dist/components/pinned-saved-indicators/PinnedSavedIndicators.module.scss.js +7 -7
- package/dist/components/popover-menu/PopoverMenu.css +1 -1
- package/dist/components/popover-menu/PopoverMenu.module.scss.cjs +1 -1
- package/dist/components/popover-menu/PopoverMenu.module.scss.js +13 -13
- package/dist/components/popover-notice/PopoverNotice.css +1 -1
- package/dist/components/popover-notice/PopoverNotice.module.scss.cjs +1 -1
- package/dist/components/popover-notice/PopoverNotice.module.scss.js +14 -14
- package/dist/components/profile-popover/ProfilePopover.css +1 -1
- package/dist/components/profile-popover/ProfilePopover.module.scss.cjs +1 -1
- package/dist/components/profile-popover/ProfilePopover.module.scss.js +33 -33
- package/dist/components/progress-bar/ProgressBar.css +1 -1
- package/dist/components/progress-bar/ProgressBar.module.scss.cjs +1 -1
- package/dist/components/progress-bar/ProgressBar.module.scss.js +9 -9
- package/dist/components/radio/Radio.css +1 -1
- package/dist/components/radio/Radio.module.scss.cjs +1 -1
- package/dist/components/radio/Radio.module.scss.js +12 -12
- package/dist/components/reaction-button/ReactionButton.css +1 -1
- package/dist/components/reaction-button/ReactionButton.module.scss.cjs +1 -1
- package/dist/components/reaction-button/ReactionButton.module.scss.js +8 -8
- package/dist/components/reactions-row/ReactionsRow.css +1 -1
- package/dist/components/reactions-row/ReactionsRow.module.scss.cjs +1 -1
- package/dist/components/reactions-row/ReactionsRow.module.scss.js +8 -8
- package/dist/components/right-sidebar-header/RightSidebarHeader.cjs +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.cjs.map +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.css +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.d.ts.map +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.js +39 -36
- package/dist/components/right-sidebar-header/RightSidebarHeader.js.map +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.cjs +1 -1
- package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.js +12 -13
- package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.js.map +1 -1
- package/dist/components/scrollbar/Scrollbar.css +1 -1
- package/dist/components/scrollbar/Scrollbar.module.scss.cjs +1 -1
- package/dist/components/scrollbar/Scrollbar.module.scss.js +5 -5
- package/dist/components/search-input/SearchInput.css +1 -1
- package/dist/components/search-input/SearchInput.module.scss.cjs +1 -1
- package/dist/components/search-input/SearchInput.module.scss.js +15 -15
- package/dist/components/search-tip-banner/SearchTipBanner.css +1 -1
- package/dist/components/search-tip-banner/SearchTipBanner.module.scss.cjs +1 -1
- package/dist/components/search-tip-banner/SearchTipBanner.module.scss.js +3 -3
- package/dist/components/section-notice/SectionNotice.css +1 -1
- package/dist/components/section-notice/SectionNotice.module.scss.cjs +1 -1
- package/dist/components/section-notice/SectionNotice.module.scss.js +12 -12
- package/dist/components/segmented-control/SegmentedControl.cjs +2 -0
- package/dist/components/segmented-control/SegmentedControl.cjs.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.css +1 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +71 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.js +173 -0
- package/dist/components/segmented-control/SegmentedControl.js.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.module.scss.cjs +2 -0
- package/dist/components/segmented-control/SegmentedControl.module.scss.cjs.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.module.scss.js +20 -0
- package/dist/components/segmented-control/SegmentedControl.module.scss.js.map +1 -0
- package/dist/components/segmented-control/index.cjs +2 -0
- package/dist/components/segmented-control/index.cjs.map +1 -0
- package/dist/components/segmented-control/index.d.ts +3 -0
- package/dist/components/segmented-control/index.d.ts.map +1 -0
- package/dist/components/segmented-control/index.js +5 -0
- package/dist/components/segmented-control/index.js.map +1 -0
- package/dist/components/select/Select.cjs +1 -1
- package/dist/components/select/Select.cjs.map +1 -1
- package/dist/components/select/Select.css +1 -1
- package/dist/components/select/Select.d.ts +14 -0
- package/dist/components/select/Select.d.ts.map +1 -1
- package/dist/components/select/Select.js +151 -130
- package/dist/components/select/Select.js.map +1 -1
- package/dist/components/select/Select.module.scss.cjs +1 -1
- package/dist/components/select/Select.module.scss.js +28 -26
- package/dist/components/select/Select.module.scss.js.map +1 -1
- package/dist/components/shortcut-tag/ShortcutTag.css +1 -1
- package/dist/components/shortcut-tag/ShortcutTag.module.scss.cjs +1 -1
- package/dist/components/shortcut-tag/ShortcutTag.module.scss.js +7 -7
- package/dist/components/spinner/Spinner.css +1 -1
- package/dist/components/spinner/Spinner.module.scss.cjs +1 -1
- package/dist/components/spinner/Spinner.module.scss.js +2 -2
- package/dist/components/status-badge/StatusBadge.cjs +1 -1
- package/dist/components/status-badge/StatusBadge.cjs.map +1 -1
- package/dist/components/status-badge/StatusBadge.css +1 -1
- package/dist/components/status-badge/StatusBadge.d.ts +3 -1
- package/dist/components/status-badge/StatusBadge.d.ts.map +1 -1
- package/dist/components/status-badge/StatusBadge.js +16 -15
- package/dist/components/status-badge/StatusBadge.js.map +1 -1
- package/dist/components/status-badge/StatusBadge.module.scss.cjs +1 -1
- package/dist/components/status-badge/StatusBadge.module.scss.js +11 -11
- package/dist/components/switch/Switch.css +1 -1
- package/dist/components/switch/Switch.module.scss.cjs +1 -1
- package/dist/components/switch/Switch.module.scss.js +8 -8
- package/dist/components/tabs/Tabs.css +1 -1
- package/dist/components/tabs/Tabs.module.scss.cjs +1 -1
- package/dist/components/tabs/Tabs.module.scss.js +16 -13
- package/dist/components/tabs/Tabs.module.scss.js.map +1 -1
- package/dist/components/tag/Tag.css +1 -1
- package/dist/components/tag/Tag.module.scss.cjs +1 -1
- package/dist/components/tag/Tag.module.scss.js +11 -11
- package/dist/components/team-avatar/TeamAvatar.css +1 -1
- package/dist/components/team-avatar/TeamAvatar.module.scss.cjs +1 -1
- package/dist/components/team-avatar/TeamAvatar.module.scss.js +17 -17
- package/dist/components/text-area/TextArea.css +1 -1
- package/dist/components/text-area/TextArea.module.scss.cjs +1 -1
- package/dist/components/text-area/TextArea.module.scss.js +12 -12
- package/dist/components/text-input/TextInput.css +1 -1
- package/dist/components/text-input/TextInput.module.scss.cjs +1 -1
- package/dist/components/text-input/TextInput.module.scss.js +19 -19
- package/dist/components/thread-footer/ThreadFooter.cjs +1 -1
- package/dist/components/thread-footer/ThreadFooter.cjs.map +1 -1
- package/dist/components/thread-footer/ThreadFooter.css +1 -1
- package/dist/components/thread-footer/ThreadFooter.d.ts.map +1 -1
- package/dist/components/thread-footer/ThreadFooter.js +14 -14
- package/dist/components/thread-footer/ThreadFooter.js.map +1 -1
- package/dist/components/thread-footer/ThreadFooter.module.scss.cjs +1 -1
- package/dist/components/thread-footer/ThreadFooter.module.scss.js +19 -20
- package/dist/components/thread-footer/ThreadFooter.module.scss.js.map +1 -1
- package/dist/components/thread-list-item/ThreadListItem.css +1 -1
- package/dist/components/thread-list-item/ThreadListItem.module.scss.cjs +1 -1
- package/dist/components/thread-list-item/ThreadListItem.module.scss.js +26 -26
- package/dist/components/tile-button/TileButton.css +1 -1
- package/dist/components/tile-button/TileButton.module.scss.cjs +1 -1
- package/dist/components/tile-button/TileButton.module.scss.js +6 -6
- package/dist/components/toast/Toast.css +1 -1
- package/dist/components/toast/Toast.module.scss.cjs +1 -1
- package/dist/components/toast/Toast.module.scss.js +11 -11
- package/dist/components/tooltip/Tooltip.cjs +1 -1
- package/dist/components/tooltip/Tooltip.cjs.map +1 -1
- package/dist/components/tooltip/Tooltip.css +1 -1
- package/dist/components/tooltip/Tooltip.d.ts +10 -1
- package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/Tooltip.js +29 -17
- package/dist/components/tooltip/Tooltip.js.map +1 -1
- package/dist/components/tooltip/Tooltip.module.scss.cjs +1 -1
- package/dist/components/tooltip/Tooltip.module.scss.js +7 -6
- package/dist/components/tooltip/Tooltip.module.scss.js.map +1 -1
- package/dist/components/tooltip/index.d.ts +1 -1
- package/dist/components/tooltip/index.d.ts.map +1 -1
- package/dist/components/tour-point/TourPoint.css +1 -1
- package/dist/components/tour-point/TourPoint.module.scss.cjs +1 -1
- package/dist/components/tour-point/TourPoint.module.scss.js +28 -28
- package/dist/components/unread-badge/UnreadBadge.css +1 -1
- package/dist/components/unread-badge/UnreadBadge.module.scss.cjs +1 -1
- package/dist/components/unread-badge/UnreadBadge.module.scss.js +5 -5
- package/dist/components/user-avatar/UserAvatar.cjs +1 -1
- package/dist/components/user-avatar/UserAvatar.cjs.map +1 -1
- package/dist/components/user-avatar/UserAvatar.css +1 -1
- package/dist/components/user-avatar/UserAvatar.d.ts +18 -8
- package/dist/components/user-avatar/UserAvatar.d.ts.map +1 -1
- package/dist/components/user-avatar/UserAvatar.js +84 -52
- package/dist/components/user-avatar/UserAvatar.js.map +1 -1
- package/dist/components/user-avatar/UserAvatar.module.scss.cjs +1 -1
- package/dist/components/user-avatar/UserAvatar.module.scss.js +33 -26
- package/dist/components/user-avatar/UserAvatar.module.scss.js.map +1 -1
- package/dist/components/user-avatar-group/UserAvatarGroup.css +1 -1
- package/dist/components/user-avatar-group/UserAvatarGroup.module.scss.cjs +1 -1
- package/dist/components/user-avatar-group/UserAvatarGroup.module.scss.js +14 -14
- package/dist/hooks/use-anchored-popup-portal.cjs.map +1 -1
- package/dist/hooks/use-anchored-popup-portal.d.ts +1 -1
- package/dist/hooks/use-anchored-popup-portal.d.ts.map +1 -1
- package/dist/hooks/use-anchored-popup-portal.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +57 -55
- package/dist/index.js.map +1 -1
- package/dist/utils/anchoredPopupPlacement.cjs +1 -1
- package/dist/utils/anchoredPopupPlacement.cjs.map +1 -1
- package/dist/utils/anchoredPopupPlacement.d.ts +8 -4
- package/dist/utils/anchoredPopupPlacement.d.ts.map +1 -1
- package/dist/utils/anchoredPopupPlacement.js +18 -18
- package/dist/utils/anchoredPopupPlacement.js.map +1 -1
- package/package.json +4 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./Modal.css');const _="
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./Modal.css');const _="_modal_ry0g9_13",l="_modal__body_ry0g9_67",o="_modal__scroll_ry0g9_74",d={modal:_,"modal--transition":"_modal--transition_ry0g9_31","modal--visible":"_modal--visible_ry0g9_44","modal--size-small":"_modal--size-small_ry0g9_58","modal--size-medium":"_modal--size-medium_ry0g9_61","modal--size-large":"_modal--size-large_ry0g9_64",modal__body:l,modal__scroll:o,"modal__scroll--fill":"_modal__scroll--fill_ry0g9_78","modal__body-inner":"_modal__body-inner_ry0g9_81","modal__body-inner--menu":"_modal__body-inner--menu_ry0g9_84","modal__body-inner--none":"_modal__body-inner--none_ry0g9_87","modal__body-inner--fill":"_modal__body-inner--fill_ry0g9_90"};exports.default=d;exports.modal=_;exports.modal__body=l;exports.modal__scroll=o;
|
|
2
2
|
//# sourceMappingURL=Modal.module.scss.cjs.map
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import './Modal.css';const _ = "
|
|
1
|
+
import './Modal.css';const _ = "_modal_ry0g9_13", l = "_modal__body_ry0g9_67", o = "_modal__scroll_ry0g9_74", d = {
|
|
2
2
|
modal: _,
|
|
3
|
-
"modal--transition": "_modal--
|
|
4
|
-
"modal--visible": "_modal--
|
|
5
|
-
"modal--size-small": "_modal--size-
|
|
6
|
-
"modal--size-medium": "_modal--size-
|
|
7
|
-
"modal--size-large": "_modal--size-
|
|
3
|
+
"modal--transition": "_modal--transition_ry0g9_31",
|
|
4
|
+
"modal--visible": "_modal--visible_ry0g9_44",
|
|
5
|
+
"modal--size-small": "_modal--size-small_ry0g9_58",
|
|
6
|
+
"modal--size-medium": "_modal--size-medium_ry0g9_61",
|
|
7
|
+
"modal--size-large": "_modal--size-large_ry0g9_64",
|
|
8
8
|
modal__body: l,
|
|
9
9
|
modal__scroll: o,
|
|
10
|
-
"modal__scroll--fill": "_modal__scroll--
|
|
11
|
-
"modal__body-inner": "_modal__body-
|
|
12
|
-
"modal__body-inner--menu": "_modal__body-inner--
|
|
13
|
-
"modal__body-inner--none": "_modal__body-inner--
|
|
14
|
-
"modal__body-inner--fill": "_modal__body-inner--
|
|
10
|
+
"modal__scroll--fill": "_modal__scroll--fill_ry0g9_78",
|
|
11
|
+
"modal__body-inner": "_modal__body-inner_ry0g9_81",
|
|
12
|
+
"modal__body-inner--menu": "_modal__body-inner--menu_ry0g9_84",
|
|
13
|
+
"modal__body-inner--none": "_modal__body-inner--none_ry0g9_87",
|
|
14
|
+
"modal__body-inner--fill": "_modal__body-inner--fill_ry0g9_90"
|
|
15
15
|
};
|
|
16
16
|
export {
|
|
17
17
|
d as default,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalOverlay.cjs","sources":["../../../src/components/modal/ModalOverlay.tsx"],"sourcesContent":["import {\n useEffect,\n useRef,\n type HTMLAttributes,\n type MouseEvent,\n type ReactNode,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { usePopoverTransition } from '@/hooks/use-popover-transition';\nimport { mergeClassNames } from '@/utils/props';\nimport { lockBodyScroll } from '@/utils/scrollLock';\nimport { useOnExited } from '@/utils/useOnExited';\nimport styles from './ModalOverlay.module.scss';\n\nexport interface ModalOverlayProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether the overlay is shown. Setting it to `false` plays the exit and then unmounts. */\n open: boolean;\n /** Called when the backdrop is pressed. Presses that start inside the dialog do not call it. */\n onClose?: () => void;\n /**\n * Called once the exit finishes and the overlay has unmounted. Not called if\n * the overlay itself is unmounted before the exit finishes, so do any\n * cleanup on unmount as well.\n */\n onExited?: () => void;\n /**\n * Portal node. Defaults to `document.body`; pass another element so a modal\n * inside another top layer can join it. `null` renders nothing until the node\n * exists (e.g. a ref held in state). Override `position` through `style`\n * when the container is a positioned stage. Scroll lock applies to that\n * node's document.\n */\n container?: HTMLElement | null;\n /**\n * Lock `document.body` scroll while the overlay is mounted. Turn off for an\n * overlay staged inside a frame (docs, Storybook) so it doesn't freeze the page.\n */\n lockScroll?: boolean;\n /**\n * Stacking order. Defaults to `--z-modal` (
|
|
1
|
+
{"version":3,"file":"ModalOverlay.cjs","sources":["../../../src/components/modal/ModalOverlay.tsx"],"sourcesContent":["import {\n useEffect,\n useRef,\n type HTMLAttributes,\n type MouseEvent,\n type ReactNode,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { usePopoverTransition } from '@/hooks/use-popover-transition';\nimport { mergeClassNames } from '@/utils/props';\nimport { lockBodyScroll } from '@/utils/scrollLock';\nimport { useOnExited } from '@/utils/useOnExited';\nimport styles from './ModalOverlay.module.scss';\n\nexport interface ModalOverlayProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether the overlay is shown. Setting it to `false` plays the exit and then unmounts. */\n open: boolean;\n /** Called when the backdrop is pressed. Presses that start inside the dialog do not call it. */\n onClose?: () => void;\n /**\n * Called once the exit finishes and the overlay has unmounted. Not called if\n * the overlay itself is unmounted before the exit finishes, so do any\n * cleanup on unmount as well.\n */\n onExited?: () => void;\n /**\n * Portal node. Defaults to `document.body`; pass another element so a modal\n * inside another top layer can join it. `null` renders nothing until the node\n * exists (e.g. a ref held in state). Override `position` through `style`\n * when the container is a positioned stage. Scroll lock applies to that\n * node's document.\n */\n container?: HTMLElement | null;\n /**\n * Lock `document.body` scroll while the overlay is mounted. Turn off for an\n * overlay staged inside a frame (docs, Storybook) so it doesn't freeze the page.\n */\n lockScroll?: boolean;\n /**\n * Stacking order. Defaults to `--z-modal` (1050, the webapp's modal layer); a host whose chrome sits\n * higher passes this or redefines `--z-modal`. Applied before `style`, so\n * `style.zIndex` wins.\n */\n zIndex?: number;\n /** Usually a `Modal`. */\n children?: ReactNode;\n}\n\n/**\n * Modal scrim: portals to `document.body` (or `container`), locks body scroll\n * while shown (opt out with `lockScroll={false}`), closes on backdrop press, and stays mounted for\n * `--duration-quick` after `open` becomes false so the fade-out can play.\n * Escape and focus stay on `Modal`. Hosts that already position their own\n * node can use `modalOverlayStyles` instead.\n */\nexport default function ModalOverlay({\n open,\n onClose,\n onExited,\n container,\n lockScroll = true,\n zIndex,\n className,\n style,\n children,\n onMouseDown,\n onClick,\n ...rest\n}: ModalOverlayProps) {\n const { mounted } = usePopoverTransition(open);\n useOnExited(mounted, onExited);\n const pressStartedInside = useRef(false);\n\n const target =\n container === undefined\n ? typeof document === 'undefined'\n ? null\n : document.body\n : container;\n\n useEffect(() => {\n if (!mounted || !target || !lockScroll) return undefined;\n return lockBodyScroll(target.ownerDocument);\n }, [mounted, target, lockScroll]);\n\n if (!mounted || !target) return null;\n\n const handleMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n pressStartedInside.current = e.target !== e.currentTarget;\n onMouseDown?.(e);\n };\n\n const handleClick = (e: MouseEvent<HTMLDivElement>) => {\n const startedInside = pressStartedInside.current;\n pressStartedInside.current = false;\n onClick?.(e);\n if (open && !startedInside && e.target === e.currentTarget) onClose?.();\n };\n\n return createPortal(\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions -- backdrop click is a pointer shortcut; keyboard users close with Escape (handled by Modal)\n <div\n {...rest}\n className={mergeClassNames(\n styles['modal-overlay'],\n !open && styles['modal-overlay--exiting'],\n className,\n )}\n style={{ ...(zIndex !== undefined && { zIndex }), ...style }}\n onMouseDown={handleMouseDown}\n onClick={handleClick}\n >\n {children}\n </div>,\n target,\n );\n}\n"],"names":["ModalOverlay","open","onClose","onExited","container","lockScroll","zIndex","className","style","children","onMouseDown","onClick","rest","mounted","usePopoverTransition","useOnExited","pressStartedInside","useRef","target","useEffect","lockBodyScroll","handleMouseDown","handleClick","startedInside","createPortal","jsx","mergeClassNames","styles"],"mappings":"6YAuDA,SAAwBA,EAAa,CACnC,KAAAC,EACA,QAAAC,EACA,SAAAC,EACA,UAAAC,EACA,WAAAC,EAAa,GACb,OAAAC,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,YAAAC,EACA,QAAAC,EACA,GAAGC,CACL,EAAsB,CACpB,KAAM,CAAE,QAAAC,CAAA,EAAYC,EAAAA,qBAAqBb,CAAI,EAC7Cc,EAAAA,YAAYF,EAASV,CAAQ,EAC7B,MAAMa,EAAqBC,EAAAA,OAAO,EAAK,EAEjCC,EACJd,IAAc,OACV,OAAO,SAAa,IAClB,KACA,SAAS,KACXA,EAON,GALAe,EAAAA,UAAU,IAAM,CACd,GAAI,GAACN,GAAW,CAACK,GAAU,CAACb,GAC5B,OAAOe,EAAAA,eAAeF,EAAO,aAAa,CAC5C,EAAG,CAACL,EAASK,EAAQb,CAAU,CAAC,EAE5B,CAACQ,GAAW,CAACK,EAAQ,OAAO,KAEhC,MAAMG,EAAmB,GAAkC,CACzDL,EAAmB,QAAU,EAAE,SAAW,EAAE,cAC5CN,GAAA,MAAAA,EAAc,EAChB,EAEMY,EAAe,GAAkC,CACrD,MAAMC,EAAgBP,EAAmB,QACzCA,EAAmB,QAAU,GAC7BL,GAAA,MAAAA,EAAU,GACNV,GAAQ,CAACsB,GAAiB,EAAE,SAAW,EAAE,gBAAerB,GAAA,MAAAA,IAC9D,EAEA,OAAOsB,EAAAA,aAELC,EAAAA,IAAC,MAAA,CACE,GAAGb,EACJ,UAAWc,EAAAA,gBACTC,EAAAA,QAAO,eAAe,EACtB,CAAC1B,GAAQ0B,EAAAA,QAAO,wBAAwB,EACxCpB,CAAA,EAEF,MAAO,CAAE,GAAID,IAAW,QAAa,CAAE,OAAAA,CAAA,EAAW,GAAGE,CAAA,EACrD,YAAaa,EACb,QAASC,EAER,SAAAb,CAAA,CAAA,EAEHS,CAAA,CAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@keyframes _modal-overlay-fade-
|
|
1
|
+
@keyframes _modal-overlay-fade-in_1oqns_1{0%{opacity:0}}._modal-overlay_1oqns_18{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-xl) calc(var(--spacing-xl) + 2 * var(--spacing-xxl));z-index:var(--z-modal);background-color:var(--modal-overlay-bg);animation:_modal-overlay-fade-in_1oqns_1 var(--duration-quick) var(--ease-entrance);transition:opacity var(--duration-quick) var(--ease-exit)}._modal-overlay--exiting_1oqns_30{opacity:0;pointer-events:none}@media(prefers-reduced-motion:reduce){._modal-overlay_1oqns_18{animation:none;transition:none}}
|
|
@@ -24,7 +24,7 @@ export interface ModalOverlayProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
24
24
|
*/
|
|
25
25
|
lockScroll?: boolean;
|
|
26
26
|
/**
|
|
27
|
-
* Stacking order. Defaults to `--z-modal` (
|
|
27
|
+
* Stacking order. Defaults to `--z-modal` (1050, the webapp's modal layer); a host whose chrome sits
|
|
28
28
|
* higher passes this or redefines `--z-modal`. Applied before `style`, so
|
|
29
29
|
* `style.zIndex` wins.
|
|
30
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalOverlay.js","sources":["../../../src/components/modal/ModalOverlay.tsx"],"sourcesContent":["import {\n useEffect,\n useRef,\n type HTMLAttributes,\n type MouseEvent,\n type ReactNode,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { usePopoverTransition } from '@/hooks/use-popover-transition';\nimport { mergeClassNames } from '@/utils/props';\nimport { lockBodyScroll } from '@/utils/scrollLock';\nimport { useOnExited } from '@/utils/useOnExited';\nimport styles from './ModalOverlay.module.scss';\n\nexport interface ModalOverlayProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether the overlay is shown. Setting it to `false` plays the exit and then unmounts. */\n open: boolean;\n /** Called when the backdrop is pressed. Presses that start inside the dialog do not call it. */\n onClose?: () => void;\n /**\n * Called once the exit finishes and the overlay has unmounted. Not called if\n * the overlay itself is unmounted before the exit finishes, so do any\n * cleanup on unmount as well.\n */\n onExited?: () => void;\n /**\n * Portal node. Defaults to `document.body`; pass another element so a modal\n * inside another top layer can join it. `null` renders nothing until the node\n * exists (e.g. a ref held in state). Override `position` through `style`\n * when the container is a positioned stage. Scroll lock applies to that\n * node's document.\n */\n container?: HTMLElement | null;\n /**\n * Lock `document.body` scroll while the overlay is mounted. Turn off for an\n * overlay staged inside a frame (docs, Storybook) so it doesn't freeze the page.\n */\n lockScroll?: boolean;\n /**\n * Stacking order. Defaults to `--z-modal` (
|
|
1
|
+
{"version":3,"file":"ModalOverlay.js","sources":["../../../src/components/modal/ModalOverlay.tsx"],"sourcesContent":["import {\n useEffect,\n useRef,\n type HTMLAttributes,\n type MouseEvent,\n type ReactNode,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { usePopoverTransition } from '@/hooks/use-popover-transition';\nimport { mergeClassNames } from '@/utils/props';\nimport { lockBodyScroll } from '@/utils/scrollLock';\nimport { useOnExited } from '@/utils/useOnExited';\nimport styles from './ModalOverlay.module.scss';\n\nexport interface ModalOverlayProps extends HTMLAttributes<HTMLDivElement> {\n /** Whether the overlay is shown. Setting it to `false` plays the exit and then unmounts. */\n open: boolean;\n /** Called when the backdrop is pressed. Presses that start inside the dialog do not call it. */\n onClose?: () => void;\n /**\n * Called once the exit finishes and the overlay has unmounted. Not called if\n * the overlay itself is unmounted before the exit finishes, so do any\n * cleanup on unmount as well.\n */\n onExited?: () => void;\n /**\n * Portal node. Defaults to `document.body`; pass another element so a modal\n * inside another top layer can join it. `null` renders nothing until the node\n * exists (e.g. a ref held in state). Override `position` through `style`\n * when the container is a positioned stage. Scroll lock applies to that\n * node's document.\n */\n container?: HTMLElement | null;\n /**\n * Lock `document.body` scroll while the overlay is mounted. Turn off for an\n * overlay staged inside a frame (docs, Storybook) so it doesn't freeze the page.\n */\n lockScroll?: boolean;\n /**\n * Stacking order. Defaults to `--z-modal` (1050, the webapp's modal layer); a host whose chrome sits\n * higher passes this or redefines `--z-modal`. Applied before `style`, so\n * `style.zIndex` wins.\n */\n zIndex?: number;\n /** Usually a `Modal`. */\n children?: ReactNode;\n}\n\n/**\n * Modal scrim: portals to `document.body` (or `container`), locks body scroll\n * while shown (opt out with `lockScroll={false}`), closes on backdrop press, and stays mounted for\n * `--duration-quick` after `open` becomes false so the fade-out can play.\n * Escape and focus stay on `Modal`. Hosts that already position their own\n * node can use `modalOverlayStyles` instead.\n */\nexport default function ModalOverlay({\n open,\n onClose,\n onExited,\n container,\n lockScroll = true,\n zIndex,\n className,\n style,\n children,\n onMouseDown,\n onClick,\n ...rest\n}: ModalOverlayProps) {\n const { mounted } = usePopoverTransition(open);\n useOnExited(mounted, onExited);\n const pressStartedInside = useRef(false);\n\n const target =\n container === undefined\n ? typeof document === 'undefined'\n ? null\n : document.body\n : container;\n\n useEffect(() => {\n if (!mounted || !target || !lockScroll) return undefined;\n return lockBodyScroll(target.ownerDocument);\n }, [mounted, target, lockScroll]);\n\n if (!mounted || !target) return null;\n\n const handleMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n pressStartedInside.current = e.target !== e.currentTarget;\n onMouseDown?.(e);\n };\n\n const handleClick = (e: MouseEvent<HTMLDivElement>) => {\n const startedInside = pressStartedInside.current;\n pressStartedInside.current = false;\n onClick?.(e);\n if (open && !startedInside && e.target === e.currentTarget) onClose?.();\n };\n\n return createPortal(\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions -- backdrop click is a pointer shortcut; keyboard users close with Escape (handled by Modal)\n <div\n {...rest}\n className={mergeClassNames(\n styles['modal-overlay'],\n !open && styles['modal-overlay--exiting'],\n className,\n )}\n style={{ ...(zIndex !== undefined && { zIndex }), ...style }}\n onMouseDown={handleMouseDown}\n onClick={handleClick}\n >\n {children}\n </div>,\n target,\n );\n}\n"],"names":["ModalOverlay","open","onClose","onExited","container","lockScroll","zIndex","className","style","children","onMouseDown","onClick","rest","mounted","usePopoverTransition","useOnExited","pressStartedInside","useRef","target","useEffect","lockBodyScroll","handleMouseDown","e","handleClick","startedInside","createPortal","jsx","mergeClassNames","styles"],"mappings":";;;;;;;;AAuDA,SAAwBA,EAAa;AAAA,EACnC,MAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,QAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC;AAAA,EACA,GAAGC;AACL,GAAsB;AACpB,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAqBb,CAAI;AAC7C,EAAAc,EAAYF,GAASV,CAAQ;AAC7B,QAAMa,IAAqBC,EAAO,EAAK,GAEjCC,IACJd,MAAc,SACV,OAAO,WAAa,MAClB,OACA,SAAS,OACXA;AAON,MALAe,EAAU,MAAM;AACd,QAAI,GAACN,KAAW,CAACK,KAAU,CAACb;AAC5B,aAAOe,EAAeF,EAAO,aAAa;AAAA,EAC5C,GAAG,CAACL,GAASK,GAAQb,CAAU,CAAC,GAE5B,CAACQ,KAAW,CAACK,EAAQ,QAAO;AAEhC,QAAMG,IAAkB,CAACC,MAAkC;AACzD,IAAAN,EAAmB,UAAUM,EAAE,WAAWA,EAAE,eAC5CZ,KAAA,QAAAA,EAAcY;AAAA,EAChB,GAEMC,IAAc,CAACD,MAAkC;AACrD,UAAME,IAAgBR,EAAmB;AACzC,IAAAA,EAAmB,UAAU,IAC7BL,KAAA,QAAAA,EAAUW,IACNrB,KAAQ,CAACuB,KAAiBF,EAAE,WAAWA,EAAE,kBAAepB,KAAA,QAAAA;AAAA,EAC9D;AAEA,SAAOuB;AAAA;AAAA,IAEL,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAGd;AAAA,QACJ,WAAWe;AAAA,UACTC,EAAO,eAAe;AAAA,UACtB,CAAC3B,KAAQ2B,EAAO,wBAAwB;AAAA,UACxCrB;AAAA,QAAA;AAAA,QAEF,OAAO,EAAE,GAAID,MAAW,UAAa,EAAE,QAAAA,EAAA,GAAW,GAAGE,EAAA;AAAA,QACrD,aAAaa;AAAA,QACb,SAASE;AAAA,QAER,UAAAd;AAAA,MAAA;AAAA,IAAA;AAAA,IAEHS;AAAA,EAAA;AAEJ;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalOverlay.css');const e={"modal-overlay":"_modal-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalOverlay.css');const e={"modal-overlay":"_modal-overlay_1oqns_18","modal-overlay-fade-in":"_modal-overlay-fade-in_1oqns_1","modal-overlay--exiting":"_modal-overlay--exiting_1oqns_30"};exports.default=e;
|
|
2
2
|
//# sourceMappingURL=ModalOverlay.module.scss.cjs.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import './ModalOverlay.css';const
|
|
2
|
-
"modal-overlay": "_modal-
|
|
3
|
-
"modal-overlay-fade-in": "_modal-overlay-fade-
|
|
4
|
-
"modal-overlay--exiting": "_modal-overlay--
|
|
1
|
+
import './ModalOverlay.css';const o = {
|
|
2
|
+
"modal-overlay": "_modal-overlay_1oqns_18",
|
|
3
|
+
"modal-overlay-fade-in": "_modal-overlay-fade-in_1oqns_1",
|
|
4
|
+
"modal-overlay--exiting": "_modal-overlay--exiting_1oqns_30"
|
|
5
5
|
};
|
|
6
6
|
export {
|
|
7
|
-
|
|
7
|
+
o as default
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=ModalOverlay.module.scss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
._modal-
|
|
1
|
+
._modal-footer_npl2l_13{display:flex;flex-direction:column;flex-shrink:0;align-items:stretch}._modal-footer--divider_npl2l_19{border-top:1px solid rgba(var(--center-channel-color-rgb),.12)}._modal-footer--no-divider_npl2l_22 ._modal-footer__content_npl2l_22{padding-top:0}._modal-footer__content_npl2l_22{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-xs);width:100%;padding:var(--spacing-xxl) var(--spacing-xxxl)}._modal-footer__leading_npl2l_33{flex:1 1 auto;min-width:0;display:flex;align-items:center;font-family:var(--font-family-body);font-size:var(--font-size-75);font-weight:var(--font-weight-semibold);line-height:var(--line-height-75);color:rgba(var(--center-channel-color-rgb),.64)}._modal-footer__actions_npl2l_44{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:var(--spacing-xs)}._modal-footer--type-2-actions-separated_npl2l_51 ._modal-footer__content_npl2l_22{justify-content:space-between}._modal-footer--type-2-actions-separated_npl2l_51 ._modal-footer__actions_npl2l_44:only-child{flex:1 1 auto;justify-content:space-between}._modal-footer--type-pagination_npl2l_58 ._modal-footer__content_npl2l_22,._modal-footer--type-stepped-progress_npl2l_58 ._modal-footer__content_npl2l_22{justify-content:space-between}._modal-footer--type-spacer-small_npl2l_61{padding:var(--spacing-l);min-height:calc(var(--spacing-l) * 2)}._modal-footer--type-spacer-large_npl2l_65{padding:var(--spacing-xxl);min-height:calc(var(--spacing-xxl) * 2)}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalFooter.css');const o={"modal-footer":"_modal-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalFooter.css');const o={"modal-footer":"_modal-footer_npl2l_13","modal-footer--divider":"_modal-footer--divider_npl2l_19","modal-footer--no-divider":"_modal-footer--no-divider_npl2l_22","modal-footer__content":"_modal-footer__content_npl2l_22","modal-footer__leading":"_modal-footer__leading_npl2l_33","modal-footer__actions":"_modal-footer__actions_npl2l_44","modal-footer--type-2-actions-separated":"_modal-footer--type-2-actions-separated_npl2l_51","modal-footer--type-pagination":"_modal-footer--type-pagination_npl2l_58","modal-footer--type-stepped-progress":"_modal-footer--type-stepped-progress_npl2l_58","modal-footer--type-spacer-small":"_modal-footer--type-spacer-small_npl2l_61","modal-footer--type-spacer-large":"_modal-footer--type-spacer-large_npl2l_65"};exports.default=o;
|
|
2
2
|
//# sourceMappingURL=ModalFooter.module.scss.cjs.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import './ModalFooter.css';const o = {
|
|
2
|
-
"modal-footer": "_modal-
|
|
3
|
-
"modal-footer--divider": "_modal-footer--
|
|
4
|
-
"modal-footer--no-divider": "_modal-footer--no-
|
|
5
|
-
"modal-footer__content": "_modal-
|
|
6
|
-
"modal-footer__leading": "_modal-
|
|
7
|
-
"modal-footer__actions": "_modal-
|
|
8
|
-
"modal-footer--type-2-actions-separated": "_modal-footer--type-2-actions-
|
|
9
|
-
"modal-footer--type-pagination": "_modal-footer--type-
|
|
10
|
-
"modal-footer--type-stepped-progress": "_modal-footer--type-stepped-
|
|
11
|
-
"modal-footer--type-spacer-small": "_modal-footer--type-spacer-
|
|
12
|
-
"modal-footer--type-spacer-large": "_modal-footer--type-spacer-
|
|
2
|
+
"modal-footer": "_modal-footer_npl2l_13",
|
|
3
|
+
"modal-footer--divider": "_modal-footer--divider_npl2l_19",
|
|
4
|
+
"modal-footer--no-divider": "_modal-footer--no-divider_npl2l_22",
|
|
5
|
+
"modal-footer__content": "_modal-footer__content_npl2l_22",
|
|
6
|
+
"modal-footer__leading": "_modal-footer__leading_npl2l_33",
|
|
7
|
+
"modal-footer__actions": "_modal-footer__actions_npl2l_44",
|
|
8
|
+
"modal-footer--type-2-actions-separated": "_modal-footer--type-2-actions-separated_npl2l_51",
|
|
9
|
+
"modal-footer--type-pagination": "_modal-footer--type-pagination_npl2l_58",
|
|
10
|
+
"modal-footer--type-stepped-progress": "_modal-footer--type-stepped-progress_npl2l_58",
|
|
11
|
+
"modal-footer--type-spacer-small": "_modal-footer--type-spacer-small_npl2l_61",
|
|
12
|
+
"modal-footer--type-spacer-large": "_modal-footer--type-spacer-large_npl2l_65"
|
|
13
13
|
};
|
|
14
14
|
export {
|
|
15
15
|
o 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"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),__z=require("@mattermost/compass-icons/components/close.js"),z=__z?.default??__z,__H=require("@mattermost/compass-icons/components/arrow-left.js"),H=__H?.default??__H,f=require("../icon/Icon.cjs"),j=require("../icon-button/IconButton.cjs"),x=require("../../utils/props.cjs"),a=require("./ModalHeader.module.scss.cjs");function I({className:N="",title:l,subtitle:r,subtitlePlacement:v="below",hideTitle:o=!1,titleId:c,showBackButton:b=!1,onBack:g,backLabel:q="Go back",backButtonProps:d,onClose:C,closeLabel:y="Close",closeButtonProps:s,divider:w=!0,headerAction:M,leading:m,headerSlot:n}){const i=!!m,u=!o&&!i&&l!=null,t=u&&r!=null,h=v==="beside"&&t,_=b?e.jsx(j.default,{...d,"aria-label":q,className:x.mergeClassNames(a.default["modal-header__back"],d==null?void 0:d.className),icon:e.jsx(f.default,{glyph:e.jsx(H,{}),size:"20"}),onClick:g}):null;return e.jsxs("div",{className:[a.default["modal-header"],!w&&a.default["modal-header--no-divider"],o&&!i&&a.default["modal-header--close-only"],i&&a.default["modal-header--has-leading"],n&&a.default["modal-header--has-slot"],N].filter(Boolean).join(" "),children:[e.jsxs("div",{className:a.default["modal-header__content"],children:[u?e.jsxs("div",{className:a.default["modal-header__titles"],children:[e.jsxs("div",{className:a.default["modal-header__primary"],children:[_,e.jsx("h2",{id:c,className:a.default["modal-header__title"],children:l}),h&&e.jsxs("div",{className:a.default["modal-header__subtitle-beside"],children:[e.jsx("span",{className:a.default["modal-header__subtitle-divider"],"aria-hidden":!0}),e.jsx("p",{className:a.default["modal-header__subtitle"],children:r})]})]}),t&&!h&&e.jsx("p",{className:a.default["modal-header__subtitle"],children:r})]}):c!=null&&l!=null?e.jsx("h2",{id:c,className:a.default["modal-header__title-sr"],children:l}):null,i&&e.jsxs("div",{className:a.default["modal-header__leading"],children:[_,m]}),e.jsxs("div",{className:a.default["modal-header__actions"],children:[M,e.jsx(j.default,{...s,"aria-label":y,className:x.mergeClassNames(a.default["modal-header__close"],s==null?void 0:s.className),icon:e.jsx(f.default,{glyph:e.jsx(z,{}),size:"20"}),onClick:C})]})]}),n&&e.jsx("div",{className:a.default["modal-header__slot"],children:n})]})}exports.default=I;
|
|
2
2
|
//# sourceMappingURL=ModalHeader.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.cjs","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport ArrowLeftIcon from '@mattermost/compass-icons/components/arrow-left';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport type { BuiltInButtonProps } from '@/utils/props';\nimport { mergeClassNames } from '@/utils/props';\nimport styles from './ModalHeader.module.scss';\n\nexport type ModalSubtitlePlacement = 'below' | 'beside';\n\nexport interface ModalHeaderProps {\n className?: string;\n /** Heading text. Omit (with `hideTitle`) for close-only headers. */\n title?: ReactNode;\n /** Optional secondary text — placement controlled by `subtitlePlacement`. */\n subtitle?: ReactNode;\n /**\n * Where the subtitle sits relative to the title.\n * Figma: Subtitle = Below | Beside. Default: `below`.\n */\n subtitlePlacement?: ModalSubtitlePlacement;\n /** When true, title is visually hidden (close-only chrome; keep `title`/`titleId` for a11y). */\n hideTitle?: boolean;\n /** id for the title element — pair with dialog `aria-labelledby`. */\n titleId?: string;\n /** Back arrow before the title. */\n showBackButton?: boolean;\n onBack?: () => void;\n /** Accessible name for the back button. Default: \"Go back\". */\n backLabel?: string;\n /** Extra attributes for the back button (e.g. `data-testid`). */\n backButtonProps?: BuiltInButtonProps;\n /** Called when the × is clicked. */\n onClose?: () => void;\n /** Accessible name for the close button. Default: \"Close\". */\n closeLabel?: string;\n /** Extra attributes for the close button (e.g. `data-testid`). */\n closeButtonProps?: BuiltInButtonProps;\n /** Show bottom border. Figma: Divider = On. Default: true. */\n divider?: boolean;\n /**\n * Optional control before close (Figma Controls = Button / Small Input / …).\n * Host owns the Button, TextInput, etc.\n */\n headerAction?: ReactNode;\n /**\n * Full-width slot rendered below the title row and above the divider.\n * Accepts any ReactNode — SearchInput, Tabs, a custom toolbar, etc.\n * Padding is provided by the slot container; no extra wrapper is needed.\n */\n headerSlot?: ReactNode;\n}\n\n/**\n * Modal Header — title row, optional subtitle (below or beside), optional back
|
|
1
|
+
{"version":3,"file":"ModalHeader.cjs","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport ArrowLeftIcon from '@mattermost/compass-icons/components/arrow-left';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport type { BuiltInButtonProps } from '@/utils/props';\nimport { mergeClassNames } from '@/utils/props';\nimport styles from './ModalHeader.module.scss';\n\nexport type ModalSubtitlePlacement = 'below' | 'beside';\n\nexport interface ModalHeaderProps {\n className?: string;\n /** Heading text. Omit (with `hideTitle`) for close-only headers. */\n title?: ReactNode;\n /** Optional secondary text — placement controlled by `subtitlePlacement`. */\n subtitle?: ReactNode;\n /**\n * Where the subtitle sits relative to the title.\n * Figma: Subtitle = Below | Beside. Default: `below`.\n */\n subtitlePlacement?: ModalSubtitlePlacement;\n /** When true, title is visually hidden (close-only chrome; keep `title`/`titleId` for a11y). */\n hideTitle?: boolean;\n /** id for the title element — pair with dialog `aria-labelledby`. */\n titleId?: string;\n /** Back arrow before the title. */\n showBackButton?: boolean;\n onBack?: () => void;\n /** Accessible name for the back button. Default: \"Go back\". */\n backLabel?: string;\n /** Extra attributes for the back button (e.g. `data-testid`). */\n backButtonProps?: BuiltInButtonProps;\n /** Called when the × is clicked. */\n onClose?: () => void;\n /** Accessible name for the close button. Default: \"Close\". */\n closeLabel?: string;\n /** Extra attributes for the close button (e.g. `data-testid`). */\n closeButtonProps?: BuiltInButtonProps;\n /** Show bottom border. Figma: Divider = On. Default: true. */\n divider?: boolean;\n /**\n * Optional control before close (Figma Controls = Button / Small Input / …).\n * Host owns the Button, TextInput, etc.\n */\n headerAction?: ReactNode;\n /**\n * Custom content in the title position: left aligned, vertically centered\n * with the close button. Not wrapped in the heading and not given heading\n * type, so a control keeps its own styles. `title` stays the accessible\n * name and is visually hidden, the same as `hideTitle`. The subtitle is\n * omitted. `showBackButton` still renders before this content. Without\n * this prop, `hideTitle` stays the close-only header.\n */\n leading?: ReactNode;\n /**\n * Full-width slot rendered below the title row and above the divider.\n * Accepts any ReactNode — SearchInput, Tabs, a custom toolbar, etc.\n * Padding is provided by the slot container; no extra wrapper is needed.\n */\n headerSlot?: ReactNode;\n}\n\n/**\n * Modal Header — title row, optional subtitle (below or beside), optional\n * leading content in place of the visible title, optional back, optional\n * header action, and close. Compose into `Modal` or use standalone.\n *\n * @see https://www.figma.com/design/qdm5tKododENqnTvjLovDT/Patterns---Modals?node-id=789-15921\n */\nexport default function ModalHeader({\n className = '',\n title,\n subtitle,\n subtitlePlacement = 'below',\n hideTitle = false,\n titleId,\n showBackButton = false,\n onBack,\n backLabel = 'Go back',\n backButtonProps,\n onClose,\n closeLabel = 'Close',\n closeButtonProps,\n divider = true,\n headerAction,\n leading,\n headerSlot,\n}: ModalHeaderProps) {\n const hasLeading = Boolean(leading);\n const showTitleBlock = !hideTitle && !hasLeading && title != null;\n const showSubtitle = showTitleBlock && subtitle != null;\n const beside = subtitlePlacement === 'beside' && showSubtitle;\n const backButton = showBackButton ? (\n <IconButton\n {...backButtonProps}\n aria-label={backLabel}\n className={mergeClassNames(\n styles['modal-header__back'],\n backButtonProps?.className,\n )}\n icon={<Icon glyph={<ArrowLeftIcon />} size=\"20\" />}\n onClick={onBack}\n />\n ) : null;\n\n return (\n <div\n className={[\n styles['modal-header'],\n !divider && styles['modal-header--no-divider'],\n hideTitle && !hasLeading && styles['modal-header--close-only'],\n hasLeading && styles['modal-header--has-leading'],\n headerSlot && styles['modal-header--has-slot'],\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div className={styles['modal-header__content']}>\n {showTitleBlock ? (\n <div className={styles['modal-header__titles']}>\n <div className={styles['modal-header__primary']}>\n {backButton}\n <h2 id={titleId} className={styles['modal-header__title']}>\n {title}\n </h2>\n {beside && (\n <div className={styles['modal-header__subtitle-beside']}>\n <span\n className={styles['modal-header__subtitle-divider']}\n aria-hidden\n />\n <p className={styles['modal-header__subtitle']}>{subtitle}</p>\n </div>\n )}\n </div>\n {showSubtitle && !beside && (\n <p className={styles['modal-header__subtitle']}>{subtitle}</p>\n )}\n </div>\n ) : titleId != null && title != null ? (\n <h2 id={titleId} className={styles['modal-header__title-sr']}>\n {title}\n </h2>\n ) : null}\n\n {hasLeading && (\n <div className={styles['modal-header__leading']}>\n {backButton}\n {leading}\n </div>\n )}\n\n <div className={styles['modal-header__actions']}>\n {headerAction}\n <IconButton\n {...closeButtonProps}\n aria-label={closeLabel}\n className={mergeClassNames(\n styles['modal-header__close'],\n closeButtonProps?.className,\n )}\n icon={<Icon glyph={<CloseIcon />} size=\"20\" />}\n onClick={onClose}\n />\n </div>\n </div>\n {headerSlot && (\n <div className={styles['modal-header__slot']}>{headerSlot}</div>\n )}\n </div>\n );\n}\n"],"names":["ModalHeader","className","title","subtitle","subtitlePlacement","hideTitle","titleId","showBackButton","onBack","backLabel","backButtonProps","onClose","closeLabel","closeButtonProps","divider","headerAction","leading","headerSlot","hasLeading","showTitleBlock","showSubtitle","beside","backButton","jsx","IconButton","mergeClassNames","styles","Icon","ArrowLeftIcon","jsxs","CloseIcon"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
._modal-
|
|
1
|
+
._modal-header_14bu2_13{display:flex;flex-direction:column;flex-shrink:0;border-bottom:1px solid rgba(var(--center-channel-color-rgb),.12)}._modal-header--no-divider_14bu2_19{border-bottom:none}._modal-header--no-divider_14bu2_19 ._modal-header__content_14bu2_22,._modal-header--has-slot_14bu2_25 ._modal-header__content_14bu2_22{padding-bottom:0}._modal-header--close-only_14bu2_28 ._modal-header__content_14bu2_22{justify-content:flex-end}._modal-header--has-leading_14bu2_31 ._modal-header__content_14bu2_22{align-items:center}._modal-header__content_14bu2_22{display:flex;align-items:flex-start;gap:var(--spacing-s);width:100%;padding:var(--spacing-xxl) var(--spacing-xxxl)}._modal-header__leading_14bu2_41{display:flex;flex:1 1 auto;align-items:center;gap:var(--spacing-m);min-width:0}._modal-header__titles_14bu2_48{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:var(--spacing-m);min-width:0;padding:var(--spacing-xxxxs) 0}._modal-header__primary_14bu2_57{display:flex;align-items:center;gap:var(--spacing-m);width:100%;min-height:var(--line-height-500)}._modal-header__title_14bu2_48{flex:0 1 auto;min-width:0;margin:0;font-family:var(--font-family-heading);font-size:var(--font-size-500);font-weight:var(--font-weight-semibold);line-height:var(--line-height-500);color:var(--center-channel-color)}._modal-header__title-sr_14bu2_74{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}._modal-header__subtitle_14bu2_85{margin:0;font-family:var(--font-family-body);font-size:var(--font-size-75);font-weight:var(--font-weight-regular);line-height:var(--line-height-75);color:rgba(var(--center-channel-color-rgb),.72)}._modal-header__subtitle-beside_14bu2_93{display:flex;flex-shrink:0;align-items:center;gap:var(--spacing-xs)}._modal-header__subtitle-beside_14bu2_93 ._modal-header__subtitle_14bu2_85{line-height:var(--line-height-200);white-space:nowrap}._modal-header__subtitle-divider_14bu2_103{display:block;width:1px;height:var(--line-height-500);background-color:rgba(var(--center-channel-color-rgb),.16)}._modal-header__actions_14bu2_109{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:7px;height:28px}._modal-header__back_14bu2_117{margin-left:calc(-1 * var(--spacing-m));margin-top:calc(-1 * var(--spacing-xxs));margin-bottom:calc(-1 * var(--spacing-xxs))}._modal-header__close_14bu2_122{margin-right:calc(-1 * var(--spacing-m));margin-top:calc(-1 * var(--spacing-xxs));margin-bottom:calc(-1 * var(--spacing-xxs))}._modal-header__slot_14bu2_127{padding:var(--spacing-l) var(--spacing-xxxl) var(--spacing-xxl)}
|
|
@@ -36,6 +36,15 @@ export interface ModalHeaderProps {
|
|
|
36
36
|
* Host owns the Button, TextInput, etc.
|
|
37
37
|
*/
|
|
38
38
|
headerAction?: ReactNode;
|
|
39
|
+
/**
|
|
40
|
+
* Custom content in the title position: left aligned, vertically centered
|
|
41
|
+
* with the close button. Not wrapped in the heading and not given heading
|
|
42
|
+
* type, so a control keeps its own styles. `title` stays the accessible
|
|
43
|
+
* name and is visually hidden, the same as `hideTitle`. The subtitle is
|
|
44
|
+
* omitted. `showBackButton` still renders before this content. Without
|
|
45
|
+
* this prop, `hideTitle` stays the close-only header.
|
|
46
|
+
*/
|
|
47
|
+
leading?: ReactNode;
|
|
39
48
|
/**
|
|
40
49
|
* Full-width slot rendered below the title row and above the divider.
|
|
41
50
|
* Accepts any ReactNode — SearchInput, Tabs, a custom toolbar, etc.
|
|
@@ -44,10 +53,11 @@ export interface ModalHeaderProps {
|
|
|
44
53
|
headerSlot?: ReactNode;
|
|
45
54
|
}
|
|
46
55
|
/**
|
|
47
|
-
* Modal Header — title row, optional subtitle (below or beside), optional
|
|
48
|
-
*
|
|
56
|
+
* Modal Header — title row, optional subtitle (below or beside), optional
|
|
57
|
+
* leading content in place of the visible title, optional back, optional
|
|
58
|
+
* header action, and close. Compose into `Modal` or use standalone.
|
|
49
59
|
*
|
|
50
60
|
* @see https://www.figma.com/design/qdm5tKododENqnTvjLovDT/Patterns---Modals?node-id=789-15921
|
|
51
61
|
*/
|
|
52
|
-
export default function ModalHeader({ className, title, subtitle, subtitlePlacement, hideTitle, titleId, showBackButton, onBack, backLabel, backButtonProps, onClose, closeLabel, closeButtonProps, divider, headerAction, headerSlot, }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
62
|
+
export default function ModalHeader({ className, title, subtitle, subtitlePlacement, hideTitle, titleId, showBackButton, onBack, backLabel, backButtonProps, onClose, closeLabel, closeButtonProps, divider, headerAction, leading, headerSlot, }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
53
63
|
//# sourceMappingURL=ModalHeader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.d.ts","sourceRoot":"","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIxD,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,QAAQ,CAAC;AAExD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,gGAAgG;IAChG,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,eAAe,CAAC,EAAE,kBAAkB,CAAC;IACrC,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED
|
|
1
|
+
{"version":3,"file":"ModalHeader.d.ts","sourceRoot":"","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIxD,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,QAAQ,CAAC;AAExD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,gGAAgG;IAChG,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,eAAe,CAAC,EAAE,kBAAkB,CAAC;IACrC,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,SAAc,EACd,KAAK,EACL,QAAQ,EACR,iBAA2B,EAC3B,SAAiB,EACjB,OAAO,EACP,cAAsB,EACtB,MAAM,EACN,SAAqB,EACrB,eAAe,EACf,OAAO,EACP,UAAoB,EACpB,gBAAgB,EAChB,OAAc,EACd,YAAY,EACZ,OAAO,EACP,UAAU,GACX,EAAE,gBAAgB,2CAqFlB"}
|
|
@@ -1,58 +1,60 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import { mergeClassNames as
|
|
1
|
+
import { jsx as a, jsxs as l } from "react/jsx-runtime";
|
|
2
|
+
import __L from "@mattermost/compass-icons/components/close.js";const L=__L&&__L.default?__L.default:__L;
|
|
3
|
+
import __k from "@mattermost/compass-icons/components/arrow-left.js";const k=__k&&__k.default?__k.default:__k;
|
|
4
|
+
import v from "../icon/Icon.js";
|
|
5
|
+
import b from "../icon-button/IconButton.js";
|
|
6
|
+
import { mergeClassNames as u } from "../../utils/props.js";
|
|
7
7
|
import e from "./ModalHeader.module.scss.js";
|
|
8
|
-
function
|
|
9
|
-
className:
|
|
8
|
+
function F({
|
|
9
|
+
className: g = "",
|
|
10
10
|
title: d,
|
|
11
|
-
subtitle:
|
|
12
|
-
subtitlePlacement:
|
|
13
|
-
hideTitle:
|
|
14
|
-
titleId:
|
|
15
|
-
showBackButton:
|
|
16
|
-
onBack:
|
|
17
|
-
backLabel:
|
|
11
|
+
subtitle: r,
|
|
12
|
+
subtitlePlacement: y = "below",
|
|
13
|
+
hideTitle: h = !1,
|
|
14
|
+
titleId: o,
|
|
15
|
+
showBackButton: C = !1,
|
|
16
|
+
onBack: p,
|
|
17
|
+
backLabel: w = "Go back",
|
|
18
18
|
backButtonProps: s,
|
|
19
|
-
onClose:
|
|
20
|
-
closeLabel:
|
|
21
|
-
closeButtonProps:
|
|
22
|
-
divider:
|
|
23
|
-
headerAction:
|
|
24
|
-
|
|
19
|
+
onClose: j,
|
|
20
|
+
closeLabel: x = "Close",
|
|
21
|
+
closeButtonProps: i,
|
|
22
|
+
divider: z = !0,
|
|
23
|
+
headerAction: I,
|
|
24
|
+
leading: n,
|
|
25
|
+
headerSlot: c
|
|
25
26
|
}) {
|
|
26
|
-
const
|
|
27
|
+
const m = !!n, _ = !h && !m && d != null, N = _ && r != null, f = y === "beside" && N, t = C ? /* @__PURE__ */ a(
|
|
28
|
+
b,
|
|
29
|
+
{
|
|
30
|
+
...s,
|
|
31
|
+
"aria-label": w,
|
|
32
|
+
className: u(
|
|
33
|
+
e["modal-header__back"],
|
|
34
|
+
s == null ? void 0 : s.className
|
|
35
|
+
),
|
|
36
|
+
icon: /* @__PURE__ */ a(v, { glyph: /* @__PURE__ */ a(k, {}), size: "20" }),
|
|
37
|
+
onClick: p
|
|
38
|
+
}
|
|
39
|
+
) : null;
|
|
27
40
|
return /* @__PURE__ */ l(
|
|
28
41
|
"div",
|
|
29
42
|
{
|
|
30
43
|
className: [
|
|
31
44
|
e["modal-header"],
|
|
32
|
-
!
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
45
|
+
!z && e["modal-header--no-divider"],
|
|
46
|
+
h && !m && e["modal-header--close-only"],
|
|
47
|
+
m && e["modal-header--has-leading"],
|
|
48
|
+
c && e["modal-header--has-slot"],
|
|
49
|
+
g
|
|
36
50
|
].filter(Boolean).join(" "),
|
|
37
51
|
children: [
|
|
38
52
|
/* @__PURE__ */ l("div", { className: e["modal-header__content"], children: [
|
|
39
|
-
|
|
53
|
+
_ ? /* @__PURE__ */ l("div", { className: e["modal-header__titles"], children: [
|
|
40
54
|
/* @__PURE__ */ l("div", { className: e["modal-header__primary"], children: [
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
...s,
|
|
45
|
-
"aria-label": p,
|
|
46
|
-
className: v(
|
|
47
|
-
e["modal-header__back"],
|
|
48
|
-
s == null ? void 0 : s.className
|
|
49
|
-
),
|
|
50
|
-
icon: /* @__PURE__ */ a(N, { glyph: /* @__PURE__ */ a(z, {}), size: "20" }),
|
|
51
|
-
onClick: C
|
|
52
|
-
}
|
|
53
|
-
),
|
|
54
|
-
/* @__PURE__ */ a("h2", { id: r, className: e["modal-header__title"], children: d }),
|
|
55
|
-
_ && /* @__PURE__ */ l("div", { className: e["modal-header__subtitle-beside"], children: [
|
|
55
|
+
t,
|
|
56
|
+
/* @__PURE__ */ a("h2", { id: o, className: e["modal-header__title"], children: d }),
|
|
57
|
+
f && /* @__PURE__ */ l("div", { className: e["modal-header__subtitle-beside"], children: [
|
|
56
58
|
/* @__PURE__ */ a(
|
|
57
59
|
"span",
|
|
58
60
|
{
|
|
@@ -60,34 +62,38 @@ function q({
|
|
|
60
62
|
"aria-hidden": !0
|
|
61
63
|
}
|
|
62
64
|
),
|
|
63
|
-
/* @__PURE__ */ a("p", { className: e["modal-header__subtitle"], children:
|
|
65
|
+
/* @__PURE__ */ a("p", { className: e["modal-header__subtitle"], children: r })
|
|
64
66
|
] })
|
|
65
67
|
] }),
|
|
66
|
-
|
|
67
|
-
] }) :
|
|
68
|
+
N && !f && /* @__PURE__ */ a("p", { className: e["modal-header__subtitle"], children: r })
|
|
69
|
+
] }) : o != null && d != null ? /* @__PURE__ */ a("h2", { id: o, className: e["modal-header__title-sr"], children: d }) : null,
|
|
70
|
+
m && /* @__PURE__ */ l("div", { className: e["modal-header__leading"], children: [
|
|
71
|
+
t,
|
|
72
|
+
n
|
|
73
|
+
] }),
|
|
68
74
|
/* @__PURE__ */ l("div", { className: e["modal-header__actions"], children: [
|
|
69
|
-
|
|
75
|
+
I,
|
|
70
76
|
/* @__PURE__ */ a(
|
|
71
|
-
|
|
77
|
+
b,
|
|
72
78
|
{
|
|
73
|
-
...
|
|
74
|
-
"aria-label":
|
|
75
|
-
className:
|
|
79
|
+
...i,
|
|
80
|
+
"aria-label": x,
|
|
81
|
+
className: u(
|
|
76
82
|
e["modal-header__close"],
|
|
77
|
-
|
|
83
|
+
i == null ? void 0 : i.className
|
|
78
84
|
),
|
|
79
|
-
icon: /* @__PURE__ */ a(
|
|
80
|
-
onClick:
|
|
85
|
+
icon: /* @__PURE__ */ a(v, { glyph: /* @__PURE__ */ a(L, {}), size: "20" }),
|
|
86
|
+
onClick: j
|
|
81
87
|
}
|
|
82
88
|
)
|
|
83
89
|
] })
|
|
84
90
|
] }),
|
|
85
|
-
|
|
91
|
+
c && /* @__PURE__ */ a("div", { className: e["modal-header__slot"], children: c })
|
|
86
92
|
]
|
|
87
93
|
}
|
|
88
94
|
);
|
|
89
95
|
}
|
|
90
96
|
export {
|
|
91
|
-
|
|
97
|
+
F as default
|
|
92
98
|
};
|
|
93
99
|
//# sourceMappingURL=ModalHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.js","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport ArrowLeftIcon from '@mattermost/compass-icons/components/arrow-left';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport type { BuiltInButtonProps } from '@/utils/props';\nimport { mergeClassNames } from '@/utils/props';\nimport styles from './ModalHeader.module.scss';\n\nexport type ModalSubtitlePlacement = 'below' | 'beside';\n\nexport interface ModalHeaderProps {\n className?: string;\n /** Heading text. Omit (with `hideTitle`) for close-only headers. */\n title?: ReactNode;\n /** Optional secondary text — placement controlled by `subtitlePlacement`. */\n subtitle?: ReactNode;\n /**\n * Where the subtitle sits relative to the title.\n * Figma: Subtitle = Below | Beside. Default: `below`.\n */\n subtitlePlacement?: ModalSubtitlePlacement;\n /** When true, title is visually hidden (close-only chrome; keep `title`/`titleId` for a11y). */\n hideTitle?: boolean;\n /** id for the title element — pair with dialog `aria-labelledby`. */\n titleId?: string;\n /** Back arrow before the title. */\n showBackButton?: boolean;\n onBack?: () => void;\n /** Accessible name for the back button. Default: \"Go back\". */\n backLabel?: string;\n /** Extra attributes for the back button (e.g. `data-testid`). */\n backButtonProps?: BuiltInButtonProps;\n /** Called when the × is clicked. */\n onClose?: () => void;\n /** Accessible name for the close button. Default: \"Close\". */\n closeLabel?: string;\n /** Extra attributes for the close button (e.g. `data-testid`). */\n closeButtonProps?: BuiltInButtonProps;\n /** Show bottom border. Figma: Divider = On. Default: true. */\n divider?: boolean;\n /**\n * Optional control before close (Figma Controls = Button / Small Input / …).\n * Host owns the Button, TextInput, etc.\n */\n headerAction?: ReactNode;\n /**\n * Full-width slot rendered below the title row and above the divider.\n * Accepts any ReactNode — SearchInput, Tabs, a custom toolbar, etc.\n * Padding is provided by the slot container; no extra wrapper is needed.\n */\n headerSlot?: ReactNode;\n}\n\n/**\n * Modal Header — title row, optional subtitle (below or beside), optional back
|
|
1
|
+
{"version":3,"file":"ModalHeader.js","sources":["../../../src/components/modal-header/ModalHeader.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport CloseIcon from '@mattermost/compass-icons/components/close';\nimport ArrowLeftIcon from '@mattermost/compass-icons/components/arrow-left';\nimport Icon from '@/components/icon/Icon';\nimport IconButton from '@/components/icon-button/IconButton';\nimport type { BuiltInButtonProps } from '@/utils/props';\nimport { mergeClassNames } from '@/utils/props';\nimport styles from './ModalHeader.module.scss';\n\nexport type ModalSubtitlePlacement = 'below' | 'beside';\n\nexport interface ModalHeaderProps {\n className?: string;\n /** Heading text. Omit (with `hideTitle`) for close-only headers. */\n title?: ReactNode;\n /** Optional secondary text — placement controlled by `subtitlePlacement`. */\n subtitle?: ReactNode;\n /**\n * Where the subtitle sits relative to the title.\n * Figma: Subtitle = Below | Beside. Default: `below`.\n */\n subtitlePlacement?: ModalSubtitlePlacement;\n /** When true, title is visually hidden (close-only chrome; keep `title`/`titleId` for a11y). */\n hideTitle?: boolean;\n /** id for the title element — pair with dialog `aria-labelledby`. */\n titleId?: string;\n /** Back arrow before the title. */\n showBackButton?: boolean;\n onBack?: () => void;\n /** Accessible name for the back button. Default: \"Go back\". */\n backLabel?: string;\n /** Extra attributes for the back button (e.g. `data-testid`). */\n backButtonProps?: BuiltInButtonProps;\n /** Called when the × is clicked. */\n onClose?: () => void;\n /** Accessible name for the close button. Default: \"Close\". */\n closeLabel?: string;\n /** Extra attributes for the close button (e.g. `data-testid`). */\n closeButtonProps?: BuiltInButtonProps;\n /** Show bottom border. Figma: Divider = On. Default: true. */\n divider?: boolean;\n /**\n * Optional control before close (Figma Controls = Button / Small Input / …).\n * Host owns the Button, TextInput, etc.\n */\n headerAction?: ReactNode;\n /**\n * Custom content in the title position: left aligned, vertically centered\n * with the close button. Not wrapped in the heading and not given heading\n * type, so a control keeps its own styles. `title` stays the accessible\n * name and is visually hidden, the same as `hideTitle`. The subtitle is\n * omitted. `showBackButton` still renders before this content. Without\n * this prop, `hideTitle` stays the close-only header.\n */\n leading?: ReactNode;\n /**\n * Full-width slot rendered below the title row and above the divider.\n * Accepts any ReactNode — SearchInput, Tabs, a custom toolbar, etc.\n * Padding is provided by the slot container; no extra wrapper is needed.\n */\n headerSlot?: ReactNode;\n}\n\n/**\n * Modal Header — title row, optional subtitle (below or beside), optional\n * leading content in place of the visible title, optional back, optional\n * header action, and close. Compose into `Modal` or use standalone.\n *\n * @see https://www.figma.com/design/qdm5tKododENqnTvjLovDT/Patterns---Modals?node-id=789-15921\n */\nexport default function ModalHeader({\n className = '',\n title,\n subtitle,\n subtitlePlacement = 'below',\n hideTitle = false,\n titleId,\n showBackButton = false,\n onBack,\n backLabel = 'Go back',\n backButtonProps,\n onClose,\n closeLabel = 'Close',\n closeButtonProps,\n divider = true,\n headerAction,\n leading,\n headerSlot,\n}: ModalHeaderProps) {\n const hasLeading = Boolean(leading);\n const showTitleBlock = !hideTitle && !hasLeading && title != null;\n const showSubtitle = showTitleBlock && subtitle != null;\n const beside = subtitlePlacement === 'beside' && showSubtitle;\n const backButton = showBackButton ? (\n <IconButton\n {...backButtonProps}\n aria-label={backLabel}\n className={mergeClassNames(\n styles['modal-header__back'],\n backButtonProps?.className,\n )}\n icon={<Icon glyph={<ArrowLeftIcon />} size=\"20\" />}\n onClick={onBack}\n />\n ) : null;\n\n return (\n <div\n className={[\n styles['modal-header'],\n !divider && styles['modal-header--no-divider'],\n hideTitle && !hasLeading && styles['modal-header--close-only'],\n hasLeading && styles['modal-header--has-leading'],\n headerSlot && styles['modal-header--has-slot'],\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div className={styles['modal-header__content']}>\n {showTitleBlock ? (\n <div className={styles['modal-header__titles']}>\n <div className={styles['modal-header__primary']}>\n {backButton}\n <h2 id={titleId} className={styles['modal-header__title']}>\n {title}\n </h2>\n {beside && (\n <div className={styles['modal-header__subtitle-beside']}>\n <span\n className={styles['modal-header__subtitle-divider']}\n aria-hidden\n />\n <p className={styles['modal-header__subtitle']}>{subtitle}</p>\n </div>\n )}\n </div>\n {showSubtitle && !beside && (\n <p className={styles['modal-header__subtitle']}>{subtitle}</p>\n )}\n </div>\n ) : titleId != null && title != null ? (\n <h2 id={titleId} className={styles['modal-header__title-sr']}>\n {title}\n </h2>\n ) : null}\n\n {hasLeading && (\n <div className={styles['modal-header__leading']}>\n {backButton}\n {leading}\n </div>\n )}\n\n <div className={styles['modal-header__actions']}>\n {headerAction}\n <IconButton\n {...closeButtonProps}\n aria-label={closeLabel}\n className={mergeClassNames(\n styles['modal-header__close'],\n closeButtonProps?.className,\n )}\n icon={<Icon glyph={<CloseIcon />} size=\"20\" />}\n onClick={onClose}\n />\n </div>\n </div>\n {headerSlot && (\n <div className={styles['modal-header__slot']}>{headerSlot}</div>\n )}\n </div>\n );\n}\n"],"names":["ModalHeader","className","title","subtitle","subtitlePlacement","hideTitle","titleId","showBackButton","onBack","backLabel","backButtonProps","onClose","closeLabel","closeButtonProps","divider","headerAction","leading","headerSlot","hasLeading","showTitleBlock","showSubtitle","beside","backButton","jsx","IconButton","mergeClassNames","styles","Icon","ArrowLeftIcon","jsxs","CloseIcon"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalHeader.css');const e={"modal-header":"_modal-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./ModalHeader.css');const e={"modal-header":"_modal-header_14bu2_13","modal-header--no-divider":"_modal-header--no-divider_14bu2_19","modal-header__content":"_modal-header__content_14bu2_22","modal-header--has-slot":"_modal-header--has-slot_14bu2_25","modal-header--close-only":"_modal-header--close-only_14bu2_28","modal-header--has-leading":"_modal-header--has-leading_14bu2_31","modal-header__leading":"_modal-header__leading_14bu2_41","modal-header__titles":"_modal-header__titles_14bu2_48","modal-header__primary":"_modal-header__primary_14bu2_57","modal-header__title":"_modal-header__title_14bu2_48","modal-header__title-sr":"_modal-header__title-sr_14bu2_74","modal-header__subtitle":"_modal-header__subtitle_14bu2_85","modal-header__subtitle-beside":"_modal-header__subtitle-beside_14bu2_93","modal-header__subtitle-divider":"_modal-header__subtitle-divider_14bu2_103","modal-header__actions":"_modal-header__actions_14bu2_109","modal-header__back":"_modal-header__back_14bu2_117","modal-header__close":"_modal-header__close_14bu2_122","modal-header__slot":"_modal-header__slot_14bu2_127"};exports.default=e;
|
|
2
2
|
//# sourceMappingURL=ModalHeader.module.scss.cjs.map
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import './ModalHeader.css';const _ = {
|
|
2
|
-
"modal-header": "_modal-
|
|
3
|
-
"modal-header--no-divider": "_modal-header--no-
|
|
4
|
-
"modal-header__content": "_modal-
|
|
5
|
-
"modal-header--has-slot": "_modal-header--has-
|
|
6
|
-
"modal-header--close-only": "_modal-header--close-
|
|
7
|
-
"modal-
|
|
8
|
-
"modal-
|
|
9
|
-
"modal-
|
|
10
|
-
"modal-
|
|
11
|
-
"modal-
|
|
12
|
-
"modal-
|
|
13
|
-
"modal-header__subtitle
|
|
14
|
-
"modal-
|
|
15
|
-
"modal-
|
|
16
|
-
"modal-
|
|
17
|
-
"modal-
|
|
2
|
+
"modal-header": "_modal-header_14bu2_13",
|
|
3
|
+
"modal-header--no-divider": "_modal-header--no-divider_14bu2_19",
|
|
4
|
+
"modal-header__content": "_modal-header__content_14bu2_22",
|
|
5
|
+
"modal-header--has-slot": "_modal-header--has-slot_14bu2_25",
|
|
6
|
+
"modal-header--close-only": "_modal-header--close-only_14bu2_28",
|
|
7
|
+
"modal-header--has-leading": "_modal-header--has-leading_14bu2_31",
|
|
8
|
+
"modal-header__leading": "_modal-header__leading_14bu2_41",
|
|
9
|
+
"modal-header__titles": "_modal-header__titles_14bu2_48",
|
|
10
|
+
"modal-header__primary": "_modal-header__primary_14bu2_57",
|
|
11
|
+
"modal-header__title": "_modal-header__title_14bu2_48",
|
|
12
|
+
"modal-header__title-sr": "_modal-header__title-sr_14bu2_74",
|
|
13
|
+
"modal-header__subtitle": "_modal-header__subtitle_14bu2_85",
|
|
14
|
+
"modal-header__subtitle-beside": "_modal-header__subtitle-beside_14bu2_93",
|
|
15
|
+
"modal-header__subtitle-divider": "_modal-header__subtitle-divider_14bu2_103",
|
|
16
|
+
"modal-header__actions": "_modal-header__actions_14bu2_109",
|
|
17
|
+
"modal-header__back": "_modal-header__back_14bu2_117",
|
|
18
|
+
"modal-header__close": "_modal-header__close_14bu2_122",
|
|
19
|
+
"modal-header__slot": "_modal-header__slot_14bu2_127"
|
|
18
20
|
};
|
|
19
21
|
export {
|
|
20
22
|
_ as default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ModalHeader.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
|