@routebot/constants 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -0
- package/constants/constants.js +177 -0
- package/constants/countries.constants.js +168 -0
- package/constants/permission.constants.js +26 -0
- package/constants/plans.constants.js +10 -0
- package/constants/process.constants.js +7 -0
- package/constants/service.constants.js +37 -0
- package/constants/sms.constants.js +200 -0
- package/constants/stock.constants.js +96 -0
- package/index.js +10 -0
- package/package.json +26 -0
package/README.md
ADDED
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
const CURRENT_EDUCATION_YEAR_ID = "661c8d1e862b3f2c307b1276";
|
|
2
|
+
|
|
3
|
+
const IOS_APP_LINK = "https://tinyurl.com/servistesinios";
|
|
4
|
+
const ANDROID_APP_LINK = "https://tinyurl.com/servistesinandroid";
|
|
5
|
+
|
|
6
|
+
// people that can use app
|
|
7
|
+
const USER_TYPES = {
|
|
8
|
+
DRIVER: "50",
|
|
9
|
+
SCHOOL_PARENT: "2",
|
|
10
|
+
PERSONEL: "10",
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const CLIENT_ROLES = {
|
|
14
|
+
SUPER_ADMIN: "super_admin",
|
|
15
|
+
OWNER: "owner",
|
|
16
|
+
ADMIN: "admin",
|
|
17
|
+
EDITOR: "editor",
|
|
18
|
+
VIEWER: "viewer",
|
|
19
|
+
DEMO: "demo",
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const SERVICE_TYPES = {
|
|
23
|
+
SCHOOL: "school",
|
|
24
|
+
SOUTHWIND: "southwind", //school ile ayni sadece isimlendirmelerde personel yazmasi gerekiyor
|
|
25
|
+
PERSONEL: "personel", // bu farklı olan
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const SCHOOL_TYPES = {
|
|
29
|
+
SCHOOL: "1",
|
|
30
|
+
PERSONEL: "2",
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
// Helpers
|
|
34
|
+
function isSchoolPersonel(school) {
|
|
35
|
+
return school?.type === SCHOOL_TYPES.PERSONEL;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const OPTION_TYPES = {
|
|
39
|
+
TR: {
|
|
40
|
+
USER_TYPES_SCHOOL: [
|
|
41
|
+
{ value: USER_TYPES.SCHOOL_PARENT, label: "Veli" },
|
|
42
|
+
{ value: USER_TYPES.DRIVER, label: "Sürücü" },
|
|
43
|
+
],
|
|
44
|
+
|
|
45
|
+
USER_TYPES_PERSONEL: [
|
|
46
|
+
{ value: USER_TYPES.PERSONEL, label: "Personel" },
|
|
47
|
+
{ value: USER_TYPES.DRIVER, label: "Sürücü" },
|
|
48
|
+
],
|
|
49
|
+
},
|
|
50
|
+
|
|
51
|
+
EN: {
|
|
52
|
+
USER_TYPES_SCHOOL: [
|
|
53
|
+
{ value: USER_TYPES.SCHOOL_PARENT, label: "Parent" },
|
|
54
|
+
{ value: USER_TYPES.DRIVER, label: "Driver" },
|
|
55
|
+
],
|
|
56
|
+
|
|
57
|
+
USER_TYPES_PERSONEL: [
|
|
58
|
+
{ value: USER_TYPES.PERSONEL, label: "Passenger" },
|
|
59
|
+
{ value: USER_TYPES.DRIVER, label: "Driver" },
|
|
60
|
+
],
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const SPECIAL_USER_IDS = {
|
|
65
|
+
DEMO_USER: "65dc104970167a3c6ca464b0",
|
|
66
|
+
DEMO_DRIVER: "61aee5393958380016e7db4b",
|
|
67
|
+
SYSTEM_TEST_USER: "61e3c7a2cd698a001617f59e",
|
|
68
|
+
SYSTEM_TEST_DRIVER: "62e32eef3da7b2508040c4d3",
|
|
69
|
+
DEFAULT_DRIVER: "63299827ef13360016a66e81",
|
|
70
|
+
UNKOWN_USER: "6255585f62dc1a001650b3ef",
|
|
71
|
+
BENIM_NUMARAM_TEST: "68068979156e55241cc7d6d8",
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
const SPECIAL_STUDENT_IDS = {
|
|
75
|
+
DEMO_STUDENT_1: "61c04423d794c8001693b322",
|
|
76
|
+
DEMO_STUDENT_2: "61c04443d794c8001693b329",
|
|
77
|
+
DEMO_STUDENT_3: "61c0445bd794c8001693b32f",
|
|
78
|
+
UNKOWN_STUDENT: "6718df09c33300ede6031275",
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
const SPECIAL_RELATION_IDS = {
|
|
82
|
+
DEMO_RELATION_1: "66ec34a3e9c63300158486a5",
|
|
83
|
+
DEMO_RELATION_2: "66eec2cfdc3f2b00154c3eaa",
|
|
84
|
+
SYSTEM_TEST_RELATION_1: "66eedb022c1eb2001519ae5b",
|
|
85
|
+
SYSTEM_TEST_RELATION_2: "66eedb1606a73e001511b514",
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
const SPECIAL_VEHICLE_ROUTEIDS = {
|
|
89
|
+
DEMO_VEHICLE_ROUTE_1: "66eeda6f6e82d500152a739c",
|
|
90
|
+
DEMO_VEHICLE_ROUTE_2: "66f16438456f910015197941",
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
const SPECIAL_ATTENDANT_IDS = {
|
|
94
|
+
SYSTEM_ATTENDANT: "688e90e2bdb41d0b22efdb43",
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const FORBIDDEN_IDS = [
|
|
98
|
+
...Object.values(SPECIAL_USER_IDS),
|
|
99
|
+
...Object.values(SPECIAL_STUDENT_IDS),
|
|
100
|
+
...Object.values(SPECIAL_RELATION_IDS),
|
|
101
|
+
...Object.values(SPECIAL_VEHICLE_ROUTEIDS),
|
|
102
|
+
...Object.values(SPECIAL_ATTENDANT_IDS),
|
|
103
|
+
];
|
|
104
|
+
|
|
105
|
+
const HTTP_CODES = {
|
|
106
|
+
OK: 200,
|
|
107
|
+
CREATED: 201,
|
|
108
|
+
ACCEPTED: 202,
|
|
109
|
+
NO_CONTENT: 204,
|
|
110
|
+
MOVED_PERMANENTLY: 301,
|
|
111
|
+
FOUND: 302,
|
|
112
|
+
NOT_MODIFIED: 304,
|
|
113
|
+
BAD_REQUEST: 400,
|
|
114
|
+
UNAUTHORIZED: 401,
|
|
115
|
+
FORBIDDEN: 403,
|
|
116
|
+
NOT_FOUND: 404,
|
|
117
|
+
METHOD_NOT_ALLOWED: 405,
|
|
118
|
+
CONFLICT: 409,
|
|
119
|
+
GONE: 410,
|
|
120
|
+
PAYLOAD_TOO_LARGE: 413,
|
|
121
|
+
UNSUPPORTED_MEDIA_TYPE: 415,
|
|
122
|
+
UNPROCESSABLE_ENTITY: 422,
|
|
123
|
+
TOO_MANY_REQUESTS: 429,
|
|
124
|
+
ITEM_NOT_FOUND: 430,
|
|
125
|
+
INTERNAL_SERVER_ERROR: 500,
|
|
126
|
+
NOT_IMPLEMENTED: 501,
|
|
127
|
+
BAD_GATEWAY: 502,
|
|
128
|
+
SERVICE_UNAVAILABLE: 503,
|
|
129
|
+
GATEWAY_TIMEOUT: 504,
|
|
130
|
+
EMAIL_NOT_VERIFIED: 510,
|
|
131
|
+
INVALID_ORIGIN_POINT: 511,
|
|
132
|
+
INVALID_DESTINATION_POINT: 512,
|
|
133
|
+
DIRECTION_NOT_FOUND: 513,
|
|
134
|
+
FILE_NOT_FOUND: 514,
|
|
135
|
+
INVALID_INPUT: 515,
|
|
136
|
+
NO_GENEL_LISTE_SHEET: 516,
|
|
137
|
+
NOT_ACTIONABLE: 517,
|
|
138
|
+
USER_HAS_RELATION: 601,
|
|
139
|
+
USER_IN_A_SERVICE: 602,
|
|
140
|
+
STUDENT_HAS_RELATION: 603,
|
|
141
|
+
STUDENT_IN_A_SERVICE: 604,
|
|
142
|
+
STUDENT_HAS_CONTRACT: 605,
|
|
143
|
+
STUDENT_ALREADY_EXISTS: 606,
|
|
144
|
+
RELATION_ALREADY_EXISTS: 607,
|
|
145
|
+
INVALID_LOCATION: 608,
|
|
146
|
+
SMS_NOT_SENT: 609,
|
|
147
|
+
STOP_HAS_USER: 610,
|
|
148
|
+
SAME_USER_WITH_SAME_PHONE: 611,
|
|
149
|
+
MULTIPLE_SHEETS_NOT_ALLOWED_IN_EXCEL: 612,
|
|
150
|
+
CONTRACT_HAS_RECEIPT: 613,
|
|
151
|
+
CONTRACT_HAS_WITHDRAW: 614,
|
|
152
|
+
INVALID_EXCEL_FORMAT: 615,
|
|
153
|
+
VEHICLE_ALREADY_EXISTS: 616,
|
|
154
|
+
IDENTITY_ALREADY_EXISTS: 617,
|
|
155
|
+
USER_IN_A_DRIVER_DETAILS: 618,
|
|
156
|
+
ATTENDANT_HAS_VEHICLE: 619,
|
|
157
|
+
SCHOOL_HAD_TIED_TO_DATA: 620,
|
|
158
|
+
TRANSFERREGION_HAS_USER: 621,
|
|
159
|
+
TRANSFERREGION_HAS_PERSONEL_SERVICE: 622,
|
|
160
|
+
TRANSFERREGION_HAS_VEHICLE_ROUTE: 623,
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
module.exports = {
|
|
164
|
+
HTTP_CODES,
|
|
165
|
+
CLIENT_ROLES,
|
|
166
|
+
SERVICE_TYPES,
|
|
167
|
+
OPTION_TYPES,
|
|
168
|
+
SPECIAL_USER_IDS,
|
|
169
|
+
SPECIAL_STUDENT_IDS,
|
|
170
|
+
FORBIDDEN_IDS,
|
|
171
|
+
CURRENT_EDUCATION_YEAR_ID,
|
|
172
|
+
USER_TYPES,
|
|
173
|
+
IOS_APP_LINK,
|
|
174
|
+
ANDROID_APP_LINK,
|
|
175
|
+
SCHOOL_TYPES,
|
|
176
|
+
isSchoolPersonel,
|
|
177
|
+
};
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
const COUNTRIES = [
|
|
2
|
+
{ code: "TR", value_en: "Turkey", value_tr: "Türkiye", phonePrefix: "+90", smsEnabled: true },
|
|
3
|
+
{
|
|
4
|
+
code: "US",
|
|
5
|
+
value_en: "United States",
|
|
6
|
+
value_tr: "Amerika Birleşik Devletleri",
|
|
7
|
+
phonePrefix: "+1",
|
|
8
|
+
smsEnabled: false,
|
|
9
|
+
},
|
|
10
|
+
{ code: "GB", value_en: "United Kingdom", value_tr: "Birleşik Krallık", phonePrefix: "+44", smsEnabled: false },
|
|
11
|
+
{ code: "DE", value_en: "Germany", value_tr: "Almanya", phonePrefix: "+49", smsEnabled: false },
|
|
12
|
+
{ code: "FR", value_en: "France", value_tr: "Fransa", phonePrefix: "+33", smsEnabled: false },
|
|
13
|
+
{ code: "NL", value_en: "Netherlands", value_tr: "Hollanda", phonePrefix: "+31", smsEnabled: false },
|
|
14
|
+
{ code: "CA", value_en: "Canada", value_tr: "Kanada", phonePrefix: "+1", smsEnabled: false },
|
|
15
|
+
{ code: "ES", value_en: "Spain", value_tr: "İspanya", phonePrefix: "+34", smsEnabled: false },
|
|
16
|
+
{ code: "IT", value_en: "Italy", value_tr: "İtalya", phonePrefix: "+39", smsEnabled: false },
|
|
17
|
+
{
|
|
18
|
+
code: "AE",
|
|
19
|
+
value_en: "United Arab Emirates",
|
|
20
|
+
value_tr: "Birleşik Arap Emirlikleri",
|
|
21
|
+
phonePrefix: "+971",
|
|
22
|
+
smsEnabled: false,
|
|
23
|
+
},
|
|
24
|
+
{ code: "RU", value_en: "Russia", value_tr: "Rusya", phonePrefix: "+7", smsEnabled: false },
|
|
25
|
+
{ code: "IN", value_en: "India", value_tr: "Hindistan", phonePrefix: "+91", smsEnabled: false },
|
|
26
|
+
{ code: "CN", value_en: "China", value_tr: "Çin", phonePrefix: "+86", smsEnabled: false },
|
|
27
|
+
{ code: "JP", value_en: "Japan", value_tr: "Japonya", phonePrefix: "+81", smsEnabled: false },
|
|
28
|
+
{ code: "KR", value_en: "South Korea", value_tr: "Güney Kore", phonePrefix: "+82", smsEnabled: false },
|
|
29
|
+
{ code: "BR", value_en: "Brazil", value_tr: "Brezilya", phonePrefix: "+55", smsEnabled: false },
|
|
30
|
+
{ code: "AR", value_en: "Argentina", value_tr: "Arjantin", phonePrefix: "+54", smsEnabled: false },
|
|
31
|
+
{ code: "MX", value_en: "Mexico", value_tr: "Meksika", phonePrefix: "+52", smsEnabled: false },
|
|
32
|
+
{ code: "SA", value_en: "Saudi Arabia", value_tr: "Suudi Arabistan", phonePrefix: "+966", smsEnabled: false },
|
|
33
|
+
{ code: "ZA", value_en: "South Africa", value_tr: "Güney Afrika", phonePrefix: "+27", smsEnabled: false },
|
|
34
|
+
{ code: "PK", value_en: "Pakistan", value_tr: "Pakistan", phonePrefix: "+92", smsEnabled: false },
|
|
35
|
+
{ code: "ID", value_en: "Indonesia", value_tr: "Endonezya", phonePrefix: "+62", smsEnabled: false },
|
|
36
|
+
{ code: "BD", value_en: "Bangladesh", value_tr: "Bangladeş", phonePrefix: "+880", smsEnabled: false },
|
|
37
|
+
{ code: "IR", value_en: "Iran", value_tr: "İran", phonePrefix: "+98", smsEnabled: false },
|
|
38
|
+
{ code: "IQ", value_en: "Iraq", value_tr: "Irak", phonePrefix: "+964", smsEnabled: false },
|
|
39
|
+
{ code: "SY", value_en: "Syria", value_tr: "Suriye", phonePrefix: "+963", smsEnabled: false },
|
|
40
|
+
{ code: "JO", value_en: "Jordan", value_tr: "Ürdün", phonePrefix: "+962", smsEnabled: false },
|
|
41
|
+
{ code: "LB", value_en: "Lebanon", value_tr: "Lübnan", phonePrefix: "+961", smsEnabled: false },
|
|
42
|
+
{ code: "UA", value_en: "Ukraine", value_tr: "Ukrayna", phonePrefix: "+380", smsEnabled: false },
|
|
43
|
+
{ code: "PL", value_en: "Poland", value_tr: "Polonya", phonePrefix: "+48", smsEnabled: false },
|
|
44
|
+
{ code: "SE", value_en: "Sweden", value_tr: "İsveç", phonePrefix: "+46", smsEnabled: false },
|
|
45
|
+
{ code: "NO", value_en: "Norway", value_tr: "Norveç", phonePrefix: "+47", smsEnabled: false },
|
|
46
|
+
{ code: "FI", value_en: "Finland", value_tr: "Finlandiya", phonePrefix: "+358", smsEnabled: false },
|
|
47
|
+
{ code: "GR", value_en: "Greece", value_tr: "Yunanistan", phonePrefix: "+30", smsEnabled: false },
|
|
48
|
+
{ code: "CH", value_en: "Switzerland", value_tr: "İsviçre", phonePrefix: "+41", smsEnabled: false },
|
|
49
|
+
{ code: "BE", value_en: "Belgium", value_tr: "Belçika", phonePrefix: "+32", smsEnabled: false },
|
|
50
|
+
{ code: "AT", value_en: "Austria", value_tr: "Avusturya", phonePrefix: "+43", smsEnabled: false },
|
|
51
|
+
{ code: "PT", value_en: "Portugal", value_tr: "Portekiz", phonePrefix: "+351", smsEnabled: false },
|
|
52
|
+
{ code: "CO", value_en: "Colombia", value_tr: "Kolombiya", phonePrefix: "+57", smsEnabled: false },
|
|
53
|
+
{ code: "NG", value_en: "Nigeria", value_tr: "Nijerya", phonePrefix: "+234", smsEnabled: false },
|
|
54
|
+
{ code: "KE", value_en: "Kenya", value_tr: "Kenya", phonePrefix: "+254", smsEnabled: false },
|
|
55
|
+
{ code: "EG", value_en: "Egypt", value_tr: "Mısır", phonePrefix: "+20", smsEnabled: false },
|
|
56
|
+
{ code: "AU", value_en: "Australia", value_tr: "Avustralya", phonePrefix: "+61", smsEnabled: false },
|
|
57
|
+
{ code: "NZ", value_en: "New Zealand", value_tr: "Yeni Zelanda", phonePrefix: "+64", smsEnabled: false },
|
|
58
|
+
{ code: "SG", value_en: "Singapore", value_tr: "Singapur", phonePrefix: "+65", smsEnabled: false },
|
|
59
|
+
{ code: "MY", value_en: "Malaysia", value_tr: "Malezya", phonePrefix: "+60", smsEnabled: false },
|
|
60
|
+
{ code: "TH", value_en: "Thailand", value_tr: "Tayland", phonePrefix: "+66", smsEnabled: false },
|
|
61
|
+
{ code: "VN", value_en: "Vietnam", value_tr: "Vietnam", phonePrefix: "+84", smsEnabled: false },
|
|
62
|
+
{ code: "PH", value_en: "Philippines", value_tr: "Filipinler", phonePrefix: "+63", smsEnabled: false },
|
|
63
|
+
{ code: "HK", value_en: "Hong Kong", value_tr: "Hong Kong", phonePrefix: "+852", smsEnabled: false },
|
|
64
|
+
{ code: "TW", value_en: "Taiwan", value_tr: "Tayvan", phonePrefix: "+886", smsEnabled: false },
|
|
65
|
+
{ code: "IL", value_en: "Israel", value_tr: "İsrail", phonePrefix: "+972", smsEnabled: false },
|
|
66
|
+
{ code: "CZ", value_en: "Czech Republic", value_tr: "Çekya", phonePrefix: "+420", smsEnabled: false },
|
|
67
|
+
{ code: "HU", value_en: "Hungary", value_tr: "Macaristan", phonePrefix: "+36", smsEnabled: false },
|
|
68
|
+
{ code: "RO", value_en: "Romania", value_tr: "Romanya", phonePrefix: "+40", smsEnabled: false },
|
|
69
|
+
{ code: "SK", value_en: "Slovakia", value_tr: "Slovakya", phonePrefix: "+421", smsEnabled: false },
|
|
70
|
+
{ code: "BG", value_en: "Bulgaria", value_tr: "Bulgaristan", phonePrefix: "+359", smsEnabled: false },
|
|
71
|
+
{ code: "HR", value_en: "Croatia", value_tr: "Hırvatistan", phonePrefix: "+385", smsEnabled: false },
|
|
72
|
+
{ code: "SI", value_en: "Slovenia", value_tr: "Slovenya", phonePrefix: "+386", smsEnabled: false },
|
|
73
|
+
{ code: "GE", value_en: "Georgia", value_tr: "Gürcistan", phonePrefix: "+995", smsEnabled: false },
|
|
74
|
+
{ code: "AZ", value_en: "Azerbaijan", value_tr: "Azerbaycan", phonePrefix: "+994", smsEnabled: false },
|
|
75
|
+
{ code: "KZ", value_en: "Kazakhstan", value_tr: "Kazakistan", phonePrefix: "+7", smsEnabled: false },
|
|
76
|
+
{ code: "RS", value_en: "Serbia", value_tr: "Sırbistan", phonePrefix: "+381", smsEnabled: false },
|
|
77
|
+
{ code: "BA", value_en: "Bosnia and Herzegovina", value_tr: "Bosna Hersek", phonePrefix: "+387", smsEnabled: false },
|
|
78
|
+
{ code: "MK", value_en: "North Macedonia", value_tr: "Kuzey Makedonya", phonePrefix: "+389", smsEnabled: false },
|
|
79
|
+
{ code: "AL", value_en: "Albania", value_tr: "Arnavutluk", phonePrefix: "+355", smsEnabled: false },
|
|
80
|
+
{ code: "IE", value_en: "Ireland", value_tr: "İrlanda", phonePrefix: "+353", smsEnabled: false },
|
|
81
|
+
{ code: "IS", value_en: "Iceland", value_tr: "İzlanda", phonePrefix: "+354", smsEnabled: false },
|
|
82
|
+
{ code: "CL", value_en: "Chile", value_tr: "Şili", phonePrefix: "+56", smsEnabled: false },
|
|
83
|
+
{ code: "DZ", value_en: "Algeria", value_tr: "Cezayir", phonePrefix: "+213", smsEnabled: false },
|
|
84
|
+
{ code: "MA", value_en: "Morocco", value_tr: "Fas", phonePrefix: "+212", smsEnabled: false },
|
|
85
|
+
{ code: "TN", value_en: "Tunisia", value_tr: "Tunus", phonePrefix: "+216", smsEnabled: false },
|
|
86
|
+
{ code: "PE", value_en: "Peru", value_tr: "Peru", phonePrefix: "+51", smsEnabled: false },
|
|
87
|
+
{ code: "VE", value_en: "Venezuela", value_tr: "Venezuela", phonePrefix: "+58", smsEnabled: false },
|
|
88
|
+
{ code: "EC", value_en: "Ecuador", value_tr: "Ekvador", phonePrefix: "+593", smsEnabled: false },
|
|
89
|
+
{ code: "CU", value_en: "Cuba", value_tr: "Küba", phonePrefix: "+53", smsEnabled: false },
|
|
90
|
+
{ code: "QA", value_en: "Qatar", value_tr: "Katar", phonePrefix: "+974", smsEnabled: false },
|
|
91
|
+
{ code: "KW", value_en: "Kuwait", value_tr: "Kuveyt", phonePrefix: "+965", smsEnabled: false },
|
|
92
|
+
{ code: "OM", value_en: "Oman", value_tr: "Umman", phonePrefix: "+968", smsEnabled: false },
|
|
93
|
+
{ code: "BH", value_en: "Bahrain", value_tr: "Bahreyn", phonePrefix: "+973", smsEnabled: false },
|
|
94
|
+
{ code: "LU", value_en: "Luxembourg", value_tr: "Lüksemburg", phonePrefix: "+352", smsEnabled: false },
|
|
95
|
+
{ code: "MT", value_en: "Malta", value_tr: "Malta", phonePrefix: "+356", smsEnabled: false },
|
|
96
|
+
{ code: "CY", value_en: "Cyprus", value_tr: "Kıbrıs", phonePrefix: "+357", smsEnabled: false },
|
|
97
|
+
{ code: "EE", value_en: "Estonia", value_tr: "Estonya", phonePrefix: "+372", smsEnabled: false },
|
|
98
|
+
{ code: "LT", value_en: "Lithuania", value_tr: "Litvanya", phonePrefix: "+370", smsEnabled: false },
|
|
99
|
+
{ code: "LV", value_en: "Latvia", value_tr: "Letonya", phonePrefix: "+371", smsEnabled: false },
|
|
100
|
+
{ code: "PA", value_en: "Panama", value_tr: "Panama", phonePrefix: "+507", smsEnabled: false },
|
|
101
|
+
{ code: "CR", value_en: "Costa Rica", value_tr: "Kosta Rika", phonePrefix: "+506", smsEnabled: false },
|
|
102
|
+
{ code: "GT", value_en: "Guatemala", value_tr: "Guatemala", phonePrefix: "+502", smsEnabled: false },
|
|
103
|
+
{ code: "DO", value_en: "Dominican Republic", value_tr: "Dominik Cumhuriyeti", phonePrefix: "+1", smsEnabled: false },
|
|
104
|
+
{ code: "JM", value_en: "Jamaica", value_tr: "Jamaika", phonePrefix: "+1", smsEnabled: false },
|
|
105
|
+
{ code: "TZ", value_en: "Tanzania", value_tr: "Tanzanya", phonePrefix: "+255", smsEnabled: false },
|
|
106
|
+
{ code: "UG", value_en: "Uganda", value_tr: "Uganda", phonePrefix: "+256", smsEnabled: false },
|
|
107
|
+
{ code: "GH", value_en: "Ghana", value_tr: "Gana", phonePrefix: "+233", smsEnabled: false },
|
|
108
|
+
{ code: "ET", value_en: "Ethiopia", value_tr: "Etiyopya", phonePrefix: "+251", smsEnabled: false },
|
|
109
|
+
{ code: "SN", value_en: "Senegal", value_tr: "Senegal", phonePrefix: "+221", smsEnabled: false },
|
|
110
|
+
{ code: "MM", value_en: "Myanmar", value_tr: "Myanmar", phonePrefix: "+95", smsEnabled: false },
|
|
111
|
+
{ code: "KH", value_en: "Cambodia", value_tr: "Kamboçya", phonePrefix: "+855", smsEnabled: false },
|
|
112
|
+
{ code: "LA", value_en: "Laos", value_tr: "Laos", phonePrefix: "+856", smsEnabled: false },
|
|
113
|
+
{ code: "NP", value_en: "Nepal", value_tr: "Nepal", phonePrefix: "+977", smsEnabled: false },
|
|
114
|
+
{ code: "MN", value_en: "Mongolia", value_tr: "Moğolistan", phonePrefix: "+976", smsEnabled: false },
|
|
115
|
+
{ code: "BY", value_en: "Belarus", value_tr: "Belarus", phonePrefix: "+375", smsEnabled: false },
|
|
116
|
+
{ code: "MD", value_en: "Moldova", value_tr: "Moldova", phonePrefix: "+373", smsEnabled: false },
|
|
117
|
+
{ code: "LI", value_en: "Liechtenstein", value_tr: "Lihtenştayn", phonePrefix: "+423", smsEnabled: false },
|
|
118
|
+
{ code: "SM", value_en: "San Marino", value_tr: "San Marino", phonePrefix: "+378", smsEnabled: false },
|
|
119
|
+
{ code: "MC", value_en: "Monaco", value_tr: "Monako", phonePrefix: "+377", smsEnabled: false },
|
|
120
|
+
{ code: "VA", value_en: "Vatican City", value_tr: "Vatikan", phonePrefix: "+379", smsEnabled: false },
|
|
121
|
+
{ code: "AD", value_en: "Andorra", value_tr: "Andorra", phonePrefix: "+376", smsEnabled: false },
|
|
122
|
+
{ code: "TM", value_en: "Turkmenistan", value_tr: "Türkmenistan", phonePrefix: "+993", smsEnabled: false },
|
|
123
|
+
{ code: "TJ", value_en: "Tajikistan", value_tr: "Tacikistan", phonePrefix: "+992", smsEnabled: false },
|
|
124
|
+
{ code: "KG", value_en: "Kyrgyzstan", value_tr: "Kırgızistan", phonePrefix: "+996", smsEnabled: false },
|
|
125
|
+
{ code: "UZ", value_en: "Uzbekistan", value_tr: "Özbekistan", phonePrefix: "+998", smsEnabled: false },
|
|
126
|
+
];
|
|
127
|
+
|
|
128
|
+
const getCurrentLanguage = () => {
|
|
129
|
+
if (typeof window !== "undefined") {
|
|
130
|
+
// eslint-disable-next-line no-undef
|
|
131
|
+
return (window?.localStorage?.i18nextLng || "en").substring(0, 2).toLowerCase();
|
|
132
|
+
}
|
|
133
|
+
return "en";
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
const getLocalizedCountryName = (code, lang = getCurrentLanguage()) => {
|
|
137
|
+
const country = COUNTRIES.find((c) => c?.code?.toUpperCase() === code?.toUpperCase());
|
|
138
|
+
if (!country) return null;
|
|
139
|
+
return country[`value_${lang}`] || country.value_en;
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
const COUNTRY_OPTIONS = COUNTRIES.map((c) => ({
|
|
143
|
+
value: c.code,
|
|
144
|
+
label: `${getLocalizedCountryName(c.code)} (${c.phonePrefix})`,
|
|
145
|
+
}));
|
|
146
|
+
|
|
147
|
+
module.exports = {
|
|
148
|
+
COUNTRIES,
|
|
149
|
+
COUNTRY_OPTIONS,
|
|
150
|
+
getCountryByCode: (code) => {
|
|
151
|
+
return COUNTRIES.find((country) => country.code === code);
|
|
152
|
+
},
|
|
153
|
+
getDialCodeByCountryCode: (code) => {
|
|
154
|
+
const country = COUNTRIES.find((c) => c.code.toUpperCase() === code.toUpperCase());
|
|
155
|
+
return country ? country.phonePrefix : null;
|
|
156
|
+
},
|
|
157
|
+
getCountryByPhonePrefix: (prefix) => {
|
|
158
|
+
return COUNTRIES.find((country) => country.phonePrefix === prefix);
|
|
159
|
+
},
|
|
160
|
+
isSmsEnabledForCountry: (code) => {
|
|
161
|
+
const country = COUNTRIES.find((c) => c.code.toUpperCase() === code.toUpperCase());
|
|
162
|
+
return country ? country.smsEnabled : false;
|
|
163
|
+
},
|
|
164
|
+
getAllCountryCodesLowerCase: () => {
|
|
165
|
+
return COUNTRIES.map((country) => country.code.toLowerCase());
|
|
166
|
+
},
|
|
167
|
+
getLocalizedCountryName,
|
|
168
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const PERMISSION_TYPES = {
|
|
2
|
+
ACCESS_TO_SCHOOLS: "accessToSchools", // Page level - always true for now
|
|
3
|
+
ACCESS_TO_USERS: "accessToUsers", // Page level - always true for now
|
|
4
|
+
ACCESS_TO_PERSONELS: "accessToPersonels", // Initial selection is company domain based
|
|
5
|
+
ACCESS_TO_STUDENTS: "accessToStudents", // Initial selection is company domain based
|
|
6
|
+
ACCESS_TO_SHIFTS: "accessToShifts", //
|
|
7
|
+
ACCESS_TO_STOPS: "accessToStops",
|
|
8
|
+
ACCESS_TO_SERVICE_REPORTS: "accessToServiceReports",
|
|
9
|
+
ACCESS_TO_ACCOUNTING: "accessToAccounting",
|
|
10
|
+
ACCESS_TO_TRANSFERS: "accessToTransfers",
|
|
11
|
+
ACCESS_TO_IKARUS: "accessToIkarus",
|
|
12
|
+
ACCESS_TO_LIVE: "accessToLive",
|
|
13
|
+
USE_DESCRIPTION: "useDescription",
|
|
14
|
+
USE_CARD_ID: "useCardId",
|
|
15
|
+
ACCESS_TO_ADMIN: "accessToAdmin",
|
|
16
|
+
ACCESS_TO_INVENTORY: "accessToInventory",
|
|
17
|
+
ACCESS_TO_WALKING_DISTANCE: "accessToWalkingDistance",
|
|
18
|
+
ACCESS_TO_WRITE_INVENTORY: "accessToWriteInventory",
|
|
19
|
+
ACCESS_TO_SERVISTESIN: "accessToServistesin",
|
|
20
|
+
ACCESS_TO_TRACK_VEHICLE_ONLY: "accessToTrackVehicleOnly",
|
|
21
|
+
ACCESS_TO_GIVE_PERMISSIONS: "accessToGivePermissions",
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
module.exports = {
|
|
25
|
+
PERMISSION_TYPES,
|
|
26
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
const SERVICE_TYPES = {
|
|
2
|
+
STUDENT: "STUDENT", // every day
|
|
3
|
+
PERSONEL: "PERSONEL", // every day
|
|
4
|
+
SHIFT: "SHIFT", // depends on shift, date required
|
|
5
|
+
STUDY: "STUDY", // depends on study days, date required
|
|
6
|
+
TRANSFER_PERSONEL: "TRANSFER_PERSONEL", // happens 1 time, date required
|
|
7
|
+
TRANSFER_STUDENT: "TRANSFER_STUDENT", // happens 1 time, date required
|
|
8
|
+
TRANSFER_RANDOM: "TRANSFER_RANDOM", // happens 1 time, date required
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const ROUTE_TYPES = {
|
|
12
|
+
PICK_UP: "PICK_UP",
|
|
13
|
+
DROP_OFF: "DROP_OFF",
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const ROUTE_TYPES_INCLUDING_BOTH = {
|
|
17
|
+
PICK_UP: "PICK_UP",
|
|
18
|
+
DROP_OFF: "DROP_OFF",
|
|
19
|
+
BOTH: "BOTH",
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const SERVICE_STATUS_TYPES = {
|
|
23
|
+
NOT_STARTED: "NOT_STARTED",
|
|
24
|
+
GOING_TO_SCHOOL: "GOING_TO_SCHOOL",
|
|
25
|
+
ARRIVED_SCHOOL: "ARRIVED_SCHOOL",
|
|
26
|
+
PREPARING_AT_SCHOOL: "PREPARING_AT_SCHOOL",
|
|
27
|
+
LEAVED_SCHOOL: "LEAVED_SCHOOL",
|
|
28
|
+
FINISHED: "FINISHED",
|
|
29
|
+
QR_NEADED: "QR_NEADED",
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
module.exports = {
|
|
33
|
+
ROUTE_TYPES,
|
|
34
|
+
ROUTE_TYPES_INCLUDING_BOTH,
|
|
35
|
+
SERVICE_TYPES,
|
|
36
|
+
SERVICE_STATUS_TYPES,
|
|
37
|
+
};
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
const SMS_PROVIDERS = {
|
|
2
|
+
NETGSM: "NETGSM",
|
|
3
|
+
TWILIO: "TWILIO",
|
|
4
|
+
};
|
|
5
|
+
|
|
6
|
+
const SUPPORTED_SMS_COUNTRIES = [
|
|
7
|
+
"TR", // Türkiye
|
|
8
|
+
"DE", // Almanya
|
|
9
|
+
"GB", // İngiltere
|
|
10
|
+
"FR", // Fransa
|
|
11
|
+
];
|
|
12
|
+
|
|
13
|
+
const SMS_TYPES = {
|
|
14
|
+
OTP: "OTP",
|
|
15
|
+
STANDARD: "STANDARD",
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const PROVIDER_NOT_ACCEPTED_ERROR_CODES = {
|
|
19
|
+
INVALID_MESSAGE_LENGTH: "INVALID_MESSAGE_LENGTH",
|
|
20
|
+
INVALID_USERNAME_OR_PASSWORD: "INVALID_USERNAME_OR_PASSWORD",
|
|
21
|
+
INVALID_SENDER_NAME: "INVALID_SENDER_NAME",
|
|
22
|
+
INVALID_NUMBER: "INVALID_NUMBER",
|
|
23
|
+
OTP_PACKAGE_NOT_FOUND: "OTP_PACKAGE_NOT_FOUND",
|
|
24
|
+
INPUT_PARAMETER_ERROR: "INPUT_PARAMETER_ERROR",
|
|
25
|
+
QUERY_LIMIT_EXCEEDED: "QUERY_LIMIT_EXCEEDED",
|
|
26
|
+
SYSTEM_ERROR: "SYSTEM_ERROR",
|
|
27
|
+
UNKNOWN: "UNKNOWN",
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const NET_GSM_NOT_ACCEPTED_ERROR_CODES = {
|
|
31
|
+
20: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_MESSAGE_LENGTH,
|
|
32
|
+
30: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_USERNAME_OR_PASSWORD,
|
|
33
|
+
40: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_SENDER_NAME,
|
|
34
|
+
41: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_SENDER_NAME,
|
|
35
|
+
50: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER,
|
|
36
|
+
51: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER,
|
|
37
|
+
52: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER,
|
|
38
|
+
60: PROVIDER_NOT_ACCEPTED_ERROR_CODES.OTP_PACKAGE_NOT_FOUND,
|
|
39
|
+
70: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INPUT_PARAMETER_ERROR,
|
|
40
|
+
80: PROVIDER_NOT_ACCEPTED_ERROR_CODES.QUERY_LIMIT_EXCEEDED,
|
|
41
|
+
100: PROVIDER_NOT_ACCEPTED_ERROR_CODES.SYSTEM_ERROR,
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const TWILIO_NOT_ACCEPTED_ERROR_CODES = {
|
|
45
|
+
21601: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_MESSAGE_LENGTH,
|
|
46
|
+
21602: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_MESSAGE_LENGTH,
|
|
47
|
+
21603: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER, // Invalid 'To' number
|
|
48
|
+
21604: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER, // Invalid 'From' number
|
|
49
|
+
21605: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER, // 'To' number is not verified
|
|
50
|
+
21606: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_SENDER_NAME,
|
|
51
|
+
21608: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
52
|
+
21610: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
53
|
+
21612: PROVIDER_NOT_ACCEPTED_ERROR_CODES.OTP_PACKAGE_NOT_FOUND, // 'From' phone number is not SMS capable
|
|
54
|
+
21614: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER, // 'To' number is not a valid mobile number
|
|
55
|
+
21620: PROVIDER_NOT_ACCEPTED_ERROR_CODES.SYSTEM_ERROR, // Messaging service SID issue
|
|
56
|
+
21701: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_USERNAME_OR_PASSWORD, // Invalid credentials (e.g., SID/token)
|
|
57
|
+
21101: PROVIDER_NOT_ACCEPTED_ERROR_CODES.QUERY_LIMIT_EXCEEDED,
|
|
58
|
+
21211: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER, // Common: invalid phone number
|
|
59
|
+
30001: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN, // Message delivery failed
|
|
60
|
+
30002: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN, // Queue overflow
|
|
61
|
+
30003: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
62
|
+
30004: PROVIDER_NOT_ACCEPTED_ERROR_CODES.INVALID_NUMBER,
|
|
63
|
+
30005: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
64
|
+
30006: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
65
|
+
30007: PROVIDER_NOT_ACCEPTED_ERROR_CODES.UNKNOWN,
|
|
66
|
+
30008: PROVIDER_NOT_ACCEPTED_ERROR_CODES.SYSTEM_ERROR,
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const NET_GSM_OPERATORS_CODES = {
|
|
70
|
+
10: "VODAFONE",
|
|
71
|
+
20: "TURK_TELEKOM",
|
|
72
|
+
30: "TURKCELL",
|
|
73
|
+
40: "NETGSM_STH",
|
|
74
|
+
41: "NETGSM_MOBIL",
|
|
75
|
+
60: "TURKTELEKOM_SABIT",
|
|
76
|
+
70: "TANIMSIZ_OPERATOR",
|
|
77
|
+
160: "KKTC_VODAFONE",
|
|
78
|
+
212: "YURTDISI",
|
|
79
|
+
213: "YURTDISI",
|
|
80
|
+
214: "YURTDISI",
|
|
81
|
+
215: "YURTDISI",
|
|
82
|
+
880: "KKTC_TURKCELL",
|
|
83
|
+
UNKNOWN: "UNKNOWN",
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const SMS_STATUS_CALL_CODES = {
|
|
87
|
+
SUCCESS: "SUCCESS",
|
|
88
|
+
INVALID_AUTHENTICATION: "INVALID_AUTHENTICATION",
|
|
89
|
+
NO_RECORD_FOUND: "NO_RECORD_FOUND",
|
|
90
|
+
INVALID_QUERY: "INVALID_QUERY",
|
|
91
|
+
QUERY_LIMIT_EXCEEDED: "QUERY_LIMIT_EXCEEDED",
|
|
92
|
+
SYSTEM_ERROR: "SYSTEM_ERROR",
|
|
93
|
+
UNKNOWN: "UNKNOWN",
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
const NET_GSM_SMS_STATUS_CALL_CODES = {
|
|
97
|
+
"00": SMS_STATUS_CALL_CODES.SUCCESS,
|
|
98
|
+
30: SMS_STATUS_CALL_CODES.INVALID_AUTHENTICATION,
|
|
99
|
+
60: SMS_STATUS_CALL_CODES.NO_RECORD_FOUND,
|
|
100
|
+
70: SMS_STATUS_CALL_CODES.INVALID_QUERY,
|
|
101
|
+
80: SMS_STATUS_CALL_CODES.QUERY_LIMIT_EXCEEDED,
|
|
102
|
+
100: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
103
|
+
101: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
104
|
+
102: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
105
|
+
103: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
106
|
+
104: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
107
|
+
105: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
108
|
+
106: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
109
|
+
107: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
110
|
+
108: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
111
|
+
109: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
112
|
+
110: SMS_STATUS_CALL_CODES.SYSTEM_ERROR,
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
const SMS_STATUS_CODES = {
|
|
116
|
+
QUEUED: "QUEUED",
|
|
117
|
+
DELIVERED: "DELIVERED",
|
|
118
|
+
TIMEOUT: "TIMEOUT",
|
|
119
|
+
INVALID_NUMBER: "INVALID_NUMBER",
|
|
120
|
+
OPERATOR_FAILED: "OPERATOR_FAILED",
|
|
121
|
+
REJECTED_BY_OPERATOR: "REJECTED_BY_OPERATOR",
|
|
122
|
+
SEND_ERROR: "SEND_ERROR",
|
|
123
|
+
DUPLICATE: "DUPLICATE",
|
|
124
|
+
BLACKLISTED: "BLACKLISTED",
|
|
125
|
+
IYS_REJECTED: "IYS_REJECTED",
|
|
126
|
+
IYS_ERROR: "IYS_ERROR",
|
|
127
|
+
UNKNOWN: "UNKNOWN",
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
const NET_GSM_SMS_STATUS_CODES = {
|
|
131
|
+
0: SMS_STATUS_CODES.QUEUED,
|
|
132
|
+
1: SMS_STATUS_CODES.DELIVERED,
|
|
133
|
+
2: SMS_STATUS_CODES.TIMEOUT,
|
|
134
|
+
3: SMS_STATUS_CODES.INVALID_NUMBER,
|
|
135
|
+
4: SMS_STATUS_CODES.OPERATOR_FAILED,
|
|
136
|
+
11: SMS_STATUS_CODES.REJECTED_BY_OPERATOR,
|
|
137
|
+
12: SMS_STATUS_CODES.SEND_ERROR,
|
|
138
|
+
13: SMS_STATUS_CODES.DUPLICATE,
|
|
139
|
+
15: SMS_STATUS_CODES.BLACKLISTED,
|
|
140
|
+
16: SMS_STATUS_CODES.IYS_REJECTED,
|
|
141
|
+
17: SMS_STATUS_CODES.IYS_ERROR,
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
const SMS_STATUS_ERROR_CODES = {
|
|
145
|
+
UNDEFINED: undefined,
|
|
146
|
+
UNKNOWN: "UNKNOWN",
|
|
147
|
+
MESSAGE_BOX_FULL: "MESSAGE_BOX_FULL",
|
|
148
|
+
OUT_OF_COVERAGE: "OUT_OF_COVERAGE",
|
|
149
|
+
BUSY: "BUSY",
|
|
150
|
+
LINE_NOT_ACTIVE: "LINE_NOT_ACTIVE",
|
|
151
|
+
INVALID_NUMBER: "INVALID_NUMBER",
|
|
152
|
+
BLACKLISTED: "BLACKLISTED",
|
|
153
|
+
TIMEOUT: "TIMEOUT",
|
|
154
|
+
SMS_DISABLED: "SMS_DISABLED",
|
|
155
|
+
DEVICE_NOT_SUPPORTED: "DEVICE_NOT_SUPPORTED",
|
|
156
|
+
FORWARDING_FAILED: "FORWARDING_FAILED",
|
|
157
|
+
CALL_RESTRICTED: "CALL_RESTRICTED",
|
|
158
|
+
UNIDENTIFIED_SUBSCRIBER: "UNIDENTIFIED_SUBSCRIBER",
|
|
159
|
+
ILLEGAL_SUBSCRIBER: "ILLEGAL_SUBSCRIBER",
|
|
160
|
+
SYSTEM_ERROR: "SYSTEM_ERROR",
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
const NET_GSM_STATUS_ERROR_CODES = {
|
|
164
|
+
0: SMS_STATUS_ERROR_CODES.UNDEFINED,
|
|
165
|
+
101: SMS_STATUS_ERROR_CODES.MESSAGE_BOX_FULL,
|
|
166
|
+
102: SMS_STATUS_ERROR_CODES.OUT_OF_COVERAGE,
|
|
167
|
+
103: SMS_STATUS_ERROR_CODES.BUSY,
|
|
168
|
+
104: SMS_STATUS_ERROR_CODES.LINE_NOT_ACTIVE,
|
|
169
|
+
105: SMS_STATUS_ERROR_CODES.INVALID_NUMBER,
|
|
170
|
+
106: SMS_STATUS_ERROR_CODES.BLACKLISTED,
|
|
171
|
+
111: SMS_STATUS_ERROR_CODES.TIMEOUT,
|
|
172
|
+
112: SMS_STATUS_ERROR_CODES.SMS_DISABLED,
|
|
173
|
+
113: SMS_STATUS_ERROR_CODES.DEVICE_NOT_SUPPORTED,
|
|
174
|
+
114: SMS_STATUS_ERROR_CODES.FORWARDING_FAILED,
|
|
175
|
+
115: SMS_STATUS_ERROR_CODES.CALL_RESTRICTED,
|
|
176
|
+
116: SMS_STATUS_ERROR_CODES.UNIDENTIFIED_SUBSCRIBER,
|
|
177
|
+
117: SMS_STATUS_ERROR_CODES.ILLEGAL_SUBSCRIBER,
|
|
178
|
+
119: SMS_STATUS_ERROR_CODES.SYSTEM_ERROR,
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
module.exports = {
|
|
182
|
+
SMS_PROVIDERS,
|
|
183
|
+
SMS_TYPES,
|
|
184
|
+
SUPPORTED_SMS_COUNTRIES,
|
|
185
|
+
|
|
186
|
+
NET_GSM_OPERATORS_CODES,
|
|
187
|
+
|
|
188
|
+
PROVIDER_NOT_ACCEPTED_ERROR_CODES, // During Send
|
|
189
|
+
NET_GSM_NOT_ACCEPTED_ERROR_CODES, // During Send
|
|
190
|
+
TWILIO_NOT_ACCEPTED_ERROR_CODES, // During Send
|
|
191
|
+
|
|
192
|
+
SMS_STATUS_CALL_CODES, // During Report
|
|
193
|
+
NET_GSM_SMS_STATUS_CALL_CODES, // During Report
|
|
194
|
+
|
|
195
|
+
SMS_STATUS_CODES, // During Report
|
|
196
|
+
NET_GSM_SMS_STATUS_CODES, // During Report
|
|
197
|
+
|
|
198
|
+
SMS_STATUS_ERROR_CODES, // During Report
|
|
199
|
+
NET_GSM_STATUS_ERROR_CODES, // During Report
|
|
200
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// Stok kategorileri
|
|
2
|
+
const STOCK_CATEGORIES = {
|
|
3
|
+
SPARE_PARTS: "spare_parts", // Yedek parça
|
|
4
|
+
FUEL: "fuel", // Yakıt
|
|
5
|
+
MAINTENANCE: "maintenance", // Bakım malzemeleri
|
|
6
|
+
ELECTRONICS: "electronics", // Elektronik
|
|
7
|
+
CONSUMABLES: "consumables", // Sarf malzemeler
|
|
8
|
+
TOOLS: "tools", // Araç gereç
|
|
9
|
+
DOCUMENTS: "documents", // Doküman/evrak
|
|
10
|
+
OTHER: "other", // Diğer
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
// Stok durumları
|
|
14
|
+
const STOCK_STATUS = {
|
|
15
|
+
ACTIVE: "active", // Aktif
|
|
16
|
+
LOW_STOCK: "low_stock", // Düşük stok
|
|
17
|
+
OUT_OF_STOCK: "out_of_stock", // Stok tükendi
|
|
18
|
+
DISCONTINUED: "discontinued", // Üretimi durmuş
|
|
19
|
+
RESERVED: "reserved", // Rezerve edilmiş
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
// Stok birim türleri
|
|
23
|
+
const STOCK_UNITS = {
|
|
24
|
+
PIECE: "piece", // Adet
|
|
25
|
+
LITER: "liter", // Litre
|
|
26
|
+
KILOGRAM: "kilogram", // Kilogram
|
|
27
|
+
METER: "meter", // Metre
|
|
28
|
+
SQUARE_METER: "square_meter", // Metrekare
|
|
29
|
+
CUBIC_METER: "cubic_meter", // Metreküp
|
|
30
|
+
BOX: "box", // Kutu
|
|
31
|
+
PACKAGE: "package", // Paket
|
|
32
|
+
SET: "set", // Set
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
// Stok hareketi türleri
|
|
36
|
+
const MOVEMENT_TYPES = {
|
|
37
|
+
IN: "in", // Giriş
|
|
38
|
+
OUT: "out", // Çıkış
|
|
39
|
+
TRANSFER: "transfer", // Transfer
|
|
40
|
+
ADJUSTMENT: "adjustment", // Düzeltme
|
|
41
|
+
RETURN: "return", // İade
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
// Kategori etiketleri (Türkçe)
|
|
45
|
+
const CATEGORY_LABELS_TR = {
|
|
46
|
+
spare_parts: "Yedek Parça",
|
|
47
|
+
fuel: "Yakıt",
|
|
48
|
+
maintenance: "Bakım Malzemeleri",
|
|
49
|
+
electronics: "Elektronik",
|
|
50
|
+
consumables: "Sarf Malzemeler",
|
|
51
|
+
tools: "Araç Gereç",
|
|
52
|
+
documents: "Doküman/Evrak",
|
|
53
|
+
other: "Diğer",
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
// Durum etiketleri (Türkçe)
|
|
57
|
+
const STATUS_LABELS_TR = {
|
|
58
|
+
active: "Aktif",
|
|
59
|
+
low_stock: "Düşük Stok",
|
|
60
|
+
out_of_stock: "Stok Tükendi",
|
|
61
|
+
discontinued: "Üretimi Durmuş",
|
|
62
|
+
reserved: "Rezerve Edilmiş",
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
// Birim etiketleri (Türkçe)
|
|
66
|
+
const UNIT_LABELS_TR = {
|
|
67
|
+
piece: "Adet",
|
|
68
|
+
liter: "Litre",
|
|
69
|
+
kilogram: "Kilogram",
|
|
70
|
+
meter: "Metre",
|
|
71
|
+
square_meter: "Metrekare",
|
|
72
|
+
cubic_meter: "Metreküp",
|
|
73
|
+
box: "Kutu",
|
|
74
|
+
package: "Paket",
|
|
75
|
+
set: "Set",
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
// Hareket türü etiketleri (Türkçe)
|
|
79
|
+
const MOVEMENT_TYPE_LABELS_TR = {
|
|
80
|
+
in: "Giriş",
|
|
81
|
+
out: "Çıkış",
|
|
82
|
+
transfer: "Transfer",
|
|
83
|
+
adjustment: "Düzeltme",
|
|
84
|
+
return: "İade",
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
module.exports = {
|
|
88
|
+
STOCK_CATEGORIES,
|
|
89
|
+
STOCK_STATUS,
|
|
90
|
+
STOCK_UNITS,
|
|
91
|
+
MOVEMENT_TYPES,
|
|
92
|
+
CATEGORY_LABELS_TR,
|
|
93
|
+
STATUS_LABELS_TR,
|
|
94
|
+
UNIT_LABELS_TR,
|
|
95
|
+
MOVEMENT_TYPE_LABELS_TR,
|
|
96
|
+
};
|
package/index.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
...require("./constants/constants.js"),
|
|
3
|
+
...require("./constants/countries.constants.js"),
|
|
4
|
+
...require("./constants/permission.constants.js"),
|
|
5
|
+
...require("./constants/plans.constants.js"),
|
|
6
|
+
...require("./constants/process.constants.js"),
|
|
7
|
+
...require("./constants/service.constants.js"),
|
|
8
|
+
...require("./constants/sms.constants.js"),
|
|
9
|
+
...require("./constants/stock.constants.js"),
|
|
10
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@routebot/constants",
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "Shared constants for RouteBot FE/BE",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"files": [
|
|
7
|
+
"index.js",
|
|
8
|
+
"constants/*.js",
|
|
9
|
+
"README.md"
|
|
10
|
+
],
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/emrahg-dev/routebot-constants.git"
|
|
15
|
+
},
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public"
|
|
18
|
+
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"release:patch": "npm version patch -m \"chore(release): %s\" && npm publish --access public && git push && git push --tags",
|
|
21
|
+
"release:minor": "npm version minor -m \"chore(release): %s\" && npm publish --access public && git push && git push --tags",
|
|
22
|
+
"release:major": "npm version major -m \"chore(release): %s\" && npm publish --access public && git push && git push --tags",
|
|
23
|
+
"prepublishOnly": "npm test",
|
|
24
|
+
"test": "node -e \"require('./index.js'); console.log('ok')\""
|
|
25
|
+
}
|
|
26
|
+
}
|