@bigbinary/neeto-webhooks-frontend 3.0.12 → 3.0.14

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":"main-CcNqvzWi.js","sources":["../app/javascript/src/constants/urls.js","../app/javascript/src/utils/paths.js","../app/javascript/src/constants/messages.js","../app/javascript/src/utils/validateEntityProps.js","../app/javascript/src/utils/queryClient.js","../app/javascript/src/apis/deliveries.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useDeliveriesApi.js","../app/javascript/src/apis/webhooks.js","../app/javascript/src/hooks/reactQuery/useWebhooksApi.js","../app/javascript/src/apis/events.js","../app/javascript/src/hooks/reactQuery/useEventsApi.js","../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/regex.js","../node_modules/uuid/dist/esm-browser/validate.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/v4.js","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const HELP_LINK_URLS = {\n webhooks: `https://help.${globalProps.appName}.com/articles/creating-a-webhook`,\n secrets: `https://help.${globalProps.appName}.com/articles/securing-webhook-requests`,\n deliveries: `https://help.${globalProps.appName}.com/articles/managing-webhook-deliveries`,\n};\n","export const getConfigurePath = path => path.split(\"/webhooks\")?.[0];\n\nexport const getDeliveriesPath = webhooksPath =>\n `${webhooksPath}/:webhookId/deliveries`;\n\nexport const getDeliveryDetailsPath = deliveriesPath =>\n `${deliveriesPath}/:deliveryId/`;\n","// Shown to whoever is integrating this nano, not to an end user. Without these\n// the host saw Rails' own words — \"param is missing or the value is empty or\n// invalid: entity_id\" — which name neither this component nor the prop that\n// was forgotten, and give an integrator no route to the fix.\nconst USAGE_EXAMPLE =\n ' <NeetoWebhooks entityType=\"Organization\" entityId={organizationId} />';\n\nexport const MISSING_ENTITY_ID_MESSAGE =\n `[NeetoWebhooks] The \\`entityId\\` prop is required and was not provided, so ` +\n `the webhooks list cannot be loaded.\\n\\n` +\n `Pass the id of the record that owns these webhooks — usually the current ` +\n `organization:\\n\\n${\n USAGE_EXAMPLE\n }\\n\\nA common cause is reading the id from a global props object that does ` +\n \"not carry one. Log the value before passing it.\";\n\n// A missing `entityType` fails later and quieter than a missing `entityId`:\n// the list renders, because `index` filters on `entity_id` alone, and it is\n// only on saving the first webhook that `create` cannot resolve the entity.\n// Saying so here is the difference between noticing at integration time and\n// noticing from a bug report.\nexport const MISSING_ENTITY_TYPE_MESSAGE =\n `[NeetoWebhooks] The \\`entityType\\` prop is required and was not provided. ` +\n `The existing webhooks will still list, but creating one will fail: the ` +\n `server needs it to resolve which record the webhook belongs to.\\n\\n` +\n `Pass the class name of that record, matching one of ` +\n `\\`NeetoWebhooksEngine.valid_entity_types\\`:\\n\\n${USAGE_EXAMPLE}`;\n","import {\n MISSING_ENTITY_ID_MESSAGE,\n MISSING_ENTITY_TYPE_MESSAGE,\n} from \"src/constants/messages\";\n\n// Not wrapped in a `process.env.NODE_ENV` check: rollup replaces that constant\n// with \"production\" when this package is built (rollup.config.js), so the\n// guard would fold to `if (false)` and strip the message from the published\n// bundle — every host would get the silence this exists to end.\n//\n// Runs whenever either prop changes rather than only on mount. A prop that\n// goes missing again — a store rehydrating, a route remounting under a\n// different entity — is worth saying again.\nconst validateEntityProps = ({ entityId, entityType }) => {\n /* eslint-disable no-console */\n if (!entityId) console.error(MISSING_ENTITY_ID_MESSAGE);\n\n if (!entityType) console.error(MISSING_ENTITY_TYPE_MESSAGE);\n /* eslint-enable no-console */\n};\n\nexport default validateEntityProps;\n","import { QueryCache, QueryClient } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: { queries: { staleTime: DEFAULT_STALE_TIME } },\n});\n\nexport default queryClient;\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks\";\n\nconst fetch = (webhookId, params) =>\n axios.get(`${baseUrl}/webhooks/${webhookId}/deliveries`, { params });\n\nconst show = (id, webhookId) =>\n axios.get(`${baseUrl}/webhooks/${webhookId}/deliveries/${id}`);\n\nconst redeliver = (delivery_id, webhookId) =>\n axios.post(\n `${baseUrl}/webhooks/${webhookId}/deliveries/${delivery_id}/redeliver`\n );\n\nconst deliveriesApi = { fetch, show, redeliver };\n\nexport default deliveriesApi;\n","export const QUERY_KEYS = {\n DELIVERY_LIST: \"delivery-list\",\n DELIVERY_DETAILS: \"delivery-details\",\n WEBHOOK_LIST: \"webhook-list\",\n WEBHOOK_DETAILS: \"webhook-details\",\n EVENTS_LIST: \"events-list\",\n};\n\nexport const DELIVERY_STALE_TIME = 3_200_000; // 1 hour\nexport const WEBHOOK_STALE_TIME = 3_200_000; // 1 hour\nexport const POST_REDELIVERY_ON_SUCCESS_TIMEOUT = 5000; // 5 seconds\n","import { useQuery, useMutation, useQueryClient } from \"@tanstack/react-query\";\n\nimport deliveriesApi from \"apis/deliveries\";\nimport {\n QUERY_KEYS,\n DELIVERY_STALE_TIME,\n POST_REDELIVERY_ON_SUCCESS_TIMEOUT,\n} from \"src/constants/query\";\n\nexport const useFetchDeliveries = (webhookId, params) =>\n useQuery({\n queryKey: [QUERY_KEYS.DELIVERY_LIST, webhookId, params],\n queryFn: () => deliveriesApi.fetch(webhookId, params),\n staleTime: DELIVERY_STALE_TIME,\n });\n\nexport const useShowDelivery = (id, webhookId) =>\n useQuery({\n queryKey: [QUERY_KEYS.DELIVERY_DETAILS, id, webhookId],\n queryFn: () => deliveriesApi.show(id, webhookId),\n staleTime: DELIVERY_STALE_TIME,\n enabled: !!id,\n });\n\nexport const useRedeliverWebhook = (deliveryId, webhookSid) => {\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationFn: () => deliveriesApi.redeliver(deliveryId, webhookSid),\n onSuccess: () => {\n setTimeout(\n () =>\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.DELIVERY_LIST],\n }),\n POST_REDELIVERY_ON_SUCCESS_TIMEOUT\n );\n },\n });\n};\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks/webhooks\";\n\nconst fetch = params => axios.get(baseUrl, { params });\n\nconst create = payload => axios.post(baseUrl, { webhook: payload });\n\nconst show = id => axios.get(`${baseUrl}/${id}`);\n\nconst update = (id, payload) =>\n axios.put(`${baseUrl}/${id}`, { webhook: payload });\n\nconst destroy = id => axios.delete(`${baseUrl}/${id}`);\n\nconst webhooksApi = { fetch, create, show, update, destroy };\n\nexport default webhooksApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport webhooksApi from \"apis/webhooks\";\nimport { QUERY_KEYS, WEBHOOK_STALE_TIME } from \"src/constants/query\";\n\nexport const useFetchWebhooks = params =>\n useQuery({\n queryKey: [QUERY_KEYS.WEBHOOK_LIST, params],\n queryFn: () => webhooksApi.fetch(params),\n // The server requires `entity_id`. Without this the request went out\n // regardless, axios dropped the undefined param, and the host got\n // `ActionController::ParameterMissing` in a toast. `useShowWebhook` below\n // has always guarded its id this way; the list query never did.\n enabled: !!params?.entityId,\n staleTime: WEBHOOK_STALE_TIME,\n });\n\nexport const useCreateWebhook = options =>\n useMutationWithInvalidation(webhooksApi.create, {\n keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n });\n\nexport const useShowWebhook = id =>\n useQuery({\n queryKey: [QUERY_KEYS.WEBHOOK_DETAILS, id],\n queryFn: () => webhooksApi.show(id),\n enabled: !!id,\n staleTime: WEBHOOK_STALE_TIME,\n });\n\nexport const useUpdateWebhook = (id, options) =>\n useMutationWithInvalidation(\n ({ id, payload }) => webhooksApi.update(id, payload),\n {\n keysToInvalidate: [\n [QUERY_KEYS.WEBHOOK_LIST],\n [QUERY_KEYS.WEBHOOK_DETAILS, id],\n [QUERY_KEYS.DELIVERY_LIST, id],\n ],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n onError: error => {\n options?.onError?.(error);\n },\n }\n );\n\nexport const useDestroyWebhook = options =>\n useMutationWithInvalidation(webhooksApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n });\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks/events/all\";\n\nconst all = () => axios.get(baseUrl);\n\nconst eventsApi = { all };\n\nexport default eventsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport eventsApi from \"apis/events\";\nimport { QUERY_KEYS, WEBHOOK_STALE_TIME } from \"src/constants/query\";\n\nexport const useFetchEvents = () =>\n useQuery({\n queryKey: [QUERY_KEYS.EVENTS_LIST],\n queryFn: eventsApi.all,\n staleTime: WEBHOOK_STALE_TIME,\n });\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[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;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n 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\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n"],"names":["HELP_LINK_URLS","webhooks","concat","globalProps","appName","secrets","deliveries","getDeliveriesPath","webhooksPath","getDeliveryDetailsPath","deliveriesPath","USAGE_EXAMPLE","MISSING_ENTITY_ID_MESSAGE","MISSING_ENTITY_TYPE_MESSAGE","validateEntityProps","_ref","entityId","entityType","console","error","queryClient","QueryClient","queryCache","QueryCache","defaultOptions","queries","staleTime","DEFAULT_STALE_TIME","baseUrl","fetch","webhookId","params","axios","get","show","id","redeliver","delivery_id","post","deliveriesApi","QUERY_KEYS","DELIVERY_LIST","DELIVERY_DETAILS","WEBHOOK_LIST","WEBHOOK_DETAILS","EVENTS_LIST","DELIVERY_STALE_TIME","WEBHOOK_STALE_TIME","POST_REDELIVERY_ON_SUCCESS_TIMEOUT","useFetchDeliveries","useQuery","queryKey","queryFn","useShowDelivery","enabled","useRedeliverWebhook","deliveryId","webhookSid","useQueryClient","useMutation","mutationFn","onSuccess","setTimeout","invalidateQueries","create","payload","webhook","update","put","destroy","webhooksApi","useFetchWebhooks","useCreateWebhook","options","useMutationWithInvalidation","keysToInvalidate","_options$onSuccess","call","useShowWebhook","useUpdateWebhook","_options$onSuccess2","onError","_options$onError","useDestroyWebhook","_options$onSuccess3","all","eventsApi","useFetchEvents"],"mappings":"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","x_google_ignoreList":[12,13,14,15,16,17]}
@@ -19,6 +19,37 @@ var getDeliveryDetailsPath = function getDeliveryDetailsPath(deliveriesPath) {
19
19
  return "".concat(deliveriesPath, "/:deliveryId/");
20
20
  };
