public static getCategoricalValues()

in src/columns.ts [42:67]


    public static getCategoricalValues(dataView: DataView) {
        const categorical: DataViewCategorical = dataView && dataView.categorical;

        const categories: (DataViewCategoryColumn | DataViewValueColumn)[] = categorical && categorical.categories || [];
        const values: DataViewValueColumns = categorical && categorical.values || <DataViewValueColumns>[];

        const series: any = categorical && values.source && this.getSeriesValues(dataView);

        return categorical && _.mapValues(new this<any[]>(), (n, i) =>
            (<(DataViewCategoryColumn | DataViewValueColumn)[]>_
                .toArray(categories))
                .concat(_.toArray(values))
                .filter(x => x.source.roles && x.source.roles[i])
                .map(x => x.values.map(y => {
                    if (_.isString(y)) {
                        let date: Date = new Date(y);
                        if (isNaN(date.getTime())) {
                            return y;
                        }

                        return date;
                    }
                    return y;
                }))[0]
            || values.source && values.source.roles && values.source.roles[i] && series);
    }