@bjsdistribution/dms-client-return 0.1.92-prod → 0.1.93-prod

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.
@@ -1,6 +1,6 @@
1
- import { jsxs as F, Fragment as N, jsx as s } from "react/jsx-runtime";
2
- import { useState as E, useEffect as i } from "react";
3
- import { useApiHook as _, useAxios as j, AntModal as M, Checkbox as G } from "@bjsdistribution/dms-component-library";
1
+ import { jsxs as E, Fragment as F, jsx as a } from "react/jsx-runtime";
2
+ import { useState as M, useEffect as i } from "react";
3
+ import { useApiHook as _, useAxios as j, AntModal as w, Checkbox as G } from "@bjsdistribution/dms-component-library";
4
4
  import { useAtom as V } from "jotai";
5
5
  import { countReducerAtom as B, useDeleteProdsID as W, usefetchAgain as $ } from "../store.js";
6
6
  import z from "./DefectsModal.js";
@@ -8,67 +8,75 @@ import K from "./CreateReturnModal.js";
8
8
  import { useFinalPayload as U, usePostLoading as q, useSelectedOrders as J, useSelectedConfirmLoc as Q, useNewReturnPayload as X, useGroupedPayload as Y, useSelectAll as Z, useSendEmailNotification as ee } from "../../store.js";
9
9
  import { notification as x } from "antd";
10
10
  import { useNavigate as te } from "react-router-dom";
11
- const pe = () => {
12
- const [r, a] = V(B), [u, d] = E(!1), [p] = W(), [, R] = E(!1), [m] = U(), [f, g] = q(), [, h] = J(), [w, S] = Q(), [, y] = X(), [, L] = Y(), [, P] = Z(), [, k] = $(), [
11
+ const me = () => {
12
+ const [s, r] = V(B), [p, d] = M(!1), [m] = W(), [, R] = M(!1), [f] = U(), [g, h] = q(), [, y] = J(), [L, S] = Q(), [, P] = X(), [, k] = Y(), [, b] = Z(), [, D] = $(), [
13
13
  l,
14
14
  n
15
- ] = ee(), b = te(), A = () => {
16
- a({ type: "close" }), n(!0);
17
- }, D = () => p?.length > 0;
15
+ ] = ee(), A = te(), v = () => {
16
+ r({ type: "close" }), n(!0);
17
+ }, H = () => m?.length > 0;
18
18
  i(() => {
19
- R(D());
20
- }, [p]);
19
+ R(H());
20
+ }, [m]);
21
21
  const {
22
22
  data: e,
23
23
  setShouldPerformAction: c,
24
24
  loading: t,
25
- error: C,
26
- setError: v
25
+ error: N,
26
+ setError: C
27
27
  } = _({
28
28
  endpoint: "/v1/return/create/",
29
29
  method: "POST",
30
- body: m,
30
+ body: f,
31
31
  performAction: !1
32
32
  });
33
33
  i(() => {
34
- g(t);
34
+ h(t);
35
35
  }, [t]);
