@bigbinary/neeto-payments-frontend 1.4.9 → 1.4.10

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/dist/index.cjs.js CHANGED
@@ -27,10 +27,11 @@ var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
27
27
  var require$$0 = require('util');
28
28
  var reactRouterDom$1 = require('react-router-dom/cjs/react-router-dom');
29
29
  var classNames = require('classnames');
30
- var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
31
30
  var neetointegrations = require('neetointegrations');
32
31
  var formik = require('@bigbinary/neetoui/formik');
33
32
  var yup = require('yup');
33
+ var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
34
+ var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
34
35
 
35
36
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
36
37
 
@@ -64,6 +65,7 @@ var TableWrapper__default = /*#__PURE__*/_interopDefaultLegacy(TableWrapper);
64
65
  var require$$0__default = /*#__PURE__*/_interopDefaultLegacy(require$$0);
65
66
  var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
66
67
  var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
68
+ var MoreDropdown__default = /*#__PURE__*/_interopDefaultLegacy(MoreDropdown);
67
69
 
68
70
  function _arrayWithHoles(arr) {
69
71
  if (Array.isArray(arr)) return arr;
@@ -1138,7 +1140,7 @@ var useFetchConnectedAccounts = function useFetchConnectedAccounts() {
1138
1140
  }, options);
1139
1141
  };
1140
1142
 
1141
- var List$4 = function List(_ref) {
1143
+ var List$5 = function List(_ref) {
1142
1144
  var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
1143
1145
  var columnData = _ref.columnData,
1144
1146
  filters = _ref.filters,
@@ -1323,7 +1325,7 @@ var AccountsDashboard = function AccountsDashboard() {
1323
1325
  onChange: handleFiltersChange
1324
1326
  }
1325
1327
  }))
1326
- }), /*#__PURE__*/React__default["default"].createElement(List$4, {
1328
+ }), /*#__PURE__*/React__default["default"].createElement(List$5, {
1327
1329
  columnData: columnData,
1328
1330
  filters: filters,
1329
1331
  pageProperties: pageProperties,
@@ -4697,7 +4699,7 @@ var Details = function Details(_ref) {
4697
4699
  }))));
4698
4700
  };
4699
4701
 
4700
- var List$3 = function List(_ref) {
4702
+ var List$4 = function List(_ref) {
4701
4703
  var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
4702
4704
  var _ref$isPlatformEnable = _ref.isPlatformEnabled,
4703
4705
  isPlatformEnabled = _ref$isPlatformEnable === void 0 ? false : _ref$isPlatformEnable,
@@ -4944,7 +4946,7 @@ var Dashboard = function Dashboard(_ref) {
4944
4946
  onChange: handleFiltersChange
4945
4947
  }
4946
4948
  }))
4947
- }), /*#__PURE__*/React__default["default"].createElement(List$3, {
4949
+ }), /*#__PURE__*/React__default["default"].createElement(List$4, {
4948
4950
  columns: columns,
4949
4951
  filters: filters,
4950
4952
  holdableId: holdableId,
@@ -5259,7 +5261,7 @@ var useFetchData$1 = function useFetchData(_ref) {
5259
5261
  };
5260
5262
  };
5261
5263
 
5262
- var List$2 = function List(_ref) {
5264
+ var List$3 = function List(_ref) {
5263
5265
  var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
5264
5266
  var columnData = _ref.columnData,
5265
5267
  filters = _ref.filters,
@@ -5443,7 +5445,7 @@ var PayoutsDashboard = function PayoutsDashboard(_ref) {
5443
5445
  onChange: handleFiltersChange
5444
5446
  }
5445
5447
  }))
5446
- }), /*#__PURE__*/React__default["default"].createElement(List$2, {
5448
+ }), /*#__PURE__*/React__default["default"].createElement(List$3, {
5447
5449
  columnData: columnData,
5448
5450
  filters: filters,
5449
5451
  isPlatformEnabled: isPlatformEnabled,
@@ -5595,52 +5597,682 @@ var PayoutsPage = function PayoutsPage(_ref) {
5595
5597
  })));
5596
5598
  };
5597
5599
 
5598
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
5599
- try {
5600
- var info = gen[key](arg);
5601
- var value = info.value;
5602
- } catch (error) {
5603
- reject(error);
5604
- return;
5605
- }
5606
- if (info.done) {
5607
- resolve(value);
5608
- } else {
5609
- Promise.resolve(value).then(_next, _throw);
5600
+ var renderIdentifier$1 = function renderIdentifier() {
5601
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5602
+ _ref$identifier = _ref.identifier,
5603
+ identifier = _ref$identifier === void 0 ? "" : _ref$identifier;
5604
+ var isTemporaryIdentifier = identifier.startsWith("temp_");
5605
+ if (isTemporaryIdentifier) {
5606
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
5607
+ content: i18next.t("neetoPayments.tooltipContent.paymentIdentifierUnavailable"),
5608
+ position: "top"
5609
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5610
+ className: "text-center"
5611
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
5612
+ style: "body2"
5613
+ }, i18next.t("neetoPayments.common.notAvailable"))));
5610
5614
  }
5611
- }
5612
- function _asyncToGenerator(fn) {
5613
- return function () {
5614
- var self = this,
5615
- args = arguments;
5616
- return new Promise(function (resolve, reject) {
5617
- var gen = fn.apply(self, args);
5618
- function _next(value) {
5619
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
5620
- }
5621
- function _throw(err) {
5622
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
5623
- }
5624
- _next(undefined);
5625
- });
5626
- };
5627
- }
5615
+ return /*#__PURE__*/React__default["default"].createElement(CopyButtonWrapper, {
5616
+ content: identifier
5617
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
5618
+ href: "https://dashboard.razorpay.com/app/payments/".concat(identifier),
5619
+ label: identifier,
5620
+ size: "small",
5621
+ style: "link",
5622
+ target: "_blank"
5623
+ }));
5624
+ };
5628
5625
 
5629
- var regeneratorRuntime$1 = {exports: {}};
5626
+ var COLUMNS$1 = [{
5627
+ title: i18next.t("neetoPayments.common.id"),
5628
+ dataIndex: "id",
5629
+ key: "id",
5630
+ width: "72px",
5631
+ isHidable: false
5632
+ }, {
5633
+ title: i18next.t("neetoPayments.common.identifier"),
5634
+ dataIndex: "identifier",
5635
+ key: "identifier",
5636
+ width: "290px",
5637
+ render: renderIdentifier$1,
5638
+ isHidable: false
5639
+ }, {
5640
+ title: i18next.t("neetoPayments.common.status"),
5641
+ dataIndex: "status",
5642
+ key: "status",
5643
+ sorter: true,
5644
+ width: "150px",
5645
+ render: renderStatus("payment"),
5646
+ isHidable: false
5647
+ }, {
5648
+ title: i18next.t("neetoPayments.common.amount"),
5649
+ dataIndex: "amount",
5650
+ key: "amount",
5651
+ sorter: true,
5652
+ width: "150px"
5653
+ }, {
5654
+ title: i18next.t("neetoPayments.common.paymentTime"),
5655
+ dataIndex: "paymentAt",
5656
+ key: "paymentTime",
5657
+ sorter: true,
5658
+ width: "220px",
5659
+ render: renderDate
5660
+ }];
5661
+ var COLUMN_METADATA$1 = {
5662
+ status: {
5663
+ isHidden: {
5664
+ successful: true,
5665
+ declined: true,
5666
+ pending: true,
5667
+ refunded: true
5668
+ }
5669
+ }
5670
+ };
5630
5671
 
5631
- var _typeof = {exports: {}};
5672
+ ramda.equals("razorpayRefund");
5673
+ var isPaymentKind$1 = ramda.equals("razorpayPayment");
5674
+ var buildPaymentColumns$1 = function buildPaymentColumns(_ref) {
5675
+ var tab = _ref.tab,
5676
+ kind = _ref.kind,
5677
+ _ref$payableEntityCol = _ref.payableEntityColumns,
5678
+ payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol;
5679
+ return COLUMNS$1.filter(function (_ref2) {
5680
+ var _COLUMN_METADATA$key, _COLUMN_METADATA$key2;
5681
+ var key = _ref2.key;
5682
+ return !((_COLUMN_METADATA$key = COLUMN_METADATA$1[key]) !== null && _COLUMN_METADATA$key !== void 0 && (_COLUMN_METADATA$key = _COLUMN_METADATA$key.isHidden) !== null && _COLUMN_METADATA$key !== void 0 && _COLUMN_METADATA$key[kind] || (_COLUMN_METADATA$key2 = COLUMN_METADATA$1[key]) !== null && _COLUMN_METADATA$key2 !== void 0 && (_COLUMN_METADATA$key2 = _COLUMN_METADATA$key2.isHidden) !== null && _COLUMN_METADATA$key2 !== void 0 && _COLUMN_METADATA$key2[tab]);
5683
+ }).concat(payableEntityColumns.filter(function (_ref3) {
5684
+ var isHidden = _ref3.isHidden;
5685
+ return !(isHidden !== null && isHidden !== void 0 && isHidden[tab] || isHidden !== null && isHidden !== void 0 && isHidden[kind]);
5686
+ }));
5687
+ };
5632
5688
 
5633
- _typeof.exports;
5689
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5690
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5691
+ var FilterWrapper = function FilterWrapper(_ref) {
5692
+ var _ref$setShowExportMod = _ref.setShowExportModal,
5693
+ setShowExportModal = _ref$setShowExportMod === void 0 ? neetoCist.noop : _ref$setShowExportMod,
5694
+ searchProps = _ref.searchProps,
5695
+ _ref$headerProps = _ref.headerProps,
5696
+ headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
5697
+ children = _ref.children,
5698
+ title = _ref.title,
5699
+ searchTerm = _ref.searchTerm,
5700
+ filterableColumns = _ref.filterableColumns,
5701
+ isFilterButtonVisible = _ref.isFilterButtonVisible,
5702
+ isFilterPaneOpen = _ref.isFilterPaneOpen,
5703
+ tabs = _ref.tabs,
5704
+ tab = _ref.tab,
5705
+ setIsFilterPaneOpen = _ref.setIsFilterPaneOpen,
5706
+ setFilters = _ref.setFilters,
5707
+ handleTabChange = _ref.handleTabChange,
5708
+ dataSize = _ref.dataSize,
5709
+ kind = _ref.kind,
5710
+ payableEntityColumns = _ref.payableEntityColumns;
5711
+ var _useTransition = React.useTransition(),
5712
+ _useTransition2 = _slicedToArray(_useTransition, 2);
5713
+ _useTransition2[0];
5714
+ var startTransition = _useTransition2[1];
5715
+ var _useTranslation = reactI18next.useTranslation(),
5716
+ t = _useTranslation.t;
5717
+ var isTabsVisible = isFilterButtonVisible || tab !== "all";
5718
+ var searchKeywordProps = _objectSpread$3(_objectSpread$3({}, searchProps), {}, {
5719
+ value: searchTerm.trim(),
5720
+ setValue: neetoCist.noop
5721
+ });
5722
+ var handleFiltersChange = function handleFiltersChange(filters) {
5723
+ startTransition(function () {
5724
+ setFilters(filters);
5725
+ });
5726
+ };
5727
+ var columnData = buildPaymentColumns$1({
5728
+ tab: tab,
5729
+ kind: kind,
5730
+ payableEntityColumns: payableEntityColumns
5731
+ });
5732
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header__default["default"], _extends$1({}, _objectSpread$3(_objectSpread$3({}, headerProps), {}, {
5733
+ title: title
5734
+ }), {
5735
+ searchProps: {
5736
+ placeholder: searchKeywordProps.placeholder,
5737
+ className: "w-80"
5738
+ }
5739
+ })), isTabsVisible && /*#__PURE__*/React__default["default"].createElement(neetoui.Tab, null, tabs.map(function (item) {
5740
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Tab.Item, {
5741
+ active: tab === item,
5742
+ key: item,
5743
+ onClick: function onClick() {
5744
+ return handleTabChange(item);
5745
+ }
5746
+ }, t("neetoPayments.common.".concat(item)));
5747
+ })), /*#__PURE__*/React__default["default"].createElement(SubHeader__default["default"], {
5748
+ className: "mt-4",
5749
+ leftActionBlock: isTabsVisible && dataSize !== 0 && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
5750
+ className: "neeto-ui-gray-800 mr-2 font-semibold",
5751
+ component: "h4"
5752
+ }, tab === "all" ? t("neetoPayments.countOf.".concat(kind), {
5753
+ count: dataSize
5754
+ }) : t("neetoPayments.countOf.".concat(kind, "WithStatus"), {
5755
+ count: dataSize,
5756
+ status: tab
5757
+ })),
5758
+ rightActionBlock: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoFiltersFrontend.Bar, {
5759
+ columns: filterableColumns,
5760
+ keyword: searchKeywordProps,
5761
+ setIsPaneOpen: setIsFilterPaneOpen,
5762
+ onChange: handleFiltersChange
5763
+ }), isFilterButtonVisible && /*#__PURE__*/React__default["default"].createElement(SubHeader__default["default"].RightBlock, {
5764
+ columnsButtonProps: {
5765
+ columnData: columnData,
5766
+ fixedColumns: DASHBOARD_MANDATORY_COLUMNS$1,
5767
+ localStorageKey: "paymentDashboard_".concat(kind)
5768
+ },
5769
+ downloadButtonProps: {
5770
+ onClick: function onClick() {
5771
+ return setShowExportModal(true);
5772
+ }
5773
+ },
5774
+ filterProps: {
5775
+ columns: filterableColumns,
5776
+ isOpen: isFilterPaneOpen,
5777
+ keyword: searchKeywordProps,
5778
+ setIsOpen: setIsFilterPaneOpen,
5779
+ onChange: handleFiltersChange
5780
+ }
5781
+ }))
5782
+ }), children);
5783
+ };
5634
5784
 
5635
- (function (module) {
5636
- function _typeof(o) {
5637
- "@babel/helpers - typeof";
5785
+ var renderIdentifier = function renderIdentifier() {
5786
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5787
+ _ref$identifier = _ref.identifier,
5788
+ identifier = _ref$identifier === void 0 ? "" : _ref$identifier,
5789
+ _ref$receiptUrl = _ref.receiptUrl,
5790
+ receiptUrl = _ref$receiptUrl === void 0 ? "" : _ref$receiptUrl;
5791
+ return /*#__PURE__*/React__default["default"].createElement(CopyButtonWrapper, {
5792
+ content: identifier
5793
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
5794
+ href: receiptUrl,
5795
+ label: identifier,
5796
+ size: "small",
5797
+ style: "link",
5798
+ target: "_blank"
5799
+ }));
5800
+ };
5801
+ var truncatedText = function truncatedText(_ref2) {
5802
+ var identifier = _ref2.identifier;
5803
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
5804
+ content: identifier,
5805
+ position: "top"
5806
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5807
+ className: "w-64 truncate"
5808
+ }, identifier));
5809
+ };
5638
5810
 
