@goweekdays/layer-common 1.2.4 → 1.2.5
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/CHANGELOG.md +6 -0
- package/components/ListGroupSelection.vue +116 -0
- package/components/RoleForm.vue +326 -0
- package/components/RolePermissionFormCreate.vue +2 -2
- package/components/RolePermissionMain.vue +119 -184
- package/composables/useAddress.ts +4 -4
- package/composables/useChartOfAccount.ts +7 -10
- package/composables/useFile.ts +4 -7
- package/composables/useInvoice.ts +11 -17
- package/composables/useLocalAuth.ts +7 -7
- package/composables/useMember.ts +12 -18
- package/composables/useOrder.ts +1 -1
- package/composables/useOrg.ts +13 -19
- package/composables/usePayment.ts +1 -1
- package/composables/usePaymentMethod.ts +24 -37
- package/composables/usePermission.ts +2 -1
- package/composables/usePrice.ts +1 -1
- package/composables/usePromoCode.ts +4 -4
- package/composables/useRole.ts +25 -41
- package/composables/useSubscription.ts +25 -37
- package/composables/useUser.ts +10 -10
- package/composables/useUtils.ts +1 -1
- package/composables/useVerification.ts +1 -1
- package/package.json +1 -1
- package/plugins/API.ts +1 -1
- package/plugins/member.client.ts +4 -4
- package/plugins/secure.client.ts +3 -3
- package/types/local.d.ts +6 -0
- package/types/permission.d.ts +2 -0
- package/types/role.d.ts +1 -0
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
class="text-none"
|
|
7
7
|
rounded="pill"
|
|
8
8
|
variant="tonal"
|
|
9
|
-
@click="
|
|
9
|
+
@click="setRole({ mode: 'add', dialog: true })"
|
|
10
10
|
size="large"
|
|
11
11
|
v-if="canCreateRole"
|
|
12
12
|
>
|
|
13
|
-
|
|
13
|
+
Add Role
|
|
14
14
|
</v-btn>
|
|
15
15
|
</v-row>
|
|
16
16
|
</v-col>
|
|
@@ -60,90 +60,61 @@
|
|
|
60
60
|
</span>
|
|
61
61
|
<v-chip>{{ value.length }}</v-chip>
|
|
62
62
|
</template>
|
|
63
|
-
|
|
64
|
-
<template #item.action-table="{ item }" v-if="canDeleteRole">
|
|
65
|
-
<v-menu :close-on-content-click="false" offset-y width="150">
|
|
66
|
-
<template v-slot:activator="{ props }">
|
|
67
|
-
<v-icon v-bind="props">mdi-dots-horizontal</v-icon>
|
|
68
|
-
</template>
|
|
69
|
-
<v-list>
|
|
70
|
-
<v-list-item @click="openDeleteDialog(item._id)">
|
|
71
|
-
Delete Role
|
|
72
|
-
</v-list-item>
|
|
73
|
-
</v-list>
|
|
74
|
-
</v-menu>
|
|
75
|
-
</template>
|
|
76
63
|
</v-data-table>
|
|
77
64
|
</v-card>
|
|
78
65
|
</v-col>
|
|
79
66
|
|
|
80
67
|
<!-- dialogs -->
|
|
81
|
-
<v-dialog v-model="
|
|
82
|
-
<
|
|
83
|
-
|
|
84
|
-
:
|
|
85
|
-
|
|
86
|
-
@
|
|
87
|
-
v-model:type="type"
|
|
88
|
-
:types="props.types"
|
|
89
|
-
@success:create-more="getRoles()"
|
|
68
|
+
<v-dialog v-model="dialogAdd" width="500" persistent>
|
|
69
|
+
<RoleForm
|
|
70
|
+
v-model="role"
|
|
71
|
+
:app="props.app"
|
|
72
|
+
@cancel="setRole({ mode: 'add' })"
|
|
73
|
+
@submit="submitAdd()"
|
|
90
74
|
/>
|
|
91
75
|
</v-dialog>
|
|
92
76
|
|
|
93
|
-
<v-dialog v-model="
|
|
94
|
-
<
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
:name="name"
|
|
102
|
-
:id="roleId"
|
|
77
|
+
<v-dialog v-model="dialogPreview" width="500" persistent>
|
|
78
|
+
<RoleForm
|
|
79
|
+
title="Role Details"
|
|
80
|
+
v-model="role"
|
|
81
|
+
@close="setRole({ mode: 'view' })"
|
|
82
|
+
@edit="handOpenEdit()"
|
|
83
|
+
@delete="handleOpenDelete()"
|
|
84
|
+
mode="view"
|
|
103
85
|
/>
|
|
104
86
|
</v-dialog>
|
|
105
87
|
|
|
106
|
-
<
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
<p class="text-subtitle-2">
|
|
117
|
-
Are you sure you want to delete this role? This action cannot be
|
|
118
|
-
undone.
|
|
119
|
-
</p>
|
|
120
|
-
</template>
|
|
121
|
-
|
|
122
|
-
<template #footer>
|
|
123
|
-
<v-btn
|
|
124
|
-
variant="text"
|
|
125
|
-
@click="confirmDialog = false"
|
|
126
|
-
:disabled="deleteLoading"
|
|
127
|
-
>
|
|
128
|
-
Close
|
|
129
|
-
</v-btn>
|
|
130
|
-
<v-btn
|
|
131
|
-
color="primary"
|
|
132
|
-
variant="flat"
|
|
133
|
-
@click="handleDeleteRole"
|
|
134
|
-
:loading="deleteLoading"
|
|
135
|
-
>
|
|
136
|
-
Delete Role
|
|
137
|
-
</v-btn>
|
|
138
|
-
</template>
|
|
139
|
-
</ConfirmDialog>
|
|
88
|
+
<v-dialog v-model="dialogEdit" width="500" persistent>
|
|
89
|
+
<RoleForm
|
|
90
|
+
title="Edit Role Details"
|
|
91
|
+
:app="props.app"
|
|
92
|
+
v-model="role"
|
|
93
|
+
@cancel="setRole({ mode: 'edit' })"
|
|
94
|
+
@submit="submitEdit()"
|
|
95
|
+
mode="edit"
|
|
96
|
+
/>
|
|
97
|
+
</v-dialog>
|
|
140
98
|
|
|
141
|
-
<
|
|
99
|
+
<v-dialog v-model="dialogDelete" width="450" persistent>
|
|
100
|
+
<ConfirmationPrompt
|
|
101
|
+
title="Delete Role"
|
|
102
|
+
action="Delete Role"
|
|
103
|
+
content="Are you sure you want to delete this role? This action cannot be undone."
|
|
104
|
+
@cancel="setRole({ mode: 'delete' })"
|
|
105
|
+
@confirm="submitDelete()"
|
|
106
|
+
:message="message"
|
|
107
|
+
/>
|
|
108
|
+
</v-dialog>
|
|
142
109
|
</v-row>
|
|
143
110
|
</template>
|
|
144
111
|
|
|
145
112
|
<script setup lang="ts">
|
|
146
113
|
const props = defineProps({
|
|
114
|
+
app: {
|
|
115
|
+
type: String,
|
|
116
|
+
default: "",
|
|
117
|
+
},
|
|
147
118
|
orgId: {
|
|
148
119
|
type: String,
|
|
149
120
|
default: "",
|
|
@@ -201,15 +172,53 @@ const type = defineModel<string>("type", {
|
|
|
201
172
|
|
|
202
173
|
const { headerSearch } = useLocal();
|
|
203
174
|
|
|
204
|
-
const {
|
|
175
|
+
const {
|
|
176
|
+
role,
|
|
177
|
+
add: addRole,
|
|
178
|
+
getAll: _getRoles,
|
|
179
|
+
updateById,
|
|
180
|
+
deleteById,
|
|
181
|
+
} = useRole();
|
|
205
182
|
|
|
206
183
|
const page = ref(1);
|
|
207
184
|
const pages = ref(0);
|
|
208
185
|
const pageRange = ref("-- - -- of --");
|
|
186
|
+
const modeRole = ref("");
|
|
209
187
|
|
|
210
188
|
const message = ref("");
|
|
211
|
-
|
|
212
|
-
|
|
189
|
+
|
|
190
|
+
function setRole({
|
|
191
|
+
mode = "",
|
|
192
|
+
dialog = false,
|
|
193
|
+
data = useRole().role.value,
|
|
194
|
+
} = {}) {
|
|
195
|
+
Object.assign(
|
|
196
|
+
role.value,
|
|
197
|
+
JSON.parse(
|
|
198
|
+
JSON.stringify({
|
|
199
|
+
...data,
|
|
200
|
+
type: props.app,
|
|
201
|
+
})
|
|
202
|
+
)
|
|
203
|
+
);
|
|
204
|
+
modeRole.value = mode;
|
|
205
|
+
|
|
206
|
+
if (modeRole.value === "add") {
|
|
207
|
+
dialogAdd.value = dialog;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
if (modeRole.value === "view") {
|
|
211
|
+
dialogPreview.value = dialog;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (modeRole.value === "edit") {
|
|
215
|
+
dialogEdit.value = dialog;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
if (modeRole.value === "delete") {
|
|
219
|
+
dialogDelete.value = dialog;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
213
222
|
|
|
214
223
|
const items = ref<Array<Record<string, any>>>([]);
|
|
215
224
|
|
|
@@ -242,135 +251,61 @@ watchEffect(() => {
|
|
|
242
251
|
});
|
|
243
252
|
|
|
244
253
|
function tableRowClickHandler(_: any, data: any) {
|
|
245
|
-
|
|
246
|
-
roleId.value = data.item._id;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
const createDialog = ref(false);
|
|
250
|
-
|
|
251
|
-
function success() {
|
|
252
|
-
createDialog.value = false;
|
|
253
|
-
type.value = "";
|
|
254
|
-
getRoles();
|
|
254
|
+
setRole({ data: data.item, mode: "view", dialog: true });
|
|
255
255
|
}
|
|
256
256
|
|
|
257
|
-
const
|
|
258
|
-
|
|
259
|
-
const name = ref("");
|
|
260
|
-
const selectedPermissions = ref<Array<string>>([]);
|
|
261
|
-
const originalPermissions = ref<Array<string>>([]);
|
|
262
|
-
const edit = ref(false);
|
|
263
|
-
|
|
264
|
-
watchEffect(() => {
|
|
265
|
-
if (!edit.value) {
|
|
266
|
-
selectedPermissions.value = originalPermissions.value;
|
|
267
|
-
}
|
|
268
|
-
});
|
|
269
|
-
|
|
270
|
-
const roleId = ref("");
|
|
257
|
+
const dialogAdd = ref(false);
|
|
271
258
|
|
|
272
|
-
const
|
|
273
|
-
|
|
274
|
-
const { data: role, refresh: getRoleById } = useLazyAsyncData(
|
|
275
|
-
"role-permissions-get-by-id",
|
|
276
|
-
() => _getRoleById(roleId.value)
|
|
277
|
-
);
|
|
278
|
-
|
|
279
|
-
watchEffect(() => {
|
|
280
|
-
if (roleId.value) {
|
|
281
|
-
getRoleById();
|
|
282
|
-
}
|
|
283
|
-
});
|
|
259
|
+
const dialogPreview = ref(false);
|
|
284
260
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
261
|
+
async function submitAdd() {
|
|
262
|
+
try {
|
|
263
|
+
await addRole({
|
|
264
|
+
name: role.value.name,
|
|
265
|
+
permissions: role.value.permissions,
|
|
266
|
+
type: role.value.type,
|
|
267
|
+
org: props.orgId,
|
|
268
|
+
});
|
|
269
|
+
setRole({ mode: "add" });
|
|
270
|
+
getRoles();
|
|
271
|
+
} catch (error: any) {
|
|
272
|
+
message.value = error.response._data.message;
|
|
291
273
|
}
|
|
292
|
-
});
|
|
293
|
-
|
|
294
|
-
function filterPermissions(
|
|
295
|
-
allPermissions: TPermissions,
|
|
296
|
-
storedPermissions: string[]
|
|
297
|
-
) {
|
|
298
|
-
const filteredPermissions: TPermissions = {};
|
|
299
|
-
|
|
300
|
-
Object.entries(allPermissions).forEach(([resource, actions]) => {
|
|
301
|
-
const filteredActions = Object.entries(actions)
|
|
302
|
-
.filter(([action]) => storedPermissions.includes(`${resource}:${action}`))
|
|
303
|
-
.reduce((acc: Record<string, any>, [action, data]) => {
|
|
304
|
-
acc[action] = data;
|
|
305
|
-
return acc;
|
|
306
|
-
}, {});
|
|
307
|
-
|
|
308
|
-
if (Object.keys(filteredActions).length > 0) {
|
|
309
|
-
filteredPermissions[resource] = filteredActions;
|
|
310
|
-
}
|
|
311
|
-
});
|
|
312
|
-
|
|
313
|
-
return filteredPermissions;
|
|
314
274
|
}
|
|
315
275
|
|
|
316
|
-
const
|
|
317
|
-
const
|
|
318
|
-
|
|
319
|
-
const permissions = computed(() => {
|
|
320
|
-
if (role.value?.type === "organization") {
|
|
321
|
-
return orgPermissions;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
if (role.value?.type === "school") {
|
|
325
|
-
return schoolPermissions;
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
return {};
|
|
329
|
-
});
|
|
330
|
-
|
|
331
|
-
const Permissions = computed(() => {
|
|
332
|
-
return edit.value
|
|
333
|
-
? permissions.value
|
|
334
|
-
: filterPermissions(permissions.value, selectedPermissions.value);
|
|
335
|
-
});
|
|
276
|
+
const dialogEdit = ref(false);
|
|
277
|
+
const dialogDelete = ref(false);
|
|
336
278
|
|
|
337
|
-
function
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
getRoleById();
|
|
341
|
-
edit.value = false;
|
|
279
|
+
function handOpenEdit() {
|
|
280
|
+
dialogPreview.value = false;
|
|
281
|
+
dialogEdit.value = true;
|
|
342
282
|
}
|
|
343
283
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
284
|
+
async function submitEdit() {
|
|
285
|
+
try {
|
|
286
|
+
await updateById(role.value._id ?? "", {
|
|
287
|
+
name: role.value.name,
|
|
288
|
+
permissions: role.value.permissions,
|
|
289
|
+
});
|
|
290
|
+
await setRole({ mode: "edit" });
|
|
291
|
+
await getRoles();
|
|
292
|
+
} catch (error: any) {
|
|
293
|
+
message.value = error.response._data.message;
|
|
294
|
+
}
|
|
351
295
|
}
|
|
352
296
|
|
|
353
|
-
function
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
messageSnackbar.value = true;
|
|
297
|
+
function handleOpenDelete() {
|
|
298
|
+
dialogPreview.value = false;
|
|
299
|
+
dialogDelete.value = true;
|
|
357
300
|
}
|
|
358
301
|
|
|
359
|
-
async function
|
|
360
|
-
if (!selectedRoleId.value) return;
|
|
361
|
-
deleteLoading.value = true;
|
|
302
|
+
async function submitDelete() {
|
|
362
303
|
try {
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
confirmDialog.value = false;
|
|
366
|
-
showMessage(res.message, "success");
|
|
304
|
+
await deleteById(role.value._id ?? "");
|
|
305
|
+
dialogDelete.value = false;
|
|
367
306
|
getRoles();
|
|
368
307
|
} catch (error: any) {
|
|
369
|
-
|
|
370
|
-
showMessage(errorMessage, "error");
|
|
371
|
-
} finally {
|
|
372
|
-
deleteLoading.value = false;
|
|
373
|
-
selectedRoleId.value = null;
|
|
308
|
+
message.value = error.response._data.message;
|
|
374
309
|
}
|
|
375
310
|
}
|
|
376
311
|
</script>
|
|
@@ -13,7 +13,7 @@ export default function useAddress() {
|
|
|
13
13
|
postalCode = "",
|
|
14
14
|
taxId = "",
|
|
15
15
|
} = {}) {
|
|
16
|
-
return
|
|
16
|
+
return $fetch("/api/addresses", {
|
|
17
17
|
method: "POST",
|
|
18
18
|
body: {
|
|
19
19
|
type,
|
|
@@ -57,18 +57,18 @@ export default function useAddress() {
|
|
|
57
57
|
payload.org = orgId;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
return
|
|
60
|
+
return $fetch(`/api/addresses/details/${id}`, {
|
|
61
61
|
method: "PUT",
|
|
62
62
|
body: payload,
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
function getByUserId(user = "") {
|
|
67
|
-
return
|
|
67
|
+
return $fetch<TAddress>(`/api/addresses/user/${user}`);
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
function getByOrgId(id = "") {
|
|
71
|
-
return
|
|
71
|
+
return $fetch<TAddress>(`/api/addresses/org/${id}`);
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
const _address = useState("address", (): TAddress => {
|
|
@@ -7,7 +7,7 @@ export default function useChartOfAccount() {
|
|
|
7
7
|
children?: number;
|
|
8
8
|
}
|
|
9
9
|
) {
|
|
10
|
-
return
|
|
10
|
+
return $fetch<Record<string, any>>("/api/chart-of-accounts", {
|
|
11
11
|
method: "GET",
|
|
12
12
|
query: { page, status, orgId, children },
|
|
13
13
|
});
|
|
@@ -23,33 +23,30 @@ export default function useChartOfAccount() {
|
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
function add(value: TAddPayload) {
|
|
26
|
-
return
|
|
26
|
+
return $fetch<TAddPayload>("/api/chart-of-accounts", {
|
|
27
27
|
method: "POST",
|
|
28
28
|
body: value,
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
function getById(id: string) {
|
|
33
|
-
return
|
|
34
|
-
`/api/chart-of-accounts/id/${id}`
|
|
35
|
-
);
|
|
33
|
+
return $fetch<Record<string, any>>(`/api/chart-of-accounts/id/${id}`);
|
|
36
34
|
}
|
|
37
35
|
|
|
38
36
|
function updateById(
|
|
39
37
|
id: string,
|
|
40
38
|
value: Pick<TAddPayload, "name" | "code" | "normalBalance" | "parent">
|
|
41
39
|
) {
|
|
42
|
-
return
|
|
40
|
+
return $fetch<TAddPayload>(`/api/chart-of-accounts/id/${id}`, {
|
|
43
41
|
method: "PUT",
|
|
44
42
|
body: value,
|
|
45
43
|
});
|
|
46
44
|
}
|
|
47
45
|
|
|
48
46
|
function deleteById(id: string) {
|
|
49
|
-
return
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
);
|
|
47
|
+
return $fetch<Record<string, any>>(`/api/chart-of-accounts/id/${id}`, {
|
|
48
|
+
method: "DELETE",
|
|
49
|
+
});
|
|
53
50
|
}
|
|
54
51
|
|
|
55
52
|
return {
|
package/composables/useFile.ts
CHANGED
|
@@ -7,19 +7,16 @@ export default function useFile() {
|
|
|
7
7
|
const formData = new FormData();
|
|
8
8
|
formData.append("file", file);
|
|
9
9
|
|
|
10
|
-
return
|
|
10
|
+
return $fetch<Record<string, any>>("/api/files", {
|
|
11
11
|
method: "POST",
|
|
12
12
|
body: formData,
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
function deleteFile(attachmentId: string) {
|
|
17
|
-
return
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
method: "DELETE",
|
|
21
|
-
}
|
|
22
|
-
);
|
|
17
|
+
return $fetch<Record<string, any>>(`/api/files/${attachmentId}`, {
|
|
18
|
+
method: "DELETE",
|
|
19
|
+
});
|
|
23
20
|
}
|
|
24
21
|
|
|
25
22
|
return {
|
|
@@ -4,29 +4,23 @@ export default function useInvoice() {
|
|
|
4
4
|
throw new Error("Subscription ID is required");
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
return
|
|
8
|
-
|
|
9
|
-
{
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
},
|
|
15
|
-
}
|
|
16
|
-
);
|
|
7
|
+
return $fetch<Record<string, any>>(`/api/invoices/subscription/${id}`, {
|
|
8
|
+
method: "GET",
|
|
9
|
+
params: {
|
|
10
|
+
search,
|
|
11
|
+
page,
|
|
12
|
+
},
|
|
13
|
+
});
|
|
17
14
|
}
|
|
18
15
|
|
|
19
16
|
function getByNumber(number: string) {
|
|
20
|
-
return
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
method: "GET",
|
|
24
|
-
}
|
|
25
|
-
);
|
|
17
|
+
return $fetch<Record<string, any>>(`/api/invoices/number/${number}`, {
|
|
18
|
+
method: "GET",
|
|
19
|
+
});
|
|
26
20
|
}
|
|
27
21
|
|
|
28
22
|
function getByDueDateStatus(date: string, status: string) {
|
|
29
|
-
return
|
|
23
|
+
return $fetch<Record<string, any>>(
|
|
30
24
|
`/api/invoices/due-date/${date}/status/${status}`,
|
|
31
25
|
{
|
|
32
26
|
method: "GET",
|
|
@@ -21,7 +21,7 @@ export default function useLocalAuth() {
|
|
|
21
21
|
|
|
22
22
|
const { data: getCurrentUserReq, error: getCurrentUserErr } =
|
|
23
23
|
useLazyAsyncData("get-current-user", () =>
|
|
24
|
-
|
|
24
|
+
$fetch<TUser>(`/api/users/id/${user}`)
|
|
25
25
|
);
|
|
26
26
|
|
|
27
27
|
watchEffect(() => {
|
|
@@ -39,7 +39,7 @@ export default function useLocalAuth() {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
async function login({ email = "", password = "", role = "" }) {
|
|
42
|
-
return
|
|
42
|
+
return $fetch<Record<string, any>>("/api/auth/login", {
|
|
43
43
|
method: "POST",
|
|
44
44
|
body: JSON.stringify({ email, password, role }),
|
|
45
45
|
});
|
|
@@ -55,7 +55,7 @@ export default function useLocalAuth() {
|
|
|
55
55
|
const user = useCookie("user", cookieConfig).value;
|
|
56
56
|
if (!user) return null;
|
|
57
57
|
try {
|
|
58
|
-
const _user = await
|
|
58
|
+
const _user = await $fetch<TUser>(`/api/users/id/${user}`, {
|
|
59
59
|
method: "GET",
|
|
60
60
|
});
|
|
61
61
|
|
|
@@ -72,7 +72,7 @@ export default function useLocalAuth() {
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
try {
|
|
75
|
-
const response = await
|
|
75
|
+
const response = await $fetch("/api/auth/forget-password", {
|
|
76
76
|
method: "POST",
|
|
77
77
|
body: JSON.stringify({ email }),
|
|
78
78
|
headers: { "Content-Type": "application/json" },
|
|
@@ -90,7 +90,7 @@ export default function useLocalAuth() {
|
|
|
90
90
|
passwordConfirmation: string
|
|
91
91
|
) {
|
|
92
92
|
try {
|
|
93
|
-
return await
|
|
93
|
+
return await $fetch("/api/auth/reset-password", {
|
|
94
94
|
method: "POST",
|
|
95
95
|
body: JSON.stringify({ otp, newPassword, passwordConfirmation }),
|
|
96
96
|
headers: { "Content-Type": "application/json" },
|
|
@@ -102,13 +102,13 @@ export default function useLocalAuth() {
|
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
function verify(id: string) {
|
|
105
|
-
return
|
|
105
|
+
return $fetch<TKeyValuePair>(`/api/auth/verify/${id}`, {
|
|
106
106
|
method: "GET",
|
|
107
107
|
});
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
function signUp(email: string, referral: string) {
|
|
111
|
-
return
|
|
111
|
+
return $fetch<TKeyValuePair>("/api/auth/sign-up", {
|
|
112
112
|
method: "POST",
|
|
113
113
|
body: { email, referral },
|
|
114
114
|
});
|
package/composables/useMember.ts
CHANGED
|
@@ -22,11 +22,11 @@ export default function useMember() {
|
|
|
22
22
|
}));
|
|
23
23
|
|
|
24
24
|
function getByUserId(user: string) {
|
|
25
|
-
return
|
|
25
|
+
return $fetch<TMember>(`/api/members/user/${user}`);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
function getByUserType(user: string, type: string, org?: string) {
|
|
29
|
-
return
|
|
29
|
+
return $fetch<TMember>(`/api/members/user/${user}/app/${type}`, {
|
|
30
30
|
method: "GET",
|
|
31
31
|
query: { org },
|
|
32
32
|
});
|
|
@@ -41,7 +41,7 @@ export default function useMember() {
|
|
|
41
41
|
type = "",
|
|
42
42
|
status = "active",
|
|
43
43
|
} = {}) {
|
|
44
|
-
return
|
|
44
|
+
return $fetch<Record<string, any>>("/api/members", {
|
|
45
45
|
method: "GET",
|
|
46
46
|
query: { page, limit, search, user, org, type, status },
|
|
47
47
|
});
|
|
@@ -50,25 +50,19 @@ export default function useMember() {
|
|
|
50
50
|
verificationId: string,
|
|
51
51
|
payload: Record<string, any>
|
|
52
52
|
) {
|
|
53
|
-
return
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
body: payload,
|
|
58
|
-
}
|
|
59
|
-
);
|
|
53
|
+
return $fetch<Record<string, any>>(`/api/users/invite/${verificationId}`, {
|
|
54
|
+
method: "POST",
|
|
55
|
+
body: payload,
|
|
56
|
+
});
|
|
60
57
|
}
|
|
61
58
|
|
|
62
59
|
function createMemberInvite(verificatonId: string) {
|
|
63
|
-
return
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
method: "POST",
|
|
67
|
-
}
|
|
68
|
-
);
|
|
60
|
+
return $fetch<TMember>(`/api/members/verification/${verificatonId}`, {
|
|
61
|
+
method: "POST",
|
|
62
|
+
});
|
|
69
63
|
}
|
|
70
64
|
function updateMemberStatus(id: string, status: string) {
|
|
71
|
-
return
|
|
65
|
+
return $fetch<Record<string, any>>(
|
|
72
66
|
`/api/members/status/${status}/id/${id}`,
|
|
73
67
|
{
|
|
74
68
|
method: "PUT",
|
|
@@ -82,7 +76,7 @@ export default function useMember() {
|
|
|
82
76
|
type: string,
|
|
83
77
|
org: string
|
|
84
78
|
) {
|
|
85
|
-
return
|
|
79
|
+
return $fetch<Record<string, any>>(
|
|
86
80
|
`/api/members/id/${id}/role/${role}/type/${type}/org/${org}`,
|
|
87
81
|
{
|
|
88
82
|
method: "PUT",
|
package/composables/useOrder.ts
CHANGED