fnschool 20251011.80531.840__py3-none-any.whl → 20251011.81705.829__py3-none-any.whl

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.

Potentially problematic release.


This version of fnschool might be problematic. Click here for more details.

Files changed (117) hide show
  1. fnschoo1/__init__.py +2 -1
  2. fnschoo1/db.sqlite3 +0 -0
  3. fnschoo1/static/images/favicon.ico +0 -0
  4. {fnschool-20251011.80531.840.dist-info → fnschool-20251011.81705.829.dist-info}/METADATA +1 -1
  5. fnschool-20251011.81705.829.dist-info/RECORD +101 -0
  6. fnschoo1/static_collected/admin/css/autocomplete.css +0 -377
  7. fnschoo1/static_collected/admin/css/base.css +0 -1224
  8. fnschoo1/static_collected/admin/css/changelists.css +0 -334
  9. fnschoo1/static_collected/admin/css/dark_mode.css +0 -136
  10. fnschoo1/static_collected/admin/css/dashboard.css +0 -30
  11. fnschoo1/static_collected/admin/css/forms.css +0 -546
  12. fnschoo1/static_collected/admin/css/login.css +0 -62
  13. fnschoo1/static_collected/admin/css/nav_sidebar.css +0 -145
  14. fnschoo1/static_collected/admin/css/responsive.css +0 -1043
  15. fnschoo1/static_collected/admin/css/responsive_rtl.css +0 -84
  16. fnschoo1/static_collected/admin/css/rtl.css +0 -311
  17. fnschoo1/static_collected/admin/css/vendor/select2/select2.css +0 -708
  18. fnschoo1/static_collected/admin/css/vendor/select2/select2.min.css +0 -1
  19. fnschoo1/static_collected/admin/css/widgets.css +0 -639
  20. fnschoo1/static_collected/admin/js/SelectBox.js +0 -128
  21. fnschoo1/static_collected/admin/js/SelectFilter2.js +0 -503
  22. fnschoo1/static_collected/admin/js/actions.js +0 -232
  23. fnschoo1/static_collected/admin/js/admin/DateTimeShortcuts.js +0 -496
  24. fnschoo1/static_collected/admin/js/admin/RelatedObjectLookups.js +0 -276
  25. fnschoo1/static_collected/admin/js/autocomplete.js +0 -33
  26. fnschoo1/static_collected/admin/js/calendar.js +0 -251
  27. fnschoo1/static_collected/admin/js/cancel.js +0 -29
  28. fnschoo1/static_collected/admin/js/change_form.js +0 -21
  29. fnschoo1/static_collected/admin/js/collapse.js +0 -43
  30. fnschoo1/static_collected/admin/js/core.js +0 -174
  31. fnschoo1/static_collected/admin/js/filters.js +0 -37
  32. fnschoo1/static_collected/admin/js/inlines.js +0 -439
  33. fnschoo1/static_collected/admin/js/jquery.init.js +0 -8
  34. fnschoo1/static_collected/admin/js/nav_sidebar.js +0 -81
  35. fnschoo1/static_collected/admin/js/popup_response.js +0 -24
  36. fnschoo1/static_collected/admin/js/prepopulate.js +0 -43
  37. fnschoo1/static_collected/admin/js/prepopulate_init.js +0 -20
  38. fnschoo1/static_collected/admin/js/theme.js +0 -57
  39. fnschoo1/static_collected/admin/js/urlify.js +0 -529
  40. fnschoo1/static_collected/admin/js/vendor/jquery/jquery.js +0 -10913
  41. fnschoo1/static_collected/admin/js/vendor/jquery/jquery.min.js +0 -2
  42. fnschoo1/static_collected/admin/js/vendor/select2/i18n/af.js +0 -43
  43. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ar.js +0 -36
  44. fnschoo1/static_collected/admin/js/vendor/select2/i18n/az.js +0 -33
  45. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bg.js +0 -38
  46. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bn.js +0 -39
  47. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bs.js +0 -48
  48. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ca.js +0 -41
  49. fnschoo1/static_collected/admin/js/vendor/select2/i18n/cs.js +0 -62
  50. fnschoo1/static_collected/admin/js/vendor/select2/i18n/da.js +0 -37
  51. fnschoo1/static_collected/admin/js/vendor/select2/i18n/de.js +0 -41
  52. fnschoo1/static_collected/admin/js/vendor/select2/i18n/dsb.js +0 -51
  53. fnschoo1/static_collected/admin/js/vendor/select2/i18n/el.js +0 -43
  54. fnschoo1/static_collected/admin/js/vendor/select2/i18n/en.js +0 -41
  55. fnschoo1/static_collected/admin/js/vendor/select2/i18n/es.js +0 -41
  56. fnschoo1/static_collected/admin/js/vendor/select2/i18n/et.js +0 -38
  57. fnschoo1/static_collected/admin/js/vendor/select2/i18n/eu.js +0 -45
  58. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fa.js +0 -42
  59. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fi.js +0 -42
  60. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fr.js +0 -43
  61. fnschoo1/static_collected/admin/js/vendor/select2/i18n/gl.js +0 -40
  62. fnschoo1/static_collected/admin/js/vendor/select2/i18n/he.js +0 -44
  63. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hi.js +0 -40
  64. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hr.js +0 -45
  65. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hsb.js +0 -51
  66. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hu.js +0 -44
  67. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hy.js +0 -40
  68. fnschoo1/static_collected/admin/js/vendor/select2/i18n/id.js +0 -36
  69. fnschoo1/static_collected/admin/js/vendor/select2/i18n/is.js +0 -37
  70. fnschoo1/static_collected/admin/js/vendor/select2/i18n/it.js +0 -43
  71. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ja.js +0 -40
  72. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ka.js +0 -42
  73. fnschoo1/static_collected/admin/js/vendor/select2/i18n/km.js +0 -38
  74. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ko.js +0 -42
  75. fnschoo1/static_collected/admin/js/vendor/select2/i18n/lt.js +0 -45
  76. fnschoo1/static_collected/admin/js/vendor/select2/i18n/lv.js +0 -41
  77. fnschoo1/static_collected/admin/js/vendor/select2/i18n/mk.js +0 -42
  78. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ms.js +0 -38
  79. fnschoo1/static_collected/admin/js/vendor/select2/i18n/nb.js +0 -38
  80. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ne.js +0 -44
  81. fnschoo1/static_collected/admin/js/vendor/select2/i18n/nl.js +0 -46
  82. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pl.js +0 -43
  83. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ps.js +0 -41
  84. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pt-BR.js +0 -39
  85. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pt.js +0 -41
  86. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ro.js +0 -43
  87. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ru.js +0 -48
  88. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sk.js +0 -61
  89. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sl.js +0 -41
  90. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sq.js +0 -43
  91. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sr-Cyrl.js +0 -48
  92. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sr.js +0 -48
  93. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sv.js +0 -40
  94. fnschoo1/static_collected/admin/js/vendor/select2/i18n/th.js +0 -36
  95. fnschoo1/static_collected/admin/js/vendor/select2/i18n/tk.js +0 -36
  96. fnschoo1/static_collected/admin/js/vendor/select2/i18n/tr.js +0 -40
  97. fnschoo1/static_collected/admin/js/vendor/select2/i18n/uk.js +0 -59
  98. fnschoo1/static_collected/admin/js/vendor/select2/i18n/vi.js +0 -37
  99. fnschoo1/static_collected/admin/js/vendor/select2/i18n/zh-CN.js +0 -36
  100. fnschoo1/static_collected/admin/js/vendor/select2/i18n/zh-TW.js +0 -33
  101. fnschoo1/static_collected/admin/js/vendor/select2/select2.full.js +0 -7115
  102. fnschoo1/static_collected/admin/js/vendor/select2/select2.full.min.js +0 -2
  103. fnschoo1/static_collected/admin/js/vendor/xregexp/xregexp.js +0 -4993
  104. fnschoo1/static_collected/admin/js/vendor/xregexp/xregexp.min.js +0 -160
  105. fnschoo1/static_collected/css/bootstrap.min.css +0 -11776
  106. fnschoo1/static_collected/css/fnschool.css +0 -26
  107. fnschoo1/static_collected/js/bootstrap.bundle.min.js +0 -4223
  108. fnschoo1/static_collected/js/bootstrap.min.js +0 -2919
  109. fnschoo1/static_collected/js/fnschool.js +0 -84
  110. fnschoo1/static_collected/js/jquery.min.js +0 -5413
  111. fnschoo1/static_collected/js/jquery.slim.min.js +0 -4331
  112. fnschoo1/static_collected/js/popper.min.js +0 -1306
  113. fnschool-20251011.80531.840.dist-info/RECORD +0 -207
  114. {fnschool-20251011.80531.840.dist-info → fnschool-20251011.81705.829.dist-info}/WHEEL +0 -0
  115. {fnschool-20251011.80531.840.dist-info → fnschool-20251011.81705.829.dist-info}/entry_points.txt +0 -0
  116. {fnschool-20251011.80531.840.dist-info → fnschool-20251011.81705.829.dist-info}/licenses/LICENSE +0 -0
  117. {fnschool-20251011.80531.840.dist-info → fnschool-20251011.81705.829.dist-info}/top_level.txt +0 -0