5639
- return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
5640
- return typeof o;
5641
- } : function (o) {
5642
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
5643
- }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
5811
+ var COLUMNS = [{
5812
+ title: i18next.t("neetoPayments.common.id"),
5813
+ dataIndex: "id",
5814
+ key: "id",
5815
+ width: "72px"
5816
+ }, {
5817
+ title: i18next.t("neetoPayments.common.identifier"),
5818
+ dataIndex: "identifier",
5819
+ key: "identifier",
5820
+ width: "290px",
5821
+ render: renderIdentifier
5822
+ }, {
5823
+ title: i18next.t("neetoPayments.common.status"),
5824
+ dataIndex: "status",
5825
+ key: "status",
5826
+ sorter: true,
5827
+ render: renderStatus("payment")
5828
+ }, {
5829
+ title: i18next.t("neetoPayments.common.identifier"),
5830
+ dataIndex: "identifier",
5831
+ key: "refundIdentifier",
5832
+ width: "290px",
5833
+ render: truncatedText
5834
+ }, {
5835
+ title: i18next.t("neetoPayments.common.status"),
5836
+ dataIndex: "status",
5837
+ key: "refundStatus",
5838
+ sorter: true,
5839
+ render: renderStatus("refund")
5840
+ }, {
5841
+ title: i18next.t("neetoPayments.common.paymentIdentifier"),
5842
+ dataIndex: "payment",
5843
+ key: "paymentIdentifier",
5844
+ width: "290px",
5845
+ render: renderIdentifier
5846
+ }, {
5847
+ title: i18next.t("neetoPayments.common.amount"),
5848
+ dataIndex: "amount",
5849
+ key: "amount",
5850
+ sorter: true,
5851
+ width: "150px"
5852
+ }, {
5853
+ title: i18next.t("neetoPayments.common.paymentTime"),
5854
+ dataIndex: "updatedAt",
5855
+ key: "paymentTime",
5856
+ sorter: true,
5857
+ width: "220px",
5858
+ render: renderDate
5859
+ }];
5860
+ var COLUMN_METADATA = {
5861
+ identifier: {
5862
+ isHidden: {
5863
+ squareRefund: true
5864
+ }
5865
+ },
5866
+ status: {
5867
+ isHidden: {
5868
+ squareRefund: true,
5869
+ completed: true,
5870
+ failed: true
5871
+ }
5872
+ },
5873
+ refundIdentifier: {
5874
+ isHidden: {
5875
+ squarePayment: true
5876
+ }
5877
+ },
5878
+ refundStatus: {
5879
+ isHidden: {
5880
+ squarePayment: true,
5881
+ completed: true,
5882
+ pending: true,
5883
+ rejected: true
5884
+ }
5885
+ },
5886
+ paymentIdentifier: {
5887
+ isHidden: {
5888
+ squarePayment: true
5889
+ }
5890
+ }
5891
+ };
5892
+
5893
+ var isRefundKind = ramda.equals("squareRefund");
5894
+ var isPaymentKind = ramda.equals("squarePayment");
5895
+ var buildFilterColumns = function buildFilterColumns() {
5896
+ var payableEntityColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
5897
+ return ramda.concat(FILTER_COLUMNS$2, ramda.map(ramda.prop("filterProps"), neetoCist.filterBy({
5898
+ isFilterable: true
5899
+ }, payableEntityColumns)));
5900
+ };
5901
+ var buildPaymentColumns = function buildPaymentColumns(_ref) {
5902
+ var tab = _ref.tab,
5903
+ kind = _ref.kind,
5904
+ _ref$payableEntityCol = _ref.payableEntityColumns,
5905
+ payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol;
5906
+ return COLUMNS.filter(function (_ref2) {
5907
+ var _COLUMN_METADATA$key, _COLUMN_METADATA$key2;
5908
+ var key = _ref2.key;
5909
+ return !((_COLUMN_METADATA$key = COLUMN_METADATA[key]) !== null && _COLUMN_METADATA$key !== void 0 && (_COLUMN_METADATA$key = _COLUMN_METADATA$key.isHidden) !== null && _COLUMN_METADATA$key !== void 0 && _COLUMN_METADATA$key[kind] || (_COLUMN_METADATA$key2 = COLUMN_METADATA[key]) !== null && _COLUMN_METADATA$key2 !== void 0 && (_COLUMN_METADATA$key2 = _COLUMN_METADATA$key2.isHidden) !== null && _COLUMN_METADATA$key2 !== void 0 && _COLUMN_METADATA$key2[tab]);
5910
+ }).concat(payableEntityColumns.filter(function (_ref3) {
5911
+ var isHidden = _ref3.isHidden;
5912
+ return !(isHidden !== null && isHidden !== void 0 && isHidden[tab] || isHidden !== null && isHidden !== void 0 && isHidden[kind]);
5913
+ }));
5914
+ };
5915
+
5916
+ var useFiltersAndPagination = function useFiltersAndPagination(_ref) {
5917
+ var payableEntityColumns = _ref.payableEntityColumns,
5918
+ kind = _ref.kind,
5919
+ initialTabs = _ref.initialTabs,
5920
+ tabMetaData = _ref.tabMetaData;
5921
+ var history = reactRouterDom.useHistory();
5922
+ var tabs = initialTabs.filter(function (tab) {
5923
+ var _tabMetaData$tab;
5924
+ return !((_tabMetaData$tab = tabMetaData[tab]) !== null && _tabMetaData$tab !== void 0 && (_tabMetaData$tab = _tabMetaData$tab.isHidden) !== null && _tabMetaData$tab !== void 0 && _tabMetaData$tab[kind]);
5925
+ });
5926
+ var _useState = React.useState(DEFAULT_SORT_PROPERTIES$1),
5927
+ _useState2 = _slicedToArray(_useState, 2),
5928
+ sortProperties = _useState2[0],
5929
+ setSortProperties = _useState2[1];
5930
+ var _useState3 = React.useState(false),
5931
+ _useState4 = _slicedToArray(_useState3, 2),
5932
+ isFilterButtonVisible = _useState4[0],
5933
+ setIsFilterButtonVisible = _useState4[1];
5934
+ var _useState5 = React.useState(false),
5935
+ _useState6 = _slicedToArray(_useState5, 2),
5936
+ isFilterPaneOpen = _useState6[0],
5937
+ setIsFilterPaneOpen = _useState6[1];
5938
+ var _useState7 = React.useState(buildDefaultPageProperties(tabs)),
5939
+ _useState8 = _slicedToArray(_useState7, 2),
5940
+ pageProperties = _useState8[0],
5941
+ setPageProperties = _useState8[1];
5942
+ var _useQueryParams = reactUtils.useQueryParams(),
5943
+ _useQueryParams$tab = _useQueryParams.tab,
5944
+ tab = _useQueryParams$tab === void 0 ? "all" : _useQueryParams$tab;
5945
+ var filterableColumns = buildFilterColumns(payableEntityColumns);
5946
+ var _useState9 = React.useState(neetoFiltersFrontend.buildFiltersFromURL(filterableColumns)),
5947
+ _useState10 = _slicedToArray(_useState9, 2),
5948
+ filters = _useState10[0],
5949
+ setFilters = _useState10[1];
5950
+ var _useState11 = React.useState(0),
5951
+ _useState12 = _slicedToArray(_useState11, 2),
5952
+ dataSize = _useState12[0],
5953
+ setDataSize = _useState12[1];
5954
+ var _getQueryParams = utils$3.getQueryParams(),
5955
+ _getQueryParams$searc = _getQueryParams.searchTerm,
5956
+ searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
5957
+ var handleTabChange = function handleTabChange(tab) {
5958
+ var _pageProperties$tab, _pageProperties$tab2;
5959
+ var queryParams = utils$3.getQueryParams({
5960
+ toCamelCase: false
5961
+ });
5962
+ var newParams = {
5963
+ tab: tab,
5964
+ page: (_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.page,
5965
+ page_size: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.pageSize
5966
+ };
5967
+ history.push(utils$3.buildUrl(window.location.pathname, ramda.mergeLeft(newParams, queryParams)));
5968
+ };
5969
+ return {
5970
+ isFilterButtonVisible: isFilterButtonVisible,
5971
+ isFilterPaneOpen: isFilterPaneOpen,
5972
+ pageProperties: pageProperties,
5973
+ filters: filters,
5974
+ searchTerm: searchTerm,
5975
+ tabs: tabs,
5976
+ tab: tab,
5977
+ filterableColumns: filterableColumns,
5978
+ dataSize: dataSize,
5979
+ sortProperties: sortProperties,
5980
+ setIsFilterButtonVisible: setIsFilterButtonVisible,
5981
+ setIsFilterPaneOpen: setIsFilterPaneOpen,
5982
+ setPageProperties: setPageProperties,
5983
+ setSortProperties: setSortProperties,
5984
+ setFilters: setFilters,
5985
+ handleTabChange: handleTabChange,
5986
+ setDataSize: setDataSize
5987
+ };
5988
+ };
5989
+
5990
+ var TAB$1 = {
5991
+ all: "all",
5992
+ successful: "successful",
5993
+ declined: "declined",
5994
+ refunded: "refunded"
5995
+ };
5996
+ var TABS$1 = Object.values(TAB$1);
5997
+
5998
+ var defaultShow$1 = function defaultShow() {
5999
+ return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdable/account"));
6000
+ };
6001
+ var show$1 = function show(holdableId) {
6002
+ return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdables/").concat(holdableId, "/account"));
6003
+ };
6004
+ var accountsApi$1 = {
6005
+ defaultShow: defaultShow$1,
6006
+ show: show$1
6007
+ };
6008
+
6009
+ var useFetchRazorpayAccount = function useFetchRazorpayAccount(holdableId) {
6010
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6011
+ return reactQuery.useQuery([QUERY_KEYS.SQUARE_ACCOUNT_DETAILS, holdableId], function () {
6012
+ if (neetoCist.isPresent(holdableId)) return accountsApi$1.show(holdableId);
6013
+ return accountsApi$1.defaultShow();
6014
+ }, options);
6015
+ };
6016
+
6017
+ var create$1 = function create(payload) {
6018
+ return axios__default["default"].post("".concat(BASE_URL, "/api/v1/public/razorpay/payments"), {
6019
+ payment: payload
6020
+ });
6021
+ };
6022
+ var defaultList$2 = function defaultList(payload) {
6023
+ return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdable/payments"), {
6024
+ params: payload
6025
+ });
6026
+ };
6027
+ var list$2 = function list(holdableId, payload) {
6028
+ return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdables/").concat(holdableId, "/payments"), {
6029
+ params: payload
6030
+ });
6031
+ };
6032
+ var paymentsApi$1 = {
6033
+ defaultList: defaultList$2,
6034
+ list: list$2,
6035
+ create: create$1
6036
+ };
6037
+
6038
+ var useFetchRazorpayPayments = function useFetchRazorpayPayments() {
6039
+ var holdableId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
6040
+ var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6041
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6042
+ return reactQuery.useQuery([QUERY_KEYS.SQUARE_PAYMENTS_LIST, payload], function () {
6043
+ if (neetoCist.isPresent(holdableId)) return paymentsApi$1.list(holdableId, payload);
6044
+ return paymentsApi$1.defaultList(payload);
6045
+ }, options);
6046
+ };
6047
+ var useCreateRazorpayPayment = function useCreateRazorpayPayment(options) {
6048
+ return reactQuery.useMutation(paymentsApi$1.create, options);
6049
+ };
6050
+
6051
+ var List$2 = function List(_ref) {
6052
+ var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
6053
+ var holdableId = _ref.holdableId,
6054
+ kind = _ref.kind,
6055
+ filters = _ref.filters,
6056
+ setIsFilterButtonVisible = _ref.setIsFilterButtonVisible,
6057
+ pageProperties = _ref.pageProperties,
6058
+ payableEntityColumns = _ref.payableEntityColumns,
6059
+ setPageProperties = _ref.setPageProperties,
6060
+ tab = _ref.tab,
6061
+ sortProperties = _ref.sortProperties,
6062
+ setSortProperties = _ref.setSortProperties,
6063
+ setDataSize = _ref.setDataSize;
6064
+ var history = reactRouterDom.useHistory();
6065
+ var _useTranslation = reactI18next.useTranslation(),
6066
+ t = _useTranslation.t;
6067
+ var columnData = buildPaymentColumns$1({
6068
+ tab: tab,
6069
+ kind: kind,
6070
+ payableEntityColumns: payableEntityColumns
6071
+ });
6072
+ var _useFetchRazorpayAcco = useFetchRazorpayAccount(),
6073
+ isAccountLoading = _useFetchRazorpayAcco.isLoading,
6074
+ _useFetchRazorpayAcco2 = _useFetchRazorpayAcco.data,
6075
+ _useFetchRazorpayAcco3 = _useFetchRazorpayAcco2 === void 0 ? {} : _useFetchRazorpayAcco2,
6076
+ account = _useFetchRazorpayAcco3.account;
6077
+ var payload = buildPayload({
6078
+ tab: tab,
6079
+ filters: filters,
6080
+ pageProperties: pageProperties,
6081
+ sortProperties: sortProperties
6082
+ });
6083
+ var _useHiddenColumns = Columns.useHiddenColumns("paymentDashboard_".concat(kind)),
6084
+ hideColumn = _useHiddenColumns.hideColumn,
6085
+ _useHiddenColumns$hid = _useHiddenColumns.hiddenColumns,
6086
+ hiddenColumns = _useHiddenColumns$hid === void 0 ? [] : _useHiddenColumns$hid;
6087
+ var _useFetchRazorpayPaym = useFetchRazorpayPayments(holdableId, payload, {
6088
+ enabled: isPaymentKind$1(kind)
6089
+ }),
6090
+ _useFetchRazorpayPaym2 = _useFetchRazorpayPaym.data,
6091
+ _useFetchRazorpayPaym3 = _useFetchRazorpayPaym2 === void 0 ? {} : _useFetchRazorpayPaym2,
6092
+ payments = _useFetchRazorpayPaym3.payments,
6093
+ _useFetchRazorpayPaym4 = _useFetchRazorpayPaym3.views,
6094
+ views = _useFetchRazorpayPaym4 === void 0 ? {} : _useFetchRazorpayPaym4,
6095
+ isPaymentsLoaidng = _useFetchRazorpayPaym.isLoading,
6096
+ isFetching = _useFetchRazorpayPaym.isFetching;
6097
+ React.useEffect(function () {
6098
+ setIsFilterButtonVisible(neetoCist.isPresent(payments) || neetoCist.isPresent(filters));
6099
+ setDataSize(views[tab]);
6100
+ }, [payments]);
6101
+ var handleTablePaginaton = function handleTablePaginaton(page, pageSize) {
6102
+ var queryParams = utils$3.getQueryParams({
6103
+ toCamelCase: false
6104
+ });
6105
+ history.push(utils$3.buildUrl(window.location.pathname, ramda.mergeLeft({
6106
+ page: page,
6107
+ page_size: pageSize
6108
+ }, queryParams)));
6109
+ setPageProperties(ramda.assoc(tab, {
6110
+ page: page,
6111
+ pageSize: pageSize
6112
+ }));
6113
+ };
6114
+ var handleTableChange = function handleTableChange(_, __, sorter) {
6115
+ setSortProperties(neetoCist.isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
6116
+ sortBy: neetoCist.camelToSnakeCase(sorter.field),
6117
+ orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
6118
+ } : DEFAULT_SORT_PROPERTIES$1);
6119
+ };
6120
+ var visibleColumns = columnData.filter(function (_ref2) {
6121
+ var dataIndex = _ref2.dataIndex;
6122
+ return !hiddenColumns.includes(processDataIndex(dataIndex));
6123
+ });
6124
+ if (isAccountLoading || isPaymentsLoaidng) {
6125
+ return /*#__PURE__*/React__default["default"].createElement(PageLoader__default["default"], null);
6126
+ }
6127
+ if (!(account !== null && account !== void 0 && account.isConnected) && views <= 0 || !neetoCist.isPresent(payments)) {
6128
+ return /*#__PURE__*/React__default["default"].createElement("div", {
6129
+ className: "flex h-full w-full items-center justify-center"
6130
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.NoData, {
6131
+ title: tab === TAB$1.all ? t("neetoPayments.emptyState.".concat(kind)) : t("neetoPayments.emptyState.".concat(kind, "WithStatus"), {
6132
+ status: tab
6133
+ })
6134
+ }));
6135
+ }
6136
+ return /*#__PURE__*/React__default["default"].createElement(TableWrapper__default["default"], {
6137
+ hasPagination: views > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
6138
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Table, {
6139
+ fixedHeight: true,
6140
+ allowRowClick: false,
6141
+ columnData: visibleColumns,
6142
+ currentPageNumber: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.page,
6143
+ handlePageChange: handleTablePaginaton,
6144
+ loading: isFetching,
6145
+ rowData: buildRowData({
6146
+ data: payments,
6147
+ pageProperties: pageProperties,
6148
+ tab: tab
6149
+ }),
6150
+ rowSelection: false,
6151
+ sortDirections: SORT_DIRECTIONS,
6152
+ totalCount: views,
6153
+ paginationProps: {
6154
+ showSizeChanger: true,
6155
+ hideOnSinglePage: true,
6156
+ pageSize: (_pageProperties$tab3 = pageProperties[tab]) === null || _pageProperties$tab3 === void 0 ? void 0 : _pageProperties$tab3.pageSize,
6157
+ total: views
6158
+ },
6159
+ onChange: handleTableChange,
6160
+ onColumnHide: function onColumnHide(columnData) {
6161
+ hideColumn(processDataIndex(columnData.dataIndex));
6162
+ }
6163
+ }));
6164
+ };
6165
+
6166
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6167
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6168
+ var RazorpayDashboard = function RazorpayDashboard(_ref) {
6169
+ var searchProps = _ref.searchProps,
6170
+ _ref$headerProps = _ref.headerProps,
6171
+ headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
6172
+ _ref$holdableId = _ref.holdableId,
6173
+ holdableId = _ref$holdableId === void 0 ? null : _ref$holdableId,
6174
+ _ref$payableEntityCol = _ref.payableEntityColumns,
6175
+ payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol,
6176
+ _ref$kind = _ref.kind,
6177
+ kind = _ref$kind === void 0 ? "razorpayPayment" : _ref$kind;
6178
+ var _useState = React.useState(false),
6179
+ _useState2 = _slicedToArray(_useState, 2),
6180
+ showExportModal = _useState2[0],
6181
+ setShowExportModal = _useState2[1];
6182
+ var _useTranslation = reactI18next.useTranslation(),
6183
+ t = _useTranslation.t;
6184
+ var filterPaginationState = useFiltersAndPagination({
6185
+ payableEntityColumns: payableEntityColumns,
6186
+ kind: kind,
6187
+ initialTabs: TABS$1,
6188
+ tabMetaData: {}
6189
+ });
6190
+ var filters = filterPaginationState.filters,
6191
+ setIsFilterButtonVisible = filterPaginationState.setIsFilterButtonVisible,
6192
+ pageProperties = filterPaginationState.pageProperties,
6193
+ setPageProperties = filterPaginationState.setPageProperties,
6194
+ sortProperties = filterPaginationState.sortProperties,
6195
+ setSortProperties = filterPaginationState.setSortProperties,
6196
+ tab = filterPaginationState.tab,
6197
+ setDataSize = filterPaginationState.setDataSize;
6198
+ return /*#__PURE__*/React__default["default"].createElement(FilterWrapper, _extends$1({
6199
+ title: t("neetoPayments.common.razorpayPayments")
6200
+ }, _objectSpread$2({
6201
+ headerProps: headerProps,
6202
+ kind: kind,
6203
+ payableEntityColumns: payableEntityColumns,
6204
+ searchProps: searchProps,
6205
+ setShowExportModal: setShowExportModal
6206
+ }, filterPaginationState)), /*#__PURE__*/React__default["default"].createElement(List$2, {
6207
+ filters: filters,
6208
+ holdableId: holdableId,
6209
+ kind: kind,
6210
+ pageProperties: pageProperties,
6211
+ payableEntityColumns: payableEntityColumns,
6212
+ setDataSize: setDataSize,
6213
+ setIsFilterButtonVisible: setIsFilterButtonVisible,
6214
+ setPageProperties: setPageProperties,
6215
+ setSortProperties: setSortProperties,
6216
+ sortProperties: sortProperties,
6217
+ tab: tab
6218
+ }), /*#__PURE__*/React__default["default"].createElement(ExportModal$1, {
6219
+ filters: filters,
6220
+ holdableId: holdableId,
6221
+ kind: kind,
6222
+ setShowExportModal: setShowExportModal,
6223
+ showExportModal: showExportModal,
6224
+ sortProperties: sortProperties,
6225
+ tab: tab
6226
+ }));
6227
+ };
6228
+ var index$1 = reactUtils.withTitle(withReactQuery(RazorpayDashboard), i18next.t("neetoPayments.common.razorpayPayments"));
6229
+
6230
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
6231
+ try {
6232
+ var info = gen[key](arg);
6233
+ var value = info.value;
6234
+ } catch (error) {
6235
+ reject(error);
6236
+ return;
6237
+ }
6238
+ if (info.done) {
6239
+ resolve(value);
6240
+ } else {
6241
+ Promise.resolve(value).then(_next, _throw);
6242
+ }
6243
+ }
6244
+ function _asyncToGenerator(fn) {
6245
+ return function () {
6246
+ var self = this,
6247
+ args = arguments;
6248
+ return new Promise(function (resolve, reject) {
6249
+ var gen = fn.apply(self, args);
6250
+ function _next(value) {
6251
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
6252
+ }
6253
+ function _throw(err) {
6254
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
6255
+ }
6256
+ _next(undefined);
6257
+ });
6258
+ };
6259
+ }
6260
+
6261
+ var regeneratorRuntime$1 = {exports: {}};
6262
+
6263
+ var _typeof = {exports: {}};
6264
+
6265
+ _typeof.exports;
6266
+
6267
+ (function (module) {
6268
+ function _typeof(o) {
6269
+ "@babel/helpers - typeof";
6270
+
6271
+ return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
6272
+ return typeof o;
6273
+ } : function (o) {
6274
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
6275
+ }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
5644
6276
  }
5645
6277
  module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
5646
6278
  } (_typeof));
