@blaze-cms/plugin-data-ui 0.146.0-node18-core-styles-tooltips.0 → 0.146.0-node18-core-styles-tooltips.1

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 (140) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/package.json +3 -3
  3. package/lib-es/components/EntityDataListing/EntityDataListing.js +0 -33
  4. package/lib-es/components/EntityDataListing/EntityDataListing.js.map +0 -1
  5. package/lib-es/components/EntityDataListing/index.js +0 -3
  6. package/lib-es/components/EntityDataListing/index.js.map +0 -1
  7. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js +0 -30
  8. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js.map +0 -1
  9. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/index.js +0 -3
  10. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/index.js.map +0 -1
  11. package/lib-es/components/EntityManager/Entity/Entity.js +0 -447
  12. package/lib-es/components/EntityManager/Entity/Entity.js.map +0 -1
  13. package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js +0 -103
  14. package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js.map +0 -1
  15. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js +0 -45
  16. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js.map +0 -1
  17. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/index.js +0 -3
  18. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/index.js.map +0 -1
  19. package/lib-es/components/EntityManager/Entity/EntityHeader/index.js +0 -3
  20. package/lib-es/components/EntityManager/Entity/EntityHeader/index.js.map +0 -1
  21. package/lib-es/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js +0 -30
  22. package/lib-es/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js.map +0 -1
  23. package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +0 -29
  24. package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map +0 -1
  25. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +0 -49
  26. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js.map +0 -1
  27. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js +0 -117
  28. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js.map +0 -1
  29. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +0 -36
  30. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js.map +0 -1
  31. package/lib-es/components/EntityManager/Entity/actions-handlers/create/index.js +0 -5
  32. package/lib-es/components/EntityManager/Entity/actions-handlers/create/index.js.map +0 -1
  33. package/lib-es/components/EntityManager/Entity/actions-handlers/create/submit.js +0 -46
  34. package/lib-es/components/EntityManager/Entity/actions-handlers/create/submit.js.map +0 -1
  35. package/lib-es/components/EntityManager/Entity/actions-handlers/delete/delete.js +0 -32
  36. package/lib-es/components/EntityManager/Entity/actions-handlers/delete/delete.js.map +0 -1
  37. package/lib-es/components/EntityManager/Entity/actions-handlers/delete/index.js +0 -5
  38. package/lib-es/components/EntityManager/Entity/actions-handlers/delete/index.js.map +0 -1
  39. package/lib-es/components/EntityManager/Entity/actions-handlers/index.js +0 -12
  40. package/lib-es/components/EntityManager/Entity/actions-handlers/index.js.map +0 -1
  41. package/lib-es/components/EntityManager/Entity/actions-handlers/shared/index.js +0 -5
  42. package/lib-es/components/EntityManager/Entity/actions-handlers/shared/index.js.map +0 -1
  43. package/lib-es/components/EntityManager/Entity/actions-handlers/shared/publish.js +0 -39
  44. package/lib-es/components/EntityManager/Entity/actions-handlers/shared/publish.js.map +0 -1
  45. package/lib-es/components/EntityManager/Entity/actions-handlers/update/index.js +0 -5
  46. package/lib-es/components/EntityManager/Entity/actions-handlers/update/index.js.map +0 -1
  47. package/lib-es/components/EntityManager/Entity/actions-handlers/update/submit.js +0 -53
  48. package/lib-es/components/EntityManager/Entity/actions-handlers/update/submit.js.map +0 -1
  49. package/lib-es/components/EntityManager/Entity/index.js +0 -3
  50. package/lib-es/components/EntityManager/Entity/index.js.map +0 -1
  51. package/lib-es/components/EntityManager/EntityManager.js +0 -133
  52. package/lib-es/components/EntityManager/EntityManager.js.map +0 -1
  53. package/lib-es/components/EntityManager/index.js +0 -3
  54. package/lib-es/components/EntityManager/index.js.map +0 -1
  55. package/lib-es/components/EntityManager/utils/RecordEditContext/index.js +0 -6
  56. package/lib-es/components/EntityManager/utils/RecordEditContext/index.js.map +0 -1
  57. package/lib-es/components/EntityManager/utils/data-mappers.js +0 -55
  58. package/lib-es/components/EntityManager/utils/data-mappers.js.map +0 -1
  59. package/lib-es/components/EntityManager/utils/entity.js +0 -69
  60. package/lib-es/components/EntityManager/utils/entity.js.map +0 -1
  61. package/lib-es/components/EntityManager/utils/entityAvailableActions.js +0 -56
  62. package/lib-es/components/EntityManager/utils/entityAvailableActions.js.map +0 -1
  63. package/lib-es/components/EntityManager/utils/is-form-empty.js +0 -9
  64. package/lib-es/components/EntityManager/utils/is-form-empty.js.map +0 -1
  65. package/lib-es/components/EntityManager/utils/query.js +0 -23
  66. package/lib-es/components/EntityManager/utils/query.js.map +0 -1
  67. package/lib-es/components/InfoBoxes/InfoBoxTooltip.js +0 -36
  68. package/lib-es/components/InfoBoxes/InfoBoxTooltip.js.map +0 -1
  69. package/lib-es/components/InfoBoxes/InfoBoxes.js +0 -28
  70. package/lib-es/components/InfoBoxes/InfoBoxes.js.map +0 -1
  71. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js +0 -38
  72. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js.map +0 -1
  73. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js +0 -28
  74. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js.map +0 -1
  75. package/lib-es/components/InfoBoxes/hooks/useData.js +0 -39
  76. package/lib-es/components/InfoBoxes/hooks/useData.js.map +0 -1
  77. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js +0 -17
  78. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js.map +0 -1
  79. package/lib-es/components/InfoBoxes/index.js +0 -3
  80. package/lib-es/components/InfoBoxes/index.js.map +0 -1
  81. package/lib-es/components/InfoBoxes/presentational/InfoBox.js +0 -40
  82. package/lib-es/components/InfoBoxes/presentational/InfoBox.js.map +0 -1
  83. package/lib-es/components/InfoBoxes/presentational/InfoBoxLabel.js +0 -12
  84. package/lib-es/components/InfoBoxes/presentational/InfoBoxLabel.js.map +0 -1
  85. package/lib-es/components/InfoBoxes/presentational/InfoBoxValue.js +0 -30
  86. package/lib-es/components/InfoBoxes/presentational/InfoBoxValue.js.map +0 -1
  87. package/lib-es/components/ListingTable/ListingTable.js +0 -207
  88. package/lib-es/components/ListingTable/ListingTable.js.map +0 -1
  89. package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js +0 -57
  90. package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js.map +0 -1
  91. package/lib-es/components/ListingTable/ListingTableContent/index.js +0 -3
  92. package/lib-es/components/ListingTable/ListingTableContent/index.js.map +0 -1
  93. package/lib-es/components/ListingTable/TableActions/TableActions.js +0 -34
  94. package/lib-es/components/ListingTable/TableActions/TableActions.js.map +0 -1
  95. package/lib-es/components/ListingTable/TableActions/index.js +0 -3
  96. package/lib-es/components/ListingTable/TableActions/index.js.map +0 -1
  97. package/lib-es/components/ListingTable/index.js +0 -3
  98. package/lib-es/components/ListingTable/index.js.map +0 -1
  99. package/lib-es/components/ListingTable/mappers/populate-rows.js +0 -140
  100. package/lib-es/components/ListingTable/mappers/populate-rows.js.map +0 -1
  101. package/lib-es/components/ListingTable/service/index.js +0 -86
  102. package/lib-es/components/ListingTable/service/index.js.map +0 -1
  103. package/lib-es/components/Tabs/index.js +0 -40
  104. package/lib-es/components/Tabs/index.js.map +0 -1
  105. package/lib-es/components/hooks/useCallbackDebounce.js +0 -12
  106. package/lib-es/components/hooks/useCallbackDebounce.js.map +0 -1
  107. package/lib-es/constants.js +0 -39
  108. package/lib-es/constants.js.map +0 -1
  109. package/lib-es/icons/ContentIcon.js +0 -80
  110. package/lib-es/icons/ContentIcon.js.map +0 -1
  111. package/lib-es/icons/SettingsIcon.js +0 -36
  112. package/lib-es/icons/SettingsIcon.js.map +0 -1
  113. package/lib-es/icons/TaxonomyIcon.js +0 -60
  114. package/lib-es/icons/TaxonomyIcon.js.map +0 -1
  115. package/lib-es/icons/UsersIcon.js +0 -33
  116. package/lib-es/icons/UsersIcon.js.map +0 -1
  117. package/lib-es/icons/index.js +0 -6
  118. package/lib-es/icons/index.js.map +0 -1
  119. package/lib-es/index.js +0 -84
  120. package/lib-es/index.js.map +0 -1
  121. package/lib-es/utils/add-content-menu-items.js +0 -72
  122. package/lib-es/utils/add-content-menu-items.js.map +0 -1
  123. package/lib-es/utils/build-create-entity-mutation.js +0 -21
  124. package/lib-es/utils/build-create-entity-mutation.js.map +0 -1
  125. package/lib-es/utils/build-delete-entity-mutation.js +0 -18
  126. package/lib-es/utils/build-delete-entity-mutation.js.map +0 -1
  127. package/lib-es/utils/build-listing-query.js +0 -28
  128. package/lib-es/utils/build-listing-query.js.map +0 -1
  129. package/lib-es/utils/build-update-data-query.js +0 -24
  130. package/lib-es/utils/build-update-data-query.js.map +0 -1
  131. package/lib-es/utils/build-update-publish-unpublish-mutation.js +0 -22
  132. package/lib-es/utils/build-update-publish-unpublish-mutation.js.map +0 -1
  133. package/lib-es/utils/get-default-query-params.js +0 -17
  134. package/lib-es/utils/get-default-query-params.js.map +0 -1
  135. package/lib-es/utils/hoc/withContext.js +0 -8
  136. package/lib-es/utils/hoc/withContext.js.map +0 -1
  137. package/lib-es/utils/hooks/useToggle.js +0 -8
  138. package/lib-es/utils/hooks/useToggle.js.map +0 -1
  139. package/lib-es/utils/index.js +0 -3
  140. package/lib-es/utils/index.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.146.0-node18-core-styles-tooltips.1](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.0...v0.146.0-node18-core-styles-tooltips.1) (2025-06-20)
