@cityssm/mpac-tools 0.1.0
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/CODE_OF_CONDUCT.md +140 -0
- package/CONTRIBUTING.md +33 -0
- package/LICENSE.md +21 -0
- package/README.md +59 -0
- package/SECURITY.md +15 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.ts +1 -0
- package/package.json +35 -0
- package/rollNumbers/index.d.ts +2 -0
- package/rollNumbers/index.js +2 -0
- package/rollNumbers/index.ts +2 -0
- package/rollNumbers/lookups.d.ts +469 -0
- package/rollNumbers/lookups.js +469 -0
- package/rollNumbers/lookups.ts +525 -0
- package/rollNumbers/utilities.d.ts +12 -0
- package/rollNumbers/utilities.js +24 -0
- package/rollNumbers/utilities.ts +57 -0
|
@@ -0,0 +1,525 @@
|
|
|
1
|
+
// eslint-disable-next-line @eslint-community/eslint-comments/disable-enable-pair
|
|
2
|
+
/* eslint-disable @cspell/spellchecker, max-lines, sonarjs/no-duplicate-string */
|
|
3
|
+
|
|
4
|
+
export const rollNumberMunicipalities = Object.freeze({
|
|
5
|
+
// Prescott, Russell, Stormont Dundas & Glengarry Counties
|
|
6
|
+
'0101': 'South Glengarry Township',
|
|
7
|
+
'0111': 'North Glengarry Township',
|
|
8
|
+
'0201': 'East Hawkesbury Township',
|
|
9
|
+
'0208': 'Hawkesbury Town',
|
|
10
|
+
'0209': 'Champlain Township',
|
|
11
|
+
'0212': 'The Nation Municipality',
|
|
12
|
+
'0231': 'Alfred and Plantagenet Township',
|
|
13
|
+
'0302': 'Casselman Village',
|
|
14
|
+
'0306': 'Russell Township',
|
|
15
|
+
'0316': 'Clarence-Rockland City',
|
|
16
|
+
'0402': 'Cornwall City',
|
|
17
|
+
'0406': 'South Stormont Township',
|
|
18
|
+
'0411': 'North Stormont Township',
|
|
19
|
+
'0506': 'South Dundas Township',
|
|
20
|
+
'0511': 'North Dundas Township',
|
|
21
|
+
|
|
22
|
+
// Lanark, Leeds & Grenville Counties
|
|
23
|
+
'0701': 'Edwardsburgh/Cardinal Township',
|
|
24
|
+
'0706': 'Augusta Township',
|
|
25
|
+
'0708': 'Prescott Town',
|
|
26
|
+
'0714': 'Merrickville-wolford Village',
|
|
27
|
+
'0719': 'North Grenville Township',
|
|
28
|
+
'0801': 'Elizabethtown-kitley Township',
|
|
29
|
+
'0802': 'Brockville City',
|
|
30
|
+
'0806': 'Front Yonge Township',
|
|
31
|
+
'0812': 'Leeds & Thousand Islands Township',
|
|
32
|
+
'0814': 'Gananoque Town',
|
|
33
|
+
'0819': 'Athens Township',
|
|
34
|
+
'0831': 'Rideau Lakes Township',
|
|
35
|
+
'0841': 'Westport Village',
|
|
36
|
+
'0901': 'Montague Township',
|
|
37
|
+
'0904': 'Smiths Falls Town',
|
|
38
|
+
'0911': 'Tay Valley Township',
|
|
39
|
+
'0919': 'Drummond/North Elmsley Township',
|
|
40
|
+
'0921': 'Perth Town',
|
|
41
|
+
'0924': 'Beckwith Township',
|
|
42
|
+
'0928': 'Carleton Place Town',
|
|
43
|
+
'0931': 'Mississippi Mills Town',
|
|
44
|
+
'0940': 'Lanark Highlands Township',
|
|
45
|
+
|
|
46
|
+
// Regional Municipality of the City of Ottawa
|
|
47
|
+
'0614': 'Ottawa City',
|
|
48
|
+
|
|
49
|
+
// Renfrew County
|
|
50
|
+
'4701': 'Mcnab/Braeside Township',
|
|
51
|
+
'4702': 'Arnprior Town',
|
|
52
|
+
'4706': 'Greater Madawaska Township',
|
|
53
|
+
'4719': 'Brudenell Lyndoch Raglan Township',
|
|
54
|
+
'4726': 'Madawaska Valley Township',
|
|
55
|
+
'4731': 'Killaloe, Hagarty & Richards Township',
|
|
56
|
+
'4738': 'Bonnechere Valley Township',
|
|
57
|
+
'4742': 'Admaston/Bromley Township',
|
|
58
|
+
'4746': 'Horton Township',
|
|
59
|
+
'4748': 'Renfrew Town',
|
|
60
|
+
'4758': 'Whitewater Region Township',
|
|
61
|
+
'4764': 'Pembroke City',
|
|
62
|
+
'4766': 'Laurentian Valley Township',
|
|
63
|
+
'4769': 'North Algona Wilberforce Township',
|
|
64
|
+
'4779': 'Petawawa Town',
|
|
65
|
+
'4792': 'Laurentian Hills Town',
|
|
66
|
+
'4796': 'Deep River Town',
|
|
67
|
+
'4798': 'Head Clara Maria Township',
|
|
68
|
+
|
|
69
|
+
// Frontenac, Lennox & Addington Counties
|
|
70
|
+
'1001': 'Frontenac Islands Township',
|
|
71
|
+
'1011': 'Corporation Of The City Of Kingston',
|
|
72
|
+
'1029': 'South Frontenac Township',
|
|
73
|
+
'1039': 'Central Frontenac Township',
|
|
74
|
+
'1042': 'North Frontenac Township',
|
|
75
|
+
'1104': 'Loyalist Township',
|
|
76
|
+
'1121': 'Greater Napanee Town',
|
|
77
|
+
'1124': 'Stone Mills Township',
|
|
78
|
+
'1134': 'Addington Highlands Township',
|
|
79
|
+
|
|
80
|
+
// Hastings, Northumberland, City of Prince Edward Counties
|
|
81
|
+
'1201': 'Tyendinaga Township',
|
|
82
|
+
'1202': 'Deseronto Town',
|
|
83
|
+
'1204': 'Quinte West City',
|
|
84
|
+
'1208': 'Belleville City',
|
|
85
|
+
'1220': 'Stirling-Rawdon Township',
|
|
86
|
+
'1230': 'Centre Hastings Municipality',
|
|
87
|
+
'1231': 'Tweed Municipality',
|
|
88
|
+
'1236': 'Madoc Township',
|
|
89
|
+
'1241': 'Marmora And Lake Municipality',
|
|
90
|
+
'1248': 'Tudor Cashel Township',
|
|
91
|
+
'1251': 'Limerick Township',
|
|
92
|
+
'1254': 'Wollaston Township',
|
|
93
|
+
'1258': 'Faraday Township',
|
|
94
|
+
'1262': 'Bancroft Town',
|
|
95
|
+
'1270': 'Carlow/Mayo Township',
|
|
96
|
+
'1290': 'Hastings Highlands Municipality',
|
|
97
|
+
'1350': 'Prince Edward County',
|
|
98
|
+
'1408': 'Brighton Municipality',
|
|
99
|
+
'1411': 'Cramahe Township',
|
|
100
|
+
'1419': 'Hamilton Township',
|
|
101
|
+
'1421': 'Cobourg Town',
|
|
102
|
+
'1423': 'Port Hope Municipality',
|
|
103
|
+
'1435': 'Trent Hills Municipality',
|
|
104
|
+
'1450': 'Alnwick/Haldimand Township',
|
|
105
|
+
|
|
106
|
+
// Peterborough County, Kawartha Lakes County, Haliburton County
|
|
107
|
+
'1501': 'Asphodel-norwood Township',
|
|
108
|
+
'1506': 'Otonabee-south Monaghan Township',
|
|
109
|
+
'1509': 'Cavan Monaghan Township',
|
|
110
|
+
'1514': 'Peterborough City',
|
|
111
|
+
'1516': 'Selwyn Township',
|
|
112
|
+
'1522': 'Douro-dummer Township',
|
|
113
|
+
'1531': 'Havelock-belmont-methuen Township',
|
|
114
|
+
'1536': 'North Kawartha Township',
|
|
115
|
+
'1542': 'Trent Lakes Municipality',
|
|
116
|
+
'1651': 'Kawartha Lakes City',
|
|
117
|
+
'4601': 'Highlands East Municipality',
|
|
118
|
+
'4616': 'Minden Hills Township',
|
|
119
|
+
'4621': 'Algonquin Highlands Township',
|
|
120
|
+
'4624': 'Dysart Et Al Municipality',
|
|
121
|
+
|
|
122
|
+
// City of Toronto
|
|
123
|
+
'1900': 'City Of Toronto',
|
|
124
|
+
|
|
125
|
+
// Regional Municipality of Durham
|
|
126
|
+
'1801': 'Pickering City',
|
|
127
|
+
'1805': 'Ajax Town',
|
|
128
|
+
'1809': 'Whitby Town',
|
|
129
|
+
'1813': 'Oshawa City',
|
|
130
|
+
'1817': 'Clarington Municipality',
|
|
131
|
+
'1820': 'Scugog Township',
|
|
132
|
+
'1829': 'Uxbridge Township',
|
|
133
|
+
'1839': 'Brock Township',
|
|
134
|
+
|
|
135
|
+
// Regional Municipality of York
|
|
136
|
+
'1928': 'Vaughan City',
|
|
137
|
+
'1936': 'Markham City',
|
|
138
|
+
'1938': 'Richmond Hill Town',
|
|
139
|
+
'1944': 'Whitchurch-stouffville Town',
|
|
140
|
+
'1946': 'Aurora Town',
|
|
141
|
+
'1948': 'Newmarket Town',
|
|
142
|
+
'1949': 'King Township',
|
|
143
|
+
'1954': 'East Gwillimbury Town',
|
|
144
|
+
'1970': 'Georgina Town',
|
|
145
|
+
|
|
146
|
+
// Regional Municipalities of Halton and Peel
|
|
147
|
+
'2105': 'Mississauga City',
|
|
148
|
+
'2110': 'Brampton City',
|
|
149
|
+
'2124': 'Caledon Town',
|
|
150
|
+
'2401': 'Oakville Town',
|
|
151
|
+
'2402': 'Burlington City',
|
|
152
|
+
'2409': 'Milton Town',
|
|
153
|
+
'2415': 'Halton Hills Town',
|
|
154
|
+
|
|
155
|
+
// Simcoe County
|
|
156
|
+
'4301': 'Adjala-tosorontio Township',
|
|
157
|
+
'4312': 'Bradford West Gwillimbury Town',
|
|
158
|
+
'4316': 'Innisfil Town',
|
|
159
|
+
'4321': 'Essa Township',
|
|
160
|
+
'4324': 'New Tecumseth Town',
|
|
161
|
+
'4329': 'Clearview Township',
|
|
162
|
+
'4331': 'Collingwood Town',
|
|
163
|
+
'4341': 'Springwater Township',
|
|
164
|
+
'4342': 'Barrie City',
|
|
165
|
+
'4346': 'Oro-medonte Township',
|
|
166
|
+
'4348': 'Ramara Township',
|
|
167
|
+
'4351': 'Severn Township',
|
|
168
|
+
'4352': 'Orillia City',
|
|
169
|
+
'4353': 'Tay Township',
|
|
170
|
+
'4364': 'Wasaga Beach Town',
|
|
171
|
+
'4368': 'Tiny Township',
|
|
172
|
+
'4372': 'Penetanguishene Town',
|
|
173
|
+
'4374': 'Midland Town',
|
|
174
|
+
|
|
175
|
+
// District Municipality of Muskoka
|
|
176
|
+
'4402': 'Gravenhurst Town',
|
|
177
|
+
'4418': 'Bracebridge Town',
|
|
178
|
+
'4427': 'Lake Of Bays Township',
|
|
179
|
+
'4442': 'Huntsville Town',
|
|
180
|
+
'4453': 'Muskoka Lakes Township',
|
|
181
|
+
'4465': 'Georgian Bay Township',
|
|
182
|
+
|
|
183
|
+
// Regional Municipality of Niagara
|
|
184
|
+
'2602': 'West Lincoln Township',
|
|
185
|
+
'2615': 'Grimsby Town',
|
|
186
|
+
'2622': 'Lincoln Town',
|
|
187
|
+
'2627': 'Niagara-on-the-lake Town',
|
|
188
|
+
'2629': 'St Catharines City',
|
|
189
|
+
'2703': 'Fort Erie Town',
|
|
190
|
+
'2711': 'Port Colborne City',
|
|
191
|
+
'2714': 'Wainfleet Township',
|
|
192
|
+
'2719': 'Welland City',
|
|
193
|
+
'2725': 'Niagara Falls City',
|
|
194
|
+
'2731': 'Thorold City',
|
|
195
|
+
'2732': 'Pelham Town',
|
|
196
|
+
|
|
197
|
+
// Regional Municipality of Hamilton
|
|
198
|
+
'2518': 'Hamilton City',
|
|
199
|
+
|
|
200
|
+
// City of Brantford, Brant, Haldimand County and Norfolk Counties
|
|
201
|
+
'2810': 'Haldimand County',
|
|
202
|
+
'2906': 'Brantford City',
|
|
203
|
+
'2920': 'County Of Brant',
|
|
204
|
+
'3310': 'Norfolk County',
|
|
205
|
+
|
|
206
|
+
// Regional Municipality of Waterloo, the Counties of Dufferin and Wellington, and the City of Guelph
|
|
207
|
+
'2201': 'East Garafraxa Township',
|
|
208
|
+
'2204': 'Grand Valley Town',
|
|
209
|
+
'2208': 'Amaranth Township',
|
|
210
|
+
'2212': 'Mono Town',
|
|
211
|
+
'2214': 'Orangeville Town',
|
|
212
|
+
'2216': 'Mulmur Township',
|
|
213
|
+
'2219': 'Melancthon Township',
|
|
214
|
+
'2221': 'Shelburne Town',
|
|
215
|
+
'2301': 'Puslinch Township',
|
|
216
|
+
'2308': 'Guelph City',
|
|
217
|
+
'2311': 'Guelph Eramosa Township',
|
|
218
|
+
'2316': 'Erin Town',
|
|
219
|
+
'2326': 'Centre Wellington Township',
|
|
220
|
+
'2332': 'Mapleton Township',
|
|
221
|
+
'2341': 'Minto Town',
|
|
222
|
+
'2349': 'Wellington North Township',
|
|
223
|
+
'3001': 'North Dumfries Township',
|
|
224
|
+
'3006': 'Cambridge City',
|
|
225
|
+
'3012': 'Kitchener City',
|
|
226
|
+
'3016': 'Waterloo City',
|
|
227
|
+
'3018': 'Wilmot Township',
|
|
228
|
+
'3024': 'Wellesley Township',
|
|
229
|
+
'3029': 'Woolwich Township',
|
|
230
|
+
|
|
231
|
+
// Elgin, Middlesex and Oxford Counties
|
|
232
|
+
'3202': 'Norwich Township',
|
|
233
|
+
'3204': 'Tillsonburg Town',
|
|
234
|
+
'3211': 'South-west Oxford Township',
|
|
235
|
+
'3218': 'Ingersoll Town',
|
|
236
|
+
'3227': 'Zorra Township',
|
|
237
|
+
'3238': 'East Zorra-tavistock Township',
|
|
238
|
+
'3242': 'Woodstock City',
|
|
239
|
+
'3245': 'Blandford Blenheim Township',
|
|
240
|
+
'3401': 'Bayham Municipality',
|
|
241
|
+
'3408': 'Malahide Township',
|
|
242
|
+
'3411': 'Aylmer Town',
|
|
243
|
+
'3418': 'Central Elgin Municipality',
|
|
244
|
+
'3421': 'St Thomas City',
|
|
245
|
+
'3424': 'Southwold Township',
|
|
246
|
+
'3429': 'Dutton/Dunwich Municipality',
|
|
247
|
+
'3434': 'West Elgin Municipality',
|
|
248
|
+
'3902': 'Newbury Village',
|
|
249
|
+
'3906': 'Southwest Middlesex Municipality',
|
|
250
|
+
'3916': 'Strathroy-caradoc Municipality',
|
|
251
|
+
'3926': 'Thames Centre Municipality',
|
|
252
|
+
'3936': 'London City',
|
|
253
|
+
'3939': 'Middlesex Centre Municipality',
|
|
254
|
+
'3946': 'Adelaide Metcalfe Township',
|
|
255
|
+
'3954': 'North Middlesex Municipality',
|
|
256
|
+
'3958': 'Lucan Biddulph Township',
|
|
257
|
+
|
|
258
|
+
// Huron and Perth Counties
|
|
259
|
+
'3110': 'Perth East Township',
|
|
260
|
+
'3111': 'Stratford City',
|
|
261
|
+
'3116': 'St Marys Town',
|
|
262
|
+
'3120': 'Perth South Township',
|
|
263
|
+
'3130': 'West Perth Municipality',
|
|
264
|
+
'3140': 'North Perth Municipality',
|
|
265
|
+
'4010': 'South Huron Municipality',
|
|
266
|
+
'4020': 'Bluewater Municipality',
|
|
267
|
+
'4028': 'Goderich Town',
|
|
268
|
+
'4030': 'Central Huron Municipality',
|
|
269
|
+
'4040': 'Huron East Municipality',
|
|
270
|
+
'4046': 'Howick Township',
|
|
271
|
+
'4050': 'North Huron Township',
|
|
272
|
+
'4060': 'Morris-turnberry Municipality',
|
|
273
|
+
'4070': 'Ashfield-colborne-wawanosh Township',
|
|
274
|
+
|
|
275
|
+
// Bruce and Grey Counties
|
|
276
|
+
'4102': 'South Bruce Peninsula Town',
|
|
277
|
+
'4103': 'Arran-elderslie Municipality',
|
|
278
|
+
'4104': 'Brockton Municipality',
|
|
279
|
+
'4105': 'South Bruce Municipality',
|
|
280
|
+
'4107': 'Huron-kinloss Township',
|
|
281
|
+
'4108': 'Kincardine Municipality',
|
|
282
|
+
'4109': 'Northern Bruce Peninsula Municipality',
|
|
283
|
+
'4110': 'Saugeen Shores Town',
|
|
284
|
+
'4203': 'Georgian Bluffs Township',
|
|
285
|
+
'4204': 'Chatsworth Township',
|
|
286
|
+
'4205': 'West Grey Municipality',
|
|
287
|
+
'4207': 'Southgate Township',
|
|
288
|
+
'4208': 'Grey Highlands Municipality',
|
|
289
|
+
'4210': 'Meaford Municipality',
|
|
290
|
+
'4229': 'Hanover Town',
|
|
291
|
+
'4242': 'Blue Mountains Town',
|
|
292
|
+
'4259': 'Owen Sound City',
|
|
293
|
+
|
|
294
|
+
// Municipality of Chatham-Kent, Lambton County
|
|
295
|
+
'3650': 'Chatham-kent Municipality',
|
|
296
|
+
'3805': 'St Clair Township',
|
|
297
|
+
'3806': 'Dawn-euphemia Township',
|
|
298
|
+
'3815': 'Brooke-alvinston Municipality',
|
|
299
|
+
'3816': 'Enniskillen Township',
|
|
300
|
+
'3818': 'Oil Springs Village',
|
|
301
|
+
'3819': 'Petrolia Town',
|
|
302
|
+
'3829': 'Sarnia City',
|
|
303
|
+
'3831': 'Point Edward Village',
|
|
304
|
+
'3835': 'Plympton-wyoming Town',
|
|
305
|
+
'3841': 'Warwick Township',
|
|
306
|
+
'3845': 'Lambton Shores Municipality',
|
|
307
|
+
|
|
308
|
+
// Essex County
|
|
309
|
+
'3701': 'Peele Township',
|
|
310
|
+
'3706': 'Leamington Municipality',
|
|
311
|
+
'3711': 'Kingsville Town',
|
|
312
|
+
'3729': 'Amherstburg Town',
|
|
313
|
+
'3734': 'Lasalle Town',
|
|
314
|
+
'3739': 'Windsor City',
|
|
315
|
+
'3744': 'Tecumseh Town',
|
|
316
|
+
'3751': 'Lakeshore Town',
|
|
317
|
+
'3754': 'Essex Town',
|
|
318
|
+
|
|
319
|
+
// Territorial Districts of Nipissing and Parry Sound
|
|
320
|
+
'4801': 'South Algonquin Township',
|
|
321
|
+
'4803': 'Province Of Ontario',
|
|
322
|
+
'4816': 'Papineau-cameron Township',
|
|
323
|
+
'4819': 'Mattawan Township',
|
|
324
|
+
'4821': 'Mattawa Town',
|
|
325
|
+
'4822': 'Calvin Municipality',
|
|
326
|
+
'4826': 'Bonfield Township',
|
|
327
|
+
'4831': 'Chisholm Township',
|
|
328
|
+
'4834': 'East Ferris Municipality',
|
|
329
|
+
'4844': 'Corporation Of The City Of North Bay',
|
|
330
|
+
'4852': 'West Nipissing Municipality',
|
|
331
|
+
'4869': 'Temagami Municipality',
|
|
332
|
+
'4898': 'Province Of Ontario',
|
|
333
|
+
'4899': 'Province Of Ontario',
|
|
334
|
+
'4903': 'Seguin Township',
|
|
335
|
+
'4905': 'The Archipelago Township',
|
|
336
|
+
'4912': 'McMurrich/Monteith Township',
|
|
337
|
+
'4914': 'Perry Township',
|
|
338
|
+
'4918': 'Kearney Town',
|
|
339
|
+
'4919': 'Armour Township',
|
|
340
|
+
'4922': 'Burks Falls Village',
|
|
341
|
+
'4924': 'Ryerson Township',
|
|
342
|
+
'4928': 'McKellar Township',
|
|
343
|
+
'4931': 'McDougall Municipality',
|
|
344
|
+
'4932': 'Parry Sound Town',
|
|
345
|
+
'4936': 'Carling Township',
|
|
346
|
+
'4939': 'Whitestone Municipality',
|
|
347
|
+
'4944': 'Magnetawan Municipality',
|
|
348
|
+
'4948': 'Sundridge Village',
|
|
349
|
+
'4951': 'Joly Township',
|
|
350
|
+
'4954': 'Machar Township',
|
|
351
|
+
'4956': 'South River Village',
|
|
352
|
+
'4959': 'Powassan Municipality',
|
|
353
|
+
'4966': 'Callander Municipality',
|
|
354
|
+
'4971': 'Nipissing Township',
|
|
355
|
+
'4995': 'Province Of Ontario',
|
|
356
|
+
'4998': 'Province Of Ontario',
|
|
357
|
+
'4999': 'Province Of Ontario',
|
|
358
|
+
|
|
359
|
+
// Territorial Districts of Cochrane and Timiskaming
|
|
360
|
+
'5401': 'Coleman Township',
|
|
361
|
+
'5406': 'Latchford Town',
|
|
362
|
+
'5408': 'Cobalt Town',
|
|
363
|
+
'5414': 'Harris Township',
|
|
364
|
+
'5418': 'Temiskaming Shores City',
|
|
365
|
+
'5421': 'Hudson Township',
|
|
366
|
+
'5424': 'Kerns Township',
|
|
367
|
+
'5426': 'Harley Township',
|
|
368
|
+
'5429': 'Casey Township',
|
|
369
|
+
'5432': 'Brethour Township',
|
|
370
|
+
'5434': 'Hilliard Township',
|
|
371
|
+
'5436': 'Armstrong Township',
|
|
372
|
+
'5438': 'Thornloe Village',
|
|
373
|
+
'5442': 'James Township',
|
|
374
|
+
'5446': 'Charlton And Dack Municipality',
|
|
375
|
+
'5449': 'Evanturel Township',
|
|
376
|
+
'5452': 'Englehart Town',
|
|
377
|
+
'5454': 'Chamberlain Township',
|
|
378
|
+
'5456': 'Matachewan Township',
|
|
379
|
+
'5458': 'McGarry Township',
|
|
380
|
+
'5462': 'Larder Lake Township',
|
|
381
|
+
'5466': 'Gauthier Township',
|
|
382
|
+
'5468': 'Kirkland Lake Town',
|
|
383
|
+
'5480': 'Province Of Ontario',
|
|
384
|
+
'5490': 'Province Of Ontario',
|
|
385
|
+
'5499': 'Province Of Ontario',
|
|
386
|
+
'5602': 'Province Of Ontario',
|
|
387
|
+
'5614': 'Black River-matheson Township',
|
|
388
|
+
'5620': 'Province Of Ontario',
|
|
389
|
+
'5627': 'Timmins City',
|
|
390
|
+
'5630': 'Province Of Ontario',
|
|
391
|
+
'5631': 'Iroquois Falls Town',
|
|
392
|
+
'5639': 'Cochrane Town',
|
|
393
|
+
'5640': 'Province Of Ontario',
|
|
394
|
+
'5648': 'Smooth Rock Falls Town',
|
|
395
|
+
'5652': 'Fauquier-strickland Township',
|
|
396
|
+
'5656': 'Moonbeam Township',
|
|
397
|
+
'5665': 'Moosonee Town',
|
|
398
|
+
'5666': 'Kapuskasing Town',
|
|
399
|
+
'5670': 'Val Rita-harty Township',
|
|
400
|
+
'5673': 'Opasatika Township',
|
|
401
|
+
'5676': 'Hearst Town',
|
|
402
|
+
'5677': 'Mattice-val Cote Township',
|
|
403
|
+
'5699': 'Province Of Ontario',
|
|
404
|
+
|
|
405
|
+
// Regional Municipality of Sudbury and the Territorial Districts of Sudbury and Manitoulin
|
|
406
|
+
'5101': 'Tehkummah Township',
|
|
407
|
+
'5102': 'Province Of Ontario',
|
|
408
|
+
'5104': 'Central Manitoulin Municipality',
|
|
409
|
+
'5111': 'Assiginack Township',
|
|
410
|
+
'5119': 'Northeastern Manitoulin & The Islands',
|
|
411
|
+
'5121': 'Billings Township',
|
|
412
|
+
'5124': 'Gordon/Barrie Island Municipality',
|
|
413
|
+
'5126': 'Gore Bay Town',
|
|
414
|
+
'5128': 'Burpee And Mills Township',
|
|
415
|
+
'5134': 'Cockburn Island Township',
|
|
416
|
+
'5136': 'Killarney Municipality',
|
|
417
|
+
'5201': 'French River Municipality',
|
|
418
|
+
'5202': 'Province Of Ontario',
|
|
419
|
+
'5204': 'St. Charles Municipality',
|
|
420
|
+
'5208': 'Markstay-warren Municipality',
|
|
421
|
+
'5218': 'Sables - Spanish Rivers Township',
|
|
422
|
+
'5226': 'Espanola Town',
|
|
423
|
+
'5228': 'Baldwin Township',
|
|
424
|
+
'5231': 'Nairn And Hyman Township',
|
|
425
|
+
'5283': 'Province Of Ontario',
|
|
426
|
+
'5289': 'Province Of Ontario',
|
|
427
|
+
'5292': 'Chapleau Township',
|
|
428
|
+
'5293': 'Province Of Ontario',
|
|
429
|
+
'5295': 'Province Of Ontario',
|
|
430
|
+
'5297': 'Province Of Ontario',
|
|
431
|
+
'5298': 'Province Of Ontario',
|
|
432
|
+
'5299': 'Province Of Ontario',
|
|
433
|
+
'5307': 'Greater Sudbury City',
|
|
434
|
+
|
|
435
|
+
// Territorial District of Algoma
|
|
436
|
+
'5701': 'Jocelyn Township',
|
|
437
|
+
'5704': 'Hilton Township',
|
|
438
|
+
'5706': 'Hilton Beach Village',
|
|
439
|
+
'5708': 'St Joseph Township',
|
|
440
|
+
'5711': 'Laird Township',
|
|
441
|
+
'5714': 'Tarbutt Tarbutt Addl Township',
|
|
442
|
+
'5716': 'Johnson Township',
|
|
443
|
+
'5719': 'Plummer Additional Township',
|
|
444
|
+
'5721': 'Bruce Mines Town',
|
|
445
|
+
'5724': 'Huron Shores Municipality',
|
|
446
|
+
'5727': 'Province Of Ontario',
|
|
447
|
+
'5728': 'Thessalon Town',
|
|
448
|
+
'5738': 'Blind River Town',
|
|
449
|
+
'5739': 'Spanish Town',
|
|
450
|
+
'5740': 'North Shore Township',
|
|
451
|
+
'5741': 'Elliot Lake City',
|
|
452
|
+
'5751': 'MacDonald Meredith Et Al Township',
|
|
453
|
+
'5761': 'Sault Ste Marie City',
|
|
454
|
+
'5766': 'Prince Township',
|
|
455
|
+
'5776': 'Wawa Municipality',
|
|
456
|
+
'5779': 'Dubreuilville Township',
|
|
457
|
+
'5791': 'White River Township',
|
|
458
|
+
'5796': 'Hornepayne Township',
|
|
459
|
+
'5799': 'Province Of Ontario',
|
|
460
|
+
|
|
461
|
+
// Territorials District of Kenora, Rainy River and Thunder Bay
|
|
462
|
+
'5801': 'Neebing Municipality',
|
|
463
|
+
'5803': 'Province Of Ontario',
|
|
464
|
+
'5804': 'Thunder Bay City',
|
|
465
|
+
'5805': 'Province Of Ontario',
|
|
466
|
+
'5808': 'Oliver Paipoonge Municipality',
|
|
467
|
+
'5810': 'Province Of Ontario',
|
|
468
|
+
'5811': 'Province Of Ontario',
|
|
469
|
+
'5812': 'Gillies Township',
|
|
470
|
+
'5815': 'Province Of Ontario',
|
|
471
|
+
'5816': "O'connor Township",
|
|
472
|
+
'5819': 'Conmee Township',
|
|
473
|
+
'5828': 'Shuniah Municipality',
|
|
474
|
+
'5834': 'Dorion Township',
|
|
475
|
+
'5841': 'Red Rock Township',
|
|
476
|
+
'5844': 'Nipigon Township',
|
|
477
|
+
'5851': 'Schreiber Township',
|
|
478
|
+
'5854': 'Terrace Bay Township',
|
|
479
|
+
'5859': 'Marathon Town',
|
|
480
|
+
'5866': 'Manitouwadge Township',
|
|
481
|
+
'5876': 'Greenstone Municipality',
|
|
482
|
+
'5883': 'Province Of Ontario',
|
|
483
|
+
'5884': 'Province Of Ontario',
|
|
484
|
+
'5885': 'Province Of Ontario',
|
|
485
|
+
'5895': 'Province Of Ontario',
|
|
486
|
+
'5897': 'Province Of Ontario',
|
|
487
|
+
'5898': 'Province Of Ontario',
|
|
488
|
+
'5899': 'Province Of Ontario',
|
|
489
|
+
'5901': 'Atikokan Town',
|
|
490
|
+
'5902': 'Province Of Ontario',
|
|
491
|
+
'5903': 'Province Of Ontario',
|
|
492
|
+
'5911': 'Alberton Township',
|
|
493
|
+
'5912': 'Fort Frances Town',
|
|
494
|
+
'5916': 'La Vallee Township',
|
|
495
|
+
'5919': 'Emo Township',
|
|
496
|
+
'5924': 'Chapple Township',
|
|
497
|
+
'5931': 'Morley Township',
|
|
498
|
+
'5934': 'Dawson Township',
|
|
499
|
+
'5942': 'Rainy River Town',
|
|
500
|
+
'5946': 'Lake Of The Woods Township',
|
|
501
|
+
'5973': 'Province Of Ontario',
|
|
502
|
+
'5974': 'Province Of Ontario',
|
|
503
|
+
'5998': 'Province Of Ontario',
|
|
504
|
+
'5999': 'Province Of Ontario',
|
|
505
|
+
'6001': 'Ignace Township',
|
|
506
|
+
'6007': 'Province Of Ontario',
|
|
507
|
+
'6008': 'Sioux Narrows-nestor Falls Twp',
|
|
508
|
+
'6016': 'Kenora City',
|
|
509
|
+
'6021': 'Machin Municipality',
|
|
510
|
+
'6026': 'Dryden City',
|
|
511
|
+
'6034': 'Sioux Lookout Municipality',
|
|
512
|
+
'6041': 'Red Lake Municipality',
|
|
513
|
+
'6042': 'Ear Falls Township',
|
|
514
|
+
'6049': 'Pickle Lake Township',
|
|
515
|
+
'6060': 'Province Of Ontario',
|
|
516
|
+
'6088': 'Province Of Ontario',
|
|
517
|
+
'6089': 'Province Of Ontario',
|
|
518
|
+
'6091': 'Province Of Ontario',
|
|
519
|
+
'6093': 'Province Of Ontario',
|
|
520
|
+
'6095': 'Province Of Ontario',
|
|
521
|
+
'6096': 'Province Of Ontario',
|
|
522
|
+
'6097': 'Province Of Ontario',
|
|
523
|
+
'6098': 'Province Of Ontario',
|
|
524
|
+
'6099': 'Province Of Ontario'
|
|
525
|
+
})
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare function validateRollNumber(rollNumber: string): boolean;
|
|
2
|
+
export interface ParsedRollNumber {
|
|
3
|
+
county?: string;
|
|
4
|
+
municipality?: string;
|
|
5
|
+
mapArea: string;
|
|
6
|
+
mapDivision: string;
|
|
7
|
+
mapSubdivision: string;
|
|
8
|
+
parcel: string;
|
|
9
|
+
parcelSub: string;
|
|
10
|
+
primarySubordinate: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function parseRollNumber(rollNumber: string): ParsedRollNumber;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { rollNumberMunicipalities } from './lookups.js';
|
|
2
|
+
export function validateRollNumber(rollNumber) {
|
|
3
|
+
return (/^\d{15}$/.test(rollNumber) ||
|
|
4
|
+
(/^\d{19}$/.test(rollNumber) &&
|
|
5
|
+
Object.keys(rollNumberMunicipalities).includes(rollNumber.slice(0, 4))));
|
|
6
|
+
}
|
|
7
|
+
export function parseRollNumber(rollNumber) {
|
|
8
|
+
if (!validateRollNumber(rollNumber)) {
|
|
9
|
+
throw new Error(`Invalid roll number: ${rollNumber}`);
|
|
10
|
+
}
|
|
11
|
+
const is19Digit = rollNumber.length === 19;
|
|
12
|
+
const countyMunicipalityDigits = is19Digit ? rollNumber.slice(0, 4) : '';
|
|
13
|
+
const shortRollNumber = is19Digit ? rollNumber.slice(4) : rollNumber;
|
|
14
|
+
return {
|
|
15
|
+
county: is19Digit ? countyMunicipalityDigits.slice(0, 2) : undefined,
|
|
16
|
+
municipality: is19Digit ? countyMunicipalityDigits.slice(2, 4) : undefined,
|
|
17
|
+
mapArea: shortRollNumber.slice(0, 2),
|
|
18
|
+
mapDivision: shortRollNumber.slice(2, 3),
|
|
19
|
+
mapSubdivision: shortRollNumber.slice(3, 6),
|
|
20
|
+
parcel: shortRollNumber.slice(6, 9),
|
|
21
|
+
parcelSub: shortRollNumber.slice(9, 11),
|
|
22
|
+
primarySubordinate: shortRollNumber.slice(11, 15)
|
|
23
|
+
};
|
|
24
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// eslint-disable-next-line @eslint-community/eslint-comments/disable-enable-pair
|
|
2
|
+
/* eslint-disable @typescript-eslint/no-magic-numbers */
|
|
3
|
+
|
|
4
|
+
import { rollNumberMunicipalities } from './lookups.js'
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Validates a roll number.
|
|
8
|
+
* @param rollNumber - The roll number to validate
|
|
9
|
+
* @returns True if the roll number is valid, false otherwise
|
|
10
|
+
*/
|
|
11
|
+
export function validateRollNumber(rollNumber: string): boolean {
|
|
12
|
+
return (
|
|
13
|
+
/^\d{15}$/.test(rollNumber) ||
|
|
14
|
+
(/^\d{19}$/.test(rollNumber) &&
|
|
15
|
+
Object.keys(rollNumberMunicipalities).includes(rollNumber.slice(0, 4)))
|
|
16
|
+
)
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface ParsedRollNumber {
|
|
20
|
+
county?: string
|
|
21
|
+
municipality?: string
|
|
22
|
+
mapArea: string
|
|
23
|
+
mapDivision: string
|
|
24
|
+
mapSubdivision: string
|
|
25
|
+
parcel: string
|
|
26
|
+
parcelSub: string
|
|
27
|
+
primarySubordinate: string
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Parses a roll number into its component parts.
|
|
32
|
+
* @param rollNumber - The roll number to parse
|
|
33
|
+
* @returns An object containing the parsed roll number components
|
|
34
|
+
*/
|
|
35
|
+
export function parseRollNumber(rollNumber: string): ParsedRollNumber {
|
|
36
|
+
if (!validateRollNumber(rollNumber)) {
|
|
37
|
+
throw new Error(`Invalid roll number: ${rollNumber}`)
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const is19Digit = rollNumber.length === 19
|
|
41
|
+
|
|
42
|
+
const countyMunicipalityDigits = is19Digit ? rollNumber.slice(0, 4) : ''
|
|
43
|
+
const shortRollNumber = is19Digit ? rollNumber.slice(4) : rollNumber
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
county: is19Digit ? countyMunicipalityDigits.slice(0, 2) : undefined,
|
|
47
|
+
municipality: is19Digit ? countyMunicipalityDigits.slice(2, 4) : undefined,
|
|
48
|
+
|
|
49
|
+
mapArea: shortRollNumber.slice(0, 2),
|
|
50
|
+
mapDivision: shortRollNumber.slice(2, 3),
|
|
51
|
+
mapSubdivision: shortRollNumber.slice(3, 6),
|
|
52
|
+
|
|
53
|
+
parcel: shortRollNumber.slice(6, 9),
|
|
54
|
+
parcelSub: shortRollNumber.slice(9, 11),
|
|
55
|
+
primarySubordinate: shortRollNumber.slice(11, 15)
|
|
56
|
+
}
|
|
57
|
+
}
|