@ubkinfotech/tecaher-erp 0.1.0 → 0.1.2

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 (28) hide show
  1. package/README.md +143 -67
  2. package/lib/commonjs/core/api/endpoints.js +1 -1
  3. package/lib/commonjs/core/auth/authContext.js +1 -2
  4. package/lib/commonjs/core/provider/ERPProvider.js +1 -2
  5. package/lib/commonjs/modules/assignment/screens/AssignmentScreen.js +295 -80
  6. package/lib/commonjs/modules/assignment/services/assignmentService.js +2 -2
  7. package/lib/commonjs/modules/attendance/screens/AttendanceScreen.js +1 -2
  8. package/lib/commonjs/modules/leaveRequest/screens/LeaveRequestScreen.js +7 -7
  9. package/lib/commonjs/modules/leaveRequest/services/leaveRequestService.js +10 -2
  10. package/lib/commonjs/modules/marks/screens/MarksScreen.js +1 -2
  11. package/lib/commonjs/modules/myAttendance/screens/MyAttendanceScreen.js +1 -2
  12. package/lib/commonjs/modules/notes/screens/NotesScreen.js +410 -97
  13. package/lib/commonjs/modules/notes/services/notesService.js +10 -2
  14. package/lib/commonjs/modules/noticeboard/screens/NoticeBoardScreen.js +1 -2
  15. package/lib/commonjs/modules/notification/screens/NotificationScreen.js +1 -2
  16. package/lib/commonjs/modules/promoteStudent/screens/PromoteStudentScreen.js +1 -2
  17. package/lib/commonjs/modules/timetable/screens/TimeTableScreen.js +1 -2
  18. package/lib/module/core/api/endpoints.js +1 -1
  19. package/lib/module/modules/assignment/screens/AssignmentScreen.js +295 -79
  20. package/lib/module/modules/assignment/services/assignmentService.js +2 -2
  21. package/lib/module/modules/leaveRequest/screens/LeaveRequestScreen.js +6 -5
  22. package/lib/module/modules/leaveRequest/services/leaveRequestService.js +10 -2
  23. package/lib/module/modules/notes/screens/NotesScreen.js +410 -96
  24. package/lib/module/modules/notes/services/notesService.js +10 -2
  25. package/lib/typescript/modules/assignment/services/assignmentService.d.ts +1 -1
  26. package/lib/typescript/modules/leaveRequest/services/leaveRequestService.d.ts +1 -1
  27. package/lib/typescript/modules/notes/services/notesService.d.ts +1 -1
  28. package/package.json +3 -3
@@ -10,8 +10,7 @@ var _useERP = require("../../../core/provider/useERP");
10
10
  var _EmptyState = require("../../../shared/empty-states/EmptyState");
