@sekolaos/shared-api 1.1.1 → 1.3.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.
Files changed (129) hide show
  1. package/dist/{chunk-3RS57C3E.cjs → chunk-23XAR4OH.cjs} +33 -25
  2. package/dist/chunk-23XAR4OH.cjs.map +1 -0
  3. package/dist/{chunk-YTF4Z7I4.js → chunk-2ZN6MTBE.js} +3 -3
  4. package/dist/{chunk-YTF4Z7I4.js.map → chunk-2ZN6MTBE.js.map} +1 -1
  5. package/dist/{chunk-QJSOSQ7M.cjs → chunk-3TOBH3YY.cjs} +8 -3
  6. package/dist/chunk-3TOBH3YY.cjs.map +1 -0
  7. package/dist/chunk-5KSKHZWB.cjs +16 -0
  8. package/dist/chunk-5KSKHZWB.cjs.map +1 -0
  9. package/dist/{chunk-AOBHBJ2G.cjs → chunk-AMKVNGY4.cjs} +18 -15
  10. package/dist/chunk-AMKVNGY4.cjs.map +1 -0
  11. package/dist/{chunk-R37QQTQS.cjs → chunk-BBJBCD2K.cjs} +8 -8
  12. package/dist/{chunk-R37QQTQS.cjs.map → chunk-BBJBCD2K.cjs.map} +1 -1
  13. package/dist/{chunk-RMU634GQ.js → chunk-CSEMYBBZ.js} +4 -4
  14. package/dist/{chunk-RMU634GQ.js.map → chunk-CSEMYBBZ.js.map} +1 -1
  15. package/dist/{chunk-6UCHRWSL.js → chunk-DATSHIPR.js} +4 -4
  16. package/dist/{chunk-6UCHRWSL.js.map → chunk-DATSHIPR.js.map} +1 -1
  17. package/dist/{chunk-DMEWJ56D.js → chunk-FVPR2MOB.js} +11 -8
  18. package/dist/chunk-FVPR2MOB.js.map +1 -0
  19. package/dist/chunk-H3CE34TG.js +14 -0
  20. package/dist/chunk-H3CE34TG.js.map +1 -0
  21. package/dist/{chunk-XVG5Z6B5.cjs → chunk-HISL2IF2.cjs} +4 -3
  22. package/dist/chunk-HISL2IF2.cjs.map +1 -0
  23. package/dist/{chunk-S6QFHKCE.js → chunk-ID3UGFZZ.js} +14 -11
  24. package/dist/chunk-ID3UGFZZ.js.map +1 -0
  25. package/dist/chunk-JGCFIGB3.js +129 -0
  26. package/dist/chunk-JGCFIGB3.js.map +1 -0
  27. package/dist/{chunk-R7ACSDOA.cjs → chunk-JVX37TC5.cjs} +19 -16
  28. package/dist/chunk-JVX37TC5.cjs.map +1 -0
  29. package/dist/{chunk-CBIDGS35.cjs → chunk-KB4TZTAC.cjs} +11 -11
  30. package/dist/{chunk-CBIDGS35.cjs.map → chunk-KB4TZTAC.cjs.map} +1 -1
  31. package/dist/{chunk-TSLEYQKD.cjs → chunk-LS4ZQRFS.cjs} +13 -13
  32. package/dist/{chunk-TSLEYQKD.cjs.map → chunk-LS4ZQRFS.cjs.map} +1 -1
  33. package/dist/{chunk-4ECXVAIQ.cjs → chunk-N4OBLYCQ.cjs} +8 -8
  34. package/dist/{chunk-4ECXVAIQ.cjs.map → chunk-N4OBLYCQ.cjs.map} +1 -1
  35. package/dist/{chunk-ZHCA7HVE.js → chunk-NCENQB6W.js} +10 -8
  36. package/dist/chunk-NCENQB6W.js.map +1 -0
  37. package/dist/{chunk-LA7MRXWR.js → chunk-NPR4GLFZ.js} +4 -4
  38. package/dist/{chunk-LA7MRXWR.js.map → chunk-NPR4GLFZ.js.map} +1 -1
  39. package/dist/chunk-OVHSXH7Z.cjs +102 -0
  40. package/dist/chunk-OVHSXH7Z.cjs.map +1 -0
  41. package/dist/chunk-PMN2DTYF.js +89 -0
  42. package/dist/chunk-PMN2DTYF.js.map +1 -0
  43. package/dist/{chunk-XU5UEIBL.js → chunk-PQFTPOP4.js} +4 -4
  44. package/dist/{chunk-XU5UEIBL.js.map → chunk-PQFTPOP4.js.map} +1 -1
  45. package/dist/{chunk-MRFGUSN2.js → chunk-Q5ZX6TKB.js} +8 -3
  46. package/dist/chunk-Q5ZX6TKB.js.map +1 -0
  47. package/dist/{chunk-GRBBLS5Y.js → chunk-RDW4IZWK.js} +30 -22
  48. package/dist/chunk-RDW4IZWK.js.map +1 -0
  49. package/dist/{chunk-YK7QFPBF.js → chunk-ROK2DEVT.js} +4 -4
  50. package/dist/{chunk-YK7QFPBF.js.map → chunk-ROK2DEVT.js.map} +1 -1
  51. package/dist/{chunk-AGNLUQKT.cjs → chunk-SBBVQ3Z2.cjs} +7 -7
  52. package/dist/{chunk-AGNLUQKT.cjs.map → chunk-SBBVQ3Z2.cjs.map} +1 -1
  53. package/dist/{chunk-BOASJ3VG.cjs → chunk-TO5MBW6Z.cjs} +4 -4
  54. package/dist/{chunk-BOASJ3VG.cjs.map → chunk-TO5MBW6Z.cjs.map} +1 -1
  55. package/dist/{chunk-YA2KONBB.js → chunk-U7YG2GA7.js} +4 -4
  56. package/dist/{chunk-YA2KONBB.js.map → chunk-U7YG2GA7.js.map} +1 -1
  57. package/dist/chunk-XINNTOCO.cjs +151 -0
  58. package/dist/chunk-XINNTOCO.cjs.map +1 -0
  59. package/dist/{chunk-ALMSFTRM.js → chunk-XNH67ORL.js} +4 -3
  60. package/dist/chunk-XNH67ORL.js.map +1 -0
  61. package/dist/{chunk-5C4JMJ6P.cjs → chunk-Y4YURM53.cjs} +19 -17
  62. package/dist/chunk-Y4YURM53.cjs.map +1 -0
  63. package/dist/{chunk-NBVPN4KL.cjs → chunk-ZPEEFUEC.cjs} +6 -6
  64. package/dist/{chunk-NBVPN4KL.cjs.map → chunk-ZPEEFUEC.cjs.map} +1 -1
  65. package/dist/index.cjs +280 -182
  66. package/dist/index.d.cts +9 -3
  67. package/dist/index.d.ts +9 -3
  68. package/dist/index.js +16 -14
  69. package/dist/keys/index.cjs +18 -13
  70. package/dist/keys/index.d.cts +14 -1
  71. package/dist/keys/index.d.ts +14 -1
  72. package/dist/keys/index.js +2 -1
  73. package/dist/modules/academic/index.cjs +12 -11
  74. package/dist/modules/academic/index.js +4 -3
  75. package/dist/modules/attendance/index.cjs +18 -17
  76. package/dist/modules/attendance/index.d.cts +6 -5
  77. package/dist/modules/attendance/index.d.ts +6 -5
  78. package/dist/modules/attendance/index.js +4 -3
  79. package/dist/modules/auth/index.cjs +22 -13
  80. package/dist/modules/auth/index.d.cts +112 -15
  81. package/dist/modules/auth/index.d.ts +112 -15
  82. package/dist/modules/auth/index.js +4 -3
  83. package/dist/modules/classroom/index.cjs +16 -15
  84. package/dist/modules/classroom/index.d.cts +3 -1
  85. package/dist/modules/classroom/index.d.ts +3 -1
  86. package/dist/modules/classroom/index.js +4 -3
  87. package/dist/modules/lead/index.cjs +12 -11
  88. package/dist/modules/lead/index.js +4 -3
  89. package/dist/modules/platform-admin/index.cjs +96 -0
  90. package/dist/modules/platform-admin/index.cjs.map +1 -0
  91. package/dist/modules/platform-admin/index.d.cts +125 -0
  92. package/dist/modules/platform-admin/index.d.ts +125 -0
  93. package/dist/modules/platform-admin/index.js +7 -0
  94. package/dist/modules/platform-admin/index.js.map +1 -0
  95. package/dist/modules/student/index.cjs +20 -19
  96. package/dist/modules/student/index.d.cts +4 -2
  97. package/dist/modules/student/index.d.ts +4 -2
  98. package/dist/modules/student/index.js +4 -3
  99. package/dist/modules/subject/index.cjs +10 -9
  100. package/dist/modules/subject/index.js +4 -3
  101. package/dist/modules/system/index.cjs +6 -5
  102. package/dist/modules/system/index.js +4 -3
  103. package/dist/modules/teaching-schedule/index.cjs +16 -15
  104. package/dist/modules/teaching-schedule/index.d.cts +12 -7
  105. package/dist/modules/teaching-schedule/index.d.ts +12 -7
  106. package/dist/modules/teaching-schedule/index.js +4 -3
  107. package/dist/modules/tenant/index.cjs +18 -17
  108. package/dist/modules/tenant/index.js +4 -3
  109. package/dist/modules/upload/index.cjs +6 -6
  110. package/dist/modules/upload/index.js +2 -2
  111. package/dist/modules/user/index.cjs +16 -15
  112. package/dist/modules/user/index.js +4 -3
  113. package/package.json +2 -2
  114. package/dist/chunk-3RS57C3E.cjs.map +0 -1
  115. package/dist/chunk-4T52ABA5.js +0 -63
  116. package/dist/chunk-4T52ABA5.js.map +0 -1
  117. package/dist/chunk-5C4JMJ6P.cjs.map +0 -1
  118. package/dist/chunk-ALMSFTRM.js.map +0 -1
  119. package/dist/chunk-AOBHBJ2G.cjs.map +0 -1
  120. package/dist/chunk-CP46K2UB.cjs +0 -74
  121. package/dist/chunk-CP46K2UB.cjs.map +0 -1
  122. package/dist/chunk-DMEWJ56D.js.map +0 -1
  123. package/dist/chunk-GRBBLS5Y.js.map +0 -1
  124. package/dist/chunk-MRFGUSN2.js.map +0 -1
  125. package/dist/chunk-QJSOSQ7M.cjs.map +0 -1
  126. package/dist/chunk-R7ACSDOA.cjs.map +0 -1
  127. package/dist/chunk-S6QFHKCE.js.map +0 -1
  128. package/dist/chunk-XVG5Z6B5.cjs.map +0 -1
  129. package/dist/chunk-ZHCA7HVE.js.map +0 -1
