@europeana/portal
Version:
Europeana Portal
2 lines • 9.18 kB
JavaScript
(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{1177:function(t,e,n){"use strict";n.r(e);var r=n(23),o=n(2),d=(n(75),n(10),n(43),n(46),n(16),n(15),n(13),n(19),n(14),n(20),n(108)),c=n(320),l=n(317);function f(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}var h={name:"UserButtons",components:{AddItemToSetModal:function(){return n.e(94).then(n.bind(null,1129))},SetFormModal:function(){return n.e(9).then(n.bind(null,1168))},ItemPinModal:function(){return n.e(107).then(n.bind(null,1187))}},mixins:[c.a,l.a],props:{identifier:{type:String,required:!0},entities:{type:Array,default:function(){return[]}},showPins:{type:Boolean,default:!1},showMove:{type:Boolean,default:!1},buttonVariant:{type:String,default:"outline-light"},buttonText:{type:Boolean,default:!1}},data:function(){return{addItemToSetModalId:"add-item-to-set-modal-".concat(this.identifier),setFormModalId:"set-form-modal-".concat(this.identifier),likeLimitModalId:"like-limit-modal-".concat(this.identifier),pinModalId:"pin-modal-".concat(this.identifier),pinnedLimitModalId:"pinned-limit-modal-".concat(this.identifier),showFormModal:!1,newSetCreated:!1}},computed:function(t){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?f(Object(source),!0).forEach((function(e){Object(o.a)(t,e,source[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(source)):f(Object(source)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(source,e))}))}return t}({liked:function(){return this.$store.getters["set/isLiked"](this.identifier)},likesId:function(){return this.$store.state.set.likesId},pinned:function(){return this.$store.getters["entity/isPinned"](this.identifier)},pinButtonText:function(){return this.buttonText?this.pinned?this.$t("statuses.pinned"):this.$t("actions.pin"):""},likeButtonText:function(){return this.buttonText?this.liked?this.$t("statuses.liked"):this.$t("actions.like"):""}},Object(d.b)({entity:"entity/id",featuredSet:"entity/featuredSetId"})),methods:{clickCreateSet:function(){!1===this.showFormModal&&(this.showFormModal=!0,this.newSetCreated=!1,this.$bvModal.hide(this.addItemToSetModalId),this.$bvModal.show(this.setFormModalId))},setCreatedOrUpdated:function(){this.showFormModal=!1,this.newSetCreated=!0,this.$bvModal.show(this.addItemToSetModalId)},refreshSet:function(){this.showFormModal||this.$store.dispatch("set/refreshSet")},toggleLiked:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.$auth.loggedIn){e.next=5;break}return e.next=3,t.liked?t.unlike():t.like();case 3:e.next=6;break;case 5:t.keycloakLogin();case 6:case"end":return e.stop()}}),e)})))()},goToPins:function(){var path=this.$path("/set/".concat(this.featuredSet));this.$goto(path)},like:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==t.likesId){e.next=3;break}return e.next=3,t.$store.dispatch("set/createLikes");case 3:return e.prev=3,e.next=6,t.$store.dispatch("set/like",t.identifier);case 6:t.$emit("like",t.identifier),t.$matomo&&t.$matomo.trackEvent("Item_like","Click like item button",t.identifier),e.next=17;break;case 10:if(e.prev=10,e.t0=e.catch(3),"100 likes"!==e.t0.message){e.next=16;break}t.$bvModal.show(t.likeLimitModalId),e.next=17;break;case 16:throw e.t0;case 17:case"end":return e.stop()}}),e,null,[[3,10]])})))()},unlike:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("set/unlike",t.identifier);case 2:t.$emit("unlike",t.identifier);case 3:case"end":return e.stop()}}),e)})))()},addToSet:function(){this.$auth.loggedIn?(this.$bvModal.show(this.addItemToSetModalId),this.$emit("add",this.identifier),this.$matomo&&this.$matomo.trackEvent("Item_add","Click add item button",this.identifier)):this.keycloakLogin()},pin:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==t.featuredSet){e.next=3;break}return e.next=3,t.$store.dispatch("entity/createFeaturedSet");case 3:return e.prev=3,e.next=6,t.$store.dispatch("entity/pin",t.identifier);case 6:t.makeToast(t.$t("entity.notifications.pinned",{entity:t.$store.getters["entity/englishPrefLabel"]})),e.next=16;break;case 9:if(e.prev=9,e.t0=e.catch(3),"too many pins"!==e.t0.message){e.next=15;break}t.$bvModal.show("pinned-limit-modal-".concat(t.identifier)),e.next=16;break;case 15:throw e.t0;case 16:case"end":return e.stop()}}),e,null,[[3,9]])})))()},unpin:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("entity/unpin",t.identifier);case 2:t.makeToast(t.$t("entity.notifications.unpinned"));case 3:case"end":return e.stop()}}),e)})))()},pinAction:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.entity&&!t.featuredSet){e.next=5;break}return e.next=3,t.togglePin();case 3:e.next=7;break;case 5:return e.next=7,t.$bvModal.show(t.pinModalId);case 7:case"end":return e.stop()}}),e)})))()},togglePin:function(){var t=this;return Object(r.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.pinned){e.next=5;break}return e.next=3,t.unpin();case 3:e.next=7;break;case 5:return e.next=7,t.pin();case 7:case"end":return e.stop()}}),e)})))()}}},m=h,k=n(59),component=Object(k.a)(m,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"user-buttons",attrs:{"data-qa":"user buttons"}},[n("b-button",{directives:[{name:"show",rawName:"v-show",value:t.showPins,expression:"showPins"}],staticClass:"pin-button text-uppercase",class:{"button-icon-only":!t.buttonText},attrs:{variant:t.buttonVariant,pressed:t.pinned,"data-qa":"pin button","aria-label":t.$t("entity.actions.pin")},on:{click:t.pinAction}},[n("span",{staticClass:"icon-push-pin"}),t._v("\n "+t._s(t.pinButtonText)+"\n ")]),t._v(" "),t.showMove?n("b-button",{staticClass:"move-button text-uppercase d-inline-flex align-items-center",class:{"button-icon-only":!t.buttonText},attrs:{"data-qa":"add button",variant:t.buttonVariant,"aria-label":t.$t("actions.move")}},[n("span",{staticClass:"icon-ic-move-xy"}),t._v("\n "+t._s(t.buttonText?t.$t("actions.move"):"")+"\n ")]):t._e(),t._v(" "),n("b-button",{staticClass:"add-button text-uppercase d-inline-flex align-items-center",class:{"button-icon-only":!t.buttonText},attrs:{"data-qa":"add button",variant:t.buttonVariant,"aria-label":t.$t("set.actions.addTo")},on:{click:t.addToSet}},[n("span",{staticClass:"icon-ic-add"}),t._v("\n "+t._s(t.buttonText?t.$t("actions.save"):"")+"\n ")]),t._v(" "),n("b-button",{staticClass:"like-button text-uppercase d-inline-flex align-items-center",class:{"button-icon-only":!t.buttonText},attrs:{pressed:t.liked,variant:t.buttonVariant,"data-qa":"like button","aria-label":t.$t("actions.like")},on:{click:t.toggleLiked}},[n("span",{staticClass:"icon-heart"}),t._v("\n "+t._s(t.likeButtonText)+"\n ")]),t._v(" "),t.$auth.loggedIn?[n("AddItemToSetModal",{attrs:{"data-qa":"add item to set modal","modal-id":t.addItemToSetModalId,"item-id":t.identifier,"new-set-created":t.newSetCreated},on:{clickCreateSet:t.clickCreateSet,hideModal:t.refreshSet}}),t._v(" "),n("SetFormModal",{attrs:{"modal-id":t.setFormModalId,"item-context":t.identifier},on:{response:t.setCreatedOrUpdated}}),t._v(" "),n("b-modal",{attrs:{id:t.likeLimitModalId,title:t.$t("set.notifications.likeLimit.title"),"hide-footer":""}},[n("p",[t._v(t._s(t.$t("set.notifications.likeLimit.body")))])]),t._v(" "),t.showPins&&t.entity?n("b-modal",{attrs:{id:t.pinnedLimitModalId,title:t.$t("entity.notifications.pinLimit.title"),"hide-footer":"","hide-header-close":""}},[t._v("\n "+t._s(t.$t("entity.notifications.pinLimit.body"))+"\n "),n("div",{staticClass:"modal-footer"},[n("b-button",{attrs:{variant:"outline-primary","data-qa":"cancel button"},on:{click:function(e){return t.$bvModal.hide(t.pinnedLimitModalId)}}},[t._v("\n "+t._s(t.$t("actions.close"))+"\n ")]),t._v(" "),n("b-button",{attrs:{variant:"primary"},on:{click:t.goToPins}},[t._v("\n "+t._s(t.$t("entity.actions.viewPinned"))+"\n ")])],1)]):t._e(),t._v(" "),t.showPins&&t.identifier&&t.entities.length>0?n("ItemPinModal",{attrs:{identifier:t.identifier,"modal-id":t.pinModalId,entities:t.entities,"data-qa":"pin item to entities modal"}}):t._e()]:t._e()],2)}),[],!1,null,null,null);e.default=component.exports}}]);
//# sourceMappingURL=313523b.js.map