@@ -5960,527 +6592,250 @@ var regeneratorRuntimeExports = regeneratorRuntime$1.exports;
5960
6592
  // TODO(Babel 8): Remove this file.
5961
6593
 
5962
6594
  var runtime = regeneratorRuntimeExports();
5963
- var regenerator = runtime;
5964
-
5965
- // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
5966
- try {
5967
- regeneratorRuntime = runtime;
5968
- } catch (accidentalStrictMode) {
5969
- if (typeof globalThis === "object") {
5970
- globalThis.regeneratorRuntime = runtime;
5971
- } else {
5972
- Function("r", "regeneratorRuntime = r")(runtime);
5973
- }
5974
- }
5975
-
5976
- var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
5977
-
5978
- var useSquarePayment = function useSquarePayment() {
5979
- var _useState = React.useState(),
5980
- _useState2 = _slicedToArray(_useState, 2),
5981
- instance = _useState2[0],
5982
- setInstance = _useState2[1];
5983
- var applicationId = process.env.SQUARE_APPLICATION_ID;
5984
- var locationId = process.env.SQUARE_CLIENT_LOCATION;
5985
- React.useEffect(function () {
5986
- var loadPayment = /*#__PURE__*/function () {
5987
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
5988
- var square, _yield$square, payments, paymentInstance;
5989
- return _regeneratorRuntime.wrap(function _callee$(_context) {
5990
- while (1) switch (_context.prev = _context.next) {
5991
- case 0:
5992
- square = function square() {
5993
- return Promise.resolve().then(function () { return require('./index-042b6907.js'); });
5994
- };
5995
- _context.next = 3;
5996
- return square();
5997
- case 3:
5998
- _yield$square = _context.sent;
5999
- payments = _yield$square.payments;
6000
- _context.next = 7;
6001
- return payments(applicationId, locationId);
6002
- case 7:
6003
- paymentInstance = _context.sent;
6004
- if (paymentInstance) {
6005
- _context.next = 10;
6006
- break;
6007
- }
6008
- throw new Error("Square Web Payments SDK failed to load");
6009
- case 10:
6010
- setInstance(paymentInstance);
6011
- case 11:
6012
- case "end":
6013
- return _context.stop();
6014
- }
6015
- }, _callee);
6016
- }));
6017
- return function loadPayment() {
6018
- return _ref.apply(this, arguments);
6019
- };
6020
- }();
6021
- if (applicationId && locationId) loadPayment();
6022
- }, [applicationId, locationId]);
6023
- return instance;
6024
- };
6025
-
6026
- var SQUARE_EVENTS = ["focusClassAdded", "focusClassRemoved", "errorClassAdded", "errorClassRemoved", "cardBrandChanged", "postalCodeChanged"];
6027
- var DEFAULT_CARD_CONTAINER_ID = "square-card-container";
6028
- var DEFAULT_SQUARE_CARD_OPTIONS = {};
6029
-
6030
- var SquareCard = function SquareCard(_ref) {
6031
- var card = _ref.card,
6032
- setCard = _ref.setCard,
6033
- _ref$id = _ref.id,
6034
- id = _ref$id === void 0 ? DEFAULT_CARD_CONTAINER_ID : _ref$id,
6035
- _ref$onChange = _ref.onChange,
6036
- onChange = _ref$onChange === void 0 ? neetoCist.noop : _ref$onChange,
6037
- _ref$options = _ref.options,
6038
- options = _ref$options === void 0 ? DEFAULT_SQUARE_CARD_OPTIONS : _ref$options,
6039
- _ref$disabled = _ref.disabled,
6040
- disabled = _ref$disabled === void 0 ? false : _ref$disabled;
6041
- var payments = useSquarePayment();
6042
- React.useEffect(function () {
6043
- var fetchCard = /*#__PURE__*/function () {
6044
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
6045
- var cardResponse;
6046
- return _regeneratorRuntime.wrap(function _callee$(_context) {
6047
- while (1) switch (_context.prev = _context.next) {
6048
- case 0:
6049
- _context.next = 2;
6050
- return payments === null || payments === void 0 ? void 0 : payments.card();
6051
- case 2:
6052
- cardResponse = _context.sent;
6053
- _context.next = 5;
6054
- return cardResponse === null || cardResponse === void 0 ? void 0 : cardResponse.attach("#".concat(id));
6055
- case 5:
6056
- setCard(cardResponse || null);
6057
- case 6:
6058
- case "end":
6059
- return _context.stop();
6060
- }
6061
- }, _callee);
6062
- }));
6063
- return function fetchCard() {
6064
- return _ref2.apply(this, arguments);
6065
- };
6066
- }();
6067
- fetchCard();
6068
- }, [payments, id]);
6069
- React.useEffect(function () {
6070
- SQUARE_EVENTS.forEach(function (event) {
6071
- return card === null || card === void 0 ? void 0 : card.addEventListener(event, onChange);
6072
- });
6073
- }, [card, onChange]);
6074
- React.useEffect(function () {
6075
- card === null || card === void 0 || card.configure(options);
6076
- }, [card, options]);
6077
- return /*#__PURE__*/React__default["default"].createElement("div", {
6078
- id: id,
6079
- className: classNames__default["default"]({
6080
- "pointer-events-none": disabled,
6081
- "text-center": !card
6082
- })
6083
- }, !card && /*#__PURE__*/React__default["default"].createElement(neetoui.Spinner, null));
6084
- };
6085
-
6086
- var renderIdentifier$1 = function renderIdentifier() {
6087
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
6088
- _ref$identifier = _ref.identifier,
6089
- identifier = _ref$identifier === void 0 ? "" : _ref$identifier;
6090
- var isTemporaryIdentifier = identifier.startsWith("temp_");
6091
- if (isTemporaryIdentifier) {
6092
- return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
6093
- content: i18next.t("neetoPayments.tooltipContent.paymentIdentifierUnavailable"),
6094
- position: "top"
6095
- }, /*#__PURE__*/React__default["default"].createElement("div", {
6096
- className: "text-center"
6097
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
6098
- style: "body2"
6099
- }, i18next.t("neetoPayments.common.notAvailable"))));
6100
- }
6101
- return /*#__PURE__*/React__default["default"].createElement(CopyButtonWrapper, {
6102
- content: identifier
6103
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
6104
- href: "https://dashboard.razorpay.com/app/payments/".concat(identifier),
6105
- label: identifier,
6106
- size: "small",
6107
- style: "link",
6108
- target: "_blank"
6109
- }));
6110
- };
6111
-
6112
- var COLUMNS$1 = [{
6113
- title: i18next.t("neetoPayments.common.id"),
6114
- dataIndex: "id",
6115
- key: "id",
6116
- width: "72px",
6117
- isHidable: false
6118
- }, {
6119
- title: i18next.t("neetoPayments.common.identifier"),
6120
- dataIndex: "identifier",
6121
- key: "identifier",
6122
- width: "290px",
6123
- render: renderIdentifier$1,
6124
- isHidable: false
6125
- }, {
6126
- title: i18next.t("neetoPayments.common.status"),
6127
- dataIndex: "status",
6128
- key: "status",
6129
- sorter: true,
6130
- width: "150px",
6131
- render: renderStatus("payment"),
6132
- isHidable: false
6133
- }, {
6134
- title: i18next.t("neetoPayments.common.amount"),
6135
- dataIndex: "amount",
6136
- key: "amount",
6137
- sorter: true,
6138
- width: "150px"
6139
- }, {
6140
- title: i18next.t("neetoPayments.common.paymentTime"),
6141
- dataIndex: "paymentAt",
6142
- key: "paymentTime",
6143
- sorter: true,
6144
- width: "220px",
6145
- render: renderDate
6146
- }];
6147
- var COLUMN_METADATA$1 = {
6148
- status: {
6149
- isHidden: {
6150
- successful: true,
6151
- declined: true,
6152
- pending: true,
6153
- refunded: true
6154
- }
6155
- }
6156
- };
6157
-
6158
- ramda.equals("razorpayRefund");
6159
- var isPaymentKind$1 = ramda.equals("razorpayPayment");
6160
- var buildPaymentColumns$1 = function buildPaymentColumns(_ref) {
6161
- var tab = _ref.tab,
6162
- kind = _ref.kind,
6163
- _ref$payableEntityCol = _ref.payableEntityColumns,
6164
- payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol;
6165
- return COLUMNS$1.filter(function (_ref2) {
6166
- var _COLUMN_METADATA$key, _COLUMN_METADATA$key2;
6167
- var key = _ref2.key;
6168
- return !((_COLUMN_METADATA$key = COLUMN_METADATA$1[key]) !== null && _COLUMN_METADATA$key !== void 0 && (_COLUMN_METADATA$key = _COLUMN_METADATA$key.isHidden) !== null && _COLUMN_METADATA$key !== void 0 && _COLUMN_METADATA$key[kind] || (_COLUMN_METADATA$key2 = COLUMN_METADATA$1[key]) !== null && _COLUMN_METADATA$key2 !== void 0 && (_COLUMN_METADATA$key2 = _COLUMN_METADATA$key2.isHidden) !== null && _COLUMN_METADATA$key2 !== void 0 && _COLUMN_METADATA$key2[tab]);
6169
- }).concat(payableEntityColumns.filter(function (_ref3) {
6170
- var isHidden = _ref3.isHidden;
6171
- return !(isHidden !== null && isHidden !== void 0 && isHidden[tab] || isHidden !== null && isHidden !== void 0 && isHidden[kind]);
6172
- }));
6173
- };
6595
+ var regenerator = runtime;
6174
6596
 
