diff --git a/src/files-and-videos/files-page/FilesPage.test.jsx b/src/files-and-videos/files-page/FilesPage.test.jsx index 140623146..9c5f7a46c 100644 --- a/src/files-and-videos/files-page/FilesPage.test.jsx +++ b/src/files-and-videos/files-page/FilesPage.test.jsx @@ -339,7 +339,7 @@ describe('FilesAndUploads', () => { const assetMenuButton = screen.getByTestId('file-menu-dropdown-mOckID1'); expect(assetMenuButton).toBeVisible(); - axiosMock.onGet(`${getAssetsUrl(courseId)}mOckID1/usage`).reply(201, { usageLocations: ['subsection - unit / block'] }); + axiosMock.onGet(`${getAssetsUrl(courseId)}mOckID1/usage`).reply(201, { usage_locations: { mOckID1: ['subsection - unit / block'] } }); await waitFor(() => { fireEvent.click(within(assetMenuButton).getByLabelText('file-menu-toggle')); fireEvent.click(screen.getByText('Info')); @@ -364,7 +364,7 @@ describe('FilesAndUploads', () => { expect(assetMenuButton).toBeVisible(); axiosMock.onPut(`${getAssetsUrl(courseId)}mOckID1`).reply(201, { locked: false }); - axiosMock.onGet(`${getAssetsUrl(courseId)}mOckID1/usage`).reply(201, { usageLocations: [] }); + axiosMock.onGet(`${getAssetsUrl(courseId)}mOckID1/usage`).reply(201, { usage_locations: { mOckID1: [] } }); await waitFor(() => { fireEvent.click(within(assetMenuButton).getByLabelText('file-menu-toggle')); fireEvent.click(screen.getByText('Info')); diff --git a/src/files-and-videos/files-page/data/api.js b/src/files-and-videos/files-page/data/api.js index 357e3ff2c..b86d62340 100644 --- a/src/files-and-videos/files-page/data/api.js +++ b/src/files-and-videos/files-page/data/api.js @@ -82,7 +82,8 @@ export async function getDownload(selectedRows, courseId) { export async function getAssetUsagePaths({ courseId, assetId }) { const { data } = await getAuthenticatedHttpClient() .get(`${getAssetsUrl(courseId)}${assetId}/usage`); - return camelCaseObject(data); + const { usage_locations: usageLocations } = data; + return { usageLocations }; } /** diff --git a/src/files-and-videos/files-page/data/thunks.js b/src/files-and-videos/files-page/data/thunks.js index 6e5bad6a6..27922f095 100644 --- a/src/files-and-videos/files-page/data/thunks.js +++ b/src/files-and-videos/files-page/data/thunks.js @@ -132,11 +132,12 @@ export function getUsagePaths({ asset, courseId }) { try { const { usageLocations } = await getAssetUsagePaths({ assetId: asset.id, courseId }); + const assetLocations = usageLocations[asset.id]; dispatch(updateModel({ modelType: 'assets', model: { id: asset.id, - usageLocations, + usageLocations: assetLocations, }, })); dispatch(updateEditStatus({ editType: 'usageMetrics', status: RequestStatus.SUCCESSFUL })); diff --git a/src/files-and-videos/files-page/data/utils.js b/src/files-and-videos/files-page/data/utils.js index 71c73057d..2526b4ad4 100644 --- a/src/files-and-videos/files-page/data/utils.js +++ b/src/files-and-videos/files-page/data/utils.js @@ -32,7 +32,6 @@ export const updateFileValues = (files) => { ...file, wrapperType, dateAdded: utcDateTime, - usageLocations: [], }); }); diff --git a/src/files-and-videos/generic/EditFileErrors.jsx b/src/files-and-videos/generic/EditFileErrors.jsx index d0de5db6d..0b1d04986 100644 --- a/src/files-and-videos/generic/EditFileErrors.jsx +++ b/src/files-and-videos/generic/EditFileErrors.jsx @@ -74,7 +74,6 @@ EditFileErrors.propTypes = { delete: PropTypes.arrayOf(PropTypes.string).isRequired, lock: PropTypes.arrayOf(PropTypes.string), download: PropTypes.arrayOf(PropTypes.string).isRequired, - usageMetrics: PropTypes.arrayOf(PropTypes.string).isRequired, thumbnail: PropTypes.arrayOf(PropTypes.string), }).isRequired, addFileStatus: PropTypes.string.isRequired, diff --git a/src/files-and-videos/videos-page/data/utils.js b/src/files-and-videos/videos-page/data/utils.js index ab227b1d3..a5c4963e4 100644 --- a/src/files-and-videos/videos-page/data/utils.js +++ b/src/files-and-videos/videos-page/data/utils.js @@ -43,7 +43,6 @@ export const updateFileValues = (files) => { id: edxVideoId, wrapperType, dateAdded: created.toString(), - usageLocations: [], status: uploadStatus, thumbnail, });