@sekolaos/shared-api 1.3.2 → 1.4.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.
Files changed (101) hide show
  1. package/dist/chunk-2YBLKPOL.js +213 -0
  2. package/dist/chunk-2YBLKPOL.js.map +1 -0
  3. package/dist/chunk-4I2DP4CT.cjs +244 -0
  4. package/dist/chunk-4I2DP4CT.cjs.map +1 -0
  5. package/dist/{chunk-ZPEEFUEC.cjs → chunk-4LZJ36WZ.cjs} +4 -4
  6. package/dist/{chunk-ZPEEFUEC.cjs.map → chunk-4LZJ36WZ.cjs.map} +1 -1
  7. package/dist/{chunk-KB4TZTAC.cjs → chunk-4UJJALG5.cjs} +15 -17
  8. package/dist/chunk-4UJJALG5.cjs.map +1 -0
  9. package/dist/{chunk-U7YG2GA7.js → chunk-55WQN2DX.js} +3 -3
  10. package/dist/{chunk-U7YG2GA7.js.map → chunk-55WQN2DX.js.map} +1 -1
  11. package/dist/{chunk-XNH67ORL.js → chunk-7GCYXFMU.js} +16 -4
  12. package/dist/chunk-7GCYXFMU.js.map +1 -0
  13. package/dist/{chunk-FVPR2MOB.js → chunk-B2BMTZUU.js} +3 -3
  14. package/dist/{chunk-FVPR2MOB.js.map → chunk-B2BMTZUU.js.map} +1 -1
  15. package/dist/{chunk-NPR4GLFZ.js → chunk-BKRQIZIV.js} +3 -3
  16. package/dist/{chunk-NPR4GLFZ.js.map → chunk-BKRQIZIV.js.map} +1 -1
  17. package/dist/{chunk-PQFTPOP4.js → chunk-CARJ6QAB.js} +3 -3
  18. package/dist/{chunk-PQFTPOP4.js.map → chunk-CARJ6QAB.js.map} +1 -1
  19. package/dist/{chunk-Y4YURM53.cjs → chunk-DSGF264Y.cjs} +12 -12
  20. package/dist/{chunk-Y4YURM53.cjs.map → chunk-DSGF264Y.cjs.map} +1 -1
  21. package/dist/{chunk-LS4ZQRFS.cjs → chunk-EXEAVSTX.cjs} +11 -11
  22. package/dist/{chunk-LS4ZQRFS.cjs.map → chunk-EXEAVSTX.cjs.map} +1 -1
  23. package/dist/{chunk-BBJBCD2K.cjs → chunk-IWV6SOVN.cjs} +6 -6
  24. package/dist/{chunk-BBJBCD2K.cjs.map → chunk-IWV6SOVN.cjs.map} +1 -1
  25. package/dist/{chunk-N4OBLYCQ.cjs → chunk-IXMKB5VH.cjs} +6 -6
  26. package/dist/{chunk-N4OBLYCQ.cjs.map → chunk-IXMKB5VH.cjs.map} +1 -1
  27. package/dist/{chunk-KLRABMYU.js → chunk-KPGOAAOU.js} +3 -3
  28. package/dist/{chunk-KLRABMYU.js.map → chunk-KPGOAAOU.js.map} +1 -1
  29. package/dist/{chunk-23XAR4OH.cjs → chunk-N6Y2VQWI.cjs} +9 -9
  30. package/dist/{chunk-23XAR4OH.cjs.map → chunk-N6Y2VQWI.cjs.map} +1 -1
  31. package/dist/chunk-NGEJP5ON.cjs +39 -0
  32. package/dist/chunk-NGEJP5ON.cjs.map +1 -0
  33. package/dist/{chunk-HISL2IF2.cjs → chunk-NUKJPRPS.cjs} +17 -3
  34. package/dist/chunk-NUKJPRPS.cjs.map +1 -0
  35. package/dist/{chunk-SBBVQ3Z2.cjs → chunk-PDJ6OU3X.cjs} +5 -5
  36. package/dist/{chunk-SBBVQ3Z2.cjs.map → chunk-PDJ6OU3X.cjs.map} +1 -1
  37. package/dist/{chunk-ROK2DEVT.js → chunk-Q4UVXJMH.js} +3 -3
  38. package/dist/{chunk-ROK2DEVT.js.map → chunk-Q4UVXJMH.js.map} +1 -1
  39. package/dist/{chunk-DATSHIPR.js → chunk-R2S5EWDS.js} +3 -3
  40. package/dist/{chunk-DATSHIPR.js.map → chunk-R2S5EWDS.js.map} +1 -1
  41. package/dist/{chunk-RDW4IZWK.js → chunk-RGA4HK7T.js} +3 -3
  42. package/dist/{chunk-RDW4IZWK.js.map → chunk-RGA4HK7T.js.map} +1 -1
  43. package/dist/{chunk-CSEMYBBZ.js → chunk-TSMUTMIE.js} +9 -11
  44. package/dist/chunk-TSMUTMIE.js.map +1 -0
  45. package/dist/{chunk-AMKVNGY4.cjs → chunk-UJN47JNP.cjs} +11 -11
  46. package/dist/{chunk-AMKVNGY4.cjs.map → chunk-UJN47JNP.cjs.map} +1 -1
  47. package/dist/{chunk-EM5HIZFG.cjs → chunk-V7QGZZXE.cjs} +8 -8
  48. package/dist/{chunk-EM5HIZFG.cjs.map → chunk-V7QGZZXE.cjs.map} +1 -1
  49. package/dist/{chunk-NCENQB6W.js → chunk-WFDOYOBG.js} +3 -3
  50. package/dist/{chunk-NCENQB6W.js.map → chunk-WFDOYOBG.js.map} +1 -1
  51. package/dist/chunk-YJOKPUPT.js +34 -0
  52. package/dist/chunk-YJOKPUPT.js.map +1 -0
  53. package/dist/index.cjs +254 -165
  54. package/dist/index.d.cts +5 -4
  55. package/dist/index.d.ts +5 -4
  56. package/dist/index.js +14 -13
  57. package/dist/keys/index.cjs +21 -13
  58. package/dist/keys/index.d.cts +14 -1
  59. package/dist/keys/index.d.ts +14 -1
  60. package/dist/keys/index.js +1 -1
  61. package/dist/modules/academic/index.cjs +10 -10
  62. package/dist/modules/academic/index.js +2 -2
  63. package/dist/modules/attendance/index.cjs +80 -16
  64. package/dist/modules/attendance/index.d.cts +138 -4
  65. package/dist/modules/attendance/index.d.ts +138 -4
  66. package/dist/modules/attendance/index.js +2 -2
  67. package/dist/modules/auth/index.cjs +18 -18
  68. package/dist/modules/auth/index.js +2 -2
  69. package/dist/modules/classroom/index.cjs +14 -14
  70. package/dist/modules/classroom/index.js +2 -2
  71. package/dist/modules/lead/index.cjs +10 -10
  72. package/dist/modules/lead/index.js +2 -2
  73. package/dist/modules/roles/index.cjs +29 -0
  74. package/dist/modules/roles/index.cjs.map +1 -0
  75. package/dist/modules/roles/index.d.cts +39 -0
  76. package/dist/modules/roles/index.d.ts +39 -0
  77. package/dist/modules/roles/index.js +8 -0
  78. package/dist/modules/roles/index.js.map +1 -0
  79. package/dist/modules/student/index.cjs +18 -18
  80. package/dist/modules/student/index.js +2 -2
  81. package/dist/modules/subject/index.cjs +8 -8
  82. package/dist/modules/subject/index.js +2 -2
  83. package/dist/modules/system/index.cjs +4 -4
  84. package/dist/modules/system/index.js +2 -2
  85. package/dist/modules/teaching-schedule/index.cjs +14 -14
  86. package/dist/modules/teaching-schedule/index.js +2 -2
  87. package/dist/modules/tenant/index.cjs +16 -16
  88. package/dist/modules/tenant/index.js +2 -2
  89. package/dist/modules/user/index.cjs +14 -14
  90. package/dist/modules/user/index.d.cts +10 -20
  91. package/dist/modules/user/index.d.ts +10 -20
  92. package/dist/modules/user/index.js +2 -2
  93. package/package.json +7 -2
  94. package/dist/chunk-CSEMYBBZ.js.map +0 -1
  95. package/dist/chunk-HISL2IF2.cjs.map +0 -1
  96. package/dist/chunk-ID3UGFZZ.js +0 -102
  97. package/dist/chunk-ID3UGFZZ.js.map +0 -1
  98. package/dist/chunk-JVX37TC5.cjs +0 -117
  99. package/dist/chunk-JVX37TC5.cjs.map +0 -1
  100. package/dist/chunk-KB4TZTAC.cjs.map +0 -1
  101. package/dist/chunk-XNH67ORL.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/modules/user/user.api.ts"],"names":["API_ENDPOINTS","getData","getPaginated","postData","putData","useQuery","userKeys","useQueryClient","useMutation","roleKeys"],"mappings":"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","file":"chunk-4UJJALG5.cjs","sourcesContent":["import type {\r\n AssignUserRolesRequest,\r\n CreateTeacherInput,\r\n TeacherListQuery,\r\n UpdateTeacherInput,\r\n User,\r\n UserProfile,\r\n Role,\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, getPaginated, postData, putData } from \"../../client/http\";\r\nimport { userKeys, roleKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.users;\r\n\r\nexport async function listRoles(): Promise<Role[]> {\r\n return getData<Role[]>(`${ENDPOINT}/roles`);\r\n}\r\n\r\nexport async function listTeachers(params?: Partial<TeacherListQuery>): Promise<User[]> {\r\n const result = await getPaginated<User>(`${ENDPOINT}/teachers`, { params });\r\n return result.items;\r\n}\r\n\r\nexport async function getTeacher(id: string): Promise<UserProfile> {\r\n return getData<UserProfile>(`${ENDPOINT}/teachers/${id}`);\r\n}\r\n\r\nexport async function createTeacher(payload: CreateTeacherInput): Promise<UserProfile> {\r\n return postData<UserProfile, CreateTeacherInput>(`${ENDPOINT}/teachers`, payload);\r\n}\r\n\r\nexport async function updateTeacher(\r\n id: string,\r\n payload: UpdateTeacherInput\r\n): Promise<UserProfile> {\r\n return putData<UserProfile, UpdateTeacherInput>(`${ENDPOINT}/teachers/${id}`, payload);\r\n}\r\n\r\nexport async function assignUserRoles(\r\n userId: string,\r\n payload: AssignUserRolesRequest\r\n): Promise<{ userId: string; roleIds: string[]; academicYearId: string }> {\r\n return putData<\r\n { userId: string; roleIds: string[]; academicYearId: string },\r\n AssignUserRolesRequest\r\n >(`${API_ENDPOINTS.users}/${userId}/roles`, payload);\r\n}\r\n\r\nexport function useRoles() {\r\n return useQuery({ queryKey: userKeys.roles(), queryFn: listRoles, staleTime: 5 * 60_000 });\r\n}\r\n\r\nexport function useTeachers(params?: Partial<TeacherListQuery>) {\r\n return useQuery({\r\n queryKey: userKeys.teachers(params as Record<string, unknown> | undefined),\r\n queryFn: () => listTeachers(params),\r\n });\r\n}\r\n\r\nexport function useTeacher(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: userKeys.teacherDetail(id),\r\n queryFn: () => getTeacher(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useCreateTeacher() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createTeacher,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: userKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateTeacher() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateTeacherInput }) =>\r\n updateTeacher(id, payload),\r\n onSuccess: async (_data, variables) => {\r\n await queryClient.invalidateQueries({ queryKey: userKeys.teacherDetail(variables.id) });\r\n await queryClient.invalidateQueries({ queryKey: userKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useAssignUserRoles() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ userId, payload }: { userId: string; payload: AssignUserRolesRequest }) =>\r\n assignUserRoles(userId, payload),\r\n onSuccess: async (_data, _variables) => {\r\n await queryClient.invalidateQueries({ queryKey: userKeys.all });\r\n await queryClient.invalidateQueries({ queryKey: roleKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport type {\r\n AssignUserRolesRequest,\r\n CreateTeacherInput,\r\n Role,\r\n TeacherListQuery,\r\n UpdateTeacherInput,\r\n User,\r\n UserProfile,\r\n};\r\n"]}
