triangle-types 1.0.156 → 1.0.158

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.
@@ -8,6 +8,10 @@ export * from "./types/web/WebArticleTag.js";
8
8
  export * from "./types/youtube/YoutubeChannel.js";
9
9
  export * from "./types/youtube/YoutubeVideo.js";
10
10
  export * from "./types/youtube/YoutubeVideoTag.js";
11
+ export * from "./types/federal_census/FederalCensus.js";
12
+ export * from "./types/federal_census/FederalCensusBlock.js";
13
+ export * from "./types/federal_census/FederalCensusCounty.js";
14
+ export * from "./types/federal_census/FederalCensusTract.js";
11
15
  export * from "./types/federal_elections/FederalElection.js";
12
16
  export * from "./types/federal_elections/FederalElectionCommittee.js";
13
17
  export * from "./types/federal_elections/FederalElectionCandidate.js";
package/dist/src/index.js CHANGED
@@ -8,6 +8,10 @@ export * from "./types/web/WebArticleTag.js";
8
8
  export * from "./types/youtube/YoutubeChannel.js";
9
9
  export * from "./types/youtube/YoutubeVideo.js";
10
10
  export * from "./types/youtube/YoutubeVideoTag.js";
11
+ export * from "./types/federal_census/FederalCensus.js";
12
+ export * from "./types/federal_census/FederalCensusBlock.js";
13
+ export * from "./types/federal_census/FederalCensusCounty.js";
14
+ export * from "./types/federal_census/FederalCensusTract.js";
11
15
  export * from "./types/federal_elections/FederalElection.js";
12
16
  export * from "./types/federal_elections/FederalElectionCommittee.js";
13
17
  export * from "./types/federal_elections/FederalElectionCandidate.js";
