@bigbinary/neeto-webhooks-frontend 2.2.4 → 2.2.6

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/README.md CHANGED
@@ -47,7 +47,7 @@ The engine is used to manage webhooks across neeto products.
47
47
  4. Run the following command to copy the migrations from the engine to the host
48
48
  application:
49
49
  ```zsh
50
- bundle exec rails neeto_webhooks_engine:install:migrations
50
+ rails g neeto_webhooks_engine:install
51
51
  ```
52
52
  5. Add the migrations to the database:
53
53
  ```zsh
@@ -74,6 +74,9 @@ The engine is used to manage webhooks across neeto products.
74
74
  cancel: "Booking cancellation"
75
75
  ```
76
76
 
77
+ 8. Add the permission `neeto_webhooks_engine.manage_webhooks` to your
78
+ `permissions.yml` file.
79
+
77
80
  ### Usage
78
81
 
79
82
  You can learn more about the setup and usage here:
@@ -3,9 +3,9 @@ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
3
  import { isPresent, removeBy, isNotEmpty, removeById, findBy } from '@bigbinary/neeto-cist';
4
4
  import { DEFAULT_STALE_TIME, SINGULAR, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_INDEX, PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
5
5
  import { useQueryParams, useMutationWithInvalidation, withT } from '@bigbinary/neeto-commons-frontend/react-utils';
6
+ import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
6
7
  import Container from '@bigbinary/neeto-molecules/Container';
7
8
  import Header$2 from '@bigbinary/neeto-molecules/Header';
8
- import HelpPopover from '@bigbinary/neeto-molecules/HelpPopover';
9
9
  import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
10
10
  import NoData from '@bigbinary/neetoui/NoData';
11
11
  import Spinner from '@bigbinary/neetoui/Spinner';
@@ -28,10 +28,10 @@ import Typography from '@bigbinary/neetoui/Typography';
28
28
  import Tab from '@bigbinary/neetoui/Tab';
29
29
  import Tag from '@bigbinary/neetoui/Tag';
30
30
  import { t as t$1 } from 'i18next';
31
- import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
32
31
  import { prop, pluck, assoc } from 'ramda';
33
32
  import Alert from '@bigbinary/neetoui/Alert';
34
33
  import Plus from '@bigbinary/neeto-icons/Plus';
34
+ import HelpPopover from '@bigbinary/neeto-molecules/HelpPopover';
35
35
  import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
36
36
  import Input from '@bigbinary/neetoui/formik/Input';
37
37
  import Form from '@bigbinary/neetoui/formik/Form';
@@ -58,13 +58,13 @@ var queryClient = new QueryClient({
58
58
  }
59
59
  });
60
60
 
