@m4l/core 0.1.39 → 0.1.40

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.
@@ -0,0 +1,62 @@
1
+ import { useState as s, useRef as T, useCallback as b, useEffect as f } from "react";
2
+ import { u as q } from "../useHostTools/index.66d9a667.js";
3
+ import { u as x } from "../useNetwork/index.acbf28d5.js";
4
+ const a = {
5
+ page: 0,
6
+ rowsPerPage: 25,
7
+ totalRecords: 0
8
+ }, v = (m) => {
9
+ const {
10
+ endPoint: l,
11
+ timeout: h = 5e3,
12
+ queryParams: g,
13
+ fireOnChangeParms: P,
14
+ rowsPerPage: c = a.rowsPerPage,
15
+ startProgress: w,
16
+ stopProgress: R
17
+ } = m, [u, o] = s(P ? 1 : 0), [S, i] = s([]), [d, n] = s({ ...a, rowsPerPage: c }), t = T({ ...a, rowsPerPage: c }), [C, k] = s(!0), { startProgress: y, stopProgress: E } = q(), { networkOperation: O } = x(), p = b(() => {
18
+ o((r) => r + 1);
19
+ }, []);
20
+ return f(() => {
21
+ if (C) {
22
+ k(!1);
23
+ return;
24
+ }
25
+ P && p();
26
+ }, [g]), f(() => {
27
+ let r = !0;
28
+ if (u !== 0)
29
+ return O({
30
+ method: "GET",
31
+ endPoint: l,
32
+ timeout: h,
33
+ parms: {
34
+ ...g,
35
+ page: t.current.page,
36
+ limit: t.current.rowsPerPage
37
+ },
38
+ options: {
39
+ startProgress: w || y,
40
+ stopProgress: R || E
41
+ }
42
+ }).then((e) => {
43
+ r && (i(e.data), t.current.page = e.pager.page, n((Q) => ({
44
+ ...Q,
45
+ page: e.pager.page,
46
+ totalRecords: e.pager.total
47
+ })));
48
+ }), function() {
49
+ r = !1;
50
+ };
51
+ }, [u]), { onPageChange: (r) => {
52
+ t.current.page = r, o((e) => e + 1);
53
+ }, onRowsPerPageChange: (r) => {
54
+ t.current.rowsPerPage = r, n((e) => ({ ...e, rowsPerPage: r })), o((e) => e + 1);
55
+ }, pagerState: d, rows: S, clearRows: () => {
56
+ i([]), n(a);
57
+ }, Refresh: p };
58
+ };
59
+ export {
60
+ a as i,
61
+ v as u
62
+ };
@@ -1,10 +1,11 @@
1
+ import { AxiosOptions } from '../../utils/axiosOperation/types';
1
2
  export declare interface PagerState {
2
3
  page: number;
3
4
  rowsPerPage: number;
4
5
  totalRecords: number;
5
6
  }
6
7
  export declare const initialPagerState: PagerState;