6175
- function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6176
- function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6177
- var FilterWrapper = function FilterWrapper(_ref) {
6178
- var _ref$setShowExportMod = _ref.setShowExportModal,
6179
- setShowExportModal = _ref$setShowExportMod === void 0 ? neetoCist.noop : _ref$setShowExportMod,
6180
- searchProps = _ref.searchProps,
6181
- _ref$headerProps = _ref.headerProps,
6182
- headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
6183
- children = _ref.children,
6184
- title = _ref.title,
6185
- searchTerm = _ref.searchTerm,
6186
- filterableColumns = _ref.filterableColumns,
6187
- isFilterButtonVisible = _ref.isFilterButtonVisible,
6188
- isFilterPaneOpen = _ref.isFilterPaneOpen,
6189
- tabs = _ref.tabs,
6190
- tab = _ref.tab,
6191
- setIsFilterPaneOpen = _ref.setIsFilterPaneOpen,
6192
- setFilters = _ref.setFilters,
6193
- handleTabChange = _ref.handleTabChange,
6194
- dataSize = _ref.dataSize,
6195
- kind = _ref.kind,
6196
- payableEntityColumns = _ref.payableEntityColumns;
6197
- var _useTransition = React.useTransition(),
6198
- _useTransition2 = _slicedToArray(_useTransition, 2);
6199
- _useTransition2[0];
6200
- var startTransition = _useTransition2[1];
6597
+ // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
6598
+ try {
6599
+ regeneratorRuntime = runtime;
6600
+ } catch (accidentalStrictMode) {
6601
+ if (typeof globalThis === "object") {
6602
+ globalThis.regeneratorRuntime = runtime;
6603
+ } else {
6604
+ Function("r", "regeneratorRuntime = r")(runtime);
6605
+ }
6606
+ }
6607
+
6608
+ var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
6609
+
6610
+ var loadScript$1 = function loadScript(src) {
6611
+ return new Promise(function (resolve) {
6612
+ var script = document.createElement("script");
6613
+ script.src = src;
6614
+ script.onload = function () {
6615
+ resolve(true);
6616
+ };
6617
+ script.onerror = function () {
6618
+ resolve(false);
6619
+ };
6620
+ document.body.appendChild(script);
6621
+ });
6622
+ };
6623
+ var RazorpayPaymentButton = function RazorpayPaymentButton(_ref) {
6624
+ var label = _ref.label,
6625
+ payableId = _ref.payableId,
6626
+ discountCode = _ref.discountCode,
6627
+ email = _ref.email,
6628
+ name = _ref.name,
6629
+ _ref$isCardPreservabl = _ref.isCardPreservable,
6630
+ isCardPreservable = _ref$isCardPreservabl === void 0 ? false : _ref$isCardPreservabl,
6631
+ _ref$onBeforePayment = _ref.onBeforePayment,
6632
+ onBeforePayment = _ref$onBeforePayment === void 0 ? neetoCist.noop : _ref$onBeforePayment,
6633
+ _ref$onSuccessfulPaym = _ref.onSuccessfulPayment,
6634
+ onSuccessfulPayment = _ref$onSuccessfulPaym === void 0 ? neetoCist.noop : _ref$onSuccessfulPaym,
6635
+ _ref$onFailedPayment = _ref.onFailedPayment,
6636
+ onFailedPayment = _ref$onFailedPayment === void 0 ? neetoCist.noop : _ref$onFailedPayment;
6201
6637
  var _useTranslation = reactI18next.useTranslation(),
6202
6638
  t = _useTranslation.t;
6203
- var isTabsVisible = isFilterButtonVisible || tab !== "all";
6204
- var searchKeywordProps = _objectSpread$3(_objectSpread$3({}, searchProps), {}, {
6205
- value: searchTerm.trim(),
6206
- setValue: neetoCist.noop
6207
- });
6208
- var handleFiltersChange = function handleFiltersChange(filters) {
6209
- startTransition(function () {
6210
- setFilters(filters);
6211
- });
6212
- };
6213
- var columnData = buildPaymentColumns$1({
6214
- tab: tab,
6215
- kind: kind,
6216
- payableEntityColumns: payableEntityColumns
6217
- });
6218
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header__default["default"], _extends$1({}, _objectSpread$3(_objectSpread$3({}, headerProps), {}, {
6219
- title: title
6220
- }), {
6221
- searchProps: {
6222
- placeholder: searchKeywordProps.placeholder,
6223
- className: "w-80"
6224
- }
6225
- })), isTabsVisible && /*#__PURE__*/React__default["default"].createElement(neetoui.Tab, null, tabs.map(function (item) {
6226
- return /*#__PURE__*/React__default["default"].createElement(neetoui.Tab.Item, {
6227
- active: tab === item,
6228
- key: item,
6229
- onClick: function onClick() {
6230
- return handleTabChange(item);
6231
- }
6232
- }, t("neetoPayments.common.".concat(item)));
6233
- })), /*#__PURE__*/React__default["default"].createElement(SubHeader__default["default"], {
6234
- className: "mt-4",
6235
- leftActionBlock: isTabsVisible && dataSize !== 0 && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
6236
- className: "neeto-ui-gray-800 mr-2 font-semibold",
6237
- component: "h4"
6238
- }, tab === "all" ? t("neetoPayments.countOf.".concat(kind), {
6239
- count: dataSize
6240
- }) : t("neetoPayments.countOf.".concat(kind, "WithStatus"), {
6241
- count: dataSize,
6242
- status: tab
6243
- })),
6244
- rightActionBlock: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoFiltersFrontend.Bar, {
6245
- columns: filterableColumns,
6246
- keyword: searchKeywordProps,
6247
- setIsPaneOpen: setIsFilterPaneOpen,
6248
- onChange: handleFiltersChange
6249
- }), isFilterButtonVisible && /*#__PURE__*/React__default["default"].createElement(SubHeader__default["default"].RightBlock, {
6250
- columnsButtonProps: {
6251
- columnData: columnData,
6252
- fixedColumns: DASHBOARD_MANDATORY_COLUMNS$1,
6253
- localStorageKey: "paymentDashboard_".concat(kind)
6254
- },
6255
- downloadButtonProps: {
6256
- onClick: function onClick() {
6257
- return setShowExportModal(true);
6639
+ var openRazorpayCheckout = /*#__PURE__*/function () {
6640
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options) {
6641
+ var script, checkout;
6642
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
6643
+ while (1) switch (_context.prev = _context.next) {
6644
+ case 0:
6645
+ _context.next = 2;
6646
+ return loadScript$1("https://checkout.razorpay.com/v1/checkout.js");
6647
+ case 2:
6648
+ script = _context.sent;
6649
+ if (script) {
6650
+ _context.next = 6;
6651
+ break;
6652
+ }
6653
+ logger.error(t("neetoPayments.razorpay.loadError"));
6654
+ return _context.abrupt("return");
6655
+ case 6:
6656
+ checkout = new window.Razorpay(options);
6657
+ checkout.open();
6658
+ case 8:
6659
+ case "end":
6660
+ return _context.stop();
6258
6661
  }
6259
- },
6260
- filterProps: {
6261
- columns: filterableColumns,
6262
- isOpen: isFilterPaneOpen,
6263
- keyword: searchKeywordProps,
6264
- setIsOpen: setIsFilterPaneOpen,
6265
- onChange: handleFiltersChange
6266
- }
6267
- }))
6268
- }), children);
6269
- };
6270
-
6271
- var renderIdentifier = function renderIdentifier() {
6272
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
6273
- _ref$identifier = _ref.identifier,
6274
- identifier = _ref$identifier === void 0 ? "" : _ref$identifier,
6275
- _ref$receiptUrl = _ref.receiptUrl,
6276
- receiptUrl = _ref$receiptUrl === void 0 ? "" : _ref$receiptUrl;
6277
- return /*#__PURE__*/React__default["default"].createElement(CopyButtonWrapper, {
6278
- content: identifier
6279
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
6280
- href: receiptUrl,
6281
- label: identifier,
6282
- size: "small",
6283
- style: "link",
6284
- target: "_blank"
6285
- }));
6286
- };
6287
- var truncatedText = function truncatedText(_ref2) {
6288
- var identifier = _ref2.identifier;
6289
- return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
6290
- content: identifier,
6291
- position: "top"
6292
- }, /*#__PURE__*/React__default["default"].createElement("div", {
6293
- className: "w-64 truncate"
6294
- }, identifier));
6295
- };
6296
-
6297
- var COLUMNS = [{
6298
- title: i18next.t("neetoPayments.common.id"),
6299
- dataIndex: "id",
6300
- key: "id",
6301
- width: "72px"
6302
- }, {
6303
- title: i18next.t("neetoPayments.common.identifier"),
6304
- dataIndex: "identifier",
6305
- key: "identifier",
6306
- width: "290px",
6307
- render: renderIdentifier
6308
- }, {
6309
- title: i18next.t("neetoPayments.common.status"),
6310
- dataIndex: "status",
6311
- key: "status",
6312
- sorter: true,
6313
- render: renderStatus("payment")
6314
- }, {
6315
- title: i18next.t("neetoPayments.common.identifier"),
6316
- dataIndex: "identifier",
6317
- key: "refundIdentifier",
6318
- width: "290px",
6319
- render: truncatedText
6320
- }, {
6321
- title: i18next.t("neetoPayments.common.status"),
6322
- dataIndex: "status",
6323
- key: "refundStatus",
6324
- sorter: true,
6325
- render: renderStatus("refund")
6326
- }, {
6327
- title: i18next.t("neetoPayments.common.paymentIdentifier"),
6328
- dataIndex: "payment",
6329
- key: "paymentIdentifier",
6330
- width: "290px",
6331
- render: renderIdentifier
6332
- }, {
6333
- title: i18next.t("neetoPayments.common.amount"),
6334
- dataIndex: "amount",
6335
- key: "amount",
6336
- sorter: true,
6337
- width: "150px"
6338
- }, {
6339
- title: i18next.t("neetoPayments.common.paymentTime"),
6340
- dataIndex: "updatedAt",
6341
- key: "paymentTime",
6342
- sorter: true,
6343
- width: "220px",
6344
- render: renderDate
6345
- }];
6346
- var COLUMN_METADATA = {
6347
- identifier: {
6348
- isHidden: {
6349
- squareRefund: true
6350
- }
6351
- },
6352
- status: {
6353
- isHidden: {
6354
- squareRefund: true,
6355
- completed: true,
6356
- failed: true
6357
- }
6358
- },
6359
- refundIdentifier: {
6360
- isHidden: {
6361
- squarePayment: true
6362
- }
6363
- },
6364
- refundStatus: {
6365
- isHidden: {
6366
- squarePayment: true,
6367
- completed: true,
6368
- pending: true,
6369
- rejected: true
6662
+ }, _callee);
6663
+ }));
6664
+ return function openRazorpayCheckout(_x) {
6665
+ return _ref2.apply(this, arguments);
6666
+ };
6667
+ }();
6668
+ var handlePayment = function handlePayment(response) {
6669
+ if (neetoCist.isNotPresent(response === null || response === void 0 ? void 0 : response.razorpay_signature)) {
6670
+ onFailedPayment();
6671
+ return;
6370
6672
  }
6371
- },
6372
- paymentIdentifier: {
6373
- isHidden: {
6374
- squarePayment: true
6673
+ onSuccessfulPayment();
6674
+ };
6675
+ var handleSuccess = function handleSuccess(_ref3) {
6676
+ var payment = _ref3.payment;
6677
+ if ((payment === null || payment === void 0 ? void 0 : payment.status) === "successful") {
6678
+ return onSuccessfulPayment();
6375
6679
  }
6376
- }
6680
+ var save = isCardPreservable ? 1 : 0;
6681
+ var options = {
6682
+ save: save,
6683
+ key: payment.publicKey,
6684
+ order_id: payment.orderIdentifier,
6685
+ customer_id: payment.customerIdentifier,
6686
+ prefill: {
6687
+ name: name,
6688
+ email: email
6689
+ },
6690
+ modal: {
6691
+ confirm_close: true,
6692
+ ondismiss: onFailedPayment
6693
+ },
6694
+ handler: handlePayment
6695
+ };
6696
+ return openRazorpayCheckout(ramda.mergeDeepLeft(RAZORPAY_PAYMENT_BUTTON_OPTIONS, options));
6697
+ };
6698
+ var _useCreateRazorpayPay = useCreateRazorpayPayment({
6699
+ onSuccess: handleSuccess
6700
+ }),
6701
+ isLoading = _useCreateRazorpayPay.isLoading,
6702
+ createRazorpayOrder = _useCreateRazorpayPay.mutate;
6703
+ var handleClick = function handleClick() {
6704
+ onBeforePayment();
6705
+ var payload = {
6706
+ payableId: payableId,
6707
+ discountCode: discountCode,
6708
+ customerAttributes: {
6709
+ email: email,
6710
+ name: name
6711
+ }
6712
+ };
6713
+ createRazorpayOrder(payload);
6714
+ };
6715
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
6716
+ disabled: isLoading,
6717
+ label: label || t("neetoPayments.common.pay"),
6718
+ loading: isLoading,
6719
+ onClick: handleClick
6720
+ });
6377
6721
  };
6378
6722
 