@@ -0,0 +1,5 @@
1
+ export declare class FederalCensus {
2
+ readonly federal_census_id: number;
3
+ constructor(federal_census: any);
4
+ static is(federal_census: any): federal_census is FederalCensus;
5
+ }
@@ -0,0 +1,13 @@
1
+ export class FederalCensus {
2
+ federal_census_id;
3
+ constructor(federal_census) {
4
+ if (!FederalCensus.is(federal_census)) {
5
+ throw Error("Invalid input.");
6
+ }
7
+ this.federal_census_id = federal_census.federal_census_id;
8
+ }
9
+ static is(federal_census) {
10
+ return (federal_census !== undefined &&
11
+ typeof federal_census.federal_census_id === "number");
12
+ }
13
+ }
@@ -0,0 +1,14 @@
1
+ import { StateID } from "../regions/State.js";
2
+ export declare class FederalCensusBlock {
3
+ readonly federal_census_block_id: string;
4
+ readonly federal_census_tract_id: string;
5
+ readonly federal_census_county_id: string;
6
+ readonly federal_census_id: number;
7
+ readonly county_id: string;
8
+ readonly tract_id: string;
9
+ readonly block_id: string;
10
+ readonly state_id: StateID;
11
+ readonly name: string;
12
+ constructor(federal_census_block: any);
13
+ static is(federal_census_block: any): federal_census_block is FederalCensusBlock;
14
+ }
@@ -0,0 +1,38 @@
1
+ import { is_state_id } from "../regions/State.js";
2
+ export class FederalCensusBlock {
3
+ federal_census_block_id;
4
+ federal_census_tract_id;
5
+ federal_census_county_id;
6
+ federal_census_id;
7
+ county_id;
8
+ tract_id;
9
+ block_id;
10
+ state_id;
11
+ name;
12
+ constructor(federal_census_block) {
13
+ if (!FederalCensusBlock.is(federal_census_block)) {
14
+ throw Error("Invalid input.");
15
+ }
16
+ this.federal_census_block_id = federal_census_block.federal_census_block_id;
17
+ this.federal_census_tract_id = federal_census_block.federal_census_tract_id;
18
+ this.federal_census_county_id = federal_census_block.federal_census_county_id;
19
+ this.federal_census_id = federal_census_block.federal_census_id;
20
+ this.county_id = federal_census_block.county_id;
21
+ this.tract_id = federal_census_block.tract_id;
22
+ this.block_id = federal_census_block.block_id;
23
+ this.state_id = federal_census_block.state_id;
24
+ this.name = federal_census_block.name;
25
+ }
26
+ static is(federal_census_block) {
27
+ return (federal_census_block !== undefined &&
28
+ typeof federal_census_block.federal_census_block_id === "string" &&
29
+ typeof federal_census_block.federal_census_tract_id === "string" &&
30
+ typeof federal_census_block.federal_census_county_id === "string" &&
31
+ typeof federal_census_block.federal_census_id === "number" &&
32
+ typeof federal_census_block.county_id === "string" &&
33
+ typeof federal_census_block.tract_id === "string" &&
34
+ typeof federal_census_block.block_id === "string" &&
35
+ is_state_id(federal_census_block.state_id) &&
36
+ typeof federal_census_block.name === "string");
37
+ }
38
+ }
@@ -0,0 +1,10 @@
1
+ import { StateID } from "../regions/State.js";
2
+ export declare class FederalCensusCounty {
3
+ readonly federal_census_county_id: string;
4
+ readonly federal_census_id: number;
5
+ readonly county_id: string;
6
+ readonly state_id: StateID;
7
+ readonly name: string;
8
+ constructor(federal_census: any);
9
+ static is(federal_census: any): federal_census is FederalCensusCounty;
10
+ }
@@ -0,0 +1,26 @@
1
+ import { is_state_id } from "../regions/State.js";
2
+ export class FederalCensusCounty {
3
+ federal_census_county_id;
4
+ federal_census_id;
5
+ county_id;
6
+ state_id;
7
+ name;
8
+ constructor(federal_census) {
9
+ if (!FederalCensusCounty.is(federal_census)) {
10
+ throw Error("Invalid input.");
11
+ }
12
+ this.federal_census_county_id = federal_census.federal_census_county_id;
13
+ this.federal_census_id = federal_census.federal_census_id;
14
+ this.county_id = federal_census.county_id;
15
+ this.state_id = federal_census.state_id;
16
+ this.name = federal_census.name;
17
+ }
18
+ static is(federal_census) {
19
+ return (federal_census !== undefined &&
20
+ typeof federal_census.federal_census_county_id === "string" &&
21
+ typeof federal_census.federal_census_id === "number" &&
22
+ typeof federal_census.county_id === "string" &&
23
+ is_state_id(federal_census.state_id) &&
24
+ typeof federal_census.name === "string");
25
+ }
26
+ }
@@ -0,0 +1,12 @@
1
+ import { StateID } from "../regions/State.js";
2
+ export declare class FederalCensusTract {
3
+ readonly federal_census_tract_id: string;
4
+ readonly federal_census_county_id: string;
5
+ readonly federal_census_id: number;
6
+ readonly county_id: string;
7
+ readonly tract_id: string;
8
+ readonly state_id: StateID;
9
+ readonly name: string;
10
+ constructor(federal_census_tract: any);
11
+ static is(federal_census_tract: any): federal_census_tract is FederalCensusTract;
12
+ }
@@ -0,0 +1,32 @@
1
+ import { is_state_id } from "../regions/State.js";
2
+ export class FederalCensusTract {
3
+ federal_census_tract_id;
4
+ federal_census_county_id;
5
+ federal_census_id;
6
+ county_id;
7
+ tract_id;
8
+ state_id;
9
+ name;
10
+ constructor(federal_census_tract) {
11
+ if (!FederalCensusTract.is(federal_census_tract)) {
12
+ throw Error("Invalid input.");
13
+ }
14
+ this.federal_census_tract_id = federal_census_tract.federal_census_tract_id;
15
+ this.federal_census_county_id = federal_census_tract.federal_census_county_id;
16
+ this.federal_census_id = federal_census_tract.federal_census_id;
17
+ this.county_id = federal_census_tract.county_id;
18
+ this.tract_id = federal_census_tract.tract_id;
19
+ this.state_id = federal_census_tract.state_id;
20
+ this.name = federal_census_tract.name;
21
+ }
22
+ static is(federal_census_tract) {
23
+ return (federal_census_tract !== undefined &&
24
+ typeof federal_census_tract.federal_census_tract_id === "string" &&
25
+ typeof federal_census_tract.federal_census_county_id === "string" &&
26
+ typeof federal_census_tract.federal_census_id === "number" &&
27
+ typeof federal_census_tract.county_id === "string" &&
28
+ typeof federal_census_tract.tract_id === "string" &&
29
+ is_state_id(federal_census_tract.state_id) &&
30
+ typeof federal_census_tract.name === "string");
31
+ }
32
+ }
@@ -1,8 +1,12 @@
1
- export declare const state_ids: readonly ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DC", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY"];
1
+ export declare const state_ids: readonly ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "DC", "PR", "AS", "GU", "MP", "VI"];
2
2
  export type StateID = typeof state_ids[number];
3
3
  export declare function is_state_id(state_id: any): state_id is StateID;
4
- export interface State {
5
- state_id: StateID;
6
- name: string;
4
+ export declare class State {
5
+ readonly state_id: StateID;
6
+ readonly name: string;
7
+ readonly federal_census_state_id: string;
8
+ readonly is_territory: boolean;
9
+ constructor(state: any);
10
+ static is(state: any): state is State;
7
11
  }
8
12
  export declare const states_by_state_id: Record<StateID, State>;
@@ -1,210 +1,364 @@
1
- export const state_ids = ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DC", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY"];
1
+ export const state_ids = ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "DC", "PR", "AS", "GU", "MP", "VI"];
2
2
  export function is_state_id(state_id) {
3
3
  return state_ids.includes(state_id);
4
4
  }
