@blaze-cms/react-page-builder 0.119.1 → 0.120.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/lib/components/Banner/Banner.js +26 -3
  3. package/lib/components/Banner/Banner.js.map +1 -1
  4. package/lib/components/Banner/BannerRender.js +7 -4
  5. package/lib/components/Banner/BannerRender.js.map +1 -1
  6. package/lib/components/Banner/helpers.js +81 -21
  7. package/lib/components/Banner/helpers.js.map +1 -1
  8. package/lib/components/BlazeLink.js +1 -0
  9. package/lib/components/BlazeLink.js.map +1 -1
  10. package/lib/components/Card/Card.js +1 -1
  11. package/lib/components/Card/Card.js.map +1 -1
  12. package/lib/components/Card/CardContainer.js +6 -2
  13. package/lib/components/Card/CardContainer.js.map +1 -1
  14. package/lib/components/Card/CardRender.js +27 -12
  15. package/lib/components/Card/CardRender.js.map +1 -1
  16. package/lib/components/Card/helpers/filter-query-setup.js +7 -3
  17. package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
  18. package/lib/components/Card/helpers/filters-setup.js +5 -16
  19. package/lib/components/Card/helpers/filters-setup.js.map +1 -1
  20. package/lib/components/List/ListBuilder.js +3 -3
  21. package/lib/components/List/ListBuilder.js.map +1 -1
  22. package/lib/helpers/build-props-query.js +15 -7
  23. package/lib/helpers/build-props-query.js.map +1 -1
  24. package/lib/helpers/get-entity-data.js +27 -5
  25. package/lib/helpers/get-entity-data.js.map +1 -1
  26. package/lib/helpers/get-generic-render-variables.js +29 -7
  27. package/lib/helpers/get-generic-render-variables.js.map +1 -1
  28. package/lib-es/components/Banner/Banner.js +24 -4
  29. package/lib-es/components/Banner/Banner.js.map +1 -1
  30. package/lib-es/components/Banner/BannerRender.js +8 -5
  31. package/lib-es/components/Banner/BannerRender.js.map +1 -1
  32. package/lib-es/components/Banner/helpers.js +53 -12
  33. package/lib-es/components/Banner/helpers.js.map +1 -1
  34. package/lib-es/components/BlazeLink.js +1 -0
  35. package/lib-es/components/BlazeLink.js.map +1 -1
  36. package/lib-es/components/Card/Card.js +1 -1
  37. package/lib-es/components/Card/Card.js.map +1 -1
  38. package/lib-es/components/Card/CardContainer.js +6 -2
  39. package/lib-es/components/Card/CardContainer.js.map +1 -1
  40. package/lib-es/components/Card/CardRender.js +19 -10
  41. package/lib-es/components/Card/CardRender.js.map +1 -1
  42. package/lib-es/components/Card/helpers/filter-query-setup.js +7 -3
  43. package/lib-es/components/Card/helpers/filter-query-setup.js.map +1 -1
  44. package/lib-es/components/Card/helpers/filters-setup.js +2 -7
  45. package/lib-es/components/Card/helpers/filters-setup.js.map +1 -1
  46. package/lib-es/components/List/ListBuilder.js +3 -3
  47. package/lib-es/components/List/ListBuilder.js.map +1 -1
  48. package/lib-es/helpers/build-props-query.js +11 -8
  49. package/lib-es/helpers/build-props-query.js.map +1 -1
  50. package/lib-es/helpers/get-entity-data.js +23 -5
  51. package/lib-es/helpers/get-entity-data.js.map +1 -1
  52. package/lib-es/helpers/get-generic-render-variables.js +28 -7
  53. package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
  54. package/package.json +2 -2
  55. package/src/components/Banner/Banner.js +13 -4
  56. package/src/components/Banner/BannerRender.js +6 -4
  57. package/src/components/Banner/helpers.js +58 -9
  58. package/src/components/BlazeLink.js +1 -0
  59. package/src/components/Card/Card.js +3 -5
  60. package/src/components/Card/CardContainer.js +6 -2
  61. package/src/components/Card/CardRender.js +15 -9
  62. package/src/components/Card/helpers/filter-query-setup.js +9 -3
  63. package/src/components/Card/helpers/filters-setup.js +2 -5
  64. package/src/components/List/ListBuilder.js +3 -3
  65. package/src/helpers/build-props-query.js +7 -10
  66. package/src/helpers/get-entity-data.js +12 -4
  67. package/src/helpers/get-generic-render-variables.js +30 -6
  68. package/tests/unit/src/components/Banner/helpers.test.js +2 -26
  69. package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRender.test.js.snap +18 -6
  70. package/tests/unit/src/helpers/build-props-query.test.js +28 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Card/CardContainer.js"],"names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","autoScrollTimer","cardProps","entities","MainContext","itemId","propsToDisplayModifiers","dynamicWrapperSizes","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAqBhB;AAAA,MApBJC,QAoBI,QApBJA,QAoBI;AAAA,MAnBJC,YAmBI,QAnBJA,YAmBI;AAAA,MAlBJC,KAkBI,QAlBJA,KAkBI;AAAA,MAjBJC,eAiBI,QAjBJA,eAiBI;AAAA,MAhBJC,gBAgBI,QAhBJA,gBAgBI;AAAA,MAfJC,YAeI,QAfJA,YAeI;AAAA,MAdJC,QAcI,QAdJA,QAcI;AAAA,MAbJC,MAaI,QAbJA,MAaI;AAAA,MAZJC,cAYI,QAZJA,cAYI;AAAA,MAXJC,WAWI,QAXJA,WAWI;AAAA,MAVJC,YAUI,QAVJA,YAUI;AAAA,MATJC,IASI,QATJA,IASI;AAAA,MARJC,YAQI,QARJA,YAQI;AAAA,MAPJC,WAOI,QAPJA,WAOI;AAAA,MANJC,cAMI,QANJA,cAMI;AAAA,MALJC,cAKI,QALJA,cAKI;AAAA,MAJJC,aAII,QAJJA,aAII;AAAA,MAHJC,gBAGI,QAHJA,gBAGI;AAAA,MAFJC,eAEI,QAFJA,eAEI;AAAA,MADDC,SACC;AACJ,MAAMC,QAAQ,GAAG,qCAAsBpB,QAAtB,EAAgCmB,SAAhC,CAAjB;;AACA,oBAAmB,uBAAWE,6BAAX,CAAnB;AAAA,MAAQC,MAAR,eAAQA,MAAR;;AACA,MAAMC,uBAAuB,GAAG,uCAA2Bf,cAA3B,CAAhC;AACA,MAAMgB,mBAAmB,GAAGV,cAAc,GACtC,EADsC,GAEtC,oCAAsB,MAAtB,EAA8BD,WAA9B,EAA2CD,YAA3C,CAFJ;AAGA,MAAIa,eAAe,GAAG,CAAtB;AACA,MAAMC,WAAW,GAAGZ,cAAc,GAAGa,2BAAH,GAAqBC,mBAAvD;AAEA,sBACE,gCAAC,WAAD;AACE,IAAA,SAAS,EAAEJ,mBADb;AAEE,IAAA,SAAS,EAAEvB,YAFb;AAGE,IAAA,WAAW,EAAEY,WAHf;AAIE,IAAA,cAAc,EAAEE,cAJlB;AAKE,IAAA,gBAAgB,EAAEE,gBALpB;AAME,IAAA,eAAe,EAAEC;AANnB,KAOGE,QAAQ,CAACS,GAAT,CAAa,iBAAqCC,KAArC,EAA+C;AAAA,QAA5CC,UAA4C,SAA5CA,UAA4C;AAAA,QAAhCC,EAAgC,SAAhCA,EAAgC;AAAA,QAAzBC,WAAyB;AAC3D,QAAMC,UAAU,GAAG,mCAAoBD,WAApB,EAAiCzB,cAAjC,CAAnB;AACA,QAAM2B,UAAU,GAAG,CAACb,MAAD,EAASQ,KAAT,EAAgBM,IAAhB,CAAqB,GAArB,CAAnB;AACA,QAAIL,UAAJ,EAAgBN,eAAe,IAAI,CAAnB;AAEhB,QAAMY,QAAQ,GAAGrB,aAAa,GAAG,CAAhB,IAAqBc,KAAK,GAAG,CAAR,IAAad,aAAnD;AAEA,WAAOe,UAAU,gBACf,gCAAC,kBAAD;AACE,MAAA,GAAG,EAAEI,UADP;AAEE,MAAA,MAAM,EAAE5B,MAFV;AAGE,MAAA,UAAU,EAAEwB;AAHd,OAIME,WAJN;AAKE,MAAA,QAAQ,EAAE3B,QALZ;AAME,MAAA,eAAe,EAAEmB;AANnB,OADe,gBAUf,gCAAC,gBAAD;AACE,MAAA,GAAG,EAAEO,EADP;AAEE,MAAA,EAAE,EAAEA,EAFN;AAGE,MAAA,cAAc,EAAElB,cAHlB;AAIE,MAAA,MAAM,EAAEP,MAJV;AAKE,MAAA,cAAc,EAAE2B,UALlB;AAME,MAAA,uBAAuB,EAAEX,uBAN3B;AAOE,MAAA,QAAQ,EAAEjB,QAPZ;AAQE,MAAA,KAAK,EAAEJ,KART;AASE,MAAA,YAAY,EAAEQ,YAThB;AAUE,MAAA,WAAW,EAAED,WAVf;AAWE,MAAA,KAAK,EAAEE,IAXT;AAYE,MAAA,YAAY,EAAEV,YAZhB;AAaE,MAAA,WAAW,EAAEgC,WAbf;AAcE,MAAA,eAAe,EAAE9B,eAdnB;AAeE,MAAA,gBAAgB,EAAEC,gBAfpB;AAgBE,MAAA,YAAY,EAAEC,YAhBhB;AAiBE,MAAA,QAAQ,EAAEgC;AAjBZ,OAkBMJ,WAlBN,EAVF;AA+BD,GAtCA,CAPH,CADF;AAiDD,CAhFD;;AAkFAlC,aAAa,CAACuC,SAAd,GAA0B;AACxBtC,EAAAA,QAAQ,EAAEuC,sBAAUC,KAAV,CAAgBC,UADF;AAExB9B,EAAAA,IAAI,EAAE4B,sBAAUG,MAFQ;AAGxBnC,EAAAA,MAAM,EAAEgC,sBAAUG,MAAV,CAAiBD,UAHD;AAIxBxC,EAAAA,YAAY,EAAEsC,sBAAUG,MAJA;AAKxBjC,EAAAA,WAAW,EAAE8B,sBAAUI,SAAV,CAAoB,CAACJ,sBAAUK,OAAV,CAAkBL,sBAAUM,IAA5B,CAAD,EAAoCN,sBAAUM,IAA9C,CAApB,CALW;AAMxBnC,EAAAA,YAAY,EAAE6B,sBAAUI,SAAV,CAAoB,CAACJ,sBAAUK,OAAV,CAAkBL,sBAAUM,IAA5B,CAAD,EAAoCN,sBAAUM,IAA9C,CAApB,CANU;AAOxBrC,EAAAA,cAAc,EAAE+B,sBAAUC,KAPF;AAQxBrC,EAAAA,eAAe,EAAEoC,sBAAUO,IARH;AASxB1C,EAAAA,gBAAgB,EAAEmC,sBAAUO,IATJ;AAUxBzC,EAAAA,YAAY,EAAEkC,sBAAUO,IAVA;AAWxBxC,EAAAA,QAAQ,EAAEiC,sBAAUG,MAXI;AAYxBxC,EAAAA,KAAK,EAAEqC,sBAAUG,MAZO;AAaxB9B,EAAAA,YAAY,EAAE2B,sBAAUQ,MAbA;AAcxBlC,EAAAA,WAAW,EAAE0B,sBAAUS,MAdC;AAexBlC,EAAAA,cAAc,EAAEyB,sBAAUO,IAfF;AAgBxB/B,EAAAA,cAAc,EAAEwB,sBAAUG,MAhBF;AAiBxB1B,EAAAA,aAAa,EAAEuB,sBAAUS;AAjBD,CAA1B;AAoBAjD,aAAa,CAACkD,YAAd,GAA6B;AAC3BxC,EAAAA,WAAW,EAAE,EADc;AAE3BC,EAAAA,YAAY,EAAE,EAFa;AAG3BC,EAAAA,IAAI,EAAE,EAHqB;AAI3BV,EAAAA,YAAY,EAAE,EAJa;AAK3BO,EAAAA,cAAc,EAAE,EALW;AAM3BL,EAAAA,eAAe,EAAE,IANU;AAO3BC,EAAAA,gBAAgB,EAAE,IAPS;AAQ3BC,EAAAA,YAAY,EAAE,IARa;AAS3BC,EAAAA,QAAQ,EAAE,EATiB;AAU3BJ,EAAAA,KAAK,EAAE,UAVoB;AAW3BU,EAAAA,YAAY,EAAE,EAXa;AAY3BC,EAAAA,WAAW,EAAE,CAZc;AAa3BC,EAAAA,cAAc,EAAE,KAbW;AAc3BC,EAAAA,cAAc,EAAE,EAdW;AAe3BC,EAAAA,aAAa,EAAE;AAfY,CAA7B;;eAkBe,oBAAUjB,aAAV,C","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n autoScrollTimer,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0\n};\n\nexport default withTitle(CardContainer);\n"],"file":"CardContainer.js"}
