@neutron.co.id/pendidikan-operation 1.27.2 → 1.27.3

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.
@@ -8,6 +8,7 @@ export * from './action.prepareConflict';
8
8
  export * from './action.userCountStats';
9
9
  export * from './getClassSessionConflicts';
10
10
  export * from './syncClassSessions';
11
+ export * from './setAksesModulSiswaDiClassGroup';
11
12
  export * from './setTravelWageSessions';
12
13
  export * from './action.customSaveOneClassSession';
13
14
  export * from './syncClassGroups';
@@ -0,0 +1,2 @@
1
+ export * from './setAksesModulSiswaDiClassGroup.action';
2
+ export * from './setAksesModulSiswaDiClassGroup.schema';
@@ -0,0 +1,154 @@
1
+ 'use strict';
2
+
3
+ const core = require('@neon.id/core');
4
+ const operation = require('@neon.id/operation');
5
+ const utils = require('@neon.id/utils');
6
+ const setAksesModulSiswaDiClassGroup_schema = require('./setAksesModulSiswaDiClassGroup.schema.cjs');
7
+ const useTelemetry = require('../../../providers/useTelemetry.cjs');
8
+ const util_logger = require('../../../utils/util.logger.cjs');
9
+
10
+ const setAksesModulSiswaDiClassGroup = operation.Action.define({
11
+ key: "setAksesModulSiswaDiClassGroup",
12
+ name: "Perbarui Akses Modul Siswa di Class Group",
13
+ type: "command",
14
+ category: "domain",
15
+ execute: async (input, stream) => {
16
+ utils.guard(stream, "streamRequired");
17
+ return useTelemetry.useTelemetry(stream, "setAksesModulSiswaDiClassGroup", {
18
+ userId: stream.context?.identitas?.userId || "",
19
+ ...input
20
+ }, async () => {
21
+ const log = util_logger.useLog("setAksesModulSiswaDiClassGroup", { isActive: true });
22
+ const { getActorId } = operation.useStream(stream);
23
+ const { validate } = operation.useValidation(stream, setAksesModulSiswaDiClassGroup_schema.SetAksesModulSiswaDiClassGroupSchema);
24
+ const data = validate(input);
25
+ console.log("data.studentIds", data.studentIds.length);
26
+ console.log("data.moduleIds", data.moduleIds.length);
27
+ if (data.studentIds.length === 0) {
28
+ return core.Result.fail({
29
+ state: `perbaruiAksesModulGagal`,
30
+ message: `Siswa tidak ada diisi.`
31
+ });
32
+ }
33
+ if (data.moduleIds.length === 0) {
34
+ return core.Result.fail({
35
+ state: `perbaruiAksesModulGagal`,
36
+ message: `Modul tidak ada diisi.`
37
+ });
38
+ }
39
+ return useTelemetry.useTelemetry(stream, "setAksesModulSiswaDiClassGroup", {
40
+ userId: stream.context?.identitas?.userId || "",
41
+ data
42
+ }, async () => {
43
+ const dbs = stream.core.dbs;
44
+ const dbModules = dbs["neu-akademik"].models["neu:akademik:module"];
45
+ const dbStudent = dbs["neu-akademik"].models["neu:akademik:student"];
46
+ const dbClassGroup = dbs["neu-jadwal"].models["neu:jadwal:classGroup"];
47
+ try {
48
+ getActorId({ throw: true });
49
+ log.object("input", data);
50
+ const findClassGroup = await dbClassGroup.findById(data.classGroupId);
51
+ if (!findClassGroup) {
52
+ return core.Result.fail({
53
+ state: `perbaruiAksesModulGagal`,
54
+ message: `Class Group Id tidak valid.`,
55
+ error: `Class Group Id tidak valid.`
56
+ });
57
+ }
58
+ const findStudents = await dbStudent.find({ _id: { $in: input?.studentIds } });
59
+ if (!findStudents) {
60
+ return core.Result.fail({
61
+ state: `perbaruiAksesModulGagal`,
62
+ message: `Ada Student Id yang tidak valid.`,
63
+ error: `Class Student Id tidak valid.`
64
+ });
65
+ }
66
+ const findModules = await dbModules.find({ _id: { $in: input?.moduleIds } });
67
+ if (!findModules) {
68
+ return core.Result.fail({
69
+ state: `perbaruiAksesModulGagal`,
70
+ message: `Ada Module yang tidak valid.`,
71
+ error: `Ada Module yang tidak valid.`
72
+ });
73
+ }
74
+ const branchIsValid = _ensureBranchIsValid({ modules: findModules, students: findStudents, classGroup: findClassGroup });
75
+ if (branchIsValid.isError) {
76
+ return core.Result.fail({
77
+ state: `perbaruiAksesModulGagal`,
78
+ message: branchIsValid.message,
79
+ error: branchIsValid.message
80
+ });
81
+ }
82
+ await dbStudent.updateMany({
83
+ _id: { $in: [...data.studentIds] }
84
+ }, {
85
+ $addToSet: { moduleIds: { $each: [...data.moduleIds] } }
86
+ });
87
+ return core.Result.ok({
88
+ state: "perbaruiAksesModulSukses",
89
+ message: "Perbarui akses siswa berhasil."
90
+ });
91
+ } catch (error) {
92
+ if (error?.isFailure)
93
+ throw error;
94
+ console.error(error);
95
+ return core.Result.fail({
96
+ state: `perbaruiAksesModulGagal`,
97
+ message: `Gagal memperbarui akses modul ke siswa.`,
98
+ error: error?.toString()
99
+ });
100
+ }
101
+ });
102
+ });
103
+ }
104
+ });
105
+ function _ensureBranchIsValid({
106
+ modules,
107
+ students,
108
+ classGroup
109
+ }) {
110
+ for (let i = 0; i < students.length; i++) {
111
+ const classStudentIdString = classGroup.studentIds.map((id) => id.toString());
112
+ if (!classStudentIdString?.includes(students[i]._id.toString())) {
113
+ return {
114
+ isError: true,
115
+ message: `${students[i].name} tidak masuk dalam kelompok belajar`
116
+ };
117
+ }
118
+ const studentBranches = new Set(students[i].virtualBranchIds.map((id) => id.toString()));
119
+ for (let y = 0; y < modules.length; y++) {
120
+ if (modules[y].status !== "ready") {
121
+ return {
122
+ isError: true,
123
+ message: `${modules[y].name} harus berstatus siap`
124
+ };
125
+ }
126
+ if (!(Array.isArray(modules[y]?.branchIds) && modules[y]?.branchIds.length > 0)) {
127
+ return {
128
+ isError: true,
129
+ message: `${modules[y].name} tidak memiliki branch`
130
+ };
131
+ } else {
132
+ let foundBranch = false;
133
+ for (const element of modules[y]?.branchIds) {
134
+ if (studentBranches.has(element.toString())) {
135
+ foundBranch = true;
136
+ break;
137
+ }
138
+ }
139
+ if (!foundBranch) {
140
+ return {
141
+ isError: true,
142
+ message: `${students[i].name} tidak dapat mengambil modul ${modules[y].name} karena berbeda cabang`
143
+ };
144
+ }
145
+ }
146
+ }
147
+ }
148
+ return {
149
+ isError: false,
150
+ message: "success"
151
+ };
152
+ }
153
+
154
+ exports.setAksesModulSiswaDiClassGroup = setAksesModulSiswaDiClassGroup;
@@ -0,0 +1,16 @@
1
+ import { Action } from '@neon.id/operation';
2
+ import type { z } from '@neon.id/z';
3
+ import type { Schema } from '@neutron.co.id/pendidikan-types';
4
+ import { SetAksesModulSiswaDiClassGroupSchema } from './setAksesModulSiswaDiClassGroup.schema';
5
+ export type SetAksesModulSiswaDiClassGroupInput = z.parse<typeof SetAksesModulSiswaDiClassGroupSchema>;
6
+ export interface SetAksesModulSiswaDiClassGroupOutput {
7
+ updates?: Schema.AkademikModule[];
8
+ }
9
+ export interface SetAksesModulSiswaDiClassGroupMeta {
10
+ }
11
+ export declare const setAksesModulSiswaDiClassGroup: Action<"setAksesModulSiswaDiClassGroup", {
12
+ moduleIds: string[];
13
+ studentIds: string[];
14
+ classGroupId: string;
15
+ }, SetAksesModulSiswaDiClassGroupOutput, SetAksesModulSiswaDiClassGroupMeta>;
16
+ export type SetAksesModulSiswaDiClassGroupAction = typeof setAksesModulSiswaDiClassGroup;
@@ -0,0 +1,152 @@
1
+ import { Result } from '@neon.id/core';
2
+ import { Action, useStream, useValidation } from '@neon.id/operation';
3
+ import { guard } from '@neon.id/utils';
4
+ import { SetAksesModulSiswaDiClassGroupSchema } from './setAksesModulSiswaDiClassGroup.schema.mjs';
5
+ import { useTelemetry } from '../../../providers/useTelemetry.mjs';
6
+ import { useLog } from '../../../utils/util.logger.mjs';
7
+
8
+ const setAksesModulSiswaDiClassGroup = Action.define({
9
+ key: "setAksesModulSiswaDiClassGroup",
10
+ name: "Perbarui Akses Modul Siswa di Class Group",
11
+ type: "command",
12
+ category: "domain",
13
+ execute: async (input, stream) => {
14
+ guard(stream, "streamRequired");
15
+ return useTelemetry(stream, "setAksesModulSiswaDiClassGroup", {
16
+ userId: stream.context?.identitas?.userId || "",
17
+ ...input
18
+ }, async () => {
19
+ const log = useLog("setAksesModulSiswaDiClassGroup", { isActive: true });
20
+ const { getActorId } = useStream(stream);
21
+ const { validate } = useValidation(stream, SetAksesModulSiswaDiClassGroupSchema);
22
+ const data = validate(input);
23
+ console.log("data.studentIds", data.studentIds.length);
24
+ console.log("data.moduleIds", data.moduleIds.length);
25
+ if (data.studentIds.length === 0) {
26
+ return Result.fail({
27
+ state: `perbaruiAksesModulGagal`,
28
+ message: `Siswa tidak ada diisi.`
29
+ });
30
+ }
31
+ if (data.moduleIds.length === 0) {
32
+ return Result.fail({
33
+ state: `perbaruiAksesModulGagal`,
34
+ message: `Modul tidak ada diisi.`
35
+ });
36
+ }
37
+ return useTelemetry(stream, "setAksesModulSiswaDiClassGroup", {
38
+ userId: stream.context?.identitas?.userId || "",
39
+ data
40
+ }, async () => {
41
+ const dbs = stream.core.dbs;
42
+ const dbModules = dbs["neu-akademik"].models["neu:akademik:module"];
43
+ const dbStudent = dbs["neu-akademik"].models["neu:akademik:student"];
44
+ const dbClassGroup = dbs["neu-jadwal"].models["neu:jadwal:classGroup"];
45
+ try {
46
+ getActorId({ throw: true });
47
+ log.object("input", data);
48
+ const findClassGroup = await dbClassGroup.findById(data.classGroupId);
49
+ if (!findClassGroup) {
50
+ return Result.fail({
51
+ state: `perbaruiAksesModulGagal`,
52
+ message: `Class Group Id tidak valid.`,
53
+ error: `Class Group Id tidak valid.`
54
+ });
55
+ }
56
+ const findStudents = await dbStudent.find({ _id: { $in: input?.studentIds } });
57
+ if (!findStudents) {
58
+ return Result.fail({
59
+ state: `perbaruiAksesModulGagal`,
60
+ message: `Ada Student Id yang tidak valid.`,
61
+ error: `Class Student Id tidak valid.`
62
+ });
63
+ }
64
+ const findModules = await dbModules.find({ _id: { $in: input?.moduleIds } });
65
+ if (!findModules) {
66
+ return Result.fail({
67
+ state: `perbaruiAksesModulGagal`,
68
+ message: `Ada Module yang tidak valid.`,
69
+ error: `Ada Module yang tidak valid.`
70
+ });
71
+ }
72
+ const branchIsValid = _ensureBranchIsValid({ modules: findModules, students: findStudents, classGroup: findClassGroup });
73
+ if (branchIsValid.isError) {
74
+ return Result.fail({
75
+ state: `perbaruiAksesModulGagal`,
76
+ message: branchIsValid.message,
77
+ error: branchIsValid.message
78
+ });
79
+ }
80
+ await dbStudent.updateMany({
81
+ _id: { $in: [...data.studentIds] }
82
+ }, {
83
+ $addToSet: { moduleIds: { $each: [...data.moduleIds] } }
84
+ });
85
+ return Result.ok({
86
+ state: "perbaruiAksesModulSukses",
87
+ message: "Perbarui akses siswa berhasil."
88
+ });
89
+ } catch (error) {
90
+ if (error?.isFailure)
91
+ throw error;
92
+ console.error(error);
93
+ return Result.fail({
94
+ state: `perbaruiAksesModulGagal`,
95
+ message: `Gagal memperbarui akses modul ke siswa.`,
96
+ error: error?.toString()
97
+ });
98
+ }
99
+ });
100
+ });
101
+ }
102
+ });
103
+ function _ensureBranchIsValid({
104
+ modules,
105
+ students,
106
+ classGroup
107
+ }) {
108
+ for (let i = 0; i < students.length; i++) {
109
+ const classStudentIdString = classGroup.studentIds.map((id) => id.toString());
110
+ if (!classStudentIdString?.includes(students[i]._id.toString())) {
111
+ return {
112
+ isError: true,
113
+ message: `${students[i].name} tidak masuk dalam kelompok belajar`
114
+ };
115
+ }
116
+ const studentBranches = new Set(students[i].virtualBranchIds.map((id) => id.toString()));
117
+ for (let y = 0; y < modules.length; y++) {
118
+ if (modules[y].status !== "ready") {
119
+ return {
120
+ isError: true,
121
+ message: `${modules[y].name} harus berstatus siap`
122
+ };
123
+ }
124
+ if (!(Array.isArray(modules[y]?.branchIds) && modules[y]?.branchIds.length > 0)) {
125
+ return {
126
+ isError: true,
127
+ message: `${modules[y].name} tidak memiliki branch`
128
+ };
129
+ } else {
130
+ let foundBranch = false;
131
+ for (const element of modules[y]?.branchIds) {
132
+ if (studentBranches.has(element.toString())) {
133
+ foundBranch = true;
134
+ break;
135
+ }
136
+ }
137
+ if (!foundBranch) {
138
+ return {
139
+ isError: true,
140
+ message: `${students[i].name} tidak dapat mengambil modul ${modules[y].name} karena berbeda cabang`
141
+ };
142
+ }
143
+ }
144
+ }
145
+ }
146
+ return {
147
+ isError: false,
148
+ message: "success"
149
+ };
150
+ }
151
+
152
+ export { setAksesModulSiswaDiClassGroup };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ const z = require('@neon.id/z');
4
+
5
+ const SetAksesModulSiswaDiClassGroupSchema = z.z.object({
6
+ classGroupId: z.z.objectId().explain({
7
+ label: "Class Group ID"
8
+ }),
9
+ moduleIds: z.z.array(z.z.objectId()).explain({
10
+ label: "Module IDs"
11
+ }),
12
+ studentIds: z.z.array(z.z.objectId()).explain({
13
+ label: "Student IDs"
14
+ })
15
+ });
16
+
17
+ exports.SetAksesModulSiswaDiClassGroupSchema = SetAksesModulSiswaDiClassGroupSchema;
@@ -0,0 +1,14 @@
1
+ import { z } from '@neon.id/z';
2
+ export declare const SetAksesModulSiswaDiClassGroupSchema: z.ZodObject<{
3
+ classGroupId: z.ZodEffects<z.ZodString, string, string>;
4
+ moduleIds: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
5
+ studentIds: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
6
+ }, "strip", z.ZodTypeAny, {
7
+ moduleIds: string[];
8
+ studentIds: string[];
9
+ classGroupId: string;
10
+ }, {
11
+ moduleIds: string[];
12
+ studentIds: string[];
13
+ classGroupId: string;
14
+ }>;
@@ -0,0 +1,15 @@
1
+ import { z } from '@neon.id/z';
2
+
3
+ const SetAksesModulSiswaDiClassGroupSchema = z.object({
4
+ classGroupId: z.objectId().explain({
5
+ label: "Class Group ID"
6
+ }),
7
+ moduleIds: z.array(z.objectId()).explain({
8
+ label: "Module IDs"
9
+ }),
10
+ studentIds: z.array(z.objectId()).explain({
11
+ label: "Student IDs"
12
+ })
13
+ });
14
+
15
+ export { SetAksesModulSiswaDiClassGroupSchema };
package/build/index.cjs CHANGED
@@ -25,6 +25,7 @@ const action_deleteManySession = require('./actions/jadwal/action.deleteManySess
25
25
  const action_syncStudentAdmisi = require('./actions/akademik/action.syncStudentAdmisi.cjs');
26
26
  const action_checkClassAttendance = require('./actions/jadwal/action.checkClassAttendance.cjs');
27
27
  const syncClassSessions_action = require('./actions/jadwal/syncClassSessions/syncClassSessions.action.cjs');
28
+ const setAksesModulSiswaDiClassGroup_action = require('./actions/jadwal/setAksesModulSiswaDiClassGroup/setAksesModulSiswaDiClassGroup.action.cjs');
28
29
  const getClassSessionConflicts_action = require('./actions/jadwal/getClassSessionConflicts/getClassSessionConflicts.action.cjs');
29
30
  const setTravelWageSessions_action = require('./actions/jadwal/setTravelWageSessions/setTravelWageSessions.action.cjs');
30
31
  const action_customSaveOneClassSession = require('./actions/jadwal/action.customSaveOneClassSession.cjs');
@@ -59,6 +60,7 @@ const syncStudentReport_schema = require('./actions/akademik/studentReport/syncS
59
60
  const updateReportStudent_schema = require('./actions/akademik/updateReportStudent/updateReportStudent.schema.cjs');
60
61
  const getClassSessionConflicts_schema = require('./actions/jadwal/getClassSessionConflicts/getClassSessionConflicts.schema.cjs');
61
62
  const syncClassSessions_schema = require('./actions/jadwal/syncClassSessions/syncClassSessions.schema.cjs');
63
+ const setAksesModulSiswaDiClassGroup_schema = require('./actions/jadwal/setAksesModulSiswaDiClassGroup/setAksesModulSiswaDiClassGroup.schema.cjs');
62
64
  const setTravelWageSessions_schema = require('./actions/jadwal/setTravelWageSessions/setTravelWageSessions.schema.cjs');
63
65
  const syncClassGroups_schema = require('./actions/jadwal/syncClassGroups/syncClassGroups.schema.cjs');
64
66
  const importData_schema = require('./actions/importData/importData.schema.cjs');
@@ -99,6 +101,7 @@ const actions = {
99
101
  syncStudentAdmisi: action_syncStudentAdmisi.syncStudentAdmisi,
100
102
  checkClassAttendance: action_checkClassAttendance.checkClassAttendance,
101
103
  syncClassSessions: syncClassSessions_action.syncClassSessions,
104
+ setAksesModulSiswaDiClassGroup: setAksesModulSiswaDiClassGroup_action.setAksesModulSiswaDiClassGroup,
102
105
  getClassSessionConflicts: getClassSessionConflicts_action.getClassSessionConflicts,
103
106
  setTravelWageSessions: setTravelWageSessions_action.setTravelWageSessions,
104
107
  customSaveOneClassSession: action_customSaveOneClassSession.customSaveOneClassSession,
@@ -163,6 +166,7 @@ exports.deleteManySession = action_deleteManySession.deleteManySession;
163
166
  exports.syncStudentAdmisi = action_syncStudentAdmisi.syncStudentAdmisi;
164
167
  exports.checkClassAttendance = action_checkClassAttendance.checkClassAttendance;
165
168
  exports.syncClassSessions = syncClassSessions_action.syncClassSessions;
169
+ exports.setAksesModulSiswaDiClassGroup = setAksesModulSiswaDiClassGroup_action.setAksesModulSiswaDiClassGroup;
166
170
  exports.getClassSessionConflicts = getClassSessionConflicts_action.getClassSessionConflicts;
167
171
  exports.setTravelWageSessions = setTravelWageSessions_action.setTravelWageSessions;
168
172
  exports.customSaveOneClassSession = action_customSaveOneClassSession.customSaveOneClassSession;
@@ -199,6 +203,7 @@ exports.StudentReportSchema = syncStudentReport_schema.StudentReportSchema;
199
203
  exports.UpdateReportStudentSchema = updateReportStudent_schema.UpdateReportStudentSchema;
200
204
  exports.GetClassSessionConflictsSchema = getClassSessionConflicts_schema.GetClassSessionConflictsSchema;
201
205
  exports.SyncClassSessionsSchema = syncClassSessions_schema.SyncClassSessionsSchema;
206
+ exports.SetAksesModulSiswaDiClassGroupSchema = setAksesModulSiswaDiClassGroup_schema.SetAksesModulSiswaDiClassGroupSchema;
202
207
  exports.SetTravelWageSessionsSchema = setTravelWageSessions_schema.SetTravelWageSessionsSchema;
203
208
  exports.SyncClassGroupsSchema = syncClassGroups_schema.SyncClassGroupsSchema;
204
209
  exports.ImportDataSchema = importData_schema.ImportDataSchema;
package/build/index.d.ts CHANGED
@@ -51,6 +51,11 @@ export declare const actions: {
51
51
  all?: boolean | undefined;
52
52
  return?: boolean | undefined;
53
53
  }, import("./actions").SyncClassSessionsOutput, import("./actions").SyncClassSessionsMeta>;
54
+ setAksesModulSiswaDiClassGroup: import("@neon.id/operation").Action<"setAksesModulSiswaDiClassGroup", {
55
+ moduleIds: string[];
56
+ studentIds: string[];
57
+ classGroupId: string;
58
+ }, import("./actions").SetAksesModulSiswaDiClassGroupOutput, import("./actions").SetAksesModulSiswaDiClassGroupMeta>;
54
59
  getClassSessionConflicts: import("@neon.id/operation").Action<"getClassSessionConflicts", {
55
60
  filter?: any;
56
61
  }, import("./actions").GetClassSessionConflictsOutput, import("./actions").GetClassSessionConflictsMeta>;
package/build/index.mjs CHANGED
@@ -23,6 +23,7 @@ import { deleteManySession } from './actions/jadwal/action.deleteManySession.mjs
23
23
  import { syncStudentAdmisi } from './actions/akademik/action.syncStudentAdmisi.mjs';
24
24
  import { checkClassAttendance } from './actions/jadwal/action.checkClassAttendance.mjs';
25
25
  import { syncClassSessions } from './actions/jadwal/syncClassSessions/syncClassSessions.action.mjs';
26
+ import { setAksesModulSiswaDiClassGroup } from './actions/jadwal/setAksesModulSiswaDiClassGroup/setAksesModulSiswaDiClassGroup.action.mjs';
26
27
  import { getClassSessionConflicts } from './actions/jadwal/getClassSessionConflicts/getClassSessionConflicts.action.mjs';
27
28
  import { setTravelWageSessions } from './actions/jadwal/setTravelWageSessions/setTravelWageSessions.action.mjs';
28
29
  import { customSaveOneClassSession } from './actions/jadwal/action.customSaveOneClassSession.mjs';
@@ -59,6 +60,7 @@ export { StudentReportSchema } from './actions/akademik/studentReport/syncStuden
59
60
  export { UpdateReportStudentSchema } from './actions/akademik/updateReportStudent/updateReportStudent.schema.mjs';
60
61
  export { GetClassSessionConflictsSchema } from './actions/jadwal/getClassSessionConflicts/getClassSessionConflicts.schema.mjs';
61
62
  export { SyncClassSessionsSchema } from './actions/jadwal/syncClassSessions/syncClassSessions.schema.mjs';
63
+ export { SetAksesModulSiswaDiClassGroupSchema } from './actions/jadwal/setAksesModulSiswaDiClassGroup/setAksesModulSiswaDiClassGroup.schema.mjs';
62
64
  export { SetTravelWageSessionsSchema } from './actions/jadwal/setTravelWageSessions/setTravelWageSessions.schema.mjs';
63
65
  export { SyncClassGroupsSchema } from './actions/jadwal/syncClassGroups/syncClassGroups.schema.mjs';
64
66
  export { ImportDataSchema } from './actions/importData/importData.schema.mjs';
@@ -99,6 +101,7 @@ const actions = {
99
101
  syncStudentAdmisi,
100
102
  checkClassAttendance,
101
103
  syncClassSessions,
104
+ setAksesModulSiswaDiClassGroup,
102
105
  getClassSessionConflicts,
103
106
  setTravelWageSessions,
104
107
  customSaveOneClassSession,
@@ -138,4 +141,4 @@ const actions = {
138
141
  syncStudents
139
142
  };
140
143
 
141
- export { acceptQuestion, actions, addManyGradingComponent, allConflict, calculateGrading, calculateManyComparator, calculateOneComparator, checkClassAttendance, classSessionInventoryOccurs, classSessionInventoryPreparation, clearAllOverrides, clearGrading, clearOneOverrides, createGradingAndScores, createManySession, customSaveOneClassSession, deleteManySession, editAnswer, generateGrading, getClassSessionConflicts, getGradingCount, getQuestionCount, getStaffId, getStaffPoint, getStudentId, getStudentPoint, getTeacherPoint, hasUnderstand, importData, notUnderstand, prepareConflict, prepareExperience, prepareMediaScanterGradingInsert, presenceSessionStudent, presenceSessionTeacher, rasionalizeGrading, refreshGrading, refreshManyGrading, refreshModuleAccess, reminderQuestions, replaceModuleAccess, sendAnswer, sendQuestion, setTravelWageSessions, syncClassGroups, syncClassSessions, syncCommitment, syncStudentAdmisi, syncStudentBranch, syncStudentInformation, syncStudentReport, syncStudents, updateGradingAndScores, updateMany, updateReportStudent, userCountStats };
144
+ export { acceptQuestion, actions, addManyGradingComponent, allConflict, calculateGrading, calculateManyComparator, calculateOneComparator, checkClassAttendance, classSessionInventoryOccurs, classSessionInventoryPreparation, clearAllOverrides, clearGrading, clearOneOverrides, createGradingAndScores, createManySession, customSaveOneClassSession, deleteManySession, editAnswer, generateGrading, getClassSessionConflicts, getGradingCount, getQuestionCount, getStaffId, getStaffPoint, getStudentId, getStudentPoint, getTeacherPoint, hasUnderstand, importData, notUnderstand, prepareConflict, prepareExperience, prepareMediaScanterGradingInsert, presenceSessionStudent, presenceSessionTeacher, rasionalizeGrading, refreshGrading, refreshManyGrading, refreshModuleAccess, reminderQuestions, replaceModuleAccess, sendAnswer, sendQuestion, setAksesModulSiswaDiClassGroup, setTravelWageSessions, syncClassGroups, syncClassSessions, syncCommitment, syncStudentAdmisi, syncStudentBranch, syncStudentInformation, syncStudentReport, syncStudents, updateGradingAndScores, updateMany, updateReportStudent, userCountStats };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neutron.co.id/pendidikan-operation",
3
- "version": "1.27.2",
3
+ "version": "1.27.3",
4
4
  "description": "Operation package of Neutron Pendidikan.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "contributors": [
@@ -41,7 +41,7 @@
41
41
  "@neon.id/z": "^1.16.0",
42
42
  "@neutron.co.id/akademik-models": "^1.21.2",
43
43
  "@neutron.co.id/jadwal-models": "^1.19.12",
44
- "@neutron.co.id/pendidikan-types": "^1.23.1-beta.1",
44
+ "@neutron.co.id/pendidikan-types": "^1.23.1",
45
45
  "@neutron.co.id/penilaian-models": "^1.17.8",
46
46
  "@neutron.co.id/personalia-models": "^1.11.6",
47
47
  "@neutron.co.id/tanya-models": "^1.13.4",
@@ -77,7 +77,7 @@
77
77
  "@neon.id/z": "^1.16.0",
78
78
  "@neutron.co.id/akademik-models": "^1.21.2",
79
79
  "@neutron.co.id/jadwal-models": "^1.19.12",
80
- "@neutron.co.id/pendidikan-types": "^1.23.1-beta.1",
80
+ "@neutron.co.id/pendidikan-types": "^1.23.1",
81
81
  "@neutron.co.id/penilaian-models": "^1.17.8",
82
82
  "@neutron.co.id/personalia-models": "^1.11.6",
83
83
  "@neutron.co.id/tanya-models": "^1.13.4",
@@ -86,5 +86,5 @@
86
86
  "publishConfig": {
87
87
  "access": "public"
88
88
  },
89
- "build": 127
89
+ "build": 128
90
90
  }