5
+ export class State {
6
+ state_id;
7
+ name;
8
+ federal_census_state_id;
9
+ is_territory;
10
+ constructor(state) {
11
+ if (!State.is(state)) {
12
+ throw Error("Invalid input.");
13
+ }
14
+ this.state_id = state.state_id;
15
+ this.name = state.name;
16
+ this.federal_census_state_id = state.federal_census_state_id;
17
+ this.is_territory = state.is_territory;
18
+ }
19
+ static is(state) {
20
+ return (state !== undefined &&
21
+ is_state_id(state.state_id) &&
22
+ typeof state.name === "string" &&
23
+ typeof state.federal_census_state_id === "string" &&
24
+ typeof state.is_territory === "boolean");
25
+ }
26
+ }
5
27
  export const states_by_state_id = {
6
28
  AL: {
7
29
  state_id: "AL",
8
- name: "Alabama"
30
+ name: "Alabama",
31
+ federal_census_state_id: "01",
32
+ is_territory: false
9
33
  },
10
34
  AK: {
11
35
  state_id: "AK",
12
- name: "Alaska"
36
+ name: "Alaska",
37
+ federal_census_state_id: "02",
38
+ is_territory: false
13
39
  },
14
40
  AZ: {
15
41
  state_id: "AZ",
16
- name: "Arizona"
42
+ name: "Arizona",
43
+ federal_census_state_id: "04",
44
+ is_territory: false
17
45
  },
18
46
  AR: {
19
47
  state_id: "AR",
20
- name: "Arkansas"
48
+ name: "Arkansas",
49
+ federal_census_state_id: "05",
50
+ is_territory: false
21
51
  },
22
52
  CA: {
23
53
  state_id: "CA",
24
- name: "California"
54
+ name: "California",
55
+ federal_census_state_id: "06",
56
+ is_territory: false
25
57
  },
26
58
  CO: {
27
59
  state_id: "CO",
28
- name: "Colorado"
60
+ name: "Colorado",
61
+ federal_census_state_id: "08",
62
+ is_territory: false
29
63
  },
30
64
  CT: {
31
65
  state_id: "CT",
32
- name: "Connecticut"
33
- },
34
- DC: {
35
- state_id: "DC",
36
- name: "Washington D.C."
66
+ name: "Connecticut",
67
+ federal_census_state_id: "09",
68
+ is_territory: false
37
69
  },
38
70
  DE: {
39
71
  state_id: "DE",
40
- name: "Delaware"
72
+ name: "Delaware",
73
+ federal_census_state_id: "10",
74
+ is_territory: false
41
75
  },
42
76
  FL: {
43
77
  state_id: "FL",
44
- name: "Florida"
78
+ name: "Florida",
79
+ federal_census_state_id: "12",
80
+ is_territory: false
45
81
  },
46
82
  GA: {
47
83
  state_id: "GA",
48
- name: "Georgia"
84
+ name: "Georgia",
85
+ federal_census_state_id: "13",
86
+ is_territory: false
49
87
  },
50
88
  HI: {
51
89
  state_id: "HI",
52
- name: "Hawaii"
90
+ name: "Hawaii",
91
+ federal_census_state_id: "15",
92
+ is_territory: false
53
93
  },
54
94
  ID: {
55
95
  state_id: "ID",
56
- name: "Idaho"
96
+ name: "Idaho",
97
+ federal_census_state_id: "16",
98
+ is_territory: false
57
99
  },
58
100
  IL: {
59
101
  state_id: "IL",
60
- name: "Illinois"
102
+ name: "Illinois",
103
+ federal_census_state_id: "17",
104
+ is_territory: false
61
105
  },
62
106
  IN: {
63
107
  state_id: "IN",
64
- name: "Indiana"
108
+ name: "Indiana",
109
+ federal_census_state_id: "18",
110
+ is_territory: false
65
111
  },
66
112
  IA: {
67
113
  state_id: "IA",
68
- name: "Iowa"
114
+ name: "Iowa",
115
+ federal_census_state_id: "19",
116
+ is_territory: false
69
117
  },
70
118
  KS: {
71
119
  state_id: "KS",
72
- name: "Kansas"
120
+ name: "Kansas",
121
+ federal_census_state_id: "20",
122
+ is_territory: false
73
123
  },
74
124
  KY: {
75
125
  state_id: "KY",
76
- name: "Kentucky"
126
+ name: "Kentucky",
127
+ federal_census_state_id: "21",
128
+ is_territory: false
77
129
  },
78
130
  LA: {
79
131
  state_id: "LA",
80
- name: "Louisiana"
132
+ name: "Louisiana",
133
+ federal_census_state_id: "22",
134
+ is_territory: false
81
135
  },
82
136
  ME: {
83
137
  state_id: "ME",
84
- name: "Maine"
138
+ name: "Maine",
139
+ federal_census_state_id: "23",
140
+ is_territory: false
85
141
  },
86
142
  MD: {
87
143
  state_id: "MD",
88
- name: "Maryland"
144
+ name: "Maryland",
145
+ federal_census_state_id: "24",
146
+ is_territory: false
89
147
  },
90
148
  MA: {
91
149
  state_id: "MA",
92
- name: "Massachusetts"
150
+ name: "Massachusetts",
151
+ federal_census_state_id: "25",
152
+ is_territory: false
93
153
  },
94
154
  MI: {
95
155
  state_id: "MI",
96
- name: "Michigan"
156
+ name: "Michigan",
157
+ federal_census_state_id: "26",
158
+ is_territory: false
97
159
  },
98
160
  MN: {
99
161
  state_id: "MN",
100
- name: "Minnesota"
162
+ name: "Minnesota",
163
+ federal_census_state_id: "27",
164
+ is_territory: false
101
165
  },
102
166
  MS: {
103
167
  state_id: "MS",
104
- name: "Mississippi"
168
+ name: "Mississippi",
169
+ federal_census_state_id: "28",
170
+ is_territory: false
105
171
  },
106
172
  MO: {
107
173
  state_id: "MO",
108
- name: "Missouri"
174
+ name: "Missouri",
175
+ federal_census_state_id: "29",
176
+ is_territory: false
109
177
  },
110
178
  MT: {
111
179
  state_id: "MT",
112
- name: "Montana"
180
+ name: "Montana",
181
+ federal_census_state_id: "30",
182
+ is_territory: false
113
183
  },
114
184
  NE: {
115
185
  state_id: "NE",
116
- name: "Nebraska"
186
+ name: "Nebraska",
187
+ federal_census_state_id: "31",
188
+ is_territory: false
117
189
  },
118
190
  NV: {
119
191
  state_id: "NV",
120
- name: "Nevada"
192
+ name: "Nevada",
193
+ federal_census_state_id: "32",
194
+ is_territory: false
121
195
  },
122
196
  NH: {
123
197
  state_id: "NH",
124
- name: "New Hampshire"
198
+ name: "New Hampshire",
199
+ federal_census_state_id: "33",
200
+ is_territory: false
125
201
  },
126
202
  NJ: {
127
203
  state_id: "NJ",
128
- name: "New Jersey"
204
+ name: "New Jersey",
205
+ federal_census_state_id: "34",
206
+ is_territory: false
129
207
  },
130
208
  NM: {
131
209
  state_id: "NM",
132
- name: "New Mexico"
210
+ name: "New Mexico",
211
+ federal_census_state_id: "35",
212
+ is_territory: false
133
213
  },
134
214
  NY: {
135
215
  state_id: "NY",
136
- name: "New York"
216
+ name: "New York",
217
+ federal_census_state_id: "36",
218
+ is_territory: false
137
219
  },
138
220
  NC: {
139
221
  state_id: "NC",
140
- name: "North Carolina"
222
+ name: "North Carolina",
223
+ federal_census_state_id: "37",
224
+ is_territory: false
141
225
  },
142
226
  ND: {
143
227
  state_id: "ND",
144
- name: "North Dakota"
228
+ name: "North Dakota",
229
+ federal_census_state_id: "38",
230
+ is_territory: false
145
231
  },
146
232
  OH: {
147
233
  state_id: "OH",
148
- name: "Ohio"
234
+ name: "Ohio",
235
+ federal_census_state_id: "39",
236
+ is_territory: false
149
237
  },
150
238
  OK: {
151
239
  state_id: "OK",
152
- name: "Oklahoma"
240
+ name: "Oklahoma",
241
+ federal_census_state_id: "40",
242
+ is_territory: false
153
243
  },
154
244
  OR: {
155
245
  state_id: "OR",
156
- name: "Oregon"
246
+ name: "Oregon",
247
+ federal_census_state_id: "41",
248
+ is_territory: false
157
249
  },
158
250
  PA: {
159
251
  state_id: "PA",
160
- name: "Pennsylvania"
252
+ name: "Pennsylvania",
253
+ federal_census_state_id: "42",
254
+ is_territory: false
161
255
  },
162
256
  RI: {
163
257
  state_id: "RI",
164
- name: "Rhode Island"
258
+ name: "Rhode Island",
259
+ federal_census_state_id: "44",
260
+ is_territory: false
165
261
  },
166
262
  SC: {
167
263
  state_id: "SC",
168
- name: "South Carolina"
264
+ name: "South Carolina",
265
+ federal_census_state_id: "45",
266
+ is_territory: false
169
267
  },
170
268
  SD: {
171
269
  state_id: "SD",
172
- name: "South Dakota"
270
+ name: "South Dakota",
271
+ federal_census_state_id: "46",
272
+ is_territory: false
173
273
  },
174
274
  TN: {
175
275
  state_id: "TN",
176
- name: "Tennessee"
276
+ name: "Tennessee",
277
+ federal_census_state_id: "47",
278
+ is_territory: false
177
279
  },
178
280
  TX: {
179
281
  state_id: "TX",
180
- name: "Texas"
282
+ name: "Texas",
283
+ federal_census_state_id: "48",
284
+ is_territory: false
181
285
  },
182
286
  UT: {
183
287
  state_id: "UT",
184
- name: "Utah"
288
+ name: "Utah",
289
+ federal_census_state_id: "49",
290
+ is_territory: false
185
291
  },
186
292
  VT: {
187
293
  state_id: "VT",
188
- name: "Vermont"
294
+ name: "Vermont",
295
+ federal_census_state_id: "50",
296
+ is_territory: false
189
297
  },
190
298
  VA: {
191
299
  state_id: "VA",
192
- name: "Virginia"
300
+ name: "Virginia",
301
+ federal_census_state_id: "51",
302
+ is_territory: false
193
303
  },
194
304
  WA: {
195
305
  state_id: "WA",
196
- name: "Washington"
306
+ name: "Washington",
307
+ federal_census_state_id: "53",
308
+ is_territory: false
197
309
  },
198
310
  WV: {
199
311
  state_id: "WV",
200
- name: "West Virginia"
312
+ name: "West Virginia",
313
+ federal_census_state_id: "54",
314
+ is_territory: false
201
315
  },
202
316
  WI: {
203
317
  state_id: "WI",
204
- name: "Wisconsin"
318
+ name: "Wisconsin",
319
+ federal_census_state_id: "55",
320
+ is_territory: false
205
321
  },
206
322
  WY: {
207
323
  state_id: "WY",
208
- name: "Wyoming"
324
+ name: "Wyoming",
325
+ federal_census_state_id: "46",
326
+ is_territory: false
327
+ },
328
+ DC: {
329
+ state_id: "DC",
330
+ name: "Washington D.C.",
331
+ federal_census_state_id: "11",
332
+ is_territory: true
333
+ },
334
+ PR: {
335
+ state_id: "PR",
336
+ name: "Puerto Rico",
337
+ federal_census_state_id: "72",
338
+ is_territory: false
339
+ },
340
+ AS: {
341
+ state_id: "AS",
342
+ name: "American Samoa",
343
+ federal_census_state_id: "60",
344
+ is_territory: true
345
+ },
346
+ GU: {
347
+ state_id: "GU",
348
+ name: "Guam",
349
+ federal_census_state_id: "66",
350
+ is_territory: true
351
+ },
352
+ MP: {
353
+ state_id: "MP",
354
+ name: "Northern Mariana Islands",
355
+ federal_census_state_id: "69",
356
+ is_territory: true
357
+ },
358
+ VI: {
359
+ state_id: "VI",
360
+ name: "Virgin Islands",
361
+ federal_census_state_id: "78",
362
+ is_territory: true
209
363
  }
210
364
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "triangle-types",
3
- "version": "1.0.156",
3
+ "version": "1.0.158",
4
4
  "main": "dist/src/index.js",
5
5
  "types": "dist/src/index.d.ts",
6
6
  "scripts": {
package/src/index.ts CHANGED
@@ -11,6 +11,11 @@ export * from "./types/youtube/YoutubeChannel"
11
11
  export * from "./types/youtube/YoutubeVideo"
12
12
  export * from "./types/youtube/YoutubeVideoTag"
13
13
 
14
+ export * from "./types/federal_census/FederalCensus"
15
+ export * from "./types/federal_census/FederalCensusBlock"
16
+ export * from "./types/federal_census/FederalCensusCounty"
17
+ export * from "./types/federal_census/FederalCensusTract"
18
+
14
19
  export * from "./types/federal_elections/FederalElection"
15
20
  export * from "./types/federal_elections/FederalElectionCommittee"
16
21
  export * from "./types/federal_elections/FederalElectionCandidate"
@@ -0,0 +1,20 @@
1
+ import { is_state_id, StateID } from "../regions/State"
2
+
3
+ export class FederalCensus {
4
+ readonly federal_census_id : number
5
+
6
+ constructor(federal_census : any) {
7
+ if (!FederalCensus.is(federal_census)) {
8
+ throw Error("Invalid input.")
9
+ }
10
+ this.federal_census_id = federal_census.federal_census_id
11
+ }
12
+
13
+ static is(federal_census : any) : federal_census is FederalCensus {
14
+ return (
15
+ federal_census !== undefined &&
16
+ typeof federal_census.federal_census_id === "number"
17
+ )
18
+ }
19
+
20
+ }
@@ -0,0 +1,44 @@
1
+ import { is_state_id, StateID } from "../regions/State"
2
+
3
+ export class FederalCensusBlock {
4
+ readonly federal_census_block_id : string
5
+ readonly federal_census_tract_id : string
6
+ readonly federal_census_county_id : string
7
+ readonly federal_census_id : number
8
+ readonly county_id : string
9
+ readonly tract_id : string
10
+ readonly block_id : string
11
+ readonly state_id : StateID
12
+ readonly name : string
13
+
14
+ constructor(federal_census_block : any) {
15
+ if (!FederalCensusBlock.is(federal_census_block)) {
16
+ throw Error("Invalid input.")
17
+ }
18
+ this.federal_census_block_id = federal_census_block.federal_census_block_id
19
+ this.federal_census_tract_id = federal_census_block.federal_census_tract_id
20
+ this.federal_census_county_id = federal_census_block.federal_census_county_id
21
+ this.federal_census_id = federal_census_block.federal_census_id
22
+ this.county_id = federal_census_block.county_id
23
+ this.tract_id = federal_census_block.tract_id
24
+ this.block_id = federal_census_block.block_id
25
+ this.state_id = federal_census_block.state_id
26
+ this.name = federal_census_block.name
27
+ }
28
+
29
+ static is(federal_census_block : any) : federal_census_block is FederalCensusBlock {
30
+ return (
31
+ federal_census_block !== undefined &&
32
+ typeof federal_census_block.federal_census_block_id === "string" &&
33
+ typeof federal_census_block.federal_census_tract_id === "string" &&
34
+ typeof federal_census_block.federal_census_county_id === "string" &&
35
+ typeof federal_census_block.federal_census_id === "number" &&
36
+ typeof federal_census_block.county_id === "string" &&
37
+ typeof federal_census_block.tract_id === "string" &&
38
+ typeof federal_census_block.block_id === "string" &&
39
+ is_state_id(federal_census_block.state_id) &&
40
+ typeof federal_census_block.name === "string"
41
+ )
42
+ }
43
+
44
+ }
@@ -0,0 +1,32 @@
1
+ import { is_state_id, StateID } from "../regions/State"
2
+
3
+ export class FederalCensusCounty {
4
+ readonly federal_census_county_id : string
5
+ readonly federal_census_id : number
6
+ readonly county_id : string
7
+ readonly state_id : StateID
8
+ readonly name : string
9
+
10
+ constructor(federal_census : any) {
11
+ if (!FederalCensusCounty.is(federal_census)) {
12
+ throw Error("Invalid input.")
13
+ }
14
+ this.federal_census_county_id = federal_census.federal_census_county_id
15
+ this.federal_census_id = federal_census.federal_census_id
16
+ this.county_id = federal_census.county_id
17
+ this.state_id = federal_census.state_id
18
+ this.name = federal_census.name
19
+ }
20
+
21
+ static is(federal_census : any) : federal_census is FederalCensusCounty {
22
+ return (
23
+ federal_census !== undefined &&
24
+ typeof federal_census.federal_census_county_id === "string" &&
25
+ typeof federal_census.federal_census_id === "number" &&
26
+ typeof federal_census.county_id === "string" &&
27
+ is_state_id(federal_census.state_id) &&
28
+ typeof federal_census.name === "string"
29
+ )
30
+ }
31
+
32
+ }
@@ -0,0 +1,38 @@
1
+ import { is_state_id, StateID } from "../regions/State"
2
+
3
+ export class FederalCensusTract {
4
+ readonly federal_census_tract_id : string
5
+ readonly federal_census_county_id : string
6
+ readonly federal_census_id : number
7
+ readonly county_id : string
8
+ readonly tract_id : string
9
+ readonly state_id : StateID
10
+ readonly name : string
11
+
12
+ constructor(federal_census_tract : any) {
13
+ if (!FederalCensusTract.is(federal_census_tract)) {
14
+ throw Error("Invalid input.")
15
+ }
16
+ this.federal_census_tract_id = federal_census_tract.federal_census_tract_id
17
+ this.federal_census_county_id = federal_census_tract.federal_census_county_id
18
+ this.federal_census_id = federal_census_tract.federal_census_id
19
+ this.county_id = federal_census_tract.county_id
20
+ this.tract_id = federal_census_tract.tract_id
21
+ this.state_id = federal_census_tract.state_id
22
+ this.name = federal_census_tract.name
23
+ }
24
+
25
+ static is(federal_census_tract : any) : federal_census_tract is FederalCensusTract {
26
+ return (
27
+ federal_census_tract !== undefined &&
28
+ typeof federal_census_tract.federal_census_tract_id === "string" &&
29
+ typeof federal_census_tract.federal_census_county_id === "string" &&
30
+ typeof federal_census_tract.federal_census_id === "number" &&
31
+ typeof federal_census_tract.county_id === "string" &&
32
+ typeof federal_census_tract.tract_id === "string" &&
33
+ is_state_id(federal_census_tract.state_id) &&
34
+ typeof federal_census_tract.name === "string"
35
+ )
36
+ }
37
+
38
+ }
@@ -1,4 +1,4 @@
1
- export const state_ids = ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DC", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY"] as const
1
+ export const state_ids = ["AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "DC", "PR", "AS", "GU", "MP", "VI"] as const
2
2
 
3
3
  export type StateID = typeof state_ids[number]
4
4
 
@@ -6,215 +6,368 @@ export function is_state_id(state_id : any) : state_id is StateID {
6
6
  return state_ids.includes(state_id)
7
7
  }
8
8
 
9
- export interface State {
10
- state_id : StateID,
11
- name : string,
12
- // num_federal_congress_districts_by_federal_congress_id : Record<number, number>
9
+ export class State {
10
+ readonly state_id : StateID
11
+ readonly name : string
12
+ readonly federal_census_state_id : string
13
+ readonly is_territory : boolean
14
+
15
+ constructor(state : any) {
16
+ if (!State.is(state)) {
17
+ throw Error("Invalid input.")
18
+ }
19
+ this.state_id = state.state_id
20
+ this.name = state.name
21
+ this.federal_census_state_id = state.federal_census_state_id
22
+ this.is_territory = state.is_territory
23
+ }
24
+
25
+ static is(state : any) : state is State {
26
+ return (
27
+ state !== undefined &&
28
+ is_state_id(state.state_id) &&
29
+ typeof state.name === "string" &&
30
+ typeof state.federal_census_state_id === "string" &&
31
+ typeof state.is_territory === "boolean"
32
+ )
33
+ }
13
34
  }
14
35
 
15
36
  export const states_by_state_id : Record<StateID, State> = {
16
37
  AL : {
17
38
  state_id : "AL",
18
- name : "Alabama"
39
+ name : "Alabama",
40
+ federal_census_state_id : "01",
41
+ is_territory : false
19
42
  },
20
43
  AK : {
21
44
  state_id : "AK",
22
- name : "Alaska"
45
+ name : "Alaska",
46
+ federal_census_state_id : "02",
47
+ is_territory : false
23
48
  },
24
49
  AZ : {
25
50
  state_id : "AZ",
26
- name : "Arizona"
51
+ name : "Arizona",
52
+ federal_census_state_id : "04",
53
+ is_territory : false
27
54
  },
28
55
  AR : {
29
56
  state_id : "AR",
30
- name : "Arkansas"
57
+ name : "Arkansas",
58
+ federal_census_state_id : "05",
59
+ is_territory : false
31
60
  },
32
61
  CA : {
33
62
  state_id : "CA",
34
- name : "California"
63
+ name : "California",
64
+ federal_census_state_id : "06",
65
+ is_territory : false
35
66
  },
36
67
  CO : {
37
68
  state_id : "CO",
38
- name : "Colorado"
69
+ name : "Colorado",
70
+ federal_census_state_id : "08",
71
+ is_territory : false
39
72
  },
40
73
  CT : {
41
74
  state_id : "CT",
42
- name : "Connecticut"
43
- },
44
- DC : {
45
- state_id : "DC",
46
- name : "Washington D.C."
75
+ name : "Connecticut",
76
+ federal_census_state_id : "09",
77
+ is_territory : false
47
78
  },
48
79
  DE : {
49
80
  state_id : "DE",
50
- name : "Delaware"
81
+ name : "Delaware",
82
+ federal_census_state_id : "10",
83
+ is_territory : false
51
84
  },
52
85
  FL : {
53
86
  state_id : "FL",
54
- name : "Florida"
87
+ name : "Florida",
88
+ federal_census_state_id : "12",
89
+ is_territory : false
55
90
  },
56
91
  GA : {
57
92
  state_id : "GA",
58
- name : "Georgia"
93
+ name : "Georgia",
94
+ federal_census_state_id : "13",
95
+ is_territory : false
59
96
  },
60
97
  HI : {
61
98
  state_id : "HI",
62
- name : "Hawaii"
99
+ name : "Hawaii",
100
+ federal_census_state_id : "15",
101
+ is_territory : false
63
102
  },
64
103
  ID : {
65
104
  state_id : "ID",
66
- name : "Idaho"
105
+ name : "Idaho",
106
+ federal_census_state_id : "16",
107
+ is_territory : false
67
108
  },
68
109
  IL : {
69
110
  state_id : "IL",
70
- name : "Illinois"
111
+ name : "Illinois",
112
+ federal_census_state_id : "17",
113
+ is_territory : false
71
114
  },
72
115
  IN : {
73
116
  state_id : "IN",
74
- name : "Indiana"
117
+ name : "Indiana",
118
+ federal_census_state_id : "18",
119
+ is_territory : false
75
120
  },
76
121
  IA : {
77
122
  state_id : "IA",
78
- name : "Iowa"
123
+ name : "Iowa",
124
+ federal_census_state_id : "19",
125
+ is_territory : false
79
126
  },
80
127
  KS : {
81
128
  state_id : "KS",
82
- name : "Kansas"
129
+ name : "Kansas",
130
+ federal_census_state_id : "20",
131
+ is_territory : false
83
132
  },
84
133
  KY : {
85
134
  state_id : "KY",
86
- name : "Kentucky"
135
+ name : "Kentucky",
136
+ federal_census_state_id : "21",
137
+ is_territory : false
87
138
  },
88
139
  LA : {
89
140
  state_id : "LA",
90
- name : "Louisiana"
141
+ name : "Louisiana",
142
+ federal_census_state_id : "22",
143
+ is_territory : false
91
144
  },
92
145
  ME : {
93
146
  state_id : "ME",
94
- name : "Maine"
147
+ name : "Maine",
148
+ federal_census_state_id : "23",
149
+ is_territory : false
95
150
  },
96
151
  MD : {
97
152
  state_id : "MD",
98
- name : "Maryland"
153
+ name : "Maryland",
154
+ federal_census_state_id : "24",
155
+ is_territory : false
99
156
  },
100
157
  MA : {
101
158
  state_id : "MA",
102
- name : "Massachusetts"
159
+ name : "Massachusetts",
160
+ federal_census_state_id : "25",
161
+ is_territory : false
103
162
  },
104
163
  MI : {
105
164
  state_id : "MI",
106
- name : "Michigan"
165
+ name : "Michigan",
166
+ federal_census_state_id : "26",
167
+ is_territory : false
107
168
  },
108
169
  MN : {
109
170
  state_id : "MN",
110
- name : "Minnesota"
171
+ name : "Minnesota",
172
+ federal_census_state_id : "27",
173
+ is_territory : false
111
174
  },
112
175
  MS : {
113
176
  state_id : "MS",
114
- name : "Mississippi"
177
+ name : "Mississippi",
178
+ federal_census_state_id : "28",
179
+ is_territory : false
115
180
  },
116
181
  MO : {
117
182
  state_id : "MO",
118
- name : "Missouri"
183
+ name : "Missouri",
184
+ federal_census_state_id : "29",
185
+ is_territory : false
119
186
  },
120
187
  MT : {
121
188
  state_id : "MT",
122
- name : "Montana"
189
+ name : "Montana",
190
+ federal_census_state_id : "30",
191
+ is_territory : false
123
192
  },
124
193
  NE : {
125
194
  state_id : "NE",
126
- name : "Nebraska"
195
+ name : "Nebraska",
196
+ federal_census_state_id : "31",
197
+ is_territory : false
127
198
  },
128
199
  NV : {
129
200
  state_id : "NV",
130
- name : "Nevada"
201
+ name : "Nevada",
202
+ federal_census_state_id : "32",
203
+ is_territory : false
131
204
  },
132
205
  NH : {
133
206
  state_id : "NH",
134
- name : "New Hampshire"
207
+ name : "New Hampshire",
208
+ federal_census_state_id : "33",
209
+ is_territory : false
135
210
  },
136
211
  NJ : {
137
212
  state_id : "NJ",
138
- name : "New Jersey"
213
+ name : "New Jersey",
214
+ federal_census_state_id : "34",
215
+ is_territory : false
139
216
  },
140
217
  NM : {
141
218
  state_id : "NM",
142
- name : "New Mexico"
219
+ name : "New Mexico",
220
+ federal_census_state_id : "35",
221
+ is_territory : false
143
222
  },
144
223
  NY : {
145
224
  state_id : "NY",
146
- name : "New York"
225
+ name : "New York",
226
+ federal_census_state_id : "36",
227
+ is_territory : false
147
228
  },
148
229
  NC : {
149
230
  state_id : "NC",
150
- name : "North Carolina"
231
+ name : "North Carolina",
232
+ federal_census_state_id : "37",
233
+ is_territory : false
151
234
  },
152
235
  ND : {
153
236
  state_id : "ND",
154
- name : "North Dakota"
237
+ name : "North Dakota",
238
+ federal_census_state_id : "38",
239
+ is_territory : false
155
240
  },
156
241
  OH : {
157
242
  state_id : "OH",
158
- name : "Ohio"
243
+ name : "Ohio",
244
+ federal_census_state_id : "39",
245
+ is_territory : false
159
246
  },
160
247
  OK : {
161
248
  state_id : "OK",
162
- name : "Oklahoma"
249
+ name : "Oklahoma",
250
+ federal_census_state_id : "40",
251
+ is_territory : false
163
252
  },
164
253
  OR : {
165
254
  state_id : "OR",
166
- name : "Oregon"
255
+ name : "Oregon",
256
+ federal_census_state_id : "41",
257
+ is_territory : false
167
258
  },
168
259
  PA : {
169
260
  state_id : "PA",
170
- name : "Pennsylvania"
261
+ name : "Pennsylvania",
262
+ federal_census_state_id : "42",
263
+ is_territory : false
171
264
  },
172
265
  RI : {
173
266
  state_id : "RI",
174
- name : "Rhode Island"
267
+ name : "Rhode Island",
268
+ federal_census_state_id : "44",
269
+ is_territory : false
175
270
  },
176
271
  SC : {
177
272
  state_id : "SC",
178
- name : "South Carolina"
273
+ name : "South Carolina",
274
+ federal_census_state_id : "45",
275
+ is_territory : false
179
276
  },
180
277
  SD : {
181
278
  state_id : "SD",
182
- name : "South Dakota"
279
+ name : "South Dakota",
280
+ federal_census_state_id : "46",
281
+ is_territory : false
183
282
  },
184
283
  TN : {
185
284
  state_id : "TN",
186
- name : "Tennessee"
285
+ name : "Tennessee",
286
+ federal_census_state_id : "47",
287
+ is_territory : false
187
288
  },
188
289
  TX : {
189
290
  state_id : "TX",
190
- name : "Texas"
291
+ name : "Texas",
292
+ federal_census_state_id : "48",
293
+ is_territory : false
191
294
  },
192
295
  UT : {
193
296
  state_id : "UT",
194
- name : "Utah"
297
+ name : "Utah",
298
+ federal_census_state_id : "49",
299
+ is_territory : false
195
300
  },
196
301
  VT : {
197
302
  state_id : "VT",
198
- name : "Vermont"
303
+ name : "Vermont",
304
+ federal_census_state_id : "50",
305
+ is_territory : false
199
306
  },
200
307
  VA : {
201
308
  state_id : "VA",
202
- name : "Virginia"
309
+ name : "Virginia",
310
+ federal_census_state_id : "51",
311
+ is_territory : false
203
312
  },
204
313
  WA : {
205
314
  state_id : "WA",
206
- name : "Washington"
315
+ name : "Washington",
316
+ federal_census_state_id : "53",
317
+ is_territory : false
207
318
  },
208
319
  WV : {
209
320
  state_id : "WV",
210
- name : "West Virginia"
321
+ name : "West Virginia",
322
+ federal_census_state_id : "54",
323
+ is_territory : false
211
324
  },
212
325
  WI : {
213
326
  state_id : "WI",
214
- name : "Wisconsin"
327
+ name : "Wisconsin",
328
+ federal_census_state_id : "55",
329
+ is_territory : false
215
330
  },
216
331
  WY : {
217
332
  state_id : "WY",
218
- name : "Wyoming"
333
+ name : "Wyoming",
334
+ federal_census_state_id : "46",
335
+ is_territory : false
336
+ },
337
+ DC : {
338
+ state_id : "DC",
339
+ name : "Washington D.C.",
340
+ federal_census_state_id : "11",
341
+ is_territory : true
342
+ },
343
+ PR : {
344
+ state_id : "PR",
345
+ name : "Puerto Rico",
346
+ federal_census_state_id : "72",
347
+ is_territory : false
348
+ },
349
+ AS : {
350
+ state_id : "AS",
351
+ name : "American Samoa",
352
+ federal_census_state_id : "60",
353
+ is_territory : true
354
+ },
355
+ GU : {
356
+ state_id : "GU",
357
+ name : "Guam",
358
+ federal_census_state_id : "66",
359
+ is_territory : true
360
+ },
361
+ MP : {
362
+ state_id : "MP",
363
+ name : "Northern Mariana Islands",
364
+ federal_census_state_id : "69",
365
+ is_territory : true
366
+ },
367
+ VI : {
368
+ state_id : "VI",
369
+ name : "Virgin Islands",
370
+ federal_census_state_id : "78",
371
+ is_territory : true
219
372
  }
220
373
  }