election-vibe 0.1.5 → 0.1.7
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/cli.js +193 -137
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -216,7 +216,7 @@ var REHEARSAL_SENTENCE = {
|
|
|
216
216
|
|
|
217
217
|
// src/http.ts
|
|
218
218
|
import { gunzipSync } from "zlib";
|
|
219
|
-
var USER_AGENT = `ElectionsCompanion/${"0.1.
|
|
219
|
+
var USER_AGENT = `ElectionsCompanion/${"0.1.7"} (unofficial results reader; local, no telemetry)`;
|
|
220
220
|
function retryAfterMs(header, nowMs) {
|
|
221
221
|
if (!header) return void 0;
|
|
222
222
|
const t = header.trim();
|
|
@@ -276,6 +276,7 @@ async function fetchDocument(url, opts) {
|
|
|
276
276
|
const timer = setTimeout(() => ctl.abort(), opts.timeoutMs ?? 15e3);
|
|
277
277
|
try {
|
|
278
278
|
const headers = { "user-agent": USER_AGENT, accept: "application/json, text/plain, */*" };
|
|
279
|
+
if (opts.acceptEncoding) headers["accept-encoding"] = opts.acceptEncoding;
|
|
279
280
|
if (opts.etag) headers["if-none-match"] = opts.etag;
|
|
280
281
|
const origin = new URL(url);
|
|
281
282
|
let current = url;
|
|
@@ -2248,7 +2249,7 @@ async function cycle(deps, opts) {
|
|
|
2248
2249
|
s = countRequest(s, deps.now());
|
|
2249
2250
|
stores.prod.sources[src.id] = s;
|
|
2250
2251
|
report.requests[src.id] = (report.requests[src.id] ?? 0) + 1;
|
|
2251
|
-
return fetchDocument(url, { now: deps.now, fetchImpl: deps.fetchImpl, maxBytes: 16 * 1024 * 1024, method });
|
|
2252
|
+
return fetchDocument(url, { now: deps.now, fetchImpl: deps.fetchImpl, maxBytes: 16 * 1024 * 1024, method, ...src.kind === "clarity" ? { acceptEncoding: "identity" } : {} });
|
|
2252
2253
|
};
|
|
2253
2254
|
const fail = (src, r) => {
|
|
2254
2255
|
stores.prod.sources[src.id] = afterFailure(stores.prod.sources[src.id] ?? freshSourceState(src.id, deps.now()), r, deps.now(), deps.random);
|
|
@@ -2947,11 +2948,7 @@ var registry_default = {
|
|
|
2947
2948
|
candidates: [
|
|
2948
2949
|
"Yes",
|
|
2949
2950
|
"No"
|
|
2950
|
-
]
|
|
2951
|
-
presets: [
|
|
2952
|
-
"hot"
|
|
2953
|
-
],
|
|
2954
|
-
presetReason: "Statewide ballot measure (repeal ranked-choice voting and open primaries), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Alaska_elections)"
|
|
2951
|
+
]
|
|
2955
2952
|
},
|
|
2956
2953
|
{
|
|
2957
2954
|
id: "2026-11-03.ak.governor.regular",
|
|
@@ -3043,7 +3040,7 @@ var registry_default = {
|
|
|
3043
3040
|
presets: [
|
|
3044
3041
|
"hot"
|
|
3045
3042
|
],
|
|
3046
|
-
presetReason: "
|
|
3043
|
+
presetReason: "Margin of 0.2 points on first choices; ranked-choice general, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Alaska)"
|
|
3047
3044
|
},
|
|
3048
3045
|
{
|
|
3049
3046
|
id: "2026-11-03.al.governor.regular",
|
|
@@ -3069,7 +3066,11 @@ var registry_default = {
|
|
|
3069
3066
|
candidates: [
|
|
3070
3067
|
"Tommy Tuberville",
|
|
3071
3068
|
"Doug Jones"
|
|
3072
|
-
]
|
|
3069
|
+
],
|
|
3070
|
+
presets: [
|
|
3071
|
+
"hot"
|
|
3072
|
+
],
|
|
3073
|
+
presetReason: "Margin of 4.1 points; open seat, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Alabama_gubernatorial_election)"
|
|
3073
3074
|
},
|
|
3074
3075
|
{
|
|
3075
3076
|
id: "2026-11-03.al.us-house-1.regular",
|
|
@@ -3480,7 +3481,7 @@ var registry_default = {
|
|
|
3480
3481
|
presets: [
|
|
3481
3482
|
"hot"
|
|
3482
3483
|
],
|
|
3483
|
-
presetReason: "
|
|
3484
|
+
presetReason: "Margin of 16.4 points; incumbent governor in a presidential swing state; kept on the maintainer's word, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Arizona_gubernatorial_election)"
|
|
3484
3485
|
},
|
|
3485
3486
|
{
|
|
3486
3487
|
id: "2026-11-03.az.phoenix-city-council-district-2.regular",
|
|
@@ -3626,11 +3627,7 @@ var registry_default = {
|
|
|
3626
3627
|
candidates: [
|
|
3627
3628
|
"Yes",
|
|
3628
3629
|
"No"
|
|
3629
|
-
]
|
|
3630
|
-
presets: [
|
|
3631
|
-
"hot"
|
|
3632
|
-
],
|
|
3633
|
-
presetReason: "Statewide ballot measure (citizenship and voter ID requirements), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Arizona_elections)"
|
|
3630
|
+
]
|
|
3634
3631
|
},
|
|
3635
3632
|
{
|
|
3636
3633
|
id: "2026-11-03.az.us-house-1.regular",
|
|
@@ -5029,11 +5026,7 @@ var registry_default = {
|
|
|
5029
5026
|
"Brenda F. Grisham",
|
|
5030
5027
|
"Mindy Ruth Pechenuk"
|
|
5031
5028
|
],
|
|
5032
|
-
scopeEvidence: "A city contest; every city in Alameda County lies wholly in the county."
|
|
5033
|
-
presets: [
|
|
5034
|
-
"hot"
|
|
5035
|
-
],
|
|
5036
|
-
presetReason: "Oakland mayor, ranked-choice, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Oakland_mayoral_election)"
|
|
5029
|
+
scopeEvidence: "A city contest; every city in Alameda County lies wholly in the county."
|
|
5037
5030
|
},
|
|
5038
5031
|
{
|
|
5039
5032
|
id: "2026-11-03.ca.alameda.mayor-pleasanton.regular",
|
|
@@ -9163,9 +9156,6 @@ var registry_default = {
|
|
|
9163
9156
|
candidates: [
|
|
9164
9157
|
"Xavier Becerra",
|
|
9165
9158
|
"Steve Hilton"
|
|
9166
|
-
],
|
|
9167
|
-
presets: [
|
|
9168
|
-
"hot"
|
|
9169
9159
|
]
|
|
9170
9160
|
},
|
|
9171
9161
|
{
|
|
@@ -20149,11 +20139,7 @@ var registry_default = {
|
|
|
20149
20139
|
candidates: [
|
|
20150
20140
|
"Yes",
|
|
20151
20141
|
"No"
|
|
20152
|
-
]
|
|
20153
|
-
presets: [
|
|
20154
|
-
"hot"
|
|
20155
|
-
],
|
|
20156
|
-
presetReason: "Statewide ballot measure (government-issued identification to vote), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_California_Proposition_39)"
|
|
20142
|
+
]
|
|
20157
20143
|
},
|
|
20158
20144
|
{
|
|
20159
20145
|
id: "2026-11-03.ca.proposition-4.regular",
|
|
@@ -20205,11 +20191,7 @@ var registry_default = {
|
|
|
20205
20191
|
candidates: [
|
|
20206
20192
|
"Yes",
|
|
20207
20193
|
"No"
|
|
20208
|
-
]
|
|
20209
|
-
presets: [
|
|
20210
|
-
"hot"
|
|
20211
|
-
],
|
|
20212
|
-
presetReason: "Statewide ballot measure (a one-time tax on certain taxpayers), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_California_Proposition_40)"
|
|
20194
|
+
]
|
|
20213
20195
|
},
|
|
20214
20196
|
{
|
|
20215
20197
|
id: "2026-11-03.ca.proposition-41.regular",
|
|
@@ -33262,11 +33244,7 @@ var registry_default = {
|
|
|
33262
33244
|
candidates: [
|
|
33263
33245
|
"Yes",
|
|
33264
33246
|
"No"
|
|
33265
|
-
]
|
|
33266
|
-
presets: [
|
|
33267
|
-
"hot"
|
|
33268
|
-
],
|
|
33269
|
-
presetReason: "Statewide ballot measure, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Colorado_elections)"
|
|
33247
|
+
]
|
|
33270
33248
|
},
|
|
33271
33249
|
{
|
|
33272
33250
|
id: "2026-11-03.co.governor.regular",
|
|
@@ -33824,7 +33802,11 @@ var registry_default = {
|
|
|
33824
33802
|
'Jeffrey Peter "Dr. Jeff" Datto',
|
|
33825
33803
|
'Moliere "Moe" Dimanche',
|
|
33826
33804
|
"Frank J. Russo"
|
|
33827
|
-
]
|
|
33805
|
+
],
|
|
33806
|
+
presets: [
|
|
33807
|
+
"hot"
|
|
33808
|
+
],
|
|
33809
|
+
presetReason: "Margin of 1.3 points; open seat, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Florida_gubernatorial_election)"
|
|
33828
33810
|
},
|
|
33829
33811
|
{
|
|
33830
33812
|
id: "2026-11-03.fl.us-house-1.regular",
|
|
@@ -34625,7 +34607,11 @@ var registry_default = {
|
|
|
34625
34607
|
"Ashley Moody",
|
|
34626
34608
|
"Angie Nixon",
|
|
34627
34609
|
"Neil J. Gillespie"
|
|
34628
|
-
]
|
|
34610
|
+
],
|
|
34611
|
+
presets: [
|
|
34612
|
+
"hot"
|
|
34613
|
+
],
|
|
34614
|
+
presetReason: "Margin of 2.9 points; special election, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_special_election_in_Florida)"
|
|
34629
34615
|
},
|
|
34630
34616
|
{
|
|
34631
34617
|
id: "2026-11-03.ga.governor.regular",
|
|
@@ -34655,7 +34641,7 @@ var registry_default = {
|
|
|
34655
34641
|
presets: [
|
|
34656
34642
|
"hot"
|
|
34657
34643
|
],
|
|
34658
|
-
presetReason: "
|
|
34644
|
+
presetReason: "Margin of 8.5 points; R-held seat flipped; open seat (term-limited incumbent), on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Georgia_gubernatorial_election)"
|
|
34659
34645
|
},
|
|
34660
34646
|
{
|
|
34661
34647
|
id: "2026-11-03.ga.us-house-1.regular",
|
|
@@ -35064,7 +35050,7 @@ var registry_default = {
|
|
|
35064
35050
|
presets: [
|
|
35065
35051
|
"hot"
|
|
35066
35052
|
],
|
|
35067
|
-
presetReason: "
|
|
35053
|
+
presetReason: "Margin of 17.9 points; incumbent defending a seat in a state decided by under 1 point in the 2020 presidential race; kept on the maintainer's word, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Georgia)"
|
|
35068
35054
|
},
|
|
35069
35055
|
{
|
|
35070
35056
|
id: "2026-11-03.hi.governor.regular",
|
|
@@ -35172,7 +35158,11 @@ var registry_default = {
|
|
|
35172
35158
|
candidates: [
|
|
35173
35159
|
"Zach Lahn",
|
|
35174
35160
|
"Rob Sand"
|
|
35175
|
-
]
|
|
35161
|
+
],
|
|
35162
|
+
presets: [
|
|
35163
|
+
"hot"
|
|
35164
|
+
],
|
|
35165
|
+
presetReason: "Margin of 10.9 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Iowa_gubernatorial_election)"
|
|
35176
35166
|
},
|
|
35177
35167
|
{
|
|
35178
35168
|
id: "2026-11-03.ia.us-house-1.regular",
|
|
@@ -35314,7 +35304,7 @@ var registry_default = {
|
|
|
35314
35304
|
presets: [
|
|
35315
35305
|
"hot"
|
|
35316
35306
|
],
|
|
35317
|
-
presetReason: "
|
|
35307
|
+
presetReason: "Margin of 4.0 points; R-held seat flipped; open seat (incumbent retiring), on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Iowa)"
|
|
35318
35308
|
},
|
|
35319
35309
|
{
|
|
35320
35310
|
id: "2026-11-03.id.governor.regular",
|
|
@@ -35369,11 +35359,7 @@ var registry_default = {
|
|
|
35369
35359
|
candidates: [
|
|
35370
35360
|
"Yes",
|
|
35371
35361
|
"No"
|
|
35372
|
-
]
|
|
35373
|
-
presets: [
|
|
35374
|
-
"hot"
|
|
35375
|
-
],
|
|
35376
|
-
presetReason: "Statewide ballot measure (Reproductive Freedom and Privacy Act), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Idaho_elections)"
|
|
35362
|
+
]
|
|
35377
35363
|
},
|
|
35378
35364
|
{
|
|
35379
35365
|
id: "2026-11-03.id.us-house-1.regular",
|
|
@@ -36247,7 +36233,11 @@ var registry_default = {
|
|
|
36247
36233
|
candidates: [
|
|
36248
36234
|
"Cindy Holscher",
|
|
36249
36235
|
"Ty Masterson"
|
|
36250
|
-
]
|
|
36236
|
+
],
|
|
36237
|
+
presets: [
|
|
36238
|
+
"hot"
|
|
36239
|
+
],
|
|
36240
|
+
presetReason: "Margin of 0.7 points, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Kansas_gubernatorial_election)"
|
|
36251
36241
|
},
|
|
36252
36242
|
{
|
|
36253
36243
|
id: "2026-11-03.ks.us-house-1.regular",
|
|
@@ -36390,7 +36380,7 @@ var registry_default = {
|
|
|
36390
36380
|
presets: [
|
|
36391
36381
|
"hot"
|
|
36392
36382
|
],
|
|
36393
|
-
presetReason: "
|
|
36383
|
+
presetReason: "Margin of 5.0 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Kansas)"
|
|
36394
36384
|
},
|
|
36395
36385
|
{
|
|
36396
36386
|
id: "2026-11-03.ky.us-house-1.regular",
|
|
@@ -36803,7 +36793,11 @@ var registry_default = {
|
|
|
36803
36793
|
candidates: [
|
|
36804
36794
|
"Jamie Davis",
|
|
36805
36795
|
"Julia Letlow"
|
|
36806
|
-
]
|
|
36796
|
+
],
|
|
36797
|
+
presets: [
|
|
36798
|
+
"hot"
|
|
36799
|
+
],
|
|
36800
|
+
presetReason: "Margin of 1.8 points, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Louisiana)"
|
|
36807
36801
|
},
|
|
36808
36802
|
{
|
|
36809
36803
|
id: "2026-11-03.ma.governor.regular",
|
|
@@ -36856,11 +36850,7 @@ var registry_default = {
|
|
|
36856
36850
|
candidates: [
|
|
36857
36851
|
"Yes",
|
|
36858
36852
|
"No"
|
|
36859
|
-
]
|
|
36860
|
-
presets: [
|
|
36861
|
-
"hot"
|
|
36862
|
-
],
|
|
36863
|
-
presetReason: "Statewide ballot measure (top-two primary elections), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Massachusetts_ballot_measures)"
|
|
36853
|
+
]
|
|
36864
36854
|
},
|
|
36865
36855
|
{
|
|
36866
36856
|
id: "2026-11-03.ma.question-4.regular",
|
|
@@ -36886,11 +36876,7 @@ var registry_default = {
|
|
|
36886
36876
|
candidates: [
|
|
36887
36877
|
"Yes",
|
|
36888
36878
|
"No"
|
|
36889
|
-
]
|
|
36890
|
-
presets: [
|
|
36891
|
-
"hot"
|
|
36892
|
-
],
|
|
36893
|
-
presetReason: "Statewide ballot measure (same-day voter registration), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Massachusetts_ballot_measures)"
|
|
36879
|
+
]
|
|
36894
36880
|
},
|
|
36895
36881
|
{
|
|
36896
36882
|
id: "2026-11-03.ma.question-8.regular",
|
|
@@ -36916,11 +36902,7 @@ var registry_default = {
|
|
|
36916
36902
|
candidates: [
|
|
36917
36903
|
"Yes",
|
|
36918
36904
|
"No"
|
|
36919
|
-
]
|
|
36920
|
-
presets: [
|
|
36921
|
-
"hot"
|
|
36922
|
-
],
|
|
36923
|
-
presetReason: "Statewide ballot measure (eliminate recreational marijuana sales), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Massachusetts_ballot_measures)"
|
|
36905
|
+
]
|
|
36924
36906
|
},
|
|
36925
36907
|
{
|
|
36926
36908
|
id: "2026-11-03.ma.us-house-1.regular",
|
|
@@ -37244,11 +37226,7 @@ var registry_default = {
|
|
|
37244
37226
|
candidates: [
|
|
37245
37227
|
"Yes",
|
|
37246
37228
|
"No"
|
|
37247
|
-
]
|
|
37248
|
-
presets: [
|
|
37249
|
-
"hot"
|
|
37250
|
-
],
|
|
37251
|
-
presetReason: "Statewide ballot measure (electoral districts), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Maryland_elections)"
|
|
37229
|
+
]
|
|
37252
37230
|
},
|
|
37253
37231
|
{
|
|
37254
37232
|
id: "2026-11-03.md.us-house-1.regular",
|
|
@@ -37578,7 +37556,7 @@ var registry_default = {
|
|
|
37578
37556
|
presets: [
|
|
37579
37557
|
"hot"
|
|
37580
37558
|
],
|
|
37581
|
-
presetReason: "
|
|
37559
|
+
presetReason: "Margin of 8.1 points; R-held seat flipped; ranked-choice general, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Maine)"
|
|
37582
37560
|
},
|
|
37583
37561
|
{
|
|
37584
37562
|
id: "2026-11-03.mi.governor.regular",
|
|
@@ -37607,11 +37585,7 @@ var registry_default = {
|
|
|
37607
37585
|
"Anthony Hudson",
|
|
37608
37586
|
"Donna Brandenburg",
|
|
37609
37587
|
"Douglas Campbell"
|
|
37610
|
-
]
|
|
37611
|
-
presets: [
|
|
37612
|
-
"hot"
|
|
37613
|
-
],
|
|
37614
|
-
presetReason: "Open seat (term-limited incumbent) in a presidential swing state (https://en.wikipedia.org/wiki/2026_Michigan_gubernatorial_election)"
|
|
37588
|
+
]
|
|
37615
37589
|
},
|
|
37616
37590
|
{
|
|
37617
37591
|
id: "2026-11-03.mi.us-house-1.regular",
|
|
@@ -38032,7 +38006,7 @@ var registry_default = {
|
|
|
38032
38006
|
presets: [
|
|
38033
38007
|
"hot"
|
|
38034
38008
|
],
|
|
38035
|
-
presetReason: "
|
|
38009
|
+
presetReason: "Margin of 5.2 points; open seat (incumbent retiring) in a presidential swing state, held by the incumbent's party, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Michigan)"
|
|
38036
38010
|
},
|
|
38037
38011
|
{
|
|
38038
38012
|
id: "2026-11-03.mn.governor.regular",
|
|
@@ -38340,11 +38314,7 @@ var registry_default = {
|
|
|
38340
38314
|
candidates: [
|
|
38341
38315
|
"Yes",
|
|
38342
38316
|
"No"
|
|
38343
|
-
]
|
|
38344
|
-
presets: [
|
|
38345
|
-
"hot"
|
|
38346
|
-
],
|
|
38347
|
-
presetReason: "Statewide ballot measure, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Missouri_elections)"
|
|
38317
|
+
]
|
|
38348
38318
|
},
|
|
38349
38319
|
{
|
|
38350
38320
|
id: "2026-11-03.mo.proposition-a.regular",
|
|
@@ -38370,11 +38340,7 @@ var registry_default = {
|
|
|
38370
38340
|
candidates: [
|
|
38371
38341
|
"Yes",
|
|
38372
38342
|
"No"
|
|
38373
|
-
]
|
|
38374
|
-
presets: [
|
|
38375
|
-
"hot"
|
|
38376
|
-
],
|
|
38377
|
-
presetReason: "Statewide ballot measure, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Missouri_elections)"
|
|
38343
|
+
]
|
|
38378
38344
|
},
|
|
38379
38345
|
{
|
|
38380
38346
|
id: "2026-11-03.mo.us-house-1.regular",
|
|
@@ -38737,7 +38703,11 @@ var registry_default = {
|
|
|
38737
38703
|
"Scott Colom",
|
|
38738
38704
|
"Cindy Hyde-Smith",
|
|
38739
38705
|
"Ty Pinkins"
|
|
38740
|
-
]
|
|
38706
|
+
],
|
|
38707
|
+
presets: [
|
|
38708
|
+
"hot"
|
|
38709
|
+
],
|
|
38710
|
+
presetReason: "Margin of 1.2 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Mississippi)"
|
|
38741
38711
|
},
|
|
38742
38712
|
{
|
|
38743
38713
|
id: "2026-11-03.mt.us-house-1.regular",
|
|
@@ -38822,7 +38792,11 @@ var registry_default = {
|
|
|
38822
38792
|
"Alani Bankhead",
|
|
38823
38793
|
"Kyle Austin",
|
|
38824
38794
|
"Seth Bodnar"
|
|
38825
|
-
]
|
|
38795
|
+
],
|
|
38796
|
+
presets: [
|
|
38797
|
+
"hot"
|
|
38798
|
+
],
|
|
38799
|
+
presetReason: "Margin of 6.5 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Montana)"
|
|
38826
38800
|
},
|
|
38827
38801
|
{
|
|
38828
38802
|
id: "2026-11-03.nc.us-house-1.regular",
|
|
@@ -39243,7 +39217,7 @@ var registry_default = {
|
|
|
39243
39217
|
presets: [
|
|
39244
39218
|
"hot"
|
|
39245
39219
|
],
|
|
39246
|
-
presetReason: "
|
|
39220
|
+
presetReason: "Margin of 19.6 points; R-held seat flipped; open seat (incumbent retiring) in a presidential swing state, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_North_Carolina)"
|
|
39247
39221
|
},
|
|
39248
39222
|
{
|
|
39249
39223
|
id: "2026-11-03.nd.us-house-al.regular",
|
|
@@ -39300,7 +39274,11 @@ var registry_default = {
|
|
|
39300
39274
|
"Lynne Walz",
|
|
39301
39275
|
"Rick Beard",
|
|
39302
39276
|
"Brett Lindstrom"
|
|
39303
|
-
]
|
|
39277
|
+
],
|
|
39278
|
+
presets: [
|
|
39279
|
+
"hot"
|
|
39280
|
+
],
|
|
39281
|
+
presetReason: "Margin of 4.3 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Nebraska_gubernatorial_election)"
|
|
39304
39282
|
},
|
|
39305
39283
|
{
|
|
39306
39284
|
id: "2026-11-03.ne.us-house-1.regular",
|
|
@@ -39416,7 +39394,11 @@ var registry_default = {
|
|
|
39416
39394
|
"Robin Richards",
|
|
39417
39395
|
"Chuck Conboy",
|
|
39418
39396
|
"Dan Osborn"
|
|
39419
|
-
]
|
|
39397
|
+
],
|
|
39398
|
+
presets: [
|
|
39399
|
+
"hot"
|
|
39400
|
+
],
|
|
39401
|
+
presetReason: "Margin of 3.2 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Nebraska)"
|
|
39420
39402
|
},
|
|
39421
39403
|
{
|
|
39422
39404
|
id: "2026-11-03.nh.governor.regular",
|
|
@@ -39443,7 +39425,11 @@ var registry_default = {
|
|
|
39443
39425
|
"Cinde Warmington",
|
|
39444
39426
|
"Kelly Ayotte",
|
|
39445
39427
|
"Stephen Villee"
|
|
39446
|
-
]
|
|
39428
|
+
],
|
|
39429
|
+
presets: [
|
|
39430
|
+
"hot"
|
|
39431
|
+
],
|
|
39432
|
+
presetReason: "Margin of 9.1 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_New_Hampshire_gubernatorial_election)"
|
|
39447
39433
|
},
|
|
39448
39434
|
{
|
|
39449
39435
|
id: "2026-11-03.nh.us-house-1.regular",
|
|
@@ -39525,11 +39511,7 @@ var registry_default = {
|
|
|
39525
39511
|
"Chris Pappas",
|
|
39526
39512
|
"Edmond Laplante",
|
|
39527
39513
|
"John E. Sununu"
|
|
39528
|
-
]
|
|
39529
|
-
presets: [
|
|
39530
|
-
"hot"
|
|
39531
|
-
],
|
|
39532
|
-
presetReason: "Open seat (incumbent retiring) (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_New_Hampshire)"
|
|
39514
|
+
]
|
|
39533
39515
|
},
|
|
39534
39516
|
{
|
|
39535
39517
|
id: "2026-11-03.nj.us-house-1.regular",
|
|
@@ -40050,7 +40032,11 @@ var registry_default = {
|
|
|
40050
40032
|
"Aaron Ford",
|
|
40051
40033
|
"Joe Lombardo",
|
|
40052
40034
|
"Danielle Ford"
|
|
40053
|
-
]
|
|
40035
|
+
],
|
|
40036
|
+
presets: [
|
|
40037
|
+
"hot"
|
|
40038
|
+
],
|
|
40039
|
+
presetReason: "Margin under 0.1 points, the closest statewide margin of the night, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Nevada_gubernatorial_election)"
|
|
40054
40040
|
},
|
|
40055
40041
|
{
|
|
40056
40042
|
id: "2026-11-03.nv.question-6.regular",
|
|
@@ -40076,11 +40062,7 @@ var registry_default = {
|
|
|
40076
40062
|
candidates: [
|
|
40077
40063
|
"Yes",
|
|
40078
40064
|
"No"
|
|
40079
|
-
]
|
|
40080
|
-
presets: [
|
|
40081
|
-
"hot"
|
|
40082
|
-
],
|
|
40083
|
-
presetReason: "Statewide ballot measure, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Nevada_elections)"
|
|
40065
|
+
]
|
|
40084
40066
|
},
|
|
40085
40067
|
{
|
|
40086
40068
|
id: "2026-11-03.nv.question-7.regular",
|
|
@@ -40106,11 +40088,7 @@ var registry_default = {
|
|
|
40106
40088
|
candidates: [
|
|
40107
40089
|
"Yes",
|
|
40108
40090
|
"No"
|
|
40109
|
-
]
|
|
40110
|
-
presets: [
|
|
40111
|
-
"hot"
|
|
40112
|
-
],
|
|
40113
|
-
presetReason: "Statewide ballot measure, added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Nevada_elections)"
|
|
40091
|
+
]
|
|
40114
40092
|
},
|
|
40115
40093
|
{
|
|
40116
40094
|
id: "2026-11-03.nv.us-house-1.regular",
|
|
@@ -40989,7 +40967,11 @@ var registry_default = {
|
|
|
40989
40967
|
"Don Kissick",
|
|
40990
40968
|
"Vivek Ramaswamy",
|
|
40991
40969
|
"Renea Turner"
|
|
40992
|
-
]
|
|
40970
|
+
],
|
|
40971
|
+
presets: [
|
|
40972
|
+
"hot"
|
|
40973
|
+
],
|
|
40974
|
+
presetReason: "Margin of 5.7 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Ohio_gubernatorial_election)"
|
|
40993
40975
|
},
|
|
40994
40976
|
{
|
|
40995
40977
|
id: "2026-11-03.oh.issue-3.regular",
|
|
@@ -41015,11 +40997,7 @@ var registry_default = {
|
|
|
41015
40997
|
candidates: [
|
|
41016
40998
|
"Yes",
|
|
41017
40999
|
"No"
|
|
41018
|
-
]
|
|
41019
|
-
presets: [
|
|
41020
|
-
"hot"
|
|
41021
|
-
],
|
|
41022
|
-
presetReason: "Statewide ballot measure (photo identification to vote), added by the maintainer's review, Nov 1, 2026 (https://en.wikipedia.org/wiki/2026_Ohio_elections)"
|
|
41000
|
+
]
|
|
41023
41001
|
},
|
|
41024
41002
|
{
|
|
41025
41003
|
id: "2026-11-03.oh.us-house-1.regular",
|
|
@@ -41470,7 +41448,7 @@ var registry_default = {
|
|
|
41470
41448
|
presets: [
|
|
41471
41449
|
"hot"
|
|
41472
41450
|
],
|
|
41473
|
-
presetReason: "
|
|
41451
|
+
presetReason: "Margin of 3.6 points; R-held seat flipped; special election for the seat vacated in 2025, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_special_election_in_Ohio)"
|
|
41474
41452
|
},
|
|
41475
41453
|
{
|
|
41476
41454
|
id: "2026-11-03.ok.governor.regular",
|
|
@@ -41499,7 +41477,11 @@ var registry_default = {
|
|
|
41499
41477
|
"Orlando Lynn Bush",
|
|
41500
41478
|
"Robert E Brooks Sr",
|
|
41501
41479
|
"Jerry Griffin"
|
|
41502
|
-
]
|
|
41480
|
+
],
|
|
41481
|
+
presets: [
|
|
41482
|
+
"hot"
|
|
41483
|
+
],
|
|
41484
|
+
presetReason: "Margin of 6.1 points; open seat, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Oklahoma_gubernatorial_election)"
|
|
41503
41485
|
},
|
|
41504
41486
|
{
|
|
41505
41487
|
id: "2026-11-03.ok.us-house-1.regular",
|
|
@@ -41694,7 +41676,11 @@ var registry_default = {
|
|
|
41694
41676
|
"Christine Drazan",
|
|
41695
41677
|
"Tina Kotek",
|
|
41696
41678
|
"Brett Smith"
|
|
41697
|
-
]
|
|
41679
|
+
],
|
|
41680
|
+
presets: [
|
|
41681
|
+
"hot"
|
|
41682
|
+
],
|
|
41683
|
+
presetReason: "Margin of 6.7 points; no source call at 11:10 PM PST, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Oregon_gubernatorial_election)"
|
|
41698
41684
|
},
|
|
41699
41685
|
{
|
|
41700
41686
|
id: "2026-11-03.or.us-house-1.regular",
|
|
@@ -41917,7 +41903,7 @@ var registry_default = {
|
|
|
41917
41903
|
presets: [
|
|
41918
41904
|
"hot"
|
|
41919
41905
|
],
|
|
41920
|
-
presetReason: "Incumbent governor in the largest presidential swing state (https://en.wikipedia.org/wiki/2026_Pennsylvania_gubernatorial_election)"
|
|
41906
|
+
presetReason: "Incumbent governor in the largest presidential swing state; its civicAPI feed is marked test data on election night, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Pennsylvania_gubernatorial_election)"
|
|
41921
41907
|
},
|
|
41922
41908
|
{
|
|
41923
41909
|
id: "2026-11-03.pa.us-house-1.regular",
|
|
@@ -42515,7 +42501,11 @@ var registry_default = {
|
|
|
42515
42501
|
"Alan Wilson",
|
|
42516
42502
|
"Michael Addison",
|
|
42517
42503
|
"Walid Hakim"
|
|
42518
|
-
]
|
|
42504
|
+
],
|
|
42505
|
+
presets: [
|
|
42506
|
+
"hot"
|
|
42507
|
+
],
|
|
42508
|
+
presetReason: "Margin of 4.6 points, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_South_Carolina_gubernatorial_election)"
|
|
42519
42509
|
},
|
|
42520
42510
|
{
|
|
42521
42511
|
id: "2026-11-03.sc.us-house-1.regular",
|
|
@@ -42736,7 +42726,11 @@ var registry_default = {
|
|
|
42736
42726
|
"Darline Graham",
|
|
42737
42727
|
"Mark Hackett",
|
|
42738
42728
|
"Kasie Whitener"
|
|
42739
|
-
]
|
|
42729
|
+
],
|
|
42730
|
+
presets: [
|
|
42731
|
+
"hot"
|
|
42732
|
+
],
|
|
42733
|
+
presetReason: "Margin of 4.3 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_South_Carolina)"
|
|
42740
42734
|
},
|
|
42741
42735
|
{
|
|
42742
42736
|
id: "2026-11-03.sd.governor.regular",
|
|
@@ -42841,7 +42835,11 @@ var registry_default = {
|
|
|
42841
42835
|
candidates: [
|
|
42842
42836
|
"Marsha Blackburn",
|
|
42843
42837
|
"Jerri Green"
|
|
42844
|
-
]
|
|
42838
|
+
],
|
|
42839
|
+
presets: [
|
|
42840
|
+
"hot"
|
|
42841
|
+
],
|
|
42842
|
+
presetReason: "Margin of 2.3 points; open seat, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Tennessee_gubernatorial_election)"
|
|
42845
42843
|
},
|
|
42846
42844
|
{
|
|
42847
42845
|
id: "2026-11-03.tn.us-house-1.regular",
|
|
@@ -43137,7 +43135,11 @@ var registry_default = {
|
|
|
43137
43135
|
"Gina Hinojosa",
|
|
43138
43136
|
"Greg Abbott",
|
|
43139
43137
|
"Pat Dixon"
|
|
43140
|
-
]
|
|
43138
|
+
],
|
|
43139
|
+
presets: [
|
|
43140
|
+
"hot"
|
|
43141
|
+
],
|
|
43142
|
+
presetReason: "Margin of 8.9 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Texas_gubernatorial_election)"
|
|
43141
43143
|
},
|
|
43142
43144
|
{
|
|
43143
43145
|
id: "2026-11-03.tx.us-house-1.regular",
|
|
@@ -44202,7 +44204,7 @@ var registry_default = {
|
|
|
44202
44204
|
presets: [
|
|
44203
44205
|
"hot"
|
|
44204
44206
|
],
|
|
44205
|
-
presetReason: "
|
|
44207
|
+
presetReason: "Margin of 11.2 points; R-held seat flipped, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_United_States_Senate_election_in_Texas)"
|
|
44206
44208
|
},
|
|
44207
44209
|
{
|
|
44208
44210
|
id: "2026-11-03.ut.us-house-1.regular",
|
|
@@ -44701,7 +44703,11 @@ var registry_default = {
|
|
|
44701
44703
|
"Dean Roy",
|
|
44702
44704
|
"Phil Scott",
|
|
44703
44705
|
"Write-in"
|
|
44704
|
-
]
|
|
44706
|
+
],
|
|
44707
|
+
presets: [
|
|
44708
|
+
"hot"
|
|
44709
|
+
],
|
|
44710
|
+
presetReason: "Margin of 6.5 points; incumbent in a state that voted for the other party for president in 2024, on our election-night count, Nov 3, 2026 (https://en.wikipedia.org/wiki/2026_Vermont_gubernatorial_election)"
|
|
44705
44711
|
},
|
|
44706
44712
|
{
|
|
44707
44713
|
id: "2026-11-03.vt.us-house-al.regular",
|
|
@@ -45029,11 +45035,7 @@ var registry_default = {
|
|
|
45029
45035
|
candidates: [
|
|
45030
45036
|
"David Crowley",
|
|
45031
45037
|
"Tom Tiffany"
|
|
45032
|
-
]
|
|
45033
|
-
presets: [
|
|
45034
|
-
"hot"
|
|
45035
|
-
],
|
|
45036
|
-
presetReason: "Open seat (incumbent not running) in a presidential swing state (https://en.wikipedia.org/wiki/2026_Wisconsin_gubernatorial_election)"
|
|
45038
|
+
]
|
|
45037
45039
|
},
|
|
45038
45040
|
{
|
|
45039
45041
|
id: "2026-11-03.wi.us-house-1.regular",
|
|
@@ -45694,6 +45696,53 @@ function resolveContest(registry, query) {
|
|
|
45694
45696
|
return { kind: "none" };
|
|
45695
45697
|
}
|
|
45696
45698
|
|
|
45699
|
+
// src/registry/presets.ts
|
|
45700
|
+
var wiki = (s) => `https://en.wikipedia.org/wiki/${s}`;
|
|
45701
|
+
var NIGHT = "on our election-night count, Nov 3, 2026";
|
|
45702
|
+
var entry = (id, fact, page) => ({ id, reason: `${fact}, ${NIGHT}`, link: wiki(page) });
|
|
45703
|
+
var HOT_PRESET = [
|
|
45704
|
+
entry("2026-11-03.nv.governor.regular", "Margin under 0.1 points, the closest statewide margin of the night", "2026_Nevada_gubernatorial_election"),
|
|
45705
|
+
entry("2026-11-03.ak.us-senate.regular", "Margin of 0.2 points on first choices; ranked-choice general", "2026_United_States_Senate_election_in_Alaska"),
|
|
45706
|
+
entry("2026-11-03.ks.governor.regular", "Margin of 0.7 points", "2026_Kansas_gubernatorial_election"),
|
|
45707
|
+
entry("2026-11-03.ms.us-senate.regular", "Margin of 1.2 points; no source call at 11:10 PM PST", "2026_United_States_Senate_election_in_Mississippi"),
|
|
45708
|
+
entry("2026-11-03.fl.governor.regular", "Margin of 1.3 points; open seat", "2026_Florida_gubernatorial_election"),
|
|
45709
|
+
entry("2026-11-03.la.us-senate.regular", "Margin of 1.8 points", "2026_United_States_Senate_election_in_Louisiana"),
|
|
45710
|
+
entry("2026-11-03.tn.governor.regular", "Margin of 2.3 points; open seat", "2026_Tennessee_gubernatorial_election"),
|
|
45711
|
+
entry("2026-11-03.fl.us-senate.special", "Margin of 2.9 points; special election", "2026_United_States_Senate_special_election_in_Florida"),
|
|
45712
|
+
entry("2026-11-03.ne.us-senate.regular", "Margin of 3.2 points; no source call at 11:10 PM PST", "2026_United_States_Senate_election_in_Nebraska"),
|
|
45713
|
+
entry("2026-11-03.oh.us-senate.special", "Margin of 3.6 points; R-held seat flipped; special election for the seat vacated in 2025", "2026_United_States_Senate_special_election_in_Ohio"),
|
|
45714
|
+
entry("2026-11-03.ia.us-senate.regular", "Margin of 4.0 points; R-held seat flipped; open seat (incumbent retiring)", "2026_United_States_Senate_election_in_Iowa"),
|
|
45715
|
+
entry("2026-11-03.al.governor.regular", "Margin of 4.1 points; open seat", "2026_Alabama_gubernatorial_election"),
|
|
45716
|
+
entry("2026-11-03.sc.us-senate.regular", "Margin of 4.3 points; R-held seat flipped", "2026_United_States_Senate_election_in_South_Carolina"),
|
|
45717
|
+
entry("2026-11-03.ne.governor.regular", "Margin of 4.3 points; no source call at 11:10 PM PST", "2026_Nebraska_gubernatorial_election"),
|
|
45718
|
+
entry("2026-11-03.sc.governor.regular", "Margin of 4.6 points", "2026_South_Carolina_gubernatorial_election"),
|
|
45719
|
+
entry("2026-11-03.ks.us-senate.regular", "Margin of 5.0 points; R-held seat flipped", "2026_United_States_Senate_election_in_Kansas"),
|
|
45720
|
+
entry("2026-11-03.mi.us-senate.regular", "Margin of 5.2 points; open seat (incumbent retiring) in a presidential swing state, held by the incumbent's party", "2026_United_States_Senate_election_in_Michigan"),
|
|
45721
|
+
entry("2026-11-03.oh.governor.regular", "Margin of 5.7 points; R-held seat flipped", "2026_Ohio_gubernatorial_election"),
|
|
45722
|
+
entry("2026-11-03.ok.governor.regular", "Margin of 6.1 points; open seat", "2026_Oklahoma_gubernatorial_election"),
|
|
45723
|
+
entry("2026-11-03.mt.us-senate.regular", "Margin of 6.5 points; no source call at 11:10 PM PST", "2026_United_States_Senate_election_in_Montana"),
|
|
45724
|
+
entry("2026-11-03.vt.governor.regular", "Margin of 6.5 points; incumbent in a state that voted for the other party for president in 2024", "2026_Vermont_gubernatorial_election"),
|
|
45725
|
+
entry("2026-11-03.or.governor.regular", "Margin of 6.7 points; no source call at 11:10 PM PST", "2026_Oregon_gubernatorial_election"),
|
|
45726
|
+
entry("2026-11-03.me.us-senate.regular", "Margin of 8.1 points; R-held seat flipped; ranked-choice general", "2026_United_States_Senate_election_in_Maine"),
|
|
45727
|
+
entry("2026-11-03.ga.governor.regular", "Margin of 8.5 points; R-held seat flipped; open seat (term-limited incumbent)", "2026_Georgia_gubernatorial_election"),
|
|
45728
|
+
entry("2026-11-03.tx.governor.regular", "Margin of 8.9 points; R-held seat flipped", "2026_Texas_gubernatorial_election"),
|
|
45729
|
+
entry("2026-11-03.nh.governor.regular", "Margin of 9.1 points; no source call at 11:10 PM PST", "2026_New_Hampshire_gubernatorial_election"),
|
|
45730
|
+
entry("2026-11-03.ia.governor.regular", "Margin of 10.9 points; R-held seat flipped", "2026_Iowa_gubernatorial_election"),
|
|
45731
|
+
entry("2026-11-03.tx.us-senate.regular", "Margin of 11.2 points; R-held seat flipped", "2026_United_States_Senate_election_in_Texas"),
|
|
45732
|
+
entry("2026-11-03.az.governor.regular", "Margin of 16.4 points; incumbent governor in a presidential swing state; kept on the maintainer's word", "2026_Arizona_gubernatorial_election"),
|
|
45733
|
+
entry("2026-11-03.ga.us-senate.regular", "Margin of 17.9 points; incumbent defending a seat in a state decided by under 1 point in the 2020 presidential race; kept on the maintainer's word", "2026_United_States_Senate_election_in_Georgia"),
|
|
45734
|
+
entry("2026-11-03.nc.us-senate.regular", "Margin of 19.6 points; R-held seat flipped; open seat (incumbent retiring) in a presidential swing state", "2026_United_States_Senate_election_in_North_Carolina"),
|
|
45735
|
+
{
|
|
45736
|
+
id: "2026-11-03.pa.governor.regular",
|
|
45737
|
+
reason: "Incumbent governor in the largest presidential swing state; its civicAPI feed is marked test data on election night, Nov 3, 2026",
|
|
45738
|
+
link: wiki("2026_Pennsylvania_gubernatorial_election")
|
|
45739
|
+
}
|
|
45740
|
+
];
|
|
45741
|
+
var RANK = new Map(HOT_PRESET.map((e, i) => [e.id, i]));
|
|
45742
|
+
function inHotOrder(items) {
|
|
45743
|
+
return [...items].sort((a, b) => (RANK.get(a.id) ?? HOT_PRESET.length) - (RANK.get(b.id) ?? HOT_PRESET.length));
|
|
45744
|
+
}
|
|
45745
|
+
|
|
45697
45746
|
// src/bounded.ts
|
|
45698
45747
|
function boundList(items, max) {
|
|
45699
45748
|
const shown = Math.min(items.length, max);
|
|
@@ -45936,6 +45985,13 @@ function partyMark(party, st) {
|
|
|
45936
45985
|
const letter = party.trim().split(/\s+/).map((x) => x[0].toUpperCase()).join("").slice(0, 3);
|
|
45937
45986
|
return { letter, paint: same };
|
|
45938
45987
|
}
|
|
45988
|
+
function calledNames(v, st, partisan) {
|
|
45989
|
+
const called = (v.candidates ?? []).filter((c) => c.calledBySource);
|
|
45990
|
+
return (v.call?.names ?? []).map((n) => {
|
|
45991
|
+
const c = partisan ? called.find((x) => x.name === n) : void 0;
|
|
45992
|
+
return c ? partyMark(c.party, st).paint(n) : n;
|
|
45993
|
+
}).join(", ");
|
|
45994
|
+
}
|
|
45939
45995
|
var methodLabel = (v) => v.leaders && !/^leading( for \d+ seats)?$/.test(v.leaders.label) ? v.leaders.label : "";
|
|
45940
45996
|
var capital = (s) => s.charAt(0).toUpperCase() + s.slice(1);
|
|
45941
45997
|
var isYes = (v, name) => v.method === "measure" && /^(bonds? - )?yes$/i.test(name.trim());
|
|
@@ -46060,7 +46116,7 @@ function rowBody(v, o = {}) {
|
|
|
46060
46116
|
else if (v.call) {
|
|
46061
46117
|
const called = (v.candidates ?? []).filter((c) => c.calledBySource);
|
|
46062
46118
|
const one = called.length === 1 ? who(called[0]) : void 0;
|
|
46063
|
-
const text2 = one ? `${st.bold(one.paint(`\u2713 ${one.text}`))}${one.pct}` : st.bold(`\u2713 ${v
|
|
46119
|
+
const text2 = one ? `${st.bold(one.paint(`\u2713 ${one.text}`))}${one.pct}` : st.bold(`\u2713 ${calledNames(v, st, o.partisan)}`);
|
|
46064
46120
|
body = `${text2} ${st.dim(`called by ${v.call.authority}`)}`;
|
|
46065
46121
|
} else if (v.lifecycle === "certified" || v.lifecycle === "cancelled-no-election") body = st.dim(statusWords(v));
|
|
46066
46122
|
else if (v.zeroReport || !v.candidates?.length) body = st.dim(v.leaders && !v.candidates?.length ? `${v.leaders.label}: ${v.leaders.names.join(", ") || "tied"}` : "no votes counted yet");
|
|
@@ -46078,7 +46134,7 @@ function rowBody(v, o = {}) {
|
|
|
46078
46134
|
function cutResult(v, body, room, o = {}) {
|
|
46079
46135
|
if (cols(body) <= room || !v.call) return cut(body, room);
|
|
46080
46136
|
const st = styleOf(o);
|
|
46081
|
-
const short = `${st.bold(`\u2713 ${v
|
|
46137
|
+
const short = `${st.bold(`\u2713 ${calledNames(v, st, o.partisan)}`)} ${st.dim(`called by ${v.call.authority}`)}`;
|
|
46082
46138
|
if (cols(short) <= room) return short;
|
|
46083
46139
|
return cut(rowBody({ ...v, call: null }, { ...o, reporting: false }), room);
|
|
46084
46140
|
}
|
|
@@ -46146,7 +46202,7 @@ function watchedContests(registry, follow) {
|
|
|
46146
46202
|
const byId2 = new Map(registry.map((d) => [d.id, d]));
|
|
46147
46203
|
const followed = follow.map((id) => byId2.get(id)).filter((d) => !!d);
|
|
46148
46204
|
const seen = new Set(followed.map((d) => d.id));
|
|
46149
|
-
return [...followed, ...registry.filter((d) => d.presets?.includes("hot") && !seen.has(d.id))];
|
|
46205
|
+
return [...followed, ...inHotOrder(registry.filter((d) => d.presets?.includes("hot") && !seen.has(d.id)))];
|
|
46150
46206
|
}
|
|
46151
46207
|
function signature(v) {
|
|
46152
46208
|
return JSON.stringify([
|
|
@@ -46335,7 +46391,7 @@ function storeOf(p) {
|
|
|
46335
46391
|
}
|
|
46336
46392
|
async function main(argv, io) {
|
|
46337
46393
|
if (argv[0] === "--version" || argv[0] === "version") {
|
|
46338
|
-
io.out("0.1.
|
|
46394
|
+
io.out("0.1.7");
|
|
46339
46395
|
return 0;
|
|
46340
46396
|
}
|
|
46341
46397
|
const p = parseArgs(argv);
|
|
@@ -46389,7 +46445,7 @@ ${renderRace(v, { nowMs, zone, width, color, partisan, pollsClose })}`);
|
|
|
46389
46445
|
const defs = registry.filter(
|
|
46390
46446
|
(c) => (!state || c.state === state) && (!county || c.county === county) && (!level || c.level === level) && (!preset || (c.presets ?? []).includes(preset)) && (!followed || ctx.config.follow.includes(c.id))
|
|
46391
46447
|
);
|
|
46392
|
-
const views = defs.map((d) => viewContest(d, ctx));
|
|
46448
|
+
const views = (preset === "hot" ? inHotOrder(defs) : defs).map((d) => viewContest(d, ctx));
|
|
46393
46449
|
const limit = Number(str(p.flags, "limit") ?? 200) || 200;
|
|
46394
46450
|
io.out(json ? JSON.stringify(listJson(views, { nowMs, zone, limit }, store), null, 2) : renderList(views, { nowMs, zone, width, limit, header, color, partisan }));
|
|
46395
46451
|
return 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "election-vibe",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "US election night, Nov 3, 2026, in your terminal and in Claude Code: unofficial results from official free sources and civicAPI, kept on your machine. Never calls a race. Unofficial results. Not an election authority. Not affiliated with any government, campaign, or party.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"election",
|