diff --git a/src/elements/content-uploader/ContentUploader.tsx b/src/elements/content-uploader/ContentUploader.tsx index 9f733cdd1f..d9f3856da3 100644 --- a/src/elements/content-uploader/ContentUploader.tsx +++ b/src/elements/content-uploader/ContentUploader.tsx @@ -93,6 +93,8 @@ export interface ContentUploaderProps { onClickRetry: (item: UploadItem) => void; onClose: () => void; onComplete: (items: UploadItem[]) => void; + onItemShare?: (itemId: string) => void; + onItemOpen?: (itemId: string) => void; onError: Function; onMinimize?: () => void; onProgress: (item: UploadItem) => void; @@ -1451,6 +1453,8 @@ class ContentUploader extends Component { messages, onClose, onUpgradeCTAClick, + onItemShare, + onItemOpen, rootFolderId, theme, useUploadsManager, @@ -1480,6 +1484,8 @@ class ContentUploader extends Component { onItemCancel={this.handleUploadsManagerItemCancel} onItemRetry={this.handleUploadsManagerItemRetry} onItemRemove={this.handleUploadsManagerItemRemove} + onItemShare={onItemShare} + onItemOpen={onItemOpen} onCancelAll={this.handleCancelAllClick} onRetryAll={this.handleUploadsManagerRetryAll} /> diff --git a/src/elements/content-uploader/__tests__/ContentUploader.test.js b/src/elements/content-uploader/__tests__/ContentUploader.test.js index 931b53f4cc..0697862b00 100644 --- a/src/elements/content-uploader/__tests__/ContentUploader.test.js +++ b/src/elements/content-uploader/__tests__/ContentUploader.test.js @@ -1300,6 +1300,28 @@ describe('elements/content-uploader/ContentUploader', () => { expect(resetSpy).not.toHaveBeenCalled(); expect(uploadFileSpy).not.toHaveBeenCalled(); }); + + test('should pass onItemShare prop to UploadsManagerBP', () => { + const onItemShare = jest.fn(); + const wrapper = getWrapper({ enableModernizedUploads: true, onItemShare }); + expect(wrapper.find(UploadsManagerBP).prop('onItemShare')).toBe(onItemShare); + }); + + test('should pass onItemOpen prop to UploadsManagerBP', () => { + const onItemOpen = jest.fn(); + const wrapper = getWrapper({ enableModernizedUploads: true, onItemOpen }); + expect(wrapper.find(UploadsManagerBP).prop('onItemOpen')).toBe(onItemOpen); + }); + + test('should default onItemShare to undefined when not provided', () => { + const wrapper = getWrapper({ enableModernizedUploads: true }); + expect(wrapper.find(UploadsManagerBP).prop('onItemShare')).toBeUndefined(); + }); + + test('should default onItemOpen to undefined when not provided', () => { + const wrapper = getWrapper({ enableModernizedUploads: true }); + expect(wrapper.find(UploadsManagerBP).prop('onItemOpen')).toBeUndefined(); + }); }); }); });