fix: xblock error mfe unit preview (#1508)

* feat: add functionality to see unit draft preview

* fix: course redirect unit to sequnce unit redirect

* fix: not showing preview when masquerading

* feat: in preview fetch draft branch of sequence metadata
This commit is contained in:
Kristin Aoki
2024-11-01 13:22:24 -04:00
committed by GitHub
parent 65343470e1
commit e337a367d1
7 changed files with 14 additions and 13 deletions

View File

@@ -204,7 +204,7 @@ const Sequence = ({
sequenceId={sequenceId}
unitId={unitId}
unitLoadedHandler={handleUnitLoaded}
isStaff={isStaff}
isOriginalUserStaff={originalUserIsStaff}
/>
{unitHasLoaded && renderUnitNavigation(false)}
</div>

View File

@@ -15,7 +15,7 @@ const SequenceContent = ({
sequenceId,
unitId,
unitLoadedHandler,
isStaff,
isOriginalUserStaff,
}) => {
const intl = useIntl();
const sequence = useModel('sequences', sequenceId);
@@ -60,7 +60,7 @@ const SequenceContent = ({
key={unitId}
id={unitId}
onLoaded={unitLoadedHandler}
isStaff={isStaff}
isOriginalUserStaff={isOriginalUserStaff}
/>
);
};
@@ -71,7 +71,7 @@ SequenceContent.propTypes = {
sequenceId: PropTypes.string.isRequired,
unitId: PropTypes.string,
unitLoadedHandler: PropTypes.func.isRequired,
isStaff: PropTypes.bool.isRequired,
isOriginalUserStaff: PropTypes.bool.isRequired,
};
SequenceContent.defaultProps = {

View File

@@ -22,7 +22,7 @@ const Unit = ({
format,
onLoaded,
id,
isStaff,
isOriginalUserStaff,
}) => {
const { formatMessage } = useIntl();
const [searchParams] = useSearchParams();
@@ -33,7 +33,7 @@ const Unit = ({
const unit = useModel(modelKeys.units, id);
const isProcessing = unit.bookmarkedUpdateState === 'loading';
const view = authenticatedUser ? views.student : views.public;
const shouldDisplayUnitPreview = pathname.startsWith('/preview') && isStaff;
const shouldDisplayUnitPreview = pathname.startsWith('/preview') && isOriginalUserStaff;
const getUrl = usePluginsCallback('getIFrameUrl', () => getIFrameUrl({
id,
@@ -78,7 +78,7 @@ Unit.propTypes = {
format: PropTypes.string,
id: PropTypes.string.isRequired,
onLoaded: PropTypes.func,
isStaff: PropTypes.bool.isRequired,
isOriginalUserStaff: PropTypes.bool.isRequired,
};
Unit.defaultProps = {