@capsitech/react-utilities 0.1.10 → 0.1.12
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/lib/Components/SuspenseRoute.js +29 -0
- package/lib/Components/index.js +1 -0
- package/lib/Hooks/index.d.ts +2 -2
- package/lib/Hooks/index.js +98 -0
- package/lib/Hooks/useInfiniteScroll.d.ts +1 -1
- package/lib/Hooks/useInfiniteScroll.js +22 -0
- package/lib/Hooks/useNetworkState.js +41 -0
- package/lib/Hooks/useShortcuts.js +91 -0
- package/lib/Utilities/ApiUtility.axios.js +326 -0
- package/lib/Utilities/BrowserInfo.d.ts +1 -1
- package/lib/Utilities/BrowserInfo.js +159 -0
- package/lib/Utilities/Countries.js +290 -0
- package/lib/Utilities/CustomEventEmitter.js +30 -0
- package/lib/Utilities/FastCompare.js +128 -0
- package/lib/Utilities/HideablePromise.js +10 -0
- package/lib/Utilities/LoadScripts.js +51 -0
- package/lib/Utilities/MTDFraudPrevention.js +157 -0
- package/lib/Utilities/Nationalities.js +245 -0
- package/lib/Utilities/RouteUtils.d.ts +1 -1
- package/lib/Utilities/RouteUtils.js +223 -0
- package/lib/Utilities/TimeZones.js +1069 -0
- package/lib/Utilities/Types.js +1 -0
- package/lib/Utilities/Utils.d.ts +1 -1
- package/lib/Utilities/Utils.js +331 -0
- package/lib/Utilities/dayjs.d.ts +11 -10
- package/lib/Utilities/dayjs.js +57 -0
- package/lib/Utilities/index.js +14 -0
- package/lib/index.js +3 -72
- package/package.json +17 -61
- package/lib/Components.d.ts +0 -2
- package/lib/Components.js +0 -5
- package/lib/Components.js.map +0 -1
- package/lib/Hooks.d.ts +0 -2
- package/lib/Hooks.js +0 -72
- package/lib/Hooks.js.map +0 -1
- package/lib/Utilities.d.ts +0 -2
- package/lib/Utilities.js +0 -54
- package/lib/Utilities.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/logo.png +0 -0
- package/lib/src/Components/SuspenseRoute.d.ts +0 -2
- package/lib/src/Components/SuspenseRoute.js +0 -22
- package/lib/src/Components/SuspenseRoute.js.map +0 -1
- package/lib/src/Components/index.d.ts +0 -2
- package/lib/src/Components/index.js +0 -5
- package/lib/src/Components/index.js.map +0 -1
- package/lib/src/Hooks/index.d.ts +0 -2
- package/lib/src/Hooks/index.js +0 -20
- package/lib/src/Hooks/index.js.map +0 -1
- package/lib/src/Hooks/useInfiniteScroll.d.ts +0 -2
- package/lib/src/Hooks/useInfiniteScroll.js +0 -20
- package/lib/src/Hooks/useInfiniteScroll.js.map +0 -1
- package/lib/src/Hooks/useNetworkState.d.ts +0 -2
- package/lib/src/Hooks/useNetworkState.js +0 -33
- package/lib/src/Hooks/useNetworkState.js.map +0 -1
- package/lib/src/Hooks/useShortcuts.d.ts +0 -2
- package/lib/src/Hooks/useShortcuts.js +0 -43
- package/lib/src/Hooks/useShortcuts.js.map +0 -1
- package/lib/src/Utilities/ApiUtility.axios.d.ts +0 -2
- package/lib/src/Utilities/ApiUtility.axios.js +0 -228
- package/lib/src/Utilities/ApiUtility.axios.js.map +0 -1
- package/lib/src/Utilities/BrowserInfo.d.ts +0 -2
- package/lib/src/Utilities/BrowserInfo.js +0 -51
- package/lib/src/Utilities/BrowserInfo.js.map +0 -1
- package/lib/src/Utilities/Countries.d.ts +0 -2
- package/lib/src/Utilities/Countries.js +0 -518
- package/lib/src/Utilities/Countries.js.map +0 -1
- package/lib/src/Utilities/CustomEventEmitter.d.ts +0 -2
- package/lib/src/Utilities/CustomEventEmitter.js +0 -27
- package/lib/src/Utilities/CustomEventEmitter.js.map +0 -1
- package/lib/src/Utilities/FastCompare.d.ts +0 -2
- package/lib/src/Utilities/FastCompare.js +0 -56
- package/lib/src/Utilities/FastCompare.js.map +0 -1
- package/lib/src/Utilities/HideablePromise.d.ts +0 -2
- package/lib/src/Utilities/HideablePromise.js +0 -18
- package/lib/src/Utilities/HideablePromise.js.map +0 -1
- package/lib/src/Utilities/LoadScripts.d.ts +0 -2
- package/lib/src/Utilities/LoadScripts.js +0 -26
- package/lib/src/Utilities/LoadScripts.js.map +0 -1
- package/lib/src/Utilities/MTDFraudPrevention.d.ts +0 -2
- package/lib/src/Utilities/MTDFraudPrevention.js +0 -60
- package/lib/src/Utilities/MTDFraudPrevention.js.map +0 -1
- package/lib/src/Utilities/Nationalities.d.ts +0 -2
- package/lib/src/Utilities/Nationalities.js +0 -250
- package/lib/src/Utilities/Nationalities.js.map +0 -1
- package/lib/src/Utilities/RouteUtils.d.ts +0 -2
- package/lib/src/Utilities/RouteUtils.js +0 -200
- package/lib/src/Utilities/RouteUtils.js.map +0 -1
- package/lib/src/Utilities/TimeZones.d.ts +0 -2
- package/lib/src/Utilities/TimeZones.js +0 -1074
- package/lib/src/Utilities/TimeZones.js.map +0 -1
- package/lib/src/Utilities/Types.d.ts +0 -1
- package/lib/src/Utilities/Types.js +0 -2
- package/lib/src/Utilities/Types.js.map +0 -1
- package/lib/src/Utilities/Utils.d.ts +0 -2
- package/lib/src/Utilities/Utils.js +0 -274
- package/lib/src/Utilities/Utils.js.map +0 -1
- package/lib/src/Utilities/dayjs.d.ts +0 -2
- package/lib/src/Utilities/dayjs.js +0 -42
- package/lib/src/Utilities/dayjs.js.map +0 -1
- package/lib/src/Utilities/index.d.ts +0 -2
- package/lib/src/Utilities/index.js +0 -54
- package/lib/src/Utilities/index.js.map +0 -1
|
@@ -1,250 +0,0 @@
|
|
|
1
|
-
const n = [
|
|
2
|
-
"Afghan",
|
|
3
|
-
"Albanian",
|
|
4
|
-
"Algerian",
|
|
5
|
-
"American Samoan",
|
|
6
|
-
"Andorran",
|
|
7
|
-
"Angolan",
|
|
8
|
-
"Anguillan",
|
|
9
|
-
"Antarctic",
|
|
10
|
-
"Antiguan or Barbudan",
|
|
11
|
-
"Argentine",
|
|
12
|
-
"Armenian",
|
|
13
|
-
"Aruban",
|
|
14
|
-
"Australian",
|
|
15
|
-
"Austrian",
|
|
16
|
-
"Azerbaijani",
|
|
17
|
-
"Bahamian",
|
|
18
|
-
"Bahraini",
|
|
19
|
-
"Bangladeshi",
|
|
20
|
-
"Barbadian",
|
|
21
|
-
"Belarusian",
|
|
22
|
-
"Belgian",
|
|
23
|
-
"Belizean",
|
|
24
|
-
"Bermudian",
|
|
25
|
-
"Bhutanese",
|
|
26
|
-
"Bolivian",
|
|
27
|
-
"Bosnian or Herzegovinian",
|
|
28
|
-
"Botswanan",
|
|
29
|
-
"Brazilian",
|
|
30
|
-
"British Indian Ocean Territory",
|
|
31
|
-
"British Virgin Islander",
|
|
32
|
-
"Bruneian",
|
|
33
|
-
"Bulgarian",
|
|
34
|
-
"Burkinabe",
|
|
35
|
-
"Burundian",
|
|
36
|
-
"Cambodian",
|
|
37
|
-
"Cameroonian",
|
|
38
|
-
"Canadian",
|
|
39
|
-
"Cape Verdean",
|
|
40
|
-
"Caymanian",
|
|
41
|
-
"Central African",
|
|
42
|
-
"Beninese",
|
|
43
|
-
"Chadian",
|
|
44
|
-
"Chilean",
|
|
45
|
-
"Chinese",
|
|
46
|
-
"Cocos Islander",
|
|
47
|
-
"Colombian",
|
|
48
|
-
"Comoran",
|
|
49
|
-
"Cook Islander",
|
|
50
|
-
"Costa Rican",
|
|
51
|
-
"Croatian",
|
|
52
|
-
"Cuban",
|
|
53
|
-
"Curacaoan",
|
|
54
|
-
"Cypriot",
|
|
55
|
-
"Czech",
|
|
56
|
-
"Congolese",
|
|
57
|
-
"Danish",
|
|
58
|
-
"Djiboutian",
|
|
59
|
-
"Dominican (Note: Different from Dominican Republic)",
|
|
60
|
-
"Dominican",
|
|
61
|
-
"Timorese or East Timorese",
|
|
62
|
-
"Ecuadorian",
|
|
63
|
-
"Egyptian",
|
|
64
|
-
"Christmas Islander",
|
|
65
|
-
"Salvadoran",
|
|
66
|
-
"Equatorial Guinean",
|
|
67
|
-
"Eritrean",
|
|
68
|
-
"Ethiopian",
|
|
69
|
-
"Falkland Islander",
|
|
70
|
-
"Faroese",
|
|
71
|
-
"Fijian",
|
|
72
|
-
"Finnish",
|
|
73
|
-
"French",
|
|
74
|
-
"French Polynesian",
|
|
75
|
-
"Gabonese",
|
|
76
|
-
"Gambian",
|
|
77
|
-
"Georgian",
|
|
78
|
-
"German",
|
|
79
|
-
"Ghanaian",
|
|
80
|
-
"Gibraltarian",
|
|
81
|
-
"Greek",
|
|
82
|
-
"Greenlandic",
|
|
83
|
-
"Grenadian",
|
|
84
|
-
"Guamanian",
|
|
85
|
-
"Guatemalan",
|
|
86
|
-
"Estonian",
|
|
87
|
-
"Guernsey (or Channel Islander)",
|
|
88
|
-
"Guinean",
|
|
89
|
-
"Bissau-Guinean",
|
|
90
|
-
"Haitian",
|
|
91
|
-
"Honduran",
|
|
92
|
-
"Hong Konger",
|
|
93
|
-
"Hungarian",
|
|
94
|
-
"Icelander",
|
|
95
|
-
"Indian",
|
|
96
|
-
"Indonesian",
|
|
97
|
-
"Iranian",
|
|
98
|
-
"Iraqi",
|
|
99
|
-
"Irish",
|
|
100
|
-
"Manx",
|
|
101
|
-
"Israeli",
|
|
102
|
-
"Italian",
|
|
103
|
-
"Ivorian",
|
|
104
|
-
"Jamaican",
|
|
105
|
-
"Japanese",
|
|
106
|
-
"Jersey (or Channel Islander)",
|
|
107
|
-
"Jordanian",
|
|
108
|
-
"Guyanese",
|
|
109
|
-
"Kazakhstani",
|
|
110
|
-
"Kenyan",
|
|
111
|
-
"I-Kiribati",
|
|
112
|
-
"Kuwaiti",
|
|
113
|
-
"Kyrgyzstani",
|
|
114
|
-
"Lao or Laotian",
|
|
115
|
-
"Latvian",
|
|
116
|
-
"Lebanese",
|
|
117
|
-
"Basotho or Lesothan",
|
|
118
|
-
"Liberian",
|
|
119
|
-
"Libyan",
|
|
120
|
-
"Liechtensteiner",
|
|
121
|
-
"Lithuanian",
|
|
122
|
-
"Luxembourger",
|
|
123
|
-
"Macanese",
|
|
124
|
-
"Macedonian",
|
|
125
|
-
"Malagasy",
|
|
126
|
-
"Malawian",
|
|
127
|
-
"Malaysian",
|
|
128
|
-
"Maldivian",
|
|
129
|
-
"Malian",
|
|
130
|
-
"Kosovar",
|
|
131
|
-
"Maltese",
|
|
132
|
-
"Marshallese",
|
|
133
|
-
"Mauritanian",
|
|
134
|
-
"Mahoran or Mayotte",
|
|
135
|
-
"Mexican",
|
|
136
|
-
"Micronesian",
|
|
137
|
-
"Moldovan",
|
|
138
|
-
"Monégasque",
|
|
139
|
-
"Mongolian",
|
|
140
|
-
"Montenegrin",
|
|
141
|
-
"Montserratian",
|
|
142
|
-
"Moroccan",
|
|
143
|
-
"Mozambican",
|
|
144
|
-
"Burmese or Myanmarese",
|
|
145
|
-
"Namibian",
|
|
146
|
-
"Nauruan",
|
|
147
|
-
"Nepali or Nepalese",
|
|
148
|
-
"Dutch",
|
|
149
|
-
"Netherlands Antillean",
|
|
150
|
-
"New Caledonian",
|
|
151
|
-
"New Zealander",
|
|
152
|
-
"Mauritian",
|
|
153
|
-
"Nicaraguan",
|
|
154
|
-
"Nigerien",
|
|
155
|
-
"Nigerian",
|
|
156
|
-
"North Korean",
|
|
157
|
-
"Northern Marianan",
|
|
158
|
-
"Norwegian",
|
|
159
|
-
"Omani",
|
|
160
|
-
"Pakistani",
|
|
161
|
-
"Palauan",
|
|
162
|
-
"Palestinian",
|
|
163
|
-
"Panamanian",
|
|
164
|
-
"Papua New Guinean",
|
|
165
|
-
"Paraguayan",
|
|
166
|
-
"Peruvian",
|
|
167
|
-
"Filipino",
|
|
168
|
-
"Pitcairn Islander",
|
|
169
|
-
"Polish",
|
|
170
|
-
"Portuguese",
|
|
171
|
-
"Puerto Rican",
|
|
172
|
-
"Qatari",
|
|
173
|
-
"Congolese",
|
|
174
|
-
"Niuean",
|
|
175
|
-
"Réunionese or Réunionnais",
|
|
176
|
-
"Romanian",
|
|
177
|
-
"Russian",
|
|
178
|
-
"Barthélemois or Saint Barthélemy Islander",
|
|
179
|
-
"Saint Helenian",
|
|
180
|
-
"Kittitian or Nevisian",
|
|
181
|
-
"Saint Lucian",
|
|
182
|
-
"Saint-Martinoise",
|
|
183
|
-
"Saint-Pierrais or Miquelonnais",
|
|
184
|
-
"Vincentian or Vincy",
|
|
185
|
-
"Samoan",
|
|
186
|
-
"Sammarinese",
|
|
187
|
-
"São Toméan",
|
|
188
|
-
"Saudi or Saudi Arabian",
|
|
189
|
-
"Senegalese",
|
|
190
|
-
"Serbian",
|
|
191
|
-
"Seychellois",
|
|
192
|
-
"Sierra Leonean",
|
|
193
|
-
"Singaporean",
|
|
194
|
-
"Sint Maartener or Sint Maartian",
|
|
195
|
-
"Slovak",
|
|
196
|
-
"Rwandan",
|
|
197
|
-
"Slovenian",
|
|
198
|
-
"Solomon Islander",
|
|
199
|
-
"Somali",
|
|
200
|
-
"South Korean",
|
|
201
|
-
"South Sudanese",
|
|
202
|
-
"Spanish",
|
|
203
|
-
"Sri Lankan",
|
|
204
|
-
"Sudanese",
|
|
205
|
-
"Surinamese",
|
|
206
|
-
"Svalbardian or Jan Mayenian",
|
|
207
|
-
"Swazi",
|
|
208
|
-
"Swedish",
|
|
209
|
-
"Swiss",
|
|
210
|
-
"Syrian",
|
|
211
|
-
"Taiwanese",
|
|
212
|
-
"Tajikistani",
|
|
213
|
-
"Tanzanian",
|
|
214
|
-
"Thai",
|
|
215
|
-
"Togolese",
|
|
216
|
-
"Tokelauan",
|
|
217
|
-
"Tongan",
|
|
218
|
-
"South African",
|
|
219
|
-
"Trinidadian or Tobagonian",
|
|
220
|
-
"Tunisian",
|
|
221
|
-
"Turkish",
|
|
222
|
-
"Turks and Caicos Islander",
|
|
223
|
-
"Tuvaluan",
|
|
224
|
-
"Virgin Islander",
|
|
225
|
-
"Ugandan",
|
|
226
|
-
"Ukrainian",
|
|
227
|
-
"Emirati or Emirian",
|
|
228
|
-
"British",
|
|
229
|
-
"American",
|
|
230
|
-
"Uruguayan",
|
|
231
|
-
"Uzbekistani",
|
|
232
|
-
"Vanuatuan",
|
|
233
|
-
"Vatican (or Vatican City)",
|
|
234
|
-
"Venezuelan",
|
|
235
|
-
"Vietnamese",
|
|
236
|
-
"Wallisian or Futunan",
|
|
237
|
-
"Sahrawi",
|
|
238
|
-
"Turkmen",
|
|
239
|
-
"Zambian",
|
|
240
|
-
"Zimbabwean",
|
|
241
|
-
"Yemeni"
|
|
242
|
-
];
|
|
243
|
-
function i() {
|
|
244
|
-
return n.map((a) => ({ key: a, text: a }));
|
|
245
|
-
}
|
|
246
|
-
export {
|
|
247
|
-
n as AllNationalities,
|
|
248
|
-
i as getNationalityOptions
|
|
249
|
-
};
|
|
250
|
-
//# sourceMappingURL=Nationalities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Nationalities.js","sources":["../../../src/Utilities/Nationalities.ts"],"sourcesContent":["export const AllNationalities: string[] = [\r\n 'Afghan',\r\n 'Albanian',\r\n 'Algerian',\r\n 'American Samoan',\r\n 'Andorran',\r\n 'Angolan',\r\n 'Anguillan',\r\n 'Antarctic',\r\n 'Antiguan or Barbudan',\r\n 'Argentine',\r\n 'Armenian',\r\n 'Aruban',\r\n 'Australian',\r\n 'Austrian',\r\n 'Azerbaijani',\r\n 'Bahamian',\r\n 'Bahraini',\r\n 'Bangladeshi',\r\n 'Barbadian',\r\n 'Belarusian',\r\n 'Belgian',\r\n 'Belizean',\r\n 'Bermudian',\r\n 'Bhutanese',\r\n 'Bolivian',\r\n 'Bosnian or Herzegovinian',\r\n 'Botswanan',\r\n 'Brazilian',\r\n 'British Indian Ocean Territory',\r\n 'British Virgin Islander',\r\n 'Bruneian',\r\n 'Bulgarian',\r\n 'Burkinabe',\r\n 'Burundian',\r\n 'Cambodian',\r\n 'Cameroonian',\r\n 'Canadian',\r\n 'Cape Verdean',\r\n 'Caymanian',\r\n 'Central African',\r\n 'Beninese',\r\n 'Chadian',\r\n 'Chilean',\r\n 'Chinese',\r\n 'Cocos Islander',\r\n 'Colombian',\r\n 'Comoran',\r\n 'Cook Islander',\r\n 'Costa Rican',\r\n 'Croatian',\r\n 'Cuban',\r\n 'Curacaoan',\r\n 'Cypriot',\r\n 'Czech',\r\n 'Congolese',\r\n 'Danish',\r\n 'Djiboutian',\r\n 'Dominican (Note: Different from Dominican Republic)',\r\n 'Dominican',\r\n 'Timorese or East Timorese',\r\n 'Ecuadorian',\r\n 'Egyptian',\r\n 'Christmas Islander',\r\n 'Salvadoran',\r\n 'Equatorial Guinean',\r\n 'Eritrean',\r\n 'Ethiopian',\r\n 'Falkland Islander',\r\n 'Faroese',\r\n 'Fijian',\r\n 'Finnish',\r\n 'French',\r\n 'French Polynesian',\r\n 'Gabonese',\r\n 'Gambian',\r\n 'Georgian',\r\n 'German',\r\n 'Ghanaian',\r\n 'Gibraltarian',\r\n 'Greek',\r\n 'Greenlandic',\r\n 'Grenadian',\r\n 'Guamanian',\r\n 'Guatemalan',\r\n 'Estonian',\r\n 'Guernsey (or Channel Islander)',\r\n 'Guinean',\r\n 'Bissau-Guinean',\r\n 'Haitian',\r\n 'Honduran',\r\n 'Hong Konger',\r\n 'Hungarian',\r\n 'Icelander',\r\n 'Indian',\r\n 'Indonesian',\r\n 'Iranian',\r\n 'Iraqi',\r\n 'Irish',\r\n 'Manx',\r\n 'Israeli',\r\n 'Italian',\r\n 'Ivorian',\r\n 'Jamaican',\r\n 'Japanese',\r\n 'Jersey (or Channel Islander)',\r\n 'Jordanian',\r\n 'Guyanese',\r\n 'Kazakhstani',\r\n 'Kenyan',\r\n 'I-Kiribati',\r\n 'Kuwaiti',\r\n 'Kyrgyzstani',\r\n 'Lao or Laotian',\r\n 'Latvian',\r\n 'Lebanese',\r\n 'Basotho or Lesothan',\r\n 'Liberian',\r\n 'Libyan',\r\n 'Liechtensteiner',\r\n 'Lithuanian',\r\n 'Luxembourger',\r\n 'Macanese',\r\n 'Macedonian',\r\n 'Malagasy',\r\n 'Malawian',\r\n 'Malaysian',\r\n 'Maldivian',\r\n 'Malian',\r\n 'Kosovar',\r\n 'Maltese',\r\n 'Marshallese',\r\n 'Mauritanian',\r\n 'Mahoran or Mayotte',\r\n 'Mexican',\r\n 'Micronesian',\r\n 'Moldovan',\r\n 'Monégasque',\r\n 'Mongolian',\r\n 'Montenegrin',\r\n 'Montserratian',\r\n 'Moroccan',\r\n 'Mozambican',\r\n 'Burmese or Myanmarese',\r\n 'Namibian',\r\n 'Nauruan',\r\n 'Nepali or Nepalese',\r\n 'Dutch',\r\n 'Netherlands Antillean',\r\n 'New Caledonian',\r\n 'New Zealander',\r\n 'Mauritian',\r\n 'Nicaraguan',\r\n 'Nigerien',\r\n 'Nigerian',\r\n 'North Korean',\r\n 'Northern Marianan',\r\n 'Norwegian',\r\n 'Omani',\r\n 'Pakistani',\r\n 'Palauan',\r\n 'Palestinian',\r\n 'Panamanian',\r\n 'Papua New Guinean',\r\n 'Paraguayan',\r\n 'Peruvian',\r\n 'Filipino',\r\n 'Pitcairn Islander',\r\n 'Polish',\r\n 'Portuguese',\r\n 'Puerto Rican',\r\n 'Qatari',\r\n 'Congolese',\r\n 'Niuean',\r\n 'Réunionese or Réunionnais',\r\n 'Romanian',\r\n 'Russian',\r\n 'Barthélemois or Saint Barthélemy Islander',\r\n 'Saint Helenian',\r\n 'Kittitian or Nevisian',\r\n 'Saint Lucian',\r\n 'Saint-Martinoise',\r\n 'Saint-Pierrais or Miquelonnais',\r\n 'Vincentian or Vincy',\r\n 'Samoan',\r\n 'Sammarinese',\r\n 'São Toméan',\r\n 'Saudi or Saudi Arabian',\r\n 'Senegalese',\r\n 'Serbian',\r\n 'Seychellois',\r\n 'Sierra Leonean',\r\n 'Singaporean',\r\n 'Sint Maartener or Sint Maartian',\r\n 'Slovak',\r\n 'Rwandan',\r\n 'Slovenian',\r\n 'Solomon Islander',\r\n 'Somali',\r\n 'South Korean',\r\n 'South Sudanese',\r\n 'Spanish',\r\n 'Sri Lankan',\r\n 'Sudanese',\r\n 'Surinamese',\r\n 'Svalbardian or Jan Mayenian',\r\n 'Swazi',\r\n 'Swedish',\r\n 'Swiss',\r\n 'Syrian',\r\n 'Taiwanese',\r\n 'Tajikistani',\r\n 'Tanzanian',\r\n 'Thai',\r\n 'Togolese',\r\n 'Tokelauan',\r\n 'Tongan',\r\n 'South African',\r\n 'Trinidadian or Tobagonian',\r\n 'Tunisian',\r\n 'Turkish',\r\n 'Turks and Caicos Islander',\r\n 'Tuvaluan',\r\n 'Virgin Islander',\r\n 'Ugandan',\r\n 'Ukrainian',\r\n 'Emirati or Emirian',\r\n 'British',\r\n 'American',\r\n 'Uruguayan',\r\n 'Uzbekistani',\r\n 'Vanuatuan',\r\n 'Vatican (or Vatican City)',\r\n 'Venezuelan',\r\n 'Vietnamese',\r\n 'Wallisian or Futunan',\r\n 'Sahrawi',\r\n 'Turkmen',\r\n 'Zambian',\r\n 'Zimbabwean',\r\n 'Yemeni',\r\n];\r\n\r\nexport function getNationalityOptions() {\r\n return AllNationalities.map((v) => ({ key: v, text: v }));\r\n}\r\n"],"names":["AllNationalities","getNationalityOptions","v"],"mappings":"AAAO,MAAMA,IAA6B;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,SAASC,IAAwB;AACtC,SAAOD,EAAiB,IAAI,CAACE,OAAO,EAAE,KAAKA,GAAG,MAAMA,EAAA,EAAI;AAC1D;"}
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
var G = Object.defineProperty;
|
|
2
|
-
var F = (V, n, t) => n in V ? G(V, n, { enumerable: !0, configurable: !0, writable: !0, value: t }) : V[n] = t;
|
|
3
|
-
var u = (V, n, t) => F(V, typeof n != "symbol" ? n + "" : n, t);
|
|
4
|
-
import { jsx as m } from "react/jsx-runtime";
|
|
5
|
-
import { Route as L, matchPath as d } from "react-router-dom";
|
|
6
|
-
import { SuspenseRoute as U } from "../Components/SuspenseRoute.js";
|
|
7
|
-
var O = /* @__PURE__ */ ((V) => (V[V.placeholder = 0] = "placeholder", V[V.alpha = 1] = "alpha", V[V.beta = 2] = "beta", V[V.release = 3] = "release", V))(O || {});
|
|
8
|
-
class j {
|
|
9
|
-
constructor() {
|
|
10
|
-
u(this, "hasValidRole", (n, t) => !n || !t ? !0 : n.some((l) => t.includes(l)));
|
|
11
|
-
u(this, "hasValidPermission", (n, t) => !n || !t ? !0 : n.some((l) => t.includes(l)));
|
|
12
|
-
u(this, "hasValidRoleOrPermission", (n, t, l, i) => n && t && this.hasValidRole(n, t) ? !0 : n && t && n.length > 0 ? !1 : this.hasValidPermission(l, i));
|
|
13
|
-
u(this, "hasValidFeatures", (n, t) => n == null ? !0 : t && n.some((l) => t.includes(l)));
|
|
14
|
-
u(this, "hasValidBusinessType", (n, t) => n == null || t === void 0 || t === null ? !0 : n == null ? void 0 : n.some((l) => l === t));
|
|
15
|
-
u(this, "hasValidUserConfig", (n, t) => n == null || n === null || !t ? !0 : Object.keys(t).some((l) => t[l] && (n == null ? void 0 : n.some((i) => i === l))));
|
|
16
|
-
u(this, "hasValidUserParam", (n, t) => n == null || n === null || !t ? !0 : Object.keys(t).some((l) => {
|
|
17
|
-
var i;
|
|
18
|
-
return t[l] && ((i = t[l]) == null ? void 0 : i.enabled) && (n == null ? void 0 : n.some((e) => e === l));
|
|
19
|
-
}));
|
|
20
|
-
u(this, "hasValidTags", (n, t) => !n || !t ? !0 : Object.keys(t).some((l) => t[l] && (n == null ? void 0 : n.some((i) => i === l))));
|
|
21
|
-
u(this, "isValidLink", (n, t, l, i, e, f, s, r) => !(!this.hasValidRoleOrPermission(n.roles, t, n.permissions, l) || !this.hasValidFeatures(n.features, i) || !this.hasValidUserConfig(n.userConfig, f) || !this.hasValidUserParam(n.userParams, s) || !this.hasValidBusinessType(n.businessTypes, e) || !this.hasValidTags(n.tags, r)));
|
|
22
|
-
u(this, "getPath", (n, t) => t && (n != null && n.url) ? n.url.replace(t, "") : n.url);
|
|
23
|
-
u(this, "getRoutesFromGroups", (n, t, l, i, e, f, s, r, h, k) => {
|
|
24
|
-
const c = [];
|
|
25
|
-
for (const o of n)
|
|
26
|
-
c.push(
|
|
27
|
-
this.getRoutesFromGroup(
|
|
28
|
-
o.links,
|
|
29
|
-
t,
|
|
30
|
-
l,
|
|
31
|
-
i,
|
|
32
|
-
e,
|
|
33
|
-
f,
|
|
34
|
-
s,
|
|
35
|
-
r,
|
|
36
|
-
h,
|
|
37
|
-
k
|
|
38
|
-
)
|
|
39
|
-
);
|
|
40
|
-
return c;
|
|
41
|
-
});
|
|
42
|
-
u(this, "getRoutesFromGroup", (n, t, l, i, e, f, s, r, h, k) => {
|
|
43
|
-
const c = [];
|
|
44
|
-
for (const o of n) {
|
|
45
|
-
if (o.component) {
|
|
46
|
-
if (!this.isValidLink(o, l, i, e, f, s, r, h)) continue;
|
|
47
|
-
c.push(
|
|
48
|
-
o.roles || o.features ? /* @__PURE__ */ m(
|
|
49
|
-
L,
|
|
50
|
-
{
|
|
51
|
-
path: this.getPath(o, k),
|
|
52
|
-
element: /* @__PURE__ */ m(t, { component: o.component, roles: o.roles })
|
|
53
|
-
},
|
|
54
|
-
o.key
|
|
55
|
-
) : /* @__PURE__ */ m(
|
|
56
|
-
L,
|
|
57
|
-
{
|
|
58
|
-
path: this.getPath(o, k),
|
|
59
|
-
element: /* @__PURE__ */ m(U, { children: o.component })
|
|
60
|
-
},
|
|
61
|
-
o.key
|
|
62
|
-
)
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
o.links && c.push(
|
|
66
|
-
...this.getRoutesFromGroup(
|
|
67
|
-
o.links,
|
|
68
|
-
t,
|
|
69
|
-
l,
|
|
70
|
-
i,
|
|
71
|
-
e,
|
|
72
|
-
f,
|
|
73
|
-
s,
|
|
74
|
-
r,
|
|
75
|
-
h,
|
|
76
|
-
k
|
|
77
|
-
)
|
|
78
|
-
);
|
|
79
|
-
}
|
|
80
|
-
return c;
|
|
81
|
-
});
|
|
82
|
-
u(this, "getLinksFromGroups", (n, t, l, i, e, f, s, r, h, k) => {
|
|
83
|
-
const c = [];
|
|
84
|
-
for (const o of n)
|
|
85
|
-
this.isValidLink(o, t, l, i, e, f, s, k) && (c.push(o), o.links && (o.links = this.getLinksFromGroup(
|
|
86
|
-
o.links,
|
|
87
|
-
t,
|
|
88
|
-
l,
|
|
89
|
-
i,
|
|
90
|
-
e,
|
|
91
|
-
f,
|
|
92
|
-
s,
|
|
93
|
-
r,
|
|
94
|
-
h,
|
|
95
|
-
k
|
|
96
|
-
)));
|
|
97
|
-
return c;
|
|
98
|
-
});
|
|
99
|
-
u(this, "getLinksFromGroup", (n, t, l, i, e, f, s, r, h, k) => {
|
|
100
|
-
const c = [];
|
|
101
|
-
for (const o of n) {
|
|
102
|
-
if (!this.isValidLink(o, t, l, i, e, f, s, k)) continue;
|
|
103
|
-
let a = o.url, p = o.activeUrl;
|
|
104
|
-
if (a && h)
|
|
105
|
-
for (const v in h)
|
|
106
|
-
a = a == null ? void 0 : a.replace(`:${v}`, h[v]), p && (p = p.replace(`:${v}`, h[v]));
|
|
107
|
-
o.url = a, o.activeUrl = p, c.push(o), o.links && (r && o.activeUrl && (o.isExpanded = o.url === r || r.indexOf(o.activeUrl) === 0), o.links = this.getLinksFromGroup(
|
|
108
|
-
o.links,
|
|
109
|
-
t,
|
|
110
|
-
l,
|
|
111
|
-
i,
|
|
112
|
-
e,
|
|
113
|
-
f,
|
|
114
|
-
s,
|
|
115
|
-
r,
|
|
116
|
-
h,
|
|
117
|
-
k
|
|
118
|
-
));
|
|
119
|
-
}
|
|
120
|
-
return c;
|
|
121
|
-
});
|
|
122
|
-
u(this, "getRoutesFromLinks", (n, t, l, i, e, f, s, r, h, k) => {
|
|
123
|
-
const c = [];
|
|
124
|
-
for (const o of n) {
|
|
125
|
-
if (o.component) {
|
|
126
|
-
if (!this.isValidLink(o, l, i, e, f, s, r, h)) continue;
|
|
127
|
-
c.push(
|
|
128
|
-
o.roles ? /* @__PURE__ */ m(
|
|
129
|
-
L,
|
|
130
|
-
{
|
|
131
|
-
path: this.getPath(o, k),
|
|
132
|
-
element: /* @__PURE__ */ m(t, { component: o.component, roles: o.roles })
|
|
133
|
-
},
|
|
134
|
-
o.key
|
|
135
|
-
) : /* @__PURE__ */ m(
|
|
136
|
-
L,
|
|
137
|
-
{
|
|
138
|
-
path: this.getPath(o, k) || "#",
|
|
139
|
-
element: /* @__PURE__ */ m(U, { children: o.component })
|
|
140
|
-
},
|
|
141
|
-
o.key
|
|
142
|
-
)
|
|
143
|
-
);
|
|
144
|
-
}
|
|
145
|
-
o.links && c.push(
|
|
146
|
-
...this.getRoutesFromLinks(
|
|
147
|
-
o.links,
|
|
148
|
-
t,
|
|
149
|
-
l,
|
|
150
|
-
i,
|
|
151
|
-
e,
|
|
152
|
-
f,
|
|
153
|
-
s,
|
|
154
|
-
r,
|
|
155
|
-
h,
|
|
156
|
-
k
|
|
157
|
-
)
|
|
158
|
-
);
|
|
159
|
-
}
|
|
160
|
-
return c;
|
|
161
|
-
});
|
|
162
|
-
u(this, "getLinksFromLinks", (n, t, l, i, e, f, s, r, h, k) => {
|
|
163
|
-
const c = [];
|
|
164
|
-
for (const o of n) {
|
|
165
|
-
if (!this.isValidLink(o, t, l, i, e, f, s, k)) continue;
|
|
166
|
-
let a = o.url, p = o.activeUrl;
|
|
167
|
-
if (a && h)
|
|
168
|
-
for (const v in h)
|
|
169
|
-
a = a == null ? void 0 : a.replace(`:${v}`, h[v]), p && (p = p.replace(`:${v}`, h[v]));
|
|
170
|
-
o.url = a, o.activeUrl = p, c.push(o), o.links && (r && o.activeUrl && (o.isExpanded = o.url === r || r.indexOf(o.activeUrl) === 0), o.links = this.getLinksFromLinks(
|
|
171
|
-
o.links,
|
|
172
|
-
t,
|
|
173
|
-
l,
|
|
174
|
-
i,
|
|
175
|
-
e,
|
|
176
|
-
f,
|
|
177
|
-
s,
|
|
178
|
-
r,
|
|
179
|
-
h,
|
|
180
|
-
k
|
|
181
|
-
));
|
|
182
|
-
}
|
|
183
|
-
return c;
|
|
184
|
-
});
|
|
185
|
-
u(this, "getSelectedNavKey", (n, t) => {
|
|
186
|
-
let l;
|
|
187
|
-
for (const i of n)
|
|
188
|
-
if (l = i.links.flatMap((e) => e.links ? e.links : [e]).find(
|
|
189
|
-
(e) => e.url === t || e.activeUrls && e.activeUrls.some((f) => d(f, t)) || d(e.url, t)
|
|
190
|
-
), l) break;
|
|
191
|
-
return l == null ? void 0 : l.key;
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
const w = new j();
|
|
196
|
-
export {
|
|
197
|
-
O as FeatureStatus,
|
|
198
|
-
w as RouteUtils
|
|
199
|
-
};
|
|
200
|
-
//# sourceMappingURL=RouteUtils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RouteUtils.js","sources":["../../../src/Utilities/RouteUtils.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { matchPath, Route } from \"react-router-dom\";\r\nimport { SuspenseRoute } from \"../Components/SuspenseRoute\";\r\n\r\nexport enum FeatureStatus {\r\n placeholder = 0,\r\n alpha = 1,\r\n beta = 2,\r\n release = 3,\r\n}\r\n\r\nexport interface IRouteProps {\r\n name?: string;\r\n path?: string;\r\n url?: string;\r\n key?: string | number;\r\n icon?: string;\r\n isCategory?: boolean;\r\n children?: React.ReactNode;\r\n /**\r\n * The component to render for this route's content (or a loading placeholder if `getComponent` is provided).\r\n */\r\n component?: any;\r\n /**\r\n * Function that loads the component asynchronously.\r\n * Notify when loading has finished using `cb`.\r\n * If `component` is provided, it will be rendered while waiting for the callback.\r\n */\r\n getComponent?: (cb: (component: any) => void) => void;\r\n\r\n /**\r\n * User roles to check for route rendering\r\n */\r\n roles?: string[];\r\n /**\r\n * User permissions to check for route rendering\r\n */\r\n permissions?: string[];\r\n /**\r\n * Practice features to check for route rendering\r\n */\r\n features?: number[];\r\n /**\r\n * Business types to check for route rendering\r\n */\r\n businessTypes?: number[];\r\n /**\r\n * User config/tags to check for route rendering\r\n */\r\n userConfig?: string[];\r\n /**\r\n * User params to check for route rendering\r\n */\r\n userParams?: string[];\r\n /**\r\n * Other tags to check for route rendering\r\n */\r\n tags?: string[];\r\n\r\n /**\r\n * Sub/inner links\r\n */\r\n links?: IRouteProps[];\r\n /**\r\n * Other URL to show this link as active\r\n */\r\n activeUrl?: string;\r\n /**\r\n * Other URLs to show this link as active\r\n */\r\n activeUrls?: string[];\r\n /**\r\n * Default expanded or collapsed\r\n */\r\n isExpanded?: boolean;\r\n /**\r\n * Feature status (to show bedge on link)\r\n */\r\n status?: FeatureStatus;\r\n}\r\nexport interface IRouteGroupProps {\r\n /**\r\n * Links to render within this group\r\n */\r\n links: IRouteProps[];\r\n\r\n /**\r\n * User roles to check for route rendering\r\n */\r\n roles?: string[];\r\n /**\r\n * User permissions to check for route rendering\r\n */\r\n permissions?: string[];\r\n /**\r\n * Practice features to check for route rendering\r\n */\r\n features?: number[];\r\n /**\r\n * User config/tags to check for route rendering\r\n */\r\n userConfig?: string[];\r\n /**\r\n * Other tags to check for route rendering\r\n */\r\n tags?: string[];\r\n\r\n /**\r\n * Other URL to show this link as active\r\n */\r\n activeUrls?: string[];\r\n /**\r\n * Default expanded or collapsed\r\n */\r\n isExpanded?: boolean;\r\n}\r\n\r\nclass RouteUtilsBase {\r\n private hasValidRole = (rolesRequired?: string[], rolesExists?: string[]) => {\r\n if (!rolesRequired || !rolesExists) return true;\r\n return rolesRequired.some((r) => rolesExists.includes(r));\r\n };\r\n\r\n private hasValidPermission = (permissionsRequired?: string[], permissionsExists?: string[]) => {\r\n if (!permissionsRequired || !permissionsExists) return true;\r\n return permissionsRequired.some((p) => permissionsExists.includes(p));\r\n };\r\n\r\n private hasValidRoleOrPermission = (\r\n rolesRequired?: string[],\r\n rolesExists?: string[],\r\n permissionsRequired?: string[],\r\n permissionsExists?: string[]\r\n ) => {\r\n // If roles are specified and user has valid roles, grant access\r\n if (rolesRequired && rolesExists && this.hasValidRole(rolesRequired, rolesExists)) {\r\n return true;\r\n }\r\n\r\n // If roles are specified but user doesn't have valid roles, deny access\r\n if (rolesRequired && rolesExists && rolesRequired.length > 0) {\r\n return false;\r\n }\r\n\r\n // If no roles specified, check permissions\r\n return this.hasValidPermission(permissionsRequired, permissionsExists);\r\n };\r\n private hasValidFeatures = (featuresRequired?: number[], featuresExists?: number[]) => {\r\n if (featuresRequired === undefined || featuresRequired === null) return true;\r\n return featuresExists && featuresRequired.some((r) => featuresExists.includes(r));\r\n };\r\n private hasValidBusinessType = (\r\n typesRequired?: number[],\r\n businessType?: number\r\n ) => {\r\n if (\r\n typesRequired === undefined ||\r\n typesRequired === null ||\r\n businessType === undefined ||\r\n businessType === null\r\n )\r\n return true;\r\n return typesRequired?.some((v) => v === businessType);\r\n };\r\n private hasValidUserConfig = (\r\n configRequired?: string[],\r\n configExists?: any\r\n ) => {\r\n if (configRequired == undefined || configRequired === null || !configExists) return true;\r\n\r\n return Object.keys(configExists).some((key: any) => {\r\n return configExists[key] && configRequired?.some((v) => v === key);\r\n });\r\n };\r\n private hasValidUserParam = (\r\n paramsRequired?: string[],\r\n paramsExists?: any\r\n ) => {\r\n if (paramsRequired == undefined || paramsRequired === null || !paramsExists) return true;\r\n\r\n return Object.keys(paramsExists).some((key: any) => {\r\n return paramsExists[key] && paramsExists[key]?.enabled && paramsRequired?.some((v) => v === key);\r\n });\r\n };\r\n private hasValidTags = (tagsRequired?: string[], tagsExists?: any) => {\r\n if (!tagsRequired || !tagsExists) return true;\r\n\r\n return Object.keys(tagsExists).some((key: any) => {\r\n return tagsExists[key] && tagsRequired?.some((v) => v === key);\r\n });\r\n };\r\n private isValidLink = (\r\n link: IRouteProps,\r\n rolesExists?: string[],\r\n permissionsExists?: string[],\r\n featuresExists?: number[],\r\n businessType?: number,\r\n configExists?: any,\r\n paramsExists?: any,\r\n tagsExists?: any\r\n ) => {\r\n //check for user role or permission (roles take precedence)\r\n if (!this.hasValidRoleOrPermission(link.roles, rolesExists, link.permissions, permissionsExists)) return false;\r\n //check for app feature\r\n if (!this.hasValidFeatures(link.features, featuresExists)) return false;\r\n //check for user config\r\n if (!this.hasValidUserConfig(link.userConfig, configExists)) return false;\r\n //check for user params\r\n if (!this.hasValidUserParam(link.userParams, paramsExists)) return false;\r\n //check for business type\r\n if (!this.hasValidBusinessType(link.businessTypes, businessType)) return false;\r\n //check for tag\r\n if (!this.hasValidTags(link.tags, tagsExists)) return false;\r\n\r\n return true;\r\n };\r\n\r\n private getPath = (link: IRouteProps, trimUrl?: string) => {\r\n if (trimUrl && link?.url) {\r\n return link.url.replace(trimUrl, '');\r\n }\r\n return link.url;\r\n };\r\n\r\n getRoutesFromGroups = (\r\n groups: IRouteGroupProps[],\r\n SecureRoute: any,\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n tags?: any,\r\n trimUrl?: string\r\n ): any[] => {\r\n const routes = [];\r\n\r\n for (const group of groups) {\r\n routes.push(\r\n this.getRoutesFromGroup(\r\n group.links,\r\n SecureRoute,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n tags,\r\n trimUrl\r\n )\r\n );\r\n }\r\n\r\n return routes;\r\n };\r\n getRoutesFromGroup = (\r\n links: IRouteProps[],\r\n SecureRoute: any,\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n tags?: any,\r\n trimUrl?: string\r\n ): any[] => {\r\n const routes = [];\r\n for (const link of links) {\r\n if (link.component) {\r\n //check for valid link\r\n if (!this.isValidLink(link, userRoles, userPermissions, features, businessType, userConfig, userParams, tags)) continue;\r\n\r\n //const exact = typeof link.exact === 'undefined' ? true : link.exact;\r\n routes.push(\r\n link.roles || link.features ? (\r\n <Route\r\n key={link.key}\r\n path={this.getPath(link, trimUrl)}\r\n element={<SecureRoute component={link.component} roles={link.roles} />}\r\n />\r\n ) : (\r\n <Route\r\n key={link.key}\r\n path={this.getPath(link, trimUrl)}\r\n element={<SuspenseRoute children={link.component} />}\r\n />\r\n )\r\n );\r\n }\r\n\r\n //add nested links\r\n if (link.links) {\r\n routes.push(\r\n ...this.getRoutesFromGroup(\r\n link.links,\r\n SecureRoute,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n tags,\r\n trimUrl\r\n )\r\n );\r\n }\r\n }\r\n return routes;\r\n };\r\n getLinksFromGroups = (\r\n links: IRouteGroupProps[],\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n currentPath?: string,\r\n params?: any,\r\n tags?: any\r\n ): IRouteGroupProps[] => {\r\n const groups: IRouteGroupProps[] = [];\r\n\r\n for (const link of links) {\r\n //check for valid link\r\n if (!this.isValidLink(link, userRoles, userPermissions, features, businessType, userConfig, userParams, tags)) continue;\r\n\r\n groups.push(link);\r\n\r\n //add nested links\r\n if (link.links) {\r\n link.links = this.getLinksFromGroup(\r\n link.links,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n currentPath,\r\n params,\r\n tags\r\n );\r\n }\r\n }\r\n return groups;\r\n };\r\n getLinksFromGroup = (\r\n links: IRouteProps[],\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n currentPath?: string,\r\n params?: any,\r\n tags?: any\r\n ) => {\r\n const routes: IRouteProps[] = [];\r\n\r\n for (const link of links) {\r\n //check for valid link\r\n if (!this.isValidLink(link, userRoles, userPermissions, features, businessType, userConfig, userParams, tags)) continue;\r\n\r\n let url = link.url,\r\n activeUrl = link.activeUrl;\r\n if (url && params) {\r\n for (const key in params) {\r\n url = url?.replace(`:${key}`, params[key]);\r\n if (activeUrl) activeUrl = activeUrl.replace(`:${key}`, params[key]);\r\n }\r\n }\r\n link.url = url;\r\n link.activeUrl = activeUrl;\r\n routes.push(link);\r\n\r\n //add nested links\r\n if (link.links) {\r\n if (currentPath && link.activeUrl) {\r\n link.isExpanded = link.url === currentPath || currentPath.indexOf(link.activeUrl) === 0;\r\n }\r\n link.links = this.getLinksFromGroup(\r\n link.links,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n currentPath,\r\n params,\r\n tags\r\n );\r\n }\r\n }\r\n return routes;\r\n };\r\n\r\n getRoutesFromLinks = (\r\n links: IRouteProps[],\r\n SecureRoute: any,\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n tags?: any,\r\n trimUrl?: string\r\n ): any[] => {\r\n const routes = [];\r\n for (const link of links) {\r\n if (link.component) {\r\n //check for valid link\r\n if (!this.isValidLink(link, userRoles, userPermissions, features, businessType, userConfig, userParams, tags)) continue;\r\n\r\n //const exact = typeof link.exact === 'undefined' ? true : link.exact;\r\n routes.push(\r\n link.roles ? (\r\n <Route\r\n key={link.key}\r\n path={this.getPath(link, trimUrl)}\r\n element={<SecureRoute component={link.component} roles={link.roles} />}\r\n />\r\n ) : (\r\n <Route\r\n key={link.key}\r\n path={this.getPath(link, trimUrl) || '#'}\r\n element={<SuspenseRoute children={link.component} />}\r\n />\r\n )\r\n );\r\n }\r\n\r\n //add nested links\r\n if (link.links) {\r\n routes.push(\r\n ...this.getRoutesFromLinks(\r\n link.links,\r\n SecureRoute,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n tags,\r\n trimUrl\r\n )\r\n );\r\n }\r\n }\r\n return routes;\r\n };\r\n getLinksFromLinks = (\r\n links: IRouteProps[],\r\n userRoles?: string[],\r\n userPermissions?: string[],\r\n features?: number[],\r\n businessType?: number,\r\n userConfig?: any,\r\n userParams?: any,\r\n currentPath?: string,\r\n params?: any,\r\n tags?: any\r\n ): IRouteProps[] => {\r\n const routes: IRouteProps[] = [];\r\n\r\n for (const link of links) {\r\n //check for valid link\r\n if (!this.isValidLink(link, userRoles, userPermissions, features, businessType, userConfig, userParams, tags)) continue;\r\n\r\n let url = link.url,\r\n activeUrl = link.activeUrl;\r\n if (url && params) {\r\n for (const key in params) {\r\n url = url?.replace(`:${key}`, params[key]);\r\n if (activeUrl) activeUrl = activeUrl.replace(`:${key}`, params[key]);\r\n }\r\n }\r\n link.url = url;\r\n link.activeUrl = activeUrl;\r\n routes.push(link);\r\n\r\n //add nested links\r\n if (link.links) {\r\n if (currentPath && link.activeUrl) {\r\n link.isExpanded = link.url === currentPath || currentPath.indexOf(link.activeUrl) === 0;\r\n }\r\n link.links = this.getLinksFromLinks(\r\n link.links,\r\n userRoles,\r\n userPermissions,\r\n features,\r\n businessType,\r\n userConfig,\r\n userParams,\r\n currentPath,\r\n params,\r\n tags\r\n );\r\n }\r\n }\r\n return routes;\r\n };\r\n\r\n getSelectedNavKey = (pagesGroup: IRouteGroupProps[], currentPath: string) => {\r\n let selectedLink: IRouteProps | undefined = undefined;\r\n for (const group of pagesGroup) {\r\n selectedLink = group.links\r\n .flatMap((l) => {\r\n if (l.links) return l.links;\r\n else return [l];\r\n })\r\n .find(\r\n (l) => l.url === currentPath ||\r\n (l.activeUrls && l.activeUrls.some((la: string) => matchPath(la, currentPath))) ||\r\n matchPath(l.url!, currentPath)\r\n );\r\n if (selectedLink) break;\r\n }\r\n return selectedLink?.key;\r\n };\r\n}\r\nexport const RouteUtils = new RouteUtilsBase();"],"names":["FeatureStatus","RouteUtilsBase","__publicField","rolesRequired","rolesExists","r","permissionsRequired","permissionsExists","p","featuresRequired","featuresExists","typesRequired","businessType","v","configRequired","configExists","key","paramsRequired","paramsExists","_a","tagsRequired","tagsExists","link","trimUrl","groups","SecureRoute","userRoles","userPermissions","features","userConfig","userParams","tags","routes","group","links","jsx","Route","SuspenseRoute","currentPath","params","url","activeUrl","pagesGroup","selectedLink","l","la","matchPath","RouteUtils"],"mappings":";;;;;;AAIO,IAAKA,sBAAAA,OACVA,EAAAA,EAAA,cAAc,CAAA,IAAd,eACAA,EAAAA,EAAA,QAAQ,CAAA,IAAR,SACAA,EAAAA,EAAA,OAAO,CAAA,IAAP,QACAA,EAAAA,EAAA,UAAU,CAAA,IAAV,WAJUA,IAAAA,KAAA,CAAA,CAAA;AAiHZ,MAAMC,EAAe;AAAA,EAArB;AACU,IAAAC,EAAA,sBAAe,CAACC,GAA0BC,MAC5C,CAACD,KAAiB,CAACC,IAAoB,KACpCD,EAAc,KAAK,CAACE,MAAMD,EAAY,SAASC,CAAC,CAAC;AAGlD,IAAAH,EAAA,4BAAqB,CAACI,GAAgCC,MACxD,CAACD,KAAuB,CAACC,IAA0B,KAChDD,EAAoB,KAAK,CAACE,MAAMD,EAAkB,SAASC,CAAC,CAAC;AAG9D,IAAAN,EAAA,kCAA2B,CACjCC,GACAC,GACAE,GACAC,MAGIJ,KAAiBC,KAAe,KAAK,aAAaD,GAAeC,CAAW,IACvE,KAILD,KAAiBC,KAAeD,EAAc,SAAS,IAClD,KAIF,KAAK,mBAAmBG,GAAqBC,CAAiB;AAE/D,IAAAL,EAAA,0BAAmB,CAACO,GAA6BC,MACjBD,KAAqB,OAAa,KACjEC,KAAkBD,EAAiB,KAAK,CAACJ,MAAMK,EAAe,SAASL,CAAC,CAAC;AAE1E,IAAAH,EAAA,8BAAuB,CAC7BS,GACAC,MAIED,KAAkB,QAClBC,MAAiB,UACjBA,MAAiB,OAEV,KACFD,KAAA,gBAAAA,EAAe,KAAK,CAACE,MAAMA,MAAMD;AAElC,IAAAV,EAAA,4BAAqB,CAC3BY,GACAC,MAEID,KAAkB,QAAaA,MAAmB,QAAQ,CAACC,IAAqB,KAE7E,OAAO,KAAKA,CAAY,EAAE,KAAK,CAACC,MAC9BD,EAAaC,CAAG,MAAKF,KAAA,gBAAAA,EAAgB,KAAK,CAACD,MAAMA,MAAMG,GAC/D;AAEK,IAAAd,EAAA,2BAAoB,CAC1Be,GACAC,MAEID,KAAkB,QAAaA,MAAmB,QAAQ,CAACC,IAAqB,KAE7E,OAAO,KAAKA,CAAY,EAAE,KAAK,CAACF,MAAa;;AAClD,aAAOE,EAAaF,CAAG,OAAKG,IAAAD,EAAaF,CAAG,MAAhB,gBAAAG,EAAmB,aAAWF,KAAA,gBAAAA,EAAgB,KAAK,CAACJ,MAAMA,MAAMG;AAAA,IAC9F,CAAC;AAEK,IAAAd,EAAA,sBAAe,CAACkB,GAAyBC,MAC3C,CAACD,KAAgB,CAACC,IAAmB,KAElC,OAAO,KAAKA,CAAU,EAAE,KAAK,CAACL,MAC5BK,EAAWL,CAAG,MAAKI,KAAA,gBAAAA,EAAc,KAAK,CAACP,MAAMA,MAAMG,GAC3D;AAEK,IAAAd,EAAA,qBAAc,CACpBoB,GACAlB,GACAG,GACAG,GACAE,GACAG,GACAG,GACAG,MAGI,GAAC,KAAK,yBAAyBC,EAAK,OAAOlB,GAAakB,EAAK,aAAaf,CAAiB,KAE3F,CAAC,KAAK,iBAAiBe,EAAK,UAAUZ,CAAc,KAEpD,CAAC,KAAK,mBAAmBY,EAAK,YAAYP,CAAY,KAEtD,CAAC,KAAK,kBAAkBO,EAAK,YAAYJ,CAAY,KAErD,CAAC,KAAK,qBAAqBI,EAAK,eAAeV,CAAY,KAE3D,CAAC,KAAK,aAAaU,EAAK,MAAMD,CAAU;AAKtC,IAAAnB,EAAA,iBAAU,CAACoB,GAAmBC,MAChCA,MAAWD,KAAA,QAAAA,EAAM,OACZA,EAAK,IAAI,QAAQC,GAAS,EAAE,IAE9BD,EAAK;AAGd,IAAApB,EAAA,6BAAsB,CACpBsB,GACAC,GACAC,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAC,GACAR,MACU;AACV,YAAMS,IAAS,CAAA;AAEf,iBAAWC,KAAST;AAClB,QAAAQ,EAAO;AAAA,UACL,KAAK;AAAA,YACHC,EAAM;AAAA,YACNR;AAAA,YACAC;AAAA,YACAC;AAAA,YACAC;AAAA,YACAhB;AAAA,YACAiB;AAAA,YACAC;AAAA,YACAC;AAAA,YACAR;AAAA,UAAA;AAAA,QACF;AAIJ,aAAOS;AAAA,IACT;AACA,IAAA9B,EAAA,4BAAqB,CACnBgC,GACAT,GACAC,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAC,GACAR,MACU;AACV,YAAMS,IAAS,CAAA;AACf,iBAAWV,KAAQY,GAAO;AACxB,YAAIZ,EAAK,WAAW;AAElB,cAAI,CAAC,KAAK,YAAYA,GAAMI,GAAWC,GAAiBC,GAAUhB,GAAciB,GAAYC,GAAYC,CAAI,EAAG;AAG/G,UAAAC,EAAO;AAAA,YACLV,EAAK,SAASA,EAAK,WACjB,gBAAAa;AAAA,cAACC;AAAA,cAAA;AAAA,gBAEC,MAAM,KAAK,QAAQd,GAAMC,CAAO;AAAA,gBAChC,2BAAUE,GAAA,EAAY,WAAWH,EAAK,WAAW,OAAOA,EAAK,MAAA,CAAO;AAAA,cAAA;AAAA,cAF/DA,EAAK;AAAA,YAAA,IAKZ,gBAAAa;AAAA,cAACC;AAAA,cAAA;AAAA,gBAEC,MAAM,KAAK,QAAQd,GAAMC,CAAO;AAAA,gBAChC,SAAS,gBAAAY,EAACE,GAAA,EAAc,UAAUf,EAAK,UAAA,CAAW;AAAA,cAAA;AAAA,cAF7CA,EAAK;AAAA,YAAA;AAAA,UAGZ;AAAA,QAGN;AAGA,QAAIA,EAAK,SACPU,EAAO;AAAA,UACL,GAAG,KAAK;AAAA,YACNV,EAAK;AAAA,YACLG;AAAA,YACAC;AAAA,YACAC;AAAA,YACAC;AAAA,YACAhB;AAAA,YACAiB;AAAA,YACAC;AAAA,YACAC;AAAA,YACAR;AAAA,UAAA;AAAA,QACF;AAAA,MAGN;AACA,aAAOS;AAAA,IACT;AACA,IAAA9B,EAAA,4BAAqB,CACnBgC,GACAR,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAQ,GACAC,GACAR,MACuB;AACvB,YAAMP,IAA6B,CAAA;AAEnC,iBAAWF,KAAQY;AAEjB,QAAK,KAAK,YAAYZ,GAAMI,GAAWC,GAAiBC,GAAUhB,GAAciB,GAAYC,GAAYC,CAAI,MAE5GP,EAAO,KAAKF,CAAI,GAGZA,EAAK,UACPA,EAAK,QAAQ,KAAK;AAAA,UAChBA,EAAK;AAAA,UACLI;AAAA,UACAC;AAAA,UACAC;AAAA,UACAhB;AAAA,UACAiB;AAAA,UACAC;AAAA,UACAQ;AAAA,UACAC;AAAA,UACAR;AAAA,QAAA;AAIN,aAAOP;AAAA,IACT;AACA,IAAAtB,EAAA,2BAAoB,CAClBgC,GACAR,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAQ,GACAC,GACAR,MACG;AACH,YAAMC,IAAwB,CAAA;AAE9B,iBAAWV,KAAQY,GAAO;AAExB,YAAI,CAAC,KAAK,YAAYZ,GAAMI,GAAWC,GAAiBC,GAAUhB,GAAciB,GAAYC,GAAYC,CAAI,EAAG;AAE/G,YAAIS,IAAMlB,EAAK,KACbmB,IAAYnB,EAAK;AACnB,YAAIkB,KAAOD;AACT,qBAAWvB,KAAOuB;AAChB,YAAAC,IAAMA,KAAA,gBAAAA,EAAK,QAAQ,IAAIxB,CAAG,IAAIuB,EAAOvB,CAAG,IACpCyB,UAAuBA,EAAU,QAAQ,IAAIzB,CAAG,IAAIuB,EAAOvB,CAAG,CAAC;AAGvE,QAAAM,EAAK,MAAMkB,GACXlB,EAAK,YAAYmB,GACjBT,EAAO,KAAKV,CAAI,GAGZA,EAAK,UACHgB,KAAehB,EAAK,cACtBA,EAAK,aAAaA,EAAK,QAAQgB,KAAeA,EAAY,QAAQhB,EAAK,SAAS,MAAM,IAExFA,EAAK,QAAQ,KAAK;AAAA,UAChBA,EAAK;AAAA,UACLI;AAAA,UACAC;AAAA,UACAC;AAAA,UACAhB;AAAA,UACAiB;AAAA,UACAC;AAAA,UACAQ;AAAA,UACAC;AAAA,UACAR;AAAA,QAAA;AAAA,MAGN;AACA,aAAOC;AAAA,IACT;AAEA,IAAA9B,EAAA,4BAAqB,CACnBgC,GACAT,GACAC,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAC,GACAR,MACU;AACV,YAAMS,IAAS,CAAA;AACf,iBAAWV,KAAQY,GAAO;AACxB,YAAIZ,EAAK,WAAW;AAElB,cAAI,CAAC,KAAK,YAAYA,GAAMI,GAAWC,GAAiBC,GAAUhB,GAAciB,GAAYC,GAAYC,CAAI,EAAG;AAG/G,UAAAC,EAAO;AAAA,YACLV,EAAK,QACH,gBAAAa;AAAA,cAACC;AAAA,cAAA;AAAA,gBAEC,MAAM,KAAK,QAAQd,GAAMC,CAAO;AAAA,gBAChC,2BAAUE,GAAA,EAAY,WAAWH,EAAK,WAAW,OAAOA,EAAK,MAAA,CAAO;AAAA,cAAA;AAAA,cAF/DA,EAAK;AAAA,YAAA,IAKZ,gBAAAa;AAAA,cAACC;AAAA,cAAA;AAAA,gBAEC,MAAM,KAAK,QAAQd,GAAMC,CAAO,KAAK;AAAA,gBACrC,SAAS,gBAAAY,EAACE,GAAA,EAAc,UAAUf,EAAK,UAAA,CAAW;AAAA,cAAA;AAAA,cAF7CA,EAAK;AAAA,YAAA;AAAA,UAGZ;AAAA,QAGN;AAGA,QAAIA,EAAK,SACPU,EAAO;AAAA,UACL,GAAG,KAAK;AAAA,YACNV,EAAK;AAAA,YACLG;AAAA,YACAC;AAAA,YACAC;AAAA,YACAC;AAAA,YACAhB;AAAA,YACAiB;AAAA,YACAC;AAAA,YACAC;AAAA,YACAR;AAAA,UAAA;AAAA,QACF;AAAA,MAGN;AACA,aAAOS;AAAA,IACT;AACA,IAAA9B,EAAA,2BAAoB,CAClBgC,GACAR,GACAC,GACAC,GACAhB,GACAiB,GACAC,GACAQ,GACAC,GACAR,MACkB;AAClB,YAAMC,IAAwB,CAAA;AAE9B,iBAAWV,KAAQY,GAAO;AAExB,YAAI,CAAC,KAAK,YAAYZ,GAAMI,GAAWC,GAAiBC,GAAUhB,GAAciB,GAAYC,GAAYC,CAAI,EAAG;AAE/G,YAAIS,IAAMlB,EAAK,KACbmB,IAAYnB,EAAK;AACnB,YAAIkB,KAAOD;AACT,qBAAWvB,KAAOuB;AAChB,YAAAC,IAAMA,KAAA,gBAAAA,EAAK,QAAQ,IAAIxB,CAAG,IAAIuB,EAAOvB,CAAG,IACpCyB,UAAuBA,EAAU,QAAQ,IAAIzB,CAAG,IAAIuB,EAAOvB,CAAG,CAAC;AAGvE,QAAAM,EAAK,MAAMkB,GACXlB,EAAK,YAAYmB,GACjBT,EAAO,KAAKV,CAAI,GAGZA,EAAK,UACHgB,KAAehB,EAAK,cACtBA,EAAK,aAAaA,EAAK,QAAQgB,KAAeA,EAAY,QAAQhB,EAAK,SAAS,MAAM,IAExFA,EAAK,QAAQ,KAAK;AAAA,UAChBA,EAAK;AAAA,UACLI;AAAA,UACAC;AAAA,UACAC;AAAA,UACAhB;AAAA,UACAiB;AAAA,UACAC;AAAA,UACAQ;AAAA,UACAC;AAAA,UACAR;AAAA,QAAA;AAAA,MAGN;AACA,aAAOC;AAAA,IACT;AAEA,IAAA9B,EAAA,2BAAoB,CAACwC,GAAgCJ,MAAwB;AAC3E,UAAIK;AACJ,iBAAWV,KAASS;AAWlB,YAVAC,IAAeV,EAAM,MAClB,QAAQ,CAACW,MACJA,EAAE,QAAcA,EAAE,QACV,CAACA,CAAC,CACf,EACA;AAAA,UACC,CAACA,MAAMA,EAAE,QAAQN,KACdM,EAAE,cAAcA,EAAE,WAAW,KAAK,CAACC,MAAeC,EAAUD,GAAIP,CAAW,CAAC,KAC7EQ,EAAUF,EAAE,KAAMN,CAAW;AAAA,QAAA,GAE/BK,EAAc;AAEpB,aAAOA,KAAA,gBAAAA,EAAc;AAAA,IACvB;AAAA;AACF;AACO,MAAMI,IAAa,IAAI9C,EAAA;"}
|