@sekolaos/shared-api 0.0.0-stage → 1.0.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/dist/chunk-2FTS6JMO.cjs +66 -0
- package/dist/chunk-2FTS6JMO.cjs.map +1 -0
- package/dist/chunk-3RS57C3E.cjs +90 -0
- package/dist/chunk-3RS57C3E.cjs.map +1 -0
- package/dist/chunk-4ECXVAIQ.cjs +50 -0
- package/dist/chunk-4ECXVAIQ.cjs.map +1 -0
- package/dist/chunk-4T52ABA5.js +63 -0
- package/dist/chunk-4T52ABA5.js.map +1 -0
- package/dist/chunk-6JGO2CUT.js +52 -0
- package/dist/chunk-6JGO2CUT.js.map +1 -0
- package/dist/chunk-6UCHRWSL.js +43 -0
- package/dist/chunk-6UCHRWSL.js.map +1 -0
- package/dist/chunk-AGNLUQKT.cjs +52 -0
- package/dist/chunk-AGNLUQKT.cjs.map +1 -0
- package/dist/chunk-AGPMQFZM.js +3 -0
- package/dist/chunk-AGPMQFZM.js.map +1 -0
- package/dist/chunk-ALMSFTRM.js +66 -0
- package/dist/chunk-ALMSFTRM.js.map +1 -0
- package/dist/chunk-AOBHBJ2G.cjs +89 -0
- package/dist/chunk-AOBHBJ2G.cjs.map +1 -0
- package/dist/chunk-BOASJ3VG.cjs +31 -0
- package/dist/chunk-BOASJ3VG.cjs.map +1 -0
- package/dist/chunk-CBTITLRR.js +43 -0
- package/dist/chunk-CBTITLRR.js.map +1 -0
- package/dist/chunk-CP46K2UB.cjs +74 -0
- package/dist/chunk-CP46K2UB.cjs.map +1 -0
- package/dist/chunk-DMEWJ56D.js +76 -0
- package/dist/chunk-DMEWJ56D.js.map +1 -0
- package/dist/chunk-DNNK2DMM.cjs +119 -0
- package/dist/chunk-DNNK2DMM.cjs.map +1 -0
- package/dist/chunk-GKKJMRCL.js +75 -0
- package/dist/chunk-GKKJMRCL.js.map +1 -0
- package/dist/chunk-GRBBLS5Y.js +77 -0
- package/dist/chunk-GRBBLS5Y.js.map +1 -0
- package/dist/chunk-GRXFSXG5.js +124 -0
- package/dist/chunk-GRXFSXG5.js.map +1 -0
- package/dist/chunk-GUJVCKEN.js +102 -0
- package/dist/chunk-GUJVCKEN.js.map +1 -0
- package/dist/chunk-LA7MRXWR.js +77 -0
- package/dist/chunk-LA7MRXWR.js.map +1 -0
- package/dist/chunk-MRFGUSN2.js +20 -0
- package/dist/chunk-MRFGUSN2.js.map +1 -0
- package/dist/chunk-NBVPN4KL.cjs +23 -0
- package/dist/chunk-NBVPN4KL.cjs.map +1 -0
- package/dist/chunk-NGFFI4XQ.cjs +61 -0
- package/dist/chunk-NGFFI4XQ.cjs.map +1 -0
- package/dist/chunk-OKSRSOYJ.cjs +88 -0
- package/dist/chunk-OKSRSOYJ.cjs.map +1 -0
- package/dist/chunk-PPK3HQOY.cjs +134 -0
- package/dist/chunk-PPK3HQOY.cjs.map +1 -0
- package/dist/chunk-QJSOSQ7M.cjs +23 -0
- package/dist/chunk-QJSOSQ7M.cjs.map +1 -0
- package/dist/chunk-R37QQTQS.cjs +64 -0
- package/dist/chunk-R37QQTQS.cjs.map +1 -0
- package/dist/chunk-R7ACSDOA.cjs +114 -0
- package/dist/chunk-R7ACSDOA.cjs.map +1 -0
- package/dist/chunk-S6QFHKCE.js +99 -0
- package/dist/chunk-S6QFHKCE.js.map +1 -0
- package/dist/chunk-TSLEYQKD.cjs +92 -0
- package/dist/chunk-TSLEYQKD.cjs.map +1 -0
- package/dist/chunk-WF63F6RJ.cjs +4 -0
- package/dist/chunk-WF63F6RJ.cjs.map +1 -0
- package/dist/chunk-XU5UEIBL.js +43 -0
- package/dist/chunk-XU5UEIBL.js.map +1 -0
- package/dist/chunk-XVG5Z6B5.cjs +79 -0
- package/dist/chunk-XVG5Z6B5.cjs.map +1 -0
- package/dist/chunk-YA2KONBB.js +20 -0
- package/dist/chunk-YA2KONBB.js.map +1 -0
- package/dist/chunk-YK7QFPBF.js +55 -0
- package/dist/chunk-YK7QFPBF.js.map +1 -0
- package/dist/chunk-YTF4Z7I4.js +26 -0
- package/dist/chunk-YTF4Z7I4.js.map +1 -0
- package/dist/client/index.cjs +62 -0
- package/dist/client/index.cjs.map +1 -0
- package/dist/client/index.d.cts +28 -0
- package/dist/client/index.d.ts +28 -0
- package/dist/client/index.js +5 -0
- package/dist/client/index.js.map +1 -0
- package/dist/index.cjs +620 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +39 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/keys/index.cjs +56 -0
- package/dist/keys/index.cjs.map +1 -0
- package/dist/keys/index.d.cts +64 -0
- package/dist/keys/index.d.ts +64 -0
- package/dist/keys/index.js +3 -0
- package/dist/keys/index.js.map +1 -0
- package/dist/modules/academic/index.cjs +44 -0
- package/dist/modules/academic/index.cjs.map +1 -0
- package/dist/modules/academic/index.d.cts +54 -0
- package/dist/modules/academic/index.d.ts +54 -0
- package/dist/modules/academic/index.js +7 -0
- package/dist/modules/academic/index.js.map +1 -0
- package/dist/modules/attendance/index.cjs +68 -0
- package/dist/modules/attendance/index.cjs.map +1 -0
- package/dist/modules/attendance/index.d.cts +135 -0
- package/dist/modules/attendance/index.d.ts +135 -0
- package/dist/modules/attendance/index.js +7 -0
- package/dist/modules/attendance/index.js.map +1 -0
- package/dist/modules/auth/index.cjs +52 -0
- package/dist/modules/auth/index.cjs.map +1 -0
- package/dist/modules/auth/index.d.cts +44 -0
- package/dist/modules/auth/index.d.ts +44 -0
- package/dist/modules/auth/index.js +7 -0
- package/dist/modules/auth/index.js.map +1 -0
- package/dist/modules/classroom/index.cjs +60 -0
- package/dist/modules/classroom/index.cjs.map +1 -0
- package/dist/modules/classroom/index.d.cts +84 -0
- package/dist/modules/classroom/index.d.ts +84 -0
- package/dist/modules/classroom/index.js +7 -0
- package/dist/modules/classroom/index.js.map +1 -0
- package/dist/modules/lead/index.cjs +44 -0
- package/dist/modules/lead/index.cjs.map +1 -0
- package/dist/modules/lead/index.d.cts +104 -0
- package/dist/modules/lead/index.d.ts +104 -0
- package/dist/modules/lead/index.js +7 -0
- package/dist/modules/lead/index.js.map +1 -0
- package/dist/modules/student/index.cjs +76 -0
- package/dist/modules/student/index.cjs.map +1 -0
- package/dist/modules/student/index.d.cts +125 -0
- package/dist/modules/student/index.d.ts +125 -0
- package/dist/modules/student/index.js +7 -0
- package/dist/modules/student/index.js.map +1 -0
- package/dist/modules/subject/index.cjs +36 -0
- package/dist/modules/subject/index.cjs.map +1 -0
- package/dist/modules/subject/index.d.cts +40 -0
- package/dist/modules/subject/index.d.ts +40 -0
- package/dist/modules/subject/index.js +7 -0
- package/dist/modules/subject/index.js.map +1 -0
- package/dist/modules/system/index.cjs +20 -0
- package/dist/modules/system/index.cjs.map +1 -0
- package/dist/modules/system/index.d.cts +14 -0
- package/dist/modules/system/index.d.ts +14 -0
- package/dist/modules/system/index.js +7 -0
- package/dist/modules/system/index.js.map +1 -0
- package/dist/modules/teaching-schedule/index.cjs +60 -0
- package/dist/modules/teaching-schedule/index.cjs.map +1 -0
- package/dist/modules/teaching-schedule/index.d.cts +97 -0
- package/dist/modules/teaching-schedule/index.d.ts +97 -0
- package/dist/modules/teaching-schedule/index.js +7 -0
- package/dist/modules/teaching-schedule/index.js.map +1 -0
- package/dist/modules/tenant/index.cjs +68 -0
- package/dist/modules/tenant/index.cjs.map +1 -0
- package/dist/modules/tenant/index.d.cts +113 -0
- package/dist/modules/tenant/index.d.ts +113 -0
- package/dist/modules/tenant/index.js +7 -0
- package/dist/modules/tenant/index.js.map +1 -0
- package/dist/modules/upload/index.cjs +27 -0
- package/dist/modules/upload/index.cjs.map +1 -0
- package/dist/modules/upload/index.d.cts +18 -0
- package/dist/modules/upload/index.d.ts +18 -0
- package/dist/modules/upload/index.js +6 -0
- package/dist/modules/upload/index.js.map +1 -0
- package/dist/modules/user/index.cjs +60 -0
- package/dist/modules/user/index.cjs.map +1 -0
- package/dist/modules/user/index.d.cts +117 -0
- package/dist/modules/user/index.d.ts +117 -0
- package/dist/modules/user/index.js +7 -0
- package/dist/modules/user/index.js.map +1 -0
- package/dist/provider.cjs +17 -0
- package/dist/provider.cjs.map +1 -0
- package/dist/provider.d.cts +15 -0
- package/dist/provider.d.ts +15 -0
- package/dist/provider.js +4 -0
- package/dist/provider.js.map +1 -0
- package/dist/types-BxV0BtVp.d.cts +89 -0
- package/dist/types-BxV0BtVp.d.ts +89 -0
- package/package.json +137 -4
- package/README.md +0 -3
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkQJSOSQ7M_cjs = require('./chunk-QJSOSQ7M.cjs');
|
|
4
|
+
var chunkNGFFI4XQ_cjs = require('./chunk-NGFFI4XQ.cjs');
|
|
5
|
+
var chunkXVG5Z6B5_cjs = require('./chunk-XVG5Z6B5.cjs');
|
|
6
|
+
var reactQuery = require('@tanstack/react-query');
|
|
7
|
+
|
|
8
|
+
var ENDPOINT = chunkQJSOSQ7M_cjs.API_ENDPOINTS.tenants;
|
|
9
|
+
async function getCurrentTenant() {
|
|
10
|
+
return chunkNGFFI4XQ_cjs.getData(`${ENDPOINT}/current`);
|
|
11
|
+
}
|
|
12
|
+
async function getTenantModules() {
|
|
13
|
+
return chunkNGFFI4XQ_cjs.getData(`${ENDPOINT}/current/modules`);
|
|
14
|
+
}
|
|
15
|
+
async function updateCurrentTenant(payload) {
|
|
16
|
+
return chunkNGFFI4XQ_cjs.putData(`${ENDPOINT}/current`, payload);
|
|
17
|
+
}
|
|
18
|
+
async function listAttendanceShifts(params) {
|
|
19
|
+
return chunkNGFFI4XQ_cjs.getData(`${ENDPOINT}/shifts`, { params });
|
|
20
|
+
}
|
|
21
|
+
async function getAttendanceShift(targetType) {
|
|
22
|
+
return chunkNGFFI4XQ_cjs.getData(`${ENDPOINT}/shifts/${targetType}`);
|
|
23
|
+
}
|
|
24
|
+
async function upsertAttendanceShifts(payload) {
|
|
25
|
+
return chunkNGFFI4XQ_cjs.putData(`${ENDPOINT}/shifts`, payload);
|
|
26
|
+
}
|
|
27
|
+
async function createTenant(payload) {
|
|
28
|
+
return chunkNGFFI4XQ_cjs.postData(ENDPOINT, payload);
|
|
29
|
+
}
|
|
30
|
+
function useCurrentTenant() {
|
|
31
|
+
return reactQuery.useQuery({ queryKey: chunkXVG5Z6B5_cjs.tenantKeys.current(), queryFn: getCurrentTenant });
|
|
32
|
+
}
|
|
33
|
+
function useTenantModules() {
|
|
34
|
+
return reactQuery.useQuery({ queryKey: chunkXVG5Z6B5_cjs.tenantKeys.modules(), queryFn: getTenantModules });
|
|
35
|
+
}
|
|
36
|
+
function useAttendanceShifts(params) {
|
|
37
|
+
return reactQuery.useQuery({
|
|
38
|
+
queryKey: chunkXVG5Z6B5_cjs.tenantKeys.shifts(params),
|
|
39
|
+
queryFn: () => listAttendanceShifts(params)
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function useAttendanceShift(targetType) {
|
|
43
|
+
return reactQuery.useQuery({
|
|
44
|
+
queryKey: chunkXVG5Z6B5_cjs.tenantKeys.shiftDetail(targetType),
|
|
45
|
+
queryFn: () => getAttendanceShift(targetType)
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
function useUpdateCurrentTenant() {
|
|
49
|
+
const queryClient = reactQuery.useQueryClient();
|
|
50
|
+
return reactQuery.useMutation({
|
|
51
|
+
mutationFn: updateCurrentTenant,
|
|
52
|
+
onSuccess: async (tenant) => {
|
|
53
|
+
queryClient.setQueryData(chunkXVG5Z6B5_cjs.tenantKeys.current(), tenant);
|
|
54
|
+
await queryClient.invalidateQueries({ queryKey: chunkXVG5Z6B5_cjs.tenantKeys.all });
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function useUpsertAttendanceShifts() {
|
|
59
|
+
const queryClient = reactQuery.useQueryClient();
|
|
60
|
+
return reactQuery.useMutation({
|
|
61
|
+
mutationFn: upsertAttendanceShifts,
|
|
62
|
+
onSuccess: async () => {
|
|
63
|
+
await queryClient.invalidateQueries({ queryKey: chunkXVG5Z6B5_cjs.tenantKeys.shifts() });
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
function useCreateTenant() {
|
|
68
|
+
const queryClient = reactQuery.useQueryClient();
|
|
69
|
+
return reactQuery.useMutation({
|
|
70
|
+
mutationFn: createTenant,
|
|
71
|
+
onSuccess: async () => {
|
|
72
|
+
await queryClient.invalidateQueries({ queryKey: chunkXVG5Z6B5_cjs.tenantKeys.all });
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
exports.createTenant = createTenant;
|
|
78
|
+
exports.getAttendanceShift = getAttendanceShift;
|
|
79
|
+
exports.getCurrentTenant = getCurrentTenant;
|
|
80
|
+
exports.getTenantModules = getTenantModules;
|
|
81
|
+
exports.listAttendanceShifts = listAttendanceShifts;
|
|
82
|
+
exports.updateCurrentTenant = updateCurrentTenant;
|
|
83
|
+
exports.upsertAttendanceShifts = upsertAttendanceShifts;
|
|
84
|
+
exports.useAttendanceShift = useAttendanceShift;
|
|
85
|
+
exports.useAttendanceShifts = useAttendanceShifts;
|
|
86
|
+
exports.useCreateTenant = useCreateTenant;
|
|
87
|
+
exports.useCurrentTenant = useCurrentTenant;
|
|
88
|
+
exports.useTenantModules = useTenantModules;
|
|
89
|
+
exports.useUpdateCurrentTenant = useUpdateCurrentTenant;
|
|
90
|
+
exports.useUpsertAttendanceShifts = useUpsertAttendanceShifts;
|
|
91
|
+
//# sourceMappingURL=chunk-TSLEYQKD.cjs.map
|
|
92
|
+
//# sourceMappingURL=chunk-TSLEYQKD.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/modules/tenant/tenant.api.ts"],"names":["API_ENDPOINTS","getData","putData","postData","useQuery","tenantKeys","useQueryClient","useMutation"],"mappings":"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","file":"chunk-TSLEYQKD.cjs","sourcesContent":["import type {\r\n AttendanceShift,\r\n CreateTenantInput,\r\n PortalModuleItem,\r\n ShiftTargetType,\r\n Tenant,\r\n UpdateTenantProfileInput,\r\n UpsertAttendanceShiftInput,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData, postData, putData } from \"../../client/http\";\r\nimport { tenantKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.tenants;\r\n\r\nexport async function getCurrentTenant(): Promise<Tenant> {\r\n return getData<Tenant>(`${ENDPOINT}/current`);\r\n}\r\n\r\nexport async function getTenantModules(): Promise<PortalModuleItem[]> {\r\n return getData<PortalModuleItem[]>(`${ENDPOINT}/current/modules`);\r\n}\r\n\r\nexport async function updateCurrentTenant(payload: UpdateTenantProfileInput): Promise<Tenant> {\r\n return putData<Tenant, UpdateTenantProfileInput>(`${ENDPOINT}/current`, payload);\r\n}\r\n\r\nexport async function listAttendanceShifts(params?: {\r\n targetType?: ShiftTargetType;\r\n}): Promise<AttendanceShift[]> {\r\n return getData<AttendanceShift[]>(`${ENDPOINT}/shifts`, { params });\r\n}\r\n\r\nexport async function getAttendanceShift(targetType: ShiftTargetType): Promise<AttendanceShift> {\r\n return getData<AttendanceShift>(`${ENDPOINT}/shifts/${targetType}`);\r\n}\r\n\r\nexport interface UpsertAttendanceShiftsPayload {\r\n SISWA?: UpsertAttendanceShiftInput;\r\n GURU?: UpsertAttendanceShiftInput;\r\n}\r\n\r\nexport async function upsertAttendanceShifts(\r\n payload: UpsertAttendanceShiftsPayload\r\n): Promise<AttendanceShift[]> {\r\n return putData<AttendanceShift[], UpsertAttendanceShiftsPayload>(`${ENDPOINT}/shifts`, payload);\r\n}\r\n\r\nexport async function createTenant(payload: CreateTenantInput): Promise<Tenant> {\r\n return postData<Tenant, CreateTenantInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport function useCurrentTenant() {\r\n return useQuery({ queryKey: tenantKeys.current(), queryFn: getCurrentTenant });\r\n}\r\n\r\nexport function useTenantModules() {\r\n return useQuery({ queryKey: tenantKeys.modules(), queryFn: getTenantModules });\r\n}\r\n\r\nexport function useAttendanceShifts(params?: { targetType?: ShiftTargetType }) {\r\n return useQuery({\r\n queryKey: tenantKeys.shifts(params),\r\n queryFn: () => listAttendanceShifts(params),\r\n });\r\n}\r\n\r\nexport function useAttendanceShift(targetType: ShiftTargetType) {\r\n return useQuery({\r\n queryKey: tenantKeys.shiftDetail(targetType),\r\n queryFn: () => getAttendanceShift(targetType),\r\n });\r\n}\r\n\r\nexport function useUpdateCurrentTenant() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: updateCurrentTenant,\r\n onSuccess: async (tenant) => {\r\n queryClient.setQueryData(tenantKeys.current(), tenant);\r\n await queryClient.invalidateQueries({ queryKey: tenantKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpsertAttendanceShifts() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: upsertAttendanceShifts,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: tenantKeys.shifts() });\r\n },\r\n });\r\n}\r\n\r\nexport function useCreateTenant() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createTenant,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: tenantKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport type {\r\n AttendanceShift,\r\n CreateTenantInput,\r\n PortalModuleItem,\r\n ShiftTargetType,\r\n Tenant,\r\n UpdateTenantProfileInput,\r\n UpsertAttendanceShiftInput,\r\n};\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-WF63F6RJ.cjs"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { API_ENDPOINTS } from './chunk-MRFGUSN2.js';
|
|
2
|
+
import { getData, postData, putData } from './chunk-6JGO2CUT.js';
|
|
3
|
+
import { subjectKeys } from './chunk-ALMSFTRM.js';
|
|
4
|
+
import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
|
|
5
|
+
|
|
6
|
+
var ENDPOINT = API_ENDPOINTS.subjects;
|
|
7
|
+
async function listSubjects(params) {
|
|
8
|
+
return getData(ENDPOINT, { params });
|
|
9
|
+
}
|
|
10
|
+
async function createSubject(payload) {
|
|
11
|
+
return postData(ENDPOINT, payload);
|
|
12
|
+
}
|
|
13
|
+
async function updateSubject(id, payload) {
|
|
14
|
+
return putData(`${ENDPOINT}/${id}`, payload);
|
|
15
|
+
}
|
|
16
|
+
function useSubjects(params) {
|
|
17
|
+
return useQuery({
|
|
18
|
+
queryKey: subjectKeys.list(params),
|
|
19
|
+
queryFn: () => listSubjects(params)
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
function useCreateSubject() {
|
|
23
|
+
const queryClient = useQueryClient();
|
|
24
|
+
return useMutation({
|
|
25
|
+
mutationFn: createSubject,
|
|
26
|
+
onSuccess: async () => {
|
|
27
|
+
await queryClient.invalidateQueries({ queryKey: subjectKeys.all });
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function useUpdateSubject() {
|
|
32
|
+
const queryClient = useQueryClient();
|
|
33
|
+
return useMutation({
|
|
34
|
+
mutationFn: ({ id, payload }) => updateSubject(id, payload),
|
|
35
|
+
onSuccess: async () => {
|
|
36
|
+
await queryClient.invalidateQueries({ queryKey: subjectKeys.all });
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { createSubject, listSubjects, updateSubject, useCreateSubject, useSubjects, useUpdateSubject };
|
|
42
|
+
//# sourceMappingURL=chunk-XU5UEIBL.js.map
|
|
43
|
+
//# sourceMappingURL=chunk-XU5UEIBL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/modules/subject/subject.api.ts"],"names":[],"mappings":";;;;;AAWA,IAAM,WAAW,aAAA,CAAc,QAAA;AAE/B,eAAsB,aAAa,MAAA,EAAwD;AACzF,EAAA,OAAO,OAAA,CAAmB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AAChD;AAEA,eAAsB,cAAc,OAAA,EAA+C;AACjF,EAAA,OAAO,QAAA,CAAsC,UAAU,OAAO,CAAA;AAChE;AAEA,eAAsB,aAAA,CAAc,IAAY,OAAA,EAA+C;AAC7F,EAAA,OAAO,QAAqC,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AAC1E;AAEO,SAAS,YAAY,MAAA,EAAoC;AAC9D,EAAA,OAAO,QAAA,CAAS;AAAA,IACd,QAAA,EAAU,WAAA,CAAY,IAAA,CAAK,MAA6C,CAAA;AAAA,IACxE,OAAA,EAAS,MAAM,YAAA,CAAa,MAAM;AAAA,GACnC,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,aAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAU,WAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,CAAC,EAAE,EAAA,EAAI,SAAQ,KACzB,aAAA,CAAc,IAAI,OAAO,CAAA;AAAA,IAC3B,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAU,WAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH","file":"chunk-XU5UEIBL.js","sourcesContent":["import type {\r\n CreateSubjectInput,\r\n Subject,\r\n SubjectListQuery,\r\n UpdateSubjectInput,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData, postData, putData } from \"../../client/http\";\r\nimport { subjectKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.subjects;\r\n\r\nexport async function listSubjects(params?: Partial<SubjectListQuery>): Promise<Subject[]> {\r\n return getData<Subject[]>(ENDPOINT, { params });\r\n}\r\n\r\nexport async function createSubject(payload: CreateSubjectInput): Promise<Subject> {\r\n return postData<Subject, CreateSubjectInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateSubject(id: string, payload: UpdateSubjectInput): Promise<Subject> {\r\n return putData<Subject, UpdateSubjectInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport function useSubjects(params?: Partial<SubjectListQuery>) {\r\n return useQuery({\r\n queryKey: subjectKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listSubjects(params),\r\n });\r\n}\r\n\r\nexport function useCreateSubject() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createSubject,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: subjectKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateSubject() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateSubjectInput }) =>\r\n updateSubject(id, payload),\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: subjectKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport type { CreateSubjectInput, Subject, SubjectListQuery, UpdateSubjectInput };\r\n"]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/keys/index.ts
|
|
4
|
+
var authKeys = {
|
|
5
|
+
all: ["auth"],
|
|
6
|
+
me: () => [...authKeys.all, "me"]
|
|
7
|
+
};
|
|
8
|
+
var tenantKeys = {
|
|
9
|
+
all: ["tenants"],
|
|
10
|
+
current: () => [...tenantKeys.all, "current"],
|
|
11
|
+
modules: () => [...tenantKeys.all, "modules"],
|
|
12
|
+
shifts: (params) => [...tenantKeys.all, "shifts", params ?? {}],
|
|
13
|
+
shiftDetail: (targetType) => [...tenantKeys.all, "shifts", targetType]
|
|
14
|
+
};
|
|
15
|
+
var academicYearKeys = {
|
|
16
|
+
all: ["academic-years"],
|
|
17
|
+
list: (params) => [...academicYearKeys.all, "list", params ?? {}],
|
|
18
|
+
detail: (id) => [...academicYearKeys.all, "detail", id]
|
|
19
|
+
};
|
|
20
|
+
var subjectKeys = {
|
|
21
|
+
all: ["subjects"],
|
|
22
|
+
list: (params) => [...subjectKeys.all, "list", params ?? {}]
|
|
23
|
+
};
|
|
24
|
+
var classroomKeys = {
|
|
25
|
+
all: ["classrooms"],
|
|
26
|
+
list: (params) => [...classroomKeys.all, "list", params ?? {}],
|
|
27
|
+
detail: (id) => [...classroomKeys.all, "detail", id],
|
|
28
|
+
students: (id) => [...classroomKeys.detail(id), "students"]
|
|
29
|
+
};
|
|
30
|
+
var studentKeys = {
|
|
31
|
+
all: ["students"],
|
|
32
|
+
list: (params) => [...studentKeys.all, "list", params ?? {}],
|
|
33
|
+
detail: (id) => [...studentKeys.all, "detail", id],
|
|
34
|
+
kioskCache: () => [...studentKeys.all, "kiosk-cache"],
|
|
35
|
+
qrCode: (id) => [...studentKeys.detail(id), "qr-code"]
|
|
36
|
+
};
|
|
37
|
+
var scheduleKeys = {
|
|
38
|
+
all: ["teaching-schedules"],
|
|
39
|
+
list: (params) => [...scheduleKeys.all, "list", params ?? {}],
|
|
40
|
+
conflicts: (params) => [...scheduleKeys.all, "conflicts", params]
|
|
41
|
+
};
|
|
42
|
+
var attendanceKeys = {
|
|
43
|
+
all: ["attendance"],
|
|
44
|
+
history: (params) => [...attendanceKeys.all, "history", params],
|
|
45
|
+
dynamicQrStream: (params) => [...attendanceKeys.all, "dynamic-qr", params ?? {}],
|
|
46
|
+
picketSchedules: (params) => [...attendanceKeys.all, "picket-schedules", params ?? {}]
|
|
47
|
+
};
|
|
48
|
+
var userKeys = {
|
|
49
|
+
all: ["users"],
|
|
50
|
+
roles: () => [...userKeys.all, "roles"],
|
|
51
|
+
teachers: (params) => [...userKeys.all, "teachers", "list", params ?? {}],
|
|
52
|
+
teacherDetail: (id) => [...userKeys.all, "teachers", "detail", id]
|
|
53
|
+
};
|
|
54
|
+
var leadKeys = {
|
|
55
|
+
all: ["leads"],
|
|
56
|
+
list: (params) => [...leadKeys.all, "list", params ?? {}]
|
|
57
|
+
};
|
|
58
|
+
var uploadKeys = {
|
|
59
|
+
all: ["uploads"]
|
|
60
|
+
};
|
|
61
|
+
var systemKeys = {
|
|
62
|
+
all: ["system"],
|
|
63
|
+
health: () => [...systemKeys.all, "health"]
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
exports.academicYearKeys = academicYearKeys;
|
|
67
|
+
exports.attendanceKeys = attendanceKeys;
|
|
68
|
+
exports.authKeys = authKeys;
|
|
69
|
+
exports.classroomKeys = classroomKeys;
|
|
70
|
+
exports.leadKeys = leadKeys;
|
|
71
|
+
exports.scheduleKeys = scheduleKeys;
|
|
72
|
+
exports.studentKeys = studentKeys;
|
|
73
|
+
exports.subjectKeys = subjectKeys;
|
|
74
|
+
exports.systemKeys = systemKeys;
|
|
75
|
+
exports.tenantKeys = tenantKeys;
|
|
76
|
+
exports.uploadKeys = uploadKeys;
|
|
77
|
+
exports.userKeys = userKeys;
|
|
78
|
+
//# sourceMappingURL=chunk-XVG5Z6B5.cjs.map
|
|
79
|
+
//# sourceMappingURL=chunk-XVG5Z6B5.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/keys/index.ts"],"names":[],"mappings":"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","file":"chunk-XVG5Z6B5.cjs","sourcesContent":["type Params = Record<string, unknown> | undefined;\r\n\r\nexport const authKeys = {\r\n all: [\"auth\"] as const,\r\n me: () => [...authKeys.all, \"me\"] as const,\r\n};\r\n\r\nexport const tenantKeys = {\r\n all: [\"tenants\"] as const,\r\n current: () => [...tenantKeys.all, \"current\"] as const,\r\n modules: () => [...tenantKeys.all, \"modules\"] as const,\r\n shifts: (params?: Params) => [...tenantKeys.all, \"shifts\", params ?? {}] as const,\r\n shiftDetail: (targetType: \"SISWA\" | \"GURU\") => [...tenantKeys.all, \"shifts\", targetType] as const,\r\n};\r\n\r\nexport const academicYearKeys = {\r\n all: [\"academic-years\"] as const,\r\n list: (params?: Params) => [...academicYearKeys.all, \"list\", params ?? {}] as const,\r\n detail: (id: string) => [...academicYearKeys.all, \"detail\", id] as const,\r\n};\r\n\r\nexport const subjectKeys = {\r\n all: [\"subjects\"] as const,\r\n list: (params?: Params) => [...subjectKeys.all, \"list\", params ?? {}] as const,\r\n};\r\n\r\nexport const classroomKeys = {\r\n all: [\"classrooms\"] as const,\r\n list: (params?: Params) => [...classroomKeys.all, \"list\", params ?? {}] as const,\r\n detail: (id: string) => [...classroomKeys.all, \"detail\", id] as const,\r\n students: (id: string) => [...classroomKeys.detail(id), \"students\"] as const,\r\n};\r\n\r\nexport const studentKeys = {\r\n all: [\"students\"] as const,\r\n list: (params?: Params) => [...studentKeys.all, \"list\", params ?? {}] as const,\r\n detail: (id: string) => [...studentKeys.all, \"detail\", id] as const,\r\n kioskCache: () => [...studentKeys.all, \"kiosk-cache\"] as const,\r\n qrCode: (id: string) => [...studentKeys.detail(id), \"qr-code\"] as const,\r\n};\r\n\r\nexport const scheduleKeys = {\r\n all: [\"teaching-schedules\"] as const,\r\n list: (params?: Params) => [...scheduleKeys.all, \"list\", params ?? {}] as const,\r\n conflicts: (params: Record<string, unknown>) => [...scheduleKeys.all, \"conflicts\", params] as const,\r\n};\r\n\r\nexport const attendanceKeys = {\r\n all: [\"attendance\"] as const,\r\n history: (params: Record<string, unknown>) => [...attendanceKeys.all, \"history\", params] as const,\r\n dynamicQrStream: (params?: Record<string, unknown>) =>\r\n [...attendanceKeys.all, \"dynamic-qr\", params ?? {}] as const,\r\n picketSchedules: (params?: Params) => [...attendanceKeys.all, \"picket-schedules\", params ?? {}] as const,\r\n};\r\n\r\nexport const userKeys = {\r\n all: [\"users\"] as const,\r\n roles: () => [...userKeys.all, \"roles\"] as const,\r\n teachers: (params?: Params) => [...userKeys.all, \"teachers\", \"list\", params ?? {}] as const,\r\n teacherDetail: (id: string) => [...userKeys.all, \"teachers\", \"detail\", id] as const,\r\n};\r\n\r\nexport const leadKeys = {\r\n all: [\"leads\"] as const,\r\n list: (params?: Params) => [...leadKeys.all, \"list\", params ?? {}] as const,\r\n};\r\n\r\nexport const uploadKeys = {\r\n all: [\"uploads\"] as const,\r\n};\r\n\r\nexport const systemKeys = {\r\n all: [\"system\"] as const,\r\n health: () => [...systemKeys.all, \"health\"] as const,\r\n};\r\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { API_ENDPOINTS } from './chunk-MRFGUSN2.js';
|
|
2
|
+
import { getData } from './chunk-6JGO2CUT.js';
|
|
3
|
+
import { systemKeys } from './chunk-ALMSFTRM.js';
|
|
4
|
+
import { useQuery } from '@tanstack/react-query';
|
|
5
|
+
|
|
6
|
+
async function getHealth() {
|
|
7
|
+
return getData(API_ENDPOINTS.health);
|
|
8
|
+
}
|
|
9
|
+
function useHealth(options) {
|
|
10
|
+
return useQuery({
|
|
11
|
+
queryKey: systemKeys.health(),
|
|
12
|
+
queryFn: getHealth,
|
|
13
|
+
enabled: options?.enabled ?? true,
|
|
14
|
+
staleTime: 3e4
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { getHealth, useHealth };
|
|
19
|
+
//# sourceMappingURL=chunk-YA2KONBB.js.map
|
|
20
|
+
//# sourceMappingURL=chunk-YA2KONBB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/modules/system/system.api.ts"],"names":[],"mappings":";;;;;AAYA,eAAsB,SAAA,GAAwC;AAC5D,EAAA,OAAO,OAAA,CAA2B,cAAc,MAAM,CAAA;AACxD;AAEO,SAAS,UAAU,OAAA,EAAiC;AACzD,EAAA,OAAO,QAAA,CAAS;AAAA,IACd,QAAA,EAAU,WAAW,MAAA,EAAO;AAAA,IAC5B,OAAA,EAAS,SAAA;AAAA,IACT,OAAA,EAAS,SAAS,OAAA,IAAW,IAAA;AAAA,IAC7B,SAAA,EAAW;AAAA,GACZ,CAAA;AACH","file":"chunk-YA2KONBB.js","sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData } from \"../../client/http\";\r\nimport { systemKeys } from \"../../keys\";\r\n\r\nexport interface HealthCheckResult {\r\n status: \"ok\" | \"degraded\" | \"down\";\r\n uptime?: number;\r\n timestamp?: string;\r\n services?: Record<string, string>;\r\n}\r\n\r\nexport async function getHealth(): Promise<HealthCheckResult> {\r\n return getData<HealthCheckResult>(API_ENDPOINTS.health);\r\n}\r\n\r\nexport function useHealth(options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: systemKeys.health(),\r\n queryFn: getHealth,\r\n enabled: options?.enabled ?? true,\r\n staleTime: 30_000,\r\n });\r\n}\r\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { API_ENDPOINTS } from './chunk-MRFGUSN2.js';
|
|
2
|
+
import { getData, postData, putData } from './chunk-6JGO2CUT.js';
|
|
3
|
+
import { academicYearKeys } from './chunk-ALMSFTRM.js';
|
|
4
|
+
import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
|
|
5
|
+
|
|
6
|
+
var ENDPOINT = API_ENDPOINTS.academicYears;
|
|
7
|
+
async function listAcademicYears(params) {
|
|
8
|
+
return getData(ENDPOINT, { params });
|
|
9
|
+
}
|
|
10
|
+
async function createAcademicYear(payload) {
|
|
11
|
+
return postData(ENDPOINT, payload);
|
|
12
|
+
}
|
|
13
|
+
async function updateAcademicYear(id, payload) {
|
|
14
|
+
return putData(`${ENDPOINT}/${id}`, payload);
|
|
15
|
+
}
|
|
16
|
+
async function activateAcademicYear(id) {
|
|
17
|
+
return postData(`${ENDPOINT}/${id}/activate`);
|
|
18
|
+
}
|
|
19
|
+
function useAcademicYears(params) {
|
|
20
|
+
return useQuery({
|
|
21
|
+
queryKey: academicYearKeys.list(params),
|
|
22
|
+
queryFn: () => listAcademicYears(params)
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
function useCreateAcademicYear() {
|
|
26
|
+
const queryClient = useQueryClient();
|
|
27
|
+
return useMutation({
|
|
28
|
+
mutationFn: createAcademicYear,
|
|
29
|
+
onSuccess: async () => {
|
|
30
|
+
await queryClient.invalidateQueries({ queryKey: academicYearKeys.all });
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
function useUpdateAcademicYear() {
|
|
35
|
+
const queryClient = useQueryClient();
|
|
36
|
+
return useMutation({
|
|
37
|
+
mutationFn: ({ id, payload }) => updateAcademicYear(id, payload),
|
|
38
|
+
onSuccess: async () => {
|
|
39
|
+
await queryClient.invalidateQueries({ queryKey: academicYearKeys.all });
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function useActivateAcademicYear() {
|
|
44
|
+
const queryClient = useQueryClient();
|
|
45
|
+
return useMutation({
|
|
46
|
+
mutationFn: activateAcademicYear,
|
|
47
|
+
onSuccess: async () => {
|
|
48
|
+
await queryClient.invalidateQueries();
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export { activateAcademicYear, createAcademicYear, listAcademicYears, updateAcademicYear, useAcademicYears, useActivateAcademicYear, useCreateAcademicYear, useUpdateAcademicYear };
|
|
54
|
+
//# sourceMappingURL=chunk-YK7QFPBF.js.map
|
|
55
|
+
//# sourceMappingURL=chunk-YK7QFPBF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/modules/academic/academic-year.api.ts"],"names":[],"mappings":";;;;;AAWA,IAAM,WAAW,aAAA,CAAc,aAAA;AAE/B,eAAsB,kBACpB,MAAA,EACyB;AACzB,EAAA,OAAO,OAAA,CAAwB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AACrD;AAEA,eAAsB,mBAAmB,OAAA,EAAyD;AAChG,EAAA,OAAO,QAAA,CAAgD,UAAU,OAAO,CAAA;AAC1E;AAEA,eAAsB,kBAAA,CACpB,IACA,OAAA,EACuB;AACvB,EAAA,OAAO,QAA+C,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AACpF;AAEA,eAAsB,qBAAqB,EAAA,EAAmC;AAC5E,EAAA,OAAO,QAAA,CAAuB,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,SAAA,CAAW,CAAA;AAC5D;AAEO,SAAS,iBAAiB,MAAA,EAAyC;AACxE,EAAA,OAAO,QAAA,CAAS;AAAA,IACd,QAAA,EAAU,gBAAA,CAAiB,IAAA,CAAK,MAA6C,CAAA;AAAA,IAC7E,OAAA,EAAS,MAAM,iBAAA,CAAkB,MAAM;AAAA,GACxC,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,kBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAU,gBAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,CAAC,EAAE,EAAA,EAAI,SAAQ,KACzB,kBAAA,CAAmB,IAAI,OAAO,CAAA;AAAA,IAChC,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAU,gBAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,uBAAA,GAA0B;AACxC,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,oBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,EAAkB;AAAA,IACtC;AAAA,GACD,CAAA;AACH","file":"chunk-YK7QFPBF.js","sourcesContent":["import type {\r\n AcademicYear,\r\n AcademicYearListQuery,\r\n CreateAcademicYearInput,\r\n UpdateAcademicYearInput,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData, postData, putData } from \"../../client/http\";\r\nimport { academicYearKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.academicYears;\r\n\r\nexport async function listAcademicYears(\r\n params?: Partial<AcademicYearListQuery>\r\n): Promise<AcademicYear[]> {\r\n return getData<AcademicYear[]>(ENDPOINT, { params });\r\n}\r\n\r\nexport async function createAcademicYear(payload: CreateAcademicYearInput): Promise<AcademicYear> {\r\n return postData<AcademicYear, CreateAcademicYearInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateAcademicYear(\r\n id: string,\r\n payload: UpdateAcademicYearInput\r\n): Promise<AcademicYear> {\r\n return putData<AcademicYear, UpdateAcademicYearInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function activateAcademicYear(id: string): Promise<AcademicYear> {\r\n return postData<AcademicYear>(`${ENDPOINT}/${id}/activate`);\r\n}\r\n\r\nexport function useAcademicYears(params?: Partial<AcademicYearListQuery>) {\r\n return useQuery({\r\n queryKey: academicYearKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listAcademicYears(params),\r\n });\r\n}\r\n\r\nexport function useCreateAcademicYear() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createAcademicYear,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: academicYearKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateAcademicYear() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateAcademicYearInput }) =>\r\n updateAcademicYear(id, payload),\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: academicYearKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useActivateAcademicYear() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: activateAcademicYear,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries();\r\n },\r\n });\r\n}\r\n\r\nexport type {\r\n AcademicYear,\r\n AcademicYearListQuery,\r\n CreateAcademicYearInput,\r\n UpdateAcademicYearInput,\r\n};\r\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { API_ENDPOINTS } from './chunk-MRFGUSN2.js';
|
|
2
|
+
import { uploadData } from './chunk-6JGO2CUT.js';
|
|
3
|
+
import { useMutation } from '@tanstack/react-query';
|
|
4
|
+
|
|
5
|
+
var ENDPOINT = API_ENDPOINTS.uploads;
|
|
6
|
+
async function uploadTenantLogo(file) {
|
|
7
|
+
return uploadSingle(`${ENDPOINT}/tenant-logo`, file);
|
|
8
|
+
}
|
|
9
|
+
async function uploadStudentPhoto(file) {
|
|
10
|
+
return uploadSingle(`${ENDPOINT}/student-photo`, file);
|
|
11
|
+
}
|
|
12
|
+
async function uploadSingle(url, file) {
|
|
13
|
+
const formData = new FormData();
|
|
14
|
+
formData.append("file", file);
|
|
15
|
+
return uploadData(url, formData);
|
|
16
|
+
}
|
|
17
|
+
function useUploadTenantLogo() {
|
|
18
|
+
return useMutation({ mutationFn: uploadTenantLogo });
|
|
19
|
+
}
|
|
20
|
+
function useUploadStudentPhoto() {
|
|
21
|
+
return useMutation({ mutationFn: uploadStudentPhoto });
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export { uploadStudentPhoto, uploadTenantLogo, useUploadStudentPhoto, useUploadTenantLogo };
|
|
25
|
+
//# sourceMappingURL=chunk-YTF4Z7I4.js.map
|
|
26
|
+
//# sourceMappingURL=chunk-YTF4Z7I4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/modules/upload/upload.api.ts"],"names":[],"mappings":";;;;AAIA,IAAM,WAAW,aAAA,CAAc,OAAA;AAG/B,eAAsB,iBAAiB,IAAA,EAA0C;AAC/E,EAAA,OAAO,YAAA,CAAkC,CAAA,EAAG,QAAQ,CAAA,YAAA,CAAA,EAAgB,IAAI,CAAA;AAC1E;AAGA,eAAsB,mBAAmB,IAAA,EAA2C;AAClF,EAAA,OAAO,YAAA,CAAmC,CAAA,EAAG,QAAQ,CAAA,cAAA,CAAA,EAAkB,IAAI,CAAA;AAC7E;AAEA,eAAe,YAAA,CAAwB,KAAa,IAAA,EAAgC;AAClF,EAAA,MAAM,QAAA,GAAW,IAAI,QAAA,EAAS;AAC9B,EAAA,QAAA,CAAS,MAAA,CAAO,QAAQ,IAAI,CAAA;AAC5B,EAAA,OAAO,UAAA,CAAsB,KAAK,QAAQ,CAAA;AAC5C;AAEO,SAAS,mBAAA,GAAsB;AACpC,EAAA,OAAO,WAAA,CAAY,EAAE,UAAA,EAAY,gBAAA,EAAkB,CAAA;AACrD;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,OAAO,WAAA,CAAY,EAAE,UAAA,EAAY,kBAAA,EAAoB,CAAA;AACvD","file":"chunk-YTF4Z7I4.js","sourcesContent":["import { useMutation } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { uploadData } from \"../../client/http\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.uploads;\r\n\r\n/** `POST /uploads/tenant-logo` — butuh permission `tenant:update`. Maks. 2 MB (JPEG/PNG/WEBP). */\r\nexport async function uploadTenantLogo(file: File): Promise<{ logoUrl: string }> {\r\n return uploadSingle<{ logoUrl: string }>(`${ENDPOINT}/tenant-logo`, file);\r\n}\r\n\r\n/** `POST /uploads/student-photo` — butuh permission `student:update`. Maks. 2 MB (JPEG/PNG/WEBP). */\r\nexport async function uploadStudentPhoto(file: File): Promise<{ photoUrl: string }> {\r\n return uploadSingle<{ photoUrl: string }>(`${ENDPOINT}/student-photo`, file);\r\n}\r\n\r\nasync function uploadSingle<TResponse>(url: string, file: File): Promise<TResponse> {\r\n const formData = new FormData();\r\n formData.append(\"file\", file);\r\n return uploadData<TResponse>(url, formData);\r\n}\r\n\r\nexport function useUploadTenantLogo() {\r\n return useMutation({ mutationFn: uploadTenantLogo });\r\n}\r\n\r\nexport function useUploadStudentPhoto() {\r\n return useMutation({ mutationFn: uploadStudentPhoto });\r\n}\r\n\r\n"]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
require('../chunk-WF63F6RJ.cjs');
|
|
4
|
+
var chunkNGFFI4XQ_cjs = require('../chunk-NGFFI4XQ.cjs');
|
|
5
|
+
var chunkPPK3HQOY_cjs = require('../chunk-PPK3HQOY.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, "deleteData", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return chunkNGFFI4XQ_cjs.deleteData; }
|
|
12
|
+
});
|
|
13
|
+
Object.defineProperty(exports, "getData", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () { return chunkNGFFI4XQ_cjs.getData; }
|
|
16
|
+
});
|
|
17
|
+
Object.defineProperty(exports, "getEnvelope", {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
get: function () { return chunkNGFFI4XQ_cjs.getEnvelope; }
|
|
20
|
+
});
|
|
21
|
+
Object.defineProperty(exports, "getPaginated", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () { return chunkNGFFI4XQ_cjs.getPaginated; }
|
|
24
|
+
});
|
|
25
|
+
Object.defineProperty(exports, "patchData", {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () { return chunkNGFFI4XQ_cjs.patchData; }
|
|
28
|
+
});
|
|
29
|
+
Object.defineProperty(exports, "postData", {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: function () { return chunkNGFFI4XQ_cjs.postData; }
|
|
32
|
+
});
|
|
33
|
+
Object.defineProperty(exports, "putData", {
|
|
34
|
+
enumerable: true,
|
|
35
|
+
get: function () { return chunkNGFFI4XQ_cjs.putData; }
|
|
36
|
+
});
|
|
37
|
+
Object.defineProperty(exports, "uploadData", {
|
|
38
|
+
enumerable: true,
|
|
39
|
+
get: function () { return chunkNGFFI4XQ_cjs.uploadData; }
|
|
40
|
+
});
|
|
41
|
+
Object.defineProperty(exports, "SekolaosApiError", {
|
|
42
|
+
enumerable: true,
|
|
43
|
+
get: function () { return chunkPPK3HQOY_cjs.SekolaosApiError; }
|
|
44
|
+
});
|
|
45
|
+
Object.defineProperty(exports, "apiClient", {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function () { return chunkPPK3HQOY_cjs.apiClient; }
|
|
48
|
+
});
|
|
49
|
+
Object.defineProperty(exports, "configureApiClient", {
|
|
50
|
+
enumerable: true,
|
|
51
|
+
get: function () { return chunkPPK3HQOY_cjs.configureApiClient; }
|
|
52
|
+
});
|
|
53
|
+
Object.defineProperty(exports, "getApiClientConfig", {
|
|
54
|
+
enumerable: true,
|
|
55
|
+
get: function () { return chunkPPK3HQOY_cjs.getApiClientConfig; }
|
|
56
|
+
});
|
|
57
|
+
Object.defineProperty(exports, "setBearerToken", {
|
|
58
|
+
enumerable: true,
|
|
59
|
+
get: function () { return chunkPPK3HQOY_cjs.setBearerToken; }
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=index.cjs.map
|
|
62
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { C as ClientConfig, R as RequestOptions, B as BaseApiResponse, b as PaginatedData } from '../types-BxV0BtVp.cjs';
|
|
2
|
+
export { A as ApiErrorDetail, a as ApiErrorPayload, M as MutationOptionsCustom, P as PaginatedApiResponse, c as PaginatedResult, d as PaginationMeta, Q as QueryOptionsWithoutKey, S as SekolaosApiError, U as UploadFileResult } from '../types-BxV0BtVp.cjs';
|
|
3
|
+
import { AxiosInstance } from 'axios';
|
|
4
|
+
import '@tanstack/react-query';
|
|
5
|
+
|
|
6
|
+
declare const apiClient: AxiosInstance;
|
|
7
|
+
declare function configureApiClient(config: Partial<ClientConfig>): void;
|
|
8
|
+
declare function getApiClientConfig(): Readonly<ClientConfig>;
|
|
9
|
+
declare function setBearerToken(token?: string): void;
|
|
10
|
+
|
|
11
|
+
/** GET request that unwraps the `{ success, message, data }` envelope. */
|
|
12
|
+
declare function getData<T>(url: string, options?: RequestOptions): Promise<T>;
|
|
13
|
+
/** GET request returning the full envelope (useful when `meta` is needed). */
|
|
14
|
+
declare function getEnvelope<T>(url: string, options?: RequestOptions): Promise<BaseApiResponse<T>>;
|
|
15
|
+
/** GET request for paginated endpoints; resolves the `{ items, meta }` payload. */
|
|
16
|
+
declare function getPaginated<T>(url: string, options?: RequestOptions): Promise<PaginatedData<T>>;
|
|
17
|
+
/** POST request that unwraps the response envelope. */
|
|
18
|
+
declare function postData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
19
|
+
/** PATCH request that unwraps the response envelope. */
|
|
20
|
+
declare function patchData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
21
|
+
/** PUT request that unwraps the response envelope. */
|
|
22
|
+
declare function putData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
23
|
+
/** DELETE request that unwraps the response envelope. */
|
|
24
|
+
declare function deleteData<TResponse = void>(url: string, options?: RequestOptions): Promise<TResponse>;
|
|
25
|
+
/** Uploads a binary payload as `multipart/form-data`. */
|
|
26
|
+
declare function uploadData<TResponse>(url: string, formData: FormData, options?: RequestOptions): Promise<TResponse>;
|
|
27
|
+
|
|
28
|
+
export { BaseApiResponse, ClientConfig, PaginatedData, RequestOptions, apiClient, configureApiClient, deleteData, getApiClientConfig, getData, getEnvelope, getPaginated, patchData, postData, putData, setBearerToken, uploadData };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { C as ClientConfig, R as RequestOptions, B as BaseApiResponse, b as PaginatedData } from '../types-BxV0BtVp.js';
|
|
2
|
+
export { A as ApiErrorDetail, a as ApiErrorPayload, M as MutationOptionsCustom, P as PaginatedApiResponse, c as PaginatedResult, d as PaginationMeta, Q as QueryOptionsWithoutKey, S as SekolaosApiError, U as UploadFileResult } from '../types-BxV0BtVp.js';
|
|
3
|
+
import { AxiosInstance } from 'axios';
|
|
4
|
+
import '@tanstack/react-query';
|
|
5
|
+
|
|
6
|
+
declare const apiClient: AxiosInstance;
|
|
7
|
+
declare function configureApiClient(config: Partial<ClientConfig>): void;
|
|
8
|
+
declare function getApiClientConfig(): Readonly<ClientConfig>;
|
|
9
|
+
declare function setBearerToken(token?: string): void;
|
|
10
|
+
|
|
11
|
+
/** GET request that unwraps the `{ success, message, data }` envelope. */
|
|
12
|
+
declare function getData<T>(url: string, options?: RequestOptions): Promise<T>;
|
|
13
|
+
/** GET request returning the full envelope (useful when `meta` is needed). */
|
|
14
|
+
declare function getEnvelope<T>(url: string, options?: RequestOptions): Promise<BaseApiResponse<T>>;
|
|
15
|
+
/** GET request for paginated endpoints; resolves the `{ items, meta }` payload. */
|
|
16
|
+
declare function getPaginated<T>(url: string, options?: RequestOptions): Promise<PaginatedData<T>>;
|
|
17
|
+
/** POST request that unwraps the response envelope. */
|
|
18
|
+
declare function postData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
19
|
+
/** PATCH request that unwraps the response envelope. */
|
|
20
|
+
declare function patchData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
21
|
+
/** PUT request that unwraps the response envelope. */
|
|
22
|
+
declare function putData<TResponse, TBody = unknown>(url: string, body?: TBody, options?: RequestOptions): Promise<TResponse>;
|
|
23
|
+
/** DELETE request that unwraps the response envelope. */
|
|
24
|
+
declare function deleteData<TResponse = void>(url: string, options?: RequestOptions): Promise<TResponse>;
|
|
25
|
+
/** Uploads a binary payload as `multipart/form-data`. */
|
|
26
|
+
declare function uploadData<TResponse>(url: string, formData: FormData, options?: RequestOptions): Promise<TResponse>;
|
|
27
|
+
|
|
28
|
+
export { BaseApiResponse, ClientConfig, PaginatedData, RequestOptions, apiClient, configureApiClient, deleteData, getApiClientConfig, getData, getEnvelope, getPaginated, patchData, postData, putData, setBearerToken, uploadData };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import '../chunk-AGPMQFZM.js';
|
|
2
|
+
export { deleteData, getData, getEnvelope, getPaginated, patchData, postData, putData, uploadData } from '../chunk-6JGO2CUT.js';
|
|
3
|
+
export { SekolaosApiError, apiClient, configureApiClient, getApiClientConfig, setBearerToken } from '../chunk-GRXFSXG5.js';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|