@blaze-cms/plugin-data-ui 0.146.0-rc-eagle-3.9 → 0.146.0-rc-eagle-3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/lib/components/EntityManager/Entity/Entity.js +26 -1
  2. package/lib/components/EntityManager/Entity/Entity.js.map +1 -1
  3. package/lib/components/EntityManager/Entity/EntityHeader/EntityHeader.js +14 -1
  4. package/lib/components/EntityManager/Entity/EntityHeader/EntityHeader.js.map +1 -1
  5. package/lib/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js +16 -2
  6. package/lib/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js.map +1 -1
  7. package/lib/components/EntityManager/utils/entity.js +22 -1
  8. package/lib/components/EntityManager/utils/entity.js.map +1 -1
  9. package/lib/components/ListingTable/ListingTable.js +1 -1
  10. package/lib/components/ListingTable/ListingTable.js.map +1 -1
  11. package/lib/constants.js +3 -1
  12. package/lib/constants.js.map +1 -1
  13. package/lib/utils/add-content-menu-items.js +25 -22
  14. package/lib/utils/add-content-menu-items.js.map +1 -1
  15. package/lib-es/components/EntityManager/Entity/Entity.js +29 -4
  16. package/lib-es/components/EntityManager/Entity/Entity.js.map +1 -1
  17. package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js +14 -1
  18. package/lib-es/components/EntityManager/Entity/EntityHeader/EntityHeader.js.map +1 -1
  19. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js +16 -2
  20. package/lib-es/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js.map +1 -1
  21. package/lib-es/components/EntityManager/utils/entity.js +23 -3
  22. package/lib-es/components/EntityManager/utils/entity.js.map +1 -1
  23. package/lib-es/components/ListingTable/ListingTable.js +1 -1
  24. package/lib-es/components/ListingTable/ListingTable.js.map +1 -1
  25. package/lib-es/constants.js +3 -1
  26. package/lib-es/constants.js.map +1 -1
  27. package/lib-es/utils/add-content-menu-items.js +25 -22
  28. package/lib-es/utils/add-content-menu-items.js.map +1 -1
  29. package/package.json +5 -5
  30. package/src/components/EntityManager/Entity/Entity.js +31 -5
  31. package/src/components/EntityManager/Entity/EntityHeader/EntityHeader.js +17 -1
  32. package/src/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js +19 -2
  33. package/src/components/EntityManager/utils/entity.js +28 -8
  34. package/src/components/ListingTable/ListingTable.js +1 -1
  35. package/src/constants.js +4 -0
  36. package/src/utils/add-content-menu-items.js +21 -20
@@ -356,7 +356,30 @@ const Entity = ({
356
356
  }, addToast);
357
357
  };
358
358
  const showModal = (0, _entity.checkFulfilConditions)(formData, modalStatus);
359
- const onViewUrlHandler = (0, _entity.canViewPage)(entity, schema, entityIsPublished) ? () => (0, _entity.onViewUrlClick)(getFullUrl) : onViewUrl;
359
+
360
+ // Unpublished keeps the button, disabled with a reason, rather than hiding it.
361
+ const isViewable = (0, _entity.canViewPage)(entity, schema, entityIsPublished);
362
+ const onViewUrlHandler = isViewable ? () => (0, _entity.onViewUrlClick)(getFullUrl) : onViewUrl;
363
+ const viewUrlDisabledReason = !isViewable && (0, _entity.hasViewableUrl)(entity, schema) ? _constants.VIEW_UNPUBLISHED_REASON : null;
364
+ const onTitleChange = value => {
365
+ if (!componentIsMounted.current) return;
366
+ const updatedFormValues = (0, _entity.getUpdatedFormValues)({
367
+ id: _constants.TITLE_FIELD_ID,
368
+ value,
369
+ formValues
370
+ });
371
+ const [isValid, valuesChecked] = (0, _reactFormBuilder.validate)({
372
+ values: updatedFormValues,
373
+ schema,
374
+ currentField: _constants.TITLE_FIELD_ID
375
+ });
376
+ setFormValues(valuesChecked);
377
+ setPageTitle(value);
378
+ setIsFormValid(isValid);
379
+ setIsSaveButtonAvailable(isValid);
380
+ isValid && setSaveButtonText(_constants.SAVE_BUTTON_TEXTS.save);
381
+ };
382
+ const onTitleChangeHandler = (0, _entity.canEditTitle)(schema, formValues) ? onTitleChange : null;
360
383
  const pageName = formData && formData.values && formData.values.name;
361
384
  const hasToDisplayPrompt = isSaveButtonAvailable && !suppressPrompt;
362
385
  const showSideBarRelations = (0, _entity.checkFulfilConditions)(schema, formData);
