@bigbinary/neeto-integrations-frontend 4.0.28 → 4.0.30
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/.ready +1 -1
- package/dist/Daily.js +7 -6
- package/dist/Daily.js.map +1 -1
- package/dist/DailyForm.js +124 -19
- package/dist/DailyForm.js.map +1 -1
- package/dist/Finish.js +2 -27
- package/dist/Finish.js.map +1 -1
- package/dist/GoogleCalendar.js +1 -0
- package/dist/GoogleCalendar.js.map +1 -1
- package/dist/Telnyx.js +6 -55
- package/dist/Telnyx.js.map +1 -1
- package/dist/Twilio.js +10 -77
- package/dist/Twilio.js.map +1 -1
- package/dist/Zoom.js +6 -38
- package/dist/Zoom.js.map +1 -1
- package/dist/cjs/Daily.js +11 -10
- package/dist/cjs/Daily.js.map +1 -1
- package/dist/cjs/DailyForm.js +140 -20
- package/dist/cjs/DailyForm.js.map +1 -1
- package/dist/cjs/Finish.js +3 -47
- package/dist/cjs/Finish.js.map +1 -1
- package/dist/cjs/GoogleCalendar.js +1 -0
- package/dist/cjs/GoogleCalendar.js.map +1 -1
- package/dist/cjs/Telnyx.js +8 -57
- package/dist/cjs/Telnyx.js.map +1 -1
- package/dist/cjs/Twilio.js +10 -77
- package/dist/cjs/Twilio.js.map +1 -1
- package/dist/cjs/Zoom.js +8 -40
- package/dist/cjs/Zoom.js.map +1 -1
- package/dist/cjs/index.js +16 -44
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/Connect.js +1 -1
- package/dist/cjs/v2/Connect.js.map +1 -1
- package/dist/cjs/v2/Daily.js +16 -14
- package/dist/cjs/v2/Daily.js.map +1 -1
- package/dist/cjs/v2/DailyForm.js +139 -18
- package/dist/cjs/v2/DailyForm.js.map +1 -1
- package/dist/cjs/v2/Demo.js +1 -1
- package/dist/cjs/v2/Demo.js.map +1 -1
- package/dist/cjs/v2/DisconnectAlert.js +1 -1
- package/dist/cjs/v2/DisconnectAlert.js.map +1 -1
- package/dist/cjs/v2/DisconnectedIntegrationsRibbon.js +8 -42
- package/dist/cjs/v2/DisconnectedIntegrationsRibbon.js.map +1 -1
- package/dist/cjs/v2/Finish.js +4 -48
- package/dist/cjs/v2/Finish.js.map +1 -1
- package/dist/cjs/v2/GoogleCalendar.js +4 -3
- package/dist/cjs/v2/GoogleCalendar.js.map +1 -1
- package/dist/cjs/v2/Manage.js +4 -4
- package/dist/cjs/v2/Manage.js.map +1 -1
- package/dist/cjs/v2/Modal.js +2 -2
- package/dist/cjs/v2/Modal.js.map +1 -1
- package/dist/cjs/v2/Telnyx.js +8 -58
- package/dist/cjs/v2/Telnyx.js.map +1 -1
- package/dist/cjs/v2/Twilio.js +12 -78
- package/dist/cjs/v2/Twilio.js.map +1 -1
- package/dist/cjs/v2/WalkthroughModal.js +2 -2
- package/dist/cjs/v2/WalkthroughModal.js.map +1 -1
- package/dist/cjs/v2/ZapierForm.js +4 -7
- package/dist/cjs/v2/ZapierForm.js.map +1 -1
- package/dist/cjs/v2/Zoom.js +10 -42
- package/dist/cjs/v2/Zoom.js.map +1 -1
- package/dist/cjs/v2/index.js +74 -0
- package/dist/cjs/v2/index.js.map +1 -0
- package/dist/index.js +13 -41
- package/dist/index.js.map +1 -1
- package/dist/success-C6rQdhhF.js +30 -0
- package/dist/success-C6rQdhhF.js.map +1 -0
- package/dist/success-CsNvTPBG.js +51 -0
- package/dist/success-CsNvTPBG.js.map +1 -0
- package/dist/useDailiesApi-BjcmweuZ.js +53 -0
- package/dist/useDailiesApi-BjcmweuZ.js.map +1 -0
- package/dist/useDailiesApi-C78LSYFo.js +49 -0
- package/dist/useDailiesApi-C78LSYFo.js.map +1 -0
- package/dist/useDisconnectionAlertsApi-BnfMKA7s.js +42 -0
- package/dist/useDisconnectionAlertsApi-BnfMKA7s.js.map +1 -0
- package/dist/useDisconnectionAlertsApi-C8Q2wbVl.js +45 -0
- package/dist/useDisconnectionAlertsApi-C8Q2wbVl.js.map +1 -0
- package/dist/useTelnyxApi-DDTzGMgk.js +62 -0
- package/dist/useTelnyxApi-DDTzGMgk.js.map +1 -0
- package/dist/useTelnyxApi-DnNSPd-d.js +58 -0
- package/dist/useTelnyxApi-DnNSPd-d.js.map +1 -0
- package/dist/useTwilioApi-D5HpIaB2.js +78 -0
- package/dist/useTwilioApi-D5HpIaB2.js.map +1 -0
- package/dist/useTwilioApi-DPyyUWOs.js +82 -0
- package/dist/useTwilioApi-DPyyUWOs.js.map +1 -0
- package/dist/useZoomApi-B127NAGl.js +44 -0
- package/dist/useZoomApi-B127NAGl.js.map +1 -0
- package/dist/useZoomApi-CazQYmYH.js +41 -0
- package/dist/useZoomApi-CazQYmYH.js.map +1 -0
- package/dist/v2/Connect.js +1 -1
- package/dist/v2/Connect.js.map +1 -1
- package/dist/v2/Daily.js +12 -10
- package/dist/v2/Daily.js.map +1 -1
- package/dist/v2/DailyForm.js +123 -17
- package/dist/v2/DailyForm.js.map +1 -1
- package/dist/v2/Demo.js +1 -1
- package/dist/v2/Demo.js.map +1 -1
- package/dist/v2/DisconnectAlert.js +1 -1
- package/dist/v2/DisconnectAlert.js.map +1 -1
- package/dist/v2/DisconnectedIntegrationsRibbon.js +6 -40
- package/dist/v2/DisconnectedIntegrationsRibbon.js.map +1 -1
- package/dist/v2/Finish.js +3 -28
- package/dist/v2/Finish.js.map +1 -1
- package/dist/v2/GoogleCalendar.js +4 -3
- package/dist/v2/GoogleCalendar.js.map +1 -1
- package/dist/v2/Manage.js +4 -4
- package/dist/v2/Manage.js.map +1 -1
- package/dist/v2/Modal.js +2 -2
- package/dist/v2/Modal.js.map +1 -1
- package/dist/v2/Telnyx.js +6 -56
- package/dist/v2/Telnyx.js.map +1 -1
- package/dist/v2/Twilio.js +11 -77
- package/dist/v2/Twilio.js.map +1 -1
- package/dist/v2/WalkthroughModal.js +2 -2
- package/dist/v2/WalkthroughModal.js.map +1 -1
- package/dist/v2/ZapierForm.js +4 -7
- package/dist/v2/ZapierForm.js.map +1 -1
- package/dist/v2/Zoom.js +8 -40
- package/dist/v2/Zoom.js.map +1 -1
- package/dist/v2/index.js +54 -0
- package/dist/v2/index.js.map +1 -0
- package/package.json +12 -7
- package/dist/Form-Bm37EVs6.js +0 -189
- package/dist/Form-Bm37EVs6.js.map +0 -1
- package/dist/Form-Cleq_dYO.js +0 -169
- package/dist/Form-Cleq_dYO.js.map +0 -1
- package/dist/Form-DbbEVp56.js +0 -166
- package/dist/Form-DbbEVp56.js.map +0 -1
- package/dist/Form-DmeRCf_T.js +0 -192
- package/dist/Form-DmeRCf_T.js.map +0 -1
- package/dist/query-BADHOzBP.js +0 -21
- package/dist/query-BADHOzBP.js.map +0 -1
- package/dist/query-BijkeV_r.js +0 -31
- package/dist/query-BijkeV_r.js.map +0 -1
package/dist/Telnyx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Telnyx.js","sources":["../app/javascript/src/apis/telnyx.js","../app/javascript/src/hooks/reactQuery/useTelnyxApi.js","../app/javascript/src/components/Integrations/Telnyx/utils.js","../app/javascript/src/components/Integrations/Telnyx/hooks/useTelnyxForm.js","../app/javascript/src/components/Integrations/Telnyx/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport {\n TELNYX_PHONE_NUMBERS_URL,\n TELNYX_SMS_CONFIGURATION_URL,\n} from \"src/constants/urls\";\n\nconst fetchTelnyxSmsConfiguration = integrable =>\n axios.get(TELNYX_SMS_CONFIGURATION_URL, { params: integrable });\n\nconst fetchTelnyxPhoneNumbers = ({ apiKey, messagingProfileId }) =>\n axios.get(TELNYX_PHONE_NUMBERS_URL, {\n params: { telnyx: { apiKey, messagingProfileId } },\n });\n\nconst createTelnyxSmsConfiguration = payload =>\n axios.post(TELNYX_SMS_CONFIGURATION_URL, { telnyx: payload });\n\nconst telnyxApi = {\n fetchTelnyxPhoneNumbers,\n fetchTelnyxSmsConfiguration,\n createTelnyxSmsConfiguration,\n};\n\nexport default telnyxApi;\n","import { useQuery, useMutation } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport telnyxApi from \"apis/telnyx\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchTelnyxSmsConfiguration = ({ integrable }) =>\n useQuery({\n queryKey: [\n QUERY_KEYS.TELNYX_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n queryFn: () => telnyxApi.fetchTelnyxSmsConfiguration(integrable),\n select: prop(\"smsConfiguration\"),\n });\n\nconst useFetchTelnyxPhoneNumbers = () =>\n useMutation({ mutationFn: telnyxApi.fetchTelnyxPhoneNumbers });\n\nconst useCreateTelnyxSmsConfiguration = ({ integrable }) =>\n useMutationWithInvalidation(telnyxApi.createTelnyxSmsConfiguration, {\n keysToInvalidate: [\n [\n QUERY_KEYS.TELNYX_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n ],\n });\n\nexport {\n useFetchTelnyxPhoneNumbers,\n useFetchTelnyxSmsConfiguration,\n useCreateTelnyxSmsConfiguration,\n};\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const buildPhoneNumberOptions = phoneNumbers =>\n phoneNumbers\n ? phoneNumbers.map(({ id, phoneNumber }) => ({\n value: id,\n label: phoneNumber,\n }))\n : [];\n\nexport const buildTelnyxConfigurationValidationSchema = isPhoneNumberRequired =>\n yup.object().shape({\n apiKey: yup\n .string()\n .required(t(\"neetoIntegrations.telnyx.validations.apiKeyRequired\")),\n messagingProfileId: yup\n .string()\n .required(\n t(\"neetoIntegrations.telnyx.validations.messagingProfileIdRequired\")\n ),\n phoneNumber: isPhoneNumberRequired\n ? yup\n .object()\n .shape({ label: yup.string(), value: yup.string() })\n .nullable()\n .required(\n t(\"neetoIntegrations.telnyx.validations.phoneNumberRequired\")\n )\n : yup.mixed().nullable(),\n });\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport {\n useCreateTelnyxSmsConfiguration,\n useFetchTelnyxPhoneNumbers,\n useFetchTelnyxSmsConfiguration,\n} from \"hooks/reactQuery/useTelnyxApi\";\n\nimport { buildPhoneNumberOptions } from \"../utils\";\n\nconst useTelnyxForm = ({ integrable, onConnect }) => {\n const [phoneNumbers, setPhoneNumbers] = useState([]);\n\n const { data: configuration, isLoading } = useFetchTelnyxSmsConfiguration({\n integrable,\n });\n\n const {\n mutate: fetchTelnyxPhoneNumbers,\n isPending: isFetchPhoneNumbersLoading,\n } = useFetchTelnyxPhoneNumbers();\n\n const {\n mutate: createTelnyxSmsConfiguration,\n isPending: isCreateSmsConfigurationLoading,\n } = useCreateTelnyxSmsConfiguration({ integrable });\n\n const handleSubmit = values => {\n if (isEmpty(phoneNumbers)) {\n const params = {\n apiKey: values.apiKey,\n messagingProfileId: values.messagingProfileId,\n };\n\n fetchTelnyxPhoneNumbers(params, {\n onSuccess: ({ phoneNumbers }) => setPhoneNumbers(phoneNumbers),\n });\n\n return;\n }\n\n const payload = {\n apiKey: values.apiKey,\n messagingProfileId: values.messagingProfileId,\n phoneNumberId: values.phoneNumber.value,\n };\n\n createTelnyxSmsConfiguration(payload, { onSuccess: onConnect });\n };\n\n const isSubmitting =\n isFetchPhoneNumbersLoading || isCreateSmsConfigurationLoading;\n\n const phoneNumberOptions = buildPhoneNumberOptions(phoneNumbers);\n\n const initialValues = {\n apiKey: configuration?.apiKey || \"\",\n messagingProfileId: configuration?.messagingProfileId || \"\",\n phoneNumber:\n findBy({ label: configuration?.phoneNumber }, phoneNumberOptions) || null,\n };\n\n return {\n initialValues,\n phoneNumberOptions,\n isSubmitting,\n isLoading,\n handleSubmit,\n };\n};\n\nexport default useTelnyxForm;\n","import { useRef } from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { ActionBlock, Form, Input, Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useTelnyxForm from \"./hooks/useTelnyxForm\";\nimport { buildTelnyxConfigurationValidationSchema } from \"./utils\";\n\nconst Telnyx = ({ integrable = null, onClose = noop, onConnect = noop }) => {\n const formRef = useRef(null);\n\n const { t } = useTranslation();\n\n const {\n initialValues,\n handleSubmit,\n phoneNumberOptions,\n isSubmitting,\n isLoading,\n } = useTelnyxForm({ integrable, onConnect });\n\n const hasPhoneNumbers = isNotEmpty(phoneNumberOptions);\n\n const submitButtonLabel = hasPhoneNumbers\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\");\n\n if (isLoading) return <PageLoader />;\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues,\n validationSchema:\n buildTelnyxConfigurationValidationSchema(hasPhoneNumbers),\n innerRef: formRef,\n onSubmit: handleSubmit,\n }}\n >\n {({ dirty }) => (\n <CardLayout\n actionBlock={\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n label: submitButtonLabel,\n // The button is disabled if phoneNumberOptions is empty and there is no apiKey in initialValues while the form is not dirty.\n // If phoneNumberOptions is not empty, the button is disabled when the form is unchanged.\n disabled: !hasPhoneNumbers\n ? !initialValues.apiKey && !dirty\n : !dirty,\n }}\n />\n }\n >\n <div className=\"space-y-4\">\n <Input\n disabled={hasPhoneNumbers}\n label={t(\"neetoIntegrations.telnyx.apiKey\")}\n name=\"apiKey\"\n />\n <Input\n disabled={hasPhoneNumbers}\n label={t(\"neetoIntegrations.telnyx.messagingProfileId\")}\n name=\"messagingProfileId\"\n />\n {hasPhoneNumbers && (\n <Select\n label={t(\"neetoIntegrations.telnyx.phoneNumber\")}\n name=\"phoneNumber\"\n options={phoneNumberOptions}\n />\n )}\n </div>\n </CardLayout>\n )}\n </Form>\n );\n};\n\nexport default Telnyx;\n"],"names":["fetchTelnyxSmsConfiguration","integrable","axios","get","TELNYX_SMS_CONFIGURATION_URL","params","fetchTelnyxPhoneNumbers","_ref","apiKey","messagingProfileId","TELNYX_PHONE_NUMBERS_URL","telnyx","createTelnyxSmsConfiguration","payload","post","telnyxApi","useFetchTelnyxSmsConfiguration","useQuery","queryKey","QUERY_KEYS","TELNYX_SMS_CONFIGURATION","integrableType","integrableId","queryFn","select","prop","useFetchTelnyxPhoneNumbers","useMutation","mutationFn","useCreateTelnyxSmsConfiguration","_ref2","useMutationWithInvalidation","keysToInvalidate","buildPhoneNumberOptions","phoneNumbers","map","id","phoneNumber","value","label","buildTelnyxConfigurationValidationSchema","isPhoneNumberRequired","yup","object","shape","string","required","t","nullable","mixed","useTelnyxForm","onConnect","_useState","useState","_useState2","_slicedToArray","setPhoneNumbers","_useFetchTelnyxSmsCon","configuration","data","isLoading","_useFetchTelnyxPhoneN","mutate","isFetchPhoneNumbersLoading","isPending","_useCreateTelnyxSmsCo","isCreateSmsConfigurationLoading","handleSubmit","values","isEmpty","onSuccess","phoneNumberId","isSubmitting","phoneNumberOptions","initialValues","findBy","Telnyx","_ref$integrable","_ref$onClose","onClose","noop","_ref$onConnect","formRef","useRef","_useTranslation","useTranslation","_useTelnyxForm","hasPhoneNumbers","isNotEmpty","submitButtonLabel","_jsx","PageLoader","Form","className","formikProps","enableReinitialize","validationSchema","innerRef","onSubmit","children","dirty","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","submitButtonProps","disabled","_jsxs","Input","name","Select","options"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Telnyx.js","sources":["../app/javascript/src/components/Integrations/Telnyx/utils.js","../app/javascript/src/components/Integrations/Telnyx/hooks/useTelnyxForm.js","../app/javascript/src/components/Integrations/Telnyx/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const buildPhoneNumberOptions = phoneNumbers =>\n phoneNumbers\n ? phoneNumbers.map(({ id, phoneNumber }) => ({\n value: id,\n label: phoneNumber,\n }))\n : [];\n\nexport const buildTelnyxConfigurationValidationSchema = isPhoneNumberRequired =>\n yup.object().shape({\n apiKey: yup\n .string()\n .required(t(\"neetoIntegrations.telnyx.validations.apiKeyRequired\")),\n messagingProfileId: yup\n .string()\n .required(\n t(\"neetoIntegrations.telnyx.validations.messagingProfileIdRequired\")\n ),\n phoneNumber: isPhoneNumberRequired\n ? yup\n .object()\n .shape({ label: yup.string(), value: yup.string() })\n .nullable()\n .required(\n t(\"neetoIntegrations.telnyx.validations.phoneNumberRequired\")\n )\n : yup.mixed().nullable(),\n });\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport {\n useCreateTelnyxSmsConfiguration,\n useFetchTelnyxPhoneNumbers,\n useFetchTelnyxSmsConfiguration,\n} from \"hooks/reactQuery/useTelnyxApi\";\n\nimport { buildPhoneNumberOptions } from \"../utils\";\n\nconst useTelnyxForm = ({ integrable, onConnect }) => {\n const [phoneNumbers, setPhoneNumbers] = useState([]);\n\n const { data: configuration, isLoading } = useFetchTelnyxSmsConfiguration({\n integrable,\n });\n\n const {\n mutate: fetchTelnyxPhoneNumbers,\n isPending: isFetchPhoneNumbersLoading,\n } = useFetchTelnyxPhoneNumbers();\n\n const {\n mutate: createTelnyxSmsConfiguration,\n isPending: isCreateSmsConfigurationLoading,\n } = useCreateTelnyxSmsConfiguration({ integrable });\n\n const handleSubmit = values => {\n if (isEmpty(phoneNumbers)) {\n const params = {\n apiKey: values.apiKey,\n messagingProfileId: values.messagingProfileId,\n };\n\n fetchTelnyxPhoneNumbers(params, {\n onSuccess: ({ phoneNumbers }) => setPhoneNumbers(phoneNumbers),\n });\n\n return;\n }\n\n const payload = {\n apiKey: values.apiKey,\n messagingProfileId: values.messagingProfileId,\n phoneNumberId: values.phoneNumber.value,\n };\n\n createTelnyxSmsConfiguration(payload, { onSuccess: onConnect });\n };\n\n const isSubmitting =\n isFetchPhoneNumbersLoading || isCreateSmsConfigurationLoading;\n\n const phoneNumberOptions = buildPhoneNumberOptions(phoneNumbers);\n\n const initialValues = {\n apiKey: configuration?.apiKey || \"\",\n messagingProfileId: configuration?.messagingProfileId || \"\",\n phoneNumber:\n findBy({ label: configuration?.phoneNumber }, phoneNumberOptions) || null,\n };\n\n return {\n initialValues,\n phoneNumberOptions,\n isSubmitting,\n isLoading,\n handleSubmit,\n };\n};\n\nexport default useTelnyxForm;\n","import { useRef } from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { ActionBlock, Form, Input, Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useTelnyxForm from \"./hooks/useTelnyxForm\";\nimport { buildTelnyxConfigurationValidationSchema } from \"./utils\";\n\nconst Telnyx = ({ integrable = null, onClose = noop, onConnect = noop }) => {\n const formRef = useRef(null);\n\n const { t } = useTranslation();\n\n const {\n initialValues,\n handleSubmit,\n phoneNumberOptions,\n isSubmitting,\n isLoading,\n } = useTelnyxForm({ integrable, onConnect });\n\n const hasPhoneNumbers = isNotEmpty(phoneNumberOptions);\n\n const submitButtonLabel = hasPhoneNumbers\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\");\n\n if (isLoading) return <PageLoader />;\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues,\n validationSchema:\n buildTelnyxConfigurationValidationSchema(hasPhoneNumbers),\n innerRef: formRef,\n onSubmit: handleSubmit,\n }}\n >\n {({ dirty }) => (\n <CardLayout\n actionBlock={\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n label: submitButtonLabel,\n // The button is disabled if phoneNumberOptions is empty and there is no apiKey in initialValues while the form is not dirty.\n // If phoneNumberOptions is not empty, the button is disabled when the form is unchanged.\n disabled: !hasPhoneNumbers\n ? !initialValues.apiKey && !dirty\n : !dirty,\n }}\n />\n }\n >\n <div className=\"space-y-4\">\n <Input\n disabled={hasPhoneNumbers}\n label={t(\"neetoIntegrations.telnyx.apiKey\")}\n name=\"apiKey\"\n />\n <Input\n disabled={hasPhoneNumbers}\n label={t(\"neetoIntegrations.telnyx.messagingProfileId\")}\n name=\"messagingProfileId\"\n />\n {hasPhoneNumbers && (\n <Select\n label={t(\"neetoIntegrations.telnyx.phoneNumber\")}\n name=\"phoneNumber\"\n options={phoneNumberOptions}\n />\n )}\n </div>\n </CardLayout>\n )}\n </Form>\n );\n};\n\nexport default Telnyx;\n"],"names":["buildPhoneNumberOptions","phoneNumbers","map","_ref","id","phoneNumber","value","label","buildTelnyxConfigurationValidationSchema","isPhoneNumberRequired","yup","object","shape","apiKey","string","required","t","messagingProfileId","nullable","mixed","useTelnyxForm","integrable","onConnect","_useState","useState","_useState2","_slicedToArray","setPhoneNumbers","_useFetchTelnyxSmsCon","useFetchTelnyxSmsConfiguration","configuration","data","isLoading","_useFetchTelnyxPhoneN","useFetchTelnyxPhoneNumbers","fetchTelnyxPhoneNumbers","mutate","isFetchPhoneNumbersLoading","isPending","_useCreateTelnyxSmsCo","useCreateTelnyxSmsConfiguration","createTelnyxSmsConfiguration","isCreateSmsConfigurationLoading","handleSubmit","values","isEmpty","params","onSuccess","_ref2","payload","phoneNumberId","isSubmitting","phoneNumberOptions","initialValues","findBy","Telnyx","_ref$integrable","_ref$onClose","onClose","noop","_ref$onConnect","formRef","useRef","_useTranslation","useTranslation","_useTelnyxForm","hasPhoneNumbers","isNotEmpty","submitButtonLabel","_jsx","PageLoader","Form","className","formikProps","enableReinitialize","validationSchema","innerRef","onSubmit","children","dirty","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","submitButtonProps","disabled","_jsxs","Input","name","Select","options"],"mappings":"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"}
|
package/dist/Twilio.js
CHANGED
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import { useEffect, useRef } from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { noop, _findBy } from '@bigbinary/neeto-cist';
|
|
4
4
|
import CardLayout from '@bigbinary/neeto-molecules/CardLayout';
|
|
5
5
|
import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
|
|
6
6
|
import Form from '@bigbinary/neetoui/formik/Form';
|
|
7
|
-
import {
|
|
7
|
+
import { equals } from 'ramda';
|
|
8
8
|
import { useTranslation } from 'react-i18next';
|
|
9
9
|
import Input from '@bigbinary/neetoui/formik/Input';
|
|
10
10
|
import Select from '@bigbinary/neetoui/formik/Select';
|
|
11
11
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
12
12
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import axios from 'axios';
|
|
16
|
-
import { T as TWILIO_CONFIGURATION_BASE_URL, Q as QUERY_KEYS } from './query-B3RhGrNb.js';
|
|
13
|
+
import { useStateWithDependency } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
14
|
+
import { u as useFetchTwilioSmsConfiguration, a as useFetchTwilioPhoneNumbers, b as useCreateTwilioConfiguration } from './useTwilioApi-D5HpIaB2.js';
|
|
17
15
|
import i18next from 'i18next';
|
|
18
16
|
import * as yup from 'yup';
|
|
17
|
+
import '@tanstack/react-query';
|
|
18
|
+
import 'axios';
|
|
19
|
+
import './query-B3RhGrNb.js';
|
|
19
20
|
|
|
20
|
-
function ownKeys$
|
|
21
|
-
function _objectSpread$
|
|
21
|
+
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
22
23
|
var ConfigurationForm = function ConfigurationForm(_ref) {
|
|
23
24
|
var _errors$twilioPhoneNu;
|
|
24
25
|
var phoneNumberOptions = _ref.phoneNumberOptions,
|
|
@@ -69,7 +70,7 @@ var ConfigurationForm = function ConfigurationForm(_ref) {
|
|
|
69
70
|
options: phoneNumberOptions,
|
|
70
71
|
size: "large",
|
|
71
72
|
onChange: function onChange(selected) {
|
|
72
|
-
return setValues(_objectSpread$
|
|
73
|
+
return setValues(_objectSpread$1(_objectSpread$1({}, values), {}, {
|
|
73
74
|
twilioPhoneNumber: selected
|
|
74
75
|
}));
|
|
75
76
|
}
|
|
@@ -78,74 +79,6 @@ var ConfigurationForm = function ConfigurationForm(_ref) {
|
|
|
78
79
|
});
|
|
79
80
|
};
|
|
80
81
|
|
|
81
|
-
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
82
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
83
|
-
var fetchTwilioSmsConfiguration = function fetchTwilioSmsConfiguration(integrable) {
|
|
84
|
-
return axios.get(TWILIO_CONFIGURATION_BASE_URL, {
|
|
85
|
-
params: integrable
|
|
86
|
-
});
|
|
87
|
-
};
|
|
88
|
-
var removeTwilioConfiguration = function removeTwilioConfiguration() {
|
|
89
|
-
return axios["delete"](TWILIO_CONFIGURATION_BASE_URL);
|
|
90
|
-
};
|
|
91
|
-
var getTwilioPhoneNumbers = function getTwilioPhoneNumbers(data) {
|
|
92
|
-
return axios.get("".concat(TWILIO_CONFIGURATION_BASE_URL, "/new"), {
|
|
93
|
-
params: data
|
|
94
|
-
});
|
|
95
|
-
};
|
|
96
|
-
var createTwilioConfiguration = function createTwilioConfiguration(payload, integrable) {
|
|
97
|
-
return axios.post(TWILIO_CONFIGURATION_BASE_URL, _objectSpread$1(_objectSpread$1({}, payload), integrable));
|
|
98
|
-
};
|
|
99
|
-
var twilioApi = {
|
|
100
|
-
fetchTwilioSmsConfiguration: fetchTwilioSmsConfiguration,
|
|
101
|
-
removeTwilioConfiguration: removeTwilioConfiguration,
|
|
102
|
-
getTwilioPhoneNumbers: getTwilioPhoneNumbers,
|
|
103
|
-
createTwilioConfiguration: createTwilioConfiguration
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
var useFetchTwilioSmsConfiguration = function useFetchTwilioSmsConfiguration(_ref) {
|
|
107
|
-
var integrable = _ref.integrable;
|
|
108
|
-
return useQuery({
|
|
109
|
-
queryKey: [QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId],
|
|
110
|
-
queryFn: function queryFn() {
|
|
111
|
-
return twilioApi.fetchTwilioSmsConfiguration(integrable);
|
|
112
|
-
},
|
|
113
|
-
select: function select(response) {
|
|
114
|
-
var _smsConfiguration$twi, _smsConfiguration$twi2, _smsConfiguration$twi3;
|
|
115
|
-
var smsConfiguration = response.smsConfiguration;
|
|
116
|
-
return {
|
|
117
|
-
twilioSid: (_smsConfiguration$twi = smsConfiguration === null || smsConfiguration === void 0 ? void 0 : smsConfiguration.twilioSid) !== null && _smsConfiguration$twi !== void 0 ? _smsConfiguration$twi : "",
|
|
118
|
-
twilioAuthToken: (_smsConfiguration$twi2 = smsConfiguration === null || smsConfiguration === void 0 ? void 0 : smsConfiguration.twilioAuthToken) !== null && _smsConfiguration$twi2 !== void 0 ? _smsConfiguration$twi2 : "",
|
|
119
|
-
twilioPhoneNumber: (_smsConfiguration$twi3 = smsConfiguration === null || smsConfiguration === void 0 ? void 0 : smsConfiguration.twilioPhoneNumber) !== null && _smsConfiguration$twi3 !== void 0 ? _smsConfiguration$twi3 : ""
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
var useFetchTwilioPhoneNumbers = function useFetchTwilioPhoneNumbers(_ref2) {
|
|
125
|
-
var _formRef$current, _formRef$current2;
|
|
126
|
-
var credentials = _ref2.credentials,
|
|
127
|
-
formRef = _ref2.formRef;
|
|
128
|
-
return useQuery({
|
|
129
|
-
queryKey: [QUERY_KEYS.TWILIO_PHONE_NUMBERS, {
|
|
130
|
-
credentials: credentials
|
|
131
|
-
}],
|
|
132
|
-
queryFn: function queryFn() {
|
|
133
|
-
return twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials));
|
|
134
|
-
},
|
|
135
|
-
enabled: !!(credentials !== null && credentials !== void 0 && credentials.twilio_sid) || !!(credentials !== null && credentials !== void 0 && credentials.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && (_formRef$current = _formRef$current.values) !== null && _formRef$current !== void 0 && _formRef$current.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current2 = formRef.current) !== null && _formRef$current2 !== void 0 && (_formRef$current2 = _formRef$current2.values) !== null && _formRef$current2 !== void 0 && _formRef$current2.twilioAuthToken),
|
|
136
|
-
select: prop("phoneNumbers"),
|
|
137
|
-
retry: false
|
|
138
|
-
});
|
|
139
|
-
};
|
|
140
|
-
var useCreateTwilioConfiguration = function useCreateTwilioConfiguration(_ref3) {
|
|
141
|
-
var integrable = _ref3.integrable;
|
|
142
|
-
return useMutationWithInvalidation(function (payload) {
|
|
143
|
-
return twilioApi.createTwilioConfiguration(payload, integrable);
|
|
144
|
-
}, {
|
|
145
|
-
keysToInvalidate: [[QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId]]
|
|
146
|
-
});
|
|
147
|
-
};
|
|
148
|
-
|
|
149
82
|
var useTwilio = function useTwilio(_ref) {
|
|
150
83
|
var _ref$onConnect = _ref.onConnect,
|
|
151
84
|
onConnect = _ref$onConnect === void 0 ? noop : _ref$onConnect,
|
package/dist/Twilio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Twilio.js","sources":["../app/javascript/src/components/Integrations/Twilio/Form.jsx","../app/javascript/src/apis/twilio.js","../app/javascript/src/hooks/reactQuery/useTwilioApi.js","../app/javascript/src/components/Integrations/Twilio/hooks/useTwilio.js","../app/javascript/src/components/Integrations/Twilio/utils.js","../app/javascript/src/components/Integrations/Twilio/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { Input, Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ConfigurationForm = ({\n phoneNumberOptions,\n selectedPhoneNumber = null,\n initialFocusRef = null,\n isUsingOverlay = false,\n formikProps = {},\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, setValues, errors, values, initialValues } =\n formikProps;\n\n useEffect(() => {\n selectedPhoneNumber &&\n setFieldValue(\"twilioPhoneNumber\", selectedPhoneNumber);\n }, [selectedPhoneNumber, initialValues]);\n\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <div className=\"flex w-full\">\n <Input\n required\n autoFocus={!isUsingOverlay}\n data-testid=\"integrations-twilio-sid\"\n label={t(\"neetoIntegrations.twilio.sid\")}\n name=\"twilioSid\"\n ref={initialFocusRef}\n />\n </div>\n <div className=\"flex w-full\">\n <Input\n required\n data-testid=\"integrations-twilio-auth-token\"\n label={t(\"neetoIntegrations.twilio.authToken\")}\n name=\"twilioAuthToken\"\n />\n </div>\n {phoneNumberOptions && (\n <div className=\"flex w-full\">\n <Select\n error={errors.twilioPhoneNumber?.value}\n label={t(\"neetoIntegrations.common.phNo\")}\n name=\"twilioPhoneNumber\"\n options={phoneNumberOptions}\n size=\"large\"\n onChange={selected =>\n setValues({ ...values, twilioPhoneNumber: selected })\n }\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default ConfigurationForm;\n","import axios from \"axios\";\n\nimport { TWILIO_CONFIGURATION_BASE_URL } from \"src/constants/urls\";\n\nconst fetchTwilioSmsConfiguration = integrable =>\n axios.get(TWILIO_CONFIGURATION_BASE_URL, { params: integrable });\n\nconst removeTwilioConfiguration = () =>\n axios.delete(TWILIO_CONFIGURATION_BASE_URL);\n\nconst getTwilioPhoneNumbers = data =>\n axios.get(`${TWILIO_CONFIGURATION_BASE_URL}/new`, {\n params: data,\n });\n\nconst createTwilioConfiguration = (payload, integrable) =>\n axios.post(TWILIO_CONFIGURATION_BASE_URL, { ...payload, ...integrable });\n\nconst twilioApi = {\n fetchTwilioSmsConfiguration,\n removeTwilioConfiguration,\n getTwilioPhoneNumbers,\n createTwilioConfiguration,\n};\n\nexport default twilioApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { keysToSnakeCase } from \"neetocist\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport twilioApi from \"apis/twilio\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchTwilioSmsConfiguration = ({ integrable }) =>\n useQuery({\n queryKey: [\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n queryFn: () => twilioApi.fetchTwilioSmsConfiguration(integrable),\n select: response => {\n const smsConfiguration = response.smsConfiguration;\n\n return {\n twilioSid: smsConfiguration?.twilioSid ?? \"\",\n twilioAuthToken: smsConfiguration?.twilioAuthToken ?? \"\",\n twilioPhoneNumber: smsConfiguration?.twilioPhoneNumber ?? \"\",\n };\n },\n });\n\nconst useFetchTwilioPhoneNumbers = ({ credentials, formRef }) =>\n useQuery({\n queryKey: [QUERY_KEYS.TWILIO_PHONE_NUMBERS, { credentials }],\n queryFn: () =>\n twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials)),\n enabled:\n !!credentials?.twilio_sid ||\n !!credentials?.twilioSid ||\n !!formRef?.current?.values?.twilioSid ||\n !!formRef?.current?.values?.twilioAuthToken,\n select: prop(\"phoneNumbers\"),\n retry: false,\n });\n\nconst useCreateTwilioConfiguration = ({ integrable }) =>\n useMutationWithInvalidation(\n payload => twilioApi.createTwilioConfiguration(payload, integrable),\n {\n keysToInvalidate: [\n [\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n ],\n }\n );\n\nexport {\n useCreateTwilioConfiguration,\n useFetchTwilioPhoneNumbers,\n useFetchTwilioSmsConfiguration,\n};\n","import { noop } from \"neetocist\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\n\nimport {\n useFetchTwilioPhoneNumbers,\n useCreateTwilioConfiguration,\n useFetchTwilioSmsConfiguration,\n} from \"hooks/reactQuery/useTwilioApi\";\n\nconst useTwilio = ({ onConnect = noop, formRef = null, integrable = null }) => {\n const { data: configuration = {}, isLoading: isConfigurationLoading } =\n useFetchTwilioSmsConfiguration({ integrable });\n const [credentials, setCredentials] = useStateWithDependency(configuration);\n const { data: phoneNumbers, isLoading: isPhoneNumbersLoading } =\n useFetchTwilioPhoneNumbers({ credentials, formRef });\n\n const { mutate: saveConfiguration, isPending: isSubmitting } =\n useCreateTwilioConfiguration({ integrable });\n\n const handleSubmit = values => {\n const payload = {\n twilio_sid: values.twilioSid,\n twilio_auth_token: values.twilioAuthToken,\n twilio_phone_number_sid: values.twilioPhoneNumber?.value,\n };\n\n if (!phoneNumbers && !configuration?.twilioPhoneNumber) {\n setCredentials(payload);\n\n return;\n }\n\n saveConfiguration(payload, { onSuccess: onConnect });\n };\n\n return {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n };\n};\n\nexport default useTwilio;\n","import i18next from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const buildTwilioConfigurationValidationSchema = isTwilioPhoneRequired =>\n yup.object().shape({\n twilioSid: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.sidReq\")),\n twilioAuthToken: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.authTokenReq\")),\n twilioPhoneNumber: isTwilioPhoneRequired\n ? yup.object().shape({\n label: yup.string(),\n value: yup\n .string()\n .required(\n i18next.t(\"neetoIntegrations.twilio.validations.phNumReq\")\n ),\n })\n : null,\n });\n\nexport const buildPhoneNumberOptions = phoneNumbers =>\n phoneNumbers?.map(({ phoneNumber, sid }) => ({\n label: phoneNumber,\n value: sid,\n }));\n","import { useRef } from \"react\";\n\nimport { noop, _findBy } from \"neetocist\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { ActionBlock, Form as FormikFormWrapper } from \"neetoui/formik\";\nimport { equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Form from \"./Form\";\nimport useTwilio from \"./hooks/useTwilio\";\nimport {\n buildPhoneNumberOptions,\n buildTwilioConfigurationValidationSchema,\n} from \"./utils\";\n\nconst Twilio = ({ integrable = null, onClose = noop, onConnect = noop }) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef();\n const formRef = useRef();\n\n const {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n } = useTwilio({ onConnect, formRef, integrable });\n\n const phoneNumberOptions = buildPhoneNumberOptions(phoneNumbers);\n\n const selectedPhoneNumber = _findBy(\n { label: configuration?.twilioPhoneNumber },\n phoneNumberOptions\n );\n\n const isLoading = isPhoneNumbersLoading || isConfigurationLoading;\n\n const isSubmitDisabled = values =>\n equals(\n { ...configuration, twilioPhoneNumber: selectedPhoneNumber },\n values\n ) || isLoading;\n\n return (\n <FormikFormWrapper\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n validationSchema: buildTwilioConfigurationValidationSchema(\n !!phoneNumbers\n ),\n initialValues: configuration,\n innerRef: formRef,\n onSubmit: handleSubmit,\n }}\n >\n {formikProps => (\n <CardLayout\n actionBlock={\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n label: phoneNumberOptions\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\"),\n disabled: isSubmitDisabled(formikProps.values) || isSubmitting,\n loading:\n isSubmitting ||\n (isPhoneNumbersLoading && !configuration?.twilioAuthToken),\n }}\n />\n }\n >\n <Form\n {...{\n formikProps,\n initialFocusRef,\n phoneNumberOptions,\n selectedPhoneNumber,\n }}\n />\n </CardLayout>\n )}\n </FormikFormWrapper>\n );\n};\n\nexport default Twilio;\n"],"names":["ConfigurationForm","_ref","_errors$twilioPhoneNu","phoneNumberOptions","_ref$selectedPhoneNum","selectedPhoneNumber","_ref$initialFocusRef","initialFocusRef","_ref$isUsingOverlay","isUsingOverlay","_ref$formikProps","formikProps","_useTranslation","useTranslation","t","setFieldValue","setValues","errors","values","initialValues","useEffect","_jsxs","className","children","_jsx","Input","required","autoFocus","label","name","ref","Select","error","twilioPhoneNumber","value","options","size","onChange","selected","_objectSpread","fetchTwilioSmsConfiguration","integrable","axios","get","TWILIO_CONFIGURATION_BASE_URL","params","removeTwilioConfiguration","getTwilioPhoneNumbers","data","concat","createTwilioConfiguration","payload","post","twilioApi","useFetchTwilioSmsConfiguration","useQuery","queryKey","QUERY_KEYS","TWILIO_SMS_CONFIGURATION","integrableType","integrableId","queryFn","select","response","_smsConfiguration$twi","_smsConfiguration$twi2","_smsConfiguration$twi3","smsConfiguration","twilioSid","twilioAuthToken","useFetchTwilioPhoneNumbers","_ref2","_formRef$current","_formRef$current2","credentials","formRef","TWILIO_PHONE_NUMBERS","keysToSnakeCase","enabled","twilio_sid","current","prop","retry","useCreateTwilioConfiguration","_ref3","useMutationWithInvalidation","keysToInvalidate","useTwilio","_ref$onConnect","onConnect","noop","_ref$formRef","_ref$integrable","_useFetchTwilioSmsCon","_useFetchTwilioSmsCon2","configuration","isConfigurationLoading","isLoading","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","_slicedToArray","setCredentials","_useFetchTwilioPhoneN","phoneNumbers","isPhoneNumbersLoading","_useCreateTwilioConfi","saveConfiguration","mutate","isSubmitting","isPending","handleSubmit","_values$twilioPhoneNu","twilio_auth_token","twilio_phone_number_sid","onSuccess","buildTwilioConfigurationValidationSchema","isTwilioPhoneRequired","yup","object","shape","string","i18next","buildPhoneNumberOptions","map","phoneNumber","sid","Twilio","_ref$onClose","onClose","useRef","_useTwilio","_findBy","isSubmitDisabled","equals","FormikFormWrapper","enableReinitialize","validationSchema","innerRef","onSubmit","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","submitButtonProps","disabled","loading","Form"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Twilio.js","sources":["../app/javascript/src/components/Integrations/Twilio/Form.jsx","../app/javascript/src/components/Integrations/Twilio/hooks/useTwilio.js","../app/javascript/src/components/Integrations/Twilio/utils.js","../app/javascript/src/components/Integrations/Twilio/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { Input, Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ConfigurationForm = ({\n phoneNumberOptions,\n selectedPhoneNumber = null,\n initialFocusRef = null,\n isUsingOverlay = false,\n formikProps = {},\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, setValues, errors, values, initialValues } =\n formikProps;\n\n useEffect(() => {\n selectedPhoneNumber &&\n setFieldValue(\"twilioPhoneNumber\", selectedPhoneNumber);\n }, [selectedPhoneNumber, initialValues]);\n\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <div className=\"flex w-full\">\n <Input\n required\n autoFocus={!isUsingOverlay}\n data-testid=\"integrations-twilio-sid\"\n label={t(\"neetoIntegrations.twilio.sid\")}\n name=\"twilioSid\"\n ref={initialFocusRef}\n />\n </div>\n <div className=\"flex w-full\">\n <Input\n required\n data-testid=\"integrations-twilio-auth-token\"\n label={t(\"neetoIntegrations.twilio.authToken\")}\n name=\"twilioAuthToken\"\n />\n </div>\n {phoneNumberOptions && (\n <div className=\"flex w-full\">\n <Select\n error={errors.twilioPhoneNumber?.value}\n label={t(\"neetoIntegrations.common.phNo\")}\n name=\"twilioPhoneNumber\"\n options={phoneNumberOptions}\n size=\"large\"\n onChange={selected =>\n setValues({ ...values, twilioPhoneNumber: selected })\n }\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default ConfigurationForm;\n","import { noop } from \"neetocist\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\n\nimport {\n useFetchTwilioPhoneNumbers,\n useCreateTwilioConfiguration,\n useFetchTwilioSmsConfiguration,\n} from \"hooks/reactQuery/useTwilioApi\";\n\nconst useTwilio = ({ onConnect = noop, formRef = null, integrable = null }) => {\n const { data: configuration = {}, isLoading: isConfigurationLoading } =\n useFetchTwilioSmsConfiguration({ integrable });\n const [credentials, setCredentials] = useStateWithDependency(configuration);\n const { data: phoneNumbers, isLoading: isPhoneNumbersLoading } =\n useFetchTwilioPhoneNumbers({ credentials, formRef });\n\n const { mutate: saveConfiguration, isPending: isSubmitting } =\n useCreateTwilioConfiguration({ integrable });\n\n const handleSubmit = values => {\n const payload = {\n twilio_sid: values.twilioSid,\n twilio_auth_token: values.twilioAuthToken,\n twilio_phone_number_sid: values.twilioPhoneNumber?.value,\n };\n\n if (!phoneNumbers && !configuration?.twilioPhoneNumber) {\n setCredentials(payload);\n\n return;\n }\n\n saveConfiguration(payload, { onSuccess: onConnect });\n };\n\n return {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n };\n};\n\nexport default useTwilio;\n","import i18next from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const buildTwilioConfigurationValidationSchema = isTwilioPhoneRequired =>\n yup.object().shape({\n twilioSid: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.sidReq\")),\n twilioAuthToken: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.authTokenReq\")),\n twilioPhoneNumber: isTwilioPhoneRequired\n ? yup.object().shape({\n label: yup.string(),\n value: yup\n .string()\n .required(\n i18next.t(\"neetoIntegrations.twilio.validations.phNumReq\")\n ),\n })\n : null,\n });\n\nexport const buildPhoneNumberOptions = phoneNumbers =>\n phoneNumbers?.map(({ phoneNumber, sid }) => ({\n label: phoneNumber,\n value: sid,\n }));\n","import { useRef } from \"react\";\n\nimport { noop, _findBy } from \"neetocist\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { ActionBlock, Form as FormikFormWrapper } from \"neetoui/formik\";\nimport { equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Form from \"./Form\";\nimport useTwilio from \"./hooks/useTwilio\";\nimport {\n buildPhoneNumberOptions,\n buildTwilioConfigurationValidationSchema,\n} from \"./utils\";\n\nconst Twilio = ({ integrable = null, onClose = noop, onConnect = noop }) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef();\n const formRef = useRef();\n\n const {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n } = useTwilio({ onConnect, formRef, integrable });\n\n const phoneNumberOptions = buildPhoneNumberOptions(phoneNumbers);\n\n const selectedPhoneNumber = _findBy(\n { label: configuration?.twilioPhoneNumber },\n phoneNumberOptions\n );\n\n const isLoading = isPhoneNumbersLoading || isConfigurationLoading;\n\n const isSubmitDisabled = values =>\n equals(\n { ...configuration, twilioPhoneNumber: selectedPhoneNumber },\n values\n ) || isLoading;\n\n return (\n <FormikFormWrapper\n className=\"w-full\"\n formikProps={{\n enableReinitialize: true,\n validationSchema: buildTwilioConfigurationValidationSchema(\n !!phoneNumbers\n ),\n initialValues: configuration,\n innerRef: formRef,\n onSubmit: handleSubmit,\n }}\n >\n {formikProps => (\n <CardLayout\n actionBlock={\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n label: phoneNumberOptions\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\"),\n disabled: isSubmitDisabled(formikProps.values) || isSubmitting,\n loading:\n isSubmitting ||\n (isPhoneNumbersLoading && !configuration?.twilioAuthToken),\n }}\n />\n }\n >\n <Form\n {...{\n formikProps,\n initialFocusRef,\n phoneNumberOptions,\n selectedPhoneNumber,\n }}\n />\n </CardLayout>\n )}\n </FormikFormWrapper>\n );\n};\n\nexport default Twilio;\n"],"names":["ConfigurationForm","_ref","_errors$twilioPhoneNu","phoneNumberOptions","_ref$selectedPhoneNum","selectedPhoneNumber","_ref$initialFocusRef","initialFocusRef","_ref$isUsingOverlay","isUsingOverlay","_ref$formikProps","formikProps","_useTranslation","useTranslation","t","setFieldValue","setValues","errors","values","initialValues","useEffect","_jsxs","className","children","_jsx","Input","required","autoFocus","label","name","ref","Select","error","twilioPhoneNumber","value","options","size","onChange","selected","_objectSpread","useTwilio","_ref$onConnect","onConnect","noop","_ref$formRef","formRef","_ref$integrable","integrable","_useFetchTwilioSmsCon","useFetchTwilioSmsConfiguration","_useFetchTwilioSmsCon2","data","configuration","isConfigurationLoading","isLoading","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","_slicedToArray","credentials","setCredentials","_useFetchTwilioPhoneN","useFetchTwilioPhoneNumbers","phoneNumbers","isPhoneNumbersLoading","_useCreateTwilioConfi","useCreateTwilioConfiguration","saveConfiguration","mutate","isSubmitting","isPending","handleSubmit","_values$twilioPhoneNu","payload","twilio_sid","twilioSid","twilio_auth_token","twilioAuthToken","twilio_phone_number_sid","onSuccess","buildTwilioConfigurationValidationSchema","isTwilioPhoneRequired","yup","object","shape","string","i18next","buildPhoneNumberOptions","map","phoneNumber","sid","Twilio","_ref$onClose","onClose","useRef","_useTwilio","_findBy","isSubmitDisabled","equals","FormikFormWrapper","enableReinitialize","validationSchema","innerRef","onSubmit","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","submitButtonProps","disabled","loading","Form"],"mappings":"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"}
|
package/dist/Zoom.js
CHANGED
|
@@ -5,13 +5,10 @@ import ZoomIcon from '@bigbinary/neeto-icons/misc/Zoom';
|
|
|
5
5
|
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
6
6
|
import { useTranslation, Trans } from 'react-i18next';
|
|
7
7
|
import Manage from './Manage.js';
|
|
8
|
-
import {
|
|
9
|
-
import { DEFAULT_STALE_TIME } from '@bigbinary/neeto-commons-frontend/constants';
|
|
10
|
-
import { useMutationWithInvalidation } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
11
|
-
import axios from 'axios';
|
|
12
|
-
import { c as INTEGRATION_DETAILS_URL, e as INTEGRATIONS_ENGINE_ZOOM_URL, Q as QUERY_KEYS } from './query-B3RhGrNb.js';
|
|
8
|
+
import { u as useShowZoom, a as useDestroyZoom } from './useZoomApi-CazQYmYH.js';
|
|
13
9
|
import { jsx } from 'react/jsx-runtime';
|
|
14
10
|
import '@babel/runtime/helpers/defineProperty';
|
|
11
|
+
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
15
12
|
import '@bigbinary/neeto-icons/Check';
|
|
16
13
|
import '@bigbinary/neeto-icons/ExternalLink';
|
|
17
14
|
import '@bigbinary/neetoui/Button';
|
|
@@ -22,39 +19,10 @@ import './DisconnectAlert.js';
|
|
|
22
19
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
23
20
|
import '@bigbinary/neeto-commons-frontend/react-utils/withT';
|
|
24
21
|
import '@bigbinary/neetoui/Alert';
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
serviceName: "Zoom",
|
|
30
|
-
integrableType: "User"
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
var destroy = function destroy() {
|
|
35
|
-
return axios["delete"]("".concat(INTEGRATIONS_ENGINE_ZOOM_URL, "/oauth"));
|
|
36
|
-
};
|
|
37
|
-
var zoomApi = {
|
|
38
|
-
show: show,
|
|
39
|
-
destroy: destroy
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
var useShowZoom = function useShowZoom() {
|
|
43
|
-
return useQuery({
|
|
44
|
-
queryKey: [QUERY_KEYS.ZOOM_DETAILS],
|
|
45
|
-
queryFn: zoomApi.show,
|
|
46
|
-
staleTime: DEFAULT_STALE_TIME
|
|
47
|
-
});
|
|
48
|
-
};
|
|
49
|
-
var useDestroyZoom = function useDestroyZoom(_ref) {
|
|
50
|
-
var _onSuccess = _ref.onSuccess;
|
|
51
|
-
return useMutationWithInvalidation(zoomApi.destroy, {
|
|
52
|
-
keysToInvalidate: [[QUERY_KEYS.ZOOM_DETAILS]],
|
|
53
|
-
onSuccess: function onSuccess() {
|
|
54
|
-
return _onSuccess === null || _onSuccess === void 0 ? void 0 : _onSuccess();
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
};
|
|
22
|
+
import '@tanstack/react-query';
|
|
23
|
+
import '@bigbinary/neeto-commons-frontend/constants';
|
|
24
|
+
import 'axios';
|
|
25
|
+
import './query-B3RhGrNb.js';
|
|
58
26
|
|
|
59
27
|
var Zoom = function Zoom(_ref) {
|
|
60
28
|
var _ref$connectUrl = _ref.connectUrl,
|
package/dist/Zoom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Zoom.js","sources":["../app/javascript/src/
|
|
1
|
+
{"version":3,"file":"Zoom.js","sources":["../app/javascript/src/components/Integrations/Zoom/index.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Zoom as ZoomIcon } from \"neetoicons/misc\";\nimport { Spinner } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport ManageIntegrations from \"components/commons/Manage\";\nimport { useDestroyZoom, useShowZoom } from \"hooks/reactQuery/useZoomApi\";\n\nconst Zoom = ({ connectUrl = \"\", description = \"\", onDisconnect = noop }) => {\n const { t } = useTranslation();\n\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const { data: { metadata: { email = \"\" } = {} } = {}, isLoading } =\n useShowZoom();\n\n const { mutate: destroyIntegration, isPending: isDisconnecting } =\n useDestroyZoom({\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n onDisconnect?.();\n },\n });\n\n const isConnected = isPresent(email);\n\n const handleDisconnect = () => destroyIntegration(\"zoom\");\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 <ManageIntegrations\n {...{\n connectUrl,\n isConnected,\n isDisconnectAlertOpen,\n isDisconnecting,\n setIsDisconnectAlertOpen,\n }}\n Icon={ZoomIcon}\n integration=\"zoom\"\n description={\n isConnected ? (\n <Trans\n components={{ underline: <u className=\"font-medium\" /> }}\n i18nKey=\"neetoIntegrations.zoom.account\"\n values={{ email }}\n />\n ) : (\n description\n )\n }\n title={\n isConnected\n ? t(\"neetoIntegrations.zoom.connected\")\n : t(\"neetoIntegrations.zoom.connect\")\n }\n onClose={() => setIsDisconnectAlertOpen(false)}\n onDisconnect={() => handleDisconnect()}\n />\n );\n};\n\nexport default Zoom;\n"],"names":["Zoom","_ref","_ref$connectUrl","connectUrl","_ref$description","description","_ref$onDisconnect","onDisconnect","noop","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useShowZoom","useShowZoom","_useShowZoom$data","data","_useShowZoom$data2","_useShowZoom$data2$me","metadata","_useShowZoom$data2$me2","_useShowZoom$data2$me3","email","isLoading","_useDestroyZoom","useDestroyZoom","onSuccess","destroyIntegration","mutate","isDisconnecting","isPending","isConnected","isPresent","handleDisconnect","_jsx","className","children","Spinner","ManageIntegrations","Icon","ZoomIcon","integration","Trans","components","underline","i18nKey","values","title","onClose"],"mappings":"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"}
|
package/dist/cjs/Daily.js
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
var i18next = require('i18next');
|
|
4
4
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
5
5
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
6
|
-
var
|
|
6
|
+
var useDailiesApi = require('../useDailiesApi-BjcmweuZ.js');
|
|
7
|
+
var DailyForm = require('./DailyForm.js');
|
|
7
8
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
8
9
|
var React = require('react');
|
|
9
10
|
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
@@ -13,6 +14,11 @@ var Spinner = require('@bigbinary/neetoui/Spinner');
|
|
|
13
14
|
var reactI18next = require('react-i18next');
|
|
14
15
|
var Manage$1 = require('./Manage.js');
|
|
15
16
|
var jsxRuntime = require('react/jsx-runtime');
|
|
17
|
+
require('@babel/runtime/helpers/defineProperty');
|
|
18
|
+
require('@tanstack/react-query');
|
|
19
|
+
require('@bigbinary/neeto-commons-frontend/constants');
|
|
20
|
+
require('axios');
|
|
21
|
+
require('../query-CySi2Ki7.js');
|
|
16
22
|
require('@bigbinary/neeto-molecules/CardLayout');
|
|
17
23
|
require('@bigbinary/neeto-molecules/Container');
|
|
18
24
|
require('@bigbinary/neeto-molecules/Header');
|
|
@@ -25,11 +31,6 @@ require('react-router-dom');
|
|
|
25
31
|
require('./WalkthroughModal.js');
|
|
26
32
|
require('@bigbinary/neeto-commons-frontend/react-utils/withT');
|
|
27
33
|
require('@bigbinary/neetoui/Modal');
|
|
28
|
-
require('@babel/runtime/helpers/defineProperty');
|
|
29
|
-
require('@tanstack/react-query');
|
|
30
|
-
require('@bigbinary/neeto-commons-frontend/constants');
|
|
31
|
-
require('axios');
|
|
32
|
-
require('../query-CySi2Ki7.js');
|
|
33
34
|
require('yup');
|
|
34
35
|
require('@bigbinary/neeto-icons/Check');
|
|
35
36
|
require('@bigbinary/neeto-icons/ExternalLink');
|
|
@@ -46,7 +47,7 @@ var Manage = function Manage(_ref) {
|
|
|
46
47
|
_useState2 = _slicedToArray(_useState, 2),
|
|
47
48
|
isDisconnectAlertOpen = _useState2[0],
|
|
48
49
|
setIsDisconnectAlertOpen = _useState2[1];
|
|
49
|
-
var _useFetchDaily =
|
|
50
|
+
var _useFetchDaily = useDailiesApi.useFetchDaily(),
|
|
50
51
|
_useFetchDaily$data = _useFetchDaily.data,
|
|
51
52
|
_useFetchDaily$data2 = _useFetchDaily$data === void 0 ? {} : _useFetchDaily$data,
|
|
52
53
|
_useFetchDaily$data2$ = _useFetchDaily$data2.metadata,
|
|
@@ -57,7 +58,7 @@ var Manage = function Manage(_ref) {
|
|
|
57
58
|
apiKey = _ref2$apiKey === void 0 ? null : _ref2$apiKey;
|
|
58
59
|
var _useTranslation = reactI18next.useTranslation(),
|
|
59
60
|
t = _useTranslation.t;
|
|
60
|
-
var _useDestroyDaily =
|
|
61
|
+
var _useDestroyDaily = useDailiesApi.useDestroyDaily({
|
|
61
62
|
onSuccess: function onSuccess() {
|
|
62
63
|
setIsDisconnectAlertOpen(false);
|
|
63
64
|
onDisconnect === null || onDisconnect === void 0 || onDisconnect();
|
|
@@ -127,7 +128,7 @@ var Daily = function Daily(_ref) {
|
|
|
127
128
|
onDisconnect = _ref$onDisconnect === void 0 ? neetoCist.noop : _ref$onDisconnect;
|
|
128
129
|
var _useQueryParams = reactUtils.useQueryParams(),
|
|
129
130
|
connect = _useQueryParams.connect;
|
|
130
|
-
var _useFetchDaily =
|
|
131
|
+
var _useFetchDaily = useDailiesApi.useFetchDaily(),
|
|
131
132
|
_useFetchDaily$data = _useFetchDaily.data,
|
|
132
133
|
_useFetchDaily$data2 = _useFetchDaily$data === void 0 ? {} : _useFetchDaily$data,
|
|
133
134
|
_useFetchDaily$data2$ = _useFetchDaily$data2.metadata,
|
|
@@ -141,7 +142,7 @@ var Daily = function Daily(_ref) {
|
|
|
141
142
|
onDisconnect: onDisconnect
|
|
142
143
|
});
|
|
143
144
|
}
|
|
144
|
-
return /*#__PURE__*/jsxRuntime.jsx(DailyForm
|
|
145
|
+
return /*#__PURE__*/jsxRuntime.jsx(DailyForm, {
|
|
145
146
|
helpDocUrl: helpDocUrl,
|
|
146
147
|
onConnect: onConnect,
|
|
147
148
|
videoUrl: videoUrl
|
package/dist/cjs/Daily.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daily.js","sources":["../../app/javascript/src/components/Integrations/Daily/Manage.jsx","../../app/javascript/src/components/Integrations/Daily/index.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Daily as DailyIcon } from \"neetoicons/misc\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Spinner } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport ManageIntegrations from \"components/commons/Manage\";\nimport { useDestroyDaily, useFetchDaily } from \"hooks/reactQuery/useDailiesApi\";\n\nconst Manage = ({ description, onDisconnect }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const { data: { metadata = {} } = {}, isFetching } = useFetchDaily();\n const { apiKey = null } = metadata || {};\n\n const { t } = useTranslation();\n\n const { mutate: destroyIntegration, isPending: isDisconnecting } =\n useDestroyDaily({\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n onDisconnect?.();\n },\n });\n\n const isConnected = isPresent(apiKey);\n\n const handleDisconnect = () => destroyIntegration(\"daily\");\n\n if (isFetching || isDisconnecting) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <ManageIntegrations\n {...{\n isConnected,\n isDisconnectAlertOpen,\n isDisconnecting,\n setIsDisconnectAlertOpen,\n }}\n Icon={DailyIcon}\n connectPath={buildUrl(window.location.pathname, { connect: true })}\n integration=\"daily\"\n description={\n isConnected ? (\n <Trans\n i18nKey=\"neetoIntegrations.daily.yourApiKey\"\n values={{ apiKey }}\n components={{\n wrapper: (\n <div className=\"neeto-ui-rounded-md mt-2 flex items-center justify-between gap-x-3 border px-3 py-2\" />\n ),\n span: <span className=\"break-all text-sm\" />,\n copy: (\n <CopyToClipboardButton\n className=\"shrink-0 self-start\"\n style=\"text\"\n value={apiKey}\n />\n ),\n }}\n />\n ) : (\n description\n )\n }\n title={\n isConnected\n ? t(\"neetoIntegrations.daily.connected\")\n : t(\"neetoIntegrations.daily.connect.account\")\n }\n onClose={() => setIsDisconnectAlertOpen(false)}\n onDisconnect={handleDisconnect}\n />\n );\n};\n\nexport default Manage;\n","import i18next from \"i18next\";\nimport { isPresent, noop } from \"neetocist\";\nimport { useQueryParams, withTitle } from \"neetocommons/react-utils\";\n\nimport { useFetchDaily } from \"hooks/reactQuery/useDailiesApi\";\n\nimport Form from \"./Form\";\nimport Manage from \"./Manage\";\n\nconst Daily = ({\n isOnboarding = false,\n helpDocUrl = \"\",\n videoUrl = \"\",\n description = \"\",\n onConnect = noop,\n onDisconnect = noop,\n}) => {\n const { connect } = useQueryParams();\n\n const { data: { metadata = {} } = {} } = useFetchDaily();\n const { apiKey = null } = metadata || {};\n\n if ((isPresent(apiKey) && !isOnboarding) || !connect) {\n return <Manage {...{ description, onDisconnect }} />;\n }\n\n return <Form {...{ helpDocUrl, onConnect, videoUrl }} />;\n};\n\nexport default withTitle(\n Daily,\n i18next.t(\"neetoIntegrations.browserTitles.integrations.dailyco\")\n);\n"],"names":["Manage","_ref","description","onDisconnect","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useFetchDaily","useFetchDaily","_useFetchDaily$data","data","_useFetchDaily$data2","_useFetchDaily$data2$","metadata","isFetching","_ref2","_ref2$apiKey","apiKey","_useTranslation","useTranslation","t","_useDestroyDaily","useDestroyDaily","onSuccess","destroyIntegration","mutate","isDisconnecting","isPending","isConnected","isPresent","handleDisconnect","_jsx","className","children","Spinner","ManageIntegrations","Icon","DailyIcon","connectPath","buildUrl","window","location","pathname","connect","integration","Trans","i18nKey","values","components","wrapper","span","copy","CopyToClipboardButton","style","value","title","onClose","Daily","_ref$isOnboarding","isOnboarding","_ref$helpDocUrl","helpDocUrl","_ref$videoUrl","videoUrl","_ref$description","_ref$onConnect","onConnect","noop","_ref$onDisconnect","_useQueryParams","useQueryParams","Form","withTitle","i18next"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Daily.js","sources":["../../app/javascript/src/components/Integrations/Daily/Manage.jsx","../../app/javascript/src/components/Integrations/Daily/index.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Daily as DailyIcon } from \"neetoicons/misc\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Spinner } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport ManageIntegrations from \"components/commons/Manage\";\nimport { useDestroyDaily, useFetchDaily } from \"hooks/reactQuery/useDailiesApi\";\n\nconst Manage = ({ description, onDisconnect }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const { data: { metadata = {} } = {}, isFetching } = useFetchDaily();\n const { apiKey = null } = metadata || {};\n\n const { t } = useTranslation();\n\n const { mutate: destroyIntegration, isPending: isDisconnecting } =\n useDestroyDaily({\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n onDisconnect?.();\n },\n });\n\n const isConnected = isPresent(apiKey);\n\n const handleDisconnect = () => destroyIntegration(\"daily\");\n\n if (isFetching || isDisconnecting) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <ManageIntegrations\n {...{\n isConnected,\n isDisconnectAlertOpen,\n isDisconnecting,\n setIsDisconnectAlertOpen,\n }}\n Icon={DailyIcon}\n connectPath={buildUrl(window.location.pathname, { connect: true })}\n integration=\"daily\"\n description={\n isConnected ? (\n <Trans\n i18nKey=\"neetoIntegrations.daily.yourApiKey\"\n values={{ apiKey }}\n components={{\n wrapper: (\n <div className=\"neeto-ui-rounded-md mt-2 flex items-center justify-between gap-x-3 border px-3 py-2\" />\n ),\n span: <span className=\"break-all text-sm\" />,\n copy: (\n <CopyToClipboardButton\n className=\"shrink-0 self-start\"\n style=\"text\"\n value={apiKey}\n />\n ),\n }}\n />\n ) : (\n description\n )\n }\n title={\n isConnected\n ? t(\"neetoIntegrations.daily.connected\")\n : t(\"neetoIntegrations.daily.connect.account\")\n }\n onClose={() => setIsDisconnectAlertOpen(false)}\n onDisconnect={handleDisconnect}\n />\n );\n};\n\nexport default Manage;\n","import i18next from \"i18next\";\nimport { isPresent, noop } from \"neetocist\";\nimport { useQueryParams, withTitle } from \"neetocommons/react-utils\";\n\nimport { useFetchDaily } from \"hooks/reactQuery/useDailiesApi\";\n\nimport Form from \"./Form\";\nimport Manage from \"./Manage\";\n\nconst Daily = ({\n isOnboarding = false,\n helpDocUrl = \"\",\n videoUrl = \"\",\n description = \"\",\n onConnect = noop,\n onDisconnect = noop,\n}) => {\n const { connect } = useQueryParams();\n\n const { data: { metadata = {} } = {} } = useFetchDaily();\n const { apiKey = null } = metadata || {};\n\n if ((isPresent(apiKey) && !isOnboarding) || !connect) {\n return <Manage {...{ description, onDisconnect }} />;\n }\n\n return <Form {...{ helpDocUrl, onConnect, videoUrl }} />;\n};\n\nexport default withTitle(\n Daily,\n i18next.t(\"neetoIntegrations.browserTitles.integrations.dailyco\")\n);\n"],"names":["Manage","_ref","description","onDisconnect","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useFetchDaily","useFetchDaily","_useFetchDaily$data","data","_useFetchDaily$data2","_useFetchDaily$data2$","metadata","isFetching","_ref2","_ref2$apiKey","apiKey","_useTranslation","useTranslation","t","_useDestroyDaily","useDestroyDaily","onSuccess","destroyIntegration","mutate","isDisconnecting","isPending","isConnected","isPresent","handleDisconnect","_jsx","className","children","Spinner","ManageIntegrations","Icon","DailyIcon","connectPath","buildUrl","window","location","pathname","connect","integration","Trans","i18nKey","values","components","wrapper","span","copy","CopyToClipboardButton","style","value","title","onClose","Daily","_ref$isOnboarding","isOnboarding","_ref$helpDocUrl","helpDocUrl","_ref$videoUrl","videoUrl","_ref$description","_ref$onConnect","onConnect","noop","_ref$onDisconnect","_useQueryParams","useQueryParams","Form","withTitle","i18next"],"mappings":"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"}
|