@sanvika/auth 2.5.4 → 2.5.6

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.
Files changed (2) hide show
  1. package/dist/server.js +106 -0
  2. package/package.json +1 -1
package/dist/server.js CHANGED
@@ -135,6 +135,46 @@ async function batchGetUsersFromAuth(uids) {
135
135
  }
136
136
  return results;
137
137
  }
138
+ async function updateUserProfile(uid, data, authToken = "") {
139
+ if (!uid || !data) return null;
140
+ try {
141
+ const headers = {
142
+ "Content-Type": "application/json",
143
+ ..._serviceKey() ? { "x-service-key": _serviceKey() } : {},
144
+ ...authToken ? { Authorization: `Bearer ${authToken}` } : {}
145
+ };
146
+ const res = await fetch(
147
+ `${_authUrl()}/api/user/profile?uid=${encodeURIComponent(uid)}`,
148
+ {
149
+ method: "PUT",
150
+ headers,
151
+ body: JSON.stringify(data),
152
+ signal: AbortSignal.timeout(8e3)
153
+ }
154
+ );
155
+ if (!res.ok) return null;
156
+ const json = await res.json();
157
+ return (json == null ? void 0 : json.success) ? json.data : null;
158
+ } catch {
159
+ return null;
160
+ }
161
+ }
162
+ async function deleteUserFromAuth(uid) {
163
+ if (!uid) return false;
164
+ try {
165
+ const res = await fetch(
166
+ `${_authUrl()}/api/admin/users/${encodeURIComponent(uid)}/delete`,
167
+ {
168
+ method: "DELETE",
169
+ headers: _s2sHeaders(),
170
+ signal: AbortSignal.timeout(1e4)
171
+ }
172
+ );
173
+ return res.ok;
174
+ } catch {
175
+ return false;
176
+ }
177
+ }
138
178
  async function listUsersFromAuth({ page = 1, limit = 20, search = "", authToken = "" } = {}) {
139
179
  const empty = { users: [], pagination: { page, limit, total: 0, pages: 0 } };
140
180
  try {
@@ -155,14 +195,80 @@ async function listUsersFromAuth({ page = 1, limit = 20, search = "", authToken
155
195
  return empty;
156
196
  }
157
197
  }
198
+ async function verifyAdminFromAuth(uid) {
199
+ try {
200
+ const res = await fetch(`${_authUrl()}/api/admin/admin-users/${encodeURIComponent(uid)}`, {
201
+ headers: _s2sHeaders(),
202
+ signal: AbortSignal.timeout(5e3)
203
+ });
204
+ if (!res.ok) return null;
205
+ const data = await res.json();
206
+ return data.success ? data.admin : null;
207
+ } catch {
208
+ return null;
209
+ }
210
+ }
211
+ async function ensureSuperAdminInAuth({ uid, mobile }) {
212
+ try {
213
+ const res = await fetch(`${_authUrl()}/api/admin/admin-users`, {
214
+ method: "POST",
215
+ headers: _s2sHeaders(),
216
+ body: JSON.stringify({ action: "ensureSuperAdmin", uid, mobile }),
217
+ signal: AbortSignal.timeout(5e3)
218
+ });
219
+ return res.ok;
220
+ } catch {
221
+ return false;
222
+ }
223
+ }
224
+ async function listAdminsFromAuth(authToken = "") {
225
+ try {
226
+ const res = await fetch(`${_authUrl()}/api/admin/admin-users`, {
227
+ headers: {
228
+ ..._s2sHeaders(),
229
+ ...authToken ? { Authorization: `Bearer ${authToken}` } : {}
230
+ },
231
+ signal: AbortSignal.timeout(5e3)
232
+ });
233
+ if (!res.ok) return [];
234
+ const data = await res.json();
235
+ return data.success ? data.admins || [] : [];
236
+ } catch {
237
+ return [];
238
+ }
239
+ }
240
+ async function createAdminInAuth(payload, authToken = "") {
241
+ try {
242
+ const res = await fetch(`${_authUrl()}/api/admin/admin-users`, {
243
+ method: "POST",
244
+ headers: {
245
+ ..._s2sHeaders(),
246
+ ...authToken ? { Authorization: `Bearer ${authToken}` } : {}
247
+ },
248
+ body: JSON.stringify(payload),
249
+ signal: AbortSignal.timeout(5e3)
250
+ });
251
+ if (!res.ok) return null;
252
+ const data = await res.json();
253
+ return data.success ? data.admin : null;
254
+ } catch {
255
+ return null;
256
+ }
257
+ }
158
258
  export {
159
259
  batchGetUsersFromAuth,
260
+ createAdminInAuth,
261
+ deleteUserFromAuth,
262
+ ensureSuperAdminInAuth,
160
263
  extractAuthUid,
161
264
  extractUserFromToken,
162
265
  getUserByMobileFromAuth,
163
266
  getUserFromAuth,
164
267
  getUserLocationFromAuth,
268
+ listAdminsFromAuth,
165
269
  listUsersFromAuth,
166
270
  updateUserLocation,
271
+ updateUserProfile,
272
+ verifyAdminFromAuth,
167
273
  verifyAuthToken
168
274
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanvika/auth",
3
- "version": "2.5.4",
3
+ "version": "2.5.6",
4
4
  "description": "Sanvika Auth SDK — React components/hooks + server-side token verification and user proxy",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",