36
- const H = () => {
37
- m?.length > 0 && (c(!0), k(!0), g(t)), a({ type: "close" });
38
- }, { fetchData: T } = j({
36
+ const T = () => {
37
+ f?.length > 0 && (c(!0), D(!0), h(t)), r({ type: "close" });
38
+ }, { fetchData: I } = j({
39
39
  endpoint: "/v1/return/create-csv-and-send-email/",
40
40
  method: "POST"
41
41
  });
42
42
  return i(() => {
43
43
  t && d(!0);
44
44
  }, [t]), i(() => {
45
- if (u && !(t || f)) {
46
- if (C || e && (e?.code == 500 || e?.code == 400)) {
45
+ if (p && !(t || g)) {
46
+ if (N || e && (e?.code == 500 || e?.code == 400)) {
47
47
  d(!1);
48
- const o = C?.message || e?.message || "Failed to create return";
48
+ const o = N?.message || e?.message || "Failed to create return";
49
49
  x.error({
50
50
  message: "Failure",
51
51
  description: o
52
- }), a({ type: "close" }), n(!0), h([]), S([]), y([]), L([]), P(!1), c(!1), v(null);
52
+ }), r({ type: "close" }), n(!0), y([]), S([]), P([]), k([]), b(!1), c(!1), C(null);
53
53
  } else if (e?.code === 201 || e?.code === 200) {
54
54
  d(!1), x.success({
55
55
  message: "Success",
56
56
  // @ts-ignore
57
57
  description: `${e?.message}`
58
- }), a({ type: "close" });
59
- const o = e?.data?.[0]?.order_id, I = {
58
+ }), r({ type: "close" });
59
+ const o = e?.data?.[0]?.order_id, O = {
60
60
  // order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],
61
- gsit_order_ids: e?.data ? e.data.map((O) => O?.order_id ?? 0) : []
61
+ gsit_order_ids: e?.data ? e.data.map((u) => u?.order_id ?? 0) : []
62
62
  };
63
- l && T({ payload: I }), b(o ? `/orders/view/return/?order=${o}` : "/orders/view/return/overview"), n(!0), h([]), S([]), y([]), c(!1), P(!1), v(null);
63
+ (async () => {
64
+ if (l)
65
+ try {
66
+ await I({ payload: O });
67
+ } catch (u) {
68
+ console.error("Failed to send email notification:", u);
69
+ }
70
+ A(o ? `/orders/view/return/?order=${o}` : "/orders/view/return/overview"), n(!0), y([]), S([]), P([]), c(!1), b(!1), C(null);
71
+ })();
64
72
  }
65
73
  }
66
- }, [f, t, u, e]), /* @__PURE__ */ F(N, { children: [
67
- r?.state === "create-return" && /* @__PURE__ */ s(N, { children: /* @__PURE__ */ s(
68
- M,
74
+ }, [g, t, p, e]), /* @__PURE__ */ E(F, { children: [
75
+ s?.state === "create-return" && /* @__PURE__ */ a(F, { children: /* @__PURE__ */ a(
76
+ w,
69
77
  {
70
- openStatus: r?.state == "create-return",
71
- closeModal: () => A(),
78
+ openStatus: s?.state == "create-return",
79
+ closeModal: () => v(),
72
80
  PopupHeader: {
73
81
  heading: "CONFIRM RETURN",
74
82
  subHeading: ""
@@ -76,7 +84,7 @@ const pe = () => {
76
84
  PopupFooter: {
77
85
  btns: [
78
86
  {
79
- name: /* @__PURE__ */ F(
87
+ name: /* @__PURE__ */ E(
80
88
  "div",
81
89
  {
82
90
  style: {
@@ -87,14 +95,14 @@ const pe = () => {
87
95
  },
88
96
  onClick: (o) => o.stopPropagation(),
89
97
  children: [
90
- /* @__PURE__ */ s(
98
+ /* @__PURE__ */ a(
91
99
  G,
92
100
  {
93
101
  checked: l,
94
102
  onChange: () => n(!l)
95
103
  }
96
104
  ),
97
- /* @__PURE__ */ s(
105
+ /* @__PURE__ */ a(
98
106
  "span",
99
107
  {
100
108
  style: {
@@ -116,9 +124,9 @@ const pe = () => {
116
124
  {
117
125
  name: "Submit",
118
126
  btnStyle: "rounded",
119
- onClick: H,
127
+ onClick: T,
120
128
  type: "button",
121
- disabled: w.length === 0
129
+ disabled: L.length === 0
122
130
  }
123
131
  ],
124
132
  btnAlign: "justifyEnd"
@@ -128,11 +136,11 @@ const pe = () => {
128
136
  classNameAdd: "globalPopup"
129
137
  }
130
138
  ) }),
131
- r?.state == "defectsModal" && /* @__PURE__ */ s(
132
- M,
139
+ s?.state == "defectsModal" && /* @__PURE__ */ a(
140
+ w,
133
141
  {
134
- openStatus: r?.state == "defectsModal",
135
- closeModal: A,
142
+ openStatus: s?.state == "defectsModal",
143
+ closeModal: v,
136
144
  PopupHeader: {
137
145
  heading: "DEliver - DWLK1006 - 00605",
138
146
  subHeading: "ALtair TV stand for TVs up to 60"
@@ -155,6 +163,6 @@ const pe = () => {
155
163
  ] });
156
164
  };
157
165
  export {
158
- pe as default
166
+ me as default
159
167
  };
160
168
  //# sourceMappingURL=ModalManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalManager.js","sources":["../../../../src/components/order-view/modalsPopup/ModalManager.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n AntModal,\n useApiHook,\n useAxios,\n Checkbox,\n} from '@bjsdistribution/dms-component-library';\nimport { useAtom } from 'jotai';\nimport { countReducerAtom, useDeleteProdsID, usefetchAgain } from '../store';\n\nimport DefectsModal from './DefectsModal';\nimport { ApiResponse } from '../types';\nimport CreateReturnModal from './CreateReturnModal';\nimport {\n useFinalPayload,\n useGroupedPayload,\n useNewReturnPayload,\n usePostLoading,\n useSelectAll,\n useSelectedConfirmLoc,\n useSelectedOrders,\n useSendEmailNotification,\n} from '../../store';\nimport { notification } from 'antd';\nimport { useNavigate } from 'react-router-dom';\n\nconst ModalManager = () => {\n const [popupName, dispatch] = useAtom(countReducerAtom);\n const [hasStartedLoading, setHasStartedLoading] = useState(false);\n const [selectedRows] = useDeleteProdsID();\n const [, setIsFormValid] = useState(false);\n const [newGrouped] = useFinalPayload();\n const [postLoading, SetPostLoading] = usePostLoading();\n const [, setSelectedReturnOrder] = useSelectedOrders();\n const [forDisabledCheck, setCheck] = useSelectedConfirmLoc();\n const [, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [, setSelectAll] = useSelectAll();\n const [, setCallForFetch] = usefetchAgain();\n const [\n sendEmailNotification,\n setSendEmailNotification,\n ] = useSendEmailNotification();\n const navigate = useNavigate();\n\n const closeModal = () => {\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n };\n\n const validateForm = () => {\n return selectedRows?.length > 0;\n };\n\n useEffect(() => {\n setIsFormValid(validateForm());\n }, [selectedRows]);\n\n // Confirm return popup\n const {\n data: response,\n setShouldPerformAction,\n loading: confirmLoading,\n error: apiError,\n setError,\n } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/return/create/`,\n method: 'POST',\n body: newGrouped,\n performAction: false,\n });\n\n useEffect(() => {\n SetPostLoading(confirmLoading);\n }, [confirmLoading]);\n\n const handleConfirmReturn = () => {\n if (newGrouped?.length > 0) {\n setShouldPerformAction(true);\n setCallForFetch(true);\n SetPostLoading(confirmLoading);\n }\n dispatch({ type: 'close' });\n };\n\n const { fetchData: callSendEmail } = useAxios({\n endpoint: '/v1/return/create-csv-and-send-email/',\n method: 'POST',\n });\n\n useEffect(() => {\n if (confirmLoading) {\n setHasStartedLoading(true);\n }\n }, [confirmLoading]);\n\n useEffect(() => {\n if (!hasStartedLoading) return;\n if (confirmLoading || postLoading) return;\n\n // @ts-ignore\n if (apiError || (response && (response?.code == 500 || response?.code == 400))) {\n setHasStartedLoading(false);\n\n // @ts-ignore\n const errorMessage = apiError?.message || response?.message || 'Failed to create return';\n notification.error({\n message: 'Failure',\n description: errorMessage,\n });\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setGrouped([]);\n setSelectAll(false);\n setShouldPerformAction(false);\n setError(null);\n // @ts-ignore\n } else if (response?.code === 201 || response?.code === 200) {\n setHasStartedLoading(false);\n notification.success({\n message: 'Success',\n // @ts-ignore\n description: `${response?.message}`,\n });\n dispatch({ type: 'close' });\n //@ts-ignore\n const orderIdsString = response?.data?.[0]?.order_id;\n\n const emailApiPayload = {\n // order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],\n gsit_order_ids: response?.data\n ? response.data.map((item: any) => item?.order_id ?? 0)\n : [],\n };\n\n // send to API\n if (sendEmailNotification) {\n callSendEmail({ payload: emailApiPayload });\n }\n if (orderIdsString) {\n navigate(`/orders/view/return/?order=${orderIdsString}`);\n } else {\n navigate('/orders/view/return/overview');\n }\n\n // Reset email notification state back to true\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setShouldPerformAction(false);\n setSelectAll(false);\n setError(null);\n\n // for local\n // navigate('/overview');\n\n // for dev\n //navigate('/orders/view/return/overview');\n }\n }, [postLoading, confirmLoading, hasStartedLoading, response]);\n\n return (\n <>\n {popupName?.state === 'create-return' && (\n <>\n <AntModal\n openStatus={popupName?.state == 'create-return' ? true : false}\n closeModal={() => closeModal()}\n PopupHeader={{\n heading: 'CONFIRM RETURN',\n subHeading: '',\n }}\n PopupFooter={{\n btns: [\n {\n name: (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n marginRight: '16px',\n gap: '8px',\n }}\n onClick={e => e.stopPropagation()}\n >\n <Checkbox\n checked={sendEmailNotification}\n onChange={() =>\n setSendEmailNotification(!sendEmailNotification)\n }\n />\n <span\n style={{\n color: '#8d8f90',\n fontFamily: 'Poppins',\n fontSize: '14px',\n fontWeight: 400,\n textTransform: 'none',\n }}\n >\n Send Email Notification\n </span>\n </div>\n ),\n btnStyle: '',\n type: 'button',\n },\n {\n name: 'Submit',\n btnStyle: 'rounded',\n onClick: handleConfirmReturn,\n type: 'button',\n disabled: forDisabledCheck.length === 0,\n },\n ],\n\n btnAlign: 'justifyEnd',\n }}\n BodyComponent={CreateReturnModal}\n width={800}\n classNameAdd={'globalPopup'}\n />\n </>\n )}\n\n {popupName?.state == 'defectsModal' && (\n <AntModal\n openStatus={popupName?.state == 'defectsModal' ? true : false}\n closeModal={closeModal}\n PopupHeader={{\n heading: 'DEliver - DWLK1006 - 00605',\n subHeading: 'ALtair TV stand for TVs up to 60',\n }}\n PopupFooter={{\n btns: [\n {\n name: '',\n btnStyle: '',\n type: '',\n },\n ],\n btnAlign: '',\n }}\n BodyComponent={DefectsModal}\n width={1504}\n classNameAdd={'globalPopup'}\n />\n )}\n </>\n );\n};\n\nexport default ModalManager;\n\n\n\n"],"names":["ModalManager","popupName","dispatch","useAtom","countReducerAtom","hasStartedLoading","setHasStartedLoading","useState","selectedRows","useDeleteProdsID","setIsFormValid","newGrouped","useFinalPayload","postLoading","SetPostLoading","usePostLoading","setSelectedReturnOrder","useSelectedOrders","forDisabledCheck","setCheck","useSelectedConfirmLoc","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","setSelectAll","useSelectAll","setCallForFetch","usefetchAgain","sendEmailNotification","setSendEmailNotification","useSendEmailNotification","navigate","useNavigate","closeModal","validateForm","useEffect","response","setShouldPerformAction","confirmLoading","apiError","setError","useApiHook","handleConfirmReturn","callSendEmail","useAxios","errorMessage","notification","orderIdsString","emailApiPayload","item","jsxs","Fragment","jsx","AntModal","e","Checkbox","CreateReturnModal","DefectsModal"],"mappings":"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"}
1
+ {"version":3,"file":"ModalManager.js","sources":["../../../../src/components/order-view/modalsPopup/ModalManager.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n AntModal,\n useApiHook,\n useAxios,\n Checkbox,\n} from '@bjsdistribution/dms-component-library';\nimport { useAtom } from 'jotai';\nimport { countReducerAtom, useDeleteProdsID, usefetchAgain } from '../store';\n\nimport DefectsModal from './DefectsModal';\nimport { ApiResponse } from '../types';\nimport CreateReturnModal from './CreateReturnModal';\nimport {\n useFinalPayload,\n useGroupedPayload,\n useNewReturnPayload,\n usePostLoading,\n useSelectAll,\n useSelectedConfirmLoc,\n useSelectedOrders,\n useSendEmailNotification,\n} from '../../store';\nimport { notification } from 'antd';\nimport { useNavigate } from 'react-router-dom';\n\nconst ModalManager = () => {\n const [popupName, dispatch] = useAtom(countReducerAtom);\n const [hasStartedLoading, setHasStartedLoading] = useState(false);\n const [selectedRows] = useDeleteProdsID();\n const [, setIsFormValid] = useState(false);\n const [newGrouped] = useFinalPayload();\n const [postLoading, SetPostLoading] = usePostLoading();\n const [, setSelectedReturnOrder] = useSelectedOrders();\n const [forDisabledCheck, setCheck] = useSelectedConfirmLoc();\n const [, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [, setSelectAll] = useSelectAll();\n const [, setCallForFetch] = usefetchAgain();\n const [\n sendEmailNotification,\n setSendEmailNotification,\n ] = useSendEmailNotification();\n const navigate = useNavigate();\n\n const closeModal = () => {\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n };\n\n const validateForm = () => {\n return selectedRows?.length > 0;\n };\n\n useEffect(() => {\n setIsFormValid(validateForm());\n }, [selectedRows]);\n\n // Confirm return popup\n const {\n data: response,\n setShouldPerformAction,\n loading: confirmLoading,\n error: apiError,\n setError,\n } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/return/create/`,\n method: 'POST',\n body: newGrouped,\n performAction: false,\n });\n\n useEffect(() => {\n SetPostLoading(confirmLoading);\n }, [confirmLoading]);\n\n const handleConfirmReturn = () => {\n if (newGrouped?.length > 0) {\n setShouldPerformAction(true);\n setCallForFetch(true);\n SetPostLoading(confirmLoading);\n }\n dispatch({ type: 'close' });\n };\n\n const { fetchData: callSendEmail } = useAxios({\n endpoint: '/v1/return/create-csv-and-send-email/',\n method: 'POST',\n });\n\n useEffect(() => {\n if (confirmLoading) {\n setHasStartedLoading(true);\n }\n }, [confirmLoading]);\n\n useEffect(() => {\n if (!hasStartedLoading) return;\n if (confirmLoading || postLoading) return;\n\n // @ts-ignore\n if (apiError || (response && (response?.code == 500 || response?.code == 400))) {\n setHasStartedLoading(false);\n\n // @ts-ignore\n const errorMessage = apiError?.message || response?.message || 'Failed to create return';\n notification.error({\n message: 'Failure',\n description: errorMessage,\n });\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setGrouped([]);\n setSelectAll(false);\n setShouldPerformAction(false);\n setError(null);\n // @ts-ignore\n } else if (response?.code === 201 || response?.code === 200) {\n setHasStartedLoading(false);\n notification.success({\n message: 'Success',\n // @ts-ignore\n description: `${response?.message}`,\n });\n dispatch({ type: 'close' });\n //@ts-ignore\n const orderIdsString = response?.data?.[0]?.order_id;\n\n const emailApiPayload = {\n // order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],\n gsit_order_ids: response?.data\n ? response.data.map((item: any) => item?.order_id ?? 0)\n : [],\n };\n\n const handleEmailAndNavigate = async () => {\n // send to API\n if (sendEmailNotification) {\n try {\n await callSendEmail({ payload: emailApiPayload });\n } catch (error) {\n console.error('Failed to send email notification:', error);\n }\n }\n if (orderIdsString) {\n navigate(`/orders/view/return/?order=${orderIdsString}`);\n } else {\n navigate('/orders/view/return/overview');\n }\n\n // Reset email notification state back to true\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setShouldPerformAction(false);\n setSelectAll(false);\n setError(null);\n };\n\n handleEmailAndNavigate();\n }\n }, [postLoading, confirmLoading, hasStartedLoading, response]);\n\n return (\n <>\n {popupName?.state === 'create-return' && (\n <>\n <AntModal\n openStatus={popupName?.state == 'create-return' ? true : false}\n closeModal={() => closeModal()}\n PopupHeader={{\n heading: 'CONFIRM RETURN',\n subHeading: '',\n }}\n PopupFooter={{\n btns: [\n {\n name: (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n marginRight: '16px',\n gap: '8px',\n }}\n onClick={e => e.stopPropagation()}\n >\n <Checkbox\n checked={sendEmailNotification}\n onChange={() =>\n setSendEmailNotification(!sendEmailNotification)\n }\n />\n <span\n style={{\n color: '#8d8f90',\n fontFamily: 'Poppins',\n fontSize: '14px',\n fontWeight: 400,\n textTransform: 'none',\n }}\n >\n Send Email Notification\n </span>\n </div>\n ),\n btnStyle: '',\n type: 'button',\n },\n {\n name: 'Submit',\n btnStyle: 'rounded',\n onClick: handleConfirmReturn,\n type: 'button',\n disabled: forDisabledCheck.length === 0,\n },\n ],\n\n btnAlign: 'justifyEnd',\n }}\n BodyComponent={CreateReturnModal}\n width={800}\n classNameAdd={'globalPopup'}\n />\n </>\n )}\n\n {popupName?.state == 'defectsModal' && (\n <AntModal\n openStatus={popupName?.state == 'defectsModal' ? true : false}\n closeModal={closeModal}\n PopupHeader={{\n heading: 'DEliver - DWLK1006 - 00605',\n subHeading: 'ALtair TV stand for TVs up to 60',\n }}\n PopupFooter={{\n btns: [\n {\n name: '',\n btnStyle: '',\n type: '',\n },\n ],\n btnAlign: '',\n }}\n BodyComponent={DefectsModal}\n width={1504}\n classNameAdd={'globalPopup'}\n />\n )}\n </>\n );\n};\n\nexport default ModalManager;\n\n\n\n"],"names":["ModalManager","popupName","dispatch","useAtom","countReducerAtom","hasStartedLoading","setHasStartedLoading","useState","selectedRows","useDeleteProdsID","setIsFormValid","newGrouped","useFinalPayload","postLoading","SetPostLoading","usePostLoading","setSelectedReturnOrder","useSelectedOrders","forDisabledCheck","setCheck","useSelectedConfirmLoc","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","setSelectAll","useSelectAll","setCallForFetch","usefetchAgain","sendEmailNotification","setSendEmailNotification","useSendEmailNotification","navigate","useNavigate","closeModal","validateForm","useEffect","response","setShouldPerformAction","confirmLoading","apiError","setError","useApiHook","handleConfirmReturn","callSendEmail","useAxios","errorMessage","notification","orderIdsString","emailApiPayload","item","error","jsxs","Fragment","jsx","AntModal","e","Checkbox","CreateReturnModal","DefectsModal"],"mappings":"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"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.92-prod",
2
+ "version": " 0.1.93-prod",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.js",