6379
- var isRefundKind = ramda.equals("squareRefund");
6380
- var isPaymentKind = ramda.equals("squarePayment");
6381
- var buildFilterColumns = function buildFilterColumns() {
6382
- var payableEntityColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
6383
- return ramda.concat(FILTER_COLUMNS$2, ramda.map(ramda.prop("filterProps"), neetoCist.filterBy({
6384
- isFilterable: true
6385
- }, payableEntityColumns)));
6386
- };
6387
- var buildPaymentColumns = function buildPaymentColumns(_ref) {
6388
- var tab = _ref.tab,
6389
- kind = _ref.kind,
6390
- _ref$payableEntityCol = _ref.payableEntityColumns,
6391
- payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol;
6392
- return COLUMNS.filter(function (_ref2) {
6393
- var _COLUMN_METADATA$key, _COLUMN_METADATA$key2;
6394
- var key = _ref2.key;
6395
- return !((_COLUMN_METADATA$key = COLUMN_METADATA[key]) !== null && _COLUMN_METADATA$key !== void 0 && (_COLUMN_METADATA$key = _COLUMN_METADATA$key.isHidden) !== null && _COLUMN_METADATA$key !== void 0 && _COLUMN_METADATA$key[kind] || (_COLUMN_METADATA$key2 = COLUMN_METADATA[key]) !== null && _COLUMN_METADATA$key2 !== void 0 && (_COLUMN_METADATA$key2 = _COLUMN_METADATA$key2.isHidden) !== null && _COLUMN_METADATA$key2 !== void 0 && _COLUMN_METADATA$key2[tab]);
6396
- }).concat(payableEntityColumns.filter(function (_ref3) {
6397
- var isHidden = _ref3.isHidden;
6398
- return !(isHidden !== null && isHidden !== void 0 && isHidden[tab] || isHidden !== null && isHidden !== void 0 && isHidden[kind]);
6399
- }));
6723
+ var useSquarePayment = function useSquarePayment() {
6724
+ var _useState = React.useState(),
6725
+ _useState2 = _slicedToArray(_useState, 2),
6726
+ instance = _useState2[0],
6727
+ setInstance = _useState2[1];
6728
+ var applicationId = process.env.SQUARE_APPLICATION_ID;
6729
+ var locationId = process.env.SQUARE_CLIENT_LOCATION;
6730
+ React.useEffect(function () {
6731
+ var loadPayment = /*#__PURE__*/function () {
6732
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
6733
+ var square, _yield$square, payments, paymentInstance;
6734
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
6735
+ while (1) switch (_context.prev = _context.next) {
6736
+ case 0:
6737
+ square = function square() {
6738
+ return Promise.resolve().then(function () { return require('./index-042b6907.js'); });
6739
+ };
6740
+ _context.next = 3;
6741
+ return square();
6742
+ case 3:
6743
+ _yield$square = _context.sent;
6744
+ payments = _yield$square.payments;
6745
+ _context.next = 7;
6746
+ return payments(applicationId, locationId);
6747
+ case 7:
6748
+ paymentInstance = _context.sent;
6749
+ if (paymentInstance) {
6750
+ _context.next = 10;
6751
+ break;
6752
+ }
6753
+ throw new Error("Square Web Payments SDK failed to load");
6754
+ case 10:
6755
+ setInstance(paymentInstance);
6756
+ case 11:
6757
+ case "end":
6758
+ return _context.stop();
6759
+ }
6760
+ }, _callee);
6761
+ }));
6762
+ return function loadPayment() {
6763
+ return _ref.apply(this, arguments);
6764
+ };
6765
+ }();
6766
+ if (applicationId && locationId) loadPayment();
6767
+ }, [applicationId, locationId]);
6768
+ return instance;
6400
6769
  };
6401
6770
 
6402
- var useFiltersAndPagination = function useFiltersAndPagination(_ref) {
6403
- var payableEntityColumns = _ref.payableEntityColumns,
6404
- kind = _ref.kind,
6405
- initialTabs = _ref.initialTabs,
6406
- tabMetaData = _ref.tabMetaData;
6407
- var history = reactRouterDom.useHistory();
6408
- var tabs = initialTabs.filter(function (tab) {
6409
- var _tabMetaData$tab;
6410
- return !((_tabMetaData$tab = tabMetaData[tab]) !== null && _tabMetaData$tab !== void 0 && (_tabMetaData$tab = _tabMetaData$tab.isHidden) !== null && _tabMetaData$tab !== void 0 && _tabMetaData$tab[kind]);
6411
- });
6412
- var _useState = React.useState(DEFAULT_SORT_PROPERTIES$1),
6413
- _useState2 = _slicedToArray(_useState, 2),
6414
- sortProperties = _useState2[0],
6415
- setSortProperties = _useState2[1];
6416
- var _useState3 = React.useState(false),
6417
- _useState4 = _slicedToArray(_useState3, 2),
6418
- isFilterButtonVisible = _useState4[0],
6419
- setIsFilterButtonVisible = _useState4[1];
6420
- var _useState5 = React.useState(false),
6421
- _useState6 = _slicedToArray(_useState5, 2),
6422
- isFilterPaneOpen = _useState6[0],
6423
- setIsFilterPaneOpen = _useState6[1];
6424
- var _useState7 = React.useState(buildDefaultPageProperties(tabs)),
6425
- _useState8 = _slicedToArray(_useState7, 2),
6426
- pageProperties = _useState8[0],
6427
- setPageProperties = _useState8[1];
6428
- var _useQueryParams = reactUtils.useQueryParams(),
6429
- _useQueryParams$tab = _useQueryParams.tab,
6430
- tab = _useQueryParams$tab === void 0 ? "all" : _useQueryParams$tab;
6431
- var filterableColumns = buildFilterColumns(payableEntityColumns);
6432
- var _useState9 = React.useState(neetoFiltersFrontend.buildFiltersFromURL(filterableColumns)),
6433
- _useState10 = _slicedToArray(_useState9, 2),
6434
- filters = _useState10[0],
6435
- setFilters = _useState10[1];
6436
- var _useState11 = React.useState(0),
6437
- _useState12 = _slicedToArray(_useState11, 2),
6438
- dataSize = _useState12[0],
6439
- setDataSize = _useState12[1];
6440
- var _getQueryParams = utils$3.getQueryParams(),
6441
- _getQueryParams$searc = _getQueryParams.searchTerm,
6442
- searchTerm = _getQueryParams$searc === void 0 ? "" : _getQueryParams$searc;
6443
- var handleTabChange = function handleTabChange(tab) {
6444
- var _pageProperties$tab, _pageProperties$tab2;
6445
- var queryParams = utils$3.getQueryParams({
6446
- toCamelCase: false
6771
+ var SQUARE_EVENTS = ["focusClassAdded", "focusClassRemoved", "errorClassAdded", "errorClassRemoved", "cardBrandChanged", "postalCodeChanged"];
6772
+ var DEFAULT_CARD_CONTAINER_ID = "square-card-container";
6773
+ var DEFAULT_SQUARE_CARD_OPTIONS = {};
6774
+
6775
+ var SquareCard = function SquareCard(_ref) {
6776
+ var card = _ref.card,
6777
+ setCard = _ref.setCard,
6778
+ _ref$id = _ref.id,
6779
+ id = _ref$id === void 0 ? DEFAULT_CARD_CONTAINER_ID : _ref$id,
6780
+ _ref$onChange = _ref.onChange,
6781
+ onChange = _ref$onChange === void 0 ? neetoCist.noop : _ref$onChange,
6782
+ _ref$options = _ref.options,
6783
+ options = _ref$options === void 0 ? DEFAULT_SQUARE_CARD_OPTIONS : _ref$options,
6784
+ _ref$disabled = _ref.disabled,
6785
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled;
6786
+ var payments = useSquarePayment();
6787
+ React.useEffect(function () {
6788
+ var fetchCard = /*#__PURE__*/function () {
6789
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
6790
+ var cardResponse;
6791
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
6792
+ while (1) switch (_context.prev = _context.next) {
6793
+ case 0:
6794
+ _context.next = 2;
6795
+ return payments === null || payments === void 0 ? void 0 : payments.card();
6796
+ case 2:
6797
+ cardResponse = _context.sent;
6798
+ _context.next = 5;
6799
+ return cardResponse === null || cardResponse === void 0 ? void 0 : cardResponse.attach("#".concat(id));
6800
+ case 5:
6801
+ setCard(cardResponse || null);
6802
+ case 6:
6803
+ case "end":
6804
+ return _context.stop();
6805
+ }
6806
+ }, _callee);
6807
+ }));
6808
+ return function fetchCard() {
6809
+ return _ref2.apply(this, arguments);
6810
+ };
6811
+ }();
6812
+ fetchCard();
6813
+ }, [payments, id]);
6814
+ React.useEffect(function () {
6815
+ SQUARE_EVENTS.forEach(function (event) {
6816
+ return card === null || card === void 0 ? void 0 : card.addEventListener(event, onChange);
6447
6817
  });
6448
- var newParams = {
6449
- tab: tab,
6450
- page: (_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.page,
6451
- page_size: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.pageSize
6452
- };
6453
- history.push(utils$3.buildUrl(window.location.pathname, ramda.mergeLeft(newParams, queryParams)));
6454
- };
6455
- return {
6456
- isFilterButtonVisible: isFilterButtonVisible,
6457
- isFilterPaneOpen: isFilterPaneOpen,
6458
- pageProperties: pageProperties,
6459
- filters: filters,
6460
- searchTerm: searchTerm,
6461
- tabs: tabs,
6462
- tab: tab,
6463
- filterableColumns: filterableColumns,
6464
- dataSize: dataSize,
6465
- sortProperties: sortProperties,
6466
- setIsFilterButtonVisible: setIsFilterButtonVisible,
6467
- setIsFilterPaneOpen: setIsFilterPaneOpen,
6468
- setPageProperties: setPageProperties,
6469
- setSortProperties: setSortProperties,
6470
- setFilters: setFilters,
6471
- handleTabChange: handleTabChange,
6472
- setDataSize: setDataSize
6473
- };
6818
+ }, [card, onChange]);
6819
+ React.useEffect(function () {
6820
+ card === null || card === void 0 || card.configure(options);
6821
+ }, [card, options]);
6822
+ return /*#__PURE__*/React__default["default"].createElement("div", {
6823
+ id: id,
6824
+ className: classNames__default["default"]({
6825
+ "pointer-events-none": disabled,
6826
+ "text-center": !card
6827
+ })
6828
+ }, !card && /*#__PURE__*/React__default["default"].createElement(neetoui.Spinner, null));
6474
6829
  };
6475
6830
 