7
+
8
+ **Note:** Version bump only for package @blaze-cms/plugin-data-ui
9
+
10
+
11
+
12
+
13
+
6
14
  # [0.146.0-node18-core-styles-tooltips.0](https://github.com/thebyte9/blaze/compare/v0.145.0...v0.146.0-node18-core-styles-tooltips.0) (2025-06-18)
7
15
 
8
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-data-ui",
3
- "version": "0.146.0-node18-core-styles-tooltips.0",
3
+ "version": "0.146.0-node18-core-styles-tooltips.1",
4
4
  "description": "Blaze plugin data ui",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -31,7 +31,7 @@
31
31
  "@blaze-cms/core-errors": "0.146.0-node18-core-styles-tooltips.0",
32
32
  "@blaze-cms/plugin-render-hooks-ui": "0.146.0-node18-core-styles-tooltips.0",
33
33
  "@blaze-cms/react-form-builder": "0.146.0-node18-core-styles-tooltips.0",
34
- "@blaze-cms/react-page-builder": "0.146.0-node18-core-styles-tooltips.0",
34
+ "@blaze-cms/react-page-builder": "0.146.0-node18-core-styles-tooltips.1",
35
35
  "@blaze-cms/setup-ui": "0.146.0-node18-core-styles-tooltips.0",
