@dra2020/dra-types 1.8.100 → 1.8.101
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/colormgr.d.ts +2 -0
- package/dist/dra-types.js +40 -2
- package/dist/dra-types.js.map +1 -1
- package/dist/packedfields.d.ts +1 -3
- package/lib/colormgr.ts +44 -1
- package/lib/packedfields.ts +4 -3
- package/package.json +1 -1
package/dist/colormgr.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export declare function allGroups16Colors(palette: PaletteName, colors: string[]
|
|
|
51
51
|
export interface DistrictCache {
|
|
52
52
|
colorElection?: string;
|
|
53
53
|
colorEthnic?: string;
|
|
54
|
+
colorExtended?: string;
|
|
54
55
|
colorSolid?: string;
|
|
55
56
|
}
|
|
56
57
|
export interface ColorProp {
|
|
@@ -66,4 +67,5 @@ export interface DistrictColorParams {
|
|
|
66
67
|
usePalette: string;
|
|
67
68
|
colorDistrictsBy: string;
|
|
68
69
|
}
|
|
70
|
+
export declare function ToExtendedColor(agg: PF.PackedFields, dc: PF.DatasetContext, colorBy: string): string;
|
|
69
71
|
export declare function computeDistrictColors(params: DistrictColorParams): DistrictCache[];
|
package/dist/dra-types.js
CHANGED
|
@@ -107,9 +107,10 @@ exports.BucketMap = {
|
|
|
107
107
|
|
|
108
108
|
|
|
109
109
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
110
|
-
exports.computeDistrictColors = exports.allGroups16Colors = exports.colorsFromStopsPartisan = exports.colorsFromStops = exports.PaletteNames = exports.ColorFromRGBPcts = exports.AggregatePartisanColorStr = exports.AggregatePartisanColor = exports.AggregateEthnicColor = exports.ToEthnicColorStr = exports.ToPartisanShiftColor = exports.ToPartisanDistrictColor = exports.ToPartisanColorStr = exports.ToAllEthnicColor = exports.ethnicBackgroundColor = exports.makeStops = exports.DefaultPaletteDefaults = exports.EthnicFewStops = exports.PartisanPrecinctStops = exports.PartisanDistrictStops = exports.ColorByGreatD = exports.ColorByGoodD = exports.ColorByFairD = exports.ColorByEven = exports.ColorByFairR = exports.ColorByGoodR = exports.ColorByGreatR = exports.EthnicTextColor = exports.ColorByBlackAsian = exports.ColorByAsianHispanic = exports.ColorByAsianWhite = exports.ColorByHispanicBlack = exports.ColorByBlackWhite = exports.ColorByHispanicWhite = exports.ColorByMix = exports.ColorByMostlyNative = exports.ColorByMostlyAsian = exports.ColorByMostlyHispanic = exports.ColorByMostlyBlack = exports.ColorByMostlyWhite = exports.ColorBySolidAsian = exports.ColorBySolidHispanic = exports.ColorBySolidBlack = exports.ColorBySolidWhite = void 0;
|
|
110
|
+
exports.computeDistrictColors = exports.ToExtendedColor = exports.allGroups16Colors = exports.colorsFromStopsPartisan = exports.colorsFromStops = exports.PaletteNames = exports.ColorFromRGBPcts = exports.AggregatePartisanColorStr = exports.AggregatePartisanColor = exports.AggregateEthnicColor = exports.ToEthnicColorStr = exports.ToPartisanShiftColor = exports.ToPartisanDistrictColor = exports.ToPartisanColorStr = exports.ToAllEthnicColor = exports.ethnicBackgroundColor = exports.makeStops = exports.DefaultPaletteDefaults = exports.EthnicFewStops = exports.PartisanPrecinctStops = exports.PartisanDistrictStops = exports.ColorByGreatD = exports.ColorByGoodD = exports.ColorByFairD = exports.ColorByEven = exports.ColorByFairR = exports.ColorByGoodR = exports.ColorByGreatR = exports.EthnicTextColor = exports.ColorByBlackAsian = exports.ColorByAsianHispanic = exports.ColorByAsianWhite = exports.ColorByHispanicBlack = exports.ColorByBlackWhite = exports.ColorByHispanicWhite = exports.ColorByMix = exports.ColorByMostlyNative = exports.ColorByMostlyAsian = exports.ColorByMostlyHispanic = exports.ColorByMostlyBlack = exports.ColorByMostlyWhite = exports.ColorBySolidAsian = exports.ColorBySolidHispanic = exports.ColorBySolidBlack = exports.ColorBySolidWhite = void 0;
|
|
111
111
|
// App libraries
|
|
112
112
|
const PF = __webpack_require__(/*! ./packedfields */ "./lib/packedfields.ts");
|
|
113
|
+
const datasets_1 = __webpack_require__(/*! ./datasets */ "./lib/datasets.ts");
|
|
113
114
|
const baseclient_1 = __webpack_require__(/*! @dra2020/baseclient */ "@dra2020/baseclient");
|
|
114
115
|
// All Groups Mosaic has 16 colors
|
|
115
116
|
// Index values into the 16 colors
|
|
@@ -569,6 +570,38 @@ function allGroups16Colors(palette, colors) {
|
|
|
569
570
|
return modColors;
|
|
570
571
|
}
|
|
571
572
|
exports.allGroups16Colors = allGroups16Colors;
|
|
573
|
+
function ToExtendedColor(agg, dc, colorBy) {
|
|
574
|
+
var _a;
|
|
575
|
+
// compute pct
|
|
576
|
+
const { datasetid, field } = (0, datasets_1.parseColorBy)(colorBy);
|
|
577
|
+
if (!datasetid || !field || !dc.dsMeta || !dc.dsMeta[datasetid] || !((_a = dc.dsMeta[datasetid]) === null || _a === void 0 ? void 0 : _a.fields[field]))
|
|
578
|
+
return '#ffffff';
|
|
579
|
+
const meta = dc.dsMeta[datasetid];
|
|
580
|
+
let getter = PF.ToGetter(agg, dc, datasetid, datasetid);
|
|
581
|
+
let fields = PF.sortedFieldList(meta);
|
|
582
|
+
let den = 0;
|
|
583
|
+
if (meta.fields['Tot'])
|
|
584
|
+
den = getter('Tot');
|
|
585
|
+
else
|
|
586
|
+
fields.forEach(f => { den += getter(f); });
|
|
587
|
+
let num = 0;
|
|
588
|
+
let dfield = meta.fields[field];
|
|
589
|
+
if (dfield.colorBySum)
|
|
590
|
+
for (let i = 0; i < fields.length; i++) {
|
|
591
|
+
num += getter(fields[i]);
|
|
592
|
+
if (fields[i] === field)
|
|
593
|
+
break;
|
|
594
|
+
}
|
|
595
|
+
else
|
|
596
|
+
num = getter(field);
|
|
597
|
+
// Careful...
|
|
598
|
+
if (den == 0 || den === undefined || isNaN(den) || num === undefined || isNaN(num))
|
|
599
|
+
return '#ffffff';
|
|
600
|
+
const pct = dfield.invert ? 1 - (num / den) : num / den;
|
|
601
|
+
const color = baseclient_1.Util.execGradient(makeStops(exports.EthnicFewStops, baseclient_1.Colors.EthnicFewClassicColors), pct);
|
|
602
|
+
return color;
|
|
603
|
+
}
|
|
604
|
+
exports.ToExtendedColor = ToExtendedColor;
|
|
572
605
|
function computeDistrictColors(params) {
|
|
573
606
|
let dcNew = [];
|
|
574
607
|
for (let i = 0; i < params.aggregates.length; i++) {
|
|
@@ -593,7 +626,12 @@ function computeDistrictColors(params) {
|
|
|
593
626
|
dc.colorSolid = dc.colorEthnic;
|
|
594
627
|
break;
|
|
595
628
|
default:
|
|
596
|
-
|
|
629
|
+
if ((0, datasets_1.isColorBy)(params.colorDistrictsBy)) {
|
|
630
|
+
dc.colorExtended = ToExtendedColor(agg, params.datasetContext, params.colorDistrictsBy);
|
|
631
|
+
dc.colorSolid = dc.colorExtended;
|
|
632
|
+
}
|
|
633
|
+
else
|
|
634
|
+
dc.colorSolid = mapColor;
|
|
597
635
|
break;
|
|
598
636
|
}
|
|
599
637
|
dcNew.push(dc);
|