@@ -1,6 +1,6 @@
1
1
  import { API_ENDPOINTS } from './chunk-Q5ZX6TKB.js';
2
2
  import { getData } from './chunk-6JGO2CUT.js';
3
- import { systemKeys } from './chunk-XNH67ORL.js';
3
+ import { systemKeys } from './chunk-7GCYXFMU.js';
4
4
  import { useQuery } from '@tanstack/react-query';
5
5
 
6
6
  async function getHealth() {
@@ -16,5 +16,5 @@ function useHealth(options) {
16
16
  }
17
17
 
18
18
  export { getHealth, useHealth };
19
- //# sourceMappingURL=chunk-U7YG2GA7.js.map
20
- //# sourceMappingURL=chunk-U7YG2GA7.js.map
19
+ //# sourceMappingURL=chunk-55WQN2DX.js.map
20
+ //# sourceMappingURL=chunk-55WQN2DX.js.map
@@ -1 +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-U7YG2GA7.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"]}
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-55WQN2DX.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"]}
@@ -42,7 +42,19 @@ var attendanceKeys = {
42
42
  all: ["attendance"],
43
43
  history: (params) => [...attendanceKeys.all, "history", params],
44
44
  dynamicQrStream: (params) => [...attendanceKeys.all, "dynamic-qr", params ?? {}],
45
- picketSchedules: (params) => [...attendanceKeys.all, "picket-schedules", params ?? {}]
45
+ picketSchedules: (params) => [...attendanceKeys.all, "picket-schedules", params ?? {}],
46
+ dutyStatus: () => [...attendanceKeys.all, "duty-status"]
47
+ };
48
+ var attendanceShiftKeys = {
49
+ all: ["attendance-shifts"],
50
+ lists: () => [...attendanceShiftKeys.all, "list"],
51
+ list: (params) => [...attendanceShiftKeys.lists(), params ?? {}],
52
+ detail: (targetType) => [...attendanceShiftKeys.all, "detail", targetType]
53
+ };
54
+ var roleKeys = {
55
+ all: ["roles"],
56
+ lists: () => [...roleKeys.all, "list"],
57
+ list: (params) => [...roleKeys.lists(), params ?? {}]
46
58
  };
47
59
  var userKeys = {
48
60
  all: ["users"],
@@ -62,6 +74,6 @@ var systemKeys = {
62
74
  health: () => [...systemKeys.all, "health"]
63
75
  };
64
76
 
65
- export { academicYearKeys, attendanceKeys, authKeys, classroomKeys, leadKeys, scheduleKeys, studentKeys, subjectKeys, systemKeys, tenantKeys, uploadKeys, userKeys };
66
- //# sourceMappingURL=chunk-XNH67ORL.js.map
67
- //# sourceMappingURL=chunk-XNH67ORL.js.map
77
+ export { academicYearKeys, attendanceKeys, attendanceShiftKeys, authKeys, classroomKeys, leadKeys, roleKeys, scheduleKeys, studentKeys, subjectKeys, systemKeys, tenantKeys, uploadKeys, userKeys };
78
+ //# sourceMappingURL=chunk-7GCYXFMU.js.map
79
+ //# sourceMappingURL=chunk-7GCYXFMU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/keys/index.ts"],"names":[],"mappings":"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","file":"chunk-7GCYXFMU.js","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 selectTenant: () => [...authKeys.all, \"select-tenant\"] 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 dutyStatus: () => [...attendanceKeys.all, \"duty-status\"] as const,\r\n};\r\n\r\n/** Query key factory khusus CRUD shift presensi (dipakai tenant + attendance). */\r\nexport const attendanceShiftKeys = {\r\n all: [\"attendance-shifts\"] as const,\r\n lists: () => [...attendanceShiftKeys.all, \"list\"] as const,\r\n list: (params?: Params) => [...attendanceShiftKeys.lists(), params ?? {}] as const,\r\n detail: (targetType: \"SISWA\" | \"GURU\") => [...attendanceShiftKeys.all, \"detail\", targetType] as const,\r\n};\r\n\r\nexport const roleKeys = {\r\n all: [\"roles\"] as const,\r\n lists: () => [...roleKeys.all, \"list\"] as const,\r\n list: (params?: Params) => [...roleKeys.lists(), 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\r\nexport * from \"./platform-admin.keys\";\r\n"]}
@@ -1,6 +1,6 @@
1
1
  import { API_ENDPOINTS } from './chunk-Q5ZX6TKB.js';
2
2
  import { getData, postData, putData } from './chunk-6JGO2CUT.js';
3
- import { classroomKeys, studentKeys } from './chunk-XNH67ORL.js';
3
+ import { classroomKeys, studentKeys } from './chunk-7GCYXFMU.js';
4
4
  import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
5
5
 
6
6
  var ENDPOINT = API_ENDPOINTS.classrooms;
@@ -75,5 +75,5 @@ function usePromoteClassStudents(options) {
75
75
  }
76
76
 
77
77
  export { createClassroom, getClassroom, getClassroomStudents, listClassrooms, promoteClassStudents, updateClassroom, useClassroom, useClassroomStudents, useClassrooms, useCreateClassroom, usePromoteClassStudents, useUpdateClassroom };
78
- //# sourceMappingURL=chunk-FVPR2MOB.js.map
79
- //# sourceMappingURL=chunk-FVPR2MOB.js.map
78
+ //# sourceMappingURL=chunk-B2BMTZUU.js.map
79
+ //# sourceMappingURL=chunk-B2BMTZUU.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modules/classroom/classroom.api.ts"],"names":[],"mappings":"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","file":"chunk-FVPR2MOB.js","sourcesContent":["import type {\r\n ClassRoom,\r\n ClassroomListQuery,\r\n CreateClassroomInput,\r\n PromoteClassStudentsInput,\r\n Student,\r\n UpdateClassroomInput,\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 type { MutationOptionsCustom } from \"../../client/types\";\r\nimport { classroomKeys, studentKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.classrooms;\r\n\r\nexport async function listClassrooms(params?: Partial<ClassroomListQuery>): Promise<ClassRoom[]> {\r\n return getData<ClassRoom[]>(ENDPOINT, { params });\r\n}\r\n\r\nexport async function getClassroom(id: string): Promise<ClassRoom> {\r\n return getData<ClassRoom>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\nexport async function createClassroom(payload: CreateClassroomInput): Promise<ClassRoom> {\r\n return postData<ClassRoom, CreateClassroomInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateClassroom(\r\n id: string,\r\n payload: UpdateClassroomInput\r\n): Promise<ClassRoom> {\r\n return putData<ClassRoom, UpdateClassroomInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function getClassroomStudents(id: string): Promise<Student[]> {\r\n return getData<Student[]>(`${ENDPOINT}/${id}/students`);\r\n}\r\n\r\nexport async function promoteClassStudents(\r\n payload: PromoteClassStudentsInput\r\n): Promise<void> {\r\n await postData<void, PromoteClassStudentsInput>(`${ENDPOINT}/promote`, payload);\r\n}\r\n\r\nexport function useClassrooms(params?: Partial<ClassroomListQuery>) {\r\n return useQuery({\r\n queryKey: classroomKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listClassrooms(params),\r\n });\r\n}\r\n\r\nexport function useClassroom(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: classroomKeys.detail(id),\r\n queryFn: () => getClassroom(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useClassroomStudents(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: classroomKeys.students(id),\r\n queryFn: () => getClassroomStudents(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useCreateClassroom() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createClassroom,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateClassroom() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateClassroomInput }) =>\r\n updateClassroom(id, payload),\r\n onSuccess: async (_data, variables) => {\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.detail(variables.id) });\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function usePromoteClassStudents(\r\n options?: MutationOptionsCustom<void, PromoteClassStudentsInput>\r\n) {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: (payload: PromoteClassStudentsInput) => promoteClassStudents(payload),\r\n onSuccess: (data, vars, ctx) => {\r\n queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n options?.onSuccess?.(data, vars, ctx);\r\n },\r\n ...options,\r\n });\r\n}\r\n\r\nexport type {\r\n ClassRoom,\r\n ClassroomListQuery,\r\n CreateClassroomInput,\r\n PromoteClassStudentsInput,\r\n Student,\r\n UpdateClassroomInput,\r\n};\r\n"]}
1
+ {"version":3,"sources":["../src/modules/classroom/classroom.api.ts"],"names":[],"mappings":"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","file":"chunk-B2BMTZUU.js","sourcesContent":["import type {\r\n ClassRoom,\r\n ClassroomListQuery,\r\n CreateClassroomInput,\r\n PromoteClassStudentsInput,\r\n Student,\r\n UpdateClassroomInput,\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 type { MutationOptionsCustom } from \"../../client/types\";\r\nimport { classroomKeys, studentKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.classrooms;\r\n\r\nexport async function listClassrooms(params?: Partial<ClassroomListQuery>): Promise<ClassRoom[]> {\r\n return getData<ClassRoom[]>(ENDPOINT, { params });\r\n}\r\n\r\nexport async function getClassroom(id: string): Promise<ClassRoom> {\r\n return getData<ClassRoom>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\nexport async function createClassroom(payload: CreateClassroomInput): Promise<ClassRoom> {\r\n return postData<ClassRoom, CreateClassroomInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateClassroom(\r\n id: string,\r\n payload: UpdateClassroomInput\r\n): Promise<ClassRoom> {\r\n return putData<ClassRoom, UpdateClassroomInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function getClassroomStudents(id: string): Promise<Student[]> {\r\n return getData<Student[]>(`${ENDPOINT}/${id}/students`);\r\n}\r\n\r\nexport async function promoteClassStudents(\r\n payload: PromoteClassStudentsInput\r\n): Promise<void> {\r\n await postData<void, PromoteClassStudentsInput>(`${ENDPOINT}/promote`, payload);\r\n}\r\n\r\nexport function useClassrooms(params?: Partial<ClassroomListQuery>) {\r\n return useQuery({\r\n queryKey: classroomKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listClassrooms(params),\r\n });\r\n}\r\n\r\nexport function useClassroom(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: classroomKeys.detail(id),\r\n queryFn: () => getClassroom(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useClassroomStudents(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: classroomKeys.students(id),\r\n queryFn: () => getClassroomStudents(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useCreateClassroom() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createClassroom,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateClassroom() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateClassroomInput }) =>\r\n updateClassroom(id, payload),\r\n onSuccess: async (_data, variables) => {\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.detail(variables.id) });\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function usePromoteClassStudents(\r\n options?: MutationOptionsCustom<void, PromoteClassStudentsInput>\r\n) {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: (payload: PromoteClassStudentsInput) => promoteClassStudents(payload),\r\n onSuccess: (data, vars, ctx) => {\r\n queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n options?.onSuccess?.(data, vars, ctx);\r\n },\r\n ...options,\r\n });\r\n}\r\n\r\nexport type {\r\n ClassRoom,\r\n ClassroomListQuery,\r\n CreateClassroomInput,\r\n PromoteClassStudentsInput,\r\n Student,\r\n UpdateClassroomInput,\r\n};\r\n"]}
@@ -1,6 +1,6 @@
1
1
  import { API_ENDPOINTS } from './chunk-Q5ZX6TKB.js';
2
2
  import { getData, putData, postData } from './chunk-6JGO2CUT.js';
3
- import { tenantKeys } from './chunk-XNH67ORL.js';
3
+ import { tenantKeys } from './chunk-7GCYXFMU.js';
4
4
  import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
5
5
 
6
6
  var ENDPOINT = API_ENDPOINTS.tenants;
@@ -73,5 +73,5 @@ function useCreateTenant() {
73
73
  }
74
74
 
75
75
  export { createTenant, getAttendanceShift, getCurrentTenant, getTenantModules, listAttendanceShifts, updateCurrentTenant, upsertAttendanceShifts, useAttendanceShift, useAttendanceShifts, useCreateTenant, useCurrentTenant, useTenantModules, useUpdateCurrentTenant, useUpsertAttendanceShifts };
76
- //# sourceMappingURL=chunk-NPR4GLFZ.js.map
77
- //# sourceMappingURL=chunk-NPR4GLFZ.js.map
76
+ //# sourceMappingURL=chunk-BKRQIZIV.js.map
77
+ //# sourceMappingURL=chunk-BKRQIZIV.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modules/tenant/tenant.api.ts"],"names":[],"mappings":"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","file":"chunk-NPR4GLFZ.js","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"]}
1
+ {"version":3,"sources":["../src/modules/tenant/tenant.api.ts"],"names":[],"mappings":"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","file":"chunk-BKRQIZIV.js","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"]}
@@ -1,6 +1,6 @@
1
1
  import { API_ENDPOINTS } from './chunk-Q5ZX6TKB.js';
2
2
  import { getData, postData, putData } from './chunk-6JGO2CUT.js';
3
- import { subjectKeys } from './chunk-XNH67ORL.js';
3
+ import { subjectKeys } from './chunk-7GCYXFMU.js';
4
4
  import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
5
5
 
6
6
  var ENDPOINT = API_ENDPOINTS.subjects;
@@ -39,5 +39,5 @@ function useUpdateSubject() {
39
39
  }
40
40
 
41
41
  export { createSubject, listSubjects, updateSubject, useCreateSubject, useSubjects, useUpdateSubject };
42
- //# sourceMappingURL=chunk-PQFTPOP4.js.map
43
- //# sourceMappingURL=chunk-PQFTPOP4.js.map
42
+ //# sourceMappingURL=chunk-CARJ6QAB.js.map
43
+ //# sourceMappingURL=chunk-CARJ6QAB.js.map
@@ -1 +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-PQFTPOP4.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"]}
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-CARJ6QAB.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"]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunk3TOBH3YY_cjs = require('./chunk-3TOBH3YY.cjs');
4
4
  var chunkNGFFI4XQ_cjs = require('./chunk-NGFFI4XQ.cjs');
5
- var chunkHISL2IF2_cjs = require('./chunk-HISL2IF2.cjs');
5
+ var chunkNUKJPRPS_cjs = require('./chunk-NUKJPRPS.cjs');
6
6
  var reactQuery = require('@tanstack/react-query');
7
7
 
8
8
  var ENDPOINT = chunk3TOBH3YY_cjs.API_ENDPOINTS.students;
@@ -36,20 +36,20 @@ async function bulkImportStudents(payload) {
36
36
  }
37
37
  function useStudents(params) {
38
38
  return reactQuery.useQuery({
39
- queryKey: chunkHISL2IF2_cjs.studentKeys.list(params),
39
+ queryKey: chunkNUKJPRPS_cjs.studentKeys.list(params),
40
40
  queryFn: () => listStudents(params)
41
41
  });
42
42
  }
43
43
  function useStudent(id, options) {
44
44
  return reactQuery.useQuery({
45
- queryKey: chunkHISL2IF2_cjs.studentKeys.detail(id),
45
+ queryKey: chunkNUKJPRPS_cjs.studentKeys.detail(id),
46
46
  queryFn: () => getStudent(id),
47
47
  enabled: options?.enabled ?? Boolean(id)
48
48
  });
49
49
  }
50
50
  function useStudentKioskCache(options) {
51
51
  return reactQuery.useQuery({
52
- queryKey: chunkHISL2IF2_cjs.studentKeys.kioskCache(),
52
+ queryKey: chunkNUKJPRPS_cjs.studentKeys.kioskCache(),
53
53
  queryFn: getStudentKioskCache,
54
54
  enabled: options?.enabled ?? true,
55
55
  staleTime: 5 * 6e4
@@ -57,7 +57,7 @@ function useStudentKioskCache(options) {
57
57
  }
58
58
  function useStudentQrCode(id, options) {
59
59
  return reactQuery.useQuery({
60
- queryKey: chunkHISL2IF2_cjs.studentKeys.qrCode(id),
60
+ queryKey: chunkNUKJPRPS_cjs.studentKeys.qrCode(id),
61
61
  queryFn: () => getStudentQrPayload(id),
62
62
  enabled: options?.enabled ?? Boolean(id)
63
63
  });
@@ -67,7 +67,7 @@ function useCreateStudent() {
67
67
  return reactQuery.useMutation({
68
68
  mutationFn: createStudent,
69
69
  onSuccess: async () => {
70
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.studentKeys.all });
70
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.studentKeys.all });
71
71
  }
72
72
  });
73
73
  }
@@ -76,8 +76,8 @@ function useUpdateStudent() {
76
76
  return reactQuery.useMutation({
77
77
  mutationFn: ({ id, payload }) => updateStudent(id, payload),
78
78
  onSuccess: async (_data, variables) => {
79
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.studentKeys.detail(variables.id) });
80
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.studentKeys.all });
79
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.studentKeys.detail(variables.id) });
80
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.studentKeys.all });
81
81
  }
