@bigbinary/neeto-payments-frontend 1.5.0-beta1 → 1.6.0-beta2
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.
- package/README.md +4 -95
- package/app/javascript/src/translations/en.json +0 -15
- package/dist/AccountsDashboard.js +477 -0
- package/dist/AccountsDashboard.js.map +1 -0
- package/dist/Dashboard.js +598 -0
- package/dist/Dashboard.js.map +1 -0
- package/dist/ExportModal-85725c35.js +645 -0
- package/dist/ExportModal-85725c35.js.map +1 -0
- package/dist/IdentifierButton-73cadb18.js +20 -0
- package/dist/IdentifierButton-73cadb18.js.map +1 -0
- package/dist/PaymentKindRestrictionAlert.js +34 -0
- package/dist/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/PayoutsDashboard.js +503 -0
- package/dist/PayoutsDashboard.js.map +1 -0
- package/dist/PayoutsPage.js +185 -0
- package/dist/PayoutsPage.js.map +1 -0
- package/dist/RazorpayDashboard.js +251 -0
- package/dist/RazorpayDashboard.js.map +1 -0
- package/dist/RazorpayPaymentButton.js +111 -0
- package/dist/RazorpayPaymentButton.js.map +1 -0
- package/dist/StripeConnect.js +2071 -0
- package/dist/StripeConnect.js.map +1 -0
- package/dist/U2TDTBMY-c464dc98.js +12081 -0
- package/dist/U2TDTBMY-c464dc98.js.map +1 -0
- package/dist/UpiConnect.js +148 -0
- package/dist/UpiConnect.js.map +1 -0
- package/dist/UpiMarkAsPaidButton.js +42 -0
- package/dist/UpiMarkAsPaidButton.js.map +1 -0
- package/dist/UpiPayment.js +94 -0
- package/dist/UpiPayment.js.map +1 -0
- package/dist/V2PaymentsDashboard.js +302 -0
- package/dist/V2PaymentsDashboard.js.map +1 -0
- package/dist/buildStripeTransactionLink.js +6 -0
- package/dist/buildStripeTransactionLink.js.map +1 -0
- package/dist/cjs/AccountsDashboard.js +494 -0
- package/dist/cjs/AccountsDashboard.js.map +1 -0
- package/dist/cjs/Dashboard.js +613 -0
- package/dist/cjs/Dashboard.js.map +1 -0
- package/dist/cjs/ExportModal-20f368a1.js +669 -0
- package/dist/cjs/ExportModal-20f368a1.js.map +1 -0
- package/dist/cjs/IdentifierButton-40b5459d.js +27 -0
- package/dist/cjs/IdentifierButton-40b5459d.js.map +1 -0
- package/dist/cjs/PaymentKindRestrictionAlert.js +41 -0
- package/dist/cjs/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/cjs/PayoutsDashboard.js +519 -0
- package/dist/cjs/PayoutsDashboard.js.map +1 -0
- package/dist/cjs/PayoutsPage.js +194 -0
- package/dist/cjs/PayoutsPage.js.map +1 -0
- package/dist/cjs/RazorpayDashboard.js +262 -0
- package/dist/cjs/RazorpayDashboard.js.map +1 -0
- package/dist/cjs/RazorpayPaymentButton.js +118 -0
- package/dist/cjs/RazorpayPaymentButton.js.map +1 -0
- package/dist/cjs/StripeConnect.js +2106 -0
- package/dist/cjs/StripeConnect.js.map +1 -0
- package/dist/cjs/U2TDTBMY-e2fad970.js +12083 -0
- package/dist/cjs/U2TDTBMY-e2fad970.js.map +1 -0
- package/dist/cjs/UpiConnect.js +181 -0
- package/dist/cjs/UpiConnect.js.map +1 -0
- package/dist/cjs/UpiMarkAsPaidButton.js +49 -0
- package/dist/cjs/UpiMarkAsPaidButton.js.map +1 -0
- package/dist/cjs/UpiPayment.js +124 -0
- package/dist/cjs/UpiPayment.js.map +1 -0
- package/dist/cjs/V2PaymentsDashboard.js +313 -0
- package/dist/cjs/V2PaymentsDashboard.js.map +1 -0
- package/dist/cjs/buildStripeTransactionLink.js +11 -0
- package/dist/cjs/buildStripeTransactionLink.js.map +1 -0
- package/dist/cjs/constants.js +495 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/exportChannel-7bd80952.js +39 -0
- package/dist/cjs/exportChannel-7bd80952.js.map +1 -0
- package/dist/cjs/extends-1b35a664.js +19 -0
- package/dist/cjs/extends-1b35a664.js.map +1 -0
- package/dist/cjs/index-b097dce8.js +41 -0
- package/dist/cjs/index-b097dce8.js.map +1 -0
- package/dist/cjs/index-b7badf96.js +88 -0
- package/dist/cjs/index-b7badf96.js.map +1 -0
- package/dist/cjs/index.js +100 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/mutation-ed7b84fc.js +235 -0
- package/dist/cjs/mutation-ed7b84fc.js.map +1 -0
- package/dist/cjs/queryConstants-de21eed5.js +944 -0
- package/dist/cjs/queryConstants-de21eed5.js.map +1 -0
- package/dist/cjs/renderFunctions-398d3fb5.js +3719 -0
- package/dist/cjs/renderFunctions-398d3fb5.js.map +1 -0
- package/dist/cjs/stripe.esm-4218a1e9.js.map +1 -0
- package/dist/cjs/useConnectApi-f0665633.js +2189 -0
- package/dist/cjs/useConnectApi-f0665633.js.map +1 -0
- package/dist/cjs/useFiltersAndPagination-312c0331.js +277 -0
- package/dist/cjs/useFiltersAndPagination-312c0331.js.map +1 -0
- package/dist/cjs/useMutation-4c7cdbe1.js +154 -0
- package/dist/cjs/useMutation-4c7cdbe1.js.map +1 -0
- package/dist/cjs/usePaymentApi-ae70e5df.js +48 -0
- package/dist/cjs/usePaymentApi-ae70e5df.js.map +1 -0
- package/dist/cjs/usePaymentsApi-815be3da.js +36 -0
- package/dist/cjs/usePaymentsApi-815be3da.js.map +1 -0
- package/dist/cjs/usePlatformApi-830827fa.js +116 -0
- package/dist/cjs/usePlatformApi-830827fa.js.map +1 -0
- package/dist/cjs/useRazorpayPayment.js +91 -0
- package/dist/cjs/useRazorpayPayment.js.map +1 -0
- package/dist/cjs/useStripePromise.js +27 -0
- package/dist/cjs/useStripePromise.js.map +1 -0
- package/dist/cjs/utils-7eba34a4.js +664 -0
- package/dist/cjs/utils-7eba34a4.js.map +1 -0
- package/dist/constants.js +480 -0
- package/dist/constants.js.map +1 -0
- package/dist/exportChannel-250e6f14.js +32 -0
- package/dist/exportChannel-250e6f14.js.map +1 -0
- package/dist/extends-093996c9.js +17 -0
- package/dist/extends-093996c9.js.map +1 -0
- package/dist/index-1aedc364.js +80 -0
- package/dist/index-1aedc364.js.map +1 -0
- package/dist/index-48f8b281.js +32 -0
- package/dist/index-48f8b281.js.map +1 -0
- package/dist/index.js +77 -12558
- package/dist/index.js.map +1 -1
- package/dist/mutation-286611ef.js +232 -0
- package/dist/mutation-286611ef.js.map +1 -0
- package/dist/queryConstants-765c8816.js +920 -0
- package/dist/queryConstants-765c8816.js.map +1 -0
- package/dist/renderFunctions-97b121a4.js +3633 -0
- package/dist/renderFunctions-97b121a4.js.map +1 -0
- package/dist/useConnectApi-87335bf6.js +2174 -0
- package/dist/useConnectApi-87335bf6.js.map +1 -0
- package/dist/useFiltersAndPagination-2ab7bc8f.js +262 -0
- package/dist/useFiltersAndPagination-2ab7bc8f.js.map +1 -0
- package/dist/useMutation-8d67f853.js +132 -0
- package/dist/useMutation-8d67f853.js.map +1 -0
- package/dist/usePaymentApi-12737871.js +41 -0
- package/dist/usePaymentApi-12737871.js.map +1 -0
- package/dist/usePaymentsApi-a801ab15.js +29 -0
- package/dist/usePaymentsApi-a801ab15.js.map +1 -0
- package/dist/usePlatformApi-8adc2a50.js +104 -0
- package/dist/usePlatformApi-8adc2a50.js.map +1 -0
- package/dist/useRazorpayPayment.js +89 -0
- package/dist/useRazorpayPayment.js.map +1 -0
- package/dist/useStripePromise.js +25 -0
- package/dist/useStripePromise.js.map +1 -0
- package/dist/utils-e29db9c9.js +614 -0
- package/dist/utils-e29db9c9.js.map +1 -0
- package/package.json +18 -10
- package/types/AccountsDashboard.d.ts +3 -0
- package/types/Dashboard.d.ts +15 -0
- package/types/PaymentKindRestrictionAlert.d.ts +11 -0
- package/types/PayoutsDashboard.d.ts +10 -0
- package/types/PayoutsPage.d.ts +11 -0
- package/types/StripeConnect.d.ts +13 -0
- package/types/buildStripeTransactionLink.d.ts +6 -0
- package/types/useStripePromise.d.ts +5 -0
- package/types.d.ts +8 -75
- package/dist/index-042b6907.js +0 -6
- package/dist/index-042b6907.js.map +0 -1
- package/dist/index-87824935.js +0 -4
- package/dist/index-87824935.js.map +0 -1
- package/dist/index.cjs.js +0 -12633
- package/dist/index.cjs.js.map +0 -1
- package/dist/stripe.esm-4218a1e9.js.map +0 -1
- /package/dist/{stripe.esm-4218a1e9.js → cjs/stripe.esm-4218a1e9.js} +0 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
5
|
+
var Spinner = require('@bigbinary/neetoui/Spinner');
|
|
6
|
+
var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
|
|
7
|
+
var Form = require('@bigbinary/neetoui/formik/Form');
|
|
8
|
+
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
9
|
+
var reactI18next = require('react-i18next');
|
|
10
|
+
var reactRouterDom = require('react-router-dom');
|
|
11
|
+
var i18next = require('i18next');
|
|
12
|
+
var yup = require('yup');
|
|
13
|
+
var Alert = require('@bigbinary/neetoui/Alert');
|
|
14
|
+
var Table = require('@bigbinary/neetoui/Table');
|
|
15
|
+
var ramda = require('ramda');
|
|
16
|
+
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
17
|
+
var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
|
|
18
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
19
|
+
|
|
20
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
|
+
|
|
22
|
+
function _interopNamespace(e) {
|
|
23
|
+
if (e && e.__esModule) return e;
|
|
24
|
+
var n = Object.create(null);
|
|
25
|
+
if (e) {
|
|
26
|
+
Object.keys(e).forEach(function (k) {
|
|
27
|
+
if (k !== 'default') {
|
|
28
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
29
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: function () { return e[k]; }
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
n["default"] = e;
|
|
37
|
+
return Object.freeze(n);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
41
|
+
var Spinner__default = /*#__PURE__*/_interopDefaultLegacy(Spinner);
|
|
42
|
+
var ActionBlock__default = /*#__PURE__*/_interopDefaultLegacy(ActionBlock);
|
|
43
|
+
var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
|
|
44
|
+
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
|
45
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
46
|
+
var Alert__default = /*#__PURE__*/_interopDefaultLegacy(Alert);
|
|
47
|
+
var Table__default = /*#__PURE__*/_interopDefaultLegacy(Table);
|
|
48
|
+
var MoreDropdown__default = /*#__PURE__*/_interopDefaultLegacy(MoreDropdown);
|
|
49
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
50
|
+
|
|
51
|
+
const VALIDATION_SCHEMA = yup__namespace.object({
|
|
52
|
+
upiId: yup__namespace.string().matches(/^[a-zA-Z0-9.-]{2,256}@[a-zA-Z][a-zA-Z]{2,64}$/, i18next.t("neetoPayments.upi.form.validation.invalidUpi")).required(i18next.t("neetoPayments.upi.form.validation.required"))
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
const Add = _ref => {
|
|
56
|
+
let {
|
|
57
|
+
handleCreateUpiId
|
|
58
|
+
} = _ref;
|
|
59
|
+
const {
|
|
60
|
+
t
|
|
61
|
+
} = reactI18next.useTranslation();
|
|
62
|
+
const history = reactRouterDom.useHistory();
|
|
63
|
+
return /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(Form__default["default"], {
|
|
64
|
+
formikProps: {
|
|
65
|
+
initialValues: {
|
|
66
|
+
upiId: ""
|
|
67
|
+
},
|
|
68
|
+
onSubmit: handleCreateUpiId,
|
|
69
|
+
validationSchema: VALIDATION_SCHEMA
|
|
70
|
+
}
|
|
71
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
72
|
+
className: "space-y-3"
|
|
73
|
+
}, /*#__PURE__*/React__default["default"].createElement(Input__default["default"], {
|
|
74
|
+
className: "w-64",
|
|
75
|
+
label: t("neetoPayments.upi.form.enterUpi"),
|
|
76
|
+
name: "upiId",
|
|
77
|
+
placeholder: t("neetoPayments.upi.form.enterUpi")
|
|
78
|
+
}), /*#__PURE__*/React__default["default"].createElement(ActionBlock__default["default"], {
|
|
79
|
+
cancelButtonProps: {
|
|
80
|
+
onClick: () => history.goBack()
|
|
81
|
+
},
|
|
82
|
+
submitButtonProps: {
|
|
83
|
+
label: t("neetoPayments.upi.form.add")
|
|
84
|
+
}
|
|
85
|
+
}))));
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
const getColumnData = handleDeleteClick => [{
|
|
89
|
+
title: i18next.t("neetoPayments.common.upiId"),
|
|
90
|
+
dataIndex: "address",
|
|
91
|
+
key: "address",
|
|
92
|
+
width: 272,
|
|
93
|
+
render: (_, upiId) => /*#__PURE__*/React__default["default"].createElement("div", {
|
|
94
|
+
className: "flex items-center justify-between gap-3"
|
|
95
|
+
}, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
96
|
+
className: "w-4/5",
|
|
97
|
+
style: "body2"
|
|
98
|
+
}, upiId.address), /*#__PURE__*/React__default["default"].createElement(MoreDropdown__default["default"], {
|
|
99
|
+
dropdownProps: {
|
|
100
|
+
strategy: "fixed"
|
|
101
|
+
},
|
|
102
|
+
menuItems: [{
|
|
103
|
+
key: "delete-meeting",
|
|
104
|
+
label: i18next.t("neetoPayments.common.delete"),
|
|
105
|
+
onClick: () => handleDeleteClick(upiId)
|
|
106
|
+
}]
|
|
107
|
+
}))
|
|
108
|
+
}, {
|
|
109
|
+
title: i18next.t("neetoPayments.common.createdAt"),
|
|
110
|
+
dataIndex: "createdAt",
|
|
111
|
+
key: "createdAt",
|
|
112
|
+
render: utils.dateFormat.dateTime
|
|
113
|
+
}];
|
|
114
|
+
|
|
115
|
+
const List = _ref => {
|
|
116
|
+
let {
|
|
117
|
+
handleDeleteUpiId,
|
|
118
|
+
upiIds
|
|
119
|
+
} = _ref;
|
|
120
|
+
const {
|
|
121
|
+
t
|
|
122
|
+
} = reactI18next.useTranslation();
|
|
123
|
+
const [isAlertOpen, setIsAlertOpen] = React.useState(false);
|
|
124
|
+
const [selectedUpiId, setSelectedUpiId] = React.useState({});
|
|
125
|
+
const handleOpenDeleteModal = id => {
|
|
126
|
+
setSelectedUpiId(id);
|
|
127
|
+
setIsAlertOpen(true);
|
|
128
|
+
};
|
|
129
|
+
const handleAlertClose = () => {
|
|
130
|
+
setSelectedUpiId({});
|
|
131
|
+
setIsAlertOpen(false);
|
|
132
|
+
};
|
|
133
|
+
const handleAlertSubmit = () => {
|
|
134
|
+
handleDeleteUpiId(selectedUpiId);
|
|
135
|
+
setIsAlertOpen(false);
|
|
136
|
+
};
|
|
137
|
+
if (ramda.isEmpty(upiIds)) {
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
140
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Table__default["default"], {
|
|
141
|
+
columnData: getColumnData(handleOpenDeleteModal),
|
|
142
|
+
rowData: upiIds
|
|
143
|
+
}), /*#__PURE__*/React__default["default"].createElement(Alert__default["default"], {
|
|
144
|
+
isOpen: isAlertOpen,
|
|
145
|
+
title: t("neetoPayments.upi.alert.title"),
|
|
146
|
+
message: /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
147
|
+
components: {
|
|
148
|
+
b: /*#__PURE__*/React__default["default"].createElement("strong", null)
|
|
149
|
+
},
|
|
150
|
+
i18nKey: "neetoPayments.upi.alert.message",
|
|
151
|
+
values: {
|
|
152
|
+
upiId: selectedUpiId.address
|
|
153
|
+
}
|
|
154
|
+
}),
|
|
155
|
+
onClose: handleAlertClose,
|
|
156
|
+
onSubmit: handleAlertSubmit
|
|
157
|
+
}));
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
const UpiConnect = _ref => {
|
|
161
|
+
let {
|
|
162
|
+
upiIds = [],
|
|
163
|
+
isLoading = false,
|
|
164
|
+
isDeleting = false,
|
|
165
|
+
handleDeleteUpiId = neetoCist.noop,
|
|
166
|
+
handleCreateUpiId = neetoCist.noop
|
|
167
|
+
} = _ref;
|
|
168
|
+
if (isLoading) return /*#__PURE__*/React__default["default"].createElement(Spinner__default["default"], null);
|
|
169
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
170
|
+
className: "flex w-full max-w-3xl flex-col items-start space-y-6"
|
|
171
|
+
}, /*#__PURE__*/React__default["default"].createElement(Add, {
|
|
172
|
+
handleCreateUpiId
|
|
173
|
+
}), /*#__PURE__*/React__default["default"].createElement(List, {
|
|
174
|
+
handleDeleteUpiId,
|
|
175
|
+
isDeleting,
|
|
176
|
+
upiIds
|
|
177
|
+
}));
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
module.exports = UpiConnect;
|
|
181
|
+
//# sourceMappingURL=UpiConnect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpiConnect.js","sources":["../../app/javascript/src/components/UpiConnect/constants.js","../../app/javascript/src/components/UpiConnect/Add.jsx","../../app/javascript/src/components/UpiConnect/utils.jsx","../../app/javascript/src/components/UpiConnect/List.jsx","../../app/javascript/src/components/UpiConnect/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as Yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = Yup.object({\n upiId: Yup.string()\n .matches(\n /^[a-zA-Z0-9.-]{2,256}@[a-zA-Z][a-zA-Z]{2,64}$/,\n t(\"neetoPayments.upi.form.validation.invalidUpi\")\n )\n .required(t(\"neetoPayments.upi.form.validation.required\")),\n});\n","import React from \"react\";\n\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\n\nconst Add = ({ handleCreateUpiId }) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n\n return (\n <div>\n <Form\n formikProps={{\n initialValues: { upiId: \"\" },\n onSubmit: handleCreateUpiId,\n validationSchema: VALIDATION_SCHEMA,\n }}\n >\n <div className=\"space-y-3\">\n <Input\n className=\"w-64\"\n label={t(\"neetoPayments.upi.form.enterUpi\")}\n name=\"upiId\"\n placeholder={t(\"neetoPayments.upi.form.enterUpi\")}\n />\n <ActionBlock\n cancelButtonProps={{ onClick: () => history.goBack() }}\n submitButtonProps={{ label: t(\"neetoPayments.upi.form.add\") }}\n />\n </div>\n </Form>\n </div>\n );\n};\n\nexport default Add;\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nexport const getColumnData = handleDeleteClick => [\n {\n title: t(\"neetoPayments.common.upiId\"),\n dataIndex: \"address\",\n key: \"address\",\n width: 272,\n render: (_, upiId) => (\n <div className=\"flex items-center justify-between gap-3\">\n <Typography className=\"w-4/5\" style=\"body2\">\n {upiId.address}\n </Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n key: \"delete-meeting\",\n label: t(\"neetoPayments.common.delete\"),\n onClick: () => handleDeleteClick(upiId),\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n render: dateFormat.dateTime,\n },\n];\n","import React, { useState } from \"react\";\n\nimport { Alert, Table } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { getColumnData } from \"./utils\";\n\nconst List = ({ handleDeleteUpiId, upiIds }) => {\n const { t } = useTranslation();\n\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const [selectedUpiId, setSelectedUpiId] = useState({});\n\n const handleOpenDeleteModal = id => {\n setSelectedUpiId(id);\n setIsAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setSelectedUpiId({});\n setIsAlertOpen(false);\n };\n\n const handleAlertSubmit = () => {\n handleDeleteUpiId(selectedUpiId);\n setIsAlertOpen(false);\n };\n\n if (isEmpty(upiIds)) {\n return null;\n }\n\n return (\n <>\n <Table\n columnData={getColumnData(handleOpenDeleteModal)}\n rowData={upiIds}\n />\n <Alert\n isOpen={isAlertOpen}\n title={t(\"neetoPayments.upi.alert.title\")}\n message={\n <Trans\n components={{ b: <strong /> }}\n i18nKey=\"neetoPayments.upi.alert.message\"\n values={{ upiId: selectedUpiId.address }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleAlertSubmit}\n />\n </>\n );\n};\n\nexport default List;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Spinner } from \"neetoui\";\n\nimport Add from \"./Add\";\nimport List from \"./List\";\n\nconst UpiConnect = ({\n upiIds = [],\n isLoading = false,\n isDeleting = false,\n handleDeleteUpiId = noop,\n handleCreateUpiId = noop,\n}) => {\n if (isLoading) return <Spinner />;\n\n return (\n <div className=\"flex w-full max-w-3xl flex-col items-start space-y-6\">\n <Add {...{ handleCreateUpiId }} />\n <List {...{ handleDeleteUpiId, isDeleting, upiIds }} />\n </div>\n );\n};\n\nexport default UpiConnect;\n"],"names":["VALIDATION_SCHEMA","Yup","object","upiId","string","matches","t","required","Add","_ref","handleCreateUpiId","useTranslation","history","useHistory","React","createElement","Form","formikProps","initialValues","onSubmit","validationSchema","className","Input","label","name","placeholder","ActionBlock","cancelButtonProps","onClick","goBack","submitButtonProps","getColumnData","handleDeleteClick","title","dataIndex","key","width","render","_","Typography","style","address","MoreDropdown","dropdownProps","strategy","menuItems","dateFormat","dateTime","List","handleDeleteUpiId","upiIds","isAlertOpen","setIsAlertOpen","useState","selectedUpiId","setSelectedUpiId","handleOpenDeleteModal","id","handleAlertClose","handleAlertSubmit","isEmpty","Fragment","Table","columnData","rowData","Alert","isOpen","message","Trans","components","b","i18nKey","values","onClose","UpiConnect","isLoading","isDeleting","noop","Spinner"],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
5
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
6
|
+
var reactI18next = require('react-i18next');
|
|
7
|
+
var usePaymentsApi = require('./usePaymentsApi-815be3da.js');
|
|
8
|
+
require('./useMutation-4c7cdbe1.js');
|
|
9
|
+
require('./mutation-ed7b84fc.js');
|
|
10
|
+
require('./utils-7eba34a4.js');
|
|
11
|
+
require('react/jsx-runtime');
|
|
12
|
+
require('axios');
|
|
13
|
+
require('./constants.js');
|
|
14
|
+
require('i18next');
|
|
15
|
+
require('@bigbinary/neeto-commons-frontend/constants');
|
|
16
|
+
|
|
17
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
18
|
+
|
|
19
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
20
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
21
|
+
|
|
22
|
+
const UpiMarkAsPaidButton = _ref => {
|
|
23
|
+
let {
|
|
24
|
+
paymentId,
|
|
25
|
+
payableId,
|
|
26
|
+
onSuccess = neetoCist.noop
|
|
27
|
+
} = _ref;
|
|
28
|
+
const {
|
|
29
|
+
t
|
|
30
|
+
} = reactI18next.useTranslation();
|
|
31
|
+
const {
|
|
32
|
+
mutate: updateUpiPayment,
|
|
33
|
+
isLoading
|
|
34
|
+
} = usePaymentsApi.useUpdateUpiPayment(paymentId, {
|
|
35
|
+
onSuccess
|
|
36
|
+
});
|
|
37
|
+
const handleClick = () => updateUpiPayment({
|
|
38
|
+
status: "successful",
|
|
39
|
+
payableId
|
|
40
|
+
});
|
|
41
|
+
return /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
42
|
+
label: t("neetoPayments.upi.payment.buttons.markAsPaid"),
|
|
43
|
+
loading: isLoading,
|
|
44
|
+
onClick: handleClick
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
module.exports = UpiMarkAsPaidButton;
|
|
49
|
+
//# sourceMappingURL=UpiMarkAsPaidButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpiMarkAsPaidButton.js","sources":["../../app/javascript/src/components/UpiMarkAsPaidButton.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateUpiPayment } from \"hooks/reactQuery/upi/usePaymentsApi\";\n\nconst UpiMarkAsPaidButton = ({ paymentId, payableId, onSuccess = noop }) => {\n const { t } = useTranslation();\n const { mutate: updateUpiPayment, isLoading } = useUpdateUpiPayment(\n paymentId,\n { onSuccess }\n );\n\n const handleClick = () =>\n updateUpiPayment({ status: \"successful\", payableId });\n\n return (\n <Button\n label={t(\"neetoPayments.upi.payment.buttons.markAsPaid\")}\n loading={isLoading}\n onClick={handleClick}\n />\n );\n};\n\nexport default UpiMarkAsPaidButton;\n"],"names":["UpiMarkAsPaidButton","_ref","paymentId","payableId","onSuccess","noop","t","useTranslation","mutate","updateUpiPayment","isLoading","useUpdateUpiPayment","handleClick","status","React","createElement","Button","label","loading","onClick"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQMA,MAAAA,mBAAmB,GAAGC,IAAA,IAAgD;EAAA,IAA/C;IAAEC,SAAS;IAAEC,SAAS;AAAEC,IAAAA,SAAS,GAAGC,cAAAA;AAAK,GAAC,GAAAJ,IAAA,CAAA;EACrE,MAAM;AAAEK,IAAAA,CAAAA;GAAG,GAAGC,2BAAc,EAAE,CAAA;EAC9B,MAAM;AAAEC,IAAAA,MAAM,EAAEC,gBAAgB;AAAEC,IAAAA,SAAAA;AAAU,GAAC,GAAGC,kCAAmB,CACjET,SAAS,EACT;AAAEE,IAAAA,SAAAA;AAAU,GACd,CAAC,CAAA;AAED,EAAA,MAAMQ,WAAW,GAAGA,MAClBH,gBAAgB,CAAC;AAAEI,IAAAA,MAAM,EAAE,YAAY;AAAEV,IAAAA,SAAAA;AAAU,GAAC,CAAC,CAAA;AAEvD,EAAA,oBACEW,yBAAA,CAAAC,aAAA,CAACC,0BAAM,EAAA;AACLC,IAAAA,KAAK,EAAEX,CAAC,CAAC,8CAA8C,CAAE;AACzDY,IAAAA,OAAO,EAAER,SAAU;AACnBS,IAAAA,OAAO,EAAEP,WAAAA;AAAY,GACtB,CAAC,CAAA;AAEN;;;;"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
5
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
6
|
+
var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
|
|
7
|
+
var Form = require('@bigbinary/neetoui/formik/Form');
|
|
8
|
+
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
9
|
+
var QRCodeImage = require('qrcode.react');
|
|
10
|
+
var ramda = require('ramda');
|
|
11
|
+
var reactI18next = require('react-i18next');
|
|
12
|
+
var usePaymentsApi = require('./usePaymentsApi-815be3da.js');
|
|
13
|
+
var i18next = require('i18next');
|
|
14
|
+
var yup = require('yup');
|
|
15
|
+
require('./useMutation-4c7cdbe1.js');
|
|
16
|
+
require('./mutation-ed7b84fc.js');
|
|
17
|
+
require('./utils-7eba34a4.js');
|
|
18
|
+
require('react/jsx-runtime');
|
|
19
|
+
require('axios');
|
|
20
|
+
require('./constants.js');
|
|
21
|
+
require('@bigbinary/neeto-commons-frontend/constants');
|
|
22
|
+
|
|
23
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
24
|
+
|
|
25
|
+
function _interopNamespace(e) {
|
|
26
|
+
if (e && e.__esModule) return e;
|
|
27
|
+
var n = Object.create(null);
|
|
28
|
+
if (e) {
|
|
29
|
+
Object.keys(e).forEach(function (k) {
|
|
30
|
+
if (k !== 'default') {
|
|
31
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
32
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () { return e[k]; }
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
n["default"] = e;
|
|
40
|
+
return Object.freeze(n);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
44
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
45
|
+
var ActionBlock__default = /*#__PURE__*/_interopDefaultLegacy(ActionBlock);
|
|
46
|
+
var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
|
|
47
|
+
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
|
48
|
+
var QRCodeImage__default = /*#__PURE__*/_interopDefaultLegacy(QRCodeImage);
|
|
49
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
50
|
+
|
|
51
|
+
const VALIDATION_SCHEMA = yup__namespace.object({
|
|
52
|
+
transactionId: yup__namespace.string().required(i18next.t("neetoPayments.upi.payment.transaction.required")).min(6, i18next.t("neetoPayments.upi.payment.transaction.sixCharacters")).max(6, i18next.t("neetoPayments.upi.payment.transaction.sixCharacters"))
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
const vpaIdToQrCodeValue = vpaId => `upi://pay?pa=${vpaId}`;
|
|
56
|
+
|
|
57
|
+
const UpiPayment = _ref => {
|
|
58
|
+
let {
|
|
59
|
+
fee = {},
|
|
60
|
+
onSubmit = neetoCist.noop,
|
|
61
|
+
onBackClick = neetoCist.noop,
|
|
62
|
+
payableId
|
|
63
|
+
} = _ref;
|
|
64
|
+
const {
|
|
65
|
+
t
|
|
66
|
+
} = reactI18next.useTranslation();
|
|
67
|
+
const vpaIds = ramda.pluck("address", fee?.vpas);
|
|
68
|
+
const {
|
|
69
|
+
mutate: createPayment
|
|
70
|
+
} = usePaymentsApi.useCreateUpiPayment({});
|
|
71
|
+
const handleSubmit = values => {
|
|
72
|
+
const payload = {
|
|
73
|
+
...values,
|
|
74
|
+
payableId
|
|
75
|
+
};
|
|
76
|
+
createPayment(payload);
|
|
77
|
+
onSubmit(values);
|
|
78
|
+
};
|
|
79
|
+
return /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(Form__default["default"], {
|
|
80
|
+
className: "space-y-4",
|
|
81
|
+
formikProps: {
|
|
82
|
+
onSubmit: handleSubmit,
|
|
83
|
+
initialValues: {
|
|
84
|
+
transactionId: ""
|
|
85
|
+
},
|
|
86
|
+
validationSchema: VALIDATION_SCHEMA
|
|
87
|
+
}
|
|
88
|
+
}, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
89
|
+
style: "body1"
|
|
90
|
+
}, t("neetoPayments.upi.payment.vpaText", {
|
|
91
|
+
count: vpaIds.length
|
|
92
|
+
})), neetoCist.isPresent(vpaIds) && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
93
|
+
className: "grid grid-cols-1 gap-8 gap-y-4 sm:grid-cols-2"
|
|
94
|
+
}, vpaIds.map(vpaId => /*#__PURE__*/React__default["default"].createElement("div", {
|
|
95
|
+
className: "flex flex-col items-center justify-center",
|
|
96
|
+
key: vpaId
|
|
97
|
+
}, /*#__PURE__*/React__default["default"].createElement(QRCodeImage__default["default"], {
|
|
98
|
+
size: 256,
|
|
99
|
+
style: {
|
|
100
|
+
width: 80,
|
|
101
|
+
height: 80
|
|
102
|
+
},
|
|
103
|
+
value: vpaIdToQrCodeValue(vpaId)
|
|
104
|
+
}), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
105
|
+
className: "mt-2 w-full break-words text-center",
|
|
106
|
+
style: "body2"
|
|
107
|
+
}, vpaId)))), /*#__PURE__*/React__default["default"].createElement(Input__default["default"], {
|
|
108
|
+
required: true,
|
|
109
|
+
label: t("neetoPayments.upi.payment.transaction.label"),
|
|
110
|
+
name: "transactionId",
|
|
111
|
+
placeholder: t("neetoPayments.upi.payment.transaction.placeholder")
|
|
112
|
+
}), /*#__PURE__*/React__default["default"].createElement(ActionBlock__default["default"], {
|
|
113
|
+
cancelButtonProps: {
|
|
114
|
+
label: t("neetoPayments.upi.payment.buttons.back"),
|
|
115
|
+
onClick: onBackClick
|
|
116
|
+
},
|
|
117
|
+
submitButtonProps: {
|
|
118
|
+
label: t("neetoPayments.upi.payment.buttons.submit")
|
|
119
|
+
}
|
|
120
|
+
})));
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
module.exports = UpiPayment;
|
|
124
|
+
//# sourceMappingURL=UpiPayment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpiPayment.js","sources":["../../app/javascript/src/components/UpiPayment/constants.js","../../app/javascript/src/components/UpiPayment/utils.js","../../app/javascript/src/components/UpiPayment/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object({\n transactionId: yup\n .string()\n .required(t(\"neetoPayments.upi.payment.transaction.required\"))\n .min(6, t(\"neetoPayments.upi.payment.transaction.sixCharacters\"))\n .max(6, t(\"neetoPayments.upi.payment.transaction.sixCharacters\")),\n});\n","export const vpaIdToQrCodeValue = vpaId => `upi://pay?pa=${vpaId}`;\n","import React from \"react\";\n\nimport { noop, isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport QRCodeImage from \"qrcode.react\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateUpiPayment } from \"hooks/reactQuery/upi/usePaymentsApi\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\nimport { vpaIdToQrCodeValue } from \"./utils\";\n\nconst UpiPayment = ({\n fee = {},\n onSubmit = noop,\n onBackClick = noop,\n payableId,\n}) => {\n const { t } = useTranslation();\n\n const vpaIds = pluck(\"address\", fee?.vpas);\n\n const { mutate: createPayment } = useCreateUpiPayment({});\n\n const handleSubmit = values => {\n const payload = { ...values, payableId };\n createPayment(payload);\n onSubmit(values);\n };\n\n return (\n <div>\n <Form\n className=\"space-y-4\"\n formikProps={{\n onSubmit: handleSubmit,\n initialValues: { transactionId: \"\" },\n validationSchema: VALIDATION_SCHEMA,\n }}\n >\n <Typography style=\"body1\">\n {t(\"neetoPayments.upi.payment.vpaText\", { count: vpaIds.length })}\n </Typography>\n {isPresent(vpaIds) && (\n <div className=\"grid grid-cols-1 gap-8 gap-y-4 sm:grid-cols-2\">\n {vpaIds.map(vpaId => (\n <div\n className=\"flex flex-col items-center justify-center\"\n key={vpaId}\n >\n <QRCodeImage\n size={256}\n style={{ width: 80, height: 80 }}\n value={vpaIdToQrCodeValue(vpaId)}\n />\n <Typography\n className=\"mt-2 w-full break-words text-center\"\n style=\"body2\"\n >\n {vpaId}\n </Typography>\n </div>\n ))}\n </div>\n )}\n <Input\n required\n label={t(\"neetoPayments.upi.payment.transaction.label\")}\n name=\"transactionId\"\n placeholder={t(\"neetoPayments.upi.payment.transaction.placeholder\")}\n />\n <ActionBlock\n cancelButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.back\"),\n onClick: onBackClick,\n }}\n submitButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.submit\"),\n }}\n />\n </Form>\n </div>\n );\n};\n\nexport default UpiPayment;\n"],"names":["VALIDATION_SCHEMA","yup","object","transactionId","string","required","t","min","max","vpaIdToQrCodeValue","vpaId","UpiPayment","_ref","fee","onSubmit","noop","onBackClick","payableId","useTranslation","vpaIds","pluck","vpas","mutate","createPayment","useCreateUpiPayment","handleSubmit","values","payload","React","createElement","Form","className","formikProps","initialValues","validationSchema","Typography","style","count","length","isPresent","map","key","QRCodeImage","size","width","height","value","Input","label","name","placeholder","ActionBlock","cancelButtonProps","onClick","submitButtonProps"],"mappings":"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"}
|