21
21
 
22
+ // Shown to whoever is integrating this nano, not to an end user. Without these
23
+ // the host saw Rails' own words — "param is missing or the value is empty or
24
+ // invalid: entity_id" — which name neither this component nor the prop that
25
+ // was forgotten, and give an integrator no route to the fix.
26
+ var USAGE_EXAMPLE = ' <NeetoWebhooks entityType="Organization" entityId={organizationId} />';
27
+ var MISSING_ENTITY_ID_MESSAGE = "[NeetoWebhooks] The `entityId` prop is required and was not provided, so " + "the webhooks list cannot be loaded.\n\n" + "Pass the id of the record that owns these webhooks \u2014 usually the current " + "organization:\n\n".concat(USAGE_EXAMPLE, "\n\nA common cause is reading the id from a global props object that does ") + "not carry one. Log the value before passing it.";
28
+
29
+ // A missing `entityType` fails later and quieter than a missing `entityId`:
30
+ // the list renders, because `index` filters on `entity_id` alone, and it is
31
+ // only on saving the first webhook that `create` cannot resolve the entity.
32
+ // Saying so here is the difference between noticing at integration time and
33
+ // noticing from a bug report.
34
+ var MISSING_ENTITY_TYPE_MESSAGE = "[NeetoWebhooks] The `entityType` prop is required and was not provided. " + "The existing webhooks will still list, but creating one will fail: the " + "server needs it to resolve which record the webhook belongs to.\n\n" + "Pass the class name of that record, matching one of " + "`NeetoWebhooksEngine.valid_entity_types`:\n\n".concat(USAGE_EXAMPLE);
35
+
36
+ // Not wrapped in a `"production"` check: rollup replaces that constant
37
+ // with "production" when this package is built (rollup.config.js), so the
38
+ // guard would fold to `if (false)` and strip the message from the published
39
+ // bundle — every host would get the silence this exists to end.
40
+ //
41
+ // Runs whenever either prop changes rather than only on mount. A prop that
42
+ // goes missing again — a store rehydrating, a route remounting under a
43
+ // different entity — is worth saying again.
44
+ var validateEntityProps = function validateEntityProps(_ref) {
45
+ var entityId = _ref.entityId,
46
+ entityType = _ref.entityType;
47
+ /* eslint-disable no-console */
48
+ if (!entityId) console.error(MISSING_ENTITY_ID_MESSAGE);
49
+ if (!entityType) console.error(MISSING_ENTITY_TYPE_MESSAGE);
50
+ /* eslint-enable no-console */
51
+ };
52
+
22
53
  var queryClient = new reactQuery.QueryClient({
23
54
  queryCache: new reactQuery.QueryCache(),
24
55
  defaultOptions: {
@@ -128,6 +159,11 @@ var useFetchWebhooks = function useFetchWebhooks(params) {
128
159
  queryFn: function queryFn() {
129
160
  return webhooksApi.fetch(params);
130
161
  },
162
+ // The server requires `entity_id`. Without this the request went out
163
+ // regardless, axios dropped the undefined param, and the host got
164
+ // `ActionController::ParameterMissing` in a toast. `useShowWebhook` below
165
+ // has always guarded its id this way; the list query never did.
166
+ enabled: !!(params !== null && params !== void 0 && params.entityId),
131
167
  staleTime: WEBHOOK_STALE_TIME
132
168
  });
133
169
  };
@@ -276,4 +312,5 @@ exports.useShowDelivery = useShowDelivery;
276
312
  exports.useShowWebhook = useShowWebhook;
277
313
  exports.useUpdateWebhook = useUpdateWebhook;
278
314
  exports.v4 = v4;
279
- //# sourceMappingURL=main-B8V9tERH.js.map
315
+ exports.validateEntityProps = validateEntityProps;
316
+ //# sourceMappingURL=main-CuEMguMt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-CuEMguMt.js","sources":["../app/javascript/src/constants/urls.js","../app/javascript/src/utils/paths.js","../app/javascript/src/constants/messages.js","../app/javascript/src/utils/validateEntityProps.js","../app/javascript/src/utils/queryClient.js","../app/javascript/src/apis/deliveries.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useDeliveriesApi.js","../app/javascript/src/apis/webhooks.js","../app/javascript/src/hooks/reactQuery/useWebhooksApi.js","../app/javascript/src/apis/events.js","../app/javascript/src/hooks/reactQuery/useEventsApi.js","../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/regex.js","../node_modules/uuid/dist/esm-browser/validate.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/v4.js","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const HELP_LINK_URLS = {\n webhooks: `https://help.${globalProps.appName}.com/articles/creating-a-webhook`,\n secrets: `https://help.${globalProps.appName}.com/articles/securing-webhook-requests`,\n deliveries: `https://help.${globalProps.appName}.com/articles/managing-webhook-deliveries`,\n};\n","export const getConfigurePath = path => path.split(\"/webhooks\")?.[0];\n\nexport const getDeliveriesPath = webhooksPath =>\n `${webhooksPath}/:webhookId/deliveries`;\n\nexport const getDeliveryDetailsPath = deliveriesPath =>\n `${deliveriesPath}/:deliveryId/`;\n","// Shown to whoever is integrating this nano, not to an end user. Without these\n// the host saw Rails' own words — \"param is missing or the value is empty or\n// invalid: entity_id\" — which name neither this component nor the prop that\n// was forgotten, and give an integrator no route to the fix.\nconst USAGE_EXAMPLE =\n ' <NeetoWebhooks entityType=\"Organization\" entityId={organizationId} />';\n\nexport const MISSING_ENTITY_ID_MESSAGE =\n `[NeetoWebhooks] The \\`entityId\\` prop is required and was not provided, so ` +\n `the webhooks list cannot be loaded.\\n\\n` +\n `Pass the id of the record that owns these webhooks — usually the current ` +\n `organization:\\n\\n${\n USAGE_EXAMPLE\n }\\n\\nA common cause is reading the id from a global props object that does ` +\n \"not carry one. Log the value before passing it.\";\n\n// A missing `entityType` fails later and quieter than a missing `entityId`:\n// the list renders, because `index` filters on `entity_id` alone, and it is\n// only on saving the first webhook that `create` cannot resolve the entity.\n// Saying so here is the difference between noticing at integration time and\n// noticing from a bug report.\nexport const MISSING_ENTITY_TYPE_MESSAGE =\n `[NeetoWebhooks] The \\`entityType\\` prop is required and was not provided. ` +\n `The existing webhooks will still list, but creating one will fail: the ` +\n `server needs it to resolve which record the webhook belongs to.\\n\\n` +\n `Pass the class name of that record, matching one of ` +\n `\\`NeetoWebhooksEngine.valid_entity_types\\`:\\n\\n${USAGE_EXAMPLE}`;\n","import {\n MISSING_ENTITY_ID_MESSAGE,\n MISSING_ENTITY_TYPE_MESSAGE,\n} from \"src/constants/messages\";\n\n// Not wrapped in a `process.env.NODE_ENV` check: rollup replaces that constant\n// with \"production\" when this package is built (rollup.config.js), so the\n// guard would fold to `if (false)` and strip the message from the published\n// bundle — every host would get the silence this exists to end.\n//\n// Runs whenever either prop changes rather than only on mount. A prop that\n// goes missing again — a store rehydrating, a route remounting under a\n// different entity — is worth saying again.\nconst validateEntityProps = ({ entityId, entityType }) => {\n /* eslint-disable no-console */\n if (!entityId) console.error(MISSING_ENTITY_ID_MESSAGE);\n\n if (!entityType) console.error(MISSING_ENTITY_TYPE_MESSAGE);\n /* eslint-enable no-console */\n};\n\nexport default validateEntityProps;\n","import { QueryCache, QueryClient } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nconst queryClient = new QueryClient({\n queryCache: new QueryCache(),\n defaultOptions: { queries: { staleTime: DEFAULT_STALE_TIME } },\n});\n\nexport default queryClient;\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks\";\n\nconst fetch = (webhookId, params) =>\n axios.get(`${baseUrl}/webhooks/${webhookId}/deliveries`, { params });\n\nconst show = (id, webhookId) =>\n axios.get(`${baseUrl}/webhooks/${webhookId}/deliveries/${id}`);\n\nconst redeliver = (delivery_id, webhookId) =>\n axios.post(\n `${baseUrl}/webhooks/${webhookId}/deliveries/${delivery_id}/redeliver`\n );\n\nconst deliveriesApi = { fetch, show, redeliver };\n\nexport default deliveriesApi;\n","export const QUERY_KEYS = {\n DELIVERY_LIST: \"delivery-list\",\n DELIVERY_DETAILS: \"delivery-details\",\n WEBHOOK_LIST: \"webhook-list\",\n WEBHOOK_DETAILS: \"webhook-details\",\n EVENTS_LIST: \"events-list\",\n};\n\nexport const DELIVERY_STALE_TIME = 3_200_000; // 1 hour\nexport const WEBHOOK_STALE_TIME = 3_200_000; // 1 hour\nexport const POST_REDELIVERY_ON_SUCCESS_TIMEOUT = 5000; // 5 seconds\n","import { useQuery, useMutation, useQueryClient } from \"@tanstack/react-query\";\n\nimport deliveriesApi from \"apis/deliveries\";\nimport {\n QUERY_KEYS,\n DELIVERY_STALE_TIME,\n POST_REDELIVERY_ON_SUCCESS_TIMEOUT,\n} from \"src/constants/query\";\n\nexport const useFetchDeliveries = (webhookId, params) =>\n useQuery({\n queryKey: [QUERY_KEYS.DELIVERY_LIST, webhookId, params],\n queryFn: () => deliveriesApi.fetch(webhookId, params),\n staleTime: DELIVERY_STALE_TIME,\n });\n\nexport const useShowDelivery = (id, webhookId) =>\n useQuery({\n queryKey: [QUERY_KEYS.DELIVERY_DETAILS, id, webhookId],\n queryFn: () => deliveriesApi.show(id, webhookId),\n staleTime: DELIVERY_STALE_TIME,\n enabled: !!id,\n });\n\nexport const useRedeliverWebhook = (deliveryId, webhookSid) => {\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationFn: () => deliveriesApi.redeliver(deliveryId, webhookSid),\n onSuccess: () => {\n setTimeout(\n () =>\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.DELIVERY_LIST],\n }),\n POST_REDELIVERY_ON_SUCCESS_TIMEOUT\n );\n },\n });\n};\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks/webhooks\";\n\nconst fetch = params => axios.get(baseUrl, { params });\n\nconst create = payload => axios.post(baseUrl, { webhook: payload });\n\nconst show = id => axios.get(`${baseUrl}/${id}`);\n\nconst update = (id, payload) =>\n axios.put(`${baseUrl}/${id}`, { webhook: payload });\n\nconst destroy = id => axios.delete(`${baseUrl}/${id}`);\n\nconst webhooksApi = { fetch, create, show, update, destroy };\n\nexport default webhooksApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport webhooksApi from \"apis/webhooks\";\nimport { QUERY_KEYS, WEBHOOK_STALE_TIME } from \"src/constants/query\";\n\nexport const useFetchWebhooks = params =>\n useQuery({\n queryKey: [QUERY_KEYS.WEBHOOK_LIST, params],\n queryFn: () => webhooksApi.fetch(params),\n // The server requires `entity_id`. Without this the request went out\n // regardless, axios dropped the undefined param, and the host got\n // `ActionController::ParameterMissing` in a toast. `useShowWebhook` below\n // has always guarded its id this way; the list query never did.\n enabled: !!params?.entityId,\n staleTime: WEBHOOK_STALE_TIME,\n });\n\nexport const useCreateWebhook = options =>\n useMutationWithInvalidation(webhooksApi.create, {\n keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n });\n\nexport const useShowWebhook = id =>\n useQuery({\n queryKey: [QUERY_KEYS.WEBHOOK_DETAILS, id],\n queryFn: () => webhooksApi.show(id),\n enabled: !!id,\n staleTime: WEBHOOK_STALE_TIME,\n });\n\nexport const useUpdateWebhook = (id, options) =>\n useMutationWithInvalidation(\n ({ id, payload }) => webhooksApi.update(id, payload),\n {\n keysToInvalidate: [\n [QUERY_KEYS.WEBHOOK_LIST],\n [QUERY_KEYS.WEBHOOK_DETAILS, id],\n [QUERY_KEYS.DELIVERY_LIST, id],\n ],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n onError: error => {\n options?.onError?.(error);\n },\n }\n );\n\nexport const useDestroyWebhook = options =>\n useMutationWithInvalidation(webhooksApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],\n onSuccess: () => {\n options?.onSuccess?.();\n },\n });\n","import axios from \"axios\";\n\nconst baseUrl = \"/neeto_webhooks/events/all\";\n\nconst all = () => axios.get(baseUrl);\n\nconst eventsApi = { all };\n\nexport default eventsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport eventsApi from \"apis/events\";\nimport { QUERY_KEYS, WEBHOOK_STALE_TIME } from \"src/constants/query\";\n\nexport const useFetchEvents = () =>\n useQuery({\n queryKey: [QUERY_KEYS.EVENTS_LIST],\n queryFn: eventsApi.all,\n staleTime: WEBHOOK_STALE_TIME,\n });\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[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;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n 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\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n"],"names":["HELP_LINK_URLS","webhooks","concat","globalProps","appName","secrets","deliveries","getDeliveriesPath","webhooksPath","getDeliveryDetailsPath","deliveriesPath","USAGE_EXAMPLE","MISSING_ENTITY_ID_MESSAGE","MISSING_ENTITY_TYPE_MESSAGE","validateEntityProps","_ref","entityId","entityType","console","error","queryClient","QueryClient","queryCache","QueryCache","defaultOptions","queries","staleTime","DEFAULT_STALE_TIME","baseUrl","fetch","webhookId","params","axios","get","show","id","redeliver","delivery_id","post","deliveriesApi","QUERY_KEYS","DELIVERY_LIST","DELIVERY_DETAILS","WEBHOOK_LIST","WEBHOOK_DETAILS","EVENTS_LIST","DELIVERY_STALE_TIME","WEBHOOK_STALE_TIME","POST_REDELIVERY_ON_SUCCESS_TIMEOUT","useFetchDeliveries","useQuery","queryKey","queryFn","useShowDelivery","enabled","useRedeliverWebhook","deliveryId","webhookSid","useQueryClient","useMutation","mutationFn","onSuccess","setTimeout","invalidateQueries","create","payload","webhook","update","put","destroy","webhooksApi","useFetchWebhooks","useCreateWebhook","options","useMutationWithInvalidation","keysToInvalidate","_options$onSuccess","call","useShowWebhook","useUpdateWebhook","_options$onSuccess2","onError","_options$onError","useDestroyWebhook","_options$onSuccess3","all","eventsApi","useFetchEvents"],"mappings":"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","x_google_ignoreList":[12,13,14,15,16,17]}