@blaze-cms/react-page-builder 0.122.1 → 0.123.0-alpha.4

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 (54) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/lib/application/query/index.js +7 -1
  3. package/lib/application/query/index.js.map +1 -1
  4. package/lib/components/Card/CardRender.js +1 -0
  5. package/lib/components/Card/CardRender.js.map +1 -1
  6. package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js +20 -3
  7. package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  8. package/lib/components/DataSummary/helpers/get-link-based-on-value.js +28 -0
  9. package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -0
  10. package/lib/components/DataSummary/helpers/index.js +8 -0
  11. package/lib/components/DataSummary/helpers/index.js.map +1 -1
  12. package/lib/components/Menu/Menu.js +46 -4
  13. package/lib/components/Menu/Menu.js.map +1 -1
  14. package/lib/components/SearchContent/index.js +227 -0
  15. package/lib/components/SearchContent/index.js.map +1 -0
  16. package/lib/components/index.js +5 -5
  17. package/lib/components/index.js.map +1 -1
  18. package/lib/constants/index.js +6 -2
  19. package/lib/constants/index.js.map +1 -1
  20. package/lib-es/application/query/index.js +29 -1
  21. package/lib-es/application/query/index.js.map +1 -1
  22. package/lib-es/components/Card/CardRender.js +1 -0
  23. package/lib-es/components/Card/CardRender.js.map +1 -1
  24. package/lib-es/components/DataSummary/helpers/build-props-to-display-with-content.js +19 -3
  25. package/lib-es/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  26. package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js +16 -0
  27. package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -0
  28. package/lib-es/components/DataSummary/helpers/index.js +2 -1
  29. package/lib-es/components/DataSummary/helpers/index.js.map +1 -1
  30. package/lib-es/components/Menu/Menu.js +46 -5
  31. package/lib-es/components/Menu/Menu.js.map +1 -1
  32. package/lib-es/components/SearchContent/index.js +155 -0
  33. package/lib-es/components/SearchContent/index.js.map +1 -0
  34. package/lib-es/components/index.js +4 -4
  35. package/lib-es/components/index.js.map +1 -1
  36. package/lib-es/constants/index.js +3 -1
  37. package/lib-es/constants/index.js.map +1 -1
  38. package/package.json +2 -2
  39. package/src/application/query/index.js +29 -0
  40. package/src/components/Card/CardRender.js +4 -0
  41. package/src/components/DataSummary/helpers/build-props-to-display-with-content.js +15 -3
  42. package/src/components/DataSummary/helpers/get-link-based-on-value.js +14 -0
  43. package/src/components/DataSummary/helpers/index.js +3 -1
  44. package/src/components/Menu/Menu.js +44 -2
  45. package/src/components/SearchContent/index.js +153 -0
  46. package/src/components/index.js +4 -2
  47. package/src/constants/index.js +6 -1
  48. package/tests/helpers/mocks.js +33 -10
  49. package/tests/unit/src/components/Card/CardRender.test.js +20 -6
  50. package/tests/unit/src/components/Card/__snapshots__/CardRender.test.js.snap +50 -1
  51. package/tests/unit/src/components/DataSummary/helpers/build-props-to-display-with-content.test.js +22 -0
  52. package/tests/unit/src/components/DataSummary/helpers/get-link-based-on-value.test.js +29 -0
  53. package/tests/unit/src/components/Menu/__snapshots__/Menu.test.js.snap +11 -7
  54. package/tests/unit/src/components/__snapshots__/index.test.js.snap +4 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,36 @@
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.123.0-alpha.4](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.3...v0.123.0-alpha.4) (2022-03-25)
7
+
8
+
9
+ ### Features
10
+
11
+ * add email/web links around matching data summary values ([#3407](https://github.com/thebyte9/blaze/issues/3407)) ([d2e4496](https://github.com/thebyte9/blaze/commit/d2e449622eaba85eb03612b14bd9cfcfb47bca4f))
12
+
13
+
14
+
15
+
16
+
17
+ # [0.123.0-alpha.3](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.2...v0.123.0-alpha.3) (2022-03-25)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * render empty card block when removing card that same as parent record ([#3171](https://github.com/thebyte9/blaze/issues/3171)) ([011bd77](https://github.com/thebyte9/blaze/commit/011bd77cab7eba6462e42e7d61e075a6c4e58248))
23
+
24
+
25
+
26
+
27
+
28
+ # [0.123.0-alpha.2](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.1...v0.123.0-alpha.2) (2022-03-22)
29
+
30
+ **Note:** Version bump only for package @blaze-cms/react-page-builder
31
+
32
+
33
+
34
+
35
+
6
36
  ## [0.122.1](https://github.com/thebyte9/blaze/compare/v0.122.1-alpha.0...v0.122.1) (2022-03-21)
7
37
 
8
38
  **Note:** Version bump only for package @blaze-cms/react-page-builder
@@ -7,7 +7,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.getUser = exports.getSingleEntitySchema = exports.getSearchPublishedContent = exports.getRecordParents = exports.getMultipleSchema = exports.getFiles = exports.getFileById = exports.getEntitySchema = exports.getCount = exports.getAction = exports.generateSingleItemQuery = exports.generateMultiItemQuery = void 0;
10
+ exports.getUser = exports.getSingleEntitySchema = exports.getSearchPublishedContent = exports.getRecordParents = exports.getPublishedContent = exports.getMultipleSchema = exports.getFiles = exports.getFileById = exports.getEntitySchema = exports.getCount = exports.getAction = exports.generateSingleItemQuery = exports.generateMultiItemQuery = void 0;
11
11
 
12
12
  require("core-js/modules/es.array.join.js");
13
13
 
@@ -89,4 +89,10 @@ var getAction = function getAction(action, props) {
89
89
  };
90
90
 
91
91
  exports.getAction = getAction;
92
+
93
+ var getPublishedContent = function getPublishedContent(entity) {
94
+ return "\n query searchPublishedContent(\n $rawQueryStringified: String!\n $offset: Int\n $limit: Int\n $sort: String\n ) {\n searchPublishedContent(\n rawQueryStringified: $rawQueryStringified\n offset: $offset\n limit: $limit\n sort: $sort\n ) {\n results {\n ... on ".concat(entity, " {\n id\n name\n url\n __typename\n }\n __typename\n }\n total\n __typename\n }\n }\n");
95
+ };
96
+
97
+ exports.getPublishedContent = getPublishedContent;
92
98
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/application/query/index.js"],"names":["defaultSchemaProps","getSearchPublishedContent","fields","gql","getUser","userProps","getEntitySchema","getSingleEntitySchema","getRecordParents","queryName","getMultipleSchema","identifiers","queryString","map","id","join","getFiles","getFileById","getCount","action","generateQuery","props","generateMultiItemQuery","generateSingleItemQuery","getAction","query"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAEA,IAAMA,kBAAkB,kHAAxB;;AAWA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAAAC,MAAM;AAAA,aAAIC,WAAJ,+VAG9BD,MAH8B;AAAA,CAAxC;;;;AAQA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAAAC,SAAS;AAAA,aAAIF,WAAJ,uLAIjBE,SAJiB;AAAA,CAAzB;;;AASA,IAAMC,eAAe,OAAGH,WAAH,uNAGbH,kBAHa,CAArB;;AAQA,IAAMO,qBAAqB,OAAGJ,WAAH,8MAGnBH,kBAHmB,CAA3B;;;AAQA,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,SAAS;AAAA,aAAIN,WAAJ,gQAEfM,SAFe;AAAA,CAAlC;;;;AAcA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,WAAW,EAAI;AACvC,MAAMC,WAAW,GAAGD,WAAW,CAC5BE,GADiB,CAEhB,UAAAC,EAAE;AAAA,qBAAOA,EAAP,qCAAmCA,EAAnC,gCACMd,kBADN;AAAA,GAFc,EAMjBe,IANiB,MAApB;AAOA,aAAOZ,WAAP,0HAEMS,WAFN;AAID,CAZD;;;AAcA,IAAMI,QAAQ,OAAGb,WAAH,0MAAd;;AAUA,IAAMc,WAAW,OAAGd,WAAH,iMAAjB;;;AAUA,IAAMe,QAAQ,GAAG,SAAXA,QAAW,CAAAC,MAAM;AAAA,aAAIhB,WAAJ,2JACjBgB,MADiB;AAAA,CAAvB;;;;AAKA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACD,MAAD,EAASE,KAAT;AAAA,8GAKR,wBAAWF,MAAX,CALQ,8BAMhBA,MANgB,mFAOdE,KAPc;AAAA,CAAtB;;AAaA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACH,MAAD,EAASE,KAAT;AAAA,aAAmBlB,WAAnB,qNAEzBgB,MAFyB,EAGvBE,KAHuB;AAAA,CAA/B;;;;AAUA,IAAME,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACJ,MAAD,EAASE,KAAT;AAAA,aAAmBlB,WAAnB,sNAEdgB,MAFc,EAG1BE,KAH0B;AAAA,CAAhC,C,CAUA;;;;;AACA,IAAMG,SAAS,GAAG,SAAZA,SAAY,CAACL,MAAD,EAASE,KAAT,EAAmB;AACnC,MAAMI,KAAK,GAAGL,aAAa,CAACD,MAAD,EAASE,KAAT,CAA3B;AACA,aAAOlB,WAAP,0GACIsB,KADJ;AAGD,CALD","sourcesContent":["import { gql } from '@apollo/client';\nimport upperFirst from 'lodash.upperfirst';\n\nconst defaultSchemaProps = `\n id\n identifier\n properties\n dynamicProperties\n actions\n interfaces\n relations\n __typename\n`;\n\nconst getSearchPublishedContent = fields => gql`\n query searchPublishedContent($rawQueryStringified: String!, $offset: Int, $limit: Int, $sort: String) {\n searchPublishedContent(rawQueryStringified: $rawQueryStringified, offset: $offset, limit: $limit, sort: $sort) {\n ${fields}\n }\n }\n `;\n\nconst getUser = userProps => gql`\n query getUser($id: String!) {\n getUser(id: $id) {\n id\n ${userProps}\n }\n }\n`;\n\nconst getEntitySchema = gql`\n query getEntitySchemas($identifier: String!) {\n getEntitySchemas(identifier: $identifier) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getSingleEntitySchema = gql`\n query getEntitySchema($id: String!) {\n getEntitySchema: getEntitySchema(id: $id) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getRecordParents = queryName => gql`\nquery getRecordParents($id: String!){\n recordParents: ${queryName}(id: $id){\n id,\n name,\n url,\n parents {\n id,\n name\n url\n }\n }\n}`;\n\nconst getMultipleSchema = identifiers => {\n const queryString = identifiers\n .map(\n id => `${id}: getEntitySchema(id: \"${id}\") {\n ${defaultSchemaProps}\n }`\n )\n .join(`\\n`);\n return gql`\n query {\n ${queryString}\n }`;\n};\n\nconst getFiles = gql`\n query getFiles($where: JSON!) {\n getFiles(where: $where) {\n id\n url\n data\n }\n }\n`;\n\nconst getFileById = gql`\n query getFile($id: String!) {\n getFile(id: $id) {\n id\n url\n data\n }\n }\n`;\n\nconst getCount = action => gql`query countData($where: JSON!) {\n ${action} (where: $where)\n }\n`;\n\nconst generateQuery = (action, props) => `\n query getEntityData(\n $where: JSON\n $limit: Int\n $offset: Int\n $sort: [${upperFirst(action)}SortItem]){\n ${action} (where: $where, limit: $limit, offset: $offset, sort: $sort){\n ${props}\n id\n __typename\n }\n }\n `;\nconst generateMultiItemQuery = (action, props) => gql`\n query getEntityData($where: JSON){\n ${action} (where: $where){\n ${props}\n id\n __typename\n }\n }\n `;\n\nconst generateSingleItemQuery = (action, props) => gql`\n query getEntityData($id: String!){\n entityData: ${action}(id: $id){\n ${props},\n id,\n __typename\n }\n }\n `;\n\n// TODO: extend function to handle properties and make them dynamic with a config schema for each entity.\nconst getAction = (action, props) => {\n const query = generateQuery(action, props);\n return gql`\n ${query}\n `;\n};\n\nexport {\n getEntitySchema,\n getSingleEntitySchema,\n getAction,\n getFiles,\n getFileById,\n generateMultiItemQuery,\n generateSingleItemQuery,\n getSearchPublishedContent,\n getCount,\n getMultipleSchema,\n getUser,\n getRecordParents\n};\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/application/query/index.js"],"names":["defaultSchemaProps","getSearchPublishedContent","fields","gql","getUser","userProps","getEntitySchema","getSingleEntitySchema","getRecordParents","queryName","getMultipleSchema","identifiers","queryString","map","id","join","getFiles","getFileById","getCount","action","generateQuery","props","generateMultiItemQuery","generateSingleItemQuery","getAction","query","getPublishedContent","entity"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAEA,IAAMA,kBAAkB,kHAAxB;;AAWA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAAAC,MAAM;AAAA,aAAIC,WAAJ,+VAG9BD,MAH8B;AAAA,CAAxC;;;;AAQA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAAAC,SAAS;AAAA,aAAIF,WAAJ,uLAIjBE,SAJiB;AAAA,CAAzB;;;AASA,IAAMC,eAAe,OAAGH,WAAH,uNAGbH,kBAHa,CAArB;;AAQA,IAAMO,qBAAqB,OAAGJ,WAAH,8MAGnBH,kBAHmB,CAA3B;;;AAQA,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,SAAS;AAAA,aAAIN,WAAJ,gQAEfM,SAFe;AAAA,CAAlC;;;;AAcA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,WAAW,EAAI;AACvC,MAAMC,WAAW,GAAGD,WAAW,CAC5BE,GADiB,CAEhB,UAAAC,EAAE;AAAA,qBAAOA,EAAP,qCAAmCA,EAAnC,gCACMd,kBADN;AAAA,GAFc,EAMjBe,IANiB,MAApB;AAOA,aAAOZ,WAAP,0HAEMS,WAFN;AAID,CAZD;;;AAcA,IAAMI,QAAQ,OAAGb,WAAH,0MAAd;;AAUA,IAAMc,WAAW,OAAGd,WAAH,iMAAjB;;;AAUA,IAAMe,QAAQ,GAAG,SAAXA,QAAW,CAAAC,MAAM;AAAA,aAAIhB,WAAJ,2JACjBgB,MADiB;AAAA,CAAvB;;;;AAKA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACD,MAAD,EAASE,KAAT;AAAA,8GAKR,wBAAWF,MAAX,CALQ,8BAMhBA,MANgB,mFAOdE,KAPc;AAAA,CAAtB;;AAaA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACH,MAAD,EAASE,KAAT;AAAA,aAAmBlB,WAAnB,qNAEzBgB,MAFyB,EAGvBE,KAHuB;AAAA,CAA/B;;;;AAUA,IAAME,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACJ,MAAD,EAASE,KAAT;AAAA,aAAmBlB,WAAnB,sNAEdgB,MAFc,EAG1BE,KAH0B;AAAA,CAAhC,C,CAUA;;;;;AACA,IAAMG,SAAS,GAAG,SAAZA,SAAY,CAACL,MAAD,EAASE,KAAT,EAAmB;AACnC,MAAMI,KAAK,GAAGL,aAAa,CAACD,MAAD,EAASE,KAAT,CAA3B;AACA,aAAOlB,WAAP,0GACIsB,KADJ;AAGD,CALD;;;;AAOA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,MAAM;AAAA,4UAcjBA,MAdiB;AAAA,CAAlC","sourcesContent":["import { gql } from '@apollo/client';\nimport upperFirst from 'lodash.upperfirst';\n\nconst defaultSchemaProps = `\n id\n identifier\n properties\n dynamicProperties\n actions\n interfaces\n relations\n __typename\n`;\n\nconst getSearchPublishedContent = fields => gql`\n query searchPublishedContent($rawQueryStringified: String!, $offset: Int, $limit: Int, $sort: String) {\n searchPublishedContent(rawQueryStringified: $rawQueryStringified, offset: $offset, limit: $limit, sort: $sort) {\n ${fields}\n }\n }\n `;\n\nconst getUser = userProps => gql`\n query getUser($id: String!) {\n getUser(id: $id) {\n id\n ${userProps}\n }\n }\n`;\n\nconst getEntitySchema = gql`\n query getEntitySchemas($identifier: String!) {\n getEntitySchemas(identifier: $identifier) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getSingleEntitySchema = gql`\n query getEntitySchema($id: String!) {\n getEntitySchema: getEntitySchema(id: $id) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getRecordParents = queryName => gql`\nquery getRecordParents($id: String!){\n recordParents: ${queryName}(id: $id){\n id,\n name,\n url,\n parents {\n id,\n name\n url\n }\n }\n}`;\n\nconst getMultipleSchema = identifiers => {\n const queryString = identifiers\n .map(\n id => `${id}: getEntitySchema(id: \"${id}\") {\n ${defaultSchemaProps}\n }`\n )\n .join(`\\n`);\n return gql`\n query {\n ${queryString}\n }`;\n};\n\nconst getFiles = gql`\n query getFiles($where: JSON!) {\n getFiles(where: $where) {\n id\n url\n data\n }\n }\n`;\n\nconst getFileById = gql`\n query getFile($id: String!) {\n getFile(id: $id) {\n id\n url\n data\n }\n }\n`;\n\nconst getCount = action => gql`query countData($where: JSON!) {\n ${action} (where: $where)\n }\n`;\n\nconst generateQuery = (action, props) => `\n query getEntityData(\n $where: JSON\n $limit: Int\n $offset: Int\n $sort: [${upperFirst(action)}SortItem]){\n ${action} (where: $where, limit: $limit, offset: $offset, sort: $sort){\n ${props}\n id\n __typename\n }\n }\n `;\nconst generateMultiItemQuery = (action, props) => gql`\n query getEntityData($where: JSON){\n ${action} (where: $where){\n ${props}\n id\n __typename\n }\n }\n `;\n\nconst generateSingleItemQuery = (action, props) => gql`\n query getEntityData($id: String!){\n entityData: ${action}(id: $id){\n ${props},\n id,\n __typename\n }\n }\n `;\n\n// TODO: extend function to handle properties and make them dynamic with a config schema for each entity.\nconst getAction = (action, props) => {\n const query = generateQuery(action, props);\n return gql`\n ${query}\n `;\n};\n\nconst getPublishedContent = entity => `\n query searchPublishedContent(\n $rawQueryStringified: String!\n $offset: Int\n $limit: Int\n $sort: String\n ) {\n searchPublishedContent(\n rawQueryStringified: $rawQueryStringified\n offset: $offset\n limit: $limit\n sort: $sort\n ) {\n results {\n ... on ${entity} {\n id\n name\n url\n __typename\n }\n __typename\n }\n total\n __typename\n }\n }\n`;\n\nexport {\n getEntitySchema,\n getSingleEntitySchema,\n getAction,\n getFiles,\n getFileById,\n generateMultiItemQuery,\n generateSingleItemQuery,\n getPublishedContent,\n getSearchPublishedContent,\n getCount,\n getMultipleSchema,\n getUser,\n getRecordParents\n};\n"],"file":"index.js"}
@@ -247,6 +247,7 @@ var CardRender = function CardRender(_ref) {
247
247
  var cardData = data[_constants.SEARCH_PUBLISHED_CONTENT].results;
248
248
  if (!cardData || !cardData.length) return null;
249
249
  cardData = entitySameAsCurrentItemEntity ? (0, _helpers.removeExtraItems)(cardData, limit, itemId) : cardData;
250
+ if (!cardData.length) return null;
250
251
  var orderedData = useRandomSort ? cardData : (0, _helpers.sortResponseData)(cardData, itemsToDisplay);
251
252
 
252
253
  var _splitChildren = (0, _helpers.splitChildren)(children, cardData, entity, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","MainContext","isPreview","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","AND","useRandomSort","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","_loading","loading","_error","error","schemas","Object","values","currentSchema","find","identifier","filterEntitySchema","id","entityType","docType","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","variables","skip","entityData","_err","_load","requiredSchema","schemaLoading","schemaError","updatedFilterBy","getEntitySchemas","limit","fetchPolicy","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","cardData","SEARCH_PUBLISHED_CONTENT","results","orderedData","name","regularChildren","gtmChildren","updatedCards","propTypes","PropTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const schemas = Object.values(mainSchemas);\n const currentSchema = schemas.find(({ identifier }) => identifier === itemEntityUpdated) || {};\n const filterEntitySchema = schemas.find(({ id }) => entity === id) || {};\n const { entityType, docType } = getEntityData(entity, filterEntitySchema);\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n currentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n if (!cardData || !cardData.length) return null;\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n const orderedData = useRandomSort ? cardData : sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
1
+ {"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","MainContext","isPreview","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","AND","useRandomSort","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","_loading","loading","_error","error","schemas","Object","values","currentSchema","find","identifier","filterEntitySchema","id","entityType","docType","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","variables","skip","entityData","_err","_load","requiredSchema","schemaLoading","schemaError","updatedFilterBy","getEntitySchemas","limit","fetchPolicy","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","cardData","SEARCH_PUBLISHED_CONTENT","results","orderedData","name","regularChildren","gtmChildren","updatedCards","propTypes","PropTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const schemas = Object.values(mainSchemas);\n const currentSchema = schemas.find(({ identifier }) => identifier === itemEntityUpdated) || {};\n const filterEntitySchema = schemas.find(({ id }) => entity === id) || {};\n const { entityType, docType } = getEntityData(entity, filterEntitySchema);\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n currentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n\n if (!cardData || !cardData.length) return null;\n\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n if (!cardData.length) return null;\n\n const orderedData = useRandomSort ? cardData : sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
@@ -31,6 +31,8 @@ var _getLinkToPublishedContent = _interopRequireDefault(require("./get-link-to-p
31
31
 
32
32
  var _getPropValue = _interopRequireDefault(require("./get-prop-value"));
33
33
 
34
+ var _getLinkBasedOnValue = _interopRequireDefault(require("./get-link-based-on-value"));
35
+
34
36
  var buildPropsToDisplayWithContent = function buildPropsToDisplayWithContent(props) {
35
37
  var propsToDisplay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
36
38
 
@@ -48,17 +50,32 @@ var buildPropsToDisplayWithContent = function buildPropsToDisplayWithContent(pro
48
50
  var propertiesToDisplay = options.propertiesToDisplay,
49
51
  label = options.label,
50
52
  _options$modifier = options.modifier,
51
- modifier = _options$modifier === void 0 ? '' : _options$modifier;
53
+ modifier = _options$modifier === void 0 ? '' : _options$modifier,
54
+ enableLink = options.enableLink;
52
55
  return propertiesToDisplay.map(function (key) {
53
56
  if (!key) return null;
54
57
  var objPropValue = (0, _getPropValue["default"])(key, props, options);
55
58
  if (!objPropValue) return null;
56
- var linkToPublishedContent = (0, _getLinkToPublishedContent["default"])(key, props);
57
- return [(0, _lodash["default"])(label), objPropValue, linkToPublishedContent, modifier];
59
+ var link = getLink(enableLink, key, props, objPropValue);
60
+ return [(0, _lodash["default"])(label), objPropValue, link, modifier];
58
61
  });
59
62
  })).filter(Boolean);
60
63
  };
61
64
 
62
65
  var _default = buildPropsToDisplayWithContent;
63
66
  exports["default"] = _default;
67
+
68
+ function getLink(enableLink, key, props, objPropValue) {
69
+ var link = '';
70
+
71
+ if (enableLink) {
72
+ link = (0, _getLinkToPublishedContent["default"])(key, props);
73
+
74
+ if (!link) {
75
+ link = (0, _getLinkBasedOnValue["default"])(objPropValue);
76
+ }
77
+ }
78
+
79
+ return link;
80
+ }
64
81
  //# sourceMappingURL=build-props-to-display-with-content.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DataSummary/helpers/build-props-to-display-with-content.js"],"names":["buildPropsToDisplayWithContent","props","propsToDisplay","map","key","propValue","propName","split","join","filter","Boolean","options","propertiesToDisplay","label","modifier","objPropValue","linkToPublishedContent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,8BAA8B,GAAG,SAAjCA,8BAAiC,CAACC,KAAD,EAAgC;AAAA,MAAxBC,cAAwB,uEAAP,EAAO;;AACrE,MAAI,CAAC,uBAASA,cAAc,CAAC,CAAD,CAAvB,CAAL,EAAkC;AAChC,WAAOA,cAAc,CAClBC,GADI,CACA,UAAAC,GAAG,EAAI;AACV,UAAI,CAACA,GAAL,EAAU,OAAO,IAAP;AACV,UAAMC,SAAS,GAAG,8BAAaD,GAAb,EAAkBH,KAAlB,CAAlB;AACA,UAAI,CAACI,SAAL,EAAgB,OAAO,IAAP;AAChB,UAAMC,QAAQ,GAAGF,GAAG,CAACG,KAAJ,CAAU,GAAV,EAAeC,IAAf,CAAoB,GAApB,CAAjB;AACA,aAAO,CAAC,wBAAWF,QAAX,CAAD,EAAuBD,SAAvB,EAAkC,EAAlC,EAAsC,EAAtC,CAAP;AACD,KAPI,EAQJI,MARI,CAQGC,OARH,CAAP;AASD;;AAED,SAAO,yBACLR,cAAc,CAACC,GAAf,CAAmB,UAAAQ,OAAO,EAAI;AAC5B,QAAQC,mBAAR,GAAsDD,OAAtD,CAAQC,mBAAR;AAAA,QAA6BC,KAA7B,GAAsDF,OAAtD,CAA6BE,KAA7B;AAAA,4BAAsDF,OAAtD,CAAoCG,QAApC;AAAA,QAAoCA,QAApC,kCAA+C,EAA/C;AACA,WAAOF,mBAAmB,CAACT,GAApB,CAAwB,UAAAC,GAAG,EAAI;AACpC,UAAI,CAACA,GAAL,EAAU,OAAO,IAAP;AAEV,UAAMW,YAAY,GAAG,8BAAaX,GAAb,EAAkBH,KAAlB,EAAyBU,OAAzB,CAArB;AACA,UAAI,CAACI,YAAL,EAAmB,OAAO,IAAP;AACnB,UAAMC,sBAAsB,GAAG,2CAA0BZ,GAA1B,EAA+BH,KAA/B,CAA/B;AAEA,aAAO,CAAC,wBAAWY,KAAX,CAAD,EAAoBE,YAApB,EAAkCC,sBAAlC,EAA0DF,QAA1D,CAAP;AACD,KARM,CAAP;AASD,GAXD,CADK,EAaLL,MAbK,CAaEC,OAbF,CAAP;AAcD,CA3BD;;eA6BeV,8B","sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport flatten from 'lodash.flatten';\nimport { isObject } from '../../../helpers';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport getPropValue from './get-prop-value';\n\nconst buildPropsToDisplayWithContent = (props, propsToDisplay = []) => {\n if (!isObject(propsToDisplay[0])) {\n return propsToDisplay\n .map(key => {\n if (!key) return null;\n const propValue = getPropValue(key, props);\n if (!propValue) return null;\n const propName = key.split('.').join(' ');\n return [upperFirst(propName), propValue, '', ''];\n })\n .filter(Boolean);\n }\n\n return flatten(\n propsToDisplay.map(options => {\n const { propertiesToDisplay, label, modifier = '' } = options;\n return propertiesToDisplay.map(key => {\n if (!key) return null;\n\n const objPropValue = getPropValue(key, props, options);\n if (!objPropValue) return null;\n const linkToPublishedContent = getLinkToPublishedContent(key, props);\n\n return [upperFirst(label), objPropValue, linkToPublishedContent, modifier];\n });\n })\n ).filter(Boolean);\n};\n\nexport default buildPropsToDisplayWithContent;\n"],"file":"build-props-to-display-with-content.js"}
1
+ {"version":3,"sources":["../../../../src/components/DataSummary/helpers/build-props-to-display-with-content.js"],"names":["buildPropsToDisplayWithContent","props","propsToDisplay","map","key","propValue","propName","split","join","filter","Boolean","options","propertiesToDisplay","label","modifier","enableLink","objPropValue","link","getLink"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,8BAA8B,GAAG,SAAjCA,8BAAiC,CAACC,KAAD,EAAgC;AAAA,MAAxBC,cAAwB,uEAAP,EAAO;;AACrE,MAAI,CAAC,uBAASA,cAAc,CAAC,CAAD,CAAvB,CAAL,EAAkC;AAChC,WAAOA,cAAc,CAClBC,GADI,CACA,UAAAC,GAAG,EAAI;AACV,UAAI,CAACA,GAAL,EAAU,OAAO,IAAP;AACV,UAAMC,SAAS,GAAG,8BAAaD,GAAb,EAAkBH,KAAlB,CAAlB;AACA,UAAI,CAACI,SAAL,EAAgB,OAAO,IAAP;AAChB,UAAMC,QAAQ,GAAGF,GAAG,CAACG,KAAJ,CAAU,GAAV,EAAeC,IAAf,CAAoB,GAApB,CAAjB;AACA,aAAO,CAAC,wBAAWF,QAAX,CAAD,EAAuBD,SAAvB,EAAkC,EAAlC,EAAsC,EAAtC,CAAP;AACD,KAPI,EAQJI,MARI,CAQGC,OARH,CAAP;AASD;;AAED,SAAO,yBACLR,cAAc,CAACC,GAAf,CAAmB,UAAAQ,OAAO,EAAI;AAC5B,QAAQC,mBAAR,GAAkED,OAAlE,CAAQC,mBAAR;AAAA,QAA6BC,KAA7B,GAAkEF,OAAlE,CAA6BE,KAA7B;AAAA,4BAAkEF,OAAlE,CAAoCG,QAApC;AAAA,QAAoCA,QAApC,kCAA+C,EAA/C;AAAA,QAAmDC,UAAnD,GAAkEJ,OAAlE,CAAmDI,UAAnD;AACA,WAAOH,mBAAmB,CAACT,GAApB,CAAwB,UAAAC,GAAG,EAAI;AACpC,UAAI,CAACA,GAAL,EAAU,OAAO,IAAP;AAEV,UAAMY,YAAY,GAAG,8BAAaZ,GAAb,EAAkBH,KAAlB,EAAyBU,OAAzB,CAArB;AACA,UAAI,CAACK,YAAL,EAAmB,OAAO,IAAP;AAEnB,UAAMC,IAAI,GAAGC,OAAO,CAACH,UAAD,EAAaX,GAAb,EAAkBH,KAAlB,EAAyBe,YAAzB,CAApB;AAEA,aAAO,CAAC,wBAAWH,KAAX,CAAD,EAAoBG,YAApB,EAAkCC,IAAlC,EAAwCH,QAAxC,CAAP;AACD,KATM,CAAP;AAUD,GAZD,CADK,EAcLL,MAdK,CAcEC,OAdF,CAAP;AAeD,CA5BD;;eA8BeV,8B;;;AACf,SAASkB,OAAT,CAAiBH,UAAjB,EAA6BX,GAA7B,EAAkCH,KAAlC,EAAyCe,YAAzC,EAAuD;AACrD,MAAIC,IAAI,GAAG,EAAX;;AACA,MAAIF,UAAJ,EAAgB;AACdE,IAAAA,IAAI,GAAG,2CAA0Bb,GAA1B,EAA+BH,KAA/B,CAAP;;AACA,QAAI,CAACgB,IAAL,EAAW;AACTA,MAAAA,IAAI,GAAG,qCAAoBD,YAApB,CAAP;AACD;AACF;;AACD,SAAOC,IAAP;AACD","sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport flatten from 'lodash.flatten';\nimport { isObject } from '../../../helpers';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport getPropValue from './get-prop-value';\nimport getLinkBasedOnValue from './get-link-based-on-value';\n\nconst buildPropsToDisplayWithContent = (props, propsToDisplay = []) => {\n if (!isObject(propsToDisplay[0])) {\n return propsToDisplay\n .map(key => {\n if (!key) return null;\n const propValue = getPropValue(key, props);\n if (!propValue) return null;\n const propName = key.split('.').join(' ');\n return [upperFirst(propName), propValue, '', ''];\n })\n .filter(Boolean);\n }\n\n return flatten(\n propsToDisplay.map(options => {\n const { propertiesToDisplay, label, modifier = '', enableLink } = options;\n return propertiesToDisplay.map(key => {\n if (!key) return null;\n\n const objPropValue = getPropValue(key, props, options);\n if (!objPropValue) return null;\n\n const link = getLink(enableLink, key, props, objPropValue);\n\n return [upperFirst(label), objPropValue, link, modifier];\n });\n })\n ).filter(Boolean);\n};\n\nexport default buildPropsToDisplayWithContent;\nfunction getLink(enableLink, key, props, objPropValue) {\n let link = '';\n if (enableLink) {\n link = getLinkToPublishedContent(key, props);\n if (!link) {\n link = getLinkBasedOnValue(objPropValue);\n }\n }\n return link;\n}\n"],"file":"build-props-to-display-with-content.js"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ require("core-js/modules/es.regexp.exec.js");
11
+
12
+ var _constants = require("../../../constants");
13
+
14
+ function getLinkBasedOnValue(value) {
15
+ if (_constants.DATA_SUMMARY_EMAIL_REGEX.test(value)) {
16
+ return "mailto:".concat(value);
17
+ }
18
+
19
+ if (_constants.DATA_SUMMARY_URL_REGEX.test(value)) {
20
+ return value;
21
+ }
22
+
23
+ return '';
24
+ }
25
+
26
+ var _default = getLinkBasedOnValue;
27
+ exports["default"] = _default;
28
+ //# sourceMappingURL=get-link-based-on-value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/DataSummary/helpers/get-link-based-on-value.js"],"names":["getLinkBasedOnValue","value","DATA_SUMMARY_EMAIL_REGEX","test","DATA_SUMMARY_URL_REGEX"],"mappings":";;;;;;;;;;;AAAA;;AAEA,SAASA,mBAAT,CAA6BC,KAA7B,EAAoC;AAClC,MAAIC,oCAAyBC,IAAzB,CAA8BF,KAA9B,CAAJ,EAA0C;AACxC,4BAAiBA,KAAjB;AACD;;AACD,MAAIG,kCAAuBD,IAAvB,CAA4BF,KAA5B,CAAJ,EAAwC;AACtC,WAAOA,KAAP;AACD;;AAED,SAAO,EAAP;AACD;;eAEcD,mB","sourcesContent":["import { DATA_SUMMARY_EMAIL_REGEX, DATA_SUMMARY_URL_REGEX } from '../../../constants';\n\nfunction getLinkBasedOnValue(value) {\n if (DATA_SUMMARY_EMAIL_REGEX.test(value)) {\n return `mailto:${value}`;\n }\n if (DATA_SUMMARY_URL_REGEX.test(value)) {\n return value;\n }\n\n return '';\n}\n\nexport default getLinkBasedOnValue;\n"],"file":"get-link-based-on-value.js"}
@@ -25,6 +25,12 @@ Object.defineProperty(exports, "getDataSummaryQuery", {
25
25
  return _getDataSummaryQuery["default"];
26
26
  }
27
27
  });
28
+ Object.defineProperty(exports, "getLinkBasedOnValue", {
29
+ enumerable: true,
30
+ get: function get() {
31
+ return _getLinkBasedOnValue["default"];
32
+ }
33
+ });
28
34
  Object.defineProperty(exports, "getLinkToPublishedContent", {
29
35
  enumerable: true,
30
36
  get: function get() {
@@ -55,4 +61,6 @@ var _stripSummaryPropsContent = _interopRequireDefault(require("./strip-summary-
55
61
  var _buildLoopPropsContent = _interopRequireDefault(require("./build-loop-props-content"));
56
62
 
57
63
  var _parseBooleanValues = _interopRequireDefault(require("./parse-boolean-values"));
64
+
65
+ var _getLinkBasedOnValue = _interopRequireDefault(require("./get-link-based-on-value"));
58
66
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DataSummary/helpers/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import getDataSummaryQuery from './get-data-summary-query';\nimport buildPropsToDisplayWithContent from './build-props-to-display-with-content';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport stripSummaryPropsContent from './strip-summary-props-content';\nimport buildLoopPropsContent from './build-loop-props-content';\nimport parseBooleanValues from './parse-boolean-values';\n\nexport {\n getDataSummaryQuery,\n buildPropsToDisplayWithContent,\n getLinkToPublishedContent,\n stripSummaryPropsContent,\n buildLoopPropsContent,\n parseBooleanValues\n};\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/components/DataSummary/helpers/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import getDataSummaryQuery from './get-data-summary-query';\nimport buildPropsToDisplayWithContent from './build-props-to-display-with-content';\nimport getLinkToPublishedContent from './get-link-to-published-content';\nimport stripSummaryPropsContent from './strip-summary-props-content';\nimport buildLoopPropsContent from './build-loop-props-content';\nimport parseBooleanValues from './parse-boolean-values';\nimport getLinkBasedOnValue from './get-link-based-on-value';\n\nexport {\n getDataSummaryQuery,\n buildPropsToDisplayWithContent,\n getLinkToPublishedContent,\n stripSummaryPropsContent,\n buildLoopPropsContent,\n parseBooleanValues,\n getLinkBasedOnValue\n};\n"],"file":"index.js"}
@@ -41,7 +41,9 @@ var _hooks = require("../../hooks");
41
41
 
42
42
  var _constants = require("../../constants");
43
43
 
44
- var _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "closeIconModifier"];
44
+ var _SearchContent = _interopRequireDefault(require("../SearchContent"));
45
+
46
+ var _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "searchInputAlignment", "logoOnMobile", "logoOnDesktop", "logoOnMobileUrl", "logoOnMobileAlt", "logoOnMobileModifier", "logoOnDesktopModifier", "closeIconModifier", "entity"];
45
47
 
46
48
  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); }
47
49
 
@@ -56,7 +58,15 @@ var Menu = function Menu(_ref) {
56
58
  mobileIconAlignment = _ref.mobileIconAlignment,
57
59
  mobileButtonModifier = _ref.mobileButtonModifier,
58
60
  hamburgerIconModifier = _ref.hamburgerIconModifier,
61
+ searchInputAlignment = _ref.searchInputAlignment,
62
+ logoOnMobile = _ref.logoOnMobile,
63
+ logoOnDesktop = _ref.logoOnDesktop,
64
+ logoOnMobileUrl = _ref.logoOnMobileUrl,
65
+ logoOnMobileAlt = _ref.logoOnMobileAlt,
66
+ logoOnMobileModifier = _ref.logoOnMobileModifier,
67
+ logoOnDesktopModifier = _ref.logoOnDesktopModifier,
59
68
  closeIconModifier = _ref.closeIconModifier,
69
+ entity = _ref.entity,
60
70
  rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
61
71
  var isMobile = (0, _hooks.useCheckMobileScreen)();
62
72
 
@@ -72,7 +82,7 @@ var Menu = function Menu(_ref) {
72
82
  var childrenMobileModifier = shouldDisplayChildren && isMobile ? "".concat(mobileMenuChildrenModifier) : " ".concat(_constants.HIDDEN);
73
83
  var isMobileMenuExpanded = showMobileMenu ? "".concat(mobileMenuModifier) : '';
74
84
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, collapse && /*#__PURE__*/_react["default"].createElement("div", {
75
- className: "top-0 absolute z-50"
85
+ className: "menu--mobile-wrapper"
76
86
  }, /*#__PURE__*/_react["default"].createElement("div", {
77
87
  className: "flex w-screen z-50 justify-".concat(mobileIconAlignment, " ").concat(isMobileMenuExpanded)
78
88
  }, /*#__PURE__*/_react["default"].createElement(_button["default"], {
@@ -84,13 +94,37 @@ var Menu = function Menu(_ref) {
84
94
  className: closeIconModifier
85
95
  }) : /*#__PURE__*/_react["default"].createElement(_md.MdMenu, {
86
96
  className: hamburgerIconModifier
87
- }))))), /*#__PURE__*/_react["default"].createElement("ul", {
97
+ }))), showMobileMenu && /*#__PURE__*/_react["default"].createElement(_SearchContent["default"], {
98
+ searchInputAlignment: searchInputAlignment,
99
+ entity: entity
100
+ }))), logoOnMobile && !showMobileMenu && /*#__PURE__*/_react["default"].createElement("a", {
101
+ href: "/"
102
+ }, /*#__PURE__*/_react["default"].createElement("img", {
103
+ src: logoOnMobileUrl,
104
+ alt: logoOnMobileAlt,
105
+ className: logoOnMobileModifier
106
+ })), /*#__PURE__*/_react["default"].createElement("div", {
107
+ className: "menu--desktop-wrapper"
108
+ }, /*#__PURE__*/_react["default"].createElement("ul", {
88
109
  className: isMobile ? childrenMobileModifier : childrenDesktopModifier
89
- }, children));
110
+ }, logoOnDesktop && /*#__PURE__*/_react["default"].createElement("a", {
111
+ href: "/",
112
+ className: ""
113
+ }, /*#__PURE__*/_react["default"].createElement("img", {
114
+ src: logoOnMobileUrl,
115
+ alt: logoOnMobileAlt,
116
+ className: logoOnDesktopModifier
117
+ })), children)));
90
118
  };
91
119
 
92
120
  Menu.propTypes = {
93
121
  collapse: _propTypes["default"].bool.isRequired,
122
+ logoOnMobile: _propTypes["default"].bool.isRequired,
123
+ logoOnDesktop: _propTypes["default"].bool.isRequired,
124
+ logoOnMobileUrl: _propTypes["default"].string,
125
+ logoOnMobileAlt: _propTypes["default"].string,
126
+ logoOnMobileModifier: _propTypes["default"].string,
127
+ logoOnDesktopModifier: _propTypes["default"].string,
94
128
  hamburgerIconModifier: _propTypes["default"].string,
95
129
  closeIconModifier: _propTypes["default"].string,
96
130
  mobileButtonModifier: _propTypes["default"].string,
@@ -98,16 +132,24 @@ Menu.propTypes = {
98
132
  mobileMenuChildrenModifier: _propTypes["default"].string,
99
133
  modifier: _propTypes["default"].string,
100
134
  mobileIconAlignment: _propTypes["default"].string,
135
+ searchInputAlignment: _propTypes["default"].string,
136
+ entity: _propTypes["default"].string,
101
137
  children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node])
102
138
  };