1
+ {"version":3,"sources":["../../../src/components/Card/CardContainer.js"],"names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","autoScrollTimer","cardProps","entities","MainContext","itemId","propsToDisplayModifiers","dynamicWrapperSizes","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n autoScrollTimer,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n autoScrollTimer: 0\n};\n\nexport default withTitle(CardContainer);\n"],"file":"CardContainer.js"}
@@ -45,6 +45,8 @@ require("core-js/modules/es.array.map.js");
45
45
 
46
46
  require("core-js/modules/es.object.values.js");
47
47
 
48
+ require("core-js/modules/es.array.find.js");
49
+
48
50
  require("core-js/modules/es.array.concat.js");
49
51
 
50
52
  require("core-js/modules/es.function.name.js");
@@ -103,6 +105,10 @@ var CardRender = function CardRender(_ref) {
103
105
  itemsToDisplay = _ref.itemsToDisplay,
104
106
  children = _ref.children,
105
107
  otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
108
+
109
+ var _useContext = (0, _react.useContext)(_nextjsComponents.MainContext),
110
+ isPreview = _useContext.isPreview;
111
+
106
112
  var _otherProps$parent = otherProps.parent,
107
113
  itemId = _otherProps$parent.itemId,
108
114
  itemEntity = _otherProps$parent.itemEntity,
@@ -115,7 +121,8 @@ var CardRender = function CardRender(_ref) {
115
121
  _otherProps$sortPrope = otherProps.sortProperties,
116
122
  sortProperties = _otherProps$sortPrope === void 0 ? [] : _otherProps$sortPrope,
117
123
  _otherProps$operator = otherProps.operator,
118
- filterOperator = _otherProps$operator === void 0 ? _constants.AND : _otherProps$operator;
124
+ filterOperator = _otherProps$operator === void 0 ? _constants.AND : _otherProps$operator,
125
+ useRandomSort = otherProps.useRandomSort;
119
126
  var updatedSortProperties = (0, _toConsumableArray2["default"])(sortProperties);
120
127
 
121
128
  if (!updatedSortProperties.length && sort) {
@@ -144,10 +151,17 @@ var CardRender = function CardRender(_ref) {
144
151
  _loading = _useGetEntitySchemasA.loading,
145
152
  _error = _useGetEntitySchemasA.error;
146
153
 
147
- var _useContext = (0, _react.useContext)(_nextjsComponents.MainContext),
148
- isPreview = _useContext.isPreview;
149
-
150
- var _getEntityData = (0, _helpers.getEntityData)(entity),
154
+ var schemas = Object.values(mainSchemas);
155
+ var currentSchema = schemas.find(function (_ref3) {
156
+ var identifier = _ref3.identifier;
157
+ return identifier === itemEntityUpdated;
158
+ }) || {};
159
+ var filterEntitySchema = schemas.find(function (_ref4) {
160
+ var id = _ref4.id;
161
+ return entity === id;
162
+ }) || {};
163
+
164
+ var _getEntityData = (0, _helpers.getEntityData)(entity, filterEntitySchema),
151
165
  entityType = _getEntityData.entityType,
152
166
  docType = _getEntityData.docType;
153
167
 
@@ -157,15 +171,14 @@ var CardRender = function CardRender(_ref) {
157
171
  filterBy: filterBy,
158
172
  filterByProperty: filterByProperty,
159
173
  entity: entity,
160
- getEntitySchemas: Object.values(mainSchemas),
174
+ currentSchema: currentSchema,
175
+ filterEntitySchema: filterEntitySchema,
161
176
  isPreview: isPreview,
162
177
  itemEntityUpdated: itemEntityUpdated
163
178
  }),
164
179
  getAction = _filtersSetup.getAction,
165
180
  queryProps = _filtersSetup.queryProps,
166
181
  inheritedFilters = _filtersSetup.inheritedFilters,
167
- currentSchema = _filtersSetup.currentSchema,
168
- filterEntitySchema = _filtersSetup.filterEntitySchema,
169
182
  entitySameAsCurrentItemEntity = _filtersSetup.entitySameAsCurrentItemEntity,
170
183
  action = _filtersSetup.action,
171
184
  filterEntityRelations = _filtersSetup.filterEntityRelations;
@@ -201,21 +214,23 @@ var CardRender = function CardRender(_ref) {
201
214
  filterOperator: filterOperator,
202
215
  filterEntityRelations: filterEntityRelations,
203
216
  itemsToDisplay: itemsToDisplay,
204
- entitySameAsCurrentItemEntity: entitySameAsCurrentItemEntity
217
+ entitySameAsCurrentItemEntity: entitySameAsCurrentItemEntity,
218
+ useRandomSort: useRandomSort
205
219
  }),
206
220
  limit = _filterQuerySetup.limit,
207
221
  variables = _filterQuerySetup.variables;
208
222
 
209
223
  var _useQuery2 = (0, _client.useQuery)(action, {
210
224
  variables: variables,
225
+ fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',
211
226
  skip: (0, _helpers2.shouldReturn)(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)
212
227
  }),
213
228
  data = _useQuery2.data,
214
229
  cardsError = _useQuery2.error,
215
230
  cardsLoading = _useQuery2.loading;
216
231
 
217
- var imageIds = itemsToDisplay.map(function (_ref3) {
218
- var imageId = _ref3.imageId;
232
+ var imageIds = itemsToDisplay.map(function (_ref5) {
233
+ var imageId = _ref5.imageId;
219
234
  return imageId;
220
235
  }).filter(Boolean);
221
236
 
@@ -232,7 +247,7 @@ var CardRender = function CardRender(_ref) {
232
247
  var cardData = data[_constants.SEARCH_PUBLISHED_CONTENT].results;
233
248
  if (!cardData || !cardData.length) return null;
234
249
  cardData = entitySameAsCurrentItemEntity ? (0, _helpers.removeExtraItems)(cardData, limit, itemId) : cardData;
235
- var orderedData = (0, _helpers.sortResponseData)(cardData, itemsToDisplay);
250
+ var orderedData = useRandomSort ? cardData : (0, _helpers.sortResponseData)(cardData, itemsToDisplay);
236
251
 
237
252
  var _splitChildren = (0, _helpers.splitChildren)(children, cardData, entity, {
238
253
  name: variableProps.name
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","AND","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","_loading","loading","_error","error","MainContext","isPreview","entityType","docType","getEntitySchemas","Object","values","getAction","queryProps","inheritedFilters","currentSchema","filterEntitySchema","entitySameAsCurrentItemEntity","action","filterEntityRelations","variables","id","skip","entityData","_err","_load","requiredSchema","schemaLoading","schemaError","updatedFilterBy","limit","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 {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND\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 { isPreview } = useContext(MainContext);\n const { entityType, docType } = getEntityData(entity);\n const {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas: Object.values(mainSchemas),\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 });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\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\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 = 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 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"}
@@ -50,7 +50,9 @@ var filterQuerySetup = function filterQuerySetup(_ref) {
50
50
  filterOperator = _ref.filterOperator,
51
51
  filterEntityRelations = _ref.filterEntityRelations,
52
52
  itemsToDisplay = _ref.itemsToDisplay,
53
- entitySameAsCurrentItemEntity = _ref.entitySameAsCurrentItemEntity;
53
+ entitySameAsCurrentItemEntity = _ref.entitySameAsCurrentItemEntity,
54
+ entitySchema = _ref.entitySchema,
55
+ useRandomSort = _ref.useRandomSort;
54
56
  var stringProps = (0, _helpers.getStringTypeProps)(entity, filterEntityRelations, getEntitySchemas);
55
57
  var filterValues = updatedFilterBy && updatedFilterBy.length ? (0, _helpers2.buildSetFilters)(_objectSpread(_objectSpread({}, variableProps), {}, {
56
58
  filterBy: updatedFilterBy
@@ -63,7 +65,9 @@ var filterQuerySetup = function filterQuerySetup(_ref) {
63
65
  relations: filterEntityRelations,
64
66
  stringProps: stringProps,
65
67
  itemsToDisplay: itemsToDisplay,
66
- addListFiltersToQuery: true
68
+ addListFiltersToQuery: true,
69
+ entity: entity,
70
+ entitySchema: entitySchema
67
71
  })
68
72
  }; // increase limit to get extra item in case results contain current parent
69
73
 
@@ -73,7 +77,7 @@ var filterQuerySetup = function filterQuerySetup(_ref) {
73
77
  var requestLimit = entitySameAsCurrentItemEntity ? Number(limit) + 1 : limit;
74
78
  var variables = (0, _helpers2.getGenericRenderVariables)(filterEntityRelations, _objectSpread(_objectSpread({}, variableProps), {}, {
75
79
  limit: requestLimit
76
- }), stringProps, JSON.stringify(rawQuery));
80
+ }), stringProps, rawQuery, false, useRandomSort);
77
81
  return {
78
82
  variables: variables,
79
83
  limit: limit
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","settingsLimit","limit","DEFAULT_LIMIT","requestLimit","Number","variables","JSON","stringify"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,OAUnB;AAAA,MATJC,gBASI,QATJA,gBASI;AAAA,MARJC,MAQI,QARJA,MAQI;AAAA,MAPJC,eAOI,QAPJA,eAOI;AAAA,MANJC,aAMI,QANJA,aAMI;AAAA,MALJC,OAKI,QALJA,OAKI;AAAA,MAJJC,cAII,QAJJA,cAII;AAAA,MAHJC,qBAGI,QAHJA,qBAGI;AAAA,MAFJC,cAEI,QAFJA,cAEI;AAAA,MADJC,6BACI,QADJA,6BACI;AACJ,MAAMC,WAAW,GAAG,iCAAmBR,MAAnB,EAA2BK,qBAA3B,EAAkDN,gBAAlD,CAApB;AACA,MAAMU,YAAY,GAChBR,eAAe,IAAIA,eAAe,CAACS,MAAnC,GACI,+DAAqBR,aAArB;AAAoCS,IAAAA,QAAQ,EAAEV;AAA9C,KADJ,GAEI,+BAAgBC,aAAhB,CAHN;AAKA,MAAMU,QAAQ,GAAG;AACfC,IAAAA,IAAI,EAAE,iCAAkB;AACtBV,MAAAA,OAAO,EAAPA,OADsB;AAEtBM,MAAAA,YAAY,EAAZA,YAFsB;AAGtBL,MAAAA,cAAc,EAAdA,cAHsB;AAItBU,MAAAA,SAAS,EAAET,qBAJW;AAKtBG,MAAAA,WAAW,EAAXA,WALsB;AAMtBF,MAAAA,cAAc,EAAdA,cANsB;AAOtBS,MAAAA,qBAAqB,EAAE;AAPD,KAAlB;AADS,GAAjB,CAPI,CAmBJ;;AACA,MAAeC,aAAf,GAAiCd,aAAjC,CAAQe,KAAR;AACA,MAAMA,KAAK,GAAGD,aAAa,IAAIE,wBAA/B,CArBI,CAqB0C;;AAC9C,MAAMC,YAAY,GAAGZ,6BAA6B,GAAGa,MAAM,CAACH,KAAD,CAAN,GAAgB,CAAnB,GAAuBA,KAAzE;AACA,MAAMI,SAAS,GAAG,yCAChBhB,qBADgB,kCAEXH,aAFW;AAEIe,IAAAA,KAAK,EAAEE;AAFX,MAGhBX,WAHgB,EAIhBc,IAAI,CAACC,SAAL,CAAeX,QAAf,CAJgB,CAAlB;AAOA,SAAO;AAAES,IAAAA,SAAS,EAATA,SAAF;AAAaJ,IAAAA,KAAK,EAALA;AAAb,GAAP;AACD,CAzCD;;eA2CenB,gB","sourcesContent":["import { getStringTypeProps } from '@blaze-cms/utils/src/helpers';\nimport { getGenericRenderVariables, buildRawQueryBase, buildSetFilters } from '../../../helpers';\nimport { DEFAULT_LIMIT } from '../../../constants';\n\nconst filterQuerySetup = ({\n getEntitySchemas,\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n}) => {\n const stringProps = getStringTypeProps(entity, filterEntityRelations, getEntitySchemas);\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...variableProps, filterBy: updatedFilterBy })\n : buildSetFilters(variableProps);\n\n const rawQuery = {\n bool: buildRawQueryBase({\n docType,\n filterValues,\n filterOperator,\n relations: filterEntityRelations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery: true\n })\n };\n\n // increase limit to get extra item in case results contain current parent\n const { limit: settingsLimit } = variableProps;\n const limit = settingsLimit || DEFAULT_LIMIT; // all falsey should use default\n const requestLimit = entitySameAsCurrentItemEntity ? Number(limit) + 1 : limit;\n const variables = getGenericRenderVariables(\n filterEntityRelations,\n { ...variableProps, limit: requestLimit },\n stringProps,\n JSON.stringify(rawQuery)\n );\n\n return { variables, limit };\n};\n\nexport default filterQuerySetup;\n"],"file":"filter-query-setup.js"}
1
+ {"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","entitySchema","useRandomSort","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","settingsLimit","limit","DEFAULT_LIMIT","requestLimit","Number","variables"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,OAYnB;AAAA,MAXJC,gBAWI,QAXJA,gBAWI;AAAA,MAVJC,MAUI,QAVJA,MAUI;AAAA,MATJC,eASI,QATJA,eASI;AAAA,MARJC,aAQI,QARJA,aAQI;AAAA,MAPJC,OAOI,QAPJA,OAOI;AAAA,MANJC,cAMI,QANJA,cAMI;AAAA,MALJC,qBAKI,QALJA,qBAKI;AAAA,MAJJC,cAII,QAJJA,cAII;AAAA,MAHJC,6BAGI,QAHJA,6BAGI;AAAA,MAFJC,YAEI,QAFJA,YAEI;AAAA,MADJC,aACI,QADJA,aACI;AACJ,MAAMC,WAAW,GAAG,iCAAmBV,MAAnB,EAA2BK,qBAA3B,EAAkDN,gBAAlD,CAApB;AACA,MAAMY,YAAY,GAChBV,eAAe,IAAIA,eAAe,CAACW,MAAnC,GACI,+DAAqBV,aAArB;AAAoCW,IAAAA,QAAQ,EAAEZ;AAA9C,KADJ,GAEI,+BAAgBC,aAAhB,CAHN;AAKA,MAAMY,QAAQ,GAAG;AACfC,IAAAA,IAAI,EAAE,iCAAkB;AACtBZ,MAAAA,OAAO,EAAPA,OADsB;AAEtBQ,MAAAA,YAAY,EAAZA,YAFsB;AAGtBP,MAAAA,cAAc,EAAdA,cAHsB;AAItBY,MAAAA,SAAS,EAAEX,qBAJW;AAKtBK,MAAAA,WAAW,EAAXA,WALsB;AAMtBJ,MAAAA,cAAc,EAAdA,cANsB;AAOtBW,MAAAA,qBAAqB,EAAE,IAPD;AAQtBjB,MAAAA,MAAM,EAANA,MARsB;AAStBQ,MAAAA,YAAY,EAAZA;AATsB,KAAlB;AADS,GAAjB,CAPI,CAqBJ;;AACA,MAAeU,aAAf,GAAiChB,aAAjC,CAAQiB,KAAR;AACA,MAAMA,KAAK,GAAGD,aAAa,IAAIE,wBAA/B,CAvBI,CAuB0C;;AAC9C,MAAMC,YAAY,GAAGd,6BAA6B,GAAGe,MAAM,CAACH,KAAD,CAAN,GAAgB,CAAnB,GAAuBA,KAAzE;AACA,MAAMI,SAAS,GAAG,yCAChBlB,qBADgB,kCAEXH,aAFW;AAEIiB,IAAAA,KAAK,EAAEE;AAFX,MAGhBX,WAHgB,EAIhBI,QAJgB,EAKhB,KALgB,EAMhBL,aANgB,CAAlB;AASA,SAAO;AAAEc,IAAAA,SAAS,EAATA,SAAF;AAAaJ,IAAAA,KAAK,EAALA;AAAb,GAAP;AACD,CA/CD;;eAiDerB,gB","sourcesContent":["import { getStringTypeProps } from '@blaze-cms/utils/src/helpers';\nimport { getGenericRenderVariables, buildRawQueryBase, buildSetFilters } from '../../../helpers';\nimport { DEFAULT_LIMIT } from '../../../constants';\n\nconst filterQuerySetup = ({\n getEntitySchemas,\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity,\n entitySchema,\n useRandomSort\n}) => {\n const stringProps = getStringTypeProps(entity, filterEntityRelations, getEntitySchemas);\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...variableProps, filterBy: updatedFilterBy })\n : buildSetFilters(variableProps);\n\n const rawQuery = {\n bool: buildRawQueryBase({\n docType,\n filterValues,\n filterOperator,\n relations: filterEntityRelations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery: true,\n entity,\n entitySchema\n })\n };\n\n // increase limit to get extra item in case results contain current parent\n const { limit: settingsLimit } = variableProps;\n const limit = settingsLimit || DEFAULT_LIMIT; // all falsey should use default\n const requestLimit = entitySameAsCurrentItemEntity ? Number(limit) + 1 : limit;\n const variables = getGenericRenderVariables(\n filterEntityRelations,\n { ...variableProps, limit: requestLimit },\n stringProps,\n rawQuery,\n false,\n useRandomSort\n );\n\n return { variables, limit };\n};\n\nexport default filterQuerySetup;\n"],"file":"filter-query-setup.js"}
@@ -7,10 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
 
10
- require("core-js/modules/es.array.find.js");
11
-
12
- require("core-js/modules/es.object.to-string.js");
13
-
14
10
  var _helpers = require("../../../helpers");
15
11
 
16
12
  var _query = require("../../../application/query");
@@ -21,28 +17,21 @@ var filtersSetup = function filtersSetup(_ref) {
21
17
  filterBy = _ref.filterBy,
22
18
  filterByProperty = _ref.filterByProperty,
23
19
  entity = _ref.entity,
24
- getEntitySchemas = _ref.getEntitySchemas,
20
+ currentSchema = _ref.currentSchema,
21
+ filterEntitySchema = _ref.filterEntitySchema,
25
22
  isPreview = _ref.isPreview,
26
23
  itemEntityUpdated = _ref.itemEntityUpdated;
27
24
  var fields = (0, _helpers.buildQueryFields)(entityFields, entityType);
28
25
  var action = (0, _query.getSearchPublishedContent)(fields);
29
26
  var inheritedFilters = (0, _helpers.getInheritedFilters)(filterBy, filterByProperty);
30
27
  var entitySameAsCurrentItemEntity = itemEntityUpdated === entity;
31
- var currentSchema = getEntitySchemas.find(function (_ref2) {
32
- var identifier = _ref2.identifier;
33
- return identifier === itemEntityUpdated;
34
- }) || {};
35
- var filterEntitySchema = getEntitySchemas.find(function (_ref3) {
36
- var id = _ref3.id;
37
- return entity === id;
38
- }) || {};
39
28
  var _filterEntitySchema$r = filterEntitySchema.relations,
40
29
  filterEntityRelations = _filterEntitySchema$r === void 0 ? [] : _filterEntitySchema$r;
41
30
  var queryProps = (0, _helpers.getQueryProps)(inheritedFilters, currentSchema, filterEntitySchema);
42
31
 
43
- var _ref4 = currentSchema || {},
44
- _ref4$actions = _ref4.actions,
45
- actions = _ref4$actions === void 0 ? {} : _ref4$actions;
32
+ var _ref2 = currentSchema || {},
33
+ _ref2$actions = _ref2.actions,
34
+ actions = _ref2$actions === void 0 ? {} : _ref2$actions;
46
35
 
47
36
  var getAction = isPreview ? actions.get : actions.getPublished;
48
37
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Card/helpers/filters-setup.js"],"names":["filtersSetup","entityFields","entityType","filterBy","filterByProperty","entity","getEntitySchemas","isPreview","itemEntityUpdated","fields","action","inheritedFilters","entitySameAsCurrentItemEntity","currentSchema","find","identifier","filterEntitySchema","id","relations","filterEntityRelations","queryProps","actions","getAction","get","getPublished"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OASf;AAAA,MARJC,YAQI,QARJA,YAQI;AAAA,MAPJC,UAOI,QAPJA,UAOI;AAAA,MANJC,QAMI,QANJA,QAMI;AAAA,MALJC,gBAKI,QALJA,gBAKI;AAAA,MAJJC,MAII,QAJJA,MAII;AAAA,MAHJC,gBAGI,QAHJA,gBAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADJC,iBACI,QADJA,iBACI;AACJ,MAAMC,MAAM,GAAG,+BAAiBR,YAAjB,EAA+BC,UAA/B,CAAf;AACA,MAAMQ,MAAM,GAAG,sCAA0BD,MAA1B,CAAf;AACA,MAAME,gBAAgB,GAAG,kCAAoBR,QAApB,EAA8BC,gBAA9B,CAAzB;AAEA,MAAMQ,6BAA6B,GAAGJ,iBAAiB,KAAKH,MAA5D;AACA,MAAMQ,aAAa,GACjBP,gBAAgB,CAACQ,IAAjB,CAAsB;AAAA,QAAGC,UAAH,SAAGA,UAAH;AAAA,WAAoBA,UAAU,KAAKP,iBAAnC;AAAA,GAAtB,KAA+E,EADjF;AAEA,MAAMQ,kBAAkB,GAAGV,gBAAgB,CAACQ,IAAjB,CAAsB;AAAA,QAAGG,EAAH,SAAGA,EAAH;AAAA,WAAYZ,MAAM,KAAKY,EAAvB;AAAA,GAAtB,KAAoD,EAA/E;AACA,8BAAkDD,kBAAlD,CAAQE,SAAR;AAAA,MAAmBC,qBAAnB,sCAA2C,EAA3C;AACA,MAAMC,UAAU,GAAG,4BAAcT,gBAAd,EAAgCE,aAAhC,EAA+CG,kBAA/C,CAAnB;;AACA,cAAyBH,aAAa,IAAI,EAA1C;AAAA,4BAAQQ,OAAR;AAAA,MAAQA,OAAR,8BAAkB,EAAlB;;AACA,MAAMC,SAAS,GAAGf,SAAS,GAAGc,OAAO,CAACE,GAAX,GAAiBF,OAAO,CAACG,YAApD;AAEA,SAAO;AACLF,IAAAA,SAAS,EAATA,SADK;AAELF,IAAAA,UAAU,EAAVA,UAFK;AAGLT,IAAAA,gBAAgB,EAAhBA,gBAHK;AAILE,IAAAA,aAAa,EAAbA,aAJK;AAKLG,IAAAA,kBAAkB,EAAlBA,kBALK;AAMLJ,IAAAA,6BAA6B,EAA7BA,6BANK;AAOLF,IAAAA,MAAM,EAANA,MAPK;AAQLS,IAAAA,qBAAqB,EAArBA;AARK,GAAP;AAUD,CAjCD;;eAmCenB,Y","sourcesContent":["import { buildQueryFields, getInheritedFilters, getQueryProps } from '../../../helpers';\nimport { getSearchPublishedContent } from '../../../application/query';\n\nconst filtersSetup = ({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas,\n isPreview,\n itemEntityUpdated\n}) => {\n const fields = buildQueryFields(entityFields, entityType);\n const action = getSearchPublishedContent(fields);\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n\n const entitySameAsCurrentItemEntity = itemEntityUpdated === entity;\n const currentSchema =\n getEntitySchemas.find(({ identifier }) => identifier === itemEntityUpdated) || {};\n const filterEntitySchema = getEntitySchemas.find(({ id }) => entity === id) || {};\n const { relations: filterEntityRelations = [] } = filterEntitySchema;\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n return {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n };\n};\n\nexport default filtersSetup;\n"],"file":"filters-setup.js"}
1
+ {"version":3,"sources":["../../../../src/components/Card/helpers/filters-setup.js"],"names":["filtersSetup","entityFields","entityType","filterBy","filterByProperty","entity","currentSchema","filterEntitySchema","isPreview","itemEntityUpdated","fields","action","inheritedFilters","entitySameAsCurrentItemEntity","relations","filterEntityRelations","queryProps","actions","getAction","get","getPublished"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAUf;AAAA,MATJC,YASI,QATJA,YASI;AAAA,MARJC,UAQI,QARJA,UAQI;AAAA,MAPJC,QAOI,QAPJA,QAOI;AAAA,MANJC,gBAMI,QANJA,gBAMI;AAAA,MALJC,MAKI,QALJA,MAKI;AAAA,MAJJC,aAII,QAJJA,aAII;AAAA,MAHJC,kBAGI,QAHJA,kBAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADJC,iBACI,QADJA,iBACI;AACJ,MAAMC,MAAM,GAAG,+BAAiBT,YAAjB,EAA+BC,UAA/B,CAAf;AACA,MAAMS,MAAM,GAAG,sCAA0BD,MAA1B,CAAf;AACA,MAAME,gBAAgB,GAAG,kCAAoBT,QAApB,EAA8BC,gBAA9B,CAAzB;AACA,MAAMS,6BAA6B,GAAGJ,iBAAiB,KAAKJ,MAA5D;AACA,8BAAkDE,kBAAlD,CAAQO,SAAR;AAAA,MAAmBC,qBAAnB,sCAA2C,EAA3C;AACA,MAAMC,UAAU,GAAG,4BAAcJ,gBAAd,EAAgCN,aAAhC,EAA+CC,kBAA/C,CAAnB;;AACA,cAAyBD,aAAa,IAAI,EAA1C;AAAA,4BAAQW,OAAR;AAAA,MAAQA,OAAR,8BAAkB,EAAlB;;AACA,MAAMC,SAAS,GAAGV,SAAS,GAAGS,OAAO,CAACE,GAAX,GAAiBF,OAAO,CAACG,YAApD;AAEA,SAAO;AACLF,IAAAA,SAAS,EAATA,SADK;AAELF,IAAAA,UAAU,EAAVA,UAFK;AAGLJ,IAAAA,gBAAgB,EAAhBA,gBAHK;AAILN,IAAAA,aAAa,EAAbA,aAJK;AAKLC,IAAAA,kBAAkB,EAAlBA,kBALK;AAMLM,IAAAA,6BAA6B,EAA7BA,6BANK;AAOLF,IAAAA,MAAM,EAANA,MAPK;AAQLI,IAAAA,qBAAqB,EAArBA;AARK,GAAP;AAUD,CA9BD;;eAgCef,Y","sourcesContent":["import { buildQueryFields, getInheritedFilters, getQueryProps } from '../../../helpers';\nimport { getSearchPublishedContent } from '../../../application/query';\n\nconst filtersSetup = ({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n currentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated\n}) => {\n const fields = buildQueryFields(entityFields, entityType);\n const action = getSearchPublishedContent(fields);\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const entitySameAsCurrentItemEntity = itemEntityUpdated === entity;\n const { relations: filterEntityRelations = [] } = filterEntitySchema;\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n return {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n };\n};\n\nexport default filtersSetup;\n"],"file":"filters-setup.js"}
@@ -97,7 +97,7 @@ var ListBuilder = function ListBuilder(props) {
97
97
  var itemsPerPageToUse = (0, _helpers3.getItemsPerPageToUse)(itemsPerPage, limitToUse);
98
98
  var initialOffset = (0, _helpers2.getCurrentOffset)(offset, itemsPerPageToUse, paginationIndex, limitToUse);
99
99
 
100
- var _getEntityData = (0, _helpers2.getEntityData)(entity),
100
+ var _getEntityData = (0, _helpers2.getEntityData)(entity, requiredSchema),
101
101
  entityType = _getEntityData.entityType,
102
102
  docType = _getEntityData.docType;
103
103
 
@@ -126,7 +126,7 @@ var ListBuilder = function ListBuilder(props) {
126
126
  sort: sort,
127
127
  sortby: sortby,
128
128
  sortProperties: sortProperties
129
- }), stringProps, JSON.stringify(azRawQuery), isTextSearchFilterApplied);
129
+ }), stringProps, azRawQuery, isTextSearchFilterApplied);
130
130
  var azAction = (0, _query.getSearchPublishedContent)(_constants2.RAW_RESULTS);
131
131
 
132
132
  var _useQuery = (0, _client.useQuery)(azAction, {
@@ -157,7 +157,7 @@ var ListBuilder = function ListBuilder(props) {
157
157
  sort: sort,
158
158
  sortby: sortby,
159
159
  sortProperties: sortProperties
160
- }), stringProps, JSON.stringify(rawQuery), isTextSearchFilterApplied);
160
+ }), stringProps, rawQuery, isTextSearchFilterApplied);
161
161
  return /*#__PURE__*/_react["default"].createElement(_ListRender["default"], (0, _extends2["default"])({
162
162
  variables: variables,
163
163
  isInfinite: isInfinite,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["ListBuilder","props","entitySchema","isCard","isAZ","inheritedFilters","paginationType","entity","isTextSearchFilterApplied","itemId","parent","itemsPerPage","itemsToDisplay","limit","propsToDisplay","offset","entityData","sortby","sort","paginationIndex","omitWrappers","operator","filterOperator","currentSchema","filterEntitySchema","requiredSchema","searchValues","azFilter","sortProperties","isInfinite","INFINITE","listComponent","getListComponent","propsToDisplayValues","entityFields","limitToUse","length","shouldApplyDefaultSort","itemsPerPageToUse","initialOffset","entityType","docType","fields","action","actionKey","SEARCH_PUBLISHED_CONTENT","updatedFilterBy","filterValues","filterBy","relations","stringProps","Object","values","azRawQuery","shouldReturnAggs","azVariables","JSON","stringify","azAction","RAW_RESULTS","variables","skip","data","error","loading","message","listAggregations","updatedAggregations","rawQuery","propTypes","PropTypes","string","isRequired","object","bool","number","array","defaultProps","isNotClassic","CLASSIC","CardRenderWithInfiniteScroll","CardsRender","FullRenderWithInfiniteScroll","FullRender"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getStringTypeProps } from '@blaze-cms/utils/src/helpers';\nimport {\n CardRenderWithInfiniteScroll,\n CardsRender,\n FullRender,\n FullRenderWithInfiniteScroll\n} from './components';\nimport ListRender from './ListRender';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildRawQuery,\n buildQueryFields,\n buildSetFilters,\n getGenericRenderVariables,\n getEntityData,\n getCurrentOffset,\n getUpdatedFilterBy,\n checkPropsToUse,\n buildPropsQuery\n} from '../../helpers';\nimport { sortAggs, getItemsPerPageToUse, buildAzAggregations } from './helpers';\nimport { SEARCH_PUBLISHED_CONTENT, INFINITE, CLASSIC } from '../../constants';\nimport { RAW_RESULTS } from './constants';\n\nconst ListBuilder = props => {\n const {\n entitySchema,\n isCard,\n isAZ,\n inheritedFilters,\n paginationType,\n entity,\n isTextSearchFilterApplied,\n parent: { itemId },\n itemsPerPage,\n itemsToDisplay,\n limit,\n propsToDisplay,\n offset,\n entityData,\n sortby,\n sort,\n paginationIndex,\n omitWrappers,\n operator,\n filterOperator,\n currentSchema,\n filterEntitySchema,\n requiredSchema,\n searchValues,\n azFilter,\n sortProperties\n } = props;\n const isInfinite = paginationType === INFINITE;\n const listComponent = getListComponent(isCard, paginationType);\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';\n const limitToUse = limit || itemsToDisplay.length;\n const shouldApplyDefaultSort = !sortProperties || !sortProperties.length;\n const itemsPerPageToUse = getItemsPerPageToUse(itemsPerPage, limitToUse);\n const initialOffset = getCurrentOffset(offset, itemsPerPageToUse, paginationIndex, limitToUse);\n const { entityType, docType } = getEntityData(entity);\n const fields = buildQueryFields(entityFields, entityType, !isCard);\n const action = getSearchPublishedContent(fields);\n const actionKey = SEARCH_PUBLISHED_CONTENT;\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n props\n );\n\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...props, filterBy: updatedFilterBy })\n : buildSetFilters({ ...props });\n\n const { relations = [] } = filterEntitySchema;\n const stringProps = getStringTypeProps(entity, relations, Object.values(requiredSchema));\n\n const azRawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: true, isAZ }\n );\n\n const azVariables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby,\n sortProperties\n },\n stringProps,\n JSON.stringify(azRawQuery),\n isTextSearchFilterApplied\n );\n\n const azAction = getSearchPublishedContent(RAW_RESULTS);\n const { data, error, loading } = useQuery(azAction, {\n variables: azVariables,\n skip: !isAZ\n });\n if (loading) return '';\n if (error) return error.message;\n\n const listAggregations = isAZ ? sortAggs(data) : [];\n const updatedAggregations = buildAzAggregations(listAggregations);\n\n const rawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps,\n azFilter\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: false, isAZ }\n );\n\n const variables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby,\n sortProperties\n },\n stringProps,\n JSON.stringify(rawQuery),\n isTextSearchFilterApplied\n );\n\n return (\n <ListRender\n variables={variables}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n itemsPerPageToUse={itemsPerPageToUse}\n action={action}\n omitWrappers={omitWrappers}\n listComponent={listComponent}\n listAggregations={updatedAggregations}\n isAZ={isAZ}\n azFilter={azFilter}\n {...props}\n />\n );\n};\n\nListBuilder.propTypes = {\n entity: PropTypes.string.isRequired,\n entitySchema: PropTypes.object.isRequired,\n isCard: PropTypes.bool.isRequired,\n isAZ: PropTypes.bool.isRequired,\n isTextSearchFilterApplied: PropTypes.bool.isRequired,\n parent: PropTypes.object.isRequired,\n itemsPerPage: PropTypes.number.isRequired,\n paginationIndex: PropTypes.number.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n currentSchema: PropTypes.object.isRequired,\n filterEntitySchema: PropTypes.object.isRequired,\n requiredSchema: PropTypes.object.isRequired,\n searchValues: PropTypes.object.isRequired,\n inheritedFilters: PropTypes.array,\n entityData: PropTypes.object,\n itemsToDisplay: PropTypes.array,\n limit: PropTypes.number,\n omitWrappers: PropTypes.bool,\n offset: PropTypes.number,\n sortby: PropTypes.array.isRequired,\n sort: PropTypes.string.isRequired,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n paginationType: PropTypes.string,\n azFilter: PropTypes.string,\n sortProperties: PropTypes.array\n};\n\nListBuilder.defaultProps = {\n entityData: {},\n itemsToDisplay: [],\n limit: 0,\n omitWrappers: false,\n offset: 0,\n paginationType: 'infinite',\n inheritedFilters: [],\n azFilter: '',\n sortProperties: []\n};\n\nexport default ListBuilder;\nfunction getListComponent(isCard, paginationType) {\n const isNotClassic = paginationType !== CLASSIC;\n\n if (isCard) return isNotClassic ? CardRenderWithInfiniteScroll : CardsRender;\n\n return isNotClassic ? FullRenderWithInfiniteScroll : FullRender;\n}\n"],"file":"ListBuilder.js"}
1
+ {"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["ListBuilder","props","entitySchema","isCard","isAZ","inheritedFilters","paginationType","entity","isTextSearchFilterApplied","itemId","parent","itemsPerPage","itemsToDisplay","limit","propsToDisplay","offset","entityData","sortby","sort","paginationIndex","omitWrappers","operator","filterOperator","currentSchema","filterEntitySchema","requiredSchema","searchValues","azFilter","sortProperties","isInfinite","INFINITE","listComponent","getListComponent","propsToDisplayValues","entityFields","limitToUse","length","shouldApplyDefaultSort","itemsPerPageToUse","initialOffset","entityType","docType","fields","action","actionKey","SEARCH_PUBLISHED_CONTENT","updatedFilterBy","filterValues","filterBy","relations","stringProps","Object","values","azRawQuery","shouldReturnAggs","azVariables","azAction","RAW_RESULTS","variables","skip","data","error","loading","message","listAggregations","updatedAggregations","rawQuery","propTypes","PropTypes","string","isRequired","object","bool","number","array","defaultProps","isNotClassic","CLASSIC","CardRenderWithInfiniteScroll","CardsRender","FullRenderWithInfiniteScroll","FullRender"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getStringTypeProps } from '@blaze-cms/utils/src/helpers';\nimport {\n CardRenderWithInfiniteScroll,\n CardsRender,\n FullRender,\n FullRenderWithInfiniteScroll\n} from './components';\nimport ListRender from './ListRender';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildRawQuery,\n buildQueryFields,\n buildSetFilters,\n getGenericRenderVariables,\n getEntityData,\n getCurrentOffset,\n getUpdatedFilterBy,\n checkPropsToUse,\n buildPropsQuery\n} from '../../helpers';\nimport { sortAggs, getItemsPerPageToUse, buildAzAggregations } from './helpers';\nimport { SEARCH_PUBLISHED_CONTENT, INFINITE, CLASSIC } from '../../constants';\nimport { RAW_RESULTS } from './constants';\n\nconst ListBuilder = props => {\n const {\n entitySchema,\n isCard,\n isAZ,\n inheritedFilters,\n paginationType,\n entity,\n isTextSearchFilterApplied,\n parent: { itemId },\n itemsPerPage,\n itemsToDisplay,\n limit,\n propsToDisplay,\n offset,\n entityData,\n sortby,\n sort,\n paginationIndex,\n omitWrappers,\n operator,\n filterOperator,\n currentSchema,\n filterEntitySchema,\n requiredSchema,\n searchValues,\n azFilter,\n sortProperties\n } = props;\n const isInfinite = paginationType === INFINITE;\n const listComponent = getListComponent(isCard, paginationType);\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';\n const limitToUse = limit || itemsToDisplay.length;\n const shouldApplyDefaultSort = !sortProperties || !sortProperties.length;\n const itemsPerPageToUse = getItemsPerPageToUse(itemsPerPage, limitToUse);\n const initialOffset = getCurrentOffset(offset, itemsPerPageToUse, paginationIndex, limitToUse);\n const { entityType, docType } = getEntityData(entity, requiredSchema);\n const fields = buildQueryFields(entityFields, entityType, !isCard);\n const action = getSearchPublishedContent(fields);\n const actionKey = SEARCH_PUBLISHED_CONTENT;\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n props\n );\n\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...props, filterBy: updatedFilterBy })\n : buildSetFilters({ ...props });\n\n const { relations = [] } = filterEntitySchema;\n const stringProps = getStringTypeProps(entity, relations, Object.values(requiredSchema));\n\n const azRawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: true, isAZ }\n );\n\n const azVariables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby,\n sortProperties\n },\n stringProps,\n azRawQuery,\n isTextSearchFilterApplied\n );\n\n const azAction = getSearchPublishedContent(RAW_RESULTS);\n const { data, error, loading } = useQuery(azAction, {\n variables: azVariables,\n skip: !isAZ\n });\n if (loading) return '';\n if (error) return error.message;\n\n const listAggregations = isAZ ? sortAggs(data) : [];\n const updatedAggregations = buildAzAggregations(listAggregations);\n\n const rawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps,\n azFilter\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: false, isAZ }\n );\n\n const variables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby,\n sortProperties\n },\n stringProps,\n rawQuery,\n isTextSearchFilterApplied\n );\n\n return (\n <ListRender\n variables={variables}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n itemsPerPageToUse={itemsPerPageToUse}\n action={action}\n omitWrappers={omitWrappers}\n listComponent={listComponent}\n listAggregations={updatedAggregations}\n isAZ={isAZ}\n azFilter={azFilter}\n {...props}\n />\n );\n};\n\nListBuilder.propTypes = {\n entity: PropTypes.string.isRequired,\n entitySchema: PropTypes.object.isRequired,\n isCard: PropTypes.bool.isRequired,\n isAZ: PropTypes.bool.isRequired,\n isTextSearchFilterApplied: PropTypes.bool.isRequired,\n parent: PropTypes.object.isRequired,\n itemsPerPage: PropTypes.number.isRequired,\n paginationIndex: PropTypes.number.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n currentSchema: PropTypes.object.isRequired,\n filterEntitySchema: PropTypes.object.isRequired,\n requiredSchema: PropTypes.object.isRequired,\n searchValues: PropTypes.object.isRequired,\n inheritedFilters: PropTypes.array,\n entityData: PropTypes.object,\n itemsToDisplay: PropTypes.array,\n limit: PropTypes.number,\n omitWrappers: PropTypes.bool,\n offset: PropTypes.number,\n sortby: PropTypes.array.isRequired,\n sort: PropTypes.string.isRequired,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n paginationType: PropTypes.string,\n azFilter: PropTypes.string,\n sortProperties: PropTypes.array\n};\n\nListBuilder.defaultProps = {\n entityData: {},\n itemsToDisplay: [],\n limit: 0,\n omitWrappers: false,\n offset: 0,\n paginationType: 'infinite',\n inheritedFilters: [],\n azFilter: '',\n sortProperties: []\n};\n\nexport default ListBuilder;\nfunction getListComponent(isCard, paginationType) {\n const isNotClassic = paginationType !== CLASSIC;\n\n if (isCard) return isNotClassic ? CardRenderWithInfiniteScroll : CardsRender;\n\n return isNotClassic ? FullRenderWithInfiniteScroll : FullRender;\n}\n"],"file":"ListBuilder.js"}
@@ -43,6 +43,8 @@ require("core-js/modules/es.string.split.js");
43
43
 
44
44
  require("core-js/modules/es.string.starts-with.js");
45
45
 
46
+ require("core-js/modules/es.array.find.js");
47
+
46
48
  var _constants = require("../constants");
47
49
 
48
50
  var defaultProps = [_constants.ID, 'name'];
@@ -117,24 +119,30 @@ var getTypeBaseProps = function getTypeBaseProps(data, cardOptions, extraPropsHa
117
119
  var getEntitySchema = data.getEntitySchema;
118
120
  var interfaces = getEntitySchema.interfaces,
119
121
  properties = getEntitySchema.properties,
120
- dynamicProperties = getEntitySchema.dynamicProperties;
122
+ dynamicProperties = getEntitySchema.dynamicProperties,
123
+ relations = getEntitySchema.relations;
121
124
  var isContent = !!interfaces.includes('content/content');
122
125
  var hasCategory = checkProps(properties) || checkProps(dynamicProperties);
123
126
  var hasPreheader = properties[_constants.PREHEADER_PROP];
124
127
  var typeBasedProps = [].concat(defaultProps);
125
128
  typeBasedProps.push.apply(typeBasedProps, (0, _toConsumableArray2["default"])(getCategoyProps(shouldAddCategoryProps, hasCategory, hasPreheader)));
126
- typeBasedProps.push.apply(typeBasedProps, (0, _toConsumableArray2["default"])(getContentProps(isContent, displayThumbnail)));
129
+ typeBasedProps.push.apply(typeBasedProps, (0, _toConsumableArray2["default"])(getContentProps(isContent)));
130
+
131
+ if (displayThumbnail && relations.find(function (_ref2) {
132
+ var localField = _ref2.localField;
133
+ return localField === 'image';
134
+ })) {
135
+ typeBasedProps.push('image.id', 'image.url', 'image.data');
136
+ }
137
+
127
138
  return {
128
139
  typeBasedProps: typeBasedProps,
129
140
  shouldAddCategoryProps: shouldAddCategoryProps
130
141
  };
131
142
  };
132
143
 
133
- var getContentProps = function getContentProps(isContent, displayThumbnail) {
134
- if (!isContent) return [];
135
- var props = ['url', 'sponsored', 'featured'];
136
- if (displayThumbnail) props.push('image.id', 'image.url', 'image.data');
137
- return props;
144
+ var getContentProps = function getContentProps(isContent) {
145
+ return isContent ? ['url', 'sponsored', 'featured'] : [];
138
146
  };
139
147
 
140
148
  var getCategoyProps = function getCategoyProps(shouldAddCategoryProps, hasCategory, hasPreheader) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/helpers/build-props-query.js"],"names":["defaultProps","ID","categoryProps","checkProps","props","Object","keys","filter","prop","CATEGORY_ID","length","buildPropsQuery","data","extraProps","cardOptions","extraPropsHaveCategory","includes","getTypeBaseProps","typeBasedProps","shouldAddCategoryProps","allProps","uniqueProps","Set","basicProps","i","arr","indexOf","complexProps","buildComplexProps","join","map","nested","split","base","nestedProps","extraProp","startsWith","jointNestedProps","isCard","displayCategory","displayThumbnail","getEntitySchema","interfaces","properties","dynamicProperties","isContent","hasCategory","hasPreheader","PREHEADER_PROP","push","getCategoyProps","getContentProps","HEADLINE_PROP"],"mappings":"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","sourcesContent":["import { CATEGORY_ID, ID, PREHEADER_PROP, HEADLINE_PROP } from '../constants';\n\nconst defaultProps = [ID, 'name'];\nconst categoryProps = 'id publishedListingPage{id, url}';\n\nconst checkProps = props =>\n !!(props && Object.keys(props).filter(prop => prop === CATEGORY_ID).length);\n\nconst buildPropsQuery = (data, extraProps = [], cardOptions = null) => {\n const extraPropsHaveCategory = !!extraProps.filter(prop => prop.includes('category.')).length;\n\n const { typeBasedProps, shouldAddCategoryProps } = getTypeBaseProps(\n data,\n cardOptions,\n extraPropsHaveCategory\n );\n\n const allProps = [...typeBasedProps, ...extraProps];\n\n const uniqueProps = [...new Set([...allProps])];\n\n const basicProps = uniqueProps\n .filter(prop => prop && !prop.includes('.'))\n .filter((prop, i, arr) => arr.indexOf(prop) === i);\n const complexProps = buildComplexProps(shouldAddCategoryProps, uniqueProps);\n\n return [...basicProps, ...complexProps].join(',');\n};\n\nconst buildComplexProps = (shouldAddCategoryProps, props) =>\n props\n .filter(prop => prop && prop.includes('.'))\n .map(nested => nested.split('.')[0])\n .filter((prop, i, arr) => arr.indexOf(prop) === i)\n .map(base => {\n const nestedProps = props\n .filter(\n (extraProp, i, arr) =>\n extraProp && extraProp.startsWith(`${base}.`) && arr.indexOf(extraProp) === i\n )\n .map(nested => nested.split('.')[1]);\n\n const jointNestedProps = nestedProps.join(',');\n if (base === 'category' && shouldAddCategoryProps)\n return `${base}{${jointNestedProps}, ${categoryProps}}`;\n if (base.includes('published')) {\n return `${base}{${jointNestedProps},url}`;\n }\n return `${base}{${jointNestedProps}}`;\n });\n\nconst getTypeBaseProps = (data, cardOptions, extraPropsHaveCategory) => {\n const isCard = !!cardOptions;\n const { displayCategory = true, displayThumbnail = true } = cardOptions || {};\n\n const shouldAddCategoryProps =\n (isCard && displayCategory) || (!isCard && !extraPropsHaveCategory);\n\n if (!isCard) return { typeBasedProps: [ID], shouldAddCategoryProps };\n\n const { getEntitySchema } = data;\n const { interfaces, properties, dynamicProperties } = getEntitySchema;\n\n const isContent = !!interfaces.includes('content/content');\n const hasCategory = checkProps(properties) || checkProps(dynamicProperties);\n const hasPreheader = properties[PREHEADER_PROP];\n\n const typeBasedProps = [...defaultProps];\n\n typeBasedProps.push(...getCategoyProps(shouldAddCategoryProps, hasCategory, hasPreheader));\n typeBasedProps.push(...getContentProps(isContent, displayThumbnail));\n\n return { typeBasedProps, shouldAddCategoryProps };\n};\n\nconst getContentProps = (isContent, displayThumbnail) => {\n if (!isContent) return [];\n\n const props = ['url', 'sponsored', 'featured'];\n if (displayThumbnail) props.push('image.id', 'image.url', 'image.data');\n\n return props;\n};\n\nconst getCategoyProps = (shouldAddCategoryProps, hasCategory, hasPreheader) => {\n if (!shouldAddCategoryProps) return [];\n\n const props = [];\n\n if (hasCategory) {\n props.push('category.name', 'category.listingPageId', 'category.listingPageEntity');\n }\n\n if (hasPreheader) {\n props.push(`${PREHEADER_PROP}{name}`);\n props.push(HEADLINE_PROP);\n }\n\n return props;\n};\n\nexport default buildPropsQuery;\n"],"file":"build-props-query.js"}
1
+ {"version":3,"sources":["../../src/helpers/build-props-query.js"],"names":["defaultProps","ID","categoryProps","checkProps","props","Object","keys","filter","prop","CATEGORY_ID","length","buildPropsQuery","data","extraProps","cardOptions","extraPropsHaveCategory","includes","getTypeBaseProps","typeBasedProps","shouldAddCategoryProps","allProps","uniqueProps","Set","basicProps","i","arr","indexOf","complexProps","buildComplexProps","join","map","nested","split","base","nestedProps","extraProp","startsWith","jointNestedProps","isCard","displayCategory","displayThumbnail","getEntitySchema","interfaces","properties","dynamicProperties","relations","isContent","hasCategory","hasPreheader","PREHEADER_PROP","push","getCategoyProps","getContentProps","find","localField","HEADLINE_PROP"],"mappings":"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","sourcesContent":["import { CATEGORY_ID, ID, PREHEADER_PROP, HEADLINE_PROP } from '../constants';\n\nconst defaultProps = [ID, 'name'];\nconst categoryProps = 'id publishedListingPage{id, url}';\n\nconst checkProps = props =>\n !!(props && Object.keys(props).filter(prop => prop === CATEGORY_ID).length);\n\nconst buildPropsQuery = (data, extraProps = [], cardOptions = null) => {\n const extraPropsHaveCategory = !!extraProps.filter(prop => prop.includes('category.')).length;\n\n const { typeBasedProps, shouldAddCategoryProps } = getTypeBaseProps(\n data,\n cardOptions,\n extraPropsHaveCategory\n );\n\n const allProps = [...typeBasedProps, ...extraProps];\n\n const uniqueProps = [...new Set([...allProps])];\n\n const basicProps = uniqueProps\n .filter(prop => prop && !prop.includes('.'))\n .filter((prop, i, arr) => arr.indexOf(prop) === i);\n const complexProps = buildComplexProps(shouldAddCategoryProps, uniqueProps);\n\n return [...basicProps, ...complexProps].join(',');\n};\n\nconst buildComplexProps = (shouldAddCategoryProps, props) =>\n props\n .filter(prop => prop && prop.includes('.'))\n .map(nested => nested.split('.')[0])\n .filter((prop, i, arr) => arr.indexOf(prop) === i)\n .map(base => {\n const nestedProps = props\n .filter(\n (extraProp, i, arr) =>\n extraProp && extraProp.startsWith(`${base}.`) && arr.indexOf(extraProp) === i\n )\n .map(nested => nested.split('.')[1]);\n\n const jointNestedProps = nestedProps.join(',');\n if (base === 'category' && shouldAddCategoryProps)\n return `${base}{${jointNestedProps}, ${categoryProps}}`;\n if (base.includes('published')) {\n return `${base}{${jointNestedProps},url}`;\n }\n return `${base}{${jointNestedProps}}`;\n });\n\nconst getTypeBaseProps = (data, cardOptions, extraPropsHaveCategory) => {\n const isCard = !!cardOptions;\n const { displayCategory = true, displayThumbnail = true } = cardOptions || {};\n\n const shouldAddCategoryProps =\n (isCard && displayCategory) || (!isCard && !extraPropsHaveCategory);\n\n if (!isCard) return { typeBasedProps: [ID], shouldAddCategoryProps };\n\n const { getEntitySchema } = data;\n const { interfaces, properties, dynamicProperties, relations } = getEntitySchema;\n\n const isContent = !!interfaces.includes('content/content');\n const hasCategory = checkProps(properties) || checkProps(dynamicProperties);\n const hasPreheader = properties[PREHEADER_PROP];\n\n const typeBasedProps = [...defaultProps];\n\n typeBasedProps.push(...getCategoyProps(shouldAddCategoryProps, hasCategory, hasPreheader));\n typeBasedProps.push(...getContentProps(isContent));\n\n if (displayThumbnail && relations.find(({ localField }) => localField === 'image')) {\n typeBasedProps.push('image.id', 'image.url', 'image.data');\n }\n\n return { typeBasedProps, shouldAddCategoryProps };\n};\n\nconst getContentProps = isContent => (isContent ? ['url', 'sponsored', 'featured'] : []);\n\nconst getCategoyProps = (shouldAddCategoryProps, hasCategory, hasPreheader) => {\n if (!shouldAddCategoryProps) return [];\n\n const props = [];\n\n if (hasCategory) {\n props.push('category.name', 'category.listingPageId', 'category.listingPageEntity');\n }\n\n if (hasPreheader) {\n props.push(`${PREHEADER_PROP}{name}`);\n props.push(HEADLINE_PROP);\n }\n\n return props;\n};\n\nexport default buildPropsQuery;\n"],"file":"build-props-query.js"}
@@ -9,16 +9,38 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
+ require("core-js/modules/es.array.includes.js");
13
+
14
+ require("core-js/modules/es.string.includes.js");
15
+
12
16
  var _lodash = _interopRequireDefault(require("lodash.upperfirst"));
13
17
 
14
18
  var _lodash2 = _interopRequireDefault(require("lodash.camelcase"));
15
19
 
16
- var getEntityData = function getEntityData(entity) {
17
- var docType = "published_".concat(entity);
18
- var entityType = "Published".concat((0, _lodash["default"])((0, _lodash2["default"])(entity)));
20
+ var getEntityData = function getEntityData(entity, schema) {
21
+ var publishedDocType = "published_".concat(entity);
22
+ var publishedEntityType = "Published".concat((0, _lodash["default"])((0, _lodash2["default"])(entity)));
23
+
24
+ if (schema) {
25
+ var _ref = schema || {},
26
+ interfaces = _ref.interfaces,
27
+ _ref$entity = _ref[entity];
28
+
29
+ _ref$entity = _ref$entity === void 0 ? {} : _ref$entity;
30
+ var nestedInterfaces = _ref$entity.interfaces;
31
+ var interfacesToCheck = interfaces || nestedInterfaces;
32
+
33
+ if (interfacesToCheck && !interfacesToCheck.includes('publish/publishable')) {
34
+ return {
35
+ docType: entity,
36
+ entityType: (0, _lodash["default"])((0, _lodash2["default"])(entity))
37
+ };
38
+ }
39
+ }
40
+
19
41
  return {
20
- docType: docType,
21
- entityType: entityType
42
+ docType: publishedDocType,
43
+ entityType: publishedEntityType
22
44
  };
23
45
  };
24
46
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/helpers/get-entity-data.js"],"names":["getEntityData","entity","docType","entityType"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAAAC,MAAM,EAAI;AAC9B,MAAMC,OAAO,uBAAgBD,MAAhB,CAAb;AACA,MAAME,UAAU,sBAAe,wBAAW,yBAAUF,MAAV,CAAX,CAAf,CAAhB;AAEA,SAAO;AAAEC,IAAAA,OAAO,EAAPA,OAAF;AAAWC,IAAAA,UAAU,EAAVA;AAAX,GAAP;AACD,CALD;;eAOeH,a","sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport camelcase from 'lodash.camelcase';\n\nconst getEntityData = entity => {\n const docType = `published_${entity}`;\n const entityType = `Published${upperFirst(camelcase(entity))}`;\n\n return { docType, entityType };\n};\n\nexport default getEntityData;\n"],"file":"get-entity-data.js"}
1
+ {"version":3,"sources":["../../src/helpers/get-entity-data.js"],"names":["getEntityData","entity","schema","publishedDocType","publishedEntityType","interfaces","nestedInterfaces","interfacesToCheck","includes","docType","entityType"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,MAAD,EAASC,MAAT,EAAoB;AACxC,MAAMC,gBAAgB,uBAAgBF,MAAhB,CAAtB;AACA,MAAMG,mBAAmB,sBAAe,wBAAW,yBAAUH,MAAV,CAAX,CAAf,CAAzB;;AAEA,MAAIC,MAAJ,EAAY;AACV,eAAwEA,MAAM,IAAI,EAAlF;AAAA,QAAQG,UAAR,QAAQA,UAAR;AAAA,2BAAqBJ,MAArB;;AAAA,2CAAiE,EAAjE;AAAA,QAA4CK,gBAA5C,eAAgCD,UAAhC;AACA,QAAME,iBAAiB,GAAGF,UAAU,IAAIC,gBAAxC;;AACA,QAAIC,iBAAiB,IAAI,CAACA,iBAAiB,CAACC,QAAlB,CAA2B,qBAA3B,CAA1B,EAA6E;AAC3E,aAAO;AAAEC,QAAAA,OAAO,EAAER,MAAX;AAAmBS,QAAAA,UAAU,EAAE,wBAAW,yBAAUT,MAAV,CAAX;AAA/B,OAAP;AACD;AACF;;AAED,SAAO;AAAEQ,IAAAA,OAAO,EAAEN,gBAAX;AAA6BO,IAAAA,UAAU,EAAEN;AAAzC,GAAP;AACD,CAbD;;eAeeJ,a","sourcesContent":["import upperFirst from 'lodash.upperfirst';\nimport camelcase from 'lodash.camelcase';\n\nconst getEntityData = (entity, schema) => {\n const publishedDocType = `published_${entity}`;\n const publishedEntityType = `Published${upperFirst(camelcase(entity))}`;\n\n if (schema) {\n const { interfaces, [entity]: { interfaces: nestedInterfaces } = {} } = schema || {};\n const interfacesToCheck = interfaces || nestedInterfaces;\n if (interfacesToCheck && !interfacesToCheck.includes('publish/publishable')) {\n return { docType: entity, entityType: upperFirst(camelcase(entity)) };\n }\n }\n\n return { docType: publishedDocType, entityType: publishedEntityType };\n};\n\nexport default getEntityData;\n"],"file":"get-entity-data.js"}