@bigbinary/neeto-payments-frontend 6.1.25 → 6.1.27
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/AccountsDashboard.js +7 -7
- package/dist/AccountsDashboard.js.map +1 -1
- package/dist/AdminCancelRecurringPaymentButton.js +1 -1
- package/dist/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/CashPaymentButton.js +2 -2
- package/dist/CashPaymentButton.js.map +1 -1
- package/dist/ConfirmCashPaymentButton.js +7 -6
- package/dist/ConfirmCashPaymentButton.js.map +1 -1
- package/dist/{CopyButtonWrapper-Bp5IVO76.js → CopyButtonWrapper-DkI2F6Ty.js} +2 -2
- package/dist/CopyButtonWrapper-DkI2F6Ty.js.map +1 -0
- package/dist/CustomerCancelRecurringPaymentForm.js +2 -2
- package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/{ExportModal-KInsxpSb.js → ExportModal-ubjATdMC.js} +2 -2
- package/dist/{ExportModal-KInsxpSb.js.map → ExportModal-ubjATdMC.js.map} +1 -1
- package/dist/ManualUpiConnect.js +3 -3
- package/dist/ManualUpiConnect.js.map +1 -1
- package/dist/ManualUpiPayment.js +3 -3
- package/dist/ManualUpiPayment.js.map +1 -1
- package/dist/ManualUpiPaymentConfirmButton.js +8 -7
- package/dist/ManualUpiPaymentConfirmButton.js.map +1 -1
- package/dist/ManualUpiPaymentRejectButton.js +3 -3
- package/dist/ManualUpiPaymentRejectButton.js.map +1 -1
- package/dist/PaymentKindRestrictionAlert.js.map +1 -1
- package/dist/PaymentsDashboard.js +9 -12
- package/dist/PaymentsDashboard.js.map +1 -1
- package/dist/PayoutsDashboard.js +7 -7
- package/dist/PayoutsDashboard.js.map +1 -1
- package/dist/PayoutsPage.js +5 -5
- package/dist/PayoutsPage.js.map +1 -1
- package/dist/RazorpayConnect.js +4 -4
- package/dist/RazorpayConnect.js.map +1 -1
- package/dist/RazorpayLinkedAccountForm.js +3 -3
- package/dist/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/RazorpayPaymentButton.js +2 -2
- package/dist/RazorpayPaymentButton.js.map +1 -1
- package/dist/RecurringPaymentSettings.js +3 -3
- package/dist/RecurringPaymentSettings.js.map +1 -1
- package/dist/RefundsDashboard.js +8 -10
- package/dist/RefundsDashboard.js.map +1 -1
- package/dist/SplitTransfersDashboard.js +11 -11
- package/dist/SplitTransfersDashboard.js.map +1 -1
- package/dist/StripeCheckoutSetting.js +2 -2
- package/dist/StripeCheckoutSetting.js.map +1 -1
- package/dist/StripeConnect.js +6 -6
- package/dist/StripeConnect.js.map +1 -1
- package/dist/StripeManage.js +3 -3
- package/dist/TaxesDashboard.js +2 -2
- package/dist/TaxesDashboard.js.map +1 -1
- package/dist/buildStripeTransactionLink.js +1 -1
- package/dist/cjs/AccountsDashboard.js +4 -4
- package/dist/cjs/AccountsDashboard.js.map +1 -1
- package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/cjs/CashPaymentButton.js.map +1 -1
- package/dist/cjs/ConfirmCashPaymentButton.js +5 -4
- package/dist/cjs/ConfirmCashPaymentButton.js.map +1 -1
- package/dist/cjs/{CopyButtonWrapper-I-kdKiiB.js → CopyButtonWrapper-DZ9rE5UR.js} +2 -2
- package/dist/cjs/CopyButtonWrapper-DZ9rE5UR.js.map +1 -0
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js +1 -1
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/cjs/ExportModal-BFe0tF5L.js.map +1 -1
- package/dist/cjs/ManualUpiConnect.js +1 -1
- package/dist/cjs/ManualUpiConnect.js.map +1 -1
- package/dist/cjs/ManualUpiPayment.js +2 -2
- package/dist/cjs/ManualUpiPayment.js.map +1 -1
- package/dist/cjs/ManualUpiPaymentConfirmButton.js +7 -6
- package/dist/cjs/ManualUpiPaymentConfirmButton.js.map +1 -1
- package/dist/cjs/ManualUpiPaymentRejectButton.js +2 -2
- package/dist/cjs/ManualUpiPaymentRejectButton.js.map +1 -1
- package/dist/cjs/PaymentKindRestrictionAlert.js.map +1 -1
- package/dist/cjs/PaymentsDashboard.js +3 -6
- package/dist/cjs/PaymentsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsDashboard.js +4 -4
- package/dist/cjs/PayoutsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsPage.js +4 -4
- package/dist/cjs/PayoutsPage.js.map +1 -1
- package/dist/cjs/RazorpayConnect.js +2 -2
- package/dist/cjs/RazorpayConnect.js.map +1 -1
- package/dist/cjs/RazorpayLinkedAccountForm.js +1 -1
- package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/cjs/RazorpayPaymentButton.js +1 -1
- package/dist/cjs/RazorpayPaymentButton.js.map +1 -1
- package/dist/cjs/RecurringPaymentSettings.js +1 -1
- package/dist/cjs/RecurringPaymentSettings.js.map +1 -1
- package/dist/cjs/RefundsDashboard.js +3 -5
- package/dist/cjs/RefundsDashboard.js.map +1 -1
- package/dist/cjs/SplitTransfersDashboard.js +6 -6
- package/dist/cjs/SplitTransfersDashboard.js.map +1 -1
- package/dist/cjs/StripeCheckoutSetting.js +1 -1
- package/dist/cjs/StripeCheckoutSetting.js.map +1 -1
- package/dist/cjs/StripeConnect.js +3 -3
- package/dist/cjs/StripeConnect.js.map +1 -1
- package/dist/cjs/StripeManage.js +1 -1
- package/dist/cjs/TaxesDashboard.js +1 -1
- package/dist/cjs/TaxesDashboard.js.map +1 -1
- package/dist/cjs/dashboard-BWh6P9BB.js.map +1 -1
- package/dist/cjs/exportChannel-BL2RGGhP.js.map +1 -1
- package/dist/cjs/index-vUzevy4J.js.map +1 -1
- package/dist/cjs/index.js +8 -8
- package/dist/cjs/{queryConstants-Dc6wh21D.js → queryConstants-CGUF7zol.js} +1 -12
- package/dist/cjs/{queryConstants-Dc6wh21D.js.map → queryConstants-CGUF7zol.js.map} +1 -1
- package/dist/cjs/{renderFunctions-9r2F0DaL.js → renderFunctions-B61EfbIp.js} +2 -2
- package/dist/cjs/{renderFunctions-9r2F0DaL.js.map → renderFunctions-B61EfbIp.js.map} +1 -1
- package/dist/cjs/{stripe.esm-CrNYjPcC.js → stripe.esm-DCCiiIbR.js} +2 -8
- package/dist/cjs/{stripe.esm-CrNYjPcC.js.map → stripe.esm-DCCiiIbR.js.map} +1 -1
- package/dist/cjs/{useAccountsApi-FFJUTaYQ.js → useAccountsApi-B1riDzpb.js} +2 -2
- package/dist/cjs/{useAccountsApi-FFJUTaYQ.js.map → useAccountsApi-B1riDzpb.js.map} +1 -1
- package/dist/cjs/useExportsApi-FDe0ucYU.js.map +1 -1
- package/dist/cjs/{useIntegrationsApi-D7HNuBW7.js → useIntegrationsApi-Cqu9MBJR.js} +2 -2
- package/dist/cjs/{useIntegrationsApi-D7HNuBW7.js.map → useIntegrationsApi-Cqu9MBJR.js.map} +1 -1
- package/dist/cjs/usePaymentApi-B-L0nxtr.js.map +1 -1
- package/dist/cjs/{usePaymentApi-fBUnau7x.js → usePaymentApi-BoLmrCje.js} +2 -2
- package/dist/cjs/{usePaymentApi-fBUnau7x.js.map → usePaymentApi-BoLmrCje.js.map} +1 -1
- package/dist/cjs/{usePaymentApi-Bbtzf9ST.js → usePaymentApi-CgsZjRBj.js} +1 -9
- package/dist/cjs/{usePaymentApi-Bbtzf9ST.js.map → usePaymentApi-CgsZjRBj.js.map} +1 -1
- package/dist/cjs/{usePlatformApi-BEa-Cs3V.js → usePlatformApi-D3yfxsMP.js} +2 -2
- package/dist/cjs/{usePlatformApi-BEa-Cs3V.js.map → usePlatformApi-D3yfxsMP.js.map} +1 -1
- package/dist/cjs/useRazorpayPayment.js +1 -1
- package/dist/cjs/useRazorpayPayment.js.map +1 -1
- package/dist/cjs/useStripePromise.js +1 -1
- package/dist/cjs/useStripePromise.js.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/{dashboard-Cr6UEj9o.js → dashboard-CZOZ1Oxi.js} +3 -3
- package/dist/{dashboard-Cr6UEj9o.js.map → dashboard-CZOZ1Oxi.js.map} +1 -1
- package/dist/exportChannel-Db0U5gc1.js.map +1 -1
- package/dist/getAddressElementOptions.js +1 -1
- package/dist/getAmountInLargestCurrencyUnit.js +1 -1
- package/dist/getAmountInSmallestCurrencyUnit.js +1 -1
- package/dist/getAmountWithAppliedTax.js +1 -1
- package/dist/getFormattedAmount.js +1 -1
- package/dist/getFormattedDiscountedAmount.js +1 -1
- package/dist/getFormattedDiscountedPercentage.js +1 -1
- package/dist/getFormattedTaxAmount.js +1 -1
- package/dist/getFormattedTipAmount.js +1 -1
- package/dist/getQrCodeValue.js +1 -1
- package/dist/getTaxAmount.js +1 -1
- package/dist/getTipAmount.js +1 -1
- package/dist/hasAmountToPay.js +1 -1
- package/dist/{index-DqpYJN4W.js → index-15RrM-W8.js} +4 -4
- package/dist/{index-DqpYJN4W.js.map → index-15RrM-W8.js.map} +1 -1
- package/dist/index.js +13 -13
- package/dist/{queryConstants-C7AqdemO.js → queryConstants-8c7Nd8ML.js} +1 -12
- package/dist/queryConstants-8c7Nd8ML.js.map +1 -0
- package/dist/{renderFunctions-CmT7DuRQ.js → renderFunctions-C5m30W0E.js} +4 -4
- package/dist/{renderFunctions-CmT7DuRQ.js.map → renderFunctions-C5m30W0E.js.map} +1 -1
- package/dist/{stripe.esm-DuZ_gsAa.js → stripe.esm-CFEGjV29.js} +2 -8
- package/dist/{stripe.esm-DuZ_gsAa.js.map → stripe.esm-CFEGjV29.js.map} +1 -1
- package/dist/{useAccountsApi-Cxvp_Jcf.js → useAccountsApi-Cbfz0yG4.js} +3 -3
- package/dist/{useAccountsApi-Cxvp_Jcf.js.map → useAccountsApi-Cbfz0yG4.js.map} +1 -1
- package/dist/{useExportsApi-C_UN1GVL.js → useExportsApi-DBBXhnqr.js} +3 -3
- package/dist/{useExportsApi-C_UN1GVL.js.map → useExportsApi-DBBXhnqr.js.map} +1 -1
- package/dist/{useIntegrationsApi-v_nhBcdZ.js → useIntegrationsApi-C3K1aAvJ.js} +3 -3
- package/dist/{useIntegrationsApi-v_nhBcdZ.js.map → useIntegrationsApi-C3K1aAvJ.js.map} +1 -1
- package/dist/{usePaymentApi-DrpxsySj.js → usePaymentApi-BqNzxqL8.js} +2 -10
- package/dist/{usePaymentApi-DrpxsySj.js.map → usePaymentApi-BqNzxqL8.js.map} +1 -1
- package/dist/{usePaymentApi-D1xXtOAq.js → usePaymentApi-Cf_jWBQK.js} +2 -2
- package/dist/{usePaymentApi-D1xXtOAq.js.map → usePaymentApi-Cf_jWBQK.js.map} +1 -1
- package/dist/{usePaymentApi-D-8CnzxZ.js → usePaymentApi-DHDDzZkq.js} +3 -3
- package/dist/{usePaymentApi-D-8CnzxZ.js.map → usePaymentApi-DHDDzZkq.js.map} +1 -1
- package/dist/{usePlatformApi-BrtHM9LM.js → usePlatformApi-CCMB7CBj.js} +3 -3
- package/dist/{usePlatformApi-BrtHM9LM.js.map → usePlatformApi-CCMB7CBj.js.map} +1 -1
- package/dist/useRazorpayPayment.js +2 -2
- package/dist/useRazorpayPayment.js.map +1 -1
- package/dist/useStripePromise.js +1 -1
- package/dist/useStripePromise.js.map +1 -1
- package/package.json +14 -15
- package/dist/CopyButtonWrapper-Bp5IVO76.js.map +0 -1
- package/dist/cjs/CopyButtonWrapper-I-kdKiiB.js.map +0 -1
- package/dist/queryConstants-C7AqdemO.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StripeConnect.js","sources":["../app/javascript/src/components/StripeConnect/constants.js","../app/javascript/src/components/StripeConnect/Account.jsx","../app/javascript/src/apis/countries.js","../app/javascript/src/hooks/reactQuery/useCountriesApi.js","../app/javascript/src/components/StripeConnect/utils.js","../app/javascript/src/components/StripeConnect/Country.jsx","../app/javascript/src/components/StripeConnect/Processing.jsx","../app/javascript/src/components/StripeConnect/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const VALID_ERROR_CODES = [\n \"account_already_exists\",\n \"account_not_activated\",\n];\n\nexport const INTEGRATION_METHOD = {\n useExistingAccount: \"use_existing_account\",\n createNewAccount: \"create_new_account\",\n};\n\nexport const INITIAL_VALUES = { country: \"\", return_url: \"\" };\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n country: yup\n .object()\n .required(t(\"neetoPayments.validations.countryRequired\")),\n});\n","import { useEffect, useState } from \"react\";\n\nimport DOMPurify from \"dompurify\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Radio, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { STRIPE_CONNECT_ENDPOINT } from \"src/constants\";\n\nimport { INTEGRATION_METHOD } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst Account = ({\n processingPageRoute,\n countryPageRoute,\n holdableId,\n productNameLabel,\n getStripeAccount,\n manageRoute,\n}) => {\n const { t } = useTranslation();\n const [selectedOption, setSelectedOption] = useState(\n INTEGRATION_METHOD.createNewAccount\n );\n\n const history = useHistory();\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations();\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const handleSubmit = () => {\n if (selectedOption !== INTEGRATION_METHOD.useExistingAccount) {\n return history.push(countryPageRoute);\n }\n\n const params = {\n return_url: `${window.location.origin}${processingPageRoute}`,\n };\n\n if (holdableId) {\n params.holdable_id = holdableId;\n }\n\n const stripeConnectUrl = buildUrl(STRIPE_CONNECT_ENDPOINT, params);\n\n return (window.location.href = sanitize(stripeConnectUrl));\n };\n\n useEffect(() => {\n if (stripeAccount?.isConnected) {\n history.push(manageRoute);\n }\n }, [stripeAccount?.isConnected]);\n\n return (\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n <Button\n label={t(\"neetoPayments.common.continue\")}\n onClick={handleSubmit}\n />\n }\n description={t(\"neetoPayments.stripeConnect.unlinkedDescription\", {\n productNameLabel,\n })}\n >\n <Radio\n value={selectedOption}\n onChange={({ target: { value } }) => setSelectedOption(value)}\n >\n <Radio.Item\n label={t(\"neetoPayments.stripeConnect.createNewAccount\")}\n name=\"accountMethod\"\n value={INTEGRATION_METHOD.createNewAccount}\n />\n <Radio.Item\n label={t(\"neetoPayments.stripeConnect.useExistingAccount\")}\n name=\"accountMethod\"\n value={INTEGRATION_METHOD.useExistingAccount}\n />\n </Radio>\n </CardLayout>\n );\n};\n\nexport default Account;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/api/v1/stripe/countries`);\n\nconst countriesApi = { fetchCountries };\n\nexport default countriesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport countriesApi from \"apis/countries\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchStripeCountries = () =>\n useQuery({\n queryKey: [QUERY_KEYS.STRIPE_COUNTRIES],\n queryFn: countriesApi.fetchCountries,\n });\n","import { humanize } from \"neetocist\";\n\nexport const buildRefreshUrl = (accountId, returnUrl) =>\n `${window.location.origin}/payments/api/v1/stripe/callbacks/${accountId}/refresh?return_url=${returnUrl}`;\n\nexport const buildCountryOptions = countries =>\n Object.entries(countries)?.map(country => ({\n label: humanize(country[0]),\n value: country[1],\n }));\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Spinner } from \"neetoui\";\nimport { Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n usePollingStripeAccountCreationStatus,\n useCreateStripeAccount,\n} from \"hooks/reactQuery/stripe/useAccountsApi\";\nimport { useFetchStripeCountries } from \"hooks/reactQuery/useCountriesApi\";\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { POLLING_INTERVAL } from \"src/constants\";\n\nimport { INITIAL_VALUES, VALIDATION_SCHEMA } from \"./constants\";\nimport { buildCountryOptions, buildRefreshUrl } from \"./utils\";\n\nconst Country = ({\n processingPageRoute,\n productNameLabel,\n getStripeAccount,\n holdableId = \"\",\n}) => {\n const [isPolling, setIsPolling] = useState(false);\n\n const { t } = useTranslation();\n const history = useHistory();\n\n const refetchInterval = query => {\n const { jobStatus, onboarding } = query.state.data || {};\n if (jobStatus === \"complete\") {\n window.open(onboarding?.url, \"_self\");\n\n return false;\n }\n\n return POLLING_INTERVAL;\n };\n\n const {\n isPending: isCreating,\n data: { jobId } = {},\n mutate: createStripeAccount,\n } = useCreateStripeAccount({ onSuccess: () => setIsPolling(true) });\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations();\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const { isLoading, data: { countries = {} } = {} } =\n useFetchStripeCountries();\n\n usePollingStripeAccountCreationStatus(jobId, {\n refetchInterval,\n enabled: isPresent(jobId),\n });\n\n const handleSubmit = values => {\n if (isPresent(stripeAccount)) {\n return (window.location.href = buildRefreshUrl(\n stripeAccount?.id,\n `${window.location.origin}${processingPageRoute}`\n ));\n }\n\n const payload = {\n returnUrl: `${window.location.origin}${processingPageRoute}`,\n country: values.country.value,\n };\n\n if (holdableId) {\n payload.holdableId = holdableId;\n }\n\n return createStripeAccount(payload);\n };\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center grow w-full\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues: INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: () => history.goBack() }}\n isSubmitting={isCreating || isPolling}\n submitButtonProps={{ label: t(\"neetoPayments.common.connect\") }}\n />\n }\n description={t(\"neetoPayments.stripeConnect.unlinkedDescription\", {\n productNameLabel,\n })}\n >\n <Select\n required\n helpText={t(\"neetoPayments.stripeConnect.countryHelpText\")}\n label={t(\"neetoPayments.common.country\")}\n name=\"country\"\n options={buildCountryOptions(countries)}\n placeholder={t(\"neetoPayments.stripeConnect.countryPlaceholder\")}\n />\n </CardLayout>\n </Form>\n );\n};\n\nexport default Country;\n","import { useEffect, useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { isPresent, humanize, isNotPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Typography, Callout, Spinner, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\nimport { POLLING_INTERVAL, ERROR_TYPE, MAX_POLLING_TIME } from \"src/constants\";\n\nconst Processing = ({\n baseRoute,\n getStripeAccount,\n productNameLabel,\n manageRoute,\n}) => {\n const queryClient = useQueryClient();\n const [isPolling, setIsPolling] = useState(false);\n const { t } = useTranslation();\n const history = useHistory();\n const { error, errorDescription = \"\" } = useQueryParams();\n\n const refetchInterval = query => {\n const { stripeStandardAccounts, stripeStandardAccount } =\n query.state.data || {};\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n if (!stripeAccount?.isConnected && isPolling) {\n return POLLING_INTERVAL;\n }\n\n if (stripeAccount?.isConnected) {\n setIsPolling(false);\n history.push(manageRoute);\n }\n\n return false;\n };\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations({\n refetchInterval,\n enabled: isNotPresent(error),\n });\n\n const errorMessage =\n error === ERROR_TYPE.processing_error\n ? errorDescription\n : humanize(errorDescription);\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const isAccountProcessingFailed =\n (isPresent(error) && isPresent(errorDescription)) ||\n (!isPolling && !stripeAccount?.isConnected);\n\n const handleRetry = () => {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.PAYMENT_INTEGRATION_LIST],\n });\n history.push(baseRoute);\n };\n\n useEffect(() => {\n if (stripeAccount?.isConnected) {\n history.push(manageRoute);\n }\n\n if (isNotPresent(error)) {\n setIsPolling(true);\n }\n\n const pollingTimeoutId = setTimeout(() => {\n setIsPolling(false);\n }, MAX_POLLING_TIME);\n\n return () => {\n clearTimeout(pollingTimeoutId);\n };\n }, []);\n\n return (\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n isAccountProcessingFailed && (\n <Button\n label={t(\"neetoPayments.common.tryAgain\")}\n onClick={handleRetry}\n />\n )\n }\n description={\n isAccountProcessingFailed\n ? t(\"neetoPayments.common.processingFailed\")\n : t(\"neetoPayments.stripeConnect.linkedDescription\", {\n productNameLabel,\n })\n }\n >\n {isPolling && (\n <Callout>\n <div className=\"flex space-x-4\">\n <Spinner />\n <Typography style=\"body1\">\n {t(\"neetoPayments.stripeConnect.verifyingMessage\")}\n </Typography>\n </div>\n </Callout>\n )}\n {isAccountProcessingFailed && (\n <Callout style=\"danger\">\n <Typography style=\"body1\">\n {isPresent(errorDescription)\n ? errorMessage\n : t(\"neetoPayments.stripeConnect.failedProcessing\")}\n </Typography>\n </Callout>\n )}\n </CardLayout>\n );\n};\n\nexport default Processing;\n","import { noop } from \"neetocist\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch } from \"react-router-dom\";\n\nimport Account from \"./Account\";\nimport Country from \"./Country\";\nimport Processing from \"./Processing\";\n\nconst StripeConnect = ({\n baseRoute,\n manageRoute,\n breadcrumbs,\n holdableId,\n productNameLabel,\n getStripeAccount = noop,\n}) => {\n const { t } = useTranslation();\n const countryPageRoute = `${baseRoute}/countries`;\n const processingPageRoute = `${baseRoute}/processing`;\n\n return (\n <Container>\n <Header {...{ breadcrumbs }} title={t(\"neetoPayments.common.connect\")} />\n <Switch>\n <Route\n exact\n path={baseRoute}\n render={() => (\n <Account\n {...{\n countryPageRoute,\n getStripeAccount,\n holdableId,\n manageRoute,\n processingPageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n <Route\n exact\n path={countryPageRoute}\n component={() => (\n <Country\n {...{\n getStripeAccount,\n holdableId,\n processingPageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n <Route\n exact\n path={processingPageRoute}\n component={() => (\n <Processing\n {...{\n baseRoute,\n getStripeAccount,\n manageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default StripeConnect;\n"],"names":["INTEGRATION_METHOD","useExistingAccount","createNewAccount","INITIAL_VALUES","country","return_url","VALIDATION_SCHEMA","yup","object","shape","required","t","sanitize","DOMPurify","Account","processingPageRoute","countryPageRoute","holdableId","productNameLabel","getStripeAccount","manageRoute","useTranslation","selectedOption","setSelectedOption","useState","history","useHistory","data","stripeStandardAccounts","stripeStandardAccount","useFetchPaymentIntegrations","stripeAccount","handleSubmit","push","params","window","location","origin","holdable_id","stripeConnectUrl","buildUrl","STRIPE_CONNECT_ENDPOINT","href","useEffect","isConnected","_jsx","CardLayout","icon","Stripe","size","title","actionBlock","Button","label","onClick","description","children","_jsxs","Radio","value","onChange","target","Item","name","fetchCountries","axios","get","BASE_URL","countriesApi","useFetchStripeCountries","useQuery","queryKey","QUERY_KEYS","STRIPE_COUNTRIES","queryFn","buildRefreshUrl","accountId","returnUrl","buildCountryOptions","countries","Object","entries","map","humanize","Country","isPolling","setIsPolling","refetchInterval","query","jobStatus","onboarding","state","open","url","POLLING_INTERVAL","isPending","isCreating","jobId","mutate","createStripeAccount","useCreateStripeAccount","onSuccess","isLoading","usePollingStripeAccountCreationStatus","enabled","isPresent","values","id","payload","className","Spinner","Form","formikProps","enableReinitialize","initialValues","validationSchema","onSubmit","ActionBlock","cancelButtonProps","goBack","isSubmitting","submitButtonProps","Select","helpText","options","placeholder","Processing","baseRoute","queryClient","useQueryClient","error","errorDescription","useQueryParams","isNotPresent","errorMessage","ERROR_TYPE","processing_error","isAccountProcessingFailed","handleRetry","invalidateQueries","PAYMENT_INTEGRATION_LIST","pollingTimeoutId","setTimeout","MAX_POLLING_TIME","clearTimeout","Callout","Typography","style","StripeConnect","breadcrumbs","noop","Container","Header","Switch","Route","exact","path","render","component"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StripeConnect.js","sources":["../app/javascript/src/components/StripeConnect/constants.js","../app/javascript/src/components/StripeConnect/Account.jsx","../app/javascript/src/apis/countries.js","../app/javascript/src/hooks/reactQuery/useCountriesApi.js","../app/javascript/src/components/StripeConnect/utils.js","../app/javascript/src/components/StripeConnect/Country.jsx","../app/javascript/src/components/StripeConnect/Processing.jsx","../app/javascript/src/components/StripeConnect/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const VALID_ERROR_CODES = [\n \"account_already_exists\",\n \"account_not_activated\",\n];\n\nexport const INTEGRATION_METHOD = {\n useExistingAccount: \"use_existing_account\",\n createNewAccount: \"create_new_account\",\n};\n\nexport const INITIAL_VALUES = { country: \"\", return_url: \"\" };\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n country: yup\n .object()\n .required(t(\"neetoPayments.validations.countryRequired\")),\n});\n","import { useEffect, useState } from \"react\";\n\nimport DOMPurify from \"dompurify\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Radio, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { STRIPE_CONNECT_ENDPOINT } from \"src/constants\";\n\nimport { INTEGRATION_METHOD } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst Account = ({\n processingPageRoute,\n countryPageRoute,\n holdableId,\n productNameLabel,\n getStripeAccount,\n manageRoute,\n}) => {\n const { t } = useTranslation();\n const [selectedOption, setSelectedOption] = useState(\n INTEGRATION_METHOD.createNewAccount\n );\n\n const history = useHistory();\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations();\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const handleSubmit = () => {\n if (selectedOption !== INTEGRATION_METHOD.useExistingAccount) {\n return history.push(countryPageRoute);\n }\n\n const params = {\n return_url: `${window.location.origin}${processingPageRoute}`,\n };\n\n if (holdableId) {\n params.holdable_id = holdableId;\n }\n\n const stripeConnectUrl = buildUrl(STRIPE_CONNECT_ENDPOINT, params);\n\n return (window.location.href = sanitize(stripeConnectUrl));\n };\n\n useEffect(() => {\n if (stripeAccount?.isConnected) {\n history.push(manageRoute);\n }\n }, [stripeAccount?.isConnected]);\n\n return (\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n <Button\n label={t(\"neetoPayments.common.continue\")}\n onClick={handleSubmit}\n />\n }\n description={t(\"neetoPayments.stripeConnect.unlinkedDescription\", {\n productNameLabel,\n })}\n >\n <Radio\n value={selectedOption}\n onChange={({ target: { value } }) => setSelectedOption(value)}\n >\n <Radio.Item\n label={t(\"neetoPayments.stripeConnect.createNewAccount\")}\n name=\"accountMethod\"\n value={INTEGRATION_METHOD.createNewAccount}\n />\n <Radio.Item\n label={t(\"neetoPayments.stripeConnect.useExistingAccount\")}\n name=\"accountMethod\"\n value={INTEGRATION_METHOD.useExistingAccount}\n />\n </Radio>\n </CardLayout>\n );\n};\n\nexport default Account;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/api/v1/stripe/countries`);\n\nconst countriesApi = { fetchCountries };\n\nexport default countriesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport countriesApi from \"apis/countries\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchStripeCountries = () =>\n useQuery({\n queryKey: [QUERY_KEYS.STRIPE_COUNTRIES],\n queryFn: countriesApi.fetchCountries,\n });\n","import { humanize } from \"neetocist\";\n\nexport const buildRefreshUrl = (accountId, returnUrl) =>\n `${window.location.origin}/payments/api/v1/stripe/callbacks/${accountId}/refresh?return_url=${returnUrl}`;\n\nexport const buildCountryOptions = countries =>\n Object.entries(countries)?.map(country => ({\n label: humanize(country[0]),\n value: country[1],\n }));\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Spinner } from \"neetoui\";\nimport { Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n usePollingStripeAccountCreationStatus,\n useCreateStripeAccount,\n} from \"hooks/reactQuery/stripe/useAccountsApi\";\nimport { useFetchStripeCountries } from \"hooks/reactQuery/useCountriesApi\";\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { POLLING_INTERVAL } from \"src/constants\";\n\nimport { INITIAL_VALUES, VALIDATION_SCHEMA } from \"./constants\";\nimport { buildCountryOptions, buildRefreshUrl } from \"./utils\";\n\nconst Country = ({\n processingPageRoute,\n productNameLabel,\n getStripeAccount,\n holdableId = \"\",\n}) => {\n const [isPolling, setIsPolling] = useState(false);\n\n const { t } = useTranslation();\n const history = useHistory();\n\n const refetchInterval = query => {\n const { jobStatus, onboarding } = query.state.data || {};\n if (jobStatus === \"complete\") {\n window.open(onboarding?.url, \"_self\");\n\n return false;\n }\n\n return POLLING_INTERVAL;\n };\n\n const {\n isPending: isCreating,\n data: { jobId } = {},\n mutate: createStripeAccount,\n } = useCreateStripeAccount({ onSuccess: () => setIsPolling(true) });\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations();\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const { isLoading, data: { countries = {} } = {} } =\n useFetchStripeCountries();\n\n usePollingStripeAccountCreationStatus(jobId, {\n refetchInterval,\n enabled: isPresent(jobId),\n });\n\n const handleSubmit = values => {\n if (isPresent(stripeAccount)) {\n return (window.location.href = buildRefreshUrl(\n stripeAccount?.id,\n `${window.location.origin}${processingPageRoute}`\n ));\n }\n\n const payload = {\n returnUrl: `${window.location.origin}${processingPageRoute}`,\n country: values.country.value,\n };\n\n if (holdableId) {\n payload.holdableId = holdableId;\n }\n\n return createStripeAccount(payload);\n };\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center grow w-full\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues: INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: () => history.goBack() }}\n isSubmitting={isCreating || isPolling}\n submitButtonProps={{ label: t(\"neetoPayments.common.connect\") }}\n />\n }\n description={t(\"neetoPayments.stripeConnect.unlinkedDescription\", {\n productNameLabel,\n })}\n >\n <Select\n required\n helpText={t(\"neetoPayments.stripeConnect.countryHelpText\")}\n label={t(\"neetoPayments.common.country\")}\n name=\"country\"\n options={buildCountryOptions(countries)}\n placeholder={t(\"neetoPayments.stripeConnect.countryPlaceholder\")}\n />\n </CardLayout>\n </Form>\n );\n};\n\nexport default Country;\n","import { useEffect, useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { isPresent, humanize, isNotPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Stripe } from \"neetoicons/misc\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Typography, Callout, Spinner, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchPaymentIntegrations } from \"hooks/reactQuery/useIntegrationsApi\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\nimport { POLLING_INTERVAL, ERROR_TYPE, MAX_POLLING_TIME } from \"src/constants\";\n\nconst Processing = ({\n baseRoute,\n getStripeAccount,\n productNameLabel,\n manageRoute,\n}) => {\n const queryClient = useQueryClient();\n const [isPolling, setIsPolling] = useState(false);\n const { t } = useTranslation();\n const history = useHistory();\n const { error, errorDescription = \"\" } = useQueryParams();\n\n const refetchInterval = query => {\n const { stripeStandardAccounts, stripeStandardAccount } =\n query.state.data || {};\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n if (!stripeAccount?.isConnected && isPolling) {\n return POLLING_INTERVAL;\n }\n\n if (stripeAccount?.isConnected) {\n setIsPolling(false);\n history.push(manageRoute);\n }\n\n return false;\n };\n\n const { data: { stripeStandardAccounts, stripeStandardAccount } = {} } =\n useFetchPaymentIntegrations({\n refetchInterval,\n enabled: isNotPresent(error),\n });\n\n const errorMessage =\n error === ERROR_TYPE.processing_error\n ? errorDescription\n : humanize(errorDescription);\n\n const stripeAccount =\n getStripeAccount(stripeStandardAccounts) || stripeStandardAccount;\n\n const isAccountProcessingFailed =\n (isPresent(error) && isPresent(errorDescription)) ||\n (!isPolling && !stripeAccount?.isConnected);\n\n const handleRetry = () => {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.PAYMENT_INTEGRATION_LIST],\n });\n history.push(baseRoute);\n };\n\n useEffect(() => {\n if (stripeAccount?.isConnected) {\n history.push(manageRoute);\n }\n\n if (isNotPresent(error)) {\n setIsPolling(true);\n }\n\n const pollingTimeoutId = setTimeout(() => {\n setIsPolling(false);\n }, MAX_POLLING_TIME);\n\n return () => {\n clearTimeout(pollingTimeoutId);\n };\n }, []);\n\n return (\n <CardLayout\n icon={<Stripe size={48} />}\n title={t(\"neetoPayments.stripeConnect.title\")}\n actionBlock={\n isAccountProcessingFailed && (\n <Button\n label={t(\"neetoPayments.common.tryAgain\")}\n onClick={handleRetry}\n />\n )\n }\n description={\n isAccountProcessingFailed\n ? t(\"neetoPayments.common.processingFailed\")\n : t(\"neetoPayments.stripeConnect.linkedDescription\", {\n productNameLabel,\n })\n }\n >\n {isPolling && (\n <Callout>\n <div className=\"flex space-x-4\">\n <Spinner />\n <Typography style=\"body1\">\n {t(\"neetoPayments.stripeConnect.verifyingMessage\")}\n </Typography>\n </div>\n </Callout>\n )}\n {isAccountProcessingFailed && (\n <Callout style=\"danger\">\n <Typography style=\"body1\">\n {isPresent(errorDescription)\n ? errorMessage\n : t(\"neetoPayments.stripeConnect.failedProcessing\")}\n </Typography>\n </Callout>\n )}\n </CardLayout>\n );\n};\n\nexport default Processing;\n","import { noop } from \"neetocist\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch } from \"react-router-dom\";\n\nimport Account from \"./Account\";\nimport Country from \"./Country\";\nimport Processing from \"./Processing\";\n\nconst StripeConnect = ({\n baseRoute,\n manageRoute,\n breadcrumbs,\n holdableId,\n productNameLabel,\n getStripeAccount = noop,\n}) => {\n const { t } = useTranslation();\n const countryPageRoute = `${baseRoute}/countries`;\n const processingPageRoute = `${baseRoute}/processing`;\n\n return (\n <Container>\n <Header {...{ breadcrumbs }} title={t(\"neetoPayments.common.connect\")} />\n <Switch>\n <Route\n exact\n path={baseRoute}\n render={() => (\n <Account\n {...{\n countryPageRoute,\n getStripeAccount,\n holdableId,\n manageRoute,\n processingPageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n <Route\n exact\n path={countryPageRoute}\n component={() => (\n <Country\n {...{\n getStripeAccount,\n holdableId,\n processingPageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n <Route\n exact\n path={processingPageRoute}\n component={() => (\n <Processing\n {...{\n baseRoute,\n getStripeAccount,\n manageRoute,\n productNameLabel,\n }}\n />\n )}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default StripeConnect;\n"],"names":["INTEGRATION_METHOD","useExistingAccount","createNewAccount","INITIAL_VALUES","country","return_url","VALIDATION_SCHEMA","yup","object","shape","required","t","sanitize","DOMPurify","Account","processingPageRoute","countryPageRoute","holdableId","productNameLabel","getStripeAccount","manageRoute","useTranslation","selectedOption","setSelectedOption","useState","history","useHistory","data","stripeStandardAccounts","stripeStandardAccount","useFetchPaymentIntegrations","stripeAccount","handleSubmit","push","params","window","location","origin","holdable_id","stripeConnectUrl","buildUrl","STRIPE_CONNECT_ENDPOINT","href","useEffect","isConnected","_jsx","CardLayout","icon","Stripe","size","title","actionBlock","Button","label","onClick","description","children","_jsxs","Radio","value","onChange","target","Item","name","fetchCountries","axios","get","BASE_URL","countriesApi","useFetchStripeCountries","useQuery","queryKey","QUERY_KEYS","STRIPE_COUNTRIES","queryFn","buildRefreshUrl","accountId","returnUrl","buildCountryOptions","countries","Object","entries","map","humanize","Country","isPolling","setIsPolling","refetchInterval","query","jobStatus","onboarding","state","open","url","POLLING_INTERVAL","isPending","isCreating","jobId","mutate","createStripeAccount","useCreateStripeAccount","onSuccess","isLoading","usePollingStripeAccountCreationStatus","enabled","isPresent","values","id","payload","className","Spinner","Form","formikProps","enableReinitialize","initialValues","validationSchema","onSubmit","ActionBlock","cancelButtonProps","goBack","isSubmitting","submitButtonProps","Select","helpText","options","placeholder","Processing","baseRoute","queryClient","useQueryClient","error","errorDescription","useQueryParams","isNotPresent","errorMessage","ERROR_TYPE","processing_error","isAccountProcessingFailed","handleRetry","invalidateQueries","PAYMENT_INTEGRATION_LIST","pollingTimeoutId","setTimeout","MAX_POLLING_TIME","clearTimeout","Callout","Typography","style","StripeConnect","breadcrumbs","noop","Container","Header","Switch","Route","exact","path","render","component"],"mappings":"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"}
|
package/dist/StripeManage.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { ExternalLink } from '@bigbinary/neeto-icons';
|
|
2
2
|
import { withT } from 'neetocommons/react-utils';
|
|
3
3
|
import CardLayout from '@bigbinary/neeto-molecules/CardLayout';
|
|
4
|
-
import {
|
|
4
|
+
import { Typography, Button } from '@bigbinary/neetoui';
|
|
5
5
|
import StripeCheckoutSetting from './StripeCheckoutSetting.js';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
7
|
import 'react-i18next';
|
|
8
8
|
import '@tanstack/react-query';
|
|
9
9
|
import 'ramda';
|
|
10
10
|
import 'axios';
|
|
11
|
-
import './index-
|
|
11
|
+
import './index-15RrM-W8.js';
|
|
12
12
|
import 'i18next';
|
|
13
13
|
import 'neetocommons/constants';
|
|
14
14
|
import 'decimal.js';
|
|
15
15
|
import 'neetocist';
|
|
16
16
|
import 'neetocommons/utils';
|
|
17
|
-
import './queryConstants-
|
|
17
|
+
import './queryConstants-8c7Nd8ML.js';
|
|
18
18
|
|
|
19
19
|
const StripeManage = withT(({
|
|
20
20
|
t,
|
package/dist/TaxesDashboard.js
CHANGED
|
@@ -5,8 +5,8 @@ import { useTranslation, Trans } from 'react-i18next';
|
|
|
5
5
|
import { useQuery } from '@tanstack/react-query';
|
|
6
6
|
import { useMutationWithInvalidation } from 'neetocommons/react-utils';
|
|
7
7
|
import axios from 'axios';
|
|
8
|
-
import { B as BASE_URL } from './index-
|
|
9
|
-
import { Q as QUERY_KEYS } from './queryConstants-
|
|
8
|
+
import { B as BASE_URL } from './index-15RrM-W8.js';
|
|
9
|
+
import { Q as QUERY_KEYS } from './queryConstants-8c7Nd8ML.js';
|
|
10
10
|
import Container from '@bigbinary/neeto-molecules/Container';
|
|
11
11
|
import Header$1 from '@bigbinary/neeto-molecules/Header';
|
|
12
12
|
import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaxesDashboard.js","sources":["../app/javascript/src/apis/taxes.js","../app/javascript/src/hooks/reactQuery/useTaxesApi.js","../app/javascript/src/components/TaxesDashboard/FormPane/constants.js","../app/javascript/src/components/TaxesDashboard/FormPane/index.jsx","../app/javascript/src/components/TaxesDashboard/utils.jsx","../app/javascript/src/components/TaxesDashboard/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = taxableId =>\n axios.get(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes`);\n\nconst create = ({ taxableId, payload }) =>\n axios.post(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes`, {\n tax: payload,\n });\n\nconst update = ({ taxableId, taxId, payload }) =>\n axios.put(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes/${taxId}`, {\n tax: payload,\n });\n\nconst destroy = ({ taxableId, taxId }) =>\n axios.delete(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes/${taxId}`);\n\nconst taxesApi = { list, create, update, destroy };\n\nexport default taxesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { isNotNil } from \"ramda\";\n\nimport taxesApi from \"apis/taxes\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchTaxes = ({ taxableId }) =>\n useQuery({\n queryKey: [QUERY_KEYS.TAXES, taxableId],\n queryFn: () => taxesApi.list(taxableId),\n enabled: isNotNil(taxableId),\n });\n\nexport const useCreateTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.create, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n\nexport const useUpdateTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.update, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n\nexport const useDeleteTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.destroy, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n kind: \"percentage\",\n value: \"\",\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(t(\"neetoPayments.validations.nameRequired\")),\n description: yup.string().nullable(),\n kind: yup.string().required(t(\"neetoPayments.validations.kindRequired\")),\n value: yup\n .number()\n .when(\"kind\", {\n is: \"percentage\",\n then: yup\n .number()\n .min(1, t(\"neetoPayments.validations.valueGreaterThanOrEqualToOne\"))\n .max(100, t(\"neetoPayments.validations.valueLessThanOrEqualToHundred\")),\n })\n .positive(t(\"neetoPayments.validations.valueMustBePositive\"))\n .required(t(\"neetoPayments.validations.valueRequired\")),\n});\n","import { isPresent } from \"neetocist\";\nimport { Label, Typography, Pane, Callout } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTax, useUpdateTax } from \"hooks/reactQuery/useTaxesApi\";\n\nimport { INITIAL_VALUES, VALIDATION_SCHEMA } from \"./constants\";\n\nconst { Header, Body, Footer } = Pane;\nconst FormPane = ({\n taxableId,\n taxToEdit,\n setTaxToEdit,\n isOpen,\n setIsOpen,\n onTaxesChange,\n}) => {\n const { t } = useTranslation();\n const { mutate: create, isPending: isCreating } = useCreateTax(\n { taxableId },\n {\n onSuccess: () => {\n setIsOpen(false);\n onTaxesChange();\n },\n }\n );\n\n const { mutate: update, isPending: isUpdating } = useUpdateTax(\n { taxableId },\n {\n onSuccess: () => {\n setIsOpen(false);\n onTaxesChange();\n },\n }\n );\n\n const isEdit = isPresent(taxToEdit?.id);\n const handleSubmit = values => {\n if (isEdit) {\n update({ taxableId, taxId: taxToEdit.id, payload: values });\n setTaxToEdit(null);\n } else {\n create({ taxableId, payload: values });\n }\n };\n\n return (\n <Pane\n {...{ isOpen }}\n onClose={() => {\n setIsOpen(false);\n setTaxToEdit(null);\n }}\n >\n <Header>\n <Typography style=\"h3\">\n {isEdit\n ? t(\"neetoPayments.taxesDashboard.form.title.edit\")\n : t(\"neetoPayments.taxesDashboard.form.title.create\")}\n </Typography>\n </Header>\n <Form\n formikProps={{\n initialValues: isEdit ? taxToEdit : INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Body>\n <div className=\"flex flex-col w-full gap-4\">\n <Input\n required\n label={t(\"neetoPayments.taxesDashboard.form.name.label\")}\n name=\"name\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.name.placeholder\"\n )}\n />\n <Callout style=\"info\">\n {t(\"neetoPayments.taxesDashboard.form.name.helpText\")}\n </Callout>\n <Input\n label={t(\"neetoPayments.taxesDashboard.form.description.label\")}\n name=\"description\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.description.placeholder\"\n )}\n />\n <Label>{t(\"neetoPayments.taxesDashboard.form.kind.label\")}</Label>\n <Radio stacked name=\"kind\">\n <Radio.Item\n label={t(\"neetoPayments.taxesDashboard.form.kind.percentage\")}\n value=\"percentage\"\n />\n <Radio.Item\n label={t(\"neetoPayments.taxesDashboard.form.kind.fixed\")}\n value=\"fixed\"\n />\n </Radio>\n <Input\n required\n label={t(\"neetoPayments.taxesDashboard.form.value.label\")}\n name=\"value\"\n type=\"number\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.value.placeholder\"\n )}\n />\n </div>\n </Body>\n <Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: () => setIsOpen(false) }}\n isSubmitting={isCreating || isUpdating}\n />\n </Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default FormPane;\n","import { t } from \"i18next\";\nimport { humanize, truncate } from \"neetocist\";\n\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nexport const generateColumnData = handleDropdownClick => [\n {\n title: t(\"neetoPayments.taxesDashboard.table.taxName\"),\n dataIndex: \"name\",\n render: (name, tax) => (\n <div className=\"flex justify-between gap-2\">\n <Typography style=\"body1\">{truncate(name, 100)}</Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n key: \"edit\",\n label: t(\"neetoPayments.common.edit\"),\n onClick: () => handleDropdownClick(tax, \"edit\"),\n \"data-testid\": \"menu-dropdown-edit-button\",\n },\n {\n key: \"delete\",\n label: t(\"neetoPayments.common.delete\"),\n onClick: () => handleDropdownClick(tax, \"delete\"),\n \"data-testid\": \"menu-dropdown-delete-button\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.description\"),\n dataIndex: \"description\",\n width: 300,\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.value\"),\n dataIndex: \"value\",\n render: (value, tax) => (\n <>{tax.kind === \"percentage\" ? `${value}%` : value}</>\n ),\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.type\"),\n dataIndex: \"kind\",\n render: value => <>{humanize(value)}</>,\n },\n];\n","import { useState } from \"react\";\n\nimport { noop, isPresent } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useFetchTaxes, useDeleteTax } from \"hooks/reactQuery/useTaxesApi\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, Alert, NoData, Spinner } from \"neetoui\";\n\nimport FormPane from \"./FormPane\";\nimport { generateColumnData } from \"./utils\";\n\nconst TaxesDashboard = ({\n taxableId,\n breadcrumbs,\n noDataHelpText = \"\",\n onTaxesChange = noop,\n titleHelpPopoverProps = {},\n}) => {\n const [isFormPaneOpen, setIsFormPaneOpen] = useState(false);\n const [taxToEdit, setTaxToEdit] = useState(null);\n const [taxToDelete, setTaxToDelete] = useState(null);\n\n const { data: { taxes = [] } = {}, isLoading } = useFetchTaxes({ taxableId });\n const { mutate: deleteTax } = useDeleteTax(\n { taxableId },\n { onSuccess: onTaxesChange }\n );\n\n const { t } = useTranslation();\n\n const handleDropdownClick = (tax, action) => {\n switch (action) {\n case \"edit\":\n setTaxToEdit(tax);\n setIsFormPaneOpen(true);\n break;\n case \"delete\":\n setTaxToDelete(tax);\n break;\n }\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={t(\"neetoPayments.taxesDashboard.title\")}\n actionBlock={\n <Button\n data-testid=\"add-new-tax-button\"\n label={t(\"neetoPayments.taxesDashboard.buttons.add\")}\n onClick={() => setIsFormPaneOpen(true)}\n />\n }\n />\n {isEmpty(taxes) ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n helpText={noDataHelpText}\n title={t(\"neetoPayments.taxesDashboard.noData\")}\n primaryButtonProps={{\n label: t(\"neetoPayments.taxesDashboard.buttons.add\"),\n onClick: () => setIsFormPaneOpen(true),\n }}\n />\n </div>\n ) : (\n <TableWrapper>\n <Table\n fixedHeight\n columnData={generateColumnData(handleDropdownClick)}\n loading={isLoading}\n rowData={taxes}\n />\n </TableWrapper>\n )}\n <FormPane\n {...{ onTaxesChange, setTaxToEdit, taxToEdit, taxableId }}\n isOpen={isFormPaneOpen}\n setIsOpen={setIsFormPaneOpen}\n />\n <Alert\n isOpen={isPresent(taxToDelete)}\n title={t(\"neetoPayments.alert.delete.tax.title\")}\n message={\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoPayments.alert.delete.tax.message\"\n values={{ name: taxToDelete?.name }}\n />\n }\n onClose={() => setTaxToDelete(null)}\n onSubmit={() => {\n deleteTax({ taxableId, taxId: taxToDelete?.id });\n setTaxToDelete(null);\n }}\n />\n </Container>\n );\n};\n\nexport default TaxesDashboard;\n"],"names":["list","taxableId","axios","get","BASE_URL","create","payload","post","tax","update","taxId","put","destroy","delete","taxesApi","useFetchTaxes","useQuery","queryKey","QUERY_KEYS","TAXES","queryFn","enabled","isNotNil","useCreateTax","options","useMutationWithInvalidation","keysToInvalidate","useUpdateTax","useDeleteTax","INITIAL_VALUES","name","description","kind","value","VALIDATION_SCHEMA","yup","object","shape","string","required","t","nullable","number","when","is","then","min","max","positive","Header","Body","Footer","Pane","FormPane","taxToEdit","setTaxToEdit","isOpen","setIsOpen","onTaxesChange","useTranslation","mutate","isPending","isCreating","onSuccess","isUpdating","isEdit","isPresent","id","handleSubmit","values","_jsxs","onClose","children","_jsx","Typography","style","Form","formikProps","initialValues","validationSchema","onSubmit","className","Input","label","placeholder","Callout","Label","Radio","stacked","Item","type","ActionBlock","cancelButtonProps","onClick","isSubmitting","generateColumnData","handleDropdownClick","title","dataIndex","render","truncate","MoreDropdown","dropdownProps","strategy","menuItems","key","width","_Fragment","humanize","TaxesDashboard","breadcrumbs","noDataHelpText","noop","titleHelpPopoverProps","isFormPaneOpen","setIsFormPaneOpen","useState","taxToDelete","setTaxToDelete","data","taxes","isLoading","deleteTax","action","Spinner","Container","actionBlock","Button","isEmpty","NoData","helpText","primaryButtonProps","TableWrapper","Table","fixedHeight","columnData","loading","rowData","Alert","message","Trans","components","strong","i18nKey"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TaxesDashboard.js","sources":["../app/javascript/src/apis/taxes.js","../app/javascript/src/hooks/reactQuery/useTaxesApi.js","../app/javascript/src/components/TaxesDashboard/FormPane/constants.js","../app/javascript/src/components/TaxesDashboard/FormPane/index.jsx","../app/javascript/src/components/TaxesDashboard/utils.jsx","../app/javascript/src/components/TaxesDashboard/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = taxableId =>\n axios.get(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes`);\n\nconst create = ({ taxableId, payload }) =>\n axios.post(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes`, {\n tax: payload,\n });\n\nconst update = ({ taxableId, taxId, payload }) =>\n axios.put(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes/${taxId}`, {\n tax: payload,\n });\n\nconst destroy = ({ taxableId, taxId }) =>\n axios.delete(`${BASE_URL}/api/v1/taxable/${taxableId}/taxes/${taxId}`);\n\nconst taxesApi = { list, create, update, destroy };\n\nexport default taxesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { isNotNil } from \"ramda\";\n\nimport taxesApi from \"apis/taxes\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchTaxes = ({ taxableId }) =>\n useQuery({\n queryKey: [QUERY_KEYS.TAXES, taxableId],\n queryFn: () => taxesApi.list(taxableId),\n enabled: isNotNil(taxableId),\n });\n\nexport const useCreateTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.create, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n\nexport const useUpdateTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.update, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n\nexport const useDeleteTax = ({ taxableId }, options) =>\n useMutationWithInvalidation(taxesApi.destroy, {\n keysToInvalidate: [QUERY_KEYS.TAXES, taxableId],\n ...options,\n });\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n kind: \"percentage\",\n value: \"\",\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(t(\"neetoPayments.validations.nameRequired\")),\n description: yup.string().nullable(),\n kind: yup.string().required(t(\"neetoPayments.validations.kindRequired\")),\n value: yup\n .number()\n .when(\"kind\", {\n is: \"percentage\",\n then: yup\n .number()\n .min(1, t(\"neetoPayments.validations.valueGreaterThanOrEqualToOne\"))\n .max(100, t(\"neetoPayments.validations.valueLessThanOrEqualToHundred\")),\n })\n .positive(t(\"neetoPayments.validations.valueMustBePositive\"))\n .required(t(\"neetoPayments.validations.valueRequired\")),\n});\n","import { isPresent } from \"neetocist\";\nimport { Label, Typography, Pane, Callout } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTax, useUpdateTax } from \"hooks/reactQuery/useTaxesApi\";\n\nimport { INITIAL_VALUES, VALIDATION_SCHEMA } from \"./constants\";\n\nconst { Header, Body, Footer } = Pane;\nconst FormPane = ({\n taxableId,\n taxToEdit,\n setTaxToEdit,\n isOpen,\n setIsOpen,\n onTaxesChange,\n}) => {\n const { t } = useTranslation();\n const { mutate: create, isPending: isCreating } = useCreateTax(\n { taxableId },\n {\n onSuccess: () => {\n setIsOpen(false);\n onTaxesChange();\n },\n }\n );\n\n const { mutate: update, isPending: isUpdating } = useUpdateTax(\n { taxableId },\n {\n onSuccess: () => {\n setIsOpen(false);\n onTaxesChange();\n },\n }\n );\n\n const isEdit = isPresent(taxToEdit?.id);\n const handleSubmit = values => {\n if (isEdit) {\n update({ taxableId, taxId: taxToEdit.id, payload: values });\n setTaxToEdit(null);\n } else {\n create({ taxableId, payload: values });\n }\n };\n\n return (\n <Pane\n {...{ isOpen }}\n onClose={() => {\n setIsOpen(false);\n setTaxToEdit(null);\n }}\n >\n <Header>\n <Typography style=\"h3\">\n {isEdit\n ? t(\"neetoPayments.taxesDashboard.form.title.edit\")\n : t(\"neetoPayments.taxesDashboard.form.title.create\")}\n </Typography>\n </Header>\n <Form\n formikProps={{\n initialValues: isEdit ? taxToEdit : INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Body>\n <div className=\"flex flex-col w-full gap-4\">\n <Input\n required\n label={t(\"neetoPayments.taxesDashboard.form.name.label\")}\n name=\"name\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.name.placeholder\"\n )}\n />\n <Callout style=\"info\">\n {t(\"neetoPayments.taxesDashboard.form.name.helpText\")}\n </Callout>\n <Input\n label={t(\"neetoPayments.taxesDashboard.form.description.label\")}\n name=\"description\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.description.placeholder\"\n )}\n />\n <Label>{t(\"neetoPayments.taxesDashboard.form.kind.label\")}</Label>\n <Radio stacked name=\"kind\">\n <Radio.Item\n label={t(\"neetoPayments.taxesDashboard.form.kind.percentage\")}\n value=\"percentage\"\n />\n <Radio.Item\n label={t(\"neetoPayments.taxesDashboard.form.kind.fixed\")}\n value=\"fixed\"\n />\n </Radio>\n <Input\n required\n label={t(\"neetoPayments.taxesDashboard.form.value.label\")}\n name=\"value\"\n type=\"number\"\n placeholder={t(\n \"neetoPayments.taxesDashboard.form.value.placeholder\"\n )}\n />\n </div>\n </Body>\n <Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: () => setIsOpen(false) }}\n isSubmitting={isCreating || isUpdating}\n />\n </Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default FormPane;\n","import { t } from \"i18next\";\nimport { humanize, truncate } from \"neetocist\";\n\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nexport const generateColumnData = handleDropdownClick => [\n {\n title: t(\"neetoPayments.taxesDashboard.table.taxName\"),\n dataIndex: \"name\",\n render: (name, tax) => (\n <div className=\"flex justify-between gap-2\">\n <Typography style=\"body1\">{truncate(name, 100)}</Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n key: \"edit\",\n label: t(\"neetoPayments.common.edit\"),\n onClick: () => handleDropdownClick(tax, \"edit\"),\n \"data-testid\": \"menu-dropdown-edit-button\",\n },\n {\n key: \"delete\",\n label: t(\"neetoPayments.common.delete\"),\n onClick: () => handleDropdownClick(tax, \"delete\"),\n \"data-testid\": \"menu-dropdown-delete-button\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.description\"),\n dataIndex: \"description\",\n width: 300,\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.value\"),\n dataIndex: \"value\",\n render: (value, tax) => (\n <>{tax.kind === \"percentage\" ? `${value}%` : value}</>\n ),\n },\n {\n title: t(\"neetoPayments.taxesDashboard.table.type\"),\n dataIndex: \"kind\",\n render: value => <>{humanize(value)}</>,\n },\n];\n","import { useState } from \"react\";\n\nimport { noop, isPresent } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useFetchTaxes, useDeleteTax } from \"hooks/reactQuery/useTaxesApi\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, Alert, NoData, Spinner } from \"neetoui\";\n\nimport FormPane from \"./FormPane\";\nimport { generateColumnData } from \"./utils\";\n\nconst TaxesDashboard = ({\n taxableId,\n breadcrumbs,\n noDataHelpText = \"\",\n onTaxesChange = noop,\n titleHelpPopoverProps = {},\n}) => {\n const [isFormPaneOpen, setIsFormPaneOpen] = useState(false);\n const [taxToEdit, setTaxToEdit] = useState(null);\n const [taxToDelete, setTaxToDelete] = useState(null);\n\n const { data: { taxes = [] } = {}, isLoading } = useFetchTaxes({ taxableId });\n const { mutate: deleteTax } = useDeleteTax(\n { taxableId },\n { onSuccess: onTaxesChange }\n );\n\n const { t } = useTranslation();\n\n const handleDropdownClick = (tax, action) => {\n switch (action) {\n case \"edit\":\n setTaxToEdit(tax);\n setIsFormPaneOpen(true);\n break;\n case \"delete\":\n setTaxToDelete(tax);\n break;\n }\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={t(\"neetoPayments.taxesDashboard.title\")}\n actionBlock={\n <Button\n data-testid=\"add-new-tax-button\"\n label={t(\"neetoPayments.taxesDashboard.buttons.add\")}\n onClick={() => setIsFormPaneOpen(true)}\n />\n }\n />\n {isEmpty(taxes) ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n helpText={noDataHelpText}\n title={t(\"neetoPayments.taxesDashboard.noData\")}\n primaryButtonProps={{\n label: t(\"neetoPayments.taxesDashboard.buttons.add\"),\n onClick: () => setIsFormPaneOpen(true),\n }}\n />\n </div>\n ) : (\n <TableWrapper>\n <Table\n fixedHeight\n columnData={generateColumnData(handleDropdownClick)}\n loading={isLoading}\n rowData={taxes}\n />\n </TableWrapper>\n )}\n <FormPane\n {...{ onTaxesChange, setTaxToEdit, taxToEdit, taxableId }}\n isOpen={isFormPaneOpen}\n setIsOpen={setIsFormPaneOpen}\n />\n <Alert\n isOpen={isPresent(taxToDelete)}\n title={t(\"neetoPayments.alert.delete.tax.title\")}\n message={\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoPayments.alert.delete.tax.message\"\n values={{ name: taxToDelete?.name }}\n />\n }\n onClose={() => setTaxToDelete(null)}\n onSubmit={() => {\n deleteTax({ taxableId, taxId: taxToDelete?.id });\n setTaxToDelete(null);\n }}\n />\n </Container>\n );\n};\n\nexport default TaxesDashboard;\n"],"names":["list","taxableId","axios","get","BASE_URL","create","payload","post","tax","update","taxId","put","destroy","delete","taxesApi","useFetchTaxes","useQuery","queryKey","QUERY_KEYS","TAXES","queryFn","enabled","isNotNil","useCreateTax","options","useMutationWithInvalidation","keysToInvalidate","useUpdateTax","useDeleteTax","INITIAL_VALUES","name","description","kind","value","VALIDATION_SCHEMA","yup","object","shape","string","required","t","nullable","number","when","is","then","min","max","positive","Header","Body","Footer","Pane","FormPane","taxToEdit","setTaxToEdit","isOpen","setIsOpen","onTaxesChange","useTranslation","mutate","isPending","isCreating","onSuccess","isUpdating","isEdit","isPresent","id","handleSubmit","values","_jsxs","onClose","children","_jsx","Typography","style","Form","formikProps","initialValues","validationSchema","onSubmit","className","Input","label","placeholder","Callout","Label","Radio","stacked","Item","type","ActionBlock","cancelButtonProps","onClick","isSubmitting","generateColumnData","handleDropdownClick","title","dataIndex","render","truncate","MoreDropdown","dropdownProps","strategy","menuItems","key","width","_Fragment","humanize","TaxesDashboard","breadcrumbs","noDataHelpText","noop","titleHelpPopoverProps","isFormPaneOpen","setIsFormPaneOpen","useState","taxToDelete","setTaxToDelete","data","taxes","isLoading","deleteTax","action","Spinner","Container","actionBlock","Button","isEmpty","NoData","helpText","primaryButtonProps","TableWrapper","Table","fixedHeight","columnData","loading","rowData","Alert","message","Trans","components","strong","i18nKey"],"mappings":"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"}
|
|
@@ -18,19 +18,19 @@ var utils = require('neetocommons/utils');
|
|
|
18
18
|
var ramda = require('ramda');
|
|
19
19
|
var reactRouterDom = require('react-router-dom');
|
|
20
20
|
var dashboard = require('./dashboard-BWh6P9BB.js');
|
|
21
|
-
var renderFunctions = require('./renderFunctions-
|
|
22
|
-
var CopyButtonWrapper = require('./CopyButtonWrapper-
|
|
21
|
+
var renderFunctions = require('./renderFunctions-B61EfbIp.js');
|
|
22
|
+
var CopyButtonWrapper = require('./CopyButtonWrapper-DZ9rE5UR.js');
|
|
23
23
|
var constants$1 = require('neetocommons/constants');
|
|
24
24
|
var Columns = require('@bigbinary/neeto-molecules/Columns');
|
|
25
25
|
var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
|
|
26
|
-
var useAccountsApi = require('./useAccountsApi-
|
|
26
|
+
var useAccountsApi = require('./useAccountsApi-B1riDzpb.js');
|
|
27
27
|
require('@tanstack/react-query');
|
|
28
28
|
require('@tanstack/react-query-devtools');
|
|
29
29
|
require('axios');
|
|
30
30
|
require('decimal.js');
|
|
31
31
|
require('@bigbinary/neeto-molecules/DateFormat');
|
|
32
32
|
require('@bigbinary/neeto-molecules/CopyToClipboardButton');
|
|
33
|
-
require('./queryConstants-
|
|
33
|
+
require('./queryConstants-CGUF7zol.js');
|
|
34
34
|
|
|
35
35
|
const TAB = {
|
|
36
36
|
all: "all",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountsDashboard.js","sources":["../../app/javascript/src/components/AccountsDashboard/constants/index.js","../../app/javascript/src/components/AccountsDashboard/ExportModal.jsx","../../app/javascript/src/components/AccountsDashboard/utils/renderFunctions.jsx","../../app/javascript/src/components/AccountsDashboard/constants/columns.js","../../app/javascript/src/components/AccountsDashboard/hooks/useFiltersAndPagination.js","../../app/javascript/src/components/AccountsDashboard/List.jsx","../../app/javascript/src/components/AccountsDashboard/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TAB = {\n all: \"all\",\n connected: \"connected\",\n disconnected: \"disconnected\",\n incomplete: \"incomplete\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const SEARCH_PROPS = {\n key: \"keyword\",\n node: \"identifier,user.first_name,last_name,email\",\n model: \"NeetoPaymentsEngine::Stripe::Account,User\",\n};\n\nexport const DASHBOARD_MANDATORY_COLUMNS = [\"id\", \"status\", \"identifier\"];\n\nexport const FILTER_COLUMNS = [\n {\n key: \"created_at\",\n label: t(\"neetoPayments.common.createdAt\"),\n node: \"created_at\",\n type: \"date\",\n showRuleSelector: true,\n },\n];\n\nexport const STRIPE_ACCOUNTS_TABLE_HIDDEN_COLUMNS_STORAGE_KEY =\n \"stripeAccountsDashboard\";\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Download } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useExportData } from \"hooks/reactQuery/stripe/useExportsApi\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport exportChannel from \"src/channels/exportChannel\";\nimport { uuidV4 } from \"utils\";\n\nconst ExportModal = ({\n showExportModal,\n setShowExportModal,\n tab,\n filters,\n sortProperties = {},\n}) => {\n const { t } = useTranslation();\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [isGenerating, setIsGenerating] = useState(false);\n\n const { mutate: exportCsv, isPending } = useExportData();\n const isFileLoading = isPending || isGenerating;\n\n const token = useMemo(() => `account-report-${uuidV4()}`, []);\n\n const receivedCallback = data => {\n if (!data.download_url) return;\n setDownloadUrl(data.download_url);\n setIsGenerating(false);\n };\n\n const handleGenerateClick = () => {\n const payload = {\n kind: \"account\",\n token,\n filters,\n tab,\n ...sortProperties,\n };\n\n exportCsv(payload, {\n onSuccess: () => {\n setDownloadUrl(\"\");\n setIsGenerating(true);\n },\n });\n };\n\n useEffect(() => {\n if (showExportModal) {\n const channel = exportChannel(token, receivedCallback);\n setDownloadUrl(\"\");\n setIsGenerating(false);\n\n return () => {\n channel.disconnected();\n };\n }\n\n return undefined;\n }, [showExportModal, token]);\n\n const onClose = () => setShowExportModal(false);\n\n return (\n <Modal {...{ onClose }} isOpen={showExportModal}>\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoPayments.export.title.account\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n {isFileLoading ? (\n <Typography style=\"body2\">\n {t(\"neetoPayments.export.pleaseWait\")}\n </Typography>\n ) : (\n <Typography style=\"body2\">\n {downloadUrl\n ? t(\"neetoPayments.export.fileReady\")\n : t(\"neetoPayments.export.download.account\")}\n </Typography>\n )}\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n {downloadUrl ? (\n <Button\n data-testid=\"neeto-payments-download-button\"\n href={downloadUrl}\n icon={Download}\n label={t(\"neetoPayments.common.download\")}\n onClick={onClose}\n />\n ) : (\n <>\n <Button\n data-testid=\"cancel-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.cancel\")}\n style=\"tertiary\"\n onClick={onClose}\n />\n <Button\n data-testid=\"neeto-payments-export-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.export\")}\n loading={isFileLoading}\n onClick={handleGenerateClick}\n />\n </>\n )}\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default ExportModal;\n","import { capitalize } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { join, map, pipe, split } from \"ramda\";\n\nimport CopyButtonWrapper from \"components/Common/CopyButtonWrapper\";\nimport { buildStripeAccountLink } from \"utils\";\n\nexport const renderIdentifier = ({ identifier = \"\", isLive = false } = {}) => (\n <CopyButtonWrapper content={identifier}>\n <Button\n href={buildStripeAccountLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n </CopyButtonWrapper>\n);\n\nexport const renderCountry = pipe(split(\"_\"), map(capitalize), join(\" \"));\n","import { t } from \"i18next\";\n\nimport {\n renderDate,\n renderFullName,\n renderStatus,\n} from \"utils/renderFunctions\";\n\nimport { renderCountry, renderIdentifier } from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"neetoPayments.common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: 85,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: 300,\n render: renderIdentifier,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n width: 150,\n render: renderStatus(\"account\"),\n sorter: true,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.name\"),\n dataIndex: \"first_name\",\n key: \"first_name\",\n width: 300,\n sorter: true,\n render: renderFullName,\n },\n {\n title: t(\"neetoPayments.common.email\"),\n dataIndex: \"email\",\n key: \"email\",\n width: 300,\n ellipsis: true,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.country\"),\n dataIndex: \"country\",\n key: \"country\",\n width: 150,\n render: renderCountry,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n width: 220,\n render: renderDate,\n sorter: true,\n },\n];\n","import { useState } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_SORT_PROPERTIES } from \"src/constants\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { FILTER_COLUMNS, TAB, TABS, SEARCH_PROPS } from \"../constants\";\nimport { COLUMNS } from \"../constants/columns\";\n\nexport const useFiltersAndPagination = () => {\n const history = useHistory();\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(TABS)\n );\n const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);\n const { tab = TAB.all } = useQueryParams();\n\n const { searchTerm = \"\" } = getQueryParams();\n const searchKeywordProps = {\n ...SEARCH_PROPS,\n key: \"search_term\",\n value: searchTerm.trim(),\n };\n\n const [filters, setFilters] = useState(\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n const [dataSize, setDataSize] = useState(null);\n\n const columnData =\n tab !== TAB.all ? removeBy({ key: \"status\" }, COLUMNS) : COLUMNS;\n\n const handleTabChange = tab => {\n setDataSize(null);\n const queryParams = getQueryParams({ toCamelCase: false });\n const newParams = {\n tab,\n page: pageProperties[tab]?.page,\n page_size: pageProperties[tab]?.pageSize,\n };\n\n history.push(\n buildUrl(window.location.pathname, mergeLeft(newParams, queryParams))\n );\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n };\n};\n","import { useEffect } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/Columns\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData, Spinner } from \"neetoui\";\nimport { assoc, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchConnectedAccounts } from \"hooks/reactQuery/stripe/useAccountsApi\";\nimport { DEFAULT_SORT_PROPERTIES, SORT_DIRECTIONS } from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { TAB } from \"./constants\";\n\nconst List = ({\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(TABLE_KEYS.ACCOUNTS_TABLE, columnData);\n\n const {\n data: { accounts = [], views = {} } = {},\n isLoading,\n isFetching,\n } = useFetchConnectedAccounts(\n buildPayload({ filters, pageProperties, sortProperties, tab })\n );\n\n const dataSize = views[tab];\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(accounts) || isPresent(filters));\n setDataSize(dataSize);\n }, [accounts]);\n\n const handleTablePagination = (page, pageSize) => {\n const queryParams = getQueryParams({ toCamelCase: false });\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page, page_size: pageSize }, queryParams)\n )\n );\n setPageProperties(assoc(tab, { page, pageSize }));\n };\n\n useEffect(() => {\n handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);\n setSortProperties(DEFAULT_SORT_PROPERTIES);\n }, [filters, tab]);\n\n const handleTableChange = (_, __, sorter) => {\n setSortProperties(\n isPresent(sorter?.column)\n ? {\n sortBy: camelToSnakeCase(sorter.field),\n orderBy: sorter.order === \"ascend\" ? \"ASC\" : \"DESC\",\n }\n : DEFAULT_SORT_PROPERTIES\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (dataSize <= 0 || !isPresent(accounts)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n tab === TAB.all\n ? t(\"neetoPayments.emptyState.account\")\n : t(\"neetoPayments.emptyState.accountWithStatus\", { status: tab })\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.pageSize}>\n <Table\n fixedHeight\n allowRowClick={false}\n columnData={customizedColumns}\n currentPageNumber={pageProperties[tab]?.page}\n handlePageChange={handleTablePagination}\n loading={isFetching || isTableConfigurationLoading}\n rowData={buildRowData({ data: accounts, pageProperties, tab })}\n rowSelection={false}\n sortDirections={SORT_DIRECTIONS}\n totalCount={dataSize}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.pageSize,\n total: dataSize,\n }}\n onChange={handleTableChange}\n onColumnHide={({ key }) => hideColumn(key)}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { useState, useTransition } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\n\nimport {\n DASHBOARD_MANDATORY_COLUMNS,\n FILTER_COLUMNS,\n TAB,\n TABS,\n} from \"./constants\";\nimport ExportModal from \"./ExportModal\";\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\n\nconst AccountsDashboard = () => {\n const [_, startTransition] = useTransition();\n const { t } = useTranslation();\n\n const [showExportModal, setShowExportModal] = useState(false);\n const {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n } = useFiltersAndPagination();\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const handleFiltersChange = filters => {\n startTransition(() => {\n setFilters(filters);\n });\n };\n\n return (\n <>\n <Header\n title={t(\"neetoPayments.title.account\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: t(\"neetoPayments.common.search\"),\n className: \"w-80\",\n }\n }\n />\n {isTabsVisible && (\n <Tab>\n {TABS.map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`neetoPayments.common.${item}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n isPresent(dataSize) && (\n <Typography\n className=\"neeto-ui-gray-800 me-2 font-semibold\"\n component=\"h4\"\n >\n {tab === TAB.all\n ? t(\"neetoPayments.countOf.account\", { count: dataSize })\n : t(\"neetoPayments.countOf.accountWithStatus\", {\n count: dataSize,\n status: tab,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData,\n fixedColumns: DASHBOARD_MANDATORY_COLUMNS,\n tableKey: TABLE_KEYS.ACCOUNTS_TABLE,\n }}\n downloadButtonProps={{\n onClick: () => setShowExportModal(true),\n }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n )\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={handleFiltersChange}\n />\n <List\n {...{\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n }}\n />\n <ExportModal\n {...{\n filters,\n setShowExportModal,\n showExportModal,\n sortProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(\n withReactQuery(AccountsDashboard),\n t(\"neetoPayments.title.account\")\n);\n"],"names":["TAB","all","connected","disconnected","incomplete","TABS","Object","values","SEARCH_PROPS","key","node","model","DASHBOARD_MANDATORY_COLUMNS","FILTER_COLUMNS","label","t","type","showRuleSelector","ExportModal","showExportModal","setShowExportModal","tab","filters","sortProperties","useTranslation","downloadUrl","setDownloadUrl","useState","isGenerating","setIsGenerating","mutate","exportCsv","isPending","useExportData","isFileLoading","token","useMemo","uuidV4","receivedCallback","data","download_url","handleGenerateClick","payload","kind","onSuccess","useEffect","channel","exportChannel","undefined","onClose","_jsxs","Modal","isOpen","children","_jsx","Header","Typography","style","Body","Footer","className","Button","href","icon","Download","onClick","_Fragment","disabled","loading","renderIdentifier","identifier","isLive","CopyButtonWrapper","content","buildStripeAccountLink","size","target","renderCountry","pipe","split","map","capitalize","join","COLUMNS","title","dataIndex","width","isHidable","render","renderStatus","sorter","renderFullName","ellipsis","renderDate","useFiltersAndPagination","history","useHistory","isFilterButtonVisible","setIsFilterButtonVisible","isFilterPaneOpen","setIsFilterPaneOpen","pageProperties","setPageProperties","buildDefaultPageProperties","setSortProperties","DEFAULT_SORT_PROPERTIES","useQueryParams","searchTerm","getQueryParams","searchKeywordProps","value","trim","setFilters","buildFiltersFromURL","dataSize","setDataSize","columnData","removeBy","handleTabChange","queryParams","toCamelCase","newParams","page","page_size","pageSize","push","buildUrl","window","location","pathname","mergeLeft","List","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","ACCOUNTS_TABLE","accounts","views","isLoading","isFetching","useFetchConnectedAccounts","buildPayload","isPresent","handleTablePagination","assoc","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","handleTableChange","_","__","column","sortBy","camelToSnakeCase","field","orderBy","order","Spinner","NoData","status","TableWrapper","hasPagination","Table","fixedHeight","allowRowClick","currentPageNumber","handlePageChange","rowData","buildRowData","rowSelection","sortDirections","SORT_DIRECTIONS","totalCount","paginationProps","showSizeChanger","hideOnSinglePage","total","onChange","onColumnHide","AccountsDashboard","startTransition","useTransition","isTabsVisible","handleFiltersChange","searchProps","placeholder","Tab","item","Item","active","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","columnsButtonProps","fixedColumns","tableKey","downloadButtonProps","filterProps","columns","keyword","setIsOpen","FiltersBar","setIsPaneOpen","withTitle","withReactQuery"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccountsDashboard.js","sources":["../../app/javascript/src/components/AccountsDashboard/constants/index.js","../../app/javascript/src/components/AccountsDashboard/ExportModal.jsx","../../app/javascript/src/components/AccountsDashboard/utils/renderFunctions.jsx","../../app/javascript/src/components/AccountsDashboard/constants/columns.js","../../app/javascript/src/components/AccountsDashboard/hooks/useFiltersAndPagination.js","../../app/javascript/src/components/AccountsDashboard/List.jsx","../../app/javascript/src/components/AccountsDashboard/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TAB = {\n all: \"all\",\n connected: \"connected\",\n disconnected: \"disconnected\",\n incomplete: \"incomplete\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const SEARCH_PROPS = {\n key: \"keyword\",\n node: \"identifier,user.first_name,last_name,email\",\n model: \"NeetoPaymentsEngine::Stripe::Account,User\",\n};\n\nexport const DASHBOARD_MANDATORY_COLUMNS = [\"id\", \"status\", \"identifier\"];\n\nexport const FILTER_COLUMNS = [\n {\n key: \"created_at\",\n label: t(\"neetoPayments.common.createdAt\"),\n node: \"created_at\",\n type: \"date\",\n showRuleSelector: true,\n },\n];\n\nexport const STRIPE_ACCOUNTS_TABLE_HIDDEN_COLUMNS_STORAGE_KEY =\n \"stripeAccountsDashboard\";\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Download } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useExportData } from \"hooks/reactQuery/stripe/useExportsApi\";\nimport { Button, Modal, Typography } from \"neetoui\";\nimport exportChannel from \"src/channels/exportChannel\";\nimport { uuidV4 } from \"utils\";\n\nconst ExportModal = ({\n showExportModal,\n setShowExportModal,\n tab,\n filters,\n sortProperties = {},\n}) => {\n const { t } = useTranslation();\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [isGenerating, setIsGenerating] = useState(false);\n\n const { mutate: exportCsv, isPending } = useExportData();\n const isFileLoading = isPending || isGenerating;\n\n const token = useMemo(() => `account-report-${uuidV4()}`, []);\n\n const receivedCallback = data => {\n if (!data.download_url) return;\n setDownloadUrl(data.download_url);\n setIsGenerating(false);\n };\n\n const handleGenerateClick = () => {\n const payload = {\n kind: \"account\",\n token,\n filters,\n tab,\n ...sortProperties,\n };\n\n exportCsv(payload, {\n onSuccess: () => {\n setDownloadUrl(\"\");\n setIsGenerating(true);\n },\n });\n };\n\n useEffect(() => {\n if (showExportModal) {\n const channel = exportChannel(token, receivedCallback);\n setDownloadUrl(\"\");\n setIsGenerating(false);\n\n return () => {\n channel.disconnected();\n };\n }\n\n return undefined;\n }, [showExportModal, token]);\n\n const onClose = () => setShowExportModal(false);\n\n return (\n <Modal {...{ onClose }} isOpen={showExportModal}>\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoPayments.export.title.account\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n {isFileLoading ? (\n <Typography style=\"body2\">\n {t(\"neetoPayments.export.pleaseWait\")}\n </Typography>\n ) : (\n <Typography style=\"body2\">\n {downloadUrl\n ? t(\"neetoPayments.export.fileReady\")\n : t(\"neetoPayments.export.download.account\")}\n </Typography>\n )}\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n {downloadUrl ? (\n <Button\n data-testid=\"neeto-payments-download-button\"\n href={downloadUrl}\n icon={Download}\n label={t(\"neetoPayments.common.download\")}\n onClick={onClose}\n />\n ) : (\n <>\n <Button\n data-testid=\"cancel-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.cancel\")}\n style=\"tertiary\"\n onClick={onClose}\n />\n <Button\n data-testid=\"neeto-payments-export-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.export\")}\n loading={isFileLoading}\n onClick={handleGenerateClick}\n />\n </>\n )}\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default ExportModal;\n","import { capitalize } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { join, map, pipe, split } from \"ramda\";\n\nimport CopyButtonWrapper from \"components/Common/CopyButtonWrapper\";\nimport { buildStripeAccountLink } from \"utils\";\n\nexport const renderIdentifier = ({ identifier = \"\", isLive = false } = {}) => (\n <CopyButtonWrapper content={identifier}>\n <Button\n href={buildStripeAccountLink(identifier, isLive)}\n label={identifier}\n size=\"small\"\n style=\"link\"\n target=\"_blank\"\n />\n </CopyButtonWrapper>\n);\n\nexport const renderCountry = pipe(split(\"_\"), map(capitalize), join(\" \"));\n","import { t } from \"i18next\";\n\nimport {\n renderDate,\n renderFullName,\n renderStatus,\n} from \"utils/renderFunctions\";\n\nimport { renderCountry, renderIdentifier } from \"../utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n title: t(\"neetoPayments.common.id\"),\n dataIndex: \"id\",\n key: \"id\",\n width: 85,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.identifier\"),\n dataIndex: \"identifier\",\n key: \"identifier\",\n width: 300,\n render: renderIdentifier,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n width: 150,\n render: renderStatus(\"account\"),\n sorter: true,\n isHidable: false,\n },\n {\n title: t(\"neetoPayments.common.name\"),\n dataIndex: \"first_name\",\n key: \"first_name\",\n width: 300,\n sorter: true,\n render: renderFullName,\n },\n {\n title: t(\"neetoPayments.common.email\"),\n dataIndex: \"email\",\n key: \"email\",\n width: 300,\n ellipsis: true,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.country\"),\n dataIndex: \"country\",\n key: \"country\",\n width: 150,\n render: renderCountry,\n sorter: true,\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n width: 220,\n render: renderDate,\n sorter: true,\n },\n];\n","import { useState } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_SORT_PROPERTIES } from \"src/constants\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { FILTER_COLUMNS, TAB, TABS, SEARCH_PROPS } from \"../constants\";\nimport { COLUMNS } from \"../constants/columns\";\n\nexport const useFiltersAndPagination = () => {\n const history = useHistory();\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(TABS)\n );\n const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);\n const { tab = TAB.all } = useQueryParams();\n\n const { searchTerm = \"\" } = getQueryParams();\n const searchKeywordProps = {\n ...SEARCH_PROPS,\n key: \"search_term\",\n value: searchTerm.trim(),\n };\n\n const [filters, setFilters] = useState(\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n const [dataSize, setDataSize] = useState(null);\n\n const columnData =\n tab !== TAB.all ? removeBy({ key: \"status\" }, COLUMNS) : COLUMNS;\n\n const handleTabChange = tab => {\n setDataSize(null);\n const queryParams = getQueryParams({ toCamelCase: false });\n const newParams = {\n tab,\n page: pageProperties[tab]?.page,\n page_size: pageProperties[tab]?.pageSize,\n };\n\n history.push(\n buildUrl(window.location.pathname, mergeLeft(newParams, queryParams))\n );\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n };\n};\n","import { useEffect } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/Columns\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table, NoData, Spinner } from \"neetoui\";\nimport { assoc, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useFetchConnectedAccounts } from \"hooks/reactQuery/stripe/useAccountsApi\";\nimport { DEFAULT_SORT_PROPERTIES, SORT_DIRECTIONS } from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { TAB } from \"./constants\";\n\nconst List = ({\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(TABLE_KEYS.ACCOUNTS_TABLE, columnData);\n\n const {\n data: { accounts = [], views = {} } = {},\n isLoading,\n isFetching,\n } = useFetchConnectedAccounts(\n buildPayload({ filters, pageProperties, sortProperties, tab })\n );\n\n const dataSize = views[tab];\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(accounts) || isPresent(filters));\n setDataSize(dataSize);\n }, [accounts]);\n\n const handleTablePagination = (page, pageSize) => {\n const queryParams = getQueryParams({ toCamelCase: false });\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page, page_size: pageSize }, queryParams)\n )\n );\n setPageProperties(assoc(tab, { page, pageSize }));\n };\n\n useEffect(() => {\n handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);\n setSortProperties(DEFAULT_SORT_PROPERTIES);\n }, [filters, tab]);\n\n const handleTableChange = (_, __, sorter) => {\n setSortProperties(\n isPresent(sorter?.column)\n ? {\n sortBy: camelToSnakeCase(sorter.field),\n orderBy: sorter.order === \"ascend\" ? \"ASC\" : \"DESC\",\n }\n : DEFAULT_SORT_PROPERTIES\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (dataSize <= 0 || !isPresent(accounts)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={\n tab === TAB.all\n ? t(\"neetoPayments.emptyState.account\")\n : t(\"neetoPayments.emptyState.accountWithStatus\", { status: tab })\n }\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.pageSize}>\n <Table\n fixedHeight\n allowRowClick={false}\n columnData={customizedColumns}\n currentPageNumber={pageProperties[tab]?.page}\n handlePageChange={handleTablePagination}\n loading={isFetching || isTableConfigurationLoading}\n rowData={buildRowData({ data: accounts, pageProperties, tab })}\n rowSelection={false}\n sortDirections={SORT_DIRECTIONS}\n totalCount={dataSize}\n paginationProps={{\n showSizeChanger: true,\n hideOnSinglePage: true,\n pageSize: pageProperties[tab]?.pageSize,\n total: dataSize,\n }}\n onChange={handleTableChange}\n onColumnHide={({ key }) => hideColumn(key)}\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { useState, useTransition } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Tab, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\n\nimport {\n DASHBOARD_MANDATORY_COLUMNS,\n FILTER_COLUMNS,\n TAB,\n TABS,\n} from \"./constants\";\nimport ExportModal from \"./ExportModal\";\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\n\nconst AccountsDashboard = () => {\n const [_, startTransition] = useTransition();\n const { t } = useTranslation();\n\n const [showExportModal, setShowExportModal] = useState(false);\n const {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n } = useFiltersAndPagination();\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const handleFiltersChange = filters => {\n startTransition(() => {\n setFilters(filters);\n });\n };\n\n return (\n <>\n <Header\n title={t(\"neetoPayments.title.account\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: t(\"neetoPayments.common.search\"),\n className: \"w-80\",\n }\n }\n />\n {isTabsVisible && (\n <Tab>\n {TABS.map(item => (\n <Tab.Item\n active={tab === item}\n key={item}\n onClick={() => handleTabChange(item)}\n >\n {t(`neetoPayments.common.${item}`)}\n </Tab.Item>\n ))}\n </Tab>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n isPresent(dataSize) && (\n <Typography\n className=\"neeto-ui-gray-800 me-2 font-semibold\"\n component=\"h4\"\n >\n {tab === TAB.all\n ? t(\"neetoPayments.countOf.account\", { count: dataSize })\n : t(\"neetoPayments.countOf.accountWithStatus\", {\n count: dataSize,\n status: tab,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData,\n fixedColumns: DASHBOARD_MANDATORY_COLUMNS,\n tableKey: TABLE_KEYS.ACCOUNTS_TABLE,\n }}\n downloadButtonProps={{\n onClick: () => setShowExportModal(true),\n }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n )\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={handleFiltersChange}\n />\n <List\n {...{\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n }}\n />\n <ExportModal\n {...{\n filters,\n setShowExportModal,\n showExportModal,\n sortProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(\n withReactQuery(AccountsDashboard),\n t(\"neetoPayments.title.account\")\n);\n"],"names":["TAB","all","connected","disconnected","incomplete","TABS","Object","values","SEARCH_PROPS","key","node","model","DASHBOARD_MANDATORY_COLUMNS","FILTER_COLUMNS","label","t","type","showRuleSelector","ExportModal","showExportModal","setShowExportModal","tab","filters","sortProperties","useTranslation","downloadUrl","setDownloadUrl","useState","isGenerating","setIsGenerating","mutate","exportCsv","isPending","useExportData","isFileLoading","token","useMemo","uuidV4","receivedCallback","data","download_url","handleGenerateClick","payload","kind","onSuccess","useEffect","channel","exportChannel","undefined","onClose","_jsxs","Modal","isOpen","children","_jsx","Header","Typography","style","Body","Footer","className","Button","href","icon","Download","onClick","_Fragment","disabled","loading","renderIdentifier","identifier","isLive","CopyButtonWrapper","content","buildStripeAccountLink","size","target","renderCountry","pipe","split","map","capitalize","join","COLUMNS","title","dataIndex","width","isHidable","render","renderStatus","sorter","renderFullName","ellipsis","renderDate","useFiltersAndPagination","history","useHistory","isFilterButtonVisible","setIsFilterButtonVisible","isFilterPaneOpen","setIsFilterPaneOpen","pageProperties","setPageProperties","buildDefaultPageProperties","setSortProperties","DEFAULT_SORT_PROPERTIES","useQueryParams","searchTerm","getQueryParams","searchKeywordProps","value","trim","setFilters","buildFiltersFromURL","dataSize","setDataSize","columnData","removeBy","handleTabChange","queryParams","toCamelCase","newParams","page","page_size","pageSize","push","buildUrl","window","location","pathname","mergeLeft","List","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","ACCOUNTS_TABLE","accounts","views","isLoading","isFetching","useFetchConnectedAccounts","buildPayload","isPresent","handleTablePagination","assoc","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","handleTableChange","_","__","column","sortBy","camelToSnakeCase","field","orderBy","order","Spinner","NoData","status","TableWrapper","hasPagination","Table","fixedHeight","allowRowClick","currentPageNumber","handlePageChange","rowData","buildRowData","rowSelection","sortDirections","SORT_DIRECTIONS","totalCount","paginationProps","showSizeChanger","hideOnSinglePage","total","onChange","onColumnHide","AccountsDashboard","startTransition","useTransition","isTabsVisible","handleFiltersChange","searchProps","placeholder","Tab","item","Item","active","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","columnsButtonProps","fixedColumns","tableKey","downloadButtonProps","filterProps","columns","keyword","setIsOpen","FiltersBar","setIsPaneOpen","withTitle","withReactQuery"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminCancelRecurringPaymentButton.js","sources":["../../app/javascript/src/apis/recurring_payments.js","../../app/javascript/src/hooks/reactQuery/useRecurringPaymentsApi.js","../../app/javascript/src/components/AdminCancelRecurringPaymentButton/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/recurring_payments/${id}`, {\n recurring_payment: payload,\n });\n\nconst recurringPaymentsApi = { update };\n\nexport default recurringPaymentsApi;\n","import { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport recurringPaymentsApi from \"apis/recurring_payments\";\n\nexport const useUpdateRecurringPayments = (keysToInvalidate = []) =>\n useMutationWithInvalidation(recurringPaymentsApi.update, {\n keysToInvalidate: [...keysToInvalidate],\n });\n","import { useState } from \"react\";\n\nimport { Button, Alert } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateRecurringPayments } from \"hooks/reactQuery/useRecurringPaymentsApi\";\n\nconst AdminCancelRecurringPaymentButton = ({\n id,\n style = \"primary\",\n keysToInvalidate = [],\n}) => {\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { isPending, mutate: updateRecurringPayment } =\n useUpdateRecurringPayments(keysToInvalidate);\n\n const { t } = useTranslation();\n\n return (\n <>\n <Button\n {...{ style }}\n label={t(\"neetoPayments.recurringPaymentCancel.buttonLabel\")}\n onClick={() => setIsAlertOpen(true)}\n />\n <Alert\n isOpen={isAlertOpen}\n isSubmitting={isPending}\n message={t(\"neetoPayments.recurringPaymentCancel.alertMessage\")}\n submitButtonLabel={t(\"neetoPayments.common.continue\")}\n title={t(\"neetoPayments.recurringPaymentCancel.alertTitle\")}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() =>\n updateRecurringPayment({ id, payload: { status: \"cancelled\" } })\n }\n />\n </>\n );\n};\n\nexport default AdminCancelRecurringPaymentButton;\n"],"names":["update","id","payload","axios","put","BASE_URL","recurring_payment","recurringPaymentsApi","useUpdateRecurringPayments","keysToInvalidate","useMutationWithInvalidation","AdminCancelRecurringPaymentButton","style","isAlertOpen","setIsAlertOpen","useState","isPending","mutate","updateRecurringPayment","t","useTranslation","_jsxs","_Fragment","children","_jsx","Button","label","onClick","Alert","isOpen","isSubmitting","message","submitButtonLabel","title","onClose","onSubmit","status"],"mappings":";;;;;;;;;;;;;;;;AAIA,MAAMA,MAAM,GAAGA,CAAC;EAAEC,EAAE;AAAEC,EAAAA;AAAQ,CAAC,KAC7BC,KAAK,CAACC,GAAG,CAAC,GAAGC,kBAAQ,CAAA,2BAAA,EAA8BJ,EAAE,CAAA,CAAE,EAAE;AACvDK,EAAAA,iBAAiB,EAAEJ;AACrB,CAAC,CAAC;AAEJ,MAAMK,oBAAoB,GAAG;AAAEP,EAAAA;AAAO,CAAC;;ACLhC,MAAMQ,0BAA0B,GAAGA,CAACC,gBAAgB,GAAG,EAAE,KAC9DC,sCAA2B,CAACH,oBAAoB,CAACP,MAAM,EAAE;EACvDS,gBAAgB,EAAE,CAAC,GAAGA,gBAAgB;AACxC,CAAC,CAAC;;
|
|
1
|
+
{"version":3,"file":"AdminCancelRecurringPaymentButton.js","sources":["../../app/javascript/src/apis/recurring_payments.js","../../app/javascript/src/hooks/reactQuery/useRecurringPaymentsApi.js","../../app/javascript/src/components/AdminCancelRecurringPaymentButton/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/recurring_payments/${id}`, {\n recurring_payment: payload,\n });\n\nconst recurringPaymentsApi = { update };\n\nexport default recurringPaymentsApi;\n","import { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport recurringPaymentsApi from \"apis/recurring_payments\";\n\nexport const useUpdateRecurringPayments = (keysToInvalidate = []) =>\n useMutationWithInvalidation(recurringPaymentsApi.update, {\n keysToInvalidate: [...keysToInvalidate],\n });\n","import { useState } from \"react\";\n\nimport { Button, Alert } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateRecurringPayments } from \"hooks/reactQuery/useRecurringPaymentsApi\";\n\nconst AdminCancelRecurringPaymentButton = ({\n id,\n style = \"primary\",\n keysToInvalidate = [],\n}) => {\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { isPending, mutate: updateRecurringPayment } =\n useUpdateRecurringPayments(keysToInvalidate);\n\n const { t } = useTranslation();\n\n return (\n <>\n <Button\n {...{ style }}\n label={t(\"neetoPayments.recurringPaymentCancel.buttonLabel\")}\n onClick={() => setIsAlertOpen(true)}\n />\n <Alert\n isOpen={isAlertOpen}\n isSubmitting={isPending}\n message={t(\"neetoPayments.recurringPaymentCancel.alertMessage\")}\n submitButtonLabel={t(\"neetoPayments.common.continue\")}\n title={t(\"neetoPayments.recurringPaymentCancel.alertTitle\")}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() =>\n updateRecurringPayment({ id, payload: { status: \"cancelled\" } })\n }\n />\n </>\n );\n};\n\nexport default AdminCancelRecurringPaymentButton;\n"],"names":["update","id","payload","axios","put","BASE_URL","recurring_payment","recurringPaymentsApi","useUpdateRecurringPayments","keysToInvalidate","useMutationWithInvalidation","AdminCancelRecurringPaymentButton","style","isAlertOpen","setIsAlertOpen","useState","isPending","mutate","updateRecurringPayment","t","useTranslation","_jsxs","_Fragment","children","_jsx","Button","label","onClick","Alert","isOpen","isSubmitting","message","submitButtonLabel","title","onClose","onSubmit","status"],"mappings":";;;;;;;;;;;;;;;;AAIA,MAAMA,MAAM,GAAGA,CAAC;EAAEC,EAAE;AAAEC,EAAAA;AAAQ,CAAC,KAC7BC,KAAK,CAACC,GAAG,CAAC,GAAGC,kBAAQ,CAAA,2BAAA,EAA8BJ,EAAE,CAAA,CAAE,EAAE;AACvDK,EAAAA,iBAAiB,EAAEJ;AACrB,CAAC,CAAC;AAEJ,MAAMK,oBAAoB,GAAG;AAAEP,EAAAA;AAAO,CAAC;;ACLhC,MAAMQ,0BAA0B,GAAGA,CAACC,gBAAgB,GAAG,EAAE,KAC9DC,sCAA2B,CAACH,oBAAoB,CAACP,MAAM,EAAE;EACvDS,gBAAgB,EAAE,CAAC,GAAGA,gBAAgB;AACxC,CAAC,CAAC;;ACAJ,MAAME,iCAAiC,GAAGA,CAAC;EACzCV,EAAE;AACFW,EAAAA,KAAK,GAAG,SAAS;AACjBH,EAAAA,gBAAgB,GAAG;AACrB,CAAC,KAAK;EACJ,MAAM,CAACI,WAAW,EAAEC,cAAc,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC;EACrD,MAAM;IAAEC,SAAS;AAAEC,IAAAA,MAAM,EAAEC;AAAuB,GAAC,GACjDV,0BAA0B,CAACC,gBAAgB,CAAC;EAE9C,MAAM;AAAEU,IAAAA;GAAG,GAAGC,2BAAc,EAAE;EAE9B,oBACEC,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEC,cAAA,CAACC,cAAM,EAAA;MACCb,KAAK;AACXc,MAAAA,KAAK,EAAEP,CAAC,CAAC,kDAAkD,CAAE;AAC7DQ,MAAAA,OAAO,EAAEA,MAAMb,cAAc,CAAC,IAAI;AAAE,KACrC,CAAC,eACFU,cAAA,CAACI,aAAK,EAAA;AACJC,MAAAA,MAAM,EAAEhB,WAAY;AACpBiB,MAAAA,YAAY,EAAEd,SAAU;AACxBe,MAAAA,OAAO,EAAEZ,CAAC,CAAC,mDAAmD,CAAE;AAChEa,MAAAA,iBAAiB,EAAEb,CAAC,CAAC,+BAA+B,CAAE;AACtDc,MAAAA,KAAK,EAAEd,CAAC,CAAC,iDAAiD,CAAE;AAC5De,MAAAA,OAAO,EAAEA,MAAMpB,cAAc,CAAC,KAAK,CAAE;AACrCqB,MAAAA,QAAQ,EAAEA,MACRjB,sBAAsB,CAAC;QAAEjB,EAAE;AAAEC,QAAAA,OAAO,EAAE;AAAEkC,UAAAA,MAAM,EAAE;AAAY;OAAG;AAChE,KACF,CAAC;AAAA,GACF,CAAC;AAEP;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CashPaymentButton.js","sources":["../../app/javascript/src/components/CashPaymentButton.jsx"],"sourcesContent":["import { noop } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateCashPayment } from \"hooks/reactQuery/cash/usePaymentApi\";\nimport { Button } from \"neetoui\";\n\nconst CashPaymentButton = ({\n label,\n payableId,\n payableType,\n tip,\n discountCode,\n customAmount,\n isDisabled = false,\n isLoading = false,\n onBeforePayment = noop,\n onFailedPayment = noop,\n onSuccessfulPayment = noop,\n}) => {\n const { t } = useTranslation();\n\n const { isPending, mutate: createCashPayment } = useCreateCashPayment({\n onSuccess: onSuccessfulPayment,\n onError: onFailedPayment,\n });\n\n const handleSubmit = () => {\n onBeforePayment();\n createCashPayment({\n payableId,\n payableType,\n discountCode,\n customAmount,\n tipAttributes: tip,\n });\n };\n\n return (\n <Button\n data-testid=\"payment-submit-button\"\n disabled={isPending || isDisabled}\n label={label || t(\"neetoPayments.common.proceed\")}\n loading={isPending || isLoading}\n onClick={handleSubmit}\n />\n );\n};\n\nexport default CashPaymentButton;\n"],"names":["CashPaymentButton","label","payableId","payableType","tip","discountCode","customAmount","isDisabled","isLoading","onBeforePayment","noop","onFailedPayment","onSuccessfulPayment","t","useTranslation","isPending","mutate","createCashPayment","useCreateCashPayment","onSuccess","onError","handleSubmit","tipAttributes","_jsx","Button","disabled","loading","onClick"],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"CashPaymentButton.js","sources":["../../app/javascript/src/components/CashPaymentButton.jsx"],"sourcesContent":["import { noop } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateCashPayment } from \"hooks/reactQuery/cash/usePaymentApi\";\nimport { Button } from \"neetoui\";\n\nconst CashPaymentButton = ({\n label,\n payableId,\n payableType,\n tip,\n discountCode,\n customAmount,\n isDisabled = false,\n isLoading = false,\n onBeforePayment = noop,\n onFailedPayment = noop,\n onSuccessfulPayment = noop,\n}) => {\n const { t } = useTranslation();\n\n const { isPending, mutate: createCashPayment } = useCreateCashPayment({\n onSuccess: onSuccessfulPayment,\n onError: onFailedPayment,\n });\n\n const handleSubmit = () => {\n onBeforePayment();\n createCashPayment({\n payableId,\n payableType,\n discountCode,\n customAmount,\n tipAttributes: tip,\n });\n };\n\n return (\n <Button\n data-testid=\"payment-submit-button\"\n disabled={isPending || isDisabled}\n label={label || t(\"neetoPayments.common.proceed\")}\n loading={isPending || isLoading}\n onClick={handleSubmit}\n />\n );\n};\n\nexport default CashPaymentButton;\n"],"names":["CashPaymentButton","label","payableId","payableType","tip","discountCode","customAmount","isDisabled","isLoading","onBeforePayment","noop","onFailedPayment","onSuccessfulPayment","t","useTranslation","isPending","mutate","createCashPayment","useCreateCashPayment","onSuccess","onError","handleSubmit","tipAttributes","_jsx","Button","disabled","loading","onClick"],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAMA,iBAAiB,GAAGA,CAAC;EACzBC,KAAK;EACLC,SAAS;EACTC,WAAW;EACXC,GAAG;EACHC,YAAY;EACZC,YAAY;AACZC,EAAAA,UAAU,GAAG,KAAK;AAClBC,EAAAA,SAAS,GAAG,KAAK;AACjBC,EAAAA,eAAe,GAAGC,cAAI;AACtBC,EAAAA,eAAe,GAAGD,cAAI;AACtBE,EAAAA,mBAAmB,GAAGF;AACxB,CAAC,KAAK;EACJ,MAAM;AAAEG,IAAAA;GAAG,GAAGC,2BAAc,EAAE;EAE9B,MAAM;IAAEC,SAAS;AAAEC,IAAAA,MAAM,EAAEC;GAAmB,GAAGC,kCAAoB,CAAC;AACpEC,IAAAA,SAAS,EAAEP,mBAAmB;AAC9BQ,IAAAA,OAAO,EAAET;AACX,GAAC,CAAC;EAEF,MAAMU,YAAY,GAAGA,MAAM;AACzBZ,IAAAA,eAAe,EAAE;AACjBQ,IAAAA,iBAAiB,CAAC;MAChBf,SAAS;MACTC,WAAW;MACXE,YAAY;MACZC,YAAY;AACZgB,MAAAA,aAAa,EAAElB;AACjB,KAAC,CAAC;EACJ,CAAC;EAED,oBACEmB,cAAA,CAACC,cAAM,EAAA;AACL,IAAA,aAAA,EAAY,uBAAuB;IACnCC,QAAQ,EAAEV,SAAS,IAAIR,UAAW;AAClCN,IAAAA,KAAK,EAAEA,KAAK,IAAIY,CAAC,CAAC,8BAA8B,CAAE;IAClDa,OAAO,EAAEX,SAAS,IAAIP,SAAU;AAChCmB,IAAAA,OAAO,EAAEN;AAAa,GACvB,CAAC;AAEN;;;;"}
|
|
@@ -19,7 +19,8 @@ require('ramda');
|
|
|
19
19
|
const ConfirmCashPaymentButton = ({
|
|
20
20
|
paymentId,
|
|
21
21
|
payableId,
|
|
22
|
-
onSuccess = neetocist.noop
|
|
22
|
+
onSuccess = neetocist.noop,
|
|
23
|
+
children
|
|
23
24
|
}) => {
|
|
24
25
|
const [isModalOpen, setIsModalOpen] = react.useState(false);
|
|
25
26
|
const {
|
|
@@ -68,13 +69,13 @@ const ConfirmCashPaymentButton = ({
|
|
|
68
69
|
children: ({
|
|
69
70
|
isSubmitting
|
|
70
71
|
}) => /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
71
|
-
children: [/*#__PURE__*/jsxRuntime.
|
|
72
|
-
children: /*#__PURE__*/jsxRuntime.jsx(formik.Textarea, {
|
|
72
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs(neetoui.Modal.Body, {
|
|
73
|
+
children: [children, /*#__PURE__*/jsxRuntime.jsx(formik.Textarea, {
|
|
73
74
|
"data-testid": "confirm-booking-modal-input-textfield",
|
|
74
75
|
label: t("neetoPayments.cash.confirmModal.notes"),
|
|
75
76
|
name: "notes",
|
|
76
77
|
placeholder: t("neetoPayments.cash.confirmModal.notesPlaceholder")
|
|
77
|
-
})
|
|
78
|
+
})]
|
|
78
79
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoui.Modal.Footer, {
|
|
79
80
|
className: "space-x-2",
|
|
80
81
|
children: /*#__PURE__*/jsxRuntime.jsx(formik.ActionBlock, {
|