private static getFormatters()

in src/gantt.ts [673:710]


    private static getFormatters(
        dataView: DataView,
        settings: GanttSettings,
        cultureSelector: string): GanttChartFormatters {

        if (!dataView ||
            !dataView.metadata ||
            !dataView.metadata.columns) {
            return null;
        }

        let dateFormat: string = "d";
        for (let dvColumn of dataView.metadata.columns) {
            if (Gantt.hasRole(dvColumn, GanttRoles.StartDate)) {
                dateFormat = dvColumn.format;
            }
        }

        // Priority of using date format: Format from dvColumn -> Format by culture selector -> Custom Format
        if (cultureSelector) {
            dateFormat = null;
        }

        if (!settings.tooltipConfig.dateFormat) {
            settings.tooltipConfig.dateFormat = dateFormat;
        }

        if (settings.tooltipConfig.dateFormat &&
            settings.tooltipConfig.dateFormat !== dateFormat) {

            dateFormat = settings.tooltipConfig.dateFormat;
        }

        return <GanttChartFormatters>{
            startDateFormatter: ValueFormatter.create({ format: dateFormat, cultureSelector }),
            completionFormatter: ValueFormatter.create({ format: PercentFormat, value: 1, allowFormatBeautification: true })
        };
    }