@@ -1,6 +1,8 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { M as MutationOptionsCustom, S as SekolaosApiError, Q as QueryOptionsWithoutKey } from '../../types-BxV0BtVp.cjs';
2
3
  import { TeachingSchedule, BatchCreateTeachingScheduleInput, CheckScheduleConflictQuery, CopyRosterRequestInput, CreateTeachingScheduleInput, TeachingScheduleListQuery, UpdateTeachingScheduleInput } from '@sekolaos/shared-schema';
3
4
  export { BatchCreateTeachingScheduleInput, CheckScheduleConflictQuery, CopyRosterRequestInput, CreateTeachingScheduleInput, TeachingSchedule, TeachingScheduleListQuery, UpdateTeachingScheduleInput } from '@sekolaos/shared-schema';
5
+ import 'axios';
4
6
 
5
7
  type ScheduleConflictType = "TEACHER" | "CLASSROOM";
6
8
  interface ScheduleConflictResult {
@@ -32,8 +34,8 @@ declare function useTeachingSchedules(params?: TeachingScheduleListQuery): _tans
32
34
  subjectName?: string | undefined;
33
35
  periodNumber?: number | undefined;
34
36
  }[], Error>;
35
- declare function useScheduleConflict(params: CheckScheduleConflictQuery, enabled?: boolean): _tanstack_react_query.UseQueryResult<ScheduleConflictResult, Error>;
36
- declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationResult<{
37
+ declare function useScheduleConflict(params: CheckScheduleConflictQuery, options?: QueryOptionsWithoutKey<ScheduleConflictResult>): _tanstack_react_query.UseQueryResult<ScheduleConflictResult, SekolaosApiError>;
38
+ declare function useCreateTeachingSchedule(options?: MutationOptionsCustom<TeachingSchedule, CreateTeachingScheduleInput>): _tanstack_react_query.UseMutationResult<{
37
39
  id: string;
38
40
  tenantId: string;
39
41
  academicYearId: string;
@@ -47,7 +49,7 @@ declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationR
47
49
  teacherName?: string | undefined;
48
50
  subjectName?: string | undefined;
49
51
  periodNumber?: number | undefined;
50
- }, Error, {
52
+ }, SekolaosApiError, {
51
53
  academicYearId: string;
52
54
  classroomId: string;
53
55
  teacherUserId: string;
@@ -57,7 +59,10 @@ declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationR
57
59
  endTime: string;
58
60
  periodNumber?: number | undefined;
59
61
  }, unknown>;
60
- declare function useUpdateTeachingSchedule(): _tanstack_react_query.UseMutationResult<{
62
+ declare function useUpdateTeachingSchedule(options?: MutationOptionsCustom<TeachingSchedule, {
63
+ id: string;
64
+ payload: UpdateTeachingScheduleInput;
65
+ }>): _tanstack_react_query.UseMutationResult<{
61
66
  id: string;
62
67
  tenantId: string;
63
68
  academicYearId: string;
@@ -71,11 +76,11 @@ declare function useUpdateTeachingSchedule(): _tanstack_react_query.UseMutationR
71
76
  teacherName?: string | undefined;
72
77
  subjectName?: string | undefined;
73
78
  periodNumber?: number | undefined;
74
- }, Error, {
79
+ }, SekolaosApiError, {
75
80
  id: string;
76
81
  payload: UpdateTeachingScheduleInput;
77
82
  }, unknown>;
78
- declare function useBatchCreateTeachingSchedules(): _tanstack_react_query.UseMutationResult<AffectedRowsResult, Error, {
83
+ declare function useBatchCreateTeachingSchedules(options?: MutationOptionsCustom<AffectedRowsResult, BatchCreateTeachingScheduleInput>): _tanstack_react_query.UseMutationResult<AffectedRowsResult, SekolaosApiError, {
79
84
  academicYearId: string;
80
85
  classroomId: string;
81
86
  teacherUserId: string;
@@ -87,7 +92,7 @@ declare function useBatchCreateTeachingSchedules(): _tanstack_react_query.UseMut
87
92
  periodNumber: number;
88
93
  }[];
89
94
  }, unknown>;
90
- declare function useCopyRoster(): _tanstack_react_query.UseMutationResult<AffectedRowsResult, Error, {
95
+ declare function useCopyRoster(options?: MutationOptionsCustom<AffectedRowsResult, CopyRosterRequestInput>): _tanstack_react_query.UseMutationResult<AffectedRowsResult, SekolaosApiError, {
91
96
  academicYearId: string;
92
97
  sourceClassroomId: string;
93
98
  targetClassroomId: string;
@@ -1,6 +1,8 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { M as MutationOptionsCustom, S as SekolaosApiError, Q as QueryOptionsWithoutKey } from '../../types-BxV0BtVp.js';
2
3
  import { TeachingSchedule, BatchCreateTeachingScheduleInput, CheckScheduleConflictQuery, CopyRosterRequestInput, CreateTeachingScheduleInput, TeachingScheduleListQuery, UpdateTeachingScheduleInput } from '@sekolaos/shared-schema';
3
4
  export { BatchCreateTeachingScheduleInput, CheckScheduleConflictQuery, CopyRosterRequestInput, CreateTeachingScheduleInput, TeachingSchedule, TeachingScheduleListQuery, UpdateTeachingScheduleInput } from '@sekolaos/shared-schema';
5
+ import 'axios';
4
6
 
5
7
  type ScheduleConflictType = "TEACHER" | "CLASSROOM";
6
8
  interface ScheduleConflictResult {
@@ -32,8 +34,8 @@ declare function useTeachingSchedules(params?: TeachingScheduleListQuery): _tans
32
34
  subjectName?: string | undefined;
33
35
  periodNumber?: number | undefined;
34
36
  }[], Error>;
35
- declare function useScheduleConflict(params: CheckScheduleConflictQuery, enabled?: boolean): _tanstack_react_query.UseQueryResult<ScheduleConflictResult, Error>;
36
- declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationResult<{
37
+ declare function useScheduleConflict(params: CheckScheduleConflictQuery, options?: QueryOptionsWithoutKey<ScheduleConflictResult>): _tanstack_react_query.UseQueryResult<ScheduleConflictResult, SekolaosApiError>;
38
+ declare function useCreateTeachingSchedule(options?: MutationOptionsCustom<TeachingSchedule, CreateTeachingScheduleInput>): _tanstack_react_query.UseMutationResult<{
37
39
  id: string;
38
40
  tenantId: string;
39
41
  academicYearId: string;
@@ -47,7 +49,7 @@ declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationR
47
49
  teacherName?: string | undefined;
48
50
  subjectName?: string | undefined;
49
51
  periodNumber?: number | undefined;
50
- }, Error, {
52
+ }, SekolaosApiError, {
51
53
  academicYearId: string;
52
54
  classroomId: string;
53
55
  teacherUserId: string;
@@ -57,7 +59,10 @@ declare function useCreateTeachingSchedule(): _tanstack_react_query.UseMutationR
57
59
  endTime: string;
58
60
  periodNumber?: number | undefined;
59
61
  }, unknown>;
60
- declare function useUpdateTeachingSchedule(): _tanstack_react_query.UseMutationResult<{
62
+ declare function useUpdateTeachingSchedule(options?: MutationOptionsCustom<TeachingSchedule, {
63
+ id: string;
64
+ payload: UpdateTeachingScheduleInput;
65
+ }>): _tanstack_react_query.UseMutationResult<{
61
66
  id: string;
62
67
  tenantId: string;
63
68
  academicYearId: string;
@@ -71,11 +76,11 @@ declare function useUpdateTeachingSchedule(): _tanstack_react_query.UseMutationR
71
76
  teacherName?: string | undefined;
72
77
  subjectName?: string | undefined;
73
78
  periodNumber?: number | undefined;
74
- }, Error, {
79
+ }, SekolaosApiError, {
75
80
  id: string;
76
81
  payload: UpdateTeachingScheduleInput;
77
82
  }, unknown>;
78
- declare function useBatchCreateTeachingSchedules(): _tanstack_react_query.UseMutationResult<AffectedRowsResult, Error, {
83
+ declare function useBatchCreateTeachingSchedules(options?: MutationOptionsCustom<AffectedRowsResult, BatchCreateTeachingScheduleInput>): _tanstack_react_query.UseMutationResult<AffectedRowsResult, SekolaosApiError, {
79
84
  academicYearId: string;
80
85
  classroomId: string;
81
86
  teacherUserId: string;
@@ -87,7 +92,7 @@ declare function useBatchCreateTeachingSchedules(): _tanstack_react_query.UseMut
87
92
  periodNumber: number;
88
93
  }[];
89
94
  }, unknown>;
90
- declare function useCopyRoster(): _tanstack_react_query.UseMutationResult<AffectedRowsResult, Error, {
95
+ declare function useCopyRoster(options?: MutationOptionsCustom<AffectedRowsResult, CopyRosterRequestInput>): _tanstack_react_query.UseMutationResult<AffectedRowsResult, SekolaosApiError, {
91
96
  academicYearId: string;
92
97
  sourceClassroomId: string;
93
98
  targetClassroomId: string;
@@ -1,7 +1,8 @@
1
- export { batchCreateTeachingSchedules, checkScheduleConflict, copyRoster, createTeachingSchedule, listTeachingSchedules, updateTeachingSchedule, useBatchCreateTeachingSchedules, useCopyRoster, useCreateTeachingSchedule, useScheduleConflict, useTeachingSchedules, useUpdateTeachingSchedule } from '../../chunk-GRBBLS5Y.js';
2
- import '../../chunk-MRFGUSN2.js';
1
+ export { batchCreateTeachingSchedules, checkScheduleConflict, copyRoster, createTeachingSchedule, listTeachingSchedules, updateTeachingSchedule, useBatchCreateTeachingSchedules, useCopyRoster, useCreateTeachingSchedule, useScheduleConflict, useTeachingSchedules, useUpdateTeachingSchedule } from '../../chunk-RDW4IZWK.js';
2
+ import '../../chunk-Q5ZX6TKB.js';
3
3
  import '../../chunk-6JGO2CUT.js';
4
4
  import '../../chunk-GRXFSXG5.js';
5
- import '../../chunk-ALMSFTRM.js';
5
+ import '../../chunk-XNH67ORL.js';
6
+ import '../../chunk-H3CE34TG.js';
6
7
  //# sourceMappingURL=index.js.map
7
8
  //# sourceMappingURL=index.js.map
@@ -1,68 +1,69 @@
1
1
  'use strict';
2
2
 
3
- var chunkTSLEYQKD_cjs = require('../../chunk-TSLEYQKD.cjs');
4
- require('../../chunk-QJSOSQ7M.cjs');
3
+ var chunkLS4ZQRFS_cjs = require('../../chunk-LS4ZQRFS.cjs');
4
+ require('../../chunk-3TOBH3YY.cjs');
5
5
  require('../../chunk-NGFFI4XQ.cjs');
6
6
  require('../../chunk-PPK3HQOY.cjs');
7
- require('../../chunk-XVG5Z6B5.cjs');
7
+ require('../../chunk-HISL2IF2.cjs');
8
+ require('../../chunk-5KSKHZWB.cjs');
8
9
 
9
10
 
10
11
 
11
12
  Object.defineProperty(exports, "createTenant", {
12
13
  enumerable: true,
13
- get: function () { return chunkTSLEYQKD_cjs.createTenant; }
14
+ get: function () { return chunkLS4ZQRFS_cjs.createTenant; }
14
15
  });
15
16
  Object.defineProperty(exports, "getAttendanceShift", {
16
17
  enumerable: true,
17
- get: function () { return chunkTSLEYQKD_cjs.getAttendanceShift; }
18
+ get: function () { return chunkLS4ZQRFS_cjs.getAttendanceShift; }
18
19
  });
19
20
  Object.defineProperty(exports, "getCurrentTenant", {
20
21
  enumerable: true,
21
- get: function () { return chunkTSLEYQKD_cjs.getCurrentTenant; }
22
+ get: function () { return chunkLS4ZQRFS_cjs.getCurrentTenant; }
22
23
  });
23
24
  Object.defineProperty(exports, "getTenantModules", {
24
25
  enumerable: true,
25
- get: function () { return chunkTSLEYQKD_cjs.getTenantModules; }
26
+ get: function () { return chunkLS4ZQRFS_cjs.getTenantModules; }
26
27
  });
27
28
  Object.defineProperty(exports, "listAttendanceShifts", {
28
29
  enumerable: true,
29
- get: function () { return chunkTSLEYQKD_cjs.listAttendanceShifts; }
30
+ get: function () { return chunkLS4ZQRFS_cjs.listAttendanceShifts; }
30
31
  });
31
32
  Object.defineProperty(exports, "updateCurrentTenant", {
32
33
  enumerable: true,
33
- get: function () { return chunkTSLEYQKD_cjs.updateCurrentTenant; }
34
+ get: function () { return chunkLS4ZQRFS_cjs.updateCurrentTenant; }
34
35
  });
35
36
  Object.defineProperty(exports, "upsertAttendanceShifts", {
36
37
  enumerable: true,
37
- get: function () { return chunkTSLEYQKD_cjs.upsertAttendanceShifts; }
38
+ get: function () { return chunkLS4ZQRFS_cjs.upsertAttendanceShifts; }
38
39
  });
39
40
  Object.defineProperty(exports, "useAttendanceShift", {
40
41
  enumerable: true,
41
- get: function () { return chunkTSLEYQKD_cjs.useAttendanceShift; }
42
+ get: function () { return chunkLS4ZQRFS_cjs.useAttendanceShift; }
42
43
  });
43
44
  Object.defineProperty(exports, "useAttendanceShifts", {
44
45
  enumerable: true,
45
- get: function () { return chunkTSLEYQKD_cjs.useAttendanceShifts; }
46
+ get: function () { return chunkLS4ZQRFS_cjs.useAttendanceShifts; }
46
47
  });
47
48
  Object.defineProperty(exports, "useCreateTenant", {
48
49
  enumerable: true,
49
- get: function () { return chunkTSLEYQKD_cjs.useCreateTenant; }
50
+ get: function () { return chunkLS4ZQRFS_cjs.useCreateTenant; }
50
51
  });
51
52
  Object.defineProperty(exports, "useCurrentTenant", {
52
53
  enumerable: true,
53
- get: function () { return chunkTSLEYQKD_cjs.useCurrentTenant; }
54
+ get: function () { return chunkLS4ZQRFS_cjs.useCurrentTenant; }
54
55
  });
55
56
  Object.defineProperty(exports, "useTenantModules", {
56
57
  enumerable: true,
57
- get: function () { return chunkTSLEYQKD_cjs.useTenantModules; }
58
+ get: function () { return chunkLS4ZQRFS_cjs.useTenantModules; }
58
59
  });
59
60
  Object.defineProperty(exports, "useUpdateCurrentTenant", {
60
61
  enumerable: true,
61
- get: function () { return chunkTSLEYQKD_cjs.useUpdateCurrentTenant; }
62
+ get: function () { return chunkLS4ZQRFS_cjs.useUpdateCurrentTenant; }
62
63
  });
63
64
  Object.defineProperty(exports, "useUpsertAttendanceShifts", {
64
65
  enumerable: true,
65
- get: function () { return chunkTSLEYQKD_cjs.useUpsertAttendanceShifts; }
66
+ get: function () { return chunkLS4ZQRFS_cjs.useUpsertAttendanceShifts; }
66
67
  });
67
68
  //# sourceMappingURL=index.cjs.map
68
69
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,8 @@
1
- export { createTenant, getAttendanceShift, getCurrentTenant, getTenantModules, listAttendanceShifts, updateCurrentTenant, upsertAttendanceShifts, useAttendanceShift, useAttendanceShifts, useCreateTenant, useCurrentTenant, useTenantModules, useUpdateCurrentTenant, useUpsertAttendanceShifts } from '../../chunk-LA7MRXWR.js';
2
- import '../../chunk-MRFGUSN2.js';
1
+ export { createTenant, getAttendanceShift, getCurrentTenant, getTenantModules, listAttendanceShifts, updateCurrentTenant, upsertAttendanceShifts, useAttendanceShift, useAttendanceShifts, useCreateTenant, useCurrentTenant, useTenantModules, useUpdateCurrentTenant, useUpsertAttendanceShifts } from '../../chunk-NPR4GLFZ.js';
2
+ import '../../chunk-Q5ZX6TKB.js';
3
3
  import '../../chunk-6JGO2CUT.js';
4
4
  import '../../chunk-GRXFSXG5.js';
5
- import '../../chunk-ALMSFTRM.js';
5
+ import '../../chunk-XNH67ORL.js';
6
+ import '../../chunk-H3CE34TG.js';
6
7
  //# sourceMappingURL=index.js.map
7
8
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkBOASJ3VG_cjs = require('../../chunk-BOASJ3VG.cjs');
4
- require('../../chunk-QJSOSQ7M.cjs');
3
+ var chunkTO5MBW6Z_cjs = require('../../chunk-TO5MBW6Z.cjs');
4
+ require('../../chunk-3TOBH3YY.cjs');
5
5
  require('../../chunk-NGFFI4XQ.cjs');
6
6
  require('../../chunk-PPK3HQOY.cjs');
7
7
 
@@ -9,19 +9,19 @@ require('../../chunk-PPK3HQOY.cjs');
9
9
 
10
10
  Object.defineProperty(exports, "uploadStudentPhoto", {
11
11
  enumerable: true,
12
- get: function () { return chunkBOASJ3VG_cjs.uploadStudentPhoto; }
12
+ get: function () { return chunkTO5MBW6Z_cjs.uploadStudentPhoto; }
13
13
  });
14
14
  Object.defineProperty(exports, "uploadTenantLogo", {
15
15
  enumerable: true,
16
- get: function () { return chunkBOASJ3VG_cjs.uploadTenantLogo; }
16
+ get: function () { return chunkTO5MBW6Z_cjs.uploadTenantLogo; }
17
17
  });
18
18
  Object.defineProperty(exports, "useUploadStudentPhoto", {
19
19
  enumerable: true,
20
- get: function () { return chunkBOASJ3VG_cjs.useUploadStudentPhoto; }
20
+ get: function () { return chunkTO5MBW6Z_cjs.useUploadStudentPhoto; }
21
21
  });
22
22
  Object.defineProperty(exports, "useUploadTenantLogo", {
23
23
  enumerable: true,
24
- get: function () { return chunkBOASJ3VG_cjs.useUploadTenantLogo; }
24
+ get: function () { return chunkTO5MBW6Z_cjs.useUploadTenantLogo; }
25
25
  });
26
26
  //# sourceMappingURL=index.cjs.map
27
27
  //# sourceMappingURL=index.cjs.map
@@ -1,5 +1,5 @@
1
- export { uploadStudentPhoto, uploadTenantLogo, useUploadStudentPhoto, useUploadTenantLogo } from '../../chunk-YTF4Z7I4.js';
2
- import '../../chunk-MRFGUSN2.js';
1
+ export { uploadStudentPhoto, uploadTenantLogo, useUploadStudentPhoto, useUploadTenantLogo } from '../../chunk-2ZN6MTBE.js';
2
+ import '../../chunk-Q5ZX6TKB.js';
3
3
  import '../../chunk-6JGO2CUT.js';
4
4
  import '../../chunk-GRXFSXG5.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1,60 +1,61 @@
1
1
  'use strict';
2
2
 
3
- var chunkCBIDGS35_cjs = require('../../chunk-CBIDGS35.cjs');
4
- require('../../chunk-QJSOSQ7M.cjs');
3
+ var chunkKB4TZTAC_cjs = require('../../chunk-KB4TZTAC.cjs');
4
+ require('../../chunk-3TOBH3YY.cjs');
5
5
  require('../../chunk-NGFFI4XQ.cjs');
6
6
  require('../../chunk-PPK3HQOY.cjs');
7
- require('../../chunk-XVG5Z6B5.cjs');
7
+ require('../../chunk-HISL2IF2.cjs');
8
+ require('../../chunk-5KSKHZWB.cjs');
8
9
 
9
10
 
10
11
 
11
12
  Object.defineProperty(exports, "assignUserRoles", {
12
13
  enumerable: true,
13
- get: function () { return chunkCBIDGS35_cjs.assignUserRoles; }
14
+ get: function () { return chunkKB4TZTAC_cjs.assignUserRoles; }
14
15
  });
15
16
  Object.defineProperty(exports, "createTeacher", {
16
17
  enumerable: true,
17
- get: function () { return chunkCBIDGS35_cjs.createTeacher; }
18
+ get: function () { return chunkKB4TZTAC_cjs.createTeacher; }
18
19
  });
19
20
  Object.defineProperty(exports, "getTeacher", {
20
21
  enumerable: true,
21
- get: function () { return chunkCBIDGS35_cjs.getTeacher; }
22
+ get: function () { return chunkKB4TZTAC_cjs.getTeacher; }
22
23
  });
23
24
  Object.defineProperty(exports, "listRoles", {
24
25
  enumerable: true,
25
- get: function () { return chunkCBIDGS35_cjs.listRoles; }
26
+ get: function () { return chunkKB4TZTAC_cjs.listRoles; }
26
27
  });
27
28
  Object.defineProperty(exports, "listTeachers", {
28
29
  enumerable: true,
29
- get: function () { return chunkCBIDGS35_cjs.listTeachers; }
30
+ get: function () { return chunkKB4TZTAC_cjs.listTeachers; }
30
31
  });
31
32
  Object.defineProperty(exports, "updateTeacher", {
32
33
  enumerable: true,
33
- get: function () { return chunkCBIDGS35_cjs.updateTeacher; }
34
+ get: function () { return chunkKB4TZTAC_cjs.updateTeacher; }
34
35
  });
35
36
  Object.defineProperty(exports, "useAssignUserRoles", {
36
37
  enumerable: true,
37
- get: function () { return chunkCBIDGS35_cjs.useAssignUserRoles; }
38
+ get: function () { return chunkKB4TZTAC_cjs.useAssignUserRoles; }
38
39
  });
39
40
  Object.defineProperty(exports, "useCreateTeacher", {
40
41
  enumerable: true,
41
- get: function () { return chunkCBIDGS35_cjs.useCreateTeacher; }
42
+ get: function () { return chunkKB4TZTAC_cjs.useCreateTeacher; }
42
43
  });
43
44
  Object.defineProperty(exports, "useRoles", {
44
45
  enumerable: true,
45
- get: function () { return chunkCBIDGS35_cjs.useRoles; }
46
+ get: function () { return chunkKB4TZTAC_cjs.useRoles; }
46
47
  });
47
48
  Object.defineProperty(exports, "useTeacher", {
48
49
  enumerable: true,
49
- get: function () { return chunkCBIDGS35_cjs.useTeacher; }
50
+ get: function () { return chunkKB4TZTAC_cjs.useTeacher; }
50
51
  });
51
52
  Object.defineProperty(exports, "useTeachers", {
52
53
  enumerable: true,
53
- get: function () { return chunkCBIDGS35_cjs.useTeachers; }
54
+ get: function () { return chunkKB4TZTAC_cjs.useTeachers; }
54
55
  });
55
56
  Object.defineProperty(exports, "useUpdateTeacher", {
56
57
  enumerable: true,
57
- get: function () { return chunkCBIDGS35_cjs.useUpdateTeacher; }
58
+ get: function () { return chunkKB4TZTAC_cjs.useUpdateTeacher; }
58
59
  });
59
60
  //# sourceMappingURL=index.cjs.map
60
61
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,8 @@
1
- export { assignUserRoles, createTeacher, getTeacher, listRoles, listTeachers, updateTeacher, useAssignUserRoles, useCreateTeacher, useRoles, useTeacher, useTeachers, useUpdateTeacher } from '../../chunk-RMU634GQ.js';
2
- import '../../chunk-MRFGUSN2.js';
1
+ export { assignUserRoles, createTeacher, getTeacher, listRoles, listTeachers, updateTeacher, useAssignUserRoles, useCreateTeacher, useRoles, useTeacher, useTeachers, useUpdateTeacher } from '../../chunk-CSEMYBBZ.js';
2
+ import '../../chunk-Q5ZX6TKB.js';
3
3
  import '../../chunk-6JGO2CUT.js';
4
4
  import '../../chunk-GRXFSXG5.js';
5
- import '../../chunk-ALMSFTRM.js';
5
+ import '../../chunk-XNH67ORL.js';
6
+ import '../../chunk-H3CE34TG.js';
6
7
  //# sourceMappingURL=index.js.map
7
8
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sekolaos/shared-api",
3
- "version": "1.1.1",
3
+ "version": "1.3.0",
4
4
  "description": "Shared HTTP API client, TanStack Query hooks, and query key factory for Sekolaos ecosystem aligned with OpenAPI 3.0.3",
5
5
  "license": "ISC",
6
6
  "author": "Sekolaos",
@@ -110,7 +110,7 @@
110
110
  "react-dom": "^19.3.1"
111
111
  },
112
112
  "dependencies": {
113
- "@sekolaos/shared-schema": "^1.5.0",
113
+ "@sekolaos/shared-schema": "1.6.0",
114
114
  "@tanstack/react-query": "^5.59.16",
115
115
  "axios": "^1.7.7"
116
116
  },
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/modules/teaching-schedule/teaching-schedule.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","scheduleKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAcA,IAAM,WAAWA,+BAAA,CAAc,iBAAA;AAc/B,eAAsB,sBACpB,MAAA,EAC6B;AAC7B,EAAA,OAAOC,yBAAA,CAA4B,QAAA,EAAU,EAAE,MAAA,EAAQ,CAAA;AACzD;AAEA,eAAsB,uBACpB,OAAA,EAC2B;AAC3B,EAAA,OAAOC,0BAAA,CAAwD,UAAU,OAAO,CAAA;AAClF;AAEA,eAAsB,sBAAA,CACpB,IACA,OAAA,EAC2B;AAC3B,EAAA,OAAOC,0BAAuD,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,IAAI,OAAO,CAAA;AAC5F;AAEA,eAAsB,sBACpB,MAAA,EACiC;AACjC,EAAA,OAAOF,0BAAgC,CAAA,EAAG,QAAQ,CAAA,UAAA,CAAA,EAAc,EAAE,QAAQ,CAAA;AAC5E;AAEA,eAAsB,6BACpB,OAAA,EAC6B;AAC7B,EAAA,OAAOC,0BAAA,CAA+D,CAAA,EAAG,QAAQ,CAAA,MAAA,CAAA,EAAU,OAAO,CAAA;AACpG;AAEA,eAAsB,WAAW,OAAA,EAA8D;AAC7F,EAAA,OAAOA,0BAAA,CAAqD,CAAA,EAAG,QAAQ,CAAA,KAAA,CAAA,EAAS,OAAO,CAAA;AACzF;AAEO,SAAS,qBAAqB,MAAA,EAAoC;AACvE,EAAA,OAAOE,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,8BAAA,CAAa,IAAA,CAAK,MAA6C,CAAA;AAAA,IACzE,OAAA,EAAS,MAAM,qBAAA,CAAsB,MAAM;AAAA,GAC5C,CAAA;AACH;AAEO,SAAS,mBAAA,CAAoB,MAAA,EAAoC,OAAA,GAAU,IAAA,EAAM;AACtF,EAAA,OAAOD,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,8BAAA,CAAa,SAAA,CAAU,MAA4C,CAAA;AAAA,IAC7E,OAAA,EAAS,MAAM,qBAAA,CAAsB,MAAM,CAAA;AAAA,IAC3C;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,QAAA,EAAUF,8BAAA,CAAa,KAAK,CAAA;AAAA,IACpE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,yBAAA,GAA4B;AAC1C,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,CAAC,EAAE,EAAA,EAAI,SAAQ,KACzB,sBAAA,CAAuB,IAAI,OAAO,CAAA;AAAA,IACpC,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,8BAAA,CAAa,KAAK,CAAA;AAAA,IACpE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,+BAAA,GAAkC;AAChD,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,4BAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,8BAAA,CAAa,KAAK,CAAA;AAAA,IACpE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,aAAA,GAAgB;AAC9B,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,UAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,8BAAA,CAAa,KAAK,CAAA;AAAA,IACpE;AAAA,GACD,CAAA;AACH","file":"chunk-3RS57C3E.cjs","sourcesContent":["import type {\r\n BatchCreateTeachingScheduleInput,\r\n CheckScheduleConflictQuery,\r\n CopyRosterRequestInput,\r\n CreateTeachingScheduleInput,\r\n TeachingSchedule,\r\n TeachingScheduleListQuery,\r\n UpdateTeachingScheduleInput,\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 { scheduleKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.teachingSchedules;\r\n\r\nexport type ScheduleConflictType = \"TEACHER\" | \"CLASSROOM\";\r\n\r\nexport interface ScheduleConflictResult {\r\n hasConflict: boolean;\r\n conflictType: ScheduleConflictType | null;\r\n conflictingSchedule: TeachingSchedule | null;\r\n}\r\n\r\nexport interface AffectedRowsResult {\r\n totalCreated: number;\r\n}\r\n\r\nexport async function listTeachingSchedules(\r\n params?: TeachingScheduleListQuery\r\n): Promise<TeachingSchedule[]> {\r\n return getData<TeachingSchedule[]>(ENDPOINT, { params });\r\n}\r\n\r\nexport async function createTeachingSchedule(\r\n payload: CreateTeachingScheduleInput\r\n): Promise<TeachingSchedule> {\r\n return postData<TeachingSchedule, CreateTeachingScheduleInput>(ENDPOINT, payload);\r\n}\r\n\r\nexport async function updateTeachingSchedule(\r\n id: string,\r\n payload: UpdateTeachingScheduleInput\r\n): Promise<TeachingSchedule> {\r\n return putData<TeachingSchedule, UpdateTeachingScheduleInput>(`${ENDPOINT}/${id}`, payload);\r\n}\r\n\r\nexport async function checkScheduleConflict(\r\n params: CheckScheduleConflictQuery\r\n): Promise<ScheduleConflictResult> {\r\n return getData<ScheduleConflictResult>(`${ENDPOINT}/conflicts`, { params });\r\n}\r\n\r\nexport async function batchCreateTeachingSchedules(\r\n payload: BatchCreateTeachingScheduleInput\r\n): Promise<AffectedRowsResult> {\r\n return postData<AffectedRowsResult, BatchCreateTeachingScheduleInput>(`${ENDPOINT}/batch`, payload);\r\n}\r\n\r\nexport async function copyRoster(payload: CopyRosterRequestInput): Promise<AffectedRowsResult> {\r\n return postData<AffectedRowsResult, CopyRosterRequestInput>(`${ENDPOINT}/copy`, payload);\r\n}\r\n\r\nexport function useTeachingSchedules(params?: TeachingScheduleListQuery) {\r\n return useQuery({\r\n queryKey: scheduleKeys.list(params as Record<string, unknown> | undefined),\r\n queryFn: () => listTeachingSchedules(params),\r\n });\r\n}\r\n\r\nexport function useScheduleConflict(params: CheckScheduleConflictQuery, enabled = true) {\r\n return useQuery({\r\n queryKey: scheduleKeys.conflicts(params as unknown as Record<string, unknown>),\r\n queryFn: () => checkScheduleConflict(params),\r\n enabled,\r\n });\r\n}\r\n\r\nexport function useCreateTeachingSchedule() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: createTeachingSchedule,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: scheduleKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useUpdateTeachingSchedule() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: ({ id, payload }: { id: string; payload: UpdateTeachingScheduleInput }) =>\r\n updateTeachingSchedule(id, payload),\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: scheduleKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useBatchCreateTeachingSchedules() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: batchCreateTeachingSchedules,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: scheduleKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useCopyRoster() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: copyRoster,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: scheduleKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport type {\r\n BatchCreateTeachingScheduleInput,\r\n CheckScheduleConflictQuery,\r\n CopyRosterRequestInput,\r\n CreateTeachingScheduleInput,\r\n TeachingSchedule,\r\n TeachingScheduleListQuery,\r\n UpdateTeachingScheduleInput,\r\n};\r\n"]}
@@ -1,63 +0,0 @@
1
- import { API_ENDPOINTS } from './chunk-MRFGUSN2.js';
2
- import { postData, getData, putData } from './chunk-6JGO2CUT.js';
3
- import { authKeys } from './chunk-ALMSFTRM.js';
4
- import { useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
5
-
6
- var ENDPOINT = API_ENDPOINTS.auth;
7
- async function login(payload) {
8
- return postData(`${ENDPOINT}/login`, payload);
9
- }
10
- async function switchRole(payload) {
11
- return postData(`${ENDPOINT}/switch-role`, payload);
12
- }
13
- async function logout() {
14
- await postData(`${ENDPOINT}/logout`);
15
- }
16
- async function getMe() {
17
- return getData(`${ENDPOINT}/me`);
18
- }
19
- async function changePassword(payload) {
20
- return putData(`${ENDPOINT}/change-password`, payload);
21
- }
22
- function useMe(options) {
23
- return useQuery({
24
- queryKey: authKeys.me(),
25
- queryFn: getMe,
26
- enabled: options?.enabled ?? true,
27
- staleTime: 6e4
28
- });
29
- }
30
- function useLogin() {
31
- const queryClient = useQueryClient();
32
- return useMutation({
33
- mutationFn: login,
34
- onSuccess: async () => {
35
- await queryClient.invalidateQueries({ queryKey: authKeys.all });
36
- }
37
- });
38
- }
39
- function useSwitchRole() {
40
- const queryClient = useQueryClient();
41
- return useMutation({
42
- mutationFn: switchRole,
43
- onSuccess: async () => {
44
- await queryClient.invalidateQueries();
45
- }
46
- });
47
- }
48
- function useLogout() {
49
- const queryClient = useQueryClient();
50
- return useMutation({
51
- mutationFn: logout,
52
- onSuccess: () => {
53
- queryClient.clear();
54
- }
55
- });
56
- }
57
- function useChangePassword() {
58
- return useMutation({ mutationFn: changePassword });
59
- }
60
-
61
- export { changePassword, getMe, login, logout, switchRole, useChangePassword, useLogin, useLogout, useMe, useSwitchRole };
62
- //# sourceMappingURL=chunk-4T52ABA5.js.map
63
- //# sourceMappingURL=chunk-4T52ABA5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/modules/auth/auth.api.ts"],"names":[],"mappings":";;;;;AAcA,IAAM,WAAW,aAAA,CAAc,IAAA;AAgB/B,eAAsB,MAAM,OAAA,EAAoD;AAC9E,EAAA,OAAO,QAAA,CAA2C,CAAA,EAAG,QAAQ,CAAA,MAAA,CAAA,EAAU,OAAO,CAAA;AAChF;AAEA,eAAsB,WAAW,OAAA,EAAyD;AACxF,EAAA,OAAO,QAAA,CAAgD,CAAA,EAAG,QAAQ,CAAA,YAAA,CAAA,EAAgB,OAAO,CAAA;AAC3F;AAEA,eAAsB,MAAA,GAAwB;AAC5C,EAAA,MAAM,QAAA,CAAe,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAS,CAAA;AAC3C;AAEA,eAAsB,KAAA,GAAqC;AACzD,EAAA,OAAO,OAAA,CAA4B,CAAA,EAAG,QAAQ,CAAA,GAAA,CAAK,CAAA;AACrD;AAEA,eAAsB,eAAe,OAAA,EAA8D;AACjG,EAAA,OAAO,OAAA,CAAoD,CAAA,EAAG,QAAQ,CAAA,gBAAA,CAAA,EAAoB,OAAO,CAAA;AACnG;AAEO,SAAS,MAAM,OAAA,EAAiC;AACrD,EAAA,OAAO,QAAA,CAAS;AAAA,IACd,QAAA,EAAU,SAAS,EAAA,EAAG;AAAA,IACtB,OAAA,EAAS,KAAA;AAAA,IACT,OAAA,EAAS,SAAS,OAAA,IAAW,IAAA;AAAA,IAC7B,SAAA,EAAW;AAAA,GACZ,CAAA;AACH;AAEO,SAAS,QAAA,GAAW;AACzB,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,KAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAU,QAAA,CAAS,KAAK,CAAA;AAAA,IAChE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,aAAA,GAAgB;AAC9B,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,UAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,EAAkB;AAAA,IACtC;AAAA,GACD,CAAA;AACH;AAEO,SAAS,SAAA,GAAY;AAC1B,EAAA,MAAM,cAAc,cAAA,EAAe;AACnC,EAAA,OAAO,WAAA,CAAY;AAAA,IACjB,UAAA,EAAY,MAAA;AAAA,IACZ,WAAW,MAAM;AACf,MAAA,WAAA,CAAY,KAAA,EAAM;AAAA,IACpB;AAAA,GACD,CAAA;AACH;AAEO,SAAS,iBAAA,GAAoB;AAClC,EAAA,OAAO,WAAA,CAAY,EAAE,UAAA,EAAY,cAAA,EAAgB,CAAA;AACnD","file":"chunk-4T52ABA5.js","sourcesContent":["import type {\r\n AuthSession,\r\n ChangePasswordRequest,\r\n LoginRequest,\r\n Role,\r\n SwitchRoleRequest,\r\n Tenant,\r\n UserProfile,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData, postData, putData } from \"../../client/http\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { authKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.auth;\r\n\r\nexport interface AuthUserSummary {\r\n id: string;\r\n username: string;\r\n email: string | null;\r\n fullName: string;\r\n}\r\n\r\n/** Payload `POST /auth/login`, `POST /auth/switch-role`, dan `GET /auth/me`. */\r\nexport interface AuthSessionPayload {\r\n session: AuthSession;\r\n user: AuthUserSummary;\r\n tenant: Tenant;\r\n}\r\n\r\nexport async function login(payload: LoginRequest): Promise<AuthSessionPayload> {\r\n return postData<AuthSessionPayload, LoginRequest>(`${ENDPOINT}/login`, payload);\r\n}\r\n\r\nexport async function switchRole(payload: SwitchRoleRequest): Promise<AuthSessionPayload> {\r\n return postData<AuthSessionPayload, SwitchRoleRequest>(`${ENDPOINT}/switch-role`, payload);\r\n}\r\n\r\nexport async function logout(): Promise<void> {\r\n await postData<void>(`${ENDPOINT}/logout`);\r\n}\r\n\r\nexport async function getMe(): Promise<AuthSessionPayload> {\r\n return getData<AuthSessionPayload>(`${ENDPOINT}/me`);\r\n}\r\n\r\nexport async function changePassword(payload: ChangePasswordRequest): Promise<{ message: string }> {\r\n return putData<{ message: string }, ChangePasswordRequest>(`${ENDPOINT}/change-password`, payload);\r\n}\r\n\r\nexport function useMe(options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: authKeys.me(),\r\n queryFn: getMe,\r\n enabled: options?.enabled ?? true,\r\n staleTime: 60_000,\r\n });\r\n}\r\n\r\nexport function useLogin() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: login,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: authKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useSwitchRole() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: switchRole,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries();\r\n },\r\n });\r\n}\r\n\r\nexport function useLogout() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: logout,\r\n onSuccess: () => {\r\n queryClient.clear();\r\n },\r\n });\r\n}\r\n\r\nexport function useChangePassword() {\r\n return useMutation({ mutationFn: changePassword });\r\n}\r\n\r\nexport type { AuthSession, ChangePasswordRequest, LoginRequest, Role, SwitchRoleRequest, UserProfile };\r\n"]}
@@ -1 +0,0 @@
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-5C4JMJ6P.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 { 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 const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: bulkImportStudents,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: studentKeys.all });\r\n },\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 +0,0 @@
1
- {"version":3,"sources":["../src/keys/index.ts"],"names":[],"mappings":"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","file":"chunk-ALMSFTRM.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};\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"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/modules/classroom/classroom.api.ts"],"names":["API_ENDPOINTS","getData","postData","putData","useQuery","classroomKeys","useQueryClient","useMutation"],"mappings":"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","file":"chunk-AOBHBJ2G.cjs","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 { classroomKeys } 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 const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: (payload: PromoteClassStudentsInput) => promoteClassStudents(payload),\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: classroomKeys.all });\r\n },\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,74 +0,0 @@
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.auth;
9
- async function login(payload) {
10
- return chunkNGFFI4XQ_cjs.postData(`${ENDPOINT}/login`, payload);
11
- }
12
- async function switchRole(payload) {
13
- return chunkNGFFI4XQ_cjs.postData(`${ENDPOINT}/switch-role`, payload);
14
- }
15
- async function logout() {
16
- await chunkNGFFI4XQ_cjs.postData(`${ENDPOINT}/logout`);
17
- }
18
- async function getMe() {
19
- return chunkNGFFI4XQ_cjs.getData(`${ENDPOINT}/me`);
20
- }
21
- async function changePassword(payload) {
22
- return chunkNGFFI4XQ_cjs.putData(`${ENDPOINT}/change-password`, payload);
23
- }
24
- function useMe(options) {
25
- return reactQuery.useQuery({
26
- queryKey: chunkXVG5Z6B5_cjs.authKeys.me(),
27
- queryFn: getMe,
28
- enabled: options?.enabled ?? true,
29
- staleTime: 6e4
30
- });
31
- }
32
- function useLogin() {
33
- const queryClient = reactQuery.useQueryClient();
34
- return reactQuery.useMutation({
35
- mutationFn: login,
36
- onSuccess: async () => {
37
- await queryClient.invalidateQueries({ queryKey: chunkXVG5Z6B5_cjs.authKeys.all });
38
- }
39
- });
40
- }
41
- function useSwitchRole() {
42
- const queryClient = reactQuery.useQueryClient();
43
- return reactQuery.useMutation({
44
- mutationFn: switchRole,
45
- onSuccess: async () => {
46
- await queryClient.invalidateQueries();
47
- }
48
- });
49
- }
50
- function useLogout() {
51
- const queryClient = reactQuery.useQueryClient();
52
- return reactQuery.useMutation({
53
- mutationFn: logout,
54
- onSuccess: () => {
55
- queryClient.clear();
56
- }
57
- });
58
- }
59
- function useChangePassword() {
60
- return reactQuery.useMutation({ mutationFn: changePassword });
61
- }
62
-
63
- exports.changePassword = changePassword;
64
- exports.getMe = getMe;
65
- exports.login = login;
66
- exports.logout = logout;
67
- exports.switchRole = switchRole;
68
- exports.useChangePassword = useChangePassword;
69
- exports.useLogin = useLogin;
70
- exports.useLogout = useLogout;
71
- exports.useMe = useMe;
72
- exports.useSwitchRole = useSwitchRole;
73
- //# sourceMappingURL=chunk-CP46K2UB.cjs.map
74
- //# sourceMappingURL=chunk-CP46K2UB.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/modules/auth/auth.api.ts"],"names":["API_ENDPOINTS","postData","getData","putData","useQuery","authKeys","useQueryClient","useMutation"],"mappings":";;;;;;;AAcA,IAAM,WAAWA,+BAAA,CAAc,IAAA;AAgB/B,eAAsB,MAAM,OAAA,EAAoD;AAC9E,EAAA,OAAOC,0BAAA,CAA2C,CAAA,EAAG,QAAQ,CAAA,MAAA,CAAA,EAAU,OAAO,CAAA;AAChF;AAEA,eAAsB,WAAW,OAAA,EAAyD;AACxF,EAAA,OAAOA,0BAAA,CAAgD,CAAA,EAAG,QAAQ,CAAA,YAAA,CAAA,EAAgB,OAAO,CAAA;AAC3F;AAEA,eAAsB,MAAA,GAAwB;AAC5C,EAAA,MAAMA,0BAAA,CAAe,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAS,CAAA;AAC3C;AAEA,eAAsB,KAAA,GAAqC;AACzD,EAAA,OAAOC,yBAAA,CAA4B,CAAA,EAAG,QAAQ,CAAA,GAAA,CAAK,CAAA;AACrD;AAEA,eAAsB,eAAe,OAAA,EAA8D;AACjG,EAAA,OAAOC,yBAAA,CAAoD,CAAA,EAAG,QAAQ,CAAA,gBAAA,CAAA,EAAoB,OAAO,CAAA;AACnG;AAEO,SAAS,MAAM,OAAA,EAAiC;AACrD,EAAA,OAAOC,mBAAA,CAAS;AAAA,IACd,QAAA,EAAUC,2BAAS,EAAA,EAAG;AAAA,IACtB,OAAA,EAAS,KAAA;AAAA,IACT,OAAA,EAAS,SAAS,OAAA,IAAW,IAAA;AAAA,IAC7B,SAAA,EAAW;AAAA,GACZ,CAAA;AACH;AAEO,SAAS,QAAA,GAAW;AACzB,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,KAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,CAAkB,EAAE,QAAA,EAAUF,0BAAA,CAAS,KAAK,CAAA;AAAA,IAChE;AAAA,GACD,CAAA;AACH;AAEO,SAAS,aAAA,GAAgB;AAC9B,EAAA,MAAM,cAAcC,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,UAAA;AAAA,IACZ,WAAW,YAAY;AACrB,MAAA,MAAM,YAAY,iBAAA,EAAkB;AAAA,IACtC;AAAA,GACD,CAAA;AACH;AAEO,SAAS,SAAA,GAAY;AAC1B,EAAA,MAAM,cAAcD,yBAAA,EAAe;AACnC,EAAA,OAAOC,sBAAA,CAAY;AAAA,IACjB,UAAA,EAAY,MAAA;AAAA,IACZ,WAAW,MAAM;AACf,MAAA,WAAA,CAAY,KAAA,EAAM;AAAA,IACpB;AAAA,GACD,CAAA;AACH;AAEO,SAAS,iBAAA,GAAoB;AAClC,EAAA,OAAOA,sBAAA,CAAY,EAAE,UAAA,EAAY,cAAA,EAAgB,CAAA;AACnD","file":"chunk-CP46K2UB.cjs","sourcesContent":["import type {\r\n AuthSession,\r\n ChangePasswordRequest,\r\n LoginRequest,\r\n Role,\r\n SwitchRoleRequest,\r\n Tenant,\r\n UserProfile,\r\n} from \"@sekolaos/shared-schema\";\r\nimport { API_ENDPOINTS } from \"../../common/endpoints\";\r\nimport { getData, postData, putData } from \"../../client/http\";\r\nimport { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport { authKeys } from \"../../keys\";\r\n\r\nconst ENDPOINT = API_ENDPOINTS.auth;\r\n\r\nexport interface AuthUserSummary {\r\n id: string;\r\n username: string;\r\n email: string | null;\r\n fullName: string;\r\n}\r\n\r\n/** Payload `POST /auth/login`, `POST /auth/switch-role`, dan `GET /auth/me`. */\r\nexport interface AuthSessionPayload {\r\n session: AuthSession;\r\n user: AuthUserSummary;\r\n tenant: Tenant;\r\n}\r\n\r\nexport async function login(payload: LoginRequest): Promise<AuthSessionPayload> {\r\n return postData<AuthSessionPayload, LoginRequest>(`${ENDPOINT}/login`, payload);\r\n}\r\n\r\nexport async function switchRole(payload: SwitchRoleRequest): Promise<AuthSessionPayload> {\r\n return postData<AuthSessionPayload, SwitchRoleRequest>(`${ENDPOINT}/switch-role`, payload);\r\n}\r\n\r\nexport async function logout(): Promise<void> {\r\n await postData<void>(`${ENDPOINT}/logout`);\r\n}\r\n\r\nexport async function getMe(): Promise<AuthSessionPayload> {\r\n return getData<AuthSessionPayload>(`${ENDPOINT}/me`);\r\n}\r\n\r\nexport async function changePassword(payload: ChangePasswordRequest): Promise<{ message: string }> {\r\n return putData<{ message: string }, ChangePasswordRequest>(`${ENDPOINT}/change-password`, payload);\r\n}\r\n\r\nexport function useMe(options?: { enabled?: boolean }) {\r\n return useQuery({\r\n queryKey: authKeys.me(),\r\n queryFn: getMe,\r\n enabled: options?.enabled ?? true,\r\n staleTime: 60_000,\r\n });\r\n}\r\n\r\nexport function useLogin() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: login,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({ queryKey: authKeys.all });\r\n },\r\n });\r\n}\r\n\r\nexport function useSwitchRole() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: switchRole,\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries();\r\n },\r\n });\r\n}\r\n\r\nexport function useLogout() {\r\n const queryClient = useQueryClient();\r\n return useMutation({\r\n mutationFn: logout,\r\n onSuccess: () => {\r\n queryClient.clear();\r\n },\r\n });\r\n}\r\n\r\nexport function useChangePassword() {\r\n return useMutation({ mutationFn: changePassword });\r\n}\r\n\r\nexport type { AuthSession, ChangePasswordRequest, LoginRequest, Role, SwitchRoleRequest, UserProfile };\r\n"]}