@blaze-cms/plugin-data-ui 0.126.0 → 0.127.0-project-admin-customisations.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +2 -0
  3. package/lib/components/EntityManager/Entity/Entity.js +24 -18
  4. package/lib/components/EntityManager/Entity/Entity.js.map +1 -1
  5. package/lib/components/EntityManager/Entity/SideBarRelations/index.js +12 -6
  6. package/lib/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  7. package/lib/components/InfoBoxes/InfoBoxes.js +36 -0
  8. package/lib/components/InfoBoxes/InfoBoxes.js.map +1 -0
  9. package/lib/components/InfoBoxes/container/InfoBoxContainer.js +44 -0
  10. package/lib/components/InfoBoxes/container/InfoBoxContainer.js.map +1 -0
  11. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js +25 -0
  12. package/lib/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -0
  13. package/lib/components/InfoBoxes/hooks/useData.js +42 -0
  14. package/lib/components/InfoBoxes/hooks/useData.js.map +1 -0
  15. package/lib/components/InfoBoxes/hooks/useInfoBox.js +26 -0
  16. package/lib/components/InfoBoxes/hooks/useInfoBox.js.map +1 -0
  17. package/lib/components/InfoBoxes/index.js +12 -0
  18. package/lib/components/InfoBoxes/index.js.map +1 -0
  19. package/lib/components/InfoBoxes/presentational/InfoBox.js +46 -0
  20. package/lib/components/InfoBoxes/presentational/InfoBox.js.map +1 -0
  21. package/lib-es/components/EntityManager/Entity/Entity.js +24 -18
  22. package/lib-es/components/EntityManager/Entity/Entity.js.map +1 -1
  23. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js +13 -7
  24. package/lib-es/components/EntityManager/Entity/SideBarRelations/index.js.map +1 -1
  25. package/lib-es/components/InfoBoxes/InfoBoxes.js +28 -0
  26. package/lib-es/components/InfoBoxes/InfoBoxes.js.map +1 -0
  27. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js +30 -0
  28. package/lib-es/components/InfoBoxes/container/InfoBoxContainer.js.map +1 -0
  29. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js +24 -0
  30. package/lib-es/components/InfoBoxes/helpers/build-dynamic-query.js.map +1 -0
  31. package/lib-es/components/InfoBoxes/hooks/useData.js +37 -0
  32. package/lib-es/components/InfoBoxes/hooks/useData.js.map +1 -0
  33. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js +19 -0
  34. package/lib-es/components/InfoBoxes/hooks/useInfoBox.js.map +1 -0
  35. package/lib-es/components/InfoBoxes/index.js +3 -0
  36. package/lib-es/components/InfoBoxes/index.js.map +1 -0
  37. package/lib-es/components/InfoBoxes/presentational/InfoBox.js +31 -0
  38. package/lib-es/components/InfoBoxes/presentational/InfoBox.js.map +1 -0
  39. package/package.json +6 -6
  40. package/src/components/EntityManager/Entity/Entity.js +63 -59
  41. package/src/components/EntityManager/Entity/SideBarRelations/index.js +23 -9
  42. package/src/components/InfoBoxes/InfoBoxes.js +24 -0
  43. package/src/components/InfoBoxes/container/InfoBoxContainer.js +22 -0
  44. package/src/components/InfoBoxes/helpers/build-dynamic-query.js +24 -0
  45. package/src/components/InfoBoxes/hooks/useData.js +20 -0
  46. package/src/components/InfoBoxes/hooks/useInfoBox.js +13 -0
  47. package/src/components/InfoBoxes/index.js +3 -0
  48. package/src/components/InfoBoxes/presentational/InfoBox.js +34 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,34 @@
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.127.0-project-admin-customisations.1](https://github.com/thebyte9/blaze/compare/v0.127.0-project-admin-customisations.0...v0.127.0-project-admin-customisations.1) (2023-01-25)
7
+
8
+ **Note:** Version bump only for package @blaze-cms/plugin-data-ui
9
+
10
+
11
+
12
+
13
+
14
+ # [0.127.0-project-admin-customisations.0](https://github.com/thebyte9/blaze/compare/v0.126.1...v0.127.0-project-admin-customisations.0) (2023-01-25)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * admin updates feedback ([0e69cbb](https://github.com/thebyte9/blaze/commit/0e69cbb0337df371c3e1cfc2f43c0d4ce666f33b))
20
+ * update snapshots ([c88c8be](https://github.com/thebyte9/blaze/commit/c88c8bec58af59a5707d15f5e212e6b515706676))
21
+ * update snapshots ([d490e17](https://github.com/thebyte9/blaze/commit/d490e1746d63ed5842799d15d6696c287f9b0d10))
22
+
23
+
24
+ ### Features
25
+
26
+ * add admin style feedback ([3f8b9a1](https://github.com/thebyte9/blaze/commit/3f8b9a1416a8a7977631583cff62fddb43cd2e9d))
27
+ * admin-ui info box component ([#3770](https://github.com/thebyte9/blaze/issues/3770)) ([01dff01](https://github.com/thebyte9/blaze/commit/01dff01c8bd2a9e522abf1c98ff32e4a1ca15fd1))
28
+ * style sidebar and add updated snapshots. Bz2 2870 ([#3539](https://github.com/thebyte9/blaze/issues/3539)) ([60640e5](https://github.com/thebyte9/blaze/commit/60640e5b65b4ed426ceefabc00c3beddb2113676))
29
+
30
+
31
+
32
+
33
+
6
34
  # [0.126.0](https://github.com/thebyte9/blaze/compare/v0.126.0-alpha.6...v0.126.0) (2023-01-17)
7
35
 
8
36
  **Note:** Version bump only for package @blaze-cms/plugin-data-ui
package/README.md CHANGED
@@ -38,3 +38,5 @@ The `displayProperties` property can be set on entity schema in the api to provi
38
38
  - adminDefaultListingFilter: this is a where query that will be passed to the api to filter records from the admin listing
39
39
  - adminLabel: properties to build label when record is showing search listings
40
40
  - adminHeader: properties to build admin header
41
+
42
+ -
@@ -51,6 +51,7 @@ var _constants = require("../../../constants");
51
51
  var _EntityHeader = _interopRequireDefault(require("./EntityHeader"));
52
52
  var _entity = require("../utils/entity");
53
53
  var _useToggle5 = _interopRequireDefault(require("../../../utils/hooks/useToggle"));
54
+ var _InfoBoxes = _interopRequireDefault(require("../../InfoBoxes/InfoBoxes"));
54
55
  var _excluded = ["isValid", "fields", "isNewValueSet", "valuesChecked", "currentField", "value"];
55
56
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
56
57
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -510,21 +511,6 @@ var Entity = function Entity(_ref) {
510
511
  var showPageBuilderTabs = (schema === null || schema === void 0 ? void 0 : (_schema$interfaces = schema.interfaces) === null || _schema$interfaces === void 0 ? void 0 : _schema$interfaces.includes('page-builder/page-builder-template')) || (schema === null || schema === void 0 ? void 0 : (_schema$interfaces2 = schema.interfaces) === null || _schema$interfaces2 === void 0 ? void 0 : _schema$interfaces2.includes('page-builder/page-builder'));
511
512
  return /*#__PURE__*/_react["default"].createElement("div", {
512
513
  className: "page"
513
- }, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Prompt, {
514
- when: hasToDisplayPrompt,
515
- message: _constants.LEAVE_PAGE_MESSAGE
516
- }), showModal && /*#__PURE__*/_react["default"].createElement(_admin.DeleteAction, {
517
- onClose: setModalStatus,
518
- deleteAction: onDelete,
519
- itemName: formData.values.name
520
- }), copyModalStatus && /*#__PURE__*/_react["default"].createElement(_admin.CopyDataFromAction, {
521
- onClose: handleCopyDataFromClose,
522
- copyAction: onCopy,
523
- getFormData: getFormData
524
- }), /*#__PURE__*/_react["default"].createElement("div", {
525
- className: "row row--display-row"
526
- }, /*#__PURE__*/_react["default"].createElement("div", {
527
- className: "column column--three-quarters"
528
514
  }, /*#__PURE__*/_react["default"].createElement(_EntityHeader["default"], {
529
515
  entityData: entityData,
530
516
  entityIdentifier: entityIdentifier,
@@ -541,10 +527,30 @@ var Entity = function Entity(_ref) {
541
527
  onViewUrl: onViewUrlHandler,
542
528
  saveButtonText: saveButtonText
543
529
  }), /*#__PURE__*/_react["default"].createElement("div", {
530
+ className: "page-wrapper__content"
531
+ }, /*#__PURE__*/_react["default"].createElement("div", {
532
+ className: "tabs-wrapper tabs-wrapper__tab"
533
+ }, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Prompt, {
534
+ when: hasToDisplayPrompt,
535
+ message: _constants.LEAVE_PAGE_MESSAGE
536
+ }), showModal && /*#__PURE__*/_react["default"].createElement(_admin.DeleteAction, {
537
+ onClose: setModalStatus,
538
+ deleteAction: onDelete,
539
+ itemName: formData.values.name
540
+ }), copyModalStatus && /*#__PURE__*/_react["default"].createElement(_admin.CopyDataFromAction, {
541
+ onClose: handleCopyDataFromClose,
542
+ copyAction: onCopy,
543
+ getFormData: getFormData
544
+ }), /*#__PURE__*/_react["default"].createElement("div", {
545
+ className: "page__content--fixed"
546
+ }, /*#__PURE__*/_react["default"].createElement("div", {
544
547
  className: "page__content"
545
548
  }, /*#__PURE__*/_react["default"].createElement("div", {
546
549
  className: "content"
547
- }, /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
550
+ }, /*#__PURE__*/_react["default"].createElement(_InfoBoxes["default"], {
551
+ id: entity.id,
552
+ schema: schema
553
+ }), /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
548
554
  enabled: showPageBuilderTabs,
549
555
  onTabChange: function onTabChange(tabId) {
550
556
  client.writeQuery({
@@ -565,8 +571,8 @@ var Entity = function Entity(_ref) {
565
571
  updateCopyData: updateCopyData,
566
572
  formValues: formValues,
567
573
  isNewEntity: isNewEntity
568
- }))))), /*#__PURE__*/_react["default"].createElement("div", {
569
- className: "column column--one-third"
574
+ })))))), /*#__PURE__*/_react["default"].createElement("div", {
575
+ className: "column column--one-third page-sidebar"
570
576
  }, showSideBarRelations && /*#__PURE__*/_react["default"].createElement(_SideBarRelations["default"], {
571
577
  entity: entity,
572
578
  formData: formData.values,
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","names":["Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","useState","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","values","status","entityIsPublished","setEntityIsPublish","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","useToggle","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","SAVE_BUTTON_TEXTS","save","saveButtonText","setSaveButtonText","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","useToasts","addToast","componentIsMounted","useRef","useEffect","current","getPageName","displayProperties","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","getFullUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getEntityUrl","getFormValues","onChangeSideBarRelations","requiredChildField","value","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","pageBuilder","filter","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","onSubmit","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","textContent","target","isPublishButton","TEXT_CONTENT_TYPE","isPublished","ENTITY_PUBLISHED","isUnpublish","UNPUBLISHED_WARNING","appearance","autoDismiss","savedPageMessage","ERROR","shared","triggerPublish","showModal","onViewUrlHandler","canViewPage","onViewUrlClick","pageName","hasNewFormValues","isFormEmpty","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","LEAVE_PAGE_MESSAGE","tabId","GET_CURRENT_TAB_ID","currentTabId","propTypes","PropTypes","object","string","isRequired","func","defaultProps","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 { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <div className=\"page\">\n <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=\"row row--display-row\">\n <div className=\"column column--three-quarters\">\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\n <div className=\"page__content\">\n <div className=\"content\">\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n />\n </Tabs>\n </div>\n </div>\n </div>\n <div className=\"column column--one-third\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Entity.js","names":["Entity","formData","entity","schema","previousQuery","action","history","updateFormData","onViewUrl","refetchRecord","useState","setCurrentTabId","formValues","setFormValues","entitySchema","setEntitySchema","entityData","setEntityData","entityIdentifier","setEntityIdentifier","pageTitle","setPageTitle","isSaveButtonAvailable","setIsSaveButtonAvailable","values","status","entityIsPublished","setEntityIsPublish","isEnablePublishButton","setEnablePublishButton","isEnablePreviewButton","setEnablePreviewButton","useToggle","modalStatus","setModalStatus","copyModalStatus","setCopyModalStatus","pageBuilderTemplateStatus","setPageBuilderTemplateStatus","shouldCopyData","setShouldCopyData","isFormValid","setIsFormValid","formDataFromCopy","setFormDataFromCopy","newUpdatedDate","setNewUpdatedDate","SAVE_BUTTON_TEXTS","save","saveButtonText","setSaveButtonText","isCreatePage","location","pathname","includes","isNewEntity","setIsNewEntity","client","useApolloClient","shouldUpdateState","checkFulfilConditions","id","clonedFormData","cloneDeep","useToasts","addToast","componentIsMounted","useRef","useEffect","current","getPageName","displayProperties","actions","publish","identifier","interfaces","PREVIEW_INTERFACE","isPageBuilderTemplateSet","pageBuilderTemplateId","writeQuery","query","getQuery","data","pageBuilderTemplateSet","currentEntity","getFullUrl","variables","itemId","itemEntity","fullUrl","fetchPolicy","getEntityUrl","getFormValues","onChangeSideBarRelations","requiredChildField","value","updatedFormValues","getUpdatedFormValues","shouldActiveSaveButton","validateSideBarRelations","onChangeFormValues","isValid","fields","isNewValueSet","valuesChecked","currentField","fieldValue","otherProps","slice","PAGE_BUILDER_TEMPLATE_FIELD_ID","pageBuilder","filter","formValue","PAGE_BUILDER_FIELD_ID","parent","mergePageBuilderTemplateChanges","map","updatedFormValue","itemsToAdd","length","forEach","item","index","findIndex","push","updatedEntity","isValidAndNewValueSet","isNotValidOrNotNewValueSet","onSubmit","event","preventDefault","parsedFormValues","parseFormValues","update","handleUpdateFormData","submitParams","create","currentAction","availableActions","submit","onDelete","onCopy","name","updateCopyData","handleCopyDataFromClose","getFormData","formDataValues","formDataUpdated","handlePublishAndUnpublish","textContent","target","isPublishButton","TEXT_CONTENT_TYPE","isPublished","ENTITY_PUBLISHED","isUnpublish","UNPUBLISHED_WARNING","appearance","autoDismiss","savedPageMessage","ERROR","shared","triggerPublish","showModal","onViewUrlHandler","canViewPage","onViewUrlClick","pageName","hasNewFormValues","isFormEmpty","hasToDisplayPrompt","showSideBarRelations","showPageBuilderTabs","LEAVE_PAGE_MESSAGE","tabId","GET_CURRENT_TAB_ID","currentTabId","propTypes","PropTypes","object","string","isRequired","func","defaultProps","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 { getQuery, GET_CURRENT_TAB_ID } from '@blaze-cms/admin-ui-utils';\nimport { FormBuilder, parseFormValues } from '@blaze-cms/react-form-builder';\nimport { DeleteAction, CopyDataFromAction } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport cloneDeep from 'lodash.clonedeep';\nimport { getPageName } from '../utils/data-mappers';\nimport isFormEmpty from '../utils/is-form-empty';\nimport availableActions from './actions-handlers';\nimport SideBarRelations from './SideBarRelations';\nimport Tabs from '../../Tabs';\n\nimport {\n ENTITY_PUBLISHED,\n TEXT_CONTENT_TYPE,\n LEAVE_PAGE_MESSAGE,\n PREVIEW_INTERFACE,\n PAGE_BUILDER_FIELD_ID,\n PAGE_BUILDER_TEMPLATE_FIELD_ID,\n ERROR,\n SAVE_BUTTON_TEXTS,\n UNPUBLISHED_WARNING\n} from '../../../constants';\nimport EntityHeader from './EntityHeader';\nimport {\n validateSideBarRelations,\n canViewPage,\n onViewUrlClick,\n getUpdatedFormValues,\n checkFulfilConditions\n} from '../utils/entity';\nimport useToggle from '../../../utils/hooks/useToggle';\nimport InfoBoxes from '../../InfoBoxes/InfoBoxes';\n\nconst Entity = ({\n formData,\n entity,\n schema,\n previousQuery,\n action,\n history,\n updateFormData,\n onViewUrl,\n refetchRecord\n}) => {\n const [, setCurrentTabId] = useState(null);\n const [formValues, setFormValues] = useState(null);\n const [entitySchema, setEntitySchema] = useState(null);\n const [entityData, setEntityData] = useState(null);\n const [entityIdentifier, setEntityIdentifier] = useState(null);\n const [pageTitle, setPageTitle] = useState('');\n const [isSaveButtonAvailable, setIsSaveButtonAvailable] = useState(false);\n const [entityIsPublished, setEntityIsPublish] = useState(\n formData && formData.values && formData.values.status\n );\n const [isEnablePublishButton, setEnablePublishButton] = useState(false);\n const [isEnablePreviewButton, setEnablePreviewButton] = useState(false);\n const [modalStatus, setModalStatus] = useToggle(false);\n const [copyModalStatus, setCopyModalStatus] = useToggle(false);\n const [pageBuilderTemplateStatus, setPageBuilderTemplateStatus] = useState(true);\n const [shouldCopyData, setShouldCopyData] = useState(false);\n const [isFormValid, setIsFormValid] = useState(false);\n const [formDataFromCopy, setFormDataFromCopy] = useState(null);\n const [newUpdatedDate, setNewUpdatedDate] = useState(null);\n const [saveButtonText, setSaveButtonText] = useState(SAVE_BUTTON_TEXTS.save);\n\n const isCreatePage = history.location.pathname.includes('create');\n const [isNewEntity, setIsNewEntity] = useState(isCreatePage);\n\n const client = useApolloClient();\n const shouldUpdateState =\n !entityIdentifier ||\n checkFulfilConditions(entity, schema, previousQuery, !entityData) ||\n (entityData && entityData.id !== entity.id);\n const clonedFormData = cloneDeep(formData);\n const { addToast } = useToasts();\n\n // Here's how we'll keep track of our component's mounted state\n const componentIsMounted = useRef(true);\n useEffect(\n () => () => {\n componentIsMounted.current = false;\n },\n []\n ); // Using an empty dependency array ensures this only runs on unmount\n\n useEffect(\n () => {\n if (shouldUpdateState) {\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n setEntityData(entity);\n setPageTitle(getPageName(schema.displayProperties, entity));\n setEntityIsPublish(entity.status);\n setEntitySchema(schema);\n setEnablePublishButton(schema.actions.publish);\n setEntityIdentifier(schema.identifier);\n setEnablePreviewButton(!!schema.interfaces.includes(PREVIEW_INTERFACE));\n }\n\n if (formData && pageBuilderTemplateStatus) {\n const isPageBuilderTemplateSet = !!formData.values.pageBuilderTemplateId;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: isPageBuilderTemplateSet,\n pageBuilderTemplateId: formData.values.pageBuilderTemplateId || ''\n }\n });\n }\n if (schema) {\n client.writeQuery({\n query: getQuery('GET_CURRENT_ENTITY'),\n data: {\n currentEntity: schema.id\n }\n });\n }\n },\n [\n client,\n entity,\n entityData,\n formData,\n formValues,\n pageBuilderTemplateStatus,\n previousQuery,\n schema,\n shouldUpdateState\n ]\n );\n\n const getFullUrl = async () => {\n const query = getQuery('GET_ENTITY_URL');\n const { data: { getEntityUrl = '' } = {} } = await client.query({\n query,\n variables: { itemId: entity.id, itemEntity: schema.id, fullUrl: true },\n fetchPolicy: 'network-only'\n });\n return getEntityUrl;\n };\n\n const getFormValues = values => {\n if (componentIsMounted.current) {\n setFormValues(values);\n }\n };\n\n const onChangeSideBarRelations = ({ id, value }, requiredChildField) => {\n const updatedFormValues = getUpdatedFormValues({ id, value, requiredChildField, formValues });\n\n const shouldActiveSaveButton = validateSideBarRelations(updatedFormValues, requiredChildField);\n\n if (isFormValid && shouldActiveSaveButton && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n } else if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues(updatedFormValues);\n }\n };\n\n const onChangeFormValues = async ({\n isValid,\n fields,\n isNewValueSet,\n valuesChecked,\n currentField,\n value: fieldValue,\n ...otherProps\n }) => {\n let updatedFormValues = valuesChecked ? valuesChecked.slice() : [];\n if (currentField === PAGE_BUILDER_TEMPLATE_FIELD_ID) {\n const pageBuilderTemplateId = fieldValue;\n client.writeQuery({\n query: getQuery('GET_PB_TEMPLATE_STATUS'),\n data: {\n pageBuilderTemplateSet: !!pageBuilderTemplateId,\n pageBuilderTemplateId\n }\n });\n\n if (componentIsMounted.current) {\n setPageBuilderTemplateStatus(false);\n }\n\n const pageBuilder = updatedFormValues.filter(\n formValue => formValue.id === PAGE_BUILDER_FIELD_ID\n );\n\n if (pageBuilderTemplateId) {\n const { data = {} } = await client.query({\n query: getQuery('MERGE_PB_TEMPLATE_CHANGES'),\n variables: {\n parent: {\n pageBuilder: pageBuilder[0].value,\n pageBuilderTemplateId\n },\n entityIdentifier\n }\n });\n\n if (data && data.mergePageBuilderTemplateChanges) {\n updatedFormValues = updatedFormValues.map(updatedFormValue => {\n if (updatedFormValue.id === PAGE_BUILDER_FIELD_ID) {\n return {\n ...updatedFormValue,\n value: data.mergePageBuilderTemplateChanges\n };\n }\n return updatedFormValue;\n });\n }\n }\n }\n const itemsToAdd = [];\n if (formValues && formValues.length > updatedFormValues.length) {\n [...updatedFormValues, ...formValues].forEach(item => {\n const index = updatedFormValues.findIndex(value => value.id === item.id);\n if (index === -1) {\n itemsToAdd.push(item);\n }\n });\n }\n\n const [updatedEntity = null] = fields.filter(({ id }) => id === 'name');\n updatedEntity && setPageTitle(updatedEntity.value);\n\n const isValidAndNewValueSet = isValid && isNewValueSet;\n const isNotValidOrNotNewValueSet = !isValid || !isNewValueSet;\n if (componentIsMounted.current) {\n setIsFormValid(isValid);\n }\n if (isValidAndNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n }\n\n if (isNotValidOrNotNewValueSet && componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n if (componentIsMounted.current) {\n setFormValues([...updatedFormValues, ...itemsToAdd]);\n }\n };\n\n const onSubmit = event => {\n event && event.preventDefault();\n\n if (!isSaveButtonAvailable) return null;\n const parsedFormValues = parseFormValues(formValues);\n\n const updatedFormValues = newUpdatedDate\n ? { ...formData.values, update: newUpdatedDate }\n : { ...formData.values };\n\n const handleUpdateFormData = () =>\n updateFormData(\n {\n values: { ...updatedFormValues, ...parsedFormValues }\n },\n true\n );\n\n const submitParams = {\n update: {\n entitySchema,\n entityData,\n parsedFormValues,\n client,\n setIsSaveButtonAvailable,\n setNewUpdatedDate,\n newUpdatedDate,\n previousQuery,\n setSaveButtonText,\n handleUpdateFormData\n },\n create: {\n entitySchema,\n parsedFormValues,\n client,\n setEntityData,\n setIsSaveButtonAvailable,\n history,\n setIsNewEntity,\n setSaveButtonText,\n handleUpdateFormData\n }\n };\n\n const currentAction = submitParams[action];\n return availableActions[action].submit(currentAction, addToast);\n };\n\n const onDelete = async () => {\n const {\n values: { id }\n } = formData;\n\n if (componentIsMounted.current) {\n setIsSaveButtonAvailable(false);\n }\n\n await availableActions.delete.submit(\n {\n entitySchema,\n client,\n parsedFormValues: { id }\n },\n addToast\n );\n\n history.push(`/data-listing/${entitySchema.id}`);\n };\n\n const onCopy = () => {\n if (formDataFromCopy && componentIsMounted.current) {\n updateFormData(formDataFromCopy);\n setShouldCopyData(true);\n setIsSaveButtonAvailable(true);\n setSaveButtonText(SAVE_BUTTON_TEXTS.save);\n if (formDataFromCopy.values.name) {\n setPageTitle(formDataFromCopy.values.name);\n }\n }\n };\n\n const updateCopyData = () => {\n setCopyModalStatus(!copyModalStatus);\n setShouldCopyData(false);\n };\n\n const handleCopyDataFromClose = () => {\n setCopyModalStatus(false);\n setFormDataFromCopy(null);\n };\n\n const getFormData = formDataValues => {\n const formDataUpdated = {\n values: { ...formDataValues }\n };\n setFormDataFromCopy(formDataUpdated);\n };\n\n const handlePublishAndUnpublish = async ({ target: { textContent } }) => {\n const isPublishButton = textContent === TEXT_CONTENT_TYPE;\n const isPublished = entityIsPublished === ENTITY_PUBLISHED;\n\n const isUnpublish = checkFulfilConditions(!isPublishButton, !isPublished);\n\n if (isUnpublish) {\n return addToast(UNPUBLISHED_WARNING, {\n appearance: 'warning',\n autoDismiss: true\n });\n }\n\n if (checkFulfilConditions(isPublishButton, isSaveButtonAvailable)) {\n const savedPageMessage = await onSubmit();\n\n if (savedPageMessage === ERROR) {\n return addToast(`Content not published`, {\n appearance: ERROR,\n autoDismiss: true\n });\n }\n }\n\n return availableActions.shared.triggerPublish(\n {\n entityData,\n client,\n setEntityIsPublish,\n entitySchema,\n textContent,\n refetchRecord\n },\n addToast\n );\n };\n\n const showModal = checkFulfilConditions(formData, modalStatus);\n\n const onViewUrlHandler = canViewPage(formData, entity, schema, entityIsPublished)\n ? () => onViewUrlClick(getFullUrl)\n : onViewUrl;\n\n const pageName = formData && formData.values && formData.values.name;\n\n const hasNewFormValues = checkFulfilConditions(isNewEntity, !isFormEmpty(formValues));\n const hasToDisplayPrompt = isSaveButtonAvailable || hasNewFormValues;\n\n const showSideBarRelations = checkFulfilConditions(schema, formData);\n const showPageBuilderTabs =\n schema?.interfaces?.includes('page-builder/page-builder-template') ||\n schema?.interfaces?.includes('page-builder/page-builder');\n\n return (\n <div className=\"page\">\n <EntityHeader\n entityData={entityData}\n entityIdentifier={entityIdentifier}\n pageTitle={pageTitle}\n pageName={pageName}\n onSubmit={onSubmit}\n handlePublishAndUnpublish={handlePublishAndUnpublish}\n isSaveButtonAvailable={isSaveButtonAvailable}\n isEnablePublishButton={isEnablePublishButton}\n isEnablePreviewButton={isEnablePreviewButton}\n toggleCopyModal={setCopyModalStatus}\n toggleModal={setModalStatus}\n formData={formData}\n onViewUrl={onViewUrlHandler}\n saveButtonText={saveButtonText}\n />\n <div className=\"page-wrapper__content\">\n <div className=\"tabs-wrapper tabs-wrapper__tab\">\n <Prompt when={hasToDisplayPrompt} message={LEAVE_PAGE_MESSAGE} />\n {showModal && (\n <DeleteAction\n onClose={setModalStatus}\n deleteAction={onDelete}\n itemName={formData.values.name}\n />\n )}\n {copyModalStatus && (\n <CopyDataFromAction\n onClose={handleCopyDataFromClose}\n copyAction={onCopy}\n getFormData={getFormData}\n />\n )}\n\n <div className=\"page__content--fixed\">\n <div className=\"page__content\">\n <div className=\"content\">\n <InfoBoxes id={entity.id} schema={schema} />\n <Tabs\n enabled={showPageBuilderTabs}\n onTabChange={tabId => {\n client.writeQuery({\n query: GET_CURRENT_TAB_ID,\n data: { currentTabId: tabId }\n });\n setCurrentTabId(tabId);\n }}>\n <FormBuilder\n getIsFormValid={setIsFormValid}\n getFormValues={getFormValues}\n schema={schema}\n data={clonedFormData}\n onChange={onChangeFormValues}\n shouldCopyData={shouldCopyData}\n updateCopyData={updateCopyData}\n formValues={formValues}\n isNewEntity={isNewEntity}\n />\n </Tabs>\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"column column--one-third page-sidebar\">\n {showSideBarRelations && (\n <SideBarRelations\n entity={entity}\n formData={formData.values}\n schema={schema}\n onChange={onChangeSideBarRelations}\n />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nEntity.propTypes = {\n entity: PropTypes.object,\n schema: PropTypes.object,\n previousQuery: PropTypes.object,\n action: PropTypes.string.isRequired,\n history: PropTypes.object.isRequired,\n formData: PropTypes.object,\n updateFormData: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n refetchRecord: PropTypes.func.isRequired\n};\n\nEntity.defaultProps = {\n previousQuery: null,\n schema: null,\n entity: null,\n formData: null,\n onViewUrl: null\n};\n\nexport default withRouter(Entity);\n"],"mappings":"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"}
@@ -25,7 +25,7 @@ var _v = _interopRequireDefault(require("uuid/v1"));
25
25
  var _client = require("@apollo/client");
26
26
  var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
27
27
  var _reactFormBuilder = require("@blaze-cms/react-form-builder");
28
- var _badge = _interopRequireDefault(require("@blaze-react/badge"));
28
+ var _classnames = _interopRequireDefault(require("classnames"));
29
29
  var _versioningUi = require("@blaze-cms/versioning-ui");
30
30
  var _constants = require("../../../../constants");
31
31
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -39,7 +39,8 @@ var SideBarRelations = function SideBarRelations(_ref) {
39
39
  var formattedStatus = formData.formattedStatus,
40
40
  formattedUpdated = formData.formattedUpdated,
41
41
  formattedCreated = formData.formattedCreated,
42
- formattedPublished = formData.formattedPublished;
42
+ formattedPublished = formData.formattedPublished,
43
+ status = formData.status;
43
44
  var client = (0, _client.useApolloClient)();
44
45
  var _useState = (0, _react.useState)(null),
45
46
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -140,6 +141,10 @@ var SideBarRelations = function SideBarRelations(_ref) {
140
141
  var itemId = entity.id;
141
142
  var itemEntity = schema.identifier,
142
143
  interfaces = schema.interfaces;
144
+ var statusClassName = (0, _classnames["default"])('sidebar__status__badge', {
145
+ 'sidebar__status__badge--published': status === _constants.PUBLISHED,
146
+ 'sidebar__status__badge--unpublished': status === _constants.UNPUBLISHED
147
+ });
143
148
  return /*#__PURE__*/_react["default"].createElement("div", {
144
149
  className: "sidebar",
145
150
  "data-testid": "sideBarRelations-main-div"
@@ -147,10 +152,11 @@ var SideBarRelations = function SideBarRelations(_ref) {
147
152
  className: "sidebar__content"
148
153
  }, formattedCreated && /*#__PURE__*/_react["default"].createElement("div", {
149
154
  className: "sidebar__status"
150
- }, formattedStatus && /*#__PURE__*/_react["default"].createElement(_badge["default"], {
151
- type: "status",
152
- modifiers: formattedStatus
153
- }, formattedStatus, formattedStatus === _constants.PUBLISHED && ": ".concat(formattedPublished)), /*#__PURE__*/_react["default"].createElement("p", null, "Created: ", /*#__PURE__*/_react["default"].createElement("span", null, formattedCreated)), /*#__PURE__*/_react["default"].createElement("p", null, "Updated: ", /*#__PURE__*/_react["default"].createElement("span", null, formattedUpdated))), /*#__PURE__*/_react["default"].createElement(_versioningUi.VersionsList, {
155
+ }, /*#__PURE__*/_react["default"].createElement("div", {
156
+ className: "sidebar__status__wrapper"
157
+ }, /*#__PURE__*/_react["default"].createElement("b", null, "Status"), /*#__PURE__*/_react["default"].createElement("span", {
158
+ className: statusClassName
159
+ }, formattedStatus)), formattedStatus === _constants.PUBLISHED && /*#__PURE__*/_react["default"].createElement("p", null, formattedStatus, " on: ", /*#__PURE__*/_react["default"].createElement("span", null, " ", formattedPublished)), /*#__PURE__*/_react["default"].createElement("p", null, "Created: ", /*#__PURE__*/_react["default"].createElement("span", null, formattedCreated)), /*#__PURE__*/_react["default"].createElement("p", null, "Updated: ", /*#__PURE__*/_react["default"].createElement("span", null, formattedUpdated))), /*#__PURE__*/_react["default"].createElement(_versioningUi.VersionsList, {
154
160
  itemEntity: itemEntity,
155
161
  itemId: itemId,
156
162
  interfaces: interfaces
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["SideBarRelations","schema","onChange","formData","entity","RelationComponent","formFieldTypes","relation","formattedStatus","formattedUpdated","formattedCreated","formattedPublished","client","useApolloClient","useState","relationsComponents","setRelationsComponents","useEffect","fetchRelationSchema","entityIdentifier","query","getQuery","variables","identifier","data","getEntitySchemas","relationSchema","Promise","all","relations","filter","showInForm","foreignKey","properties","map","uuidv1","id","staticData","allRelationComponents","itemId","itemEntity","interfaces","PUBLISHED","entitySchema","propTypes","PropTypes","object","isRequired","func","defaultProps"],"sources":["../../../../../src/components/EntityManager/Entity/SideBarRelations/index.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport uuidv1 from 'uuid/v1';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { formFieldTypes } from '@blaze-cms/react-form-builder';\nimport Badge from '@blaze-react/badge';\nimport { VersionsList } from '@blaze-cms/versioning-ui';\nimport { PUBLISHED } from '../../../../constants';\n\nconst SideBarRelations = ({ schema, onChange, formData, entity }) => {\n const { relation: RelationComponent } = formFieldTypes;\n const { formattedStatus, formattedUpdated, formattedCreated, formattedPublished } = formData;\n const client = useApolloClient();\n const [relationsComponents, setRelationsComponents] = useState(null);\n\n useEffect(\n () => {\n (async () => {\n const fetchRelationSchema = async ({ entityIdentifier }) => {\n if (!entityIdentifier) return null;\n\n const {\n data: {\n getEntitySchemas: [relationSchema]\n }\n } = await client.query({\n query: getQuery('GET_ENTITY_SCHEMA'),\n variables: { identifier: entityIdentifier }\n });\n return relationSchema;\n };\n\n if (!relationsComponents && schema) {\n const allRelationComponents = await Promise.all(\n schema.relations\n .filter(({ showInForm, foreignKey }) => showInForm && schema.properties[foreignKey])\n .map(async relation => ({\n id: uuidv1(),\n staticData: relation,\n schema: await fetchRelationSchema(relation)\n }))\n );\n\n setRelationsComponents(allRelationComponents);\n }\n })();\n },\n [client, relationsComponents, schema, schema.relations]\n );\n const { id: itemId } = entity;\n const { identifier: itemEntity, interfaces } = schema;\n\n return (\n <div className=\"sidebar\" data-testid=\"sideBarRelations-main-div\">\n <div className=\"sidebar__content\">\n {formattedCreated && (\n <div className=\"sidebar__status\">\n {formattedStatus && (\n <Badge type=\"status\" modifiers={formattedStatus}>\n {formattedStatus}\n {formattedStatus === PUBLISHED && `: ${formattedPublished}`}\n </Badge>\n )}\n <p>\n Created: <span>{formattedCreated}</span>\n </p>\n <p>\n Updated: <span>{formattedUpdated}</span>\n </p>\n </div>\n )}\n\n <VersionsList itemEntity={itemEntity} itemId={itemId} interfaces={interfaces} />\n {relationsComponents &&\n relationsComponents.map(({ id, staticData, schema: entitySchema }) => (\n <RelationComponent\n formData={formData}\n schema={entitySchema}\n key={id}\n staticData={staticData}\n onSelect={onChange}\n />\n ))}\n </div>\n </div>\n );\n};\n\nSideBarRelations.propTypes = {\n schema: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n formData: PropTypes.object.isRequired,\n entity: PropTypes.object\n};\n\nSideBarRelations.defaultProps = {\n entity: {}\n};\n\nexport default SideBarRelations;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["SideBarRelations","schema","onChange","formData","entity","RelationComponent","formFieldTypes","relation","formattedStatus","formattedUpdated","formattedCreated","formattedPublished","status","client","useApolloClient","useState","relationsComponents","setRelationsComponents","useEffect","fetchRelationSchema","entityIdentifier","query","getQuery","variables","identifier","data","getEntitySchemas","relationSchema","Promise","all","relations","filter","showInForm","foreignKey","properties","map","uuidv1","id","staticData","allRelationComponents","itemId","itemEntity","interfaces","statusClassName","classnames","PUBLISHED","UNPUBLISHED","entitySchema","propTypes","PropTypes","object","isRequired","func","defaultProps"],"sources":["../../../../../src/components/EntityManager/Entity/SideBarRelations/index.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport uuidv1 from 'uuid/v1';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { formFieldTypes } from '@blaze-cms/react-form-builder';\nimport classnames from 'classnames';\nimport { VersionsList } from '@blaze-cms/versioning-ui';\nimport { PUBLISHED, UNPUBLISHED } from '../../../../constants';\n\nconst SideBarRelations = ({ schema, onChange, formData, entity }) => {\n const { relation: RelationComponent } = formFieldTypes;\n const {\n formattedStatus,\n formattedUpdated,\n formattedCreated,\n formattedPublished,\n status\n } = formData;\n const client = useApolloClient();\n const [relationsComponents, setRelationsComponents] = useState(null);\n useEffect(\n () => {\n (async () => {\n const fetchRelationSchema = async ({ entityIdentifier }) => {\n if (!entityIdentifier) return null;\n\n const {\n data: {\n getEntitySchemas: [relationSchema]\n }\n } = await client.query({\n query: getQuery('GET_ENTITY_SCHEMA'),\n variables: { identifier: entityIdentifier }\n });\n return relationSchema;\n };\n\n if (!relationsComponents && schema) {\n const allRelationComponents = await Promise.all(\n schema.relations\n .filter(({ showInForm, foreignKey }) => showInForm && schema.properties[foreignKey])\n .map(async relation => ({\n id: uuidv1(),\n staticData: relation,\n schema: await fetchRelationSchema(relation)\n }))\n );\n\n setRelationsComponents(allRelationComponents);\n }\n })();\n },\n [client, relationsComponents, schema, schema.relations]\n );\n const { id: itemId } = entity;\n const { identifier: itemEntity, interfaces } = schema;\n\n const statusClassName = classnames('sidebar__status__badge', {\n 'sidebar__status__badge--published': status === PUBLISHED,\n 'sidebar__status__badge--unpublished': status === UNPUBLISHED\n });\n\n return (\n <div className=\"sidebar\" data-testid=\"sideBarRelations-main-div\">\n <div className=\"sidebar__content\">\n {formattedCreated && (\n <div className=\"sidebar__status\">\n <div className=\"sidebar__status__wrapper\">\n <b>Status</b>\n <span className={statusClassName}>{formattedStatus}</span>\n </div>\n {formattedStatus === PUBLISHED && (\n <p>\n {formattedStatus} on: <span> {formattedPublished}</span>\n </p>\n )}\n\n <p>\n Created: <span>{formattedCreated}</span>\n </p>\n <p>\n Updated: <span>{formattedUpdated}</span>\n </p>\n </div>\n )}\n\n <VersionsList itemEntity={itemEntity} itemId={itemId} interfaces={interfaces} />\n {relationsComponents &&\n relationsComponents.map(({ id, staticData, schema: entitySchema }) => (\n <RelationComponent\n formData={formData}\n schema={entitySchema}\n key={id}\n staticData={staticData}\n onSelect={onChange}\n />\n ))}\n </div>\n </div>\n );\n};\n\nSideBarRelations.propTypes = {\n schema: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n formData: PropTypes.object.isRequired,\n entity: PropTypes.object\n};\n\nSideBarRelations.defaultProps = {\n entity: {}\n};\n\nexport default SideBarRelations;\n"],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ require("core-js/modules/es.array.map.js");
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _InfoBoxContainer = _interopRequireDefault(require("./container/InfoBoxContainer"));
13
+ var InfoBoxes = function InfoBoxes(_ref) {
14
+ var id = _ref.id,
15
+ schema = _ref.schema;
16
+ var _schema$displayProper = schema.displayProperties.adminInfoBoxes,
17
+ adminInfoBoxes = _schema$displayProper === void 0 ? [] : _schema$displayProper;
18
+ if (adminInfoBoxes.length <= 0) {
19
+ return null;
20
+ }
21
+ return adminInfoBoxes.map(function (infoBox) {
22
+ return /*#__PURE__*/_react["default"].createElement(_InfoBoxContainer["default"], {
23
+ id: id,
24
+ schema: schema,
25
+ key: infoBox.key,
26
+ infoBox: infoBox
27
+ });
28
+ });
29
+ };
30
+ var _default = InfoBoxes;
31
+ exports["default"] = _default;
32
+ InfoBoxes.propTypes = {
33
+ id: _propTypes["default"].string.isRequired,
34
+ schema: _propTypes["default"].object.isRequired
35
+ };
36
+ //# sourceMappingURL=InfoBoxes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoBoxes.js","names":["InfoBoxes","id","schema","displayProperties","adminInfoBoxes","length","map","infoBox","key","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../src/components/InfoBoxes/InfoBoxes.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport InfoBoxContainer from './container/InfoBoxContainer';\n\nconst InfoBoxes = ({ id, schema }) => {\n const {\n displayProperties: { adminInfoBoxes = [] }\n } = schema;\n\n if (adminInfoBoxes.length <= 0) {\n return null;\n }\n\n return adminInfoBoxes.map(infoBox => (\n <InfoBoxContainer id={id} schema={schema} key={infoBox.key} infoBox={infoBox} />\n ));\n};\n\nexport default InfoBoxes;\n\nInfoBoxes.propTypes = {\n id: PropTypes.string.isRequired,\n schema: PropTypes.object.isRequired\n};\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAS,OAAuB;EAAA,IAAjBC,EAAE,QAAFA,EAAE;IAAEC,MAAM,QAANA,MAAM;EAC7B,4BAEIA,MAAM,CADRC,iBAAiB,CAAIC,cAAc;IAAdA,cAAc,sCAAG,EAAE;EAG1C,IAAIA,cAAc,CAACC,MAAM,IAAI,CAAC,EAAE;IAC9B,OAAO,IAAI;EACb;EAEA,OAAOD,cAAc,CAACE,GAAG,CAAC,UAAAC,OAAO;IAAA,oBAC/B,gCAAC,4BAAgB;MAAC,EAAE,EAAEN,EAAG;MAAC,MAAM,EAAEC,MAAO;MAAC,GAAG,EAAEK,OAAO,CAACC,GAAI;MAAC,OAAO,EAAED;IAAQ,EAAG;EAAA,CACjF,CAAC;AACJ,CAAC;AAAC,eAEaP,SAAS;AAAA;AAExBA,SAAS,CAACS,SAAS,GAAG;EACpBR,EAAE,EAAES,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC/BV,MAAM,EAAEQ,qBAAS,CAACG,MAAM,CAACD;AAC3B,CAAC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ require("core-js/modules/es.object.keys.js");
10
+ require("core-js/modules/es.array.flat-map.js");
11
+ require("core-js/modules/es.array.unscopables.flat-map.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/es.object.values.js");
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
15
+ var _react = _interopRequireDefault(require("react"));
16
+ var _useData2 = _interopRequireDefault(require("../hooks/useData"));
17
+ var _InfoBox = _interopRequireDefault(require("../presentational/InfoBox"));
18
+ var InfoBoxContainer = function InfoBoxContainer(_ref) {
19
+ var id = _ref.id,
20
+ schema = _ref.schema,
21
+ infoBox = _ref.infoBox;
22
+ var _useData = (0, _useData2["default"])({
23
+ id: id,
24
+ schema: schema,
25
+ infoBox: infoBox
26
+ }),
27
+ data = _useData.data;
28
+ if (!data || !Object.keys(data) || Object.keys(data).length === 0) return null;
29
+ var items = Object.values(data).flatMap(function (item) {
30
+ return Object.values(item);
31
+ });
32
+ return /*#__PURE__*/_react["default"].createElement(_InfoBox["default"], {
33
+ items: items,
34
+ infoBoxKey: infoBox.key
35
+ });
36
+ };
37
+ var _default = InfoBoxContainer;
38
+ exports["default"] = _default;
39
+ InfoBoxContainer.propTypes = {
40
+ id: _propTypes["default"].string.isRequired,
41
+ infoBox: _propTypes["default"].object.isRequired,
42
+ schema: _propTypes["default"].object.isRequired
43
+ };
44
+ //# sourceMappingURL=InfoBoxContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfoBoxContainer.js","names":["InfoBoxContainer","id","schema","infoBox","useData","data","Object","keys","length","items","values","flatMap","item","key","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../src/components/InfoBoxes/container/InfoBoxContainer.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport useData from '../hooks/useData';\nimport InfoBox from '../presentational/InfoBox';\n\nconst InfoBoxContainer = ({ id, schema, infoBox }) => {\n const { data } = useData({ id, schema, infoBox });\n\n if (!data || !Object.keys(data) || Object.keys(data).length === 0) return null;\n\n const items = Object.values(data).flatMap(item => Object.values(item));\n\n return <InfoBox items={items} infoBoxKey={infoBox.key} />;\n};\n\nexport default InfoBoxContainer;\n\nInfoBoxContainer.propTypes = {\n id: PropTypes.string.isRequired,\n infoBox: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired\n};\n"],"mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgB,OAAgC;EAAA,IAA1BC,EAAE,QAAFA,EAAE;IAAEC,MAAM,QAANA,MAAM;IAAEC,OAAO,QAAPA,OAAO;EAC7C,eAAiB,IAAAC,oBAAO,EAAC;MAAEH,EAAE,EAAFA,EAAE;MAAEC,MAAM,EAANA,MAAM;MAAEC,OAAO,EAAPA;IAAQ,CAAC,CAAC;IAAzCE,IAAI,YAAJA,IAAI;EAEZ,IAAI,CAACA,IAAI,IAAI,CAACC,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,IAAIC,MAAM,CAACC,IAAI,CAACF,IAAI,CAAC,CAACG,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAE9E,IAAMC,KAAK,GAAGH,MAAM,CAACI,MAAM,CAACL,IAAI,CAAC,CAACM,OAAO,CAAC,UAAAC,IAAI;IAAA,OAAIN,MAAM,CAACI,MAAM,CAACE,IAAI,CAAC;EAAA,EAAC;EAEtE,oBAAO,gCAAC,mBAAO;IAAC,KAAK,EAAEH,KAAM;IAAC,UAAU,EAAEN,OAAO,CAACU;EAAI,EAAG;AAC3D,CAAC;AAAC,eAEab,gBAAgB;AAAA;AAE/BA,gBAAgB,CAACc,SAAS,GAAG;EAC3Bb,EAAE,EAAEc,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC/Bd,OAAO,EAAEY,qBAAS,CAACG,MAAM,CAACD,UAAU;EACpCf,MAAM,EAAEa,qBAAS,CAACG,MAAM,CAACD;AAC3B,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = buildDynamicQuery;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _client = require("@apollo/client");
11
+ var _coreErrors = require("@blaze-cms/core-errors");
12
+ var _templateObject;
13
+ function buildDynamicQuery(_ref) {
14
+ var id = _ref.id,
15
+ schema = _ref.schema,
16
+ infoBox = _ref.infoBox;
17
+ if (!schema || !schema.actions || !schema.actions.get || !schema.properties) {
18
+ throw new _coreErrors.BlazeError('DataEntity query requires get action, properties and fields from entity schema');
19
+ }
20
+ var fields = "".concat(infoBox.property, " {\n label\n value\n }");
21
+ return {
22
+ query: (0, _client.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["query getInfoBoxData($id: String!){\n ", "( id: $id ) {\n ", "\n __typename\n }\n }"])), schema.actions.get, fields)
23
+ };
24
+ }
25
+ //# sourceMappingURL=build-dynamic-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-dynamic-query.js","names":["buildDynamicQuery","id","schema","infoBox","actions","get","properties","BlazeError","fields","property","query","gql"],"sources":["../../../../src/components/InfoBoxes/helpers/build-dynamic-query.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { BlazeError } from '@blaze-cms/core-errors';\n\nexport default function buildDynamicQuery({ id, schema, infoBox }) {\n if (!schema || !schema.actions || !schema.actions.get || !schema.properties) {\n throw new BlazeError(\n 'DataEntity query requires get action, properties and fields from entity schema'\n );\n }\n\n const fields = `${infoBox.property} {\n label\n value\n }`;\n\n return {\n query: gql`query getInfoBoxData($id: String!){\n ${schema.actions.get}( id: $id ) {\n ${fields}\n __typename\n }\n }`\n };\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AAAoD;AAErC,SAASA,iBAAiB,OAA0B;EAAA,IAAvBC,EAAE,QAAFA,EAAE;IAAEC,MAAM,QAANA,MAAM;IAAEC,OAAO,QAAPA,OAAO;EAC7D,IAAI,CAACD,MAAM,IAAI,CAACA,MAAM,CAACE,OAAO,IAAI,CAACF,MAAM,CAACE,OAAO,CAACC,GAAG,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;IAC3E,MAAM,IAAIC,sBAAU,CAClB,gFAAgF,CACjF;EACH;EAEA,IAAMC,MAAM,aAAML,OAAO,CAACM,QAAQ,wCAG9B;EAEJ,OAAO;IACLC,KAAK,MAAEC,WAAG,0LACRT,MAAM,CAACE,OAAO,CAACC,GAAG,EACjBG,MAAM;EAIX,CAAC;AACH"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _client = require("@apollo/client");
11
+ var _useInfoBox = _interopRequireDefault(require("./useInfoBox"));
12
+ var _templateObject;
13
+ function useData(_ref) {
14
+ var id = _ref.id,
15
+ schema = _ref.schema,
16
+ infoBox = _ref.infoBox;
17
+ var _useInfoBoxData = (0, _useInfoBox["default"])({
18
+ id: id,
19
+ schema: schema,
20
+ infoBox: infoBox
21
+ }),
22
+ query = _useInfoBoxData.query;
23
+ var infoBoxQuery = query || (0, _client.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n query {\n __typename\n }\n "])));
24
+ var _useQuery = (0, _client.useQuery)(infoBoxQuery, {
25
+ variables: {
26
+ id: id
27
+ },
28
+ skip: !query
29
+ }),
30
+ _useQuery$data = _useQuery.data,
31
+ data = _useQuery$data === void 0 ? {} : _useQuery$data,
32
+ loading = _useQuery.loading,
33
+ error = _useQuery.error;
34
+ return {
35
+ data: data.__typename !== 'Query' ? data : null,
36
+ loading: loading,
37
+ error: error
38
+ };
39
+ }
40
+ var _default = useData;
41
+ exports["default"] = _default;
42
+ //# sourceMappingURL=useData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useData.js","names":["useData","id","schema","infoBox","useInfoBoxData","query","infoBoxQuery","gql","useQuery","variables","skip","data","loading","error","__typename"],"sources":["../../../../src/components/InfoBoxes/hooks/useData.js"],"sourcesContent":["import { useQuery, gql } from '@apollo/client';\nimport useInfoBoxData from './useInfoBox';\n\nfunction useData({ id, schema, infoBox }) {\n const { query } = useInfoBoxData({ id, schema, infoBox });\n\n const infoBoxQuery =\n query ||\n gql`\n query {\n __typename\n }\n `;\n\n const { data = {}, loading, error } = useQuery(infoBoxQuery, { variables: { id }, skip: !query });\n\n return { data: data.__typename !== 'Query' ? data : null, loading, error };\n}\n\nexport default useData;\n"],"mappings":";;;;;;;;;AAAA;AACA;AAA0C;AAE1C,SAASA,OAAO,OAA0B;EAAA,IAAvBC,EAAE,QAAFA,EAAE;IAAEC,MAAM,QAANA,MAAM;IAAEC,OAAO,QAAPA,OAAO;EACpC,sBAAkB,IAAAC,sBAAc,EAAC;MAAEH,EAAE,EAAFA,EAAE;MAAEC,MAAM,EAANA,MAAM;MAAEC,OAAO,EAAPA;IAAQ,CAAC,CAAC;IAAjDE,KAAK,mBAALA,KAAK;EAEb,IAAMC,YAAY,GAChBD,KAAK,QACLE,WAAG,yIAIF;EAEH,gBAAsC,IAAAC,gBAAQ,EAACF,YAAY,EAAE;MAAEG,SAAS,EAAE;QAAER,EAAE,EAAFA;MAAG,CAAC;MAAES,IAAI,EAAE,CAACL;IAAM,CAAC,CAAC;IAAA,2BAAzFM,IAAI;IAAJA,IAAI,+BAAG,CAAC,CAAC;IAAEC,OAAO,aAAPA,OAAO;IAAEC,KAAK,aAALA,KAAK;EAEjC,OAAO;IAAEF,IAAI,EAAEA,IAAI,CAACG,UAAU,KAAK,OAAO,GAAGH,IAAI,GAAG,IAAI;IAAEC,OAAO,EAAPA,OAAO;IAAEC,KAAK,EAALA;EAAM,CAAC;AAC5E;AAAC,eAEcb,OAAO;AAAA"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _buildDynamicQuery2 = _interopRequireDefault(require("../helpers/build-dynamic-query"));
10
+ function useInfoBox(_ref) {
11
+ var id = _ref.id,
12
+ schema = _ref.schema,
13
+ infoBox = _ref.infoBox;
14
+ var _buildDynamicQuery = (0, _buildDynamicQuery2["default"])({
15
+ id: id,
16
+ schema: schema,
17
+ infoBox: infoBox
18
+ }),
19
+ query = _buildDynamicQuery.query;
20
+ return {
21
+ query: query || null
22
+ };
23
+ }
24
+ var _default = useInfoBox;
25
+ exports["default"] = _default;
26
+ //# sourceMappingURL=useInfoBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInfoBox.js","names":["useInfoBox","id","schema","infoBox","buildDynamicQuery","query"],"sources":["../../../../src/components/InfoBoxes/hooks/useInfoBox.js"],"sourcesContent":["import buildDynamicQuery from '../helpers/build-dynamic-query';\n\nfunction useInfoBox({ id, schema, infoBox }) {\n const { query } = buildDynamicQuery({\n id,\n schema,\n infoBox\n });\n\n return { query: query || null };\n}\n\nexport default useInfoBox;\n"],"mappings":";;;;;;;;AAAA;AAEA,SAASA,UAAU,OAA0B;EAAA,IAAvBC,EAAE,QAAFA,EAAE;IAAEC,MAAM,QAANA,MAAM;IAAEC,OAAO,QAAPA,OAAO;EACvC,yBAAkB,IAAAC,8BAAiB,EAAC;MAClCH,EAAE,EAAFA,EAAE;MACFC,MAAM,EAANA,MAAM;MACNC,OAAO,EAAPA;IACF,CAAC,CAAC;IAJME,KAAK,sBAALA,KAAK;EAMb,OAAO;IAAEA,KAAK,EAAEA,KAAK,IAAI;EAAK,CAAC;AACjC;AAAC,eAEcL,UAAU;AAAA"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _InfoBoxes = _interopRequireDefault(require("./InfoBoxes"));
10
+ var _default = _InfoBoxes["default"];
11
+ exports["default"] = _default;
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["InfoBoxes"],"sources":["../../../src/components/InfoBoxes/index.js"],"sourcesContent":["import InfoBoxes from './InfoBoxes';\n\nexport default InfoBoxes;\n"],"mappings":";;;;;;;;AAAA;AAAoC,eAErBA,qBAAS;AAAA"}