@blaze-cms/plugin-data-ui 0.141.0 → 0.141.1-alpha.0

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.
Files changed (53) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +13 -0
  3. package/lib/components/EntityManager/Entity/Entity.js +3 -2
  4. package/lib/components/EntityManager/Entity/Entity.js.map +1 -1
  5. package/lib/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +8 -6
  6. package/lib/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js.map +1 -1
  7. package/lib/components/EntityManager/Entity/SideBarRelations/index.js +1 -1
  8. package/lib/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  9. package/lib/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +7 -1
  10. package/lib/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js.map +1 -1
  11. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js +9 -5
  12. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -1
  13. package/lib/components/InfoBoxes/hooks/useInfoBox.js +6 -7
  14. package/lib/components/InfoBoxes/hooks/useInfoBox.js.map +1 -1
  15. package/lib/components/InfoBoxes/presentational/InfoBox.js +8 -3
  16. package/lib/components/InfoBoxes/presentational/InfoBox.js.map +1 -1
  17. package/lib/components/InfoBoxes/presentational/InfoBoxLabel.js +19 -0
  18. package/lib/components/InfoBoxes/presentational/InfoBoxLabel.js.map +1 -0
  19. package/lib/components/InfoBoxes/presentational/InfoBoxValue.js +37 -0
  20. package/lib/components/InfoBoxes/presentational/InfoBoxValue.js.map +1 -0
  21. package/lib/components/ListingTable/mappers/populate-rows.js +16 -17
  22. package/lib/components/ListingTable/mappers/populate-rows.js.map +1 -1
  23. package/lib-es/components/EntityManager/Entity/Entity.js +3 -2
  24. package/lib-es/components/EntityManager/Entity/Entity.js.map +1 -1
  25. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +7 -6
  26. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js.map +1 -1
  27. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js +1 -1
  28. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  29. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +7 -1
  30. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js.map +1 -1
  31. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js +8 -8
  32. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -1
  33. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js +2 -4
  34. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js.map +1 -1
  35. package/lib-es/components/InfoBoxes/presentational/InfoBox.js +8 -3
  36. package/lib-es/components/InfoBoxes/presentational/InfoBox.js.map +1 -1
  37. package/lib-es/components/InfoBoxes/presentational/InfoBoxLabel.js +12 -0
  38. package/lib-es/components/InfoBoxes/presentational/InfoBoxLabel.js.map +1 -0
  39. package/lib-es/components/InfoBoxes/presentational/InfoBoxValue.js +30 -0
  40. package/lib-es/components/InfoBoxes/presentational/InfoBoxValue.js.map +1 -0
  41. package/lib-es/components/ListingTable/mappers/populate-rows.js +9 -11
  42. package/lib-es/components/ListingTable/mappers/populate-rows.js.map +1 -1
  43. package/package.json +2 -2
  44. package/src/components/EntityManager/Entity/Entity.js +1 -1
  45. package/src/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +8 -4
  46. package/src/components/EntityManager/Entity/SideBarRelations/index.js +13 -11
  47. package/src/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +6 -1
  48. package/src/components/InfoBoxes/helpers/build-dynamic-query.js +12 -8
  49. package/src/components/InfoBoxes/hooks/useInfoBox.js +2 -2
  50. package/src/components/InfoBoxes/presentational/InfoBox.js +9 -3
  51. package/src/components/InfoBoxes/presentational/InfoBoxLabel.js +6 -0
  52. package/src/components/InfoBoxes/presentational/InfoBoxValue.js +29 -0
  53. package/src/components/ListingTable/mappers/populate-rows.js +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"InfoBox.js","names":["_propTypes","_interopRequireDefault","require","_react","InfoBox","_ref","items","infoBoxKey","infoBoxItems","map","item","Object","values","info","label","value","showLabel","concat","createElement","className","key","toLowerCase","filter","Boolean","_default","exports","propTypes","PropTypes","string","isRequired","array"],"sources":["../../../../src/components/InfoBoxes/presentational/InfoBox.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst InfoBox = ({ items, infoBoxKey }) => {\n if (!items) return null;\n\n const infoBoxItems = items.map(item =>\n Object.values(item)\n .map(info => {\n if (!info.label || !info.value) return null;\n const label = info.showLabel === false ? '' : `${info.label}: `;\n return (\n <div className=\"info-box--item\" key={`${infoBoxKey}-${info.label.toLowerCase()}`}>\n <div className=\"info-box--label\">{label}</div>\n <div className=\"info-box--value\">{info.value}</div>\n </div>\n );\n })\n .filter(Boolean)\n );\n\n return (\n <div className=\"info-box\" key={infoBoxKey}>\n <div className=\"info-box--container\">{infoBoxItems}</div>\n </div>\n );\n};\n\nexport default InfoBox;\n\nInfoBox.propTypes = {\n infoBoxKey: PropTypes.string.isRequired,\n items: PropTypes.array.isRequired\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAA8B;EAAA,IAAxBC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,UAAU,GAAAF,IAAA,CAAVE,UAAU;EAClC,IAAI,CAACD,KAAK,EAAE,OAAO,IAAI;EAEvB,IAAME,YAAY,GAAGF,KAAK,CAACG,GAAG,CAAC,UAAAC,IAAI;IAAA,OACjCC,MAAM,CAACC,MAAM,CAACF,IAAI,CAAC,CAChBD,GAAG,CAAC,UAAAI,IAAI,EAAI;MACX,IAAI,CAACA,IAAI,CAACC,KAAK,IAAI,CAACD,IAAI,CAACE,KAAK,EAAE,OAAO,IAAI;MAC3C,IAAMD,KAAK,GAAGD,IAAI,CAACG,SAAS,KAAK,KAAK,GAAG,EAAE,MAAAC,MAAA,CAAMJ,IAAI,CAACC,KAAK,OAAI;MAC/D,oBACEX,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC,gBAAgB;QAACC,GAAG,KAAAH,MAAA,CAAKV,UAAU,OAAAU,MAAA,CAAIJ,IAAI,CAACC,KAAK,CAACO,WAAW,CAAC,CAAC;MAAG,gBAC/ElB,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC;MAAiB,GAAEL,KAAW,CAAC,eAC9CX,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC;MAAiB,GAAEN,IAAI,CAACE,KAAW,CAC/C,CAAC;IAEV,CAAC,CAAC,CACDO,MAAM,CAACC,OAAO,CAAC;EAAA,CACpB,CAAC;EAED,oBACEpB,MAAA,YAAAe,aAAA;IAAKC,SAAS,EAAC,UAAU;IAACC,GAAG,EAAEb;EAAW,gBACxCJ,MAAA,YAAAe,aAAA;IAAKC,SAAS,EAAC;EAAqB,GAAEX,YAAkB,CACrD,CAAC;AAEV,CAAC;AAAC,IAAAgB,QAAA,GAAAC,OAAA,cAEarB,OAAO;AAEtBA,OAAO,CAACsB,SAAS,GAAG;EAClBnB,UAAU,EAAEoB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACvCvB,KAAK,EAAEqB,qBAAS,CAACG,KAAK,CAACD;AACzB,CAAC"}
