-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbundle.js
More file actions
3834 lines (3826 loc) · 145 KB
/
Copy pathbundle.js
File metadata and controls
3834 lines (3826 loc) · 145 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
"use strict";
(() => {
// lib/catalogExtended.ts
var VERIFIED_ON = "2026-07-27";
var MAINTAINER = "Civic Source Lead \u2014 COMPTON ONE catalog working group";
var NEXT_REVIEW = "2026-08-26";
var CITY_MAIN = "(310) 605-5500";
var MUNI_UTILITIES = "(310) 605-5524";
var SHERIFF_NON_EMERGENCY = "(310) 605-6500";
var src = (label, path) => ({
label: `City of Compton \u2014 ${label}`,
url: `https://www.comptoncity.org${path}`,
lastVerifiedAt: VERIFIED_ON
});
var SRC_REPORT_INDEX = src("I Want To\u2026 \u203A Report", "/i-want-to/report");
var SRC_STREET_MAINT = src("Public Works Street Maintenance", "/departments/public-works-street-maintenance");
var SRC_DIRECTORY = src("City Hall Directory", "/our-city/contact-us/city-hall-directory");
var SRC_SERVICES = src("Services index", "/services");
var BASE_PROHIBITED = {
en: [
"Names, license plates, or accusations about a specific person",
"Your full home address in any public description \u2014 the block is enough",
"Photographs of children or of people\u2019s faces",
"Immigration status, medical details, or financial account numbers"
],
es: [
"Nombres, placas de veh\xEDculos o acusaciones contra una persona espec\xEDfica",
"Su direcci\xF3n completa en una descripci\xF3n p\xFAblica \u2014 la cuadra es suficiente",
"Fotos de menores o de las caras de las personas",
"Estatus migratorio, datos m\xE9dicos o n\xFAmeros de cuenta bancaria"
]
};
var EMERGENCY_COMMON = [
"anything actively on fire or smoking",
"a downed or sparking power line",
"a gas smell",
"someone injured or in immediate danger"
];
function route(spec) {
var _a, _b, _c, _d;
return {
serviceId: spec.id,
title: { en: spec.titleEn, es: spec.titleEs },
category: spec.id,
domain: spec.domain,
responsibleEntity: spec.owner,
noDedicatedCityForm: spec.noForm,
jurisdiction: spec.jurisdiction,
intakeMethods: spec.methods.map((m) => {
var _a2;
return {
type: m.type,
label: { en: m.labelEn, es: m.labelEs },
destination: m.destination,
reaches: m.reaches,
...m.whenEn ? { appliesWhen: { en: m.whenEn, es: (_a2 = m.whenEs) != null ? _a2 : m.whenEn } } : {},
verificationState: m.state,
lastVerifiedAt: VERIFIED_ON
};
}),
triggerExamples: { en: spec.triggersEn, es: spec.triggersEs },
evidenceRequirements: { en: spec.evidenceEn, es: spec.evidenceEs },
prohibitedData: {
en: [...(_a = spec.extraProhibitedEn) != null ? _a : [], ...BASE_PROHIBITED.en],
es: [...(_b = spec.extraProhibitedEs) != null ? _b : [], ...BASE_PROHIBITED.es]
},
emergencyExclusions: [...(_c = spec.emergency) != null ? _c : [], ...EMERGENCY_COMMON],
expectedConfirmation: spec.confirmEn ? { en: spec.confirmEn, es: (_d = spec.confirmEs) != null ? _d : spec.confirmEn } : null,
followUpPolicy: {
residentCheckpoint: { en: spec.checkpointEn, es: spec.checkpointEs },
// Stays false everywhere: no published City of Compton response time was
// found for any of these services. A test enforces this.
officialSlaConfirmed: false
},
sourceReferences: spec.sources,
maintainer: MAINTAINER,
nextReviewAt: NEXT_REVIEW
};
}
var phone = (destination, reaches, state = "officially_verified", labelEn = "Call", labelEs = "Llame") => ({ type: "phone", labelEn, labelEs, destination, reaches, state });
var web = (destination, reaches, labelEn = "Official online form", labelEs = "Formulario oficial en l\xEDnea", state = "officially_verified") => ({ type: "web", labelEn, labelEs, destination, reaches, state });
var EXTENDED_ROUTES = [
// ------------------------------------------------------------------ 6
route({
id: "graffiti",
titleEn: "Graffiti removal",
titleEs: "Eliminaci\xF3n de grafiti",
domain: "public_works",
owner: "Clean Compton Initiative \u2014 Public Works",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/report/graffiti", "Clean Compton Initiative"),
phone(CITY_MAIN, "City of Compton main line")
],
triggersEn: [
"somebody tagged the wall of the store",
"there is graffiti on the fence by my house",
"they spray painted the bus stop again",
"tagging all over the alley wall",
"graffiti on the light pole on my corner",
"someone wrote on my garage door from the alley",
"the wall by the school is covered in spray paint",
"markings keep coming back on that building",
"painted over it and they tagged it again",
"graffiti on the sidewalk and the curb"
],
triggersEs: [
"rayaron la pared de la tienda",
"hay grafiti en la barda junto a mi casa",
"pintaron otra vez la parada del camion",
"hay rayones por toda la pared del callejon",
"grafiti en el poste de luz de mi esquina",
"alguien pinto mi porton desde el callejon",
"la pared de la escuela esta llena de pintura",
"siempre vuelven a rayar ese edificio",
"lo pintamos y lo volvieron a rayar",
"hay grafiti en la banqueta y en el borde"
],
evidenceEn: [
"Photo of the graffiti from a safe distance",
"Nearest cross streets or the block",
"Whether the surface is public (wall, pole, sidewalk) or private property",
"Roughly when it appeared",
"Whether it has been painted over before"
],
evidenceEs: [
"Foto del grafiti desde una distancia segura",
"Calles cercanas o la cuadra",
"Si la superficie es p\xFAblica (pared, poste, banqueta) o propiedad privada",
"M\xE1s o menos cu\xE1ndo apareci\xF3",
"Si ya lo hab\xEDan pintado antes"
],
extraProhibitedEn: ["Any guess about which group or person did it \u2014 report the surface, not the suspect"],
extraProhibitedEs: ["Cualquier suposici\xF3n sobre qui\xE9n lo hizo \u2014 reporte la superficie, no al sospechoso"],
emergency: ["a threat against a specific person written on a wall \u2014 report that to the Sheriff"],
confirmEn: "A service request number for the graffiti removal",
confirmEs: "Un n\xFAmero de solicitud para la eliminaci\xF3n",
checkpointEn: "Check in 5 business days; graffiti removal is usually scheduled in batches",
checkpointEs: "Verifique en 5 d\xEDas h\xE1biles; la limpieza suele programarse por lotes",
sources: [src("Report Graffiti", "/i-want-to/report/graffiti"), SRC_REPORT_INDEX, SRC_STREET_MAINT]
}),
// ------------------------------------------------------------------ 7
route({
id: "abandoned_vehicle",
titleEn: "Abandoned or inoperable vehicle",
titleEs: "Veh\xEDculo abandonado o inservible",
domain: "parking",
owner: "City of Compton \u2014 Parking Services / Code Enforcement",
jurisdiction: "city",
noForm: true,
methods: [
phone(CITY_MAIN, "City of Compton main line \u2014 ask for Parking Services", "needs_confirmation"),
phone(
SHERIFF_NON_EMERGENCY,
"LA County Sheriff, Compton Station \u2014 non-emergency",
"officially_verified",
"Non-emergency Sheriff line",
"L\xEDnea no urgente del Sheriff"
)
],
triggersEn: [
"a car has been parked on my street with flat tires for months",
"there is an abandoned car on the block",
"that van has not moved since spring",
"a wrecked car is sitting in front of my house",
"someone dumped a car with no plates in the alley",
"the same car has been there with broken windows",
"a camper has been parked in the same spot for weeks",
"junk car taking up the whole space",
"abandoned truck blocking the driveway apron",
"a car with expired tags has not moved in months"
],
triggersEs: [
"hay un carro con llantas ponchadas en mi calle desde hace meses",
"hay un carro abandonado en la cuadra",
"esa camioneta no se ha movido desde la primavera",
"hay un carro chocado enfrente de mi casa",
"dejaron un carro sin placas en el callejon",
"el mismo carro sigue ahi con los vidrios rotos",
"una casa rodante lleva semanas estacionada en el mismo lugar",
"un carro inservible ocupa todo el lugar",
"una troca abandonada tapa la entrada",
"un carro con placas vencidas no se ha movido en meses"
],
evidenceEn: [
"How long it has been in the same spot",
"Colour, make and general condition",
"Nearest cross streets or the block",
"Whether it is blocking a driveway, hydrant or sidewalk",
"Whether the plates are expired or missing"
],
evidenceEs: [
"Cu\xE1nto tiempo lleva en el mismo lugar",
"Color, marca y condici\xF3n general",
"Calles cercanas o la cuadra",
"Si tapa una entrada, un hidrante o la banqueta",
"Si las placas est\xE1n vencidas o no tiene"
],
extraProhibitedEn: ["The owner\u2019s name, even if you know it", "A photograph that shows the licence plate clearly"],
extraProhibitedEs: ["El nombre del due\xF1o, aunque lo conozca", "Una foto donde se vea claramente la placa"],
emergency: ["a vehicle leaking fuel", "anyone living inside a vehicle who needs help \u2014 ask for the homeless outreach team"],
confirmEn: "A case or service request number, and the date the vehicle was marked",
confirmEs: "Un n\xFAmero de caso o solicitud, y la fecha en que marcaron el veh\xEDculo",
checkpointEn: "Check in 10 business days \u2014 abandoned-vehicle abatement runs on a notice period",
checkpointEs: "Verifique en 10 d\xEDas h\xE1biles \u2014 el proceso incluye un periodo de aviso",
sources: [SRC_DIRECTORY, src("Parking Services", "/services/parking-services")]
}),
// ------------------------------------------------------------------ 8
route({
id: "sidewalk",
titleEn: "Broken or lifted sidewalk",
titleEs: "Banqueta rota o levantada",
domain: "public_works",
owner: "Public Works \u2014 Street Maintenance Division",
jurisdiction: "city",
noForm: true,
methods: [phone(CITY_MAIN, "City of Compton main line \u2014 ask for Street Maintenance")],
triggersEn: [
"the sidewalk in front of my house is lifted and my mother trips",
"the concrete is cracked and uneven",
"a tree root pushed the sidewalk up",
"my wheelchair cannot get past the broken pavement",
"there is a big gap in the sidewalk by the corner",
"the walkway is broken where the driveway meets it",
"someone could trip on this sidewalk at night",
"the sidewalk is crumbling in front of the church",
"my stroller tips over on that broken section",
"the curb ramp is broken at the crosswalk"
],
triggersEs: [
"la banqueta frente a mi casa esta levantada y mi mama se tropieza",
"el cemento esta agrietado y disparejo",
"una raiz levanto la banqueta",
"mi silla de ruedas no pasa por el pavimento roto",
"hay un hueco grande en la banqueta de la esquina",
"la banqueta esta rota donde empieza la entrada",
"alguien se puede tropezar de noche en esa banqueta",
"la banqueta se esta desmoronando frente a la iglesia",
"la carriola se voltea en esa parte rota",
"la rampa de la esquina esta rota"
],
evidenceEn: [
"Photo showing the height difference \u2014 a shoe or coin for scale helps",
"Nearest address block or cross streets",
"Whether it blocks a wheelchair, walker or stroller",
"Whether a street tree root appears to be the cause",
"How long it has been like that"
],
evidenceEs: [
"Foto que muestre la diferencia de altura \u2014 un zapato o moneda ayuda a dar escala",
"Cuadra o calles cercanas",
"Si bloquea una silla de ruedas, andadera o carriola",
"Si parece que la causa es la ra\xEDz de un \xE1rbol",
"Desde cu\xE1ndo est\xE1 as\xED"
],
emergency: ["anyone already injured by the defect \u2014 get medical help first"],
confirmEn: "A service request number for the sidewalk inspection",
confirmEs: "Un n\xFAmero de solicitud para la inspecci\xF3n de la banqueta",
checkpointEn: "Check in 10 business days; sidewalk repair is usually scheduled after an inspection",
checkpointEs: "Verifique en 10 d\xEDas h\xE1biles; la reparaci\xF3n se programa despu\xE9s de una inspecci\xF3n",
sources: [SRC_STREET_MAINT, SRC_DIRECTORY]
}),
// ------------------------------------------------------------------ 9
route({
id: "street_tree",
titleEn: "Street tree problem",
titleEs: "Problema con un \xE1rbol de la calle",
domain: "public_works",
owner: "Public Works \u2014 Street Maintenance Division",
jurisdiction: "city",
noForm: true,
methods: [phone(CITY_MAIN, "City of Compton main line \u2014 ask for Street Maintenance")],
triggersEn: [
"a big branch is hanging over the driveway and looks like it will fall",
"the tree in the parkway is dead",
"branches are blocking the stop sign",
"roots from the city tree are lifting my walkway",
"the tree needs trimming, it covers the streetlight",
"a limb came down in the wind and is in the street",
"the tree in front is leaning badly",
"low branches hit the bus and the trucks",
"that dead tree drops branches every time it is windy",
"the tree is blocking the street light on my corner"
],
triggersEs: [
"una rama grande cuelga sobre la entrada y parece que se va a caer",
"el arbol de la banqueta esta seco",
"las ramas tapan el letrero de alto",
"las raices del arbol de la ciudad levantan mi banqueta",
"hay que podar el arbol, tapa la luz de la calle",
"se cayo una rama con el viento y esta en la calle",
"el arbol de enfrente esta muy inclinado",
"las ramas bajas le pegan al camion",
"ese arbol seco tira ramas cada vez que hace viento",
"el arbol tapa la luz de la calle en mi esquina"
],
evidenceEn: [
"Photo of the tree and the hazard",
"Nearest cross streets or the block",
"Whether the tree is in the parkway strip (city) or inside a private yard",
"What it is blocking: a sign, a light, the sidewalk, a driveway",
"Whether a limb has already fallen"
],
evidenceEs: [
"Foto del \xE1rbol y del peligro",
"Calles cercanas o la cuadra",
"Si el \xE1rbol est\xE1 en la franja de la banqueta (ciudad) o dentro de un patio privado",
"Qu\xE9 est\xE1 tapando: un letrero, una luz, la banqueta, una entrada",
"Si ya se cay\xF3 una rama"
],
emergency: ["a tree or limb touching a power line", "a tree already down across the roadway"],
confirmEn: "A service request number for the tree inspection or trim",
confirmEs: "Un n\xFAmero de solicitud para la inspecci\xF3n o poda",
checkpointEn: "Check in 10 business days; trimming is usually scheduled by route",
checkpointEs: "Verifique en 10 d\xEDas h\xE1biles; la poda se programa por ruta",
sources: [SRC_STREET_MAINT, SRC_DIRECTORY]
}),
// ------------------------------------------------------------------ 10
route({
id: "traffic_sign_signal",
titleEn: "Traffic signal, sign or street marking",
titleEs: "Sem\xE1foro, se\xF1al o marca vial",
domain: "public_works",
owner: "Public Works \u2014 Street Maintenance Division",
jurisdiction: "city",
noForm: true,
methods: [
phone(CITY_MAIN, "City of Compton main line \u2014 ask for Street Maintenance"),
phone(
SHERIFF_NON_EMERGENCY,
"LA County Sheriff, Compton Station \u2014 non-emergency",
"officially_verified",
"If a signal is dark and traffic is unsafe right now",
"Si un sem\xE1foro est\xE1 apagado y el tr\xE1fico es peligroso ahora"
)
],
triggersEn: [
"the stop sign at my corner got knocked down",
"the traffic light keeps flashing red",
"the crosswalk paint is completely worn off",
"the signal never changes for our direction",
"a street name sign is missing at the corner",
"the arrow light stopped working",
"the school zone sign is bent and facing the wrong way",
"the speed limit sign got hit",
"the crossing signal button does not work",
"the lane lines are gone after they repaved"
],
triggersEs: [
"tumbaron el letrero de alto de mi esquina",
"el semaforo se queda en rojo intermitente",
"ya no se ve la pintura del cruce peatonal",
"el semaforo nunca cambia para nuestro lado",
"falta el letrero con el nombre de la calle",
"la flecha del semaforo dejo de funcionar",
"el letrero de la zona escolar esta doblado",
"chocaron el letrero de limite de velocidad",
"el boton para cruzar no sirve",
"no quedaron las lineas de los carriles despues de repavimentar"
],
evidenceEn: [
"Exact intersection or the nearest two cross streets",
"What is wrong: dark, flashing, bent, missing, faded",
"Which direction of travel it affects",
"Time of day you noticed it",
"Photo if it is safe to take one from the sidewalk"
],
evidenceEs: [
"Cruce exacto o las dos calles m\xE1s cercanas",
"Qu\xE9 tiene: apagado, intermitente, doblado, falta, borrado",
"A qu\xE9 sentido de circulaci\xF3n afecta",
"A qu\xE9 hora lo not\xF3",
"Foto si puede tomarla con seguridad desde la banqueta"
],
emergency: ["a signal completely dark at a busy intersection right now", "a downed sign with exposed wiring"],
confirmEn: "A service request number for the signal or sign repair",
confirmEs: "Un n\xFAmero de solicitud para la reparaci\xF3n",
checkpointEn: "Check in 3 business days \u2014 traffic control is usually prioritised",
checkpointEs: "Verifique en 3 d\xEDas h\xE1biles \u2014 el control de tr\xE1fico suele priorizarse",
sources: [SRC_STREET_MAINT, SRC_DIRECTORY]
}),
// ------------------------------------------------------------------ 11
route({
id: "storm_drain",
titleEn: "Storm drain or street flooding",
titleEs: "Alcantarilla pluvial o inundaci\xF3n en la calle",
domain: "water",
owner: "Public Works \u2014 Street Maintenance Division",
jurisdiction: "city",
noForm: true,
methods: [phone(CITY_MAIN, "City of Compton main line \u2014 ask for Street Maintenance")],
triggersEn: [
"the storm drain is packed with leaves and trash",
"the street floods every time it rains",
"water pools at the corner and never drains",
"the catch basin is blocked",
"the gutter is full of mud and the water backs up",
"rain water comes up over the curb into the yard",
"the drain grate is broken and missing bars",
"that corner turns into a lake in winter",
"the storm drain smells and is full of garbage",
"water sits in the street for days after it rains"
],
triggersEs: [
"la alcantarilla esta llena de hojas y basura",
"la calle se inunda cada vez que llueve",
"el agua se junta en la esquina y no baja",
"la coladera pluvial esta tapada",
"la cuneta esta llena de lodo y el agua se regresa",
"el agua de lluvia se pasa al patio",
"la rejilla del drenaje esta rota y le faltan barras",
"esa esquina se hace laguna en invierno",
"la alcantarilla huele y esta llena de basura",
"el agua se queda dias en la calle despues de llover"
],
evidenceEn: [
"Photo of the drain or the standing water",
"Nearest cross streets",
"Whether it happens only when it rains or all the time",
"Whether water reaches a driveway, garage or doorway",
"How long the water usually stays"
],
evidenceEs: [
"Foto del drenaje o del agua estancada",
"Calles m\xE1s cercanas",
"Si pasa solo cuando llueve o todo el tiempo",
"Si el agua llega a una entrada, cochera o puerta",
"Cu\xE1nto tiempo suele quedarse el agua"
],
emergency: ["water entering a home right now", "a missing drain cover a child could fall into"],
confirmEn: "A service request number for the storm drain cleaning or inspection",
confirmEs: "Un n\xFAmero de solicitud para la limpieza o inspecci\xF3n",
checkpointEn: "Check in 5 business days, and before the next forecast rain",
checkpointEs: "Verifique en 5 d\xEDas h\xE1biles, y antes de la pr\xF3xima lluvia pronosticada",
sources: [SRC_STREET_MAINT, SRC_DIRECTORY]
}),
// ------------------------------------------------------------------ 12
route({
id: "bulky_item",
titleEn: "Bulky item or appliance pickup",
titleEs: "Recolecci\xF3n de art\xEDculos voluminosos",
domain: "waste",
owner: "Municipal Utilities \u2014 Waste Division",
jurisdiction: "city",
noForm: true,
methods: [
phone(MUNI_UTILITIES, "Municipal Utilities customer service \u2014 Waste Division"),
web(
"https://www.comptoncity.org/services/waste-and-recycling",
"Waste and Recycling information",
"Waste and recycling information page",
"P\xE1gina de basura y reciclaje"
)
],
triggersEn: [
"how do I get rid of an old mattress the right way",
"I need them to pick up a broken refrigerator",
"can someone haul away my old couch",
"I have a washing machine to get rid of",
"do I need an appointment for a bulky pickup",
"moving out and I have furniture the truck will not take",
"the trash truck will not take my old table",
"I want to put out a mattress legally",
"how much does it cost to have a big item picked up",
"I have an old tv and a dresser to dispose of"
],
triggersEs: [
"como me deshago de un colchon viejo correctamente",
"necesito que recojan un refrigerador descompuesto",
"pueden llevarse mi sillon viejo",
"tengo una lavadora que quiero desechar",
"necesito cita para recoleccion de articulos grandes",
"me estoy mudando y tengo muebles que el camion no lleva",
"el camion de basura no se lleva mi mesa vieja",
"quiero sacar un colchon de forma legal",
"cuanto cuesta que recojan un articulo grande",
"tengo una tele vieja y un tocador que desechar"
],
evidenceEn: [
"What the items are and roughly how many",
"Your service address and regular collection day",
"Whether the items contain refrigerant (fridge, freezer, AC unit)",
"Where you can place them \u2014 kerb, alley, or behind a gate",
"Whether you need help moving them out"
],
evidenceEs: [
"Qu\xE9 art\xEDculos son y aproximadamente cu\xE1ntos",
"Su direcci\xF3n de servicio y d\xEDa normal de recolecci\xF3n",
"Si los art\xEDculos tienen refrigerante (refrigerador, congelador, aire acondicionado)",
"D\xF3nde puede colocarlos \u2014 banqueta, callej\xF3n o detr\xE1s de un port\xF3n",
"Si necesita ayuda para sacarlos"
],
extraProhibitedEn: ["Do not put the items out before you have an appointment \u2014 that can become an illegal dumping citation"],
extraProhibitedEs: ["No saque los art\xEDculos antes de tener cita \u2014 eso puede convertirse en una multa por tiradero ilegal"],
confirmEn: "The appointment date and a confirmation number",
confirmEs: "La fecha de la cita y un n\xFAmero de confirmaci\xF3n",
checkpointEn: "Check the day before your appointment, and the day after if it was missed",
checkpointEs: "Verifique el d\xEDa antes de su cita, y el d\xEDa despu\xE9s si no pasaron",
sources: [
src("Waste and Recycling", "/services/waste-and-recycling"),
src("Municipal Utilities \u2014 Waste Division", "/departments/municipal-utilities/waste-division")
]
}),
// ------------------------------------------------------------------ 13
route({
id: "recycling_ewaste",
titleEn: "Recycling, e-waste and hazardous items",
titleEs: "Reciclaje, e-waste y materiales peligrosos",
domain: "waste",
owner: "Municipal Utilities \u2014 Waste Division",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/learn-about/recycling-and-e-waste", "Recycling and e-waste guidance"),
phone(MUNI_UTILITIES, "Municipal Utilities customer service \u2014 Waste Division")
],
triggersEn: [
"where do I take an old computer",
"how do I get rid of paint the right way",
"what do I do with old batteries",
"can I recycle a broken tv",
"where does e-waste go around here",
"I have motor oil I need to dispose of",
"what goes in the blue bin",
"my recycling cart is cracked and I need a new one",
"how do I recycle cardboard from my business",
"where can I take old tires"
],
triggersEs: [
"donde llevo una computadora vieja",
"como me deshago de pintura correctamente",
"que hago con las pilas viejas",
"puedo reciclar una tele rota",
"donde se lleva el e-waste por aqui",
"tengo aceite de motor que necesito desechar",
"que va en el bote azul",
"mi bote de reciclaje esta roto y necesito otro",
"como reciclo carton de mi negocio",
"donde puedo llevar llantas viejas"
],
evidenceEn: [
"What the item is and roughly how much of it",
"Whether it is household or business waste",
"Your service address",
"Whether you can transport it yourself"
],
evidenceEs: [
"Qu\xE9 es el art\xEDculo y aproximadamente cu\xE1nto",
"Si es residuo dom\xE9stico o de negocio",
"Su direcci\xF3n de servicio",
"Si puede transportarlo usted mismo"
],
extraProhibitedEn: ["Never put paint, oil, batteries or electronics in the regular bin, and never in the alley"],
extraProhibitedEs: ["Nunca ponga pintura, aceite, pilas o electr\xF3nicos en el bote normal, ni en el callej\xF3n"],
emergency: ["a leaking or unlabelled chemical container"],
confirmEn: "The drop-off location, hours, and any confirmation number you are given",
confirmEs: "El lugar de entrega, el horario y cualquier n\xFAmero de confirmaci\xF3n que le den",
checkpointEn: "Check before you travel \u2014 drop-off events and hours change",
checkpointEs: "Verifique antes de ir \u2014 los horarios y eventos cambian",
sources: [src("Recycling and E-Waste", "/i-want-to/learn-about/recycling-and-e-waste"), SRC_SERVICES]
}),
// ------------------------------------------------------------------ 14
route({
id: "animal_control",
titleEn: "Animal control",
titleEs: "Control de animales",
domain: "animals",
owner: "City of Compton \u2014 Animal Control",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/report/animal-control", "City of Compton animal control reporting"),
web(
"https://www.comptoncity.org/services/animal-services",
"Animal services information",
"Animal services information page",
"P\xE1gina de servicios para animales"
),
phone(CITY_MAIN, "City of Compton main line")
],
triggersEn: [
"there is a stray dog living under my porch",
"a pack of loose dogs is on the block again",
"someone left a dog tied up with no water",
"there is a dead animal in the street",
"a dog keeps getting out and chasing kids",
"i found a litter of kittens in the alley",
"the neighbor has way too many animals",
"a coyote has been coming through the yard at night",
"a dog bit someone on our street",
"there is an injured cat in the parking lot"
],
triggersEs: [
"hay un perro callejero viviendo debajo del porche",
"hay varios perros sueltos otra vez en la cuadra",
"dejaron un perro amarrado sin agua",
"hay un animal muerto en la calle",
"un perro se sale y persigue a los ninos",
"encontre unos gatitos en el callejon",
"el vecino tiene demasiados animales",
"un coyote pasa por el patio en la noche",
"un perro mordio a alguien en nuestra calle",
"hay un gato herido en el estacionamiento"
],
evidenceEn: [
"Where the animal is, and whether it is contained",
"Description: size, colour, collar or tags",
"Whether anyone has been bitten or scratched",
"How long it has been there",
"Whether the animal appears injured or sick"
],
evidenceEs: [
"D\xF3nde est\xE1 el animal y si est\xE1 encerrado",
"Descripci\xF3n: tama\xF1o, color, collar o placas",
"Si alguien fue mordido o rasgu\xF1ado",
"Cu\xE1nto tiempo lleva ah\xED",
"Si el animal parece herido o enfermo"
],
extraProhibitedEn: ["Do not approach, corner or try to catch a loose or injured animal yourself"],
extraProhibitedEs: ["No se acerque, no acorrale ni intente atrapar usted mismo a un animal suelto o herido"],
emergency: ["an animal actively attacking a person", "a bite that broke the skin \u2014 get medical care and call the Sheriff"],
confirmEn: "A service request number, and the date an officer is expected",
confirmEs: "Un n\xFAmero de solicitud y la fecha en que se espera un oficial",
checkpointEn: "Check in 2 business days; call again the same day if the animal is aggressive",
checkpointEs: "Verifique en 2 d\xEDas h\xE1biles; vuelva a llamar el mismo d\xEDa si el animal es agresivo",
sources: [
src("Report Animal Control", "/i-want-to/report/animal-control"),
src("Animal Services", "/services/animal-services"),
SRC_REPORT_INDEX
]
}),
// ------------------------------------------------------------------ 15
route({
id: "code_violation",
titleEn: "Property or code violation",
titleEs: "Violaci\xF3n de c\xF3digo o de propiedad",
domain: "code_enforcement",
owner: "Building and Safety \u2014 Code Enforcement",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/report/code-violations", "Code Enforcement"),
phone(CITY_MAIN, "City of Compton main line \u2014 ask for Code Enforcement")
],
triggersEn: [
"the empty lot next door is overgrown and full of junk",
"people are living in a shed in the backyard",
"that building has been vacant and open for months",
"someone is running a business out of a house all night",
"the house next door has trash piled up in the yard",
"they built an addition with no permit",
"a property is attracting rats because of the mess",
"there is an unpermitted unit in the garage",
"the fence has been down for a year and dogs get out",
"that vacant house has people going in and out"
],
triggersEs: [
"el lote de al lado esta lleno de maleza y cochinero",
"hay gente viviendo en un cuartito del patio",
"ese edificio lleva meses vacio y abierto",
"alguien tiene un negocio en una casa toda la noche",
"la casa de al lado tiene basura amontonada en el patio",
"construyeron un cuarto sin permiso",
"una propiedad esta atrayendo ratas por el tiradero",
"hay un departamento sin permiso en la cochera",
"la barda lleva un ano caida y los perros se salen",
"esa casa vacia tiene gente entrando y saliendo"
],
evidenceEn: [
"The address or the block and which side of the street",
"What the condition is, in plain description",
"How long it has been like that",
"Photos taken from the public sidewalk only",
"Whether you have reported it before"
],
evidenceEs: [
"La direcci\xF3n o la cuadra y de qu\xE9 lado de la calle",
"Cu\xE1l es la condici\xF3n, descrita de forma sencilla",
"Desde cu\xE1ndo est\xE1 as\xED",
"Fotos tomadas solo desde la banqueta p\xFAblica",
"Si ya lo hab\xEDa reportado antes"
],
extraProhibitedEn: [
"Never enter, photograph inside, or approach a private property to document it",
"Do not name the residents or make claims about who lives there"
],
extraProhibitedEs: [
"Nunca entre, fotograf\xEDe adentro ni se acerque a una propiedad privada para documentarla",
"No mencione a los residentes ni afirme qui\xE9n vive ah\xED"
],
emergency: ["a structure that looks like it could collapse", "anyone trapped or in danger inside a vacant building"],
confirmEn: "A code enforcement case number and the assigned inspector\u2019s district",
confirmEs: "Un n\xFAmero de caso de c\xF3digo y el distrito del inspector asignado",
checkpointEn: "Check in 10 business days \u2014 code cases run on notice and compliance periods",
checkpointEs: "Verifique en 10 d\xEDas h\xE1biles \u2014 los casos de c\xF3digo tienen periodos de aviso y cumplimiento",
sources: [
src("Report a Violation", "/i-want-to/report/code-violations"),
src("Code Enforcement", "/departments/building-and-safety/code-enforcement")
]
}),
// ------------------------------------------------------------------ 16
route({
id: "housing_help",
titleEn: "Housing help and rent assistance",
titleEs: "Ayuda de vivienda y renta",
domain: "housing",
owner: "Compton Housing Authority",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/departments/housing-authority", "Compton Housing Authority"),
phone(CITY_MAIN, "City of Compton main line \u2014 ask for the Housing Authority")
],
triggersEn: [
"I want to apply for help paying for a new roof",
"how do I get on the section 8 list",
"my landlord will not fix the heater",
"I am behind on rent and about to be evicted",
"is there any rent assistance for seniors",
"my apartment has mold and the manager ignores me",
"I need help with a housing voucher",
"the landlord raised the rent way too much",
"my building has no hot water for weeks",
"where do I go for help staying in my home"
],
triggersEs: [
"quiero solicitar ayuda para pagar un techo nuevo",
"como me apunto en la lista de la seccion 8",
"el casero no arregla el calenton",
"estoy atrasado con la renta y me quieren desalojar",
"hay ayuda de renta para personas mayores",
"mi departamento tiene moho y el manager no hace nada",
"necesito ayuda con un vale de vivienda",
"el casero subio muchisimo la renta",
"mi edificio lleva semanas sin agua caliente",
"a donde voy para que me ayuden a quedarme en mi casa"
],
evidenceEn: [
"Whether you rent or own",
"How many people live in the household",
"What has already been reported to the landlord, and when",
"Any written notice you have received",
"Whether anyone in the home is a senior, disabled, or a child"
],
evidenceEs: [
"Si renta o es due\xF1o",
"Cu\xE1ntas personas viven en el hogar",
"Qu\xE9 ya le report\xF3 al casero y cu\xE1ndo",
"Cualquier aviso escrito que haya recibido",
"Si en el hogar hay personas mayores, con discapacidad o menores"
],
extraProhibitedEn: [
"This app cannot give legal advice, and it is not a legal-aid service",
"Do not send immigration documents or a social security number to anyone who asks over the phone"
],
extraProhibitedEs: [
"Esta aplicaci\xF3n no da asesor\xEDa legal ni es un servicio de ayuda legal",
"No env\xEDe documentos migratorios ni su n\xFAmero de seguro social a quien se lo pida por tel\xE9fono"
],
emergency: ["a lockout, a shut-off utility, or an eviction happening today \u2014 seek legal aid immediately"],
confirmEn: "The name of the programme, your application or case number, and the next deadline",
confirmEs: "El nombre del programa, su n\xFAmero de solicitud o caso, y la pr\xF3xima fecha l\xEDmite",
checkpointEn: "Check in 5 business days, and note any deadline they give you",
checkpointEs: "Verifique en 5 d\xEDas h\xE1biles y anote cualquier fecha l\xEDmite que le den",
sources: [
src("Housing Authority", "/departments/housing-authority"),
src("Housing Authority \u2014 Programs", "/departments/housing-authority/programs")
]
}),
// ------------------------------------------------------------------ 17
route({
id: "parking_citation",
titleEn: "Parking ticket \u2014 pay or appeal",
titleEs: "Multa de estacionamiento \u2014 pagar o apelar",
domain: "parking",
owner: "City of Compton \u2014 Parking Services",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/pay/parking-citations", "Parking citation payment"),
web(
"https://www.comptoncity.org/i-want-to/learn-about/appeal-a-parking-ticket",
"Parking ticket appeal information",
"How to appeal a citation",
"C\xF3mo apelar una multa"
),
phone(CITY_MAIN, "City of Compton main line \u2014 ask for Parking Services")
],
triggersEn: [
"I got a parking ticket and I do not understand what it says",
"how do I fight a parking citation",
"where do I pay a parking ticket",
"I got a ticket on street sweeping day but the signs are missing",
"my ticket says a code I cannot find",
"can I get an extension on a parking fine",
"I was ticketed in front of my own house",
"the citation has the wrong plate on it",
"how long do I have to appeal a ticket",
"the fine doubled and I never got the first notice"
],
triggersEs: [
"me llego una multa de estacionamiento y no entiendo que dice",
"como peleo una multa de estacionamiento",
"donde pago una multa de estacionamiento",
"me multaron el dia de barrido pero no hay letreros",
"mi multa tiene un codigo que no encuentro",
"puedo pedir una prorroga para una multa",
"me multaron enfrente de mi propia casa",
"la multa tiene la placa equivocada",
"cuanto tiempo tengo para apelar una multa",
"la multa se duplico y nunca recibi el primer aviso"
],
evidenceEn: [
"The citation number and the date issued",
"The exact location written on the citation",
"Photos of the signs, kerb markings, or lack of them, taken the same week",
"Anything showing the vehicle was permitted to be there",
"The appeal deadline printed on the citation"
],
evidenceEs: [
"El n\xFAmero de la multa y la fecha",
"La ubicaci\xF3n exacta escrita en la multa",
"Fotos de los letreros o marcas de la banqueta, o de que no hay, tomadas la misma semana",
"Cualquier prueba de que el veh\xEDculo pod\xEDa estar ah\xED",
"La fecha l\xEDmite de apelaci\xF3n impresa en la multa"
],
extraProhibitedEn: ["Never send a payment to a phone number or link that contacted you first \u2014 check the citation"],
extraProhibitedEs: ["Nunca pague a un n\xFAmero o enlace que lo contact\xF3 primero \u2014 revise la multa"],
confirmEn: "A payment receipt or an appeal reference number, and the decision deadline",
confirmEs: "Un recibo de pago o n\xFAmero de apelaci\xF3n, y la fecha de la decisi\xF3n",
checkpointEn: "Check before the deadline printed on your citation \u2014 appeal windows are short",
checkpointEs: "Verifique antes de la fecha en su multa \u2014 los plazos de apelaci\xF3n son cortos",
sources: [
src("Pay Parking Citations", "/i-want-to/pay/parking-citations"),
src("Appeal a Parking Ticket", "/i-want-to/learn-about/appeal-a-parking-ticket"),
src("Parking Ordinance", "/i-want-to/learn-about/parking-ordinance")
]
}),
// ------------------------------------------------------------------ 18
route({
id: "utility_billing",
titleEn: "Water bill or utility account",
titleEs: "Recibo de agua o cuenta de servicios",
domain: "utilities_billing",
owner: "Municipal Utilities \u2014 Customer Service",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/pay/utility-bills", "Utility bill payment"),
phone(MUNI_UTILITIES, "Municipal Utilities customer service"),
web(
"https://www.comptoncity.org/i-want-to/get/utility-services",
"Start or stop utility service",
"Start, stop or transfer service",
"Iniciar, terminar o transferir servicio"
)
],
triggersEn: [
"my water bill tripled and I do not know why",
"how do I set up water service at a new place",
"I need a payment plan for my utility bill",
"they are threatening to shut off my water",
"I never got my bill this month",
"how do I transfer service when I move",
"my bill shows usage from when the house was empty",
"is there a discount for seniors on the water bill",
"I paid but the account still shows a balance",
"how do I dispute a charge on my utility account"
],
triggersEs: [
"mi recibo de agua se triplico y no se por que",
"como doy de alta el servicio de agua en un lugar nuevo",
"necesito un plan de pagos para mi recibo",
"me estan amenazando con cortarme el agua",
"no me llego el recibo este mes",
"como transfiero el servicio cuando me mude",
"mi recibo muestra consumo de cuando la casa estaba vacia",
"hay descuento para personas mayores en el agua",
"ya pague pero la cuenta sigue con saldo",
"como disputo un cargo en mi cuenta de servicios"
],
evidenceEn: [
"Your account number from a recent bill",
"The service address",
"The amount and the billing period in question",
"Any payment confirmation you already have",
"Whether a shut-off notice has been issued and its date"
],
evidenceEs: [
"Su n\xFAmero de cuenta de un recibo reciente",
"La direcci\xF3n del servicio",
"El monto y el periodo de facturaci\xF3n en cuesti\xF3n",
"Cualquier comprobante de pago que ya tenga",
"Si ya le dieron aviso de corte y de qu\xE9 fecha"
],
extraProhibitedEn: [
"Never give a card number to someone who called you \u2014 call the number on your own bill",
"Do not share your full account number in a public post or message"
],
extraProhibitedEs: [
"Nunca d\xE9 un n\xFAmero de tarjeta a quien lo llam\xF3 \u2014 marque el n\xFAmero de su propio recibo",
"No comparta su n\xFAmero de cuenta completo en publicaciones o mensajes p\xFAblicos"
],
emergency: ["a shut-off scheduled within 24 hours in a home with a medical device or an infant"],
confirmEn: "A confirmation number, the name of the representative, and any arrangement date agreed",
confirmEs: "Un n\xFAmero de confirmaci\xF3n, el nombre del representante y cualquier fecha acordada",
checkpointEn: "Check in 3 business days, and before any shut-off date you were given",
checkpointEs: "Verifique en 3 d\xEDas h\xE1biles y antes de cualquier fecha de corte que le dieron",
sources: [
src("Pay Utility Bills", "/i-want-to/pay/utility-bills"),
src("Get Utility Services", "/i-want-to/get/utility-services"),
src("Municipal Utilities", "/departments/municipal-utilities")
]
}),
// ------------------------------------------------------------------ 19
route({
id: "business_permit",
titleEn: "Business licence or building permit",
titleEs: "Licencia de negocio o permiso de construcci\xF3n",
domain: "permits",
owner: "City of Compton \u2014 Business Licence / Building and Safety",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/apply-for/business-licenses", "Business licence applications"),
web(
"https://www.comptoncity.org/i-want-to/apply-for/building-permits",
"Building permit applications",
"Building permits",
"Permisos de construcci\xF3n"
),
phone(CITY_MAIN, "City of Compton main line")
],
triggersEn: [
"I need a permit to put a taco stand outside my shop",
"how do I get a business license in compton",
"do I need a permit to add a room",
"what does it cost to renew my business license",
"I want to open a small shop, where do I start",
"do I need a permit for a food truck",
"my contractor says I need a building permit",
"how do I get a film permit for my block",
"what permits do I need for a home business",
"I want to build an ADU in the back"
],
triggersEs: [
"necesito un permiso para poner un puesto de tacos afuera de mi negocio",
"como saco una licencia de negocio en compton",
"necesito permiso para agregar un cuarto",
"cuanto cuesta renovar mi licencia de negocio",
"quiero abrir un negocio pequeno, por donde empiezo",
"necesito permiso para un food truck",
"mi contratista dice que necesito un permiso de construccion",
"como saco un permiso de filmacion para mi cuadra",
"que permisos necesito para un negocio en casa",
"quiero construir un cuarto adicional atras"
],
evidenceEn: [
"What exactly you plan to do, in one sentence",
"The address where it will happen",
"Whether you own or rent the property",
"Any plans, drawings or contractor information you have",
"The date you hope to start"
],
evidenceEs: [
"Qu\xE9 planea hacer exactamente, en una frase",
"La direcci\xF3n donde ser\xE1",
"Si es due\xF1o o renta la propiedad",
"Cualquier plano, dibujo o informaci\xF3n del contratista",
"La fecha en que espera empezar"
],
extraProhibitedEn: ["This app cannot tell you whether a permit is required \u2014 only the City can"],
extraProhibitedEs: ["Esta aplicaci\xF3n no puede decirle si necesita permiso \u2014 solo la Ciudad puede"],
confirmEn: "The application number, the fee quoted, and the next required step",
confirmEs: "El n\xFAmero de solicitud, la cuota indicada y el siguiente paso",
checkpointEn: "Check in 5 business days, and before any expiry date you are given",
checkpointEs: "Verifique en 5 d\xEDas h\xE1biles y antes de cualquier fecha de vencimiento",
sources: [
src("Apply for Business Licenses", "/i-want-to/apply-for/business-licenses"),
src("Apply for Building Permits", "/i-want-to/apply-for/building-permits"),
src("Licenses and Permits", "/services/licenses-and-permits")
]
}),
// ------------------------------------------------------------------ 20
route({
id: "public_records",
titleEn: "Public records and city documents",
titleEs: "Registros p\xFAblicos y documentos de la ciudad",
domain: "records",
owner: "Office of the City Clerk",
jurisdiction: "city",
noForm: false,
methods: [
web("https://www.comptoncity.org/i-want-to/get/request-public-records", "Public records request"),
web(
"https://www.comptoncity.org/departments/city-clerk/public-records-request",
"City Clerk public records request",
"City Clerk records request page",
"P\xE1gina de solicitud del Secretario Municipal"