82
82
  });
83
83
  }
@@ -86,7 +86,7 @@ function useDeleteStudent() {
86
86
  return reactQuery.useMutation({
87
87
  mutationFn: deleteStudent,
88
88
  onSuccess: async () => {
89
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.studentKeys.all });
89
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.studentKeys.all });
90
90
  }
91
91
  });
92
92
  }
@@ -95,7 +95,7 @@ function useBulkImportStudents(options) {
95
95
  return reactQuery.useMutation({
96
96
  mutationFn: bulkImportStudents,
97
97
  onSuccess: (data, vars, ctx) => {
98
- queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.studentKeys.all });
98
+ queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.studentKeys.all });
99
99
  options?.onSuccess?.(data, vars, ctx);
100
100
  },
101
101
  ...options
@@ -118,5 +118,5 @@ exports.useStudentKioskCache = useStudentKioskCache;
118
118
  exports.useStudentQrCode = useStudentQrCode;
119
119
  exports.useStudents = useStudents;
120
120
  exports.useUpdateStudent = useUpdateStudent;
121
- //# sourceMappingURL=chunk-Y4YURM53.cjs.map
122
- //# sourceMappingURL=chunk-Y4YURM53.cjs.map
121
+ //# sourceMappingURL=chunk-DSGF264Y.cjs.map
122
+ //# sourceMappingURL=chunk-DSGF264Y.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modules/student/student.api.ts"],"names":["API_ENDPOINTS","getPaginated","getData","postData","putData","deleteData","useQuery","studentKeys","useQueryClient","useMutation"],"mappings":"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","file":"chunk-Y4YURM53.cjs","sourcesContent":["import type {\r\n BulkImportStudentRequest,\r\n BulkImportStudentResponse,\r\n CreateStudentInput,\r\n Student,\r\n StudentListQuery,\r\n StudentOfflineCache,\r\n StudentQrPayload,\r\n UpdateStudentInput,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { deleteData, getData, getPaginated, postData, putData } from \"../../client/http\";\r\nimport type { MutationOptionsCustom } from \"../../client/types\";\r\nimport { studentKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.students;\r\n\r\nexport async function listStudents(params?: Partial<StudentListQuery>): Promise<Student[]> {\r\n const result = await getPaginated<Student>(ENDPOINT, { params });\r\n return result.items;\r\n}\r\n\r\nexport async function getStudent(id: string): Promise<Student> {\r\n return getData<Student>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\nexport async function createStudent(payload: CreateStudentInput): Promise<Student> {\r\n return postData<Student, CreateStudentInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateStudent(id: string, payload: UpdateStudentInput): Promise<Student> {\r\n return putData<Student, UpdateStudentInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function deleteStudent(id: string): Promise<void> {\r\n await deleteData<void>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\n/** Cache siswa ringkas untuk mode offline kiosk absensi. */\r\nexport async function getStudentKioskCache(): Promise<StudentOfflineCache[]> {\r\n return getData<StudentOfflineCache[]>(`${ENDPOINT}/kiosk-cache`);\r\n}\r\n\r\nexport async function getStudentQrPayload(id: string): Promise<StudentQrPayload> {\r\n return getData<StudentQrPayload>(`${ENDPOINT}/${id}/qr-code`);\r\n}\r\n\r\nexport async function bulkImportStudents(\r\n payload: BulkImportStudentRequest\r\n): Promise<BulkImportStudentResponse> {\r\n return postData<BulkImportStudentResponse, BulkImportStudentRequest>(\r\n `${ENDPOINT}/bulk-import`,\r\n payload\r\n );\r\n}\r\n\r\nexport function useStudents(params?: Partial<StudentListQuery>) {\r\n return useQuery({\r\n queryKey: studentKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listStudents(params),\r\n });\r\n}\r\n\r\nexport function useStudent(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.detail(id),\r\n queryFn: () => getStudent(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useStudentKioskCache(options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.kioskCache(),\r\n queryFn: getStudentKioskCache,\r\n enabled: options?.enabled ?? true,\r\n staleTime: 5 * 60_000,\r\n });\r\n}\r\n\r\nexport function useStudentQrCode(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.qrCode(id),\r\n queryFn: () => getStudentQrPayload(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useCreateStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createStudent,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateStudentInput }) =>\r\n updateStudent(id, payload),\r\n onSuccess: async (_data, variables) => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.detail(variables.id) });\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useDeleteStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: deleteStudent,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useBulkImportStudents(\r\n options?: MutationOptionsCustom<BulkImportStudentResponse, BulkImportStudentRequest>\r\n) {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: bulkImportStudents,\r\n onSuccess: (data, vars, ctx) => {\r\n queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n options?.onSuccess?.(data, vars, ctx);\r\n },\r\n ...options,\r\n });\r\n}\r\n\r\nexport type {\r\n BulkImportStudentRequest,\r\n BulkImportStudentResponse,\r\n CreateStudentInput,\r\n Student,\r\n StudentListQuery,\r\n StudentOfflineCache,\r\n StudentQrPayload,\r\n UpdateStudentInput,\r\n};\r\n"]}
1
+ {"version":3,"sources":["../src/modules/student/student.api.ts"],"names":["API_ENDPOINTS","getPaginated","getData","postData","putData","deleteData","useQuery","studentKeys","useQueryClient","useMutation"],"mappings":"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","file":"chunk-DSGF264Y.cjs","sourcesContent":["import type {\r\n BulkImportStudentRequest,\r\n BulkImportStudentResponse,\r\n CreateStudentInput,\r\n Student,\r\n StudentListQuery,\r\n StudentOfflineCache,\r\n StudentQrPayload,\r\n UpdateStudentInput,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { deleteData, getData, getPaginated, postData, putData } from \"../../client/http\";\r\nimport type { MutationOptionsCustom } from \"../../client/types\";\r\nimport { studentKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.students;\r\n\r\nexport async function listStudents(params?: Partial<StudentListQuery>): Promise<Student[]> {\r\n const result = await getPaginated<Student>(ENDPOINT, { params });\r\n return result.items;\r\n}\r\n\r\nexport async function getStudent(id: string): Promise<Student> {\r\n return getData<Student>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\nexport async function createStudent(payload: CreateStudentInput): Promise<Student> {\r\n return postData<Student, CreateStudentInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateStudent(id: string, payload: UpdateStudentInput): Promise<Student> {\r\n return putData<Student, UpdateStudentInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function deleteStudent(id: string): Promise<void> {\r\n await deleteData<void>(`${ENDPOINT}/${id}`);\r\n}\r\n\r\n/** Cache siswa ringkas untuk mode offline kiosk absensi. */\r\nexport async function getStudentKioskCache(): Promise<StudentOfflineCache[]> {\r\n return getData<StudentOfflineCache[]>(`${ENDPOINT}/kiosk-cache`);\r\n}\r\n\r\nexport async function getStudentQrPayload(id: string): Promise<StudentQrPayload> {\r\n return getData<StudentQrPayload>(`${ENDPOINT}/${id}/qr-code`);\r\n}\r\n\r\nexport async function bulkImportStudents(\r\n payload: BulkImportStudentRequest\r\n): Promise<BulkImportStudentResponse> {\r\n return postData<BulkImportStudentResponse, BulkImportStudentRequest>(\r\n `${ENDPOINT}/bulk-import`,\r\n payload\r\n );\r\n}\r\n\r\nexport function useStudents(params?: Partial<StudentListQuery>) {\r\n return useQuery({\r\n queryKey: studentKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listStudents(params),\r\n });\r\n}\r\n\r\nexport function useStudent(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.detail(id),\r\n queryFn: () => getStudent(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useStudentKioskCache(options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.kioskCache(),\r\n queryFn: getStudentKioskCache,\r\n enabled: options?.enabled ?? true,\r\n staleTime: 5 * 60_000,\r\n });\r\n}\r\n\r\nexport function useStudentQrCode(id: string, options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: studentKeys.qrCode(id),\r\n queryFn: () => getStudentQrPayload(id),\r\n enabled: options?.enabled ?? Boolean(id),\r\n });\r\n}\r\n\r\nexport function useCreateStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createStudent,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateStudentInput }) =>\r\n updateStudent(id, payload),\r\n onSuccess: async (_data, variables) => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.detail(variables.id) });\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useDeleteStudent() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: deleteStudent,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useBulkImportStudents(\r\n options?: MutationOptionsCustom<BulkImportStudentResponse, BulkImportStudentRequest>\r\n) {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: bulkImportStudents,\r\n onSuccess: (data, vars, ctx) => {\r\n queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n options?.onSuccess?.(data, vars, ctx);\r\n },\r\n ...options,\r\n });\r\n}\r\n\r\nexport type {\r\n BulkImportStudentRequest,\r\n BulkImportStudentResponse,\r\n CreateStudentInput,\r\n Student,\r\n StudentListQuery,\r\n StudentOfflineCache,\r\n StudentQrPayload,\r\n UpdateStudentInput,\r\n};\r\n"]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunk3TOBH3YY_cjs = require('./chunk-3TOBH3YY.cjs');
4
4
  var chunkNGFFI4XQ_cjs = require('./chunk-NGFFI4XQ.cjs');
5
- var chunkHISL2IF2_cjs = require('./chunk-HISL2IF2.cjs');
5
+ var chunkNUKJPRPS_cjs = require('./chunk-NUKJPRPS.cjs');
6
6
  var reactQuery = require('@tanstack/react-query');
7
7
 
8
8
  var ENDPOINT = chunk3TOBH3YY_cjs.API_ENDPOINTS.tenants;
@@ -28,20 +28,20 @@ async function createTenant(payload) {
28
28
  return chunkNGFFI4XQ_cjs.postData(ENDPOINT, payload);
29
29
  }
30
30
  function useCurrentTenant() {
31
- return reactQuery.useQuery({ queryKey: chunkHISL2IF2_cjs.tenantKeys.current(), queryFn: getCurrentTenant });
31
+ return reactQuery.useQuery({ queryKey: chunkNUKJPRPS_cjs.tenantKeys.current(), queryFn: getCurrentTenant });
32
32
  }
33
33
  function useTenantModules() {
34
- return reactQuery.useQuery({ queryKey: chunkHISL2IF2_cjs.tenantKeys.modules(), queryFn: getTenantModules });
34
+ return reactQuery.useQuery({ queryKey: chunkNUKJPRPS_cjs.tenantKeys.modules(), queryFn: getTenantModules });
35
35
  }
36
36
  function useAttendanceShifts(params) {
37
37
  return reactQuery.useQuery({
38
- queryKey: chunkHISL2IF2_cjs.tenantKeys.shifts(params),
38
+ queryKey: chunkNUKJPRPS_cjs.tenantKeys.shifts(params),
39
39
  queryFn: () => listAttendanceShifts(params)
40
40
  });
41
41
  }
42
42
  function useAttendanceShift(targetType) {
43
43
  return reactQuery.useQuery({
44
- queryKey: chunkHISL2IF2_cjs.tenantKeys.shiftDetail(targetType),
44
+ queryKey: chunkNUKJPRPS_cjs.tenantKeys.shiftDetail(targetType),
45
45
  queryFn: () => getAttendanceShift(targetType)
46
46
  });
47
47
  }
@@ -50,8 +50,8 @@ function useUpdateCurrentTenant() {
50
50
  return reactQuery.useMutation({
51
51
  mutationFn: updateCurrentTenant,
52
52
  onSuccess: async (tenant) => {
53
- queryClient.setQueryData(chunkHISL2IF2_cjs.tenantKeys.current(), tenant);
54
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.tenantKeys.all });
53
+ queryClient.setQueryData(chunkNUKJPRPS_cjs.tenantKeys.current(), tenant);
54
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.tenantKeys.all });
55
55
  }
