@blaze-cms/plugin-data-ui 0.141.0-core-styles.1 → 0.141.0-core-styles.3

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 CHANGED
@@ -3,6 +3,22 @@
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.141.0-core-styles.3](https://github.com/thebyte9/blaze/compare/v0.141.0-core-styles.2...v0.141.0-core-styles.3) (2024-03-19)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * handle elastic search based admin listings ([#4299](https://github.com/thebyte9/blaze/issues/4299)) ([689066b](https://github.com/thebyte9/blaze/commit/689066b0fada4ed32594e1d0b1fbf7a53fc02286))
12
+
13
+
14
+ ### Features
15
+
16
+ * auto save changes when edit entity ([#4005](https://github.com/thebyte9/blaze/issues/4005)) ([cf1df8f](https://github.com/thebyte9/blaze/commit/cf1df8f40c3a2fec8ab49319874153f2fe4471f2))
17
+
18
+
19
+
20
+
21
+
6
22
  # [0.141.0-core-styles.1](https://github.com/thebyte9/blaze/compare/v0.141.0-core-styles.0...v0.141.0-core-styles.1) (2024-03-15)
7
23
 
8
24
 
@@ -48,6 +48,7 @@ var _isFormEmpty = _interopRequireDefault(require("../utils/is-form-empty"));
48
48
  var _actionsHandlers = _interopRequireDefault(require("./actions-handlers"));
49
49
  var _SideBarRelations = _interopRequireDefault(require("./SideBarRelations"));
50
50
  var _Tabs = _interopRequireDefault(require("../../Tabs"));
51
+ var _useCallbackDebounce = _interopRequireDefault(require("../../hooks/useCallbackDebounce"));
51
52
  var _constants = require("../../../constants");
52
53
  var _EntityHeader = _interopRequireDefault(require("./EntityHeader"));
53
54
  var _entity = require("../utils/entity");
@@ -159,6 +160,11 @@ var Entity = function Entity(_ref) {
159
160
 
160
161
  // Here's how we'll keep track of our component's mounted state
161
162
  var componentIsMounted = (0, _react.useRef)(true);
163
+ var _schema$displayProper = schema.displayProperties.saveOnChange,
164
+ saveOnChange = _schema$displayProper === void 0 ? false : _schema$displayProper;
165
+ (0, _useCallbackDebounce["default"])(function () {
166
+ isSaveButtonAvailable && onSubmit();
167
+ }, 500, [isSaveButtonAvailable], !saveOnChange);
162
168
  (0, _react.useEffect)(function () {
163
169
  return function () {
164
170
  componentIsMounted.current = false;
@@ -529,7 +535,8 @@ var Entity = function Entity(_ref) {
529
535
  toggleModal: setModalStatus,
530
536
  formData: formData,
531
537
  onViewUrl: onViewUrlHandler,
532
- saveButtonText: saveButtonText
538
+ saveButtonText: saveButtonText,
539
+ saveOnChange: saveOnChange
533
540
  }), /*#__PURE__*/_react["default"].createElement("div", {
534
541
  className: "page-wrapper__content"
535
542
  }, /*#__PURE__*/_react["default"].createElement("div", {
@@ -1 +1 @@
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","_RecordEditContext","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","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","_useState33","_useState34","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","_useState35","_useState36","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","RecordEditContextProvider","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","onExternalUpdate","propTypes","PropTypes","object","string","isRequired","func","defaultProps","_default","exports","withRouter"],"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","_interopRequireWildcard","require","_reactRouterDom","_client","_propTypes","_interopRequireDefault","_pluginRenderHooksUi","_adminUiUtils","_reactFormBuilder","_admin","_toaster","_lodash","_dataMappers","_isFormEmpty","_actionsHandlers","_SideBarRelations","_Tabs","_useCallbackDebounce","_constants","_EntityHeader","_entity","_useToggle5","_InfoBoxes","_RecordEditContext","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","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","_useState33","_useState34","externalUpdateTime","setExternalUpdateTime","isCreatePage","location","pathname","includes","_useState35","_useState36","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","_useToasts","useToasts","addToast","componentIsMounted","useRef","_schema$displayProper","displayProperties","saveOnChange","useCallbackDebounce","onSubmit","useEffect","current","getPageName","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","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","RecordEditContextProvider","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","onExternalUpdate","propTypes","PropTypes","object","string","isRequired","func","defaultProps","_default","exports","withRouter"],"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 />\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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"}
@@ -31,7 +31,8 @@ var EntityHeader = function EntityHeader(_ref) {
31
31
  toggleModal = _ref.toggleModal,
32
32
  formData = _ref.formData,
33
33
  pageName = _ref.pageName,
34
- onViewUrl = _ref.onViewUrl;
34
+ onViewUrl = _ref.onViewUrl,
35
+ saveOnChange = _ref.saveOnChange;
35
36
  var SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];
36
37
  var showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;
37
38
  var shouldDisableMoreMenu = saveButtonText === _constants.SAVE_BUTTON_TEXTS.saving;
@@ -39,7 +40,7 @@ var EntityHeader = function EntityHeader(_ref) {
39
40
  title: pageTitle,
40
41
  pageName: pageName,
41
42
  onViewUrl: onViewUrl
42
- }, /*#__PURE__*/_react["default"].createElement(_admin.PageHeader.Actions, null, /*#__PURE__*/_react["default"].createElement(_button["default"], {
43
+ }, /*#__PURE__*/_react["default"].createElement(_admin.PageHeader.Actions, null, !saveOnChange && /*#__PURE__*/_react["default"].createElement(_button["default"], {
43
44
  onClick: onSubmit,
44
45
  modifiers: SaveButtonModifiers,
45
46
  "data-testid": "button-save"
@@ -86,7 +87,8 @@ EntityHeader.propTypes = {
86
87
  toggleModal: _propTypes["default"].func.isRequired,
87
88
  formData: _propTypes["default"].object,
88
89
  onViewUrl: _propTypes["default"].func.isRequired,
89
- saveButtonText: _propTypes["default"].string
90
+ saveButtonText: _propTypes["default"].string,
91
+ saveOnChange: _propTypes["default"].bool.isRequired
90
92
  };
91
93
  EntityHeader.defaultProps = {
92
94
  entityData: {},
@@ -1 +1 @@
1
- {"version":3,"file":"EntityHeader.js","names":["_react","_interopRequireDefault","require","_admin","_button","_more","_propTypes","_HeaderPreviewButton","_constants","EntityHeader","_ref","saveButtonText","entityData","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","SAVE_BUTTON_TEXTS","saving","createElement","PageHeader","title","Actions","onClick","modifiers","disabled","Avatar","concat","isMoreMenu","className","Content","itemId","itemEntity","Object","keys","values","length","propTypes","PropTypes","object","string","isRequired","func","bool","oneOfType","defaultProps","displayName","_default","exports"],"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 entityIdentifier,\n pageTitle,\n onSubmit,\n handlePublishAndUnpublish,\n isSaveButtonAvailable,\n isEnablePublishButton,\n isEnablePreviewButton,\n toggleCopyModal,\n toggleModal,\n formData,\n pageName,\n onViewUrl\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 return (\n <PageHeader title={pageTitle} pageName={pageName} onViewUrl={onViewUrl}>\n <PageHeader.Actions>\n <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid=\"button-save\">\n {saveButtonText}\n </Button>\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 {formData &&\n Object.keys(formData.values).length !== 0 && (\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 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};\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":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,UAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,oBAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAEA,IAAMO,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAeZ;EAAA,IAdJC,cAAc,GAAAD,IAAA,CAAdC,cAAc;IACdC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAChBC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRC,yBAAyB,GAAAN,IAAA,CAAzBM,yBAAyB;IACzBC,qBAAqB,GAAAP,IAAA,CAArBO,qBAAqB;IACrBC,qBAAqB,GAAAR,IAAA,CAArBQ,qBAAqB;IACrBC,qBAAqB,GAAAT,IAAA,CAArBS,qBAAqB;IACrBC,eAAe,GAAAV,IAAA,CAAfU,eAAe;IACfC,WAAW,GAAAX,IAAA,CAAXW,WAAW;IACXC,QAAQ,GAAAZ,IAAA,CAARY,QAAQ;IACRC,QAAQ,GAAAb,IAAA,CAARa,QAAQ;IACRC,SAAS,GAAAd,IAAA,CAATc,SAAS;EAET,IAAMC,mBAAmB,GAAGR,qBAAqB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC;EACrF,IAAMS,iBAAiB,GAAGP,qBAAqB,IAAIN,gBAAgB,IAAID,UAAU,CAACe,EAAE;EACpF,IAAMC,qBAAqB,GAAGjB,cAAc,KAAKkB,4BAAiB,CAACC,MAAM;EAEzE,oBACE9B,MAAA,YAAA+B,aAAA,CAAC5B,MAAA,CAAA6B,UAAU;IAACC,KAAK,EAAEnB,SAAU;IAACS,QAAQ,EAAEA,QAAS;IAACC,SAAS,EAAEA;EAAU,gBACrExB,MAAA,YAAA+B,aAAA,CAAC5B,MAAA,CAAA6B,UAAU,CAACE,OAAO,qBACjBlC,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAAC+B,OAAO,EAAEpB,QAAS;IAACqB,SAAS,EAAEX,mBAAoB;IAAC,eAAY;EAAa,GACjFd,cACK,CAAC,eACTX,MAAA,YAAA+B,aAAA,CAAC1B,KAAA,WAAI;IAACgC,QAAQ,EAAET;EAAsB,gBACpC5B,MAAA,YAAA+B,aAAA,CAAC1B,KAAA,WAAI,CAACiC,MAAM;IAAC,gCAAAC,MAAA,CAA8BhB,QAAQ,CAAG;IAACiB,UAAU;EAAA,gBAC/DxC,MAAA,YAAA+B,aAAA;IAAMU,SAAS,EAAC;EAAgB,GAAC,WAAe,CACrC,CAAC,eACdzC,MAAA,YAAA+B,aAAA,CAAC1B,KAAA,WAAI,CAACqC,OAAO;IAACF,UAAU;EAAA,GACrBtB,qBAAqB,iBACpBlB,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAACqC,SAAS,EAAC,iBAAiB;IAACN,OAAO,EAAEnB;EAA0B,GAAC,SAEhE,CACT,EACAE,qBAAqB,iBACpBlB,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAACqC,SAAS,EAAC,iBAAiB;IAACN,OAAO,EAAEnB;EAA0B,GAAC,WAEhE,CACT,EACAU,iBAAiB,iBAChB1B,MAAA,YAAA+B,aAAA,CAACxB,oBAAA,WAAmB;IAACoC,MAAM,EAAE/B,UAAU,CAACe,EAAG;IAACiB,UAAU,EAAE/B;EAAiB,CAAE,CAC5E,eACDb,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAACqC,SAAS,EAAC,iBAAiB;IAACN,OAAO,EAAEf;EAAgB,GAAC,gBAEtD,CAAC,EACRI,SAAS,iBACRxB,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAACqC,SAAS,EAAC,iBAAiB;IAACN,OAAO,EAAEX;EAAU,GAAC,MAEhD,CACT,EACAF,QAAQ,IACPuB,MAAM,CAACC,IAAI,CAACxB,QAAQ,CAACyB,MAAM,CAAC,CAACC,MAAM,KAAK,CAAC,iBACvChD,MAAA,YAAA+B,aAAA,CAAC3B,OAAA,WAAM;IAACqC,SAAS,EAAC,iBAAiB;IAACN,OAAO,EAAEd;EAAY,GAAC,QAElD,CAEA,CACV,CACY,CACV,CAAC;AAEjB,CAAC;AAEDZ,YAAY,CAACwC,SAAS,GAAG;EACvBrC,UAAU,EAAEsC,qBAAS,CAACC,MAAM;EAC5BtC,gBAAgB,EAAEqC,qBAAS,CAACE,MAAM;EAClCtC,SAAS,EAAEoC,qBAAS,CAACE,MAAM,CAACC,UAAU;EACtC9B,QAAQ,EAAE2B,qBAAS,CAACE,MAAM;EAC1BrC,QAAQ,EAAEmC,qBAAS,CAACI,IAAI,CAACD,UAAU;EACnCrC,yBAAyB,EAAEkC,qBAAS,CAACI,IAAI,CAACD,UAAU;EACpDpC,qBAAqB,EAAEiC,qBAAS,CAACK,IAAI,CAACF,UAAU;EAChDnC,qBAAqB,EAAEgC,qBAAS,CAACM,SAAS,CAAC,CAACN,qBAAS,CAACE,MAAM,EAAEF,qBAAS,CAACK,IAAI,CAAC,CAAC,CAACF,UAAU;EACzFlC,qBAAqB,EAAE+B,qBAAS,CAACK,IAAI,CAACF,UAAU;EAChDjC,eAAe,EAAE8B,qBAAS,CAACI,IAAI,CAACD,UAAU;EAC1ChC,WAAW,EAAE6B,qBAAS,CAACI,IAAI,CAACD,UAAU;EACtC/B,QAAQ,EAAE4B,qBAAS,CAACC,MAAM;EAC1B3B,SAAS,EAAE0B,qBAAS,CAACI,IAAI,CAACD,UAAU;EACpC1C,cAAc,EAAEuC,qBAAS,CAACE;AAC5B,CAAC;AAED3C,YAAY,CAACgD,YAAY,GAAG;EAC1B7C,UAAU,EAAE,CAAC,CAAC;EACdC,gBAAgB,EAAE,EAAE;EACpBS,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,EAAE;EACZZ,cAAc,EAAE;AAClB,CAAC;AAEDF,YAAY,CAACiD,WAAW,GAAG,cAAc;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAE3BnD,YAAY"}
1
+ {"version":3,"file":"EntityHeader.js","names":["_react","_interopRequireDefault","require","_admin","_button","_more","_propTypes","_HeaderPreviewButton","_constants","EntityHeader","_ref","saveButtonText","entityData","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","saveOnChange","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","SAVE_BUTTON_TEXTS","saving","createElement","PageHeader","title","Actions","onClick","modifiers","disabled","Avatar","concat","isMoreMenu","className","Content","itemId","itemEntity","Object","keys","values","length","propTypes","PropTypes","object","string","isRequired","func","bool","oneOfType","defaultProps","displayName","_default","exports"],"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 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 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 {formData &&\n Object.keys(formData.values).length !== 0 && (\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 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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"}
@@ -92,7 +92,10 @@ var fetchData = exports.fetchData = /*#__PURE__*/function () {
92
92
  _context.next = 12;
93
93
  break;
94
94
  }
95
- return _context.abrupt("return", data.searchResults);
95
+ return _context.abrupt("return", {
96
+ listingData: data.searchResults.results,
97
+ totalRecords: data.searchResults.total
98
+ });
96
99
  case 12:
97
100
  return _context.abrupt("return", data);
98
101
  case 13:
@@ -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","searchResults","abrupt","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 const { data = {} } = await client.query({ query, variables, fetchPolicy: 'network-only' });\n\n if (data.searchResults) return data.searchResults;\n\n return data;\n};\n\nexport { fetchData };\n"],"mappings":"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"}
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 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":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAmE,SAAAC,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEnE,SAASoB,cAAcA,CAAAC,IAAA,EAAsE;EAAA,IAAnEC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IAAEC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IAAAC,gBAAA,GAAAH,IAAA,CAAEI,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,EAAE,GAAAA,gBAAA;IAAAE,gBAAA,GAAAL,IAAA,CAAEM,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,CAAC,CAAC,GAAAA,gBAAA;EACvF,IAAQE,UAAU,GAAKN,YAAY,CAA3BM,UAAU;EAClB,IAAQC,IAAI,GAA2BF,WAAW,CAA1CE,IAAI;IAAEC,MAAM,GAAmBH,WAAW,CAApCG,MAAM;IAAEC,KAAK,GAAYJ,WAAW,CAA5BI,KAAK;IAAEC,KAAK,GAAKL,WAAW,CAArBK,KAAK;EAClC,IAAAC,KAAA,OAAAC,eAAA,aAAkCL,IAAI;IAAAM,MAAA,GAAAF,KAAA;IAA7BG,QAAQ,GAAAD,MAAA,CAARC,QAAQ;IAAEC,SAAS,GAAAF,MAAA,CAATE,SAAS;EAC5B,IAAMC,YAAY,MAAAC,MAAA,CAAMH,QAAQ,OAAAG,MAAA,CAAIF,SAAS,CAAE;EAE/C,IAAI,CAACd,aAAa,EAChB,OAAAX,aAAA,CAAAA,aAAA,KACKe,WAAW;IACdK,KAAK,EAAE,CAACQ,KAAK,CAACC,OAAO,CAAChB,WAAW,CAAC,GAAGA,WAAW,GAAGO;EAAK;EAG5D,IAAMU,QAAQ,GAAG;IACfC,IAAI,EAAE;MACJC,IAAI,EAAEnB,WAAW,IAAI,EAAE;MACvBlB,MAAM,EAAE,CACN;QACEsC,IAAI,EAAE;UACJC,gBAAgB,EAAElB;QACpB;MACF,CAAC;IAEL;EACF,CAAC;EAED,OAAO;IACLG,KAAK,EAALA,KAAK;IACLD,MAAM,EAANA,MAAM;IACND,IAAI,EAAES,YAAY;IAClBN,KAAK,EAAEe,IAAI,CAACC,SAAS,CAACN,QAAQ;EAChC,CAAC;AACH;AAEA,IAAMO,SAAS,GAAAC,OAAA,CAAAD,SAAA;EAAA,IAAAE,KAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAAC,KAAA;IAAA,IAAAC,MAAA,EAAAC,mBAAA,EAAApC,YAAA,EAAAK,WAAA,EAAAF,WAAA,EAAAkC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,MAAA,EAAA1C,aAAA,EAAA2C,KAAA,EAAAC,SAAA,EAAAC,mBAAA,EAAAC,qBAAA,EAAAC,IAAA;IAAA,OAAAjB,YAAA,YAAAkB,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAASlB,MAAM,GAAAD,KAAA,CAANC,MAAM,EAAAC,mBAAA,GAAAF,KAAA,CAAEoB,aAAa,EAAItD,YAAY,GAAAoC,mBAAA,CAAZpC,YAAY,EAAEK,WAAW,GAAA+B,mBAAA,CAAX/B,WAAW,EAAIF,WAAW,GAAA+B,KAAA,CAAX/B,WAAW;UAAAkC,qBAAA,GAGtFrC,YAAY,CADduD,iBAAiB,EAAAjB,sBAAA,GAAAD,qBAAA,cAA4D,CAAC,CAAC,GAAAA,qBAAA,EAAAE,sBAAA,GAAAD,sBAAA,CAA1DkB,aAAa,EAAAhB,sBAAA,GAAAD,sBAAA,cAAoC,CAAC,CAAC,GAAAA,sBAAA,EAAAE,sBAAA,GAAAD,sBAAA,CAAlCiB,UAAU,EAAAf,sBAAA,GAAAD,sBAAA,cAAe,CAAC,CAAC,GAAAA,sBAAA,EAAbE,MAAM,GAAAD,sBAAA,CAANC,MAAM;UAGtD1C,aAAa,GAAG0C,MAAM,KAAK,QAAQ;UACnCC,KAAK,GAAG,IAAAc,6BAAiB,EAAC1D,YAAY,EAAEC,aAAa,CAAC;UACtD4C,SAAS,GAAG/C,cAAc,CAAC;YAAEE,YAAY,EAAZA,YAAY;YAAEG,WAAW,EAAXA,WAAW;YAAEE,WAAW,EAAXA,WAAW;YAAEJ,aAAa,EAAbA;UAAc,CAAC,CAAC;UAAAkD,QAAA,CAAAE,IAAA;UAAA,OAC/DlB,MAAM,CAACS,KAAK,CAAC;YACvCA,KAAK,EAALA,KAAK;YACLC,SAAS,EAATA,SAAS;YACTc,WAAW,EAAE;UACf,CAAC,CAAC;QAAA;UAAAb,mBAAA,GAAAK,QAAA,CAAAS,IAAA;UAAAb,qBAAA,GAAAD,mBAAA,CAJME,IAAI;UAAJA,IAAI,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;UAAA,KAMbC,IAAI,CAACa,aAAa;YAAAV,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAA,OAAAF,QAAA,CAAAW,MAAA,WACb;YACLC,WAAW,EAAEf,IAAI,CAACa,aAAa,CAACG,OAAO;YACvCC,YAAY,EAAEjB,IAAI,CAACa,aAAa,CAACK;UACnC,CAAC;QAAA;UAAA,OAAAf,QAAA,CAAAW,MAAA,WAEId,IAAI;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAAgB,IAAA;MAAA;IAAA,GAAAlC,OAAA;EAAA,CACZ;EAAA,gBArBKN,SAASA,CAAAyC,EAAA;IAAA,OAAAvC,KAAA,CAAAxC,KAAA,OAAAE,SAAA;EAAA;AAAA,GAqBd"}
@@ -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"}
@@ -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,8 @@ const Entity = ({
362
371
  toggleModal: setModalStatus,
363
372
  formData: formData,
364
373
  onViewUrl: onViewUrlHandler,
365
- saveButtonText: saveButtonText
374
+ saveButtonText: saveButtonText,
375
+ saveOnChange: saveOnChange
366
376
  }), /*#__PURE__*/React.createElement("div", {
367
377
  className: "page-wrapper__content"
368
378
  }, /*#__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 />\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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"}
@@ -19,7 +19,8 @@ const EntityHeader = ({
19
19
  toggleModal,
20
20
  formData,
21
21
  pageName,
22
- onViewUrl
22
+ onViewUrl,
23
+ saveOnChange
23
24
  }) => {
24
25
  const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];
25
26
  const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;
@@ -28,7 +29,7 @@ const EntityHeader = ({
28
29
  title: pageTitle,
29
30
  pageName: pageName,
30
31
  onViewUrl: onViewUrl
31
- }, /*#__PURE__*/React.createElement(PageHeader.Actions, null, /*#__PURE__*/React.createElement(Button, {
32
+ }, /*#__PURE__*/React.createElement(PageHeader.Actions, null, !saveOnChange && /*#__PURE__*/React.createElement(Button, {
32
33
  onClick: onSubmit,
33
34
  modifiers: SaveButtonModifiers,
34
35
  "data-testid": "button-save"
@@ -75,7 +76,8 @@ EntityHeader.propTypes = {
75
76
  toggleModal: PropTypes.func.isRequired,
76
77
  formData: PropTypes.object,
77
78
  onViewUrl: PropTypes.func.isRequired,
78
- saveButtonText: PropTypes.string
79
+ saveButtonText: PropTypes.string,
80
+ saveOnChange: PropTypes.bool.isRequired
79
81
  };
80
82
  EntityHeader.defaultProps = {
81
83
  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","Object","keys","values","length","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 entityIdentifier,\n pageTitle,\n onSubmit,\n handlePublishAndUnpublish,\n isSaveButtonAvailable,\n isEnablePublishButton,\n isEnablePreviewButton,\n toggleCopyModal,\n toggleModal,\n formData,\n pageName,\n onViewUrl\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 return (\n <PageHeader title={pageTitle} pageName={pageName} onViewUrl={onViewUrl}>\n <PageHeader.Actions>\n <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid=\"button-save\">\n {saveButtonText}\n </Button>\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 {formData &&\n Object.keys(formData.values).length !== 0 && (\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 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};\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":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,OAAOC,MAAM,MAAM,qBAAqB;AACxC,OAAOC,IAAI,MAAM,mBAAmB;AACpC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAMC,YAAY,GAAGA,CAAC;EACpBC,cAAc;EACdC,UAAU;EACVC,gBAAgB;EAChBC,SAAS;EACTC,QAAQ;EACRC,yBAAyB;EACzBC,qBAAqB;EACrBC,qBAAqB;EACrBC,qBAAqB;EACrBC,eAAe;EACfC,WAAW;EACXC,QAAQ;EACRC,QAAQ;EACRC;AACF,CAAC,KAAK;EACJ,MAAMC,mBAAmB,GAAGR,qBAAqB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC;EACrF,MAAMS,iBAAiB,GAAGP,qBAAqB,IAAIN,gBAAgB,IAAID,UAAU,CAACe,EAAE;EACpF,MAAMC,qBAAqB,GAAGjB,cAAc,KAAKF,iBAAiB,CAACoB,MAAM;EAEzE,oBACE1B,KAAA,CAAA2B,aAAA,CAAC1B,UAAU;IAAC2B,KAAK,EAAEjB,SAAU;IAACS,QAAQ,EAAEA,QAAS;IAACC,SAAS,EAAEA;EAAU,gBACrErB,KAAA,CAAA2B,aAAA,CAAC1B,UAAU,CAAC4B,OAAO,qBACjB7B,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAAC4B,OAAO,EAAElB,QAAS;IAACmB,SAAS,EAAET,mBAAoB;IAAC,eAAY;EAAa,GACjFd,cACK,CAAC,eACTR,KAAA,CAAA2B,aAAA,CAACxB,IAAI;IAAC6B,QAAQ,EAAEP;EAAsB,gBACpCzB,KAAA,CAAA2B,aAAA,CAACxB,IAAI,CAAC8B,MAAM;IAAC,eAAc,iBAAgBb,QAAS,EAAE;IAACc,UAAU;EAAA,gBAC/DlC,KAAA,CAAA2B,aAAA;IAAMQ,SAAS,EAAC;EAAgB,GAAC,WAAe,CACrC,CAAC,eACdnC,KAAA,CAAA2B,aAAA,CAACxB,IAAI,CAACiC,OAAO;IAACF,UAAU;EAAA,GACrBnB,qBAAqB,iBACpBf,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAACiC,SAAS,EAAC,iBAAiB;IAACL,OAAO,EAAEjB;EAA0B,GAAC,SAEhE,CACT,EACAE,qBAAqB,iBACpBf,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAACiC,SAAS,EAAC,iBAAiB;IAACL,OAAO,EAAEjB;EAA0B,GAAC,WAEhE,CACT,EACAU,iBAAiB,iBAChBvB,KAAA,CAAA2B,aAAA,CAACtB,mBAAmB;IAACgC,MAAM,EAAE5B,UAAU,CAACe,EAAG;IAACc,UAAU,EAAE5B;EAAiB,CAAE,CAC5E,eACDV,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAACiC,SAAS,EAAC,iBAAiB;IAACL,OAAO,EAAEb;EAAgB,GAAC,gBAEtD,CAAC,EACRI,SAAS,iBACRrB,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAACiC,SAAS,EAAC,iBAAiB;IAACL,OAAO,EAAET;EAAU,GAAC,MAEhD,CACT,EACAF,QAAQ,IACPoB,MAAM,CAACC,IAAI,CAACrB,QAAQ,CAACsB,MAAM,CAAC,CAACC,MAAM,KAAK,CAAC,iBACvC1C,KAAA,CAAA2B,aAAA,CAACzB,MAAM;IAACiC,SAAS,EAAC,iBAAiB;IAACL,OAAO,EAAEZ;EAAY,GAAC,QAElD,CAEA,CACV,CACY,CACV,CAAC;AAEjB,CAAC;AAEDX,YAAY,CAACoC,SAAS,GAAG;EACvBlC,UAAU,EAAEL,SAAS,CAACwC,MAAM;EAC5BlC,gBAAgB,EAAEN,SAAS,CAACyC,MAAM;EAClClC,SAAS,EAAEP,SAAS,CAACyC,MAAM,CAACC,UAAU;EACtC1B,QAAQ,EAAEhB,SAAS,CAACyC,MAAM;EAC1BjC,QAAQ,EAAER,SAAS,CAAC2C,IAAI,CAACD,UAAU;EACnCjC,yBAAyB,EAAET,SAAS,CAAC2C,IAAI,CAACD,UAAU;EACpDhC,qBAAqB,EAAEV,SAAS,CAAC4C,IAAI,CAACF,UAAU;EAChD/B,qBAAqB,EAAEX,SAAS,CAAC6C,SAAS,CAAC,CAAC7C,SAAS,CAACyC,MAAM,EAAEzC,SAAS,CAAC4C,IAAI,CAAC,CAAC,CAACF,UAAU;EACzF9B,qBAAqB,EAAEZ,SAAS,CAAC4C,IAAI,CAACF,UAAU;EAChD7B,eAAe,EAAEb,SAAS,CAAC2C,IAAI,CAACD,UAAU;EAC1C5B,WAAW,EAAEd,SAAS,CAAC2C,IAAI,CAACD,UAAU;EACtC3B,QAAQ,EAAEf,SAAS,CAACwC,MAAM;EAC1BvB,SAAS,EAAEjB,SAAS,CAAC2C,IAAI,CAACD,UAAU;EACpCtC,cAAc,EAAEJ,SAAS,CAACyC;AAC5B,CAAC;AAEDtC,YAAY,CAAC2C,YAAY,GAAG;EAC1BzC,UAAU,EAAE,CAAC,CAAC;EACdC,gBAAgB,EAAE,EAAE;EACpBS,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,EAAE;EACZZ,cAAc,EAAE;AAClB,CAAC;AAEDD,YAAY,CAAC4C,WAAW,GAAG,cAAc;AAEzC,eAAe5C,YAAY"}
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","saveOnChange","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","saving","createElement","title","Actions","onClick","modifiers","disabled","Avatar","isMoreMenu","className","Content","itemId","itemEntity","Object","keys","values","length","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 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 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 {formData &&\n Object.keys(formData.values).length !== 0 && (\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 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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"}
@@ -74,7 +74,12 @@ const fetchData = async ({
74
74
  variables,
75
75
  fetchPolicy: 'network-only'
76
76
  });
77
- if (data.searchResults) return data.searchResults;
77
+ if (data.searchResults) {
78
+ return {
79
+ listingData: data.searchResults.results,
80
+ totalRecords: data.searchResults.total
81
+ };
82
+ }
78
83
  return data;
79
84
  };
80
85
  export { fetchData };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["buildListingQuery","buildVariables","entitySchema","isSearchQuery","listFilters","queryParams","identifier","sort","offset","limit","where","property","direction","parsedOffset","_objectSpread","Array","isArray","rawQuery","bool","must","filter","term","entityIdentifier","JSON","stringify","fetchData","client","querySettings","displayProperties","adminListings","dataSource","source","query","variables","data","fetchPolicy","searchResults"],"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 const { data = {} } = await client.query({ query, variables, fetchPolicy: 'network-only' });\n\n if (data.searchResults) return data.searchResults;\n\n return data;\n};\n\nexport { fetchData };\n"],"mappings":";;;AAAA,OAAOA,iBAAiB,MAAM,oCAAoC;AAElE,SAASC,cAAcA,CAAC;EAAEC,YAAY;EAAEC,aAAa;EAAEC,WAAW,GAAG,EAAE;EAAEC,WAAW,GAAG,CAAC;AAAE,CAAC,EAAE;EAC3F,MAAM;IAAEC;EAAW,CAAC,GAAGJ,YAAY;EACnC,MAAM;IAAEK,IAAI;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAM,CAAC,GAAGL,WAAW;EAClD,MAAM,CAAC;IAAEM,QAAQ;IAAEC;EAAU,CAAC,CAAC,GAAGL,IAAI;EACtC,MAAMM,YAAY,GAAI,GAAEF,QAAS,IAAGC,SAAU,EAAC;EAE/C,IAAI,CAACT,aAAa,EAChB,OAAAW,aAAA,CAAAA,aAAA,KACKT,WAAW;IACdK,KAAK,EAAE,CAACK,KAAK,CAACC,OAAO,CAACZ,WAAW,CAAC,GAAGA,WAAW,GAAGM;EAAK;EAG5D,MAAMO,QAAQ,GAAG;IACfC,IAAI,EAAE;MACJC,IAAI,EAAEf,WAAW,IAAI,EAAE;MACvBgB,MAAM,EAAE,CACN;QACEC,IAAI,EAAE;UACJC,gBAAgB,EAAEhB;QACpB;MACF,CAAC;IAEL;EACF,CAAC;EAED,OAAO;IACLG,KAAK;IACLD,MAAM;IACND,IAAI,EAAEM,YAAY;IAClBH,KAAK,EAAEa,IAAI,CAACC,SAAS,CAACP,QAAQ;EAChC,CAAC;AACH;AAEA,MAAMQ,SAAS,GAAG,MAAAA,CAAO;EAAEC,MAAM;EAAEC,aAAa,EAAE;IAAEzB,YAAY;IAAEG;EAAY,CAAC;EAAED;AAAY,CAAC,KAAK;EACjG,MAAM;IACJwB,iBAAiB,EAAE;MAAEC,aAAa,EAAE;QAAEC,UAAU,EAAE;UAAEC;QAAO,CAAC,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAChF,CAAC,GAAG7B,YAAY;EAEhB,MAAMC,aAAa,GAAG4B,MAAM,KAAK,QAAQ;EACzC,MAAMC,KAAK,GAAGhC,iBAAiB,CAACE,YAAY,EAAEC,aAAa,CAAC;EAC5D,MAAM8B,SAAS,GAAGhC,cAAc,CAAC;IAAEC,YAAY;IAAEE,WAAW;IAAEC,WAAW;IAAEF;EAAc,CAAC,CAAC;EAC3F,MAAM;IAAE+B,IAAI,GAAG,CAAC;EAAE,CAAC,GAAG,MAAMR,MAAM,CAACM,KAAK,CAAC;IAAEA,KAAK;IAAEC,SAAS;IAAEE,WAAW,EAAE;EAAe,CAAC,CAAC;EAE3F,IAAID,IAAI,CAACE,aAAa,EAAE,OAAOF,IAAI,CAACE,aAAa;EAEjD,OAAOF,IAAI;AACb,CAAC;AAED,SAAST,SAAS"}
1
+ {"version":3,"file":"index.js","names":["buildListingQuery","buildVariables","entitySchema","isSearchQuery","listFilters","queryParams","identifier","sort","offset","limit","where","property","direction","parsedOffset","_objectSpread","Array","isArray","rawQuery","bool","must","filter","term","entityIdentifier","JSON","stringify","fetchData","client","querySettings","displayProperties","adminListings","dataSource","source","query","variables","data","fetchPolicy","searchResults","listingData","results","totalRecords","total"],"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 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":";;;AAAA,OAAOA,iBAAiB,MAAM,oCAAoC;AAElE,SAASC,cAAcA,CAAC;EAAEC,YAAY;EAAEC,aAAa;EAAEC,WAAW,GAAG,EAAE;EAAEC,WAAW,GAAG,CAAC;AAAE,CAAC,EAAE;EAC3F,MAAM;IAAEC;EAAW,CAAC,GAAGJ,YAAY;EACnC,MAAM;IAAEK,IAAI;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAM,CAAC,GAAGL,WAAW;EAClD,MAAM,CAAC;IAAEM,QAAQ;IAAEC;EAAU,CAAC,CAAC,GAAGL,IAAI;EACtC,MAAMM,YAAY,GAAI,GAAEF,QAAS,IAAGC,SAAU,EAAC;EAE/C,IAAI,CAACT,aAAa,EAChB,OAAAW,aAAA,CAAAA,aAAA,KACKT,WAAW;IACdK,KAAK,EAAE,CAACK,KAAK,CAACC,OAAO,CAACZ,WAAW,CAAC,GAAGA,WAAW,GAAGM;EAAK;EAG5D,MAAMO,QAAQ,GAAG;IACfC,IAAI,EAAE;MACJC,IAAI,EAAEf,WAAW,IAAI,EAAE;MACvBgB,MAAM,EAAE,CACN;QACEC,IAAI,EAAE;UACJC,gBAAgB,EAAEhB;QACpB;MACF,CAAC;IAEL;EACF,CAAC;EAED,OAAO;IACLG,KAAK;IACLD,MAAM;IACND,IAAI,EAAEM,YAAY;IAClBH,KAAK,EAAEa,IAAI,CAACC,SAAS,CAACP,QAAQ;EAChC,CAAC;AACH;AAEA,MAAMQ,SAAS,GAAG,MAAAA,CAAO;EAAEC,MAAM;EAAEC,aAAa,EAAE;IAAEzB,YAAY;IAAEG;EAAY,CAAC;EAAED;AAAY,CAAC,KAAK;EACjG,MAAM;IACJwB,iBAAiB,EAAE;MAAEC,aAAa,EAAE;QAAEC,UAAU,EAAE;UAAEC;QAAO,CAAC,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAChF,CAAC,GAAG7B,YAAY;EAEhB,MAAMC,aAAa,GAAG4B,MAAM,KAAK,QAAQ;EACzC,MAAMC,KAAK,GAAGhC,iBAAiB,CAACE,YAAY,EAAEC,aAAa,CAAC;EAC5D,MAAM8B,SAAS,GAAGhC,cAAc,CAAC;IAAEC,YAAY;IAAEE,WAAW;IAAEC,WAAW;IAAEF;EAAc,CAAC,CAAC;EAC3F,MAAM;IAAE+B,IAAI,GAAG,CAAC;EAAE,CAAC,GAAG,MAAMR,MAAM,CAACM,KAAK,CAAC;IACvCA,KAAK;IACLC,SAAS;IACTE,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,IAAID,IAAI,CAACE,aAAa,EAAE;IACtB,OAAO;MACLC,WAAW,EAAEH,IAAI,CAACE,aAAa,CAACE,OAAO;MACvCC,YAAY,EAAEL,IAAI,CAACE,aAAa,CAACI;IACnC,CAAC;EACH;EACA,OAAON,IAAI;AACb,CAAC;AAED,SAAST,SAAS"}
@@ -0,0 +1,12 @@
1
+ import { useEffect } from 'react';
2
+ function useCallbackDebounce(callback, delay, dependencies, skip) {
3
+ useEffect(() => {
4
+ if (skip) return;
5
+ const timer = setTimeout(callback, delay);
6
+ return () => clearTimeout(timer);
7
+ },
8
+ // eslint-disable-next-line react-hooks/exhaustive-deps
9
+ dependencies);
10
+ }
11
+ export default useCallbackDebounce;
12
+ //# sourceMappingURL=useCallbackDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCallbackDebounce.js","names":["useEffect","useCallbackDebounce","callback","delay","dependencies","skip","timer","setTimeout","clearTimeout"],"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,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,mBAAmBA,CAACC,QAAQ,EAAEC,KAAK,EAAEC,YAAY,EAAEC,IAAI,EAAE;EAChEL,SAAS,CACP,MAAM;IACJ,IAAIK,IAAI,EAAE;IACV,MAAMC,KAAK,GAAGC,UAAU,CAACL,QAAQ,EAAEC,KAAK,CAAC;IACzC,OAAO,MAAMK,YAAY,CAACF,KAAK,CAAC;EAClC,CAAC;EACD;EACAF,YACF,CAAC;AACH;AAEA,eAAeH,mBAAmB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-data-ui",
3
- "version": "0.141.0-core-styles.1",
3
+ "version": "0.141.0-core-styles.3",
4
4
  "description": "Blaze plugin data ui",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -27,11 +27,11 @@
27
27
  },
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
- "@blaze-cms/admin-ui-utils": "0.140.2-core-styles.1",
30
+ "@blaze-cms/admin-ui-utils": "0.141.0-core-styles.3",
31
31
  "@blaze-cms/core-errors": "0.140.2-core-styles.1",
32
32
  "@blaze-cms/plugin-render-hooks-ui": "0.140.2-core-styles.1",
33
- "@blaze-cms/react-form-builder": "0.140.2-core-styles.1",
34
- "@blaze-cms/react-page-builder": "0.141.0-core-styles.1",
33
+ "@blaze-cms/react-form-builder": "0.141.0-core-styles.3",
34
+ "@blaze-cms/react-page-builder": "0.141.0-core-styles.3",
35
35
  "@blaze-cms/setup-ui": "0.140.2-core-styles.1",
36
36
  "@blaze-cms/versioning-ui": "0.140.2-core-styles.1",
37
37
  "@blaze-react/button": "0.5.19",
@@ -67,5 +67,5 @@
67
67
  "lib/*",
68
68
  "lib-es/*"
69
69
  ],
70
- "gitHead": "794c16070017514b7fa0f10468f2892cda987bbc"
70
+ "gitHead": "d0eaddbf6a1e2cca4c955c0e95345354c24e7fd0"
71
71
  }
@@ -14,6 +14,7 @@ import isFormEmpty from '../utils/is-form-empty';
14
14
  import availableActions from './actions-handlers';
15
15
  import SideBarRelations from './SideBarRelations';
16
16
  import Tabs from '../../Tabs';
17
+ import useCallbackDebounce from '../../hooks/useCallbackDebounce';
17
18
 
18
19
  import {
19
20
  ENTITY_PUBLISHED,
@@ -27,6 +28,7 @@ import {
27
28
  UNPUBLISHED_WARNING
28
29
  } from '../../../constants';
29
30
  import EntityHeader from './EntityHeader';
31
+
30
32
  import {
31
33
  validateSideBarRelations,
32
34
  canViewPage,
@@ -84,6 +86,20 @@ const Entity = ({
84
86
 
85
87
  // Here's how we'll keep track of our component's mounted state
86
88
  const componentIsMounted = useRef(true);
89
+
90
+ const {
91
+ displayProperties: { saveOnChange = false }
92
+ } = schema;
93
+
94
+ useCallbackDebounce(
95
+ () => {
96
+ isSaveButtonAvailable && onSubmit();
97
+ },
98
+ 500,
99
+ [isSaveButtonAvailable],
100
+ !saveOnChange
101
+ );
102
+
87
103
  useEffect(
88
104
  () => () => {
89
105
  componentIsMounted.current = false;
@@ -424,6 +440,7 @@ const Entity = ({
424
440
  formData={formData}
425
441
  onViewUrl={onViewUrlHandler}
426
442
  saveButtonText={saveButtonText}
443
+ saveOnChange={saveOnChange}
427
444
  />
428
445
  <div className="page-wrapper__content">
429
446
  <div className="tabs-wrapper tabs-wrapper__tab">
@@ -20,7 +20,8 @@ const EntityHeader = ({
20
20
  toggleModal,
21
21
  formData,
22
22
  pageName,
23
- onViewUrl
23
+ onViewUrl,
24
+ saveOnChange
24
25
  }) => {
25
26
  const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];
26
27
  const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;
@@ -29,9 +30,11 @@ const EntityHeader = ({
29
30
  return (
30
31
  <PageHeader title={pageTitle} pageName={pageName} onViewUrl={onViewUrl}>
31
32
  <PageHeader.Actions>
32
- <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid="button-save">
33
- {saveButtonText}
34
- </Button>
33
+ {!saveOnChange && (
34
+ <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid="button-save">
35
+ {saveButtonText}
36
+ </Button>
37
+ )}
35
38
  <More disabled={shouldDisableMoreMenu}>
36
39
  <More.Avatar data-testid={`entity-header-${pageName}`} isMoreMenu>
37
40
  <span className="material-icons">more_vert</span>
@@ -85,7 +88,8 @@ EntityHeader.propTypes = {
85
88
  toggleModal: PropTypes.func.isRequired,
86
89
  formData: PropTypes.object,
87
90
  onViewUrl: PropTypes.func.isRequired,
88
- saveButtonText: PropTypes.string
91
+ saveButtonText: PropTypes.string,
92
+ saveOnChange: PropTypes.bool.isRequired
89
93
  };
90
94
 
91
95
  EntityHeader.defaultProps = {
@@ -41,10 +41,18 @@ const fetchData = async ({ client, querySettings: { entitySchema, queryParams },
41
41
  const isSearchQuery = source === 'search';
42
42
  const query = buildListingQuery(entitySchema, isSearchQuery);
43
43
  const variables = buildVariables({ entitySchema, listFilters, queryParams, isSearchQuery });
44
- const { data = {} } = await client.query({ query, variables, fetchPolicy: 'network-only' });
45
-
46
- if (data.searchResults) return data.searchResults;
44
+ const { data = {} } = await client.query({
45
+ query,
46
+ variables,
47
+ fetchPolicy: 'network-only'
48
+ });
47
49
 
50
+ if (data.searchResults) {
51
+ return {
52
+ listingData: data.searchResults.results,
53
+ totalRecords: data.searchResults.total
54
+ };
55
+ }
48
56
  return data;
49
57
  };
50
58
 
@@ -0,0 +1,15 @@
1
+ import { useEffect } from 'react';
2
+
3
+ function useCallbackDebounce(callback, delay, dependencies, skip) {
4
+ useEffect(
5
+ () => {
6
+ if (skip) return;
7
+ const timer = setTimeout(callback, delay);
8
+ return () => clearTimeout(timer);
9
+ },
10
+ // eslint-disable-next-line react-hooks/exhaustive-deps
11
+ dependencies
12
+ );
13
+ }
14
+
15
+ export default useCallbackDebounce;