1
+ {"version":3,"file":"InfoBox.js","names":["_propTypes","_interopRequireDefault","require","_react","_InfoBoxValue","_InfoBoxLabel","InfoBox","_ref","items","infoBoxKey","infoBoxItems","map","item","Object","values","info","label","value","createElement","className","key","concat","toLowerCase","filter","Boolean","_default","exports","propTypes","PropTypes","string","isRequired","array"],"sources":["../../../../src/components/InfoBoxes/presentational/InfoBox.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport InfoBoxValue from './InfoBoxValue';\nimport InfoBoxLabel from './InfoBoxLabel';\n\nconst InfoBox = ({ items, infoBoxKey }) => {\n if (!items) return null;\n\n const infoBoxItems = items.map(item =>\n Object.values(item)\n .map(info => {\n if (!info.label || !info.value) return null;\n\n return (\n <div className=\"info-box--item\" key={`${infoBoxKey}-${info.label.toLowerCase()}`}>\n <div className=\"info-box--label\">\n <InfoBoxLabel item={info} />\n </div>\n <div className=\"info-box--value\">\n <InfoBoxValue item={info} />\n </div>\n </div>\n );\n })\n .filter(Boolean)\n );\n\n return (\n <div className=\"info-box\" key={infoBoxKey}>\n <div className=\"info-box--container\">{infoBoxItems}</div>\n </div>\n );\n};\n\nexport default InfoBox;\n\nInfoBox.propTypes = {\n infoBoxKey: PropTypes.string.isRequired,\n items: PropTypes.array.isRequired\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,IAAMI,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAA8B;EAAA,IAAxBC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,UAAU,GAAAF,IAAA,CAAVE,UAAU;EAClC,IAAI,CAACD,KAAK,EAAE,OAAO,IAAI;EAEvB,IAAME,YAAY,GAAGF,KAAK,CAACG,GAAG,CAAC,UAAAC,IAAI;IAAA,OACjCC,MAAM,CAACC,MAAM,CAACF,IAAI,CAAC,CAChBD,GAAG,CAAC,UAAAI,IAAI,EAAI;MACX,IAAI,CAACA,IAAI,CAACC,KAAK,IAAI,CAACD,IAAI,CAACE,KAAK,EAAE,OAAO,IAAI;MAE3C,oBACEd,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC,gBAAgB;QAACC,GAAG,KAAAC,MAAA,CAAKZ,UAAU,OAAAY,MAAA,CAAIN,IAAI,CAACC,KAAK,CAACM,WAAW,CAAC,CAAC;MAAG,gBAC/EnB,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC;MAAiB,gBAC9BhB,MAAA,YAAAe,aAAA,CAACb,aAAA,WAAY;QAACO,IAAI,EAAEG;MAAK,CAAE,CACxB,CAAC,eACNZ,MAAA,YAAAe,aAAA;QAAKC,SAAS,EAAC;MAAiB,gBAC9BhB,MAAA,YAAAe,aAAA,CAACd,aAAA,WAAY;QAACQ,IAAI,EAAEG;MAAK,CAAE,CACxB,CACF,CAAC;IAEV,CAAC,CAAC,CACDQ,MAAM,CAACC,OAAO,CAAC;EAAA,CACpB,CAAC;EAED,oBACErB,MAAA,YAAAe,aAAA;IAAKC,SAAS,EAAC,UAAU;IAACC,GAAG,EAAEX;EAAW,gBACxCN,MAAA,YAAAe,aAAA;IAAKC,SAAS,EAAC;EAAqB,GAAET,YAAkB,CACrD,CAAC;AAEV,CAAC;AAAC,IAAAe,QAAA,GAAAC,OAAA,cAEapB,OAAO;AAEtBA,OAAO,CAACqB,SAAS,GAAG;EAClBlB,UAAU,EAAEmB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACvCtB,KAAK,EAAEoB,qBAAS,CAACG,KAAK,CAACD;AACzB,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ require("core-js/modules/es.array.concat.js");
9
+ var InfoBoxLabel = function InfoBoxLabel(_ref) {
10
+ var item = _ref.item,
11
+ _ref$suffix = _ref.suffix,
12
+ suffix = _ref$suffix === void 0 ? ' ' : _ref$suffix;
13
+ var label = item.label,
14
+ _item$showLabel = item.showLabel,
15
+ showLabel = _item$showLabel === void 0 ? true : _item$showLabel;
16
+ return showLabel ? "".concat(label, ":").concat(suffix) : null;
17
+ };
18
+ var _default = exports["default"] = InfoBoxLabel;
19
+ //# sourceMappingURL=InfoBoxLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoBoxLabel.js","names":["InfoBoxLabel","_ref","item","_ref$suffix","suffix","label","_item$showLabel","showLabel","concat","_default","exports"],"sources":["../../../../src/components/InfoBoxes/presentational/InfoBoxLabel.js"],"sourcesContent":["const InfoBoxLabel = ({ item, suffix = ' ' }) => {\n const { label, showLabel = true } = item;\n return showLabel ? `${label}:${suffix}` : null;\n};\n\nexport default InfoBoxLabel;\n"],"mappings":";;;;;;;;AAAA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAA+B;EAAA,IAAzBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAAC,WAAA,GAAAF,IAAA,CAAEG,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,GAAG,GAAAA,WAAA;EACxC,IAAQE,KAAK,GAAuBH,IAAI,CAAhCG,KAAK;IAAAC,eAAA,GAAuBJ,IAAI,CAAzBK,SAAS;IAATA,SAAS,GAAAD,eAAA,cAAG,IAAI,GAAAA,eAAA;EAC/B,OAAOC,SAAS,MAAAC,MAAA,CAAMH,KAAK,OAAAG,MAAA,CAAIJ,MAAM,IAAK,IAAI;AAChD,CAAC;AAAC,IAAAK,QAAA,GAAAC,OAAA,cAEaV,YAAY"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ require("core-js/modules/es.string.starts-with.js");
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _reactRouterDom = require("react-router-dom");
13
+ var InfoBoxValue = function InfoBoxValue(_ref) {
14
+ var _ref$item = _ref.item,
15
+ item = _ref$item === void 0 ? {} : _ref$item;
16
+ var url = item.url,
17
+ value = item.value;
18
+ if (url) {
19
+ if (url.startsWith('http')) {
20
+ return /*#__PURE__*/_react["default"].createElement("a", {
21
+ href: url,
22
+ target: "_blank",
23
+ rel: "noopener noreferrer"
24
+ }, value);
25
+ }
26
+ return /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
27
+ to: url,
28
+ target: "_blank"
29
+ }, value);
30
+ }
31
+ return value;
32
+ };
33
+ InfoBoxValue.propTypes = {
34
+ item: _propTypes["default"].object.isRequired
35
+ };
36
+ var _default = exports["default"] = InfoBoxValue;
37
+ //# sourceMappingURL=InfoBoxValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoBoxValue.js","names":["_propTypes","_interopRequireDefault","require","_react","_reactRouterDom","InfoBoxValue","_ref","_ref$item","item","url","value","startsWith","createElement","href","target","rel","Link","to","propTypes","PropTypes","object","isRequired","_default","exports"],"sources":["../../../../src/components/InfoBoxes/presentational/InfoBoxValue.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport { Link } from 'react-router-dom';\n\nconst InfoBoxValue = ({ item = {} }) => {\n const { url, value } = item;\n if (url) {\n if (url.startsWith('http')) {\n return (\n <a href={url} target=\"_blank\" rel=\"noopener noreferrer\">\n {value}\n </a>\n );\n }\n return (\n <Link to={url} target=\"_blank\">\n {value}\n </Link>\n );\n }\n\n return value;\n};\n\nInfoBoxValue.propTypes = {\n item: PropTypes.object.isRequired\n};\n\nexport default InfoBoxValue;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAEA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAsB;EAAA,IAAAC,SAAA,GAAAD,IAAA,CAAhBE,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,CAAC,CAAC,GAAAA,SAAA;EAC/B,IAAQE,GAAG,GAAYD,IAAI,CAAnBC,GAAG;IAAEC,KAAK,GAAKF,IAAI,CAAdE,KAAK;EAClB,IAAID,GAAG,EAAE;IACP,IAAIA,GAAG,CAACE,UAAU,CAAC,MAAM,CAAC,EAAE;MAC1B,oBACER,MAAA,YAAAS,aAAA;QAAGC,IAAI,EAAEJ,GAAI;QAACK,MAAM,EAAC,QAAQ;QAACC,GAAG,EAAC;MAAqB,GACpDL,KACA,CAAC;IAER;IACA,oBACEP,MAAA,YAAAS,aAAA,CAACR,eAAA,CAAAY,IAAI;MAACC,EAAE,EAAER,GAAI;MAACK,MAAM,EAAC;IAAQ,GAC3BJ,KACG,CAAC;EAEX;EAEA,OAAOA,KAAK;AACd,CAAC;AAEDL,YAAY,CAACa,SAAS,GAAG;EACvBV,IAAI,EAAEW,qBAAS,CAACC,MAAM,CAACC;AACzB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEalB,YAAY"}
@@ -29,6 +29,8 @@ var _react = _interopRequireDefault(require("react"));
29
29
  var _reactRouterDom = require("react-router-dom");