56
56
  });
57
57
  }
@@ -60,7 +60,7 @@ function useUpsertAttendanceShifts() {
60
60
  return reactQuery.useMutation({
61
61
  mutationFn: upsertAttendanceShifts,
62
62
  onSuccess: async () => {
63
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.tenantKeys.shifts() });
63
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.tenantKeys.shifts() });
64
64
  }
65
65
  });
66
66
  }
@@ -69,7 +69,7 @@ function useCreateTenant() {
69
69
  return reactQuery.useMutation({
70
70
  mutationFn: createTenant,
71
71
  onSuccess: async () => {
72
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.tenantKeys.all });
72
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.tenantKeys.all });
73
73
  }
74
74
  });
75
75
  }
@@ -88,5 +88,5 @@ exports.useCurrentTenant = useCurrentTenant;
88
88
  exports.useTenantModules = useTenantModules;
89
89
  exports.useUpdateCurrentTenant = useUpdateCurrentTenant;
90
90
  exports.useUpsertAttendanceShifts = useUpsertAttendanceShifts;
91
- //# sourceMappingURL=chunk-LS4ZQRFS.cjs.map
92
- //# sourceMappingURL=chunk-LS4ZQRFS.cjs.map
91
+ //# sourceMappingURL=chunk-EXEAVSTX.cjs.map
92
+ //# sourceMappingURL=chunk-EXEAVSTX.cjs.map
@@ -1 +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-LS4ZQRFS.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"]}
1
+ {"version":3,"sources":["../src/modules/tenant/tenant.api.ts"],"names":["API_ENDPOINTS","getData","putData","postData","useQuery","tenantKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAcA,IAAM,WAAWA,+BAAA,CAAc,OAAA;AAE/B,eAAsB,gBAAA,GAAoC;AACxD,EAAA,OAAOC,yBAAA,CAAgB,CAAA,EAAG,QAAQ,CAAA,QAAA,CAAU,CAAA;AAC9C;AAEA,eAAsB,gBAAA,GAAgD;AACpE,EAAA,OAAOA,yBAAA,CAA4B,CAAA,EAAG,QAAQ,CAAA,gBAAA,CAAkB,CAAA;AAClE;AAEA,eAAsB,oBAAoB,OAAA,EAAoD;AAC5F,EAAA,OAAOC,yBAAA,CAA0C,CAAA,EAAG,QAAQ,CAAA,QAAA,CAAA,EAAY,OAAO,CAAA;AACjF;AAEA,eAAsB,qBAAqB,MAAA,EAEZ;AAC7B,EAAA,OAAOD,0BAA2B,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAA,EAAW,EAAE,QAAQ,CAAA;AACpE;AAEA,eAAsB,mBAAmB,UAAA,EAAuD;AAC9F,EAAA,OAAOA,yBAAA,CAAyB,CAAA,EAAG,QAAQ,CAAA,QAAA,EAAW,UAAU,CAAA,CAAE,CAAA;AACpE;AAOA,eAAsB,uBACpB,OAAA,EAC4B;AAC5B,EAAA,OAAOC,yBAAA,CAA0D,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAA,EAAW,OAAO,CAAA;AAChG;AAEA,eAAsB,aAAa,OAAA,EAA6C;AAC9E,EAAA,OAAOC,0BAAA,CAAoC,UAAU,OAAO,CAAA;AAC9D;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,OAAOC,mBAAA,CAAS,EAAE,QAAA,EAAUC,4BAAA,CAAW,SAAQ,EAAG,OAAA,EAAS,kBAAkB,CAAA;AAC/E;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,OAAOD,mBAAA,CAAS,EAAE,QAAA,EAAUC,4BAAA,CAAW,SAAQ,EAAG,OAAA,EAAS,kBAAkB,CAAA;AAC/E;AAEO,SAAS,oBAAoB,MAAA,EAA2C;AAC7E,EAAA,OAAOD,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,4BAAA,CAAW,MAAA,CAAO,MAAM,CAAA;AAAA,IAClC,OAAA,EAAS,MAAM,oBAAA,CAAqB,MAAM;AAAA,GAC3C,CAAA;AACH;AAEO,SAAS,mBAAmB,UAAA,EAA6B;AAC9D,EAAA,OAAOD,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,4BAAA,CAAW,WAAA,CAAY,UAAU,CAAA;AAAA,IAC3C,OAAA,EAAS,MAAM,kBAAA,CAAmB,UAAU;AAAA,GAC7C,CAAA;AACH;AAEO,SAAS,sBAAA,GAAyB;AACvC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,mBAAA;AAAA,IACZ,SAAA,EAAW,OAAO,MAAA,KAAW;AAC3B,MAAA,WAAA,CAAY,YAAA,CAAaF,4BAAA,CAAW,OAAA,EAAQ,EAAG,MAAM,CAAA;AACrD,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUA,4BAAA,CAAW,KAAK,CAAA;AAAA,IAClE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,yBAAA,GAA4B;AAC1C,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,sBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,UAAUF,4BAAA,CAAW,MAAA,IAAU,CAAA;AAAA,IACvE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,eAAA,GAAkB;AAChC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,YAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,4BAAA,CAAW,KAAK,CAAA;AAAA,IAClE;AAAA,GACD,CAAA;AACH","file":"chunk-EXEAVSTX.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"]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunk3TOBH3YY_cjs = require('./chunk-3TOBH3YY.cjs');
4
4
  var chunkNGFFI4XQ_cjs = require('./chunk-NGFFI4XQ.cjs');
5
- var chunkHISL2IF2_cjs = require('./chunk-HISL2IF2.cjs');
5
+ var chunkNUKJPRPS_cjs = require('./chunk-NUKJPRPS.cjs');
6
6
  var reactQuery = require('@tanstack/react-query');
7
7
 
8
8
  var ENDPOINT = chunk3TOBH3YY_cjs.API_ENDPOINTS.academicYears;
@@ -20,7 +20,7 @@ async function activateAcademicYear(id) {
20
20
  }
21
21
  function useAcademicYears(params) {
22
22
  return reactQuery.useQuery({
23
- queryKey: chunkHISL2IF2_cjs.academicYearKeys.list(params),
23
+ queryKey: chunkNUKJPRPS_cjs.academicYearKeys.list(params),
24
24
  queryFn: () => listAcademicYears(params)
25
25
  });
26
26
  }
@@ -29,7 +29,7 @@ function useCreateAcademicYear() {
29
29
  return reactQuery.useMutation({
30
30
  mutationFn: createAcademicYear,
31
31
  onSuccess: async () => {
32
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.academicYearKeys.all });
32
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.academicYearKeys.all });
33
33
  }
