@bigbinary/neeto-webhooks-frontend 3.0.11 → 3.0.12

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NeetoWebhooks.js","sources":["../../../app/javascript/src/v2/components/Common/withReactQuery.jsx","../../../app/javascript/src/v2/components/Deliveries/Details/constants.js","../../../app/javascript/src/v2/components/Deliveries/Details/Snippet.jsx","../../../app/javascript/src/v2/components/Deliveries/Details/TransactionDetails.jsx","../../../app/javascript/src/v2/components/Deliveries/Details/index.jsx","../../../app/javascript/src/v2/components/Deliveries/utils.jsx","../../../app/javascript/src/v2/components/Deliveries/index.jsx","../../../app/javascript/src/v2/components/Webhooks/constants.js","../../../app/javascript/src/v2/components/Webhooks/EventCheckbox.jsx","../../../app/javascript/src/v2/components/Webhooks/ToggleActiveSwitch.jsx","../../../app/javascript/src/v2/components/Webhooks/utils.jsx","../../../app/javascript/src/v2/components/Webhooks/AddWebhookPane.jsx","../../../app/javascript/src/v2/components/Webhooks/Header.jsx","../../../app/javascript/src/v2/components/Webhooks/index.jsx","../../../app/javascript/src/v2/components/NeetoWebhooks.jsx"],"sourcesContent":["/* eslint-disable sonarjs/prefer-immediate-return */\n/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport { QueryClientProvider } from \"@tanstack/react-query\";\nimport { ReactQueryDevtools } from \"@tanstack/react-query-devtools\";\n\nimport queryClient from \"utils/queryClient\";\n\nconst withReactQuery = Component => {\n const QueryWrapper = props => (\n <QueryClientProvider client={queryClient}>\n <Component {...props} />\n <ReactQueryDevtools initialIsOpen={false} position=\"bottom\" />\n </QueryClientProvider>\n );\n\n return QueryWrapper;\n};\n\nexport default withReactQuery;\n","export const DELIVERY_TAB = {\n response: \"response\",\n request: \"request\",\n};\nexport const DELIVERY_STATUS = {\n failure: \"failure\",\n success: \"success\",\n};\n","const Snippet = ({ children, dataTestid = \"\" }) => (\n <div\n className=\"neeto-ui-rounded neeto-ui-border-gray-300 neeto-ui-bg-gray-100 my-2 whitespace-pre-wrap break-all border p-4\"\n data-testid={dataTestid}\n >\n {children}\n </div>\n);\n\nexport default Snippet;\n","import { useState } from \"react\";\n\nimport { Typography, Tabs, Badge } from \"@bigbinary/neeto-atoms\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DELIVERY_TAB } from \"./constants\";\nimport Snippet from \"./Snippet\";\n\nconst TransactionDetails = ({ delivery }) => {\n const [activeHeader, setActiveHeader] = useState(DELIVERY_TAB.request);\n\n const { t } = useTranslation();\n\n const { status, identifier, responseStatusCode, sid } = delivery;\n\n const renderPayload = () => {\n try {\n return JSON.stringify(JSON.parse(delivery.requestBody), null, 2);\n } catch {\n return \"\";\n }\n };\n\n return (\n <>\n <div className=\"neeto-ui-bg-white sticky top-0 mb-2 flex w-full flex-col\">\n <div className=\"flex w-full flex-col space-y-2 pb-4\">\n <span className=\"flex items-center space-x-1\">\n {t(\"neetoWebhooks.delivery.sid\")}:\n <Typography\n className=\"px-2 font-bold\"\n data-testid=\"delivery-sid\"\n variant=\"body2\"\n >\n {sid}\n </Typography>\n </span>\n <span className=\"flex items-center space-x-1\">\n {t(\"neetoWebhooks.delivery.deliveryId\")}:\n <Typography\n className=\"px-2 font-bold\"\n data-testid=\"delivery-identifier\"\n variant=\"body2\"\n >\n {identifier}\n </Typography>\n </span>\n <span className=\"flex items-center\">\n {t(\"neetoWebhooks.common.responseStatus\")}:\n <Typography\n className=\"px-2 font-bold\"\n data-testid=\"delivery-response-code\"\n variant=\"body2\"\n >\n {responseStatusCode}\n </Typography>\n <Badge\n variant={status === \"success\" ? \"green-subtle\" : \"amber-subtle\"}\n >\n {status}\n </Badge>\n </span>\n </div>\n <Tabs value={activeHeader} onValueChange={setActiveHeader}>\n <Tabs.List>\n <Tabs.Item value={DELIVERY_TAB.request}>\n {t(\"neetoWebhooks.delivery.request\")}\n </Tabs.Item>\n <Tabs.Item value={DELIVERY_TAB.response}>\n {t(\"neetoWebhooks.delivery.response\")}\n </Tabs.Item>\n </Tabs.List>\n <Tabs.Content value={DELIVERY_TAB.request}>\n <div className=\"mt-2 w-full space-y-4\">\n <div>\n <Typography variant=\"h5\">\n {t(\"neetoWebhooks.delivery.header\")}\n </Typography>\n <Snippet dataTestid=\"delivery-request-header\">\n {delivery.requestHeader}\n </Snippet>\n </div>\n <div>\n <Typography variant=\"h5\">\n {t(\"neetoWebhooks.delivery.payload\")}\n </Typography>\n <Snippet dataTestid=\"delivery-request-payload\">\n {renderPayload()}\n </Snippet>\n </div>\n </div>\n </Tabs.Content>\n <Tabs.Content value={DELIVERY_TAB.response}>\n <div className=\"mt-2 w-full space-y-4\">\n <div>\n <Typography variant=\"h5\">\n {t(\"neetoWebhooks.delivery.header\")}\n </Typography>\n <Snippet dataTestid=\"delivery-response-header\">\n {delivery.responseHeader}\n </Snippet>\n </div>\n <div>\n <Typography variant=\"h5\">\n {t(\"neetoWebhooks.delivery.body\")}\n </Typography>\n <Snippet dataTestid=\"delivery-response-body\">\n {delivery.responseBody}\n </Snippet>\n </div>\n </div>\n </Tabs.Content>\n </Tabs>\n </div>\n </>\n );\n};\n\nexport default TransactionDetails;\n","import { isPresent } from \"neetocist\";\nimport DateFormat from \"neetomolecules/v2/DateFormat\";\nimport { Button, Sheet, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useRedeliverWebhook,\n useShowDelivery,\n} from \"hooks/reactQuery/useDeliveriesApi\";\n\nimport TransactionDetails from \"./TransactionDetails\";\n\nconst Details = ({ onClose, deliveryId, webhookSid }) => {\n const { t } = useTranslation();\n\n const { isPending: isRedelivering, mutateAsync: redeliverWebhook } =\n useRedeliverWebhook(deliveryId, webhookSid);\n\n const { isPending: isLoading, data: { delivery } = {} } = useShowDelivery(\n deliveryId,\n webhookSid\n );\n\n const handleRedeliverClick = async () => {\n await redeliverWebhook();\n };\n\n return (\n <Sheet {...{ onClose }} isOpen={isPresent(deliveryId)} size=\"large\">\n <>\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <>\n <Sheet.Header>\n <>\n <DateFormat.Date\n date={delivery.createdAt}\n tooltipProps={{ disabled: true }}\n typographyProps={{ variant: \"h2\", weight: \"semibold\" }}\n />\n <span> • </span>\n <DateFormat.Time\n date={delivery.createdAt}\n tooltipProps={{ disabled: true }}\n typographyProps={{ variant: \"h2\", weight: \"normal\" }}\n />\n </>\n </Sheet.Header>\n <Sheet.Body>\n {isPresent(delivery) && <TransactionDetails {...{ delivery }} />}\n </Sheet.Body>\n <Sheet.Footer className=\"gap-x-2\">\n {delivery?.eventId && (\n <Button\n disabled={isRedelivering || delivery.webhook?.versionExpired}\n label={t(\"neetoWebhooks.delivery.redeliver\")}\n loading={isRedelivering}\n onClick={handleRedeliverClick}\n />\n )}\n <Button\n label={t(\"neetoWebhooks.buttons.cancel\")}\n variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </>\n )}\n </>\n </Sheet>\n );\n};\n\nexport default Details;\n","import { Badge, Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport DateFormat from \"neetomolecules/v2/DateFormat\";\n\nexport const buildColumns = ({ deliveryDetailsPath, page }) => [\n {\n id: \"identifier\",\n accessorKey: \"identifier\",\n header: t(\"neetoWebhooks.delivery.deliveryId\"),\n size: 390,\n cell: ({ row }) => {\n const delivery = row.original;\n\n return (\n <div className=\"flex items-center gap-x-3\">\n <Button\n variant=\"link\"\n to={buildUrl(deliveryDetailsPath, { deliveryId: delivery.sid, page })}\n weight=\"semibold\"\n >\n {delivery.identifier}\n </Button>\n {delivery.redelivery && (\n <Badge variant=\"blue\">{t(\"neetoWebhooks.delivery.redelivery\")}</Badge>\n )}\n </div>\n );\n },\n },\n {\n id: \"createdAt\",\n accessorKey: \"createdAt\",\n header: t(\"neetoWebhooks.tableHeaders.createdAt\"),\n size: 280,\n cell: ({ getValue }) => (\n <div className=\"flex items-center justify-between space-x-1\">\n <Typography>\n <DateFormat.DateTime date={getValue()} />\n </Typography>\n </div>\n ),\n },\n {\n id: \"responseStatusCode\",\n header: t(\"neetoWebhooks.common.responseStatus\"),\n size: 250,\n cell: ({ row }) => {\n const { responseStatusCode, status } = row.original;\n\n return (\n <span className=\"flex items-center\">\n <Typography className=\"px-2\" variant=\"body2\">\n {responseStatusCode}\n </Typography>\n <Badge variant={status === \"success\" ? \"green\" : \"amber\"}>\n {status}\n </Badge>\n </span>\n );\n },\n },\n {\n id: \"event\",\n accessorKey: \"event\",\n header: t(\"neetoWebhooks.common.event\", SINGULAR),\n size: 270,\n cell: ({ getValue }) => getValue()?.label,\n },\n];\n","import { isNotEmpty, removeBy } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport TableWrapper from \"neetomolecules/v2/TableWrapper\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useParams, useRouteMatch } from \"react-router-dom\";\n\nimport { useFetchDeliveries } from \"hooks/reactQuery/useDeliveriesApi\";\nimport { getDeliveryDetailsPath, getDeliveriesPath } from \"utils/paths\";\nimport withReactQuery from \"v2/components/Common/withReactQuery\";\n\nimport Details from \"./Details\";\nimport { buildColumns } from \"./utils\";\n\nconst Deliveries = ({\n webhooksUrl,\n breadcrumbs: hostBreadcrumbs,\n helpLink,\n}) => {\n const { url: deliveriesUrl } = useRouteMatch();\n const history = useHistory();\n const { t } = useTranslation();\n const { webhookId, deliveryId } = useParams();\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const deliveriesPath = getDeliveriesPath(webhooksUrl);\n const deliveryDetailsPath = getDeliveryDetailsPath(deliveriesUrl);\n\n const {\n isLoading,\n isFetching,\n data: { totalCount, deliveries = [] } = {},\n } = useFetchDeliveries(webhookId, {\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const breadcrumbsWithoutWebhooksTitle = removeBy(\n { text: t(\"neetoWebhooks.webhook.title\") },\n hostBreadcrumbs\n );\n\n const breadcrumbs = [\n ...breadcrumbsWithoutWebhooksTitle,\n { link: webhooksUrl, text: t(\"neetoWebhooks.webhook.title\") },\n { link: window.location.pathname, text: t(\"neetoWebhooks.delivery.title\") },\n ];\n\n if (isLoading) {\n return (\n <div className=\"flex justify-center items-center w-full h-screen\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container className=\"w-full\">\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoWebhooks.delivery.title\")}\n titleHelpPopoverProps={{\n title: t(\"neetoWebhooks.delivery.title\"),\n description: t(\"neetoWebhooks.delivery.helpDescription\"),\n helpLinkProps: { href: helpLink },\n }}\n />\n {isNotEmpty(deliveries) ? (\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <DataTable\n {...{ totalCount }}\n columns={buildColumns({ deliveryDetailsPath, page })}\n currentPage={Number(page)}\n data={deliveries}\n loading={isFetching}\n pageSize={DEFAULT_PAGE_SIZE}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex justify-center items-center w-full h-full\">\n <Empty\n description={t(\"neetoWebhooks.delivery.empty.description\")}\n title={t(\"neetoWebhooks.delivery.empty.title\")}\n />\n </div>\n )}\n <Details\n {...{ deliveryId }}\n webhookSid={webhookId}\n onClose={() =>\n history.replace(buildUrl(deliveriesPath, { webhookId, page }))\n }\n />\n </Container>\n );\n};\n\nexport default withReactQuery(Deliveries);\n","export const MENU_ITEMS = { EDIT: \"edit\", DELETE: \"delete\" };\nexport const WEBHOOK_INITIAL_VALUES = {\n endpoint: \"\",\n events: [],\n secret: \"\",\n isActive: true,\n};\n","import { findIndexBy } from \"neetocist\";\n\nimport { Checkbox } from \"@bigbinary/neeto-atoms\";\n\nconst EventCheckbox = ({ events, values, arrayHelpers, onEventsChange }) => {\n const handleToggle = (isSelected, index, event) => {\n if (isSelected) {\n arrayHelpers.remove(index);\n } else {\n arrayHelpers.push(event);\n }\n onEventsChange?.();\n };\n\n return (\n <div>\n {events.map(event => {\n const index = findIndexBy(event, values.events ?? []);\n const isSelected = index > -1;\n\n return (\n <Checkbox\n checked={isSelected}\n className=\"my-4\"\n key={event.identifier}\n label={event.label}\n onCheckedChange={() => handleToggle(isSelected, index, event)}\n />\n );\n })}\n </div>\n );\n};\nexport default EventCheckbox;\n","import { useState, useRef } from \"react\";\n\nimport { Switch } from \"@bigbinary/neeto-atoms\";\n\nimport { useUpdateWebhook } from \"hooks/reactQuery/useWebhooksApi\";\n\nconst ToggleActiveSwitch = ({ isActive, webhookId }) => {\n const [status, setStatus] = useState(isActive);\n const previousStatusRef = useRef(isActive);\n\n const { mutate: updateWebhook } = useUpdateWebhook(webhookId, {\n onError: () => {\n // Revert to the previous state\n setStatus(previousStatusRef.current);\n },\n onSuccess: () => {\n // Update the previous status ref on successful update\n previousStatusRef.current = status;\n },\n });\n\n const handleToggle = updatedStatus => {\n // Store the current status as previous before changing\n previousStatusRef.current = status;\n setStatus(updatedStatus);\n updateWebhook({ id: webhookId, payload: { isActive: updatedStatus } });\n };\n\n return <Switch checked={status} onCheckedChange={handleToggle} />;\n};\n\nexport default ToggleActiveSwitch;\n","import { Badge, Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { findBy, removeById, snakeToCamelCase } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { assoc, pluck } from \"ramda\";\nimport { v4 as uuid } from \"uuid\";\nimport * as yup from \"yup\";\n\nimport { MENU_ITEMS } from \"./constants\";\nimport ToggleActiveSwitch from \"./ToggleActiveSwitch\";\n\nconst getMenuItems = ({ onEdit, onDelete }) => [\n {\n key: MENU_ITEMS.EDIT,\n label: t(\"neetoWebhooks.buttons.edit\"),\n \"data-testid\": \"neeto-webhooks-edit-button\",\n onClick: onEdit,\n },\n {\n key: MENU_ITEMS.DELETE,\n label: t(\"neetoWebhooks.buttons.delete\"),\n \"data-testid\": \"neeto-webhooks-delete-button\",\n onClick: onDelete,\n },\n];\n\nexport const getValidationSchema = webhooks =>\n yup.object().shape({\n endpoint: yup\n .string()\n .trim()\n .matches(\n /^(https?):\\/\\//i,\n t(\"neetoWebhooks.errors.webhook.invalidUrlProtocol\")\n )\n .url(t(\"neetoWebhooks.errors.webhook.invalidUrl\"))\n .required(t(\"neetoWebhooks.errors.webhook.required\"))\n .test(\n \"Is endpoint unique\",\n t(\"neetoWebhooks.errors.webhook.urlNotUnique\"),\n (endpoint, ctx) =>\n !pluck(\"endpoint\", removeById(ctx.parent.id, webhooks)).includes(\n endpoint?.trim()\n )\n ),\n events: yup\n .array()\n .default([])\n .min(1, t(\"neetoWebhooks.errors.webhook.events.required\")),\n secret: yup.string().trim().nullable(),\n });\n\nexport const buildEventsOptions = events =>\n events.map(event => ({\n label: t(`neetoWebhooks.webhooks.events.${snakeToCamelCase(event)}`),\n value: event,\n }));\n\nexport const buildPayload = ({ isEditing, values, initialValues }) => {\n const events = values.events.map(({ identifier }) => ({ identifier }));\n if (!isEditing) return { ...values, eventsAttributes: events };\n\n const deletable = (initialValues.events ?? [])\n .filter(({ identifier }) => !findBy({ identifier }, values.events))\n .map(assoc(\"_destroy\", true));\n\n const creatable = values.events.filter(\n ({ identifier }) => !findBy({ identifier }, initialValues.events)\n );\n\n return { ...values, eventsAttributes: [...creatable, ...deletable] };\n};\n\nexport const formatTimeUntilExpiration = expiresAt => {\n if (!expiresAt) return null;\n\n const now = new Date();\n const expiry = new Date(expiresAt);\n const diffMs = expiry - now;\n\n if (diffMs <= 0) return null;\n\n const diffHours = Math.floor(diffMs / (1000 * 60 * 60));\n const diffDays = Math.floor(diffHours / 24);\n\n if (diffDays > 0) {\n return t(\"neetoWebhooks.webhook.versionStatus.expiresIn.days\", {\n count: diffDays,\n });\n }\n const remainingHours = diffHours;\n const remainingMinutes = Math.floor(\n (diffMs % (1000 * 60 * 60)) / (1000 * 60)\n );\n\n return t(\"neetoWebhooks.webhook.versionStatus.expiresIn.hoursAndMinutes\", {\n hours: remainingHours,\n hoursPlural: remainingHours !== 1 ? \"s\" : \"\",\n minutes: remainingMinutes,\n minutesPlural: remainingMinutes !== 1 ? \"s\" : \"\",\n });\n};\n\nexport const formatExpiredDate = expiresAt => {\n if (!expiresAt) return null;\n\n const expiry = new Date(expiresAt);\n\n return t(\"neetoWebhooks.webhook.versionStatus.expiredOn\", {\n date: expiry.toLocaleDateString(),\n });\n};\n\nexport const buildColumns = ({ handleDelete, handleEdit, deliveriesPath }) => [\n {\n id: \"endpoint\",\n accessorKey: \"endpoint\",\n header: t(\"neetoWebhooks.common.endpoint\"),\n size: 700,\n cell: ({ row, getValue }) => {\n const webhook = row.original;\n\n return (\n <div className=\"flex items-center justify-between space-x-3\">\n <Button\n variant=\"link\"\n to={buildUrl(deliveriesPath, { webhookId: webhook.sid })}\n >\n {getValue()}\n </Button>\n <MoreDropdown\n dropdownButtonProps={{ className: \"me-1 my-1\" }}\n menuItems={getMenuItems({\n onEdit: () => handleEdit(webhook.id),\n onDelete: () => handleDelete(webhook.id),\n })}\n />\n </div>\n );\n },\n },\n {\n id: \"isActive\",\n accessorKey: \"isActive\",\n header: t(\"neetoWebhooks.webhook.active\"),\n size: 150,\n cell: ({ row, getValue }) => (\n <ToggleActiveSwitch isActive={getValue()} webhookId={row.original.id} />\n ),\n },\n {\n id: \"version\",\n accessorKey: \"version\",\n header: t(\"neetoWebhooks.webhook.version\"),\n size: 200,\n cell: ({ row, getValue }) => {\n const webhook = row.original;\n const timeMessage = webhook.versionExpired\n ? formatExpiredDate(webhook.versionExpiresAt)\n : formatTimeUntilExpiration(webhook.versionExpiresAt);\n\n return (\n <div className=\"flex flex-col space-y-1\">\n <div className=\"flex items-center space-x-2\">\n <span>{getValue()}</span>\n {webhook.versionExpired && <Badge variant=\"red\">expired</Badge>}\n {webhook.versionDeprecated && !webhook.versionExpired && (\n <Badge variant=\"amber\">deprecated</Badge>\n )}\n </div>\n {timeMessage && (\n <div className=\"text-xs neeto-ui-text-gray-600\">\n {timeMessage}.{\" \"}\n <a\n className=\"text-blue-600 hover:text-blue-800 underline\"\n href={webhook.defaultVersionPayloadDocUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoWebhooks.webhook.versionStatus.moreDetails\")}\n </a>\n .\n </div>\n )}\n </div>\n );\n },\n },\n {\n id: \"events\",\n accessorKey: \"events\",\n header: t(\"neetoWebhooks.common.event\", PLURAL),\n size: 300,\n cell: ({ getValue }) => (\n <span className=\"whitespace-normal\">\n {pluck(\"label\", getValue()).sort().join(\", \")}\n </span>\n ),\n },\n];\n\nexport const generateRandomSecret = () => uuid().replace(/-/g, \"\");\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport {\n Button,\n Label,\n Sheet,\n Spinner,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport {\n ActionBlock,\n Form,\n Input,\n Textarea,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport { FieldArray, ErrorMessage } from \"formik\";\nimport { Plus } from \"lucide-react\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchEvents } from \"hooks/reactQuery/useEventsApi\";\nimport {\n useCreateWebhook,\n useShowWebhook,\n useUpdateWebhook,\n} from \"hooks/reactQuery/useWebhooksApi\";\n\nimport { WEBHOOK_INITIAL_VALUES } from \"./constants\";\nimport EventCheckbox from \"./EventCheckbox\";\nimport {\n buildPayload,\n generateRandomSecret,\n getValidationSchema,\n} from \"./utils\";\n\nconst AddWebhookPane = ({\n editingWebhookId,\n entityId,\n entityType,\n isOpen,\n onClose,\n onCreate,\n webhooks,\n webhooksHelpLink,\n secretsHelpLink,\n}) => {\n const { t } = useTranslation();\n const [isSecretInputFieldVisible, setIsSecretInputFieldVisible] =\n useState(false);\n\n const { mutate: createWebhook } = useCreateWebhook({\n onSuccess: () => {\n onClose();\n onCreate?.();\n },\n });\n\n const { data: { webhook = {} } = {} } = useShowWebhook(editingWebhookId, {\n entityId,\n });\n\n const { mutate: updateWebhook } = useUpdateWebhook(editingWebhookId, {\n onSuccess: onClose,\n });\n const endpointRef = useRef();\n\n const { data: events = [], isLoading } = useFetchEvents();\n\n const initialValues = useMemo(\n () =>\n editingWebhookId\n ? {\n ...WEBHOOK_INITIAL_VALUES,\n ...webhook,\n events: Array.isArray(webhook?.events) ? webhook?.events : [],\n }\n : { ...WEBHOOK_INITIAL_VALUES, events },\n [editingWebhookId, webhook, events]\n );\n\n const isWebhookExpiredOrDeprecated =\n editingWebhookId && (webhook.versionExpired || webhook.versionDeprecated);\n\n const handleSubmit = values => {\n // Check if webhook is expired or deprecated before allowing edit\n if (\n editingWebhookId &&\n (webhook.versionExpired || webhook.versionDeprecated)\n ) {\n return;\n }\n\n const payload = buildPayload({\n isEditing: editingWebhookId,\n values,\n initialValues,\n });\n\n editingWebhookId\n ? updateWebhook({ id: editingWebhookId, payload, entityId })\n : createWebhook({ ...payload, entityId, entityType });\n };\n\n const handleClick = setFieldValue => {\n const randomWebhookSecret = generateRandomSecret();\n setFieldValue(\"secret\", randomWebhookSecret);\n setIsSecretInputFieldVisible(true);\n };\n\n const handleRegenerate = setFieldValue => {\n const randomWebhookSecret = generateRandomSecret();\n setFieldValue(\"secret\", randomWebhookSecret);\n };\n\n const handleDelete = setFieldValue => {\n setFieldValue(\"secret\", null);\n setIsSecretInputFieldVisible(false);\n };\n\n useEffect(() => {\n if (webhook?.secret) {\n setIsSecretInputFieldVisible(true);\n }\n }, [webhook]);\n\n return (\n <Form\n formikProps={{\n enableReinitialize: true,\n validationSchema: getValidationSchema(webhooks),\n initialValues,\n onSubmit: values => handleSubmit(getValidationSchema().cast(values)),\n }}\n >\n {({ setFieldValue, setFieldTouched, values, isValid, dirty }) => (\n <Sheet {...{ isOpen, onClose }} initialFocusRef={endpointRef}>\n <Sheet.Header className=\"flex items-center gap-x-2\">\n <Typography\n as=\"h2\"\n data-testid=\"add-new-webhook-pane-header\"\n variant=\"h2\"\n weight=\"semibold\"\n >\n {editingWebhookId\n ? t(\"neetoWebhooks.webhook.edit\")\n : t(\"neetoWebhooks.webhook.add\")}\n </Typography>\n <HelpPopover\n description={t(\"neetoWebhooks.webhook.helpDescription\")}\n helpLinkProps={{ href: webhooksHelpLink }}\n title={t(\"neetoWebhooks.webhook.title\")}\n />\n </Sheet.Header>\n {isLoading ? (\n <Sheet.Body>\n <div className=\"flex items-center justify-center\">\n <Spinner />\n </div>\n </Sheet.Body>\n ) : (\n <>\n <Sheet.Body className=\"pb-6\">\n <div className=\"w-full space-y-4 md:space-y-6\">\n <Typography className=\"mb-2\" variant=\"body2\">\n {t(\"neetoWebhooks.webhook.postRequestIsSentToEndpointURL\")}\n </Typography>\n <Textarea\n required\n data-testid=\"endpoint-input-field\"\n label={t(\"neetoWebhooks.webhook.endpoint\")}\n name=\"endpoint\"\n placeholder={t(\"neetoWebhooks.webhook.endpointPlaceholder\")}\n ref={endpointRef}\n rows={1}\n />\n <div className=\"space-y-2\">\n <Label className=\"flex items-center gap-x-2\">\n {t(\"neetoWebhooks.webhook.secret\")}\n <HelpPopover\n helpLinkProps={{ href: secretsHelpLink }}\n popoverProps={{ position: \"bottom\" }}\n title={t(\"neetoWebhooks.webhook.secretkeyHelpTitle\")}\n description={t(\n \"neetoWebhooks.webhook.secretkeyHelpDescription\"\n )}\n />\n </Label>\n {isSecretInputFieldVisible ? (\n <div className=\"flex items-center justify-between space-x-2\">\n <Input\n data-testid=\"secret-key-input-field\"\n name=\"secret\"\n placeholder={t(\n \"neetoWebhooks.webhook.secretPlaceholder\"\n )}\n />\n <MoreDropdown\n menuItems={[\n {\n key: \"regenerate-secret\",\n label: t(\"neetoWebhooks.buttons.regenerate\"),\n \"data-testid\": \"regenerate-secret\",\n onClick: () => handleRegenerate(setFieldValue),\n },\n {\n key: \"delete-secret\",\n label: t(\"neetoWebhooks.buttons.delete\"),\n \"data-testid\": \"delete-secret\",\n onClick: () => handleDelete(setFieldValue),\n },\n ]}\n />\n </div>\n ) : (\n <Button\n data-testid=\"add-secret-key\"\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoWebhooks.buttons.generateSecretKey\")}\n variant=\"link\"\n onClick={() => handleClick(setFieldValue)}\n />\n )}\n </div>\n <div className=\"space-y-2\">\n <Label required>\n {t(\"neetoWebhooks.common.event\", PLURAL)}\n </Label>\n <FieldArray\n name=\"events\"\n render={arrayHelpers => (\n <EventCheckbox\n {...{ arrayHelpers, events, values }}\n onEventsChange={() => setFieldTouched(\"events\", true)}\n />\n )}\n />\n <ErrorMessage\n name=\"events\"\n render={msg => (\n <div\n className=\"neeto-ui-text-error-800 text-xs mt-1\"\n data-testid=\"event-error-text\"\n >\n {msg}\n </div>\n )}\n />\n </div>\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n disabled:\n isWebhookExpiredOrDeprecated ||\n !isValid ||\n (editingWebhookId && !dirty),\n }}\n />\n </Sheet.Footer>\n </>\n )}\n </Sheet>\n )}\n </Form>\n );\n};\n\nexport default AddWebhookPane;\n","import { memo } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport NeetoHeader from \"neetomolecules/v2/Header\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { Typography, Button } from \"@bigbinary/neeto-atoms\";\n\nconst Header = withT(\n ({\n t,\n breadcrumbs,\n title,\n titleHelpPopoverProps,\n setIsAddWebhookPaneOpen,\n headerSize,\n webhooks,\n webhooksHelpLink,\n }) => (\n <>\n <NeetoHeader\n {...{ breadcrumbs }}\n size={headerSize}\n title={title || t(\"neetoWebhooks.webhook.title\")}\n actionBlock={\n <Button\n data-testid=\"add-new-webhook-button\"\n label={t(\"neetoWebhooks.webhook.add\")}\n onClick={() => setIsAddWebhookPaneOpen(true)}\n />\n }\n titleHelpPopoverProps={{\n description: t(\"neetoWebhooks.webhook.helpDescription\"),\n helpLinkProps: { href: webhooksHelpLink },\n title: t(\"neetoWebhooks.webhook.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n {isNotEmpty(webhooks) && (\n <SubHeader\n leftActionBlock={\n <Typography as=\"h4\" variant=\"h4\">\n {t(\"neetoWebhooks.common.webhookWithCount\", {\n count: webhooks.length,\n })}\n </Typography>\n }\n />\n )}\n </>\n )\n);\n\nexport default memo(Header);\n","import { useCallback, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport {\n Alert,\n Button,\n DataTable,\n Empty,\n Spinner,\n} from \"@bigbinary/neeto-atoms\";\nimport Container from \"neetomolecules/v2/Container\";\nimport TableWrapper from \"neetomolecules/v2/TableWrapper\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchWebhooks,\n useDestroyWebhook,\n} from \"hooks/reactQuery/useWebhooksApi\";\nimport withReactQuery from \"v2/components/Common/withReactQuery\";\n\nimport AddWebhookPane from \"./AddWebhookPane\";\nimport Header from \"./Header\";\nimport { buildColumns } from \"./utils\";\n\nconst Webhooks = ({\n deliveriesPath,\n entityType,\n breadcrumbs,\n title,\n titleHelpPopoverProps,\n entityId,\n onCreate,\n onDelete,\n headerSize,\n containerClassName = \"\",\n webhooksHelpLink,\n secretsHelpLink,\n}) => {\n const [editingWebhookId, setEditingWebhookId] = useState(null);\n const [deletingWebhookId, setDeletingWebhookId] = useState(null);\n const [isAddWebhookPaneOpen, setIsAddWebhookPaneOpen] = useState(false);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n\n const { t } = useTranslation();\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const {\n isLoading,\n isFetching,\n data: { webhooks = [], totalCount = 0 } = {},\n } = useFetchWebhooks({\n entityId,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const { isPending: isDeleting, mutate: destroyWebhook } = useDestroyWebhook({\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n onDelete?.();\n },\n });\n\n const handlePaneClose = () => {\n setEditingWebhookId(null);\n setIsAddWebhookPaneOpen(false);\n };\n\n const handleEdit = useCallback(id => {\n setEditingWebhookId(id);\n setIsAddWebhookPaneOpen(true);\n }, []);\n\n const handleDelete = useCallback(id => {\n setDeletingWebhookId(id);\n setIsDeleteAlertOpen(true);\n }, []);\n\n if (isLoading) {\n return (\n <div className=\"flex justify-center items-center w-full h-screen\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container className={containerClassName}>\n <Header\n {...{\n breadcrumbs,\n headerSize,\n setIsAddWebhookPaneOpen,\n title,\n titleHelpPopoverProps,\n webhooks,\n webhooksHelpLink,\n }}\n />\n {isNotEmpty(webhooks) ? (\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <DataTable\n {...{ totalCount }}\n currentPage={Number(page)}\n data={webhooks}\n loading={isFetching}\n pageSize={DEFAULT_PAGE_SIZE}\n columns={buildColumns({\n handleDelete,\n handleEdit,\n deliveriesPath,\n })}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex justify-center items-center w-full h-full\">\n <Empty\n title={t(\"neetoWebhooks.webhook.empty\")}\n description={\n <Button\n href={webhooksHelpLink}\n label={t(\"neetoWebhooks.webhook.emptyHelpText\")}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n }\n primaryButtonProps={{\n label: t(\"neetoWebhooks.webhook.add\"),\n onClick: () => setIsAddWebhookPaneOpen(true),\n }}\n />\n </div>\n )}\n <AddWebhookPane\n {...{\n editingWebhookId,\n entityId,\n entityType,\n onCreate,\n secretsHelpLink,\n webhooks,\n webhooksHelpLink,\n }}\n isOpen={isAddWebhookPaneOpen}\n onClose={handlePaneClose}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoWebhooks.buttons.delete\")}\n message={t(\"neetoWebhooks.alert.delete.message\", {\n entity: t(\"neetoWebhooks.entity.webhook\"),\n })}\n title={t(\"neetoWebhooks.alert.delete.title\", {\n entity: t(\"neetoWebhooks.entity.webhook\"),\n })}\n onClose={() => setIsDeleteAlertOpen(false)}\n onSubmit={() => destroyWebhook(deletingWebhookId, { entityId })}\n />\n </Container>\n );\n};\n\nexport default withReactQuery(Webhooks);\n","import { mergeRight } from \"ramda\";\nimport { Switch, Route, useRouteMatch } from \"react-router-dom\";\n\nimport { HELP_LINK_URLS } from \"src/constants/urls\";\nimport { getDeliveriesPath, getDeliveryDetailsPath } from \"utils/paths\";\n\nimport Deliveries from \"./Deliveries\";\nimport Webhooks from \"./Webhooks\";\n\nimport \"../../stylesheets/main.css\";\n\nconst NeetoWebhooks = ({\n entityType,\n entityId,\n breadcrumbs = [],\n title,\n titleHelpPopoverProps,\n onCreate,\n onDelete,\n headerSize,\n containerClassName,\n helpLinkUrls = {},\n}) => {\n const { path: webhooksPath, url: webhooksUrl } = useRouteMatch();\n\n const deliveriesPath = getDeliveriesPath(webhooksUrl);\n const deliveryDetailsPath = getDeliveryDetailsPath(deliveriesPath);\n const helpLinks = mergeRight(HELP_LINK_URLS, helpLinkUrls);\n\n return (\n <Switch>\n <Route\n exact\n path={webhooksPath}\n component={() => (\n <Webhooks\n {...{\n breadcrumbs,\n containerClassName,\n deliveriesPath,\n entityId,\n entityType,\n headerSize,\n onCreate,\n onDelete,\n title,\n titleHelpPopoverProps,\n }}\n secretsHelpLink={helpLinks.secrets}\n webhooksHelpLink={helpLinks.webhooks}\n />\n )}\n />\n <Route\n exact\n path={deliveryDetailsPath}\n render={() => (\n <Deliveries\n {...{ breadcrumbs, webhooksUrl }}\n helpLink={helpLinks.deliveries}\n />\n )}\n />\n <Route\n path={deliveriesPath}\n render={() => (\n <Deliveries\n {...{ breadcrumbs, webhooksUrl }}\n helpLink={helpLinks.deliveries}\n />\n )}\n />\n </Switch>\n );\n};\n\nexport default NeetoWebhooks;\n"],"names":["withReactQuery","Component","QueryWrapper","props","_jsxs","QueryClientProvider","client","queryClient","children","_jsx","_objectSpread","ReactQueryDevtools","initialIsOpen","position","DELIVERY_TAB","response","request","Snippet","_ref","_ref$dataTestid","dataTestid","className","TransactionDetails","delivery","_useState","useState","_useState2","_slicedToArray","activeHeader","setActiveHeader","_useTranslation","useTranslation","t","status","identifier","responseStatusCode","sid","renderPayload","JSON","stringify","parse","requestBody","_unused","_Fragment","Typography","variant","Badge","Tabs","value","onValueChange","List","Item","Content","requestHeader","responseHeader","responseBody","Details","_delivery$webhook","onClose","deliveryId","webhookSid","_useRedeliverWebhook","useRedeliverWebhook","isRedelivering","isPending","redeliverWebhook","mutateAsync","_useShowDelivery","useShowDelivery","isLoading","_useShowDelivery$data","data","_useShowDelivery$data2","handleRedeliverClick","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","stop","apply","arguments","Sheet","isOpen","isPresent","size","Spinner","Header","DateFormat","Date","date","createdAt","tooltipProps","disabled","typographyProps","weight","Time","Body","Footer","eventId","Button","webhook","versionExpired","label","loading","onClick","buildColumns","deliveryDetailsPath","page","id","accessorKey","header","cell","row","original","to","buildUrl","redelivery","_ref3","getValue","DateTime","_ref4","_row$original","SINGULAR","_ref5","_getValue","Deliveries","webhooksUrl","hostBreadcrumbs","breadcrumbs","helpLink","_useRouteMatch","useRouteMatch","deliveriesUrl","url","history","useHistory","_useParams","useParams","webhookId","_useQueryParams","useQueryParams","_useQueryParams$page","DEFAULT_PAGE_INDEX","deliveriesPath","getDeliveriesPath","getDeliveryDetailsPath","_useFetchDeliveries","useFetchDeliveries","pageSize","DEFAULT_PAGE_SIZE","isFetching","_useFetchDeliveries$d","_useFetchDeliveries$d2","totalCount","_useFetchDeliveries$d3","deliveries","breadcrumbsWithoutWebhooksTitle","removeBy","text","concat","_toConsumableArray","link","window","location","pathname","Container","title","titleHelpPopoverProps","description","helpLinkProps","href","isNotEmpty","TableWrapper","hasPagination","DataTable","columns","currentPage","Number","Empty","replace","MENU_ITEMS","EDIT","DELETE","WEBHOOK_INITIAL_VALUES","endpoint","events","secret","isActive","EventCheckbox","values","arrayHelpers","onEventsChange","handleToggle","isSelected","index","event","remove","push","map","_values$events","findIndexBy","Checkbox","checked","onCheckedChange","ToggleActiveSwitch","setStatus","previousStatusRef","useRef","_useUpdateWebhook","useUpdateWebhook","onError","current","onSuccess","updateWebhook","mutate","updatedStatus","payload","Switch","getMenuItems","onEdit","onDelete","key","getValidationSchema","webhooks","yup","object","shape","string","trim","matches","required","test","ctx","pluck","removeById","parent","includes","array","min","nullable","buildPayload","_initialValues$events","isEditing","initialValues","eventsAttributes","deletable","filter","findBy","assoc","creatable","formatTimeUntilExpiration","expiresAt","now","expiry","diffMs","diffHours","Math","floor","diffDays","count","remainingHours","remainingMinutes","hours","hoursPlural","minutes","minutesPlural","formatExpiredDate","toLocaleDateString","_ref6","handleDelete","handleEdit","_ref7","MoreDropdown","dropdownButtonProps","menuItems","_ref8","_ref9","timeMessage","versionExpiresAt","versionDeprecated","defaultVersionPayloadDocUrl","rel","target","PLURAL","_ref10","sort","join","generateRandomSecret","uuid","AddWebhookPane","editingWebhookId","entityId","entityType","onCreate","webhooksHelpLink","secretsHelpLink","isSecretInputFieldVisible","setIsSecretInputFieldVisible","_useCreateWebhook","useCreateWebhook","createWebhook","_useShowWebhook","useShowWebhook","_useShowWebhook$data","_useShowWebhook$data2","_useShowWebhook$data3","endpointRef","_useFetchEvents","useFetchEvents","_useFetchEvents$data","useMemo","Array","isArray","isWebhookExpiredOrDeprecated","handleSubmit","handleClick","setFieldValue","randomWebhookSecret","handleRegenerate","useEffect","Form","formikProps","enableReinitialize","validationSchema","onSubmit","cast","setFieldTouched","isValid","dirty","initialFocusRef","as","HelpPopover","Textarea","name","placeholder","ref","rows","Label","popoverProps","Input","icon","Plus","iconPosition","FieldArray","render","ErrorMessage","msg","ActionBlock","cancelButtonProps","submitButtonProps","withT","setIsAddWebhookPaneOpen","headerSize","NeetoHeader","actionBlock","SubHeader","leftActionBlock","length","memo","Webhooks","_ref$containerClassNa","containerClassName","setEditingWebhookId","_useState3","_useState4","deletingWebhookId","setDeletingWebhookId","_useState5","_useState6","isAddWebhookPaneOpen","_useState7","_useState8","isDeleteAlertOpen","setIsDeleteAlertOpen","_useFetchWebhooks","useFetchWebhooks","_useFetchWebhooks$dat","_useFetchWebhooks$dat2","_useFetchWebhooks$dat3","_useFetchWebhooks$dat4","_useDestroyWebhook","useDestroyWebhook","isDeleting","destroyWebhook","handlePaneClose","useCallback","primaryButtonProps","Alert","isSubmitting","submitButtonLabel","message","entity","NeetoWebhooks","_ref$breadcrumbs","_ref$helpLinkUrls","helpLinkUrls","webhooksPath","path","helpLinks","mergeRight","HELP_LINK_URLS","Route","exact","component","secrets"],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ var v2_NeetoWebhooks = require('./NeetoWebhooks.js');
4
+ require('ramda');
5
+ require('react-router-dom');
6
+ require('../../main-B8V9tERH.js');
7
+ require('@bigbinary/neeto-commons-frontend/initializers');
8
+ require('@tanstack/react-query');
9
+ require('@bigbinary/neeto-commons-frontend/constants');
10
+ require('axios');
11
+ require('@bigbinary/neeto-commons-frontend/react-utils');
12
+ require('@babel/runtime/helpers/toConsumableArray');
13
+ require('@bigbinary/neeto-cist');
14
+ require('@bigbinary/neeto-commons-frontend/v2/constants');
15
+ require('@bigbinary/neeto-commons-frontend/v2/react-utils');
16
+ require('@bigbinary/neeto-commons-frontend/v2/utils');
17
+ require('@bigbinary/neeto-atoms');
18
+ require('@bigbinary/neeto-molecules/v2/Container');
19
+ require('@bigbinary/neeto-molecules/v2/Header');
20
+ require('@bigbinary/neeto-molecules/v2/TableWrapper');
21
+ require('react-i18next');
22
+ require('@babel/runtime/helpers/defineProperty');
23
+ require('@tanstack/react-query-devtools');
24
+ require('react/jsx-runtime');
25
+ require('@babel/runtime/helpers/asyncToGenerator');
26
+ require('@babel/runtime/regenerator');
27
+ require('@bigbinary/neeto-molecules/v2/DateFormat');
28
+ require('@babel/runtime/helpers/slicedToArray');
29
+ require('react');
30
+ require('i18next');
31
+ require('@bigbinary/neeto-atoms/formik');
32
+ require('formik');
33
+ require('lucide-react');
34
+ require('@bigbinary/neeto-molecules/v2/HelpPopover');
35
+ require('@bigbinary/neeto-molecules/v2/MoreDropdown');
36
+ require('yup');
37
+ require('@bigbinary/neeto-molecules/v2/SubHeader');
38
+
39
+
40
+
41
+ exports.NeetoWebhooks = v2_NeetoWebhooks;
42
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.js CHANGED
@@ -1,11 +1,14 @@
1
1
  export { default as NeetoWebhooks } from './NeetoWebhooks.js';