6476
- var TAB$1 = {
6831
+ var TAB = {
6477
6832
  all: "all",
6478
6833
  completed: "completed",
6479
6834
  pending: "pending",
6480
6835
  rejected: "rejected",
6481
6836
  failed: "failed"
6482
6837
  };
6483
- var TABS$1 = Object.values(TAB$1);
6838
+ var TABS = Object.values(TAB);
6484
6839
  var TAB_METADATA = {
6485
6840
  all: {},
6486
6841
  completed: {},
@@ -6501,52 +6856,52 @@ var TAB_METADATA = {
6501
6856
  }
6502
6857
  };
6503
6858
 
6504
- var defaultShow$1 = function defaultShow() {
6859
+ var defaultShow = function defaultShow() {
6505
6860
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdable/account"));
6506
6861
  };
6507
- var show$1 = function show(holdableId) {
6862
+ var show = function show(holdableId) {
6508
6863
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdables/").concat(holdableId, "/account"));
6509
6864
  };
6510
- var accountsApi$1 = {
6511
- show: show$1,
6512
- defaultShow: defaultShow$1
6865
+ var accountsApi = {
6866
+ show: show,
6867
+ defaultShow: defaultShow
6513
6868
  };
6514
6869
 
6515
- var defaultList$2 = function defaultList(payload) {
6870
+ var defaultList$1 = function defaultList(payload) {
6516
6871
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdable/payments"), {
6517
6872
  params: payload
6518
6873
  });
6519
6874
  };
6520
- var list$2 = function list(holdableId, payload) {
6875
+ var list$1 = function list(holdableId, payload) {
6521
6876
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdables/").concat(holdableId, "/payments"), {
6522
6877
  params: payload
6523
6878
  });
6524
6879
  };
6525
- var paymentsApi$1 = {
6526
- defaultList: defaultList$2,
6527
- list: list$2
6880
+ var paymentsApi = {
6881
+ defaultList: defaultList$1,
6882
+ list: list$1
6528
6883
  };
6529
6884
 
6530
- var defaultList$1 = function defaultList(payload) {
6885
+ var defaultList = function defaultList(payload) {
6531
6886
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdable/refunds"), {
6532
6887
  params: payload
6533
6888
  });
6534
6889
  };
6535
- var list$1 = function list(holdableId, payload) {
6890
+ var list = function list(holdableId, payload) {
6536
6891
  return axios__default["default"].get("".concat(BASE_URL, "/api/v1/square/holdables/").concat(holdableId, "/refunds"), {
6537
6892
  params: payload
6538
6893
  });
6539
6894
  };
6540
6895
  var refundsapi = {
6541
- defaultList: defaultList$1,
6542
- list: list$1
6896
+ defaultList: defaultList,
6897
+ list: list
6543
6898
  };
6544
6899
 
6545
6900
  var useFetchSquareAccount = function useFetchSquareAccount(holdableId) {
6546
6901
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6547
6902
  return reactQuery.useQuery([QUERY_KEYS.SQUARE_ACCOUNT_DETAILS, holdableId], function () {
6548
- if (neetoCist.isPresent(holdableId)) return accountsApi$1.show(holdableId);
6549
- return accountsApi$1.defaultShow();
6903
+ if (neetoCist.isPresent(holdableId)) return accountsApi.show(holdableId);
6904
+ return accountsApi.defaultShow();
6550
6905
  }, options);
6551
6906
  };
6552
6907
  var useFetchSquarePayments = function useFetchSquarePayments() {
@@ -6554,8 +6909,8 @@ var useFetchSquarePayments = function useFetchSquarePayments() {
6554
6909
  var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6555
6910
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6556
6911
  return reactQuery.useQuery([QUERY_KEYS.SQUARE_PAYMENTS_LIST, payload], function () {
6557
- if (neetoCist.isPresent(holdableId)) return paymentsApi$1.list(holdableId, payload);
6558
- return paymentsApi$1.defaultList(payload);
6912
+ if (neetoCist.isPresent(holdableId)) return paymentsApi.list(holdableId, payload);
6913
+ return paymentsApi.defaultList(payload);
6559
6914
  }, options);
6560
6915
  };
6561
6916
  var useFetchSquareRefunds = function useFetchSquareRefunds() {
@@ -6613,245 +6968,26 @@ var List$1 = function List(_ref) {
6613
6968
  var _useFetchSquareAccoun = useFetchSquareAccount(holdableId),
6614
6969
  isSquareAccountLoading = _useFetchSquareAccoun.isLoading,
6615
6970
  _useFetchSquareAccoun2 = _useFetchSquareAccoun.data,
6616
- _useFetchSquareAccoun3 = _useFetchSquareAccoun2 === void 0 ? {} : _useFetchSquareAccoun2,
6617
- squareAccount = _useFetchSquareAccoun3.account;
6618
- var _useFetchSquareData = useFetchSquareData({
6619
- kind: kind,
6620
- holdableId: holdableId,
6621
- payload: buildPayload({
6622
- tab: tab,
6623
- filters: filters,
6624
- pageProperties: pageProperties,
6625
- sortProperties: sortProperties
6626
- })
6627
- }),
6628
- data = _useFetchSquareData.data,
6629
- isDataLoading = _useFetchSquareData.isDataLoading,
6630
- isDataFetching = _useFetchSquareData.isDataFetching,
6631
- dataSize = _useFetchSquareData.dataSize;
6632
- React.useEffect(function () {
6633
- setIsFilterButtonVisible(neetoCist.isPresent(data) || neetoCist.isPresent(filters));
6634
- setDataSize(dataSize);
6635
- }, [data]);
6636
- var handleTablePaginaton = function handleTablePaginaton(page, pageSize) {
6637
- var queryParams = utils$3.getQueryParams({
6638
- toCamelCase: false
6639
- });
6640
- history.push(utils$3.buildUrl(window.location.pathname, ramda.mergeLeft({
6641
- page: page,
6642
- page_size: pageSize
6643
- }, queryParams)));
6644
- setPageProperties(ramda.assoc(tab, {
6645
- page: page,
6646
- pageSize: pageSize
6647
- }));
6648
- };
6649
- var handleTableChange = function handleTableChange(_, __, sorter) {
6650
- setSortProperties(neetoCist.isPresent(sorter === null || sorter === void 0 ? void 0 : sorter.column) ? {
6651
- sortBy: neetoCist.camelToSnakeCase(sorter.field),
6652
- orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
6653
- } : DEFAULT_SORT_PROPERTIES$1);
6654
- };
6655
- if (isSquareAccountLoading || isDataLoading) {
6656
- return /*#__PURE__*/React__default["default"].createElement(PageLoader__default["default"], null);
6657
- }
6658
- if (!(squareAccount !== null && squareAccount !== void 0 && squareAccount.isConnected) && dataSize <= 0 || !neetoCist.isPresent(data)) {
6659
- return /*#__PURE__*/React__default["default"].createElement("div", {
6660
- className: "flex h-full w-full items-center justify-center"
6661
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.NoData, {
6662
- title: tab === TAB$1.all ? t("neetoPayments.emptyState.".concat(kind)) : t("neetoPayments.emptyState.".concat(kind, "WithStatus"), {
6663
- status: tab
6664
- })
6665
- }));
6666
- }
6667
- return /*#__PURE__*/React__default["default"].createElement(TableWrapper__default["default"], {
6668
- hasPagination: dataSize > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
6669
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Table, {
6670
- columnData: columnData,
6671
- fixedHeight: true,
6672
- allowRowClick: false,
6673
- currentPageNumber: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.page,
6674
- handlePageChange: handleTablePaginaton,
6675
- loading: isDataFetching,
6676
- rowData: buildRowData({
6677
- data: data,
6678
- pageProperties: pageProperties,
6679
- tab: tab
6680
- }),
6681
- rowSelection: false,
6682
- sortDirections: SORT_DIRECTIONS,
6683
- totalCount: dataSize,
6684
- paginationProps: {
6685
- showSizeChanger: true,
6686
- hideOnSinglePage: true,
6687
- pageSize: (_pageProperties$tab3 = pageProperties[tab]) === null || _pageProperties$tab3 === void 0 ? void 0 : _pageProperties$tab3.pageSize,
6688
- total: dataSize
6689
- },
6690
- onChange: handleTableChange
6691
- }));
6692
- };
6693
-
6694
- function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6695
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6696
- var SquareDashboard = function SquareDashboard(_ref) {
6697
- var searchProps = _ref.searchProps,
6698
- _ref$headerProps = _ref.headerProps,
6699
- headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
6700
- _ref$holdableId = _ref.holdableId,
6701
- holdableId = _ref$holdableId === void 0 ? null : _ref$holdableId,
6702
- _ref$payableEntityCol = _ref.payableEntityColumns,
6703
- payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol,
6704
- _ref$kind = _ref.kind,
6705
- kind = _ref$kind === void 0 ? "squarePayment" : _ref$kind;
6706
- var _useTranslation = reactI18next.useTranslation(),
6707
- t = _useTranslation.t;
6708
- var filterPaginationState = useFiltersAndPagination({
6709
- payableEntityColumns: payableEntityColumns,
6710
- kind: kind,
6711
- initialTabs: TABS$1,
6712
- tabMetaData: TAB_METADATA
6713
- });
6714
- var filters = filterPaginationState.filters,
6715
- setIsFilterButtonVisible = filterPaginationState.setIsFilterButtonVisible,
6716
- pageProperties = filterPaginationState.pageProperties,
6717
- setPageProperties = filterPaginationState.setPageProperties,
6718
- sortProperties = filterPaginationState.sortProperties,
6719
- setSortProperties = filterPaginationState.setSortProperties,
6720
- tab = filterPaginationState.tab,
6721
- setDataSize = filterPaginationState.setDataSize;
6722
- return /*#__PURE__*/React__default["default"].createElement(FilterWrapper, _extends$1({
6723
- title: isPaymentKind(kind) ? t("neetoPayments.title.squarePayment") : t("neetoPayments.title.squareRefund")
6724
- }, _objectSpread$2({
6725
- headerProps: headerProps,
6726
- kind: kind,
6727
- searchProps: searchProps
6728
- }, filterPaginationState)), /*#__PURE__*/React__default["default"].createElement(List$1, {
6729
- filters: filters,
6730
- holdableId: holdableId,
6731
- kind: kind,
6732
- pageProperties: pageProperties,
6733
- payableEntityColumns: payableEntityColumns,
6734
- setDataSize: setDataSize,
6735
- setIsFilterButtonVisible: setIsFilterButtonVisible,
6736
- setPageProperties: setPageProperties,
6737
- setSortProperties: setSortProperties,
6738
- sortProperties: sortProperties,
6739
- tab: tab
6740
- }));
6741
- };
6742
- var index$1 = reactUtils.withTitle(withReactQuery(SquareDashboard), i18next.t("neetoPayments.common.squarePayments"));
6743
-
6744
- var TAB = {
6745
- all: "all",
6746
- successful: "successful",
6747
- declined: "declined",
6748
- refunded: "refunded"
6749
- };
6750
- var TABS = Object.values(TAB);
6751
-
6752
- var defaultShow = function defaultShow() {
6753
- return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdable/account"));
6754
- };
6755
- var show = function show(holdableId) {
6756
- return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdables/").concat(holdableId, "/account"));
6757
- };
6758
- var accountsApi = {
6759
- defaultShow: defaultShow,
6760
- show: show
6761
- };
6762
-
6763
- var useFetchRazorpayAccount = function useFetchRazorpayAccount(holdableId) {
6764
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6765
- return reactQuery.useQuery([QUERY_KEYS.SQUARE_ACCOUNT_DETAILS, holdableId], function () {
6766
- if (neetoCist.isPresent(holdableId)) return accountsApi.show(holdableId);
6767
- return accountsApi.defaultShow();
6768
- }, options);
6769
- };
6770
-
6771
- var create$1 = function create(payload) {
6772
- return axios__default["default"].post("".concat(BASE_URL, "/api/v1/public/razorpay/payments"), {
6773
- payment: payload
6774
- });
6775
- };
6776
- var defaultList = function defaultList(payload) {
6777
- return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdable/payments"), {
6778
- params: payload
6779
- });
6780
- };
6781
- var list = function list(holdableId, payload) {
6782
- return axios__default["default"].get("".concat(BASE_URL, "/api/v1/razorpay/holdables/").concat(holdableId, "/payments"), {
6783
- params: payload
6784
- });
6785
- };
6786
- var paymentsApi = {
6787
- defaultList: defaultList,
6788
- list: list,
6789
- create: create$1
6790
- };
6791
-
6792
- var useFetchRazorpayPayments = function useFetchRazorpayPayments() {
6793
- var holdableId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
6794
- var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6795
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6796
- return reactQuery.useQuery([QUERY_KEYS.SQUARE_PAYMENTS_LIST, payload], function () {
6797
- if (neetoCist.isPresent(holdableId)) return paymentsApi.list(holdableId, payload);
6798
- return paymentsApi.defaultList(payload);
6799
- }, options);
6800
- };
6801
- var useCreateRazorpayPayment = function useCreateRazorpayPayment(options) {
6802
- return reactQuery.useMutation(paymentsApi.create, options);
6803
- };
6804
-
6805
- var List = function List(_ref) {
6806
- var _pageProperties$tab, _pageProperties$tab2, _pageProperties$tab3;
6807
- var holdableId = _ref.holdableId,
6808
- kind = _ref.kind,
6809
- filters = _ref.filters,
6810
- setIsFilterButtonVisible = _ref.setIsFilterButtonVisible,
6811
- pageProperties = _ref.pageProperties,
6812
- payableEntityColumns = _ref.payableEntityColumns,
6813
- setPageProperties = _ref.setPageProperties,
6814
- tab = _ref.tab,
6815
- sortProperties = _ref.sortProperties,
6816
- setSortProperties = _ref.setSortProperties,
6817
- setDataSize = _ref.setDataSize;
6818
- var history = reactRouterDom.useHistory();
6819
- var _useTranslation = reactI18next.useTranslation(),
6820
- t = _useTranslation.t;
6821
- var columnData = buildPaymentColumns$1({
6822
- tab: tab,
6823
- kind: kind,
6824
- payableEntityColumns: payableEntityColumns
6825
- });
6826
- var _useFetchRazorpayAcco = useFetchRazorpayAccount(),
6827
- isAccountLoading = _useFetchRazorpayAcco.isLoading,
6828
- _useFetchRazorpayAcco2 = _useFetchRazorpayAcco.data,
6829
- _useFetchRazorpayAcco3 = _useFetchRazorpayAcco2 === void 0 ? {} : _useFetchRazorpayAcco2,
6830
- account = _useFetchRazorpayAcco3.account;
6831
- var payload = buildPayload({
6832
- tab: tab,
6833
- filters: filters,
6834
- pageProperties: pageProperties,
6835
- sortProperties: sortProperties
6836
- });
6837
- var _useHiddenColumns = Columns.useHiddenColumns("paymentDashboard_".concat(kind)),
6838
- hideColumn = _useHiddenColumns.hideColumn,
6839
- _useHiddenColumns$hid = _useHiddenColumns.hiddenColumns,
6840
- hiddenColumns = _useHiddenColumns$hid === void 0 ? [] : _useHiddenColumns$hid;
6841
- var _useFetchRazorpayPaym = useFetchRazorpayPayments(holdableId, payload, {
6842
- enabled: isPaymentKind$1(kind)
6971
+ _useFetchSquareAccoun3 = _useFetchSquareAccoun2 === void 0 ? {} : _useFetchSquareAccoun2,
6972
+ squareAccount = _useFetchSquareAccoun3.account;
6973
+ var _useFetchSquareData = useFetchSquareData({
6974
+ kind: kind,
6975
+ holdableId: holdableId,
6976
+ payload: buildPayload({
6977
+ tab: tab,
6978
+ filters: filters,
6979
+ pageProperties: pageProperties,
6980
+ sortProperties: sortProperties
6981
+ })
6843
6982
  }),
6844
- _useFetchRazorpayPaym2 = _useFetchRazorpayPaym.data,
6845
- _useFetchRazorpayPaym3 = _useFetchRazorpayPaym2 === void 0 ? {} : _useFetchRazorpayPaym2,
6846
- payments = _useFetchRazorpayPaym3.payments,
6847
- _useFetchRazorpayPaym4 = _useFetchRazorpayPaym3.views,
6848
- views = _useFetchRazorpayPaym4 === void 0 ? {} : _useFetchRazorpayPaym4,
6849
- isPaymentsLoaidng = _useFetchRazorpayPaym.isLoading,
6850
- isFetching = _useFetchRazorpayPaym.isFetching;
6983
+ data = _useFetchSquareData.data,
6984
+ isDataLoading = _useFetchSquareData.isDataLoading,
6985
+ isDataFetching = _useFetchSquareData.isDataFetching,
6986
+ dataSize = _useFetchSquareData.dataSize;
6851
6987
  React.useEffect(function () {
6852
- setIsFilterButtonVisible(neetoCist.isPresent(payments) || neetoCist.isPresent(filters));
6853
- setDataSize(views[tab]);
6854
- }, [payments]);
6988
+ setIsFilterButtonVisible(neetoCist.isPresent(data) || neetoCist.isPresent(filters));
6989
+ setDataSize(dataSize);
6990
+ }, [data]);
6855
6991
  var handleTablePaginaton = function handleTablePaginaton(page, pageSize) {
6856
6992
  var queryParams = utils$3.getQueryParams({
6857
6993
  toCamelCase: false
@@ -6871,14 +7007,10 @@ var List = function List(_ref) {
6871
7007
  orderBy: sorter.order === "ascend" ? "ASC" : "DESC"
6872
7008
  } : DEFAULT_SORT_PROPERTIES$1);
6873
7009
  };
6874
- var visibleColumns = columnData.filter(function (_ref2) {
6875
- var dataIndex = _ref2.dataIndex;
6876
- return !hiddenColumns.includes(processDataIndex(dataIndex));
6877
- });
6878
- if (isAccountLoading || isPaymentsLoaidng) {
7010
+ if (isSquareAccountLoading || isDataLoading) {
6879
7011
  return /*#__PURE__*/React__default["default"].createElement(PageLoader__default["default"], null);
6880
7012
  }
6881
- if (!(account !== null && account !== void 0 && account.isConnected) && views <= 0 || !neetoCist.isPresent(payments)) {
7013
+ if (!(squareAccount !== null && squareAccount !== void 0 && squareAccount.isConnected) && dataSize <= 0 || !neetoCist.isPresent(data)) {
6882
7014
  return /*#__PURE__*/React__default["default"].createElement("div", {
6883
7015
  className: "flex h-full w-full items-center justify-center"
6884
7016
  }, /*#__PURE__*/React__default["default"].createElement(neetoui.NoData, {
@@ -6888,38 +7020,35 @@ var List = function List(_ref) {
6888
7020
  }));
6889
7021
  }
6890
7022
  return /*#__PURE__*/React__default["default"].createElement(TableWrapper__default["default"], {
6891
- hasPagination: views > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
7023
+ hasPagination: dataSize > ((_pageProperties$tab = pageProperties[tab]) === null || _pageProperties$tab === void 0 ? void 0 : _pageProperties$tab.pageSize)
6892
7024
  }, /*#__PURE__*/React__default["default"].createElement(neetoui.Table, {
7025
+ columnData: columnData,
6893
7026
  fixedHeight: true,
6894
7027
  allowRowClick: false,
6895
- columnData: visibleColumns,
6896
7028
  currentPageNumber: (_pageProperties$tab2 = pageProperties[tab]) === null || _pageProperties$tab2 === void 0 ? void 0 : _pageProperties$tab2.page,
6897
7029
  handlePageChange: handleTablePaginaton,
6898
- loading: isFetching,
7030
+ loading: isDataFetching,
6899
7031
  rowData: buildRowData({
6900
- data: payments,
7032
+ data: data,
6901
7033
  pageProperties: pageProperties,
6902
7034
  tab: tab
6903
7035
  }),
6904
7036
  rowSelection: false,
6905
7037
  sortDirections: SORT_DIRECTIONS,
6906
- totalCount: views,
7038
+ totalCount: dataSize,
6907
7039
  paginationProps: {
6908
7040
  showSizeChanger: true,
6909
7041
  hideOnSinglePage: true,
6910
7042
  pageSize: (_pageProperties$tab3 = pageProperties[tab]) === null || _pageProperties$tab3 === void 0 ? void 0 : _pageProperties$tab3.pageSize,
6911
- total: views
7043
+ total: dataSize
6912
7044
  },
6913
- onChange: handleTableChange,
6914
- onColumnHide: function onColumnHide(columnData) {
6915
- hideColumn(processDataIndex(columnData.dataIndex));
6916
- }
7045
+ onChange: handleTableChange
6917
7046
  }));
6918
7047
  };
6919
7048
 
6920
7049
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6921
7050
  function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6922
- var RazorpayDashboard = function RazorpayDashboard(_ref) {
7051
+ var SquareDashboard = function SquareDashboard(_ref) {
6923
7052
  var searchProps = _ref.searchProps,
6924
7053
  _ref$headerProps = _ref.headerProps,
6925
7054
  headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
@@ -6928,18 +7057,14 @@ var RazorpayDashboard = function RazorpayDashboard(_ref) {
6928
7057
  _ref$payableEntityCol = _ref.payableEntityColumns,
6929
7058
  payableEntityColumns = _ref$payableEntityCol === void 0 ? [] : _ref$payableEntityCol,
6930
7059
  _ref$kind = _ref.kind,
6931
- kind = _ref$kind === void 0 ? "razorpayPayment" : _ref$kind;
6932
- var _useState = React.useState(false),
6933
- _useState2 = _slicedToArray(_useState, 2),
6934
- showExportModal = _useState2[0],
6935
- setShowExportModal = _useState2[1];
7060
+ kind = _ref$kind === void 0 ? "squarePayment" : _ref$kind;
6936
7061
  var _useTranslation = reactI18next.useTranslation(),
6937
7062
  t = _useTranslation.t;
6938
7063
  var filterPaginationState = useFiltersAndPagination({
6939
7064
  payableEntityColumns: payableEntityColumns,
6940
7065
  kind: kind,
6941
7066
  initialTabs: TABS,
6942
- tabMetaData: {}
7067
+ tabMetaData: TAB_METADATA
6943
7068
  });
6944
7069
  var filters = filterPaginationState.filters,
6945
7070
  setIsFilterButtonVisible = filterPaginationState.setIsFilterButtonVisible,
@@ -6950,14 +7075,12 @@ var RazorpayDashboard = function RazorpayDashboard(_ref) {
6950
7075
  tab = filterPaginationState.tab,
6951
7076
  setDataSize = filterPaginationState.setDataSize;
6952
7077
  return /*#__PURE__*/React__default["default"].createElement(FilterWrapper, _extends$1({
6953
- title: t("neetoPayments.common.razorpayPayments")
7078
+ title: isPaymentKind(kind) ? t("neetoPayments.title.squarePayment") : t("neetoPayments.title.squareRefund")
6954
7079
  }, _objectSpread$1({
6955
7080
  headerProps: headerProps,
6956
7081
  kind: kind,
6957
- payableEntityColumns: payableEntityColumns,
6958
- searchProps: searchProps,
6959
- setShowExportModal: setShowExportModal
6960
- }, filterPaginationState)), /*#__PURE__*/React__default["default"].createElement(List, {
7082
+ searchProps: searchProps
7083
+ }, filterPaginationState)), /*#__PURE__*/React__default["default"].createElement(List$1, {
6961
7084
  filters: filters,
6962
7085
  holdableId: holdableId,
6963
7086
  kind: kind,
@@ -6966,235 +7089,39 @@ var RazorpayDashboard = function RazorpayDashboard(_ref) {
6966
7089
  setDataSize: setDataSize,
6967
7090
  setIsFilterButtonVisible: setIsFilterButtonVisible,
6968
7091
  setPageProperties: setPageProperties,
6969
- setSortProperties: setSortProperties,
6970
- sortProperties: sortProperties,
6971
- tab: tab
6972
- }), /*#__PURE__*/React__default["default"].createElement(ExportModal$1, {
6973
- filters: filters,
6974
- holdableId: holdableId,
6975
- kind: kind,
6976
- setShowExportModal: setShowExportModal,
6977
- showExportModal: showExportModal,
6978
- sortProperties: sortProperties,
6979
- tab: tab
6980
- }));
6981
- };
6982
- var index = reactUtils.withTitle(withReactQuery(RazorpayDashboard), i18next.t("neetoPayments.common.razorpayPayments"));
6983
-
6984
- var STRIPE_ALERT_PAYMENT_KIND_CONTENT = {
6985
- standard: {
6986
- title: i18next.t("neetoPayments.alert.stripe.connectRestrictionTitle"),
6987
- message: i18next.t("neetoPayments.alert.stripe.connectRestrictionMessage")
6988
- },
6989
- platform: {
6990
- title: i18next.t("neetoPayments.alert.stripePlatform.connectRestrictionTitle"),
6991
- message: i18next.t("neetoPayments.alert.stripePlatform.connectRestrictionMessage")
6992
- }
6993
- };
6994
-
6995
- var _excluded = ["isOpen", "paymentKind", "onClose"];
6996
- var PaymentKindRestrictionAlert = function PaymentKindRestrictionAlert(_ref) {
6997
- var _ref$isOpen = _ref.isOpen,
6998
- isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
6999
- _ref$paymentKind = _ref.paymentKind,
7000
- paymentKind = _ref$paymentKind === void 0 ? "standard" : _ref$paymentKind,
7001
- _ref$onClose = _ref.onClose,
7002
- onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
7003
- otherProps = _objectWithoutProperties(_ref, _excluded);
7004
- return /*#__PURE__*/React__default["default"].createElement(neetoui.Alert, _extends$1({
7005
- isOpen: isOpen,
7006
- onClose: onClose,
7007
- message: STRIPE_ALERT_PAYMENT_KIND_CONTENT[paymentKind].message,
7008
- title: STRIPE_ALERT_PAYMENT_KIND_CONTENT[paymentKind].title
7009
- }, otherProps));
7010
- };
7011
-
7012
- var useSquareCard = function useSquareCard() {
7013
- var _useState = React.useState(function () {
7014
- return undefined;
7015
- }),
7016
- _useState2 = _slicedToArray(_useState, 2),
7017
- card = _useState2[0],
7018
- setCard = _useState2[1];
7019
- var tokenizeCard = /*#__PURE__*/function () {
7020
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
7021
- var result, message;
7022
- return _regeneratorRuntime.wrap(function _callee$(_context) {
7023
- while (1) switch (_context.prev = _context.next) {
7024
- case 0:
7025
- if (card) {
7026
- _context.next = 3;
7027
- break;
7028
- }
7029
- logger.warn("Credit Card button was clicked, but no Credit Card instance was found.");
7030
- return _context.abrupt("return", "");
7031
- case 3:
7032
- _context.prev = 3;
7033
- _context.next = 6;
7034
- return card.tokenize();
7035
- case 6:
7036
- result = _context.sent;
7037
- if (!(result !== null && result !== void 0 && result.errors)) {
7038
- _context.next = 10;
7039
- break;
7040
- }
7041
- message = "Status: ".concat(result.status, " and Errors: ").concat(JSON.stringify(result === null || result === void 0 ? void 0 : result.errors));
7042
- throw new Error(message);
7043
- case 10:
7044
- return _context.abrupt("return", result === null || result === void 0 ? void 0 : result.token);
7045
- case 13:
7046
- _context.prev = 13;
7047
- _context.t0 = _context["catch"](3);
7048
- logger.error(_context.t0);
7049
- return _context.abrupt("return", "");
7050
- case 17:
7051
- case "end":
7052
- return _context.stop();
7053
- }
7054
- }, _callee, null, [[3, 13]]);
7055
- }));
7056
- return function tokenizeCard() {
7057
- return _ref.apply(this, arguments);
7058
- };
7059
- }();
7060
- return {
7061
- card: card,
7062
- setCard: setCard,
7063
- tokenizeCard: tokenizeCard
7064
- };
7065
- };
7066
-
7067
- var loadScript$1 = function loadScript(src) {
7068
- return new Promise(function (resolve) {
7069
- var script = document.createElement("script");
7070
- script.src = src;
7071
- script.onload = function () {
7072
- resolve(true);
7073
- };
7074
- script.onerror = function () {
7075
- resolve(false);
7076
- };
7077
- document.body.appendChild(script);
7078
- });
7079
- };
7080
- var useRazorpayPayment = function useRazorpayPayment(_ref) {
7081
- var payableId = _ref.payableId,
7082
- _ref$onBeforePayment = _ref.onBeforePayment,
7083
- onBeforePayment = _ref$onBeforePayment === void 0 ? neetoCist.noop : _ref$onBeforePayment,
7084
- _ref$onSuccessfulPaym = _ref.onSuccessfulPayment,
7085
- onSuccessfulPayment = _ref$onSuccessfulPaym === void 0 ? neetoCist.noop : _ref$onSuccessfulPaym,
7086
- _ref$onFailedPayment = _ref.onFailedPayment,
7087
- onFailedPayment = _ref$onFailedPayment === void 0 ? neetoCist.noop : _ref$onFailedPayment;
7088
- var _useTranslation = reactI18next.useTranslation(),
7089
- t = _useTranslation.t;
7090
- var openRazorpayCheckout = /*#__PURE__*/function () {
7091
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options) {
7092
- var script, checkout;
7093
- return _regeneratorRuntime.wrap(function _callee$(_context) {
7094
- while (1) switch (_context.prev = _context.next) {
7095
- case 0:
7096
- _context.next = 2;
7097
- return loadScript$1("https://checkout.razorpay.com/v1/checkout.js");
7098
- case 2:
7099
- script = _context.sent;
7100
- if (script) {
7101
- _context.next = 6;
7102
- break;
7103
- }
7104
- logger.error(t("neetoPayments.razorpay.loadError"));
7105
- return _context.abrupt("return");
7106
- case 6:
7107
- checkout = new window.Razorpay(options);
7108
- checkout.open();
7109
- case 8:
7110
- case "end":
7111
- return _context.stop();
7112
- }
7113
- }, _callee);
7114
- }));
7115
- return function openRazorpayCheckout(_x) {
7116
- return _ref2.apply(this, arguments);
7117
- };
7118
- }();
7119
- var handlePayment = function handlePayment(response) {
7120
- if (neetoCist.isNotPresent(response === null || response === void 0 ? void 0 : response.razorpay_signature)) {
7121
- onFailedPayment();
7122
- return;
7123
- }
7124
- onSuccessfulPayment();
7125
- };
7126
- var handleSuccess = function handleSuccess(_ref3) {
7127
- var payment = _ref3.payment;
7128
- if ((payment === null || payment === void 0 ? void 0 : payment.status) === "successful") {
7129
- return onSuccessfulPayment();
7130
- }
7131
- var options = {
7132
- key: payment.publicKey,
7133
- order_id: payment.orderIdentifier,
7134
- customer_id: payment.customerIdentifier,
7135
- modal: {
7136
- confirm_close: true,
7137
- ondismiss: onFailedPayment
7138
- },
7139
- handler: handlePayment
7140
- };
7141
- return openRazorpayCheckout(ramda.mergeDeepLeft(RAZORPAY_PAYMENT_BUTTON_OPTIONS, options));
7142
- };
7143
- var _useCreateRazorpayPay = useCreateRazorpayPayment({
7144
- onSuccess: handleSuccess
7145
- }),
7146
- createRazorpayOrder = _useCreateRazorpayPay.mutate;
7147
- var makePayment = function makePayment() {
7148
- onBeforePayment();
7149
- createRazorpayOrder({
7150
- payableId: payableId
7151
- });
7152
- };
7153
- return {
7154
- makePayment: makePayment
7155
- };
7092
+ setSortProperties: setSortProperties,
7093
+ sortProperties: sortProperties,
7094
+ tab: tab
7095
+ }));
7156
7096
  };
7097
+ var index = reactUtils.withTitle(withReactQuery(SquareDashboard), i18next.t("neetoPayments.common.squarePayments"));
7157
7098
 
7158
- var useStripePromise = function useStripePromise(stripeAccountIdentifier) {
7159
- var stripePromise = React.useMemo( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
7160
- var stripeJs, _yield$stripeJs, loadStripe;
7161
- return _regeneratorRuntime.wrap(function _callee$(_context) {
7162
- while (1) switch (_context.prev = _context.next) {
7163
- case 0:
7164
- if (!neetoCist.isNotPresent(stripeAccountIdentifier)) {
7165
- _context.next = 2;
7166
- break;
7167
- }
7168
- return _context.abrupt("return", null);
7169
- case 2:
7170
- stripeJs = function stripeJs() {
7171
- return Promise.resolve().then(function () { return require('./stripe.esm-4218a1e9.js'); });
7172
- };
7173
- _context.prev = 3;
7174
- _context.next = 6;
7175
- return stripeJs();
7176
- case 6:
7177
- _yield$stripeJs = _context.sent;
7178
- loadStripe = _yield$stripeJs.loadStripe;
7179
- _context.next = 10;
7180
- return loadStripe(initializers.globalProps === null || initializers.globalProps === void 0 ? void 0 : initializers.globalProps.stripePublishableKey, {
7181
- stripeAccount: stripeAccountIdentifier
7182
- });
7183
- case 10:
7184
- return _context.abrupt("return", _context.sent);
7185
- case 13:
7186
- _context.prev = 13;
7187
- _context.t0 = _context["catch"](3);
7188
- logger.error(_context.t0);
7189
- case 16:
7190
- return _context.abrupt("return", null);
7191
- case 17:
7192
- case "end":
7193
- return _context.stop();
7194
- }
7195
- }, _callee, null, [[3, 13]]);
7196
- })), [stripeAccountIdentifier]);
7197
- return stripePromise;
7099
+ var STRIPE_ALERT_PAYMENT_KIND_CONTENT = {
7100
+ standard: {
7101
+ title: i18next.t("neetoPayments.alert.stripe.connectRestrictionTitle"),
7102
+ message: i18next.t("neetoPayments.alert.stripe.connectRestrictionMessage")
7103
+ },
7104
+ platform: {
7105
+ title: i18next.t("neetoPayments.alert.stripePlatform.connectRestrictionTitle"),
7106
+ message: i18next.t("neetoPayments.alert.stripePlatform.connectRestrictionMessage")
7107
+ }
7108
+ };
7109
+
7110
+ var _excluded = ["isOpen", "paymentKind", "onClose"];
7111
+ var PaymentKindRestrictionAlert = function PaymentKindRestrictionAlert(_ref) {
7112
+ var _ref$isOpen = _ref.isOpen,
7113
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
7114
+ _ref$paymentKind = _ref.paymentKind,
7115
+ paymentKind = _ref$paymentKind === void 0 ? "standard" : _ref$paymentKind,
7116
+ _ref$onClose = _ref.onClose,
7117
+ onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
7118
+ otherProps = _objectWithoutProperties(_ref, _excluded);
7119
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Alert, _extends$1({
7120
+ isOpen: isOpen,
7121
+ onClose: onClose,
7122
+ message: STRIPE_ALERT_PAYMENT_KIND_CONTENT[paymentKind].message,
7123
+ title: STRIPE_ALERT_PAYMENT_KIND_CONTENT[paymentKind].title
7124
+ }, otherProps));
7198
7125
  };