34
34
  });
35
35
  }
@@ -38,7 +38,7 @@ function useUpdateAcademicYear() {
38
38
  return reactQuery.useMutation({
39
39
  mutationFn: ({ id, payload }) => updateAcademicYear(id, payload),
40
40
  onSuccess: async () => {
41
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.academicYearKeys.all });
41
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.academicYearKeys.all });
42
42
  }
43
43
  });
44
44
  }
@@ -60,5 +60,5 @@ exports.useAcademicYears = useAcademicYears;
60
60
  exports.useActivateAcademicYear = useActivateAcademicYear;
61
61
  exports.useCreateAcademicYear = useCreateAcademicYear;
62
62
  exports.useUpdateAcademicYear = useUpdateAcademicYear;
63
- //# sourceMappingURL=chunk-BBJBCD2K.cjs.map
64
- //# sourceMappingURL=chunk-BBJBCD2K.cjs.map
63
+ //# sourceMappingURL=chunk-IWV6SOVN.cjs.map
64
+ //# sourceMappingURL=chunk-IWV6SOVN.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modules/academic/academic-year.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","academicYearKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAWA,IAAM,WAAWA,+BAAA,CAAc,aAAA;AAE/B,eAAsB,kBACpB,MAAA,EACyB;AACzB,EAAA,OAAOC,yBAAA,CAAwB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AACrD;AAEA,eAAsB,mBAAmB,OAAA,EAAyD;AAChG,EAAA,OAAOC,0BAAA,CAAgD,UAAU,OAAO,CAAA;AAC1E;AAEA,eAAsB,kBAAA,CACpB,IACA,OAAA,EACuB;AACvB,EAAA,OAAOC,0BAA+C,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AACpF;AAEA,eAAsB,qBAAqB,EAAA,EAAmC;AAC5E,EAAA,OAAOD,0BAAA,CAAuB,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,SAAA,CAAW,CAAA;AAC5D;AAEO,SAAS,iBAAiB,MAAA,EAAyC;AACxE,EAAA,OAAOE,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,kCAAA,CAAiB,IAAA,CAAK,MAA6C,CAAA;AAAA,IAC7E,OAAA,EAAS,MAAM,iBAAA,CAAkB,MAAM;AAAA,GACxC,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,kBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,kCAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,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,EAAUF,kCAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,uBAAA,GAA0B;AACxC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,oBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,EAAkB;AAAA,IACtC;AAAA,GACD,CAAA;AACH","file":"chunk-BBJBCD2K.cjs","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"]}
1
+ {"version":3,"sources":["../src/modules/academic/academic-year.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","academicYearKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAWA,IAAM,WAAWA,+BAAA,CAAc,aAAA;AAE/B,eAAsB,kBACpB,MAAA,EACyB;AACzB,EAAA,OAAOC,yBAAA,CAAwB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AACrD;AAEA,eAAsB,mBAAmB,OAAA,EAAyD;AAChG,EAAA,OAAOC,0BAAA,CAAgD,UAAU,OAAO,CAAA;AAC1E;AAEA,eAAsB,kBAAA,CACpB,IACA,OAAA,EACuB;AACvB,EAAA,OAAOC,0BAA+C,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AACpF;AAEA,eAAsB,qBAAqB,EAAA,EAAmC;AAC5E,EAAA,OAAOD,0BAAA,CAAuB,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,SAAA,CAAW,CAAA;AAC5D;AAEO,SAAS,iBAAiB,MAAA,EAAyC;AACxE,EAAA,OAAOE,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,kCAAA,CAAiB,IAAA,CAAK,MAA6C,CAAA;AAAA,IAC7E,OAAA,EAAS,MAAM,iBAAA,CAAkB,MAAM;AAAA,GACxC,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,kBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,kCAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,qBAAA,GAAwB;AACtC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,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,EAAUF,kCAAA,CAAiB,KAAK,CAAA;AAAA,IACxE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,uBAAA,GAA0B;AACxC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,oBAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,EAAkB;AAAA,IACtC;AAAA,GACD,CAAA;AACH","file":"chunk-IWV6SOVN.cjs","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"]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunk3TOBH3YY_cjs = require('./chunk-3TOBH3YY.cjs');
4
4
  var chunkNGFFI4XQ_cjs = require('./chunk-NGFFI4XQ.cjs');
5
- var chunkHISL2IF2_cjs = require('./chunk-HISL2IF2.cjs');
5
+ var chunkNUKJPRPS_cjs = require('./chunk-NUKJPRPS.cjs');
6
6
  var reactQuery = require('@tanstack/react-query');
7
7
 
8
8
  var ENDPOINT = chunk3TOBH3YY_cjs.API_ENDPOINTS.subjects;
@@ -17,7 +17,7 @@ async function updateSubject(id, payload) {
17
17
  }
18
18
  function useSubjects(params) {
19
19
  return reactQuery.useQuery({
20
- queryKey: chunkHISL2IF2_cjs.subjectKeys.list(params),
20
+ queryKey: chunkNUKJPRPS_cjs.subjectKeys.list(params),
21
21
  queryFn: () => listSubjects(params)
22
22
  });
23
23
  }
@@ -26,7 +26,7 @@ function useCreateSubject() {
26
26
  return reactQuery.useMutation({
27
27
  mutationFn: createSubject,
28
28
  onSuccess: async () => {
29
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.subjectKeys.all });
29
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.subjectKeys.all });
30
30
  }
