@europeana/portal
Version:
Europeana Portal
172 lines (137 loc) • 4.89 kB
JavaScript
exports.ids = [12];
exports.modules = {
/***/ 464:
/***/ (function(module, exports) {
/***/ }),
/***/ 568:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
;
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/related/RelatedEditorial.vue?vue&type=template&id=a09bee82&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{directives:[{name:"show",rawName:"v-show",value:(_vm.related.length > 0),expression:"related.length > 0"}],staticClass:"row mb-5"},[_vm._ssrNode("<div class=\"col-12\">","</div>",[_c('b-card',{staticClass:"card-group-card",attrs:{"title":_vm.$t('related.editorial.title'),"title-tag":"h2"}},[_c('b-card-group',{staticClass:"d-flex flex-wrap"},_vm._l((_vm.related),function(entry,index){return _c('ContentCard',{key:index,attrs:{"title":entry.name,"url":_vm.entryUrl(entry),"image-url":entry.primaryImageOfPage.image.url,"image-content-type":entry.primaryImageOfPage.image.contentType,"variant":"list"}})}),1)],1)],1)])}
var staticRenderFns = []
// CONCATENATED MODULE: ./src/components/related/RelatedEditorial.vue?vue&type=template&id=a09bee82&
// EXTERNAL MODULE: ./src/components/generic/ContentCard.vue + 4 modules
var ContentCard = __webpack_require__(203);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/related/RelatedEditorial.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var RelatedEditorialvue_type_script_lang_js_ = ({
name: 'RelatedEditorial',
components: {
ContentCard: ContentCard["default"]
},
props: {
/**
* URI of the entity
*/
entityUri: {
type: String,
default: null
},
/**
* related editorial entities
*/
relatedEditorial: {
type: Array,
default: () => []
},
/**
* search query
*/
query: {
type: String,
// Default to an empty string (rather than `null`), to ensure that only
// localised related editorial is returned.
default: ''
}
},
data() {
return {
related: this.relatedEditorial
};
},
async fetch() {
if (!this.entityUri && !this.query) {
return;
}
const variables = {
entityUri: this.entityUri,
query: this.query,
locale: this.$i18n.isoLocale(),
preview: this.$route.query.mode === 'preview',
limit: 4
};
const queryName = this.entityUri ? 'entityRelatedContent' : 'relatedContent';
const response = await this.$contentful.query(queryName, variables);
const entries = response.data.data;
this.related = entries.blogPostingCollection.items.concat(entries.exhibitionPageCollection.items).sort((a, b) => new Date(b.datePublished).getTime() - new Date(a.datePublished).getTime()).slice(0, 4);
},
watch: {
query: '$fetch',
entityUri: '$fetch'
},
methods: {
entryUrl(entry) {
let urlPrefix;
if (entry['__typename'] === 'BlogPosting') {
urlPrefix = '/blog';
} else if (entry['__typename'] === 'ExhibitionPage') {
urlPrefix = '/exhibitions';
}
return `${urlPrefix}/${entry.identifier}`;
}
}
});
// CONCATENATED MODULE: ./src/components/related/RelatedEditorial.vue?vue&type=script&lang=js&
/* harmony default export */ var related_RelatedEditorialvue_type_script_lang_js_ = (RelatedEditorialvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(3);
// EXTERNAL MODULE: ./src/components/related/RelatedEditorial.vue?vue&type=custom&index=0&blockType=docs&lang=md
var RelatedEditorialvue_type_custom_index_0_blockType_docs_lang_md = __webpack_require__(464);
var RelatedEditorialvue_type_custom_index_0_blockType_docs_lang_md_default = /*#__PURE__*/__webpack_require__.n(RelatedEditorialvue_type_custom_index_0_blockType_docs_lang_md);
// CONCATENATED MODULE: ./src/components/related/RelatedEditorial.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
related_RelatedEditorialvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
"44f9a18e"
)
/* custom blocks */
if (typeof RelatedEditorialvue_type_custom_index_0_blockType_docs_lang_md_default.a === 'function') RelatedEditorialvue_type_custom_index_0_blockType_docs_lang_md_default()(component)
/* harmony default export */ var RelatedEditorial = __webpack_exports__["default"] = (component.exports);
/***/ })
};;
//# sourceMappingURL=12.js.map