30
30
  var _TableActions = _interopRequireDefault(require("../TableActions"));
31
31
  var _constants = require("../../../constants");
32
+ var _InfoBoxValue = _interopRequireDefault(require("../../InfoBoxes/presentational/InfoBoxValue"));
33
+ var _InfoBoxLabel = _interopRequireDefault(require("../../InfoBoxes/presentational/InfoBoxLabel"));
32
34
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
33
35
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
34
36
  var formatRows = exports.formatRows = function formatRows(_ref) {
@@ -67,21 +69,18 @@ var buildArrayRowContent = function buildArrayRowContent(rowData) {
67
69
  if (!rowGroup.length) return null;
68
70
  return /*#__PURE__*/_react["default"].createElement("div", {
69
71
  className: "table-row-list__group"
70
- }, rowGroup.map(function (_ref2) {
71
- var label = _ref2.label,
72
- value = _ref2.value,
73
- url = _ref2.url;
72
+ }, rowGroup.map(function (item) {
74
73
  return /*#__PURE__*/_react["default"].createElement("div", {
75
74
  className: "table-row-list__group__item"
76
75
  }, /*#__PURE__*/_react["default"].createElement("span", {
77
76
  className: "table-row-list__group__item__label"
78
- }, " ", label, ":"), url && value ? /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
79
- to: url,
80
- role: "button",
77
+ }, /*#__PURE__*/_react["default"].createElement(_InfoBoxLabel["default"], {
78
+ item: item
79
+ })), /*#__PURE__*/_react["default"].createElement("span", {
81
80
  className: "table-row-list__group__item__value"
82
- }, value) : value && /*#__PURE__*/_react["default"].createElement("span", {
83
- className: "table-row-list__group__item__value"
84
- }, " ", value));
81
+ }, /*#__PURE__*/_react["default"].createElement(_InfoBoxValue["default"], {
82
+ item: item
83
+ })));
85
84
  }));
86
85
  }));
87
86
  };
@@ -107,8 +106,8 @@ var getColumnsAndLabels = function getColumnsAndLabels(listingProperties, allPro
107
106
  var labels = {};
108
107
  listingProperties.forEach(function (listingProperty) {
109
108
  var propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;
110
- var _ref3 = allProperties[propKey] || {},
111
- label = _ref3.label;
109
+ var _ref2 = allProperties[propKey] || {},
110
+ label = _ref2.label;
112
111
  columns.push(propKey);
113
112
  labels[propKey] = label || getSanitizedColumnLabel(propKey);
114
113
  });
@@ -119,11 +118,11 @@ var getColumnsAndLabels = function getColumnsAndLabels(listingProperties, allPro
119
118
  parsedRowData: parsedRowData
120
119
  };
121
120
  };
