import { editionsMockData } from './productEditions';
import { addonsMock } from './description/addons';
import { summaryMock } from './summary';
import { selectedEditionsMock } from './configuratorSelectedEdition';
import { configuratorDefaultCallToActionsMock, configuratorUpdateCartCallToActionsMock, configuratorNoAddToCartCallToActionsMock, configuratorUpgradeCallToActionsMock } from './callToActions';


export const productConfiguratorMock = {
    configurator: selectedEditionsMock.configurator,
    editions: editionsMockData,
    addonProducts: {
        items: addonsMock,
        i18n: {
            addons: 'Add-ons available',
            added: 'Added',
            addToOrder: 'Add to Order',
            selectAddonsTitle: 'Add-ons available for selected edition',
            remove: 'Remove',
            selected: 'Selected'
        }
    },
    callToActions: configuratorDefaultCallToActionsMock,
    summary: summaryMock,
    i18n: {
        audience: 'Ideal For',
        inclusions: 'Included',
        mostPopular: 'Most Popular',
        availablePricing: 'Available Pricing:',
        select: 'Select',
        selected: 'Selected',
        hideDetails: 'Hide Details',
        selectEditionTitle: 'Select an edition',
        viewDetails: 'View Details'
    }
};

export const productConfiguratorWithoutAddons = {
    ...productConfiguratorMock,
    ...{ addonProducts: { items: [] } }
};

export const productConfiguratorNoAddToCartCartMock = {
    ...productConfiguratorMock,
    callToActions: configuratorNoAddToCartCallToActionsMock
};

export const productConfiguratorBackFromCartMock = {
    ...productConfiguratorMock,
    callToActions: configuratorUpdateCartCallToActionsMock
};

export const productConfiguratorNoSelectedEditionsMock = {
    ...productConfiguratorMock,
    callToActions: configuratorUpdateCartCallToActionsMock,
    configurator: {
        ...productConfiguratorMock.configurator,
        selectedEdition: null
    }
};

export const productConfiguratorUpgradeMock = {
    ...productConfiguratorMock,
    callToActions: configuratorUpgradeCallToActionsMock
};
