@osise/api-client 0.0.1
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 +474 -0
- package/dist/cjs/api/admin.js +277 -0
- package/dist/cjs/api/admin.js.map +1 -0
- package/dist/cjs/api/artisans.js +277 -0
- package/dist/cjs/api/artisans.js.map +1 -0
- package/dist/cjs/api/auth.js +83 -0
- package/dist/cjs/api/auth.js.map +1 -0
- package/dist/cjs/api/consumers.js +170 -0
- package/dist/cjs/api/consumers.js.map +1 -0
- package/dist/cjs/api/index.js +22 -0
- package/dist/cjs/api/index.js.map +1 -0
- package/dist/cjs/api/jobs.js +202 -0
- package/dist/cjs/api/jobs.js.map +1 -0
- package/dist/cjs/hooks/index.js +435 -0
- package/dist/cjs/hooks/index.js.map +1 -0
- package/dist/cjs/index.js +189 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/types/admin.js +6 -0
- package/dist/cjs/types/admin.js.map +1 -0
- package/dist/cjs/types/artisan.js +6 -0
- package/dist/cjs/types/artisan.js.map +1 -0
- package/dist/cjs/types/auth.js +6 -0
- package/dist/cjs/types/auth.js.map +1 -0
- package/dist/cjs/types/common.js +6 -0
- package/dist/cjs/types/common.js.map +1 -0
- package/dist/cjs/types/consumer.js +6 -0
- package/dist/cjs/types/consumer.js.map +1 -0
- package/dist/cjs/types/enums.js +226 -0
- package/dist/cjs/types/enums.js.map +1 -0
- package/dist/cjs/types/index.js +35 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/job.js +6 -0
- package/dist/cjs/types/job.js.map +1 -0
- package/dist/cjs/utils/http-client.js +214 -0
- package/dist/cjs/utils/http-client.js.map +1 -0
- package/dist/cjs/utils/index.js +19 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/storage.js +105 -0
- package/dist/cjs/utils/storage.js.map +1 -0
- package/dist/esm/api/admin.js +269 -0
- package/dist/esm/api/admin.js.map +1 -0
- package/dist/esm/api/artisans.js +270 -0
- package/dist/esm/api/artisans.js.map +1 -0
- package/dist/esm/api/auth.js +79 -0
- package/dist/esm/api/auth.js.map +1 -0
- package/dist/esm/api/consumers.js +165 -0
- package/dist/esm/api/consumers.js.map +1 -0
- package/dist/esm/api/index.js +6 -0
- package/dist/esm/api/index.js.map +1 -0
- package/dist/esm/api/jobs.js +197 -0
- package/dist/esm/api/jobs.js.map +1 -0
- package/dist/esm/hooks/index.js +408 -0
- package/dist/esm/hooks/index.js.map +1 -0
- package/dist/esm/index.js +165 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/types/admin.js +5 -0
- package/dist/esm/types/admin.js.map +1 -0
- package/dist/esm/types/artisan.js +5 -0
- package/dist/esm/types/artisan.js.map +1 -0
- package/dist/esm/types/auth.js +5 -0
- package/dist/esm/types/auth.js.map +1 -0
- package/dist/esm/types/common.js +5 -0
- package/dist/esm/types/common.js.map +1 -0
- package/dist/esm/types/consumer.js +5 -0
- package/dist/esm/types/consumer.js.map +1 -0
- package/dist/esm/types/enums.js +223 -0
- package/dist/esm/types/enums.js.map +1 -0
- package/dist/esm/types/index.js +19 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/job.js +5 -0
- package/dist/esm/types/job.js.map +1 -0
- package/dist/esm/utils/http-client.js +208 -0
- package/dist/esm/utils/http-client.js.map +1 -0
- package/dist/esm/utils/index.js +3 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/storage.js +99 -0
- package/dist/esm/utils/storage.js.map +1 -0
- package/dist/types/api/admin.d.ts +188 -0
- package/dist/types/api/admin.d.ts.map +1 -0
- package/dist/types/api/artisans.d.ts +183 -0
- package/dist/types/api/artisans.d.ts.map +1 -0
- package/dist/types/api/auth.d.ts +58 -0
- package/dist/types/api/auth.d.ts.map +1 -0
- package/dist/types/api/consumers.d.ts +113 -0
- package/dist/types/api/consumers.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +6 -0
- package/dist/types/api/index.d.ts.map +1 -0
- package/dist/types/api/jobs.d.ts +136 -0
- package/dist/types/api/jobs.d.ts.map +1 -0
- package/dist/types/hooks/index.d.ts +225 -0
- package/dist/types/hooks/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +127 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/types/admin.d.ts +226 -0
- package/dist/types/types/admin.d.ts.map +1 -0
- package/dist/types/types/artisan.d.ts +438 -0
- package/dist/types/types/artisan.d.ts.map +1 -0
- package/dist/types/types/auth.d.ts +92 -0
- package/dist/types/types/auth.d.ts.map +1 -0
- package/dist/types/types/common.d.ts +105 -0
- package/dist/types/types/common.d.ts.map +1 -0
- package/dist/types/types/consumer.d.ts +144 -0
- package/dist/types/types/consumer.d.ts.map +1 -0
- package/dist/types/types/enums.d.ts +199 -0
- package/dist/types/types/enums.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +12 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/job.d.ts +226 -0
- package/dist/types/types/job.d.ts.map +1 -0
- package/dist/types/utils/http-client.d.ts +65 -0
- package/dist/types/utils/http-client.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +3 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/storage.d.ts +48 -0
- package/dist/types/utils/storage.d.ts.map +1 -0
- package/package.json +78 -0
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Admin API
|
|
4
|
+
* Handles admin operations for artisans, consumers, jobs, and dashboard
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.AdminJobsApi = exports.AdminDashboardApi = exports.AdminConsumersApi = exports.AdminApplicationsApi = exports.AdminArtisansApi = void 0;
|
|
8
|
+
class AdminArtisansApi {
|
|
9
|
+
constructor(http) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.basePath = '/api/v1/admin/artisans';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Get all artisans (paginated with filters)
|
|
15
|
+
*/
|
|
16
|
+
async list(params) {
|
|
17
|
+
return this.http.get(this.basePath, params);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get artisan details
|
|
21
|
+
*/
|
|
22
|
+
async get(artisanId) {
|
|
23
|
+
return this.http.get(`${this.basePath}/${artisanId}`);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Suspend an artisan
|
|
27
|
+
*/
|
|
28
|
+
async suspend(artisanId, reason) {
|
|
29
|
+
return this.http.post(`${this.basePath}/${artisanId}/suspend`, { reason });
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Reactivate a suspended artisan
|
|
33
|
+
*/
|
|
34
|
+
async reactivate(artisanId) {
|
|
35
|
+
return this.http.post(`${this.basePath}/${artisanId}/reactivate`);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Issue a strike to an artisan
|
|
39
|
+
*/
|
|
40
|
+
async issueStrike(artisanId, data) {
|
|
41
|
+
return this.http.post(`${this.basePath}/${artisanId}/strikes`, data);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Get artisan strikes
|
|
45
|
+
*/
|
|
46
|
+
async getStrikes(artisanId) {
|
|
47
|
+
return this.http.get(`${this.basePath}/${artisanId}/strikes`);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Remove a strike
|
|
51
|
+
*/
|
|
52
|
+
async removeStrike(artisanId, strikeId) {
|
|
53
|
+
return this.http.delete(`${this.basePath}/${artisanId}/strikes/${strikeId}`);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Add admin note
|
|
57
|
+
*/
|
|
58
|
+
async addNote(artisanId, data) {
|
|
59
|
+
return this.http.post(`${this.basePath}/${artisanId}/notes`, data);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Get admin notes
|
|
63
|
+
*/
|
|
64
|
+
async getNotes(artisanId) {
|
|
65
|
+
return this.http.get(`${this.basePath}/${artisanId}/notes`);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Update artisan tags
|
|
69
|
+
*/
|
|
70
|
+
async updateTags(artisanId, data) {
|
|
71
|
+
return this.http.put(`${this.basePath}/${artisanId}/tags`, data);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get artisan analytics
|
|
75
|
+
*/
|
|
76
|
+
async getAnalytics() {
|
|
77
|
+
return this.http.get(`${this.basePath}/analytics`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.AdminArtisansApi = AdminArtisansApi;
|
|
81
|
+
class AdminApplicationsApi {
|
|
82
|
+
constructor(http) {
|
|
83
|
+
this.http = http;
|
|
84
|
+
this.basePath = '/api/v1/admin/applications';
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Get all applications (paginated with filters)
|
|
88
|
+
*/
|
|
89
|
+
async list(params) {
|
|
90
|
+
return this.http.get(this.basePath, params);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Get application details
|
|
94
|
+
*/
|
|
95
|
+
async get(artisanId) {
|
|
96
|
+
return this.http.get(`${this.basePath}/${artisanId}`);
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Review a document
|
|
100
|
+
*/
|
|
101
|
+
async reviewDocument(artisanId, documentId, data) {
|
|
102
|
+
return this.http.post(`${this.basePath}/${artisanId}/documents/${documentId}/review`, data);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Verify a guarantor
|
|
106
|
+
*/
|
|
107
|
+
async verifyGuarantor(artisanId, guarantorId, verified, notes) {
|
|
108
|
+
return this.http.post(`${this.basePath}/${artisanId}/guarantors/${guarantorId}/verify`, { verified, notes });
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Schedule a field visit
|
|
112
|
+
*/
|
|
113
|
+
async scheduleFieldVisit(data) {
|
|
114
|
+
return this.http.post(`${this.basePath}/field-visits/schedule`, data);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Complete a field visit
|
|
118
|
+
*/
|
|
119
|
+
async completeFieldVisit(data) {
|
|
120
|
+
return this.http.post(`${this.basePath}/field-visits/complete`, data);
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Record skill test result
|
|
124
|
+
*/
|
|
125
|
+
async recordSkillTestResult(artisanId, passed, score, feedback) {
|
|
126
|
+
return this.http.post(`${this.basePath}/${artisanId}/skill-test/result`, { passed, score, feedback });
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Mark training session attended
|
|
130
|
+
*/
|
|
131
|
+
async markTrainingAttended(artisanId, sessionId) {
|
|
132
|
+
return this.http.post(`${this.basePath}/${artisanId}/training/${sessionId}/attended`);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Process application (approve/reject)
|
|
136
|
+
*/
|
|
137
|
+
async process(artisanId, data) {
|
|
138
|
+
return this.http.post(`${this.basePath}/${artisanId}/process`, data);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Perform verification workflow action
|
|
142
|
+
*/
|
|
143
|
+
async workflowAction(artisanId, data) {
|
|
144
|
+
return this.http.post(`${this.basePath}/${artisanId}/workflow`, data);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
exports.AdminApplicationsApi = AdminApplicationsApi;
|
|
148
|
+
class AdminConsumersApi {
|
|
149
|
+
constructor(http) {
|
|
150
|
+
this.http = http;
|
|
151
|
+
this.basePath = '/api/v1/admin/consumers';
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Get all consumers (paginated with filters)
|
|
155
|
+
*/
|
|
156
|
+
async list(params) {
|
|
157
|
+
return this.http.get(this.basePath, params);
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Get consumer details
|
|
161
|
+
*/
|
|
162
|
+
async get(consumerId) {
|
|
163
|
+
return this.http.get(`${this.basePath}/${consumerId}`);
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Block a consumer
|
|
167
|
+
*/
|
|
168
|
+
async block(consumerId, data) {
|
|
169
|
+
return this.http.post(`${this.basePath}/${consumerId}/block`, data);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Unblock a consumer
|
|
173
|
+
*/
|
|
174
|
+
async unblock(consumerId) {
|
|
175
|
+
return this.http.post(`${this.basePath}/${consumerId}/unblock`);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Add admin note
|
|
179
|
+
*/
|
|
180
|
+
async addNote(consumerId, data) {
|
|
181
|
+
return this.http.post(`${this.basePath}/${consumerId}/notes`, data);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Get admin notes
|
|
185
|
+
*/
|
|
186
|
+
async getNotes(consumerId) {
|
|
187
|
+
return this.http.get(`${this.basePath}/${consumerId}/notes`);
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Update consumer tags
|
|
191
|
+
*/
|
|
192
|
+
async updateTags(consumerId, data) {
|
|
193
|
+
return this.http.put(`${this.basePath}/${consumerId}/tags`, data);
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Get consumer analytics
|
|
197
|
+
*/
|
|
198
|
+
async getAnalytics() {
|
|
199
|
+
return this.http.get(`${this.basePath}/analytics`);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
exports.AdminConsumersApi = AdminConsumersApi;
|
|
203
|
+
class AdminDashboardApi {
|
|
204
|
+
constructor(http) {
|
|
205
|
+
this.http = http;
|
|
206
|
+
this.basePath = '/api/v1/admin/dashboard';
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Get dashboard statistics
|
|
210
|
+
*/
|
|
211
|
+
async getStats() {
|
|
212
|
+
return this.http.get(`${this.basePath}/stats`);
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Get recent activity feed
|
|
216
|
+
*/
|
|
217
|
+
async getRecentActivity(limit) {
|
|
218
|
+
return this.http.get(`${this.basePath}/activity`, { limit });
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get pending tasks for current admin
|
|
222
|
+
*/
|
|
223
|
+
async getPendingTasks() {
|
|
224
|
+
return this.http.get(`${this.basePath}/tasks`);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
exports.AdminDashboardApi = AdminDashboardApi;
|
|
228
|
+
class AdminJobsApi {
|
|
229
|
+
constructor(http) {
|
|
230
|
+
this.http = http;
|
|
231
|
+
this.basePath = '/api/v1/admin/jobs';
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Get all jobs (dispatcher view)
|
|
235
|
+
*/
|
|
236
|
+
async list(params) {
|
|
237
|
+
return this.http.get(this.basePath, params);
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Get job details
|
|
241
|
+
*/
|
|
242
|
+
async get(jobId) {
|
|
243
|
+
return this.http.get(`${this.basePath}/${jobId}`);
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Assign artisan to job (dispatcher)
|
|
247
|
+
*/
|
|
248
|
+
async assignArtisan(jobId, artisanId) {
|
|
249
|
+
return this.http.post(`${this.basePath}/${jobId}/assign`, { artisanId });
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Reassign job to different artisan
|
|
253
|
+
*/
|
|
254
|
+
async reassign(jobId, artisanId, reason) {
|
|
255
|
+
return this.http.post(`${this.basePath}/${jobId}/reassign`, { artisanId, reason });
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Cancel job (admin)
|
|
259
|
+
*/
|
|
260
|
+
async cancel(jobId, reason) {
|
|
261
|
+
return this.http.post(`${this.basePath}/${jobId}/cancel`, { reason });
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Resolve dispute
|
|
265
|
+
*/
|
|
266
|
+
async resolveDispute(jobId, resolution, refundAmount) {
|
|
267
|
+
return this.http.post(`${this.basePath}/${jobId}/dispute/resolve`, { resolution, refundAmount });
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Get available artisans for assignment
|
|
271
|
+
*/
|
|
272
|
+
async getAvailableArtisans(jobId) {
|
|
273
|
+
return this.http.get(`${this.basePath}/${jobId}/available-artisans`);
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
exports.AdminJobsApi = AdminJobsApi;
|
|
277
|
+
//# sourceMappingURL=admin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../../src/api/admin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Artisans API
|
|
4
|
+
* Handles artisan profile, documents, verification, availability, earnings, and performance
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.ArtisanPerformanceApi = exports.ArtisanEarningsApi = exports.ArtisanAvailabilityApi = exports.ArtisansApi = void 0;
|
|
8
|
+
class ArtisansApi {
|
|
9
|
+
constructor(http) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.basePath = '/api/v1/artisans';
|
|
12
|
+
}
|
|
13
|
+
// ==================== Profile ====================
|
|
14
|
+
/**
|
|
15
|
+
* Register artisan profile after authentication
|
|
16
|
+
*/
|
|
17
|
+
async register(data) {
|
|
18
|
+
return this.http.post(`${this.basePath}/register`, data);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Get current artisan's profile
|
|
22
|
+
*/
|
|
23
|
+
async getProfile() {
|
|
24
|
+
return this.http.get(`${this.basePath}/profile`);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Update artisan profile
|
|
28
|
+
*/
|
|
29
|
+
async updateProfile(data) {
|
|
30
|
+
return this.http.patch(`${this.basePath}/profile`, data);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Update profile photo (Uploadcare URL)
|
|
34
|
+
*/
|
|
35
|
+
async updateProfilePhoto(data) {
|
|
36
|
+
return this.http.patch(`${this.basePath}/profile/photo`, data);
|
|
37
|
+
}
|
|
38
|
+
// ==================== Documents ====================
|
|
39
|
+
/**
|
|
40
|
+
* Get all submitted documents with overview
|
|
41
|
+
*/
|
|
42
|
+
async getDocuments() {
|
|
43
|
+
return this.http.get(`${this.basePath}/documents`);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Submit a new document
|
|
47
|
+
*/
|
|
48
|
+
async submitDocument(data) {
|
|
49
|
+
return this.http.post(`${this.basePath}/documents`, data);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Delete a document
|
|
53
|
+
*/
|
|
54
|
+
async deleteDocument(documentId) {
|
|
55
|
+
return this.http.delete(`${this.basePath}/documents/${documentId}`);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Resubmit a rejected document
|
|
59
|
+
*/
|
|
60
|
+
async resubmitDocument(documentId, data) {
|
|
61
|
+
return this.http.patch(`${this.basePath}/documents/${documentId}/resubmit`, data);
|
|
62
|
+
}
|
|
63
|
+
// ==================== Guarantors ====================
|
|
64
|
+
/**
|
|
65
|
+
* Get all guarantors
|
|
66
|
+
*/
|
|
67
|
+
async getGuarantors() {
|
|
68
|
+
return this.http.get(`${this.basePath}/guarantors`);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Add a guarantor
|
|
72
|
+
*/
|
|
73
|
+
async addGuarantor(data) {
|
|
74
|
+
return this.http.post(`${this.basePath}/guarantors`, data);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Update a guarantor
|
|
78
|
+
*/
|
|
79
|
+
async updateGuarantor(guarantorId, data) {
|
|
80
|
+
return this.http.patch(`${this.basePath}/guarantors/${guarantorId}`, data);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Delete a guarantor
|
|
84
|
+
*/
|
|
85
|
+
async deleteGuarantor(guarantorId) {
|
|
86
|
+
return this.http.delete(`${this.basePath}/guarantors/${guarantorId}`);
|
|
87
|
+
}
|
|
88
|
+
// ==================== Bank Account ====================
|
|
89
|
+
/**
|
|
90
|
+
* Get bank account
|
|
91
|
+
*/
|
|
92
|
+
async getBankAccount() {
|
|
93
|
+
return this.http.get(`${this.basePath}/bank-account`);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Set or update bank account
|
|
97
|
+
*/
|
|
98
|
+
async setBankAccount(data) {
|
|
99
|
+
return this.http.post(`${this.basePath}/bank-account`, data);
|
|
100
|
+
}
|
|
101
|
+
// ==================== Service Areas ====================
|
|
102
|
+
/**
|
|
103
|
+
* Get service areas
|
|
104
|
+
*/
|
|
105
|
+
async getServiceAreas() {
|
|
106
|
+
return this.http.get(`${this.basePath}/service-areas`);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Update service areas
|
|
110
|
+
*/
|
|
111
|
+
async updateServiceAreas(data) {
|
|
112
|
+
return this.http.patch(`${this.basePath}/service-areas`, data);
|
|
113
|
+
}
|
|
114
|
+
// ==================== Tools Checklist ====================
|
|
115
|
+
/**
|
|
116
|
+
* Get tools checklist
|
|
117
|
+
*/
|
|
118
|
+
async getToolsChecklist() {
|
|
119
|
+
return this.http.get(`${this.basePath}/tools-checklist`);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Update tools checklist
|
|
123
|
+
*/
|
|
124
|
+
async updateToolsChecklist(data) {
|
|
125
|
+
return this.http.patch(`${this.basePath}/tools-checklist`, data);
|
|
126
|
+
}
|
|
127
|
+
// ==================== Application Status ====================
|
|
128
|
+
/**
|
|
129
|
+
* Get verification workflow status
|
|
130
|
+
*/
|
|
131
|
+
async getApplicationStatus() {
|
|
132
|
+
return this.http.get(`${this.basePath}/application/status`);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get available skill test slots
|
|
136
|
+
*/
|
|
137
|
+
async getSkillTestSlots() {
|
|
138
|
+
return this.http.get(`${this.basePath}/application/skill-test/slots`);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Book a skill test slot
|
|
142
|
+
*/
|
|
143
|
+
async bookSkillTest(data) {
|
|
144
|
+
return this.http.post(`${this.basePath}/application/skill-test/book`, data);
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Get training schedule
|
|
148
|
+
*/
|
|
149
|
+
async getTrainingSchedule() {
|
|
150
|
+
return this.http.get(`${this.basePath}/application/training/schedule`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
exports.ArtisansApi = ArtisansApi;
|
|
154
|
+
class ArtisanAvailabilityApi {
|
|
155
|
+
constructor(http) {
|
|
156
|
+
this.http = http;
|
|
157
|
+
this.basePath = '/api/v1/artisans/availability';
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Get current availability status
|
|
161
|
+
*/
|
|
162
|
+
async getStatus() {
|
|
163
|
+
return this.http.get(`${this.basePath}/status`);
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Update availability status (Online, Offline, Busy, OnBreak)
|
|
167
|
+
*/
|
|
168
|
+
async updateStatus(data) {
|
|
169
|
+
return this.http.patch(`${this.basePath}/status`, data);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Get working hours
|
|
173
|
+
*/
|
|
174
|
+
async getWorkingHours() {
|
|
175
|
+
return this.http.get(`${this.basePath}/hours`);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Update working hours for all days
|
|
179
|
+
*/
|
|
180
|
+
async updateWorkingHours(data) {
|
|
181
|
+
return this.http.patch(`${this.basePath}/hours`, data);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Get scheduled days off
|
|
185
|
+
*/
|
|
186
|
+
async getDaysOff() {
|
|
187
|
+
return this.http.get(`${this.basePath}/days-off`);
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Add a day off
|
|
191
|
+
*/
|
|
192
|
+
async addDayOff(data) {
|
|
193
|
+
return this.http.post(`${this.basePath}/days-off`, data);
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Cancel a day off
|
|
197
|
+
*/
|
|
198
|
+
async cancelDayOff(dayOffId) {
|
|
199
|
+
return this.http.delete(`${this.basePath}/days-off/${dayOffId}`);
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Update current GPS location
|
|
203
|
+
*/
|
|
204
|
+
async updateLocation(data) {
|
|
205
|
+
return this.http.patch(`${this.basePath}/location`, data);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
exports.ArtisanAvailabilityApi = ArtisanAvailabilityApi;
|
|
209
|
+
class ArtisanEarningsApi {
|
|
210
|
+
constructor(http) {
|
|
211
|
+
this.http = http;
|
|
212
|
+
this.basePath = '/api/v1/artisans';
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Get earnings summary
|
|
216
|
+
*/
|
|
217
|
+
async getSummary() {
|
|
218
|
+
return this.http.get(`${this.basePath}/earnings/summary`);
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get job earnings history (paginated)
|
|
222
|
+
*/
|
|
223
|
+
async getJobEarnings(params) {
|
|
224
|
+
return this.http.get(`${this.basePath}/earnings/jobs`, params);
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Get pending earnings breakdown
|
|
228
|
+
*/
|
|
229
|
+
async getPendingEarnings() {
|
|
230
|
+
return this.http.get(`${this.basePath}/earnings/pending`);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Get payout history (paginated)
|
|
234
|
+
*/
|
|
235
|
+
async getPayouts(params) {
|
|
236
|
+
return this.http.get(`${this.basePath}/earnings/payouts`, params);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
exports.ArtisanEarningsApi = ArtisanEarningsApi;
|
|
240
|
+
class ArtisanPerformanceApi {
|
|
241
|
+
constructor(http) {
|
|
242
|
+
this.http = http;
|
|
243
|
+
this.basePath = '/api/v1/artisans/performance';
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Get performance rating breakdown
|
|
247
|
+
*/
|
|
248
|
+
async getRating() {
|
|
249
|
+
return this.http.get(`${this.basePath}/rating`);
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Get consumer reviews (paginated)
|
|
253
|
+
*/
|
|
254
|
+
async getReviews(params) {
|
|
255
|
+
return this.http.get(`${this.basePath}/reviews`, params);
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Get performance metrics for a period
|
|
259
|
+
*/
|
|
260
|
+
async getMetrics(params) {
|
|
261
|
+
return this.http.get(`${this.basePath}/metrics`, { period: params.period });
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Get active performance alerts
|
|
265
|
+
*/
|
|
266
|
+
async getAlerts() {
|
|
267
|
+
return this.http.get(`${this.basePath}/alerts`);
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Acknowledge a performance alert
|
|
271
|
+
*/
|
|
272
|
+
async acknowledgeAlert(alertId) {
|
|
273
|
+
return this.http.post(`${this.basePath}/alerts/${alertId}/acknowledge`);
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
exports.ArtisanPerformanceApi = ArtisanPerformanceApi;
|
|
277
|
+
//# sourceMappingURL=artisans.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artisans.js","sourceRoot":"","sources":["../../../src/api/artisans.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Authentication API
|
|
4
|
+
* Handles OTP, login, registration, sessions, and token management
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.AuthApi = void 0;
|
|
8
|
+
class AuthApi {
|
|
9
|
+
constructor(http) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.basePath = '/api/v1/auth';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Request OTP for login or registration
|
|
15
|
+
* Rate limited to prevent abuse
|
|
16
|
+
*/
|
|
17
|
+
async requestOtp(data) {
|
|
18
|
+
return this.http.post(`${this.basePath}/otp/request`, data);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Verify OTP and authenticate user
|
|
22
|
+
* Returns tokens and user profile if successful
|
|
23
|
+
*/
|
|
24
|
+
async verifyOtp(data) {
|
|
25
|
+
return this.http.post(`${this.basePath}/otp/verify`, data);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Register a new user with verified OTP
|
|
29
|
+
*/
|
|
30
|
+
async register(data) {
|
|
31
|
+
return this.http.post(`${this.basePath}/register`, data);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Refresh access token using refresh token
|
|
35
|
+
*/
|
|
36
|
+
async refreshToken(data) {
|
|
37
|
+
return this.http.post(`${this.basePath}/token/refresh`, data);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Logout current session
|
|
41
|
+
*/
|
|
42
|
+
async logout() {
|
|
43
|
+
return this.http.post(`${this.basePath}/logout`);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Logout all sessions for the current user
|
|
47
|
+
*/
|
|
48
|
+
async logoutAll() {
|
|
49
|
+
return this.http.post(`${this.basePath}/logout/all`);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Get all active sessions for the current user
|
|
53
|
+
*/
|
|
54
|
+
async getSessions() {
|
|
55
|
+
return this.http.get(`${this.basePath}/sessions`);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Revoke a specific session
|
|
59
|
+
*/
|
|
60
|
+
async revokeSession(sessionId) {
|
|
61
|
+
return this.http.delete(`${this.basePath}/sessions/${sessionId}`);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Get current user profile
|
|
65
|
+
*/
|
|
66
|
+
async getCurrentUser() {
|
|
67
|
+
return this.http.get(`${this.basePath}/me`);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Get all roles (admin only)
|
|
71
|
+
*/
|
|
72
|
+
async getRoles() {
|
|
73
|
+
return this.http.get(`${this.basePath}/roles`);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Get all permissions (admin only)
|
|
77
|
+
*/
|
|
78
|
+
async getPermissions() {
|
|
79
|
+
return this.http.get(`${this.basePath}/permissions`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.AuthApi = AuthApi;
|
|
83
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAiBH,MAAa,OAAO;IAGlB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,cAAc,CAAC;IAEK,CAAC;IAEjD;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,IAAmB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAiB,GAAG,IAAI,CAAC,QAAQ,cAAc,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,IAAkB;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,GAAG,IAAI,CAAC,QAAQ,aAAa,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,IAAqB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,GAAG,IAAI,CAAC,QAAQ,WAAW,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,IAAqB;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,GAAG,IAAI,CAAC,QAAQ,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAO,GAAG,IAAI,CAAC,QAAQ,SAAS,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAO,GAAG,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,GAAG,IAAI,CAAC,QAAQ,WAAW,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAO,GAAG,IAAI,CAAC,QAAQ,aAAa,SAAS,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAiB,GAAG,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAY,GAAG,IAAI,CAAC,QAAQ,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAkB,GAAG,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAC;IACxE,CAAC;CACF;AAnFD,0BAmFC"}
|