import React from 'react';
import MarketingBlurb from 'src/components/marketingBlurb';
import MarketingPriorityComponent from 'src/components/marketingPriority';
import ProjectMarketingHighlights from 'src/components/projectMarketingHighlights';
import type { FC } from 'react';
import type {
    MarketingHighlightsState,
    MarketingPriorityState,
    MarketingProgramInfosState,
    Territory,
} from 'src/types';

export interface MarketingDetailsProps {
    productId: string;
    marketingPriorityState: MarketingPriorityState;
    marketingHighlightsState: MarketingHighlightsState;
    marketingProgramInfosState: MarketingProgramInfosState;
    marketingTerritories: Territory[];
    editable: boolean;
    debug?: boolean;
    onEdit: () => void;
}

const MarketingDetails: FC<MarketingDetailsProps> = ({
    productId,
    marketingHighlightsState,
    marketingProgramInfosState,
    marketingPriorityState,
    marketingTerritories,
    editable,
    debug = false,
    onEdit,
}) => {
    return (
        <div className="MarketingDetails">
            <ProjectMarketingHighlights
                editable={editable}
                marketingHighlightsState={marketingHighlightsState}
                marketingTerritories={marketingTerritories}
            />
            <MarketingBlurb
                editable={editable}
                productId={productId}
                marketingProgramInfosState={marketingProgramInfosState}
            />
            <MarketingPriorityComponent
                editable={editable}
                marketingPriorityState={marketingPriorityState}
                marketingTerritories={marketingTerritories}
            />
        </div>
    );
};

export default MarketingDetails;