122
- var populateRows = exports.populateRows = function populateRows(_ref4) {
123
- var toggleModal = _ref4.toggleModal,
124
- url = _ref4.url,
125
- entitySchema = _ref4.entitySchema,
126
- rows = _ref4.rows;
121
+ var populateRows = exports.populateRows = function populateRows(_ref3) {
122
+ var toggleModal = _ref3.toggleModal,
123
+ url = _ref3.url,
124
+ entitySchema = _ref3.entitySchema,
125
+ rows = _ref3.rows;
127
126
  var schemaId = entitySchema.id,
128
127
  listingProperties = entitySchema.listingProperties,
129
128
  properties = entitySchema.properties,
@@ -1 +1 @@
1
- {"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_TableActions","_constants","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","map","data","editUrl","concat","id","rowProps","createElement","Link","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","_ref2","value","buildArrayRowData","dataGroups","groups","Math","ceil","currentStart","slice","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref3","parsedRowData","populateRows","_ref4","entitySchema","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(({ label, value, url }) => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\"> {label}:</span>\n {url && value ? (\n <Link to={url} role=\"button\" className=\"table-row-list__group__item__value\">\n {value}\n </Link>\n ) : (\n value && <span className=\"table-row-list__group__item__value\"> {value}</span>\n )}\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const dataGroups = [];\n const groups = Math.ceil(rowData.length / 3) || 1;\n for (let index = 0; index < groups; index += 1) {\n const currentStart = index * groups;\n dataGroups[index] = rowData.slice(currentStart, currentStart + 3);\n }\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
1
+ {"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_TableActions","_constants","_InfoBoxValue","_InfoBoxLabel","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","map","data","editUrl","concat","id","rowProps","createElement","Link","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","item","buildArrayRowData","dataGroups","groups","Math","ceil","currentStart","slice","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref2","parsedRowData","populateRows","_ref3","entitySchema","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\nimport InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(item => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\">\n <InfoBoxLabel item={item} />\n </span>\n <span className=\"table-row-list__group__item__value\">\n <InfoBoxValue item={item} />\n </span>\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const dataGroups = [];\n const groups = Math.ceil(rowData.length / 3) || 1;\n for (let index = 0; index < groups; index += 1) {\n const currentStart = index * groups;\n dataGroups[index] = rowData.slice(currentStart, currentStart + 3);\n }\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,aAAA,GAAAN,sBAAA,CAAAC,OAAA;AAAuE,SAAAM,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEvE,IAAMoB,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,SAAbA,UAAUA,CAAAE,IAAA;EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IAAEC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IAAEC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IAAAC,gBAAA,GAAAL,IAAA,CAAEM,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,MAAM,GAAAA,gBAAA;IAAEE,SAAS,GAAAP,IAAA,CAATO,SAAS;EAAA,OAClFN,IAAI,CAACO,GAAG,CAAC,UAAAC,IAAI,EAAI;IACf,IAAMC,OAAO,MAAAC,MAAA,CAAMT,GAAG,cAAAS,MAAA,CAAWF,IAAI,CAACG,EAAE,CAAE;IAC1C,IAAMC,QAAQ,GAAAvB,aAAA,CAAAA,aAAA,KACTmB,IAAI,WAAAf,gBAAA,iBACNY,WAAW,eACVrC,MAAA,YAAA6C,aAAA,CAAC1C,eAAA,CAAA2C,IAAI;MAACC,EAAE,EAAEN,OAAQ;MAACO,IAAI,EAAC;IAAQ,GAC7BR,IAAI,CAACH,WAAW,CACb,CAAC,EAEV;IACD,IAAI,CAACC,SAAS,EACZM,QAAQ,CAACK,OAAO,gBACdjD,MAAA,YAAA6C,aAAA,CAACzC,aAAA,WAAY;MAACqC,OAAO,EAAEA,OAAQ;MAACD,IAAI,EAAEA,IAAK;MAACU,eAAe,EAAEhB;IAAY,CAAE,CAC5E;IACH,OAAOU,QAAQ;EACjB,CAAC,CAAC;AAAA;AAEJ,IAAMO,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAGC,UAAU,EAAI;EAC5C,IAAIC,aAAa,GAAG,EAAE;EAEtB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGF,UAAU,CAAC7B,MAAM,EAAE+B,KAAK,IAAI,CAAC,EAAE;IACzD,IAAIA,KAAK,IAAIF,UAAU,CAACE,KAAK,CAAC,KAAKF,UAAU,CAACE,KAAK,CAAC,CAACC,WAAW,CAAC,CAAC,EAChEF,aAAa,MAAAX,MAAA,CAAMW,aAAa,OAAAX,MAAA,CAAIU,UAAU,CAACE,KAAK,CAAC,CAACE,WAAW,CAAC,CAAC,CAAE,CAAC,KACnEH,aAAa,IAAID,UAAU,CAACE,KAAK,CAAC;EACzC;EACA,OAAOD,aAAa;AACtB,CAAC;AAED,IAAMI,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,OAAO;EAAA,oBAClC1D,MAAA,YAAA6C,aAAA;IAAKc,SAAS,EAAC;EAAgB,GAC5BD,OAAO,CAACnB,GAAG,CAAC,UAAAqB,QAAQ,EAAI;IACvB,IAAI,CAACA,QAAQ,CAACrC,MAAM,EAAE,OAAO,IAAI;IACjC,oBACEvB,MAAA,YAAA6C,aAAA;MAAKc,SAAS,EAAC;IAAuB,GACnCC,QAAQ,CAACrB,GAAG,CAAC,UAAAsB,IAAI;MAAA,oBAChB7D,MAAA,YAAA6C,aAAA;QAAKc,SAAS,EAAC;MAA6B,gBAC1C3D,MAAA,YAAA6C,aAAA;QAAMc,SAAS,EAAC;MAAoC,gBAClD3D,MAAA,YAAA6C,aAAA,CAACtC,aAAA,WAAY;QAACsD,IAAI,EAAEA;MAAK,CAAE,CACvB,CAAC,eACP7D,MAAA,YAAA6C,aAAA;QAAMc,SAAS,EAAC;MAAoC,gBAClD3D,MAAA,YAAA6C,aAAA,CAACvC,aAAA,WAAY;QAACuD,IAAI,EAAEA;MAAK,CAAE,CACvB,CACH,CAAC;IAAA,CACP,CACE,CAAC;EAEV,CAAC,CACE,CAAC;AAAA,CACP;AAED,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGJ,OAAO,EAAI;EACnC,IAAMK,UAAU,GAAG,EAAE;EACrB,IAAMC,MAAM,GAAGC,IAAI,CAACC,IAAI,CAACR,OAAO,CAACnC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC;EACjD,KAAK,IAAI+B,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGU,MAAM,EAAEV,KAAK,IAAI,CAAC,EAAE;IAC9C,IAAMa,YAAY,GAAGb,KAAK,GAAGU,MAAM;IACnCD,UAAU,CAACT,KAAK,CAAC,GAAGI,OAAO,CAACU,KAAK,CAACD,YAAY,EAAEA,YAAY,GAAG,CAAC,CAAC;EACnE;EAEA,OAAOV,oBAAoB,CAACM,UAAU,CAAC;AACzC,CAAC;AAED,IAAMM,gBAAgB,GAAAvC,OAAA,CAAAuC,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAGrC,IAAI;EAAA,OAC3BA,IAAI,CAACO,GAAG,CAAC,UAAAmB,OAAO;IAAA,OACd9C,MAAM,CAACC,IAAI,CAAC6C,OAAO,CAAC,CAACY,MAAM,CAAC,UAACC,GAAG,EAAEC,GAAG,EAAK;MACxC,IAAMC,UAAU,GAAGC,KAAK,CAACC,OAAO,CAACjB,OAAO,CAACc,GAAG,CAAC,CAAC,GAC1CV,iBAAiB,CAACJ,OAAO,CAACc,GAAG,CAAC,CAAC,GAC/Bd,OAAO,CAACc,GAAG,CAAC;MAChB,OAAAnD,aAAA,CAAAA,aAAA,KAAYkD,GAAG,WAAA9C,gBAAA,iBAAG+C,GAAG,EAAGC,UAAU;IACpC,CAAC,EAAE,CAAC,CAAC,CAAC;EAAA,CACR,CAAC;AAAA;AAEH,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,iBAAiB,EAAEC,aAAa,EAAE9C,IAAI,EAAK;EACtE,IAAM+C,OAAO,GAAG,EAAE;EAClB,IAAMC,MAAM,GAAG,CAAC,CAAC;EAEjBH,iBAAiB,CAACrD,OAAO,CAAC,UAAAyD,eAAe,EAAI;IAC3C,IAAMC,OAAO,GAAGD,eAAe,CAACE,QAAQ,CAAC,GAAG,CAAC,GAAGF,eAAe,CAACG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAGH,eAAe;IAC/F,IAAAI,KAAA,GAAkBP,aAAa,CAACI,OAAO,CAAC,IAAI,CAAC,CAAC;MAAtC/C,KAAK,GAAAkD,KAAA,CAALlD,KAAK;IACb4C,OAAO,CAAC5D,IAAI,CAAC+D,OAAO,CAAC;IACrBF,MAAM,CAACE,OAAO,CAAC,GAAG/C,KAAK,IAAIgB,uBAAuB,CAAC+B,OAAO,CAAC;EAC7D,CAAC,CAAC;EACF,IAAMI,aAAa,GAAGjB,gBAAgB,CAACrC,IAAI,CAAC;EAE5C,OAAO;IAAE+C,OAAO,EAAPA,OAAO;IAAEC,MAAM,EAANA,MAAM;IAAEM,aAAa,EAAbA;EAAc,CAAC;AAC3C,CAAC;AAED,IAAMC,YAAY,GAAAzD,OAAA,CAAAyD,YAAA,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAiD;EAAA,IAA3CtD,WAAW,GAAAsD,KAAA,CAAXtD,WAAW;IAAED,GAAG,GAAAuD,KAAA,CAAHvD,GAAG;IAAEwD,YAAY,GAAAD,KAAA,CAAZC,YAAY;IAAEzD,IAAI,GAAAwD,KAAA,CAAJxD,IAAI;EAC1D,IACM0D,QAAQ,GAKVD,YAAY,CALd9C,EAAE;IACFkC,iBAAiB,GAIfY,YAAY,CAJdZ,iBAAiB;IACjBc,UAAU,GAGRF,YAAY,CAHdE,UAAU;IAAAC,qBAAA,GAGRH,YAAY,CAFdI,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;IACtBE,cAAc,GACZL,YAAY,CADdK,cAAc;EAGhB,IAAMxD,SAAS,GAAGoD,QAAQ,KAAK,SAAS;EACxC,IAAMK,aAAa,GAAG,CAACzD,SAAS,MAAAI,MAAA,KAAAsD,mBAAA,aAAOnB,iBAAiB,IAAEoB,kBAAO,SAAAD,mBAAA,aAAQnB,iBAAiB,CAAC;EAE3F,IAAMC,aAAa,GAAAzD,aAAA,CAAAA,aAAA,KAAQsE,UAAU,GAAKE,iBAAiB,CAAE;EAC7D,IAAAK,oBAAA,GAA2CtB,mBAAmB,CAC5DmB,aAAa,EACbjB,aAAa,EACb9C,IACF,CAAC;IAJO+C,OAAO,GAAAmB,oBAAA,CAAPnB,OAAO;IAAEC,MAAM,GAAAkB,oBAAA,CAANlB,MAAM;IAAEM,aAAa,GAAAY,oBAAA,CAAbZ,aAAa;EAKtC,IAAAa,QAAA,OAAAC,eAAA,aAAsBrB,OAAO;IAAtB1C,WAAW,GAAA8D,QAAA;EAElB,OAAO;IACLE,cAAc,EAAE,IAAI;IACpBC,IAAI,EAAE,IAAI;IACVvB,OAAO,EAAPA,OAAO;IACPC,MAAM,EAANA,MAAM;IACNuB,OAAO,MAAAP,mBAAA,aAAMF,cAAc,CAAC;IAC5B9D,IAAI,EAAEH,UAAU,CAAC;MAAEQ,WAAW,EAAXA,WAAW;MAAEL,IAAI,EAAEsD,aAAa;MAAErD,GAAG,EAAHA,GAAG;MAAEC,WAAW,EAAXA,WAAW;MAAEI,SAAS,EAATA;IAAU,CAAC,CAAC;IACnFA,SAAS,EAATA;EACF,CAAC;AACH,CAAC"}
@@ -37,7 +37,7 @@ const Entity = ({
37
37
  onViewUrl,
38
38
  refetchRecord
39
39
  }) => {
40
- var _schema$interfaces, _schema$interfaces2;
40
+ var _schema$interfaces, _schema$interfaces2, _formData$values;
41
41
  const [, setCurrentTabId] = useState(null);
42
42
  const [formValues, setFormValues] = useState(null);
43
43
  const [entitySchema, setEntitySchema] = useState(null);
@@ -353,7 +353,8 @@ const Entity = ({
353
353
  const showPageBuilderTabs = (schema === null || schema === void 0 ? void 0 : (_schema$interfaces = schema.interfaces) === null || _schema$interfaces === void 0 ? void 0 : _schema$interfaces.includes('page-builder/page-builder-template')) || (schema === null || schema === void 0 ? void 0 : (_schema$interfaces2 = schema.interfaces) === null || _schema$interfaces2 === void 0 ? void 0 : _schema$interfaces2.includes('page-builder/page-builder'));
354
354
  return /*#__PURE__*/React.createElement(RecordEditContextProvider, {
355
355
  value: {
356
- externalUpdateTime
356
+ externalUpdateTime,
357
+ updated: formData === null || formData === void 0 ? void 0 : (_formData$values = formData.values) === null || _formData$values === void 0 ? void 0 : _formData$values.updated
357
358
  }
358
359
  }, /*#__PURE__*/React.createElement("div", {
359
360
  className: "page"
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","names":["React","useEffect","useState","useRef","withRouter","Prompt","useApolloClient","PropTypes","RenderHook","getQuery","GET_CURRENT_TAB_ID","FormBuilder","parseFormValues","DeleteAction","CopyDataFromAction","useToasts","cloneDeep","getPageName","isFormEmpty","availableActions","SideBarRelations","Tabs","useCallbackDebounce","ENTITY_PUBLISHED","TEXT_CONTENT_TYPE","LEAVE_PAGE_MESSAGE","PREVIEW_INTERFACE","PAGE_BUILDER_FIELD_ID","PAGE_BUILDER_TEMPLATE_FIELD_ID","ERROR","SAVE_BUTTON_TEXTS","UNPUBLISHED_WARNING","EntityHeader","validateSideBarRelations","canViewPage","onViewUrlClick","getUpdatedFormValues","checkFulfilConditions","useToggle","InfoBoxes","RecordEditContextProvider","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_schema$interfaces","_schema$interfaces2","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","save","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","shouldUpdateState","id","clonedFormData","addToast","componentIsMounted","displayProperties","saveOnChange","onSubmit","current","actions","publish","identifier","interfaces","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","data","pageBuilderTemplateSet","currentEntity","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","shouldActiveSaveButton","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties","_excluded","slice","pageBuilder","filter","formValue","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","_objectSpread","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","event","preventDefault","parsedFormValues","update","handleUpdateFormData","submitParams","create","currentAction","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","isPublished","isUnpublish","appearance","autoDismiss","savedPageMessage","shared","triggerPublish","showModal","onViewUrlHandler","pageName","hasNewFormValues","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","className","toggleCopyModal","toggleModal","when","message","onClose","deleteAction","itemName","copyAction","hookKey","enabled","onTabChange","tabId","currentTabId","getIsFormValid","onChange","onExternalUpdate","propTypes","object","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/EntityManager/Entity/Entity.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport React, { useEffect, useState, useRef } from 'react';\nimport { withRouter, Prompt } from 'react-router-dom';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\nimport useCallbackDebounce from '../../hooks/useCallbackDebounce';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\n\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n\n const {\n displayProperties: { saveOnChange = false }\n } = schema;\n\n useCallbackDebounce(\n () => {\n isSaveButtonAvailable && onSubmit();\n },\n 500,\n [isSaveButtonAvailable],\n !saveOnChange\n );\n\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n saveOnChange={saveOnChange}\n entitySchema={entitySchema}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div className=\"page__content--fixed\">\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n />\n </Tabs>\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar page-sidebar--relations\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Entity.js","names":["React","useEffect","useState","useRef","withRouter","Prompt","useApolloClient","PropTypes","RenderHook","getQuery","GET_CURRENT_TAB_ID","FormBuilder","parseFormValues","DeleteAction","CopyDataFromAction","useToasts","cloneDeep","getPageName","isFormEmpty","availableActions","SideBarRelations","Tabs","useCallbackDebounce","ENTITY_PUBLISHED","TEXT_CONTENT_TYPE","LEAVE_PAGE_MESSAGE","PREVIEW_INTERFACE","PAGE_BUILDER_FIELD_ID","PAGE_BUILDER_TEMPLATE_FIELD_ID","ERROR","SAVE_BUTTON_TEXTS","UNPUBLISHED_WARNING","EntityHeader","validateSideBarRelations","canViewPage","onViewUrlClick","getUpdatedFormValues","checkFulfilConditions","useToggle","InfoBoxes","RecordEditContextProvider","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_schema$interfaces","_schema$interfaces2","_formData$values","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","save","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","shouldUpdateState","id","clonedFormData","addToast","componentIsMounted","displayProperties","saveOnChange","onSubmit","current","actions","publish","identifier","interfaces","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","data","pageBuilderTemplateSet","currentEntity","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","shouldActiveSaveButton","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties","_excluded","slice","pageBuilder","filter","formValue","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","_objectSpread","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","event","preventDefault","parsedFormValues","update","handleUpdateFormData","submitParams","create","currentAction","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","isPublished","isUnpublish","appearance","autoDismiss","savedPageMessage","shared","triggerPublish","showModal","onViewUrlHandler","pageName","hasNewFormValues","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","updated","className","toggleCopyModal","toggleModal","when","message","onClose","deleteAction","itemName","copyAction","hookKey","enabled","onTabChange","tabId","currentTabId","getIsFormValid","onChange","onExternalUpdate","propTypes","object","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/EntityManager/Entity/Entity.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport React, { useEffect, useState, useRef } from 'react';\nimport { withRouter, Prompt } from 'react-router-dom';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\nimport useCallbackDebounce from '../../hooks/useCallbackDebounce';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\n\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n\n const {\n displayProperties: { saveOnChange = false }\n } = schema;\n\n useCallbackDebounce(\n () => {\n isSaveButtonAvailable && onSubmit();\n },\n 500,\n [isSaveButtonAvailable],\n !saveOnChange\n );\n\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime, updated: formData?.values?.updated }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n saveOnChange={saveOnChange}\n entitySchema={entitySchema}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div className=\"page__content--fixed\">\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n />\n </Tabs>\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar page-sidebar--relations\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { useContext, useEffect } from 'react';
2
2
  import ProptTypes from 'prop-types';
3
3
  import { useQuery, gql } from '@apollo/client';
4
- import buildDynamicQuery from '../helpers/build-dynamic-query';
4
+ import buildDynamicQuery from '../../../../InfoBoxes/helpers/build-dynamic-query';
5
5
  import { RecordEditContext } from '../../../utils/RecordEditContext';
6
6
  const useCustomSidebarData = ({
7
7
  id,
@@ -9,13 +9,14 @@ const useCustomSidebarData = ({
9
9
  displayProperties
10
10
  }) => {
11
11
  const {
12
- externalUpdateTime
12
+ externalUpdateTime,
13
+ updated
13
14
  } = useContext(RecordEditContext);
14
- const query = buildDynamicQuery({
15
+ const query = displayProperties.adminMainInfoProperty && Array.isArray(displayProperties.adminMainInfoProperty) ? buildDynamicQuery({
15
16
  id,
16
17
  schema,
17
- displayProperties
18
- });
18
+ properties: displayProperties.adminMainInfoProperty
19
+ }) : null;
19
20
  const customSidebarInfoQuery = query || gql`
20
21
  query {
21
22
  __typename
@@ -34,7 +35,7 @@ const useCustomSidebarData = ({
34
35
  });
35
36
  useEffect(() => {
36
37
  refetch();
37
- }, [externalUpdateTime, refetch]);
38
+ }, [externalUpdateTime, updated, refetch]);
38
39
  return {
39
40
  data: data.__typename !== 'Query' ? data : null,
40
41
  loading,
@@ -1 +1 @@
1
- {"version":3,"file":"useCustomSidebarData.js","names":["useContext","useEffect","ProptTypes","useQuery","gql","buildDynamicQuery","RecordEditContext","useCustomSidebarData","id","schema","displayProperties","externalUpdateTime","query","customSidebarInfoQuery","data","loading","error","refetch","variables","skip","__typename","propTypes","object","isRequired"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js"],"sourcesContent":["import { useContext, useEffect } from 'react';\nimport ProptTypes from 'prop-types';\nimport { useQuery, gql } from '@apollo/client';\nimport buildDynamicQuery from '../helpers/build-dynamic-query';\nimport { RecordEditContext } from '../../../utils/RecordEditContext';\n\nconst useCustomSidebarData = ({ id, schema, displayProperties }) => {\n const { externalUpdateTime } = useContext(RecordEditContext);\n\n const query = buildDynamicQuery({ id, schema, displayProperties });\n\n const customSidebarInfoQuery =\n query ||\n gql`\n query {\n __typename\n }\n `;\n\n const { data = {}, loading, error, refetch } = useQuery(customSidebarInfoQuery, {\n variables: { id },\n skip: !query\n });\n\n useEffect(\n () => {\n refetch();\n },\n [externalUpdateTime, refetch]\n );\n\n return { data: data.__typename !== 'Query' ? data : null, loading, error };\n};\n\nexport default useCustomSidebarData;\n\nuseCustomSidebarData.propTypes = {\n displayProperties: ProptTypes.object.isRequired\n};\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC7C,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,QAAQ,EAAEC,GAAG,QAAQ,gBAAgB;AAC9C,OAAOC,iBAAiB,MAAM,gCAAgC;AAC9D,SAASC,iBAAiB,QAAQ,kCAAkC;AAEpE,MAAMC,oBAAoB,GAAGA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAkB,CAAC,KAAK;EAClE,MAAM;IAAEC;EAAmB,CAAC,GAAGX,UAAU,CAACM,iBAAiB,CAAC;EAE5D,MAAMM,KAAK,GAAGP,iBAAiB,CAAC;IAAEG,EAAE;IAAEC,MAAM;IAAEC;EAAkB,CAAC,CAAC;EAElE,MAAMG,sBAAsB,GAC1BD,KAAK,IACLR,GAAI;AACR;AACA;AACA;AACA,KAAK;EAEH,MAAM;IAAEU,IAAI,GAAG,CAAC,CAAC;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGd,QAAQ,CAACU,sBAAsB,EAAE;IAC9EK,SAAS,EAAE;MAAEV;IAAG,CAAC;IACjBW,IAAI,EAAE,CAACP;EACT,CAAC,CAAC;EAEFX,SAAS,CACP,MAAM;IACJgB,OAAO,CAAC,CAAC;EACX,CAAC,EACD,CAACN,kBAAkB,EAAEM,OAAO,CAC9B,CAAC;EAED,OAAO;IAAEH,IAAI,EAAEA,IAAI,CAACM,UAAU,KAAK,OAAO,GAAGN,IAAI,GAAG,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC;AAC5E,CAAC;AAED,eAAeT,oBAAoB;AAEnCA,oBAAoB,CAACc,SAAS,GAAG;EAC/BX,iBAAiB,EAAER,UAAU,CAACoB,MAAM,CAACC;AACvC,CAAC"}
1
+ {"version":3,"file":"useCustomSidebarData.js","names":["useContext","useEffect","ProptTypes","useQuery","gql","buildDynamicQuery","RecordEditContext","useCustomSidebarData","id","schema","displayProperties","externalUpdateTime","updated","query","adminMainInfoProperty","Array","isArray","properties","customSidebarInfoQuery","data","loading","error","refetch","variables","skip","__typename","propTypes","object","isRequired"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js"],"sourcesContent":["import { useContext, useEffect } from 'react';\nimport ProptTypes from 'prop-types';\nimport { useQuery, gql } from '@apollo/client';\nimport buildDynamicQuery from '../../../../InfoBoxes/helpers/build-dynamic-query';\nimport { RecordEditContext } from '../../../utils/RecordEditContext';\n\nconst useCustomSidebarData = ({ id, schema, displayProperties }) => {\n const { externalUpdateTime, updated } = useContext(RecordEditContext);\n\n const query =\n displayProperties.adminMainInfoProperty &&\n Array.isArray(displayProperties.adminMainInfoProperty)\n ? buildDynamicQuery({ id, schema, properties: displayProperties.adminMainInfoProperty })\n : null;\n\n const customSidebarInfoQuery =\n query ||\n gql`\n query {\n __typename\n }\n `;\n\n const { data = {}, loading, error, refetch } = useQuery(customSidebarInfoQuery, {\n variables: { id },\n skip: !query\n });\n\n useEffect(\n () => {\n refetch();\n },\n [externalUpdateTime, updated, refetch]\n );\n\n return { data: data.__typename !== 'Query' ? data : null, loading, error };\n};\n\nexport default useCustomSidebarData;\n\nuseCustomSidebarData.propTypes = {\n displayProperties: ProptTypes.object.isRequired\n};\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC7C,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,QAAQ,EAAEC,GAAG,QAAQ,gBAAgB;AAC9C,OAAOC,iBAAiB,MAAM,mDAAmD;AACjF,SAASC,iBAAiB,QAAQ,kCAAkC;AAEpE,MAAMC,oBAAoB,GAAGA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAkB,CAAC,KAAK;EAClE,MAAM;IAAEC,kBAAkB;IAAEC;EAAQ,CAAC,GAAGZ,UAAU,CAACM,iBAAiB,CAAC;EAErE,MAAMO,KAAK,GACTH,iBAAiB,CAACI,qBAAqB,IACvCC,KAAK,CAACC,OAAO,CAACN,iBAAiB,CAACI,qBAAqB,CAAC,GAClDT,iBAAiB,CAAC;IAAEG,EAAE;IAAEC,MAAM;IAAEQ,UAAU,EAAEP,iBAAiB,CAACI;EAAsB,CAAC,CAAC,GACtF,IAAI;EAEV,MAAMI,sBAAsB,GAC1BL,KAAK,IACLT,GAAI;AACR;AACA;AACA;AACA,KAAK;EAEH,MAAM;IAAEe,IAAI,GAAG,CAAC,CAAC;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGnB,QAAQ,CAACe,sBAAsB,EAAE;IAC9EK,SAAS,EAAE;MAAEf;IAAG,CAAC;IACjBgB,IAAI,EAAE,CAACX;EACT,CAAC,CAAC;EAEFZ,SAAS,CACP,MAAM;IACJqB,OAAO,CAAC,CAAC;EACX,CAAC,EACD,CAACX,kBAAkB,EAAEC,OAAO,EAAEU,OAAO,CACvC,CAAC;EAED,OAAO;IAAEH,IAAI,EAAEA,IAAI,CAACM,UAAU,KAAK,OAAO,GAAGN,IAAI,GAAG,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC;AAC5E,CAAC;AAED,eAAed,oBAAoB;AAEnCA,oBAAoB,CAACmB,SAAS,GAAG;EAC/BhB,iBAAiB,EAAER,UAAU,CAACyB,MAAM,CAACC;AACvC,CAAC"}
@@ -82,7 +82,7 @@ const SideBarRelations = ({
82
82
  className: "sidebar__status__wrapper"
83
83
  }, /*#__PURE__*/React.createElement("b", null, "Status"), /*#__PURE__*/React.createElement("span", {
84
84
  className: statusClassName
85
- }, formattedStatus)), formattedStatus === PUBLISHED && /*#__PURE__*/React.createElement("p", null, formattedStatus, " on: ", /*#__PURE__*/React.createElement("span", null, " ", formattedPublished))), !schema.displayProperties.adminMainInfoProperty && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("p", null, "Created: ", /*#__PURE__*/React.createElement("span", null, formattedCreated)), /*#__PURE__*/React.createElement("p", null, "Updated: ", /*#__PURE__*/React.createElement("span", null, formattedUpdated))), /*#__PURE__*/React.createElement(CustomSidebarInfoContainer, {
85
+ }, formattedStatus)), formattedStatus === PUBLISHED && /*#__PURE__*/React.createElement("p", null, formattedStatus, " on: ", /*#__PURE__*/React.createElement("span", null, " ", formattedPublished))), !schema.displayProperties.disableDefaultAdminInfo && formattedCreated && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("p", null, "Created: ", /*#__PURE__*/React.createElement("span", null, formattedCreated)), /*#__PURE__*/React.createElement("p", null, "Updated: ", /*#__PURE__*/React.createElement("span", null, formattedUpdated)))), /*#__PURE__*/React.createElement(CustomSidebarInfoContainer, {
86
86
  id: itemId,
87
87
  schema: schema,
88
88
  displayProperties: schema.displayProperties
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useState","useEffect","PropTypes","uuidv1","useApolloClient","getQuery","formFieldTypes","classnames","VersionsList","PUBLISHED","UNPUBLISHED","CustomSidebarInfoContainer","EntityNavLinks","SideBarRelations","schema","onChange","formData","entity","relation","RelationComponent","formattedStatus","formattedUpdated","formattedCreated","formattedPublished","status","client","relationsComponents","setRelationsComponents","fetchRelationSchema","entityIdentifier","data","getEntitySchemas","relationSchema","query","variables","identifier","allRelationComponents","Promise","all","relations","filter","showInForm","foreignKey","properties","map","id","staticData","itemId","itemEntity","interfaces","statusClassName","createElement","className","displayProperties","adminMainInfoProperty","Fragment","entitySchema","key","onSelect","propTypes","object","isRequired","func","defaultProps"],"sources":["../../../../../src/components/EntityManager/Entity/SideBarRelations/index.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport uuidv1 from 'uuid/v1';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { formFieldTypes } from '@blaze-cms/react-form-builder';\nimport classnames from 'classnames';\nimport { VersionsList } from '@blaze-cms/versioning-ui';\nimport { PUBLISHED, UNPUBLISHED } from '../../../../constants';\nimport CustomSidebarInfoContainer from './container/CustomSidebarInfoContainer';\nimport EntityNavLinks from '../EntitiyNavLinks';\n\nconst SideBarRelations = ({ schema, onChange, formData, entity }) => {\n const { relation: RelationComponent } = formFieldTypes;\n const {\n formattedStatus,\n formattedUpdated,\n formattedCreated,\n formattedPublished,\n status\n } = formData;\n const client = useApolloClient();\n\n const [relationsComponents, setRelationsComponents] = useState(null);\n\n useEffect(\n () => {\n (async () => {\n const fetchRelationSchema = async ({ entityIdentifier }) => {\n if (!entityIdentifier) return null;\n\n const {\n data: {\n getEntitySchemas: [relationSchema]\n }\n } = await client.query({\n query: getQuery('GET_ENTITY_SCHEMA'),\n variables: { identifier: entityIdentifier }\n });\n return relationSchema;\n };\n\n if (!relationsComponents && schema) {\n const allRelationComponents = await Promise.all(\n schema.relations\n .filter(({ showInForm, foreignKey }) => showInForm && schema.properties[foreignKey])\n .map(async relation => ({\n id: uuidv1(),\n staticData: relation,\n schema: await fetchRelationSchema(relation)\n }))\n );\n\n setRelationsComponents(allRelationComponents);\n }\n })();\n },\n [client, relationsComponents, schema, schema.relations]\n );\n const { id: itemId } = entity;\n const { identifier: itemEntity, interfaces } = schema;\n\n const statusClassName = classnames('sidebar__status__badge', {\n 'sidebar__status__badge--published': status === PUBLISHED,\n 'sidebar__status__badge--unpublished': status === UNPUBLISHED\n });\n\n return (\n <div className=\"sidebar\" data-testid=\"sideBarRelations-main-div\">\n <div className=\"sidebar__content\">\n <div className=\"sidebar__status\">\n {formattedCreated && (\n <div className=\"sidebar__top\">\n <div className=\"sidebar__status__wrapper\">\n <b>Status</b>\n <span className={statusClassName}>{formattedStatus}</span>\n </div>\n {formattedStatus === PUBLISHED && (\n <p>\n {formattedStatus} on: <span> {formattedPublished}</span>\n </p>\n )}\n </div>\n )}\n\n {!schema.displayProperties.adminMainInfoProperty && (\n <>\n <p>\n Created: <span>{formattedCreated}</span>\n </p>\n <p>\n Updated: <span>{formattedUpdated}</span>\n </p>\n </>\n )}\n\n <CustomSidebarInfoContainer\n id={itemId}\n schema={schema}\n displayProperties={schema.displayProperties}\n />\n </div>\n\n <VersionsList itemEntity={itemEntity} itemId={itemId} interfaces={interfaces} />\n <EntityNavLinks schema={schema} />\n\n {relationsComponents &&\n relationsComponents.map(({ id, staticData, schema: entitySchema }) => (\n <RelationComponent\n formData={formData}\n schema={entitySchema}\n key={id}\n staticData={staticData}\n onSelect={onChange}\n />\n ))}\n </div>\n </div>\n );\n};\n\nSideBarRelations.propTypes = {\n schema: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n formData: PropTypes.object.isRequired,\n entity: PropTypes.object\n};\n\nSideBarRelations.defaultProps = {\n entity: {}\n};\n\nexport default SideBarRelations;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","useState","useEffect","PropTypes","uuidv1","useApolloClient","getQuery","formFieldTypes","classnames","VersionsList","PUBLISHED","UNPUBLISHED","CustomSidebarInfoContainer","EntityNavLinks","SideBarRelations","schema","onChange","formData","entity","relation","RelationComponent","formattedStatus","formattedUpdated","formattedCreated","formattedPublished","status","client","relationsComponents","setRelationsComponents","fetchRelationSchema","entityIdentifier","data","getEntitySchemas","relationSchema","query","variables","identifier","allRelationComponents","Promise","all","relations","filter","showInForm","foreignKey","properties","map","id","staticData","itemId","itemEntity","interfaces","statusClassName","createElement","className","displayProperties","disableDefaultAdminInfo","Fragment","entitySchema","key","onSelect","propTypes","object","isRequired","func","defaultProps"],"sources":["../../../../../src/components/EntityManager/Entity/SideBarRelations/index.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport uuidv1 from 'uuid/v1';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { formFieldTypes } from '@blaze-cms/react-form-builder';\nimport classnames from 'classnames';\nimport { VersionsList } from '@blaze-cms/versioning-ui';\nimport { PUBLISHED, UNPUBLISHED } from '../../../../constants';\nimport CustomSidebarInfoContainer from './container/CustomSidebarInfoContainer';\nimport EntityNavLinks from '../EntitiyNavLinks';\n\nconst SideBarRelations = ({ schema, onChange, formData, entity }) => {\n const { relation: RelationComponent } = formFieldTypes;\n const {\n formattedStatus,\n formattedUpdated,\n formattedCreated,\n formattedPublished,\n status\n } = formData;\n const client = useApolloClient();\n\n const [relationsComponents, setRelationsComponents] = useState(null);\n\n useEffect(\n () => {\n (async () => {\n const fetchRelationSchema = async ({ entityIdentifier }) => {\n if (!entityIdentifier) return null;\n\n const {\n data: {\n getEntitySchemas: [relationSchema]\n }\n } = await client.query({\n query: getQuery('GET_ENTITY_SCHEMA'),\n variables: { identifier: entityIdentifier }\n });\n return relationSchema;\n };\n\n if (!relationsComponents && schema) {\n const allRelationComponents = await Promise.all(\n schema.relations\n .filter(({ showInForm, foreignKey }) => showInForm && schema.properties[foreignKey])\n .map(async relation => ({\n id: uuidv1(),\n staticData: relation,\n schema: await fetchRelationSchema(relation)\n }))\n );\n\n setRelationsComponents(allRelationComponents);\n }\n })();\n },\n [client, relationsComponents, schema, schema.relations]\n );\n const { id: itemId } = entity;\n const { identifier: itemEntity, interfaces } = schema;\n\n const statusClassName = classnames('sidebar__status__badge', {\n 'sidebar__status__badge--published': status === PUBLISHED,\n 'sidebar__status__badge--unpublished': status === UNPUBLISHED\n });\n\n return (\n <div className=\"sidebar\" data-testid=\"sideBarRelations-main-div\">\n <div className=\"sidebar__content\">\n <div className=\"sidebar__status\">\n {formattedCreated && (\n <div className=\"sidebar__top\">\n <div className=\"sidebar__status__wrapper\">\n <b>Status</b>\n <span className={statusClassName}>{formattedStatus}</span>\n </div>\n {formattedStatus === PUBLISHED && (\n <p>\n {formattedStatus} on: <span> {formattedPublished}</span>\n </p>\n )}\n </div>\n )}\n {!schema.displayProperties.disableDefaultAdminInfo &&\n formattedCreated && (\n <>\n <>\n <p>\n Created: <span>{formattedCreated}</span>\n </p>\n <p>\n Updated: <span>{formattedUpdated}</span>\n </p>\n </>\n </>\n )}\n\n <CustomSidebarInfoContainer\n id={itemId}\n schema={schema}\n displayProperties={schema.displayProperties}\n />\n </div>\n\n <VersionsList itemEntity={itemEntity} itemId={itemId} interfaces={interfaces} />\n <EntityNavLinks schema={schema} />\n\n {relationsComponents &&\n relationsComponents.map(({ id, staticData, schema: entitySchema }) => (\n <RelationComponent\n formData={formData}\n schema={entitySchema}\n key={id}\n staticData={staticData}\n onSelect={onChange}\n />\n ))}\n </div>\n </div>\n );\n};\n\nSideBarRelations.propTypes = {\n schema: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n formData: PropTypes.object.isRequired,\n entity: PropTypes.object\n};\n\nSideBarRelations.defaultProps = {\n entity: {}\n};\n\nexport default SideBarRelations;\n"],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import PropTypes from 'prop-types';
2
2
  import React from 'react';
3
+ import InfoBoxValue from '../../../../InfoBoxes/presentational/InfoBoxValue';
4
+ import InfoBoxLabel from '../../../../InfoBoxes/presentational/InfoBoxLabel';
3
5
  const CustomSidebarInfo = ({
4
6
  items,
5
7
  customSidebarInfoKey
@@ -7,7 +9,11 @@ const CustomSidebarInfo = ({
7
9
  if (!items) return null;
8
10
  const customSidebarInfoItems = items.map(item => Object.values(item).map(info => {
9
11
  if (!info.label || !info.value) return null;
10
- return /*#__PURE__*/React.createElement("p", null, info.label, ": ", /*#__PURE__*/React.createElement("span", null, info.value));
12
+ return /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement(InfoBoxLabel, {
13
+ item: info
14
+ }), /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(InfoBoxValue, {
15
+ item: info
16
+ })));
11
17
  }).filter(Boolean));
12
18
  return /*#__PURE__*/React.createElement("div", {
13
19
  className: "custom-sidebar-info",
@@ -1 +1 @@
1
- {"version":3,"file":"CustomSidebarInfo.js","names":["PropTypes","React","CustomSidebarInfo","items","customSidebarInfoKey","customSidebarInfoItems","map","item","Object","values","info","label","value","createElement","filter","Boolean","className","key","propTypes","string","isRequired","array"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst CustomSidebarInfo = ({ items, customSidebarInfoKey }) => {\n if (!items) return null;\n\n const customSidebarInfoItems = items.map(item =>\n Object.values(item)\n .map(info => {\n if (!info.label || !info.value) return null;\n\n return (\n <p>\n {info.label}: <span>{info.value}</span>\n </p>\n );\n })\n .filter(Boolean)\n );\n\n return (\n <div className=\"custom-sidebar-info\" key={customSidebarInfoKey}>\n <div className=\"custom-sidebar-info--container\">{customSidebarInfoItems}</div>\n </div>\n );\n};\n\nexport default CustomSidebarInfo;\n\nCustomSidebarInfo.propTypes = {\n customSidebarInfoKey: PropTypes.string.isRequired,\n items: PropTypes.array.isRequired\n};\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAqB,CAAC,KAAK;EAC7D,IAAI,CAACD,KAAK,EAAE,OAAO,IAAI;EAEvB,MAAME,sBAAsB,GAAGF,KAAK,CAACG,GAAG,CAACC,IAAI,IAC3CC,MAAM,CAACC,MAAM,CAACF,IAAI,CAAC,CAChBD,GAAG,CAACI,IAAI,IAAI;IACX,IAAI,CAACA,IAAI,CAACC,KAAK,IAAI,CAACD,IAAI,CAACE,KAAK,EAAE,OAAO,IAAI;IAE3C,oBACEX,KAAA,CAAAY,aAAA,YACGH,IAAI,CAACC,KAAK,EAAC,IAAE,eAAAV,KAAA,CAAAY,aAAA,eAAOH,IAAI,CAACE,KAAY,CACrC,CAAC;EAER,CAAC,CAAC,CACDE,MAAM,CAACC,OAAO,CACnB,CAAC;EAED,oBACEd,KAAA,CAAAY,aAAA;IAAKG,SAAS,EAAC,qBAAqB;IAACC,GAAG,EAAEb;EAAqB,gBAC7DH,KAAA,CAAAY,aAAA;IAAKG,SAAS,EAAC;EAAgC,GAAEX,sBAA4B,CAC1E,CAAC;AAEV,CAAC;AAED,eAAeH,iBAAiB;AAEhCA,iBAAiB,CAACgB,SAAS,GAAG;EAC5Bd,oBAAoB,EAAEJ,SAAS,CAACmB,MAAM,CAACC,UAAU;EACjDjB,KAAK,EAAEH,SAAS,CAACqB,KAAK,CAACD;AACzB,CAAC"}
1
+ {"version":3,"file":"CustomSidebarInfo.js","names":["PropTypes","React","InfoBoxValue","InfoBoxLabel","CustomSidebarInfo","items","customSidebarInfoKey","customSidebarInfoItems","map","item","Object","values","info","label","value","createElement","filter","Boolean","className","key","propTypes","string","isRequired","array"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport InfoBoxValue from '../../../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst CustomSidebarInfo = ({ items, customSidebarInfoKey }) => {\n if (!items) return null;\n\n const customSidebarInfoItems = items.map(item =>\n Object.values(item)\n .map(info => {\n if (!info.label || !info.value) return null;\n\n return (\n <p>\n <InfoBoxLabel item={info} />\n <span>\n <InfoBoxValue item={info} />\n </span>\n </p>\n );\n })\n .filter(Boolean)\n );\n\n return (\n <div className=\"custom-sidebar-info\" key={customSidebarInfoKey}>\n <div className=\"custom-sidebar-info--container\">{customSidebarInfoItems}</div>\n </div>\n );\n};\n\nexport default CustomSidebarInfo;\n\nCustomSidebarInfo.propTypes = {\n customSidebarInfoKey: PropTypes.string.isRequired,\n items: PropTypes.array.isRequired\n};\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,YAAY;AAClC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,YAAY,MAAM,mDAAmD;AAC5E,OAAOC,YAAY,MAAM,mDAAmD;AAE5E,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAqB,CAAC,KAAK;EAC7D,IAAI,CAACD,KAAK,EAAE,OAAO,IAAI;EAEvB,MAAME,sBAAsB,GAAGF,KAAK,CAACG,GAAG,CAACC,IAAI,IAC3CC,MAAM,CAACC,MAAM,CAACF,IAAI,CAAC,CAChBD,GAAG,CAACI,IAAI,IAAI;IACX,IAAI,CAACA,IAAI,CAACC,KAAK,IAAI,CAACD,IAAI,CAACE,KAAK,EAAE,OAAO,IAAI;IAE3C,oBACEb,KAAA,CAAAc,aAAA,yBACEd,KAAA,CAAAc,aAAA,CAACZ,YAAY;MAACM,IAAI,EAAEG;IAAK,CAAE,CAAC,eAC5BX,KAAA,CAAAc,aAAA,4BACEd,KAAA,CAAAc,aAAA,CAACb,YAAY;MAACO,IAAI,EAAEG;IAAK,CAAE,CACvB,CACL,CAAC;EAER,CAAC,CAAC,CACDI,MAAM,CAACC,OAAO,CACnB,CAAC;EAED,oBACEhB,KAAA,CAAAc,aAAA;IAAKG,SAAS,EAAC,qBAAqB;IAACC,GAAG,EAAEb;EAAqB,gBAC7DL,KAAA,CAAAc,aAAA;IAAKG,SAAS,EAAC;EAAgC,GAAEX,sBAA4B,CAC1E,CAAC;AAEV,CAAC;AAED,eAAeH,iBAAiB;AAEhCA,iBAAiB,CAACgB,SAAS,GAAG;EAC5Bd,oBAAoB,EAAEN,SAAS,CAACqB,MAAM,CAACC,UAAU;EACjDjB,KAAK,EAAEL,SAAS,CAACuB,KAAK,CAACD;AACzB,CAAC"}