7199
7126
 
7200
7127
  var _path, _path2, _path3;
@@ -7234,7 +7161,7 @@ var INITIAL_VALUES = {
7234
7161
  country: "",
7235
7162
  return_url: ""
7236
7163
  };
7237
- var VALIDATION_SCHEMA = yup__namespace.object().shape({
7164
+ var VALIDATION_SCHEMA$1 = yup__namespace.object().shape({
7238
7165
  country: yup__namespace.object().required(i18next.t("neetoPayments.validations.countryRequired")),
7239
7166
  returnUrl: yup__namespace.string().url(i18next.t("neetoPayments.validations.invalidUrl"))
7240
7167
  });
@@ -7339,7 +7266,7 @@ var AccountForm = function AccountForm(_ref) {
7339
7266
  formikProps: {
7340
7267
  enableReinitialize: true,
7341
7268
  initialValues: INITIAL_VALUES,
7342
- validationSchema: VALIDATION_SCHEMA,
7269
+ validationSchema: VALIDATION_SCHEMA$1,
7343
7270
  onSubmit: handleSubmit
7344
7271
  }
7345
7272
  }, /*#__PURE__*/React__default["default"].createElement("div", {
@@ -9242,6 +9169,141 @@ var StripeConnect = function StripeConnect(_ref) {
9242
9169
  }));
9243
9170
  };
9244
9171
 
9172
+ var VALIDATION_SCHEMA = yup__namespace.object({
9173
+ upiId: yup__namespace.string().matches(/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/, i18next.t("neetoPayments.upi.form.validation.invalidUpi")).required(i18next.t("neetoPayments.upi.form.validation.required"))
9174
+ });
9175
+
9176
+ var Add = reactUtils.withT(function (_ref) {
9177
+ var t = _ref.t,
9178
+ handleCreateUpiId = _ref.handleCreateUpiId;
9179
+ return /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(formik.Form, {
9180
+ formikProps: {
9181
+ initialValues: {
9182
+ upiId: ""
9183
+ },
9184
+ onSubmit: handleCreateUpiId,
9185
+ validationSchema: VALIDATION_SCHEMA
9186
+ }
9187
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
9188
+ className: "space-y-3"
9189
+ }, /*#__PURE__*/React__default["default"].createElement(formik.Input, {
9190
+ className: "w-64",
9191
+ label: t("neetoPayments.common.upiId"),
9192
+ name: "upiId"
9193
+ }), /*#__PURE__*/React__default["default"].createElement(formik.Button, {
9194
+ label: t("neetoPayments.upi.form.add"),
9195
+ type: "submit"
9196
+ }))));
9197
+ });
9198
+
9199
+ var getColumnData = function getColumnData(handleDeleteClick) {
9200
+ return [{
9201
+ title: i18next.t("neetoPayments.common.upiId"),
9202
+ dataIndex: "address",
9203
+ key: "address",
9204
+ width: 272,
9205
+ render: function render(_, upiId) {
9206
+ return /*#__PURE__*/React__default["default"].createElement("div", {
9207
+ className: "flex items-center justify-between gap-3"
9208
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
9209
+ className: "w-4/5",
9210
+ style: "body2"
9211
+ }, upiId.address), /*#__PURE__*/React__default["default"].createElement(MoreDropdown__default["default"], {
9212
+ dropdownProps: {
9213
+ strategy: "fixed"
9214
+ },
9215
+ menuItems: [{
9216
+ key: "delete-meeting",
9217
+ label: i18next.t("neetoPayments.common.delete"),
9218
+ onClick: function onClick() {
9219
+ return handleDeleteClick(upiId);
9220
+ }
9221
+ }]
9222
+ }));
9223
+ }
9224
+ }, {
9225
+ title: i18next.t("neetoPayments.common.createdAt"),
9226
+ dataIndex: "createdAt",
9227
+ key: "createdAt",
9228
+ render: utils$3.dateFormat.dateTime
9229
+ }];
9230
+ };
9231
+
9232
+ var List = function List(_ref) {
9233
+ var handleDeleteUpiId = _ref.handleDeleteUpiId,
9234
+ upiIds = _ref.upiIds;
9235
+ var _useTranslation = reactI18next.useTranslation(),
9236
+ t = _useTranslation.t;
9237
+ var _useState = React.useState(false),
9238
+ _useState2 = _slicedToArray(_useState, 2),
9239
+ isAlertOpen = _useState2[0],
9240
+ setIsAlertOpen = _useState2[1];
9241
+ var _useState3 = React.useState({}),
9242
+ _useState4 = _slicedToArray(_useState3, 2),
9243
+ selectedUpiId = _useState4[0],
9244
+ setSelectedUpiId = _useState4[1];
9245
+ var handleOpenDeleteModal = function handleOpenDeleteModal(id) {
9246
+ setSelectedUpiId(id);
9247
+ setIsAlertOpen(true);
9248
+ };
9249
+ var handleAlertClose = function handleAlertClose() {
9250
+ setSelectedUpiId({});
9251
+ setIsAlertOpen(false);
9252
+ };
9253
+ var handleAlertSubmit = function handleAlertSubmit() {
9254
+ handleDeleteUpiId(selectedUpiId);
9255
+ setIsAlertOpen(false);
9256
+ };
9257
+ if (ramda.isEmpty(upiIds)) {
9258
+ return null;
9259
+ }
9260
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Table, {
9261
+ columnData: getColumnData(handleOpenDeleteModal),
9262
+ rowData: upiIds
9263
+ }), /*#__PURE__*/React__default["default"].createElement(neetoui.Alert, {
9264
+ isOpen: isAlertOpen,
9265
+ title: t("neetoPayments.upi.alert.title"),
9266
+ message: /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
9267
+ components: {
9268
+ b: /*#__PURE__*/React__default["default"].createElement("strong", null)
9269
+ },
9270
+ i18nKey: "neetoPayments.upi.alert.message",
9271
+ values: {
9272
+ upiId: selectedUpiId.address
9273
+ }
9274
+ }),
9275
+ onClose: handleAlertClose,
9276
+ onSubmit: handleAlertSubmit
9277
+ }));
9278
+ };
9279
+
9280
+ var UpiConnect = function UpiConnect(_ref) {
9281
+ var _ref$upiIds = _ref.upiIds,
9282
+ upiIds = _ref$upiIds === void 0 ? [] : _ref$upiIds,
9283
+ _ref$isLoading = _ref.isLoading,
9284
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
9285
+ _ref$isDeleting = _ref.isDeleting,
9286
+ isDeleting = _ref$isDeleting === void 0 ? false : _ref$isDeleting,
9287
+ _ref$handleDeleteUpiI = _ref.handleDeleteUpiId,
9288
+ handleDeleteUpiId = _ref$handleDeleteUpiI === void 0 ? neetoCist.noop : _ref$handleDeleteUpiI,
9289
+ _ref$handleCreateUpiI = _ref.handleCreateUpiId,
9290
+ handleCreateUpiId = _ref$handleCreateUpiI === void 0 ? neetoCist.noop : _ref$handleCreateUpiI;
9291
+ var _useTranslation = reactI18next.useTranslation(),
9292
+ t = _useTranslation.t;
9293
+ if (isLoading) return /*#__PURE__*/React__default["default"].createElement(neetoui.Spinner, null);
9294
+ return /*#__PURE__*/React__default["default"].createElement("div", {
9295
+ className: "flex w-full max-w-3xl flex-col items-start space-y-6"
9296
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
9297
+ style: "h2"
9298
+ }, t("neetoPayments.common.upiIds")), /*#__PURE__*/React__default["default"].createElement(Add, {
9299
+ handleCreateUpiId: handleCreateUpiId
9300
+ }), /*#__PURE__*/React__default["default"].createElement(List, {
9301
+ handleDeleteUpiId: handleDeleteUpiId,
9302
+ isDeleting: isDeleting,
9303
+ upiIds: upiIds
9304
+ }));
9305
+ };
9306
+
9245
9307
  var loadScript = function loadScript(src) {
9246
9308
  return new Promise(function (resolve) {
9247
9309
  var script = document.createElement("script");
@@ -9255,14 +9317,8 @@ var loadScript = function loadScript(src) {
9255
9317
  document.body.appendChild(script);
9256
9318
  });
9257
9319
  };
9258
- var RazorpayPaymentButton = function RazorpayPaymentButton(_ref) {
9259
- var label = _ref.label,
9260
- payableId = _ref.payableId,
9261
- discountCode = _ref.discountCode,
9262
- email = _ref.email,
9263
- name = _ref.name,
9264
- _ref$isCardPreservabl = _ref.isCardPreservable,
9265
- isCardPreservable = _ref$isCardPreservabl === void 0 ? false : _ref$isCardPreservabl,
9320
+ var useRazorpayPayment = function useRazorpayPayment(_ref) {
9321
+ var payableId = _ref.payableId,
9266
9322
  _ref$onBeforePayment = _ref.onBeforePayment,
9267
9323
  onBeforePayment = _ref$onBeforePayment === void 0 ? neetoCist.noop : _ref$onBeforePayment,
9268
9324
  _ref$onSuccessfulPaym = _ref.onSuccessfulPayment,
@@ -9312,16 +9368,10 @@ var RazorpayPaymentButton = function RazorpayPaymentButton(_ref) {
9312
9368
  if ((payment === null || payment === void 0 ? void 0 : payment.status) === "successful") {
9313
9369
  return onSuccessfulPayment();
9314
9370
  }
9315
- var save = isCardPreservable ? 1 : 0;
9316
9371
  var options = {
9317
- save: save,
9318
9372
  key: payment.publicKey,
9319
9373
  order_id: payment.orderIdentifier,
9320
9374
  customer_id: payment.customerIdentifier,
9321
- prefill: {
9322
- name: name,
9323
- email: email
9324
- },
9325
9375
  modal: {
9326
9376
  confirm_close: true,
9327
9377
  ondismiss: onFailedPayment
@@ -9333,26 +9383,113 @@ var RazorpayPaymentButton = function RazorpayPaymentButton(_ref) {
9333
9383
  var _useCreateRazorpayPay = useCreateRazorpayPayment({
9334
9384
  onSuccess: handleSuccess
9335
9385
  }),
9336
- isLoading = _useCreateRazorpayPay.isLoading,
9337
9386
  createRazorpayOrder = _useCreateRazorpayPay.mutate;
9338
- var handleClick = function handleClick() {
9387
+ var makePayment = function makePayment() {
9339
9388
  onBeforePayment();
9340
- var payload = {
9341
- payableId: payableId,
9342
- discountCode: discountCode,
9343
- customerAttributes: {
9344
- email: email,
9345
- name: name
9346
- }
9389
+ createRazorpayOrder({
9390
+ payableId: payableId
9391
+ });
9392
+ };
9393
+ return {
9394
+ makePayment: makePayment
9395
+ };
9396
+ };
9397
+
9398
+ var useSquareCard = function useSquareCard() {
9399
+ var _useState = React.useState(function () {
9400
+ return undefined;
9401
+ }),
9402
+ _useState2 = _slicedToArray(_useState, 2),
9403
+ card = _useState2[0],
9404
+ setCard = _useState2[1];
9405
+ var tokenizeCard = /*#__PURE__*/function () {
9406
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
9407
+ var result, message;
9408
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
9409
+ while (1) switch (_context.prev = _context.next) {
9410
+ case 0:
9411
+ if (card) {
9412
+ _context.next = 3;
9413
+ break;
9414
+ }
9415
+ logger.warn("Credit Card button was clicked, but no Credit Card instance was found.");
9416
+ return _context.abrupt("return", "");
9417
+ case 3:
9418
+ _context.prev = 3;
9419
+ _context.next = 6;
9420
+ return card.tokenize();
9421
+ case 6:
9422
+ result = _context.sent;
9423
+ if (!(result !== null && result !== void 0 && result.errors)) {
9424
+ _context.next = 10;
9425
+ break;
9426
+ }
9427
+ message = "Status: ".concat(result.status, " and Errors: ").concat(JSON.stringify(result === null || result === void 0 ? void 0 : result.errors));
9428
+ throw new Error(message);
9429
+ case 10:
9430
+ return _context.abrupt("return", result === null || result === void 0 ? void 0 : result.token);
9431
+ case 13:
9432
+ _context.prev = 13;
9433
+ _context.t0 = _context["catch"](3);
9434
+ logger.error(_context.t0);
9435
+ return _context.abrupt("return", "");
9436
+ case 17:
9437
+ case "end":
9438
+ return _context.stop();
9439
+ }
9440
+ }, _callee, null, [[3, 13]]);
9441
+ }));
9442
+ return function tokenizeCard() {
9443
+ return _ref.apply(this, arguments);
9347
9444
  };
9348
- createRazorpayOrder(payload);
9445
+ }();
9446
+ return {
9447
+ card: card,
9448
+ setCard: setCard,
9449
+ tokenizeCard: tokenizeCard
9349
9450
  };
9350
- return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
9351
- disabled: isLoading,
9352
- label: label || t("neetoPayments.common.pay"),
9353
- loading: isLoading,
9354
- onClick: handleClick
9355
- });
9451
+ };
9452
+
9453
+ var useStripePromise = function useStripePromise(stripeAccountIdentifier) {
9454
+ var stripePromise = React.useMemo( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
9455
+ var stripeJs, _yield$stripeJs, loadStripe;
9456
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
9457
+ while (1) switch (_context.prev = _context.next) {
9458
+ case 0:
9459
+ if (!neetoCist.isNotPresent(stripeAccountIdentifier)) {
9460
+ _context.next = 2;
9461
+ break;
9462
+ }
9463
+ return _context.abrupt("return", null);
9464
+ case 2:
9465
+ stripeJs = function stripeJs() {
9466
+ return Promise.resolve().then(function () { return require('./stripe.esm-4218a1e9.js'); });
9467
+ };
9468
+ _context.prev = 3;
9469
+ _context.next = 6;
9470
+ return stripeJs();
9471
+ case 6:
9472
+ _yield$stripeJs = _context.sent;
9473
+ loadStripe = _yield$stripeJs.loadStripe;
9474
+ _context.next = 10;
9475
+ return loadStripe(initializers.globalProps === null || initializers.globalProps === void 0 ? void 0 : initializers.globalProps.stripePublishableKey, {
9476
+ stripeAccount: stripeAccountIdentifier
9477
+ });
9478
+ case 10:
9479
+ return _context.abrupt("return", _context.sent);
9480
+ case 13:
9481
+ _context.prev = 13;
9482
+ _context.t0 = _context["catch"](3);
9483
+ logger.error(_context.t0);
9484
+ case 16:
9485
+ return _context.abrupt("return", null);
9486
+ case 17:
9487
+ case "end":
9488
+ return _context.stop();
9489
+ }
9490
+ }, _callee, null, [[3, 13]]);
9491
+ })), [stripeAccountIdentifier]);
9492
+ return stripePromise;
9356
9493
  };
9357
9494
 
9358
9495
  var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
@@ -9366,11 +9503,12 @@ exports.Dashboard = Dashboard$1;
9366
9503
  exports.PaymentKindRestrictionAlert = PaymentKindRestrictionAlert;
9367
9504
  exports.PayoutsDashboard = index$2;
9368
9505
  exports.PayoutsPage = PayoutsPage;
9369
- exports.RazorpayDashboard = index;
9506
+ exports.RazorpayDashboard = index$1;
9370
9507
  exports.RazorpayPaymentButton = RazorpayPaymentButton;
9371
9508
  exports.SquareCard = SquareCard;
9372
- exports.SquareDashboard = index$1;
9509
+ exports.SquareDashboard = index;
9373
9510
  exports.StripeConnect = StripeConnect;
9511
+ exports.UpiConnect = UpiConnect;
9374
9512
  exports.buildStripeTransactionLink = buildStripeTransactionLink;
9375
9513
  exports.useRazorpayPayment = useRazorpayPayment;
9376
9514
  exports.useSquareCard = useSquareCard;