@bigbinary/neeto-tags-frontend 2.1.4 → 2.1.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/dist/NeetoTags.js CHANGED
@@ -157,7 +157,7 @@ var useTagsForm = function useTagsForm(_ref) {
157
157
  var handleSubmit = function handleSubmit(values, _ref2) {
158
158
  var _values$description;
159
159
  var resetForm = _ref2.resetForm;
160
- values.description = values === null || values === void 0 ? void 0 : (_values$description = values.description) === null || _values$description === void 0 ? void 0 : _values$description.trim();
160
+ values.description = values === null || values === void 0 || (_values$description = values.description) === null || _values$description === void 0 ? void 0 : _values$description.trim();
161
161
  var tagData = {
162
162
  payload: {
163
163
  tag: values
@@ -171,7 +171,7 @@ var useTagsForm = function useTagsForm(_ref) {
171
171
  onSuccess: function onSuccess() {
172
172
  var _tagOperation$onSucce;
173
173
  !isEdit && goToFirstPage();
174
- tagOperation === null || tagOperation === void 0 ? void 0 : (_tagOperation$onSucce = tagOperation.onSuccess) === null || _tagOperation$onSucce === void 0 ? void 0 : _tagOperation$onSucce.callback();
174
+ tagOperation === null || tagOperation === void 0 || (_tagOperation$onSucce = tagOperation.onSuccess) === null || _tagOperation$onSucce === void 0 || _tagOperation$onSucce.callback();
175
175
  onClose();
176
176
  },
177
177
  onError: function onError() {
@@ -306,7 +306,7 @@ var renderColumnData = function renderColumnData(handleEdit, handleDelete) {
306
306
  title: t("neetoTags.common.name"),
307
307
  dataIndex: "name",
308
308
  key: "name",
309
- width: "400px",
309
+ width: "300px",
310
310
  render: function render(name, tag) {
311
311
  return /*#__PURE__*/jsxs("div", {
312
312
  className: "neeto-tags-table__column",
@@ -492,12 +492,12 @@ var Dashboard = function Dashboard(_ref) {
492
492
  onSuccess: function onSuccess() {
493
493
  var _data$tags, _deleteTags$onSuccess;
494
494
  setIsDeleteAlertOpen(false);
495
- if ((data === null || data === void 0 ? void 0 : (_data$tags = data.tags) === null || _data$tags === void 0 ? void 0 : _data$tags.length) === 1) {
495
+ if ((data === null || data === void 0 || (_data$tags = data.tags) === null || _data$tags === void 0 ? void 0 : _data$tags.length) === 1) {
496
496
  setFilters(mergeLeft({
497
497
  page: filters.page - 1
498
498
  }));
499
499
  }
500
- deleteTags === null || deleteTags === void 0 ? void 0 : (_deleteTags$onSuccess = deleteTags.onSuccess) === null || _deleteTags$onSuccess === void 0 ? void 0 : _deleteTags$onSuccess.callback();
500
+ deleteTags === null || deleteTags === void 0 || (_deleteTags$onSuccess = deleteTags.onSuccess) === null || _deleteTags$onSuccess === void 0 || _deleteTags$onSuccess.callback();
501
501
  // @ts-ignore
502
502
  showThumbsUpToastr();
503
503
  }
@@ -530,6 +530,7 @@ var Dashboard = function Dashboard(_ref) {
530
530
  titleHelpPopoverProps: titleHelpPopoverProps,
531
531
  goToFirstPage: resetPage
532
532
  }), showFilters && /*#__PURE__*/jsx(SubHeader, {
533
+ className: "mb-4",
533
534
  leftActionBlock: /*#__PURE__*/jsx(Typography, {
534
535
  className: "neeto-ui-gray-800",
535
536
  "data-cy": "neeto-tags-filtered-tags-count-text",
@@ -657,8 +658,8 @@ var List = function List(_ref) {
657
658
  }, [isSource, sourceTags, destinationTags] // eslint-disable-line react-hooks/exhaustive-deps
658
659
  );
659
660
  var filteredTags = orderBySourceTags(tagList, sourceTags).filter(function (tag) {
660
- var _tag$name, _tag$name$toLowerCase;
661
- return tag === null || tag === void 0 ? void 0 : (_tag$name = tag.name) === null || _tag$name === void 0 ? void 0 : (_tag$name$toLowerCase = _tag$name.toLowerCase()) === null || _tag$name$toLowerCase === void 0 ? void 0 : _tag$name$toLowerCase.includes(searchTerm.toLowerCase().trim());
661
+ var _tag$name;
662
+ return tag === null || tag === void 0 || (_tag$name = tag.name) === null || _tag$name === void 0 || (_tag$name = _tag$name.toLowerCase()) === null || _tag$name === void 0 ? void 0 : _tag$name.includes(searchTerm.toLowerCase().trim());
662
663
  });
663
664
  return /*#__PURE__*/jsxs("div", {
664
665
  className: "neeto-tags-merge__list neeto-tags-border neeto-ui-border-gray-300 neeto-ui-shadow-xs neeto-ui-rounded-lg neeto-ui-flex neeto-ui-flex-col p-3 md:p-4 lg:p-6",
@@ -1347,7 +1348,7 @@ var Merge = function Merge(_ref) {
1347
1348
  var _mergeTags$onSuccess;
1348
1349
  setDestinationTags([]);
1349
1350
  setSourceTags([]);
1350
- mergeTags === null || mergeTags === void 0 ? void 0 : (_mergeTags$onSuccess = mergeTags.onSuccess) === null || _mergeTags$onSuccess === void 0 ? void 0 : _mergeTags$onSuccess.callback();
1351
+ mergeTags === null || mergeTags === void 0 || (_mergeTags$onSuccess = mergeTags.onSuccess) === null || _mergeTags$onSuccess === void 0 || _mergeTags$onSuccess.callback();
1351
1352
  setIsModalOpen(false);
1352
1353
  }
1353
1354
  });
@@ -1420,7 +1421,7 @@ var getCurrentTagType = function getCurrentTagType() {
1420
1421
  tagLabel = _getQueryParams.view;
1421
1422
  var requiredTagType = tagTypes.find(function (tagType) {
1422
1423
  var _tagType$label;
1423
- return (tagType === null || tagType === void 0 ? void 0 : (_tagType$label = tagType.label) === null || _tagType$label === void 0 ? void 0 : _tagType$label.toLowerCase()) === tagLabel;
1424
+ return (tagType === null || tagType === void 0 || (_tagType$label = tagType.label) === null || _tagType$label === void 0 ? void 0 : _tagType$label.toLowerCase()) === tagLabel;
1424
1425
  });
1425
1426
  return requiredTagType || tagTypes[0];
1426
1427
  };
@@ -1466,7 +1467,7 @@ var Tags = function Tags(_ref) {
1466
1467
  });
1467
1468
  };
1468
1469
 
1469
- var css = ".ntm-empty-state{height:100%;margin:auto;width:100%}.ntm-empty-state,.ntm-empty-state__image{align-items:center;display:flex;justify-content:center}.ntm-empty-state__image{margin-left:0 auto 4rem auto}.ntm-empty-state__title{font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;text-align:center}.ntm-empty-state__description{margin-bottom:1.5rem;text-align:center}.ntm-empty-state__action-block{display:flex;justify-content:center}.neeto-tags-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--neeto-molecules-sub-header-height) - var(--neeto-molecules-sub-header-bottom-margin));padding:0 24px;width:100%}.neeto-tags-table__column{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.neeto-tags-card-title-block:hover p{color:rgb(var(--neeto-ui-accent-800))!important}.neeto-tags-merge__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height));margin:0 auto;max-width:1200px;padding:0 24px 24px;width:100%}.neeto-tags-merge__wrapper .neeto-tags-merge__container{display:flex;flex-direction:row;height:100%;justify-content:space-between;width:100%}.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list{width:48%}.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list .neeto-tags-merge__items{height:calc(100vh - var(--neeto-molecules-main-header-height) - 120px);overflow-y:auto;padding-top:12px}@media screen and (min-width:768px){.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list .neeto-tags-merge__items{padding-top:16px}}.neeto-tags-border{border-width:thin}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL21haW4uc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9wYWdlcy9fZGFzaGJvYXJkLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX21lcmdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBSUUsV0FBQSxDQUVBLFdBQUEsQ0FEQSxVQ0VGLENEQ0UseUNBTkEsa0JBQUEsQ0FEQSxZQUFBLENBRUEsc0JDVUYsQ0RMRSx3QkFDRSw0QkNJSixDREVFLHdCQUdFLGlCQUFBLENBQ0EsbUJBQUEsQ0FIQSxrQkFBQSxDQUNBLGlCQ0VKLENER0UsOEJBQ0Usb0JBQUEsQ0FDQSxpQkNESixDRElFLCtCQUNFLFlBQUEsQ0FDQSxzQkNGSixDQzNCQSwyQkFFRSw0S0FBQSxDQUtBLGNBQUEsQ0FOQSxVRGdDRixDQ3ZCQSwwQkFHRSxrQkFBQSxDQUZBLFlBQUEsQ0FHQSxTQUFBLENBRkEsNkJENEJGLENDckJJLHFDQUNFLCtDRHdCTixDRTVDQSwyQkFFRSwrRUFBQSxDQUVBLGFBQUEsQ0FEQSxnQkFBQSxDQUVBLG1CQUFBLENBSkEsVUZtREYsQ0U3Q0Usd0RBQ0UsWUFBQSxDQUNBLGtCQUFBLENBR0EsV0FBQSxDQUZBLDZCQUFBLENBQ0EsVUZnREosQ0U3Q0ksZ0ZBQ0UsU0YrQ04sQ0U3Q00seUdBRUUsc0VBQUEsQ0FEQSxlQUFBLENBRUEsZ0JGK0NSLENFOUNRLG9DQUpGLHlHQUtJLGdCRmlEUixDQUNGLENFM0NBLG1CQUNFLGlCRjhDRiIsInNvdXJjZXNDb250ZW50IjpbIi5udG0tZW1wdHktc3RhdGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiBhdXRvO1xuXG4gICZfX2ltYWdlIHtcbiAgICBtYXJnaW4tbGVmdDogMHB4IGF1dG8gNHJlbSBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICZfX2FjdGlvbi1ibG9jayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuIiwiLm50bS1lbXB0eS1zdGF0ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG59XG4ubnRtLWVtcHR5LXN0YXRlX19pbWFnZSB7XG4gIG1hcmdpbi1sZWZ0OiAwcHggYXV0byA0cmVtIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm50bS1lbXB0eS1zdGF0ZV9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG59XG4ubnRtLWVtcHR5LXN0YXRlX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm50bS1lbXB0eS1zdGF0ZV9fYWN0aW9uLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5uZWV0by10YWdzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtc3ViLWhlYWRlci1oZWlnaHQpIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLXN1Yi1oZWFkZXItYm90dG9tLW1hcmdpbikpO1xuICBwYWRkaW5nOiAwIDI0cHg7XG59XG5cbi5uZWV0by10YWdzLXRhYmxlX19jb2x1bW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubmVldG8tdGFncy1jYXJkLXRpdGxlLWJsb2NrOmhvdmVyIHAge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWFjY2VudC04MDApKSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGFncy1tZXJnZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpKTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDI0cHggMjRweDtcbn1cbi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ubmVldG8tdGFncy1tZXJnZV9fd3JhcHBlciAubmVldG8tdGFncy1tZXJnZV9fY29udGFpbmVyIC5uZWV0by10YWdzLW1lcmdlX19saXN0IHtcbiAgd2lkdGg6IDQ4JTtcbn1cbi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIgLm5lZXRvLXRhZ3MtbWVyZ2VfX2xpc3QgLm5lZXRvLXRhZ3MtbWVyZ2VfX2l0ZW1zIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLWhlaWdodCkgLSAxMjBweCk7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5lZXRvLXRhZ3MtbWVyZ2VfX3dyYXBwZXIgLm5lZXRvLXRhZ3MtbWVyZ2VfX2NvbnRhaW5lciAubmVldG8tdGFncy1tZXJnZV9fbGlzdCAubmVldG8tdGFncy1tZXJnZV9faXRlbXMge1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICB9XG59XG5cbi5uZWV0by10YWdzLWJvcmRlciB7XG4gIGJvcmRlci13aWR0aDogdGhpbjtcbn0iLCIubmVldG8tdGFncy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1zdWItaGVhZGVyLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbmVldG8tbW9sZWN1bGVzLXN1Yi1oZWFkZXItYm90dG9tLW1hcmdpbilcbiAgKTtcbiAgcGFkZGluZzogMCAyNHB4O1xufVxuXG4ubmVldG8tdGFncy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm5lZXRvLXRhZ3MtY2FyZC10aXRsZS1ibG9jayB7XG4gICY6aG92ZXIge1xuICAgIHAge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtODAwKSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkpO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjRweCAyNHB4O1xuXG4gIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm5lZXRvLXRhZ3MtbWVyZ2VfX2xpc3Qge1xuICAgICAgd2lkdGg6IDQ4JTtcblxuICAgICAgLm5lZXRvLXRhZ3MtbWVyZ2VfX2l0ZW1zIHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLWhlaWdodCkgLSAxMjBweCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uZWV0by10YWdzLWJvcmRlciB7XG4gIGJvcmRlci13aWR0aDogdGhpbjtcbn1cbiJdfQ== */";
1470
+ var css = ".ntm-empty-state{height:100%;margin:auto;width:100%}.ntm-empty-state,.ntm-empty-state__image{align-items:center;display:flex;justify-content:center}.ntm-empty-state__image{margin-left:0 auto 4rem auto}.ntm-empty-state__title{font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;text-align:center}.ntm-empty-state__description{margin-bottom:1.5rem;text-align:center}.ntm-empty-state__action-block{display:flex;justify-content:center}.neeto-tags-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--neeto-molecules-sub-header-height) - var(--neeto-molecules-sub-header-bottom-margin));padding:0 1.5rem;width:100%}.neeto-tags-table__column{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.neeto-tags-card-title-block:hover p{color:rgb(var(--neeto-ui-accent-800))!important}.neeto-tags-merge__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height));margin:0 auto;max-width:1200px;padding:0 1.5rem 1.5rem;width:100%}.neeto-tags-merge__wrapper .neeto-tags-merge__container{display:flex;flex-direction:row;height:100%;justify-content:space-between;width:100%}.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list{width:48%}.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list .neeto-tags-merge__items{height:calc(100vh - var(--neeto-molecules-main-header-height) - 7.5rem);overflow-y:auto;padding-top:.75rem}@media screen and (min-width:768px){.neeto-tags-merge__wrapper .neeto-tags-merge__container .neeto-tags-merge__list .neeto-tags-merge__items{padding-top:1rem}}.neeto-tags-border{border-width:thin}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL21haW4uc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9wYWdlcy9fZGFzaGJvYXJkLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX21lcmdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBSUUsV0FBQSxDQUVBLFdBQUEsQ0FEQSxVQ0VGLENEQ0UseUNBTkEsa0JBQUEsQ0FEQSxZQUFBLENBRUEsc0JDVUYsQ0RMRSx3QkFDRSw0QkNJSixDREVFLHdCQUdFLGlCQUFBLENBQ0EsbUJBQUEsQ0FIQSxrQkFBQSxDQUNBLGlCQ0VKLENER0UsOEJBQ0Usb0JBQUEsQ0FDQSxpQkNESixDRElFLCtCQUNFLFlBQUEsQ0FDQSxzQkNGSixDQzNCQSwyQkFFRSw0S0FBQSxDQUtBLGdCQUFBLENBTkEsVURnQ0YsQ0N2QkEsMEJBR0Usa0JBQUEsQ0FGQSxZQUFBLENBR0EsU0FBQSxDQUZBLDZCRDRCRixDQ3JCSSxxQ0FDRSwrQ0R3Qk4sQ0U1Q0EsMkJBRUUsK0VBQUEsQ0FJQSxhQUFBLENBREEsZ0JBQUEsQ0FFQSx1QkFBQSxDQU5BLFVGbURGLENFM0NFLHdEQUNFLFlBQUEsQ0FDQSxrQkFBQSxDQUdBLFdBQUEsQ0FGQSw2QkFBQSxDQUNBLFVGOENKLENFM0NJLGdGQUNFLFNGNkNOLENFM0NNLHlHQUVFLHVFQUFBLENBREEsZUFBQSxDQUlBLGtCRjJDUixDRTFDUSxvQ0FORix5R0FPSSxnQkY2Q1IsQ0FDRixDRXZDQSxtQkFDRSxpQkYwQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIubnRtLWVtcHR5LXN0YXRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcblxuICAmX19pbWFnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDByZW0gYXV0byA0cmVtIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJl9fYWN0aW9uLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5udG0tZW1wdHktc3RhdGVfX2ltYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDByZW0gYXV0byA0cmVtIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm50bS1lbXB0eS1zdGF0ZV9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG59XG4ubnRtLWVtcHR5LXN0YXRlX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm50bS1lbXB0eS1zdGF0ZV9fYWN0aW9uLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5uZWV0by10YWdzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtc3ViLWhlYWRlci1oZWlnaHQpIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLXN1Yi1oZWFkZXItYm90dG9tLW1hcmdpbikpO1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbn1cblxuLm5lZXRvLXRhZ3MtdGFibGVfX2NvbHVtbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG5cbi5uZWV0by10YWdzLWNhcmQtdGl0bGUtYmxvY2s6aG92ZXIgcCB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktYWNjZW50LTgwMCkpICFpbXBvcnRhbnQ7XG59XG5cbi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkpO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMS41cmVtIDEuNXJlbTtcbn1cbi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ubmVldG8tdGFncy1tZXJnZV9fd3JhcHBlciAubmVldG8tdGFncy1tZXJnZV9fY29udGFpbmVyIC5uZWV0by10YWdzLW1lcmdlX19saXN0IHtcbiAgd2lkdGg6IDQ4JTtcbn1cbi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIgLm5lZXRvLXRhZ3MtbWVyZ2VfX2xpc3QgLm5lZXRvLXRhZ3MtbWVyZ2VfX2l0ZW1zIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLWhlaWdodCkgLSA3LjVyZW0pO1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIC5uZWV0by10YWdzLW1lcmdlX19jb250YWluZXIgLm5lZXRvLXRhZ3MtbWVyZ2VfX2xpc3QgLm5lZXRvLXRhZ3MtbWVyZ2VfX2l0ZW1zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgfVxufVxuXG4ubmVldG8tdGFncy1ib3JkZXIge1xuICBib3JkZXItd2lkdGg6IHRoaW47XG59IiwiLm5lZXRvLXRhZ3MtdGFibGVfX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtXG4gICAgICB2YXIoLS1uZWV0by1tb2xlY3VsZXMtc3ViLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1zdWItaGVhZGVyLWJvdHRvbS1tYXJnaW4pXG4gICk7XG4gIHBhZGRpbmc6IDAgMS41cmVtO1xufVxuXG4ubmVldG8tdGFncy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm5lZXRvLXRhZ3MtY2FyZC10aXRsZS1ibG9jayB7XG4gICY6aG92ZXIge1xuICAgIHAge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtODAwKSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi5uZWV0by10YWdzLW1lcmdlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodClcbiAgKTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDEuNXJlbSAxLjVyZW07XG5cbiAgLm5lZXRvLXRhZ3MtbWVyZ2VfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubmVldG8tdGFncy1tZXJnZV9fbGlzdCB7XG4gICAgICB3aWR0aDogNDglO1xuXG4gICAgICAubmVldG8tdGFncy1tZXJnZV9faXRlbXMge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoXG4gICAgICAgICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItaGVpZ2h0KSAtIDcuNXJlbVxuICAgICAgICApO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmVldG8tdGFncy1ib3JkZXIge1xuICBib3JkZXItd2lkdGg6IHRoaW47XG59XG4iXX0= */";
1470
1471
  n(css,{});
1471
1472
 
1472
1473
  var App = function App(_ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"NeetoTags.js","sources":["../app/javascript/src/components/Menu.jsx","../app/javascript/src/components/Dashboard/constants.js","../app/javascript/src/components/Dashboard/Header.jsx","../app/javascript/src/hooks/useTagsForm.js","../app/javascript/src/components/Dashboard/ManageTags.jsx","../app/javascript/src/components/Dashboard/utils.jsx","../app/javascript/src/components/Dashboard/Table.jsx","../app/javascript/src/components/Dashboard/index.jsx","../app/javascript/src/components/Merge/constants.js","../app/javascript/src/components/Merge/utils.js","../app/javascript/src/components/Merge/List.jsx","../node_modules/pluralize/pluralize.js","../app/javascript/src/components/Merge/MergeAlert.jsx","../app/javascript/src/components/Merge/index.jsx","../app/javascript/src/components/utils.js","../app/javascript/src/components/index.jsx","../app/javascript/src/index.jsx"],"sourcesContent":["import { Tab } from \"neetoui\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tab className=\"mb-6\">\n {Object.values(tagTypes).map(tag => (\n <Tab.Item\n active={tagType.id === tag.id}\n description={tag.description}\n key={tag.id}\n onClick={() => {\n setTagType(tag);\n }}\n >\n {tag.label}\n </Tab.Item>\n ))}\n </Tab>\n);\n\nexport default Menu;\n","import { t } from \"i18next\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport * as yup from \"yup\";\n\nexport const TAG_NAME_MAX_LENGTH = 50;\n\nexport const TAG_DESCRIPTION_ROW_LENGTH = 3;\n\nexport const TAG_DESCRIPTION_MAX_LENGTH = 255;\n\nexport const TAG_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .typeError(t(\"neetoTags.validation.nameMustBeString\"))\n .required(t(\"neetoTags.validation.nameRequired\"))\n .max(\n TAG_NAME_MAX_LENGTH,\n t(\"neetoTags.validation.nameMaxLength\", {\n length: TAG_NAME_MAX_LENGTH,\n })\n ),\n description: yup\n .string()\n .typeError(t(\"neetoTags.validation.descriptionMustBeString\"))\n .nullable()\n .max(\n TAG_DESCRIPTION_MAX_LENGTH,\n t(\"neetoTags.validation.descriptionMaxLength\", {\n length: TAG_DESCRIPTION_MAX_LENGTH,\n })\n ),\n});\n\nexport const TAGS_FORMIK_PROPS = {\n validateOnBlur: true,\n validateOnChange: true,\n validationSchema: TAG_SCHEMA,\n};\n\nexport const DEFAULT_FILTERS = {\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const NEETO_FILTERS = [\n {\n key: \"name\",\n label: t(\"neetoTags.common.name\"),\n node: \"name\",\n type: \"text\",\n },\n];\n","import { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"src/common/constants\";\n\nconst Header = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-cy=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n style=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-cy=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-cy\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default Header;\n","import { useCreateTag, useUpdateTag } from \"./useTagsApi\";\n\nconst useTagsForm = ({\n createTags,\n goToFirstPage,\n isEdit,\n onClose,\n tagType,\n updateTags,\n}) => {\n const tagModification = isEdit ? useUpdateTag : useCreateTag;\n const tagOperation = isEdit ? updateTags : createTags;\n const { mutate, isPending: isSubmitting } = tagModification();\n\n const handleSubmit = (values, { resetForm }) => {\n values.description = values?.description?.trim();\n const tagData = { payload: { tag: values } };\n tagData.url = tagType.url;\n if (isEdit) {\n tagData.id = values.id;\n }\n\n mutate(tagData, {\n onSuccess: () => {\n !isEdit && goToFirstPage();\n tagOperation?.onSuccess?.callback();\n onClose();\n },\n onError: () => {\n resetForm();\n },\n });\n };\n\n return { handleSubmit, isSubmitting };\n};\n\nexport default useTagsForm;\n","import { useRef } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PANE_TYPES, INITIAL_TAG_VALUES } from \"common/constants\";\nimport useTagsForm from \"src/hooks/useTagsForm\";\n\nimport {\n TAGS_FORMIK_PROPS,\n TAG_DESCRIPTION_MAX_LENGTH,\n TAG_DESCRIPTION_ROW_LENGTH,\n TAG_NAME_MAX_LENGTH,\n} from \"./constants\";\n\nconst ManageTags = ({\n createTags,\n goToFirstPage,\n onClose,\n tag,\n tagType,\n type,\n updateTags,\n}) => {\n const { t } = useTranslation();\n const isEdit = type === PANE_TYPES.EDIT;\n const initialValues = isEdit ? tag : INITIAL_TAG_VALUES;\n const inputReference = useRef(null);\n\n const { handleSubmit, isSubmitting } = useTagsForm({\n createTags,\n goToFirstPage,\n isEdit,\n onClose,\n tagType,\n updateTags,\n });\n\n return (\n <Pane {...{ onClose }} initialFocusRef={inputReference} isOpen={!!type}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoTags.common.editTag\")\n : t(\"neetoTags.common.addNewTag\", SINGULAR)}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n ...TAGS_FORMIK_PROPS,\n initialValues,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"neeto-ui-flex neeto-ui-w-full neeto-ui-flex-col neeto-ui-gap-4\">\n <Input\n required\n unlimitedChars\n data-cy=\"tag-name-text-field\"\n label={t(\"neetoTags.common.name\")}\n maxLength={TAG_NAME_MAX_LENGTH}\n name=\"name\"\n ref={inputReference}\n />\n <Textarea\n unlimitedChars\n data-cy=\"tag-description-text-area\"\n label={t(\"neetoTags.common.description\")}\n maxLength={TAG_DESCRIPTION_MAX_LENGTH}\n name=\"description\"\n rows={TAG_DESCRIPTION_ROW_LENGTH}\n />\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{\n \"data-cy\": \"neeto-tags-manage-tag-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-tags-manage-tag-submit-button\",\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default ManageTags;\n","import { t } from \"i18next\";\nimport { noop } from \"neetocist\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Tag } from \"neetoui\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <Dropdown\n autoWidth\n buttonProps={{ style: \"text\" }}\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n title: t(\"neetoTags.common.name\"),\n dataIndex: \"name\",\n key: \"name\",\n width: \"400px\",\n render: (name, tag) => (\n <div className=\"neeto-tags-table__column\">\n <Tag label={name} style=\"secondary\" />\n {renderDropdownButton({ handleEdit, handleDelete, tag })}\n </div>\n ),\n },\n {\n title: t(\"neetoTags.common.description\"),\n dataIndex: \"description\",\n key: \"description\",\n width: \"400px\",\n render: description => description || \"-\",\n },\n ...columns,\n];\n","import TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div className=\"ntm-empty-state\" data-cy=\"empty-state-container\">\n <NoData\n {...{ primaryButtonProps, ...noDataProps }}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={data?.totalCount > filters.pageSize}>\n <NeetoUITable\n fixedHeight\n allowRowClick={!!onTagRowClick}\n columnData={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPageNumber={filters.page}\n defaultPageSize={filters.pageSize}\n loading={isLoading}\n paginationProps={{ showSizeChanger: false }}\n rowData={data?.tags}\n rowSelection={false}\n scroll={{ x: \"100%\" }}\n totalCount={data?.totalCount}\n onChange={handleOnChange}\n onRowClick={(event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n }\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/Container\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Alert, Typography } from \"neetoui\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"common/constants\";\nimport Menu from \"components/Menu\";\nimport { useDeleteTag, useFetchTags } from \"src/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport Header from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-cy\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container>\n <Header\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n leftActionBlock={\n <Typography\n className=\"neeto-ui-gray-800\"\n data-cy=\"neeto-tags-filtered-tags-count-text\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-cy\": \"neeto-tags-go-back-button\",\n size: \"small\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport classames from \"classnames\";\nimport { Check } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"neeto-tags-merge__list neeto-tags-border neeto-ui-border-gray-300 neeto-ui-shadow-xs neeto-ui-rounded-lg neeto-ui-flex neeto-ui-flex-col p-3 md:p-4 lg:p-6\">\n <Typography className=\"neeto-ui-mb-3\" style=\"h4\">\n {listType.label}\n </Typography>\n <Input\n data-cy={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"neeto-tags-merge__items\"\n data-cy={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-cy={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classames(\n \"neeto-ui-flex neeto-ui-justify-between neeto-ui-items-center neeto-tags-border neeto-ui-border-white neeto-ui-p-2 neeto-ui-rounded-lg neeto-ui-mt-2 neeto-ui-cursor-pointer\",\n {\n \"neeto-ui-bg-pastel-blue neeto-ui-border-primary-600\":\n selectedTagIds,\n \"hover:neeto-ui-bg-gray-100\": !selectedTagIds,\n \"neeto-ui-cursor-not-allowed neeto-ui-bg-gray-100 neeto-ui-text-gray-500\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","/* global define */\n\n(function (root, pluralize) {\n /* istanbul ignore else */\n if (typeof require === 'function' && typeof exports === 'object' && typeof module === 'object') {\n // Node.\n module.exports = pluralize();\n } else if (typeof define === 'function' && define.amd) {\n // AMD, registers as an anonymous module.\n define(function () {\n return pluralize();\n });\n } else {\n // Browser global.\n root.pluralize = pluralize();\n }\n})(this, function () {\n // Rule storage - pluralize and singularize need to be run sequentially,\n // while other rules can be optimized using an object for instant lookups.\n var pluralRules = [];\n var singularRules = [];\n var uncountables = {};\n var irregularPlurals = {};\n var irregularSingles = {};\n\n /**\n * Sanitize a pluralization rule to a usable regular expression.\n *\n * @param {(RegExp|string)} rule\n * @return {RegExp}\n */\n function sanitizeRule (rule) {\n if (typeof rule === 'string') {\n return new RegExp('^' + rule + '$', 'i');\n }\n\n return rule;\n }\n\n /**\n * Pass in a word token to produce a function that can replicate the case on\n * another word.\n *\n * @param {string} word\n * @param {string} token\n * @return {Function}\n */\n function restoreCase (word, token) {\n // Tokens are an exact match.\n if (word === token) return token;\n\n // Lower cased words. E.g. \"hello\".\n if (word === word.toLowerCase()) return token.toLowerCase();\n\n // Upper cased words. E.g. \"WHISKY\".\n if (word === word.toUpperCase()) return token.toUpperCase();\n\n // Title cased words. E.g. \"Title\".\n if (word[0] === word[0].toUpperCase()) {\n return token.charAt(0).toUpperCase() + token.substr(1).toLowerCase();\n }\n\n // Lower cased words. E.g. \"test\".\n return token.toLowerCase();\n }\n\n /**\n * Interpolate a regexp string.\n *\n * @param {string} str\n * @param {Array} args\n * @return {string}\n */\n function interpolate (str, args) {\n return str.replace(/\\$(\\d{1,2})/g, function (match, index) {\n return args[index] || '';\n });\n }\n\n /**\n * Replace a word using a rule.\n *\n * @param {string} word\n * @param {Array} rule\n * @return {string}\n */\n function replace (word, rule) {\n return word.replace(rule[0], function (match, index) {\n var result = interpolate(rule[1], arguments);\n\n if (match === '') {\n return restoreCase(word[index - 1], result);\n }\n\n return restoreCase(match, result);\n });\n }\n\n /**\n * Sanitize a word by passing in the word and sanitization rules.\n *\n * @param {string} token\n * @param {string} word\n * @param {Array} rules\n * @return {string}\n */\n function sanitizeWord (token, word, rules) {\n // Empty string or doesn't need fixing.\n if (!token.length || uncountables.hasOwnProperty(token)) {\n return word;\n }\n\n var len = rules.length;\n\n // Iterate over the sanitization rules and use the first one to match.\n while (len--) {\n var rule = rules[len];\n\n if (rule[0].test(word)) return replace(word, rule);\n }\n\n return word;\n }\n\n /**\n * Replace a word with the updated word.\n *\n * @param {Object} replaceMap\n * @param {Object} keepMap\n * @param {Array} rules\n * @return {Function}\n */\n function replaceWord (replaceMap, keepMap, rules) {\n return function (word) {\n // Get the correct token and case restoration functions.\n var token = word.toLowerCase();\n\n // Check against the keep object map.\n if (keepMap.hasOwnProperty(token)) {\n return restoreCase(word, token);\n }\n\n // Check against the replacement map for a direct word replacement.\n if (replaceMap.hasOwnProperty(token)) {\n return restoreCase(word, replaceMap[token]);\n }\n\n // Run all the rules against the word.\n return sanitizeWord(token, word, rules);\n };\n }\n\n /**\n * Check if a word is part of the map.\n */\n function checkWord (replaceMap, keepMap, rules, bool) {\n return function (word) {\n var token = word.toLowerCase();\n\n if (keepMap.hasOwnProperty(token)) return true;\n if (replaceMap.hasOwnProperty(token)) return false;\n\n return sanitizeWord(token, token, rules) === token;\n };\n }\n\n /**\n * Pluralize or singularize a word based on the passed in count.\n *\n * @param {string} word The word to pluralize\n * @param {number} count How many of the word exist\n * @param {boolean} inclusive Whether to prefix with the number (e.g. 3 ducks)\n * @return {string}\n */\n function pluralize (word, count, inclusive) {\n var pluralized = count === 1\n ? pluralize.singular(word) : pluralize.plural(word);\n\n return (inclusive ? count + ' ' : '') + pluralized;\n }\n\n /**\n * Pluralize a word.\n *\n * @type {Function}\n */\n pluralize.plural = replaceWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Check if a word is plural.\n *\n * @type {Function}\n */\n pluralize.isPlural = checkWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Singularize a word.\n *\n * @type {Function}\n */\n pluralize.singular = replaceWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Check if a word is singular.\n *\n * @type {Function}\n */\n pluralize.isSingular = checkWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Add a pluralization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addPluralRule = function (rule, replacement) {\n pluralRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add a singularization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addSingularRule = function (rule, replacement) {\n singularRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add an uncountable word rule.\n *\n * @param {(string|RegExp)} word\n */\n pluralize.addUncountableRule = function (word) {\n if (typeof word === 'string') {\n uncountables[word.toLowerCase()] = true;\n return;\n }\n\n // Set singular and plural references for the word.\n pluralize.addPluralRule(word, '$0');\n pluralize.addSingularRule(word, '$0');\n };\n\n /**\n * Add an irregular word definition.\n *\n * @param {string} single\n * @param {string} plural\n */\n pluralize.addIrregularRule = function (single, plural) {\n plural = plural.toLowerCase();\n single = single.toLowerCase();\n\n irregularSingles[single] = plural;\n irregularPlurals[plural] = single;\n };\n\n /**\n * Irregular rules.\n */\n [\n // Pronouns.\n ['I', 'we'],\n ['me', 'us'],\n ['he', 'they'],\n ['she', 'they'],\n ['them', 'them'],\n ['myself', 'ourselves'],\n ['yourself', 'yourselves'],\n ['itself', 'themselves'],\n ['herself', 'themselves'],\n ['himself', 'themselves'],\n ['themself', 'themselves'],\n ['is', 'are'],\n ['was', 'were'],\n ['has', 'have'],\n ['this', 'these'],\n ['that', 'those'],\n // Words ending in with a consonant and `o`.\n ['echo', 'echoes'],\n ['dingo', 'dingoes'],\n ['volcano', 'volcanoes'],\n ['tornado', 'tornadoes'],\n ['torpedo', 'torpedoes'],\n // Ends with `us`.\n ['genus', 'genera'],\n ['viscus', 'viscera'],\n // Ends with `ma`.\n ['stigma', 'stigmata'],\n ['stoma', 'stomata'],\n ['dogma', 'dogmata'],\n ['lemma', 'lemmata'],\n ['schema', 'schemata'],\n ['anathema', 'anathemata'],\n // Other irregular rules.\n ['ox', 'oxen'],\n ['axe', 'axes'],\n ['die', 'dice'],\n ['yes', 'yeses'],\n ['foot', 'feet'],\n ['eave', 'eaves'],\n ['goose', 'geese'],\n ['tooth', 'teeth'],\n ['quiz', 'quizzes'],\n ['human', 'humans'],\n ['proof', 'proofs'],\n ['carve', 'carves'],\n ['valve', 'valves'],\n ['looey', 'looies'],\n ['thief', 'thieves'],\n ['groove', 'grooves'],\n ['pickaxe', 'pickaxes'],\n ['passerby', 'passersby']\n ].forEach(function (rule) {\n return pluralize.addIrregularRule(rule[0], rule[1]);\n });\n\n /**\n * Pluralization rules.\n */\n [\n [/s?$/i, 's'],\n [/[^\\u0000-\\u007F]$/i, '$0'],\n [/([^aeiou]ese)$/i, '$1'],\n [/(ax|test)is$/i, '$1es'],\n [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, '$1es'],\n [/(e[mn]u)s?$/i, '$1s'],\n [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, '$1'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n [/(seraph|cherub)(?:im)?$/i, '$1im'],\n [/(her|at|gr)o$/i, '$1oes'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n [/sis$/i, 'ses'],\n [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n [/([^aeiouy]|qu)y$/i, '$1ies'],\n [/([^ch][ieo][ln])ey$/i, '$1ies'],\n [/(x|ch|ss|sh|zz)$/i, '$1es'],\n [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n [/\\b((?:tit)?m|l)(?:ice|ouse)$/i, '$1ice'],\n [/(pe)(?:rson|ople)$/i, '$1ople'],\n [/(child)(?:ren)?$/i, '$1ren'],\n [/eaux$/i, '$0'],\n [/m[ae]n$/i, 'men'],\n ['thou', 'you']\n ].forEach(function (rule) {\n return pluralize.addPluralRule(rule[0], rule[1]);\n });\n\n /**\n * Singularization rules.\n */\n [\n [/s$/i, ''],\n [/(ss)$/i, '$1'],\n [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n [/ies$/i, 'y'],\n [/\\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i, '$1ie'],\n [/\\b(mon|smil)ies$/i, '$1ey'],\n [/\\b((?:tit)?m|l)ice$/i, '$1ouse'],\n [/(seraph|cherub)im$/i, '$1'],\n [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i, '$1'],\n [/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i, '$1sis'],\n [/(movie|twelve|abuse|e[mn]u)s$/i, '$1'],\n [/(test)(?:is|es)$/i, '$1is'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n [/(alumn|alg|vertebr)ae$/i, '$1a'],\n [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n [/(matr|append)ices$/i, '$1ix'],\n [/(pe)(rson|ople)$/i, '$1rson'],\n [/(child)ren$/i, '$1'],\n [/(eau)x?$/i, '$1'],\n [/men$/i, 'man']\n ].forEach(function (rule) {\n return pluralize.addSingularRule(rule[0], rule[1]);\n });\n\n /**\n * Uncountable rules.\n */\n [\n // Singular words with no plurals.\n 'adulthood',\n 'advice',\n 'agenda',\n 'aid',\n 'aircraft',\n 'alcohol',\n 'ammo',\n 'analytics',\n 'anime',\n 'athletics',\n 'audio',\n 'bison',\n 'blood',\n 'bream',\n 'buffalo',\n 'butter',\n 'carp',\n 'cash',\n 'chassis',\n 'chess',\n 'clothing',\n 'cod',\n 'commerce',\n 'cooperation',\n 'corps',\n 'debris',\n 'diabetes',\n 'digestion',\n 'elk',\n 'energy',\n 'equipment',\n 'excretion',\n 'expertise',\n 'firmware',\n 'flounder',\n 'fun',\n 'gallows',\n 'garbage',\n 'graffiti',\n 'hardware',\n 'headquarters',\n 'health',\n 'herpes',\n 'highjinks',\n 'homework',\n 'housework',\n 'information',\n 'jeans',\n 'justice',\n 'kudos',\n 'labour',\n 'literature',\n 'machinery',\n 'mackerel',\n 'mail',\n 'media',\n 'mews',\n 'moose',\n 'music',\n 'mud',\n 'manga',\n 'news',\n 'only',\n 'personnel',\n 'pike',\n 'plankton',\n 'pliers',\n 'police',\n 'pollution',\n 'premises',\n 'rain',\n 'research',\n 'rice',\n 'salmon',\n 'scissors',\n 'series',\n 'sewage',\n 'shambles',\n 'shrimp',\n 'software',\n 'species',\n 'staff',\n 'swine',\n 'tennis',\n 'traffic',\n 'transportation',\n 'trout',\n 'tuna',\n 'wealth',\n 'welfare',\n 'whiting',\n 'wildebeest',\n 'wildlife',\n 'you',\n /pok[eé]mon$/i,\n // Regexes.\n /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n /deer$/i, // \"deer\", \"reindeer\"\n /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n /measles$/i,\n /o[iu]s$/i, // \"carnivorous\"\n /pox$/i, // \"chickpox\", \"smallpox\"\n /sheep$/i\n ].forEach(pluralize.addUncountableRule);\n\n return pluralize;\n});\n","import { PLURAL } from \"neetocommons/constants\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Modal, Typography, Button } from \"neetoui\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Modal isOpen={showModal} onClose={() => setShowModal(false)}>\n <Modal.Header>\n <Typography id=\"dialog1Title\" style=\"h2\">\n {t(\"neetoTags.common.mergeTag\", PLURAL)}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography lineHeight=\"normal\" style=\"body2\">\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Typography>\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <Button\n data-cy=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n style=\"tertiary\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-cy=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Modal.Footer>\n </Modal>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { Merge as NeetoUITagMergeIcon } from \"neetoicons\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { Button, NoData, Spinner } from \"neetoui\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"src/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-ui-w-full\">\n <Container isHeaderFixed>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <Button\n data-cy=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n }\n />\n {!data?.tags?.length ? (\n <div className=\"ntm-empty-state\" data-cy=\"empty-state-container\">\n <NoData\n {...{ primaryButtonProps }}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"neeto-tags-merge__wrapper\">\n <div className=\"neeto-tags-merge__container\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <NeetoUITagMergeIcon\n className=\"neeto-ui-self-center neeto-ui-text-gray-600 mx-1 md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n </div>\n )}\n </Container>\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </div>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\nimport \"./stylesheets/main.scss\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["Menu","_ref","tagTypes","tagType","setTagType","_jsx","Tab","className","children","Object","values","map","tag","Item","active","id","description","onClick","label","TAG_NAME_MAX_LENGTH","TAG_DESCRIPTION_ROW_LENGTH","TAG_DESCRIPTION_MAX_LENGTH","TAG_SCHEMA","yup","object","shape","name","string","typeError","t","required","max","length","nullable","TAGS_FORMIK_PROPS","validateOnBlur","validateOnChange","validationSchema","DEFAULT_FILTERS","page","DEFAULT_PAGE_INDEX","pageSize","DEFAULT_PAGE_SIZE","sortBy","orderBy","NEETO_FILTERS","key","node","type","Header","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","history","useHistory","resetPage","useFuncDebounce","NeetoHeader","PLURAL","actionBlock","_jsxs","_Fragment","Button","disabled","tags","count","style","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","useTagsForm","createTags","isEdit","onClose","updateTags","tagModification","useUpdateTag","useCreateTag","tagOperation","_tagModification","mutate","isSubmitting","isPending","handleSubmit","_ref2","_values$description","resetForm","trim","tagData","payload","url","onSuccess","_tagOperation$onSucce","callback","onError","ManageTags","EDIT","initialValues","INITIAL_TAG_VALUES","inputReference","useRef","_useTagsForm","Pane","initialFocusRef","isOpen","Typography","weight","Form","formikProps","_objectSpread","onSubmit","Body","Input","unlimitedChars","maxLength","ref","Textarea","rows","Footer","ActionBlock","cancelButtonProps","submitButtonProps","Dropdown","MenuItem","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","e","stopPropagation","autoWidth","buttonProps","icon","MenuHorizontal","position","strategy","renderColumnData","columns","arguments","undefined","dataIndex","width","render","Tag","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","noDataProps","NoData","TableWrapper","hasPagination","totalCount","NeetoUITable","fixedHeight","allowRowClick","columnData","currentPageNumber","defaultPageSize","loading","paginationProps","showSizeChanger","rowData","rowSelection","scroll","x","onRowClick","event","record","rowIndex","Dashboard","deleteTags","displayMenu","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","value","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","handleAlertClose","_","_ref3","current","field","order","mergeLeft","_useDeleteTag","useDeleteTag","isDeletingTag","handleConfirmDelete","isNotDeleting","_deleteTags$onSuccess","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","isPresent","Container","SubHeader","leftActionBlock","rightActionBlock","RightBlock","filterProps","setIsOpen","keyword","FiltersBar","Alert","cancelButtonLabel","submitButtonLabel","message","Trans","i18nKey","NO_DATA_PRIMARY_BUTTON_PROPS","size","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","List","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","_tag$name$toLowerCase","toLowerCase","includes","target","selectedTagIds","selectedCounterTags","classames","Check","require","this","MergeAlert","withT","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Modal","lineHeight","destinationTag","entities","pluralize","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","Spinner","isHeaderFixed","NeetoUITagMergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","find","_tagType$label","createRoutes","path","component","exact","Tags","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":"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","x_google_ignoreList":[11]}
1
+ {"version":3,"file":"NeetoTags.js","sources":["../app/javascript/src/components/Menu.jsx","../app/javascript/src/components/Dashboard/constants.js","../app/javascript/src/components/Dashboard/Header.jsx","../app/javascript/src/hooks/useTagsForm.js","../app/javascript/src/components/Dashboard/ManageTags.jsx","../app/javascript/src/components/Dashboard/utils.jsx","../app/javascript/src/components/Dashboard/Table.jsx","../app/javascript/src/components/Dashboard/index.jsx","../app/javascript/src/components/Merge/constants.js","../app/javascript/src/components/Merge/utils.js","../app/javascript/src/components/Merge/List.jsx","../node_modules/pluralize/pluralize.js","../app/javascript/src/components/Merge/MergeAlert.jsx","../app/javascript/src/components/Merge/index.jsx","../app/javascript/src/components/utils.js","../app/javascript/src/components/index.jsx","../app/javascript/src/index.jsx"],"sourcesContent":["import { Tab } from \"neetoui\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tab className=\"mb-6\">\n {Object.values(tagTypes).map(tag => (\n <Tab.Item\n active={tagType.id === tag.id}\n description={tag.description}\n key={tag.id}\n onClick={() => {\n setTagType(tag);\n }}\n >\n {tag.label}\n </Tab.Item>\n ))}\n </Tab>\n);\n\nexport default Menu;\n","import { t } from \"i18next\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport * as yup from \"yup\";\n\nexport const TAG_NAME_MAX_LENGTH = 50;\n\nexport const TAG_DESCRIPTION_ROW_LENGTH = 3;\n\nexport const TAG_DESCRIPTION_MAX_LENGTH = 255;\n\nexport const TAG_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .typeError(t(\"neetoTags.validation.nameMustBeString\"))\n .required(t(\"neetoTags.validation.nameRequired\"))\n .max(\n TAG_NAME_MAX_LENGTH,\n t(\"neetoTags.validation.nameMaxLength\", {\n length: TAG_NAME_MAX_LENGTH,\n })\n ),\n description: yup\n .string()\n .typeError(t(\"neetoTags.validation.descriptionMustBeString\"))\n .nullable()\n .max(\n TAG_DESCRIPTION_MAX_LENGTH,\n t(\"neetoTags.validation.descriptionMaxLength\", {\n length: TAG_DESCRIPTION_MAX_LENGTH,\n })\n ),\n});\n\nexport const TAGS_FORMIK_PROPS = {\n validateOnBlur: true,\n validateOnChange: true,\n validationSchema: TAG_SCHEMA,\n};\n\nexport const DEFAULT_FILTERS = {\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const NEETO_FILTERS = [\n {\n key: \"name\",\n label: t(\"neetoTags.common.name\"),\n node: \"name\",\n type: \"text\",\n },\n];\n","import { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"src/common/constants\";\n\nconst Header = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-cy=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n style=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-cy=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-cy\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default Header;\n","import { useCreateTag, useUpdateTag } from \"./useTagsApi\";\n\nconst useTagsForm = ({\n createTags,\n goToFirstPage,\n isEdit,\n onClose,\n tagType,\n updateTags,\n}) => {\n const tagModification = isEdit ? useUpdateTag : useCreateTag;\n const tagOperation = isEdit ? updateTags : createTags;\n const { mutate, isPending: isSubmitting } = tagModification();\n\n const handleSubmit = (values, { resetForm }) => {\n values.description = values?.description?.trim();\n const tagData = { payload: { tag: values } };\n tagData.url = tagType.url;\n if (isEdit) {\n tagData.id = values.id;\n }\n\n mutate(tagData, {\n onSuccess: () => {\n !isEdit && goToFirstPage();\n tagOperation?.onSuccess?.callback();\n onClose();\n },\n onError: () => {\n resetForm();\n },\n });\n };\n\n return { handleSubmit, isSubmitting };\n};\n\nexport default useTagsForm;\n","import { useRef } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PANE_TYPES, INITIAL_TAG_VALUES } from \"common/constants\";\nimport useTagsForm from \"src/hooks/useTagsForm\";\n\nimport {\n TAGS_FORMIK_PROPS,\n TAG_DESCRIPTION_MAX_LENGTH,\n TAG_DESCRIPTION_ROW_LENGTH,\n TAG_NAME_MAX_LENGTH,\n} from \"./constants\";\n\nconst ManageTags = ({\n createTags,\n goToFirstPage,\n onClose,\n tag,\n tagType,\n type,\n updateTags,\n}) => {\n const { t } = useTranslation();\n const isEdit = type === PANE_TYPES.EDIT;\n const initialValues = isEdit ? tag : INITIAL_TAG_VALUES;\n const inputReference = useRef(null);\n\n const { handleSubmit, isSubmitting } = useTagsForm({\n createTags,\n goToFirstPage,\n isEdit,\n onClose,\n tagType,\n updateTags,\n });\n\n return (\n <Pane {...{ onClose }} initialFocusRef={inputReference} isOpen={!!type}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoTags.common.editTag\")\n : t(\"neetoTags.common.addNewTag\", SINGULAR)}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n ...TAGS_FORMIK_PROPS,\n initialValues,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"neeto-ui-flex neeto-ui-w-full neeto-ui-flex-col neeto-ui-gap-4\">\n <Input\n required\n unlimitedChars\n data-cy=\"tag-name-text-field\"\n label={t(\"neetoTags.common.name\")}\n maxLength={TAG_NAME_MAX_LENGTH}\n name=\"name\"\n ref={inputReference}\n />\n <Textarea\n unlimitedChars\n data-cy=\"tag-description-text-area\"\n label={t(\"neetoTags.common.description\")}\n maxLength={TAG_DESCRIPTION_MAX_LENGTH}\n name=\"description\"\n rows={TAG_DESCRIPTION_ROW_LENGTH}\n />\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{\n \"data-cy\": \"neeto-tags-manage-tag-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-tags-manage-tag-submit-button\",\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default ManageTags;\n","import { t } from \"i18next\";\nimport { noop } from \"neetocist\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Tag } from \"neetoui\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <Dropdown\n autoWidth\n buttonProps={{ style: \"text\" }}\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n title: t(\"neetoTags.common.name\"),\n dataIndex: \"name\",\n key: \"name\",\n width: \"300px\",\n render: (name, tag) => (\n <div className=\"neeto-tags-table__column\">\n <Tag label={name} style=\"secondary\" />\n {renderDropdownButton({ handleEdit, handleDelete, tag })}\n </div>\n ),\n },\n {\n title: t(\"neetoTags.common.description\"),\n dataIndex: \"description\",\n key: \"description\",\n width: \"400px\",\n render: description => description || \"-\",\n },\n ...columns,\n];\n","import TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div className=\"ntm-empty-state\" data-cy=\"empty-state-container\">\n <NoData\n {...{ primaryButtonProps, ...noDataProps }}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={data?.totalCount > filters.pageSize}>\n <NeetoUITable\n fixedHeight\n allowRowClick={!!onTagRowClick}\n columnData={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPageNumber={filters.page}\n defaultPageSize={filters.pageSize}\n loading={isLoading}\n paginationProps={{ showSizeChanger: false }}\n rowData={data?.tags}\n rowSelection={false}\n scroll={{ x: \"100%\" }}\n totalCount={data?.totalCount}\n onChange={handleOnChange}\n onRowClick={(event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n }\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/Container\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport { Alert, Typography } from \"neetoui\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"common/constants\";\nimport Menu from \"components/Menu\";\nimport { useDeleteTag, useFetchTags } from \"src/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport Header from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-cy\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container>\n <Header\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n <Typography\n className=\"neeto-ui-gray-800\"\n data-cy=\"neeto-tags-filtered-tags-count-text\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-cy\": \"neeto-tags-go-back-button\",\n size: \"small\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport classames from \"classnames\";\nimport { Check } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"neeto-tags-merge__list neeto-tags-border neeto-ui-border-gray-300 neeto-ui-shadow-xs neeto-ui-rounded-lg neeto-ui-flex neeto-ui-flex-col p-3 md:p-4 lg:p-6\">\n <Typography className=\"neeto-ui-mb-3\" style=\"h4\">\n {listType.label}\n </Typography>\n <Input\n data-cy={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"neeto-tags-merge__items\"\n data-cy={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-cy={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classames(\n \"neeto-ui-flex neeto-ui-justify-between neeto-ui-items-center neeto-tags-border neeto-ui-border-white neeto-ui-p-2 neeto-ui-rounded-lg neeto-ui-mt-2 neeto-ui-cursor-pointer\",\n {\n \"neeto-ui-bg-pastel-blue neeto-ui-border-primary-600\":\n selectedTagIds,\n \"hover:neeto-ui-bg-gray-100\": !selectedTagIds,\n \"neeto-ui-cursor-not-allowed neeto-ui-bg-gray-100 neeto-ui-text-gray-500\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","/* global define */\n\n(function (root, pluralize) {\n /* istanbul ignore else */\n if (typeof require === 'function' && typeof exports === 'object' && typeof module === 'object') {\n // Node.\n module.exports = pluralize();\n } else if (typeof define === 'function' && define.amd) {\n // AMD, registers as an anonymous module.\n define(function () {\n return pluralize();\n });\n } else {\n // Browser global.\n root.pluralize = pluralize();\n }\n})(this, function () {\n // Rule storage - pluralize and singularize need to be run sequentially,\n // while other rules can be optimized using an object for instant lookups.\n var pluralRules = [];\n var singularRules = [];\n var uncountables = {};\n var irregularPlurals = {};\n var irregularSingles = {};\n\n /**\n * Sanitize a pluralization rule to a usable regular expression.\n *\n * @param {(RegExp|string)} rule\n * @return {RegExp}\n */\n function sanitizeRule (rule) {\n if (typeof rule === 'string') {\n return new RegExp('^' + rule + '$', 'i');\n }\n\n return rule;\n }\n\n /**\n * Pass in a word token to produce a function that can replicate the case on\n * another word.\n *\n * @param {string} word\n * @param {string} token\n * @return {Function}\n */\n function restoreCase (word, token) {\n // Tokens are an exact match.\n if (word === token) return token;\n\n // Lower cased words. E.g. \"hello\".\n if (word === word.toLowerCase()) return token.toLowerCase();\n\n // Upper cased words. E.g. \"WHISKY\".\n if (word === word.toUpperCase()) return token.toUpperCase();\n\n // Title cased words. E.g. \"Title\".\n if (word[0] === word[0].toUpperCase()) {\n return token.charAt(0).toUpperCase() + token.substr(1).toLowerCase();\n }\n\n // Lower cased words. E.g. \"test\".\n return token.toLowerCase();\n }\n\n /**\n * Interpolate a regexp string.\n *\n * @param {string} str\n * @param {Array} args\n * @return {string}\n */\n function interpolate (str, args) {\n return str.replace(/\\$(\\d{1,2})/g, function (match, index) {\n return args[index] || '';\n });\n }\n\n /**\n * Replace a word using a rule.\n *\n * @param {string} word\n * @param {Array} rule\n * @return {string}\n */\n function replace (word, rule) {\n return word.replace(rule[0], function (match, index) {\n var result = interpolate(rule[1], arguments);\n\n if (match === '') {\n return restoreCase(word[index - 1], result);\n }\n\n return restoreCase(match, result);\n });\n }\n\n /**\n * Sanitize a word by passing in the word and sanitization rules.\n *\n * @param {string} token\n * @param {string} word\n * @param {Array} rules\n * @return {string}\n */\n function sanitizeWord (token, word, rules) {\n // Empty string or doesn't need fixing.\n if (!token.length || uncountables.hasOwnProperty(token)) {\n return word;\n }\n\n var len = rules.length;\n\n // Iterate over the sanitization rules and use the first one to match.\n while (len--) {\n var rule = rules[len];\n\n if (rule[0].test(word)) return replace(word, rule);\n }\n\n return word;\n }\n\n /**\n * Replace a word with the updated word.\n *\n * @param {Object} replaceMap\n * @param {Object} keepMap\n * @param {Array} rules\n * @return {Function}\n */\n function replaceWord (replaceMap, keepMap, rules) {\n return function (word) {\n // Get the correct token and case restoration functions.\n var token = word.toLowerCase();\n\n // Check against the keep object map.\n if (keepMap.hasOwnProperty(token)) {\n return restoreCase(word, token);\n }\n\n // Check against the replacement map for a direct word replacement.\n if (replaceMap.hasOwnProperty(token)) {\n return restoreCase(word, replaceMap[token]);\n }\n\n // Run all the rules against the word.\n return sanitizeWord(token, word, rules);\n };\n }\n\n /**\n * Check if a word is part of the map.\n */\n function checkWord (replaceMap, keepMap, rules, bool) {\n return function (word) {\n var token = word.toLowerCase();\n\n if (keepMap.hasOwnProperty(token)) return true;\n if (replaceMap.hasOwnProperty(token)) return false;\n\n return sanitizeWord(token, token, rules) === token;\n };\n }\n\n /**\n * Pluralize or singularize a word based on the passed in count.\n *\n * @param {string} word The word to pluralize\n * @param {number} count How many of the word exist\n * @param {boolean} inclusive Whether to prefix with the number (e.g. 3 ducks)\n * @return {string}\n */\n function pluralize (word, count, inclusive) {\n var pluralized = count === 1\n ? pluralize.singular(word) : pluralize.plural(word);\n\n return (inclusive ? count + ' ' : '') + pluralized;\n }\n\n /**\n * Pluralize a word.\n *\n * @type {Function}\n */\n pluralize.plural = replaceWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Check if a word is plural.\n *\n * @type {Function}\n */\n pluralize.isPlural = checkWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Singularize a word.\n *\n * @type {Function}\n */\n pluralize.singular = replaceWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Check if a word is singular.\n *\n * @type {Function}\n */\n pluralize.isSingular = checkWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Add a pluralization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addPluralRule = function (rule, replacement) {\n pluralRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add a singularization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addSingularRule = function (rule, replacement) {\n singularRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add an uncountable word rule.\n *\n * @param {(string|RegExp)} word\n */\n pluralize.addUncountableRule = function (word) {\n if (typeof word === 'string') {\n uncountables[word.toLowerCase()] = true;\n return;\n }\n\n // Set singular and plural references for the word.\n pluralize.addPluralRule(word, '$0');\n pluralize.addSingularRule(word, '$0');\n };\n\n /**\n * Add an irregular word definition.\n *\n * @param {string} single\n * @param {string} plural\n */\n pluralize.addIrregularRule = function (single, plural) {\n plural = plural.toLowerCase();\n single = single.toLowerCase();\n\n irregularSingles[single] = plural;\n irregularPlurals[plural] = single;\n };\n\n /**\n * Irregular rules.\n */\n [\n // Pronouns.\n ['I', 'we'],\n ['me', 'us'],\n ['he', 'they'],\n ['she', 'they'],\n ['them', 'them'],\n ['myself', 'ourselves'],\n ['yourself', 'yourselves'],\n ['itself', 'themselves'],\n ['herself', 'themselves'],\n ['himself', 'themselves'],\n ['themself', 'themselves'],\n ['is', 'are'],\n ['was', 'were'],\n ['has', 'have'],\n ['this', 'these'],\n ['that', 'those'],\n // Words ending in with a consonant and `o`.\n ['echo', 'echoes'],\n ['dingo', 'dingoes'],\n ['volcano', 'volcanoes'],\n ['tornado', 'tornadoes'],\n ['torpedo', 'torpedoes'],\n // Ends with `us`.\n ['genus', 'genera'],\n ['viscus', 'viscera'],\n // Ends with `ma`.\n ['stigma', 'stigmata'],\n ['stoma', 'stomata'],\n ['dogma', 'dogmata'],\n ['lemma', 'lemmata'],\n ['schema', 'schemata'],\n ['anathema', 'anathemata'],\n // Other irregular rules.\n ['ox', 'oxen'],\n ['axe', 'axes'],\n ['die', 'dice'],\n ['yes', 'yeses'],\n ['foot', 'feet'],\n ['eave', 'eaves'],\n ['goose', 'geese'],\n ['tooth', 'teeth'],\n ['quiz', 'quizzes'],\n ['human', 'humans'],\n ['proof', 'proofs'],\n ['carve', 'carves'],\n ['valve', 'valves'],\n ['looey', 'looies'],\n ['thief', 'thieves'],\n ['groove', 'grooves'],\n ['pickaxe', 'pickaxes'],\n ['passerby', 'passersby']\n ].forEach(function (rule) {\n return pluralize.addIrregularRule(rule[0], rule[1]);\n });\n\n /**\n * Pluralization rules.\n */\n [\n [/s?$/i, 's'],\n [/[^\\u0000-\\u007F]$/i, '$0'],\n [/([^aeiou]ese)$/i, '$1'],\n [/(ax|test)is$/i, '$1es'],\n [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, '$1es'],\n [/(e[mn]u)s?$/i, '$1s'],\n [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, '$1'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n [/(seraph|cherub)(?:im)?$/i, '$1im'],\n [/(her|at|gr)o$/i, '$1oes'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n [/sis$/i, 'ses'],\n [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n [/([^aeiouy]|qu)y$/i, '$1ies'],\n [/([^ch][ieo][ln])ey$/i, '$1ies'],\n [/(x|ch|ss|sh|zz)$/i, '$1es'],\n [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n [/\\b((?:tit)?m|l)(?:ice|ouse)$/i, '$1ice'],\n [/(pe)(?:rson|ople)$/i, '$1ople'],\n [/(child)(?:ren)?$/i, '$1ren'],\n [/eaux$/i, '$0'],\n [/m[ae]n$/i, 'men'],\n ['thou', 'you']\n ].forEach(function (rule) {\n return pluralize.addPluralRule(rule[0], rule[1]);\n });\n\n /**\n * Singularization rules.\n */\n [\n [/s$/i, ''],\n [/(ss)$/i, '$1'],\n [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n [/ies$/i, 'y'],\n [/\\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i, '$1ie'],\n [/\\b(mon|smil)ies$/i, '$1ey'],\n [/\\b((?:tit)?m|l)ice$/i, '$1ouse'],\n [/(seraph|cherub)im$/i, '$1'],\n [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i, '$1'],\n [/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i, '$1sis'],\n [/(movie|twelve|abuse|e[mn]u)s$/i, '$1'],\n [/(test)(?:is|es)$/i, '$1is'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n [/(alumn|alg|vertebr)ae$/i, '$1a'],\n [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n [/(matr|append)ices$/i, '$1ix'],\n [/(pe)(rson|ople)$/i, '$1rson'],\n [/(child)ren$/i, '$1'],\n [/(eau)x?$/i, '$1'],\n [/men$/i, 'man']\n ].forEach(function (rule) {\n return pluralize.addSingularRule(rule[0], rule[1]);\n });\n\n /**\n * Uncountable rules.\n */\n [\n // Singular words with no plurals.\n 'adulthood',\n 'advice',\n 'agenda',\n 'aid',\n 'aircraft',\n 'alcohol',\n 'ammo',\n 'analytics',\n 'anime',\n 'athletics',\n 'audio',\n 'bison',\n 'blood',\n 'bream',\n 'buffalo',\n 'butter',\n 'carp',\n 'cash',\n 'chassis',\n 'chess',\n 'clothing',\n 'cod',\n 'commerce',\n 'cooperation',\n 'corps',\n 'debris',\n 'diabetes',\n 'digestion',\n 'elk',\n 'energy',\n 'equipment',\n 'excretion',\n 'expertise',\n 'firmware',\n 'flounder',\n 'fun',\n 'gallows',\n 'garbage',\n 'graffiti',\n 'hardware',\n 'headquarters',\n 'health',\n 'herpes',\n 'highjinks',\n 'homework',\n 'housework',\n 'information',\n 'jeans',\n 'justice',\n 'kudos',\n 'labour',\n 'literature',\n 'machinery',\n 'mackerel',\n 'mail',\n 'media',\n 'mews',\n 'moose',\n 'music',\n 'mud',\n 'manga',\n 'news',\n 'only',\n 'personnel',\n 'pike',\n 'plankton',\n 'pliers',\n 'police',\n 'pollution',\n 'premises',\n 'rain',\n 'research',\n 'rice',\n 'salmon',\n 'scissors',\n 'series',\n 'sewage',\n 'shambles',\n 'shrimp',\n 'software',\n 'species',\n 'staff',\n 'swine',\n 'tennis',\n 'traffic',\n 'transportation',\n 'trout',\n 'tuna',\n 'wealth',\n 'welfare',\n 'whiting',\n 'wildebeest',\n 'wildlife',\n 'you',\n /pok[eé]mon$/i,\n // Regexes.\n /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n /deer$/i, // \"deer\", \"reindeer\"\n /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n /measles$/i,\n /o[iu]s$/i, // \"carnivorous\"\n /pox$/i, // \"chickpox\", \"smallpox\"\n /sheep$/i\n ].forEach(pluralize.addUncountableRule);\n\n return pluralize;\n});\n","import { PLURAL } from \"neetocommons/constants\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Modal, Typography, Button } from \"neetoui\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Modal isOpen={showModal} onClose={() => setShowModal(false)}>\n <Modal.Header>\n <Typography id=\"dialog1Title\" style=\"h2\">\n {t(\"neetoTags.common.mergeTag\", PLURAL)}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography lineHeight=\"normal\" style=\"body2\">\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Typography>\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <Button\n data-cy=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n style=\"tertiary\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-cy=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Modal.Footer>\n </Modal>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { Merge as NeetoUITagMergeIcon } from \"neetoicons\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { Button, NoData, Spinner } from \"neetoui\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"src/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-ui-w-full\">\n <Container isHeaderFixed>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <Button\n data-cy=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n }\n />\n {!data?.tags?.length ? (\n <div className=\"ntm-empty-state\" data-cy=\"empty-state-container\">\n <NoData\n {...{ primaryButtonProps }}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"neeto-tags-merge__wrapper\">\n <div className=\"neeto-tags-merge__container\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <NeetoUITagMergeIcon\n className=\"neeto-ui-self-center neeto-ui-text-gray-600 mx-1 md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n </div>\n )}\n </Container>\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </div>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\nimport \"./stylesheets/main.scss\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["Menu","_ref","tagTypes","tagType","setTagType","_jsx","Tab","className","children","Object","values","map","tag","Item","active","id","description","onClick","label","TAG_NAME_MAX_LENGTH","TAG_DESCRIPTION_ROW_LENGTH","TAG_DESCRIPTION_MAX_LENGTH","TAG_SCHEMA","yup","object","shape","name","string","typeError","t","required","max","length","nullable","TAGS_FORMIK_PROPS","validateOnBlur","validateOnChange","validationSchema","DEFAULT_FILTERS","page","DEFAULT_PAGE_INDEX","pageSize","DEFAULT_PAGE_SIZE","sortBy","orderBy","NEETO_FILTERS","key","node","type","Header","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","history","useHistory","resetPage","useFuncDebounce","NeetoHeader","PLURAL","actionBlock","_jsxs","_Fragment","Button","disabled","tags","count","style","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","useTagsForm","createTags","isEdit","onClose","updateTags","tagModification","useUpdateTag","useCreateTag","tagOperation","_tagModification","mutate","isSubmitting","isPending","handleSubmit","_ref2","_values$description","resetForm","trim","tagData","payload","url","onSuccess","_tagOperation$onSucce","callback","onError","ManageTags","EDIT","initialValues","INITIAL_TAG_VALUES","inputReference","useRef","_useTagsForm","Pane","initialFocusRef","isOpen","Typography","weight","Form","formikProps","_objectSpread","onSubmit","Body","Input","unlimitedChars","maxLength","ref","Textarea","rows","Footer","ActionBlock","cancelButtonProps","submitButtonProps","Dropdown","MenuItem","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","e","stopPropagation","autoWidth","buttonProps","icon","MenuHorizontal","position","strategy","renderColumnData","columns","arguments","undefined","dataIndex","width","render","Tag","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","noDataProps","NoData","TableWrapper","hasPagination","totalCount","NeetoUITable","fixedHeight","allowRowClick","columnData","currentPageNumber","defaultPageSize","loading","paginationProps","showSizeChanger","rowData","rowSelection","scroll","x","onRowClick","event","record","rowIndex","Dashboard","deleteTags","displayMenu","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","value","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","handleAlertClose","_","_ref3","current","field","order","mergeLeft","_useDeleteTag","useDeleteTag","isDeletingTag","handleConfirmDelete","isNotDeleting","_deleteTags$onSuccess","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","isPresent","Container","SubHeader","leftActionBlock","rightActionBlock","RightBlock","filterProps","setIsOpen","keyword","FiltersBar","Alert","cancelButtonLabel","submitButtonLabel","message","Trans","i18nKey","NO_DATA_PRIMARY_BUTTON_PROPS","size","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","List","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","toLowerCase","includes","target","selectedTagIds","selectedCounterTags","classames","Check","require","this","MergeAlert","withT","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Modal","lineHeight","destinationTag","entities","pluralize","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","Spinner","isHeaderFixed","NeetoUITagMergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","find","_tagType$label","createRoutes","path","component","exact","Tags","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":"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","x_google_ignoreList":[11]}