@blaze-cms/plugin-data-ui 0.140.3 → 0.141.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/lib/components/EntityManager/Entity/Entity.js +9 -1
- package/lib/components/EntityManager/Entity/Entity.js.map +1 -1
- package/lib/components/EntityManager/Entity/EntityHeader/EntityHeader.js +18 -4
- package/lib/components/EntityManager/Entity/EntityHeader/EntityHeader.js.map +1 -1
- package/lib/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +1 -1
- package/lib/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map +1 -1
- package/lib/components/InfoBoxes/helpers/build-dynamic-query.js +1 -1
- package/lib/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -1
- package/lib/components/InfoBoxes/presentational/InfoBox.js +2 -1
- package/lib/components/InfoBoxes/presentational/InfoBox.js.map +1 -1
- package/lib/components/ListingTable/ListingTable.js +116 -120
- package/lib/components/ListingTable/ListingTable.js.map +1 -1
- package/lib/components/ListingTable/ListingTableContent/ListingTableContent.js +18 -19
- package/lib/components/ListingTable/ListingTableContent/ListingTableContent.js.map +1 -1
- package/lib/components/ListingTable/mappers/populate-rows.js +3 -2
- package/lib/components/ListingTable/mappers/populate-rows.js.map +1 -1
- package/lib/components/ListingTable/service/index.js +11 -2
- package/lib/components/ListingTable/service/index.js.map +1 -1
- package/lib/components/hooks/useCallbackDebounce.js +22 -0
- package/lib/components/hooks/useCallbackDebounce.js.map +1 -0
- package/lib/utils/build-listing-query.js +1 -1
- package/lib/utils/build-listing-query.js.map +1 -1
- package/lib/utils/get-default-query-params.js +1 -1
- package/lib/utils/get-default-query-params.js.map +1 -1
- package/lib-es/components/EntityManager/Entity/Entity.js +12 -1
- package/lib-es/components/EntityManager/Entity/Entity.js.map +1 -1
- package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js +18 -4
- package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js.map +1 -1
- package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +1 -0
- package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map +1 -1
- package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js +1 -0
- package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -1
- package/lib-es/components/InfoBoxes/presentational/InfoBox.js +2 -1
- package/lib-es/components/InfoBoxes/presentational/InfoBox.js.map +1 -1
- package/lib-es/components/ListingTable/ListingTable.js +58 -57
- package/lib-es/components/ListingTable/ListingTable.js.map +1 -1
- package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js +18 -19
- package/lib-es/components/ListingTable/ListingTableContent/ListingTableContent.js.map +1 -1
- package/lib-es/components/ListingTable/mappers/populate-rows.js +20 -17
- package/lib-es/components/ListingTable/mappers/populate-rows.js.map +1 -1
- package/lib-es/components/ListingTable/service/index.js +7 -1
- package/lib-es/components/ListingTable/service/index.js.map +1 -1
- package/lib-es/components/hooks/useCallbackDebounce.js +12 -0
- package/lib-es/components/hooks/useCallbackDebounce.js.map +1 -0
- package/lib-es/utils/build-listing-query.js +1 -0
- package/lib-es/utils/build-listing-query.js.map +1 -1
- package/lib-es/utils/get-default-query-params.js +1 -1
- package/lib-es/utils/get-default-query-params.js.map +1 -1
- package/package.json +8 -7
- package/src/components/EntityManager/Entity/Entity.js +18 -0
- package/src/components/EntityManager/Entity/EntityHeader/EntityHeader.js +24 -11
- package/src/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js +1 -0
- package/src/components/InfoBoxes/helpers/build-dynamic-query.js +1 -0
- package/src/components/InfoBoxes/presentational/InfoBox.js +2 -2
- package/src/components/ListingTable/ListingTable.js +86 -93
- package/src/components/ListingTable/ListingTableContent/ListingTableContent.js +20 -18
- package/src/components/ListingTable/mappers/populate-rows.js +19 -16
- package/src/components/ListingTable/service/index.js +13 -2
- package/src/components/hooks/useCallbackDebounce.js +15 -0
- package/src/utils/build-listing-query.js +1 -0
- package/src/utils/get-default-query-params.js +1 -1
|
@@ -64,6 +64,7 @@ var buildArrayRowContent = function buildArrayRowContent(rowData) {
|
|
|
64
64
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
65
65
|
className: "table-row-list"
|
|
66
66
|
}, rowData.map(function (rowGroup) {
|
|
67
|
+
if (!rowGroup.length) return null;
|
|
67
68
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
68
69
|
className: "table-row-list__group"
|
|
69
70
|
}, rowGroup.map(function (_ref2) {
|
|
@@ -74,11 +75,11 @@ var buildArrayRowContent = function buildArrayRowContent(rowData) {
|
|
|
74
75
|
className: "table-row-list__group__item"
|
|
75
76
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
76
77
|
className: "table-row-list__group__item__label"
|
|
77
|
-
}, " ", label, ":"), url ? /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
|
|
78
|
+
}, " ", label, ":"), url && value ? /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
|
|
78
79
|
to: url,
|
|
79
80
|
role: "button",
|
|
80
81
|
className: "table-row-list__group__item__value"
|
|
81
|
-
}, value) : /*#__PURE__*/_react["default"].createElement("span", {
|
|
82
|
+
}, value) : value && /*#__PURE__*/_react["default"].createElement("span", {
|
|
82
83
|
className: "table-row-list__group__item__value"
|
|
83
84
|
}, " ", value));
|
|
84
85
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_TableActions","_constants","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","map","data","editUrl","concat","id","rowProps","createElement","Link","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","_ref2","value","buildArrayRowData","dataGroups","groups","Math","ceil","currentStart","slice","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref3","parsedRowData","populateRows","_ref4","entitySchema","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => (\n <div className=\"table-row-list__group\">\n {rowGroup.map(({ label, value, url }) => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\"> {label}:</span>\n {url ? (\n <Link to={url} role=\"button\" className=\"table-row-list__group__item__value\">\n {value}\n </Link>\n ) : (\n <span className=\"table-row-list__group__item__value\"> {value}</span>\n )}\n </div>\n ))}\n </div>\n ))}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const dataGroups = [];\n const groups = Math.ceil(rowData.length / 3) || 1;\n for (let index = 0; index < groups; index += 1) {\n const currentStart = index * groups;\n dataGroups[index] = rowData.slice(currentStart, currentStart + 3);\n }\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_TableActions","_constants","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","map","data","editUrl","concat","id","rowProps","createElement","Link","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","_ref2","value","buildArrayRowData","dataGroups","groups","Math","ceil","currentStart","slice","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref3","parsedRowData","populateRows","_ref4","entitySchema","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(({ label, value, url }) => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\"> {label}:</span>\n {url && value ? (\n <Link to={url} role=\"button\" className=\"table-row-list__group__item__value\">\n {value}\n </Link>\n ) : (\n value && <span className=\"table-row-list__group__item__value\"> {value}</span>\n )}\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const dataGroups = [];\n const groups = Math.ceil(rowData.length / 3) || 1;\n for (let index = 0; index < groups; index += 1) {\n const currentStart = index * groups;\n dataGroups[index] = rowData.slice(currentStart, currentStart + 3);\n }\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
|
|
@@ -88,8 +88,17 @@ var fetchData = exports.fetchData = /*#__PURE__*/function () {
|
|
|
88
88
|
_yield$client$query = _context.sent;
|
|
89
89
|
_yield$client$query$d = _yield$client$query.data;
|
|
90
90
|
data = _yield$client$query$d === void 0 ? {} : _yield$client$query$d;
|
|
91
|
-
|
|
92
|
-
|
|
91
|
+
if (!data.searchResults) {
|
|
92
|
+
_context.next = 12;
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
return _context.abrupt("return", {
|
|
96
|
+
listingData: data.searchResults.results,
|
|
97
|
+
totalRecords: data.searchResults.total
|
|
98
|
+
});
|
|
99
|
+
case 12:
|
|
100
|
+
return _context.abrupt("return", data);
|
|
101
|
+
case 13:
|
|
93
102
|
case "end":
|
|
94
103
|
return _context.stop();
|
|
95
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_buildListingQuery","_interopRequireDefault","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","buildVariables","_ref","entitySchema","isSearchQuery","_ref$listFilters","listFilters","_ref$queryParams","queryParams","identifier","sort","offset","limit","where","_sort","_slicedToArray2","_sort$","property","direction","parsedOffset","concat","Array","isArray","rawQuery","bool","must","term","entityIdentifier","JSON","stringify","fetchData","exports","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","client","_ref2$querySettings","_entitySchema$display","_entitySchema$display2","_entitySchema$display3","_entitySchema$display4","_entitySchema$display5","_entitySchema$display6","source","query","variables","_yield$client$query","_yield$client$query$d","data","wrap","_callee$","_context","prev","next","querySettings","displayProperties","adminListings","dataSource","buildListingQuery","fetchPolicy","sent","abrupt","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_buildListingQuery","_interopRequireDefault","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","buildVariables","_ref","entitySchema","isSearchQuery","_ref$listFilters","listFilters","_ref$queryParams","queryParams","identifier","sort","offset","limit","where","_sort","_slicedToArray2","_sort$","property","direction","parsedOffset","concat","Array","isArray","rawQuery","bool","must","term","entityIdentifier","JSON","stringify","fetchData","exports","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","client","_ref2$querySettings","_entitySchema$display","_entitySchema$display2","_entitySchema$display3","_entitySchema$display4","_entitySchema$display5","_entitySchema$display6","source","query","variables","_yield$client$query","_yield$client$query$d","data","wrap","_callee$","_context","prev","next","querySettings","displayProperties","adminListings","dataSource","buildListingQuery","fetchPolicy","sent","searchResults","abrupt","listingData","results","totalRecords","total","stop","_x"],"sources":["../../../../src/components/ListingTable/service/index.js"],"sourcesContent":["import buildListingQuery from '../../../utils/build-listing-query';\n\nfunction buildVariables({ entitySchema, isSearchQuery, listFilters = [], queryParams = {} }) {\n const { identifier } = entitySchema;\n const { sort, offset, limit, where } = queryParams;\n const [{ property, direction }] = sort;\n const parsedOffset = `${property}:${direction}`;\n\n if (!isSearchQuery)\n return {\n ...queryParams,\n where: !Array.isArray(listFilters) ? listFilters : where\n };\n\n const rawQuery = {\n bool: {\n must: listFilters || [],\n filter: [\n {\n term: {\n entityIdentifier: identifier\n }\n }\n ]\n }\n };\n\n return {\n limit,\n offset,\n sort: parsedOffset,\n where: JSON.stringify(rawQuery)\n };\n}\n\nconst fetchData = async ({ client, querySettings: { entitySchema, queryParams }, listFilters }) => {\n const {\n displayProperties: { adminListings: { dataSource: { source } = {} } = {} } = {}\n } = entitySchema;\n\n const isSearchQuery = source === 'search';\n const query = buildListingQuery(entitySchema, isSearchQuery);\n const variables = buildVariables({ entitySchema, listFilters, queryParams, isSearchQuery });\n\n const { data = {} } = await client.query({\n query,\n variables,\n fetchPolicy: 'network-only'\n });\n\n if (data.searchResults) {\n return {\n listingData: data.searchResults.results,\n totalRecords: data.searchResults.total\n };\n }\n return data;\n};\n\nexport { fetchData };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
require("core-js/modules/web.timers.js");
|
|
9
|
+
var _react = require("react");
|
|
10
|
+
function useCallbackDebounce(callback, delay, dependencies, skip) {
|
|
11
|
+
(0, _react.useEffect)(function () {
|
|
12
|
+
if (skip) return;
|
|
13
|
+
var timer = setTimeout(callback, delay);
|
|
14
|
+
return function () {
|
|
15
|
+
return clearTimeout(timer);
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
19
|
+
dependencies);
|
|
20
|
+
}
|
|
21
|
+
var _default = exports["default"] = useCallbackDebounce;
|
|
22
|
+
//# sourceMappingURL=useCallbackDebounce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCallbackDebounce.js","names":["_react","require","useCallbackDebounce","callback","delay","dependencies","skip","useEffect","timer","setTimeout","clearTimeout","_default","exports"],"sources":["../../../src/components/hooks/useCallbackDebounce.js"],"sourcesContent":["import { useEffect } from 'react';\n\nfunction useCallbackDebounce(callback, delay, dependencies, skip) {\n useEffect(\n () => {\n if (skip) return;\n const timer = setTimeout(callback, delay);\n return () => clearTimeout(timer);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n dependencies\n );\n}\n\nexport default useCallbackDebounce;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,SAASC,mBAAmBA,CAACC,QAAQ,EAAEC,KAAK,EAAEC,YAAY,EAAEC,IAAI,EAAE;EAChE,IAAAC,gBAAS,EACP,YAAM;IACJ,IAAID,IAAI,EAAE;IACV,IAAME,KAAK,GAAGC,UAAU,CAACN,QAAQ,EAAEC,KAAK,CAAC;IACzC,OAAO;MAAA,OAAMM,YAAY,CAACF,KAAK,CAAC;IAAA;EAClC,CAAC;EACD;EACAH,YACF,CAAC;AACH;AAAC,IAAAM,QAAA,GAAAC,OAAA,cAEcV,mBAAmB"}
|
|
@@ -25,7 +25,7 @@ function buildListingQuery(entitySchema, isSearchQuery) {
|
|
|
25
25
|
}
|
|
26
26
|
if (isSearchQuery) return buildAdminSearchQuery(entitySchema);
|
|
27
27
|
var sortType = entitySchema.actions.getAll[0].toUpperCase() + entitySchema.actions.getAll.substr(1);
|
|
28
|
-
return (0, _client.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n query ", "($where: JSON, $limit: Int, $offset:Int, $sort: [", "SortItem]) {\n listingData: ", "(where: $where, limit: $limit, offset:$offset, sort:$sort){\n id,\n ", "\n }\n }\n "])), entitySchema.actions.getAll, sortType, entitySchema.actions.getAll, entitySchema.listingProperties.join(',\n'));
|
|
28
|
+
return (0, _client.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n query ", "($where: JSON, $limit: Int, $offset:Int, $sort: [", "SortItem]) {\n listingData: ", "(where: $where, limit: $limit, offset:$offset, sort:$sort){\n id,\n ", "\n }\n totalRecords: ", "(where: $where)\n }\n "])), entitySchema.actions.getAll, sortType, entitySchema.actions.getAll, entitySchema.listingProperties.join(',\n'), entitySchema.actions.countAll);
|
|
29
29
|
}
|
|
30
30
|
var _default = exports["default"] = buildListingQuery;
|
|
31
31
|
//# sourceMappingURL=build-listing-query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-listing-query.js","names":["_client","require","_coreErrors","_adminUiUtils","_templateObject","buildAdminSearchQuery","entitySchema","_ref","_ref$listingPropertie","listingProperties","parsedProperties","concat","join","getDynamicQuery","buildListingQuery","isSearchQuery","actions","getAll","BlazeError","sortType","toUpperCase","substr","gql","_taggedTemplateLiteral2","_default","exports"],"sources":["../../src/utils/build-listing-query.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { BlazeError } from '@blaze-cms/core-errors';\nimport { getDynamicQuery } from '@blaze-cms/admin-ui-utils';\n\nconst buildAdminSearchQuery = entitySchema => {\n const { listingProperties = [] } = entitySchema || {};\n const parsedProperties = `id, ${listingProperties.join(' ') || 'id name'}`;\n\n return getDynamicQuery('ADMIN_SEARCH')([entitySchema], parsedProperties, true);\n};\n\nfunction buildListingQuery(entitySchema, isSearchQuery) {\n if (!entitySchema.actions || !entitySchema.actions.getAll || !entitySchema.listingProperties) {\n throw new BlazeError(\n 'Listing query requires getAll action and listingProperties from entity schema'\n );\n }\n\n if (isSearchQuery) return buildAdminSearchQuery(entitySchema);\n\n const sortType =\n entitySchema.actions.getAll[0].toUpperCase() + entitySchema.actions.getAll.substr(1);\n\n return gql`\n query ${\n entitySchema.actions.getAll\n }($where: JSON, $limit: Int, $offset:Int, $sort: [${sortType}SortItem]) {\n listingData: ${\n entitySchema.actions.getAll\n }(where: $where, limit: $limit, offset:$offset, sort:$sort){\n id,\n ${entitySchema.listingProperties.join(',\\n')}\n }\n }\n `;\n}\n\nexport default buildListingQuery;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAA4D,IAAAG,eAAA;AAE5D,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,YAAY,EAAI;EAC5C,IAAAC,IAAA,GAAmCD,YAAY,IAAI,CAAC,CAAC;IAAAE,qBAAA,GAAAD,IAAA,CAA7CE,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;EAC9B,IAAME,gBAAgB,UAAAC,MAAA,CAAUF,iBAAiB,CAACG,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAE;EAE1E,OAAO,IAAAC,6BAAe,EAAC,cAAc,CAAC,CAAC,CAACP,YAAY,CAAC,EAAEI,gBAAgB,EAAE,IAAI,CAAC;AAChF,CAAC;AAED,SAASI,iBAAiBA,CAACR,YAAY,EAAES,aAAa,EAAE;EACtD,IAAI,CAACT,YAAY,CAACU,OAAO,IAAI,CAACV,YAAY,CAACU,OAAO,CAACC,MAAM,IAAI,CAACX,YAAY,CAACG,iBAAiB,EAAE;IAC5F,MAAM,IAAIS,sBAAU,CAClB,+EACF,CAAC;EACH;EAEA,IAAIH,aAAa,EAAE,OAAOV,qBAAqB,CAACC,YAAY,CAAC;EAE7D,IAAMa,QAAQ,GACZb,YAAY,CAACU,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAACG,WAAW,CAAC,CAAC,GAAGd,YAAY,CAACU,OAAO,CAACC,MAAM,CAACI,MAAM,CAAC,CAAC,CAAC;EAEtF,WAAOC,WAAG,EAAAlB,eAAA,KAAAA,eAAA,OAAAmB,uBAAA,
|
|
1
|
+
{"version":3,"file":"build-listing-query.js","names":["_client","require","_coreErrors","_adminUiUtils","_templateObject","buildAdminSearchQuery","entitySchema","_ref","_ref$listingPropertie","listingProperties","parsedProperties","concat","join","getDynamicQuery","buildListingQuery","isSearchQuery","actions","getAll","BlazeError","sortType","toUpperCase","substr","gql","_taggedTemplateLiteral2","countAll","_default","exports"],"sources":["../../src/utils/build-listing-query.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { BlazeError } from '@blaze-cms/core-errors';\nimport { getDynamicQuery } from '@blaze-cms/admin-ui-utils';\n\nconst buildAdminSearchQuery = entitySchema => {\n const { listingProperties = [] } = entitySchema || {};\n const parsedProperties = `id, ${listingProperties.join(' ') || 'id name'}`;\n\n return getDynamicQuery('ADMIN_SEARCH')([entitySchema], parsedProperties, true);\n};\n\nfunction buildListingQuery(entitySchema, isSearchQuery) {\n if (!entitySchema.actions || !entitySchema.actions.getAll || !entitySchema.listingProperties) {\n throw new BlazeError(\n 'Listing query requires getAll action and listingProperties from entity schema'\n );\n }\n\n if (isSearchQuery) return buildAdminSearchQuery(entitySchema);\n\n const sortType =\n entitySchema.actions.getAll[0].toUpperCase() + entitySchema.actions.getAll.substr(1);\n\n return gql`\n query ${\n entitySchema.actions.getAll\n }($where: JSON, $limit: Int, $offset:Int, $sort: [${sortType}SortItem]) {\n listingData: ${\n entitySchema.actions.getAll\n }(where: $where, limit: $limit, offset:$offset, sort:$sort){\n id,\n ${entitySchema.listingProperties.join(',\\n')}\n }\n totalRecords: ${entitySchema.actions.countAll}(where: $where)\n }\n `;\n}\n\nexport default buildListingQuery;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAA4D,IAAAG,eAAA;AAE5D,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,YAAY,EAAI;EAC5C,IAAAC,IAAA,GAAmCD,YAAY,IAAI,CAAC,CAAC;IAAAE,qBAAA,GAAAD,IAAA,CAA7CE,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;EAC9B,IAAME,gBAAgB,UAAAC,MAAA,CAAUF,iBAAiB,CAACG,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAE;EAE1E,OAAO,IAAAC,6BAAe,EAAC,cAAc,CAAC,CAAC,CAACP,YAAY,CAAC,EAAEI,gBAAgB,EAAE,IAAI,CAAC;AAChF,CAAC;AAED,SAASI,iBAAiBA,CAACR,YAAY,EAAES,aAAa,EAAE;EACtD,IAAI,CAACT,YAAY,CAACU,OAAO,IAAI,CAACV,YAAY,CAACU,OAAO,CAACC,MAAM,IAAI,CAACX,YAAY,CAACG,iBAAiB,EAAE;IAC5F,MAAM,IAAIS,sBAAU,CAClB,+EACF,CAAC;EACH;EAEA,IAAIH,aAAa,EAAE,OAAOV,qBAAqB,CAACC,YAAY,CAAC;EAE7D,IAAMa,QAAQ,GACZb,YAAY,CAACU,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAACG,WAAW,CAAC,CAAC,GAAGd,YAAY,CAACU,OAAO,CAACC,MAAM,CAACI,MAAM,CAAC,CAAC,CAAC;EAEtF,WAAOC,WAAG,EAAAlB,eAAA,KAAAA,eAAA,OAAAmB,uBAAA,kRAENjB,YAAY,CAACU,OAAO,CAACC,MAAM,EACuBE,QAAQ,EAExDb,YAAY,CAACU,OAAO,CAACC,MAAM,EAGzBX,YAAY,CAACG,iBAAiB,CAACG,IAAI,CAAC,KAAK,CAAC,EAE9BN,YAAY,CAACU,OAAO,CAACQ,QAAQ;AAGnD;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEcZ,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-default-query-params.js","names":["getDefaultQueryParams","exports","schema","updated","properties","_ref","displayProperties","where","adminDefaultListingFilter","limit","offset","sort","property","direction"],"sources":["../../src/utils/get-default-query-params.js"],"sourcesContent":["const getDefaultQueryParams = schema => {\n const updated = schema.properties && schema.properties.updated;\n const { adminDefaultListingFilter: where } = schema.displayProperties || {};\n\n return {\n where,\n limit:
|
|
1
|
+
{"version":3,"file":"get-default-query-params.js","names":["getDefaultQueryParams","exports","schema","updated","properties","_ref","displayProperties","where","adminDefaultListingFilter","limit","offset","sort","property","direction"],"sources":["../../src/utils/get-default-query-params.js"],"sourcesContent":["const getDefaultQueryParams = schema => {\n const updated = schema.properties && schema.properties.updated;\n const { adminDefaultListingFilter: where } = schema.displayProperties || {};\n\n return {\n where,\n limit: 10,\n offset: 0,\n sort: updated\n ? [\n {\n property: 'updated',\n direction: 'desc'\n }\n ]\n : []\n };\n};\n\nexport { getDefaultQueryParams };\n"],"mappings":";;;;;;;AAAA,IAAMA,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG,SAAxBA,qBAAqBA,CAAGE,MAAM,EAAI;EACtC,IAAMC,OAAO,GAAGD,MAAM,CAACE,UAAU,IAAIF,MAAM,CAACE,UAAU,CAACD,OAAO;EAC9D,IAAAE,IAAA,GAA6CH,MAAM,CAACI,iBAAiB,IAAI,CAAC,CAAC;IAAxCC,KAAK,GAAAF,IAAA,CAAhCG,yBAAyB;EAEjC,OAAO;IACLD,KAAK,EAALA,KAAK;IACLE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAER,OAAO,GACT,CACE;MACES,QAAQ,EAAE,SAAS;MACnBC,SAAS,EAAE;IACb,CAAC,CACF,GACD;EACN,CAAC;AACH,CAAC"}
|
|
@@ -19,6 +19,7 @@ import isFormEmpty from '../utils/is-form-empty';
|
|
|
19
19
|
import availableActions from './actions-handlers';
|
|
20
20
|
import SideBarRelations from './SideBarRelations';
|
|
21
21
|
import Tabs from '../../Tabs';
|
|
22
|
+
import useCallbackDebounce from '../../hooks/useCallbackDebounce';
|
|
22
23
|
import { ENTITY_PUBLISHED, TEXT_CONTENT_TYPE, LEAVE_PAGE_MESSAGE, PREVIEW_INTERFACE, PAGE_BUILDER_FIELD_ID, PAGE_BUILDER_TEMPLATE_FIELD_ID, ERROR, SAVE_BUTTON_TEXTS, UNPUBLISHED_WARNING } from '../../../constants';
|
|
23
24
|
import EntityHeader from './EntityHeader';
|
|
24
25
|
import { validateSideBarRelations, canViewPage, onViewUrlClick, getUpdatedFormValues, checkFulfilConditions } from '../utils/entity';
|
|
@@ -67,6 +68,14 @@ const Entity = ({
|
|
|
67
68
|
|
|
68
69
|
// Here's how we'll keep track of our component's mounted state
|
|
69
70
|
const componentIsMounted = useRef(true);
|
|
71
|
+
const {
|
|
72
|
+
displayProperties: {
|
|
73
|
+
saveOnChange = false
|
|
74
|
+
}
|
|
75
|
+
} = schema;
|
|
76
|
+
useCallbackDebounce(() => {
|
|
77
|
+
isSaveButtonAvailable && onSubmit();
|
|
78
|
+
}, 500, [isSaveButtonAvailable], !saveOnChange);
|
|
70
79
|
useEffect(() => () => {
|
|
71
80
|
componentIsMounted.current = false;
|
|
72
81
|
}, []); // Using an empty dependency array ensures this only runs on unmount
|
|
@@ -362,7 +371,9 @@ const Entity = ({
|
|
|
362
371
|
toggleModal: setModalStatus,
|
|
363
372
|
formData: formData,
|
|
364
373
|
onViewUrl: onViewUrlHandler,
|
|
365
|
-
saveButtonText: saveButtonText
|
|
374
|
+
saveButtonText: saveButtonText,
|
|
375
|
+
saveOnChange: saveOnChange,
|
|
376
|
+
entitySchema: entitySchema
|
|
366
377
|
}), /*#__PURE__*/React.createElement("div", {
|
|
367
378
|
className: "page-wrapper__content"
|
|
368
379
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.js","names":["React","useEffect","useState","useRef","withRouter","Prompt","useApolloClient","PropTypes","RenderHook","getQuery","GET_CURRENT_TAB_ID","FormBuilder","parseFormValues","DeleteAction","CopyDataFromAction","useToasts","cloneDeep","getPageName","isFormEmpty","availableActions","SideBarRelations","Tabs","ENTITY_PUBLISHED","TEXT_CONTENT_TYPE","LEAVE_PAGE_MESSAGE","PREVIEW_INTERFACE","PAGE_BUILDER_FIELD_ID","PAGE_BUILDER_TEMPLATE_FIELD_ID","ERROR","SAVE_BUTTON_TEXTS","UNPUBLISHED_WARNING","EntityHeader","validateSideBarRelations","canViewPage","onViewUrlClick","getUpdatedFormValues","checkFulfilConditions","useToggle","InfoBoxes","RecordEditContextProvider","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_schema$interfaces","_schema$interfaces2","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","save","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","shouldUpdateState","id","clonedFormData","addToast","componentIsMounted","current","displayProperties","actions","publish","identifier","interfaces","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","data","pageBuilderTemplateSet","currentEntity","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","shouldActiveSaveButton","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties","_excluded","slice","pageBuilder","filter","formValue","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","_objectSpread","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","onSubmit","event","preventDefault","parsedFormValues","update","handleUpdateFormData","submitParams","create","currentAction","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","isPublished","isUnpublish","appearance","autoDismiss","savedPageMessage","shared","triggerPublish","showModal","onViewUrlHandler","pageName","hasNewFormValues","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","className","toggleCopyModal","toggleModal","when","message","onClose","deleteAction","itemName","copyAction","hookKey","enabled","onTabChange","tabId","currentTabId","getIsFormValid","onChange","onExternalUpdate","propTypes","object","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/EntityManager/Entity/Entity.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport React, { useEffect, useState, useRef } from 'react';\nimport { withRouter, Prompt } from 'react-router-dom';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\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';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div className=\"page__content--fixed\">\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n />\n </Tabs>\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar page-sidebar--relations\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Entity.js","names":["React","useEffect","useState","useRef","withRouter","Prompt","useApolloClient","PropTypes","RenderHook","getQuery","GET_CURRENT_TAB_ID","FormBuilder","parseFormValues","DeleteAction","CopyDataFromAction","useToasts","cloneDeep","getPageName","isFormEmpty","availableActions","SideBarRelations","Tabs","useCallbackDebounce","ENTITY_PUBLISHED","TEXT_CONTENT_TYPE","LEAVE_PAGE_MESSAGE","PREVIEW_INTERFACE","PAGE_BUILDER_FIELD_ID","PAGE_BUILDER_TEMPLATE_FIELD_ID","ERROR","SAVE_BUTTON_TEXTS","UNPUBLISHED_WARNING","EntityHeader","validateSideBarRelations","canViewPage","onViewUrlClick","getUpdatedFormValues","checkFulfilConditions","useToggle","InfoBoxes","RecordEditContextProvider","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_schema$interfaces","_schema$interfaces2","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","save","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","shouldUpdateState","id","clonedFormData","addToast","componentIsMounted","displayProperties","saveOnChange","onSubmit","current","actions","publish","identifier","interfaces","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","data","pageBuilderTemplateSet","currentEntity","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","shouldActiveSaveButton","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties","_excluded","slice","pageBuilder","filter","formValue","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","_objectSpread","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","event","preventDefault","parsedFormValues","update","handleUpdateFormData","submitParams","create","currentAction","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","isPublished","isUnpublish","appearance","autoDismiss","savedPageMessage","shared","triggerPublish","showModal","onViewUrlHandler","pageName","hasNewFormValues","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","createElement","className","toggleCopyModal","toggleModal","when","message","onClose","deleteAction","itemName","copyAction","hookKey","enabled","onTabChange","tabId","currentTabId","getIsFormValid","onChange","onExternalUpdate","propTypes","object","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/EntityManager/Entity/Entity.js"],"sourcesContent":["/* eslint-disable no-undef */\nimport React, { useEffect, useState, useRef } from 'react';\nimport { withRouter, Prompt } from 'react-router-dom';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\nimport useCallbackDebounce from '../../hooks/useCallbackDebounce';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\n\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n\n const {\n displayProperties: { saveOnChange = false }\n } = schema;\n\n useCallbackDebounce(\n () => {\n isSaveButtonAvailable && onSubmit();\n },\n 500,\n [isSaveButtonAvailable],\n !saveOnChange\n );\n\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n saveOnChange={saveOnChange}\n entitySchema={entitySchema}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div className=\"page__content--fixed\">\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n />\n </Tabs>\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar page-sidebar--relations\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { SAVE_BUTTON_TEXTS } from '../../../../constants';
|
|
|
8
8
|
const EntityHeader = ({
|
|
9
9
|
saveButtonText,
|
|
10
10
|
entityData,
|
|
11
|
+
entitySchema,
|
|
11
12
|
entityIdentifier,
|
|
12
13
|
pageTitle,
|
|
13
14
|
onSubmit,
|
|
@@ -19,16 +20,27 @@ const EntityHeader = ({
|
|
|
19
20
|
toggleModal,
|
|
20
21
|
formData,
|
|
21
22
|
pageName,
|
|
22
|
-
onViewUrl
|
|
23
|
+
onViewUrl,
|
|
24
|
+
saveOnChange
|
|
23
25
|
}) => {
|
|
24
26
|
const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];
|
|
25
27
|
const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;
|
|
26
28
|
const shouldDisableMoreMenu = saveButtonText === SAVE_BUTTON_TEXTS.saving;
|
|
29
|
+
const {
|
|
30
|
+
displayProperties: {
|
|
31
|
+
adminCrudActions: {
|
|
32
|
+
delete: deleteAction = {
|
|
33
|
+
active: true
|
|
34
|
+
}
|
|
35
|
+
} = {}
|
|
36
|
+
} = {}
|
|
37
|
+
} = entitySchema || {};
|
|
38
|
+
const showDeleteButton = deleteAction.active && formData && Object.keys(formData.values).length !== 0;
|
|
27
39
|
return /*#__PURE__*/React.createElement(PageHeader, {
|
|
28
40
|
title: pageTitle,
|
|
29
41
|
pageName: pageName,
|
|
30
42
|
onViewUrl: onViewUrl
|
|
31
|
-
}, /*#__PURE__*/React.createElement(PageHeader.Actions, null, /*#__PURE__*/React.createElement(Button, {
|
|
43
|
+
}, /*#__PURE__*/React.createElement(PageHeader.Actions, null, !saveOnChange && /*#__PURE__*/React.createElement(Button, {
|
|
32
44
|
onClick: onSubmit,
|
|
33
45
|
modifiers: SaveButtonModifiers,
|
|
34
46
|
"data-testid": "button-save"
|
|
@@ -56,7 +68,7 @@ const EntityHeader = ({
|
|
|
56
68
|
}, "Copy data from"), onViewUrl && /*#__PURE__*/React.createElement(Button, {
|
|
57
69
|
className: "more-menu__link",
|
|
58
70
|
onClick: onViewUrl
|
|
59
|
-
}, "View"),
|
|
71
|
+
}, "View"), showDeleteButton && /*#__PURE__*/React.createElement(Button, {
|
|
60
72
|
className: "more-menu__link",
|
|
61
73
|
onClick: toggleModal
|
|
62
74
|
}, "Delete")))));
|
|
@@ -64,6 +76,7 @@ const EntityHeader = ({
|
|
|
64
76
|
EntityHeader.propTypes = {
|
|
65
77
|
entityData: PropTypes.object,
|
|
66
78
|
entityIdentifier: PropTypes.string,
|
|
79
|
+
entitySchema: PropTypes.object.isRequired,
|
|
67
80
|
pageTitle: PropTypes.string.isRequired,
|
|
68
81
|
pageName: PropTypes.string,
|
|
69
82
|
onSubmit: PropTypes.func.isRequired,
|
|
@@ -75,7 +88,8 @@ EntityHeader.propTypes = {
|
|
|
75
88
|
toggleModal: PropTypes.func.isRequired,
|
|
76
89
|
formData: PropTypes.object,
|
|
77
90
|
onViewUrl: PropTypes.func.isRequired,
|
|
78
|
-
saveButtonText: PropTypes.string
|
|
91
|
+
saveButtonText: PropTypes.string,
|
|
92
|
+
saveOnChange: PropTypes.bool.isRequired
|
|
79
93
|
};
|
|
80
94
|
EntityHeader.defaultProps = {
|
|
81
95
|
entityData: {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityHeader.js","names":["React","PageHeader","Button","More","PropTypes","HeaderPreviewButton","SAVE_BUTTON_TEXTS","EntityHeader","saveButtonText","entityData","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","saving","createElement","title","Actions","onClick","modifiers","disabled","Avatar","isMoreMenu","className","Content","itemId","itemEntity","
|
|
1
|
+
{"version":3,"file":"EntityHeader.js","names":["React","PageHeader","Button","More","PropTypes","HeaderPreviewButton","SAVE_BUTTON_TEXTS","EntityHeader","saveButtonText","entityData","entitySchema","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","saveOnChange","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","saving","displayProperties","adminCrudActions","delete","deleteAction","active","showDeleteButton","Object","keys","values","length","createElement","title","Actions","onClick","modifiers","disabled","Avatar","isMoreMenu","className","Content","itemId","itemEntity","propTypes","object","string","isRequired","func","bool","oneOfType","defaultProps","displayName"],"sources":["../../../../../src/components/EntityManager/Entity/EntityHeader/EntityHeader.js"],"sourcesContent":["import React from 'react';\nimport { PageHeader } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport More from '@blaze-react/more';\nimport PropTypes from 'prop-types';\nimport HeaderPreviewButton from './HeaderPreviewButton';\nimport { SAVE_BUTTON_TEXTS } from '../../../../constants';\n\nconst EntityHeader = ({\n saveButtonText,\n entityData,\n entitySchema,\n entityIdentifier,\n pageTitle,\n onSubmit,\n handlePublishAndUnpublish,\n isSaveButtonAvailable,\n isEnablePublishButton,\n isEnablePreviewButton,\n toggleCopyModal,\n toggleModal,\n formData,\n pageName,\n onViewUrl,\n saveOnChange\n}) => {\n const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];\n const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;\n const shouldDisableMoreMenu = saveButtonText === SAVE_BUTTON_TEXTS.saving;\n\n const {\n displayProperties: { adminCrudActions: { delete: deleteAction = { active: true } } = {} } = {}\n } =\n entitySchema || {};\n\n const showDeleteButton =\n deleteAction.active && formData && Object.keys(formData.values).length !== 0;\n\n return (\n <PageHeader title={pageTitle} pageName={pageName} onViewUrl={onViewUrl}>\n <PageHeader.Actions>\n {!saveOnChange && (\n <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid=\"button-save\">\n {saveButtonText}\n </Button>\n )}\n <More disabled={shouldDisableMoreMenu}>\n <More.Avatar data-testid={`entity-header-${pageName}`} isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Publish\n </Button>\n )}\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Unpublish\n </Button>\n )}\n {showPreviewButton && (\n <HeaderPreviewButton itemId={entityData.id} itemEntity={entityIdentifier} />\n )}\n <Button className=\"more-menu__link\" onClick={toggleCopyModal}>\n Copy data from\n </Button>\n {onViewUrl && (\n <Button className=\"more-menu__link\" onClick={onViewUrl}>\n View\n </Button>\n )}\n {showDeleteButton && (\n <Button className=\"more-menu__link\" onClick={toggleModal}>\n Delete\n </Button>\n )}\n </More.Content>\n </More>\n </PageHeader.Actions>\n </PageHeader>\n );\n};\n\nEntityHeader.propTypes = {\n entityData: PropTypes.object,\n entityIdentifier: PropTypes.string,\n entitySchema: PropTypes.object.isRequired,\n pageTitle: PropTypes.string.isRequired,\n pageName: PropTypes.string,\n onSubmit: PropTypes.func.isRequired,\n handlePublishAndUnpublish: PropTypes.func.isRequired,\n isSaveButtonAvailable: PropTypes.bool.isRequired,\n isEnablePublishButton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]).isRequired,\n isEnablePreviewButton: PropTypes.bool.isRequired,\n toggleCopyModal: PropTypes.func.isRequired,\n toggleModal: PropTypes.func.isRequired,\n formData: PropTypes.object,\n onViewUrl: PropTypes.func.isRequired,\n saveButtonText: PropTypes.string,\n saveOnChange: PropTypes.bool.isRequired\n};\n\nEntityHeader.defaultProps = {\n entityData: {},\n entityIdentifier: '',\n formData: null,\n pageName: '',\n saveButtonText: 'save'\n};\n\nEntityHeader.displayName = 'EntityHeader';\n\nexport default EntityHeader;\n"],"mappings":"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"}
|
package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js
CHANGED
|
@@ -12,6 +12,7 @@ export default function buildDynamicQuery({
|
|
|
12
12
|
const fields = displayProperties.adminMainInfoProperty.map(infoProperty => `${infoProperty} {
|
|
13
13
|
label
|
|
14
14
|
value
|
|
15
|
+
showLabel
|
|
15
16
|
}`);
|
|
16
17
|
return gql`query getInfoBoxData($id: String!){
|
|
17
18
|
${schema.actions.get}( id: $id ) {
|
package/lib-es/components/EntityManager/Entity/SideBarRelations/helpers/build-dynamic-query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-dynamic-query.js","names":["gql","BlazeError","buildDynamicQuery","id","schema","displayProperties","actions","get","properties","adminMainInfoProperty","Array","isArray","fields","map","infoProperty","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,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,eAAe,SAASC,iBAAiBA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAkB,CAAC,EAAE;EAC3E,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIP,UAAU,CAClB,gFACF,CAAC;EACH;EAEA,IACEI,iBAAiB,CAACI,qBAAqB,IACvCC,KAAK,CAACC,OAAO,CAACN,iBAAiB,CAACI,qBAAqB,CAAC,EACtD;IACA,MAAMG,MAAM,GAAGP,iBAAiB,CAACI,qBAAqB,CAACI,GAAG,CACxDC,YAAY,IACT,GAAEA,YAAa;AACxB;AACA;AACA,QACI,CAAC;IAED,OAAOd,GAAI;AACf,QAAQI,MAAM,CAACE,OAAO,CAACC,GAAI;AAC3B;AACA,SAASK,MAAM,CAACC,GAAG,CAACE,KAAK,IAAIA,KAAK,CAAE;AACpC;AACA;AACA,MAAM;EACJ;EAEA,OAAO,IAAI;AACb"}
|
|
1
|
+
{"version":3,"file":"build-dynamic-query.js","names":["gql","BlazeError","buildDynamicQuery","id","schema","displayProperties","actions","get","properties","adminMainInfoProperty","Array","isArray","fields","map","infoProperty","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 showLabel\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,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,eAAe,SAASC,iBAAiBA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAkB,CAAC,EAAE;EAC3E,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIP,UAAU,CAClB,gFACF,CAAC;EACH;EAEA,IACEI,iBAAiB,CAACI,qBAAqB,IACvCC,KAAK,CAACC,OAAO,CAACN,iBAAiB,CAACI,qBAAqB,CAAC,EACtD;IACA,MAAMG,MAAM,GAAGP,iBAAiB,CAACI,qBAAqB,CAACI,GAAG,CACxDC,YAAY,IACT,GAAEA,YAAa;AACxB;AACA;AACA;AACA,QACI,CAAC;IAED,OAAOd,GAAI;AACf,QAAQI,MAAM,CAACE,OAAO,CAACC,GAAI;AAC3B;AACA,SAASK,MAAM,CAACC,GAAG,CAACE,KAAK,IAAIA,KAAK,CAAE;AACpC;AACA;AACA,MAAM;EACJ;EAEA,OAAO,IAAI;AACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-dynamic-query.js","names":["gql","BlazeError","buildDynamicQuery","id","schema","infoBox","actions","get","properties","fields","property","query"],"sources":["../../../../src/components/InfoBoxes/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, infoBox }) {\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 const fields = `${infoBox.property} {\n label\n value\n }`;\n\n return {\n query: gql`query getInfoBoxData($id: String!){\n ${schema.actions.get}( id: $id ) {\n id\n ${fields}\n __typename\n }\n }`\n };\n}\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,eAAe,SAASC,iBAAiBA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAQ,CAAC,EAAE;EACjE,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIP,UAAU,CAClB,gFACF,CAAC;EACH;EAEA,MAAMQ,MAAM,GAAI,GAAEJ,OAAO,CAACK,QAAS;AACrC;AACA;AACA,MAAM;EAEJ,OAAO;IACLC,KAAK,EAAEX,GAAI;AACf,MAAMI,MAAM,CAACE,OAAO,CAACC,GAAI;AACzB;AACA,OAAOE,MAAO;AACd;AACA;AACA;EACE,CAAC;AACH"}
|
|
1
|
+
{"version":3,"file":"build-dynamic-query.js","names":["gql","BlazeError","buildDynamicQuery","id","schema","infoBox","actions","get","properties","fields","property","query"],"sources":["../../../../src/components/InfoBoxes/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, infoBox }) {\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 const fields = `${infoBox.property} {\n label\n value\n showLabel\n }`;\n\n return {\n query: gql`query getInfoBoxData($id: String!){\n ${schema.actions.get}( id: $id ) {\n id\n ${fields}\n __typename\n }\n }`\n };\n}\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,eAAe,SAASC,iBAAiBA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC;AAAQ,CAAC,EAAE;EACjE,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIP,UAAU,CAClB,gFACF,CAAC;EACH;EAEA,MAAMQ,MAAM,GAAI,GAAEJ,OAAO,CAACK,QAAS;AACrC;AACA;AACA;AACA,MAAM;EAEJ,OAAO;IACLC,KAAK,EAAEX,GAAI;AACf,MAAMI,MAAM,CAACE,OAAO,CAACC,GAAI;AACzB;AACA,OAAOE,MAAO;AACd;AACA;AACA;EACE,CAAC;AACH"}
|