61
- function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
62
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
61
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
62
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
63
63
  var withReactQuery = function withReactQuery(Component) {
64
64
  var QueryWrapper = function QueryWrapper(props) {
65
65
  return /*#__PURE__*/jsxs(QueryClientProvider, {
66
66
  client: queryClient,
67
- children: [/*#__PURE__*/jsx(Component, _objectSpread$2({}, props)), /*#__PURE__*/jsx(ReactQueryDevtools, {
67
+ children: [/*#__PURE__*/jsx(Component, _objectSpread$3({}, props)), /*#__PURE__*/jsx(ReactQueryDevtools, {
68
68
  initialIsOpen: false,
69
69
  position: "bottom"
70
70
  })]
@@ -359,7 +359,8 @@ var Details = function Details(_ref) {
359
359
  };
360
360
 
361
361
  var buildColumns$1 = function buildColumns(_ref) {
362
- var deliveryDetailsPath = _ref.deliveryDetailsPath;
362
+ var deliveryDetailsPath = _ref.deliveryDetailsPath,
363
+ page = _ref.page;
363
364
  return [{
364
365
  title: t$1("neetoWebhooks.delivery.deliveryId"),
365
366
  key: "identifier",
@@ -371,7 +372,8 @@ var buildColumns$1 = function buildColumns(_ref) {
371
372
  children: [/*#__PURE__*/jsx(Button, {
372
373
  style: "link",
373
374
  to: buildUrl(deliveryDetailsPath, {
374
- deliveryId: delivery.sid
375
+ deliveryId: delivery.sid,
376
+ page: page
375
377
  }),
376
378
  weight: "semibold",
377
379
  children: delivery.identifier
@@ -438,6 +440,7 @@ var Deliveries = function Deliveries(_ref) {
438
440
  var _useQueryParams = useQueryParams(),
439
441
  _useQueryParams$page = _useQueryParams.page,
440
442
  page = _useQueryParams$page === void 0 ? DEFAULT_PAGE_INDEX : _useQueryParams$page;
443
+ var deliveriesPath = getDeliveriesPath(webhooksUrl);
441
444
  var deliveryDetailsPath = getDeliveryDetailsPath(deliveriesUrl);
442
445
  var _useFetchDeliveries = useFetchDeliveries(webhookId, {
443
446
  page: page,
@@ -471,23 +474,22 @@ var Deliveries = function Deliveries(_ref) {
471
474
  className: "w-full",
472
475
  children: [/*#__PURE__*/jsx(Header$2, {
473
476
  breadcrumbs: breadcrumbs,
474
- title: /*#__PURE__*/jsxs("div", {
475
- className: "flex items-center gap-x-2",
476
- children: [t("neetoWebhooks.delivery.title"), /*#__PURE__*/jsx(HelpPopover, {
477
- description: t("neetoWebhooks.delivery.helpDescription"),
478
- helpLinkProps: {
479
- href: HELP_LINK_URLS.deliveries
480
- },
481
- title: t("neetoWebhooks.delivery.title")
482
- })]
483
- })
477
+ title: t("neetoWebhooks.delivery.title"),
478
+ titleHelpPopoverProps: {
479
+ title: t("neetoWebhooks.delivery.title"),
480
+ description: t("neetoWebhooks.delivery.helpDescription"),
481
+ helpLinkProps: {
482
+ href: HELP_LINK_URLS.deliveries
483
+ }
484
+ }
484
485
  }), isNotEmpty(deliveries) ? /*#__PURE__*/jsx(TableWrapper, {
485
486
  hasPagination: totalCount > DEFAULT_PAGE_SIZE,
486
487
  children: /*#__PURE__*/jsx(Table, {
487
488
  totalCount: totalCount,
488
489
  fixedHeight: true,
489
490
  columnData: buildColumns$1({
490
- deliveryDetailsPath: deliveryDetailsPath
491
+ deliveryDetailsPath: deliveryDetailsPath,
492
+ page: page
491
493
  }),
492
494
  currentPageNumber: page,
493
495
  defaultPageSize: DEFAULT_PAGE_SIZE,
@@ -504,7 +506,10 @@ var Deliveries = function Deliveries(_ref) {
504
506
  deliveryId: deliveryId,
505
507
  webhookSid: webhookId,
506
508
  onClose: function onClose() {
507
- return history.goBack();
509
+ return history.replace(buildUrl(deliveriesPath, {
510
+ webhookId: webhookId,
511
+ page: page
512
+ }));
508
513
  }
509
514
  })]
510
515
  });
@@ -555,7 +560,7 @@ var useCreateWebhook = function useCreateWebhook(options) {
555
560
  keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],
556
561
  onSuccess: function onSuccess() {
557
562
  var _options$onSuccess;
558
- options === null || options === void 0 ? void 0 : (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 ? void 0 : _options$onSuccess.call(options);
563
+ options === null || options === void 0 || (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 || _options$onSuccess.call(options);
559
564
  }
560
565
  });
561
566
  };
@@ -578,7 +583,7 @@ var useUpdateWebhook = function useUpdateWebhook(id, options) {
578
583
  keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST], [QUERY_KEYS.WEBHOOK_DETAILS, id], [QUERY_KEYS.DELIVERY_LIST, id]],
579
584
  onSuccess: function onSuccess() {
580
585
  var _options$onSuccess2;
581
- options === null || options === void 0 ? void 0 : (_options$onSuccess2 = options.onSuccess) === null || _options$onSuccess2 === void 0 ? void 0 : _options$onSuccess2.call(options);
586
+ options === null || options === void 0 || (_options$onSuccess2 = options.onSuccess) === null || _options$onSuccess2 === void 0 || _options$onSuccess2.call(options);
582
587
  }
583
588
  });
584
589
  };
@@ -587,7 +592,7 @@ var useDestroyWebhook = function useDestroyWebhook(options) {
587
592
  keysToInvalidate: [[QUERY_KEYS.WEBHOOK_LIST]],
588
593
  onSuccess: function onSuccess() {
589
594
  var _options$onSuccess3;
590
- options === null || options === void 0 ? void 0 : (_options$onSuccess3 = options.onSuccess) === null || _options$onSuccess3 === void 0 ? void 0 : _options$onSuccess3.call(options);
595
+ options === null || options === void 0 || (_options$onSuccess3 = options.onSuccess) === null || _options$onSuccess3 === void 0 || _options$onSuccess3.call(options);
591
596
  }
592
597
  });
593
598
  };
@@ -677,8 +682,8 @@ var MENU_ITEMS = {
677
682
  DELETE: "delete"
678
683
  };
679
684
 
680
- 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; }
681
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
685
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
686
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
682
687
  var getMenuItems = function getMenuItems(_ref) {
683
688
  var onEdit = _ref.onEdit,
684
689
  onDelete = _ref.onDelete;
@@ -712,7 +717,7 @@ var buildPayload = function buildPayload(_ref2) {
712
717
  identifier: identifier
713
718
  };
714
719
  });
715
- if (!isEditing) return _objectSpread$1(_objectSpread$1({}, values), {}, {
720
+ if (!isEditing) return _objectSpread$2(_objectSpread$2({}, values), {}, {
716
721
  eventsAttributes: events
717
722
  });
718
723
  var deletable = ((_initialValues$events = initialValues.events) !== null && _initialValues$events !== void 0 ? _initialValues$events : []).filter(function (_ref4) {
@@ -727,7 +732,7 @@ var buildPayload = function buildPayload(_ref2) {
727
732
  identifier: identifier
728
733
  }, initialValues.events);
729
734
  });
730
- return _objectSpread$1(_objectSpread$1({}, values), {}, {
735
+ return _objectSpread$2(_objectSpread$2({}, values), {}, {
731
736
  eventsAttributes: [].concat(_toConsumableArray(creatable), _toConsumableArray(deletable))
732
737
  });
733
738
  };
@@ -792,8 +797,8 @@ var generateRandomSecret = function generateRandomSecret() {
792
797
  return v4().replace(/-/g, "");
793
798
  };
794
799
 
795
- function ownKeys(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; }
796
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
800
+ 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; }
801
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
797
802
  var AddWebhookPane = function AddWebhookPane(_ref) {
798
803
  var editingWebhookId = _ref.editingWebhookId,
799
804
  entityId = _ref.entityId,
@@ -811,7 +816,7 @@ var AddWebhookPane = function AddWebhookPane(_ref) {
811
816
  var _useCreateWebhook = useCreateWebhook({
812
817
  onSuccess: function onSuccess() {
813
818
  onClose();
814
- onCreate === null || onCreate === void 0 ? void 0 : onCreate();
819
+ onCreate === null || onCreate === void 0 || onCreate();
815
820
  }
816
821
  }),
817
822
  createWebhook = _useCreateWebhook.mutate;
@@ -844,7 +849,7 @@ var AddWebhookPane = function AddWebhookPane(_ref) {
844
849
  id: editingWebhookId,
845
850
  payload: payload,
846
851
  entityId: entityId
847
- }) : createWebhook(_objectSpread(_objectSpread({}, payload), {}, {
852
+ }) : createWebhook(_objectSpread$1(_objectSpread$1({}, payload), {}, {
848
853
  entityId: entityId,
849
854
  entityType: entityType
850
855
  }));
@@ -995,10 +1000,13 @@ var AddWebhookPane = function AddWebhookPane(_ref) {
995
1000
  });
996
1001
  };
997
1002
 
1003
+ function ownKeys(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; }
1004
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
998
1005
  var Header = withT(function (_ref) {
999
1006
  var t = _ref.t,
1000
1007
  breadcrumbs = _ref.breadcrumbs,
1001
1008
  title = _ref.title,
1009
+ titleHelpPopoverProps = _ref.titleHelpPopoverProps,
1002
1010
  setIsAddWebhookPaneOpen = _ref.setIsAddWebhookPaneOpen,
1003
1011
  headerSize = _ref.headerSize,
1004
1012
  webhooks = _ref.webhooks;
@@ -1006,6 +1014,7 @@ var Header = withT(function (_ref) {
1006
1014
  children: [/*#__PURE__*/jsx(Header$2, {
1007
1015
  breadcrumbs: breadcrumbs,
1008
1016
  size: headerSize,
1017
+ title: title || t("neetoWebhooks.webhook.title"),
1009
1018
  actionBlock: /*#__PURE__*/jsx(Button, {
1010
1019
  "data-cy": "add-new-webhook-button",
1011
1020
  label: t("neetoWebhooks.webhook.add"),
@@ -1013,16 +1022,13 @@ var Header = withT(function (_ref) {
1013
1022
  return setIsAddWebhookPaneOpen(true);
1014
1023
  }
1015
1024
  }),
1016
- title: title || /*#__PURE__*/jsxs("div", {
1017
- className: "flex items-center gap-x-2",
1018
- children: [t("neetoWebhooks.webhook.title"), /*#__PURE__*/jsx(HelpPopover, {
1019
- description: t("neetoWebhooks.webhook.helpDescription"),
1020
- helpLinkProps: {
1021
- href: HELP_LINK_URLS.webhook
1022
- },
1023
- title: t("neetoWebhooks.webhook.title")
1024
- })]
1025
- })
1025
+ titleHelpPopoverProps: _objectSpread({
1026
+ description: t("neetoWebhooks.webhook.helpDescription"),
1027
+ helpLinkProps: {
1028
+ href: HELP_LINK_URLS.webhook
1029
+ },
1030
+ title: t("neetoWebhooks.webhook.title")
1031
+ }, titleHelpPopoverProps)
1026
1032
  }), isNotEmpty(webhooks) && /*#__PURE__*/jsx(SubHeader, {
1027
1033
  leftActionBlock: /*#__PURE__*/jsx(Typography, {
1028
1034
  component: "h4",
@@ -1041,6 +1047,7 @@ var Webhooks = function Webhooks(_ref) {
1041
1047
  entityType = _ref.entityType,
1042
1048
  breadcrumbs = _ref.breadcrumbs,
1043
1049
  title = _ref.title,
1050
+ titleHelpPopoverProps = _ref.titleHelpPopoverProps,
1044
1051
  entityId = _ref.entityId,
1045
1052
  onCreate = _ref.onCreate,
1046
1053
  onDelete = _ref.onDelete,
@@ -1084,7 +1091,7 @@ var Webhooks = function Webhooks(_ref) {
1084
1091
  var _useDestroyWebhook = useDestroyWebhook({
1085
1092
  onSuccess: function onSuccess() {
1086
1093
  setIsDeleteAlertOpen(false);
1087
- onDelete === null || onDelete === void 0 ? void 0 : onDelete();
1094
+ onDelete === null || onDelete === void 0 || onDelete();
1088
1095
  }
1089
1096
  }),
1090
1097
  isDeleting = _useDestroyWebhook.isPending,
@@ -1114,6 +1121,7 @@ var Webhooks = function Webhooks(_ref) {
1114
1121
  headerSize: headerSize,
1115
1122
  setIsAddWebhookPaneOpen: setIsAddWebhookPaneOpen,
1116
1123
  title: title,
1124
+ titleHelpPopoverProps: titleHelpPopoverProps,
1117
1125
  webhooks: webhooks
1118
1126
  }), isNotEmpty(webhooks) ? /*#__PURE__*/jsx(TableWrapper, {
1119
1127
  hasPagination: totalCount > DEFAULT_PAGE_SIZE,
@@ -1190,6 +1198,7 @@ var NeetoWebhooks = function NeetoWebhooks(_ref) {
1190
1198
  _ref$breadcrumbs = _ref.breadcrumbs,
1191
1199
  breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
1192
1200
  title = _ref.title,
1201
+ titleHelpPopoverProps = _ref.titleHelpPopoverProps,
1193
1202
  onCreate = _ref.onCreate,
1194
1203
  onDelete = _ref.onDelete,
1195
1204
  headerSize = _ref.headerSize,
@@ -1213,7 +1222,8 @@ var NeetoWebhooks = function NeetoWebhooks(_ref) {
1213
1222
  headerSize: headerSize,
1214
1223
  onCreate: onCreate,
1215
1224
  onDelete: onDelete,
1216
- title: title
1225
+ title: title,
1226
+ titleHelpPopoverProps: titleHelpPopoverProps
1217
1227
  });
1218
1228
  }
1219
1229
  }), /*#__PURE__*/jsx(Route, {