@blaze-cms/plugin-data-ui 0.139.0-alpha.3 → 0.139.0-core-styles.2

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 (153) hide show
  1. package/CHANGELOG.md +36 -5
  2. package/README.md +42 -0
  3. package/lib/components/EntityDataListing/EntityDataListing.js +3 -24
  4. package/lib/components/EntityDataListing/EntityDataListing.js.map +1 -1
  5. package/lib/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js +39 -0
  6. package/lib/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js.map +1 -0
  7. package/lib/components/EntityManager/Entity/EntitiyNavLinks/index.js +12 -0
  8. package/lib/components/EntityManager/Entity/EntitiyNavLinks/index.js.map +1 -0
  9. package/lib/components/EntityManager/Entity/Entity.js +16 -3
  10. package/lib/components/EntityManager/Entity/Entity.js.map +1 -1
  11. package/lib/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js +44 -0
  12. package/lib/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js.map +1 -0
  13. package/lib/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +32 -0
  14. package/lib/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map +1 -0
  15. package/lib/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +45 -0
  16. package/lib/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js.map +1 -0
  17. package/lib/components/EntityManager/Entity/SideBarRelations/index.js +12 -2
  18. package/lib/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  19. package/lib/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +38 -0
  20. package/lib/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js.map +1 -0
  21. package/lib/components/InfoBoxes/InfoBoxes.js +36 -0
  22. package/lib/components/InfoBoxes/InfoBoxes.js.map +1 -0
  23. package/lib/components/InfoBoxes/container/InfoBoxContainer.js +44 -0
  24. package/lib/components/InfoBoxes/container/InfoBoxContainer.js.map +1 -0
  25. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js +25 -0
  26. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -0
  27. package/lib/components/InfoBoxes/hooks/useData.js +42 -0
  28. package/lib/components/InfoBoxes/hooks/useData.js.map +1 -0
  29. package/lib/components/InfoBoxes/hooks/useInfoBox.js +26 -0
  30. package/lib/components/InfoBoxes/hooks/useInfoBox.js.map +1 -0
  31. package/lib/components/InfoBoxes/index.js +12 -0
  32. package/lib/components/InfoBoxes/index.js.map +1 -0
  33. package/lib/components/InfoBoxes/presentational/InfoBox.js +46 -0
  34. package/lib/components/InfoBoxes/presentational/InfoBox.js.map +1 -0
  35. package/lib/components/ListingTable/ListingTable.js +125 -80
  36. package/lib/components/ListingTable/ListingTable.js.map +1 -1
  37. package/lib/components/ListingTable/ListingTableContent/ListingTableContent.js +8 -20
  38. package/lib/components/ListingTable/ListingTableContent/ListingTableContent.js.map +1 -1
  39. package/lib/components/ListingTable/mappers/populate-rows.js +92 -26
  40. package/lib/components/ListingTable/mappers/populate-rows.js.map +1 -1
  41. package/lib/components/ListingTable/service/index.js +73 -11
  42. package/lib/components/ListingTable/service/index.js.map +1 -1
  43. package/lib/constants.js +11 -1
  44. package/lib/constants.js.map +1 -1
  45. package/lib/icons/ContentIcon.js +90 -0
  46. package/lib/icons/ContentIcon.js.map +1 -0
  47. package/lib/icons/SettingsIcon.js +66 -0
  48. package/lib/icons/SettingsIcon.js.map +1 -0
  49. package/lib/icons/TaxonomyIcon.js +90 -0
  50. package/lib/icons/TaxonomyIcon.js.map +1 -0
  51. package/lib/icons/UsersIcon.js +64 -0
  52. package/lib/icons/UsersIcon.js.map +1 -0
  53. package/lib/icons/index.js +36 -0
  54. package/lib/icons/index.js.map +1 -0
  55. package/lib/index.js +38 -11
  56. package/lib/index.js.map +1 -1
  57. package/lib/utils/add-content-menu-items.js +61 -13
  58. package/lib/utils/add-content-menu-items.js.map +1 -1
  59. package/lib/utils/build-listing-query.js +11 -2
  60. package/lib/utils/build-listing-query.js.map +1 -1
  61. package/lib/utils/get-default-query-params.js +3 -4
  62. package/lib/utils/get-default-query-params.js.map +1 -1
  63. package/lib-es/components/EntityDataListing/EntityDataListing.js +3 -14
  64. package/lib-es/components/EntityDataListing/EntityDataListing.js.map +1 -1
  65. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js +30 -0
  66. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js.map +1 -0
  67. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/index.js +3 -0
  68. package/lib-es/components/EntityManager/Entity/EntitiyNavLinks/index.js.map +1 -0
  69. package/lib-es/components/EntityManager/Entity/Entity.js +16 -3
  70. package/lib-es/components/EntityManager/Entity/Entity.js.map +1 -1
  71. package/lib-es/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js +30 -0
  72. package/lib-es/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js.map +1 -0
  73. package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +26 -0
  74. package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map +1 -0
  75. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +39 -0
  76. package/lib-es/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js.map +1 -0
  77. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js +12 -2
  78. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  79. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +24 -0
  80. package/lib-es/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js.map +1 -0
  81. package/lib-es/components/InfoBoxes/InfoBoxes.js +28 -0
  82. package/lib-es/components/InfoBoxes/InfoBoxes.js.map +1 -0
  83. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js +30 -0
  84. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js.map +1 -0
  85. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js +25 -0
  86. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -0
  87. package/lib-es/components/InfoBoxes/hooks/useData.js +37 -0
  88. package/lib-es/components/InfoBoxes/hooks/useData.js.map +1 -0
  89. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js +19 -0
  90. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js.map +1 -0
  91. package/lib-es/components/InfoBoxes/index.js +3 -0
  92. package/lib-es/components/InfoBoxes/index.js.map +1 -0
  93. package/lib-es/components/InfoBoxes/presentational/InfoBox.js +31 -0
  94. package/lib-es/components/InfoBoxes/presentational/InfoBox.js.map +1 -0
  95. package/lib-es/components/ListingTable/ListingTable.js +56 -50
  96. package/lib-es/components/ListingTable/ListingTable.js.map +1 -1
  97. package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js +11 -19
  98. package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js.map +1 -1
  99. package/lib-es/components/ListingTable/mappers/populate-rows.js +76 -24
  100. package/lib-es/components/ListingTable/mappers/populate-rows.js.map +1 -1
  101. package/lib-es/components/ListingTable/service/index.js +65 -7
  102. package/lib-es/components/ListingTable/service/index.js.map +1 -1
  103. package/lib-es/constants.js +9 -1
  104. package/lib-es/constants.js.map +1 -1
  105. package/lib-es/icons/ContentIcon.js +80 -0
  106. package/lib-es/icons/ContentIcon.js.map +1 -0
  107. package/lib-es/icons/SettingsIcon.js +56 -0
  108. package/lib-es/icons/SettingsIcon.js.map +1 -0
  109. package/lib-es/icons/TaxonomyIcon.js +80 -0
  110. package/lib-es/icons/TaxonomyIcon.js.map +1 -0
  111. package/lib-es/icons/UsersIcon.js +54 -0
  112. package/lib-es/icons/UsersIcon.js.map +1 -0
  113. package/lib-es/icons/index.js +6 -0
  114. package/lib-es/icons/index.js.map +1 -0
  115. package/lib-es/index.js +37 -9
  116. package/lib-es/index.js.map +1 -1
  117. package/lib-es/utils/add-content-menu-items.js +46 -5
  118. package/lib-es/utils/add-content-menu-items.js.map +1 -1
  119. package/lib-es/utils/build-listing-query.js +10 -1
  120. package/lib-es/utils/build-listing-query.js.map +1 -1
  121. package/lib-es/utils/get-default-query-params.js +1 -3
  122. package/lib-es/utils/get-default-query-params.js.map +1 -1
  123. package/package.json +10 -9
  124. package/src/components/EntityDataListing/EntityDataListing.js +3 -12
  125. package/src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js +26 -0
  126. package/src/components/EntityManager/Entity/EntitiyNavLinks/index.js +3 -0
  127. package/src/components/EntityManager/Entity/Entity.js +10 -1
  128. package/src/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js +22 -0
  129. package/src/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +33 -0
  130. package/src/components/EntityManager/Entity/SideBarRelations/hooks/useCustomSidebarData.js +28 -0
  131. package/src/components/EntityManager/Entity/SideBarRelations/index.js +34 -16
  132. package/src/components/EntityManager/Entity/SideBarRelations/presentational/CustomSidebarInfo.js +33 -0
  133. package/src/components/InfoBoxes/InfoBoxes.js +24 -0
  134. package/src/components/InfoBoxes/container/InfoBoxContainer.js +22 -0
  135. package/src/components/InfoBoxes/helpers/build-dynamic-query.js +25 -0
  136. package/src/components/InfoBoxes/hooks/useData.js +20 -0
  137. package/src/components/InfoBoxes/hooks/useInfoBox.js +13 -0
  138. package/src/components/InfoBoxes/index.js +3 -0
  139. package/src/components/InfoBoxes/presentational/InfoBox.js +34 -0
  140. package/src/components/ListingTable/ListingTable.js +73 -39
  141. package/src/components/ListingTable/ListingTableContent/ListingTableContent.js +8 -22
  142. package/src/components/ListingTable/mappers/populate-rows.js +83 -18
  143. package/src/components/ListingTable/service/index.js +42 -5
  144. package/src/constants.js +13 -1
  145. package/src/icons/ContentIcon.js +72 -0
  146. package/src/icons/SettingsIcon.js +53 -0
  147. package/src/icons/TaxonomyIcon.js +74 -0
  148. package/src/icons/UsersIcon.js +50 -0
  149. package/src/icons/index.js +6 -0
  150. package/src/index.js +36 -8
  151. package/src/utils/add-content-menu-items.js +42 -3
  152. package/src/utils/build-listing-query.js +11 -1
  153. package/src/utils/get-default-query-params.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,7 +3,7 @@
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.139.0-alpha.3](https://github.com/thebyte9/blaze/compare/v0.139.0-alpha.2...v0.139.0-alpha.3) (2024-01-09)
6
+ # [0.139.0-core-styles.2](https://github.com/thebyte9/blaze/compare/v0.139.0-core-styles.1...v0.139.0-core-styles.2) (2024-01-09)
7
7
 
8
8
  **Note:** Version bump only for package @blaze-cms/plugin-data-ui
9
9
 
@@ -11,17 +11,48 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
11
11
 
12
12
 
13
13
 
14
- # [0.139.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.139.0-alpha.0...v0.139.0-alpha.1) (2023-12-20)
14
+ # [0.139.0-core-styles.0](https://github.com/thebyte9/blaze/compare/v0.138.0...v0.139.0-core-styles.0) (2024-01-03)
15
15
 
16
- **Note:** Version bump only for package @blaze-cms/plugin-data-ui
17
16
 
17
+ ### Bug Fixes
18
18
 
19
+ * adding improvements ([5187e12](https://github.com/thebyte9/blaze/commit/5187e12a192759ce7f1fc28600b6f0108901d509))
20
+ * adding improvements ([86d4357](https://github.com/thebyte9/blaze/commit/86d4357516beced00d93c90b78de7f965eb75059))
21
+ * minor admin issues ([#4188](https://github.com/thebyte9/blaze/issues/4188)) ([7cbf832](https://github.com/thebyte9/blaze/commit/7cbf8321235a0b4a9783674c6bbfe7353ee72e16))
22
+ * moving menu icons to data ui plugin package ([6221434](https://github.com/thebyte9/blaze/commit/6221434d57897d7a351061a65a88c6918c8c8069))
23
+ * removing unused imports ([0db2d34](https://github.com/thebyte9/blaze/commit/0db2d34ddbc2ed823385ed8021e11ec540cf1a62))
24
+ * updating data ui plugin test ([a69b2bd](https://github.com/thebyte9/blaze/commit/a69b2bd552605be24b73a30c0c0c4c116efd15d2))
19
25
 
20
26
 
27
+ ### Features
21
28
 
22
- # [0.139.0-alpha.0](https://github.com/thebyte9/blaze/compare/v0.138.0...v0.139.0-alpha.0) (2023-12-19)
29
+ * add admin listing renderHook ([#3986](https://github.com/thebyte9/blaze/issues/3986)) ([b6e9026](https://github.com/thebyte9/blaze/commit/b6e9026d256d1be12395e6c5db3fdc66fe45cbf9))
30
+ * enquiry search index for admin listings ([#3992](https://github.com/thebyte9/blaze/issues/3992)) ([43370e5](https://github.com/thebyte9/blaze/commit/43370e5abc4ea933d522ee0c1ed67e3fa2451601))
31
+ * implementing core system menu groups ([e64ae15](https://github.com/thebyte9/blaze/commit/e64ae158ed5e50f2b0116d2b5dbd245a5729e2e4))
32
+ * listings now handle array values ([#3960](https://github.com/thebyte9/blaze/issues/3960)) ([ffd9fa5](https://github.com/thebyte9/blaze/commit/ffd9fa5c3462f275ea1312b4f931e8d29c8d6c07)), closes [#3956](https://github.com/thebyte9/blaze/issues/3956)
33
+ * render hook for under the edit form ([#3951](https://github.com/thebyte9/blaze/issues/3951)) ([3b1269b](https://github.com/thebyte9/blaze/commit/3b1269bf40ef8bbef3cf4630a5872f5744fb579e))
34
+ * update getFormattedLabels to support related record. Update relationEdit to get labels ([#3987](https://github.com/thebyte9/blaze/issues/3987)) ([31e8c5d](https://github.com/thebyte9/blaze/commit/31e8c5d265ba3244c840ec900c73b1ae93895913))
23
35
 
24
- **Note:** Version bump only for package @blaze-cms/plugin-data-ui
36
+
37
+
38
+ # [0.129.0-project-admin-customisations.1](https://github.com/thebyte9/blaze/compare/v0.129.0-project-admin-customisations.0...v0.129.0-project-admin-customisations.1) (2023-05-05)
39
+
40
+
41
+ ### Features
42
+
43
+ * add ability to define custom info in the admin sidebar ([#3920](https://github.com/thebyte9/blaze/issues/3920)) ([4946eaf](https://github.com/thebyte9/blaze/commit/4946eafb81647980971ac00480489b756b0efcc7))
44
+ * add admin entity edit section navigation in sidebar ([#3908](https://github.com/thebyte9/blaze/issues/3908)) ([0c36686](https://github.com/thebyte9/blaze/commit/0c3668674aa1dc94b797298efae6d7cbfc56b796))
45
+
46
+
47
+
48
+ # [0.129.0-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.128.2...v0.129.0-project-admin-customisations.0) (2023-05-03)
49
+
50
+
51
+ ### Features
52
+
53
+ * add initial admin renderhook plugin with first hook ([#3785](https://github.com/thebyte9/blaze/issues/3785)) ([c535036](https://github.com/thebyte9/blaze/commit/c5350369d28e870afe8a10de1a284fd63592be33))
54
+ * admin-ui info box component ([#3770](https://github.com/thebyte9/blaze/issues/3770)) ([01dff01](https://github.com/thebyte9/blaze/commit/01dff01c8bd2a9e522abf1c98ff32e4a1ca15fd1))
55
+ * support accordion rendering for form categories in FormBuilder ([#3784](https://github.com/thebyte9/blaze/issues/3784)) ([76d8421](https://github.com/thebyte9/blaze/commit/76d842153fa68bebb70ecf7c62fea1efaf839a88))
25
56
 
26
57
 
27
58
 
package/README.md CHANGED
@@ -38,3 +38,45 @@ The `displayProperties` property can be set on entity schema in the api to provi
38
38
  - adminDefaultListingFilter: this is a where query that will be passed to the api to filter records from the admin listing
39
39
  - adminLabel: properties to build label when record is showing search listings
40
40
  - adminHeader: properties to build admin header
41
+
42
+ ## Menu custom config
43
+
44
+ ```js
45
+
46
+ import { DataIcon, EnquiryIcon, PluginIcon, UserIcon } from './components/menu-icons';
47
+ import coreAdminPlugin from '@blaze-cms/plugin-admin-core-ui';
48
+
49
+ config.plugins.set(coreAdminPlugin, {
50
+ menuConfig: {
51
+ main: {
52
+ items: {
53
+ enquiries: {
54
+ order: 11, // set order to set above plugin/user
55
+ icon: EnquiryIcon,
56
+ uri: '/data-listing/enquiry',
57
+ label: 'Enquiry',
58
+ items: {}
59
+ },
60
+ data: {
61
+ order: 12, // set order to set above plugin/user
62
+ label: 'Data',
63
+ icon: DataIcon,
64
+ items: {}
65
+ },
66
+ users: {
67
+ order: 13, // set order to set above plugin/user
68
+ label: 'Users',
69
+ icon: UserIcon,
70
+ items: {}
71
+ },
72
+ plugins: {
73
+ order: 14,
74
+ icon: PluginIcon,
75
+ label: 'Plugins',
76
+ items: {}
77
+ }
78
+ }
79
+ }
80
+ }
81
+ });
82
+ ```
@@ -6,13 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports["default"] = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
9
  require("core-js/modules/es.regexp.exec.js");
11
10
  require("core-js/modules/es.string.match.js");
12
- require("core-js/modules/es.array.filter.js");
13
- require("core-js/modules/es.object.to-string.js");
14
- require("core-js/modules/es.array.map.js");
15
- require("core-js/modules/es.string.ends-with.js");
16
11
  var _client = require("@apollo/client");
17
12
  var _react = _interopRequireDefault(require("react"));
18
13
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -20,22 +15,8 @@ var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
20
15
  var _ListingTable = _interopRequireDefault(require("../ListingTable/ListingTable"));
21
16
  var _withContext = require("../../utils/hoc/withContext");
22
17
  var EntityDataListing = function EntityDataListing(_ref) {
23
- var match = _ref.match,
24
- menuItems = _ref.menuItems;
18
+ var match = _ref.match;
25
19
  var identifier = match.params.entityIdentifier;
26
- var _menuItems$map$filter = menuItems.map(function (_ref2) {
27
- var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
28
- _ = _ref3[0],
29
- items = _ref3[1].items;
30
- var item = items.filter(function (_ref4) {
31
- var uri = _ref4.uri;
32
- return uri.endsWith("/".concat(identifier));
33
- });
34
- return item.length ? item : null;
35
- }).filter(Boolean),
36
- _menuItems$map$filter2 = (0, _slicedToArray2["default"])(_menuItems$map$filter, 1),
37
- _menuItems$map$filter3 = (0, _slicedToArray2["default"])(_menuItems$map$filter2[0], 1),
38
- selectedMenuItem = _menuItems$map$filter3[0];
39
20
  var _useQuery = (0, _client.useQuery)((0, _adminUiUtils.getQuery)('GET_ENTITY_SCHEMA'), {
40
21
  variables: {
41
22
  identifier: identifier
@@ -47,13 +28,11 @@ var EntityDataListing = function EntityDataListing(_ref) {
47
28
  getEntitySchemas = _useQuery$data2$getEn === void 0 ? [] : _useQuery$data2$getEn;
48
29
  if (!getEntitySchemas.length) return '';
49
30
  return /*#__PURE__*/_react["default"].createElement(_ListingTable["default"], {
50
- entitySchema: getEntitySchemas[0],
51
- selectedMenuItem: selectedMenuItem
31
+ entitySchema: getEntitySchemas[0]
52
32
  });
53
33
  };
54
34
  EntityDataListing.propTypes = {
55
- match: _propTypes["default"].object.isRequired,
56
- menuItems: _propTypes["default"].array.isRequired
35
+ match: _propTypes["default"].object.isRequired
57
36
  };
58
37
  var _default = (0, _withContext.withContext)(EntityDataListing);
59
38
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDataListing.js","names":["_client","require","_react","_interopRequireDefault","_propTypes","_adminUiUtils","_ListingTable","_withContext","EntityDataListing","_ref","match","menuItems","identifier","params","entityIdentifier","_menuItems$map$filter","map","_ref2","_ref3","_slicedToArray2","_","items","item","filter","_ref4","uri","endsWith","concat","length","Boolean","_menuItems$map$filter2","_menuItems$map$filter3","selectedMenuItem","_useQuery","useQuery","getQuery","variables","_useQuery$data","data","_useQuery$data2","_useQuery$data2$getEn","getEntitySchemas","createElement","entitySchema","propTypes","PropTypes","object","isRequired","array","_default","withContext","exports"],"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, menuItems }) => {\n const {\n params: { entityIdentifier: identifier }\n } = match;\n\n const [[selectedMenuItem]] = menuItems\n .map(([_, { items }]) => {\n const item = items.filter(({ uri }) => uri.endsWith(`/${identifier}`));\n\n return item.length ? item : null;\n })\n .filter(Boolean);\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]} selectedMenuItem={selectedMenuItem} />;\n};\n\nEntityDataListing.propTypes = {\n match: PropTypes.object.isRequired,\n menuItems: PropTypes.array.isRequired\n};\n\nexport default withContext(EntityDataListing);\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AAEA,IAAAK,aAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAEA,IAAMO,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAC,IAAA,EAA6B;EAAA,IAAvBC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;EAC3C,IAC8BC,UAAU,GACpCF,KAAK,CADPG,MAAM,CAAIC,gBAAgB;EAG5B,IAAAC,qBAAA,GAA6BJ,SAAS,CACnCK,GAAG,CAAC,UAAAC,KAAA,EAAoB;MAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,KAAA;QAAlBG,CAAC,GAAAF,KAAA;QAAIG,KAAK,GAAAH,KAAA,IAALG,KAAK;MACf,IAAMC,IAAI,GAAGD,KAAK,CAACE,MAAM,CAAC,UAAAC,KAAA;QAAA,IAAGC,GAAG,GAAAD,KAAA,CAAHC,GAAG;QAAA,OAAOA,GAAG,CAACC,QAAQ,KAAAC,MAAA,CAAKf,UAAU,CAAE,CAAC;MAAA,EAAC;MAEtE,OAAOU,IAAI,CAACM,MAAM,GAAGN,IAAI,GAAG,IAAI;IAClC,CAAC,CAAC,CACDC,MAAM,CAACM,OAAO,CAAC;IAAAC,sBAAA,OAAAX,eAAA,aAAAJ,qBAAA;IAAAgB,sBAAA,OAAAZ,eAAA,aAAAW,sBAAA;IANVE,gBAAgB,GAAAD,sBAAA;EAQxB,IAAAE,SAAA,GAAiD,IAAAC,gBAAQ,EAAC,IAAAC,sBAAQ,EAAC,mBAAmB,CAAC,EAAE;MACvFC,SAAS,EAAE;QAAExB,UAAU,EAAVA;MAAW;IAC1B,CAAC,CAAC;IAAAyB,cAAA,GAAAJ,SAAA,CAFMK,IAAI;IAAAC,eAAA,GAAAF,cAAA,cAA8B,CAAC,CAAC,GAAAA,cAAA;IAAAG,qBAAA,GAAAD,eAAA,CAA5BE,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;EAIrC,IAAI,CAACC,gBAAgB,CAACb,MAAM,EAAE,OAAO,EAAE;EAEvC,oBAAO1B,MAAA,YAAAwC,aAAA,CAACpC,aAAA,WAAY;IAACqC,YAAY,EAAEF,gBAAgB,CAAC,CAAC,CAAE;IAACT,gBAAgB,EAAEA;EAAiB,CAAE,CAAC;AAChG,CAAC;AAEDxB,iBAAiB,CAACoC,SAAS,GAAG;EAC5BlC,KAAK,EAAEmC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAClCpC,SAAS,EAAEkC,qBAAS,CAACG,KAAK,CAACD;AAC7B,CAAC;AAAC,IAAAE,QAAA,GAEa,IAAAC,wBAAW,EAAC1C,iBAAiB,CAAC;AAAA2C,OAAA,cAAAF,QAAA"}
1
+ {"version":3,"file":"EntityDataListing.js","names":["_client","require","_react","_interopRequireDefault","_propTypes","_adminUiUtils","_ListingTable","_withContext","EntityDataListing","_ref","match","identifier","params","entityIdentifier","_useQuery","useQuery","getQuery","variables","_useQuery$data","data","_useQuery$data2","_useQuery$data2$getEn","getEntitySchemas","length","createElement","entitySchema","propTypes","PropTypes","object","isRequired","_default","withContext","exports"],"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,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AAEA,IAAAK,aAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAEA,IAAMO,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAC,IAAA,EAAkB;EAAA,IAAZC,KAAK,GAAAD,IAAA,CAALC,KAAK;EAChC,IAC8BC,UAAU,GACpCD,KAAK,CADPE,MAAM,CAAIC,gBAAgB;EAG5B,IAAAC,SAAA,GAAiD,IAAAC,gBAAQ,EAAC,IAAAC,sBAAQ,EAAC,mBAAmB,CAAC,EAAE;MACvFC,SAAS,EAAE;QAAEN,UAAU,EAAVA;MAAW;IAC1B,CAAC,CAAC;IAAAO,cAAA,GAAAJ,SAAA,CAFMK,IAAI;IAAAC,eAAA,GAAAF,cAAA,cAA8B,CAAC,CAAC,GAAAA,cAAA;IAAAG,qBAAA,GAAAD,eAAA,CAA5BE,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;EAIrC,IAAI,CAACC,gBAAgB,CAACC,MAAM,EAAE,OAAO,EAAE;EAEvC,oBAAOrB,MAAA,YAAAsB,aAAA,CAAClB,aAAA,WAAY;IAACmB,YAAY,EAAEH,gBAAgB,CAAC,CAAC;EAAE,CAAE,CAAC;AAC5D,CAAC;AAEDd,iBAAiB,CAACkB,SAAS,GAAG;EAC5BhB,KAAK,EAAEiB,qBAAS,CAACC,MAAM,CAACC;AAC1B,CAAC;AAAC,IAAAC,QAAA,GAEa,IAAAC,wBAAW,EAACvB,iBAAiB,CAAC;AAAAwB,OAAA,cAAAF,QAAA"}
@@ -0,0 +1,39 @@
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
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ require("core-js/modules/es.array.map.js");
11
+ require("core-js/modules/es.object.entries.js");
12
+ require("core-js/modules/es.string.starts-with.js");
13
+ var _reactRouterDom = require("react-router-dom");
14
+ var _react = _interopRequireDefault(require("react"));
15
+ var EntityNavLinks = function EntityNavLinks(_ref) {
16
+ var schema = _ref.schema;
17
+ if (!schema) return null;
18
+ var adminSectionNavigation = schema.displayProperties.adminSectionNavigation;
19
+ if (!adminSectionNavigation) return null;
20
+ var links = Object.entries(adminSectionNavigation).map(function (_ref2) {
21
+ var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
22
+ k = _ref3[0],
23
+ v = _ref3[1];
24
+ var label = v.label,
25
+ uri = v.uri;
26
+ var Wrapper = uri.startsWith('#') ? 'a' : _reactRouterDom.Link;
27
+ return /*#__PURE__*/_react["default"].createElement(Wrapper, {
28
+ className: "entity-section-link",
29
+ href: uri,
30
+ to: uri
31
+ }, label);
32
+ });
33
+ return /*#__PURE__*/_react["default"].createElement("div", {
34
+ className: "entity-section-links"
35
+ }, links);
36
+ };
37
+ var _default = EntityNavLinks;
38
+ exports["default"] = _default;
39
+ //# sourceMappingURL=EntityNavLinks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityNavLinks.js","names":["_reactRouterDom","require","_react","_interopRequireDefault","EntityNavLinks","_ref","schema","adminSectionNavigation","displayProperties","links","Object","entries","map","_ref2","_ref3","_slicedToArray2","k","v","label","uri","Wrapper","startsWith","Link","createElement","className","href","to","_default","exports"],"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 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,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAAmB;EAAA,IAAbC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAC9B,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,IACuBC,sBAAsB,GACzCD,MAAM,CADRE,iBAAiB,CAAID,sBAAsB;EAG7C,IAAI,CAACA,sBAAsB,EAAE,OAAO,IAAI;EAExC,IAAME,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACJ,sBAAsB,CAAC,CAACK,GAAG,CAAC,UAAAC,KAAA,EAAY;IAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,KAAA;MAAVG,CAAC,GAAAF,KAAA;MAAEG,CAAC,GAAAH,KAAA;IAC7D,IAAQI,KAAK,GAAUD,CAAC,CAAhBC,KAAK;MAAEC,GAAG,GAAKF,CAAC,CAATE,GAAG;IAClB,IAAMC,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGC,oBAAI;IAChD,oBACEpB,MAAA,YAAAqB,aAAA,CAACH,OAAO;MAACI,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEN,GAAI;MAACO,EAAE,EAAEP;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOhB,MAAA,YAAAqB,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEf,KAAW,CAAC;AAC5D,CAAC;AAAC,IAAAkB,QAAA,GAEavB,cAAc;AAAAwB,OAAA,cAAAD,QAAA"}
@@ -0,0 +1,12 @@
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
+ var _EntityNavLinks = _interopRequireDefault(require("./EntityNavLinks"));
10
+ var _default = _EntityNavLinks["default"];
11
+ exports["default"] = _default;
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_EntityNavLinks","_interopRequireDefault","require","_default","EntityNavLinks","exports"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/index.js"],"sourcesContent":["import EntityNavLinks from './EntityNavLinks';\n\nexport default EntityNavLinks;\n"],"mappings":";;;;;;;;AAAA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA8C,IAAAC,QAAA,GAE/BC,0BAAc;AAAAC,OAAA,cAAAF,QAAA"}
@@ -37,6 +37,7 @@ var _react = _interopRequireWildcard(require("react"));
37
37
  var _reactRouterDom = require("react-router-dom");
38
38
  var _client = require("@apollo/client");
39
39
  var _propTypes = _interopRequireDefault(require("prop-types"));
40
+ var _pluginRenderHooksUi = require("@blaze-cms/plugin-render-hooks-ui");
40
41
  var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
41
42
  var _reactFormBuilder = require("@blaze-cms/react-form-builder");
42
43
  var _admin = require("@blaze-cms/admin");
@@ -51,6 +52,7 @@ var _constants = require("../../../constants");
51
52
  var _EntityHeader = _interopRequireDefault(require("./EntityHeader"));
52
53
  var _entity = require("../utils/entity");
53
54
  var _useToggle5 = _interopRequireDefault(require("../../../utils/hooks/useToggle"));
55
+ var _InfoBoxes = _interopRequireDefault(require("../../InfoBoxes/InfoBoxes"));
54
56
  var _excluded = ["isValid", "fields", "isNewValueSet", "valuesChecked", "currentField", "value"];
55
57
  /* eslint-disable no-undef */
56
58
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -540,7 +542,14 @@ var Entity = function Entity(_ref) {
540
542
  className: "page__content"
541
543
  }, /*#__PURE__*/_react["default"].createElement("div", {
542
544
  className: "content"
543
- }, /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
545
+ }, /*#__PURE__*/_react["default"].createElement(_pluginRenderHooksUi.RenderHook, {
546
+ hookKey: "entity:".concat(action, ":main:top"),
547
+ entity: entity,
548
+ schema: schema
549
+ }), /*#__PURE__*/_react["default"].createElement(_InfoBoxes["default"], {
550
+ id: entity.id,
551
+ schema: schema
552
+ }), /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
544
553
  enabled: showPageBuilderTabs,
545
554
  onTabChange: function onTabChange(tabId) {
546
555
  client.writeQuery({
@@ -561,8 +570,12 @@ var Entity = function Entity(_ref) {
561
570
  updateCopyData: updateCopyData,
562
571
  formValues: formValues,
563
572
  isNewEntity: isNewEntity
564
- })))))), /*#__PURE__*/_react["default"].createElement("div", {
565
- className: "column column--one-third page-sidebar"
573
+ })), /*#__PURE__*/_react["default"].createElement(_pluginRenderHooksUi.RenderHook, {
574
+ hookKey: "entity:".concat(action, ":main:bottom"),
575
+ entity: entity,
576
+ schema: schema
577
+ }))))), /*#__PURE__*/_react["default"].createElement("div", {
578
+ className: "column column--one-third page-sidebar page-sidebar--relations"
566
579
  }, showSideBarRelations && /*#__PURE__*/_react["default"].createElement(_SideBarRelations["default"], {
567
580
  entity: entity,
568
581
  formData: formData.values,
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_client","_propTypes","_interopRequireDefault","_adminUiUtils","_reactFormBuilder","_admin","_toaster","_lodash","_dataMappers","_isFormEmpty","_actionsHandlers","_SideBarRelations","_Tabs","_constants","_EntityHeader","_entity","_useToggle5","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Entity","_ref","_schema$interfaces","_schema$interfaces2","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_useState","useState","_useState2","_slicedToArray2","setCurrentTabId","_useState3","_useState4","formValues","setFormValues","_useState5","_useState6","entitySchema","setEntitySchema","_useState7","_useState8","entityData","setEntityData","_useState9","_useState10","entityIdentifier","setEntityIdentifier","_useState11","_useState12","pageTitle","setPageTitle","_useState13","_useState14","isSaveButtonAvailable","setIsSaveButtonAvailable","_useState15","values","status","_useState16","entityIsPublished","setEntityIsPublish","_useState17","_useState18","isEnablePublishButton","setEnablePublishButton","_useState19","_useState20","isEnablePreviewButton","setEnablePreviewButton","_useToggle","useToggle","_useToggle2","modalStatus","setModalStatus","_useToggle3","_useToggle4","copyModalStatus","setCopyModalStatus","_useState21","_useState22","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","_useState23","_useState24","shouldCopyData","setShouldCopyData","_useState25","_useState26","isFormValid","setIsFormValid","_useState27","_useState28","formDataFromCopy","setFormDataFromCopy","_useState29","_useState30","newUpdatedDate","setNewUpdatedDate","_useState31","SAVE_BUTTON_TEXTS","save","_useState32","saveButtonText","setSaveButtonText","isCreatePage","location","pathname","includes","_useState33","_useState34","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","_useToasts","useToasts","addToast","componentIsMounted","useRef","useEffect","current","getPageName","displayProperties","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","getFullUrl","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","_yield$client$query","_yield$client$query$d","_yield$client$query$d2","_yield$client$query$d3","getEntityUrl","wrap","_callee$","_context","prev","next","variables","itemId","itemEntity","fullUrl","fetchPolicy","sent","abrupt","stop","getFormValues","onChangeSideBarRelations","_ref3","requiredChildField","value","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","_ref5","_callee2","_ref4","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","pageBuilder","_yield$client$query2","_yield$client$query2$","itemsToAdd","_fields$filter","_fields$filter2","_fields$filter2$","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","_callee2$","_context2","_objectWithoutProperties2","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","concat","_toConsumableArray2","item","index","findIndex","_ref6","_x","onSubmit","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","_ref7","_callee3","_callee3$","_context3","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","_ref9","_callee4","_ref8","textContent","isPublishButton","isPublished","isUnpublish","savedPageMessage","_callee4$","_context4","target","TEXT_CONTENT_TYPE","ENTITY_PUBLISHED","UNPUBLISHED_WARNING","appearance","autoDismiss","ERROR","shared","triggerPublish","_x2","showModal","onViewUrlHandler","canViewPage","onViewUrlClick","pageName","hasNewFormValues","isFormEmpty","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","className","toggleCopyModal","toggleModal","Prompt","when","message","LEAVE_PAGE_MESSAGE","DeleteAction","onClose","deleteAction","itemName","CopyDataFromAction","copyAction","enabled","onTabChange","tabId","GET_CURRENT_TAB_ID","currentTabId","FormBuilder","getIsFormValid","onChange","propTypes","PropTypes","object","string","isRequired","func","defaultProps","_default","withRouter","exports"],"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 { 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';\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';\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\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\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 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 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 <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 />\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 <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 />\n </Tabs>\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar\">\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 );\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAL,sBAAA,CAAAJ,OAAA;AACA,IAAAU,YAAA,GAAAV,OAAA;AACA,IAAAW,YAAA,GAAAP,sBAAA,CAAAJ,OAAA;AACA,IAAAY,gBAAA,GAAAR,sBAAA,CAAAJ,OAAA;AACA,IAAAa,iBAAA,GAAAT,sBAAA,CAAAJ,OAAA;AACA,IAAAc,KAAA,GAAAV,sBAAA,CAAAJ,OAAA;AAEA,IAAAe,UAAA,GAAAf,OAAA;AAWA,IAAAgB,aAAA,GAAAZ,sBAAA,CAAAJ,OAAA;AACA,IAAAiB,OAAA,GAAAjB,OAAA;AAOA,IAAAkB,WAAA,GAAAd,sBAAA,CAAAJ,OAAA;AAAuD,IAAAmB,SAAA;AAnCvD;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAtB,wBAAA0B,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAZ,MAAA,CAAAa,IAAA,CAAAH,CAAA,OAAAV,MAAA,CAAAc,qBAAA,QAAAC,CAAA,GAAAf,MAAA,CAAAc,qBAAA,CAAAJ,CAAA,GAAAC,CAAA,KAAAI,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAL,CAAA,WAAAX,MAAA,CAAAE,wBAAA,CAAAQ,CAAA,EAAAC,CAAA,EAAAM,UAAA,OAAAL,CAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,CAAA,EAAAG,CAAA,YAAAH,CAAA;AAAA,SAAAQ,cAAAV,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAU,SAAA,CAAAC,MAAA,EAAAX,CAAA,UAAAC,CAAA,WAAAS,SAAA,CAAAV,CAAA,IAAAU,SAAA,CAAAV,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAT,MAAA,CAAAY,CAAA,OAAAW,OAAA,WAAAZ,CAAA,QAAAa,gBAAA,aAAAd,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAX,MAAA,CAAAyB,yBAAA,GAAAzB,MAAA,CAAA0B,gBAAA,CAAAhB,CAAA,EAAAV,MAAA,CAAAyB,yBAAA,CAAAb,CAAA,KAAAH,OAAA,CAAAT,MAAA,CAAAY,CAAA,GAAAW,OAAA,WAAAZ,CAAA,IAAAX,MAAA,CAAAC,cAAA,CAAAS,CAAA,EAAAC,CAAA,EAAAX,MAAA,CAAAE,wBAAA,CAAAU,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAqCA,IAAMiB,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAUN;EAAA,IAAAC,kBAAA,EAAAC,mBAAA;EAAA,IATJC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,aAAa,GAAAN,IAAA,CAAbM,aAAa;IACbC,MAAM,GAAAP,IAAA,CAANO,MAAM;IACNC,OAAO,GAAAR,IAAA,CAAPQ,OAAO;IACPC,cAAc,GAAAT,IAAA,CAAdS,cAAc;IACdC,SAAS,GAAAV,IAAA,CAATU,SAAS;IACTC,aAAa,GAAAX,IAAA,CAAbW,aAAa;EAEb,IAAAC,SAAA,GAA4B,IAAAC,eAAQ,EAAC,IAAI,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAH,SAAA;IAAjCI,eAAe,GAAAF,UAAA;EACxB,IAAAG,UAAA,GAAoC,IAAAJ,eAAQ,EAAC,IAAI,CAAC;IAAAK,UAAA,OAAAH,eAAA,aAAAE,UAAA;IAA3CE,UAAU,GAAAD,UAAA;IAAEE,aAAa,GAAAF,UAAA;EAChC,IAAAG,UAAA,GAAwC,IAAAR,eAAQ,EAAC,IAAI,CAAC;IAAAS,UAAA,OAAAP,eAAA,aAAAM,UAAA;IAA/CE,YAAY,GAAAD,UAAA;IAAEE,eAAe,GAAAF,UAAA;EACpC,IAAAG,UAAA,GAAoC,IAAAZ,eAAQ,EAAC,IAAI,CAAC;IAAAa,UAAA,OAAAX,eAAA,aAAAU,UAAA;IAA3CE,UAAU,GAAAD,UAAA;IAAEE,aAAa,GAAAF,UAAA;EAChC,IAAAG,UAAA,GAAgD,IAAAhB,eAAQ,EAAC,IAAI,CAAC;IAAAiB,WAAA,OAAAf,eAAA,aAAAc,UAAA;IAAvDE,gBAAgB,GAAAD,WAAA;IAAEE,mBAAmB,GAAAF,WAAA;EAC5C,IAAAG,WAAA,GAAkC,IAAApB,eAAQ,EAAC,EAAE,CAAC;IAAAqB,WAAA,OAAAnB,eAAA,aAAAkB,WAAA;IAAvCE,SAAS,GAAAD,WAAA;IAAEE,YAAY,GAAAF,WAAA;EAC9B,IAAAG,WAAA,GAA0D,IAAAxB,eAAQ,EAAC,KAAK,CAAC;IAAAyB,WAAA,OAAAvB,eAAA,aAAAsB,WAAA;IAAlEE,qBAAqB,GAAAD,WAAA;IAAEE,wBAAwB,GAAAF,WAAA;EACtD,IAAAG,WAAA,GAAgD,IAAA5B,eAAQ,EACtDV,QAAQ,IAAIA,QAAQ,CAACuC,MAAM,IAAIvC,QAAQ,CAACuC,MAAM,CAACC,MACjD,CAAC;IAAAC,WAAA,OAAA7B,eAAA,aAAA0B,WAAA;IAFMI,iBAAiB,GAAAD,WAAA;IAAEE,kBAAkB,GAAAF,WAAA;EAG5C,IAAAG,WAAA,GAAwD,IAAAlC,eAAQ,EAAC,KAAK,CAAC;IAAAmC,WAAA,OAAAjC,eAAA,aAAAgC,WAAA;IAAhEE,qBAAqB,GAAAD,WAAA;IAAEE,sBAAsB,GAAAF,WAAA;EACpD,IAAAG,WAAA,GAAwD,IAAAtC,eAAQ,EAAC,KAAK,CAAC;IAAAuC,WAAA,OAAArC,eAAA,aAAAoC,WAAA;IAAhEE,qBAAqB,GAAAD,WAAA;IAAEE,sBAAsB,GAAAF,WAAA;EACpD,IAAAG,UAAA,GAAsC,IAAAC,sBAAS,EAAC,KAAK,CAAC;IAAAC,WAAA,OAAA1C,eAAA,aAAAwC,UAAA;IAA/CG,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAClC,IAAAG,WAAA,GAA8C,IAAAJ,sBAAS,EAAC,KAAK,CAAC;IAAAK,WAAA,OAAA9C,eAAA,aAAA6C,WAAA;IAAvDE,eAAe,GAAAD,WAAA;IAAEE,kBAAkB,GAAAF,WAAA;EAC1C,IAAAG,WAAA,GAAkE,IAAAnD,eAAQ,EAAC,IAAI,CAAC;IAAAoD,WAAA,OAAAlD,eAAA,aAAAiD,WAAA;IAAzEE,yBAAyB,GAAAD,WAAA;IAAEE,4BAA4B,GAAAF,WAAA;EAC9D,IAAAG,WAAA,GAA4C,IAAAvD,eAAQ,EAAC,KAAK,CAAC;IAAAwD,WAAA,OAAAtD,eAAA,aAAAqD,WAAA;IAApDE,cAAc,GAAAD,WAAA;IAAEE,iBAAiB,GAAAF,WAAA;EACxC,IAAAG,WAAA,GAAsC,IAAA3D,eAAQ,EAAC,KAAK,CAAC;IAAA4D,WAAA,OAAA1D,eAAA,aAAAyD,WAAA;IAA9CE,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAClC,IAAAG,WAAA,GAAgD,IAAA/D,eAAQ,EAAC,IAAI,CAAC;IAAAgE,WAAA,OAAA9D,eAAA,aAAA6D,WAAA;IAAvDE,gBAAgB,GAAAD,WAAA;IAAEE,mBAAmB,GAAAF,WAAA;EAC5C,IAAAG,WAAA,GAA4C,IAAAnE,eAAQ,EAAC,IAAI,CAAC;IAAAoE,WAAA,OAAAlE,eAAA,aAAAiE,WAAA;IAAnDE,cAAc,GAAAD,WAAA;IAAEE,iBAAiB,GAAAF,WAAA;EACxC,IAAAG,WAAA,GAA4C,IAAAvE,eAAQ,EAACwE,4BAAiB,CAACC,IAAI,CAAC;IAAAC,WAAA,OAAAxE,eAAA,aAAAqE,WAAA;IAArEI,cAAc,GAAAD,WAAA;IAAEE,iBAAiB,GAAAF,WAAA;EAExC,IAAMG,YAAY,GAAGlF,OAAO,CAACmF,QAAQ,CAACC,QAAQ,CAACC,QAAQ,CAAC,QAAQ,CAAC;EACjE,IAAAC,WAAA,GAAsC,IAAAjF,eAAQ,EAAC6E,YAAY,CAAC;IAAAK,WAAA,OAAAhF,eAAA,aAAA+E,WAAA;IAArDE,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAElC,IAAMG,MAAM,GAAG,IAAAC,uBAAe,EAAC,CAAC;EAChC,IAAMC,iBAAiB,GACrB,CAACrE,gBAAgB,IACjB,IAAAsE,6BAAqB,EAACjG,MAAM,EAAEC,MAAM,EAAEC,aAAa,EAAE,CAACqB,UAAU,CAAC,IAChEA,UAAU,IAAIA,UAAU,CAAC2E,EAAE,KAAKlG,MAAM,CAACkG,EAAG;EAC7C,IAAMC,cAAc,GAAG,IAAAC,kBAAS,EAACrG,QAAQ,CAAC;EAC1C,IAAAsG,UAAA,GAAqB,IAAAC,kBAAS,EAAC,CAAC;IAAxBC,QAAQ,GAAAF,UAAA,CAARE,QAAQ;;EAEhB;EACA,IAAMC,kBAAkB,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EACvC,IAAAC,gBAAS,EACP;IAAA,OAAM,YAAM;MACVF,kBAAkB,CAACG,OAAO,GAAG,KAAK;IACpC,CAAC;EAAA,GACD,EACF,CAAC,CAAC,CAAC;;EAEH,IAAAD,gBAAS,EACP,YAAM;IACJ,IAAIV,iBAAiB,EAAE;MACrBX,iBAAiB,CAACJ,4BAAiB,CAACC,IAAI,CAAC;MACzC1D,aAAa,CAACxB,MAAM,CAAC;MACrBgC,YAAY,CAAC,IAAA4E,wBAAW,EAAC3G,MAAM,CAAC4G,iBAAiB,EAAE7G,MAAM,CAAC,CAAC;MAC3D0C,kBAAkB,CAAC1C,MAAM,CAACuC,MAAM,CAAC;MACjCnB,eAAe,CAACnB,MAAM,CAAC;MACvB6C,sBAAsB,CAAC7C,MAAM,CAAC6G,OAAO,CAACC,OAAO,CAAC;MAC9CnF,mBAAmB,CAAC3B,MAAM,CAAC+G,UAAU,CAAC;MACtC9D,sBAAsB,CAAC,CAAC,CAACjD,MAAM,CAACgH,UAAU,CAACxB,QAAQ,CAACyB,4BAAiB,CAAC,CAAC;IACzE;IAEA,IAAInH,QAAQ,IAAI+D,yBAAyB,EAAE;MACzC,IAAMqD,wBAAwB,GAAG,CAAC,CAACpH,QAAQ,CAACuC,MAAM,CAAC8E,qBAAqB;MACxEtB,MAAM,CAACuB,UAAU,CAAC;QAChBC,KAAK,EAAE,IAAAC,sBAAQ,EAAC,wBAAwB,CAAC;QACzCC,IAAI,EAAE;UACJC,sBAAsB,EAAEN,wBAAwB;UAChDC,qBAAqB,EAAErH,QAAQ,CAACuC,MAAM,CAAC8E,qBAAqB,IAAI;QAClE;MACF,CAAC,CAAC;IACJ;IACA,IAAInH,MAAM,EAAE;MACV6F,MAAM,CAACuB,UAAU,CAAC;QAChBC,KAAK,EAAE,IAAAC,sBAAQ,EAAC,oBAAoB,CAAC;QACrCC,IAAI,EAAE;UACJE,aAAa,EAAEzH,MAAM,CAACiG;QACxB;MACF,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CACEJ,MAAM,EACN9F,MAAM,EACNuB,UAAU,EACVxB,QAAQ,EACRgB,UAAU,EACV+C,yBAAyB,EACzB5D,aAAa,EACbD,MAAM,EACN+F,iBAAiB,CAErB,CAAC;EAED,IAAM2B,UAAU;IAAA,IAAAC,KAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAA;MAAA,IAAAV,KAAA,EAAAW,mBAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,YAAA;MAAA,OAAAP,YAAA,YAAAQ,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YACXpB,KAAK,GAAG,IAAAC,sBAAQ,EAAC,gBAAgB,CAAC;YAAAiB,QAAA,CAAAE,IAAA;YAAA,OACW5C,MAAM,CAACwB,KAAK,CAAC;cAC9DA,KAAK,EAALA,KAAK;cACLqB,SAAS,EAAE;gBAAEC,MAAM,EAAE5I,MAAM,CAACkG,EAAE;gBAAE2C,UAAU,EAAE5I,MAAM,CAACiG,EAAE;gBAAE4C,OAAO,EAAE;cAAK,CAAC;cACtEC,WAAW,EAAE;YACf,CAAC,CAAC;UAAA;YAAAd,mBAAA,GAAAO,QAAA,CAAAQ,IAAA;YAAAd,qBAAA,GAAAD,mBAAA,CAJMT,IAAI;YAAAW,sBAAA,GAAAD,qBAAA,cAA0B,CAAC,CAAC,GAAAA,qBAAA;YAAAE,sBAAA,GAAAD,sBAAA,CAAxBE,YAAY;YAAZA,YAAY,GAAAD,sBAAA,cAAG,EAAE,GAAAA,sBAAA;YAAA,OAAAI,QAAA,CAAAS,MAAA,WAK1BZ,YAAY;UAAA;UAAA;YAAA,OAAAG,QAAA,CAAAU,IAAA;QAAA;MAAA,GAAAlB,OAAA;IAAA,CACpB;IAAA,gBARKL,UAAUA,CAAA;MAAA,OAAAC,KAAA,CAAAzI,KAAA,OAAAE,SAAA;IAAA;EAAA,GAQf;EAED,IAAM8J,aAAa,GAAG,SAAhBA,aAAaA,CAAG7G,MAAM,EAAI;IAC9B,IAAIkE,kBAAkB,CAACG,OAAO,EAAE;MAC9B3F,aAAa,CAACsB,MAAM,CAAC;IACvB;EACF,CAAC;EAED,IAAM8G,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAAC,KAAA,EAAmBC,kBAAkB,EAAK;IAAA,IAApCpD,EAAE,GAAAmD,KAAA,CAAFnD,EAAE;MAAEqD,KAAK,GAAAF,KAAA,CAALE,KAAK;IAC3C,IAAMC,iBAAiB,GAAG,IAAAC,4BAAoB,EAAC;MAAEvD,EAAE,EAAFA,EAAE;MAAEqD,KAAK,EAALA,KAAK;MAAED,kBAAkB,EAAlBA,kBAAkB;MAAEvI,UAAU,EAAVA;IAAW,CAAC,CAAC;IAE7F,IAAM2I,sBAAsB,GAAG,IAAAC,gCAAwB,EAACH,iBAAiB,EAAEF,kBAAkB,CAAC;IAE9F,IAAIhF,WAAW,IAAIoF,sBAAsB,IAAIlD,kBAAkB,CAACG,OAAO,EAAE;MACvEvE,wBAAwB,CAAC,IAAI,CAAC;MAC9BiD,iBAAiB,CAACJ,4BAAiB,CAACC,IAAI,CAAC;IAC3C,CAAC,MAAM,IAAIsB,kBAAkB,CAACG,OAAO,EAAE;MACrCvE,wBAAwB,CAAC,KAAK,CAAC;IACjC;IAEA,IAAIoE,kBAAkB,CAACG,OAAO,EAAE;MAC9B3F,aAAa,CAACwI,iBAAiB,CAAC;IAClC;EACF,CAAC;EAED,IAAMI,kBAAkB;IAAA,IAAAC,KAAA,OAAAhC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA+B,SAAAC,KAAA;MAAA,IAAAC,OAAA,EAAAC,MAAA,EAAAC,aAAA,EAAAC,aAAA,EAAAC,YAAA,EAAAC,UAAA,EAAAC,UAAA,EAAAd,iBAAA,EAAApC,qBAAA,EAAAmD,WAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAjD,IAAA,EAAAkD,UAAA,EAAAC,cAAA,EAAAC,eAAA,EAAAC,gBAAA,EAAAC,aAAA,EAAAC,qBAAA,EAAAC,0BAAA;MAAA,OAAAlD,YAAA,YAAAQ,IAAA,UAAA2C,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAzC,IAAA,GAAAyC,SAAA,CAAAxC,IAAA;UAAA;YACzBsB,OAAO,GAAAD,KAAA,CAAPC,OAAO,EACPC,MAAM,GAAAF,KAAA,CAANE,MAAM,EACNC,aAAa,GAAAH,KAAA,CAAbG,aAAa,EACbC,aAAa,GAAAJ,KAAA,CAAbI,aAAa,EACbC,YAAY,GAAAL,KAAA,CAAZK,YAAY,EACLC,UAAU,GAAAN,KAAA,CAAjBR,KAAK,EACFe,UAAU,OAAAa,yBAAA,aAAApB,KAAA,EAAA7M,SAAA;YAETsM,iBAAiB,GAAGW,aAAa,GAAGA,aAAa,CAACiB,KAAK,CAAC,CAAC,GAAG,EAAE;YAAA,MAC9DhB,YAAY,KAAKiB,yCAA8B;cAAAH,SAAA,CAAAxC,IAAA;cAAA;YAAA;YAC3CtB,qBAAqB,GAAGiD,UAAU;YACxCvE,MAAM,CAACuB,UAAU,CAAC;cAChBC,KAAK,EAAE,IAAAC,sBAAQ,EAAC,wBAAwB,CAAC;cACzCC,IAAI,EAAE;gBACJC,sBAAsB,EAAE,CAAC,CAACL,qBAAqB;gBAC/CA,qBAAqB,EAArBA;cACF;YACF,CAAC,CAAC;YAEF,IAAIZ,kBAAkB,CAACG,OAAO,EAAE;cAC9B5C,4BAA4B,CAAC,KAAK,CAAC;YACrC;YAEMwG,WAAW,GAAGf,iBAAiB,CAACxK,MAAM,CAC1C,UAAAsM,SAAS;cAAA,OAAIA,SAAS,CAACpF,EAAE,KAAKqF,gCAAqB;YAAA,CACrD,CAAC;YAAA,KAEGnE,qBAAqB;cAAA8D,SAAA,CAAAxC,IAAA;cAAA;YAAA;YAAAwC,SAAA,CAAAxC,IAAA;YAAA,OACK5C,MAAM,CAACwB,KAAK,CAAC;cACvCA,KAAK,EAAE,IAAAC,sBAAQ,EAAC,2BAA2B,CAAC;cAC5CoB,SAAS,EAAE;gBACT6C,MAAM,EAAE;kBACNjB,WAAW,EAAEA,WAAW,CAAC,CAAC,CAAC,CAAChB,KAAK;kBACjCnC,qBAAqB,EAArBA;gBACF,CAAC;gBACDzF,gBAAgB,EAAhBA;cACF;YACF,CAAC,CAAC;UAAA;YAAA6I,oBAAA,GAAAU,SAAA,CAAAlC,IAAA;YAAAyB,qBAAA,GAAAD,oBAAA,CATMhD,IAAI;YAAJA,IAAI,GAAAiD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;YAWjB,IAAIjD,IAAI,IAAIA,IAAI,CAACiE,+BAA+B,EAAE;cAChDjC,iBAAiB,GAAGA,iBAAiB,CAACkC,GAAG,CAAC,UAAAC,gBAAgB,EAAI;gBAC5D,IAAIA,gBAAgB,CAACzF,EAAE,KAAKqF,gCAAqB,EAAE;kBACjD,OAAAnM,aAAA,CAAAA,aAAA,KACKuM,gBAAgB;oBACnBpC,KAAK,EAAE/B,IAAI,CAACiE;kBAA+B;gBAE/C;gBACA,OAAOE,gBAAgB;cACzB,CAAC,CAAC;YACJ;UAAC;YAGCjB,UAAU,GAAG,EAAE;YACrB,IAAI3J,UAAU,IAAIA,UAAU,CAACzB,MAAM,GAAGkK,iBAAiB,CAAClK,MAAM,EAAE;cAC9D,GAAAsM,MAAA,KAAAC,mBAAA,aAAIrC,iBAAiB,OAAAqC,mBAAA,aAAK9K,UAAU,GAAExB,OAAO,CAAC,UAAAuM,IAAI,EAAI;gBACpD,IAAMC,KAAK,GAAGvC,iBAAiB,CAACwC,SAAS,CAAC,UAAAzC,KAAK;kBAAA,OAAIA,KAAK,CAACrD,EAAE,KAAK4F,IAAI,CAAC5F,EAAE;gBAAA,EAAC;gBACxE,IAAI6F,KAAK,KAAK,CAAC,CAAC,EAAE;kBAChBrB,UAAU,CAACxL,IAAI,CAAC4M,IAAI,CAAC;gBACvB;cACF,CAAC,CAAC;YACJ;YAACnB,cAAA,GAE8BV,MAAM,CAACjL,MAAM,CAAC,UAAAiN,KAAA;cAAA,IAAG/F,EAAE,GAAA+F,KAAA,CAAF/F,EAAE;cAAA,OAAOA,EAAE,KAAK,MAAM;YAAA,EAAC,EAAA0E,eAAA,OAAAjK,eAAA,aAAAgK,cAAA,MAAAE,gBAAA,GAAAD,eAAA,KAAhEE,aAAa,GAAAD,gBAAA,cAAG,IAAI,GAAAA,gBAAA;YAC3BC,aAAa,IAAI9I,YAAY,CAAC8I,aAAa,CAACvB,KAAK,CAAC;YAE5CwB,qBAAqB,GAAGf,OAAO,IAAIE,aAAa;YAChDc,0BAA0B,GAAG,CAAChB,OAAO,IAAI,CAACE,aAAa;YAC7D,IAAI1D,kBAAkB,CAACG,OAAO,EAAE;cAC9BpC,cAAc,CAACyF,OAAO,CAAC;YACzB;YACA,IAAIe,qBAAqB,IAAIvE,kBAAkB,CAACG,OAAO,EAAE;cACvDvE,wBAAwB,CAAC,IAAI,CAAC;cAC9BiD,iBAAiB,CAACJ,4BAAiB,CAACC,IAAI,CAAC;YAC3C;YAEA,IAAI8F,0BAA0B,IAAIxE,kBAAkB,CAACG,OAAO,EAAE;cAC5DvE,wBAAwB,CAAC,KAAK,CAAC;YACjC;YAEA,IAAIoE,kBAAkB,CAACG,OAAO,EAAE;cAC9B3F,aAAa,IAAA4K,MAAA,KAAAC,mBAAA,aAAKrC,iBAAiB,GAAKkB,UAAU,CAAC,CAAC;YACtD;UAAC;UAAA;YAAA,OAAAQ,SAAA,CAAAhC,IAAA;QAAA;MAAA,GAAAY,QAAA;IAAA,CACF;IAAA,gBAnFKF,kBAAkBA,CAAAsC,EAAA;MAAA,OAAArC,KAAA,CAAA1K,KAAA,OAAAE,SAAA;IAAA;EAAA,GAmFvB;EAED,IAAM8M,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAI;IACxBA,KAAK,IAAIA,KAAK,CAACC,cAAc,CAAC,CAAC;IAE/B,IAAI,CAAClK,qBAAqB,EAAE,OAAO,IAAI;IACvC,IAAMmK,gBAAgB,GAAG,IAAAC,iCAAe,EAACxL,UAAU,CAAC;IAEpD,IAAMyI,iBAAiB,GAAG1E,cAAc,GAAA1F,aAAA,CAAAA,aAAA,KAC/BW,QAAQ,CAACuC,MAAM;MAAEkK,MAAM,EAAE1H;IAAc,KAAA1F,aAAA,KACvCW,QAAQ,CAACuC,MAAM,CAAE;IAE1B,IAAMmK,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;MAAA,OACxBpM,cAAc,CACZ;QACEiC,MAAM,EAAAlD,aAAA,CAAAA,aAAA,KAAOoK,iBAAiB,GAAK8C,gBAAgB;MACrD,CAAC,EACD,IACF,CAAC;IAAA;IAEH,IAAMI,YAAY,GAAG;MACnBF,MAAM,EAAE;QACNrL,YAAY,EAAZA,YAAY;QACZI,UAAU,EAAVA,UAAU;QACV+K,gBAAgB,EAAhBA,gBAAgB;QAChBxG,MAAM,EAANA,MAAM;QACN1D,wBAAwB,EAAxBA,wBAAwB;QACxB2C,iBAAiB,EAAjBA,iBAAiB;QACjBD,cAAc,EAAdA,cAAc;QACd5E,aAAa,EAAbA,aAAa;QACbmF,iBAAiB,EAAjBA,iBAAiB;QACjBoH,oBAAoB,EAApBA;MACF,CAAC;MACDE,MAAM,EAAE;QACNxL,YAAY,EAAZA,YAAY;QACZmL,gBAAgB,EAAhBA,gBAAgB;QAChBxG,MAAM,EAANA,MAAM;QACNtE,aAAa,EAAbA,aAAa;QACbY,wBAAwB,EAAxBA,wBAAwB;QACxBhC,OAAO,EAAPA,OAAO;QACPyF,cAAc,EAAdA,cAAc;QACdR,iBAAiB,EAAjBA,iBAAiB;QACjBoH,oBAAoB,EAApBA;MACF;IACF,CAAC;IAED,IAAMG,aAAa,GAAGF,YAAY,CAACvM,MAAM,CAAC;IAC1C,OAAO0M,2BAAgB,CAAC1M,MAAM,CAAC,CAAC2M,MAAM,CAACF,aAAa,EAAErG,QAAQ,CAAC;EACjE,CAAC;EAED,IAAMwG,QAAQ;IAAA,IAAAC,KAAA,OAAAnF,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAkF,SAAA;MAAA,IAAA/G,EAAA;MAAA,OAAA4B,YAAA,YAAAQ,IAAA,UAAA4E,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA1E,IAAA,GAAA0E,SAAA,CAAAzE,IAAA;UAAA;YAEHxC,EAAE,GACVnG,QAAQ,CADVuC,MAAM,CAAI4D,EAAE;YAGd,IAAIM,kBAAkB,CAACG,OAAO,EAAE;cAC9BvE,wBAAwB,CAAC,KAAK,CAAC;YACjC;YAAC+K,SAAA,CAAAzE,IAAA;YAAA,OAEKmE,2BAAgB,UAAO,CAACC,MAAM,CAClC;cACE3L,YAAY,EAAZA,YAAY;cACZ2E,MAAM,EAANA,MAAM;cACNwG,gBAAgB,EAAE;gBAAEpG,EAAE,EAAFA;cAAG;YACzB,CAAC,EACDK,QACF,CAAC;UAAA;YAEDnG,OAAO,CAAClB,IAAI,kBAAA0M,MAAA,CAAkBzK,YAAY,CAAC+E,EAAE,CAAE,CAAC;UAAC;UAAA;YAAA,OAAAiH,SAAA,CAAAjE,IAAA;QAAA;MAAA,GAAA+D,QAAA;IAAA,CAClD;IAAA,gBAnBKF,QAAQA,CAAA;MAAA,OAAAC,KAAA,CAAA7N,KAAA,OAAAE,SAAA;IAAA;EAAA,GAmBb;EAED,IAAM+N,MAAM,GAAG,SAATA,MAAMA,CAAA,EAAS;IACnB,IAAI1I,gBAAgB,IAAI8B,kBAAkB,CAACG,OAAO,EAAE;MAClDtG,cAAc,CAACqE,gBAAgB,CAAC;MAChCP,iBAAiB,CAAC,IAAI,CAAC;MACvB/B,wBAAwB,CAAC,IAAI,CAAC;MAC9BiD,iBAAiB,CAACJ,4BAAiB,CAACC,IAAI,CAAC;MACzC,IAAIR,gBAAgB,CAACpC,MAAM,CAAC+K,IAAI,EAAE;QAChCrL,YAAY,CAAC0C,gBAAgB,CAACpC,MAAM,CAAC+K,IAAI,CAAC;MAC5C;IACF;EACF,CAAC;EAED,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IAC3B3J,kBAAkB,CAAC,CAACD,eAAe,CAAC;IACpCS,iBAAiB,CAAC,KAAK,CAAC;EAC1B,CAAC;EAED,IAAMoJ,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAA,EAAS;IACpC5J,kBAAkB,CAAC,KAAK,CAAC;IACzBgB,mBAAmB,CAAC,IAAI,CAAC;EAC3B,CAAC;EAED,IAAM6I,WAAW,GAAG,SAAdA,WAAWA,CAAGC,cAAc,EAAI;IACpC,IAAMC,eAAe,GAAG;MACtBpL,MAAM,EAAAlD,aAAA,KAAOqO,cAAc;IAC7B,CAAC;IACD9I,mBAAmB,CAAC+I,eAAe,CAAC;EACtC,CAAC;EAED,IAAMC,yBAAyB;IAAA,IAAAC,KAAA,OAAA/F,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA8F,SAAAC,KAAA;MAAA,IAAAC,WAAA,EAAAC,eAAA,EAAAC,WAAA,EAAAC,WAAA,EAAAC,gBAAA;MAAA,OAAArG,YAAA,YAAAQ,IAAA,UAAA8F,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA5F,IAAA,GAAA4F,SAAA,CAAA3F,IAAA;UAAA;YAAmBqF,WAAW,GAAAD,KAAA,CAArBQ,MAAM,CAAIP,WAAW;YACxDC,eAAe,GAAGD,WAAW,KAAKQ,4BAAiB;YACnDN,WAAW,GAAGxL,iBAAiB,KAAK+L,2BAAgB;YAEpDN,WAAW,GAAG,IAAAjI,6BAAqB,EAAC,CAAC+H,eAAe,EAAE,CAACC,WAAW,CAAC;YAAA,KAErEC,WAAW;cAAAG,SAAA,CAAA3F,IAAA;cAAA;YAAA;YAAA,OAAA2F,SAAA,CAAApF,MAAA,WACN1C,QAAQ,CAACkI,8BAAmB,EAAE;cACnCC,UAAU,EAAE,SAAS;cACrBC,WAAW,EAAE;YACf,CAAC,CAAC;UAAA;YAAA,KAGA,IAAA1I,6BAAqB,EAAC+H,eAAe,EAAE7L,qBAAqB,CAAC;cAAAkM,SAAA,CAAA3F,IAAA;cAAA;YAAA;YAAA2F,SAAA,CAAA3F,IAAA;YAAA,OAChCyD,QAAQ,CAAC,CAAC;UAAA;YAAnCgC,gBAAgB,GAAAE,SAAA,CAAArF,IAAA;YAAA,MAElBmF,gBAAgB,KAAKS,gBAAK;cAAAP,SAAA,CAAA3F,IAAA;cAAA;YAAA;YAAA,OAAA2F,SAAA,CAAApF,MAAA,WACrB1C,QAAQ,0BAA0B;cACvCmI,UAAU,EAAEE,gBAAK;cACjBD,WAAW,EAAE;YACf,CAAC,CAAC;UAAA;YAAA,OAAAN,SAAA,CAAApF,MAAA,WAIC4D,2BAAgB,CAACgC,MAAM,CAACC,cAAc,CAC3C;cACEvN,UAAU,EAAVA,UAAU;cACVuE,MAAM,EAANA,MAAM;cACNpD,kBAAkB,EAAlBA,kBAAkB;cAClBvB,YAAY,EAAZA,YAAY;cACZ4M,WAAW,EAAXA,WAAW;cACXxN,aAAa,EAAbA;YACF,CAAC,EACDgG,QACF,CAAC;UAAA;UAAA;YAAA,OAAA8H,SAAA,CAAAnF,IAAA;QAAA;MAAA,GAAA2E,QAAA;IAAA,CACF;IAAA,gBAnCKF,yBAAyBA,CAAAoB,GAAA;MAAA,OAAAnB,KAAA,CAAAzO,KAAA,OAAAE,SAAA;IAAA;EAAA,GAmC9B;EAED,IAAM2P,SAAS,GAAG,IAAA/I,6BAAqB,EAAClG,QAAQ,EAAEuD,WAAW,CAAC;EAE9D,IAAM2L,gBAAgB,GAAG,IAAAC,mBAAW,EAACnP,QAAQ,EAAEC,MAAM,EAAEC,MAAM,EAAEwC,iBAAiB,CAAC,GAC7E;IAAA,OAAM,IAAA0M,sBAAc,EAACxH,UAAU,CAAC;EAAA,IAChCrH,SAAS;EAEb,IAAM8O,QAAQ,GAAGrP,QAAQ,IAAIA,QAAQ,CAACuC,MAAM,IAAIvC,QAAQ,CAACuC,MAAM,CAAC+K,IAAI;EAEpE,IAAMgC,gBAAgB,GAAG,IAAApJ,6BAAqB,EAACL,WAAW,EAAE,CAAC,IAAA0J,uBAAW,EAACvO,UAAU,CAAC,CAAC;EACrF,IAAMwO,kBAAkB,GAAGpN,qBAAqB,IAAIkN,gBAAgB;EAEpE,IAAMG,oBAAoB,GAAG,IAAAvJ,6BAAqB,EAAChG,MAAM,EAAEF,QAAQ,CAAC;EACpE,IAAM0P,mBAAmB,GACvB,CAAAxP,MAAM,aAANA,MAAM,wBAAAJ,kBAAA,GAANI,MAAM,CAAEgH,UAAU,cAAApH,kBAAA,uBAAlBA,kBAAA,CAAoB4F,QAAQ,CAAC,oCAAoC,CAAC,MAClExF,MAAM,aAANA,MAAM,wBAAAH,mBAAA,GAANG,MAAM,CAAEgH,UAAU,cAAAnH,mBAAA,uBAAlBA,mBAAA,CAAoB2F,QAAQ,CAAC,2BAA2B,CAAC;EAE3D,oBACE5J,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAM,gBACnB9T,MAAA,YAAA6T,aAAA,CAAC3S,aAAA,WAAY;IACXwE,UAAU,EAAEA,UAAW;IACvBI,gBAAgB,EAAEA,gBAAiB;IACnCI,SAAS,EAAEA,SAAU;IACrBqN,QAAQ,EAAEA,QAAS;IACnBjD,QAAQ,EAAEA,QAAS;IACnBwB,yBAAyB,EAAEA,yBAA0B;IACrDxL,qBAAqB,EAAEA,qBAAsB;IAC7CU,qBAAqB,EAAEA,qBAAsB;IAC7CI,qBAAqB,EAAEA,qBAAsB;IAC7C2M,eAAe,EAAEjM,kBAAmB;IACpCkM,WAAW,EAAEtM,cAAe;IAC5BxD,QAAQ,EAAEA,QAAS;IACnBO,SAAS,EAAE2O,gBAAiB;IAC5B7J,cAAc,EAAEA;EAAe,CAChC,CAAC,eACFvJ,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAuB,gBACpC9T,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAgC,gBAC7C9T,MAAA,YAAA6T,aAAA,CAAC1T,eAAA,CAAA8T,MAAM;IAACC,IAAI,EAAER,kBAAmB;IAACS,OAAO,EAAEC;EAAmB,CAAE,CAAC,EAChEjB,SAAS,iBACRnT,MAAA,YAAA6T,aAAA,CAACpT,MAAA,CAAA4T,YAAY;IACXC,OAAO,EAAE5M,cAAe;IACxB6M,YAAY,EAAErD,QAAS;IACvBsD,QAAQ,EAAEtQ,QAAQ,CAACuC,MAAM,CAAC+K;EAAK,CAChC,CACF,EACA3J,eAAe,iBACd7H,MAAA,YAAA6T,aAAA,CAACpT,MAAA,CAAAgU,kBAAkB;IACjBH,OAAO,EAAE5C,uBAAwB;IACjCgD,UAAU,EAAEnD,MAAO;IACnBI,WAAW,EAAEA;EAAY,CAC1B,CACF,eAED3R,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAsB,gBACnC9T,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAe,gBAC5B9T,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAS,gBACtB9T,MAAA,YAAA6T,aAAA,CAAC7S,KAAA,WAAI;IACH2T,OAAO,EAAEf,mBAAoB;IAC7BgB,WAAW,EAAE,SAAAA,YAAAC,KAAK,EAAI;MACpB5K,MAAM,CAACuB,UAAU,CAAC;QAChBC,KAAK,EAAEqJ,gCAAkB;QACzBnJ,IAAI,EAAE;UAAEoJ,YAAY,EAAEF;QAAM;MAC9B,CAAC,CAAC;MACF9P,eAAe,CAAC8P,KAAK,CAAC;IACxB;EAAE,gBACF7U,MAAA,YAAA6T,aAAA,CAACrT,iBAAA,CAAAwU,WAAW;IACVC,cAAc,EAAEvM,cAAe;IAC/B4E,aAAa,EAAEA,aAAc;IAC7BlJ,MAAM,EAAEA,MAAO;IACfuH,IAAI,EAAErB,cAAe;IACrB4K,QAAQ,EAAEnH,kBAAmB;IAC7B1F,cAAc,EAAEA,cAAe;IAC/BoJ,cAAc,EAAEA,cAAe;IAC/BvM,UAAU,EAAEA,UAAW;IACvB6E,WAAW,EAAEA;EAAY,CAC1B,CACG,CACH,CACF,CACF,CACF,CAAC,eAEN/J,MAAA,YAAA6T,aAAA;IAAKC,SAAS,EAAC;EAAuC,GACnDH,oBAAoB,iBACnB3T,MAAA,YAAA6T,aAAA,CAAC9S,iBAAA,WAAgB;IACfoD,MAAM,EAAEA,MAAO;IACfD,QAAQ,EAAEA,QAAQ,CAACuC,MAAO;IAC1BrC,MAAM,EAAEA,MAAO;IACf8Q,QAAQ,EAAE3H;EAAyB,CACpC,CAEA,CACF,CACF,CAAC;AAEV,CAAC;AAEDzJ,MAAM,CAACqR,SAAS,GAAG;EACjBhR,MAAM,EAAEiR,qBAAS,CAACC,MAAM;EACxBjR,MAAM,EAAEgR,qBAAS,CAACC,MAAM;EACxBhR,aAAa,EAAE+Q,qBAAS,CAACC,MAAM;EAC/B/Q,MAAM,EAAE8Q,qBAAS,CAACE,MAAM,CAACC,UAAU;EACnChR,OAAO,EAAE6Q,qBAAS,CAACC,MAAM,CAACE,UAAU;EACpCrR,QAAQ,EAAEkR,qBAAS,CAACC,MAAM;EAC1B7Q,cAAc,EAAE4Q,qBAAS,CAACI,IAAI,CAACD,UAAU;EACzC9Q,SAAS,EAAE2Q,qBAAS,CAACI,IAAI;EACzB9Q,aAAa,EAAE0Q,qBAAS,CAACI,IAAI,CAACD;AAChC,CAAC;AAEDzR,MAAM,CAAC2R,YAAY,GAAG;EACpBpR,aAAa,EAAE,IAAI;EACnBD,MAAM,EAAE,IAAI;EACZD,MAAM,EAAE,IAAI;EACZD,QAAQ,EAAE,IAAI;EACdO,SAAS,EAAE;AACb,CAAC;AAAC,IAAAiR,QAAA,GAEa,IAAAC,0BAAU,EAAC7R,MAAM,CAAC;AAAA8R,OAAA,cAAAF,QAAA"}
1
+ {"version":3,"file":"Entity.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_client","_propTypes","_interopRequireDefault","_pluginRenderHooksUi","_adminUiUtils","_reactFormBuilder","_admin","_toaster","_lodash","_dataMappers","_isFormEmpty","_actionsHandlers","_SideBarRelations","_Tabs","_constants","_EntityHeader","_entity","_useToggle5","_InfoBoxes","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Entity","_ref","_schema$interfaces","_schema$interfaces2","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_useState","useState","_useState2","_slicedToArray2","setCurrentTabId","_useState3","_useState4","formValues","setFormValues","_useState5","_useState6","entitySchema","setEntitySchema","_useState7","_useState8","entityData","setEntityData","_useState9","_useState10","entityIdentifier","setEntityIdentifier","_useState11","_useState12","pageTitle","setPageTitle","_useState13","_useState14","isSaveButtonAvailable","setIsSaveButtonAvailable","_useState15","values","status","_useState16","entityIsPublished","setEntityIsPublish","_useState17","_useState18","isEnablePublishButton","setEnablePublishButton","_useState19","_useState20","isEnablePreviewButton","setEnablePreviewButton","_useToggle","useToggle","_useToggle2","modalStatus","setModalStatus","_useToggle3","_useToggle4","copyModalStatus","setCopyModalStatus","_useState21","_useState22","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","_useState23","_useState24","shouldCopyData","setShouldCopyData","_useState25","_useState26","isFormValid","setIsFormValid","_useState27","_useState28","formDataFromCopy","setFormDataFromCopy","_useState29","_useState30","newUpdatedDate","setNewUpdatedDate","_useState31","SAVE_BUTTON_TEXTS","save","_useState32","saveButtonText","setSaveButtonText","isCreatePage","location","pathname","includes","_useState33","_useState34","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","_useToasts","useToasts","addToast","componentIsMounted","useRef","useEffect","current","getPageName","displayProperties","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","getFullUrl","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","_yield$client$query","_yield$client$query$d","_yield$client$query$d2","_yield$client$query$d3","getEntityUrl","wrap","_callee$","_context","prev","next","variables","itemId","itemEntity","fullUrl","fetchPolicy","sent","abrupt","stop","getFormValues","onChangeSideBarRelations","_ref3","requiredChildField","value","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","_ref5","_callee2","_ref4","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","pageBuilder","_yield$client$query2","_yield$client$query2$","itemsToAdd","_fields$filter","_fields$filter2","_fields$filter2$","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","_callee2$","_context2","_objectWithoutProperties2","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","concat","_toConsumableArray2","item","index","findIndex","_ref6","_x","onSubmit","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","_ref7","_callee3","_callee3$","_context3","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","_ref9","_callee4","_ref8","textContent","isPublishButton","isPublished","isUnpublish","savedPageMessage","_callee4$","_context4","target","TEXT_CONTENT_TYPE","ENTITY_PUBLISHED","UNPUBLISHED_WARNING","appearance","autoDismiss","ERROR","shared","triggerPublish","_x2","showModal","onViewUrlHandler","canViewPage","onViewUrlClick","pageName","hasNewFormValues","isFormEmpty","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","className","toggleCopyModal","toggleModal","Prompt","when","message","LEAVE_PAGE_MESSAGE","DeleteAction","onClose","deleteAction","itemName","CopyDataFromAction","copyAction","RenderHook","hookKey","enabled","onTabChange","tabId","GET_CURRENT_TAB_ID","currentTabId","FormBuilder","getIsFormValid","onChange","propTypes","PropTypes","object","string","isRequired","func","defaultProps","_default","withRouter","exports"],"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';\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';\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';\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\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 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 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 <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 />\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 hookKey={`entity:${action}:main:top`} entity={entity} schema={schema} />\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 />\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 );\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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"}
@@ -0,0 +1,44 @@
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.object.keys.js");
10
+ require("core-js/modules/es.array.flat-map.js");
11
+ require("core-js/modules/es.array.unscopables.flat-map.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/es.object.values.js");
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
15
+ var _react = _interopRequireDefault(require("react"));
16
+ var _useCustomSidebarData2 = _interopRequireDefault(require("../hooks/useCustomSidebarData"));
17
+ var _CustomSidebarInfo = _interopRequireDefault(require("../presentational/CustomSidebarInfo"));
18
+ var CustomSibebarInfoContainer = function CustomSibebarInfoContainer(_ref) {
19
+ var id = _ref.id,
20
+ schema = _ref.schema,
21
+ displayProperties = _ref.displayProperties;
22
+ var _useCustomSidebarData = (0, _useCustomSidebarData2["default"])({
23
+ id: id,
24
+ schema: schema,
25
+ displayProperties: displayProperties
26
+ }),
27
+ data = _useCustomSidebarData.data;
28
+ if (!data || !Object.keys(data) || Object.keys(data).length === 0) return null;
29
+ var items = Object.values(data).flatMap(function (item) {
30
+ return Object.values(item);
31
+ });
32
+ return /*#__PURE__*/_react["default"].createElement(_CustomSidebarInfo["default"], {
33
+ items: items,
34
+ customSidebarInfoKey: displayProperties.key
35
+ });
36
+ };
37
+ var _default = CustomSibebarInfoContainer;
38
+ exports["default"] = _default;
39
+ CustomSibebarInfoContainer.propTypes = {
40
+ id: _propTypes["default"].string.isRequired,
41
+ displayProperties: _propTypes["default"].object.isRequired,
42
+ schema: _propTypes["default"].object.isRequired
43
+ };
44
+ //# sourceMappingURL=CustomSidebarInfoContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomSidebarInfoContainer.js","names":["_propTypes","_interopRequireDefault","require","_react","_useCustomSidebarData2","_CustomSidebarInfo","CustomSibebarInfoContainer","_ref","id","schema","displayProperties","_useCustomSidebarData","useCustomSidebarData","data","Object","keys","length","items","values","flatMap","item","createElement","customSidebarInfoKey","key","_default","exports","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/container/CustomSidebarInfoContainer.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport useCustomSidebarData from '../hooks/useCustomSidebarData';\nimport CustomSidebarInfo from '../presentational/CustomSidebarInfo';\n\nconst CustomSibebarInfoContainer = ({ id, schema, displayProperties }) => {\n const { data } = useCustomSidebarData({ id, schema, displayProperties });\n\n if (!data || !Object.keys(data) || Object.keys(data).length === 0) return null;\n\n const items = Object.values(data).flatMap(item => Object.values(item));\n\n return <CustomSidebarInfo items={items} customSidebarInfoKey={displayProperties.key} />;\n};\n\nexport default CustomSibebarInfoContainer;\n\nCustomSibebarInfoContainer.propTypes = {\n id: PropTypes.string.isRequired,\n displayProperties: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,sBAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,kBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,IAAMI,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAC,IAAA,EAA0C;EAAA,IAApCC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;EACjE,IAAAC,qBAAA,GAAiB,IAAAC,iCAAoB,EAAC;MAAEJ,EAAE,EAAFA,EAAE;MAAEC,MAAM,EAANA,MAAM;MAAEC,iBAAiB,EAAjBA;IAAkB,CAAC,CAAC;IAAhEG,IAAI,GAAAF,qBAAA,CAAJE,IAAI;EAEZ,IAAI,CAACA,IAAI,IAAI,CAACC,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,IAAIC,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,CAACG,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAE9E,IAAMC,KAAK,GAAGH,MAAM,CAACI,MAAM,CAACL,IAAI,CAAC,CAACM,OAAO,CAAC,UAAAC,IAAI;IAAA,OAAIN,MAAM,CAACI,MAAM,CAACE,IAAI,CAAC;EAAA,EAAC;EAEtE,oBAAOjB,MAAA,YAAAkB,aAAA,CAAChB,kBAAA,WAAiB;IAACY,KAAK,EAAEA,KAAM;IAACK,oBAAoB,EAAEZ,iBAAiB,CAACa;EAAI,CAAE,CAAC;AACzF,CAAC;AAAC,IAAAC,QAAA,GAEalB,0BAA0B;AAAAmB,OAAA,cAAAD,QAAA;AAEzClB,0BAA0B,CAACoB,SAAS,GAAG;EACrClB,EAAE,EAAEmB,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC/BnB,iBAAiB,EAAEiB,qBAAS,CAACG,MAAM,CAACD,UAAU;EAC9CpB,MAAM,EAAEkB,qBAAS,CAACG,MAAM,CAACD;AAC3B,CAAC"}
@@ -0,0 +1,32 @@
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"] = buildDynamicQuery;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ require("core-js/modules/es.array.is-array.js");
11
+ require("core-js/modules/es.array.map.js");
12
+ var _client = require("@apollo/client");
13
+ var _coreErrors = require("@blaze-cms/core-errors");
14
+ var _templateObject;
15
+ function buildDynamicQuery(_ref) {
16
+ var id = _ref.id,
17
+ schema = _ref.schema,
18
+ displayProperties = _ref.displayProperties;
19
+ if (!schema || !schema.actions || !schema.actions.get || !schema.properties) {
20
+ throw new _coreErrors.BlazeError('DataEntity query requires get action, properties and fields from entity schema');
21
+ }
22
+ if (displayProperties.adminMainInfoProperty && Array.isArray(displayProperties.adminMainInfoProperty)) {
23
+ var fields = displayProperties.adminMainInfoProperty.map(function (infoProperty) {
24
+ return "".concat(infoProperty, " {\n label\n value\n }");
25
+ });
26
+ return (0, _client.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["query getInfoBoxData($id: String!){\n ", "( id: $id ) {\n id\n ", "\n __typename\n }\n }"])), schema.actions.get, fields.map(function (field) {
27
+ return field;
28
+ }));
29
+ }
30
+ return null;
31
+ }
32
+ //# sourceMappingURL=build-dynamic-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-dynamic-query.js","names":["_client","require","_coreErrors","_templateObject","buildDynamicQuery","_ref","id","schema","displayProperties","actions","get","properties","BlazeError","adminMainInfoProperty","Array","isArray","fields","map","infoProperty","concat","gql","_taggedTemplateLiteral2","field"],"sources":["../../../../../../src/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { BlazeError } from '@blaze-cms/core-errors';\n\nexport default function buildDynamicQuery({ id, schema, displayProperties }) {\n if (!schema || !schema.actions || !schema.actions.get || !schema.properties) {\n throw new BlazeError(\n 'DataEntity query requires get action, properties and fields from entity schema'\n );\n }\n\n if (\n displayProperties.adminMainInfoProperty &&\n Array.isArray(displayProperties.adminMainInfoProperty)\n ) {\n const fields = displayProperties.adminMainInfoProperty.map(\n infoProperty =>\n `${infoProperty} {\n label\n value\n }`\n );\n\n return gql`query getInfoBoxData($id: String!){\n ${schema.actions.get}( id: $id ) {\n id\n ${fields.map(field => field)}\n __typename\n }\n }`;\n }\n\n return null;\n}\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAAoD,IAAAE,eAAA;AAErC,SAASC,iBAAiBA,CAAAC,IAAA,EAAoC;EAAA,IAAjCC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;EACvE,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIC,sBAAU,CAClB,gFACF,CAAC;EACH;EAEA,IACEJ,iBAAiB,CAACK,qBAAqB,IACvCC,KAAK,CAACC,OAAO,CAACP,iBAAiB,CAACK,qBAAqB,CAAC,EACtD;IACA,IAAMG,MAAM,GAAGR,iBAAiB,CAACK,qBAAqB,CAACI,GAAG,CACxD,UAAAC,YAAY;MAAA,UAAAC,MAAA,CACPD,YAAY;IAAA,CAInB,CAAC;IAED,WAAOE,WAAG,EAAAjB,eAAA,KAAAA,eAAA,OAAAkB,uBAAA,6IACNd,MAAM,CAACE,OAAO,CAACC,GAAG,EAEjBM,MAAM,CAACC,GAAG,CAAC,UAAAK,KAAK;MAAA,OAAIA,KAAK;IAAA,EAAC;EAIjC;EAEA,OAAO,IAAI;AACb"}