@@ -381,6 +404,8 @@ const Entity = ({
381
404
  toggleModal: setModalStatus,
382
405
  formData: formData,
383
406
  onViewUrl: onViewUrlHandler,
407
+ viewUrlDisabledReason: viewUrlDisabledReason,
408
+ onTitleChange: onTitleChangeHandler,
384
409
  saveButtonText: saveButtonText,
385
410
  saveOnChange: saveOnChange,
386
411
  entitySchema: entitySchema
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_client","_propTypes","_interopRequireDefault","_pluginRenderHooksUi","_adminUiUtils","_reactFormBuilder","_admin","_toaster","_lodash","_dataMappers","_actionsHandlers","_SideBarRelations","_useCallbackDebounce","_constants","_EntityHeader","_entity","_useToggle","_InfoBoxes","_RecordEditContext","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_formData$values","formValues","setFormValues","useState","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","useToggle","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","SAVE_BUTTON_TEXTS","save","externalUpdateTime","setExternalUpdateTime","suppressPrompt","setSuppressPrompt","isRightSidebarOpen","setIsRightSidebarOpen","handleToggleRightSidebar","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","addToast","useToasts","componentIsMounted","useRef","displayProperties","saveOnChange","useCallbackDebounce","onSubmit","useEffect","current","getPageName","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","currentItemId","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties2","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","pageBuilder","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","itemsToAdd","item","index","findIndex","updatedEntity","isNotValidOrNotNewValueSet","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","TEXT_CONTENT_TYPE","isPublished","ENTITY_PUBLISHED","isUnpublish","UNPUBLISHED_WARNING","appearance","autoDismiss","savedPageMessage","ERROR","shared","triggerPublish","showModal","onViewUrlHandler","canViewPage","onViewUrlClick","pageName","hasToDisplayPrompt","showSideBarRelations","createElement","RecordEditContextProvider","updated","className","toggleCopyModal","toggleModal","Prompt","when","message","LEAVE_PAGE_MESSAGE","DeleteAction","onClose","deleteAction","itemName","CopyDataFromAction","copyAction","RenderHook","hookKey","FormBuilder","getIsFormValid","onChange","onExternalUpdate","mode","isOpen","onToggle","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 } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport useCallbackDebounce from '../../hooks/useCallbackDebounce';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\n\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n const [suppressPrompt, setSuppressPrompt] = useState(false);\n const [isRightSidebarOpen, setIsRightSidebarOpen] = useState(true);\n const handleToggleRightSidebar = () => setIsRightSidebarOpen(!isRightSidebarOpen);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n\n const {\n displayProperties: { saveOnChange = false }\n } = schema;\n\n useCallbackDebounce(\n () => {\n isSaveButtonAvailable && onSubmit();\n },\n 500,\n [isSaveButtonAvailable],\n !saveOnChange\n );\n\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(() => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id,\n currentItemId: entity ? entity.id : null\n }\n });\n }\n }, [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]);\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValid && isNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n if (!isSaveButtonAvailable) return null;\n\n if (isCreatePage) {\n setSuppressPrompt(true);\n }\n const parsedFormValues = parseFormValues(formValues);\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasToDisplayPrompt = isSaveButtonAvailable && !suppressPrompt;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime, updated: formData?.values?.updated }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n saveOnChange={saveOnChange}\n entitySchema={entitySchema}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div\n className={`page__content${!isRightSidebarOpen ? ' right-sidebar-collapsed' : ''}`}>\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n mode={isNewEntity ? 'create' : 'update'}\n />\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div\n className={`column column--one-third page-sidebar page-sidebar--relations${\n !isRightSidebarOpen ? ' sidebar--collapsed' : ''\n }`}>\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n isOpen={isRightSidebarOpen}\n onToggle={handleToggleRightSidebar}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Entity.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_client","_propTypes","_interopRequireDefault","_pluginRenderHooksUi","_adminUiUtils","_reactFormBuilder","_admin","_toaster","_lodash","_dataMappers","_actionsHandlers","_SideBarRelations","_useCallbackDebounce","_constants","_EntityHeader","_entity","_useToggle","_InfoBoxes","_RecordEditContext","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","_formData$values","formValues","setFormValues","useState","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","entityIsPublished","setEntityIsPublish","values","status","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","modalStatus","setModalStatus","useToggle","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","saveButtonText","setSaveButtonText","SAVE_BUTTON_TEXTS","save","externalUpdateTime","setExternalUpdateTime","suppressPrompt","setSuppressPrompt","isRightSidebarOpen","setIsRightSidebarOpen","handleToggleRightSidebar","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","addToast","useToasts","componentIsMounted","useRef","displayProperties","saveOnChange","useCallbackDebounce","onSubmit","useEffect","current","getPageName","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","currentItemId","getFullUrl","getEntityUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getFormValues","onChangeSideBarRelations","value","requiredChildField","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","_ref","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","_objectWithoutProperties2","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","pageBuilder","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","itemsToAdd","item","index","findIndex","updatedEntity","isNotValidOrNotNewValueSet","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","delete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","target","textContent","isPublishButton","TEXT_CONTENT_TYPE","isPublished","ENTITY_PUBLISHED","isUnpublish","UNPUBLISHED_WARNING","appearance","autoDismiss","savedPageMessage","ERROR","shared","triggerPublish","showModal","isViewable","canViewPage","onViewUrlHandler","onViewUrlClick","viewUrlDisabledReason","hasViewableUrl","VIEW_UNPUBLISHED_REASON","onTitleChange","TITLE_FIELD_ID","validate","onTitleChangeHandler","canEditTitle","pageName","hasToDisplayPrompt","showSideBarRelations","createElement","RecordEditContextProvider","updated","className","toggleCopyModal","toggleModal","Prompt","when","message","LEAVE_PAGE_MESSAGE","DeleteAction","onClose","deleteAction","itemName","CopyDataFromAction","copyAction","RenderHook","hookKey","FormBuilder","getIsFormValid","onChange","onExternalUpdate","mode","isOpen","onToggle","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 } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues, validate } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport useCallbackDebounce from '../../hooks/useCallbackDebounce';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING,\n VIEW_UNPUBLISHED_REASON,\n TITLE_FIELD_ID\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\n\nimport {\n validateSideBarRelations,\n canEditTitle,\n canViewPage,\n hasViewableUrl,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\nimport { RecordEditContextProvider } from '../utils/RecordEditContext';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n const [externalUpdateTime, setExternalUpdateTime] = useState(null);\n const [suppressPrompt, setSuppressPrompt] = useState(false);\n const [isRightSidebarOpen, setIsRightSidebarOpen] = useState(true);\n const handleToggleRightSidebar = () => setIsRightSidebarOpen(!isRightSidebarOpen);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n\n const {\n displayProperties: { saveOnChange = false }\n } = schema;\n\n useCallbackDebounce(\n () => {\n isSaveButtonAvailable && onSubmit();\n },\n 500,\n [isSaveButtonAvailable],\n !saveOnChange\n );\n\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(() => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id,\n currentItemId: entity ? entity.id : null\n }\n });\n }\n }, [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]);\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n\n if (isValid && isNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n if (!isSaveButtonAvailable) return null;\n\n if (isCreatePage) {\n setSuppressPrompt(true);\n }\n const parsedFormValues = parseFormValues(formValues);\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n // Unpublished keeps the button, disabled with a reason, rather than hiding it.\n const isViewable = canViewPage(entity, schema, entityIsPublished);\n const onViewUrlHandler = isViewable ? () => onViewUrlClick(getFullUrl) : onViewUrl;\n const viewUrlDisabledReason =\n !isViewable && hasViewableUrl(entity, schema) ? VIEW_UNPUBLISHED_REASON : null;\n\n const onTitleChange = value => {\n if (!componentIsMounted.current) return;\n const updatedFormValues = getUpdatedFormValues({ id: TITLE_FIELD_ID, value, formValues });\n const [isValid, valuesChecked] = validate({\n values: updatedFormValues,\n schema,\n currentField: TITLE_FIELD_ID\n });\n\n setFormValues(valuesChecked);\n setPageTitle(value);\n setIsFormValid(isValid);\n setIsSaveButtonAvailable(isValid);\n isValid && setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n };\n\n const onTitleChangeHandler = canEditTitle(schema, formValues) ? onTitleChange : null;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasToDisplayPrompt = isSaveButtonAvailable && !suppressPrompt;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n\n return (\n <RecordEditContextProvider value={{ externalUpdateTime, updated: formData?.values?.updated }}>\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n viewUrlDisabledReason={viewUrlDisabledReason}\n onTitleChange={onTitleChangeHandler}\n saveButtonText={saveButtonText}\n saveOnChange={saveOnChange}\n entitySchema={entitySchema}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div\n className={`page__content${!isRightSidebarOpen ? ' right-sidebar-collapsed' : ''}`}>\n <div className=\"page__content\">\n <div className=\"content\">\n <RenderHook\n hookKey={`entity:${action}:main:top`}\n entity={entity}\n schema={schema}\n />\n <InfoBoxes id={entity.id} schema={schema} />\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n onExternalUpdate={setExternalUpdateTime}\n mode={isNewEntity ? 'create' : 'update'}\n />\n <RenderHook\n hookKey={`entity:${action}:main:bottom`}\n entity={entity}\n schema={schema}\n />\n </div>\n </div>\n </div>\n </div>\n\n <div\n className={`column column--one-third page-sidebar page-sidebar--relations${\n !isRightSidebarOpen ? ' sidebar--collapsed' : ''\n }`}>\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n isOpen={isRightSidebarOpen}\n onToggle={handleToggleRightSidebar}\n />\n )}\n </div>\n </div>\n </div>\n </RecordEditContextProvider>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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","ignoreList":[]}
@@ -28,6 +28,8 @@ const EntityHeader = ({
28
28
  formData,
29
29
  pageName,
30
30
  onViewUrl,
31
+ viewUrlDisabledReason,
32
+ onTitleChange,
31
33
  saveOnChange
32
34
  }) => {
33
35
  const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];
@@ -46,7 +48,14 @@ const EntityHeader = ({
46
48
  return /*#__PURE__*/_react.default.createElement(_admin.PageHeader, {
47
49
  title: pageTitle,
48
50
  pageName: pageName,
49
- onViewUrl: onViewUrl
51
+ onViewUrl: onViewUrl,
52
+ viewUrlDisabledReason: viewUrlDisabledReason,
53
+ onTitleChange: onTitleChange,
54
+ titleActions: showPreviewButton ? /*#__PURE__*/_react.default.createElement(_HeaderPreviewButton.default, {
55
+ itemId: entityData.id,
56
+ itemEntity: entityIdentifier,
57
+ iconOnly: true
58
+ }) : null
50
59
  }, /*#__PURE__*/_react.default.createElement(_admin.PageHeader.Actions, null, !saveOnChange && /*#__PURE__*/_react.default.createElement(_button.default, {
51
60
  onClick: onSubmit,
52
61
  modifiers: SaveButtonModifiers,
@@ -95,6 +104,8 @@ EntityHeader.propTypes = {
95
104
  toggleModal: _propTypes.default.func.isRequired,
96
105
  formData: _propTypes.default.object,
97
106
  onViewUrl: _propTypes.default.func.isRequired,
107
+ viewUrlDisabledReason: _propTypes.default.string,
108
+ onTitleChange: _propTypes.default.func,
98
109
  saveButtonText: _propTypes.default.string,
99
110
  saveOnChange: _propTypes.default.bool.isRequired
100
111
  };
@@ -103,6 +114,8 @@ EntityHeader.defaultProps = {
103
114
  entityIdentifier: '',
104
115
  formData: null,
105
116
  pageName: '',
117
+ viewUrlDisabledReason: null,
118
+ onTitleChange: null,
106
119
  saveButtonText: 'save'
107
120
  };
108
121
  EntityHeader.displayName = 'EntityHeader';
@@ -1 +1 @@
1
- {"version":3,"file":"EntityHeader.js","names":["_react","_interopRequireDefault","require","_admin","_button","_more","_propTypes","_HeaderPreviewButton","_constants","EntityHeader","saveButtonText","entityData","entitySchema","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","saveOnChange","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","SAVE_BUTTON_TEXTS","saving","displayProperties","adminCrudActions","delete","deleteAction","active","showDeleteButton","Object","keys","values","length","default","createElement","PageHeader","title","Actions","onClick","modifiers","disabled","Avatar","isMoreMenu","className","Content","itemId","itemEntity","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 entitySchema,\n entityIdentifier,\n pageTitle,\n onSubmit,\n handlePublishAndUnpublish,\n isSaveButtonAvailable,\n isEnablePublishButton,\n isEnablePreviewButton,\n toggleCopyModal,\n toggleModal,\n formData,\n pageName,\n onViewUrl,\n saveOnChange\n}) => {\n const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];\n const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;\n const shouldDisableMoreMenu = saveButtonText === SAVE_BUTTON_TEXTS.saving;\n\n const {\n displayProperties: { adminCrudActions: { delete: deleteAction = { active: true } } = {} } = {}\n } = entitySchema || {};\n\n const showDeleteButton =\n deleteAction.active && formData && Object.keys(formData.values).length !== 0;\n\n return (\n <PageHeader title={pageTitle} pageName={pageName} onViewUrl={onViewUrl}>\n <PageHeader.Actions>\n {!saveOnChange && (\n <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid=\"button-save\">\n {saveButtonText}\n </Button>\n )}\n <More disabled={shouldDisableMoreMenu}>\n <More.Avatar data-testid={`entity-header-${pageName}`} isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Publish\n </Button>\n )}\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Unpublish\n </Button>\n )}\n {showPreviewButton && (\n <HeaderPreviewButton itemId={entityData.id} itemEntity={entityIdentifier} />\n )}\n <Button className=\"more-menu__link\" onClick={toggleCopyModal}>\n Copy data from\n </Button>\n {onViewUrl && (\n <Button className=\"more-menu__link\" onClick={onViewUrl}>\n View\n </Button>\n )}\n {showDeleteButton && (\n <Button className=\"more-menu__link\" onClick={toggleModal}>\n Delete\n </Button>\n )}\n </More.Content>\n </More>\n </PageHeader.Actions>\n </PageHeader>\n );\n};\n\nEntityHeader.propTypes = {\n entityData: PropTypes.object,\n entityIdentifier: PropTypes.string,\n entitySchema: PropTypes.object.isRequired,\n pageTitle: PropTypes.string.isRequired,\n pageName: PropTypes.string,\n onSubmit: PropTypes.func.isRequired,\n handlePublishAndUnpublish: PropTypes.func.isRequired,\n isSaveButtonAvailable: PropTypes.bool.isRequired,\n isEnablePublishButton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]).isRequired,\n isEnablePreviewButton: PropTypes.bool.isRequired,\n toggleCopyModal: PropTypes.func.isRequired,\n toggleModal: PropTypes.func.isRequired,\n formData: PropTypes.object,\n onViewUrl: PropTypes.func.isRequired,\n saveButtonText: PropTypes.string,\n saveOnChange: PropTypes.bool.isRequired\n};\n\nEntityHeader.defaultProps = {\n entityData: {},\n entityIdentifier: '',\n formData: null,\n pageName: '',\n saveButtonText: 'save'\n};\n\nEntityHeader.displayName = 'EntityHeader';\n\nexport default EntityHeader;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"EntityHeader.js","names":["_react","_interopRequireDefault","require","_admin","_button","_more","_propTypes","_HeaderPreviewButton","_constants","EntityHeader","saveButtonText","entityData","entitySchema","entityIdentifier","pageTitle","onSubmit","handlePublishAndUnpublish","isSaveButtonAvailable","isEnablePublishButton","isEnablePreviewButton","toggleCopyModal","toggleModal","formData","pageName","onViewUrl","viewUrlDisabledReason","onTitleChange","saveOnChange","SaveButtonModifiers","showPreviewButton","id","shouldDisableMoreMenu","SAVE_BUTTON_TEXTS","saving","displayProperties","adminCrudActions","delete","deleteAction","active","showDeleteButton","Object","keys","values","length","default","createElement","PageHeader","title","titleActions","itemId","itemEntity","iconOnly","Actions","onClick","modifiers","disabled","Avatar","isMoreMenu","className","Content","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 entitySchema,\n entityIdentifier,\n pageTitle,\n onSubmit,\n handlePublishAndUnpublish,\n isSaveButtonAvailable,\n isEnablePublishButton,\n isEnablePreviewButton,\n toggleCopyModal,\n toggleModal,\n formData,\n pageName,\n onViewUrl,\n viewUrlDisabledReason,\n onTitleChange,\n saveOnChange\n}) => {\n const SaveButtonModifiers = isSaveButtonAvailable ? ['small'] : ['small', 'disabled'];\n const showPreviewButton = isEnablePreviewButton && entityIdentifier && entityData.id;\n const shouldDisableMoreMenu = saveButtonText === SAVE_BUTTON_TEXTS.saving;\n\n const {\n displayProperties: { adminCrudActions: { delete: deleteAction = { active: true } } = {} } = {}\n } = entitySchema || {};\n\n const showDeleteButton =\n deleteAction.active && formData && Object.keys(formData.values).length !== 0;\n\n return (\n <PageHeader\n title={pageTitle}\n pageName={pageName}\n onViewUrl={onViewUrl}\n viewUrlDisabledReason={viewUrlDisabledReason}\n onTitleChange={onTitleChange}\n titleActions={\n showPreviewButton ? (\n <HeaderPreviewButton itemId={entityData.id} itemEntity={entityIdentifier} iconOnly />\n ) : null\n }>\n <PageHeader.Actions>\n {!saveOnChange && (\n <Button onClick={onSubmit} modifiers={SaveButtonModifiers} data-testid=\"button-save\">\n {saveButtonText}\n </Button>\n )}\n <More disabled={shouldDisableMoreMenu}>\n <More.Avatar data-testid={`entity-header-${pageName}`} isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Publish\n </Button>\n )}\n {isEnablePublishButton && (\n <Button className=\"more-menu__link\" onClick={handlePublishAndUnpublish}>\n Unpublish\n </Button>\n )}\n {showPreviewButton && (\n <HeaderPreviewButton itemId={entityData.id} itemEntity={entityIdentifier} />\n )}\n <Button className=\"more-menu__link\" onClick={toggleCopyModal}>\n Copy data from\n </Button>\n {onViewUrl && (\n <Button className=\"more-menu__link\" onClick={onViewUrl}>\n View\n </Button>\n )}\n {showDeleteButton && (\n <Button className=\"more-menu__link\" onClick={toggleModal}>\n Delete\n </Button>\n )}\n </More.Content>\n </More>\n </PageHeader.Actions>\n </PageHeader>\n );\n};\n\nEntityHeader.propTypes = {\n entityData: PropTypes.object,\n entityIdentifier: PropTypes.string,\n entitySchema: PropTypes.object.isRequired,\n pageTitle: PropTypes.string.isRequired,\n pageName: PropTypes.string,\n onSubmit: PropTypes.func.isRequired,\n handlePublishAndUnpublish: PropTypes.func.isRequired,\n isSaveButtonAvailable: PropTypes.bool.isRequired,\n isEnablePublishButton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]).isRequired,\n isEnablePreviewButton: PropTypes.bool.isRequired,\n toggleCopyModal: PropTypes.func.isRequired,\n toggleModal: PropTypes.func.isRequired,\n formData: PropTypes.object,\n onViewUrl: PropTypes.func.isRequired,\n viewUrlDisabledReason: PropTypes.string,\n onTitleChange: PropTypes.func,\n saveButtonText: PropTypes.string,\n saveOnChange: PropTypes.bool.isRequired\n};\n\nEntityHeader.defaultProps = {\n entityData: {},\n entityIdentifier: '',\n formData: null,\n pageName: '',\n viewUrlDisabledReason: null,\n onTitleChange: null,\n saveButtonText: 'save'\n};\n\nEntityHeader.displayName = 'EntityHeader';\n\nexport default EntityHeader;\n"],"mappings":"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","ignoreList":[]}
@@ -8,12 +8,14 @@ exports.default = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _button = _interopRequireDefault(require("@blaze-react/button"));
11
+ var _admin = require("@blaze-cms/admin");
11
12
  var _client = require("@apollo/client");
12
13
  var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
13
14
  var _constants = require("../../../../../constants");
14
15
  const HeaderPreviewButton = ({
15
16
  itemId,
16
- itemEntity
17
+ itemEntity,
18
+ iconOnly
17
19
  }) => {
18
20
  const [createPreviewToken] = (0, _client.useMutation)((0, _adminUiUtils.getMutation)('PREVIEW_TOKEN_MUTATION'));
19
21
  if (process.env.BLAZE_DISABLE_PREVIEW) return null;
@@ -41,6 +43,14 @@ const HeaderPreviewButton = ({
41
43
  // eslint-disable-next-line no-empty
42
44
  } catch (err) {}
43
45
  };
46
+ if (iconOnly) {
47
+ return /*#__PURE__*/_react.default.createElement(_admin.PageHeader.IconButton, {
48
+ icon: "visibility",
49
+ label: "Preview",
50
+ onClick: onViewPreview,
51
+ "data-testid": "page-header-preview"
52
+ });
53
+ }
44
54
  return /*#__PURE__*/_react.default.createElement(_button.default, {
45
55
  className: "more-menu__link",
46
56
  onClick: onViewPreview
@@ -48,7 +58,11 @@ const HeaderPreviewButton = ({
48
58
  };
49
59
  HeaderPreviewButton.propTypes = {
50
60
  itemId: _propTypes.default.string.isRequired,
51
- itemEntity: _propTypes.default.string.isRequired
61
+ itemEntity: _propTypes.default.string.isRequired,
62
+ iconOnly: _propTypes.default.bool
63
+ };
64
+ HeaderPreviewButton.defaultProps = {
65
+ iconOnly: false
52
66
  };
53
67
  var _default = exports.default = HeaderPreviewButton;
54
68
  //# sourceMappingURL=HeaderPreviewButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderPreviewButton.js","names":["_react","_interopRequireDefault","require","_propTypes","_button","_client","_adminUiUtils","_constants","HeaderPreviewButton","itemId","itemEntity","createPreviewToken","useMutation","getMutation","process","env","BLAZE_DISABLE_PREVIEW","onViewPreview","data","result","url","variables","delimiter","includes","debugParam","BLAZE_DISABLE_URL_DEBUG_PARAM","DEBUG_PARAM","window","open","err","default","createElement","className","onClick","propTypes","PropTypes","string","isRequired","_default","exports"],"sources":["../../../../../../src/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { useMutation } from '@apollo/client';\nimport { getMutation } from '@blaze-cms/admin-ui-utils';\nimport { DEBUG_PARAM } from '../../../../../constants';\n\nconst HeaderPreviewButton = ({ itemId, itemEntity }) => {\n const [createPreviewToken] = useMutation(getMutation('PREVIEW_TOKEN_MUTATION'));\n if (process.env.BLAZE_DISABLE_PREVIEW) return null;\n\n const onViewPreview = async () => {\n try {\n const {\n data: {\n createPreviewToken: {\n result: { url }\n }\n } = {}\n } = await createPreviewToken({\n variables: {\n itemId,\n itemEntity\n }\n });\n\n if (url) {\n const delimiter = url.includes('?') ? '&' : '?';\n const debugParam = process.env.BLAZE_DISABLE_URL_DEBUG_PARAM\n ? ''\n : `${delimiter}${DEBUG_PARAM}`;\n window.open(`${url}${debugParam}`, '_blank');\n }\n // eslint-disable-next-line no-empty\n } catch (err) {}\n };\n\n return (\n <Button className=\"more-menu__link\" onClick={onViewPreview}>\n Preview\n </Button>\n );\n};\n\nHeaderPreviewButton.propTypes = {\n itemId: PropTypes.string.isRequired,\n itemEntity: PropTypes.string.isRequired\n};\n\nexport default HeaderPreviewButton;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AAEA,MAAMM,mBAAmB,GAAGA,CAAC;EAAEC,MAAM;EAAEC;AAAW,CAAC,KAAK;EACtD,MAAM,CAACC,kBAAkB,CAAC,GAAG,IAAAC,mBAAW,EAAC,IAAAC,yBAAW,EAAC,wBAAwB,CAAC,CAAC;EAC/E,IAAIC,OAAO,CAACC,GAAG,CAACC,qBAAqB,EAAE,OAAO,IAAI;EAElD,MAAMC,aAAa,GAAG,MAAAA,CAAA,KAAY;IAChC,IAAI;MACF,MAAM;QACJC,IAAI,EAAE;UACJP,kBAAkB,EAAE;YAClBQ,MAAM,EAAE;cAAEC;YAAI;UAChB;QACF,CAAC,GAAG,CAAC;MACP,CAAC,GAAG,MAAMT,kBAAkB,CAAC;QAC3BU,SAAS,EAAE;UACTZ,MAAM;UACNC;QACF;MACF,CAAC,CAAC;MAEF,IAAIU,GAAG,EAAE;QACP,MAAME,SAAS,GAAGF,GAAG,CAACG,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;QAC/C,MAAMC,UAAU,GAAGV,OAAO,CAACC,GAAG,CAACU,6BAA6B,GACxD,EAAE,GACF,GAAGH,SAAS,GAAGI,sBAAW,EAAE;QAChCC,MAAM,CAACC,IAAI,CAAC,GAAGR,GAAG,GAAGI,UAAU,EAAE,EAAE,QAAQ,CAAC;MAC9C;MACA;IACF,CAAC,CAAC,OAAOK,GAAG,EAAE,CAAC;EACjB,CAAC;EAED,oBACE7B,MAAA,CAAA8B,OAAA,CAAAC,aAAA,CAAC3B,OAAA,CAAA0B,OAAM;IAACE,SAAS,EAAC,iBAAiB;IAACC,OAAO,EAAEhB;EAAc,GAAC,SAEpD,CAAC;AAEb,CAAC;AAEDT,mBAAmB,CAAC0B,SAAS,GAAG;EAC9BzB,MAAM,EAAE0B,kBAAS,CAACC,MAAM,CAACC,UAAU;EACnC3B,UAAU,EAAEyB,kBAAS,CAACC,MAAM,CAACC;AAC/B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAT,OAAA,GAEatB,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"HeaderPreviewButton.js","names":["_react","_interopRequireDefault","require","_propTypes","_button","_admin","_client","_adminUiUtils","_constants","HeaderPreviewButton","itemId","itemEntity","iconOnly","createPreviewToken","useMutation","getMutation","process","env","BLAZE_DISABLE_PREVIEW","onViewPreview","data","result","url","variables","delimiter","includes","debugParam","BLAZE_DISABLE_URL_DEBUG_PARAM","DEBUG_PARAM","window","open","err","default","createElement","PageHeader","IconButton","icon","label","onClick","className","propTypes","PropTypes","string","isRequired","bool","defaultProps","_default","exports"],"sources":["../../../../../../src/components/EntityManager/Entity/EntityHeader/HeaderPreviewButton/HeaderPreviewButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { PageHeader } from '@blaze-cms/admin';\nimport { useMutation } from '@apollo/client';\nimport { getMutation } from '@blaze-cms/admin-ui-utils';\nimport { DEBUG_PARAM } from '../../../../../constants';\n\nconst HeaderPreviewButton = ({ itemId, itemEntity, iconOnly }) => {\n const [createPreviewToken] = useMutation(getMutation('PREVIEW_TOKEN_MUTATION'));\n if (process.env.BLAZE_DISABLE_PREVIEW) return null;\n\n const onViewPreview = async () => {\n try {\n const {\n data: {\n createPreviewToken: {\n result: { url }\n }\n } = {}\n } = await createPreviewToken({\n variables: {\n itemId,\n itemEntity\n }\n });\n\n if (url) {\n const delimiter = url.includes('?') ? '&' : '?';\n const debugParam = process.env.BLAZE_DISABLE_URL_DEBUG_PARAM\n ? ''\n : `${delimiter}${DEBUG_PARAM}`;\n window.open(`${url}${debugParam}`, '_blank');\n }\n // eslint-disable-next-line no-empty\n } catch (err) {}\n };\n\n if (iconOnly) {\n return (\n <PageHeader.IconButton\n icon=\"visibility\"\n label=\"Preview\"\n onClick={onViewPreview}\n data-testid=\"page-header-preview\"\n />\n );\n }\n\n return (\n <Button className=\"more-menu__link\" onClick={onViewPreview}>\n Preview\n </Button>\n );\n};\n\nHeaderPreviewButton.propTypes = {\n itemId: PropTypes.string.isRequired,\n itemEntity: PropTypes.string.isRequired,\n iconOnly: PropTypes.bool\n};\n\nHeaderPreviewButton.defaultProps = {\n iconOnly: false\n};\n\nexport default HeaderPreviewButton;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAEA,MAAMO,mBAAmB,GAAGA,CAAC;EAAEC,MAAM;EAAEC,UAAU;EAAEC;AAAS,CAAC,KAAK;EAChE,MAAM,CAACC,kBAAkB,CAAC,GAAG,IAAAC,mBAAW,EAAC,IAAAC,yBAAW,EAAC,wBAAwB,CAAC,CAAC;EAC/E,IAAIC,OAAO,CAACC,GAAG,CAACC,qBAAqB,EAAE,OAAO,IAAI;EAElD,MAAMC,aAAa,GAAG,MAAAA,CAAA,KAAY;IAChC,IAAI;MACF,MAAM;QACJC,IAAI,EAAE;UACJP,kBAAkB,EAAE;YAClBQ,MAAM,EAAE;cAAEC;YAAI;UAChB;QACF,CAAC,GAAG,CAAC;MACP,CAAC,GAAG,MAAMT,kBAAkB,CAAC;QAC3BU,SAAS,EAAE;UACTb,MAAM;UACNC;QACF;MACF,CAAC,CAAC;MAEF,IAAIW,GAAG,EAAE;QACP,MAAME,SAAS,GAAGF,GAAG,CAACG,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;QAC/C,MAAMC,UAAU,GAAGV,OAAO,CAACC,GAAG,CAACU,6BAA6B,GACxD,EAAE,GACF,GAAGH,SAAS,GAAGI,sBAAW,EAAE;QAChCC,MAAM,CAACC,IAAI,CAAC,GAAGR,GAAG,GAAGI,UAAU,EAAE,EAAE,QAAQ,CAAC;MAC9C;MACA;IACF,CAAC,CAAC,OAAOK,GAAG,EAAE,CAAC;EACjB,CAAC;EAED,IAAInB,QAAQ,EAAE;IACZ,oBACEZ,MAAA,CAAAgC,OAAA,CAAAC,aAAA,CAAC5B,MAAA,CAAA6B,UAAU,CAACC,UAAU;MACpBC,IAAI,EAAC,YAAY;MACjBC,KAAK,EAAC,SAAS;MACfC,OAAO,EAAEnB,aAAc;MACvB,eAAY;IAAqB,CAClC,CAAC;EAEN;EAEA,oBACEnB,MAAA,CAAAgC,OAAA,CAAAC,aAAA,CAAC7B,OAAA,CAAA4B,OAAM;IAACO,SAAS,EAAC,iBAAiB;IAACD,OAAO,EAAEnB;EAAc,GAAC,SAEpD,CAAC;AAEb,CAAC;AAEDV,mBAAmB,CAAC+B,SAAS,GAAG;EAC9B9B,MAAM,EAAE+B,kBAAS,CAACC,MAAM,CAACC,UAAU;EACnChC,UAAU,EAAE8B,kBAAS,CAACC,MAAM,CAACC,UAAU;EACvC/B,QAAQ,EAAE6B,kBAAS,CAACG;AACtB,CAAC;AAEDnC,mBAAmB,CAACoC,YAAY,GAAG;EACjCjC,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAkC,QAAA,GAAAC,OAAA,CAAAf,OAAA,GAEavB,mBAAmB","ignoreList":[]}
@@ -4,17 +4,38 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ exports.canEditTitle = canEditTitle;
7
8
  exports.canViewPage = canViewPage;
8
9
  exports.checkFulfilConditions = checkFulfilConditions;
9
10
  exports.getUpdatedFormValues = getUpdatedFormValues;
11
+ exports.hasViewableUrl = hasViewableUrl;
10
12
  exports.onViewUrlClick = onViewUrlClick;
11
13
  exports.validateSideBarRelations = validateSideBarRelations;
12
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
15
  var _constants = require("../../../constants");
14
16
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
17
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ // Whether this record has a front end url at all, publish state aside.
19
+ function hasViewableUrl(entity, schema) {
20
+ return !!(entity && entity.id && schema && schema.id && schema.properties.slug);
21
+ }
16
22
  function canViewPage(entity, schema, entityIsPublished) {
17
- return entity && entity.id && schema && schema.id && entityIsPublished === _constants.ENTITY_PUBLISHED && schema.properties.slug;
23
+ return hasViewableUrl(entity, schema) && entityIsPublished === _constants.ENTITY_PUBLISHED;
24
+ }
25
+
26
+ // The header title is only editable inline when it is the record's name field.
27
+ function canEditTitle(schema, formValues) {
28
+ const {
29
+ properties = {},
30
+ displayProperties = {}
31
+ } = schema || {};
32
+ const {
33
+ adminHeader
34
+ } = displayProperties || {};
35
+ const isTitleFromName = !adminHeader || adminHeader.length === 1 && adminHeader[0] === _constants.TITLE_FIELD_ID;
36
+ return !!(isTitleFromName && properties[_constants.TITLE_FIELD_ID] && Array.isArray(formValues) && formValues.some(({
37
+ id
38
+ }) => id === _constants.TITLE_FIELD_ID));
18
39
  }
19
40
  function validateSideBarRelations(updatedFormValues, requiredChildField) {
20
41
  if (!requiredChildField) return true;
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","names":["_constants","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","canViewPage","entity","schema","entityIsPublished","id","ENTITY_PUBLISHED","properties","slug","validateSideBarRelations","updatedFormValues","requiredChildField","parentEntityField","find","parentIdField","parentEntityFieldHasValue","value","SELECT_DEFAULT_VALUE","parentIdFieldHasValue","onViewUrlClick","getFullUrl","fullUrl","delimiter","includes","debugParam","process","env","BLAZE_DISABLE_URL_DEBUG_PARAM","DEBUG_PARAM","window","open","getUpdatedFormValues","formValues","slice","fieldIndex","findIndex","_id","requiredChildFieldIndex","checkFulfilConditions","args","every","param"],"sources":["../../../../src/components/EntityManager/utils/entity.js"],"sourcesContent":["import { DEBUG_PARAM, ENTITY_PUBLISHED, SELECT_DEFAULT_VALUE } from '../../../constants';\n\nfunction canViewPage(entity, schema, entityIsPublished) {\n return (\n entity &&\n entity.id &&\n schema &&\n schema.id &&\n entityIsPublished === ENTITY_PUBLISHED &&\n schema.properties.slug\n );\n}\n\nfunction validateSideBarRelations(updatedFormValues, requiredChildField) {\n if (!requiredChildField) return true;\n const parentEntityField = updatedFormValues.find(({ id }) => id === 'parentEntity');\n const parentIdField = updatedFormValues.find(({ id }) => id === 'parentId');\n\n const parentEntityFieldHasValue =\n parentEntityField &&\n parentEntityField.value &&\n parentEntityField.value !== SELECT_DEFAULT_VALUE;\n const parentIdFieldHasValue = parentIdField && parentIdField.value;\n\n return !!(!parentEntityFieldHasValue || (parentEntityFieldHasValue && parentIdFieldHasValue));\n}\n\nasync function onViewUrlClick(getFullUrl) {\n const fullUrl = await getFullUrl();\n if (fullUrl) {\n const delimiter = fullUrl.includes('?') ? '&' : '?';\n const debugParam = process.env.BLAZE_DISABLE_URL_DEBUG_PARAM\n ? ''\n : `${delimiter}${DEBUG_PARAM}`;\n window.open(`${fullUrl}${debugParam}`, '_blank');\n }\n}\n\nfunction getUpdatedFormValues({ id, value, requiredChildField, formValues }) {\n const updatedFormValues = formValues ? formValues.slice() : [];\n const fieldIndex = updatedFormValues.findIndex(({ id: _id }) => _id === id);\n\n if (fieldIndex > -1) {\n updatedFormValues[fieldIndex] = { ...updatedFormValues[fieldIndex], value };\n } else {\n updatedFormValues.push({ id, value });\n }\n\n if (requiredChildField && requiredChildField.id) {\n const requiredChildFieldIndex = updatedFormValues.findIndex(\n ({ id: _id }) => _id === requiredChildField.id\n );\n if (requiredChildFieldIndex > -1) {\n updatedFormValues[requiredChildFieldIndex] = {\n ...updatedFormValues[requiredChildFieldIndex],\n value: requiredChildField.value\n };\n } else {\n updatedFormValues.push({\n id: requiredChildField.id,\n value: requiredChildField.value\n });\n }\n }\n\n return updatedFormValues;\n}\n\nfunction checkFulfilConditions(...args) {\n return args.every(param => param);\n}\n\nexport {\n canViewPage,\n validateSideBarRelations,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"entity.js","names":["_constants","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","hasViewableUrl","entity","schema","id","properties","slug","canViewPage","entityIsPublished","ENTITY_PUBLISHED","canEditTitle","formValues","displayProperties","adminHeader","isTitleFromName","TITLE_FIELD_ID","Array","isArray","some","validateSideBarRelations","updatedFormValues","requiredChildField","parentEntityField","find","parentIdField","parentEntityFieldHasValue","value","SELECT_DEFAULT_VALUE","parentIdFieldHasValue","onViewUrlClick","getFullUrl","fullUrl","delimiter","includes","debugParam","process","env","BLAZE_DISABLE_URL_DEBUG_PARAM","DEBUG_PARAM","window","open","getUpdatedFormValues","slice","fieldIndex","findIndex","_id","requiredChildFieldIndex","checkFulfilConditions","args","every","param"],"sources":["../../../../src/components/EntityManager/utils/entity.js"],"sourcesContent":["import {\n DEBUG_PARAM,\n ENTITY_PUBLISHED,\n SELECT_DEFAULT_VALUE,\n TITLE_FIELD_ID\n} from '../../../constants';\n\n// Whether this record has a front end url at all, publish state aside.\nfunction hasViewableUrl(entity, schema) {\n return !!(entity && entity.id && schema && schema.id && schema.properties.slug);\n}\n\nfunction canViewPage(entity, schema, entityIsPublished) {\n return hasViewableUrl(entity, schema) && entityIsPublished === ENTITY_PUBLISHED;\n}\n\n// The header title is only editable inline when it is the record's name field.\nfunction canEditTitle(schema, formValues) {\n const { properties = {}, displayProperties = {} } = schema || {};\n const { adminHeader } = displayProperties || {};\n const isTitleFromName =\n !adminHeader || (adminHeader.length === 1 && adminHeader[0] === TITLE_FIELD_ID);\n\n return !!(\n isTitleFromName &&\n properties[TITLE_FIELD_ID] &&\n Array.isArray(formValues) &&\n formValues.some(({ id }) => id === TITLE_FIELD_ID)\n );\n}\n\nfunction validateSideBarRelations(updatedFormValues, requiredChildField) {\n if (!requiredChildField) return true;\n const parentEntityField = updatedFormValues.find(({ id }) => id === 'parentEntity');\n const parentIdField = updatedFormValues.find(({ id }) => id === 'parentId');\n\n const parentEntityFieldHasValue =\n parentEntityField &&\n parentEntityField.value &&\n parentEntityField.value !== SELECT_DEFAULT_VALUE;\n const parentIdFieldHasValue = parentIdField && parentIdField.value;\n\n return !!(!parentEntityFieldHasValue || (parentEntityFieldHasValue && parentIdFieldHasValue));\n}\n\nasync function onViewUrlClick(getFullUrl) {\n const fullUrl = await getFullUrl();\n if (fullUrl) {\n const delimiter = fullUrl.includes('?') ? '&' : '?';\n const debugParam = process.env.BLAZE_DISABLE_URL_DEBUG_PARAM\n ? ''\n : `${delimiter}${DEBUG_PARAM}`;\n window.open(`${fullUrl}${debugParam}`, '_blank');\n }\n}\n\nfunction getUpdatedFormValues({ id, value, requiredChildField, formValues }) {\n const updatedFormValues = formValues ? formValues.slice() : [];\n const fieldIndex = updatedFormValues.findIndex(({ id: _id }) => _id === id);\n\n if (fieldIndex > -1) {\n updatedFormValues[fieldIndex] = { ...updatedFormValues[fieldIndex], value };\n } else {\n updatedFormValues.push({ id, value });\n }\n\n if (requiredChildField && requiredChildField.id) {\n const requiredChildFieldIndex = updatedFormValues.findIndex(\n ({ id: _id }) => _id === requiredChildField.id\n );\n if (requiredChildFieldIndex > -1) {\n updatedFormValues[requiredChildFieldIndex] = {\n ...updatedFormValues[requiredChildFieldIndex],\n value: requiredChildField.value\n };\n } else {\n updatedFormValues.push({\n id: requiredChildField.id,\n value: requiredChildField.value\n });\n }\n }\n\n return updatedFormValues;\n}\n\nfunction checkFulfilConditions(...args) {\n return args.every(param => param);\n}\n\nexport {\n canEditTitle,\n canViewPage,\n hasViewableUrl,\n validateSideBarRelations,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n};\n"],"mappings":"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","ignoreList":[]}
@@ -176,7 +176,7 @@ const ListingTable = ({
176
176
  deleteAction: deleteAction,
177
177
  itemName: itemToDelete.name
178
178
  }), /*#__PURE__*/_react.default.createElement(_admin.PageHeader, {
179
- title: entitySchema.displayName,
179
+ title: entitySchema.displayNamePlural || entitySchema.displayName,
180
180
  subtitle: ""
181
181
  }, createAction.active && !showAddButton && /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, {
182
182
  "data-testid": "addEntity",
@@ -1 +1 @@
1
- {"version":3,"file":"ListingTable.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_reactRouterDom","_admin","_toaster","_pluginRenderHooksUi","_ListingTableContent","_SearchFilter","_actionsHandlers","_service","_populateRows","_getDefaultQueryParams","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingTable","match","entitySchema","history","tableData","setTableData","useState","modalStatus","setModalStatus","itemToDelete","setItemToDelete","previousSchema","setPreviousSchema","id","totalItems","setTotalItems","queryParamsDefault","getDefaultQueryParams","queryParams","setQueryParams","listFilters","setListFilters","client","useApolloClient","addToast","useToasts","location","useLocation","searchParams","URLSearchParams","search","currentPage","Number","useEffect","updatedQueryParams","offset","limit","doQuery","url","filters","params","listingData","totalRecords","fetchData","querySettings","populatedTable","populateRows","toggleModal","rows","handleOnPageChange","pageNumber","_offset","document","getElementsByClassName","scrollTo","updateListingFilters","onCloseCardPrompt","item","deleteAction","availableActions","delete","submit","parsedFormValues","updatedTableData","handleSort","event","property","direction","entries","sortQueryParams","sort","columns","isEnquiry","firstColumn","appliedSort","formatRows","getParsedRowData","displayProperties","adminCrudActions","create","createAction","active","_deleteAction","showAddButton","createElement","className","DeleteAction","onClose","itemName","name","PageHeader","title","displayName","subtitle","Link","to","CardPrompt","Fragment","RenderHook","hookKey","schema","onSort","propTypes","PropTypes","object","isRequired","_default","exports","withRouter"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport SearchFilter from './SearchFilter/SearchFilter';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery([], updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry,\n entitySchema\n })\n });\n history.push('?page=1');\n };\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus && _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayName} subtitle=\"\">\n {createAction.active && !showAddButton && (\n <Link data-testid=\"addEntity\" className=\"button button--small\" to={`${match.url}/create`}>\n Add\n </Link>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <SearchFilter\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ListingTable.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_reactRouterDom","_admin","_toaster","_pluginRenderHooksUi","_ListingTableContent","_SearchFilter","_actionsHandlers","_service","_populateRows","_getDefaultQueryParams","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingTable","match","entitySchema","history","tableData","setTableData","useState","modalStatus","setModalStatus","itemToDelete","setItemToDelete","previousSchema","setPreviousSchema","id","totalItems","setTotalItems","queryParamsDefault","getDefaultQueryParams","queryParams","setQueryParams","listFilters","setListFilters","client","useApolloClient","addToast","useToasts","location","useLocation","searchParams","URLSearchParams","search","currentPage","Number","useEffect","updatedQueryParams","offset","limit","doQuery","url","filters","params","listingData","totalRecords","fetchData","querySettings","populatedTable","populateRows","toggleModal","rows","handleOnPageChange","pageNumber","_offset","document","getElementsByClassName","scrollTo","updateListingFilters","onCloseCardPrompt","item","deleteAction","availableActions","delete","submit","parsedFormValues","updatedTableData","handleSort","event","property","direction","entries","sortQueryParams","sort","columns","isEnquiry","firstColumn","appliedSort","formatRows","getParsedRowData","displayProperties","adminCrudActions","create","createAction","active","_deleteAction","showAddButton","createElement","className","DeleteAction","onClose","itemName","name","PageHeader","title","displayNamePlural","displayName","subtitle","Link","to","CardPrompt","Fragment","RenderHook","hookKey","schema","onSort","propTypes","PropTypes","object","isRequired","_default","exports","withRouter"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport SearchFilter from './SearchFilter/SearchFilter';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery([], updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry,\n entitySchema\n })\n });\n history.push('?page=1');\n };\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus && _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayNamePlural || entitySchema.displayName} subtitle=\"\">\n {createAction.active && !showAddButton && (\n <Link data-testid=\"addEntity\" className=\"button button--small\" to={`${match.url}/create`}>\n Add\n </Link>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <SearchFilter\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":"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","ignoreList":[]}