@europeana/portal
Version:
Europeana Portal
2 lines • 2.63 kB
JavaScript
(window.webpackJsonp=window.webpackJsonp||[]).push([[61],{1074:function(e,t,n){"use strict";n.r(t);var o=n(16),l=(n(43),{name:"ContentfulEntitySuggestPage",layout:"contentful",data:()=>({value:[],searchText:null,suggestions:[],contentfulExtensionSdk:null}),head(){return{title:this.$pageHeadTitle("Entity suggest - Contentful app")}},watch:{value:"updateContentfulField"},mounted(){window.contentfulExtension.init((e=>{if(this.contentfulExtensionSdk=e,e.location.is(window.contentfulExtension.locations.LOCATION_ENTRY_FIELD)){e.window.startAutoResizer();var t=e.field.getValue()||[];t.length>0&&this.$apis.entity.find(t).then((e=>{this.value=e}))}}))},methods:{isSelected(e){return this.value.map((e=>e.id)).includes(e.id)},inputSearchText(e){var t=this;return Object(o.a)((function*(){t.suggestions=yield t.$apis.entity.suggest(e,{type:"agent,concept,timespan,organization,place"})}))()},removeSelection(e){this.value=this.value.filter((t=>t.id!==e.id))},selectSuggestion(select){this.value=this.value.concat(select)},updateContentfulField(){var e,t;null===(e=this.contentfulExtensionSdk)||void 0===e||null===(t=e.field)||void 0===t||t.setValue(this.value.map((e=>e.id)))}}}),c=(n(873),n(40)),component=Object(c.a)(l,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"contentful"},[n("b-form-group",e._l(e.value,(function(t){return n("b-button",{key:t.id,staticClass:"mb-2",on:{click:function(n){return e.removeSelection(t)}}},[e._v("\n "+e._s(t.prefLabel.en||t.hiddenLabel.en)+"\n ")])})),1),e._v(" "),n("b-form",[n("b-form-group",[n("b-form-input",{attrs:{type:"search",autocomplete:"off",placeholder:"Search for topics, centuries, organisations, people and places"},on:{input:e.inputSearchText},model:{value:e.searchText,callback:function(t){e.searchText=t},expression:"searchText"}})],1),e._v(" "),n("b-form-group",e._l(e.suggestions,(function(t){return n("b-button",{key:t.id,staticClass:"mb-2",attrs:{disabled:e.isSelected(t)},on:{click:function(n){return e.selectSuggestion(t)}}},[e._v("\n "+e._s(t.prefLabel.en||t.hiddenLabel.en)+"\n ")])})),1)],1)],1)}),[],!1,null,"56b41ac7",null);t.default=component.exports},776:function(e,t,n){var content=n(874);content.__esModule&&(content=content.default),"string"==typeof content&&(content=[[e.i,content,""]]),content.locals&&(e.exports=content.locals);(0,n(106).default)("3be3452a",content,!0,{sourceMap:!1})},873:function(e,t,n){"use strict";n(776)},874:function(e,t,n){var o=n(105)(!1);o.push([e.i,".contentful button[data-v-56b41ac7]{margin-right:1rem}",""]),e.exports=o}}]);
//# sourceMappingURL=a8a58a8.modern.js.map