box-ui-elements 19.0.0-beta.8 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/explorer.css +1 -1
- package/dist/explorer.js +2 -172
- package/dist/explorer.js.LICENSE.txt +178 -0
- package/dist/openwith.css +1 -1
- package/dist/openwith.js +2 -84
- package/dist/openwith.js.LICENSE.txt +94 -0
- package/dist/picker.css +1 -1
- package/dist/picker.js +2 -101
- package/dist/picker.js.LICENSE.txt +112 -0
- package/dist/preview.css +1 -1
- package/dist/preview.js +2 -155
- package/dist/preview.js.LICENSE.txt +160 -0
- package/dist/sharing.css +1 -1
- package/dist/sharing.js +2 -135
- package/dist/sharing.js.LICENSE.txt +149 -0
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +2 -155
- package/dist/sidebar.js.LICENSE.txt +160 -0
- package/dist/uploader.css +1 -1
- package/dist/uploader.js +2 -101
- package/dist/uploader.js.LICENSE.txt +112 -0
- package/es/api/APIFactory.js +25 -0
- package/es/api/APIFactory.js.flow +25 -0
- package/es/api/APIFactory.js.map +1 -1
- package/es/api/Feed.js +5 -3
- package/es/api/Feed.js.flow +8 -4
- package/es/api/Feed.js.map +1 -1
- package/es/api/Intelligence.js +45 -0
- package/es/api/Intelligence.js.flow +47 -0
- package/es/api/Intelligence.js.map +1 -0
- package/es/common/types/core.js.flow +1 -0
- package/es/common/types/core.js.map +1 -1
- package/es/components/accessible-svg/AccessibleSVG.stories.js +1 -1
- package/es/components/accessible-svg/AccessibleSVG.stories.js.map +1 -1
- package/es/components/avatar/Avatar.stories.js +1 -1
- package/es/components/avatar/Avatar.stories.js.map +1 -1
- package/es/components/badge/Badge.stories.js +1 -1
- package/es/components/badge/Badge.stories.js.map +1 -1
- package/es/components/badge/BetaBadge.stories.js +1 -1
- package/es/components/badge/BetaBadge.stories.js.map +1 -1
- package/es/components/badge/TrialBadge.stories.js +1 -1
- package/es/components/badge/TrialBadge.stories.js.map +1 -1
- package/es/components/badge/UpgradeBadge.stories.js +1 -1
- package/es/components/badge/UpgradeBadge.stories.js.map +1 -1
- package/es/components/breadcrumb/Breadcrumb.stories.js +1 -1
- package/es/components/breadcrumb/Breadcrumb.stories.js.flow +1 -1
- package/es/components/breadcrumb/Breadcrumb.stories.js.map +1 -1
- package/es/components/button/Button.stories.js +1 -1
- package/es/components/button/Button.stories.js.map +1 -1
- package/es/components/button-group/ButtonGroup.stories.js +1 -1
- package/es/components/button-group/ButtonGroup.stories.js.map +1 -1
- package/es/components/category-selector/CategorySelector.stories.js +1 -1
- package/es/components/category-selector/CategorySelector.stories.js.map +1 -1
- package/es/components/checkbox/Checkbox.stories.js +1 -1
- package/es/components/checkbox/Checkbox.stories.js.map +1 -1
- package/es/components/close-button/CloseButton.stories.js +1 -1
- package/es/components/close-button/CloseButton.stories.js.map +1 -1
- package/es/components/collapsible/Collapsible.stories.js +1 -1
- package/es/components/collapsible/Collapsible.stories.js.map +1 -1
- package/es/components/contact-datalist-item/ContactDatalistItem.stories.js +1 -1
- package/es/components/contact-datalist-item/ContactDatalistItem.stories.js.map +1 -1
- package/es/components/context-menu/ContextMenu.stories.js +1 -1
- package/es/components/context-menu/ContextMenu.stories.js.map +1 -1
- package/es/components/count-badge/CountBadge.stories.js +1 -1
- package/es/components/count-badge/CountBadge.stories.js.map +1 -1
- package/es/components/datalist-item/DatalistItem.stories.js +1 -1
- package/es/components/datalist-item/DatalistItem.stories.js.map +1 -1
- package/es/components/date-picker/DatePicker.stories.js +1 -1
- package/es/components/date-picker/DatePicker.stories.js.map +1 -1
- package/es/components/draft-js-editor/DraftJSEditor.stories.js +1 -1
- package/es/components/draft-js-editor/DraftJSEditor.stories.js.flow +1 -1
- package/es/components/draft-js-editor/DraftJSEditor.stories.js.map +1 -1
- package/es/components/draggable-list/DraggableList.stories.js +1 -1
- package/es/components/draggable-list/DraggableList.stories.js.map +1 -1
- package/es/components/dropdown-menu/DropdownMenu.stories.js +1 -1
- package/es/components/dropdown-menu/DropdownMenu.stories.js.flow +1 -1
- package/es/components/dropdown-menu/DropdownMenu.stories.js.map +1 -1
- package/es/components/error-mask/ErrorMask.stories.js +1 -1
- package/es/components/error-mask/ErrorMask.stories.js.map +1 -1
- package/es/components/fieldset/Fieldset.stories.js +1 -1
- package/es/components/fieldset/Fieldset.stories.js.map +1 -1
- package/es/components/flyout/Flyout.stories.js +1 -1
- package/es/components/flyout/Flyout.stories.js.map +1 -1
- package/es/components/flyout/OverlayHeader.js +2 -1
- package/es/components/flyout/OverlayHeader.js.map +1 -1
- package/es/components/footer-indicator/FooterIndicator.stories.js +1 -1
- package/es/components/footer-indicator/FooterIndicator.stories.js.map +1 -1
- package/es/components/form-elements/form/Form.stories.js +1 -1
- package/es/components/form-elements/form/Form.stories.js.flow +1 -1
- package/es/components/form-elements/form/Form.stories.js.map +1 -1
- package/es/components/form-elements/formik/Formik.stories.js +1 -1
- package/es/components/form-elements/formik/Formik.stories.js.flow +1 -1
- package/es/components/form-elements/formik/Formik.stories.js.map +1 -1
- package/es/components/form-elements/text-area/TextArea.stories.js +1 -1
- package/es/components/form-elements/text-area/TextArea.stories.js.flow +1 -1
- package/es/components/form-elements/text-area/TextArea.stories.js.map +1 -1
- package/es/components/form-elements/text-input/TextInput.stories.js +1 -1
- package/es/components/form-elements/text-input/TextInput.stories.js.flow +1 -1
- package/es/components/form-elements/text-input/TextInput.stories.js.map +1 -1
- package/es/components/ghost/Ghost.stories.js +1 -1
- package/es/components/ghost/Ghost.stories.js.map +1 -1
- package/es/components/guide-tooltip/GuideTooltip.stories.js +1 -1
- package/es/components/guide-tooltip/GuideTooltip.stories.js.map +1 -1
- package/es/components/header/Header.stories.js +1 -1
- package/es/components/header/Header.stories.js.map +1 -1
- package/es/components/image-tooltip/ImageTooltip.stories.js +1 -1
- package/es/components/image-tooltip/ImageTooltip.stories.js.map +1 -1
- package/es/components/inline-error/InlineError.stories.js +1 -1
- package/es/components/inline-error/InlineError.stories.js.flow +1 -1
- package/es/components/inline-error/InlineError.stories.js.map +1 -1
- package/es/components/inline-notice/InlineNotice.stories.js +1 -1
- package/es/components/inline-notice/InlineNotice.stories.js.flow +1 -1
- package/es/components/inline-notice/InlineNotice.stories.js.map +1 -1
- package/es/components/label/HiddenLabel.js +13 -7
- package/es/components/label/HiddenLabel.js.flow +3 -2
- package/es/components/label/HiddenLabel.js.map +1 -1
- package/es/components/label/Label.js +5 -2
- package/es/components/label/Label.js.flow +5 -3
- package/es/components/label/Label.js.map +1 -1
- package/es/components/label/Label.stories.js +1 -1
- package/es/components/label/Label.stories.js.map +1 -1
- package/es/components/label/LabelPrimitive.js +4 -3
- package/es/components/label/LabelPrimitive.js.flow +3 -2
- package/es/components/label/LabelPrimitive.js.map +1 -1
- package/es/components/label/StandardLabel.js +8 -5
- package/es/components/label/StandardLabel.js.flow +3 -2
- package/es/components/label/StandardLabel.js.map +1 -1
- package/es/components/label-pill/LabelPill.stories.js +1 -1
- package/es/components/label-pill/LabelPill.stories.js.map +1 -1
- package/es/components/link/stories/Link.stories.js +6 -4
- package/es/components/link/stories/Link.stories.js.map +1 -1
- package/es/components/link/stories/LinkButton.stories.js +8 -5
- package/es/components/link/stories/LinkButton.stories.js.map +1 -1
- package/es/components/link/stories/LinkGroup.stories.js +1 -1
- package/es/components/link/stories/LinkGroup.stories.js.map +1 -1
- package/es/components/link/stories/LinkPrimaryButton.stories.js +6 -4
- package/es/components/link/stories/LinkPrimaryButton.stories.js.map +1 -1
- package/es/components/loading-indicator/LoadingIndicator.stories.js +1 -1
- package/es/components/loading-indicator/LoadingIndicator.stories.js.map +1 -1
- package/es/components/loading-indicator/LoadingIndicatorWrapper.stories.js +1 -1
- package/es/components/loading-indicator/LoadingIndicatorWrapper.stories.js.map +1 -1
- package/es/components/loading-indicator/makeLoadable.js.map +1 -1
- package/es/components/logo/Logo.stories.js +1 -1
- package/es/components/logo/Logo.stories.js.map +1 -1
- package/es/components/media/stories/Media.stories.js +1 -1
- package/es/components/media/stories/Media.stories.js.map +1 -1
- package/es/components/media/stories/MediaBody.stories.js +1 -1
- package/es/components/media/stories/MediaBody.stories.js.map +1 -1
- package/es/components/media/stories/MediaFigure.stories.js +1 -1
- package/es/components/media/stories/MediaFigure.stories.js.map +1 -1
- package/es/components/media/stories/MediaMenu.stories.js +1 -1
- package/es/components/media/stories/MediaMenu.stories.js.map +1 -1
- package/es/components/media-query/stories/MediaQuery.stories.js +1 -1
- package/es/components/media-query/stories/MediaQuery.stories.js.flow +1 -1
- package/es/components/media-query/stories/MediaQuery.stories.js.map +1 -1
- package/es/components/menu/stories/Menu.stories.js +1 -1
- package/es/components/menu/stories/Menu.stories.js.map +1 -1
- package/es/components/menu/stories/SelectMenuLinkItem.stories.js +1 -1
- package/es/components/menu/stories/SelectMenuLinkItem.stories.js.map +1 -1
- package/es/components/modal/Modal.scss +62 -69
- package/es/components/modal/stories/Modal.stories.js +1 -1
- package/es/components/modal/stories/Modal.stories.js.flow +1 -1
- package/es/components/modal/stories/Modal.stories.js.map +1 -1
- package/es/components/modal/stories/ModalActions.stories.js +1 -1
- package/es/components/modal/stories/ModalActions.stories.js.flow +1 -1
- package/es/components/modal/stories/ModalActions.stories.js.map +1 -1
- package/es/components/modal/stories/ModalDialog.stories.js +1 -1
- package/es/components/modal/stories/ModalDialog.stories.js.flow +1 -1
- package/es/components/modal/stories/ModalDialog.stories.js.map +1 -1
- package/es/components/nav-sidebar/NavSidebar.stories.js +1 -1
- package/es/components/nav-sidebar/NavSidebar.stories.js.flow +1 -1
- package/es/components/nav-sidebar/NavSidebar.stories.js.map +1 -1
- package/es/components/notification/stories/Notification.stories.js +1 -1
- package/es/components/notification/stories/Notification.stories.js.flow +1 -1
- package/es/components/notification/stories/Notification.stories.js.map +1 -1
- package/es/components/notification/stories/NotificationsWrapper.stories.js +1 -1
- package/es/components/notification/stories/NotificationsWrapper.stories.js.flow +1 -1
- package/es/components/notification/stories/NotificationsWrapper.stories.js.map +1 -1
- package/es/components/nudge/Nudge.stories.js +1 -1
- package/es/components/nudge/Nudge.stories.js.map +1 -1
- package/es/components/pill-cloud/PillCloud.stories.js +1 -1
- package/es/components/pill-cloud/PillCloud.stories.js.flow +1 -1
- package/es/components/pill-cloud/PillCloud.stories.js.map +1 -1
- package/es/components/pill-selector-dropdown/PillSelector.js +7 -3
- package/es/components/pill-selector-dropdown/PillSelector.js.flow +10 -2
- package/es/components/pill-selector-dropdown/PillSelector.js.map +1 -1
- package/es/components/pill-selector-dropdown/PillSelector.scss +4 -0
- package/es/components/pill-selector-dropdown/PillSelectorDropdown.stories.js +1 -1
- package/es/components/pill-selector-dropdown/PillSelectorDropdown.stories.js.flow +1 -1
- package/es/components/pill-selector-dropdown/PillSelectorDropdown.stories.js.map +1 -1
- package/es/components/plain-button/PlainButton.stories.js +1 -1
- package/es/components/plain-button/PlainButton.stories.js.map +1 -1
- package/es/components/primary-button/PrimaryButton.stories.js +1 -1
- package/es/components/primary-button/PrimaryButton.stories.js.map +1 -1
- package/es/components/radar/RadarAnimation.stories.js +1 -1
- package/es/components/radar/RadarAnimation.stories.js.map +1 -1
- package/es/components/radio/stories/RadioButton.stories.js +1 -1
- package/es/components/radio/stories/RadioButton.stories.js.map +1 -1
- package/es/components/radio/stories/RadioGroup.stories.js +1 -1
- package/es/components/radio/stories/RadioGroup.stories.js.map +1 -1
- package/es/components/search-form/SearchActions.js +35 -0
- package/es/components/search-form/SearchActions.js.map +1 -0
- package/es/components/search-form/SearchForm.js +11 -39
- package/es/components/search-form/SearchForm.js.flow +10 -54
- package/es/components/search-form/SearchForm.js.map +1 -1
- package/es/components/search-form/messages.js +17 -0
- package/es/components/search-form/messages.js.map +1 -0
- package/es/components/section/Section.stories.js +1 -1
- package/es/components/section/Section.stories.js.map +1 -1
- package/es/components/select/Select.stories.js +1 -1
- package/es/components/select/Select.stories.js.flow +1 -1
- package/es/components/select/Select.stories.js.map +1 -1
- package/es/components/select-button/SelectButton.stories.js +1 -1
- package/es/components/select-button/SelectButton.stories.js.flow +1 -1
- package/es/components/select-button/SelectButton.stories.js.map +1 -1
- package/es/components/selector-dropdown/SelectorDropdown.stories.js +1 -1
- package/es/components/selector-dropdown/SelectorDropdown.stories.js.flow +1 -1
- package/es/components/selector-dropdown/SelectorDropdown.stories.js.map +1 -1
- package/es/components/sidebar-toggle-button/SidebarToggleButton.stories.js +1 -1
- package/es/components/sidebar-toggle-button/SidebarToggleButton.stories.js.flow +1 -1
- package/es/components/sidebar-toggle-button/SidebarToggleButton.stories.js.map +1 -1
- package/es/components/tab-view/TabView.stories.js +1 -1
- package/es/components/tab-view/TabView.stories.js.flow +1 -1
- package/es/components/tab-view/TabView.stories.js.map +1 -1
- package/es/components/text-input/TextInput.stories.js +1 -1
- package/es/components/text-input/TextInput.stories.js.flow +1 -1
- package/es/components/text-input/TextInput.stories.js.map +1 -1
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.js +9 -3
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.js.flow +9 -4
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.js.map +1 -1
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.stories.js +1 -1
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.stories.js.flow +1 -1
- package/es/components/text-input-with-copy-button/TextInputWithCopyButton.stories.js.map +1 -1
- package/es/components/thumbnail-card/ThumbnailCard.stories.js +1 -1
- package/es/components/thumbnail-card/ThumbnailCard.stories.js.flow +1 -1
- package/es/components/thumbnail-card/ThumbnailCard.stories.js.map +1 -1
- package/es/components/time/ReadableTime.stories.js +1 -1
- package/es/components/time/ReadableTime.stories.js.flow +1 -1
- package/es/components/time/ReadableTime.stories.js.map +1 -1
- package/es/components/time-input/TimeInput.stories.js +1 -1
- package/es/components/time-input/TimeInput.stories.js.map +1 -1
- package/es/components/toggle/Toggle.stories.js +1 -1
- package/es/components/toggle/Toggle.stories.js.flow +1 -1
- package/es/components/toggle/Toggle.stories.js.map +1 -1
- package/es/components/tooltip/Tooltip.stories.js +1 -1
- package/es/components/tooltip/Tooltip.stories.js.map +1 -1
- package/es/constants.js +1 -0
- package/es/constants.js.flow +1 -0
- package/es/constants.js.map +1 -1
- package/es/elements/common/_variables.scss +1 -0
- package/es/elements/common/current-user/withCurrentUser.js +1 -0
- package/es/elements/common/current-user/withCurrentUser.js.map +1 -1
- package/es/elements/common/selectors/version.js +2 -1
- package/es/elements/common/selectors/version.js.flow +2 -1
- package/es/elements/common/selectors/version.js.map +1 -1
- package/es/elements/content-explorer/ContentExplorer.js +2 -0
- package/es/elements/content-explorer/ContentExplorer.js.flow +10 -4
- package/es/elements/content-explorer/ContentExplorer.js.map +1 -1
- package/es/elements/content-explorer/MoreOptions.js +1 -1
- package/es/elements/content-explorer/MoreOptions.js.flow +1 -1
- package/es/elements/content-explorer/MoreOptions.js.map +1 -1
- package/es/elements/content-explorer/PreviewDialog.js +0 -1
- package/es/elements/content-explorer/PreviewDialog.js.flow +0 -1
- package/es/elements/content-explorer/PreviewDialog.js.map +1 -1
- package/es/elements/content-explorer/stories/ContentExplorer.stories.js +25 -35
- package/es/elements/content-explorer/stories/ContentExplorer.stories.js.flow +25 -36
- package/es/elements/content-explorer/stories/ContentExplorer.stories.js.map +1 -1
- package/es/elements/content-explorer/stories/DeleteConfirmationDialog.stories.js +1 -1
- package/es/elements/content-explorer/stories/DeleteConfirmationDialog.stories.js.flow +1 -1
- package/es/elements/content-explorer/stories/DeleteConfirmationDialog.stories.js.map +1 -1
- package/es/elements/content-explorer/stories/ShareDialog.stories.js +1 -1
- package/es/elements/content-explorer/stories/ShareDialog.stories.js.flow +1 -1
- package/es/elements/content-explorer/stories/ShareDialog.stories.js.map +1 -1
- package/es/elements/content-picker/ContentPicker.js +2 -2
- package/es/elements/content-picker/ContentPicker.js.flow +2 -2
- package/es/elements/content-picker/ContentPicker.js.map +1 -1
- package/es/elements/content-picker/Footer.scss +6 -0
- package/es/elements/content-preview/ContentPreview.js +20 -10
- package/es/elements/content-preview/ContentPreview.js.flow +88 -64
- package/es/elements/content-preview/ContentPreview.js.map +1 -1
- package/es/elements/content-preview/ContentPreview.scss +13 -28
- package/es/elements/content-preview/preview-header/PreviewHeader.js +8 -2
- package/es/elements/content-preview/preview-header/PreviewHeader.js.flow +6 -0
- package/es/elements/content-preview/preview-header/PreviewHeader.js.map +1 -1
- package/es/elements/content-preview/stories/ContentPreview.stories.js +32 -46
- package/es/elements/content-preview/stories/ContentPreview.stories.js.flow +51 -81
- package/es/elements/content-preview/stories/ContentPreview.stories.js.map +1 -1
- package/es/elements/content-sharing/stories/ContentSharing.stories.js +19 -63
- package/es/elements/content-sharing/stories/ContentSharing.stories.js.flow +18 -84
- package/es/elements/content-sharing/stories/ContentSharing.stories.js.map +1 -1
- package/es/elements/content-sidebar/ActivitySidebar.js +22 -17
- package/es/elements/content-sidebar/ActivitySidebar.js.flow +2 -2
- package/es/elements/content-sidebar/ActivitySidebar.js.map +1 -1
- package/es/elements/content-sidebar/ContentSidebar.scss +9 -9
- package/es/elements/content-sidebar/SidebarContent.scss +6 -8
- package/es/elements/content-sidebar/SidebarNav.scss +22 -20
- package/es/elements/content-sidebar/SidebarNavButton.scss +12 -14
- package/es/elements/content-sidebar/SidebarNavSignButton.scss +6 -8
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActiveState.js +13 -1
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActiveState.js.flow +20 -2
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActiveState.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActivityFeed.js.flow +7 -6
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActivityFeed.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActivityFeed.scss +6 -4
- package/es/elements/content-sidebar/activity-feed/activity-feed/ActivityItem.scss +2 -2
- package/es/elements/content-sidebar/activity-feed/activity-feed/stories/ActivityFeed.stories.js +61 -0
- package/es/elements/content-sidebar/activity-feed/activity-feed/stories/ActivityFeed.stories.js.flow +70 -0
- package/es/elements/content-sidebar/activity-feed/activity-feed/stories/ActivityFeed.stories.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/annotation-thread/AnnotationThreadContent.js.flow +2 -2
- package/es/elements/content-sidebar/activity-feed/annotation-thread/AnnotationThreadContent.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/annotation-thread/useAnnotationThread.js +11 -6
- package/es/elements/content-sidebar/activity-feed/annotation-thread/useAnnotationThread.js.flow +3 -7
- package/es/elements/content-sidebar/activity-feed/annotation-thread/useAnnotationThread.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/annotations/AnnotationActivity.js +5 -1
- package/es/elements/content-sidebar/activity-feed/annotations/AnnotationActivity.js.flow +3 -3
- package/es/elements/content-sidebar/activity-feed/annotations/AnnotationActivity.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/BaseComment.js +50 -142
- package/es/elements/content-sidebar/activity-feed/comment/BaseComment.js.flow +59 -166
- package/es/elements/content-sidebar/activity-feed/comment/BaseComment.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/BaseComment.scss +34 -12
- package/es/elements/content-sidebar/activity-feed/comment/CreateReply.js +6 -5
- package/es/elements/content-sidebar/activity-feed/comment/CreateReply.js.flow +5 -4
- package/es/elements/content-sidebar/activity-feed/comment/CreateReply.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/Replies.scss +4 -2
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.js +48 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.js.flow +72 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.scss +38 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.js +75 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.js.flow +125 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.scss +4 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenuWrapper.js +78 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenuWrapper.js.flow +91 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenuWrapper.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentInfo.stories.js +25 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentInfo.stories.js.flow +25 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentInfo.stories.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentMenu.stories.js +37 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentMenu.stories.js.flow +26 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentMenu.stories.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/common.js +23 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/common.js.flow +28 -0
- package/es/elements/content-sidebar/activity-feed/comment/components/stories/common.js.map +1 -0
- package/es/elements/content-sidebar/activity-feed/comment/messages.js +4 -4
- package/es/elements/content-sidebar/activity-feed/comment/messages.js.flow +5 -5
- package/es/elements/content-sidebar/activity-feed/comment/messages.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/BaseComment.stories.js +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/BaseComment.stories.js.flow +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/BaseComment.stories.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/common.js +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/common.js.flow +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/stories/common.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/comment/types.js.flow +13 -0
- package/es/elements/content-sidebar/activity-feed/comment-form/CommentForm.js +8 -4
- package/es/elements/content-sidebar/activity-feed/comment-form/CommentForm.js.flow +11 -3
- package/es/elements/content-sidebar/activity-feed/comment-form/CommentForm.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.js +2 -0
- package/es/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.js.flow +2 -0
- package/es/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.scss +1 -1
- package/es/elements/content-sidebar/activity-feed/task-new/Task.js +7 -3
- package/es/elements/content-sidebar/activity-feed/task-new/Task.js.flow +7 -2
- package/es/elements/content-sidebar/activity-feed/task-new/Task.js.map +1 -1
- package/es/elements/content-sidebar/activity-feed/task-new/messages.js +8 -0
- package/es/elements/content-sidebar/activity-feed/task-new/messages.js.flow +10 -0
- package/es/elements/content-sidebar/activity-feed/task-new/messages.js.map +1 -1
- package/es/elements/content-sidebar/stories/ContentSidebar.stories.js +18 -27
- package/es/elements/content-sidebar/stories/ContentSidebar.stories.js.flow +19 -28
- package/es/elements/content-sidebar/stories/ContentSidebar.stories.js.map +1 -1
- package/es/elements/content-sidebar/versions/VersionsItem.scss +6 -0
- package/es/elements/content-uploader/ItemName.scss +1 -1
- package/es/elements/content-uploader/ProgressBar.scss +4 -0
- package/es/elements/content-uploader/stories/ContentUploader.stories.js +6 -13
- package/es/elements/content-uploader/stories/ContentUploader.stories.js.flow +7 -11
- package/es/elements/content-uploader/stories/ContentUploader.stories.js.map +1 -1
- package/es/features/collaborator-avatars/CollaboratorList.scss +11 -1
- package/es/features/collapsible-sidebar/CollapsibleSidebar.stories.js +1 -1
- package/es/features/collapsible-sidebar/CollapsibleSidebar.stories.js.flow +1 -1
- package/es/features/collapsible-sidebar/CollapsibleSidebar.stories.js.map +1 -1
- package/es/features/content-answers/Answer.js +18 -0
- package/es/features/content-answers/Answer.js.map +1 -0
- package/es/features/content-answers/Answer.scss +4 -0
- package/es/features/content-answers/ContentAnswers.js +46 -0
- package/es/features/content-answers/ContentAnswers.js.map +1 -0
- package/es/features/content-answers/ContentAnswersGridCard.js +24 -0
- package/es/features/content-answers/ContentAnswersGridCard.js.map +1 -0
- package/es/features/content-answers/ContentAnswersGridCard.scss +26 -0
- package/es/features/content-answers/ContentAnswersModal.js +111 -0
- package/es/features/content-answers/ContentAnswersModal.js.map +1 -0
- package/es/features/content-answers/ContentAnswersModal.scss +56 -0
- package/es/features/content-answers/ContentAnswersModalContent.js +60 -0
- package/es/features/content-answers/ContentAnswersModalContent.js.map +1 -0
- package/es/features/content-answers/ContentAnswersModalContent.scss +12 -0
- package/es/features/content-answers/ContentAnswersModalError.js +23 -0
- package/es/features/content-answers/ContentAnswersModalError.js.map +1 -0
- package/es/features/content-answers/ContentAnswersModalError.scss +28 -0
- package/es/features/content-answers/ContentAnswersModalFooter.js +93 -0
- package/es/features/content-answers/ContentAnswersModalFooter.js.map +1 -0
- package/es/features/content-answers/ContentAnswersModalFooter.scss +42 -0
- package/es/features/content-answers/ContentAnswersModalFooterActions.js +38 -0
- package/es/features/content-answers/ContentAnswersModalFooterActions.js.map +1 -0
- package/es/features/content-answers/ContentAnswersModalFooterActions.scss +17 -0
- package/es/features/content-answers/ContentAnswersOpenButton.js +69 -0
- package/es/features/content-answers/ContentAnswersOpenButton.js.map +1 -0
- package/es/features/content-answers/ContentAnswersOpenButton.scss +54 -0
- package/es/features/content-answers/InlineError.js +29 -0
- package/es/features/content-answers/InlineError.js.map +1 -0
- package/es/features/content-answers/InlineError.scss +39 -0
- package/es/features/content-answers/LoadingElement.js +17 -0
- package/es/features/content-answers/LoadingElement.js.map +1 -0
- package/es/features/content-answers/LoadingElement.scss +4 -0
- package/es/features/content-answers/Question.js +27 -0
- package/es/features/content-answers/Question.js.map +1 -0
- package/es/features/content-answers/Question.scss +16 -0
- package/es/features/content-answers/WelcomeMessage.js +32 -0
- package/es/features/content-answers/WelcomeMessage.js.map +1 -0
- package/es/features/content-answers/WelcomeMessage.scss +25 -0
- package/es/features/content-answers/constants.js +10 -0
- package/es/features/content-answers/constants.js.map +1 -0
- package/es/features/content-answers/index.js +2 -0
- package/es/features/content-answers/index.js.map +1 -0
- package/es/features/content-answers/messages.js +69 -0
- package/es/features/content-answers/messages.js.map +1 -0
- package/es/features/content-explorer/content-explorer/ContentExplorer.js +21 -12
- package/es/features/content-explorer/content-explorer/ContentExplorer.js.flow +19 -15
- package/es/features/content-explorer/content-explorer/ContentExplorer.js.map +1 -1
- package/es/features/content-explorer/content-explorer/ContentExplorer.scss +4 -0
- package/es/features/content-explorer/content-explorer/ContentExplorerBreadcrumbs.js +1 -0
- package/es/features/content-explorer/content-explorer/ContentExplorerBreadcrumbs.js.flow +2 -0
- package/es/features/content-explorer/content-explorer/ContentExplorerBreadcrumbs.js.map +1 -1
- package/es/features/content-explorer/content-explorer-modal/ContentExplorerModal.js.flow +1 -0
- package/es/features/content-explorer/content-explorer-modal/ContentExplorerModal.js.map +1 -1
- package/es/features/content-explorer/content-explorer-modal-container/ContentExplorerModalContainer.js +3 -0
- package/es/features/content-explorer/content-explorer-modal-container/ContentExplorerModalContainer.js.flow +2 -0
- package/es/features/content-explorer/content-explorer-modal-container/ContentExplorerModalContainer.js.map +1 -1
- package/es/features/pagination/Pagination.scss +0 -4
- package/es/features/sandbox-banner/SandboxBanner.stories.js +1 -1
- package/es/features/sandbox-banner/SandboxBanner.stories.js.map +1 -1
- package/es/features/security-cloud-game/stories/SecurityCloudGame.stories.js +1 -1
- package/es/features/security-cloud-game/stories/SecurityCloudGame.stories.js.flow +1 -1
- package/es/features/security-cloud-game/stories/SecurityCloudGame.stories.js.map +1 -1
- package/es/features/shared-link-modal/stories/SharedLink.stories.js +1 -1
- package/es/features/shared-link-modal/stories/SharedLink.stories.js.flow +1 -1
- package/es/features/shared-link-modal/stories/SharedLink.stories.js.map +1 -1
- package/es/features/shared-link-modal/stories/SharedLinkModal.stories.js +1 -1
- package/es/features/shared-link-modal/stories/SharedLinkModal.stories.js.flow +1 -1
- package/es/features/shared-link-modal/stories/SharedLinkModal.stories.js.map +1 -1
- package/es/features/shared-link-settings-modal/SharedLinkSettingsModal.stories.js +1 -1
- package/es/features/shared-link-settings-modal/SharedLinkSettingsModal.stories.js.flow +1 -1
- package/es/features/shared-link-settings-modal/SharedLinkSettingsModal.stories.js.map +1 -1
- package/es/features/targeting/hocs/withTargetedClickThrough.js +13 -3
- package/es/features/targeting/hocs/withTargetedClickThrough.js.flow +10 -1
- package/es/features/targeting/hocs/withTargetedClickThrough.js.map +1 -1
- package/es/features/targeting/types.js.flow +1 -0
- package/es/features/targeting/types.js.map +1 -1
- package/es/features/unified-share-modal/UnifiedShareModal.scss +61 -79
- package/es/features/unified-share-modal/stories/UnifiedShareModal.stories.js +1 -1
- package/es/features/unified-share-modal/stories/UnifiedShareModal.stories.js.flow +1 -1
- package/es/features/unified-share-modal/stories/UnifiedShareModal.stories.js.map +1 -1
- package/es/features/virtualized-table/DraggableVirtualizedTable.stories.js +1 -1
- package/es/features/virtualized-table/DraggableVirtualizedTable.stories.js.flow +1 -1
- package/es/features/virtualized-table/DraggableVirtualizedTable.stories.js.map +1 -1
- package/es/icon/content/ContentSharing32.stories.js +1 -1
- package/es/icon/content/ContentSharing32.stories.js.map +1 -1
- package/es/icon/content/CustomSetup32.stories.js +1 -1
- package/es/icon/content/CustomSetup32.stories.js.map +1 -1
- package/es/icon/content/DeviceTrust32.stories.js +1 -1
- package/es/icon/content/DeviceTrust32.stories.js.map +1 -1
- package/es/icon/content/FileAudio32.stories.js +1 -1
- package/es/icon/content/FileAudio32.stories.js.map +1 -1
- package/es/icon/content/FileBookmark32.stories.js +1 -1
- package/es/icon/content/FileBookmark32.stories.js.map +1 -1
- package/es/icon/content/FileBoxNote32.stories.js +1 -1
- package/es/icon/content/FileBoxNote32.stories.js.map +1 -1
- package/es/icon/content/FileCanvas32.stories.js +1 -1
- package/es/icon/content/FileCanvas32.stories.js.map +1 -1
- package/es/icon/content/FileCode32.stories.js +1 -1
- package/es/icon/content/FileCode32.stories.js.map +1 -1
- package/es/icon/content/FileDefault32.stories.js +1 -1
- package/es/icon/content/FileDefault32.stories.js.map +1 -1
- package/es/icon/content/FileDicom32.stories.js +1 -1
- package/es/icon/content/FileDicom32.stories.js.map +1 -1
- package/es/icon/content/FileDocs32.stories.js +1 -1
- package/es/icon/content/FileDocs32.stories.js.map +1 -1
- package/es/icon/content/FileDwg32.stories.js +1 -1
- package/es/icon/content/FileDwg32.stories.js.map +1 -1
- package/es/icon/content/FileExcel32.stories.js +1 -1
- package/es/icon/content/FileExcel32.stories.js.map +1 -1
- package/es/icon/content/FileIllustrator32.stories.js +1 -1
- package/es/icon/content/FileIllustrator32.stories.js.map +1 -1
- package/es/icon/content/FileImage32.stories.js +1 -1
- package/es/icon/content/FileImage32.stories.js.map +1 -1
- package/es/icon/content/FileIndesign32.stories.js +1 -1
- package/es/icon/content/FileIndesign32.stories.js.map +1 -1
- package/es/icon/content/FileKeynote32.stories.js +1 -1
- package/es/icon/content/FileKeynote32.stories.js.map +1 -1
- package/es/icon/content/FileNumbers32.stories.js +1 -1
- package/es/icon/content/FileNumbers32.stories.js.map +1 -1
- package/es/icon/content/FilePages32.stories.js +1 -1
- package/es/icon/content/FilePages32.stories.js.map +1 -1
- package/es/icon/content/FilePdf32.stories.js +1 -1
- package/es/icon/content/FilePdf32.stories.js.map +1 -1
- package/es/icon/content/FilePhotoshop32.stories.js +1 -1
- package/es/icon/content/FilePhotoshop32.stories.js.map +1 -1
- package/es/icon/content/FilePowerpoint32.stories.js +1 -1
- package/es/icon/content/FilePowerpoint32.stories.js.map +1 -1
- package/es/icon/content/FilePresentation32.stories.js +1 -1
- package/es/icon/content/FilePresentation32.stories.js.map +1 -1
- package/es/icon/content/FileSheets32.stories.js +1 -1
- package/es/icon/content/FileSheets32.stories.js.map +1 -1
- package/es/icon/content/FileSlides32.stories.js +1 -1
- package/es/icon/content/FileSlides32.stories.js.map +1 -1
- package/es/icon/content/FileSpreadsheet32.stories.js +1 -1
- package/es/icon/content/FileSpreadsheet32.stories.js.map +1 -1
- package/es/icon/content/FileText32.stories.js +1 -1
- package/es/icon/content/FileText32.stories.js.map +1 -1
- package/es/icon/content/FileThreeD32.stories.js +1 -1
- package/es/icon/content/FileThreeD32.stories.js.map +1 -1
- package/es/icon/content/FileUpload32.stories.js +1 -1
- package/es/icon/content/FileUpload32.stories.js.map +1 -1
- package/es/icon/content/FileVector32.stories.js +1 -1
- package/es/icon/content/FileVector32.stories.js.map +1 -1
- package/es/icon/content/FileVideo32.stories.js +1 -1
- package/es/icon/content/FileVideo32.stories.js.map +1 -1
- package/es/icon/content/FileWord32.stories.js +1 -1
- package/es/icon/content/FileWord32.stories.js.map +1 -1
- package/es/icon/content/FileXbd32.stories.js +1 -1
- package/es/icon/content/FileXbd32.stories.js.map +1 -1
- package/es/icon/content/FileXdw32.stories.js +1 -1
- package/es/icon/content/FileXdw32.stories.js.map +1 -1
- package/es/icon/content/FileZip32.stories.js +1 -1
- package/es/icon/content/FileZip32.stories.js.map +1 -1
- package/es/icon/content/FolderExternal32.stories.js +1 -1
- package/es/icon/content/FolderExternal32.stories.js.map +1 -1
- package/es/icon/content/FolderPersonal32.stories.js +1 -1
- package/es/icon/content/FolderPersonal32.stories.js.map +1 -1
- package/es/icon/content/FolderShared32.stories.js +1 -1
- package/es/icon/content/FolderShared32.stories.js.map +1 -1
- package/es/icon/content/FolderUpload32.stories.js +1 -1
- package/es/icon/content/FolderUpload32.stories.js.map +1 -1
- package/es/icon/content/Mobile32.stories.js +1 -1
- package/es/icon/content/Mobile32.stories.js.map +1 -1
- package/es/icon/content/Notifications32.stories.js +1 -1
- package/es/icon/content/Notifications32.stories.js.map +1 -1
- package/es/icon/content/PlatformCam32.stories.js +1 -1
- package/es/icon/content/PlatformCam32.stories.js.map +1 -1
- package/es/icon/content/PlatformSandbox32.stories.js +1 -1
- package/es/icon/content/PlatformSandbox32.stories.js.map +1 -1
- package/es/icon/content/RetentionPolicyModifiable32.stories.js +1 -1
- package/es/icon/content/RetentionPolicyModifiable32.stories.js.map +1 -1
- package/es/icon/content/RetentionPolicyNonModifiable32.stories.js +1 -1
- package/es/icon/content/RetentionPolicyNonModifiable32.stories.js.map +1 -1
- package/es/icon/content/Security32.stories.js +1 -1
- package/es/icon/content/Security32.stories.js.map +1 -1
- package/es/icon/content/SignRequest32.stories.js +1 -1
- package/es/icon/content/SignRequest32.stories.js.map +1 -1
- package/es/icon/content/UserSettings32.stories.js +1 -1
- package/es/icon/content/UserSettings32.stories.js.map +1 -1
- package/es/icon/content/Workflow32.stories.js +1 -1
- package/es/icon/content/Workflow32.stories.js.map +1 -1
- package/es/icon/content/WorkflowTemplate32.stories.js +1 -1
- package/es/icon/content/WorkflowTemplate32.stories.js.map +1 -1
- package/es/icon/fill/Activity16.stories.js +1 -1
- package/es/icon/fill/Activity16.stories.js.map +1 -1
- package/es/icon/fill/Activity20.stories.js +1 -1
- package/es/icon/fill/Activity20.stories.js.map +1 -1
- package/es/icon/fill/Alert16.stories.js +1 -1
- package/es/icon/fill/Alert16.stories.js.map +1 -1
- package/es/icon/fill/AlertBadge16.stories.js +1 -1
- package/es/icon/fill/AlertBadge16.stories.js.map +1 -1
- package/es/icon/fill/AnnotationsDrawing16.stories.js +1 -1
- package/es/icon/fill/AnnotationsDrawing16.stories.js.map +1 -1
- package/es/icon/fill/AnnotationsHighlight16.stories.js +1 -1
- package/es/icon/fill/AnnotationsHighlight16.stories.js.map +1 -1
- package/es/icon/fill/AnnotationsRegion16.stories.js +1 -1
- package/es/icon/fill/AnnotationsRegion16.stories.js.map +1 -1
- package/es/icon/fill/Apps16.stories.js +1 -1
- package/es/icon/fill/Apps16.stories.js.map +1 -1
- package/es/icon/fill/Arrow16.stories.js +1 -1
- package/es/icon/fill/Arrow16.stories.js.map +1 -1
- package/es/icon/fill/ArrowArcRight.stories.js +1 -1
- package/es/icon/fill/ArrowArcRight.stories.js.map +1 -1
- package/es/icon/fill/ArrowForward16.stories.js +1 -1
- package/es/icon/fill/ArrowForward16.stories.js.map +1 -1
- package/es/icon/fill/ArrowSort16.stories.js +1 -1
- package/es/icon/fill/ArrowSort16.stories.js.map +1 -1
- package/es/icon/fill/AvatarBadge16.stories.js +1 -1
- package/es/icon/fill/AvatarBadge16.stories.js.map +1 -1
- package/es/icon/fill/BarChart16.stories.js +1 -1
- package/es/icon/fill/BarChart16.stories.js.map +1 -1
- package/es/icon/fill/BoxDev16.stories.js +1 -1
- package/es/icon/fill/BoxDev16.stories.js.map +1 -1
- package/es/icon/fill/BoxNotes16.stories.js +1 -1
- package/es/icon/fill/BoxNotes16.stories.js.map +1 -1
- package/es/icon/fill/Calendar16.stories.js +1 -1
- package/es/icon/fill/Calendar16.stories.js.map +1 -1
- package/es/icon/fill/Caret8.stories.js +1 -1
- package/es/icon/fill/Caret8.stories.js.map +1 -1
- package/es/icon/fill/CaretBadge16.stories.js +1 -1
- package/es/icon/fill/CaretBadge16.stories.js.map +1 -1
- package/es/icon/fill/Checkmark16.stories.js +1 -1
- package/es/icon/fill/Checkmark16.stories.js.map +1 -1
- package/es/icon/fill/CheckmarkBadge16.stories.js +1 -1
- package/es/icon/fill/CheckmarkBadge16.stories.js.map +1 -1
- package/es/icon/fill/CircleBackButton24.stories.js +1 -1
- package/es/icon/fill/CircleBackButton24.stories.js.map +1 -1
- package/es/icon/fill/CircleCloseButton24.stories.js +1 -1
- package/es/icon/fill/CircleCloseButton24.stories.js.map +1 -1
- package/es/icon/fill/Classify16.stories.js +1 -1
- package/es/icon/fill/Classify16.stories.js.map +1 -1
- package/es/icon/fill/ClearBadge16.stories.js +1 -1
- package/es/icon/fill/ClearBadge16.stories.js.map +1 -1
- package/es/icon/fill/ClockBadge16.stories.js +1 -1
- package/es/icon/fill/ClockBadge16.stories.js.map +1 -1
- package/es/icon/fill/CloudUpload16.stories.js +1 -1
- package/es/icon/fill/CloudUpload16.stories.js.map +1 -1
- package/es/icon/fill/Code16.stories.js +1 -1
- package/es/icon/fill/Code16.stories.js.map +1 -1
- package/es/icon/fill/Collection16.stories.js +1 -1
- package/es/icon/fill/Collection16.stories.js.map +1 -1
- package/es/icon/fill/CollectionBolt16.stories.js +1 -1
- package/es/icon/fill/CollectionBolt16.stories.js.map +1 -1
- package/es/icon/fill/CollectionPlus16.stories.js +1 -1
- package/es/icon/fill/CollectionPlus16.stories.js.map +1 -1
- package/es/icon/fill/CollectionStar16.stories.js +1 -1
- package/es/icon/fill/CollectionStar16.stories.js.map +1 -1
- package/es/icon/fill/CreditCard16.stories.js +1 -1
- package/es/icon/fill/CreditCard16.stories.js.map +1 -1
- package/es/icon/fill/Download16.stories.js +1 -1
- package/es/icon/fill/Download16.stories.js.map +1 -1
- package/es/icon/fill/EmailNotification16.stories.js +1 -1
- package/es/icon/fill/EmailNotification16.stories.js.map +1 -1
- package/es/icon/fill/ExportArrow16.stories.js +1 -1
- package/es/icon/fill/ExportArrow16.stories.js.map +1 -1
- package/es/icon/fill/Feed16.stories.js +1 -1
- package/es/icon/fill/Feed16.stories.js.map +1 -1
- package/es/icon/fill/FileAudio16.stories.js +1 -1
- package/es/icon/fill/FileAudio16.stories.js.map +1 -1
- package/es/icon/fill/FileBookmark16.stories.js +1 -1
- package/es/icon/fill/FileBookmark16.stories.js.map +1 -1
- package/es/icon/fill/FileBoxNote16.stories.js +1 -1
- package/es/icon/fill/FileBoxNote16.stories.js.map +1 -1
- package/es/icon/fill/FileCanvas16.stories.js +1 -1
- package/es/icon/fill/FileCanvas16.stories.js.map +1 -1
- package/es/icon/fill/FileCode16.stories.js +1 -1
- package/es/icon/fill/FileCode16.stories.js.map +1 -1
- package/es/icon/fill/FileCopy16.stories.js +1 -1
- package/es/icon/fill/FileCopy16.stories.js.map +1 -1
- package/es/icon/fill/FileDefault16.stories.js +1 -1
- package/es/icon/fill/FileDefault16.stories.js.map +1 -1
- package/es/icon/fill/FileDicom16.stories.js +1 -1
- package/es/icon/fill/FileDicom16.stories.js.map +1 -1
- package/es/icon/fill/FileDocs16.stories.js +1 -1
- package/es/icon/fill/FileDocs16.stories.js.map +1 -1
- package/es/icon/fill/FileDwg16.stories.js +1 -1
- package/es/icon/fill/FileDwg16.stories.js.map +1 -1
- package/es/icon/fill/FileExcel16.stories.js +1 -1
- package/es/icon/fill/FileExcel16.stories.js.map +1 -1
- package/es/icon/fill/FileIllustrator16.stories.js +1 -1
- package/es/icon/fill/FileIllustrator16.stories.js.map +1 -1
- package/es/icon/fill/FileImage16.stories.js +1 -1
- package/es/icon/fill/FileImage16.stories.js.map +1 -1
- package/es/icon/fill/FileIndesign16.stories.js +1 -1
- package/es/icon/fill/FileIndesign16.stories.js.map +1 -1
- package/es/icon/fill/FileKeynote16.stories.js +1 -1
- package/es/icon/fill/FileKeynote16.stories.js.map +1 -1
- package/es/icon/fill/FileNumbers16.stories.js +1 -1
- package/es/icon/fill/FileNumbers16.stories.js.map +1 -1
- package/es/icon/fill/FilePages16.stories.js +1 -1
- package/es/icon/fill/FilePages16.stories.js.map +1 -1
- package/es/icon/fill/FilePdf16.stories.js +1 -1
- package/es/icon/fill/FilePdf16.stories.js.map +1 -1
- package/es/icon/fill/FilePhotoshop16.stories.js +1 -1
- package/es/icon/fill/FilePhotoshop16.stories.js.map +1 -1
- package/es/icon/fill/FilePowerpoint16.stories.js +1 -1
- package/es/icon/fill/FilePowerpoint16.stories.js.map +1 -1
- package/es/icon/fill/FilePresentation16.stories.js +1 -1
- package/es/icon/fill/FilePresentation16.stories.js.map +1 -1
- package/es/icon/fill/FileSheets16.stories.js +1 -1
- package/es/icon/fill/FileSheets16.stories.js.map +1 -1
- package/es/icon/fill/FileSlides16.stories.js +1 -1
- package/es/icon/fill/FileSlides16.stories.js.map +1 -1
- package/es/icon/fill/FileSpreadsheet16.stories.js +1 -1
- package/es/icon/fill/FileSpreadsheet16.stories.js.map +1 -1
- package/es/icon/fill/FileText16.stories.js +1 -1
- package/es/icon/fill/FileText16.stories.js.map +1 -1
- package/es/icon/fill/FileThreeD16.stories.js +1 -1
- package/es/icon/fill/FileThreeD16.stories.js.map +1 -1
- package/es/icon/fill/FileVector16.stories.js +1 -1
- package/es/icon/fill/FileVector16.stories.js.map +1 -1
- package/es/icon/fill/FileVideo16.stories.js +1 -1
- package/es/icon/fill/FileVideo16.stories.js.map +1 -1
- package/es/icon/fill/FileWord16.stories.js +1 -1
- package/es/icon/fill/FileWord16.stories.js.map +1 -1
- package/es/icon/fill/FileZip16.stories.js +1 -1
- package/es/icon/fill/FileZip16.stories.js.map +1 -1
- package/es/icon/fill/Filter16.stories.js +1 -1
- package/es/icon/fill/Filter16.stories.js.map +1 -1
- package/es/icon/fill/Folder16.stories.js +1 -1
- package/es/icon/fill/Folder16.stories.js.map +1 -1
- package/es/icon/fill/FolderExternal16.stories.js +1 -1
- package/es/icon/fill/FolderExternal16.stories.js.map +1 -1
- package/es/icon/fill/FolderPersonal16.stories.js +1 -1
- package/es/icon/fill/FolderPersonal16.stories.js.map +1 -1
- package/es/icon/fill/FolderShared16.stories.js +1 -1
- package/es/icon/fill/FolderShared16.stories.js.map +1 -1
- package/es/icon/fill/Gear16.stories.js +1 -1
- package/es/icon/fill/Gear16.stories.js.map +1 -1
- package/es/icon/fill/GlobeBadge16.stories.js +1 -1
- package/es/icon/fill/GlobeBadge16.stories.js.map +1 -1
- package/es/icon/fill/Hamburger20.stories.js +1 -1
- package/es/icon/fill/Hamburger20.stories.js.map +1 -1
- package/es/icon/fill/Help20.stories.js +1 -1
- package/es/icon/fill/Help20.stories.js.map +1 -1
- package/es/icon/fill/InProgress16.stories.js +1 -1
- package/es/icon/fill/InProgress16.stories.js.map +1 -1
- package/es/icon/fill/Info16.stories.js +1 -1
- package/es/icon/fill/Info16.stories.js.map +1 -1
- package/es/icon/fill/InfoBadge16.stories.js +1 -1
- package/es/icon/fill/InfoBadge16.stories.js.map +1 -1
- package/es/icon/fill/LightningBolt16.stories.js +1 -1
- package/es/icon/fill/LightningBolt16.stories.js.map +1 -1
- package/es/icon/fill/Lock16.stories.js +1 -1
- package/es/icon/fill/Lock16.stories.js.map +1 -1
- package/es/icon/fill/Megaphone20.stories.js +1 -1
- package/es/icon/fill/Megaphone20.stories.js.map +1 -1
- package/es/icon/fill/Minus16.stories.js +1 -1
- package/es/icon/fill/Minus16.stories.js.map +1 -1
- package/es/icon/fill/Move16.stories.js +1 -1
- package/es/icon/fill/Move16.stories.js.map +1 -1
- package/es/icon/fill/MoveCopy16.stories.js +1 -1
- package/es/icon/fill/MoveCopy16.stories.js.map +1 -1
- package/es/icon/fill/Overflow16.stories.js +1 -1
- package/es/icon/fill/Overflow16.stories.js.map +1 -1
- package/es/icon/fill/PaperAirplane16.stories.js +1 -1
- package/es/icon/fill/PaperAirplane16.stories.js.map +1 -1
- package/es/icon/fill/Pencil16.stories.js +1 -1
- package/es/icon/fill/Pencil16.stories.js.map +1 -1
- package/es/icon/fill/Picture16.stories.js +1 -1
- package/es/icon/fill/Picture16.stories.js.map +1 -1
- package/es/icon/fill/Plus16.stories.js +1 -1
- package/es/icon/fill/Plus16.stories.js.map +1 -1
- package/es/icon/fill/PlusBadge16.stories.js +1 -1
- package/es/icon/fill/PlusBadge16.stories.js.map +1 -1
- package/es/icon/fill/PointerChevronDown24.stories.js +1 -1
- package/es/icon/fill/PointerChevronDown24.stories.js.map +1 -1
- package/es/icon/fill/Printer16.stories.js +1 -1
- package/es/icon/fill/Printer16.stories.js.map +1 -1
- package/es/icon/fill/Relay16.stories.js +1 -1
- package/es/icon/fill/Relay16.stories.js.map +1 -1
- package/es/icon/fill/RelayClassic16.stories.js +1 -1
- package/es/icon/fill/RelayClassic16.stories.js.map +1 -1
- package/es/icon/fill/Ribbon16.stories.js +1 -1
- package/es/icon/fill/Ribbon16.stories.js.map +1 -1
- package/es/icon/fill/Scribble16.stories.js +1 -1
- package/es/icon/fill/Scribble16.stories.js.map +1 -1
- package/es/icon/fill/Search16.stories.js +1 -1
- package/es/icon/fill/Search16.stories.js.map +1 -1
- package/es/icon/fill/Sign16.stories.js +1 -1
- package/es/icon/fill/Sign16.stories.js.map +1 -1
- package/es/icon/fill/SignFieldCheckBox16.stories.js +1 -1
- package/es/icon/fill/SignFieldCheckBox16.stories.js.map +1 -1
- package/es/icon/fill/SignFieldSignature16.stories.js +1 -1
- package/es/icon/fill/SignFieldSignature16.stories.js.map +1 -1
- package/es/icon/fill/SignFieldTextInput16.stories.js +1 -1
- package/es/icon/fill/SignFieldTextInput16.stories.js.map +1 -1
- package/es/icon/fill/SignMe32.stories.js +1 -1
- package/es/icon/fill/SignMe32.stories.js.map +1 -1
- package/es/icon/fill/SignMeOthers32.stories.js +1 -1
- package/es/icon/fill/SignMeOthers32.stories.js.map +1 -1
- package/es/icon/fill/SignOthers32.stories.js +1 -1
- package/es/icon/fill/SignOthers32.stories.js.map +1 -1
- package/es/icon/fill/Skills16.stories.js +1 -1
- package/es/icon/fill/Skills16.stories.js.map +1 -1
- package/es/icon/fill/Tag16.stories.js +1 -1
- package/es/icon/fill/Tag16.stories.js.map +1 -1
- package/es/icon/fill/Task16.stories.js +1 -1
- package/es/icon/fill/Task16.stories.js.map +1 -1
- package/es/icon/fill/Trash16.stories.js +1 -1
- package/es/icon/fill/Trash16.stories.js.map +1 -1
- package/es/icon/fill/TwoPeople16.stories.js +1 -1
- package/es/icon/fill/TwoPeople16.stories.js.map +1 -1
- package/es/icon/fill/Upload16.stories.js +1 -1
- package/es/icon/fill/Upload16.stories.js.map +1 -1
- package/es/icon/fill/UserSettings16.stories.js +1 -1
- package/es/icon/fill/UserSettings16.stories.js.map +1 -1
- package/es/icon/fill/Workflow16.stories.js +1 -1
- package/es/icon/fill/Workflow16.stories.js.map +1 -1
- package/es/icon/fill/X16.stories.js +1 -1
- package/es/icon/fill/X16.stories.js.map +1 -1
- package/es/icon/line/AlarmClock16.stories.js +1 -1
- package/es/icon/line/AlarmClock16.stories.js.map +1 -1
- package/es/icon/line/AlertBubble16.stories.js +1 -1
- package/es/icon/line/AlertBubble16.stories.js.map +1 -1
- package/es/icon/line/Apps16.stories.js +1 -1
- package/es/icon/line/Apps16.stories.js.map +1 -1
- package/es/icon/line/ArrowBoxRight16.stories.js +1 -1
- package/es/icon/line/ArrowBoxRight16.stories.js.map +1 -1
- package/es/icon/line/Avatar16.stories.js +1 -1
- package/es/icon/line/Avatar16.stories.js.map +1 -1
- package/es/icon/line/AvatarBadge16.stories.js +1 -1
- package/es/icon/line/AvatarBadge16.stories.js.map +1 -1
- package/es/icon/line/AvatarPlusBadge16.stories.js +1 -1
- package/es/icon/line/AvatarPlusBadge16.stories.js.map +1 -1
- package/es/icon/line/AvatarXBadge16.stories.js +1 -1
- package/es/icon/line/AvatarXBadge16.stories.js.map +1 -1
- package/es/icon/line/BoxAi.stories.js +1 -1
- package/es/icon/line/BoxAi.stories.js.map +1 -1
- package/es/icon/line/BoxDev16.stories.js +1 -1
- package/es/icon/line/BoxDev16.stories.js.map +1 -1
- package/es/icon/line/Bug16.stories.js +1 -1
- package/es/icon/line/Bug16.stories.js.map +1 -1
- package/es/icon/line/Checkmark16.stories.js +1 -1
- package/es/icon/line/Checkmark16.stories.js.map +1 -1
- package/es/icon/line/CheckmarkBadge16.stories.js +1 -1
- package/es/icon/line/CheckmarkBadge16.stories.js.map +1 -1
- package/es/icon/line/CircleCheck16.stories.js +1 -1
- package/es/icon/line/CircleCheck16.stories.js.map +1 -1
- package/es/icon/line/CircleX16.stories.js +1 -1
- package/es/icon/line/CircleX16.stories.js.map +1 -1
- package/es/icon/line/ClassificationBadge16.stories.js +1 -1
- package/es/icon/line/ClassificationBadge16.stories.js.map +1 -1
- package/es/icon/line/ClockArrow16.stories.js +1 -1
- package/es/icon/line/ClockArrow16.stories.js.map +1 -1
- package/es/icon/line/ClockBadge16.stories.js +1 -1
- package/es/icon/line/ClockBadge16.stories.js.map +1 -1
- package/es/icon/line/CloudWithArrow16.stories.js +1 -1
- package/es/icon/line/CloudWithArrow16.stories.js.map +1 -1
- package/es/icon/line/CoAuthoringBadge16.stories.js +1 -1
- package/es/icon/line/CoAuthoringBadge16.stories.js.map +1 -1
- package/es/icon/line/CoEdit16.stories.js +1 -1
- package/es/icon/line/CoEdit16.stories.js.map +1 -1
- package/es/icon/line/Collaborations16.stories.js +1 -1
- package/es/icon/line/Collaborations16.stories.js.map +1 -1
- package/es/icon/line/Collection16.stories.js +1 -1
- package/es/icon/line/Collection16.stories.js.map +1 -1
- package/es/icon/line/CollectionBolt16.stories.js +1 -1
- package/es/icon/line/CollectionBolt16.stories.js.map +1 -1
- package/es/icon/line/CollectionPlus16.stories.js +1 -1
- package/es/icon/line/CollectionPlus16.stories.js.map +1 -1
- package/es/icon/line/CollectionStar16.stories.js +1 -1
- package/es/icon/line/CollectionStar16.stories.js.map +1 -1
- package/es/icon/line/CommentBubble16.stories.js +1 -1
- package/es/icon/line/CommentBubble16.stories.js.map +1 -1
- package/es/icon/line/CrosshairRegion32.stories.js +1 -1
- package/es/icon/line/CrosshairRegion32.stories.js.map +1 -1
- package/es/icon/line/DocInfo16.stories.js +1 -1
- package/es/icon/line/DocInfo16.stories.js.map +1 -1
- package/es/icon/line/Download16.stories.js +1 -1
- package/es/icon/line/Download16.stories.js.map +1 -1
- package/es/icon/line/Email16.stories.js +1 -1
- package/es/icon/line/Email16.stories.js.map +1 -1
- package/es/icon/line/EmailAddress16.stories.js +1 -1
- package/es/icon/line/EmailAddress16.stories.js.map +1 -1
- package/es/icon/line/EnvelopeBadge16.stories.js +1 -1
- package/es/icon/line/EnvelopeBadge16.stories.js.map +1 -1
- package/es/icon/line/ExclamationMarkBadge16.stories.js +1 -1
- package/es/icon/line/ExclamationMarkBadge16.stories.js.map +1 -1
- package/es/icon/line/ExportArrow16.stories.js +1 -1
- package/es/icon/line/ExportArrow16.stories.js.map +1 -1
- package/es/icon/line/FileDescription16.stories.js +1 -1
- package/es/icon/line/FileDescription16.stories.js.map +1 -1
- package/es/icon/line/Folder16.stories.js +1 -1
- package/es/icon/line/Folder16.stories.js.map +1 -1
- package/es/icon/line/Gear16.stories.js +1 -1
- package/es/icon/line/Gear16.stories.js.map +1 -1
- package/es/icon/line/GenericCopy16.stories.js +1 -1
- package/es/icon/line/GenericCopy16.stories.js.map +1 -1
- package/es/icon/line/GlobeBadge16.stories.js +1 -1
- package/es/icon/line/GlobeBadge16.stories.js.map +1 -1
- package/es/icon/line/Help16.stories.js +1 -1
- package/es/icon/line/Help16.stories.js.map +1 -1
- package/es/icon/line/Hidden16.stories.js +1 -1
- package/es/icon/line/Hidden16.stories.js.map +1 -1
- package/es/icon/line/History16.stories.js +1 -1
- package/es/icon/line/History16.stories.js.map +1 -1
- package/es/icon/line/InfoBadge16.stories.js +1 -1
- package/es/icon/line/InfoBadge16.stories.js.map +1 -1
- package/es/icon/line/Key16.stories.js +1 -1
- package/es/icon/line/Key16.stories.js.map +1 -1
- package/es/icon/line/Link16.stories.js +1 -1
- package/es/icon/line/Link16.stories.js.map +1 -1
- package/es/icon/line/LinkBadge16.stories.js +1 -1
- package/es/icon/line/LinkBadge16.stories.js.map +1 -1
- package/es/icon/line/List16.stories.js +1 -1
- package/es/icon/line/List16.stories.js.map +1 -1
- package/es/icon/line/Lock16.stories.js +1 -1
- package/es/icon/line/Lock16.stories.js.map +1 -1
- package/es/icon/line/LockBadge16.stories.js +1 -1
- package/es/icon/line/LockBadge16.stories.js.map +1 -1
- package/es/icon/line/MetadataBadge16.stories.js +1 -1
- package/es/icon/line/MetadataBadge16.stories.js.map +1 -1
- package/es/icon/line/MoveCopy16.stories.js +1 -1
- package/es/icon/line/MoveCopy16.stories.js.map +1 -1
- package/es/icon/line/Pencil16.stories.js +1 -1
- package/es/icon/line/Pencil16.stories.js.map +1 -1
- package/es/icon/line/PencilBadge16.stories.js +1 -1
- package/es/icon/line/PencilBadge16.stories.js.map +1 -1
- package/es/icon/line/Plane16.stories.js +1 -1
- package/es/icon/line/Plane16.stories.js.map +1 -1
- package/es/icon/line/Plus16.stories.js +1 -1
- package/es/icon/line/Plus16.stories.js.map +1 -1
- package/es/icon/line/Power16.stories.js +1 -1
- package/es/icon/line/Power16.stories.js.map +1 -1
- package/es/icon/line/Question16.stories.js +1 -1
- package/es/icon/line/Question16.stories.js.map +1 -1
- package/es/icon/line/Redo16.stories.js +1 -1
- package/es/icon/line/Redo16.stories.js.map +1 -1
- package/es/icon/line/Relay16.stories.js +1 -1
- package/es/icon/line/Relay16.stories.js.map +1 -1
- package/es/icon/line/Report16.stories.js +1 -1
- package/es/icon/line/Report16.stories.js.map +1 -1
- package/es/icon/line/Retry16.stories.js +1 -1
- package/es/icon/line/Retry16.stories.js.map +1 -1
- package/es/icon/line/Rocket16.stories.js +1 -1
- package/es/icon/line/Rocket16.stories.js.map +1 -1
- package/es/icon/line/RotatingArrows16.stories.js +1 -1
- package/es/icon/line/RotatingArrows16.stories.js.map +1 -1
- package/es/icon/line/Sharrow16.stories.js +1 -1
- package/es/icon/line/Sharrow16.stories.js.map +1 -1
- package/es/icon/line/Shield16.stories.js +1 -1
- package/es/icon/line/Shield16.stories.js.map +1 -1
- package/es/icon/line/Sign16.stories.js +1 -1
- package/es/icon/line/Sign16.stories.js.map +1 -1
- package/es/icon/line/SignTinycon16.stories.js +1 -1
- package/es/icon/line/SignTinycon16.stories.js.map +1 -1
- package/es/icon/line/Star16.stories.js +1 -1
- package/es/icon/line/Star16.stories.js.map +1 -1
- package/es/icon/line/SyncArrows16.stories.js +1 -1
- package/es/icon/line/SyncArrows16.stories.js.map +1 -1
- package/es/icon/line/Template16.stories.js +1 -1
- package/es/icon/line/Template16.stories.js.map +1 -1
- package/es/icon/line/TextLeft16.stories.js +1 -1
- package/es/icon/line/TextLeft16.stories.js.map +1 -1
- package/es/icon/line/Tool16.stories.js +1 -1
- package/es/icon/line/Tool16.stories.js.map +1 -1
- package/es/icon/line/Trash16.stories.js +1 -1
- package/es/icon/line/Trash16.stories.js.map +1 -1
- package/es/icon/line/TriangleAlert16.stories.js +1 -1
- package/es/icon/line/TriangleAlert16.stories.js.map +1 -1
- package/es/icon/line/Undo16.stories.js +1 -1
- package/es/icon/line/Undo16.stories.js.map +1 -1
- package/es/icon/line/Unlock16.stories.js +1 -1
- package/es/icon/line/Unlock16.stories.js.map +1 -1
- package/es/icon/line/Upload16.stories.js +1 -1
- package/es/icon/line/Upload16.stories.js.map +1 -1
- package/es/icon/line/Video16.stories.js +1 -1
- package/es/icon/line/Video16.stories.js.map +1 -1
- package/es/icon/line/View16.stories.js +1 -1
- package/es/icon/line/View16.stories.js.map +1 -1
- package/es/icon/line/XBadge16.stories.js +1 -1
- package/es/icon/line/XBadge16.stories.js.map +1 -1
- package/es/icon/logo/AccountBilling32.stories.js +1 -1
- package/es/icon/logo/AccountBilling32.stories.js.map +1 -1
- package/es/icon/logo/AdminFaq32.stories.js +1 -1
- package/es/icon/logo/AdminFaq32.stories.js.map +1 -1
- package/es/icon/logo/AdminReferences32.stories.js +1 -1
- package/es/icon/logo/AdminReferences32.stories.js.map +1 -1
- package/es/icon/logo/AdobeAcrobat32.stories.js +1 -1
- package/es/icon/logo/AdobeAcrobat32.stories.js.map +1 -1
- package/es/icon/logo/Apps32.stories.js +1 -1
- package/es/icon/logo/Apps32.stories.js.map +1 -1
- package/es/icon/logo/BoxAiLogo.stories.js +1 -1
- package/es/icon/logo/BoxAiLogo.stories.js.map +1 -1
- package/es/icon/logo/BoxLogo.stories.js +1 -1
- package/es/icon/logo/BoxLogo.stories.js.map +1 -1
- package/es/icon/logo/BoxSign28.stories.js +1 -1
- package/es/icon/logo/BoxSign28.stories.js.map +1 -1
- package/es/icon/logo/BoxSign32.stories.js +1 -1
- package/es/icon/logo/BoxSign32.stories.js.map +1 -1
- package/es/icon/logo/ContentSharing32.stories.js +1 -1
- package/es/icon/logo/ContentSharing32.stories.js.map +1 -1
- package/es/icon/logo/CustomSetup32.stories.js +1 -1
- package/es/icon/logo/CustomSetup32.stories.js.map +1 -1
- package/es/icon/logo/DeviceTrust32.stories.js +1 -1
- package/es/icon/logo/DeviceTrust32.stories.js.map +1 -1
- package/es/icon/logo/HelpArticle32.stories.js +1 -1
- package/es/icon/logo/HelpArticle32.stories.js.map +1 -1
- package/es/icon/logo/HowToGuides32.stories.js +1 -1
- package/es/icon/logo/HowToGuides32.stories.js.map +1 -1
- package/es/icon/logo/IconBoxApp512.stories.js +1 -1
- package/es/icon/logo/IconBoxApp512.stories.js.map +1 -1
- package/es/icon/logo/KeynoteForMac32.stories.js +1 -1
- package/es/icon/logo/KeynoteForMac32.stories.js.map +1 -1
- package/es/icon/logo/ManageContent32.stories.js +1 -1
- package/es/icon/logo/ManageContent32.stories.js.map +1 -1
- package/es/icon/logo/ManageUsers32.stories.js +1 -1
- package/es/icon/logo/ManageUsers32.stories.js.map +1 -1
- package/es/icon/logo/Mobile32.stories.js +1 -1
- package/es/icon/logo/Mobile32.stories.js.map +1 -1
- package/es/icon/logo/Notifications32.stories.js +1 -1
- package/es/icon/logo/Notifications32.stories.js.map +1 -1
- package/es/icon/logo/NumbersForMac32.stories.js +1 -1
- package/es/icon/logo/NumbersForMac32.stories.js.map +1 -1
- package/es/icon/logo/PagesForMac32.stories.js +1 -1
- package/es/icon/logo/PagesForMac32.stories.js.map +1 -1
- package/es/icon/logo/Reporting32.stories.js +1 -1
- package/es/icon/logo/Reporting32.stories.js.map +1 -1
- package/es/icon/logo/Security32.stories.js +1 -1
- package/es/icon/logo/Security32.stories.js.map +1 -1
- package/es/icon/logo/TroubleShootingTools32.stories.js +1 -1
- package/es/icon/logo/TroubleShootingTools32.stories.js.map +1 -1
- package/es/icon/logo/UserSettings32.stories.js +1 -1
- package/es/icon/logo/UserSettings32.stories.js.map +1 -1
- package/es/icons/collections/IconCollections.stories.js +1 -1
- package/es/icons/collections/IconCollections.stories.js.map +1 -1
- package/es/icons/collections/IconCollectionsAdd.stories.js +1 -1
- package/es/icons/collections/IconCollectionsAdd.stories.js.map +1 -1
- package/es/icons/collections/IconCollectionsBolt.stories.js +1 -1
- package/es/icons/collections/IconCollectionsBolt.stories.js.map +1 -1
- package/es/icons/collections/IconCollectionsFilled.stories.js +1 -1
- package/es/icons/collections/IconCollectionsFilled.stories.js.map +1 -1
- package/es/icons/collections/IconCollectionsStar.stories.js +1 -1
- package/es/icons/collections/IconCollectionsStar.stories.js.map +1 -1
- package/es/icons/collections/IconCollectionsStarFilled.stories.js +1 -1
- package/es/icons/collections/IconCollectionsStarFilled.stories.js.map +1 -1
- package/es/icons/collections/collections.stories.js +1 -1
- package/es/icons/collections/collections.stories.js.map +1 -1
- package/es/icons/icons.stories.js +1 -1
- package/es/icons/icons.stories.js.map +1 -1
- package/es/icons/two-toned/IconAnnotation.js +1 -1
- package/es/icons/two-toned/IconAnnotation.js.map +1 -1
- package/es/illustration/AllNewBox140.stories.js +1 -1
- package/es/illustration/AllNewBox140.stories.js.map +1 -1
- package/es/illustration/AppSupport140.stories.js +1 -1
- package/es/illustration/AppSupport140.stories.js.map +1 -1
- package/es/illustration/Bell140.stories.js +1 -1
- package/es/illustration/Bell140.stories.js.map +1 -1
- package/es/illustration/BoxDrive140.stories.js +1 -1
- package/es/illustration/BoxDrive140.stories.js.map +1 -1
- package/es/illustration/BoxMobile140.stories.js +1 -1
- package/es/illustration/BoxMobile140.stories.js.map +1 -1
- package/es/illustration/BudgetApproval56.stories.js +1 -1
- package/es/illustration/BudgetApproval56.stories.js.map +1 -1
- package/es/illustration/Certificate56.stories.js +1 -1
- package/es/illustration/Certificate56.stories.js.map +1 -1
- package/es/illustration/CertificateSigning56.stories.js +1 -1
- package/es/illustration/CertificateSigning56.stories.js.map +1 -1
- package/es/illustration/ChangeOrder56.stories.js +1 -1
- package/es/illustration/ChangeOrder56.stories.js.map +1 -1
- package/es/illustration/Clock140.stories.js +1 -1
- package/es/illustration/Clock140.stories.js.map +1 -1
- package/es/illustration/CollectionStar140.stories.js +1 -1
- package/es/illustration/CollectionStar140.stories.js.map +1 -1
- package/es/illustration/ContractorId56.stories.js +1 -1
- package/es/illustration/ContractorId56.stories.js.map +1 -1
- package/es/illustration/CreativeApproval56.stories.js +1 -1
- package/es/illustration/CreativeApproval56.stories.js.map +1 -1
- package/es/illustration/CreativeAssets56.stories.js +1 -1
- package/es/illustration/CreativeAssets56.stories.js.map +1 -1
- package/es/illustration/CustomApp56.stories.js +1 -1
- package/es/illustration/CustomApp56.stories.js.map +1 -1
- package/es/illustration/CustomSkill56.stories.js +1 -1
- package/es/illustration/CustomSkill56.stories.js.map +1 -1
- package/es/illustration/CustomTemplate56.stories.js +1 -1
- package/es/illustration/CustomTemplate56.stories.js.map +1 -1
- package/es/illustration/CustomerSupport140.stories.js +1 -1
- package/es/illustration/CustomerSupport140.stories.js.map +1 -1
- package/es/illustration/DiscoDanceParty140.stories.js +1 -1
- package/es/illustration/DiscoDanceParty140.stories.js.map +1 -1
- package/es/illustration/Discount140.stories.js +1 -1
- package/es/illustration/Discount140.stories.js.map +1 -1
- package/es/illustration/EmailVerification140.stories.js +1 -1
- package/es/illustration/EmailVerification140.stories.js.map +1 -1
- package/es/illustration/EmployeeId56.stories.js +1 -1
- package/es/illustration/EmployeeId56.stories.js.map +1 -1
- package/es/illustration/EmployeeReview56.stories.js +1 -1
- package/es/illustration/EmployeeReview56.stories.js.map +1 -1
- package/es/illustration/EmptyStateDetails.stories.js +1 -1
- package/es/illustration/EmptyStateDetails.stories.js.map +1 -1
- package/es/illustration/EmptyStateFolder140.stories.js +1 -1
- package/es/illustration/EmptyStateFolder140.stories.js.map +1 -1
- package/es/illustration/EmptyStatePreviewActivity140.stories.js +1 -1
- package/es/illustration/EmptyStatePreviewActivity140.stories.js.map +1 -1
- package/es/illustration/Envelope140.stories.js +1 -1
- package/es/illustration/Envelope140.stories.js.map +1 -1
- package/es/illustration/ErrorState404140.stories.js +1 -1
- package/es/illustration/ErrorState404140.stories.js.map +1 -1
- package/es/illustration/Files.stories.js +1 -1
- package/es/illustration/Files.stories.js.map +1 -1
- package/es/illustration/Files140.stories.js +1 -1
- package/es/illustration/Files140.stories.js.map +1 -1
- package/es/illustration/FinanceContract56.stories.js +1 -1
- package/es/illustration/FinanceContract56.stories.js.map +1 -1
- package/es/illustration/FolderArrow140.stories.js +1 -1
- package/es/illustration/FolderArrow140.stories.js.map +1 -1
- package/es/illustration/FolderFloat140.stories.js +1 -1
- package/es/illustration/FolderFloat140.stories.js.map +1 -1
- package/es/illustration/FolderPlane140.stories.js +1 -1
- package/es/illustration/FolderPlane140.stories.js.map +1 -1
- package/es/illustration/FolderStar140.stories.js +1 -1
- package/es/illustration/FolderStar140.stories.js.map +1 -1
- package/es/illustration/Gavel56.stories.js +1 -1
- package/es/illustration/Gavel56.stories.js.map +1 -1
- package/es/illustration/Handshake56.stories.js +1 -1
- package/es/illustration/Handshake56.stories.js.map +1 -1
- package/es/illustration/HandshakeAgreement56.stories.js +1 -1
- package/es/illustration/HandshakeAgreement56.stories.js.map +1 -1
- package/es/illustration/HatWand140.stories.js +1 -1
- package/es/illustration/HatWand140.stories.js.map +1 -1
- package/es/illustration/Keynote56.stories.js +1 -1
- package/es/illustration/Keynote56.stories.js.map +1 -1
- package/es/illustration/LegalContract56.stories.js +1 -1
- package/es/illustration/LegalContract56.stories.js.map +1 -1
- package/es/illustration/LegalFolder56.stories.js +1 -1
- package/es/illustration/LegalFolder56.stories.js.map +1 -1
- package/es/illustration/LimitedApp56.stories.js +1 -1
- package/es/illustration/LimitedApp56.stories.js.map +1 -1
- package/es/illustration/MarketingPlan56.stories.js +1 -1
- package/es/illustration/MarketingPlan56.stories.js.map +1 -1
- package/es/illustration/Megaphone140.stories.js +1 -1
- package/es/illustration/Megaphone140.stories.js.map +1 -1
- package/es/illustration/MetricsReview56.stories.js +1 -1
- package/es/illustration/MetricsReview56.stories.js.map +1 -1
- package/es/illustration/Microphone140.stories.js +1 -1
- package/es/illustration/Microphone140.stories.js.map +1 -1
- package/es/illustration/Missing140.stories.js +1 -1
- package/es/illustration/Missing140.stories.js.map +1 -1
- package/es/illustration/MoneyStack56.stories.js +1 -1
- package/es/illustration/MoneyStack56.stories.js.map +1 -1
- package/es/illustration/MonthlyReport56.stories.js +1 -1
- package/es/illustration/MonthlyReport56.stories.js.map +1 -1
- package/es/illustration/NotesStar140.stories.js +1 -1
- package/es/illustration/NotesStar140.stories.js.map +1 -1
- package/es/illustration/PlanSelection140.stories.js +1 -1
- package/es/illustration/PlanSelection140.stories.js.map +1 -1
- package/es/illustration/Playbook56.stories.js +1 -1
- package/es/illustration/Playbook56.stories.js.map +1 -1
- package/es/illustration/ProjectFolder56.stories.js +1 -1
- package/es/illustration/ProjectFolder56.stories.js.map +1 -1
- package/es/illustration/RecentFiles140.stories.js +1 -1
- package/es/illustration/RecentFiles140.stories.js.map +1 -1
- package/es/illustration/RelayPlanet140.stories.js +1 -1
- package/es/illustration/RelayPlanet140.stories.js.map +1 -1
- package/es/illustration/SalesContract56.stories.js +1 -1
- package/es/illustration/SalesContract56.stories.js.map +1 -1
- package/es/illustration/Sandbox140.stories.js +1 -1
- package/es/illustration/Sandbox140.stories.js.map +1 -1
- package/es/illustration/TaskList56.stories.js +1 -1
- package/es/illustration/TaskList56.stories.js.map +1 -1
- package/es/illustration/Transfers140.stories.js +1 -1
- package/es/illustration/Transfers140.stories.js.map +1 -1
- package/es/illustration/TrashEmpty140.stories.js +1 -1
- package/es/illustration/TrashEmpty140.stories.js.map +1 -1
- package/es/illustration/Unplugged140.stories.js +1 -1
- package/es/illustration/Unplugged140.stories.js.map +1 -1
- package/es/illustration/UploadCloud140.stories.js +1 -1
- package/es/illustration/UploadCloud140.stories.js.map +1 -1
- package/es/illustration/UserOrbit56.stories.js +1 -1
- package/es/illustration/UserOrbit56.stories.js.map +1 -1
- package/es/src/components/avatar/Avatar.d.ts +2 -2
- package/es/src/components/avatar/Avatar.stories.d.ts +2 -2
- package/es/src/components/badge/Badge.d.ts +1 -1
- package/es/src/components/badge/types.d.ts +1 -1
- package/es/src/components/badgeable/Badgeable.d.ts +1 -1
- package/es/src/components/button/Button.d.ts +1 -1
- package/es/src/components/checkbox/CheckboxField.d.ts +1 -1
- package/es/src/components/close-button/CloseButton.d.ts +2 -2
- package/es/src/components/close-button/CloseButton.stories.d.ts +2 -2
- package/es/src/components/count-badge/CountBadge.d.ts +1 -1
- package/es/src/components/date-picker/DatePicker.d.ts +9 -9
- package/es/src/components/date-picker/DatePicker.stories.d.ts +2 -2
- package/es/src/components/footer-indicator/FooterIndicator.d.ts +1 -1
- package/es/src/components/ghost/Ghost.d.ts +2 -2
- package/es/src/components/ghost/Ghost.stories.d.ts +3 -3
- package/es/src/components/guide-tooltip/GuideTooltip.d.ts +2 -2
- package/es/src/components/header/Header.d.ts +1 -1
- package/es/src/components/image-tooltip/ImageTooltip.d.ts +2 -2
- package/es/src/components/image-tooltip/ImageTooltipContent.d.ts +2 -2
- package/es/src/components/label/HiddenLabel.d.ts +3 -1
- package/es/src/components/label/Label.d.ts +3 -1
- package/es/src/components/label/Label.stories.d.ts +1 -1
- package/es/src/components/label/LabelPrimitive.d.ts +3 -1
- package/es/src/components/label/StandardLabel.d.ts +3 -1
- package/es/src/components/loading-indicator/makeLoadable.d.ts +1 -1
- package/es/src/components/media/Media.d.ts +2 -2
- package/es/src/components/media/MediaMenu.d.ts +2 -2
- package/es/src/components/media/stories/Media.stories.d.ts +2 -2
- package/es/src/components/media/stories/MediaMenu.stories.d.ts +2 -2
- package/es/src/components/menu/Menu.d.ts +1 -1
- package/es/src/components/menu/MenuContext.d.ts +1 -1
- package/es/src/components/plain-button/index.d.ts +1 -1
- package/es/src/components/preview/PreviewLoading.d.ts +1 -1
- package/es/src/components/preview/PreviewLoadingRing.d.ts +1 -1
- package/es/src/components/preview/previewIcons.d.ts +7 -3
- package/es/src/components/radio/RadioButtonField.d.ts +1 -1
- package/es/src/components/radio/RadioGroup.d.ts +1 -1
- package/es/src/components/radio/RadioGroupField.d.ts +1 -1
- package/es/src/components/search-form/SearchActions.d.ts +16 -0
- package/es/src/components/search-form/messages.d.ts +18 -0
- package/es/src/components/time-input/TimeInput.d.ts +3 -3
- package/es/src/components/time-input/TimeInput.stories.d.ts +2 -2
- package/es/src/components/time-input/TimeInputUtils.d.ts +2 -2
- package/es/src/components/tooltip/CloseButton.d.ts +3 -3
- package/es/src/components/tooltip/Tooltip.d.ts +10 -10
- package/es/src/components/tooltip/index.d.ts +1 -1
- package/es/src/elements/common/annotator-context/types.d.ts +2 -2
- package/es/src/elements/common/annotator-context/withAnnotations.d.ts +5 -5
- package/es/src/elements/common/current-user/withCurrentUser.d.ts +4 -4
- package/es/src/elements/common/nav-router/NavRouter.d.ts +1 -1
- package/es/src/elements/common/nav-router/types.d.ts +1 -1
- package/es/src/elements/content-preview/PreviewMask.d.ts +1 -1
- package/es/src/elements/content-sidebar/SidebarNavSignButton.d.ts +24 -4
- package/es/src/elements/content-sidebar/activity-feed/ActivityCard.d.ts +1 -1
- package/es/src/elements/content-sidebar/activity-feed/SelectableActivityCard.d.ts +1 -1
- package/es/src/elements/content-sidebar/activity-feed/activity-feed/ActivityItem.d.ts +1 -1
- package/es/src/elements/content-sidebar/activity-feed/annotations/AnnotationActivityLink.d.ts +3 -3
- package/es/src/elements/content-sidebar/activity-feed/common/activity-datestamp/ActivityDatestamp.d.ts +2 -2
- package/es/src/elements/content-sidebar/activity-feed/illustrations/ActivityFeedEmptyStateIllustration.d.ts +1 -1
- package/es/src/features/content-answers/Answer.d.ts +7 -0
- package/es/src/features/content-answers/ContentAnswers.d.ts +10 -0
- package/es/src/features/content-answers/ContentAnswersGridCard.d.ts +7 -0
- package/es/src/features/content-answers/ContentAnswersModal.d.ts +10 -0
- package/es/src/features/content-answers/ContentAnswersModalContent.d.ts +11 -0
- package/es/src/features/content-answers/ContentAnswersModalError.d.ts +3 -0
- package/es/src/features/content-answers/ContentAnswersModalFooter.d.ts +18 -0
- package/es/src/features/content-answers/ContentAnswersModalFooterActions.d.ts +7 -0
- package/es/src/features/content-answers/ContentAnswersOpenButton.d.ts +16 -0
- package/es/src/features/content-answers/InlineError.d.ts +3 -0
- package/es/src/features/content-answers/LoadingElement.d.ts +3 -0
- package/es/src/features/content-answers/Question.d.ts +8 -0
- package/es/src/features/content-answers/WelcomeMessage.d.ts +6 -0
- package/es/src/features/content-answers/__mocks__/mocks.d.ts +23 -0
- package/es/src/features/content-answers/__tests__/Answer.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswers.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersGridCard.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersModal.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersModalContent.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersModalError.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersModalFooter.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersModalFooterActions.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/ContentAnswersOpenButton.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/InlineError.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/Question.test.d.ts +1 -0
- package/es/src/features/content-answers/__tests__/WelcomeMessage.test.d.ts +1 -0
- package/es/src/features/content-answers/constants.d.ts +7 -0
- package/es/src/features/content-answers/index.d.ts +1 -0
- package/es/src/features/content-answers/messages.d.ts +83 -0
- package/es/src/features/content-insights/CompactCount.d.ts +2 -2
- package/es/src/features/content-insights/GraphCardPreviewsSummary.d.ts +2 -2
- package/es/src/features/content-insights/MetricSummary.d.ts +2 -2
- package/es/src/features/content-insights/TrendPill.d.ts +2 -2
- package/es/src/features/content-insights/charts/bar/BarChart.d.ts +1 -1
- package/es/src/features/content-insights/charts/types.d.ts +2 -2
- package/es/src/features/content-insights/constants.d.ts +30 -18
- package/es/src/features/content-insights/types.d.ts +9 -9
- package/es/src/features/presence/PresenceAvatarList.d.ts +2 -2
- package/es/src/features/presence/PresenceAvatarTooltipContent.d.ts +15 -3
- package/es/src/features/sandbox-banner/SandboxBanner.d.ts +1 -1
- package/es/src/icons/file/IconFileBase.d.ts +1 -1
- package/es/styles/colors.stories.js +1 -1
- package/es/styles/colors.stories.js.map +1 -1
- package/es/styles/common/_buttons.scss +1 -1
- package/es/styles/constants/_buttons.scss +1 -0
- package/es/styles/typography.stories.js +1 -1
- package/es/styles/typography.stories.js.map +1 -1
- package/es/utils/Browser.js +11 -0
- package/es/utils/Browser.js.flow +10 -0
- package/es/utils/Browser.js.map +1 -1
- package/es/utils/comparator.js +1 -1
- package/es/utils/comparator.js.flow +1 -1
- package/es/utils/comparator.js.map +1 -1
- package/es/utils/createTheme.stories.js +1 -1
- package/es/utils/createTheme.stories.js.flow +1 -1
- package/es/utils/createTheme.stories.js.map +1 -1
- package/es/utils/fields.js +3 -3
- package/es/utils/fields.js.flow +3 -0
- package/es/utils/fields.js.map +1 -1
- package/es/utils/flatten.js +1 -1
- package/es/utils/flatten.js.flow +6 -1
- package/es/utils/flatten.js.map +1 -1
- package/es/utils/size.js +5 -5
- package/es/utils/size.js.flow +5 -5
- package/es/utils/size.js.map +1 -1
- package/es/utils/sorter.js +1 -1
- package/es/utils/sorter.js.flow +1 -1
- package/es/utils/sorter.js.map +1 -1
- package/flow-typed/box-ui-elements.js +1 -0
- package/i18n/bn-IN.js +19 -1
- package/i18n/bn-IN.properties +38 -2
- package/i18n/da-DK.js +19 -1
- package/i18n/da-DK.properties +38 -2
- package/i18n/de-DE.js +19 -1
- package/i18n/de-DE.properties +38 -2
- package/i18n/en-AU.js +19 -1
- package/i18n/en-AU.properties +38 -2
- package/i18n/en-CA.js +19 -1
- package/i18n/en-CA.properties +38 -2
- package/i18n/en-GB.js +19 -1
- package/i18n/en-GB.properties +38 -2
- package/i18n/en-US.js +19 -1
- package/i18n/en-US.properties +38 -2
- package/i18n/en-x-pseudo.js +943 -926
- package/i18n/en-x-pseudo.properties +962 -926
- package/i18n/es-419.js +19 -1
- package/i18n/es-419.properties +38 -2
- package/i18n/es-ES.js +19 -1
- package/i18n/es-ES.properties +38 -2
- package/i18n/fi-FI.js +19 -1
- package/i18n/fi-FI.properties +38 -2
- package/i18n/fr-CA.js +19 -1
- package/i18n/fr-CA.properties +38 -2
- package/i18n/fr-FR.js +19 -1
- package/i18n/fr-FR.properties +38 -2
- package/i18n/hi-IN.js +19 -1
- package/i18n/hi-IN.properties +38 -2
- package/i18n/it-IT.js +19 -1
- package/i18n/it-IT.properties +38 -2
- package/i18n/ja-JP.js +29 -11
- package/i18n/ja-JP.properties +48 -12
- package/i18n/ko-KR.js +19 -1
- package/i18n/ko-KR.properties +38 -2
- package/i18n/nb-NO.js +19 -1
- package/i18n/nb-NO.properties +38 -2
- package/i18n/nl-NL.js +19 -1
- package/i18n/nl-NL.properties +38 -2
- package/i18n/pl-PL.js +19 -1
- package/i18n/pl-PL.properties +38 -2
- package/i18n/pt-BR.js +19 -1
- package/i18n/pt-BR.properties +38 -2
- package/i18n/ru-RU.js +19 -1
- package/i18n/ru-RU.properties +38 -2
- package/i18n/sv-SE.js +19 -1
- package/i18n/sv-SE.properties +38 -2
- package/i18n/tr-TR.js +19 -1
- package/i18n/tr-TR.properties +38 -2
- package/i18n/zh-CN.js +19 -1
- package/i18n/zh-CN.properties +38 -2
- package/i18n/zh-TW.js +19 -1
- package/i18n/zh-TW.properties +38 -2
- package/package.json +48 -36
- package/src/api/APIFactory.js +25 -0
- package/src/api/Feed.js +8 -4
- package/src/api/Intelligence.js +47 -0
- package/src/api/__tests__/Intelligence.test.js +81 -0
- package/src/api/__tests__/Item.test.js +1 -1
- package/src/api/uploads/__tests__/BaseUpload.test.js +5 -5
- package/src/api/uploads/__tests__/FolderUpload.test.js +1 -1
- package/src/api/uploads/__tests__/FolderUploadNode.test.js +1 -1
- package/src/api/uploads/__tests__/MultiputUpload.test.js +1 -1
- package/src/common/types/core.js +1 -0
- package/src/components/accessible-svg/AccessibleSVG.stories.tsx +1 -1
- package/src/components/avatar/Avatar.stories.tsx +1 -1
- package/src/components/badge/Badge.stories.tsx +1 -1
- package/src/components/badge/BetaBadge.stories.tsx +1 -1
- package/src/components/badge/TrialBadge.stories.tsx +1 -1
- package/src/components/badge/UpgradeBadge.stories.tsx +1 -1
- package/src/components/breadcrumb/Breadcrumb.stories.js +1 -1
- package/src/components/button/Button.stories.tsx +1 -1
- package/src/components/button-group/ButtonGroup.stories.tsx +1 -1
- package/src/components/category-selector/CategorySelector.stories.tsx +1 -1
- package/src/components/checkbox/Checkbox.stories.tsx +1 -1
- package/src/components/close-button/CloseButton.stories.tsx +1 -1
- package/src/components/collapsible/Collapsible.stories.tsx +1 -1
- package/src/components/collapsible/__tests__/__snapshots__/Collapsible.test.tsx.snap +14 -14
- package/src/components/contact-datalist-item/ContactDatalistItem.stories.tsx +1 -1
- package/src/components/context-menu/ContextMenu.stories.tsx +1 -1
- package/src/components/count-badge/CountBadge.stories.tsx +1 -1
- package/src/components/datalist-item/DatalistItem.stories.tsx +1 -1
- package/src/components/date-picker/DatePicker.stories.tsx +1 -1
- package/src/components/draft-js-editor/DraftJSEditor.stories.js +1 -1
- package/src/components/draggable-list/DraggableList.stories.tsx +1 -1
- package/src/components/dropdown-menu/DropdownMenu.stories.js +1 -1
- package/src/components/error-mask/ErrorMask.stories.tsx +1 -1
- package/src/components/fieldset/Fieldset.stories.tsx +1 -1
- package/src/components/flyout/Flyout.stories.tsx +1 -1
- package/src/components/flyout/OverlayHeader.tsx +1 -1
- package/src/components/footer-indicator/FooterIndicator.stories.tsx +1 -1
- package/src/components/form-elements/form/Form.stories.js +1 -1
- package/src/components/form-elements/formik/Formik.stories.js +1 -1
- package/src/components/form-elements/text-area/TextArea.stories.js +1 -1
- package/src/components/form-elements/text-input/TextInput.stories.js +1 -1
- package/src/components/ghost/Ghost.stories.tsx +1 -1
- package/src/components/grid-view/__tests__/__snapshots__/GridView.test.js.snap +4 -4
- package/src/components/guide-tooltip/GuideTooltip.stories.tsx +1 -1
- package/src/components/header/Header.stories.tsx +1 -1
- package/src/components/image-tooltip/ImageTooltip.stories.tsx +1 -1
- package/src/components/inline-error/InlineError.stories.js +1 -1
- package/src/components/inline-notice/InlineNotice.stories.js +1 -1
- package/src/components/label/HiddenLabel.js.flow +3 -2
- package/src/components/label/HiddenLabel.tsx +4 -2
- package/src/components/label/Label.js.flow +5 -3
- package/src/components/label/Label.stories.tsx +1 -1
- package/src/components/label/Label.tsx +18 -3
- package/src/components/label/LabelPrimitive.js.flow +3 -2
- package/src/components/label/LabelPrimitive.tsx +4 -2
- package/src/components/label/StandardLabel.js.flow +3 -2
- package/src/components/label/StandardLabel.tsx +4 -2
- package/src/components/label/__tests__/__snapshots__/Label.test.tsx.snap +2 -2
- package/src/components/label/__tests__/__snapshots__/StandardLabel.test.tsx.snap +1 -1
- package/src/components/label-pill/LabelPill.stories.tsx +1 -1
- package/src/components/link/stories/Link.stories.tsx +2 -1
- package/src/components/link/stories/LinkButton.stories.tsx +3 -1
- package/src/components/link/stories/LinkGroup.stories.tsx +1 -1
- package/src/components/link/stories/LinkPrimaryButton.stories.tsx +2 -1
- package/src/components/loading-indicator/LoadingIndicator.stories.tsx +1 -1
- package/src/components/loading-indicator/LoadingIndicatorWrapper.stories.tsx +1 -1
- package/src/components/loading-indicator/makeLoadable.tsx +2 -4
- package/src/components/logo/Logo.stories.tsx +1 -1
- package/src/components/media/stories/Media.stories.tsx +1 -1
- package/src/components/media/stories/MediaBody.stories.tsx +1 -1
- package/src/components/media/stories/MediaFigure.stories.tsx +1 -1
- package/src/components/media/stories/MediaMenu.stories.tsx +1 -1
- package/src/components/media-query/stories/MediaQuery.stories.js +1 -1
- package/src/components/menu/stories/Menu.stories.tsx +1 -1
- package/src/components/menu/stories/SelectMenuLinkItem.stories.tsx +1 -1
- package/src/components/modal/Modal.scss +62 -69
- package/src/components/modal/stories/Modal.stories.js +1 -1
- package/src/components/modal/stories/ModalActions.stories.js +1 -1
- package/src/components/modal/stories/ModalDialog.stories.js +1 -1
- package/src/components/nav-sidebar/NavSidebar.stories.js +1 -1
- package/src/components/notification/stories/Notification.stories.js +1 -1
- package/src/components/notification/stories/NotificationsWrapper.stories.js +1 -1
- package/src/components/nudge/Nudge.stories.tsx +1 -1
- package/src/components/pill-cloud/PillCloud.stories.js +1 -1
- package/src/components/pill-selector-dropdown/PillSelector.js +10 -2
- package/src/components/pill-selector-dropdown/PillSelector.scss +4 -0
- package/src/components/pill-selector-dropdown/PillSelectorDropdown.stories.js +1 -1
- package/src/components/pill-selector-dropdown/__tests__/PillSelector.test.js +21 -0
- package/src/components/pill-selector-dropdown/__tests__/__snapshots__/PillSelector.test.js.snap +1 -1
- package/src/components/pill-selector-dropdown/__tests__/__snapshots__/PillSelectorDropdown.test.js.snap +1 -1
- package/src/components/pill-selector-dropdown/__tests__/__snapshots__/PillSelectorDropdownField.test.js.snap +12 -12
- package/src/components/pill-selector-dropdown/__tests__/__snapshots__/defaultDropdownRenderer.test.js.snap +1 -1
- package/src/components/plain-button/PlainButton.stories.tsx +1 -1
- package/src/components/plain-button/__tests__/__snapshots__/PlainButton.test.tsx.snap +4 -4
- package/src/components/primary-button/PrimaryButton.stories.tsx +1 -1
- package/src/components/radar/RadarAnimation.stories.tsx +1 -1
- package/src/components/radar/__tests__/__snapshots__/RadarAnimation.test.tsx.snap +20 -20
- package/src/components/radio/stories/RadioButton.stories.tsx +1 -1
- package/src/components/radio/stories/RadioGroup.stories.tsx +1 -1
- package/src/components/search-form/SearchActions.tsx +50 -0
- package/src/components/search-form/SearchForm.js +10 -54
- package/src/components/search-form/__tests__/SearchForm.test.js +9 -5
- package/src/components/search-form/messages.ts +21 -0
- package/src/components/section/Section.stories.tsx +1 -1
- package/src/components/select/Select.stories.js +1 -1
- package/src/components/select-button/SelectButton.stories.js +1 -1
- package/src/components/select-field/__tests__/__snapshots__/BaseSelectField.test.js.snap +1 -1
- package/src/components/selector-dropdown/SelectorDropdown.stories.js +1 -1
- package/src/components/sidebar-toggle-button/SidebarToggleButton.stories.js +1 -1
- package/src/components/sidebar-toggle-button/__tests__/__snapshots__/SidebarToggleButton.test.js.snap +12 -12
- package/src/components/tab-view/TabView.stories.js +1 -1
- package/src/components/text-area/__tests__/__snapshots__/TextArea.test.js.snap +3 -3
- package/src/components/text-input/TextInput.stories.js +1 -1
- package/src/components/text-input-with-copy-button/TextInputWithCopyButton.js +9 -4
- package/src/components/text-input-with-copy-button/TextInputWithCopyButton.stories.js +1 -1
- package/src/components/thumbnail-card/ThumbnailCard.stories.js +1 -1
- package/src/components/time/ReadableTime.stories.js +1 -1
- package/src/components/time-input/TimeInput.stories.tsx +1 -1
- package/src/components/toggle/Toggle.stories.js +1 -1
- package/src/components/tooltip/Tooltip.stories.tsx +1 -1
- package/src/components/tooltip/__tests__/__snapshots__/Tooltip.test.tsx.snap +14 -14
- package/src/constants.js +1 -0
- package/src/elements/common/_variables.scss +1 -0
- package/src/elements/common/current-user/withCurrentUser.tsx +1 -0
- package/src/elements/common/feature-checking/__tests__/withFeatureProvider.test.js +25 -25
- package/src/elements/common/logger/__tests__/__snapshots__/Logger.test.js.snap +1 -1
- package/src/elements/common/selectors/__tests__/version.js +13 -11
- package/src/elements/common/selectors/version.js +2 -1
- package/src/elements/content-explorer/ContentExplorer.js +10 -4
- package/src/elements/content-explorer/MoreOptions.js +1 -1
- package/src/elements/content-explorer/PreviewDialog.js +0 -1
- package/src/elements/content-explorer/__tests__/ContentExplorer.test.js +60 -0
- package/src/elements/content-explorer/stories/ContentExplorer.stories.js +25 -36
- package/src/elements/content-explorer/stories/DeleteConfirmationDialog.stories.js +1 -1
- package/src/elements/content-explorer/stories/ShareDialog.stories.js +1 -1
- package/src/elements/content-open-with/__tests__/__snapshots__/BoxToolsInstallMessage.test.js.snap +2 -2
- package/src/elements/content-open-with/__tests__/__snapshots__/ContentOpenWith.test.js.snap +6 -6
- package/src/elements/content-open-with/__tests__/__snapshots__/OpenWithDropdownMenu.test.js.snap +1 -1
- package/src/elements/content-picker/ContentPicker.js +2 -2
- package/src/elements/content-picker/Footer.scss +6 -0
- package/src/elements/content-preview/ContentPreview.js +88 -64
- package/src/elements/content-preview/ContentPreview.scss +13 -28
- package/src/elements/content-preview/__tests__/ContentPreview.test.js +6 -5
- package/src/elements/content-preview/__tests__/__snapshots__/PreviewNavigation.test.js.snap +93 -93
- package/src/elements/content-preview/preview-header/PreviewHeader.js +6 -0
- package/src/elements/content-preview/preview-header/__tests__/PreviewHeader.test.js +25 -0
- package/src/elements/content-preview/stories/ContentPreview.stories.js +51 -81
- package/src/elements/content-sharing/stories/ContentSharing.stories.js +18 -84
- package/src/elements/content-sidebar/ActivitySidebar.js +2 -2
- package/src/elements/content-sidebar/ContentSidebar.scss +9 -9
- package/src/elements/content-sidebar/SidebarContent.scss +6 -8
- package/src/elements/content-sidebar/SidebarNav.scss +22 -20
- package/src/elements/content-sidebar/SidebarNavButton.scss +12 -14
- package/src/elements/content-sidebar/SidebarNavSignButton.scss +6 -8
- package/src/elements/content-sidebar/__tests__/ActivitySidebar.test.js +8 -4
- package/src/elements/content-sidebar/__tests__/__snapshots__/ActivitySidebar.test.js.snap +5 -5
- package/src/elements/content-sidebar/__tests__/__snapshots__/DetailsSidebar.test.js.snap +9 -9
- package/src/elements/content-sidebar/__tests__/__snapshots__/MetadataSidebar.test.js.snap +6 -6
- package/src/elements/content-sidebar/__tests__/__snapshots__/SidebarAccessStats.test.js.snap +12 -12
- package/src/elements/content-sidebar/__tests__/__snapshots__/SidebarClassification.test.js.snap +3 -3
- package/src/elements/content-sidebar/__tests__/__snapshots__/SidebarFileProperties.test.js.snap +10 -10
- package/src/elements/content-sidebar/__tests__/__snapshots__/SidebarNotices.test.js.snap +2 -2
- package/src/elements/content-sidebar/__tests__/__snapshots__/SkillsSidebar.test.js.snap +3 -3
- package/src/elements/content-sidebar/__tests__/__snapshots__/TaskModal.test.js.snap +15 -15
- package/src/elements/content-sidebar/activity-feed/__tests__/__snapshots__/Avatar.test.js.snap +1 -1
- package/src/elements/content-sidebar/activity-feed/activity-feed/ActiveState.js +20 -2
- package/src/elements/content-sidebar/activity-feed/activity-feed/ActivityFeed.js +7 -6
- package/src/elements/content-sidebar/activity-feed/activity-feed/ActivityFeed.scss +6 -4
- package/src/elements/content-sidebar/activity-feed/activity-feed/ActivityItem.scss +2 -2
- package/src/elements/content-sidebar/activity-feed/activity-feed/__tests__/ActiveState.test.js +36 -0
- package/src/elements/content-sidebar/activity-feed/activity-feed/__tests__/__snapshots__/ActiveState.test.js.snap +35 -35
- package/src/elements/content-sidebar/activity-feed/activity-feed/stories/ActivityFeed.stories.js +70 -0
- package/src/elements/content-sidebar/activity-feed/annotation-thread/AnnotationThreadContent.js +2 -2
- package/src/elements/content-sidebar/activity-feed/annotation-thread/__tests__/useAnnotationThread.test.js +4 -2
- package/src/elements/content-sidebar/activity-feed/annotation-thread/useAnnotationThread.js +3 -7
- package/src/elements/content-sidebar/activity-feed/annotations/AnnotationActivity.js +3 -3
- package/src/elements/content-sidebar/activity-feed/app-activity/__tests__/__snapshots__/AppActivity.test.js.snap +2 -2
- package/src/elements/content-sidebar/activity-feed/comment/BaseComment.js +59 -166
- package/src/elements/content-sidebar/activity-feed/comment/BaseComment.scss +34 -12
- package/src/elements/content-sidebar/activity-feed/comment/CreateReply.js +5 -4
- package/src/elements/content-sidebar/activity-feed/comment/Replies.scss +4 -2
- package/src/elements/content-sidebar/activity-feed/comment/__tests__/BaseComment.test.js +18 -6
- package/src/elements/content-sidebar/activity-feed/comment/__tests__/CreateReply.test.js +12 -0
- package/src/elements/content-sidebar/activity-feed/comment/__tests__/Replies.test.js +25 -1
- package/src/elements/content-sidebar/activity-feed/comment/__tests__/__snapshots__/Comment.test.js.snap +8 -8
- package/src/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.js +72 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/BaseCommentInfo.scss +38 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.js +125 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenu.scss +4 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/BaseCommentMenuWrapper.js +91 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/__tests__/BaseCommentInfo.test.js +51 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/__tests__/BaseCommentMenu.test.js +85 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentInfo.stories.js +25 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/stories/BaseCommentMenu.stories.js +26 -0
- package/src/elements/content-sidebar/activity-feed/comment/components/stories/common.js +28 -0
- package/src/elements/content-sidebar/activity-feed/comment/messages.js +5 -5
- package/src/elements/content-sidebar/activity-feed/comment/stories/BaseComment.stories.js +1 -1
- package/src/elements/content-sidebar/activity-feed/comment/stories/common.js +1 -1
- package/src/elements/content-sidebar/activity-feed/comment/types.js +13 -0
- package/src/elements/content-sidebar/activity-feed/comment-form/CommentForm.js +11 -3
- package/src/elements/content-sidebar/activity-feed/comment-form/__tests__/CommentForm.test.js +37 -21
- package/src/elements/content-sidebar/activity-feed/common/activity-timestamp/__tests__/__snapshots__/ActivityTimestamp.test.js.snap +1 -1
- package/src/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.js +2 -0
- package/src/elements/content-sidebar/activity-feed/common/delete-confirmation/DeleteConfirmation.scss +1 -1
- package/src/elements/content-sidebar/activity-feed/task-form/__tests__/__snapshots__/TaskError.test.js.snap +10 -10
- package/src/elements/content-sidebar/activity-feed/task-new/Task.js +7 -2
- package/src/elements/content-sidebar/activity-feed/task-new/__tests__/__snapshots__/AssigneeDetails.test.js.snap +9 -9
- package/src/elements/content-sidebar/activity-feed/task-new/__tests__/__snapshots__/Task.test.js.snap +30 -21
- package/src/elements/content-sidebar/activity-feed/task-new/__tests__/__snapshots__/TaskDueDate.test.js.snap +1 -1
- package/src/elements/content-sidebar/activity-feed/task-new/messages.js +10 -0
- package/src/elements/content-sidebar/activity-feed/version/__tests__/__snapshots__/CollapsedVersion.test.js.snap +2 -2
- package/src/elements/content-sidebar/additional-tabs/__tests__/__snapshots__/AdditionalTabsLoading.test.js.snap +1 -1
- package/src/elements/content-sidebar/skills/__tests__/__snapshots__/SidebarSkills.test.js.snap +208 -208
- package/src/elements/content-sidebar/skills/__tests__/__snapshots__/SidebarSkillsCard.test.js.snap +5 -5
- package/src/elements/content-sidebar/skills/faces/__tests__/__snapshots__/Faces.test.js.snap +23 -23
- package/src/elements/content-sidebar/skills/keywords/__tests__/__snapshots__/EditableKeywords.test.js.snap +3 -3
- package/src/elements/content-sidebar/skills/keywords/__tests__/__snapshots__/Keywords.test.js.snap +15 -15
- package/src/elements/content-sidebar/skills/keywords/__tests__/__snapshots__/ReadOnlyKeywords.test.js.snap +8 -8
- package/src/elements/content-sidebar/skills/timeline/__tests__/__snapshots__/Timeslice.test.js.snap +3 -3
- package/src/elements/content-sidebar/skills/transcript/__tests__/__snapshots__/EditingTranscriptRow.test.js.snap +2 -10
- package/src/elements/content-sidebar/stories/ContentSidebar.stories.js +19 -28
- package/src/elements/content-sidebar/versions/VersionsItem.scss +6 -0
- package/src/elements/content-sidebar/versions/__tests__/VersionsItem.test.js +3 -0
- package/src/elements/content-sidebar/versions/__tests__/__snapshots__/VersionsItem.test.js.snap +3 -3
- package/src/elements/content-sidebar/versions/__tests__/__snapshots__/VersionsSidebar.test.js.snap +2 -2
- package/src/elements/content-sidebar/versions/__tests__/__snapshots__/VersionsSidebarContainer.test.js.snap +5 -5
- package/src/elements/content-uploader/ItemName.scss +1 -1
- package/src/elements/content-uploader/ProgressBar.scss +4 -0
- package/src/elements/content-uploader/__tests__/__snapshots__/UploadStateContent.test.js.snap +1 -1
- package/src/elements/content-uploader/stories/ContentUploader.stories.js +7 -11
- package/src/features/access-stats/__tests__/__snapshots__/AccessStats.test.js.snap +30 -30
- package/src/features/access-stats/__tests__/__snapshots__/AccessStatsItemsList.test.js.snap +14 -14
- package/src/features/classification/__tests__/__snapshots__/Classification.test.js.snap +5 -5
- package/src/features/classification/security-controls/__tests__/__snapshots__/SecurityControls.test.js.snap +17 -17
- package/src/features/classification/security-controls/__tests__/__snapshots__/SecurityControlsModal.test.js.snap +6 -6
- package/src/features/collaborator-avatars/CollaboratorList.scss +11 -1
- package/src/features/collaborator-avatars/__tests__/__snapshots__/CollaboratorList.test.js.snap +10 -10
- package/src/features/collaborator-avatars/__tests__/__snapshots__/CollaboratorListItem.test.js.snap +3 -3
- package/src/features/collapsible-sidebar/CollapsibleSidebar.stories.js +1 -1
- package/src/features/collapsible-sidebar/__tests__/__snapshots__/CollapsibleSidebarLogo.test.js.snap +2 -2
- package/src/features/collapsible-sidebar/__tests__/__snapshots__/CollapsibleSidebarNav.test.js.snap +24 -24
- package/src/features/content-answers/Answer.scss +4 -0
- package/src/features/content-answers/Answer.tsx +22 -0
- package/src/features/content-answers/ContentAnswers.tsx +60 -0
- package/src/features/content-answers/ContentAnswersGridCard.scss +26 -0
- package/src/features/content-answers/ContentAnswersGridCard.tsx +27 -0
- package/src/features/content-answers/ContentAnswersModal.scss +56 -0
- package/src/features/content-answers/ContentAnswersModal.tsx +136 -0
- package/src/features/content-answers/ContentAnswersModalContent.scss +12 -0
- package/src/features/content-answers/ContentAnswersModalContent.tsx +64 -0
- package/src/features/content-answers/ContentAnswersModalError.scss +28 -0
- package/src/features/content-answers/ContentAnswersModalError.tsx +32 -0
- package/src/features/content-answers/ContentAnswersModalFooter.scss +42 -0
- package/src/features/content-answers/ContentAnswersModalFooter.tsx +103 -0
- package/src/features/content-answers/ContentAnswersModalFooterActions.scss +17 -0
- package/src/features/content-answers/ContentAnswersModalFooterActions.tsx +45 -0
- package/src/features/content-answers/ContentAnswersOpenButton.scss +54 -0
- package/src/features/content-answers/ContentAnswersOpenButton.tsx +74 -0
- package/src/features/content-answers/InlineError.scss +39 -0
- package/src/features/content-answers/InlineError.tsx +32 -0
- package/src/features/content-answers/LoadingElement.scss +4 -0
- package/src/features/content-answers/LoadingElement.tsx +17 -0
- package/src/features/content-answers/Question.scss +16 -0
- package/src/features/content-answers/Question.tsx +30 -0
- package/src/features/content-answers/WelcomeMessage.scss +25 -0
- package/src/features/content-answers/WelcomeMessage.tsx +35 -0
- package/src/features/content-answers/__mocks__/mocks.ts +66 -0
- package/src/features/content-answers/__tests__/Answer.test.tsx +25 -0
- package/src/features/content-answers/__tests__/ContentAnswers.test.tsx +53 -0
- package/src/features/content-answers/__tests__/ContentAnswersGridCard.test.tsx +21 -0
- package/src/features/content-answers/__tests__/ContentAnswersModal.test.tsx +117 -0
- package/src/features/content-answers/__tests__/ContentAnswersModalContent.test.tsx +104 -0
- package/src/features/content-answers/__tests__/ContentAnswersModalError.test.tsx +26 -0
- package/src/features/content-answers/__tests__/ContentAnswersModalFooter.test.tsx +96 -0
- package/src/features/content-answers/__tests__/ContentAnswersModalFooterActions.tsx +37 -0
- package/src/features/content-answers/__tests__/ContentAnswersOpenButton.test.tsx +73 -0
- package/src/features/content-answers/__tests__/InlineError.test.tsx +20 -0
- package/src/features/content-answers/__tests__/Question.test.tsx +21 -0
- package/src/features/content-answers/__tests__/WelcomeMessage.test.tsx +24 -0
- package/src/features/content-answers/constants.ts +134 -0
- package/src/features/content-answers/index.ts +1 -0
- package/src/features/content-answers/messages.ts +87 -0
- package/src/features/content-explorer/content-explorer/ContentExplorer.js +19 -15
- package/src/features/content-explorer/content-explorer/ContentExplorer.scss +4 -0
- package/src/features/content-explorer/content-explorer/ContentExplorerBreadcrumbs.js +2 -0
- package/src/features/content-explorer/content-explorer/__tests__/ContentExplorer.test.js +29 -0
- package/src/features/content-explorer/content-explorer/__tests__/__snapshots__/ContentExplorer.test.js.snap +10 -10
- package/src/features/content-explorer/content-explorer/__tests__/__snapshots__/ContentExplorerHeaderActions.test.js.snap +1 -1
- package/src/features/content-explorer/content-explorer-modal/ContentExplorerModal.js +1 -0
- package/src/features/content-explorer/content-explorer-modal/__tests__/__snapshots__/ContentExplorerModal.test.js.snap +10 -10
- package/src/features/content-explorer/content-explorer-modal-container/ContentExplorerModalContainer.js +2 -0
- package/src/features/content-explorer/item-list/__tests__/__snapshots__/ItemListIcon.test.js.snap +4 -4
- package/src/features/header-flyout/__tests__/__snapshots__/HeaderFlyout.test.js.snap +3 -3
- package/src/features/invite-collaborators-modal/__tests__/__snapshots__/InviteCollaboratorsModal.test.js.snap +8 -8
- package/src/features/item-details/__tests__/__snapshots__/EditableDescription.test.js.snap +2 -8
- package/src/features/item-details/__tests__/__snapshots__/ItemExpirationNotice.test.js.snap +4 -4
- package/src/features/item-details/__tests__/__snapshots__/ItemProperties.test.js.snap +2 -2
- package/src/features/item-details/__tests__/__snapshots__/ReadonlyDescription.test.js.snap +2 -2
- package/src/features/item-details/__tests__/__snapshots__/SharedLinkExpirationNotice.test.js.snap +2 -2
- package/src/features/item-details/__tests__/__snapshots__/VersionHistoryLink.test.js.snap +2 -2
- package/src/features/left-sidebar/__tests__/__snapshots__/InstantLogin.test.js.snap +2 -2
- package/src/features/left-sidebar/__tests__/__snapshots__/LeftSidebar.test.js.snap +21 -21
- package/src/features/left-sidebar/__tests__/__snapshots__/LeftSidebarLink.test.js.snap +14 -14
- package/src/features/left-sidebar/__tests__/__snapshots__/defaultNavLinkRenderer.test.js.snap +1 -1
- package/src/features/message-center/components/templates/common/__tests__/__snapshots__/MessageTextContent.test.js.snap +2 -2
- package/src/features/message-center/components/templates/preview-title-body-tags-button/__tests__/__snapshots__/PreviewTitleBodyTagsButton.test.js.snap +4 -4
- package/src/features/message-center/components/templates/title-body-tags-button/__tests__/__snapshots__/TitleBodyTagsButton.test.js.snap +4 -4
- package/src/features/metadata-based-view/__tests__/__snapshots__/IconWithTooltip.test.js.snap +3 -3
- package/src/features/metadata-based-view/__tests__/__snapshots__/MetadataBasedItemList.test.js.snap +21 -21
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/Header.test.js.snap +3 -3
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/Instance.test.js.snap +204 -204
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/Instances.test.js.snap +37 -37
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/MetadataInstanceEditor.test.js.snap +229 -229
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/TemplateDropdown.test.js.snap +7 -7
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/TemplatedInstance.test.js.snap +17 -17
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/DateMetadataField.test.js.snap +1 -1
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/EnumMetadataField.test.js.snap +10 -10
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/MetadataField.test.js.snap +1 -1
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/MultiSelectMetadataField.test.js.snap +4 -4
- package/src/features/pagination/Pagination.scss +0 -4
- package/src/features/pagination/__tests__/__snapshots__/MarkerBasedPagination.test.js.snap +8 -8
- package/src/features/pagination/__tests__/__snapshots__/OffsetBasedPagination.test.js.snap +34 -34
- package/src/features/pagination/__tests__/__snapshots__/PaginationMenu.test.js.snap +3 -3
- package/src/features/presence/__tests__/__snapshots__/Presence.test.js.snap +49 -49
- package/src/features/presence/__tests__/__snapshots__/PresenceLink.test.js.snap +24 -24
- package/src/features/query-bar/__tests__/__snapshots__/ColumnButton.test.js.snap +6 -6
- package/src/features/query-bar/__tests__/__snapshots__/Condition.test.js.snap +10 -10
- package/src/features/query-bar/__tests__/__snapshots__/QueryBar.test.js.snap +41 -41
- package/src/features/query-bar/__tests__/__snapshots__/TemplateButton.test.js.snap +2 -2
- package/src/features/sandbox-banner/SandboxBanner.stories.tsx +1 -1
- package/src/features/security/__tests__/__snapshots__/SecurityBadge.test.js.snap +2 -2
- package/src/features/security-cloud-game/stories/SecurityCloudGame.stories.js +1 -1
- package/src/features/shared-link-modal/__tests__/__snapshots__/AccessLabel.test.js.snap +1 -1
- package/src/features/shared-link-modal/__tests__/__snapshots__/SharedLink.test.js.snap +5 -5
- package/src/features/shared-link-modal/__tests__/__snapshots__/SharedLinkAccess.test.js.snap +4 -4
- package/src/features/shared-link-modal/__tests__/__snapshots__/SharedLinkModal.test.js.snap +1 -1
- package/src/features/shared-link-modal/stories/SharedLink.stories.js +1 -1
- package/src/features/shared-link-modal/stories/SharedLinkModal.stories.js +1 -1
- package/src/features/shared-link-settings-modal/SharedLinkSettingsModal.stories.js +1 -1
- package/src/features/targeting/hocs/__tests__/__snapshots__/withTargetedClickThrough.test.js.snap +1 -1
- package/src/features/targeting/hocs/withTargetedClickThrough.js +10 -1
- package/src/features/targeting/types.js +1 -0
- package/src/features/unified-share-modal/UnifiedShareModal.scss +61 -79
- package/src/features/unified-share-modal/__tests__/__snapshots__/ContactsField.test.js.snap +23 -23
- package/src/features/unified-share-modal/__tests__/__snapshots__/EmailForm.test.js.snap +28 -28
- package/src/features/unified-share-modal/__tests__/__snapshots__/SharedLinkAccessDescription.test.js.snap +8 -8
- package/src/features/unified-share-modal/__tests__/__snapshots__/SharedLinkAccessLabel.test.js.snap +10 -10
- package/src/features/unified-share-modal/__tests__/__snapshots__/SharedLinkSection.test.js.snap +54 -54
- package/src/features/unified-share-modal/__tests__/__snapshots__/UnifiedShareForm.test.js.snap +250 -250
- package/src/features/unified-share-modal/__tests__/__snapshots__/UnifiedShareModal.test.js.snap +409 -409
- package/src/features/unified-share-modal/__tests__/__snapshots__/UnifiedShareModalTitle.test.js.snap +1 -1
- package/src/features/unified-share-modal/stories/UnifiedShareModal.stories.js +1 -1
- package/src/features/virtualized-table/DraggableVirtualizedTable.stories.js +1 -1
- package/src/features/virtualized-table/__tests__/__snapshots__/BaseVirtualizedTable.test.js.snap +5 -5
- package/src/features/virtualized-table/__tests__/__snapshots__/DraggableVirtualizedTable.test.js.snap +7 -7
- package/src/features/virtualized-table/__tests__/__snapshots__/VirtualizedTable.test.js.snap +19 -19
- package/src/features/virtualized-table-renderers/__tests__/__snapshots__/loadingRowRenderer.test.js.snap +1 -1
- package/src/features/virtualized-table-renderers/__tests__/draggableRowRenderer.test.js +5 -5
- package/src/icon/content/ContentSharing32.stories.tsx +1 -1
- package/src/icon/content/CustomSetup32.stories.tsx +1 -1
- package/src/icon/content/DeviceTrust32.stories.tsx +1 -1
- package/src/icon/content/FileAudio32.stories.tsx +1 -1
- package/src/icon/content/FileBookmark32.stories.tsx +1 -1
- package/src/icon/content/FileBoxNote32.stories.tsx +1 -1
- package/src/icon/content/FileCanvas32.stories.tsx +1 -1
- package/src/icon/content/FileCode32.stories.tsx +1 -1
- package/src/icon/content/FileDefault32.stories.tsx +1 -1
- package/src/icon/content/FileDicom32.stories.tsx +1 -1
- package/src/icon/content/FileDocs32.stories.tsx +1 -1
- package/src/icon/content/FileDwg32.stories.tsx +1 -1
- package/src/icon/content/FileExcel32.stories.tsx +1 -1
- package/src/icon/content/FileIllustrator32.stories.tsx +1 -1
- package/src/icon/content/FileImage32.stories.tsx +1 -1
- package/src/icon/content/FileIndesign32.stories.tsx +1 -1
- package/src/icon/content/FileKeynote32.stories.tsx +1 -1
- package/src/icon/content/FileNumbers32.stories.tsx +1 -1
- package/src/icon/content/FilePages32.stories.tsx +1 -1
- package/src/icon/content/FilePdf32.stories.tsx +1 -1
- package/src/icon/content/FilePhotoshop32.stories.tsx +1 -1
- package/src/icon/content/FilePowerpoint32.stories.tsx +1 -1
- package/src/icon/content/FilePresentation32.stories.tsx +1 -1
- package/src/icon/content/FileSheets32.stories.tsx +1 -1
- package/src/icon/content/FileSlides32.stories.tsx +1 -1
- package/src/icon/content/FileSpreadsheet32.stories.tsx +1 -1
- package/src/icon/content/FileText32.stories.tsx +1 -1
- package/src/icon/content/FileThreeD32.stories.tsx +1 -1
- package/src/icon/content/FileUpload32.stories.tsx +1 -1
- package/src/icon/content/FileVector32.stories.tsx +1 -1
- package/src/icon/content/FileVideo32.stories.tsx +1 -1
- package/src/icon/content/FileWord32.stories.tsx +1 -1
- package/src/icon/content/FileXbd32.stories.tsx +1 -1
- package/src/icon/content/FileXdw32.stories.tsx +1 -1
- package/src/icon/content/FileZip32.stories.tsx +1 -1
- package/src/icon/content/FolderExternal32.stories.tsx +1 -1
- package/src/icon/content/FolderPersonal32.stories.tsx +1 -1
- package/src/icon/content/FolderShared32.stories.tsx +1 -1
- package/src/icon/content/FolderUpload32.stories.tsx +1 -1
- package/src/icon/content/Mobile32.stories.tsx +1 -1
- package/src/icon/content/Notifications32.stories.tsx +1 -1
- package/src/icon/content/PlatformCam32.stories.tsx +1 -1
- package/src/icon/content/PlatformSandbox32.stories.tsx +1 -1
- package/src/icon/content/RetentionPolicyModifiable32.stories.tsx +1 -1
- package/src/icon/content/RetentionPolicyNonModifiable32.stories.tsx +1 -1
- package/src/icon/content/Security32.stories.tsx +1 -1
- package/src/icon/content/SignRequest32.stories.tsx +1 -1
- package/src/icon/content/UserSettings32.stories.tsx +1 -1
- package/src/icon/content/Workflow32.stories.tsx +1 -1
- package/src/icon/content/WorkflowTemplate32.stories.tsx +1 -1
- package/src/icon/fill/Activity16.stories.tsx +1 -1
- package/src/icon/fill/Activity20.stories.tsx +1 -1
- package/src/icon/fill/Alert16.stories.tsx +1 -1
- package/src/icon/fill/AlertBadge16.stories.tsx +1 -1
- package/src/icon/fill/AnnotationsDrawing16.stories.tsx +1 -1
- package/src/icon/fill/AnnotationsHighlight16.stories.tsx +1 -1
- package/src/icon/fill/AnnotationsRegion16.stories.tsx +1 -1
- package/src/icon/fill/Apps16.stories.tsx +1 -1
- package/src/icon/fill/Arrow16.stories.tsx +1 -1
- package/src/icon/fill/ArrowArcRight.stories.tsx +1 -1
- package/src/icon/fill/ArrowForward16.stories.tsx +1 -1
- package/src/icon/fill/ArrowSort16.stories.tsx +1 -1
- package/src/icon/fill/AvatarBadge16.stories.tsx +1 -1
- package/src/icon/fill/BarChart16.stories.tsx +1 -1
- package/src/icon/fill/BoxDev16.stories.tsx +1 -1
- package/src/icon/fill/BoxNotes16.stories.tsx +1 -1
- package/src/icon/fill/Calendar16.stories.tsx +1 -1
- package/src/icon/fill/Caret8.stories.tsx +1 -1
- package/src/icon/fill/CaretBadge16.stories.tsx +1 -1
- package/src/icon/fill/Checkmark16.stories.tsx +1 -1
- package/src/icon/fill/CheckmarkBadge16.stories.tsx +1 -1
- package/src/icon/fill/CircleBackButton24.stories.tsx +1 -1
- package/src/icon/fill/CircleCloseButton24.stories.tsx +1 -1
- package/src/icon/fill/Classify16.stories.tsx +1 -1
- package/src/icon/fill/ClearBadge16.stories.tsx +1 -1
- package/src/icon/fill/ClockBadge16.stories.tsx +1 -1
- package/src/icon/fill/CloudUpload16.stories.tsx +1 -1
- package/src/icon/fill/Code16.stories.tsx +1 -1
- package/src/icon/fill/Collection16.stories.tsx +1 -1
- package/src/icon/fill/CollectionBolt16.stories.tsx +1 -1
- package/src/icon/fill/CollectionPlus16.stories.tsx +1 -1
- package/src/icon/fill/CollectionStar16.stories.tsx +1 -1
- package/src/icon/fill/CreditCard16.stories.tsx +1 -1
- package/src/icon/fill/Download16.stories.tsx +1 -1
- package/src/icon/fill/EmailNotification16.stories.tsx +1 -1
- package/src/icon/fill/ExportArrow16.stories.tsx +1 -1
- package/src/icon/fill/Feed16.stories.tsx +1 -1
- package/src/icon/fill/FileAudio16.stories.tsx +1 -1
- package/src/icon/fill/FileBookmark16.stories.tsx +1 -1
- package/src/icon/fill/FileBoxNote16.stories.tsx +1 -1
- package/src/icon/fill/FileCanvas16.stories.tsx +1 -1
- package/src/icon/fill/FileCode16.stories.tsx +1 -1
- package/src/icon/fill/FileCopy16.stories.tsx +1 -1
- package/src/icon/fill/FileDefault16.stories.tsx +1 -1
- package/src/icon/fill/FileDicom16.stories.tsx +1 -1
- package/src/icon/fill/FileDocs16.stories.tsx +1 -1
- package/src/icon/fill/FileDwg16.stories.tsx +1 -1
- package/src/icon/fill/FileExcel16.stories.tsx +1 -1
- package/src/icon/fill/FileIllustrator16.stories.tsx +1 -1
- package/src/icon/fill/FileImage16.stories.tsx +1 -1
- package/src/icon/fill/FileIndesign16.stories.tsx +1 -1
- package/src/icon/fill/FileKeynote16.stories.tsx +1 -1
- package/src/icon/fill/FileNumbers16.stories.tsx +1 -1
- package/src/icon/fill/FilePages16.stories.tsx +1 -1
- package/src/icon/fill/FilePdf16.stories.tsx +1 -1
- package/src/icon/fill/FilePhotoshop16.stories.tsx +1 -1
- package/src/icon/fill/FilePowerpoint16.stories.tsx +1 -1
- package/src/icon/fill/FilePresentation16.stories.tsx +1 -1
- package/src/icon/fill/FileSheets16.stories.tsx +1 -1
- package/src/icon/fill/FileSlides16.stories.tsx +1 -1
- package/src/icon/fill/FileSpreadsheet16.stories.tsx +1 -1
- package/src/icon/fill/FileText16.stories.tsx +1 -1
- package/src/icon/fill/FileThreeD16.stories.tsx +1 -1
- package/src/icon/fill/FileVector16.stories.tsx +1 -1
- package/src/icon/fill/FileVideo16.stories.tsx +1 -1
- package/src/icon/fill/FileWord16.stories.tsx +1 -1
- package/src/icon/fill/FileZip16.stories.tsx +1 -1
- package/src/icon/fill/Filter16.stories.tsx +1 -1
- package/src/icon/fill/Folder16.stories.tsx +1 -1
- package/src/icon/fill/FolderExternal16.stories.tsx +1 -1
- package/src/icon/fill/FolderPersonal16.stories.tsx +1 -1
- package/src/icon/fill/FolderShared16.stories.tsx +1 -1
- package/src/icon/fill/Gear16.stories.tsx +1 -1
- package/src/icon/fill/GlobeBadge16.stories.tsx +1 -1
- package/src/icon/fill/Hamburger20.stories.tsx +1 -1
- package/src/icon/fill/Help20.stories.tsx +1 -1
- package/src/icon/fill/InProgress16.stories.tsx +1 -1
- package/src/icon/fill/Info16.stories.tsx +1 -1
- package/src/icon/fill/InfoBadge16.stories.tsx +1 -1
- package/src/icon/fill/LightningBolt16.stories.tsx +1 -1
- package/src/icon/fill/Lock16.stories.tsx +1 -1
- package/src/icon/fill/Megaphone20.stories.tsx +1 -1
- package/src/icon/fill/Minus16.stories.tsx +1 -1
- package/src/icon/fill/Move16.stories.tsx +1 -1
- package/src/icon/fill/MoveCopy16.stories.tsx +1 -1
- package/src/icon/fill/Overflow16.stories.tsx +1 -1
- package/src/icon/fill/PaperAirplane16.stories.tsx +1 -1
- package/src/icon/fill/Pencil16.stories.tsx +1 -1
- package/src/icon/fill/Picture16.stories.tsx +1 -1
- package/src/icon/fill/Plus16.stories.tsx +1 -1
- package/src/icon/fill/PlusBadge16.stories.tsx +1 -1
- package/src/icon/fill/PointerChevronDown24.stories.tsx +1 -1
- package/src/icon/fill/Printer16.stories.tsx +1 -1
- package/src/icon/fill/Relay16.stories.tsx +1 -1
- package/src/icon/fill/RelayClassic16.stories.tsx +1 -1
- package/src/icon/fill/Ribbon16.stories.tsx +1 -1
- package/src/icon/fill/Scribble16.stories.tsx +1 -1
- package/src/icon/fill/Search16.stories.tsx +1 -1
- package/src/icon/fill/Sign16.stories.tsx +1 -1
- package/src/icon/fill/SignFieldCheckBox16.stories.tsx +1 -1
- package/src/icon/fill/SignFieldSignature16.stories.tsx +1 -1
- package/src/icon/fill/SignFieldTextInput16.stories.tsx +1 -1
- package/src/icon/fill/SignMe32.stories.tsx +1 -1
- package/src/icon/fill/SignMeOthers32.stories.tsx +1 -1
- package/src/icon/fill/SignOthers32.stories.tsx +1 -1
- package/src/icon/fill/Skills16.stories.tsx +1 -1
- package/src/icon/fill/Tag16.stories.tsx +1 -1
- package/src/icon/fill/Task16.stories.tsx +1 -1
- package/src/icon/fill/Trash16.stories.tsx +1 -1
- package/src/icon/fill/TwoPeople16.stories.tsx +1 -1
- package/src/icon/fill/Upload16.stories.tsx +1 -1
- package/src/icon/fill/UserSettings16.stories.tsx +1 -1
- package/src/icon/fill/Workflow16.stories.tsx +1 -1
- package/src/icon/fill/X16.stories.tsx +1 -1
- package/src/icon/line/AlarmClock16.stories.tsx +1 -1
- package/src/icon/line/AlertBubble16.stories.tsx +1 -1
- package/src/icon/line/Apps16.stories.tsx +1 -1
- package/src/icon/line/ArrowBoxRight16.stories.tsx +1 -1
- package/src/icon/line/Avatar16.stories.tsx +1 -1
- package/src/icon/line/AvatarBadge16.stories.tsx +1 -1
- package/src/icon/line/AvatarPlusBadge16.stories.tsx +1 -1
- package/src/icon/line/AvatarXBadge16.stories.tsx +1 -1
- package/src/icon/line/BoxAi.stories.tsx +1 -1
- package/src/icon/line/BoxDev16.stories.tsx +1 -1
- package/src/icon/line/Bug16.stories.tsx +1 -1
- package/src/icon/line/Checkmark16.stories.tsx +1 -1
- package/src/icon/line/CheckmarkBadge16.stories.tsx +1 -1
- package/src/icon/line/CircleCheck16.stories.tsx +1 -1
- package/src/icon/line/CircleX16.stories.tsx +1 -1
- package/src/icon/line/ClassificationBadge16.stories.tsx +1 -1
- package/src/icon/line/ClockArrow16.stories.tsx +1 -1
- package/src/icon/line/ClockBadge16.stories.tsx +1 -1
- package/src/icon/line/CloudWithArrow16.stories.tsx +1 -1
- package/src/icon/line/CoAuthoringBadge16.stories.tsx +1 -1
- package/src/icon/line/CoEdit16.stories.tsx +1 -1
- package/src/icon/line/Collaborations16.stories.tsx +1 -1
- package/src/icon/line/Collection16.stories.tsx +1 -1
- package/src/icon/line/CollectionBolt16.stories.tsx +1 -1
- package/src/icon/line/CollectionPlus16.stories.tsx +1 -1
- package/src/icon/line/CollectionStar16.stories.tsx +1 -1
- package/src/icon/line/CommentBubble16.stories.tsx +1 -1
- package/src/icon/line/CrosshairRegion32.stories.tsx +1 -1
- package/src/icon/line/DocInfo16.stories.tsx +1 -1
- package/src/icon/line/Download16.stories.tsx +1 -1
- package/src/icon/line/Email16.stories.tsx +1 -1
- package/src/icon/line/EmailAddress16.stories.tsx +1 -1
- package/src/icon/line/EnvelopeBadge16.stories.tsx +1 -1
- package/src/icon/line/ExclamationMarkBadge16.stories.tsx +1 -1
- package/src/icon/line/ExportArrow16.stories.tsx +1 -1
- package/src/icon/line/FileDescription16.stories.tsx +1 -1
- package/src/icon/line/Folder16.stories.tsx +1 -1
- package/src/icon/line/Gear16.stories.tsx +1 -1
- package/src/icon/line/GenericCopy16.stories.tsx +1 -1
- package/src/icon/line/GlobeBadge16.stories.tsx +1 -1
- package/src/icon/line/Help16.stories.tsx +1 -1
- package/src/icon/line/Hidden16.stories.tsx +1 -1
- package/src/icon/line/History16.stories.tsx +1 -1
- package/src/icon/line/InfoBadge16.stories.tsx +1 -1
- package/src/icon/line/Key16.stories.tsx +1 -1
- package/src/icon/line/Link16.stories.tsx +1 -1
- package/src/icon/line/LinkBadge16.stories.tsx +1 -1
- package/src/icon/line/List16.stories.tsx +1 -1
- package/src/icon/line/Lock16.stories.tsx +1 -1
- package/src/icon/line/LockBadge16.stories.tsx +1 -1
- package/src/icon/line/MetadataBadge16.stories.tsx +1 -1
- package/src/icon/line/MoveCopy16.stories.tsx +1 -1
- package/src/icon/line/Pencil16.stories.tsx +1 -1
- package/src/icon/line/PencilBadge16.stories.tsx +1 -1
- package/src/icon/line/Plane16.stories.tsx +1 -1
- package/src/icon/line/Plus16.stories.tsx +1 -1
- package/src/icon/line/Power16.stories.tsx +1 -1
- package/src/icon/line/Question16.stories.tsx +1 -1
- package/src/icon/line/Redo16.stories.tsx +1 -1
- package/src/icon/line/Relay16.stories.tsx +1 -1
- package/src/icon/line/Report16.stories.tsx +1 -1
- package/src/icon/line/Retry16.stories.tsx +1 -1
- package/src/icon/line/Rocket16.stories.tsx +1 -1
- package/src/icon/line/RotatingArrows16.stories.tsx +1 -1
- package/src/icon/line/Sharrow16.stories.tsx +1 -1
- package/src/icon/line/Shield16.stories.tsx +1 -1
- package/src/icon/line/Sign16.stories.tsx +1 -1
- package/src/icon/line/SignTinycon16.stories.tsx +1 -1
- package/src/icon/line/Star16.stories.tsx +1 -1
- package/src/icon/line/SyncArrows16.stories.tsx +1 -1
- package/src/icon/line/Template16.stories.tsx +1 -1
- package/src/icon/line/TextLeft16.stories.tsx +1 -1
- package/src/icon/line/Tool16.stories.tsx +1 -1
- package/src/icon/line/Trash16.stories.tsx +1 -1
- package/src/icon/line/TriangleAlert16.stories.tsx +1 -1
- package/src/icon/line/Undo16.stories.tsx +1 -1
- package/src/icon/line/Unlock16.stories.tsx +1 -1
- package/src/icon/line/Upload16.stories.tsx +1 -1
- package/src/icon/line/Video16.stories.tsx +1 -1
- package/src/icon/line/View16.stories.tsx +1 -1
- package/src/icon/line/XBadge16.stories.tsx +1 -1
- package/src/icon/logo/AccountBilling32.stories.tsx +1 -1
- package/src/icon/logo/AdminFaq32.stories.tsx +1 -1
- package/src/icon/logo/AdminReferences32.stories.tsx +1 -1
- package/src/icon/logo/AdobeAcrobat32.stories.tsx +1 -1
- package/src/icon/logo/Apps32.stories.tsx +1 -1
- package/src/icon/logo/BoxAiLogo.stories.tsx +1 -1
- package/src/icon/logo/BoxLogo.stories.tsx +1 -1
- package/src/icon/logo/BoxSign28.stories.tsx +1 -1
- package/src/icon/logo/BoxSign32.stories.tsx +1 -1
- package/src/icon/logo/ContentSharing32.stories.tsx +1 -1
- package/src/icon/logo/CustomSetup32.stories.tsx +1 -1
- package/src/icon/logo/DeviceTrust32.stories.tsx +1 -1
- package/src/icon/logo/HelpArticle32.stories.tsx +1 -1
- package/src/icon/logo/HowToGuides32.stories.tsx +1 -1
- package/src/icon/logo/IconBoxApp512.stories.tsx +1 -1
- package/src/icon/logo/KeynoteForMac32.stories.tsx +1 -1
- package/src/icon/logo/ManageContent32.stories.tsx +1 -1
- package/src/icon/logo/ManageUsers32.stories.tsx +1 -1
- package/src/icon/logo/Mobile32.stories.tsx +1 -1
- package/src/icon/logo/Notifications32.stories.tsx +1 -1
- package/src/icon/logo/NumbersForMac32.stories.tsx +1 -1
- package/src/icon/logo/PagesForMac32.stories.tsx +1 -1
- package/src/icon/logo/Reporting32.stories.tsx +1 -1
- package/src/icon/logo/Security32.stories.tsx +1 -1
- package/src/icon/logo/TroubleShootingTools32.stories.tsx +1 -1
- package/src/icon/logo/UserSettings32.stories.tsx +1 -1
- package/src/icons/collections/IconCollections.stories.tsx +1 -1
- package/src/icons/collections/IconCollectionsAdd.stories.tsx +1 -1
- package/src/icons/collections/IconCollectionsBolt.stories.tsx +1 -1
- package/src/icons/collections/IconCollectionsFilled.stories.tsx +1 -1
- package/src/icons/collections/IconCollectionsStar.stories.tsx +1 -1
- package/src/icons/collections/IconCollectionsStarFilled.stories.tsx +1 -1
- package/src/icons/collections/collections.stories.tsx +1 -1
- package/src/icons/icons.stories.tsx +1 -1
- package/src/icons/illustrations/__tests__/__snapshots__/PeopleOpeningEnvelopeIllustration.test.tsx.snap +6 -6
- package/src/icons/states/__tests__/__snapshots__/EnvelopeTrophyState.test.tsx.snap +6 -6
- package/src/icons/two-toned/IconAnnotation.tsx +1 -1
- package/src/illustration/AllNewBox140.stories.tsx +1 -1
- package/src/illustration/AppSupport140.stories.tsx +1 -1
- package/src/illustration/Bell140.stories.tsx +1 -1
- package/src/illustration/BoxDrive140.stories.tsx +1 -1
- package/src/illustration/BoxMobile140.stories.tsx +1 -1
- package/src/illustration/BudgetApproval56.stories.tsx +1 -1
- package/src/illustration/Certificate56.stories.tsx +1 -1
- package/src/illustration/CertificateSigning56.stories.tsx +1 -1
- package/src/illustration/ChangeOrder56.stories.tsx +1 -1
- package/src/illustration/Clock140.stories.tsx +1 -1
- package/src/illustration/CollectionStar140.stories.tsx +1 -1
- package/src/illustration/ContractorId56.stories.tsx +1 -1
- package/src/illustration/CreativeApproval56.stories.tsx +1 -1
- package/src/illustration/CreativeAssets56.stories.tsx +1 -1
- package/src/illustration/CustomApp56.stories.tsx +1 -1
- package/src/illustration/CustomSkill56.stories.tsx +1 -1
- package/src/illustration/CustomTemplate56.stories.tsx +1 -1
- package/src/illustration/CustomerSupport140.stories.tsx +1 -1
- package/src/illustration/DiscoDanceParty140.stories.tsx +1 -1
- package/src/illustration/Discount140.stories.tsx +1 -1
- package/src/illustration/EmailVerification140.stories.tsx +1 -1
- package/src/illustration/EmployeeId56.stories.tsx +1 -1
- package/src/illustration/EmployeeReview56.stories.tsx +1 -1
- package/src/illustration/EmptyStateDetails.stories.tsx +1 -1
- package/src/illustration/EmptyStateFolder140.stories.tsx +1 -1
- package/src/illustration/EmptyStatePreviewActivity140.stories.tsx +1 -1
- package/src/illustration/Envelope140.stories.tsx +1 -1
- package/src/illustration/ErrorState404140.stories.tsx +1 -1
- package/src/illustration/Files.stories.tsx +1 -1
- package/src/illustration/Files140.stories.tsx +1 -1
- package/src/illustration/FinanceContract56.stories.tsx +1 -1
- package/src/illustration/FolderArrow140.stories.tsx +1 -1
- package/src/illustration/FolderFloat140.stories.tsx +1 -1
- package/src/illustration/FolderPlane140.stories.tsx +1 -1
- package/src/illustration/FolderStar140.stories.tsx +1 -1
- package/src/illustration/Gavel56.stories.tsx +1 -1
- package/src/illustration/Handshake56.stories.tsx +1 -1
- package/src/illustration/HandshakeAgreement56.stories.tsx +1 -1
- package/src/illustration/HatWand140.stories.tsx +1 -1
- package/src/illustration/Keynote56.stories.tsx +1 -1
- package/src/illustration/LegalContract56.stories.tsx +1 -1
- package/src/illustration/LegalFolder56.stories.tsx +1 -1
- package/src/illustration/LimitedApp56.stories.tsx +1 -1
- package/src/illustration/MarketingPlan56.stories.tsx +1 -1
- package/src/illustration/Megaphone140.stories.tsx +1 -1
- package/src/illustration/MetricsReview56.stories.tsx +1 -1
- package/src/illustration/Microphone140.stories.tsx +1 -1
- package/src/illustration/Missing140.stories.tsx +1 -1
- package/src/illustration/MoneyStack56.stories.tsx +1 -1
- package/src/illustration/MonthlyReport56.stories.tsx +1 -1
- package/src/illustration/NotesStar140.stories.tsx +1 -1
- package/src/illustration/PlanSelection140.stories.tsx +1 -1
- package/src/illustration/Playbook56.stories.tsx +1 -1
- package/src/illustration/ProjectFolder56.stories.tsx +1 -1
- package/src/illustration/RecentFiles140.stories.tsx +1 -1
- package/src/illustration/RelayPlanet140.stories.tsx +1 -1
- package/src/illustration/SalesContract56.stories.tsx +1 -1
- package/src/illustration/Sandbox140.stories.tsx +1 -1
- package/src/illustration/TaskList56.stories.tsx +1 -1
- package/src/illustration/Transfers140.stories.tsx +1 -1
- package/src/illustration/TrashEmpty140.stories.tsx +1 -1
- package/src/illustration/Unplugged140.stories.tsx +1 -1
- package/src/illustration/UploadCloud140.stories.tsx +1 -1
- package/src/illustration/UserOrbit56.stories.tsx +1 -1
- package/src/styles/colors.stories.tsx +1 -1
- package/src/styles/common/_buttons.scss +1 -1
- package/src/styles/constants/_buttons.scss +1 -0
- package/src/styles/typography.stories.tsx +1 -1
- package/src/utils/Browser.js +10 -0
- package/src/utils/__tests__/Browser.test.js +28 -0
- package/src/utils/__tests__/__snapshots__/createTheme.test.js.snap +35 -35
- package/src/utils/__tests__/fields.test.js +2 -0
- package/src/utils/__tests__/webcrypto.test.js +10 -0
- package/src/utils/comparator.js +1 -1
- package/src/utils/createTheme.stories.js +1 -1
- package/src/utils/fields.js +3 -0
- package/src/utils/flatten.js +6 -1
- package/src/utils/size.js +5 -5
- package/src/utils/sorter.js +1 -1
|
@@ -73,7 +73,7 @@ import type { Translations } from './flowTypes';
|
|
|
73
73
|
import type { FeatureConfig } from '../common/feature-checking';
|
|
74
74
|
import './ActivitySidebar.scss';
|
|
75
75
|
|
|
76
|
-
import {
|
|
76
|
+
import type { OnAnnotationEdit, OnAnnotationStatusChange } from './activity-feed/comment/types';
|
|
77
77
|
|
|
78
78
|
type ExternalProps = {
|
|
79
79
|
activeFeedEntryId?: string,
|
|
@@ -224,7 +224,7 @@ class ActivitySidebar extends React.PureComponent<Props, State> {
|
|
|
224
224
|
this.fetchFeedItems();
|
|
225
225
|
};
|
|
226
226
|
|
|
227
|
-
handleAnnotationStatusChange = (id
|
|
227
|
+
handleAnnotationStatusChange: OnAnnotationStatusChange = ({ id, permissions, status }) => {
|
|
228
228
|
const { api, emitAnnotationUpdateEvent, file } = this.props;
|
|
229
229
|
|
|
230
230
|
emitAnnotationUpdateEvent({ id, status }, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/content-sidebar/ActivitySidebar.js"],"names":["React","classNames","debounce","flow","getProp","noop","uniqueId","FormattedMessage","generatePath","ActivityFeed","AddTaskButton","API","messages","SidebarContent","WithAnnotatorContextProps","withAnnotatorContext","EVENT_DATA_READY","EVENT_JS_READY","getBadUserError","mark","withAPIContext","withErrorBoundary","withFeatureConsumer","isFeatureEnabled","withLogger","withRouterAndRef","ActivitySidebarFilter","ACTIVITY_FILTER_OPTION_ALL","ACTIVITY_FILTER_OPTION_RESOLVED","ACTIVITY_FILTER_OPTION_TASKS","ACTIVITY_FILTER_OPTION_UNRESOLVED","DEFAULT_COLLAB_DEBOUNCE","ERROR_CODE_FETCH_ACTIVITY","FEED_ITEM_TYPE_ANNOTATION","FEED_ITEM_TYPE_COMMENT","FEED_ITEM_TYPE_TASK","FEED_ITEM_TYPE_VERSION","ORIGIN_ACTIVITY_SIDEBAR","SIDEBAR_VIEW_ACTIVITY","TASK_COMPLETION_RULE_ALL","activityFeedInlineError","inlineError","title","errorOccured","content","activityFeedItemApiError","MARK_NAME_DATA_LOADING","MARK_NAME_DATA_READY","MARK_NAME_JS_READY","ActivitySidebar","PureComponent","constructor","props","id","permissions","api","emitAnnotationRemoveEvent","file","getFeedAPI","deleteAnnotation","deleteAnnotationSuccess","bind","feedErrorCallback","fetchFeedItems","text","emitAnnotationUpdateEvent","description","message","updateAnnotation","undefined","annotation","feedSuccessCallback","status","e","code","contextInfo","errorCallback","assignees","taskType","dueAt","completionRule","onSuccess","onError","currentUser","successCallback","createTaskNew","task","onTaskDelete","deleteTaskNew","taskId","onTaskUpdate","updateTaskNew","taskAssignmentId","onTaskAssignmentUpdate","updateTaskCollaborator","hasReplies","onCommentDelete","comment","deleteThreadedComment","deleteComment","parentId","emitAnnotationReplyDeleteEvent","deleteReply","deleteReplySuccessCallback","hasMention","onCommentUpdate","updateThreadedComment","updateComment","emitAnnotationReplyUpdateEvent","tagged_message","updateReply","updateReplySuccessCallback","error","replies","activeFeedEntryId","history","feedItems","state","feedAPI","length","some","item","getCommentFeedItemByReplyId","replace","getActiveCommentPath","updateFeedItem","reply","onCommentCreate","createThreadedComment","createComment","parentType","emitAnnotationReplyCreateEvent","eventRequestId","createReply","createReplySuccessCallback","deleteAppActivity","getActiveFeedEntryData","then","type","isActiveEntryInFeed","isItemTypeComment","Promise","resolve","getFeedItemsWithReplies","updatedItems","fetchFeedItemsSuccessCallback","catch","fetchFeedItemsErrorCallback","fileId","logger","onDataReadyMetric","endMarkName","startMarkName","setState","activityFeedError","errors","Array","isArray","Error","showNotification","map","feedItem","reject","fetchReplies","updatedFeedItems","getCommentFeedItemWithReplies","console","collaborators","entries","approverSelectorContacts","contactsLoaded","mentionSelectorContacts","searchStr","getFileCollaboratorsAPI","getCollaboratorsWithQuery","getApproverContactsSuccessCallback","includeGroups","getMentionContactsSuccessCallback","itemId","find","isItemTypeFocusable","replyId","getFocusableFeedItemById","activeFeedEntryType","firstLevelItem","firstLevelItemWithActiveReply","fetchThreadedComment","parent","parentItem","userId","getUsersAPI","getAvatarUrlWithAccessToken","file_version","nextActiveAnnotationId","emitActiveAnnotationChangeEvent","getAnnotationsMatchPath","getAnnotationsPath","location","onAnnotationSelect","annotationFileVersionId","currentFileVersionId","match","selectedFileVersionId","push","onFilterChange","feedItemsStatusFilter","filter","isDisabled","hasTasks","getApprover","getAvatarUrl","createTask","onTaskModalClose","approvers","getApproverWithQuery","features","shouldShowActivityFeedFilter","shouldShowAdditionalFilterOptions","activityFilterOptions","selectedStatus","handleItemsFiltered","renderActivitySidebarFilter","renderAddTaskButton","shouldHideTitle","sidebarActivityTitle","onReadyMetric","componentDidMount","shouldRefreshCache","shouldDestroy","shouldShowReplies","shouldShowTasks","hasVersions","shouldShowVersions","shouldFetchReplies","shouldShowAppActivity","shouldShowAnnotations","shouldUseUAA","fetchRepliesForFeedItems","commentId","sidebar","refresh","render","currentUserError","elementId","onVersionHistoryClick","getUserProfileUrl","onTaskView","isNewThreadedRepliesEnabled","renderActions","renderTitle","getFilteredFeedItems","getMention","handleAnnotationDelete","handleAnnotationEdit","handleAnnotationSelect","handleAnnotationStatusChange","updateReplies","getReplies","updateTaskAssignment","deleteTask","updateTask","annotatorState","onTaskCreate","onVersionChange","ActivitySidebarComponent"],"mappings":"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","sourcesContent":["/**\n * @flow\n * @file Activity feed sidebar component\n * @author Box\n */\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport debounce from 'lodash/debounce';\nimport flow from 'lodash/flow';\nimport getProp from 'lodash/get';\nimport noop from 'lodash/noop';\nimport uniqueId from 'lodash/uniqueId';\nimport { FormattedMessage } from 'react-intl';\nimport { generatePath, type ContextRouter } from 'react-router-dom';\nimport ActivityFeed from './activity-feed';\nimport AddTaskButton from './AddTaskButton';\nimport API from '../../api';\nimport messages from '../common/messages';\nimport SidebarContent from './SidebarContent';\nimport { WithAnnotatorContextProps, withAnnotatorContext } from '../common/annotator-context';\nimport { EVENT_DATA_READY, EVENT_JS_READY } from '../common/logger/constants';\nimport { getBadUserError } from '../../utils/error';\nimport { mark } from '../../utils/performance';\nimport { withAPIContext } from '../common/api-context';\nimport { withErrorBoundary } from '../common/error-boundary';\nimport { withFeatureConsumer, isFeatureEnabled } from '../common/feature-checking';\nimport { withLogger } from '../common/logger';\nimport { withRouterAndRef } from '../common/routing';\nimport ActivitySidebarFilter from './ActivitySidebarFilter';\nimport {\n ACTIVITY_FILTER_OPTION_ALL,\n ACTIVITY_FILTER_OPTION_RESOLVED,\n ACTIVITY_FILTER_OPTION_TASKS,\n ACTIVITY_FILTER_OPTION_UNRESOLVED,\n DEFAULT_COLLAB_DEBOUNCE,\n ERROR_CODE_FETCH_ACTIVITY,\n FEED_ITEM_TYPE_ANNOTATION,\n FEED_ITEM_TYPE_COMMENT,\n FEED_ITEM_TYPE_TASK,\n FEED_ITEM_TYPE_VERSION,\n ORIGIN_ACTIVITY_SIDEBAR,\n SIDEBAR_VIEW_ACTIVITY,\n TASK_COMPLETION_RULE_ALL,\n} from '../../constants';\nimport type {\n TaskCompletionRule,\n TaskType,\n TaskNew,\n TaskUpdatePayload,\n TaskCollabStatus,\n} from '../../common/types/tasks';\nimport type {\n Annotation,\n AnnotationPermission,\n ActivityFilterItemType,\n ActivityFilterOption,\n BoxCommentPermission,\n Comment,\n CommentFeedItemType,\n FocusableFeedItem,\n FocusableFeedItemType,\n FeedItem,\n FeedItems,\n FeedItemStatus,\n FeedItemType,\n} from '../../common/types/feed';\nimport type { ErrorContextProps, ElementsXhrError } from '../../common/types/api';\nimport type { WithLoggerProps } from '../../common/types/logging';\nimport type { SelectorItems, User, UserMini, GroupMini, BoxItem } from '../../common/types/core';\nimport type { Errors, GetProfileUrlCallback } from '../common/flowTypes';\nimport type { Translations } from './flowTypes';\nimport type { FeatureConfig } from '../common/feature-checking';\nimport './ActivitySidebar.scss';\n\nimport { type OnAnnotationEdit } from './activity-feed/comment/types';\n\ntype ExternalProps = {\n activeFeedEntryId?: string,\n activeFeedEntryType?: FocusableFeedItemType,\n currentUser?: User,\n currentUserError?: Errors,\n getUserProfileUrl?: GetProfileUrlCallback,\n hasReplies?: boolean,\n hasTasks?: boolean,\n hasVersions?: boolean,\n onCommentCreate: Function,\n onCommentDelete: (comment: Comment) => any,\n onCommentUpdate: () => any,\n onTaskAssignmentUpdate: Function,\n onTaskCreate: Function,\n onTaskDelete: (id: string) => any,\n onTaskUpdate: () => any,\n onTaskView: (id: string, isCreator: boolean) => any,\n} & ErrorContextProps &\n WithAnnotatorContextProps;\n\ntype PropsWithoutContext = {\n elementId: string,\n file: BoxItem,\n hasSidebarInitialized?: boolean,\n isDisabled: boolean,\n onAnnotationSelect: Function,\n onFilterChange: (status?: ActivityFilterItemType) => void,\n onVersionChange: Function,\n onVersionHistoryClick?: Function,\n translations?: Translations,\n} & ExternalProps &\n WithLoggerProps &\n ContextRouter;\n\ntype Props = {\n api: API,\n features: FeatureConfig,\n} & PropsWithoutContext;\n\ntype State = {\n activityFeedError?: Errors,\n approverSelectorContacts: SelectorItems<UserMini | GroupMini>,\n contactsLoaded?: boolean,\n feedItems?: FeedItems,\n feedItemsStatusFilter?: ActivityFilterItemType,\n mentionSelectorContacts?: SelectorItems<UserMini>,\n};\n\nexport const activityFeedInlineError: Errors = {\n inlineError: {\n title: messages.errorOccured,\n content: messages.activityFeedItemApiError,\n },\n};\n\nconst MARK_NAME_DATA_LOADING = `${ORIGIN_ACTIVITY_SIDEBAR}_data_loading`;\nconst MARK_NAME_DATA_READY = `${ORIGIN_ACTIVITY_SIDEBAR}_${EVENT_DATA_READY}`;\nconst MARK_NAME_JS_READY = `${ORIGIN_ACTIVITY_SIDEBAR}_${EVENT_JS_READY}`;\n\nmark(MARK_NAME_JS_READY);\n\nclass ActivitySidebar extends React.PureComponent<Props, State> {\n static defaultProps = {\n annotatorState: {},\n emitActiveAnnotationChangeEvent: noop,\n emitAnnotationRemoveEvent: noop,\n emitAnnotationReplyCreateEvent: noop,\n emitAnnotationReplyDeleteEvent: noop,\n emitAnnotationReplyUpdateEvent: noop,\n emitAnnotationUpdateEvent: noop,\n getAnnotationsMatchPath: noop,\n getAnnotationsPath: noop,\n hasReplies: false,\n hasTasks: true,\n hasVersions: true,\n isDisabled: false,\n onAnnotationSelect: noop,\n onCommentCreate: noop,\n onCommentDelete: noop,\n onCommentUpdate: noop,\n onFilterChange: noop,\n onTaskAssignmentUpdate: noop,\n onTaskCreate: noop,\n onTaskDelete: noop,\n onTaskUpdate: noop,\n onVersionChange: noop,\n onVersionHistoryClick: noop,\n };\n\n constructor(props: Props) {\n super(props);\n // eslint-disable-next-line react/prop-types\n const { logger } = this.props;\n\n mark(MARK_NAME_DATA_LOADING);\n\n logger.onReadyMetric({\n endMarkName: MARK_NAME_JS_READY,\n });\n this.state = {};\n }\n\n componentDidMount() {\n this.fetchFeedItems(true);\n }\n\n handleAnnotationDelete = ({ id, permissions }: { id: string, permissions: AnnotationPermission }) => {\n const { api, emitAnnotationRemoveEvent, file } = this.props;\n\n emitAnnotationRemoveEvent(id, true);\n api.getFeedAPI(false).deleteAnnotation(\n file,\n id,\n permissions,\n this.deleteAnnotationSuccess.bind(this, id),\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n handleAnnotationEdit: OnAnnotationEdit = ({ id, text, permissions }) => {\n const { api, emitAnnotationUpdateEvent, file } = this.props;\n\n emitAnnotationUpdateEvent(\n {\n id,\n description: {\n message: text,\n },\n },\n true,\n );\n api.getFeedAPI(false).updateAnnotation(\n file,\n id,\n text,\n undefined,\n permissions,\n (annotation: Annotation) => {\n emitAnnotationUpdateEvent(annotation);\n this.feedSuccessCallback();\n },\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n handleAnnotationStatusChange = (id: string, status: FeedItemStatus, permissions: AnnotationPermission) => {\n const { api, emitAnnotationUpdateEvent, file } = this.props;\n\n emitAnnotationUpdateEvent({ id, status }, true);\n api.getFeedAPI(false).updateAnnotation(\n file,\n id,\n undefined,\n status,\n permissions,\n (annotation: Annotation) => {\n emitAnnotationUpdateEvent(annotation);\n this.feedSuccessCallback();\n },\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n deleteAnnotationSuccess(id: string) {\n const { emitAnnotationRemoveEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationRemoveEvent(id);\n }\n\n /**\n * Success callback for fetching feed items\n */\n feedSuccessCallback = (): void => {\n this.fetchFeedItems();\n };\n\n /**\n * Error callback for fetching feed items\n *\n * @param {Error} e - the error which occured\n * @param {Error} code - the code for the error\n * @param {Object} contextInfo - the context info for the error\n */\n feedErrorCallback = (e: ElementsXhrError, code: string, contextInfo?: Object) => {\n this.errorCallback(e, code, contextInfo);\n this.fetchFeedItems();\n };\n\n createTask = (\n message: string,\n assignees: SelectorItems<>,\n taskType: TaskType,\n dueAt: ?string,\n completionRule: TaskCompletionRule,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, currentUser, file } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n const errorCallback = (e, code, contextInfo) => {\n if (onError) {\n onError(e, code, contextInfo);\n }\n this.feedErrorCallback(e, code, contextInfo);\n };\n const successCallback = () => {\n if (onSuccess) {\n onSuccess();\n }\n this.feedSuccessCallback();\n };\n\n api.getFeedAPI(false).createTaskNew(\n file,\n currentUser,\n message,\n assignees,\n taskType,\n dueAt,\n completionRule,\n successCallback,\n errorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n deleteTask = (task: TaskNew): void => {\n const { file, api, onTaskDelete } = this.props;\n api.getFeedAPI(false).deleteTaskNew(\n file,\n task,\n (taskId: string) => {\n this.feedSuccessCallback();\n onTaskDelete(taskId);\n },\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n updateTask = (task: TaskUpdatePayload, onSuccess: ?Function, onError: ?Function): void => {\n const { api, file, onTaskUpdate } = this.props;\n const errorCallback = (e, code) => {\n if (onError) {\n onError(e, code);\n }\n this.feedErrorCallback(e, code);\n };\n const successCallback = () => {\n this.feedSuccessCallback();\n\n if (onSuccess) {\n onSuccess();\n }\n\n onTaskUpdate();\n };\n\n api.getFeedAPI(false).updateTaskNew(file, task, successCallback, errorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n updateTaskAssignment = (taskId: string, taskAssignmentId: string, status: TaskCollabStatus): void => {\n const { api, currentUser = {}, file, onTaskAssignmentUpdate } = this.props;\n\n const successCallback = () => {\n this.feedSuccessCallback();\n onTaskAssignmentUpdate(taskId, taskAssignmentId, status, currentUser.id);\n };\n\n api.getFeedAPI(false).updateTaskCollaborator(\n file,\n taskId,\n taskAssignmentId,\n status,\n successCallback,\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Deletes a comment via the API.\n *\n * @param {Object} args - A subset of the comment\n * @return void\n */\n deleteComment = ({ id, permissions }: { id: string, permissions: BoxCommentPermission }): void => {\n const { api, file, hasReplies, onCommentDelete } = this.props;\n\n const successCallback = (comment: Comment) => {\n this.feedSuccessCallback();\n onCommentDelete(comment);\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).deleteThreadedComment(file, id, permissions, successCallback, this.feedErrorCallback);\n } else {\n api.getFeedAPI(false).deleteComment(file, id, permissions, successCallback, this.feedErrorCallback);\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Deletes a reply via the API.\n *\n * @param {Object} args - A subset of the comment\n * @return void\n */\n deleteReply = ({\n id,\n parentId,\n permissions,\n }: {\n id: string,\n parentId: string,\n permissions: BoxCommentPermission,\n }): void => {\n const { api, emitAnnotationReplyDeleteEvent, file } = this.props;\n\n emitAnnotationReplyDeleteEvent(id, parentId, true);\n api.getFeedAPI(false).deleteReply(\n file,\n id,\n parentId,\n permissions,\n this.deleteReplySuccessCallback.bind(this, id, parentId),\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful deletion of a reply\n *\n * @private\n * @param {string} id - The id of the reply\n * @param {string} parentId - The id of the reply's parent item\n * @return {void}\n */\n deleteReplySuccessCallback = (id: string, parentId: string) => {\n const { emitAnnotationReplyDeleteEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyDeleteEvent(id, parentId);\n };\n\n updateComment = (\n id: string,\n text?: string,\n status?: FeedItemStatus,\n hasMention: boolean,\n permissions: BoxCommentPermission,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, file, hasReplies, onCommentUpdate } = this.props;\n\n const errorCallback = (e, code) => {\n if (onError) {\n onError(e, code);\n }\n this.feedErrorCallback(e, code);\n };\n\n const successCallback = () => {\n this.feedSuccessCallback();\n if (onSuccess) {\n onSuccess();\n }\n onCommentUpdate();\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).updateThreadedComment(\n file,\n id,\n text,\n status,\n permissions,\n successCallback,\n errorCallback,\n );\n } else {\n api.getFeedAPI(false).updateComment(\n file,\n id,\n text || '',\n hasMention,\n permissions,\n successCallback,\n errorCallback,\n );\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Updates a reply\n *\n * @param {string} id - id of the reply\n * @param {string} parentId - id of the parent item\n * @param {string} text - the reply updated text\n * @param {BoxCommentPermission} permissions - permissions associated with the reply\n * @param {Function} onSuccess - the success callback\n * @param {Function} onError - the error callback\n * @return {void}\n */\n updateReply = (\n id: string,\n parentId: string,\n text: string,\n permissions: BoxCommentPermission,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, emitAnnotationReplyUpdateEvent, file } = this.props;\n\n emitAnnotationReplyUpdateEvent({ id, tagged_message: text }, parentId, true);\n api.getFeedAPI(false).updateReply(\n file,\n id,\n parentId,\n text,\n permissions,\n this.updateReplySuccessCallback.bind(this, parentId, onSuccess),\n (error, code) => {\n if (onError) {\n onError(error, code);\n }\n this.feedErrorCallback(error, code);\n },\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Updates replies of a comment or annotation in the Feed\n *\n * @param {string} id - id of the feed item\n * @param {Array<Comment>} replies - replies\n * @return {void}\n */\n updateReplies = (id: string, replies: Array<Comment>) => {\n const { activeFeedEntryId, api, file, history } = this.props;\n const { feedItems } = this.state;\n\n if (!feedItems) {\n return;\n }\n\n const feedAPI = api.getFeedAPI(false);\n feedAPI.file = file;\n\n // Detect if replies are being hidden and activeFeedEntryId belongs to a reply\n // that is in currently being updated parent, in order to disable active item\n if (\n activeFeedEntryId &&\n replies.length === 1 &&\n feedItems.some(\n (item: FeedItem) =>\n item.id === id && item === this.getCommentFeedItemByReplyId(feedItems, activeFeedEntryId),\n )\n ) {\n history.replace(this.getActiveCommentPath());\n }\n\n feedAPI.updateFeedItem({ replies }, id);\n\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful update of a reply\n *\n * @private\n * @param {string} parentId - The id of the reply's parent item\n * @param {Function} onSuccess - the success callback\n * @param {Comment} reply - The reply comment object\n * @return {void}\n */\n updateReplySuccessCallback = (parentId: string, onSuccess: ?Function, reply: Comment) => {\n const { emitAnnotationReplyUpdateEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyUpdateEvent(reply, parentId);\n if (onSuccess) {\n onSuccess();\n }\n };\n\n /**\n * Posts a new comment to the API\n *\n * @param {string} text - The comment's text\n * @param {boolean} hasMention - The comment's text\n * @return {void}\n */\n createComment = (text: string, hasMention: boolean): void => {\n const { api, currentUser, file, hasReplies, onCommentCreate } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n\n const successCallback = (comment: Comment) => {\n onCommentCreate(comment);\n this.feedSuccessCallback();\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).createThreadedComment(\n file,\n currentUser,\n text,\n successCallback,\n this.feedErrorCallback,\n );\n } else {\n api.getFeedAPI(false).createComment(\n file,\n currentUser,\n text,\n hasMention,\n successCallback,\n this.feedErrorCallback,\n );\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Posts a new reply to the API\n *\n * @param {string} parentId - The id of the parent item\n * @param {CommentFeedItemType} parentType - The type of the parent item\n * @param {string} text - The text of reply\n * @return {void}\n */\n createReply = (parentId: string, parentType: CommentFeedItemType, text: string): void => {\n const { api, currentUser, emitAnnotationReplyCreateEvent, file } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n\n const eventRequestId = uniqueId('comment_');\n emitAnnotationReplyCreateEvent({ tagged_message: text }, eventRequestId, parentId, true);\n api.getFeedAPI(false).createReply(\n file,\n currentUser,\n parentId,\n parentType,\n text,\n this.createReplySuccessCallback.bind(this, eventRequestId, parentId),\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful creation of a reply\n *\n * @private\n * @param {string} eventRequestId - The id of the parent item\n * @param {string} parentId - The id of the reply's parent item\n * @param {Comment} reply - The reply comment object\n * @return {void}\n */\n createReplySuccessCallback = (eventRequestId: string, parentId: string, reply: Comment) => {\n const { emitAnnotationReplyCreateEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyCreateEvent(reply, eventRequestId, parentId);\n };\n\n /**\n * Deletes an app activity item via the API.\n *\n * @param {Object} args - A subset of the app activity\n * @return void\n */\n deleteAppActivity = ({ id }: { id: string }): void => {\n const { api, file } = this.props;\n\n api.getFeedAPI(false).deleteAppActivity(file, id, this.feedSuccessCallback, this.feedErrorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Fetches the feed items for the sidebar\n *\n * @param {boolean} shouldRefreshCache true if the cache should be refreshed\n * @param {boolean} shouldDestroy true if the api factory should be destroyed\n */\n fetchFeedItems(shouldRefreshCache: boolean = false, shouldDestroy: boolean = false) {\n const {\n activeFeedEntryId,\n activeFeedEntryType,\n api,\n file,\n features,\n hasReplies: shouldShowReplies,\n hasTasks: shouldShowTasks,\n hasVersions: shouldShowVersions,\n } = this.props;\n const shouldFetchReplies =\n shouldRefreshCache &&\n shouldShowReplies &&\n activeFeedEntryId &&\n activeFeedEntryType === FEED_ITEM_TYPE_COMMENT;\n const shouldShowAppActivity = isFeatureEnabled(features, 'activityFeed.appActivity.enabled');\n const shouldShowAnnotations = isFeatureEnabled(features, 'activityFeed.annotations.enabled');\n const shouldUseUAA = isFeatureEnabled(features, 'activityFeed.uaaIntegration.enabled');\n\n api.getFeedAPI(shouldDestroy).feedItems(\n file,\n shouldRefreshCache,\n shouldFetchReplies ? this.fetchRepliesForFeedItems : this.fetchFeedItemsSuccessCallback,\n this.fetchFeedItemsErrorCallback,\n this.errorCallback,\n {\n shouldShowAnnotations,\n shouldShowAppActivity,\n shouldShowReplies,\n shouldShowTasks,\n shouldShowVersions,\n shouldUseUAA,\n },\n );\n }\n\n fetchRepliesForFeedItems = (feedItems: FeedItems) => {\n const { activeFeedEntryId } = this.props;\n\n if (!activeFeedEntryId) {\n return;\n }\n\n this.getActiveFeedEntryData(feedItems)\n .then(({ id, type }) => {\n if (\n !id ||\n !type ||\n this.isActiveEntryInFeed(feedItems, activeFeedEntryId) ||\n !this.isItemTypeComment(type)\n ) {\n return Promise.resolve(feedItems);\n }\n\n const parentType: CommentFeedItemType =\n type === FEED_ITEM_TYPE_COMMENT ? FEED_ITEM_TYPE_COMMENT : FEED_ITEM_TYPE_ANNOTATION;\n\n return this.getFeedItemsWithReplies(feedItems, id, parentType);\n })\n .then(updatedItems => this.fetchFeedItemsSuccessCallback(updatedItems))\n .catch(error => this.fetchFeedItemsErrorCallback(feedItems, [error]));\n };\n\n /**\n * Handles a successful feed API fetch\n *\n * @private\n * @param {Array} feedItems - the feed items\n * @return {void}\n */\n fetchFeedItemsSuccessCallback = (feedItems: FeedItems): void => {\n const {\n file: { id: fileId },\n logger,\n } = this.props;\n\n mark(MARK_NAME_DATA_READY);\n\n // Only emit metric if has >1 activity feed items (there should always at least be the current version)\n if (feedItems.length > 1) {\n logger.onDataReadyMetric(\n {\n endMarkName: MARK_NAME_DATA_READY,\n startMarkName: MARK_NAME_DATA_LOADING,\n },\n fileId,\n );\n }\n\n this.setState({ feedItems, activityFeedError: undefined });\n };\n\n /**\n * Handles a failed feed item fetch\n *\n * @private\n * @param {Error} e - API error\n * @return {void}\n */\n fetchFeedItemsErrorCallback = (feedItems: FeedItems, errors: ElementsXhrError[]): void => {\n const { onError } = this.props;\n\n this.setState({\n feedItems,\n activityFeedError: activityFeedInlineError,\n });\n\n if (Array.isArray(errors) && errors.length) {\n onError(new Error('Fetch feed items error'), ERROR_CODE_FETCH_ACTIVITY, {\n showNotification: true,\n errors: errors.map(({ code }) => code),\n });\n }\n };\n\n getCommentFeedItemWithReplies = <T: { replies?: Array<Comment> }>(feedItem: T, replies: Array<Comment>): T => ({\n ...feedItem,\n replies,\n });\n\n getFeedItemsWithReplies = (feedItems: FeedItems, id?: string, type?: CommentFeedItemType): Promise<FeedItems> => {\n const { api, file } = this.props;\n\n return new Promise((resolve, reject) => {\n if (!id || !type) {\n resolve(feedItems);\n return;\n }\n api.getFeedAPI(false).fetchReplies(\n file,\n id,\n type,\n replies => {\n const updatedFeedItems = feedItems.map(item => {\n if (item.id === id && this.isItemTypeComment(item.type)) {\n if (item.type === FEED_ITEM_TYPE_ANNOTATION) {\n return this.getCommentFeedItemWithReplies<Annotation>(item, replies);\n }\n if (item.type === FEED_ITEM_TYPE_COMMENT) {\n return this.getCommentFeedItemWithReplies<Comment>(item, replies);\n }\n }\n return item;\n });\n resolve(updatedFeedItems);\n },\n error => {\n reject(error);\n },\n );\n });\n };\n\n /**\n * Network error callback\n *\n * @private\n * @param {Error} error - Error object\n * @param {Error} code - the code for the error\n * @param {Object} contextInfo - the context info for the error\n * @return {void}\n */\n errorCallback = (error: ElementsXhrError, code: string, contextInfo: Object = {}): void => {\n /* eslint-disable no-console */\n console.error(error);\n /* eslint-enable no-console */\n\n // eslint-disable-next-line react/prop-types\n this.props.onError(error, code, contextInfo);\n };\n\n /**\n * File approver contacts fetch success callback\n *\n * @private\n * @param {BoxItemCollection} collaborators - Collaborators response data\n * @return {void}\n */\n getApproverContactsSuccessCallback = (collaborators: { entries: SelectorItems<> }): void => {\n const { entries } = collaborators;\n this.setState({ approverSelectorContacts: entries });\n };\n\n /**\n * File @mention contacts fetch success callback\n *\n * @private\n * @param {BoxItemCollection} collaborators - Collaborators response data\n * @return {void}\n */\n getMentionContactsSuccessCallback = (collaborators: { entries: SelectorItems<> }): void => {\n const { entries } = collaborators;\n this.setState({ contactsLoaded: false }, () =>\n this.setState({\n contactsLoaded: true,\n mentionSelectorContacts: entries,\n }),\n );\n };\n\n /**\n * Fetches file @mention's with groups\n *\n * @private\n * @param {string} searchStr - Search string to filter file collaborators by\n * @return {void}\n */\n getApprover = debounce((searchStr: string) => {\n const { file, api } = this.props;\n api.getFileCollaboratorsAPI(false).getCollaboratorsWithQuery(\n file.id,\n this.getApproverContactsSuccessCallback,\n this.errorCallback,\n searchStr,\n {\n includeGroups: true,\n },\n );\n }, DEFAULT_COLLAB_DEBOUNCE);\n\n /**\n * Fetches file @mention's\n *\n * @private\n * @param {string} searchStr - Search string to filter file collaborators by\n * @return {void}\n */\n getMention = debounce((searchStr: string) => {\n const { file, api } = this.props;\n api.getFileCollaboratorsAPI(false).getCollaboratorsWithQuery(\n file.id,\n this.getMentionContactsSuccessCallback,\n this.errorCallback,\n searchStr,\n );\n }, DEFAULT_COLLAB_DEBOUNCE);\n\n /**\n * Returns feed item based on the item id\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} itemId - feed item id\n * @return {FeedItem | undefined}\n */\n getFocusableFeedItemById = (feedItems: FeedItems, itemId?: string): FeedItem | typeof undefined => {\n if (!itemId) {\n return undefined;\n }\n return feedItems.find(({ id, type }) => id === itemId && this.isItemTypeFocusable(type));\n };\n\n /**\n * Returns parent feed item based on the reply id\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} replyId - feed item's reply id\n * @return {FeedItem | undefined}\n */\n getCommentFeedItemByReplyId = (feedItems: FeedItems, replyId?: string): FeedItem | typeof undefined => {\n if (!replyId) {\n return undefined;\n }\n return feedItems.find(item => {\n if ((item.type !== FEED_ITEM_TYPE_ANNOTATION && item.type !== FEED_ITEM_TYPE_COMMENT) || !item.replies) {\n return false;\n }\n return item.replies.some(({ id }) => id === replyId);\n });\n };\n\n /**\n * Returns true if item (based on given item id) is found within feed items or its replies and it, or its parent, can be active (focusable)\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} itemId - feed item id\n * @return {boolean}\n */\n isActiveEntryInFeed = (feedItems: FeedItems, itemId: string): boolean =>\n !!(this.getFocusableFeedItemById(feedItems, itemId) || this.getCommentFeedItemByReplyId(feedItems, itemId));\n\n isItemTypeFocusable = (type?: FeedItemType | FocusableFeedItem | CommentFeedItemType): boolean =>\n type === FEED_ITEM_TYPE_ANNOTATION || type === FEED_ITEM_TYPE_COMMENT || type === FEED_ITEM_TYPE_TASK;\n\n isItemTypeComment = (type?: FeedItemType | FocusableFeedItem | CommentFeedItemType): boolean =>\n type === FEED_ITEM_TYPE_ANNOTATION || type === FEED_ITEM_TYPE_COMMENT;\n\n /**\n * Returns active entry data (id, type) based on the activeFeedEntryId and activeFeedEntryType values\n * (it can be existing item or parent if the active entry id belongs to a reply)\n *\n * @param {FeedItems} feedItems - the feed items\n * @return {Promise<{ id: string, type?: FocusableFeedItemType }>}\n */\n getActiveFeedEntryData = (feedItems: FeedItems): Promise<{ id?: string, type?: FeedItemType }> => {\n const { activeFeedEntryId, activeFeedEntryType, api, file } = this.props;\n return new Promise((resolve, reject) => {\n if (!activeFeedEntryId || !activeFeedEntryType || !this.isItemTypeFocusable(activeFeedEntryType)) {\n resolve({});\n return;\n }\n\n // Check if the active entry is a first level Feed item\n const firstLevelItem = this.getFocusableFeedItemById(feedItems, activeFeedEntryId);\n if (firstLevelItem) {\n const { id, type } = firstLevelItem;\n resolve({ id, type });\n return;\n }\n\n // Check if the active entry is within replies of any first level Feed items\n const firstLevelItemWithActiveReply = this.getCommentFeedItemByReplyId(feedItems, activeFeedEntryId);\n if (firstLevelItemWithActiveReply) {\n const { id, type } = firstLevelItemWithActiveReply;\n resolve({ id, type });\n return;\n }\n\n // If the active entry could not be found within feed items, it's most likely a reply that\n // is not yet visible in feed and we need to fetch its data in order to find parent\n api.getFeedAPI(false).fetchThreadedComment(\n file,\n activeFeedEntryId,\n ({ parent }) => {\n const parentItem = this.getFocusableFeedItemById(feedItems, parent?.id);\n const { id, type } = parentItem || {};\n resolve({ id, type });\n },\n (error: ElementsXhrError) => {\n if (error.status === 404) {\n resolve({});\n } else {\n reject(error);\n }\n },\n );\n });\n };\n\n getActiveCommentPath(commentId?: string): string {\n if (!commentId) {\n return '/activity';\n }\n\n return generatePath('/:sidebar/comments/:commentId?', {\n sidebar: 'activity',\n commentId,\n });\n }\n\n /**\n * Fetches replies (comments) of a comment or annotation\n *\n * @param {string} id - id of the feed item\n * @param {CommentFeedItemType} type - type of the feed item\n * @return {void}\n */\n getReplies = (id: string, type: CommentFeedItemType): void => {\n const { api, file } = this.props;\n\n api.getFeedAPI(false).fetchReplies(file, id, type, this.feedSuccessCallback, this.feedErrorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Gets the user avatar URL\n *\n * @param {string} userId the user id\n * @param {string} fileId the file id\n * @return the user avatar URL string for a given user with access token attached\n */\n getAvatarUrl = async (userId: string): Promise<?string> => {\n const { file, api } = this.props;\n\n return api.getUsersAPI(false).getAvatarUrlWithAccessToken(userId, file.id);\n };\n\n handleAnnotationSelect = (annotation: Annotation): void => {\n const { file_version, id: nextActiveAnnotationId } = annotation;\n const {\n emitActiveAnnotationChangeEvent,\n file,\n getAnnotationsMatchPath,\n getAnnotationsPath,\n history,\n location,\n onAnnotationSelect,\n } = this.props;\n const annotationFileVersionId = getProp(file_version, 'id');\n const currentFileVersionId = getProp(file, 'file_version.id');\n const match = getAnnotationsMatchPath(location);\n const selectedFileVersionId = getProp(match, 'params.fileVersionId', currentFileVersionId);\n\n emitActiveAnnotationChangeEvent(nextActiveAnnotationId);\n\n if (annotationFileVersionId && annotationFileVersionId !== selectedFileVersionId) {\n history.push(getAnnotationsPath(annotationFileVersionId, nextActiveAnnotationId));\n }\n\n onAnnotationSelect(annotation);\n };\n\n handleItemsFiltered = (status?: ActivityFilterItemType) => {\n const { onFilterChange } = this.props;\n\n this.setState({ feedItemsStatusFilter: status });\n onFilterChange(status);\n };\n\n getFilteredFeedItems = (): FeedItems | typeof undefined => {\n const { feedItems, feedItemsStatusFilter } = this.state;\n if (!feedItems || !feedItemsStatusFilter || feedItemsStatusFilter === ACTIVITY_FILTER_OPTION_ALL) {\n return feedItems;\n }\n // Filter is completed on two properties (status and type) because filtering on comments (resolved vs. unresolved)\n // requires looking at item status to see if it is open or resolved. To filter all tasks, we need to look at the\n // item type. Item type is also used to keep versions in the feed. Task also has a status but it's status will be\n // \"NOT_STARTED\" or \"COMPLETED\" so it will not conflict with comment's status.\n return feedItems.filter(item => {\n return (\n item.status === feedItemsStatusFilter ||\n item.type === FEED_ITEM_TYPE_VERSION ||\n item.type === feedItemsStatusFilter\n );\n });\n };\n\n onTaskModalClose = () => {\n this.setState({\n approverSelectorContacts: [],\n });\n };\n\n refresh(shouldRefreshCache: boolean = true): void {\n this.fetchFeedItems(shouldRefreshCache);\n }\n\n renderAddTaskButton = () => {\n const { isDisabled, hasTasks } = this.props;\n const { approverSelectorContacts } = this.state;\n const { getApprover, getAvatarUrl, createTask, onTaskModalClose } = this;\n\n if (!hasTasks) {\n return null;\n }\n\n return (\n <AddTaskButton\n isDisabled={isDisabled}\n onTaskModalClose={onTaskModalClose}\n taskFormProps={{\n approvers: [],\n approverSelectorContacts,\n completionRule: TASK_COMPLETION_RULE_ALL,\n createTask,\n getApproverWithQuery: getApprover,\n getAvatarUrl,\n id: '',\n message: '',\n }}\n />\n );\n };\n\n renderActivitySidebarFilter = () => {\n const { features, hasTasks } = this.props;\n const { feedItemsStatusFilter } = this.state;\n const shouldShowActivityFeedFilter = isFeatureEnabled(features, 'activityFeed.filter.enabled');\n const shouldShowAdditionalFilterOptions = isFeatureEnabled(features, 'activityFeed.newThreadedReplies.enabled');\n\n if (!shouldShowActivityFeedFilter) {\n return null;\n }\n\n const activityFilterOptions: ActivityFilterOption[] = [\n ACTIVITY_FILTER_OPTION_ALL,\n ACTIVITY_FILTER_OPTION_UNRESOLVED,\n ];\n if (shouldShowAdditionalFilterOptions) {\n // Determine which filter options to show based on what activity types are available in current context\n activityFilterOptions.push(ACTIVITY_FILTER_OPTION_RESOLVED);\n if (hasTasks) {\n activityFilterOptions.push(ACTIVITY_FILTER_OPTION_TASKS);\n }\n }\n\n return (\n <ActivitySidebarFilter\n activityFilterOptions={activityFilterOptions}\n feedItemType={feedItemsStatusFilter}\n onFeedItemTypeClick={selectedStatus => {\n this.handleItemsFiltered(selectedStatus);\n }}\n />\n );\n };\n\n renderActions = () => (\n <>\n {this.renderActivitySidebarFilter()}\n {this.renderAddTaskButton()}\n </>\n );\n\n renderTitle = () => {\n const { features } = this.props;\n const shouldHideTitle = isFeatureEnabled(features, 'activityFeed.filter.enabled');\n\n if (shouldHideTitle) {\n return null;\n }\n return <FormattedMessage {...messages.sidebarActivityTitle} />;\n };\n\n render() {\n const {\n activeFeedEntryId,\n activeFeedEntryType,\n currentUser,\n currentUserError,\n elementId,\n features,\n file,\n hasReplies,\n hasVersions,\n isDisabled = false,\n onVersionHistoryClick,\n getUserProfileUrl,\n onTaskView,\n } = this.props;\n const { activityFeedError, approverSelectorContacts, contactsLoaded, mentionSelectorContacts } = this.state;\n const isNewThreadedRepliesEnabled = isFeatureEnabled(features, 'activityFeed.newThreadedReplies.enabled');\n const shouldUseUAA = isFeatureEnabled(features, 'activityFeed.uaaIntegration.enabled');\n\n return (\n <SidebarContent\n actions={this.renderActions()}\n className={classNames('bcs-activity', { 'bcs-activity--full': hasReplies })}\n elementId={elementId}\n sidebarView={SIDEBAR_VIEW_ACTIVITY}\n title={this.renderTitle()}\n >\n <ActivityFeed\n activeFeedEntryId={activeFeedEntryId}\n activeFeedEntryType={activeFeedEntryType}\n activityFeedError={activityFeedError}\n approverSelectorContacts={approverSelectorContacts}\n currentUser={currentUser}\n currentUserError={currentUserError}\n feedItems={this.getFilteredFeedItems()}\n file={file}\n getApproverWithQuery={this.getApprover}\n getAvatarUrl={this.getAvatarUrl}\n getMentionWithQuery={this.getMention}\n getUserProfileUrl={getUserProfileUrl}\n hasNewThreadedReplies={isNewThreadedRepliesEnabled}\n hasReplies={hasReplies}\n hasVersions={hasVersions}\n isDisabled={isDisabled}\n mentionSelectorContacts={mentionSelectorContacts}\n contactsLoaded={contactsLoaded}\n onAnnotationDelete={this.handleAnnotationDelete}\n onAnnotationEdit={this.handleAnnotationEdit}\n onAnnotationSelect={this.handleAnnotationSelect}\n onAnnotationStatusChange={this.handleAnnotationStatusChange}\n onAppActivityDelete={this.deleteAppActivity}\n onCommentCreate={this.createComment}\n onCommentDelete={this.deleteComment}\n onCommentUpdate={this.updateComment}\n onHideReplies={this.updateReplies}\n onReplyCreate={this.createReply}\n onReplyDelete={this.deleteReply}\n onReplyUpdate={this.updateReply}\n onShowReplies={this.getReplies}\n onTaskAssignmentUpdate={this.updateTaskAssignment}\n onTaskCreate={this.createTask}\n onTaskDelete={this.deleteTask}\n onTaskModalClose={this.onTaskModalClose}\n onTaskUpdate={this.updateTask}\n onTaskView={onTaskView}\n onVersionHistoryClick={onVersionHistoryClick}\n shouldUseUAA={shouldUseUAA}\n />\n </SidebarContent>\n );\n }\n}\n\nexport type ActivitySidebarProps = ExternalProps;\nexport { ActivitySidebar as ActivitySidebarComponent };\nexport default flow([\n withLogger(ORIGIN_ACTIVITY_SIDEBAR),\n withErrorBoundary(ORIGIN_ACTIVITY_SIDEBAR),\n withAPIContext,\n withFeatureConsumer,\n withAnnotatorContext,\n withRouterAndRef,\n])(ActivitySidebar);\n"],"file":"ActivitySidebar.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/content-sidebar/ActivitySidebar.js"],"names":["React","classNames","debounce","flow","getProp","noop","uniqueId","FormattedMessage","generatePath","ActivityFeed","AddTaskButton","API","messages","SidebarContent","WithAnnotatorContextProps","withAnnotatorContext","EVENT_DATA_READY","EVENT_JS_READY","getBadUserError","mark","withAPIContext","withErrorBoundary","withFeatureConsumer","isFeatureEnabled","withLogger","withRouterAndRef","ActivitySidebarFilter","ACTIVITY_FILTER_OPTION_ALL","ACTIVITY_FILTER_OPTION_RESOLVED","ACTIVITY_FILTER_OPTION_TASKS","ACTIVITY_FILTER_OPTION_UNRESOLVED","DEFAULT_COLLAB_DEBOUNCE","ERROR_CODE_FETCH_ACTIVITY","FEED_ITEM_TYPE_ANNOTATION","FEED_ITEM_TYPE_COMMENT","FEED_ITEM_TYPE_TASK","FEED_ITEM_TYPE_VERSION","ORIGIN_ACTIVITY_SIDEBAR","SIDEBAR_VIEW_ACTIVITY","TASK_COMPLETION_RULE_ALL","activityFeedInlineError","inlineError","title","errorOccured","content","activityFeedItemApiError","MARK_NAME_DATA_LOADING","MARK_NAME_DATA_READY","MARK_NAME_JS_READY","ActivitySidebar","PureComponent","constructor","props","id","permissions","api","emitAnnotationRemoveEvent","file","getFeedAPI","deleteAnnotation","deleteAnnotationSuccess","bind","feedErrorCallback","fetchFeedItems","text","emitAnnotationUpdateEvent","description","message","updateAnnotation","undefined","annotation","feedSuccessCallback","status","e","code","contextInfo","errorCallback","assignees","taskType","dueAt","completionRule","onSuccess","onError","currentUser","successCallback","createTaskNew","task","onTaskDelete","deleteTaskNew","taskId","onTaskUpdate","updateTaskNew","taskAssignmentId","onTaskAssignmentUpdate","updateTaskCollaborator","hasReplies","onCommentDelete","comment","deleteThreadedComment","deleteComment","parentId","emitAnnotationReplyDeleteEvent","deleteReply","deleteReplySuccessCallback","hasMention","onCommentUpdate","updateThreadedComment","updateComment","emitAnnotationReplyUpdateEvent","tagged_message","updateReply","updateReplySuccessCallback","error","replies","activeFeedEntryId","history","feedItems","state","feedAPI","length","some","item","getCommentFeedItemByReplyId","replace","getActiveCommentPath","updateFeedItem","reply","onCommentCreate","createThreadedComment","createComment","parentType","emitAnnotationReplyCreateEvent","eventRequestId","createReply","createReplySuccessCallback","deleteAppActivity","getActiveFeedEntryData","then","type","isActiveEntryInFeed","isItemTypeComment","Promise","resolve","getFeedItemsWithReplies","updatedItems","fetchFeedItemsSuccessCallback","catch","fetchFeedItemsErrorCallback","fileId","logger","onDataReadyMetric","endMarkName","startMarkName","setState","activityFeedError","errors","Array","isArray","Error","showNotification","map","feedItem","reject","fetchReplies","updatedFeedItems","getCommentFeedItemWithReplies","console","collaborators","entries","approverSelectorContacts","contactsLoaded","mentionSelectorContacts","searchStr","getFileCollaboratorsAPI","getCollaboratorsWithQuery","getApproverContactsSuccessCallback","includeGroups","getMentionContactsSuccessCallback","itemId","find","isItemTypeFocusable","replyId","getFocusableFeedItemById","activeFeedEntryType","firstLevelItem","firstLevelItemWithActiveReply","fetchThreadedComment","parent","parentItem","userId","getUsersAPI","getAvatarUrlWithAccessToken","file_version","nextActiveAnnotationId","emitActiveAnnotationChangeEvent","getAnnotationsMatchPath","getAnnotationsPath","location","onAnnotationSelect","annotationFileVersionId","currentFileVersionId","match","selectedFileVersionId","push","onFilterChange","feedItemsStatusFilter","filter","isDisabled","hasTasks","getApprover","getAvatarUrl","createTask","onTaskModalClose","approvers","getApproverWithQuery","features","shouldShowActivityFeedFilter","shouldShowAdditionalFilterOptions","activityFilterOptions","selectedStatus","handleItemsFiltered","renderActivitySidebarFilter","renderAddTaskButton","shouldHideTitle","sidebarActivityTitle","onReadyMetric","componentDidMount","shouldRefreshCache","shouldDestroy","shouldShowReplies","shouldShowTasks","hasVersions","shouldShowVersions","shouldFetchReplies","shouldShowAppActivity","shouldShowAnnotations","shouldUseUAA","fetchRepliesForFeedItems","commentId","sidebar","refresh","render","currentUserError","elementId","onVersionHistoryClick","getUserProfileUrl","onTaskView","isNewThreadedRepliesEnabled","renderActions","renderTitle","getFilteredFeedItems","getMention","handleAnnotationDelete","handleAnnotationEdit","handleAnnotationSelect","handleAnnotationStatusChange","updateReplies","getReplies","updateTaskAssignment","deleteTask","updateTask","annotatorState","onTaskCreate","onVersionChange","ActivitySidebarComponent"],"mappings":"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","sourcesContent":["/**\n * @flow\n * @file Activity feed sidebar component\n * @author Box\n */\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport debounce from 'lodash/debounce';\nimport flow from 'lodash/flow';\nimport getProp from 'lodash/get';\nimport noop from 'lodash/noop';\nimport uniqueId from 'lodash/uniqueId';\nimport { FormattedMessage } from 'react-intl';\nimport { generatePath, type ContextRouter } from 'react-router-dom';\nimport ActivityFeed from './activity-feed';\nimport AddTaskButton from './AddTaskButton';\nimport API from '../../api';\nimport messages from '../common/messages';\nimport SidebarContent from './SidebarContent';\nimport { WithAnnotatorContextProps, withAnnotatorContext } from '../common/annotator-context';\nimport { EVENT_DATA_READY, EVENT_JS_READY } from '../common/logger/constants';\nimport { getBadUserError } from '../../utils/error';\nimport { mark } from '../../utils/performance';\nimport { withAPIContext } from '../common/api-context';\nimport { withErrorBoundary } from '../common/error-boundary';\nimport { withFeatureConsumer, isFeatureEnabled } from '../common/feature-checking';\nimport { withLogger } from '../common/logger';\nimport { withRouterAndRef } from '../common/routing';\nimport ActivitySidebarFilter from './ActivitySidebarFilter';\nimport {\n ACTIVITY_FILTER_OPTION_ALL,\n ACTIVITY_FILTER_OPTION_RESOLVED,\n ACTIVITY_FILTER_OPTION_TASKS,\n ACTIVITY_FILTER_OPTION_UNRESOLVED,\n DEFAULT_COLLAB_DEBOUNCE,\n ERROR_CODE_FETCH_ACTIVITY,\n FEED_ITEM_TYPE_ANNOTATION,\n FEED_ITEM_TYPE_COMMENT,\n FEED_ITEM_TYPE_TASK,\n FEED_ITEM_TYPE_VERSION,\n ORIGIN_ACTIVITY_SIDEBAR,\n SIDEBAR_VIEW_ACTIVITY,\n TASK_COMPLETION_RULE_ALL,\n} from '../../constants';\nimport type {\n TaskCompletionRule,\n TaskType,\n TaskNew,\n TaskUpdatePayload,\n TaskCollabStatus,\n} from '../../common/types/tasks';\nimport type {\n Annotation,\n AnnotationPermission,\n ActivityFilterItemType,\n ActivityFilterOption,\n BoxCommentPermission,\n Comment,\n CommentFeedItemType,\n FocusableFeedItem,\n FocusableFeedItemType,\n FeedItem,\n FeedItems,\n FeedItemStatus,\n FeedItemType,\n} from '../../common/types/feed';\nimport type { ErrorContextProps, ElementsXhrError } from '../../common/types/api';\nimport type { WithLoggerProps } from '../../common/types/logging';\nimport type { SelectorItems, User, UserMini, GroupMini, BoxItem } from '../../common/types/core';\nimport type { Errors, GetProfileUrlCallback } from '../common/flowTypes';\nimport type { Translations } from './flowTypes';\nimport type { FeatureConfig } from '../common/feature-checking';\nimport './ActivitySidebar.scss';\n\nimport type { OnAnnotationEdit, OnAnnotationStatusChange } from './activity-feed/comment/types';\n\ntype ExternalProps = {\n activeFeedEntryId?: string,\n activeFeedEntryType?: FocusableFeedItemType,\n currentUser?: User,\n currentUserError?: Errors,\n getUserProfileUrl?: GetProfileUrlCallback,\n hasReplies?: boolean,\n hasTasks?: boolean,\n hasVersions?: boolean,\n onCommentCreate: Function,\n onCommentDelete: (comment: Comment) => any,\n onCommentUpdate: () => any,\n onTaskAssignmentUpdate: Function,\n onTaskCreate: Function,\n onTaskDelete: (id: string) => any,\n onTaskUpdate: () => any,\n onTaskView: (id: string, isCreator: boolean) => any,\n} & ErrorContextProps &\n WithAnnotatorContextProps;\n\ntype PropsWithoutContext = {\n elementId: string,\n file: BoxItem,\n hasSidebarInitialized?: boolean,\n isDisabled: boolean,\n onAnnotationSelect: Function,\n onFilterChange: (status?: ActivityFilterItemType) => void,\n onVersionChange: Function,\n onVersionHistoryClick?: Function,\n translations?: Translations,\n} & ExternalProps &\n WithLoggerProps &\n ContextRouter;\n\ntype Props = {\n api: API,\n features: FeatureConfig,\n} & PropsWithoutContext;\n\ntype State = {\n activityFeedError?: Errors,\n approverSelectorContacts: SelectorItems<UserMini | GroupMini>,\n contactsLoaded?: boolean,\n feedItems?: FeedItems,\n feedItemsStatusFilter?: ActivityFilterItemType,\n mentionSelectorContacts?: SelectorItems<UserMini>,\n};\n\nexport const activityFeedInlineError: Errors = {\n inlineError: {\n title: messages.errorOccured,\n content: messages.activityFeedItemApiError,\n },\n};\n\nconst MARK_NAME_DATA_LOADING = `${ORIGIN_ACTIVITY_SIDEBAR}_data_loading`;\nconst MARK_NAME_DATA_READY = `${ORIGIN_ACTIVITY_SIDEBAR}_${EVENT_DATA_READY}`;\nconst MARK_NAME_JS_READY = `${ORIGIN_ACTIVITY_SIDEBAR}_${EVENT_JS_READY}`;\n\nmark(MARK_NAME_JS_READY);\n\nclass ActivitySidebar extends React.PureComponent<Props, State> {\n static defaultProps = {\n annotatorState: {},\n emitActiveAnnotationChangeEvent: noop,\n emitAnnotationRemoveEvent: noop,\n emitAnnotationReplyCreateEvent: noop,\n emitAnnotationReplyDeleteEvent: noop,\n emitAnnotationReplyUpdateEvent: noop,\n emitAnnotationUpdateEvent: noop,\n getAnnotationsMatchPath: noop,\n getAnnotationsPath: noop,\n hasReplies: false,\n hasTasks: true,\n hasVersions: true,\n isDisabled: false,\n onAnnotationSelect: noop,\n onCommentCreate: noop,\n onCommentDelete: noop,\n onCommentUpdate: noop,\n onFilterChange: noop,\n onTaskAssignmentUpdate: noop,\n onTaskCreate: noop,\n onTaskDelete: noop,\n onTaskUpdate: noop,\n onVersionChange: noop,\n onVersionHistoryClick: noop,\n };\n\n constructor(props: Props) {\n super(props);\n // eslint-disable-next-line react/prop-types\n const { logger } = this.props;\n\n mark(MARK_NAME_DATA_LOADING);\n\n logger.onReadyMetric({\n endMarkName: MARK_NAME_JS_READY,\n });\n this.state = {};\n }\n\n componentDidMount() {\n this.fetchFeedItems(true);\n }\n\n handleAnnotationDelete = ({ id, permissions }: { id: string, permissions: AnnotationPermission }) => {\n const { api, emitAnnotationRemoveEvent, file } = this.props;\n\n emitAnnotationRemoveEvent(id, true);\n api.getFeedAPI(false).deleteAnnotation(\n file,\n id,\n permissions,\n this.deleteAnnotationSuccess.bind(this, id),\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n handleAnnotationEdit: OnAnnotationEdit = ({ id, text, permissions }) => {\n const { api, emitAnnotationUpdateEvent, file } = this.props;\n\n emitAnnotationUpdateEvent(\n {\n id,\n description: {\n message: text,\n },\n },\n true,\n );\n api.getFeedAPI(false).updateAnnotation(\n file,\n id,\n text,\n undefined,\n permissions,\n (annotation: Annotation) => {\n emitAnnotationUpdateEvent(annotation);\n this.feedSuccessCallback();\n },\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n handleAnnotationStatusChange: OnAnnotationStatusChange = ({ id, permissions, status }) => {\n const { api, emitAnnotationUpdateEvent, file } = this.props;\n\n emitAnnotationUpdateEvent({ id, status }, true);\n api.getFeedAPI(false).updateAnnotation(\n file,\n id,\n undefined,\n status,\n permissions,\n (annotation: Annotation) => {\n emitAnnotationUpdateEvent(annotation);\n this.feedSuccessCallback();\n },\n this.feedErrorCallback,\n );\n\n this.fetchFeedItems();\n };\n\n deleteAnnotationSuccess(id: string) {\n const { emitAnnotationRemoveEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationRemoveEvent(id);\n }\n\n /**\n * Success callback for fetching feed items\n */\n feedSuccessCallback = (): void => {\n this.fetchFeedItems();\n };\n\n /**\n * Error callback for fetching feed items\n *\n * @param {Error} e - the error which occured\n * @param {Error} code - the code for the error\n * @param {Object} contextInfo - the context info for the error\n */\n feedErrorCallback = (e: ElementsXhrError, code: string, contextInfo?: Object) => {\n this.errorCallback(e, code, contextInfo);\n this.fetchFeedItems();\n };\n\n createTask = (\n message: string,\n assignees: SelectorItems<>,\n taskType: TaskType,\n dueAt: ?string,\n completionRule: TaskCompletionRule,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, currentUser, file } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n const errorCallback = (e, code, contextInfo) => {\n if (onError) {\n onError(e, code, contextInfo);\n }\n this.feedErrorCallback(e, code, contextInfo);\n };\n const successCallback = () => {\n if (onSuccess) {\n onSuccess();\n }\n this.feedSuccessCallback();\n };\n\n api.getFeedAPI(false).createTaskNew(\n file,\n currentUser,\n message,\n assignees,\n taskType,\n dueAt,\n completionRule,\n successCallback,\n errorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n deleteTask = (task: TaskNew): void => {\n const { file, api, onTaskDelete } = this.props;\n api.getFeedAPI(false).deleteTaskNew(\n file,\n task,\n (taskId: string) => {\n this.feedSuccessCallback();\n onTaskDelete(taskId);\n },\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n updateTask = (task: TaskUpdatePayload, onSuccess: ?Function, onError: ?Function): void => {\n const { api, file, onTaskUpdate } = this.props;\n const errorCallback = (e, code) => {\n if (onError) {\n onError(e, code);\n }\n this.feedErrorCallback(e, code);\n };\n const successCallback = () => {\n this.feedSuccessCallback();\n\n if (onSuccess) {\n onSuccess();\n }\n\n onTaskUpdate();\n };\n\n api.getFeedAPI(false).updateTaskNew(file, task, successCallback, errorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n updateTaskAssignment = (taskId: string, taskAssignmentId: string, status: TaskCollabStatus): void => {\n const { api, currentUser = {}, file, onTaskAssignmentUpdate } = this.props;\n\n const successCallback = () => {\n this.feedSuccessCallback();\n onTaskAssignmentUpdate(taskId, taskAssignmentId, status, currentUser.id);\n };\n\n api.getFeedAPI(false).updateTaskCollaborator(\n file,\n taskId,\n taskAssignmentId,\n status,\n successCallback,\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Deletes a comment via the API.\n *\n * @param {Object} args - A subset of the comment\n * @return void\n */\n deleteComment = ({ id, permissions }: { id: string, permissions: BoxCommentPermission }): void => {\n const { api, file, hasReplies, onCommentDelete } = this.props;\n\n const successCallback = (comment: Comment) => {\n this.feedSuccessCallback();\n onCommentDelete(comment);\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).deleteThreadedComment(file, id, permissions, successCallback, this.feedErrorCallback);\n } else {\n api.getFeedAPI(false).deleteComment(file, id, permissions, successCallback, this.feedErrorCallback);\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Deletes a reply via the API.\n *\n * @param {Object} args - A subset of the comment\n * @return void\n */\n deleteReply = ({\n id,\n parentId,\n permissions,\n }: {\n id: string,\n parentId: string,\n permissions: BoxCommentPermission,\n }): void => {\n const { api, emitAnnotationReplyDeleteEvent, file } = this.props;\n\n emitAnnotationReplyDeleteEvent(id, parentId, true);\n api.getFeedAPI(false).deleteReply(\n file,\n id,\n parentId,\n permissions,\n this.deleteReplySuccessCallback.bind(this, id, parentId),\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful deletion of a reply\n *\n * @private\n * @param {string} id - The id of the reply\n * @param {string} parentId - The id of the reply's parent item\n * @return {void}\n */\n deleteReplySuccessCallback = (id: string, parentId: string) => {\n const { emitAnnotationReplyDeleteEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyDeleteEvent(id, parentId);\n };\n\n updateComment = (\n id: string,\n text?: string,\n status?: FeedItemStatus,\n hasMention: boolean,\n permissions: BoxCommentPermission,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, file, hasReplies, onCommentUpdate } = this.props;\n\n const errorCallback = (e, code) => {\n if (onError) {\n onError(e, code);\n }\n this.feedErrorCallback(e, code);\n };\n\n const successCallback = () => {\n this.feedSuccessCallback();\n if (onSuccess) {\n onSuccess();\n }\n onCommentUpdate();\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).updateThreadedComment(\n file,\n id,\n text,\n status,\n permissions,\n successCallback,\n errorCallback,\n );\n } else {\n api.getFeedAPI(false).updateComment(\n file,\n id,\n text || '',\n hasMention,\n permissions,\n successCallback,\n errorCallback,\n );\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Updates a reply\n *\n * @param {string} id - id of the reply\n * @param {string} parentId - id of the parent item\n * @param {string} text - the reply updated text\n * @param {BoxCommentPermission} permissions - permissions associated with the reply\n * @param {Function} onSuccess - the success callback\n * @param {Function} onError - the error callback\n * @return {void}\n */\n updateReply = (\n id: string,\n parentId: string,\n text: string,\n permissions: BoxCommentPermission,\n onSuccess: ?Function,\n onError: ?Function,\n ): void => {\n const { api, emitAnnotationReplyUpdateEvent, file } = this.props;\n\n emitAnnotationReplyUpdateEvent({ id, tagged_message: text }, parentId, true);\n api.getFeedAPI(false).updateReply(\n file,\n id,\n parentId,\n text,\n permissions,\n this.updateReplySuccessCallback.bind(this, parentId, onSuccess),\n (error, code) => {\n if (onError) {\n onError(error, code);\n }\n this.feedErrorCallback(error, code);\n },\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Updates replies of a comment or annotation in the Feed\n *\n * @param {string} id - id of the feed item\n * @param {Array<Comment>} replies - replies\n * @return {void}\n */\n updateReplies = (id: string, replies: Array<Comment>) => {\n const { activeFeedEntryId, api, file, history } = this.props;\n const { feedItems } = this.state;\n\n if (!feedItems) {\n return;\n }\n\n const feedAPI = api.getFeedAPI(false);\n feedAPI.file = file;\n\n // Detect if replies are being hidden and activeFeedEntryId belongs to a reply\n // that is in currently being updated parent, in order to disable active item\n if (\n activeFeedEntryId &&\n replies.length === 1 &&\n feedItems.some(\n (item: FeedItem) =>\n item.id === id && item === this.getCommentFeedItemByReplyId(feedItems, activeFeedEntryId),\n )\n ) {\n history.replace(this.getActiveCommentPath());\n }\n\n feedAPI.updateFeedItem({ replies }, id);\n\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful update of a reply\n *\n * @private\n * @param {string} parentId - The id of the reply's parent item\n * @param {Function} onSuccess - the success callback\n * @param {Comment} reply - The reply comment object\n * @return {void}\n */\n updateReplySuccessCallback = (parentId: string, onSuccess: ?Function, reply: Comment) => {\n const { emitAnnotationReplyUpdateEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyUpdateEvent(reply, parentId);\n if (onSuccess) {\n onSuccess();\n }\n };\n\n /**\n * Posts a new comment to the API\n *\n * @param {string} text - The comment's text\n * @param {boolean} hasMention - The comment's text\n * @return {void}\n */\n createComment = (text: string, hasMention: boolean): void => {\n const { api, currentUser, file, hasReplies, onCommentCreate } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n\n const successCallback = (comment: Comment) => {\n onCommentCreate(comment);\n this.feedSuccessCallback();\n };\n\n if (hasReplies) {\n api.getFeedAPI(false).createThreadedComment(\n file,\n currentUser,\n text,\n successCallback,\n this.feedErrorCallback,\n );\n } else {\n api.getFeedAPI(false).createComment(\n file,\n currentUser,\n text,\n hasMention,\n successCallback,\n this.feedErrorCallback,\n );\n }\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Posts a new reply to the API\n *\n * @param {string} parentId - The id of the parent item\n * @param {CommentFeedItemType} parentType - The type of the parent item\n * @param {string} text - The text of reply\n * @return {void}\n */\n createReply = (parentId: string, parentType: CommentFeedItemType, text: string): void => {\n const { api, currentUser, emitAnnotationReplyCreateEvent, file } = this.props;\n\n if (!currentUser) {\n throw getBadUserError();\n }\n\n const eventRequestId = uniqueId('comment_');\n emitAnnotationReplyCreateEvent({ tagged_message: text }, eventRequestId, parentId, true);\n api.getFeedAPI(false).createReply(\n file,\n currentUser,\n parentId,\n parentType,\n text,\n this.createReplySuccessCallback.bind(this, eventRequestId, parentId),\n this.feedErrorCallback,\n );\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Handles a successful creation of a reply\n *\n * @private\n * @param {string} eventRequestId - The id of the parent item\n * @param {string} parentId - The id of the reply's parent item\n * @param {Comment} reply - The reply comment object\n * @return {void}\n */\n createReplySuccessCallback = (eventRequestId: string, parentId: string, reply: Comment) => {\n const { emitAnnotationReplyCreateEvent } = this.props;\n\n this.feedSuccessCallback();\n emitAnnotationReplyCreateEvent(reply, eventRequestId, parentId);\n };\n\n /**\n * Deletes an app activity item via the API.\n *\n * @param {Object} args - A subset of the app activity\n * @return void\n */\n deleteAppActivity = ({ id }: { id: string }): void => {\n const { api, file } = this.props;\n\n api.getFeedAPI(false).deleteAppActivity(file, id, this.feedSuccessCallback, this.feedErrorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Fetches the feed items for the sidebar\n *\n * @param {boolean} shouldRefreshCache true if the cache should be refreshed\n * @param {boolean} shouldDestroy true if the api factory should be destroyed\n */\n fetchFeedItems(shouldRefreshCache: boolean = false, shouldDestroy: boolean = false) {\n const {\n activeFeedEntryId,\n activeFeedEntryType,\n api,\n file,\n features,\n hasReplies: shouldShowReplies,\n hasTasks: shouldShowTasks,\n hasVersions: shouldShowVersions,\n } = this.props;\n const shouldFetchReplies =\n shouldRefreshCache &&\n shouldShowReplies &&\n activeFeedEntryId &&\n activeFeedEntryType === FEED_ITEM_TYPE_COMMENT;\n const shouldShowAppActivity = isFeatureEnabled(features, 'activityFeed.appActivity.enabled');\n const shouldShowAnnotations = isFeatureEnabled(features, 'activityFeed.annotations.enabled');\n const shouldUseUAA = isFeatureEnabled(features, 'activityFeed.uaaIntegration.enabled');\n\n api.getFeedAPI(shouldDestroy).feedItems(\n file,\n shouldRefreshCache,\n shouldFetchReplies ? this.fetchRepliesForFeedItems : this.fetchFeedItemsSuccessCallback,\n this.fetchFeedItemsErrorCallback,\n this.errorCallback,\n {\n shouldShowAnnotations,\n shouldShowAppActivity,\n shouldShowReplies,\n shouldShowTasks,\n shouldShowVersions,\n shouldUseUAA,\n },\n );\n }\n\n fetchRepliesForFeedItems = (feedItems: FeedItems) => {\n const { activeFeedEntryId } = this.props;\n\n if (!activeFeedEntryId) {\n return;\n }\n\n this.getActiveFeedEntryData(feedItems)\n .then(({ id, type }) => {\n if (\n !id ||\n !type ||\n this.isActiveEntryInFeed(feedItems, activeFeedEntryId) ||\n !this.isItemTypeComment(type)\n ) {\n return Promise.resolve(feedItems);\n }\n\n const parentType: CommentFeedItemType =\n type === FEED_ITEM_TYPE_COMMENT ? FEED_ITEM_TYPE_COMMENT : FEED_ITEM_TYPE_ANNOTATION;\n\n return this.getFeedItemsWithReplies(feedItems, id, parentType);\n })\n .then(updatedItems => this.fetchFeedItemsSuccessCallback(updatedItems))\n .catch(error => this.fetchFeedItemsErrorCallback(feedItems, [error]));\n };\n\n /**\n * Handles a successful feed API fetch\n *\n * @private\n * @param {Array} feedItems - the feed items\n * @return {void}\n */\n fetchFeedItemsSuccessCallback = (feedItems: FeedItems): void => {\n const {\n file: { id: fileId },\n logger,\n } = this.props;\n\n mark(MARK_NAME_DATA_READY);\n\n // Only emit metric if has >1 activity feed items (there should always at least be the current version)\n if (feedItems.length > 1) {\n logger.onDataReadyMetric(\n {\n endMarkName: MARK_NAME_DATA_READY,\n startMarkName: MARK_NAME_DATA_LOADING,\n },\n fileId,\n );\n }\n\n this.setState({ feedItems, activityFeedError: undefined });\n };\n\n /**\n * Handles a failed feed item fetch\n *\n * @private\n * @param {Error} e - API error\n * @return {void}\n */\n fetchFeedItemsErrorCallback = (feedItems: FeedItems, errors: ElementsXhrError[]): void => {\n const { onError } = this.props;\n\n this.setState({\n feedItems,\n activityFeedError: activityFeedInlineError,\n });\n\n if (Array.isArray(errors) && errors.length) {\n onError(new Error('Fetch feed items error'), ERROR_CODE_FETCH_ACTIVITY, {\n showNotification: true,\n errors: errors.map(({ code }) => code),\n });\n }\n };\n\n getCommentFeedItemWithReplies = <T: { replies?: Array<Comment> }>(feedItem: T, replies: Array<Comment>): T => ({\n ...feedItem,\n replies,\n });\n\n getFeedItemsWithReplies = (feedItems: FeedItems, id?: string, type?: CommentFeedItemType): Promise<FeedItems> => {\n const { api, file } = this.props;\n\n return new Promise((resolve, reject) => {\n if (!id || !type) {\n resolve(feedItems);\n return;\n }\n api.getFeedAPI(false).fetchReplies(\n file,\n id,\n type,\n replies => {\n const updatedFeedItems = feedItems.map(item => {\n if (item.id === id && this.isItemTypeComment(item.type)) {\n if (item.type === FEED_ITEM_TYPE_ANNOTATION) {\n return this.getCommentFeedItemWithReplies<Annotation>(item, replies);\n }\n if (item.type === FEED_ITEM_TYPE_COMMENT) {\n return this.getCommentFeedItemWithReplies<Comment>(item, replies);\n }\n }\n return item;\n });\n resolve(updatedFeedItems);\n },\n error => {\n reject(error);\n },\n );\n });\n };\n\n /**\n * Network error callback\n *\n * @private\n * @param {Error} error - Error object\n * @param {Error} code - the code for the error\n * @param {Object} contextInfo - the context info for the error\n * @return {void}\n */\n errorCallback = (error: ElementsXhrError, code: string, contextInfo: Object = {}): void => {\n /* eslint-disable no-console */\n console.error(error);\n /* eslint-enable no-console */\n\n // eslint-disable-next-line react/prop-types\n this.props.onError(error, code, contextInfo);\n };\n\n /**\n * File approver contacts fetch success callback\n *\n * @private\n * @param {BoxItemCollection} collaborators - Collaborators response data\n * @return {void}\n */\n getApproverContactsSuccessCallback = (collaborators: { entries: SelectorItems<> }): void => {\n const { entries } = collaborators;\n this.setState({ approverSelectorContacts: entries });\n };\n\n /**\n * File @mention contacts fetch success callback\n *\n * @private\n * @param {BoxItemCollection} collaborators - Collaborators response data\n * @return {void}\n */\n getMentionContactsSuccessCallback = (collaborators: { entries: SelectorItems<> }): void => {\n const { entries } = collaborators;\n this.setState({ contactsLoaded: false }, () =>\n this.setState({\n contactsLoaded: true,\n mentionSelectorContacts: entries,\n }),\n );\n };\n\n /**\n * Fetches file @mention's with groups\n *\n * @private\n * @param {string} searchStr - Search string to filter file collaborators by\n * @return {void}\n */\n getApprover = debounce((searchStr: string) => {\n const { file, api } = this.props;\n api.getFileCollaboratorsAPI(false).getCollaboratorsWithQuery(\n file.id,\n this.getApproverContactsSuccessCallback,\n this.errorCallback,\n searchStr,\n {\n includeGroups: true,\n },\n );\n }, DEFAULT_COLLAB_DEBOUNCE);\n\n /**\n * Fetches file @mention's\n *\n * @private\n * @param {string} searchStr - Search string to filter file collaborators by\n * @return {void}\n */\n getMention = debounce((searchStr: string) => {\n const { file, api } = this.props;\n api.getFileCollaboratorsAPI(false).getCollaboratorsWithQuery(\n file.id,\n this.getMentionContactsSuccessCallback,\n this.errorCallback,\n searchStr,\n );\n }, DEFAULT_COLLAB_DEBOUNCE);\n\n /**\n * Returns feed item based on the item id\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} itemId - feed item id\n * @return {FeedItem | undefined}\n */\n getFocusableFeedItemById = (feedItems: FeedItems, itemId?: string): FeedItem | typeof undefined => {\n if (!itemId) {\n return undefined;\n }\n return feedItems.find(({ id, type }) => id === itemId && this.isItemTypeFocusable(type));\n };\n\n /**\n * Returns parent feed item based on the reply id\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} replyId - feed item's reply id\n * @return {FeedItem | undefined}\n */\n getCommentFeedItemByReplyId = (feedItems: FeedItems, replyId?: string): FeedItem | typeof undefined => {\n if (!replyId) {\n return undefined;\n }\n return feedItems.find(item => {\n if ((item.type !== FEED_ITEM_TYPE_ANNOTATION && item.type !== FEED_ITEM_TYPE_COMMENT) || !item.replies) {\n return false;\n }\n return item.replies.some(({ id }) => id === replyId);\n });\n };\n\n /**\n * Returns true if item (based on given item id) is found within feed items or its replies and it, or its parent, can be active (focusable)\n *\n * @param {FeedItems} feedItems - the feed items\n * @param {string} itemId - feed item id\n * @return {boolean}\n */\n isActiveEntryInFeed = (feedItems: FeedItems, itemId: string): boolean =>\n !!(this.getFocusableFeedItemById(feedItems, itemId) || this.getCommentFeedItemByReplyId(feedItems, itemId));\n\n isItemTypeFocusable = (type?: FeedItemType | FocusableFeedItem | CommentFeedItemType): boolean =>\n type === FEED_ITEM_TYPE_ANNOTATION || type === FEED_ITEM_TYPE_COMMENT || type === FEED_ITEM_TYPE_TASK;\n\n isItemTypeComment = (type?: FeedItemType | FocusableFeedItem | CommentFeedItemType): boolean =>\n type === FEED_ITEM_TYPE_ANNOTATION || type === FEED_ITEM_TYPE_COMMENT;\n\n /**\n * Returns active entry data (id, type) based on the activeFeedEntryId and activeFeedEntryType values\n * (it can be existing item or parent if the active entry id belongs to a reply)\n *\n * @param {FeedItems} feedItems - the feed items\n * @return {Promise<{ id: string, type?: FocusableFeedItemType }>}\n */\n getActiveFeedEntryData = (feedItems: FeedItems): Promise<{ id?: string, type?: FeedItemType }> => {\n const { activeFeedEntryId, activeFeedEntryType, api, file } = this.props;\n return new Promise((resolve, reject) => {\n if (!activeFeedEntryId || !activeFeedEntryType || !this.isItemTypeFocusable(activeFeedEntryType)) {\n resolve({});\n return;\n }\n\n // Check if the active entry is a first level Feed item\n const firstLevelItem = this.getFocusableFeedItemById(feedItems, activeFeedEntryId);\n if (firstLevelItem) {\n const { id, type } = firstLevelItem;\n resolve({ id, type });\n return;\n }\n\n // Check if the active entry is within replies of any first level Feed items\n const firstLevelItemWithActiveReply = this.getCommentFeedItemByReplyId(feedItems, activeFeedEntryId);\n if (firstLevelItemWithActiveReply) {\n const { id, type } = firstLevelItemWithActiveReply;\n resolve({ id, type });\n return;\n }\n\n // If the active entry could not be found within feed items, it's most likely a reply that\n // is not yet visible in feed and we need to fetch its data in order to find parent\n api.getFeedAPI(false).fetchThreadedComment(\n file,\n activeFeedEntryId,\n ({ parent }) => {\n const parentItem = this.getFocusableFeedItemById(feedItems, parent?.id);\n const { id, type } = parentItem || {};\n resolve({ id, type });\n },\n (error: ElementsXhrError) => {\n if (error.status === 404) {\n resolve({});\n } else {\n reject(error);\n }\n },\n );\n });\n };\n\n getActiveCommentPath(commentId?: string): string {\n if (!commentId) {\n return '/activity';\n }\n\n return generatePath('/:sidebar/comments/:commentId?', {\n sidebar: 'activity',\n commentId,\n });\n }\n\n /**\n * Fetches replies (comments) of a comment or annotation\n *\n * @param {string} id - id of the feed item\n * @param {CommentFeedItemType} type - type of the feed item\n * @return {void}\n */\n getReplies = (id: string, type: CommentFeedItemType): void => {\n const { api, file } = this.props;\n\n api.getFeedAPI(false).fetchReplies(file, id, type, this.feedSuccessCallback, this.feedErrorCallback);\n\n // need to load the pending item\n this.fetchFeedItems();\n };\n\n /**\n * Gets the user avatar URL\n *\n * @param {string} userId the user id\n * @param {string} fileId the file id\n * @return the user avatar URL string for a given user with access token attached\n */\n getAvatarUrl = async (userId: string): Promise<?string> => {\n const { file, api } = this.props;\n\n return api.getUsersAPI(false).getAvatarUrlWithAccessToken(userId, file.id);\n };\n\n handleAnnotationSelect = (annotation: Annotation): void => {\n const { file_version, id: nextActiveAnnotationId } = annotation;\n const {\n emitActiveAnnotationChangeEvent,\n file,\n getAnnotationsMatchPath,\n getAnnotationsPath,\n history,\n location,\n onAnnotationSelect,\n } = this.props;\n const annotationFileVersionId = getProp(file_version, 'id');\n const currentFileVersionId = getProp(file, 'file_version.id');\n const match = getAnnotationsMatchPath(location);\n const selectedFileVersionId = getProp(match, 'params.fileVersionId', currentFileVersionId);\n\n emitActiveAnnotationChangeEvent(nextActiveAnnotationId);\n\n if (annotationFileVersionId && annotationFileVersionId !== selectedFileVersionId) {\n history.push(getAnnotationsPath(annotationFileVersionId, nextActiveAnnotationId));\n }\n\n onAnnotationSelect(annotation);\n };\n\n handleItemsFiltered = (status?: ActivityFilterItemType) => {\n const { onFilterChange } = this.props;\n\n this.setState({ feedItemsStatusFilter: status });\n onFilterChange(status);\n };\n\n getFilteredFeedItems = (): FeedItems | typeof undefined => {\n const { feedItems, feedItemsStatusFilter } = this.state;\n if (!feedItems || !feedItemsStatusFilter || feedItemsStatusFilter === ACTIVITY_FILTER_OPTION_ALL) {\n return feedItems;\n }\n // Filter is completed on two properties (status and type) because filtering on comments (resolved vs. unresolved)\n // requires looking at item status to see if it is open or resolved. To filter all tasks, we need to look at the\n // item type. Item type is also used to keep versions in the feed. Task also has a status but it's status will be\n // \"NOT_STARTED\" or \"COMPLETED\" so it will not conflict with comment's status.\n return feedItems.filter(item => {\n return (\n item.status === feedItemsStatusFilter ||\n item.type === FEED_ITEM_TYPE_VERSION ||\n item.type === feedItemsStatusFilter\n );\n });\n };\n\n onTaskModalClose = () => {\n this.setState({\n approverSelectorContacts: [],\n });\n };\n\n refresh(shouldRefreshCache: boolean = true): void {\n this.fetchFeedItems(shouldRefreshCache);\n }\n\n renderAddTaskButton = () => {\n const { isDisabled, hasTasks } = this.props;\n const { approverSelectorContacts } = this.state;\n const { getApprover, getAvatarUrl, createTask, onTaskModalClose } = this;\n\n if (!hasTasks) {\n return null;\n }\n\n return (\n <AddTaskButton\n isDisabled={isDisabled}\n onTaskModalClose={onTaskModalClose}\n taskFormProps={{\n approvers: [],\n approverSelectorContacts,\n completionRule: TASK_COMPLETION_RULE_ALL,\n createTask,\n getApproverWithQuery: getApprover,\n getAvatarUrl,\n id: '',\n message: '',\n }}\n />\n );\n };\n\n renderActivitySidebarFilter = () => {\n const { features, hasTasks } = this.props;\n const { feedItemsStatusFilter } = this.state;\n const shouldShowActivityFeedFilter = isFeatureEnabled(features, 'activityFeed.filter.enabled');\n const shouldShowAdditionalFilterOptions = isFeatureEnabled(features, 'activityFeed.newThreadedReplies.enabled');\n\n if (!shouldShowActivityFeedFilter) {\n return null;\n }\n\n const activityFilterOptions: ActivityFilterOption[] = [\n ACTIVITY_FILTER_OPTION_ALL,\n ACTIVITY_FILTER_OPTION_UNRESOLVED,\n ];\n if (shouldShowAdditionalFilterOptions) {\n // Determine which filter options to show based on what activity types are available in current context\n activityFilterOptions.push(ACTIVITY_FILTER_OPTION_RESOLVED);\n if (hasTasks) {\n activityFilterOptions.push(ACTIVITY_FILTER_OPTION_TASKS);\n }\n }\n\n return (\n <ActivitySidebarFilter\n activityFilterOptions={activityFilterOptions}\n feedItemType={feedItemsStatusFilter}\n onFeedItemTypeClick={selectedStatus => {\n this.handleItemsFiltered(selectedStatus);\n }}\n />\n );\n };\n\n renderActions = () => (\n <>\n {this.renderActivitySidebarFilter()}\n {this.renderAddTaskButton()}\n </>\n );\n\n renderTitle = () => {\n const { features } = this.props;\n const shouldHideTitle = isFeatureEnabled(features, 'activityFeed.filter.enabled');\n\n if (shouldHideTitle) {\n return null;\n }\n return <FormattedMessage {...messages.sidebarActivityTitle} />;\n };\n\n render() {\n const {\n activeFeedEntryId,\n activeFeedEntryType,\n currentUser,\n currentUserError,\n elementId,\n features,\n file,\n hasReplies,\n hasVersions,\n isDisabled = false,\n onVersionHistoryClick,\n getUserProfileUrl,\n onTaskView,\n } = this.props;\n const { activityFeedError, approverSelectorContacts, contactsLoaded, mentionSelectorContacts } = this.state;\n const isNewThreadedRepliesEnabled = isFeatureEnabled(features, 'activityFeed.newThreadedReplies.enabled');\n const shouldUseUAA = isFeatureEnabled(features, 'activityFeed.uaaIntegration.enabled');\n\n return (\n <SidebarContent\n actions={this.renderActions()}\n className={classNames('bcs-activity', { 'bcs-activity--full': hasReplies })}\n elementId={elementId}\n sidebarView={SIDEBAR_VIEW_ACTIVITY}\n title={this.renderTitle()}\n >\n <ActivityFeed\n activeFeedEntryId={activeFeedEntryId}\n activeFeedEntryType={activeFeedEntryType}\n activityFeedError={activityFeedError}\n approverSelectorContacts={approverSelectorContacts}\n currentUser={currentUser}\n currentUserError={currentUserError}\n feedItems={this.getFilteredFeedItems()}\n file={file}\n getApproverWithQuery={this.getApprover}\n getAvatarUrl={this.getAvatarUrl}\n getMentionWithQuery={this.getMention}\n getUserProfileUrl={getUserProfileUrl}\n hasNewThreadedReplies={isNewThreadedRepliesEnabled}\n hasReplies={hasReplies}\n hasVersions={hasVersions}\n isDisabled={isDisabled}\n mentionSelectorContacts={mentionSelectorContacts}\n contactsLoaded={contactsLoaded}\n onAnnotationDelete={this.handleAnnotationDelete}\n onAnnotationEdit={this.handleAnnotationEdit}\n onAnnotationSelect={this.handleAnnotationSelect}\n onAnnotationStatusChange={this.handleAnnotationStatusChange}\n onAppActivityDelete={this.deleteAppActivity}\n onCommentCreate={this.createComment}\n onCommentDelete={this.deleteComment}\n onCommentUpdate={this.updateComment}\n onHideReplies={this.updateReplies}\n onReplyCreate={this.createReply}\n onReplyDelete={this.deleteReply}\n onReplyUpdate={this.updateReply}\n onShowReplies={this.getReplies}\n onTaskAssignmentUpdate={this.updateTaskAssignment}\n onTaskCreate={this.createTask}\n onTaskDelete={this.deleteTask}\n onTaskModalClose={this.onTaskModalClose}\n onTaskUpdate={this.updateTask}\n onTaskView={onTaskView}\n onVersionHistoryClick={onVersionHistoryClick}\n shouldUseUAA={shouldUseUAA}\n />\n </SidebarContent>\n );\n }\n}\n\nexport type ActivitySidebarProps = ExternalProps;\nexport { ActivitySidebar as ActivitySidebarComponent };\nexport default flow([\n withLogger(ORIGIN_ACTIVITY_SIDEBAR),\n withErrorBoundary(ORIGIN_ACTIVITY_SIDEBAR),\n withAPIContext,\n withFeatureConsumer,\n withAnnotatorContext,\n withRouterAndRef,\n])(ActivitySidebar);\n"],"file":"ActivitySidebar.js"}
|
|
@@ -29,9 +29,9 @@ $sidebarWidth: $sidebarTabsWidth + $sidebarContentWidth;
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
@include breakpoint($medium-screen) {
|
|
33
|
+
.be {
|
|
34
|
+
&.bcs {
|
|
35
35
|
flex-basis: 100%;
|
|
36
36
|
flex-direction: column;
|
|
37
37
|
width: 100%;
|
|
@@ -39,13 +39,13 @@ $sidebarWidth: $sidebarTabsWidth + $sidebarContentWidth;
|
|
|
39
39
|
max-width: none;
|
|
40
40
|
max-height: 48px;
|
|
41
41
|
transition: max-height .5s ease-in-out 0s;
|
|
42
|
+
}
|
|
42
43
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}
|
|
44
|
+
&.bcs-is-open {
|
|
45
|
+
position: absolute;
|
|
46
|
+
bottom: 0;
|
|
47
|
+
z-index: 5; // Stack sidebar above annotations. See z-index values https://github.com/box/box-annotations/blob/master/src/common/BaseAnnotator.scss
|
|
48
|
+
max-height: 100%;
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
}
|
|
@@ -39,15 +39,13 @@
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
width: auto;
|
|
42
|
+
@include breakpoint($medium-screen) {
|
|
43
|
+
.bcs-content {
|
|
44
|
+
flex-basis: 100%;
|
|
45
|
+
width: auto;
|
|
47
46
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
47
|
+
.bcs-scroll-content {
|
|
48
|
+
width: auto;
|
|
51
49
|
}
|
|
52
50
|
}
|
|
53
51
|
}
|
|
@@ -64,17 +64,8 @@
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
.bcs .bcs-NavButton,
|
|
70
|
-
.bcs-SidebarNav-secondary .btn-plain,
|
|
71
|
-
.bdl-AdditionalTab {
|
|
72
|
-
width: $sidebarTabResponsiveSize - 2; //Reducing by 2px allows all the icons to fit on the smallest supported screen size (320px)
|
|
73
|
-
margin-right: 0;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
@include breakpoint($medium-screen) {
|
|
67
|
+
@include breakpoint($medium-screen) {
|
|
68
|
+
.bcs {
|
|
78
69
|
.bcs-SidebarNav,
|
|
79
70
|
.bcs-SidebarNav-tabs,
|
|
80
71
|
.bcs-SidebarNav-main {
|
|
@@ -89,25 +80,25 @@
|
|
|
89
80
|
margin-right: 12px;
|
|
90
81
|
}
|
|
91
82
|
|
|
83
|
+
.bcs-SidebarNav-secondary > :last-child,
|
|
84
|
+
.bdl-AdditionalTabs > :last-child {
|
|
85
|
+
margin-right: 0;
|
|
86
|
+
}
|
|
87
|
+
|
|
92
88
|
.bdl-AdditionalTab:not(.bdl-is-overflow),
|
|
93
89
|
.bdl-AdditionalTabPlaceholder {
|
|
94
90
|
display: none;
|
|
95
91
|
}
|
|
96
92
|
|
|
97
|
-
.bdl-AdditionalTabs > :last-child,
|
|
98
|
-
.bcs-SidebarNav-secondary > :last-child {
|
|
99
|
-
margin-right: 0;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
93
|
.bcs-SidebarNav-overflow {
|
|
103
|
-
.bdl-AdditionalTabs {
|
|
104
|
-
padding: 0;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
94
|
&::after,
|
|
108
95
|
&::before {
|
|
109
96
|
display: none;
|
|
110
97
|
}
|
|
98
|
+
|
|
99
|
+
.bdl-AdditionalTabs {
|
|
100
|
+
padding: 0;
|
|
101
|
+
}
|
|
111
102
|
}
|
|
112
103
|
|
|
113
104
|
.bcs-SidebarNav-footer {
|
|
@@ -127,3 +118,14 @@
|
|
|
127
118
|
}
|
|
128
119
|
}
|
|
129
120
|
}
|
|
121
|
+
|
|
122
|
+
@include breakpoint($small-screen) {
|
|
123
|
+
.bcs {
|
|
124
|
+
.bcs-NavButton,
|
|
125
|
+
.bcs-SidebarNav-secondary .btn-plain,
|
|
126
|
+
.bdl-AdditionalTab {
|
|
127
|
+
width: $sidebarTabResponsiveSize - 2; // Reducing by 2px allows all the icons to fit on the smallest supported screen size (320px)
|
|
128
|
+
margin-right: 0;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
@@ -32,21 +32,19 @@
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
margin-right: $bdl-grid-unit * 3;
|
|
35
|
+
@include breakpoint($medium-screen) {
|
|
36
|
+
.bcs .bcs-NavButton {
|
|
37
|
+
width: $sidebarTabResponsiveSize;
|
|
38
|
+
height: $sidebarTabResponsiveSize;
|
|
39
|
+
margin-right: $bdl-grid-unit * 3;
|
|
41
40
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
41
|
+
&::before {
|
|
42
|
+
top: $sidebarTabResponsiveSize;
|
|
43
|
+
right: 0;
|
|
44
|
+
bottom: 0;
|
|
45
|
+
left: 0;
|
|
46
|
+
width: auto;
|
|
47
|
+
height: 2px;
|
|
50
48
|
}
|
|
51
49
|
}
|
|
52
50
|
}
|
|
@@ -14,14 +14,12 @@
|
|
|
14
14
|
margin-top: 2px; //for visual alignment
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
17
|
+
@include breakpoint($medium-screen) {
|
|
18
|
+
.bcs-SidebarNavSignButton-icon {
|
|
19
|
+
display: none;
|
|
20
|
+
}
|
|
22
21
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
22
|
+
.bcs-SidebarNavSignButton-icon--grayscale {
|
|
23
|
+
display: inline;
|
|
26
24
|
}
|
|
27
25
|
}
|
|
@@ -90,6 +90,14 @@ const ActiveState = (_ref) => {
|
|
|
90
90
|
_onShowReplies(id, type);
|
|
91
91
|
};
|
|
92
92
|
|
|
93
|
+
const onCommentStatusChangeHandler = props => {
|
|
94
|
+
if (onCommentEdit) {
|
|
95
|
+
onCommentEdit(_objectSpread({
|
|
96
|
+
hasMention: false
|
|
97
|
+
}, props));
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
|
|
93
101
|
const hasMultipleVersions = item => item.versions || shouldUseUAA && item.version_start !== item.version_end;
|
|
94
102
|
|
|
95
103
|
return React.createElement("ul", {
|
|
@@ -141,7 +149,9 @@ const ActiveState = (_ref) => {
|
|
|
141
149
|
onDelete: onCommentDelete,
|
|
142
150
|
onCommentEdit: onCommentEdit,
|
|
143
151
|
onReplyCreate: reply => _onReplyCreate(item.id, FEED_ITEM_TYPE_COMMENT, reply),
|
|
144
|
-
|
|
152
|
+
onReplyDelete: onReplyDeleteHandler(item.id),
|
|
153
|
+
onShowReplies: () => _onShowReplies(item.id, FEED_ITEM_TYPE_COMMENT),
|
|
154
|
+
onStatusChange: onCommentStatusChangeHandler
|
|
145
155
|
})) : React.createElement(ActivityThread, {
|
|
146
156
|
"data-testid": "activity-thread",
|
|
147
157
|
currentUser: currentUser,
|
|
@@ -246,7 +256,9 @@ const ActiveState = (_ref) => {
|
|
|
246
256
|
isCurrentVersion: currentFileVersionId === itemFileVersionId
|
|
247
257
|
}),
|
|
248
258
|
onAnnotationEdit: onAnnotationEdit,
|
|
259
|
+
onCommentEdit: onCommentEdit,
|
|
249
260
|
onDelete: onAnnotationDelete,
|
|
261
|
+
onStatusChange: onAnnotationStatusChange,
|
|
250
262
|
onReplyCreate: reply => _onReplyCreate(item.id, FEED_ITEM_TYPE_ANNOTATION, reply),
|
|
251
263
|
onShowReplies: () => _onShowReplies(item.id, FEED_ITEM_TYPE_ANNOTATION),
|
|
252
264
|
tagged_message: (_ref2 = (_item$description = item.description) === null || _item$description === void 0 ? void 0 : _item$description.message) !== null && _ref2 !== void 0 ? _ref2 : ''
|