11
11
  var _leaveRequestService = require("../services/leaveRequestService");
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
14
  function normalizeLeaveItems(result) {
16
15
  if (Array.isArray(result)) {
17
16
  return result;
@@ -238,7 +237,8 @@ function ApplyLeaveView({
238
237
  onSuccess
239
238
  }) {
240
239
  const {
241
- api
240
+ api,
241
+ schoolCode
242
242
  } = (0, _useERP.useERP)();
243
243
  const Calendar = (0, _react.useMemo)(() => tryGetCalendar(), []);
244
244
  const [reason, setReason] = (0, _react.useState)('');
@@ -276,7 +276,7 @@ function ApplyLeaveView({
276
276
  setFileName(file.name);
277
277
  setBusy(true);
278
278
  try {
279
- const res = await (0, _leaveRequestService.uploadLeaveFile)(api, file);
279
+ const res = await (0, _leaveRequestService.uploadLeaveFile)(api, file, schoolCode);
280
280
  if (res?.Status === 'Success' && res?.data) {
281
281
  setFilePath(res.data);
282
282
  } else {
@@ -292,7 +292,7 @@ function ApplyLeaveView({
292
292
  setBusy(false);
293
293
  setUploadOpen(false);
294
294
  }
295
- }, [api]);
295
+ }, [api, schoolCode]);
296
296
  const pickCamera = (0, _react.useCallback)(async () => {
297
297
  let picker = null;
298
298
  try {
@@ -322,7 +322,7 @@ function ApplyLeaveView({
322
322
  setFileName(file.name);
323
323
  setBusy(true);
324
324
  try {
325
- const res = await (0, _leaveRequestService.uploadLeaveFile)(api, file);
325
+ const res = await (0, _leaveRequestService.uploadLeaveFile)(api, file, schoolCode);
326
326
  if (res?.Status === 'Success' && res?.data) {
327
327
  setFilePath(res.data);
328
328
  } else {
@@ -338,7 +338,7 @@ function ApplyLeaveView({
338
338
  setBusy(false);
339
339
  setUploadOpen(false);
340
340
  }
341
- }, [api]);
341
+ }, [api, schoolCode]);
342
342
  const submit = (0, _react.useCallback)(async () => {
343
343
  const missing = [];
344
344
  if (!reason) missing.push('reason');
@@ -8,6 +8,14 @@ exports.fetchLeaveRequests = fetchLeaveRequests;
8
8
  exports.fetchLeaveTypes = fetchLeaveTypes;
9
9
  exports.uploadLeaveFile = uploadLeaveFile;
10
10
  var _endpoints = require("../../../core/api/endpoints");
11
+ function buildUploadFilePath(relativePath, schoolCode) {
12
+ const normalized = String(relativePath).replace(/\\/g, '/').replace(/^\/+/, '');
13
+ if (!schoolCode) {
14
+ return normalized;
15
+ }
16
+ const withoutUploads = normalized.replace(/^uploads\//i, '');
17
+ return `school_${schoolCode}/${withoutUploads}`;
18
+ }
11
19
  async function fetchLeaveRequests(api, params) {
12
20
  const page = params.page ?? 1;
13
21
  const perPage = params.perPage ?? 10;
@@ -21,14 +29,14 @@ async function fetchLeaveTypes(api) {
21
29
  const res = await api.get(_endpoints.endpoints.leaveRequest.leaveTypes);
22
30
  return res.data;
23
31
  }
24
- async function uploadLeaveFile(api, file) {
32
+ async function uploadLeaveFile(api, file, schoolCode) {
25
33
  const formData = new FormData();
26
34
  formData.append('file', {
27
35
  uri: file.uri,
28
36
  name: file.name,
29
37
  type: file.type
30
38
  });
31
- formData.append('filepath', 'uploads/staff/leave/');
39
+ formData.append('filepath', buildUploadFilePath('uploads/staff/leave/', schoolCode));
32
40
  const res = await api.post(_endpoints.endpoints.assignment.uploadFile, formData, {
33
41
  headers: {
34
42
  'Content-Type': 'multipart/form-data'
@@ -11,8 +11,7 @@ var _EmptyState = require("../../../shared/empty-states/EmptyState");
11
11
  var _LoadingState = require("../../../shared/loaders/LoadingState");
12
12
  var _marksService = require("../services/marksService");
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
15
  const REMARK_OPTIONS = ['Good in studies. Needs to put in a little more effort in oral work.', 'Needs to work hard for better marks. Needs practice in both writing and oral work', 'Has shown considerable improvement b needs to pay more attention to conversation skills.', 'Needs systematic and regular follow up at home with regard to studies.', 'Can do better with some help at home. Oral work needs brushing up', 'promising child who needs to put in a little more effort', 'Has the potential to do very well but needs more focused attention.', 'Good in studies. Can be excellent with a little extra care.', 'Has shown good improvement. Has the potential to do even better.', 'Extra care can bring improvement in performance. All round improvement required.', 'Has not yet become familiar with the school atmosphere. No amount of coaxing can make him write.', 'Has performed below ability. Needs special care, time and encouragement to do better.', 'Has not yet become familiar with the school atmosphere. No amount of coaxing can make him write.', 'Needs to be more patient with written work. More practice in conversation is also required.', 'Has shown no improvement. Parents are requested to give special care at home.', 'Finishes the given work but is very talkative and disturbing in class.', 'Handwriting needs to improve. Proper guidance at home can bring good results.', 'Weak in studies. Does not respond in class. Needs to work much harder in order to get promotion.', 'An average child who can improve with a little more care and attention at home.', 'Inattentive in class. Does not follow class room instructions. Needs to pay attention to his studies.', 'Others'];
17
16
  function normalizeList(result) {
18
17
  if (Array.isArray(result)) {
@@ -11,8 +11,7 @@ var _ErrorState = require("../../../shared/empty-states/ErrorState");
11
11
  var _LoadingState = require("../../../shared/loaders/LoadingState");
12
12
  var _useMyAttendance = require("../hooks/useMyAttendance");
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
15
  function padMonth(value) {
17
16
  const asNumber = Number(value);
18
17
  if (Number.isFinite(asNumber)) {