31
31
  });
32
32
  }
@@ -35,7 +35,7 @@ function useUpdateSubject() {
35
35
  return reactQuery.useMutation({
36
36
  mutationFn: ({ id, payload }) => updateSubject(id, payload),
37
37
  onSuccess: async () => {
38
- await queryClient.invalidateQueries({ queryKey: chunkHISL2IF2_cjs.subjectKeys.all });
38
+ await queryClient.invalidateQueries({ queryKey: chunkNUKJPRPS_cjs.subjectKeys.all });
39
39
  }
40
40
  });
41
41
  }
@@ -46,5 +46,5 @@ exports.updateSubject = updateSubject;
46
46
  exports.useCreateSubject = useCreateSubject;
47
47
  exports.useSubjects = useSubjects;
48
48
  exports.useUpdateSubject = useUpdateSubject;
49
- //# sourceMappingURL=chunk-N4OBLYCQ.cjs.map
50
- //# sourceMappingURL=chunk-N4OBLYCQ.cjs.map
49
+ //# sourceMappingURL=chunk-IXMKB5VH.cjs.map
50
+ //# sourceMappingURL=chunk-IXMKB5VH.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modules/subject/subject.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","subjectKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAWA,IAAM,WAAWA,+BAAA,CAAc,QAAA;AAE/B,eAAsB,aAAa,MAAA,EAAwD;AACzF,EAAA,OAAOC,yBAAA,CAAmB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AAChD;AAEA,eAAsB,cAAc,OAAA,EAA+C;AACjF,EAAA,OAAOC,0BAAA,CAAsC,UAAU,OAAO,CAAA;AAChE;AAEA,eAAsB,aAAA,CAAc,IAAY,OAAA,EAA+C;AAC7F,EAAA,OAAOC,0BAAqC,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AAC1E;AAEO,SAAS,YAAY,MAAA,EAAoC;AAC9D,EAAA,OAAOC,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,6BAAA,CAAY,IAAA,CAAK,MAA6C,CAAA;AAAA,IACxE,OAAA,EAAS,MAAM,YAAA,CAAa,MAAM;AAAA,GACnC,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,aAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,6BAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,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,EAAUF,6BAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH","file":"chunk-N4OBLYCQ.cjs","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"]}
1
+ {"version":3,"sources":["../src/modules/subject/subject.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","subjectKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAWA,IAAM,WAAWA,+BAAA,CAAc,QAAA;AAE/B,eAAsB,aAAa,MAAA,EAAwD;AACzF,EAAA,OAAOC,yBAAA,CAAmB,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AAChD;AAEA,eAAsB,cAAc,OAAA,EAA+C;AACjF,EAAA,OAAOC,0BAAA,CAAsC,UAAU,OAAO,CAAA;AAChE;AAEA,eAAsB,aAAA,CAAc,IAAY,OAAA,EAA+C;AAC7F,EAAA,OAAOC,0BAAqC,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AAC1E;AAEO,SAAS,YAAY,MAAA,EAAoC;AAC9D,EAAA,OAAOC,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,6BAAA,CAAY,IAAA,CAAK,MAA6C,CAAA;AAAA,IACxE,OAAA,EAAS,MAAM,YAAA,CAAa,MAAM;AAAA,GACnC,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,aAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,6BAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,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,EAAUF,6BAAA,CAAY,KAAK,CAAA;AAAA,IACnE;AAAA,GACD,CAAA;AACH","file":"chunk-IXMKB5VH.cjs","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"]}
@@ -1,6 +1,6 @@
1
1
  import { API_ENDPOINTS } from './chunk-Q5ZX6TKB.js';
2
2
  import { postData, getData, putData } from './chunk-6JGO2CUT.js';
3
- import { authKeys } from './chunk-XNH67ORL.js';
3
+ import { authKeys } from './chunk-7GCYXFMU.js';
4
4
  import { useQueryClient, useMutation, useQuery } from '@tanstack/react-query';
5
5
 
6
6
  var ENDPOINT = API_ENDPOINTS.auth;
@@ -117,5 +117,5 @@ function useChangePassword(options) {
117
117
  }
118
118
 
119
119
  export { changePassword, consumeImpersonation, exitImpersonation, getMe, login, logout, selectTenant, switchRole, useChangePassword, useConsumeImpersonation, useExitImpersonation, useLogin, useLogout, useMe, useSelectTenant, useSwitchRole };
120
- //# sourceMappingURL=chunk-KLRABMYU.js.map
121
- //# sourceMappingURL=chunk-KLRABMYU.js.map
120
+ //# sourceMappingURL=chunk-KPGOAAOU.js.map
121
+ //# sourceMappingURL=chunk-KPGOAAOU.js.map