UNPKG

@shopify/polaris

Version:

Shopify’s product component library

18 lines (17 loc) 686 B
export function sortAndOverrideActionOrder(actions) { const actionsWithOverrides = actions.filter((action) => action.index !== undefined); if (actionsWithOverrides.length === 0) { return actions; } const sortedActionsWithOverrides = actionsWithOverrides.sort(({ index: indexA }, { index: indexB }) => { return indexA - indexB; }); const actionsWithoutOverrides = actions.filter((action) => action.index === undefined); const overriddenActions = [ ...actionsWithoutOverrides, ]; sortedActionsWithOverrides.forEach((action) => { overriddenActions.splice(action.index, 0, action); }); return overriddenActions; }