@@ -1,529 +0,0 @@
1
- /*global XRegExp*/
2
- 'use strict'
3
- {
4
- const LATIN_MAP = {
5
- À: 'A',
6
- Á: 'A',
7
- Â: 'A',
8
- Ã: 'A',
9
- Ä: 'A',
10
- Å: 'A',
11
- Æ: 'AE',
12
- Ç: 'C',
13
- È: 'E',
14
- É: 'E',
15
- Ê: 'E',
16
- Ë: 'E',
17
- Ì: 'I',
18
- Í: 'I',
19
- Î: 'I',
20
- Ï: 'I',
21
- Ð: 'D',
22
- Ñ: 'N',
23
- Ò: 'O',
24
- Ó: 'O',
25
- Ô: 'O',
26
- Õ: 'O',
27
- Ö: 'O',
28
- Ő: 'O',
29
- Ø: 'O',
30
- Ù: 'U',
31
- Ú: 'U',
32
- Û: 'U',
33
- Ü: 'U',
34
- Ű: 'U',
35
- Ý: 'Y',
36
- Þ: 'TH',
37
- Ÿ: 'Y',
38
- ß: 'ss',
39
- à: 'a',
40
- á: 'a',
41
- â: 'a',
42
- ã: 'a',
43
- ä: 'a',
44
- å: 'a',
45
- æ: 'ae',
46
- ç: 'c',
47
- è: 'e',
48
- é: 'e',
49
- ê: 'e',
50
- ë: 'e',
51
- ì: 'i',
52
- í: 'i',
53
- î: 'i',
54
- ï: 'i',
55
- ð: 'd',
56
- ñ: 'n',
57
- ò: 'o',
58
- ó: 'o',
59
- ô: 'o',
60
- õ: 'o',
61
- ö: 'o',
62
- ő: 'o',
63
- ø: 'o',
64
- ù: 'u',
65
- ú: 'u',
66
- û: 'u',
67
- ü: 'u',
68
- ű: 'u',
69
- ý: 'y',
70
- þ: 'th',
71
- ÿ: 'y',
72
- }
73
- const LATIN_SYMBOLS_MAP = {
74
- '©': '(c)',
75
- }
76
- const GREEK_MAP = {
77
- α: 'a',
78
- β: 'b',
79
- γ: 'g',
80
- δ: 'd',
81
- ε: 'e',
82
- ζ: 'z',
83
- η: 'h',
84
- θ: '8',
85
- ι: 'i',
86
- κ: 'k',
87
- λ: 'l',
88
- μ: 'm',
89
- ν: 'n',
90
- ξ: '3',
91
- ο: 'o',
92
- π: 'p',
93
- ρ: 'r',
94
- σ: 's',
95
- τ: 't',
96
- υ: 'y',
97
- φ: 'f',
98
- χ: 'x',
99
- ψ: 'ps',
100
- ω: 'w',
101
- ά: 'a',
102
- έ: 'e',
103
- ί: 'i',
104
- ό: 'o',
105
- ύ: 'y',
106
- ή: 'h',
107
- ώ: 'w',
108
- ς: 's',
109
- ϊ: 'i',
110
- ΰ: 'y',
111
- ϋ: 'y',
112
- ΐ: 'i',
113
- Α: 'A',
114
- Β: 'B',
115
- Γ: 'G',
116
- Δ: 'D',
117
- Ε: 'E',
118
- Ζ: 'Z',
119
- Η: 'H',
120
- Θ: '8',
121
- Ι: 'I',
122
- Κ: 'K',
123
- Λ: 'L',
124
- Μ: 'M',
125
- Ν: 'N',
126
- Ξ: '3',
127
- Ο: 'O',
128
- Π: 'P',
129
- Ρ: 'R',
130
- Σ: 'S',
131
- Τ: 'T',
132
- Υ: 'Y',
133
- Φ: 'F',
134
- Χ: 'X',
135
- Ψ: 'PS',
136
- Ω: 'W',
137
- Ά: 'A',
138
- Έ: 'E',
139
- Ί: 'I',
140
- Ό: 'O',
141
- Ύ: 'Y',
142
- Ή: 'H',
143
- Ώ: 'W',
144
- Ϊ: 'I',
145
- Ϋ: 'Y',
146
- }
147
- const TURKISH_MAP = {
148
- ş: 's',
149
- Ş: 'S',
150
- ı: 'i',
151
- İ: 'I',
152
- ç: 'c',
153
- Ç: 'C',
154
- ü: 'u',
155
- Ü: 'U',
156
- ö: 'o',
157
- Ö: 'O',
158
- ğ: 'g',
159
- Ğ: 'G',
160
- }
161
- const ROMANIAN_MAP = {
162
- ă: 'a',
163
- î: 'i',
164
- ș: 's',
165
- ț: 't',
166
- â: 'a',
167
- Ă: 'A',
168
- Î: 'I',
169
- Ș: 'S',
170
- Ț: 'T',
171
- Â: 'A',
172
- }
173
- const RUSSIAN_MAP = {
174
- а: 'a',
175
- б: 'b',
176
- в: 'v',
177
- г: 'g',
178
- д: 'd',
179
- е: 'e',
180
- ё: 'yo',
181
- ж: 'zh',
182
- з: 'z',
183
- и: 'i',
184
- й: 'j',
185
- к: 'k',
186
- л: 'l',
187
- м: 'm',
188
- н: 'n',
189
- о: 'o',
190
- п: 'p',
191
- р: 'r',
192
- с: 's',
193
- т: 't',
194
- у: 'u',
195
- ф: 'f',
196
- х: 'h',
197
- ц: 'c',
198
- ч: 'ch',
199
- ш: 'sh',
200
- щ: 'sh',
201
- ъ: '',
202
- ы: 'y',
203
- ь: '',
204
- э: 'e',
205
- ю: 'yu',
206
- я: 'ya',
207
- А: 'A',
208
- Б: 'B',
209
- В: 'V',
210
- Г: 'G',
211
- Д: 'D',
212
- Е: 'E',
213
- Ё: 'Yo',
214
- Ж: 'Zh',
215
- З: 'Z',
216
- И: 'I',
217
- Й: 'J',
218
- К: 'K',
219
- Л: 'L',
220
- М: 'M',
221
- Н: 'N',
222
- О: 'O',
223
- П: 'P',
224
- Р: 'R',
225
- С: 'S',
226
- Т: 'T',
227
- У: 'U',
228
- Ф: 'F',
229
- Х: 'H',
230
- Ц: 'C',
231
- Ч: 'Ch',
232
- Ш: 'Sh',
233
- Щ: 'Sh',
234
- Ъ: '',
235
- Ы: 'Y',
236
- Ь: '',
237
- Э: 'E',
238
- Ю: 'Yu',
239
- Я: 'Ya',
240
- }
241
- const UKRAINIAN_MAP = {
242
- Є: 'Ye',
243
- І: 'I',
244
- Ї: 'Yi',
245
- Ґ: 'G',
246
- є: 'ye',
247
- і: 'i',
248
- ї: 'yi',
249
- ґ: 'g',
250
- }
251
- const CZECH_MAP = {
252
- č: 'c',
253
- ď: 'd',
254
- ě: 'e',
255
- ň: 'n',
256
- ř: 'r',
257
- š: 's',
258
- ť: 't',
259
- ů: 'u',
260
- ž: 'z',
261
- Č: 'C',
262
- Ď: 'D',
263
- Ě: 'E',
264
- Ň: 'N',
265
- Ř: 'R',
266
- Š: 'S',
267
- Ť: 'T',
268
- Ů: 'U',
269
- Ž: 'Z',
270
- }
271
- const SLOVAK_MAP = {
272
- á: 'a',
273
- ä: 'a',
274
- č: 'c',
275
- ď: 'd',
276
- é: 'e',
277
- í: 'i',
278
- ľ: 'l',
279
- ĺ: 'l',
280
- ň: 'n',
281
- ó: 'o',
282
- ô: 'o',
283
- ŕ: 'r',
284
- š: 's',
285
- ť: 't',
286
- ú: 'u',
287
- ý: 'y',
288
- ž: 'z',
289
- Á: 'a',
290
- Ä: 'A',
291
- Č: 'C',
292
- Ď: 'D',
293
- É: 'E',
294
- Í: 'I',
295
- Ľ: 'L',
296
- Ĺ: 'L',
297
- Ň: 'N',
298
- Ó: 'O',
299
- Ô: 'O',
300
- Ŕ: 'R',
301
- Š: 'S',
302
- Ť: 'T',
303
- Ú: 'U',
304
- Ý: 'Y',
305
- Ž: 'Z',
306
- }
307
- const POLISH_MAP = {
308
- ą: 'a',
309
- ć: 'c',
310
- ę: 'e',
311
- ł: 'l',
312
- ń: 'n',
313
- ó: 'o',
314
- ś: 's',
315
- ź: 'z',
316
- ż: 'z',
317
- Ą: 'A',
318
- Ć: 'C',
319
- Ę: 'E',
320
- Ł: 'L',
321
- Ń: 'N',
322
- Ó: 'O',
323
- Ś: 'S',
324
- Ź: 'Z',
325
- Ż: 'Z',
326
- }
327
- const LATVIAN_MAP = {
328
- ā: 'a',
329
- č: 'c',
330
- ē: 'e',
331
- ģ: 'g',
332
- ī: 'i',
333
- ķ: 'k',
334
- ļ: 'l',
335
- ņ: 'n',
336
- š: 's',
337
- ū: 'u',
338
- ž: 'z',
339
- Ā: 'A',
340
- Č: 'C',
341
- Ē: 'E',
342
- Ģ: 'G',
343
- Ī: 'I',
344
- Ķ: 'K',
345
- Ļ: 'L',
346
- Ņ: 'N',
347
- Š: 'S',
348
- Ū: 'U',
349
- Ž: 'Z',
350
- }
351
- const ARABIC_MAP = {
352
- أ: 'a',
353
- ب: 'b',
354
- ت: 't',
355
- ث: 'th',
356
- ج: 'g',
357
- ح: 'h',
358
- خ: 'kh',
359
- د: 'd',
360
- ذ: 'th',
361
- ر: 'r',
362
- ز: 'z',
363
- س: 's',
364
- ش: 'sh',
365
- ص: 's',
366
- ض: 'd',
367
- ط: 't',
368
- ظ: 'th',
369
- ع: 'aa',
370
- غ: 'gh',
371
- ف: 'f',
372
- ق: 'k',
373
- ك: 'k',
374
- ل: 'l',
375
- م: 'm',
376
- ن: 'n',
377
- ه: 'h',
378
- و: 'o',
379
- ي: 'y',
380
- }
381
- const LITHUANIAN_MAP = {
382
- ą: 'a',
383
- č: 'c',
384
- ę: 'e',
385
- ė: 'e',
386
- į: 'i',
387
- š: 's',
388
- ų: 'u',
389
- ū: 'u',
390
- ž: 'z',
391
- Ą: 'A',
392
- Č: 'C',
393
- Ę: 'E',
394
- Ė: 'E',
395
- Į: 'I',
396
- Š: 'S',
397
- Ų: 'U',
398
- Ū: 'U',
399
- Ž: 'Z',
400
- }
401
- const SERBIAN_MAP = {
402
- ђ: 'dj',
403
- ј: 'j',
404
- љ: 'lj',
405
- њ: 'nj',
406
- ћ: 'c',
407
- џ: 'dz',
408
- đ: 'dj',
409
- Ђ: 'Dj',
410
- Ј: 'j',
411
- Љ: 'Lj',
412
- Њ: 'Nj',
413
- Ћ: 'C',
414
- Џ: 'Dz',
415
- Đ: 'Dj',
416
- }
417
- const AZERBAIJANI_MAP = {
418
- ç: 'c',
419
- ə: 'e',
420
- ğ: 'g',
421
- ı: 'i',
422
- ö: 'o',
423
- ş: 's',
424
- ü: 'u',
425
- Ç: 'C',
426
- Ə: 'E',
427
- Ğ: 'G',
428
- İ: 'I',
429
- Ö: 'O',
430
- Ş: 'S',
431
- Ü: 'U',
432
- }
433
- const GEORGIAN_MAP = {
434
- ა: 'a',
435
- ბ: 'b',
436
- გ: 'g',
437
- დ: 'd',
438
- ე: 'e',
439
- ვ: 'v',
440
- ზ: 'z',
441
- თ: 't',
442
- ი: 'i',
443
- კ: 'k',
444
- ლ: 'l',
445
- მ: 'm',
446
- ნ: 'n',
447
- ო: 'o',
448
- პ: 'p',
449
- ჟ: 'j',
450
- რ: 'r',
451
- ს: 's',
452
- ტ: 't',
453
- უ: 'u',
454
- ფ: 'f',
455
- ქ: 'q',
456
- ღ: 'g',
457
- ყ: 'y',
458
- შ: 'sh',
459
- ჩ: 'ch',
460
- ც: 'c',
461
- ძ: 'dz',
462
- წ: 'w',
463
- ჭ: 'ch',
464
- ხ: 'x',
465
- ჯ: 'j',
466
- ჰ: 'h',
467
- }
468
-
469
- const ALL_DOWNCODE_MAPS = [
470
- LATIN_MAP,
471
- LATIN_SYMBOLS_MAP,
472
- GREEK_MAP,
473
- TURKISH_MAP,
474
- ROMANIAN_MAP,
475
- RUSSIAN_MAP,
476
- UKRAINIAN_MAP,
477
- CZECH_MAP,
478
- SLOVAK_MAP,
479
- POLISH_MAP,
480
- LATVIAN_MAP,
481
- ARABIC_MAP,
482
- LITHUANIAN_MAP,
483
- SERBIAN_MAP,
484
- AZERBAIJANI_MAP,
485
- GEORGIAN_MAP,
486
- ]
487
-
488
- const Downcoder = {
489
- Initialize: function () {
490
- if (Downcoder.map) {
491
- // already made
492
- return
493
- }
494
- Downcoder.map = {}
495
- for (const lookup of ALL_DOWNCODE_MAPS) {
496
- Object.assign(Downcoder.map, lookup)
497
- }
498
- Downcoder.regex = new RegExp(Object.keys(Downcoder.map).join('|'), 'g')
499
- },
500
- }
501
-
502
- function downcode(slug) {
503
- Downcoder.Initialize()
504
- return slug.replace(Downcoder.regex, function (m) {
505
- return Downcoder.map[m]
506
- })
507
- }
508
-
509
- function URLify(s, num_chars, allowUnicode) {
510
- // changes, e.g., "Petty theft" to "petty-theft"
511
- if (!allowUnicode) {
512
- s = downcode(s)
513
- }
514
- s = s.toLowerCase() // convert to lowercase
515
- // if downcode doesn't hit, the char will be stripped here
516
- if (allowUnicode) {
517
- // Keep Unicode letters including both lowercase and uppercase
518
- // characters, whitespace, and dash; remove other characters.
519
- s = XRegExp.replace(s, XRegExp('[^-_\\p{L}\\p{N}\\s]', 'g'), '')
520
- } else {
521
- s = s.replace(/[^-\w\s]/g, '') // remove unneeded chars
522
- }
523
- s = s.replace(/^\s+|\s+$/g, '') // trim leading/trailing spaces
524
- s = s.replace(/[-\s]+/g, '-') // convert spaces to hyphens
525
- s = s.substring(0, num_chars) // trim to first num_chars chars
526
- return s.replace(/-+$/g, '') // trim any trailing hyphens
527
- }
528
- window.URLify = URLify
529
- }