36
36
  "@blaze-cms/versioning-ui": "0.146.0-node18-core-styles-tooltips.0",
37
37
  "@blaze-react/button": "0.8.0-alpha.82",
@@ -69,5 +69,5 @@
69
69
  "lib/*",
70
70
  "lib-es/*"
71
71
  ],
72
- "gitHead": "fc6d636ac61f994280bd9a08da2ba38a360e41d3"
72
+ "gitHead": "ddfab9ac3d59438939268c106917b092e4071071"
73
73
  }
@@ -1,33 +0,0 @@
1
- import { useQuery } from '@apollo/client';
2
- import React from 'react';
3
- import PropTypes from 'prop-types';
4
- import { getQuery } from '@blaze-cms/admin-ui-utils';
5
- import ListingTable from '../ListingTable/ListingTable';
6
- import { withContext } from '../../utils/hoc/withContext';
7
- const EntityDataListing = ({
8
- match
9
- }) => {
10
- const {
11
- params: {
12
- entityIdentifier: identifier
13
- }
14
- } = match;
15
- const {
16
- data: {
17
- getEntitySchemas = []
18
- } = {}
19
- } = useQuery(getQuery('GET_ENTITY_SCHEMA'), {
20
- variables: {
21
- identifier
22
- }
23
- });
24
- if (!getEntitySchemas.length) return '';
25
- return /*#__PURE__*/React.createElement(ListingTable, {
26
- entitySchema: getEntitySchemas[0]
27
- });
28
- };
29
- EntityDataListing.propTypes = {
30
- match: PropTypes.object.isRequired
31
- };
32
- export default withContext(EntityDataListing);
33
- //# sourceMappingURL=EntityDataListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityDataListing.js","names":["useQuery","React","PropTypes","getQuery","ListingTable","withContext","EntityDataListing","match","params","entityIdentifier","identifier","data","getEntitySchemas","variables","length","createElement","entitySchema","propTypes","object","isRequired"],"sources":["../../../src/components/EntityDataListing/EntityDataListing.js"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\n\nimport ListingTable from '../ListingTable/ListingTable';\nimport { withContext } from '../../utils/hoc/withContext';\n\nconst EntityDataListing = ({ match }) => {\n const {\n params: { entityIdentifier: identifier }\n } = match;\n\n const { data: { getEntitySchemas = [] } = {} } = useQuery(getQuery('GET_ENTITY_SCHEMA'), {\n variables: { identifier }\n });\n\n if (!getEntitySchemas.length) return '';\n\n return <ListingTable entitySchema={getEntitySchemas[0]} />;\n};\n\nEntityDataListing.propTypes = {\n match: PropTypes.object.isRequired\n};\n\nexport default withContext(EntityDataListing);\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,2BAA2B;AAEpD,OAAOC,YAAY,MAAM,8BAA8B;AACvD,SAASC,WAAW,QAAQ,6BAA6B;AAEzD,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC;AAAM,CAAC,KAAK;EACvC,MAAM;IACJC,MAAM,EAAE;MAAEC,gBAAgB,EAAEC;IAAW;EACzC,CAAC,GAAGH,KAAK;EAET,MAAM;IAAEI,IAAI,EAAE;MAAEC,gBAAgB,GAAG;IAAG,CAAC,GAAG,CAAC;EAAE,CAAC,GAAGZ,QAAQ,CAACG,QAAQ,CAAC,mBAAmB,CAAC,EAAE;IACvFU,SAAS,EAAE;MAAEH;IAAW;EAC1B,CAAC,CAAC;EAEF,IAAI,CAACE,gBAAgB,CAACE,MAAM,EAAE,OAAO,EAAE;EAEvC,oBAAOb,KAAA,CAAAc,aAAA,CAACX,YAAY;IAACY,YAAY,EAAEJ,gBAAgB,CAAC,CAAC;EAAE,CAAE,CAAC;AAC5D,CAAC;AAEDN,iBAAiB,CAACW,SAAS,GAAG;EAC5BV,KAAK,EAAEL,SAAS,CAACgB,MAAM,CAACC;AAC1B,CAAC;AAED,eAAed,WAAW,CAACC,iBAAiB,CAAC","ignoreList":[]}
@@ -1,3 +0,0 @@
1
- import EntityDataListing from './EntityDataListing';
2
- export default EntityDataListing;
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["EntityDataListing"],"sources":["../../../src/components/EntityDataListing/index.js"],"sourcesContent":["import EntityDataListing from './EntityDataListing';\n\nexport default EntityDataListing;\n"],"mappings":"AAAA,OAAOA,iBAAiB,MAAM,qBAAqB;AAEnD,eAAeA,iBAAiB","ignoreList":[]}
@@ -1,30 +0,0 @@
1
- import { Link } from 'react-router-dom';
2
- import React from 'react';
3
- const EntityNavLinks = ({
4
- schema
5
- }) => {
6
- if (!schema) return null;
7
- const {
8
- displayProperties: {
9
- adminSectionNavigation
10
- }
11
- } = schema;
12
- if (!adminSectionNavigation) return null;
13
- const links = Object.entries(adminSectionNavigation).map(([k, v]) => {
14
- const {
15
- label,
16
- uri
17
- } = v;
18
- const Wrapper = uri.startsWith('#') ? 'a' : Link;
19
- return /*#__PURE__*/React.createElement(Wrapper, {
20
- className: "entity-section-link",
21
- href: uri,
22
- to: uri
23
- }, label);
24
- });
25
- return /*#__PURE__*/React.createElement("div", {
26
- className: "entity-section-links"
27
- }, links);
28
- };
29
- export default EntityNavLinks;
30
- //# sourceMappingURL=EntityNavLinks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityNavLinks.js","names":["Link","React","EntityNavLinks","schema","displayProperties","adminSectionNavigation","links","Object","entries","map","k","v","label","uri","Wrapper","startsWith","createElement","className","href","to"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js"],"sourcesContent":["import { Link } from 'react-router-dom';\nimport React from 'react';\n\nconst EntityNavLinks = ({ schema }) => {\n if (!schema) return null;\n\n const {\n displayProperties: { adminSectionNavigation }\n } = schema;\n\n if (!adminSectionNavigation) return null;\n\n const links = Object.entries(adminSectionNavigation).map(([k, v]) => {\n const { label, uri } = v;\n const Wrapper = uri.startsWith('#') ? 'a' : Link;\n\n return (\n <Wrapper className=\"entity-section-link\" href={uri} to={uri}>\n {label}\n </Wrapper>\n );\n });\n\n return <div className=\"entity-section-links\">{links}</div>;\n};\n\nexport default EntityNavLinks;\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,kBAAkB;AACvC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,cAAc,GAAGA,CAAC;EAAEC;AAAO,CAAC,KAAK;EACrC,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,MAAM;IACJC,iBAAiB,EAAE;MAAEC;IAAuB;EAC9C,CAAC,GAAGF,MAAM;EAEV,IAAI,CAACE,sBAAsB,EAAE,OAAO,IAAI;EAExC,MAAMC,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACH,sBAAsB,CAAC,CAACI,GAAG,CAAC,CAAC,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAK;IACnE,MAAM;MAAEC,KAAK;MAAEC;IAAI,CAAC,GAAGF,CAAC;IACxB,MAAMG,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGf,IAAI;IAEhD,oBACEC,KAAA,CAAAe,aAAA,CAACF,OAAO;MAACG,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEL,GAAI;MAACM,EAAE,EAAEN;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOX,KAAA,CAAAe,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEX,KAAW,CAAC;AAC5D,CAAC;AAED,eAAeJ,cAAc","ignoreList":[]}
@@ -1,3 +0,0 @@
1
- import EntityNavLinks from './EntityNavLinks';
2
- export default EntityNavLinks;
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["EntityNavLinks"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/index.js"],"sourcesContent":["import EntityNavLinks from './EntityNavLinks';\n\nexport default EntityNavLinks;\n"],"mappings":"AAAA,OAAOA,cAAc,MAAM,kBAAkB;AAE7C,eAAeA,cAAc","ignoreList":[]}
@@ -1,447 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- const _excluded = ["isValid", "fields", "isNewValueSet", "valuesChecked", "currentField", "value"];
4
- 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; }
5
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
- /* eslint-disable no-undef */
7
- import React, { useEffect, useState, useRef } from 'react';
8
- import { withRouter, Prompt } from 'react-router-dom';
9
- import { useApolloClient } from '@apollo/client';
10
- import PropTypes from 'prop-types';
11
- import { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';
12
- import { getQuery } from '@blaze-cms/admin-ui-utils';
13
- import { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';
14
- import { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';
15
- import { useToasts } from '@blaze-react/toaster';
16
- import cloneDeep from 'lodash.clonedeep';
17
- import { getPageName } from '../utils/data-mappers';
18
- import availableActions from './actions-handlers';
19
- import SideBarRelations from './SideBarRelations';
20
- import useCallbackDebounce from '../../hooks/useCallbackDebounce';
21
- import { 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 } from '../../../constants';
22
- import EntityHeader from './EntityHeader';
23
- import { validateSideBarRelations, canViewPage, onViewUrlClick, getUpdatedFormValues, checkFulfilConditions } from '../utils/entity';
24
- import useToggle from '../../../utils/hooks/useToggle';
25
- import InfoBoxes from '../../InfoBoxes/InfoBoxes';
26
- import { RecordEditContextProvider } from '../utils/RecordEditContext';
27
- const Entity = ({
28
- formData,
29
- entity,
30
- schema,
31
- previousQuery,
32
- action,
33
- history,
34
- updateFormData,
35
- onViewUrl,
36
- refetchRecord
37
- }) => {
38
- var _formData$values;
39
- const [formValues, setFormValues] = useState(null);
40
- const [entitySchema, setEntitySchema] = useState(null);
41
- const [entityData, setEntityData] = useState(null);
42
- const [entityIdentifier, setEntityIdentifier] = useState(null);
43
- const [pageTitle, setPageTitle] = useState('');
44
- const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);
45
- const [entityIsPublished, setEntityIsPublish] = useState(formData && formData.values && formData.values.status);
46
- const [isEnablePublishButton, setEnablePublishButton] = useState(false);
47
- const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);
48
- const [modalStatus, setModalStatus] = useToggle(false);
49
- const [copyModalStatus, setCopyModalStatus] = useToggle(false);
50
- const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);
51
- const [shouldCopyData, setShouldCopyData] = useState(false);
52
- const [isFormValid, setIsFormValid] = useState(false);
53
- const [formDataFromCopy, setFormDataFromCopy] = useState(null);
54
- const [newUpdatedDate, setNewUpdatedDate] = useState(null);
55
- const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);
56
- const [externalUpdateTime, setExternalUpdateTime] = useState(null);
57
- const [suppressPrompt, setSuppressPrompt] = useState(false);
58
- const isCreatePage = history.location.pathname.includes('create');
59
- const [isNewEntity, setIsNewEntity] = useState(isCreatePage);
60
- const client = useApolloClient();
61
- const shouldUpdateState = !entityIdentifier || checkFulfilConditions(entity, schema, previousQuery, !entityData) || entityData && entityData.id !== entity.id;
62
- const clonedFormData = cloneDeep(formData);
63
- const {
64
- addToast
65
- } = useToasts();
66
-
67
- // Here's how we'll keep track of our component's mounted state
68
- const componentIsMounted = useRef(true);
69
- const {
70
- displayProperties: {
71
- saveOnChange = false
72
- }
73
- } = schema;
74
- useCallbackDebounce(() => {
75
- isSaveButtonAvailable && onSubmit();
76
- }, 500, [isSaveButtonAvailable], !saveOnChange);
77
- useEffect(() => () => {
78
- componentIsMounted.current = false;
79
- }, []); // Using an empty dependency array ensures this only runs on unmount
80
-
81
- useEffect(() => {
82
- if (shouldUpdateState) {
83
- setSaveButtonText(SAVE_BUTTON_TEXTS.save);
84
- setEntityData(entity);
85
- setPageTitle(getPageName(schema.displayProperties, entity));
86
- setEntityIsPublish(entity.status);
87
- setEntitySchema(schema);
88
- setEnablePublishButton(schema.actions.publish);
89
- setEntityIdentifier(schema.identifier);
90
- setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));
91
- }
92
- if (formData && pageBuilderTemplateStatus) {
93
- const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;
94
- client.writeQuery({
95
- query: getQuery('GET_PB_TEMPLATE_STATUS'),
96
- data: {
97
- pageBuilderTemplateSet: isPageBuilderTemplateSet,
98
- pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''
99
- }
100
- });
101
- }
102
- if (schema) {
103
- client.writeQuery({
104
- query: getQuery('GET_CURRENT_ENTITY'),
105
- data: {
106
- currentEntity: schema.id
107
- }
108
- });
109
- }
110
- }, [client, entity, entityData, formData, formValues, pageBuilderTemplateStatus, previousQuery, schema, shouldUpdateState]);
111
- const getFullUrl = async () => {
112
- const query = getQuery('GET_ENTITY_URL');
113
- const {
114
- data: {
115
- getEntityUrl = ''
116
- } = {}
117
- } = await client.query({
118
- query,
119
- variables: {
120
- itemId: entity.id,
121
- itemEntity: schema.id,
122
- fullUrl: true
123
- },
124
- fetchPolicy: 'network-only'
125
- });
126
- return getEntityUrl;
127
- };
128
- const getFormValues = values => {
129
- if (componentIsMounted.current) {
130
- setFormValues(values);
131
- }
132
- };
133
- const onChangeSideBarRelations = ({
134
- id,
135
- value
136
- }, requiredChildField) => {
137
- const updatedFormValues = getUpdatedFormValues({
138
- id,
139
- value,
140
- requiredChildField,
141
- formValues
142
- });
143
- const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);
144
- if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {
145
- setIsSaveButtonAvailable(true);
146
- setSaveButtonText(SAVE_BUTTON_TEXTS.save);
147
- } else if (componentIsMounted.current) {
148
- setIsSaveButtonAvailable(false);
149
- }
150
- if (componentIsMounted.current) {
151
- setFormValues(updatedFormValues);
152
- }
153
- };
154
- const onChangeFormValues = async _ref => {
155
- let {
156
- isValid,
157
- fields,
158
- isNewValueSet,
159
- valuesChecked,
160
- currentField,
161
- value: fieldValue
162
- } = _ref,
163
- otherProps = _objectWithoutProperties(_ref, _excluded);
164
- let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];
165
- if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {
166
- const pageBuilderTemplateId = fieldValue;
167
- client.writeQuery({
168
- query: getQuery('GET_PB_TEMPLATE_STATUS'),
169
- data: {
170
- pageBuilderTemplateSet: !!pageBuilderTemplateId,
171
- pageBuilderTemplateId
172
- }
173
- });
174
- if (componentIsMounted.current) {
175
- setPageBuilderTemplateStatus(false);
176
- }
177
- const pageBuilder = updatedFormValues.filter(formValue => formValue.id === PAGE_BUILDER_FIELD_ID);
178
- if (pageBuilderTemplateId) {
179
- const {
180
- data = {}
181
- } = await client.query({
182
- query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),
183
- variables: {
184
- parent: {
185
- pageBuilder: pageBuilder[0].value,
186
- pageBuilderTemplateId
187
- },
188
- entityIdentifier
189
- }
190
- });
191
- if (data && data.mergePageBuilderTemplateChanges) {
192
- updatedFormValues = updatedFormValues.map(updatedFormValue => {
193
- if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {
194
- return _objectSpread(_objectSpread({}, updatedFormValue), {}, {
195
- value: data.mergePageBuilderTemplateChanges
196
- });
197
- }
198
- return updatedFormValue;
199
- });
200
- }
201
- }
202
- }
203
- const itemsToAdd = [];
204
- if (formValues && formValues.length > updatedFormValues.length) {
205
- [...updatedFormValues, ...formValues].forEach(item => {
206
- const index = updatedFormValues.findIndex(value => value.id === item.id);
207
- if (index === -1) {
208
- itemsToAdd.push(item);
209
- }
210
- });
211
- }
212
- const [updatedEntity = null] = fields.filter(({
213
- id
214
- }) => id === 'name');
215
- updatedEntity && setPageTitle(updatedEntity.value);
216
- const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;
217
- if (componentIsMounted.current) {
218
- setIsFormValid(isValid);
219
- }
220
- if (isValid && isNewValueSet && componentIsMounted.current) {
221
- setIsSaveButtonAvailable(true);
222
- setSaveButtonText(SAVE_BUTTON_TEXTS.save);
223
- }
224
- if (isNotValidOrNotNewValueSet && componentIsMounted.current) {
225
- setIsSaveButtonAvailable(false);
226
- }
227
- if (componentIsMounted.current) {
228
- setFormValues([...updatedFormValues, ...itemsToAdd]);
229
- }
230
- };
231
- const onSubmit = event => {
232
- event && event.preventDefault();
233
- if (!isSaveButtonAvailable) return null;
234
- if (isCreatePage) {
235
- setSuppressPrompt(true);
236
- }
237
- const parsedFormValues = parseFormValues(formValues);
238
- const updatedFormValues = newUpdatedDate ? _objectSpread(_objectSpread({}, formData.values), {}, {
239
- update: newUpdatedDate
240
- }) : _objectSpread({}, formData.values);
241
- const handleUpdateFormData = () => updateFormData({
242
- values: _objectSpread(_objectSpread({}, updatedFormValues), parsedFormValues)
243
- }, true);
244
- const submitParams = {
245
- update: {
246
- entitySchema,
247
- entityData,
248
- parsedFormValues,
249
- client,
250
- setIsSaveButtonAvailable,
251
- setNewUpdatedDate,
252
- newUpdatedDate,
253
- previousQuery,
254
- setSaveButtonText,
255
- handleUpdateFormData
256
- },
257
- create: {
258
- entitySchema,
259
- parsedFormValues,
260
- client,
261
- setEntityData,
262
- setIsSaveButtonAvailable,
263
- history,
264
- setIsNewEntity,
265
- setSaveButtonText,
266
- handleUpdateFormData
267
- }
268
- };
269
- const currentAction = submitParams[action];
270
- return availableActions[action].submit(currentAction, addToast);
271
- };
272
- const onDelete = async () => {
273
- const {
274
- values: {
275
- id
276
- }
277
- } = formData;
278
- if (componentIsMounted.current) {
279
- setIsSaveButtonAvailable(false);
280
- }
281
- await availableActions.delete.submit({
282
- entitySchema,
283
- client,
284
- parsedFormValues: {
285
- id
286
- }
287
- }, addToast);
288
- history.push(`/data-listing/${entitySchema.id}`);
289
- };
290
- const onCopy = () => {
291
- if (formDataFromCopy && componentIsMounted.current) {
292
- updateFormData(formDataFromCopy);
293
- setShouldCopyData(true);
294
- setIsSaveButtonAvailable(true);
295
- setSaveButtonText(SAVE_BUTTON_TEXTS.save);
296
- if (formDataFromCopy.values.name) {
297
- setPageTitle(formDataFromCopy.values.name);
298
- }
299
- }
300
- };
301
- const updateCopyData = () => {
302
- setCopyModalStatus(!copyModalStatus);
303
- setShouldCopyData(false);
304
- };
305
- const handleCopyDataFromClose = () => {
306
- setCopyModalStatus(false);
307
- setFormDataFromCopy(null);
308
- };
309
- const getFormData = formDataValues => {
310
- const formDataUpdated = {
311
- values: _objectSpread({}, formDataValues)
312
- };
313
- setFormDataFromCopy(formDataUpdated);
314
- };
315
- const handlePublishAndUnpublish = async ({
316
- target: {
317
- textContent
318
- }
319
- }) => {
320
- const isPublishButton = textContent === TEXT_CONTENT_TYPE;
321
- const isPublished = entityIsPublished === ENTITY_PUBLISHED;
322
- const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);
323
- if (isUnpublish) {
324
- return addToast(UNPUBLISHED_WARNING, {
325
- appearance: 'warning',
326
- autoDismiss: true
327
- });
328
- }
329
- if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {
330
- const savedPageMessage = await onSubmit();
331
- if (savedPageMessage === ERROR) {
332
- return addToast(`Content not published`, {
333
- appearance: ERROR,
334
- autoDismiss: true
335
- });
336
- }
337
- }
338
- return availableActions.shared.triggerPublish({
339
- entityData,
340
- client,
341
- setEntityIsPublish,
342
- entitySchema,
343
- textContent,
344
- refetchRecord
345
- }, addToast);
346
- };
347
- const showModal = checkFulfilConditions(formData, modalStatus);
348
- const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished) ? () => onViewUrlClick(getFullUrl) : onViewUrl;
349
- const pageName = formData && formData.values && formData.values.name;
350
- const hasToDisplayPrompt = isSaveButtonAvailable && !suppressPrompt;
351
- const showSideBarRelations = checkFulfilConditions(schema, formData);
352
- return /*#__PURE__*/React.createElement(RecordEditContextProvider, {
353
- value: {
354
- externalUpdateTime,
355
- updated: formData === null || formData === void 0 ? void 0 : (_formData$values = formData.values) === null || _formData$values === void 0 ? void 0 : _formData$values.updated
356
- }
357
- }, /*#__PURE__*/React.createElement("div", {
358
- className: "page"
359
- }, /*#__PURE__*/React.createElement(EntityHeader, {
360
- entityData: entityData,
361
- entityIdentifier: entityIdentifier,
362
- pageTitle: pageTitle,
363
- pageName: pageName,
364
- onSubmit: onSubmit,
365
- handlePublishAndUnpublish: handlePublishAndUnpublish,
366
- isSaveButtonAvailable: isSaveButtonAvailable,
367
- isEnablePublishButton: isEnablePublishButton,
368
- isEnablePreviewButton: isEnablePreviewButton,
369
- toggleCopyModal: setCopyModalStatus,
370
- toggleModal: setModalStatus,
371
- formData: formData,
372
- onViewUrl: onViewUrlHandler,
373
- saveButtonText: saveButtonText,
374
- saveOnChange: saveOnChange,
375
- entitySchema: entitySchema
376
- }), /*#__PURE__*/React.createElement("div", {
377
- className: "page-wrapper__content"
378
- }, /*#__PURE__*/React.createElement("div", {
379
- className: "tabs-wrapper tabs-wrapper__tab"
380
- }, /*#__PURE__*/React.createElement(Prompt, {
381
- when: hasToDisplayPrompt,
382
- message: LEAVE_PAGE_MESSAGE
383
- }), showModal && /*#__PURE__*/React.createElement(DeleteAction, {
384
- onClose: setModalStatus,
385
- deleteAction: onDelete,
386
- itemName: formData.values.name
387
- }), copyModalStatus && /*#__PURE__*/React.createElement(CopyDataFromAction, {
388
- onClose: handleCopyDataFromClose,
389
- copyAction: onCopy,
390
- getFormData: getFormData
391
- }), /*#__PURE__*/React.createElement("div", {
392
- className: "page__content"
393
- }, /*#__PURE__*/React.createElement("div", {
394
- className: "page__content"
395
- }, /*#__PURE__*/React.createElement("div", {
396
- className: "content"
397
- }, /*#__PURE__*/React.createElement(RenderHook, {
398
- hookKey: `entity:${action}:main:top`,
399
- entity: entity,
400
- schema: schema
401
- }), /*#__PURE__*/React.createElement(InfoBoxes, {
402
- id: entity.id,
403
- schema: schema
404
- }), /*#__PURE__*/React.createElement(FormBuilder, {
405
- getIsFormValid: setIsFormValid,
406
- getFormValues: getFormValues,
407
- schema: schema,
408
- data: clonedFormData,
409
- onChange: onChangeFormValues,
410
- shouldCopyData: shouldCopyData,
411
- updateCopyData: updateCopyData,
412
- formValues: formValues,
413
- isNewEntity: isNewEntity,
414
- onExternalUpdate: setExternalUpdateTime
415
- }), /*#__PURE__*/React.createElement(RenderHook, {
416
- hookKey: `entity:${action}:main:bottom`,
417
- entity: entity,
418
- schema: schema
419
- }))))), /*#__PURE__*/React.createElement("div", {
420
- className: "column column--one-third page-sidebar page-sidebar--relations"
421
- }, showSideBarRelations && /*#__PURE__*/React.createElement(SideBarRelations, {
422
- entity: entity,
423
- formData: formData.values,
424
- schema: schema,
425
- onChange: onChangeSideBarRelations
426
- })))));
427
- };
428
- Entity.propTypes = {
429
- entity: PropTypes.object,
430
- schema: PropTypes.object,
431
- previousQuery: PropTypes.object,
432
- action: PropTypes.string.isRequired,
433
- history: PropTypes.object.isRequired,
434
- formData: PropTypes.object,
435
- updateFormData: PropTypes.func.isRequired,
436
- onViewUrl: PropTypes.func,
437
- refetchRecord: PropTypes.func.isRequired
438
- };
439
- Entity.defaultProps = {
440
- previousQuery: null,
441
- schema: null,
442
- entity: null,
443
- formData: null,
444
- onViewUrl: null
445
- };
446
- export default withRouter(Entity);
447
- //# sourceMappingURL=Entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Entity.js","names":["React","useEffect","useState","useRef","withRouter","Prompt","useApolloClient","PropTypes","RenderHook","getQuery","FormBuilder","parseFormValues","DeleteAction","CopyDataFromAction","useToasts","cloneDeep","getPageName","availableActions","SideBarRelations","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","_formData$values","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","suppressPrompt","setSuppressPrompt","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","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","hasToDisplayPrompt","showSideBarRelations","createElement","updated","className","toggleCopyModal","toggleModal","when","message","onClose","deleteAction","itemName","copyAction","hookKey","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 } 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 availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\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 [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 const [suppressPrompt, setSuppressPrompt] = useState(false);\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 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 client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\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 isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValid && isNewValueSet && 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 if (!isSaveButtonAvailable) return null;\n\n if (isCreatePage) {\n setSuppressPrompt(true);\n }\n const parsedFormValues = parseFormValues(formValues);\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 hasToDisplayPrompt = isSaveButtonAvailable && !suppressPrompt;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\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\">\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 <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 <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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","ignoreList":[]}