@europeana/portal
Version:
Europeana Portal
2 lines • 4.74 kB
JavaScript
(window.webpackJsonp=window.webpackJsonp||[]).push([[114,4],{1093:function(t,e,n){"use strict";n.r(e);var r=n(6),o=n(16),table=(n(21),n(42),n(22),n(41),n(1054)),l=n(660),c=n(159),d=n(657),f=n(24);function y(object,t){var e=Object.keys(object);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(object);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),e.push.apply(e,n)}return e}function h(t){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?y(Object(source),!0).forEach((function(e){Object(r.a)(t,e,source[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(source)):y(Object(source)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(source,e))}))}return t}var m={name:"EntityTable",components:{AlertMessage:()=>n.e(3).then(n.bind(null,658)),BTable:table.a,LoadingSpinner:l.default,SmartLink:c.a},mixins:[d.a],props:{type:{type:String,required:!0}},data(){return{collections:null,sortBy:"prefLabel",fields:[{key:"prefLabel",sortable:!0,label:this.$t("pages.collections.table.name")},"organisations"===this.type&&{key:"recordCount",sortable:!0,sortDirection:"desc",label:this.$t("pages.collections.table.items"),class:"text-right"}],typeSingular:this.type.slice(0,-1)}},fetch(){var t=this;return Object(o.a)((function*(){try{var e=(yield t.$axios.get(t.apiEndpoint,{baseURL:window.location.origin})).data;"organisations"===t.type&&(e=e.map(t.organisationData)),t.collections=e.map(Object.freeze)}catch(t){console.error({statusCode:500,message:t.toString()})}}))()},fetchOnServer:!1,computed:{apiEndpoint(){return"organisations"===this.type?"/_api/cache/collections/organisations":"/_api/cache/".concat(this.$i18n.locale,"/collections/").concat(this.type)}},methods:{organisationData(t){var e=this.organizationEntityNativeName(h(h({},t),{},{type:"Organization"})),n=Object(f.h)(e,this.$i18n.locale),r=this.organizationEntityNonNativeEnglishName(h(h({},t),{},{type:"Organization"})),o=r&&Object(f.h)(r,this.$i18n.locale);return h(h({},t),{},{prefLabel:n.values[0],prefLabelLang:n.code,altLabel:null==o?void 0:o.values[0],altLabelLang:null==o?void 0:o.code})},entityRoute(t){return"/collections/".concat(this.typeSingular,"/").concat(t)}}},v=n(40),component=Object(v.a)(m,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t.$fetchState.error?n("b-row",{staticClass:"flex-md-row py-4"},[n("b-col",{attrs:{cols:"12"}},[n("AlertMessage",{attrs:{error:t.$fetchState.error.message}})],1)],1):t._e(),t._v(" "),n("b-table",{staticClass:"borderless",attrs:{fields:t.fields,items:t.collections,"sort-by":t.sortBy,busy:t.$fetchState.pending,striped:""},on:{"update:sortBy":function(e){t.sortBy=e},"update:sort-by":function(e){t.sortBy=e}},scopedSlots:t._u([{key:"table-busy",fn:function(){return[n("div",{staticClass:"text-center my-2"},[n("LoadingSpinner"),t._v("\n "+t._s(t.$t("loading"))+"\n ")],1)]},proxy:!0},{key:"cell(prefLabel)",fn:function(data){return[n("SmartLink",{attrs:{destination:t.entityRoute(data.item.slug)}},["organisations"===t.type?[n("strong",{attrs:{lang:data.item.prefLabelLang}},[t._v(t._s(data.item.prefLabel))]),t._v(" "),data.item.altLabel?n("span",{attrs:{lang:data.item.altLabelLang}},[t._v("\n "+t._s(data.item.altLabel)+"\n ")]):t._e()]:n("span",[t._v("\n "+t._s(data.item.prefLabel)+"\n ")])],2)]}},"organisations"===t.type?{key:"cell(recordCount)",fn:function(data){return[n("span",[t._v("\n "+t._s(t._f("localise")(data.item.recordCount))+"\n ")])]}}:null],null,!0)})],1)}),[],!1,null,null,null);e.default=component.exports},657:function(t,e,n){"use strict";var r="en";e.a={methods:{isNamedOrganizationEntity:t=>"Organization"===(null==t?void 0:t.type)&&!!t.prefLabel,organizationEntityNativeName(t){if(!this.isNamedOrganizationEntity(t))return null;var e=Object.keys(t.prefLabel).find((t=>t!==r))||r;return{[e]:t.prefLabel[e]}},organizationEntityNonNativeEnglishName(t){return!this.isNamedOrganizationEntity(t)||Object.keys(t.prefLabel).length<2?null:{[r]:t.prefLabel.en}}}}},660:function(t,e,n){"use strict";n.r(e);var r={name:"LoadingSpinner",props:{statusMessage:{type:String,default:null}}},o=n(40),component=Object(o.a)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{attrs:{role:"status","data-qa":"loading spinner"}},[n("span",{staticClass:"visually-hidden"},[t._v("\n "+t._s(t.statusMessage||t.$t("loading"))+"\n ")]),t._v(" "),n("span",{staticClass:"spinner-border spinner-border-sm",attrs:{"aria-hidden":"true"}})])}),[],!1,null,null,null);e.default=component.exports}}]);
//# sourceMappingURL=57bac0d.modern.js.map