103
139
  Menu.defaultProps = {
140
+ logoOnMobileUrl: '',
141
+ logoOnMobileAlt: '',
142
+ logoOnMobileModifier: '',
143
+ logoOnDesktopModifier: '',
104
144
  hamburgerIconModifier: '',
105
145
  closeIconModifier: '',
106
146
  mobileButtonModifier: '',
107
147
  mobileIconAlignment: '',
108
148
  mobileMenuModifier: '',
109
149
  mobileMenuChildrenModifier: '',
150
+ searchInputAlignment: '',
110
151
  modifier: '',
152
+ entity: 'PublishedPage',
111
153
  children: []
112
154
  };
113
155
  var _default = Menu;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","closeIconModifier","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","HIDDEN","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","PropTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n closeIconModifier,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"top-0 absolute z-50\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n </div>\n </div>\n )}\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>{children}</ul>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n modifier: '',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}
1
+ {"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","searchInputAlignment","logoOnMobile","logoOnDesktop","logoOnMobileUrl","logoOnMobileAlt","logoOnMobileModifier","logoOnDesktopModifier","closeIconModifier","entity","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","HIDDEN","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","PropTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\nimport SearchContent from '../SearchContent';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n searchInputAlignment,\n logoOnMobile,\n logoOnDesktop,\n logoOnMobileUrl,\n logoOnMobileAlt,\n logoOnMobileModifier,\n logoOnDesktopModifier,\n closeIconModifier,\n entity,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"menu--mobile-wrapper\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n {showMobileMenu && (\n <SearchContent searchInputAlignment={searchInputAlignment} entity={entity} />\n )}\n </div>\n </div>\n )}\n {logoOnMobile &&\n !showMobileMenu && (\n <a href=\"/\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnMobileModifier} />\n </a>\n )}\n\n <div className=\"menu--desktop-wrapper\">\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>\n {logoOnDesktop && (\n <a href=\"/\" className=\"\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnDesktopModifier} />\n </a>\n )}\n {children}\n </ul>\n </div>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n logoOnMobile: PropTypes.bool.isRequired,\n logoOnDesktop: PropTypes.bool.isRequired,\n logoOnMobileUrl: PropTypes.string,\n logoOnMobileAlt: PropTypes.string,\n logoOnMobileModifier: PropTypes.string,\n logoOnDesktopModifier: PropTypes.string,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n searchInputAlignment: PropTypes.string,\n entity: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n logoOnMobileUrl: '',\n logoOnMobileAlt: '',\n logoOnMobileModifier: '',\n logoOnDesktopModifier: '',\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n searchInputAlignment: '',\n modifier: '',\n entity: 'PublishedPage',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}