7
- export interface UsePaginateProps {
8
+ export interface UsePaginateProps extends AxiosOptions {
8
9
  endPoint: string;
9
10
  timeout?: number;
10
11
  fireOnChangeParms?: boolean;
package/index.js CHANGED
@@ -19,11 +19,11 @@ import { u as Z } from "./hooks/useModuleDictionary/index.93177cf8.js";
19
19
  import { u as $ } from "./hooks/useModulePrivileges/index.4b22874b.js";
20
20
  import { u as eo } from "./hooks/useModuleSkeleton/index.0429108c.js";
21
21
  import { u as ao } from "./hooks/useNetwork/index.acbf28d5.js";
22
- import { i as so, u as io } from "./hooks/usePaginate/index.7cb17527.js";
22
+ import { i as so, u as io } from "./hooks/usePaginate/index.d4437ef6.js";
23
23
  import { u as mo } from "./hooks/usePropageteMF/index.c440b829.js";
24
24
  import { C as xo, E as po } from "./types/index.42c24946.js";
25
25
  import { a as fo, g as go, s as vo, v as Po } from "./utils/index.8c4b528d.js";
26
- import { a as Mo } from "./utils/axiosOperation.5a823aca.js";
26
+ import { a as Mo } from "./utils/axiosOperation.e428c3b5.js";
27
27
  import "react/jsx-runtime";
28
28
  import "axios";
29
29
  import "qs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@m4l/core",
3
- "version": "0.1.39",
3
+ "version": "0.1.40",
4
4
  "license": "UNLICENSED",
5
5
  "author": "M4L Team",
6
6
  "peerDependencies": {
package/types/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import type { Id, ToastContent, ToastOptions } from 'react-toastify';
2
2
  import type { BrowserHistory } from 'history';
3
3
  import { ResponseType } from 'axios';
4
4
  import { DomainCountry } from '../contexts';
5
+ import { AxiosOptions } from '../utils/axiosOperation/types';
5
6
  export declare type Maybe<T> = T | undefined | null;
6
7
  export declare interface EnvironmentType {
7
8
  isLocalhost: boolean;
@@ -27,6 +28,7 @@ export declare type NetworkProps = {
27
28
  isExternalUrl?: boolean;
28
29
  responseType?: ResponseType;
29
30
  signal?: AbortSignal;
31
+ options?: AxiosOptions;
30
32
  };
31
33
  export declare type ToastFunction = (content: ToastContent, options?: ToastOptions) => Id;
32
34
  export declare enum EmmitEvents {
@@ -1,3 +1,7 @@
1
+ export declare type AxiosOptions = {
2
+ startProgress?: VoidFunction;
3
+ stopProgress?: VoidFunction;
4
+ };
1
5
  export declare type AxiosOperationError = {
2
6
  message: string;
3
7
  status: number;
@@ -1,7 +1,7 @@
1
- import y from "axios";
2
- import R from "qs";
3
- import { E as j } from "../types/index.42c24946.js";
4
- function v(e, s, a, i, o) {
1
+ import $ from "axios";
2
+ import y from "qs";
3
+ import { E as R } from "../types/index.42c24946.js";
4
+ function j(e, s, a, i, o) {
5
5
  const { toast: t } = a;
6
6
  return i === "json" ? s && s.data && typeof s.data == "object" ? s.data.error && s.data.error?.code && s.data.error?.msg !== void 0 ? Promise.reject({ ...s.data.error, status: s.status }) : (s.data.messagen && o && t(s.data.message, { type: "success", autoClose: 1e4 }), s.data) : Promise.reject({
7
7
  code: 1,
@@ -9,54 +9,54 @@ function v(e, s, a, i, o) {
9
9
  status: s.status
10
10
  }) : s.data;
11
11
  }
12
- function P(e, s, a = !0, i = !0) {
12
+ function v(e, s, a = !0, i = !0) {
13
13
  const { toast: o } = s;
14
14
  let t = {
15
15
  message: "",
16
16
  status: 1,
17
17
  code: 0
18
18
  };
19
- return e?.code !== void 0 && t.status !== void 0 && e.message !== void 0 && (t = { ...t, ...e }), e?.response ? e.response.data && typeof e.response.data == "object" && e.response.data.error && e.response.data.error?.code && e.response.data.error?.message !== void 0 ? t = { ...e.response.data.error, status: e.response.status } : (t.message = e.message, t.status = e.response.status, t.code = 0) : e?.request ? (t.message = `${e?.code} ${e.message}`, t.code = -1) : (t.message = `${e?.code} ${e.message}`, t.status = 0, t.code = -2), a && e?.response?.status === 401 && s.events_emit(j.EMMIT_EVENT_NET_SERVICE_UNAUTHORIZED, {}), e?.response?.data?.error?.message && (t.message = e?.response?.data?.error.message), a && (t.message.indexOf("ERR_CANCELED") > -1 || i && o(`${t.message} - status: ${t.status} - code: ${t.code}`, {
19
+ return e?.code !== void 0 && t.status !== void 0 && e.message !== void 0 && (t = { ...t, ...e }), e?.response ? e.response.data && typeof e.response.data == "object" && e.response.data.error && e.response.data.error?.code && e.response.data.error?.message !== void 0 ? t = { ...e.response.data.error, status: e.response.status } : (t.message = e.message, t.status = e.response.status, t.code = 0) : e?.request ? (t.message = `${e?.code} ${e.message}`, t.code = -1) : (t.message = `${e?.code} ${e.message}`, t.status = 0, t.code = -2), a && e?.response?.status === 401 && s.events_emit(R.EMMIT_EVENT_NET_SERVICE_UNAUTHORIZED, {}), e?.response?.data?.error?.message && (t.message = e?.response?.data?.error.message), a && (t.message.indexOf("ERR_CANCELED") > -1 || i && o(`${t.message} - status: ${t.status} - code: ${t.code}`, {
20
20
  type: "error"
21
21
  })), t;
22
22
  }
23
- const b = async (e, s, a) => {
23
+ const U = async (e, s, a) => {
24
24
  const {
25
25
  method: i,
26
26
  endPoint: o,
27
27
  timeout: t = 6e4,
28
28
  parms: c = {},
29
29
  data: g = {},
30
- isRemote: n = !0,
30
+ isRemote: r = !0,
31
31
  checkUnAuthorized: f = !0,
32
- headers: p,
33
- onDownloadProgress: E,
32
+ headers: l,
33
+ onDownloadProgress: p,
34
34
  isExternalUrl: u,
35
35
  responseType: m = "json",
36
- signal: l,
36
+ signal: E,
37
37
  toastSuccess: _ = !0,
38
- toastError: $ = !0
38
+ toastError: P = !0
39
39
  } = e;
40
40
  let d;
41
- return n ? d = s.host_api_remote : d = s.host_api_local, a.startProgress(), y({
41
+ return r ? d = s.host_api_remote : d = s.host_api_local, e?.options?.startProgress && e?.options?.startProgress(), $({
42
42
  baseURL: u ? void 0 : d,
43
- withCredentials: n,
43
+ withCredentials: r,
44
44
  method: i,
45
45
  url: u ? o : `/${o}`,
46
46
  data: g,
47
47
  params: {},
48
- paramsSerializer: () => R.stringify(c, { encode: !0 }),
49
- headers: p,
48
+ paramsSerializer: () => y.stringify(c, { encode: !0 }),
49
+ headers: l,
50
50
  timeout: t,
51
- onDownloadProgress: E,
51
+ onDownloadProgress: p,
52
52
  responseType: m,
53
- signal: l
54
- }).then((r) => v(o, r, a, m, _)).catch(
55
- (r) => Promise.reject(P(r, a, f, $))
53
+ signal: E
54
+ }).then((n) => j(o, n, a, m, _)).catch(
55
+ (n) => Promise.reject(v(n, a, f, P))
56
56
  ).finally(() => {
57
- a.stopProgress();
57
+ e?.options?.stopProgress && e?.options?.stopProgress();
58
58
  });
59
59
  };
60
60
  export {
61
- b as a
61
+ U as a
62
62
  };
@@ -1,58 +0,0 @@
1
- import { useState as a, useRef as O, useCallback as Q, useEffect as l } from "react";
2
- import { u as T } from "../useHostTools/index.66d9a667.js";
3
- import { u as b } from "../useNetwork/index.acbf28d5.js";
4
- const s = {
5
- page: 0,
6
- rowsPerPage: 25,
7
- totalRecords: 0
8
- }, U = (m) => {
9
- const {
10
- endPoint: w,
11
- timeout: h = 5e3,
12
- queryParams: g,
13
- fireOnChangeParms: c,
14
- rowsPerPage: u = s.rowsPerPage
15
- } = m, [P, o] = a(c ? 1 : 0), [R, i] = a([]), [d, n] = a({ ...s, rowsPerPage: u }), t = O({ ...s, rowsPerPage: u }), [C, S] = a(!0), { startProgress: y, stopProgress: f } = T(), { networkOperation: k } = b(), p = Q(() => {
16
- o((r) => r + 1);
17
- }, []);
18
- return l(() => {
19
- if (C) {
20
- S(!1);
21
- return;
22
- }
23
- c && p();
24
- }, [g]), l(() => {
25
- let r = !0;
26
- if (P !== 0)
27
- return y(), k({
28
- method: "GET",
29
- endPoint: w,
30
- timeout: h,
31
- parms: {
32
- ...g,
33
- page: t.current.page,
34
- limit: t.current.rowsPerPage
35
- }
36
- }).then((e) => {
37
- r && (i(e.data), t.current.page = e.pager.page, n((E) => ({
38
- ...E,
39
- page: e.pager.page,
40
- totalRecords: e.pager.total
41
- })));
42
- }).finally(() => {
43
- r && f();
44
- }), function() {
45
- f(), r = !1;
46
- };
47
- }, [P]), { onPageChange: (r) => {
48
- t.current.page = r, o((e) => e + 1);
49
- }, onRowsPerPageChange: (r) => {
50
- t.current.rowsPerPage = r, n((e) => ({ ...e, rowsPerPage: r })), o((e) => e + 1);
51
- }, pagerState: d, rows: R, clearRows: () => {
52
- i([]), n(s);
53
- }, Refresh: p };
54
- };
55
- export {
56
- s as i,
57
- U as u
58
- };