2
2
  import 'ramda';
3
3
  import 'react-router-dom';
4
+ import './main-CfvmjDDj.js';
4
5
  import '@bigbinary/neeto-commons-frontend/initializers';
5
- import '@babel/runtime/helpers/toConsumableArray';
6
- import '@bigbinary/neeto-cist';
6
+ import '@tanstack/react-query';
7
7
  import '@bigbinary/neeto-commons-frontend/constants';
8
+ import 'axios';
8
9
  import '@bigbinary/neeto-commons-frontend/react-utils';
10
+ import '@babel/runtime/helpers/toConsumableArray';
11
+ import '@bigbinary/neeto-cist';
9
12
  import '@bigbinary/neeto-commons-frontend/utils';
10
13
  import '@bigbinary/neeto-molecules/Container';
11
14
  import '@bigbinary/neeto-molecules/Header';
@@ -15,10 +18,8 @@ import '@bigbinary/neetoui/Spinner';
15
18
  import '@bigbinary/neetoui/Table';
16
19
  import 'react-i18next';
17
20
  import '@babel/runtime/helpers/defineProperty';
18
- import '@tanstack/react-query';
19
21
  import '@tanstack/react-query-devtools';
20
22
  import 'react/jsx-runtime';
21
- import 'axios';
22
23
  import '@babel/runtime/helpers/asyncToGenerator';
