@sanity/desk-tool
Version:
Tool for managing all sorts of content in a structured manner
47 lines (46 loc) • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getProductionPreviewItem = exports.getMenuItems = void 0;
var _icons = require("@sanity/icons");
var getHistoryMenuItem = params => {
var features = params.features,
hasValue = params.hasValue,
changesOpen = params.changesOpen;
if (!features.reviewChanges) return null;
return {
action: 'reviewChanges',
title: 'Review changes',
icon: _icons.RestoreIcon,
isDisabled: changesOpen || !hasValue
};
};
var getInspectItem = _ref => {
var hasValue = _ref.hasValue;
return {
action: 'inspect',
title: 'Inspect',
icon: _icons.BinaryDocumentIcon,
isDisabled: !hasValue,
shortcut: 'Ctrl+Alt+I'
};
};
var getProductionPreviewItem = _ref2 => {
var previewUrl = _ref2.previewUrl;
if (!previewUrl) {
return null;
}
return {
action: 'production-preview',
title: 'Open preview',
icon: _icons.EarthAmericasIcon,
shortcut: 'Ctrl+Alt+O'
};
};
exports.getProductionPreviewItem = getProductionPreviewItem;
var getMenuItems = params => {
var items = [getProductionPreviewItem, getHistoryMenuItem, getInspectItem].filter(Boolean).map(fn => fn(params));
return items.filter(i => i !== null);
};
exports.getMenuItems = getMenuItems;