23
24
  import '@babel/runtime/regenerator';
24
25
  import '@bigbinary/neeto-molecules/DateFormat';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,279 @@
1
+ 'use strict';
2
+
3
+ var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
4
+ var reactQuery = require('@tanstack/react-query');
5
+ var constants = require('@bigbinary/neeto-commons-frontend/constants');
6
+ var axios = require('axios');
7
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
8
+
9
+ var HELP_LINK_URLS = {
10
+ webhooks: "https://help.".concat(initializers.globalProps.appName, ".com/articles/creating-a-webhook"),
11
+ secrets: "https://help.".concat(initializers.globalProps.appName, ".com/articles/securing-webhook-requests"),
12
+ deliveries: "https://help.".concat(initializers.globalProps.appName, ".com/articles/managing-webhook-deliveries")
13
+ };
14
+
15
+ var getDeliveriesPath = function getDeliveriesPath(webhooksPath) {
16
+ return "".concat(webhooksPath, "/:webhookId/deliveries");
17
+ };
18
+ var getDeliveryDetailsPath = function getDeliveryDetailsPath(deliveriesPath) {
19
+ return "".concat(deliveriesPath, "/:deliveryId/");
20
+ };
21
+
22
+ var queryClient = new reactQuery.QueryClient({
23
+ queryCache: new reactQuery.QueryCache(),
24
+ defaultOptions: {
25
+ queries: {
26
+ staleTime: constants.DEFAULT_STALE_TIME
27
+ }
28
+ }
29
+ });
30
+
31
+ var baseUrl$2 = "/neeto_webhooks";
32
+ var fetch$1 = function fetch(webhookId, params) {
33
+ return axios.get("".concat(baseUrl$2, "/webhooks/").concat(webhookId, "/deliveries"), {
34
+ params: params
35
+ });
36
+ };
37
+ var show$1 = function show(id, webhookId) {
38
+ return axios.get("".concat(baseUrl$2, "/webhooks/").concat(webhookId, "/deliveries/").concat(id));
39
+ };
40
+ var redeliver = function redeliver(delivery_id, webhookId) {
41
+ return axios.post("".concat(baseUrl$2, "/webhooks/").concat(webhookId, "/deliveries/").concat(delivery_id, "/redeliver"));
42
+ };
43
+ var deliveriesApi = {
44
+ fetch: fetch$1,
45
+ show: show$1,
46
+ redeliver: redeliver
47
+ };
48
+
49
+ var QUERY_KEYS = {
50
+ DELIVERY_LIST: "delivery-list",
51
+ DELIVERY_DETAILS: "delivery-details",
52
+ WEBHOOK_LIST: "webhook-list",
53
+ WEBHOOK_DETAILS: "webhook-details",
54
+ EVENTS_LIST: "events-list"
55
+ };
56
+ var DELIVERY_STALE_TIME = 3200000; // 1 hour
57
+ var WEBHOOK_STALE_TIME = 3200000; // 1 hour
58
+ var POST_REDELIVERY_ON_SUCCESS_TIMEOUT = 5000; // 5 seconds
59
+
60
+ var useFetchDeliveries = function useFetchDeliveries(webhookId, params) {
61
+ return reactQuery.useQuery({
62
+ queryKey: [QUERY_KEYS.DELIVERY_LIST, webhookId, params],
63
+ queryFn: function queryFn() {
64
+ return deliveriesApi.fetch(webhookId, params);
65
+ },
66
+ staleTime: DELIVERY_STALE_TIME
67
+ });
68
+ };
69
+ var useShowDelivery = function useShowDelivery(id, webhookId) {
70
+ return reactQuery.useQuery({
71
+ queryKey: [QUERY_KEYS.DELIVERY_DETAILS, id, webhookId],
72
+ queryFn: function queryFn() {
73
+ return deliveriesApi.show(id, webhookId);
74
+ },
75
+ staleTime: DELIVERY_STALE_TIME,
76
+ enabled: !!id
77
+ });
78
+ };
79
+ var useRedeliverWebhook = function useRedeliverWebhook(deliveryId, webhookSid) {
80
+ var queryClient = reactQuery.useQueryClient();
81
+ return reactQuery.useMutation({
82
+ mutationFn: function mutationFn() {
83
+ return deliveriesApi.redeliver(deliveryId, webhookSid);
84
+ },
85
+ onSuccess: function onSuccess() {
86
+ setTimeout(function () {
87
+ return queryClient.invalidateQueries({
88
+ queryKey: [QUERY_KEYS.DELIVERY_LIST]
89
+ });
90
+ }, POST_REDELIVERY_ON_SUCCESS_TIMEOUT);
91
+ }
92
+ });
93
+ };
94
+
95
+ var baseUrl$1 = "/neeto_webhooks/webhooks";
96
+ var fetch = function fetch(params) {
97
+ return axios.get(baseUrl$1, {
98
+ params: params
99
+ });
100
+ };
101
+ var create = function create(payload) {
102
+ return axios.post(baseUrl$1, {
103
+ webhook: payload
104
+ });
105
+ };
106
+ var show = function show(id) {
107
+ return axios.get("".concat(baseUrl$1, "/").concat(id));
108
+ };
109
+ var update = function update(id, payload) {
110
+ return axios.put("".concat(baseUrl$1, "/").concat(id), {
111
+ webhook: payload
112
+ });
113
+ };
114
+ var destroy = function destroy(id) {
115
+ return axios["delete"]("".concat(baseUrl$1, "/").concat(id));
116
+ };
117
+ var webhooksApi = {
118
+ fetch: fetch,
119
+ create: create,
120
+ show: show,
121
+ update: update,
122
+ destroy: destroy
123
+ };
124
+
125
+ var useFetchWebhooks = function useFetchWebhooks(params) {
126
+ return reactQuery.useQuery({
127
+ queryKey: [QUERY_KEYS.WEBHOOK_LIST, params],
128
+ queryFn: function queryFn() {
129
+ return webhooksApi.fetch(params);
130
+ },
131
+ staleTime: WEBHOOK_STALE_TIME
132
+ });
133
+ };
134
+ var useCreateWebhook = function useCreateWebhook(options) {
135
+ return reactUtils.useMutationWithInvalidation(webhooksApi.create, {
136
+ keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],
137
+ onSuccess: function onSuccess() {
138
+ var _options$onSuccess;
139
+ options === null || options === void 0 || (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 || _options$onSuccess.call(options);
140
+ }
141
+ });
142
+ };
143
+ var useShowWebhook = function useShowWebhook(id) {
144
+ return reactQuery.useQuery({
145
+ queryKey: [QUERY_KEYS.WEBHOOK_DETAILS, id],
146
+ queryFn: function queryFn() {
147
+ return webhooksApi.show(id);
148
+ },
149
+ enabled: !!id,
150
+ staleTime: WEBHOOK_STALE_TIME
151
+ });
152
+ };
153
+ var useUpdateWebhook = function useUpdateWebhook(id, options) {
154
+ return reactUtils.useMutationWithInvalidation(function (_ref) {
155
+ var id = _ref.id,
156
+ payload = _ref.payload;
157
+ return webhooksApi.update(id, payload);
158
+ }, {
159
+ keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST], [QUERY_KEYS.WEBHOOK_DETAILS, id], [QUERY_KEYS.DELIVERY_LIST, id]],
160
+ onSuccess: function onSuccess() {
161
+ var _options$onSuccess2;
162
+ options === null || options === void 0 || (_options$onSuccess2 = options.onSuccess) === null || _options$onSuccess2 === void 0 || _options$onSuccess2.call(options);
163
+ },
164
+ onError: function onError(error) {
165
+ var _options$onError;
166
+ options === null || options === void 0 || (_options$onError = options.onError) === null || _options$onError === void 0 || _options$onError.call(options, error);
167
+ }
168
+ });
169
+ };
170
+ var useDestroyWebhook = function useDestroyWebhook(options) {
171
+ return reactUtils.useMutationWithInvalidation(webhooksApi.destroy, {
172
+ keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],
173
+ onSuccess: function onSuccess() {
174
+ var _options$onSuccess3;
175
+ options === null || options === void 0 || (_options$onSuccess3 = options.onSuccess) === null || _options$onSuccess3 === void 0 || _options$onSuccess3.call(options);
176
+ }
177
+ });
178
+ };
179
+
180
+ var baseUrl = "/neeto_webhooks/events/all";
181
+ var all = function all() {
182
+ return axios.get(baseUrl);
183
+ };
184
+ var eventsApi = {
185
+ all: all
186
+ };
187
+
188
+ var useFetchEvents = function useFetchEvents() {
189
+ return reactQuery.useQuery({
190
+ queryKey: [QUERY_KEYS.EVENTS_LIST],
191
+ queryFn: eventsApi.all,
192
+ staleTime: WEBHOOK_STALE_TIME
193
+ });
194
+ };
195
+
196
+ // Unique ID creation requires a high quality random # generator. In the browser we therefore
197
+ // require the crypto API and do not support built-in fallback to lower quality random number
198
+ // generators (like Math.random()).
199
+ var getRandomValues;
200
+ var rnds8 = new Uint8Array(16);
201
+ function rng() {
202
+ // lazy load so that environments that need to polyfill have a chance to do so
203
+ if (!getRandomValues) {
204
+ // getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
205
+ // find the complete implementation of crypto (msCrypto) on IE11.
206
+ getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
207
+
208
+ if (!getRandomValues) {
209
+ throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
210
+ }
211
+ }
212
+
213
+ return getRandomValues(rnds8);
214
+ }
215
+
216
+ var REGEX = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
217
+
218
+ function validate(uuid) {
219
+ return typeof uuid === 'string' && REGEX.test(uuid);
220
+ }
221
+
222
+ /**
223
+ * Convert array of 16 byte values to UUID string format of the form:
224
+ * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
225
+ */
226
+
227
+ var byteToHex = [];
228
+
229
+ for (var i = 0; i < 256; ++i) {
230
+ byteToHex.push((i + 0x100).toString(16).substr(1));
231
+ }
232
+
233
+ function stringify(arr) {
234
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
235
+ // Note: Be careful editing this code! It's been tuned for performance
236
+ // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
237
+ var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
238
+ // of the following:
239
+ // - One or more input array values don't map to a hex octet (leading to
240
+ // "undefined" in the uuid)
241
+ // - Invalid input values for the RFC `version` or `variant` fields
242
+
243
+ if (!validate(uuid)) {
244
+ throw TypeError('Stringified UUID is invalid');
245
+ }
246
+
247
+ return uuid;
248
+ }
249
+
250
+ function v4(options, buf, offset) {
251
+ options = options || {};
252
+ var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
253
+
254
+ rnds[6] = rnds[6] & 0x0f | 0x40;
255
+ rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
256
+
257
+ return stringify(rnds);
258
+ }
259
+
260
+ var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=true===r.prepend?"prepend":"append",d=true===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
261
+
262
+ var css = ".neeto-molecules-header .neeto-molecules-header__breadcrumbs-wrap{flex-wrap:wrap}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9tYWluLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrRUFDRSxjQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLm5lZXRvLW1vbGVjdWxlcy1oZWFkZXIgLm5lZXRvLW1vbGVjdWxlcy1oZWFkZXJfX2JyZWFkY3J1bWJzLXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4iXX0= */";
263
+ n(css,{});
264
+
265
+ exports.HELP_LINK_URLS = HELP_LINK_URLS;
266
+ exports.getDeliveriesPath = getDeliveriesPath;
267
+ exports.getDeliveryDetailsPath = getDeliveryDetailsPath;
268
+ exports.queryClient = queryClient;
269
+ exports.useCreateWebhook = useCreateWebhook;
270
+ exports.useDestroyWebhook = useDestroyWebhook;
271
+ exports.useFetchDeliveries = useFetchDeliveries;
272
+ exports.useFetchEvents = useFetchEvents;
273
+ exports.useFetchWebhooks = useFetchWebhooks;
274
+ exports.useRedeliverWebhook = useRedeliverWebhook;
275
+ exports.useShowDelivery = useShowDelivery;
276
+ exports.useShowWebhook = useShowWebhook;
277
+ exports.useUpdateWebhook = useUpdateWebhook;
278
+ exports.v4 = v4;
279
+ //# sourceMappingURL=main-B8V9tERH.js.map